From e934ca23c7e8f17a4ce5ae181d8c9920703abf10 Mon Sep 17 00:00:00 2001 From: Patrick Lehmann Date: Fri, 3 Jul 2026 21:30:37 +0200 Subject: [PATCH 1/4] Bumped dependencies. --- dist/requirements.txt | 2 +- doc/Dependency.rst | 26 +++++++++++++------------- doc/requirements.txt | 2 +- pyproject.toml | 6 +++--- requirements.txt | 6 +++--- tests/typing/requirements.txt | 2 +- tests/unit/requirements.txt | 4 ++-- 7 files changed, 24 insertions(+), 24 deletions(-) diff --git a/dist/requirements.txt b/dist/requirements.txt index fc810d11..e0dde036 100644 --- a/dist/requirements.txt +++ b/dist/requirements.txt @@ -1,2 +1,2 @@ -wheel ~= 0.46.3 +wheel ~= 0.47.0 twine ~= 6.2 diff --git a/doc/Dependency.rst b/doc/Dependency.rst index 7d8176fa..f692dd14 100644 --- a/doc/Dependency.rst +++ b/doc/Dependency.rst @@ -50,13 +50,13 @@ PyPI (see :ref:`INSTALL`). +---------------------------------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ | **Package** | **Version** | **License** | **Dependencies** | +=======================================================================================+=============+==========================================================================================================+=============================================================================================================================================================+ -| `pyTooling `__ | ≥8.14 | `Apache License, 2.0 `__ | *None* | +| `pyTooling `__ | ≥8.15 | `Apache License, 2.0 `__ | *None* | +---------------------------------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| `pyVHDLModel `__ | ≥0.34 | `Apache License, 2.0 `__ | * `pyTooling `__ (`Apache License, 2.0 `__) | +| `pyVHDLModel `__ | ≥0.36 | `Apache License, 2.0 `__ | * `pyTooling `__ (`Apache License, 2.0 `__) | +---------------------------------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| `pySVModel `__ | ≥0.3.1 | `Apache License, 2.0 `__ | * `pyTooling `__ (`Apache License, 2.0 `__) | +| `pySVModel `__ | ≥0.3 | `Apache License, 2.0 `__ | * `pyTooling `__ (`Apache License, 2.0 `__) | +---------------------------------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| `pySystemRDLModel `__ | ≥0.1.0 | `Apache License, 2.0 `__ | * `pyTooling `__ (`Apache License, 2.0 `__) | +| `pySystemRDLModel `__ | ≥0.3 | `Apache License, 2.0 `__ | * `pyTooling `__ (`Apache License, 2.0 `__) | +---------------------------------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -98,17 +98,17 @@ the mandatory dependencies too. +---------------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------+----------------------+ | **Package** | **Version** | **License** | **Dependencies** | +=====================================================================+=============+========================================================================================+======================+ -| `pytest `__ | ≥9.0 | `MIT `__ | *Not yet evaluated.* | +| `pytest `__ | ≥9.1 | `MIT `__ | *Not yet evaluated.* | +---------------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------+----------------------+ | `pytest-cov `__ | ≥7.1 | `MIT `__ | *Not yet evaluated.* | +---------------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------+----------------------+ -| `Coverage `__ | ≥7.14 | `Apache License, 2.0 `__ | *Not yet evaluated.* | +| `Coverage `__ | ≥7.15 | `Apache License, 2.0 `__ | *Not yet evaluated.* | +---------------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------+----------------------+ | `mypy `__ | ≥2.1 | `MIT `__ | *Not yet evaluated.* | +---------------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------+----------------------+ -| `typing-extensions `__ | ≥4.15 | `PSF-2.0 `__ | *Not yet evaluated.* | +| `typing-extensions `__ | ≥4.16 | `PSF-2.0 `__ | *Not yet evaluated.* | +---------------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------+----------------------+ -| `lxml `__ | ≥6.1 | `BSD 3-Clause `__ | *Not yet evaluated.* | +| `lxml `__ | ≥6.1 | `BSD 3-Clause `__ | *Not yet evaluated.* | +---------------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------+----------------------+ @@ -149,7 +149,7 @@ the mandatory dependencies too. +-------------------------------------------------------------------------------------------------+--------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------+ | **Package** | **Version** | **License** | **Dependencies** | +=================================================================================================+==============+==========================================================================================================+======================================================================================================================================================+ -| `pyTooling `__ | ≥8.14 | `Apache License, 2.0 `__ | *None* | +| `pyTooling `__ | ≥8.15 | `Apache License, 2.0 `__ | *None* | +-------------------------------------------------------------------------------------------------+--------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------+ | `Sphinx `__ | ≥9.1 | `BSD 3-Clause `__ | *Not yet evaluated.* | +-------------------------------------------------------------------------------------------------+--------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -163,7 +163,7 @@ the mandatory dependencies too. +-------------------------------------------------------------------------------------------------+--------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------+ | `sphinx-copybutton `__ | ≥0.5 | `MIT `__ | *Not yet evaluated.* | +-------------------------------------------------------------------------------------------------+--------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------+ -| `sphinx_autodoc_typehints `__ | ≥3.10 | `MIT `__ | *Not yet evaluated.* | +| `sphinx_autodoc_typehints `__ | ≥3.12 | `MIT `__ | *Not yet evaluated.* | +-------------------------------------------------------------------------------------------------+--------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------+ | `ruamel.yaml `__ | ≥0.19 | `MIT `__ | *Not yet evaluated.* | +-------------------------------------------------------------------------------------------------+--------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -206,9 +206,9 @@ install the mandatory dependencies too. +----------------------------------------------------------------------------+--------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------+ | **Package** | **Version** | **License** | **Dependencies** | +============================================================================+==============+==========================================================================================================+======================================================================================================================================================+ -| `pyTooling `__ | ≥8.14 | `Apache License, 2.0 `__ | *None* | +| `pyTooling `__ | ≥8.15 | `Apache License, 2.0 `__ | *None* | +----------------------------------------------------------------------------+--------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------+ -| `wheel `__ | ≥0.46 | `MIT `__ | *Not yet evaluated.* | +| `wheel `__ | ≥0.47 | `MIT `__ | *Not yet evaluated.* | +----------------------------------------------------------------------------+--------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -249,7 +249,7 @@ install the mandatory dependencies too. +----------------------------------------------------------+--------------+-------------------------------------------------------------------------------------------+----------------------+ | **Package** | **Version** | **License** | **Dependencies** | +==========================================================+==============+===========================================================================================+======================+ -| `wheel `__ | ≥0.46 | `MIT `__ | *Not yet evaluated.* | +| `wheel `__ | ≥0.47 | `MIT `__ | *Not yet evaluated.* | +----------------------------------------------------------+--------------+-------------------------------------------------------------------------------------------+----------------------+ | `Twine `__ | ≥6.2 | `Apache License, 2.0 `__ | *Not yet evaluated.* | +----------------------------------------------------------+--------------+-------------------------------------------------------------------------------------------+----------------------+ diff --git a/doc/requirements.txt b/doc/requirements.txt index 1fe1a6d1..b53e0c35 100644 --- a/doc/requirements.txt +++ b/doc/requirements.txt @@ -13,5 +13,5 @@ sphinxcontrib-mermaid ~= 2.0 autoapi >= 2.0.1 sphinx_design ~= 0.7.0 sphinx-copybutton >= 0.5.2 -sphinx_autodoc_typehints ~= 3.10 +sphinx_autodoc_typehints ~= 3.12 sphinx_reports ~= 0.11.0 diff --git a/pyproject.toml b/pyproject.toml index 2a44cf88..98876dce 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,7 +1,7 @@ [build-system] requires = [ - "setuptools >= 80.0", - "pyTooling ~= 8.14" + "setuptools >= 83.0", + "pyTooling ~= 8.15" ] build-backend = "setuptools.build_meta" @@ -25,7 +25,7 @@ variable-naming-style = "camelCase" [tool.mypy] packages = ["pyEDAA.ProjectModel"] -python_version = "3.13" +python_version = "3.14" #ignore_missing_imports = true strict = true pretty = true diff --git a/requirements.txt b/requirements.txt index b1f5b5da..6c41f07b 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +1,4 @@ pyTooling ~= 8.15 -pyVHDLModel ~= 0.35.0 -pySVModel ~= 0.5.0 -pySystemRDLModel ~= 0.3.0 +pyVHDLModel ~= 0.36.0 +pySVModel ~= 0.5.8 +pySystemRDLModel ~= 0.3.9 diff --git a/tests/typing/requirements.txt b/tests/typing/requirements.txt index d8f2197c..cde824b9 100644 --- a/tests/typing/requirements.txt +++ b/tests/typing/requirements.txt @@ -2,5 +2,5 @@ # Static Type Checking mypy[reports] ~= 2.1 -typing_extensions ~= 4.15 +typing_extensions ~= 4.16 lxml >= 6.1 , <7.0 diff --git a/tests/unit/requirements.txt b/tests/unit/requirements.txt index 9d5f7fb7..8d118933 100644 --- a/tests/unit/requirements.txt +++ b/tests/unit/requirements.txt @@ -1,8 +1,8 @@ -r ../../requirements.txt # Coverage collection -Coverage ~= 7.14 +Coverage ~= 7.15 # Test Runner -pytest ~= 9.0 +pytest ~= 9.1 pytest-cov ~= 7.1 From acea0bfb7fe058b9f25211e3fc8d2931a15769d8 Mon Sep 17 00:00:00 2001 From: Patrick Lehmann Date: Sun, 5 Jul 2026 02:40:21 +0200 Subject: [PATCH 2/4] Updated dunder-variables. --- pyEDAA/ProjectModel/__init__.py | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/pyEDAA/ProjectModel/__init__.py b/pyEDAA/ProjectModel/__init__.py index fca266c9..a7c470c8 100644 --- a/pyEDAA/ProjectModel/__init__.py +++ b/pyEDAA/ProjectModel/__init__.py @@ -30,12 +30,15 @@ # ==================================================================================================================== # # """An abstract model of EDA tool projects.""" -__author__ = "Patrick Lehmann" -__email__ = "Paebbels@gmail.com" -__copyright__ = "2014-2026, Patrick Lehmann, Unai Martinez-Corral" -__license__ = "Apache License, Version 2.0" -__version__ = "0.6.3" -__keywords__ = ["eda project", "model", "abstract", "xilinx", "vivado", "osvvm", "file set", "file group", "test bench", "test harness"] +__author__ = "Patrick Lehmann" +__email__ = "Paebbels@gmail.com" +__copyright__ = "2014-2026, Patrick Lehmann, Unai Martinez-Corral" +__license__ = "Apache License, Version 2.0" +__version__ = "0.6.3" +__keywords__ = ["eda project", "model", "abstract", "xilinx", "vivado", "osvvm", "file set", "file group", "test bench", "test harness"] +__project_url__ = "https://github.com/edaa-org/pyEDAA.ProjectModel" +__documentation_url__ = "https://edaa-org.github.io/pyEDAA.ProjectModel" +__issue_tracker_url__ = "https://GitHub.com/edaa-org/pyEDAA.ProjectModel/issues" from os.path import relpath as path_relpath from pathlib import Path as pathlib_Path From 5406f882190eb7a634f261d5b1a81f4b8ba7eba1 Mon Sep 17 00:00:00 2001 From: Patrick Lehmann Date: Sun, 5 Jul 2026 02:42:35 +0200 Subject: [PATCH 3/4] Updated Sphinx configuration for LuaLaTeX supporting Unicode fonts. --- doc/conf.py | 68 ++++++++++++++++++++++++----------------------------- 1 file changed, 31 insertions(+), 37 deletions(-) diff --git a/doc/conf.py b/doc/conf.py index a866f2fc..007d198d 100644 --- a/doc/conf.py +++ b/doc/conf.py @@ -1,9 +1,10 @@ # If extensions (or modules to document with autodoc) are in another directory, # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. -from sys import path as sys_path -from os.path import abspath -from pathlib import Path +from sys import path as sys_path +from os.path import abspath +from pathlib import Path +from textwrap import dedent from pyTooling.Packaging import extractVersionInformation @@ -11,8 +12,9 @@ # Project configuration # ============================================================================== githubNamespace = "edaa-org" -project = "pyEDAA.ProjectModel" -directoryName = project.replace('.', '/') +githubProject = pythonProject = "pyEDAA.ProjectModel" +directoryName = pythonProject.replace('.', '/') + # ============================================================================== # Project paths @@ -33,6 +35,7 @@ packageInformationFile = Path(f"../{directoryName}/__init__.py") versionInformation = extractVersionInformation(packageInformationFile) +project = pythonProject author = versionInformation.Author copyright = versionInformation.Copyright version = ".".join(versionInformation.Version.split(".")[:2]) # e.g. 2.3 The short X.Y version. @@ -114,35 +117,26 @@ # ============================================================================== # Options for LaTeX / PDF output # ============================================================================== -from textwrap import dedent - +latex_engine = "lualatex" +latex_use_xindy = False latex_elements = { - # The paper size ('letterpaper' or 'a4paper'). - "papersize": "a4paper", - - # The font size ('10pt', '11pt' or '12pt'). - #'pointsize': '10pt', - - # Additional stuff for the LaTeX preamble. - "preamble": dedent(r""" - % ================================================================================ - % User defined additional preamble code - % ================================================================================ - % Add more Unicode characters for pdfLaTeX. - % - Alternatively, compile with XeLaTeX or LuaLaTeX. - % - https://GitHub.com/sphinx-doc/sphinx/issues/3511 - % - \ifdefined\DeclareUnicodeCharacter - \DeclareUnicodeCharacter{2265}{$\geq$} - \DeclareUnicodeCharacter{21D2}{$\Rightarrow$} - \fi - - - % ================================================================================ - """), - - # Latex figure (float) alignment - #'figure_align': 'htbp', + "papersize": "a4paper", # The paper size ('letterpaper' or 'a4paper'). + "pointsize": "10pt", # The font size ('10pt', '11pt' or '12pt'). + "inputenc": "", # Let LuaLaTeX handle input encoding + "utf8extra": "", + "polyglossia": "", + "babel": r"\usepackage[english]{babel}", + "fontenc": r"\usepackage{fontspec}", # Disable the default T1 font encoding (Essential for LuaLaTeX) + "fontpkg": dedent("""\ + \\usepackage[fontfamily=libertinus]{pytooling} + """), + "passoptionstopackages": dedent("""\ + \\PassOptionsToPackage{verbatimvisiblespace=\\ }{sphinx} + """), +# "sphinxsetup": "verbatimvisiblespace=\\textvisiblespace" +# "figure_align": "htbp", # Latex figure (float) alignment + "makeindex": r"\usepackage[columns=1]{idxlayout}\makeindex", + "printindex": r"\def\twocolumn[#1]{#1}\printindex", } # Grouping the document tree into LaTeX files. List of tuples @@ -150,10 +144,10 @@ # author, documentclass [howto, manual, or own class]). latex_documents = [ ( master_doc, - f"{project}.tex", - f"The {project} Documentation", - f"Patrick Lehmann", - f"manual" + f"{pythonProject}.tex", + f"The {pythonProject.replace("_", r"\_")} Documentation", + "Patrick Lehmann", + "manual" ), ] From 7fa2cce1093d302e02328448eb629b24f5f20fb8 Mon Sep 17 00:00:00 2001 From: Patrick Lehmann Date: Sun, 5 Jul 2026 02:43:03 +0200 Subject: [PATCH 4/4] Bumped dependencies. --- doc/Dependency.rst | 2 +- pyEDAA/ProjectModel/__init__.py | 2 +- requirements.txt | 6 +++--- run.ps1 | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/doc/Dependency.rst b/doc/Dependency.rst index f692dd14..22febd33 100644 --- a/doc/Dependency.rst +++ b/doc/Dependency.rst @@ -52,7 +52,7 @@ PyPI (see :ref:`INSTALL`). +=======================================================================================+=============+==========================================================================================================+=============================================================================================================================================================+ | `pyTooling `__ | ≥8.15 | `Apache License, 2.0 `__ | *None* | +---------------------------------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| `pyVHDLModel `__ | ≥0.36 | `Apache License, 2.0 `__ | * `pyTooling `__ (`Apache License, 2.0 `__) | +| `pyVHDLModel `__ | ≥0.37 | `Apache License, 2.0 `__ | * `pyTooling `__ (`Apache License, 2.0 `__) | +---------------------------------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ | `pySVModel `__ | ≥0.3 | `Apache License, 2.0 `__ | * `pyTooling `__ (`Apache License, 2.0 `__) | +---------------------------------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ diff --git a/pyEDAA/ProjectModel/__init__.py b/pyEDAA/ProjectModel/__init__.py index a7c470c8..c1e7f3fc 100644 --- a/pyEDAA/ProjectModel/__init__.py +++ b/pyEDAA/ProjectModel/__init__.py @@ -34,7 +34,7 @@ __email__ = "Paebbels@gmail.com" __copyright__ = "2014-2026, Patrick Lehmann, Unai Martinez-Corral" __license__ = "Apache License, Version 2.0" -__version__ = "0.6.3" +__version__ = "0.6.4" __keywords__ = ["eda project", "model", "abstract", "xilinx", "vivado", "osvvm", "file set", "file group", "test bench", "test harness"] __project_url__ = "https://github.com/edaa-org/pyEDAA.ProjectModel" __documentation_url__ = "https://edaa-org.github.io/pyEDAA.ProjectModel" diff --git a/requirements.txt b/requirements.txt index 6c41f07b..5a45b365 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +1,4 @@ pyTooling ~= 8.15 -pyVHDLModel ~= 0.36.0 -pySVModel ~= 0.5.8 -pySystemRDLModel ~= 0.3.9 +pyVHDLModel ~= 0.37.0 +pySVModel ~= 0.5.11 +pySystemRDLModel ~= 0.3.10 diff --git a/run.ps1 b/run.ps1 index 3b4702a4..c270ecb3 100644 --- a/run.ps1 +++ b/run.ps1 @@ -33,7 +33,7 @@ Param( ) $PackageName = "pyEDAA.ProjectModel" -$PackageVersion = "0.6.3" +$PackageVersion = "0.6.4" # set default values $EnableDebug = [bool]$PSCmdlet.MyInvocation.BoundParameters["Debug"]