Commit Graph

406 Commits

Author SHA1 Message Date
Leonidas f1cdfcbc9b chore: nightly release 2026-06-18 ⚡ 2026-06-18 04:04:01 +00:00
Leonidas b5e12f4140 chore: nightly release 2026-06-17 ⚡ 2026-06-17 04:12:35 +00:00
Leonidas bd321c9ab0 chore: nightly release 2026-06-16 ⚡ 2026-06-16 04:12:33 +00:00
Leonidas 7da9d3e4c3 chore: nightly release 2026-06-15 ⚡ 2026-06-15 04:22:11 +00:00
Leonidas f377723a53 chore: nightly release 2026-06-14 ⚡ 2026-06-14 04:09:37 +00:00
Leonidas f29b10bb68 chore: nightly release 2026-06-13 ⚡ 2026-06-13 03:47:26 +00:00
Leonidas 1d4b389e6e chore: nightly release 2026-06-12 ⚡ 2026-06-12 04:02:56 +00:00
Leonidas a3607e71d7 chore: nightly release 2026-06-11 ⚡ 2026-06-11 04:03:48 +00:00
Leonidas f25559dfca chore: nightly release 2026-06-10 ⚡ 2026-06-10 03:47:12 +00:00
Leonidas 84b9220ed2 chore: nightly release 2026-06-09 ⚡ 2026-06-09 03:35:49 +00:00
Ashley Hunter d4da582d40 feat(repo)!: upgrade nx to 22 and angular to 21 (#1430)
* feat(repo)!: upgrade nx to 22 and angular to 21

Upgrade the workspace to Nx 22.7.5 and Angular 21.2.16, and widen the
published peer dependency ranges to support Angular 21 and 22 while
dropping Angular 20.

- nx and @nx/* to 22.7.5; @angular/* to 21.2.16 (framework) and 21.2.14
  (cli, build, devkit, cdk, ssr)
- brain, helm and trpc @angular/* peers to ">=21.0.0 <23.0.0"; the helm
  embla-carousel-angular peer uses the same range
- @spartan-ng/cli minimums raised to >=21 and @schematics/angular to
  21.2.14; the private tools lib aligned to nx 22 / angular 21
- analog 2.6.0, ng-packagr 21, angular-eslint 21, storybook 10, jest 30,
  @testing-library/angular 19 and related tooling
- replace the calendar select host-listener $event with a typed output
  subscription; constrain the ai-chat-link directive to anchors
- drive the menubar e2e arrow keys via native keydown and disable
  Chromium throttling; hold cypress at 14 (15 breaks realPress specs)

BREAKING CHANGE: Angular 20 is no longer supported. spartan/ui now
supports Angular 21 and 22.

* ci: lower unit test parallelism to fit the runner memory

The docs app's vitest + Analog suite peaks at a few GB; running it
alongside two other test projects under --parallel=3 exhausted the
GitHub runner memory and the worker was OOM-killed with no output.
Run at most two test projects concurrently.

* fix(trpc): drop invalid environment providers from the test env module

The Nx 22 migration wrapped provideZoneChangeDetection() in an @NgModule,
but EnvironmentProviders are not valid in @NgModule providers and Angular
21 throws NG0207 at runtime. Restore the plain initTestEnvironment setup
(matching the docs app); the explicit zone provider is unnecessary.

* ci: run the docs app test suite in isolation

Bundling the docs app's vitest + Analog suite into the parallel test run
made it fail in CI while it passes on its own, and the interleaved output
hid the cause. Run the other projects in parallel, then the docs app as a
separate step.

* fix(nx): point test cache inputs at the real jest preset file

The test targets' cache inputs referenced jest.preset.js, but the
workspace preset is jest.preset.cjs, so the input never matched and a
preset change would not invalidate the cache. Fix both the
@nx/vitest:test target (added by the Nx 22 migration) and the existing
@nx/jest:jest target.

* ci: log exit code and retry the docs app test suite once

The docs app's vitest + Analog suite intermittently crashes in CI right
after loading Angular's testing modules, with no error output. Log the
exit code to classify the crash (128+signal indicates a native crash)
and retry once so a flaky crash does not fail the run while the root
cause is investigated.

* ci: clarify docs app test retry after pinpointing the flaky crash

The crash is in app.spec.ts: booting the full app shell (Header/Footer
and their deep import graph) intermittently crashes the vitest worker
during the Analog transform in CI (exit 1, no output, not reproducible
locally). It happens before any test runs, so a vitest per-test retry
cannot help; re-running the suite once does.

* chore(repo): hold analog at 2.1.3 and drop unit-test ci workarounds

Analog 2.6.0 intermittently crashed the docs app's vitest worker in CI
(a flaky transform of the app shell), so keep analog at the nx-migration's
tested 2.1.3, revert the marked bumps that 2.6.0 required, and restore the
ai-chat-link directive selector. Also restore the original unit test ci
step, dropping the parallel, isolation and retry workarounds added while
chasing that crash.
2026-06-08 22:23:45 +02:00
Leonidas cd1a7e0583 chore: nightly release 2026-06-08 ⚡ 2026-06-08 04:05:48 +00:00
Leonidas 9ed64a10a1 chore: nightly release 2026-06-06 ⚡ 2026-06-06 03:34:02 +00:00
Leonidas 5b85c56c51 chore: nightly release 2026-06-05 ⚡ 2026-06-05 03:48:53 +00:00
Ashley Hunter f2978e148d Merge pull request #1362 from SOG-web/mcp
feat(ui-mcp): migrate external ui-mcp project as a monorepo library
2026-06-04 09:20:05 +01:00
Leonidas de5106aa45 chore: nightly release 2026-06-04 ⚡ 2026-06-04 04:16:15 +00:00
Ashley Hunter c8d97abb42 fix(mcp): make the library publishable and harden the server
Make @spartan-ng/mcp publishable and runnable as an MCP server:
- align package metadata, bin, and publishConfig, and add a release target
- bump zod to ^3.25 so it satisfies the MCP SDK peer range, without which
  the server fails to start
- route cache and warmup logging to stderr so it never corrupts the stdio
  JSON-RPC channel
- validate cache keys to prevent path traversal and default the cache to a
  writable user directory
- fix component example rendering, meta tool ids, language detection, and
  peer-dependency analysis
- add unit tests and a documentation page for the MCP server
2026-06-03 21:02:33 +01:00
Leonidas 0254552cb6 chore: nightly release 2026-06-03 ⚡ 2026-06-03 04:20:16 +00:00
Leonidas 3954af2b61 chore: nightly release 2026-06-02 ⚡ 2026-06-02 04:13:25 +00:00
Leonidas 15b1987c32 chore: nightly release 2026-05-30 ⚡ 2026-05-30 03:36:23 +00:00
Leonidas 8b2e1e26b4 chore: nightly release 2026-05-29 ⚡ 2026-05-29 03:49:10 +00:00
Leonidas 5649349ff9 chore: nightly release 2026-05-28 ⚡ 2026-05-28 03:48:51 +00:00
Leonidas 60e3fc4b53 chore: nightly release 2026-05-27 ⚡ 2026-05-27 04:01:41 +00:00
Leonidas 5190d10c50 chore: nightly release 2026-05-23 ⚡ 2026-05-23 03:09:47 +00:00
Leonidas 1667044174 chore: nightly release 2026-05-22 ⚡ 2026-05-22 03:52:42 +00:00
Leonidas 2e179f0c90 chore: nightly release 2026-05-21 ⚡ 2026-05-21 03:54:31 +00:00
Leonidas f221190e0b chore: nightly release 2026-05-16 ⚡ 2026-05-16 03:06:59 +00:00
Leonidas f2abd8d62e chore: nightly release 2026-05-15 ⚡ 2026-05-15 03:44:03 +00:00
Leonidas d6664bd777 chore: nightly release 2026-05-14 ⚡ 2026-05-14 03:40:41 +00:00
Leonidas 247661a802 chore: nightly release 2026-05-13 ⚡ 2026-05-13 03:40:13 +00:00
Leonidas 74f97768ce chore: nightly release 2026-05-12 ⚡ 2026-05-12 03:10:22 +00:00
Leonidas a693f67a59 chore: nightly release 2026-05-10 ⚡ 2026-05-10 03:07:17 +00:00
Leonidas eab4baa113 chore: nightly release 2026-05-09 ⚡ 2026-05-09 03:03:03 +00:00
Leonidas cf6c0294f6 chore: nightly release 2026-05-08 ⚡ 2026-05-08 03:07:36 +00:00
Leonidas 98ae26c894 chore: nightly release 2026-05-07 ⚡ 2026-05-07 03:04:05 +00:00
Leonidas 46646c666e chore: nightly release 2026-05-06 ⚡ 2026-05-06 03:02:47 +00:00
Leonidas a4f74743d4 chore: nightly release 2026-05-05 ⚡ 2026-05-05 02:55:54 +00:00
Leonidas 6e78539618 chore: nightly release 2026-05-02 ⚡ 2026-05-02 02:55:20 +00:00
Leonidas ebea4b161d chore: nightly release 2026-05-01 ⚡ 2026-05-01 03:36:28 +00:00
Leonidas 23c8453774 chore: nightly release 2026-04-30 ⚡ 2026-04-30 03:06:51 +00:00
Leonidas 0bb5bb4973 chore: nightly release 2026-04-29 ⚡ 2026-04-29 03:04:39 +00:00
Leonidas 57f706d225 chore: nightly release 2026-04-28 ⚡ 2026-04-28 03:06:27 +00:00
Leonidas a5e65f7951 chore: nightly release 2026-04-25 ⚡ 2026-04-25 02:40:19 +00:00
Leonidas 1a86fe7d9e chore: nightly release 2026-04-24 ⚡ 2026-04-24 02:50:50 +00:00
Leonidas 81f7e1d56e chore: nightly release 2026-04-23 ⚡ 2026-04-23 02:49:55 +00:00
Leonidas e8b3947923 chore: nightly release 2026-04-22 ⚡ 2026-04-22 02:46:03 +00:00
Leonidas 96d08ba6e4 chore: nightly release 2026-04-21 ⚡ 2026-04-21 02:48:07 +00:00
Leonidas c45ae6331a chore: nightly release 2026-04-20 ⚡ 2026-04-20 02:53:23 +00:00
Leonidas 0f351bbe64 chore: nightly release 2026-04-18 ⚡ 2026-04-18 02:38:50 +00:00
Leonidas 5dbfbafc53 chore: nightly release 2026-04-17 ⚡ 2026-04-17 02:46:30 +00:00