diff options
author | Karl Berry <karl@freefriends.org> | 2023-07-02 20:17:15 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2023-07-02 20:17:15 +0000 |
commit | f151722c19f74fb7633845767139f7d487bc8328 (patch) | |
tree | ca61bc3da039b0ce09ec9308be89d3f575ac5fd5 /Master | |
parent | 405aa21ab0d58c0d00e4fa14a456820c49643520 (diff) |
fail-fast (2jul23)
git-svn-id: svn://tug.org/texlive/trunk@67530 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rw-r--r-- | Master/texmf-dist/doc/latex/fail-fast/LICENSE.txt | 21 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/fail-fast/README.md | 27 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/fail-fast/fail-fast.pdf | bin | 0 -> 309247 bytes | |||
-rw-r--r-- | Master/texmf-dist/source/latex/fail-fast/fail-fast.dtx | 117 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/fail-fast/fail-fast.ins | 55 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/fail-fast/fail-fast.sty | 49 | ||||
-rwxr-xr-x | Master/tlpkg/bin/tlpkg-ctan-check | 3 | ||||
-rw-r--r-- | Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc | 1 | ||||
-rw-r--r-- | Master/tlpkg/tlpsrc/fail-fast.tlpsrc | 0 |
9 files changed, 272 insertions, 1 deletions
diff --git a/Master/texmf-dist/doc/latex/fail-fast/LICENSE.txt b/Master/texmf-dist/doc/latex/fail-fast/LICENSE.txt new file mode 100644 index 00000000000..412bdfe98eb --- /dev/null +++ b/Master/texmf-dist/doc/latex/fail-fast/LICENSE.txt @@ -0,0 +1,21 @@ +(The MIT License) + +Copyright (c) 2023 Yegor Bugayenko + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the 'Software'), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/Master/texmf-dist/doc/latex/fail-fast/README.md b/Master/texmf-dist/doc/latex/fail-fast/README.md new file mode 100644 index 00000000000..b16917e2b11 --- /dev/null +++ b/Master/texmf-dist/doc/latex/fail-fast/README.md @@ -0,0 +1,27 @@ +[![make](https://github.com/yegor256/fail-fast/actions/workflows/l3build.yml/badge.svg)](https://github.com/yegor256/fail-fast/actions/workflows/l3build.yml) +[![CTAN](https://img.shields.io/ctan/v/fail-fast)](https://ctan.org/pkg/fail-fast) +[![License](https://img.shields.io/badge/license-MIT-green.svg)](https://github.com/yegor256/fail-fast/blob/master/LICENSE.txt) + +This LaTeX package helps you make your build more fragile, which is good if you care about quality. +Every warning it will turn into an error and LaTeX engine will fail with a non-zero error message. + +First, [install it](https://en.wikibooks.org/wiki/LaTeX/Installing_Extra_Packages) +from [CTAN](https://ctan.org/pkg/fail-fast) +and then use in the preamble: + +```tex +\documentclass{article} +\usepackage{fail-fast} +\begin{document} +This reference is broken: \ref{foo} +\end{fail-fast} +\end{document} +``` + +Otherwise, you can download [`fail-fast.sty`](https://raw.githubusercontent.com/yegor256/fail-fast/gh-pages/fail-fast/fail-fast.sty) and add to your project. + +If you want to contribute yourself, make a fork, then create a branch, +then run `l3build ctan` in the root directory. +It should compile everything without errors. If not, submit an issue and wait. +Otherwise, make your changes and then run `l3build ctan` again. If the build is +still clean, submit a pull request. diff --git a/Master/texmf-dist/doc/latex/fail-fast/fail-fast.pdf b/Master/texmf-dist/doc/latex/fail-fast/fail-fast.pdf Binary files differnew file mode 100644 index 00000000000..81db765dee0 --- /dev/null +++ b/Master/texmf-dist/doc/latex/fail-fast/fail-fast.pdf diff --git a/Master/texmf-dist/source/latex/fail-fast/fail-fast.dtx b/Master/texmf-dist/source/latex/fail-fast/fail-fast.dtx new file mode 100644 index 00000000000..2a1c4a39dcb --- /dev/null +++ b/Master/texmf-dist/source/latex/fail-fast/fail-fast.dtx @@ -0,0 +1,117 @@ +% \iffalse meta-comment +% (The MIT License) +% +% Copyright (c) 2023 Yegor Bugayenko +% +% Permission is hereby granted, free of charge, to any person obtaining a copy +% of this software and associated documentation files (the 'Software'), to deal +% in the Software without restriction, including without limitation the rights +% to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +% copies of the Software, and to permit persons to whom the Software is +% furnished to do so, subject to the following conditions: +% +% The above copyright notice and this permission notice shall be included in all +% copies or substantial portions of the Software. +% +% THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +% IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +% FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +% AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +% LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +% OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +% SOFTWARE. +% \fi + +% \CheckSum{0} +% +% \CharacterTable +% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +% Digits \0\1\2\3\4\5\6\7\8\9 +% Exclamation \! Double quote \" Hash (number) \# +% Dollar \$ Percent \% Ampersand \& +% Acute accent \' Left paren \( Right paren \) +% Asterisk \* Plus \+ Comma \, +% Minus \- Point \. Solidus \/ +% Colon \: Semicolon \; Less than \< +% Equals \= Greater than \> Question mark \? +% Commercial at \@ Left bracket \[ Backslash \\ +% Right bracket \] Circumflex \^ Underscore \_ +% Grave accent \` Left brace \{ Vertical bar \| +% Right brace \} Tilde \~} + +% \GetFileInfo{fail-fast.dtx} +% \DoNotIndex{\endgroup,\begingroup,\let,\else,\fi,\newcommand,\newenvironment} + +% \iffalse +%<*driver> +\ProvidesFile{fail-fast.dtx} +%</driver> +%<package>\NeedsTeXFormat{LaTeX2e} +%<package>\ProvidesPackage{fail-fast} +%<*package> +[2023-07-01 0.0.1 Turns warnings into errors] +%</package> +%<*driver> +\documentclass{ltxdoc} +\usepackage[T1]{fontenc} +\usepackage[tt=false,type1=true]{libertine} +\usepackage{microtype} +\AddToHook{env/verbatim/begin}{\microtypesetup{protrusion=false}} +\usepackage{href-ul} +\usepackage[dtx,runs=2]{docshots} +\PageIndex +\EnableCrossrefs +\CodelineIndex +\RecordChanges +\begin{document} + \DocInput{fail-fast.dtx} + \PrintChanges + \PrintIndex +\end{document} +%</driver> +% \fi + +% \title{|fail-fast|: \LaTeX{} Package \\ that turns warnings into errors\thanks{The sources are in GitHub at \href{https://github.com/yegor256/fail-fast}{yegor256/fail-fast}}} +% \author{Yegor Bugayenko \\ \texttt{yegor256@gmail.com}} +% \date{\filedate, \fileversion} +% +% \maketitle +% +% \section{Introduction} +% +% This package, when included, turns warnings into errors, thus making the build more fragile. This +% may be a good practice if you care about the quality of your documents and want to keep +% the quality high, not losing it between changes: +% \begin{docshot} +% \documentclass{article} +% \usepackage{fail-fast} +% \pagestyle{empty} +% \begin{document} +% Here goes your content. +% \end{document} +% \end{docshot} + +% The development of this package was motivated by this +% \href{https://stackoverflow.com/questions/3244908}{Stack Overflow question}. + +% \StopEventually{} + +% \section{Implementation} +% \changes{v0.1.0}{2023/07/01}{Initial version, which turns warnings into errors} + +% \begin{macrocode} +\message{fail-fast: Starting from now all warnings + are reported as errors^^J}% +\renewcommand{\GenericWarning}[2]{% + \GenericError{#1}{#2}{}{This was a warning, now an error}% +} +% \end{macrocode} + +% \Finale + +%\clearpage +% +%\PrintChanges +%\clearpage +%\PrintIndex diff --git a/Master/texmf-dist/source/latex/fail-fast/fail-fast.ins b/Master/texmf-dist/source/latex/fail-fast/fail-fast.ins new file mode 100644 index 00000000000..fb1b78324c9 --- /dev/null +++ b/Master/texmf-dist/source/latex/fail-fast/fail-fast.ins @@ -0,0 +1,55 @@ +%% (The MIT License) +%% +%% Copyright (c) 2023 Yegor Bugayenko +%% +%% Permission is hereby granted, free of charge, to any person obtaining a copy +%% of this software and associated documentation files (the 'Software'), to deal +%% in the Software without restriction, including without limitation the rights +%% to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +%% copies of the Software, and to permit persons to whom the Software is +%% furnished to do so, subject to the following conditions: +%% +%% The above copyright notice and this permission notice shall be included in all +%% copies or substantial portions of the Software. +%% +%% THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +%% IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +%% FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +%% AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +%% LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +%% OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +%% SOFTWARE. + +\input docstrip.tex +\keepsilent +\usedir{macros/latex/contrib/fail-fast} +\preamble +(The MIT License) + +Copyright (c) 2023 Yegor Bugayenko + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the 'Software'), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +\endpreamble +\generate{\file{fail-fast.sty}{\from{fail-fast.dtx}{package}}} +\obeyspaces +\Msg{To finish the installation you have to move the ".sty"} +\Msg{file into a directory searched by TeX. To produce the} +\Msg{documentation run the file ".dtx" through LaTeX. If any} +\Msg{questions, submit a new GitHub issue.} +\endbatchfile diff --git a/Master/texmf-dist/tex/latex/fail-fast/fail-fast.sty b/Master/texmf-dist/tex/latex/fail-fast/fail-fast.sty new file mode 100644 index 00000000000..b6d6c3303c2 --- /dev/null +++ b/Master/texmf-dist/tex/latex/fail-fast/fail-fast.sty @@ -0,0 +1,49 @@ +%% +%% This is file `fail-fast.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% fail-fast.dtx (with options: `package') +%% (The MIT License) +%% +%% Copyright (c) 2023 Yegor Bugayenko +%% +%% Permission is hereby granted, free of charge, to any person obtaining a copy +%% of this software and associated documentation files (the 'Software'), to deal +%% in the Software without restriction, including without limitation the rights +%% to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +%% copies of the Software, and to permit persons to whom the Software is +%% furnished to do so, subject to the following conditions: +%% +%% The above copyright notice and this permission notice shall be included in all +%% copies or substantial portions of the Software. +%% +%% THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +%% IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +%% FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +%% AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +%% LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +%% OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +%% SOFTWARE. + + + +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{fail-fast} +[2023-07-01 0.0.1 Turns warnings into errors] + + + + + +\message{fail-fast: Starting from now all warnings + are reported as errors^^J}% +\renewcommand{\GenericWarning}[2]{% + \GenericError{#1}{#2}{}{This was a warning, now an error}% +} + + +\endinput +%% +%% End of file `fail-fast.sty'. diff --git a/Master/tlpkg/bin/tlpkg-ctan-check b/Master/tlpkg/bin/tlpkg-ctan-check index be3a12d7b65..9d76c76c501 100755 --- a/Master/tlpkg/bin/tlpkg-ctan-check +++ b/Master/tlpkg/bin/tlpkg-ctan-check @@ -318,7 +318,8 @@ my @TLP_working = qw( expose-expl3-dunkerque-2019 expressg exsheets exsol extarrows exteps extpfeil extract extsizes - facsimile factura facture facture-belge-simple-sans-tva faktor familytree + facsimile factura facture facture-belge-simple-sans-tva + fail-fast faktor familytree fancybox fancyhandout fancyhdr fancyhdr-it fancylabel fancynum fancypar fancyqr fancyref fancyslides fancytabs fancytooltips fancyvrb fandol fascicules fast-diagram fbb fbithesis fbox fbs diff --git a/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc b/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc index 446a291d6d4..a0d7cbbbe5e 100644 --- a/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc +++ b/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc @@ -484,6 +484,7 @@ depend exsol depend extract depend facsimile depend factura +depend fail-fast depend familytree depend fancyhandout depend fancylabel diff --git a/Master/tlpkg/tlpsrc/fail-fast.tlpsrc b/Master/tlpkg/tlpsrc/fail-fast.tlpsrc new file mode 100644 index 00000000000..e69de29bb2d --- /dev/null +++ b/Master/tlpkg/tlpsrc/fail-fast.tlpsrc |