Changelog

Ce qui a changé, version après version

Toutes les versions d'eQuantic Space, avec les notes que montrent l'installateur et l'écran de mise à jour de la plateforme.

Une installation self-hosted peut se mettre à jour depuis la plateforme (voir comment) ou depuis son serveur avec curl -fsSL https://get.equantic.space/install.sh | sudo sh

Les notes de version sont publiées en anglais, telles que chaque version les livre.

0.80.0

Corrections

  • a paused repository's Pipelines tab reads its workflows as paused, closes #645 #645
  • eqs reads only its own arguments under BUN_OPTIONS, closes #633 oven-sh/bun#21496 #633
  • eqs runs finds a run by repository and number, closes #634 #635 #635 #634

Nouveautés

  • eqs services update, deploy --image --wait, and where a service answers, closes #636 #637 #638 #636 #638 #637 #638 #636 #637 #636

0.79.0

Nouveautés

  • pause or resume many repositories at once, and list them by visibility

0.78.2

Corrections

  • a build's step names stay inside the BuildKit card

0.78.1

Corrections

  • the release bundle publishes with a token minted after its build

0.77.0

Corrections

  • the web image traces only the docs it reads, not the whole app

Nouveautés

  • a CI job's disk is one budget, like a runner's (ADR-038)

0.75.2

Corrections

  • an evicted job says why, even when the kubelet's verdict lands after the step
  • every registry 401 challenges, so dotnet restore sends its credentials again

0.75.1

Corrections

  • package registries fail closed, and nobody publishes into another workspace's package

0.75.0

Nouveautés

  • CI storage keeps to a policy, so the disk never fills

0.72.2

Corrections

  • a capacity field left empty means automatic, and says so

0.72.1

Corrections

  • the idle sweep looks at a machine before deciding about it

0.72.0

Nouveautés

  • a runner VM that wakes for a job and switches itself off

0.71.1

Corrections

  • the graph actually routes its edges, and the api boots

0.70.0

Corrections

  • a workflow edge goes around the cards it used to cross

Nouveautés

  • a CI job's memory grows with the job (ADR-035 F1)
  • a deployed version says which pipeline built it, and a run says where it went
  • every run of the workspace on one page, newest first
  • the console draws the docker push it used to transcribe
  • the platform ends runs that nothing else will end

0.69.0

Corrections

  • a registered machine's key is written where the api can write
  • providers get the api's public URL for their webhooks
  • the platform can reach its runner VMs
  • the platform keeps room to update itself

Nouveautés

  • **cli:** eqs runs cancel, dispatch and rerun
  • pick many runs and cancel them, in the product's own dialog

0.68.0

Corrections

  • buildx builds with a type=gha cache run on the platform

Nouveautés

  • a slim release for x64 and arm64, proven before it publishes
  • concurrency queue and job-level groups, with GitHub's rules

0.67.0

Nouveautés

  • a concurrency group runs one run at a time, and keeps one waiting

0.66.1

Corrections

  • a CI slot is a whole pod, so the scheduler can place it

0.66.0

Corrections

  • a CI job gets the room the node really has, and capacity fields take a number and a unit
  • a due date shows the day that was picked, in São Paulo too
  • a settings section on a phone is a screen of its own, not the desktop squeezed in

Nouveautés

  • the item's ⋯ on a phone — duplicate, reassign, due date, link, delete
  • the run page — a resizable job list, a graph you can dock beside the console, and matrix names that read

0.65.0

Nouveautés

  • an item reads as a screen on a phone, not as a desktop modal

0.64.1

Corrections

  • every menu escapes its clipping ancestor, through one anchored primitive

0.64.0

Nouveautés

  • a Space and its containers are navigable on a phone (ADR-030 M1b)
  • the platform update has a door in Settings, on a phone too

0.63.0

Nouveautés

  • a job's workspace sits where GitHub puts it, so a step can write beside its checkout

0.62.2

Corrections

  • a job's whole log reaches eqs runs logs and the run page, from its first line
  • CI on the cluster claims no job before measuring it, waits for room instead of failing, and keeps the image's PATH

0.62.0

Nouveautés

  • every link on the site and the platform leads to a real page

0.61.2

Corrections

  • a page that redirects no longer flashes an error on a full load (Next.js 16.3.5), closes react/react#36911 vercel/next.js#78396

0.61.1

Corrections

  • Help and Documentation open the product docs in the reader's language
  • the password reset email and social sign-in land on the platform, not a 404 on the api

0.61.0

Nouveautés

  • every screen of the platform speaks both languages

0.60.0

Corrections

  • the arg-secret repair read state another boot pass had not written yet
  • the CLI still promised the auto-rollout that env apply replaced

Nouveautés

  • eqs mq — brokers, with the verbs a broker actually has (ADR-031 D5)
  • a RunnerHost is a first-class row, and the skip stops lying
  • Neo4j, where the ADR's read-only claim turns out to be true (ADR-031 D4)
  • Redis and MongoDB, and the third answer they forced (ADR-031 D3)
  • run jobs on machines the cluster cannot be (ADR-032)
  • the platform speaks both languages — shell, settings, repositories and deploy

0.59.0

Corrections

  • eqs db never sent its statement — no JSON content type
  • the api disconnected a Prisma client it does not own
  • the generated Redis password was on the command line

Nouveautés

  • run one command in a service, without a terminal (ADR-031 amendment)

0.58.0

Corrections

  • the account issuer backfill locked every existing user out
  • the mirror handler triggered the duplicate it then worked around

Nouveautés

  • MySQL, ClickHouse, and one tables/describe across the family (ADR-031 D2)

0.57.1

Corrections

  • a stateful service that speaks HTTP got no route at all

0.56.2

Corrections

  • the marketplace generated secrets that never reached the container

0.56.1

Corrections

  • a Service node is a mirror, so nothing else may create one
  • run a runner image that only exists on this daemon

0.56.0

Nouveautés

  • www on any custom domain, per domain and at any time
  • show when a service has env vars it has not received, and apply them

0.55.1

Corrections

  • the two things the first live conformance run found

0.55.0

Corrections

  • defaults: run: was parsed at both levels and applied at neither
  • docker run -v $PWD:/src mounted an empty directory, and said nothing
  • github.event_name said push for every run, and dispatch inputs were empty
  • shell: ran the shell it felt like, not the one the step asked for

Nouveautés

  • github.event — the delivered webhook payload, which was simply absent
  • Docker actions run, instead of failing on purpose

0.54.5

Corrections

  • redirect HTTP to HTTPS on the ingress, ACME challenge exempt
  • the runtime token's ac claim, and job names that showed their expression

0.54.4

Corrections

  • an action we cannot run fails the step instead of finishing green
  • export GITHUB_ACTION, without which an App token cannot reach the remote
  • take the producer out of the pipe in two | grep -q conditions

0.54.3

Corrections

  • stop the web-deploy step falling back to the API token for the registry
  • take the DinD bridge MTU from the pod network, not from an assumption

0.54.2

Corrections

  • a service principal can mint a registry token (was a 500)

0.54.0

Corrections

  • provisioning a user's first workspace no longer races itself

Nouveautés

  • a resizable navigation rail, plus two Docs editor fixes

0.53.2

Corrections

  • EQS_RUNNER_DIND never reached the api, so docker-in-job could not be turned on

0.53.1

Corrections

  • honour actions/checkout inputs, provide secrets.GITHUB_TOKEN, name the platform

0.53.0

Nouveautés

  • Actions cache v2 (twirp CacheService), v1 still fully served
  • eqs secret and eqs var — CI secrets and variables from the CLI

0.52.1

Corrections

  • an update no longer reports failure while it converges

0.52.0

Nouveautés

  • reveal the node a deep link points at in the Spaces tree

0.51.0

Nouveautés

  • duplicate and move nodes from the Spaces tree

0.50.0

Nouveautés

  • right-click menu on the Spaces tree

0.49.4

Corrections

  • **release:** the bundle could not read its own changelog

0.44.4

Corrections

  • **platform:** the update modal read its changelog as text, so markdown showed through
  • **release:** an issue reference is digits — hex colours are not issues

0.44.3

Performances

  • **platform:** answer the click — skeletons per area, pending nav, one less round-trip, closes #0a0b0e #0f1014
  • **repositories:** count workflows with the list, not once per card

0.44.1

Corrections

  • **runner:** import IdentityModule, so the capacity routes' guard can resolve

0.44.0

Nouveautés

  • **runner:** let the operator tune the CI capacity, and wait instead of starting too small
  • **runner:** tell a reader when a step is starved, not hung

0.43.1

Corrections

  • **runner:** let a CI step signal its own children — AppArmor was denying it

0.43.0

Corrections

  • **catalog:** one catalog, not two — the admin's copy shipped services that could not deploy
  • **deploy:** let a marketplace service say how it starts, so MinIO can run at all

Nouveautés

  • **platform:** notifications that carry the action, and one primitive to raise them

0.42.0

Nouveautés

  • **platform:** activity bell + reactive Space tree for deploy actions

0.41.0

Nouveautés

  • **runner:** derive the CI budget from real cluster availability, live
  • **runner:** say when a step was killed by the job memory limit instead of a bare exit 137

0.40.1

Corrections

  • **runner:** survive an installation token that expires mid-job (401 on action fetch)

0.40.0

Nouveautés

  • **runs:** stopwatches, tail-following logs and a run view that follows the pipeline

0.39.4

Corrections

  • **runner:** rebuild the full contexts when reconstructing a reusable sub-job's scope

0.39.3

Corrections

  • **release:** read EQS_LICENSE_PUBLIC_KEY from .env when packaging the bundle

0.39.2

Corrections

  • **runner:** preserve the container env through sudo for non-root steps (kubernetes substrate)

0.39.1

Corrections

  • **runner:** env expression context sees declared workflow/job env, not only GITHUB_ENV carries

0.39.0

Corrections

  • **setup:** write EQS_DISPATCHER into the in-cluster api env — dispatcher was silently off

Nouveautés

  • **deploy:** deploy the TCP gateway on install and on update (ADR-028 G2)
  • **deploy:** TCP SNI gateway — one port for every database (ADR-028 G1)
  • **runner:** Kubernetes pod-per-job execution substrate — MVP (ADR-029 K2)
  • **runner:** per-job limits + cluster-derived CI capacity (ADR-029 K4)
  • **runner:** private per-job DinD sidecar for in-job docker (ADR-029 K5)
  • **runner:** services, container jobs and registry auth on the pod substrate (ADR-029 K3)
  • **setup:** pods are the default CI substrate — dind retired on install and update (ADR-029 K6)

0.38.0

Nouveautés

  • **deploy:** give a public TCP service its own hostname (ADR-028 G0)

0.37.1

Corrections

  • **admin:** read the CR token from .env, like every sibling script does
  • **deploy:** show where a public TCP service answers, and stop cutting its neighbours

0.37.0

Corrections

  • **deploy:** reject an invalid source CIDR at the save, not mid-rollout

Nouveautés

  • **license:** revalidate the licence from the UI, and keep the key across every update path

0.36.2

Corrections

  • **setup:** never finish an install without an admin, and honour offline serials at runtime

0.36.1

Corrections

  • **setup:** accept a signed serial's length at the API boundary
  • **setup:** actually bake the license public key into the bundle

0.36.0

Nouveautés

  • **setup:** offline, signature-verified license serials

0.35.0

Nouveautés

  • **deploy:** restrict a public TCP port to chosen origins (F2)

0.34.0

Nouveautés

  • **deploy:** expose TCP services on a dedicated public port

0.33.0

Corrections

  • **deploy:** stop offering a public domain to TCP services

Nouveautés

  • **work:** startDate on Item, so a Gantt bar has two ends

0.32.0

Nouveautés

  • **catalog:** curate connectability in the admin + API-key services

0.31.1

Corrections

  • **catalog:** backfill connection metadata on catalogs seeded earlier

0.31.0

Nouveautés

  • **deploy:** Connect dialog with the service's real connection string

0.30.2

Corrections

  • **deploy:** pull vcluster's rewrite-hosts init container from a registry that answers

0.30.1

Corrections

  • **update:** keep EQS_VERSION in lockstep with the image on self-update