l3build icon indicating copy to clipboard operation
l3build copied to clipboard

Feature request: sourcefilestree and docfilestree

Open pablgonz opened this issue 4 years ago • 1 comments

Hello, at the moment l3build has the variables sourcefiledir and docfiledir which assume that the source code or documentation is under the directory defined in that variable, but, in some cases, the source code and documentation files are separated in several directories locally and in CTAN. Here's an example (only doc in tree):

$ tree -d tkz-euclide/
tkz-euclide/
├── doc        (some static PDF, main doc.pdf)
│   └── latex  (source doc)
├── examples   (examples, part from doc)
└── latex      (source code)

You can play around a bit by copying and creating temporary directories and make it work with l3build by making a structure like this:

tkz-euclide/
├── code          (source code)
└── doc           (some static PDF, main doc.pdf)
    ├── examples  (examples, part from doc)
    └── sourcedoc (source doc)

Another example (source in tree):

$ tree -d pgfornament/
pgfornament/
├── doc            (source doc)
├── generic        (source code tree)
│   ├── am         (source code .pgf)
│   ├── pgfhan     (source code .pgf)
│   └── vectorian  (source code .pgf)
└── latex          (source code .sty)

Playing a little

$ tree -d pgfornament/
pgfornament/
├── code
│   ├── generic       (source code tree)
│   │   ├── am        (source code .pgf)
│   │   ├── pgfhan    (source code .pgf)
│   │   └── vectorian (source code .pgf)
│   └── latex         (source code .sty)
└── doc               (source doc)

So far so good, but, in CTAN the local structures are recorded since the first time the packages were uploaded, making the changes so that it works with l3build will modify the structure and (probably) the CTAN team will complain about this by having to update and modify their catalogues (I'm not sure, but it's more than likely).

It will be possible to implement a couple of variables that will allow me to keep my local structure (not the installation TDS structure) something like sourcefilestree and docfilestree or maybe ctanlocation to achieve this.

If this is a very complex request or is outside the scope of l3build please close this.

pablgonz avatar Apr 10 '20 16:04 pablgonz

Related to #212

pablgonz avatar Nov 25 '21 00:11 pablgonz