Skip to content

Commit 2983b92

Browse files
committed
Merge remote-tracking branch 'origin/master' into dev
2 parents 011db46 + 71d67a2 commit 2983b92

5 files changed

Lines changed: 143 additions & 8 deletions

File tree

README.md

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,39 @@ gSender is also designed in a way that it can be run locally on your computer br
113113
<details>
114114
<summary>Expand to see all version notes</summary>
115115

116+
### 1.5.3 (August 4, 2025)
117+
- Outline runs if visualizer disabled in lightweight mode
118+
- Added new config option for outline - can now run detailed (old routines, travels rough shape of toolpath) or square (the bounding box)
119+
- Alterations to connection to make grbl detection more robust. FluidNC should now catch as grbl.
120+
- Fixed unit miscalculation on file stats
121+
- Remote mode configuration made more robust to reduce situations where the app fails to start.
122+
- Unit conversion fixes in squaring and calibration tools
123+
- Stock turning and Probe rotary properly disable when in non-rotary mode
124+
- Jog presets in config now reflect selected Carve screen units.
125+
- Units again appear in config when connected to grbl board.
126+
- Fixed load state issue when previous file was paused
127+
- Corner selection in probing now persists between gSender sessions.
128+
- Re-added the bad file and bad line detection with some improvements. They should now appear in the Helper.
129+
- Rename rotary install track length to appropriate value
130+
- Stats connection summary formatted correctly for ethernet connection.
131+
- Firmware settings imports now apply immediately on import.
132+
- Gamepad profiles now represent the button name if known instead of just numbers.
133+
- Visualizer grid now respects carve screen units.
134+
- Visualizer colours now correct with Light visualizer theme.
135+
- Spindle dropdown again reflects the current firmware spindle.
136+
- AXS parsing should be more robust on grblHAL devices.
137+
- Fixed edge cases in surfacing generation that could miss strip in center.
138+
- Spindle/Laser toggle behaviour more closely matches 1.4.12 implementation.
139+
- Z jogging popup re-added to calibration tools.
140+
- Various config sorting and filtering changes.
141+
- Load File area looks a little better in dark mode.
142+
- Fixed cases where visualizer could go blank and not re-appear until toggling camera.
143+
- Added spindle delay option to rotary surfacing tool.
144+
- Plus and Minus buttons behaviour tweaks on jog feeds and distances
145+
- Force Hard and Soft Limits config options type updated and no longer crash the application.
146+
- Various look and feel and text changes.
147+
148+
116149
### 1.5.2 (July 15, 2025)
117150
- Fix issues with remote mode disconnecting main client and jobs stopping when connecting from remote mode
118151
- Significantly sped up file loading and rendering on larger files

scripts/package-sync.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ const fs = require("fs");
66
const path = require("path");
77
const _uniq = require("lodash/uniq");
88
const findImports = require("find-imports");
9+
const { parseLatestReadmeNotes } = require('./readme_sync');
910

1011
// Copy necessary properties from 'package.json' to 'src/app/package.json'
1112
const pkg = require("../package.json");
@@ -56,3 +57,6 @@ const secondContent = JSON.stringify(pkgApp, null, 2);
5657

5758
fs.writeFileSync(target, content + "\n", "utf8");
5859
fs.writeFileSync(secondTarget, secondContent + "\n", "utf8");
60+
61+
// Update readme notes
62+
parseLatestReadmeNotes();

scripts/readme_sync.js

Lines changed: 19 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,10 @@ import fs from 'fs';
22

33
export function parseLatestReadmeNotes() {
44
const readme = fs.readFileSync('README.md', 'utf8');
5+
let re = /### (\d.\d.\d) \((.*)\)/;
56

6-
const notes = readme.split('## 🕣 Development History')[1];
7-
7+
const notes = readme.split('<summary>Expand to see all version notes</summary>')[1];
8+
const collectedNotes = [];
89
let headerCount = 0;
910

1011
const latestReleaseNotes = notes.split('\n').filter(line => {
@@ -17,7 +18,20 @@ export function parseLatestReadmeNotes() {
1718
return headerCount < 4;
1819
}).map(line => line.trim());
1920

20-
console.log(latestReleaseNotes);
21-
}
21+
let currentVersion = null;
22+
for (let line of latestReleaseNotes) {
23+
const match = line.match(re);
24+
if (match) {
25+
currentVersion && collectedNotes.push(currentVersion);
26+
currentVersion = {};
27+
currentVersion.version = match[1];
28+
currentVersion.date = match[2];
29+
currentVersion.notes = [];
30+
} else {
31+
currentVersion.notes.push(line.replace('- ', ''));
32+
}
33+
}
2234

23-
parseLatestReadmeNotes();
35+
collectedNotes.push(currentVersion);
36+
fs.writeFileSync('./src/server/api/notes.json', JSON.stringify(collectedNotes, null, 2));
37+
}

src/server/api/api.releasenotes.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,8 @@
2323

2424
// import fs from 'fs';
2525
// import path from 'path';
26-
27-
const releases = [
26+
import releases from './notes.json';
27+
/*const releases = [
2828
{
2929
'version': '1.5.2',
3030
'date': 'July 15th, 2025',
@@ -109,7 +109,7 @@ const releases = [
109109
'Fixed rare situation where connecting to grblHAL controller, disconnecting, and reconnecting to GRBL controller caused invalid laser/spindle mode toggle behaviour.'
110110
]
111111
},
112-
];
112+
];*/
113113

114114
export const fetchReleaseNotes = (req, res) => {
115115
try {

src/server/api/notes.json

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
[
2+
{
3+
"version": "1.5.3",
4+
"date": "August 4, 2025",
5+
"notes": [
6+
"Outline runs if visualizer disabled in lightweight mode",
7+
"Added new config option for outline - can now run detailed (old routines, travels rough shape of toolpath) or square (the bounding box)",
8+
"Alterations to connection to make grbl detection more robust. FluidNC should now catch as grbl.",
9+
"Fixed unit miscalculation on file stats",
10+
"Remote mode configuration made more robust to reduce situations where the app fails to start.",
11+
"Unit conversion fixes in squaring and calibration tools",
12+
"Stock turning and Probe rotary properly disable when in non-rotary mode",
13+
"Jog presets in config now reflect selected Carve screen units.",
14+
"Units again appear in config when connected to grbl board.",
15+
"Fixed load state issue when previous file was paused",
16+
"Corner selection in probing now persists between gSender sessions.",
17+
"Re-added the bad file and bad line detection with some improvements. They should now appear in the Helper.",
18+
"Rename rotary install track length to appropriate value",
19+
"Stats connection summary formatted correctly for ethernet connection.",
20+
"Firmware settings imports now apply immediately on import.",
21+
"Gamepad profiles now represent the button name if known instead of just numbers.",
22+
"Visualizer grid now respects carve screen units.",
23+
"Visualizer colours now correct with Light visualizer theme.",
24+
"Spindle dropdown again reflects the current firmware spindle.",
25+
"AXS parsing should be more robust on grblHAL devices.",
26+
"Fixed edge cases in surfacing generation that could miss strip in center.",
27+
"Spindle/Laser toggle behaviour more closely matches 1.4.12 implementation.",
28+
"Z jogging popup re-added to calibration tools.",
29+
"Various config sorting and filtering changes.",
30+
"Load File area looks a little better in dark mode.",
31+
"Fixed cases where visualizer could go blank and not re-appear until toggling camera.",
32+
"Added spindle delay option to rotary surfacing tool.",
33+
"Plus and Minus buttons behaviour tweaks on jog feeds and distances",
34+
"Force Hard and Soft Limits config options type updated and no longer crash the application.",
35+
"Various look and feel and text changes."
36+
]
37+
},
38+
{
39+
"version": "1.5.2",
40+
"date": "July 15, 2025",
41+
"notes": [
42+
"Fix issues with remote mode disconnecting main client and jobs stopping when connecting from remote mode",
43+
"Significantly sped up file loading and rendering on larger files",
44+
"Job end notifications will no longer appear if toggled off",
45+
"SVG visualization no longer teeny-tiny on inches postprocessor files",
46+
"Plus and Minus buttons returned to jog speeds with the prior existing logic",
47+
"AutoZero touchplate renamed to just AutoZero",
48+
"Added new Config option for Jog Delay, which configures how long a keypress/UI press/gamepad press before swapping to continuous jogging",
49+
"Commands sent later in connection cycle to reduce situations where Error 1 occurs when unlocking and resetting the board",
50+
"Generating a surfacing file no longer causes issues on main visualizer if not sent there",
51+
"Motors sections again will disappear from config when empty",
52+
"Restore defaults and default highlight works correctly in Config on settings considered hybrid between grbl/grblHAL",
53+
"Prevented situations where alarm list was not populating correctly",
54+
"Continuous jog without soft limits now sends more sane values when jogging in Inches across both controllers",
55+
"Load bar now appears correctly in surfacing and rotary surfacing tools",
56+
"Stopping a file that has an early M0 already sent will no longer pop up the pause modal",
57+
"Stock turning and Probe Rotary Z disabled for grbl controllers when in non-Rotary mode",
58+
"Config look and Feel tweaks",
59+
"Shortcuts rearranged so more commonly set ones are higher up",
60+
"File stat feed rates now convert correctly",
61+
"Zero All on grblHAL no longer sends Zero on A if A Axis not reported",
62+
"Various look and feel changes"
63+
]
64+
},
65+
{
66+
"version": "1.5.1",
67+
"date": "June 27, 2025",
68+
"notes": [
69+
"Addressed issues where jog values kept reconverting",
70+
"Fixed crash when importing settings",
71+
"Updated some AltMill and LongMill default values",
72+
"Removed Zoom icons from visualizer",
73+
"Override sliders have switched to decaf and are now less jumpy",
74+
"Fixed unit issue with Go To popover and default values no longer populate Z with Y value",
75+
"Using tuning tools (Squaring and Steps/mm) now refresh EEPROM state and respect UI units",
76+
"Abs/Inc toggle in Go To popup moved to top",
77+
"Fixed issue where M0 in macros could result in a paused feeder state after unlocking preventing further code sending",
78+
"Fixed issue where Machine status overlapped unlock and connect on smaller resolutions and made them unclickable",
79+
"Disabling a drawer tool now defaults you to the first drawer element",
80+
"Fixed issue with tool select in probing working inconsistently and defaulting to Auto",
81+
"Rotary Axis travel resolution and maximum rate appearing again when connected with grbl"
82+
]
83+
}
84+
]

0 commit comments

Comments
 (0)