Skip to content

Release 2.0.0 - #59

Merged
grayfoxd merged 29 commits into
mainfrom
release_2.0.0
Oct 28, 2026
Merged

grayfoxd merged 29 commits into
mainfrom
release_2.0.0

Conversation

@grayfoxd

@grayfoxd grayfoxd commented Oct 27, 2026 •

Copy link
Copy Markdown
Contributor

This PR replaces the legacy Sunhat Hardhat plugin with a standalone CLI supporting Hardhat 2 and Foundry projects on EVM and TRON. Sunhat handles project setup, toolchain selection, and command routing while leaving compilation, testing, and deployment execution to the selected framework.

Add sunhat.toml to bind each project to a framework and target.
Add project scaffolding and adoption through sunhat init, defaulting to Foundry/TRON.
Forward native commands and arguments directly to project-local framework executables.
Add Foundry toolchain installation, archive SHA-256 verification, and executable integrity checks.
Add EVM/TRON templates with sample contracts, tests, deployment scripts, and setup documentation.
Preserve child-process output, exit codes, and termination signals.
Replace the previous test setup with CLI routing and initialization coverage.
Breaking changes

Rename the npm package from @sun-protocol/sunhat to sunhat.
Remove the sunhat hardhat ... and sunhat foundry ... namespaces.
Remove legacy plugin APIs, deployment management, verification/audit integrations, bundled proxy artifacts, and Vyper integration.
Remove the bundled VS Code extension and Docker development-image publishing workflow.
Validation

All test has passed。
Generated Hardhat/EVM project compiled and passed its test.
Generated Hardhat/TRON project compiled successfully.
Pinned Foundry/TRON toolchain installed, compiled the template, passed both tests, and simulated the deployment script.
Outstanding review items

Windows executable naming, cross-filesystem installation, npm packaging build hooks, immutable TRON release URLs, and generated Hardhat TypeScript compatibility require fixes before release.

This PR restores the Sunhat v2.0.0 changes originally introduced in #55 and reverted by #58, including the latest fixes and lint/formatting improvements. See #55 for the original implementation discussion, review comments, and design context.

Configure ESLint and Prettier, format source and templates, and run style checks in CI. Synchronize scoped package metadata and the lockfile.
Install and verify Foundry during init using template-owned release data. Remove runtime digest checks, the check command, and unused binary hash records while keeping legacy locks readable.
Improvement of Engineering Quality
Share executable validation across adapters and preserve dangling configuration entries during discovery. Make project initialization synchronous and constrain runtime configuration types.

Add regression coverage for invalid executables, internal symlinks, filesystem-root scopes, and dangling configuration files.
refactor: tighten CLI types and toolchain path handling
@grayfoxd
grayfoxd merged commit 419ba1f into main Oct 28, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant