> On Mar 25, 2021, at 7:53 AM, Zowalla, Richard > <richard.zowa...@hs-heilbronn.de> wrote: > > Hi David, Hi Jon, > > thanks for your replies. > > I just pushed some (short term) fixes to the tomee-site-generator: > > (a) Added an (experimental) generator to create the download page based > on downloads.apache.org or archive.apache.org (rather than using > repo.maven.apache.org), so we can be sure, that the links are working. > > (b) I updated the downloads-ng.adoc with (1) the feedback by Sebb and > Romain from [1] - so it is now a bit "cleaner" (imho). > > (c) I updated and automatically converted the previous download- > archive.adoc to ensure, that the links are working again. We had some > mismatches related to "http" for the repo.maven.apache.org links for > very old releases and some broken links due to the request by INFRA to > remove very old relases from the mirroring system. Old releases, which > previously linked to the mirrors are now linking to archive.apache.org. > > I will try to update https://github.com/apache/tomee-site-pub with the > changes as well. > > As stated above: This is only a "short term" fix to comply with the > infra requirements. I will respond on the other mail as well.
Took a quick look and love the clean and direct approach you have in the code! I'm a big fan of static inner classes to keep code tight and easy to digest. Some style advice, get in the habit of using the `final` keyword on all fields, variables and parameters. It'll look strange at first, but you'll get used to it and it'll change the way you code in a good way. For example these variables should be marked final and not initialized immediately: - https://github.com/apache/tomee-site-generator/commit/27a46ae7d958867431398f86abf1ed55df4a3f74#diff-30e729b63bba575db7b6e9681e02c8ff1faf81f33d27c610c2bbeb4fe333cc23R149-R151 Once you did that all your code would work ok, minus this chunk which the compiler would force you to deal with differently. You'd be forced to handle the situation better than simply a System.out no one will read. - https://github.com/apache/tomee-site-generator/commit/27a46ae7d958867431398f86abf1ed55df4a3f74#diff-30e729b63bba575db7b6e9681e02c8ff1faf81f33d27c610c2bbeb4fe333cc23R162-R164 If it's not going to work, better it really doesn't work and just throw an exception with "this should never happen." That way the future Jenkins job will appear red, not green, and we don't update the website with any potentially invalid content. Instead of someone coming to the website and seeing links with no names, they'd simply see the old-but-valid links. The developer who attempted the website update can just as easily determine the update didn't work by noticing the links are old as they can by the links are invalid. However if they don't notice by looking at the website, they can notice by seeing failed Jenkins job. Until they notice, the website stays valid (assuming the release wasn't removed from the mirror of course). Moreover, if someone who is not you tried to use this code and that "should never happen" situation occurred, they'd have no exception or stack trace to immediately point them in the right direction. They'd have to be keen to spot "This should not happen. New extensions?" among the output, know it is significant, and search for the line in the code where it occurs. Often an exception does occur, just later in the code and that often means people more easily miss the "This should not happen" output, because their attention is drawn to the stacktrace which is actually just a symptom. Avoiding mutable fields and favoring final would have forced you down the path of eagerly failing vs continuing with invalid defaults. Love the update, I see you did use final in many places! You're on the right track. Lean into that more and try to force yourself to use it even when it at first feels odd. I hope the feedback is welcome and you see it as a compliment. You've been doing so much great work and spending your time helping the project, it's my way of saying thank you and you're worth the time to mentor :) For whatever that's worth :) Keep up the truly awesome work. If we had 5 more Richards this project would be signing. We'll get there :) -David
smime.p7s
Description: S/MIME cryptographic signature