We follow the Jupyter Contribution Workflow and the IPython Contributing Guide.
Use the pre-commit tool to format and lint the codebase:
# to apply to only staged files
$ pre-commit run
# to run against all files
$ pre-commit run --all-files
# to install so that it is run before commits
$ pre-commit installTests can be run through hatch which will automatically manage test environments and dependencies.
# to run all tests
$ hatch run test:test
# to run with coverage (used by CI)
$ hatch run cov:testNbClient needs some PRs to copy over documentation!
If you are going to release a version of nbclient you should also be capable
of testing it and building the docs.
Please follow the instructions in Testing and Documentation if you are unfamiliar with how to do so.
The rest of the release process can be found in these release instructions.