Update to Kotlin 2.0.21 / Kotlinx.serialization 1.7.3
Add support for Android native targets (@whyoleg in #242)
And all changes from 0.90.2-beta1:
Changes:
Update to Kotlin 2.0.20 / kotlinx.serialization 1.7.2
Extensive optimization of decoding (serialization), parsing
(KtXmlReader) including the creation of the xmlDescriptors.
Add a new preset fast for a config/policy that chooses speed over
verification (such as element order). It still requires "correct"
xml files.
Add "work in progress" xml schema module to the dev branch. This
is not yet ready for release (but will parse most xml schemas)
Have the XmlReader.{version,standalone,encoding} properties be
retained by all readers (as existing parsers behave); reading these
values before the document declaration was seen (or known to not be
present) is non-deterministic.
Make the value of the depth property of XmlReader consistent
for EndElement values. The depth of an endEvent uses the android
XmlPullParser semantics
In the case of a polymorphic value child (or list of polymorphic
children as value child), when an unknown tag is encountered, allow
this to be matched against a single! XmlSerializer from the module.
This aids #225.
Capture format parsing errors in XmlParsingException #228
Fixes:
Fix siblingsToFragment for native/js so that it terminates on end of
stream, even if this doesn't include DocumentEnd event.
Make @XmlValue work with regular types (to support generic parsing
of element content of variable type, some including mixed/text content)
– probably also fixes #238.
Better support @XmlSerialName where value (localname) is defaulted.
Change this behaviour to actually use the same algorithm as normally
(not using the FQCN).
More reluctant caching of extended type descriptors such that type
parameters work correctly with caching.
Fix NodeSerializer in the serialization module to properly forward
to the actual implementation.
Don't make the companion of XmlDeclMode internal (#219). This is a
workaround for a regresion in 2.0 that doesn't allow resolving enum
constants in this case.
Fix deserialization with contextual serializer #220
Fix NamespaceHolder.namespacesAtCurrentDepth for nested
declarations.
Fix infinite recursion issue with xmlStreaming.newWriter / newReader
In pedantic mode check that xml/xmlns are not used as names (they
are always invalid). Note that namespaces can be specified using
@XmlSerialName (for tags) and @XmlNamespaceDeclSpec (for
additional names).
The cache to use can now be configured. By default it uses the
threadLocal version, but the thread unsafe default is also available,
as is the FormatCache.Dummy cache that does no caching.
Fixes:
Fix support for multiple namespaces inside a single tag (QNameMap)
as reported in #249.
Use threadlocals for caching document structures by default. This should avoid
multithreading issues when reusing the format (recommended for speed)
0.90.2 Mooor Rocketpower!
Changes:
Update to Kotlin 2.0.21 / Kotlinx.serialization 1.7.3
Add support for Android native targets (@whyoleg in #242)
0.90.2-beta1 Rocketpower!
Changes:
Update to Kotlin 2.0.20 / kotlinx.serialization 1.7.2
Extensive optimization of decoding (serialization), parsing
(KtXmlReader) including the creation of the xmlDescriptors.
Add a new preset fast for a config/policy that chooses speed over
verification (such as element order). It still requires "correct"
xml files.
Add "work in progress" xml schema module to the dev branch. This
is not yet ready for release (but will parse most xml schemas)
Have the XmlReader.{version,standalone,encoding} properties be
retained by all readers (as existing parsers behave); reading these
values before the document declaration was seen (or known to not be
present) is non-deterministic.
Make the value of the depth property of XmlReader consistent
for EndElement values. The depth of an endEvent uses the android
XmlPullParser semantics
In the case of a polymorphic value child (or list of polymorphic
children as value child), when an unknown tag is encountered, allow
this to be matched against a single! XmlSerializer from the module.
This aids #225.
Capture format parsing errors in XmlParsingException #228
Fixes:
Fix siblingsToFragment for native/js so that it terminates on end of
stream, even if this doesn't include DocumentEnd event.
Make @XmlValue work with regular types (to support generic parsing
of element content of variable type, some including mixed/text content)
– probably also fixes #238.
Better support @XmlSerialName where value (localname) is defaulted.
Update to Kotlin 2.0.21 / Kotlinx.serialization 1.7.3
Add support for Android native targets (@whyoleg in #242)
And all changes from 0.90.2-beta1:
Changes:
Update to Kotlin 2.0.20 / kotlinx.serialization 1.7.2
Extensive optimization of decoding (serialization), parsing
(KtXmlReader) including the creation of the xmlDescriptors.
Add a new preset fast for a config/policy that chooses speed over
verification (such as element order). It still requires "correct"
xml files.
Add "work in progress" xml schema module to the dev branch. This
is not yet ready for release (but will parse most xml schemas)
Have the XmlReader.{version,standalone,encoding} properties be
retained by all readers (as existing parsers behave); reading these
values before the document declaration was seen (or known to not be
present) is non-deterministic.
Make the value of the depth property of XmlReader consistent
for EndElement values. The depth of an endEvent uses the android
XmlPullParser semantics
In the case of a polymorphic value child (or list of polymorphic
children as value child), when an unknown tag is encountered, allow
this to be matched against a single! XmlSerializer from the module.
This aids #225.
Capture format parsing errors in XmlParsingException #228
Fixes:
Fix siblingsToFragment for native/js so that it terminates on end of
stream, even if this doesn't include DocumentEnd event.
Make @XmlValue work with regular types (to support generic parsing
of element content of variable type, some including mixed/text content)
– probably also fixes #238.
Better support @XmlSerialName where value (localname) is defaulted.
Change this behaviour to actually use the same algorithm as normally
(not using the FQCN).
More reluctant caching of extended type descriptors such that type
parameters work correctly with caching.
Fix NodeSerializer in the serialization module to properly forward
to the actual implementation.
Don't make the companion of XmlDeclMode internal (#219). This is a
workaround for a regresion in 2.0 that doesn't allow resolving enum
constants in this case.
Fix deserialization with contextual serializer #220
Fix NamespaceHolder.namespacesAtCurrentDepth for nested
declarations.
Fix infinite recursion issue with xmlStreaming.newWriter / newReader
In pedantic mode check that xml/xmlns are not used as names (they
are always invalid). Note that namespaces can be specified using
@XmlSerialName (for tags) and @XmlNamespaceDeclSpec (for
additional names).
The cache to use can now be configured. By default it uses the
threadLocal version, but the thread unsafe default is also available,
as is the FormatCache.Dummy cache that does no caching.
Fixes:
Fix support for multiple namespaces inside a single tag (QNameMap)
as reported in #249.
Use threadlocals for caching document structures by default. This should avoid
multithreading issues when reusing the format (recommended for speed)
0.90.2 Mooor Rocketpower!
Changes:
Update to Kotlin 2.0.21 / Kotlinx.serialization 1.7.3
Add support for Android native targets (@whyoleg in #242)
0.90.2-beta1 Rocketpower!
Changes:
Update to Kotlin 2.0.20 / kotlinx.serialization 1.7.2
Extensive optimization of decoding (serialization), parsing
(KtXmlReader) including the creation of the xmlDescriptors.
Add a new preset fast for a config/policy that chooses speed over
verification (such as element order). It still requires "correct"
xml files.
Add "work in progress" xml schema module to the dev branch. This
is not yet ready for release (but will parse most xml schemas)
Have the XmlReader.{version,standalone,encoding} properties be
retained by all readers (as existing parsers behave); reading these
values before the document declaration was seen (or known to not be
present) is non-deterministic.
Make the value of the depth property of XmlReader consistent
for EndElement values. The depth of an endEvent uses the android
XmlPullParser semantics
In the case of a polymorphic value child (or list of polymorphic
children as value child), when an unknown tag is encountered, allow
this to be matched against a single! XmlSerializer from the module.
This aids #225.
Capture format parsing errors in XmlParsingException #228
Fixes:
Fix siblingsToFragment for native/js so that it terminates on end of
stream, even if this doesn't include DocumentEnd event.
Make @XmlValue work with regular types (to support generic parsing
of element content of variable type, some including mixed/text content)
– probably also fixes #238.
Better support @XmlSerialName where value (localname) is defaulted.
You can trigger a rebase of this PR by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps
xml
from 0.90.1 to 0.90.3. Updatesio.github.pdvrieze.xmlutil:serialization
from 0.90.1 to 0.90.3Release notes
Sourced from io.github.pdvrieze.xmlutil:serialization's releases.
... (truncated)
Changelog
Sourced from io.github.pdvrieze.xmlutil:serialization's changelog.
... (truncated)
Commits
6ba77c9
Merge branch 'dev'd375efb
Record other unrecorded changes.2d36433
Fix #249, caused by an error in QNameMap's auto-reordering.1932c21
Add some examples for union types (success/error)1cdbaff
Don't allow xml/xmlns as names in pedantic mode (it has surprising54e3100
Add optin8c9d35f
For threadlocal format caches use the fact that (de)serialization is88a53c7
Make the format cache accessible and configurable. Also implementbf56f6d
Merge branch 'master' into devcd11406
Update the documentation for 0.90.2Updates
io.github.pdvrieze.xmlutil:core-jdk
from 0.90.1 to 0.90.3Release notes
Sourced from io.github.pdvrieze.xmlutil:core-jdk's releases.
... (truncated)
Changelog
Sourced from io.github.pdvrieze.xmlutil:core-jdk's changelog.
... (truncated)
Commits
6ba77c9
Merge branch 'dev'd375efb
Record other unrecorded changes.2d36433
Fix #249, caused by an error in QNameMap's auto-reordering.1932c21
Add some examples for union types (success/error)1cdbaff
Don't allow xml/xmlns as names in pedantic mode (it has surprising54e3100
Add optin8c9d35f
For threadlocal format caches use the fact that (de)serialization is88a53c7
Make the format cache accessible and configurable. Also implementbf56f6d
Merge branch 'master' into devcd11406
Update the documentation for 0.90.2You can trigger a rebase of this PR by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show