You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is a response to issues like #32503 -- the upgrade to 1.16 was very painful for program developers because of the breaking changes between 1.14 and 1.16.
Since then, we've introduced more breaking changes into the SDK with #32524
To make the developer experience better, we have to properly version the sdk crates.
Proposed Solution
The options are either to move the sdk out of the monorepo, or version the sdk crates separately within the monorepo. The second option can get us into tricky situations if we ever need to backport a breaking change in the sdk. There isn't a desire to bump major versions in all the core crates on breaking changes just yet, but that will probably impact much fewer people. Because of all that, we'll opt for the first path: moving the sdk out of the monorepo!
Here's the list of tasks:
move unnecessary types out of the SDK and into other core crates (ie. Packet)
create new repo with solana-program, solana-sdk, solana-sdk-macro, solana-frozen-abi, and solana-frozen-abi-macro.
setup CI for version bumps + crate publish. No other jobs seem to be needed.
bump the new repo to 2.0.0 and publish the crates
add a changelog to the new repo, at least for breaking changes
add a patch script to the monorepo for easy local development
move the monorepo to use the new 2.0.0 crates, remove all the SDK code
have fewer people yelling on twitter X
Hopefully this will go quite quickly, and we won't have to rebase on monorepo changes too much during the transition period. But if we have to, c'est la vie !
Problem
This is a response to issues like #32503 -- the upgrade to 1.16 was very painful for program developers because of the breaking changes between 1.14 and 1.16.
Since then, we've introduced more breaking changes into the SDK with #32524
To make the developer experience better, we have to properly version the sdk crates.
Proposed Solution
The options are either to move the sdk out of the monorepo, or version the sdk crates separately within the monorepo. The second option can get us into tricky situations if we ever need to backport a breaking change in the sdk. There isn't a desire to bump major versions in all the core crates on breaking changes just yet, but that will probably impact much fewer people. Because of all that, we'll opt for the first path: moving the sdk out of the monorepo!
Here's the list of tasks:
Packet
)solana-program
,solana-sdk
,solana-sdk-macro
,solana-frozen-abi
, andsolana-frozen-abi-macro
.twitterXHopefully this will go quite quickly, and we won't have to rebase on monorepo changes too much during the transition period. But if we have to, c'est la vie !
cc @willhickey for CI and publishing jobs, @jacobcreech for devrel stuff
The text was updated successfully, but these errors were encountered: