Permalink
Browse files

another NEWS tweak

  • Loading branch information...
1 parent 3ce0997 commit b88fd55f869289841949d08a1e363d77a192d451 @havocp havocp committed Apr 13, 2012
Showing with 21 additions and 18 deletions.
  1. +21 −18 NEWS.md
View
@@ -1,37 +1,40 @@
-# 0.NEXT.0: Sometime
+# 0.4.0: April 12, 2012
- - the *serialization format has changed* to one that's extensible
- and lets the library evolve without breaking serialization all
- the time. The new format is also much more compact. However,
- this change is incompatible with old serializations, if you
- rely on that. The hope is to avoid serialization breakage in
- the future now that the format is not the default Java one
- (which was a direct dump of all the implementation details).
- - *serializing an unresolved Config* (one that hasn't had
+ - this is **rolling toward 1.0** and should be pretty much
+ feature-complete.
+ - the **serialization format has changed** to one that's
+ extensible and lets the library evolve without breaking
+ serialization all the time. The new format is also much more
+ compact. However, this change is incompatible with old
+ serializations, if you rely on that. The hope is to avoid
+ serialization breakage in the future now that the format is not
+ the default Java one (which was a direct dump of all the
+ implementation details).
+ - **serializing an unresolved Config** (one that hasn't had
resolve() called on it) is no longer supported, you will get
NotSerializableException if you try.
- ConfigValue.render() now supports ConfigRenderOptions which
- means you can get a *no-whitespace no-comments plain JSON
- rendering* of a ConfigValue
- - supports *self-referential substitutions*, such as
+ means you can get a **no-whitespace no-comments plain JSON
+ rendering** of a ConfigValue
+ - supports **self-referential substitutions**, such as
`path=${path}":/bin"`, by "looking backward" to the previous
value of `path`
- - supports *concatenating arrays and merging objects within a
- single value*. So you can do `path=${path} [ "/bin" ]` for
+ - supports **concatenating arrays and merging objects within a
+ single value**. So you can do `path=${path} [ "/bin" ]` for
example. See README and spec for more details.
- - supports *array append* `+=` where `path+="/bin"` expands to
+ - supports **array append** `+=` where `path+="/bin"` expands to
`path=${?path} [ "/bin" ]`
- - supports *specifying type of include* `include
+ - supports **specifying type of include** `include
url("http://example.com/")`, `include file("/my/file.conf")`,
and `include classpath("whatever")`. This syntax forces
treatment as URL, file, or classpath resource.
- - supports *including URLs* `include
+ - supports **including URLs** `include
"http://example.com/whatever.conf"` (if an include is a valid
URL, it's loaded as such). This is incompatible with prior
versions, if you have a filename that is also a valid URL, it
would have loaded previously but now it will not. Use the
`include file("")` syntax to force treatment as a file.
- - *class loaders are now recursively inherited* through include
+ - **class loaders are now recursively inherited** through include
statements; previously, even if you set a custom class loader
when parsing a file, it would not be used for parsing a
classpath resource included from the file.

0 comments on commit b88fd55

Please sign in to comment.