Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
62 changes: 2 additions & 60 deletions RELEASE.md
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How do we feel about completely removing this file? 🤔

Original file line number Diff line number Diff line change
@@ -1,61 +1,3 @@
# Making a new release of jupytergis
Please view our releasing guide on ReadTheDocs:

The extension can be published to `PyPI` and `npm` manually or using the [Jupyter Releaser](https://github.com/jupyter-server/jupyter_releaser).

## Manual release

### Python package

This extension can be distributed as Python
packages. All of the Python
packaging instructions in the `pyproject.toml` file to wrap your extension in a
Python package. Before generating a package, we first need to install `build`.

```bash
pip install build twine
```

To create a Python source package (`.tar.gz`) and the binary package (`.whl`) in the `dist/` directory, do:

```bash
python -m build
```

> `python setup.py sdist bdist_wheel` is deprecated and will not work for this package.

Then to upload the package to PyPI, do:

```bash
twine upload dist/*
```

### NPM package

To publish the frontend part of the extension as a NPM package, do:

```bash
npm login
npm publish --access public
```

## Automated releases with the Jupyter Releaser

The extension repository should already be compatible with the Jupyter Releaser.

Check out the [workflow documentation](https://github.com/jupyter-server/jupyter_releaser#typical-workflow) for more information.

Here is a summary of the steps to cut a new release:

- Fork the [`jupyter-releaser` repo](https://github.com/jupyter-server/jupyter_releaser)
- Add `ADMIN_GITHUB_TOKEN`, `PYPI_TOKEN` and `NPM_TOKEN` to the Github Secrets in the fork
- Go to the Actions panel
- Run the "Draft Changelog" workflow
- Merge the Changelog PR
- Run the "Draft Release" workflow
- Run the "Publish Release" workflow

## Publishing to `conda-forge`

If the package is not on conda forge yet, check the documentation to learn how to add it: https://conda-forge.org/docs/maintainer/adding_pkgs.html

Otherwise a bot should pick up the new version publish to PyPI, and open a new PR on the feedstock repository automatically.
<https://jupytergis.readthedocs.io/en/latest/contributor_guide/releasing.html>
18 changes: 17 additions & 1 deletion docs/contributor_guide/releasing.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ This will bump the packages as follows:
- `0.1.0` -> `0.1.1`

This is often **not** what we want.
To bump to another version, you can specify the Python version directly.
To bump to another version, you can specify the desired version directly.
For example:

- `0.1.0b8`
Expand All @@ -42,6 +42,22 @@ You can also specify a version part, e.g.:
- `major`
- Would bump `0.3.0` -> `1.0.0`

## Conda Forge release

After the PyPI release, a Conda Forge bot will automatically open a PR on
[our feedstock repo](https://github.com/conda-forge/jupytergis-packages-feedstock).

If this is taking too long, you may trigger it manually by opening an issue with the
title `@conda-forge-admin, please update version`.

If you need maintainer access to handle releases, you may request access by opening an
issue with the title `@conda-forge-admin, please add user @my-username`.

If the dependencies of JupyterGIS have changed, the Conda Forge recipe must also be
manually updated -- the bot will not do this for you, but it will likely warn you in a
comment that it must be done.
Please update `recipe/meta.yaml` to reflect those changes.

## Release assets

JupyterGIS is published to:
Expand Down
Loading