-
Notifications
You must be signed in to change notification settings - Fork 27
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
surelog/yosys: Allow running with newer Python than used during building #68
Conversation
@ajelinski Can you just build everything for both Python 3.7 and Python 3.8? |
@mithro You mean all of the |
@mithro do you mean building two flavors of each package? Or relaxing the dependencies like here? |
5c2a22c
to
df320e8
Compare
@mithro This can be done but I don't think it should be applied automatically to all of the packages. I mean, Python version doesn't always matter as it is not always required to build the package and sometimes it's only used to run some build scripts. Therefore many CI jobs would be redundant. I've just modified the PR change since maybe you're right that it's better to have separate packages for Python 3.7 and 3.8. |
@ajelinski -- All packages which require Python should build for Python 3.7, Python 3.8, Python 3.9 The reason I was suggesting everything is there is some subtle complexity around the dependencies of Python itself can conflict with dependencies of the other packages. |
.github/workflows/build-packages.yml
Outdated
@@ -331,7 +345,8 @@ jobs: | |||
#26 | |||
symbiyosys-linux: |
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.
You should probably build SymbiYosys against both these.
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.
Done.
df320e8
to
2f252f9
Compare
The latest tree_sitter v0.2.2 package breaks that build.
I'll merge the PR since it's been successfully tested already apart from the The |
The change is required for
surelog
andyosys
to work in the SystemVerilog testing workflow: https://github.com/SymbiFlow/sv-tests because they are used alongside Python 3.8. Python 3.7 is still used to build the packages, the only change is about allowing them to be run with Python >=3.7.yosys
requires using more complicated measures to achieve that because it has Python as ahost
requirement. Even though it's also one of thebuild
requirements and one of them seems to be redundant, I've checked that building fails without thehost
one.Therefore
conda_build_config.yaml
had to be used to loosen the version restriction (by default Python hasmax_pin: x.x
). I removed the old contents of the file since it certainly had no influence. The currently builtyosys
packages require Python 3.7 to run even though according to the file (together with thepython {{ python }}
run requirement) specified it should be Python 3.6.The
surelog-uhdm
andverilator-uhdm
changes are simple fixes because somehow therun
key got lost during their addition based on thesymbiflow/conda-packages
recipe.