Add release helper script (#64)
This commit adds a release helper script, amongst other workflow improvements. See `README.md` for instructions, and `_tools/release.sh` for the script itself. This script: 1. sanity-checks the various version tags; 2. triggers a Plugin build; 3. flags the new version as pre-release; 4. tags the version in Git; 5. creates a local working copy of the SVN repo; 6. copies the new release to the local `trunk/` (whilst keeping the ‘Stable Tag’ field in `readme.txt` pointing to the previous stable version); 7. copies the commit message from the changelog in `readme.txt`; and 8. (if a flag is set) commits the changes to the remote `trunk/`. Pushing out a new release must still be done manually, once `trunk/` is tested and working. To do so, check out a local copy of `trunk/` and: 1. update the ‘Stable Tag’ field in `trunk/readme.txt` to the new version; 2. update the ‘Version’ field in the comment header of `trunk/footnotes.php` to the new version; 3. remove the ‘p’ from the end of the ‘version’ tag in the `getInfo()` function at the bottom of `js/wsiwyg-editor.js`; 4. copy a new tag for the release from `trunk/` (`svn cp trunk tags/<version number>`); and 5. commit your changes (`svn ci -m "Release version <version number>"`). The WP Plugin Directory will automatically parse the ‘Stable Tag’ field in `trunk/readme.txt`, and inform users that a new version is available. At various stages user input is required to validate information. This is not ready for automation with GitHub Actions, but is a useful step on the way — see [this piece](https://blog.danslimmon.com/2019/07/15/do-nothing-scripting-the-key-to-gradual-automation/) for more info. Unless a `-c` flag is passed (e.g., by running `composer run release:commit`) no changes will take place on the remote SVN repo. If you want to test this out on a branch other than `main`, uncomment lines 31 & 52 of the script. Version checking enforces the versioning rules stated [here](https://github.com/markcheret/footnotes/wiki/Versioning). **NB: I have not tested the `-c` mode yet, as I wanted people will more familiarity with the SVN to have a look at it before I risked making any changes and blowing everything up.** Co-authored-by: pewgeuges <73141620+pewgeuges@users.noreply.github.com>
This commit is contained in:
parent
0a83796cdc
commit
0a34e96450
25 changed files with 5310 additions and 77 deletions
|
@ -213,11 +213,29 @@ abstract class MCI_Footnotes_Layout_Engine {
|
|||
*/
|
||||
if ( C_BOOL_CSS_PRODUCTION_MODE === true ) {
|
||||
|
||||
wp_register_style( 'mci-footnotes-admin', plugins_url( 'footnotes/css/settings.min.css' ), array(), C_STR_PACKAGE_VERSION );
|
||||
wp_register_style(
|
||||
'mci-footnotes-admin',
|
||||
plugins_url( 'footnotes/css/settings.min.css' ),
|
||||
array(),
|
||||
filemtime(
|
||||
plugin_dir_path(
|
||||
dirname( __FILE__ )
|
||||
) . 'css/settings.min.css'
|
||||
)
|
||||
);
|
||||
|
||||
} else {
|
||||
|
||||
wp_register_style( 'mci-footnotes-admin', plugins_url( 'footnotes/css/settings.css' ), array(), C_STR_PACKAGE_VERSION );
|
||||
wp_register_style(
|
||||
'mci-footnotes-admin',
|
||||
plugins_url( 'footnotes/css/settings.css' ),
|
||||
array(),
|
||||
filemtime(
|
||||
plugin_dir_path(
|
||||
dirname( __FILE__ )
|
||||
) . 'css/settings.css'
|
||||
)
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -304,9 +304,6 @@ class MCI_Footnotes {
|
|||
* @since 2.0.3 add versioning of public.css for cache busting.
|
||||
* @date 2020-10-29T1413+0100
|
||||
* Plugin version number is needed for busting browser caches after each plugin update.
|
||||
* @since 2.1.4 automate passing version number for cache busting.
|
||||
* @date 2020-11-30T0646+0100
|
||||
* The constant C_STR_PACKAGE_VERSION is defined at start of footnotes.php.
|
||||
*
|
||||
* The media scope argument 'all' is the default.
|
||||
* No need to use '-css' in the handle, as this is appended automatically.
|
||||
|
@ -350,7 +347,11 @@ class MCI_Footnotes {
|
|||
MCI_Footnotes_Config::C_STR_PLUGIN_NAME . '/css/footnotes-' . $l_str_tooltip_mode_short . 'ttbrpl' . $l_str_layout_mode . '.min.css'
|
||||
),
|
||||
array(),
|
||||
C_STR_PACKAGE_VERSION,
|
||||
filemtime(
|
||||
plugin_dir_path(
|
||||
dirname( __FILE__ )
|
||||
) . 'css/footnotes-' . $l_str_tooltip_mode_short . 'ttbrpl' . $l_str_layout_mode . '.min.css'
|
||||
),
|
||||
'all'
|
||||
);
|
||||
|
||||
|
@ -364,9 +365,36 @@ class MCI_Footnotes {
|
|||
*
|
||||
* This optional layout fix is useful by lack of layout support.
|
||||
*/
|
||||
wp_enqueue_style( 'mci-footnotes-common', plugins_url( MCI_Footnotes_Config::C_STR_PLUGIN_NAME . '/css/dev-common.css' ), array(), C_STR_PACKAGE_VERSION );
|
||||
wp_enqueue_style( 'mci-footnotes-tooltips', plugins_url( MCI_Footnotes_Config::C_STR_PLUGIN_NAME . '/css/dev-tooltips.css' ), array(), C_STR_PACKAGE_VERSION );
|
||||
wp_enqueue_style( 'mci-footnotes-alternative', plugins_url( MCI_Footnotes_Config::C_STR_PLUGIN_NAME . '/css/dev-tooltips-alternative.css' ), array(), C_STR_PACKAGE_VERSION );
|
||||
wp_enqueue_style(
|
||||
'mci-footnotes-common',
|
||||
plugins_url( MCI_Footnotes_Config::C_STR_PLUGIN_NAME . '/css/dev-common.css' ),
|
||||
array(),
|
||||
filemtime(
|
||||
plugin_dir_path(
|
||||
dirname( __FILE__ )
|
||||
) . 'css/dev-common.css'
|
||||
)
|
||||
);
|
||||
wp_enqueue_style(
|
||||
'mci-footnotes-tooltips',
|
||||
plugins_url( MCI_Footnotes_Config::C_STR_PLUGIN_NAME . '/css/dev-tooltips.css' ),
|
||||
array(),
|
||||
filemtime(
|
||||
plugin_dir_path(
|
||||
dirname( __FILE__ )
|
||||
) . 'css/dev-tooltips.css'
|
||||
)
|
||||
);
|
||||
wp_enqueue_style(
|
||||
'mci-footnotes-alternative',
|
||||
plugins_url( MCI_Footnotes_Config::C_STR_PLUGIN_NAME . '/css/dev-tooltips-alternative.css' ),
|
||||
array(),
|
||||
filemtime(
|
||||
plugin_dir_path(
|
||||
dirname( __FILE__ )
|
||||
) . 'css/dev-tooltips-alternative.css'
|
||||
)
|
||||
);
|
||||
|
||||
$l_str_page_layout_option = MCI_Footnotes_Settings::instance()->get( MCI_Footnotes_Settings::C_STR_FOOTNOTES_PAGE_LAYOUT_SUPPORT );
|
||||
if ( 'none' !== $l_str_page_layout_option ) {
|
||||
|
@ -376,7 +404,11 @@ class MCI_Footnotes {
|
|||
MCI_Footnotes_Config::C_STR_PLUGIN_NAME . '/css/dev-layout-' . $l_str_page_layout_option . '.css'
|
||||
),
|
||||
array(),
|
||||
C_STR_PACKAGE_VERSION,
|
||||
filemtime(
|
||||
plugin_dir_path(
|
||||
dirname( __FILE__ )
|
||||
) . 'css/dev-layout-' . $l_str_page_layout_option . '.css'
|
||||
),
|
||||
'all'
|
||||
);
|
||||
}
|
||||
|
|
Reference in a new issue