Skip to content

Releases: VHDL/pyVHDLModel

v0.27.1

07 Jul 21:26
4a724b6
Compare
Choose a tag to compare

Release created on: 07.07.2023 - 21:26:17

New Features

None

Changes

  • Added support for add_note(...) to VHDLModelException.
  • Enhanced error message.

Bug Fixes

  • Fixed usage of entity symbol.

v0.27.0

05 Jul 22:51
df37970
Compare
Choose a tag to compare

Release created on: 05.07.2023 - 22:51:48

New Features

  • New method to import objects into a namespace: ImportObjects
  • First code to resolve types/subtypes.
  • First code to link symbols in expressions.
  • Added ContextReferenceSymbol.
  • Added some type and subtype definitions to the IEEE.std_logic_1164 and IEEE.numeric_std VHDL packages.

Changes

  • Bumped dependencies.
    • Adjusted code to support pyTooling v5.0.0.
  • Added doc-strings.
  • Renamings:
    • ConcurrentStatementsConcurrentStatementsMixin
    • SequentialDeclarationsSequentialDeclarationsMixin
    • SequentialStatementsSequentialStatementsMixin
    • MethodMethodMixin
    • ProcedureCallProcedureCallMixin
    • InterfaceItemInterfaceItemMixin
    • InterfaceItemWithModeInterfaceItemWithModeMixin
    • GenericInterfaceItemGenericInterfaceItemMixin
    • PortInterfaceItemPortInterfaceItemMixin
    • ParameterInterfaceItemParameterInterfaceItemMixin
    • SignalAssignmentSignalAssignmentMixin
    • VariableAssignmentVariableAssignmentMixin
    • GenericEntityInstantiationGenericEntityInstantiationMixin
    • SubprogramInstantiationSubprogramInstantiationMixin
  • Removed duplicate fields in inheritance tree.
    (Reported by new pyTooling features from ExtendedType.)
  • Moved PredefinedLibrary, PredefinedPackageMixin, PredefinedPackage, PredefinedPackageBody to new module pyVHDLModel.Predefined

Bug Fixes

  • Usage of symbols and names.

v0.26.0

16 May 21:06
bf61f56
Compare
Choose a tag to compare

Release created on: 16.05.2023 - 21:06:28

New Features

  • Preparations for a type and object graph.
    • New object graph instance in the Design.
    • New ObjectGraphVertexKind and ObjectGraphEdgeKind enumeration.
    • New AnalyzeTypesAndObjects method.
  • Added type declarations to std.standard package.

Changes

  • Added new mixin ConcurrentDeclarationRegionMixin.
  • Reworked indexing of statements.
  • Added some type hints for loop variables.

Bug Fixes

  • Fixed usage of symbols.

v0.25.1

16 Apr 18:06
3776f27
Compare
Choose a tag to compare

Release created on: 16.04.2023 - 18:06:11

Bug Fixes

  • Fixed typo PackageMembersReferenceSymbolPackageMemberReferenceSymbol.

v0.25.0

15 Apr 21:34
d315d8a
Compare
Choose a tag to compare

Release created on: 15.04.2023 - 21:34:29

This release reverts changes made to symbols and names in earlier releases. Both features were merged some versions ago, but as shown in #70, a symbol (semantic) can have multiple name styles (syntax).

Changes

  • Reworked Symbol classes to be a separate class structure. (Formerly derived from Name classes).
  • Derived AllName from SelectedName.
  • Updated testcases according to the changes in symbols and names.
  • Reworked some more .format(...) calls to f-strings.
  • Bumped dependencies.

Related Issues:

v0.24.1

02 Apr 16:39
7590a6c
Compare
Choose a tag to compare

Release created on: 02.04.2023 - 16:39:38

New Features

  • Added method, so Synopsys packages can be loaded into the ieee library.
    (see #68 contributed by @c-thaler)

Changes

  • Bumped dependencies.

Related PRs:

v0.24.0

27 Mar 21:58
c897177
Compare
Choose a tag to compare

Release created on: 27.03.2023 - 21:58:46

New Features

  • Added more properties to class Package.
  • Distribute py.typed file.

Changes

  • Adjusted to pyTooling v4.0+.
  • Renamed SubType/subType to Subtype/subtype.
  • Renamed SubProgram to Subprogram.
  • Bumped dependencies.

Bug Fixes

None


Related PRs:

None

v0.23.0

05 Feb 22:29
14ec13b
Compare
Choose a tag to compare

Release created on: 05.02.2023 - 22:29:12

New Features

  • Added property Name to Design.
  • Improved calculation of property Toplevel.
    • HierarchyGraph has now a toplevel attribute.
  • Added instructions on how to use pyVHDLModel with pyGHDL as a parser.

Changes

  • Improved and added more documentation.
    • Started to document analysis procedure.
    • Added empty sections to document the 3 internal graph data structures.
  • Bumped dependencies.

Bug Fixes

  • Restricted Sphinx to <6.0, so navigation is not broken due to docutils vs. RTD theme mismatch.
  • Fixes to the pyGHDL setup instructions.
  • Fixed some broken tables in ReST.

v0.22.1

11 Jan 17:09
7a4b0e0
Compare
Choose a tag to compare

Release created on: 11.01.2023 - 17:09:20

Bug Fixes

  • Fixed pyTooling dependency to be v2.11.0.

v0.22.0

11 Jan 11:52
1314427
Compare
Choose a tag to compare

Release created on: 11.01.2023 - 11:52:07

New Features

  • Restructured SyntaxModel.py into 18 files and removed it:
    • Association.py
    • Base.py
    • Common.py
    • Concurrent.py
    • Declaration.py
    • DesignUnit.py
    • Exception.py
    • Expression.py
    • Instantiation.py
    • Interface.py
    • Name.py
    • Object.py
    • PSLModel.py
    • Scope.py
    • Sequential.py
    • Subprogram.py
    • Symbol.py
    • Type.py
  • Added base exception class VHDLModelException.
  • Added case specific exceptions with context information:
    • LibraryExistsInDesignError
    • LibraryRegisteredToForeignDesignError
    • LibraryNotRegisteredError
    • EntityExistsInLibraryError
    • ArchitectureExistsInLibraryError
    • PackageExistsInLibraryError
    • PackageBodyExistsError
    • ConfigurationExistsInLibraryError
    • ContextExistsInLibraryError
    • ReferencedLibraryNotExistingError
  • Added namespaces to VHDL entities with concurrent declaration regions.
  • Added property Entity to Component.
  • Handle component instantiations.
    • Component declarations are indexed.
    • Reference components via use clauses.
    • Instantiation dependencies are now listed in the dependency graph.
  • Implemented ComputeHierarchy:
    • Derive the hierarchy graph from dependency graph.
  • Implemented property TopLevel.
    (Former method GetTopLevel).)
  • Added CreateCompileOrderGraph and ComputeCompileOrder:
    • Derive the compile order graph from dependency graph.
  • Implemented IterateDocumentsInCompileOrder to return a generator of documents in correct order.
  • Added vertex attribute "predefined" to vertices in the dependency graph if it's a design unit from std or ieee.

Changes

  • Removed old Symbol class and renamed the new symbol class NewSymbol to Symbol.
    Thus there is again just one symbol class call Symbol.
  • Changed raise Exception(...) to raise VHDLModelException(...).
  • Added doc-strings for names.
  • Updated copyright to year 2023.

Bug Fixes

  • Fixed Name when prefix parameter is None.
  • Fixed Property name Has_Prefix to HasPrefix on Name.

Related PRs:

pyVHDLModel