Skip to content

Releases: fdm-monster/fdm-monster

1.6.2 Raging Rex 🦖

19 Apr 17:00
13a3625
Compare
Choose a tag to compare

Features:

  • Add GitHub Rate Limit API endpoint GET /api/server/github-rate-limit
  • Add feature flag for GitHub Rate Limit API endpoint

Changes:

  • Dropped the permission check on /api/features as it made no sense
  • Anonymized logging
  • Handle OctoKit errors (ExternalServiceErrors) differently than OctoPrint errors (different HttpClient implementations). Refer to the new rate limit API and feature flag.
  • Set default API call timeout to 10000 milliseconds (to call OctoPrint APIs)

Fixes:

  • YAML Import would fail updating properly an existing floor by floor level
  • YAML Import has issues updating a floor, printers positions are not consistently are updated.
  • YAML Import converted printer IDs to string, causing the printers to not show up on the printer grid until server restart. The import was done correctly on database level.
  • Deleting a printer would remove the position of another printer, the removal was referring to the wrong position.
  • Setting demo mode will not set wizard to be completed: first time setup will be required after setting demo mode to false.
  • Settings: incorrect file clean shape would not throw any validation errors (SQLite only). Validation has been added for file clean on API level.
  • Settings: make all settings API endpoints stricter by adding validation on API level. Patching is not possible anymore.
  • Printer: add OctoPrint URL validation which parses the error with user friendly errors as result

1.6.1 Raging Rex 🦖

21 Feb 21:21
6854789
Compare
Choose a tag to compare

Features

Bugfixes

  • Emergency command "batch reconnect sockets" would not abort after attempting to reconnect a disabled printer socket. Fixed by @davidzwa in #2903
  • Deleting a printer would not remove it until after a server restart. Cache clear was added to fix this. Fix: printer delete not removed from cache by @davidzwa in #2910
  • YAML import would not import floor grid positions. Fixed position import by @davidzwa in #2918
  • Made connection checks more robust against failures by @davidzwa in #2935

What's Changed

Full Changelog: 1.6.0...1.6.1

1.6.0 Raging Rex 🦖

12 Feb 07:22
d80290f
Compare
Choose a tag to compare

FDM Monster - 1.6.0 Raging Rex 🦖 Release Notes

This release was preceded by three release candidates: 1.6.0-rc1, 1.6.0-rc2 and 1.6.0-rc3
The client was released at 1.5.0 with 9 release candidates.

These release notes cover the FDM Monster server updates. As they might be a bit technical, I recommend reading the client notes instead.
Read the 1.5.0 client UI updates here.

image
A Raging 3D Printing T-Rex

Features

  • 🔧 Call the API for measuring all OctoPrints response times in batch by @davidzwa in #2861
  • 🆕 Added a disconnection detector task, will try to refresh all printer states in a 10 second loop, preventing stale state information by @davidzwa in #2799
  • 🆕 Added a batch reprint verification API which fetches the latest state of each OctoPrint for determining the last printed file(s) of each requested printer. The reprint API is more stable now (apprehended in fix #2812)
  • 🆕 Added the ORM (object relational mapper) Typeorm for introducing the database SQLite by @davidzwa in #2445
    • Adding this to the .env file or docker-compose environment section will switch over from Mongoose (ORM) and MongoDB altogether:
# Enables TypeORM with SQLite
ENABLE_EXPERIMENTAL_TYPEORM=true
# Saves SQLite database to the following path
DATABASE_PATH=./database
# Optional, default: fdm-monster.sqlite
DATABASE_FILE=fdm-monster.sqlite

Fixes

  • Last known OctoPrint events are now cleared on a socket refresh by @davidzwa in #2860
  • Fix: handle error missing release asset with different response code by @davidzwa in #2855
  • Missing .yarnrc.yml added to server bundle
  • Internal file cache now transforms or "normalizes" each octoprint file reference by @davidzwa in #2784
    • Related: Octoprint files response is different than what API consumed by @davidzwa in #2646
  • Batch reprint API would take an incorrect/outdated file, now it fetches the latest at all times by @davidzwa in #2812
  • Fix the completion tracking by dropping correlationId from completion table by @davidzwa in #2840
  • Files split from MongoDB printer schema to printerFiles schema (split out fileList from printer model for forward compatibility) by @davidzwa in #2702
  • Drop the library got (ESM only...), did a octoprint file upload handling do-over by @davidzwa in #2640

Chores

What's Changed (raw and unfiltered)

Read more

1.6.0-rc3 Raging Rex 🦖

05 Feb 22:23
8cd8682
Compare
Choose a tag to compare
Pre-release

Description

Release with client 1.5.0-rc8

Fixes:

  • Printer events cleared on socket refresh
  • Batch response time API request
  • Fix yarnrc added to server bundle

What's Changed

Full Changelog: 1.6.0-rc2...1.6.0-rc3

1.6.0-rc2 Raging Rex 🦖

01 Feb 23:25
4f33115
Compare
Choose a tag to compare
Pre-release

Description

Features:

  • SQLite as a database
  • Disconnection detector task, will try to refresh all printer states

Bugfixes:

  • Batch reprint API will fetch the latest state of OctoPrint for determining the last printed file(s) of each requested printer

Changes:

  • Yarn v4 for much faster dependency resolution and smaller download size (<50%)

What's Changed

  • Update README.md image by @davidzwa in #2752
  • chore(deps): lock file maintenance by @renovate in #2753
  • chore(deps): update dependency mongodb-memory-server to v9.1.5 by @renovate in #2754
  • chore(deps): update dependency supertest to v6.3.4 by @renovate in #2755
  • chore(deps): update dependency nock to v13.5.0 by @renovate in #2756
  • chore(deps): update dependency @types/luxon to v3.4.1 by @renovate in #2757
  • chore(deps): lock file maintenance by @renovate in #2758
  • chore(deps): update dependency @types/node to v20.11.2 by @renovate in #2759
  • chore(deps): update dependency @swc/core to v1.3.103 by @renovate in #2760
  • chore(deps): update dependency @types/node to v20.11.3 by @renovate in #2761
  • chore(deps): lock file maintenance by @renovate in #2762
  • chore(deps): update dependency @types/node to v20.11.4 by @renovate in #2763
  • feat: give api ability to downgrade client within certain limited bounds by @davidzwa in #2765
  • fix(deps): update dependency nodemon to v3.0.3 by @renovate in #2767
  • fix(deps): update dependency better-sqlite3 to v9.3.0 by @renovate in #2768
  • chore(deps): lock file maintenance by @renovate in #2769
  • chore(deps): update dependency @types/node to v20.11.5 by @renovate in #2770
  • chore(deps): update dependency @swc/core to v1.3.104 by @renovate in #2771
  • chore(deps): update dependency mongodb-memory-server to v9.1.6 by @renovate in #2772
  • chore(deps): update actions/cache action to v4 by @renovate in #2773
  • chore(deps): lock file maintenance by @renovate in #2774
  • chore(deps): update dependency @swc/jest to v0.2.30 by @renovate in #2775
  • chore(deps): lock file maintenance by @renovate in #2776
  • fix(deps): update dependency @sentry/node to v7.94.1 by @renovate in #2777
  • fix(deps): update dependency dotenv to v16.3.2 by @renovate in #2778
  • chore(deps): update dependency @types/luxon to v3.4.2 by @renovate in #2779
  • chore(deps): lock file maintenance by @renovate in #2780
  • chore(deps): update dependency @swc/jest to v0.2.31 by @renovate in #2781
  • feat: introduce yarn v3 for package size reduction by @davidzwa in #2783
  • fix(deps): update dependency @fdm-monster/client to v1.5.0-rc5 by @renovate in #2766
  • chore(deps): lock file maintenance by @renovate in #2785
  • chore(deps): update dependency @swc/core to v1.3.105 by @renovate in #2786
  • chore(deps): update dependency @swc/cli to v0.1.64 by @renovate in #2787
  • fix(deps): update dependency mongoose to v6.12.6 by @renovate in #2789
  • chore(deps): update dependency @swc/cli to v0.1.65 by @renovate in #2788
  • Feat/file normalization octoprint by @davidzwa in #2784
  • fix: bring both sqlite and mongodb versions up to date by @davidzwa in #2790
  • chore(deps): lock file maintenance by @renovate in #2791
  • fix(deps): update dependency @sentry/node to v7.95.0 by @renovate in #2792
  • fix(deps): update dependency dotenv to v16.4.0 by @renovate in #2793
  • chore(deps): lock file maintenance by @renovate in #2794
  • chore(deps): update dependency @types/node to v20.11.6 by @renovate in #2796
  • chore(deps): update dependency @swc/cli to v0.3.0 by @renovate in #2795
  • fix(deps): update dependency dotenv to v16.4.1 by @renovate in #2798
  • fix(deps): update dependency axios to v1.6.6 by @renovate in #2800
  • chore(deps): lock file maintenance by @renovate in #2801
  • chore(deps): update dependency @swc/core to v1.3.106 by @renovate in #2802
  • fix(deps): update dependency @sentry/node to v7.98.0 by @renovate in #2803
  • fix(deps): update dependency axios to v1.6.7 by @renovate in #2804
  • chore(deps): update dependency @types/uuid to v9.0.8 by @renovate in #2805
  • chore(deps): update dependency @types/node to v20.11.7 by @renovate in #2807
  • chore(deps): update dependency @types/passport-jwt to v4.0.1 by @renovate in #2808
  • chore(deps): lock file maintenance by @renovate in #2806
  • fix(deps): update dependency typeorm to v0.3.20 by @renovate in #2810
  • chore(deps): update dependency @swc/cli to v0.3.2 by @renovate in #2809
  • Fix: disconnected printer staleness polling (10 second loop) by @davidzwa in #2799
  • chore(deps): lock file maintenance by @renovate in #2813
  • chore(deps): update dependency @types/node to v20.11.8 by @renovate in #2814
  • chore(deps): lock file maintenance by @renovate in #2815
  • chore(deps): update dependency @swc/cli to v0.3.3 by @renovate in #2816
  • chore(deps): update dependency @swc/cli to v0.3.4 by @renovate in #2817
  • chore(deps): update dependency @types/node to v20.11.9 by @renovate in #2818
  • chore(deps): update swc monorepo by @renovate in #2819
  • chore(deps): update dependency nock to v13.5.1 by @renovate in #2820
  • chore(deps): update dependency @types/node to v20.11.10 by @renovate in #2821
  • chore(deps): lock file maintenance by @renovate in #2822
  • Bugfix/1773 batch reprint takes an incorrect file needs 140 verification by @davidzwa in #2812
  • chore(deps): lock file maintenance by @renovate in #2823
  • chore(deps): update dependency @types/node to v20.11.11 by @renovate in #2825
  • chore(deps): update yarn to v4.1.0 by @renovate in #2824
  • fix(deps): update dependency @sentry/node to v7.99.0 by @renovate in #2826
  • Feat/2315 typeorm sqlite by @davidzwa in #2445
  • chore(deps): update actions/cache action to v4 by @renovate in #2828
  • chore(deps): update dependency @types/node to v20.11.13 by @renovate in #2827
  • chore(deps): lock file maintenance by @renovate in #2829
  • chore(deps): update codecov/codecov-action action to v4 by @renovate in #2830
  • chore(deps): update dependency @types/node to v20.11.14 by @renovate in #2831
  • chore(deps): lock file maintenance by @renovate in #2832
  • chore(deps): update dependency @types/node to v20.11.15 by @renovate in #2834
  • chore(deps): update dependency @swc/cli to v0.3.6 by @renovate in #2835
  • chore(deps): update depende...
Read more

1.6.0-rc1 Raging Rex 🦖

12 Jan 15:45
ed46e91
Compare
Choose a tag to compare
Pre-release

Changes

Bugfixes

  • Bug: file response from OctoPrint handled incorrectly
  • Fix print failure/completion statistics

What's Changed

Read more

1.5.4 Awesome Axolotl 😃

27 Nov 22:16
21135d9
Compare
Choose a tag to compare

Change:

  • Client 1.4.4
  • Package updates
  • Small code cleanup & indirect prepwork for move towards SQLite

1.5.3 Awesome Axolotl 😃

12 Nov 10:04
71e28c0
Compare
Choose a tag to compare

Note: as 1.5.2 was retracted, this release contains the changes compared to 1.5.1!

Changes

  • YAML import and export fixes
  • Prepwork for SQLite in the future
  • Migration: simplification of printer name property
  • Typing abstractions and improvements for IPrintCompletionService and FloorService
  • CI/CD fixes around docker develop tag + nightly

Bugfix

  • Retract release 1.5.2
  • Bring UI up to speed with latest API requirements

What's Changed

  • chore(deps): lock file maintenance by @renovate in #2535
  • chore(deps): update dependency @swc/core to v1.3.96 by @renovate in #2536
  • chore(deps): update dependency @types/adm-zip to v0.5.4 by @renovate in #2538
  • chore(deps): update dependency @types/bcryptjs to v2.4.6 by @renovate in #2539
  • chore(deps): update dependency @types/cache-manager to v4.0.5 by @renovate in #2540
  • chore(deps): update dependency @types/cookie-parser to v1.4.6 by @renovate in #2542
  • chore(deps): update dependency @types/multer to v1.4.10 by @renovate in #2548
  • chore(deps): update dependency @types/connect-history-api-fallback to v1.5.3 by @renovate in #2541
  • chore(deps): update dependency @types/express to v4.17.21 by @renovate in #2543
  • chore(deps): update dependency @types/express-session to v1.17.10 by @renovate in #2544
  • chore(deps): update dependency @types/ip to v1.1.3 by @renovate in #2545
  • chore(deps): update dependency @types/jest to v29.5.8 by @renovate in #2552
  • chore(deps): update dependency @types/js-yaml to v4.0.9 by @renovate in #2553
  • chore(deps): update dependency @types/lodash to v4.14.201 by @renovate in #2554
  • chore(deps): update dependency @types/luxon to v3.3.4 by @renovate in #2546
  • chore(deps): update dependency @types/migrate-mongo to v10.0.4 by @renovate in #2547
  • chore(deps): update dependency @types/passport-anonymous to v1.0.5 by @renovate in #2549
  • chore(deps): lock file maintenance by @renovate in #2562
  • chore(deps): update dependency @types/passport-jwt to v3.0.13 by @renovate in #2550
  • fix(deps): update dependency @sentry/node to v7.79.0 by @renovate in #2560
  • chore(deps): update dependency @types/supertest to v2.0.16 by @renovate in #2551
  • chore(deps): update dependency @types/semver to v7.5.5 by @renovate in #2555
  • chore(deps): update dependency @types/uuid to v9.0.7 by @renovate in #2556
  • fix(deps): update dependency axios to v1.6.1 by @renovate in #2559
  • fix(deps): update dependency mongoose to v6.12.3 by @renovate in #2557
  • chore(deps): update dependency @types/node to v20.9.0 by @renovate in #2558
  • fix(deps): update dependency helmet to v7.1.0 by @renovate in #2561
  • fix(deps): update dependency mqtt to v5.2.0 by @renovate in #2564
  • chore(deps): lock file maintenance by @renovate in #2563
  • fix(deps): update dependency @sentry/node to v7.80.0 by @renovate in #2565
  • chore(deps): lock file maintenance by @renovate in #2566
  • fix(deps): update dependency mqtt to v5.2.1 by @renovate in #2567
  • chore(deps): lock file maintenance by @renovate in #2568
  • fix: print completion ddd-abstraction and file storage typings by @davidzwa in #2569
  • fix: nightly develop docker build, drop run build number by @davidzwa in #2570
  • Release 1.5.2 YAML fixes by @davidzwa in #2572
  • chore(deps): lock file maintenance by @renovate in #2573
  • fix: slowly introduce isTypeormMode flag and backward compatibility YAML export/import by @davidzwa in #2574
  • Release 1.5.3 regression hotfix by @davidzwa in #2575

Full Changelog: 1.5.1...1.5.3

1.5.2 Awesome Axolotl 😃

12 Nov 10:02
f78ee35
Compare
Choose a tag to compare
Pre-release

⚠️ This release contains a regression (a bug) preventing creating printers in the web UI form. The release has therefore been retracted and a fix is present in release 1.5.3

Changes

  • YAML import and export fixes
  • Prepwork for SQLite in the future
  • Migration: simplification of printer name property
  • Typing abstractions and improvements for IPrintCompletionService and FloorService
  • CI/CD fixes around docker develop tag + nightly

What's Changed

  • chore(deps): lock file maintenance by @renovate in #2535
  • chore(deps): update dependency @swc/core to v1.3.96 by @renovate in #2536
  • chore(deps): update dependency @types/adm-zip to v0.5.4 by @renovate in #2538
  • chore(deps): update dependency @types/bcryptjs to v2.4.6 by @renovate in #2539
  • chore(deps): update dependency @types/cache-manager to v4.0.5 by @renovate in #2540
  • chore(deps): update dependency @types/cookie-parser to v1.4.6 by @renovate in #2542
  • chore(deps): update dependency @types/multer to v1.4.10 by @renovate in #2548
  • chore(deps): update dependency @types/connect-history-api-fallback to v1.5.3 by @renovate in #2541
  • chore(deps): update dependency @types/express to v4.17.21 by @renovate in #2543
  • chore(deps): update dependency @types/express-session to v1.17.10 by @renovate in #2544
  • chore(deps): update dependency @types/ip to v1.1.3 by @renovate in #2545
  • chore(deps): update dependency @types/jest to v29.5.8 by @renovate in #2552
  • chore(deps): update dependency @types/js-yaml to v4.0.9 by @renovate in #2553
  • chore(deps): update dependency @types/lodash to v4.14.201 by @renovate in #2554
  • chore(deps): update dependency @types/luxon to v3.3.4 by @renovate in #2546
  • chore(deps): update dependency @types/migrate-mongo to v10.0.4 by @renovate in #2547
  • chore(deps): update dependency @types/passport-anonymous to v1.0.5 by @renovate in #2549
  • chore(deps): lock file maintenance by @renovate in #2562
  • chore(deps): update dependency @types/passport-jwt to v3.0.13 by @renovate in #2550
  • fix(deps): update dependency @sentry/node to v7.79.0 by @renovate in #2560
  • chore(deps): update dependency @types/supertest to v2.0.16 by @renovate in #2551
  • chore(deps): update dependency @types/semver to v7.5.5 by @renovate in #2555
  • chore(deps): update dependency @types/uuid to v9.0.7 by @renovate in #2556
  • fix(deps): update dependency axios to v1.6.1 by @renovate in #2559
  • fix(deps): update dependency mongoose to v6.12.3 by @renovate in #2557
  • chore(deps): update dependency @types/node to v20.9.0 by @renovate in #2558
  • fix(deps): update dependency helmet to v7.1.0 by @renovate in #2561
  • fix(deps): update dependency mqtt to v5.2.0 by @renovate in #2564
  • chore(deps): lock file maintenance by @renovate in #2563
  • fix(deps): update dependency @sentry/node to v7.80.0 by @renovate in #2565
  • chore(deps): lock file maintenance by @renovate in #2566
  • fix(deps): update dependency mqtt to v5.2.1 by @renovate in #2567
  • chore(deps): lock file maintenance by @renovate in #2568
  • fix: print completion ddd-abstraction and file storage typings by @davidzwa in #2569
  • fix: nightly develop docker build, drop run build number by @davidzwa in #2570
  • Release 1.5.2 YAML fixes by @davidzwa in #2572

Full Changelog: 1.5.1...1.5.2

1.5.1 Awesome Axolotl 😃

04 Nov 12:00
c2efb8d
Compare
Choose a tag to compare

Fixes the package.json main field. This makes the server better suitable for installation using npm i -g @fdm-monster/server or yarn global add @fdm-monster/server