Brightspace / rules_csharp

Bazel rules for C#
Apache License 2.0
8 stars 5 forks source link

Simplify docs generation #118

Closed j3parker closed 4 years ago

j3parker commented 4 years ago

The first commit has the interesting changes, the next commit is just fiddling with the labels.

jrbeverly commented 4 years ago

I'm not sure what this is simplifying as it just seems to remove more granular component of the bzl_srcs pattern. If we have just a top level bzl_srcs, then we can only perform rules on all *.bzl files.

For something like stardoc, this works fine as it operates on the whole tree, but if we wish to work more granular, we would need to rollback these changes selectively.

j3parker commented 4 years ago

Yeah, I can't think of why we'd want that granularity though. Did you have a use-case in mind?

Having so many targets and packages is confusing - that's what I'm simplifying :) I noticed this when I went to add docs to rules_brotli.

jrbeverly commented 4 years ago

I don't have an exact use-case at the moment, as I've just started poking around the idea of having //tools that allows us to perform modifications / generations of the source. So I'll just perform a dump of some things I have been thinking in that area:

The current model is a bit of 'future-planning' for 'what-if' futures, but since the overhead of adding new packages involves changing a bunch of file references, I'd prefer to keep it with this pattern

note: the use case for bazel_tools is a bit different from us, as we have a public API, and they have an open API.

j3parker commented 4 years ago

Ok, then let's keep it simple for now. YAGNI etc.

I'm not sure how all these extra packages and targets would help with any of those ideas.

j3parker commented 4 years ago

I'm merging this because I want to avoid a merge conflict.