From 9ca5deea75cf85daf26ae6fde9edde7854679f5b Mon Sep 17 00:00:00 2001
From: Robert Forkel <xrotwang@googlemail.com>
Date: Tue, 14 Mar 2023 10:56:20 +0100
Subject: [PATCH] release 1.9.0

---
 CHANGELOG.md  |  2 +-
 README.md     | 25 +++++++++++++++++--------
 setup.cfg     |  3 ++-
 src/newick.py |  2 +-
 4 files changed, 21 insertions(+), 11 deletions(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 98143f1..9308304 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,7 +2,7 @@
 
 The `newick` package adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
 
-## [Unreleased]
+## [v1.9.0] - 2023-03-14
 
 Support round-tripping Newick with two annotations per node, one before and one after the
 length separator.
diff --git a/README.md b/README.md
index 30e6bb5..26cbf69 100644
--- a/README.md
+++ b/README.md
@@ -128,14 +128,23 @@ can be accessed from the `dict` `Node.properties`:
 {'k1': 'v1', 'k2': 'v2'}
 ```
 
-Note that we still don't support **typed** node properties. I.e. values in `Node.properties` are
-always strings. Since typed properties tend to be specific to the application writing the newick,
-this level of support would require more knowledge of the creation context of the tree than can
-safely be inferred from the Newick string alone.
-```python
->>> newick.loads('(A,B)C[&range={1,5},support="100"];')[0].properties
-{'range': '{1,5}', 'support': '"100"'}
-```
+**Limitations:**
+
+- **Typed** node properties are not supported. I.e. values in `Node.properties` are
+  always strings. Since typed properties tend to be specific to the application writing the newick,
+  this level of support would require more knowledge of the creation context of the tree than can
+  safely be inferred from the Newick string alone.
+  ```python
+  >>> newick.loads('(A,B)C[&range={1,5},support="100"];')[0].properties
+  {'range': '{1,5}', 'support': '"100"'}
+  ```
+- Node annotations in comments are not completely round-trip-safe. In particular multiple comments
+  per node may be lumped together (using `|` as separator) when serializing a Newick node:
+  ```python
+  >>> newick.loads('(a,b)c[c1][c2]:3')[0].newick
+  '(a,b)c[c1|c2]:3'
+  ```
+
 
 ## Writing Newick
 
diff --git a/setup.cfg b/setup.cfg
index 62a8376..acb026b 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -1,6 +1,7 @@
 [metadata]
 name = newick
-version = 1.8.2.dev0
+version = 1.9.0
+
 author = Robert Forkel
 author_email = robert_forkel@eva.mpg.de
 description = A python module to read and write the Newick format
diff --git a/src/newick.py b/src/newick.py
index cfe4f1c..cf01b6e 100644
--- a/src/newick.py
+++ b/src/newick.py
@@ -10,7 +10,7 @@ import pathlib
 import itertools
 import dataclasses
 
-__version__ = "1.8.2.dev0"
+__version__ = "1.9.0"
 
 QUOTE = "'"
 ESCAPE = {"'", "\\"}
-- 
GitLab