Repository navigation
Releases
Nerv 1.0.0
Nerv 1.0.0
Nerv 1.0.0 adds self-contained compiler distributions and native installers. Installed compilers include LLVM, their linker, and target link support. Ordinary local Nerv projects compile without separately installing Rust, Visual Studio, a Windows SDK, Xcode, GCC, or Clang. Generated applications run without Nerv or LLVM installed.
Downloads
| Platform | Downloads | Minimum system |
|---|---|---|
| Windows x64 | Unsigned per-user setup EXE and portable ZIP | Windows 10 with UCRT |
| macOS arm64 | Unsigned installer PKG and portable ZIP | macOS 15 |
| Linux x64 | Portable tar.gz | glibc 2.39 |
The release manifest records final artifact hashes, source commit, producer versions, and signing status. Verify downloads against SHA256SUMS and read the installation instructions.
Windows and macOS builds are unsigned. The macOS package is not Apple-notarized; normal operating-system checks for downloaded software still apply. Installer filenames explicitly include unsigned.
Windows setup offers user PATH integration and an uninstaller. macOS installs versioned payloads and a managed public symlink; its bundled uninstall script preserves files outside the installed-file inventory. Linux downloads require extraction only.
Language and library
The compiler supports content-based string equality, qualified module namespaces, capturing closures, nested early returns, break/continue, and Result/Option propagation with ?. The standard library includes text formatting/parsing, structured I/O errors, paths, growing buffers, string-keyed hash maps, allocation scopes, and cooperative tasks/cancellation. JSON, HTTPS, and WebSocket support are native runtime features.
Project commands include new, check, test, run, build, and fmt. The compiler embeds its standard library and prebuilt runtime; compilation does not invoke Cargo on the user's machine.
Compatibility policy
Starting with 1.0.0, documented language behavior, public standard-library interfaces, project/lockfile formats, and documented CLI commands/options follow Semantic Versioning. Backward-compatible fixes use PATCH releases; backward-compatible additions use MINOR releases; incompatible public changes require a MAJOR release. Reserved or explicitly unsupported language constructs are outside the supported contract.
Generated LLVM IR, internal runtime symbols, object-cache formats, and compiler diagnostics wording are implementation details. Mixing objects or embedded runtime archives from different compiler builds is unsupported; rebuild applications from source with the selected compiler. Generated applications retain their documented operating-system dependencies.
Validation
The distribution implementation passed 206 workspace tests on each initial native target. Portable tests cover extraction, relocation into spaces/Unicode paths, symlink invocation on Unix, standalone execution, and explicit broken-toolchain failures. Installer tests cover payload identity, installation/reinstallation, uninstall, PATH integration on Windows, and preservation of project files. Linux portables were additionally checked offline on Ubuntu 24.04, Debian trixie, and Fedora 43 without development tools.
Version 1.0.0 artifacts are rebuilt and verified from the release commit before publication. Artifact signing status is stated explicitly in the release manifest and release notes.
Source commit: 96e4d32.
Signing status: macos-arm64, windows-x64 builds are unsigned. The macOS package is not Apple-notarized. Installer filenames include unsigned; full signing details are in release-manifest.json.
Nerv 0.1.0-alpha.1
Nerv 0.1.0-alpha.1
Project tooling is now available through nerv new, run, build, check, test, and fmt.
Nerv.tomldescribes applications, libraries, and local path dependencies.Nerv.lockrecords deterministic resolution and manifest checksums;--lockedenforces it.- Project applications forward program arguments and return integer main values modulo 256 as exit codes.
- LLVM object caching fingerprints compiler, libraries, loaded source contents, lock resolution, build options, and native CPU features. Every build still invokes the native linker.
- The formatter preserves comments and token structure and supports
--check. - Compiler archives bundle LLVM, runtime/standard library support, documentation, and notices. The native linker/build tools are still required to build applications.
Windows x64 was validated locally with 177 passing workspace tests and an extracted-package project smoke test. The Apple Silicon archive passed the full workspace suite, three packaging regression tests, and packaged-compiler smoke tests in CI. The Windows archive passed the full suite and package/installer smoke tests locally; an additional hosted Windows bootstrap/check is still running. Linux and Intel macOS have no prebuilt packages in this release.
Existing nerv file.nerv --run and nerv build file.nerv retain their historical printed-result behavior. Use project commands or nerv run file.nerv -- args for process semantics. Dependency imports currently share the language's global symbol namespace. Test isolation is per source file. Collections, generics, runtime ownership, and other alpha language limits are documented in the bundled guides.