[dojo-contributors] Eclipse RCP Dojo builder

Shane O'Sullivan shaneosullivan1 at gmail.com
Fri Dec 15 06:43:51 EST 2006


There's a lot of talk currently about making the build system for Dojo
simpler.  The web based method definitely shows promise, and will be
attractive to many users.  However, I think that many developers would like
to have more control over the build process, while still having the
possibility of all of it being automated for them.  For this reason I've
decided to look in to the possibility of using an Eclipse based build system
that can operate as a standalone Rich Client application or be a new
perspective in Eclipse.

My current thinking is that it will be a generic Ant-based build system that
can be customised for multiple "categories", of which Dojo will be one.  The
use case is:

   1. User chooses an Ant build file to import
   2. View pane 1 lists all the available Ant build targets as a list of
   checkboxes that the user can select
   3. View pane 2 lists all the properties that can be set on the Ant
   build.  This pulls the original values for these properties from the
   build.xml file, but these can be overridden by setting some defaults
   in the application.
   4. View pane 3 provides customised Dojo controls, and this is where
   the meat of the application will lie.  These controls will be able to do a
   number of things:
      - Select combinations of build targets based on predefined
      settings.  E.g . "release" and "intern-strings"
      - Set various properties on the build
      - Check out various builds of Dojo from SVN trunk and give the
      user the option to use the build files and/or source files from that
      release, or from the nightly builds.
      - Provide a list of build profiles that the user can choose
      from, with the possibility of also having a profile-builder that will
      automatically import a list of all the files that a user can choose and
      writes the profile for them

The advantages of this approach:

   - Easy to use
   - Works both online and offline (online for checking out builds,
   offline for building)
   - Integrates with Eclipse, so can be a standalone application or part
   of an existing development environment
   - Gives you complete control over the build process, while also simply
   letting you choose a profile and click "Build"
   - Users don't have to install Ant, Subversion etc.  All these
   utilities will be included in this application
   - Can leverage the Eclipse update mechanisms so that users can update
   their application from an Eclipse update site hosted at
   dojotoolkit.org
   - Fun to write


Disadvantages:

   - Large initial download - probably ~ 7megs for the standalone app,
   much smaller for just the Eclipse plugin set
   - A lot of work for me :-)

Much of this work is already done - the base framework is laid down, all the
ant stuff and UI issues have been sorted out.  Now I'm working on the
Dojo-specific components, including the SVN checkouts etc.  Hopefully I
might have something ready next month some time, at which time, if people
like it, I can commit it to Dojo and it can be hosted there.  Otherwise I
can simply host it myself.  If it is to be hosted at Dojo however, it would
be a good idea (also for the web-based build system) to have another SVN
stream for tools, separate from the Dojo trunk, for obvious reasons.

So, what do people think? Ideas, suggestions, criticisms, ridicule....?

Thanks,

Shane
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.dojotoolkit.org/pipermail/dojo-contributors/attachments/20061215/607c449a/attachment.htm 


More information about the dojo-contributors mailing list