Oh boy, is this a big one. I didn't make small PRs because it was a major rewrite with no clear way to do incremental changes.
If you want to checkout the new features, follow this page from the documentation in a Google Colab notebook.
Among the changes:
The functionality of the two plugin versions is united by using the concept of source file "groups" which compile together.
Added tests with almost 90% coverage.
Generated documentation automatically with sphinx and deployed with readthedocs at this URL.
Created CI pipeline using pre-commit hooks and GitHub actions for running tests automatically, running code quality checks (black, bandit, pylint, flake8, isort).
Created PyPI deployment workflow that triggers when a new tag (such as "v1.0.3") is pushed to master. You can see the package here.
Updated the README.md with usage instructions, badges, etc.
Migrated to pyproject.toml as this is the new standard for python packages.
Others things I've forgotten about.
There are a few things we need to discuss before you accept this PR:
[OPTIONAL] Adding you as a maintainer on the PyPI project. I think you should still be able to publish packages to PyPI even without me doing this because I added your repo as a publisher.
[REQUIRED] You should create a codecov account by linking with GitHub. Then you need to add the nvcc4jupyter repo (the one on your account, not the fork) and it will tell you what you should do for GitHub Actions integration, but basically what you need to do is copy the token they give you and add it as a repository secret (in repository Settings -> Secrets and variables -> Actions -> New repository secret) named CODECOV_TOKEN.
Oh boy, is this a big one. I didn't make small PRs because it was a major rewrite with no clear way to do incremental changes.
If you want to checkout the new features, follow this page from the documentation in a Google Colab notebook.
Among the changes:
There are a few things we need to discuss before you accept this PR: