buildr-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From dona...@apache.org
Subject svn commit: r19711 [5/44] - in /dev/buildr/1.5.3: ./ dist/ site/ site/css/ site/images/ site/rdoc/ site/rdoc/Buildr/ site/rdoc/Buildr/ArchiveTask/ site/rdoc/Buildr/ArtifactNamespace/ site/rdoc/Buildr/Assets/ site/rdoc/Buildr/CPom/ site/rdoc/Buildr/Chec...
Date Wed, 17 May 2017 11:56:15 GMT
Added: dev/buildr/1.5.3/site/contributing.html
==============================================================================
--- dev/buildr/1.5.3/site/contributing.html (added)
+++ dev/buildr/1.5.3/site/contributing.html Wed May 17 11:56:15 2017
@@ -0,0 +1,223 @@
+<html>
+  <head>
+    <meta content='text/html;charset=UTF-8' http-equiv='Content-Type'>
+    <title>buildr &mdash; Contributing</title>
+    <style type='text/css'>
+      @import 'css/default.css';
+      @import 'css/syntax.css';
+    </style>
+    <style media='print' type='text/css'>
+      @import 'css/print.css';
+    </style>
+    <meta content='Official Buildr documentation from the people in the know' name='subject'>
+    <link href='images/favicon.png' rel='shortcut icon'>
+  </head>
+  <body>
+    <div id='wrap'>
+      <div id='header'>
+        <a href='http://buildr.apache.org/' title="Build like you code"><img alt='buildr'
src='images/buildr.png'></a>
+        <div class='tagline'>Build like you code</div>
+      </div>
+      <div id='pages'>
+        <ol class='toc'>
+          <li>Start Here
+            <ol class="toc">
+              <li><a href='index.html'>Welcome</a></li>
+              <li><a href='quick_start.html'>Quick Start</a></li>
+              <li><a href='installing.html'>Installing & Running</a></li>
+              <li><a href='http://cwiki.apache.org/confluence/display/BUILDR/Index'>Community
Wiki</a></li>
+            </ol>
+          </li>
+          <li>Using Buildr
+            <ol class="toc">
+              <li><a href='buildr.pdf'>This Guide (PDF)</a></li>
+              <li><a href='projects.html'>Projects</a></li>
+              <li><a href='building.html'>Building</a></li>
+              <li><a href='artifacts.html'>Artifacts</a></li>
+              <li><a href='packaging.html'>Packaging</a></li>
+              <li><a href='testing.html'>Testing</a></li>
+              <li><a href='releasing.html'>Releasing</a></li>
+              <li><a href='settings_profiles.html'>Settings/Profiles</a></li>
+              <li><a href='languages.html'>Languages</a></li>
+              <li><a href='more_stuff.html'>More Stuff</a></li>
+              <li><a href='extending.html'>Extending Buildr</a></li>
+              <li><a href='http://cwiki.apache.org/confluence/display/BUILDR/Buildr+HowTos'>How-Tos</a></li>
+            </ol>
+          </li>
+          <li>Reference
+            <ol class="toc">
+              <li><a href='rdoc/Buildr.html'>API</a></li>
+              <li><a href='http://docs.rubyrake.org'>Rake</a></li>
+              <li><a href='https://rubygems.org/gems/Antwrap'>Antwrap</a></li>
+              <li><a href='http://cwiki.apache.org/confluence/display/BUILDR/Common+Problems+and+Solutions'>Troubleshooting</a></li>
+            </ol>
+          </li>
+          <li>Get Involved
+            <ol class="toc">
+              <li><a href='download.html'>Download</a></li>
+              <li><a href='mailing_lists.html'>Mailing Lists</a></li>
+              <li><a href='http://www.twitter.com/buildr'>Twitter</a></li>
+              <li><a href='http://issues.apache.org/jira/browse/Buildr'>Issues/Bugs</a></li>
+              <li><a href='https://builds.apache.org/view/A-F/view/Buildr'>CI
Jobs</a></li>
+              <li><a href='contributing.html'>Contributing</a></li>
+            </ol>
+          </li>
+          <li>
+            <form action='http://www.google.com/' onsubmit="document.getElementById('gQuery').value
+= ' site:buildr.apache.org'">
+              <input name='q' size='20' type='text' id='gQuery'>
+              <input name='sa' type='submit' value='Search'>
+              <img alt='Google Custom Search' src='http://www.google.com/coop/images/google_custom_search_smnar.gif'>
+            </form>
+          </li>
+        </ol>
+      </div>
+      <div id='content'>
+        <h1 id='contributing'>Contributing</h1>
+        <ol class="toc"><li><a href="#involved">Getting involved</a></li><li><a
href="#mailing_lists">Mailing Lists</a></li><li><a href="#irc">Internet
Relay Chat</a></li><li><a href="#bugs">Bugs (aka Issues)</a></li><li><a
href="#wiki">Community Wiki</a></li><li><a href="#code">Contributing
Code</a></li><li><a href="#edge">Living on the edge</a></li><li><a
href="#testing">Tested and Documented</a></li><li><a href="#docs">Documentation</a></li><li><a
href="#ci">Continuous Integration</a></li><li><a href="#contributors">Contributors</a></li></ol>
+        <p>Buildr is a community effort, and we welcome all contributors.  Here&#8217;s
your chance to get involved and help your fellow developers.</p>
+<h2 id="involved">Getting involved</h2>
+<p>All our discussions are done in the open, over <a href="mailing_lists.html">email</a>,
and that would be the first place to look for answers, raise ideas, etc.  For bug reports,
issues and patches, <a href="#bugs">see below</a>.</p>
+<h2 id="mailing_lists">Mailing Lists</h2>
+<p>We run two mailing lists, the <a href="http://buildr.markmail.org/search/list:users">users</a>
mailing list for developers working with Buildr, that would be you if you&#8217;re using
Buildr or interested in using it.  There&#8217;s the <a href="http://buildr.markmail.org/search/list:dev">dev</a>
mailing list for talking about development of Buildr itself. There&#8217;s also <a
href="http://buildr.markmail.org/search/list:commits">commits</a> mailing list for
following Git commits and <span class="caps">JIRA</span> issues.</p>
+<p>Check the <a href="mailing_lists.html">mailing lists</a> page for more
information on subscribing, searching and posting to the mailing list.</p>
+<h2 id="irc">Internet Relay Chat</h2>
+<p>We are live on <span class="caps">IRC</span> under the buildr channel
on irc.freenode.net, with a broad coverage of the US timezone. We tend to idle there, so feel
free to ping the channel owner (toulmean) to make noise.</p>
+<p>Our &#8220;conversations&#8221;: are logged by the <a href="http://echelog.matzon.dk/logs/browse/buildr/1279663200">echelog</a>
and <a href="http://irclogger.com/buildr/">irclogger</a> bots. If you&#8217;re
really curious, we also have <a href="http://echelog.matzon.dk/stats/buildr.html">activity
statistics</a></p>
+<p>Sincere thanks to Matzon and Christopher Schneider for setting these up!</p>
+<h2 id="bugs">Bugs (aka Issues)</h2>
+<p>We really do try to keep bugs to a minimum, and anticipate everything you&#8217;ll
ever want to do with Buildr.  We&#8217;re also, not perfect.  So you may have found a
bug, or have an enhancement in mind, or better yet, a patch to contribute. Here&#8217;s
what you can do.</p>
+<p>If it&#8217;s a bug, enhancement or patch, add it to <a href="http://issues.apache.org/jira/browse/Buildr"><span
class="caps">JIRA</span></a>.  For trivial stuff, that&#8217;s good enough.</p>
+<p>If it needs more attention, start a discussion over on the mailing list.  We will
still use <span class="caps">JIRA</span> to log the progress, but the mailing
list is a better place for talking things through.</p>
+<p>When reporting a bug, please tell us which version of Ruby, Buildr and Java you
are using, and also which operating system you are on:</p>
+<figure class="highlight"><pre><code class="language-sh" data-lang="sh"><span
class="nv">$ </span>ruby --version
+<span class="nv">$ </span>buildr --version
+<span class="nv">$ </span>java --version</code></pre></figure><h2
id="wiki">Community Wiki</h2>
+<p><a href="http://cwiki.apache.org/confluence/display/BUILDR/Index">Our community
Wiki</a>.</p>
+<h2 id="code">Contributing Code</h2>
+<p>Yes, please.</p>
+<p>If you have a patch to submit, do it through <a href="http://issues.apache.org/jira/browse/Buildr"><span
class="caps">JIRA</span></a>.  We want to make sure Apache gets the right to
use your contribution, and the <span class="caps">JIRA</span> upload form includes
a simple contribution agreement.  Lawyer not included.</p>
+<h3>The Perfect Patch</h3>
+<p>If you want to get your patch accepted quickly:</p>
+<ol>
+	<li>Provide a good summary of the bug/fix.  We use that to decide which issue we can
do quickly, and also copy and paste it into the changelog.</li>
+	<li>Provide short explanation of what failed, under what conditions, why, and what
else could be affected by the change (when relevant).  The helps us understand the problem
and move on to the next step.</li>
+	<li>Provide a patch with relevant specs, or a fix to incomplete/broken specs. First
thing we have to do is replicate the problem, before applying the change, and then make sure
the change fixes that problem.  And we need to have those specs in there, they make sure we
don&#8217;t accidentally break it again in the future.</li>
+	<li>Provide a patch with the fix/change itself.  Keep it separate from the specs,
so it&#8217;s easy to apply them individually.</li>
+</ol>
+<p>If you don&#8217;t know how to fix it, but can at least write a spec for the
correct behavior (which, obviously would fail), do just that.  A spec is preferred to a fix.</p>
+<h2 id="edge">Living on the edge</h2>
+<p>Did we mention Buildr is an open source project?  In fact, when you install Buildr
you get all the source code, documentation, test case and everything you need to use it, extend
it and patch it.  Have a look in your Gem directory.</p>
+<h3 id="git"><span class="caps">GIT</span></h3>
+<p>If you want to work with the latest and greatest, you&#8217;ll want to check
out Buildr from source control. You can use the <a href="https://github.com/apache/buildr">official
Apache Buildr Github  clone.</a>  This clone is maintained by Github aand kept in sync
with the <a href="https://git-wip-us.apache.org/repos/asf?p=buildr.git"><span class="caps">ASF</span>
Git repository</a></p>
+<figure class="highlight"><pre><code class="language-sh" data-lang="sh"><span
class="nv">$ </span>git clone git@github.com:apache/buildr.git</code></pre></figure><h3>Working
with Source Code</h3>
+<p>To install Buildr from the source directory:</p>
+<figure class="highlight"><pre><code class="language-sh" data-lang="sh"><span
class="nv">$ </span><span class="nb">cd </span>buildr
+<span class="nv">$ </span>rake setup install</code></pre></figure><p>When
using Buildr for JRuby:</p>
+<figure class="highlight"><pre><code class="language-sh" data-lang="sh"><span
class="nv">$ </span><span class="nb">cd </span>buildr
+<span class="nv">$ </span>jruby -S rake setup install</code></pre></figure><p>The
<em>setup</em> task takes care of installing all the necessary dependencies used
for building, testing and running Buildr. Once in a while we upgrade or add new dependencies,
if you&#8217;re experiencing a missing dependency, simply run <code>rake setup</code>
again.</p>
+<p>The <em>install</em> task creates a Gem in your working directory (<em>pkg/</em>)
and install it in your local repository. Since Ruby Gems uses version numbers to detect new
releases, if you installed Buildr this way and want to upgrade to the latest official release,
you need to use <code>gem install buildr</code> rather than <code>gem upgrade</code>.</p>
+<p>Both <em>setup</em> and <em>install</em> tasks use the <code>sudo</code>
command on platforms that require it (i.e. not Windows), so there&#8217;s no need to run
<code>sudo rake</code> when working with the Buildr source code.</p>
+<h3>Using development build</h3>
+<p>Occasionally we&#8217;ll make development builds from the current code in trunk/head.
We appreciate if you can take the time to test those out and report any bugs. To install development
builds, use the Gem repository at <code>people.apache.org/~assaf/buildr/snapshot</code>:</p>
+<figure class="highlight"><pre><code class="language-sh" data-lang="sh">gem
<span class="nb">source</span> --add http://people.apache.org/~assaf/buildr/snapshot/</code></pre></figure><p>Since
Ruby Gems uses version numbers to detect new releases, if you installed Buildr from a snapshot
and want to upgrade to a newer snapshot or the latest official release, you need to use <code>gem
install buildr</code> rather than <code>gem upgrade</code>.</p>
+<p>If you want to go back to using the RubyForge releases:</p>
+<figure class="highlight"><pre><code class="language-sh" data-lang="sh">gem
<span class="nb">source</span> --remove http://people.apache.org/~assaf/buildr/snapshot/
+gem install buildr</code></pre></figure><h2 id="testing">Tested and
Documented</h2>
+<p>Two things we definitely encourage!</p>
+<h3>Testing/Specs</h3>
+<p>Obviously we won&#8217;t turn down patches, but we&#8217;ll love you even
more if you include a test case.  One that will fail without the patch, and run successfully
with it.  If not for our love, then think of the benefit to you: once we add that test case,
we won&#8217;t accidentally break that feature in the next release.</p>
+<p>We test using <a href="http://rspec.info/">RSpec</a>, a Behavior-Driven
Development test framework.  The main difference between RSpec and xUnit is that RSpec helps
you formulate test cases in terms of specifications: you describe how the code should behave,
and run RSpec to make sure it matches that specification.</p>
+<p>You can run an individual specifications using the <code>spec</code>
command, for example:</p>
+<figure class="highlight"><pre><code class="language-sh" data-lang="sh"><span
class="nv">$ </span>spec spec/compiler_spec.rb
+<span class="nv">$ </span>spec spec/compiler_spec.rb -l 409</code></pre></figure><p>The
first command will run all the specifications in <code>compiler_spec</code>, the
second command will run only the specification identified by line 409 of that file. You can
use line numbers to point at a particular specification (lines starting with <code>it</code>),
or set of specifications (lines starting with <code>describe</code>). You can
also use the <code>-e</code> command line option to name a particular specification.</p>
+<p>To make sure your change did not break anything else, you can run all the specifications
(be patient, we have a lot of these):</p>
+<figure class="highlight"><pre><code class="language-sh" data-lang="sh"><span
class="nv">$ </span>rake spec</code></pre></figure><p>If
you get any failures, you can use <code>rake failed</code> to run only the failed
specs, and repeat until there are no more failed specs to run. The list of failed specs is
stored in the file <em>failed</em>.</p>
+<p>We always <code>rake spec</code> before making a release.</p>
+<p>For full test coverage:</p>
+<figure class="highlight"><pre><code class="language-sh" data-lang="sh"><span
class="nv">$ </span>rake coverage</code></pre></figure><p>Specification
and coverage reports are <span class="caps">HTML</span> files you can view with
a Web browser, look for them in the <em>reports</em> directory. You can also check
out the <a href="specs.html">RSpec report</a> and <a href="coverage/index.html">test
coverage</a> we publish with each release.</p>
+<h2 id="docs">Documentation</h2>
+<p>Yes, we do make typos, spelling errors and sometimes we write things that don&#8217;t
make sense, so if you find a documentation bug, or want to help make the documentation even
better, here&#8217;s the way to do it.</p>
+<p>For simple typos and quick fixes, just send a message to the mailing list or log
an issue in <span class="caps">JIRA</span>.</p>
+<p>If you end up rewriting a significant piece of text, or add new documentation (you
rock!), send a patch.  Making documentation patches is fairly easy.  All the documentation
is generated from text files in the <code>doc/pages</code> directory, so all you
need to do is check it out from Git, edit, and <code>git diff</code> to create
a patch.</p>
+<p>We use <a href="http://www.textism.com/tools/textile/">Textile</a> as
the markup language, it takes all of a few minutes to learn, it&#8217;s intuitive to use,
and produces clean <span class="caps">HTML</span>.  You can learn it all in a
few minutes from the <a href="http://redcloth.org/textile">Textile Reference Manual</a>.
 Also check out the <a href="http://hobix.com/textile/quick.html">Textile Quick Reference</a>.</p>
+<p>Syntax highlighting handled by <a href="http://pygments.org">Pygments</a>.
 Use the special <code>highlight</code> tag to separate code sample from the rest
of the text and to tell Pygments which language to use.  For example:</p>
+<pre>
+&#123;&#37; highlight ruby &#37;&#125;
+define 'project' do
+  # Just a sample
+end
+&#123;&#37; endhighlight &#37;&#125;
+</pre><p>Have a look at existing documentation to see writing conventions, specifically:</p>
+<ul>
+	<li>Separate paragraphs with two newlines.</li>
+	<li>Use one newline only if you need a &lt;br&gt; tag, otherwise, no newlines
inside the paragraph.</li>
+	<li>When creating a new page, don&#8217;t forget the <span class="caps">YAML</span>
premable at the top (Jekyll needs the page title and layout).</li>
+	<li>The layout uses H1 to render the page title; only use H2 through H4 for the page
content.</li>
+	<li>Use H2 headers for the major page sections.  Give each H2 header a unique ID so
the table of contents can link to it.</li>
+	<li>Separating sentences with two spaces, just a convenience when editing in a text
editor using monospaced fonts.</li>
+	<li>If in doubt, ask.</li>
+</ul>
+<p>To go from Textile to <span class="caps">HTML</span> we use <a href="http://github.com/mojombo/jekyll">Jekyll</a>.
 You can use the <code>jekyll</code> rake task to transform the files under <code>doc</code>
and create a copy of the Web site in the directory <code>_site</code>.  For example:</p>
+<figure class="highlight"><pre><code class="language-sh" data-lang="sh"><span
class="nv">$ </span>rake jekyll
+<span class="nv">$ </span>open _site/index.html</code></pre></figure><p>There
is no live editing, but you can run <code>rake jekyll auto=true</code>, and when
you update and save a Textile page it will regenerate the corresponding <span class="caps">HTML</span>
page.</p>
+<p>To go from <span class="caps">HTML</span> to <span class="caps">PDF</span>
we use <a href="http://www.princexml.com/">PrinceXML</a>.  The target file <code>buildr.pdf</code>
is generated by first running Jekyll and then merging the generated <span class="caps">HTML</span>
pages into a single <span class="caps">PDF</span> document.  For example:</p>
+<figure class="highlight"><pre><code class="language-sh" data-lang="sh"><span
class="nv">$ </span>rake buildr.pdf
+<span class="nv">$ </span>open buildr.pdf</code></pre></figure><h2
id="ci">Continuous Integration</h2>
+<p>Buildr uses the Jenkins continuous integration tool to perform builds, run tests
and report back on problems when changes are made to the source code repository.</p>
+<p>The care and feeding of the <a href="https://builds.apache.org/view/A-F/view/Buildr">CI
Jobs</a> is the responsibility of the committers. To get access to configure the CI
Jobs a committer needs to follow the directions on the <a href="http://wiki.apache.org/general/Hudson">jenkins</a>
documentation site.</p>
+<p>You may also need to coordinate with the Apache infrastructure team to get accounts
on the actual slave hosts that run the CI jobs. This access may be required to install tools
and gems required to run the CI jobs. The main slave host to get access to is vesta.apache.org
at the time of writing. You can also log on to the slave host, impersonate hudson and manually
run tasks when you are attempting to track down build problems. Of course to impersonate hudson
you will need to learn how to use <a href="http://apache.org/dev/freebsd-jails"><span
class="caps">OPIE</span>.</a></p>
+<h3 id="cilinux">Linux Setup</h3>
+<p>The tests on the Linux hosts rely on <a href="https://rvm.io/"><span class="caps">RVM</span></a>
to setup the ruby environment. At the time of writing the Linux/x86 nodes that Apache uses
for CI are based of the old &#8220;Ubuntu 10.04.4 <span class="caps">LTS</span>
(Lucid Lynx)&#8221; operating system. As it is a relatively old operating system, it requires
a little bit of manual intervention to install <span class="caps">RVM</span> on
the node. We have installed the required tools on vesta.apache.org manually. The script looks
something like;</p>
+<figure class="highlight"><pre><code class="language-sh" data-lang="sh">ssh
my_username@vesta.apache.org
+sudo su - hudson
+
+curl -L https://get.rvm.io <span class="p">|</span> bash -s stable
+rvm reload
+rvm pkg install readline
+rvm pkg install iconv
+rvm pkg install curl
+rvm pkg install openssl
+rvm pkg install zlib
+rvm pkg install autoconf
+rvm pkg install ncurses
+rvm pkg install pkgconfig
+rvm pkg install gettext
+rvm pkg install glib
+rvm pkg install mono
+rvm pkg install llvm
+rvm pkg install libxml2
+rvm pkg install libxslt
+rvm pkg install libyaml
+rvm install ruby-1.8.7-p358
+rvm install ruby-1.9.2-p320
+rvm install jruby-1.6.7
+rvm install ruby-1.9.3-p194</code></pre></figure><p>It should also
be noted that jruby-1.6.7 release has a native library that is compiled using a more modern
version of libc than is available on this variant of the operating system. We could download
the source release and recompile the library but instead we have just avoided the need for
any use of the ruby native interface library in our CI infrastructure.</p>
+<h3 id="ciwindows">Windows Setup</h3>
+<p>The ci infrastructure on the windows host (hudson-win.apache.org) is a little fragile.
First you need to <span class="caps">RDP</span> in and download the support libraries.
We have manually installed the tools in the following locations. Note: it is important to
make the locations read-write access to the hudson user.</p>
+<figure class="highlight"><pre><code class="language-sh" data-lang="sh">F:<span
class="se">\h</span>udson<span class="se">\t</span>ools<span class="se">\R</span>uby193-p194
+F:<span class="se">\h</span>udson<span class="se">\t</span>ools<span
class="se">\R</span>uby192-p290
+F:<span class="se">\h</span>udson<span class="se">\t</span>ools<span
class="se">\R</span>uby187-p370
+F:<span class="se">\h</span>udson<span class="se">\t</span>ools<span
class="se">\j</span>ruby-1.6.7
+F:<span class="se">\h</span>udson<span class="se">\t</span>ools<span
class="se">\s</span>cala-2.9.0.1</code></pre></figure><p><span
class="caps">WARNING</span>: Several attempts were made to use GEM_HOME to install
the dependent gems for each test in a separate location but we were unable to figure out the
mechanisms via which sub-shells would inherit the paths and the ability to run tools such
as rspec.</p>
+<h2 id="contributors">Contributors</h2>
+<p>Here is the list of people who are actively working and committing on Buildr:</p>
+<p><strong><a href="http://labnotes.org">Assaf Arkin</a></strong>
(assaf at apache.org)</p>
+<p>Started working on Buildr because Maven was too much pain and Rake wasn&#8217;t
enough.  Assaf has been hanging around Apache since 1999, as founding contributor to <span
class="caps">XML</span> Apache, Ode and Buildr.  Assaf is also co-author of <a
href="http://manning.com/mcanally/">Ruby In Practice</a>.</p>
+<p><strong>Alex Boisvert</strong></p>
+<p>Came to Buildr as a refuge from the Maven Uncertainty Principle.  Alex has been
working mostly on the Scala integration and believes Ruby scripting is a great complement
to statically typed languages.</p>
+<p><strong><a href="http://offthelip.org">Matthieu Riou</a></strong></p>
+<p><strong>Victor Hugo Borja</strong> (vborja at apache.org)</p>
+<p>Currently a Java Developer at <a href="http://jwmsolutions.com">http://jwmsolutions.com</a>,
Victor has been enjoying and using Apache&#8217;s software since 1999 when he started
with Java, now he prefers programming Ruby and is happy to help on Apache&#8217;s first
ruby project.</p>
+<p><strong>Lacton</strong> (lacton at apache.org)</p>
+<p>A test-infected developer since 2001, Lacton yearns for a development infrastructure
that would shorten feedback loops so much that testing, building, refactoring and committing
would feel as easy and natural as breathing air.</p>
+<p><strong><a href="http://www.codecommit.com/blog">Daniel Spiewak</a></strong>
(djspiewak at apache.org)</p>
+<p>Daniel originally came to Buildr in search of a Scala build tool which was better
than Ant.  He got more than he bargained for.  Now, he works to advance Buildr as the absolute
best tool for supporting Scala development.</p>
+<p><strong><a href="http://www.lunar-ocean.com/">Antoine Toulme</a></strong>
(toulmean at apache.org)</p>
+<p>Antoine used Buildr first as an excuse to evade in Ruby land, creating plugins for
Debian packaging, <span class="caps">GWT</span> compilation, or the <span class="caps">NSIS</span>
installer. His main area of interest is the resolving of dependencies in the OSGi world. He
works on making Buildr a standalone rock solid tool.</p>
+<p><strong>Peter Donald</strong></p>
+<p>Peter already used rake to automate jobs in his ruby and java projects. When it
came time to upgrade that home grown ant/java/rake build system Buildr seemed the perfect
match.</p>
+      </div>
+      <div id='footer'>Copyright &copy; 2007-2016 The Apache Software Foundation</div>
+    </div>
+  </body>
+</html>

Added: dev/buildr/1.5.3/site/css/default.css
==============================================================================
--- dev/buildr/1.5.3/site/css/default.css (added)
+++ dev/buildr/1.5.3/site/css/default.css Wed May 17 11:56:15 2017
@@ -0,0 +1,236 @@
+/* Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with this
+ * work for additional information regarding copyright ownership.  The ASF
+ * licenses this file to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
+
+
+body {
+  background-color: #fff;
+  color: #000;
+  font-family: "Helvetica Neue", "DejaVu Sans", "Verdana", sans-serif;
+  text-align: center;
+  line-height: 150%;
+}
+
+a:link, a:visited{
+  color: #0044b3;
+  text-decoration: none;
+}
+
+a:hover{
+  text-decoration: underline;
+}
+
+img {
+  border: none;
+}
+
+pre, code {
+  font-family: "Monaco", "DejaVu Sans Mono", "Courier New", "Courier";
+  font-size: 11pt;
+}
+pre {
+  margin: 0.3em 0 0.3em 0.9em;
+  padding: 0;
+  line-height: 1.8em;
+  white-space: pre-wrap;       /* css-3 */
+  white-space: -moz-pre-wrap !important;  /* Mozilla, since 1999 */
+}
+pre br { display: none; }
+
+h1, h2, h3 {
+  font-family: "Gill Sans";
+  padding: 0;
+  margin: 1.6em 0 0.6em 0;
+  line-height: 1.25em;
+  letter-spacing: 0.03em;
+}
+
+h1 {
+  font-size: 2em;
+  margin-top: 0;
+  padding-bottom: 0.3em;
+  border-bottom: 1px solid #808080;
+}
+
+h2 {
+  font-size: 1.3em;
+  padding-bottom: 0.3em;
+  border-bottom: 1px solid #a0a0a0;
+}
+
+h3 {
+  font-size: 1.1em;
+}
+
+blockquote {
+  padding-left: 2em;
+  padding-right: 2em;
+  margin-left: 0.3em;
+  margin-right: 0;
+  font-style: italic;
+}
+
+ul {
+  list-style-type: disc;
+}
+
+ul ul {
+  list-style-type: disc;
+  padding-left: 1em;
+}
+
+table {
+  border-spacing: 0;
+  width: 100%;
+  margin: 0.3em 0 0.3em 0;
+}
+
+th, td {
+  padding: 0.3em 0.5em 0.3em 0.5em;
+  border-bottom: 1px solid #D8D8D8;
+  vertical-align: top;
+  background-color: #FFFFFF;
+}
+
+th, thead td {
+  border-bottom: none;
+  background-color: #669966;
+  color: #ffffff;
+  text-align: left;
+}
+
+
+#wrap{
+  margin: 1em auto 2em auto;
+  text-align: left;
+  width: 65em;
+}
+
+
+#header {
+  margin: 0 0 3em 18em;
+  position: relative;
+}
+
+#header .tagline {
+  float: right;
+  font-size: 1.2em;
+  font-weight: bold;
+  position: absolute;
+  top: 0.6em;
+  right: 0;
+}
+
+
+#pages { /* Parent Wrapper for inside boxes */
+/*  display: inline; */ /* IE Hack */
+  width: 12em;
+  float: left;
+  margin-right: 2em;
+  font-family: "Gill Sans",sans-serif;
+  font-size: 11pt;
+  text-align: right;
+  border-right: 1px solid #ccc;
+  padding-right: 2em;
+}
+#pages ol {
+  list-style: none;
+  padding: 0;
+  margin: 0;
+}
+#pages ol li {
+  padding: 0.3em 0 0.6em 0em;
+  color: #669966;
+  font-weight: bold;
+}
+#pages ol li ol {
+  margin-top: 0.3em;
+  padding: 0.3em 0 0.9em 0.9em;
+}
+#pages ol li ol li {
+  padding: 0.3em 0 0.3em 0em;
+}
+#pages ol li a  {
+  font-weight: normal;
+}
+#pages form {
+  margin-top: 2em;
+  padding: 0.3em 0 0.5em 0.5em;
+}
+#pages ol li p  {
+  font-weight: normal;
+  color: #000;
+  vertical-align: middle;
+}
+
+
+#content { /* Parent Wrapper for inside boxes */
+/*  display: inline; *//* IE Hack */
+  float: left;
+  width: 44em;
+  margin-left: 0.3em;
+  margin-bottom: 5em;
+  word-wrap: break-word; /* prevents container divs from wrapping */
+}
+
+ol.toc {
+  list-style: none;
+  padding: 0;
+  margin: 0 0 2em 0;
+}
+ol.toc li {
+  padding: 0.3em 0 0.3em 0;
+  margin: 0;
+}
+ol.toc li ol.toc {
+  margin: 0;
+  padding-left: 0.9em;
+}
+
+
+#content p.tip, #content p.note {
+  margin: 0.9em 0 0 0;
+  padding: 0 0 2em 4em;
+}
+#content p.tip { background: url("../images/tip.png") 0 0 no-repeat; }
+#content p.note { background: url("../images/note.png") 0 0 no-repeat; }
+
+#content .footnote {
+  margin-top: 2.5em;
+}
+#content .footnote {
+  padding-top: 1.5em;
+  border-top: 1px solid #ccc;
+}
+#content .footnote + .footnote {
+  margin-top: 0.5em;
+  padding-top: 0;
+  border: none;
+}
+#content .footnote sup { font-weight: bold; }
+
+#content .footnote-links dt { font-weight: bold; }
+#content .footnote-links dt:after { content: ": " }
+#content .footnote-links dd { }
+
+
+#footer {
+  color: #888;
+  border-top: 1px solid #ccc;
+  font-size: 0.9em;
+  padding: 0.3em;
+  margin: 2em 0 3em 0em;
+  clear: both;
+}

Added: dev/buildr/1.5.3/site/css/print.css
==============================================================================
--- dev/buildr/1.5.3/site/css/print.css (added)
+++ dev/buildr/1.5.3/site/css/print.css Wed May 17 11:56:15 2017
@@ -0,0 +1,101 @@
+/* Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with this
+ * work for additional information regarding copyright ownership.  The ASF
+ * licenses this file to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
+
+
+@media print {
+  @page { size: letter; }
+  @page:first {
+    @top-left  { content: normal }
+    @top-right { content: normal }
+  }
+  @page:right {
+    margin: 1.25in 1in 1.5in 1.5in;
+    font: normal 10pt "Gill Sans" !important;
+    @top-left  { content: string(pagetitle); }
+    @top-right { content: counter(page); }
+  }
+  @page:left {
+    margin: 1.25in 1.5in 1.5in 1in;
+    font: normal 10pt "Gill Sans" !important;
+    @top-left  { content: counter(page); }
+    @top-right { content: string(pagetitle); }
+  }
+
+  title { string-set: doctitle content(); }
+
+  body {
+    font-family: "Palatino";
+    margin: 0;
+    color: black;
+    background: white;
+    font-size: 11pt;
+  }
+
+  h1 {
+    string-set: pagetitle content();
+    page-break-before: always;
+  }
+  h1:first-child { page-break-before: avoid; }
+  h1, h2, h3 {
+    font-family: "Gill Sans";
+  }
+  pre, p, blockquote { page-break-inside: avoid; }
+  pre, code {
+    font-family: "Monaco", "DejaVu Sans Mono", "Courier New", "Courier";
+    font-size: 9pt;
+  }
+  pre br {
+    display: none;
+  }
+  a:link, a:visited {
+    background: transparent;
+    text-decoration: none;
+  }
+
+
+  #header, #pages, #footer { display: none }
+  #wrap, #content {
+    float: none !important;
+    color: black;
+    background: transparent;
+    width: auto !important;
+    margin: 0;
+    padding: 0;
+    border: 0;
+  }
+
+  ol.toc a:link, ol.toc a:visited { text-decoration: none; }
+  ol.toc a:after { content: leader('.') target-counter(attr(href), page); }
+
+  .title {
+    page-break-before: always;
+    border: none;
+  }
+  .title img {
+    display: block;
+    width: 80%;
+    margin: 2em auto 4em auto;
+  }
+  p.preface {
+    page-break-before: always;
+    padding-top: 1.5in;
+  }
+  div.preface.quotes {
+    page-break-before: always;
+    padding-top: 1in;
+  }
+
+}

Added: dev/buildr/1.5.3/site/css/syntax.css
==============================================================================
--- dev/buildr/1.5.3/site/css/syntax.css (added)
+++ dev/buildr/1.5.3/site/css/syntax.css Wed May 17 11:56:15 2017
@@ -0,0 +1,23 @@
+/* Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with this
+ * work for additional information regarding copyright ownership.  The ASF
+ * licenses this file to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
+
+.highlight .k, .highlight .kp { color: blue } /* keyword */
+.highlight .no { color: darkblue } /* constant */
+.highlight .s1 { color: green } /* string */
+.highlight .n { color: black } /* identifier */
+.highlight .o, .highlight .p { color: darkblue } /* = + */
+.highlight .ss { color: darkblue } /* symbol */
+.highlight .c1 { color: gray } /* comment */



Mime
View raw message