diff --git a/.github/release_steps.md b/.github/release_steps.md new file mode 100644 index 00000000000..bcd29fd818c --- /dev/null +++ b/.github/release_steps.md @@ -0,0 +1,58 @@ +# LAMMPS Release Steps + +The following notes chronicle the current steps for preparing and publishing LAMMPS releases. +For definition of what LAMMPS versions and the different kinds of releases mean, please +refer to [the corresponding section in the LAMMPS manual](https://docs.lammps.org/Manual_version.html). + +## LAMMPS Feature Release + +A LAMMPS feature release is currently prepared after about 500 to 750 commits to the +'develop' branch or after a period of four weeks up to two months. + +### Preparing a 'next\_release' branch + +Create a 'next\_release' branch off 'develop' and make the following changes: +- set the LAMMPS\_VERSION define to the planned release date in src/version.h in the format "D Mmm YYYY" or "DD Mmm YYYY" +- remove the LAMMPS\_UPDATE define in src/version.h +- update the release date in doc/lammps.1 +- update all TBD arguments for ..versionadded::, ..versionchanged:: ..deprecated:: to the + planned release date in the format "DMmmYYYY" or "DDMmmYYYY" + +Submit this pull request, rebase if needed. This is the last pull request merged for the release +and should not contain any other changes. (Exceptions: this document, last minute trivial(!) changes). +This PR shall not be merged before **all** pending tests have completed and cleared. If needed, a +bugfix pull request should be created and merged to clear all tests. + +## LAMMPS Stable Release + +A LAMMPS stable release is prepared about once per year in the months July, August, or September. +One (or two, if needed) feature releases before the stable release shall contain only bug fixes +or minor feature updates in optional packages. Also substantial changes to the core of the code +shall be applied rather toward the beginning of a development cycle between two stable releases +than toward the end. The intention is to stablilize significant change to the core and have +outside users and developers try them out during the development cycle; the sooner the changes +are included, the better chances for spotting peripheral bugs and issues. + +### Prerequesites + +Before making a stable release all remaining backported bugfixes shall be released as a (final) +stable update release (see below). + +A LAMMPS stable release process starts like a feature release (see above), only that this feature +release is called a "Stable Release Candidate" and no assets are uploaded to GitHub. + +### Synchronize 'maintenance' branch with 'release' + +The state of the 'release' branch is then transferred to the 'maintenance' branch (which will +have diverged significantly from 'release' due to the selectively backported bug fixes). + +### Fast-forward merge of 'maintenance' into 'stable' and apply tag + +At this point it should be possible to do a fast-forward merge of 'maintenance' to 'stable' +and then apply the stable\_DMmmYYYY tag. + +### Push branches and tags + + + +## LAMMPS Stable Update Release diff --git a/doc/lammps.1 b/doc/lammps.1 index 75581bd008c..cb52813a4d9 100644 --- a/doc/lammps.1 +++ b/doc/lammps.1 @@ -1,7 +1,7 @@ -.TH LAMMPS "1" "29 August 2024" "2024-08-29" +.TH LAMMPS "1" "19 November 2024" "2024-11-19" .SH NAME .B LAMMPS -\- Molecular Dynamics Simulator. Version 29 August 2024 +\- Molecular Dynamics Simulator. Version 19 November 2024 .SH SYNOPSIS .B lmp diff --git a/doc/src/fix_qeq.rst b/doc/src/fix_qeq.rst index fd317666d0d..06a1f983755 100644 --- a/doc/src/fix_qeq.rst +++ b/doc/src/fix_qeq.rst @@ -190,7 +190,7 @@ on atoms via the matrix inversion method. A tolerance of 1.0e-6 is usually a good number. Keyword *alpha* can be used to change the Slater type orbital exponent. -.. versionadded:: TBD +.. versionadded:: 19Nov2024 The *qeq/ctip* style describes partial charges on atoms in the same way as style *qeq/shielded* but also enables the definition of charge diff --git a/doc/src/fix_qtpie_reaxff.rst b/doc/src/fix_qtpie_reaxff.rst index cf59e4701a0..e96cbec4592 100644 --- a/doc/src/fix_qtpie_reaxff.rst +++ b/doc/src/fix_qtpie_reaxff.rst @@ -35,6 +35,8 @@ Examples Description """"""""""" +.. versionadded:: 19Nov2024 + The QTPIE charge equilibration method is an extension of the QEq charge equilibration method. With QTPIE, the partial charges on individual atoms are computed by minimizing the electrostatic energy of the system in the diff --git a/doc/src/pair_coul.rst b/doc/src/pair_coul.rst index 17e93587540..77c0e0b18b7 100644 --- a/doc/src/pair_coul.rst +++ b/doc/src/pair_coul.rst @@ -180,7 +180,7 @@ coulomb styles in :doc:`hybrid pair styles `. ---------- -.. versionadded:: TBD +.. versionadded:: 19Nov2024 Style *coul/ctip* computes the Coulomb interactions as described in :ref:`Plummer `. It uses the the damped shifted model as in diff --git a/src/KOKKOS/fix_cmap_kokkos.cpp b/src/KOKKOS/fix_cmap_kokkos.cpp index 75013388264..dd92afe9ccc 100644 --- a/src/KOKKOS/fix_cmap_kokkos.cpp +++ b/src/KOKKOS/fix_cmap_kokkos.cpp @@ -850,7 +850,7 @@ void FixCMAPKokkos::bc_interpol(double x1, double x2, int low1, int // calculate the bicubic interpolation coefficients c_ij - static int wt[16][16] = + const int wt[16][16] = { {1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0}, {-3, 0, 0, 3, 0, 0, 0, 0,-2, 0, 0,-1, 0, 0, 0, 0}, diff --git a/src/atom.cpp b/src/atom.cpp index e0fceffe9cc..04a21b9c520 100644 --- a/src/atom.cpp +++ b/src/atom.cpp @@ -3276,7 +3276,7 @@ int Atom::extract_datatype(const char *name) * \verbatim embed:rst -.. versionadded:: TBD +.. versionadded:: 19Nov2024 \endverbatim * diff --git a/src/library.cpp b/src/library.cpp index 0065f104548..9876d363e5c 100644 --- a/src/library.cpp +++ b/src/library.cpp @@ -2159,7 +2159,7 @@ int lammps_extract_atom_datatype(void *handle, const char *name) * \verbatim embed:rst -.. versionadded:: TBD +.. versionadded:: 19Nov2024 This function returns an integer with the size of the per-atom property with the specified name. This allows to accurately determine diff --git a/src/version.h b/src/version.h index 9c382b3768f..88a65b1657e 100644 --- a/src/version.h +++ b/src/version.h @@ -1,2 +1 @@ -#define LAMMPS_VERSION "29 Aug 2024" -#define LAMMPS_UPDATE "Development" +#define LAMMPS_VERSION "19 Nov 2024"