From: Jonathan E. <jon...@no...> - 2004-08-15 15:51:34
|
IMO, it would be nice if such informing took place on-list... -Jonathan -----Original Message----- From: James Linder [mailto:jh...@jl...] As for the current status...The main developer is expecting to get back = to=20 work on the 2.2 release near the end of August and hopes to get a 2.2 = release=20 out around the end of September or early October...At least that is the = plan=20 that I have recently been informed of. =20 |
From: Jonathan E. <jon...@no...> - 2004-11-18 18:35:29
|
So, 4+ weeks later -- what progress has been made? -Jonathan -----Original Message----- From: Samuele Pedroni [mailto:ped...@bl...]=20 Sent: Tuesday, October 12, 2004 2:04 PM The problem is that the codebase as inherited from Jim Hugunin has never been in a state such that apart from minor patches, passing tests is a=20 sufficient condition to be acceptable for a patch. So patches not only=20 need to be written but also need to be reviewed. In that process new=20 core developer with broad responsabilities can prove themself and join. [It is a fact that when we had more time and people for that few people=20 with significative and good patches showed up.] This and what patches are needed, what can be deferred etc is the right=20 discussion at the wrong time. My next to-do is implementing subclassing for new-style classes and then consider what is the minimal amount of work that is really necessary=20 before the new-style branch can be merged. After that going through the patch backlog is the next thing, and also=20 have this discussion. IMHO, right now this discussion is not a good way to use my time, it just results in me getting unfocused. We are talking a 1-3 weeks timespan here. Thanks |
From: Mark P. <li...@ma...> - 2004-10-11 16:41:20
|
Any one have any upate on this? Things going to schedule? Mark Jonathan Ellis wrote: >IMO, it would be nice if such informing took place on-list... > >-Jonathan > >-----Original Message----- >From: James Linder [mailto:jh...@jl...] > >As for the current status...The main developer is expecting to get back to >work on the 2.2 release near the end of August and hopes to get a 2.2 release >out around the end of September or early October...At least that is the plan >that I have recently been informed of. > > > >------------------------------------------------------- >SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media >100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33 >Save 50% off Retail on Ink & Toner - Free Shipping and Free Gift. >http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285 >_______________________________________________ >Jython-dev mailing list >Jyt...@li... >https://lists.sourceforge.net/lists/listinfo/jython-dev > > > |
From: Mark P. <li...@ma...> - 2004-10-11 16:50:01
|
I define a consequence script and available functions in separate xml elements for the http://drools.org project. Currently we bind each function definition separately, is there better way to do this? <rule-set> <rule> ... ... .... <python:consequence> test("mark"); print "%s" % (test2("mark")); </python:consequence> </rule> <python:functions> def test(name): print "hello %s" %(name); def test2(name): return "hello %s" %(name); </python:function> </rule-set> We then bind each function to our PyCode, the consequence, that we wish to run with: ...... Map pythonFunctions = (Map) getFunctions().get("python"); if (pythonFunctions != null) { Iterator it = pythonFunctions.keySet().iterator(); String name; String function; modType node; PyCode code; PythonInterpreter pythonInterpreter; while (it.hasNext()) { name = (String) it.next(); function = (String) pythonFunctions.get(name); node = ( modType ) parser.parse( function, "exec" ); code = Py.compile( node, "<jython>" ); pythonInterpreter = new PythonInterpreter( ); pythonInterpreter.exec( code ); dict.setdefault( new PyString( name ), ( PyFunction ) pythonInterpreter.get( name, PyFunction.class ) ); //add function } Py.runCode( consequenceCode, dict, new PyDictionary( new Hashtable( ) ) ) } However this involves me binding each individual function. Is there a way to compile my functions element as a single PyCode and give, programmtically (ie without string mangling), my consequence script element acess to those in a single "inherit" type way. |
From: Jim A. <ji...@tr...> - 2004-10-11 17:52:20
|
I may be missing something here, but why aren't you just 'exec'ing the entire contents of '<python:functions>' in the same interpreter you are using to run the <python:consequence> ? ---- If you want major optimization, I just sent an email to Jython-Users about a 'hack' to PyStringMap I use to track changes, I use something similar to 'scrape' the code of all our functions and cache them (by Application, etc). Then during run-time I bind the code for the functions ('func.func_code') to the current 'locals' Map using something like: PyFunction newFunction = new PyFunction(currentLocals, func.func_defaults, func.func_code); currentLocals.__setitem__(key, newFunction); This is VERY fast since the new 'PyFunction' is just a 'shell' that contains pointers to preexisting stuff (see the contructor to PyFunction). So maybe you could have cached objects for each Rule that contain pointers to the function code and just rebind the 'locals' for each execution ? Note that this allows use of globals within the functions. On Oct 11, 2004, at 9:49 AM, Mark Proctor wrote: > I define a consequence script and available functions in separate xml > elements for the http://drools.org project. Currently we bind each > function definition separately, is there better way to do this? > > <rule-set> > <rule> > ... > ... > .... > <python:consequence> > test("mark"); > print "%s" % (test2("mark")); > </python:consequence> > </rule> > > <python:functions> > def test(name): > print "hello %s" %(name); > > def test2(name): > return "hello %s" %(name); > </python:function> > > </rule-set> > > We then bind each function to our PyCode, the consequence, that we > wish to run with: > ...... > Map pythonFunctions = (Map) getFunctions().get("python"); > > if (pythonFunctions != null) > { > Iterator it = pythonFunctions.keySet().iterator(); > String name; > String function; > modType node; > PyCode code; > PythonInterpreter pythonInterpreter; > while (it.hasNext()) > { > name = (String) it.next(); > function = (String) pythonFunctions.get(name); > node = ( modType ) parser.parse( function, "exec" ); > code = Py.compile( node, "<jython>" ); > pythonInterpreter = new > PythonInterpreter( ); > pythonInterpreter.exec( code ); > dict.setdefault( new PyString( name ), ( PyFunction ) > pythonInterpreter.get( name, PyFunction.class ) ); //add function > } > > Py.runCode( consequenceCode, dict, new PyDictionary( new > Hashtable( ) ) ) > } > However this involves me binding each individual function. Is there a > way to compile my functions element as a single PyCode and give, > programmtically (ie without string mangling), my consequence script > element acess to those in a single "inherit" type way. > > > ------------------------------------------------------- > This SF.net email is sponsored by: IT Product Guide on > ITManagersJournal > Use IT products in your business? Tell us what you think of them. Give > us > Your Opinions, Get Free ThinkGeek Gift Certificates! Click to find out > more > http://productguide.itmanagersjournal.com/guidepromo.tmpl > _______________________________________________ > Jython-dev mailing list > Jyt...@li... > https://lists.sourceforge.net/lists/listinfo/jython-dev > |
From: Mark P. <li...@ma...> - 2004-10-11 19:15:18
|
currently we compile our code with Py.compile and then execute it with Py.runCode: this.node = ( modType ) parser.parse( this.text, type ); this.code = Py.compile( this.node, "<jython>" ); Py.runCode( getCode( ), setupLocals(), new PyDictionary( new Hashtable( ) );); Where setupLocals creates a data dictionary and adds the functions, as mentioned previously. If I hadn't done it a more obvious way its because I dont know too much about python/jython I just hack it together so it works in our tool so that users can script it with jython as well as java. Could you show me how this would work, something on the lines of: functionNode = ( modType ) parser.parse( functionString, type ); functionCode = Py.compile( functionNode, "<jython>" ); consequenceNode = ( modType ) parser.parse( consequenceString, type ); consequenceCode = Py.compile( consequenceNode, "<jython>" ); pythonInterpreter.exec(functionCode); pythonInterpreter.exec(consequenceCode); .... bearing in mind at this stage I dont want the consequence to execute - how can I then get a reference to something that I can execute repeatedly with Py.runCode Mark Jim Adrig wrote: > I may be missing something here, but why aren't you just 'exec'ing the > entire contents of '<python:functions>' in the same interpreter you > are using to run the <python:consequence> ? > > ---- > > If you want major optimization, I just sent an email to Jython-Users > about a 'hack' to PyStringMap I use to track changes, I use something > similar to 'scrape' the code of all our functions and cache them (by > Application, etc). Then during run-time I bind the code for the > functions ('func.func_code') to the current 'locals' Map using > something like: > > PyFunction newFunction = new PyFunction(currentLocals, > func.func_defaults, func.func_code); > currentLocals.__setitem__(key, newFunction); > > This is VERY fast since the new 'PyFunction' is just a 'shell' that > contains pointers to preexisting stuff (see the contructor to > PyFunction). > > So maybe you could have cached objects for each Rule that contain > pointers to the function code and just rebind the 'locals' for each > execution ? Note that this allows use of globals within the functions. > > > On Oct 11, 2004, at 9:49 AM, Mark Proctor wrote: > >> I define a consequence script and available functions in separate xml >> elements for the http://drools.org project. Currently we bind each >> function definition separately, is there better way to do this? >> >> <rule-set> >> <rule> >> ... >> ... >> .... >> <python:consequence> >> test("mark"); >> print "%s" % (test2("mark")); >> </python:consequence> >> </rule> >> >> <python:functions> >> def test(name): >> print "hello %s" %(name); >> >> def test2(name): >> return "hello %s" %(name); >> </python:function> >> >> </rule-set> >> >> We then bind each function to our PyCode, the consequence, that we >> wish to run with: >> ...... >> Map pythonFunctions = (Map) getFunctions().get("python"); >> >> if (pythonFunctions != null) >> { >> Iterator it = pythonFunctions.keySet().iterator(); >> String name; >> String function; >> modType node; >> PyCode code; >> PythonInterpreter pythonInterpreter; >> while (it.hasNext()) >> { >> name = (String) it.next(); >> function = (String) pythonFunctions.get(name); >> node = ( modType ) parser.parse( function, "exec" ); >> code = Py.compile( node, "<jython>" ); >> pythonInterpreter = new >> PythonInterpreter( ); >> pythonInterpreter.exec( code ); >> dict.setdefault( new PyString( name ), ( PyFunction ) >> pythonInterpreter.get( name, PyFunction.class ) ); //add function >> } >> >> Py.runCode( consequenceCode, dict, new PyDictionary( new >> Hashtable( ) ) ) >> } >> However this involves me binding each individual function. Is there a >> way to compile my functions element as a single PyCode and give, >> programmtically (ie without string mangling), my consequence script >> element acess to those in a single "inherit" type way. >> >> >> ------------------------------------------------------- >> This SF.net email is sponsored by: IT Product Guide on ITManagersJournal >> Use IT products in your business? Tell us what you think of them. >> Give us >> Your Opinions, Get Free ThinkGeek Gift Certificates! Click to find >> out more >> http://productguide.itmanagersjournal.com/guidepromo.tmpl >> _______________________________________________ >> Jython-dev mailing list >> Jyt...@li... >> https://lists.sourceforge.net/lists/listinfo/jython-dev >> > > > > ------------------------------------------------------- > This SF.net email is sponsored by: IT Product Guide on ITManagersJournal > Use IT products in your business? Tell us what you think of them. Give us > Your Opinions, Get Free ThinkGeek Gift Certificates! Click to find out > more > http://productguide.itmanagersjournal.com/guidepromo.tmpl > _______________________________________________ > Jython-dev mailing list > Jyt...@li... > https://lists.sourceforge.net/lists/listinfo/jython-dev > |
From: Jim A. <ji...@tr...> - 2004-10-11 19:25:33
|
[ by the way this should probably be on 'Jython-Users'...] I have not tried this, but maybe what you want is something like this ?: On Oct 11, 2004, at 12:15 PM, Mark Proctor wrote: > ... > functionNode = ( modType ) parser.parse( functionString, type ); > functionCode = Py.compile( functionNode, "<jython>" ); > > consequenceNode = ( modType ) parser.parse( consequenceString, > type ); > consequenceCode = Py.compile( consequenceNode, "<jython>" ); You have already compiled, so why do this ?: > pythonInterpreter.exec(functionCode); Do something like this instead ?: currentLocals = pythonInterpreter.getLocals(); PyFunction newFunction = new PyFunction(currentLocals, functionCode); currentLocals.__setitem__(key, newFunction); I'm not sure about this; you already have 'consequenceCode' ?: > .... > > bearing in mind at this stage I dont want the consequence to execute - > how can I then get a reference to something that I can execute > repeatedly with Py.runCode > > Mark > > > > > Jim Adrig wrote: > >> I may be missing something here, but why aren't you just 'exec'ing >> the entire contents of '<python:functions>' in the same interpreter >> you are using to run the <python:consequence> ? >> >> ---- >> >> If you want major optimization, I just sent an email to Jython-Users >> about a 'hack' to PyStringMap I use to track changes, I use something >> similar to 'scrape' the code of all our functions and cache them (by >> Application, etc). Then during run-time I bind the code for the >> functions ('func.func_code') to the current 'locals' Map using >> something like: >> >> PyFunction newFunction = new PyFunction(currentLocals, >> func.func_defaults, func.func_code); >> currentLocals.__setitem__(key, newFunction); >> >> This is VERY fast since the new 'PyFunction' is just a 'shell' that >> contains pointers to preexisting stuff (see the contructor to >> PyFunction). >> >> So maybe you could have cached objects for each Rule that contain >> pointers to the function code and just rebind the 'locals' for each >> execution ? Note that this allows use of globals within the >> functions. >> >> >> On Oct 11, 2004, at 9:49 AM, Mark Proctor wrote: >> >>> I define a consequence script and available functions in separate >>> xml elements for the http://drools.org project. Currently we bind >>> each function definition separately, is there better way to do this? >>> >>> <rule-set> >>> <rule> >>> ... >>> ... >>> .... >>> <python:consequence> >>> test("mark"); >>> print "%s" % (test2("mark")); >>> </python:consequence> >>> </rule> >>> >>> <python:functions> >>> def test(name): >>> print "hello %s" %(name); >>> >>> def test2(name): >>> return "hello %s" %(name); >>> </python:function> >>> >>> </rule-set> >>> >>> We then bind each function to our PyCode, the consequence, that we >>> wish to run with: >>> ...... >>> Map pythonFunctions = (Map) getFunctions().get("python"); >>> >>> if (pythonFunctions != null) >>> { >>> Iterator it = pythonFunctions.keySet().iterator(); >>> String name; >>> String function; >>> modType node; >>> PyCode code; >>> PythonInterpreter pythonInterpreter; >>> while (it.hasNext()) >>> { >>> name = (String) it.next(); >>> function = (String) pythonFunctions.get(name); >>> node = ( modType ) parser.parse( function, "exec" ); >>> code = Py.compile( node, "<jython>" ); >>> pythonInterpreter = new >>> PythonInterpreter( ); >>> pythonInterpreter.exec( code ); >>> dict.setdefault( new PyString( name ), ( PyFunction ) >>> pythonInterpreter.get( name, PyFunction.class ) ); //add function >>> } >>> >>> Py.runCode( consequenceCode, dict, new PyDictionary( new >>> Hashtable( ) ) ) >>> } >>> However this involves me binding each individual function. Is there >>> a way to compile my functions element as a single PyCode and give, >>> programmtically (ie without string mangling), my consequence script >>> element acess to those in a single "inherit" type way. >>> >>> >>> ------------------------------------------------------- >>> This SF.net email is sponsored by: IT Product Guide on >>> ITManagersJournal >>> Use IT products in your business? Tell us what you think of them. >>> Give us >>> Your Opinions, Get Free ThinkGeek Gift Certificates! Click to find >>> out more >>> http://productguide.itmanagersjournal.com/guidepromo.tmpl >>> _______________________________________________ >>> Jython-dev mailing list >>> Jyt...@li... >>> https://lists.sourceforge.net/lists/listinfo/jython-dev >>> >> >> >> >> ------------------------------------------------------- >> This SF.net email is sponsored by: IT Product Guide on >> ITManagersJournal >> Use IT products in your business? Tell us what you think of them. >> Give us >> Your Opinions, Get Free ThinkGeek Gift Certificates! Click to find >> out more >> http://productguide.itmanagersjournal.com/guidepromo.tmpl >> _______________________________________________ >> Jython-dev mailing list >> Jyt...@li... >> https://lists.sourceforge.net/lists/listinfo/jython-dev >> > |
From: Mark P. <li...@ma...> - 2004-10-11 20:03:52
|
Jim Adrig wrote: > [ by the way this should probably be on 'Jython-Users'...] > > I have not tried this, but maybe what you want is something like this ?: > > On Oct 11, 2004, at 12:15 PM, Mark Proctor wrote: > >> ... >> functionNode = ( modType ) parser.parse( functionString, type ); >> functionCode = Py.compile( functionNode, "<jython>" ); >> >> consequenceNode = ( modType ) parser.parse( consequenceString, >> type ); >> consequenceCode = Py.compile( consequenceNode, "<jython>" ); > > > You have already compiled, so why do this ?: > >> pythonInterpreter.exec(functionCode); > > > Do something like this instead ?: > > currentLocals = pythonInterpreter.getLocals(); > PyFunction newFunction = new PyFunction(currentLocals, functionCode); > currentLocals.__setitem__(key, newFunction); > Thats just a single function reference? my functionsString is a string containing one or more functions. We already process each function indivually with: node = ( modType ) parser.parse( function, "exec" ); code = Py.compile( node, "<jython>" ); pythonInterpreter = new PythonInterpreter( ); pythonInterpreter.exec( code ); dict.setdefault( new PyString( name ), ( PyFunction ) pythonInterpreter.get( functionName, PyFunction.class ) ); //add I want to be able to compile my string of one of more functions and add it in its entirety, without having to extract and bind each function individually. > > I'm not sure about this; you already have 'consequenceCode' ?: > >> .... >> >> bearing in mind at this stage I dont want the consequence to execute >> - how can I then get a reference to something that I can execute >> repeatedly with Py.runCode >> >> Mark >> >> >> >> >> Jim Adrig wrote: >> >>> I may be missing something here, but why aren't you just 'exec'ing >>> the entire contents of '<python:functions>' in the same interpreter >>> you are using to run the <python:consequence> ? >>> >>> ---- >>> >>> If you want major optimization, I just sent an email to Jython-Users >>> about a 'hack' to PyStringMap I use to track changes, I use >>> something similar to 'scrape' the code of all our functions and >>> cache them (by Application, etc). Then during run-time I bind the >>> code for the functions ('func.func_code') to the current 'locals' >>> Map using something like: >>> >>> PyFunction newFunction = new PyFunction(currentLocals, >>> func.func_defaults, func.func_code); >>> currentLocals.__setitem__(key, newFunction); >>> >>> This is VERY fast since the new 'PyFunction' is just a 'shell' that >>> contains pointers to preexisting stuff (see the contructor to >>> PyFunction). >>> >>> So maybe you could have cached objects for each Rule that contain >>> pointers to the function code and just rebind the 'locals' for each >>> execution ? Note that this allows use of globals within the functions. >>> >>> >>> On Oct 11, 2004, at 9:49 AM, Mark Proctor wrote: >>> >>>> I define a consequence script and available functions in separate >>>> xml elements for the http://drools.org project. Currently we bind >>>> each function definition separately, is there better way to do this? >>>> >>>> <rule-set> >>>> <rule> >>>> ... >>>> ... >>>> .... >>>> <python:consequence> >>>> test("mark"); >>>> print "%s" % (test2("mark")); >>>> </python:consequence> >>>> </rule> >>>> >>>> <python:functions> >>>> def test(name): >>>> print "hello %s" %(name); >>>> >>>> def test2(name): >>>> return "hello %s" %(name); >>>> </python:function> >>>> >>>> </rule-set> >>>> >>>> We then bind each function to our PyCode, the consequence, that we >>>> wish to run with: >>>> ...... >>>> Map pythonFunctions = (Map) getFunctions().get("python"); >>>> >>>> if (pythonFunctions != null) >>>> { >>>> Iterator it = pythonFunctions.keySet().iterator(); >>>> String name; >>>> String function; >>>> modType node; >>>> PyCode code; >>>> PythonInterpreter pythonInterpreter; >>>> while (it.hasNext()) >>>> { >>>> name = (String) it.next(); >>>> function = (String) pythonFunctions.get(name); >>>> node = ( modType ) parser.parse( function, "exec" ); >>>> code = Py.compile( node, "<jython>" ); >>>> pythonInterpreter = new >>>> PythonInterpreter( ); >>>> pythonInterpreter.exec( code ); >>>> dict.setdefault( new PyString( name ), ( PyFunction >>>> ) pythonInterpreter.get( name, PyFunction.class ) ); //add function >>>> } >>>> >>>> Py.runCode( consequenceCode, dict, new PyDictionary( new >>>> Hashtable( ) ) ) >>>> } >>>> However this involves me binding each individual function. Is there >>>> a way to compile my functions element as a single PyCode and give, >>>> programmtically (ie without string mangling), my consequence script >>>> element acess to those in a single "inherit" type way. >>>> >>>> >>>> ------------------------------------------------------- >>>> This SF.net email is sponsored by: IT Product Guide on >>>> ITManagersJournal >>>> Use IT products in your business? Tell us what you think of them. >>>> Give us >>>> Your Opinions, Get Free ThinkGeek Gift Certificates! Click to find >>>> out more >>>> http://productguide.itmanagersjournal.com/guidepromo.tmpl >>>> _______________________________________________ >>>> Jython-dev mailing list >>>> Jyt...@li... >>>> https://lists.sourceforge.net/lists/listinfo/jython-dev >>>> >>> >>> >>> >>> ------------------------------------------------------- >>> This SF.net email is sponsored by: IT Product Guide on >>> ITManagersJournal >>> Use IT products in your business? Tell us what you think of them. >>> Give us >>> Your Opinions, Get Free ThinkGeek Gift Certificates! Click to find >>> out more >>> http://productguide.itmanagersjournal.com/guidepromo.tmpl >>> _______________________________________________ >>> Jython-dev mailing list >>> Jyt...@li... >>> https://lists.sourceforge.net/lists/listinfo/jython-dev >>> >> > > > > ------------------------------------------------------- > This SF.net email is sponsored by: IT Product Guide on ITManagersJournal > Use IT products in your business? Tell us what you think of them. Give us > Your Opinions, Get Free ThinkGeek Gift Certificates! Click to find out > more > http://productguide.itmanagersjournal.com/guidepromo.tmpl > _______________________________________________ > Jython-dev mailing list > Jyt...@li... > https://lists.sourceforge.net/lists/listinfo/jython-dev > |
From: Jim A. <ji...@tr...> - 2004-10-11 20:24:43
|
>> > Thats just a single function reference? my functionsString is a string > containing one or more functions. We already process each function > indivually with: > node = ( modType ) parser.parse( function, "exec" ); > code = Py.compile( node, "<jython>" ); > pythonInterpreter = new PythonInterpreter( > ); > pythonInterpreter.exec( code ); > dict.setdefault( new PyString( name ), ( PyFunction ) > pythonInterpreter.get( functionName, PyFunction.class ) ); //add > I want to be able to compile my string of one of more functions and > add it in its entirety, without having to extract and bind each > function individually. > Ah yes, this is where I use my 'hacked' PyStringMap I mentioned before (code is in a post I made yesterday to Jython-Users). Basically I 'python.execfile' all the functions, then use this: preLoadedLocals = currentLocals.getNewValues(); // Jim's new PyStringMap is wickedly hacked ! preLoadedFunctions = new PyStringMap(); // Make a list of the ones that are functions PyList preLoadedValues = preLoadedLocals.keys(); // old: go straight to Values w/o Keys ?: for ( int i = 0; i < preLoadedValues.__len__(); i++ ) { PyString key = (PyString)preLoadedValues.__getitem__( i ); PyObject obj = fillFsData.get(key); if (obj instanceof PyFunction) { preLoadedFunctions.__setitem__(key, obj); // Was just the 'obj' itself !? } } There are surely other ways to do this using 'standard' Jython, but this method is REEEEALY FAST ... ;^) |
From: Sean M. <sea...@pr...> - 2004-10-11 18:06:16
|
Mark Proctor wrote: > Any one have any upate on this? Things going to schedule? I too would welcome an update on the current status. I have written up the first part of a tutorial on how insanely good Jython is for Webapp dev. http://seanmcgrath.blogspot.com/2004_10_10_seanmcgrath_archive.html#109743343777587364. I have a fix or two two the xmlproc parser that ships with Jython 2.1. Also, I have some stuff I'd like to contribute. Jython is so useful that it speaks for itself -- up to a point. There comes a point where potential users teetering on the brink of diving into Jython will look at the "health" of the community in terms of active developers, check-ins etc. and make judgements based on that. Dynamic languages are in the ascendancy. Jython is in the right place and the right time for being the dynamic language of choice on the JVM. It would be a terrible thing if we somehow managed to snatch defeat from the jaws of victory. What needs to be done to get development of Jython re-energised? Count me in to help out but I fear we need to act fast lest this golden opportunity pass us by. What need to be done to get Jython development re-energised? Are we stuck for some reason? If so, how best to get unstuck? regards, Sean McGrath CTO Propylon > > Mark > Jonathan Ellis wrote: > >> IMO, it would be nice if such informing took place on-list... >> >> -Jonathan >> >> -----Original Message----- >> From: James Linder [mailto:jh...@jl...] >> >> As for the current status...The main developer is expecting to get >> back to work on the 2.2 release near the end of August and hopes to >> get a 2.2 release out around the end of September or early >> October...At least that is the plan that I have recently been >> informed of. >> >> >> ------------------------------------------------------- >> SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media >> 100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33 >> Save 50% off Retail on Ink & Toner - Free Shipping and Free Gift. >> http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285 >> _______________________________________________ >> Jython-dev mailing list >> Jyt...@li... >> https://lists.sourceforge.net/lists/listinfo/jython-dev >> >> >> > > > > ------------------------------------------------------- > This SF.net email is sponsored by: IT Product Guide on ITManagersJournal > Use IT products in your business? Tell us what you think of them. Give us > Your Opinions, Get Free ThinkGeek Gift Certificates! Click to find out > more > http://productguide.itmanagersjournal.com/guidepromo.tmpl > _______________________________________________ > Jython-dev mailing list > Jyt...@li... > https://lists.sourceforge.net/lists/listinfo/jython-dev > > -- http://seanmcgrath.blogspot.com |
From: Jeremy H. <jh...@gm...> - 2004-10-12 12:42:40
|
On Mon, 11 Oct 2004 18:05:30 +0100, Sean McGrath <sea...@pr...> wrote: > What needs to be done to get development of Jython re-energised? Count > me in to help out but I fear we need to act fast lest this golden > opportunity pass us by. > > What need to be done to get Jython development re-energised? Are we > stuck for some reason? If so, how best to get unstuck? The best way to unstick it is for some developers to volunteer their time. Start submitting patches. If they don't get accepted, start complaining to the project admins and ask them to make you a developer. If several people take this tack, they can revive the project. Jeremy |
From: Mark P. <li...@ma...> - 2004-10-12 19:01:37
|
I think quite a few people have patches, just needs a currently active developer to volunteer to keep them all at one single place - or better still make a wiki page for patches. Also have you guys considered moving the project to www.codehaus.org - several scripting languages are there and the development environmnent/toolset is great - let me know if your intersted. Automated builds with damage control - http://builds.codehaus.org/public/dashboard Wiki - http://docs.codehaus.org Automatic documentation publishing of wiki contents - http://drools.org/ is from http://docs.codehaus.org/display/DROOLS Source control with CVS/Subversion CVS view with Fish Eye- http://cvs.drools.codehaus.org/viewrep/drools/ Issue Tracking with Jira - http://jira.codehaus.org Blogs with Movable Type- http://blogs.codehaus.org/ Web IRC gateway - http://irc.codehaus.org/ Regards Mark Jeremy Hylton wrote: >On Mon, 11 Oct 2004 18:05:30 +0100, Sean McGrath ><sea...@pr...> wrote: > > >>What needs to be done to get development of Jython re-energised? Count >>me in to help out but I fear we need to act fast lest this golden >>opportunity pass us by. >> >>What need to be done to get Jython development re-energised? Are we >>stuck for some reason? If so, how best to get unstuck? >> >> > >The best way to unstick it is for some developers to volunteer their >time. Start submitting patches. If they don't get accepted, start >complaining to the project admins and ask them to make you a >developer. If several people take this tack, they can revive the >project. > >Jeremy > > > |
From: Samuele P. <ped...@bl...> - 2004-10-12 20:02:28
|
The problem is that the codebase as inherited from Jim Hugunin has never been in a state such that apart from minor patches, passing tests is a sufficient condition to be acceptable for a patch. So patches not only need to be written but also need to be reviewed. In that process new core developer with broad responsabilities can prove themself and join. [It is a fact that when we had more time and people for that few people with significative and good patches showed up.] This and what patches are needed, what can be deferred etc is the right discussion at the wrong time. My next to-do is implementing subclassing for new-style classes and then consider what is the minimal amount of work that is really necessary before the new-style branch can be merged. After that going through the patch backlog is the next thing, and also have this discussion. IMHO, right now this discussion is not a good way to use my time, it just results in me getting unfocused. We are talking a 1-3 weeks timespan here. Thanks Mark Proctor wrote: > I think quite a few people have patches, just needs a currently active > developer to volunteer to keep them all at one single place - or better > still make a wiki page for patches. > > Also have you guys considered moving the project to www.codehaus.org - > several scripting languages are there and the development > environmnent/toolset is great - let me know if your intersted. > > Automated builds with damage control - > http://builds.codehaus.org/public/dashboard > Wiki - http://docs.codehaus.org > Automatic documentation publishing of wiki contents - http://drools.org/ > is from http://docs.codehaus.org/display/DROOLS > Source control with CVS/Subversion > CVS view with Fish Eye- http://cvs.drools.codehaus.org/viewrep/drools/ > Issue Tracking with Jira - http://jira.codehaus.org > Blogs with Movable Type- http://blogs.codehaus.org/ > Web IRC gateway - http://irc.codehaus.org/ > > Regards > > Mark > Jeremy Hylton wrote: > >>On Mon, 11 Oct 2004 18:05:30 +0100, Sean McGrath >><sea...@pr...> wrote: >> >> >>>What needs to be done to get development of Jython re-energised? Count >>>me in to help out but I fear we need to act fast lest this golden >>>opportunity pass us by. >>> >>>What need to be done to get Jython development re-energised? Are we >>>stuck for some reason? If so, how best to get unstuck? >>> >>> >> >>The best way to unstick it is for some developers to volunteer their >>time. Start submitting patches. If they don't get accepted, start >>complaining to the project admins and ask them to make you a >>developer. If several people take this tack, they can revive the >>project. >> >>Jeremy >> >> >> > |
From: Jeremy H. <jh...@gm...> - 2004-10-12 19:12:30
|
On Tue, 12 Oct 2004 21:01:19 +0200, Mark Proctor <li...@ma...> wrote: > I think quite a few people have patches, just needs a currently active > developer to volunteer to keep them all at one single place - or better > still make a wiki page for patches. I'm not sure I understand. Are there patches in the SF patch manager that need to be applied? Can non-developers post comments on patches? if so, then maybe someone could review the patches already there. If there are existing patches with external reviews, we ought to pest someone to apply them or give checkin priveleges to one of the patch submitters. > Also have you guys considered moving the project to www.codehaus.org - > several scripting languages are there and the development > environmnent/toolset is great - let me know if your intersted. Moving to a new development host doesn't seem like a wise use of limited developer time. Jeremy |