Pyvhdlmodel

Latest version: v0.29.2

Safety actively analyzes 681866 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 4 of 9

0.20.0

**Release created on: 30.12.2022 - 08:19:24**

New Features

* Dependency graph in `Design` for packages, contexts referenced from design units.
* New `_dependencyGraph` field in `Design`.
* New `_dependencyVertex` field in `DesignUnit`.
* New `CreateDependencyGraph` method on `Design`.
* New `DependencyGraphVertexKind` and `DependencyGraphEdgeKind` flags.
* Added properties `ReferencedLibraries`, `ReferencedPackages`, `ReferencedContexts`.
* Added `NormalizedIdentifiers` to `MultipleNamedEntityMixin`.
* Added `NormalizedLabel` to `LabeledEntityMixin`.
* Added library and package dependencies in `std` and `ieee` library packages.
* Added `EntityInstantiationSymbol`, `ComponentInstantiationSymbol` and `ConfigurationInstantiationSymbol`.
* Added package and architecture indexing via `IndexPackages` and `IndexArchitectures`.

Changes

* Moved `_referenced***` fields to `DesignUnit`.
* Improved `Link***` methods on `Design`.
* Renamed `DesignUnits` &arr; `DesignUnitKind`.
* Removed `LibraryOrSymbol`, `EntityOrSymbol`, `ArchitectureOrSymbol`, `PackageOrSymbol`, `ConfigurationOrSymbol`, `ContextOrSymbol`.
* Refined doc-strings.
* Bumped dependencies.

Bug Fixes

* Fixed missing handling of `_referencedContexts`.
* Avoid self-edge in `LinkPackageReferences` for package `std.standard`.

0.19.0

**Release created on: 26.12.2022 - 21:11:29**

New Features

* Converted many existing symbol classes to new symbol classes deriving from `Name` and `NewSymbol`.
This simplifies the usage of symbols, as names in VHDL are already very close to symbols.
⚠️ `NewSymbol` will be renamed to `Symbol` or `SymbolMixin` once all symbols are converted to the new style.
* `LibraryReferenceSymbol`
* `PackageReferenceSymbol`
* `PackageMembersReferenceSymbol`
* `AllPackageMembersReferenceSymbol`
* `ContextReferenceSymbol`
* `EntitySymbol`
* `ArchitectureSymbol`
* `PackageSymbol`
* Named entities and new-style symbols now provide a `NormalizedIdentifier` property.
* Implemented more analyze methods on Design:
* `LinkPackageReferences`
* `LinkContextReferences`
* Added `_references`, `_contextReferences` and `_referenced***` fields to `Context` class.
* Added predefined flag groups to `PossibleReference`.
* Added `_referenced***` fields to `DesignUnitWithContextMixin` class.
* Added `DesignUnits` flag for filtering in `IterateDesignUnits`.

Changes

* Changed `PossibleReference` from `IntEnum` to `Flag`.
* Merged parameters `libraryReferences`and `packageReferences` of class `Context` to new parameter `references`.
* A package body now doesn't except an identifier for its name, but a PackageSymbol.
* Improved analyze methods:
* `LinkLibraryReferences`
* `LinkArchitectures`
* `LinkPackageBodies`
* Using `...Identifier` instead of `...Name` in variables and parameters for a name of an entity. This identifier variable is normalized. In exceptions, `...Identifier` is used to print the original name without normalization.
* Improved predefined libraries and packages `std.standard`, etc.


Bug Fixes

* Added missing initializer for `IndexedName`.
* Fixed how flag values are combined: `+` → `|`
* Fixed example code in README.

0.18.0

**Release created on: 23.12.2022 - 22:38:50**

New Features

* Added `Document` property to `DesignUnit`.
* Added `LibraryReferenceSymbol`, `PackageReferenceSymbol` and `ContextReferenceSymbol`.
* Added new packages `std` and `ieee` containing pre-defined VHDL libraries and VHDL packages.
* Added `LoadStdLibrary` and `LoadIEEELibrary` to `Design`.
* Added `IterateDesignUnits` generator on `Design` and `Library`.
* Implemented various analyze methods on `Design`:
* `LinkLibraryReferences`
* `LinkArchitectures`
* `LinkPackageBodies`
* Added `_Add***` methods to `Document`.
* Added `DesignUnits`, `VerificationUnits`, `VerificationProperties` and `VerificationModes` properties to `Document`.

Changes

* Moved classes:
* `pyVHDLModel.SyntaxModel.Name` → `pyVHDLModel.Name`
* `pyVHDLModel.SyntaxModel.Symbol` → `pyVHDLModel.Symbol`
* `pyVHDLModel.SyntaxModel.Reference` → `pyVHDLModel.Reference`
* `pyVHDLModel.SyntaxModel.LibraryClause` → `pyVHDLModel.LibraryClause`
* `pyVHDLModel.SyntaxModel.UseClause` → `pyVHDLModel.UseClause`
* `pyVHDLModel.SyntaxModel.ContextReference` → `pyVHDLModel.ContextReference`
* Property `PrimaryUnit.Library` uses it's own private field `_library` instead of `_parent`, so `_parent` can be used to refer to the document a design unit is in.
* Improved `EntitySymbol`, `ArchitectureSymbol`, `PackageSymbol`.
* Improved `GetLibrary` in `Design`.
* Improved `AddDocument` in `Library`.
* Changed almost all internal lists in `Library` and `Document` to dictionaries for quick name lookups.
* Enabled CI job Windows + Python 3.11 again.
* Bumped dependencies.
* Updated MAKEFILE for Sphinx documentation.

Bug Fixes

* Fixed usage of Names vs. Symbols.

----------
Related PRs:

*None*

0.17.1

**Release created on: 04.12.2022 - 23:39:16**

New Features

*None*

Changes

*None*

Bug Fixes

* Made all `documentation` parameters optional.

0.17.0

**Release created on: 03.12.2022 - 22:19:56**

New Features

*None*

Changes

* ‼Changed property `Identifiers` to return `Tuple[str]` instead of `List[str]`.
* ‼Renamed:
* `NamedEntity` → `NamedEntityMixin`
* `MultipleNamedEntity` → `MultipleNamedEntityMixin`
* `LabeledEntity` → `LabeledEntityMixin`
* `DocumentedEntity` → `DocumentedEntityMixin`
* `MixinDesignUnitWithContext` → `DesignUnitWithContextMixin`
* Derived `Name` from `ModelEntity`.
* Disabled PIP version check in CI.
* Documentation:
* Added news for Dec 2022.
* Changed navigation bar.
* Changed manually written local ToCs to a ReST command.
* Split chapter about types into a new main page for subtypes.
* Added more code documentation.
* Updated `autoapi` template.
* Updated Sphinx configuration.
* Activated mermaid.
* Changed colors for inheritance disgrams.
* Changed source code / highlighting theme.
* Removed dummy pages.

Bug Fixes

* Documentation:
* Fixed broken references in documentation (`pyVHDLModel.VHDLModel...` → `pyVHDLModel.SyntaxModel...`).
* Fixed section title `LibraryClause` → `Library`.

----------
Related PRs:

*None*

0.16.0

**Release created on: 29.11.2022 - 06:29:46**

New Features

* Added `DocumentedEntity` class providing a `Documentation` property.
* Added VHDL-2000 to the `VHDLVersion` enum.

Changes

* Bumped dependencies.
* Added `documentation` parameters to some initializer methods.
* Changed `.format(...)` calls to f-strings.
* Removed Requires.io webservice (links, badges, ...)
* Updated Sphinx's `prolog.inc`.

Bug Fixes

*None*

Page 4 of 9

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.