@@ -16,7 +16,8 @@ If you release a new minor version.
1616
1717## Changelog
1818
19- When generating the changelog each Pull Request to be included must have one of the following [ labels] ( https://github.com/codeigniter4/CodeIgniter4/labels ) :
19+ When generating the changelog each Pull Request to be included must have one of
20+ the following [ labels] ( https://github.com/codeigniter4/CodeIgniter4/labels ) :
2021- ** bug** ... PRs that fix bugs
2122- ** enhancement** ... PRs to improve existing functionalities
2223- ** new feature** ... PRs for new features
@@ -27,7 +28,8 @@ PRs with breaking changes must have the following additional label:
2728
2829### Generate Changelog
2930
30- To auto-generate, navigate to the [ Releases] ( https://github.com/codeigniter4/CodeIgniter4/releases ) page,
31+ To auto-generate, navigate to the
32+ [ Releases] ( https://github.com/codeigniter4/CodeIgniter4/releases ) page,
3133click the "Draft a new release" button.
3234
3335* Tag: "v4.x.x" (Create new tag)
@@ -39,32 +41,42 @@ Check the resulting content. If there are items in the *Others* section which
3941should be included in the changelog, add a label to the PR and regenerate
4042the changelog.
4143
42- Copy the resulting content into ** CHANGELOG.md** and adjust the format to match the existing content.
44+ Copy the resulting content into ** CHANGELOG.md** and adjust the format to match
45+ the existing content.
4346
4447## Preparation
4548
4649* Work off direct clones of the repos so the release branches persist for a time
47- * Clone both ** codeigniter4/CodeIgniter4** and ** codeigniter4/userguide** and resolve any necessary PRs
50+ * Clone both ** codeigniter4/CodeIgniter4** and ** codeigniter4/userguide** and
51+ resolve any necessary PRs
4852``` console
4953git clone git@github.com:codeigniter4/CodeIgniter4.git
5054git clone git@github.com:codeigniter4/userguide.git
5155```
52- * Vet the ** admin/** folders for any removed hidden files (Action deploy scripts * do not remove these* )
56+ * Vet the ** admin/** folders for any removed hidden files (Action deploy scripts
57+ * do not remove these* )
5358* Merge any Security Advisory PRs in private forks
5459
5560## Process
5661
57- > Note: Most changes that need noting in the User Guide and docs should have been included
58- > with their PR, so this process assumes you will not be generating much new content.
62+ > ** Note** Most changes that need noting in the User Guide and docs should have
63+ > been included with their PR, so this process assumes you will not be
64+ > generating much new content.
5965
6066* Create a new branch ` release-4.x.x `
61- * Update ** system/CodeIgniter.php** with the new version number: ` const CI_VERSION = '4.x.x'; `
62- * Update ** user_guide_src/source/conf.py** with the new ` version = '4.x' ` (if applicable) and ` release = '4.x.x' `
67+ * Update ** system/CodeIgniter.php** with the new version number:
68+ ` const CI_VERSION = '4.x.x'; `
69+ * Update ** user_guide_src/source/conf.py** with the new ` version = '4.x' ` (if applicable)
70+ and ` release = '4.x.x' `
6371* Replace ** CHANGELOG.md** with the new version generated above
64- * Set the date in ** user_guide_src/source/changelogs/{version}.rst** to format ` Release Date: January 31, 2021 `
65- * Create a new changelog for the next version at ** user_guide_src/source/changelogs/{next_version}.rst** and add it to ** index.rst**
66- * Create ** user_guide_src/source/installation/upgrade_ {ver}.rst** , fill in the "All Changes" section, and add it to ** upgrading.rst**
67- * git diff --name-status master -- . ':!system'
72+ * Set the date in ** user_guide_src/source/changelogs/{version}.rst** to format
73+ ` Release Date: January 31, 2021 `
74+ * Create a new changelog for the next version at
75+ ** user_guide_src/source/changelogs/{next_version}.rst** and add it to
76+ ** index.rst**
77+ * Create ** user_guide_src/source/installation/upgrade_ {ver}.rst** , fill in the
78+ "All Changes" section, and add it to ** upgrading.rst**
79+ * git diff --name-status origin/master -- . ':!system'
6880* Commit the changes with "Prep for 4.x.x release" and push to origin
6981* Create a new PR from ` release-4.x.x ` to ` develop ` :
7082 * Title: "Prep for 4.x.x release"
@@ -85,9 +97,13 @@ See the changelog: https://github.com/codeigniter4/CodeIgniter4/blob/develop/CHA
8597
8698## New Contributors
8799*
100+
101+ Full Changelog: https://github.com/codeigniter4/CodeIgniter4/compare/v4.x.x...v4.x.x
88102```
89- * Watch for the "Deploy Distributable Repos" action to make sure ** framework** , ** appstarter** , and ** userguide** get updated
90- * Run the following commands to install and test ` appstarter ` and verify the new version:
103+ * Watch for the "Deploy Distributable Repos" action to make sure ** framework** ,
104+ ** appstarter** , and ** userguide** get updated
105+ * Run the following commands to install and test ` appstarter ` and verify the new
106+ version:
91107``` console
92108composer create-project codeigniter4/appstarter release-test
93109cd release-test
@@ -121,22 +137,28 @@ git switch -c 4.x
121137git push origin HEAD
122138```
123139* Publish any Security Advisories that were resolved from private forks
124- * Announce the release on the forums and Slack channel (note: this forum is restricted to administrators):
125- * Make a new topic in the "News & Discussion" forums: https://forum.codeigniter.com/forum-2.html
126- * The content is somewhat organic, but should include any major features and changes as well as a link to the User Guide's changelog
140+ * Announce the release on the forums and Slack channel
141+ (note: this forum is restricted to administrators):
142+ * Make a new topic in the "News & Discussion" forums:
143+ https://forum.codeigniter.com/forum-2.html
144+ * The content is somewhat organic, but should include any major features and
145+ changes as well as a link to the User Guide's changelog
127146
128147## After Publishing Security Advisory
129148
130149* Send a PR to [ PHP Security Advisories Database] ( https://github.com/FriendsOfPHP/security-advisories ) .
131150 * E.g. https://github.com/FriendsOfPHP/security-advisories/pull/606
132151 * See https://github.com/FriendsOfPHP/security-advisories#contributing
133- * Don't forget to run ` php -d memory_limit=-1 validator.php ` , before submitting the PR
152+ * Don't forget to run ` php -d memory_limit=-1 validator.php ` , before
153+ submitting the PR
134154
135155## Appendix
136156
137157### Sphinx Installation
138158
139- You may need to install Sphinx and its dependencies prior to building the User Guide.
159+ You may need to install Sphinx and its dependencies prior to building the User
160+ Guide.
161+
140162This worked seamlessly on Ubuntu 20.04:
141163``` console
142164sudo apt install python3-sphinx
@@ -152,8 +174,10 @@ sudo pip3 install sphinx_rtd_theme
152174* Build the ePub version of the User Guide: ` make epub `
153175* Switch to the ** userguide** repo and create a new branch ` release-4.x.x `
154176* Replace ** docs/** with ** CodeIgniter4/user_guide_src/build/html**
155- * Ensure the file ** docs/.nojekyll** exists or GitHub Pages will ignore folders with an underscore prefix
156- * Copy ** CodeIgniter4/user_guide_src/build/epub/CodeIgniter.epub** to ** ./CodeIgniter4.x.x.epub**
177+ * Ensure the file ** docs/.nojekyll** exists or GitHub Pages will ignore folders
178+ with an underscore prefix
179+ * Copy ** CodeIgniter4/user_guide_src/build/epub/CodeIgniter.epub** to
180+ ** ./CodeIgniter4.x.x.epub**
157181* Commit the changes with "Update for 4.x.x" and push to origin
158182* Create a new PR from ` release-4.x.x ` to ` develop ` :
159183 * Title: "Update for 4.x.x"
@@ -165,6 +189,6 @@ sudo pip3 install sphinx_rtd_theme
165189 * Description: "CodeIgniter 4.x.x User Guide"
166190* Watch for the "github pages" Environment to make sure the deployment succeeds
167191
168- The User Guide website should update itself via the deploy GitHub Action. Should this fail
169- the server must be updated manually. See repo and hosting details in the deploy script
170- at the User Guide repo.
192+ The User Guide website should update itself via the deploy GitHub Action. Should
193+ this fail the server must be updated manually. See repo and hosting details in
194+ the deploy script at the User Guide repo.
0 commit comments