github artifact-keeper/artifact-keeper-web v1.1.0
Artifact Keeper Web 1.1.0

latest releases: v1.11.2, v1.11.1, v1.11.0...
6 months ago

Artifact Keeper Web 1.1.0 ships platform parity with artifact-keeper 1.1.0 backend. This release consolidates rc.5 through rc.9 plus the post-RC work, and is the first official stable of the web frontend.

Container images:

  • Docker Hub: docker pull artifactkeeper/web:1.1.0 (or :latest)
  • GHCR: docker pull ghcr.io/artifact-keeper/artifact-keeper-web:1.1.0 (or :latest)

Sponsors

Thank you to our backers for supporting ongoing development:

Become a sponsor to support the project and get your name listed here.

Thank You

  • @TechEnchante for the admin permissions UI work with repository selection (#186) — first contribution
  • @nikitatsym for the SSO callback auth-refresh fix (#276) — first contribution

Highlights

  • Chunked upload for multi-GB artifacts with pause / resume / cancel, per-chunk retry, SHA-256 verification, and an engaged-at-100MB threshold (#218)
  • Repository-scoped access tokens restrictable by format filters, name pattern, and labels (#294)
  • Repository Settings and Notifications tabs for inline edit without leaving the detail view (#293, #298)
  • SMTP configuration in admin settings (#299)
  • Webhook payload template selector (#295)
  • Quarantine status badges and banners on artifacts (#292)
  • Auth source badges on the admin users list (#291)
  • Account lockout UX on login failure and password expiry warning / force-change flow (#284, #286)
  • Global and root error boundaries with Next.js error.tsx / global-error.tsx (#290)
  • Admin permissions UI with repository selection (#186)
  • Expanded Playwright E2E suite (250+ interaction tests, RBAC roles, visual regression, sharding) and Vitest unit tests with coverage gating

See CHANGELOG.md for the full categorized list.


What's Changed

  • test: add Playwright tests for private repo visibility by @brandonrc in #105
  • fix: API keys/access tokens not showing after creation by @brandonrc in #106
  • fix: add /v2 to middleware matcher for Docker login by @brandonrc in #108
  • test: improve new code coverage to meet 80% quality gate by @brandonrc in #112
  • test: improve new code coverage to meet 80% quality gate (round 2) by @brandonrc in #113
  • fix: resolve flaky E2E tests for security scans and access tokens by @brandonrc in #119
  • fix: correct download URL pattern to match backend route by @brandonrc in #115
  • test: add E2E tests for edit, toggle, and action button interactions by @brandonrc in #121
  • Add compatibility release gate for tagged releases by @brandonrc in #122
  • chore: add GitHub issue templates by @brandonrc in #136
  • chore: remove documentation template, link to artifact-keeper-site for doc issues by @brandonrc in #137
  • fix: use correct type param for staging repo filtering by @brandonrc in #138
  • chore: bump tailwindcss from 4.2.0 to 4.2.1 by @dependabot[bot] in #135
  • chore: bump @tailwindcss/postcss from 4.2.0 to 4.2.1 by @dependabot[bot] in #129
  • chore: bump @aws-sdk/client-polly from 3.995.0 to 3.1000.0 by @dependabot[bot] in #130
  • chore: bump actions/attest-build-provenance from 3 to 4 by @dependabot[bot] in #126
  • chore: bump actions/upload-artifact from 6.0.0 to 7.0.0 by @dependabot[bot] in #127
  • chore: bump actions/download-artifact from 7 to 8 by @dependabot[bot] in #128
  • chore: bump actions/checkout from 4 to 6 by @dependabot[bot] in #125
  • chore: bump react-resizable-panels from 4.6.5 to 4.7.0 by @dependabot[bot] in #132
  • chore: bump @artifact-keeper/sdk from 1.1.0-rc.2 to 1.1.0-rc.5 by @dependabot[bot] in #131
  • chore: bump @types/node from 20.19.30 to 25.3.3 by @dependabot[bot] in #133
  • feat: add staging repository creation to UI by @brandonrc in #142
  • chore: temporarily ignore eslint v10 in dependabot by @brandonrc in #140
  • test: add E2E tests for access token creation by @brandonrc in #151
  • chore: bump lucide-react from 0.575.0 to 0.577.0 by @dependabot[bot] in #149
  • chore: bump react-resizable-panels from 4.7.0 to 4.7.1 by @dependabot[bot] in #147
  • chore: bump eslint from 9.39.2 to 9.39.3 by @dependabot[bot] in #145
  • chore: bump actions/setup-node from 6.2.0 to 6.3.0 by @dependabot[bot] in #144
  • chore: bump docker/login-action from 3 to 4 by @dependabot[bot] in #143
  • chore: bump @aws-sdk/client-polly from 3.1000.0 to 3.1002.0 by @dependabot[bot] in #146
  • chore: bump rollup from 4.57.1 to 4.59.0 by @dependabot[bot] in #117
  • chore: bump framer-motion from 12.34.3 to 12.35.0 by @dependabot[bot] in #148
  • chore: bump minimatch from 3.1.2 to 3.1.5 by @dependabot[bot] in #141
  • feat: show git commit hash in sidebar and settings by @brandonrc in #153
  • Add artifact content viewer with syntax highlighting by @brandonrc in #154
  • chore: bump docker/metadata-action from 5 to 6 by @dependabot[bot] in #155
  • chore: bump docker/build-push-action from 6 to 7 by @dependabot[bot] in #156
  • chore: bump react-resizable-panels from 4.7.1 to 4.7.2 by @dependabot[bot] in #157
  • chore: bump docker/setup-buildx-action from 3 to 4 by @dependabot[bot] in #158
  • chore: bump @types/node from 25.3.3 to 25.3.5 by @dependabot[bot] in #159
  • chore: bump eslint from 9.39.3 to 9.39.4 by @dependabot[bot] in #161
  • chore: bump framer-motion from 12.35.0 to 12.35.1 by @dependabot[bot] in #160
  • chore: bump shiki from 4.0.1 to 4.0.2 by @dependabot[bot] in #171
  • chore: bump framer-motion from 12.35.1 to 12.36.0 by @dependabot[bot] in #174
  • chore: bump @aws-sdk/client-polly from 3.1004.0 to 3.1009.0 by @dependabot[bot] in #176
  • chore: bump @types/node from 25.3.5 to 25.5.0 by @dependabot[bot] in #179
  • chore: bump undici from 7.22.0 to 7.24.1 by @dependabot[bot] in #170
  • chore: bump vitest from 4.0.18 to 4.1.0 by @dependabot[bot] in #177
  • chore: bump next from 16.1.6 to 16.1.7 by @dependabot[bot] in #180
  • chore: bump @vitejs/plugin-react from 5.1.4 to 6.0.1 by @dependabot[bot] in #173
  • feat: add upstream auth fields to remote repo create/edit dialogs by @brandonrc in #181
  • Error handling, accessibility, type safety, and Server Components by @brandonrc in #169
  • feat: add storage quota field to repository create and edit dialogs by @brandonrc in #184
  • feat: suggest default upstream URL based on repository format by @brandonrc in #185
  • fix: include member_repos in virtual repo create, fix members list field mapping by @brandonrc in #187
  • staging: validate PR #186 permissions fix (SonarCloud gate) by @brandonrc in #188
  • Fix permission save flow and add repository selection in admin permissions UI by @TechEnchante in #186
  • chore: bump flatted from 3.3.3 to 3.4.2 by @dependabot[bot] in #183
  • chore: bump jsdom from 28.1.0 to 29.0.0 by @dependabot[bot] in #175
  • Fix admin token management for other users by @brandonrc in #191
  • fix: add rewrite so /auth/callback reaches the SSO callback page by @brandonrc in #201
  • fix: handle forced password change in E2E test setup by @brandonrc in #202
  • fix(security): tighten CSP, replace Math.random, sanitize SSO errors by @brandonrc in #217
  • chore: bump picomatch by @dependabot[bot] in #221
  • chore: bump fast-xml-parser and @aws-sdk/xml-builder by @dependabot[bot] in #220
  • chore: bump react-resizable-panels from 4.7.2 to 4.7.5 by @dependabot[bot] in #200
  • chore: bump @tailwindcss/postcss from 4.2.1 to 4.2.2 by @dependabot[bot] in #198
  • chore: bump framer-motion from 12.36.0 to 12.38.0 by @dependabot[bot] in #195
  • chore: bump react-hook-form from 7.71.2 to 7.72.0 by @dependabot[bot] in #193
  • ci(mergify): upgrade configuration to current format by @mergify[bot] in #232
  • chore: bump jsdom from 29.0.0 to 29.0.1 by @dependabot[bot] in #224
  • chore: bump @aws-sdk/client-polly from 3.1009.0 to 3.1019.0 by @dependabot[bot] in #225
  • chore: bump @vitest/coverage-v8 from 4.1.0 to 4.1.2 by @dependabot[bot] in #226
  • chore: bump lucide-react from 0.577.0 to 1.7.0 by @dependabot[bot] in #227
  • fix(devops): exclude pre-release tags from Docker Hub :latest by @brandonrc in #223
  • chore: bump @artifact-keeper/sdk to 1.1.0-rc.9 by @brandonrc in #231
  • chore: update SDK to v1.1.0 by @brandonrc in #233
  • chore: use self-hosted runners for CI by @brandonrc in #277
  • chore: bump lodash from 4.17.23 to 4.18.1 by @dependabot[bot] in #234
  • chore: bump defu from 6.1.4 to 6.1.6 by @dependabot[bot] in #235
  • chore: bump docker/login-action from 4.0.0 to 4.1.0 by @dependabot[bot] in #236
  • chore: bump SonarSource/sonarqube-scan-action from 7.0.0 to 7.1.0 by @dependabot[bot] in #237
  • chore: bump react-resizable-panels from 4.7.5 to 4.9.0 by @dependabot[bot] in #238
  • chore: bump react-hook-form from 7.72.0 to 7.72.1 by @dependabot[bot] in #239
  • chore: bump @aws-sdk/client-polly from 3.1019.0 to 3.1024.0 by @dependabot[bot] in #240
  • chore: bump eslint-config-next from 16.1.6 to 16.2.2 by @dependabot[bot] in #243
  • chore: bump @tanstack/react-query from 5.90.21 to 5.96.2 by @dependabot[bot] in #244
  • chore: bump actions/upload-artifact from 7.0.0 to 7.0.1 by @dependabot[bot] in #248
  • chore: bump aws-actions/configure-aws-credentials from 6.0.0 to 6.1.0 by @dependabot[bot] in #249
  • chore: bump vite from 8.0.1 to 8.0.8 by @dependabot[bot] in #272
  • chore: bump next from 16.1.7 to 16.2.3 by @dependabot[bot] in #247
  • feat: add /api/version endpoint with SCM-derived version by @brandonrc in #278
  • feat: display password policy requirements on password fields by @brandonrc in #281
  • Add /api/health endpoint for container health checks by @brandonrc in #282
  • ci: replace SonarCloud with native 80% coverage and 3% duplication gates by @brandonrc in #289
  • fix: handle empty response bodies in apiFetch to prevent stale cache by @brandonrc in #287
  • fix: show repository name in security dashboard scores table by @brandonrc in #279
  • fix: show correct scan status when scan fails to execute by @brandonrc in #288
  • Fix CVE findings showing GHSA instead of CVE identifier by @brandonrc in #280
  • fix: increase proxy body size limit for large artifact uploads by @brandonrc in #285
  • feat: add password expiry warning banner and force-change flow by @brandonrc in #286
  • Show account lockout status on login failure by @brandonrc in #284
  • feat: add global-error and root error boundary pages by @brandonrc in #290
  • feat: show auth source badge on admin users list and edit dialog by @brandonrc in #291
  • feat: show artifact quarantine status in list and detail views by @brandonrc in #292
  • feat: add notification configuration tab to repository settings by @brandonrc in #293
  • Add SMTP configuration to admin settings by @brandonrc in #299
  • chore: bump @artifact-keeper/sdk to v1.1.4 by @brandonrc in #297
  • feat: add Settings tab for greater repository edit control by @brandonrc in #298
  • Display password reuse rejection message on change password by @brandonrc in #296
  • feat: add payload template selector to webhook create dialog by @brandonrc in #295
  • feat: add repository-scoped access token management by @brandonrc in #294
  • fix: disambiguate E2E selectors for access token dialog name field by @brandonrc in #301
  • fix: cap access token dialog height to prevent viewport overflow by @brandonrc in #312
  • chore: bump lucide-react from 1.7.0 to 1.8.0 by @dependabot[bot] in #310
  • chore: bump vitest from 4.1.2 to 4.1.4 by @dependabot[bot] in #304
  • chore: bump react-resizable-panels from 4.9.0 to 4.10.0 by @dependabot[bot] in #303
  • chore: bump @tanstack/react-query from 5.96.2 to 5.99.2 by @dependabot[bot] in #311
  • chore: bump @aws-sdk/client-polly from 3.1024.0 to 3.1032.0 by @dependabot[bot] in #309
  • chore: bump @types/node from 25.5.0 to 25.6.0 by @dependabot[bot] in #306
  • chore: bump next from 16.2.3 to 16.2.4 by @dependabot[bot] in #302
  • feat: chunked upload support in web UI for large artifacts (#563) by @brandonrc in #218
  • fix: refresh auth context after SSO callback token exchange by @nikitatsym in #276
  • fix: make code duplication gate result visible and fail-fast by @brandonrc in #313
  • docs: add [1.1.0] changelog entry by @brandonrc in #314

New Contributors

Full Changelog: v1.1.0-rc.8...v1.1.0

Don't miss a new artifact-keeper-web release

NewReleases is sending notifications on new releases.