diff --git a/NEWS.md b/NEWS.md
index f9e3703d..ac50e8d8 100644
--- a/NEWS.md
+++ b/NEWS.md
@@ -1,3 +1,7 @@
+# 1.4.3: October 17, 2023
+
+- Optionally hide rendered environment variables ([#798](/../../pull/798))
+
# 1.4.2: February 2, 2022
- Avoid instantiating arbitrary classes ([#758](/../../pull/758)) thanks to [@vlsi](https://github.com/vlsi) for the report and [@raboof](https://github.com/raboof) for the patch
diff --git a/README.md b/README.md
index 52c607f7..f3041b45 100644
--- a/README.md
+++ b/README.md
@@ -101,12 +101,12 @@ You can find published releases on Maven Central.
* You can find an example app and library on + * href="https://github.com/lightbend/config/tree/main/examples">on * GitHub. Also be sure to read the package overview which * describes the big picture as shown in those examples. @@ -56,7 +56,7 @@ * in a JSON object; it's just a string that's the key in a map. A "path" is a * parseable expression with a syntax and it refers to a series of keys. Path * expressions are described in the spec for + * href="https://github.com/lightbend/config/blob/main/HOCON.md">spec for * Human-Optimized Config Object Notation. In brief, a path is * period-separated so "a.b.c" looks for key c in object b in object a in the * root object. Sometimes double quotes are needed around special characters in @@ -110,7 +110,7 @@ *
* Substitutions are the ${foo.bar}
syntax in config
* files, described in the specification. Resolving substitutions replaces these references with real
* values.
*
@@ -189,7 +189,7 @@ public interface Config extends ConfigMergeable {
/**
* Returns a replacement config with all substitutions (the
* ${foo.bar}
syntax, see the
+ * href="https://github.com/lightbend/config/blob/main/HOCON.md">the
* spec) resolved. Substitutions are looked up using this
* Config
as the root object, that is, a substitution
* ${foo.bar}
will be replaced with the result of
@@ -670,7 +670,7 @@ public interface Config extends ConfigMergeable {
* the value is already a number, then it's left alone; if it's a string,
* it's parsed understanding unit suffixes such as "128K", as documented in
* the the
+ * href="https://github.com/lightbend/config/blob/main/HOCON.md">the
* spec.
*
* @param path
@@ -690,7 +690,7 @@ public interface Config extends ConfigMergeable {
* the value is already a number, then it's left alone; if it's a string,
* it's parsed understanding unit suffixes such as "128K", as documented in
* the the
+ * href="https://github.com/lightbend/config/blob/main/HOCON.md">the
* spec.
*
* @since 1.3.0
@@ -711,7 +711,7 @@ public interface Config extends ConfigMergeable {
* Get value as a duration in milliseconds. If the value is already a
* number, then it's left alone; if it's a string, it's parsed understanding
* units suffixes like "10m" or "5ns" as documented in the the
+ * href="https://github.com/lightbend/config/blob/main/HOCON.md">the
* spec.
*
* @deprecated As of release 1.1, replaced by {@link #getDuration(String, TimeUnit)}
@@ -754,7 +754,7 @@ public interface Config extends ConfigMergeable {
* number, then it's taken as milliseconds and then converted to the
* requested TimeUnit; if it's a string, it's parsed understanding units
* suffixes like "10m" or "5ns" as documented in the the
+ * href="https://github.com/lightbend/config/blob/main/HOCON.md">the
* spec.
*
* @since 1.2.0
@@ -778,7 +778,7 @@ public interface Config extends ConfigMergeable {
* already a number, then it's taken as milliseconds; if it's
* a string, it's parsed understanding units suffixes like
* "10m" or "5ns" as documented in the the
+ * href="https://github.com/lightbend/config/blob/main/HOCON.md">the
* spec. This method never returns null.
*
* @since 1.3.0
@@ -800,7 +800,7 @@ public interface Config extends ConfigMergeable {
* already a number, then it's taken as days; if it's
* a string, it's parsed understanding units suffixes like
* "10d" or "5w" as documented in the the
+ * href="https://github.com/lightbend/config/blob/main/HOCON.md">the
* spec. This method never returns null.
*
* @since 1.3.0
diff --git a/config/src/main/java/com/typesafe/config/ConfigFactory.java b/config/src/main/java/com/typesafe/config/ConfigFactory.java
index c4c0ba38..2c09a647 100644
--- a/config/src/main/java/com/typesafe/config/ConfigFactory.java
+++ b/config/src/main/java/com/typesafe/config/ConfigFactory.java
@@ -31,7 +31,7 @@
* from a resource and nothing else.
*
*
You can find an example app and library on
+ * href="https://github.com/lightbend/config/tree/main/examples">on
* GitHub. Also be sure to read the package
* overview which describes the big picture as shown in those
@@ -674,7 +674,7 @@ public static Config systemEnvironment() {
/**
* Converts a Java {@link java.util.Properties} object to a
* {@link ConfigObject} using the rules documented in the HOCON
+ * href="https://github.com/lightbend/config/blob/main/HOCON.md">HOCON
* spec. The keys in the Properties
object are split on the
* period character '.' and treated as paths. The values will all end up as
* string values. If you have both "a=foo" and "a.b=bar" in your properties
diff --git a/config/src/main/java/com/typesafe/config/ConfigMergeable.java b/config/src/main/java/com/typesafe/config/ConfigMergeable.java
index 58b2663e..c6e7689c 100644
--- a/config/src/main/java/com/typesafe/config/ConfigMergeable.java
+++ b/config/src/main/java/com/typesafe/config/ConfigMergeable.java
@@ -27,7 +27,7 @@ public interface ConfigMergeable {
*
*
* The semantics of merging are described in the spec
+ * href="https://github.com/lightbend/config/blob/main/HOCON.md">spec
* for HOCON. Merging typically occurs when either the same object is
* created twice in the same file, or two config files are both loaded. For
* example:
diff --git a/config/src/main/java/com/typesafe/config/ConfigResolveOptions.java b/config/src/main/java/com/typesafe/config/ConfigResolveOptions.java
index 526da1ef..f5ef5d7c 100644
--- a/config/src/main/java/com/typesafe/config/ConfigResolveOptions.java
+++ b/config/src/main/java/com/typesafe/config/ConfigResolveOptions.java
@@ -6,7 +6,7 @@
/**
* A set of options related to resolving substitutions. Substitutions use the
* ${foo.bar}
syntax and are documented in the HOCON
+ * href="https://github.com/lightbend/config/blob/main/HOCON.md">HOCON
* spec.
*
* Typically this class would be used with the method
diff --git a/config/src/main/java/com/typesafe/config/ConfigSyntax.java b/config/src/main/java/com/typesafe/config/ConfigSyntax.java
index 749387d7..988a2ad8 100644
--- a/config/src/main/java/com/typesafe/config/ConfigSyntax.java
+++ b/config/src/main/java/com/typesafe/config/ConfigSyntax.java
@@ -5,7 +5,7 @@
/**
* The syntax of a character stream (JSON, HOCON
+ * href="https://github.com/lightbend/config/blob/main/HOCON.md">HOCON
* aka ".conf", or Java properties).
@@ -21,7 +21,7 @@ public enum ConfigSyntax {
JSON,
/**
* The JSON-superset HOCON format. Associated with the .conf
file extension
* and application/hocon
Content-Type.
*/
diff --git a/config/src/main/java/com/typesafe/config/package.html b/config/src/main/java/com/typesafe/config/package.html
index 8f5d9f45..3388fa1a 100644
--- a/config/src/main/java/com/typesafe/config/package.html
+++ b/config/src/main/java/com/typesafe/config/package.html
@@ -16,7 +16,7 @@
Typically you would load configuration with a static method from {@link com.typesafe.config.ConfigFactory} and then use it with methods in the {@link com.typesafe.config.Config} interface. Configuration may be in the form of JSON files, -Java properties, or HOCON files; you may also +Java properties, or HOCON files; you may also build your own configuration in code or from your own file formats.
@@ -26,8 +26,8 @@ If you use the default configuration from {@link com.typesafe.config.ConfigFactory#load()} there's no need to pass a configuration to your libraries and frameworks, as long as they all default to this same default, which they should. -
@@ -36,21 +36,21 @@
call {@link com.typesafe.config.ConfigFactory#load()}
to get the default one. Typically a library might offer two constructors, one with a Config
parameter
and one which uses {@link com.typesafe.config.ConfigFactory#load()}.
-
Example library code: Java and Scala.
+
Example library code: Java and Scala.
-Check out the full examples directory on GitHub. +Check out the full examples directory on GitHub.
What else to read:
.conf
files in addition to .json
and .properties
,
- see the README for some short examples
- and the full HOCON spec for the long version.