You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by be...@apache.org on 2009/04/17 00:00:18 UTC

svn commit: r765782 - in /maven/site/trunk/src/site/apt: pom.apt release-notes.apt.vm

Author: bentmann
Date: Thu Apr 16 22:00:18 2009
New Revision: 765782

URL: http://svn.apache.org/viewvc?rev=765782&view=rev
Log:
[MNG-3940] Interpolation of environment variables is not case-insensitive on Windows

o Documented env var handling

Modified:
    maven/site/trunk/src/site/apt/pom.apt
    maven/site/trunk/src/site/apt/release-notes.apt.vm

Modified: maven/site/trunk/src/site/apt/pom.apt
URL: http://svn.apache.org/viewvc/maven/site/trunk/src/site/apt/pom.apt?rev=765782&r1=765781&r2=765782&view=diff
==============================================================================
--- maven/site/trunk/src/site/apt/pom.apt (original)
+++ maven/site/trunk/src/site/apt/pom.apt Thu Apr 16 22:00:18 2009
@@ -566,7 +566,11 @@
   They come in five different styles:
 
   [[1]]  <<<env.X>>>: Prefixing a variable with "env." will return the shell's environment variable. For example,
-  <<<$\{env.PATH\}>>> contains the $path environment variable (<<<%PATH%>>> in Windows).
+  <<<$\{env.PATH\}>>> contains the PATH environment variable.
+  <Note:> While environment variables themselves are case-insensitive on Windows, lookup of properties is
+  case-sensitive. In other words, while the Windows shell returns the same value for <<<%PATH%>>> and <<<%Path%>>>,
+  Maven distinguishes between <<<$\{env.PATH\}>>> and <<<$\{env.Path\}>>>. As of Maven 2.1.0, the names of environment
+  variables are normalized to all upper-case for the sake of reliability.
 
   [[2]]  <<<project.x>>>: A dot (.) notated path in the POM will contain the corresponding element's value.
   For example: <<<\<project\>\<version\>1.0\</version\>\</project\>>>> is accessible via

Modified: maven/site/trunk/src/site/apt/release-notes.apt.vm
URL: http://svn.apache.org/viewvc/maven/site/trunk/src/site/apt/release-notes.apt.vm?rev=765782&r1=765781&r2=765782&view=diff
==============================================================================
--- maven/site/trunk/src/site/apt/release-notes.apt.vm (original)
+++ maven/site/trunk/src/site/apt/release-notes.apt.vm Thu Apr 16 22:00:18 2009
@@ -56,6 +56,13 @@
 
     * MNG-3475 - neither the script source directory nor the reporting output directory were aligned to the base directory. While this was a bug, if you used an expression such as <<<$\{basedir\}/$\{project.reporting.outputDirectory\}>>> then where this would of worked in Maven 2.0.10, it will have two copies of the project base directory in Maven 2.1.0+. You should remove the leading <<<$\{basedir\}>>> from the expression - however note that in some cases this will cause the build to be incompatible with earlier versions of Maven.
 
+    * MNG-3940 - While environment variables are case-insensitive on Windows, Maven internally stores them in a
+      <<<Properties>>> collection. For the time being, the names of environment variables are normalized to all
+      upper-case when Maven executes on Windows, thereby at least partly abstracting from different character casing of
+      the original variable name. Hence, <<<$\{env.PATH\}>>> will now be reliably resolved on Windows. However, POMs
+      that previously used lower-case or mixed-case variable names like <<<$\{env.ProgramFiles\}>>> will need to be
+      updated.
+
     * MNG-4056 - Dependencies specified with a classifier of <<<sources>>> and type of <<<jar>>> are correctly considered source JARs and no longer added to the classpath. This is {{{http://code.google.com/p/gwt-maven/issues/detail?id=200} known to affect the GWT plugin}}
 
 ** Noteworthy Changes and improvements