Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: purescript/purescript-st
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: fc2fe29
Choose a base ref
...
head repository: purescript-lua/purescript-lua-st
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: ef28d54
Choose a head ref
  • 9 commits
  • 29 files changed
  • 3 contributors

Commits on Apr 23, 2023

  1. Lua

    Unisay committed Apr 23, 2023
    Configuration menu
    Copy the full SHA
    25962be View commit details
    Browse the repository at this point in the history

Commits on Mar 29, 2024

  1. Wrapped foreigns

    Unisay committed Mar 29, 2024
    Configuration menu
    Copy the full SHA
    efa77c2 View commit details
    Browse the repository at this point in the history

Commits on Mar 30, 2024

  1. Configuration menu
    Copy the full SHA
    3c56436 View commit details
    Browse the repository at this point in the history

Commits on Jun 14, 2026

  1. feat: bring st to the canon and add ST unit tests

    Migrate purescript-lua-st off the JavaScript-era tooling onto the
    package-set canon: an overlay flake (purs 0.15.16, spago 0.21.0, Lua 5.1,
    pslua at the current main), hardened CI, scripts/build, AGENTS.md and
    CLAUDE.md, a clean .gitignore, and the org package-set URL. Drop the
    .eslintrc, package.json and the JavaScript FFI files.
    
    Add a systematic test suite: spago-test.dhall compiles test/Main.purs to
    dist/test.lua through pslua and scripts/test runs it under Lua 5.1. It
    covers STRef new/read/write/modify/modify', ST.run recursion, ST.for
    (hi-exclusive, lo-inclusive, empty range), ST.while and ST.foreach.
    
    Fixes surfaced by the new tests and luacheck: ST.for looped over an
    inclusive upper bound (for i = lo, hi) though the contract is
    hi-exclusive, so it ran one extra iteration -- corrected to hi - 1.
    Declare the effect dependency that Control.Monad.ST.Global needs, and
    wrap an over-long line in the Uncurried FFI so luacheck passes.
    Unisay committed Jun 14, 2026
    Configuration menu
    Copy the full SHA
    1e40a04 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #1 from purescript-lua/chore/canon-and-tests

    feat: bring st to the canon and add ST unit tests
    Unisay authored Jun 14, 2026
    Configuration menu
    Copy the full SHA
    850429c View commit details
    Browse the repository at this point in the history
  3. chore: add treefmt formatting (nix fmt) and format the tree

    Wire treefmt via treefmt-nix: nixfmt, dhall format, purs-tidy (.tidyrc.json)
    and LuaFormatter for the FFI (.lua-format, kept over StyLua because it
    preserves the parentheses pslua's parser needs). `nix fmt` formats; the dev
    shell installs a content-based pre-commit hook and CI runs
    `nix fmt && git diff --exit-code` (content-based, since the in-place
    formatters bump mtime and would trip treefmt --fail-on-change). Lua lines
    budget 130 cols, matching the raised `luacheck --max-line-length`. The bulk
    of the diff is the first format pass.
    Unisay committed Jun 14, 2026
    Configuration menu
    Copy the full SHA
    438e507 View commit details
    Browse the repository at this point in the history

Commits on Jun 15, 2026

  1. Merge pull request #2 from purescript-lua/chore/treefmt

    chore: add treefmt formatting (nix fmt + pre-commit + CI check)
    Unisay authored Jun 15, 2026
    Configuration menu
    Copy the full SHA
    b73b949 View commit details
    Browse the repository at this point in the history
  2. chore: harden pre-commit hook (tracked .githooks/ + core.hooksPath)

    Replace the dev-shell installer that wrote .git/hooks/pre-commit with a
    tracked .githooks/pre-commit wired via `git config core.hooksPath .githooks`.
    
    Fixes three issues with the old hook: it gated on `[ -d .git ]` (false in
    worktrees/submodules where .git is a file), it clobbered any existing
    .git/hooks/pre-commit on every `nix develop`, and `nix fmt … || exit 0`
    swallowed real formatter failures. The new hook skips only when `nix` is
    absent (CI is the authoritative gate) and otherwise blocks on a `nix fmt`
    failure or reformat.
    Unisay committed Jun 15, 2026
    Configuration menu
    Copy the full SHA
    6d41fd2 View commit details
    Browse the repository at this point in the history
  3. chore: bump pslua dev input to 62e3653

    Toolchain consistency: pin the pslua dev flake input to the current
    compiler main across the ecosystem. flake.lock only; the package set
    consumes sources + FFI, not this dev input, so no re-tag is needed.
    Unisay committed Jun 15, 2026
    Configuration menu
    Copy the full SHA
    ef28d54 View commit details
    Browse the repository at this point in the history
Loading