You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I tried to install Godot 4.3.0 stable via godotenv godot install 4.0.1-stable since godotenv godot list -r outputs versions with suffixes. After successful installation, godotenv godot list returns an NullReferenceException to output:
PS C:\Users\admin> godotenv godot list
ERROR
System.NullReferenceException: Object reference not set to an instance of an object.
at Chickensoft.GodotEnv.Features.Godot.Domain.GodotRepository.<>c.<GetInstallationsList>b__48_0(GodotInstallation i) in \home\runner\work\GodotEnv\GodotEnv\GodotEnv\src\features\godot\domain\GodotRepository.cs:578
at System.Linq.EnumerableSorter`2.ComputeKeys(TElement[] elements, Int32 count)
at System.Linq.EnumerableSorter`1.ComputeMap(TElement[] elements, Int32 count)
at System.Linq.EnumerableSorter`1.Sort(TElement[] elements, Int32 count)
at System.Linq.OrderedEnumerable`1.GetEnumerator()+MoveNext()
at System.Collections.Generic.List`1.AddRange(IEnumerable`1 collection)
at Chickensoft.GodotEnv.Features.Godot.Domain.GodotRepository.GetInstallationsList() in \home\runner\work\GodotEnv\GodotEnv\GodotEnv\src\features\godot\domain\GodotRepository.cs:578
at Chickensoft.GodotEnv.Features.Addons.Commands.GodotListCommand.ListLocalVersions(ILog log, IGodotRepository godotRepo) in \home\runner\work\GodotEnv\GodotEnv\GodotEnv\src\features\godot\commands\GodotListCommand.cs:25
at Chickensoft.GodotEnv.Features.Addons.Commands.GodotListCommand.ExecuteAsync(IConsole console) in \home\runner\work\GodotEnv\GodotEnv\GodotEnv\src\features\godot\commands\GodotListCommand.cs:53
at CliFx.CliApplication.RunAsync(ApplicationSchema applicationSchema, CommandInput commandInput) in \_\CliFx\CliApplication.cs:163
at CliFx.CliApplication.RunAsync(IReadOnlyList`1 commandLineArguments, IReadOnlyDictionary`2 environmentVariables) in \_\CliFx\CliApplication.cs:204
After I tried installing 4.3.0 just without the suffix godotenv godot install 4.3.0, the godotenv godot list command worked, but started outputting two identical versions.
Seems to be a bug due to the -stable suffix introduced for the version. I hope this repro will help to find the bug. This was a fresh installation of GodotEnv.
The text was updated successfully, but these errors were encountered:
I think we need to lock down versions and make it fail to install unless you specify the version perfectly. We've had others feel that it's too forgiving and have done work to make it more accepting, but I personally feel that it shouldn't even install unless you get the version perfectly correct in the format it wants. Otherwise you end up in situations like this and there are lots of edge cases.
I tried to install Godot 4.3.0 stable via godotenv godot install 4.0.1-stable
What do you mean by you were you installing 4.3.0 with 4.0.1-stable? Those are two totally different versions.
As I understand it, GodotEnv is accepting incorrect version strings. When that happens, it is still smart enough to install Godot, but then it isn't able to realize it installed that version of Godot later because the version strings aren't normalized well enough under-the-hood. This is because version strings control the directory name of the Godot installation, and GodotEnv uses the file system to recognize what installations are available. So, it's important we fully normalize versions — doing so would fix this issue.
We could also just make it error when you specify an incorrect version string, but that may not be as intuitive since the remote source for listing versions is now GitHub (as opposed to nuget), which has funkier looking versions and would mislead folks.
I tried to install Godot 4.3.0 stable via
godotenv godot install 4.0.1-stable
sincegodotenv godot list -r
outputs versions with suffixes. After successful installation,godotenv godot list
returns anNullReferenceException
to output:After I tried installing 4.3.0 just without the suffix
godotenv godot install 4.3.0
, thegodotenv godot list
command worked, but started outputting two identical versions.Seems to be a bug due to the
-stable
suffix introduced for the version. I hope this repro will help to find the bug. This was a fresh installation of GodotEnv.The text was updated successfully, but these errors were encountered: