“Everyone has a plan until they get punched in the face”
Well, I punched myself in the face during the development of 4.2 by taking on a long-delayed refactor of of the code base. Yes, I wrote about this just a few days ago.
“That escalated quickly”
It started out as a sort of “how hard can this be” exploration a few weeks ago and before I knew it I hadn’t slept properly in a few days, there was code on the floor, ceilings, and walls.
4.2 was meant to introduce a set of long awaited CNC updates. Thanks to @BakedPotatoLord we got the arc output. The arc changes were significant enough that I waited to push to production until it had a little more testing. There may still be bugs which we find as it goes GA. For those instances, please drop back to 4.1 and report the error (with a workspace if possible).
4.3 is now available in the version switcher and marked Beta. Over 40% of the code has been altered in some way and there is no test suite that covers all those possible code paths (a great job for another day and also super hard!)
There are many difficult features that I held off on implementing until I felt the code base was in a place to support them. An example would be Rest machining which tracks material between ops and only mills what’s left. We’re getting closer with the new code base, but work remains to clean up some of the code paths and abstractions which are still shared with (and thus limited by) FDM.
My hope is that 4.3 will silently fix a lot of the internal blockers while adding some of the less difficult new features (drawing from Github Issues hint hint). And then the following branch will start to tackle the big stuff.
We may jump straight to 5.0 after 4.3 because of possible
- name change
- another UI refactor (for rest, re-designed ops, etc)
- breaking backward compatibility
I posted the following poll on Discord, so interested in your thoughts in case you missed it: