-
Notifications
You must be signed in to change notification settings - Fork 1
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
Update to CI #110
Update to CI #110
Conversation
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.
Those all seem sound to me. One thing is that poetry 1.2
introduced a new way of grouping dependencies, so that you can specify extra dependencies in themed groups (so we could have a docs
group and a testing
group). That seems useful, so we might want to update pyproject.toml
to use that.
Yeah that seems like a good idea, but probably only once everyone has updated to using |
Personally, I think it makes sense to update it in this PR, then it has all moved across to The So if we merge this - do we then need to get the team to all update. And how does that play out for @dalonsoa and @alexdewar, who have other projects that might currently use older Basically, I think we should do this but the results are not restricted to this repo? |
@@ -19,7 +19,7 @@ jobs: | |||
fail-fast: false | |||
matrix: | |||
os: [ ubuntu-latest, macos-latest, windows-latest ] | |||
python-version: [ "3.9" , "3.10.6" ] | |||
python-version: [ "3.9" , "3.10", "3.11" ] |
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.
Python 3.11? That's brave!
Not a bad idea to try with the latest version of Python, but just don't be surprised if things don't work yet. It'll probably be months (years?) before all the common packages actually work with v3.11.
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.
Ahh right, I think this is maybe a coming from Julia thing where the updates have often fixed major problems with the language, so people switch pretty quickly. I guess we can keep 3.11 in the CI for now and then remove it if/when it becomes a problem?
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.
I briefly added 3.11-dev
(7c9ef44) and the wheels came off alarmingly quickly.
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.
Sure, up to you. It's not a bad thing, but it just might mean you have to remove it from the CI again later -- not a big deal.
Don't worry about me and @dalonsoa. I think we'll probably be moving to The |
I've taken a shot at grouping the dependancies, let me know if they seem like sensible groupings. A fair number are ungrouped, but I guess groups will become more obvious as we develop more |
I've only ever bothered using a separate group for developer dependencies and maybe another one for building the docs. My logic has always been that you want all of your devs to run It's a personal choice though and the fact that |
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.
Just that final tweak to the poetry
groups, I think, if that suggestion makes sense to you.
pyproject.toml
Outdated
autodocsumm = "^0.2.8" | ||
pydocstyle = "^6.1.1" | ||
|
||
[tool.poetry.dev-dependencies] |
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.
I think we've got:
devenv
, which is everything inprecommit
and the roguedev-dependencies
.- and then
test
anddocs
as you have them.
I don't think this makes a big difference, but those three seem like a sensible development base setup and then specific extra areas? We can delete doctestfn
- that was used in the testing and training, which has moved out of this repo.
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
Description
I've updated a number of things about the CI setup. Let me know if any of them don't seem sensible.
poetry.lock
's created usingpoetry
v1.2 don't cause CI build failures.pyproject.toml
) from 0.961 to 0.981, as this version fixes my-py issue #13627. This means that it is no longer necessary to pin the CI to use python version 3.10.6, so 3.10 can be used instead.actions/checkout
andpre-commit/action
to versions that use Node.js 16 rather than 12, see. This fixes the depreciation warning that was coming up for all successful action runs.Type of change
Key checklist
pre-commit
checks:$ pre-commit run -a
$ poetry run pytest
Further checks