1.1.0 (2026-07-30)
Features
- ci: Add a job which depends on everything (67e6c53)
- ci: Add Github Actions workflows (9703743)
- ci: Add new CI job for building & validating the OpenAPI spec (4993d73)
- ci: Auto-tag a new release on successful master builds (9cae582)
- config: Add new helper function for parsing human readable durations (c6099d4)
- doc: Add CITATION.cff (8601b81)
- docker: Add new Dockerimage for Rocky Linux 10 (f0c26ea)
- Introduce Sample::PtrUnique alias (a032da0)
- node-opal-async: Add new node-type for running VILLASnode as an Asynchronous process in OPAL-RT's RT-LAB (e978a28)
- node-opal-orchestra: Add new OPAL-RT Orchestra node-type (95681df)
- node-opal-orchestra: Update PATH (50a557b)
- node-orchestra: Add first version of OpenAPI spec of node-type configuration (6560889)
- node-orchestra: Use new parse_duration config helper for parsing duration (1e34b1e)
Bug Fixes
- Add missing new-line to signoff commit messages (3525085)
- ci/arx: Use nix-community/nix-bundle instead of NixOS/bundlers (0ed61be)
- ci: Disable VILLAS_COMPILE_WARNING_AS_ERROR for debian, ubuntu and rocky (30e764f)
- ci: Dont install dev tools in venv (e022bef)
- ci: Fix build badges in README (d7b17ee)
- ci: include build commands in var (fd49122)
- ci: remove redundant build jobs (105d879)
- clang-format: Proper formatting for libjansson macros (e29e5c2)
- clang: Allow unkown warning options (9f1d892)
- cmake: Cleanup and add missing feature infos (309d4e7)
- cmake: Fix broken FindOpalOrchestra module (c162a6a)
- cmake: Remove GetVersion module and simplify overall CMake code (93cf834)
- compat: Add drop-in std::filesystem header for older systems (c9902cb)
- config: Fix end-of-file (c9045c7)
- config: Fix regular expression handling in parse_duration (bbc951f)
- config: Fix string use-after-free (6b1da06)
- cppcheck: Fix various cppcheck warnings and portability issues (e7c6153)
- cppcheck: Replace string::find with string::starts_with (5606793)
- cppcheck: Suppress dangerous type cast warning (ba6bd7f)
- cpuset: Fix ambiguous C++20 operator== overload (4084afe)
- deps: Adjust linker search path for OpenDSS in deps.sh (47ebd07)
- deps: Fetch libxil from GitHub instead of old Gitlab repo (2d037d7)
- deps: Fix detection of git-svn (0bd7861)
- deps: Overhaul deps.sh script: (0f819de)
- deps: Update criterion installed by deps.sh (7c38ae6)
- devcontainer: Update location of Container image (f4b2edb)
- doc: Add JOSS paper als new main paper about VILLASnode (51f0562)
- doc: Add missing lab19 config (ee8423a)
- doc: Fix broken OpenAPI spec for opal.orchestra node-type (fc38caa)
- doc: Fix indentation and missing SPDX headers of lab19.conf (2140325)
- doc: Fix OpenAPI doc for opal.orchestra node-type (a354a7e)
- docker: Fix captialization (58227a3)
- docker: Order package dependencies alphabetically (afe7011)
- doc: Remove broken link (f5953ef)
- doc: Remove superfluous trailing commas in example configs (94d82da)
- docs: Added missing settings for line-based formats (5166a93)
- docs: Tweak note about citations (b663a51)
- examples: Remove obsolete example configurations for api node-type (00adfdd)
- exceptions: Add missing override annotation (31c756c)
- Fix compatability wioth GCC 8.3.0 (a05cec9)
- Fix libfmt string formatting errors (c0ed0e8)
- format/json_kafka: Fix json_pack string parameter (9064feb)
- formatting: Improve json_pack readability (85281ef)
- fpga/intc: Make IrqVectorInfo initialization more explicit (59f17a2)
- fpga/rtds: Fix broken reinterpret_cast to virtual base class (5be0a06)
- fpga: Replace type-punning pointer cast with std::bit_cast (77c9eff)
- hook-frame: Fix broken digest hook integration test (2d73d5a)
- hook-frame: Rework framing hook to synchronize frame boundaries (aa9ee64)
- hook/lua: Remove unused lua_tojson function (6c1f12b)
- hooks/lua: Fix forward declaration of SignalType (2435af5)
- kernel: Mark ~Driver interface destructor as virtual (4686d23)
- linux: Reintroduce patch for struct groups (2bb445e)
- memory: Fix non-virtual destructor in polymorphic class (c480970)
- nix: Add some missing build inputs (cbf57bb)
- nix: Only build with orchestra on x86_64-linux (54d8fb3)
- nix: Remove nix-ld env vars which break dev shell with Lix (430c533)
- nix: Use common directory for all patches (2831c2f)
- node-example: Remove header for example node-type (46e893d)
- node-opal-async: Fix compilation errors (bec6af1)
- node-opal-orchestra: Add comment to global lock (49e2c29)
- node-opal-orchestra: Do not hide node-type (1aca74b)
- node-opal-orchestra: Fix include order (66d612a)
- node-opal-orchestra: Fix typo in example config (6a2151d)
- node-opal-orchestra: Fix whitespaces (f895c44)
- node-opal-orchestra: Improve readability (37f320f)
- node-opal-orchestra: Rename source files (deb4d13)
- node-opal-orchestra: Rework Item::upsertItem using std::string_view (56f4a6b)
- node-opal-orchestra: Rework Nix build (38dc435)
- node-opal-orchestra: Use shared pointers for DDF items (864c09d)
- node-opal-orchestra: Use snake_case for options (1e5861e)
- node-opal-orchestra: Use std::optional instead of negative value for absent indices (5da3ba5)
- node-opal-orchstra: Use our fs namespace for compatability with std::filesystem drop-in (4ec829d)
- node-orchestra: Fix consteval error in RTError (b08d41a)
- nodes/fpga: Fix cppcheck warning (9f04289)
- nodes/iec61850_goose: Add checks that signals wanted in publisher exist (ce9b0bd)
- nodes/iec61850_goose: Add nullptr check when creating GOOSE publisher (98c5a96)
- nodes/iec61850_goose: Add whitespaces in check that signals wanted in publisher exist (4920d5d)
- nodes/iec61850_goose: Create publishers if only output section exists (e93347f)
- opal_orchestra: Remove <filesystem> include (1cf9be3)
- opal-async-param: Close header comment (0c430e8)
- opal/ddf: Fix non-virtual destructor in polymorphic class (e6d2588)
- packaging/deps: Use fixed pip version instead of latest (942740c)
- packaging: Fix repo location in Arch PKGBUILD file (2e98e32)
- packaging: Update outdated LABELs (b4e4b5c)
- protobuf: Update auto-generated code (203fb99)
- python: change isinstance int/bool order (01344f2)
- python: Fix mypy CI checks (545e4ba)
- python: Fix mypy error (3a45c59)
- python: Fix whitespaces (1af30af)
- reuse: Add missing REUSE header to CITATION.cff (91ef3ed)
- reuse: Remove unused license (d5e8e16)
- sample: Comparison of sample flags (c137b31)
- sample: Remove C compatability macros (dcecdf2)
- style: Fix whitespaces (d70c7da)
- style: Format code with clang-format (186e880)
- style: Make comments start with uppercase letter in Nix files (03f03d4)
- style: Replace std::map by std::unordered map where possible (b532ad3)
- style: Run clang-format (8784479)
- style: Use move semantics to pass std::strings (d835b8b)
- tests/config: Remove broken putenv call (7a489a0)
- tests/format: Use proper printf formatting specifiers for std::int64_t (1605e9f)
- tests/queue: Fix unintentional sleep(0) using usleep (5215a8f)
- tests/utils: Fix string use-after-free (b5ecbea)
- tests: Exclude opal.orchestra config from test-config (af39abb)
- tests: use C locale for integration tests (0388e0e)
- tools: Fix artifact locations for villas-install script (81152f0)
- treewide: Fix virtual/override annotations (a960050)
- Use always en_US locale (aae084e)
- Use native PEP-420 namespace package (db372c7)
- vfio_device: Make IrqVectorInfo initialization more explicit (8851cb5)
- vfio_device: Remove unused pci_device pointer (ae1d7be)
- villas-graph: Pass correct type to gvRenderData (089d772)
- villas-pipe: Allocate at least 16 samples (f4538b2)
- web: Conditionally add global extensions array (71d55f0)
- webrtc: Fix link to static logo asset (3c72575)
- webrtc: Fix use of deleted default constructor of sample_pool (34db23c)
- wrong config name in ignored configs (a0fff22)