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

Publish crates to crates.io #4735

Open
apollo-sturdy opened this issue Feb 14, 2024 · 13 comments
Open

Publish crates to crates.io #4735

apollo-sturdy opened this issue Feb 14, 2024 · 13 comments

Comments

@apollo-sturdy
Copy link

Currently prisma-client-rust depends on prisma-engines via git dependency which is not ideal due to dependency resolution as git dependencies in rust do not follow semver. In order for prisma-client-rust to be published on crates.io, the packages in prisma-engines would need to be published too.

@aqrln
Copy link
Member

aqrln commented Feb 14, 2024

Crates in this repo are considered internal, are not subject to semver and do not have a stable API surface. Is your request just about publishing all crates to crates.io as a distribution medium with no semver guarantees, or about actually maintaining separate versions of each crate, updating them according to semver and releasing them independently from the Prisma ORM release cycle? The former would be unlikely, the latter impossible.

@listepo
Copy link

listepo commented Mar 1, 2024

@aqrln I think we are not talking about everyone, but only those who have versions and are public

@janpio
Copy link
Contributor

janpio commented Mar 2, 2024

Which ones do you refer to then @listepo?

@aqrln
Copy link
Member

aqrln commented Mar 3, 2024

@listepo there are no public crates in this repo. quaint used to be public years ago but not anymore.

@listepo
Copy link

listepo commented Mar 3, 2024

@aqrln @janpio you could use a mono repository approach and publish all dependencies under a single version. What are the arguments not to do this? this would help the community better integrate your product into theirs.

@aqrln
Copy link
Member

aqrln commented Mar 3, 2024

@listepo what would be an example of such integration that publishing these crates would allow?

OP mentions Prisma Client Rust, but it depends on the fork of prisma-engines with a bunch of code changes, not the upstream repo, so it wouldn't help either way. What could help, I suppose, is publishing Prisma's database drivers forks and other crates from other repos that prisma-engines depend on to make publishing the fork easier, but it's a completely different request than publishing the prisma-engines crates.

As for your request, I could see this being useful if we had a frontend library crate with a relatively stable externally usable API, similar to query-engine-node-api but for Rust, but it doesn't exist right now.

@listepo
Copy link

listepo commented Mar 14, 2024

@janpio I like your idea, sounds like a plan, how difficult would it be to do? could this be added to the roadmap?

@listepo
Copy link

listepo commented Mar 14, 2024

I think this would partially help solve the problem #3106

@janpio
Copy link
Contributor

janpio commented Mar 14, 2024

I am not sure which idea you refer to.

@listepo
Copy link

listepo commented Mar 14, 2024

@janpio I could see this being useful if we had a frontend library crate with a relatively stable externally usable API, similar to query-engine-node-api but for Rust

@janpio
Copy link
Contributor

janpio commented Mar 14, 2024

Ah, that was from @aqrln, not me.

@listepo
Copy link

listepo commented Mar 14, 2024

@janpio @aqrln you have a very wonderful product, but the problem is that it is very tied to the node ecosystem, a lot of people would like to get the same thing for their stacks, but for now they have to do forks, etc., it’s a pain

@listepo
Copy link

listepo commented Mar 14, 2024

I think prisma could become a standard for databases like grpc, openapi and etc for api

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

No branches or pull requests

4 participants