Branch: refs/heads/smoke-me/bitwise_uni-gh848
Home: https://github.com/parrot/parrot
Commit: 4b8641a115b48f24e94009195e35f094bfc9eb59
https://github.com/parrot/parrot/commit/4b8641a115b48f24e94009195e35f094bfc9eb59
Author: Reini Urban <[email protected]>
Date: 2025-12-17 (Wed, 17 Dec 2025)
Changed paths:
M compilers/data_json/data_json/pge2pir.tg
M src/string/encoding/utf16.c
Log Message:
-----------
[GH #845] Fix data_json \unnnn encoding
\u needs to be encoded as utf16 char, not utf8 because they
are binary different. E.g. \u00a2 is 0xc2a2 in utf8.
Add utf16_chr vtable method for the Parrot_utf16_encoding.
Add unicode tests to data_json.
Commit: a90b2b63e2438579cca93fa4b3e78682728fd1c8
https://github.com/parrot/parrot/commit/a90b2b63e2438579cca93fa4b3e78682728fd1c8
Author: Reini Urban <[email protected]>
Date: 2025-12-17 (Wed, 17 Dec 2025)
Changed paths:
M src/pmc/string.pmc
Log Message:
-----------
[cage] Typo in the string.pmc trans method pod
Commit: fd806b60ca191cdf910f04ff6d2b1315edfd26fa
https://github.com/parrot/parrot/commit/fd806b60ca191cdf910f04ff6d2b1315edfd26fa
Author: Reini Urban <[email protected]>
Date: 2025-12-17 (Wed, 17 Dec 2025)
Changed paths:
M src/string/encoding/utf16.c
Log Message:
-----------
Micro-optimize utf16_chr by checking 0 beforehand
Commit: e0fc769c82d5852ddde7a048dde3dc5724071f8b
https://github.com/parrot/parrot/commit/e0fc769c82d5852ddde7a048dde3dc5724071f8b
Author: Reini Urban <[email protected]>
Date: 2025-12-17 (Wed, 17 Dec 2025)
Changed paths:
M ChangeLog
M include/parrot/encoding.h
M src/string/api.c
M src/string/encoding.c
M t/codingstd/c_macro_args.t
M t/dynoplibs/bit.t
Log Message:
-----------
[pmc] Support unicode strings for bitwise ops
bands, bors, bxors and bnots understand now more multi-byte strings.
Closes GH #848
Old docs:
Performs a bitwise C<OR> on two Parrot strings, performing type and encoding
conversions if necessary. Returns the result as a new string.
Added now:
Same encodings are compared bitwise. Different two-byte encodings are first
converted down to latin1, and if that fails upgraded to ucs2 and if that
fails to ucs4.
2 byte <=> 4 byte conversion is not supported, thus e.g. utf8->utf16 fails.
But 2 byte to 1 byte is attempted.
Compare: https://github.com/parrot/parrot/compare/182200f445fe...e0fc769c82d5
To unsubscribe from these emails, change your notification settings at
https://github.com/parrot/parrot/settings/notifications
_______________________________________________
http://lists.parrot.org/mailman/listinfo/parrot-commits