Skip to main content
  • Home
  • Development
  • Documentation
  • Donate
  • Operational login
  • Browse the archive

swh logo
SoftwareHeritage
Software
Heritage
Archive
Features
  • Search

  • Downloads

  • Save code now

  • Add forge now

  • Help

https://doi.org/10.5281/zenodo.3597646
09 March 2025, 10:41:59 UTC
  • Code
  • Branches (0)
  • Releases (3)
  • Visits
    • Branches
    • Releases
      • 3
      • 3
      • 2
      • 1
    • 1625e73
    • /
    • pyxem-kikuchipy-5365e79
    • /
    • RELEASE.rst
    Raw File Download
    Permalinks

    To reference or cite the objects present in the Software Heritage archive, permalinks based on SoftWare Hash IDentifiers (SWHIDs) must be used.
    Select below a type of object currently browsed in order to display its associated SWHID and permalink.

    • content
    • directory
    • snapshot
    • release
    origin badgecontent badge Iframe embedding
    swh:1:cnt:621f73c097851eaf4e84002b30f79e3026bf39c8
    origin badgedirectory badge Iframe embedding
    swh:1:dir:144469eeffd2079dd12d2b259970ab3137bbfbdd
    origin badgesnapshot badge
    swh:1:snp:7fc3bc5511877db5b71ef36d387cf876a60df237
    origin badgerelease badge
    swh:1:rel:6671e2a2924981177d051b3ad3d82d95c4a0d854
    Citations

    This interface enables to generate software citations, provided that the root directory of browsed objects contains a citation.cff or codemeta.json file.
    Select below a type of object currently browsed in order to generate citations for them.

    • content
    • directory
    • snapshot
    • release
    Generate software citation in BibTex format (requires biblatex-software package)
    Generating citation ...
    Generate software citation in BibTex format (requires biblatex-software package)
    Generating citation ...
    Generate software citation in BibTex format (requires biblatex-software package)
    Generating citation ...
    Generate software citation in BibTex format (requires biblatex-software package)
    Generating citation ...
    RELEASE.rst
    How to make a new release of ``kikuchipy``
    ==========================================
    
    kikuchipy's branching model is similar to the Gitflow Workflow (`original blog post
    <https://nvie.com/posts/a-successful-git-branching-model/>`__).
    
    kikuchipy versioning tries its best to adhere to `Semantic Versioning
    <https://semver.org/spec/v2.0.0.html>`__.
    See the `Python Enhancement Proposal (PEP) 440 <https://peps.python.org/pep-0440/>`__
    for supported version identifiers.
    
    Preparation
    -----------
    - Locally, create a minor release branch from the ``develop`` branch when making a minor
      release, or create a patch release branch from the ``main`` branch when making a patch
      release. Ideally, a patch release is published immediately after a bug fix is merged
      on ``main``. Therefore, it might be best to do the release updates directly on the bug
      fix branch. This way, we do not have to create a separate patch release branch.
    
    - Run tutorial notebooks and examples in the documentation locally.
      Confirm that they produce the expected results.
      From time to time, check the documentation links (``make linkcheck``).
      Fix broken links.
    
    - Ensure all contributors are included and sorted correctly by reviewing the contributor
      list ``__credits__`` in ``kikuchipy/__init__.py``.
      Do the same for the Zenodo contributors file ``.zenodo.json``.
    
    - Increment the version number in ``kikuchipy/__init__.py``.
      Review and clean up ``CHANGELOG.rst`` as per Keep a Changelog.
    
    - Make a PR of the release branch to ``main``.
      Discuss the changelog with others and make any changes *directly* to the release
      branch.
      Merge the branch onto ``main``.
    
    Tag and release
    ---------------
    - If the ``__version__`` in ``kikuchipy/__init__.py`` on ``main`` has changed in a new
      commit, a tagged, annotated release *draft* is automatically created.
      If ``__version__`` is now "0.42.0", the release name is "kikuchipy 0.42.0" and the
      tag name is "v0.42.0".
      The tag target will be the ``main`` branch.
      The release body contains a static description and a link to the changelog.
      This release draft can be published as is.
      Or, changes to the release body can be made before publishing.
    
    - Monitor the publish workflow to ensure the release is successfully published to PyPI.
    
    Post-release action
    -------------------
    - Monitor the `documentation build <https://readthedocs.org/projects/kikuchipy/builds>`__
      to ensure that the new stable documentation is successfully built from the release.
    
    - Ensure that `Zenodo <https://doi.org/10.5281/zenodo.3597646>`__ displays the new
      release.
    
    - Ensure that Binder can run the tutorial notebooks by clicking the Binder badge in the
      top banner of one of the tutorials in the `online documentation
      <https://kikuchipy.org/en/stable>`__.
    
    - Bring changes on ``main`` onto ``develop`` by branching from ``main``, merging
      ``develop`` onto the new branch, and fixing potential conflicts.
      After any conflicts are fixed, update or revert ``__version__`` and make any updates
      to this guide if necessary.
      Make a PR to ``develop`` and merge.
    
    - Tidy up GitHub issues and close the corresponding milestone.
    
    - A PR to the conda-forge feedstock will automatically be created by the conda-forge
      bot.
      Follow the instructions in the PR and any relevant instructions in the conda-forge
      documentation on updating packages.
      Merge the PR after checks pass.
      Monitor the Azure pipeline CI to ensure that the release is successfully published to
      conda-forge.
    

    Software Heritage — Copyright (C) 2015–2025, The Software Heritage developers. License: GNU AGPLv3+.
    The source code of Software Heritage itself is available on our development forge.
    The source code files archived by Software Heritage are available under their own copyright and licenses.
    Terms of use: Archive access, API— Contact— JavaScript license information— Web API

    back to top