Branch: refs/heads/smoke-me/bitwise_uni-gh848
  Home:   https://github.com/parrot/parrot
  Commit: f61c76f902bdafe854558f70b3400413127aea3f
      
https://github.com/parrot/parrot/commit/f61c76f902bdafe854558f70b3400413127aea3f
  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: 60a05796ec8339e12bfaeb6f9ba077465c494b55
      
https://github.com/parrot/parrot/commit/60a05796ec8339e12bfaeb6f9ba077465c494b55
  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: 2f7ab435257f46762878a4f6ad21e6461db5944b
      
https://github.com/parrot/parrot/commit/2f7ab435257f46762878a4f6ad21e6461db5944b
  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: 9ad3a03c5a7ba42813e0cc9afc7bd96a5d504fe2
      
https://github.com/parrot/parrot/commit/9ad3a03c5a7ba42813e0cc9afc7bd96a5d504fe2
  Author: Reini Urban <[email protected]>
  Date:   2025-12-17 (Wed, 17 Dec 2025)

  Changed paths:
    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:
  -----------
  [GH #848] Support unicode strings for bitwise ops

bands, bors, bxors and bnots understand now more multi-byte strings.

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/f61c76f902bd%5E...9ad3a03c5a7b

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

Reply via email to