-
Notifications
You must be signed in to change notification settings - Fork 13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
tools-in-path should use framework version, not sdk version. #333
Conversation
Since the latest release of dotnet 8, 8.0.101, tools-in-path has been failing as even though there is a version of dotnet-ef for 8.0.1, it expects the dotnet framework installed to also be 8.0.1, whereas the framework used in dotnet 8.0.1 is still 8.0.0 which causes a compatibility error and a test failure. Instead of installing the version of dotnet-ef that matches the installed sdk version, the test should download the version of dotnet-ef that matches the installed framework.
CI errors are unrelated. |
I'm not sure what this means. What does the error look like? Also, from the command we're using to install the tool, it seems we'd accept anything that starts with an |
@tmds Apologies, I made an error in my commit message. I've updated the message. Below is the error:
|
Ah, so we need to ask for a dotnet-ef with the version matching the runtime version? Makes sense. |
The error is more clear now. The test fails because upstream runtime version 8.0.1 is available, and the environment that the test is running on is still providing 8.0.0. It's not bad that something in our test suite fails because of this. Are there other tests failing? |
There are other tests failing due to this that use dotnet 8.0.0. |
I'm fine updating this test so it works against older runtime versions. It would be nice to also add a new test that fails when the runtime version tested against is older than what is available publically. We can create an issue to add such a test. |
That's |
Interesting. Is |
@tmds |
Good! This is the expected behavior. I was asking what test failed in #333 (comment) to know what tests will continue to catch this, and which others we may also need to update. Are there other tests failing than |
No, no other tests are failing due to using an older runtime. |
I don't understand this comment. I think I am forgetting or missing some context. Can you tell us more? |
@omajid In the environment the test suite is running on, |
That seems strange. Do you understand why that happens? What's unique about that environment or .NET 8? |
It's happening because the environment is built from a RHEL image and the version of RHEL used contains the latest release of dontet 6 and 7 but not the latest release of dotnet 8. |
I see. Thank you for clearing this up. |
tools-in-path is failing on dotnet 8.0.0 as in that version of dotnet the sdk version is written as "8.0.1" whereas the framework is 8.0.0. This causes an issue when installing dotnet-ef as it will go by the sdk version and there is a newer version of dotnet-ef for dotnet 8.0.101, causing a compatibly issue when used with dotnet 8.0.0 as it will automatically download the newest version of dotnet-ef for 8.0.1 . Due to this it would be better to download the version of dotnet-ef that matches the framework version of dotnet, rather than the sdk.