summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2022-07-02 20:09:55 +0000
committerKarl Berry <karl@freefriends.org>2022-07-02 20:09:55 +0000
commit596fcbf6ac63d4e0042c40ddee584e66c35ccd67 (patch)
treefea2a1bfaec339d773d7dc008aa47c328e9542e0
parent2c637e7cf7e665b209867a6c04ab853858bf7bd6 (diff)
l3kernel (2jul22)
git-svn-id: svn://tug.org/texlive/trunk@63793 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/latex/l3kernel/CHANGELOG.md98
-rw-r--r--Master/texmf-dist/doc/latex/l3kernel/README.md2
-rw-r--r--Master/texmf-dist/doc/latex/l3kernel/expl3.pdfbin622685 -> 625880 bytes
-rw-r--r--Master/texmf-dist/doc/latex/l3kernel/interface3.pdfbin1766489 -> 1767165 bytes
-rw-r--r--Master/texmf-dist/doc/latex/l3kernel/interface3.tex2
-rw-r--r--Master/texmf-dist/doc/latex/l3kernel/l3doc.pdfbin554611 -> 557760 bytes
-rw-r--r--Master/texmf-dist/doc/latex/l3kernel/l3docstrip.pdfbin151736 -> 151536 bytes
-rw-r--r--Master/texmf-dist/doc/latex/l3kernel/l3news.pdfbin395879 -> 395879 bytes
-rw-r--r--Master/texmf-dist/doc/latex/l3kernel/l3news01.pdfbin122710 -> 122710 bytes
-rw-r--r--Master/texmf-dist/doc/latex/l3kernel/l3news02.pdfbin150676 -> 150676 bytes
-rw-r--r--Master/texmf-dist/doc/latex/l3kernel/l3news03.pdfbin148702 -> 148702 bytes
-rw-r--r--Master/texmf-dist/doc/latex/l3kernel/l3news04.pdfbin114588 -> 114588 bytes
-rw-r--r--Master/texmf-dist/doc/latex/l3kernel/l3news05.pdfbin112487 -> 112487 bytes
-rw-r--r--Master/texmf-dist/doc/latex/l3kernel/l3news06.pdfbin151573 -> 151573 bytes
-rw-r--r--Master/texmf-dist/doc/latex/l3kernel/l3news07.pdfbin128309 -> 128309 bytes
-rw-r--r--Master/texmf-dist/doc/latex/l3kernel/l3news08.pdfbin163454 -> 163454 bytes
-rw-r--r--Master/texmf-dist/doc/latex/l3kernel/l3news09.pdfbin250139 -> 250139 bytes
-rw-r--r--Master/texmf-dist/doc/latex/l3kernel/l3news10.pdfbin150279 -> 150279 bytes
-rw-r--r--Master/texmf-dist/doc/latex/l3kernel/l3news11.pdfbin170063 -> 170063 bytes
-rw-r--r--Master/texmf-dist/doc/latex/l3kernel/l3news12.pdfbin204990 -> 204990 bytes
-rw-r--r--Master/texmf-dist/doc/latex/l3kernel/l3obsolete.txt1
-rw-r--r--Master/texmf-dist/doc/latex/l3kernel/l3prefixes.csv1
-rw-r--r--Master/texmf-dist/doc/latex/l3kernel/l3prefixes.pdfbin81486 -> 81493 bytes
-rw-r--r--Master/texmf-dist/doc/latex/l3kernel/l3styleguide.pdfbin296165 -> 295942 bytes
-rw-r--r--Master/texmf-dist/doc/latex/l3kernel/l3styleguide.tex2
-rw-r--r--Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.pdfbin242838 -> 242612 bytes
-rw-r--r--Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.tex2
-rw-r--r--Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.pdfbin231225 -> 230997 bytes
-rw-r--r--Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.tex2
-rw-r--r--Master/texmf-dist/doc/latex/l3kernel/source3.pdfbin6972719 -> 7220729 bytes
-rw-r--r--Master/texmf-dist/doc/latex/l3kernel/source3.tex2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/expl3.dtx4
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3basics.dtx20
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3box.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3cctab.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3clist.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3color.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3debug.dtx6
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx17
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3doc.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3expan.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3file.dtx4
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3flag.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3fp.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3int.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3keys.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3legacy.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3msg.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3names.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3pdf.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3prg.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3prop.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3quark.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3regex.dtx42
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3seq.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3skip.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3sort.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3str-convert.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3str.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3sys.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3text-case.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3text-purify.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3text.dtx31
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3tl.dtx26
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3token.dtx2
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx2
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex61
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex2
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/expl3.ltx2
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/expl3.sty2
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/l3debug.def4
92 files changed, 283 insertions, 146 deletions
diff --git a/Master/texmf-dist/doc/latex/l3kernel/CHANGELOG.md b/Master/texmf-dist/doc/latex/l3kernel/CHANGELOG.md
index 9595ed47f4d..cf83e8f0349 100644
--- a/Master/texmf-dist/doc/latex/l3kernel/CHANGELOG.md
+++ b/Master/texmf-dist/doc/latex/l3kernel/CHANGELOG.md
@@ -7,11 +7,26 @@ this project uses date-based 'snapshot' version identifiers.
## [Unreleased]
+## [2022-07-01]
+
+### Added
+- `\cs_parameter_spec:N`
+
+### Changed
+- `\text_expand:n` now acts on active chars to support legacy input encodings
+
+### Deprecated
+- `\cs_argument_spec:N`
+
+### Fixed
+- Correct validity check performed by `\regex_show:N` (issue [\#1093](https://github.com/latex3/latex3/issues/1093))
+- Closing of file handles (issue [\#1105](https://github.com/latex3/latex3/issues/1105))
+
## [2022-06-16]
### Fixed
-- Made `\peek_analysis_map_inline:n` alignment-safe (gh/1090)
-- Setting a boolean to itself no longer errors (gh/1055)
+- Made `\peek_analysis_map_inline:n` alignment-safe (issue [\#1090](https://github.com/latex3/latex3/issues/1090))
+- Setting a boolean to itself no longer errors (issue [\#1055](https://github.com/latex3/latex3/issues/1055))
## [2022-06-02]
@@ -19,7 +34,7 @@ this project uses date-based 'snapshot' version identifiers.
- Exclude only first mandatory argument of entries in
`\l_text_case_exclude_arg_tl` from case changing
-`## [2022-05-30]
+## [2022-05-30]
### Added
- Add `\lua_load_module:n`
@@ -52,7 +67,7 @@ this project uses date-based 'snapshot' version identifiers.
- Allow for `\lccode`/`\uccode` changes in `\char_...case:n` functions
### Fixed
-- Support for ypogegrammeni in case changing Greek (see issue \#1088)
+- Support for ypogegrammeni in case changing Greek (see issue [\#1088](https://github.com/latex3/latex3/issues/1088))
## [2022-04-20]
@@ -64,8 +79,8 @@ this project uses date-based 'snapshot' version identifiers.
### Added
- `\keys_precompile:nnN` for conversion of keyvals to fast-to-apply token
lists
-- Missing `\str_if_empty:n(TF)` (see issue \#1071)
-- Missing `\str_case:Nn(TF)` (see issue \#1071)
+- Missing `\str_if_empty:n(TF)` (see issue [\#1071](https://github.com/latex3/latex3/issues/1071))
+- Missing `\str_case:Nn(TF)` (see issue [\#1071](https://github.com/latex3/latex3/issues/1071))
- `\tex_...:D` names for primitives added in TeX Live 2022
### Changed
@@ -97,7 +112,7 @@ this project uses date-based 'snapshot' version identifiers.
command in LaTeX2e
### Changed
-- Documentation for horizontal coffin poles (see issue \#1041)
+- Documentation for horizontal coffin poles (see issue [\#1041](https://github.com/latex3/latex3/issues/1041))
- Update primitive requirements to enable loading with Prote/HINT
## [2022-01-21]
@@ -150,8 +165,8 @@ this project uses date-based 'snapshot' version identifiers.
- DeviceN colorspace conversions with alternative model RGB
### Added
-- `.str_set:N`, etc., key properties (issue \#1007)
-- `\bool_to_str:n` (issue \#1010)
+- `.str_set:N`, etc., key properties (issue [\#1007](https://github.com/latex3/latex3/issues/1007))
+- `\bool_to_str:n` (issue [\#1010](https://github.com/latex3/latex3/issues/1010))
### Changed
- `\prop_..._from_keyval:Nn` functions now support active comma or
@@ -178,13 +193,13 @@ this project uses date-based 'snapshot' version identifiers.
## [2021-08-27]
### Changed
-- Formatting of expandable errors (issue \#931)
+- Formatting of expandable errors (issue [\#931](https://github.com/latex3/latex3/issues/931))
- Internal code for kernel messages
## [2021-07-12]
### Fixed
-- Handling of multiple color models (issue \#962)
+- Handling of multiple color models (issue [\#962](https://github.com/latex3/latex3/issues/962))
### Removed
- Functions marked for removal end-2020
@@ -193,8 +208,8 @@ this project uses date-based 'snapshot' version identifiers.
### Fixed
- Local assignment to `\g__sys_backend_tl`
-- Incorrect internal function name (issue \#939)
-- Case-changing exceptions for (u)pTeX (issue \#939)
+- Incorrect internal function name (issue [\#939](https://github.com/latex3/latex3/issues/939))
+- Case-changing exceptions for (u)pTeX (issue [\#939](https://github.com/latex3/latex3/issues/939))
- Low-level error if accent commands are not followed by
letter when case changing (see \#946)
@@ -211,24 +226,24 @@ this project uses date-based 'snapshot' version identifiers.
## [2021-05-25]
### Added
-- `\msg_note:nnnnnn` (issue \#911)
-- `\str_compare:nNnTF` (issue \#927)
+- `\msg_note:nnnnnn` (issue [\#911](https://github.com/latex3/latex3/issues/911))
+- `\str_compare:nNnTF` (issue [\#927](https://github.com/latex3/latex3/issues/927))
- `\sys_timer:`
-- `\prop_concat:NNN`, `\prop_put_from_keyval:Nn` (issue \#924)
-- Functions to show and log various datatypes (issue \#241):
+- `\prop_concat:NNN`, `\prop_put_from_keyval:Nn` (issue [\#924](https://github.com/latex3/latex3/issues/924))
+- Functions to show and log various datatypes (issue [\#241](https://github.com/latex3/latex3/issues/241)):
`\coffin_show:Nnn`, `\coffin_show:N`, `\coffin_log:Nnn`, `\coffin_log:N`,
`\color_log:n`, `\group_show_list:`, `\group_log_list:`,
`\ior_show:N`, `\ior_log:N`, `\iow_show:N`, `\iow_log:N`,
`\tl_log_analysis:N`, `\tl_log_analysis:n`
- `\legacy_if_set_true:n`, `\legacy_if_set_false:n`, `\legacy_if_set:nn`
-- Matching multiple regex at the same time (issue \#433):
+- Matching multiple regex at the same time (issue [\#433](https://github.com/latex3/latex3/issues/433)):
`\regex_case_match:nn(TF)`,
`\regex_case_replace_once:nN(TF)`,
`\regex_case_replace_all:nN(TF)`
### Fixed
-- Checking brace balance in all regex functions (issue \#377)
-- Removing duplicates in clists when items contain commas (issue \#917)
+- Checking brace balance in all regex functions (issue [\#377](https://github.com/latex3/latex3/issues/377))
+- Removing duplicates in clists when items contain commas (issue [\#917](https://github.com/latex3/latex3/issues/917))
### Changed
- Slight speed up in some elementary int/dim/skip/muskip operations and
@@ -238,13 +253,13 @@ this project uses date-based 'snapshot' version identifiers.
## [2021-05-11]
### Added
-- `\cctab_item:Nn` (issue \#880)
-- `\clist_use:nnnn` and `\clist_use:nn` (issue \#561)
+- `\cctab_item:Nn` (issue [\#880](https://github.com/latex3/latex3/issues/880))
+- `\clist_use:nnnn` and `\clist_use:nn` (issue [\#561](https://github.com/latex3/latex3/issues/561))
### Fixed
-- Loading of backend in generic DVI mode (issue \#905)
-- Make `\keyval_parse:nnn` alignment-safe (issue \#896)
-- Control sequences and category codes in regex replacements (issue \#909)
+- Loading of backend in generic DVI mode (issue [\#905](https://github.com/latex3/latex3/issues/905))
+- Make `\keyval_parse:nnn` alignment-safe (issue [\#896](https://github.com/latex3/latex3/issues/896))
+- Control sequences and category codes in regex replacements (issue [\#909](https://github.com/latex3/latex3/issues/909))
### Changed
- Speed up `\group_align_safe_begin:` (pull \#906)
@@ -256,30 +271,30 @@ this project uses date-based 'snapshot' version identifiers.
- `\ur{...}` escape in `l3regex` to compose regexes
- `\seq_set_split_keep_spaces:Nnn` (see \#784)
- `\seq_set_item:Nnn(TF)` and `\seq_pop_item:NnN(TF)`
-- `\box_ht_plus_dp:N` (issue \#899)
+- `\box_ht_plus_dp:N` (issue [\#899](https://github.com/latex3/latex3/issues/899))
- `\clist_map_tokens:nn`, `\clist_map_tokens:Nn`,
`\str_map_tokens:nn`, `\str_map_tokens:Nn`
### Changed
-- Use prevailing catcodes instead of string in regex replacement (issue \#621)
+- Use prevailing catcodes instead of string in regex replacement (issue [\#621](https://github.com/latex3/latex3/issues/621))
(*Breaking change*)
- `\__kernel_file_name_sanitize:n` now uses a faster `\csname`-based
approach to expand the file name
- Improved performance for basic conditionals
- `\pdf_version_gset:n` support for `dvips`
-- Improve handling of `\exp_not:n` in `\text_expand:n` (issue \#875)
+- Improve handling of `\exp_not:n` in `\text_expand:n` (issue [\#875](https://github.com/latex3/latex3/issues/875))
- `\file_full_name:n` now avoids calling `\pdffilesize` primitive multiple times
on the same file
- Show printable characters explicitly in `\regex_show:n`
- Regex replacement now errors when using a submatch (`\1` etc) for which
the regex has too few groups
-- Showing complex datatypes now validates their internal structure (issue \#884)
+- Showing complex datatypes now validates their internal structure (issue [\#884](https://github.com/latex3/latex3/issues/884))
- Indexing in l3doc: all page references before codeline references,
improve target placement, solve pdfTeX and makeindex warnings
### Fixed
-- Evalutate integer constants only once (issue \#861)
-- Detect `\ior_map_inline:Nn` calls on undefined streams (issue \#194)
+- Evalutate integer constants only once (issue [\#861](https://github.com/latex3/latex3/issues/861))
+- Detect `\ior_map_inline:Nn` calls on undefined streams (issue [\#194](https://github.com/latex3/latex3/issues/194))
### Deprecated
- `l3docstrip` converted to a stub which simply loads DocStrip: use
@@ -348,7 +363,7 @@ this project uses date-based 'snapshot' version identifiers.
### Fixed
- Avoid relying on braced `\input` primitive syntax
- Correct expansion of environments in `\text_purify:n`
-- Some aspects of `cctab` setup with 8-bit engines(issue \#814)
+- Some aspects of `cctab` setup with 8-bit engines(issue [\#814](https://github.com/latex3/latex3/issues/814))
### Changed
- Improved performance for `tl` functions
@@ -359,7 +374,7 @@ this project uses date-based 'snapshot' version identifiers.
### Fixed
- Correctly detect LaTeX when pre-loading expl3 and setting up
case changer
-- Lua emulation of \strcmp (issue \#813)
+- Lua emulation of \strcmp (issue [\#813](https://github.com/latex3/latex3/issues/813))
## [2020-09-24]
@@ -370,7 +385,7 @@ this project uses date-based 'snapshot' version identifiers.
## [2020-09-06]
### Fixed
-- Loading in generic mode (issue \#800)
+- Loading in generic mode (issue [\#800](https://github.com/latex3/latex3/issues/800))
## [2020-09-03]
@@ -390,7 +405,7 @@ this project uses date-based 'snapshot' version identifiers.
- Backend setting `pdfmode`
### Fixed
-- `\file_compare_timestamp:nNn(TF)` in LuaTeX (issue \#792)
+- `\file_compare_timestamp:nNn(TF)` in LuaTeX (issue [\#792](https://github.com/latex3/latex3/issues/792))
- Text case changing and expansion where an excluded command is equivalent
to `\use:n`
@@ -401,7 +416,7 @@ this project uses date-based 'snapshot' version identifiers.
- Performance enhancements for `\keys_set:nn`
### Fixed
-- Loading generically on ConTeXt (issue \#783)
+- Loading generically on ConTeXt (issue [\#783](https://github.com/latex3/latex3/issues/783))
## [2020-07-17]
@@ -473,7 +488,7 @@ this project uses date-based 'snapshot' version identifiers.
- Control for start-of-titlecasing: see `\l_text_titlecase_check_letter_bool`
### Fixed
-- Nesting of `\seq_shuffle:N` in another sequence mapping (issue \#687)
+- Nesting of `\seq_shuffle:N` in another sequence mapping (issue [\#687](https://github.com/latex3/latex3/issues/687))
- `\ior_shell_open:Nn` in engines other than LuaTeX - shell commands didn't
execute, plus the command call would be left in the input stream.
@@ -509,7 +524,7 @@ this project uses date-based 'snapshot' version identifiers.
`l3backend`)
### Changed
-- Allow `dvisvgm` driver with XeTeX (issue \#677)
+- Allow `dvisvgm` driver with XeTeX (issue [\#677](https://github.com/latex3/latex3/issues/677))
### Fixed
- `undo-recent-deprecations` would not reload the deprecation code
@@ -534,7 +549,7 @@ this project uses date-based 'snapshot' version identifiers.
- Support `\@uclclist` entries when case-changing
### Fixed
-- Allow for full range of encodings when expanding text (issue \#671)
+- Allow for full range of encodings when expanding text (issue [\#671](https://github.com/latex3/latex3/issues/671))
- Support `\begin`/`\end` in text expansion
## [2020-02-08]
@@ -600,7 +615,7 @@ this project uses date-based 'snapshot' version identifiers.
## [2019-11-07]
### Fixed
-- Handling of repeated loading of a backend (issue \#646)
+- Handling of repeated loading of a backend (issue [\#646](https://github.com/latex3/latex3/issues/646))
- Handling of repeated loading of deprecated functions
## [2019-10-28]
@@ -1125,7 +1140,8 @@ this project uses date-based 'snapshot' version identifiers.
- Step functions have been added for dim variables,
e.g. `\dim_step_inline:nnnn`
-[Unreleased]: https://github.com/latex3/latex3/compare/2022-06-16...HEAD
+[Unreleased]: https://github.com/latex3/latex3/compare/2022-07-01...HEAD
+[2022-07-01]: https://github.com/latex3/latex3/compare/2022-06-16...2022-07-01
[2022-06-16]: https://github.com/latex3/latex3/compare/2022-06-02...2022-06-16
[2022-06-02]: https://github.com/latex3/latex3/compare/2022-05-30...2022-06-02
[2022-05-30]: https://github.com/latex3/latex3/compare/2022-05-04...2022-05-30
diff --git a/Master/texmf-dist/doc/latex/l3kernel/README.md b/Master/texmf-dist/doc/latex/l3kernel/README.md
index 921b5aa4a56..78d2b4ae563 100644
--- a/Master/texmf-dist/doc/latex/l3kernel/README.md
+++ b/Master/texmf-dist/doc/latex/l3kernel/README.md
@@ -1,7 +1,7 @@
LaTeX3 Programming Conventions
==============================
-Release 2022-06-16
+Release 2022-07-01
Overview
--------
diff --git a/Master/texmf-dist/doc/latex/l3kernel/expl3.pdf b/Master/texmf-dist/doc/latex/l3kernel/expl3.pdf
index e8a3f56b32d..a964a5da154 100644
--- a/Master/texmf-dist/doc/latex/l3kernel/expl3.pdf
+++ b/Master/texmf-dist/doc/latex/l3kernel/expl3.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/l3kernel/interface3.pdf b/Master/texmf-dist/doc/latex/l3kernel/interface3.pdf
index d1b053c26e7..684d1706984 100644
--- a/Master/texmf-dist/doc/latex/l3kernel/interface3.pdf
+++ b/Master/texmf-dist/doc/latex/l3kernel/interface3.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/l3kernel/interface3.tex b/Master/texmf-dist/doc/latex/l3kernel/interface3.tex
index 9a4831311af..48bfc14277c 100644
--- a/Master/texmf-dist/doc/latex/l3kernel/interface3.tex
+++ b/Master/texmf-dist/doc/latex/l3kernel/interface3.tex
@@ -54,7 +54,7 @@ for those people who are interested.
{latex-team@latex-project.org}%
}%
}
-\date{Released 2022-06-16}
+\date{Released 2022-07-01}
\pagenumbering{roman}
\maketitle
diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3doc.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3doc.pdf
index 3885fa62648..138bbd1a975 100644
--- a/Master/texmf-dist/doc/latex/l3kernel/l3doc.pdf
+++ b/Master/texmf-dist/doc/latex/l3kernel/l3doc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3docstrip.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3docstrip.pdf
index c00dbbf573a..4e61cf66b07 100644
--- a/Master/texmf-dist/doc/latex/l3kernel/l3docstrip.pdf
+++ b/Master/texmf-dist/doc/latex/l3kernel/l3docstrip.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3news.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3news.pdf
index 1f4c0b954cc..c294db8db31 100644
--- a/Master/texmf-dist/doc/latex/l3kernel/l3news.pdf
+++ b/Master/texmf-dist/doc/latex/l3kernel/l3news.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3news01.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3news01.pdf
index 2ff80dfd83c..502bebe6c14 100644
--- a/Master/texmf-dist/doc/latex/l3kernel/l3news01.pdf
+++ b/Master/texmf-dist/doc/latex/l3kernel/l3news01.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3news02.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3news02.pdf
index 6a8f26037c1..d8f3e5d869a 100644
--- a/Master/texmf-dist/doc/latex/l3kernel/l3news02.pdf
+++ b/Master/texmf-dist/doc/latex/l3kernel/l3news02.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3news03.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3news03.pdf
index e2cd18e036f..6df033185dc 100644
--- a/Master/texmf-dist/doc/latex/l3kernel/l3news03.pdf
+++ b/Master/texmf-dist/doc/latex/l3kernel/l3news03.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3news04.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3news04.pdf
index 4c1737a816f..ec61574c153 100644
--- a/Master/texmf-dist/doc/latex/l3kernel/l3news04.pdf
+++ b/Master/texmf-dist/doc/latex/l3kernel/l3news04.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3news05.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3news05.pdf
index 7b8f0008e72..d06ee1fb3c6 100644
--- a/Master/texmf-dist/doc/latex/l3kernel/l3news05.pdf
+++ b/Master/texmf-dist/doc/latex/l3kernel/l3news05.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3news06.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3news06.pdf
index 8de6db73217..9cc3a92ab72 100644
--- a/Master/texmf-dist/doc/latex/l3kernel/l3news06.pdf
+++ b/Master/texmf-dist/doc/latex/l3kernel/l3news06.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3news07.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3news07.pdf
index 1c69dafec4b..55f33f24fc5 100644
--- a/Master/texmf-dist/doc/latex/l3kernel/l3news07.pdf
+++ b/Master/texmf-dist/doc/latex/l3kernel/l3news07.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3news08.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3news08.pdf
index b22ab6cc4e4..1e488c0ccf1 100644
--- a/Master/texmf-dist/doc/latex/l3kernel/l3news08.pdf
+++ b/Master/texmf-dist/doc/latex/l3kernel/l3news08.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3news09.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3news09.pdf
index 7125087050f..99e6e88cd2e 100644
--- a/Master/texmf-dist/doc/latex/l3kernel/l3news09.pdf
+++ b/Master/texmf-dist/doc/latex/l3kernel/l3news09.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3news10.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3news10.pdf
index a8badfe1aaf..e044eb0fdf7 100644
--- a/Master/texmf-dist/doc/latex/l3kernel/l3news10.pdf
+++ b/Master/texmf-dist/doc/latex/l3kernel/l3news10.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3news11.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3news11.pdf
index e5f6c8910fd..650a65fad04 100644
--- a/Master/texmf-dist/doc/latex/l3kernel/l3news11.pdf
+++ b/Master/texmf-dist/doc/latex/l3kernel/l3news11.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3news12.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3news12.pdf
index 62ca7ca1ef0..4270cc1f8fc 100644
--- a/Master/texmf-dist/doc/latex/l3kernel/l3news12.pdf
+++ b/Master/texmf-dist/doc/latex/l3kernel/l3news12.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3obsolete.txt b/Master/texmf-dist/doc/latex/l3kernel/l3obsolete.txt
index ec9ae7a88ea..6f8844ce673 100644
--- a/Master/texmf-dist/doc/latex/l3kernel/l3obsolete.txt
+++ b/Master/texmf-dist/doc/latex/l3kernel/l3obsolete.txt
@@ -22,6 +22,7 @@ Function Date deprecated
\char_str_lower_case:N 2020-01-03
\char_str_mixed_case:N 2020-01-03
\char_str_upper_case:N 2020-01-03
+\cs_argument_spec:N 2022-06-24
\l_keys_key_tl 2020-02-08
\l_keys_path_tl 2020-02-08
\peek_catcode_ignore_spaces:N 2022-01-11
diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3prefixes.csv b/Master/texmf-dist/doc/latex/l3kernel/l3prefixes.csv
index 762387f09d6..d6d5b19083e 100644
--- a/Master/texmf-dist/doc/latex/l3kernel/l3prefixes.csv
+++ b/Master/texmf-dist/doc/latex/l3kernel/l3prefixes.csv
@@ -127,6 +127,7 @@ left,l3kernel,The LaTeX Project,https://www.latex-project.org/latex3.html,https:
lltxmath,lualatex-math,Philipp Stephani,https://github.com/phst/lualatex-math,https://github.com/phst/lualatex-math.git,https://github.com/phst/lualatex-math/issues,2012-11-07,2012-11-07,
log,l3kernel,The LaTeX Project,https://www.latex-project.org/latex3.html,https://github.com/latex3/latex3.git,https://github.com/latex3/latex3/issues,2018-05-12,2018-05-12,
lua,l3kernel,The LaTeX Project,https://www.latex-project.org/latex3.html,https://github.com/latex3/latex3.git,https://github.com/latex3/latex3/issues,2012-09-27,2012-09-27,
+luabridge,lt3luabridge,Vít Novotný,https://ctan.org/pkg/lt3luabridge,https://github.com/witiko/lt3luabridge.git,https://github.com/witiko/lt3luabridge/issues,2022-06-25,2022-06-25,
luatex,l3kernel,The LaTeX Project,https://www.latex-project.org/latex3.html,https://github.com/latex3/latex3.git,https://github.com/latex3/latex3/issues,2012-09-27,2012-09-27,
lwc,lua-widow-control,Max Chernoff,https://github.com/gucci-on-fleek/lua-widow-control,https://github.com/gucci-on-fleek/lua-widow-control.git,https://github.com/gucci-on-fleek/lua-widow-control/issues,2022-02-24,2022-02-24,
mark,l3kernel,The LaTeX Project,https://www.latex-project.org/latex3.html,https://github.com/latex3/latex3.git,https://github.com/latex3/latex3/issues,2018-05-12,2018-05-12,
diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3prefixes.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3prefixes.pdf
index 1d9edd5ca97..8efa78df773 100644
--- a/Master/texmf-dist/doc/latex/l3kernel/l3prefixes.pdf
+++ b/Master/texmf-dist/doc/latex/l3kernel/l3prefixes.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.pdf
index 4cb6ec6363b..ea945e74252 100644
--- a/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.pdf
+++ b/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.tex b/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.tex
index 77c6cf5aaa1..e159cb01bbb 100644
--- a/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.tex
+++ b/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.tex
@@ -32,7 +32,7 @@ The released version of this bundle is available from CTAN.
{latex-team@latex-project.org}%
}%
}
-\date{Released 2022-06-16}
+\date{Released 2022-07-01}
\begin{document}
diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.pdf
index 0167d8e99eb..19e1c120e2f 100644
--- a/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.pdf
+++ b/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.tex b/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.tex
index 42e40d7c218..318d789dcf4 100644
--- a/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.tex
+++ b/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.tex
@@ -32,7 +32,7 @@ The released version of this bundle is available from CTAN.
{latex-team@latex-project.org}%
}%
}
-\date{Released 2022-06-16}
+\date{Released 2022-07-01}
\newcommand{\TF}{\textit{(TF)}}
diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.pdf
index b7c19560e90..8e7e4581e76 100644
--- a/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.pdf
+++ b/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.tex b/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.tex
index f678691b6e3..3c40b12012f 100644
--- a/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.tex
+++ b/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.tex
@@ -32,7 +32,7 @@ The released version of this bundle is available from CTAN.
{latex-team@latex-project.org}%
}%
}
-\date{Released 2022-06-16}
+\date{Released 2022-07-01}
\newcommand{\TF}{\textit{(TF)}}
diff --git a/Master/texmf-dist/doc/latex/l3kernel/source3.pdf b/Master/texmf-dist/doc/latex/l3kernel/source3.pdf
index c83369e0201..217ac100ef2 100644
--- a/Master/texmf-dist/doc/latex/l3kernel/source3.pdf
+++ b/Master/texmf-dist/doc/latex/l3kernel/source3.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/l3kernel/source3.tex b/Master/texmf-dist/doc/latex/l3kernel/source3.tex
index 4065b377af5..25b5f94dd7a 100644
--- a/Master/texmf-dist/doc/latex/l3kernel/source3.tex
+++ b/Master/texmf-dist/doc/latex/l3kernel/source3.tex
@@ -53,7 +53,7 @@ for those people who are interested.
{latex-team@latex-project.org}%
}%
}
-\date{Released 2022-06-16}
+\date{Released 2022-07-01}
\pagenumbering{roman}
\maketitle
diff --git a/Master/texmf-dist/source/latex/l3kernel/expl3.dtx b/Master/texmf-dist/source/latex/l3kernel/expl3.dtx
index 161a3c327bf..5f668c3b91c 100644
--- a/Master/texmf-dist/source/latex/l3kernel/expl3.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/expl3.dtx
@@ -24,7 +24,7 @@
%
%<*driver|generic|package|2ekernel>
%</driver|generic|package|2ekernel>
-\def\ExplFileDate{2022-06-16}%
+\def\ExplFileDate{2022-07-01}%
%<*driver>
\documentclass[full]{l3doc}
\usepackage{graphicx}
@@ -51,7 +51,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx b/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx
index 7f103c2e48f..d9e9e05a102 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
@@ -850,22 +850,22 @@
% \end{texnote}
% \end{function}
%
-% \begin{function}[EXP, added = 2019-02-27]{\cs_argument_spec:N}
+% \begin{function}[EXP, added = 2022-06-24]{\cs_parameter_spec:N}
% \begin{syntax}
-% \cs{cs_argument_spec:N} \meta{token}
+% \cs{cs_parameter_spec:N} \meta{token}
% \end{syntax}
% If the \meta{token} is a macro, this function leaves the primitive
-% \TeX{} argument specification in input stream as a string of
+% \TeX{} parameter specification in input stream as a string of
% character tokens of category code $12$ (with spaces having category
% code $10$). Thus for example
% \begin{verbatim}
% \cs_set:Npn \next:nn #1#2 { x #1 y #2 }
-% \cs_argument_spec:N \next:nn
+% \cs_parameter_spec:N \next:nn
% \end{verbatim}
% leaves |#1#2| in the input stream. If the \meta{token} is
% not a macro then \cs{scan_stop:} is left in the input stream.
% \begin{texnote}
-% If the argument specification contains the string |->|, then the
+% If the parameter specification contains the string |->|, then the
% function produces incorrect results.
% \end{texnote}
% \end{function}
@@ -884,7 +884,7 @@
% leaves \verb*|x#1 y#2| in the input stream. If the \meta{token} is
% not a macro then \cs{scan_stop:} is left in the input stream.
% \begin{texnote}
-% If the argument specification contains the string |->|, then the
+% If the parameter specification contains the string |->|, then the
% function produces incorrect results.
% \end{texnote}
% \end{function}
@@ -3191,14 +3191,14 @@
% \subsection{Decomposing a macro definition}
%
% \begin{macro}{\cs_prefix_spec:N}
-% \begin{macro}{\cs_argument_spec:N}
+% \begin{macro}{\cs_parameter_spec:N}
% \begin{macro}{\cs_replacement_spec:N}
% \begin{macro}{\@@_prefix_arg_replacement:wN}
% We sometimes want to test if a control sequence can be expanded to
% reveal a hidden value. However, we cannot just expand the macro
% blindly as it may have arguments and none might be
% present. Therefore we define these functions to pick either the
-% prefix(es), the argument specification, or the replacement text from
+% prefix(es), the parameter specification, or the replacement text from
% a macro. All of this information is returned as characters with
% catcode~$12$. If the token in question isn't a macro, the token
% \cs{scan_stop:} is returned instead.
@@ -3218,7 +3218,7 @@
}
{ \scan_stop: }
}
-\cs_new:Npn \cs_argument_spec:N #1
+\cs_new:Npn \cs_parameter_spec:N #1
{
\token_if_macro:NTF #1
{
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx b/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx
index a46e4d16b7b..d6aeb18a147 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3box.dtx b/Master/texmf-dist/source/latex/l3kernel/l3box.dtx
index 952d9bdac88..4b911c960e7 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3box.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3box.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx b/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx
index da62bf2c535..12d8b13f8ca 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3cctab.dtx b/Master/texmf-dist/source/latex/l3kernel/l3cctab.dtx
index 2c592bf8179..cd581344e14 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3cctab.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3cctab.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx b/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx
index 852e06284d6..8f6f06f87d1 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx b/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx
index 065221bbbd2..1b6d1379311 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3color.dtx b/Master/texmf-dist/source/latex/l3kernel/l3color.dtx
index baa029f4e86..917ec2a2d55 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3color.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3color.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3debug.dtx b/Master/texmf-dist/source/latex/l3kernel/l3debug.dtx
index e890919a561..315d110771b 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3debug.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3debug.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
@@ -727,7 +727,7 @@
{
\tex_global:D \cs_prefix_spec:N #1
\tex_def:D \exp_not:N #1
- \cs_argument_spec:N #1
+ \cs_parameter_spec:N #1
{
\tl_to_str:n {#2}
\cs_replacement_spec:N #1
@@ -1155,7 +1155,7 @@
\exp_args:Nx \tex_scantokens:D
{
\tex_global:D \cs_prefix_spec:N #1 \tex_def:D \exp_not:N #1
- \cs_argument_spec:N #1
+ \cs_parameter_spec:N #1
{ \exp_args:No \tl_to_str:n { #1 #2 } }
}
\group_end:
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx b/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx
index ae32854e8b7..28678a165a5 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
@@ -432,6 +432,21 @@
% \end{macrocode}
% \end{macro}
%
+% \subsection{Deprecated \pkg{l3basics} functions}
+%
+% \begin{macrocode}
+%<@@=cs>
+% \end{macrocode}
+%
+% \begin{macro}[EXP]{\cs_argument_spec:N}
+% For the present, do not deprecate fully as \LaTeXe{} will need to catch
+% up: one for Fall 2022.
+% \begin{macrocode}
+%\__kernel_patch_deprecation:nnNNpn { 2022-06-24 } { \cs_parameter_spec:N }
+\cs_gset:Npn \cs_argument_spec:N { \cs_parameter_spec:N }
+% \end{macrocode}
+% \end{macro}
+%
% \subsection{Deprecated \pkg{l3str} functions}
%
% \begin{macrocode}
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx b/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx
index 29e1bb3cfcd..a95e795997c 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx
@@ -85,7 +85,7 @@ and all files in that bundle must be distributed together.
% require you to do updates, if the class changes.}}
%
% \author{\Team}
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
% \maketitle
% \tableofcontents
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx b/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx
index d16400a2429..fdd94db8f43 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx
@@ -63,7 +63,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3expan.dtx b/Master/texmf-dist/source/latex/l3kernel/l3expan.dtx
index d4b3bc08d32..82ea6a90928 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3expan.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3expan.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3file.dtx b/Master/texmf-dist/source/latex/l3kernel/l3file.dtx
index a0bb1b2149d..fd270daa3a8 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3file.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3file.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
@@ -1552,7 +1552,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \iow_close:N #1
{
- \int_compare:nT { - \c_log_iow < #1 < \c_term_iow }
+ \int_compare:nT { \c_log_iow < #1 < \c_term_iow }
{
\tex_immediate:D \tex_closeout:D #1
\prop_gremove:NV \g_@@_streams_prop #1
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx b/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx
index 4fe6dbc9344..ad30a08ce70 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx
index a4332d05ef0..922457b0e48 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx
@@ -40,7 +40,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
% \maketitle
%
% \begin{documentation}
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx
index 62829fd43ba..ec0cb71711b 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx
index 34a40a40a67..ea03949adba 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx
@@ -40,7 +40,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx
index f191c3dd21e..5421b08bbc4 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx
index 278ae622dfc..9400d40e44c 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx
@@ -40,7 +40,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx
index c4ce1157795..9320f0bc01a 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx
@@ -40,7 +40,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx
index 5fc41f847a3..cdd7a1a004f 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx
@@ -40,7 +40,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx
index fcf236a526d..80cb39be6b6 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx
@@ -40,7 +40,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx
index 85fdad6b0cc..067c0b1f5c5 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx
@@ -40,7 +40,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx
index 676c213636d..7ecf04b489e 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx
index e373e728c8a..a561a2f3a18 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx
@@ -40,7 +40,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
% \maketitle
%
% \begin{documentation}
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx
index e0042650052..e7d14110251 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx
@@ -40,7 +40,7 @@
% {latex-team@latex-project.org}^^A
% }^^A
% }
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx
index 60028bf7be1..84b07c41398 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx
@@ -49,7 +49,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx
index b41ea51a3da..017491c49c4 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3int.dtx b/Master/texmf-dist/source/latex/l3kernel/l3int.dtx
index 877f66c6172..57c6202955a 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3int.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3int.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx b/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx
index 95a83da8d1c..e94aaccfeb0 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx b/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx
index 8e15ebbac98..0affbd12b9d 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx b/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx
index 32219d3abf9..989cf7daa53 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3legacy.dtx b/Master/texmf-dist/source/latex/l3kernel/l3legacy.dtx
index ee475230509..64310d8e9c7 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3legacy.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3legacy.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx b/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx
index cfbbdb9a534..7c10f9a6684 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx b/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx
index c193ee26847..b9043726eb4 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3names.dtx b/Master/texmf-dist/source/latex/l3kernel/l3names.dtx
index 5e364b08188..43b1b196cf5 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3names.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3names.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3pdf.dtx b/Master/texmf-dist/source/latex/l3kernel/l3pdf.dtx
index b168ef8e22c..fa35852885e 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3pdf.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3pdf.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx b/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx
index 0fdc4d334e3..63f3e4cae31 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx b/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx
index 3165d969baf..10f6755a65b 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx b/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx
index f8147502470..6a6f3ce78c3 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx b/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx
index 7429b63ccf0..7b12a6ecc8a 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
@@ -2883,7 +2883,7 @@
\cs_new_protected:cpx { @@_compile_/#2: }
{
\@@_compile_one:n
- { \@@_item_reverse:n \exp_not:c { @@_prop_#1: } }
+ { \@@_item_reverse:n { \exp_not:c { @@_prop_#1: } } }
}
}
\@@_tmp:w d D
@@ -3080,7 +3080,8 @@
% raw characters until hopefully reaching |:]|. If that's missing, or
% the \textsc{posix} class is unknown, abort. If all is right, add the
% test to the current class, with an extra \cs{@@_item_reverse:n}
-% for negative classes.
+% for negative classes (we make sure to wrap its argument in braces
+% otherwise \cs{regex_show:N} would not recognize the regex as valid).
% \begin{macrocode}
\cs_new_protected:Npn \@@_compile_class_posix_test:w #1#2
{
@@ -3131,8 +3132,8 @@
{
\@@_compile_one:n
{
- \bool_if:NF \l_@@_internal_bool \@@_item_reverse:n
- \exp_not:c { @@_posix_ \l_@@_internal_a_tl : }
+ \bool_if:NTF \l_@@_internal_bool \use:n \@@_item_reverse:n
+ { \exp_not:c { @@_posix_ \l_@@_internal_a_tl : } }
}
}
{
@@ -3898,6 +3899,13 @@
}
\cs_new:Npn \@@_clean_class:n #1
{ \@@_clean_class_loop:nnn #1 ????? \prg_break_point: }
+% \end{macrocode}
+% When cleaning a class there are many cases, including a dozen or so
+% like \cs{@@_prop_d:} or \cs{@@_posix_alpha:}. To avoid listing all of
+% them we allow any command that starts with the
+% $13$ characters |__regex_prop_| or |__regex_posix| (handily these have
+% the same length, except for the trailing underscore).
+% \begin{macrocode}
\cs_new:Npn \@@_clean_class_loop:nnn #1#2#3
{
\tl_if_single:nF {#1} { \prg_break: }
@@ -3917,7 +3925,10 @@
\@@_item_caseless_range:nn { }
\@@_item_exact:nn { }
}
- { #1 { \@@_clean_int:n {#2} } { \@@_clean_int:n {#3} } }
+ {
+ #1 { \@@_clean_int:n {#2} } { \@@_clean_int:n {#3} }
+ \@@_clean_class_loop:nnn
+ }
{
\token_case_meaning:NnTF #1
{
@@ -3928,7 +3939,22 @@
#1 { \@@_clean_int:n {#2} } { \@@_clean_class:n {#3} }
\@@_clean_class_loop:nnn
}
- { \prg_break: }
+ {
+ \exp_args:Nf \str_case:nnTF
+ {
+ \exp_args:Nf \str_range:nnn
+ { \cs_to_str:N #1 } { 1 } { 13 }
+ }
+ {
+ { @@_prop_ } { }
+ { @@_posix } { }
+ }
+ {
+ #1
+ \@@_clean_class_loop:nnn {#2} {#3}
+ }
+ { \prg_break: }
+ }
}
}
}
@@ -4922,7 +4948,7 @@
\int_set_eq:NN \l_@@_curr_char_int \l_@@_last_char_int
\@@_prop_w:
\@@_break_point:TF
- { \group_end: \@@_item_reverse:n \@@_prop_w: }
+ { \group_end: \@@_item_reverse:n { \@@_prop_w: } }
{ \group_end: \@@_prop_w: }
}
\cs_new_protected:Npn \@@_Z_test:
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx b/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx
index 893ad81248f..42c99f2b38d 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx b/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx
index 1a7ce1fc899..c82a89f9a81 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx b/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx
index 08fdbf12498..225108a0dde 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3str-convert.dtx b/Master/texmf-dist/source/latex/l3kernel/l3str-convert.dtx
index 191b68f4f37..35e7b58abfd 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3str-convert.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3str-convert.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3str.dtx b/Master/texmf-dist/source/latex/l3kernel/l3str.dtx
index bd62089fe53..5401c996ec3 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3str.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3str.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx b/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx
index ff4de0a0464..403ebd60b0b 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3text-case.dtx b/Master/texmf-dist/source/latex/l3kernel/l3text-case.dtx
index 3bd02e6c2a3..0f6a78cbe68 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3text-case.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3text-case.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3text-purify.dtx b/Master/texmf-dist/source/latex/l3kernel/l3text-purify.dtx
index db4def98e43..4babe465a34 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3text-purify.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3text-purify.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3text.dtx b/Master/texmf-dist/source/latex/l3kernel/l3text.dtx
index 529020ebb91..15b6025b4cc 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3text.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3text.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
@@ -289,6 +289,10 @@
%<@@=text>
% \end{macrocode}
%
+% \begin{macrocode}
+\cs_generate_variant:Nn \tl_if_head_eq_meaning_p:nN { o }
+% \end{macrocode}
+%
% \subsection{Internal auxiliaries}
%
% \begin{variable}{\s_@@_stop}
@@ -901,15 +905,34 @@
}
% \end{macrocode}
% At this stage, either we have a control sequence or a simple character:
-% split and handle.
+% split and handle. The need to check for non-protected actives arises
+% from handling of legacy input encodings: they need to end up in a
+% representation we can deal with in further processing. The tests for
+% explicit parts of the \LaTeXe{} UTF-8 mechanism cover the case of
+% bookmarks, where definitions change and are no longer protected.
% \begin{macrocode}
\cs_new:Npn \@@_expand_explicit:N #1
{
\token_if_cs:NTF #1
{ \@@_expand_exclude:N #1 }
{
- \@@_expand_store:n {#1}
- \@@_expand_loop:w
+ \bool_lazy_and:nnTF
+ { \token_if_active_p:N #1 }
+ {
+ ! \bool_lazy_any_p:n
+ {
+ { \token_if_protected_macro_p:N #1 }
+ { \token_if_protected_long_macro_p:N #1 }
+ { \tl_if_head_eq_meaning_p:oN {#1} \UTFviii@two@octets }
+ { \tl_if_head_eq_meaning_p:oN {#1} \UTFviii@three@octets }
+ { \tl_if_head_eq_meaning_p:oN {#1} \UTFviii@four@octets }
+ }
+ }
+ { \exp_after:wN \@@_expand_loop:w #1 }
+ {
+ \@@_expand_store:n {#1}
+ \@@_expand_loop:w
+ }
}
}
% \end{macrocode}
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx b/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx
index a30300b1220..8f8eb930c9f 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx b/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx
index d85b6b2a46d..86c5ecb14c4 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
@@ -927,6 +927,26 @@
% \end{texnote}
% \end{function}
%
+% If you wish to handle token lists where the first token may be a space, and
+% this needs to be treated as the head/tail, this can be accomplished using
+% \cs{tl_if_head_is_space:nTF}, for example
+% \begin{verbatim}
+% \exp_last_unbraced:NNo
+% \cs_new:Npn \__mypkg_gobble_space:w \c_space_tl { }
+% \cs_new:Npn \mypkg_tl_head_keep_space:n #1
+% {
+% \tl_if_head_is_space:nTF {#1}
+% { ~ }
+% { \tl_head:n {#1} }
+% }
+% \cs_new:Npn \mypkg_tl_tail_keep_space:n #1
+% {
+% \tl_if_head_is_space:nTF {#1}
+% { \exp_not:o { \__mypkg_gobble_space:w #1 } }
+% { \tl_tail:n {#1} }
+% }
+% \end{verbatim}
+%
% \subsection{Items and ranges in token lists}
%
% \begin{function}[added = 2014-07-17, EXP]
@@ -3577,7 +3597,7 @@
\__kernel_chk_defined:NT #2
{
\exp_args:Nf \tl_if_empty:nTF
- { \cs_prefix_spec:N #2 \cs_argument_spec:N #2 }
+ { \cs_prefix_spec:N #2 \cs_parameter_spec:N #2 }
{
\exp_args:Ne #1
{ \token_to_str:N #2 = \__kernel_exp_not:w \exp_after:wN {#2} }
@@ -3651,7 +3671,7 @@
\__kernel_chk_defined:NT #1
{
\exp_args:Nf \tl_if_empty:nTF
- { \cs_prefix_spec:N #1 \cs_argument_spec:N #1 }
+ { \cs_prefix_spec:N #1 \cs_parameter_spec:N #1 }
{
\tl_set:Nx \l_@@_internal_a_tl {#3}
\tl_if_eq:NNTF #1 \l_@@_internal_a_tl
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3token.dtx b/Master/texmf-dist/source/latex/l3kernel/l3token.dtx
index 3fb9b326478..0e5d0eede3f 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3token.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3token.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx b/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx
index 1d2291877db..c4b709de440 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2022-06-16}
+% \date{Released 2022-07-01}
%
% \maketitle
%
diff --git a/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex b/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex
index baad0eaa9da..8002f1b319e 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex
+++ b/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex
@@ -70,7 +70,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: expl3.dtx
-\def\ExplFileDate{2022-06-16}%
+\def\ExplFileDate{2022-07-01}%
\begingroup
\def\next{\endgroup}%
\expandafter\ifx\csname PackageError\endcsname\relax
@@ -2288,7 +2288,7 @@ Type H <return> for immediate help}\def~{\errmessage{%
}
{ \scan_stop: }
}
-\cs_new:Npn \cs_argument_spec:N #1
+\cs_new:Npn \cs_parameter_spec:N #1
{
\token_if_macro:NTF #1
{
@@ -4773,7 +4773,7 @@ Type H <return> for immediate help}\def~{\errmessage{%
\__kernel_chk_defined:NT #2
{
\exp_args:Nf \tl_if_empty:nTF
- { \cs_prefix_spec:N #2 \cs_argument_spec:N #2 }
+ { \cs_prefix_spec:N #2 \cs_parameter_spec:N #2 }
{
\exp_args:Ne #1
{ \token_to_str:N #2 = \__kernel_exp_not:w \exp_after:wN {#2} }
@@ -4806,7 +4806,7 @@ Type H <return> for immediate help}\def~{\errmessage{%
\__kernel_chk_defined:NT #1
{
\exp_args:Nf \tl_if_empty:nTF
- { \cs_prefix_spec:N #1 \cs_argument_spec:N #1 }
+ { \cs_prefix_spec:N #1 \cs_parameter_spec:N #1 }
{
\tl_set:Nx \l__tl_internal_a_tl {#3}
\tl_if_eq:NNTF #1 \l__tl_internal_a_tl
@@ -11141,7 +11141,7 @@ Type H <return> for immediate help}\def~{\errmessage{%
\cs_generate_variant:Nn \__iow_open_stream:Nn { NV }
\cs_new_protected:Npn \iow_close:N #1
{
- \int_compare:nT { - \c_log_iow < #1 < \c_term_iow }
+ \int_compare:nT { \c_log_iow < #1 < \c_term_iow }
{
\tex_immediate:D \tex_closeout:D #1
\prop_gremove:NV \g__iow_streams_prop #1
@@ -24741,7 +24741,7 @@ Type H <return> for immediate help}\def~{\errmessage{%
\cs_new_protected:cpx { __regex_compile_/#2: }
{
\__regex_compile_one:n
- { \__regex_item_reverse:n \exp_not:c { __regex_prop_#1: } }
+ { \__regex_item_reverse:n { \exp_not:c { __regex_prop_#1: } } }
}
}
\__regex_tmp:w d D
@@ -24898,8 +24898,8 @@ Type H <return> for immediate help}\def~{\errmessage{%
{
\__regex_compile_one:n
{
- \bool_if:NF \l__regex_internal_bool \__regex_item_reverse:n
- \exp_not:c { __regex_posix_ \l__regex_internal_a_tl : }
+ \bool_if:NTF \l__regex_internal_bool \use:n \__regex_item_reverse:n
+ { \exp_not:c { __regex_posix_ \l__regex_internal_a_tl : } }
}
}
{
@@ -25448,7 +25448,10 @@ Type H <return> for immediate help}\def~{\errmessage{%
\__regex_item_caseless_range:nn { }
\__regex_item_exact:nn { }
}
- { #1 { \__regex_clean_int:n {#2} } { \__regex_clean_int:n {#3} } }
+ {
+ #1 { \__regex_clean_int:n {#2} } { \__regex_clean_int:n {#3} }
+ \__regex_clean_class_loop:nnn
+ }
{
\token_case_meaning:NnTF #1
{
@@ -25459,7 +25462,22 @@ Type H <return> for immediate help}\def~{\errmessage{%
#1 { \__regex_clean_int:n {#2} } { \__regex_clean_class:n {#3} }
\__regex_clean_class_loop:nnn
}
- { \prg_break: }
+ {
+ \exp_args:Nf \str_case:nnTF
+ {
+ \exp_args:Nf \str_range:nnn
+ { \cs_to_str:N #1 } { 1 } { 13 }
+ }
+ {
+ { __regex_prop_ } { }
+ { __regex_posix } { }
+ }
+ {
+ #1
+ \__regex_clean_class_loop:nnn {#2} {#3}
+ }
+ { \prg_break: }
+ }
}
}
}
@@ -26015,7 +26033,7 @@ Type H <return> for immediate help}\def~{\errmessage{%
\int_set_eq:NN \l__regex_curr_char_int \l__regex_last_char_int
\__regex_prop_w:
\__regex_break_point:TF
- { \group_end: \__regex_item_reverse:n \__regex_prop_w: }
+ { \group_end: \__regex_item_reverse:n { \__regex_prop_w: } }
{ \group_end: \__regex_prop_w: }
}
\cs_new_protected:Npn \__regex_Z_test:
@@ -31700,6 +31718,7 @@ Type H <return> for immediate help}\def~{\errmessage{%
\group_end:
}
%% File: l3text.dtx
+\cs_generate_variant:Nn \tl_if_head_eq_meaning_p:nN { o }
\scan_new:N \s__text_stop
\quark_new:N \q__text_nil
\__kernel_quark_new_conditional:Nn \__text_quark_if_nil:n { TF }
@@ -32077,8 +32096,23 @@ Type H <return> for immediate help}\def~{\errmessage{%
\token_if_cs:NTF #1
{ \__text_expand_exclude:N #1 }
{
- \__text_expand_store:n {#1}
- \__text_expand_loop:w
+ \bool_lazy_and:nnTF
+ { \token_if_active_p:N #1 }
+ {
+ ! \bool_lazy_any_p:n
+ {
+ { \token_if_protected_macro_p:N #1 }
+ { \token_if_protected_long_macro_p:N #1 }
+ { \tl_if_head_eq_meaning_p:oN {#1} \UTFviii@two@octets }
+ { \tl_if_head_eq_meaning_p:oN {#1} \UTFviii@three@octets }
+ { \tl_if_head_eq_meaning_p:oN {#1} \UTFviii@four@octets }
+ }
+ }
+ { \exp_after:wN \__text_expand_loop:w #1 }
+ {
+ \__text_expand_store:n {#1}
+ \__text_expand_loop:w
+ }
}
}
\cs_new:Npn \__text_expand_exclude:N #1
@@ -35530,6 +35564,7 @@ Type H <return> for immediate help}\def~{\errmessage{%
{ \sys_if_engine_xetex:T } { 2017-01-01 }
\__deprecation_old:Nnn \xetex_if_engine:TF
{ \sys_if_engine_xetex:TF } { 2017-01-01 }
+\cs_gset:Npn \cs_argument_spec:N { \cs_parameter_spec:N }
\__kernel_patch_deprecation:nnNNpn { 2020-01-03 } { \str_lowercase:n }
\cs_gset:Npn \str_lower_case:n { \str_lowercase:n }
\__kernel_patch_deprecation:nnNNpn { 2020-01-03 } { \str_lowercase:f }
diff --git a/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex b/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex
index 75362e4ed27..3b73fbb1042 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex
+++ b/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex
@@ -19,7 +19,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: expl3.dtx
-\def\ExplFileDate{2022-06-16}%
+\def\ExplFileDate{2022-07-01}%
\let\ExplLoaderFileDate\ExplFileDate
\begingroup
\catcode`\_=11
diff --git a/Master/texmf-dist/tex/latex/l3kernel/expl3.ltx b/Master/texmf-dist/tex/latex/l3kernel/expl3.ltx
index 1773d88c879..11973865886 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/expl3.ltx
+++ b/Master/texmf-dist/tex/latex/l3kernel/expl3.ltx
@@ -19,7 +19,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: expl3.dtx
-\def\ExplFileDate{2022-06-16}%
+\def\ExplFileDate{2022-07-01}%
\let\ExplLoaderFileDate\ExplFileDate
\begingroup
\catcode`\_=11
diff --git a/Master/texmf-dist/tex/latex/l3kernel/expl3.sty b/Master/texmf-dist/tex/latex/l3kernel/expl3.sty
index 941b6d9d16c..261227b079d 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/expl3.sty
+++ b/Master/texmf-dist/tex/latex/l3kernel/expl3.sty
@@ -19,7 +19,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: expl3.dtx
-\def\ExplFileDate{2022-06-16}%
+\def\ExplFileDate{2022-07-01}%
\let\ExplLoaderFileDate\ExplFileDate
\ProvidesPackage{expl3}
[%
diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3debug.def b/Master/texmf-dist/tex/latex/l3kernel/l3debug.def
index 864ce5a0952..f649cde7bdd 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/l3debug.def
+++ b/Master/texmf-dist/tex/latex/l3kernel/l3debug.def
@@ -379,7 +379,7 @@
{
\tex_global:D \cs_prefix_spec:N #1
\tex_def:D \exp_not:N #1
- \cs_argument_spec:N #1
+ \cs_parameter_spec:N #1
{
\tl_to_str:n {#2}
\cs_replacement_spec:N #1
@@ -737,7 +737,7 @@
\exp_args:Nx \tex_scantokens:D
{
\tex_global:D \cs_prefix_spec:N #1 \tex_def:D \exp_not:N #1
- \cs_argument_spec:N #1
+ \cs_parameter_spec:N #1
{ \exp_args:No \tl_to_str:n { #1 #2 } }
}
\group_end: