Skip to content

Latest commit

 

History

History
1485 lines (849 loc) · 47.1 KB

File metadata and controls

1485 lines (849 loc) · 47.1 KB

CHANGELOG

v1.32.0 (2026-04-17)

Bug Fixes

  • Handle missing score metric in Xcelium sim tool coverage summary (1cc4dfc)

  • Remove superfluous Path construction in xcelium sim tool (b4c1c24)

  • Xcelium sim tool pyright/ruff errors (5cd1ea1)

Features

  • Add command line resource options & integrate with the base flow (bdc4098)

  • Integrate resources into the scheduler to limit parallelism (f205446)

  • Introduce ResourceProvider abstraction and a ResourceManager (3713a07)

Refactoring

  • Change Scheduler max_parallelism type (d3494a3)

Testing

  • Add scheduler tests for resource-level parallelism (030a584)

v1.31.0 (2026-04-16)

Bug Fixes

  • Z01x sim tool build time parsing (b8d553c)

Continuous Integration

  • Use lowrisc/ci-actions for token acquisition (95f8269)

Documentation

  • Correct sim tool doc messages (ef416e4)

Features

  • Add z01x runtime and simulated time log parsing (3311a96)

Refactoring

  • Replace simulation tool SyntaxError with RuntimeError (784a9c6)

v1.30.1 (2026-04-10)

Bug Fixes

  • Stop stdout/stderr line buffering in local interactive jobs (7098bbf)

v1.30.0 (2026-04-10)

Bug Fixes

  • Give test FakeSimCfg a flow attribute (28e60af)

Features

  • Add initial VC Z01X simulation tool support (73c6e07)

  • Enable options for post-build commands (9b28d2f)

Refactoring

  • Make Deploy.exports type more specific. (e51132f)

v1.29.1 (2026-04-10)

Refactoring

  • Pull out the run_scheduler to common place (7bb17c7)

v1.29.0 (2026-04-09)

Features

  • Remove computed symlink dirs from the JobSpec and FlowCfg (25017ee)

Refactoring

  • Move workspace_cfg to the base flow (8d3323a)

  • Move status symlink directory creation to the LogManager (e23e6ba)

  • Remove output directory status symlinking from the launchers (e0ad0a4)

  • Remove test dependencies on JobSpec.links (9a92b89)

v1.28.1 (2026-04-09)

Bug Fixes

  • Delayed status printer start on slow machines (4af00e9)

v1.28.0 (2026-04-09)

Features

  • Use logical CPUs minus one as max_parallel default instead of 16 (18b649e)

v1.27.1 (2026-04-09)

Refactoring

  • Improve the error message if given a sim item with no matches (012178f)

v1.27.0 (2026-04-08)

Features

  • Remove unused --no-rerun option (134420e)

v1.26.3 (2026-04-07)

Refactoring

  • Rewrite how OneShotCfg.build_modes gets constructed (c471598)

  • Rewrite Mode.create_modes as a class method (a23741e)

v1.26.2 (2026-04-07)

Refactoring

  • Tidy up the last few Ruff problems in one_shot.py (b2de3fc)

v1.26.1 (2026-04-07)

Bug Fixes

  • Move initial async status printer update (c29abfb)

v1.26.0 (2026-04-07)

Features

  • Async_core -> core & async_status_printer -> status_printer (95193f1)

  • Remove Timer utility (76947ab)

  • Remove legacy LocalLauncher, FakeLauncher and Launcher factory (9e7f321)

  • Remove the old scheduler and status printer (05cbad4)

  • Switch to use the async scheduler interface (0daa4eb)

Testing

  • Add 2 async scheduler tests for parallelism & prioritization (70e5a0d)

  • Add pytest-asyncio dependency (efc45b7)

  • Convert scheduler tests to use the new async scheduler (3343eb8)

v1.25.0 (2026-04-07)

Features

  • Implement fake runtime backend with fake coverage results (c0748a4)

v1.24.0 (2026-04-07)

Features

  • Improve default scheduler prioritization function (3ef09da)

v1.23.6 (2026-04-07)

Bug Fixes

  • Apply --max-odirs to RuntimeBackend as well (4a6fb15)

v1.23.5 (2026-04-06)

Refactoring

  • Be more careful with variants in OneShotCfg.gen_results (e662759)

v1.23.4 (2026-04-06)

Refactoring

  • Make the typing clearer in Deploy._process_exports (ed6beb9)

v1.23.3 (2026-04-06)

Refactoring

  • Fix types of JobSpec.timeout_mins, JobSpec.timeout_secs (5fe1dbc)

v1.23.2 (2026-04-06)

Refactoring

  • Move tool name to FlowCfg (51e3655)

v1.23.1 (2026-04-06)

Refactoring

  • Explicitly add proj_root to FlowCfg (c06170e)

Testing

  • Add pytest-mock dependency (5514be4)

  • Add runtime backend registry tests (6b19dc7)

v1.23.0 (2026-04-06)

Bug Fixes

  • Check if coverage report exists in CovReport (424dfca)

Features

  • Connect instrumentation to the new async scheduler (347419d)

  • Implement initial async scheduler integration (b222868)

  • Integrate async status printers with the async scheduler (67897f0)

  • Introduce LogManager and connect it to the async scheduler (48bee84)

  • Introduce runtime backend registry (7da9684)

v1.22.0 (2026-04-06)

Features

  • Implement new async base StatusPrinter class (d6068eb)

  • Port EnlightenStatusPrinter to the async interface (4061086)

  • Port TtyStatusPrinter to the new async interface (906d00f)

Refactoring

  • Reorganize time utilities (f7af42d)

v1.21.0 (2026-04-06)

Features

  • Add optional backend field to the JobSpec model (bf28dac)

  • Introduce a new SCHEDULED job status (3efc473)

  • Introduce new async scheduler (40ce9c0)

v1.20.0 (2026-04-06)

Features

  • Add LocalRuntimeBackend backend (22c795d)

  • Port core launcher base functionality to the RuntimeBackend base (408e5bb)

v1.19.7 (2026-04-03)

Refactoring

  • Tidy up the last few Ruff problems in deploy.py (f83c7e1)

v1.19.6 (2026-04-03)

Refactoring

  • Explicitly give types to some fields in Deploy subclasses (7c2195e)

v1.19.5 (2026-04-03)

Refactoring

  • Add more strictly typed "sim_cfg" to some Deploy classes (34653b2)

v1.19.4 (2026-04-03)

Refactoring

  • Correct the type for RunMode.build_mode (7bc25f6)

v1.19.3 (2026-04-03)

Bug Fixes

  • Correct the type for Deploy.init (c831123)

Refactoring

  • Move the "name" field up to FlowCfg (845a518)

v1.19.2 (2026-04-02)

Bug Fixes

  • Move revision info retrieval to the base FlowCfg (5524219)

v1.19.1 (2026-04-02)

Bug Fixes

  • Use correct shorthand for 'Running' in the scheduler (3a3927d)

v1.19.0 (2026-04-01)

Features

  • Add new JobStatusInfo model (63e8d12)

  • Introduce JobSpec.id property (c874331)

  • Introduce LegacyLauncherAdapter runtime backend (65df3d6)

  • Introduce abstract RuntimeBackend base class (cbb46d2)

v1.18.0 (2026-04-01)

Features

  • Rename 'Dispatched' job status to 'Running' (66f8205)

Refactoring

  • Create status link directories from the JobStatus Enum (04f6a9b)

  • Move print_msg_list to a separate print util (3ee54b9)

  • Move scheduler & status printer into separate module (ef44a6a)

  • Rename JobStatus.ended to JobStatus.is_terminal (25aab7f)

v1.17.4 (2026-04-01)

Refactoring

  • Make timeout seconds a JobSpec property (ef48cc7)

  • Pass renew_odir through the JobSpec instead of pre_launch (a57a94c)

  • Remove pre_launch Launcher inversion of control (b65fdc7)

v1.17.3 (2026-03-30)

Bug Fixes

  • Tee interactive job stdout/stderr to the log file (6d1f83c)

Refactoring

  • Remove gui attribute from the JobSpec model (7fa03ed)

v1.17.2 (2026-03-30)

Bug Fixes

  • Sim flow result pass/total count aggregation (48ec7ba)

v1.17.1 (2026-03-30)

Bug Fixes

  • Restore RunTest simulation time parsing (8ebb0c1)

Refactoring

  • Use format string for local launcher log instead of fstring (bdbf0b4)

Testing

  • Expect a ValueError on a dependency cycle (0d83b97)

  • Fix & improve status checks in scheduler job dependency tests (f05d71d)

  • Fix test_job_priority scheduler test (6054386)

  • Remove test_same_name_different_targets (f4256f1)

v1.17.0 (2026-03-27)

Bug Fixes

  • Ensure default terminal restored after SIGINT with Enlighten (d534fbd)

Features

  • Expand Enlighten running status truncation to terminal width (e1b5fa9)

v1.16.3 (2026-03-27)

Bug Fixes

  • Round RSS byte averages in resource instrumentation (519b065)

Refactoring

  • Switch to time.perf_counter for instrumentation (bd4b77d)

v1.16.2 (2026-03-27)

Bug Fixes

  • Stop adding build job dependencies if running with --run-only (96735a1)

v1.16.1 (2026-03-27)

Bug Fixes

  • Document --interactive reseed assumption (788ea25)

v1.16.0 (2026-03-17)

Features

  • Add dashboard json (2493bc4)

  • Generate badges for test reports (92b8f44)

v1.15.0 (2026-03-13)

Features

  • Add dashboard generation (2c3f4af)

Refactoring

  • Move out the static file content renderer (241baf5)

v1.14.2 (2026-03-12)

Bug Fixes

  • Links in markdown report when proj-root specified (2a8d15a)

  • Remove old FlowResults class (6daf94a)

Refactoring

  • Separate out summary from the full results (42f5a65)

v1.14.1 (2026-03-12)

Bug Fixes

  • Set UV_PYTHON in .envrc for NixOS direnv users (fdd69e9)

v1.14.0 (2026-03-10)

Features

  • Add Markdown block report generation for CLI (531bbaa)

  • Add Markdown summary report generation for CLI (148e2dc)

  • Add stubbed Markdown report renderer with CLI summary (957f166)

  • Add the coverage report dashboard page to sim summary (0e788b0)

  • Record the testplan reference in the sim result summary (848d4f1)

Refactoring

  • Store qualified name and log path in bucket items (76feedf)

v1.13.0 (2026-03-10)

Bug Fixes

  • Git commit and SimCfg revision info (d6d53f6)

Features

  • Add short option to git commit hash retrieval (4923681)

Refactoring

  • Add sim report renderer abstraction (5ded4ae)

v1.12.0 (2026-03-10)

Bug Fixes

  • Summary/CSS for block HTML reports (9653798)

Features

  • Add build seed to the sim result reports (241fdb3)

  • Replace HTMX-driven DOM injection with templated navigable pages (8d46972)

  • Summary HTML report navbar brand redirects to root (ed67636)

Refactoring

  • Convert HTML wrapper indentation to spaces (6768ec7)

  • Remove deploy cov_results table (f49a968)

v1.11.5 (2026-03-06)

Bug Fixes

  • Calculate git url for reports (aeac114)

Chores

  • Update nix flake to pull in latest ruff version (0b461c0)

v1.11.4 (2026-03-05)

Bug Fixes

v1.11.3 (2026-03-05)

Bug Fixes

  • Attach DVSim version to individual block reports (df52926)

  • Avoid duplicate block report generation for primary configs (3e92f48)

  • Block report coverage omission (1b6df51)

  • Incorrect result model with ---map-full-testplan (b29bd6a)

  • Make report stage table accordion & error buckets optional (7df2902)

  • Stop auto-collapsing accordion in block HTML report (cb6e158)

  • Use variant name in HTML reports (8872455)

Refactoring

  • Reduce variant name duplication (718ca1d)

v1.11.2 (2026-03-05)

Bug Fixes

  • Track error results seen in sim flows (c75cfe8)

v1.11.1 (2026-03-05)

Refactoring

  • Convert status printer to singleton & keep context until end (4acf367)

v1.11.0 (2026-03-05)

Features

  • Add optional logging to a logfile (8f5dff8)

  • Implement logzero functionality directly (7488f34)

v1.10.2 (2026-02-24)

Refactoring

  • Add more scheduler resource instrumentation (161f13f)

v1.10.1 (2026-02-23)

Bug Fixes

  • Add job tool metadata to instrumentation report (d8d3f52)

  • Remove per-job per-core avg util from resource instrumentation (a63b91e)

v1.10.0 (2026-02-18)

Bug Fixes

  • Remove typo in log for requeued jobs (d64399b)

Build System

  • Add psutil Python dependency (06f6b73)

Continuous Integration

  • Disable RUF100 unused-noqa check in CI (c8e6b2f)

Features

  • Add instrumentation singleton & scheduler hooks (afbdd38)

  • Add scheduler instrumentation base classes (78e9fba)

  • Add scheduler instrumentation CLI argument (ea883c9)

  • Add scheduler instrumentation for measuring system resources (e12f7c9)

  • Add scheduler timing instrumentation (3c4553b)

v1.9.2 (2026-02-17)

Refactoring

  • Add main entry points for main and admin CLIs (709117f)

Testing

  • Add scheduler test for shared job names across targets (151e6ab)

v1.9.1 (2026-02-17)

Refactoring

  • Add additional sim flow debug logs (36f9db4)

v1.9.0 (2026-02-16)

Features

  • Add DVSim version to generated reports (236dd45)

v1.8.1 (2026-02-12)

Bug Fixes

  • Remove deadlocks by making the scheduler signal handler signal-safe (e9ed090)

Testing

  • Mark scheduler signal tests as expected to pass (5400046)

v1.8.0 (2026-02-11)

Build System

  • Add pytest-repeat and pytest-xdist test development deps (54343fb)

  • Add pytest-timeout test dependency (4b2f0ad)

Continuous Integration

Features

  • Add scheduler Job/Launcher mocks (08f569e)

Refactoring

  • Make scheduler interactivity default to false (2b2d154)

Testing

  • Add more scheduler tests (2a59a3a)

  • Add scheduler priority/weighting tests (332146a)

  • Add scheduler signal handler tests (2fe396a)

  • Add scheduler structural/dependency tests (dcb512a)

  • Add scheduler testing utilities & initial tests (a0aa678)

  • Enable parallel pytest coverage (c9c0d38)

v1.7.7 (2026-02-11)

Bug Fixes

  • pyproject.toml license spelling (ee24711)

Continuous Integration

  • Pass CI dependency license check requirements (dd90bea)

v1.7.6 (2026-02-09)

Bug Fixes

  • Replace 'E' local launcher poll status with a LauncherError (612011b)

  • Resolve JobSpec/str type error (e73575c)

Refactoring

  • Launcher poll always returns a status (4590ff8)

  • Make Job Status an Enum (c75c923)

  • Replace assert with RuntimeError (39ec250)

  • Resolve scheduler complexity lint warnings (8010a89)

v1.7.5 (2026-02-09)

Bug Fixes

  • Don't ignore input header message in EnlightenStatusPrinter (1a0f2dd)

  • Explicitly stop EnlightenStatusPrinter manager (cc9e703)

  • Handle EnlightenStatusPrinter early exit error (076b249)

v1.7.4 (2026-02-05)

Bug Fixes

  • Fix/add --version option to the CLIs (c2c7c78)

v1.7.3 (2026-01-21)

Bug Fixes

v1.7.2 (2026-01-21)

Bug Fixes

  • Hacky workaround for sim centric code (596d92f)

  • Restore the lint flow old style report (85d8550)

Refactoring

  • Move sim related modules to top level package (9e31623)

v1.7.1 (2026-01-08)

Bug Fixes

  • Render_static works pre python 3.13 (5b68d0d)

Continuous Integration

Testing

  • Static content rendering (7989ba7)

v1.7.0 (2025-12-19)

Features

  • Block results report HTMX (e4522bd)

  • CORS (d6fc380)

  • Create htmx wrapper for the summary page (7690af4)

  • Local copies of the js/css deps to enable sandboxed builds (dc18f96)

Refactoring

  • Create a higher level function to generate all reports (ca9cc18)

  • Report use the local css/js (182e9cb)

v1.6.3 (2025-12-05)

Bug Fixes

  • Add failure buckets back into block report templates (b601833)

v1.6.2 (2025-12-04)

Bug Fixes

  • Add failure buckets data model back in (f89dc31)

v1.6.1 (2025-12-04)

Bug Fixes

  • Don't use python311 datetime alias (96b7c76)

v1.6.0 (2025-11-25)

Features

  • Summary report more dashboard like (a784cb2)

v1.5.0 (2025-11-21)

Bug Fixes

  • Use git commit directly from git (835926b)

Features

  • Add git utils for getting git commit hash (0cbdc49)

v1.4.0 (2025-11-21)

Chores

Features

  • Add report generation from JSON (69d8da6)

Refactoring

  • Move cli from module to package (865d28a)

v1.3.1 (2025-11-21)

Bug Fixes

  • Restore variant to the report (87077a1)

  • Summary json link name (320b697)

  • Upper case the block names to match the previous reports (8f2e2eb)

Refactoring

v1.3.0 (2025-11-18)

Features

  • Add block report template (6e716fe)

  • Add jinja2 template renderer (efeb68a)

  • Add report generation from templates (14406e4)

  • Add summary report template (fa0852a)

  • Redirect template (02b05fe)

Refactoring

  • Clean up unused functions (40958fd)

  • Tidy up results generation with direct model creation (75d91a3)

v1.2.0 (2025-11-14)

Features

  • Add JSON summary generation (701cf04)

  • Add ResultsSummary model (2c5b1e9)

v1.1.0 (2025-11-13)

Features

  • Add SimTool interface and implementations (b649826)

Refactoring

  • Use the tool plugins directly (b6416fa)

Testing

  • Add initial tests for the VCS tool plugin. (21edab1)

  • Add tests for the tool plugin system (b883b7b)

v1.0.6 (2025-11-12)

Bug Fixes

  • Report item filtering (4b5d01d)

  • Run and sim time precision and units (8af1207)

v1.0.5 (2025-11-11)

Chores

Refactoring

  • Add JobSpec common abstraction (be1e1e1)

  • Migrate from Depoy.dump to JobSpec.model_dump (91ac90e)

v1.0.4 (2025-11-06)

Code Style

  • Linting, docstrings and typing (08b8e6d)

Refactoring

  • Add WorkspaceCfg (9a7a08e)

  • Improvements in lsf launcher (d64033d)

  • Make cov_db_dirs deterministic (3bb06fc)

  • Rename model_dump -> dump (53bbfd4)

Testing

  • Add initial CompileSim unittest (e8d5279)

v1.0.3 (2025-10-30)

Bug Fixes

  • Add missing concrete implementations (49786d0)

  • Remove dependency on launcher (c135fa6)

Code Style

  • Improved docstrings and linting fixes (bc1cdef)

v1.0.2 (2025-10-16)

Bug Fixes

  • Remove use of feature not supported by 3.10 (b8f45ef)

Chores

Continuous Integration

v1.0.1 (2025-10-15)

Bug Fixes

  • Fake launcher missing abstract methods (a58fd05)

Refactoring

  • Use deployment name instead of object as dict keys (6938d34)

v1.0.0 (2025-10-14)

Bug Fixes

  • [launcher] drop poll_freq from 1s to 0.05s for the local launcher (3628d69)

  • [wildcards] refactor and improved testing with fixes (c7d7a9a)

  • Circular import issue (0a1c1c3)

  • Improve testing and fix issues with the fs helpers. (40c4f22)

  • Logging of timeout after wildcard eval (87e09a3)

  • Move ipython into debug/dev/nix extra dependency groups (7b53822)

  • Nix devshell (995a57c)

  • Regression (9c1bf17)

  • Remove shebangs from scripts (597c7d5)

  • Remove unused Bazel BUILD file (60dcb91)

  • Results refactor name clash (073f9a7)

  • Style.css needs to be in the flow dir (a181bdd)

Build System

  • [pytest] update config to ignore scratch dir when collecting tests (c484ac6)

Code Style

  • [tests] disable pedantic rules for test files. (3a7709d)

  • Disable TRY003 (fe7fecd)

  • Fix auto-fixable PTH issues (cc26b34)

  • Fix instances of A001 (bfed9d4)

  • Fix instances of N806 (0cf67f1)

  • Fix instances of N816 (6e76ad7)

  • Fix instances of N818 (36ec821)

  • Fix N803 issues and enable rule (60b16d7)

  • Remove uneccesery variable (a5290dc)

Continuous Integration

  • Add an action to get a lowrisc-ci app installation access token (16a9508)

  • Add automated release action based on python-semantic-release / conventional commits (46dc514)

  • Copy over check for commit metadata (1dc0673)

  • Github actions to version and creation of the release (fc763d4)

Features

  • [launcher] add fake launcher to produce random results (fd5aed1)

  • Add deployment object dump debug feature (f682788)

  • Added configuration options for release (d7ed748)

Refactoring

  • [flow] module rename dvsim.CdcCfg -> dvsim.flow.cdc (d93fdce)

  • [flow] module rename dvsim.CfgFactory -> dvsim.flow.factory (a47d9e2)

  • [flow] module rename dvsim.FlowCfg -> dvsim.flow.base (4ec6081)

  • [flow] module rename dvsim.FormalCfg -> dvsim.flow.formal (c59fa69)

  • [flow] module rename dvsim.LintCfg -> dvsim.flow.lint (31a5b15)

  • [flow] module rename dvsim.OneShotCfg -> dvsim.flow.one_shot (8ff0f09)

  • [flow] module rename dvsim.SimCfg -> dvsim.flow.sim (4e0c39a)

  • [flow] module rename dvsim.SynCfg -> dvsim.flow.syn (eca83a6)

  • [job] pull out JobTime tests, improved testing and fix a few bugs (b56441f)

  • [launcher] module rename dvsim.Launcher -> dsvsim.launcher.base (f89917b)

  • [launcher] module rename dvsim.LauncherFactory -> dsvsim.launcher.factory (9e90ebe)

  • [launcher] module rename dvsim.LocalLauncher -> dsvsim.launcher.local (88f8d0d)

  • [launcher] module rename dvsim.LsfLauncher -> dsvsim.launcher.lsf (f2bf778)

  • [launcher] module rename dvsim.NcLauncher -> dsvsim.launcher.nc (6d2806b)

  • [launcher] module rename dvsim.SgeLauncher -> dsvsim.launcher.sge (3120ec4)

  • [launcher] module rename dvsim.SlurmLauncher -> dsvsim.launcher.slurm (0d81e22)

  • [logging] pull out logging setup from the main function (1e75b9a)

  • [logging] use custom logger rather than the base logger (1aa0541)

  • [publish] remove the old report publishing mechanisms (c9cd75f)

  • [report] remove old report dir versioning (96ff3d5)

  • [reporting] remove unnesesery latest dir for reporting (de0fa37)

  • [typing] add typing to the Scheduler (b796d3c)

  • [utils] convert utils to a package (08bcbdc)

  • [utils] split out remaining utils into modules (64ce14c)

  • Improve and add typing to status printer (d097727)

  • Initial detanglement of deployment objects (1102d8d)

  • Rename dvsim.MsgBucket -> dvsim.msg_bucket (834f9e7)

  • Rename dvsim.MsgBuckets -> dvsim.msg_buckets (3ae5918)

  • Rename dvsim.Regression -> dvsim.regression (b79b5f4)

  • Rename dvsim.Scheduler -> dvsim.scheduler (afbcaa1)

  • Rename dvsim.SimResults -> dvsim.sim_results (b2e7813)

  • Rename dvsim.StatusPrinter -> dvsim.utils.status_printer (14c4917)

  • Rename dvsim.Test/Testplan -> dvsim.utils.test/testplan (9b4f89f)

  • Rename dvsim.Timer -> dvsim.utils.timer (41366ad)

  • Rename remaining modules and enable N999 lint (8dad466)

Testing

v0.1.0 (2025-09-09)

  • Initial Release