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
3.5.0 Release #276
3.5.0 Release #276
Conversation
…k' depends on 'typed_ast' which isn't supported on pypy3
@CleanCut can you point me to the issue with Python 3.11 on macOS ? I pulled the 3.5.0 branch on our side and the GH action stage is passing as expected. |
It's a problem that pops up on my local mac when I run I'll see what I can figure out the next time I have some free time. Dunno exactly when that will be. |
I've switched my local virtualenv to a fresh Python 3.11.6 and on the 3.5.0 branch. I got this error:
The workaround was for me was to temporarily force Then I got this, which is what I suppose you are referring to:
I get loads of these errors:
The problem seems to be that the temp folder has been cleaned up by the time coverage.py is trying to read from it. I'm able to see the 35% with just
I'll look into it. |
I simplified the command to reproduce to: And got the coverage errors. Rolling back coverage.py to 6.5.0 from September 2022 seems to fix the issue. The latest version is 7.3.2. With 6.5.0 I get:
With 6.5.0 (the last 6.x) it works, with 7.0.0 it fails. So the issue is that we are incompatible with coverage 7.x. I'll have to read the release notes and see what we need to do in order to be forward compatible. |
I got some results. It turns out that for coverage 7.x to report just like it did with prior versions we need to pass what should be included. In our own wrapper for green we actually always pass I think there is a larger 'compatibility' bug to address which is to ensure we pass a new parameter when calling
|
…ith coverage 7.x. Validated with coverage 6.5.0 and 7.3.2.
Setting the coverage source allowed coverage.py to focus only on the files in the green directory. This works with v6.x and v7.x. Note that I put the option in pyproject.toml, but you need either python 3.11+ (toml was added to the standard library in 3.11), or have I thing this short fix is good enough to get green v3.5.0 out. |
I took a look at the GH actions to figure out why the coverage works and this seems to be because the coverage action uses coveralls which explicitly requires coverage 6.x. https://github.com/clumio-oss/green/actions/runs/7119558135/job/19384933814#step:8:15
|
I managed to steal a few minutes during lunch today. You nearly got us there! Now we're getting past that and crashing on the
|
Ah this is because coverage.py requires to be installed as This requirement is documented here: https://coverage.readthedocs.io/en/7.3.2/config.html#configuration-reference |
For coverage.py to be able to read toml files on older versions of python as 3.11 added toml to the standard library.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
pypy3 tests error and hang. (sigh) Maybe I should just drop support for pypy3. Thoughts? |
I do not use pypy since it is always a few years behind cPython. Currently pypy supports 3.9, 3.10 and still 2.7 somehow. Fortunately a quick |
It seems to work with pypy 3.10.13:
I do get an error with pypy 3.9.17:
But it seems more of an issue of Django being incompatible with pypy and not a problem with green itself. I would not make this a release blocker, pypy is not guaranteed to be 100% compatible, and I think the 3.5.0 branch is ok to release as it is. We can still claim that it was tested with pypy pypy3.10-7.3.13. |
I tested targeting pypy in GH Actions and other than pypy 3.6 and 3.7 not being installable, everything looks good. I've updated the 3.5.0 branch to target pypy 3.8, 3.9 and 3.10 as they worked just fine. No need to drop support for pypy, I just think there is some local issue on your laptop. |
* 'main' of https://github.com/CleanCut/green: ignore installed versions of green in folders that look like green-* bump for version 4.0.0 update changelog Lift minimum supported Python version from 3.6 to 3.8 Address 'addDuration' warnings in python 3.12. don't try to find Python 2's readfp method update CI python versions # Conflicts: # .github/workflows/ci.yml # CHANGELOG.md # green/VERSION
Merging with the 3.12 errors since the branch is known to not be compatible. Main will be ok. |
Based on the advice in #273, I have been working on prepping a 3.5.0 release which primarily represents a nice checkpoint release that is the last release supporting Python 3.6 and Python 3.7.
I branched off of ff8d950 for this release. We'll need to resolve some conflicts with
main
AFTER release and before merging this intomain
.I've run into a bunch of blockers:
venv
is built-in and should be preferred over installingvirtualenv
green-
pypy3
can't install one ofblack
's dependenciestest_finalizer
test was not succeeding on macOSmake release
) on Python 3.11 on macOS -- I haven't drilled into this, yet.@sodul I have invited you as a collaborator. It won't let me view your permissions until you accept, but I intend to give you write permission so you can create branches directly on the repository, and push commits to existing branches like this one if you want to (hint, hint 😉 😆).