@@ -642,9 +642,6 @@ the following files:
642
642
consuming.)
643
643
- ``setup.py ``
644
644
contains all Python dependencies, regardless of their installation source
645
- - ``package/meta.yaml ``
646
- contains dependencies for the conda package; all Python and compiled
647
- dependencies that can be installed from conda should be listed here
648
645
649
646
Note that packages may have a different name on
650
647
`conda-forge <https://conda-forge.org/ >`__ than on PyPI _.
@@ -740,8 +737,8 @@ to run their favourite recipe using this branch.
740
737
3. Increase the version number
741
738
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
742
739
743
- The version number is stored in ``esmvalcore/_version.py ``,
744
- `` package/meta.yaml ``, `` CITATION.cff ``. Make sure to update all files.
740
+ The version number is stored in ``esmvalcore/_version.py ``, `` CITATION.cff ``.
741
+ Make sure to update both files.
745
742
Also update the release date in ``CITATION.cff ``.
746
743
See https://semver.org for more information on choosing a version number.
747
744
Make a pull request and get it merged into ``main `` and cherry pick it into
@@ -779,39 +776,7 @@ Then click the
779
776
`releases tab <https://github.com/ESMValGroup/ESMValCore/releases >`__
780
777
and create the new release from the release branch (i.e. not from ``main ``).
781
778
782
- 7. Create and upload the Conda package
783
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
784
-
785
- The package is automatically uploaded to the
786
- `ESMValGroup conda channel <https://anaconda.org/esmvalgroup/esmvalcore >`__
787
- by a GitHub action (note that this is an obsolete procedure for the main package upload,
788
- since the main package is now uploaded to
789
- `conda-forge conda channel <https://anaconda.org/conda-forge >`__ via
790
- the upload to PyPi, but we still upload to the esmvalgroup channel as a backup option;
791
- also the upload to esmvalcore gives us a chance to verify it immediately after upload).
792
- If this has failed for some reason, build and upload the package manually by
793
- following the instructions below.
794
-
795
- Follow these steps to create a new conda package:
796
-
797
- - Check out the tag corresponding to the release,
798
- e.g. ``git checkout tags/v2.1.0``
799
- - Make sure your current working directory is clean by checking the output
800
- of ``git status `` and by running ``git clean -xdf `` to remove any files
801
- ignored by git.
802
- - Edit ``package/meta.yaml `` and uncomment the lines starting with ``git_rev `` and
803
- ``git_url ``, remove the line starting with ``path `` in the ``source ``
804
- section.
805
- - Activate the base environment ``conda activate base ``
806
- - Install the required packages:
807
- ``conda install -y conda-build conda-verify ripgrep anaconda-client ``
808
- - Run ``conda build package -c conda-forge `` to build the
809
- conda package
810
- - If the build was successful, upload the package to the esmvalgroup
811
- conda channel, e.g.
812
- ``anaconda upload --user esmvalgroup /path/to/conda/conda-bld/noarch/esmvalcore-2.3.1-py_0.tar.bz2 ``.
813
-
814
- 8. Create and upload the PyPI package
779
+ 7. Create and upload the PyPI package
815
780
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
816
781
817
782
The package is automatically uploaded to the
@@ -842,6 +807,34 @@ Follow these steps to create a new Python package:
842
807
You can read more about this in
843
808
`Packaging Python Projects <https://packaging.python.org/tutorials/packaging-projects/ >`__.
844
809
810
+ 8. Create the Conda package
811
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
812
+
813
+ The ``esmvalcore `` package is published on the `conda-forge conda channel
814
+ <https://anaconda.org/conda-forge> `__.
815
+ This is done via a pull request on the `esmvalcore-feedstock repository
816
+ <https://github.com/conda-forge/esmvalcore-feedstock> `__.
817
+
818
+ For the final release, this pull request is automatically opened by a bot.
819
+ An example pull request can be found `here
820
+ <https://github.com/conda-forge/esmvalcore-feedstock/pull/11> `__.
821
+ Follow the instructions by the bot to finalize the pull request.
822
+ This step mostly contains updating dependencies that have been changed during
823
+ the last release cycle.
824
+ Once approved by the `feedstock maintainers
825
+ <https://github.com/conda-forge/esmvalcore-feedstock/blob/main/README.md#feedstock-maintainers> `__
826
+ they will merge the pull request, which will in turn publish the package on
827
+ conda-forge some time later.
828
+ Contact the feedstock maintainers if you want to become a maintainer yourself.
829
+
830
+ To publish a release candidate, you have to open a pull request yourself.
831
+ An example for this can be found `here
832
+ <https://github.com/conda-forge/esmvalcore-feedstock/pull/35> `__.
833
+ Make sure to use the `rc branch
834
+ <https://github.com/conda-forge/esmvalcore-feedstock/tree/rc> `__ as the target
835
+ branch for your pull request and follow all instructions given by the linter
836
+ bot.
837
+
845
838
846
839
.. _`@ESMValGroup/esmvaltool-coreteam` : https://github.com/orgs/ESMValGroup/teams/esmvaltool-coreteam
847
840
.. _`@ESMValGroup/esmvaltool-developmentteam` : https://github.com/orgs/ESMValGroup/teams/esmvaltool-developmentteam
0 commit comments