Skip to content
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

Drop python EOLed 3.7 support (in setup.py and CI) #7449

Open
wants to merge 8 commits into
base: maint
Choose a base branch
from

Conversation

adswa
Copy link
Member

@adswa adswa commented Jul 3, 2023

Python 3.7 EOL'ed mid-June. This PR

  • bumps all python 3.7 CI environments to Python 3.8
  • bumps all other CI environments' Python versions by one minor version

I think this needs to be done also for master, but for now I make only one PR to see what fails.

@adswa adswa added the semver-internal Changes only affect the internal API label Jul 3, 2023
@codecov
Copy link

codecov bot commented Jul 3, 2023

Codecov Report

All modified lines are covered by tests ✅

Comparison is base (f989245) 91.56% compared to head (058e3b8) 91.29%.

Additional details and impacted files
@@            Coverage Diff             @@
##            maint    #7449      +/-   ##
==========================================
- Coverage   91.56%   91.29%   -0.27%     
==========================================
  Files         325      325              
  Lines       43444    43444              
  Branches     5827     5827              
==========================================
- Hits        39779    39662     -117     
- Misses       3650     3767     +117     
  Partials       15       15              

see 50 files with indirect coverage changes

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@adswa
Copy link
Member Author

adswa commented Jul 3, 2023

This PR still needs an update for Travis. I have two questions there:

  • I vaguely recall issues? in another datalad-extension? that talked about removing Travis CI. Are there plans to stop using Travis for this repo?
  • If we keep Travis CI, it has many Python3.7 builds to update. What I don't parse just now, though, is the following extra-arg passed to the datalad-installer: _DL_ANNEX_INSTALL_SCENARIO="miniconda=py37_23.1.0-1 --python-match minor --batch git-annex=8.20200309 -m conda". What would this change to in order to bump it to Py3.8?

@adswa
Copy link
Member Author

adswa commented Jul 4, 2023

There is one travis build that fails like this:

$ sudo pip install --user .

WARNING: The directory '/home/travis/.cache/pip' or its parent directory is not owned or is not writable by the current user. The cache has been disabled. Check the permissions and owner of that directory. If executing pip with sudo, you should use sudo's -H flag.

ERROR: Can not perform a '--user' install. User site-packages are not visible in this virtualenv.

The command "sudo pip install --user ." exited with 1.

I'm not sure whether its related to the changes here or spurious, but I can't re-trigger the build.

@yarikoptic
Copy link
Member

  • If we keep Travis CI, it has many Python3.7 builds to update. What I don't parse just now, though, is the following extra-arg passed to the datalad-installer: _DL_ANNEX_INSTALL_SCENARIO="miniconda=py37_23.1.0-1 --python-match minor --batch git-annex=8.20200309 -m conda". What would this change to in order to bump it to Py3.8?

FTR this was resolved by using py38_23.3.1-0.

@adswa
Copy link
Member Author

adswa commented Jul 6, 2023

The one travis run still fails, and I don't get why. The failure happens in the script part of the config file which is identical across runs, so maybe its something particular with ubuntu bionic and Python 3.10 ...

@yarikoptic
Copy link
Member

well, erroring starts early with

$ sudo pip install --user .
WARNING: The directory '/home/travis/.cache/pip' or its parent directory is not owned or is not writable by the current user. The cache has been disabled. Check the permissions and owner of that directory. If executing pip with sudo, you should use sudo's -H flag.
ERROR: Can not perform a '--user' install. User site-packages are not visible in this virtualenv.
The command "sudo pip install --user ." exited with 1.

which I checked happened only in that one indeed, no other matrix runs... let's try it with focal

@yarikoptic yarikoptic added semver-patch Increment the patch version when merged CHANGELOG-missing When a PR's description does not contain a changelog item, yet. and removed semver-internal Changes only affect the internal API labels Jul 11, 2023
@yarikoptic yarikoptic changed the title MNT: Bump Python versions in CI Drop python 3.7 support (in setup.py and CI) Jul 11, 2023
@yarikoptic yarikoptic changed the title Drop python 3.7 support (in setup.py and CI) Drop python EOLed 3.7 support (in setup.py and CI) Jul 11, 2023
@github-actions github-actions bot removed the CHANGELOG-missing When a PR's description does not contain a changelog item, yet. label Jul 11, 2023
@adswa
Copy link
Member Author

adswa commented Jul 12, 2023

With the bump of the misbehaving travis run to Python 3.11 a very old requested git-annex conflicts with other software versions :/

@yarikoptic
Copy link
Member

dang... I still don't know how/why it gets installed in general: conda-forge/datalad-feedstock#109 .

.travis.yml Show resolved Hide resolved
@adswa adswa force-pushed the bye-py37 branch 5 times, most recently from e0f819e to 8c9b005 Compare July 18, 2023 11:31
@yarikoptic
Copy link
Member

note: restarted 1 travis job which hanged in conda

@adswa
Copy link
Member Author

adswa commented Oct 13, 2023

This PR has been sleeping for a while, mostly because I couldn't figure out the setup-related travis failure described in the comments. But #7492 is planning to remove Travis entirely, so I feel like this could be the opportunity to also move forward with dropping Py3.7 support in this PR.

@adswa
Copy link
Member Author

adswa commented Oct 13, 2023

The linting has been fixed elsewhere already, and the macos and datalad-containers failures are unrelated. The travis build is almost through the board unhappy, but my suggestion would be to proceed with #7492, then this PR, and then, eventually, #7450

@yarikoptic
Copy link
Member

@adswa would you have time to get back to this one -- we should really drop that good old 3.7 now ;)

Copy link
Contributor

@mslw mslw left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • Although the Travis setup is not removed, Travis is inactive, so it should no longer be a blocker.
  • Most testing changes are duplicated in Stop testing on Python 3.7 #7585 where we currently explore the consequences of macOS-latest image being switched (some version bumps are done slightly differently)
  • I fully support merging this PR after we have clarity in Stop testing on Python 3.7 #7585 (and I volunteer to resolve conflicts)
  • I would rather see this with semver-minor and done against master. Again, I'm willing to perform the ceremony and resolve conflicts.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
semver-patch Increment the patch version when merged
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants