-
Notifications
You must be signed in to change notification settings - Fork 158
Enhance project infrastructure setup #205
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
Conversation
… with poetry, linting, formatting and type checking configuration, pre-commit config, Makefile, documentation updates. chore(python): Drop python 3.8 support, because it is EOL
… linting, formatting and type-checking.
fix(solidity): Convert Path object to string in solc version cache fix(smartbugs): Convert Exception to string before appending to errors list
… strict mypy enforcement
fix: Apply code quality improvements
…and directory structure
…+ average coverage
gsalzer
left a comment
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.
On Ubuntu, after running install/setup-venv.sh --dev in the top folder of SB, the folder contains four empty files named =2.1.0, =3.11.1, =4.1.0 and =7.4.0.
|
For After doing After Is this ok? Should we add |
|
Thank you, @ZarIliv, excellent work! On my side (macOS 14.7.6), after running Looking at If I run |
|
Hi @jff, Thanks for the review! Unfortunately I do not have a system with macOS at my disposal, but from what you provided it seems that the install script fails at the line
This uses the python Installation of the OS instead of the created venv. I fixed these lines in my latest commit. Can you verify that it is working now? @gsalzer: As already discussed: Your mentioned issues are fixed now. |
|
Still two installation issues, when installing with
|
|
I now understand the issue I'm having: I have poetry installed and it is installing the dependencies in This is odd because poetry should be able to detect and use the virtual environment currently activated. I can't look at the details and fix this right now. I'll try to do it later today. |
|
@gsalzer: Now I get the issue. The problem is, that on your machine poetry is not installed. Therefore the script uses the pip default path and installs dependencies based on the requirements file for your specific python version. We could either replace this section and always install poetry as well, or we could edit all requirements files (it would be a manual workflow, because we need to keep the requirements files and the pip install line consistent with our pyproject.toml file). I'd prefer to install poetry in the setup-venv.sh script. |
|
Can I suggest that we create the folder I changed the directory name to |
|
@ZarIliv We have currently three installation options: poetry, pip+requirements files, and pip+packages on the command line. This seems a bit too much. |
|
@ZarIliv Is |
|
Poetry can be installed in the venv as well. I'll update the script accordingly. |
|
It's all working fine on my side! Thanks, @ZarIliv ! |
Enhance Project Infrastructure Setup
This PR modernizes SmartBugs' development infrastructure with comprehensive testing, type safety, and code quality tooling.
Key Changes:
solidity, tasks, tools modules)
Files Changed: 122 files (+11,951, -1,318 lines)
Testing:
This establishes a solid foundation for future development with improved maintainability and code reliability.