vcswatch reports that
this package seems to have a new changelog entry (version
1:2.10.0~pre1, distribution
UNRELEASED) and new commits
in its VCS. You should consider whether it's time to make
an upload.
Here are the relevant commit messages:
commit 89b2d5b4694cef94b4bd2e692ecb690d7d47495d
Merge: ae2d0a73 5c31ef1b
Author: BsAtHome <bertho@vagrearg.org>
Date: Sat Aug 8 16:59:40 2026 +0200
Merge pull request #4361 from grandixximo/docs-asciideps-targets
docs(build): name the real target in the generated dependencies
commit 5c31ef1b969f5464183001427cf2d63059bd3720
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Sat Aug 8 13:55:07 2026 +1000
docs(build): name the real target in the generated dependencies
asciideps derives the target it emits by stripping a `.txt` suffix, which is what the docs were written in when it landed in 2011. Since the sources became `.adoc` nothing is stripped, so it generates rules for targets like docs/build/adoc/en/hal/tutorial.adoc.html that nothing builds: every include:: and image: dependency it has extracted since then has been inert.
Editing hal/halshow.adoc therefore never re-rendered hal/tutorial.html, which include::s it, and editing a chapter never rebuilt the Master PDF pulling it in. Master_Documentation.adoc alone include::s 119 files, so all four English PDFs stayed stale until docclean.
The target is not derivable from the source path, so pass it in: a page is consumed by its .html, a Master document is never rendered as HTML and its English PDF lands in objects/. The unused `.dep` line went with the rewrite.
Reconnecting the dependencies exposed three latent problems, fixed here:
- Commented-out image: macros counted as dependencies. The macro is matched anywhere on the line so inline refs are caught, which also matched a ref behind a `//`; one in gui/gmoccapy.adoc points at a since-deleted image, stopping the build.
- Images referenced inline were never staged into the translated adoc tree, because .adoc-images-stamp anchored its scan at the start of the line. The translated PDFs embed images from that tree, so they have been missing all 39 of them. Both extractors now key on the macro shape rather than a bare `image:`, so prose mentioning one is not taken for a path.
- Staged translated images had no rule of their own. Named as prerequisites, a clean -j build reached one before the bulk stamp had written it and fell through to the "Required image file" error rule. Each now stages on demand; the bulk pass stays, since asciideps records only the last macro on a line and cannot be the guarantee that asciidoctor-pdf finds every image.
Verified with HTML, PDF and the seven translations enabled: a clean build renders 5210 pages and 32 Master PDFs with no unresolved directives, the two builds after it do no work, and touching a page, a partial, a chapter or an image rebuilds exactly what depends on it in a single `make`.
commit ae2d0a7376df82866869fe98e528da36ee56ce62
Merge: 64ade4cb 6c13d05e
Author: BsAtHome <bertho@vagrearg.org>
Date: Sat Aug 8 15:48:35 2026 +0200
Merge pull request #4356 from grandixximo/fix/halscope-relaunch
halscope: fix "loadrt scope_rt failed" when reopening the scope
commit 64ade4cb9b276400884edd104550eef119ed4f6a
Merge: 59e350a9 cf7349aa
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Sat Aug 8 23:41:30 2026 +1000
Merge pull request #4363 from BsAtHome/fix_linuxcncrsh-typo
linuxcncrsh: Fix typo in reply text asserting a SET as a GET command
commit 59e350a9a731d4699b215dccc92b4495ad543f5c
Merge: 218e7419 bbb72b2a
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Sat Aug 8 23:06:45 2026 +1000
Merge pull request #4362 from weblate/weblate-linuxcnc-linuxcnc
Translations update from Hosted Weblate
commit bbb72b2a85bcc4b974255922d94a04f55aa6307b
Author: Olivier M <olinews@free.fr>
Date: Sat Aug 8 13:51:23 2026 +0200
Translated using Weblate (French)
Currently translated at 73.0% (2833 of 3877 strings)
Co-authored-by: Olivier M <olinews@free.fr>
Translate-URL: https://hosted.weblate.org/projects/linuxcnc/linuxcnc/fr/
Translation: LinuxCNC/LinuxCNC
commit 218e7419d6c711240b5797c770ac1257aef313d8
Merge: 6de285c6 cf78a016
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Sat Aug 8 22:36:07 2026 +1000
Merge pull request #4352 from BsAtHome/halgs_halrmt
hal: Rewrite most of halrmt to become functional and use the query API
commit 6de285c61dc9e411912421d12d9af7de122716ff
Merge: c794fccd a70ec3d3
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Sat Aug 8 22:09:04 2026 +1000
Merge pull request #4355 from BsAtHome/fix_inifile-emcmodule-doc
docs: add ini-file API documentation for linuxcnc.ini module
commit cf7349aa03ca16d86f668b25d9c0d0a6e903d361
Author: Bertho Stultiens <bertho@vagrearg.org>
Date: Fri Aug 7 12:04:09 2026 +0200
linuxcncrsh: Fix typo in reply text asserting a SET as a GET command.
commit cf78a01688ecf10ec67018c7c48a2a6cbf64b08a
Author: Bertho Stultiens <bertho@vagrearg.org>
Date: Fri Aug 7 12:04:09 2026 +0200
hal: Rewrite most of halrmt to become functional and use the query API.
commit a70ec3d3e946417933667aa1f5deda0322a809bf
Author: Bertho Stultiens <bertho@vagrearg.org>
Date: Fri Aug 7 15:10:09 2026 +0200
docs: add ini-file API documentation for linuxcnc.ini module.
commit c794fccd045dd52f86009db22cb02c8aeb143def
Merge: cb2c8aa6 27c09bec
Author: BsAtHome <bertho@vagrearg.org>
Date: Sat Aug 8 12:49:37 2026 +0200
Merge pull request #4358 from grandixximo/docs-rebuild-unstable
docs(build): stage English sources with per-file rules so one make rebuilds
commit 6c13d05eae563fcee73a761996329f27e153c02c
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Fri Aug 7 22:46:45 2026 +1000
halscope: fix "loadrt scope_rt failed" when reopening the scope
Closing halscope leaves scope_rt loaded, so every launch after the first
has to detect that the realtime part is already there and skip the
loadrt. That detection broke in d88d10db8f: the funct lookup
halpr_find_funct_by_name("scope.sample") was replaced with the component
lookup hal_comp_by_name("scope.sample", NULL). No component is named
"scope.sample" (the component is "scope_rt", "scope.sample" is the funct
it exports), so the lookup always returns -ENOENT and halscope always
runs "halcmd loadrt scope_rt".
On the second launch that loadrt fails because scope_rt is already
loaded, and halscope exits immediately with "loadrt scope_rt failed".
From a GUI such as AXIS ("Machine" > "Hal Scope") the window simply
never appears again until LinuxCNC is restarted.
Look the funct up with hal_list_funct() instead, the same way
scope_horiz.c already does, which restores the original semantics.
commit cb2c8aa689c0f1f386d5f35008984cbe0a655f24
Merge: e96acd9a 7a4659de
Author: BsAtHome <bertho@vagrearg.org>
Date: Sat Aug 8 11:53:36 2026 +0200
Merge pull request #4360 from grandixximo/three21kins-getter-setter
hal: Update three21kins to getter/setter
commit e96acd9aa29f2835d95ba857c5a7ec2f9ecff41b
Merge: 4aa969b3 8c722046
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Sat Aug 8 17:23:02 2026 +1000
Merge pull request #4357 from grandixximo/gmoccapy-4353-y2-button
gmoccapy: don't show_all() containers holding embedded tabs
commit 4aa969b3bb2f4ba4bb1bb18dc901610c5a2114a6
Merge: 79bbeb90 f4bdaa37
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Sat Aug 8 17:10:00 2026 +1000
Merge pull request #4270 from sleepybishop/three21
Add three21kins analytical kinematics solver
commit 7a4659dee2d1788cd2923ad9b84d84663577e8ae
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Sat Aug 8 16:55:42 2026 +1000
hal: Update three21kins to getter/setter.
three21kins was merged from a branch that predated the tree-wide
kinematics conversion in 51fc3029b0, so it still used the old
double-pointer pin pattern.
Store the DH parameters as hal_real_t members, create the pins with
hal_pin_new_real() so the defaults come from the pin definition, and
read them with hal_get_real(). The per-call local copies of the
parameters are kept as they were.
No functional change.
commit 27c09becca4b8677527dd78d2df2b17c6e3291cc
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Fri Aug 7 22:53:43 2026 +1000
docs(build): stage English sources with per-file rules so one make rebuilds
Fixes #4354. After a full HTML docs build, touching a source under docs/src did nothing on the next `make`; only the run after that re-rendered the page.
English sources are staged into docs/build/adoc/en by a bulk find|tar behind `.stage-en-stamp`, with the staged copies attached to it order-only. make stats a prerequisite once per run and re-stats it only if it decided to remake it, and an order-only edge never triggers a remake, so the staged .adoc kept its pre-staging mtime for the whole run. The stamp rewrote that same file mid-run, but the renderer had already compared the .html against the stale mtime and concluded it was up to date.
Replace the stamp with one copy rule per staged file, so make knows the staged copy changed. cp -p also keeps the source mtime to the nanosecond where tar rounded it down to the whole second. Per-file rules alone would stage only what some rule asks for, which is a smaller set than the bulk copy produced, so a `stage-en` aggregate keeps the old guarantee that everything lands before anything renders; without it a partial like hal/halshow.adoc never arrives and the page including it renders an "Unresolved directive" placeholder.
commit 79bbeb90cc1046549b4656acd2e6a835b7d40a77
Merge: 41ce781a 17221742
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Sat Aug 8 13:39:32 2026 +1000
Merge pull request #4346 from LinuxCNC/dual_pid_doc
docs -add writeup about a dual PID axis example
commit 8c72204638a9e5fffd3f4b4f210cf3ae4ef76bb4
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Sat Aug 8 10:53:13 2026 +0800
gmoccapy: don't show_all() containers holding embedded tabs
show_all() on ntb_preview recursively unhid widgets hidden at init,
i.e. the lathe-only back-tool view button rbt_view_y2, making it
appear on mill configs. Show only the container, the socket and its
tab label.
Fixes #4353
commit 17221742bfa94097af561ca0a165d2a1df621cbb
Author: Cmorley <chrisinnanaimo@hotmail.com>
Date: Wed Aug 5 19:08:54 2026 -0700
docs -add writeup about a dual PID axis example
commit f4bdaa372355d4fb8e48d636034384d2dec5fb2d
Merge: 5c5aed95 41ce781a
Author: joseph calderon <calderon.joe@gmail.com>
Date: Fri Aug 7 18:00:58 2026 -0700
merge upstream/master
commit 41ce781a299b6bcd71862d6556a8536db086298a
Merge: 132c2b88 82cd21f9
Author: BsAtHome <bertho@vagrearg.org>
Date: Fri Aug 7 16:03:37 2026 +0200
Merge pull request #4337 from grandixximo/fix/homecomp-rebuild
hal: restore working homecomp example
commit 132c2b88f6242ae1c9aa6bb2f4c6a47dd12bfc04
Merge: d4ea0c67 0d3ddc10
Author: BsAtHome <bertho@vagrearg.org>
Date: Fri Aug 7 15:17:57 2026 +0200
Merge pull request #4351 from grandixximo/emcrsh-wait-homed
linuxcncrsh: Fix race between SET JOINT_HOME and SET JOINT_WAIT_HOMED
commit 0d3ddc10f22ac84b0edcc33c4d12692ba2446ba1
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Fri Aug 7 10:35:47 2026 +0800
linuxcncrsh: Fix race between SET JOINT_HOME and SET JOINT_WAIT_HOMED
SET JOINT_HOME is acknowledged when task has received the command, but the motion controller raises the homing flag only after its next servo-thread run and the status needs to propagate back through task. A SET JOINT_WAIT_HOMED issued in between was refused with 'not homed and not in the process of homing', and the following homing commands then failed with 'Homing not possible until current homing process is finished'. This showed up as intermittent tests/linuxcncrsh failures on slow CI runners.
SET JOINT_HOME now waits for the requested joint to become homing or homed, one heartbeat at a time, the same way SET MACHINE and SET ESTOP wait for the motion controller to catch up, and refuses the command if homing never starts. A homed joint may legitimately not enter the homing state again (HOME_NO_REHOME), hence the check for either state. Home-all (-1) is excluded because joints without HOME_SEQUENCE are skipped by design. SET JOINT_WAIT_HOMED keeps a grace wait for the homing flag before declaring the error, since the homing may have been started through a different user interface.
commit d4ea0c67b8a024c656b735b822649ed1062f7ae3
Merge: dd8d0be1 6c52011d
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Thu Aug 6 22:20:35 2026 -0400
Merge pull request #4284 from grandixximo/motion-mode-retry
motion: defer mode transitions instead of dropping them when not in position
commit dd8d0be15b88bdb163ab17a6f0ea5f73936cdffc
Merge: 98120adc fe6f88f2
Author: Hans Unzner <hansunzner@gmail.com>
Date: Thu Aug 6 13:45:56 2026 +0200
Merge pull request #4348 from grandixximo/axis-sim-traj-maxvel
configs: align sim axis [TRAJ] max velocity with [DISPLAY] and joints
commit fe6f88f2a432c094f8d47698962703ab0c13b2dd
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Thu Aug 6 14:55:58 2026 +0800
configs: align sim axis [TRAJ] max velocity with [DISPLAY] and joints
axis.ini is the only shipped GUI sim config where
[DISPLAY]MAX_LINEAR_VELOCITY (5) disagrees with
[TRAJ]MAX_LINEAR_VELOCITY (4); gmoccapy sets both equal and
touchy/axis_mm rely on the TRAJ fallback. The joints are 5 too.
The mismatch is not just cosmetic. axis initializes its Max Velocity
slider to the [DISPLAY] maximum and the Tk scale -command sends
EMC_TRAJ_SET_MAX_VELOCITY(5) at startup; emcTrajSetMaxVelocity()
writes that straight to motion as EMCMOT_SET_VEL_LIMIT with no clamp
against the ini value, after initraj already seeded the limit with
the [TRAJ] value (4). If the GUI's NML write lands before
linuxcncsvr formats the command buffer it is lost and the machine
keeps 4; otherwise it runs at 5. The coordinated-move velocity cap
for this config therefore depends on startup timing, and the axis
Max Velocity readout settles at 240 or 300 in/min accordingly.
Set [TRAJ]MAX_LINEAR_VELOCITY to 5 so the power-on default matches
the [DISPLAY] slider maximum and the joint limits, making the
settled cap deterministic. Practical behavior barely changes: axis
already tries to set 5 at every startup, it just sometimes fails.
commit 98120adc271a91f6be69b98d489f14d75ce23507
Merge: df2e9187 fcfb06bf
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Thu Aug 6 01:29:07 2026 -0400
Merge pull request #4347 from grandixximo/chore/ci-mirror-fix
CI: rewrite apt-mirrors.txt so the mirror switch actually applies
commit fcfb06bfe8ee0509d0888a1e5400d130be4b37ab
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Thu Aug 6 13:01:00 2026 +0800
CI: rewrite apt-mirrors.txt so the mirror switch actually applies
The runner image configures apt with
URIs: mirror+file:///etc/apt/apt-mirrors.txt in ubuntu.sources, so the
azure.archive.ubuntu.com URL lives in that file, not in sources.list or
the .list/.sources files. The sed pass in 1d46401b07 therefore matched
nothing and apt kept using the azure mirror; jobs kept stalling.
Add /etc/apt/apt-mirrors.txt to the rewrite list and fail the step if
any azure.archive.ubuntu.com reference survives under /etc/apt, so a
future runner image layout change cannot turn this script into a
silent no-op again.
commit df2e918723a0afe2e0f7e1b24741bd59b4e27d4c
Merge: 9d52bb1f dd687592
Author: BsAtHome <bertho@vagrearg.org>
Date: Wed Aug 5 23:21:55 2026 +0200
Merge pull request #4199 from hdiethelm/hm2_eth_oob_v5
Mesa Hostmot2 Xenomai4 OOB networking support
commit dd687592a33c13cd234d06929d7c7e62fb03e8e0
Author: Hannes Diethelm <hannes.diethelm@gmail.com>
Date: Tue Aug 4 22:33:39 2026 +0200
hm2_eth: Improve timeout handling
There where three different ways of handling recv timeouts. The reason
is probably that SO_RCVTIMEO works only down to 8ms which would create a
real time violation.
By using ppoll(), timeouts down to 100us work reliably without needing
to poll recv with MSG_DONTWAIT. This reduces the CPU load considerably.
commit 1696cda44e94110115f20f148a5e86f7140f87ea
Author: Hannes Diethelm <hannes.diethelm@gmail.com>
Date: Sun Jul 19 13:24:15 2026 +0200
Xenomai EVL network for Hostmot2: Docs
Also document missing pin packet-error-total.
commit 8ff2665028abb8a15f8335e5740310137d395a9a
Author: Hannes Diethelm <hannes.diethelm@gmail.com>
Date: Sun Jul 19 12:47:36 2026 +0200
Xenomai EVL network for Hostmot2
Split into two network implementations, one for posix and one for evl.
There is a new option for hm2_eth: board_rtnet=evl / board_rtnet=posix
to select which network implementation is used.
With board_rtnet=evl, initf hm2_eth.realtime-init servo-thread needs to
be added to the .ini file to initialize the realtime network inside the realtime context.
commit 9d52bb1f7e674928a3cc42b775fbd05f1db16776
Merge: 7d5d573c 28b8909e
Author: BsAtHome <bertho@vagrearg.org>
Date: Wed Aug 5 13:56:15 2026 +0200
Merge pull request #4340 from grandixximo/docs-anchor-lint
docs: add derived-id section reference lint
commit 7d5d573c5d6fc32ac3f9c9a4cd23aeec7cc42cb5
Merge: 01de207d 1f54c987
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Wed Aug 5 07:47:31 2026 -0400
Merge pull request #4342 from Sigma1912/Update_spindle_orient_docs
Update spindle orient docs
commit 28b8909e911dbeae325cde1cff87e77b228f21bc
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Wed Aug 5 11:08:23 2026 +0800
docs: add derived-id section reference lint
scripts/docs-anchor-check.py, wired into the htmldocs CI job with
--enforce, flags <<_derived>> xrefs and link:...html#_derived URLs
whose target has no explicit [[anchor]] in docs/src. Derived ids come
from section titles, so such references break when a title is
translated or retitled. Pin the target with an explicit anchor
instead. The lint reads only the English sources, so translations
cannot trip it.
Also pins the remaining lint hits, all same-page links in untranslated
man pages (_subcommands, _mbccs_file_format, _modbus_functions,
_modbus_types, _hal_types). Explicit ids match the auto-generated
ones, so output is unchanged. With the five anchors from #4339 merged,
the lint reports the tree clean.
commit 01de207da6939f1dbf7bc5bf0fa0c165f893a4e7
Merge: 5474573f b1e38ca0
Author: BsAtHome <bertho@vagrearg.org>
Date: Wed Aug 5 12:05:08 2026 +0200
Merge pull request #4339 from grandixximo/docs-anchor-auto-ids
docs: add explicit anchors for sections referenced by auto-generated ids
commit 1f54c987f4bbc6cfcaa18df4336260bf6ca396cc
Author: david mueller <mueller_david@hotmail.com>
Date: Wed Aug 5 10:12:14 2026 +0100
Man: Remove outdated logic description from man page
The relevant logic was changed in Commit b2cd764 but the man page was not updated.
The Functionality of the logic is likely easier to understand by looking at the code.
commit 444d06882175d1ca0b17315bda6c6590866c0aaf
Author: david mueller <mueller_david@hotmail.com>
Date: Wed Aug 5 10:11:06 2026 +0100
Docs: M19 does not use encoder index signal
commit b1e38ca0a82150ee5942bdcd8561524b83944a49
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Wed Aug 5 10:41:03 2026 +0800
docs: add explicit anchors for sections referenced by auto ids
These five sections are linked to via their auto-generated ids
(_normal_download, _alternate_install_methods, _latency_tuning,
_ini_settings, _commands). Translations change the section titles,
which changes the generated id and breaks every such link in the
translated HTML (flagged by the CI checklink run for de, es, ru, uk
and nb). Pinning the id with an explicit anchor makes the targets
translation-proof. English output is unchanged since the explicit id
matches the auto-generated one.
commit 5474573f703ecf128916481a46da07dd976acde7
Merge: 85b35db3 7512f354
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Tue Aug 4 07:39:28 2026 -0400
Merge pull request #4338 from BsAtHome/halgs_taskclass-iocontrol
hal: Update iocontrol to use getter/setter
commit 85b35db3f1a38a49cb82907a0b46148a81f84fe6
Merge: 02765328 b7ed2f65
Author: BsAtHome <bertho@vagrearg.org>
Date: Tue Aug 4 13:22:43 2026 +0200
Merge pull request #4246 from grandixximo/feat/man-xref-links
docs: link manpage cross-references in HTML output
commit 027653288d664a2aeb5ea19251558fd0eb9e60e2
Merge: bedcc577 d1fe710f
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Tue Aug 4 06:59:13 2026 -0400
Merge pull request #4330 from BsAtHome/halgs_components-rtai
hal: Update kernel-only components (RTAI) to getter/setter
commit 7512f3543cf14a69091c41e4360466d1929e3b99
Author: Bertho Stultiens <bertho@vagrearg.org>
Date: Tue Aug 4 12:21:59 2026 +0200
hal: Update iocontrol to use getter/setter.
commit d1fe710fbc1750837460dac901f58c7fe937d117
Author: Bertho Stultiens <bertho@vagrearg.org>
Date: Mon Aug 3 17:17:51 2026 +0200
hal: Update kernel-only components (RTAI) to getter/setter.
commit bedcc5771ab38ac449e54983131a6d632d04fd15
Merge: b0b9ded1 1d46401b
Author: andypugh <andy@bodgesoc.org>
Date: Tue Aug 4 09:35:26 2026 +0100
Merge pull request #4336 from grandixximo/ci-apt-mirror
CI: Use main Ubuntu archive instead of azure.archive.ubuntu.com
commit 82cd21f954feb3a3aeceb6b71cd9ecbf3290d5e4
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Tue Aug 4 16:29:38 2026 +0800
docs: document the homing module interface
Add per-function documentation to homing.h: what each interface
function does, when motmod calls it, and return semantics. Point to
it from the code-notes motion-controller section and from the
homecomp description so man page readers find it.
commit 76d079c03e475fd16fe96fb8b85d8edffd59d2df
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Tue Aug 4 13:26:21 2026 +0800
hal: restore working homecomp example
commit 1d46401b070270cb3185201465c208b70f678fc0
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Tue Aug 4 07:52:24 2026 +0800
CI: Use main Ubuntu archive instead of azure.archive.ubuntu.com
The azure.archive.ubuntu.com apt mirror on GitHub-hosted runners
regularly degrades to trickle speeds for extended periods, stalling
package downloads until the job hits its timeout. This is a recurring
upstream problem, see actions/runner-images issues #7048 and #12949.
apt retries do not help because the connection stays alive, only slow.
Switch affected jobs to archive.ubuntu.com, which is consistently fast
from Azure.
commit b0b9ded1f203853a26b4d94afb14252f59813faf
Merge: b90764b3 5e7543c4
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Mon Aug 3 19:48:57 2026 -0400
Merge pull request #4335 from BsAtHome/halgs_component-pid
hal: Update component pid to getter/setter
commit b90764b316bf72b7124da2b64a73fc1fc4846ec4
Merge: 92f179ae bff5677e
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Mon Aug 3 19:42:29 2026 -0400
Merge pull request #4333 from BsAtHome/halgs_component-stepgen
hal: Update component stepgen to getter/setter
commit 92f179aea651cb3f0edd90d7add0c308879ac114
Merge: 195b61a7 684336d6
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Mon Aug 3 19:42:14 2026 -0400
Merge pull request #4332 from BsAtHome/halgs_component-boss_plc
hal: Update boss_plc component to getter/setter
commit 195b61a7b49323f161935fa95681856bccd2f778
Merge: 0aa900c9 10f91148
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Mon Aug 3 18:52:37 2026 -0400
Merge pull request #4334 from BsAtHome/halgs_component-encoder
hal: Update encoder component to getter/setter
commit 0aa900c9e5d88dcb35b98889b5a2a0bb8ba5a51a
Merge: ddd8aef6 203e52f8
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Mon Aug 3 18:52:25 2026 -0400
Merge pull request #4331 from BsAtHome/halgs_halmodule-doc
docs: Document get_p/get_s in halmodule
commit 5e7543c4bcc8896d315a85366ba6bfb85e8216e5
Author: Bertho Stultiens <bertho@vagrearg.org>
Date: Mon Aug 3 23:56:05 2026 +0200
hal: Update component pid to getter/setter.
commit 10f911485e2a09a3ab4fcfef9074ed7263f143df
Author: Bertho Stultiens <bertho@vagrearg.org>
Date: Mon Aug 3 22:53:26 2026 +0200
hal: Update encoder component to getter/setter.
commit bff5677e0dacaff0ec35644f1cf9753a2a0c10a5
Author: Bertho Stultiens <bertho@vagrearg.org>
Date: Mon Aug 3 23:11:30 2026 +0200
hal: Update component stepgen to getter/setter.
commit 684336d6da161c27101f56a134cf77c649442704
Author: Bertho Stultiens <bertho@vagrearg.org>
Date: Mon Aug 3 17:56:56 2026 +0200
hal: Update boss_plc component to getter/setter.
commit 203e52f892cc86dfb0699fa1d1139c87b3b3240a
Author: Bertho Stultiens <bertho@vagrearg.org>
Date: Mon Aug 3 17:29:06 2026 +0200
docs: Document get_p/get_s in halmodule.
commit ddd8aef64b833e7c2913a2e6bc0f612b8c76f4d4
Merge: d30c9e4d 4af4170b
Author: BsAtHome <bertho@vagrearg.org>
Date: Mon Aug 3 16:31:46 2026 +0200
Merge pull request #4193 from grandixximo/fix-manpage-troff-naming
docs: pin manpage troff filename to the make target
commit d30c9e4d3e72ab7d5a481cd56f5a931b3497efd0
Merge: fa13318d dc1f114c
Author: BsAtHome <bertho@vagrearg.org>
Date: Mon Aug 3 16:05:54 2026 +0200
Merge pull request #4329 from grandixximo/homecomp-is-module-bool
hal: Migrate homecomp is_module pin declaration to bool
commit fa13318dfd88b410bedf1343afe164562e562874
Merge: 07e1c605 740a83f8
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Mon Aug 3 09:45:28 2026 -0400
Merge pull request #4328 from BsAtHome/halgs_components-big-comp
hal: Update last set of .comp components to getter/setter
commit 07e1c6056ce5112a231ce39f2cd26fa3e5846610
Merge: bcae77b2 6ad49cf7
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Mon Aug 3 09:45:13 2026 -0400
Merge pull request #4327 from BsAtHome/halgs_interp-namedparams
hal: Update rs274 interpreter hal data fetch to query API
commit bcae77b24d9426b56ac7c63b2e497af7aaa3a023
Merge: 8dea853c 674effee
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Mon Aug 3 09:44:45 2026 -0400
Merge pull request #4326 from BsAtHome/halgs_user-comps-pendants
hal: Update the user component xhc pendants to getter/setter
commit dc1f114c87407a2ba19b54f7554349ec7cff6075
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Mon Aug 3 21:01:41 2026 +0800
hal: Migrate homecomp is_module pin declaration to bool
Leftover from f107cd307a: the is_module dummy pin was still declared
with the legacy bit type while the rest of homecomp uses the new
getter/setter API.
commit 4af4170b8dccc6c4fd5dd6b631cd4d2bb9dca0df
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Mon Aug 3 20:42:30 2026 +0800
docs: fail htmldocs CI on manpage NAME drift
Add --enforce (and MANPAGE_NAME_CHECK_ENFORCE) to manpage-name-check.py
so the check exits non-zero when a translated NAME line disagrees with
its filename, and turn it on for the htmldocs job. The tree is clean
as of the #4325 Weblate sync, so the gate starts green.
commit 5a59b82d630fbff291bdf82e2568f30071177996
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Tue Jun 23 15:11:58 2026 +0800
docs: report manpage NAME drift as a CI warning
After the doc build, scripts/manpage-name-check.py scans the built man
tree for pages whose rendered .TH name disagrees with their filename, the
sign of a translated NAME line that drifted from the command identifier.
Quiet when nothing drifted. When something has, it prints each page with
the string to search in Weblate and its current value side by side, so the
output is a ready worklist. Never fails the build: in CI it writes that
list to the job summary and emits one warning pointing at it. The NAME
lines are managed in Weblate, so fixes go there.
commit cdc7fe05baf3da82034724f87dafbaf9ef8c8587
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Mon Jun 22 16:11:05 2026 +0800
docs: pin manpage troff filename to the make target
asciidoctor names the troff from the page's NAME section, not the make
target. po4a translates that NAME, so a translation that altered a command
identifier (hm2_pktuart_read rendered as hm2_uart_read) misnames the troff;
two pages then race for one output under -j, one going missing.
Pass -o "$@" so the build graph sets each filename, produced once at its own
name regardless of translation.
commit 740a83f8743240fd49c661ce188ebbacb86b9325
Author: Bertho Stultiens <bertho@vagrearg.org>
Date: Mon Aug 3 14:18:48 2026 +0200
hal: Update last set of .comp components to getter/setter.
commit 6ad49cf7222a4158ddfb7a52f3319e4f2e81e114
Author: Bertho Stultiens <bertho@vagrearg.org>
Date: Mon Aug 3 13:44:45 2026 +0200
hal: Update rs274 interpreter hal data fetch to query API.
commit 8dea853c31bc53b2238d67b7c7e27638238d4b93
Merge: 71bf8800 cb22dd99
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Mon Aug 3 07:41:42 2026 -0400
Merge pull request #4325 from weblate/weblate-linuxcnc-linuxcnc-docs
Translations update from Hosted Weblate
commit cb22dd9937d91b04789f0f5887c190959d20ce31
Author: Américo Monteiro <a_monteiro@gmx.com>
Date: Mon Aug 3 10:40:35 2026 +0200
Translated using Weblate (Portuguese)
Currently translated at 25.6% (8714 of 33994 strings)
Author: Américo Monteiro <a_monteiro@gmx.com>
Co-authored-by: Américo Monteiro <a_monteiro@gmx.com>
Translate-URL: https://hosted.weblate.org/projects/linuxcnc/linuxcnc-docs/pt/
Translation: LinuxCNC/LinuxCNC Documentation
commit 40c84e9c80efe8941478e8641de8cafacd122a50
Author: Luca Toniolo <toniolo.luca@outlook.com>
Date: Mon Aug 3 10:40:34 2026 +0200
Translated using Weblate (Russian)
Currently translated at 34.3% (11668 of 33994 strings)
Author: Luca Toniolo <toniolo.luca@outlook.com>
Co-authored-by: Luca Toniolo <toniolo.luca@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/linuxcnc/linuxcnc-docs/ru/
Translation: LinuxCNC/LinuxCNC Documentation
commit ca8e554cc23e81b5f4fd14500074ba615d027f5f
Author: Salvador Peña <salvadorp74@hotmail.com>
Date: Mon Aug 3 10:40:33 2026 +0200
Translated using Weblate (Spanish)
Currently translated at 32.2% (10958 of 33994 strings)
Author: Salvador Peña <salvadorp74@hotmail.com>
Co-authored-by: Salvador Peña <salvadorp74@hotmail.com>
Translate-URL: https://hosted.weblate.org/projects/linuxcnc/linuxcnc-docs/es/
Translation: LinuxCNC/LinuxCNC Documentation
commit 71bf88009d64fa15edbebf9250b65ee4454f9a05
Merge: c82b00ba bc02955b
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Mon Aug 3 06:48:49 2026 -0400
Merge pull request #4324 from BsAtHome/halgs_components-simple-5
hal: Update mainly C components to getter/setter.
commit 674effee01cf40de719bb9ab4c4cbda9e86f50c8
Author: Bertho Stultiens <bertho@vagrearg.org>
Date: Mon Aug 3 12:29:14 2026 +0200
hal: Update the user component xhc pendants to getter/setter.
commit bc02955bc43c34fa3d0860fefc6ed48c82d7f66b
Author: Bertho Stultiens <bertho@vagrearg.org>
Date: Sun Aug 2 18:23:10 2026 +0200
hal: Update mainly C components to getter/setter.
commit c82b00baa50a655fc0c3ab22308e6552e6ca14b3
Merge: bb809e42 05de5742
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Mon Aug 3 04:32:24 2026 -0400
Merge pull request #4323 from BsAtHome/fix_hm2_eth-write_cnt
hm2_eth: Fix invalid soft error
commit 05de57424739e2b28e142015c69334a34faff329
Author: Bertho Stultiens <bertho@vagrearg.org>
Date: Sun Aug 2 17:27:08 2026 +0200
hm2_eth: Fix invalid soft error when non-queued writes precede queued read.
commit bb809e422eb410386a1177d80f98ab2bd49300d3
Merge: 0b27dd4c a49d1b11
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Sun Aug 2 19:53:06 2026 -0400
Merge pull request #4292 from weblate/weblate-linuxcnc-linuxcnc
Translations update from Hosted Weblate
commit a49d1b116bb50c96df60768be34c94a80f2672f7
Author: Sebastian Lee <17664081423@163.com>
Date: Thu Jul 30 10:01:50 2026 +0200
Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 80.4% (338 of 420 strings)
Co-authored-by: Sebastian Lee <17664081423@163.com>
Translate-URL: https://hosted.weblate.org/projects/linuxcnc/gmocappy/zh_Hans/
Translation: LinuxCNC/LinuxCNC/Gmocappy
commit 0b27dd4c4379f2f92217e3e51cf1d34d63772d47
Author: Cmorley <chrisinnanaimo@hotmail.com>
Date: Sat Aug 1 15:54:57 2026 -0700
glnav -add lathe rotated perspective code
qtdragon allows perspective in lathe mode.
Now it is rotated in the right direction.
commit 2f447aea609e25147bcc11b9905dda6be15fbd9d
Merge: ade82a4b 18e821e8
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Sun Aug 2 06:42:44 2026 -0400
Merge pull request #4317 from BsAtHome/halgs_halmodule
hal: Update halmodule to getter/setter and the query API
commit ade82a4b760ddd978afe094c69c9690cee305b7c
Merge: 0a62603e 39c69b22
Author: BsAtHome <bertho@vagrearg.org>
Date: Sun Aug 2 12:25:18 2026 +0200
Merge pull request #4314 from grandixximo/personality-guards
max31855: reject personality above 15 at load time
commit 0a62603e32c365321190eb42e694a559f8350a18
Merge: a74d3089 567afbd4
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Sun Aug 2 06:08:21 2026 -0400
Merge pull request #4320 from BsAtHome/halgs_drivers-uspace-2
hal: Update the last uspace drivers to getter/setter
commit a74d30895492cc8a4b14812702f54425832db091
Merge: b51d0bce 01542235
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Sun Aug 2 05:50:58 2026 -0400
Merge pull request #4319 from BsAtHome/halgs_vfd-user-comps
hal: Update the remaining user component VFDs to getter/setter
commit 18e821e8a8449bfbe25ba7ab61bb71b6e42c2cfa
Author: Bertho Stultiens <bertho@vagrearg.org>
Date: Sat Aug 1 16:42:05 2026 +0200
hal: Update halmodule to getter/setter and the query API.
commit b51d0bce1ee8b8720f55230cdccdcf7c13af8b01
Merge: cdcb1a50 c05c9913
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Sun Aug 2 05:42:45 2026 -0400
Merge pull request #4217 from hdiethelm/fix_gtk_mesa_tests
gtk_mesa_tests: Fix calculation in %
commit 567afbd4aaeb469a0c3cd0e8358269ab030d3af5
Author: Bertho Stultiens <bertho@vagrearg.org>
Date: Sun Aug 2 00:11:31 2026 +0200
hal: Update the last uspace drivers to getter/setter.
commit 0154223509082999690ca7538f2ddfc75165ef3e
Author: Bertho Stultiens <bertho@vagrearg.org>
Date: Sat Aug 1 19:03:09 2026 +0200
hal: Update the remaining user component VFDs to getter/setter.
commit c05c99130183af47b65641509928f6d218f5d732
Author: Hannes Diethelm <hannes.diethelm@gmail.com>
Date: Wed Jul 1 16:49:55 2026 +0200
gtk_mesa_tests: Remove the now unneeded CPU Speed
commit 72b72782a505afbb25f69ab4aaf46478a08065ef
Author: Hannes Diethelm <hannes.diethelm@gmail.com>
Date: Wed Jul 1 16:20:38 2026 +0200
gtk_mesa_tests: Fix calculation in %
https://github.com/LinuxCNC/linuxcnc/pull/4082 changed the time values
from cycles to ns.
This broke the calculation of % values and the CPU clock is not needed any more.
commit 39c69b22edb0bff49f0b704c092c45c96a426dab
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Sat Aug 1 18:15:07 2026 +0800
max31855: reject personality above 15 at load time
Follow-up to #4302. The pins are sized by (personality & 0xf) but the function indexes them with the raw value capped at 15, so personality=16 exports zero sensor pins while the function accesses 15 of them, killing rtapi_app when the thread runs.
Reject in EXTRA_SETUP with -EINVAL so the failure shows up at loadrt time. Also note in comp.adoc that components with personality-sized pins should validate the value in EXTRA_SETUP, with an example.
commit cdcb1a504dfd6f2f77be1bc8d83a4f413038d7f7
Author: Greg Carl <26096779+snowgoer540@users.noreply.github.com>
Date: Sat Aug 1 13:49:51 2026 -0400
qtplasmac: reload after g10 for bounds checking
Previously if a rotation was applied via MDI, the usual bounds checking was not invoked, and if the cut paths fell outside of the machine envelope the user was not notified and some interlocking broke as well.
commit 0c7f9df8b0d2f92d524e52e920710102d1212bf5
Merge: 599f9c9d 7b69a7c8
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Sat Aug 1 10:18:29 2026 -0400
Merge pull request #4315 from BsAtHome/fix_rtai-ci-connreset-retry
CI: Retry rtai downloads if they fail (often connection resets)
commit 7b69a7c8c2a779296648fff2562aaba243f12263
Author: Bertho Stultiens <bertho@vagrearg.org>
Date: Sat Aug 1 14:04:04 2026 +0200
CI: Retry rtai downloads if they fail (often connection resets)
commit 599f9c9dd9baedd256469939b5c2547a24f74036
Merge: 8f38fa40 45e30fca
Author: Luca Toniolo <10792599+grandixximo@users.noreply.github.com>
Date: Sat Aug 1 06:53:02 2026 -0400
Merge pull request #4311 from BsAtHome/halgs_small-user_comps
hal: Update the smaller user components to getter/setter
commit 8f38fa40f8f7ad0ab48bd19f397f06954b21125f
Merge: 9b322f46 cd8eb00a
Author: BsAtHome <bertho@vagrearg.org>
Date: Sat Aug 1 12:39:55 2026 +0200
Merge pull request #4218 from hdiethelm/hm2_eth_buffer_checks
hm2_eth: read / write buffer checks
commit 9b322f4675dd5cd3aeab55add42e52131dbc98a9
Merge: da4dedaa edb21b7e
Author: BsAtHome <bertho@vagrearg.org>
Date: Sat Aug 1 12:34:34 2026 +0200
Merge pull request #4191 from grandixximo/remove-dead-check-config-tcl
Remove check_config.tcl, superseded by linuxcnc_check_ini.py