From: Samuele P. <ped...@bl...> - 2004-02-22 14:34:35
|
At 21:35 21.02.2004 -0700, Jonathan Ellis wrote: >Including the jdk version in platform make it hard for people to write >jython-aware code. Stuff like regrtest, for instance, uses platform in a >hash lookup, not a string comparison. > the de-facto way to check for jython, has been: if sys.platform[:4] == 'java' or if sys.platform.startswith('java'): setting platform to 'jython' is not backward compatible, and I don't think of Jython as a platform. Given things like 'nio' and other features etc ..., I would also not think e.g. of java1.2 and java1.4 as the same platform. And effectively, returning to your regrtest example, I would think that if we added optional functionality based on some newer features, different tests would pass for example under 1.4 vs. 1.3. If people have nothing against it, I think that "java" + System.getProperty("java.specification.version") could be a more reasonable platform value, instead of the whole of "java.version". |
From: Jonathan E. <jon...@no...> - 2004-02-22 16:12:28
|
Rm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5LCB5b3UncmUgcmlnaHQsIGl0IHNob3VsZCBiZSAi amF2YSIgaW5zdGVhZCBvZiAianl0aG9uLiINCiANCkJ1dCBmb3IgdGhlIHJlc3QsIHVzaW5nIGEg ZGlmZmVyZW50IGpkayBkb2Vzbid0IG1hZ2ljYWxseSBnaXZlIGp5dGhvbiBtb3JlIGZ1bmN0aW9u YWxpdHkgYXMgZmFyIGFzIHRoZSBweXRob24gQVBJIGlzIGNvbmNlcm5lZC4gIFNvIGlmIEp5dGhv biAyLjIgaXMgb24gMS4yIGFuZCBKeXRob24gMi4zIGltcGxlbWVudHMgbW9yZSBmcm9tIGJlaW5n IG9uIDEuNCwgaXQncyByZWFsbHkgdGhlIGp5dGhvbiB2ZXJzaW9uIHRoYXQncyBpbXBvcnRhbnQs IHJhdGhlciB0aGFuIHRoZSBqZGsuICAoQWZ0ZXIgYWxsLCB5b3UgY2FuIGltcGxlbWVudCBhbnl0 aGluZyBpbiAxLjQgd2l0aCAxLjItY29tcGF0aWJsZSBjb2RlIC0tIGl0IGp1c3QgbWlnaHQgYmUg YSBsb3QgbW9yZSBjb2RlIGFuZC9vciBzbG93ZXIuKQ0KIA0KSSBndWVzcyB1c2luZyB0aGUgc3Bl YyB2ZXJzaW9uIGlzIGEgcmVhc29uYWJsZSBjb21wcm9taXNlIGJ1dCBpdCByZWFsbHkgaXNuJ3Qg Y29uc2lzdGVudCB3aXRoIHdoYXQgQ1B5dGhvbiBkb2VzIC0tIEkgZG9uJ3QgaGF2ZSBhIHdpbjk1 IGJveCBhcm91bmQgdG8gdGVzdCBvbiBidXQgSSdsbCBiZXQgaXQgZ2l2ZXMgd2luMzIgZm9yIHRo YXQgdG9vLCBhbmQgdGhlIGRpZmZlcmVuY2UgaW4gZnVuY3Rpb25hbGl0eSBmcm9tIHdpbjk1IHRv IHdpblhQIGlzIGEgTE9UIGJpZ2dlciB0aGFuIGZyb20gamRrIDEuMiB0byAxLjQuIDopDQogDQot Sm9uYXRoYW4NCg0KCS0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tIA0KCUZyb206IFNhbXVlbGUg UGVkcm9uaSBbbWFpbHRvOnBlZHJvbmlzQGJsdWV3aW4uY2hdIA0KCVNlbnQ6IFN1biAyLzIyLzIw MDQgNzozMSBBTSANCglUbzoganl0aG9uLWRldkBsaXN0cy5zb3VyY2Vmb3JnZS5uZXQgDQoJQ2M6 IA0KCVN1YmplY3Q6IFJlOiBbSnl0aG9uLWRldl0gc3VnZ2VzdGlvbjogc3lzLnBsYXRmb3JtID0g Imp5dGhvbiINCgkNCgkNCg0KCUF0IDIxOjM1IDIxLjAyLjIwMDQgLTA3MDAsIEpvbmF0aGFuIEVs bGlzIHdyb3RlOg0KCT5JbmNsdWRpbmcgdGhlIGpkayB2ZXJzaW9uIGluIHBsYXRmb3JtIG1ha2Ug aXQgaGFyZCBmb3IgcGVvcGxlIHRvIHdyaXRlDQoJPmp5dGhvbi1hd2FyZSBjb2RlLiAgU3R1ZmYg bGlrZSByZWdydGVzdCwgZm9yIGluc3RhbmNlLCB1c2VzIHBsYXRmb3JtIGluIGENCgk+aGFzaCBs b29rdXAsIG5vdCBhIHN0cmluZyBjb21wYXJpc29uLg0KCT4NCgkNCgl0aGUgZGUtZmFjdG8gd2F5 IHRvIGNoZWNrIGZvciBqeXRob24sIGhhcyBiZWVuOg0KCQ0KCWlmIHN5cy5wbGF0Zm9ybVs6NF0g PT0gJ2phdmEnDQoJDQoJb3IgaWYgc3lzLnBsYXRmb3JtLnN0YXJ0c3dpdGgoJ2phdmEnKToNCgkN CglzZXR0aW5nIHBsYXRmb3JtIHRvICdqeXRob24nIGlzIG5vdCBiYWNrd2FyZCBjb21wYXRpYmxl LCBhbmQgSSBkb24ndCB0aGluaw0KCW9mIEp5dGhvbiBhcyBhIHBsYXRmb3JtLg0KCQ0KCUdpdmVu IHRoaW5ncyBsaWtlICduaW8nIGFuZCBvdGhlciBmZWF0dXJlcyBldGMgLi4uLCBJIHdvdWxkIGFs c28gbm90IHRoaW5rDQoJZS5nLiBvZiBqYXZhMS4yIGFuZCBqYXZhMS40IGFzIHRoZSBzYW1lIHBs YXRmb3JtLiBBbmQgZWZmZWN0aXZlbHksDQoJcmV0dXJuaW5nIHRvIHlvdXIgcmVncnRlc3QgZXhh bXBsZSwgSSB3b3VsZCB0aGluayB0aGF0IGlmIHdlIGFkZGVkIG9wdGlvbmFsDQoJZnVuY3Rpb25h bGl0eSBiYXNlZCBvbiBzb21lIG5ld2VyIGZlYXR1cmVzLCBkaWZmZXJlbnQgdGVzdHMNCgl3b3Vs ZCBwYXNzIGZvciBleGFtcGxlIHVuZGVyIDEuNCB2cy4gMS4zLg0KCQ0KCUlmIHBlb3BsZSBoYXZl IG5vdGhpbmcgYWdhaW5zdCBpdCwgSSB0aGluayB0aGF0DQoJDQoJImphdmEiICsgU3lzdGVtLmdl dFByb3BlcnR5KCJqYXZhLnNwZWNpZmljYXRpb24udmVyc2lvbiIpDQoJDQoJY291bGQgYmUgYSBt b3JlIHJlYXNvbmFibGUgcGxhdGZvcm0gdmFsdWUsIGluc3RlYWQgb2YgdGhlIHdob2xlIG9mDQoJ ImphdmEudmVyc2lvbiIuDQoJDQoJDQoJDQoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KCVNGLk5ldCBpcyBzcG9uc29yZWQgYnk6IFNwZWVk IFN0YXJ0IFlvdXIgTGludXggQXBwcyBOb3cuDQoJQnVpbGQgYW5kIGRlcGxveSBhcHBzICYgV2Vi IHNlcnZpY2VzIGZvciBMaW51eCB3aXRoDQoJYSBmcmVlIERWRCBzb2Z0d2FyZSBraXQgZnJvbSBJ Qk0uIENsaWNrIE5vdyENCglodHRwOi8vYWRzLm9zZG4uY29tLz9hZF9pZD0xMzU2JmFsbG9jX2lk PTM0Mzgmb3A9Y2xpY2sNCglfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXw0KCUp5dGhvbi1kZXYgbWFpbGluZyBsaXN0DQoJSnl0aG9uLWRldkBsaXN0cy5zb3Vy Y2Vmb3JnZS5uZXQNCglodHRwczovL2xpc3RzLnNvdXJjZWZvcmdlLm5ldC9saXN0cy9saXN0aW5m by9qeXRob24tZGV2DQoJDQoNCg== |
From: Samuele P. <ped...@bl...> - 2004-02-22 16:29:30
|
At 09:08 22.02.2004 -0700, Jonathan Ellis wrote: >For backwards compatibility, you're right, it should be "java" instead of >"jython." > >But for the rest, using a different jdk doesn't magically give jython more >functionality as far as the python API is concerned. So if Jython 2.2 is >on 1.2 and Jython 2.3 implements more from being on 1.4, it's really the >jython version that's important, rather than the jdk. (After all, you can >implement anything in 1.4 with 1.2-compatible code -- it just might be a >lot more code and/or slower.) without JNI, which we are not going to do, I think not. > >I guess using the spec version is a reasonable compromise but it really >isn't consistent with what CPython does -- I don't have a win95 box around >to test on but I'll bet it gives win32 for that too, and the difference in >functionality from win95 to winXP is a LOT bigger than from jdk 1.2 to 1.4. :) > You cited regrtest, suppose that for Jython 2.3 we have code that implements the select module if we have nio, that would mean that we would expect the corresponding test to be skipped for java1.2, java1.3 and to pass for java1.4,java1.5... CPython OTOH offers more or less the same services across win98, winXP. |
From: Jonathan E. <jon...@no...> - 2004-02-22 21:27:39
|
YnV0IGluIHRoaXMgZXhhbXBsZSwgZm9yIEp5dGhvbiA8IDIuMyBpdCBzaG91bGQgbmV2ZXIgYmUg cnVuIG5vIG1hdHRlciB3aGF0IGpkayB5b3UgYXJlIHVzaW5nLg0KIA0KRm9yIG1vc3QgcHVycG9z ZXMsIGl0IHNlZW1zIHRvIG1lIHRoYXQgdGhlIG9ubHkgaW1wb3J0YW50IGluZm9ybWF0aW9uIGlz IHRoYXQgdGhlIHBsYXRmb3JtIGlzIGphdmEuICBTZWNvbmQgbW9zdCBpbXBvcnRhbnQgaXMgd2hh dCB2ZXJzaW9uIG9mIGp5dGhvbi4gIE9ubHkgdGVydGlhcmlseSBpbXBvcnRhbnQgaXMgd2hhdCBz ZGsgaXMgYmVpbmcgcnVuLg0KIA0KLUoNCg0KCS0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tIA0K CUZyb206IFNhbXVlbGUgUGVkcm9uaSBbbWFpbHRvOnBlZHJvbmlzQGJsdWV3aW4uY2hdIA0KCVNl bnQ6IFN1biAyLzIyLzIwMDQgOToyNiBBTSANCglUbzogSm9uYXRoYW4gRWxsaXM7IGp5dGhvbi1k ZXZAbGlzdHMuc291cmNlZm9yZ2UubmV0IA0KCUNjOiANCglTdWJqZWN0OiBSRTogW0p5dGhvbi1k ZXZdIHN1Z2dlc3Rpb246IHN5cy5wbGF0Zm9ybSA9ICJqeXRob24iDQoJDQoJWW91IGNpdGVkIHJl Z3J0ZXN0LA0KCQ0KCXN1cHBvc2UgdGhhdCBmb3IgSnl0aG9uIDIuMyB3ZSBoYXZlIGNvZGUgdGhh dCBpbXBsZW1lbnRzIHRoZSBzZWxlY3QgbW9kdWxlDQoJaWYgd2UgaGF2ZSBuaW8sDQoJdGhhdCB3 b3VsZCBtZWFuIHRoYXQgd2Ugd291bGQgZXhwZWN0IHRoZSBjb3JyZXNwb25kaW5nIHRlc3QgdG8g YmUgc2tpcHBlZA0KCQ0KCWZvciBqYXZhMS4yLCBqYXZhMS4zDQoJDQoJYW5kIHRvIHBhc3MgZm9y IGphdmExLjQsamF2YTEuNS4uLg0KCQ0KCUNQeXRob24gT1RPSCBvZmZlcnMgbW9yZSBvciBsZXNz IHRoZSBzYW1lIHNlcnZpY2VzIGFjcm9zcyB3aW45OCwgd2luWFAuDQoJDQoJDQoNCg== |