Yea, we have a requirement on 1.7. we need to get it up to 8, but
considered that a different issue.

Maven throws warning, sbt breaks down entirely (when importing)- hence why
we were using a script to replace 2.11 w 2.12

On Sun, Apr 19, 2020, 10:33 AM Christofer Dutz <christofer.d...@c-ware.de>
wrote:

> Well I have been compiling with various jdks from 8 to 14. However I
> noticed that if I select a jdk and start the build that the Scala parts
> Seefahrt to the version in my systems path. Which then results in all sorts
> of major version problems.
>
> For the Scalatest plugin I managed to have it use the maven java.home...
> The Scala compiler is being a little trickyer.
>
> Will continue this evening. Keep your fingers crossed.
>
> Also does maven totally not like variables in artifactids.
>
> Chris
> ________________________________
> Von: Trevor Grant <trevor.d.gr...@gmail.com>
> Gesendet: Sonntag, 19. April 2020 15:41
> An: Mahout Dev List <dev@mahout.apache.org>
> Betreff: Re: Hi ... need some help?
>
> Hey Chris,
>
> First of all- thank you so much for your work so far.
>
> The build 100% currently works, the only issue is with releasing binaries.
> Are you compiling w 1.7? Not really sure why artifact IDs are changing?
> That's very strange.
>
> To answer your question regarding the community block- no, it is not as if
> there is a company that pays us to work on Mahout and the rest is
> community. What it means is that while we appreciate those code
> contributions, no one still actively involved is maintaining them and we
> advise people to use at their own risk. The refactor to a `community`
> folder was meant to reflect the reality of the situation.
>
> The only test issues I was aware of were with Javadocs when trying to do a
> release with Java 1.8+ those would fail due to formatting.
>
> I feel like you're hitting some unique issues, and maybe we could help you
> out / there may exist simple solutions.
>
> Thank you again for your help!
>
> tg
>
>
>
>
> On Sun, Apr 19, 2020 at 2:17 AM Christofer Dutz <christofer.d...@c-ware.de
> >
> wrote:
>
> > Hi folks,
> >
> > So yesterday I invested several hours in cleaning up your build. I got
> > quite far, currently trying to get the tests to pass. For some
> > Scala-Java-major-version problems, but working on fixing them.
> >
> > However sind things will be different. I hope that's OK. Especially with
> > the artifact ids.
> >
> > Just as a question: does the build currently work at all? Especially in
> > the community block I had to fix quite a few API changes where the code
> in
> > the blocks were for older versions of libraries.
> >
> > I hope I get some more tests to pass today.
> >
> > Chris
> > ________________________________
> > Von: Andrew Musselman <a...@apache.org>
> > Gesendet: Donnerstag, 16. April 2020 20:35
> > An: Mahout Dev List <dev@mahout.apache.org>
> > Betreff: Re: Hi ... need some help?
> >
> > Looking forward to working on this with you; thanks again!
> >
> > On Thu, Apr 16, 2020 at 11:09 AM Christofer Dutz <
> > christofer.d...@c-ware.de>
> > wrote:
> >
> > > Hi Andrew,
> > >
> > > guess I'll start with the fork and contact you folks on slack.
> > >
> > > Chris
> > >
> > >
> > >
> > > Am 16.04.20, 19:43 schrieb "Andrew Musselman" <a...@apache.org>:
> > >
> > >     Chris, thank you for your help..
> > >
> > >     Yeah if you fork what's in master you can see what state it's in;
> we
> > > are in
> > >     the #mahout channel in tge-asf slack and this is also a fine way to
> > > keep
> > >     track of discussion.
> > >
> > >     We could file a JIRA ticket as well, however you prefer to work.
> > >
> > >     Best
> > >     Andrew
> > >
> > >     On Thu, Apr 16, 2020 at 06:59 Christofer Dutz <
> > > christofer.d...@c-ware.de>
> > >     wrote:
> > >
> > >     > Hi Trevor,
> > >     >
> > >     > ok ... first of all ... the Mahout PMC is defining a "community
> > >     > maintained" library which is not maintained by the mahout PMC?!?!
> > >     > I thought at Apache everything is about Community over code. So
> is
> > a
> > >     > company driving the non-community stuff?
> > >     >
> > >     > But back to your build issues:
> > >     > I had a look and I too encountered these comments and remarks and
> > >     > sometimes patterns I recognized and could imagine why they were
> > > created.
> > >     > Yes quite a bit of the build could be cleaned up and simplified a
> > > lot.
> > >     >
> > >     > So how about I create a fork and try to do a cleanup of the
> build.
> > >     > Usually I also leave comments about what I do as I hope I'll not
> be
> > > the
> > >     > only one maintaining a build and documenting things helps people
> > > feel more
> > >     > confident.
> > >     >
> > >     > However in some cases I will have questions ... so would someone
> be
> > >     > available on Slack for quick questions?
> > >     >
> > >     > Usually switching to another build system does solve some
> problems
> > > ...
> > >     > mostly the reason to switch is that it solved the main problem
> that
> > > you are
> > >     > having with the old.
> > >     > However you usually notice too late that you get yourself a lot
> of
> > > new
> > >     > problems. I remember doing some contract work for an insurance
> > > company and
> > >     > they were totally down Maven-road but then had to build something
> > > with SBT
> > >     > ... in the end I compiled the thing on my laptop, copied it to a
> > USB
> > > stick
> > >     > and told the people what was on the stick and that I'll be
> having a
> > > coffee
> > >     > and will be back in 30 minutes. When I came back the sick wasn't
> at
> > > the
> > >     > same place and the build problem was "solved" ;-)
> > >     >
> > >     > So I think it's quite good to stick to maven ... that is very
> > > mature, you
> > >     > can do almost everything you want with it and it integrates
> > > perfectly into
> > >     > the Apache infrastructure.
> > >     >
> > >     > But that's just my opinion.
> > >     >
> > >     > So if you want me to help, I'll be happy to be of assistance.
> > >     >
> > >     >
> > >     > Chris
> > >     >
> > >     >
> > >     >
> > >     > Am 16.04.20, 15:28 schrieb "Trevor Grant" <
> > trevor.d.gr...@gmail.com
> > > >:
> > >     >
> > >     >     Hey Christopher,
> > >     >
> > >     >     I would agree with what Stevo outlined but add some more
> > context
> > > and a
> > >     >     couple related JIRA issues.
> > >     >
> > >     >     For 0.14.0 We did a big refactor and finally moved the
> > MapReduce
> > > based
> > >     >     Mahout all into what we called "community/" that is community
> > >     > maintained,
> > >     >     which is to say, we're not maintaining it anymore (sunset
> > began I
> > >     > think in
> > >     >     2015).
> > >     >
> > >     >     But all of our POMs were so huge and fat because they'd been
> > > layered up
> > >     >     over the years by people coming and going and dropping in
> > code. I
> > >     > wouldn't
> > >     >     call these drive- bys, its just been over 10 years and people
> > > come and
> > >     > go.
> > >     >     Such is the life of Apache Projects. So we had a situation
> > where
> > > a lot
> > >     > of
> > >     >     the old Map Reduce stuff and the POMs were considered
> > > "old-magic" no
> > >     > one
> > >     >     really knew how it was all tied together, but we didn't want
> to
> > > mess
> > >     > with
> > >     >     it for fear of breaking something in the "new" Mahout (aka
> > > Samsar)
> > >     > which is
> > >     >     the Scala/Spark based library that it is now* (to others in
> the
> > >     > community:
> > >     >     I know it runs on other engines, but for simplicity, I'm just
> > > calling
> > >     > it
> > >     >     "runs-on-spark").
> > >     >
> > >     >     For 0.14.0 We decided to trim out as much of that which was
> > > possible.
> > >     > We
> > >     >     did some major liposuction on POMs, re organized things, etc.
> > > This was
> > >     > done
> > >     >     by commenting out a section, then seeing if it would still
> > > build. So
> > >     > the
> > >     >     current release
> > >     >     _does_ build. And aside for some CLI driver issues which are
> > > outlined
> > >     > in
> > >     >     [1], the project runs fairly smooth. (An SBT would probably
> > > solve [1],
> > >     > I
> > >     >     believe Pat Ferrel has made his own SBT script to compile
> > > Mahout, which
> > >     >     solved that problem for them).
> > >     >
> > >     >     The issue we ran into with the releases (and the reason I
> think
> > > you're
> > >     >     here), is that we also somewhere along the line commented out
> > > something
> > >     >     that was important to the release process. Hence why 0.14.0
> > > released
> > >     > source
> > >     >     only.
> > >     >
> > >     >     Since 2008, there has been a lot of great work on generating
> > > plugins
> > >     > for
> > >     >     doing Apache releases. Instead of the awkward hacks that made
> > up
> > > the
> > >     > old
> > >     >     poms (literally comments that said, "this is a hack, there's
> > > supposedly
> > >     >     something better coming from ..." dated like 2012), we would
> > > like to
> > >     > do it
> > >     >     the "right way" and incorporate the appropriate plugins.
> > >     >
> > >     >     Refactoring to SBT was _one_ proposed solution. We're also OK
> > >     > continuing to
> > >     >     use Maven, and I agree with what you said about the cross
> > > compiling. We
> > >     >     actually have a script that just changes the scala version.
> We
> > > tried
> > >     > using
> > >     >     the classifiers but there were issues in SBT, but the way
> > you're
> > >     > proposing
> > >     >     sounds a lot more pro than the route we were trying for.
> > >     >
> > >     >     That said- we'd be OK just releasing one scala/spark version
> at
> > > a time.
> > >     >     But getting the convenience binaries to release/publish would
> > be
> > > a
> > >     > major
> > >     >     first step.
> > >     >
> > >     >     Also, we really appreciate the help,
> > >     >
> > >     >     tg
> > >     >
> > >     >
> > >     >     [1]
> > >     >
> > >     >
> > >
> >
> https://issues.apache.org/jira/projects/MAHOUT/issues/MAHOUT-2093?filter=allopenissues
> > >     >
> > >     >
> > >     >
> > >     >     On Thu, Apr 16, 2020 at 4:50 AM Christofer Dutz <
> > >     > christofer.d...@c-ware.de>
> > >     >     wrote:
> > >     >
> > >     >     > Hi Stevo,
> > >     >     >
> > >     >     > so let me summarize what I understood:
> > >     >     >
> > >     >     > - There are some modules in mahout that are built with
> Scala,
> > > some
> > >     > with
> > >     >     > java and some with both (At least that's what I see when
> > > checking
> > >     > out the
> > >     >     > project)
> > >     >     > - The current build uses Scala 2.11 to build the Scala
> code.
> > >     >     > - The resulting libraries are only compatible with Scala
> 2.11
> > >     >     >
> > >     >     > Now you want to also publish versions compatible with Scala
> > > 2.12?
> > >     >     >
> > >     >     > If that's the case I think Maven could easily add multiple
> > > executions
> > >     >     > where each compile compiles to different output
> directories:
> > >     >     > - Java --> target/classes
> > >     >     > - Scala 2.11 --> target/classes-2.11
> > >     >     > - Scala 2.12 --> target/classes-2.12
> > >     >     >
> > >     >     > Then the packaging would also need a second execution ...
> > each
> > > of the
> > >     >     > executions bundling the classes and the corresponding scala
> > > output.
> > >     >     > Ideally I would probably use maven classifiers to
> distinguish
> > > the
> > >     >     > artifacts.
> > >     >     >
> > >     >     > <dependency>
> > >     >     >     <groupId>org.apache.mahout</groupId>
> > >     >     >     <artifactId>mahout-spark</artifactId>
> > >     >     >     <version>14.1-SNAPSHOT</version>
> > >     >     >     <classifier>2.11</classifier>
> > >     >     > </dependency>
> > >     >     >
> > >     >     > Then it should all work in a normal maven build. In the
> > >     > distributions you
> > >     >     > could also filter the versions according to their
> > classifiers.
> > >     >     >
> > >     >     > So if this is the case, I could help you with this.
> > >     >     >
> > >     >     > Chris
> > >     >     >
> > >     >     >
> > >     >     > Am 16.04.20, 09:39 schrieb "Stevo Slavić" <
> ssla...@gmail.com
> > >:
> > >     >     >
> > >     >     >     Disclaimer: I'm not active Mahout maintainer for quite
> a
> > > while,
> > >     > have
> > >     >     > some
> > >     >     >     historical perspective, take it with a grain of salt,
> > > could be
> > >     > I'm
> > >     >     > missing
> > >     >     >     the whole point you were approached for by a wide
> margin
> > of
> > >     > error.
> > >     >     >
> > >     >     >     At a point Mahout, some of its modules, have turned
> into
> > a
> > > scala
> > >     >     >     library, and there was need to cross publish those
> > modules,
> > >     > across
> > >     >     >     different scala versions. Back than Maven scala plugin
> > > didn't
> > >     > support
> > >     >     > cross
> > >     >     >     publishing, it doesn't fit well with Maven's build
> > > lifecycle
> > >     > concept
> > >     >     >     (multiple compile phases - one for each scala version,
> > and
> > > what
> > >     > not
> > >     >     > would
> > >     >     >     be needed). Switching to sbt could have solved the
> > problem.
> > >     > Switch was
> > >     >     >     deemed to be too big task, even though ages have been
> > > spent on
> > >     > trying
> > >     >     > to
> > >     >     >     apply Maven (profiles) + bash scripts and what not to
> > > solve the
> > >     >     > problem.
> > >     >     >     Trying to apply same approach over and over again and
> > > expecting
> > >     >     > different
> > >     >     >     results is not smart, no expert can help there. Mahout
> > >     > maintainers and
> > >     >     >     contributors, should consider alternative approach, one
> > of
> > > them
> > >     > being
> > >     >     >     switching to sbt - it's scala native, supports scala
> > cross
> > >     > publishing,
> > >     >     >     supports publishing Maven compatible release metadata
> and
> > >     > binaries.
> > >     >     >
> > >     >     >     Kind regards,
> > >     >     >     Stevo Slavic.
> > >     >     >
> > >     >     >     On Thu, Apr 16, 2020 at 9:15 AM Christofer Dutz <
> > >     >     > christofer.d...@c-ware.de>
> > >     >     >     wrote:
> > >     >     >
> > >     >     >     > Hi folks,
> > >     >     >     >
> > >     >     >     > my name is Chris and I’m involved in quite a lot of
> > > Apache
> > >     > projects.
> > >     >     >     > Justin approached me this morning, asking me if I
> could
> > >     > perhaps help
> > >     >     > you.
> > >     >     >     > He told me you were having trouble with doing Maven
> > > releases.
> > >     >     >     >
> > >     >     >     > As Maven releases are my specialty, could you please
> > > summarize
> > >     > the
> > >     >     > issues
> > >     >     >     > you are having?
> > >     >     >     >
> > >     >     >     > Chris
> > >     >     >     >
> > >     >     >
> > >     >     >
> > >     >
> > >     >
> > >
> > >
> >
>

Reply via email to