[Python-announce] TatSu v5.20.0

Juancarlo AƱez via Python-announce-list <[email protected]> Sat, 23 May 2026 16:42:40 -0400
Newsgroups gmane.comp.python.announce
Message-ID <CAL8UGB7aSQkMi3784YLo=+jjLEom6apPt9D-js8kD5mU8cStWQ@mail.gmail.com>
djUuMjAuMCBVcGRhdGUNCj09PT09PT09PT09PT09DQoNCmh0dHBzOi8vcHlwaS5vcmcvcHJvamVj
dC9UYXRTdS81LjIwLjAvDQoNClNpYmxpbmcgUHJvamVjdHMNCi0tLS0tLS0tLS0tLS0tLS0NCg0K
VGhlcmUgYXJlIHBvcnRzIG9mIFRhdFN1IHRvIEdvIGFuZCBSdXN0LiBUaGV5IGFyZSBmdW5jdGlv
bmFsbHkgY29tcGxldGUNCndpdGggZXhjZXB0IGZvciBmZWF0dXJlcyAobGlrZSBzeW50aGV0aWMg
Y2xhc3NlcykgdGhhdCByZWx5IG9uIHRoZQ0KZHluYW1pYyBuYXR1cmUgb2YgUHl0aG9uLg0KDQrp
k4Hkv64gVGllWGl1DQouLi4uLi4uLi4uLg0KDQrpk4Hkv64gVGllWGl1IGlzIHRoZSBwb3J0IG9m
IFRhdFN1IHRvIFJ1c3QuIEl0IGZlYXR1cmVzIGEgUHlPMyBpbnRlcmZhY2UNCm9zIGl04oCZcyBh
bHNvIGEgUHl0aG9uIGxpYnJhcnksIGJ1dCB0aGUgYmVuY2htYXJrcyBzaG93IHRoYXQgdGhlDQpw
dXJlLVB5dGhvbiBwYXJzZXJzIGdlbmVyYXRlZCBieSBUYXRTdSBhcmUgc3RpbGwgbW9yZSBwZXJm
b3JtYW50IHdoZW4NCmhvc3RpbmcgZnJvbSBQeXRob24uIFNlZSB0aGUgVGllWGl1IFJFQURNRSBm
b3IgYSBkaXNjdXNzaW9uIG9mIHRoZQ0KcGVyZm9ybWFuY2UgbGltaXRzIG9mIFBFRyBwYXJzZXJz
Lg0KDQriu7BPR29QRUdvDQouLi4uLi4uLi4uDQoNCuK7sE9Hb1BFR28gaXMgdGhlIHBvcnQgb2Yg
VGF0U3UgdG8gR28uIFRoZSBpbXBsZW1lbnRhdGlvbiwgYmVpbmcgdGhlIG1vc3QNCm1hdHVyZSwg
aXMgYmVhdXRpZnVsbHkgY29uY2lzZSwgYW5kIHVzaW5nIHRoZSBnZW5lcmF0ZWQgcGFyc2VycyBo
YXMgYQ0Kc2ltcGxpY2l0eSBjbG9zZXIgdG8gdGhlIFB5dGhvbiBzdHlsZSBhbGxvd2VkIGJ5IFRh
dFN1Lg0KDQpJbnRlcm5hbHMNCi0tLS0tLS0tLQ0KDQotIFRoZSBhbGdvcml0aG0gZm9yIGxlZnQt
cmVjdXJzaW9uIGFuYWx5c2lzIHdlbnQgb3ZlciBhbm90aGVyIHJvdW5kIG9mDQogIHNpbXBsaWZp
Y2F0aW9uIGFuZCBvcHRpbWl6YXRpb24uIFRoZW4gdGhlIGFuYWx5c2lzIGRvbmUgaW4gcGVnZW4s
IGENCiAgbW9yZSBlZmZpY2llbnQgYW5kIHRoZW9yZXRpY2FsbHktc291bmQgYXBwcm9hY2gsIHdh
cyBldmFsdWF0ZWQuIEFsbA0KICB0ZXN0cyBwYXNzIHdpdGggdGhlIHBlZ2Vu4oCZcyBTQ0MgKFN0
cm9uZ2x5IENvbm5lY3RlZCBDb21wb25lbnRzKQ0KICBhbGdvcml0aG0sIHNvIHRoZSBvbGQtYW5k
LXRyaWVkIGFsZ29yaXRobSBpbiBUYXRTdSB3YXMgcmVwbGFjZWQuDQoNCiAgQWx0aG91Z2ggbGVm
dC1yZWN1cnNpb24gYW5hbHlzaXMgaXMgcGVyZm9ybWVkIG9uY2UgcGVyIEdyYW1tYXIsIGJlZm9y
ZQ0KICBhbnkgcGFyc2luZywgYSBzaW1wbGVyIGltcGxlbWVudGF0aW9uIG1ha2VzIHRoaXMgY29y
ZSBwYXJ0IG9mIFRhdFN1DQogIGVhc2llciB0byBtYWludGFpbi4NCg0KZzJlIChBTlRMUiB0byBU
YXRTdSkNCi0tLS0tLS0tLS0tLS0tLS0tLS0tDQoNCi0gVGhlIGcyZSAoQU5UTFIgZ3JhbW1hciB0
byBUYXRTdSkgdHJhbnNsYXRvciBoYXMgYmVlbiByZXZpdmVkIGFuZA0KICBzaWduaWZpY2FudGx5
IHNpbXBsaWZpZWQuIEEgd29ya2luZyBleGFtcGxlIChweXRob24zLnRhdHN1LCA1NTEgbGluZXMp
DQogIGlzIGdlbmVyYXRlZCBmcm9tIFB5dGhvbiAz4oCZcyBmdWxsIEFOVExSIGdyYW1tYXIgYW5k
IHBhc3Nlcw0KICB0YXRzdS5jb21waWxlKCkuDQoNCi0gUmVtb3ZlZCB0aGUgcmVnZXggY29udmVy
c2lvbiBhcHByb2FjaCBmb3IgQU5UTFIgdG9rZW4gcnVsZXMuIEFOVExSDQogIGxleGVyIHBhdHRl
cm5zIChub3RhYmx5IFx1WFhYWCBlc2NhcGVzKSBhcmUgbm90IHZpYWJsZSBhcyBQeXRob24gcmVn
ZXgNCiAgcGF0dGVybnMuIE5vbi10cml2aWFsIHRva2VuIHJ1bGVzIG5vdyBlbWl0IEZhaWwoKSBp
bnN0ZWFkIG9mIFBhdHRlcm4uDQoNCi0gZzJlIHN1YnN0aXR1dGVzIHNpbXBsZSB0b2tlbiBkZWZp
bml0aW9ucyAobGlrZQ0KICBPUEVOX1BBUkVOIDogJygnIHtvcGVuZWQrKzt9OykgZm9yIHRoZWly
IHJpZ2h0IGhhbmQgc2lkZSAoanVzdCAnKCcpDQogIGZvciBiZXR0ZXIgbG9va2luZyBncmFtbWFy
cy4gRm9yIGNvbXBsZXggdG9rZW4gZGVmaW5pdGlvbnMgQU5UTFIgdXNlcw0KICBhIHNwZWNpYWwg
c3ludGF4IHdoaWNoIGlzIG5vdCB0aGF0IG9mIFB5dGhvbi1jb21wYXRpYmxlIChQQ1JFMikNCiAg
cmVndWxhciBleHByZXNzaW9ucywgc28gZzJlIG9taXRzIHRoZW0sIGxlYXZpbmcgaXQgdG8gdGhl
IHVzZXIgdG8NCiAgZGVjaWRlIGhvdyB0byBoYW5kbGUgdGhvc2UgdG9rZW5zLiBJbiBtYW55IGNh
c2VzIGEgc2luZ2xlIHBhdHRlcm4NCiAgbWF0Y2ggaXMgZW5vdWdoIGZvciB0aGUgZ3JhbW1hciBv
ZiBpbnRlcmVzdCwgYW5kIGEgc2VtYW50aWMgcnVsZSBtYXkNCiAgYmUgYWRkZWQgdG8gdmFsaWRh
dGUgYWRkaXRpb25hbCBjb25kaXRpb25zIHRoYXQgdGhlIHBhcnNlZCB0b2tlbg0KICBzaG91bGQg
bWVldC4NCg0KLSBTdHJlYW1saW5lZCBnZW5lcmF0ZWQgZ3JhbW1hciBvdXRwdXQg4oCUIHJlbW92
ZWQgdW5uZWNlc3NhcnkNCiAgcGFyZW50aGVzaXphdGlvbjoNCg0KICAtIFNpbmdsZSB0b2tlbiBy
ZWZlcmVuY2VzIGluIGFsdGVybmF0aXZlcyBubyBsb25nZXIgd3JhcHBlZCBpbiBleHRyYQ0KICAg
IHBhcmVuczogKE5FV0xJTkUpIOKGkiBORVdMSU5FLg0KICAtIEdyb3VwcyBpbnNpZGUgWy4uLl0s
IHsuLi59LCB7Li4ufSsgdW53cmFwcGVkOiBbKCdhcycgTkFNRSldIOKGkg0KICAgIFsnYXMnIE5B
TUVdLCB7KCcuJyBOQU1FKX0g4oaSIHsnLicgTkFNRX0uDQogIC0gUnVsZSBkZWR1cGxpY2F0aW9u
IGJ5IG5hbWUgaGFuZGxlcyB0b2tlbnMge30gZGVjbGFyYXRpb25zIHRoYXQNCiAgICBjb2xsaWRl
IHdpdGggZGVmaW5lZCBydWxlcyAoZS5nLiBJTkRFTlQvREVERU5UKS4NCg0KLSBUb2tlbiBuYW1l
IHJlc29sdXRpb24gbm93IHVzZXMgdXBwZXJjYXNlIG5hbWVzIGNvbnNpc3RlbnRseS4NCg0KLSBU
aGUgZzJlIGV4YW1wbGUgKGV4YW1wbGVzL2cyZSkgdXNlcyB0aGUgb2xkLCBMTCgxKSBQeXRob24g
Z3JhbW1hci4NCiAgTm93LCBzaW5jZSBQeXRob27igJlzIFBFRyBwYXJzZXIgdGhlIGFjdHVhbCBn
cmFtbWFyIGlzIGEgbXVjaCBzaW1wbGVyDQogIG9uZS4gVGhlIGV4YW1wbGUgaXMga2VwdCBhcyBp
dCB3YXMgdG8gZGVtb25zdHJhdGUgZzJl4oCZcyBiZWhhdmlvciBvdmVyDQogIGEgY29tcGxleCBn
cmFtbWFyLg0KDQpUb29scw0KLS0tLS0NCg0KLSBBIG5ldyAtLXJlY3Vyc2lvbi1saW1pdCAoLVIx
KSBvcHRpb24gd2FzIGFkZGVkIHRvIHRoZSB0YXRzdSBDTEkgdG9vbA0KICBzbyBpdCBjYW4gaGFu
ZGxlIGxhcmdlIGFuZCBkZWVwbHkgcmVjdXJzaXZlIGlucHV0IGdyYW1tYXJzLiBXaGVuIHVzZWQN
CiAgYXMgYSBsaWJyYXJ5LCB0aGUgaG9zdCBwcm9ncmFtIHNob3VsZCBjYWxsIHN5cy5zZXRyZWN1
cnNpb25saW1pdCgpDQogIHdoZW4gcmVxdWlyZWQgYnkgdGhlIGdyYW1tYXIgY29tcGxleGl0eS4N
Cg0KLSBBZGRlZCBiZXR0ZXIgcmVuZGVyaW5nIHRvIEZhaWxlZFBhcnNlLl9fc3RyX18oKS4gTm93
IGEgY29kZSBmcmFnbWVudA0KICBhbmQgbGluZSBudW1iZXJzIGFyZSBzaG93biwgYXMgaW4gbWFu
eSBtb2Rlcm4gdG9vbHMuDQoNCiAgICAgIGVycm9yOiBleHBlY3RpbmcgJ3dvcmxkJw0KICAgICAg
ICAtLT4gZXhhbXBsZToxOjcNCiAgICAgICAgIHwNCiAgICAgICAxIHwgaGVsbG8gbWlzc2luZw0K
ICAgICAgICAgfCAgICAgICBeIGV4cGVjdGluZyAnd29ybGQnDQoNCiAgICAgICAgLT4gc3RhcnQN
Cg0KSlNPTg0KLS0tLQ0KDQotIHRhdHN1LmVibmYgZGVmaW5lIHJ1bGVzIGZvciBKU09OIGxpdGVy
YWxzLCBzbyB0cnVlLCBmYWxzZSwgYW5kIG51bGwsDQogIG1heSBiZSB1c2VkIHdoZXJlIHByZXZp
b3VzbHkgb25seSBUcnVlLCBGYWxzZSwgYW5kIE5vbmUgd2VyZQ0KICByZWNvZ25pemVkLiBUaGUg
UHl0aG9uIGxpdGVyYWxzIGFyZSBzdGlsbCBob25vcmVkIGFzIGJlZm9yZSwgYXMgd2VsbA0KICBh
cyB0aGUgYm9vbGVhbiBydWxlIHJlc29sdmluZyB0byBUcnVlIGZvciBub24tZmFsc3kgdmFsdWVz
LiBUaGVzZQ0KICBsaXRlcmFscyBhcmUgb25seSB1c2VkIGluIGdyYW1tYXIgZGlyZWN0aXZlcywg
YXMgcGFyc2luZyBpcyBvbmx5DQogIGludGVyZXN0ZWQgaW4gdGhlIHN0cmluZ3MgdGhhdCBtYXRj
aCBhIFRva2VuIG9yIFBhdHRlcm4uDQoNCi0gTm93IGEgR3JhbW1hciBjYW4gYmUgaW1wb3J0ZWQg
ZnJvbSB0aGUgSlNPTiBwcm9kdWNlZCBieQ0KICBtb2RlbC5hc2pzb24oKS4gUm91bmR0cmlwIGhh
cyBiZWVuIHRlc3RlZCBhbmQgaXQgd29ya3MuIE5ldyBtZXRob2RzDQogIEdyYW1tYXIubG9hZCh2
YWx1ZTogQW55KSAtPiBHcmFtbWFyIGFuZA0KICBHcmFtbWFyLmxvYWRzKGpzb246IHN0cikgLT4g
R3JhbW1hciBtYWtlIHRoZSBmdW5jdGlvbmFsaXR5IGF2YWlsYWJsZS4NCg0KICAgICAgY2xhc3Mg
R3JhbW1hcjoNCiAgICAgICAgICBAc3RhdGljbWV0aG9kDQogICAgICAgICAgZGVmIGxvYWQodmFs
dWU6IEFueSkgLT4gR3JhbW1hcjoNCiAgICAgICAgICAgICAgZnJvbSAuanNvbiBpbXBvcnQgbG9h
ZF9ncmFtbWFyDQogICAgICAgICAgICAgIHJldHVybiBsb2FkX2dyYW1tYXIodmFsdWUpDQoNCiAg
ICAgICAgICBAc3RhdGljbWV0aG9kDQogICAgICAgICAgZGVmIGxvYWRzKHZhbHVlOiBzdHIpIC0+
IEdyYW1tYXI6DQogICAgICAgICAgICAgIGZyb20gLmpzb24gaW1wb3J0IGxvYWRzX2dyYW1tYXIN
Cg0KICAgICAgICAgICAgICByZXR1cm4gbG9hZHNfZ3JhbW1hcih2YWx1ZSkNCg0KR3JhbW1hciBT
eW50YXgNCi0tLS0tLS0tLS0tLS0tDQoNCi0gVGhlIGRlZmluaXRpb24gb2YgdGhlIERFREVOVCBy
dWxlIGluIHRoZSBUYXRTdSBncmFtbWFyIGlzIHVzZWQgdG8NCiAgc3VwcG9ydCBFQk5GIG5vdGF0
aW9ucyB3aXRoIG5vIHJ1bGUtdGVybWluYXRpb3JzIGFuZCBncmFtbWFycyB3aXRoIG5vDQogIGJs
YW5rIGxpbmVzICogcnVsZXMuIFRoZSBwYXR0ZXJuIHVzZWQgaW4gdGhlIHJ1bGUgd2FzIGluY29y
cmVjdGx5DQogIGNvbnN1bWluZyB0aGUgZmlyc3Qgbm9uLXNwYWNlIGNoYXJhY3RlciBzdGFydGlu
ZyB0aGUgbmV4dCBydWxlLiBGaXhlZC4NCg0KICBOb3cgdGhpcyBpcyBhIHZhbGlkIEVCTkYgZGVm
aW5pdGlvbjoNCg0KICAgICAgZ3JhbW1hciA9IHIiIiINCiAgICAgICAgICBAQGdyYW1tYXIgOjog
TWluaUpTT04NCiAgICAgICAgICBAQG5hbWVndWFyZCA6OiBGYWxzZQ0KICAgICAgICAgIEBAd2hp
dGVzcGFjZSA6OiAvXHMrLw0KICAgICAgICAgIHN0YXJ0OiB2YWx1ZSAkDQoNCiAgICAgICAgICB2
YWx1ZTogb2JqZWN0IHwgYXJyYXkgfCBzdHJpbmcgfCBudW1iZXIgfCAndHJ1ZScgfCAnZmFsc2Un
IHwNCidudWxsJw0KDQogICAgICAgICAgb2JqZWN0OiAneycgbWVtYmVycz8gJ30nDQogICAgICAg
ICAgYXJyYXk6ICdbJyBlbGVtZW50cz8gJ10nDQogICAgICAgICAgbWVtYmVyczogcGFpciAoJywn
IHBhaXIpKg0KICAgICAgICAgIGVsZW1lbnRzOiB2YWx1ZSAoJywnIHZhbHVlKSoNCiAgICAgICAg
ICBwYWlyOiBzdHJpbmcgJzonIHZhbHVlDQogICAgICAgICAgc3RyaW5nOiAnIicgQ09OVEVOVCAn
IicNCiAgICAgICAgICBDT05URU5UOiAvW14iXSovDQogICAgICAgICAgbnVtYmVyOiAvLT9cZCso
XC5cZCspPy8NCiAgICAgICIiIg0KDQotLS0NCi0tDQpKdWFuY2FybG8gQcOxZXoNCm1haWx0bzph
cGFsYWxhQGdtYWlsLmNvbQ0KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX18KUHl0aG9uLWFubm91bmNlLWxpc3QgbWFpbGluZyBsaXN0IC0tIHB5dGhvbi1hbm5v
dW5jZS1saXN0QHB5dGhvbi5vcmcKVG8gdW5zdWJzY3JpYmUgc2VuZCBhbiBlbWFpbCB0byBweXRo
b24tYW5ub3VuY2UtbGlzdC1sZWF2ZUBweXRob24ub3JnCmh0dHBzOi8vbWFpbC5weXRob24ub3Jn
L21haWxtYW4zLy9saXN0cy9weXRob24tYW5ub3VuY2UtbGlzdC5weXRob24ub3JnCk1lbWJlciBh
ZGRyZXNzOiBweXRob24tcHl0aG9uLWFubm91bmNlLWxpc3RAbS5nbWFuZS1teC5vcmcK