Thanks for reporting! Please include a minimal reproduction when possible.
Area
- Tooling (CLI/formatter/test runner)
- Runtime / Core crates (stdlib/core/derive)
Summary
Expected: a released toolchain install should include all stdlib source files needed by zero-clone starter projects, so incan new hello, incan run, incan test, and incan build --release work outside a source checkout.
Actual: the v0.4.0-rc3 toolchain archive installs incan and incan-lsp, but incan test cannot load std.testing because stdlib/testing.incn is not present in the installed toolchain layout. The archive packager currently copies only bin/incan and bin/incan-lsp into the release archive, while runtime stdlib lookup expects an installed stdlib source root through installed layouts or INCAN_STDLIB_PATH.
Reproduction steps
- Install Incan v0.4.0-rc3 from the GitHub release toolchain archive on a clean machine.
- Ensure the installed
incan is on PATH.
- Run:
workdir="$(mktemp -d)"
cd "$workdir"
incan new hello --yes
cd hello
incan run
incan test
incan build --release
Output / logs
Created project 'hello' at hello
src/main.incn Entry point
tests/test_main.incn Starter test
incan.toml Project manifest
Run it: incan run
Test it: incan test
Release it: incan build --release
Cannot resolve source file for 'std.testing'; expected 'stdlib/testing.incn' under stdlib search roots.
Error parsing ./tests/test_main.incn: Failed to load std.testing marker semantics: could not locate std.testing source at relative path `stdlib/testing.incn`
The release packager currently stages only command binaries:
The installed package should also provide the stdlib source layout required by the runtime loaders, or set a packaged stdlib root consistently during installation.
Environment
OS: macOS
Rust: stable Rust installed by the v0.4 toolchain installer
Incan: 0.4.0-rc3
Command: incan new hello --yes, then incan run, incan test, and incan build --release
Thanks for reporting! Please include a minimal reproduction when possible.
Area
Summary
Expected: a released toolchain install should include all stdlib source files needed by zero-clone starter projects, so
incan new hello,incan run,incan test, andincan build --releasework outside a source checkout.Actual: the v0.4.0-rc3 toolchain archive installs
incanandincan-lsp, butincan testcannot loadstd.testingbecausestdlib/testing.incnis not present in the installed toolchain layout. The archive packager currently copies onlybin/incanandbin/incan-lspinto the release archive, while runtime stdlib lookup expects an installed stdlib source root through installed layouts orINCAN_STDLIB_PATH.Reproduction steps
incanis onPATH.Output / logs
The release packager currently stages only command binaries:
The installed package should also provide the stdlib source layout required by the runtime loaders, or set a packaged stdlib root consistently during installation.
Environment
OS: macOS
Rust: stable Rust installed by the v0.4 toolchain installer
Incan: 0.4.0-rc3
Command:
incan new hello --yes, thenincan run,incan test, andincan build --release