diff options
author | Karl Berry <karl@freefriends.org> | 2023-10-10 20:25:10 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2023-10-10 20:25:10 +0000 |
commit | 351a0279d8f42a7dde142101f15bc424265c5846 (patch) | |
tree | 78348d54d8349be5c05a962a29ad49fabb4dd397 /Master/texmf-dist/source/latex | |
parent | f9ef02225e8e2c547c2e884aaa50cbe21a604045 (diff) |
pdfmanagement-testphase (10oct23)
git-svn-id: svn://tug.org/texlive/trunk@68505 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex')
19 files changed, 256 insertions, 166 deletions
diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/hyperref-generic.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/hyperref-generic.dtx index 4d68f49b6d1..dc722effbef 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/hyperref-generic.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/hyperref-generic.dtx @@ -82,7 +82,7 @@ % }^^A % } % -% \date{Version 0.95z, released 2023-08-29} +% \date{Version 0.96a, released 2023-10-09} % % \maketitle % \begin{documentation} @@ -912,9 +912,9 @@ %^^A %% \l_@@_dest_box %^^A %% %^^A %% References (ref) -%^^A %% *\@@_ref_label:nn -%^^A %% *\@@_ref_if_exist:nn -%^^A %% *\@@_ref_check:nn +%^^A %% *\@@_property_record:nn +%^^A %% *\@@_property_if_recorded:nn +%^^A %% *\@@_property_ref_undefined_warn:nn, %^^A %% % helps to display key list messages %^^A %% \@@_clist_display:n %^^A %% @@ -956,7 +956,7 @@ %<@@=hyp> % \end{macrocode} % \begin{macrocode} -\ProvidesFile{hgeneric-testphase.def}[2023-08-29 v0.95z % +\ProvidesFile{hgeneric-testphase.def}[2023-10-09 v0.96a % generic Hyperref driver for the LaTeX PDF management testphase bundle] \RequirePackage{etoolbox} %why? @@ -1157,6 +1157,7 @@ % \begin{macrocode} \cs_generate_variant:Nn\pdf_destination:nn {nf} \cs_generate_variant:Nn\pdf_object_ref:n {e} +\cs_generate_variant:Nn\pdf_pageobject_ref:n {e} % \end{macrocode} % \section{Overwriting/providing commands from hyperref} % \pkg{hyperref} checks driver version, we need to suppress this during the development @@ -1534,57 +1535,85 @@ % \end{macrocode} % % \section{Reference and label commands} -% The code uses the l3ref-tmp package which +% The code uses in older LaTeX the l3ref-tmp package which % must have been loaded as pdfmanagement is a requirement. -% The commands use after the module prefix always |_ref|. -% -% At first a label command which add the space commands from LaTeX: +% In newer LaTeX it uses the in-built property module. +% % \begin{macro} % { -% \@@_ref_label:nn, -% \@@_ref_if_exist:nn, -% \@@_ref_check:nn, -% \@@_ref_value:nn +% \@@_property_record:nn, +% \@@_property_if_recorded:nn, +% \@@_property_ref_undefined_warn:nn, +% \@@_property_ref:nn % } % \begin{macrocode} % -\cs_new_protected:Npn \@@_ref_label:nn #1 #2 %label/attributes +\cs_if_exist:NTF \property_new:nnnn { - \@bsphack - \ref_label:nn{#1}{#2} - \@esphack - } -\cs_generate_variant:Nn \@@_ref_label:nn {en} % \end{macrocode} -% This provides a condition which tests if a label/attribute combination is known -% \begin{macrocode} -\prg_new_eq_conditional:NNn \@@_ref_if_exist:nn \ref_if_exist:nn { p , T , F, TF } -\prg_generate_conditional_variant:Nnn \@@_ref_if_exist:nn {en} { p , T , F, TF } +% At first a label command which adds the space commands from LaTeX: +% \begin{macrocode} + \cs_new_protected:Npn \@@_property_record:nn #1 #2 %label/attributes + { + \@bsphack + \property_record:nn{#1}{#2} + \@esphack + } % \end{macrocode} -% This checks if the label/attribute is known and issues a warning if not. +% This provides a conditional which tests if a label/property combination is known +% \begin{macrocode} + \prg_new_eq_conditional:NNn + \@@_property_if_recorded:nn \property_if_recorded:nn { T } +% \end{macrocode} +% This checks if the label/property is known and issues a warning if not. % It then also triggers the standard rerun message. +% \begin{macrocode} + \cs_new_eq:NN \@@_property_ref_undefined_warn:nn \property_ref_undefined_warn:nn +% \end{macrocode} +% +% \begin{macrocode} + \cs_new_eq:NN \@@_property_ref:nn \property_ref:nn + } +% \end{macrocode} +% and now the same with the older l3ref-tmp. +% This can go once LaTeX has been released. % \begin{macrocode} -\cs_new_protected:Npn \@@_ref_check:nn #1 #2 %label/attribute { - \@@_ref_if_exist:nnF {#1}{#2} + \cs_new_protected:Npn \@@_property_record:nn #1 #2 %label/attributes + { + \@bsphack + \ref_label:nn{#1}{#2} + \@esphack + } + + \prg_new_eq_conditional:NNn \@@_property_if_recorded:nn \ref_if_exist:nn { T } + + \cs_new_protected:Npn \@@_property_ref_undefined_warn:nn #1 #2 %label/attribute { - \protect\G@refundefinedtrue - \@latex@warning + \@@_property_if_recorded:nnF {#1}{#2} { - Reference~'\tl_to_str:n {#1}'~with~attribute~'\tl_to_str:n {#2}'~ - on~page~\thepage~\space undefined + \protect\G@refundefinedtrue + \@latex@warning + { + Reference~'\tl_to_str:n {#1}'~with~attribute~'\tl_to_str:n {#2}'~ + on~page~\thepage~\space undefined + } } } + + \cs_new:Npn \@@_property_ref:nn #1 #2 + { + \ref_value:nn{#1}{#2} + } } -\cs_generate_variant:Nn \@@_ref_check:nn {en} % \end{macrocode} -% This retrieves a value, it is a simple wrapper around the \cs{ref_value:nn} +% At last we generate a few variants. We use ee-variants as they already exist +% in the module and once this is there it can go here. % \begin{macrocode} -\cs_new:Npn \@@_ref_value:nn #1 #2 - { - \ref_value:nn{#1}{#2} - } -\cs_generate_variant:Nn \@@_ref_value:nn {en} +\cs_generate_variant:Nn \@@_property_record:nn {ee} +\prg_generate_conditional_variant:Nnn \@@_property_if_recorded:nn {ee} { T } +\cs_generate_variant:Nn \@@_property_ref_undefined_warn:nn {ee} +\cs_generate_variant:Nn \@@_property_ref:nn {ee} % \end{macrocode} % \end{macro} % \section{Variables} @@ -4356,16 +4385,16 @@ %\zref@labelbyprops{HyAnn@\the\HyAnn@Count}{abspage}% %\zref@labelbylist {HyAnn@\the\HyAnn@Count} {l3pdf} %\zref@refused{HyAnn@\the\HyAnn@Count}% - \@@_ref_label:en {HyAnn@\the\HyAnn@Count}{abspage} - \@@_ref_check:en {HyAnn@\the\HyAnn@Count}{abspage} + \@@_property_record:ee {HyAnn@\the\HyAnn@Count}{abspage} + \@@_property_ref_undefined_warn:ee {HyAnn@\the\HyAnn@Count}{abspage} }% \def\Fld@pageobjref { - \@@_ref_if_exist:enT {HyAnn@\the\HyAnn@Count}{abspage} + \@@_property_if_recorded:eeT {HyAnn@\the\HyAnn@Count}{abspage} { - /P~\pdf_pageobject_ref:n + /P~\pdf_pageobject_ref:e { - \@@_ref_value:en{HyAnn@\the\HyAnn@Count}{abspage} + \@@_property_ref:ee{HyAnn@\the\HyAnn@Count}{abspage} } } } diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3backend-testphase.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3backend-testphase.dtx index ebf9ede282c..e378716818e 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3backend-testphase.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3backend-testphase.dtx @@ -45,7 +45,7 @@ % }^^A % } % -% \date{Version 0.95z, released 2023-08-29} +% \date{Version 0.96a, released 2023-10-09} % % \maketitle % @@ -56,30 +56,47 @@ % \begin{macrocode} %<drivers>\ProvidesExplFile %<*dvipdfmx> - {l3backend-testphase-dvipdfmx.def}{2023-08-29}{} + {l3backend-testphase-dvipdfmx.def}{2023-10-09}{} {LaTeX~PDF~management~testphase~bundle~backend~support: dvipdfmx} %</dvipdfmx> %<*dvips> - {l3backend-testphase-dvips.def}{2023-08-29}{} + {l3backend-testphase-dvips.def}{2023-10-09}{} {LaTeX~PDF~management~testphase~bundle~backend~support: dvips} %</dvips> %<*dvisvgm> - {l3backend-testphase-dvisvgm.def}{2023-08-29}{} + {l3backend-testphase-dvisvgm.def}{2023-10-09}{} {LaTeX~PDF~management~testphase~bundle~backend~support: dvisvgm} %</dvisvgm> %<*luatex> - {l3backend-testphase-luatex.def}{2023-08-29}{} + {l3backend-testphase-luatex.def}{2023-10-09}{} {LaTeX~PDF~management~testphase~bundle~backend~support: PDF output (LuaTeX)} %</luatex> %<*pdftex> - {l3backend-testphase-pdftex.def}{2023-08-29}{} + {l3backend-testphase-pdftex.def}{2023-10-09}{} {LaTeX~PDF~management~testphase~bundle~backend~support: PDF output (pdfTeX)} %</pdftex> %<*xdvipdfmx> - {l3backend-testphase-xetex.def}{2023-08-29}{} + {l3backend-testphase-xetex.def}{2023-10-09}{} {LaTeX~PDF~management~testphase~bundle~backend~support: XeTeX} %</xdvipdfmx> % \end{macrocode} +% \subsection{Variants} +% We need to generate temporarly a few e-types variants of kernel backend commands. +% These can be removed once the kernel provides them. +% \begin{macrocode} +%<@@=pdf> +%<*luatex|pdftex> +\cs_generate_variant:Nn \__kernel_backend_literal_page:n { e } +%</luatex|pdftex> +%<*dvipdfmx|xdvipdfmx> +\cs_generate_variant:Nn \__kernel_backend_literal:n { e } +\cs_generate_variant:Nn \@@_backend:n { e } +%</dvipdfmx|xdvipdfmx> +%<*dvips> +\cs_generate_variant:Nn \__kernel_backend_postscript:n { e } +\cs_generate_variant:Nn \@@_backend_pdfmark:n { e } +%</dvips> +% \end{macrocode} % \subsection{Support for delayed literal and special} % Starting with TeXlive 2023 the engines support a \texttt{shipout} keyword % for \cs{pdfliteral} and \cs{special}. When used the argument is not expanded @@ -153,33 +170,54 @@ % This uses the temporary l3ref-tmp.sty. It will % will be replaced by kernel code later. % It is only needed to get a reference for the absolute page counter. -% This uses the counter from the -% new lthooks/ltshipout package. +% This uses the counter from the new lthooks/ltshipout package. % \begin{macrocode} -%<@@=pdf> %<*drivers> +% \end{macrocode} +% l3ref-tmp is loaded until all files in latex-lab and tagpdf has been +% cleared: +% \begin{macrocode} \RequirePackage{l3ref-tmp} -\cs_generate_variant:Nn \ref_label:nn {en} -\cs_generate_variant:Nn \ref_value:nn {en} -\cs_new_protected:Npn \@@_backend_ref_label:nn #1 #2 - { - \@bsphack - \ref_label:nn{#1}{abspage} - \@esphack - } -\cs_new:Npn \@@_backend_ref_value:nn #1 #2 - { - \ref_value:nn{#1}{#2} - } -\cs_generate_variant:Nn \@@_backend_ref_label:nn {en} -\cs_generate_variant:Nn \@@_backend_ref_value:nn {en} +% \end{macrocode} +% +% \begin{macrocode} +\cs_if_exist:NTF \property_new:nnnn + { + \cs_new_protected:Npn \@@_backend_record_abspage:n #1 + { + \@bsphack + \property_record:nn{#1}{abspage} + \@esphack + } + \cs_new:Npn \@@_backend_ref_abspage:n #1 + { + \property_ref:nn{#1}{abspage} + } + + } + { + \cs_new_protected:Npn \@@_backend_record_abspage:n #1 + %% \@@_backend_ref_label:nn #1 #2 + { + \@bsphack + \ref_label:nn{#1}{abspage} + \@esphack + } + \cs_new:Npn \@@_backend_ref_abspage:n #1 + %% \@@_backend_ref_value:nn #1 #2 + { + \ref_value:nn{#1}{abspage} + } + } +\cs_generate_variant:Nn \@@_backend_record_abspage:n {e} +\cs_generate_variant:Nn \@@_backend_ref_abspage:n {e} %</drivers> % \end{macrocode} % avoid that destinations names are optimized with xelatex/dvipdfmx % see https://tug.org/pipermail/dvipdfmx/2019-May/000002.html % \begin{macrocode} -%<*dvipdfmx|xdvipdfmx> - \__kernel_backend_literal:x { dvipdfmx:config~C~ 0x0010 } +%<*dvipdfmx|xdvipdfmx> + \__kernel_backend_literal:n { dvipdfmx:config~C~ 0x0010 } %</dvipdfmx|xdvipdfmx> % \end{macrocode} % \begin{variable}{\g_@@_tmpa_prop, \l_@@_tmpa_tl, \l_@@_backend_tmpa_box } @@ -407,10 +445,10 @@ { %we need to know the page the resource should be added too. \int_gincr:N\g_@@_backend_resourceid_int - \@@_backend_ref_label:en { l3pdf\int_use:N\g_@@_backend_resourceid_int }{abspage} + \@@_backend_record_abspage:e { l3pdf\int_use:N\g_@@_backend_resourceid_int } \tl_set:Nx \l_@@_tmpa_tl { - \@@_backend_ref_value:en {l3pdf\int_use:N\g_@@_backend_resourceid_int}{abspage} + \@@_backend_ref_abspage:e {l3pdf\int_use:N\g_@@_backend_resourceid_int} } \pdfdict_if_exist:nF { g_@@_Core/backend_Page\l_@@_tmpa_tl} { @@ -433,7 +471,7 @@ \prop_gput:Nnn \g_@@_tmpa_prop { ##1 }{ ##2 } } } - \exp_args:Nx \@@_backend_Page_primitive:n + \@@_backend_Page_primitive:e { \prop_map_function:NN \g_@@_tmpa_prop \pdfdict_item:ne } @@ -544,7 +582,7 @@ %issues the values stored in the global prop with dvi \cs_new_protected:Npn \@@_backend_ThisPage_gpush:n #1 { - \exp_args:Nx \@@_backend_Page_primitive:n + \@@_backend_Page_primitive:e { \pdfdict_use:n { g_@@_Core/Page} } } %</dvipdfmx|xdvipdfmx> @@ -583,8 +621,8 @@ %issues the values stored in the global prop with dvi \cs_new_protected:Npn \@@_backend_ThisPage_gpush:n #1 { - \exp_args:Nx \@@_backend_Page_primitive:n - { \pdfdict_use:n { g_@@_Core/Page} } + \@@_backend_Page_primitive:e + { \pdfdict_use:n { g_@@_Core/Page} } } %</dvips> %<*dvisvgm> @@ -609,6 +647,9 @@ \cs_new_protected:Npn \@@_backend_ThisPage_gpush:n #1 {} %</dvisvgm> +%<*drivers> +\cs_generate_variant:Nn \@@_backend_Page_primitive:n { e } +%</drivers> % \end{macrocode} % \end{macro} % @@ -730,12 +771,11 @@ } \cs_new_protected:Npn \@@_backend_PageResources_gput:nnn #1 #2 #3 { - % this is not used for output, but there is a test if the resource is empty - \exp_args:Nnx - \prop_gput:cnn { \__kernel_pdfdict_name:n { g_@@_Core/Page/Resources/#1} } + % this is not used for output, but there is a test if the resource is empty + \prop_gput:cne { \__kernel_pdfdict_name:n { g_@@_Core/Page/Resources/#1} } { \str_convert_pdfname:n {#2} }{ #3 } %objects are not filled with \pdf_object_write as this is not additive! - \@@_backend:x + \@@_backend:e { put~\@@_backend_object_ref:n {@@/Page/Resources/#1}<</#2~#3>> } @@ -816,11 +856,11 @@ \cs_set_protected:Npn \@@_backend_bdcobject:nn #1 #2 % #1 eg. Span, #2: object name { - \@@_backend_pdfmark:x{/#1~\@@_backend_object_ref:n{#2}~/BDC} + \@@_backend_pdfmark:e{/#1~\@@_backend_object_ref:n{#2}~/BDC} } \cs_set_protected:Npn \@@_backend_bdcobject:n #1 % #1 eg. Span, { - \@@_backend_pdfmark:x{/#1~\@@_backend_object_last:~/BDC} + \@@_backend_pdfmark:e{/#1~\@@_backend_object_last:~/BDC} } \cs_set_protected:Npn \@@_backend_emc: { @@ -865,11 +905,11 @@ \cs_set_protected:Npn \@@_backend_bdcobject:nn #1 #2 % #1 eg. Span, #2: object name { \int_gincr:N \g_@@_backend_name_int - \__kernel_backend_literal:x + \__kernel_backend_literal:e { pdf:code~/#1/l3pdf\int_use:N\g_@@_backend_name_int\c_space_tl BDC } - \__kernel_backend_literal:x + \__kernel_backend_literal:e { pdf:put~@resources~ << @@ -884,11 +924,11 @@ \cs_set_protected:Npn \@@_backend_bdcobject:n #1 % #1 eg. Span { \int_gincr:N \g_@@_backend_name_int - \__kernel_backend_literal:x + \__kernel_backend_literal:e { pdf:code~/\exp_not:n{#1}/l3pdf\int_use:N\g_@@_backend_name_int\c_space_tl BDC } - \__kernel_backend_literal:x + \__kernel_backend_literal:e { pdf:put~@resources~ << @@ -945,7 +985,7 @@ { \prop_if_empty:cF { \__kernel_pdfdict_name:n { g_@@_Core/Page/Resources/##1} } { - \__kernel_backend_literal:x + \__kernel_backend_literal:e { pdf:put~@resources~ <</##1~\@@_backend_object_ref:n {@@/Page/Resources/##1}>> @@ -959,17 +999,17 @@ \cs_set_protected:Npn \@@_backend_bdcobject:nn #1 #2 % #1 eg. Span, #2: object name { \int_gincr:N \g_@@_backend_name_int - \exp_args:Nx\__kernel_backend_literal_page:n + \__kernel_backend_literal_page:e { /#1 ~ /l3pdf\int_use:N\g_@@_backend_name_int\c_space_tl BDC } \bool_if:NTF \l_@@_backend_xform_bool { - \exp_args:Nnx\pdfdict_gput:nnn + \pdfdict_gput:nee { g_@@_Core/Xform/Resources/Properties } { l3pdf\int_use:N\g_@@_backend_name_int } { \@@_backend_object_ref:n { #2 } } } { - \exp_args:Nx \tex_latelua:D + \exp_args:Ne \tex_latelua:D { ltx.pdf.Page_Resources_Properties_gput ( @@ -983,17 +1023,17 @@ \cs_set_protected:Npn \@@_backend_bdcobject:n #1% #1 eg. Span { \int_gincr:N \g_@@_backend_name_int - \exp_args:Nx\__kernel_backend_literal_page:n + \__kernel_backend_literal_page:e { /\exp_not:n{#1} ~ /l3pdf\int_use:N\g_@@_backend_name_int\c_space_tl BDC } \bool_if:NTF \l_@@_backend_xform_bool { - \exp_args:Nnx\pdfdict_gput:nnn %no handler needed + \pdfdict_gput:nee %no handler needed { g_@@_Core/Xform/Resources/Properties } { l3pdf\int_use:N\g_@@_backend_name_int } { \@@_backend_object_last: } } { - \exp_args:Nx \tex_latelua:D + \exp_args:Ne \tex_latelua:D { ltx.pdf.Page_Resources_Properties_gput ( @@ -1048,28 +1088,28 @@ \cs_set_protected:Npn \@@_backend_bdcobject:nn #1 #2 % #1 eg. Span, #2: object name { \int_gincr:N \g_@@_backend_name_int - \exp_args:Nx\__kernel_backend_literal_page:n + \__kernel_backend_literal_page:e { /#1 ~ /l3pdf\int_use:N\g_@@_backend_name_int\c_space_tl BDC } % code to set the property .... \int_gincr:N\g_@@_backend_resourceid_int \bool_if:NTF \l_@@_backend_xform_bool { - \exp_args:Nnxx\pdfdict_gput:nnn %no handler needed + \pdfdict_gput:nee %no handler needed { g_@@_Core/Xform/Resources/Properties } { l3pdf\int_use:N\g_@@_backend_resourceid_int } { \@@_backend_object_ref:n { #2 } } } { - \@@_backend_ref_label:en{l3pdf\int_use:N\g_@@_backend_resourceid_int}{abspage} + \@@_backend_record_abspage:e {l3pdf\int_use:N\g_@@_backend_resourceid_int} \tl_set:Nx \l_@@_tmpa_tl { - \@@_backend_ref_value:en{l3pdf\int_use:N\g_@@_backend_resourceid_int}{abspage} + \@@_backend_ref_abspage:e{l3pdf\int_use:N\g_@@_backend_resourceid_int} } \pdfdict_if_exist:nF { g_@@_Core/backend_Page\l_@@_tmpa_tl/Resources/Properties } { \pdfdict_new:n { g_@@_Core/backend_Page\l_@@_tmpa_tl/Resources/Properties } } - \exp_args:Nnxx\pdfdict_gput:nnn + \pdfdict_gput:nee { g_@@_Core/backend_Page\l_@@_tmpa_tl/Resources/Properties } { l3pdf\int_use:N\g_@@_backend_resourceid_int } { \@@_backend_object_ref:n{#2} } @@ -1078,28 +1118,28 @@ \cs_set_protected:Npn \@@_backend_bdcobject:n #1% #1 eg. Span { \int_gincr:N \g_@@_backend_name_int - \exp_args:Nx\__kernel_backend_literal_page:n + \__kernel_backend_literal_page:e { /\exp_not:n{#1} ~ /l3pdf\int_use:N\g_@@_backend_name_int\c_space_tl BDC } % code to set the property .... \int_gincr:N\g_@@_backend_resourceid_int \bool_if:NTF \l_@@_backend_xform_bool { - \exp_args:Nnxx\pdfdict_gput:nnn + \pdfdict_gput:nee { g_@@_Core/Xform/Resources/Properties } { l3pdf\int_use:N\g_@@_backend_resourceid_int } { \@@_backend_object_last: } } { - \@@_backend_ref_label:en{l3pdf\int_use:N\g_@@_backend_resourceid_int}{abspage} + \@@_backend_record_abspage:e{l3pdf\int_use:N\g_@@_backend_resourceid_int} \tl_set:Nx \l_@@_tmpa_tl { - \@@_backend_ref_value:en{l3pdf\int_use:N\g_@@_backend_resourceid_int}{abspage} + \@@_backend_ref_abspage:e{l3pdf\int_use:N\g_@@_backend_resourceid_int} } \pdfdict_if_exist:nF { g_@@_Core/backend_Page\l_@@_tmpa_tl/Resources/Properties } { \pdfdict_new:n { g_@@_Core/backend_Page\l_@@_tmpa_tl/Resources/Properties } } - \exp_args:Nnxx\pdfdict_gput:nnn + \pdfdict_gput:nee { g_@@_Core/backend_Page\l_@@_tmpa_tl/Resources/Properties } { l3pdf\int_use:N\g_@@_backend_resourceid_int } { \@@_backend_object_last: } @@ -1152,7 +1192,7 @@ \cs_new_protected:Npn \@@_backend_PageResources_gpush:n #1 { - \exp_args:NNx \tex_global:D \tex_pdfpageresources:D + \exp_args:NNe \tex_global:D \tex_pdfpageresources:D { \prop_if_exist:cT { \__kernel_pdfdict_name:n { g_@@_Core/backend_Page#1/Resources/Properties } } @@ -1205,7 +1245,7 @@ \cs_new_protected:Npn \@@_backend_Names_gpush:nn #1 #2 %#1 name of name tree, #2 array content { \pdf_object_unnamed_write:nn {dict} {/Names [#2] } - \@@_backend:x {put~@names~<</#1~\pdf_object_ref_last: >>} + \@@_backend:e {put~@names~<</#1~\pdf_object_ref_last: >>} } %</dvipdfmx|xdvipdfmx> @@ -1231,7 +1271,7 @@ %<*dvips> \cs_new_protected:Npn \@@_backend_NamesEmbeddedFiles_add:nn #1 #2 { - \@@_backend_pdfmark:x + \@@_backend_pdfmark:e { /Name~#1~ /FS~#2~ @@ -1506,7 +1546,7 @@ \hook_gput_next_code:nn {shipout/background} { \mode_leave_vertical: %needed, the xform disappears without it. - \@@_backend:x + \@@_backend:e { bxobj ~ \@@_backend_xform_ref:n { #1 } \c_space_tl width ~ \pdfxform_wd:n { #1 } @@ -1514,38 +1554,37 @@ \c_space_tl depth ~ \pdfxform_dp:n { #1 } } \box_use_drop:c { g_@@_backend_xform_#1_box } - \@@_backend:x {put ~ @resources ~<<#3>> } - \@@_backend:x + \@@_backend:e {put ~ @resources ~<<#3>> } + \@@_backend:e { put~ @resources ~ << /ExtGState~ \pdf_object_ref:n { @@/Page/Resources/ExtGState } >> } - \@@_backend:x + \@@_backend:e { put~ @resources ~ << /Pattern~ \pdf_object_ref:n { @@/Page/Resources/Pattern } >> } - \@@_backend:x + \@@_backend:e { put~ @resources ~ << /Shading~ \pdf_object_ref:n { @@/Page/Resources/Shading } >> } - \@@_backend:x + \@@_backend:e { put~ @resources ~ << /ColorSpace~ \pdf_object_ref:n { @@/Page/Resources/ColorSpace } >> - } - \exp_args:Nx - \@@_backend:x {exobj ~<<#2>>} + } + \@@_backend:e {exobj ~<<#2>>} } } @@ -1560,7 +1599,7 @@ { \hbox_set:Nn \l_@@_backend_tmpa_box { - \@@_backend:x + \@@_backend:e { uxobj~ \@@_backend_xform_ref:n { #1 } } @@ -1634,7 +1673,7 @@ %\box_scale:Nnn \l_@@_backend_tmpa_box {1} {-1} \hbox_set:Nn\l_@@_backend_tmpb_box { - \__kernel_backend_postscript:x + \__kernel_backend_postscript:e { gsave~currentpoint~ initclip~ % restore default clipping path (page device/whole page) @@ -1662,7 +1701,7 @@ } \str_if_eq:eeF{#1}{} { - \__kernel_backend_postscript:x + \__kernel_backend_postscript:e { product~(Ghostscript)~search~ { @@ -1689,7 +1728,7 @@ { \hbox_set:Nn \l_@@_backend_tmpa_box { - \__kernel_backend_postscript:x + \__kernel_backend_postscript:e { gsave~currentpoint~translate~1~-1~scale~ mark~{ pdf.obj \int_use:c{c__pdf_backend_xform_ \tl_to_str:n {#1} _int }}~ @@ -1805,7 +1844,7 @@ %<*xdvipdfmx|dvipdfmx> \cs_set_protected:Npn \@@_backend_structure_destination:nn #1#2 { - \@@_backend:x + \@@_backend:e { dest ~ ( \exp_not:n {#1} ) [ @@ -1831,7 +1870,7 @@ % \begin{macrocode} \exp_args:Ne \pdf_object_if_exist:nT { \l_pdf_current_structure_destination_tl } { - \@@_backend:x + \@@_backend:e { obj ~ @pdf.SDest.\exp_not:n{#1} [ @@ -1889,7 +1928,7 @@ % \begin{macrocode} \exp_args:Ne \pdf_object_if_exist:nT { \l_pdf_current_structure_destination_tl } { - \@@_backend:x + \@@_backend:e { obj ~ @pdf.SDest.\exp_not:n{#2} [ diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfannot.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfannot.dtx index b3076aaf26c..a6384c182c9 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfannot.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfannot.dtx @@ -48,7 +48,7 @@ % }^^A % } % -% \date{Version 0.95z, released 2023-08-29} +% \date{Version 0.96a, released 2023-10-09} % % \maketitle % \begin{documentation} @@ -432,7 +432,7 @@ % \begin{macrocode} %<@@=pdfannot> %<*header> -\ProvidesExplPackage{l3pdfannot}{2023-08-29}{0.95z} +\ProvidesExplPackage{l3pdfannot}{2023-10-09}{0.96a} {PDF-annotations} \RequirePackage{l3pdfdict} %</header> diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfdict.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfdict.dtx index ed7406fe1c9..d95382ad91f 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfdict.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfdict.dtx @@ -49,7 +49,7 @@ % }^^A % } % -% \date{Version 0.95z, released 2023-08-29} +% \date{Version 0.96a, released 2023-10-09} % % \maketitle % \begin{documentation} @@ -101,7 +101,7 @@ % \end{function} % % \begin{function}[added = 2020-04-06] -% {\pdfdict_put:nnn, \pdfdict_gput:nnn} +% {\pdfdict_put:nnn, \pdfdict_gput:nnn,\pdfdict_gput:nee} % \begin{syntax} % \cs{pdfdict_put:nnn} \Arg{local dictionary} \Arg{name} \Arg{value} \\ % \cs{pdfdict_gput:nnn} \Arg{global dictionary} \Arg{name} \Arg{value} @@ -208,7 +208,7 @@ % \begin{macrocode} %<@@=pdfdict> %<*header> -\ProvidesExplPackage{l3pdfdict}{2023-08-29}{0.95z} +\ProvidesExplPackage{l3pdfdict}{2023-10-09}{0.96a} {Tools for PDF dictionaries (LaTeX PDF management testphase bundle)} %</header> % \end{macrocode} @@ -429,7 +429,7 @@ } \cs_set_eq:NN \pdfdict_put:nnn \@@_put:nnn -\cs_generate_variant:Nn \pdfdict_put:nnn {nnx,nno} +\cs_generate_variant:Nn \pdfdict_put:nnn {nnx,nno,nee} \cs_new_protected:Npn \@@_gput:nnn #1 #2 #3 %#1 global dict, #2 name, #3 value { @@ -450,7 +450,7 @@ } \cs_set_eq:NN \pdfdict_gput:nnn \@@_gput:nnn -\cs_generate_variant:Nn \pdfdict_gput:nnn {nnx,nno} +\cs_generate_variant:Nn \pdfdict_gput:nnn {nnx,nno,nee} % \end{macrocode} % \end{macro} % diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-action.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-action.dtx index 0479ecdae5b..09489fc8a1c 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-action.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-action.dtx @@ -49,7 +49,7 @@ % }^^A % } % -% \date{Version 0.95z, released 2023-08-29} +% \date{Version 0.96a, released 2023-10-09} % % \maketitle % \begin{documentation} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-checkbox.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-checkbox.dtx index 9421dac34ae..1a053e71808 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-checkbox.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-checkbox.dtx @@ -64,7 +64,7 @@ % }^^A % } % -% \date{Version 0.95z, released 2023-08-29} +% \date{Version 0.96a, released 2023-10-09} % % \maketitle % \begin{documentation} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-choice.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-choice.dtx index 69858349ff8..5b9993158fe 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-choice.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-choice.dtx @@ -49,7 +49,7 @@ % }^^A % } % -% \date{Version 0.95z, released 2023-08-29} +% \date{Version 0.96a, released 2023-10-09} % % \maketitle % \begin{documentation} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-pushbutton.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-pushbutton.dtx index ad43c11bb53..7471de15f82 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-pushbutton.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-pushbutton.dtx @@ -55,7 +55,7 @@ % }^^A % } % -% \date{Version 0.95z, released 2023-08-29} +% \date{Version 0.96a, released 2023-10-09} % % \maketitle % \begin{documentation} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-radiobutton.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-radiobutton.dtx index b9737a39c16..8098d4684c6 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-radiobutton.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-radiobutton.dtx @@ -83,7 +83,7 @@ % }^^A % } % -% \date{Version 0.95z, released 2023-08-29} +% \date{Version 0.96a, released 2023-10-09} % % \maketitle % \begin{documentation} @@ -669,15 +669,32 @@ % %\subsection{Creating the field} % We need to retrieve the index of the default through a -% label, so we need an ref attribute: +% label, so we need an ref attribute or with newer LaTeX +% a property: % % \begin{macrocode} -\ref_attribute_gset:nnnn {pdfradioindex}{0}{now} - { - \int_use:N\l_@@_radio_value_num_int - } -\cs_generate_variant:Nn \ref_label:nn {V} -\cs_generate_variant:Nn \ref_value:nn {V} +\cs_if_exist:NTF \property_new:nnnn + { + \property_new:nnnn {pdfradioindex}{now} + {0} + { + \int_use:N\l_@@_radio_value_num_int + } + \cs_new_eq:NN \@@_property_record:nn \property_record:nn + \cs_new_eq:NN \@@_property_ref:nn \property_ref:nn + } + { + \ref_attribute_gset:nnnn {pdfradioindex}{0}{now} + { + \int_use:N\l_@@_radio_value_num_int + } + \cs_new_eq:NN \@@_property_record:nn \ref_label:nn + \cs_new_eq:NN \@@_property_ref:nn \ref_value:nn + } + + \cs_generate_variant:Nn \@@_property_record:nn {V} + \cs_generate_variant:Nn \@@_property_ref:nn {V} + % \end{macrocode} % A field should be created if the name doesn't exist yet % \begin{macro}{\@@_radio_field:n} @@ -702,8 +719,8 @@ % \end{macrocode} % The default value is retrieved through a label: % \begin{macrocode} - \pdfdict_put:nnx { l_@@/field }{V} { /\ref_value:nn{#1}{pdfradioindex} } - \pdfdict_put:nnx { l_@@/field }{DV} { /\ref_value:nn{#1}{pdfradioindex} } + \pdfdict_put:nnx { l_@@/field }{V} { /\@@_property_ref:nn{#1}{pdfradioindex} } + \pdfdict_put:nnx { l_@@/field }{DV} { /\@@_property_ref:nn{#1}{pdfradioindex} } % \end{macrocode} % now we create the field and set it as parent for the following annotation. % \begin{macrocode} @@ -763,7 +780,7 @@ \tl_if_empty:NT\l_@@_fieldID_tl { \pdfdict_get:nnN {l_@@/field}{T}\l_@@_fieldID_tl - \tl_put_left:Nn \l_@@_fieldID_tl {@@/radio/} + \tl_put_left:Nn \l_@@_fieldID_tl {@pdffield/radio/} } % \end{macrocode} % If unison has been set for the field pass it on: @@ -801,8 +818,7 @@ } \bool_if:NT\l_@@_radio_default_bool { - \exp_args:Ne - \ref_label:nn{\l_@@_fieldID_tl}{pdfradioindex} + \@@_property_record:Vn\l_@@_fieldID_tl{pdfradioindex} } % \end{macrocode} @@ -810,9 +826,9 @@ % \begin{macrocode} \int_compare:nNnTF { \l_@@_radio_value_num_int } = { - \ref_value:Vn\l_@@_fieldID_tl{pdfradioindex} + \@@_property_ref:Vn\l_@@_fieldID_tl{pdfradioindex} } - { \pdfannot_dict_put:nnx {widget}{AS}{/\ref_value:Vn\l_@@_fieldID_tl{pdfradioindex}} } + { \pdfannot_dict_put:nnx {widget}{AS}{/\@@_property_ref:Vn\l_@@_fieldID_tl{pdfradioindex}} } { \pdfannot_dict_put:nnx {widget}{AS}{/Off} } % \end{macrocode} % Now we set the appearances, if no key has been use we take the default. diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-textfield.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-textfield.dtx index e8fe7cb11c2..4ab1db01f85 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-textfield.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-textfield.dtx @@ -49,7 +49,7 @@ % }^^A % } % -% \date{Version 0.95z, released 2023-08-29} +% \date{Version 0.96a, released 2023-10-09} % % \maketitle % \begin{documentation} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield.dtx index fa5e3dade4c..1e1eb23f1e2 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield.dtx @@ -69,7 +69,7 @@ % }^^A % } % -% \date{Version 0.95z, released 2023-08-29} +% \date{Version 0.96a, released 2023-10-09} % % \maketitle % \begin{documentation} @@ -972,7 +972,7 @@ %<*package> %<@@=pdffield> \NeedsTeXFormat{LaTeX2e} -\ProvidesExplPackage{l3pdffield-testphase}{2023-08-29}{0.95z}% +\ProvidesExplPackage{l3pdffield-testphase}{2023-10-09}{0.96a}% {form fields} % \end{macrocode} % \subsection{hyperref specific command} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffile.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffile.dtx index b55f0a3710a..a98883d5c1e 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffile.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffile.dtx @@ -49,7 +49,7 @@ % }^^A % } % -% \date{Version 0.95z, released 2023-08-29} +% \date{Version 0.96a, released 2023-10-09} % % \maketitle % \begin{documentation} @@ -398,7 +398,7 @@ % % \begin{macrocode} %<*header> -\ProvidesExplPackage{l3pdffile}{2023-08-29}{0.95z} +\ProvidesExplPackage{l3pdffile}{2023-10-09}{0.96a} {embedding and referencing files in PDF---LaTeX PDF management testphase bundle} \RequirePackage{l3pdftools} %temporarly!! %</header> diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfmanagement.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfmanagement.dtx index 377178a5166..6081864cb64 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfmanagement.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfmanagement.dtx @@ -57,7 +57,7 @@ % }^^A % } % -% \date{Version 0.95z, released 2023-08-29} +% \date{Version 0.96a, released 2023-10-09} % % \maketitle % \begin{documentation} @@ -632,7 +632,7 @@ %<@@=pdfmanagement> %<*header> % -\ProvidesExplPackage{l3pdfmanagement}{2023-08-29}{0.95z} +\ProvidesExplPackage{l3pdfmanagement}{2023-10-09}{0.96a} {Management of core PDF dictionaries (LaTeX PDF management testphase bundle)} %</header> % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfmeta.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfmeta.dtx index cc9430e5e2f..1f30c5badf4 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfmeta.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfmeta.dtx @@ -49,7 +49,7 @@ % }^^A % } % -% \date{Version 0.95z, released 2023-08-29} +% \date{Version 0.96a, released 2023-10-09} % % \maketitle % \begin{documentation} @@ -566,7 +566,7 @@ % \begin{macrocode} %<@@=pdfmeta> %<*header> -\ProvidesExplPackage{l3pdfmeta}{2023-08-29}{0.95z} +\ProvidesExplPackage{l3pdfmeta}{2023-10-09}{0.96a} {PDF-Standards---LaTeX PDF management testphase bundle} %</header> % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdftools.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdftools.dtx index c403d50ffca..6906727952a 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdftools.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdftools.dtx @@ -49,7 +49,7 @@ % }^^A % } % -% \date{Version 0.95z, released 2023-08-29} +% \date{Version 0.96a, released 2023-10-09} % % \maketitle % \begin{documentation} @@ -231,7 +231,7 @@ % % \begin{macrocode} %<*header> -\ProvidesExplPackage{l3pdftools}{2023-08-29}{0.95z} +\ProvidesExplPackage{l3pdftools}{2023-10-09}{0.96a} {candidate commands for l3pdf---LaTeX PDF management testphase bundle} %</header> % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfxform.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfxform.dtx index bb3ae298cb1..4df838e625d 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfxform.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfxform.dtx @@ -48,7 +48,7 @@ % }^^A % } % -% \date{Version 0.95z, released 2023-08-29} +% \date{Version 0.96a, released 2023-10-09} % % \maketitle % \begin{documentation} @@ -132,7 +132,7 @@ % \begin{macrocode} %<@@=pdf> %<*header> -\ProvidesExplPackage{l3pdfxform}{2023-08-29}{0.95z} +\ProvidesExplPackage{l3pdfxform}{2023-10-09}{0.96a} {command to create xforms (beta)---LaTeX PDF management testphase bundle} %</header> % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/ltdocinit.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/ltdocinit.dtx index 37dfc04cc27..96da24d6482 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/ltdocinit.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/ltdocinit.dtx @@ -47,7 +47,7 @@ % }^^A % } % -% \date{Version 0.95z, released 2023-08-29} +% \date{Version 0.96a, released 2023-10-09} % % \maketitle % \begin{documentation} @@ -220,7 +220,7 @@ % \begin{macrocode} %<@@=pdfmanagement> %<*header> -\ProvidesExplPackage{ltdocinit}{2023-08-29}{0.95z} +\ProvidesExplPackage{ltdocinit}{2023-10-09}{0.96a} {Initialize document metadata} %</header> % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/pdfmanagement-firstaid.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/pdfmanagement-firstaid.dtx index a64f84cc729..29fcf8bafa5 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/pdfmanagement-firstaid.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/pdfmanagement-firstaid.dtx @@ -47,7 +47,7 @@ % }^^A % } % -% \date{Version 0.95z, released 2023-08-29} +% \date{Version 0.96a, released 2023-10-09} % % \maketitle % \begin{documentation} @@ -63,7 +63,7 @@ % |debug={firstaidoff={name1,name2,...},...}|. % \begin{macrocode} %<*package> -\ProvidesExplPackage{pdfmanagement-firstaid}{2023-08-29}{0.95z} +\ProvidesExplPackage{pdfmanagement-firstaid}{2023-10-09}{0.96a} {LaTeX PDF management testphase bundle / firstaid-patches} %<@@=pdfmanagement> @@ -155,6 +155,11 @@ package/xcolor/after } {\RequirePackage{xcolor-patches-tmp-ltx}} +% \end{macrocode} +% The patch must before color definitions are loaded, which will happen in +% hooks in a newer xcolor: +% \begin{macrocode} + \DeclareHookRule{package/xcolor/after}{pdfmanagement-firstaid}{before}{xcolor} } % \end{macrocode} % @@ -399,5 +404,6 @@ } %</package> % \end{macrocode}% +% % \end{documentation} % \PrintIndex diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/pdfmanagement-testphase.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/pdfmanagement-testphase.dtx index 6208eaa379a..0fa1b2130b0 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/pdfmanagement-testphase.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/pdfmanagement-testphase.dtx @@ -47,7 +47,7 @@ % }^^A % } % -% \date{Version 0.95z, released 2023-08-29} +% \date{Version 0.96a, released 2023-10-09} % % \maketitle % \begin{documentation} @@ -395,7 +395,7 @@ % \begin{macrocode} %<@@=pdf> %<*package> -\ProvidesExplPackage{pdfmanagement-testphase}{2023-08-29}{0.95z} +\ProvidesExplPackage{pdfmanagement-testphase}{2023-10-09}{0.96a} {LaTeX PDF management testphase bundle} \providecommand\IfFormatAtLeastTF{\@ifl@t@r\fmtversion} \IfFormatAtLeastTF{2020-10-01}{}{ @@ -423,7 +423,7 @@ % to allow to set it in the document. % \begin{macrocode} %<*header> -\ProvidesExplFile{pdfmanagement-testphase.ltx}{2023-08-29}{0.95z} +\ProvidesExplFile{pdfmanagement-testphase.ltx}{2023-10-09}{0.96a} {PDF~management~code~(testphase)} % \end{macrocode} % We define a boolean for the new delayed shipout. This is temporary. At some |