storm-lang (0.7.5-1) unstable; urgency=medium

  * Better overall performance due to improved grammar for Basic Storm.
  * Better error messages in range-based for loops.
  * Allow using #define X in Progvis for integer constants.
  * Fixes bugs in Progvis caused by the re-structuring of internals.
  * Progvis does not crash for arrays of user-defined types.
  * Progvis highlights memory accesses by more built-in functions.

 -- Filip Strömbäck <filip@fprg.se>  Sun, 18 Jan 2026 14:12:44 +0100

storm-lang (0.7.4-1) unstable; urgency=medium

  * New Progvis version (0.6.8). Bugfixes to the model checker
    and quicker loading of programs.
  * Fixed a bug in the implementation vector cross product.
  * Fixed a bug that caused close() to misbehave when called
    from a different threads when using io_uring.

 -- Filip Strömbäck <filip@fprg.se>  Tue, 13 Jan 2026 16:05:15 +0100

storm-lang (0.7.3-1) unstable; urgency=medium

  * Added interface for inhibiting the screen saver to the UI library.
  * Support loading icons and setting them on Frames.
  * Fixed an undercanning issue near the root of the stack. On 64-bit
    systems (notably Linux), this caused Storm to crash when specifying
    a source file (or directory) on the command-line that does not
    contain a main function.

 -- Filip Strömbäck <filip@fprg.se>  Mon, 20 Oct 2025 22:52:48 +0200

storm-lang (0.7.2-1) unstable; urgency=medium

  * Fixed a bug that causes the ClassInherit test to fail with
    a probability of about 1/16.
  * Minor polishing of the set and map interfaces.

 -- Filip Strömbäck <filip@fprg.se>  Sun, 12 Oct 2025 08:49:53 +0200

storm-lang (0.7.1-1) unstable; urgency=medium

  * Throw an appropriate exception when opening non-existing files.
  * Ignore unused serial port files on Linux (all ttySx are often not used).
  * Properly follow the system conventions for locking serial ports on Linux.

 -- Filip Strömbäck <filip@fprg.se>  Sat, 11 Oct 2025 13:54:44 +0200

storm-lang (0.7.0-3) unstable; urgency=medium

  * Added storm-lang-graphics as a dependency to progvis.

 -- Filip Strömbäck <filip@fprg.se>  Sun, 05 Oct 2025 00:22:38 +0200

storm-lang (0.7.0-2) unstable; urgency=medium

  * Fixed autopkgtests and added metadata to patch.

 -- Filip Strömbäck <filip@fprg.se>  Sat, 04 Oct 2025 23:18:00 +0200

storm-lang (0.7.0-1) unstable; urgency=medium

  * Adds experimental live reloading of programs.
  * Fixes a deadlock situation during lazy compilation.
  * Better stack traces.
  * Support for PAC on Arm.
  * New syntax, @parent, in the named{} syntax.
  * New version of Progvis, among other things it detects more issues.
  * Allow saving screenshots from Progvis.
  * Using io_uring for async IO throughout Storm.
  * Support timeouts for sockets.
  * Support for serial ports.
  * Added support for PostgreSQL.
  * New HTTP library (server and client), and JSON library.
  * More robust handling of function pointers.

 -- Filip Strömbäck <filip@fprg.se>  Sat, 4 Oct 2025 12:50:43 +0200

storm-lang (0.6.28-3) unstable; urgency=medium

  * Fixed a minor issue in the unit test library.

 -- Filip Strömbäck <filip@fprg.se>  Tue, 28 Jan 2025 11:56:51 +0100

storm-lang (0.6.28-2) unstable; urgency=medium

  * Disabled PAC on ARM64 builds as it is not supported by Storm,
    and will cause spurious crashes. Patches from upstream are
    in the works.

 -- Filip Strömbäck <filip@fprg.se>  Sun, 05 Jan 2025 19:34:23 +0100

storm-lang (0.6.28-1) unstable; urgency=medium

  * Progvis can now detect memory leaks.
  * New components in the UI library (group and divider).
  * Support nested layouts in the UI flavor of the layout
    domain-specific language.
  * Made all toS(StrBuf) public to follow the new
    convention, and to be consistent with values.
  * Allow testing void expressions in the test library.
  * The function toUtf8 no longer returns a trailing 0 byte.
  * Support IS NULL and IS NOT NULL in the SQL library.

 -- Filip Strömbäck <filip@fprg.se>  Sun, 5 Jan 2025 00:48:49 +0100

storm-lang (0.6.26-1) unstable; urgency=medium

  * Properly handle SIGPIPE so that Storm does not exit when
    writing to an empty pipe or socket.
  * Allow error handling in input and output streams.
  * Added bounds checking when accessing bytes in Buffers.

 -- Filip Strömbäck <filip@fprg.se>  Wed, 20 Nov 2024 20:11:36 +0100

storm-lang (0.6.25-1) unstable; urgency=medium

  * Fixed a crash when using timeouts and the read completes
    before the timeout expires.

 -- Filip Strömbäck <filip@fprg.se>  Tue, 12 Nov 2024 21:18:55 +0100

storm-lang (0.6.24-1) unstable; urgency=medium

  * Updated the nomenclature in the test library. Test suites are
    now called tests, and tests are now called checks.
  * Fixed socket timeouts. The input timeout is now set on the
    input stream rather than on the socket itself.
  * New functionality in the Array class.
  * Fixed function pointers being broken after a copy.
  * Robustness and performance improvements.

 -- Filip Strömbäck <filip@fprg.se>  Sat, 9 Nov 2024 13:22:53 +0100

storm-lang (0.6.23-1) unstable; urgency=medium

  * Unified the to-string implementation for value types. Now it is enough
    to implement "toS" or "toS(StrBuf)", just as for classes and actors.
  * Usability improvements in the top-loop: better error messages.
  * Compile destructors eagerly to avoid crashes during shutdown.
  * Allow using "${}" to insert types into pattern blocks.
  * Relaxed limitations on where actors are bound to threads. Previously,
    this needed to happen at the first subclass of TObject. Now it can
    happen anywhere in the hierarchy.
  * New design of the license dialog.

 -- Filip Strömbäck <filip@fprg.se>  Sat, 13 Jul 2024 11:32:29 +0200

storm-lang (0.6.22-1) unstable; urgency=medium

  * Fixed a crash in the parser during error recovery.
  * Changed how exports are handled to avoid surprises.
    Previously, exported packages would be imported into
    the package they were exported from. This is no longer
    the case.
  
 -- Filip Strömbäck <filip@fprg.se>  Thu, 2 May 2024 21:58:13 +0200

storm-lang (0.6.20-3) unstable; urgency=medium

  * Fix reproducibility issues by sorting files in the preprocessor.

 -- Filip Strömbäck <filip@fprg.se>  Fri, 22 Mar 2024 19:59:04 +0100

storm-lang (0.6.20-2) unstable; urgency=medium

  * Updated the build files to include all flags to .S files.
  * Marked storm-lang-doc as multiarch: foreign.
  * Fixed reproducibility issue with the date in the documentation.

 -- Filip Strömbäck <filip@fprg.se>  Sun, 03 Mar 2024 11:33:58 +0100

storm-lang (0.6.20-1) unstable; urgency=medium

  * Revised the documentation of Storm. It is now rendered by
    Storm itself.
  * Added a new library for parsing `markdown`-formatted text.
  * Added support for passing command-line arguments to programs
    written in Storm.
  * Added support for character literals to Basic Storm.
  * Don't use sizeof('\0') for end of string in C (Closes: #1058778)

 -- Filip Strömbäck <filip@fprg.se>  Thu, 22 Feb 2024 11:47:57 +0100

storm-lang (0.6.19-1) unstable; urgency=medium

  * Support for MariaDB and MySQL in the database library.
  * Left, right, and full joins are properly handled in the
    database library.
  * Changed license to the BSD licence.

 -- Filip Strömbäck <filip@fprg.se>  Sun, 17 Sep 2023 11:42:47 +0200

storm-lang (0.6.17-1) unstable; urgency=medium

  * Updated the garbage collector to a newer version. This
    potentially solves performance regressions when working
    with large sets or maps of pointers.
  * Improved handling of exceptions on 64-bit platforms.
  * Updated Debian build files to allow reproducible build
    and to properly clean the build (Closes: #1047325)

 -- Filip Strömbäck <filip@fprg.se>  Mon, 14 Aug 2023 20:43:25 +0200

storm-lang (0.6.16-1) unstable; urgency=medium

  * Fixed issues in Progvis when using the NO_STEP directive.
  * Fixed issues in the model checker in Progvis when calling
    multiple calls to the same user-defined function.
  * Fixed an issue in the layout code for Progvis that would
    sometimes cause new data to be placed at (0, 0).
  * Updated how global variables are shown in Progvis.
    Global arrays are also supported.
  * Fixed a bug in the code generation in Storm that would
    cause the division instruction to be mis-compiled.
  * Implemented support for initializers for member variables
    in Basic Storm.
  * The name resolution in Basic Storm has been improved to
    avoid surprises.
  * Renamed the readAll function to fill in IStream.
  * Implemented a list view control in the UI library.
  * The UI library can be loaded in a headless environment.
  * Added the ability to limit the size of deserialized data
    in the serialization library.
  * The serialization library is more robust regarding
    members that have been removed since serialization.
  * Enums are now serializable.
  * Fixed a bug in the IO system that could cause crashes,
    and lost events, particularly when working with sockets.
  * Improved robustness of partial reads in the IO libraries.
  * The SQL library has been re-factored to handle cases
    where not all rows are extracted.
  * Fixed crash when using Variant in the interactive shell.

 -- Filip Strömbäck <filip@fprg.se>  Fri, 23 Jun 2023 00:50:25 +0200

storm-lang (0.6.2-1) unstable; urgency=medium

  * Added support for arm64.
  * Add support for detecting live-locks in the auto-grader in Progvis.
  * Fixed a bug in Progvis that would cause threads to step too far.
  * Throw exceptions on integer division by zero to avoid crashes in Progvis.
  * Added conversions between unsigned integers and floating point types.
  * Improved error messages for cases where a default constructor is missing.
  * Improved the presentation library to allow interactive components.
  * Improved the Geometry API.
  * New instruction in the intermediate representation: `test`

 -- Filip Strömbäck <filip@fprg.se>  Wed, 4 Jan 2023 16:08:42 +0000

storm-lang (0.5.20-1) unstable; urgency=medium

  * Allow running code from files without the "-f" flag.
  * Allow catching "out of memory" errors from the garbage collector.
  * Fixed a rare crash that could occur when a large amount of memory
    is allocated on the heap (around 1GB or so).
  * Protect against integer overflows when allocating data on the
    heap. Previously, a well-selected size could cause a too small
    allocation and subsequent crashes/buffer overflows.
  * Improved the representation of uninitialized synchronization
    primitives in Progvis.
  * Fixed issues when running UI applications on Wayland.
  * Fixed issues with calling the "join" function multiple times.
  * SQL library supports "ORDER BY" and table aliases.
  * Lambdas never try to return a reference, which previously caused an error.
  * Improved error message when using wrong syntax on command line.
  * Fixed a bug in the PinnedSet class when resizing internal storage.
  * Added iterators to the Queue class.
  * Added progress bars to the UI library.
  * Fixed issues with DPI scaling on Linux in the UI library.
  * Added maps and sets that operate on object identity for class types.
  * Improved layout of data in Progvis.
  * Added a model checker to Progvis to find problems automatically.
  * Organized the demo directory, and added button to the UI for accessing it.
  * Fixed bug that caused Progvis to not show all accesses sometimes.
  * The C/C++ frontend for Progvis handles whitespaces properly and allows
    using "static" for global variables.
  * Added icons to Progvis.

 -- Filip Strömbäck <filip@fprg.se>  Sat, 30 Jul 2022 11:15:07 +0200

storm-lang (0.5.10-1) unstable; urgency=medium

  * First Debian release (Closes: #990009)

 -- Filip Strömbäck <filip@fprg.se>  Tue, 9 Nov 2021 22:49:14 +0100

