@@ -10,13 +10,12 @@ Modifying the theme
1010===================
1111
1212The styles for this theme use SASS _ and a custom CSS framework called Wyrm _. We
13- use Bower _ to manage these dependencies and SASS _ to build the CSS. Grunt _ is
14- used to watch for changes, rebuild the static assets, and rebuild the Sphinx
15- demo documentation.
13+ use Webpack _ and node-sass _ to build the CSS. Webpack _ is used to watch for
14+ changes, rebuild the static assets, and rebuild the Sphinx demo documentation.
1615
1716.. note ::
18- The installation of Ruby and Node is outside the scope of this
19- documentation. You will need both in order to make changes to this theme.
17+ The installation of Node is outside the scope of this documentation. You
18+ will need Node version 10+ in order to make changes to this theme.
2019
2120Set up your environment
2221-----------------------
@@ -27,13 +26,7 @@ Set up your environment
2726
2827 pip install -e '.[dev]'
2928
30- #. Install SASS.
31-
32- .. code :: console
33-
34- gem install sass
35-
36- #. Install Bower, Grunt, and theme dependencies locally.
29+ #. Install Webpack _, node-sass _, and theme dependencies locally.
3730
3831 .. code :: console
3932
@@ -42,31 +35,31 @@ Set up your environment
4235 Making changes
4336--------------
4437
45- Changes to the theme can be compiled and tested with the default Grunt task :
38+ Changes to the theme can be compiled and tested with webpacke :
4639
4740.. code :: console
4841
49- grunt
42+ npm run dev
5043
51- This default task will do the following:
44+ This script will do the following:
5245
53- #. Install and update any Bower dependencies.
46+ #. Install and update any dependencies.
5447#. Build the static CSS from SASS source files.
5548#. Build the demo documentation.
5649#. Watch for changes to the SASS files and documentation and rebuild everything
5750 on any detected changes.
5851
59- Alternatively, if you don't need to watch the files, Grunt can be called with
60- the same task used for releases :
52+ Alternatively, if you don't need to watch the files, the release build script
53+ can be used to test built assets :
6154
6255.. code :: console
6356
64- grunt build
57+ npm run build
6558
66- .. _Bower : http://www.bower.io
59+ .. _Webpack : https://webpack.js.org/
60+ .. _node-sass : https://github.com/sass/node-sass
6761.. _SASS : http://www.sass-lang.com
6862.. _Wyrm : http://www.github.com/snide/wyrm/
69- .. _Grunt : http://www.gruntjs.com
7063.. _Sphinx : http://www.sphinx-doc.org/en/stable/
7164
7265Translations
@@ -96,10 +89,12 @@ Releasing the theme
9689
9790To release a new version of the theme, core team will take the following steps:
9891
99- #. Bump the version in ``sphinx_rtd_theme/__init__.py ``, ``bower.json `` and ``package.json `` --
100- we try to follow `semver <http://semver.org/ >`_, so be careful with breaking changes.
92+ #. Bump the version in ``sphinx_rtd_theme/__init__.py ``, ``setup.py `` and
93+ ``package.json ``. We follow `semver <http://semver.org/ >`_ and `PEP440 `_
94+ (with regards to alpha release and development versions). The version
95+ increment should reflect these releases and any potentially breaking changes.
10196#. Update the changelog (``docs/changelog.rst ``) with the version information.
102- #. Run ``grunt build `` to rebuild all the theme assets.
97+ #. Run ``npm run build `` to rebuild all the theme assets.
10398#. Run ``python setup.py update_translations `` to compile new translation files and update Transifex
10499#. Commit that change.
105100#. Tag the release in git: ``git tag $NEW_VERSION ``.
@@ -111,3 +106,5 @@ To release a new version of the theme, core team will take the following steps:
111106 rm -rf dist/
112107 python setup.py sdist bdist_wheel
113108 twine upload --sign --identity [email protected] dist/* 109+
110+ .. _PEP440 : https://www.python.org/dev/peps/pep-0440/
0 commit comments