summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/fail-fast
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2023-07-03 03:03:09 +0000
committerNorbert Preining <norbert@preining.info>2023-07-03 03:03:09 +0000
commit4b749d92c46780575d3bd3dd7544030300a51301 (patch)
tree2a54f14daad34faa52cd6fbbd4cbdd61ba0be992 /macros/latex/contrib/fail-fast
parentbf144b430967ee6534dac2d3aefb8d562f27bf46 (diff)
CTAN sync 202307030303
Diffstat (limited to 'macros/latex/contrib/fail-fast')
-rw-r--r--macros/latex/contrib/fail-fast/LICENSE.txt21
-rw-r--r--macros/latex/contrib/fail-fast/README.md27
-rw-r--r--macros/latex/contrib/fail-fast/fail-fast.dtx117
-rw-r--r--macros/latex/contrib/fail-fast/fail-fast.ins55
-rw-r--r--macros/latex/contrib/fail-fast/fail-fast.pdfbin0 -> 309247 bytes
5 files changed, 220 insertions, 0 deletions
diff --git a/macros/latex/contrib/fail-fast/LICENSE.txt b/macros/latex/contrib/fail-fast/LICENSE.txt
new file mode 100644
index 0000000000..412bdfe98e
--- /dev/null
+++ b/macros/latex/contrib/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/macros/latex/contrib/fail-fast/README.md b/macros/latex/contrib/fail-fast/README.md
new file mode 100644
index 0000000000..b16917e2b1
--- /dev/null
+++ b/macros/latex/contrib/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/macros/latex/contrib/fail-fast/fail-fast.dtx b/macros/latex/contrib/fail-fast/fail-fast.dtx
new file mode 100644
index 0000000000..2a1c4a39dc
--- /dev/null
+++ b/macros/latex/contrib/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/macros/latex/contrib/fail-fast/fail-fast.ins b/macros/latex/contrib/fail-fast/fail-fast.ins
new file mode 100644
index 0000000000..fb1b78324c
--- /dev/null
+++ b/macros/latex/contrib/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/macros/latex/contrib/fail-fast/fail-fast.pdf b/macros/latex/contrib/fail-fast/fail-fast.pdf
new file mode 100644
index 0000000000..81db765dee
--- /dev/null
+++ b/macros/latex/contrib/fail-fast/fail-fast.pdf
Binary files differ