-
Notifications
You must be signed in to change notification settings - Fork 0
/
development.html
151 lines (150 loc) · 11.1 KB
/
development.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
<!DOCTYPE html>
<!--
| Generated by Apache Maven Doxia Site Renderer 1.8 from src/site/apt/development.apt at 2019-08-07
| Rendered using Apache Maven Fluido Skin 1.7
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="author" content="Hervé Boutemy" />
<meta name="Date-Creation-yyyymmdd" content="20090601" />
<meta name="Date-Revision-yyyymmdd" content="20190807" />
<meta http-equiv="Content-Language" content="en" />
<title>JavaNCSS – JavaNCSS Development Details</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.7.min.css" />
<link rel="stylesheet" href="./css/site.css" />
<link rel="stylesheet" href="./css/print.css" media="print" />
<script type="text/javascript" src="./js/apache-maven-fluido-1.7.min.js"></script>
</head>
<body class="topBarDisabled">
<div class="container-fluid">
<div id="banner">
<div class="pull-left"><a href="http://javancss.github.io/" id="bannerLeft"><h2>JavaNCSS</h2>
</a></div>
<div class="pull-right"></div>
<div class="clear"><hr/></div>
</div>
<div id="breadcrumbs">
<ul class="breadcrumb">
<li class=""><a href="http://www.kclee.de/clemens/java/" class="externalLink" title="Chr. Clemens Lee">Chr. Clemens Lee</a><span class="divider">/</span></li>
<li class=""><a href="http://javancss.github.io/" class="externalLink" title="JavaNCSS">JavaNCSS</a><span class="divider">/</span></li>
<li class="active ">JavaNCSS Development Details</li>
<li id="publishDate" class="pull-right"><span class="divider">|</span> Last Published: 2019-08-07</li>
<li id="projectVersion" class="pull-right"><span class="divider">|</span>Version: 34.55-SNAPSHOT</li>
<li class="pull-right"><span class="divider">|</span>
<a href="http://ant.apache.org/" class="externalLink" title="Ant">Ant</a></li>
<li class="pull-right"><span class="divider">|</span>
<a href="http://maven.apache.org/" class="externalLink" title="Maven">Maven</a></li>
<li class="pull-right"><a href="http://www.mojohaus.org/javancss-maven-plugin/" class="externalLink" title="JavaNCSS Maven Plugin">JavaNCSS Maven Plugin</a></li>
</ul>
</div>
<div class="row-fluid">
<div id="leftColumn" class="span2">
<div class="well sidebar-nav">
<ul class="nav nav-list">
<li class="nav-header">General Information</li>
<li><a href="index.html" title="Home"><span class="none"></span>Home</a></li>
<li><a href="usage.html" title="Usage"><span class="none"></span>Usage</a></li>
<li><a href="specification.html" title="Specification"><span class="none"></span>Specification</a></li>
<li><a href="release-history.html" title="Release History"><span class="none"></span>Release History</a></li>
<li><a href="credits.html" title="Credits"><span class="none"></span>Credits</a></li>
<li><a href="links.html" title="Related Links"><span class="none"></span>Related Links</a></li>
<li class="nav-header">Development</li>
<li class="active"><a href="#"><span class="none"></span>Development</a></li>
<li><a href="todo.html" title="TODO"><span class="none"></span>TODO</a></li>
<li class="nav-header">Project Documentation</li>
<li><a href="project-info.html" title="Project Information"><span class="icon-chevron-right"></span>Project Information</a></li>
<li><a href="project-reports.html" title="Project Reports"><span class="icon-chevron-right"></span>Project Reports</a></li>
</ul>
<hr />
<div id="poweredBy">
<div class="clear"></div>
<div class="clear"></div>
<div class="clear"></div>
<div class="clear"></div>
<a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
</div>
</div>
</div>
<div id="bodyColumn" class="span10" >
<div class="section">
<h2><a name="JavaNCSS_Development_Details"></a>JavaNCSS Development Details</h2>
<p>JavaNCSS has been moved on August 2008 to Codehaus for a <a href="./source-repository.html">shared source code repository</a>. There is also a <a href="./issue-tracking.html">bug tracking</a> tool. Furthermore there are a few <a href="./mail-lists.html">mailing lists</a> available for this project.</p>
<p>JavaNCSS is built using Maven: <tt>mvn package</tt>.</p>
<p>JavaNCSS site is built with Maven: <tt>mvn site</tt>.</p></div>
<div class="section">
<h2><a name="Guide_for_JavaNCSS_Contributors"></a>Guide for JavaNCSS Contributors</h2>
<p>As with any open source project, there are several ways you can help:</p>
<ul>
<li>Join the <a href="./mail-lists.html">mailing lists</a> and answer other user's questions</li>
<li>Report bugs, feature requests and other issues in the <a href="./issue-tracking.html">issue tracking</a> application.</li>
<li>Build JavaNCSS for yourself, in order to fix bugs.</li>
<li>Submit patches to reported issues (both those you find, or that others have filed)</li>
<li>Help with the documentation by pointing out areas that are lacking or unclear, and if you are so inclined, submitting patches to correct it.</li></ul>
<p>Your participation in the community is much appreciated!</p>
<div class="section">
<h3><a name="Creating_and_submitting_a_patch"></a>Creating and submitting a patch</h3>
<p>When you have either completed an issue or just want some feedback on the work you have done, create a patch and attach the patch to the issue in question. We have a couple of guidelines when creating patches:</p>
<ul>
<li>Patch the trunk, not a tag. Otherwise, your patch is outdated the moment you create it and might not be applicable to the development head.</li>
<li>Add a unit test to show the bug fixed or the new feature.</li>
<li>Always create the patch from the root of the project, i.e. where the <tt>pom.xml</tt> file is.</li>
<li>If this was a new piece of work without a JIRA issue, create a JIRA issue for it now.</li>
<li>Name the file <tt>JAVANCSS-<issue number>.patch</tt>.</li>
<li>Attach the patch to the JIRA issue you were working on (do not paste its content in as a comment though). When adding the patch add a comment to the issue explaining what it does. Shortly after, someone will apply the patch and close the issue.</li></ul>
<p>An example on how to create a patch from the command line:</p>
<div>
<pre>$ svn diff > JAVANCSS-123.patch</pre></div>
<p>If you are picking up an issue with a existing patch attached to the issue, you can apply the patch to your working directory directly from JIRA like this. The <tt>wget</tt> and <tt>patch</tt> commands will only be available if you are on a UNIX platform or using Cygwin on windows.</p>
<div>
<pre>$ wget -O - -q <URL to the patch from JIRA> | patch -p0</pre></div>
<p>If the patch is in a local file <tt>JAVANCSS-123.patch</tt> and you want to apply that use this command:</p>
<div>
<pre>$ patch -p0 < JAVANCSS-123.patch</pre></div></div></div>
<div class="section">
<h2><a name="Guide_for_JavaNCSS_Committers"></a>Guide for JavaNCSS Committers</h2>
<p>JavaNCSS uses the same formatting conventions as Maven. There is an Eclipse and an Idea configuration, see <a class="externalLink" href="http://maven.apache.org/developers/conventions/code.html">Maven Conventions</a>.</p>
<p>To deploy JavaNCSS site or artifact (either SNAPSHOT or release), you'll need to have your Codehaus credentials defined in <tt>~/.m2/settings.xml</tt> for <tt>codehaus.org</tt> server:</p>
<div>
<pre><settings>
<servers>
<server>
<id>codehaus.org</id>
<username>your username</username>
<password>your password</password>
</server>
</servers>
</settings></pre></div>
<p>Note that starting with Maven 2.1.0, password can be stored encrypted: see <a class="externalLink" href="http://maven.apache.org/guides/mini/guide-encryption.html">the encryption guide</a> on Maven site</p>
<p>JavaNCSS <tt>pom.xml</tt> is actually configured to deploy the site on <a class="externalLink" href="http://javancss.github.io/">javancss.github.io</a>: see <tt>distributionManagement/site</tt> section. The site can be deployed at any time with <tt>mvn site-deploy</tt> command. <a class="externalLink" href="http://www.kclee.de/clemens/java/javancss/">http://www.kclee.de/clemens/java/javancss/</a> can only be deployed by Clemens.</p>
<p>JavaNCSS SNAPSHOTs can be deployed on <a class="externalLink" href="http://snapshots.repository.codehaus.org/org/codehaus/javancss/javancss/">Codehaus Snapshot repository</a> with <tt>mvn deploy</tt> command.</p>
<p>JavaNCSS release is automated with <a class="externalLink" href="http://maven.apache.org/plugins/maven-release-plugin/">Maven release plugin</a>. It has 3 steps:</p>
<ol style="list-style-type: decimal">
<li>run <a class="externalLink" href="http://maven.apache.org/plugins/maven-release-plugin/examples/prepare-release.html"><tt>mvn release:prepare</tt></a> to prepare the release (including svn commits),</li>
<li>if everything is ok, run <a class="externalLink" href="http://maven.apache.org/plugins/maven-release-plugin/examples/perform-release.html"><tt>mvn release:perform</tt></a> to deploy the artifact and the site,</li>
<li>then update <a class="externalLink" href="http://jira.codehaus.org/browse/JAVANCSS">Jira</a>: follow "Administer Project" then "Manage versions" links to mark the release done and declare the next version.</li></ol>
<p>The release is deployed on <a class="externalLink" href="http://repository.codehaus.org/org/codehaus/javancss/">Codehaus main repository</a>, which is sync'ed once a day on <a class="externalLink" href="http://repo.maven.apache.org/maven2/org/codehaus/javancss/">Maven Central repository</a>. Note that as soon as a release has been sync'ed to Maven Central repository, you can't change anything: any change on Codehaus main repository will be ignored by Maven Central repository.</p>
<div class="section">
<h3><a name="Voting"></a>Voting</h3>
<p>To get some feedback from the community for important events of the project, a vote mecanism is encouraged inspired by <a class="externalLink" href="http://www.apache.org/foundation/voting.html">Apache Voting Process</a>. Of course, JavaNCSS community is a lot lighter than Apache, then these instructions are only to be taken as an indication.</p></div></div>
<div class="section">
<h2><a name="External_Resources"></a>External Resources</h2>
<ul>
<li><a class="externalLink" href="http://maven.apache.org/guides/mini/guide-releasing.html">Releasing guide</a> on Maven site</li>
<li>Sonatype's <a class="externalLink" href="http://www.sonatype.com/books/maven-book/reference/">Maven: The Definitive Guide</a></li></ul></div>
</div>
</div>
</div>
<hr/>
<footer>
<div class="container-fluid">
<div class="row-fluid">
<p>Copyright ©1997–2019
Chr. Clemens Lee and companions.
All rights reserved.</p>
</div>
</div>
</footer>
</body>
</html>