❌

Normale weergave

v2.8.1

Door: kmendell
19 Augustus 2026 om 03:33

Bug fixes

  • report never-pulled image refs as a distinct 'not pulled' state instead of failing the update check (#3631 by @kmendell)
  • localize category cards (#3596 by @InfinityPacer)
  • coalesce concurrent Docker image/container list calls to cut duplicate decodes (#3635 by @kmendell)
  • gate project archiving on live Docker state instead of stale persisted status(c487936 by @kmendell)
  • use stored credentials for non-Docker Hub registries (#3639 by @BobzTH)
  • add missing options to project redeploy dropdown(f7cb885 by @kmendell)
  • go1.26.6 h2c ReadHeaderTimeout regression(6d4f222 by @kmendell)
  • use errors.Is(err, fs.ErrNotExist) for acfs error checks (#3647 by @rohitkumbhar)
  • unblock git sync workspaces and pre-deploy hooks on permission edges (#3637 by @kmendell)

Dependencies

Other

Full Changelog: v2.8.0...v2.8.1

  •  

v2.8.0

Door: kmendell
13 Augustus 2026 om 03:13

New features

Bug fixes

  • move ios app passkey logic to backend(3b0fc6a by @kmendell)
  • return actual passkey identity(1ef7cc5 by @kmendell)
  • keep detecting passkeys with old ids(bfc35fb by @kmendell)
  • serialize concurrent per-container updates to prevent stranded recreate (#3541 by @JoeJoeflyn)
  • put arcane binary on $PATH in container images (#3547 by @JoeJoeflyn)
  • editor line highlight and selection rendering fully opaque on default accent color (#3554 by @kmendell)
  • git sync no longer fails on sockets or unreadable files outside the repo (#3561 by @kmendell)
  • allow saving compose files with includes outside the project directory (#3556 by @kmendell)
  • make compose up wait timeout configurable so long depends_on conditions don't abort deploys (#3557 by @kmendell)
  • webhook trigger endpoint responds 202 immediately instead of blocking until action completes (#3558 by @kmendell)
  • redeploy swarm stack when saving edited stack source (#3559 by @kmendell)
  • allow logging in with email address (#3555 by @kmendell)
  • actionable error when the projects directory is unreadable by the runtime user(802ab89 by @kmendell)
  • only log environment connect/disconnect events on real state transitions (#3564 by @kmendell)
  • resolve docker.sock host path for self-upgrade when using network_mode service (#3565 by @kmendell)
  • pick a DOCKER_HOST-reachable network for the self-update upgrader (#3566 by @kmendell)
  • dispatch agent notifications over the edge tunnel so remote environments send notifications (#3567 by @kmendell)
  • report CPU count from scheduler affinity so LXC core limits are respected (#3568 by @kmendell)
  • surface container shell websocket close codes for disconnect diagnostics (#3569 by @kmendell)
  • serve named pprof profiles instead of the index page (#3563 by @rknightion)
  • false 409 workspace conflict when saving files in imported projects (#3560 by @kmendell)
  • prevent white flash on page load and refreshes(a680185 by @kmendell)
  • stop loading every scan blob to serve one list page (#3610 by @kmendell)
  • show the real v2.x.x-next.xx upgrade target for next builds(5321b2a by @kmendell)

Performance improvements

  • cache validated API keys and debounce last_used_at writes (#3603 by @kmendell)
  • omit the output column from the build history list query (#3604 by @kmendell)
  • filter unhealthy containers at the daemon in auto-heal (#3605 by @kmendell)
  • stop building a new Docker CLI per compose call (#3607 by @kmendell)
  • share snapshot production and cheapen badge queries (#3608 by @kmendell)
  • cache GPU stats and pace the system-stats sampler to subscribers (#3609 by @kmendell)
  • batch message appends and drop the per-line re-SELECT (#3611 by @kmendell)
  • materialize the effective config once per refresh (#3619 by @kmendell)

Dependencies

  • bump github.com/google/go-containerregistry from 0.21.7 to 0.21.8 in /backend (#3529 by @dependabot[bot])
  • bump github.com/shirou/gopsutil/v4 from 4.26.6 to 4.26.7 in /backend (#3530 by @dependabot[bot])
  • bump gorm.io/driver/postgres from 1.6.1 to 1.6.2 in /backend (#3528 by @dependabot[bot])
  • bump the aws-sdk-go-v2 group across 1 directory with 3 updates (#3527 by @dependabot[bot])
  • bump @internationalized/date from 3.12.2 to 3.12.3 (#3521 by @dependabot[bot])
  • bump the tanstack-table group across 1 directory with 2 updates (#3514 by @dependabot[bot])
  • bump tailwind-variants from 3.3.0 to 3.3.1 (#3523 by @dependabot[bot])
  • bump pnpm to v11.21.0(9e2fe2f by @kmendell)
  • bump github.com/docker/cli from 29.7.1+incompatible to 29.7.2+incompatible in /backend (#3590 by @dependabot[bot])
  • bump the tanstack-table group across 1 directory with 2 updates (#3575 by @dependabot[bot])
  • bump github.com/moby/buildkit from 0.32.1 to 0.32.2 in /backend (#3587 by @dependabot[bot])
  • bump github.com/nicholas-fedor/shoutrrr from 0.16.3 to 0.17.0 in /backend (#3585 by @dependabot[bot])
  • bump github.com/libtnb/sqlite from 1.2.1 to 1.2.2 in /backend (#3592 by @dependabot[bot])
  • bump the aws-sdk-go-v2 group in /backend with 3 updates (#3584 by @dependabot[bot])
  • bump github.com/google/go-containerregistry from 0.21.8 to 0.21.9 in /backend (#3593 by @dependabot[bot])
  • bump github.com/klauspost/compress from 1.19.1 to 1.19.2 in /backend (#3588 by @dependabot[bot])
  • bump the codemirror group across 1 directory with 2 updates (#3576 by @dependabot[bot])
  • bump react-email from 6.9.1 to 6.9.2 (#3583 by @dependabot[bot])
  • bump marked from 18.0.7 to 18.0.9 (#3591 by @dependabot[bot])
  • bump go.getarcane.app/builds to v0.3.1(6d2ec79 by @kmendell)
  • bump @sveltejs/kit from 3.0.0-next.13 to 3.0.0-next.21 (#3579 by @dependabot[bot])
  • bump google.golang.org/protobuf from 1.36.12-0.20260120151049-f2248ac996af to 1.36.12 in /backend (#3617 by @dependabot[bot])

Other

Full Changelog: v2.7.0...v2.8.0

  •  

v2.7.0

Door: kmendell
6 Augustus 2026 om 00:21

Important

Project variable resolution now matches the Docker Compose CLI

Previously, environment variables set on Arcane's own container (such as PORT) could be picked up when resolving ${VARIABLE} references in your projects' compose files. This could cause surprising results β€” for example, a project using ${PORT:-8191} could end up binding to Arcane's own port instead of its default (#3499).

Starting with this release, variable references in a project's compose file resolve only from:

  • your global Variables (.env.global)
  • the project's own .env file
  • defaults in the compose file itself (${VAR:-default})
  • timezone and locale from Arcane's environment (TZ, LANG, LANGUAGE, LC_ALL)

This means a project deployed through Arcane now resolves its variables the same way as running docker compose up in the project directory, and projects can no longer accidentally pick up Arcane's own configuration.

If a project referenced a variable that was only defined on Arcane's container, add it under Customization β†’ Variables to share it with all projects, or to that project's .env file. No other action is needed.

New features

  • simplify build registry image references (#3243 by @traeli)
  • add gated admin password reset to interal CLI (#3470 by @kmendell)
  • per user passkey mfa / passwordless login support (#3493 by @kmendell)
  • custom payload generic webhooks and google chat notifications (#3417 by @khanhx)
  • bump docker/compose to v5.4.0, gate diverged-volume recreation behind deploy option, pull pre_start hook and image-volume images (#3502 by @kmendell)

Bug fixes

  • synchronize structured log toggle state (#3418 by @Kstateag)
  • project log timestamps (#3456 by @Kstateag)
  • improve lifecycle permission diagnostics (#3404 by @Kstateag)
  • gate image event watcher to prevent registry rate limits (#3467 by @kmendell)
  • serialize bulk deletes and refresh image data (#3466 by @kmendell)
  • refresh image labels during self-upgrade (#3479 by @kmendell)
  • forward icon catalog setting over tunnel endpoints (#3495 by @kmendell)
  • update overridden env keys in place in effective .env instead of appending duplicates (#3496 by @kmendell)
  • bulk remove doing nothing on non-HTTPS deployments (#3498 by @kmendell)
  • stale environment bootstrap API keys accumulating and being undeletable (#3501 by @kmendell)
  • sheet panel animation restarting on hover during open (#3503 by @kmendell)
  • only grant default admin role during bootstrap or zero-admin recovery, not to any account named arcane (#3504 by @kmendell)
  • enforce configured password policy on all password creation and reset paths (#3505 by @kmendell)
  • stop leaking Arcane's own process environment into compose variable interpolation (#3508 by @kmendell)

CLI - Bug fixes

Dependencies

Other

  • move to coder/websocket library as it is actively maintained (#3431 by @kmendell)
  • move automation logic to use actors (#3458 by @kmendell)

Full Changelog: v2.6.0...v2.7.0

  •  

v2.6.0

Door: kmendell
29 Juli 2026 om 20:09

New features

  • raw docker CLI output for all operations + interactive watch mode (#3376 by @kmendell)
  • clickable dashboard tiles, volumes tile, and default landing page (#3383 by @kmendell)
  • add row, bulk, and Update All actions to the updates page (#3398 by @kmendell)

Bug fixes

  • harden gRPC tunnel reliability and request lifecycle (#3325 by @kmendell)
  • prevent image update checks from getting stuck in a running state (#3327 by @kmendell)
  • preserve IPAM fields in network inspect responses (#3335 by @kmendell)
  • remove full stack trace from logging(1bed071 by @kmendell)
  • correct swarm resource scoping and stack deploy conformance (#3385 by @kmendell)
  • tear down abandoned dashboard and activity streams promptly (#3388 by @kmendell)
  • skip unreadable directories instead of discarding the project file tree (#3393 by @kmendell)
  • preserve duplicate diagnostic log entries (#3390 by @Kstateag)
  • resolve relative compose paths that escape the projects mount (#3401 by @kmendell)
  • harden credential targets and browse paths (#3403 by @kmendell)
  • resolve nil dereferences and a database pool leak(c89ac52 by @kmendell)
  • handle unchecked error returns across backend and CLI(e4a5420 by @kmendell)
  • honor updater opt-out labels during image scans (#3405 by @Kstateag)
  • stream environment liveness over a multiplexed client stream (#3406 by @kmendell)
  • crashes, goroutine leaks, and hot-path performance in the backend (#3425 by @kmendell)
  • enforce actor privilege checks in user service (#3426 by @kmendell)

CLI - Bug fixes

Dependencies

  • bump actions/setup-go from 6 to 7 (#3342 by @dependabot[bot])
  • bump pnpm to v11.16.0(d0339d4 by @kmendell)
  • bump @tanstack/svelte-query from 6.1.36 to 6.1.37 (#3363 by @dependabot[bot])
  • bump @fontsource-variable/montserrat from 5.2.8 to 5.3.0 (#3360 by @dependabot[bot])
  • bump react-email from 6.8.1 to 6.9.0 (#3352 by @dependabot[bot])
  • bump svelte from 5.56.4 to 5.56.7 (#3351 by @dependabot[bot])
  • bump github.com/docker/cli from 29.6.1+incompatible to 29.6.2+incompatible in /backend (#3340 by @dependabot[bot])
  • bump @fontsource-variable/geist-mono from 5.2.8 to 5.3.0 (#3364 by @dependabot[bot])
  • bump github.com/klauspost/compress from 1.19.0 to 1.19.1 in /backend (#3339 by @dependabot[bot])
  • bump google.golang.org/grpc from 1.82.0 to 1.82.1 in /backend (#3337 by @dependabot[bot])
  • bump github.com/moby/buildkit from 0.31.1 to 0.31.2 in /backend (#3336 by @dependabot[bot])
  • bump the tanstack-table group across 1 directory with 2 updates (#3341 by @dependabot[bot])
  • bump @tanstack/virtual-core from 3.17.4 to 3.17.5 (#3355 by @dependabot[bot])
  • bump @sveltejs/kit from 3.0.0-next.8 to 3.0.0-next.11 (#3362 by @dependabot[bot])
  • bump @codemirror/lang-markdown from 6.5.0 to 6.5.1 in the codemirror group across 1 directory (#3344 by @dependabot[bot])
  • bump github.com/nicholas-fedor/shoutrrr from 0.16.1 to 0.16.2 in /backend (#3396 by @dependabot[bot])
  • bump the aws-sdk-go-v2 group in /backend with 3 updates (#3394 by @dependabot[bot])
  • bump github.com/libtnb/sqlite from 1.2.0 to 1.2.1 in /backend (#3395 by @dependabot[bot])
  • bump github.com/pressly/goose/v3 from 3.27.2 to 3.27.3 in /backend (#3397 by @dependabot[bot])

Other

Full Changelog: v2.5.0...v2.6.0

  •  

v2.5.0

Door: kmendell
21 Juli 2026 om 01:30

New features

  • unify swarm node agent deployment and easy join swarm agent/nodes (#3279 by @kmendell)
  • replace scheduled image polling with Docker event-driven update checks (#3290 by @kmendell)
  • redesigned events view to remove bulky dialog (#3301 by @kmendell)
  • redesigned templates browser and view (#3304 by @kmendell)
  • redesign global variables with environment scoping and secrets (#3311 by @kmendell)
  • rework activity center ui/ux and backend lifecycle (#3313 by @kmendell)

Bug fixes

  • preserve tag when saving update records for tag@digest-pinned images (#3242 by @pkoutsovasilis)
  • tab routing for all pages can cuase in correct tabs to tr yand be shown (#3249 by @kmendell)
  • generate remote swarm node agent tokens on the manager(a0a77dc by @kmendell)
  • recover auth and reload after self-update (#3289 by @kmendell)
  • show correct host IP in service port tooltips (#3299 by @kmendell)
  • classify remote Compose build images as local only (#3300 by @kmendell)
  • move project image backfill into image watcher startup (#3307 by @kmendell)
  • restore image polling in additon to watcher bus(9690722 by @kmendell)
  • prevent credential reuse after target URL changes (#3317 by @kmendell)
  • prevent size volume sorting from blocking navigation (#3316 by @kmendell)

Performance improvements

Dependencies

  • bump go.getarcane.app/builds to v0.1.1(347c85b by @kmendell)
  • bump marked from 18.0.5 to 18.0.6 (#3275 by @dependabot[bot])
  • bump github.com/getarcaneapp/arcane/types/v2 from 2.3.2 to 2.4.0 in /cli (#3253 by @dependabot[bot])
  • bump github.com/wneessen/go-mail from 0.8.1-0.20260707133953-7c4d4401589c to 0.8.1 in /backend (#3263 by @dependabot[bot])
  • bump golang.org/x/net from 0.56.0 to 0.57.0 in /backend (#3261 by @dependabot[bot])
  • bump golang.org/x/mod from 0.37.0 to 0.38.0 in /backend (#3266 by @dependabot[bot])
  • bump react-email from 6.6.6 to 6.7.0 (#3256 by @dependabot[bot])
  • bump the aws-sdk-go-v2 group in /backend with 2 updates (#3259 by @dependabot[bot])
  • bump github.com/libtnb/sqlite from 1.1.2 to 1.2.0 in /backend (#3268 by @dependabot[bot])
  • bump the tanstack-table group across 1 directory with 2 updates (#3254 by @dependabot[bot])
  • bump @uiw/codemirror-themes from 4.25.10 to 4.25.11 (#3274 by @dependabot[bot])
  • bump @sveltejs/kit to 3.0.0-next.8(f75cd06 by @kmendell)
  • bump go.getarcane.app/streams to v0.2.0(78dbace by @kmendell)
  • bump react-email from 6.7.0 to 6.8.1 (#3284 by @dependabot[bot])
  • bump the tanstack-table group across 1 directory with 2 updates (#3281 by @dependabot[bot])
  • bump the aws-sdk-go-v2 group in /backend with 3 updates (#3287 by @dependabot[bot])
  • bump @tanstack/virtual-core from 3.17.3 to 3.17.4 (#3283 by @dependabot[bot])
  • bump github.com/lmittmann/tint from 1.1.3 to 1.2.0 in /backend (#3288 by @dependabot[bot])

Other

Full Changelog: v2.4.0...v2.5.0

  •  

v2.4.0

Door: kmendell
11 Juli 2026 om 04:49

New features

Bug fixes

  • scope project update backup to changed files and lazy-load file tree (#3158 by @kmendell)
  • workspace editor showing stale file content after save (#3188 by @kmendell)
  • don't overwrite good image update records on registry rate-limit errors (#3190 by @kmendell)
  • skip SMTP auth without full credentials and add none auth mode (#3192 by @kmendell)
  • git clone failures with Azure DevOps repositories (#3197 by @kmendell)
  • fix https links on containers list (#3191 by @ribbal)
  • gitops sync failing with 'invalid hostPort: /placeholder-undefined' for compose files using variable defaults (#3198 by @kmendell)
  • allow updater to update specific resource id's (#3206 by @kmendell)
  • remove rbac from notification dispatch endpoint for agents (#3223 by @kmendell)
  • fix image polling schedule rescheduling api shape (#3224 by @kmendell)
  • overlay arcane env overrides on top of git env instead of copying (#3226 by @kmendell)
  • scope aggregate access and isolate frontend session state (#3227 by @kmendell)
  • prevent stale data across environment switches (#3228 by @kmendell)
  • prevent invalidated fetches from repopulating caches (#3229 by @kmendell)
  • wait for schedulers during shutdown (#3230 by @kmendell)
  • preserve external .env symlinks on save (#3236 by @kmendell)
  • restore tooltips and focus behavior for dashboard actions (#3237 by @kmendell)
  • aggregate hub overload warnings (#3240 by @kmendell)

CLI - Bug fixes

Dependencies

Other

  • use go.getarcane.app/docker/convert for docker run to yaml conversions (#3165 by @kmendell)
  • move crypto logic into go.getarcane.app/sys/crypto (#3164 by @kmendell)
  • extract streaming logic to go.getarcane.app/streams (#3166 by @kmendell)
  • import shadcn-svelte css and cleanup frontned css files (#3172 by @kmendell)
  • always pull latest updates for environment updater (#3196 by @kmendell)

Full Changelog: v2.3.2...v2.4.0

  •  

v2.3.2

Door: kmendell
5 Juli 2026 om 00:01

Bug fixes

  • dialog now owning there own close states, cause mutiple to show at one time(d253fc5 by @kmendell)
  • hide phantom projects from showing in the frontend when deleted (#3136 by @kmendell)
  • keep modals and menus opaque in dark mode when Glass & Blur is off (#3139 by @othyn)
  • nested compose files discovery permission issues (#3096 by @kmendell)
  • ntfy tls regression, image update notifcation flag not be recognized (#3143 by @kmendell)
  • notification sending rework for reliability (#3144 by @kmendell)
  • use explicit context for notifications(6987b5e by @kmendell)
  • preserve .env overrides during git directory sync (#3095 by @kmendell)
  • use correct compose name so services match the project (#3156 by @kmendell)
  • pass registry auth to compose-initiated pulls during up (#3162 by @kmendell)

Documentation

Dependencies

  • bump github.com/pressly/goose/v3 from 3.27.1 to 3.27.2 in /backend (#3153 by @dependabot[bot])
  • bump github.com/klauspost/compress from 1.18.6 to 1.19.0 in /backend (#3155 by @dependabot[bot])
  • bump github.com/docker/compose/v5 from 5.2.0 to 5.3.0 in /backend (#3154 by @dependabot[bot])
  • bump github.com/getarcaneapp/arcane/types/v2 from 2.2.0 to 2.3.0 in /cli (#3150 by @dependabot[bot])
  • bump the aws-sdk-go-v2 group in /backend with 3 updates (#3151 by @dependabot[bot])
  • bump google.golang.org/grpc from 1.81.1 to 1.82.0 in /backend (#3152 by @dependabot[bot])
  • bump charm.land/lipgloss/v2 from 2.0.4 to 2.0.5 in /cli (#3149 by @dependabot[bot])
  • bump go.getarcane.app/updater to v0.5.0(8b21564 by @kmendell)

Other

Full Changelog: v2.3.1...v2.3.2

  •  

v2.3.1

Door: kmendell
2 Juli 2026 om 19:29

Bug fixes

  • discard env_file when loading projects to match compose CLI config-hash (#3100 by @pkoutsovasilis)
  • set explicit gorm LRU cache TTL to avoid constantly rising heap memory (#3102 by @kmendell)
  • only display memory usage thats non-reclaimable (#3105 by @kmendell)

Dependencies

  • bump prettier from 3.9.0 to 3.9.3 (#3116 by @dependabot[bot])
  • bump @tanstack/svelte-query from 6.1.35 to 6.1.36 (#3115 by @dependabot[bot])
  • bump golangci/golangci-lint-action from 9.2.1 to 9.3.0 (#3106 by @dependabot[bot])
  • bump the tanstack-table group across 1 directory with 2 updates (#3126 by @dependabot[bot])
  • bump github.com/compose-spec/compose-go/v2 from 2.12.1 to 2.13.0 in /backend (#3124 by @dependabot[bot])
  • bump github.com/compose-spec/compose-go/v2 from 2.12.1 to 2.13.0 in /types (#3107 by @dependabot[bot])
  • bump github.com/shirou/gopsutil/v4 from 4.26.5 to 4.26.6 in /backend (#3123 by @dependabot[bot])
  • bump github.com/getarcaneapp/arcane/types/v2 from 2.1.0 to 2.2.0 in /cli (#3108 by @dependabot[bot])
  • bump the aws-sdk-go-v2 group in /backend with 3 updates (#3130 by @dependabot[bot])
  • bump pnpm to v11.9.0(2a976b6 by @kmendell)

Full Changelog: v2.3.0...v2.3.1

  •  
❌