You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by el...@apache.org on 2015/07/06 00:34:02 UTC

svn commit: r1689297 - in /directory/site/trunk: content/api/download-old-versions.mdtext content/api/news.mdtext content/index.mdtext content/studio/developers-guide.mdtext lib/path.pm

Author: elecharny
Date: Sun Jul  5 22:34:01 2015
New Revision: 1689297

URL: http://svn.apache.org/r1689297
Log:
Updated the site for the LDAP API 1.0.0-M31 release

Modified:
    directory/site/trunk/content/api/download-old-versions.mdtext
    directory/site/trunk/content/api/news.mdtext
    directory/site/trunk/content/index.mdtext
    directory/site/trunk/content/studio/developers-guide.mdtext
    directory/site/trunk/lib/path.pm

Modified: directory/site/trunk/content/api/download-old-versions.mdtext
URL: http://svn.apache.org/viewvc/directory/site/trunk/content/api/download-old-versions.mdtext?rev=1689297&r1=1689296&r2=1689297&view=diff
==============================================================================
--- directory/site/trunk/content/api/download-old-versions.mdtext (original)
+++ directory/site/trunk/content/api/download-old-versions.mdtext Sun Jul  5 22:34:01 2015
@@ -25,6 +25,7 @@ Notice: Licensed to the Apache Software
 
 | Version| Download Link | Javadoc & XRef |  Date |
 |:-:|:-:|:-:|:-:|
+| Apache LDAP API 1.0.0-M30 | [Download](http://archive.apache.org/dist/directory/api/dist/1.0.0-M30) | [Javadoc](http://directory.apache.org/api/gen-docs/1.0.0-M30/apidocs/), [Xref](http://directory.apache.org/api/gen-docs/1.0.0-M30/xref/) |02/May/2015 |
 | Apache LDAP API 1.0.0-M29 | [Download](http://archive.apache.org/dist/directory/api/dist/1.0.0-M29) | [Javadoc](http://directory.apache.org/api/gen-docs/1.0.0-M29/apidocs/), [Xref](http://directory.apache.org/api/gen-docs/1.0.0-M29/xref/) |02/Apr/2015 |
 | Apache LDAP API 1.0.0-M28 | [Download](http://archive.apache.org/dist/directory/api/dist/1.0.0-M28) | [Javadoc](http://directory.apache.org/api/gen-docs/1.0.0-M28/apidocs/), [Xref](http://directory.apache.org/api/gen-docs/1.0.0-M28/xref/) |15/Jan/2015 |
 | Apache LDAP API 1.0.0-M27 | [Download](http://archive.apache.org/dist/directory/api/dist/1.0.0-M27) | [Javadoc](http://directory.apache.org/api/gen-docs/1.0.0-M27/apidocs/), [Xref](http://directory.apache.org/api/gen-docs/1.0.0-M27/xref/) |29/Dec/2014 |

Modified: directory/site/trunk/content/api/news.mdtext
URL: http://svn.apache.org/viewvc/directory/site/trunk/content/api/news.mdtext?rev=1689297&r1=1689296&r2=1689297&view=diff
==============================================================================
--- directory/site/trunk/content/api/news.mdtext (original)
+++ directory/site/trunk/content/api/news.mdtext Sun Jul  5 22:34:01 2015
@@ -1,4 +1,21 @@
 # News
+<h2 class="news">Apache Directory LDAP API 1.0.0-M31 released <em>posted on July 5th, 2015</em></h2>
+
+The Apache Directory Team is proud to announce the availability of version 1.0.0-M31 of the Apache Directory LDAP API.
+
+The Apache Directory LDAP API is an ongoing effort to provide an enhanced LDAP API, as a replacement for JNDI and the existing LDAP API (jLdap and Mozilla LDAP API).
+
+This is a schema aware API, with some convenient ways to access a LDAP server. This API is not only targeting the Apache Directory Server, but should work pristine with any LDAP server.
+
+It's also an extensible API : new Controls, schema elements and network layer could be added or used in the near future. It's also OSGi capable.
+
+This release fixes a security vulnerability, [CVE-2015-3250](https://bugs.launchpad.net/bugs/cve/2015-3250).
+
+Feel free to experiment, we highly appreciate your feedback !
+
+Downloads are available [here](downloads.html) and the User's Guide is [there](user-guide.html)
+
+# News
 <h2 class="news">Apache Directory LDAP API 1.0.0-M30 released <em>posted on May 2nd, 2015</em></h2>
 
 The Apache Directory Team is proud to announce the availability of version 1.0.0-M30 of the Apache Directory LDAP API.

Modified: directory/site/trunk/content/index.mdtext
URL: http://svn.apache.org/viewvc/directory/site/trunk/content/index.mdtext?rev=1689297&r1=1689296&r2=1689297&view=diff
==============================================================================
--- directory/site/trunk/content/index.mdtext (original)
+++ directory/site/trunk/content/index.mdtext Sun Jul  5 22:34:01 2015
@@ -63,7 +63,7 @@ td {font-size: 12px;}
       <!-- Apache LDAP API project -->
       <td style="border-width: 0; border-right: 1px solid silver; padding-right: 15px; width:50%;" valign="top">
         <div class="download-link">
-          <a href="./../api/downloads.html" class="download_badge_api"><b>Download Apache<br>LDAP API 1.0.0-M30</b></a>
+          <a href="./../api/downloads.html" class="download_badge_api"><b>Download Apache<br>LDAP API 1.0.0-M31</b></a>
         </div>
 
         <div class="separator">&nbsp;</div>

Modified: directory/site/trunk/content/studio/developers-guide.mdtext
URL: http://svn.apache.org/viewvc/directory/site/trunk/content/studio/developers-guide.mdtext?rev=1689297&r1=1689296&r2=1689297&view=diff
==============================================================================
--- directory/site/trunk/content/studio/developers-guide.mdtext (original)
+++ directory/site/trunk/content/studio/developers-guide.mdtext Sun Jul  5 22:34:01 2015
@@ -18,22 +18,104 @@ Notice: Licensed to the Apache Software
 
 # Developer's Guide
 
-This is a simple guide to various Apache Directory Studio resources to help developers get going.
+This is a simple guide to various Apache Directory Studio resources to help developers get going. MThis guide can be found in the [README][README.md] file at the top level of the source tree.
 
 ## Source Repository
 
 The [Source repository](source-repository.html) page describes source code location and organization.
 
+
+
 ## Build
 
 The [README][README.md] describes how to build from source.
 Also on [Github](https://github.com/apache/directory-studio#build-from-command-line). 
 
+### Prerequisties
+
+* JDK 7 or newer
+* Maven 3 or newer
+* Sufficient heap space for Maven: `export MAVEN_OPTS="-Xmx512m"`
+* FIXME: Windows users have to replace the repository location `file://${basedir}/target/repository` in `eclipse-trgt-platform/template/org.apache.directory.studio.eclipse-trgt-platform.template` with the actual path, e.g. `file:///C:/Development/studio/eclipse-trgt-platform/target/repository`
+
+### building
+
+You can use either of those two methods to build the project :
+
+* Do it manually
+
+Build the 'Eclipse Target Platform' and generate MANIFEST.MF files first
+
+    mvn -f pom-first.xml clean install
+
+Build the main eclipse artifacts using Tycho
+
+    mvn clean install
+
+* Use the script  (which runs the two previous commands)
+
+On Linux / Mac OS X :
+
+    $ ./build.sh
+
+or on Windows :
+
+    > build.bat
+
+### Tests
+
+* Unit tests included in src/test/java of each plugin are executed automatically and run in 'test' phase
+* Core integration tests in tests/test.integration.core are executed automatically and run in 'integration-test' phase
+* SWTBot based UI integration tests in tests/test.integration.ui are disabled by default. They can be enabled with -Denable-ui-tests. A failing test generates a screenshot. To not block the developer computer they can run within a virtual framebuffer:
+
+        export DISPLAY=:99
+        Xvfb :99 -screen 0 1024x768x16 &
+
+### Build issues
+
+Tycho doesn't handle snapshot dependencies well. The first time a snapshot dependency is used within the build it is cached in `~/.m2/repository/p2`. Afterwards any change in the dependency (e.g. ApacheDS or LDAP API) is the considered unless it is deleted from the cache.
+
+
 ## Setup Eclipse
 
 The [README][README.md] describes how to setup your Eclipse workspace to work on Apache Directory Studio.
 Also on [Github](https://github.com/apache/directory-studio#setup-eclipse-workspace).
 
+Recommended IDE is 'Eclipse (Luna) for RCP Developers': <http://www.eclipse.org/downloads/packages/eclipse-rcp-and-rap-developers/lunasr2>
+
+1. Import 'Eclipse Target Platorm' project first
+
+    * File -> Import... -> Maven -> Existing Maven Projects
+    * Choose 'studio/eclipse-trgt-platform' as root directory
+    * Only this single project is selected
+    * Finish
+
+2. Initialize target platform
+
+    * Open the `eclipse-trgt-platform.target` file with the 'Target Editor'
+    * In the top right corner click 'Set as Target Platform'
+
+3. Import the main plugins
+
+    * File -> Import... -> Maven -> Existing Maven Projects
+    * Chosse 'studio' as root directory
+    * All the plugins are selected
+    * Finish
+
+During import some Maven plugin connectors need to be installed, accept the installation and restart.
+
+## Run
+
+### From command line
+
+The build produces binaries for all platforms. Archived versions can be found in `product/target/products/`, unpacked versions can be found below `product/target/products/org.apache.directory.studio.product`
+
+### Within Eclipse
+
+* Open the product configuration 'org.apache.directory.studio.product' with the Product Configuration Editor
+* Click the link 'Launch an Eclipse application'
+
+
 ## Issue Tracker
 
 [Jira](https://issues.apache.org/jira/browse/DIRSTUDIO).
@@ -43,6 +125,163 @@ Also on [Github](https://github.com/apac
 The release process is described within the [README][README.md].
 Also on [Github](https://github.com/apache/directory-studio#release).
 
+(Attempts, not fully tested yet...)
+
+### Release artifacts
+
+We release the following artifacts:
+
+* Source zip (the main artifact we vote on)
+* Maven artifacts
+    * poms
+    * plugins: pom, jar, javadoc, src
+    * features: pom, jar, src
+    * helps: pom, jar, src
+* P2 repositories
+    * the main features (LDAP Browser, Schema Editor, ApacheDS)
+    * dependencies
+* Product archives for
+    * Linux GTK 32bit tar.gz
+    * Linux GTK 64bit tar.gz
+    * Mac OS X 64bit tar.gz
+    * Windows 32bit zip
+    * Windows 64bit zip
+* Userguides
+
+### Preparation
+
+Test the release build: rat check, javadoc and source jar generation, GPG signing, userguide generation
+
+    mvn -f pom-first.xml clean install
+    mvn -Papache-release -Duserguides clean install
+
+Run UI tests (if possible on all platforms)
+
+    mvn clean install -Denable-ui-tests
+
+
+### Release build steps
+
+As Tycho doesn't support the maven-release-plugin the release process is as follows:
+
+#### Define release version
+
+We use a release number scheme that suites for both, Maven and Eclipse.
+
+    <MAJOR>.<MINOR>.<PATCH>.v<YYYYMMDD>[-M<X>|RC<X>]
+
+Example for milestone version: `2.0.0.v20150529-M9`. Example for GA version: `2.0.1.v20150529`.
+
+Define a variable for later use:
+
+    export VERSION=2.0.0.v20150529-M9
+
+Also create an empty directory used during the release process and store it in a variable:
+
+    export RELEASE_DIR=$(pwd)
+
+#### Create and checkout branch
+
+    cd $RELEASE_DIR
+    svn copy https://svn.apache.org/repos/asf/directory/studio/trunk https://svn.apache.org/repos/asf/directory/studio/branches/$VERSION -m "Prepare release $VERSION"
+    svn checkout https://svn.apache.org/repos/asf/directory/studio/branches/$VERSION branch-$VERSION
+    cd branch-$VERSION
+
+#### Set the version
+
+    find . -name pom-first.xml | xargs sed -i 's/2.0.0-SNAPSHOT/'$VERSION'/'
+    find . -name pom-first.xml | xargs sed -i 's/2.0.0.qualifier/'$VERSION'/'
+    mvn -f pom-first.xml clean install
+    mvn org.eclipse.tycho:tycho-versions-plugin:0.22.0:set-version -DnewVersion=$VERSION
+
+#### Commit
+
+    svn commit -m "Set version number for release $VERSION"
+
+#### Create and checkout tag
+
+    cd $RELEASE_DIR
+    svn copy https://svn.apache.org/repos/asf/directory/studio/branches/$VERSION https://svn.apache.org/repos/asf/directory/studio/tags/$VERSION -m "Tag release $VERSION"
+    svn checkout https://svn.apache.org/repos/asf/directory/studio/tags/$VERSION tag-$VERSION
+    cd tag-$VERSION
+
+#### Build the release and deploy to staging Nexus repository
+
+    mvn -f pom-first.xml clean install
+    mvn -Papache-release -Duserguides -DretryFailedDeploymentCount=3 clean deploy
+
+#### Close the staging Nexus repository
+
+See <https://repository.apache.org/#stagingRepositories>.
+
+#### Package and sign distribution packages
+
+There is a script that collects and signs all update sites and distribution packages.
+
+For non-interactive signing with GPG agent define env variable:
+
+    export RELEASE_KEY=28686142
+
+Run the dist script:
+
+    cd dist
+    ./dist.sh
+
+Afterwards all distribution packages are located in `target`.
+
+### Call the vote
+
+Upload `target/$VERSION` to people.apache.org
+
+    scp -r target/$VERSION people.apache.org:~/public_html/
+
+and start the vote.
+
+### Publish
+
+After successful vote we can publish the artifacts
+
+* Release artifacts in Nexus
+* Commit distribution packages to https://dist.apache.org/repos/dist/release/directory/studio, the content of `dist/target` can be used as-is.
+
+Wait 24h for mirror rsync.
+
+#### Update site
+
+The update site https://svn.apache.org/repos/asf/directory/site/trunk/content/studio/update needs to be updated.
+
+In the following files
+
+* compositeArtifacts--xml.html
+* compositeContent--xml.html
+* product/compositeArtifacts--xml.html
+* product/compositeContent--xml.html
+
+change the location path to the new release and also update the `p2.timestamp` to the current timestamp milliseconds (hint: `date +%s000`)
+
+#### Website
+
+Update news and download links
+
+* Versions in `lib/path.pm`
+* content/studio/changelog.mdtext
+* content/studio/news.mdtext
+
+#### User guides
+
+TODO
+
+#### Cleanup
+
+Delete old releases.
+
+
+## Misc tips and tricks
+
+How to search features, plugins, versions in P2 repo?
+
+<https://stackoverflow.com/questions/10025599/how-to-find-out-which-feature-contains-a-needed-plug-in-on-an-eclipse-download-s>
+
 ## Internationalization
 
 The [Internationalization](internationalization.html) page describes how to enable multi-language support in the GUI (I18n).

Modified: directory/site/trunk/lib/path.pm
URL: http://svn.apache.org/viewvc/directory/site/trunk/lib/path.pm?rev=1689297&r1=1689296&r2=1689297&view=diff
==============================================================================
--- directory/site/trunk/lib/path.pm (original)
+++ directory/site/trunk/lib/path.pm Sun Jul  5 22:34:01 2015
@@ -1,7 +1,7 @@
 package path;
  
 # Versions (for download links)
-our $version_api = "1.0.0-M30";
+our $version_api = "1.0.0-M31";
 our $version_apacheds = "2.0.0-M20";
 our $version_studio = "2.0.0.v20150606-M9";
 our $version_studio_name = "2.0.0-M9";