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/latex3
base: 2019-01-28
head repository: latex3/latex3
compare: 2019-03-05
Commits on Jan 29, 2019
The documented behaviour for \keys_set_known:nnN is
unchanged: a new argument is used to provide a relative
path.
At least I think: had to zap my local cache to get this change.
Commits on Feb 09, 2019
This will be needed for an upcoming change, which
will drop evaluation of points in general.
Commits on Feb 10, 2019
This makes the code clearer but also looks forward to using e-type expansion.
There are changes to values in the test files:
small rounding-based issues.
… [ci-skip]

Worth discussing: the split I made between variable types for which v/V-type
expansion works (int,fp,dim,skip,muskip,tl,str,clist,seq) and doesn't work
(bool,box,coffin,flag,fparray,intarray,ior,iow,prop,regex).  Notice I put
seq in the first list and prop in the second, because it is plausible that
we one day decide to store items of a prop in different csnames, in which
case the single expansion of exp_args:V would not unpack the value.
Commits on Feb 17, 2019
[ci skip]
Commits on Feb 20, 2019
Commits on Feb 24, 2019
Fixed typos, see #541
Commits on Feb 26, 2019
as per Frank's suggestion with two args
Commits on Mar 02, 2019
One should probably do the same for \dim_eval:n etc in l3skip, but I'm not
sure I know all the subtleties.
Same for the hyperlinks on star and hollow star for expandable commands.
I've also removed the red color because it is only used for links.
Commits on Mar 03, 2019
The gamma function is much harder because it is defined at non-integer
arguments of course.  I've opted for a function fact() to be used
in expressions because none of the other advanced functions are
provided as \fp_...:n.  I've hesitated between the full word factorial
and the shorter name, to be more in line with things like cos or atan.
This can easily be changed.
Commits on Mar 04, 2019
Commits on Mar 05, 2019
Showing with 18,190 additions and 8,065 deletions.
  1. +6 −2 .travis.yml
  2. +1 −1 build.lua
  3. +0 −8 contrib/testfiles/chemformula001.luatex.tlg
  4. +0 −8 contrib/testfiles/chemformula001.ptex.tlg
  5. +0 −8 contrib/testfiles/chemformula001.tlg
  6. +0 −8 contrib/testfiles/chemformula001.uptex.tlg
  7. +0 −8 contrib/testfiles/chemformula001.xetex.tlg
  8. +4 −4 contrib/testfiles/ctex002.luatex.tlg
  9. +4 −4 contrib/testfiles/unicode-math001.xetex.tlg
  10. +13 −1 l3experimental/CHANGELOG.md
  11. +1 −1 l3experimental/README.md
  12. +2 −2 l3experimental/l3benchmark/l3benchmark.dtx
  13. +2 −2 l3experimental/l3cctab/l3cctab.dtx
  14. +2 −2 l3experimental/l3color/l3color.dtx
  15. +1 −0 l3experimental/l3draw/build.lua
  16. +1 −1 l3experimental/l3draw/l3draw-boxes.dtx
  17. +2 −0 l3experimental/l3draw/l3draw-code.tex
  18. +216 −0 l3experimental/l3draw/l3draw-layers.dtx
  19. +16 −29 l3experimental/l3draw/l3draw-paths.dtx
  20. +63 −34 l3experimental/l3draw/l3draw-points.dtx
  21. +12 −4 l3experimental/l3draw/l3draw-scopes.dtx
  22. +1 −1 l3experimental/l3draw/l3draw-softpath.dtx
  23. +1 −1 l3experimental/l3draw/l3draw-state.dtx
  24. +29 −29 l3experimental/l3draw/l3draw-transforms.dtx
  25. +45 −9 l3experimental/l3draw/l3draw.dtx
  26. +1 −0 l3experimental/l3draw/l3draw.ins
  27. +1 −0 l3experimental/l3draw/testfiles/m3draw000.tlg
  28. +19 −8 l3experimental/l3draw/testfiles/m3draw002.lvt
  29. +23 −7 l3experimental/l3draw/testfiles/m3draw002.tlg
  30. +241 −211 l3experimental/l3draw/testfiles/m3draw003.luatex.tlg
  31. +234 −205 l3experimental/l3draw/testfiles/m3draw003.ptex.tlg
  32. +234 −205 l3experimental/l3draw/testfiles/m3draw003.tlg
  33. +234 −205 l3experimental/l3draw/testfiles/m3draw003.uptex.tlg
  34. +234 −205 l3experimental/l3draw/testfiles/m3draw003.xetex.tlg
  35. +501 −0 l3experimental/l3draw/testfiles/m3draw004.luatex.tlg
  36. +137 −118 l3experimental/l3draw/testfiles/m3draw004.ptex.tlg
  37. +140 −121 l3experimental/l3draw/testfiles/m3draw004.tlg
  38. +137 −118 l3experimental/l3draw/testfiles/m3draw004.uptex.tlg
  39. +137 −118 l3experimental/l3draw/testfiles/m3draw004.xetex.tlg
  40. +89 −0 l3experimental/l3draw/testfiles/m3draw005.luatex.tlg
  41. +44 −41 l3experimental/l3draw/testfiles/m3draw005.ptex.tlg
  42. +43 −40 l3experimental/l3draw/testfiles/m3draw005.tlg
  43. +44 −41 l3experimental/l3draw/testfiles/m3draw005.uptex.tlg
  44. +44 −41 l3experimental/l3draw/testfiles/m3draw005.xetex.tlg
  45. +378 −0 l3experimental/l3draw/testfiles/m3draw006.luatex.tlg
  46. +206 −197 l3experimental/l3draw/testfiles/m3draw006.ptex.tlg
  47. +197 −188 l3experimental/l3draw/testfiles/m3draw006.tlg
  48. +206 −197 l3experimental/l3draw/testfiles/m3draw006.uptex.tlg
  49. +206 −197 l3experimental/l3draw/testfiles/m3draw006.xetex.tlg
  50. +2 −2 l3experimental/l3str/l3str-convert.dtx
  51. +2 −2 l3experimental/l3str/l3str-format.dtx
  52. +2 −2 l3experimental/l3sys-shell/l3sys-shell.dtx
  53. +2 −2 l3experimental/xcoffins/xcoffins.dtx
  54. +2 −2 l3experimental/xgalley/l3galley.dtx
  55. +2 −2 l3experimental/xgalley/xgalley.dtx
  56. +62 −1 l3kernel/CHANGELOG.md
  57. +1 −1 l3kernel/README.md
  58. +14 −18 l3kernel/expl3.dtx
  59. +1 −1 l3kernel/interface3.tex
  60. +1 −1 l3kernel/l3alloc.dtx
  61. +130 −89 l3kernel/l3basics.dtx
  62. +1 −98 l3kernel/l3bootstrap.dtx
  63. +1 −44 l3kernel/l3box.dtx
  64. +73 −844 l3kernel/l3candidates.dtx
  65. +7 −19 l3kernel/l3clist.dtx
  66. +586 −9 l3kernel/l3coffins.dtx
  67. +1 −1 l3kernel/l3color-base.dtx
  68. +880 −72 l3kernel/l3deprecation.dtx
  69. +95 −8 l3kernel/l3doc.dtx
  70. +1 −1 l3kernel/l3docstrip.dtx
  71. +6 −6 l3kernel/l3drivers.dtx
  72. +114 −26 l3kernel/l3expan.dtx
  73. +182 −70 l3kernel/l3file.dtx
  74. +1 −1 l3kernel/l3final.dtx
  75. +1 −1 l3kernel/l3flag.dtx
  76. +1 −1 l3kernel/l3fp-assign.dtx
  77. +5 −36 l3kernel/l3fp-aux.dtx
  78. +1 −1 l3kernel/l3fp-basics.dtx
  79. +7 −14 l3kernel/l3fp-convert.dtx
  80. +122 −1 l3kernel/l3fp-expo.dtx
  81. +1 −1 l3kernel/l3fp-extended.dtx
  82. +1 −1 l3kernel/l3fp-logic.dtx
  83. +1 −1 l3kernel/l3fp-parse.dtx
  84. +1 −1 l3kernel/l3fp-random.dtx
  85. +1 −1 l3kernel/l3fp-round.dtx
  86. +1 −1 l3kernel/l3fp-traps.dtx
  87. +1 −1 l3kernel/l3fp-trig.dtx
  88. +14 −1 l3kernel/l3fp.dtx
  89. +1 −1 l3kernel/l3fparray.dtx
  90. +53 −89 l3kernel/l3int.dtx
  91. +1 −1 l3kernel/l3intarray.dtx
  92. +1 −9 l3kernel/l3kernel-functions.dtx
  93. +368 −153 l3kernel/l3keys.dtx
  94. +1 −17 l3kernel/l3luatex.dtx
  95. +13 −101 l3kernel/l3msg.dtx
  96. +30 −1 l3kernel/l3names.dtx
  97. +3 −0 l3kernel/l3obsolete.txt
  98. +138 −137 l3kernel/l3prefixes.csv
  99. +1 −42 l3kernel/l3prg.dtx
  100. +30 −1 l3kernel/l3prop.dtx
  101. +1 −1 l3kernel/l3quark.dtx
  102. +1 −1 l3kernel/l3regex.dtx
  103. +1 −1 l3kernel/l3seq.dtx
  104. +1 −1 l3kernel/l3skip.dtx
  105. +2 −2 l3kernel/l3sort.dtx
  106. +13 −26 l3kernel/l3str.dtx
  107. +1 −1 l3kernel/l3styleguide.tex
  108. +3 −3 l3kernel/l3syntax-changes.tex
  109. +13 −2 l3kernel/l3sys.dtx
  110. +1 −1 l3kernel/l3term-glossary.tex
  111. +1 −18 l3kernel/l3tl-analysis.dtx
  112. +57 −12 l3kernel/l3tl.dtx
  113. +1 −114 l3kernel/l3token.dtx
  114. +1 −1 l3kernel/l3unicode.dtx
  115. +1 −1 l3kernel/source3.tex
  116. +39 −19 l3kernel/source3body.tex
  117. +1,076 −112 l3kernel/testfiles/m3coffins001.luatex.tlg
  118. +160 −69 l3kernel/testfiles/m3coffins001.lvt
  119. +1,076 −112 l3kernel/testfiles/m3coffins001.ptex.tlg
  120. +1,076 −112 l3kernel/testfiles/m3coffins001.tlg
  121. +1,076 −112 l3kernel/testfiles/m3coffins001.uptex.tlg
  122. +1,076 −112 l3kernel/testfiles/m3coffins001.xetex.tlg
  123. +70 −134 l3kernel/testfiles/m3deprecation001.luatex.tlg
  124. +6 −2 l3kernel/testfiles/m3deprecation001.lvt
  125. +70 −134 l3kernel/testfiles/m3deprecation001.tlg
  126. +191 −0 l3kernel/testfiles/m3deprecation002.luatex.tlg
  127. +48 −0 l3kernel/testfiles/m3deprecation002.lvt
  128. +191 −0 l3kernel/testfiles/m3deprecation002.tlg
  129. +33 −0 l3kernel/testfiles/m3deprecation003.luatex.tlg
  130. +27 −0 l3kernel/testfiles/m3deprecation003.lvt
  131. +33 −0 l3kernel/testfiles/m3deprecation003.tlg
  132. +0 −3 l3kernel/testfiles/m3expan001.lvt
  133. +0 −1 l3kernel/testfiles/m3expan002.lvt
  134. +63 −0 l3kernel/testfiles/m3expan004.lvt
  135. +36 −0 l3kernel/testfiles/m3expan004.tlg
  136. +282 −160 l3kernel/testfiles/m3expl001.luatex.tlg
  137. +286 −160 l3kernel/testfiles/m3expl001.ptex.tlg
  138. +286 −160 l3kernel/testfiles/m3expl001.tlg
  139. +286 −160 l3kernel/testfiles/m3expl001.uptex.tlg
  140. +286 −160 l3kernel/testfiles/m3expl001.xetex.tlg
  141. +8 −7 l3kernel/testfiles/m3expl002.luatex.tlg
  142. +8 −7 l3kernel/testfiles/m3expl002.ptex.tlg
  143. +8 −7 l3kernel/testfiles/m3expl002.tlg
  144. +8 −7 l3kernel/testfiles/m3expl002.uptex.tlg
  145. +8 −7 l3kernel/testfiles/m3expl002.xetex.tlg
  146. +282 −160 l3kernel/testfiles/m3expl003.luatex.tlg
  147. +286 −160 l3kernel/testfiles/m3expl003.ptex.tlg
  148. +286 −160 l3kernel/testfiles/m3expl003.tlg
  149. +286 −160 l3kernel/testfiles/m3expl003.uptex.tlg
  150. +286 −160 l3kernel/testfiles/m3expl003.xetex.tlg
  151. +8 −7 l3kernel/testfiles/m3expl004.luatex.tlg
  152. +8 −7 l3kernel/testfiles/m3expl004.ptex.tlg
  153. +8 −7 l3kernel/testfiles/m3expl004.tlg
  154. +8 −7 l3kernel/testfiles/m3expl004.uptex.tlg
  155. +8 −7 l3kernel/testfiles/m3expl004.xetex.tlg
  156. +8 −7 l3kernel/testfiles/m3expl006.luatex.tlg
  157. +8 −7 l3kernel/testfiles/m3expl006.ptex.tlg
  158. +8 −7 l3kernel/testfiles/m3expl006.tlg
  159. +8 −7 l3kernel/testfiles/m3expl006.uptex.tlg
  160. +8 −7 l3kernel/testfiles/m3expl006.xetex.tlg
  161. +14 −14 l3kernel/testfiles/m3file001.lvt
  162. +4 −4 l3kernel/testfiles/m3file001.ptex.tlg
  163. +4 −4 l3kernel/testfiles/m3file001.tlg
  164. +4 −4 l3kernel/testfiles/m3file001.uptex.tlg
  165. +4 −4 l3kernel/testfiles/m3file001.xetex.tlg
  166. +1 −7 l3kernel/testfiles/m3file002.tlg
  167. +23 −0 l3kernel/testfiles/m3fp-expo001.lvt
  168. +67 −0 l3kernel/testfiles/m3fp-expo001.tlg
  169. +31 −0 l3kernel/testfiles/m3keys002.lvt
  170. +26 −0 l3kernel/testfiles/m3keys002.tlg
  171. +3 −1 l3kernel/testfiles/m3keys003.lvt
  172. +3 −0 l3kernel/testfiles/m3keys003.tlg
  173. +33 −1 l3kernel/testfiles/m3keys004.lvt
  174. +42 −7 l3kernel/testfiles/m3keys004.tlg
  175. +1 −1 l3kernel/testfiles/m3prg001.tlg
  176. +0 −18 l3kernel/testfiles/m3tl007.lvt
  177. +3 −13 l3kernel/testfiles/m3tl007.tlg
  178. +0 −1 l3kernel/testfiles/m3tl009.lvt
  179. +0 −5 l3kernel/testfiles/m3tl009.tlg
  180. +1 −1 l3kernel/testfiles/m3token002.luatex.tlg
  181. +8 −8 l3kernel/testfiles/m3token002.lvt
  182. +1 −1 l3kernel/testfiles/m3token002.tlg
  183. +12 −1 l3packages/CHANGELOG.md
  184. +1 −1 l3packages/README.md
  185. +2 −2 l3packages/l3keys2e/l3keys2e.dtx
  186. +0 −1 l3packages/xfp/testfiles/xfp000.tlg
  187. +3 −2 l3packages/xfp/xfp.dtx
  188. +2 −2 l3packages/xfrac/xfrac.dtx
  189. +0 −1 l3packages/xparse/testfiles/xparse000.tlg
  190. +21 −22 l3packages/xparse/testfiles/xparse001.ptex.tlg
  191. +21 −22 l3packages/xparse/testfiles/xparse001.tlg
  192. +21 −22 l3packages/xparse/testfiles/xparse001.uptex.tlg
  193. +18 −24 l3packages/xparse/testfiles/xparse003.tlg
  194. +77 −80 l3packages/xparse/testfiles/xparse004.luatex.tlg
  195. +77 −80 l3packages/xparse/testfiles/xparse004.tlg
  196. +154 −1 l3packages/xparse/testfiles/xparse005.lvt
  197. +381 −0 l3packages/xparse/testfiles/xparse005.tlg
  198. +545 −293 l3packages/xparse/xparse.dtx
  199. +2 −2 l3packages/xtemplate/xtemplate.dtx
  200. +5 −7 l3trial/l3check/l3check.dtx
  201. +5 −28 l3trial/l3image/l3image.dtx
  202. +20 −0 support/texlive.sh
  203. +14 −2 xpackages/xor/xo-page.dtx
@@ -6,8 +6,12 @@ cache:
- /tmp/texlive
- $HOME/.texlive

script:
- texlua build.lua check -q -H
jobs:
include:
- script: l3build check -q -H
name: "Test suite"
- script: l3build doc -q -H
name: "Documentation"

notifications:
email:
@@ -38,7 +38,7 @@ function main(target)
end
end
elseif target == "doc" then
errorlevel = call(bundles, "doc")
errorlevel = call(ctanbundles, "doc")
elseif target == "install" then
errorlevel = call (bundles, "install")
elseif target == "uninstall" then
@@ -131,9 +131,7 @@ Completed box being shipped out [1]
.............\pdfliteral origin{0 G }
.............\pdfliteral origin{0 g }
.............\hbox(0.0+0.0)x0.0, direction TLT
..............\pdfcolorstack 0 push {0 g 0 G}
..............\hbox(0.0+0.0)x0.0, direction TLT
..............\pdfcolorstack 0 pop
.............\glue(\spaceskip) 0.0
...........\pdfliteral origin{Q }
...........\glue(\spaceskip) 0.0
@@ -159,9 +157,7 @@ Completed box being shipped out [1]
.............\pdfliteral origin{0 G }
.............\pdfliteral origin{0 g }
.............\hbox(0.0+0.0)x0.0, direction TLT
..............\pdfcolorstack 0 push {0 g 0 G}
..............\hbox(0.0+0.0)x0.0, direction TLT
..............\pdfcolorstack 0 pop
.............\glue(\spaceskip) 0.0
...........\pdfliteral origin{Q }
...........\glue(\spaceskip) 0.0
@@ -344,9 +340,7 @@ Completed box being shipped out [1]
.............\pdfliteral origin{0 G }
.............\pdfliteral origin{0 g }
.............\hbox(0.0+0.0)x0.0, direction TLT
..............\pdfcolorstack 0 push {0 g 0 G}
..............\hbox(0.0+0.0)x0.0, direction TLT
..............\pdfcolorstack 0 pop
.............\glue(\spaceskip) 0.0
...........\pdfliteral origin{Q }
...........\glue(\spaceskip) 0.0
@@ -372,9 +366,7 @@ Completed box being shipped out [1]
.............\pdfliteral origin{0 G }
.............\pdfliteral origin{0 g }
.............\hbox(0.0+0.0)x0.0, direction TLT
..............\pdfcolorstack 0 push {0 g 0 G}
..............\hbox(0.0+0.0)x0.0, direction TLT
..............\pdfcolorstack 0 pop
.............\glue(\spaceskip) 0.0
...........\pdfliteral origin{Q }
...........\glue(\spaceskip) 0.0
@@ -139,9 +139,7 @@ Completed box being shipped out [1]
.........\hbox(0.0+0.0)x0.0
..........\special{ps: 0 setgray }
..........\hbox(0.0+0.0)x0.0
...........\special{color push gray 0}
...........\hbox(0.0+0.0)x0.0
...........\special{color pop}
..........\glue 0.0
.........\glue 0.0
.........\special{ps::[begin]}
@@ -164,9 +162,7 @@ Completed box being shipped out [1]
.........\hbox(0.0+0.0)x0.0
..........\special{ps: 0 setgray }
..........\hbox(0.0+0.0)x0.0
...........\special{color push gray 0}
...........\hbox(0.0+0.0)x0.0
...........\special{color pop}
..........\glue 0.0
.........\glue 0.0
.........\special{ps::[begin]}
@@ -344,9 +340,7 @@ Completed box being shipped out [1]
.........\hbox(0.0+0.0)x0.0
..........\special{ps: 0 setgray }
..........\hbox(0.0+0.0)x0.0
...........\special{color push gray 0}
...........\hbox(0.0+0.0)x0.0
...........\special{color pop}
..........\glue 0.0
.........\glue 0.0
.........\special{ps::[begin]}
@@ -369,9 +363,7 @@ Completed box being shipped out [1]
.........\hbox(0.0+0.0)x0.0
..........\special{ps: 0 setgray }
..........\hbox(0.0+0.0)x0.0
...........\special{color push gray 0}
...........\hbox(0.0+0.0)x0.0
...........\special{color pop}
..........\glue 0.0
.........\glue 0.0
.........\special{ps::[begin]}
@@ -126,9 +126,7 @@ Completed box being shipped out [1]
.............\pdfliteral{0 G }
.............\pdfliteral{0 g }
.............\hbox(0.0+0.0)x0.0
..............\pdfcolorstack 0 push {0 g 0 G}
..............\hbox(0.0+0.0)x0.0
..............\pdfcolorstack 0 pop
.............\glue 0.0
...........\pdfliteral{Q }
...........\glue 0.0
@@ -155,9 +153,7 @@ Completed box being shipped out [1]
.............\pdfliteral{0 G }
.............\pdfliteral{0 g }
.............\hbox(0.0+0.0)x0.0
..............\pdfcolorstack 0 push {0 g 0 G}
..............\hbox(0.0+0.0)x0.0
..............\pdfcolorstack 0 pop
.............\glue 0.0
...........\pdfliteral{Q }
...........\glue 0.0
@@ -335,9 +331,7 @@ Completed box being shipped out [1]
.............\pdfliteral{0 G }
.............\pdfliteral{0 g }
.............\hbox(0.0+0.0)x0.0
..............\pdfcolorstack 0 push {0 g 0 G}
..............\hbox(0.0+0.0)x0.0
..............\pdfcolorstack 0 pop
.............\glue 0.0
...........\pdfliteral{Q }
...........\glue 0.0
@@ -364,9 +358,7 @@ Completed box being shipped out [1]
.............\pdfliteral{0 G }
.............\pdfliteral{0 g }
.............\hbox(0.0+0.0)x0.0
..............\pdfcolorstack 0 push {0 g 0 G}
..............\hbox(0.0+0.0)x0.0
..............\pdfcolorstack 0 pop
.............\glue 0.0
...........\pdfliteral{Q }
...........\glue 0.0
@@ -139,9 +139,7 @@ Completed box being shipped out [1]
.........\hbox(0.0+0.0)x0.0
..........\special{ps: 0 setgray }
..........\hbox(0.0+0.0)x0.0
...........\special{color push gray 0}
...........\hbox(0.0+0.0)x0.0
...........\special{color pop}
..........\glue 0.0
.........\glue 0.0
.........\special{ps::[begin]}
@@ -164,9 +162,7 @@ Completed box being shipped out [1]
.........\hbox(0.0+0.0)x0.0
..........\special{ps: 0 setgray }
..........\hbox(0.0+0.0)x0.0
...........\special{color push gray 0}
...........\hbox(0.0+0.0)x0.0
...........\special{color pop}
..........\glue 0.0
.........\glue 0.0
.........\special{ps::[begin]}
@@ -344,9 +340,7 @@ Completed box being shipped out [1]
.........\hbox(0.0+0.0)x0.0
..........\special{ps: 0 setgray }
..........\hbox(0.0+0.0)x0.0
...........\special{color push gray 0}
...........\hbox(0.0+0.0)x0.0
...........\special{color pop}
..........\glue 0.0
.........\glue 0.0
.........\special{ps::[begin]}
@@ -369,9 +363,7 @@ Completed box being shipped out [1]
.........\hbox(0.0+0.0)x0.0
..........\special{ps: 0 setgray }
..........\hbox(0.0+0.0)x0.0
...........\special{color push gray 0}
...........\hbox(0.0+0.0)x0.0
...........\special{color pop}
..........\glue 0.0
.........\glue 0.0
.........\special{ps::[begin]}
@@ -135,9 +135,7 @@ Completed box being shipped out [1]
...........\special{pdf:code 0 G }
...........\special{pdf:code 0 g }
...........\hbox(0.0+0.0)x0.0
............\special{color push gray 0}
............\hbox(0.0+0.0)x0.0
............\special{color pop}
...........\glue 0.0
.........\special{pdf:etrans}
.........\special{pdf:ecolor}
@@ -171,9 +169,7 @@ Completed box being shipped out [1]
...........\special{pdf:code 0 G }
...........\special{pdf:code 0 g }
...........\hbox(0.0+0.0)x0.0
............\special{color push gray 0}
............\hbox(0.0+0.0)x0.0
............\special{color pop}
...........\glue 0.0
.........\special{pdf:etrans}
.........\special{pdf:ecolor}
@@ -360,9 +356,7 @@ Completed box being shipped out [1]
...........\special{pdf:code 0 G }
...........\special{pdf:code 0 g }
...........\hbox(0.0+0.0)x0.0
............\special{color push gray 0}
............\hbox(0.0+0.0)x0.0
............\special{color pop}
...........\glue 0.0
.........\special{pdf:etrans}
.........\special{pdf:ecolor}
@@ -396,9 +390,7 @@ Completed box being shipped out [1]
...........\special{pdf:code 0 G }
...........\special{pdf:code 0 g }
...........\hbox(0.0+0.0)x0.0
............\special{color push gray 0}
............\hbox(0.0+0.0)x0.0
............\special{color pop}
...........\glue 0.0
.........\special{pdf:etrans}
.........\special{pdf:ecolor}
@@ -3,10 +3,10 @@ Don't change this file in any respect.
LaTeX Font Info: Font shape `LTJY3/FandolSong-Regular(0)/m/sl' in size <10.53937> not available
(Font) Font shape `LTJY3/FandolSong-Regular(0)/m/it' tried instead on input line ....
(load cache: ../extra_fandolkai-regular.luc)
luaotfload | aux : font no 39 (nil) does not define feature vert for script latn with language dflt
luaotfload | aux : no font with id 39
luaotfload | aux : font no 39 (nil) does not define feature vrt2 for script latn with language dflt
luaotfload | aux : no font with id 39
luaotfload | aux : font no 40 (nil) does not define feature vert for script latn with language dflt
luaotfload | aux : no font with id 40
luaotfload | aux : font no 40 (nil) does not define feature vrt2 for script latn with language dflt
luaotfload | aux : no font with id 40
Completed box being shipped out [1]
\vbox(633.0+0.0)x407.0, direction TLT
.\whatsit4=[]
@@ -3,15 +3,15 @@ Don't change this file in any respect.
LaTeX Font Info: Font shape `TU/latinmodern-math.otf(2)/m/n' will be
(Font) scaled to size 10.00015pt on input line ....
LaTeX Font Info: Font shape `TU/latinmodern-math.otf(2)/m/n' will be
(Font) scaled to size 7.01247pt on input line ....
(Font) scaled to size 7.0001pt on input line ....
LaTeX Font Info: Font shape `TU/latinmodern-math.otf(2)/m/n' will be
(Font) scaled to size 4.9808pt on input line ....
(Font) scaled to size 5.00008pt on input line ....
LaTeX Font Info: Font shape `TU/latinmodern-math.otf(3)/m/n' will be
(Font) scaled to size 9.99985pt on input line ....
LaTeX Font Info: Font shape `TU/latinmodern-math.otf(3)/m/n' will be
(Font) scaled to size 7.01224pt on input line ....
(Font) scaled to size 6.9999pt on input line ....
LaTeX Font Info: Font shape `TU/latinmodern-math.otf(3)/m/n' will be
(Font) scaled to size 4.98067pt on input line ....
(Font) scaled to size 4.99992pt on input line ....
Completed box being shipped out [1]
\vbox(633.0+0.0)x407.0
.\glue 16.0
@@ -7,6 +7,17 @@ this project uses date-based 'snapshot' version identifiers.

## [Unreleased]

## [2019-03-05]

### Added

- Support for drawing layers
- `\draw_point:nn` to allow 'fast' processing of co-ordinates

### Changed

- Update `l3draw` transformation names

## [2019-01-28]

### Changed
@@ -59,7 +70,8 @@ this project uses date-based 'snapshot' version identifiers.
- New `l3color` module using `xcolor`-like expression syntax
- New `l3draw` module, based on `pgf` layer of the TikZ system

[Unreleased]: https://github.com/latex3/latex3/compare/2019-01-28...HEAD
[Unreleased]: https://github.com/latex3/latex3/compare/2019-03-05...HEAD
[2019-03-05]: https://github.com/latex3/latex3/compare/2019-01-28...2019-03-05
[2019-01-28]: https://github.com/latex3/latex3/compare/2018-10-31...2019-01-28
[2018-10-31]: https://github.com/latex3/latex3/compare/2018-10-26...2018-10-31
[2018-10-26]: https://github.com/latex3/latex3/compare/2018-10-17...2018-10-26
@@ -1,7 +1,7 @@
Experimental LaTeX3 Concepts
============================

Release 2019-01-28
Release 2019-03-05

Overview
--------
@@ -46,7 +46,7 @@
% }^^A
% }
%
% \date{Released 2019-01-28}
% \date{Released 2019-03-05}
%
% \maketitle
%
@@ -128,7 +128,7 @@
%
% \begin{macrocode}
%<*package>
\ProvidesExplPackage{l3benchmark}{2019-01-28}{}
\ProvidesExplPackage{l3benchmark}{2019-03-05}{}
{L3 Experimental benchmarking}
%</package>
% \end{macrocode}
@@ -46,7 +46,7 @@
% }^^A
% }
%
% \date{Released 2019-01-28}
% \date{Released 2019-03-05}
%
% \maketitle
%
@@ -150,7 +150,7 @@
%
% \begin{macrocode}
%<*package>
\ProvidesExplPackage{l3cctab}{2019-01-28}{}
\ProvidesExplPackage{l3cctab}{2019-03-05}{}
{L3 Experimental category code tables}
%</package>
% \end{macrocode}
@@ -46,7 +46,7 @@
% }^^A
% }
%
% \date{Released 2019-01-28}
% \date{Released 2019-03-05}
%
% \maketitle
%
@@ -265,7 +265,7 @@
%
% \begin{macrocode}
%<*package>
\ProvidesExplPackage{l3color}{2019-01-28}{}
\ProvidesExplPackage{l3color}{2019-03-05}{}
{L3 Experimental color support}
%</package>
% \end{macrocode}
@@ -14,6 +14,7 @@ typesetfiles = {"l3draw.dtx", "l3draw-code.tex"}

-- Need color support
checkdeps = {maindir .. "/l3kernel", maindir .. "/l3experimental/l3color"}
typesetdeps = checkdeps

-- Load the common build code
dofile(maindir .. "/build-config.lua")
@@ -44,7 +44,7 @@
% }^^A
% }
%
% \date{Released 2019-01-28}
% \date{Released 2019-03-05}
%
% \maketitle
%
@@ -39,6 +39,8 @@
\clist_gput_right:Nn \g_docinput_clist
{
l3draw.dtx ,
l3draw-boxes.dtx ,
l3draw-layers.dtx ,
l3draw-paths.dtx ,
l3draw-points.dtx ,
l3draw-scopes.dtx ,

Showing you all comments on commits in this comparison.

@fpantigny

This comment has been minimized.

Copy link

@fpantigny fpantigny commented on ededa4d Mar 4, 2019

I fear that there will be another problem. Consider the following code:

\documentclass{article}
\usepackage{expl3}
\ExplSyntaxOn
\keys_define:nn { module1 } 
  { key1 .code:n = \tl_show:n { #1 } }
\keys_define:nn { }
  { module2 .inherit:n = module1 }
\keys_set_known:nn { module2 } { key1 = something , key2 }
\ExplSyntaxOff
\begin{document}
Some text.
\end{document}

LaTeX will now complain with an unknown key key2.

Maybe the solution is to modify \l__keys_execute_unknown: with a test on \l__keys_only_known_bool.

\cs_set_protected:Npn \__keys_execute_unknown:
  { \bool_if:NF \l__keys_only_known_bool
      {
        \cs_if_exist:cTF
          { \c__keys_code_root_tl \l__keys_module_tl / unknown }
          {
            \cs:w \c__keys_code_root_tl \l__keys_module_tl / unknown
              \exp_after:wN \cs_end: \exp_after:wN { \l_keys_value_tl }
          }
          {
            \__kernel_msg_error:nnxx { kernel } { key-unknown }
             { \l_keys_path_tl } { \l__keys_module_tl }
          }
      }
  } 
@josephwright

This comment has been minimized.

Copy link
Member Author

@josephwright josephwright commented on ededa4d Mar 4, 2019

See 2a20c77, which should address the general case.