From 5d21f8d617189f5ef0fcbd7e53f707ceb3aa4e32 Mon Sep 17 00:00:00 2001
From: Norbert Preining <norbert@preining.info>
Date: Mon, 10 May 2021 03:01:38 +0000
Subject: CTAN sync 202105100301

---
 macros/latex/contrib/changes/changes.dtx | 23 ++++++++++++++++-------
 1 file changed, 16 insertions(+), 7 deletions(-)

(limited to 'macros/latex/contrib/changes/changes.dtx')

diff --git a/macros/latex/contrib/changes/changes.dtx b/macros/latex/contrib/changes/changes.dtx
index 5e29a4c990..cf459852f9 100644
--- a/macros/latex/contrib/changes/changes.dtx
+++ b/macros/latex/contrib/changes/changes.dtx
@@ -1,4 +1,4 @@
-% \CheckSum{1262}
+% \CheckSum{1263}
 %
 % \iffalse meta-comment
 %
@@ -65,6 +65,7 @@
 % \changes{v4.0.0}{2021/01/28}{new: convenience macros, setlocextension, option commandnameprefix, defaultcolor; removed: xifthen, remark}
 % \changes{v4.0.1}{2021/02/14}{bugfix: Command do undefined}
 % \changes{v4.0.2}{2021/04/05}{bugfix: documentation with ifthenelse references}
+% \changes{v4.0.3}{2021/05/09}{bugfix: compile error with cite command in change markup with final option}
 % \GetFileInfo{changes.dtx}
 % \RecordChanges
 %
@@ -104,9 +105,8 @@
 % Type some information to the console.
 %    \begin{macrocode}
 \NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{changes}
-[2021/04/05 v4.0.2 changes package]
-\typeout{*** changes package 2021/04/05 v4.0.2 ***}
+\ProvidesPackage{changes}[2021/05/09 v4.0.3 changes package]
+\typeout{*** changes package 2021/05/09 v4.0.3 ***}
 %    \end{macrocode}
 %
 % Package \docpackage{xkeyval} provides options with key-value-pairs.
@@ -573,12 +573,16 @@
 %
 % Corresponds to the if macros of \docpackage{etoolbox}, so it can be used in it's boolean tests.
 % Mainly the last two parameters are the results of \emph{true} and \emph{false} computation.
+%
+% I cannot add the test with \doccommand{IfStrEq} to \doccommand{IfIsEmpty} because it breaks e.g. with a \doccommand{cite} command in the final option, see issue \#102.
+% This test does not work (yet) with \doccommand{csuse} as parameter, see \doccommand{Changes@output@author} for the problem.
 %    \begin{macrocode}
 \newrobustcmd{\IfIsEmpty}[3]{%
 	\ifboolexpr{%
 		test {\ifblank{#1}} or%
-		test {\IfStrEq{#1}{}} or%
-		test {\IfStrEq{#1}{\@empty}}%
+		test {\ifstrempty{#1}} or%
+		test {\ifdefstring{#1}{}} or%
+		test {\ifdefstring{#1}{\@empty}}%
 	}%
 		{#2}%
 		{#3}%
@@ -1131,7 +1135,12 @@
 				{}%
 			\IfStrEq{\Changes@optionauthormarkuptext}{name}%
 				{%
-					\IfIsEmpty{\csuse{Changes@AuthorName#1}}%
+				%    \end{macrocode}
+				%
+				%	I cannot use \doccommand{IfIsEmpty} here, because it does not work in this case.
+				% I cannot add the test with \doccommand{IfStrEq} to \doccommand{IfIsEmpty} because it breaks e.g. with a \doccommand{cite} command in the final option.
+				%    \begin{macrocode}
+					\IfStrEq{\csuse{Changes@AuthorName#1}}{}%
 						{#1}%
 						{\csuse{Changes@AuthorName#1}}%
 				}%
-- 
cgit v1.2.3

