Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
78 commits
Select commit Hold shift + click to select a range
883c190
Update release branch in dependabot config
nscuro Mar 9, 2026
df1a669
Update versions in issue template for defects
nscuro Mar 9, 2026
2bedb4e
build(deps): bump docker/setup-qemu-action from 3.7.0 to 4.0.0
dependabot[bot] Mar 9, 2026
a30632d
build(deps): bump docker/build-push-action from 6.19.2 to 7.0.0
dependabot[bot] Mar 9, 2026
f7b8e4f
Add release artifact checksums for 4.14.0
nscuro Mar 9, 2026
8f2702e
Fix PURL-specific version matching being bypassed for components with…
nscuro Mar 12, 2026
7e1ae16
Merge pull request #5903 from nscuro/fix-purl-matching
nscuro Mar 12, 2026
a51ddbb
Merge pull request #5892 from DependencyTrack/dependabot/github_actio…
nscuro Mar 12, 2026
ca0524b
Merge pull request #5891 from DependencyTrack/dependabot/github_actio…
nscuro Mar 12, 2026
189c09e
build(deps): bump org.apache.maven:maven-artifact from 3.9.13 to 3.9.14
dependabot[bot] Mar 13, 2026
f8facb1
Remove leading whitespace from vulnerability badge SVG template
Zureno Mar 15, 2026
a0c3352
Merge pull request #5911 from Zureno/fix-vuln-badge-leading-whitespac…
nscuro Mar 15, 2026
6dd7094
build(deps): bump lib.resilience4j.version from 2.3.0 to 2.4.0
dependabot[bot] Mar 16, 2026
8375f5d
build(deps): bump com.microsoft.sqlserver:mssql-jdbc
dependabot[bot] Mar 16, 2026
c23d007
build(deps): bump actions/download-artifact from 8.0.0 to 8.0.1
dependabot[bot] Mar 16, 2026
329a380
build(deps): bump eclipse-temurin in /src/main/docker
dependabot[bot] Mar 17, 2026
7659bf9
build(deps): bump debian from `85dfcff` to `99fc6d2` in /src/main/docker
dependabot[bot] Mar 17, 2026
a4e2774
Merge pull request #5919 from DependencyTrack/dependabot/docker/src/m…
nscuro Mar 17, 2026
7c0022c
Merge pull request #5918 from DependencyTrack/dependabot/docker/src/m…
nscuro Mar 17, 2026
eb3e759
Merge pull request #5913 from DependencyTrack/dependabot/maven/com.mi…
nscuro Mar 17, 2026
3e002e2
Merge pull request #5914 from DependencyTrack/dependabot/github_actio…
nscuro Mar 17, 2026
6e094f1
Merge pull request #5912 from DependencyTrack/dependabot/maven/lib.re…
nscuro Mar 17, 2026
7ed965a
Merge pull request #5904 from DependencyTrack/dependabot/maven/org.ap…
nscuro Mar 17, 2026
d3afc3f
build(deps-dev): bump io.swagger.parser.v3:swagger-parser
dependabot[bot] Mar 17, 2026
7f74805
Add support for NuGet versioning scheme
nscuro Mar 17, 2026
f3af82e
Merge pull request #5895 from DependencyTrack/dependabot/maven/io.swa…
nscuro Mar 17, 2026
4f1a2ff
Potential fix for pull request finding
nscuro Mar 17, 2026
3037ee5
Merge pull request #5924 from nscuro/issue-5923
nscuro Mar 17, 2026
a4d71b8
build(deps): bump org.metaeffekt.core:ae-security
dependabot[bot] Mar 18, 2026
39042f3
build(deps): bump eclipse-temurin in /src/main/docker
dependabot[bot] Mar 18, 2026
0196219
Merge pull request #5926 from DependencyTrack/dependabot/maven/org.me…
nscuro Mar 18, 2026
cab8413
Merge pull request #5927 from DependencyTrack/dependabot/docker/src/m…
nscuro Mar 18, 2026
b23513d
build(deps): bump com.google.cloud.sql:mysql-socket-factory-connector…
dependabot[bot] Mar 19, 2026
6283720
build(deps-dev): bump org.testcontainers:testcontainers
dependabot[bot] Mar 19, 2026
bbf04ff
Merge pull request #5935 from DependencyTrack/dependabot/maven/com.go…
nscuro Mar 19, 2026
8af3f92
Merge pull request #5936 from DependencyTrack/dependabot/maven/org.te…
nscuro Mar 19, 2026
05d9fa6
build(deps): bump com.google.cloud.sql:postgres-socket-factory
dependabot[bot] Mar 19, 2026
36661b4
build(deps): bump com.google.cloud.sql:cloud-sql-connector-jdbc-sqlse…
dependabot[bot] Mar 19, 2026
a06756c
Merge pull request #5937 from DependencyTrack/dependabot/maven/com.go…
nscuro Mar 19, 2026
1708f08
Merge pull request #5938 from DependencyTrack/dependabot/maven/com.go…
nscuro Mar 19, 2026
a339494
Fix potentially wrong version being used for CPE comparison
nscuro Mar 19, 2026
18f6dcb
Merge pull request #5944 from nscuro/cpe-version-compare-fix
nscuro Mar 19, 2026
80abb67
Add support for Composer versioning scheme
nscuro Mar 19, 2026
9b92a09
Potential fix for pull request finding
nscuro Mar 19, 2026
2bf0149
Merge pull request #5945 from nscuro/composer-version-scheme
nscuro Mar 19, 2026
a04d39a
Remove trivy-action
nscuro Mar 21, 2026
7700b80
Fix wasteful existence queries
nscuro Mar 22, 2026
3496e7f
Merge pull request #5952 from nscuro/existence-checks
nscuro Mar 22, 2026
3f37289
Disable Trivy integration tests
nscuro Mar 23, 2026
496da36
Merge pull request #5956 from nscuro/disable-trivy-it
nscuro Mar 23, 2026
444a82f
Add age and version distance to operational policy criteria
jonbally Mar 23, 2026
0ac17cf
build(deps): bump lib.protobuf-java.version from 4.34.0 to 4.34.1
dependabot[bot] Mar 24, 2026
15ae4cd
Merge pull request #5957 from jonbally/patch-1
nscuro Mar 24, 2026
e7523d8
Merge pull request #5953 from DependencyTrack/dependabot/maven/lib.pr…
nscuro Mar 24, 2026
512a945
Harden GitHub Actions workflows
nscuro Mar 24, 2026
41380dd
Merge pull request #5965 from nscuro/gha-hardening
nscuro Mar 24, 2026
3a2c5cd
Address zizmor GitHub Actions findings
nscuro Mar 25, 2026
c29d50d
Merge pull request #5970 from nscuro/fix-zizmor-findings
nscuro Mar 25, 2026
456dabd
Fix scheduled notification query failing when ID columns are not of t…
nscuro Mar 26, 2026
ff363a8
Merge pull request #5973 from nscuro/issue-5968
nscuro Mar 26, 2026
d3ff4c1
Avoid NPE when computing Trivy pkgType (#5982)
stohrendorf Mar 31, 2026
a19ff86
build(deps-dev): bump io.github.ascopes:protobuf-maven-plugin
dependabot[bot] Apr 2, 2026
b086d56
build(deps): bump eclipse-temurin in /src/main/docker
dependabot[bot] Apr 2, 2026
34b27a9
Merge pull request #5988 from DependencyTrack/dependabot/maven/io.git…
nscuro Apr 2, 2026
efc8733
Merge pull request #5989 from DependencyTrack/dependabot/docker/src/m…
nscuro Apr 2, 2026
d89365f
Use ecosystem-aware version comparison for latest version detection
nscuro Apr 2, 2026
28d5f7c
Support Sonatype Guide tokens for OSS Index analyzer
nscuro Apr 2, 2026
4bea950
Merge pull request #5993 from nscuro/ecosystem-aware-latest-version-d…
nscuro Apr 2, 2026
604b3ba
Merge pull request #5994 from nscuro/ossi-guide-token
nscuro Apr 2, 2026
fc0de5f
Bump bundled frontend to 4.14.1
nscuro Apr 3, 2026
5e3aecb
Fix version in docs
nscuro Apr 3, 2026
7d9e2d4
Merge pull request #6002 from nscuro/fix-doc-version
nscuro Apr 3, 2026
00982b6
Merge pull request #6001 from nscuro/bump-frontend-4.14.1
nscuro Apr 3, 2026
686817b
Fix release workflow
nscuro Apr 3, 2026
2a4112f
Merge pull request #6003 from nscuro/fix-release-workflow
nscuro Apr 3, 2026
658be56
Add changelog for v4.14.1
nscuro Apr 3, 2026
626a0cb
Update versions in issue template for defects
nscuro Apr 3, 2026
cfef050
log suppression when creating new violation analysis
stohrendorf Apr 6, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion .github/ISSUE_TEMPLATE/defect-report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,9 @@ body:
- 4.13.4
- 4.13.5
- 4.13.6
- 4.14.0-SNAPSHOT
- 4.14.0
- 4.14.1
- 4.15.0-SNAPSHOT
validations:
required: true
- type: dropdown
Expand Down
16 changes: 14 additions & 2 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,33 +5,45 @@ updates:
directory: /
schedule:
interval: daily
cooldown:
default-days: 7
- package-ecosystem: docker
directory: /src/main/docker
schedule:
interval: daily
cooldown:
default-days: 7
- package-ecosystem: github-actions
directory: /
schedule:
interval: weekly
cooldown:
default-days: 7
- package-ecosystem: bundler
directory: /docs
schedule:
interval: weekly
cooldown:
default-days: 7
# Receive minor and patch updates on latest release branch.
- package-ecosystem: maven
target-branch: 4.13.x
target-branch: 4.14.x
directory: /
schedule:
interval: daily
cooldown:
default-days: 7
ignore:
- dependency-name: "*"
update-types:
- version-update:semver-major
- package-ecosystem: docker
target-branch: 4.13.x
target-branch: 4.14.x
directory: /src/main/docker
schedule:
interval: daily
cooldown:
default-days: 7
ignore:
- dependency-name: "*"
update-types:
Expand Down
47 changes: 17 additions & 30 deletions .github/workflows/_meta-build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,8 @@ jobs:
steps:
- name: Checkout Repository
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # tag=v6.0.2
with:
persist-credentials: false

- name: Set up JDK
uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # tag=v5.2.0
Expand Down Expand Up @@ -78,15 +80,17 @@ jobs:
steps:
- name: Checkout Repository
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # tag=v6.0.2
with:
persist-credentials: false

- name: Download Artifacts
uses: actions/download-artifact@70fc10c6e5e1ce46ad2ea6f2b72d43f7d47b13c3 # tag=v8.0.0
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # tag=v8.0.1
with:
name: assembled-wars
path: target

- name: Set up QEMU
uses: docker/setup-qemu-action@c7c53464625b32c7a7e944ae62b3e17d2b600130 # tag=v3.7.0
uses: docker/setup-qemu-action@ce360397dd3f832beb865e1373c09c0e9f86d70a # tag=v4.0.0

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@4d04d5d9486b7bd6fa91e7baf45bbb4f8b9deedd # tag=v4.0.0
Expand All @@ -104,19 +108,22 @@ jobs:

- name: Set Container Tags
id: tags
env:
REF_NAME: ${{ inputs.ref-name }}
APP_VERSION: ${{ inputs.app-version }}
DISTRIBUTION: ${{ matrix.distribution }}
run: |-
IMAGE_NAME="docker.io/dependencytrack/${{ matrix.distribution }}"
REF_NAME="${{ inputs.ref-name }}"
IMAGE_NAME="docker.io/dependencytrack/${DISTRIBUTION}"
TAGS=""
TAGS_ALPINE=""

if [[ $REF_NAME == feature-* ]]; then
TAGS="${IMAGE_NAME}:${REF_NAME,,}"
TAGS_ALPINE="${IMAGE_NAME}:${REF_NAME,,}-alpine"
else
TAGS="${IMAGE_NAME}:${{ inputs.app-version }}"
TAGS_ALPINE="${IMAGE_NAME}:${{ inputs.app-version }}-alpine"
if [[ "${{ inputs.app-version }}" != "snapshot" ]]; then
TAGS="${IMAGE_NAME}:${APP_VERSION}"
TAGS_ALPINE="${IMAGE_NAME}:${APP_VERSION}-alpine"
if [[ "${APP_VERSION}" != "snapshot" ]]; then
TAGS="${TAGS},${IMAGE_NAME}:latest"
TAGS_ALPINE="${TAGS_ALPINE},${IMAGE_NAME}:latest-alpine"
fi
Expand All @@ -125,7 +132,7 @@ jobs:
echo "tags-alpine=${TAGS_ALPINE}" >> $GITHUB_OUTPUT

- name: Build multi-arch Container Image
uses: docker/build-push-action@10e90e3645eae34f1e60eeb005ba3a3d33f178e8 # tag=v6.19.2
uses: docker/build-push-action@d08e5c354a6adb9ed34480a06d141179aa583294 # tag=v7.0.0
with:
tags: ${{ steps.tags.outputs.tags }}
build-args: |-
Expand All @@ -138,7 +145,7 @@ jobs:
file: src/main/docker/Dockerfile

- name: Build Alpine multi-arch Container Image
uses: docker/build-push-action@10e90e3645eae34f1e60eeb005ba3a3d33f178e8 # tag=v6.19.2
uses: docker/build-push-action@d08e5c354a6adb9ed34480a06d141179aa583294 # tag=v7.0.0
with:
tags: ${{ steps.tags.outputs.tags-alpine }}
build-args: |-
Expand All @@ -149,23 +156,3 @@ jobs:
push: ${{ inputs.publish-container }}
context: .
file: src/main/docker/Dockerfile.alpine

- name: Run Trivy Vulnerability Scanner
if: ${{ inputs.publish-container }}
uses: aquasecurity/trivy-action@57a97c7e7821a5776cebc9bb87c984fa69cba8f1 # tag=0.35.0
env:
# https://github.com/aquasecurity/trivy-action/issues/389
TRIVY_DB_REPOSITORY: "public.ecr.aws/aquasecurity/trivy-db:2"
TRIVY_JAVA_DB_REPOSITORY: "public.ecr.aws/aquasecurity/trivy-java-db:1"
with:
image-ref: docker.io/dependencytrack/${{ matrix.distribution }}:${{ inputs.app-version }}
format: 'sarif'
output: 'trivy-results.sarif'
ignore-unfixed: true
vuln-type: 'os'

- name: Upload Trivy Scan Results to GitHub Security Tab
if: ${{ inputs.publish-container }}
uses: github/codeql-action/upload-sarif@0d579ffd059c29b07949a3cce3983f0780820c98 # tag=v3.29.5
with:
sarif_file: 'trivy-results.sarif'
33 changes: 24 additions & 9 deletions .github/workflows/ci-publish.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@
name: Publish CI

on:
release:
types:
- released
push:
tags:
- '[0-9]*'
workflow_dispatch:

permissions: { }
Expand All @@ -24,6 +24,8 @@ jobs:
fi
- name: Checkout Repository
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # tag=v6.0.2
with:
persist-credentials: false

- name: Parse Version from POM
id: parse
Expand All @@ -47,15 +49,19 @@ jobs:

update-github-release:
runs-on: ubuntu-latest
permissions:
contents: write # Required to update GitHub release assets and notes
needs:
- read-version
- call-build
steps:
- name: Checkout Repository
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # tag=v6.0.2
with:
persist-credentials: false

- name: Download Artifacts
uses: actions/download-artifact@70fc10c6e5e1ce46ad2ea6f2b72d43f7d47b13c3 # tag=v8.0.0
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # tag=v8.0.1
with:
name: assembled-wars
path: target
Expand All @@ -73,23 +79,32 @@ jobs:

- name: Update Release
env:
GITHUB_TOKEN: ${{ secrets.BOT_RELEASE_TOKEN }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
VERSION: ${{ needs.read-version.outputs.version }}
run: |-
cat << EOF >> .github/default-release-notes.md
\`\`\`text
$(cat target/checksums.txt)
\`\`\`
EOF
gh release view ${{ needs.read-version.outputs.version }} \

gh release view "${VERSION}" \
--json body --jq .body >> .github/default-release-notes.md

gh release edit ${{ needs.read-version.outputs.version }} \
gh release edit "${VERSION}" \
--notes-file ".github/default-release-notes.md"

gh release upload ${{ needs.read-version.outputs.version }} \
gh release upload "${VERSION}" \
--clobber \
target/dependency-track-apiserver.jar \
target/dependency-track-bundled.jar \
target/checksums.txt \
target/bom.json

- name: Publish Release
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
VERSION: ${{ needs.read-version.outputs.version }}
run: |-
gh release edit "${VERSION}" \
--draft=false
103 changes: 47 additions & 56 deletions .github/workflows/ci-release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,15 @@ jobs:
steps:
- name: Checkout Repository
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # tag=v6.0.2
with:
persist-credentials: false

- name: Setup Environment
id: variables
env:
VERSION_OVERWRITE: ${{ github.event.inputs.version-overwrite }}
run: |-
VERSION="${{ github.event.inputs.version-overwrite }}"
VERSION="${VERSION_OVERWRITE}"
if [[ -z ${VERSION} ]]; then
CURRENT_SNAPSHOT=`yq -p=xml '.project.version' pom.xml`
VERSION=${CURRENT_SNAPSHOT%-SNAPSHOT}
Expand All @@ -38,10 +42,6 @@ jobs:

create-release:
runs-on: ubuntu-latest
permissions:
# Required for pushing changes via git command (rather than via GitHub API).
# TODO: Use bot credentials for git, or rewrite the "Commit Version" step to use API instead.
contents: write
needs:
- prepare-release

Expand All @@ -52,6 +52,8 @@ jobs:
steps:
- name: Checkout Repository
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # tag=v6.0.2
with:
token: ${{ secrets.BOT_RELEASE_GITHUB_TOKEN }}

- name: Set up JDK
uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # tag=v5.2.0
Expand All @@ -60,54 +62,43 @@ jobs:
java-version: '21'
cache: 'maven'

- name: Set Version
run: mvn -B --no-transfer-progress versions:set -DnewVersion=${VERSION}

- name: Commit Version
env:
GITHUB_TOKEN: ${{ secrets.BOT_RELEASE_TOKEN }}
- name: Set Version and Commit
run: |-
MESSAGE="prepare-release: set version to ${VERSION}"
CONTENT=$(base64 -i pom.xml)

if [[ -z `git ls-remote --quiet --heads origin "${BRANCH_NAME}"` ]]; then
SHA=$(git rev-parse ${GITHUB_REF#refs/heads/}:pom.xml)

# https://gist.github.com/swinton/03e84635b45c78353b1f71e41007fc7c
gh api --method PUT /repos/{owner}/{repo}/contents/pom.xml \
--field message="${MESSAGE}" \
--field content="${CONTENT}" \
--field encoding="base64" \
--field branch="${GITHUB_REF_NAME}" \
--field sha="${SHA}"

git fetch
git reset --hard "origin/${GITHUB_REF_NAME}"
git config user.name "dependencytrack-bot"
git config user.email "106437498+dependencytrack-bot@users.noreply.github.com"

if [[ -z $(git ls-remote --quiet --heads origin "${BRANCH_NAME}") ]]; then
git checkout -b "${BRANCH_NAME}"
git push origin "${BRANCH_NAME}"
else
git fetch origin "${BRANCH_NAME}"
git checkout "${BRANCH_NAME}"
SHA=$(git rev-parse ${BRANCH_NAME}:pom.xml)

gh api --method PUT /repos/{owner}/{repo}/contents/pom.xml \
--field message="${MESSAGE}" \
--field content="${CONTENT}" \
--field encoding="base64" \
--field branch="${BRANCH_NAME}" \
--field sha="${SHA}"
fi

mvn -B --no-transfer-progress versions:set -DnewVersion=${VERSION}

git add pom.xml
git commit -m "prepare-release: set version to ${VERSION}"
git push origin "${BRANCH_NAME}"

git tag "${VERSION}"
git push origin "${VERSION}"

- name: Create GitHub Release
env:
GITHUB_TOKEN: ${{ secrets.BOT_RELEASE_TOKEN }}
GITHUB_TOKEN: ${{ secrets.BOT_RELEASE_GITHUB_TOKEN }}
RELEASE_VERSION: ${{ needs.prepare-release.outputs.version }}
RELEASE_BRANCH: ${{ needs.prepare-release.outputs.release-branch }}
run: |-
gh release create "${{ needs.prepare-release.outputs.version }}" \
--target "${{ needs.prepare-release.outputs.release-branch }}" \
--title "${{ needs.prepare-release.outputs.version }}" \
--generate-notes
gh release create "${RELEASE_VERSION}" \
--target "${RELEASE_BRANCH}" \
--title "${RELEASE_VERSION}" \
--generate-notes \
--draft

post-release:
runs-on: ubuntu-latest
permissions:
contents: write # Required to push pom.xml update
needs:
- prepare-release
- create-release
Expand All @@ -122,20 +113,20 @@ jobs:
with:
ref: ${{ needs.prepare-release.outputs.release-branch }}

- name: Set SNAPSHOT Version after Release
run: mvn -B --no-transfer-progress versions:set -DnewVersion=${NEXT_VERSION}
- name: Set up JDK
uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # tag=v5.2.0
with:
distribution: 'temurin'
java-version: '21'
cache: 'maven'

- name: Commit SNAPSHOT Version
env:
GITHUB_TOKEN: ${{ secrets.BOT_RELEASE_TOKEN }}
- name: Set SNAPSHOT Version after Release
run: |-
MESSAGE="prepare-iteration: set version to ${NEXT_VERSION}"
CONTENT=$(base64 -i pom.xml)
SHA=$(git rev-parse ${BRANCH_NAME}:pom.xml)

gh api --method PUT /repos/{owner}/{repo}/contents/pom.xml \
--field message="${MESSAGE}" \
--field content="${CONTENT}" \
--field encoding="base64" \
--field branch="${BRANCH_NAME}" \
--field sha="${SHA}"
git config user.name "dependencytrack-bot"
git config user.email "106437498+dependencytrack-bot@users.noreply.github.com"

mvn -B --no-transfer-progress versions:set -DnewVersion=${NEXT_VERSION}

git add pom.xml
git commit -m "prepare-iteration: set version to ${NEXT_VERSION}"
git push origin "${BRANCH_NAME}"
Loading
Loading