How to update the conda-forge recipes for AutoGluon
- autogluon.common-feedstock
- autogluon.features-feedstock
- autogluon.core-feedstock
- autogluon.tabular-feedstock
- autogluon.multimodal-feedstock
- autogluon.timeseries-feedstock
- autogluon-feedstock
- autogluon.common-feedstock
- autogluon.features-feedstock
- autogluon.core-feedstock
- autogluon.tabular-feedstock
- autogluon.multimodal-feedstock
- autogluon.timeseries-feedstock
- autogluon-feedstock
- autogluon.common-feedstock
- autogluon.features-feedstock
- autogluon.core-feedstock
- autogluon.tabular-feedstock
- autogluon.multimodal-feedstock
- autogluon.timeseries-feedstock
- autogluon-feedstock
-
Go to the AutoGluon release page on GitHub. Under the
Assets
section, right click onSource code (tar.gz)
to copy the link address. It should be something like this:https://github.com/autogluon/autogluon/archive/refs/tags/v0.7.0.tar.gz
-
Click on the link above to download the source code. The file should be named something like
autogluon-0.7.0.tar.gz
. -
Use
openssl
to generate the sha256 hash of the downloaded file, e.g.,openssl sha256 autogluon-0.7.0.tar.gz
The output should be something like this:
455831de3c9de8fbe11b100054b8f150661d0651212fcfa4ec2e42417fdac355
-
Fork the autogluon.common-feedstock repo to your GitHub account.
-
Clone the forked repo to your local machine.
-
Create a new branch, e.g.,
v0.7.0
-
Open the
recipe/meta.yaml
file in your favorite text editor. Update theversion
,sha256
andnumber
fields. Theversion
field should be the version number of the new release. For example, if the new release isv0.7.0
, then theversion
field should be0.7.0
. Thesha256
field should be the hash generated in step 4. Thenumber
field should be reset to0
for a new release. If theversion
number stays the same, then thenumber
field should be incremented by 1. This is usually the case when you are updating the dependencies of the package but not updating the package version.
- Update the package dependencies and version bounds for each recipe based on the release. For
autogluon.common
, the dependency list can be found atcommon/setup.py
, but the version bounds can be found atcore/_setup_utils.py
-
Commit the changes and push to your forked repo. Then create a pull request to the
autogluon.common-feedstock
repo. -
Comment on the pull request with the following text to trigger the CI build:
@conda-forge-admin, please rerender
-
Once the CI build is successful, merge the pull request.
-
Repeat steps above for the other six packages.
Optionally, you can build the conda-forge packages locally to test if the recipes are correct. This is especially useful when you are updating the dependencies of the package. The steps are as follows:
-
Install docker on your machine. See here for instructions.
-
Install Anaconda or Miniconda on your machine. See here for instructions.
-
Install
mamba
in the base environment of your conda installation. This is a faster version ofconda
that is recommended for conda-forge builds.conda install -n base mamba -c conda-forge
-
Create a new conda environment named
ag
with Python 3.9 or higher that's supported by AutoGluon.mamba create -n ag python=3.9
-
Navigate to the root directory of the cloned repo of the package you want to build. For example, if you want to build
autogluon.multimodal
, then you should be in the root directory of theautogluon.multimodal-feedstock
repo.chmod 777 -R autogluon.multimodal-feedstock cd autogluon.multimodal-feedstock python build-locally.py
-
Choose an option that you want to build that matches your computer configuration. For example, if you want to build the
linux_64_cuda
package with Python 3.9, then choose option3
.
-
If the build is successful, you should find the built packages in the
build_artifacts
directory under the root directory of the cloned repo. -
Install the built packages in the
ag
environment you created in step 4.mamba install -n ag -c "file://${PWD}/build_artifacts" -c conda-forge autogluon.multimodal
Make sure to check the
pytorch
version in the list of packages to install. If you seecuda
in the version number, that means the package is built with CUDA support. Otherwise, it's built without CUDA support.
- Please ask the existing maintainers if you want to be added as a maintainer. Only the existing maintainers can add new maintainers.
- The existing maintainer needs to go to the feedstock repo, e.g., autogluon.common-feedstock.
- Open a new issue and choose the
Bot commands
template. Click onGet started
to open the issue. - Enter the following text in the title of the issue. Be sure to replace
@username
with the GitHub username of the maintainer you want to add.
@conda-forge-admin, please add user @username
- Click on
Submit new issue
to submit the issue. - Once the issue is submitted and the CI build is successful, merge the pull request.