Skip to content

Flow v1.0.1

Latest

Choose a tag to compare

@github-actions github-actions released this 23 Aug 11:09
· 112 commits to main since this release

What's Changed

  • Improve test coverage and encourage Flow idioms by @godofecht in #477
  • docs: enable MkDocs Material instant navigation features by @godofecht in #513
  • 🧪 Add unit tests for resolve_modules by @godofecht in #502
  • 🧪 [testing improvement description] by @godofecht in #498
  • Fix empty gutter beside docs sidebar by @godofecht in #514
  • fix: emit via FLOWC_IN/OUT in bootstrap_from_c.sh by @godofecht in #516
  • ⚡ Optimize regex compilation in simd_check loop by @godofecht in #501
  • Implement note string parser in note_to_midi by @godofecht in #512
  • 🧹 Fix nested generics parsing to support pointer arrays for Audio Buffer by @godofecht in #511
  • Refactor planet.flow to use procgen.flow by @godofecht in #509
  • feat(audio): implement Comb and Allpass filters for Reverb by @godofecht in #506
  • 🧹 [Code Health] Apply Synthesizer Filter in Synth Module by @godofecht in #504
  • 🧪 [testing improvement] Add test coverage for get_module_resolver and resolve_modules by @godofecht in #488
  • 🧪 [testing improvement] Add unit tests for generate_metal_shaders by @godofecht in #485
  • 🧪 test: add edge case tests for propagate_effects by @godofecht in #484
  • 🧪 Add testing for gpu_copy_from_device and other gpu_runtime functions by @godofecht in #483
  • 🧪 test: add test coverage for reachable_functions by @godofecht in #492
  • 🧪 Add comprehensive test for FIR analysis orchestration by @godofecht in #493
  • 🧪 Testing improvement: add tests for call_graph_edges by @godofecht in #499
  • Wiki home showcase and clearer navigation by @godofecht in #515
  • docs: refresh repository statistics by @godofecht in #518
  • wasm gallery: 158/158 — every example builds and runs as a card by @godofecht in #464
  • Fix TCO miscompiling extern/@cEmbed shim tail calls into infinite loops (#517) by @godofecht in #523
  • test: coverage plan, meta-agents notes, and small unit tests by @godofecht in #522
  • docs: refresh repository statistics by @godofecht in #526
  • Add first-class MLIR to wasm32 compilation target by @godofecht in #529
  • Execute direct MLIR wasm32 output in CI by @godofecht in #530
  • Exercise direct wasm32 linear-memory marshalling by @godofecht in #532
  • Fix private function collisions across modules by @godofecht in #531
  • Fix time.h extern prototype clashes by @godofecht in #533
  • Execute allocation-backed Flow under direct wasm32 by @godofecht in #534
  • Gate direct wasm32 against native MLIR parity by @godofecht in #535
  • MLIR: rotate counted loops and inline trivial accessors by @godofecht in #538
  • docs: measure whether the documented examples compile by @godofecht in #540
  • docs: make every anchor resolve, on the wiki as well as GitHub by @godofecht in #542
  • docs: check that every part of the language has a documented home by @godofecht in #543
  • docs: one nav manifest, validated, and every page reachable by @godofecht in #544
  • docs: retire the core library page, which documented an API that does not exist by @godofecht in #545
  • docs: cover the direct wasm32 target, and let CI run on docs-only PRs by @godofecht in #539
  • ci: gate documentation coverage and examples by @godofecht in #546
  • docs: resolve imports when checking examples, and mark the aspirational ones by @godofecht in #548
  • fix: lib/stdlib/posix.flow and net.flow never parsed by @godofecht in #549
  • fix: posix.flow function names that are libc macros by @godofecht in #551
  • docs: fix the vacuity check, four broken tutorials, and an unsafe stdlib extern by @godofecht in #552
  • Add a BPF (bpfel) compilation target by @godofecht in #555
  • ci: let the coverage gate see every backend, and document the one it caught by @godofecht in #556
  • docs: preamble= for running examples, and three more Book fixes by @godofecht in #553
  • docs: refresh repository statistics by @godofecht in #554
  • design: anchor the wiki shell, set headings in Archivo, harden against clipping by @godofecht in #558
  • Expand effects and capabilities documentation by @godofecht in #557
  • Lower sum(range) to closed-form arithmetic by @godofecht in #536
  • docs: show the verification result on every example, and publish the totals by @godofecht in #559
  • fix: capability method bodies did not know their own parameter types by @godofecht in #560
  • docs: correct three effects limitations that were broader than the truth by @godofecht in #565
  • Stop using Image.getdata, which Pillow 14 removes by @godofecht in #568
  • Connect the two effects pages where a reader actually needs the link by @godofecht in #570
  • Range algebra: union and intersection inside sum (#476) by @godofecht in #567
  • Report an undeclared type as undeclared, not as a type failing to match itself by @godofecht in #571
  • Report a capability used as a value in Flow terms, not as a clang error (#561) by @godofecht in #569
  • Return array<T, N> by value instead of pointing into the dead frame (#573) by @godofecht in #576
  • Tag three rejection demos, and make the ledger say what each one proves by @godofecht in #572
  • Make lib/stdlib/audio/README.md describe the API that exists by @godofecht in #574
  • Represent array<array<T, N>, M> as rows, not as an array of pointers (#575) by @godofecht in #578
  • String concatenation is a string, whatever the other operand is (#577) by @godofecht in #580
  • Implement from=, so a page that inlines a program cannot drift from it by @godofecht in #582
  • Run defers after the return value is read, and on every return (#594) by @godofecht in #595
  • Run the documentation examples, not only compile them by @godofecht in #596
  • Release 0.12.0 by @godofecht in #597
  • add Solve It the Flow Way problem gallery by @godofecht in #581
  • Let a flow member be elided and carry a dimension by @godofecht in #599
  • Record the furthest meaningful failure for unverified examples too (#588) by @godofecht in #600
  • Let a documentation block build on an earlier one on the same page (#584) by @godofecht in #601
  • Call a C math function by the name that is actually emitted (#590 part 1) by @godofecht in #603
  • Tag the two lifetime-domain rejection demos expect-error (#593) by @godofecht in #602
  • Classify metasyntactic fences, with three corrections (#589) by @godofecht in #604
  • Two galleries of recorded clips existed with no gallery to show them by @godofecht in #605
  • Make every example in the dynamics API reference compile by @godofecht in #606
  • Bind POSIX and sockets through the system headers (#550) by @godofecht in #598
  • Parse array repeat initializers [value; N] (#585) by @godofecht in #609
  • fix: link Python-host flow run with libm by @godofecht in #566
  • Remove test.txt, swept in by mistake by @godofecht in #608
  • Make the language spec's effect and type examples compile by @godofecht in #610
  • Every Solve It the Flow Way example runs in the browser by @godofecht in #617
  • Let a theorem name its parameters without typing them (#587) by @godofecht in #618
  • Pin flowc f64 const emission regression (#612) by @godofecht in #619
  • Make every example in the expressions and matching chapter compile by @godofecht in #622
  • Make every example in the evolution and dynamics chapter compile by @godofecht in #624
  • Define the functions the pipelines chapter pipes through by @godofecht in #625
  • Make Flow documentation compiler-audited by construction by @godofecht in #579
  • Keep imported module entry points out of the root program by @godofecht in #626
  • Read the declaration forms glibc uses, so @cImport works on Linux (#550) by @godofecht in #627
  • flowc: lower a slice using the sliced variable's element type by @godofecht in #632
  • Type-check span.data by @godofecht in #634
  • Lower an exhaustive match as a total if/else chain by @godofecht in #635
  • Reject an unqualified effect operation in Flow by @godofecht in #637
  • Evaluate a span borrow's source expression exactly once by @godofecht in #636
  • Model the pthread binding on the real header types by @godofecht in #629
  • Parse numeric and keyword decorator arguments by @godofecht in #639
  • Rebuild stale self-hosted compiler drivers by @godofecht in #638
  • docs: define Flow 1.x security support lifecycle by @godofecht in #656
  • test: start the permanent Flow 1.0 conformance corpus by @godofecht in #657
  • docs: define Flow 1.x stability contract by @godofecht in #655
  • ci: make zero documentation debt a Flow 1.0 release gate by @godofecht in #659
  • docs: add Flow 1.0 stabilisation roadmap by @godofecht in #654
  • selfhost: port range sums and overload compatibility core to Flow by @godofecht in #660
  • ci: qualify Linux and macOS as Flow 1.0 Tier 1 candidates by @godofecht in #658
  • security: add Flow 1.0 toolchain threat model and invariants by @godofecht in #661
  • stability: freeze the Flow 1.0 CLI and manifest core by @godofecht in #662
  • docs: record the landed Tier 1 qualification state by @godofecht in #663
  • release: prepare the Flow 1.0.0 cut by @godofecht in #697
  • stability: freeze the initial Flow 1.0 compatibility surface by @godofecht in #698
  • test: expand the Flow 1.0 Stable-core conformance corpus by @godofecht in #701
  • platform: define and exercise the Flow 1.0 C toolchain floor by @godofecht in #702
  • release: gate publication on full 1.0 qualification by @godofecht in #699
  • docs: close the Flow 1.0 executable-documentation debt by @godofecht in #703
  • selfhost: port pure eBPF target checks to Flow by @godofecht in #705
  • selfhost: port Field DSL lexical core to Flow by @godofecht in #707
  • selfhost: port ordering provenance core to Flow by @godofecht in #706
  • release: sync final main into 1.0.0 candidate by @godofecht in #708
  • release: prepare Flow 1.0.0 by @godofecht in #704
  • selfhost: port overload matching policy to Flow by @godofecht in #709
  • selfhost: port Physics DSL parser primitives to Flow by @godofecht in #710
  • selfhost: add native multi-signature overload table by @godofecht in #713
  • selfhost: add minimal expression type classifier for overloads by @godofecht in #715
  • chore: sync expression classifier into type-name branch by @godofecht in #719
  • selfhost: add canonical AST type-name normalizer by @godofecht in #717
  • docs: make the complete version history canonical and visible by @godofecht in #752
  • fix(dsys): reject malformed matrices and preserve one-line main by @godofecht in #753
  • release: make patch release preparation reproducible by @godofecht in #755
  • release: prepare Flow 1.0.1 stabilization patch by @godofecht in #754

Full Changelog: v0.11.1...v1.0.1