Release ParaView 5.11.0-RC1
Preparatory steps
- Update ParaView guides
- User manual
-
Rename to ParaViewTutorial-5.11.0.pdf -
Upload to www.paraview.org/files/v5.11
-
- Catalyst Guide
-
Rename to ParaViewCatalystGuide-5.11.0.pdf -
Upload to www.paraview.org/files/v5.11
-
- Getting Started Guide
-
Rename to ParaViewGettingStarted-5.11.0.pdf -
Upload to www.paraview.org/files/v5.11
-
- macOS sigining machine
-
if the machine is offline, request to be switched on.
-
- User manual
Update ParaView
-
Update the local copy of
master
.- If
0-RC1
is0-RC1
, updatemaster
- Otherwise, update
release
git fetch origin git checkout master git merge --ff-only origin/master # if this fails, there are local commits that need to be removed git submodule update --recursive --init
- If
master
is notmaster
, ensure merge requests which should be in the release have been merged. Thebackport-mrs.py
script can be used to find and ensure that merge requests assigned to the associated milestone are available on therelease
branch.
- If
-
Integrate changes.
-
Make a commit for each of these
release
-only changes on a single topic (suggested branch name:update-to-v5.11.0
):- Assemble release notes into
Documentation/release/ParaView-5.11.0.md
.-
If PATCH
is greater than 0, add items to the end of this file.
-
-
Update version.txt
and tag the commit (tag this commit below)git checkout -b update-to-v5.11.0-RC1 2ba26e00d8ae8143b4b51f137e0739f8c481bb1b echo 5.11.0-RC1 > version.txt git commit -m 'Update version number to 5.11.0-RC1' version.txt
-
Update VTK's paraview/release
branch. Therelease-mr
script should be used to do this. Pass-c .kitware-release-paraview.json
to use the appropriate configuration file.-
Merge the VTK paraview/release
update MR -
Update kwrobot with the new paraview/release
branch rules (@ben.boeckel)
-
-
.gitmodules
to track theparaview/release
branch of VTK -
Update .gitlab/ci/cdash-groups.json
to track therelease
CDash groups
- Assemble release notes into
-
Create a merge request targeting
release
-
Obtain a GitLab API token for the kwrobot.release.paraview
user (ask @ben.boeckel if you do not have one) -
Add the kwrobot.release.paraview
user to your fork with at leastDeveloper
privileges (so it can open MRs) -
Use the release-mr
script to open the create the Merge Request (see script for usage)- Pull the script for each release; it may have been updated since it was last used
release-mr.py -t TOKEN_STRING -c .kitware-release.json -m 2ba26e00d8ae8143b4b51f137e0739f8c481bb1b
- The script outputs the information it will be using to create the merge request. Please verify that it is all correct before creating the merge request. See usage at the top of the script to provide information that is either missing or incorrect (e.g., if its data extraction heuristics fail).
-
-
Get positive review -
Do: merge
-
Create tag: git tag -a -m '5.11.0-RC1' 5.11.0-RC1 commit-that-updated-version.txt
-
-
Create tarballs
-
ParaView ( Utilities/Maintenance/create_tarballs.bash --txz --tgz --zip -v v5.11.0-RC1
)
-
-
Upload tarballs to
paraview.org
-
Setup your ~/.ssh/config
and add the web host (@vbolea). -
rsync -rptv $tarballs web:ParaView_Release/v5.11/
-
-
Software process updates (these can all be done independently)
-
Update kwrobot with the new release
branch rules (@ben.boeckel) -
Run this script to update the CDash groups - This must be done after a nightly run to ensure all builds are in the
release
group - See the script itself for usage documentation
- This must be done after a nightly run to ensure all builds are in the
-
Add (or update if master
isrelease
) version selection entry in paraview-superbuild
-
Update ParaView-Superbuild
-
Update master branch for paraview-superbuild
git fetch origin
git checkout master
git merge --ff-only origin/master
git submodule update --recursive --init
-
Create new branch git checkout -b update-to-v5.11.0-RC1 2ba26e00d8ae8143b4b51f137e0739f8c481bb1b
-
Integrate changes.
- Update versions
-
Guide selections in versions.cmake
-
paraview_SOURCE_SELECTION
version inREADME.md
-
PARAVIEW_VERSION_DEFAULT
in CMakeLists.txt -
Docker: update default tag strings (in Scripts/docker/ubuntu/development/Dockerfile
)-
ARG PARAVIEW_TAG=v5.11.0-RC1 -
ARG SUPERBUILD_TAG=v5.11.0-RC1 -
ARG PARAVIEW_VERSION_STRING=paraview-5.11
-
-
Commit changes -
git add README.md versions.cmake CMakeLists.txt Scripts/docker/ubuntu/development/Dockerfile
-
git commit -m "Update the default version to 5.11.0-RC1"
-
- Make a commit for each of these
release
-only changes-
Update .gitlab/ci/cdash-groups.json
to track therelease
CDash groups (ifmaster
ismaster
)
-
- Create a commit which will be tagged:
-
git commit --allow-empty -m "paraview: add release 5.11.0"
-
-
Created tag: git tag -a -m 'ParaView superbuild 5.11.0-RC1' v5.11.0-RC1 HEAD
- Force
5.11.0-RC1
in CMakeLists.txt-
Append to the top of CMakeLists.txt (After project...) The following # Force source selection setting here. set(paraview_SOURCE_SELECTION "5.11.0-RC1" CACHE STRING "Force version to 5.11.0-RC1" FORCE) set(paraview_FROM_SOURCE_DIR OFF CACHE BOOL "Force source dir off" FORCE)
-
Create fixup commit git commit -a --fixup=@
-
-
- Update versions
-
Create a merge request targeting
release
-
Obtain a GitLab API token for the kwrobot.release.paraview
user (ask @ben.boeckel if you do not have one) -
Add the kwrobot.release.paraview
user to your fork with at leastDeveloper
privileges (so it can open MRs) -
Use the release-mr
script to open the create the Merge Request (see script for usage)- Pull the script for each release; it may have been updated since it was last used
release-mr.py -t TOKEN_STRING -c .kitware-release.json -m 2ba26e00d8ae8143b4b51f137e0739f8c481bb1b
-
-
Build binaries -
Build binaries (start all pipelines) -
Download the binaries that have been generated from the Pipeline build products. They will be deleted within 24 hours.
-
-
Get positive review -
Remove fixup commit: git reset --hard @^
-
Force push git push -f gitlab
-
Do: merge
-
Software process updates (these can all be done independently)
-
Update kwrobot with the new release
branch rules (@ben.boeckel) -
Run this script to update the CDash groups - This must be done after a nightly run to ensure all builds are in the
release
group - See the script itself for usage documentation
- This must be done after a nightly run to ensure all builds are in the
-
Add (or update if master
isrelease
) version selection entry in paraview-superbuild
-
Sign Windows binaries
-
Request Windows binary signings (only .exe archives) on the Package Signing repo. Example request here.
Sign macOS binaries
-
Upload to signing server, run script, download resulting .pkg and .dmg files -
Install from .pkg and verify that it is signed with codesign -dvvv /Applications/ParaView-5.11.0-RC1.app/
-
Install from .dmg and verify that it is signed with codesign -dvvv /Applications/ParaView-5.11.0-RC1.app/
Validating binaries
For each binary, open the Python shell and run the following:
import numpy
s = Show(Sphere())
ColorBy(s, ('POINTS', 'Normals', 'X'))
Show(Text(Text="$A^2$"))
Check that
- Getting started guide opens
- Examples load and match thumbnails in dialog
- Python. Open the Python shell and run
- Plugins are present and load properly
- OSPRay raycasting and pathtracing runs
- OptiX pathtracing runs
- IndeX runs
Binary checklist
-
macOS arm64 -
macOS x86_64 -
Linux -
Linux osmesa -
Windows MPI (.exe) -
Windows MPI (.zip) -
Windows no-MPI (.exe) -
Windows no-MPI (.zip)
Upload binaries
-
Upload binaries to paraview.org
(rsync -rptv $binaries paraview.release:ParaView_Release/v5.11/
) -
Ask @utkarsh.ayachit to regenerate https://www.paraview.org/files/listing.txt
andmd5sum.txt
on the website
buildListing.sh
updateMD5sum.sh v5.11
-
Test download links on https://www.paraview.org/download
Push tags
-
In the paraview
repository, rungit push origin v5.11.0-RC1
. -
In the paraview-superbuild
repository, rungit push origin v5.11.0-RC1
.
Spack
-
Update Spack package: https://github.com/spack/spack/blob/develop/var/spack/repos/builtin/packages/paraview/package.py
Post-release
-
Post an announcement in the Announcements category on discourse.paraview.org. -
Request DoD vulnerability scan
/cc @ben.boeckel
/cc @cory.quammen
/cc @utkarsh.ayachit
/cc @charles.gueunet