-
Notifications
You must be signed in to change notification settings - Fork 862
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
Python 3.12 tests currently fail #1357
Comments
@pawamoy stated in this comment:
|
Note that the error results from |
Did some digging through the history and found this comment which explains why we did not need to list |
While I understand why we rely on |
I was thinking similarly. In the relevant tests, we are comparing the output of According to the commit message (in 82d2b25) the thinking was that by parsing the string, we were ensuring that we were outputting a normalized format. But what is going to cause those tests to fail in the future? It's not likely that I could go either way on this. In the one hand, it isn't much work to add one more dependency to the existing list. On the other had, if the tests are more complex than they need to be, why not simplify them? |
Just noting that #760 tracks the Python versions we support. Python 3.7 reached end-of life on 2023-06-27 and Python 3.12 is scheduled for release on 2023-10-02. Therefore, I think it makes sense to drop support for 3.7 at the same time that we add official support for 3.12 (even if we do so prior to 31.2's final release). As an aside, I will note that this will be the last time that Python drops a version on a different date that it releases a new version. Going forward, it is expected that both are to always happen in October of each year. Then we shouldn't need to be concerned with addressing them separately any more. While we could this year, I think we may as well combine them now anyway. Finally, I am assigning this to the 3.5 milestone. This needs to happen in the next point release we make. Hopefully we can get it done by 2023-10-02 or shortly thereafter. |
So we are already just comparing the string. The one test where we call |
I personally opt for just dropping the test. Unless you are truly concerned we are going to have an issue with people putting in invalid versions that we won't catch in code review. I'd like to avoid dependencies for something like this, but that is my opinion. |
Also update default version for non-version specific tests (linters, etc) to PY-3.11 (previously used 3.7). Fixes Python-Markdown#1357.
Also update default version for non-version specific tests (linters, etc) to PY-3.11 (previously used 3.7). Fixes Python-Markdown#1357.
Also update default version for non-version specific tests (linters, etc) to PY-3.11 (previously used 3.7). Fixes Python-Markdown#1357.
Another option would be to raise This way we won't need it most of the time, but if you bumped a version and want to double-check its correctness, you can run tests with |
I was just thinking similarly. The question is, how do we want to determine when to install the extra dependency? In practice, we only need the test to run when we edit the version. I see a few options:
Option 1 is the easiest way to not miss anything. Option 2 assumes the documented release process is being followed. And Option 3 would require an extra step in the release process. I'm inclined to go with option 1 as it is less prone to human error. However, with option 3 it is always possible to add the label later and rerun the tests. Option 2 seems like it is the most fragile as a simple typo could easily cause it to get missed. I think I will attempt option 1 and if it proves too difficult to get a GitHub workflow to properly detect the edited file, then I will switch to option 3. Unless someone has a better suggestion... |
I like this approach |
Update default version for non-version specific tests (linters, etc) to PY-3.11 (previously used 3.7). Fixes #1357. Skip version isvalid test except when version is changed.
The error is:
This will require more investigation. 3.12 is still in beta. We will need to be fixed before we officially state support for 3.12.
The text was updated successfully, but these errors were encountered: