Skip to content

v0.19.0

Compare
Choose a tag to compare
@github-actions github-actions released this 10 Oct 15:11
· 7528 commits to main since this release
b883c57

This release announcement is also available on the Fornjot website

I've continued the slow work of expanding the scope of the centralized object storage (#1021). Including a new object in the centralized object storage opens opportunities for making any validation code that deals with that object more strict, which helps to prevent bugs. I wrote documentation about that, in case you're interested in the details.

The gist of it is, that sometimes you expect two references to an object to be the same. You can check that using equality (do they look the same?) or identity (are they actually the same object?), the latter being much stricter and less error-prone. The bulk of the work is to update any code that triggers to fulfill those stricter requirements.

Last week, I've integrated Curve and GlobalVertex into the centralized object storage, but most code creating GlobalVertex instances has not been updated to meet the stricter validation requirements yet.

Sponsors

Fornjot is supported by @webtrax-oz, @lthiery, @ahdinosaur, @Yatekii, @martindederer, @hobofan, @thawkins, @bollian, @rozgo, @reivilibre, and my other awesome sponsors. Thank you!

If you want Fornjot to be sustainable long-term, please consider supporting me too.

End-user improvements

Improvements to Fornjot and its documentation that are visible to end users.

None this week. Still busy improving the kernel!

Ecosystem improvements

Improvements to Fornjot components that are relevant to developers building on top of those. These have an indirect effect on end users, through fixed bugs and improved robustness.

fj-kernel

  • Make minor cleanups in sweep code (#1167)
  • Fix various instances of duplicate objects being created (#1168, #1170, #1172, #1174)
  • Expand and improve partial object API (#1169, #1171)
  • Improve Debug implementation of ObjectId (#1173)
  • Simplify HalfEdge and Vertex (#1175, #1178)
  • Expand scope of centralized object storage (#1176, #1179, #1180)
  • Clean up handling of vertices in normalized order (#1181)

Internal Improvements

Improvements that are relevant to developers working on Fornjot itself.

Outlook

I'm continuing my systematic approach of increasing the strictness of the validation code, thereby increasing the general robustness of the kernel code. As a side effect, this should take care of #1162, which then clears the road for further progress on the union operation (#42).