Skip to content

Commit c19323d

Browse files
afshingithub-actions[bot]blink1073kevin-bates
authored
Use Jupyter Releaser (#6048)
* Use Jupyter Releaser * Automated Changelog Entry for 6.4.0a0 on notebook-releaser * Publish 6.4.0a0 SHA256 hashes: dist/notebook-6.4.0a0-py3-none-any.whl: abbbbb02504cedb85c2d5eeac39ea11615360b9b0075126bf180d6011eac14a5 dist/notebook-6.4.0a0.tar.gz: 2984630a020a9396c61b2c3b98f43b1957dd0121b162a926b3d6136fafa7ca16 * Bump to 6.5.0.dev0 * Remove jupyter_packaging as a runtime requirement * Automated Changelog Entry for 6.4.0a1 on notebook-releaser * Publish 6.4.0a1 SHA256 hashes: dist/notebook-6.4.0a1-py3-none-any.whl: 4b0ae5cb972b5b16b18b942810b85859185ef2081017dd495e5f57099ce06ef4 dist/notebook-6.4.0a1.tar.gz: c48e10d34afa35e304e3b7deca1882508195960f35c4661dec044bb8da344ae5 * Bump to 6.5.0.dev0 * Update notebook/_version.py Co-authored-by: Kevin Bates <[email protected]> * Update pyproject.toml Co-authored-by: Kevin Bates <[email protected]> Co-authored-by: GitHub Action <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Steven Silvester <[email protected]> Co-authored-by: Kevin Bates <[email protected]>
1 parent 008a6c0 commit c19323d

15 files changed

+147
-33
lines changed

.github/workflows/check-release.yml

+57
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
name: Check Release
2+
on:
3+
push:
4+
branches: ["master"]
5+
pull_request:
6+
branches: ["*"]
7+
8+
permissions:
9+
contents:
10+
write
11+
12+
jobs:
13+
check_release:
14+
runs-on: ubuntu-latest
15+
steps:
16+
- name: Checkout
17+
uses: actions/checkout@v2
18+
- name: Install Python
19+
uses: actions/setup-python@v2
20+
with:
21+
python-version: 3.9
22+
architecture: "x64"
23+
- name: Install node
24+
uses: actions/setup-node@v2
25+
with:
26+
node-version: '14.x'
27+
- name: Get pip cache dir
28+
id: pip-cache
29+
run: |
30+
echo "::set-output name=dir::$(pip cache dir)"
31+
- name: Cache pip
32+
uses: actions/cache@v1
33+
with:
34+
path: ${{ steps.pip-cache.outputs.dir }}
35+
key: ${{ runner.os }}-pip-${{ hashFiles('setup.cfg') }}
36+
restore-keys: |
37+
${{ runner.os }}-pip-
38+
${{ runner.os }}-pip-
39+
- name: Cache checked links
40+
uses: actions/cache@v2
41+
with:
42+
path: ~/.cache/pytest-link-check
43+
key: ${{ runner.os }}-linkcheck-${{ hashFiles('**/.md') }}-md-links
44+
restore-keys: |
45+
${{ runner.os }}-linkcheck-
46+
- name: Upgrade packaging dependencies
47+
run: |
48+
pip install --upgrade pip setuptools wheel --user
49+
- name: Install Dependencies
50+
run: |
51+
pip install -e .
52+
- name: Check Release
53+
env:
54+
TWINE_PASSWORD: ${{ secrets.TEST_PYPI_TOKEN }}
55+
uses: jupyter-server/jupyter_releaser/.github/actions/check-release@v1
56+
with:
57+
token: ${{ secrets.GITHUB_TOKEN }}

.gitignore

+2
Original file line numberDiff line numberDiff line change
@@ -54,3 +54,5 @@ geckodriver.log
5454

5555
# copied changelog
5656
docs/source/changelog.md
57+
58+
.jupyter_releaser_checkout

CHANGELOG.md

+12-2
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,18 @@ upgrading `notebook`.
1212
Use `pip install pip --upgrade` to upgrade pip. Check pip version with
1313
`pip --version`.
1414

15+
<!-- <START NEW CHANGELOG ENTRY> -->
16+
17+
## 6.4.0a1
18+
19+
No merged PRs
20+
21+
<!-- <END NEW CHANGELOG ENTRY> -->
22+
23+
## 6.4.0a0
24+
25+
No merged PRs
26+
1527
## 6.3.0
1628

1729
### Merged PRs
@@ -41,7 +53,6 @@ Use `pip install pip --upgrade` to upgrade pip. Check pip version with
4153

4254
[@abielhammonds](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aabielhammonds+updated%3A2021-01-13..2021-03-18&type=Issues) | [@afshin](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aafshin+updated%3A2021-01-13..2021-03-18&type=Issues) | [@ajharry](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aajharry+updated%3A2021-01-13..2021-03-18&type=Issues) | [@Alokrar](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AAlokrar+updated%3A2021-01-13..2021-03-18&type=Issues) | [@befeleme](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Abefeleme+updated%3A2021-01-13..2021-03-18&type=Issues) | [@blairdrummond](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ablairdrummond+updated%3A2021-01-13..2021-03-18&type=Issues) | [@blink1073](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ablink1073+updated%3A2021-01-13..2021-03-18&type=Issues) | [@bollwyvl](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Abollwyvl+updated%3A2021-01-13..2021-03-18&type=Issues) | [@Carreau](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ACarreau+updated%3A2021-01-13..2021-03-18&type=Issues) | [@ChenChenDS](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AChenChenDS+updated%3A2021-01-13..2021-03-18&type=Issues) | [@cosmoscalibur](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Acosmoscalibur+updated%3A2021-01-13..2021-03-18&type=Issues) | [@dlrice](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adlrice+updated%3A2021-01-13..2021-03-18&type=Issues) | [@dwanneruchi](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adwanneruchi+updated%3A2021-01-13..2021-03-18&type=Issues) | [@ElisonSherton](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AElisonSherton+updated%3A2021-01-13..2021-03-18&type=Issues) | [@FazeelUsmani](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AFazeelUsmani+updated%3A2021-01-13..2021-03-18&type=Issues) | [@frenzymadness](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Afrenzymadness+updated%3A2021-01-13..2021-03-18&type=Issues) | [@goerz](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agoerz+updated%3A2021-01-13..2021-03-18&type=Issues) | [@insolor](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ainsolor+updated%3A2021-01-13..2021-03-18&type=Issues) | [@jasongrout](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajasongrout+updated%3A2021-01-13..2021-03-18&type=Issues) | [@JianghuiDu](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AJianghuiDu+updated%3A2021-01-13..2021-03-18&type=Issues) | [@JuzerShakir](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AJuzerShakir+updated%3A2021-01-13..2021-03-18&type=Issues) | [@kevin-bates](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akevin-bates+updated%3A2021-01-13..2021-03-18&type=Issues) | [@Khalilsqu](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AKhalilsqu+updated%3A2021-01-13..2021-03-18&type=Issues) | [@meeseeksdev](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ameeseeksdev+updated%3A2021-01-13..2021-03-18&type=Issues) | [@mgeier](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Amgeier+updated%3A2021-01-13..2021-03-18&type=Issues) | [@michaelpedota](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Amichaelpedota+updated%3A2021-01-13..2021-03-18&type=Issues) | [@mjbright](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Amjbright+updated%3A2021-01-13..2021-03-18&type=Issues) | [@MSeal](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AMSeal+updated%3A2021-01-13..2021-03-18&type=Issues) | [@ncoughlin](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ancoughlin+updated%3A2021-01-13..2021-03-18&type=Issues) | [@NTimmons](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ANTimmons+updated%3A2021-01-13..2021-03-18&type=Issues) | [@ProsperousHeart](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AProsperousHeart+updated%3A2021-01-13..2021-03-18&type=Issues) | [@rjn01](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Arjn01+updated%3A2021-01-13..2021-03-18&type=Issues) | [@slw07g](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aslw07g+updated%3A2021-01-13..2021-03-18&type=Issues) | [@stenivan](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Astenivan+updated%3A2021-01-13..2021-03-18&type=Issues) | [@takluyver](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Atakluyver+updated%3A2021-01-13..2021-03-18&type=Issues) | [@thomasrockhu](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Athomasrockhu+updated%3A2021-01-13..2021-03-18&type=Issues) | [@wgilpin](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Awgilpin+updated%3A2021-01-13..2021-03-18&type=Issues) | [@wxtt522](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Awxtt522+updated%3A2021-01-13..2021-03-18&type=Issues) | [@yuvipanda](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ayuvipanda+updated%3A2021-01-13..2021-03-18&type=Issues) | [@Zsailer](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AZsailer+updated%3A2021-01-13..2021-03-18&type=Issues)
4355

44-
4556
## 6.2.0
4657

4758
## Merged PRs
@@ -1319,7 +1330,6 @@ All users are strongly encouraged to upgrade to 4.2.2.
13191330
- Fix for ignored CSS on Windows
13201331
- Fix specifying destination when installing nbextensions
13211332

1322-
13231333
## 4.2.0
13241334

13251335
Release 4.2 adds a new API for enabling and installing extensions.

MANIFEST.in

+3
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,12 @@ include CHANGELOG.md
55
include package.json
66
include bower.json
77
include .bowerrc
8+
include pyproject.toml
9+
include setup.py
810
include setupbase.py
911
include Dockerfile
1012
graft tools
13+
graft notebook/tests
1114

1215
# Translations
1316
graft notebook/i18n

RELEASE.md

+19-14
Original file line numberDiff line numberDiff line change
@@ -1,42 +1,48 @@
11
# Making a Release of Notebook
22

3-
## Start from a fresh git checkout and conda environment
3+
## Using `jupyter_releaser`
44

5-
### Set the release branch
5+
The recommended way to make a release is to use [`jupyter_releaser`](https://github.com/jupyter-server/jupyter_releaser#checklist-for-adoption).
6+
7+
## Manual Release Process
8+
9+
### Start from a fresh git checkout and conda environment
10+
11+
#### Set the release branch
612

713
```bash
814
export release_branch=master
915
```
1016

11-
### Create the git checkout
17+
#### Create the git checkout
1218

1319
```bash
1420
git clone [email protected]:jupyter/notebook.git
1521
cd notebook
1622
git checkout ${release_banch}
1723
```
1824

19-
### Create and activate the conda environment
25+
#### Create and activate the conda environment
2026

2127
```bash
2228
conda create -n notebook-release -c conda-forge jupyter
2329
conda activate notebook-release
2430
```
2531

26-
## Perform a local dev install
32+
### Perform a local dev install
2733

2834
```bash
2935
pip install -ve .
3036
```
3137

32-
## Install release dependencies
38+
### Install release dependencies
3339

3440
```bash
35-
conda install -c conda-forge nodejs babel twine
41+
conda install -c conda-forge nodejs babel twine build
3642
npm install -g po2json
3743
```
3844

39-
## Update the version
45+
### Update the version
4046

4147
```bash
4248
vim notebook/_version.py
@@ -45,29 +51,28 @@ git commit -am "Release $(python setup.py --version)"
4551
git tag $(python setup.py --version)
4652
```
4753

48-
## Create the artifacts
54+
### Create the artifacts
4955

5056
```bash
5157
rm -rf dist
52-
python setup.py sdist
53-
python setup.py bdist_wheel
58+
python -m build .
5459
```
5560

56-
## Upload the artifacts
61+
### Upload the artifacts
5762

5863
```bash
5964
twine check dist/* && twine upload dist/*
6065
```
6166

62-
## Change back to dev version
67+
### Change back to dev version
6368

6469
```bash
6570
vim notebook/_version.py # Add the .dev suffix
6671
python setup.py jsversion
6772
git commit -am "Back to dev version"
6873
```
6974

70-
## Push the commits and tags
75+
### Push the commits and tags
7176

7277
```bash
7378
git push origin ${release_branch} --tags

docs/source/config_overview.rst

+1-1
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ front-end Notebook client (i.e. the familiar notebook interface).
4747
documented in the configuration file and the user documentation.
4848

4949
- :ref:`Running a Notebook server <working_remotely>`
50-
- Related: `Configuring a language kernel <https://jupyter.readthedocs.io/en/latest/install-kernel.html>`_
50+
- Related: `Configuring a language kernel <https://ipython.readthedocs.io/en/latest/install/kernel_install.html>`_
5151
to run in the Notebook server enables your server to run other languages, like R or Julia.
5252

5353
.. _configure_nbclient:

docs/source/examples/Notebook/Distributing Jupyter Extensions as Python Packages.ipynb

+2-2
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,7 @@
134134
"\n",
135135
"> Of course, in addition to the files listed, there are number of other files one needs to build a proper package. Here are some good resources:\n",
136136
"- [The Hitchhiker's Guide to Packaging](https://the-hitchhikers-guide-to-packaging.readthedocs.io/en/latest/quickstart.html)\n",
137-
"- [Repository Structure and Python](https://www.kennethreitz.org/essays/repository-structure-and-python) by Kenneth Reitz\n",
137+
"- [Repository Structure and Python](https://kenreitz.org/essays/2013/01/27/repository-structure-and-python) by Kenneth Reitz\n",
138138
"\n",
139139
"> How you distribute them, too, is important:\n",
140140
"- [Packaging and Distributing Projects](https://python-packaging-user-guide.readthedocs.io/tutorials/distributing-packages/)\n",
@@ -507,4 +507,4 @@
507507
},
508508
"nbformat": 4,
509509
"nbformat_minor": 1
510-
}
510+
}
+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
# Notebook Examples
22

33
The pages in this section are all converted notebook files. You can also
4-
[view these notebooks on nbviewer](http://nbviewer.jupyter.org/github/jupyter/notebook/blob/master/)
4+
[view these notebooks on nbviewer](http://nbviewer.jupyter.org/github/jupyter/notebook/tree/master/)

docs/source/notebook.rst

+3-5
Original file line numberDiff line numberDiff line change
@@ -68,11 +68,11 @@ example, for blog posts), reStructuredText, LaTeX, PDF, and slide shows, via
6868
the nbconvert_ command.
6969

7070
Furthermore, any ``.ipynb`` notebook document available from a public
71-
URL can be shared via the `Jupyter Notebook Viewer <nbviewer>`_ (nbviewer_).
71+
URL can be shared via the Jupyter Notebook Viewer <nbviewer>.
7272
This service loads the notebook document from the URL and renders it as a
7373
static web page. The results may thus be shared with a colleague, or as a
7474
public blog post, without other users needing to install the Jupyter notebook
75-
themselves. In effect, nbviewer_ is simply nbconvert_ as
75+
themselves. In effect, nbviewer is simply nbconvert_ as
7676
a web service, so you can do your own static conversions with nbconvert,
7777
without relying on nbviewer.
7878

@@ -278,9 +278,7 @@ way, using standard LaTeX notation: ``$...$`` for inline mathematics and
278278
``$$...$$`` for displayed mathematics. When the Markdown cell is executed,
279279
the LaTeX portions are automatically rendered in the HTML output as equations
280280
with high quality typography. This is made possible by MathJax_, which
281-
supports a `large subset <mathjax_tex>`_ of LaTeX functionality
282-
283-
.. _mathjax_tex: https://docs.mathjax.org/en/latest/tex.html
281+
supports a `large subset <https://docs.mathjax.org/en/latest/input/tex/index.html>`__ of LaTeX functionality
284282

285283
Standard mathematics environments defined by LaTeX and AMS-LaTeX (the
286284
``amsmath`` package) also work, such as

notebook/_version.py

+12-5
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,19 @@
22
store the current version info of the notebook.
33
44
"""
5+
import re
6+
7+
# Version string must appear intact for tbump versioning
8+
__version__ = '6.4.0a1'
9+
10+
# Build up version_info tuple for backwards compatibility
11+
pattern = r'(?P<major>\d+).(?P<minor>\d+).(?P<patch>\d+)(?P<rest>.*)'
12+
match = re.match(pattern, __version__)
13+
parts = [int(match[part]) for part in ['major', 'minor', 'patch']]
14+
if match['rest']:
15+
parts.append(match['rest'])
16+
version_info = tuple(parts)
517

618
# Downstream maintainer, when running `python.setup.py jsversion`,
719
# the version string is propagated to the JavaScript files, do not forget to
820
# patch the JavaScript files in `.postN` release done by distributions.
9-
10-
# Next beta/alpha/rc release: The version number for beta is X.Y.ZbN **without dots**.
11-
12-
version_info = (6, 4, 0, '.dev0')
13-
__version__ = '.'.join(map(str, version_info[:3])) + ''.join(version_info[3:])

notebook/static/base/js/namespace.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ define(function(){
7373
// tree
7474
jglobal('SessionList','tree/js/sessionlist');
7575

76-
Jupyter.version = "6.4.0.dev0";
76+
Jupyter.version = "6.4.0a1";
7777
Jupyter._target = '_blank';
7878

7979
return Jupyter;

package.json

+1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
{
22
"name": "jupyter-notebook-deps",
3+
"private": true,
34
"version": "4.0.0",
45
"description": "Jupyter Notebook nodejs dependencies",
56
"author": "Jupyter Developers",

pyproject.toml

+28
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
[build-system]
2+
requires=["jupyter_packaging~=0.9,<2"]
3+
build-backend = "setuptools.build_meta"
4+
5+
[tool.check-manifest]
6+
ignore = ["docs-translations/**", ".*", "*.yml", "*.less", "git-hooks/**", "MANIFEST.in", "RELEASE.md", "jupyter.svg", "notebook/static/**", "notebook/i18n/**/*.json", "docs/source/*.*"]
7+
ignore-bad-ideas = ["notebook/i18n/**/*.mo"]
8+
9+
[tool.jupyter-releaser.hooks]
10+
after-bump-version = "python setup.py jsversion"
11+
before-build-python = ["pip install babel", "npm install -g po2json"]
12+
13+
[tool.jupyter-releaser.options]
14+
ignore-glob = ["docs/source/examples/Notebook/Working With Markdown Cells.ipynb", "docs-translations/**/README.md", "docs/source/contributing.rst", "docs/source/examples/Notebook/JavaScript Notebook Extensions.ipynb", "CHANGELOG.md"]
15+
16+
[tool.tbump.version]
17+
current = "6.4.0a1"
18+
regex = '''
19+
(?P<major>\d+)\.(?P<minor>\d+)\.(?P<patch>\d+)
20+
((?P<channel>a|b|rc|.dev)(?P<release>\d+))?
21+
'''
22+
23+
[tool.tbump.git]
24+
message_template = "Bump to {new_version}"
25+
tag_template = "v{new_version}"
26+
27+
[[tool.tbump.file]]
28+
src = "notebook/_version.py"

setup.py

+3
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,9 @@
5050

5151
from setuptools import setup
5252

53+
# Needed to support building with `setuptools.build_meta`
54+
sys.path.insert(0, os.path.abspath(os.path.dirname(__file__)))
55+
5356
from setupbase import (
5457
version,
5558
find_packages,

tools/tests/CSS Reference.ipynb

+2-2
Original file line numberDiff line numberDiff line change
@@ -272,7 +272,7 @@
272272
"cell_type": "markdown",
273273
"metadata": {},
274274
"source": [
275-
"See my [About](/about/) page for details. "
275+
"See my [Confined Output](./Confined Output.ipynb/) sibling page. "
276276
]
277277
},
278278
{
@@ -8203,4 +8203,4 @@
82038203
},
82048204
"nbformat": 4,
82058205
"nbformat_minor": 0
8206-
}
8206+
}

0 commit comments

Comments
 (0)