Hi Tomek,<div><br></div><div>I meant both. You should be able to run the test suite from within the build system, and you should be able to test a number of the GUI features and actors from within the GUI of the application. If all seems to run normally after both of those, then we would be inclined to upgrade the jars.</div>
<div><br></div><div>Matt<br><br><div class="gmail_quote">On Tue, Aug 10, 2010 at 2:00 AM, Tomasz Żok <span dir="ltr"><<a href="mailto:tzok@man.poznan.pl">tzok@man.poznan.pl</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Hi David and Matt,<br>
<br>
First of all, what do you exactly mean by "running the tests"? Are there some general Kepler test suites which should be passed? Or does it mean that in order to update libraries, I should check functionality of different Kepler actors, etc.?<br>
<br>
Second, I'll try to use separate class loader for my module. I've already found the docs about it.<br>
<br>
Thank you for answers,<br>
Tomek<br>
<br>
<br>
Matt Jones <<a href="mailto:jones@nceas.ucsb.edu" target="_blank">jones@nceas.ucsb.edu</a>>:<div><div></div><div class="h5"><br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I think it would be a good idea to upgrade these jar files to more recent<br>
releases, assuming that testing shows no adverse effects on the modules that<br>
depend on them. As these are in very low-level modules, there may be many<br>
different modules that depend on them, so we would need to test several<br>
different suites, and there may need to be some refactoring if any of these<br>
libraries has modified their APIs. Do you know if the APIs have changed, or<br>
were they only extended in backwards-compatible ways?<br>
<br>
Although two of these are used extensively (log4j and xerces) and so<br>
rightfully belong in common, the httpclient jar file might be more<br>
restricted in which modules use it. Its probably worth looking at the<br>
dependency tree and seeing which actors use that jar file, and consider<br>
splitting those actors out into their own module(s) to reduce these types of<br>
conflicts.<br>
<br>
So, if you want to propose particular upgrades for the jars in common and<br>
actors modules, please try replacing them and running the tests and we'll<br>
try to fit the changes into an upcoming release -- file an enhancement<br>
request with the results of your testing and we can take it from there. In<br>
any case, as David said, you may be able to override for your module by<br>
using your own classloader to get started over the shorter term.<br>
<br>
Matt<br>
<br>
PS This kind of development discussion is more appropriate for the<br>
kepler-dev list -- kepler-users is more about using the system, rather than<br>
developing extensions to it, although the line between the two is very grey.<br>
<br>
On Mon, Aug 9, 2010 at 1:01 PM, David Welker <<a href="mailto:david.v.welker@gmail.com" target="_blank">david.v.welker@gmail.com</a>>wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi Tomasz,<br>
<br>
This issue can be a little tricky.<br>
<br>
The first thing to note is that you can override other jars. If you put<br>
different jars in your module, they will be used by your module AND all of<br>
Kepler instead of the jars that are there. The problem with this arises in<br>
situations where your jars are not compatible with Kepler. Then things can<br>
break. But this is the first approach to try. Just put your jars in your own<br>
module and see if things work. It sounds like you have already done this.<br>
<br>
The second thing to note is that it is possible to use multiple class<br>
loaders. That is, you can use a separate class loader to load different jars<br>
for your module than for the rest of Kepler. Documentation about how to do<br>
this is included in the build system documentation. This might work. The<br>
thing is, I have had problems with this recently when someone was trying to<br>
use a different class loader for Log4j. So, this is not guaranteed to work<br>
and this feature has some bugs that cause it to not work at least some of<br>
the time. Also, of course your IDE is probably not going to know about the<br>
separate class loader, and your IDE might get confused.<br>
<br>
The third thing to note is that it might be possible to talk to the Kepler<br>
leadership team and get these jars upgraded in Kepler. This would be a very<br>
reasonable request to make if neither of the above solutions work for you.<br>
<br>
-David<br>
<br>
On Fri, Aug 6, 2010 at 9:11 AM, Tomasz Żok <<a href="mailto:tzok@man.poznan.pl" target="_blank">tzok@man.poznan.pl</a>> wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi,<br>
<br>
I am developing a new module which uses several external .jar libraries.<br>
These are mostly well known and widely used libraries like log4j, etc.<br>
However I found out that there is a conflict in library versions that<br>
disables my module totally. I pinpointed the issue to the minimal subset of<br>
conflicting jars:<br>
actors/lib/jar/commons-httpclient-3.0.1.jar<br>
common/lib/jar/log4j-1.2.8.jar<br>
common/lib/jar/sms/xercesImpl.jar<br>
<br>
My module uses:<br>
commons-httpclient-3.1.jar<br>
log4j-1.2.16.jar<br>
xercesImpl-2.7.1.jar<br>
<br>
My libraries are in the classpath when I run Kepler, but they are not<br>
loaded, because the three conflicting ones precede them. What should I do in<br>
such situation? Should I somehow formally ask Kepler devs to update theirs<br>
or should I do anything with my libraries?<br>
<br>
Best regards,<br>
Tomek<br>
<br>
<br>
--<br>
Tomasz Zok<br>
Poznan Supercomputing and Networking Center<br>
ul. Noskowskiego 10, 61-704 Poznan, POLAND<br>
<a href="http://www.man.poznan.pl" target="_blank">http://www.man.poznan.pl</a><br>
_______________________________________________<br>
Kepler-users mailing list<br>
<a href="mailto:Kepler-users@kepler-project.org" target="_blank">Kepler-users@kepler-project.org</a><br>
<a href="http://mercury.nceas.ucsb.edu/kepler/mailman/listinfo/kepler-users" target="_blank">http://mercury.nceas.ucsb.edu/kepler/mailman/listinfo/kepler-users</a><br>
<br>
</blockquote>
<br>
<br>
_______________________________________________<br>
Kepler-users mailing list<br>
<a href="mailto:Kepler-users@kepler-project.org" target="_blank">Kepler-users@kepler-project.org</a><br>
<a href="http://mercury.nceas.ucsb.edu/kepler/mailman/listinfo/kepler-users" target="_blank">http://mercury.nceas.ucsb.edu/kepler/mailman/listinfo/kepler-users</a><br>
<br>
<br>
</blockquote></blockquote>
<br>
<br>
-- <br>
Tomasz Zok<br>
Poznan Supercomputing and Networking Center<br>
ul. Noskowskiego 10, 61-704 Poznan, POLAND<br>
<a href="http://www.man.poznan.pl" target="_blank">http://www.man.poznan.pl</a><br>
</div></div></blockquote></div><br></div>