-
Notifications
You must be signed in to change notification settings - Fork 64
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
hdl: remove yosys-report.txt #513
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.
What about using set -o pipefail
so we can preserve having the report written to a file?
@umarcor are we cool with tying the build process to bash? |
I think I am. |
Honestly, I'd be good with tying it to Python only and leaving bash and Makefiles behind. It's 2021 already! So, I think requiring bash is ok, until we can actually provide a py solution. |
are you thinking of something like https://nox.thea.codes/en/stable/ to automate testing in various python environment, or just orchestrating the build in python? |
Actually, my statement has several layers of complexity. I mean a modular project composed of various Python abstraction layers (classes) stacked on top of each other, which would allow existing HDL/EDA management tools to stop reinventing the wheel.
See the thread in gitter.im/hdl/community?at=60f6b7d0c9f8852a97fa240b and umarcor.github.io/osvb/apis/tool. The Makefiles in the The final solution is likely to have parts of pyIPCMI, Litex, PyFPGA, edalize, etc. Meanwhile, my naive approach is to replace Makefiles and bash with pydoit. That allows just a syntax change, with very low cognitive load for any reader used to makefiles. See, for instance, stnolting/neorv32#110. I find nox very interesting, but similarly to tox the scope is not exactly the same. I/we are not explicitly insterested in creating multiple venvs with specific packages in them. We are focused in a single Python environment (which might be the system, a container, one specific venv or some venv created by Conda) and multiple EDA tools not written in Python. Nevertheless, I will note down the reference to nox, because it might be useful in some of the abstraction layers. Some of the tools that use nox, such as Hydra or Google's projects, do have some overlap with our scope. |
One thing to think about is that we want to be as familiar as possible to existing software developers. While we do want a "unified solution" there are plenty of stubborn developers which will always want to start with "simple makefiles". |
Agree. People need to be convinved about the need for a "fully-featured Python ecosystem" before using it. Those working on a limited number of boards, with an specific set of languages, or an specific sub-ecosystem will not need such solution. There will always be a place for makefiles. However, at some point of complexity, they are more painful than useful.
I need to do a writeup of the discussion in hdl/community and a meeting I had with Patrick and Kaleb. Then I will reply there. |
@proppy, do you mind using pipefail and adding All other CI failures should be fixed now (both doc and macos). |
b81136e
to
522e5a1
Compare
- set default shell to bash - add pipefail option Fixes im-tomu#412
522e5a1
to
7cb2dcb
Compare
Thanks! |
Fixes #412