Renames LUX_-prefixed env vars to canonical, non-noisy forms across
genesis_config, blockchain, network, examples, tests, genkeys, server:
- LUX_MNEMONIC -> MNEMONIC
- LUX_PRIVATE_KEY -> PRIVATE_KEY
- LUX_KEYS_DIR -> KEYS_DIR
- LUX_BINARY_PATH -> BINARY_PATH
- LUX_NETWORK_TYPE -> NETWORK_TYPE (doc only)
- LUX_GPU_EVM -> GPU_EVM (doc only)
- LUX_GPU_WORKER_PID-> GPU_WORKER_PID
Also fixes an obvious infinite-recursion bug in
local/genesis_config.go::getMnemonic() that the previous LUX_MNEMONIC
fallback line had become — the helper now reads MNEMONIC then
LIGHT_MNEMONIC and returns. Without this fix, callers reaching the
fallback would have hung the process.
BREAKING: external callers (CI, dev scripts, operators) must update
env var names. Per CLAUDE.md no-backwards-compatibility rule, the old
forms are removed.
- Enhance genesis.go with LoadCanonicalGenesis for mainnet/testnet
- Add LoadGenesisForNetwork to load from external paths
- Improve snapshot.go with better incremental backup support
- Fix network ID handling in genesis_config.go (use constants.MainnetID not ChainID)
- Update API client interfaces for better type safety
- Fix server network handling for proper genesis selection
- Update dependencies to latest versions
- Update github.com/luxfi/keys v1.0.5 → v1.0.6
- Update github.com/luxfi/genesis v1.5.18 → v1.5.19
- Remove local replace directives for keys and genesis
- Use published package versions for reproducible builds
- Remove ledger-lux-go transitive dependency
- Fix Network ID vs Chain ID confusion in genesis_config.go
- Use constants.MainnetID/TestnetID instead of configs.ChainID
- Fix port base calculation for multi-network mode
- Add snapshot server functionality
- Update protobuf definitions with new RPC methods
- Add mnemonic test coverage
- Replace all direct go.uber.org/zap imports with github.com/luxfi/log
- Rename log variables to logger throughout codebase to avoid shadowing
the log package when using package-level functions like log.String, log.Err
- Remove local replace directives from go.mod (genesis, config)
- Bump version to 1.6.1
- Rename --subnet-evm-path flag to --evm-path
- Rename subnetEvmPath variable to evmPath
- Rename subnet-evm-genesis.json to evm-genesis.json
- Change VmName from "subnetevm" to "evm"
- Update all test configurations
Major changes:
- Rename SubnetSpec → ChainSpec/ParticipantSpec throughout codebase
- Rename BlockchainSpec → ChainSpec for full chain definitions
- Update all protobuf definitions with new naming
- Fix duplicate variable declarations from sed replacements
- Update copyright headers to BSD-3-Clause with SPDX identifiers
- Update github.com/luxfi/genesis to v1.5.6 (BLS signer keys)
The genesis v1.5.6 update adds:
- Initial stakers with BLS publicKey and proofOfPossession
- Initial allocations for local network testing
- Fixes "failed to load database state: not found" error
Build fixes:
- Fix api/mocks/client.go CChainAPI return type
- Fix local/node_test.go with build tag for integration tests
- Fix parameter name collisions (chainConfigs → pChainConfigs)
- Remove hardcoded genesis.EWOQKey dependency
- Add getDefaultKey() function to load keys from ~/.lux/keys
- Add keys.go module for key management (LoadOrGenerateKeys, GenerateVestingSchedule)
- Update genesis dependency to v1.2.7 (no embedded keys)
- Keys are never embedded in source code
Breaking: Applications must have keys in ~/.lux/keys or they will be auto-generated
- Fix genesis cChainGenesis parsing to handle both string and map formats
- Update tmpnet API usage for ReadNetwork, Start signatures
- Update import paths for renamed packages
- Fix type assertions and field access patterns
- Migrated from Subnet to Net terminology
- Fixed logging imports to use luxfi/log
- Updated metric and set package imports
- Added replace directives for local packages
- All binaries building successfully