Skip to content

Improve build#56

Merged
MischaPanch merged 2 commits intodevelopfrom
improve-build
Jun 22, 2021
Merged

Improve build#56
MischaPanch merged 2 commits intodevelopfrom
improve-build

Conversation

@MischaPanch
Copy link
Copy Markdown
Collaborator

@MischaPanch MischaPanch commented Jun 22, 2021

Closes #31 #22

The caching is extra-careful: there is only one cache key which is pinned to the branch and to requirements.txt, setup.py and tox.ini. Any change in those files invalidate the previous cache

This env uses the fact that dependencies used in setup.py are the
newest ones, so removing requirements.txt from the env
dependencies uses them
@MischaPanch
Copy link
Copy Markdown
Collaborator Author

MischaPanch commented Jun 22, 2021

Speedup due to caching is noticeable (below with the previous dependencies as benchmark). Since with this PR we get one more env and more dependencies, the speedup will be even higher

image

Note that the very first build on a branch/PR will actually be a bit slower (cache needs to be uploaded) but all subsequent builds will be faster

Copy link
Copy Markdown
Collaborator

@opcode81 opcode81 left a comment

Choose a reason for hiding this comment

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

I can't test this because the tox build does not work under Windows.
I trust that you've verified the correctness, thus approved.
Just to clarify one thing: The relaxed depdendencies come in via the "full" specification in extras, i.e. this indirectly makes use of what we specified if setup.py - correct?

@MischaPanch
Copy link
Copy Markdown
Collaborator Author

I can't test this because the tox build does not work under Windows.
I trust that you've verified the correctness, thus approved.
Just to clarify one thing: The relaxed depdendencies come in via the "full" specification in extras, i.e. this indirectly makes use of what we specified if setup.py - correct?

Precisely. This is done by omitting -rrequirements.txt in the dependencies of the tox env. Then it pulls the dependencies from setup.py

@MischaPanch
Copy link
Copy Markdown
Collaborator Author

Btw, you can see the correctness in the build logs. I have verified that in the new env the newest versions of the packages are installed

@MischaPanch MischaPanch merged commit fa9ddc2 into develop Jun 22, 2021
@MischaPanch MischaPanch deleted the improve-build branch June 22, 2021 14:04
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.

Cache .tox and possible apt packages

2 participants