I don't think there should be a problem with this.  Unless there are some
technical issues with your restructuring proposal, we all should be able to
come to a consensus and move ahead.

I believe the best time to do this would be - right after the FlexJS 0.5
release.

Thanks,
Om

On Fri, Nov 6, 2015 at 2:02 AM, Christofer Dutz <christofer.d...@c-ware.de>
wrote:

> Well in order to seriously do this refactoring, you would also have to do
> the refactoring of the directory structure. This was ne main reason for me
> never having continued down that path as I knew I would have to hand-merge
> stuff for quite some time. So in order to do something like this, we would
> actually have to stop working on FlexJS, rearrange the directory structure
> and continue from there (Eventually only a few Ant scripts would need
> adjusting for the time of the transition) ...
>
> Don't know if there is the will do to something like this ... at least it
> was my impression that it's not.
>
> Chris
>
> ________________________________________
> Von: omup...@gmail.com <omup...@gmail.com> im Auftrag von OmPrakash
> Muppirala <bigosma...@gmail.com>
> Gesendet: Freitag, 6. November 2015 10:50
> An: dev@flex.apache.org
> Betreff: Re: WG: Loosing my drive ...
>
> Yes, the AntRun Maven plugin is a good stop gap measure.  Is this an option
> for FlexJS?  As I understand the way FlexJS is built right now, there are
> several dependencies to download and build before compiling the FlexJS
> SDK.  Can we mavenize the rest and use AntRun for the build FlexJS part?
>
> If you can do the rest, I can help out with plugging in the Antrun plugin
> into the pom.xml.  What do you think?
>
> Anyone has a better suggestion for a path forward?
>
> Thanks,
> Om
>
> On Fri, Nov 6, 2015 at 1:40 AM, Christofer Dutz <christofer.d...@c-ware.de
> >
> wrote:
>
> > Well here goes:
> >
> > Initially we have to separate between the compiler and the framework.
> > Converting the compiler to maven is easier as it's simply a Java program.
> > Converting the framework build to maven is eventually a little
> problematic.
> > Currently there is only one maven plugin for building flex applications
> > with maven (Flexmojos and unfortunately it is impossible for me to donate
> > this as I would have to contact anyone who contributed and have them sign
> > an ICLA).
> >
> > In order to dress this problem I had started a new maven plugin as part
> of
> > the flex-utils project. Here I have started setting up the structure of a
> > brand-new plugin that's pure ASF. The cool thing with this is that I
> could
> > drop a lot of stuff needed for supporting legacy Adobe and Apache Flex
> > versions. I didn't continue down that path as I wanted to make Flexmojos
> > feature complete prior to starting from scratch as I know this will take
> > quite a while. Still I am missing Mobile Packaging for iOS and auto
> > downloading of Flashplayer and Air runtime, but I am hoping on finishing
> > this soon. As soon as Flexmojos 7.1.0 is released, I want to work on the
> > Apache Flex Maven plugin ... If I don't loose interest in the project
> till
> > then.
> >
> > A "solution" would be to use the Maven-Antrun-Plugin to use the Flex Ant
> > Target inside a Maven build till the maven plugin is useable. The good
> > thing would be that we could concentrate on the features needed for the
> > build of Flex itself and hopefully transition quite fast. But we wouldn't
> > have to wait for that to happen as the Antrun option should work fine.
> >
> > But coming back to your questions:
> >
> > Yes in both cases ... run "mvn install" in the root the SDK would be
> built
> > and unit-tested. If you run "mvn install" in the examples, the examples
> > would be built, but the output directory wouldn't be "bin" but "target"
> ;-)
> >
> > Chris
> >
> > ________________________________________
> > Von: omup...@gmail.com <omup...@gmail.com> im Auftrag von OmPrakash
> > Muppirala <bigosma...@gmail.com>
> > Gesendet: Freitag, 6. November 2015 10:26
> > An: dev@flex.apache.org
> > Betreff: Re: WG: Loosing my drive ...
> >
> > Chris,
> >
> > I read your email twice.  I don't see what I was expecting.  Here are a
> > couple of simple questions:
> >
> > 1.  As a FlexJS SDK Developer, I want to build the FlexJS SDK.  I want to
> > go to the flex-asjs folder and run mvn install.  I want the entire SDK
> > built and ready to release.
> >
> > 2.  As a FlexJS SDK User, I want to go inside the
> > flex-asjs/examples/flexjs/ChartExample folder and run mvn install.  I
> > expect to see the built artifacts in the bin/js-debug, bin/js-release and
> > bin-debug folders
> >
> > What is missing for these two (seemingly related, but different) build
> > processes to work correctly.  I think we should must concentrate on these
> > two goals.
> >
> > Thanks,
> > Om
> >
> > On Fri, Nov 6, 2015 at 1:07 AM, Christofer Dutz <
> christofer.d...@c-ware.de
> > >
> > wrote:
> >
> > > Ok ... let me respond to some of this:
> > >
> > > Alex wrote:
> > > > IMO, the good and bad of Apache being a “do-ocracy” is that, while
> you
> > > can
> > > > work on pretty much whatever interests you, at least in this project,
> > >
> > > I definitely don't agree ... it's far from a "do-oracy" it's a
> > > "discuss-oracy" ... I bet the amount of bytes in the mailinglist
> > outweighs
> > > the bytes going to the repo ;-)
> > >
> > > Alex wrote:
> > > > >Adding my statement from the initial thread, that from now on I will
> > > stop
> > > > >contributing to things not built by a sensible build (doesn't have
> to
> > be
> > > > >Maven even if I strongly suggest it).
> > > >
> > > > I’m going to take that as a softening of your position.  I don’t
> think
> > > > anybody would argue that builds should not be “sensible”, but what
> does
> > > > that really mean?  And what practical steps can we do that doesn’t
> > grind
> > > > feature development and bug fixing to a halt?
> > >
> > > Well ANT tends to become a monster as you can do anything with it ...
> > > therfore everyone does everything with it, but each one differently.
> > Gradle
> > > goes down the same path ... even if it automates a lot of stuff that
> has
> > > been identified as "have to do that over and over again". Maven on the
> > > contrast has the beauty of not only having a pre-defined build process,
> > but
> > > also a pre-defined project structure. The first newbe here being able
> to
> > > checkout the Flex SDK and immediately explain to me the internal
> > structure
> > > of the project will get a free Beer next time we meet. With maven it
> > > doesn't matter what project you get, you sort of immediately grasp the
> > > structure as it's a standard.
> > >
> > > What are the problems I see?
> > > - The structure of the project istself (I still don't know exactly what
> > > parts of the SDK do what and I do admit that I have dug in that code
> much
> > > more than most people here)
> > > - The structure of the build itself (There are uncountable targets,
> > > sometimes with identical names in multiple build scripts ... the only
> way
> > > to understand the order in which they are called is to build and look
> at
> > > the log and hope you get it right. I wanted to add some things multiple
> > > times and was simply stuck with finding out how things are done and
> how I
> > > have to get my stuff in there without breaking anything else)
> > > - The requirements (The build doesn't tell you what it requires, what
> > it's
> > > missing and what is expected to be there. If something blows up, you
> have
> > > to get your hands dirty and investigate in Ant what's going wrong)
> > > - Depending on 100 different download sources (Currently it feels as if
> > > you start from scratch in more than 50% of the times the build doesn't
> > work
> > > as one of the sites stuff is downloaded from are unavailable. I have
> > never
> > > seen Maven-Central be offline and if this should ever happen Google
> > keeps a
> > > complete mirror online, so in the worst case all we would have to do is
> > > switch the root repo to the Google one)
> > > - Finding out thy things don't work (We check the checksums of jars
> when
> > > we download them ... but as soon as they are there, we never bother.
> > > Several times I haven't been working on a part of Flex for some time,
> > > coming back later and having problems ... after quite some time of
> > > investigation I found out that the version of a jar had changed, but as
> > we
> > > simply store it as "mylib.jar" the build didn't detect this and assumed
> > all
> > > was good)
> > > - Simply to build all of our parts you have to keep a different set of
> > > targets in mind to clean, clean-all, compile, test, whatsoever ...
> > > sometimes a target is available in multiple parts, but do different
> > things
> > > ... think about the clean goals ... clean, wipe, clean-all,
> > > clean-dependencies, ... can't remember all of them.
> > > - Building Flex, FlexJS and Falcon feels like shooting at a moving
> target
> > > ... whenever I come back I have to adjust something ... some new
> > > environment variables, different libs, different targets/goals to
> execute
> > > in a different order)
> > > - We use patched versions of ancient libs (I think using patched libs
> is
> > > the worst thing you can do. If you need something, contribute. I have
> > > reverse engineered the xalan patch for example and newer versions of
> > xalan
> > > have addressed similar issues, so it could be that the latest version
> > > solves the problems our patch hacked in there)
> > >
> > > What's missing on the maven side is a way to mavenize the FlashPlayer
> and
> > > the Air runtime, but I'm working on this ... as soon as one of the 3rd
> > > party libs for unpacking archives is able to unpack Mac DMG archives, I
> > > will be able to technically finish this. The result will be not having
> a
> > > single prerequisite to building flex applications with maven ... all
> you
> > > need is Java and Maven and off you go. And it takes care of problems
> you
> > > have due to building for a different Flash/Air version than you have
> > linked
> > > in your environment variables. BUT I am expecting to be engaged in
> > another
> > > major legal issue discussion with Adobe guys ... really not looking
> > forward
> > > to that.
> > >
> > > The general problem I see at the moment is that you want to push out
> > stuff
> > > so people start testing it and you can fix stuff. I want to make fixing
> > > stuff easy so more people can actually do it. Most of us don't work on
> > Flex
> > > full-time. If I find a problem and I want to fix it and I have an
> > afternoon
> > > of time, I don't want to invest this afternoon in order to setup things
> > so
> > > I could start fixing things, but then have no time left to actually do
> > so.
> > > And as soon as I find time again, things have changed in a way that I
> > need
> > > to invest most of my time again to get things running.
> > >
> > > The was things currently are the project will divide into two
> fractions:
> > > a) The ones that have the luxury of having someone pay for them to work
> > on
> > > Flex full time
> > > b) the others that simply sit there and wait for things to happen.
> > >
> > > That's definitely the way Adobe used to work, but it's not the way the
> > ASF
> > > works. "Community over Code"
> > >
> > > So converting Falcon to become a real Maven project as a first step
> isn't
> > > that hard. There were missing parts, but I contributed to those
> projects
> > > and the missing parts should now be available. For example JBurg is now
> > in
> > > Maven-Central ... I even created a Maven Plugin for using JBurg in a
> > maven
> > > build. Antlr and the other stuff has always been available.
> > >
> > > And again 10 times more text than code I have written for Flex for
> quite
> > > some time ...
> > >
> > > Chris
> > >
> > > ________________________________________
> > > Von: omup...@gmail.com <omup...@gmail.com> im Auftrag von OmPrakash
> > > Muppirala <bigosma...@gmail.com>
> > > Gesendet: Freitag, 6. November 2015 08:56
> > > An: dev@flex.apache.org
> > > Betreff: Re: WG: Loosing my drive ...
> > >
> > > Alex,
> > >
> > > I believe there is a disconnect between folks who are used to maven and
> > > those who are not.  The beauty of maven is that the user does not need
> to
> > > have anything pre-installed on their computer.  Write some code and
> > simply
> > > run "mvn install".  This simple command takes care of downloading the
> > SDK,
> > > dependencies, compiling the code and generating the desired artifacts.
> > >
> > > Compare that with Ant: You download the SDK, dependencies, create
> > > environment variables, build properties etc. before you can do
> anything.
> > > As evidenced with Flex SDK and FlexJS, setting all this up and getting
> > > everything built is a big task in itself.  Any contribution can be done
> > > ONLY after doing all this work, which takes several tries to say the
> > least.
> > >
> > > I think what Chris is saying is quite straightforward: lets make it
> easy
> > to
> > > build the FlexJS SDK.  Maven is one way to do it.
> > >
> > > Chris,  from your side, I hope you can continue to lead this
> 'mavenizing'
> > > effort.  Most of the time, I don't follow what you doing although I
> > > understand that they are important steps in achieving this goal.  If
> you
> > > can come up with a plan of action and describe what you want to do, I
> am
> > > sure that the community will come together to help out.
> > >
> > > Mavenizing does not mean we give up on Ant.  Alex (and others who are
> > happy
> > > with Ant) can continue to build with Ant.  I don't expect Alex to drop
> > what
> > > he is working on and help with the Mavenizing effort, although any help
> > > from him would be appreciated.
> > >
> > > Let's start with mavenizing FlexJS.
> > >
> > > Thanks,
> > > Om
> > >
> > > On Thu, Nov 5, 2015 at 11:20 PM, Alex Harui <aha...@adobe.com> wrote:
> > >
> > > >
> > > >
> > > > On 11/5/15, 10:35 PM, "Christofer Dutz" <christofer.d...@c-ware.de>
> > > wrote:
> > > >
> > > > >Moving this thread to public dev list ...
> > > > >
> > > > >Adding my statement from the initial thread, that from now on I will
> > > stop
> > > > >contributing to things not built by a sensible build (doesn't have
> to
> > be
> > > > >Maven even if I strongly suggest it).
> > > >
> > > > I’m going to take that as a softening of your position.  I don’t
> think
> > > > anybody would argue that builds should not be “sensible”, but what
> does
> > > > that really mean?  And what practical steps can we do that doesn’t
> > grind
> > > > feature development and bug fixing to a halt?
> > > >
> > > > And I’d like to hear from others:  Would better build scripts cause
> you
> > > to
> > > > contribute more?  Would switching from Ant to Maven cause you to
> > > > contribute more?  What else could we change that would get you to
> start
> > > > contributing or contribute more?
> > > >
> > > > For sure, at the time Adobe transitioned Flex to Apache, having the
> > Flex
> > > > SDK work with Maven was the number one vote getter in JIRA.  For
> > FlexJS,
> > > > I’m more worried about getting enough features and functionality to
> the
> > > > early adopters such that they provide us the positive testimonials we
> > > need
> > > > such that enterprises might start using FlexJS and then start asking
> > > about
> > > > Maven.  IMO, if we don’t get traction, it won’t matter what our
> builds
> > > > look like.  I keep hoping others will start contributing, and in the
> > > > upcoming 0.5.0 release I invested several days in trying to make the
> > > > builds more sensible because folks said that was a barrier.  But what
> > > else
> > > > do we need to do in this area?  Can others step in to help?
> > > >
> > > > IMO, the good and bad of Apache being a “do-ocracy” is that, while
> you
> > > can
> > > > work on pretty much whatever interests you, at least in this project,
> > > > others tend to watch you work.  Maybe there’s something we can tweak
> so
> > > > more folks jump in.  I often think folks still think that we are
> still
> > in
> > > > the “old days” where you had very little influence on the release
> that
> > > > Adobe would offer up on occasion and haven’t fully understood that in
> > the
> > > > Apache world, things are almost the exact opposite.  There is no
> > > corporate
> > > > entity that decides what gets done, individuals can’t just be passive
> > > > customers:  they need to somehow find the time to help get things
> done.
> > > > It could just be by using the releases, but it would be much better
> if
> > > > folks who know Maven could help you create a Maven builds for our
> > repos,
> > > > and folks who know Java could try to work on the compiler, etc.  Yes,
> > > > Adobe pays me to work on Flex, but Adobe is not backing Flex like it
> > used
> > > > to.  It has turned the future of Flex over to Apache and the Apache
> > Flex
> > > > community.
> > > >
> > > > Anyway, feel free to keep venting for a bit, and even take a break if
> > you
> > > > need to, but I hope you will stick with us and we can open an
> > discussion
> > > > on more concrete things that we might be able to do to make the
> builds
> > > > more “sensible” and maybe even break it down into small pieces that
> > > others
> > > > can help with.
> > > >
> > > > -Alex
> > > >
> > > >
> > >
> >
>

Reply via email to