Skip to content

Releases

NexusInDesign 4.3.0

Choose a tag to compare

@github-actions github-actions released this 08 Nov 13:30
Immutable release. Only release title and notes can be modified.

Changed

  • The engine is compiled ahead of time (Native AOT) instead of a self-contained single-file .NET program: one native
    image that Windows maps, nothing read again from its file after it starts, so an update that replaces the engine
    while an AI session runs it can no longer break that session (NexusFree's single-file dispatcher still crashed after
    such a replacement, on an assembly loaded late that no preload had reached). Measured on the same PC (win-x64,
    median of 7 runs, MCP server 10 s after initialize and tools/list):

    4.2.3 (single file) 4.3.0 (Native AOT)
    NexusInDesign.exe 73.6 MB 8.8 MB
    --version 42 ms 24 ms
    Start to initialize answer 224 ms 93 ms
    Working set at rest 47.8 MB 25.2 MB
    Private bytes at rest 16.0 MB 11.3 MB
  • InDesign's COM automation goes through a source-generated IDispatch (ComWrappers) instead of the runtime's
    built-in COM interop and Type.InvokeMember; JSON through source-generated contexts; process and signature checks
    through LibraryImport with blittable structures. No reflection or runtime marshalling is left (IsAotCompatible,
    AOT and trim analysis clean, warnings as errors). The AOT compiler and the trimmer are pinned in
    packages.lock.json.

Added

  • Test: the release build is started, its file renamed aside and replaced by other bytes the way an installer
    replaces an exe in use, and its tools (tool list, DOM index, doctor, schema validation) must still answer.

Fixed

  • Tests: processes started by tests always inherit the no-error-box mode. The runtime loads each native library
    between a SetErrorMode and a restore of the previous mode, so parallel loads could leave the test process without
    SEM_NOGPFAULTERRORBOX (seen once in CI); every test now starts its processes through a helper that sets the mode
    again first, and the test checks a child started after that flag was removed.

NexusInDesign 4.3.0 (development build)

Pre-release

Choose a tag to compare

@github-actions github-actions released this 08 Nov 16:18
Immutable release. Only release title and notes can be modified.

Development build of 68f306b (tests passed). Promoted as is to the stable v4.3.0 when that version is new.

NexusInDesign 4.3.0 (development build)

Pre-release

Choose a tag to compare

@github-actions github-actions released this 08 Nov 14:24
Immutable release. Only release title and notes can be modified.

Development build of 8e2b369 (tests passed). Promoted as is to the stable v4.3.0 when that version is new.

NexusInDesign 4.3.0 (development build)

Pre-release

Choose a tag to compare

@github-actions github-actions released this 08 Nov 13:44
Immutable release. Only release title and notes can be modified.

Development build of 48a183d (tests passed). Promoted as is to the stable v4.3.0 when that version is new.

NexusInDesign 4.3.0 (development build)

Pre-release

Choose a tag to compare

@github-actions github-actions released this 08 Nov 13:30
Immutable release. Only release title and notes can be modified.

Development build of 80f4860 (tests passed). Promoted as is to the stable v4.3.0 when that version is new.

NexusInDesign 4.2.3

Choose a tag to compare

@github-actions github-actions released this 08 Nov 10:44
Immutable release. Only release title and notes can be modified.

Added

  • Common journal of the Nexus tools (format v1): every tool call also writes one short line to
    %USERPROFILE%\.nexus\journal\indesign\<agent>\<YYYY-MM>.jsonl (agent from the verified parent or the MCP
    client; outil the engine version, issue, ms, technique the tool's route, erreur the stable error code;
    never a path, a document name or a text), so NexusSystem shows the activity of your AIs in InDesign and
    NexusJournal revue can measure failures per tool and version. A test checks the line of each call.

Fixed

  • Tests: no test can show a Windows error box. The test process sets the error mode (no critical-error, crash or
    missing-file box) when it loads, and every process it starts inherits it; a test checks it in a child process.

NexusInDesign 4.2.3 (development build)

Pre-release

Choose a tag to compare

@github-actions github-actions released this 08 Nov 11:44
Immutable release. Only release title and notes can be modified.

Development build of ee2903b (tests passed). Promoted as is to the stable v4.2.3 when that version is new.

NexusInDesign 4.2.2

Choose a tag to compare

@github-actions github-actions released this 07 Nov 15:40
Immutable release. Only release title and notes can be modified.

Fixed

  • A conversation opened before an update keeps working. The engine is a self-contained single-file .NET program that
    reads its own file again each time it loads an assembly; get.ps1 renamed the running engine aside and put the new
    version at its path, so the open session then read the new version's bytes and its next tool calls failed with
    "Internal error" (reproduced: search_official_dom and indesign_doctor after a replacement). Each version is now
    installed in versions\<version>-<hash>\, a folder never modified once written; current.txt names the version new
    sessions start; NexusInDesign.exe, the path the plugins start, is a small launcher compiled ahead of time (Native
    AOT, which never reads its own file again) that runs the engine current.txt names. An older version's folder is
    removed by a later run once no process runs its engine. Sessions opened before 4.2.2 still run the previous engine
    from the launcher's path and need one reconnection after this update.

NexusInDesign 4.2.1

Choose a tag to compare

@github-actions github-actions released this 07 Nov 13:21
Immutable release. Only release title and notes can be modified.

Fixed

  • get.ps1 no longer fails with "being used by another process" when a scanner briefly opens the freshly copied
    executable (the failure seen once with NexusAGYmail in NexusSystem's pack job on a fresh Windows runner). The package
    is never run before installation: its version comes from the executable's version resource, the copy staged beside
    NexusInDesign.exe is renamed into place, and only then is --version run from the installed file; if it does not
    answer the expected version, the previous executable is put back. A rename held by such an external, transient scan
    (sharing, lock or access violation) is waited out for at most 10 s; any other error still fails the installation.

NexusInDesign 4.2.0

Choose a tag to compare

@github-actions github-actions released this 07 Nov 11:05
Immutable release. Only release title and notes can be modified.

Changed

  • English by default, French on a French Windows: the MCP instructions, tool titles and descriptions
    (native/tool-contracts.json in English, native/tool-contracts.fr.json for French), results, errors and the UXP
    scripts' own messages follow the Windows display language. The doctor's registry hash stays language-neutral.
  • Build output path taken from the .NET user profile instead of $(USERPROFILE), which is unset on Dependabot's Linux
    runner (NuGet restores silently failed on /.nexus).
  • Strict build: recommended .NET analyzers, code style enforced, warnings as errors (.editorconfig added).
  • JsonSchema.Net 9.6.0.
  • Release workflow on NexusSystem's shared workflows v1.6.54, pinned by commit SHA.
  • CodeQL runs from .github/workflows/codeql.yml (actions, C#, JavaScript/TypeScript, default queries) instead of the
    default setup, so OpenSSF Scorecard credits SAST for commits pushed without pull requests.
  • CHANGELOG compare links for every released version.