Releases: externpro/buildpro
26.02
- The
workflow runlink goes to a filtered Actions view for the workflow and tag. - Following the
workflow runlink will lead you to the run page, which includes:- links to the attestation and software bill of materials
- the SBOM is in SPDX (Software Package Data Exchange) format (.spdx.json)
buildpro 26.02 Release Notes
🚀 Major Updates
CMake 4.3.0 Upgrade
- Bumped bundled CMake to 4.3.0(.1) across all build images
- Rocky 8/9/10 images now install
externpro/cmake-pkg xpv4.3.0.1 - Ubuntu image updated to install Kitware CMake 4.3.0
- Resolves externpro/externpro#315
GitHub Actions Modernization
- Upgraded all GitHub Actions to resolve Node.js deprecation warnings
actions/checkout@v4 → v6(improved credential security)docker/setup-qemu-action@v3 → v4docker/setup-buildx-action@v3 → v4docker/login-action@v3 → v4docker/metadata-action@v4 → v6docker/build-push-action@v6 → v7actions/attest-build-provenance@v2 → actions/attest@v4anchore/scan-action@v6 → v7- Added required
artifact-metadata: writepermission for attestations
🔧 Infrastructure Changes
Build System Updates
- Windows builds: Pinned to VS2022 (buildpro not ready for VS2026 due to Boost compatibility)
- Linux builds: Added explicit
buildpro_imagesconfiguration for xpbuild workflow - Ubuntu support: Now included in automated build matrix
- Workflow permissions: Updated all caller workflows to support new attestations requirements
Developer Experience
- Fixed workflow validation errors related to permission propagation
- Improved CI/CD reliability with updated action versions
- Enhanced security with improved credential handling
📦 Technical Details
Package Compatibility
- Ubuntu 24.04.4 (gcc 13.3.0) builds can leverage gcc13-Linux xpro packages
- Cross-platform package compatibility between rocky9-gcc13 and ubuntu builds
- Maintained backward compatibility with existing xpro packages
Breaking Changes
- None - All changes are backward compatible
- Existing workflows continue to work without modification
- Updated permissions are additive only
🔗 Related Issues
- Resolves: externpro/externpro#312
- Resolves: externpro/externpro#315
📋 Summary
This release focuses on modernizing the build infrastructure while maintaining full backward compatibility. The CMake 4.3.0 upgrade provides the latest features and fixes, while the GitHub Actions updates ensure continued CI/CD reliability and security.
What's Changed
- externpro 25.07.13 by @smanders in #310
- externpro 25.07.15-3-g0c4d2ac by @smanders in #312
- externpro 25.07.17 by @smanders in #313
- cmake 4.3.0 by @smanders in #314
Full Changelog: 26.01...26.02
26.01
- The
workflow runlink goes to a filtered Actions view for the workflow and tag. - Following the
workflow runlink will lead you to the run page, which includes:- links to the attestation and software bill of materials
- the SBOM is in SPDX (Software Package Data Exchange) format (.spdx.json)
Highlights
- default branch is now
xproinstead ofdev - rocky-mdv no longer installs chrome (version no longer available, I'm no longer maintaining this image)
- cmake v4.2.3
- ubuntu has xvfb package installed
test/CMakeLists.txtsimplified (project list now comes fromxp_vars)
What's Changed
- updates: externpro @25.07, curl test VPN by @smanders in #196
- zlib v1.3.1.3 by @smanders in #197
- bzip2 v1.0.8.3 by @smanders in #198
- spdlog v1.15.3.3 by @smanders in #199
- boost v1.76.0.4 by @smanders in #200
- apr v1.7.6.2 by @smanders in #202
- cmake build action by @smanders in #203
- googletest v1.16.0.2 by @smanders in #204
- libexpat v2.2.5.2 by @smanders in #205
- nasm v2.14.02.3 by @smanders in #206
- yasm v1.3.0.2 by @smanders in #207
- openssl v1.1.1l.3 by @smanders in #208
- libstrophe v0.9.1.4 by @smanders in #209
- wxwidgets v3.1.0.5 by @smanders in #210
- test wxinclude, deps.svg by @smanders in #211
- workflows: all linux platforms by @smanders in #201
- activemq-cpp v3.9.5.2 by @smanders in #212
- libssh2 v1.9.0.3 by @smanders in #213
- libgit2 v1.3.0.2 by @smanders in #214
- c-ares v1.18.1.2 by @smanders in #215
- curl v7.80.0.2 by @smanders in #216
- fecpp v0.9.2 by @smanders in #217
- wxinclude v1.2.2 by @smanders in #218
- protobuf v3.14.0.2 by @smanders in #219
- hdf5 v1.14.6.6 by @smanders in #220
- libsodium v1.0.18.227 by @smanders in #221
- geos v3.13.0.5 by @smanders in #222
- libzmq v4.3.4.3 by @smanders in #223
- azmq v1.0.3.2 by @smanders in #224
- cppzmq v4.7.1.2 by @smanders in #225
- zmqpp v4.2.0-47.2 by @smanders in #226
- librttopo v1.1.0.4 by @smanders in #227
- sqlite3 v3.38.2.2 by @smanders in #228
- libiconv v1.18.7 by @smanders in #229
- libspatialite v5.1.0.7 by @smanders in #230
- spatialite-tools v5.1.0.6 by @smanders in #231
- eigen v3.4.0.2 by @smanders in #232
- ceres-solver v2.2.0.3 by @smanders in #233
- libgeotiff v1.2.4.3 by @smanders in #234
- wxx v26.01 by @smanders in #235
- wxtetris 1.3.0 by @smanders in #236
- lua v5.2.3.2 by @smanders in #237
- luabridge v2.10.4 by @smanders in #238
- nodexp v22.19.0.2 by @smanders in #239
- node-addon-api v8.5.0.2 by @smanders in #240
- openh264 v1.4.0.2 by @smanders in #241
- ffmpeg v2.6.2.3 by @smanders in #242
- nlohmann_json v3.12.0.2 by @smanders in #243
- argon2 v20210625.2 by @smanders in #244
- flatbuffers v25.2.10.2 by @smanders in #245
- clang-format v19.1.5.2 by @smanders in #246
- geotranz v2.4.2.2 by @smanders in #247
- glew v1.13.0.2 by @smanders in #248
- jasper v1.900.1.2 by @smanders in #249
- jpegxp v6.25.2 by @smanders in #250
- jxrlib v2019.10.9.2 by @smanders in #251
- nodeng v22.19.0.2 by @smanders in #252
- nvjpeg2000 v0.8.1.4 by @smanders in #253
- patch v2.7.6.5 by @smanders in #254
- rapidjson v1.1.0-763.2 by @smanders in #255
- rapidxml v1.13.2 by @smanders in #256
- shapelib v1.2.10.2 by @smanders in #257
- wirehair v23.12.02.2 by @smanders in #258
- manifest updates by @smanders in #259
- update externpro by @smanders in #260
- workflows: initial xpupdate by @smanders in #261
- externpro 25.07.4-30-g4d4eb80b by @smanders in #265
- test updates by @smanders in #266
- externpro 25.07.6 by @smanders in #273
- externpro 25.07.6-3-gb12ee47 by @smanders in #274
- externpro 25.07.6-5-gb5242ca by @smanders in #275
- externpro 25.07.6-8-g0d870ff by @smanders in #276
- externpro 25.07.6-10-g5b29729 by @smanders in #277
- externpro 25.07.6-12-gbfed68d by @smanders in #278
- externpro 25.07.6-14-g3f2918a by @smanders in #279
- externpro 25.07.6-17-g4da23ab by @smanders in https://github.com/externpro/buil...
25.07.1
- The
workflow runlink goes to a filtered Actions view for the workflow and tag. - Following the
workflow runlink will lead you to the run page, which includes:- links to the attestation and software bill of materials
- the SBOM is in SPDX (Software Package Data Exchange) format (.spdx.json)
Full Changelog: 25.07...25.07.1
the minor changes from 25.07:
- adding gcc-toolset-15 to the scl_enable script
- making rocky9-gcc13 the BPROIMG_DEFAULT
25.07
- The
workflow runlink goes to a filtered Actions view for the workflow and tag. - Following the
workflow runlink will lead you to the run page, which includes:- links to the attestation and software bill of materials
- the SBOM is in SPDX (Software Package Data Exchange) format (.spdx.json)
What's Changed
- shapelib by @smanders in #172
- rapidxml by @smanders in #173
- cppzmq by @smanders in #174
- zmqpp by @smanders in #175
- glew by @smanders in #176
- libexpat by @smanders in #177
- openssl by @smanders in #178
- libstrophe by @smanders in #179
- activemq by @smanders in #180
- libssh2 by @smanders in #181
- libgit2 by @smanders in #182
- c-ares and curl by @smanders in #183
- protobuf by @smanders in #184
- lua by @smanders in #185
- luabridge by @smanders in #186
- jpegxp by @smanders in #187
- remove exdlpro by @smanders in #188
- boost by @smanders in #189
- rocky8-gcc9 by @smanders in #190
- rocky9-gcc13 by @smanders in #191
- github/workflows buildpro-images on linux by @smanders in #192
- rocky10-gcc15 by @smanders in #193
- bprelease GitHub Actions workflow by @smanders in #194
.github/workflows/- new bprelease workflow -- creates draft release, including table with links
- new bptag workflow -- creates specified (input) tag, dispatches base image builds, waits until all image builds tagged, launches bprelease workflow
- updates to buildpro workflow
- images launched as workflow_run build tagged release image
- set-qemu should be before setup-buildx
- sbom-action (create Software Bill of Materials using syft)
- scan-action (vulnerability scan from SBOM with grype)
- upload-sarif (upload and display grype SARIF report)
- updates to rocky, system-info, ubuntu workflows
- specify permissions to resolve "Code scanning alert"
- updates to rocky workflows
- dispatch-downstream job added to workflows that have images that depend on them (support tagged releases)
- rocky-pro workflow renamed to rocky8-gcc9
- rocky-xdl workflow removed (obsolete with removal of exdlpro)
- rocky10-gcc15 and rocky9-gcc13 workflows added
- xpbuild
- use defaults for artifact-pattern, cmake-workflow-preset
- new arch-list, buildpro-images inputs for build-linux
- linux only builds on rocky8-gcc9, for now (until packages like boost that record compiler release in library names are built)
- root CMakeList.txt using enhanced xproinc.cmake (no need to include xpflags explicitly now) and new xpExternPackage
- public/ghimg.sh enhanced to accept input image name(s), default to all images
- public dockerfiles
- exdlpro install removed from rocky-mdv, rocky-pdv, rocky-pin
- rocky-pdv trimmed externpro/externpro#265
- rocky-pro renamed to rocky8-gcc9
- rocky-xdl removed (obsolete with removal of exdlpro)
- new rocky9-gcc13 and rocky10-gcc15 images
- rocky images install packages from rpm files instead of tar to avoid QEMU errors building on GitHub runners for rocky10
- install useful packages (including build tools) on ubuntu
Changelog since last pre-release: 25.06.6...25.07
Full Changelog since last release: 25.06...25.07
25.06.6
wip... 25.06.6 tag was created previously, but deleted by workflow when it failed -- so things some links here are messed up (or don't exist)
- The
workflow runlink goes to a filtered Actions view for the workflow and tag. - Following the
workflow runlink will lead you to the run page, which includes:- links to the attestation and software bill of materials
- the SBOM is in SPDX (Software Package Data Exchange) format (.spdx.json)
Full Changelog: 25.06.5...25.06.6
25.06.4
wip...
| docker image | buildpro packages | workflow run |
|---|---|---|
| rocky10-gcc15 | ghcr.io/externpro/buildpro/rocky10-gcc15 versions (tag DNE?) | could not query runs (see workflow) |
| rocky9-gcc13 | ghcr.io/externpro/buildpro/rocky9-gcc13 versions (tag DNE?) | could not query runs (see workflow) |
| rocky8-gcc9 | ghcr.io/externpro/buildpro/rocky8-gcc9 versions (tag DNE?) | could not query runs (see workflow) |
| rocky-mdv | ghcr.io/externpro/buildpro/rocky-mdv versions (tag DNE?) | could not query runs (see workflow) |
| rocky-ci | ghcr.io/externpro/buildpro/rocky-ci versions (tag DNE?) | could not query runs (see workflow) |
| rocky-pin | ghcr.io/externpro/buildpro/rocky-pin versions (tag DNE?) | could not query runs (see workflow) |
| rocky-pdv | ghcr.io/externpro/buildpro/rocky-pdv versions (tag DNE?) | could not query runs (see workflow) |
| ubuntu | ghcr.io/externpro/buildpro/ubuntu versions (tag DNE?) | could not query runs (see workflow) |
- The
workflow runlink includes:- links to the attestation and software bill of materials
- the SBOM is in SPDX (Software Package Data Exchange) format (.spdx.json)
Full Changelog: 25.06.3...25.06.4
25.06.3
wip...
| docker image | buildpro packages | workflow run |
|---|---|---|
| rocky10-gcc15 | ghcr.io/externpro/buildpro/rocky10-gcc15:25.06.3 | could not query runs (see workflow) |
| rocky9-gcc13 | ghcr.io/externpro/buildpro/rocky9-gcc13:25.06.3 | could not query runs (see workflow) |
| rocky8-gcc9 | ghcr.io/externpro/buildpro/rocky8-gcc9:25.06.3 | could not query runs (see workflow) |
| rocky-mdv | ghcr.io/externpro/buildpro/rocky-mdv:25.06.3 | could not query runs (see workflow) |
| rocky-ci | ghcr.io/externpro/buildpro/rocky-ci:25.06.3 | could not query runs (see workflow) |
| rocky-pin | ghcr.io/externpro/buildpro/rocky-pin:25.06.3 | could not query runs (see workflow) |
| rocky-pdv | ghcr.io/externpro/buildpro/rocky-pdv:25.06.3 | could not query runs (see workflow) |
| ubuntu | ghcr.io/externpro/buildpro/ubuntu:25.06.3 | could not query runs (see workflow) |
- The
workflow runlink includes:- links to the attestation and software bill of materials
- the SBOM is in SPDX (Software Package Data Exchange) format (.spdx.json)
Full Changelog: 25.06.2...25.06.3
25.06.2
wip...
| buildpro docker image | workflow run |
|---|---|
| ghcr.io/externpro/buildpro/rocky10-gcc15:25.06.2 | could not query runs (see workflow) |
| ghcr.io/externpro/buildpro/rocky9-gcc13:25.06.2 | could not query runs (see workflow) |
| ghcr.io/externpro/buildpro/rocky8-gcc9:25.06.2 | could not query runs (see workflow) |
| ghcr.io/externpro/buildpro/rocky-mdv:25.06.2 | could not query runs (see workflow) |
| ghcr.io/externpro/buildpro/rocky-ci:25.06.2 | could not query runs (see workflow) |
| ghcr.io/externpro/buildpro/rocky-pin:25.06.2 | could not query runs (see workflow) |
| ghcr.io/externpro/buildpro/rocky-pdv:25.06.2 | could not query runs (see workflow) |
| ghcr.io/externpro/buildpro/ubuntu:25.06.2 | could not query runs (see workflow) |
- The
workflow runlink includes:- links to the attestation and software bill of materials
- the SBOM is in SPDX (Software Package Data Exchange) format (.spdx.json)
Full Changelog: 25.06.1...25.06.2
25.06.1
buildpro container images 25.06.1
wip...
| Image | Container package | Workflow run |
|---|---|---|
| rocky10-gcc15 | link | no matching run (see workflow) |
| rocky9-gcc13 | link | no matching run (see workflow) |
| rocky8-gcc9 | link | no matching run (see workflow) |
| rocky-mdv | missing tag 25.06.1 (versions) | no matching run (see workflow) |
| rocky-ci | missing tag 25.06.1 (versions) | no matching run (see workflow) |
| rocky-pin | missing tag 25.06.1 (versions) | no matching run (see workflow) |
| rocky-pdv | missing tag 25.06.1 (versions) | no matching run (see workflow) |
| ubuntu | link | no matching run (see workflow) |
What's Changed
- shapelib by @smanders in #172
- rapidxml by @smanders in #173
- cppzmq by @smanders in #174
- zmqpp by @smanders in #175
- glew by @smanders in #176
- libexpat by @smanders in #177
- openssl by @smanders in #178
- libstrophe by @smanders in #179
- activemq by @smanders in #180
- libssh2 by @smanders in #181
- libgit2 by @smanders in #182
- c-ares and curl by @smanders in #183
- protobuf by @smanders in #184
- lua by @smanders in #185
- luabridge by @smanders in #186
- jpegxp by @smanders in #187
- remove exdlpro by @smanders in #188
- boost by @smanders in #189
- rocky8-gcc9 by @smanders in #190
- rocky9-gcc13 by @smanders in #191
- github/workflows buildpro-images on linux by @smanders in #192
- rocky10-gcc15 by @smanders in #193
- bprelease GitHub Actions workflow by @smanders in #194
Full Changelog: 25.06...25.06.1
25.06
Full Changelog 25.05.2...25.06 25.05...25.06
Rocky 8.10, Ubuntu 24.04, Windows 2022/Visual Studio 2022, macOS 15
notable changes
init/repoinit.shscript that takes eitherprosormiscas an argument and initializes the repos from those files- a project test can set a
${pro}_libsvariable if${PRJ}_LIBRARIESis lacking in some way, but if${PRJ}_LIBRARIESis sufficient there is less to specify (the${pro}_depsis obsolete) - tests can specify
${pro}_postBuildCopyto copy files to the directory where the test executable is built (FFmpeg uses this to copy DLLs on Windows) - tests can set
${pro}_xvfbto${xvfb_cmd}to utilize Xvfb (Xvfb, or X virtual framebuffer, is an X server that runs without a physical display, allowing applications that require a graphical environment to run in a headless (server-only) mode.) -- the wxx project currently utilizes this test/CMakeLists.txtincludes atoda(all in Spanish) target that links all of thetest/*.cppfiles and their dependencies
public packages https://github.com/orgs/externpro/packages?repo_name=buildpro
rocky-pro:25.06rocky-xdl:25.06rocky-mdv:25.06rocky-ci:25.06rocky-pin:25.06rocky-pdv:25.06ubuntu:25.06
What's Changed
- clang-format by @smanders in #152
- jxrlib by @smanders in #153
- jasper by @smanders in #154
- rapidjson by @smanders in #155
- wirehair by @smanders in #156
- libstrophe by @smanders in #157
- geotranz by @smanders in #158
- wxwidgets by @smanders in #159
- test/azmq: more robust to avoid hang on macOS by @smanders in #160
- test/toda added by @smanders in #161
- wxwidgets v3.1.0.3 by @smanders in #162
- test: use PRJ_LIBRARIES instead of specifying _deps by @smanders in #164
- wxx by @smanders in #163
- cleanup debug by @smanders in #165
- repoinit script, init directory by @smanders in #166
- libgeotiff by @smanders in #167
- test/libgit2,shapelib: use Boost::filesystem by @smanders in #168
- yasm by @smanders in #169
- openh264 by @smanders in #170
- ffmpeg by @smanders in #171
Full Changelog: 25.05.2...25.06