I’ve addressed all the problems I know about…. now we can find more :-)

At this point I think we could apply the PRs and work from there.  In more 
detail:

(1) https://github.com/apache/camel-kamelets/pull/487 fixes the Kamelet catalog 
rendering and AFAICT doesn’t break the Antora 2 build. I’d merge this but I’m 
not sure I know all the places to look for problems :-)
(2) [website] Issue 16854 antora 3 
<https://github.com/apache/camel-website/pull/617> Preview at 
https://pr-617--camel.netlify.app <https://pr-617--camel.netlify.app/>. This 
uses a camel-website setup with the latest Antora 3.0.0-alpha.9 ready to build 
the next set of changes: the preview is against the current content state.  The 
only problem I know of is the Kamelet catalog which would be fixed by the 
preceding PR.
(3) [Website] Use @djencks/asciidoctor-jsonpath to generate component doc 
content <https://github.com/apache/camel/pull/6040>. Preview at 
https://pr-614--camel.netlify.app <https://pr-614--camel.netlify.app/> (with 
the Kamelet catalog fix) (using a customized playbook).

(3) should be rebased on main and the generated changes regenerated just before 
merging.

Issues (all with (2)):
- I’ve committed the results of running yarn in antora-ui-camel and root, but 
I’m not at all sure this is correct.  The build seems to work in CI, but I’m on 
MacOS.  In particular I sometimes seem to end up with a 50Mb+ file for the UI 
that I don’t see in the current state.
- Using yarn workspaces topology/dependency detection to build the UI first 
doesn’t work for me, locally or in CI.  I’ve hard-coded building the UI first.  
I think this is more reliable so a good idea, but perhaps I did something wrong.
- I removed patch-sitemap.js usage.  I can’t tell what it’s supposed to be 
doing or why and, even if it’s needed, it should be implemented as a pipeline 
extension.

AFAIK Zoran put all these in place so perhaps we need his input.

Comments:
- I think that the EIP doc pages haven’t been updated for some time: the 
UpdateReadmeMojo appeared to be looking in the wrong directory.  Certainly the 
previous version of my work wasn’t using the jsonpath eip template I wrote.
- The first row of generated tables is now treated the same as following rows: 
this fixes the enum list display in descriptions and the bold name problem.
- I think I’ve excluded the same rows from all tables as the preceding approach.
- The main options tables for all kinds have the same columns but not always in 
the same order.  Perhaps we should make the order the same?
components: activemq-component.html 
<https://pr-614--camel.netlify.app/components/latest/activemq-component.html#_component_options>
 | Name | Description | Default | Type
dataformats: any23-dataformat.html 
<https://pr-614--camel.netlify.app/components/latest/dataformats/any23-dataformat.html#_any23_options>
 | Name | Default | Java Type | Description
languages: bean-language.html 
<https://pr-614--camel.netlify.app/components/latest/languages/bean-language.html#_bean_language_options>
 | Name | Default | Java Type | Description
eips: aggregate-eip.html 
<https://pr-614--camel.netlify.app/components/latest/eips/aggregate-eip.html#_aggregator_options>
  | Name | Description | Default | Type

We’re always showing the java type short name, so we should also decide between 
Type and Java Type.

- UpdateReadmeMojo can be further simplified, and I may get to it shortly, but 
that can also be done later.
- docs/gulpfile.js can be (IMO) considerably simplified by driving more of the 
symlink generation from data: I already did this for the new json symlinks. The 
disadvantage is that the task is then anonymous so you can’t tell what gulp is 
doing as easily.
- I think I’m creating a lot of unused json symlinks for at least dataformats 
and eips because I can’t figure out how to find only the relevant ones.  We 
should probably deal with  this later.
- There are some inconsistencies in naming and directory layout for some 
components that we should probably deal with later if at all.

David Jencks


> On Sep 3, 2021, at 1:46 AM, Claus Ibsen <claus.ib...@gmail.com> wrote:
> 
> Hi
> 
> Great work David.
> 
> I noticed the data formats table, then the 1st row is in bold, and the
> others are not, and the styling of the javaType is also different
> https://pr-614--camel.netlify.app/components/latest/dataformats/thrift-dataformat.html
>  
> <https://pr-614--camel.netlify.app/components/latest/dataformats/thrift-dataformat.html>
> 
> And for languages then we should skip the "expression" row as its not
> really an option but the actual language code being used (implied).
> https://pr-614--camel.netlify.app/components/latest/languages/jsonpath-language.html
>  
> <https://pr-614--camel.netlify.app/components/latest/languages/jsonpath-language.html>
> 
> You can compare these pages with the regular website to see the subtle
> differences.
> 
> 
> For EIP patterns then maybe we should style the Type column to be same
> as for the others (blue color, lower case for boolean, string, int
> etc.)
> https://pr-614--camel.netlify.app/components/latest/eips/claimCheck-eip.html 
> <https://pr-614--camel.netlify.app/components/latest/eips/claimCheck-eip.html>
> 
> 
> On Fri, Sep 3, 2021 at 8:21 AM David Jencks <david.a.jen...@gmail.com 
> <mailto:david.a.jen...@gmail.com>> wrote:
>> 
>> I think this work is complete enough to be used.  There’s now a Ci built 
>> preview at https://pr-614--camel.netlify.app
>> 
>> The main work is on https://github.com/apache/camel/pull/6040. Possibly the 
>> commits should be squashed into fewer.  Once this is merged the 
>> camel-website PR can be updated to use the normal repos/branches.
>> 
>> Subsidiary PRs fixing warnings that would now break the build: (these can be 
>> merged before the main work)
>> 
>> https://github.com/apache/camel-kamelets/pull/480 (no error from Antora). 
>> This is the bizarre looking Kamelets catalog page fix.  I have no idea why 
>> the previous adoc worked, but this works on both Antora 2 and 3
>> 
>> https://github.com/apache/camel-quarkus/pull/3064
>> https://github.com/apache/camel-quarkus/pull/3065
>> 
>> https://github.com/apache/camel/pull/6039
>> 
>> comments:
>> 
>> - I removed the patch-sitemap.js use.  I can’t figure out why this is 
>> needed.  If it really is needed, it should be done with a pipeline extension.
>> - yarn workspace  —topological-dev is not building the UI before it’s used.  
>> I can’t figure out why; it is for other PRs.  I replaced this by just 
>> calling the UI build directly.
>> - If nothing else is using the model building in UpdateReadmeMojo it can 
>> probably be simplified further.
>> - The camel-website node dependencies have changed dramatically.  It looks 
>> like the yarn cache is checked into  git; I haven’t checked in the changes.  
>> Should I?
>> 
>> known problems:
>> 
>> - When the first row contains a description with a list, the list isn’t 
>> rendered properly.  cf. 
>> https://pr-614--camel.netlify.app/components/latest/activemq-component.html#_path_parameters_2_parameters
>>  
>> <https://pr-614--camel.netlify.app/components/latest/activemq-component.html#_path_parameters_2_parameters>
>>  
>> <https://pr-614--camel.netlify.app/components/latest/activemq-component.html#_path_parameters_2_parameters
>>  
>> <https://pr-614--camel.netlify.app/components/latest/activemq-component.html#_path_parameters_2_parameters>>
>> - All the names in the generated tables have ids so they can be linked to 
>> but there’s no easy way to find out the id. The sections have a link to 
>> themselves which makes it easy to copy the URL.  I haven’t looked into 
>> whether this can be done with  the table entries.
>> 
>> Updating the main PR to track changes in camel is somewhat time consuming so 
>> I’d appreciate it if we could move this towards resolution quickly.
>> 
>> David Jencks
>> 
>> 
>>> On Aug 31, 2021, at 11:42 PM, David Jencks <david.a.jen...@gmail.com 
>>> <mailto:david.a.jen...@gmail.com>> wrote:
>>> 
>>> With  both the CI build for my PR and locally, `yarn build-all` is building 
>>> the UI after the main build command.  Obviously this doesn’t work.
>>> 
>>> Can someone point to a situation in which the UI is built before it is 
>>> used?  Any ideas why yarn is picking this dysfunctional workspace build 
>>> order?
>>> 
>>> David Jencks
>>> 
>>>> On Aug 30, 2021, at 1:23 AM, Claus Ibsen <claus.ib...@gmail.com 
>>>> <mailto:claus.ib...@gmail.com> <mailto:claus.ib...@gmail.com 
>>>> <mailto:claus.ib...@gmail.com>>> wrote:
>>>> 
>>>> On Sun, Aug 29, 2021 at 10:20 AM David Jencks <david.a.jen...@gmail.com 
>>>> <mailto:david.a.jen...@gmail.com> <mailto:david.a.jen...@gmail.com 
>>>> <mailto:david.a.jen...@gmail.com>>> wrote:
>>>>> 
>>>>> The current source state is now visible.
>>>>> 
>>>>> - I npm-published my asciidoctor-jsonpath extension
>>>>> - The site content changes are at https://github.com/djencks/camel.git 
>>>>> <https://github.com/djencks/camel.git> 
>>>>> <https://github.com/djencks/camel.git 
>>>>> <https://github.com/djencks/camel.git>> jsonpath-options branch. I’ve put 
>>>>> all the generated changes as the last commit, so it should be possible to 
>>>>> update the branch by dropping the last commit, rebasing on main, and 
>>>>> regenerating the source with the maven build.
>>>>> - The camel-website changes are at 
>>>>> https://github.com/djencks/camel-website.git 
>>>>> <https://github.com/djencks/camel-website.git> 
>>>>> <https://github.com/djencks/camel-website.git 
>>>>> <https://github.com/djencks/camel-website.git>> 
>>>>> issue-16854-jsonpath-options branch
>>>>> 
>>>>> There’s a PR https://github.com/apache/camel-website/pull/614 
>>>>> <https://github.com/apache/camel-website/pull/614> 
>>>>> <https://github.com/apache/camel-website/pull/614 
>>>>> <https://github.com/apache/camel-website/pull/614>>.
>>>>> 
>>>>> I don’t understand what the patch-sitemap.js does and was having 
>>>>> dependency problems so removed it from the command line.  What does it do 
>>>>> and why?
>>>>> 
>>>>> The PR’s build fails because of missing ui bundle.  Is this expected?  I 
>>>>> like to have the built UI bundle available somewhere: I often check in 
>>>>> the built bundle.  Locally I can’t build the UI, it complains somehow 
>>>>> about the helpers for component sorting/hiding.
>>>>> 
>>>>> I set up the build to fail on warnings, and there are quite a few 
>>>>> warnings.
>>>>> 
>>>>> There are several source problems I don’t know the proper fix for as it 
>>>>> requires domain knowledge.  One is these warnings:
>>>>> 
>>>>> [00:47:14.821] WARN (asciidoctor): skipping reference to missing 
>>>>> attribute: apisyntax
>>>>>   file: 
>>>>> docs/components/modules/ROOT/pages/google-calendar-stream-component.adoc
>>>>>   source: https://github.com/djencks/camel.git 
>>>>> <https://github.com/djencks/camel.git> 
>>>>> <https://github.com/djencks/camel.git 
>>>>> <https://github.com/djencks/camel.git>> (refname: jsonpath-options, start 
>>>>> path: docs/components)
>>>>> [00:47:15.979] WARN (asciidoctor): skipping reference to missing 
>>>>> attribute: apisyntax
>>>>>   file: 
>>>>> docs/components/modules/ROOT/pages/google-mail-stream-component.adoc
>>>>>   source: https://github.com/djencks/camel.git 
>>>>> <https://github.com/djencks/camel.git> 
>>>>> <https://github.com/djencks/camel.git 
>>>>> <https://github.com/djencks/camel.git>> (refname: jsonpath-options, start 
>>>>> path: docs/components)
>>>>> [00:47:16.442] WARN (asciidoctor): skipping reference to missing 
>>>>> attribute: apisyntax
>>>>>   file: 
>>>>> docs/components/modules/ROOT/pages/google-sheets-stream-component.adoc
>>>>>   source: https://github.com/djencks/camel.git 
>>>>> <https://github.com/djencks/camel.git> 
>>>>> <https://github.com/djencks/camel.git 
>>>>> <https://github.com/djencks/camel.git>> (refname: jsonpath-options, start 
>>>>> path: docs/components)
>>>>> 
>>>>> 
>>>>> These three components are missing an apisyntax entry in their json 
>>>>> files.  The problem shows up in the current site as the literal string 
>>>>> ’null’.
>>>>> 
>>>> 
>>>> Ah yeah it looks like the -stream components are not API based, I am
>>>> going to fix this for Camel 3.12.
>>>> 
>>>> 
>>>>> There are some inconsistencies and mysteries in the gulpfile.js. I’ve 
>>>>> commented on some.
>>>>> 
>>>>> It would be great to know if anyone else can build the site from the PR 
>>>>> branch.
>>>>> 
>>>>> David Jencks
>>>>> 
>>>>>> On Aug 23, 2021, at 6:00 AM, Claus Ibsen <claus.ib...@gmail.com 
>>>>>> <mailto:claus.ib...@gmail.com> <mailto:claus.ib...@gmail.com 
>>>>>> <mailto:claus.ib...@gmail.com>>> wrote:
>>>>>> 
>>>>>> Hi
>>>>>> 
>>>>>> Ah yeah those were an idea to include the full page documentation in
>>>>>> case tooling may be able to use that for something useable.
>>>>>> However the tooling uses all the other bits, so we have just marked
>>>>>> those apis as deprecated.
>>>>>> 
>>>>>> So we can remove the files from the camel-catalog.
>>>>>> I have created a ticket to remove them
>>>>>> https://issues.apache.org/jira/browse/CAMEL-16881 
>>>>>> <https://issues.apache.org/jira/browse/CAMEL-16881> 
>>>>>> <https://issues.apache.org/jira/browse/CAMEL-16881 
>>>>>> <https://issues.apache.org/jira/browse/CAMEL-16881>>
>>>>>> 
>>>>>> On Sun, Aug 22, 2021 at 9:48 AM Zoran Regvart <zo...@regvart.com 
>>>>>> <mailto:zo...@regvart.com>> wrote:
>>>>>>> 
>>>>>>> Hi David,
>>>>>>> 
>>>>>>> On Sat, Aug 21, 2021 at 10:10 PM David Jencks <david.a.jen...@gmail.com 
>>>>>>> <mailto:david.a.jen...@gmail.com>> wrote:
>>>>>>>> 
>>>>>>>> I have a question about the purpose of the .adoc files in the catalog. 
>>>>>>>>  The changes proposed here will remove the tables of options from 
>>>>>>>> these copies of the component .adoc files.  These copies are already 
>>>>>>>> quite skimpy as they don’t successfully include the spring-boot 
>>>>>>>> information.
>>>>>>>> 
>>>>>>>> What are these copies of the .adoc files supposed to be useful for?
>>>>>>> 
>>>>>>> I think the catalog contains those so that an alternative UI can show
>>>>>>> them, think tooltips or inline help in an IDE. I think, though I'm not
>>>>>>> 100% sure that VSCode tooling is using that...
>>>>>>> 
>>>>>>>> If there’s a desire to make them more complete, one strategy would be 
>>>>>>>> to build the components module of the website using a custom UI that 
>>>>>>>> has nothing in it, so we just get plain undecorated html pages, and 
>>>>>>>> putting those in the catalog.  It would require some investigation, 
>>>>>>>> but it might conceivably be possible to arrange so links out of the 
>>>>>>>> components module go to the website rather than just be broken.
>>>>>>> 
>>>>>>> I'd keep it as simple as it can be, so plain .adoc files, or if we
>>>>>>> find out they're not used just remove them...
>>>>>>> 
>>>>>>> 2c
>>>>>>> 
>>>>>>> zoran
>>>>>>> --
>>>>>>> Zoran Regvart
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> --
>>>>>> Claus Ibsen
>>>>>> -----------------
>>>>>> http://davsclaus.com <http://davsclaus.com/> @davsclaus
>>>>>> Camel in Action 2: https://www.manning.com/ibsen2 
>>>>>> <https://www.manning.com/ibsen2>
>>>>> 
>>>> 
>>>> 
>>>> --
>>>> Claus Ibsen
>>>> -----------------
>>>> http://davsclaus.com <http://davsclaus.com/> <http://davsclaus.com/ 
>>>> <http://davsclaus.com/>> @davsclaus
>>>> Camel in Action 2: https://www.manning.com/ibsen2 
>>>> <https://www.manning.com/ibsen2> <https://www.manning.com/ibsen2 
>>>> <https://www.manning.com/ibsen2>>
>> 
> 
> 
> -- 
> Claus Ibsen
> -----------------
> http://davsclaus.com <http://davsclaus.com/> @davsclaus
> Camel in Action 2: https://www.manning.com/ibsen2 
> <https://www.manning.com/ibsen2>

Reply via email to