-
Notifications
You must be signed in to change notification settings - Fork 20
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
Project-based venv #90
base: master
Are you sure you want to change the base?
Conversation
|
||
# optional dependencies | ||
stringtemplate3 | ||
singledispatch |
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.
Why optional? singledispatch
is required.
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.
This code tells me the singledispatch
decorator is required, but the singledispatch
package is needed only for python2
(backport).
With python3, singledispatch
is imported from the package functools
.
Also python documentation says that the singledispatch decorator is part of functools
since version 3.4.
Should we care about supporting python versions <=3.4 ?
TASTE is using 3.5 from what I can recall, and the setup.py
says >=3.7 ...
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.
Oh so the singledispatch
package is unnecessary now and indeed this dependency could be removed (and replaced with an import from functools
). I missed that, thanks for spotting it.
e97a353
to
8d00f66
Compare
I recently rebased this onto the recent
One thing I don't really like is the fact that I have to activate the virtual env from the makefile at every line there (make will create a new shell process for each line, to mitigate side-effects damage, and therefore we loose the virtualenv). Which is why I would like to move the "non-obvious" steps outside the makefile if possible (in a later PR):
|
Why don't you use Also I am not sure to understand - the
Yes the solution would be to upload this runtime on PyPi, making it available properly to everyone
In general I don't want to put generated code on the repo |
Sure, I could do this, but it is perhaps less clear which command will embed which shell (and how errors will be back-propagated), and anyway I see it as a hint that doing so many steps in the Makefile is not the way to go about it...
Correct.
For later reference, there seems to be a way to bring it along from opengeode setup.py directly, called direct references : https://peps.python.org/pep-0440/#direct-references
Here is an interesting option: do it in the setup.py : https://gist.github.com/ivanalejandro0/6758741 |
What about |
This depends on #89
Adds a target to the makefile, to deploy to a project based venv.
This allows to gather dependencies into a
requirements.txt
file.Also installing in a clean virtual env from the wheel revealed missing dependencies in
setup.py
Possible future improvements: