Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also .

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also .
base repository: latex3/l3build
base: 2019-09-29
head repository: latex3/l3build
compare: HEAD
Commits on Sep 29, 2019
First step of using automated deployment.
Using the set up from luaotfload but without
worrying about different branches: only do anything
on master branch.
Using the deployment system, we really want to be sure
a build completes *before* tagging. So that step should
be manual.
Thhe API token is stored with repo-specific encryption, so we need
different values for different repos. The new key is based on the same
GitHub access token as the key in luaotfload.
With draft: true, Travis only prepares releases and they have to be
confirmeed manually. This was done in luaotfload for testing purposes,
but it no longer is necessary and it just introduces useless overhead.
Commits on Sep 30, 2019
Goes with fix to #100, really, but is 'new' not 'fixed'.
Commits on Oct 01, 2019
Deals with texmfdir issues.
Tags in Git do not live in any specific branch, so a branch condition
for builds based on tags doesn't really fit into Git's model. Therefore
Travis silently ignores `branch: ...` if `tags: true` is given.
Commits on Oct 02, 2019
Also splits docinit() out of doc().
I'm not sure what exactly they've done, but the last
line here is new.
Commits on Oct 09, 2019
Commits on Oct 28, 2019
- prevent an internal error when no argument is given and clearly point out
  arguments are required for the command
- fix trivial spacing problems
Commits on Nov 01, 2019
* Normalize lua data references

* Mention Lua data reference normalization in docs
We loose \SHOWFILES but everything else still works.
Shows up in removing e-TeX from some tests ..
Commits on Nov 02, 2019
Commits on Nov 03, 2019
Commits on Nov 27, 2019
This shows up if you have mixed doc/source
material and use the --full target.
Commits on Jan 24, 2020
Commits on Feb 07, 2020
Commits on Feb 08, 2020
Commits on Mar 04, 2020
Commits on Mar 18, 2020
Without quotes, file names with spaces would throw something like:
  sh: 1: [: ../build/test/file: unexpected operator
Commits on Mar 24, 2020
Commits on Mar 25, 2020
Commits on Sep 14, 2020
Commits on Jan 14, 2021
Clarify documentation of tag and upload targets
Minor improvement
Commits on Jan 20, 2021
Based on the latex3 one.
Commits on Jan 26, 2021
Minimize reference to global variables (turn epoch to an argument)
Some names are "more explicit"
snake_case cosmetic change.
Inline documentation added.
Missing `>0` to test for a void table
Reword the comment on line 106
Commits on Jan 31, 2021
Commits on Feb 05, 2021
Commits on Feb 11, 2021
Using a possibly undefined global variable `i` instead of the local one `name`
Commits on Feb 20, 2021
This is a combination of 5 commits.

Prepare for additional test types

More work to make test types extensible

Next step

Should actually be extensible now

Fix embarrasing bugs
Commits on Feb 21, 2021
Remove local redeclaration of a local variable
Rename locals that hide outer locals (appending '_a' for example).
Simplify the shuffle overhead
Remove unused variable
format → format_a
Commits on Feb 23, 2021
As suggested, rename the outer variable instead of the inner
Change some names to be more explicit
Use of `ans` for `answer`.
One pair of () added to make operator precedence explicit.
Adopted suggestions: `str_format`, `engine_info`, `result`, `create_file_list`.
More explicit var names (with explanations)
ternary operator more explicit
Redundant loop counter in check.lua
`pattern` name dropped because of lua patterns.
Commented out code removed
Commits on Feb 24, 2021
Refactor set epoch cmd, clean locals, bug fix
Commits on Mar 08, 2021
Commits on Mar 19, 2021
- `tree` in file functions is ordered in deep first traversal. At a given level, the order is given by `lfs.dir`.
- cleandir is made in reverse order in install
- in clean the rm is also in reverse order
- some return values are fixed
- more efficient usage of lfs.attributes
- extra local
- no reverse order in install
Commits on Mar 24, 2021
- typo fixed: os_time
- gethome creates the directory before asking for abspath
Commits on May 13, 2021
Commits on Jul 08, 2021
Commits on Aug 05, 2021
Given that I have forgotten that again for the second time ...
Commits on Aug 07, 2021
Commits on Aug 15, 2021
Commits on Aug 28, 2021
Showing with 2,249 additions and 860 deletions.
  1. +56 −0 .github/tl_packages
  2. +54 −0 .github/workflows/deploy.yaml
  3. +45 −0 .github/workflows/main.yaml
  4. +18 −3 .gitignore
  5. +12 −1 .travis.yml
  6. +183 −3 CHANGELOG.md
  7. +1 −1 CONTRIBUTING.md
  8. +6 −6 README.md
  9. +3 −2 build.lua
  10. +1 −1 examples/Bundle-Flat/README.md
  11. +1 −1 examples/Bundle-Tree/README.md
  12. +2 −2 examples/README.md
  13. +1 −1 examples/Simple-Flat/README.md
  14. +1 −1 examples/Simple-Tree/README.md
  15. +17 −5 l3build-arguments.lua
  16. +88 −46 l3build-aux.lua
  17. +334 −237 l3build-check.lua
  18. +41 −18 l3build-clean.lua
  19. +33 −30 l3build-ctan.lua
  20. +92 −80 l3build-file-functions.lua
  21. +13 −8 l3build-help.lua
  22. +86 −54 l3build-install.lua
  23. +12 −14 l3build-manifest-setup.lua
  24. +2 −3 l3build-manifest.lua
  25. +8 −6 l3build-stdmain.lua
  26. +5 −6 l3build-tagging.lua
  27. +48 −43 l3build-typesetting.lua
  28. +13 −21 l3build-unpack.lua
  29. +60 −23 l3build-upload.lua
  30. +34 −5 l3build-variables.lua
  31. +119 −0 l3build-zip.lua
  32. +2 −2 l3build.1
  33. +318 −153 l3build.dtx
  34. +2 −2 l3build.ins
  35. +47 −15 l3build.lua
  36. +0 −10 support/texlive.profile
  37. +0 −44 support/texlive.sh
  38. +127 −13 testfiles-pdf/00-test-2.tpf
  39. +17 −0 testfiles-plain/plain-pdftex.ptex.tlg
  40. +17 −0 testfiles-plain/plain-pdftex.uptex.tlg
  41. +16 −0 testfiles/00-test-1.luatex.tlg
  42. +11 −0 testfiles/00-test-1.lvt
  43. +134 −0 testfiles/00-test-1.ptex.tlg
  44. +16 −0 testfiles/00-test-1.tlg
  45. +134 −0 testfiles/00-test-1.uptex.tlg
  46. +19 −0 testfiles/00-test-1.xetex.tlg
@@ -0,0 +1,56 @@
# The test framework itself
#
luatex
#
# Required to build formats
#
latex-bin
luahbtex
platex
uplatex
tex
xetex
# Requirements for the tests
amsfonts
etex-pkg
#
# Support for typesetting the docs
#
alphalph
atbegshi
atveryend
amsmath
bigintcalc
bitset
booktabs
ec
colortbl
csquotes
enumitem
etexcmds
fancyvrb
gettitlestring
graphics
hologo
hycolor
iftex
intcalc
kvdefinekeys
kvsetkeys
l3packages
letltxmacro
listings
ltxcmds
makeindex
needspace
oberdiek
pdfescape
pdftexcmds
psnfss
refcount
rerunfilecheck
hyperref
titlesec
tools
underscore
uniquecounter
@@ -0,0 +1,54 @@
name: Create release

# We create releases for all new tags
on:
push:
tags:
- "*"

jobs:
release:
runs-on: ubuntu-latest
name: Build release
environment: Release
steps:
# Boilerplate
- name: Checkout repository
uses: actions/checkout@v2
# GitHub Actions don't regenerate the test if the key doesn't change, so
# we integrate a random UUID into the key to keep them different.
# DO NOT CHANGE THIS
- name: Generate unique ID
id: get-id
run: |
echo -n ::set-output name=id::
cat /proc/sys/kernel/random/uuid
# Actually load the cache. Since we never reuse the key, we need restore-keys
# to indicate the prefix of our caches. This loads the newest cache with this
# prefix in the key.
#
# If we want to force regeneration of the cache, increase the number after
# *both* instances of "texlive-v"
- name: Load cache
uses: actions/cache@v2
with:
path: ~/texlive
key: texlive-v0-${{ steps.get-id.outputs.id }}
restore-keys: texlive-v0-
# We need Ghostscript for XeTeX tests.
- run: sudo apt-get install ghostscript
- name: Install TeX Live
uses: zauguin/install-texlive@v1
with:
# List the required TeX Live packages in a separate file to allow reuse in
# different workflows.
package_file: .github/tl_packages
- name: Run l3build
run: texlua l3build.lua ctan -H --show-log-on-error
# Now create the release (this only runs if the previous steps were successful)
- name: Create GitHub release
uses: ncipollo/release-action@880be3d0a71bc0fa98db60201d2cbdc27324f547
id: release
with:
artifacts: "build/distrib/ctan/*.zip"
token: ${{ secrets.GITHUB_TOKEN }}
@@ -0,0 +1,45 @@
name: Automated testing

on:
push:
pull_request:
branches:
- main

jobs:
l3build:
runs-on: ubuntu-latest
steps:
# Boilerplate
- name: Checkout repository
uses: actions/checkout@v2
# GitHub Actions don't regenerate the test if the key doesn't change, so
# we integrate a random UUID into the key to keep them different.
# DO NOT CHANGE THIS
- name: Generate unique ID
id: get-id
run: |
echo -n ::set-output name=id::
cat /proc/sys/kernel/random/uuid
# Actually load the cache. Since we never reuse the key, we need restore-keys
# to indicate the prefix of our caches. This loads the newest cache with this
# prefix in the key.
#
# If we want to force regeneration of the cache, increase the number after
# *both* instances of "texlive-v"
- name: Load cache
uses: actions/cache@v2
with:
path: ~/texlive
key: texlive-v0-${{ steps.get-id.outputs.id }}
restore-keys: texlive-v0-
# We need Ghostscript for XeTeX tests.
- run: sudo apt-get install ghostscript
- name: Install TeX Live
uses: zauguin/install-texlive@v1
with:
# List the required TeX Live packages in a separate file to allow reuse in
# different workflows.
package_file: .github/tl_packages
- name: Run l3build
run: texlua l3build.lua ctan -H --show-log-on-error
@@ -1,5 +1,20 @@
build/
*.pdf
build/*

*.zip
!testfiles/*.pdf

*.pdf
!*/testfiles/*.pdf

*.*~

*.aux
*.bbl
*.glo
*.gz
*.hd
*.idx
*.ilg
*.ind
*.log
*.out
*.toc
@@ -7,7 +7,7 @@ cache:
- $HOME/.texlive

script:
- texlua l3build.lua check -q -H
- texlua l3build.lua ctan -H --show-log-on-error

notifications:
email:
@@ -17,3 +17,14 @@ notifications:
on_failure: always
on_start: never

deploy:
- provider: releases
api_key:
secure: BJ4PXlX4H94+h+ucQM4+3eTy7o0kJPs+piH0p30UdQrf82rNGXJPOq8U38bmh/9O2BwvMjn/2qOPkpQBJ29XNMWbqQMO66EwCbNke4340p4otQn5k+adfOdBA20bRu1lrkn1FbPf/nVtGZXEJXcRBRnONMNicIO02tDIW6JqFrPMEyNGgnFApO3p2rqHIOjwNSWrxiBS8ab1MP+u4hzKSSzk1LUa1qGPxYPMtKWxAJfFyEKxaiVNIpvULncf9VemPSoBVCpm0qk9GUhEDIVNmiD8KnB4bBPzc3MraPJBgah/zdwR8NdXQ9gp9ZrWmT5zZxFHXtoX6r64R3Uy/YYJqjZK1oDAfz4ksGdmyos3v1lIsFniWI7ez/z4N87jLuS2bZ00dDCPeoN5OVkOmOY0STXc9+Dg59nGiinePoevhft1+Yso5oHTKlzgiJmNsur+0ovri3a0LBD8+6LfXvCH3lktpigBHuKSN/cRFVNyb2KfuncgyZ9zUhOfNNZcYtbxHr+uRZo+h5AwRwctvTdBJD+96j2Woas6kThz9et8jgRwwII5P/qQfV+aIxOWfP7rMnKrfbqMtM2tCh9wPqfgNEIG6ZClHvG2ixsHoL04wIEBuTwkMLMDAeyaBS3XILxjhsXV2+CJd09pFc9N2q21zLfEaZGeh9A837e8AjWJtuM=
file_glob: true
file:
- build/distrib/ctan/*.zip
skip_cleanup: true
on:
tags: true
prerelease: false

Showing you all comments on commits in this comparison.

@josephwright

This comment has been minimized.

Copy link
Member

@josephwright josephwright commented on 71fc32b Sep 30, 2019

Er .. where do we get this from>

@aminophen

This comment has been minimized.

Copy link

@aminophen aminophen commented on 914d379 Oct 27, 2019

Add eptex also:

    if not match(stdengine,"^e?u?ptex$") then
@aminophen

This comment has been minimized.

Copy link

@aminophen aminophen commented on 914d379 Oct 27, 2019

Or, better solution may be always interpreting ptex as eptex and uptex as euptex for variables checkengines, stdengine and co. Currently it seems that we are required to set explicitly "eptex" (not "ptex") to run eptex.

@stone-zeng

This comment has been minimized.

Copy link

@stone-zeng stone-zeng commented on d608616 Nov 2, 2019

Why the release/tag is 2019-01-11 rather than 2019-11-01? See https://github.com/latex3/l3build/releases/tag/2019-01-11.

@josephwright

This comment has been minimized.

Copy link
Member Author

@josephwright josephwright commented on d608616 Nov 2, 2019

Oops, that would be a typo ...

@u-fischer

This comment has been minimized.

Copy link
Member

@u-fischer u-fischer commented on f335511 Mar 13, 2020

I think this would be better, it remove the two ghostscript lines but leave the %%EOF (and so break less existing tests):

   elseif not match(line, "^ *$") and not match(line,"^%%%%Invocation") and not match(line,"^%%%%%+")  then