Mail: https://lists.apache.org/thread/ff659j0y46j94c6jc6zlwotc78pq2n40
Issue: https://github.com/apache/pulsar/issues/19111

Best,
tison.


tison <wander4...@gmail.com> 于2022年12月30日周五 10:46写道:

> Hi Yu,
>
> Thanks for your recommendation! Yes, I'm going to do this.
>
> Best,
> tison.
>
>
> Yu <li...@apache.org> 于2022年12月30日周五 09:20写道:
>
>> Thanks tison!
>>
>> It's better to
>> a) update the contribution processes of docs, website content, and release
>> notes [1] [2] [3] [4] [5]
>> b) inform the community about this breaking change officially in another
>> email (reminders for doc contributions)
>>
>> ~~~~~~~~
>>
>> docs:
>> [1] https://pulsar.apache.org/contribute/document-contribution/
>> [2]
>>
>> https://pulsar.apache.org/contribute/document-preview/#preview-documentation-changes
>> [3]
>>
>> https://pulsar.apache.org/contribute/document-preview/#preview-website-changes
>>
>> release notes:
>> [4] https://pulsar.apache.org/contribute/release-process/#update-the-site
>> [5] https://pulsar.apache.org/contribute/release-note-guide/
>>
>> On Thu, Dec 29, 2022 at 9:07 PM tison <wander4...@gmail.com> wrote:
>>
>> > The new repo is reduced by 100MB:
>> >
>> > $ gh repo clone apache/pulsar -- --single-branch --depth=1
>> > $ du -sh pulsar | sort -rh
>> >  53M pulsar
>> >
>> > Best,
>> > tison.
>> >
>> >
>> > tison <wander4...@gmail.com> 于2022年12月29日周四 21:01写道:
>> >
>> > > Landed.
>> > >
>> > > Best,
>> > > tison.
>> > >
>> > >
>> > > tison <wander4...@gmail.com> 于2022年12月29日周四 17:51写道:
>> > >
>> > >> Here are the related PRs:
>> > >>
>> > >> * https://github.com/apache/pulsar/pull/19100
>> > >> * https://github.com/apache/pulsar-site/pull/348
>> > >>
>> > >> Best,
>> > >> tison.
>> > >>
>> > >>
>> > >> tison <wander4...@gmail.com> 于2022年12月26日周一 21:45写道:
>> > >>
>> > >>> FYI tracking issue has been created:
>> > >>> https://github.com/apache/pulsar/issues/19064
>> > >>>
>> > >>> I plan to finish it by the end of next month.
>> > >>>
>> > >>> Best,
>> > >>> tison.
>> > >>>
>> > >>>
>> > >>> tison <wander4...@gmail.com> 于2022年12月21日周三 11:33写道:
>> > >>>
>> > >>>> Thanks for your feedback!
>> > >>>>
>> > >>>> @Yu
>> > >>>>
>> > >>>> Thanks for sharing the previous thread. I looped in
>> @michaeljmarshall
>> > >>>> here.
>> > >>>>
>> > >>>> @Jun
>> > >>>>
>> > >>>> It's possible but causes a new shortcoming: Now you should tell the
>> > >>>> contributor that the versioned docs are different from the NEXT
>> > version
>> > >>>> docs, lol.
>> > >>>>
>> > >>>> If our developers don't complain about these separated sources.
>> Like
>> > @Asaf
>> > >>>> comment:
>> > >>>>
>> > >>>> > We can take, let's say, five features and see if they were
>> actually
>> > >>>> done in
>> > >>>> > the same PR or separate PR. I guess that most documentation is
>> > >>>> actually
>> > >>>> > updated separately. Thus, from that perspective, maybe it’s not a
>> > con.
>> > >>>>
>> > >>>> Then we can do this refactor thoroughgoing.
>> > >>>>
>> > >>>> Also, if we keep, somehow several sources in the main repo. We
>> still
>> > >>>> have shortcomings:
>> > >>>>
>> > >>>> 1. Duplicated CI workflows.
>> > >>>> 2. Cumbersome preview scaffolding in the main repo.
>> > >>>>
>> > >>>> ... which is the original purpose I'd like to overcome.
>> > >>>>
>> > >>>> Best,
>> > >>>> tison.
>> > >>>>
>> > >>>>
>> > >>>> Jun Ma <momoma...@hotmail.com> 于2022年12月21日周三 11:19写道:
>> > >>>>
>> > >>>>> Is it possible to come up with a compromised solution that has the
>> > >>>>> pros of both sides but minimizes the side effect? I'm thinking
>> maybe
>> > it's
>> > >>>>> not necessary to sacrifice the current contribution process, as
>> long
>> > as it
>> > >>>>> can greatly reduce the load of back-end actions and source size.
>> For
>> > >>>>> example, if we only move out the versioned docs to the site repo
>> but
>> > keep
>> > >>>>> the source of the NEXT docs in the pulsar repo, does this help to
>> > win a
>> > >>>>> large proportion of those pros when people can still contribute as
>> > usual?
>> > >>>>>
>> > >>>>> ________________________________
>> > >>>>> From: Jiaqi Shen <gleiphir2...@gmail.com>
>> > >>>>> Sent: Tuesday, December 20, 2022 17:15
>> > >>>>> To: dev@pulsar.apache.org <dev@pulsar.apache.org>
>> > >>>>> Subject: Re: [PROPOSAL] Website precommit and move the source of
>> docs
>> > >>>>> to the site repo
>> > >>>>>
>> > >>>>> +1, it makes sense to me.
>> > >>>>>
>> > >>>>> Thanks,
>> > >>>>> Jiaqi Shen
>> > >>>>>
>> > >>>>>
>> > >>>>> Yu <li...@apache.org> 于2022年12月19日周一 20:57写道:
>> > >>>>>
>> > >>>>> > Hi tison,
>> > >>>>> >
>> > >>>>> > Thanks for raising this up!
>> > >>>>> >
>> > >>>>> > Our community had a similar discussion previously and chose to
>> > >>>>> "keep" the
>> > >>>>> > doc repo stay in the Pulsar main repo at that time.
>> > >>>>> >
>> > >>>>> > [1] lists the pros and cons of "keep" and "not keep" solutions.
>> > >>>>> >
>> > >>>>> > I'm +0 on this proposal because I think the total scores of
>> these
>> > two
>> > >>>>> > solutions are almost equal after weighing the pros and cons.
>> > >>>>> >
>> > >>>>> > ~~~~~~~~~~~~~~~~~~~~
>> > >>>>> >
>> > >>>>> > [1]
>> > https://lists.apache.org/thread/mf2xwntfgn84dq78ksqv22jk3drq6xb3
>> > >>>>> >
>> > >>>>> >
>> > >>>>> > On Mon, Dec 19, 2022 at 5:40 PM tison <wander4...@gmail.com>
>> > wrote:
>> > >>>>> >
>> > >>>>> > > Thanks for your feedback!
>> > >>>>> > >
>> > >>>>> > > @Asaf
>> > >>>>> > >
>> > >>>>> > > > pre-commit
>> > >>>>> > >
>> > >>>>> > > I mean CI checks before merging a patch. Currently, we don't
>> run
>> > >>>>> checks
>> > >>>>> > for
>> > >>>>> > > the content before merging them. This causes a series of
>> syntax
>> > >>>>> errors
>> > >>>>> > and
>> > >>>>> > > broken links issues. If we hold docs under site2 folder in the
>> > >>>>> main repo
>> > >>>>> > > and then copied to the site repo, we have two places to build
>> > such
>> > >>>>> CI
>> > >>>>> > > checks. What's worse, the checks for the main repo will be
>> quite
>> > >>>>> > > cumbersome (that you do some if-else logic in the whole
>> Pulsar CI
>> > >>>>> > > workflows, and do the sync sequentially in that workflow).
>> > >>>>> > >
>> > >>>>> > > If we hold the source of docs only in the site repo, we can
>> > extend
>> > >>>>> the
>> > >>>>> > > "precommit" workflow[1] I added recently to check for syntax
>> > >>>>> errors and
>> > >>>>> > > broken links also.
>> > >>>>> > >
>> > >>>>> > > > What does the apache/pulsar-site repo contain today?
>> > >>>>> > >
>> > >>>>> > > It should be covered by the documentation guide page[2]. It
>> holds
>> > >>>>> the
>> > >>>>> > > source of the official website and the user docs are synced
>> from
>> > >>>>> the main
>> > >>>>> > > repo.
>> > >>>>> > >
>> > >>>>> > > > What content do we have today in the pulsar repo related to
>> the
>> > >>>>> site?
>> > >>>>> > >
>> > >>>>> > > After issue-18014[3] is done, we host only user docs and some
>> > JSON
>> > >>>>> > metadata
>> > >>>>> > > in the main repo, which is synced by site_syncer.py[4].
>> > >>>>> > >
>> > >>>>> > > > Can you explain that better? Are you saying pulsar source
>> JARs
>> > >>>>> contain
>> > >>>>> > > the documentation?
>> > >>>>> > >
>> > >>>>> > > No. Source JARs contain only the Java files and necessary
>> > >>>>> copyrights
>> > >>>>> > info.
>> > >>>>> > > The source release is, for example,
>> > >>>>> > >
>> > >>>>> > >
>> > >>>>> >
>> > >>>>>
>> >
>> https://archive.apache.org/dist/pulsar/pulsar-2.10.2/apache-pulsar-2.10.2-src.tar.gz
>> > >>>>> > > ,
>> > >>>>> > > which is extracted to 173M where 129M is occupied by the site2
>> > >>>>> folder.
>> > >>>>> > >
>> > >>>>> > > This also affects when developers do git clone to clone the
>> repo.
>> > >>>>> > >
>> > >>>>> > > > I mean, if you wish to document a bug fix in 2.9.x, for
>> > example,
>> > >>>>> would
>> > >>>>> > > you do it in the 2.9.x branch under site2/docs or
>> > >>>>> > > site2/website/versioned_docs/2.9.5?
>> > >>>>> > >
>> > >>>>> > > This is another question. Ideally, we should have hosted
>> > versioned
>> > >>>>> docs
>> > >>>>> > > associated with the specific version to that branch, like
>> Apache
>> > >>>>> Flink
>> > >>>>> > does
>> > >>>>> > > as I mentioned[5]. But we do not, and actually the situation
>> is
>> > we
>> > >>>>> update
>> > >>>>> > > the versioned docs under the master branch and thus, the docs
>> can
>> > >>>>> be
>> > >>>>> > synced
>> > >>>>> > > properly.
>> > >>>>> > >
>> > >>>>> > > See also the "Alternatives" section in the original email.
>> > >>>>> > >
>> > >>>>> > > @All
>> > >>>>> > >
>> > >>>>> > > Since we don't have objections to the possible cons listed
>> above
>> > >>>>> or any
>> > >>>>> > new
>> > >>>>> > > ones, I'm going to create a tracking issue later this week and
>> > >>>>> show what
>> > >>>>> > > will be changed in PRs for further review.
>> > >>>>> > >
>> > >>>>> > > Best,
>> > >>>>> > > tison.
>> > >>>>> > >
>> > >>>>> > > [1]
>> > >>>>> > >
>> > >>>>> > >
>> > >>>>> >
>> > >>>>>
>> >
>> https://github.com/apache/pulsar-site/blob/f7abc615d57d9846ed093922d24bff952dc0e838/.github/workflows/ci-precommit.yml
>> > >>>>> > > [2]
>> > >>>>> > >
>> > >>>>> > >
>> > >>>>> >
>> > >>>>>
>> >
>> https://pulsar.apache.org/contribute/document-contribution/#source-repositories
>> > >>>>> > > [3] https://github.com/apache/pulsar/issues/18014
>> > >>>>> > > [4]
>> > >>>>> > >
>> > >>>>> > >
>> > >>>>> >
>> > >>>>>
>> >
>> https://github.com/apache/pulsar-site/blob/f7abc615d57d9846ed093922d24bff952dc0e838/tools/pytools/lib/execute/site_syncer.py
>> > >>>>> > > [5] https://github.com/apache/flink/tree/master/docs
>> > >>>>> > >
>> > >>>>> > >
>> > >>>>> > > PengHui Li <peng...@apache.org> 于2022年12月19日周一 16:26写道:
>> > >>>>> > >
>> > >>>>> > > > +1
>> > >>>>> > > >
>> > >>>>> > > > I support moving them to the website repo.
>> > >>>>> > > >
>> > >>>>> > > > Thanks,
>> > >>>>> > > > Penghui
>> > >>>>> > > >
>> > >>>>> > > > On Mon, Dec 19, 2022 at 12:04 PM Yunze Xu
>> > >>>>> <y...@streamnative.io.invalid
>> > >>>>> > >
>> > >>>>> > > > wrote:
>> > >>>>> > > >
>> > >>>>> > > > > +1. The most significant point to me is that we can
>> preview
>> > >>>>> all the
>> > >>>>> > > > > content of the website without synchronizing contents from
>> > the
>> > >>>>> > > > > apache/pulsar repo.
>> > >>>>> > > > >
>> > >>>>> > > > > Thanks,
>> > >>>>> > > > > Yunze
>> > >>>>> > > > >
>> > >>>>> > > > > On Mon, Dec 19, 2022 at 9:53 AM Li Li <urf...@apache.org>
>> > >>>>> wrote:
>> > >>>>> > > > > >
>> > >>>>> > > > > > +1, That’s a good idea.
>> > >>>>> > > > > >
>> > >>>>> > > > > > > On Dec 16, 2022, at 07:07, tison <
>> wander4...@gmail.com>
>> > >>>>> wrote:
>> > >>>>> > > > > > >
>> > >>>>> > > > > > > Hi,
>> > >>>>> > > > > > >
>> > >>>>> > > > > > > After several works around the build flow of our
>> official
>> > >>>>> > > > > website[1][2][3],
>> > >>>>> > > > > > > the content sync and site build flow is debuggable and
>> > >>>>> > reproducible
>> > >>>>> > > > > now.
>> > >>>>> > > > > > >
>> > >>>>> > > > > > > However, compared to other Apache projects' websites'
>> > >>>>> project
>> > >>>>> > > layouts
>> > >>>>> > > > > and
>> > >>>>> > > > > > > workflow, we still meet two challenges on the Pulsar
>> > site:
>> > >>>>> > > > > > >
>> > >>>>> > > > > > > 1. We don't have a pre-commit workflow for any
>> > >>>>> website-related
>> > >>>>> > > > changes.
>> > >>>>> > > > > > > Thus, we don't detect broken links or syntax errors
>> when
>> > >>>>> > reviewing
>> > >>>>> > > > new
>> > >>>>> > > > > > > patches[4][5][6].
>> > >>>>> > > > > > > 2. The website's content is two-level down in
>> > >>>>> > `site2/website-next`
>> > >>>>> > > > for
>> > >>>>> > > > > > > historical reasons, which is confusing for
>> contributors.
>> > >>>>> > > > > > >
>> > >>>>> > > > > > > To overcome these two shortcomings, I propose the
>> > >>>>> following:
>> > >>>>> > > > > > >
>> > >>>>> > > > > > > 1. Move the website's content to the root level, then
>> we
>> > >>>>> have a
>> > >>>>> > > > > first-class
>> > >>>>> > > > > > > Docu&yarn-based JS project layout. It's more
>> convenient
>> > and
>> > >>>>> > > familiar
>> > >>>>> > > > to
>> > >>>>> > > > > > > related developers.
>> > >>>>> > > > > > > 2. Host the source of docs in the site repo
>> > >>>>> (apache/pulsar-site)
>> > >>>>> > > > > instead of
>> > >>>>> > > > > > > under `site2` folder in the main repo and do content
>> > sync.
>> > >>>>> > > > > > >
>> > >>>>> > > > > > > Below are the pros and cons:
>> > >>>>> > > > > > >
>> > >>>>> > > > > > > Pros
>> > >>>>> > > > > > >
>> > >>>>> > > > > > > 1. Obviously, we have the pre-commit workflow now. And
>> > >>>>> since we
>> > >>>>> > > host
>> > >>>>> > > > > the
>> > >>>>> > > > > > > source of docs in one repo, we don't have to run the
>> > >>>>> pre-commit
>> > >>>>> > > > > workflow in
>> > >>>>> > > > > > > two places, which can be quite cumbersome to
>> implement.
>> > >>>>> > > > > > > 2. The size of the source release of the main repo
>> can be
>> > >>>>> > reduced a
>> > >>>>> > > > > lot.
>> > >>>>> > > > > > > Currently, 63MB out of 140MB of the sources are taken
>> by
>> > >>>>> the
>> > >>>>> > site2
>> > >>>>> > > > > folder,
>> > >>>>> > > > > > > which we can remove totally. In addition, we carry out
>> > >>>>> > > full-versioned
>> > >>>>> > > > > docs
>> > >>>>> > > > > > > every release.
>> > >>>>> > > > > > > 3. We can clean up a large portion of "integration" to
>> > >>>>> debug the
>> > >>>>> > > site
>> > >>>>> > > > > > > brittlely on the main repo[7]  (etc.) and redundant
>> > >>>>> contribution
>> > >>>>> > > > > guide[8].
>> > >>>>> > > > > > > This way, when updating docs, we can preview the
>> result
>> > in
>> > >>>>> one
>> > >>>>> > repo
>> > >>>>> > > > > instead
>> > >>>>> > > > > > > of actually doing the sync on the fly. In addition,
>> this
>> > >>>>> > > integration
>> > >>>>> > > > > blocks
>> > >>>>> > > > > > > we move the website content to the top level since it
>> > makes
>> > >>>>> > strong
>> > >>>>> > > > > > > assumptions about the relative layout.
>> > >>>>> > > > > > >
>> > >>>>> > > > > > > Cons
>> > >>>>> > > > > > >
>> > >>>>> > > > > > > The most significant con is that we cannot update the
>> > code
>> > >>>>> and
>> > >>>>> > docs
>> > >>>>> > > > in
>> > >>>>> > > > > one
>> > >>>>> > > > > > > patch against apache/pulsar now. You must open a new
>> pull
>> > >>>>> request
>> > >>>>> > > to
>> > >>>>> > > > > > > apache/pulsar-site, cross-reference each other and
>> manage
>> > >>>>> the
>> > >>>>> > merge
>> > >>>>> > > > > order
>> > >>>>> > > > > > > (synchronization).
>> > >>>>> > > > > > >
>> > >>>>> > > > > > > Alternatives:
>> > >>>>> > > > > > >
>> > >>>>> > > > > > > To resolve the versioned docs issue, an alternative
>> is to
>> > >>>>> host
>> > >>>>> > only
>> > >>>>> > > > the
>> > >>>>> > > > > > > user docs along with each version, like Flink does[9].
>> > But
>> > >>>>> it
>> > >>>>> > both
>> > >>>>> > > > > detaches
>> > >>>>> > > > > > > from the Docu framework and requires significant
>> > >>>>> development
>> > >>>>> > > efforts.
>> > >>>>> > > > > > >
>> > >>>>> > > > > > > Since it can explicitly change the development flow
>> (that
>> > >>>>> is, you
>> > >>>>> > > > > should
>> > >>>>> > > > > > > now update docs separately), I am starting this
>> > discussion
>> > >>>>> here
>> > >>>>> > to
>> > >>>>> > > > > reach
>> > >>>>> > > > > > > for your feedback.
>> > >>>>> > > > > > >
>> > >>>>> > > > > > > Welcome to leave your comments!
>> > >>>>> > > > > > >
>> > >>>>> > > > > > > Best,
>> > >>>>> > > > > > > tison.
>> > >>>>> > > > > > >
>> > >>>>> > > > > > > [1] https://pulsar.apache.org/
>> > >>>>> > > > > > > [2] https://github.com/apache/pulsar-site
>> > >>>>> > > > > > > [3] https://github.com/apache/pulsar/issues/18014
>> > >>>>> > > > > > > [4] https://github.com/apache/pulsar/issues/17599
>> > >>>>> > > > > > > [5]
>> > >>>>> > > >
>> > >>>>> https://github.com/apache/pulsar/pull/17863#discussion_r990174850
>> > >>>>> > > > > > > [6]
>> > >>>>> > > >
>> > >>>>> https://github.com/apache/pulsar/pull/17853#discussion_r991803704
>> > >>>>> > > > > > > [7]
>> > >>>>> > > > > > >
>> > >>>>> > > > >
>> > >>>>> > > >
>> > >>>>> > >
>> > >>>>> >
>> > >>>>>
>> >
>> https://github.com/apache/pulsar/blob/b1f9e351fa4d5aba197d33cfc0c536516b55b61f/site2/website/start.sh
>> > >>>>> > > > > > > [8]
>> > >>>>> > > > > > >
>> > >>>>> > > > >
>> > >>>>> > > >
>> > >>>>> > >
>> > >>>>> >
>> > >>>>>
>> >
>> https://pulsar.apache.org/contribute/document-preview/#preview-documentation-changes
>> > >>>>> > > > > > > [9] https://github.com/apache/flink/tree/master/docs
>> > >>>>> > > > > >
>> > >>>>> > > > >
>> > >>>>> > > >
>> > >>>>> > >
>> > >>>>> >
>> > >>>>>
>> > >>>>
>> >
>>
>

Reply via email to