Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unpin all non-stellar dependencies #1441

Merged
merged 2 commits into from
Aug 16, 2024
Merged

Unpin all non-stellar dependencies #1441

merged 2 commits into from
Aug 16, 2024

Conversation

leighmcculloch
Copy link
Member

@leighmcculloch leighmcculloch commented Jul 31, 2024

What

Unpin all non-stellar dependencies.

Why

We have had reports that the libs are difficult to integrate into other projects due to the rigid dependency requirements.

We ultimately need the dependencies to be pinned in stellar-core.

There's benefit to the tests in this repo running with the same dependencies as what core pins to.

There's benefits to stellar-rpc also using the same dependencies so as to decrease the chance that simulation runs with different behavior. Also, the same applies to the SDK for test behavior.

Pinning the deps were an easy way to keep the dependencies consistent everywhere, but it also makes it difficult for folks to use the env libraries.

Close #1351

Other things that need to happen

@graydon is making a tool to check that Cargo.lock files are using consistent versions where possible across the env repo, core repo, and we can also use that in the rpc repo. It won't be practical to expect contract devs to use it on their contract projects, so contract devs will be able to use whatever combination of dependencies and that's just a limitation.

Why not

We could say again that not doing this has greater benefits than allowing folks to more easily use the libraries in their own projects.

@leighmcculloch
Copy link
Member Author

Supersedes #1351

@leighmcculloch leighmcculloch added this pull request to the merge queue Aug 16, 2024
Merged via the queue into main with commit a54d997 Aug 16, 2024
16 checks passed
@leighmcculloch leighmcculloch deleted the unpin branch August 16, 2024 18:52
leighmcculloch added a commit that referenced this pull request Aug 20, 2024
### What
Unpin all non-stellar dependencies.

### Why
We have had reports that the libs are difficult to integrate into other
projects due to the rigid dependency requirements.

We ultimately need the dependencies to be pinned in stellar-core.

There's benefit to the tests in this repo running with the same
dependencies as what core pins to.

There's benefits to stellar-rpc also using the same dependencies so as
to decrease the chance that simulation runs with different behavior.
Also, the same applies to the SDK for test behavior.

Pinning the deps were an easy way to keep the dependencies consistent
everywhere, but it also makes it difficult for folks to use the env
libraries.

Close #1351

### Other things that need to happen

@graydon is making a tool to check that Cargo.lock files are using
consistent versions where possible across the env repo, core repo, and
we can also use that in the rpc repo. It won't be practical to expect
contract devs to use it on their contract projects, so contract devs
will be able to use whatever combination of dependencies and that's just
a limitation.

### Why not

We could say again that not doing this has greater benefits than
allowing folks to more easily use the libraries in their own projects.

(cherry picked from commit a54d997)
github-merge-queue bot pushed a commit to stellar/rs-soroban-sdk that referenced this pull request Aug 20, 2024
### What
Update soroban-env-* to 21.2.1

### Why
To get a release of soroban-sdk with the unpinning of deps in env:
- stellar/rs-soroban-env#1441
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.

2 participants