Thanks Chia-Ping. I have updated
<https://cwiki.apache.org/confluence/display/KAFKA/KIP-1133%3A+AK+Documentation+and+Website+in+Markdown#KIP1133:AKDocumentationandWebsiteinMarkdown-DevelopmentWorkflow>
the KIP to include the above information.

Regards,
Harish


On Sun, Mar 9, 2025 at 10:09 PM Chia-Ping Tsai <chia7...@gmail.com> wrote:

> hi Harish
>
> > Hugo supports live-reload. The docsy theme has dependencies on golang and
> a
> couple of nodeJS libraries (autoprefixer, postcss etc.,) and as such it
> will be simpler to use docker based workflows to avoid having to install
> any dependencies locally for development (ref:
>
> https://github.com/hvishwanath/kafka-site-md/blob/main/README.md#local-development-server
> ). We can set up CI pipelines to build and push production images serving
> the site with nginx.
>
> Thank you for the explanation. Would you please consider including this
> information in the KIP? Documenting the new workflow for reviewing
> documentation would be very beneficial for future reference. In fact, we
> recently resolved a bug where the local site's behavior differed from the
> deployed version on Apache ...
>
> Best,
> Chia-Ping
>
> Harish Vishwanath <harish.shas...@gmail.com> 於 2025年3月10日 週一 下午12:51寫道:
>
> > Thank you Chia-Ping.
> >
> > Conversion is mostly automated ( https://github.com/hvishwanath/ak2md )
> > and
> > as such the prototype
> > <https://kafka-site-md-711970345036.us-central1.run.app/> supports all
> > previous versions. However, not having to support all previous versions
> > will definitely be simpler.
> >
> > Hugo supports live-reload. The docsy theme has dependencies on golang
> and a
> > couple of nodeJS libraries (autoprefixer, postcss etc.,) and as such it
> > will be simpler to use docker based workflows to avoid having to install
> > any dependencies locally for development (ref:
> >
> >
> https://github.com/hvishwanath/kafka-site-md/blob/main/README.md#local-development-server
> > ). We can set up CI pipelines to build and push production images serving
> > the site with nginx.
> >
> > Regards,
> > Harish
> >
> >
> > On Sun, Mar 9, 2025 at 9:08 PM Chia-Ping Tsai <chia7...@gmail.com>
> wrote:
> >
> > > hi Harish
> > >
> > > I have to say, this KIP is one of the best ideas I've seen recently,
> and
> > I
> > > agree with Matthias that we don't need to translate any older
> versions. I
> > > truly hope this KIP can be included in 4.0.
> > >
> > > I have a quick question: what is the recommended procedure for testing
> > the
> > > site locally after migrating to Markdown? Previously, we used a
> container
> > > to host the site locally for previewing changes. Could you please
> provide
> > > guidance on the updated workflow?
> > >
> > > Best,
> > > Chia-Ping
> > >
> > > Harish Vishwanath <harish.shas...@gmail.com> 於 2025年3月10日 週一
> 上午11:53寫道:
> > >
> > > > Hello all
> > > >
> > > > Sorry for my delayed response. Thanks for your feedback and comments.
> > > > Please see below:
> > > >
> > > > > Do you plan to have a development version of the website online in
> > > > parallel to the old HTML version?
> > > > Yes. The current prototype which supports all versions until AK 3.9
> is
> > > > running at https://kafka-site-md-711970345036.us-central1.run.app/,
> > the
> > > > prototype
> > > > <
> > > >
> > >
> >
> https://cwiki.apache.org/confluence/display/KAFKA/KIP-1133%3A+AK+Documentation+and+Website+in+Markdown#KIP1133:AKDocumentationandWebsiteinMarkdown-Prototype
> > > > >
> > > > section of the KIP has more details. We should be able to host this
> in
> > > ASF
> > > > infra. Further, as described in the KIP
> > > >
> > > > >I understand that locally with the markdown files and an markdown
> > > editor,
> > > > we see the rough structure of the docs (which is already an
> > improvement),
> > > > but we will not see the end product, because for that we again need a
> > web
> > > > server.
> > > > Hugo supports live reload making local development easier (ref:
> > > > https://github.com/hvishwanath/kafka-site-md/blob/main/Makefile#L25)
> > > >
> > > >
> > > > [MM1] Yes., I have ensured that all existing auto generated
> > > documentations
> > > > (html files under javadoc, generated folders) are available at the
> same
> > > > relative location as they are in the current website. You can see
> this
> > in
> > > > the prototype.
> > > > For example:
> > > >
> > > >
> > >
> >
> https://kafka.apache.org/39/javadoc/org/apache/kafka/clients/consumer/ConsumerConfig.html#main(java.lang.String%5B%5D)
> > > > is
> > > > available at
> > > >
> > > >
> > >
> >
> https://kafka-site-md-711970345036.us-central1.run.app/39/javadoc/org/apache/kafka/clients/consumer/ConsumerConfig.html#main(java.lang.String%5B%5D)
> > > > <
> > > >
> > >
> >
> https://kafka-site-md-711970345036.us-central1.run.app/39/javadoc/org/apache/kafka/clients/consumer/ConsumerConfig.html#main(java.lang.String%5B%5D)
> > > > >
> > > > Furthermore, for production, we can serve this with a full blown web
> > > server
> > > > such as nginx allowing us to set up any required redirects.
> > > >
> > > > [MM2] I recommend that we leave any auto generated documentation to
> > > > continue to be in HTML format. We can serve them as static assets
> (ref:
> > > > https://github.com/hvishwanath/kafka-site-md/tree/main/static)
> > > >
> > > > >I am also in favor of having easy access to `trunk / SNAPSHOT`
> version
> > > of
> > > > the docs if possible.
> > > > Yes, this is definitely possible.
> > > >
> > > >
> > > > Regards,
> > > > Harish
> > > >
> > > >
> > > > On Sat, Mar 1, 2025 at 3:01 PM Matthias J. Sax <mj...@apache.org>
> > wrote:
> > > >
> > > > > Hi,
> > > > >
> > > > > I am totally in favor to make this happen, and I was disappointed
> > each
> > > > > time in the past, when it was proposed but we did not do it.
> > > > >
> > > > >
> > > > >
> > > > > Given that it is a huge effort, I am wondering if it would be
> > > sufficient
> > > > > to just to this change for 4.0 release though, and not translate
> any
> > > > > older versions at all?
> > > > >
> > > > >
> > > > > For including the docs in the release, I am actually wondering what
> > the
> > > > > value is? Does anybody actually use these artifact? Of course, we
> > need
> > > > > to publish JavaDocs, but the content of the web page seems to have
> > very
> > > > > low value to the community? -- I did also check ASF guidelines
> about
> > it
> > > > > and the webpage [1] say:
> > > > >
> > > > > > This material may include documentation concerning the release
> > [...]
> > > > >
> > > > > So it is optional, but not required to publish docs artifacts from
> my
> > > > > understanding. I have no objections to keep publishing the web page
> > > > > docs, just saying, if the effort is too large and the value to low,
> > we
> > > > > could consider just dropping it.
> > > > >
> > > > >
> > > > > I am also in favor of having easy access to `trunk / SNAPSHOT`
> > version
> > > > > of the docs if possible. Some other ASF project do this already,
> for
> > > > > example Flink [2]. It's much easier to work with, and allows to
> spot
> > > > > issues during development. While it does not help on a PR directly,
> > it
> > > > > is still a good way to verify a PR after it was merged, so any
> errors
> > > > > can be detected and corrected more easily.
> > > > >
> > > > >
> > > > > Also agree to the other raised points about generated content and
> > > > > permalinks. For permalinks, if effort is reasonable, I would rather
> > try
> > > > > to redirect as many as possible.
> > > > >
> > > > >
> > > > >
> > > > > -Matthias
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > [1]
> > > > >
> > > >
> > >
> >
> https://www.apache.org/legal/release-policy.html#distribute-other-artifacts
> > > > > [2] https://nightlies.apache.org/flink/flink-docs-master/
> > > > >
> > > > >
> > > > > On 2/25/25 8:43 AM, David Arthur wrote:
> > > > > > MM1: I suspect Hugo has some way of doing url redirection, but at
> > the
> > > > > very
> > > > > > least we can add redirects in our htaccess file
> > > > > > https://github.com/apache/kafka-site/blob/asf-site/.htaccess
> > > > > >
> > > > > > Excluding the "front matter" (intro, quickstart, powered by,
> etc) I
> > > > think
> > > > > > the main links we need to worry about are the configuration docs
> > > pages.
> > > > > In
> > > > > > the demo, it looks like we are using the same anchors for
> specific
> > > > config
> > > > > > sections.
> > > > > >
> > > > > > E.g.,
> > > > > >
> > > > >
> > > >
> > >
> >
> https://kafka-site-md-711970345036.us-central1.run.app/39/configuration/configuration/#topicconfigs_compression.gzip.level
> > > > > > is the same content as
> > > > > >
> > > > >
> > > >
> > >
> >
> https://kafka.apache.org/documentation/#topicconfigs_compression.zstd.level
> > > > > >
> > > > > > So maybe it shouldn't be too hard?
> > > > > >
> > > > > > Personally, I think the only links we should consider to be
> > > > "permalinks"
> > > > > > are the front matter and the documentation pages with the version
> > in
> > > > the
> > > > > > URL. The unversioned documentation pages (like
> > > > > >
> > > > >
> > > >
> > >
> >
> https://kafka.apache.org/documentation/#topicconfigs_compression.zstd.level
> > > > > )
> > > > > > can change from release to release, so they are not expected to
> be
> > > > > > permanent.
> > > > > >
> > > > > > Do we have any data on inbound links to the site? Maybe from
> Google
> > > > > > Analytics or similar?
> > > > > >
> > > > > > -David A
> > > > > >
> > > > > >
> > > > > >
> > > > > > On Mon, Feb 24, 2025 at 10:17 AM Mickael Maison <
> > > > > mickael.mai...@gmail.com>
> > > > > > wrote:
> > > > > >
> > > > > >> Hi Harish,
> > > > > >>
> > > > > >> This is definitively something we want to do!
> > > > > >>
> > > > > >> MM1. One aspect to keep in mind in terms of compatibility is
> > whether
> > > > > >> existing links will still work. Thousands of online resources
> link
> > > to
> > > > > >> the Apache Kafka website. Is it possible to keep all links
> > working?
> > > > > >>
> > > > > >> MM2. A bunch of sections are generated. To do so we have a
> number
> > of
> > > > > >> classes in the public API (for example 0, 1) with toHtml() or
> > main()
> > > > > >> methods that output HTML. Should we update these to output
> > Markdown
> > > > > >> directly instead?
> > > > > >>
> > > > > >> Converting the website has been discussed several times, I'd
> > suggest
> > > > > >> checking at least
> > https://issues.apache.org/jira/browse/KAFKA-2967
> > > to
> > > > > >> see what was previously said.
> > > > > >>
> > > > > >> 0:
> > > > > >>
> > > > >
> > > >
> > >
> >
> https://kafka.apache.org/39/javadoc/org/apache/kafka/common/config/ConfigDef.html#toHtml()
> > > > > >> 1:
> > > > > >>
> > > > >
> > > >
> > >
> >
> https://kafka.apache.org/39/javadoc/org/apache/kafka/clients/consumer/ConsumerConfig.html#main(java.lang.String%5B%5D)
> > > > > >>
> > > > > >> Thanks,
> > > > > >> Mickael
> > > > > >>
> > > > > >> On Mon, Feb 24, 2025 at 3:33 PM Bruno Cadonna <
> cado...@apache.org
> > >
> > > > > wrote:
> > > > > >>>
> > > > > >>> Hi Harish,
> > > > > >>>
> > > > > >>> Thanks for the KIP! Great initiative!
> > > > > >>>
> > > > > >>> Do you plan to have a development version of the website online
> > in
> > > > > >>> parallel to the old HTML version?
> > > > > >>>
> > > > > >>> I understand that locally with the markdown files and an
> markdown
> > > > > >>> editor, we see the rough structure of the docs (which is
> already
> > an
> > > > > >>> improvement), but we will not see the end product, because for
> > that
> > > > we
> > > > > >>> again need a web server.
> > > > > >>>
> > > > > >>> I assume that after you migrated all docs to markdown, we want
> to
> > > see
> > > > > >>> the complete website, review the content, and make some
> > > refinements.
> > > > > >>>
> > > > > >>> Best,
> > > > > >>> Bruno
> > > > > >>>
> > > > > >>> On 23.02.25 07:52, Harish Vishwanath wrote:
> > > > > >>>> Thank you David. Appreciate your feedback. My comments below:
> > > > > >>>>
> > > > > >>>> DA1) I think this is a very good suggestion. While building
> the
> > > > > >> prototype,
> > > > > >>>> I did spend additional effort for older versions of the doc
> > since
> > > > > >> there are
> > > > > >>>> fairly significant differences in the structure and format of
> > the
> > > > > >> documents
> > > > > >>>> as compared to 3.x versions. I have written the automation
> which
> > > can
> > > > > do
> > > > > >>>> this, but I do think hosting the older versions (<3.x) in its
> > > > current
> > > > > >>>> format and moving the rest to markdown will reduce the overall
> > > > > >>>> testing/validation effort. That said, if we foresee making
> > > > relatively
> > > > > >>>> frequent updates to older versions, it might be worth
> converting
> > > > > >> everything
> > > > > >>>> to markdown.
> > > > > >>>>
> > > > > >>>> DA2) My hunch is that this can be quite involved. Rendering a
> > > usable
> > > > > >> HTML
> > > > > >>>> version requires all the supporting artifacts (css, js,
> images,
> > > hugo
> > > > > >>>> shortcodes, partials etc.,) which will only be present in the
> > > > website
> > > > > >>>> documentation. Further, the hyper links themselves will not
> work
> > > > > >> without
> > > > > >>>> a webserver. To serve a directory structure based HTML, it
> will
> > > > > >> require us
> > > > > >>>> to have different templates for these docs where dependencies
> on
> > > the
> > > > > >>>> artifacts I mentioned above will need to be removed, links
> will
> > > need
> > > > > >> to be
> > > > > >>>> converted to use relative directory locations etc.,
> > > > > >>>>
> > > > > >>>> DA3) This is definitely possible. Using tools such as `pandoc`
> > we
> > > > > >> should be
> > > > > >>>> able to render plain text versions of markdown files. For ex,
> > the
> > > > > below
> > > > > >>>> would create a plain text version of all docs for 39/ branch.,
> > > which
> > > > > >> can be
> > > > > >>>> packaged with the binary distribution.
> > > > > >>>>
> > > > > >>>> find docs/ -name "*.md" -type f | while read -r file; do
> > > > > >>>>       dir=$(dirname "$file")
> > > > > >>>>       filename=$(basename "$file" .md)
> > > > > >>>>       mkdir -p "39-ascii/$dir"
> > > > > >>>>       pandoc -f markdown -t plain "$file" -o
> > > > > >> "39-ascii/$dir/$filename.txt"
> > > > > >>>> done
> > > > > >>>>
> > > > > >>>> DA4) Makes sense. I updated the wiki to reflect this.
> > > > > >>>>
> > > > > >>>>
> > > > > >>>> Regards,
> > > > > >>>> Harish
> > > > > >>>>
> > > > > >>>>
> > > > > >>>> On Fri, Feb 21, 2025 at 8:56 AM David Arthur <
> mum...@gmail.com>
> > > > > wrote:
> > > > > >>>>
> > > > > >>>>> Thanks for the KIP, Harish!
> > > > > >>>>>
> > > > > >>>>> I am +100 just on the title alone :)
> > > > > >>>>>
> > > > > >>>>> The motivations in the KIP are sound. All of these are very
> > real
> > > > > >> annoyances
> > > > > >>>>> when it comes to maintaining our docs. I suspect we have not
> > done
> > > > > >> anything
> > > > > >>>>> to improve them since the system we have worked well enough
> in
> > > the
> > > > > >> past. A
> > > > > >>>>> better way to say that is: it hasn't been bad enough to
> > motivate
> > > us
> > > > > to
> > > > > >>>>> change it.
> > > > > >>>>>
> > > > > >>>>> With efforts like this, there is always some question about
> > which
> > > > > >> tool or
> > > > > >>>>> method we should use. I like that your proposal includes
> these
> > > > > >> specifics as
> > > > > >>>>> well as a complete and functional demo.
> > > > > >>>>>
> > > > > >>>>> Few questions:
> > > > > >>>>>
> > > > > >>>>> DA1) Do we really need to convert all of our docs to the new
> > > thing?
> > > > > It
> > > > > >>>>> might be reasonable to draw a line somewhere (maybe 3.0?) and
> > > have
> > > > > >> docs
> > > > > >>>>> prior to that be hosted elsewhere (kafka.apache.org/old or
> > > > > >> something).
> > > > > >>>>> This
> > > > > >>>>> may or may not be more work than just converting everything.
> > > WDYT?
> > > > > >>>>>
> > > > > >>>>> DA2) For our packaged docs (those that go in the binaries we
> > > > > >> distribute),
> > > > > >>>>> do you think it's possible to render HTML that can be viewed
> > > > without
> > > > > a
> > > > > >>>>> webserver? Currently our packaged docs are kind of useless
> IMO.
> > > It
> > > > > >> would be
> > > > > >>>>> better if they could be viewed without any extra effort by an
> > > > > >> operator.
> > > > > >>>>>
> > > > > >>>>> DA3) As a possible alternative to DA2, could we render the
> > > markdown
> > > > > >> docs as
> > > > > >>>>> ascii text files? This is arguably better for operators since
> > > they
> > > > > >> don't
> > > > > >>>>> always have a GUI or web browser handy.
> > > > > >>>>>
> > > > > >>>>> DA4) Just a nitpick, could you reduce the "Sample directory
> > > layout"
> > > > > >> down to
> > > > > >>>>> one or two examples? It's difficult to see the versioned vs
> > > > > >> non-versioned
> > > > > >>>>> docs in the current block
> > > > > >>>>>
> > > > > >>>>> Thanks!
> > > > > >>>>> David A
> > > > > >>>>>
> > > > > >>>>>
> > > > > >>>>> On Sun, Feb 16, 2025 at 2:10 PM Harish Vishwanath <
> > > > > >>>>> harish.shas...@gmail.com>
> > > > > >>>>> wrote:
> > > > > >>>>>
> > > > > >>>>>> Hello,
> > > > > >>>>>>
> > > > > >>>>>> Following up from my previous email regarding moving AK
> > > > > >> documentation to
> > > > > >>>>>> markdown, I wrote KIP-1133
> > > > > >>>>>> <
> > > > > >>>>>>
> > > > > >>>>>
> > > > > >>
> > > > >
> > > >
> > >
> >
> https://cwiki.apache.org/confluence/display/KAFKA/KIP-1133%3A+AK+Documentation+and+Website+in+Markdown
> > > > > >>>>>>>
> > > > > >>>>>> detailing
> > > > > >>>>>> the proposal and would like to start discussions. Please
> take
> > a
> > > > > look.
> > > > > >>>>>>
> > > > > >>>>>> Regards,
> > > > > >>>>>> Harish
> > > > > >>>>>>
> > > > > >>>>>
> > > > > >>>>>
> > > > > >>>>> --
> > > > > >>>>> David Arthur
> > > > > >>>>>
> > > > > >>>>
> > > > > >>>
> > > > > >>
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > >
> > >
> >
>

Reply via email to