| Release v1.1.0 | |
| ============== | |
| **New Features** | |
| * New attribute helpers. | |
| * Added the `Element.SortAttrs` method, which lexicographically sorts an | |
| element's attributes by key. | |
| * New `ReadSettings` properties. | |
| * Added `Entity` for the support of custom entity maps. | |
| * New `WriteSettings` properties. | |
| * Added `UseCRLF` to allow the output of CR-LF newlines instead of the | |
| default LF newlines. This is useful on Windows systems. | |
| * Additional support for text and CDATA sections. | |
| * The `Element.Text` method now returns the concatenation of all consecutive | |
| character data tokens immediately following an element's opening tag. | |
| * Added `Element.SetCData` to replace the character data immediately | |
| following an element's opening tag with a CDATA section. | |
| * Added `Element.CreateCData` to create and add a CDATA section child | |
| `CharData` token to an element. | |
| * Added `Element.CreateText` to create and add a child text `CharData` token | |
| to an element. | |
| * Added `NewCData` to create a parentless CDATA section `CharData` token. | |
| * Added `NewText` to create a parentless text `CharData` | |
| token. | |
| * Added `CharData.IsCData` to detect if the token contains a CDATA section. | |
| * Added `CharData.IsWhitespace` to detect if the token contains whitespace | |
| inserted by one of the document Indent functions. | |
| * Modified `Element.SetText` so that it replaces a run of consecutive | |
| character data tokens following the element's opening tag (instead of just | |
| the first one). | |
| * New "tail text" support. | |
| * Added the `Element.Tail` method, which returns the text immediately | |
| following an element's closing tag. | |
| * Added the `Element.SetTail` method, which modifies the text immediately | |
| following an element's closing tag. | |
| * New element child insertion and removal methods. | |
| * Added the `Element.InsertChildAt` method, which inserts a new child token | |
| before the specified child token index. | |
| * Added the `Element.RemoveChildAt` method, which removes the child token at | |
| the specified child token index. | |
| * New element and attribute queries. | |
| * Added the `Element.Index` method, which returns the element's index within | |
| its parent element's child token list. | |
| * Added the `Element.NamespaceURI` method to return the namespace URI | |
| associated with an element. | |
| * Added the `Attr.NamespaceURI` method to return the namespace URI | |
| associated with an element. | |
| * Added the `Attr.Element` method to return the element that an attribute | |
| belongs to. | |
| * New Path filter functions. | |
| * Added `[local-name()='val']` to keep elements whose unprefixed tag matches | |
| the desired value. | |
| * Added `[name()='val']` to keep elements whose full tag matches the desired | |
| value. | |
| * Added `[namespace-prefix()='val']` to keep elements whose namespace prefix | |
| matches the desired value. | |
| * Added `[namespace-uri()='val']` to keep elements whose namespace URI | |
| matches the desired value. | |
| **Bug Fixes** | |
| * A default XML `CharSetReader` is now used to prevent failed parsing of XML | |
| documents using certain encodings. | |
| ([Issue](https://github.com/beevik/etree/issues/53)). | |
| * All characters are now properly escaped according to XML parsing rules. | |
| ([Issue](https://github.com/beevik/etree/issues/55)). | |
| * The `Document.Indent` and `Document.IndentTabs` functions no longer insert | |
| empty string `CharData` tokens. | |
| **Deprecated** | |
| * `Element` | |
| * The `InsertChild` method is deprecated. Use `InsertChildAt` instead. | |
| * The `CreateCharData` method is deprecated. Use `CreateText` instead. | |
| * `CharData` | |
| * The `NewCharData` method is deprecated. Use `NewText` instead. | |
| Release v1.0.1 | |
| ============== | |
| **Changes** | |
| * Added support for absolute etree Path queries. An absolute path begins with | |
| `/` or `//` and begins its search from the element's document root. | |
| * Added [`GetPath`](https://godoc.org/github.com/beevik/etree#Element.GetPath) | |
| and [`GetRelativePath`](https://godoc.org/github.com/beevik/etree#Element.GetRelativePath) | |
| functions to the [`Element`](https://godoc.org/github.com/beevik/etree#Element) | |
| type. | |
| **Breaking changes** | |
| * A path starting with `//` is now interpreted as an absolute path. | |
| Previously, it was interpreted as a relative path starting from the element | |
| whose | |
| [`FindElement`](https://godoc.org/github.com/beevik/etree#Element.FindElement) | |
| method was called. To remain compatible with this release, all paths | |
| prefixed with `//` should be prefixed with `.//` when called from any | |
| element other than the document's root. | |
| * [**edit 2/1/2019**]: Minor releases should not contain breaking changes. | |
| Even though this breaking change was very minor, it was a mistake to include | |
| it in this minor release. In the future, all breaking changes will be | |
| limited to major releases (e.g., version 2.0.0). | |
| Release v1.0.0 | |
| ============== | |
| Initial release. |