YANG Tools

Overview

YANG Tools provides a set of libraries to deal with YANG models and data modeled using them.

Behavior/Feature Changes

There are no behavior changes.

New Features

No new features.

Removed Features

No removed features.

Deprecated Features

No deprecated features.

Resolved Issues

The following table lists the issues resolved in this release.

Issues resolved in versions 15.0.0 through 15.0.2 (JIRA)

Type

Key

Summary

Resolution

Fix Version(s)

Bug

YANGTOOLS-1827

StatementSupport.statementName() reports the wrong value

Done

14.0.24, 15.0.2

Bug

YANGTOOLS-1826

binding-data-codec-dynamic fails to load simple typedef codec

Done

15.0.2

Bug

YANGTOOLS-1825

rfc6536-parser-support does not cover RFC8431

Done

14.0.24, 15.0.2

Bug

YANGTOOLS-1824

SubstatementValidator fails with cross-revision extensions

Done

14.0.24, 15.0.2

Bug

YANGTOOLS-1818

BindingReflections.getModuleInfo(Class) does not work

Done

15.0.1

Bug

YANGTOOLS-1816

Cover FooStatement.OptionalIn with unit tests

Done

15.0.1

Bug

YANGTOOLS-1745

Wrong effective config in input, output and notification trees

Done

15.0.0

Epic

YANGTOOLS-1152

Refactor yang-parser-rfc7950 and its extension wiring

Done

15.0.0

Improvement

YANGTOOLS-1823

Improve AbstractBooleanStatementSupport error reporting

Done

15.0.2

Improvement

YANGTOOLS-1820

Add ModuleInfoSnapshotResolver.registerModuleFeatures(RootMeta,Set)

Done

15.0.1

Improvement

YANGTOOLS-1814

Guard access to read-only namespaces in ModelActionBuilder

Done

15.0.1

Improvement

YANGTOOLS-1813

Fix StmtContext.Mutable.addToNs()

Done

15.0.1

Improvement

YANGTOOLS-1810

Clarify parser.spi.meta.NamespaceStorage

Done

15.0.0

Improvement

YANGTOOLS-1809

Expose ModuleEffectiveStatement from ImportEffectiveStatement

Done

15.0.0

Improvement

YANGTOOLS-1807

Improve BitsTypeObject.getDefaultInstance() code generation

Done

15.0.0

Improvement

YANGTOOLS-1802

Add CodeHelpers.copyArray(byte[])

Done

15.0.0

Improvement

YANGTOOLS-1800

Improve AbstractBaseTemplate.wrapToDocumentation()

Done

15.0.0

Improvement

YANGTOOLS-1790

Make model.api.source.SourceIdentifier Comparable

Done

15.0.0

Improvement

YANGTOOLS-1775

Do not use Plexus injection in yang-maven-plugin

Done

14.0.23, 15.0.0

Improvement

YANGTOOLS-1770

Bind SourceSpecificContext.yangVersion() eagerly

Done

15.0.0

Improvement

YANGTOOLS-1769

Transform parser library sources lazily

Done

15.0.0

Improvement

YANGTOOLS-1768

Clean up Type(Effective)Statement definition

Done

15.0.0

Improvement

YANGTOOLS-1766

Retain ArgumentDefinition in YangStmtMapping

Done

14.0.23, 15.0.0

Improvement

YANGTOOLS-1765

Clean up SubstatementValidator error reporting

Done

15.0.0

Improvement

YANGTOOLS-1761

Add model.api.stmt.ValueRanges

Done

15.0.0

Improvement

YANGTOOLS-1760

model.api.PathExpression should be a record

Done

15.0.0

Improvement

YANGTOOLS-1758

Improve SubstatementValidator reporting

Done

15.0.0

Improvement

YANGTOOLS-1756

Use SchemaNodeIdentifier instead of ArgumentUtils.parseAbsoluteSchemaNodeIdentifier et al.

Done

15.0.0

Improvement

YANGTOOLS-1755

Use SchemaNodeIdentifierParser instead of StmtContextUtils.parse(Node)Identifier()

Done

15.0.0

Improvement

YANGTOOLS-1746

Define the notion of a parser.spi.meta SubtreePolicy

Done

15.0.0

Improvement

YANGTOOLS-1729

Cross-reference RFC6536 and RFC6241

Done

15.0.2

Improvement

YANGTOOLS-1707

Clean up yang-parser-rfc7950 ANTLR interactions

Done

15.0.0

Improvement

YANGTOOLS-1681

Improve leafref cycle detection

Done

15.0.0

Improvement

YANGTOOLS-1667

Update {Min,Max}ElementsStatement design

Done

15.0.0

Improvement

YANGTOOLS-1643

Replace and deprecate DataContainerCodecContext.isSubstitutionFor()

Done

15.0.0

Improvement

YANGTOOLS-1540

Some of SOURCE_PRE_LINKAGE modifiers for statements were not resolved.

Duplicate

15.0.0

Improvement

YANGTOOLS-1186

Remove EffectiveStmtCtx.cearbannog()

Done

15.0.0

Improvement

YANGTOOLS-1112

Remove ModelProcessingPhase.SOURCE(_PRE)_LINKAGE

Done

15.0.0

Improvement

YANGTOOLS-925

QNameToStatementDefinition.get() without a QName

Done

15.0.0

New Feature

YANGTOOLS-1782

Allow PrettyTree to be written into Appendable

Done

15.0.0

New Feature

YANGTOOLS-1779

Add FooData.META and DataRoot.meta()

Done

15.0.0

New Feature

YANGTOOLS-1771

Remove model.api.UnknownSchemaNode

Done

15.0.0

New Feature

YANGTOOLS-1764

Add usecase/databind

Done

15.0.0

New Feature

YANGTOOLS-1634

Improve Decimal64 validity checks

Done

15.0.0

Sub-task

YANGTOOLS-1811

Disconnect parseArgument() from StmtContext

Done

15.0.0

Sub-task

YANGTOOLS-1801

Convert UnionTemplate.xtend

Done

15.0.0

Sub-task

YANGTOOLS-1797

Introduce (Restricted)Decimal64Type

Done

15.0.0

Sub-task

YANGTOOLS-1796

Introduce UnionTypeObjectArchetype

Done

15.0.0

Sub-task

YANGTOOLS-1793

Introduce EnumTypeObjectArchetype

Done

15.0.0

Sub-task

YANGTOOLS-1792

Refactor binding.model.api.Type

Done

15.0.0

Known Issues

The following table lists the known issues that exist in this release.

Issues affecting versions 15.0.0 through 15.0.2 (JIRA)

Type

Key

Summary

Status

Affected Version(s)

Fix Version(s)

Bug

YANGTOOLS-1896

SourceLinkageResolver crashes with InferenceException on unused library submodules

Resolved

15.0.0, 15.0.1, 15.0.2, 15.1.0, 15.1.1, 15.1.2

15.1.3, 16.0.0

Bug

YANGTOOLS-1885

Codegen shape for restricted ‘type bits’ does not work

Resolved

13.0.10, 14.0.23, 15.0.2, 15.1.1

16.0.0

Bug

YANGTOOLS-1861

Empty augmentation leads to incorrect contract definition

Resolved

12.0.0, 14.0.23, 15.0.0, 15.0.2, 15.1.0

15.1.1, 16.0.0