The new type get influentiated by the ObjectsMap impl on backend
code but with simplier implementation that no longer restricts keys
to UUID type but preserves the same performance characteristics.
This type encodes and decodes correctly both in fressian (backend)
and transit (backend and frontend).
This is an initial implementation and several memory usage
optimizations are still missing.
Replace general usage of virtual threads with platform threads
and use virtual threads for lightweight procs such that websocket
connections. This decision is made mainly because virtual threads
does not appear on thread dumps in an easy way so debugging issues
becomes very difficult.
The threads requirement of penpot for serving http requests
is not very big so having so this decision does not really affects
the resource usage.
* ⬆️ Update to JDK25 on the devenv
* ⬆️ Update dependencies
* 🔥 Remove unused flag from devenv backend startup scripts
* ✨ Enable shenandoah gc on backend scripts/repl
* ♻️ Move text serialization code to wasm module
* ♻️ Add serializer for TextAlign
* ♻️ Add serializers for TextDirection and TextDecoration
* ♻️ Add serializer for TextTransform
* ♻️ Remove unused font_style from TextLeaf model
* ♻️ Refactor parsing of TextLeaf from bytes
* ♻️ Decouple tight serialization of Paragraph
* ♻️ Move shape type serialization to wasm module
* ♻️ Refactor serialization of constraints and vertical alignment into wasm module
* ♻️ Refactor serialization and model of shape blur
* ♻️ Refactor bool serialization to the wasm module
* ♻️ Split wasm::layout into submodules
* ♻️ Refactor serialization of AlignItems, AlignContent, JustifyItems and JustifyContent
* ♻️ Refactor serialization of WrapType and FlexDirection
* ♻️ Refactor serialization of JustifySelf
* ♻️ Refactor serialization of GridCell
* ♻️ Refactor serialization of AlignSelf
* 🐛 Fix AlignSelf not being serialized
* ♻️ Refactor handling of None variants in Raw* enums
* ♻️ Refactor serialization of grid direction
* ♻️ Refactor serialization of GridTrack and GridTrackType
* ♻️ Refactor serialization of Sizing
* ♻️ Refactor serialization of ShadowStyle
* ♻️ Refactor serialization of StrokeCap and StrokeStyle
* ♻️ Refactor serialization of BlendMode
* ♻️ Refactor serialization of FontStyle
* ♻️ Refactor serialization of GrowType