On Fri, May 2, 2025 at 6:46 AM Mick Semb Wever <m...@apache.org> wrote:
> But layering in the ability to do it with docker is opposed to requiring > the use of docker. i.e. I don't think we should make docker mandatory > inside `ant check`. > I think if you don't have docker it could be reasonable not to build the docs as part of ant check (the golang part of gen-doc could be skipped). Docker is fairly standard build tooling these days since it obviates the need to have the right versions of things on peoples systems (e.g. golang or python). > There are two possible paths forward > option 1) remove the auto-install, and just print the command the user > needs to run to do the install, and/or how to skip that target. > option 2) build on Maxim's contribution to rewrite it to > python+virtualenv+jinja > I don't object to #2, but once you start talking about virtualenv and python libraries you may want to be building that via docker as well as libraries often have minimum requirements of python versions. > With option (2) i feel it would be a shame that the original work in > https://github.com/apache/cassandra-website/tree/trunk/cqlprotodoc from > our newly joined gocql community would be redone. I can only hope they > understand and appreciate this *is* their work being carried forward, and > our legitimate reasons for the golang to python rewrite (i.e. there's > nothing against golang in the community). (I've cc'd them.) > > Otherwise, I'm entirely on the fence – all ears. Slightly leaning towards > option (1). > Is there an option 3? gen-doc (specifically the part that uses golang) requires docker, and if you don't have docker that component of the docs is skipped? That seems to move towards a possible world where we could move towards just one build requirement (docker) instead of 10? If you feel strongly we should always try first with native and only ask people to use docker if their system isn't running the right versions then 1 seems better to me given we have existing functional code and the official builds would have golang available. -Joey