Release ParaView 5.11.1-RC1
Preparatory steps
- Update ParaView guides
- Catalyst Guide
-
Rename to ParaViewCatalystGuide-5.11.1.pdf -
Upload to www.paraview.org/files/v5.11
-
- Getting Started Guide
-
Rename to ParaViewGettingStarted-5.11.1.pdf -
Upload to www.paraview.org/files/v5.11
-
- macOS signing machine
-
Check that the macOS signing machine is reachable. If not, request it to be switched on.
-
- Catalyst Guide
Update ParaView
-
Update the local copy of
release
.- If
1-RC1
is0-RC1
, updatemaster
- Otherwise, update
release
git fetch origin git checkout release git merge --ff-only origin/release # if this fails, there are local commits that need to be removed git submodule update --recursive --init
- If
release
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.1
):- Assemble release notes into
Documentation/release/ParaView-5.11.1.md
. -
Update version.txt
and tag the commit (tag this commit below)git checkout -b update-to-v5.11.1-RC1 e39c9fe7beebc506fc3640b9ec579ba61dba65db echo 5.11.1-RC1 > version.txt git commit -m 'Update version number to 5.11.1-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 e39c9fe7beebc506fc3640b9ec579ba61dba65db
-
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.1-RC1' v5.11.1-RC1 commit-that-updated-version.txt
-
-
Create tarballs
-
ParaView ( Utilities/Maintenance/create_tarballs.bash --txz --tgz --zip -v v5.11.1-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 release
isrelease
) version selection entry in paraview-superbuild
-
Update ParaView-Superbuild
-
Update release branch for paraview-superbuild
git fetch origin
git checkout release
git merge --ff-only origin/release
git submodule update --recursive --init
-
Create new branch git checkout -b update-to-v5.11.1-RC1 release
-
Integrate changes.
- Update versions
-
Guide selections in versions.cmake
and ensure that the paraview http URL source is the DEFAULT source. -
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.1-RC1 -
ARG SUPERBUILD_TAG=v5.11.1-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.1-RC1"
-
- Make a commit for each of these
release
-only changes-
Update .gitlab/ci/cdash-groups.json
to track therelease
CDash groups (ifrelease
ismaster
)
-
- Create a commit which will be tagged:
-
git commit --allow-empty -m "paraview: add release 5.11.1"
-
-
Create tag: git tag -a -m 'ParaView superbuild 5.11.1-RC1' v5.11.1-RC1 HEAD
- Force
5.11.1-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.1-RC1" CACHE STRING "Force version to 5.11.1-RC1" FORCE) set(paraview_FROM_SOURCE_DIR OFF CACHE BOOL "Force source dir off" FORCE)
-
-
Create fixup commit with the above changes git commit -a --fixup=@
. The fixup commit will prevent merging of the temporary code above; it will be removed in a future step. -
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 e39c9fe7beebc506fc3640b9ec579ba61dba65db
-
- Update versions
-
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.
-
-
Remove fixup commit: git reset --hard @^
-
Get positive review -
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 release
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.1-RC1.app/
-
Install from .dmg and verify that it is signed with codesign -dvvv /Applications/ParaView-5.11.1-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
- Help lists Readers, Writers, Filters, and Sources properly
- 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 ("Enable Ray Tracing" property in View panel)
- OptiX pathtracing runs (not macOS)
- IndeX runs (load pvNVIDIAIndeX plugin, add a Wavelet dataset, change representaiton to NVIDIA IndeX)
Binary checklist
-
macOS arm64 -
macOS x86_64 -
Linux -
Linux osmesa -
Linux EGL -
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 @jonthan.volks (Kitware comm team) to regenerate https://www.paraview.org/files/listing.txt
andmd5sum.txt
on the website from within the directory corresponding to www.paraview.org/files/
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.1-RC1
. -
In the paraview-superbuild
repository, rungit push origin v5.11.1-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 -
Request an XRInterface plugin validation using TESTING.md protocol from KEU
/cc @ben.boeckel
/cc @cory.quammen
/cc @charles.gueunet
/cc @mwestphal