{"ref":"refs/heads/main","before":"c799df03af6ab73550adf3c79028fce34aad9ecf","after":"4ff2034a093eb094f1f0c4a4455ef1106606126a","repository":{"id":758965894,"node_id":"R_kgDOLTzmhg","name":"FreeCAD","full_name":"ilf-S/FreeCAD","private":false,"owner":{"name":"ilf-S","email":"ilf-S@users.noreply.github.com","login":"ilf-S","id":1728511,"node_id":"MDQ6VXNlcjE3Mjg1MTE=","avatar_url":"https://avatars.githubusercontent.com/u/1728511?v=4","gravatar_id":"","url":"https://api.github.com/users/ilf-S","html_url":"https://github.com/ilf-S","followers_url":"https://api.github.com/users/ilf-S/followers","following_url":"https://api.github.com/users/ilf-S/following{/other_user}","gists_url":"https://api.github.com/users/ilf-S/gists{/gist_id}","starred_url":"https://api.github.com/users/ilf-S/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ilf-S/subscriptions","organizations_url":"https://api.github.com/users/ilf-S/orgs","repos_url":"https://api.github.com/users/ilf-S/repos","events_url":"https://api.github.com/users/ilf-S/events{/privacy}","received_events_url":"https://api.github.com/users/ilf-S/received_events","type":"User","user_view_type":"public","site_admin":false},"html_url":"https://github.com/ilf-S/FreeCAD","description":"This is the official source code of FreeCAD, a free and opensource multiplatform 3D parametric modeler.","fork":true,"url":"https://api.github.com/repos/ilf-S/FreeCAD","forks_url":"https://api.github.com/repos/ilf-S/FreeCAD/forks","keys_url":"https://api.github.com/repos/ilf-S/FreeCAD/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ilf-S/FreeCAD/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ilf-S/FreeCAD/teams","hooks_url":"https://api.github.com/repos/ilf-S/FreeCAD/hooks","issue_events_url":"https://api.github.com/repos/ilf-S/FreeCAD/issues/events{/number}","events_url":"https://api.github.com/repos/ilf-S/FreeCAD/events","assignees_url":"https://api.github.com/repos/ilf-S/FreeCAD/assignees{/user}","branches_url":"https://api.github.com/repos/ilf-S/FreeCAD/branches{/branch}","tags_url":"https://api.github.com/repos/ilf-S/FreeCAD/tags","blobs_url":"https://api.github.com/repos/ilf-S/FreeCAD/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ilf-S/FreeCAD/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ilf-S/FreeCAD/git/refs{/sha}","trees_url":"https://api.github.com/repos/ilf-S/FreeCAD/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ilf-S/FreeCAD/statuses/{sha}","languages_url":"https://api.github.com/repos/ilf-S/FreeCAD/languages","stargazers_url":"https://api.github.com/repos/ilf-S/FreeCAD/stargazers","contributors_url":"https://api.github.com/repos/ilf-S/FreeCAD/contributors","subscribers_url":"https://api.github.com/repos/ilf-S/FreeCAD/subscribers","subscription_url":"https://api.github.com/repos/ilf-S/FreeCAD/subscription","commits_url":"https://api.github.com/repos/ilf-S/FreeCAD/commits{/sha}","git_commits_url":"https://api.github.com/repos/ilf-S/FreeCAD/git/commits{/sha}","comments_url":"https://api.github.com/repos/ilf-S/FreeCAD/comments{/number}","issue_comment_url":"https://api.github.com/repos/ilf-S/FreeCAD/issues/comments{/number}","contents_url":"https://api.github.com/repos/ilf-S/FreeCAD/contents/{+path}","compare_url":"https://api.github.com/repos/ilf-S/FreeCAD/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ilf-S/FreeCAD/merges","archive_url":"https://api.github.com/repos/ilf-S/FreeCAD/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ilf-S/FreeCAD/downloads","issues_url":"https://api.github.com/repos/ilf-S/FreeCAD/issues{/number}","pulls_url":"https://api.github.com/repos/ilf-S/FreeCAD/pulls{/number}","milestones_url":"https://api.github.com/repos/ilf-S/FreeCAD/milestones{/number}","notifications_url":"https://api.github.com/repos/ilf-S/FreeCAD/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ilf-S/FreeCAD/labels{/name}","releases_url":"https://api.github.com/repos/ilf-S/FreeCAD/releases{/id}","deployments_url":"https://api.github.com/repos/ilf-S/FreeCAD/deployments","created_at":1708184682,"updated_at":"2026-10-13T05:31:15Z","pushed_at":1791948867,"git_url":"git://github.com/ilf-S/FreeCAD.git","ssh_url":"git@github.com:ilf-S/FreeCAD.git","clone_url":"https://github.com/ilf-S/FreeCAD.git","svn_url":"https://github.com/ilf-S/FreeCAD","homepage":"https://www.freecad.org","size":2851752,"stargazers_count":0,"watchers_count":0,"language":"C++","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":false,"forks_count":0,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":0,"license":{"key":"lgpl-2.1","name":"GNU Lesser General Public License v2.1","spdx_id":"LGPL-2.1","url":"https://api.github.com/licenses/lgpl-2.1","node_id":"MDc6TGljZW5zZTEx"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"has_pull_requests":true,"pull_request_creation_policy":"all","topics":[],"visibility":"public","forks":0,"open_issues":0,"watchers":0,"default_branch":"main","stargazers":0,"master_branch":"main"},"pusher":{"name":"github-actions[bot]","email":null},"forced":false,"sender":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"created":false,"deleted":false,"base_ref":null,"compare":"https://github.com/ilf-S/FreeCAD/compare/c799df03af6a...4ff2034a093e","commits":[{"id":"c761c3f200ee7a658ea79dc046a04ac4ec875b2a","tree_id":"e1e4dac2cb15388f5942d4c9319fc118c5067a80","distinct":true,"message":"Release workflow: fix AppImage url in zsync file for weeklies & remove no longer needed git commands","timestamp":"2026-10-07T17:27:46-03:00","url":"https://github.com/ilf-S/FreeCAD/commit/c761c3f200ee7a658ea79dc046a04ac4ec875b2a","author":{"name":"Adrian Insaurralde Avalos","email":"adrianinsaval@gmail.com","date":"2026-04-11T18:27:34-03:00","username":"adrianinsaval"},"committer":{"name":"Adrian Insaurralde Avalos","email":"adrianinsaval@gmail.com","date":"2026-10-07T17:27:46-03:00","username":"adrianinsaval"},"added":[],"removed":[],"modified":[".github/workflows/build_release.yml","package/bundle/linux/create_bundle.sh"]},{"id":"d14a9df088dd0092ed6976fab870e41c4188e9a9","tree_id":"b9e6f1e02dfc67c16a344b5b0c87b8f6f5f3ca46","distinct":true,"message":"Release workflow: stop uploading sha256 files, github now shows sha256 on the web ui and API","timestamp":"2026-10-08T08:56:25-03:00","url":"https://github.com/ilf-S/FreeCAD/commit/d14a9df088dd0092ed6976fab870e41c4188e9a9","author":{"name":"Adrian Insaurralde Avalos","email":"adrianinsaval@gmail.com","date":"2026-04-11T18:32:20-03:00","username":"adrianinsaval"},"committer":{"name":"Adrian Insaurralde Avalos","email":"adrianinsaval@gmail.com","date":"2026-10-08T08:56:25-03:00","username":"adrianinsaval"},"added":[],"removed":[],"modified":[".github/workflows/build_release.yml","package/bundle/linux/create_bundle.sh","package/bundle/osx/create_bundle.sh","package/bundle/windows/create_bundle.sh","package/libpack-windows/create_bundle.sh"]},{"id":"91cd50574359ab11df6b1a6e37d7f4893333ad15","tree_id":"0b1e30000fa2a2dd2e121b82d1f9fa46f8120496","distinct":true,"message":"CAM: Sanity squawk for per-second document unit schema\n\nG-code feed rates are per minute. The job creation dialog already marks\nper-second unit schemas unsafe, but the sanity checker never inspected\nthe document schema, so neither the setup report nor the post-process\ndialog warned about it. Add a WARNING squawk in the design-document\nsection, share the schema check between the dialog and the checker, and\ncover it with tests.\n\nCo-Authored-By: Claude Fable 5.1 ","timestamp":"2026-10-12T15:15:12-05:00","url":"https://github.com/ilf-S/FreeCAD/commit/91cd50574359ab11df6b1a6e37d7f4893333ad15","author":{"name":"sliptonic","email":"shopinthewoods@gmail.com","date":"2026-09-30T16:30:49-05:00","username":"sliptonic"},"committer":{"name":"sliptonic","email":"shopinthewoods@gmail.com","date":"2026-10-12T15:15:12-05:00","username":"sliptonic"},"added":[],"removed":[],"modified":["src/Mod/CAM/CAMTests/TestCAMSanity.py","src/Mod/CAM/Path/Base/Util.py","src/Mod/CAM/Path/Main/Gui/JobDlg.py","src/Mod/CAM/Path/Main/Sanity/Sanity.py"]},{"id":"422ef2d0725a674b2f4f72a1c7f6d46d5ab5333e","tree_id":"350ba4b9e35cd40a20fb5b453abde54b2f8c646b","distinct":true,"message":"CAM: Promote Planar Surface and Rotary Surface out of experimental\n\nBoth operations are registered in the 3D Operations group whenever\nOpenCamLib is available, no longer gated on the experimental-features\npreference.\n\nCo-Authored-By: Claude Fable 5.1 ","timestamp":"2026-10-12T15:15:12-05:00","url":"https://github.com/ilf-S/FreeCAD/commit/422ef2d0725a674b2f4f72a1c7f6d46d5ab5333e","author":{"name":"sliptonic","email":"shopinthewoods@gmail.com","date":"2026-09-30T16:34:00-05:00","username":"sliptonic"},"committer":{"name":"sliptonic","email":"shopinthewoods@gmail.com","date":"2026-10-12T15:15:12-05:00","username":"sliptonic"},"added":[],"removed":[],"modified":["src/Mod/CAM/InitGui.py"]},{"id":"c582e9bac90f293a34b2dc184c18c45ad9183620","tree_id":"b501d1d600a48081c963359a6989fe70b4c634d4","distinct":true,"message":"CAM: Deprecation notices and stages for operations\n\nTapping carried the only deprecation warning, hand-built from a label in\nits .ui file and a warning in opOnDocumentRestored. Replace that with one\nmechanism so the next deprecation is a three-line override.\n\nDiscussion #33108 settled on one release in each of three stages:\nWarning, Hidden, Deleted.\n\n - ObjectOp.opDeprecationNotice(obj) returns a message, or None. It may\n depend on property values. deprecationNotice() builds the standard\n wording from a DeprecationStage and announces the next stage: hidden\n in the next release, deleted in the next release, or has been\n deleted. Wording follows FEP-0007.\n - ObjectOp.onDocumentRestored logs the notice. The op TaskPanel shows\n it as a banner above the pages and refreshes it on every property\n change.\n - Tapping and Face are Hidden. Waterline and the Rotational scan type\n of 3D Surface are Warning.\n - RemovedOp stands in for a deleted op. The op's module keeps its\n proxy class name as a RemovedOp subclass, so a document that still\n holds the op restores with its properties, generates no toolpath,\n logs the notice as an error and cannot be edited. Without it the op\n restores with no proxy and a raw import error.\n - Sanity reports a deprecated op as a NOTE in the output section, so\n it appears in the setup report and in the post-process dialog's\n warnings tab. A deleted op is a CAUTION, since the output is missing\n its moves. Dressups are unwrapped so a deprecated op inside one is\n still reported.\n - ADR-000 defines Deprecated and Deprecation Stage, states each op's\n stage, and lists Planar Surface and Rotary Surface in the catalog.\n\nCo-Authored-By: Claude Fable 5.1 \nCo-Authored-By: Claude Opus 5.5 ","timestamp":"2026-10-12T15:25:45-05:00","url":"https://github.com/ilf-S/FreeCAD/commit/c582e9bac90f293a34b2dc184c18c45ad9183620","author":{"name":"sliptonic","email":"shopinthewoods@gmail.com","date":"2026-09-30T16:48:15-05:00","username":"sliptonic"},"committer":{"name":"sliptonic","email":"shopinthewoods@gmail.com","date":"2026-10-12T15:25:45-05:00","username":"sliptonic"},"added":["src/Mod/CAM/CAMTests/TestPathOpDeprecation.py"],"removed":[],"modified":["src/Mod/CAM/CAMTests/TestCAMSanity.py","src/Mod/CAM/CMakeLists.txt","src/Mod/CAM/Gui/Resources/panels/PageOpTappingEdit.ui","src/Mod/CAM/Path/Main/Sanity/Sanity.py","src/Mod/CAM/Path/Op/Base.py","src/Mod/CAM/Path/Op/Gui/Base.py","src/Mod/CAM/Path/Op/MillFace.py","src/Mod/CAM/Path/Op/Surface.py","src/Mod/CAM/Path/Op/Tapping.py","src/Mod/CAM/Path/Op/Waterline.py","src/Mod/CAM/Roadmap/ADR/ADR-000.md"]},{"id":"623fbf2807bd83f27071a02034e4a752770211f2","tree_id":"8391eef012d5801b5e363b8ed491634cdeeae33a","distinct":true,"message":"CAM: Work plane fixes for rotary pose, plane frame and model links\n\nSeven fixes from the TWPFix branch of Connor9220/FreeCAD.\n\nPosting a tilted work plane:\n\n- Operations on one work plane keep one rotary pose. The solver treats\n costs and errors that differ by float noise as a tie, and breaks the\n tie by least travel from the current rotary positions. The post passes\n the previous operation's positions to the solver.\n- A table and a head machine solves with the head tilting the tool. The\n candidate check is R_table * desired = R_head * Z.\n- Helix, Engrave and Flute check their linking moves against the model\n in the work plane's frame, not the world model.\n\nKeeping work planes and operations on the part:\n\n- A work plane made at a placement, or at the Job origin, is attached\n to the Job's model, so it stays where it is on the part when the\n model moves. A Job without a model leaves it unattached.\n- Moving the model in the Job editor carries what is placed on the part\n and not attached to it: unattached work planes, the shapes operations\n are made from, and a stock made from the model's box. All operations\n are touched.\n- A model taken out of the Job and added back keeps its links. The Job\n records what linked the clone in a hidden DetachedModelLinks property\n and links the new clone the same way. The Job editor asks before it\n takes out a model that operations or work planes are made from.\n\n- Scaling the Job's model keeps what is made from it on the part. A\n document observer sees the Scale of a Job's model clone change, then\n scales the attachment offsets of what is attached to the model and the\n positions of what is placed on it unattached.\n\nCo-Authored-By: Claude Opus 5.5 ","timestamp":"2026-10-12T15:25:45-05:00","url":"https://github.com/ilf-S/FreeCAD/commit/623fbf2807bd83f27071a02034e4a752770211f2","author":{"name":"Billy Huddleston","email":"billy@ivdc.com","date":"2026-10-05T12:30:10-05:00","username":"Connor9220"},"committer":{"name":"sliptonic","email":"shopinthewoods@gmail.com","date":"2026-10-12T15:25:45-05:00","username":"sliptonic"},"added":["src/Mod/CAM/CAMTests/TestPathJobModelLinks.py"],"removed":[],"modified":["src/Mod/CAM/CAMTests/TestPathProfile.py","src/Mod/CAM/CAMTests/TestPathRotationGenerator.py","src/Mod/CAM/CAMTests/TestPathWorkplaneFrame.py","src/Mod/CAM/CMakeLists.txt","src/Mod/CAM/Path/Base/Generator/rotation.py","src/Mod/CAM/Path/Main/Gui/Job.py","src/Mod/CAM/Path/Main/Job.py","src/Mod/CAM/Path/Main/Workplane.py","src/Mod/CAM/Path/Op/EngraveBase.py","src/Mod/CAM/Path/Op/Flute.py","src/Mod/CAM/Path/Op/Helix.py","src/Mod/CAM/Path/Post/Processor.py"]},{"id":"0c013807213e5f39a0982e3492ead1266535adaa","tree_id":"74c7b7bd54dd96bef3e3160d19aa55546aa673e2","distinct":true,"message":"CAM: Name dialog for a new work plane\n\nThe Work Plane command added the plane to the Job's Workplanes group\nwith no feedback: with the group collapsed the user saw nothing change.\n\nThe command now asks for the name first, with a suggestion the user can\nedit. Cancel creates nothing. suggestLabel() names a plane derived from\na face after the face and any other plane Workplane, with a number\nappended when the document already uses that label.\n\nCo-Authored-By: Claude Opus 5.5 ","timestamp":"2026-10-12T15:25:45-05:00","url":"https://github.com/ilf-S/FreeCAD/commit/0c013807213e5f39a0982e3492ead1266535adaa","author":{"name":"sliptonic","email":"shopinthewoods@gmail.com","date":"2026-10-05T13:31:41-05:00","username":"sliptonic"},"committer":{"name":"sliptonic","email":"shopinthewoods@gmail.com","date":"2026-10-12T15:25:45-05:00","username":"sliptonic"},"added":[],"removed":[],"modified":["src/Mod/CAM/CAMTests/TestPathWorkplane.py","src/Mod/CAM/Path/Main/Gui/WorkplaneCmd.py","src/Mod/CAM/Path/Main/Workplane.py"]},{"id":"aace9dd518d4c8c70624eb9201dd0db6d463452b","tree_id":"f651d81b6211d47d9d29d0f9e34b0f918b6b8bdc","distinct":true,"message":"CAM: Job: the model moves inside its stock again; carrying() leaves the stock to the action\n\nJob panel buttons that move the model no longer drag a stock made from the model along, so Center\nin Stock and the move arrows work again. Set Origin still moves the stock.","timestamp":"2026-10-12T15:25:45-05:00","url":"https://github.com/ilf-S/FreeCAD/commit/aace9dd518d4c8c70624eb9201dd0db6d463452b","author":{"name":"Billy Huddleston","email":"billy@ivdc.com","date":"2026-10-09T14:54:19-04:00","username":"Connor9220"},"committer":{"name":"sliptonic","email":"shopinthewoods@gmail.com","date":"2026-10-12T15:25:45-05:00","username":"sliptonic"},"added":[],"removed":[],"modified":["src/Mod/CAM/Path/Main/Gui/Job.py"]},{"id":"34501a28bfdc21e0f9a3f580f2a832ba09f39b0a","tree_id":"9374a4ab6c38b9adc899d5c21c5829d16b618a46","distinct":true,"message":"CAM: A table and a head solved within the head's own limits\n\nThe head's limits were checked before its angle was flipped, so the solver could pick an angle past\nthe head's travel.","timestamp":"2026-10-12T15:25:45-05:00","url":"https://github.com/ilf-S/FreeCAD/commit/34501a28bfdc21e0f9a3f580f2a832ba09f39b0a","author":{"name":"Billy Huddleston","email":"billy@ivdc.com","date":"2026-10-09T14:55:07-04:00","username":"Connor9220"},"committer":{"name":"sliptonic","email":"shopinthewoods@gmail.com","date":"2026-10-12T15:25:45-05:00","username":"sliptonic"},"added":[],"removed":[],"modified":["src/Mod/CAM/CAMTests/TestPathRotationGenerator.py","src/Mod/CAM/Path/Base/Generator/rotation.py"]},{"id":"e2a5765ca9212696aac173996fee13a775eabc96","tree_id":"fc81e584d5bc4a93647e7253bc8da596b7de14d7","distinct":true,"message":"CAM: Deprecation banner sits in the first box of the multi-panel layouts\n\nWith the task panel layout set to Multi-panel, every operation showed an empty\nDeprecated box: the banner was a task box of its own, and hiding the label left\nthe titled box. The banner now sits above the first page's form, as it does in\nthe tabbed layouts, so it still shows when the notice appears while the panel\nis open.\n\nCo-Authored-By: Claude Opus 5.5 ","timestamp":"2026-10-12T15:25:45-05:00","url":"https://github.com/ilf-S/FreeCAD/commit/e2a5765ca9212696aac173996fee13a775eabc96","author":{"name":"sliptonic","email":"shopinthewoods@gmail.com","date":"2026-10-12T15:19:45-05:00","username":"sliptonic"},"committer":{"name":"sliptonic","email":"shopinthewoods@gmail.com","date":"2026-10-12T15:25:45-05:00","username":"sliptonic"},"added":[],"removed":[],"modified":["src/Mod/CAM/Path/Op/Gui/Base.py"]},{"id":"0b6ffa245ae8e0223dfb18a29bf577ee0e96e4eb","tree_id":"79814817faab1c4c68e52f31bac1da4136750f38","distinct":true,"message":"Gui: don't keep raw object pointers in the Selection View search (#33045)\n\nSelectionView::search() stores the matching objects as raw\nApp::DocumentObject pointers in searchList. The list is only replaced\nby the next non-empty search. validateSearch() is connected to the\nsearch box's editingFinished, which also fires when the box loses\nfocus, and it calls getNameInDocument() on every entry. Deleting a\nmatched object (or closing its document) between the search and\npressing Enter, or clicking away, reads freed memory.\n\nSelection View: type \"Box\" in the search field, delete the matching\nobjects, press Enter. Run with MallocScribble=1 so the freed memory is\nrecognisable:\n EXC_BAD_ACCESS (address=0x555555555555556c)\n DocumentObject::getNameInDocument()\n SelectionView::validateSearch() SelectionView.cpp:326\n\nStore the matches as App::DocumentObjectT and select only those that\nstill exist. Each object is selected in its own document, instead of in\nwhichever document is active when the search is validated.\n\nAssisted-by: Claude Opus 5.5 (claude-opus-5-5)","timestamp":"2026-10-13T05:54:58Z","url":"https://github.com/ilf-S/FreeCAD/commit/0b6ffa245ae8e0223dfb18a29bf577ee0e96e4eb","author":{"name":"Jackson Oursland","email":"jacob.oursland@gmail.com","date":"2026-10-12T22:54:58-07:00","username":"oursland"},"committer":{"name":"GitHub","email":"noreply@github.com","date":"2026-10-13T05:54:58Z","username":"web-flow"},"added":[],"removed":[],"modified":["src/Gui/Selection/SelectionView.cpp","src/Gui/Selection/SelectionView.h"]},{"id":"3cd29aa88ec714c8e03a52a9b01972a7449624b1","tree_id":"06d8cc4411bf7a9f78721dfa86afb4d443cacefe","distinct":true,"message":"Mesh: don't use a deleted mesh in the segmentation dialogs (#33042)\n\nThe Segmentation and Segmentation-from-best-fit panels, and the\nnon-modal best-fit parameters dialog, keep a raw Mesh::Feature pointer.\nThey are shown with Gui::Control().showDialog() and are not tied to an\nedit session, so deleting the mesh (e.g. from the Python console) while\nthey are open leaves the pointer dangling. Pressing OK then reads the\nfreed mesh:\n\n- Mesh_Segmentation, remove the mesh, OK:\n SIGABRT: std::length_error thrown while copying the freed kernel\n MeshCore::MeshKernel::operator= <- Segmentation::accept()\n- Mesh_SegmentationBestFit, remove the mesh, OK:\n EXC_BAD_ACCESS (address=0x0)\n SegmentationBestFit::accept() SegmentationBestFit.cpp:521\n (getNameInDocument())\n\nHold the mesh in App::WeakPtrT, and skip the work when it\nhas expired. OK then closes the dialog as usual.\n\nAssisted-by: Claude Opus 5.5 (claude-opus-5-5)","timestamp":"2026-10-13T06:59:30Z","url":"https://github.com/ilf-S/FreeCAD/commit/3cd29aa88ec714c8e03a52a9b01972a7449624b1","author":{"name":"Jackson Oursland","email":"jacob.oursland@gmail.com","date":"2026-10-12T23:59:30-07:00","username":"oursland"},"committer":{"name":"GitHub","email":"noreply@github.com","date":"2026-10-13T06:59:30Z","username":"web-flow"},"added":[],"removed":[],"modified":["src/Mod/Mesh/Gui/Segmentation.cpp","src/Mod/Mesh/Gui/Segmentation.h","src/Mod/Mesh/Gui/SegmentationBestFit.cpp","src/Mod/Mesh/Gui/SegmentationBestFit.h"]},{"id":"59401a641a51c56c3eefc1c2f708cb19fc9160cd","tree_id":"5b40b36be48cf878d6e44c714b8b228bf1b68d46","distinct":true,"message":"Spreadsheet: Add a regression test\n\nThe regression test is for fine-grained recompute. It fails on this\ncommit and will pass on the next commit.","timestamp":"2026-10-13T10:08:40+02:00","url":"https://github.com/ilf-S/FreeCAD/commit/59401a641a51c56c3eefc1c2f708cb19fc9160cd","author":{"name":"Pieter Hijma","email":"pieterhijma@users.noreply.github.com","date":"2026-10-12T21:04:58+02:00","username":"pieterhijma"},"committer":{"name":"Pieter Hijma","email":"pieterhijma@users.noreply.github.com","date":"2026-10-13T10:08:40+02:00","username":"pieterhijma"},"added":[],"removed":[],"modified":["src/Mod/Spreadsheet/TestSpreadsheet.py"]},{"id":"67bfa438a5ab7c223634645aafd13ef499b7a9d2","tree_id":"00ab42865db0393b5eb395897093d892b5d8a931","distinct":true,"message":"Core: Introduce a canonical property name\n\nThis commit introduces the notion of a canonical property name that is\nused for fine-grained dependency checking (based on property names).\n\nSpreadsheet is currently the only property container that overrides the\ncanonical property name logic to prevent alias names to end up in the\ndependency graph.","timestamp":"2026-10-13T10:09:03+02:00","url":"https://github.com/ilf-S/FreeCAD/commit/67bfa438a5ab7c223634645aafd13ef499b7a9d2","author":{"name":"Pieter Hijma","email":"pieterhijma@users.noreply.github.com","date":"2026-10-12T21:06:36+02:00","username":"pieterhijma"},"committer":{"name":"Pieter Hijma","email":"pieterhijma@users.noreply.github.com","date":"2026-10-13T10:09:03+02:00","username":"pieterhijma"},"added":[],"removed":[],"modified":["src/App/ObjectIdentifier.cpp","src/App/PropertyContainer.h","src/Mod/Spreadsheet/App/Sheet.cpp","src/Mod/Spreadsheet/App/Sheet.h"]},{"id":"c8c9ea855080c9e0f2f22b583cddbed1c0cf2a07","tree_id":"c8703f3f0c4231266f63f841f0139855e93f54e7","distinct":true,"message":"Merge pull request #33515 from pieterhijma/fix-fine-grained-recompute-spreadsheet\n\nCore: Fix fine-grained recompute spreadsheet","timestamp":"2026-10-13T08:20:12-05:00","url":"https://github.com/ilf-S/FreeCAD/commit/c8c9ea855080c9e0f2f22b583cddbed1c0cf2a07","author":{"name":"Chris Hennes","email":"chennes@pioneerlibrarysystem.org","date":"2026-10-13T08:20:12-05:00","username":"chennes"},"committer":{"name":"GitHub","email":"noreply@github.com","date":"2026-10-13T08:20:12-05:00","username":"web-flow"},"added":[],"removed":[],"modified":["src/App/ObjectIdentifier.cpp","src/App/PropertyContainer.h","src/Mod/Spreadsheet/App/Sheet.cpp","src/Mod/Spreadsheet/App/Sheet.h","src/Mod/Spreadsheet/TestSpreadsheet.py"]},{"id":"5adc50d685e8977d74e014f581d42448e30a55ca","tree_id":"4a7b7e8eaad2ca0085a85bc926a79715c0473cf3","distinct":true,"message":"Part: Include the original instance in circular link arrays\n\nAlways include the identity transformation in CircularPatternExtension so circular link arrays retain the original instance. Remove the PartDesign-specific toggle and update the tests to account for the additional instance.","timestamp":"2026-10-13T19:53:26+02:00","url":"https://github.com/ilf-S/FreeCAD/commit/5adc50d685e8977d74e014f581d42448e30a55ca","author":{"name":"UnKabaraQuiDev","email":"66266372+UnKabaraQuiDev@users.noreply.github.com","date":"2026-10-13T13:06:52+02:00","username":"UnKabaraQuiDev"},"committer":{"name":"Max Wilfinger","email":"6246609+maxwxyz@users.noreply.github.com","date":"2026-10-13T19:53:26+02:00","username":"maxwxyz"},"added":[],"removed":[],"modified":["src/Mod/Part/App/CircularPatternExtension.cpp","src/Mod/Part/App/CircularPatternExtension.h","src/Mod/Part/parttests/TestLinkArrayCircular.py","src/Mod/PartDesign/App/FeatureCircularPattern.cpp","src/Mod/PartDesign/App/FeatureCircularPattern.h"]},{"id":"ca1bae1c7384c1a63a50a1d817f013060a852191","tree_id":"ce94a3bf40827cfe8220a640a13c18806ff81d63","distinct":true,"message":"CAM: Update machine_editor.py (#33255)\n\n* Update machine_editor.py\ncombo box in machine editor was eating input, causing templates to not work correctly","timestamp":"2026-10-13T14:11:16-04:00","url":"https://github.com/ilf-S/FreeCAD/commit/ca1bae1c7384c1a63a50a1d817f013060a852191","author":{"name":"faecorrigan","email":"145371008+faecorrigan@users.noreply.github.com","date":"2026-10-13T19:11:16+01:00","username":"faecorrigan"},"committer":{"name":"GitHub","email":"noreply@github.com","date":"2026-10-13T14:11:16-04:00","username":"web-flow"},"added":[],"removed":[],"modified":["src/Mod/CAM/Machine/ui/editor/machine_editor.py"]},{"id":"fb39732ca2e837a8eaeb87be8e6b994c9826d149","tree_id":"2f0b4f0dc9615fe97c9ffd6dc396df9d33b2f3d7","distinct":true,"message":"BIM: group Extrude and Extrude Face on the toolbar (#33512)\n\n* BIM: group Extrude and Extrude Face on the toolbar\n\n* [pre-commit.ci] auto fixes from pre-commit.com hooks\n\nfor more information, see https://pre-commit.ci\n\n* Apply suggestion from @Roy-043\n\n---------\n\nCo-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>\nCo-authored-by: Roy-043 <70520633+Roy-043@users.noreply.github.com>","timestamp":"2026-10-13T19:34:56Z","url":"https://github.com/ilf-S/FreeCAD/commit/fb39732ca2e837a8eaeb87be8e6b994c9826d149","author":{"name":"Ayushjo","email":"ayushs24101@iiitnr.edu.in","date":"2026-10-14T01:04:56+05:30","username":"Ayushjo"},"committer":{"name":"GitHub","email":"noreply@github.com","date":"2026-10-13T19:34:56Z","username":"web-flow"},"added":[],"removed":[],"modified":["src/Mod/BIM/InitGui.py"]},{"id":"50daee777321b5085accd1f57b57f1a7c1781cae","tree_id":"e75b36bff2373f73197f9ddf8f2fbd9dab48fb61","distinct":true,"message":"Draft: fix bug caused by #32359: make_shape_string has lowercase variable names (#33311)\n\nFixes #33306.\r\n\r\nPR #32359 introduced a new function name `make_shape_string` with lowercase variable names. In Task_shapestring.py the function name was updated, but not the variable names.","timestamp":"2026-10-13T19:55:30Z","url":"https://github.com/ilf-S/FreeCAD/commit/50daee777321b5085accd1f57b57f1a7c1781cae","author":{"name":"Roy-043","email":"70520633+Roy-043@users.noreply.github.com","date":"2026-10-13T21:55:30+02:00","username":"Roy-043"},"committer":{"name":"GitHub","email":"noreply@github.com","date":"2026-10-13T19:55:30Z","username":"web-flow"},"added":[],"removed":[],"modified":["src/Mod/Draft/drafttaskpanels/task_shapestring.py"]},{"id":"f9117b54b03e05d566bcb82b1cba9f3280175a13","tree_id":"d6d19dd128ea3317a6003af2dcdd23d812d98a1a","distinct":true,"message":"Merge pull request #33264 from sliptonic/cam-misc-fixes\n\nCAM: Misc. fixes. Deprecation, workplane dialog, squaks, TWP fixes","timestamp":"2026-10-13T22:07:04-04:00","url":"https://github.com/ilf-S/FreeCAD/commit/f9117b54b03e05d566bcb82b1cba9f3280175a13","author":{"name":"Billy Huddleston","email":"billy@ivdc.com","date":"2026-10-13T22:07:04-04:00","username":"Connor9220"},"committer":{"name":"GitHub","email":"noreply@github.com","date":"2026-10-13T22:07:04-04:00","username":"web-flow"},"added":["src/Mod/CAM/CAMTests/TestPathJobModelLinks.py","src/Mod/CAM/CAMTests/TestPathOpDeprecation.py"],"removed":[],"modified":["src/Mod/CAM/CAMTests/TestCAMSanity.py","src/Mod/CAM/CAMTests/TestPathProfile.py","src/Mod/CAM/CAMTests/TestPathRotationGenerator.py","src/Mod/CAM/CAMTests/TestPathWorkplane.py","src/Mod/CAM/CAMTests/TestPathWorkplaneFrame.py","src/Mod/CAM/CMakeLists.txt","src/Mod/CAM/Gui/Resources/panels/PageOpTappingEdit.ui","src/Mod/CAM/InitGui.py","src/Mod/CAM/Path/Base/Generator/rotation.py","src/Mod/CAM/Path/Base/Util.py","src/Mod/CAM/Path/Main/Gui/Job.py","src/Mod/CAM/Path/Main/Gui/JobDlg.py","src/Mod/CAM/Path/Main/Gui/WorkplaneCmd.py","src/Mod/CAM/Path/Main/Job.py","src/Mod/CAM/Path/Main/Sanity/Sanity.py","src/Mod/CAM/Path/Main/Workplane.py","src/Mod/CAM/Path/Op/Base.py","src/Mod/CAM/Path/Op/EngraveBase.py","src/Mod/CAM/Path/Op/Flute.py","src/Mod/CAM/Path/Op/Gui/Base.py","src/Mod/CAM/Path/Op/Helix.py","src/Mod/CAM/Path/Op/MillFace.py","src/Mod/CAM/Path/Op/Surface.py","src/Mod/CAM/Path/Op/Tapping.py","src/Mod/CAM/Path/Op/Waterline.py","src/Mod/CAM/Path/Post/Processor.py","src/Mod/CAM/Roadmap/ADR/ADR-000.md"]},{"id":"fde17e6510260a0e929d2fb9da0cf7e625ab49d8","tree_id":"91fc5323fedb820d0a2a86465ff2647036ce29be","distinct":true,"message":"Merge pull request #33318 from adrianinsaval/release-tweaks\n\nsmall fixes to release workflow","timestamp":"2026-10-13T21:14:17-05:00","url":"https://github.com/ilf-S/FreeCAD/commit/fde17e6510260a0e929d2fb9da0cf7e625ab49d8","author":{"name":"Chris Hennes","email":"chennes@pioneerlibrarysystem.org","date":"2026-10-13T21:14:17-05:00","username":"chennes"},"committer":{"name":"GitHub","email":"noreply@github.com","date":"2026-10-13T21:14:17-05:00","username":"web-flow"},"added":[],"removed":[],"modified":[".github/workflows/build_release.yml","package/bundle/linux/create_bundle.sh","package/bundle/osx/create_bundle.sh","package/bundle/windows/create_bundle.sh","package/libpack-windows/create_bundle.sh"]},{"id":"4ff2034a093eb094f1f0c4a4455ef1106606126a","tree_id":"076079c7cd318e6d1954e228628ed87e696e3d65","distinct":true,"message":"merge upstream (auto-resolve CI; keep packaging & our workflow) [skip ci]","timestamp":"2026-10-14T03:34:26Z","url":"https://github.com/ilf-S/FreeCAD/commit/4ff2034a093eb094f1f0c4a4455ef1106606126a","author":{"name":"ilf-S","email":"ilf-S@users.noreply.github.com","date":"2026-10-14T03:34:26Z","username":"ilf-S"},"committer":{"name":"ilf-S","email":"ilf-S@users.noreply.github.com","date":"2026-10-14T03:34:26Z","username":"ilf-S"},"added":["src/Mod/CAM/CAMTests/TestPathJobModelLinks.py","src/Mod/CAM/CAMTests/TestPathOpDeprecation.py"],"removed":[],"modified":["package/bundle/linux/create_bundle.sh","package/bundle/osx/create_bundle.sh","package/bundle/windows/create_bundle.sh","package/libpack-windows/create_bundle.sh","src/App/ObjectIdentifier.cpp","src/App/PropertyContainer.h","src/Gui/Selection/SelectionView.cpp","src/Gui/Selection/SelectionView.h","src/Mod/BIM/InitGui.py","src/Mod/CAM/CAMTests/TestCAMSanity.py","src/Mod/CAM/CAMTests/TestPathProfile.py","src/Mod/CAM/CAMTests/TestPathRotationGenerator.py","src/Mod/CAM/CAMTests/TestPathWorkplane.py","src/Mod/CAM/CAMTests/TestPathWorkplaneFrame.py","src/Mod/CAM/CMakeLists.txt","src/Mod/CAM/Gui/Resources/panels/PageOpTappingEdit.ui","src/Mod/CAM/InitGui.py","src/Mod/CAM/Machine/ui/editor/machine_editor.py","src/Mod/CAM/Path/Base/Generator/rotation.py","src/Mod/CAM/Path/Base/Util.py","src/Mod/CAM/Path/Main/Gui/Job.py","src/Mod/CAM/Path/Main/Gui/JobDlg.py","src/Mod/CAM/Path/Main/Gui/WorkplaneCmd.py","src/Mod/CAM/Path/Main/Job.py","src/Mod/CAM/Path/Main/Sanity/Sanity.py","src/Mod/CAM/Path/Main/Workplane.py","src/Mod/CAM/Path/Op/Base.py","src/Mod/CAM/Path/Op/EngraveBase.py","src/Mod/CAM/Path/Op/Flute.py","src/Mod/CAM/Path/Op/Gui/Base.py","src/Mod/CAM/Path/Op/Helix.py","src/Mod/CAM/Path/Op/MillFace.py","src/Mod/CAM/Path/Op/Surface.py","src/Mod/CAM/Path/Op/Tapping.py","src/Mod/CAM/Path/Op/Waterline.py","src/Mod/CAM/Path/Post/Processor.py","src/Mod/CAM/Roadmap/ADR/ADR-000.md","src/Mod/Draft/drafttaskpanels/task_shapestring.py","src/Mod/Mesh/Gui/Segmentation.cpp","src/Mod/Mesh/Gui/Segmentation.h","src/Mod/Mesh/Gui/SegmentationBestFit.cpp","src/Mod/Mesh/Gui/SegmentationBestFit.h","src/Mod/Part/App/CircularPatternExtension.cpp","src/Mod/Part/App/CircularPatternExtension.h","src/Mod/Part/parttests/TestLinkArrayCircular.py","src/Mod/PartDesign/App/FeatureCircularPattern.cpp","src/Mod/PartDesign/App/FeatureCircularPattern.h","src/Mod/Spreadsheet/App/Sheet.cpp","src/Mod/Spreadsheet/App/Sheet.h","src/Mod/Spreadsheet/TestSpreadsheet.py"]}],"head_commit":{"id":"4ff2034a093eb094f1f0c4a4455ef1106606126a","tree_id":"076079c7cd318e6d1954e228628ed87e696e3d65","distinct":true,"message":"merge upstream (auto-resolve CI; keep packaging & our workflow) [skip ci]","timestamp":"2026-10-14T03:34:26Z","url":"https://github.com/ilf-S/FreeCAD/commit/4ff2034a093eb094f1f0c4a4455ef1106606126a","author":{"name":"ilf-S","email":"ilf-S@users.noreply.github.com","date":"2026-10-14T03:34:26Z","username":"ilf-S"},"committer":{"name":"ilf-S","email":"ilf-S@users.noreply.github.com","date":"2026-10-14T03:34:26Z","username":"ilf-S"},"added":["src/Mod/CAM/CAMTests/TestPathJobModelLinks.py","src/Mod/CAM/CAMTests/TestPathOpDeprecation.py"],"removed":[],"modified":["package/bundle/linux/create_bundle.sh","package/bundle/osx/create_bundle.sh","package/bundle/windows/create_bundle.sh","package/libpack-windows/create_bundle.sh","src/App/ObjectIdentifier.cpp","src/App/PropertyContainer.h","src/Gui/Selection/SelectionView.cpp","src/Gui/Selection/SelectionView.h","src/Mod/BIM/InitGui.py","src/Mod/CAM/CAMTests/TestCAMSanity.py","src/Mod/CAM/CAMTests/TestPathProfile.py","src/Mod/CAM/CAMTests/TestPathRotationGenerator.py","src/Mod/CAM/CAMTests/TestPathWorkplane.py","src/Mod/CAM/CAMTests/TestPathWorkplaneFrame.py","src/Mod/CAM/CMakeLists.txt","src/Mod/CAM/Gui/Resources/panels/PageOpTappingEdit.ui","src/Mod/CAM/InitGui.py","src/Mod/CAM/Machine/ui/editor/machine_editor.py","src/Mod/CAM/Path/Base/Generator/rotation.py","src/Mod/CAM/Path/Base/Util.py","src/Mod/CAM/Path/Main/Gui/Job.py","src/Mod/CAM/Path/Main/Gui/JobDlg.py","src/Mod/CAM/Path/Main/Gui/WorkplaneCmd.py","src/Mod/CAM/Path/Main/Job.py","src/Mod/CAM/Path/Main/Sanity/Sanity.py","src/Mod/CAM/Path/Main/Workplane.py","src/Mod/CAM/Path/Op/Base.py","src/Mod/CAM/Path/Op/EngraveBase.py","src/Mod/CAM/Path/Op/Flute.py","src/Mod/CAM/Path/Op/Gui/Base.py","src/Mod/CAM/Path/Op/Helix.py","src/Mod/CAM/Path/Op/MillFace.py","src/Mod/CAM/Path/Op/Surface.py","src/Mod/CAM/Path/Op/Tapping.py","src/Mod/CAM/Path/Op/Waterline.py","src/Mod/CAM/Path/Post/Processor.py","src/Mod/CAM/Roadmap/ADR/ADR-000.md","src/Mod/Draft/drafttaskpanels/task_shapestring.py","src/Mod/Mesh/Gui/Segmentation.cpp","src/Mod/Mesh/Gui/Segmentation.h","src/Mod/Mesh/Gui/SegmentationBestFit.cpp","src/Mod/Mesh/Gui/SegmentationBestFit.h","src/Mod/Part/App/CircularPatternExtension.cpp","src/Mod/Part/App/CircularPatternExtension.h","src/Mod/Part/parttests/TestLinkArrayCircular.py","src/Mod/PartDesign/App/FeatureCircularPattern.cpp","src/Mod/PartDesign/App/FeatureCircularPattern.h","src/Mod/Spreadsheet/App/Sheet.cpp","src/Mod/Spreadsheet/App/Sheet.h","src/Mod/Spreadsheet/TestSpreadsheet.py"]}}