forked from solana-labs/solana
-
Notifications
You must be signed in to change notification settings - Fork 659
Open
Description
Lays out a formalized plan on top of anza-xyz/devops#96 to decouple dependencies within Agave in order to free up the SVM crates to be migrated to a new repository.
Related Agave pull requests will link here for tracking.
Crates to Migrate
solana-svm
├── Core SVM Components
│ ├── solana-svm-callback
│ ├── solana-svm-conformance
│ ├── solana-svm-feature-set
│ └── solana-svm-transaction
├── Program Loaders
│ ├── solana-bpf-loader-program
│ └── solana-loader-v4-program
├── Program Runtime
│ ├── solana-program-runtime
│ └── solana-transaction-context
└── Infrastructure
├── solana-log-collector
├── solana-timings
└── solana-type-overrides
Infrastructure Crates to Fork
These 2 infrastructure crates will be forked with minimal, SVM-specific implementations.
These crates will be private/internal to the new SVM repo and will not be used by Agave.
... (continued from above)
└── Forked Infrastructure
├── svm-measure (fork of solana-measure)
└── svm-metrics (fork of solana-metrics)
SVM Examples Removal
There's really no need to keep the examples in svm/examples
around anymore.
Dev-Dependencies Removal
The SVM tests currently depend on Agave-specific crates that need to be replaced
with mock implementations.
agave-reserved-account-keys
agave-feature-set
agave-syscalls
After these steps, the listed SVM crates can be successfully extracted into a new repository.
- Delete
svm/examples
- Rename
solana-log-collector
tosolana-svm-log-collector
- Rename
solana-timings
tosolana-svm-timings
- Rename
solana-type-overrides
tosolana-svm-type-overrides
- Create fork
solana-svm-measure
- Create fork
solana-svm-metrics
- Dev-dependencies: remove
agave-reserved-account-keys
- Dev-dependencies: remove
agave-feature-set
- Dev-dependencies: remove
agave-syscalls
sonicfromnewyoke
Metadata
Metadata
Assignees
Labels
No labels