Rename typesafehub to lightbend (#513)

* Migration to lightbend repo

* Second round of the rename cleanup
This commit is contained in:
Martynas Mickevičius 2017-10-23 13:40:51 +03:00 committed by Konrad `ktoso` Malawski
parent 08f5a6020e
commit d5ba11fbb5
19 changed files with 70 additions and 70 deletions

View File

@ -10,7 +10,7 @@
during resolution. during resolution.
- Config Beans now support `Set` collection. - Config Beans now support `Set` collection.
- a few other small bugfixes. All of the fixed issues can be found - a few other small bugfixes. All of the fixed issues can be found
in the [milestone page](https://github.com/typesafehub/config/milestone/1?closed=1). in the [milestone page](https://github.com/lightbend/config/milestone/1?closed=1).
# 1.3.1: September 24, 2016 # 1.3.1: September 24, 2016
@ -222,7 +222,7 @@ Thank you to contributors with commits since v1.2.1 tag:
- build jar using Java 1.6 (and enforce this in build) - build jar using Java 1.6 (and enforce this in build)
- change getDuration to return unboxed long instead of boxed - change getDuration to return unboxed long instead of boxed
- API documentation improvements - API documentation improvements
http://typesafehub.github.io/config/latest/api/ http://lightbend.github.io/config/latest/api/
# 1.1.0-9f31d6308e7ebbc3d7904b64ebb9f61f7e22a968: January 6, 2014 # 1.1.0-9f31d6308e7ebbc3d7904b64ebb9f61f7e22a968: January 6, 2014
@ -240,7 +240,7 @@ Thank you to contributors with commits since v1.2.1 tag:
- new API Config.getDuration() replaces getMilliseconds and - new API Config.getDuration() replaces getMilliseconds and
getNanoseconds. (should it return `long` instead of `Long` even getNanoseconds. (should it return `long` instead of `Long` even
though it's been in git for a while? weigh in at though it's been in git for a while? weigh in at
https://github.com/typesafehub/config/issues/119 ) https://github.com/lightbend/config/issues/119 )
- new API ConfigResolveOptions.setAllowUnresolved lets you - new API ConfigResolveOptions.setAllowUnresolved lets you
partially-resolve a Config partially-resolve a Config
- new API Config.isResolved lets you check on resolution status - new API Config.isResolved lets you check on resolution status

View File

@ -1,11 +1,11 @@
Configuration library for JVM languages. Configuration library for JVM languages.
[![Maven Central](https://maven-badges.herokuapp.com/maven-central/com.typesafe/config/badge.svg)](https://maven-badges.herokuapp.com/maven-central/com.typesafe/config) [![Maven Central](https://maven-badges.herokuapp.com/maven-central/com.typesafe/config/badge.svg)](https://maven-badges.herokuapp.com/maven-central/com.typesafe/config)
[![Build Status](https://travis-ci.org/typesafehub/config.svg?branch=master)](https://travis-ci.org/typesafehub/config) [![Build Status](https://travis-ci.org/lightbend/config.svg?branch=master)](https://travis-ci.org/lightbend/config)
If you have questions or are working on a pull request or just If you have questions or are working on a pull request or just
curious, please feel welcome to join the chat room: curious, please feel welcome to join the chat room:
[![Join chat https://gitter.im/typesafehub/config](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/typesafehub/config?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [![Join chat https://gitter.im/lightbend/config](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/lightbend/config?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
## Overview ## Overview
@ -123,15 +123,15 @@ Link for direct download if you don't use a dependency manager:
### Release Notes ### Release Notes
Please see NEWS.md in this directory, Please see NEWS.md in this directory,
https://github.com/typesafehub/config/blob/master/NEWS.md https://github.com/lightbend/config/blob/master/NEWS.md
### API docs ### API docs
- Online: http://typesafehub.github.com/config/latest/api/ - Online: http://lightbend.github.com/config/latest/api/
- also published in jar form - also published in jar form
- consider reading this README first for an intro - consider reading this README first for an intro
- for questions about the `.conf` file format, read - for questions about the `.conf` file format, read
[HOCON.md](https://github.com/typesafehub/config/blob/master/HOCON.md) [HOCON.md](https://github.com/lightbend/config/blob/master/HOCON.md)
in this directory in this directory
### Bugs and Patches ### Bugs and Patches
@ -145,7 +145,7 @@ account - it takes 30 seconds. You can do this at
http://www.typesafe.com/contribute/cla http://www.typesafe.com/contribute/cla
Please see Please see
[CONTRIBUTING](https://github.com/typesafehub/config/blob/master/CONTRIBUTING.md) [CONTRIBUTING](https://github.com/lightbend/config/blob/master/CONTRIBUTING.md)
for more including how to make a release. for more including how to make a release.
### Build ### Build
@ -166,7 +166,7 @@ Scala dependency.
### Longer Examples ### Longer Examples
See the examples in the `examples/` [directory](https://github.com/typesafehub/config/tree/master/examples). See the examples in the `examples/` [directory](https://github.com/lightbend/config/tree/master/examples).
You can run these from the sbt console with the commands `project You can run these from the sbt console with the commands `project
config-simple-app-java` and then `run`. config-simple-app-java` and then `run`.
@ -190,7 +190,7 @@ Objects are immutable, so methods on `Config` which transform the
configuration return a new `Config`. Other types such as configuration return a new `Config`. Other types such as
`ConfigParseOptions`, `ConfigResolveOptions`, `ConfigObject`, `ConfigParseOptions`, `ConfigResolveOptions`, `ConfigObject`,
etc. are also immutable. See the etc. are also immutable. See the
[API docs](http://typesafehub.github.com/config/latest/api/) for [API docs](http://lightbend.github.com/config/latest/api/) for
details of course. details of course.
### Schemas and Validation ### Schemas and Validation
@ -199,7 +199,7 @@ There isn't a schema language or anything like that. However, two
suggested tools are: suggested tools are:
- use the - use the
[checkValid() method](http://typesafehub.github.io/config/latest/api/com/typesafe/config/Config.html#checkValid-com.typesafe.config.Config-java.lang.String...-) [checkValid() method](http://lightbend.github.io/config/latest/api/com/typesafe/config/Config.html#checkValid-com.typesafe.config.Config-java.lang.String...-)
- access your config through a Settings class with a field for - access your config through a Settings class with a field for
each setting, and instantiate it on startup (immediately each setting, and instantiate it on startup (immediately
throwing an exception if any settings are missing) throwing an exception if any settings are missing)
@ -436,7 +436,7 @@ values into multiple places in your code. You have been warned!
### Understanding `Config` and `ConfigObject` ### Understanding `Config` and `ConfigObject`
To read and modify configuration, you'll use the To read and modify configuration, you'll use the
[Config](http://typesafehub.github.io/config/latest/api/com/typesafe/config/Config.html) [Config](http://lightbend.github.io/config/latest/api/com/typesafe/config/Config.html)
interface. A `Config` looks at a JSON-equivalent data structure as interface. A `Config` looks at a JSON-equivalent data structure as
a one-level map from paths to values. So if your JSON looks like a one-level map from paths to values. So if your JSON looks like
this: this:
@ -451,7 +451,7 @@ this:
Using the `Config` interface, you could write Using the `Config` interface, you could write
`conf.getInt("foo.bar")`. The `foo.bar` string is called a _path `conf.getInt("foo.bar")`. The `foo.bar` string is called a _path
expression_ expression_
([HOCON.md](https://github.com/typesafehub/config/blob/master/HOCON.md) ([HOCON.md](https://github.com/lightbend/config/blob/master/HOCON.md)
has the syntax details for these expressions). Iterating over this has the syntax details for these expressions). Iterating over this
`Config`, you would get two entries; `"foo.bar" : 42` and `Config`, you would get two entries; `"foo.bar" : 42` and
`"foo.baz" : 43`. When iterating a `Config` you will not find `"foo.baz" : 43`. When iterating a `Config` you will not find
@ -464,7 +464,7 @@ skip `null` values.
You can also look at a `Config` in the way most JSON APIs would, You can also look at a `Config` in the way most JSON APIs would,
through the through the
[ConfigObject](http://typesafehub.github.io/config/latest/api/com/typesafe/config/ConfigObject.html) [ConfigObject](http://lightbend.github.io/config/latest/api/com/typesafe/config/ConfigObject.html)
interface. This interface represents an object node in the JSON interface. This interface represents an object node in the JSON
tree. `ConfigObject` instances come in multi-level trees, and the tree. `ConfigObject` instances come in multi-level trees, and the
keys do not have any syntax (they are just strings, not path keys do not have any syntax (they are just strings, not path
@ -476,15 +476,15 @@ expressions). Iterating over the above example as a
In `ConfigObject`, `null` values are visible (distinct from In `ConfigObject`, `null` values are visible (distinct from
missing values), just as they are in JSON. missing values), just as they are in JSON.
`ConfigObject` is a subtype of [ConfigValue](http://typesafehub.github.io/config/latest/api/com/typesafe/config/ConfigValue.html), where the other `ConfigObject` is a subtype of [ConfigValue](http://lightbend.github.io/config/latest/api/com/typesafe/config/ConfigValue.html), where the other
subtypes are the other JSON types (list, string, number, boolean, null). subtypes are the other JSON types (list, string, number, boolean, null).
`Config` and `ConfigObject` are two ways to look at the same `Config` and `ConfigObject` are two ways to look at the same
internal data structure, and you can convert between them for free internal data structure, and you can convert between them for free
using using
[Config.root()](http://typesafehub.github.io/config/latest/api/com/typesafe/config/Config.html#root%28%29) [Config.root()](http://lightbend.github.io/config/latest/api/com/typesafe/config/Config.html#root%28%29)
and and
[ConfigObject.toConfig()](http://typesafehub.github.io/config/latest/api/com/typesafe/config/ConfigObject.html#toConfig%28%29). [ConfigObject.toConfig()](http://lightbend.github.io/config/latest/api/com/typesafe/config/ConfigObject.html#toConfig%28%29).
### ConfigBeanFactory ### ConfigBeanFactory
@ -507,7 +507,7 @@ particular value manually).
The JSON superset is called "Human-Optimized Config Object The JSON superset is called "Human-Optimized Config Object
Notation" or HOCON, and files use the suffix `.conf`. See Notation" or HOCON, and files use the suffix `.conf`. See
[HOCON.md](https://github.com/typesafehub/config/blob/master/HOCON.md) [HOCON.md](https://github.com/lightbend/config/blob/master/HOCON.md)
in this directory for more detail. in this directory for more detail.
After processing a `.conf` file, the result is always just a JSON After processing a `.conf` file, the result is always just a JSON
@ -772,7 +772,7 @@ version 1.2.1 and earlier will work with Java 6.
Please use 1.2.1 if you need Java 6 support, though some people Please use 1.2.1 if you need Java 6 support, though some people
have expressed interest in a branch off of 1.3.x supporting have expressed interest in a branch off of 1.3.x supporting
Java 7. If you want to work on that branch you might bring it up Java 7. If you want to work on that branch you might bring it up
on [chat](https://gitter.im/typesafehub/config). We can release a on [chat](https://gitter.im/lightbend/config). We can release a
jar for Java 7 if someone(s) steps up to maintain the branch. The jar for Java 7 if someone(s) steps up to maintain the branch. The
master branch does not use Java 8 "gratuitously" but some APIs master branch does not use Java 8 "gratuitously" but some APIs
that use Java 8 types will need to be removed. that use Java 8 types will need to be removed.
@ -854,10 +854,10 @@ format.
#### Clojure wrappers for the Java library #### Clojure wrappers for the Java library
* beamly-core.config https://github.com/beamly/beamly-core.config * beamly-core.config https://github.com/beamly/beamly-core.config
#### Kotlin wrappers for the Java library #### Kotlin wrappers for the Java library
* config4k https://github.com/config4k/config4k * config4k https://github.com/config4k/config4k
#### Scala port #### Scala port
* SHocon https://github.com/unicredit/shocon (work with both Scala and Scala.Js) * SHocon https://github.com/unicredit/shocon (work with both Scala and Scala.Js)
@ -879,13 +879,13 @@ format.
* https://github.com/puppetlabs/cpp-hocon * https://github.com/puppetlabs/cpp-hocon
#### JavaScript port #### JavaScript port
* https://github.com/yellowblood/hocon-js (missing features, under development) * https://github.com/yellowblood/hocon-js (missing features, under development)
#### C# port #### C# port
* https://github.com/akkadotnet/HOCON * https://github.com/akkadotnet/HOCON
#### Linting tool #### Linting tool
* A web based linting tool http://www.hoconlint.com/ * A web based linting tool http://www.hoconlint.com/

View File

@ -14,11 +14,11 @@ scalacOptions in GlobalScope in Test := Seq("-unchecked", "-deprecation", "-feat
scalaVersion in ThisBuild := "2.10.4" scalaVersion in ThisBuild := "2.10.4"
val sonatype = new PublishToSonatype { val sonatype = new PublishToSonatype {
def projectUrl = "https://github.com/typesafehub/config" def projectUrl = "https://github.com/lightbend/config"
def developerId = "havocp" def developerId = "havocp"
def developerName = "Havoc Pennington" def developerName = "Havoc Pennington"
def developerUrl = "http://ometer.com/" def developerUrl = "http://ometer.com/"
def scmUrl = "git://github.com/typesafehub/config.git" def scmUrl = "git://github.com/lightbend/config.git"
} }
lazy val commonSettings: Seq[Setting[_]] = Def.settings( lazy val commonSettings: Seq[Setting[_]] = Def.settings(

View File

@ -84,7 +84,7 @@ javacOptions in (Compile, doc) ++= Seq("-group", s"Public API (version ${version
javadocSourceBaseUrl := { javadocSourceBaseUrl := {
for (gitHead <- com.typesafe.sbt.SbtGit.GitKeys.gitHeadCommit.value) for (gitHead <- com.typesafe.sbt.SbtGit.GitKeys.gitHeadCommit.value)
yield s"https://github.com/typesafehub/config/blob/$gitHead/config/src/main/java" yield s"https://github.com/lightbend/config/blob/$gitHead/config/src/main/java"
} }
javaVersionPrefix in javaVersionCheck := Some("1.8") javaVersionPrefix in javaVersionCheck := Some("1.8")

View File

@ -36,7 +36,7 @@ import java.util.concurrent.TimeUnit;
* *
* <p> * <p>
* You can find an example app and library <a * You can find an example app and library <a
* href="https://github.com/typesafehub/config/tree/master/examples">on * href="https://github.com/lightbend/config/tree/master/examples">on
* GitHub</a>. Also be sure to read the <a * GitHub</a>. Also be sure to read the <a
* href="package-summary.html#package_description">package overview</a> which * href="package-summary.html#package_description">package overview</a> which
* describes the big picture as shown in those examples. * describes the big picture as shown in those examples.
@ -56,7 +56,7 @@ import java.util.concurrent.TimeUnit;
* in a JSON object; it's just a string that's the key in a map. A "path" is a * 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 * parseable expression with a syntax and it refers to a series of keys. Path
* expressions are described in the <a * expressions are described in the <a
* href="https://github.com/typesafehub/config/blob/master/HOCON.md">spec for * href="https://github.com/lightbend/config/blob/master/HOCON.md">spec for
* Human-Optimized Config Object Notation</a>. In brief, a path is * Human-Optimized Config Object Notation</a>. In brief, a path is
* period-separated so "a.b.c" looks for key c in object b in object a in the * 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 * root object. Sometimes double quotes are needed around special characters in
@ -110,7 +110,7 @@ import java.util.concurrent.TimeUnit;
* <p> * <p>
* <em>Substitutions</em> are the <code>${foo.bar}</code> syntax in config * <em>Substitutions</em> are the <code>${foo.bar}</code> syntax in config
* files, described in the <a href= * files, described in the <a href=
* "https://github.com/typesafehub/config/blob/master/HOCON.md#substitutions" * "https://github.com/lightbend/config/blob/master/HOCON.md#substitutions"
* >specification</a>. Resolving substitutions replaces these references with real * >specification</a>. Resolving substitutions replaces these references with real
* values. * values.
* *
@ -189,7 +189,7 @@ public interface Config extends ConfigMergeable {
/** /**
* Returns a replacement config with all substitutions (the * Returns a replacement config with all substitutions (the
* <code>${foo.bar}</code> syntax, see <a * <code>${foo.bar}</code> syntax, see <a
* href="https://github.com/typesafehub/config/blob/master/HOCON.md">the * href="https://github.com/lightbend/config/blob/master/HOCON.md">the
* spec</a>) resolved. Substitutions are looked up using this * spec</a>) resolved. Substitutions are looked up using this
* <code>Config</code> as the root object, that is, a substitution * <code>Config</code> as the root object, that is, a substitution
* <code>${foo.bar}</code> will be replaced with the result of * <code>${foo.bar}</code> 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, * 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 * it's parsed understanding unit suffixes such as "128K", as documented in
* the <a * the <a
* href="https://github.com/typesafehub/config/blob/master/HOCON.md">the * href="https://github.com/lightbend/config/blob/master/HOCON.md">the
* spec</a>. * spec</a>.
* *
* @param path * @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, * 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 * it's parsed understanding unit suffixes such as "128K", as documented in
* the <a * the <a
* href="https://github.com/typesafehub/config/blob/master/HOCON.md">the * href="https://github.com/lightbend/config/blob/master/HOCON.md">the
* spec</a>. * spec</a>.
* *
* @since 1.3.0 * @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 * 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 * 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 <a * units suffixes like "10m" or "5ns" as documented in the <a
* href="https://github.com/typesafehub/config/blob/master/HOCON.md">the * href="https://github.com/lightbend/config/blob/master/HOCON.md">the
* spec</a>. * spec</a>.
* *
* @deprecated As of release 1.1, replaced by {@link #getDuration(String, TimeUnit)} * @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 * number, then it's taken as milliseconds and then converted to the
* requested TimeUnit; if it's a string, it's parsed understanding units * requested TimeUnit; if it's a string, it's parsed understanding units
* suffixes like "10m" or "5ns" as documented in the <a * suffixes like "10m" or "5ns" as documented in the <a
* href="https://github.com/typesafehub/config/blob/master/HOCON.md">the * href="https://github.com/lightbend/config/blob/master/HOCON.md">the
* spec</a>. * spec</a>.
* *
* @since 1.2.0 * @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 * already a number, then it's taken as milliseconds; if it's
* a string, it's parsed understanding units suffixes like * a string, it's parsed understanding units suffixes like
* "10m" or "5ns" as documented in the <a * "10m" or "5ns" as documented in the <a
* href="https://github.com/typesafehub/config/blob/master/HOCON.md">the * href="https://github.com/lightbend/config/blob/master/HOCON.md">the
* spec</a>. This method never returns null. * spec</a>. This method never returns null.
* *
* @since 1.3.0 * @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 * already a number, then it's taken as days; if it's
* a string, it's parsed understanding units suffixes like * a string, it's parsed understanding units suffixes like
* "10d" or "5w" as documented in the <a * "10d" or "5w" as documented in the <a
* href="https://github.com/typesafehub/config/blob/master/HOCON.md">the * href="https://github.com/lightbend/config/blob/master/HOCON.md">the
* spec</a>. This method never returns null. * spec</a>. This method never returns null.
* *
* @since 1.3.0 * @since 1.3.0

View File

@ -28,7 +28,7 @@ import java.util.concurrent.Callable;
* from a resource and nothing else. * from a resource and nothing else.
* *
* <p> You can find an example app and library <a * <p> You can find an example app and library <a
* href="https://github.com/typesafehub/config/tree/master/examples">on * href="https://github.com/lightbend/config/tree/master/examples">on
* GitHub</a>. Also be sure to read the <a * GitHub</a>. Also be sure to read the <a
* href="package-summary.html#package_description">package * href="package-summary.html#package_description">package
* overview</a> which describes the big picture as shown in those * overview</a> which describes the big picture as shown in those
@ -570,7 +570,7 @@ public final class ConfigFactory {
/** /**
* Converts a Java {@link java.util.Properties} object to a * Converts a Java {@link java.util.Properties} object to a
* {@link ConfigObject} using the rules documented in the <a * {@link ConfigObject} using the rules documented in the <a
* href="https://github.com/typesafehub/config/blob/master/HOCON.md">HOCON * href="https://github.com/lightbend/config/blob/master/HOCON.md">HOCON
* spec</a>. The keys in the <code>Properties</code> object are split on the * spec</a>. The keys in the <code>Properties</code> object are split on the
* period character '.' and treated as paths. The values will all end up as * 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 * string values. If you have both "a=foo" and "a.b=bar" in your properties

View File

@ -27,7 +27,7 @@ public interface ConfigMergeable {
* *
* <p> * <p>
* The semantics of merging are described in the <a * The semantics of merging are described in the <a
* href="https://github.com/typesafehub/config/blob/master/HOCON.md">spec * href="https://github.com/lightbend/config/blob/master/HOCON.md">spec
* for HOCON</a>. Merging typically occurs when either the same object is * for HOCON</a>. Merging typically occurs when either the same object is
* created twice in the same file, or two config files are both loaded. For * created twice in the same file, or two config files are both loaded. For
* example: * example:

View File

@ -6,7 +6,7 @@ package com.typesafe.config;
/** /**
* A set of options related to resolving substitutions. Substitutions use the * A set of options related to resolving substitutions. Substitutions use the
* <code>${foo.bar}</code> syntax and are documented in the <a * <code>${foo.bar}</code> syntax and are documented in the <a
* href="https://github.com/typesafehub/config/blob/master/HOCON.md">HOCON</a> * href="https://github.com/lightbend/config/blob/master/HOCON.md">HOCON</a>
* spec. * spec.
* <p> * <p>
* Typically this class would be used with the method * Typically this class would be used with the method

View File

@ -5,7 +5,7 @@ package com.typesafe.config;
/** /**
* The syntax of a character stream (<a href="http://json.org">JSON</a>, <a * The syntax of a character stream (<a href="http://json.org">JSON</a>, <a
* href="https://github.com/typesafehub/config/blob/master/HOCON.md">HOCON</a> * href="https://github.com/lightbend/config/blob/master/HOCON.md">HOCON</a>
* aka ".conf", or <a href= * aka ".conf", or <a href=
* "http://download.oracle.com/javase/7/docs/api/java/util/Properties.html#load%28java.io.Reader%29" * "http://download.oracle.com/javase/7/docs/api/java/util/Properties.html#load%28java.io.Reader%29"
* >Java properties</a>). * >Java properties</a>).
@ -21,7 +21,7 @@ public enum ConfigSyntax {
JSON, JSON,
/** /**
* The JSON-superset <a * The JSON-superset <a
* href="https://github.com/typesafehub/config/blob/master/HOCON.md" * href="https://github.com/lightbend/config/blob/master/HOCON.md"
* >HOCON</a> format. Associated with the <code>.conf</code> file extension * >HOCON</a> format. Associated with the <code>.conf</code> file extension
* and <code>application/hocon</code> Content-Type. * and <code>application/hocon</code> Content-Type.
*/ */

View File

@ -192,7 +192,7 @@ final class ConfigParser {
// we really should make this work, but for now throwing an // we really should make this work, but for now throwing an
// exception is better than producing an incorrect result. // exception is better than producing an incorrect result.
// See https://github.com/typesafehub/config/issues/160 // See https://github.com/lightbend/config/issues/160
if (arrayCount > 0 && obj.resolveStatus() != ResolveStatus.RESOLVED) if (arrayCount > 0 && obj.resolveStatus() != ResolveStatus.RESOLVED)
throw parseError("Due to current limitations of the config parser, when an include statement is nested inside a list value, " throw parseError("Due to current limitations of the config parser, when an include statement is nested inside a list value, "
+ "${} substitutions inside the included file cannot be resolved correctly. Either move the include outside of the list value or " + "${} substitutions inside the included file cannot be resolved correctly. Either move the include outside of the list value or "
@ -247,7 +247,7 @@ final class ConfigParser {
// we really should make this work, but for now throwing // we really should make this work, but for now throwing
// an exception is better than producing an incorrect // an exception is better than producing an incorrect
// result. See // result. See
// https://github.com/typesafehub/config/issues/160 // https://github.com/lightbend/config/issues/160
if (arrayCount > 0) if (arrayCount > 0)
throw parseError("Due to current limitations of the config parser, += does not work nested inside a list. " throw parseError("Due to current limitations of the config parser, += does not work nested inside a list. "
+ "+= expands to a ${} substitution and the path in ${} cannot currently refer to list elements. " + "+= expands to a ${} substitution and the path in ${} cannot currently refer to list elements. "

View File

@ -17,7 +17,7 @@ Please check out the {@link com.typesafe.config.Config public API} instead, unle
you're interested in browsing implementation details. None of the ABI you're interested in browsing implementation details. None of the ABI
under <code>impl</code> has any guarantees; it will change whenever someone under <code>impl</code> has any guarantees; it will change whenever someone
feels like changing it. If you feel you need access to something feels like changing it. If you feel you need access to something
in <code>impl</code>, <a href="https://github.com/typesafehub/config/issues">please in <code>impl</code>, <a href="https://github.com/lightbend/config/issues">please
file a feature request</a>. file a feature request</a>.
</p> </p>

View File

@ -9,14 +9,14 @@
<body bgcolor="white"> <body bgcolor="white">
<p> <p>
An API for loading and using configuration files, see <a href="https://github.com/typesafehub/config/">the project site</a> An API for loading and using configuration files, see <a href="https://github.com/lightbend/config/">the project site</a>
for more information. for more information.
</p> </p>
<p> <p>
Typically you would load configuration with a static method from {@link com.typesafe.config.ConfigFactory} and then use 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, it with methods in the {@link com.typesafe.config.Config} interface. Configuration may be in the form of JSON files,
Java properties, or <a href="https://github.com/typesafehub/config/blob/master/HOCON.md">HOCON files</a>; you may also Java properties, or <a href="https://github.com/lightbend/config/blob/master/HOCON.md">HOCON files</a>; you may also
build your own configuration in code or from your own file formats. build your own configuration in code or from your own file formats.
</p> </p>
@ -26,8 +26,8 @@ its configuration in "application.conf" on the classpath.
If you use the default configuration from {@link com.typesafe.config.ConfigFactory#load()} If you use the default configuration from {@link com.typesafe.config.ConfigFactory#load()}
there's no need to pass a configuration to your libraries 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. and frameworks, as long as they all default to this same default, which they should.
<br/><strong>Example application code:</strong> <a href="https://github.com/typesafehub/config/tree/master/examples/java/simple-app/src/main">Java</a> and <a href="https://github.com/typesafehub/config/tree/master/examples/scala/simple-app/src/main">Scala</a>. <br/><strong>Example application code:</strong> <a href="https://github.com/lightbend/config/tree/master/examples/java/simple-app/src/main">Java</a> and <a href="https://github.com/lightbend/config/tree/master/examples/scala/simple-app/src/main">Scala</a>.
<br/>Showing a couple of more special-purpose features, <strong>a more complex example:</strong> <a href="https://github.com/typesafehub/config/tree/master/examples/java/complex-app/src/main">Java</a> and <a href="https://github.com/typesafehub/config/tree/master/examples/scala/complex-app/src/main">Scala</a>. <br/>Showing a couple of more special-purpose features, <strong>a more complex example:</strong> <a href="https://github.com/lightbend/config/tree/master/examples/java/complex-app/src/main">Java</a> and <a href="https://github.com/lightbend/config/tree/master/examples/scala/complex-app/src/main">Scala</a>.
</p> </p>
<p> <p>
@ -36,21 +36,21 @@ A library or framework should ship a file "reference.conf" in its jar, and allow
call {@link com.typesafe.config.ConfigFactory#load()} call {@link com.typesafe.config.ConfigFactory#load()}
to get the default one. Typically a library might offer two constructors, one with a <code>Config</code> parameter to get the default one. Typically a library might offer two constructors, one with a <code>Config</code> parameter
and one which uses {@link com.typesafe.config.ConfigFactory#load()}. and one which uses {@link com.typesafe.config.ConfigFactory#load()}.
<br/><strong>Example library code:</strong> <a href="https://github.com/typesafehub/config/tree/master/examples/java/simple-lib/src/main">Java</a> and <a href="https://github.com/typesafehub/config/tree/master/examples/scala/simple-lib/src/main">Scala</a>. <br/><strong>Example library code:</strong> <a href="https://github.com/lightbend/config/tree/master/examples/java/simple-lib/src/main">Java</a> and <a href="https://github.com/lightbend/config/tree/master/examples/scala/simple-lib/src/main">Scala</a>.
</p> </p>
<p> <p>
Check out the full <a href="https://github.com/typesafehub/config/tree/master/examples">examples directory on GitHub</a>. Check out the full <a href="https://github.com/lightbend/config/tree/master/examples">examples directory on GitHub</a>.
</p> </p>
<p> <p>
What else to read: What else to read:
<ul> <ul>
<li>The overview documentation for interface {@link com.typesafe.config.Config}.</li> <li>The overview documentation for interface {@link com.typesafe.config.Config}.</li>
<li>The <a href="https://github.com/typesafehub/config/blob/master/README.md">README</a> for the library.</li> <li>The <a href="https://github.com/lightbend/config/blob/master/README.md">README</a> for the library.</li>
<li>If you want to use <code>.conf</code> files in addition to <code>.json</code> and <code>.properties</code>, <li>If you want to use <code>.conf</code> files in addition to <code>.json</code> and <code>.properties</code>,
see the <a href="https://github.com/typesafehub/config/blob/master/README.md">README</a> for some short examples see the <a href="https://github.com/lightbend/config/blob/master/README.md">README</a> for some short examples
and the full <a href="https://github.com/typesafehub/config/blob/master/HOCON.md">HOCON spec</a> for the long version.</li> and the full <a href="https://github.com/lightbend/config/blob/master/HOCON.md">HOCON spec</a> for the long version.</li>
</ul> </ul>
</p> </p>

View File

@ -10,8 +10,8 @@ package com.typesafe.config.parser;
* Note: at present there is no way to obtain an instance of this interface, so * Note: at present there is no way to obtain an instance of this interface, so
* please ignore it. A future release will make syntax tree nodes available in * please ignore it. A future release will make syntax tree nodes available in
* the public API. If you are interested in working on it, please see: <a * the public API. If you are interested in working on it, please see: <a
* href="https://github.com/typesafehub/config/issues/300" * href="https://github.com/lightbend/config/issues/300"
* >https://github.com/typesafehub/config/issues/300</a> * >https://github.com/lightbend/config/issues/300</a>
* *
* <p> * <p>
* Because this object is immutable, it is safe to use from multiple threads and * Because this object is immutable, it is safe to use from multiple threads and

View File

@ -14,7 +14,7 @@ files. You do not want this package for everyday config in your app: see
the <code>com.typesafe.config</code> package instead. You would use the raw the <code>com.typesafe.config</code> package instead. You would use the raw
parser if you're doing something like reading, modifying, and re-saving a config parser if you're doing something like reading, modifying, and re-saving a config
file. For info on the main config API this parser is a part of, file. For info on the main config API this parser is a part of,
see <a href="https://github.com/typesafehub/config/">the project site</a>. see <a href="https://github.com/lightbend/config/">the project site</a>.
</p> </p>
<p> <p>

View File

@ -346,7 +346,7 @@ class ConcatenationTest extends TestUtils {
} }
// We would ideally make this case NOT throw an exception but we need to do some work // We would ideally make this case NOT throw an exception but we need to do some work
// to get there, see https://github.com/typesafehub/config/issues/160 // to get there, see https://github.com/lightbend/config/issues/160
@Test @Test
def plusEqualsMultipleTimesNestedInArray() { def plusEqualsMultipleTimesNestedInArray() {
val e = intercept[ConfigException.Parse] { val e = intercept[ConfigException.Parse] {
@ -357,7 +357,7 @@ class ConcatenationTest extends TestUtils {
} }
// We would ideally make this case NOT throw an exception but we need to do some work // We would ideally make this case NOT throw an exception but we need to do some work
// to get there, see https://github.com/typesafehub/config/issues/160 // to get there, see https://github.com/lightbend/config/issues/160
@Test @Test
def plusEqualsMultipleTimesNestedInPlusEquals() { def plusEqualsMultipleTimesNestedInPlusEquals() {
val e = intercept[ConfigException.Parse] { val e = intercept[ConfigException.Parse] {
@ -367,7 +367,7 @@ class ConcatenationTest extends TestUtils {
assertTrue(e.getMessage.contains("limitation")) assertTrue(e.getMessage.contains("limitation"))
} }
// from https://github.com/typesafehub/config/issues/177 // from https://github.com/lightbend/config/issues/177
@Test @Test
def arrayConcatenationInDoubleNestedDelayedMerge() { def arrayConcatenationInDoubleNestedDelayedMerge() {
val unresolved = parseConfig("""d { x = [] }, c : ${d}, c { x += 1, x += 2 }""") val unresolved = parseConfig("""d { x = [] }, c : ${d}, c { x += 1, x += 2 }""")
@ -375,7 +375,7 @@ class ConcatenationTest extends TestUtils {
assertEquals(Seq(1, 2), conf.getIntList("c.x").asScala) assertEquals(Seq(1, 2), conf.getIntList("c.x").asScala)
} }
// from https://github.com/typesafehub/config/issues/177 // from https://github.com/lightbend/config/issues/177
@Test @Test
def arrayConcatenationAsPartOfDelayedMerge() { def arrayConcatenationAsPartOfDelayedMerge() {
val unresolved = parseConfig(""" c { x: [], x : ${c.x}[1], x : ${c.x}[2] }""") val unresolved = parseConfig(""" c { x: [], x : ${c.x}[1], x : ${c.x}[2] }""")
@ -383,7 +383,7 @@ class ConcatenationTest extends TestUtils {
assertEquals(Seq(1, 2), conf.getIntList("c.x").asScala) assertEquals(Seq(1, 2), conf.getIntList("c.x").asScala)
} }
// from https://github.com/typesafehub/config/issues/177 // from https://github.com/lightbend/config/issues/177
@Test @Test
def arrayConcatenationInDoubleNestedDelayedMerge2() { def arrayConcatenationInDoubleNestedDelayedMerge2() {
val unresolved = parseConfig("""d { x = [] }, c : ${d}, c { x : ${c.x}[1], x : ${c.x}[2] }""") val unresolved = parseConfig("""d { x = [] }, c : ${d}, c { x : ${c.x}[1], x : ${c.x}[2] }""")
@ -391,7 +391,7 @@ class ConcatenationTest extends TestUtils {
assertEquals(Seq(1, 2), conf.getIntList("c.x").asScala) assertEquals(Seq(1, 2), conf.getIntList("c.x").asScala)
} }
// from https://github.com/typesafehub/config/issues/177 // from https://github.com/lightbend/config/issues/177
@Test @Test
def arrayConcatenationInTripleNestedDelayedMerge() { def arrayConcatenationInTripleNestedDelayedMerge() {
val unresolved = parseConfig("""{ r: { d.x=[] }, q: ${r}, q : { d { x = [] }, c : ${q.d}, c { x : ${q.c.x}[1], x : ${q.c.x}[2] } } }""") val unresolved = parseConfig("""{ r: { d.x=[] }, q: ${r}, q : { d { x = [] }, c : ${q.d}, c { x : ${q.c.x}[1], x : ${q.c.x}[2] } } }""")

View File

@ -280,7 +280,7 @@ class ConfigValueTest extends TestUtils {
} }
/** /**
* Reproduces the issue <a href=https://github.com/typesafehub/config/issues/461>#461</a>. * Reproduces the issue <a href=https://github.com/lightbend/config/issues/461>#461</a>.
* <p> * <p>
* We use a custom de-/serializer that encodes String objects in a JDK-incompatible way. Encoding used here * We use a custom de-/serializer that encodes String objects in a JDK-incompatible way. Encoding used here
* is rather simplistic: a long indicating the length in bytes (JDK uses a variable length integer) followed * is rather simplistic: a long indicating the length in bytes (JDK uses a variable length integer) followed

View File

@ -906,7 +906,7 @@ class PublicApiTest extends TestUtils {
} }
// We would ideally make this case NOT throw an exception but we need to do some work // We would ideally make this case NOT throw an exception but we need to do some work
// to get there, see https://github.com/typesafehub/config/issues/160 // to get there, see https://github.com/lightbend/config/issues/160
@Test @Test
def detectIncludeFromList() { def detectIncludeFromList() {
val e = intercept[ConfigException.Parse] { val e = intercept[ConfigException.Parse] {
@ -1070,7 +1070,7 @@ class PublicApiTest extends TestUtils {
@Test @Test
def heuristicIncludeChecksClasspath(): Unit = { def heuristicIncludeChecksClasspath(): Unit = {
// from https://github.com/typesafehub/config/issues/188 // from https://github.com/lightbend/config/issues/188
withScratchDirectory("heuristicIncludeChecksClasspath") { dir => withScratchDirectory("heuristicIncludeChecksClasspath") { dir =>
val f = new File(dir, "foo.conf") val f = new File(dir, "foo.conf")
writeFile(f, """ writeFile(f, """

View File

@ -70,7 +70,7 @@ class UnitParserTest extends TestUtils {
assertTrue(s"${e2.getMessage} was not the expected error message", e2.getMessage.contains("time unit 'seconds'")) assertTrue(s"${e2.getMessage} was not the expected error message", e2.getMessage.contains("time unit 'seconds'"))
} }
// https://github.com/typesafehub/config/issues/117 // https://github.com/lightbend/config/issues/117
// this broke because "1d" is a valid double for parseDouble // this broke because "1d" is a valid double for parseDouble
@Test @Test
def parseOneDayAsMilliseconds(): Unit = { def parseOneDayAsMilliseconds(): Unit = {

View File

@ -37,7 +37,7 @@ object LinkSourcePlugin extends AutoPlugin {
private def rewriteSourceLinks(dir: File, sourceBaseUrl: String, log: Logger): Unit = { private def rewriteSourceLinks(dir: File, sourceBaseUrl: String, log: Logger): Unit = {
// Convert <a href="../../../src-html/com/typesafe/config/Config.html#line.165"> to // Convert <a href="../../../src-html/com/typesafe/config/Config.html#line.165"> to
// "https://github.com/typesafehub/config/blob/v1.2.1/config/src/main/java/com/typesafe/config/Config.java#L165" // "https://github.com/lightbend/config/blob/v1.2.1/config/src/main/java/com/typesafe/config/Config.java#L165"
// in all .html files found underneath dir // in all .html files found underneath dir
val origRegex = "href=\".*src-html/([^\"]+)\"".r val origRegex = "href=\".*src-html/([^\"]+)\"".r
def listFiles(d: File): Seq[File] = IO.listFiles(d).toSeq.flatMap { f => def listFiles(d: File): Seq[File] = IO.listFiles(d).toSeq.flatMap { f =>