Skip to content

v0.21.0

Compare
Choose a tag to compare
@github-actions github-actions released this 05 Jan 17:25
b00fb1c

Release created on: 05.01.2023 - 17:25:55

New Features

  • Added method GetAncestor to ModelEntity.
  • Added property DependencyGraph to Design.
  • Added _compileOrderGraph and _hierarchyGraph fields as well as matching properties CompileOrderGraph and HierarchyGraph to Design.
  • Added method AddLibrary to register a VHDL library in the design.
  • Added method CreateCompilerOrderGraph on Design.
  • Added key-value-pair "kind" : DependencyGraphEdgeKind on edges in the dependency graph.
  • Implemented referencing library, package and context references in topological order to design units referencing a context.
  • Added method LinkInstanziations on Design:
    • Handle EntityInstantiation statements.
  • Added dummy methods for:
    • ComputeHierarchy
    • GetCompileOrder
    • GetTopLevel
    • GetUnusedDesignUnits
  • Added field _compileOrderVertex and property CompileOrderVertex to Document.
  • Added property DependencyVertex to Library.
  • Added generator IterateDesignUnits to Document.
  • Added __repr__ for design units.
  • Added field _blocks to ConcurrentStatements.
  • Added generator IterateInstantiations to ConcurrentStatements, IfGenerateStatement and CaseGenerateStatement.
  • Added field _hierarchyVertex and property HierarchyVertex to DesignUnit.
  • Added new "analyze" test cases to unit tests.

Changes

  • Moved implementation of DesignUnitWithContextMixin to DesignUnit.
    The fields _contextItems, _libraryReferences, _packageReferences and _contextReferences as well as matching properties and initializer codes are now in DesignUnit.
  • LoadStdLibrary and LoadIeeeLibrary now return the created VHDL library object.
  • When calling AddDocument on Design, check if used library is part of the design.
  • Bumped dependencies.
  • Updated shield URL for GitHub Actions.
  • Removed fields _declaredItems and _statements from Entity.
    (This is covered by ConcurrentDeclarations and ConcurrentStatements.)
  • Change list of architectures for an entity to a dictionary for named lookups.
  • Reworked ComponentInstantiation, ConfigurationInstantiation and EntityInstantiation.
  • Extended flag members of DependencyGraphEdgeKind by references, instances and implementations.
  • Improved instantiation test cases.

Bug Fixes

  • Added missing "backward pointers" by setting _parent to appropriate values.
    This was missing in the entire model.
    (As this was a complete code walk-through, TODO and FIXME comments for potential problematic regions were added.)
  • Fixed parameter names _leftOperand and _rightOperand, by removing the _.
  • Added missing Nullable to type hints.
  • Implemented missing field initialization code for Package.
  • Fixed super call in PackageBody.__init__, Configuration.__init__, Entity.__init__ and Architecture.__init__.
  • Fixed Package.Index, now using NormalizedLabel.
  • Removed property DeclaredItems from Architecture.
    (This is covered by ConcurrentDeclarations.)
  • Renamed parameters using range to rng to avoid overlap with Python builtins.