http://jira.codehaus.org/browse/GRADLE-505 - it contains the growl idea as well as the accounce task idea
Jason Porter Real Programmers think better when playing Adventure or Rogue. PGP key id: 926CCFF5 PGP fingerprint: 64C2 C078 13A9 5B23 7738 F7E5 1046 C39B 926C CFF5 PGP key available at: keyserver.net, pgp.mit.edu On Tue, May 26, 2009 at 08:51, Hans Dockter <[email protected]> wrote: > > On May 25, 2009, at 9:39 PM, Daniel wrote: > >> One neat thing to do on the mac, that is on a related note, would be to >> support Growl, as Buildr does. It's very nice to have a window popup that >> says your <couple of minutes lasting> build failed, while you're surfing the >> web. Growl has a Java API (don't know how good it is), and a commandline >> interface. Growl is Mac only, but that shouldn't be too much of an issue, >> other platforms will have similar means of communication. > > That is a very nice idea. Could you file a Jira for this? > > - Hans > >> >> >> Cheers, >> Daniel >> >> On Tue, May 26, 2009 at 2:31 AM, Hans Dockter <[email protected]> wrote: >> >> On May 25, 2009, at 7:32 PM, Jason Porter wrote: >> >> Awesome. I guess the proper way to do this then would be to fork the >> project on GitHub? Also are there problems with building on JDK6 (I'm >> on a Mac, BTW)? I'm running into heap space issues and tried to >> increase the memory via the options in the build.gradle and the >> gradlew in the root directory, but it doesn't look like it's being >> accepted. I could try building in IntelliJ, but haven't yet. >> >> We have to solve the heap space issues. I guess you have run into them >> while running the unit tests? >> >> On the other hand, you don't even need to fork Gradle. >> >> What you could do for development is the following. Set up a new Gradle >> project. This means: >> >> myProject >> - build.gradle >> - buildSrc/src/main/groovy >> >> You can add all your Java/Groovy classes for writing the task into the >> source directory: buildSrc/src/main/groovy >> >> You can use the build.gradle script for testing your stuff. What happens >> is, that when you trigger a build the buildSrc code is automatically >> compiled and available to the build script classpath. So in your build >> script you can do: >> >> task myAnnouncement (type: <fullyQualifiedNameOfYourTask) { >> <configuration> >> } >> >> Then you can execute: >> >> gradle myAnnouncement >> >> The compiled buildSrc result is cached and invalidated if the source is >> changing. In the case you run into issues with stale caches you can always >> do: gradle -C rebuild myAnnouncement >> >> Your custom task should probably extend the DefaultTask. Have a look in >> the Gradle source for examples. >> >> - Hans >> >> >> >> >> Jason Porter >> Real Programmers think better when playing Adventure or Rogue. >> >> PGP key id: 926CCFF5 >> PGP fingerprint: 64C2 C078 13A9 5B23 7738 F7E5 1046 C39B 926C CFF5 >> PGP key available at: keyserver.net, pgp.mit.edu >> >> >> >> On Mon, May 25, 2009 at 07:50, Hans Dockter <[email protected]> wrote: >> >> On May 23, 2009, at 8:37 AM, Jason Porter wrote: >> >> In the release announcement of 0.6.0 the idea of a Twitter plugin was >> introduced to post when successful milestones happen (like the >> completion of 0.6.0). I'm up for the challenge of creating one, but I >> think a general task / plugin (I'm not sure which would be best) that >> would let you do announcements would be more beneficial. >> >> This is a very cool idea. The Gradle build itself will be the first user >> of >> such a task. >> >> >> >> I imagine a module (for lack of knowing which is better) that would be >> able to take a type argument or configuration and in the backend it >> would set that up for you and use the closure for configuration stuff. >> So I'm thinking you could do things like RSS, Twitter, or email just >> to name a few. Then in your configuration closure you'd specify the >> needed information, SMTP, twitter credentials, message, etc. >> >> My first question: Would a task or a plugin be better for this? >> >> On first sight I would say a task might be a good enough. For example our >> test task is also part of a framework where you can either choose JUnit or >> TestNG. >> >> How things can look like at the end: >> >> There is a task jar (with as many helper and framework classes you like). >> This jar would be available from a repository. >> >> In the settings.gradle you would say: >> >> mavenCentral() >> dependencies("com.jason:announce-task:1.0") >> >> In the build.gradle you can do: >> >> task twitter(type: 'com.jason.gradle.Twitter') { >> use('twitter') >> .... >> } >> >> The stuff in the closure is applied against the API of your Announce task. >> >> >> Second: Is a general framework like this with different >> implementations possible in Gradle? >> >> Yes. >> >> - Hans >> >> -- >> Hans Dockter >> Gradle Project Manager >> http://www.gradle.org >> >> >> >> >> >> --------------------------------------------------------------------- >> To unsubscribe from this list, please visit: >> >> http://xircles.codehaus.org/manage_email >> >> >> >> >> --------------------------------------------------------------------- >> To unsubscribe from this list, please visit: >> >> http://xircles.codehaus.org/manage_email >> >> >> >> -- >> Hans Dockter >> Gradle Project Manager >> http://www.gradle.org >> >> >> >> >> >> --------------------------------------------------------------------- >> To unsubscribe from this list, please visit: >> >> http://xircles.codehaus.org/manage_email >> >> >> > > -- > Hans Dockter > Gradle Project Manager > http://www.gradle.org > > > > > > --------------------------------------------------------------------- > To unsubscribe from this list, please visit: > > http://xircles.codehaus.org/manage_email > > > --------------------------------------------------------------------- To unsubscribe from this list, please visit: http://xircles.codehaus.org/manage_email
