Logistics of splitting the repository #4140
Replies: 11 comments 41 replies
-
http4s-bench could, like, scatter. Projects could have their own mdoc sites. "Integration" docs are tricky, if we want to show an end-to-end example of a server backend, some middlewares, and a JSON codec. The docs project currently depends on the kitchen sink. Examples projects have the same conundrum. Scalafix is, um, split into the fixed modules? |
Beta Was this translation helpful? Give feedback.
-
|
Beta Was this translation helpful? Give feedback.
-
Edit: September-November 2020, Scala 2.12 and 2.13:
Analysis to follow. |
Beta Was this translation helpful? Give feedback.
-
Ember has a volunteer if that was not obvious. |
Beta Was this translation helpful? Give feedback.
-
I don't know whether this has already been discussed, but what about publishing the abstract testing stuff which is currently |
Beta Was this translation helpful? Give feedback.
-
I expect our first Dotty milestone to be ready within the next few days, and I don't expect Twirl or Scalatags to have a release. We're going to need to figure out what to do about those real soon. |
Beta Was this translation helpful? Give feedback.
-
I'm curious how the new JS-only modules will fit into this. Namely:
Why they should stay in the main repo:
Why they should leave:
|
Beta Was this translation helpful? Give feedback.
-
For http4s-servlet, I ran: $ git filter-repo --force --path servlet --path testing --path examples/src --path examples/war --replace-message ../expressions.txt To rewrite PR references, I used this #==>http4s/http4s# With the result on remote branch $ git merge --allow-unrelated-histories core/filtered And then I copied relevant parts of the build. |
Beta Was this translation helpful? Give feedback.
-
One thing we missed was changes from 0.23 -> 1.0 in the spun off repos. Those changes are lost and not currently in a cherry-pickable form. Blaze is going to be the worst of these. I'll try to figure out a pattern and post it here. |
Beta Was this translation helpful? Give feedback.
-
Several of these ancillary repos are starting to get an 0.23 and a 1.0 branch. I know we've done work to versioned docs, but I am not sure on the details. We need to figure out whether to set that up, or just pick a documented branch. |
Beta Was this translation helpful? Give feedback.
-
I'm releasing http4s-scala-xml off main before releasing off series/0.23. This defeats our "linearized releases" strategy to dedupe the changelog. Maybe that's okay. |
Beta Was this translation helpful? Give feedback.
-
We've long discussed spinning off integrations into their own repositories. We have precedents in jdk-http-client, netty, finagle, and armeria, each of which began life separately.
We are facing new pressure to split off modules already here:
A problem for users is that most http4s modules currently have version, and now patch versions will vary. (imagine http4s-circe-0.22.3 on http4s-core-0.22.5). This hasn't been a problem for http4s-jdk-http-client users. Doing this in 0.21 would be traumatic, but starting in 0.22 and 1.0, we might be able to document our way out of it.
A hassle for us is that series/0.21, for as long as it's maintained, will stop merging cleanly to series/0.22 and beyond.
A huge benefit for us is that integrations can sink or swim on contributor interest. Does anybody still care about http4s-json4s? Help merge Scala Steward requests! Does nobody care? Let it stagnate!
I propose this points to splitting shortly before the v0.22.0-RC cycle, and a major curtailing of maintenance activity on series/0.21 at the same time. And integrations that don't support Dotty when everything else does may go first.
Beta Was this translation helpful? Give feedback.
All reactions