Hi, First thanks for the feedback, it is rather interesting.
> So, to start this of with a meme: One does not simply - compile Apache James from source. :-) > Call me stupid I would never. We all have different backgrounds, thus we don't consider the same things easy. About the 3 fails that you encountered: - apache-james-mailbox-hbase : I already saw our Continuous Integration system fail there. As we don't use this part of the project, we schedule a new build. As it is a very rare event, it doesn't matter much. The question would then be: do you always observe it? - Concerning windows: As far as I am aware of it, all of the recent active James contributors are using Linux. I personally use ArchLinux, some others prefer Debian and Ubuntu. We don't have a license for Windows, thus we can not guaranty we do not introduce bugs regarding it. As it is a free project, anyone can propose patches, and for instance patches for making the test suite run well on windows. Another remark on cross-system: as we are aware of the issues, we provides docker container, continuously delivered, fully tested on each merge. That way one can run James in a reliable environment, whatever the system it is running on. For your information: - https://docs.docker.com/ - https://github.com/apache/james-project/tree/master/dockerfiles That being said, I'm sorry to tell you your mail is hardly readable, and I can not extract interesting information out of it. You did a great work testing different environments, and I should thank you for this. Wouldn't you mind sending us, for each bug you encountered: - The Junit test that failed - The explanation JUnit is giving - The environment (Maven version, Java version, OS, default encoding) That would allow us to work in a rather more productive way. Cheers, -- Tellier Benoit Software engineer dedicated to OpenPaaS at Linagora PMC of the Apache JAMES project VIE in Vietnam https://twitter.com/AwesomePaaS https://medium.com/linagora-engineering Le 05/06/2017 à 16:00, cryptearth a écrit : > So, to start this of with a meme: One does not simply - compile Apache > James from source. > Idk if and what I'm doin wrong here, but either its my hardware screwing > up everything I've learned about Java (would explain random crashes in > GTA5 tho) or I'm just to stupid to correctly setup the needed build > environment to get a successfull build. > But let me start from the beginning why I'm back after abandoning this > mail-list (still not used to this kind of public communication): > > So as I was successfull to compile one of the latest builds before this > project moved to Docker and have it running on my openSuSE-tumbleweed > server since (and as smart as I am: deleted the built package - of > course!) - I just looked up the main project page and noticed: oh, it's > out of beta - RC1 available for download. But as the page shows "Docker" > (sidenote: yea - I know it makes sense to "containerize" such code - to > run a Java code as root is not the smartest idea one can have) I said to > mysefl: "screw it - compile from source" - and off we go from "wonder if > it's still crap as last time I tried" to "what the F*?". > > So let me show the results first and then let me explain why I think my > hardware is broken: > > vm - opensuse tumbleweed - failed: apache-james-mailbox-hbase > vm - debian 8.8.0 - failed: james-server-mailets > host - win7 sp1 ulti x64 - failed: apache-james-mailbox-store > > I don't bother you with posting the logs - as it seems some wired > random-ish but surprisingly re-produceable stuff going on here: > As building james isn't more than compiling Java source into bytecode - > and as Java is supposed to be platform-independent - it should fail on > the exact same point on each different system - but it doesn't. Unlike > earlier tries where it "crashed" random on the same system - at least no > it's "crashing" on the same spot every time - but why and how? The only > difference are Linux vs Windows and openJDK8u131 vs Oracle 8u121 - and > as far as I know Java as a hobbiest dev this shouldn't happen. At least > the error should be the same accross differnt systems - no matter if VM > or real hardware. > > Ok, the error on windows seems to be some wired random-ish encoding > issue, see the few lines of log as follows: > > Failed tests: > DefaultTextExtractorTest.textTest:44 expected:<...e awesome text text.[ > ] > "> but was:<...e awesome text text.[ > ] > "> > > I can only imagine there is something goin on with different > line-endings as the build expecting only linux-style \n while my windows > using \r\n - confusing the equality check to fail (some more like this > if you try to bootstrap ant from source on windows - it fails cause > windows doesn't support posixfileattributes - wich could checked and > handled in a very easy way - but this should belong to the ant-maillist). > > The other two on the linux-based systems are very strange: > > On the openSuSE (ok, to be honest - it's the distro I "grew up" with - > and strangely the only major distro that somehow no body seems to like > and therefore isn't really supported at all - just: WHY? cause its > german?) it fails with java.lang.ExceptionInInitializerError for > org.apache.james.mailbox.hbase.user.HBaseSubscriptionMapperTest.<clinit> > followed by java.lang.NoClassDefFoundError: Could not initialize class > org.apache.james.mailbox.hbase.user.HBaseSubscriptionMapperTest > > On the debian (wich went way better and further than the other two) it > fails with this crap: > > Failed tests: > RemoteDeliveryTest.remoteDeliveryShouldSplitMailsByServerWhenNoGateway:123 > Expecting: > <[FakeMail{msg=null, recipients=[ot...@james.apache.org, > a...@james.apache.org], name=mail_name-to-james.apache.org, sender=null, > state=null, errorMessage=null, lastUpdated=null, attributes={}, size=0, > remoteAddr=127.0.0.1}, FakeMail{msg=null, > recipients=[a...@james2.apache.org], name=mail_name-to-james2.apache.org, > sender=null, state=null, errorMessage=null, lastUpdated=null, > attributes={}, size=0, remoteAddr=127.0.0.1}]> > to contain only: > <[FakeMail{msg=null, recipients=[a...@james.apache.org, > ot...@james.apache.org], name=mail_name-to-james.apache.org, > sender=null, state=null, errorMessage=null, lastUpdated=null, > attributes={}, size=0, remoteAddr=127.0.0.1}, FakeMail{msg=null, > recipients=[a...@james2.apache.org], name=mail_name-to-james2.apache.org, > sender=null, state=null, errorMessage=null, lastUpdated=null, > attributes={}, size=0, remoteAddr=127.0.0.1}]> > elements not found: > <[FakeMail{msg=null, recipients=[a...@james.apache.org, > ot...@james.apache.org], name=mail_name-to-james.apache.org, > sender=null, state=null, errorMessage=null, lastUpdated=null, > attributes={}, size=0, remoteAddr=127.0.0.1}]> > and elements not expected: > <[FakeMail{msg=null, recipients=[ot...@james.apache.org, > a...@james.apache.org], name=mail_name-to-james.apache.org, sender=null, > state=null, errorMessage=null, lastUpdated=null, attributes={}, size=0, > remoteAddr=127.0.0.1}]> > > Just another encoding-issue based on non-standard non-EN/US setup (all > systems share locale de-de)? This seems to be another issue based on > wrong String comparison. > > So - to complete this kinda sarcastic-ish mail with a few final words: > > 1.) Does anyone of you have any clue why the same source behave so > differently on different systems? This is somehow against anything else > I know about Javas famous "write once - run everywhere". > 2.) Could anybody please be so kind to just get a me quick overview > about how to correctly setup a working build environment to get the > current source built successfully? > > Call me stupid - or just naiv cause I don'T know anything about modern > development on projects this size - but as a Windows-98 kid from times > where Google didn't existed yet and just got few low-ish games by burned > CDs from school friends (online DRM wasn't a thing back then) who is > just used to "double-click on setup/install and hit next until it says > fin" - there is no clue why this to-be-simple-magic-box called "PC" > under my desk behaves this way. It's just a big calculator - and I > expect it to output 2 if I enter 1+1. Maybe someone can explain ... > > > I don'T really expect any serious response/reply - nor to have any > changes in the source - but as Benoit Tellier (btw: big shout outs to > him) once told me: each commit gets auto-compiled and only passed ones > even released to public - so it has to be some sort of error on my site. > --------------------------------------------------------------------- To unsubscribe, e-mail: server-user-unsubscr...@james.apache.org For additional commands, e-mail: server-user-h...@james.apache.org