Author: ericjohnson
Date: Fri Nov 5 17:48:22 2010
New Revision: 1031679
URL: http://svn.apache.org/viewvc?rev=1031679&view=rev
Log:
added code highlighting
Modified:
servicemix/sandbox/website20/pom.xml
servicemix/sandbox/website20/src/main/scala/scalate/Boot.scala
servicemix/sandbox/website20/src/main/webapp/contrib/building.page
servicemix/sandbox/website20/src/main/webapp/contrib/coding-standards.page
servicemix/sandbox/website20/src/main/webapp/contrib/committers-guide.page
servicemix/sandbox/website20/src/main/webapp/contrib/index.page
servicemix/sandbox/website20/src/main/webapp/contrib/releasing.page
servicemix/sandbox/website20/src/main/webapp/contrib/source.page
Modified: servicemix/sandbox/website20/pom.xml
URL:
http://svn.apache.org/viewvc/servicemix/sandbox/website20/pom.xml?rev=1031679&r1=1031678&r2=1031679&view=diff
==============================================================================
--- servicemix/sandbox/website20/pom.xml (original)
+++ servicemix/sandbox/website20/pom.xml Fri Nov 5 17:48:22 2010
@@ -33,7 +33,21 @@
<properties>
<netbeans.hint.deploy.server>Tomcat60</netbeans.hint.deploy.server>
- <scalate.version>1.3.1</scalate.version>
+ <scalate.version>1.4-SNAPSHOT</scalate.version>
+ <jetty-version>7.1.5.v20100705</jetty-version>
+ <jetty-plugin-version>7.1.5.v20100705</jetty-plugin-version>
+ <junit-version>4.8</junit-version>
+ <logback-version>0.9.24</logback-version>
+ <scala-version>2.8.0</scala-version>
+ <scala-plugin-version>2.14.2</scala-plugin-version>
+ <scalamd-version>1.2</scalamd-version>
+ <scalatest-version>1.2</scalatest-version>
+ <servlet-api-version>2.5</servlet-api-version>
+ <surefire-version>2.5</surefire-version>
+ <war-plugin-version>2.1-beta-1</war-plugin-version>
+ <maven.compiler.source>1.5</maven.compiler.source>
+ <maven.compiler.target>1.5</maven.compiler.target>
+ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
@@ -56,12 +70,12 @@
<dependency>
<groupId>org.fusesource.scalamd</groupId>
<artifactId>scalamd</artifactId>
- <version>1.2</version>
+ <version>${scalamd-version}</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
- <version>0.9.24</version>
+ <version>${logback-version}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
@@ -73,6 +87,43 @@
<build>
<plugins>
<plugin>
+ <groupId>org.scala-tools</groupId>
+ <artifactId>maven-scala-plugin</artifactId>
+ <version>${scala-plugin-version}</version>
+ <executions>
+ <execution>
+ <goals>
+ <goal>compile</goal>
+ <goal>testCompile</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <jvmArgs>
+ <jvmArg>-Xmx1024m</jvmArg>
+ </jvmArgs>
+ <args>
+ <!-- arg>-unchecked</arg -->
+ <arg>-deprecation</arg>
+ </args>
+ <scalaVersion>${scala-version}</scalaVersion>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <version>2.0.2</version>
+ <configuration>
+ <source>${maven.compiler.source}</source>
+ <target>${maven.compiler.target}</target>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-deploy-plugin</artifactId>
+ <version>2.5</version>
+ </plugin>
+ <plugin>
<groupId>org.fusesource.scalate</groupId>
<artifactId>maven-scalate-plugin</artifactId>
<version>${scalate.version}</version>
@@ -94,12 +145,43 @@
<plugin>
<artifactId>maven-war-plugin</artifactId>
+ <version>${war-plugin-version}</version>
+ <configuration>
+ <attachClasses>true</attachClasses>
+ </configuration>
</plugin>
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
- <version>7.1.5.v20100705</version>
+ <version>${jetty-plugin-version}</version>
+ <configuration>
+ <webAppConfig>
+ <contextPath>/</contextPath>
+ <resourceBase>${basedir}/src/main/webapp</resourceBase>
+ </webAppConfig>
+
+ <systemProperties>
+ <!-- enable easy JMX connection to JConsole -->
+ <systemProperty>
+ <name>com.sun.management.jmxremote</name>
+ <value />
+ </systemProperty>
+ <systemProperty>
+ <name>scalate.editor</name>
+ <value>${scalate.editor}</value>
+ </systemProperty>
+ <systemProperty>
+ <name>scalate.workdir</name>
+ <value>${scalate.workdir}</value>
+ </systemProperty>
+ <systemProperty>
+ <name>scalate.mode</name>
+ <value>${scalate.mode}</value>
+ </systemProperty>
+ </systemProperties>
+ <scanIntervalSeconds>0</scanIntervalSeconds>
+ </configuration>
</plugin>
</plugins>
</build>
@@ -109,7 +191,7 @@
<plugin>
<groupId>org.fusesource.scalate</groupId>
<artifactId>maven-linkchecker-plugin</artifactId>
- <version>${project.version}</version>
+ <version>${scalate.version}</version>
<configuration>
<excludedLinks>
<value>http://github.com/</value>
Modified: servicemix/sandbox/website20/src/main/scala/scalate/Boot.scala
URL:
http://svn.apache.org/viewvc/servicemix/sandbox/website20/src/main/scala/scalate/Boot.scala?rev=1031679&r1=1031678&r2=1031679&view=diff
==============================================================================
--- servicemix/sandbox/website20/src/main/scala/scalate/Boot.scala (original)
+++ servicemix/sandbox/website20/src/main/scala/scalate/Boot.scala Fri Nov 5
17:48:22 2010
@@ -2,15 +2,30 @@ package scalate
import org.fusesource.scalate.util.Logging
import java.util.concurrent.atomic.AtomicBoolean
+import org.fusesource.scalate.TemplateEngine
+import org.fusesource.scalamd.{MacroDefinition, Markdown}
+import java.util.regex.Matcher
+import org.fusesource.scalate.wikitext.Pygmentize
-class Boot extends Logging {
+class Boot(engine: TemplateEngine) extends Logging {
private var _initialised = new AtomicBoolean(false)
def run: Unit = {
if (_initialised.compareAndSet(false, true)) {
- println(">>>> Scalate SiteGen bootstrap invoked!!")
- info(">>>> Scalate SiteGen bootstrap invoked!!")
+
+ def pygmentize(m:Matcher):String = Pygmentize.pygmentize(m.group(2),
m.group(1))
+
+ // add some macros to markdown.
+ Markdown.macros :::= List(
+ MacroDefinition("""\{pygmentize::(.*?)\}(.*?)\{pygmentize\}""", "s",
pygmentize, true),
+
MacroDefinition("""\{pygmentize\_and\_compare::(.*?)\}(.*?)\{pygmentize\_and\_compare\}""",
"s", pygmentize, true)
+ )
+
+ for( ssp <- engine.filter("ssp"); md <- engine.filter("markdown") ) {
+ engine.pipelines += "ssp.md"-> List(ssp, md)
+ engine.pipelines += "ssp.markdown"-> List(ssp, md)
+ }
}
}
-}
+}
\ No newline at end of file
Modified: servicemix/sandbox/website20/src/main/webapp/contrib/building.page
URL:
http://svn.apache.org/viewvc/servicemix/sandbox/website20/src/main/webapp/contrib/building.page?rev=1031679&r1=1031678&r2=1031679&view=diff
==============================================================================
--- servicemix/sandbox/website20/src/main/webapp/contrib/building.page
(original)
+++ servicemix/sandbox/website20/src/main/webapp/contrib/building.page Fri Nov
5 17:48:22 2010
@@ -15,29 +15,39 @@ ServiceMix 4.x requires to use Maven 2.2
* Get the latest code [from SVN](source.html).
* Build the code with the following command
- mvn -Dmaven.test.skip=true -Pstep1 install
- mvn -Dmaven.test.skip=true -Pstep2 install
+{pygmentize:: text}
+mvn -Dmaven.test.skip=true -Pstep1 install
+mvn -Dmaven.test.skip=true -Pstep2 install
+{pygmentize}
<div class="tip">
<h1>Useful Hints</h1>
<ul>
- <l1>
+ <li>
<p>It may happen, that building step1 fails with an error message
regarding PMD or checkstyle. In this case you can add a <code>nochecks</code>
to the line so it looks like this:</p>
- <code>mvn -Dmaven.test.skip=true -Pstep1,nochecks install</code>
+
+{pygmentize:: text}
+mvn -Dmaven.test.skip=true -Pstep1,nochecks install
+{pygmentize}
</li>
<li>
<p>Also, if an out of memory error is encountered during compilation,
set the <code>MAVEN_OPTS</code> environment variable to a larger amount of
memory. Below is an example:</p>
- <code>MAVEN_OPTS=-Xmx768m</code>
+
+{pygmentize:: text}
+MAVEN_OPTS=-Xmx768m
+{pygmentize}
</li>
<LI>Some dependencies have POMs that specify repository URLs that are
no longer valid. This can cause invalid artifacts to be downloaded to your
local repository. You can add the following mirror to your Maven
<code>settings.xml</code> file to avoid this problem:
-<PRE class="code-java">
-<mirror>
- <id>servicemix-repo</id>
- <name>Apache ServiceMix Repository</name>
- <url>http:<SPAN
class="code-comment">//svn.apache.org/repos/asf/servicemix/m2-repo/</url>
-</SPAN> <mirrorOf>servicemix-repo,servicemix-m2-repo</mirrorOf>
-</mirror>
-</PRE>
+
+{pygmentize:: xml}
+<mirror>
+ <id>servicemix-repo</id>
+ <name>Apache ServiceMix Repository</name>
+ <url>http://svn.apache.org/repos/asf/servicemix/m2-repo/</url>
+ <mirrorOf>servicemix-repo,servicemix-m2-repo</mirrorOf>
+</mirror>
+{pygmentize}
+
</li>
</ul>
</div>
@@ -46,14 +56,16 @@ ServiceMix 4.x requires to use Maven 2.2
<h1>Please Note</h1>
<p>There is an <a
href="https://issues.apache.org/activemq/browse/SM-1079">issue</a> in building
if you use the system property style of declaring the profiles (i.e.,
<code>-Dprofile=step2</code>) as the XFire Maven plugin thinks
<code>step2</code> is a profile name it should use. This is fixed in the
ServiceMix trunk (3.3 or greater). To work around this issue, try the following
items below:</p>
<UL>
- <LI>Use the -Pstep2 style of declaring the profile as noted above</LI>
+ <LI>Use the <code>-Pstep2</code> style of declaring the profile as
noted above</LI>
<LI>Comment out the <A
href="http://fisheye6.atlassian.com/browse/servicemix/smx3/tags/servicemix-3.2.1/platforms/pom.xml?%3Dtrunk#l36"
class="external-link" rel="nofollow">Geronimo module in the platform
POM</A></LI>
</UL>
</div>
Next time you build, you can just run
- mvn -Dmaven.test.skip=true install
+{pygmentize:: text}
+mvn -Dmaven.test.skip=true install
+{pygmentize}
<div class="tip">
<h1>Building 3.1.1</h1>
@@ -65,11 +77,15 @@ Next time you build, you can just run
<h1>Building 3.0-M1 and 3.0-M2</h1>
<p>Note that this only works for versions from 3.0-M3.</p>
<p>To build previous versions, you need to run:</p>
- <pre>mvn -N install
+
+{pygmentize:: text}
+mvn -N install
cd tooling
-mvn install -Dmaven.test.skip=true
+mvn install -Dmaven.test.skip=true
cd ..
-mvn install -Dmaven.test.skip=true</pre>
+mvn install -Dmaven.test.skip=true
+{pygmentize}
+
</div>
## Code Conventions
Modified:
servicemix/sandbox/website20/src/main/webapp/contrib/coding-standards.page
URL:
http://svn.apache.org/viewvc/servicemix/sandbox/website20/src/main/webapp/contrib/coding-standards.page?rev=1031679&r1=1031678&r2=1031679&view=diff
==============================================================================
--- servicemix/sandbox/website20/src/main/webapp/contrib/coding-standards.page
(original)
+++ servicemix/sandbox/website20/src/main/webapp/contrib/coding-standards.page
Fri Nov 5 17:48:22 2010
@@ -20,65 +20,64 @@ In short:
* **No tabs** please!
For example:
-<DIV class="code panel" style="border-style: solid;border-width: 1px;"><DIV
class="codeContent panelContent">
-<PRE class="code-java">
-<SPAN class="code-keyword">public</SPAN> class Foo {
- <SPAN class="code-keyword">public</SPAN> void foo(<SPAN
class="code-object">boolean</SPAN> a, <SPAN class="code-object">int</SPAN> x,
<SPAN class="code-object">int</SPAN> y, <SPAN class="code-object">int</SPAN> z)
{
- <SPAN class="code-keyword">do</SPAN> {
- <SPAN class="code-keyword">try</SPAN> {
- <SPAN class="code-keyword">if</SPAN> (x > 0) {
- <SPAN class="code-object">int</SPAN> someVariable = a ? x
: y;
- } <SPAN class="code-keyword">else</SPAN> <SPAN
class="code-keyword">if</SPAN> (x < 0) {
- <SPAN class="code-object">int</SPAN> someVariable = (y +
z);
+
+{pygmentize:: java}
+public class Foo {
+ public void foo(boolean a, int x, int y, int z) {
+ do {
+ try {
+ if (x > 0) {
+ int someVariable = a ? x : y;
+ } else if (x < 0) {
+ int someVariable = (y + z);
someVariable = x = x + y;
- } <SPAN class="code-keyword">else</SPAN> {
- <SPAN class="code-keyword">for</SPAN> (<SPAN
class="code-object">int</SPAN> i = 0; i < 5; i++) {
+ } else {
+ for (int i = 0; i < 5; i++) {
doSomething(i);
}
}
- <SPAN class="code-keyword">switch</SPAN> (a) {
- <SPAN class="code-keyword">case</SPAN> 0:
+ switch (a) {
+ case 0:
doCase0();
- <SPAN class="code-keyword">break</SPAN>;
- <SPAN class="code-keyword">default</SPAN>:
+ break;
+ default:
doDefault();
}
- } <SPAN class="code-keyword">catch</SPAN> (Exception e) {
+ } catch (Exception e) {
processException(e.getMessage(), x + y, z, a);
- } <SPAN class="code-keyword">finally</SPAN> {
+ } finally {
processFinally();
}
- } <SPAN class="code-keyword">while</SPAN> (<SPAN
class="code-keyword">true</SPAN>);
+ } while (true);
- <SPAN class="code-keyword">if</SPAN> (2 < 3) {
- <SPAN class="code-keyword">return</SPAN>;
+ if (2 < 3) {
+ return;
}
- <SPAN class="code-keyword">if</SPAN> (3 < 4) {
- <SPAN class="code-keyword">return</SPAN>;
+ if (3 < 4) {
+ return;
}
- <SPAN class="code-keyword">do</SPAN> {
+ do {
x++
- } <SPAN class="code-keyword">while</SPAN> (x < 10000);
+ } while (x < 10000);
- <SPAN class="code-keyword">while</SPAN> (x < 50000) {
+ while (x < 50000) {
x++;
}
- <SPAN class="code-keyword">for</SPAN> (<SPAN
class="code-object">int</SPAN> i = 0; i < 5; i++) {
- <SPAN class="code-object">System</SPAN>.out.println(i);
+ for (int i = 0; i < 5; i++) {
+ System.out.println(i);
}
}
- <SPAN class="code-keyword">private</SPAN> class InnerClass <SPAN
class="code-keyword">implements</SPAN> I1, I2 {
- <SPAN class="code-keyword">public</SPAN> void bar() <SPAN
class="code-keyword">throws</SPAN> E1, E2 {
+ class InnerClass implements I1, I2 {
+ void bar() throws E1, E2 {
}
}
}
-</PRE>
-</DIV></DIV>
+{pygmentize}
## XML
@@ -91,15 +90,13 @@ All methods of an interface are `public
However this behavior works best with most tools and IDEs and seems to be
common practice so we see no reason to disallow this practice. e.g:
-<DIV class="code panel" style="border-style: solid;border-width: 1px;"><DIV
class="codeContent panelContent">
-<PRE class="code-java">
-<SPAN class="code-keyword">public</SPAN> <SPAN
class="code-keyword">interface</SPAN> MyInterface {
- <SPAN class="code-keyword">public</SPAN> <SPAN
class="code-keyword">static</SPAN> <SPAN class="code-keyword">final</SPAN>
<SPAN class="code-object">int</SPAN> MY_INTEGER = 0;
+{pygmentize:: java}
+public interface MyInterface {
+ public static final int MY_INTEGER = 0;
- <SPAN class="code-keyword">public</SPAN> <SPAN
class="code-keyword">abstract</SPAN> void doSomething();
+ public abstract void doSomething();
}
-</PRE>
-</DIV></DIV>
+{pygmentize}
This has the added advantage that the interface can be converted into an
abstract class (and copy and paste individual definitions) without changing
anything.
@@ -115,7 +112,10 @@ Preferably add `public`/`static`/`final`
* If you throw an exception, where the caller would decide that it is no error
in the context of the caller, you force the caller to write an exception
handler in his regular part or to abort i.e., you force the caller to mix
regular code with exception handling. That is the opposite of the intentention
of exception handling.
* Bad example:
- java.lang.Class.forName(String) throws ClassNotFoundException
+ {pygmentize:: java}
+ java.lang.Class.forName(String) throws ClassNotFoundException
+ {pygmentize}
+
In most programs/situations it is an error if this method does not find
the class, therefore it throws an exception and forestalls the decision of the
caller.
But maybe there is a program that should check a list of class names,
whether the classes are present or not. Such a program is forced to mix its
regular code with error handling of an exception, that is no error at all in
that context.
The method should return a special result value instead: null. Many
callers of that method have expected that situation and therefore are not in an
unexpected situation/exceptional state. They could decide the situation on
their own.
@@ -187,29 +187,27 @@ The eclipse formater settings are availa
# Example
-<DIV class="code panel" style="border-style: solid;border-width: 1px;"><DIV
class="codeContent panelContent">
-<PRE class="code-java">
-<SPAN class="code-keyword">private</SPAN> <SPAN
class="code-keyword">static</SPAN> <SPAN class="code-keyword">final</SPAN> Log
log = LogFactory.getLog(MyClass.class);
-
-<SPAN class="code-keyword">public</SPAN> void doSomeStuff(Stuff stuff) <SPAN
class="code-keyword">throws</SPAN> StuffException {
- <SPAN class="code-object">boolean</SPAN> logTrace = log.isTraceEnabled();
- <SPAN class="code-keyword">try</SPAN> {
- <SPAN class="code-keyword">if</SPAN> (logTrace) {
- log.trace(<SPAN class="code-quote">"About to <SPAN
class="code-keyword">do</SPAN> stuff "</SPAN> + stuff);
+{pygmentize:: java}
+private static final Log log = LogFactory.getLog(MyClass.class);
+
+public void doSomeStuff(Stuff stuff) throws StuffException {
+ boolean logTrace = log.isTraceEnabled();
+ try {
+ if (logTrace) {
+ log.trace("About to do stuff " + stuff);
}
stuff.doSomething();
- <SPAN class="code-keyword">if</SPAN> (logTrace) {
- log.trace(<SPAN class="code-quote">"Did some stuff
"</SPAN>);
+ if (logTrace) {
+ log.trace("Did some stuff");
}
- } <SPAN class="code-keyword">catch</SPAN> (BadException e) {
- <SPAN class="code-comment">// don't log - leave it to caller
-</SPAN> <SPAN class="code-keyword">throw</SPAN> <SPAN
class="code-keyword">new</SPAN> StuffException(<SPAN
class="code-quote">"Something bad happened"</SPAN>, e);
- } <SPAN class="code-keyword">catch</SPAN> (IgnorableException e) {
- <SPAN class="code-comment">// didn't cache <SPAN
class="code-keyword">this</SPAN> as we don't expect to come here a lot
-</SPAN> <SPAN class="code-keyword">if</SPAN> (log.isDebugEnabled()) {
- log.debug(<SPAN class="code-quote">"Ignoring problem doing
stuff "</SPAN>+stuff, e);
+ } catch (BadException e) {
+ // don't log - leave it to caller
+ throw new StuffException("Something bad happened", e);
+ } catch (IgnorableException e) {
+ // didn't cache this as we don't expect to come here a lot
+ if (log.isDebugEnabled()) {
+ log.debug("Ignoring problem doing stuff " +stuff, e);
}
}
}
-</PRE>
-</DIV></DIV>
\ No newline at end of file
+{pygmentize}
\ No newline at end of file
Modified:
servicemix/sandbox/website20/src/main/webapp/contrib/committers-guide.page
URL:
http://svn.apache.org/viewvc/servicemix/sandbox/website20/src/main/webapp/contrib/committers-guide.page?rev=1031679&r1=1031678&r2=1031679&view=diff
==============================================================================
--- servicemix/sandbox/website20/src/main/webapp/contrib/committers-guide.page
(original)
+++ servicemix/sandbox/website20/src/main/webapp/contrib/committers-guide.page
Fri Nov 5 17:48:22 2010
@@ -42,6 +42,7 @@ Please see the [Subversion client EOL co
Below is an example for use in Java files. Other file types may need to
change the comment style.
+ {pygmentize:: java}
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed
with
@@ -58,6 +59,7 @@ Please see the [Subversion client EOL co
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+ {pygmentize}
* All contributions **must** comply with the terms of the [Apache Contributor
License Agreement (CLA)](http://www.apache.org/licenses/cla.pdf).
* Any questions about copyright or patent issues should be raised on the dev
mailing list **before** contributing or committing code.
Modified: servicemix/sandbox/website20/src/main/webapp/contrib/index.page
URL:
http://svn.apache.org/viewvc/servicemix/sandbox/website20/src/main/webapp/contrib/index.page?rev=1031679&r1=1031678&r2=1031679&view=diff
==============================================================================
--- servicemix/sandbox/website20/src/main/webapp/contrib/index.page (original)
+++ servicemix/sandbox/website20/src/main/webapp/contrib/index.page Fri Nov 5
17:48:22 2010
@@ -5,7 +5,7 @@ title: Contributing
# Anyone Can Contribute!
-There are many ways you can help make ServiceMix a better piece of software -
please dive in and help!
+There are many ways you can help make ServiceMix a better piece of software -
please dive in and help!
Surf the documentation - if somethings confusing or not clear, let us know or
even edit it yourself. All you need to do is [register for a wiki
account](http://cwiki.apache.org/confluence/signup.action) and you can begin
contributing your own docs, fixing docs, updating docs, etc.
@@ -56,11 +56,15 @@ We gladly accept patches if you can find
Most IDEs can create nice patches now very easily. If you're a command line
person try the following to create the patch:
- diff -u Main.java.orig Main.java >> patchfile.txt
+{pygmentize:: text}
+diff -u Main.java.orig Main.java >> patchfile.txt
+{pygmentize}
or, if you're working against the code base checked out from the Subversion
repository (this is the best way to work), then just use the `svn diff` command
in the Subversion client.
- svn diff Main.java >> patchfile.txt
+{pygmentize:: text}
+svn diff Main.java >> patchfile.txt
+{pygmentize}
<div class="note">
<h1>Make Sure to Include All New Files in Your Patch</h1>
Modified: servicemix/sandbox/website20/src/main/webapp/contrib/releasing.page
URL:
http://svn.apache.org/viewvc/servicemix/sandbox/website20/src/main/webapp/contrib/releasing.page?rev=1031679&r1=1031678&r2=1031679&view=diff
==============================================================================
--- servicemix/sandbox/website20/src/main/webapp/contrib/releasing.page
(original)
+++ servicemix/sandbox/website20/src/main/webapp/contrib/releasing.page Fri Nov
5 17:48:22 2010
@@ -17,52 +17,51 @@ To prepare and perform a release you mus
</UL>
-<P>Your settings.xml should look like:</P>
+Your settings.xml should look like:
-<DIV class="code panel" style="border-width: 1px;"><DIV class="codeContent
panelContent">
-<PRE class="code-xml">
-<SPAN class="code-tag"><settings></SPAN>
+{pygmentize:: xml}
+<settings>
...
- <SPAN class="code-tag"><profiles></SPAN>
- <SPAN class="code-tag"><profile></SPAN>
- <SPAN class="code-tag"><id></SPAN>release<SPAN
class="code-tag"></id></SPAN>
- <SPAN class="code-tag"><properties></SPAN>
- <SPAN class="code-tag"><gpg.passphrase></SPAN> <SPAN
class="code-tag"><SPAN class="code-comment"><!-- YOUR KEY PASSPHRASE
--></SPAN></SPAN> <SPAN class="code-tag"></gpg.passphrase></SPAN>
- <SPAN class="code-tag"></properties></SPAN>
- <SPAN class="code-tag"></profile></SPAN>
- <SPAN class="code-tag"></profiles></SPAN>
+ <profiles>
+ <profile>
+ <id>release</id>
+ <properties>
+ <gpg.passphrase> <!-- YOUR KEY PASSPHRASE --> </gpg.passphrase>
+ </properties>
+ </profile>
+ </profiles>
...
- <SPAN class="code-tag"><servers></SPAN>
- <SPAN class="code-tag"><SPAN class="code-comment"><!-- To publish a
snapshot of some part of Maven --></SPAN></SPAN>
- <SPAN class="code-tag"><server></SPAN>
- <SPAN class="code-tag"><id></SPAN>apache.snapshots.https<SPAN
class="code-tag"></id></SPAN>
- <SPAN class="code-tag"><username></SPAN> <SPAN
class="code-tag"><SPAN class="code-comment"><!-- YOUR APACHE SVN USERNAME
--></SPAN></SPAN> <SPAN class="code-tag"></username></SPAN>
- <SPAN class="code-tag"><password></SPAN> <SPAN
class="code-tag"><SPAN class="code-comment"><!-- YOUR APACHE SVN PASSWORD
--></SPAN></SPAN> <SPAN class="code-tag"></password></SPAN>
- <SPAN class="code-tag"></server></SPAN>
- <SPAN class="code-tag"><SPAN class="code-comment"><!-- To stage a
release of some part of Maven --></SPAN></SPAN>
- <SPAN class="code-tag"><server></SPAN>
- <SPAN class="code-tag"><id></SPAN>apache.releases.https<SPAN
class="code-tag"></id></SPAN>
- <SPAN class="code-tag"><username></SPAN> <SPAN
class="code-tag"><SPAN class="code-comment"><!-- YOUR APACHE SVN USERNAME
--></SPAN></SPAN> <SPAN class="code-tag"></username></SPAN>
- <SPAN class="code-tag"><password></SPAN> <SPAN
class="code-tag"><SPAN class="code-comment"><!-- YOUR APACHE SVN PASSWORD
--></SPAN></SPAN> <SPAN class="code-tag"></password></SPAN>
- <SPAN class="code-tag"></server></SPAN>
+ <servers>
+ <!-- To publish a snapshot of some part of Maven -->
+ <server>
+ <id>apache.snapshots.https</id>
+ <username> <!-- YOUR APACHE SVN USERNAME --> </username>
+ <password> <!-- YOUR APACHE SVN PASSWORD --> </password>
+ </server>
+ <!-- To stage a release of some part of Maven -->
+ <server>
+ <id>apache.releases.https</id>
+ <username> <!-- YOUR APACHE SVN USERNAME --> </username>
+ <password> <!-- YOUR APACHE SVN PASSWORD --> </password>
+ </server>
...
- <SPAN class="code-tag"></servers></SPAN>
-<SPAN class="code-tag"></settings></SPAN>
+ </servers>
+</settings>
+{pygmentize}
-</PRE>
-</DIV></DIV>
# Staging the Release Candidate
<OL>
<LI>grab the latest <A href="source.html" title="Source">Source</A>
-<DIV class="code panel" style="border-width: 1px;"><DIV class="codeContent
panelContent">
-<PRE class="code-java">
-svn co https:<SPAN
class="code-comment">//svn.apache.org/repos/asf/servicemix/$PART/trunk</SPAN>
-</PRE>
-</DIV></DIV>
-<P>where $PART is what you want to release. For example, it can be:</P>
- <UL>
+
+{pygmentize:: text}
+svn co https://svn.apache.org/repos/asf/servicemix/$PART/trunk
+{pygmentize}
+
+<p>where <code>$PART</code> is what you want to release. For example, it can
be:</p>
+
+<UL>
<LI>smx3</LI>
<LI>smx4</LI>
<LI>components/bindings/servicemix-cxf-bc</LI>
@@ -74,22 +73,23 @@ svn co https:<SPAN class="code-comment">
<LI>make sure there is no snapshots in the POMs to be
released</LI>
<LI>make sure everything builds fine</LI>
<LI>check that your POMs will not lose content when they are
rewritten during the release process:
-<DIV class="code panel" style="border-width: 1px;"><DIV class="codeContent
panelContent">
-<PRE class="code-java">
+
+{pygmentize:: text}
mvn release:prepare -DdryRun
-</PRE>
-</DIV></DIV>
+{pygmentize}
+
<P>and diff the original pom.xml with the one named pom.xml.tag to see if the
license or any other info has been removed. This has been known to happen if
the starting <project> tag is not a single line. The only things that
should be different between these files are the <version> and <scm>
elements. If there are any other changes, you must fix the original pom.xml
file and commit before proceeding with the release. </P></LI>
<LI>publish a snapshot
-<DIV class="code panel" style="border-width: 1px;"><DIV class="codeContent
panelContent">
-<PRE class="code-java">
+
+{pygmentize:: text}
$ mvn deploy
...
[INFO] [deploy:deploy]
[INFO] Retrieving previous build number from apache.snapshots.https
...
-</PRE>
-</DIV></DIV></LI>
+{pygmentize}
+
+</LI>
</OL>
<UL>
<LI>if you experience an error during deployment like a HTTP
401 check your settings for the required server entries as outlined in the
<B>Prerequisites</B></LI>
@@ -98,18 +98,17 @@ $ mvn deploy
</UL>
</LI>
<LI>prepare the release
-<DIV class="code panel" style="border-width: 1px;"><DIV class="codeContent
panelContent">
-<PRE class="code-java">
+
+{pygmentize:: text}
mvn release:clean
mvn release:prepare
-</PRE>
-</DIV></DIV></LI>
+{pygmentize}
+</LI>
<LI>stage the release for a vote
-<DIV class="code panel" style="border-width: 1px;"><DIV class="codeContent
panelContent">
-<PRE class="code-java">
+
+{pygmentize:: text}
mvn release:perform
-</PRE>
-</DIV></DIV>
+{pygmentize}
<UL>
<LI>the release will automatically be inserted into a temporary
staging repository for you, see the Nexus <A
href="http://www.sonatype.com/books/nexus-book/reference/staging.html"
class="external-link" rel="nofollow">staging documentation</A> for full
details</LI>
<LI>you can continue to use mvn release:prepare and mvn
release:perform on other sub-projects as necessary on the same machine and they
will be combined in the same staging repository</LI>
@@ -134,35 +133,31 @@ mvn release:perform
Propose a vote on the dev list with the closed issues, the issues left, and
the staging repository - for example:
-<DIV class="code panel" style="border-width: 1px;"><DIV class="codeContent
panelContent">
-<PRE class="code-java">
-To: <SPAN class="code-quote">"ServiceMix Developers List"</SPAN>
<[email protected]>
+{pygmentize:: text}
+To: "ServiceMix Developers List" <[email protected]>
Subject: [VOTE] Release ServiceMix [Component] XXX version Y.Z
Hi,
-We solved N issues in <SPAN class="code-keyword">this</SPAN> release:
-http:<SPAN class="code-comment">//issues.apache.org/jira/...
-</SPAN>
+We solved N issues in this release:
+http://issues.apache.org/jira/...
+
There are still some outstanding issues:
-http:<SPAN class="code-comment">//issues.apache.org/jira/...
-</SPAN>
+http://issues.apache.org/jira/...
+
Staging repository:
-https:<SPAN
class="code-comment">//repository.apache.org/content/repositories/servicemix-staging-[YOUR
REPOSITORY ID]/
-</SPAN>
-Please vote to approve <SPAN class="code-keyword">this</SPAN> release:
+https://repository.apache.org/content/repositories/servicemix-staging-[YOUR
REPOSITORY ID]/
+
+Please vote to approve this release:
[ ] +1 Approve the release
[ ] -1 Veto the release (please provide specific comments)
-This vote will be open <SPAN class="code-keyword">for</SPAN> 72 hours.
-</PRE>
-</DIV></DIV>
+This vote will be open for 72 hours.
+{pygmentize}
-<UL>
- <LI>to get the JIRA release notes link, browse to the ServiceMix <A
href="http://issues.apache.org/jira/browse/ServiceMix" class="external-link"
rel="nofollow">JIRA</A> page, select Release Notes and choose the relevant
sub-project release and format (HTML)</LI>
- <LI>to get the list of issues left in JIRA, select the Open Issues tab
on the main ServiceMix page, and select the relevant sub-project.</LI>
-</UL>
+* to get the JIRA release notes link, browse to the ServiceMix
[JIRA](http://issues.apache.org/jira/browse/ServiceMix) page, select **Release
Notes** and choose the relevant sub-project release and format (HTML)
+* to get the list of issues left in JIRA, select the Open Issues tab on the
main ServiceMix page, and select the relevant sub-project.
# Wait for the Results
@@ -174,22 +169,21 @@ This vote will be open <SPAN class="code
<P>The list of binding voters is available at <A
href="http://servicemix.apache.org/team.html" class="external-link"
rel="nofollow">http://servicemix.apache.org/team.html</A>.</P>
<P>If the vote is successful, post the result to the dev list - for
example:</P>
-<DIV class="code panel" style="border-width: 1px;"><DIV class="codeContent
panelContent">
-<PRE class="code-java">
-To: <SPAN class="code-quote">"ServiceMix Developers List"</SPAN>
<[email protected]>
+
+{pygmentize:: text}
+To: "ServiceMix Developers List" <[email protected]>
Subject: [RESULT] [VOTE] Release ServiceMix [Component] XXX version Y.Z
Hi,
The vote has passed with the following result :
- +1 (binding): <<list of names>>
- +1 (non binding): <<list of names>>
+ +1 (binding): <<list of names>>
+ +1 (non binding): <<list of names>>
-I will copy <SPAN class="code-keyword">this</SPAN> release to the ServiceMix
dist directory and
+I will copy this release to the ServiceMix dist directory and
promote the artifacts to the central Maven repository.
-</PRE>
-</DIV></DIV>
+{pygmentize}
<P>If the vote is unsuccessful, you need to fix the issues and restart the
process - see <B>Canceling the Release</B>.<BR>
If the vote is successful, you need to promote and distribute the release -
see <B>Promoting the Release</B>.</P>
@@ -238,33 +232,31 @@ Update the [Xml schemas](xml-schemas.htm
# Announcing the ServiceMix Release
-<DIV class="code panel" style="border-width: 1px;"><DIV class="codeContent
panelContent">
-<PRE class="code-java">
-To: <SPAN class="code-quote">"ServiceMix Developers List"</SPAN>
<[email protected]>
+{pygmentize:: text}
+To: "ServiceMix Developers List" <[email protected]>
Subject: [ANN] ServiceMix XXX version Y.Z Released
The ServiceMix team is pleased to announce the release of ServiceMix XXX
version Y.Z
-<<insert <SPAN class="code-object">short</SPAN> description of the
sub-project>>
+<<insert short description of the sub-project>>
+
+ http://servicemix.apache.org/XXX.html
+
+This release is available from http://servicemix.apache.org/downloads and
Maven:
- http:<SPAN class="code-comment">//servicemix.apache.org/XXX.html
-</SPAN>
-This release is available from http:<SPAN
class="code-comment">//servicemix.apache.org/downloads and Maven:
-</SPAN>
- <dependency>
- <groupId>org.apache.servicemix</groupId>
- <artifactId>org.apache.servicemix.XXX</artifactId>
- <version>Y.Z</version>
- </dependency>
+ <dependency>
+ <groupId>org.apache.servicemix</groupId>
+ <artifactId>org.apache.servicemix.XXX<artifactId>
+ <version>Y.Z</version>
+ </dependency>
Release Notes:
-<<insert release notes in text format from JIRA>>
+<<insert release notes in text format from JIRA>>
Enjoy!
-The ServiceMix team
-</PRE>
-</DIV></DIV>
+{pygmentize}
-Remember to forward this announcement to [email protected] - try not
to cross-post (CC announcements to both user and dev lists.
\ No newline at end of file
+Remember to forward this announcement to `[email protected]` - try
not to cross-post (CC announcements to both user and dev lists).
\ No newline at end of file
Modified: servicemix/sandbox/website20/src/main/webapp/contrib/source.page
URL:
http://svn.apache.org/viewvc/servicemix/sandbox/website20/src/main/webapp/contrib/source.page?rev=1031679&r1=1031678&r2=1031679&view=diff
==============================================================================
--- servicemix/sandbox/website20/src/main/webapp/contrib/source.page (original)
+++ servicemix/sandbox/website20/src/main/webapp/contrib/source.page Fri Nov 5
17:48:22 2010
@@ -24,13 +24,16 @@ A hearty thanks to [Atlassian](http://at
This project's SVN repository can be checked out anonymously using the
following command:
- svn co http://svn.apache.org/repos/asf/servicemix/
+{pygmentize:: text}
+svn co http://svn.apache.org/repos/asf/servicemix/
+{pygmentize}
## Committer Checkout from the ServiceMix SVN Repo
ServiceMix committers can check out using the following command:
-
- svn co https://svn.apache.org/repos/asf/servicemix/smx3/trunk
+{pygmentize:: text}
+svn co https://svn.apache.org/repos/asf/servicemix/smx3/trunk
+{pygmentize}
<div class="warn">
<h1>Commiters Only</h1>
@@ -48,9 +51,12 @@ Due to license issues, some extensions t
This project's SVN repository can be checked out anonymously with the
following command:
- svn co http://svn.codehaus.org/servicemix/trunk
-
+{pygmentize:: text}
+svn co http://svn.codehaus.org/servicemix/trunk
+{pygmentize}
If you are a committer, use the following command:
- svn co https://svn.codehaus.org/servicemix/trunk
\ No newline at end of file
+{pygmentize:: text}
+svn co https://svn.codehaus.org/servicemix/trunk
+{pygmentize}
\ No newline at end of file