texlive[49620] Master/texmf-dist: l3kernel (5jan19)

commits+karl at tug.org commits+karl at tug.org
Sun Jan 6 23:04:57 CET 2019


Revision: 49620
          http://tug.org/svn/texlive?view=revision&revision=49620
Author:   karl
Date:     2019-01-06 23:04:57 +0100 (Sun, 06 Jan 2019)
Log Message:
-----------
l3kernel (5jan19)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/l3kernel/CHANGELOG.md
    trunk/Master/texmf-dist/doc/latex/l3kernel/README.md
    trunk/Master/texmf-dist/doc/latex/l3kernel/expl3.pdf
    trunk/Master/texmf-dist/doc/latex/l3kernel/interface3.pdf
    trunk/Master/texmf-dist/doc/latex/l3kernel/interface3.tex
    trunk/Master/texmf-dist/doc/latex/l3kernel/l3docstrip.pdf
    trunk/Master/texmf-dist/doc/latex/l3kernel/l3obsolete.txt
    trunk/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.pdf
    trunk/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.tex
    trunk/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.pdf
    trunk/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.tex
    trunk/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.pdf
    trunk/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.tex
    trunk/Master/texmf-dist/doc/latex/l3kernel/source3.pdf
    trunk/Master/texmf-dist/doc/latex/l3kernel/source3.tex
    trunk/Master/texmf-dist/source/latex/l3kernel/expl3.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3.ins
    trunk/Master/texmf-dist/source/latex/l3kernel/l3alloc.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3box.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3color-base.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3drivers.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3expan.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3file.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3final.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3int.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3names.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3str.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3token.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx
    trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex
    trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex
    trunk/Master/texmf-dist/tex/latex/l3kernel/expl3.lua
    trunk/Master/texmf-dist/tex/latex/l3kernel/expl3.sty
    trunk/Master/texmf-dist/tex/latex/l3kernel/l3doc.cls
    trunk/Master/texmf-dist/tex/latex/l3kernel/l3docstrip.tex
    trunk/Master/texmf-dist/tex/latex/l3kernel/l3dvipdfmx.def
    trunk/Master/texmf-dist/tex/latex/l3kernel/l3dvips.def
    trunk/Master/texmf-dist/tex/latex/l3kernel/l3dvisvgm.def
    trunk/Master/texmf-dist/tex/latex/l3kernel/l3pdfmode.def
    trunk/Master/texmf-dist/tex/latex/l3kernel/l3xdvipdfmx.def

Removed Paths:
-------------
    trunk/Master/texmf-dist/source/latex/l3kernel/l3oldmodules.dtx
    trunk/Master/texmf-dist/tex/latex/l3kernel/l3regex.sty
    trunk/Master/texmf-dist/tex/latex/l3kernel/l3sort.sty
    trunk/Master/texmf-dist/tex/latex/l3kernel/l3str.sty
    trunk/Master/texmf-dist/tex/latex/l3kernel/l3tl-analysis.sty
    trunk/Master/texmf-dist/tex/latex/l3kernel/l3tl-build.sty

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/CHANGELOG.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3kernel/CHANGELOG.md	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/CHANGELOG.md	2019-01-06 22:04:57 UTC (rev 49620)
@@ -7,18 +7,46 @@
 
 ## [Unreleased]
 
+## [2019-01-01]
+
+### Added
+
+- `\iow_allow_break:`
+
+### Fixed
+
+- Correct fp randint with zero argument (see #507)
+- Handling of `\current at color` with (x)dvipdfmx` (see #510)
+
+### Removed
+
+- Support for stand-alone `l3regex`, `l3sort`, `l3srt`, `l3tl-analysis`,
+  `l3tl-build`
+- `\box_resize:Nnn`
+- `\box_use_clear:N`
+- `\c_minus_one`
+- `\file_add_path:nN`
+- `\file_list:`
+- `\file_path_include:n` and `\file_path_remove:n`
+- `\io(r|w)_list_streams:` and `\io(r|w)_log_streams:`
+- `\sort_ordered:` and `\sort_reversed:`
+- `\token_new:Nn`
+- Generation of invalid variants from `n`/`N` base types
+
 ## [2018-12-12]
 
-## Changed
+### Changed
 
 - Move `\tl_range:nnn` to stable
 
-## Fixed
+### Fixed
 
 - Loading in ConTeXt MkIV
 
 ## [2018-12-11]
 
+### Changed
+
 - Enable `\char_generate:nn` to create active tokens with XeTeX
 
 ## [2018-12-06]
@@ -31,7 +59,7 @@
 
 ### Fixed
 
-- Bu in `\lua_shipout_e:n` (see #503)
+- Typo in `\lua_shipout_e:n` (see #503)
 
 ## [2018-11-19]
 
@@ -190,7 +218,8 @@
 - Step func­tions have been added for dim vari­ables,
   e.g. `\dim_step_in­line:nnnn`
 
-[Unreleased]: https://github.com/latex3/latex3/compare/2018-12-12...HEAD
+[Unreleased]: https://github.com/latex3/latex3/compare/2019-01-01...HEAD
+[2019-01-01]: https://github.com/latex3/latex3/compare/2018-12-12...2019-01-01
 [2018-12-12]: https://github.com/latex3/latex3/compare/2018-12-11...2018-12-12
 [2018-12-11]: https://github.com/latex3/latex3/compare/2018-12-06...2018-12-11
 [2018-12-06]: https://github.com/latex3/latex3/compare/2018-11-19...2018-12-06

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3kernel/README.md	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/README.md	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,7 +1,7 @@
 LaTeX3 Programming Conventions
 ==============================
 
-Release 2018-12-12
+Release 2019-01-01
 
 Overview
 --------

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/expl3.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/interface3.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/interface3.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3kernel/interface3.tex	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/interface3.tex	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: interfaces3.tex Copyright (C) 1990-2011,2017 The LaTeX3 Project
+%% File: interfaces3.tex Copyright (C) 1990-2011,2017-2019 The LaTeX3 Project
 %%
 %% It may be distributed and/or modified under the conditions of the
 %% LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -52,7 +52,7 @@
          {latex-team at latex-project.org}%
    }%
 }
-\date{Released 2018-12-12}
+\date{Released 2019-01-01}
 
 \pagenumbering{roman}
 \maketitle
@@ -74,5 +74,3 @@
 \endgroup
 
 \end{document}
-
-

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3docstrip.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3obsolete.txt
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3kernel/l3obsolete.txt	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/l3obsolete.txt	2019-01-06 22:04:57 UTC (rev 49620)
@@ -15,11 +15,6 @@
 --------------------------------------
 Function                   Expires end
 --------------------------------------
-\box_resize:cnn                   2018
-\box_resize:Nnn                   2018
-\box_use_clear:c                  2018
-\box_use_clear:N                  2018
-\c_minus_one                      2018
 \c_zero                           2019
 \c_one                            2019
 \c_two                            2019
@@ -44,15 +39,6 @@
 \c_one_thousand                   2019
 \c_ten_thousand                   2019
 \etex_....:D                      2019
-\file_add_path:nN                 2018
-\file_list:                       2018
-\file_path_include:n              2018
-\file_path_remove:n               2018
-\g_file_current_name_tl           2018
-\ior_list_streams:                2018
-\ior_log_streams:                 2018
-\iow_list_streams:                2018
-\iow_log_streams:                 2018
 \lua_escape_x:n                   2019
 \lua_now_x:n                      2019
 \lua_shipout_x:n                  2019
@@ -62,8 +48,6 @@
 \msg_term:n                       2019
 \pdftex_...:D                     2019
 \ptex_...:D                       2019
-\sort_ordered:                    2018
-\sort_reversed:                   2018
 \str_case_x:nn                    2019
 \str_case_x:nnF                   2019
 \str_case_x:nnT                   2019
@@ -74,11 +58,8 @@
 \str_if_eq_x_p:nn                 2019
 \tl_show_analysis:N               2019
 \tl_show_analysis:n               2019
-\token_new:Nn                     2018
 \uptex_...:D                      2019
 \utex_...:D                       2019
-Variants of n into N/c            2018
-Variants of N into n/o/V/v/f/x    2018
 \xetex_...:D                      2019
 --------------------------------------
 
@@ -91,6 +72,10 @@
 ----------------------------------------------------------
 Function                                      Date removed
 ----------------------------------------------------------
+\box_resize:cnn                                 2018-12-27
+\box_resize:Nnn                                 2018-12-27
+\box_use_clear:c                                2018-12-27
+\box_use_clear:N                                2018-12-27
 \c_active_char_token                            2011-09-08
 \c_alignment_tab_token                          2011-09-08
 \c_empty_toks                                   2011-09-08
@@ -99,6 +84,7 @@
 \c_letter_token                                 2011-09-08
 \c_luatex_is_engine_bool                        2011-12-30
 \c_math_shift_token                             2011-09-08
+\c_minus_one                                    2018-12-27
 \c_other_char_token                             2011-09-08
 \c_pdftex_is_engine_bool                        2011-12-30
 \c_string_cctab                                 2012-06-30
@@ -213,8 +199,12 @@
 \dim_set_min:Nn                                 2013-01-08
 \ExplSyntaxNamesOff                             2013-01-08
 \ExplSyntaxNamesOn                              2013-01-08
+\file_add_path:nN                               2018-12-27
 \file_if_exist_input:nT                         2018-03-05
 \file_if_exist_input:nTF                        2018-03-05
+\file_list:                                     2018-12-27
+\file_path_include:n                            2018-12-27
+\file_path_remove:n                             2018-12-27
 \fp_abs:c                                       2014-05-28
 \fp_abs:N                                       2014-05-28
 \fp_compare:NNNF                                2014-05-28
@@ -274,6 +264,7 @@
 \fp_sin:Nn                                      2014-05-28
 \fp_tan:cn                                      2014-05-28
 \fp_tan:Nn                                      2014-05-28
+\g_file_current_name_tl                         2018-12-27
 \g_tmpa_toks                                    2011-09-08
 \g_tmpb_toks                                    2011-09-08
 \g_tmpc_toks                                    2011-09-08
@@ -301,10 +292,14 @@
 \int_value:w                                    2013-01-08
 \ior_get_str:NN                                 2018-03-05
 \ior_gto:NN                                     2013-07-28
+\ior_list_streams:                              2018-12-27
+\ior_log_streams:                               2018-12-27
 \ior_open_streams:                              2011-09-08
 \ior_str_gto:NN                                 2013-07-28
 \ior_str_to:NN                                  2013-07-28
 \ior_to:NN                                      2013-07-28
+\iow_list_streams:                              2018-12-27
+\iow_log_streams:                               2018-12-27
 \iow_now_buffer_safe:Nn                         2011-09-08
 \iow_now_buffer_safe:Nx                         2011-09-08
 \iow_now_when_avail:Nn                          2012-06-05
@@ -414,6 +409,8 @@
 \skip_if_infinite_glue:nF                       2013-01-08
 \skip_if_infinite_glue:nT                       2013-01-08
 \skip_if_infinite_glue:nTF                      2013-01-08
+\sort_ordered:                                  2018-12-27
+\sort_reversed:                                 2018-12-27
 \str_case:nnn                                   2015-07-14
 \str_case:onn                                   2015-07-14
 \str_case_x:nnn                                 2015-07-14
@@ -493,6 +490,7 @@
 \token_if_other_char:NF                         2011-09-08
 \token_if_other_char:NT                         2011-09-08
 \token_if_other_char:NTF                        2011-09-08
+\token_new:Nn                                   2018-12-29
 \toks_clear:c                                   2011-09-08
 \toks_clear:N                                   2011-09-08
 \toks_gclear:c                                  2011-09-08
@@ -612,4 +610,6 @@
 [key property] .meta:x                          2013-07-10
 [key property] .value_forbidden:                2017-01-01
 [key property] .value_required:                 2017-01-01
+Variants of n into N/c                          2018-12-27
+Variants of N into n/o/V/v/f/x                  2018-12-27
 ----------------------------------------------------------

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.tex	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.tex	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 \iffalse meta-comment
 
-File l3styleguide.tex Copyright (C) 2011,2012,2014-2018 The LaTeX3 Project
+File l3styleguide.tex Copyright (C) 2011,2012,2014-2019 The LaTeX3 Project
 
 It may be distributed and/or modified under the conditions of the
 LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -30,7 +30,7 @@
         {latex-team at latex-project.org}%
     }%
 }
-\date{Released 2018-12-12}
+\date{Released 2019-01-01}
 
 \begin{document}
 
@@ -299,4 +299,3 @@
 \verb|:w| as a catch-all.
 
 \end{document}
-

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.tex	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.tex	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 \iffalse meta-comment
 
-File l3syntax-changes.tex Copyright (C) 2011-2012,2017,2018 The LaTeX3 Project
+File l3syntax-changes.tex Copyright (C) 2011-2012,2017-2019 The LaTeX3 Project
 
 It may be distributed and/or modified under the conditions of the
 LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -30,7 +30,7 @@
         {latex-team at latex-project.org}%
     }%
 }
-\date{Released 2018-12-12}
+\date{Released 2019-01-01}
 
 \newcommand{\TF}{\textit{(TF)}}
 

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.tex	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.tex	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 \iffalse meta-comment
 
-File l3term-glossary.tex Copyright (C) 2018 The LaTeX3 Project
+File l3term-glossary.tex Copyright (C) 2018-2019 The LaTeX3 Project
 
 It may be distributed and/or modified under the conditions of the
 LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -30,7 +30,7 @@
         {latex-team at latex-project.org}%
     }%
 }
-\date{Released 2018-12-12}
+\date{Released 2019-01-01}
 
 \newcommand{\TF}{\textit{(TF)}}
 

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/source3.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/source3.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3kernel/source3.tex	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/source3.tex	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: source3.tex Copyright (C) 1990-2012,2017 The LaTeX3 Project
+%% File: source3.tex Copyright (C) 1990-2012,2017-2019 The LaTeX3 Project
 %%
 %% It may be distributed and/or modified under the conditions of the
 %% LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -51,7 +51,7 @@
          {latex-team at latex-project.org}%
    }%
 }
-\date{Released 2018-12-12}
+\date{Released 2019-01-01}
 
 \pagenumbering{roman}
 \maketitle

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/expl3.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/expl3.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/expl3.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: expl3.dtx Copyright (C) 1990-2018 The LaTeX3 Project
+%% File: expl3.dtx Copyright (C) 1990-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -21,7 +21,7 @@
 % for those people who are interested.
 %
 %<*driver|generic|package>
-\def\ExplFileDate{2018-12-12}%
+\def\ExplFileDate{2019-01-01}%
 %</driver|generic|package>
 %<*driver>
 \documentclass[full]{l3doc}
@@ -49,7 +49,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3.ins
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3.ins	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3.ins	2019-01-06 22:04:57 UTC (rev 49620)
@@ -123,15 +123,6 @@
 
 \generate{\file{l3names.def}      {\from{l3names.dtx}     {names}}}
 
-
-% old modules generating a usage error:
-
-\generate{\file{l3regex.sty}      {\from{l3oldmodules.dtx}       {l3regex,oldmodules}}}
-\generate{\file{l3sort.sty}       {\from{l3oldmodules.dtx}       {l3sort,oldmodules}}}
-\generate{\file{l3str.sty}        {\from{l3oldmodules.dtx}       {l3str,oldmodules}}}
-\generate{\file{l3tl-analysis.sty}{\from{l3oldmodules.dtx}       {l3tl-analysis,oldmodules}}}
-\generate{\file{l3tl-build.sty}   {\from{l3oldmodules.dtx}       {l3tl-build,oldmodules}}}
-
 % Lua code
 
 \def\MetaPrefix{--}

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3alloc.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3alloc.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3alloc.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3alloc.dtx Copyright (C) 1990-2012,2014-2017 The LaTeX3 Project
+%% File: l3alloc.dtx Copyright (C) 1990-2012,2014-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -41,7 +41,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3basics.dtx Copyright (C) 1990-2018 The LaTeX3 project
+%% File: l3basics.dtx Copyright (C) 1990-2019 The LaTeX3 project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -41,7 +41,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3bootstrap.dtx Copyright (C) 2011-2017 The LaTeX3 project
+%% File: l3bootstrap.dtx Copyright (C) 2011-2019 The LaTeX3 project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -138,7 +138,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3box.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3box.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3box.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3box.dtx Copyright (C) 2005-2018 The LaTeX3 Project
+%% File: l3box.dtx Copyright (C) 2005-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -41,7 +41,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %
@@ -593,7 +593,13 @@
 % \end{function}
 %
 %
-% \begin{function}[updated = 2011-10-22]{\vbox_set_split_to_ht:NNn}
+% \begin{function}[updated = 2018-12-29]
+%   {
+%     \vbox_set_split_to_ht:NNn, \vbox_set_split_to_ht:cNn,
+%     \vbox_set_split_to_ht:Ncn, \vbox_set_split_to_ht:ccn,
+%     \vbox_gset_split_to_ht:NNn, \vbox_gset_split_to_ht:cNn,
+%     \vbox_gset_split_to_ht:Ncn, \vbox_gset_split_to_ht:ccn
+%   }
 %   \begin{syntax}
 %      \cs{vbox_set_split_to_ht:NNn} \meta{box_1} \meta{box_2} \Arg{dimexpr}
 %   \end{syntax}
@@ -600,9 +606,6 @@
 %   Sets \meta{box_1} to contain material to the height given by the
 %   \meta{dimexpr} by removing content from the top of \meta{box_2}
 %   (which must be a vertical box).
-%   \begin{texnote}
-%     This is the \TeX{} primitive \tn{vsplit}.
-%   \end{texnote}
 % \end{function}
 %
 % \begin{function}{\vbox_unpack:N, \vbox_unpack:c}
@@ -1542,7 +1545,13 @@
 % \end{macro}
 % \end{macro}
 %
-% \begin{macro}{\vbox_set_split_to_ht:NNn}
+% \begin{macro}
+%   {
+%     \vbox_set_split_to_ht:NNn, \vbox_set_split_to_ht:cNn,
+%     \vbox_set_split_to_ht:Ncn, \vbox_set_split_to_ht:ccn,
+%     \vbox_gset_split_to_ht:NNn, \vbox_gset_split_to_ht:cNn,
+%     \vbox_gset_split_to_ht:Ncn, \vbox_gset_split_to_ht:ccn,
+%   }
 % \testfile*
 %   Splitting a vertical box in two.
 %    \begin{macrocode}
@@ -1549,6 +1558,14 @@
 \__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
 \cs_new_protected:Npn \vbox_set_split_to_ht:NNn #1#2#3
   { \tex_setbox:D #1 \tex_vsplit:D #2 to \@@_dim_eval:n {#3} }
+\cs_generate_variant:Nn \vbox_set_split_to_ht:NNn { c , Nc , cc }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
+\cs_new_protected:Npn \vbox_gset_split_to_ht:NNn #1#2#3
+  {
+    \tex_global:D \tex_setbox:D #1
+      \tex_vsplit:D #2 to \@@_dim_eval:n {#3}
+  }
+\cs_generate_variant:Nn \vbox_gset_split_to_ht:NNn { c , Nc , cc }
 %    \end{macrocode}
 % \end{macro}
 %
@@ -2087,30 +2104,7 @@
 %    \end{macrocode}
 % \end{macro}
 %
-% \subsection{Deprecated functions}
-%
-% \begin{macro}[deprecated = 2018-12-31]{\box_resize:Nnn, \box_resize:cnn}
-% \begin{macro}[deprecated = 2018-12-31]{\box_use_clear:N, \box_use_clear:c}
 %    \begin{macrocode}
-\__kernel_patch_deprecation:nnNNpn
-  { 2018-12-31 } { \box_resize_to_wd_and_ht_plus_dp:Nnn }
-\cs_new_protected:Npn \box_resize:Nnn
-  { \box_resize_to_wd_and_ht_plus_dp:Nnn }
-\__kernel_patch_deprecation:nnNNpn
-  { 2018-12-31 } { \box_resize_to_wd_and_ht_plus_dp:cnn }
-\cs_new_protected:Npn \box_resize:cnn
-  { \box_resize_to_wd_and_ht_plus_dp:cnn }
-\__kernel_patch_deprecation:nnNNpn
-  { 2018-12-31 } { \box_use_drop:N }
-\cs_new_protected:Npn \box_use_clear:N { \box_use_drop:N }
-\__kernel_patch_deprecation:nnNNpn
-  { 2018-12-31 } { \box_use_drop:c }
-\cs_new_protected:Npn \box_use_clear:c { \box_use_drop:c }
-%    \end{macrocode}
-% \end{macro}
-% \end{macro}
-%
-%    \begin{macrocode}
 %</initex|package>
 %    \end{macrocode}
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3candidates.dtx Copyright (C) 2012-2018 The LaTeX3 Project
+%% File: l3candidates.dtx Copyright (C) 2012-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -42,7 +42,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %
@@ -408,6 +408,15 @@
 %   \end{texnote}
 % \end{function}
 %
+% \begin{function}[added = 2018-12-29]{\iow_allow_break:}
+%   \begin{syntax}
+%     \cs{iow_allow_break:}
+%   \end{syntax}
+%   In the first argument of \cs{iow_wrap:nnnN} (for instance in
+%   messages), inserts a break-point that allows a line break.
+%   In other words this is a zero-width breaking space.
+% \end{function}
+%
 % \section{Additions to \pkg{l3flag}}
 %
 % \begin{function}[EXP, added = 2018-04-02]{\flag_raise_if_clear:n}
@@ -3253,7 +3262,7 @@
 %
 % \begin{macro}
 %   {
-%     \char_lower_case:N, \char_upper_case:N, 
+%     \char_lower_case:N, \char_upper_case:N,
 %     \char_mixed_case:N, \char_fold_case:N
 %   }
 % \begin{macro}{\@@_change_case:nNN}
@@ -3737,7 +3746,7 @@
   {
     \cs_new:Npn \@@_change_case_char:nN #1#2
       {
-        \@@_change_case_output:fwn 
+        \@@_change_case_output:fwn
           { \use:c { char_ #1 _case:N } #2 }
       }
   }
@@ -3755,7 +3764,7 @@
               }
           }
           {
-            \@@_change_case_output:fwn 
+            \@@_change_case_output:fwn
               { \use:c { char_ #1 _case:N } #2 }
           }
        }
@@ -3807,7 +3816,7 @@
     \cs_if_exist:cTF { c_@@_change_case_ #2 _ \token_to_str:N #1 _tl }
       {
         \@@_change_case_output:vwn
-          { c_@@_change_case_ #2 _ \token_to_str:N #1 _tl } 
+          { c_@@_change_case_ #2 _ \token_to_str:N #1 _tl }
         #3
       }
       {
@@ -3815,7 +3824,7 @@
           {
             c_@@_change_case_
             \str_if_eq:nnTF {#2} { lower } { upper } { lower }
-            _ \token_to_str:N #1 _tl 
+            _ \token_to_str:N #1 _tl
           }
           {
             \@@_change_case_output:nwn {#1}
@@ -4407,7 +4416,7 @@
   \@@_tmp:w \c_@@_dotless_i_tl { 0131 }
   \@@_tmp:w \c_@@_dotted_I_tl  { 0130 }
   \@@_tmp:w \c_@@_i_ogonek_tl  { 012F }
-  \@@_tmp:w \c_@@_I_ogonek_tl  { 012E }  
+  \@@_tmp:w \c_@@_I_ogonek_tl  { 012E }
 \group_end:
 %    \end{macrocode}
 % \end{variable}

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -2,7 +2,7 @@
 %
 %% File: l3clist.dtx Copyright (C) 2004-2011 Frank Mittelbach,
 %%                                 The LaTeX3 project
-%%                             (C) 2012-2018 The LaTeX3 Project
+%%                             (C) 2012-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3coffins.dtx Copyright(C) 2010-2018 The LaTeX3 Project
+%% File: l3coffins.dtx Copyright(C) 2010-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -41,7 +41,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %
@@ -1053,7 +1053,7 @@
                                 (
                                       \dim_to_fp:n {#1} *
                                         \l_@@_slope_x_fp
-                                  - ( \dim_to_fp:n {#5} * 
+                                  - ( \dim_to_fp:n {#5} *
                                         \l_@@_slope_y_fp )
                                   -   \dim_to_fp:n {#2}
                                   +   \dim_to_fp:n {#6}

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3color-base.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3color-base.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3color-base.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3color-base.dtx Copyright(C) 2011,2012,2014,2016-2018 The LaTeX3 Project
+%% File: l3color-base.dtx Copyright(C) 2011,2012,2014,2016-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -41,7 +41,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3deprecation.dtx (C) Copyright 2017-2018 The LaTeX3 Project
+%% File: l3deprecation.dtx (C) Copyright 2017-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -41,7 +41,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %
@@ -83,14 +83,34 @@
           { \tl_to_str:n {#3} } { \token_to_str:N #1 } { \tl_to_str:n {#2} }
       }
   }
+\__kernel_deprecation_error:Nnn \box_resize:cnn
+  { \box_resize_to_wd_and_ht_plus_dp:cnn } { 2018-12-27 }
+\__kernel_deprecation_error:Nnn \box_resize:Nnn
+  { \box_resize_to_wd_and_ht_plus_dp:Nnn } { 2018-12-27 }
+\__kernel_deprecation_error:Nnn \box_use_clear:c
+  { \box_use_drop:c } { 2018-12-27 }
+\__kernel_deprecation_error:Nnn \box_use_clear:N
+  { \box_use_drop:N } { 2018-12-27 }
+\__kernel_deprecation_error:Nnn \c_job_name_tl
+  { \c_sys_jobname_str } { 2017-01-01 }
+\__kernel_deprecation_error:Nnn \c_minus_one
+  { -1 } { 2018-12-27 }
+\__kernel_deprecation_error:Nnn \dim_case:nnn
+  { \dim_case:nnF } { 2015-07-14 }
+\__kernel_deprecation_error:Nnn \file_add_path:nN
+  { \file_get_full_name:nN } { 2018-12-27 }
 \__kernel_deprecation_error:Nnn \file_if_exist_input:nT
   { \file_if_exist:nT and~ \file_input:n } { 2018-03-05 }
 \__kernel_deprecation_error:Nnn \file_if_exist_input:nTF
   { \file_if_exist:nT and~ \file_input:n } { 2018-03-05 }
-\__kernel_deprecation_error:Nnn \c_job_name_tl
-  { \c_sys_jobname_str } { 2017-01-01 }
-\__kernel_deprecation_error:Nnn \dim_case:nnn
-  { \dim_case:nnF } { 2015-07-14 }
+\__kernel_deprecation_error:Nnn \file_list:
+  { \file_log_list: } { 2018-12-27 }
+\__kernel_deprecation_error:Nnn \file_path_include:n
+  { \seq_put_right:Nn \l_file_search_path_seq } { 2018-12-27 }
+\__kernel_deprecation_error:Nnn \file_path_remove:n
+  { \seq_remove_all:Nn \l_file_search_path_seq } { 2018-12-27 }
+\__kernel_deprecation_error:Nnn \g_file_current_name_tl
+  { \g_file_current_name_str } { 2018-12-27 }
 \__kernel_deprecation_error:Nnn \int_case:nnn
   { \int_case:nnF } { 2015-07-14 }
 \__kernel_deprecation_error:Nnn \int_from_binary:n
@@ -107,6 +127,10 @@
   { \int_to_oct:n } { 2016-01-05 }
 \__kernel_deprecation_error:Nnn \ior_get_str:NN
   { \ior_str_get:NN } { 2018-03-05 }
+\__kernel_deprecation_error:Nnn \ior_list_streams:
+  { \ior_show_list: } { 2018-12-27 }
+\__kernel_deprecation_error:Nnn \ior_log_streams:
+  { \ior_log_list: } { 2018-12-27 }
 \__kernel_deprecation_error:Nnn \luatex_if_engine_p:
   { \sys_if_engine_luatex_p: } { 2017-01-01 }
 \__kernel_deprecation_error:Nnn \luatex_if_engine:F
@@ -133,6 +157,10 @@
   { } { 2015-07-14 }
 \__kernel_deprecation_error:Nnn \scan_align_safe_stop:
   { protected~commands } { 2017-01-01 }
+\__kernel_deprecation_error:Nnn \sort_ordered:
+  { \sort_return_same: } { 2018-12-27 }
+\__kernel_deprecation_error:Nnn \sort_reversed:
+  { \sort_return_swapped: } { 2018-12-27 }
 \__kernel_deprecation_error:Nnn \str_case:nnn
   { \str_case:nnF } { 2015-07-14 }
 \__kernel_deprecation_error:Nnn \str_case:onn
@@ -147,6 +175,8 @@
   { \tex_lowercase:D } { 2018-03-05 }
 \__kernel_deprecation_error:Nnn \tl_to_uppercase:n
   { \tex_uppercase:D } { 2018-03-05 }
+\__kernel_deprecation_error:Nnn \token_new:Nn
+  { \cs_new_eq:NN } { 2018-12-29 }
 \__kernel_deprecation_error:Nnn \xetex_if_engine_p:
   { \sys_if_engine_xetex_p: } { 2017-01-01 }
 \__kernel_deprecation_error:Nnn \xetex_if_engine:F
@@ -158,24 +188,6 @@
 %    \end{macrocode}
 % \end{macro}
 %
-% \begin{macro}[deprecated = 2018-12-31]{\__cs_generate_variant_loop_warning:nnxxxx}
-%   This is left-over from \pkg{l3expan}.  It cannot be done there
-%   because \pkg{l3tl} is not loaded at that time.  Of course what's
-%   deprecated is actually some combinations of variants; see
-%   \pkg{l3expan}.
-%    \begin{macrocode}
-\__kernel_deprecation_code:nn
-  {
-    \cs_set_protected:Npn \__cs_generate_variant_loop_warning:nnxxxx
-      { \__kernel_msg_error:nnxxxx }
-  }
-  {
-    \cs_set_protected:Npn \__cs_generate_variant_loop_warning:nnxxxx
-      { \__kernel_msg_warning:nnxxxx }
-  }
-%    \end{macrocode}
-% \end{macro}
-%
 % \begin{macro}[deprecated = 2019-12-31]{\etex_beginL:D}
 % \begin{macro}{\@@_primitive:NN, \@@_primitive:w}
 %   We renamed all primitives to \cs[no-index]{tex_\ldots{}:D} so all

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3doc.dtx Copyright (C) 1990-2018 The LaTeX3 project
+%% File: l3doc.dtx Copyright (C) 1990-2019 The LaTeX3 project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -77,7 +77,7 @@
 %
 % \title{The \cls{l3doc} class}
 % \author{\Team}
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 % \maketitle
 % \tableofcontents
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse
 %
-%% File l3dosctrip.dtx Copyright (C) 2012,2014-2017 The LaTeX3 Project
+%% File l3dosctrip.dtx Copyright (C) 2012,2014-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -61,7 +61,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3drivers.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3drivers.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3drivers.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3drivers.dtx Copyright(C) 2011-2018 The LaTeX3 Project
+%% File: l3drivers.dtx Copyright(C) 2011-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -41,7 +41,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %
@@ -554,23 +554,23 @@
 %<*package>
 \ProvidesExplFile
 %<*dvipdfmx>
-  {l3dvidpfmx.def}{2018-12-12}{}
+  {l3dvidpfmx.def}{2019-01-01}{}
   {L3 Experimental driver: dvipdfmx}
 %</dvipdfmx>
 %<*dvips>
-  {l3dvips.def}{2018-12-12}{}
+  {l3dvips.def}{2019-01-01}{}
   {L3 Experimental driver: dvips}
 %</dvips>
 %<*dvisvgm>
-  {l3dvisvgm.def}{2018-12-12}{}
+  {l3dvisvgm.def}{2019-01-01}{}
   {L3 Experimental driver: dvisvgm}
 %</dvisvgm>
 %<*pdfmode>
-  {l3pdfmode.def}{2018-12-12}{}
+  {l3pdfmode.def}{2019-01-01}{}
   {L3 Experimental driver: PDF mode}
 %</pdfmode>
 %<*xdvipdfmx>
-  {l3xdvidpfmx.def}{2018-12-12}{}
+  {l3xdvidpfmx.def}{2019-01-01}{}
   {L3 Experimental driver: xdvipdfmx}
 %</xdvipdfmx>
 %</package>
@@ -638,8 +638,8 @@
                    }
               }
               {
-                \exp_after:wN \@@_color_pickup:w
-                  \current at color \q_stop #1
+                \exp_last_unbraced:Nx \@@_color_pickup:w
+                  { \current at color } \q_stop #1
               }
           }
         \cs_new_protected:Npn \@@_color_pickup:w #1 ~ #2 \q_stop #3

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3expan.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3expan.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3expan.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3expan.dtx Copyright (C) 1990-2018 The LaTeX3 project
+%% File: l3expan.dtx Copyright (C) 1990-2019 The LaTeX3 project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -41,7 +41,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %
@@ -2346,8 +2346,7 @@
 %     \@@_generate_variant_loop_end:nwwwNNnn,
 %     \@@_generate_variant_loop_long:wNNnn,
 %     \@@_generate_variant_loop_invalid:NNwNNnn,
-%     \@@_generate_variant_loop_special:NNwNNnn,
-%     \@@_generate_variant_loop_warning:nnxxxx
+%     \@@_generate_variant_loop_special:NNwNNnn
 %   }
 %   \begin{arguments}
 %     \item Last few consecutive letters common between the base and
@@ -2400,10 +2399,6 @@
 %   breaking function takes the empty brace group in |#4| as its first
 %   argument: this empty brace group produces the correct signature for
 %   the full variant.
-%
-%   Since people seem to have tried generating |N| or |c|-type variants
-%   of |n|-type arguments, and |n|, |o|, |V|, |v|, |f|, |x| variants of
-%   |N|-type arguments, in those cases we only produce a warning.
 %    \begin{macrocode}
 \cs_new:Npn \@@_generate_variant_loop:nNwN #1#2#3 \q_mark #4
   {
@@ -2494,13 +2489,11 @@
     #3 \q_stop #4 #5 {#6} {#7}
     \exp_not:n
       {
-        \@@_generate_variant_loop_warning:nnxxxx
+        \__kernel_msg_error:nnxxxx
           { kernel } { deprecated-variant }
           {#7} { \token_to_str:N #5 } {#1} {#2}
       }
   }
-\cs_new_protected:Npn \@@_generate_variant_loop_warning:nnxxxx
-  { \__kernel_msg_warning:nnxxxx }
 %    \end{macrocode}
 % \end{macro}
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3file.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3file.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3file.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3file.dtx Copyright (C) 1990-2018 The LaTeX3 Project
+%% File: l3file.dtx Copyright (C) 1990-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -42,7 +42,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %
@@ -447,6 +447,8 @@
 %       (for example after a control sequence),
 %     \item |\#|, |\%|, |\{|, |\}|, |\~| may be used to represent
 %       the corresponding character,
+%     \item \cs{iow_allow_break:} may be used to allow a line-break
+%       without inserting a space (this is experimental),
 %     \item \cs{iow_indent:n} may be used to indent a part of the
 %       \meta{text} (not the \meta{run-on text}).
 %   \end{itemize}
@@ -1400,6 +1402,7 @@
 %   {
 %     \c_@@_wrap_end_marker_tl,
 %     \c_@@_wrap_newline_marker_tl,
+%     \c_@@_wrap_allow_break_marker_tl,
 %     \c_@@_wrap_indent_marker_tl,
 %     \c_@@_wrap_unindent_marker_tl
 %   }
@@ -1417,7 +1420,7 @@
     { \tl_to_str:n { \^^I \^^O \^^W \^^_ \^^W \^^R \^^A \^^P } }
 \group_end:
 \tl_map_inline:nn
-  { { end } { newline } { indent } { unindent } }
+  { { end } { newline } { allow_break } { indent } { unindent } }
   {
     \tl_const:cx { c_@@_wrap_ #1 _marker_tl }
       {
@@ -1430,6 +1433,30 @@
 % \end{variable}
 % \end{variable}
 %
+% \begin{macro}{\iow_allow_break:}
+% \begin{macro}[EXP]{\@@_allow_break:}
+% \begin{macro}[EXP]{\@@_allow_break_error:}
+%   We set \cs{iow_allow_break:n} to produce an error when outside
+%   messages. Within wrapped message, it is set to \cs{@@_allow_break:}
+%   when valid and otherwise to \cs{@@_allow_break_error:}.  The second
+%   produces an error expandably.
+%    \begin{macrocode}
+\cs_new_protected:Npn \iow_allow_break:
+  {
+    \__kernel_msg_error:nnnn { kernel } { iow-indent }
+      { \iow_wrap:nnnN } { \iow_allow_break: }
+  }
+\cs_new:Npx \@@_allow_break: { \c_@@_wrap_allow_break_marker_tl }
+\cs_new:Npn \@@_allow_break_error:
+  {
+    \__kernel_msg_expandable_error:nnnn { kernel } { iow-indent }
+      { \iow_wrap:nnnN } { \iow_allow_break: }
+  }
+%    \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
 % \begin{macro}{\iow_indent:n}
 % \begin{macro}[EXP]{\@@_indent:n}
 % \begin{macro}[EXP]{\@@_indent_error:n}
@@ -1488,6 +1515,7 @@
       \int_set:Nn \tex_escapechar:D { 92 }
       \cs_set_eq:NN \\ \iow_newline:
       \cs_set_eq:NN \  \c_catcode_other_space_tl
+      \cs_set_eq:NN \iow_allow_break: \@@_allow_break:
       \cs_set_eq:NN \iow_indent:n \@@_indent:n
       #3
 %    \end{macrocode}
@@ -1500,6 +1528,7 @@
 %    \begin{macrocode}
 %<package>      \cs_set_eq:NN \protect \token_to_str:N
       \tl_set:Nx \l_@@_wrap_tl {#1}
+      \cs_set_eq:NN \iow_allow_break: \@@_allow_break_error:
       \cs_set_eq:NN \iow_indent:n \@@_indent_error:n
 %    \end{macrocode}
 %   Afterwards, set the newline marker (two assignments to fully expand,
@@ -1806,7 +1835,27 @@
 %    \end{macrocode}
 % \end{macro}
 %
-% \begin{macro}{\@@_wrap_indent:, \@@_wrap_unindent:}
+% \begin{macro}{\@@_wrap_allow_break:n}
+%   This is called after a chunk has been wrapped.  The
+%   \cs{l_@@_line_part_tl} typically ends with a space (except at the
+%   beginning of a line?), which we remove since the
+%   \texttt{allow\_break} marker should not insert a space.  Then move
+%   on with the next chunk, making sure to adjust the target number of
+%   characters for the line in case we did remove a space.
+%    \begin{macrocode}
+\cs_new_protected:Npn \@@_wrap_allow_break:n #1
+  {
+    \tl_set:Nx \l_@@_line_tl
+      { \l_@@_line_tl \@@_wrap_trim:N \l_@@_line_part_tl }
+    \bool_set_false:N \l_@@_line_break_bool
+    \tl_if_empty:NTF \l_@@_line_part_tl
+      { \@@_wrap_chunk:nw {#1} }
+      { \exp_args:Nf \@@_wrap_chunk:nw { \int_eval:n { #1 + 1 } } }
+  }
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@@_wrap_indent:n, \@@_wrap_unindent:n}
 %   These functions are called after a chunk has been wrapped, when
 %   encountering \texttt{indent}/\texttt{unindent} markers.  Add the
 %   line part (last line part of the previous chunk) to the line so far
@@ -1834,7 +1883,7 @@
 %    \end{macrocode}
 % \end{macro}
 %
-% \begin{macro}{\@@_wrap_newline:, \@@_wrap_end:}
+% \begin{macro}{\@@_wrap_newline:n, \@@_wrap_end:n}
 %   These functions are called after a chunk has been line-wrapped, when
 %   encountering a \texttt{newline}/\texttt{end} marker.  Unless we just
 %   took a line-break, store the line part and the line so far into the
@@ -1879,13 +1928,18 @@
 %    \end{macrocode}
 % \end{macro}
 %
-% \begin{macro}[EXP]{\@@_wrap_trim:N, \@@_wrap_trim:w}
-%   Remove one trailing \enquote{other} space from the argument.
+% \begin{macro}[EXP]{\@@_wrap_trim:N, \@@_wrap_trim:w, \@@_wrap_trim_aux:w}
+%   Remove one trailing \enquote{other} space from the argument if present.
 %    \begin{macrocode}
-\cs_new:Npn \@@_wrap_trim:N #1
-  { \tl_if_empty:NF #1 { \exp_after:wN \@@_wrap_trim:w #1 \q_stop } }
-\exp_last_unbraced:NNNNo
-  \cs_new:Npn \@@_wrap_trim:w #1 \c_catcode_other_space_tl \q_stop {#1}
+\cs_set_protected:Npn \@@_tmp:w #1
+  {
+    \cs_new:Npn \@@_wrap_trim:N ##1
+      { \exp_after:wN \@@_wrap_trim:w ##1 \q_mark #1 \q_mark \q_stop }
+    \cs_new:Npn \@@_wrap_trim:w ##1 #1 \q_mark
+      { \@@_wrap_trim_aux:w ##1 \q_mark }
+    \cs_new:Npn \@@_wrap_trim_aux:w ##1 \q_mark ##2 \q_stop {##1}
+  }
+\exp_args:NV \@@_tmp:w \c_catcode_other_space_tl
 %    \end{macrocode}
 % \end{macro}
 %
@@ -2367,91 +2421,12 @@
   { Only~#1 (arg~1)~allows~#2 }
   {
     The~command~#2 can~only~be~used~in~messages~
-    which~will~be~wrapped~using~#1.~
-    It~was~called~with~argument~'#3'.
+    which~will~be~wrapped~using~#1.
+    \tl_if_empty:nF {#3} { ~ It~was~called~with~argument~'#3'. }
   }
 %    \end{macrocode}
 %
-% \subsection{Deprecated functions}
-%
-% \begin{variable}[deprecated = 2018-12-31]{\g_file_current_name_tl}
-%   For removal after 2018-12-31.
-%   Contrarily to most other deprecated commands this is expandable
-%   so we need to put code by hand in two token lists.  We use
-%   \cs{tex_def:D} directly because \cs{g_file_current_name_tl} is made
-%   outer by \cs{debug_on:n} \texttt{\{deprecation\}}.
 %    \begin{macrocode}
-\tl_new:N \g_file_current_name_tl
-\tl_gset:Nn \g_file_current_name_tl { \g_file_curr_name_str }
-\__kernel_deprecation_code:nn
-  {
-    \__kernel_deprecation_error:Nnn \g_file_current_name_tl
-      { \g_file_curr_name_str } { 2018-12-31 }
-  }
-  { \tex_def:D \g_file_current_name_tl { \g_file_curr_name_str } }
-%    \end{macrocode}
-% \end{variable}
-%
-% \begin{macro}[deprecated = 2018-12-31]{\file_path_include:n}
-% \begin{macro}[deprecated = 2018-12-31]{\file_path_remove:n}
-%   Wrapper functions to manage the search path.
-%    \begin{macrocode}
-\__kernel_patch_deprecation:nnNNpn { 2018-12-31 }
-  { \seq_put_right:Nn \l_file_search_path_seq }
-\cs_new_protected:Npn \file_path_include:n #1
-  {
-    \__kernel_file_name_sanitize:nN {#1} \l_@@_full_name_str
-    \seq_if_in:NVF \l_file_search_path_seq \l_@@_full_name_str
-      { \seq_put_right:NV \l_file_search_path_seq \l_@@_full_name_str }
-  }
-\__kernel_patch_deprecation:nnNNpn { 2018-12-31 }
-  { \seq_remove_all:Nn \l_file_search_path_seq }
-\cs_new_protected:Npn \file_path_remove:n #1
-  {
-    \__kernel_file_name_sanitize:nN {#1} \l_@@_full_name_str
-    \seq_remove_all:NV \l_file_search_path_seq \l_@@_full_name_str
-  }
-%    \end{macrocode}
-% \end{macro}
-% \end{macro}
-%
-% \begin{macro}[deprecated = 2018-12-31]{\file_add_path:nN}
-%   For removal after 2018-12-31.
-%    \begin{macrocode}
-\__kernel_patch_deprecation:nnNNpn { 2018-12-31 } { \file_get_full_name:nN }
-\cs_new_protected:Npn \file_add_path:nN #1#2
-  {
-    \file_get_full_name:nN {#1} #2
-    \str_if_empty:NT #2
-      { \tl_set:Nn #2 { \q_no_value } }
-  }
-%    \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}[deprecated = 2018-12-31]{\file_list:}
-%   Renamed to \cs{file_log_list:}.  For removal after 2018-12-31.
-%    \begin{macrocode}
-\__kernel_patch_deprecation:nnNNpn { 2018-12-31 } { \file_log_list: }
-\cs_new_protected:Npn \file_list:          { \file_log_list: }
-%    \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}[added = 2014-08-22, updated = 2015-08-01, deprecated = 2018-12-31]
-%   {\ior_list_streams:, \ior_log_streams:, \iow_list_streams:, \iow_log_streams:}
-%   These got a more consistent naming.
-%    \begin{macrocode}
-\__kernel_patch_deprecation:nnNNpn { 2018-12-31 } { \ior_show_list: }
-\cs_new_protected:Npn \ior_list_streams:   { \ior_show_list: }
-\__kernel_patch_deprecation:nnNNpn { 2018-12-31 } { \ior_log_list: }
-\cs_new_protected:Npn \ior_log_streams:    { \ior_log_list: }
-\__kernel_patch_deprecation:nnNNpn { 2018-12-31 } { \iow_show_list: }
-\cs_new_protected:Npn \iow_list_streams:   { \iow_show_list: }
-\__kernel_patch_deprecation:nnNNpn { 2018-12-31 } { \iow_log_list: }
-\cs_new_protected:Npn \iow_log_streams:    { \iow_log_list: }
-%    \end{macrocode}
-% \end{macro}
-%
-%    \begin{macrocode}
 %</initex|package>
 %    \end{macrocode}
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3final.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3final.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3final.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3final.dtx Copyright (C) 1990-2018 The LaTeX3 Project
+%% File: l3final.dtx Copyright (C) 1990-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -41,7 +41,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %
@@ -69,7 +69,7 @@
 %
 % The letters |a|--|z| and |A|--|Z| have the correct catcode directly from \IniTeX{}
 % while for Unicode engines (almost) all characters to be treated as letters
-% are defined by the automatic data parsing. Thus the changes here are to 
+% are defined by the automatic data parsing. Thus the changes here are to
 % deal with the additional cases.
 %
 % All the characters in the range $0$--$31$ \emph{except} tab (|^^I|), nl

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3flag.dtx Copyright (C) 2011-2018 The LaTeX3 Project
+%% File: l3flag.dtx Copyright (C) 2011-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -41,7 +41,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3fp-assign.dtx Copyright (C) 2011-2017 The LaTeX3 project
+%% File: l3fp-assign.dtx Copyright (C) 2011-2019 The LaTeX3 project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -38,7 +38,7 @@
 %          {latex-team at latex-project.org}^^A
 %    }^^A
 % }
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 % \maketitle
 %
 % \begin{documentation}

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3fp-aux.dtx Copyright(C) 2011-2018 The LaTeX3 Project
+%% File: l3fp-aux.dtx Copyright(C) 2011-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -41,7 +41,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3fp-basics.dtx Copyright (C) 2011-2014,2016-2018 The LaTeX3 Project
+%% File: l3fp-basics.dtx Copyright (C) 2011-2014,2016-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -38,7 +38,7 @@
 %          {latex-team at latex-project.org}^^A
 %    }^^A
 % }
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3fp-convert.dtx Copyright(C) 2011-2018 The LaTeX3 Project
+%% File: l3fp-convert.dtx Copyright(C) 2011-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -41,7 +41,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3fp-expo.dtx Copyright (C) 2011-2018 The LaTeX3 Project
+%% File: l3fp-expo.dtx Copyright (C) 2011-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -38,7 +38,7 @@
 %          {latex-team at latex-project.org}^^A
 %    }^^A
 % }
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3fp-extended.dtx Copyright (C) 2011-2018 The LaTeX3 Project
+%% File: l3fp-extended.dtx Copyright (C) 2011-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -38,7 +38,7 @@
 %          {latex-team at latex-project.org}^^A
 %    }^^A
 % }
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %
@@ -1204,7 +1204,7 @@
   { \@@_fixed_to_float_o:wN #2; #1 }
 \cs_new:Npn \@@_fixed_to_float_o:wN #1#2#3#4#5#6; #7
   { % for the 8-digit-at-the-start thing
-    + \@@_int_eval:w \c_@@_block_int 
+    + \@@_int_eval:w \c_@@_block_int
     \exp_after:wN \exp_after:wN
     \exp_after:wN \@@_fixed_to_loop:N
     \exp_after:wN \use_none:n

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3fp-logic.dtx Copyright (C) 2011-2018 The LaTeX3 Project
+%% File: l3fp-logic.dtx Copyright (C) 2011-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -38,7 +38,7 @@
 %          {latex-team at latex-project.org}^^A
 %    }^^A
 % }
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3fp-parse.dtx Copyright (C) 2011-2018 The LaTeX3 Project
+%% File: l3fp-parse.dtx Copyright (C) 2011-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -38,7 +38,7 @@
 %          {latex-team at latex-project.org}^^A
 %    }^^A
 % }
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %
@@ -2599,7 +2599,7 @@
 \cs_new:Npn \@@_parse_compare_auxi:NNNNNNN #1#2#3#4#5#6#7
   {
     \if_case:w
-      \@@_int_eval:w \exp_after:wN ` \token_to_str:N #7 - `< 
+      \@@_int_eval:w \exp_after:wN ` \token_to_str:N #7 - `<
         \@@_int_eval_end:
          \@@_parse_compare_auxii:NNNNN #2#2#4#5#6
     \or: \@@_parse_compare_auxii:NNNNN #2#3#2#5#6

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3fp-random.dtx Copyright (C) 2016-2018 The LaTeX3 Project
+%% File: l3fp-random.dtx Copyright (C) 2016-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -38,7 +38,7 @@
 %          {latex-team at latex-project.org}^^A
 %    }^^A
 % }
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %
@@ -421,19 +421,27 @@
         \@@_randint_auxii:wn #2 ;
         { \@@_randint_auxii:wn #1 ; \@@_randint_auxiii_o:ww }
       }
-    \cs_new:Npn \@@_randint_auxii:wn \s_@@ \@@_chk:w 1#1#2#3 ;
+    \cs_new:Npn \@@_randint_auxii:wn \s_@@ \@@_chk:w #1#2#3#4 ;
       {
-        \exp_after:wN \@@_ep_to_fixed:wwn
-        \int_value:w \@@_int_eval:w
-          #2 - \c_@@_prec_int , #3 {0000} {0000} ;
+        \if_meaning:w 0 #1
+          \exp_after:wN \use_i:nn
+        \else:
+          \exp_after:wN \use_ii:nn
+        \fi:
+        { \exp_after:wN \@@_fixed_continue:wn \c_@@_one_fixed_tl }
         {
-          \if_meaning:w 0 #1
-            \exp_after:wN \use_i:nnnn
-            \exp_after:wN \@@_fixed_add_one:wN
-          \fi:
-          \exp_after:wN \@@_fixed_sub:wwn \c_@@_one_fixed_tl
+          \exp_after:wN \@@_ep_to_fixed:wwn
+          \int_value:w \@@_int_eval:w
+            #3 - \c_@@_prec_int , #4 {0000} {0000} ;
+          {
+            \if_meaning:w 0 #2
+              \exp_after:wN \use_i:nnnn
+              \exp_after:wN \@@_fixed_add_one:wN
+            \fi:
+            \exp_after:wN \@@_fixed_sub:wwn \c_@@_one_fixed_tl
+          }
+          \@@_fixed_continue:wn
         }
-        \@@_fixed_continue:wn
       }
     \cs_new:Npn \@@_randint_auxiii_o:ww #1 ; #2 ;
       {

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3fp-round.dtx Copyright(C) 2011-2018 The LaTeX3 Project
+%% File: l3fp-round.dtx Copyright(C) 2011-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -41,7 +41,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3fp-traps.dtx Copyright (C) 2011-2014,2016,2017 The LaTeX3 Project
+%% File: l3fp-traps.dtx Copyright (C) 2011-2014,2016-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -38,7 +38,7 @@
 %          {latex-team at latex-project.org}^^A
 %    }^^A
 % }
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 % \maketitle
 %
 % \begin{documentation}

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3fp-trig.dtx Copyright (C) 2011-2018 The LaTeX3 Project
+%% File: l3fp-trig.dtx Copyright (C) 2011-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -38,7 +38,7 @@
 %          {latex-team at latex-project.org}^^A
 %    }^^A
 % }
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3fp.dtx Copyright (C) 2011-2018 The LaTeX3 Project
+%% File: l3fp.dtx Copyright (C) 2011-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -47,7 +47,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3fparray.dtx Copyright (C) 2018 The LaTeX3 Project
+%% File: l3fparray.dtx Copyright (C) 2018-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -42,7 +42,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3int.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3int.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3int.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3int.dtx Copyright (C) 1990-2018 The LaTeX3 Project
+%% File: l3int.dtx Copyright (C) 1990-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -41,7 +41,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %
@@ -2557,26 +2557,6 @@
 %
 % \subsection{Deprecated}
 %
-% \begin{variable}[deprecated = 2018-12-31]{\c_minus_one}
-%   The actual allocation mechanism is in \pkg{l3alloc}.
-%   In package mode, reuse \tn{m at ne}.
-%   We also store in two global token lists some code for
-%   \cs{debug_on:n} \texttt{\{deprecation\}} and \cs{debug_off:n}
-%   \texttt{\{deprecation\}}.  For the
-%   latter, we need to locally set \cs{c_minus_one} back to the constant
-%   hence use a private name.  We use \cs{tex_let:D} directly because
-%   \cs{c_minus_one} (as all deprecated commands) is made outer by
-%   \cs{debug_on:n} \texttt{\{deprecation\}}.
-%    \begin{macrocode}
-%<package>\cs_gset_eq:NN \c_@@_minus_one \m at ne
-%<initex>\int_const:Nn \c_@@_minus_one { -1 }
-\cs_new_eq:NN \c_minus_one \c_@@_minus_one
-\__kernel_deprecation_code:nn
-  { \__kernel_deprecation_error:Nnn \c_minus_one { -1 } { 2018-12-31 } }
-  { \tex_let:D \c_minus_one \c_@@_minus_one }
-%    \end{macrocode}
-% \end{variable}
-%
 % \begin{variable}[deprecated = 2019-12-31]
 %   {
 %     \c_zero, \c_one, \c_two, \c_three, \c_four, \c_five, \c_six,

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3intarray.dtx Copyright (C) 2017-2018 The LaTeX3 Project
+%% File: l3intarray.dtx Copyright (C) 2017-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -42,7 +42,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3kernel-functions.dtx Copyright (C) 2018 The LaTeX3 project
+%% File: l3kernel-functions.dtx Copyright (C) 2018-2019 The LaTeX3 project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -41,7 +41,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3keys.dtx Copyright (C) 2006-2018 The LaTeX3 Project
+%% File: l3keys.dtx Copyright (C) 2006-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -41,7 +41,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %
@@ -1094,7 +1094,7 @@
 % \begin{macro}[EXP]{\@@_def_aux:n}
 % \begin{macro}[EXP]{\@@_def_aux:w}
 %   First remove the leading quark, then trim spaces off, and finally remove
-%   a set of braces. 
+%   a set of braces.
 %    \begin{macrocode}
 \cs_new_protected:Npn \@@_def:Nn #1#2
   {
@@ -2154,7 +2154,7 @@
 \cs_generate_variant:Nn \@@_set_selective:nnnn { o }
 \cs_new_protected:Npn \@@_set_selective:nn #1#2
   {
-    \bool_set_true:N \l_@@_selective_bool 
+    \bool_set_true:N \l_@@_selective_bool
     \keys_set:nn {#1} {#2}
     \bool_set_false:N \l_@@_selective_bool
   }
@@ -2295,7 +2295,7 @@
           {
             \tl_set_eq:Nc
               \l_keys_value_tl
-              { \c_@@_default_root_tl \l_keys_path_tl } 
+              { \c_@@_default_root_tl \l_keys_path_tl }
           }
           { \tl_clear:N \l_keys_value_tl }
       }
@@ -2352,7 +2352,7 @@
             \clist_map_break:n { \use_none:n }
           }
       }
-    \@@_execute_unknown: 
+    \@@_execute_unknown:
   }
 \cs_new_protected:Npn \@@_execute_unknown:
   {

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3luatex.dtx Copyright (C) 2010-2018 The LaTeX3 Project
+%% File: l3luatex.dtx Copyright (C) 2010-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -41,7 +41,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %
@@ -158,7 +158,7 @@
 %   \begin{quote}
 %     |D:|\meta{year}\meta{month}\meta{day}\meta{hour}\meta{minute}^^A
 %     \meta{second}\meta{offset}
-%   \end{quote}  
+%   \end{quote}
 %   where the latter may be |Z| (UTC) or
 %   \meta{plus-minus}\meta{hours}|'|\meta{minutes}|'|. If the \meta{file} is
 %   not found, nothing is returned with \emph{no error raised}.

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3msg.dtx Copyright (C) 2009-2018 The LaTeX3 Project
+%% File: l3msg.dtx Copyright (C) 2009-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -41,7 +41,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3names.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3names.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3names.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3names.dtx Copyright (C) 1990-2018 The LaTeX3 project
+%% File: l3names.dtx Copyright (C) 1990-2019 The LaTeX3 project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -41,7 +41,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %
@@ -691,7 +691,7 @@
 %<*initex|names|package>
 %    \end{macrocode}
 % \XeTeX{}-specific primitives. Note that \XeTeX{}'s \tn{strcmp} is
-% handled earlier and is \enquote{rolled up} into \tn{pdfstrcmp}. 
+% handled earlier and is \enquote{rolled up} into \tn{pdfstrcmp}.
 % A few cross-compatibility names which lack
 % the |pdf| of the original are handled later.
 %    \begin{macrocode}

Deleted: trunk/Master/texmf-dist/source/latex/l3kernel/l3oldmodules.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3oldmodules.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3oldmodules.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,129 +0,0 @@
-% \iffalse meta-comment
-%
-%% File: l3oldmodules.dtx Copyright (C) 2014-2018 The LaTeX3 Project
-%
-% It may be distributed and/or modified under the conditions of the
-% LaTeX Project Public License (LPPL), either version 1.3c of this
-% license or (at your option) any later version.  The latest version
-% of this license is in the file
-%
-%    https://www.latex-project.org/lppl.txt
-%
-% This file is part of the "l3kernel bundle" (The Work in LPPL)
-% and all files in that bundle must be distributed together.
-%
-% -----------------------------------------------------------------------
-%
-% The development version of the bundle can be found at
-%
-%    https://github.com/latex3/latex3
-%
-% for those people who are interested.
-%
-%<*driver|oldmodules>
-%</driver|oldmodules>
-%<*driver>
-\documentclass[full,kernel]{l3doc}
-\begin{document}
-  \DocInput{\jobname.dtx}
-\end{document}
-%</driver>
-% \fi
-%
-% \title{Obsolete individual modules}
-%
-% \author{^^A
-%  The \LaTeX3 Project\thanks
-%    {^^A
-%      E-mail:
-%        \href{mailto:latex-team at latex-project.org}
-%          {latex-team at latex-project.org}^^A
-%    }^^A
-% }
-%
-%
-% \date{Released 2018-12-12}
-%
-% \maketitle
-%
-% \section{Introduction}
-%
-% \begin{documentation}
-%   The source code for \texttt{expl3} is organized by modules, e.g.,
-%   integer processing is found in \texttt{l3int.dtx}, etc. Initially
-%   each such module was used to generate a corresponding
-%   \texttt{.sty} that was then loaded as part of the \texttt{expl3}
-%   package.
-%
-%   It was however also possible to load only individual modules (they
-%   would then load other modules as necessary.  This scheme was done
-%   to ease testing and updates during the time the kernel code saw a
-%   lot of update.
-%
-%   However, keeping dependencies between modules current became a
-%   complex task and in fact most modules would require most other
-%   modules so that in the end everything or nearly everything was
-%   loaded anyway.
-%
-%   We therefore decided to stop providing individual module packages
-%   but instead generate all code into a single file that is then
-%   loaded as part of the \texttt{expl3} package. This decision was
-%   announced a while back and with the recent \texttt{expl3}
-%   distributions it because a reality.
-%
-%   To help user that do have code or documents referencing the old
-%   module packages, we provide (for the time being) skeleton packages
-%   that generate an error message and then load the \texttt{expl3} so
-%   that the user can continue.
-%   Eventually these packages will get fully removed.
-% \end{documentation}
-%
-% \section{Implementation}
-%
-% \begin{implementation}
-%
-%    First store the current package name in a macro for later use.
-%    \begin{macrocode}
-%<*oldmodules>
-\def\old at liii@module at name
-%<l3regex>{l3regex}
-%<l3sort>{l3sort}
-%<l3str>{l3str}
-%<l3tl-analysis>{l3tl-analysis}
-%<l3tl-build>{l3tl-build}
-%    \end{macrocode}
-%
-%    Then identify the current package:
-%    \begin{macrocode}
-\ProvidesPackage\old at liii@module at name
-  [%
-    2017/03/18 Obsolete L3 package
-  ]
-%    \end{macrocode}
-%    Describe the current situation on the terminal, then generate an
-%    error to ensure that the message is actually seen.
-%    \begin{macrocode}
-\typeout{*****************************************************************}
-\typeout{** }
-\typeout{** Package \old at liii@module at name\space is obsolete and has been removed!}
-\typeout{** }
-\typeout{** Its functionality is now only provided as part of the expl3 package.}
-\typeout{** }
-\typeout{** The old packages will be removed entirely at the end of 2018.}
-\typeout{** }
-\typeout{** Therefore, please replace '\string\usepackage{\old at liii@module at name}'}
-\typeout{** with '\string\usepackage{expl3}' in your documents as soon as possible.}
-\typeout{** }
-\typeout{*******************************************************************}
-\PackageWarning
-  \old at liii@module at name{This package is obsolete ---
-   use 'expl3' instead}
-%    \end{macrocode}
-%    Finally load \texttt{expl3} so that the user can continue for now.
-%    \begin{macrocode}
-\RequirePackage{expl3}
-%</oldmodules>
-%    \end{macrocode}
-%
-% \end{implementation}
-

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3prg.dtx Copyright (C) 2005-2018 The LaTeX3 Project
+%% File: l3prg.dtx Copyright (C) 2005-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -41,7 +41,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3prop.dtx Copyright (C) 1990-2018 The LaTeX3 Project
+%% File: l3prop.dtx Copyright (C) 1990-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -41,7 +41,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3quark.dtx Copyright (C) 1990-2018 The LaTeX3 Project
+%% File: l3quark.dtx Copyright (C) 1990-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -41,7 +41,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3regex.dtx Copyright (C) 2011-2018 The LaTeX3 Project
+%% File: l3regex.dtx Copyright (C) 2011-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -41,7 +41,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %
@@ -3042,7 +3042,7 @@
   {
     \@@_two_if_eq:NNNNTF #1 #2 \@@_compile_special:N )
       {
-        \cs_set:Npn \@@_item_equal:n 
+        \cs_set:Npn \@@_item_equal:n
           { \@@_item_caseless_equal:n }
         \cs_set:Npn \@@_item_range:nn
           { \@@_item_caseless_range:nn }

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3seq.dtx Copyright (C) 1990-2018 The LaTeX3 Project
+%% File: l3seq.dtx Copyright (C) 1990-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -41,7 +41,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,7 +1,7 @@
 % \iffalse meta-comment
 %
 %% File: l3skip.dtx Copyright (C) 2004-2011 Frank Mittelbach, The LaTeX3 Project
-%%                            (C) 2012-2018 The LaTeX3 Project
+%%                            (C) 2012-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -42,7 +42,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %
@@ -178,7 +178,7 @@
 %     \dim_set:Nn \l_my_dim
 %       { 10 pt * \dim_ratio:nn { 5 pt } { 10 pt } }
 %   \end{verbatim}
-%   The output of \cs{dim_ratio:nn} on full expansion is a ration expression
+%   The output of \cs{dim_ratio:nn} on full expansion is a ratio expression
 %   between two integers, with all distances converted to scaled points.
 %   Thus
 %   \begin{verbatim}

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse
 %
-%% File l3sort.dtx (C) Copyright 2012-2018 The LaTeX3 Project
+%% File l3sort.dtx (C) Copyright 2012-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -41,7 +41,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %
@@ -551,8 +551,9 @@
       { \tex_the:D \tex_toks:D \exp_after:wN \l_@@_A_int \exp_after:wN }
       \exp_after:wN { \tex_the:D \tex_toks:D \l_@@_C_int }
     \prg_do_nothing:
-    \@@_return_mark:N
-    \@@_return_mark:N
+    \@@_return_mark:w
+    \@@_return_mark:w
+    \q_mark
     \@@_return_none_error:
   }
 %    \end{macrocode}
@@ -559,41 +560,58 @@
 % \end{macro}
 %
 % \begin{macro}{\sort_return_same:, \sort_return_swapped:}
-% \begin{macro}{\@@_return_mark:N}
-% \begin{macro}{\@@_return_none_error:, \@@_return_two_error:w}
-%   The marker removes one token.  Each comparison should call
-%   \cs{sort_return_same:} or \cs{sort_return_swapped:} exactly
-%   once.  If neither is called, \cs{@@_return_none_error:} is called.
+% \begin{macro}{\@@_return_mark:w}
+% \begin{macro}{\@@_return_none_error:, \@@_return_two_error:}
+%   Each comparison should call \cs{sort_return_same:} or
+%   \cs{sort_return_swapped:} exactly once.  If neither is called,
+%   \cs{@@_return_none_error:} is called, since the \texttt{return_mark}
+%   removes tokens until \cs{q_mark}.  If one is called, the
+%   \texttt{return_mark} auxiliary removes everything except
+%   \cs{@@_return_same:w} (or its \texttt{swapped} analogue) followed by
+%   \cs{@@_return_none_error:}.  Finally if two or more are called,
+%   \cs{@@_return_two_error:} ends up before any \cs{@@_return_mark:w},
+%   so that it produces an error.
 %    \begin{macrocode}
-\cs_new_protected:Npn \sort_return_same: #1 \@@_return_mark:N
+\cs_new_protected:Npn \sort_return_same:
+    #1 \@@_return_mark:w #2 \q_mark
   {
     #1
-    \@@_return_mark:N
-    \@@_return_two_error:w \@@_return_same:
+    #2
+    \@@_return_two_error:
+    \@@_return_mark:w
+    \q_mark
+    \@@_return_same:w
   }
-\cs_new_protected:Npn \sort_return_swapped: #1 \@@_return_mark:N
+\cs_new_protected:Npn \sort_return_swapped:
+    #1 \@@_return_mark:w #2 \q_mark
   {
     #1
-    \@@_return_mark:N
-    \@@_return_two_error:w \@@_return_swapped:
+    #2
+    \@@_return_two_error:
+    \@@_return_mark:w
+    \q_mark
+    \@@_return_swapped:w
   }
-\cs_new_protected:Npn \@@_return_mark:N #1 { }
+\cs_new_protected:Npn \@@_return_mark:w #1 \q_mark { }
 \cs_new_protected:Npn \@@_return_none_error:
   {
     \__kernel_msg_error:nnxx { kernel } { return-none }
       { \tex_the:D \tex_toks:D \l_@@_A_int }
       { \tex_the:D \tex_toks:D \l_@@_C_int }
-    \@@_return_same:
+    \@@_return_same:w \@@_return_none_error:
   }
-\cs_new_protected:Npn \@@_return_two_error:w
-    #1 \@@_return_none_error:
-  { \__kernel_msg_error:nn { kernel } { return-two } }
+\cs_new_protected:Npn \@@_return_two_error:
+  {
+    \__kernel_msg_error:nnxx { kernel } { return-two }
+      { \tex_the:D \tex_toks:D \l_@@_A_int }
+      { \tex_the:D \tex_toks:D \l_@@_C_int }
+  }
 %    \end{macrocode}
 % \end{macro}
 % \end{macro}
 % \end{macro}
 %
-% \begin{macro}{\@@_return_same:}
+% \begin{macro}{\@@_return_same:w}
 %   If the comparison function returns \texttt{same},
 %   then the second argument fed to \cs{@@_compare:nn}
 %   should remain to the right of the other one. Since
@@ -605,7 +623,7 @@
 %   is already in the correct registers and we are done
 %   with merging those two blocks.
 %    \begin{macrocode}
-\cs_new_protected:Npn \@@_return_same:
+\cs_new_protected:Npn \@@_return_same:w #1 \@@_return_none_error:
   {
     \tex_toks:D \l_@@_B_int \tex_toks:D \l_@@_C_int
     \int_decr:N \l_@@_B_int
@@ -618,7 +636,7 @@
 %    \end{macrocode}
 % \end{macro}
 %
-% \begin{macro}{\@@_return_swapped:}
+% \begin{macro}{\@@_return_swapped:w}
 %   If the comparison function returns \texttt{swapped},
 %   then the next item to add to the merger is the first
 %   argument, contents of the \tn{toks} register $A$.
@@ -629,7 +647,7 @@
 %   the second block, indexed by $C$, are copied
 %   to the merger by \cs{@@_merge_blocks_end:}.
 %    \begin{macrocode}
-\cs_new_protected:Npn \@@_return_swapped:
+\cs_new_protected:Npn \@@_return_swapped:w #1 \@@_return_none_error:
   {
     \tex_toks:D \l_@@_B_int \tex_toks:D \l_@@_A_int
     \int_decr:N \l_@@_B_int
@@ -1067,7 +1085,7 @@
 \__kernel_msg_new:nnnn { kernel } { return-two }
   { The~comparison~code~returned~multiple~times. }
   {
-    When~sorting~a~list,~the~code~to~compare~items~called~
+    When~sorting~a~list,~the~code~to~compare~items~#1~and~#2~called~
     \iow_char:N\\sort_return_same: ~or~
     \iow_char:N\\sort_return_swapped: ~multiple~times.~
     Exactly~one~of~these~should~be~called.
@@ -1074,19 +1092,7 @@
   }
 %    \end{macrocode}
 %
-% \subsection{Deprecated functions}
-%
-% \begin{macro}[deprecated = 2018-12-31]{\sort_ordered:, \sort_reversed:}
-%   These functions were renamed for consistency.
 %    \begin{macrocode}
-\__kernel_patch_deprecation:nnNNpn { 2018-12-31 } { \sort_return_same: }
-\cs_new_protected:Npn \sort_ordered: { \sort_return_same: }
-\__kernel_patch_deprecation:nnNNpn { 2018-12-31 } { \sort_return_swapped: }
-\cs_new_protected:Npn \sort_reversed: { \sort_return_swapped: }
-%    \end{macrocode}
-% \end{macro}
-%
-%    \begin{macrocode}
 %</initex|package>
 %    \end{macrocode}
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3str.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3str.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3str.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3str.dtx Copyright (C) 2011-2018 The LaTeX3 Project
+%% File: l3str.dtx Copyright (C) 2011-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -41,7 +41,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %
@@ -614,11 +614,23 @@
 %   \end{syntax}
 %   Converts the \meta{token list} to a \meta{string}, and leaves in the
 %   input stream the characters from the \meta{start index} to the
-%   \meta{end index} inclusive.  Positive \meta{indices} are counted
-%   from the start of the string, $1$~being the first character, and
-%   negative \meta{indices} are counted from the end of the string,
-%   $-1$~being the last character.  If either of \meta{start index} or
-%   \meta{end index} is~$0$, the result is empty.  For instance,
+%   \meta{end index} inclusive.  Spaces are preserved and counted as items
+%   (contrast this with \cs{tl_range:nnn} where spaces are not counted as
+%   items and are possibly discarded from the output).
+%
+%   Here \meta{start index} and \meta{end index} should be integer denotations.
+%   For describing in detail the functions' behavior, let $m$ and $n$ be the start
+%   and end index respectively. If either is $0$, the result is empty. A positive
+%   index means `start counting from the left end', a negative index means
+%   `start counting from the right end'. Let $l$ be the count of the token list.
+%
+%   The \emph{actual start point} is determined as $M=m$ if~$m>0$ and as $M=l+m+1$
+%   if~$m<0$. Similarly the \emph{actual end point} is $N=n$ if~$n>0$ and $N=l+n+1$
+%   if~$n<0$. If $M>N$, the result is empty. Otherwise it consists of all items from
+%   position $M$ to position $N$ inclusive; for the purpose of this rule, we can
+%   imagine that the token list extends at infinity on either side, with void items
+%   at positions $s$ for $s\le0$ or $s>l$.
+%   For instance,
 %   \begin{verbatim}
 %     \iow_term:x { \str_range:nnn { abcdef } { 2 } { 5 } }
 %     \iow_term:x { \str_range:nnn { abcdef } { -4 } { -1 } }
@@ -634,6 +646,32 @@
 %     \iow_term:x { \str_range:nnn { abcdef } { -1 } { -4 } }
 %   \end{verbatim}
 %   both yield empty strings.
+%
+%   The behavior of \cs{str_range_ignore_spaces:nnn} is similar, but spaces
+%   are removed before starting the job. The input
+%   \begin{verbatim}
+%     \iow_term:x { \str_range:nnn { abcdefg } { 2 } { 5 } }
+%     \iow_term:x { \str_range:nnn { abcdefg } { 2 } { -3 } }
+%     \iow_term:x { \str_range:nnn { abcdefg } { -6 } { 5 } }
+%     \iow_term:x { \str_range:nnn { abcdefg } { -6 } { -3 } }
+%
+%     \iow_term:x { \str_range:nnn { abc~efg } { 2 } { 5 } }
+%     \iow_term:x { \str_range:nnn { abc~efg } { 2 } { -3 } }
+%     \iow_term:x { \str_range:nnn { abc~efg } { -6 } { 5 } }
+%     \iow_term:x { \str_range:nnn { abc~efg } { -6 } { -3 } }
+%
+%     \iow_term:x { \str_range_ignore_spaces:nnn { abcdefg } { 2 } { 5 } }
+%     \iow_term:x { \str_range_ignore_spaces:nnn { abcdefg } { 2 } { -3 } }
+%     \iow_term:x { \str_range_ignore_spaces:nnn { abcdefg } { -6 } { 5 } }
+%     \iow_term:x { \str_range_ignore_spaces:nnn { abcdefg } { -6 } { -3 } }
+%
+%     \iow_term:x { \str_range_ignore_spaces:nnn { abcd~efg } { 2 } { 5 } }
+%     \iow_term:x { \str_range_ignore_spaces:nnn { abcd~efg } { 2 } { -3 } }
+%     \iow_term:x { \str_range_ignore_spaces:nnn { abcd~efg } { -6 } { 5 } }
+%     \iow_term:x { \str_range_ignore_spaces:nnn { abcd~efg } { -6 } { -3 } }
+%   \end{verbatim}
+%   will print four instances of |bcde|, four instances of |bc e| and eight
+%   instances of |bcde|.
 % \end{function}
 %
 % \section{String manipulation}

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3sys.dtx Copyright (C) 2015-2018 The LaTeX3 Project
+%% File: l3sys.dtx Copyright (C) 2015-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -41,7 +41,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %
@@ -58,7 +58,7 @@
 % \end{variable}
 %
 % \section{Date and time}
-% 
+%
 % \begin{variable}[added = 2015-09-22]
 %   {
 %     \c_sys_minute_int,

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3tl-analysis.dtx Copyright (C) 2011-2018 The LaTeX3 Project
+%% File: l3tl-analysis.dtx Copyright (C) 2011-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -42,7 +42,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %
@@ -638,7 +638,7 @@
       \tex_advance:D \l_@@_analysis_type_int \l_@@_analysis_type_int
     \fi:
     \tex_skip:D \l_@@_analysis_index_int
-      = \l_@@_analysis_normal_int sp 
+      = \l_@@_analysis_normal_int sp
          plus \l_@@_analysis_type_int sp \scan_stop:
     \int_incr:N \l_@@_analysis_index_int
     \int_zero:N \l_@@_analysis_normal_int
@@ -916,7 +916,7 @@
         \@@_analysis_map_inline_aux:nnn {##1} {##3} {##2}
       }
     \cs_gset_protected:Npn \@@_analysis_map_inline_aux:nnn ##1##2##3
-      {   
+      {
         #2
         #1
       }

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3tl.dtx Copyright (C) 1990-2018 The LaTeX3 Project
+%% File: l3tl.dtx Copyright (C) 1990-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -41,7 +41,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %
@@ -1034,7 +1034,7 @@
 %   \end{syntax}
 %   Leaves in the input stream the items from the \meta{start index} to the
 %   \meta{end index} inclusive.  Spaces and braces are preserved between
-%   the items returned (but never at either end of the list).  
+%   the items returned (but never at either end of the list).
 %
 %   Here \meta{start index} and \meta{end index} should be integer denotations.
 %   For describing in detail the functions' behavior, let $m$ and $n$ be the start
@@ -1052,7 +1052,7 @@
 %   Spaces in between items in the actual range are preserved. Spaces at either end
 %   of the token list will be removed anyway (think to the token list being passed to
 %   |\tl_trim_spaces:n| to begin with.
-%   
+%
 %   Thus, with $l=7$ as in the examples below, all of the following are equivalent
 %   and result in the whole token list
 %   \begin{verbatim}
@@ -1081,14 +1081,14 @@
 %     \tl_range:nnn { abcd~{e{}}f } { 2 } { 4 }
 %   \end{verbatim}
 %   will discard the space after `d`.
-%   
+%
 %   If we want to get the items from the third to the last, the call
 %   is |\tl_range:nnn { <tl> } { 3 } { -1 }|. Similarly, for discarding
 %   the last item, we can do |\tl_range:nnn { <tl> } { 1 } { -2 }|.
-%   
+%
 %   The behavior of \cs{tl_range:Nnn} is exactly the same, acting on the
 %   contents of the tl variable.
-%   
+%
 %   For improved performance, see  \cs{tl_range_braced:nnn} and
 %   \cs{tl_range_unbraced:nnn}.
 %   \begin{texnote}

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3token.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3token.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3token.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3token.dtx Copyright (C) 2005-2018 The LaTeX3 Project
+%% File: l3token.dtx Copyright (C) 2005-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -41,7 +41,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %
@@ -2515,17 +2515,7 @@
 % \end{macro}
 % \end{macro}
 %
-% \subsection{Deprecated functions}
-%
-% \begin{macro}[deprecated=2018-12-31]{\token_new:Nn}
-%   For removal after 2018-12-31.
 %    \begin{macrocode}
-\__kernel_patch_deprecation:nnNNpn { 2018-12-31 } { \cs_new_eq:NN }
-\cs_new_protected:Npn \token_new:Nn #1#2 { \cs_new_eq:NN #1 #2 }
-%    \end{macrocode}
-% \end{macro}
-%
-%    \begin{macrocode}
 %</initex|package>
 %    \end{macrocode}
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %
-%% File: l3unicode.dtx Copyright (C) 2018 The LaTeX3 Project
+%% File: l3unicode.dtx Copyright (C) 2018-2019 The LaTeX3 Project
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -41,7 +41,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2018-12-12}
+% \date{Released 2019-01-01}
 %
 % \maketitle
 %
@@ -218,7 +218,7 @@
       \ior_close:N \g_@@_data_ior
    \group_end:
   }
-%    \end{macrocode} 
+%    \end{macrocode}
 % For the $8$-bit engines, the above is skipped but there is still some
 % set up required. As case changing can only be applied to bytes, and
 % they have to be in the ASCII range, we define a series of data stores
@@ -225,7 +225,7 @@
 % to represent them, and the data are used such that only these are
 % ever case-changed. We do open and close one file to force allocation of
 % a read: this keeps all engines in line.
-%    \begin{macrocode} 
+%    \begin{macrocode}
   {
     \group_begin:
       \cs_set_protected:Npn \@@_tmp:NN #1#2

Modified: trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex	2019-01-06 22:04:57 UTC (rev 49620)
@@ -62,8 +62,8 @@
 %% This file is part of the "l3kernel bundle" (The Work in LPPL)
 %% and all files in that bundle must be distributed together.
 %% 
-%% File: expl3.dtx Copyright (C) 1990-2018 The LaTeX3 Project
-\def\ExplFileDate{2018-12-12}%
+%% File: expl3.dtx Copyright (C) 1990-2019 The LaTeX3 Project
+\def\ExplFileDate{2019-01-01}%
 \begingroup
   \def\next{\endgroup}%
   \expandafter\ifx\csname PackageError\endcsname\relax
@@ -120,7 +120,7 @@
       \ExplFileDate\space
       L3 programming layer (code)%
   }%
-%% File: l3bootstrap.dtx Copyright (C) 2011-2017 The LaTeX3 project
+%% File: l3bootstrap.dtx Copyright (C) 2011-2019 The LaTeX3 project
 \begingroup
   \csname protected\endcsname\gdef\GetIdInfo
     {%
@@ -360,7 +360,7 @@
     \tex_endlinechar:D = 32 \scan_stop:
     \bool_set_true:N \l__kernel_expl_bool
   }
-%% File: l3names.dtx Copyright (C) 1990-2018 The LaTeX3 project
+%% File: l3names.dtx Copyright (C) 1990-2019 The LaTeX3 project
 \let \tex_global:D \global
 \let \tex_let:D    \let
 \begingroup
@@ -2108,7 +2108,7 @@
     }
   \__kernel_primitives:
 \tex_endgroup:D
-%% File: l3basics.dtx Copyright (C) 1990-2018 The LaTeX3 project
+%% File: l3basics.dtx Copyright (C) 1990-2019 The LaTeX3 project
 \tex_let:D \if_true:           \tex_iftrue:D
 \tex_let:D \if_false:          \tex_iffalse:D
 \tex_let:D \or:                \tex_or:D
@@ -3195,7 +3195,7 @@
 \cs_new_eq:NN \prg_break_point: \prg_do_nothing:
 \cs_new:Npn \prg_break: #1 \prg_break_point: { }
 \cs_new:Npn \prg_break:n #1#2 \prg_break_point: {#1}
-%% File: l3expan.dtx Copyright (C) 1990-2018 The LaTeX3 project
+%% File: l3expan.dtx Copyright (C) 1990-2019 The LaTeX3 project
 \cs_new:Npn \__exp_arg_next:nnn #1#2#3 { #2 \::: { #3 {#1} } }
 \cs_new:Npn \__exp_arg_next:Nnn #1#2#3 { #2 \::: { #3 #1 } }
 \cs_new:Npn \::: #1 {#1}
@@ -3955,13 +3955,11 @@
     #3 \q_stop #4 #5 {#6} {#7}
     \exp_not:n
       {
-        \__cs_generate_variant_loop_warning:nnxxxx
+        \__kernel_msg_error:nnxxxx
           { kernel } { deprecated-variant }
           {#7} { \token_to_str:N #5 } {#1} {#2}
       }
   }
-\cs_new_protected:Npn \__cs_generate_variant_loop_warning:nnxxxx
-  { \__kernel_msg_warning:nnxxxx }
 \cs_new:Npn \__cs_generate_variant_same:N #1
   {
     \if:w N #1 N \else:
@@ -4096,7 +4094,7 @@
       }
   }
 \cs_new:Npn \__cs_args_generate:n #1 { \exp_not:c { :: #1 } }
-%% File: l3tl.dtx Copyright (C) 1990-2018 The LaTeX3 Project
+%% File: l3tl.dtx Copyright (C) 1990-2019 The LaTeX3 Project
 \cs_new_protected:Npn \tl_new:N #1
   {
     \__kernel_chk_if_free_cs:N #1
@@ -5116,7 +5114,7 @@
 \tl_new:N \g_tmpb_tl
 \tl_new:N \l_tmpa_tl
 \tl_new:N \l_tmpb_tl
-%% File: l3str.dtx Copyright (C) 2011-2018 The LaTeX3 Project
+%% File: l3str.dtx Copyright (C) 2011-2019 The LaTeX3 Project
 \group_begin:
   \cs_set_protected:Npn \__str_tmp:n #1
     {
@@ -5763,7 +5761,7 @@
 \cs_new:Npn \str_if_eq_x:nnF { \str_if_eq:eeF }
 \__kernel_patch_deprecation:nnNNpn { 2019-12-31 } { \str_if_eq:eeTF }
 \cs_new:Npn \str_if_eq_x:nnTF { \str_if_eq:eeTF }
-%% File: l3quark.dtx Copyright (C) 1990-2018 The LaTeX3 Project
+%% File: l3quark.dtx Copyright (C) 1990-2019 The LaTeX3 Project
 \__kernel_patch:nnNNpn { \__kernel_chk_var_scope:NN q #1 } { }
 \cs_new_protected:Npn \quark_new:N #1
   {
@@ -5881,7 +5879,7 @@
   }
 \scan_new:N \s_stop
 \cs_new:Npn \use_none_delimit_by_s_stop:w #1 \s_stop { }
-%% File: l3seq.dtx Copyright (C) 1990-2018 The LaTeX3 Project
+%% File: l3seq.dtx Copyright (C) 1990-2019 The LaTeX3 Project
 \scan_new:N \s__seq
 \cs_new:Npn \__seq_item:n
   {
@@ -6431,7 +6429,7 @@
 \seq_new:N \l_tmpb_seq
 \seq_new:N \g_tmpa_seq
 \seq_new:N \g_tmpb_seq
-%% File: l3int.dtx Copyright (C) 1990-2018 The LaTeX3 Project
+%% File: l3int.dtx Copyright (C) 1990-2019 The LaTeX3 Project
 \cs_new_eq:NN \int_value:w      \tex_number:D
 \cs_new_eq:NN \__int_eval:w       \tex_numexpr:D
 \cs_new_eq:NN \__int_eval_end:    \tex_relax:D
@@ -7304,11 +7302,6 @@
 \int_new:N \l_tmpb_int
 \int_new:N \g_tmpa_int
 \int_new:N \g_tmpb_int
-\cs_gset_eq:NN \c__int_minus_one \m at ne
-\cs_new_eq:NN \c_minus_one \c__int_minus_one
-\__kernel_deprecation_code:nn
-  { \__kernel_deprecation_error:Nnn \c_minus_one { -1 } { 2018-12-31 } }
-  { \tex_let:D \c_minus_one \c__int_minus_one }
 \cs_new_protected:Npn \__int_deprecated_constants:nn #1#2
   {
     #1 \c_zero                   {   0 } #2
@@ -7350,7 +7343,7 @@
       { \exp_stop_f: }
   }
 \cs_new_eq:NN \__int_value:w \int_value:w
-%% File: l3flag.dtx Copyright (C) 2011-2018 The LaTeX3 Project
+%% File: l3flag.dtx Copyright (C) 2011-2019 The LaTeX3 Project
 \cs_new_protected:Npn \flag_new:n #1
   {
     \cs_new:cpn { flag~#1 } ##1 ;
@@ -7425,7 +7418,7 @@
     \cs:w flag~#1 \exp_after:wN \cs_end:
     \int_value:w \flag_height:n {#1} ;
   }
-%% File: l3prg.dtx Copyright (C) 2005-2018 The LaTeX3 Project
+%% File: l3prg.dtx Copyright (C) 2005-2019 The LaTeX3 Project
 \cs_new_eq:NN \if_bool:N      \tex_ifodd:D
 \cs_new_eq:NN \if_predicate:w \tex_ifodd:D
 \cs_new_protected:Npn \bool_new:N #1 { \cs_new_eq:NN #1 \c_false_bool }
@@ -7726,7 +7719,7 @@
 \cs_new:Npn \__prg_break: #1 \__prg_break_point: { }
 \__kernel_patch_deprecation:nnNNpn { 2019-12-31 } { \prg_break:n }
 \cs_new:Npn \__prg_break:n #1#2 \__prg_break_point: {#1}
-%% File: l3sys.dtx Copyright (C) 2015-2018 The LaTeX3 Project
+%% File: l3sys.dtx Copyright (C) 2015-2019 The LaTeX3 Project
 \str_const:Nx \c_sys_jobname_str { \tex_jobname:D }
 \int_const:Nn \c_sys_minute_int
   { \int_mod:nn { \tex_time:D } { 60 } }
@@ -7785,7 +7778,7 @@
   { \cs_if_exist_p:N \tex_uniformdeviate:D }
 %% File: l3clist.dtx Copyright (C) 2004-2011 Frank Mittelbach,
 %%                                 The LaTeX3 project
-%%                             (C) 2012-2018 The LaTeX3 Project
+%%                             (C) 2012-2019 The LaTeX3 Project
 \cs_new_eq:NN \c_empty_clist \c_empty_tl
 \tl_new:N \l__clist_internal_clist
 \cs_new_protected:Npn \__clist_tmp:w { }
@@ -8373,7 +8366,7 @@
 \clist_new:N \l_tmpb_clist
 \clist_new:N \g_tmpa_clist
 \clist_new:N \g_tmpb_clist
-%% File: l3token.dtx Copyright (C) 2005-2018 The LaTeX3 Project
+%% File: l3token.dtx Copyright (C) 2005-2019 The LaTeX3 Project
 \cs_new_protected:Npn \char_set_catcode:nn #1#2
   { \tex_catcode:D \int_eval:n {#1} = \int_eval:n {#2} \exp_stop_f: }
 \cs_new:Npn \char_value_catcode:n #1
@@ -9061,9 +9054,7 @@
       }
       { \scan_stop: }
   }
-\__kernel_patch_deprecation:nnNNpn { 2018-12-31 } { \cs_new_eq:NN }
-\cs_new_protected:Npn \token_new:Nn #1#2 { \cs_new_eq:NN #1 #2 }
-%% File: l3prop.dtx Copyright (C) 1990-2018 The LaTeX3 Project
+%% File: l3prop.dtx Copyright (C) 1990-2019 The LaTeX3 Project
 \scan_new:N \s__prop
 \cs_new:Npn \__prop_pair:wn #1 \s__prop #2
   { \__kernel_msg_expandable_error:nn { kernel } { misused-prop } }
@@ -9376,7 +9367,7 @@
           { } { }
       }
   }
-%% File: l3msg.dtx Copyright (C) 2009-2018 The LaTeX3 Project
+%% File: l3msg.dtx Copyright (C) 2009-2019 The LaTeX3 Project
 \tl_new:N \l__msg_tmp_tl
 \str_new:N \l__msg_name_str
 \str_new:N \l__msg_text_str
@@ -10380,7 +10371,7 @@
           }
       }
   }
-%% File: l3file.dtx Copyright (C) 1990-2018 The LaTeX3 Project
+%% File: l3file.dtx Copyright (C) 1990-2019 The LaTeX3 Project
 \tl_new:N  \l__ior_internal_tl
 \int_const:Nn \c_term_ior { 16 }
 \seq_new:N \g__ior_streams_seq
@@ -10664,7 +10655,7 @@
     { \tl_to_str:n { \^^I \^^O \^^W \^^_ \^^W \^^R \^^A \^^P } }
 \group_end:
 \tl_map_inline:nn
-  { { end } { newline } { indent } { unindent } }
+  { { end } { newline } { allow_break } { indent } { unindent } }
   {
     \tl_const:cx { c__iow_wrap_ #1 _marker_tl }
       {
@@ -10673,6 +10664,17 @@
         \c_catcode_other_space_tl
       }
   }
+\cs_new_protected:Npn \iow_allow_break:
+  {
+    \__kernel_msg_error:nnnn { kernel } { iow-indent }
+      { \iow_wrap:nnnN } { \iow_allow_break: }
+  }
+\cs_new:Npx \__iow_allow_break: { \c__iow_wrap_allow_break_marker_tl }
+\cs_new:Npn \__iow_allow_break_error:
+  {
+    \__kernel_msg_expandable_error:nnnn { kernel } { iow-indent }
+      { \iow_wrap:nnnN } { \iow_allow_break: }
+  }
 \cs_new_protected:Npn \iow_indent:n #1
   {
     \__kernel_msg_error:nnnnn { kernel } { iow-indent }
@@ -10704,10 +10706,12 @@
       \int_set:Nn \tex_escapechar:D { 92 }
       \cs_set_eq:NN \\ \iow_newline:
       \cs_set_eq:NN \  \c_catcode_other_space_tl
+      \cs_set_eq:NN \iow_allow_break: \__iow_allow_break:
       \cs_set_eq:NN \iow_indent:n \__iow_indent:n
       #3
       \cs_set_eq:NN \protect \token_to_str:N
       \tl_set:Nx \l__iow_wrap_tl {#1}
+      \cs_set_eq:NN \iow_allow_break: \__iow_allow_break_error:
       \cs_set_eq:NN \iow_indent:n \__iow_indent_error:n
       \tl_set:Nx \l__iow_newline_tl { \iow_newline: #2 }
       \tl_set:Nx \l__iow_newline_tl { \tl_to_str:N \l__iow_newline_tl }
@@ -10887,6 +10891,15 @@
           #1 #2 \q_stop
       }
   }
+\cs_new_protected:Npn \__iow_wrap_allow_break:n #1
+  {
+    \tl_set:Nx \l__iow_line_tl
+      { \l__iow_line_tl \__iow_wrap_trim:N \l__iow_line_part_tl }
+    \bool_set_false:N \l__iow_line_break_bool
+    \tl_if_empty:NTF \l__iow_line_part_tl
+      { \__iow_wrap_chunk:nw {#1} }
+      { \exp_args:Nf \__iow_wrap_chunk:nw { \int_eval:n { #1 + 1 } } }
+  }
 \cs_new_protected:Npn \__iow_wrap_indent:n #1
   {
     \tl_put_right:Nx \l__iow_line_tl { \l__iow_line_part_tl }
@@ -10929,10 +10942,15 @@
       }
     \tl_clear:N \l__iow_line_tl
   }
-\cs_new:Npn \__iow_wrap_trim:N #1
-  { \tl_if_empty:NF #1 { \exp_after:wN \__iow_wrap_trim:w #1 \q_stop } }
-\exp_last_unbraced:NNNNo
-  \cs_new:Npn \__iow_wrap_trim:w #1 \c_catcode_other_space_tl \q_stop {#1}
+\cs_set_protected:Npn \__iow_tmp:w #1
+  {
+    \cs_new:Npn \__iow_wrap_trim:N ##1
+      { \exp_after:wN \__iow_wrap_trim:w ##1 \q_mark #1 \q_mark \q_stop }
+    \cs_new:Npn \__iow_wrap_trim:w ##1 #1 \q_mark
+      { \__iow_wrap_trim_aux:w ##1 \q_mark }
+    \cs_new:Npn \__iow_wrap_trim_aux:w ##1 \q_mark ##2 \q_stop {##1}
+  }
+\exp_args:NV \__iow_tmp:w \c_catcode_other_space_tl
 \tl_new:N \l__file_internal_tl
 \ior_new:N \g__file_internal_ior
 \str_new:N \g_file_curr_dir_str
@@ -11193,51 +11211,11 @@
   { Only~#1 (arg~1)~allows~#2 }
   {
     The~command~#2 can~only~be~used~in~messages~
-    which~will~be~wrapped~using~#1.~
-    It~was~called~with~argument~'#3'.
+    which~will~be~wrapped~using~#1.
+    \tl_if_empty:nF {#3} { ~ It~was~called~with~argument~'#3'. }
   }
-\tl_new:N \g_file_current_name_tl
-\tl_gset:Nn \g_file_current_name_tl { \g_file_curr_name_str }
-\__kernel_deprecation_code:nn
-  {
-    \__kernel_deprecation_error:Nnn \g_file_current_name_tl
-      { \g_file_curr_name_str } { 2018-12-31 }
-  }
-  { \tex_def:D \g_file_current_name_tl { \g_file_curr_name_str } }
-\__kernel_patch_deprecation:nnNNpn { 2018-12-31 }
-  { \seq_put_right:Nn \l_file_search_path_seq }
-\cs_new_protected:Npn \file_path_include:n #1
-  {
-    \__kernel_file_name_sanitize:nN {#1} \l__file_full_name_str
-    \seq_if_in:NVF \l_file_search_path_seq \l__file_full_name_str
-      { \seq_put_right:NV \l_file_search_path_seq \l__file_full_name_str }
-  }
-\__kernel_patch_deprecation:nnNNpn { 2018-12-31 }
-  { \seq_remove_all:Nn \l_file_search_path_seq }
-\cs_new_protected:Npn \file_path_remove:n #1
-  {
-    \__kernel_file_name_sanitize:nN {#1} \l__file_full_name_str
-    \seq_remove_all:NV \l_file_search_path_seq \l__file_full_name_str
-  }
-\__kernel_patch_deprecation:nnNNpn { 2018-12-31 } { \file_get_full_name:nN }
-\cs_new_protected:Npn \file_add_path:nN #1#2
-  {
-    \file_get_full_name:nN {#1} #2
-    \str_if_empty:NT #2
-      { \tl_set:Nn #2 { \q_no_value } }
-  }
-\__kernel_patch_deprecation:nnNNpn { 2018-12-31 } { \file_log_list: }
-\cs_new_protected:Npn \file_list:          { \file_log_list: }
-\__kernel_patch_deprecation:nnNNpn { 2018-12-31 } { \ior_show_list: }
-\cs_new_protected:Npn \ior_list_streams:   { \ior_show_list: }
-\__kernel_patch_deprecation:nnNNpn { 2018-12-31 } { \ior_log_list: }
-\cs_new_protected:Npn \ior_log_streams:    { \ior_log_list: }
-\__kernel_patch_deprecation:nnNNpn { 2018-12-31 } { \iow_show_list: }
-\cs_new_protected:Npn \iow_list_streams:   { \iow_show_list: }
-\__kernel_patch_deprecation:nnNNpn { 2018-12-31 } { \iow_log_list: }
-\cs_new_protected:Npn \iow_log_streams:    { \iow_log_list: }
 %% File: l3skip.dtx Copyright (C) 2004-2011 Frank Mittelbach, The LaTeX3 Project
-%%                            (C) 2012-2018 The LaTeX3 Project
+%%                            (C) 2012-2019 The LaTeX3 Project
 \cs_new_eq:NN \if_dim:w      \tex_ifdim:D
 \cs_new_eq:NN \__dim_eval:w      \tex_dimexpr:D
 \cs_new_eq:NN \__dim_eval_end:   \tex_relax:D
@@ -11858,7 +11836,7 @@
 \muskip_new:N \l_tmpb_muskip
 \muskip_new:N \g_tmpa_muskip
 \muskip_new:N \g_tmpb_muskip
-%% File: l3keys.dtx Copyright (C) 2006-2018 The LaTeX3 Project
+%% File: l3keys.dtx Copyright (C) 2006-2019 The LaTeX3 Project
 \tl_new:N \l__keyval_key_tl
 \tl_new:N \l__keyval_value_tl
 \tl_new:N \l__keyval_sanitise_tl
@@ -12807,7 +12785,7 @@
       { is~undefined. }
       { has~the~properties: #2 . }
   }
-%% File: l3intarray.dtx Copyright (C) 2017-2018 The LaTeX3 Project
+%% File: l3intarray.dtx Copyright (C) 2017-2019 The LaTeX3 Project
 \cs_new_eq:NN \__intarray_entry:w \tex_fontdimen:D
 \cs_new_eq:NN \__intarray_count:w \tex_hyphenchar:D
 \int_new:N \l__intarray_loop_int
@@ -13038,8 +13016,8 @@
           { \intarray_gset_rand:Nnn #1 {#2} {#3} }
       }
   }
-%% File: l3fp.dtx Copyright (C) 2011-2018 The LaTeX3 Project
-%% File: l3fp-aux.dtx Copyright(C) 2011-2018 The LaTeX3 Project
+%% File: l3fp.dtx Copyright (C) 2011-2019 The LaTeX3 Project
+%% File: l3fp-aux.dtx Copyright(C) 2011-2019 The LaTeX3 Project
 \cs_new_eq:NN \__fp_int_eval:w \tex_numexpr:D
 \cs_new_eq:NN \__fp_int_eval_end: \scan_stop:
 \cs_new_eq:NN \__fp_int_to_roman:w \tex_romannumeral:D
@@ -13448,7 +13426,7 @@
     '\token_to_str:N \fp_to_tl:N',~or~other~
     conversion~functions.
   }
-%% File: l3fp-traps.dtx Copyright (C) 2011-2014,2016,2017 The LaTeX3 Project
+%% File: l3fp-traps.dtx Copyright (C) 2011-2014,2016-2019 The LaTeX3 Project
 \flag_new:n { fp_invalid_operation }
 \flag_new:n { fp_division_by_zero }
 \flag_new:n { fp_overflow }
@@ -13618,7 +13596,7 @@
   { Invalid~operation~ (#1) #3 (#2) }
 \__kernel_msg_new:nnn { kernel } { fp-unknown-type }
   { Unknown~type~for~'#1' }
-%% File: l3fp-round.dtx Copyright(C) 2011-2018 The LaTeX3 Project
+%% File: l3fp-round.dtx Copyright(C) 2011-2019 The LaTeX3 Project
 \cs_new:Npn \__fp_parse_word_trunc:N
   { \__fp_parse_function:NNN \__fp_round_o:Nw \__fp_round_to_zero:NNN }
 \cs_new:Npn \__fp_parse_word_floor:N
@@ -13897,7 +13875,7 @@
     \exp_after:wN \__fp_exp_after_o:w \exp:w \exp_end_continue_f:w
     \__fp_sanitize:Nw #1#2; {1000}{0000}{0000}{0000};
   }
-%% File: l3fp-parse.dtx Copyright (C) 2011-2018 The LaTeX3 Project
+%% File: l3fp-parse.dtx Copyright (C) 2011-2019 The LaTeX3 Project
 \int_const:Nn \c__fp_prec_func_int   { 16 }
 \int_const:Nn \c__fp_prec_hatii_int  { 14 }
 \int_const:Nn \c__fp_prec_hat_int    { 13 }
@@ -15229,7 +15207,7 @@
     \__kernel_msg_new:nnn { kernel } { fp-robust-cmd }
       { Robust~command~#1 invalid~in~fp~expression! }
   }
-%% File: l3fp-assign.dtx Copyright (C) 2011-2017 The LaTeX3 project
+%% File: l3fp-assign.dtx Copyright (C) 2011-2019 The LaTeX3 project
 \cs_new_protected:Npn \fp_new:N #1
   { \cs_new_eq:NN #1 \c_zero_fp }
 \cs_generate_variant:Nn \fp_new:N {c}
@@ -15287,7 +15265,7 @@
 \fp_new:N \l_tmpb_fp
 \fp_new:N \g_tmpa_fp
 \fp_new:N \g_tmpb_fp
-%% File: l3fp-logic.dtx Copyright (C) 2011-2018 The LaTeX3 Project
+%% File: l3fp-logic.dtx Copyright (C) 2011-2019 The LaTeX3 Project
 \cs_new:Npn \__fp_parse_word_max:N
   { \__fp_parse_function:NNN \__fp_minmax_o:Nw 2 }
 \cs_new:Npn \__fp_parse_word_min:N
@@ -15695,7 +15673,7 @@
     \__fp_exp_after_array_f:w #3 \s__fp_stop
     #4 #1
   }
-%% File: l3fp-basics.dtx Copyright (C) 2011-2014,2016-2018 The LaTeX3 Project
+%% File: l3fp-basics.dtx Copyright (C) 2011-2014,2016-2019 The LaTeX3 Project
 \cs_new:Npn \__fp_parse_word_abs:N
   { \__fp_parse_unary_function:NNN \__fp_set_sign_o:w 0 }
 \cs_new:Npn \__fp_parse_word_logb:N
@@ -16516,7 +16494,7 @@
   }
 \__fp_tmp:w +
 \__fp_tmp:w -
-%% File: l3fp-extended.dtx Copyright (C) 2011-2018 The LaTeX3 Project
+%% File: l3fp-extended.dtx Copyright (C) 2011-2019 The LaTeX3 Project
 \tl_const:Nn \c__fp_one_fixed_tl
   { {10000} {0000} {0000} {0000} {0000} {0000} ; }
 \cs_new:Npn \__fp_fixed_continue:wn #1; #2 { #2 #1; }
@@ -16955,7 +16933,7 @@
       \exp_after:wN \__fp_basics_pack_low:NNNNNw
       \int_value:w \__fp_int_eval:w 1 #3#4 + 1 ;
   }
-%% File: l3fp-expo.dtx Copyright (C) 2011-2018 The LaTeX3 Project
+%% File: l3fp-expo.dtx Copyright (C) 2011-2019 The LaTeX3 Project
 \cs_new:Npn \__fp_parse_word_exp:N
   { \__fp_parse_unary_function:NNN \__fp_exp_o:w ? }
 \cs_new:Npn \__fp_parse_word_ln:N
@@ -17628,7 +17606,7 @@
       1
     \fi:
   }
-%% File: l3fp-trig.dtx Copyright (C) 2011-2018 The LaTeX3 Project
+%% File: l3fp-trig.dtx Copyright (C) 2011-2019 The LaTeX3 Project
 \tl_map_inline:nn
   {
     {acos} {acsc} {asec} {asin}
@@ -18504,7 +18482,7 @@
         { \__fp_asin_auxi_o:NnNww #1 {#3} #4 }
       }
   }
-%% File: l3fp-convert.dtx Copyright(C) 2011-2018 The LaTeX3 Project
+%% File: l3fp-convert.dtx Copyright(C) 2011-2019 The LaTeX3 Project
 \cs_new:Npn \__fp_tuple_convert:Nw #1 \s__fp_tuple \__fp_tuple_chk:w #2 ;
   {
     \int_case:nnF { \__fp_array_count:n {#2} }
@@ -18816,7 +18794,7 @@
                  }
     \exp_not:N \__fp_array_to_clist_loop:Nw
   }
-%% File: l3fp-random.dtx Copyright (C) 2016-2018 The LaTeX3 Project
+%% File: l3fp-random.dtx Copyright (C) 2016-2019 The LaTeX3 Project
 \cs_new:Npn \__fp_parse_word_rand:N
   { \__fp_parse_function:NNN \__fp_rand_o:Nw ? }
 \cs_new:Npn \__fp_parse_word_randint:N
@@ -18926,19 +18904,27 @@
         \__fp_randint_auxii:wn #2 ;
         { \__fp_randint_auxii:wn #1 ; \__fp_randint_auxiii_o:ww }
       }
-    \cs_new:Npn \__fp_randint_auxii:wn \s__fp \__fp_chk:w 1#1#2#3 ;
+    \cs_new:Npn \__fp_randint_auxii:wn \s__fp \__fp_chk:w #1#2#3#4 ;
       {
-        \exp_after:wN \__fp_ep_to_fixed:wwn
-        \int_value:w \__fp_int_eval:w
-          #2 - \c__fp_prec_int , #3 {0000} {0000} ;
+        \if_meaning:w 0 #1
+          \exp_after:wN \use_i:nn
+        \else:
+          \exp_after:wN \use_ii:nn
+        \fi:
+        { \exp_after:wN \__fp_fixed_continue:wn \c__fp_one_fixed_tl }
         {
-          \if_meaning:w 0 #1
-            \exp_after:wN \use_i:nnnn
-            \exp_after:wN \__fp_fixed_add_one:wN
-          \fi:
-          \exp_after:wN \__fp_fixed_sub:wwn \c__fp_one_fixed_tl
+          \exp_after:wN \__fp_ep_to_fixed:wwn
+          \int_value:w \__fp_int_eval:w
+            #3 - \c__fp_prec_int , #4 {0000} {0000} ;
+          {
+            \if_meaning:w 0 #2
+              \exp_after:wN \use_i:nnnn
+              \exp_after:wN \__fp_fixed_add_one:wN
+            \fi:
+            \exp_after:wN \__fp_fixed_sub:wwn \c__fp_one_fixed_tl
+          }
+          \__fp_fixed_continue:wn
         }
-        \__fp_fixed_continue:wn
       }
     \cs_new:Npn \__fp_randint_auxiii_o:ww #1 ; #2 ;
       {
@@ -19100,7 +19086,7 @@
         \fi:
       }
   }
-%% File: l3fparray.dtx Copyright (C) 2018 The LaTeX3 Project
+%% File: l3fparray.dtx Copyright (C) 2018-2019 The LaTeX3 Project
 \int_new:N \g__fp_array_int
 \int_new:N \l__fp_array_loop_int
 \cs_new_protected:Npn \fparray_new:Nn #1#2
@@ -19267,7 +19253,7 @@
   }
 \cs_new:Npn \__fp_array_item_normal:w #1 #2#3#4#5 #6 ; #7 ; #8 ; #9
   { #9 \s__fp \__fp_chk:w 1 #1 {#8} #7 {#2#3#4#5} {#6} ; }
-%% File l3sort.dtx (C) Copyright 2012-2018 The LaTeX3 Project
+%% File l3sort.dtx (C) Copyright 2012-2019 The LaTeX3 Project
 \seq_new:N \g__sort_internal_seq
 \tl_new:N \g__sort_internal_tl
 \int_new:N \l__sort_length_int
@@ -19472,35 +19458,47 @@
       { \tex_the:D \tex_toks:D \exp_after:wN \l__sort_A_int \exp_after:wN }
       \exp_after:wN { \tex_the:D \tex_toks:D \l__sort_C_int }
     \prg_do_nothing:
-    \__sort_return_mark:N
-    \__sort_return_mark:N
+    \__sort_return_mark:w
+    \__sort_return_mark:w
+    \q_mark
     \__sort_return_none_error:
   }
-\cs_new_protected:Npn \sort_return_same: #1 \__sort_return_mark:N
+\cs_new_protected:Npn \sort_return_same:
+    #1 \__sort_return_mark:w #2 \q_mark
   {
     #1
-    \__sort_return_mark:N
-    \__sort_return_two_error:w \__sort_return_same:
+    #2
+    \__sort_return_two_error:
+    \__sort_return_mark:w
+    \q_mark
+    \__sort_return_same:w
   }
-\cs_new_protected:Npn \sort_return_swapped: #1 \__sort_return_mark:N
+\cs_new_protected:Npn \sort_return_swapped:
+    #1 \__sort_return_mark:w #2 \q_mark
   {
     #1
-    \__sort_return_mark:N
-    \__sort_return_two_error:w \__sort_return_swapped:
+    #2
+    \__sort_return_two_error:
+    \__sort_return_mark:w
+    \q_mark
+    \__sort_return_swapped:w
   }
-\cs_new_protected:Npn \__sort_return_mark:N #1 { }
+\cs_new_protected:Npn \__sort_return_mark:w #1 \q_mark { }
 \cs_new_protected:Npn \__sort_return_none_error:
   {
     \__kernel_msg_error:nnxx { kernel } { return-none }
       { \tex_the:D \tex_toks:D \l__sort_A_int }
       { \tex_the:D \tex_toks:D \l__sort_C_int }
-    \__sort_return_same:
+    \__sort_return_same:w \__sort_return_none_error:
   }
-\cs_new_protected:Npn \__sort_return_two_error:w
-    #1 \__sort_return_none_error:
-  { \__kernel_msg_error:nn { kernel } { return-two } }
-\cs_new_protected:Npn \__sort_return_same:
+\cs_new_protected:Npn \__sort_return_two_error:
   {
+    \__kernel_msg_error:nnxx { kernel } { return-two }
+      { \tex_the:D \tex_toks:D \l__sort_A_int }
+      { \tex_the:D \tex_toks:D \l__sort_C_int }
+  }
+\cs_new_protected:Npn \__sort_return_same:w #1 \__sort_return_none_error:
+  {
     \tex_toks:D \l__sort_B_int \tex_toks:D \l__sort_C_int
     \int_decr:N \l__sort_B_int
     \int_decr:N \l__sort_C_int
@@ -19509,7 +19507,7 @@
     \fi:
     \__sort_merge_blocks_aux:
   }
-\cs_new_protected:Npn \__sort_return_swapped:
+\cs_new_protected:Npn \__sort_return_swapped:w #1 \__sort_return_none_error:
   {
     \tex_toks:D \l__sort_B_int \tex_toks:D \l__sort_A_int
     \int_decr:N \l__sort_B_int
@@ -19666,16 +19664,12 @@
 \__kernel_msg_new:nnnn { kernel } { return-two }
   { The~comparison~code~returned~multiple~times. }
   {
-    When~sorting~a~list,~the~code~to~compare~items~called~
+    When~sorting~a~list,~the~code~to~compare~items~#1~and~#2~called~
     \iow_char:N\\sort_return_same: ~or~
     \iow_char:N\\sort_return_swapped: ~multiple~times.~
     Exactly~one~of~these~should~be~called.
   }
-\__kernel_patch_deprecation:nnNNpn { 2018-12-31 } { \sort_return_same: }
-\cs_new_protected:Npn \sort_ordered: { \sort_return_same: }
-\__kernel_patch_deprecation:nnNNpn { 2018-12-31 } { \sort_return_swapped: }
-\cs_new_protected:Npn \sort_reversed: { \sort_return_swapped: }
-%% File: l3tl-analysis.dtx Copyright (C) 2011-2018 The LaTeX3 Project
+%% File: l3tl-analysis.dtx Copyright (C) 2011-2019 The LaTeX3 Project
 \scan_new:N \s__tl
 \cs_new_eq:NN \l__tl_analysis_token ?
 \cs_new_eq:NN \l__tl_analysis_char_token ?
@@ -20114,7 +20108,7 @@
   { \tl_analysis_show:n }
 \cs_new_protected:Npn \tl_show_analysis:n #1
   { \tl_analysis_show:n {#1} }
-%% File: l3regex.dtx Copyright (C) 2011-2018 The LaTeX3 Project
+%% File: l3regex.dtx Copyright (C) 2011-2019 The LaTeX3 Project
 \cs_new_eq:NN \__regex_int_eval:w \tex_numexpr:D
 \cs_new_protected:Npn \__regex_standard_escapechar:
   { \int_set:Nn \tex_escapechar:D { `\\ } }
@@ -23385,7 +23379,7 @@
       }
   }
   { }
-%% File: l3box.dtx Copyright (C) 2005-2018 The LaTeX3 Project
+%% File: l3box.dtx Copyright (C) 2005-2019 The LaTeX3 Project
 \cs_new_eq:NN \__box_dim_eval:w \tex_dimexpr:D
 \__kernel_patch_args:nNNpn
   {
@@ -23713,6 +23707,14 @@
 \__kernel_patch:nnNNpn { \__kernel_chk_var_local:N #1 } { }
 \cs_new_protected:Npn \vbox_set_split_to_ht:NNn #1#2#3
   { \tex_setbox:D #1 \tex_vsplit:D #2 to \__box_dim_eval:n {#3} }
+\cs_generate_variant:Nn \vbox_set_split_to_ht:NNn { c , Nc , cc }
+\__kernel_patch:nnNNpn { \__kernel_chk_var_global:N #1 } { }
+\cs_new_protected:Npn \vbox_gset_split_to_ht:NNn #1#2#3
+  {
+    \tex_global:D \tex_setbox:D #1
+      \tex_vsplit:D #2 to \__box_dim_eval:n {#3}
+  }
+\cs_generate_variant:Nn \vbox_gset_split_to_ht:NNn { c , Nc , cc }
 \fp_new:N \l__box_angle_fp
 \fp_new:N \l__box_cos_fp
 \fp_new:N \l__box_sin_fp
@@ -24012,21 +24014,7 @@
           }
       }
   }
-\__kernel_patch_deprecation:nnNNpn
-  { 2018-12-31 } { \box_resize_to_wd_and_ht_plus_dp:Nnn }
-\cs_new_protected:Npn \box_resize:Nnn
-  { \box_resize_to_wd_and_ht_plus_dp:Nnn }
-\__kernel_patch_deprecation:nnNNpn
-  { 2018-12-31 } { \box_resize_to_wd_and_ht_plus_dp:cnn }
-\cs_new_protected:Npn \box_resize:cnn
-  { \box_resize_to_wd_and_ht_plus_dp:cnn }
-\__kernel_patch_deprecation:nnNNpn
-  { 2018-12-31 } { \box_use_drop:N }
-\cs_new_protected:Npn \box_use_clear:N { \box_use_drop:N }
-\__kernel_patch_deprecation:nnNNpn
-  { 2018-12-31 } { \box_use_drop:c }
-\cs_new_protected:Npn \box_use_clear:c { \box_use_drop:c }
-%% File: l3color-base.dtx Copyright(C) 2011,2012,2014,2016-2018 The LaTeX3 Project
+%% File: l3color-base.dtx Copyright(C) 2011,2012,2014,2016-2019 The LaTeX3 Project
 \cs_new_eq:NN \color_group_begin: \group_begin:
 \cs_new_eq:NN \color_group_end:   \group_end:
 \cs_new_protected:Npn \color_ensure_current:
@@ -24049,7 +24037,7 @@
   { \driver_color_spot:nn {#1} {#2} }
 \tl_new:N \l__color_current_tl
 \tl_set:Nn \l__color_current_tl { gray~0 }
-%% File: l3coffins.dtx Copyright(C) 2010-2018 The LaTeX3 Project
+%% File: l3coffins.dtx Copyright(C) 2010-2019 The LaTeX3 Project
 \box_new:N \l__coffin_internal_box
 \dim_new:N \l__coffin_internal_dim
 \tl_new:N  \l__coffin_internal_tl
@@ -24876,7 +24864,7 @@
     Size~of~coffin~#1 : #2 \\
     Poles~of~coffin~#1 : #3 .
   }
-%% File: l3luatex.dtx Copyright (C) 2010-2018 The LaTeX3 Project
+%% File: l3luatex.dtx Copyright (C) 2010-2019 The LaTeX3 Project
 \cs_new_eq:NN \__lua_escape:n  \tex_luaescapestring:D
 \cs_new_eq:NN \__lua_now:n     \tex_directlua:D
 \cs_new_eq:NN \__lua_shipout:n \tex_latelua:D
@@ -24925,7 +24913,7 @@
 \cs_new:Npn \lua_escape_x:n #1 { \__lua_escape:n {#1} }
 \__kernel_patch_deprecation:nnNNpn { 2019-12-31 } { \lua_shipout_e:n }
 \cs_new_protected:Npn \lua_shipout_x:n #1 { \__lua_shipout:n {#1} }
-%% File: l3unicode.dtx Copyright (C) 2018 The LaTeX3 Project
+%% File: l3unicode.dtx Copyright (C) 2018-2019 The LaTeX3 Project
 \ior_new:N \g__char_data_ior
 \bool_lazy_or:nnTF { \sys_if_engine_luatex_p: } { \sys_if_engine_xetex_p: }
   {
@@ -25064,7 +25052,7 @@
       \ior_close:N \g__char_data_ior
     \group_end:
   }
-%% File: l3candidates.dtx Copyright (C) 2012-2018 The LaTeX3 Project
+%% File: l3candidates.dtx Copyright (C) 2012-2019 The LaTeX3 Project
 \cs_new_protected:Npn \mode_leave_vertical:
   {
     \if_mode_vertical:
@@ -27296,7 +27284,7 @@
     \tl_put_right:Nn \l__peek_collect_tl {#1}
     \exp_after:wN \__peek_true_remove:w
   }
-%% File: l3deprecation.dtx (C) Copyright 2017-2018 The LaTeX3 Project
+%% File: l3deprecation.dtx (C) Copyright 2017-2019 The LaTeX3 Project
 \cs_new_protected:Npn \__kernel_deprecation_error:Nnn #1#2#3
   {
     \tex_protected:D \tex_outer:D \tex_edef:D #1
@@ -27309,14 +27297,34 @@
           { \tl_to_str:n {#3} } { \token_to_str:N #1 } { \tl_to_str:n {#2} }
       }
   }
+\__kernel_deprecation_error:Nnn \box_resize:cnn
+  { \box_resize_to_wd_and_ht_plus_dp:cnn } { 2018-12-27 }
+\__kernel_deprecation_error:Nnn \box_resize:Nnn
+  { \box_resize_to_wd_and_ht_plus_dp:Nnn } { 2018-12-27 }
+\__kernel_deprecation_error:Nnn \box_use_clear:c
+  { \box_use_drop:c } { 2018-12-27 }
+\__kernel_deprecation_error:Nnn \box_use_clear:N
+  { \box_use_drop:N } { 2018-12-27 }
+\__kernel_deprecation_error:Nnn \c_job_name_tl
+  { \c_sys_jobname_str } { 2017-01-01 }
+\__kernel_deprecation_error:Nnn \c_minus_one
+  { -1 } { 2018-12-27 }
+\__kernel_deprecation_error:Nnn \dim_case:nnn
+  { \dim_case:nnF } { 2015-07-14 }
+\__kernel_deprecation_error:Nnn \file_add_path:nN
+  { \file_get_full_name:nN } { 2018-12-27 }
 \__kernel_deprecation_error:Nnn \file_if_exist_input:nT
   { \file_if_exist:nT and~ \file_input:n } { 2018-03-05 }
 \__kernel_deprecation_error:Nnn \file_if_exist_input:nTF
   { \file_if_exist:nT and~ \file_input:n } { 2018-03-05 }
-\__kernel_deprecation_error:Nnn \c_job_name_tl
-  { \c_sys_jobname_str } { 2017-01-01 }
-\__kernel_deprecation_error:Nnn \dim_case:nnn
-  { \dim_case:nnF } { 2015-07-14 }
+\__kernel_deprecation_error:Nnn \file_list:
+  { \file_log_list: } { 2018-12-27 }
+\__kernel_deprecation_error:Nnn \file_path_include:n
+  { \seq_put_right:Nn \l_file_search_path_seq } { 2018-12-27 }
+\__kernel_deprecation_error:Nnn \file_path_remove:n
+  { \seq_remove_all:Nn \l_file_search_path_seq } { 2018-12-27 }
+\__kernel_deprecation_error:Nnn \g_file_current_name_tl
+  { \g_file_current_name_str } { 2018-12-27 }
 \__kernel_deprecation_error:Nnn \int_case:nnn
   { \int_case:nnF } { 2015-07-14 }
 \__kernel_deprecation_error:Nnn \int_from_binary:n
@@ -27333,6 +27341,10 @@
   { \int_to_oct:n } { 2016-01-05 }
 \__kernel_deprecation_error:Nnn \ior_get_str:NN
   { \ior_str_get:NN } { 2018-03-05 }
+\__kernel_deprecation_error:Nnn \ior_list_streams:
+  { \ior_show_list: } { 2018-12-27 }
+\__kernel_deprecation_error:Nnn \ior_log_streams:
+  { \ior_log_list: } { 2018-12-27 }
 \__kernel_deprecation_error:Nnn \luatex_if_engine_p:
   { \sys_if_engine_luatex_p: } { 2017-01-01 }
 \__kernel_deprecation_error:Nnn \luatex_if_engine:F
@@ -27359,6 +27371,10 @@
   { } { 2015-07-14 }
 \__kernel_deprecation_error:Nnn \scan_align_safe_stop:
   { protected~commands } { 2017-01-01 }
+\__kernel_deprecation_error:Nnn \sort_ordered:
+  { \sort_return_same: } { 2018-12-27 }
+\__kernel_deprecation_error:Nnn \sort_reversed:
+  { \sort_return_swapped: } { 2018-12-27 }
 \__kernel_deprecation_error:Nnn \str_case:nnn
   { \str_case:nnF } { 2015-07-14 }
 \__kernel_deprecation_error:Nnn \str_case:onn
@@ -27373,6 +27389,8 @@
   { \tex_lowercase:D } { 2018-03-05 }
 \__kernel_deprecation_error:Nnn \tl_to_uppercase:n
   { \tex_uppercase:D } { 2018-03-05 }
+\__kernel_deprecation_error:Nnn \token_new:Nn
+  { \cs_new_eq:NN } { 2018-12-29 }
 \__kernel_deprecation_error:Nnn \xetex_if_engine_p:
   { \sys_if_engine_xetex_p: } { 2017-01-01 }
 \__kernel_deprecation_error:Nnn \xetex_if_engine:F
@@ -27381,15 +27399,6 @@
   { \sys_if_engine_xetex:T } { 2017-01-01 }
 \__kernel_deprecation_error:Nnn \xetex_if_engine:TF
   { \sys_if_engine_xetex:TF } { 2017-01-01 }
-\__kernel_deprecation_code:nn
-  {
-    \cs_set_protected:Npn \__cs_generate_variant_loop_warning:nnxxxx
-      { \__kernel_msg_error:nnxxxx }
-  }
-  {
-    \cs_set_protected:Npn \__cs_generate_variant_loop_warning:nnxxxx
-      { \__kernel_msg_warning:nnxxxx }
-  }
 \cs_new_protected:Npn \__deprecation_primitive:NN #1#2 { }
 \exp_last_unbraced:NNNNo
   \cs_new:Npn \__deprecation_primitive:w #1 { \token_to_str:N _ } { }

Modified: trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex	2019-01-06 22:04:57 UTC (rev 49620)
@@ -18,8 +18,8 @@
 %% This file is part of the "l3kernel bundle" (The Work in LPPL)
 %% and all files in that bundle must be distributed together.
 %% 
-%% File: expl3.dtx Copyright (C) 1990-2018 The LaTeX3 Project
-\def\ExplFileDate{2018-12-12}%
+%% File: expl3.dtx Copyright (C) 1990-2019 The LaTeX3 Project
+\def\ExplFileDate{2019-01-01}%
 \let\ExplLoaderFileDate\ExplFileDate
 \begingroup
   \def\tempa{LaTeX2e}%

Modified: trunk/Master/texmf-dist/tex/latex/l3kernel/expl3.lua
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/expl3.lua	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/expl3.lua	2019-01-06 22:04:57 UTC (rev 49620)
@@ -18,7 +18,7 @@
 -- This file is part of the "l3kernel bundle" (The Work in LPPL)
 -- and all files in that bundle must be distributed together.
 -- 
--- File: l3luatex.dtx Copyright (C) 2010-2018 The LaTeX3 Project
+-- File: l3luatex.dtx Copyright (C) 2010-2019 The LaTeX3 Project
 l3kernel = l3kernel or { }
 local io      = io
 local kpse    = kpse

Modified: trunk/Master/texmf-dist/tex/latex/l3kernel/expl3.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/expl3.sty	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/expl3.sty	2019-01-06 22:04:57 UTC (rev 49620)
@@ -18,8 +18,8 @@
 %% This file is part of the "l3kernel bundle" (The Work in LPPL)
 %% and all files in that bundle must be distributed together.
 %% 
-%% File: expl3.dtx Copyright (C) 1990-2018 The LaTeX3 Project
-\def\ExplFileDate{2018-12-12}%
+%% File: expl3.dtx Copyright (C) 1990-2019 The LaTeX3 Project
+\def\ExplFileDate{2019-01-01}%
 \let\ExplLoaderFileDate\ExplFileDate
 \ProvidesPackage{expl3}
   [%

Modified: trunk/Master/texmf-dist/tex/latex/l3kernel/l3doc.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/l3doc.cls	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/l3doc.cls	2019-01-06 22:04:57 UTC (rev 49620)
@@ -18,7 +18,7 @@
 %% This file is part of the "l3kernel bundle" (The Work in LPPL)
 %% and all files in that bundle must be distributed together.
 %% 
-%% File: l3doc.dtx Copyright (C) 1990-2018 The LaTeX3 project
+%% File: l3doc.dtx Copyright (C) 1990-2019 The LaTeX3 project
 \RequirePackage{expl3,xparse,calc}
 \ProvidesExplClass{l3doc}{2018-04-30}{}
   {L3 Experimental documentation class}

Modified: trunk/Master/texmf-dist/tex/latex/l3kernel/l3docstrip.tex
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/l3docstrip.tex	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/l3docstrip.tex	2019-01-06 22:04:57 UTC (rev 49620)
@@ -18,7 +18,7 @@
 %% This file is part of the "l3kernel bundle" (The Work in LPPL)
 %% and all files in that bundle must be distributed together.
 %% 
-%% File l3dosctrip.dtx Copyright (C) 2012,2014-2017 The LaTeX3 Project
+%% File l3dosctrip.dtx Copyright (C) 2012,2014-2019 The LaTeX3 Project
 \input docstrip %
 \def\checkOption<#1{%
   \ifcase

Modified: trunk/Master/texmf-dist/tex/latex/l3kernel/l3dvipdfmx.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/l3dvipdfmx.def	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/l3dvipdfmx.def	2019-01-06 22:04:57 UTC (rev 49620)
@@ -18,9 +18,9 @@
 %% This file is part of the "l3kernel bundle" (The Work in LPPL)
 %% and all files in that bundle must be distributed together.
 %% 
-%% File: l3drivers.dtx Copyright(C) 2011-2018 The LaTeX3 Project
+%% File: l3drivers.dtx Copyright(C) 2011-2019 The LaTeX3 Project
 \ProvidesExplFile
-  {l3dvidpfmx.def}{2018-12-12}{}
+  {l3dvidpfmx.def}{2019-01-01}{}
   {L3 Experimental driver: dvipdfmx}
 \cs_new_eq:NN \__driver_literal:e \tex_special:D
 \cs_new_protected:Npn \__driver_literal:n #1
@@ -42,8 +42,8 @@
                    }
               }
               {
-                \exp_after:wN \__driver_color_pickup:w
-                  \current at color \q_stop #1
+                \exp_last_unbraced:Nx \__driver_color_pickup:w
+                  { \current at color } \q_stop #1
               }
           }
         \cs_new_protected:Npn \__driver_color_pickup:w #1 ~ #2 \q_stop #3

Modified: trunk/Master/texmf-dist/tex/latex/l3kernel/l3dvips.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/l3dvips.def	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/l3dvips.def	2019-01-06 22:04:57 UTC (rev 49620)
@@ -18,9 +18,9 @@
 %% This file is part of the "l3kernel bundle" (The Work in LPPL)
 %% and all files in that bundle must be distributed together.
 %% 
-%% File: l3drivers.dtx Copyright(C) 2011-2018 The LaTeX3 Project
+%% File: l3drivers.dtx Copyright(C) 2011-2019 The LaTeX3 Project
 \ProvidesExplFile
-  {l3dvips.def}{2018-12-12}{}
+  {l3dvips.def}{2019-01-01}{}
   {L3 Experimental driver: dvips}
 \cs_new_eq:NN \__driver_literal:e \tex_special:D
 \cs_new_protected:Npn \__driver_literal:n #1
@@ -42,8 +42,8 @@
                    }
               }
               {
-                \exp_after:wN \__driver_color_pickup:w
-                  \current at color \q_stop #1
+                \exp_last_unbraced:Nx \__driver_color_pickup:w
+                  { \current at color } \q_stop #1
               }
           }
         \cs_new_protected:Npn \__driver_color_pickup:w #1 ~ #2 \q_stop #3

Modified: trunk/Master/texmf-dist/tex/latex/l3kernel/l3dvisvgm.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/l3dvisvgm.def	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/l3dvisvgm.def	2019-01-06 22:04:57 UTC (rev 49620)
@@ -18,9 +18,9 @@
 %% This file is part of the "l3kernel bundle" (The Work in LPPL)
 %% and all files in that bundle must be distributed together.
 %% 
-%% File: l3drivers.dtx Copyright(C) 2011-2018 The LaTeX3 Project
+%% File: l3drivers.dtx Copyright(C) 2011-2019 The LaTeX3 Project
 \ProvidesExplFile
-  {l3dvisvgm.def}{2018-12-12}{}
+  {l3dvisvgm.def}{2019-01-01}{}
   {L3 Experimental driver: dvisvgm}
 \cs_new_eq:NN \__driver_literal:e \tex_special:D
 \cs_new_protected:Npn \__driver_literal:n #1
@@ -42,8 +42,8 @@
                    }
               }
               {
-                \exp_after:wN \__driver_color_pickup:w
-                  \current at color \q_stop #1
+                \exp_last_unbraced:Nx \__driver_color_pickup:w
+                  { \current at color } \q_stop #1
               }
           }
         \cs_new_protected:Npn \__driver_color_pickup:w #1 ~ #2 \q_stop #3

Modified: trunk/Master/texmf-dist/tex/latex/l3kernel/l3pdfmode.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/l3pdfmode.def	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/l3pdfmode.def	2019-01-06 22:04:57 UTC (rev 49620)
@@ -18,9 +18,9 @@
 %% This file is part of the "l3kernel bundle" (The Work in LPPL)
 %% and all files in that bundle must be distributed together.
 %% 
-%% File: l3drivers.dtx Copyright(C) 2011-2018 The LaTeX3 Project
+%% File: l3drivers.dtx Copyright(C) 2011-2019 The LaTeX3 Project
 \ProvidesExplFile
-  {l3pdfmode.def}{2018-12-12}{}
+  {l3pdfmode.def}{2019-01-01}{}
   {L3 Experimental driver: PDF mode}
 \cs_new_eq:NN \__driver_literal:e \tex_special:D
 \cs_new_protected:Npn \__driver_literal:n #1

Deleted: trunk/Master/texmf-dist/tex/latex/l3kernel/l3regex.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/l3regex.sty	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/l3regex.sty	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,47 +0,0 @@
-%%
-%% This is file `l3regex.sty',
-%% generated with the docstrip utility.
-%%
-%% The original source files were:
-%%
-%% l3oldmodules.dtx  (with options: `l3regex,oldmodules')
-%% 
-%% Copyright (C) 1990-2018 The LaTeX3 Project
-%% 
-%% It may be distributed and/or modified under the conditions of
-%% the LaTeX Project Public License (LPPL), either version 1.3c of
-%% this license or (at your option) any later version.  The latest
-%% version of this license is in the file:
-%% 
-%%    https://www.latex-project.org/lppl.txt
-%% 
-%% This file is part of the "l3kernel bundle" (The Work in LPPL)
-%% and all files in that bundle must be distributed together.
-%% 
-%% File: l3oldmodules.dtx Copyright (C) 2014-2018 The LaTeX3 Project
-\def\old at liii@module at name
-{l3regex}
-\ProvidesPackage\old at liii@module at name
-  [%
-    2017/03/18 Obsolete L3 package
-  ]
-\typeout{*****************************************************************}
-\typeout{** }
-\typeout{** Package \old at liii@module at name\space is obsolete and has been removed!}
-\typeout{** }
-\typeout{** Its functionality is now only provided as part of the expl3 package.}
-\typeout{** }
-\typeout{** The old packages will be removed entirely at the end of 2018.}
-\typeout{** }
-\typeout{** Therefore, please replace '\string\usepackage{\old at liii@module at name}'}
-\typeout{** with '\string\usepackage{expl3}' in your documents as soon as possible.}
-\typeout{** }
-\typeout{*******************************************************************}
-\PackageWarning
-  \old at liii@module at name{This package is obsolete ---
-   use 'expl3' instead}
-\RequirePackage{expl3}
-
-%% 
-%%
-%% End of file `l3regex.sty'.

Deleted: trunk/Master/texmf-dist/tex/latex/l3kernel/l3sort.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/l3sort.sty	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/l3sort.sty	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,47 +0,0 @@
-%%
-%% This is file `l3sort.sty',
-%% generated with the docstrip utility.
-%%
-%% The original source files were:
-%%
-%% l3oldmodules.dtx  (with options: `l3sort,oldmodules')
-%% 
-%% Copyright (C) 1990-2018 The LaTeX3 Project
-%% 
-%% It may be distributed and/or modified under the conditions of
-%% the LaTeX Project Public License (LPPL), either version 1.3c of
-%% this license or (at your option) any later version.  The latest
-%% version of this license is in the file:
-%% 
-%%    https://www.latex-project.org/lppl.txt
-%% 
-%% This file is part of the "l3kernel bundle" (The Work in LPPL)
-%% and all files in that bundle must be distributed together.
-%% 
-%% File: l3oldmodules.dtx Copyright (C) 2014-2018 The LaTeX3 Project
-\def\old at liii@module at name
-{l3sort}
-\ProvidesPackage\old at liii@module at name
-  [%
-    2017/03/18 Obsolete L3 package
-  ]
-\typeout{*****************************************************************}
-\typeout{** }
-\typeout{** Package \old at liii@module at name\space is obsolete and has been removed!}
-\typeout{** }
-\typeout{** Its functionality is now only provided as part of the expl3 package.}
-\typeout{** }
-\typeout{** The old packages will be removed entirely at the end of 2018.}
-\typeout{** }
-\typeout{** Therefore, please replace '\string\usepackage{\old at liii@module at name}'}
-\typeout{** with '\string\usepackage{expl3}' in your documents as soon as possible.}
-\typeout{** }
-\typeout{*******************************************************************}
-\PackageWarning
-  \old at liii@module at name{This package is obsolete ---
-   use 'expl3' instead}
-\RequirePackage{expl3}
-
-%% 
-%%
-%% End of file `l3sort.sty'.

Deleted: trunk/Master/texmf-dist/tex/latex/l3kernel/l3str.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/l3str.sty	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/l3str.sty	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,47 +0,0 @@
-%%
-%% This is file `l3str.sty',
-%% generated with the docstrip utility.
-%%
-%% The original source files were:
-%%
-%% l3oldmodules.dtx  (with options: `l3str,oldmodules')
-%% 
-%% Copyright (C) 1990-2018 The LaTeX3 Project
-%% 
-%% It may be distributed and/or modified under the conditions of
-%% the LaTeX Project Public License (LPPL), either version 1.3c of
-%% this license or (at your option) any later version.  The latest
-%% version of this license is in the file:
-%% 
-%%    https://www.latex-project.org/lppl.txt
-%% 
-%% This file is part of the "l3kernel bundle" (The Work in LPPL)
-%% and all files in that bundle must be distributed together.
-%% 
-%% File: l3oldmodules.dtx Copyright (C) 2014-2018 The LaTeX3 Project
-\def\old at liii@module at name
-{l3str}
-\ProvidesPackage\old at liii@module at name
-  [%
-    2017/03/18 Obsolete L3 package
-  ]
-\typeout{*****************************************************************}
-\typeout{** }
-\typeout{** Package \old at liii@module at name\space is obsolete and has been removed!}
-\typeout{** }
-\typeout{** Its functionality is now only provided as part of the expl3 package.}
-\typeout{** }
-\typeout{** The old packages will be removed entirely at the end of 2018.}
-\typeout{** }
-\typeout{** Therefore, please replace '\string\usepackage{\old at liii@module at name}'}
-\typeout{** with '\string\usepackage{expl3}' in your documents as soon as possible.}
-\typeout{** }
-\typeout{*******************************************************************}
-\PackageWarning
-  \old at liii@module at name{This package is obsolete ---
-   use 'expl3' instead}
-\RequirePackage{expl3}
-
-%% 
-%%
-%% End of file `l3str.sty'.

Deleted: trunk/Master/texmf-dist/tex/latex/l3kernel/l3tl-analysis.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/l3tl-analysis.sty	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/l3tl-analysis.sty	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,47 +0,0 @@
-%%
-%% This is file `l3tl-analysis.sty',
-%% generated with the docstrip utility.
-%%
-%% The original source files were:
-%%
-%% l3oldmodules.dtx  (with options: `l3tl-analysis,oldmodules')
-%% 
-%% Copyright (C) 1990-2018 The LaTeX3 Project
-%% 
-%% It may be distributed and/or modified under the conditions of
-%% the LaTeX Project Public License (LPPL), either version 1.3c of
-%% this license or (at your option) any later version.  The latest
-%% version of this license is in the file:
-%% 
-%%    https://www.latex-project.org/lppl.txt
-%% 
-%% This file is part of the "l3kernel bundle" (The Work in LPPL)
-%% and all files in that bundle must be distributed together.
-%% 
-%% File: l3oldmodules.dtx Copyright (C) 2014-2018 The LaTeX3 Project
-\def\old at liii@module at name
-{l3tl-analysis}
-\ProvidesPackage\old at liii@module at name
-  [%
-    2017/03/18 Obsolete L3 package
-  ]
-\typeout{*****************************************************************}
-\typeout{** }
-\typeout{** Package \old at liii@module at name\space is obsolete and has been removed!}
-\typeout{** }
-\typeout{** Its functionality is now only provided as part of the expl3 package.}
-\typeout{** }
-\typeout{** The old packages will be removed entirely at the end of 2018.}
-\typeout{** }
-\typeout{** Therefore, please replace '\string\usepackage{\old at liii@module at name}'}
-\typeout{** with '\string\usepackage{expl3}' in your documents as soon as possible.}
-\typeout{** }
-\typeout{*******************************************************************}
-\PackageWarning
-  \old at liii@module at name{This package is obsolete ---
-   use 'expl3' instead}
-\RequirePackage{expl3}
-
-%% 
-%%
-%% End of file `l3tl-analysis.sty'.

Deleted: trunk/Master/texmf-dist/tex/latex/l3kernel/l3tl-build.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/l3tl-build.sty	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/l3tl-build.sty	2019-01-06 22:04:57 UTC (rev 49620)
@@ -1,47 +0,0 @@
-%%
-%% This is file `l3tl-build.sty',
-%% generated with the docstrip utility.
-%%
-%% The original source files were:
-%%
-%% l3oldmodules.dtx  (with options: `l3tl-build,oldmodules')
-%% 
-%% Copyright (C) 1990-2018 The LaTeX3 Project
-%% 
-%% It may be distributed and/or modified under the conditions of
-%% the LaTeX Project Public License (LPPL), either version 1.3c of
-%% this license or (at your option) any later version.  The latest
-%% version of this license is in the file:
-%% 
-%%    https://www.latex-project.org/lppl.txt
-%% 
-%% This file is part of the "l3kernel bundle" (The Work in LPPL)
-%% and all files in that bundle must be distributed together.
-%% 
-%% File: l3oldmodules.dtx Copyright (C) 2014-2018 The LaTeX3 Project
-\def\old at liii@module at name
-{l3tl-build}
-\ProvidesPackage\old at liii@module at name
-  [%
-    2017/03/18 Obsolete L3 package
-  ]
-\typeout{*****************************************************************}
-\typeout{** }
-\typeout{** Package \old at liii@module at name\space is obsolete and has been removed!}
-\typeout{** }
-\typeout{** Its functionality is now only provided as part of the expl3 package.}
-\typeout{** }
-\typeout{** The old packages will be removed entirely at the end of 2018.}
-\typeout{** }
-\typeout{** Therefore, please replace '\string\usepackage{\old at liii@module at name}'}
-\typeout{** with '\string\usepackage{expl3}' in your documents as soon as possible.}
-\typeout{** }
-\typeout{*******************************************************************}
-\PackageWarning
-  \old at liii@module at name{This package is obsolete ---
-   use 'expl3' instead}
-\RequirePackage{expl3}
-
-%% 
-%%
-%% End of file `l3tl-build.sty'.

Modified: trunk/Master/texmf-dist/tex/latex/l3kernel/l3xdvipdfmx.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/l3xdvipdfmx.def	2019-01-06 22:04:13 UTC (rev 49619)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/l3xdvipdfmx.def	2019-01-06 22:04:57 UTC (rev 49620)
@@ -18,9 +18,9 @@
 %% This file is part of the "l3kernel bundle" (The Work in LPPL)
 %% and all files in that bundle must be distributed together.
 %% 
-%% File: l3drivers.dtx Copyright(C) 2011-2018 The LaTeX3 Project
+%% File: l3drivers.dtx Copyright(C) 2011-2019 The LaTeX3 Project
 \ProvidesExplFile
-  {l3xdvidpfmx.def}{2018-12-12}{}
+  {l3xdvidpfmx.def}{2019-01-01}{}
   {L3 Experimental driver: xdvipdfmx}
 \cs_new_eq:NN \__driver_literal:e \tex_special:D
 \cs_new_protected:Npn \__driver_literal:n #1
@@ -42,8 +42,8 @@
                    }
               }
               {
-                \exp_after:wN \__driver_color_pickup:w
-                  \current at color \q_stop #1
+                \exp_last_unbraced:Nx \__driver_color_pickup:w
+                  { \current at color } \q_stop #1
               }
           }
         \cs_new_protected:Npn \__driver_color_pickup:w #1 ~ #2 \q_stop #3



More information about the tex-live-commits mailing list