-
Notifications
You must be signed in to change notification settings - Fork 0
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
Add workflows that publish to JSR #19
base: main
Are you sure you want to change the base?
Conversation
This reverts commit efa5731.
@@ -1,4 +1,4 @@ | |||
import { run, sleep, spawn, type Task } from "effection"; | |||
import { run, sleep, spawn, type Task } from "npm:effection@3.0.3"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If we hard code to effection v3.0.3 in the import map, shouldn't this just be "effection"
?
@@ -11,7 +11,7 @@ import { | |||
spawn, | |||
type Task, | |||
useScope, | |||
} from "effection"; | |||
} from "npm:effection@3.0.3"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same as above. We updated the import map, but then we aren't using it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I added the import map because scopes can only be defined in root - it was needed to specify effection dependency for the files imported from the effection website. I'm thinking that I should publish those dependencies from the effection website to JSR instead. What do you think?
@taras How is "when to publish" handled? In our other repos, we look for the appearance of a tag matching a pattern. Does JSR automatically handle idempotent publishes? I.e. if you publish twice with the same version number, it's just a no-op? |
Yes, it does. It's a no-op for already published versions. |
Is it worth tagging each module? Or is the idea that we're a little more fast and loose. |
can we tag individual modules? |
We could if we wanted to, and since we'll be releasing different versions of different modules, it would be nice to have a |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we want to publish on tag pushes, not main, right? I.e. cache-v1.0.0
Also, we need to replicate to npm somehow. That's going to be critical to providing access to the ecosystem. We don't have to do it in this PR, but we should figure out how it's going to work. |
Might be able to use this to publish to NPM https://github.com/ryoppippi/mirror-jsr-to-npm
|
This looks like almost exactly what we need. It has a tag publish, then to jsr, then to npm. One thing though is that for node shims we may still need to have a DNT step....
|
Motivation
We want our packages to be available from JSR and other repositories.
Approach
Configure to publish each public workspace to JSR using the a GitHub Workflow