Suositut: Tiedot päivitetty 27. lokakuuta 2026

Kategoriat

Internet1 356
Viestintä321
Ääni ja video898
Grafiikka ja suunnittelu539
Toimisto ja tuottavuus1 124
Kehitystyökalut3 134
Tekoälytyökalut529
Tietoturva ja yksityisyys385
Järjestelmätyökalut3 114
Pelit523
Opiskelu ja tiede239
Verkko ja IT284

Spice: vanhemmat versiot ja versiohistoria

Spice is a statically-typed, easy to use and compiled programming language. It supports cross-compilation and is especially useful for programming close to the system.

Spice-ohjelmasta on luettelossa 34 versiota, ensimmäinen 27. huhtikuuta 2022 ja uusin 0.29.2. Jokainen versio linkittää julkaisijan omiin asennustiedostoihin.

2022: 9 9 22 2023: 0 23 2024: 0 24 2025: 10 10 25 2026: 15 15 26

34 versiota 4 vuoden aikana · noin 7,6 vuodessa

VersioPäivämääräKokoTiedostot
0.29.2Uusin 25. lokakuuta 2026 — 64-bittinen MSI
Muutosloki
Changelog
- f3d55fe: Bump the stage0 compiler to 0.29.1 (#1647) (@marcauberer)
- c37858b: Submit WinGet manifest PRs from the spicelang/winget-pkgs fork (#1648) (@marcauberer)
- d940484: Bump LLVM to 23.1.4 (#1649) (@marcauberer)
- 3709eca: Make the std container APIs consistent and fix Deque element lifetimes (#1650) (@marcauberer)
- 429b3b2: Reject calls through an interface, that return an interface by value (#1651) (@marcauberer)
- b5c6e34: Let functions own and destruct their by-value struct params (#1652) (@marcauberer)
- 01a6163: Declare functions on demand, when they are referenced as function pointers (#1653) (@marcauberer)
- c3f18f1: Remove the unreachable covariant return thunk and fix stale comments (#1654) (@marcauberer)
- 6e20004: Move temporaries into by-value params instead of copying them (#1655) (@marcauberer)
- e71e3ab: Rename getFront/getBack of the linked lists to front/back (#1656) (@marcauberer)
- bb471fb: Return the removed item from Vector.popBack (#1657) (@marcauberer)
- 8de56ad: Use upsert for all maps and fix duplicate keys in Map.insert (#1658) (@marcauberer)
- 65914fb: Allow assigning const values through non-const references (#1659) (@marcauberer)
- d38add3: Reject const args for non-const pointer and reference params (#1660) (@marcauberer)
- 4115fc2: Fix the warnings when building the compiler (#1661) (@marcauberer)
- 18fb556: Leave link-only args out when compiling additional sources (#1662) (@marcauberer)
- 890635f: Enforce const for struct variables and their fields (#1663) (@marcauberer)
- ab429fa: Return a const node from downcast and add downcastMut (#1664) (@marcauberer)
- 942c731: Reject const args for generic ref and ptr params with known T (#1665) (@marcauberer)
- 5c2cba4: Reject non-constant global initializers instead of crashing (#1667) (@marcauberer)
- 3eb9923: Store the compiler singletons in typed pointer globals (#1668) (@marcauberer)
- d997c67: Skip emitting test functions when no test main is generated (#1669) (@marcauberer)
- 1737b8c: Correct the attribute docs for external declarations (#1672) (@marcauberer)
- a18a750: Support <filename>_<arch>.spice in import auto-resolution (#1674) (@marcauberer)
- 0eb22a5: Add --no-red-zone and the core.compiler.redZone attribute (#1675) (@marcauberer)
- 3264c00: Bump zensical from 0.0.70 to 0.0.71 in /docs (#1676) (@dependabot[bot])
- d8345d2: Add --relocation-model and --code-model options (#1677) (@marcauberer)
- eee89c7: Add __volatile_load/__volatile_store builtins and std wrappers (#1678) (@marcauberer)
- 2fa0b78: Reject __volatile_store through pointers to const values (#1679) (@marcauberer)
- dca6294: Add the core.compiler.noReturn and core.compiler.cold attributes (#1680) (@marcauberer)
- d677e55: Add the --cpu-features option (#1681) (@marcauberer)
- 218bd49: Reject the syscall builtin with the TPDE backend (#1682) (@marcauberer)
- d82e447: Add the asm builtin for inline assembly (#1683) (@marcauberer)
- 2262179: Keep the const qualifier of template types in signatures and mangling (#1684) (@marcauberer)
- 9116c30: Bump Spice Shaker version (@marcauberer)
What to do next?
- Install Spice
- Visit www.spicelang.com to test the new features
0.29.1 19. lokakuuta 2026 — 64-bittinen MSI
Muutosloki
Changelog
- 38fbc3a: Remove the C++ host compiler (#1581) (@marcauberer)
- a6bc7e8: Bump the stage0 compiler to 0.29.0 (#1582) (@marcauberer)
- a201c8e: Merge the coverage report scripts into coverage.py (#1583) (@marcauberer)
- 0545a37: Remove the host/bootstrap compiler distinction (#1584) (@marcauberer)
- eea2373: Add builtin unit tests for compile-progress.spice (#1585) (@marcauberer)
- 1bc937a: Fix the object file and static library output containers (#1587) (@marcauberer)
- 6708efd: Respect the output container requested by test cases (#1586) (@marcauberer)
- 13e2a81: Extend the naming convention lint test and exclude uncoverable lines (#1588) (@marcauberer)
- c0ff75e: Bump zensical from 0.0.67 to 0.0.68 in /docs (#1589) (@dependabot[bot])
- 99a1fff: chore: add missing copyright header to source files (#1590) (@marcauberer)
- 806bf75: chore: simplify keyword lookup in the lexer (#1591) (@marcauberer)
- d815118: chore: remove dead curChar assignments in the lexer (#1592) (@marcauberer)
- bf18fd4: chore: simplify the operator branches in the lexer (#1593) (@marcauberer)
- f5dd604: chore: simplify token checks and operator parsing in the parser (#1594) (@marcauberer)
- d54ea24: chore: extract shared parser helpers for repeated sequences (#1595) (@marcauberer)
- cfa5e35: fix: reject reserved keywords in name prefixes (#1596) (@marcauberer)
- 27adec7: chore: merge the function and procedure handling in the type checker (#1597) (@marcauberer)
- 6febb55: chore: extract the 'this' struct type lookup in the IR generator (#1598) (@marcauberer)
- 4cb1834: chore: merge the lambda visitors in the symbol table builder (#1599) (@marcauberer)
- d1a0ed7: chore: determine the import root dir once in the import collector (#1600) (@marcauberer)
- dab3f49: chore: share the tool invocation of the linker and the archiver (#1601) (@marcauberer)
- 51bb8b9: fix: create the implicit dtor for manifestations substantiated before the generic preset (#1602) (@marcauberer)
- 5d6b8ac: chore: Remove CodeQL badge from readme (#1603) (@marcauberer)
- f9e0c86: ci: merge the two ASAN jobs into a single job (#1604) (@marcauberer)
- 4de8d23: ci: share the LLVM and Linux toolchain setup via composite actions (#1605) (@marcauberer)
- 8714762: Bump zensical from 0.0.68 to 0.0.69 in /docs (#1606) (@dependabot[bot])
- 87e00ee: ci: use the composite actions in the coverage workflow (#1607) (@marcauberer)
- d08fe80: ci: use the composite actions in the release workflow (#1608) (@marcauberer)
- 8d5a17e: ci: add composite actions to set up the Windows and macOS toolchains (#1609) (@marcauberer)
- 967fab0: Upgrade TPDE submodule (#1610) (@marcauberer)
- eaf26a3: Cleanup byte* and unsafe sections (#1611) (@marcauberer)
- 33e85ca: Enable full RELRO when linking on Linux and in the release build (#1612) (@marcauberer)
- c46e65d: Link Linux executables as PIE, including the statically linked release compiler (#1613) (@marcauberer)
- b52bba5: Add tests for uncovered std and compiler paths (#1614) (@marcauberer)
- f03a34e: Fix infinite loop in printColumn for words longer than the width (#1615) (@marcauberer)
- 098daf8: Fix getCurrentSecs returning milliseconds (#1616) (@marcauberer)
- ba12215: Make the file seek mode constants public (#1617) (@marcauberer)
- 5699e7c: Register .spice files in the Windows installer and pin its upgrade code (#1618) (@marcauberer)
- 2248779: Skip redundant type checker post runs and cycle checks (#1619) (@marcauberer)
- de43ecf: Remove dead diagnostics and unused imports, exclude non-Linux branches from coverage (#1620) (@marcauberer)
- de830d6: Print storage sizes with two decimal places (#1621) (@marcauberer)
- 7382791: Support imports relative to the main source file via the '@/' prefix (#1622) (@marcauberer)
- 4e87eed: Give source files with the same name unique object file names (#1623) (@marcauberer)
- 01eb2b4: Attribute jumps to their own statement in the debug info (#1624) (@marcauberer)
- f301be3: Destruct the locals of a case branch on
0.29.0 10. lokakuuta 2026 — 64-bittinen MSI
Muutosloki
Changelog
- 057a338: Report collisions of exported symbols instead of duplicate globals (#1571) (@marcauberer)
- a0d27c0: Move the bootstrap compiler to src and the host compiler to src-host (#1572) (@marcauberer)
- 8b7ca46: Ship the self-hosted compiler as spice in releases (#1573) (@marcauberer)
- 3602908: Run the bootstrap compiler tests with a standalone Python runner (#1574) (@marcauberer)
- aa88d94: Keep NUL chars in the output of executed test programs (#1575) (@marcauberer)
- 03e51df: Build TPDE standalone into the std via setup-deps.py (#1576) (@marcauberer)
- 9cf7ef4: Install the libbacktrace license into the std via setup-deps.py (#1577) (@marcauberer)
- 3a2d6c0: Build the bootstrap compiler with a released stage0 compiler (#1578) (@marcauberer)
- 05ea749: Install the latest UPX release instead of the distribution's (#1579) (@marcauberer)
- 08e893f: Select the UPX archive explicitly and clean up on failure (#1580) (@marcauberer)
What to do next?
- Install Spice
- Visit www.spicelang.com to test the new features
0.28.2 10. lokakuuta 2026 — 64-bittinen MSI
Muutosloki
Changelog
- 1faf23f: Lower return values to the target's calling convention like Clang (#1516) (@marcauberer)
- ba0f066: Support the TPDE backend in the bootstrap script (#1517) (@marcauberer)
- 73db861: Upgrade to LLVM 23.1.3 (#1518) (@marcauberer)
- d11093f: Rename ci-cpp.yml workflow to ci.yml (#1519) (@marcauberer)
- 898537a: Fix unused return value false positives (#1520) (@marcauberer)
- 2340af3: Resolve deferred alias types in the declaring file's context (#1521) (@marcauberer)
- ca0d03d: Stop reporting unused 'this' and drop dead bootstrap code (#1522) (@marcauberer)
- 6582f2b: Measure bootstrap compiler coverage instead of host compiler coverage (#1523) (@marcauberer)
- 5c7e216: Let typeid hash tests follow the bootstrap compiler (#1524) (@marcauberer)
- a362cb8: Tell the host and the self-hosted compiler apart in --version and the producer string (#1525) (@marcauberer)
- 203d0af: Improve bootstrap coverage (#1526) (@marcauberer)
- e15ffa9: Run the bootstrap fixed point check in CI on every supported platform (#1527) (@marcauberer)
- 41652ff: Check every expected error and warning in the bootstrap test run (#1528) (@marcauberer)
- 1986bd5: Cache unsuccessful function and operator overload lookups (#1529) (@marcauberer)
- e7ebd37: Parse with SLL prediction first and fall back to LL on failure (#1530) (@marcauberer)
- c87b562: Print the wall times of frontend, middle end and backend with -d (#1532) (@marcauberer)
- 81879fa: Compile additional sources in the background while the back end runs (#1531) (@marcauberer)
- 7f27313: Std: make spawning processes with captured output thread-safe on Windows (#1533) (@marcauberer)
- 384d344: Std: compare Vector and Stack elements with operator== instead of memcmp (#1534) (@marcauberer)
- b508f9b: Run the bootstrap compiler tests in parallel (#1535) (@marcauberer)
- b22ea7f: Std: ignore the stale payload when comparing two empty Optionals (#1536) (@marcauberer)
- 190a2ad: Std: make Stack own its elements (#1537) (@marcauberer)
- ed72ea9: Lift the bootstrap test runner to parity with the host test runner (#1538) (@marcauberer)
- 9019f32: Iterate the source files in creation order wherever the order matters (#1539) (@marcauberer)
- 01d903b: Close the assembly gap between the bootstrap and the host test runs (#1540) (@marcauberer)
- 131b772: Order the bootstrap symbol tables like the host and fix two red-black tree bugs (#1541) (@marcauberer)
- a17d091: Resolve symlinks in the host's canonical/relative paths on Windows (#1543) (@marcauberer)
- 0cba7d6: Run the import symlink traversal test on Windows (#1544) (@marcauberer)
- f0c4bc2: Run the debug info tests against the bootstrap compiler (#1545) (@marcauberer)
- 71a79ad: Run the linter tests against the bootstrap compiler in CI and coverage (#1546) (@marcauberer)
- caa8e3f: Run generics_successGenericTypeCtorCall1 against the bootstrap compiler on Windows (#1547) (@marcauberer)
- 815e27e: Use the generic target CPU unless --native-features is passed (#1549) (@marcauberer)
- 61655e5: Show the compile progress in the bootstrap compiler (#1550) (@marcauberer)
- ddfaf09: Run the remaining instrumentation IR tests against the bootstrap compiler on Windows (#1551) (@marcauberer)
- 81f4216: Destruct for/foreach header variables once when the loop is left (#1552) (@marcauberer)
- 55e88f3: Run all test cases against the bootstrap compiler in CI (#1553) (@marcauberer)
- 62be96b: Let the ANTLR error message tests follow the bootstrap compiler (#1554) (@marcauberer)
- 7079b85: Add default methods for interfaces (#1555) (@marcauberer)
- 0dcf31c: Support interface default methods in the bootstrap compiler (#1557) (@marcauberer)
- a9d2a09: Remove stale commented-out TBAA access tag code (#1556) (@marcauberer)
- 358a073: Provide default visit methods in the bootstrap visitor interface (#1558) (@marcauberer)
- 40c4da3: Run the test cases against an ASAN-instrumented bootstrap compiler (#1559) (@marcauberer)
- b29218f: Fix the memory leaks of the boots
0.28.1 6. lokakuuta 2026 — 64-bittinen MSI
Muutosloki
Changelog
- 5e49960: Fix crash on a struct literal field from a reference-typed parameter (#1420) (@marcauberer)
- cc00645: Fix struct default members going undefined depending on declaration order (#1421) (@marcauberer)
- 6dafed9: Port ImportCollector and SymbolTableBuilder to the bootstrap compiler (#1423) (@marcauberer)
- 8573f84: Make ternary of two lvalues yield a reference (#1424) (@marcauberer)
- b746217: Add Vector.popBack() (#1425) (@marcauberer)
- 62eecb5: Replace bootstrap cycle interfaces with concrete types (#1426) (@marcauberer)
- 29aacc8: Sync the bootstrap driver with the host driver (#1427) (@marcauberer)
- 4ac5525: Bump zensical from 0.0.62 to 0.0.64 in /docs (#1429) (@dependabot[bot])
- 272291b: Port TypeMatcher and the typechecker managers to the bootstrap compiler (#1428) (@marcauberer)
- b58be92: Bring the bootstrap parser to AST parity with the host ASTBuilder (#1430) (@marcauberer)
- 272654d: Port the type checker prepare stage and the OpRuleManager to the bootstrap compiler (#1431) (@marcauberer)
- 9d04032: Bump github/codeql-action from 4.38.1 to 4.38.2 in /.github/workflows (#1438) (@dependabot[bot])
- e0bdafb: Fix coverage report generation failing on gcov suspicious-hits bug (#1439) (@marcauberer)
- 8b9e519: Port the type checker expressions, statements and control structures to the bootstrap compiler (#1440) (@marcauberer)
- 1a87c44: Port the type checker value visitors to the bootstrap compiler (#1443) (@marcauberer)
- 5a7189c: Fix syscall builtin argument limit, result value and count error message (#1444) (@marcauberer)
- c25667b: Do not cut error snippet context in the middle of a token (#1445) (@marcauberer)
- cc7d11c: Report division by zero for compile-time remainder expressions (#1446) (@marcauberer)
- 72d3ccc: Fix leak of key and value in RedBlackTree.remove (#1448) (@marcauberer)
- fbdba64: Destruct bootstrap AST nodes as their concrete node types (#1449) (@marcauberer)
- 6adef92: Enforce branch naming convention for Claude Code sessions (#1450) (@marcauberer)
- e63330e: Destruct old value when moving a temporary into an initialized struct (#1451) (@marcauberer)
- 221678d: Port the type checker check stage to the bootstrap compiler (#1452) (@marcauberer)
- 91fdd7c: Add bootstrap test mode to run the reference suites against the bootstrap compiler (#1453) (@marcauberer)
- 7d6fc3f: Fix crash on struct field init from reference with overloaded operator= (#1447) (@marcauberer)
- 1f1866e: Port the type checker builtin functions to the bootstrap compiler (#1454) (@marcauberer)
- cbbee96: Extend widening integer conversions by the source signedness (#1457) (@marcauberer)
- dec6be6: Wire the type checker into the bootstrap compiler pipeline (#1461) (@marcauberer)
- de68ef6: Fix switch without default branch being treated as always returning (#1462) (@marcauberer)
- 3457cac: Fix runtime bool == / != comparisons always comparing equal (#1463) (@marcauberer)
- 10a118d: Deep-copy struct values assigned to fields from reference-returning calls (#1464) (@marcauberer)
- 94dc7b8: Copy non-local struct values returned by value instead of shallow-copying them (#1466) (@marcauberer)
- 6265d19: Finish the bootstrap compiler middle end (#1465) (@marcauberer)
- 1a5f704: Simplify Spice coding (#1467) (@marcauberer)
- 70fb813: Run the bootstrap compiler test mode in CI (#1468) (@marcauberer)
- d4963b7: Match the code generation opt level to the selected opt level (#1469) (@marcauberer)
- 1b46f0a: Only mark 'this' params as nonnull and dereferenceable (#1470) (@marcauberer)
- 03c1f3b: Port host compiler backend to bootstrap (#1471) (@marcauberer)
- 91e090d: Fix constant fall-through for function-typed struct field defaults (#1472) (@marcauberer)
- 9aee56d: Document keeping host and bootstrap compilers in sync (#1474) (@marcauberer)
- a8b7484: Report ambiguous names from colliding imports (#1473) (@marcauberer)
- cdb4d10: Fix bootstrap compiler gaps in the lexer to type checker test suites (#1475) (@marcauberer)
0.28.0 23. syyskuuta 2026 — 64-bittinen MSI
Muutosloki
Changelog
- b554006: Bump github/codeql-action from 4.37.7 to 4.37.8 in /.github/workflows (#1331) (@dependabot[bot])
- 58b5007: Add a YAML parser and serializer to the standard library (#1332) (@marcauberer)
- aa15e47: Remove caching from the release workflow (#1333) (@marcauberer)
- 69c6d4d: Add cryptographic hash functions to the standard library (#1334) (@marcauberer)
- 5c618ba: Implement the offset allocator in std/os/allocator.spice (#1335) (@marcauberer)
- f7d71cd: Add gcov-compatible code coverage instrumentation (#1336) (@marcauberer)
- c10bb5b: Add spice lint command with naming-convention rule (#1337) (@marcauberer)
- 46e25ba: Add too-many-parameters and cyclomatic-complexity lint rules (#1338) (@marcauberer)
- 28c6f74: Emit template info for generic structs in debug info (#1339) (@marcauberer)
- 5a225cc: Add GDB pretty printers for the standard library data structures (#1340) (@marcauberer)
- 058f771: Introduce is helper (#1341) (@marcauberer)
- 8f312e7: Add GDB pretty printers for Error and Result (#1343) (@marcauberer)
- 5669032: Fix wrong member offset in case of synthesized vtable pointer (#1344) (@marcauberer)
- 2bee1c9: Make GDB test runner ignore local/system gdbinit files (#1345) (@marcauberer)
- cb37f3e: Upgrade to LLVM 23.1.0 (#1342) (@marcauberer)
- 1a91e34: Add __source_file, __source_line and __source_column builtins (#1346) (@marcauberer)
- a4db3d1: Add Result.unwrapOr and Result.unwrapOrElse (#1348) (@marcauberer)
- 588901f: Design proposal: explicit, mandatory error handling (#1347) (@marcauberer)
- 45aff58: Add postfix ! error propagation operator (#1349) (@marcauberer)
- 1cf1e8d: Add explicit error handling gate for discarded Result values (#1350) (@marcauberer)
- 7bde047: Bump actions/setup-java from 5 to 6 in /.github/workflows (#1351) (@dependabot[bot])
- fd74b23: Add __stderr() compiler builtin (#1352) (@marcauberer)
- 11e6de1: Add thread-safe MessageQueue to std/os (#1353) (@marcauberer)
- 2630c89: Improve error runtime (#1354) (@marcauberer)
- 3343203: Use postfix ! for pure error-propagation call sites in std (#1355) (@marcauberer)
- 5f52cd8: Bump zensical from 0.0.56 to 0.0.57 in /docs (#1356) (@dependabot[bot])
- d4ccc0c: Fix crashes from generic structs/interfaces with wrong template arg count (#1357) (@marcauberer)
- c17d0b0: Bump github/codeql-action from 4.37.8 to 4.37.9 in /.github/workflows (#1358) (@dependabot[bot])
- ca3396e: Simplify std coding (#1359) (@marcauberer)
- e552f6d: Introduce fixpoint decision on implicit struct members (#1360) (@marcauberer)
- f111128: Add SQLite bindings to the standard library (#1361) (@marcauberer)
- 27b1d21: Fill in missing LLVM attributes on extern-C declarations (#1362) (@marcauberer)
- d9c9cce: Introduce unwrapAndMove on Result type (#1363) (@marcauberer)
- a46c6ed: Add CodeRabbit configuration for automated PR review (#1364) (@marcauberer)
- 4026a98: Split coverage build into a dedicated workflow (#1365) (@marcauberer)
- 18609d1: Fix coverage FTP upload failing after workflow split (#1366) (@marcauberer)
- 41fb539: Generate a Spice std lib coverage report in the coverage workflow (#1367) (@marcauberer)
- b3be9e3: Add opt-in error return trace instrumentation (#1368) (@marcauberer)
- 6d326bf: Suppress unused warnings for public symbols in library builds (#1369) (@marcauberer)
- ef18cb6: Optimize assertions if the condition is known at compile time (#1370) (@marcauberer)
- dd5c5aa: Do not assume assert statement as block terminator (#1371) (@marcauberer)
- 92b49b7: Bump zensical from 0.0.57 to 0.0.58 in /docs (#1373) (@dependabot[bot])
- 41c426d: Drop macOS/x86_64 CI and release builds (#1374) (@marcauberer)
- db806a3: Remove macOS/x86_64 test reference files (#1375) (@marcauberer)
- fafbbda: Drop unused Java setup and bump Go/GoReleaser versions (#1376) (@marcauberer)
- fc621fb: Omit generation of result var if unused (#1372) (@marcauberer)
- 43e5dfb: Add support for unions (#1377) (@marcauberer)
- 0a49ee7: Upgrade LLVM to 23.1.1 (#1378) (@mar
0.27.2 24. elokuuta 2026 — 64-bittinen MSI
Muutosloki
Changelog
- 6d8a94f: Fix triviality functions (#1295) (@marcauberer)
- c242a15: Encode the heap qualifier in name mangling (#1296) (@marcauberer)
- ead98cb: Use internal instead of private linkage for non-public functions (#1298) (@marcauberer)
- 6dfb0ff: Warn when a non-trivially copyable parameter is passed by value (#1299) (@marcauberer)
- f20efdc: Run scope cleanup for enclosing scopes on break/continue (#1300) (@marcauberer)
- e9876d4: Deep-copy non-trivial struct-instantiation field values (#1301) (@marcauberer)
- fcb753f: Run scope cleanup for all exited scopes on return, not just one (#1302) (@marcauberer)
- 83450cf: Replace functionBodyScopes stack with Scope::getFunctionScope() (#1303) (@marcauberer)
- 99747fa: Fix leaked/skipped dtor for ternary temporary vs. reference operand (#1305) (@marcauberer)
- b138640: Bump github/codeql-action from 4.37.6 to 4.37.7 in /.github/workflows (#1306) (@dependabot[bot])
- ab6f91f: Fix duplicate LLVM libs (#1307) (@marcauberer)
- 1606080: Always add line break for all assertions passed message (#1308) (@marcauberer)
- e2e8ff7: Work-around memory leak in HashEntry (#1309) (@marcauberer)
- f847e62: ci: run Valgrind workflow weekly and add README badge (#1311) (@marcauberer)
- 42b662d: Introduce __is_heap builtin (#1312) (@marcauberer)
- ca9cba3: Decide implicit default members per struct manifestation (#1310) (@marcauberer)
- 8df2b47: chore: rename TypeCheckMeta.cpp to TypeCheckerMeta.cpp (#1313) (@marcauberer)
- 9cdca3c: Split Builtins.h to decouple lightweight consumers from LLVM headers (#1314) (@marcauberer)
- a8c3752: refactor: deduplicate TypeMapping alias into QualType.h (#1315) (@marcauberer)
- 79809af: Add TOML support to the standard library (#1280) (@marcauberer)
- c091492: Speed up std container iteration and String operations (#1316) (@marcauberer)
- 8e950ca: Rebuild HashTable on open addressing over a slot array (#1317) (@marcauberer)
- a13a979: Bump zensical from 0.0.53 to 0.0.56 in /docs (#1318) (@dependabot[bot])
- ac1cfe4: Simplify JSON, TOML and XML parser/serializer internals (#1319) (@marcauberer)
- 42fd5bb: Rewrite the HTTP client and server in std (#1320) (@marcauberer)
- 87fac41: Add HTTP server/client tutorial (#1321) (@marcauberer)
- 620aeac: Reorganize CSV/JSON/TOML/XML std modules into per-format subdirectories (#1323) (@marcauberer)
- beaaa1e: Only run coverage post-submit, use parallel tests pre-submit on Linux/x86_64 (#1324) (@marcauberer)
- cba4419: Fix compiler crash on a ternary copy-constructing from a const operand (#1322) (@marcauberer)
- 2728cbe: Use designated initializers for builtins (#1325) (@marcauberer)
- e092d7f: Add regex support to the standard library (#1326) (@marcauberer)
- 08b15f7: Add filter/map/reduce and related algorithms to the standard library (#1328) (@marcauberer)
- 87671ae: Fix compiler crash on a generic interface method called via an interface reference (#1329) (@marcauberer)
- 7d2bbbd: Fix crash calling a non-explicitly-templated interface method via an interface reference (#1330) (@marcauberer)
What to do next?
- Install Spice
- Visit www.spicelang.com to test the new features
0.27.1 15. elokuuta 2026 — 64-bittinen MSI
Muutosloki
Changelog
- 4908790: Bump zensical from 0.0.45 to 0.0.46 in /docs (#1236) (@dependabot[bot])
- 6793545: Support circular imports natively (#1237) (@marcauberer)
- 555e7a7: Add workflow to auto-assign milestone to new PRs (#1238) (@marcauberer)
- b9e927e: Circular imports: detect infinite-size struct cycles and support type aliases (#1239) (@marcauberer)
- 282ab5a: Bootstrap: support circular imports natively (#1240) (@marcauberer)
- c2f1abe: Add test for generic substantiation in circular import scenarios (#1241) (@marcauberer)
- 5d57837: Remove forward declarations (#1242) (@marcauberer)
- b302a7c: Bootstrap: wire up accept() dispatch and AST visitor/visualizer (#1243) (@marcauberer)
- 8ee4681: Fix double-free when assigning a non-trivial struct through a reference (#1244) (@marcauberer)
- 475df68: Bump actions/github-script from 7 to 9 in /.github/workflows (#1245) (@dependabot[bot])
- 4d0b5f7: Fix member access through composed fields in chained method calls (#1246) (@marcauberer)
- 056a5a2: Add -b/--build-type argument to build.py (#1247) (@marcauberer)
- 4026493: Fix #dbg_declare ordering: emit before initializer stores (#1248) (@marcauberer)
- 0af086d: Fix debug location: skip setSourceLocation on passthrough nodes (#1249) (@marcauberer)
- e81df79: Add experimental opt-in TPDE compiler backend (#1250) (@marcauberer)
- e45e01a: Enable TPDE backend in CI and build.py (#1251) (@marcauberer)
- 4002c2c: Lazily allocate std container buffers in the empty state (#1252) (@marcauberer)
- b390c71: Harden Linux release binaries: full RELRO, FORTIFY_SOURCE, PIE (#1258) (@marcauberer)
- 58f11e0: Bump zensical from 0.0.46 to 0.0.50 in /docs (#1259) (@dependabot[bot])
- 263f139: Disambiguate same-named structs across modules (#1257) (@marcauberer)
- edf727e: Bump actions/setup-go from 6 to 7 in /.github/workflows (#1261) (@dependabot[bot])
- 31f42f2: Fix CI builds (#1262) (@marcauberer)
- df21ac0: Bump zensical from 0.0.50 to 0.0.51 in /docs (#1263) (@dependabot[bot])
- cdd9176: Bump actions/setup-python from 6 to 7 in /.github/workflows (#1264) (@dependabot[bot])
- dc67d63: Bump actions/labeler from 6 to 7 in /.github/workflows (#1265) (@dependabot[bot])
- c51938e: Pass fixed-size array parameters as pointers (#1266) (@marcauberer)
- bb4204e: Upgrade to LLVM 23.1.0-rc1 (#1267) (@marcauberer)
- 11c40bc: Upgrade to LLVM 23.1.0-rc2 (#1268) (@marcauberer)
- c1123e2: Upgrade CLI11 submodule to v2.7.0 (#1271) (@marcauberer)
- b10e38a: Upgrade CLI11 submodule to v2.7.1 (#1272) (@marcauberer)
- c1d0dcb: Bump github/codeql-action from 4 to 4.37.3 in /.github/workflows (#1269) (@dependabot[bot])
- 8690770: Bump docker/login-action from 4 to 4.5.2 in /.github/workflows (#1270) (@dependabot[bot])
- 2e3eddb: Add optsize/minsize function attributes when -Os/-Oz is requested (#1273) (@marcauberer)
- bd6c5c2: chore: upgrade CLI11 submodule to v2.7.2 (#1274) (@marcauberer)
- 95da338: Bump docker/login-action from 4.5.2 to 4.6.0 in /.github/workflows (#1276) (@dependabot[bot])
- 0efa9cf: Bump github/codeql-action from 4.37.3 to 4.37.4 in /.github/workflows (#1275) (@dependabot[bot])
- 514f7bb: Add cast support from bool to byte, short, int and long (#1277) (@marcauberer)
- d9486a3: Fix LLVMBool alias in LLVM bindings (#1278) (@marcauberer)
- 33f5578: Release JSON and XML value trees instead of leaking them (#1279) (@marcauberer)
- 313f2e0: Bump github/codeql-action from 4.37.4 to 4.37.5 in /.github/workflows (#1281) (@dependabot[bot])
- 6743e4d: Bump github/codeql-action from 4.37.5 to 4.37.6 in /.github/workflows (#1282) (@dependabot[bot])
- ae5b93f: Bump zensical from 0.0.51 to 0.0.53 in /docs (#1283) (@dependabot[bot])
- b769ddf: Bump googletest from v1.17.0 to v1.18.0 (#1285) (@marcauberer)
- 81ef3c5: Upgrade to LLVM 23.1.0-rc3 (#1286) (@marcauberer)
- 8a0247e: Parallelize the back end over a thread pool (#1284) (@marcauberer)
- 91935fc: Work around gcovr crash on multithreaded gcov counters (#1287) (@marcauberer)
- 0e78938: Fix partial dtor manife
0.27.0 26. kesäkuuta 2026 — 64-bittinen MSI
Muutosloki
Changelog
- 6801143: Sync bootstrap with host compiler (#1168) (@marcauberer)
- 51e6969: Add smoke tests for Interface and Struct bootstrap model types (#1169) (@marcauberer)
- 304d832: Add type-erased Any type to the standard library (#1170) (@marcauberer)
- 09ab100: Replace reinterpret_cast with llvm::cast where possible (#1171) (@marcauberer)
- 563715c: Introduce offsetof builtin (#1172) (@marcauberer)
- 54f2858: Bump zensical from 0.0.43 to 0.0.44 in /docs (#1174) (@dependabot[bot])
- b39da71: Add spice-contribute skill for GitHub contribution workflow (#1175) (@marcauberer)
- 5f67c7a: Owning Lambda ̶w̶r̶a̶p̶p̶e̶r̶ ̶+̶ ̶u̶n̶i̶f̶i̶e̶d̶ ̶l̶a̶m̶b̶d̶a̶ ̶c̶a̶l̶l̶i̶n̶g̶ ̶c̶o̶n̶v̶e̶n̶t̶i̶o̶n̶ ̶(̶#̶1̶1̶7̶3̶)̶ ̶(̶#̶1̶1̶7̶6̶)̶ ̶(̶@̶m̶a̶r̶c̶a̶u̶b̶e̶r̶e̶r̶)̶
- 3̶c̶c̶c̶c̶d̶1̶:̶ ̶U̶p̶g̶r̶a̶d̶e̶ ̶t̶o̶ ̶C̶L̶I̶1̶1̶ ̶2̶.̶6̶.̶2̶ ̶(̶#̶1̶1̶7̶7̶)̶ ̶(̶@̶m̶a̶r̶c̶a̶u̶b̶e̶r̶e̶r̶)̶
8̶c̶9̶9̶0̶9̶6̶:̶ ̶A̶d̶d̶ ̶d̶e̶p̶e̶n̶d̶e̶n̶c̶i̶e̶s̶ ̶l̶a̶b̶e̶l̶ ̶a̶u̶t̶o̶m̶a̶t̶i̶c̶a̶l̶l̶y̶ ̶(̶#̶1̶1̶7̶8̶)̶ ̶(̶@̶m̶a̶r̶c̶a̶u̶b̶e̶r̶e̶r̶)̶
c̶c̶8̶e̶1̶3̶5̶:̶ ̶U̶s̶e̶ ̶h̶e̶l̶p̶e̶r̶ ̶t̶o̶ ̶c̶h̶e̶c̶k̶ ̶i̶f̶ ̶c̶o̶p̶y̶ ̶c̶t̶o̶r̶ ̶e̶x̶i̶s̶t̶s̶ ̶(̶#̶1̶1̶7̶9̶)̶ ̶(̶@̶m̶a̶r̶c̶a̶u̶b̶e̶r̶e̶r̶)̶
0̶a̶4̶2̶c̶0̶e̶:̶ ̶A̶d̶d̶ ̶C̶/̶C̶+̶+̶ ̶i̶n̶t̶e̶r̶o̶p̶e̶r̶a̶b̶i̶l̶i̶t̶y̶ ̶t̶u̶t̶o̶r̶i̶a̶l̶ ̶t̶o̶ ̶d̶o̶c̶u̶m̶e̶n̶t̶a̶t̶i̶o̶n̶ ̶(̶#̶1̶1̶8̶1̶)̶ ̶(̶@̶m̶a̶r̶c̶a̶u̶b̶e̶r̶e̶r̶)̶
d̶5̶e̶a̶5̶9̶e̶:̶ ̶A̶d̶d̶ ̶b̶o̶o̶t̶s̶t̶r̶a̶p̶ ̶A̶s̶t̶V̶i̶s̶i̶t̶o̶r̶ ̶c̶o̶n̶c̶r̶e̶t̶e̶ ̶i̶m̶p̶l̶e̶m̶e̶n̶t̶a̶t̶i̶o̶n̶ ̶a̶n̶d̶ ̶s̶m̶o̶k̶e̶ ̶t̶e̶s̶t̶ ̶(̶#̶1̶1̶8̶2̶)̶ ̶(̶@̶m̶a̶r̶c̶a̶u̶b̶e̶r̶e̶r̶)̶
f̶3̶8̶b̶e̶9̶6̶:̶ ̶A̶d̶d̶ ̶s̶t̶d̶ ̶l̶i̶b̶r̶a̶r̶y̶ ̶r̶e̶f̶e̶r̶e̶n̶c̶e̶ ̶d̶o̶c̶ ̶g̶e̶n̶e̶r̶a̶t̶o̶r̶ ̶(̶#̶1̶1̶8̶3̶)̶ ̶(̶@̶m̶a̶r̶c̶a̶u̶b̶e̶r̶e̶r̶)̶
a̶8̶2̶0̶8̶6̶3̶:̶ ̶A̶d̶d̶ ̶m̶i̶s̶s̶i̶n̶g̶ ̶d̶o̶c̶ ̶c̶o̶m̶m̶e̶n̶t̶s̶ ̶a̶n̶d̶ ̶t̶i̶m̶e̶ ̶c̶o̶m̶p̶l̶e̶x̶i̶t̶y̶ ̶t̶o̶ ̶s̶t̶d̶ ̶c̶o̶n̶t̶a̶i̶n̶e̶r̶s̶ ̶(̶#̶1̶1̶8̶4̶)̶ ̶(̶@̶m̶a̶r̶c̶a̶u̶b̶e̶r̶e̶r̶)̶
4̶4̶b̶a̶5̶6̶8̶:̶ ̶D̶o̶c̶u̶m̶e̶n̶t̶ ̶p̶u̶b̶l̶i̶c̶ ̶A̶P̶I̶ ̶a̶c̶r̶o̶s̶s̶ ̶t̶h̶e̶ ̶c̶o̶r̶e̶ ̶s̶t̶a̶n̶d̶a̶r̶d̶ ̶l̶i̶b̶r̶a̶r̶y̶ ̶(̶#̶1̶1̶8̶5̶)̶ ̶(̶@̶m̶a̶r̶c̶a̶u̶b̶e̶r̶e̶r̶)̶
5̶5̶b̶5̶0̶e̶9̶:̶ ̶A̶d̶d̶ ̶i̶n̶t̶e̶r̶f̶a̶c̶e̶s̶ ̶d̶o̶c̶u̶m̶e̶n̶t̶a̶t̶i̶o̶n̶ ̶p̶a̶g̶e̶ ̶(̶#̶1̶1̶8̶6̶)̶ ̶(̶@̶m̶a̶r̶c̶a̶u̶b̶e̶r̶e̶r̶)̶
3̶6̶c̶0̶b̶5̶a̶:̶ ̶F̶i̶x̶ ̶f̶a̶c̶t̶u̶a̶l̶ ̶e̶r̶r̶o̶r̶s̶ ̶i̶n̶ ̶e̶n̶u̶m̶s̶,̶ ̶a̶t̶t̶r̶i̶b̶u̶t̶e̶s̶ ̶a̶n̶d̶ ̶d̶e̶c̶l̶a̶r̶a̶t̶i̶o̶n̶-̶q̶u̶a̶l̶i̶f̶i̶e̶r̶s̶ ̶d̶o̶c̶s̶ ̶(̶#̶1̶1̶8̶7̶)̶ ̶(̶@̶m̶a̶r̶c̶a̶u̶b̶e̶r̶e̶r̶)̶
4̶0̶2̶5̶8̶4̶e̶:̶ ̶F̶i̶x̶ ̶m̶i̶n̶o̶r̶ ̶i̶s̶s̶u̶e̶s̶ ̶i̶n̶ ̶t̶h̶r̶e̶a̶d̶s̶ ̶a̶n̶d̶ ̶o̶p̶e̶r̶a̶t̶o̶r̶-̶o̶v̶e̶r̶l̶o̶a̶d̶i̶n̶g̶ ̶d̶o̶c̶s̶ ̶(̶#̶1̶1̶8̶8̶)̶ ̶(̶@̶m̶a̶r̶c̶a̶u̶b̶e̶r̶e̶r̶)̶
1̶d̶6̶1̶a̶9̶5̶:̶ ̶E̶x̶p̶a̶n̶d̶ ̶s̶e̶v̶e̶n̶ ̶t̶h̶i̶n̶ ̶d̶o̶c̶u̶m̶e̶n̶t̶a̶t̶i̶o̶n̶ ̶p̶a̶g̶e̶s̶ ̶(̶#̶1̶1̶8̶9̶)̶ ̶(̶@̶m̶a̶r̶c̶a̶u̶b̶e̶r̶e̶r̶)̶
f̶e̶6̶6̶1̶b̶8̶:̶ ̶M̶i̶g̶r̶a̶t̶e̶ ̶C̶L̶I̶ ̶p̶a̶r̶s̶e̶r̶ ̶t̶o̶ ̶L̶a̶m̶b̶d̶a̶ ̶f̶i̶e̶l̶d̶s̶ ̶a̶n̶d̶ ̶s̶y̶n̶t̶h̶e̶s̶i̶z̶e̶ ̶t̶h̶e̶i̶r̶ ̶c̶o̶p̶y̶ ̶c̶t̶o̶r̶ ̶(̶#̶1̶1̶8̶0̶)̶ ̶(̶@̶m̶a̶r̶c̶a̶u̶b̶e̶r̶e̶r̶)̶
d̶2̶8̶3̶d̶2̶9̶:̶ ̶R̶e̶p̶l̶a̶c̶e̶ ̶d̶e̶p̶r̶e̶c̶a̶t̶e̶d̶ ̶c̶c̶a̶c̶h̶e̶-̶a̶c̶t̶i̶o̶n̶ ̶w̶i̶t̶h̶ ̶m̶a̶n̶u̶a̶l̶ ̶i̶n̶s̶t̶a̶l̶l̶ ̶a̶n̶d̶ ̶c̶a̶c̶h̶e̶ ̶(̶#̶1̶1̶9̶0̶)̶ ̶(̶@̶m̶a̶r̶c̶a̶u̶b̶e̶r̶e̶r̶)̶
3̶4̶d̶0̶a̶8̶e̶:̶ ̶S̶k̶i̶p̶ ̶L̶L̶V̶M̶ ̶c̶l̶o̶n̶e̶ ̶o̶n̶ ̶c̶a̶c̶h̶e̶ ̶h̶i̶t̶ ̶a̶n̶d̶ ̶a̶l̶w̶a̶y̶s̶ ̶s̶a̶v̶e̶ ̶c̶c̶a̶c̶h̶e̶ ̶(̶#̶1̶1̶9̶1̶)̶ ̶(̶@̶m̶a̶r̶c̶a̶u̶b̶e̶r̶e̶r̶)̶
e̶e̶7̶8̶4̶5̶c̶:̶ ̶B̶u̶m̶p̶ ̶a̶l̶p̶i̶n̶e̶ ̶f̶r̶o̶m̶ ̶3̶.̶2̶3̶.̶4̶ ̶t̶o̶ ̶3̶.̶2̶4̶.̶0̶ ̶(̶#̶1̶1̶9̶2̶)̶ ̶(̶@̶d̶e̶p̶e̶n̶d̶a̶b̶o̶t̶[̶b̶o̶t̶]̶)̶
f̶f̶4̶7̶c̶8̶7̶:̶ ̶F̶i̶x̶ ̶C̶I̶:̶ ̶a̶l̶w̶a̶y̶s̶ ̶c̶l̶o̶n̶e̶ ̶L̶L̶V̶M̶ ̶b̶e̶f̶o̶r̶e̶ ̶c̶h̶e̶c̶k̶i̶n̶g̶ ̶c̶a̶c̶h̶e̶ ̶(̶#̶1̶1̶9̶3̶)̶ ̶(̶@̶m̶a̶r̶c̶a̶u̶b̶e̶r̶e̶r̶)̶
4̶e̶5̶2̶2̶3̶a̶:̶ ̶A̶d̶d̶ ̶t̶y̶p̶e̶n̶a̶m̶e̶ ̶b̶u̶i̶l̶t̶i̶n̶ ̶r̶e̶t̶u̶r̶n̶i̶n̶g̶ ̶t̶h̶e̶ ̶t̶y̶p̶e̶ ̶n̶a̶m̶e̶ ̶a̶s̶ ̶s̶t̶r̶i̶n̶g̶ ̶(̶#̶1̶1̶9̶4̶)̶ ̶(̶@̶m̶a̶r̶c̶a̶u̶b̶e̶r̶e̶r̶)̶
b̶b̶a̶b̶8̶6̶3̶:̶ ̶A̶d̶d̶ ̶c̶o̶m̶p̶r̶e̶h̶e̶n̶s̶i̶v̶e̶ ̶C̶o̶d̶i̶n̶g̶ ̶S̶t̶y̶l̶e̶ ̶G̶u̶i̶d̶e̶ ̶f̶o̶r̶ ̶c̶o̶n̶t̶r̶i̶b̶u̶t̶o̶r̶s̶ ̶a̶n̶d̶ ̶A̶I̶ ̶a̶g̶e̶n̶t̶s̶ ̶(̶#̶1̶1̶9̶5̶)̶ ̶(̶@̶m̶a̶r̶c̶a̶u̶b̶e̶r̶e̶r̶)̶
7̶f̶4̶9̶3̶7̶f̶:̶ ̶M̶o̶v̶e̶ ̶C̶o̶d̶i̶n̶g̶ ̶S̶t̶y̶l̶e̶ ̶G̶u̶i̶d̶e̶ ̶u̶n̶d̶e̶r̶ ̶C̶o̶n̶t̶r̶i̶b̶u̶t̶i̶n̶g̶ ̶i̶n̶
0.26.0 4. kesäkuuta 2026 — 64-bittinen MSI
Muutosloki
Changelog
- d5cfebb: Add support for positional cli args in cli parser std (#1121) (@marcauberer)
- cc7b91f: Add CSV parser to std/text (#1122) (@marcauberer)
- e6cce27: Add JSON parser to std/text (#1123) (@marcauberer)
- c60f7fc: Add XML parser to std/text (#1124) (@marcauberer)
- 6aec6ab: Add move constructor support (#1125) (@marcauberer)
- 9141f57: Fix unary minus parsing (#1126) (@marcauberer)
- 25f20fb: Sync bootstrap compiler and add smoke tests (#1127) (@marcauberer)
- 9eb7023: Fix duplicate signature name (#1128) (@marcauberer)
- d8280ab: Sync AST parts of bootstrap compiler and add smoke tests (#1129) (@marcauberer)
- c79b4b8: Fix heap overflow in std/data/queue via circular buffer (#1130) (@marcauberer)
- d0abed1: Overhaul std/data tests: add smoke + stress per container, fix uncovered bugs (#1131) (@marcauberer)
- 60471d9: Add std/data/bitset container with smoke + stress tests (#1132) (@marcauberer)
- 70ff77b: Add operator overloading for &, |, ^ and ~ (#1133) (@marcauberer)
- 1b0e3a7: Complete bootstrap parser implementation (#1134) (@marcauberer)
- cf25342: Complete and test the self-hosted bootstrap parser (#1135) (@marcauberer)
- 2d97da1: Destruct the lhs before a copy-assignment overwrites it (#1136) (@marcauberer)
- 64540b0: Add Claude Code skills for common Spice dev tasks (#1138) (@marcauberer)
- be3138d: Add Claude Code skills for common Spice dev tasks (#1139) (@marcauberer)
- 2165234: Add spice-debugging skill for bug investigation and fixing (#1140) (@marcauberer)
- 89abf08: Add missing elementary functions to std/math/fct (#1141) (@marcauberer)
- 4277309: Add UTC Date/Time support to std/time (#1142) (@marcauberer)
- 3bb5e3e: Sync bootstrap ExternalLinkerInterface with host compiler (#1143) (@marcauberer)
- 1d05df6: Port model classes to the bootstrap compiler (#1144) (@marcauberer)
- 3615c5f: Add ExprResult to bootstrap compiler (#1145) (@marcauberer)
- 1c9d8d5: Port and test the bootstrap ErrorManager (#1146) (@marcauberer)
- e4bf39d: Complete SemanticError.getMessagePrefix mapping (@marcauberer)
- 783b3d4: Enrich std/ README with per-package module tables (#1147) (@marcauberer)
- 0c3f0ef: Add serialization to std CSV, JSON and XML parsers (#1148) (@marcauberer)
- c1741f8: Vendor build dependencies as git submodules (#1149) (@marcauberer)
- 0aef013: Add spice-profiling skill (#1150) (@marcauberer)
- d97dee5: Improve bootstrap parser performance (#1151) (@marcauberer)
- 9622842: Extend bootstrap compiler (#1152) (@marcauberer)
- 41a580c: Upgrade to LLVM 22.1.7 (#1153) (@marcauberer)
- 4350cf4: Add PriorityQueue to the std library (#1154) (@marcauberer)
- ebbca9a: Add Trie data structure to the std library (#1155) (@marcauberer)
- 7a26f06: Suppress warnings for the bootstrap-compiler test suite (#1157) (@marcauberer)
- 900f2d3: Make scope in bootstrap compiler compile (#1158) (@marcauberer)
- e13fe4a: Disable LLVM RTTI in all build pipelines (#1160) (@marcauberer)
- d4a57df: Sync TypeChain and Type of bootstrap with host compiler (#1163) (@marcauberer)
- 2b26fd1: Sync bootstrap with host compiler (#1165) (@marcauberer)
- 40e2b38: Extend vector smoke test to cover insertAt (#1164) (@marcauberer)
- 61acd52: Fix corrupted VTable when struct method order differs from interface (#1166) (@marcauberer)
- 014deec: Fix crash on generic function substantiations differing only in array size (#1167) (@marcauberer)
What to do next?
- Install Spice
- Visit www.spicelang.com to test the new features
0.25.2 26. toukokuuta 2026 — 64-bittinen MSI
Muutosloki
Changelog
- 3f7ba8a: Fix Discord badge url (#1081) (@marcauberer)
- c6a175a: Cleanup badges in README (#1082) (@marcauberer)
- b6e014c: Bump zensical from 0.0.31 to 0.0.32 in /docs (#1083) (@dependabot[bot])
- 1584971: Bump actions/upload-pages-artifact from 4 to 5 in /.github/workflows (#1084) (@dependabot[bot])
- 5a2ba30: Bump alpine from 3.23.3 to 3.23.4 (#1085) (@dependabot[bot])
- dbf06c3: Fix Dependabot config (#1086) (@marcauberer)
- 99e2cb9: Bump zensical from 0.0.32 to 0.0.33 in /docs (#1087) (@dependabot[bot])
- 5848299: Fix builtin docs (#1088) (@marcauberer)
- d92015f: Upgrade to LLVM 22.1.4 (#1089) (@marcauberer)
- 4d3bdd8: Fix copy ctor call for certain ternary operand types (#1090) (@marcauberer)
- 7039d5f: Add is_trivially_[constructible|copyable|destructible] builtins (#1091) (@marcauberer)
- 3203dca: Cleanup std (#1092) (@marcauberer)
- c25776c: Bump zensical from 0.0.33 to 0.0.36 in /docs (#1093) (@dependabot[bot])
- f9e3462: Treat struct with no-arg ctor as non-trivially-constructible (#1094) (@marcauberer)
- d8c3dd2: Fix trivially copyability of ref field structs (#1095) (@marcauberer)
- cf91a56: Add __new and __placement_new builtins (#1096) (@marcauberer)
- e2bb45c: Create AGENTS.md file (#1097) (@marcauberer)
- 057b7fa: Add support for assign operator overloading (#1098) (@marcauberer)
- 0c749d7: Fix various bugs in std container types (#1099) (@marcauberer)
- 4874beb: Add instructions for Claude (#1100) (@marcauberer)
- 29dc64b: Introduce graph std (#1101) (@marcauberer)
- e72c8ff: Bump zensical from 0.0.36 to 0.0.39 in /docs (#1102) (@dependabot[bot])
- 461ebd8: Upgrade to LLVM 22.1.5 (#1103) (@marcauberer)
- a855c9b: Improve compile time (#1105) (@marcauberer)
- a772c86: Bump zensical from 0.0.39 to 0.0.41 in /docs (#1106) (@dependabot[bot])
- b0fe878: Bump zensical from 0.0.41 to 0.0.42 in /docs (#1108) (@dependabot[bot])
- a13b110: Upgrade to LLVM 22.1.6 (#1109) (@marcauberer)
- 28b87d0: Use LLVMs discard value names (#1110) (@marcauberer)
- ec0df5e: Fix macOS build in CI (#1112) (@marcauberer)
- 94050a9: Improve mutex std implementation (#1111) (@marcauberer)
- c01cfa5: Use GCC 16 in CI (#1104) (@marcauberer)
- 38a5fbd: Bump zensical from 0.0.42 to 0.0.43 in /docs (#1113) (@dependabot[bot])
- 8de4ce4: Fix use-after-free bug (#1114) (@marcauberer)
- 2a5b59c: Fix another use-after-free bug (#1115) (@marcauberer)
- 7f8a7af: Add GitHub actions workflow for ASAN run (#1116) (@marcauberer)
- f349bd2: Add homebrew cask release (#1117) (@marcauberer)
- 78e277e: Skip sanitizer tests in ASAN run (#1118) (@marcauberer)
- ea451f3: Fix static linking with GCC 16 + mold in publish workflow (#1119) (@marcauberer)
- 8777e49: Drop mold from Linux publish jobs to fix GCC 16 static link (#1120) (@marcauberer)
- 02e624c: Disable zlib and zstd in Linux LLVM build (@marcauberer)
- 735a8cd: Strip GCC 16 virtual libgcc_s_asneeded from implicit link libs (@marcauberer)
What to do next?
- Install Spice
- Visit www.spicelang.com to test the new features
0.25.1 7. huhtikuuta 2026 — 64-bittinen MSI
Muutosloki
Changelog
- 2889c35: Add support for build time variables (#1054) (@marcauberer)
- a01a54a: Fix coverage leaks (#1055) (@marcauberer)
- eb4085d: Minor refactoring (#1056) (@marcauberer)
- 5a1be78: Improve CMake project (#1057) (@marcauberer)
- 366bdfd: Accelerate CI runs (#1058) (@marcauberer)
- ef7f657: Fix CodeQL workflow (#1059) (@marcauberer)
- 3b1f423: Bump zensical from 0.0.27 to 0.0.28 in /docs (#1060) (@dependabot[bot])
- 14a325a: Fix bug in test framework (#1061) (@marcauberer)
- 7e8dfef: Upgrade to LLVM 22.1.2 (#1062) (@marcauberer)
- 6bcddee: Fix invalid instr signal in Linux/x86 CI (#1064) (@marcauberer)
- 08d9bb5: Introduce GTK 4 bindings (#1065) (@marcauberer)
- 33c1e63: Move LLVM bindings from bootstrap to std (#1066) (@marcauberer)
- 9ef58ca: Bump actions/deploy-pages from 4 to 5 in /.github/workflows (#1067) (@dependabot[bot])
- c733c4b: Introduce libcurl bindings (#1068) (@marcauberer)
- 1ddf820: Create issue template config (#1069) (@marcauberer)
- be67429: Only enable verifier per default in debug mode (#1070) (@marcauberer)
- 8544b91: Bump zensical from 0.0.28 to 0.0.30 in /docs (#1072) (@dependabot[bot])
- 5261ac6: Bump actions/configure-pages from 5 to 6 in /.github/workflows (#1071) (@dependabot[bot])
- 15e0efb: Remove disabled verifier warning (#1073) (@marcauberer)
- bb0d90c: Sync bootstrap driver (#1074) (@marcauberer)
- 03beba6: Bump zensical from 0.0.30 to 0.0.31 in /docs (#1075) (@dependabot[bot])
- 44eb7d2: Do not copy registries for function/struct/interface matching (#1076) (@marcauberer)
- 8b5ca85: Prefer emplace instead of insert on maps (#1077) (@marcauberer)
- c0ac915: Avoid contains with subsequent at on containers (#1078) (@marcauberer)
- b0881f9: Add script for GitHub Codespaces setup (#1079) (@marcauberer)
- 118d39c: Upgrade to LLVM 22.1.3 (#1080) (@marcauberer)
- 427dd21: Fix publish workflow (@marcauberer)
What to do next?
- Install Spice
- Visit www.spicelang.com to test the new features
0.25.0 17. maaliskuuta 2026 — 64-bittinen MSI
Muutosloki
Changelog
- 2444b4d: Fix crash when trying to compile no-arg generic functions (#1027) (@marcauberer)
- 10c4b47: Bump actions/upload-artifact from 6 to 7 in /.github/workflows (#1028) (@dependabot[bot])
- 1814089: Bump actions/download-artifact from 7 to 8 in /.github/workflows (#1029) (@dependabot[bot])
- 0cbaecb: Bump mkdocs-material from 9.7.2 to 9.7.3 in /docs (#1030) (@dependabot[bot])
- 6581c53: Bump mkdocs-material[imaging] from 9.7.2 to 9.7.3 in /docs (#1031) (@dependabot[bot])
- b9677e3: Bump docker/setup-buildx-action from 3 to 4 in /.github/workflows (#1034) (@dependabot[bot])
- 38c50c7: Bump docker/login-action from 3 to 4 in /.github/workflows (#1032) (@dependabot[bot])
- 7e10d36: Bump docker/setup-qemu-action from 3 to 4 in /.github/workflows (#1033) (@dependabot[bot])
- ec150d4: Bump mkdocs-material from 9.7.3 to 9.7.4 in /docs (#1035) (@dependabot[bot])
- f3e2ad6: Bump mkdocs-material[imaging] from 9.7.3 to 9.7.4 in /docs (#1036) (@dependabot[bot])
- 0aa2d25: Fix mkdocs-material dependency version (@marcauberer)
- 4c03e23: Upgrade to LLVM 22.1.1 (#1037) (@marcauberer)
- 9f348c4: Improve compile time if (#1038) (@marcauberer)
- a9f3168: Introduce more flexible builtin function mechanism (#1039) (@marcauberer)
- 322c537: Lookup compile time value per manifestation (#1040) (@marcauberer)
- 2429eb0: Migrate sizeof builtin to new mechanism (#1041) (@marcauberer)
- 5de8544: Migrate alignof builtin to new mechanism (#1042) (@marcauberer)
- a037de2: Migrate typeid builtin to new mechanism (#1043) (@marcauberer)
- 1ca46be: Migrate len builtin to new mechanism (#1044) (@marcauberer)
- 417d4f7: Migrate printf builtin to new mechanism (#1045) (@marcauberer)
- 46571c6: Migrate panic builtin to new mechanism (#1046) (@marcauberer)
- a564831: Migrate syscall builtin to new mechanism (#1047) (@marcauberer)
- f6beaaa: Improve and simplify builtin mechanism (#1048) (@marcauberer)
- 421844a: Disable flakey thread pool test in CI (#1049) (@marcauberer)
- a068fda: Simplify struct type creation (#1050) (@marcauberer)
- aec152d: Migrate documentation to Zensical site generator (#1051) (@marcauberer)
- 9bd66ce: Improve documentation (#1052) (@marcauberer)
- 69b7593: Fold unnecessary AST nodes (#1053) (@marcauberer)
What to do next?
- Install Spice
- Visit www.spicelang.com to test the new features
0.24.4 25. helmikuuta 2026 — 64-bittinen MSI
Muutosloki
Changelog
- 4b2a43b: Use memcpy when shallow copying aggregates (#998) (@marcauberer)
- 107a6ba: Fix coverage gaps (#999) (@marcauberer)
- c8eaef0: Update to LLVM 22.1.0-rc1 (#1000) (@marcauberer)
- 2b11b5f: Fix TySan lib lookup (#1001) (@marcauberer)
- b846341: Upgrade to LLVM 22.1.0-rc2 (#1002) (@marcauberer)
- 3f31e1b: Bump alpine from 3.23.2 to 3.23.3 (#1003) (@dependabot[bot])
- 21ef6b5: Bump mkdocs-git-revision-date-localized-plugin from 1.5.0 to 1.5.1 in /docs (#1004) (@dependabot[bot])
- d825cab: Upgrade to LLVM 22.1.0-rc3 (#1005) (@marcauberer)
- 4efa6c3: Move getSystemPageSize to SystemUtil (#1006) (@marcauberer)
- 56711ab: Optimize imports (#1007) (@marcauberer)
- 235a559: Fix bootstrap compiler (#1008) (@marcauberer)
- 61c872b: Fix linkage of vtables (#1009) (@marcauberer)
- c1a5aeb: Correctly prevent copies of central objects (#1010) (@marcauberer)
- 6153555: Introduce option to control output container (#1011) (@marcauberer)
- f8adbb5: Add tests for output container option (#1012) (@marcauberer)
- fb9b583: Correctly clear out LLVMExprResult fields (#1013) (@marcauberer)
- 397032d: Enhance lazy value resolving for address of / dereference operators (#1014) (@marcauberer)
- eb32bab: Fix assertion before soft error (#1015) (@marcauberer)
- 5b85662: Fix wrong RVO assumptions (#1016) (@marcauberer)
- 5d1d4f5: Fix symbol name clashes (#1017) (@marcauberer)
- 5d97c9e: Add test for self-assign (#1018) (@marcauberer)
- 0020798: Simplify op rule manager (#1019) (@marcauberer)
- 29c816d: Do not delete additional source file (#1020) (@marcauberer)
- 83d6187: Introduce compile time if (#1021) (@marcauberer)
- 336b990: Bump mkdocs-material from 9.7.1 to 9.7.2 in /docs (#1023) (@dependabot[bot])
- ef6fd1d: Bump mkdocs-material[imaging] from 9.7.1 to 9.7.2 in /docs (#1024) (@dependabot[bot])
- 95e186d: Bump goreleaser/goreleaser-action from 6 to 7 in /.github/workflows (#1022) (@dependabot[bot])
- 197ca29: Fix docs workflow (#1025) (@marcauberer)
- d3c6b30: Upgrade to LLVM 22.1.0 (#1026) (@marcauberer)
What to do next?
- Install Spice
- Visit www.spicelang.com to test the new features
0.24.3 6. tammikuuta 2026 — 64-bittinen MSI
Muutosloki
Changelog
- 3d78cf6: Refactor function/struct/interface scope name creation (#972) (@marcauberer)
- aa57396: Avoid warnings in tests (#973) (@marcauberer)
- 68d1170: Fix duplicated mangled name (#974) (@marcauberer)
- 7dd0752: Add test for verifier warning (#975) (@marcauberer)
- 059877e: Add support for type sanitizer (#976) (@marcauberer)
- 91ac00f: Add test for cross-compile to wasm32 (#977) (@marcauberer)
- 6e0df0a: Fix ref passing (#978) (@marcauberer)
- 8da2e3d: Fix corrupted vtable pointer (#979) (@marcauberer)
- 768998e: Add support for comparing pointers (#980) (@marcauberer)
- 6f143d4: Bump actions/cache from 4 to 5 in /.github/workflows (#981) (@dependabot[bot])
- c8bed42: Bump actions/download-artifact from 6 to 7 in /.github/workflows (#983) (@dependabot[bot])
- 2f84079: Bump actions/upload-artifact from 5 to 6 in /.github/workflows (#982) (@dependabot[bot])
- e03edfa: Upgrade to LLVM 21.1.8 (#984) (@marcauberer)
- 3fb4523: Fix bug in name mangling (#985) (@marcauberer)
- 5e82e43: Bump alpine from 3.23.0 to 3.23.2 (#986) (@dependabot[bot])
- 97be1fb: Bump mkdocs-material from 9.7.0 to 9.7.1 in /docs (#988) (@dependabot[bot])
- 7a4fe36: Bump mkdocs-material[imaging] from 9.7.0 to 9.7.1 in /docs (#987) (@dependabot[bot])
- 8a39db6: Delete unused code (#989) (@marcauberer)
- 9d81443: Update copyright year (#990) (@marcauberer)
- 54107c4: Use current year in driver help message (#991) (@marcauberer)
- fe599c0: Fix generic default constructor generation (#992) (@marcauberer)
- 61880cc: Fixes for mandatory ctors (#993) (@marcauberer)
- 56f3cb3: Fix missing copy ctor call of foreach loop item (#994) (@marcauberer)
- 4a47435: Fix reverse destruction order in default dtors (#995) (@marcauberer)
- 6c0dc9a: Add more precise attrs to implicit default methods (#996) (@marcauberer)
- 6706125: Fix release build (#997) (@marcauberer)
What to do next?
- Install Spice
- Visit www.spicelang.com to test the new features
0.24.1 21. marraskuuta 2025 — 64-bittinen MSI
Muutosloki
Changelog
- 1a67f84: Increase coverage (#944) (@marcauberer)
- 08c23e2: Fix sanitizer testing bug (#945) (@marcauberer)
- 5027853: Refactor drivers (#946) (@marcauberer)
- a7b9579: Rework test runner (#947) (@marcauberer)
- 1f6e5e9: Support latest Ubuntu/Debian releases and deprecated the deprecated ones (#948) (@marcauberer)
- d6a87a2: Use version variables in CI workflows (#949) (@marcauberer)
- 3699484: Add more tests for unsafe (#950) (@marcauberer)
- 6956bb4: Add operator combinations test (#951) (@marcauberer)
- c22bae0: Upgrade to LLVM 21.1.6 (#952) (@marcauberer)
- 727be0a: Introduce SaveAndRestore RAII helper (#953) (@marcauberer)
- aaa4e9d: Remove headers from CMake targets (#954) (@marcauberer)
- 5554dbe: Bump actions/checkout from 5 to 6 in /.github/workflows (#955) (@dependabot[bot])
- 1a3d9e4: Fix typo in publish workflow (@marcauberer)
What to do next?
- Install Spice
- Visit www.spicelang.com to test the new features
0.24.0 10. marraskuuta 2025 — 64-bittinen MSI
Muutosloki
Changelog
- fa83857: Improve hash algorithms (#938) (@marcauberer)
- 0abfae5: Add support for macOS (#939) (@marcauberer)
- 8ac56e0: Fix macOS docs (#940) (@marcauberer)
- c1079ac: Only build the required LLVM targets (#941) (@marcauberer)
- e73029a: Add tests for cross-compilation (#942) (@marcauberer)
- 35761df: Minimize cache size of CI runs (#943) (@marcauberer)
- 83c2ef5: Quick fix for publish workflow (@marcauberer)
What to do next?
- Install Spice
- Visit www.spicelang.com to test the new features
0.23.0 5. marraskuuta 2025 — 64-bittinen MSI
Muutosloki
Changelog
- 3500cc7: Add support for ASAN instrumentation (#911) (@marcauberer)
- d48f034: Add support for TSAN instrumentation (#912) (@marcauberer)
- 1bd8f78: Add sanitizer to cli docs (#914) (@marcauberer)
- d75bf07: Enhance bootstrap driver (#915) (@marcauberer)
- 45fa320: Improve env std (#913) (@marcauberer)
- b5a9021: Bump actions/upload-artifact from 4 to 5 in /.github/workflows (#918) (@dependabot[bot])
- 7c73f51: Bump actions/download-artifact from 5 to 6 in /.github/workflows (#917) (@dependabot[bot])
- 36a1dc5: Only add version flag to root subcommand (#916) (@marcauberer)
- 267defb: Fix pointer stability bugs (#919) (@marcauberer)
- f1f3b55: Simplify CPU feature selection coding (#920) (@marcauberer)
- b9ae928: Extend bootstrap driver implementation (#921) (@marcauberer)
- 7f8943e: Upgrade to CLI11 v2.6.1 (#922) (@marcauberer)
- 4978506: Use better hashing for cache keys (#923) (@marcauberer)
- b6528cd: Enable warnings as errors (#924) (@marcauberer)
- c019ee8: Apply better function attributes to main and printf functions (#925) (@marcauberer)
- 1c34016: Better printf call attrs (#926) (@marcauberer)
- d844668: Bump mkdocs-git-revision-date-localized-plugin from 1.4.7 to 1.5.0 in /docs (#928) (@dependabot[bot])
- 8ef0766: Bump mkdocs-material from 9.6.22 to 9.6.23 in /docs (#927) (@dependabot[bot])
- a0055a2: Bump mkdocs-material[imaging] from 9.6.22 to 9.6.23 in /docs (#929) (@dependabot[bot])
- 9d32af3: Migrate Goreleaser to dockers_v2 (#931) (@marcauberer)
- b464d75: Add support for Memory Sanitizer (#930) (@marcauberer)
- 4385060: Disable threadpool test on Windows (#932) (@marcauberer)
- cf17a6b: Upgrade to LLVM 21.1.5 (#933) (@marcauberer)
- 6e27b50: Create issue templates (#934) (@marcauberer)
- 0545379: Refactor metadata generation (#936) (@marcauberer)
- 67abb9f: Add support for TBAA metadata (#937) (@marcauberer)
- 4474cb0: Hotfix for publish workflow (@marcauberer)
What to do next?
- Install Spice
- Visit www.spicelang.com to test the new features
0.22.5 22. lokakuuta 2025 — 64-bittinen MSI
Muutosloki
Changelog
- fdc838a: Add unordered set std (#890) (@marcauberer)
- fa8806e: Add set std (#892) (@marcauberer)
- f973a92: Fix param mismatch in Function::getSignature (#893) (@marcauberer)
- fcbcd3f: Do not use template types in signatures for function lookup (#894) (@marcauberer)
- dfd5cbb: Reduce number of workflow runs (#895) (@marcauberer)
- 6b06ee9: Add sMove for moving heap pointers (#896) (@marcauberer)
- 165f65c: Add unordered set iterator (#891) (@marcauberer)
- b18a19d: Add CMake toggle for UBSan (#897) (@marcauberer)
- 3aaad2b: Add set iterator (#898) (@marcauberer)
- 84c92a3: Bump mkdocs-material from 9.6.19 to 9.6.20 in /docs (#899) (@dependabot[bot])
- e08f7cb: Bump mkdocs-material[imaging] from 9.6.19 to 9.6.20 in /docs (#900) (@dependabot[bot])
- b725c93: Upgrade to LLVM 21.1.2 (#901) (@marcauberer)
- 00e1396: Bump mkdocs-material from 9.6.20 to 9.6.21 in /docs (#903) (@dependabot[bot])
- 7d6715c: Bump mkdocs-material[imaging] from 9.6.20 to 9.6.21 in /docs (#902) (@dependabot[bot])
- 98d8ef5: Fix type matcher bug (#904) (@marcauberer)
- 655ebe7: Bump github/codeql-action from 3 to 4 in /.github/workflows (#905) (@dependabot[bot])
- 550a668: Bump alpine from 3.22.1 to 3.22.2 (#906) (@dependabot[bot])
- f8ad2ab: Bump mkdocs-material from 9.6.21 to 9.6.22 in /docs (#908) (@dependabot[bot])
- 933f011: Bump mkdocs-material[imaging] from 9.6.21 to 9.6.22 in /docs (#907) (@dependabot[bot])
- 72c9ae5: Upgrade CLI11 to version 2.6.0 (#909) (@marcauberer)
- 8b78459: Upgrade LLVM to 21.1.4 (#910) (@marcauberer)
What to do next?
- Install Spice
- Visit www.spicelang.com to test the new features
0.22.4 10. syyskuuta 2025 — 64-bittinen MSI
Muutosloki
Changelog
- b3ee241: Bump actions/download-artifact from 4 to 5 in /.github/workflows (#865) (@dependabot[bot])
- ac08bf0: Upgrade to CMake 4.x (#866) (@marcauberer)
- b3a411b: Use Java JRE 21 instead of JDK 11 (#867) (@marcauberer)
- 4a8b7b0: Improve hash std (#869) (@marcauberer)
- 51889aa: Upgrade LLVM to 21.1.0-rc3 (#870) (@marcauberer)
- 2f44cd7: Bump actions/checkout from 4 to 5 in /.github/workflows (#871) (@dependabot[bot])
- 95bcfac: Add Windows/x86_64 CI (#872) (@marcauberer)
- a74d9ef: Bump actions/checkout from 4 to 5 in /.github/workflows (#873) (@dependabot[bot])
- 66cdb2b: Bump mkdocs-material from 9.6.16 to 9.6.17 in /docs (#875) (@dependabot[bot])
- 1ceee2d: Bump mkdocs-material[imaging] from 9.6.16 to 9.6.17 in /docs (#874) (@dependabot[bot])
- 4d7ee23: Fix missing call site param attributes for default ctors/dtors (#876) (@marcauberer)
- 11a6ea4: Bump actions/setup-java from 4 to 5 in /.github/workflows (#877) (@dependabot[bot])
- a8ce12e: Bump mkdocs-material from 9.6.17 to 9.6.18 in /docs (#878) (@dependabot[bot])
- 2d5b0f0: Bump mkdocs-material[imaging] from 9.6.17 to 9.6.18 in /docs (#880) (@dependabot[bot])
- 1e5047e: Upgrade LLVM to version 21.1.0 (#881) (@marcauberer)
- adf22bc: Bump actions/setup-python from 5 to 6 in /.github/workflows (#884) (@dependabot[bot])
- 29da193: Bump actions/labeler from 5 to 6 in /.github/workflows (#883) (@dependabot[bot])
- 49df9ac: Bump actions/setup-go from 5 to 6 in /.github/workflows (#882) (@dependabot[bot])
- 3568158: Use compiler flags to reduce binary size in release mode (#885) (@marcauberer)
- b1ac6d3: Bump mkdocs-material from 9.6.18 to 9.6.19 in /docs (#887) (@dependabot[bot])
- c2a164f: Bump mkdocs-material[imaging] from 9.6.18 to 9.6.19 in /docs (#886) (@dependabot[bot])
- 112805d: Upgrade LLVM to version 21.1.1 (#888) (@marcauberer)
- 9acd78c: Upgrade Golang version in CI workflows (#889) (@marcauberer)
What to do next?
- Install Spice
- Visit www.spicelang.com to test the new features
0.22.3 3. elokuuta 2025 — 64-bittinen MSI
Muutosloki
Changelog
- 95adfea: Upgrade to LLVM 20.1.5 (#839) (@marcauberer)
- 517a895: Bump mkdocs-material from 9.6.13 to 9.6.14 in /docs (#841) (@dependabot[bot])
- 241c478: Bump mkdocs-material[imaging] from 9.6.13 to 9.6.14 in /docs (#840) (@dependabot[bot])
- 024dc32: Code optimizations (#842) (@marcauberer)
- a61910d: Bump mkdocs-git-revision-date-localized-plugin from 1.4.5 to 1.4.6 in /docs (#843) (@dependabot[bot])
- fe41c61: Upgrade to LLVM 20.1.6 (#844) (@marcauberer)
- 7130972: Optimize string escaping algorithm (#845) (@marcauberer)
- 473c3f4: Prohibit all reserved typenames as type identifiers (#846) (@marcauberer)
- 4bcf53e: Bump alpine from 3.21.3 to 3.22.0 (#848) (@dependabot[bot])
- 20b73d0: Bump mkdocs-git-revision-date-localized-plugin from 1.4.6 to 1.4.7 in /docs (#847) (@dependabot[bot])
- c1f5e8e: Introduce logging std (#850) (@marcauberer)
- 6059deb: Upgrade to LLVM 20.1.7 (#851) (@marcauberer)
- eb74800: Properly handle unresolved param type (#849) (@marcauberer)
- 3485652: Bump mkdocs-material from 9.6.14 to 9.6.15 in /docs (#854) (@dependabot[bot])
- 48f8865: Bump mkdocs-material[imaging] from 9.6.14 to 9.6.15 in /docs (#853) (@dependabot[bot])
- 304670b: Upgrade LLVM to 20.1.8 (#855) (@marcauberer)
- c32a0d9: Fix array name mangling (#852) (@marcauberer)
- 958bfae: Bump alpine from 3.22.0 to 3.22.1 (#856) (@dependabot[bot])
- 28586b0: Bump mkdocs-material from 9.6.15 to 9.6.16 in /docs (#859) (@dependabot[bot])
- 891e480: Bump mkdocs-material[imaging] from 9.6.15 to 9.6.16 in /docs (#858) (@dependabot[bot])
- 6c2a26b: Upgrade LLVM to 21.1.0-rc1 (#857) (@marcauberer)
- e67e9fe: Upgrade to LLVM 21.1.0-rc2 (#860) (@marcauberer)
- b427df1: Add support for vararg ext decls (#861) (@marcauberer)
- 6c88291: Restructure type modules (#862) (@marcauberer)
- f3c291d: Fix pulling wrong mingw64 version for Windows release (#863) (@marcauberer)
- 6e4b6fe: Fix wrong llvm dir in Windows CI (#864) (@marcauberer)
What to do next?
- Install Spice
- Visit www.spicelang.com to test the new features
0.22.2 13. toukokuuta 2025 — 64-bittinen MSI
Muutosloki
Changelog
- 88bd120: Bump mkdocs-git-revision-date-localized-plugin from 1.4.4 to 1.4.5 in /docs (#820) (@dependabot[bot])
- 84ad386: Bump mkdocs-material from 9.6.7 to 9.6.8 in /docs (#818) (@dependabot[bot])
- 415154e: Bump mkdocs-material[imaging] from 9.6.7 to 9.6.8 in /docs (#819) (@dependabot[bot])
- 3cb3d39: Fix dependency clash (@marcauberer)
- 36c4531: Upgrade to LLVM 20.1.1 (#821) (@marcauberer)
- e39af92: Strip public qualifier from types in error messages (#822) (@marcauberer)
- 99705da: Fix some C++ compiler warnings (#823) (@marcauberer)
- e87f288: Bump mkdocs-material from 9.6.9 to 9.6.10 in /docs (#824) (@dependabot[bot])
- 0dc2db8: Bump mkdocs-material[imaging] from 9.6.9 to 9.6.10 in /docs (#825) (@dependabot[bot])
- 783fbee: Upgrade to LLVM 20.1.2 (#826) (@marcauberer)
- 1ff7189: Add support for typeid builtin (#827) (@marcauberer)
- a93e3f5: Bump mkdocs-material from 9.6.10 to 9.6.11 in /docs (#828) (@dependabot[bot])
- 225f88f: Bump mkdocs-material[imaging] from 9.6.10 to 9.6.11 in /docs (#829) (@dependabot[bot])
- d6100af: Upgrade JSON to v3.12.0 (#830) (@marcauberer)
- 1eb44c7: Upgrade to LLVM 20.1.3 (#831) (@marcauberer)
- dd03525: Bump mkdocs-material from 9.6.11 to 9.6.12 in /docs (#832) (@dependabot[bot])
- 7f162fb: Bump mkdocs-material[imaging] from 9.6.11 to 9.6.12 in /docs (#833) (@dependabot[bot])
- 7a5e89c: Upgrade to LLVM 20.1.4 (#834) (@marcauberer)
- 7e32019: Upgrade Googletest to 1.17.0 (#835) (@marcauberer)
- 6386557: Refactor SourceFile (#836) (@marcauberer)
- e304af2: Bump mkdocs-material from 9.6.12 to 9.6.13 in /docs (#838) (@dependabot[bot])
- cc9c96e: Bump mkdocs-material[imaging] from 9.6.12 to 9.6.13 in /docs (#837) (@dependabot[bot])
- bc72be2: Release workflow hotfix (@marcauberer)
What to do next?
- Install Spice
- Visit www.spicelang.com to test the new features
0.22.1 15. maaliskuuta 2025 — 64-bittinen MSI
Muutosloki
Changelog
- ecee9b1: Bump mkdocs-material from 9.6.4 to 9.6.5 in /docs (#800) (@dependabot[bot])
- 0b53d02: Bump mkdocs-material[imaging] from 9.6.4 to 9.6.5 in /docs (#799) (@dependabot[bot])
- faff7af: Fix permission problem in labeler workflow (#801) (@marcauberer)
- 1570525: Upgrade to LLVM 20.1.0-rc3 (#802) (@marcauberer)
- 8545752: Upgrade CLI11 (#803) (@marcauberer)
- dfb7c02: Fix wrong substantiation bug (#804) (@marcauberer)
- f692080: Do not use deprecated method in DIBuilder (#805) (@marcauberer)
- 86aec65: Optimize IR for struct accesses (#806) (@marcauberer)
- 0b7a117: Avoid redundant loads in implicit codegen (#807) (@marcauberer)
- ec67cda: Simplify cli parser std part 2 (#795) (@marcauberer)
- 8ee82ac: Add Linux/AArch64 CI (#808) (@marcauberer)
- b07acfa: Use AArch64 actions image to publish AArch64 compiler (#809) (@marcauberer)
- 1eca7ba: Fix bug in const folding (#810) (@marcauberer)
- b94dfa9: Bump mkdocs-material from 9.6.5 to 9.6.7 in /docs (#811) (@dependabot[bot])
- 6befc8d: Bump mkdocs-material[imaging] from 9.6.5 to 9.6.7 in /docs (#812) (@dependabot[bot])
- 4b82c67: Upgrade to LLVM 20.1.0 (#813) (@marcauberer)
- 6ee69e3: Bump lunr from 0.7.0.post1 to 0.8.0 in /docs (#815) (@dependabot[bot])
- 33ffde3: Bump mkdocs-git-revision-date-localized-plugin from 1.3.0 to 1.4.2 in /docs (#814) (@dependabot[bot])
- 9574135: Bump mkdocs-git-revision-date-localized-plugin from 1.4.2 to 1.4.4 in /docs (#816) (@dependabot[bot])
- 08017e0: Undefine conflicting macros (#817) (@marcauberer)
What to do next?
- Install Spice
- Visit www.spicelang.com to test the new features
0.22.0 23. helmikuuta 2025 — 64-bittinen MSI
Muutosloki
Changelog
- 697b6ff: Goreleaser migrations (#760) (@marcauberer)
- b2f80ac: Unify IR variable names (#761) (@marcauberer)
- 2ed60d8: Simplify type checker code (#762) (@marcauberer)
- 93fe799: Upgrade Googletest to 1.16.0 (#763) (@marcauberer)
- 7ffad3b: Use consistent dependency versions in CI (#764) (@marcauberer)
- 39363f0: Simplify logic around function call type checking (#765) (@marcauberer)
- ff10bdc: Split up type checker to multiple, specialized compile units (#766) (@marcauberer)
- 48643ec: Cleanup OS specific coding (#767) (@marcauberer)
- 08c879e: Fix misspell workflow (#768) (@marcauberer)
- 50e318b: Fix wrong IR attributes on function call args (#769) (@marcauberer)
- 3aa0a3d: Move more logic to helper functions in QualType (#770) (@marcauberer)
- a7a3b0f: Add support for dumping lookup cache stats (#771) (@marcauberer)
- 807c9ae: Simplify atomic expr type checking (#772) (@marcauberer)
- e55052f: Bump mkdocs-material from 9.6.1 to 9.6.3 in /docs (#773) (@dependabot[bot])
- a124c9b: Bump mkdocs-material[imaging] from 9.6.1 to 9.6.3 in /docs (#774) (@dependabot[bot])
- ca228ad: Unify syntax of sizeof with other language components (#775) (@marcauberer)
- 445dc2f: Unify syntax of alignof with other language components (#776) (@marcauberer)
- b7706f4: Make sizeof return size in bytes instead of bits (#778) (@marcauberer)
- 7019e5d: Upgrade to LLVM 20.1.0-rc2 (#777) (@marcauberer)
- dfa492f: Unify syntax of type casts with other language features (#779) (@marcauberer)
- b40111a: Fix ambiguous char type mangling (#780) (@marcauberer)
- c2f93e9: Detect missing error messages (#781) (@marcauberer)
- 0962e4f: Fix generic type dyn (#782) (@marcauberer)
- 6ef07d2: Avoid copy of key for hash table bucket lookup (#783) (@marcauberer)
- 87521f7: Fix bugs in math rounding functions and improve performance (#784) (@marcauberer)
- a94b5dc: Add support for more casts to double (#785) (@marcauberer)
- bee2a40: Add insert method for String type (#786) (@marcauberer)
- 70ae200: Add format function for storage sizes (#787) (@marcauberer)
- 661cfeb: Bump mkdocs-material from 9.6.3 to 9.6.4 in /docs (#788) (@dependabot[bot])
- d929ae3: Bump mkdocs-material[imaging] from 9.6.3 to 9.6.4 in /docs (#789) (@dependabot[bot])
- bdfaa9c: Bump alpine from 3.21.2 to 3.21.3 (#790) (@dependabot[bot])
- bcbdb82: Correctly print CLI option aliases (#791) (@marcauberer)
- e5c4980: Update / Improve docs (#792) (@marcauberer)
- 1357a4f: Fix decimal literal parsing (#793) (@marcauberer)
- 54fe494: Simplify CLI parser std (#794) (@marcauberer)
- 3ef9b3c: Move mapping of test dir to separate label (#796) (@marcauberer)
- 5c44081: Fix Windows build (#797) (@marcauberer)
- 2912ddc: Fix incompatibilities with Windows (#798) (@marcauberer)
- 44253a5: Fix release workflow issue (@marcauberer)
What to do next?
- Install Spice
- Visit www.spicelang.com to test the new features
0.21.1 5. helmikuuta 2025 — 64-bittinen MSI
Muutosloki
Changelog
- f08ddbf: Also emit module flags when compiling without debug info (#728) (@marcauberer)
- 3ab679f: Minor fixes of the bootstrap compiler (#729) (@marcauberer)
- bcb638d: Don't try to use mold when cross-compiling to Windows (#730) (@marcauberer)
- 16008ac: Disallow instructions before allocas in entry block (#731) (@marcauberer)
- d294b1d: Update repository cache before installing dependencies (#732) (@marcauberer)
- f7799b6: Fix bug on result var assign (#733) (@marcauberer)
- 39f09ec: Use DWARF v5 (#734) (@marcauberer)
- cd3033b: Make panic builtin print user message from error object (#735) (@marcauberer)
- b27a730: Remove support for empty array initializers (#736) (@marcauberer)
- 053c4c5: Rework socket std (#737) (@marcauberer)
- f48aeeb: Avoid unnecessary typechecker post runs (#738) (@marcauberer)
- 8915f80: Refactoring and code optimization (#740) (@marcauberer)
- 404ceaa: Add dependency graph dumper (#741) (@marcauberer)
- a2ef7a4: Rename type specifiers to type qualifiers (#742) (@marcauberer)
- ed2d481: Extend bootstrap compiler type management (#743) (@marcauberer)
- 0b24637: Fix duplicate symbol name bug (#744) (@marcauberer)
- aaea818: Allow global variables in case constants (#745) (@marcauberer)
- fdd1f14: Add test for bootstrap compiler TypeQualifiers (#746) (@marcauberer)
- 1457274: Add addititonal memory runtime functions (#747) (@marcauberer)
- 9b07577: Extend bootstrap compiler type system (#748) (@marcauberer)
- 7aac9c3: Treat identity cases as non-opaque (#749) (@marcauberer)
- eeff600: Fix missing linker error output (#750) (@marcauberer)
- 97de8b1: Fix ifdefed Windows code (#751) (@marcauberer)
- 4fb4cce: Upgrade to LLVM 20.1.0-rc1 (#752) (@marcauberer)
- 3ffea00: Move unreachable member to StmtNode (#753) (@marcauberer)
- 115846f: Move symbol types vector to expr node (#754) (@marcauberer)
- 9e7923a: Bump mkdocs-git-committers-plugin-2 from 2.4.1 to 2.5.0 in /docs (#757) (@dependabot[bot])
- e1b75af: Bump mkdocs-material from 9.5.50 to 9.6.1 in /docs (#755) (@dependabot[bot])
- 1ab1aec: Bump mkdocs-material[imaging] from 9.5.50 to 9.6.1 in /docs (#756) (@dependabot[bot])
- 88d8a5d: Fix crash on invalid assign (#758) (@marcauberer)
- 989fdcb: Fix build error on Windows (#759) (@marcauberer)
What to do next?
- Install Spice
- Visit www.spicelang.com to test the new features
0.8.8 12. heinäkuuta 2022 — 64-bittinen MSI
0.8.7 8. heinäkuuta 2022 — 64-bittinen MSI
0.8.6 3. heinäkuuta 2022 — 64-bittinen MSI
0.8.5 26. kesäkuuta 2022 — 64-bittinen MSI
0.8.4 25. kesäkuuta 2022 — 64-bittinen MSI
0.8.3 24. kesäkuuta 2022 — 64-bittinen MSI
0.8.2 18. kesäkuuta 2022 — 64-bittinen MSI
0.8.1 22. toukokuuta 2022 — 64-bittinen MSI
0.8.0 27. huhtikuuta 2022 — 64-bittinen MSI

Suosituin kategoriassa Ohjelmointikielet ja SDK:t

Näytä kaikki
  1. Go Programming LanguageOhjelmointikielet ja SDK:t
  2. LLVMOhjelmointikielet ja SDK:t · LLVM
  3. DenoOhjelmointikielet ja SDK:t · Deno Land Inc.
  4. CMakeOhjelmointikielet ja SDK:t · Kitware
  5. YarnOhjelmointikielet ja SDK:t · Yarn Contributors
  6. CcacheOhjelmointikielet ja SDK:t · Joel Rosdahl
  7. sbtOhjelmointikielet ja SDK:t · Lightbend, Inc.
  8. BOINCOhjelmointikielet ja SDK:t · Space Sciences Laboratory, U.C. Berkeley
  9. Dart SDKOhjelmointikielet ja SDK:t · Google
  10. NVM for WindowsOhjelmointikielet ja SDK:t · Ecor Ventures LLC

Lisää julkaisijalta ChilliBits

Näytä kaikki

Tunnisteet

Jaa