[racket-dev] experiment reorganizing the repo into packages
On 05/28/2013 03:44 PM, Sam Tobin-Hochstadt wrote:
> On Tue, May 28, 2013 at 5:14 PM, Matthew Flatt <mflatt at cs.utah.edu> wrote:
>>
>> I don't know whether the "-lib"/"-docs" split is worthwhile, but it's
>> part of erring on the side of breaking things apart. Maybe it makes
>> more sense to keep things together and rely on binary packaging to
>> reduce dependencies.
Would using binary packaging for that be more complicated?
It seems that not splitting the source would keep things simpler for
most developers, so I'd lean that way. But it's not a strong opinion.
> For Typed Racket, it seems worth it in one place, and isn't needed in
> another. For the core of TR, making it available without docs is
> useful. I'm less sure about the contents of `typed/*`. I suppose that
> will depend on whether those packages themselves ship with
> documentation.
For the core of TR, could the uses you're thinking about benefit just as
much from a binary-only core TR?
(I imagine you mean other packages like `math', which just use the TR
language, but I'm not sure.)
>> Also worth noting is that the "unstable" collection does not work
>> nicely as a package --- as should be expected. I created a few
>> "unstable-" packages and imagine many more, but I'm not sure that's the
>> right way to go.
>
> I think we should just make all of `unstable` go away as part of this
> transition. It was mostly a way to work around the monolithic nature
> of the collections tree, and thus has outlived its purpose.
That sounds right to me.
>> So, how does this split correspond to what you expected? (My guess is
>> that this far too fine-grained for some of us, while others will want
>> exactly this kind of flexibility.)
I expect `plot' to depend on `math' in the near-ish future. Right now,
`math' already depends on `plot' to build its docs. IOW, I expect the
sources to be interdependent, but as binaries, `plot' will depend on
`math' but `math' won't depend on `plot'. Can the package system handle
that, or will I have to merge the two or factor out a common parent?
If the package system won't handle it, I'd rather have both the `plot'
and the `math' collections in a single `math' package.
Neil ⊥