Re: Nevow and python 3

Glyph <[email protected]> Wed, 24 Jan 2018 10:56:35 -0800
Newsgroups gmane.comp.python.twisted.web
Message-ID <1516820195.2104744.1246880168.03A58840@webmail.messagingengine.com>
CgpPbiBXZWQsIEphbiAyNCwgMjAxOCwgYXQgMTI6NTQgQU0sIE1hcmt1cyBEZW1sZWl0bmVyIHdy
b3RlOgo+IEhpIEdseXBoLAo+IAo+IE9uIFR1ZSwgSmFuIDIzLCAyMDE4IGF0IDExOjUxOjQ0UE0g
LTA4MDAsIEdseXBoIHdyb3RlOgo+ID4gPiBPbiBKYW4gMjMsIDIwMTgsIGF0IDI6MDMgQU0sIE1h
cmt1cyBEZW1sZWl0bmVyIDxtc2RlbWxlaUBhcmkudW5pLWhlaWRlbGJlcmcuZGU+IHdyb3RlOgo+
ID4gPiB0aHJvdWdoIGZyb20gdHdpc3RlZC53ZWIgcXVpdGUgdW5zYXRpc2Z5aW5nLiAgSSd2ZSB0
cmllZCB0byBmb3JtdWxhdGUKPiA+ID4gc29tZXRoaW5nIGxpa2UgYSBwcmVsaW1pbmFyeSBwb2xp
Y3kgaW4KPiA+ID4gaHR0cHM6Ly9naXRodWIuY29tL21zZGVtbGVpL25ldm93L2Jsb2IvbWFzdGVy
L2RvYy9zdHJpbmdzX2FuZF9ieXRlcy5yc3QsCj4gPiA+IGJ1dCBJJ20gZGVlcGx5IHVuaGFwcHkg
YWJvdXQgbW9zdCBvZiB0aGlzLgo+ID4gCj4gPiBZZWFoLCBJUmVxdWVzdCBpcyBhbiB1bmZvcnR1
bmF0ZSBpbnRlcmZhY2UuICBXb3JrIGlzIG9uZ29pbmcgdG8KPiA+IGRlc2lnbiBhIG1vcmUgdGhv
dWdodGZ1bCBvbmUgYW5kIGdyYWR1YWxseSBtaWdyYXRlIHRvIGl0LiAgSSB0aGluawo+ID4gaHR0
cHM6Ly9naXRodWIuY29tL3dzYW5jaGV6L3R4cmVxdWVzdAo+ID4gPGh0dHBzOi8vZ2l0aHViLmNv
bS93c2FuY2hlei90eHJlcXVlc3Q+IGlzIGdldHRpbmcgcHJldHR5IGNvbXBsZXRlLAo+ID4gYW5k
IGZyb20gdGhlcmUgdGhlIGhvcGUgaXMgdGhhdCBpdCB3aWxsIGdldCBpbnRlZ3JhdGVkIGludG8g
S2xlaW4KPiA+IGFuZCB0aGVuIHVwc3RyZWFtZWQgaW50byBUd2lzdGVkLgo+IAo+IC4uLndoaWNo
IG9mIGNvdXJzZSBsb29rcyBsaWtlIGEgdmVyeSBsb25nIG1pZ3JhdGlvbiBwYXRoLCB2ZXJ5IGxp
a2VseQo+IHN0cmV0Y2hpbmcgZmFyIGJleW9uZCBweXRob24yJ3MgRU9MIGlmIG15IHR5cGljYWwg
ZGVwbG95bWVudCBpcyBvbgo+IERlYmlhbiBzdGFibGUuLi4KClNob3J0ZXIgdGhlIG1vcmUgcGVv
cGxlIHdlIGhhdmUgd29ya2luZyBvbiBpdCA6LSkuCgo+IEkgd29uZGVyIGlmIG9uZSBjb3VsZG4n
dCBhcnJhbmdlIGZvciBpbmV2b3cuSVJlcXVlc3QgdG8gYWRhcHQgdG8KPiBlc3NlbnRpYWxseSB0
aGlzIChwZXJoYXBzIHdpdGggYSBiaXQgbW9yZSBnbHVlIGNvZGUgdG8ga2VlcAo+IGFzIGNvbXBh
dGlibGUgd2l0aCBleGlzdGluZyBjb2RlIGFzIHBvc3NpYmxlKS4KClRoaXMgd291bGQgYmUgZ3Jl
YXQuCgo+ID4gPiBJZGVhbGx5LCBJJ2QgbGlrZSB0byBmYWlybHkgZXhjbHVzaXZlbHkgZXhwb3Nl
IGFjdHVhbCBzdHJpbmdzIHRvCj4gPiAKPiA+ICJhY3R1YWwiIG1lYW5pbmcgdGV4dD8KPiAKPiBZ
ZXM6IHN0ci4KPiAKPiA+ID4gKDIpIElzIGFueW9uZSBhdCBhbGwgaW50ZXJlc3RlZCBpbiB0aGUg
bGl2ZXBhZ2VzIHN0dWZmIChJJ20gbm90LCBhbmQKPiA+ID4gZHJvcHBpbmcgaXQgd291bGQgY2Vy
dGFpbmx5IG1ha2UgcG9ydGluZyBhbmQgbWFpbnRhaW5pbmcgdGhlIHBhY2thZ2UKPiA+ID4gYSBs
b3QgZWFzaWVyKT8KPiA+IAo+ID4gSWYgeW91J3JlIGdvaW5nIHRvIGRyb3AgbGl2ZXBhZ2UsIGlz
IHRoZXJlIGFueSByZWFzb24geW91J3JlIG5vdAo+ID4ganVzdCBtaWdyYXRpbmcgdG8gdHdpc3Rl
ZC53ZWIudGVtcGxhdGU/ICBJcyB0aGVyZSBhbnkgd2F5IHQudy50Cj4gPiBjb3VsZCBiZSBtYWRl
IGludG8gYW4gZWFzaWVyIG1pZ3JhdGlvbiBwYXRoPwo+IAo+IEkgaGF2ZSB0byBhZG1pdCBJJ3Zl
IG5vdCByZWFsbHkgaW52ZXN0aWdhdGVkIHQudy50IGluIGFueSBkZXRhaWw7IG9uZQo+IHRoaW5n
IHRoYXQgYWN0dWFsbHkgZG9lcyBtYXR0ZXIgLS0gYmVjYXVzZSB0ZW1wbGF0ZXMgb2YgbXkgdXNl
cnMgd2lsbAo+IHNpbGVudGx5IGZhaWwgd2l0aCBpdCAtLSBpcyB0aGUgY2hhbmdlIG9mIHRoZSBY
TUwgbmFtZXNwYWNlIGZvciB0aGUKPiBuZXZvdyBlbGVtZW50cyBhbmQgYXR0cmlidXRlcy4gIAo+
IAo+IEkgc3VwcG9zZSBvbmUgY291bGQgd29yayBhcm91bmQgaXQgb24gdGVtcGxhdGUgbG9hZCwg
dGhvdWdoLiAgSG0gLS0KPiB0aGlzIG1pZ2h0IGJlIGFuIGludGVyZXN0aW5nIGFsdGVybmF0aXZl
IHRvIGtlZXBpbmcgYWxsIG9mIG5ldm93LgoKSSBkb24ndCBwcmV0ZW5kIHRvIGhhdmUgYSBjb21w
bGV0ZSBzb2x1dGlvbiBoZXJlIC0gdW5mb3J0dW5hdGVseSBJJ3ZlIHBvcnRlZCB2ZXJ5IGZldyBw
cm9qZWN0cyAqZnJvbSogbmV2b3cgKnRvKiB0LncudCBzbyBhbG1vc3Qgbm8gd29yayBoYXMgZ29u
ZSBpbnRvIG1pZ3JhdGlvbiBvciBjb21wYXRpYmlsaXR5LiAgQnV0IEkgZG8gdGhpbmsgdGhlcmUn
cyBkZWZpbml0ZWx5IHNvbWV0aGluZyB0byBpbnZlc3RpZ2F0ZS4KCj4gT2YgY291cnNlLCB0aGF0
IHN0aWxsIGRvZXNuJ3QgaGVscCBhZ2FpbnN0IHRoZSBpbnNpZHVvdXMgYnJlYWthZ2UKPiB3aGVu
IHN1ZGRlbmx5IGNvZGUgbmVlZHMgdG8gZGVhbCB3aXRoIGJ5dGUgc3RyaW5ncyBjb21pbmcgb3V0
IG9mCj4gcmVxdWVzdC5hcmdzLmtleXMoKSwgcGF0aCBjb21wb25lbnRzLCBhbmQgaGVhZGVyczsg
dGhhdCdzIGEgYml0IGxlc3MKPiBvZiBhIGRpcmVjdCBjb25jZXJuIGZvciBtZSBzaW5jZSBpdCdz
IG11Y2ggbGVzcyBkZXBsb3llci12aXNpYmxlIGZvcgo+IG15IGFwcGxpY2F0aW9ucywgYnV0IGlm
IEkgaGF2ZSB0byB3cml0ZSBzb21lIGNvbXBhdGliaWxpdHkgbGF5ZXIsIHdoeQo+IG5vdCBoYXZl
IG5ldm93IGJlIGl0PwoKVGhpcyBpcyBsYXJnZWx5IGFib3V0IGFsaWduaW5nIGFzIG11Y2ggZWZm
b3J0IGFzIHBvc3NpYmxlIGluIG9uZSBwbGFjZSA6KS4gIE91ciBnb2FscyBhcmUgbm90IGV4YWN0
bHkgdGhlIHNhbWUgb2YgY291cnNlLCB5b3Ugd2FudCBOZXZvdytQeTMsIGFuZCBtb3N0IEtsZWlu
IGludGVyZXN0IHJpZ2h0IG5vdyBpcyBwcmltYXJpbHkgYXJvdW5kIEFQSXMgcmF0aGVyIHRoYW4g
SFRNTCwgYnV0IHRoaXMgaXMgZXhhY3RseSB3aHkgZXh0cmFjdGluZyB0aGUgcmVxdWVzdC1wcm9j
ZXNzaW5nIGZpeCB0byB0aGUgbG93ZXN0IHNoYXJlZCBsZXZlbCBpcyBpbXBvcnRhbnQgOikuCgo+
ID4gPiAoMykgSWYgSSB3ZW50IGFoZWFkIHdpdGggdGhpcyBhbmQgYWN0dWFsbHkgdHJpZWQgdG8g
Z2V0IGEKPiA+ID4gcHl0aG9uMy1uZXZvdyBpbnRvIERlYmlhbiAod2hpY2ggSSdkIHJlYWxseSwg
cmVhbGx5IGxpa2UgdG8gc2VlKTogSG93Cj4gPiA+IGlzIGV2ZXJ5b25lJ3MgZmVlbGluZyBhYm91
dCBrZWVwaW5nIHRoZSBuYW1lIG5ldm93IGV2ZW4gaWYgc2VyaW91cwo+ID4gPiBmdW5jdGlvbmFs
IGNoYW5nZXMgKHN1Y2ggYXMgZHJvcHBpbmcgbGl2ZXBhZ2VzKSB3ZXJlIHRvIGNvbWUgYWJvdXQ/
Cj4gPiA+IFtXaGF0IEkgY2FyZSBhYm91dCBtb3N0IGlzIGtlZXBpbmcgdGhlIHRlbXBsYXRpbmcg
c3lzdGVtIGluY2x1ZGluZwo+ID4gPiB0aGUgcmVuZGVyXyBhbmQgZGF0YV8gbWV0aG9kc10uCj4g
PiAKPiA+IAo+ID4gSWYgeW91J3JlIGdvaW5nIHRvIGRvIGEgZm9yaywgcGxlYXNlIGNvbWUgdXAg
d2l0aCBhIG5ldyBuYW1lLgo+ID4gVXNpbmcgdGhlIGV4aXN0aW5nIG9uZSBpcyBjb25mdXNpbmcs
IGl0IGNhdXNlcyBuYW1lc3BhY2UgY29uZmxpY3RzCj4gPiAod2hhdCBoYXBwZW5zIHdoZW4gTmV2
b3cgaXRzZWxmIGdldHMgc29tZSB1cHN0cmVhbSBwYXRjaGVzIHRoYXQKPiA+IHBvcnQgaXQgdG8g
cHl0aG9uIDMgZnJvbSBzb21lb25lIGVsc2U/KSBhbmQgaXQgY2F1c2VzIGltcG9ydAo+ID4gY29u
ZmxpY3RzLgo+IAo+IEZhaXIgZW5vdWdoIChhIGJpdCBtb3JlIG9uIHRoaXMgaW4gbXkgcmVzcG9u
c2UgdG8gV2VybmVyKS4KCkkgZG8gaG9wZSB3ZSBjYW4gZmlndXJlIG91dCBhIHdheSB0byB3b3Jr
IHRvZ2V0aGVyISBBbHRob3VnaCBpZiBhIGZvcmsgaXMgbmVjZXNzYXJ5IHRoZXJlIHdpbGwgZGVm
aW5pdGVseSBiZSBubyBoYXJkIGZlZWxpbmdzIC0gdGhlIGxvZ2lzdGljcyBvbiB0aGF0IGFyZSBo
YXJkLgoKPiA+IFRoYXQgc2FpZCwgaWYgeW91IGFyZSBpbnRlcmVzdGVkIGluIHBvcnRpbmcgTmV2
b3cgdGhlIHNhbWUgd2F5IHRoYXQKPiA+IFR3aXN0ZWQgaXMgYmVpbmcgcG9ydGVkIChpLmUuIHRo
ZXJlJ3Mgb25lIHNldCBvZiBzb3VyY2VzLCBidXQgYHBpcAo+ID4gaW5zdGFsbGAgb24gcHl0aG9u
IDMgb25seSBpbnN0YWxscyB0aGUgbW9kdWxlcyBwb3J0ZWQgdGh1cyBmYXIpCj4gCj4gT3VjaCAt
LSBnaXZlbiBteSBleHBlcmllbmNlcyB3aGlsZSBwb3J0aW5nIGl0IHdvdWxkIHNlZW0gYSBtYWpv
cgo+IGNob3JlIHRvIGtlZXAgcHl0aG9uMiBjb21wYXRpYml0eS4gIEJ1dCB0aGVuIEkndmUgbm90
IHRyaWVkLCBhbmQgSQo+IG1heSBiZSB3cm9uZy4gICBJZiBJIGFjdHVhbGx5IHdhbnRlZCB0byBm
b2xsb3cKPiBodHRwczovL3R3aXN0ZWRtYXRyaXguY29tL3RyYWMvd2lraS9QbGFuL1B5dGhvbjMg
YnkgdGhlIGxldHRlciwKPiB0aGF0J3MgY2VydGFpbmx5IGZhciBiZXlvbmQgd2hhdCBJIGNhbiBy
ZWFzb25hYmx5IGNvbW1pdCBpbiB0ZXJtcyBvZgo+IHJlc291cmNlcy4KCkRvaW5nIHRoaXMgYXQg
dGhlIHZlcnkgc3RhcnQgb2YgdGhlIHByb2plY3QgKFB5dGhvbjIuNSArIFB5dGhvbjMuMikgd2Fz
IGFnb25pemluZzsgYmFyZWx5IHByYWN0aWNhbC4gQnV0IHRvZGF5IChQeXRob24yLjcgKyBQeXRo
b24zLjQpIGlzIG1vc3RseSBxdWl0ZSBwbGVhc2FudC4KCj4gPiB0aGVuIHRoYXQgd291bGQgY2Vy
dGFpbmx5IGJlIGEgd2F5IHRvIGludmVzdCB0aGUgZWZmb3J0IGluIGp1c3QKPiA+IHBvcnRpbmcg
dGhlIHBhcnRzIHRoYXQgeW91IG5lZWQsIGFuZCBsZXR0aW5nIHNvbWVvbmUgZWxzZSBwb3J0Cj4g
PiBMaXZlUGFnZSBsYXRlciA6KS4gIEknZCBiZSBoYXBweSB0byBtYWtlIHlvdSBhIG1haW50YWlu
ZXIgaWYgeW91J3JlCj4gPiBpbnRlcmVzdGVkIGluIGRvaW5nIHRoaXMgLSBub3QgYSBsb3Qgb2Yg
b3RoZXIgYWN0aXZpdHkgb24gTmV2b3cKPiA+IHJpZ2h0IG5vdyEKPiAKPiBJJ2QgY2VydGFpbmx5
IGxpa2UgdG8gbWFrZSB0aGUgZWZmb3J0IEkgaW52ZXN0IGFzIHdvcnRod2hpbGUgYXMKPiBwb3Nz
aWJsZTsgYnV0LCBpbiBwYXJ0aWN1bGFyIGFmdGVyIHRoZSBleHBlcmllbmNlIG9mIHBvcnRpbmcs
IEkgZmVlbAo+IEknbSBub3QgbmVhcmx5IGFzIGZhbWlsaWFyIHdpdGggbmV2b3cncyBjb2RlYmFz
ZSAoYW5kIGN1c3RvbXMgaW4gdGhlCj4gdHdpc3RlZCBlY29zeXN0ZW0pIGFzIEkgc2hvdWxkIGJl
IHRvIGNvbmZpZGVudGx5IHdvcmsgYXMgbWFpbnRhaW5lci4KClRoZXJlJ3MgcmVhbGx5IG9ubHkg
b25lIHdheSB0byBiZWNvbWUgZmFtaWxpYXIgd2l0aCB0aGVzZSB0aGluZ3MgLSBqdW1wIHJpZ2h0
IGluISA6KQoKPiBCZWZvcmUgSSBjb21taXQgdG8gYW55dGhpbmcsIGxldCBtZSB0cnkgdG8gd29y
ayBvdXQgaWYgSSBjYW4gZ2V0Cj4gbmV2b3cgdG8gdGhlIHBvaW50IHdoZXJlIGl0IGRvZXNuJ3Qg
Y2F1c2UgZXh0cmEgcG9ydGluZyBwYWlucyBpbiB0aGUKPiBweXRob24zIG1pZ3JhdGlvbiBvZiBk
ZXBlbmRlbnQgY29kZS4KCkkgZG9uJ3Qgd2FudCB0byBwcmVzc3VyZSB5b3UgaW50byBhbnkgY29t
bWl0bWVudHMgeW91J3JlIHVuY29tZm9ydGFibGUgd2l0aDsgYXMgeW91IHNhaWQsIGp1c3Qgd2Fu
dGluZyB0byBtYWtpbmcgdGhlIGludmVzdG1lbnQgb2YgeW91ciBlZmZvcnQgd29ydGh3aGlsZS4g
IFNvdW5kcyBsaWtlIHlvdXIgbWluZCBpcyBpbiB0aGUgcmlnaHQgcGxhY2UgdGhvdWdoOyBsZXQg
bWUga25vdyB3aGVuIHlvdSBoYXZlIGNvbXBsZXRlZCB5b3VyIGludmVzdGlnYXRpb25zIDopLgoK
LWcKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClR3aXN0
ZWQtd2ViIG1haWxpbmcgbGlzdApUd2lzdGVkLXdlYkB0d2lzdGVkbWF0cml4LmNvbQpodHRwczov
L3R3aXN0ZWRtYXRyaXguY29tL2NnaS1iaW4vbWFpbG1hbi9saXN0aW5mby90d2lzdGVkLXdlYgo=