Hi Daniel, I'm using now "app.home" system property to bootstrap the configuration and merged FREEMARKER-153.
So in theory you could rebase/merge and try to use "app.home" ... Thanks in advance, Siegfried Goeschl > On 22.08.2020, at 19:43, Daniel Dekany <daniel.dek...@gmail.com> wrote: > > Link was wrong as well: > https://github.com/apache/freemarker-generator/blob/FREEMARKER-154/freemarker-generator-website/pom.xml#L85 > The you see what's needed currently only to get the info.ftl output. > > On Sat, Aug 22, 2020 at 7:39 PM Daniel Dekany <daniel.dek...@gmail.com> > wrote: > >> Pf, lot of typos... so to clarify, I did solve it, it's just fragile. Also >> onE of the "main" artifacts is >> freemarker-generator-cli-0.1.0-SNAPSHOT-app.tar.gz (so there, classifier is >> "app"). That's deployed to the repository, so it's a "real" artifact. >> >> On Sat, Aug 22, 2020 at 7:34 PM Daniel Dekany <daniel.dek...@gmail.com> >> wrote: >> >>> I could hack it around, the problem is that it's fragile as it is: >>> https://github.com/apache/freemarker-generator/blob/FREEMARKER-154/pom.xml >>> If it only needed app.home, then it would be much less fragile. (And also >>> easier for others to call it without the scripts. Well, OK, almost nobody >>> needs that... but it's cleaner overall.) >>> >>> There are main artifacts of different classifiers, on is "app". All >>> belong to "main" from Maven's perspective. Anyway, the point is to have a >>> project structure that helps understanding stuff. >>> >>> main/app is fine with me. >>> >>> On Sat, Aug 22, 2020 at 10:01 AM Siegfried Goeschl < >>> siegfried.goes...@gmail.com> wrote: >>> >>>> Hi Daniel, >>>> >>>> I'm mostly fine with the current directory layout >>>> >>>> * There is some documentation here - >>>> https://maven.apache.org/guides/introduction/introduction-to-the-standard-directory-layout.html >>>> * As far as Maven is concerned the main artefact is the JAR >>>> * Having said that the "Appassembler Maven plugin" makes assumptions as >>>> well >>>> * The "config" is (sort of still) there because until recently I >>>> packaged the config file as part of the JAR (currently FREEMARKER-153) and >>>> actually had two of them :-( >>>> >>>> I will review my changes before merging FREEMARKER-153 into master (end >>>> of this week hopefully) >>>> >>>> I do not fully understand the problem you had with the configuration >>>> when generating the docs - in the meantime you can start the Main class >>>> without config file >>>> >>>> Thanks in advance, >>>> >>>> Siegfried Goeschl >>>> >>>> >>>> >>>>> On 21.08.2020, at 11:59, Daniel Dekany <daniel.dek...@gmail.com> >>>> wrote: >>>>> >>>>> Also, I'm quite certain "templates" meant to be under "main", >>>> similarly as >>>>> "config" already is. (In case it's not just an oversight, it's because >>>> the >>>>> top-level categories under "src" ("main", "test", and "site") are the >>>>> different kind of deliverables. (OK, the test suite isn't really >>>>> deliverable, but it's a separate unit.) "templates" and "config" are >>>> both >>>>> part of the main deliverable, which is the app artifact, so they belong >>>>> under "main".) >>>>> >>>>> "src/scripts" doesn't look right for the same reason. As we deliver >>>> them >>>>> with the app, they belong under "main". Where inside that is not that >>>> clear >>>>> to me... I mean Maven doesn't really establish a convention there, but >>>>> maybe unde the assembly? Or maybe there should be a main/app-home to >>>> pack >>>>> all the statics under the app home (tempaltes, config, >>>> run-examples...). So >>>>> that's a more like matter of preference thing, I guess. >>>>> >>>>> On Thu, Aug 20, 2020 at 10:17 PM Daniel Dekany < >>>> daniel.dek...@gmail.com> >>>>> wrote: >>>>> >>>>>> We will need your signature that's here: >>>>>> https://dist.apache.org/repos/dist/dev/freemarker/KEYS and >>>>>> https://dist.apache.org/repos/dist/release/freemarker/KEYS, at least >>>> if >>>>>> you build the release artifacts. Otherwise I'm not exactly sure how >>>> you >>>>>> want to do this snapshot release thing. I think the best way to try if >>>>>> releasing is working is trying to do a release, but not actually start >>>>>> voting, and obviously not letting it outside the staging repo. >>>>>> >>>>>> I think you should merge back FREEMARKER-153 into the main branch, >>>> because >>>>>> it's the development head right now. (Like, if someone wanted to add >>>> a PR, >>>>>> it should be based on what's now 153, hence, that should be the >>>> master.) >>>>>> >>>>>> One thing I just ran into, while trying to add the rest of the docs. >>>> The >>>>>> configuration/freemarker-generator.properties is found based on >>>> CLASSPATH, >>>>>> while templates is found based on the "app.home" system property. I >>>> think >>>>>> it would be good if bareily setting "app.home", and ensuring the the >>>> Maven >>>>>> dependencies (jar-s) are found by Java makes the CLI work. I ran into >>>> this, >>>>>> because to generate documentation I need to class >>>> freemarker-generator from >>>>>> Maven (to capture the --help, etc.), and since the launcher scripts >>>> are >>>>>> platform dependent, I directly call >>>>>> org.apache.freemarker.generator.cli.Main. But I think in general that >>>> would >>>>>> be a step in the right direction, if that only has minimal >>>> requirements. >>>>>> >>>>>> On Fri, Aug 14, 2020 at 12:22 PM Siegfried Goeschl < >>>>>> siegfried.goes...@gmail.com> wrote: >>>>>> >>>>>>> Hi Daniel, >>>>>>> >>>>>>> Regarding SNAPSHOTs - I would be glad to see all the moving parts >>>>>>> working, e.g. generated artefacts, Hayes, signatures and upload :-) >>>>>>> >>>>>>> Thanks in advance, >>>>>>> >>>>>>> Siegfried Goeschl >>>>>>> >>>>>>> >>>>>>> >>>>>>>> On 13.08.2020, at 02:16, Daniel Dekany <daniel.dek...@gmail.com> >>>> wrote: >>>>>>>> >>>>>>>> A SNAPSHOT version is not public, so it's not really a release, and >>>> for >>>>>>>> internal testing you can build stuff. >>>>>>>> >>>>>>>> Also, I don't remember right now anything super important, but >>>> there are >>>>>>>> mails where I listed things. >>>>>>>> >>>>>>>> Yeah, I'm still in debt with the docgen conversion. It kind of >>>> works, if >>>>>>>> you saw that branch. I will continue to copy the md content into >>>> it, and >>>>>>>> hopefully won't run into any more stuff that makes me add Docgen >>>>>>> features. >>>>>>>> (Like last time I started shoveling in the Examples section, only to >>>>>>>> realize that we need to be able to insert external files, so now we >>>>>>> don't >>>>>>>> have to copy-paste templates and such into the documentation, each >>>> time >>>>>>>> they are changed in the source code.) Though it's not strictly a >>>> blocker >>>>>>>> for any kind kind of release. >>>>>>>> >>>>>>>> On Wed, Aug 12, 2020 at 8:53 PM Siegfried Goeschl < >>>>>>>> siegfried.goes...@gmail.com <mailto:siegfried.goes...@gmail.com>> >>>>>>> wrote: >>>>>>>> >>>>>>>>> Hi Daniel, >>>>>>>>> >>>>>>>>> Anything other things in the way for preparing a SNAPSHOT release? >>>>>>>>> >>>>>>>>> Thanks in advance, >>>>>>>>> >>>>>>>>> Siegfried Goeschl >>>>>>>>> >>>>>>>>> >>>>>>>>>> On 11.08.2020, at 22:57, Siegfried Goeschl < >>>>>>> siegfried.goes...@gmail.com> >>>>>>>>> wrote: >>>>>>>>>> >>>>>>>>>> Hi Daniel, >>>>>>>>>> >>>>>>>>>> Just pushed the changes >>>>>>>>>> >>>>>>>>>> freemarker-generator -t freemarker-generator/info.ftl >>>>>>>>>> >>>>>>>>>> Thanks in advance, >>>>>>>>>> >>>>>>>>>> Siegfried Goeschl >>>>>>>>>> >>>>>>>>>> >>>>>>>>>>> On 11.08.2020, at 22:44, Daniel Dekany <daniel.dek...@gmail.com >>>>>>>>> <mailto:daniel.dek...@gmail.com <mailto:daniel.dek...@gmail.com>>> >>>>>>> wrote: >>>>>>>>>>> >>>>>>>>>>> OK, no classpath loading for now. Can be done later if it will >>>> be a >>>>>>>>> problem >>>>>>>>>>> with Maven plugin or other non-CLI thing. After all, it's pretty >>>>>>>>>>> transparent where the templates are coming from. >>>>>>>>>>> >>>>>>>>>>> So, what about the reserved directory that holds all these built >>>> in >>>>>>>>>>> templates? See earlier in this thread. That also eliminates the >>>> issue >>>>>>>>> with >>>>>>>>>>> colliding with user templates (which you listed above). That's >>>> why I >>>>>>>>>>> brought it up actually, and for understability for the users. (I >>>>>>> don't >>>>>>>>> get >>>>>>>>>>> why you relate name clashes with loading from jar VS from plain >>>>>>>>> directory. >>>>>>>>>>> The name clash problem happens in both cases, and modifying the >>>>>>>>>>> installation is not an acceptable solution anyway.) >>>>>>>>>>> >>>>>>>>>>> Users can supply their own templates in their home directory, or >>>>>>> maybe >>>>>>>>> in >>>>>>>>>>> the future in /etc/freemarker-generator, and again, not by >>>> replacing >>>>>>>>>>> installed templates. (Even then, shadowing a standard template is >>>>>>>>> something >>>>>>>>>>> I would prevent. Preventing unwise users from hurting themselves >>>> is a >>>>>>>>>>> pretty important design goal.) >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> On Tue, Aug 11, 2020 at 9:49 PM Siegfried Goeschl < >>>>>>>>>>> siegfried.goes...@gmail.com <mailto:siegfried.goes...@gmail.com> >>>>>>> <mailto:siegfried.goes...@gmail.com <mailto: >>>> siegfried.goes...@gmail.com >>>>>>>>>> >>>>>>>>> wrote: >>>>>>>>>>> >>>>>>>>>>>> Hi Daniel, >>>>>>>>>>>> >>>>>>>>>>>> yesterday's email was a bit short since I was drained from the >>>> heat >>>>>>> :-( >>>>>>>>>>>> >>>>>>>>>>>> * I would like to provide a bunch of useful / generic templates >>>>>>>>> together >>>>>>>>>>>> with the FreeMarker Generator CLI - if those templates solve or >>>>>>> mostly >>>>>>>>>>>> solve one's problem we successfully increased the community >>>>>>>>>>>> * The useful / generic templates will be relying on code from >>>>>>>>>>>> freemarker-generator-tools so they are currently not generic >>>> since >>>>>>> the >>>>>>>>>>>> Maven plugin will not use freemarker-generator-tools due to the >>>>>>>>> transitive >>>>>>>>>>>> dependencies >>>>>>>>>>>> * Bundling useful templates can be done as file or from a JAR - >>>>>>>>> personally >>>>>>>>>>>> I prefer files to make things more visible by having files but >>>> class >>>>>>>>> path >>>>>>>>>>>> resources are also possible >>>>>>>>>>>> * Strictly personal opinion - problem with bundled templates is >>>> that >>>>>>>>> they >>>>>>>>>>>> might collide with user-supplied templates (rather theoretical >>>> issue >>>>>>>>> but >>>>>>>>>>>> log4j.properties picked up from the class path drove me crazy >>>> in the >>>>>>>>> past) >>>>>>>>>>>> * Consequently if a user really wants to remove / modify >>>> provided >>>>>>>>>>>> templates or add some new templates that's fine for me - it is a >>>>>>> free >>>>>>>>>>>> country and they obviously know what they are doing >>>>>>>>>>>> * On my last cloud project it would have been actually feasible >>>> to >>>>>>>>>>>> assemble a custom "freemarker-generator-cli" with more / other >>>>>>>>> templates, >>>>>>>>>>>> e.g. dumping Java keystores (which was done by some ugly shell >>>>>>> script) >>>>>>>>>>>> >>>>>>>>>>>> So at the end of the day I think we are discussing a very minor >>>>>>> point >>>>>>>>>>>> where we have different opinions and I don't see any real >>>> benefit >>>>>>> from >>>>>>>>>>>> using class path loading >>>>>>>>>>>> >>>>>>>>>>>> Thanks in advance, >>>>>>>>>>>> >>>>>>>>>>>> Siegfried Goeschl >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>>> On 11.08.2020, at 09:30, Daniel Dekany < >>>> daniel.dek...@gmail.com >>>>>>> <mailto:daniel.dek...@gmail.com> >>>>>>>>> <mailto:daniel.dek...@gmail.com <mailto:daniel.dek...@gmail.com>>> >>>>>>> wrote: >>>>>>>>>>>>> >>>>>>>>>>>>> On Mon, Aug 10, 2020 at 8:53 PM Siegfried Goeschl < >>>>>>>>>>>>> siegfried.goes...@gmail.com <mailto: >>>> siegfried.goes...@gmail.com> >>>>>>> <mailto:siegfried.goes...@gmail.com <mailto: >>>> siegfried.goes...@gmail.com >>>>>>>>>> >>>>>>>>> wrote: >>>>>>>>>>>>> >>>>>>>>>>>>>>> The fundamental problem with that is this. Currently, if you >>>>>>> pull in >>>>>>>>>>>>>>> freemarker-generator-cli as Maven dependency, the templates >>>> will >>>>>>>>> not be >>>>>>>>>>>>>>> available. Surely, because it's the CLI, you could say that >>>> it's >>>>>>> not >>>>>>>>>>>>>>> supposed to be used without the FreeMarker Generator Home >>>>>>> Directory >>>>>>>>>>>>>> created >>>>>>>>>>>>>>> somewhere, which contains the launch script and templates/ >>>> and >>>>>>> all. >>>>>>>>>>>> But, >>>>>>>>>>>>>> if >>>>>>>>>>>>>>> these templates are guaranteed functionality in FreeMarker >>>>>>>>> Generator, >>>>>>>>>>>>>> then >>>>>>>>>>>>>>> they don't strictly belong to the CLI. When we will have a >>>> proper >>>>>>>>> Maven >>>>>>>>>>>>>>> plugin for example, they should be still accessible. In that >>>>>>> case >>>>>>>>> you >>>>>>>>>>>>>> only >>>>>>>>>>>>>>> have your Maven dependencies, so the templates must come from >>>>>>> there. >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> Regarding visibility, it's a bit like with Java. Java >>>> classes are >>>>>>>>> not >>>>>>>>>>>> too >>>>>>>>>>>>>>> readable without looking at the source code either. That's >>>> not an >>>>>>>>>>>>>> advantage >>>>>>>>>>>>>>> when it comes to "visibility", sure. But luckily this is open >>>>>>>>> source, >>>>>>>>>>>> and >>>>>>>>>>>>>>> it's very easy to get to the source code, if someone really >>>> cares >>>>>>>>> (like >>>>>>>>>>>>>>> from the Maven source artifact). That applies to core stuff >>>>>>>>> implemented >>>>>>>>>>>>>> in >>>>>>>>>>>>>>> FTL as well. So, the previously mentioned advantage (that >>>> they >>>>>>> are >>>>>>>>>>>>>>> available from a plain dependency) certainly overweights this >>>>>>>>>>>>>> disadvantage >>>>>>>>>>>>>>> (less visibility). >>>>>>>>>>>>>> >>>>>>>>>>>>>> I currently disagree here - I like the visibility aspect and >>>> it is >>>>>>>>>>>> pretty >>>>>>>>>>>>>> difficult to get rid of templates loaded from the classpath. >>>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> What do you mean by getting rid of them? I hope you agree that >>>>>>> users >>>>>>>>>>>>> shouldn't remove or modify these templates directly in the >>>>>>> FreeMarker >>>>>>>>>>>>> Generator installation. >>>>>>>>>>>>> >>>>>>>>>>>>> What do you intend to do about the dependency problem, >>>> described >>>>>>>>> above? >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> -- >>>>>>>>>>> Best regards, >>>>>>>>>>> Daniel Dekany >>>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> Best regards, >>>>>>>> Daniel Dekany >>>>>>> >>>>>>> >>>>>> >>>>>> -- >>>>>> Best regards, >>>>>> Daniel Dekany >>>>>> >>>>> >>>>> >>>>> -- >>>>> Best regards, >>>>> Daniel Dekany >>>> >>>> >>> >>> -- >>> Best regards, >>> Daniel Dekany >>> >> >> >> -- >> Best regards, >> Daniel Dekany >> > > > -- > Best regards, > Daniel Dekany