Maintaining the codebase
Ibis maintainers are expected to handle the following tasks as they arise:
- Reviewing and merging pull requests
- Triaging new issues
Dependencies
Dependency updates are automated using Mend Renovate.
Updating the lockfile
Occasionally you may need to lock dependencies. Edit pyproject.toml
as needed, then run:
just lock
This will update the lockfile and also update requirements-dev.txt
for developers using pip
.
Adding entries to ibis.examples
If you’re not a maintainer, please open an issue asking us to add your example.
Requirements
You need the ability to write to the gs://ibis-pins
GCS bucket to add an example.
Instructions
Make sure you’re in the root of the ibis git repository.
Assuming your file is called example.csv
:
- Add a gzip-compressed CSV file with the path
ibis/examples/data/example.csv.gz
. - Add a file named
ibis/examples/descriptions/example
that contains a description of your example. One line is best, but not necessary. - Run one of the following from the git root of an ibis clone:
python ibis/examples/gen_registry.py
(doesn’t include R dependencies)nix run '.#gen-examples'
(includes R dependencies)
Release
Ibis is released on PyPI and Conda Forge.
Releases to PyPI are handled automatically using semantic release.
To trigger a release use the Release GitHub Action.
The conda-forge package is maintained as a conda-forge feedstock.
After a release to PyPI, the conda-forge bot automatically updates the ibis package.