4.2, 4.3, and the Path Forward

“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

  1. name change
  2. another UI refactor (for rest, re-designed ops, etc)
  3. breaking backward compatibility

I posted the following poll on Discord, so interested in your thoughts in case you missed it:

Still in the WTF stage …I think I forget how to between tests…so where is the link to the version again?..GA (General Aviation)…FDM ?.. UI (University of Illinois) Why is there a Discord thread or why is there this thread? Seems like double the work but I have not seen the Discord thread or have a link to it…Why would you go to more work to change the name?..

UI = User Interface
GA = General Availability
FDM = 3D printing mode (vs CNC, Laser, WaterJet, etc)

There is a Discord server for real-time chatting. It has some usability advantages (attaching media, voice, screen sharing) and sometimes a little more immediacy than the forum. However, Discord servers are not indexed by Google and are only accessible if you have a Discord account and server invite. So it’s not good for long form, thread-centric discussions that can be found in search engines (knowledge preservation).

Including CAM in the name makes it more obvious what it does and makes it more likely to show up in search results.

1 Like

Usually the suits pick the name…