You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+7-3Lines changed: 7 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,7 +5,7 @@ All notable changes to this project will be documented in this file.
5
5
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
8
-
## [Unreleased]
8
+
## [1.2.0-alpha.3] - 2026-07-26
9
9
10
10
### Changed
11
11
@@ -14,11 +14,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
14
14
- Manual connections now send a product ID hint for every modern model (previously Creator 5 / Creator 5 Pro only), so those connects skip the probe as well
15
15
- The manual-connect endpoint now requires a serial number for **all** modern printers, not just the Creator 5 series, since a named model is no longer probed for it. The Creator 5 series keeps its model-specific error message
16
16
- The material-station slot-config request schema (`/spoolman/slot-config`) was tightened to the correct rules — a required material name and a strict 6-digit hex color — matching the AD5X / Creator 5 fixed material and color palettes. The previously permissive 3/6/8-digit hex and nullable material (with the `currentMaterial` fallback) are gone, since the slot editor always sends a material resolved from the model's fixed palette
17
-
- Printer discovery now delegates to the library's `PrinterDiscovery` (`@ghosttypes/ff-api` 1.7.0) instead of a local fork in `PrinterDiscoveryService.ts`, removing ~200 lines of duplicated logic and gaining proper loopback-address discovery. The discovery route was updated to match.
17
+
- Printer discovery now delegates to the library's `PrinterDiscovery` (`@ghosttypes/ff-api` 1.7.1) instead of a local fork in `PrinterDiscoveryService.ts`, removing ~200 lines of duplicated logic and gaining proper loopback-address discovery. The discovery route was updated to match.
18
+
- Bumped `@ghosttypes/ff-api` to `^1.7.1`, which fixes `FFMachineInfo.HasMatlStation` — a raw copy of an AD5X-only `/detail` field the Creator 5 series never sends, so it arrived `undefined` on a Creator 5 Pro with four loaded slots. This UI gates the material station on `MatlStationInfo` rather than that flag, so nothing here was affected, but 1.7.0 should not ship in a new build.
18
19
- The `data/` directory is no longer tracked in git. `data/config.json` and `data/printer_details.json` were previously committed, so a clone carried the maintainer's local settings and saved printers — including per-printer check codes — and every local run showed up as a dirty working tree. Both are now generated on first run (`ConfigManager` falls back to `DEFAULT_CONFIG`, `PrinterDetailsManager` starts with no printers), and `data/config.example.json` / `data/printer_details.example.json` are tracked in their place to document the schema
19
20
20
21
### Fixed
21
22
23
+
- Removed the untyped manual-IP connection path (`offerManualIPEntry` / `connectDirectlyToIP`). It built a printer record from an IP address alone with no product ID, which left `createTemporaryConnection` unable to tell that the printer was HTTP-only — so it fell through to the legacy client and probed TCP 8899, which the Creator 5 series refuses outright. That is the `ECONNREFUSED` reported against this project in [ff-5mp-hass#18](https://github.com/GhostTypes/ff-5mp-hass/issues/18). The path was already unreachable in practice (its input-dialog handler is never registered), but it remained a working re-entry point for the bug. Those entry points now direct the user to the "Add Printer" form, which requires a printer type and so identifies an HTTP-only model before any socket is opened.
24
+
22
25
- Raw G-code availability is now reported per printer (`features.gcodeCommands`) and the Home Axes button is disabled on printers that don't support it. HTTP-only printers (Creator 5 series) have no TCP channel for raw G-code, so `~G28` could never have worked there
23
26
-`DualAPIBackend` no longer assumes a legacy TCP client exists: `executeGCodeCommand` returns a clear error instead of throwing, and the pause/resume/cancel legacy fallbacks are skipped on HTTP-only backends. Those fallbacks also now report the fallback's own error rather than masking it with the original
24
27
@@ -227,7 +230,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
0 commit comments