You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by ma...@apache.org on 2022/06/30 03:35:55 UTC

[commons-configuration] branch master updated (01a360d0 -> 41823fe1)

This is an automated email from the ASF dual-hosted git repository.

mattjuntunen pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/commons-configuration.git


    from 01a360d0 Merge branch 'pr-190'
     new fe1d6269 normalizing version from 2.8 to 2.8.0 (reverting previous change)
     new fe09a3c6 adding documentation for interpolation changes
     new 41823fe1 adding links to runtime dependencies page

The 3 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 pom.xml                                            |  4 +-
 src/changes/changes.xml                            |  2 +-
 .../configuration2/ImmutableConfiguration.java     |  8 +--
 .../PropertiesConfigurationLayout.java             |  6 +--
 .../builder/FileBasedBuilderProperties.java        |  2 +-
 .../configuration2/convert/PropertyConverter.java  |  4 +-
 .../interpol/ConfigurationInterpolator.java        |  2 +-
 .../commons/configuration2/io/FileHandler.java     |  2 +-
 .../commons/configuration2/io/FileSystem.java      |  2 +-
 .../configuration2/io/URLConnectionOptions.java    |  2 +-
 .../commons/configuration2/tree/ImmutableNode.java |  2 +-
 src/site/site.xml                                  |  3 +-
 src/site/xdoc/dependencies.xml                     | 44 ++++++++--------
 src/site/xdoc/userguide/howto_basicfeatures.xml    | 41 ++++++++++++++-
 src/site/xdoc/userguide/upgradeto2_0.xml           |  2 +-
 src/site/xdoc/userguide/upgradeto2_x.xml           | 58 ++++++++++++++++++++++
 src/site/xdoc/userguide/user_guide.xml             |  1 +
 17 files changed, 143 insertions(+), 42 deletions(-)
 create mode 100644 src/site/xdoc/userguide/upgradeto2_x.xml


[commons-configuration] 01/03: normalizing version from 2.8 to 2.8.0 (reverting previous change)

Posted by ma...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

mattjuntunen pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-configuration.git

commit fe1d62693a9a235e3d43a27fa24b9287fdc9bd2e
Author: Matt Juntunen <ma...@apache.org>
AuthorDate: Tue Jun 28 22:38:30 2022 -0400

    normalizing version from 2.8 to 2.8.0 (reverting previous change)
---
 pom.xml                                                           | 4 ++--
 src/changes/changes.xml                                           | 2 +-
 .../org/apache/commons/configuration2/ImmutableConfiguration.java | 8 ++++----
 .../commons/configuration2/PropertiesConfigurationLayout.java     | 6 +++---
 .../configuration2/builder/FileBasedBuilderProperties.java        | 2 +-
 .../apache/commons/configuration2/convert/PropertyConverter.java  | 4 ++--
 .../configuration2/interpol/ConfigurationInterpolator.java        | 2 +-
 .../java/org/apache/commons/configuration2/io/FileHandler.java    | 2 +-
 .../java/org/apache/commons/configuration2/io/FileSystem.java     | 2 +-
 .../apache/commons/configuration2/io/URLConnectionOptions.java    | 2 +-
 .../org/apache/commons/configuration2/tree/ImmutableNode.java     | 2 +-
 11 files changed, 18 insertions(+), 18 deletions(-)

diff --git a/pom.xml b/pom.xml
index 43a33132..c5166324 100644
--- a/pom.xml
+++ b/pom.xml
@@ -24,7 +24,7 @@
   </parent>
   <modelVersion>4.0.0</modelVersion>
   <artifactId>commons-configuration2</artifactId>
-  <version>2.8-SNAPSHOT</version>
+  <version>2.8.0-SNAPSHOT</version>
   <name>Apache Commons Configuration</name>
 
   <inceptionYear>2001</inceptionYear>
@@ -560,7 +560,7 @@
   <properties>
     <commons.componentid>configuration</commons.componentid>
     <commons.module.name>org.apache.commons.configuration2</commons.module.name>
-    <commons.release.version>2.8</commons.release.version>
+    <commons.release.version>2.8.0</commons.release.version>
     <commons.release.desc>(reworked 2.x version)</commons.release.desc>
     <commons.release.2.name>commons-configuration-${commons.release.2.version}</commons.release.2.name>
     <commons.release.2.version>1.10</commons.release.2.version>
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index ab671cb9..b80b68c5 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -21,7 +21,7 @@
     <author email="dev@commons.apache.org">Apache Commons Community</author>
   </properties>
   <body>
-    <release version="2.8" date="2020-MM-DD"
+    <release version="2.8.0" date="2020-MM-DD"
              description="Minor release with new features and updated dependencies.">
        <!-- FIX -->
        <action issue="CONFIGURATION-753" type="fix" dev="mattjuntunen">
diff --git a/src/main/java/org/apache/commons/configuration2/ImmutableConfiguration.java b/src/main/java/org/apache/commons/configuration2/ImmutableConfiguration.java
index 2f388163..a3171197 100644
--- a/src/main/java/org/apache/commons/configuration2/ImmutableConfiguration.java
+++ b/src/main/java/org/apache/commons/configuration2/ImmutableConfiguration.java
@@ -318,7 +318,7 @@ public interface ImmutableConfiguration {
      * @return The associated Duration if key is found and has valid format, default value otherwise.
      * @throws org.apache.commons.configuration2.ex.ConversionException is thrown if the key maps to an object that is not a
      *         Duration.
-     * @since 2.8
+     * @since 2.8.0
      */
     default Duration getDuration(final String key) {
         final String string = getString(key);
@@ -336,7 +336,7 @@ public interface ImmutableConfiguration {
      * @return The associated Duration if key is found and has valid format, default value otherwise.
      * @throws org.apache.commons.configuration2.ex.ConversionException is thrown if the key maps to an object that is not a
      *         Duration.
-     * @since 2.8
+     * @since 2.8.0
      */
     default Duration getDuration(final String key, final Duration defaultValue) {
         final Object value = getProperty(key);
@@ -378,7 +378,7 @@ public interface ImmutableConfiguration {
      *
      * @throws org.apache.commons.configuration2.ex.ConversionException is thrown if the key maps to an object that is not a
      *         String.
-     * @since 2.8
+     * @since 2.8.0
      */
     default <T extends Enum<T>> T getEnum(final String key, final Class<T> enumType) {
         try {
@@ -400,7 +400,7 @@ public interface ImmutableConfiguration {
      *
      * @throws org.apache.commons.configuration2.ex.ConversionException is thrown if the key maps to an object that is not a
      *         Enum.
-     * @since 2.8
+     * @since 2.8.0
      */
     default <T extends Enum<T>> T getEnum(final String key, final Class<T> enumType, final T defaultValue) {
         final String strValue = getString(key, null);
diff --git a/src/main/java/org/apache/commons/configuration2/PropertiesConfigurationLayout.java b/src/main/java/org/apache/commons/configuration2/PropertiesConfigurationLayout.java
index 6cf2f033..b0f3fe62 100644
--- a/src/main/java/org/apache/commons/configuration2/PropertiesConfigurationLayout.java
+++ b/src/main/java/org/apache/commons/configuration2/PropertiesConfigurationLayout.java
@@ -228,7 +228,7 @@ public class PropertiesConfigurationLayout implements EventListener<Configuratio
      *
      * @param key the property key
      * @param number the number of blank lines to add before this property definition
-     * @since 2.8
+     * @since 2.8.0
      */
     public void setBlankLinesBefore(final String key, final int number) {
         fetchLayoutData(key).setBlankLines(number);
@@ -772,7 +772,7 @@ public class PropertiesConfigurationLayout implements EventListener<Configuratio
          * Returns the number of blank lines before this property.
          *
          * @return the number of blank lines before this property
-         * @since 2.8
+         * @since 2.8.0
          */
         public int getBlankLines() {
             return blankLines;
@@ -793,7 +793,7 @@ public class PropertiesConfigurationLayout implements EventListener<Configuratio
          * Sets the number of properties before this property.
          *
          * @param blankLines the number of properties before this property
-         * @since 2.8
+         * @since 2.8.0
          */
         public void setBlankLines(final int blankLines) {
             this.blankLines = blankLines;
diff --git a/src/main/java/org/apache/commons/configuration2/builder/FileBasedBuilderProperties.java b/src/main/java/org/apache/commons/configuration2/builder/FileBasedBuilderProperties.java
index 218479b8..90356601 100644
--- a/src/main/java/org/apache/commons/configuration2/builder/FileBasedBuilderProperties.java
+++ b/src/main/java/org/apache/commons/configuration2/builder/FileBasedBuilderProperties.java
@@ -121,7 +121,7 @@ public interface FileBasedBuilderProperties<T> {
      * @param url the {@code URL} location
      * @param urlConnectionOptions options
      * @return a reference to this object for method chaining
-     * @since 2.8
+     * @since 2.8.0
      */
     default T setURL(final URL url, final URLConnectionOptions urlConnectionOptions) {
         return setURL(url);
diff --git a/src/main/java/org/apache/commons/configuration2/convert/PropertyConverter.java b/src/main/java/org/apache/commons/configuration2/convert/PropertyConverter.java
index 261c248b..255bedab 100644
--- a/src/main/java/org/apache/commons/configuration2/convert/PropertyConverter.java
+++ b/src/main/java/org/apache/commons/configuration2/convert/PropertyConverter.java
@@ -48,7 +48,7 @@ import org.apache.commons.lang3.StringUtils;
 /**
  * A utility class to convert the configuration properties into any type.
  *
- * @since 2.8
+ * @since 2.8.0
  */
 public final class PropertyConverter {
 
@@ -302,7 +302,7 @@ public final class PropertyConverter {
      * @param value the value to convert
      * @return the converted value
      * @throws ConversionException thrown if the value cannot be converted to a Duration
-     * @since 2.8
+     * @since 2.8.0
      */
     public static Duration toDuration(final Object value) throws ConversionException {
         if (value instanceof Duration) {
diff --git a/src/main/java/org/apache/commons/configuration2/interpol/ConfigurationInterpolator.java b/src/main/java/org/apache/commons/configuration2/interpol/ConfigurationInterpolator.java
index ba74a452..a5f859de 100644
--- a/src/main/java/org/apache/commons/configuration2/interpol/ConfigurationInterpolator.java
+++ b/src/main/java/org/apache/commons/configuration2/interpol/ConfigurationInterpolator.java
@@ -95,7 +95,7 @@ public class ConfigurationInterpolator {
      * {@link #getDefaultPrefixLookups()} method. Use of this property is only required
      * in cases where the set of default lookups must be modified.
      *
-     * @since 2.8
+     * @since 2.8.0
      */
     public static final String DEFAULT_PREFIX_LOOKUPS_PROPERTY =
             "org.apache.commons.configuration2.interpol.ConfigurationInterpolator.defaultPrefixLookups";
diff --git a/src/main/java/org/apache/commons/configuration2/io/FileHandler.java b/src/main/java/org/apache/commons/configuration2/io/FileHandler.java
index 98f09416..387b3c50 100644
--- a/src/main/java/org/apache/commons/configuration2/io/FileHandler.java
+++ b/src/main/java/org/apache/commons/configuration2/io/FileHandler.java
@@ -1223,7 +1223,7 @@ public class FileHandler {
      *
      * @param url the location of the file as URL
      * @param urlConnectionOptions URL connection options
-     * @since 2.8
+     * @since 2.8.0
      */
     public void setURL(final URL url, final URLConnectionOptions urlConnectionOptions) {
         new Updater() {
diff --git a/src/main/java/org/apache/commons/configuration2/io/FileSystem.java b/src/main/java/org/apache/commons/configuration2/io/FileSystem.java
index 080df55a..20fa4bf0 100644
--- a/src/main/java/org/apache/commons/configuration2/io/FileSystem.java
+++ b/src/main/java/org/apache/commons/configuration2/io/FileSystem.java
@@ -57,7 +57,7 @@ public abstract class FileSystem {
      * @return TODO
      * @throws ConfigurationException TODO
      *
-     * @since 2.8
+     * @since 2.8.0
      */
     public InputStream getInputStream(final URL url, final URLConnectionOptions urlConnectionOptions) throws ConfigurationException {
         return getInputStream(url);
diff --git a/src/main/java/org/apache/commons/configuration2/io/URLConnectionOptions.java b/src/main/java/org/apache/commons/configuration2/io/URLConnectionOptions.java
index aab377eb..6a45943f 100644
--- a/src/main/java/org/apache/commons/configuration2/io/URLConnectionOptions.java
+++ b/src/main/java/org/apache/commons/configuration2/io/URLConnectionOptions.java
@@ -25,7 +25,7 @@ import java.util.Objects;
 /**
  * Carries options and operates on {@link URLConnection}.
  *
- * @since 2.8
+ * @since 2.8.0
  */
 public final class URLConnectionOptions {
 
diff --git a/src/main/java/org/apache/commons/configuration2/tree/ImmutableNode.java b/src/main/java/org/apache/commons/configuration2/tree/ImmutableNode.java
index 8b309ccd..a23c70f2 100644
--- a/src/main/java/org/apache/commons/configuration2/tree/ImmutableNode.java
+++ b/src/main/java/org/apache/commons/configuration2/tree/ImmutableNode.java
@@ -303,7 +303,7 @@ public final class ImmutableNode implements Iterable<ImmutableNode> {
 
     /**
      * @return An iterator of {@link #children child nodes.}
-     * @since 2.8
+     * @since 2.8.0
      */
     @Override
     public Iterator<ImmutableNode> iterator() {


[commons-configuration] 02/03: adding documentation for interpolation changes

Posted by ma...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

mattjuntunen pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-configuration.git

commit fe09a3c6308da151526478f2192a5af240b2c347
Author: Matt Juntunen <ma...@apache.org>
AuthorDate: Wed Jun 29 23:35:09 2022 -0400

    adding documentation for interpolation changes
---
 src/site/site.xml                               |  3 +-
 src/site/xdoc/userguide/howto_basicfeatures.xml | 41 ++++++++++++++++-
 src/site/xdoc/userguide/upgradeto2_0.xml        |  2 +-
 src/site/xdoc/userguide/upgradeto2_x.xml        | 58 +++++++++++++++++++++++++
 src/site/xdoc/userguide/user_guide.xml          |  1 +
 5 files changed, 101 insertions(+), 4 deletions(-)

diff --git a/src/site/site.xml b/src/site/site.xml
index 9d7dc13e..20c46445 100644
--- a/src/site/site.xml
+++ b/src/site/site.xml
@@ -37,7 +37,8 @@
       <item name="Release History"                      href="/changes-report.html"/>
       <item name="${project.version}" collapse="true"   href="/index.html">
         <item name="User's Guide"                       href="/userguide/user_guide.html"/>
-        <item name="Upgrade Guide"                      href="/userguide/upgradeto2_0.html"/>
+        <item name="Upgrade Guide: 1.x to 2.0"          href="/userguide/upgradeto2_0.html"/>
+        <item name="Upgrade Guide: 2.x"                 href="/userguide/upgradeto2_x.html"/>
         <item name="Javadoc"                            href="/apidocs/index.html"/>
         <item name="Runtime Dependencies"               href="/dependencies.html"/>
       </item>
diff --git a/src/site/xdoc/userguide/howto_basicfeatures.xml b/src/site/xdoc/userguide/howto_basicfeatures.xml
index 4985240e..ad06d649 100644
--- a/src/site/xdoc/userguide/howto_basicfeatures.xml
+++ b/src/site/xdoc/userguide/howto_basicfeatures.xml
@@ -207,7 +207,8 @@ application.title = ${application.name} ${application.version}
       <code>${prefix:name}</code>. The prefix tells Commons Configuration that
       the variable is to be evaluated in a certain context. We have already seen
       that the context is the current configuration instance if the prefix is
-      missing. The following other prefix names are supported by default:
+      missing. The following table lists a few of the prefixes supported by default.
+      (See the next section for more details.)
       <table border="1">
       <tr>
         <th>Prefix</th>
@@ -268,10 +269,46 @@ java.home = ${env:JAVA_HOME}
     </p>
     </subsection>
 
+    <subsection name="Default interpolation lookups">
+    <p>
+        Commons configuration comes with a number of default prefix interpolators in addition
+        to the few demonstrated above. The full list can be found in the documentation of
+        the <code><a href="../apidocs/org/apache/commons/configuration2/interpol/ConfigurationInterpolator.html#getDefaultPrefixLookups()">
+        ConfigurationInterpolator.getDefaultPrefixLookups()</a></code> method. This method returns a map of 
+        standard interpolation lookup objects keyed by prefix, which are enabled by default in all 
+        interpolation operations performed through the <code>Configuration</code> interface. Prior to version 
+        <code>2.8.0</code>, this map was constant. However, starting in version <code>2.8.0</code>, the lookups 
+        included in this map can be optionally configured via system property, allowing users greater control over the 
+        types of interpolation performed in their applications. The system property in question is named
+        <code>org.apache.commons.configuration2.interpol.ConfigurationInterpolator.defaultPrefixLookups</code>
+        and is expected to contain a comma-separated list of names from the
+        <code><a href="../apidocs/org/apache/commons/configuration2/interpol/DefaultLookups.html">DefaultLookups</a></code>
+        enum. For example, launching an application with the system property given below will only enable the
+        <code>sys</code> and <code>env</code> lookups.
+    </p>
+<source><![CDATA[
+org.apache.commons.configuration2.interpol.ConfigurationInterpolator.defaultPrefixLookups=SYSTEM_PROPERTIES,ENVIRONMENT
+]]></source>
+    <p>
+        It is also important to note that starting in version <code>2.8.0</code>, several previously enabled
+        default lookups were changed to be disabled by default. These include the
+        <code><a href="../apidocs/org/apache/commons/configuration2/interpol/DefaultLookups.html#DNS">dns</a></code>,
+        <code><a href="../apidocs/org/apache/commons/configuration2/interpol/DefaultLookups.html#URL">url</a></code>, and
+        <code><a href="../apidocs/org/apache/commons/configuration2/interpol/DefaultLookups.html#SCRIPT">script</a></code> lookups.
+        These lookups are still present in the library but must be explicitly enabled by either
+        <ol> 
+            <li>listing them in the system property described above (along with all other enabled lookups), or</li>
+            <li>adding them programmatically using the techniques laid out in the next section.</li>
+        </ol>.
+        Users who do not make use of these disabled lookups do not need to make any changes to their code or
+        deployment scripts when upgrading from previous versions to <code>2.8.0</code>.
+    </p>
+    </subsection>
+
     <subsection name="Customizing interpolation">
     <p>
       This sub section goes a bit behind the scenes of interpolation and
-      explains some approaches how you can add your own interpolation facilities.
+      explains some approaches for adding your own interpolation facilities.
       Under the hood the implementation of interpolation relies on objects
       implementing the
       <code><a href="../apidocs/org/apache/commons/configuration2/interpol/Lookup.html">
diff --git a/src/site/xdoc/userguide/upgradeto2_0.xml b/src/site/xdoc/userguide/upgradeto2_0.xml
index e1096acf..cac2ebb8 100644
--- a/src/site/xdoc/userguide/upgradeto2_0.xml
+++ b/src/site/xdoc/userguide/upgradeto2_0.xml
@@ -19,7 +19,7 @@
 <document>
 
  <properties>
-  <title>Migration Guide for 2.0</title>
+  <title>Migration Guide: 1.x to 2.0</title>
  </properties>
 
 <body>
diff --git a/src/site/xdoc/userguide/upgradeto2_x.xml b/src/site/xdoc/userguide/upgradeto2_x.xml
new file mode 100644
index 00000000..8f3a9154
--- /dev/null
+++ b/src/site/xdoc/userguide/upgradeto2_x.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<!--
+   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.
+-->
+
+<document>
+
+ <properties>
+  <title>Migration Guide: 2.x</title>
+ </properties>
+
+<body>
+    <section name="Migration Guide Between 2.x Versions">
+    <p>
+      This document aims to assist with the migration between different versions
+      within the 2.x line. While all Commons Configuration artifacts maintain binary 
+      compatibility with previous versions with the same major number, there are
+      some behavioral and/or configuration differences that may need to be addressed when
+      upgrading.
+    </p>
+
+    <subsection name="v2.8.0">
+    <p>
+      Version 2.8.0 of <em>Commons Configuration</em> introduced a change in the variable interpolation lookups
+      included by default. In previous versions, all lookups defined in the
+      <code><a href="../apidocs/org/apache/commons/configuration2/interpol/DefaultLookups.html">DefaultLookups</a></code>
+      enum were included by default. With version 2.8.0, some of these lookups are disabled.
+      Specifically, the
+      <code><a href="../apidocs/org/apache/commons/configuration2/interpol/DefaultLookups.html#DNS">dns</a></code>,
+      <code><a href="../apidocs/org/apache/commons/configuration2/interpol/DefaultLookups.html#URL">url</a></code>, and
+      <code><a href="../apidocs/org/apache/commons/configuration2/interpol/DefaultLookups.html#SCRIPT">script</a></code>
+      lookups must now be enabled explicitly. As described in the 
+      <a href="howto_basicfeatures.html#Default_interpolation_lookups">user guide</a>, this can be done either
+      programmatically or through a system property. If the behavior of previous versions must be maintained exactly 
+      without changes to the code, then the following system property can be used:
+<source>
+org.apache.commons.configuration2.interpol.ConfigurationInterpolator.defaultPrefixLookups=BASE64_DECODER,BASE64_ENCODER,CONST,DATE,DNS,ENVIRONMENT,FILE,JAVA,LOCAL_HOST,PROPERTIES,RESOURCE_BUNDLE,SCRIPT,SYSTEM_PROPERTIES,URL,URL_DECODER,URL_ENCODER,XML
+</source>
+        If the disabled lookups listed above are not used by the target application, then no changes are required. 
+    </p>
+    </subsection>
+  </section>
+</body>
+
+</document>
\ No newline at end of file
diff --git a/src/site/xdoc/userguide/user_guide.xml b/src/site/xdoc/userguide/user_guide.xml
index 0413dbf2..a99edcf0 100644
--- a/src/site/xdoc/userguide/user_guide.xml
+++ b/src/site/xdoc/userguide/user_guide.xml
@@ -50,6 +50,7 @@
         <li><a href="howto_basicfeatures.html#Handling_of_missing_properties">Handling of missing properties</a></li>
         <li><a href="howto_basicfeatures.html#List_handling">List handling</a></li>
         <li><a href="howto_basicfeatures.html#Variable_Interpolation">Variable Interpolation</a></li>
+        <li><a href="howto_basicfeatures.html#Default_interpolation_lookups">Default interpolation lookups</a></li>
         <li><a href="howto_basicfeatures.html#Customizing_interpolation">Customizing interpolation</a></li>
         <li><a href="howto_basicfeatures.html#Using_Expressions">Using Expressions</a></li>
         <li><a href="howto_basicfeatures.html#Data_type_conversions">Data type conversions</a></li>


[commons-configuration] 03/03: adding links to runtime dependencies page

Posted by ma...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

mattjuntunen pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-configuration.git

commit 41823fe1509c84324a975297bc09e0d884e1c2e9
Author: Matt Juntunen <ma...@apache.org>
AuthorDate: Wed Jun 29 23:35:27 2022 -0400

    adding links to runtime dependencies page
---
 src/site/xdoc/dependencies.xml | 44 +++++++++++++++++++++++-------------------
 1 file changed, 24 insertions(+), 20 deletions(-)

diff --git a/src/site/xdoc/dependencies.xml b/src/site/xdoc/dependencies.xml
index a94b53ca..51e55f94 100644
--- a/src/site/xdoc/dependencies.xml
+++ b/src/site/xdoc/dependencies.xml
@@ -32,12 +32,12 @@
               Commons Configuration requires Java 8 or later.
             </p>
             <p>
-              A lot of dependencies are declared in the Maven POM. These are all
-              needed during compile time. On runtime however you only need to
-              add the dependencies to your classpath that are required by the
-              parts of the Commons Configuration package you are using. The
-              following table helps you to determine which dependencies you
-              have to include based on the components you intend to use:
+              Many dependencies are declared in the Maven POM, all of which
+              are required to build the project. However, at runtime, you only 
+              need to add the dependencies to your classpath that are required 
+              by the parts of the Commons Configuration package you are using. 
+              The following table can help determine which dependencies are required
+              based on the components in use.
             </p>
 
             <table>
@@ -51,56 +51,60 @@
                     <tr>
                         <td>Core</td>
                         <td>
-                            commons-lang<br/>
-                            commons-logging
+                            <a href="https://commons.apache.org/proper/commons-lang/">commons-lang3</a><br/>
+                            <a href="https://commons.apache.org/proper/commons-text/">commons-text</a><br />
+                            <a href="https://commons.apache.org/proper/commons-logging/">commons-logging</a>
                         </td>
                     </tr>
                     <tr>
                         <td>Configuration builders</td>
-                        <td>commons-beanutils</td>
+                        <td><a href="https://commons.apache.org/proper/commons-beanutils/">commons-beanutils</a></td>
                     </tr>
                     <tr>
                         <td>
                           PropertyListConfiguration<br/>
                           XMLPropertyListConfiguration
                         </td>
-                        <td>commons-codec</td>
+                        <td><a href="https://commons.apache.org/proper/commons-codec/">commons-codec</a></td>
                     </tr>
                     <tr>
                         <td>JSONConfiguration</td>
-                        <td>com.fasterxml.jackson.core:jackson-databind</td>
+                        <td><a href="https://github.com/FasterXML/jackson-databind">com.fasterxml.jackson.core:jackson-databind</a></td>
                     </tr>
                     <tr>
                         <td>YAMLConfiguration</td>
-                        <td>org.yaml:snakeyaml</td>
+                        <td><a href="https://github.com/snakeyaml/snakeyaml">org.yaml:snakeyaml</a></td>
                     </tr>
                     <tr>
                         <td>ConfigurationDynaBean</td>
-                        <td>commons-beanutils</td>
+                        <td><a href="https://commons.apache.org/proper/commons-beanutils/">commons-beanutils</a></td>
                     </tr>
                     <tr>
                         <td>XPathExpressionEngine</td>
-                        <td>commons-jxpath</td>
+                        <td><a href="https://commons.apache.org/proper/commons-jxpath/">commons-jxpath</a></td>
                     </tr>
                     <tr>
                         <td>CatalogResolver</td>
-                        <td>xml-resolver</td>
+                        <td><a href="https://xerces.apache.org/xml-commons/components/resolver/">xml-resolver</a></td>
                     </tr>
                     <tr>
                         <td>Web configurations</td>
-                        <td>servlet-api</td>
+                        <td><a href="https://javaee.github.io/servlet-spec/">servlet-api</a></td>
                     </tr>
                     <tr>
                         <td>ExprLookup</td>
-                        <td>commons-jexl</td>
+                        <td><a href="https://commons.apache.org/proper/commons-jexl/">commons-jexl</a></td>
                     </tr>
                     <tr>
-                        <td>VFSFileSystem, VFSFileChangedReloadingStrategy</td>
-                        <td>commons-vfs</td>
+                        <td>
+                            VFSFileSystem<br />
+                            VFSFileChangedReloadingStrategy
+                        </td>
+                        <td><a href="https://commons.apache.org/proper/commons-vfs/">commons-vfs2</a></td>
                     </tr>
                     <tr>
                         <td>ConfigPropertySource</td>
-                        <td>spring-core</td>
+                        <td><a href="https://spring.io/projects/spring-framework">spring-core</a></td>
                     </tr>
                 </tbody>
             </table>