Files
pfUI/modules
Brues 82a07e1e35 share: rebuild profile export/import on C_EncodingUtil (CBOR+zlib+base64)
Export now diffs the config against defaults and emits
SerializeCBOR -> CompressString (zlib) -> EncodeBase64 with a "!pf1!"
prefix. Import reverses that into a plain table — no loadstring, so a
pasted profile is data and can't execute code. The Decode/Encode button
converts blob <-> editable JSON (SerializeJSON/DeserializeJSON) for
inspection and hand-edits.

Old-format strings still import: standard base64 via DecodeBase64, the
custom LZW decompressor kept import-only, and the resulting Lua source
runs in an EMPTY setfenv sandbox that can only assign its config table.
Decode on a legacy string yields the JSON view, so Encode re-emits it
as a new-format blob (migration path).

Roughly half the paste size of the old LZW format, C-speed instead of
the old bit-string base64 (which froze the client on large configs),
and the format is fully standard — external tools can decode profiles
with stock base64/zlib/CBOR libraries.

Requires ClassicAPI with the SerializeCBOR buffer-growth fix (payloads
over 256 bytes returned nil before it).
2026-07-03 21:19:07 -05:00
..
2026-05-25 18:50:53 -05:00
2026-05-25 18:50:53 -05:00
2026-05-25 18:50:53 -05:00
2026-06-08 11:33:05 -05:00
2026-05-25 18:50:53 -05:00
2026-06-17 20:19:42 -05:00
2026-05-25 18:50:53 -05:00
2026-05-25 18:50:53 -05:00
2026-05-25 18:50:53 -05:00
2017-07-19 10:35:01 +02:00
2026-05-27 23:11:44 -05:00
2026-05-25 18:50:53 -05:00
2026-05-31 13:13:48 -05:00
2026-05-25 18:50:53 -05:00
2026-05-25 18:50:53 -05:00
2026-05-25 18:50:53 -05:00
2026-05-25 18:50:53 -05:00
2026-05-25 18:50:53 -05:00
2026-05-25 18:50:53 -05:00
2026-05-25 18:50:53 -05:00
2026-05-25 18:50:53 -05:00
2026-05-25 18:50:53 -05:00
2026-05-25 18:50:53 -05:00
2026-05-25 18:50:53 -05:00
2026-05-25 18:50:53 -05:00
2026-05-25 18:50:53 -05:00
2026-05-25 18:50:53 -05:00
2026-05-25 18:50:53 -05:00
2026-05-25 18:50:53 -05:00
2026-05-25 18:50:53 -05:00
2026-05-25 18:50:53 -05:00
2026-06-27 19:19:51 -05:00
2026-05-25 18:50:53 -05:00
2026-05-25 18:50:53 -05:00
2026-05-31 13:18:20 -05:00
2026-05-25 18:50:53 -05:00
2026-05-25 18:50:53 -05:00
2026-05-25 18:50:53 -05:00
2026-05-25 18:50:53 -05:00
2026-05-25 18:50:53 -05:00
2026-05-25 18:50:53 -05:00
2026-05-25 18:50:53 -05:00
2026-05-25 18:50:53 -05:00
2026-05-25 18:50:53 -05:00
2026-05-25 18:50:53 -05:00