- Improved performance of serializer and deserializer by using
Ustr
to represent property and class names (#462). Content
data now serializes withContentId
, reflecting Roblox's changes. (#455)
- Updated rbx-dom dependencies
- Updated rbx-dom dependencies
- Add the ability to specify a
ReflectionDatabase
to use for serializing and deserializing. This takes the form ofDecodeOptions::reflection_database
andEncodeOptions::reflection_database
. (#375)
- Added support for
SecurityCapabilities
values. (#359)
- Added support for
UniqueId
values. (#271) - Added migrations for properties like
ScreenGui.IgnoreGuiInset
andTextLabel.Font
to their new counterparts (ScreenGui.GuiInsets
andTextLabel.FontFace
, respectively). (#283) - Added support for
Terrain.MaterialColors
. (#323)
- Added support for
Font
values. (#248)
- Implemented serialization and deserialization for
Attributes
. (#219)
- Added support for
Tags
values. (#199)
- Updated to rbx_dom_weak 2.2.
- Added conversion from
Color3
toColor3uint8
to address rojo-rbx/rojo#443. (#198)
- Upgraded to rbx_dom_weak 2.1.
- Upgraded to rbx_dom_weak 2.0 stable.
- Added support for
OptionalCoordinateFrame
type.
- rbx_xml now ignore unknown property types. (#170)
- This fixes our interactions with the new, partially-released
OptionalCoordinateFrame
type that is now showing up in place and model files.
- This fixes our interactions with the new, partially-released
- BrickColor properties will now deserialize as the
BrickColor
type.
- Fixed support for writing
BrickColor
values.
This release is a major, breaking change that upgrades rbx_xml's underlying DOM implementation from rbx_dom_weak 1.0 to 2.0.
- Breaking: upgraded to rbx_dom_weak 2.0
- Added support for the
Ray
type, used in theRayValue
instance. - Added support for the
Faces
type, used in theHandles
instance. - Added support for the
Axes
type, used in theArcHandles
instance.
- Updated
base64
dependency
- Empty BinaryStrings will now serialize without an empty CDATA tag (#76).
- Fixed SharedString entries with CRLF line endings causing obscure errors (#84)
- Fixed encoding properties in a nondeterministic order. Properties should now be sorted. (#66)
- Fixed decoding
BinaryString
values with arbitrary whitespace in them, including CRLF line endings.
- Added support for reading and writing
BrickColor
values.
- Added support for INF and NAN values in compound types like Vector2 (#62)
- Fixed edge cases around unrecognized Ref properties causing confusing errors.
- Added support for serializing and deserializing
SharedString
values. (#63)
- Added real configuration to serialization and deserialization routines
- Users can now ignore, read/write, or error when encountering unknown properties
- It's also possible to disable the reflection database entirely, akin to version 0.6.0
- Fixed type conversion when serializing properties whose serialized type differs from its canonical type (#56)
- Changed type conversion failures when serializing to elevate to serialization errors (#58)
- Breaking: changed API dramatically to make deserializing instances easier
- Renamed deserialization APIs to be named like
from_reader
- Renamed serialization APIs to be named like
to_writer
- Added options to APIs
- Made error types opaque
- Renamed deserialization APIs to be named like
- Breaking: changed serialization to be reflection-driven, which improves content compatibility
- Fixed serializing empty
Content
properties (#146)
- Added support for new types:
- Rewrote lots of internals, which should improve whitespace handling (#17, #19)
- Changed referents to be emitted as consecutive integers, which makes generating XML models deterministic regardless of IDs
- Updated to
rbx_dom_weak
1.0 - Fixed
ProtectedString
support, which was missing from the main deserializer loop - Added support for
Content
,UDim
andUDim2
values - Fixed
Ref
properties pointing to invalid IDs by changing them to always deserialize toNone
for now
- Updated
rbx_tree
dependency torbx_dom_weak
0.3.0 - Added support for
ProtectedString
, deserializing as String - Added support for
Ref
values (#8)
- Serialization and deserialization functions are now fully functional
- Added support for new property types:
- CFrame
- Color3
- Color3uint8
- Enum
- Float32
- Int32
- Vector2
- Vector2int16
- Vector3
- Vector3int16
- PhysicalProperties (Stub)
- Added support for correctly mapping some property names:
- FormFactor (serializes as
formFactorRaw
) - Size (serializes as
size
) - Shape (serializes as
shape
)
- FormFactor (serializes as
- Initial release
- Deserialization does not produce instances
- Supports serializing
String
andBool
properties