Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package woodpecker for openSUSE:Factory checked in at 2026-05-04 12:51:08 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/woodpecker (Old) and /work/SRC/openSUSE:Factory/.woodpecker.new.30200 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "woodpecker" Mon May 4 12:51:08 2026 rev:24 rq:1350366 version:3.14.0 Changes: -------- --- /work/SRC/openSUSE:Factory/woodpecker/woodpecker.changes 2026-01-15 16:47:50.860238155 +0100 +++ /work/SRC/openSUSE:Factory/.woodpecker.new.30200/woodpecker.changes 2026-05-04 12:53:51.286313385 +0200 @@ -1,0 +2,339 @@ +Fri May 01 11:34:00 UTC 2026 - Johannes Kastl <[email protected]> + +- Update to version 3.14.0: + * Security + - docs: bump follow-redirects [#6441] + - chore(deps): update dependency axios to v1.15.0 [security] + [#6417] + - fix(deps): update go.opentelemetry.io/otel to v1.43.0 [#6416] + - WebUI: remove "lodash" dep [#6369] + - Sanitize agent introduced pipeline/workflow/step state + changes and log streaming [#6308] + - Send 404 if logs are not allowed to access [#6349] + - Prevent registering as arbitrary agents with system token + [#6283] + - Update fast-xml-parser [#6258] + - Update dompurify and svgo [#6198] + - Update edwards25519 [#6143] + * Features + - Support one-shot agent execution mode [#6150] + - Add external secret extension implementation [#6252] + - Allow disabling isolated home directory for local agents + [#6251] + - Add Container Registry credential extension [#5993] + - Support exclusive config extensions [#5978] + * Enhancement + - Kubernetes: precreate workingDir as nonroot when required + [#6322] + - Kubernetes: Support allowPrivilegeEscalation and capabilities + backend_options [#6307] + - Refactor: remove Auth() from Forge interface [#6505] + - Move wait for log uploads logic out of logger and tracer into + pipeline runtime [#6471] + - Make agent reconnect retry timeout configurable [#6470] + - Handle re-created forge repos gracefully [#6370] + - Cleanup server store step interface [#6476] + - Docker/K8s: add config for stop timeout [#6445] + - Docker backend should retry to delete volume on "in use" + error [#6381] + - Move skip pipeline by commit message into pipeline/frontend + package [#6437] + - Init server/scheduler package and use it as proxy for queue & + pubsub [#6418] + - Unify server API parameters to snake_case [#6404] + - Add netrc option for config/registry extension [#6333] + - Docker backend: replace docker SDK with moby SDK [#6357] + - Deprecate commit avatar envs [#6356] + - Refactor server/pubsub into interface [#6318] + - Separate cron field [#6346] + - Refactor pipeline runtime code [#6166] + - Show Woodpecker version on pipeline details [#6316] + - Unify import aliases [#6328] + - Improve linter warning when step has no when block [#6314] + - Improve error message when no workflows for manual were found + [#6313] + - Server return conflict status when stale repo causes + duplicate insert [#6276] + - Show global/org registries in org/repo registries tab [#6291] + - Report skipped step state as soon as it's determined [#6295] + - Only add compatibility environment variables for drone-ci to + plugins [#6271] + - Refactor: pass backend explicitly when creating pipeline + engine runtime [#6268] + - Compare admins case-insensitively [#6261] + - Allow to cancel on failure [#6158] + - Refactor so storage detects if Insert fails because of unique + constraint [#6259] + - Add server config for maximum log lines shown in web UI + [#6250] + - Add "Load more" pagination to pipeline list [#6200] + - Use upstream slices.Concat and remove utils.MergeSlices + [#6185] + - Add enhanced function for error message handling in http + request for configuration fetching [#5712] + - Remove fixed badge width in UI [#6157] + - Improve Debian packages [#6085] + - Refactor pipeline engine [#6073] + - Show cancellation reason in pipeline details [#6072] + - Document required forge methods [#6049] + - Dynamic log following [#6036] + - Per-Workflow and Per-Workflow-Step badge generation [#5977] + - Render MD in pipeline titles [#5999] + - Simplify and Fix server task queue [#6017] + - Update Architecture: move pipeline/rpc => rpc & server/{grpc + => rpc} [#6012] + - Implement retry logic in HTTP Send method [#5857] + - CLI: Allow single output template [#5882] + - Improve service syntax related docs and tests nits [#5991] + - Remove deactivated secrets type from container definition + [#5983] + * Bug Fixes + - fix(web): escape HTML in commit messages to prevent XSS + [#6523] + - fix(cli,server): fix trusted flags copy-paste bug and server + nil pointer panic [#6501] + - Add refname to bitbucket commit status [#6482] + - Fix send on closed channel panic in SSE stream handlers + [#6456] + - Add WOODPECKER_FORCE_IGNORE_SERVICE_FAILURE config to + preserve non-breaking behavior by default [#6448] + - Fix race in pipeline runtime [#6451] + - Fix race in server LogEntry logger [#6449] + - Kubernetes: detached steps are no services [#6435] + - Support dots in image names [#6431] + - Fix erroneous linter error for plugin privileges [#6424] + - Add connection timeout and graceful shutdown to agent RPC + client [#6414] + - Fix Windows container exit code handling and error checks + [#6411] + - Bitbucket: Remove usage of deprecated + /user/permissions/repositories [#6401] + - Bitbucket: Fix parsing /user/workspaces response [#6396] + - Fix CLI exec with workflow matrix feature, where variables + are not substituted. [#6162] + - Fix enable repo with same name and owner on second forge + [#6375] + - Fix workflow being skipped and marked as failed when agent + starts before server [#6361] + - Only redirect after login [#6348] + - Set workflow services stuck in running state to finished + [#6337] + - Fix bitbucket api deprecations [#6324] + - Fix workflow serialize to omit skip_clone if false [#6319] + - Fix build deb rpm packages [#6309] + - Enable crons if created via CLI [#6228] + - Fix message on gitlab tag event [#6196] + - Bitbucket DC: resolve annotated tag SHA to commit SHA before + posting build status [#6203] + - Prevent leaking goroutines on canceled steps [#6186] + - Fix when.status filter evaluation and add workflow-level + support [#6183] + - Fix status merging with skipped pipelines [#6176] + - Update pipeline config schema [#6156] + - Fix OAuth token refresh race condition with singleflight + [#6153] + - Use priority-based merging to determine pipeline and workflow + status [#6119] + - Only set tag env on tags [#6142] + - Fix bitbucket email [#6102] + - Report status for detached steps and services [#6039] + - Don't propagate workflow error from agent back to agent + [#6056] + - Fix pipeline cancellation status handling and step state + synchronization [#6011] + - Add retry logic for CreatePipeline with backoff [#6067] + - Fix OAuth token refresh in webhook handling for Bitbucket and + GitHub [#6059] + - Refresh token before forge calls [#6035] + - Local backend: cleanup generated script for cmd.exe shell + [#6029] + - Local backend: setup clone step respects context [#6030] + - Fix: Agent now gracefully handles running containers when + killed [#6018] + - Local backend: handle canceled steps case [#6008] + * Tests + - e2e test wait for grpc server teardown and stop agents + [#6479] + - Add more test cases for rpc label filter [#6483] + - Fix flaky TestJWTManager [#6478] + - Add e2e pipeline restart test [#6469] + - Init minimal e2e tests [#6391] + - Enhance datastore DB test setup [#6450] + - Dummy backend support cancel [#6390] + - Extend workflow integration tests [#6272] + - Add registry service tests [#6330] + - Add workflow integration test [#6270] + - Increase timeout for migration tests [#6206] + - Ignore fixtures for coverage [#6197] + - Use tabs for indentation in embedded JSON [#6103] + - Add tests for CLI output formatting and pipeline metadata + environment variables [#6076] + - Ignore mocks for coverage [#6074] + * 📚 Documentation + - docs: better description for when.status filter [#6517] + - docs: Add woodpecker-shellcheck lint to awesome list [#6521] + - Lock file maintenance [#6508] + - Update docs npm deps non-major [#6496] + - Add Laravel Forge plugin [#6491] + - Add 'entrypoint' property to service in schema [#6487] + - Lock file maintenance [#6472] + - Update dependency axios to v1.15.1 [#6468] + - Update dependency marked to v18.0.2 [#6465] + - Update docs npm deps non-major [#6463] + - Update dependency marked to v18 [#6425] + - Update docs npm deps non-major [#6422] + - chore(deps): update dependency fuse.js to v7.3.0 [#6382] + - chore(deps): update docs npm deps non-major [#6376] + - chore(deps): update dependency typescript to v6 [#6336] + - chore(deps): update docs npm deps non-major [#6335] + - Add CI check for docs on feature PRs [#6315] + - chore(deps): update dependency isomorphic-dompurify to v3.6.0 + [#6288] + - chore(deps): update dependency yaml to v2.8.3 [#6287] + - Add agentscan to plugin docs [#6285] + - Add opengrep plugin [#6282] + - chore(deps): update docs npm deps non-major [#6281] + - Sort glossary items alphabetically [#6255] + - chore(deps): update docs npm deps non-major [#6240] + - plugin: ascii junit report: renamed gh username [#6232] + - chore(deps): update dependency svgo to v4 [#6214] + - chore(deps): update docs npm deps non-major [#6210] + - Update serialize-javascript [#6182] + - chore(deps): update docs npm deps non-major [#6173] + - chore(deps): update dependency isomorphic-dompurify to v3 + [#6147] + - chore(deps): update docs npm deps non-major [#6137] + - Add deprecation policy [#6068] + - fix(deps): update dependency + @easyops-cn/docusaurus-search-local to ^0.55.0 [#6125] + - Improve selinux docs [#6066] + - Document how to ignore failure on services [#6106] + - chore(deps): update docs npm deps non-major [#6109] + - fix(deps): update dependency + @easyops-cn/docusaurus-search-local to ^0.54.0 [#6091] + - chore(deps): update dependency axios to v1.13.5 [#6090] + - chore(deps): update docs npm deps non-major [#6088] + - chore(deps): update dependency isomorphic-dompurify to + v2.36.0 [#6086] + - fix(deps): update docs npm deps non-major [#6052] + - Update Module Interaction Diagram [#6019] + - Add Buildah plugin link [#6050] + - chore(deps): update docs npm deps non-major [#6045] + - Add Homebrew package [#6037] + - chore(deps): update dependency axios to v1.13.3 [#6010] + - chore(deps): update docs npm deps non-major [#6000] + - Fix docusaurus md link deprecation [#5979] + - chore(deps): update docs npm deps non-major [#5982] + * Dependency + - Update golang-packages [#6524] + - Update module github.com/google/go-github/v84 to v85 [#6500] + - Update module github.com/getkin/kin-openapi to v0.136.0 + [#6503] + - Update woodpeckerci/plugin-git Docker tag to v2.9.0 [#6499] + - Update docker.io/mysql Docker tag to v9.7.0 [#6498] + - Update docker.io/lycheeverse/lychee Docker tag to v0.24.1 + [#6497] + - Update golang-packages to v0.36.0 [#6485] + - Update golang-packages [#6477] + - Update pre-commit hook rbubley/mirrors-prettier to v3.8.3 + [#6462] + - Update module k8s.io/client-go to v0.35.4 [#6460] + - Update golang-packages [#6459] + - Update docker.io/woodpeckerci/plugin-trivy Docker tag to + v1.4.5 [#6447] + - Update docker.io/woodpeckerci/plugin-ready-release-go Docker + tag to v4.1.1 [#6440] + - Update module gitlab.com/gitlab-org/api/client-go/v2 to + v2.18.0 [#6439] + - Update docker.io/woodpeckerci/plugin-codecov Docker tag to + v2.3.1 [#6438] + - Lock file maintenance [#6430] + - Update dependency dotenv to v17.4.2 [#6428] + - Update dependency simple-icons to v16.16.0 [#6427] + - Update web npm deps non-major [#6423] + - Update pre-commit hook rbubley/mirrors-prettier to v3.8.2 + [#6421] + - Update dependency golang to v1.26.2 [#6420] + - fix(deps): update module github.com/docker/cli to + v29.4.0+incompatible [#6403] + - fix(deps): update module github.com/mattn/go-sqlite3 to + v1.14.41 [#6397] + - chore(deps): lock file maintenance [#6392] + - chore(deps): update dependency dotenv to v17.4.1 [#6389] + - chore(deps): update dependency marked to v17.0.6 [#6387] + - chore(deps): update dependency simple-icons to v16.15.0 + [#6385] + - fix(deps): update golang-packages [#6384] + - chore(deps): update dependency fuse.js to v7.3.0 [#6383] + - chore(deps): update dependency @antfu/eslint-config to v8 + [#6378] + - chore(deps): update web npm deps non-major [#6377] + - fix(deps): update module github.com/lib/pq to v1.12.2 [#6371] + - fix(deps): update module google.golang.org/grpc to v1.80.0 + [#6363] + - fix(deps): update golang-packages [#6343] + - chore(deps): lock file maintenance [#6344] + - chore(deps): update dependency simple-icons to v16.14.0 + [#6341] + - chore(deps): update web npm deps non-major [#6334] + - chore(deps): update + docker.io/woodpeckerci/plugin-ready-release-go docker tag to + v4.1.0 [#6331] + - fix(deps): update module code.gitea.io/sdk/gitea to v0.24.1 + [#6321] + - chore(deps): lock file maintenance [#6306] + - fix(deps): update module github.com/charmbracelet/huh to v2 + [#6243] + - chore(deps): update dependency golangci/golangci-lint to + v2.11.4 [#6301] + - chore(deps): update pre-commit hook golangci/golangci-lint to + v2.11.4 [#6302] + - chore(deps): update web npm deps non-major [#6279] + - fix(deps): update module github.com/zalando/go-keyring to + v0.2.7 [#6280] + - fix(deps): update module github.com/mattn/go-sqlite3 to + v1.14.37 [#6253] + - chore(deps): update dependency jsdom to v29 [#6246] + - chore(deps): update woodpeckerci/plugin-release docker tag to ++++ 42 more lines (skipped) ++++ between /work/SRC/openSUSE:Factory/woodpecker/woodpecker.changes ++++ and /work/SRC/openSUSE:Factory/.woodpecker.new.30200/woodpecker.changes Old: ---- web-3.13.0.tar.gz woodpecker-3.13.0.obscpio New: ---- prepare_webassets.sh web-3.14.0.tar.gz woodpecker-3.14.0.obscpio ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ woodpecker.spec ++++++ --- /var/tmp/diff_new_pack.vHGWJt/_old 2026-05-04 12:53:52.418359977 +0200 +++ /var/tmp/diff_new_pack.vHGWJt/_new 2026-05-04 12:53:52.422360142 +0200 @@ -26,7 +26,7 @@ %define server_executable_name woodpecker-server Name: woodpecker -Version: 3.13.0 +Version: 3.14.0 Release: 0 Summary: Simple yet powerful CI/CD engine with great extensibility License: Apache-2.0 @@ -36,10 +36,11 @@ Source2: web-%{version}.tar.gz Source3: PACKAGING_README.md Source4: Makefile +Source5: prepare_webassets.sh Source11: woodpecker-server.service Source12: woodpecker-agent.service Source21: system-user-woodpecker.conf -BuildRequires: golang(API) >= 1.25 +BuildRequires: golang(API) >= 1.26 %description Woodpecker is a simple yet powerful CI/CD engine with great extensibility ++++++ Makefile ++++++ --- /var/tmp/diff_new_pack.vHGWJt/_old 2026-05-04 12:53:52.462361788 +0200 +++ /var/tmp/diff_new_pack.vHGWJt/_new 2026-05-04 12:53:52.466361953 +0200 @@ -1,31 +1,25 @@ +.ONESHELL: +.SILENT: obsservices webassets + NAME = woodpecker SPEC = woodpecker.spec -default: clean tar +default: clean obsservices webassets clean: - rm -rf $(NAME) $(NAME)-*.tar $(NAME)-*.tar.gz $(NAME)-*.obscpio vendor.tar.gz web-*.tar.gz + rm -rf $(NAME) $(NAME)-*.tar $(NAME)-*.tar.gz $(NAME)-*.obscpio web-*.tar.gz vendor.tar.gz -tar: +obsservices: + echo "##########" + echo "Running OBS services" osc service manualrun - @version=$$( awk '/^Version:/ {print $$2;exit;}' $(SPEC) ) && \ - echo "Package version is $$version" && \ - basename=$(NAME)-$$version && \ - obscpio=$$basename.obscpio && \ - wd=$$(pwd) && \ - tmpdir=$$(mktemp -d -p /tmp) && \ - cd $$tmpdir && \ - echo "Extracting obscpio archive" && \ - cpio -id < $$wd/$$obscpio && \ - tar xvf $$wd/vendor.tar.gz && \ - cd $$basename/web/ && \ - rm -rf node_modules && \ - ls -lah && \ - pnpm install --frozen-lockfile && \ - pnpm build && \ - ls -lah && \ - cd .. && \ - tar czf $$wd/web-$$version.tar.gz ./web/ && \ - echo "DONE creating npm dependency offline cache file web-$$version.tar.gz" && \ - rm -rf $$tmpdir + +webassets: + podman run \ + -ti \ + --rm \ + --pull=always \ + -v .:/data/ \ + registry.opensuse.org/opensuse/leap:16.0 \ + bash /data/prepare_webassets.sh $(NAME) nodejs24 ++++++ PACKAGING_README.md ++++++ --- /var/tmp/diff_new_pack.vHGWJt/_old 2026-05-04 12:53:52.498363270 +0200 +++ /var/tmp/diff_new_pack.vHGWJt/_new 2026-05-04 12:53:52.502363434 +0200 @@ -1,16 +1,18 @@ # Packaging woodpecker -This server package needs assets generated by the `Makefile` that is present in -this package. To do that, you need to have `make` and either the -`nodejs-common` or the `pnpm` package installed locally. +In addition to the source code in the tarball, this package also needs the +assets for the web UI. These can be generated by the `Makefile` that is present +in this package. To do that, you need to have `make` and `podman` installed +locally. For the OBS workflow you also need `obs-service-go_modules` as well as +`obs-service-tar_scm` and `obs-service-recompress`. 1. Change the version in the `_service` file -2. Enable `pnpm` by running `sudo corepack enable pnpm` (or install the `pnpm` - package) -3. Run `make` -4. Create a changelog entry -5. Commit the changes as usual +2. Run `make` +3. Create a changelog entry +4. Commit the changes as usual +5. If desired, remove the container image used to build the web assets: -For the OBS workflow you also need `obs-service-go_modules` as well -as `obs-service-tar_scm` and `obs-service-recompress`. + ``` + podman image rm registry.opensuse.org/opensuse/leap:16.0 + ``` ++++++ _service ++++++ --- /var/tmp/diff_new_pack.vHGWJt/_old 2026-05-04 12:53:52.534364752 +0200 +++ /var/tmp/diff_new_pack.vHGWJt/_new 2026-05-04 12:53:52.538364916 +0200 @@ -3,7 +3,7 @@ <param name="url">https://github.com/woodpecker-ci/woodpecker</param> <param name="scm">git</param> <param name="exclude">.git</param> - <param name="revision">v3.13.0</param> + <param name="revision">v3.14.0</param> <param name="versionformat">@PARENT_TAG@</param> <param name="changesgenerate">enable</param> <param name="versionrewrite-pattern">v(.*)</param> ++++++ _servicedata ++++++ --- /var/tmp/diff_new_pack.vHGWJt/_old 2026-05-04 12:53:52.566366069 +0200 +++ /var/tmp/diff_new_pack.vHGWJt/_new 2026-05-04 12:53:52.570366233 +0200 @@ -1,6 +1,6 @@ <servicedata> <service name="tar_scm"> <param name="url">https://github.com/woodpecker-ci/woodpecker</param> - <param name="changesrevision">f6bed2f4537892eee66b398ebab9a407b32169dc</param></service></servicedata> + <param name="changesrevision">af313aad3479a2c111584f289c47746e5023b3b5</param></service></servicedata> (No newline at EOF) ++++++ prepare_webassets.sh ++++++ #!/bin/bash # do not use set -e, as the make step will abort the build due to warnings/errors set -o pipefail [[ "$#" == "2" ]] || { echo "Please use the package name and the nodejs version as the only arguments" exit 1 } package_name="${1}" nodejs_package="${2}" cd /data || exit 11 zypper -n install \ cpio \ gawk \ make \ git-core \ pnpm \ "${nodejs_package}" || exit 13 version="$( awk '/^Version:/ {print $2;exit;}' "${package_name}.spec" )" echo "##########" echo "Package version is $version" basename="${package_name}-$version" webassets_tarball="web-${version}.tar.gz" obscpio="$basename.obscpio" working_directory="$(pwd)" tmpdir="$(mktemp -d -p /tmp)" cd "${tmpdir}" || exit 15 echo "##########" echo "Extracting obscpio archive" cpio -id < "$working_directory/$obscpio" || exit 21 ls -lah cd "$basename" || exit 23 ls -lah echo "##########" cd web/ || exit 25 rm -rf node_modules || exit 27 pnpm install --frozen-lockfile pnpm build cd .. || exit 29 echo "Creating web assets tarball" tar -czf "${working_directory}/${webassets_tarball}" web/ echo "##########" echo "DONE preparing the webassets" cd "${working_directory}" || exit 31 rm -rf "$tmpdir" ++++++ vendor.tar.gz ++++++ /work/SRC/openSUSE:Factory/woodpecker/vendor.tar.gz /work/SRC/openSUSE:Factory/.woodpecker.new.30200/vendor.tar.gz differ: char 13, line 1 ++++++ web-3.13.0.tar.gz -> web-3.14.0.tar.gz ++++++ /work/SRC/openSUSE:Factory/woodpecker/web-3.13.0.tar.gz /work/SRC/openSUSE:Factory/.woodpecker.new.30200/web-3.14.0.tar.gz differ: char 13, line 1 ++++++ woodpecker-3.13.0.obscpio -> woodpecker-3.14.0.obscpio ++++++ ++++ 95799 lines of diff (skipped) ++++++ woodpecker.obsinfo ++++++ --- /var/tmp/diff_new_pack.vHGWJt/_old 2026-05-04 12:53:55.470485595 +0200 +++ /var/tmp/diff_new_pack.vHGWJt/_new 2026-05-04 12:53:55.474485759 +0200 @@ -1,5 +1,5 @@ name: woodpecker -version: 3.13.0 -mtime: 1768393385 -commit: f6bed2f4537892eee66b398ebab9a407b32169dc +version: 3.14.0 +mtime: 1777627484 +commit: af313aad3479a2c111584f289c47746e5023b3b5
