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

Add a bunch of new python versions (and pypy) to the CI #111

Merged
merged 1 commit into from
May 1, 2022

Conversation

masklinn
Copy link
Contributor

No description provided.

@masklinn masklinn force-pushed the add-new-pythons branch 4 times, most recently from 24c24f5 to 9885b62 Compare April 30, 2022 13:42
@masklinn
Copy link
Contributor Author

masklinn commented Apr 30, 2022

  • item: could probably stop installing tox until used for testing again
  • item: cpython 3.10 is much slower than 3.9, according to unittest's reporting it needs 25s to run the tests (on github's VMs) compared to 11, it's also much slower at installing dependencies (13s versus 5s)
  • item: pypy is even slower at both, it needs 40s to install the dependencies and 60 seconds to run the tests

There's some variability, but the range of performance seems reliable: all CI before 3.10 occur in 25~30s, 3.10 and up need a minute, and pypy needs 2. That's really not great.

@masklinn
Copy link
Contributor Author

masklinn commented Apr 30, 2022

Really cool stuff: locally, 3.10 runs the tests in half the time 3.8 does (6.5s versus 14), and pypy works at about the same thing (as 3.10, so 6.5s).

This is not just a case of github's runners being slow, this is github runners displaying performance behaviour opposite that of local. That doesn't seem like something justified by the two architectures not matching. And time -l reports the test run under 3.10 having a peak memory footprint (and maximum RSS) 30% lower than 3.8, and both are in the hundred megs, so doesn't seem likely to be a swapping thing (if github's workers even have swap)

@masklinn masklinn force-pushed the add-new-pythons branch 3 times, most recently from d1cdc1f to ee0db78 Compare April 30, 2022 15:05
Also to the local tox, and try to rewrite tox.ini to make it more
reliable (wip):

- don't sdist into the repository, just develop into it matching the
  CI (and in a way the old expectations, given the old `setup.py
  develop` stanza)
- don't install the package at all into the checker environments, it's
  entirely unnecessay
- add doctesting of the readme to tox, in order to match the CI
  action, opt 2.7 out for the same reasons: changes in pprint's
  formatting between 2.7 and 3.5 make them incompatible, ignore 2.7
- requirements.txt was removed previously, use the dev requirements
@masklinn masklinn merged commit f637a86 into ua-parser:master May 1, 2022
@masklinn masklinn deleted the add-new-pythons branch May 1, 2022 10:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant