Incremental build API

2014-03-25 Thread Jason van Zyl
Hi,

For those who are interested in incremental builds we, at Takari, have released 
a general purpose incremental build API with an initial focus on Maven. We've 
created a short, high-level description of the framework[1] and we've opened up 
our Git repository with the code[2]. We also have a some demos that people can 
look at[3]. We are, and have been, running this code in production for a few 
months but it is still a work in progress. We have implemented a Maven 
lifecycle that integrates this API but we've just started using it ourselves. 
We will open this lifecycle up shortly for people to try but for now, if you're 
interested in incremental builds take a look and let us know what you think! 

A note to those interested that the use of the API in Maven requires 3.2.1+. 

[1]: http://takari.io/2014/03/25/incremental-build.html
[2]: https://github.com/takari/io.takari.incrementalbuild
[3]: 
https://github.com/takari/io.takari.incrementalbuild/tree/master/incrementalbuild/src/test/java/io/takari/incremental/demo

Thanks,

Jason

--
Jason van Zyl
Founder,  Apache Maven
http://twitter.com/jvanzyl
http://twitter.com/takari_io
-

I never make the mistake of arguing with people for whose opinions I have no 
respect.

-- Edward Gibbon











Re: Incremental build API

2014-03-25 Thread Mauri, Richard
Thanks, I’ll take a look
One of these days I was going to attempt a port of an incremental build system 
we developed to Maven.
Some concepts include a post compile artifact byte code analyzer and comparator 
that classifies the nature of change to help optimize away (in some cases) the 
dependent transient rebuilds
Of course using mvn clean would defeat this, we have a smarter clean that 
executes its goal only if the scm system has detected deletes…
Anyway, I’ll use your announcement to try to engage.
Thanks!

From: Jason van Zyl ja...@takari.iomailto:ja...@takari.io
Reply-To: Maven Users List 
users@maven.apache.orgmailto:users@maven.apache.org
Date: Tuesday, March 25, 2014 at 10:44 AM
To: Maven Users List users@maven.apache.orgmailto:users@maven.apache.org
Subject: Incremental build API

Hi,

For those who are interested in incremental builds we, at Takari, have released 
a general purpose incremental build API with an initial focus on Maven. We've 
created a short, high-level description of the framework[1] and we've opened up 
our Git repository with the code[2]. We also have a some demos that people can 
look at[3]. We are, and have been, running this code in production for a few 
months but it is still a work in progress. We have implemented a Maven 
lifecycle that integrates this API but we've just started using it ourselves. 
We will open this lifecycle up shortly for people to try but for now, if you're 
interested in incremental builds take a look and let us know what you think!

A note to those interested that the use of the API in Maven requires 3.2.1+.

[1]: http://takari.io/2014/03/25/incremental-build.html
[2]: https://github.com/takari/io.takari.incrementalbuild
[3]: 
https://github.com/takari/io.takari.incrementalbuild/tree/master/incrementalbuild/src/test/java/io/takari/incremental/demo

Thanks,

Jason

--
Jason van Zyl
Founder,  Apache Maven
http://twitter.com/jvanzyl
http://twitter.com/takari_io
-

I never make the mistake of arguing with people for whose opinions I have no 
respect.

-- Edward Gibbon












Re: Incremental build API

2014-03-25 Thread Mark Derricutt
Looking interesting - will definitely take a look at this for my various 
language plugins ( coffee script, clojure, frege ).


On 26 Mar 2014, at 6:44, Jason van Zyl wrote:

A note to those interested that the use of the API in Maven requires 
3.2.1+.


-
To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
For additional commands, e-mail: users-h...@maven.apache.org



Re: Incremental build API

2014-03-25 Thread Jason van Zyl

On Mar 25, 2014, at 2:36 PM, Mauri, Richard richard.ma...@sap.com wrote:

 Thanks, I’ll take a look
 One of these days I was going to attempt a port of an incremental build 
 system we developed to Maven.
 Some concepts include a post compile artifact byte code analyzer and 
 comparator that classifies the nature of change to help optimize away (in 
 some cases) the dependent transient rebuilds
 Of course using mvn clean would defeat this, we have a smarter clean that 
 executes its goal only if the scm system has detected deletes…

Yes, clean becomes unnecessary unless we detect state changes we can't account 
for (configuration changes or the plugins change from the previous run). We 
handle the case of detecting stale outputs as well, where you need to delete 
the outputs of inputs that have been deleted. We also have a more fine-grained 
model underneath that allows us to model compilation units which is what we use 
in our incremental compilers (JDT and Javac implementations).

 Anyway, I’ll use your announcement to try to engage.
 Thanks!
 
 From: Jason van Zyl ja...@takari.iomailto:ja...@takari.io
 Reply-To: Maven Users List 
 users@maven.apache.orgmailto:users@maven.apache.org
 Date: Tuesday, March 25, 2014 at 10:44 AM
 To: Maven Users List users@maven.apache.orgmailto:users@maven.apache.org
 Subject: Incremental build API
 
 Hi,
 
 For those who are interested in incremental builds we, at Takari, have 
 released a general purpose incremental build API with an initial focus on 
 Maven. We've created a short, high-level description of the framework[1] and 
 we've opened up our Git repository with the code[2]. We also have a some 
 demos that people can look at[3]. We are, and have been, running this code in 
 production for a few months but it is still a work in progress. We have 
 implemented a Maven lifecycle that integrates this API but we've just started 
 using it ourselves. We will open this lifecycle up shortly for people to try 
 but for now, if you're interested in incremental builds take a look and let 
 us know what you think!
 
 A note to those interested that the use of the API in Maven requires 3.2.1+.
 
 [1]: http://takari.io/2014/03/25/incremental-build.html
 [2]: https://github.com/takari/io.takari.incrementalbuild
 [3]: 
 https://github.com/takari/io.takari.incrementalbuild/tree/master/incrementalbuild/src/test/java/io/takari/incremental/demo
 
 Thanks,
 
 Jason
 
 --
 Jason van Zyl
 Founder,  Apache Maven
 http://twitter.com/jvanzyl
 http://twitter.com/takari_io
 -
 
 I never make the mistake of arguing with people for whose opinions I have no 
 respect.
 
 -- Edward Gibbon
 
 
 
 
 
 
 
 
 
 

Thanks,

Jason

--
Jason van Zyl
Founder,  Apache Maven
http://twitter.com/jvanzyl
http://twitter.com/takari_io
-

There's no sense in being precise when you don't even know what you're talking 
about.

 -- John von Neumann











Re: Incremental build API

2014-03-25 Thread Jason van Zyl
Should work for any kind of plugins. We have integrated this into 20 or so 
mojos thus far ranging from source generation, resource processing, resource 
generation, compilation and class file processing. It's intended to be general 
purpose but we're looking for feedback to help flesh out the APIs and make them 
more friendly where/if they are not.

On Mar 25, 2014, at 3:09 PM, Mark Derricutt m...@talios.com wrote:

 Looking interesting - will definitely take a look at this for my various 
 language plugins ( coffee script, clojure, frege ).
 
 On 26 Mar 2014, at 6:44, Jason van Zyl wrote:
 
 A note to those interested that the use of the API in Maven requires 3.2.1+.
 
 -
 To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
 For additional commands, e-mail: users-h...@maven.apache.org
 

Thanks,

Jason

--
Jason van Zyl
Founder,  Apache Maven
http://twitter.com/jvanzyl
http://twitter.com/takari_io
-

To think is easy. To act is hard. But the hardest thing in the world is to act 
in accordance with your thinking.

 -- Johann von Goethe