diff options
author | Karl Berry <karl@freefriends.org> | 2016-12-23 23:05:36 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2016-12-23 23:05:36 +0000 |
commit | 356fa8c73e53d0d1f2b0e438ed71be0c92c4aaaf (patch) | |
tree | 8216d7ba46ae1725d1ca3202b53d27f31d48a8c9 /Master/texmf-dist/doc | |
parent | 53a12757d6cc681bfd39c6bb93db49b2c21ee97b (diff) |
xint (23dec16)
git-svn-id: svn://tug.org/texlive/trunk@42782 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc')
-rw-r--r-- | Master/texmf-dist/doc/generic/xint/CHANGES.html | 148 | ||||
-rw-r--r-- | Master/texmf-dist/doc/generic/xint/CHANGES.pdf | bin | 78639 -> 79930 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/generic/xint/README | 2 | ||||
-rw-r--r-- | Master/texmf-dist/doc/generic/xint/README.html | 8 | ||||
-rw-r--r-- | Master/texmf-dist/doc/generic/xint/README.pdf | bin | 33185 -> 33186 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/generic/xint/sourcexint.pdf | bin | 631203 -> 641800 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/generic/xint/xint.pdf | bin | 787365 -> 769863 bytes |
7 files changed, 88 insertions, 70 deletions
diff --git a/Master/texmf-dist/doc/generic/xint/CHANGES.html b/Master/texmf-dist/doc/generic/xint/CHANGES.html index aeec51e984c..be570beb94a 100644 --- a/Master/texmf-dist/doc/generic/xint/CHANGES.html +++ b/Master/texmf-dist/doc/generic/xint/CHANGES.html @@ -4,7 +4,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-Style-Type" content="text/css" /> <meta name="generator" content="pandoc" /> - <meta name="author" content="xint 1.2i" /> + <meta name="author" content="xint 1.2j" /> <title>CHANGE LOG</title> <style type="text/css">code{white-space: pre;}</style> <style type="text/css"> @@ -17,55 +17,63 @@ <body> <div id="header"> <h1 class="title">CHANGE LOG</h1> -<h2 class="author">xint 1.2i</h2> -<h3 class="date">2016/12/13</h3> +<h2 class="author">xint 1.2j</h2> +<h3 class="date">2016/12/22</h3> </div> <div id="TOC"> <ul> -<li><a href="#i-20161213"><code>1.2i (2016/12/13)</code></a><ul> -<li><a href="#incompatible-changes">Incompatible changes</a></li> +<li><a href="#j-20161222"><code>1.2j (2016/12/22)</code></a><ul> <li><a href="#improvements-and-new-features">Improvements and new features</a></li> <li><a href="#bug-fixes">Bug fixes</a></li> </ul></li> -<li><a href="#h-20161120"><code>1.2h (2016/11/20)</code></a><ul> +<li><a href="#i-20161213"><code>1.2i (2016/12/13)</code></a><ul> +<li><a href="#incompatible-changes">Incompatible changes</a></li> <li><a href="#improvements-and-new-features-1">Improvements and new features</a></li> <li><a href="#bug-fixes-1">Bug fixes</a></li> </ul></li> +<li><a href="#h-20161120"><code>1.2h (2016/11/20)</code></a><ul> +<li><a href="#improvements-and-new-features-2">Improvements and new features</a></li> +<li><a href="#bug-fixes-2">Bug fixes</a></li> +</ul></li> <li><a href="#g-20160319"><code>1.2g (2016/03/19)</code></a><ul> <li><a href="#incompatible-changes-1">Incompatible changes</a></li> -<li><a href="#improvements-and-new-features-2">Improvements and new features</a></li> +<li><a href="#improvements-and-new-features-3">Improvements and new features</a></li> </ul></li> <li><a href="#f-20160312"><code>1.2f (2016/03/12)</code></a><ul> <li><a href="#incompatible-changes-2">Incompatible changes</a></li> -<li><a href="#bug-fixes-2">Bug fixes</a></li> -<li><a href="#improvements-and-new-features-3">Improvements and new features</a></li> +<li><a href="#improvements-and-new-features-4">Improvements and new features</a></li> +<li><a href="#bug-fixes-3">Bug fixes</a></li> </ul></li> <li><a href="#e-20151122"><code>1.2e (2015/11/22)</code></a><ul> -<li><a href="#bug-fixes-3">Bug fixes</a></li> -<li><a href="#improvements-and-new-features-4">Improvements and new features</a></li> +<li><a href="#improvements-and-new-features-5">Improvements and new features</a></li> +<li><a href="#bug-fixes-4">Bug fixes</a></li> </ul></li> <li><a href="#d-20151118"><code>1.2d (2015/11/18)</code></a><ul> -<li><a href="#bug-fixes-4">Bug fixes</a></li> -<li><a href="#improvements-and-new-features-5">Improvements and new features</a></li> +<li><a href="#improvements-and-new-features-6">Improvements and new features</a></li> +<li><a href="#bug-fixes-5">Bug fixes</a></li> </ul></li> <li><a href="#c-20151116"><code>1.2c (2015/11/16)</code></a><ul> -<li><a href="#bug-fixes-5">Bug fixes</a></li> -<li><a href="#improvements-and-new-features-6">Improvements and new features</a></li> +<li><a href="#improvements-and-new-features-7">Improvements and new features</a></li> +<li><a href="#bug-fixes-6">Bug fixes</a></li> </ul></li> <li><a href="#b-20151029"><code>1.2b (2015/10/29)</code></a><ul> -<li><a href="#bug-fixes-6">Bug fixes</a></li> +<li><a href="#bug-fixes-7">Bug fixes</a></li> </ul></li> <li><a href="#a-20151019"><code>1.2a (2015/10/19)</code></a><ul> -<li><a href="#bug-fixes-7">Bug fixes</a></li> -<li><a href="#improvements-and-new-features-7">Improvements and new features</a></li> +<li><a href="#improvements-and-new-features-8">Improvements and new features</a></li> +<li><a href="#bug-fixes-8">Bug fixes</a></li> </ul></li> <li><a href="#section"><code>1.2 (2015/10/10)</code></a><ul> -<li><a href="#improvements-and-new-features-8">Improvements and new features</a></li> +<li><a href="#improvements-and-new-features-9">Improvements and new features</a></li> </ul></li> <li><a href="#c-20150912"><code>1.1c (2015/09/12)</code></a></li> <li><a href="#b-20150831"><code>1.1b (2015/08/31)</code></a></li> <li><a href="#a-20141107"><code>1.1a (2014/11/07)</code></a></li> -<li><a href="#section-1"><code>1.1 (2014/10/28)</code></a></li> +<li><a href="#section-1"><code>1.1 (2014/10/28)</code></a><ul> +<li><a href="#incompatible-changes-3">Incompatible changes</a></li> +<li><a href="#improvements-and-new-features-10">Improvements and new features</a></li> +<li><a href="#bug-fixes-9">Bug fixes</a></li> +</ul></li> <li><a href="#n-20140401"><code>1.09n (2014/04/01)</code></a></li> <li><a href="#m-20140226"><code>1.09m (2014/02/26)</code></a></li> <li><a href="#kb-20140213"><code>1.09kb (2014/02/13)</code></a></li> @@ -92,17 +100,31 @@ <li><a href="#section-8"><code>1.0 (2013/03/28)</code></a></li> </ul> </div> -<pre><code>Source: xint.dtx 1.2i 2016/12/13 (doc 2016/12/13) +<pre><code>Source: xint.dtx 1.2j 2016/12/22 (doc 2016/12/22) Author: Jean-Francois Burnol Info: Expandable operations on big integers, decimals, fractions License: LPPL 1.3c</code></pre> +<h2 id="j-20161222"><code>1.2j (2016/12/22)</code></h2> +<h3 id="improvements-and-new-features">Improvements and new features</h3> +<ul> +<li><p><strong>xinttools</strong> and <strong>xintexpr</strong>:</p> +<ol style="list-style-type: decimal"> +<li><p>slightly improves the speed of <code>\xintTrim</code>.</p></li> +<li><p>speed gains for the handlers of comma separated lists implementing Python-like slicing and item extraction. Relevant non (user) documented macros better documented in <code>sourcexint.pdf</code>.</p></li> +</ol></li> +<li><p>significant documentations tweaks (inclusive of suppressing things!), and among them two beautiful hyperlinked tables with both horizontal and vertical rules which bring the documentation of the <strong>xintexpr</strong> syntax to a kind of awe-inspiring perfection... except that implementation of some math functions is still lacking.</p></li> +</ul> +<h3 id="bug-fixes">Bug fixes</h3> +<ul> +<li>fix two <code>1.2i</code> regressions caused by undefined macros (<code>\xintNthElt</code> in certain branches and <code>[list][N]</code> item extraction in certain cases.) The test files existed but were not executed prior to release. Automation in progress.</li> +</ul> <h2 id="i-20161213"><code>1.2i (2016/12/13)</code></h2> <h3 id="incompatible-changes">Incompatible changes</h3> <ul> <li><p>some macros which had been marked as deprecated are removed (they are available under different names): <code>\xintifTrue</code>, <code>\xintifTrueFalse</code>, <code>\xintQuo</code>, <code>\xintRem</code>, <code>\xintquo</code>, <code>\xintrem</code>.</p></li> <li><p><code>\xintDecSplit</code> second argument must have no sign (former code replaced it with its absolute value, a sign now may cause an error.)</p></li> </ul> -<h3 id="improvements-and-new-features">Improvements and new features</h3> +<h3 id="improvements-and-new-features-1">Improvements and new features</h3> <ul> <li><p><strong>xintkernel</strong>: <code>\xintLength</code> is faster. New macros:</p> <ul> @@ -121,17 +143,17 @@ License: LPPL 1.3c</code></pre> <li><p>the documentation has again been (slightly) re-organized; it has a new sub-section on the Miller-Rabin primality test, to illustrate some use of <code>\xintNewFunction</code> for recursive definitions.</p></li> <li><p>the documentation has dropped the LaTeX "command" terminology (which had been used initially in 2013 for some forgotten reasons and should have been removed long ago) and uses only the more apt "macro", as after all, all of <strong>xint</strong> is about expansion of macros (plus the use of <code>\numexpr</code>).</p></li> </ul> -<h3 id="bug-fixes">Bug fixes</h3> +<h3 id="bug-fixes-1">Bug fixes</h3> <ul> <li><code>\xintDecSplitL</code> and <code>\xintDecSplitR</code> from <strong>xint</strong> produced their output in a spurious brace pair (bug introduced in <code>1.2f</code>).</li> </ul> <h2 id="h-20161120"><code>1.2h (2016/11/20)</code></h2> -<h3 id="improvements-and-new-features-1">Improvements and new features</h3> +<h3 id="improvements-and-new-features-2">Improvements and new features</h3> <ul> <li><p>new macro <code>\xintNewFunction</code> in <strong>xintexpr</strong> which allows to extend the parser syntax with functions in situations where <code>\xintdeffunc</code> is not usable (typically, because dummy variables are used over a not yet determined range of values because it depends on the variables).</p></li> <li><p>after three years of strict obedience to <code>xint</code> prefix, now <code>\thexintexpr</code>, <code>\thexintiexpr</code>, <code>\thexintfloatexpr</code>, and <code>\thexintiiexpr</code> are provided as synonyms to <code>\xinttheexpr</code>, etc...</p></li> </ul> -<h3 id="bug-fixes-1">Bug fixes</h3> +<h3 id="bug-fixes-2">Bug fixes</h3> <ul> <li><p>the <code>(cond)?{foo}{bar}</code> operator from <strong>xintexpr</strong> mis-behaved in certain circumstances (such as an empty <code>foo</code>).</p></li> <li><p>the <strong>xintexpr</strong> <code>1.2f</code> <code>binomial</code> function (which uses <code>\xintiiBinomial</code> from <strong>xint.sty</strong> or <code>\xintFloatBinomial</code> from <strong>xintfrac.sty</strong>) deliberately raised an error for <code>binomial(x,y)</code> with <code>y<0</code> or <code>x<y</code>. This was unfortunate, and it now simply evaluates to zero in such cases.</p></li> @@ -144,7 +166,7 @@ License: LPPL 1.3c</code></pre> <li><p>inside expressions, list item selector <code>[L][n]</code> counts starting at zero, not at one. This is more coherent with <code>[L][a:b]</code> which was already exactly like in Python since its introduction. A function len(L) replaces earlier <code>[L][0]</code>.</p></li> <li><p>former <code>iter</code> keyword now called <code>iterr</code>. Indeed it matched with <code>rrseq</code>, the new <code>iter</code> (which was somehow missing from <code>1.1</code>) is the one matching <code>rseq</code>. Allows to iterate more easily with a "list" variable.</p></li> </ul> -<h3 id="improvements-and-new-features-2">Improvements and new features</h3> +<h3 id="improvements-and-new-features-3">Improvements and new features</h3> <ul> <li><p>in <strong>xintexpr.sty</strong>: list selectors <code>[L][n]</code> and <code>[L][a:b]</code> are more efficient: the earlier <code>1.1</code> routines did back and forth conversions from comma separated values to braced tokens, the <code>1.2g</code> routines use macros from <strong>xinttools.sty</strong> handling directly the encountered lists of comma separated values.</p></li> <li><p>in <strong>xinttools.sty</strong>: slight improvements in the efficiency of the <code>\xintNthElt</code>, <code>\xintKeep</code>, <code>\xintTrim</code> routines and new routines handling directly comma separated values. The latter are not included in the user manual (they are not <code>\long</code>, they don't make efforts to preserve some braces, do not worry about spaces, all those worries being irrelevant to the use in expressions for list selectors).</p></li> @@ -157,13 +179,7 @@ License: LPPL 1.3c</code></pre> <ul> <li>no more <code>\xintFac</code> macro but <code>\xintiFac/\xintiiFac/\xintFloatFac</code>.</li> </ul> -<h3 id="bug-fixes-2">Bug fixes</h3> -<ul> -<li><p>squaring macro <code>\xintSqr</code> from <strong>xintfrac.sty</strong> was broken due to a misspelled sub-macro name. Dates back to <code>1.1</code> release of <code>2014/10/28</code> <code>:-((</code>.</p></li> -<li><p><code>1.2c</code>'s fix to the subtraction bug from <code>1.2</code> introduced another bug, which in some cases could create leading zeroes in the output, or even worse. This could invalidate other routines using subtractions, like <code>\xintiiSquareRoot</code>.</p></li> -<li><p>the comparison operators were not recognized by <code>\xintNewIIExpr</code> and <code>\xintdefiifunc</code> constructs.</p></li> -</ul> -<h3 id="improvements-and-new-features-3">Improvements and new features</h3> +<h3 id="improvements-and-new-features-4">Improvements and new features</h3> <ul> <li><p>functions <code>binomial</code>, <code>pfactorial</code> and <code>factorial</code> in both integer and float versions.</p></li> <li><p>macros <code>\xintiiBinomial</code>, <code>\xintiiPFactorial</code> (<strong>xint.sty</strong>) and <code>\xintFloatBinomial</code>, <code>\xintFloatPFactorial</code> (<strong>xintfrac.sty</strong>). Improvements to <code>\xintFloatFac</code>.</p></li> @@ -177,59 +193,65 @@ License: LPPL 1.3c</code></pre> <li><p>(TeXperts only) the macros defined (internally) from <code>\xintdeffunc</code> et al. constructs do not incorporate an initial <code>\romannumeral</code> anymore.</p></li> <li><p>renewed desperate efforts at improving the documentation by random shuffling of sections and well thought additions; cuts were considered and even performed.</p></li> </ul> -<h2 id="e-20151122"><code>1.2e (2015/11/22)</code></h2> <h3 id="bug-fixes-3">Bug fixes</h3> <ul> -<li><p>in <strong>xintfrac</strong>: the <code>\xintFloatFac</code> from release <code>1.2</code> parsed its argument only through <code>\numexpr</code> but it should have used <code>\xintNum</code>.</p></li> -<li><p>in <strong>xintexpr</strong>: release <code>1.2d</code> had broken the recognition of sub-expressions immediately after variable names (with tacit multiplication).</p></li> -<li><p>in <strong>xintexpr</strong>: contrarily to what <code>1.2d</code> documentation said, tacit multiplication was not yet always done with enhanced precedence. Now yes.</p></li> +<li><p>squaring macro <code>\xintSqr</code> from <strong>xintfrac.sty</strong> was broken due to a misspelled sub-macro name. Dates back to <code>1.1</code> release of <code>2014/10/28</code> <code>:-((</code>.</p></li> +<li><p><code>1.2c</code>'s fix to the subtraction bug from <code>1.2</code> introduced another bug, which in some cases could create leading zeroes in the output, or even worse. This could invalidate other routines using subtractions, like <code>\xintiiSquareRoot</code>.</p></li> +<li><p>the comparison operators were not recognized by <code>\xintNewIIExpr</code> and <code>\xintdefiifunc</code> constructs.</p></li> </ul> -<h3 id="improvements-and-new-features-4">Improvements and new features</h3> +<h2 id="e-20151122"><code>1.2e (2015/11/22)</code></h2> +<h3 id="improvements-and-new-features-5">Improvements and new features</h3> <ul> <li><p>macro <code>\xintunassignvar</code>.</p></li> <li><p>slight modifications of the logged messages in case of <code>\xintverbosetrue</code>.</p></li> <li><p>a space in <code>\xintdeffunc f(x)<space>:= expression ;</code> is now accepted.</p></li> <li><p>documentation enhancements: the <em>Quick Sort</em> section with its included code samples has been entirely re-written; the <em>Commands of the xintexpr package</em> section has been extended and reviewed entirely.</p></li> </ul> -<h2 id="d-20151118"><code>1.2d (2015/11/18)</code></h2> <h3 id="bug-fixes-4">Bug fixes</h3> <ul> -<li>in <strong>xintcore</strong>: release <code>1.2c</code> had inadvertently broken the <code>\xintiiDivRound</code> macro.</li> +<li><p>in <strong>xintfrac</strong>: the <code>\xintFloatFac</code> from release <code>1.2</code> parsed its argument only through <code>\numexpr</code> but it should have used <code>\xintNum</code>.</p></li> +<li><p>in <strong>xintexpr</strong>: release <code>1.2d</code> had broken the recognition of sub-expressions immediately after variable names (with tacit multiplication).</p></li> +<li><p>in <strong>xintexpr</strong>: contrarily to what <code>1.2d</code> documentation said, tacit multiplication was not yet always done with enhanced precedence. Now yes.</p></li> </ul> -<h3 id="improvements-and-new-features-5">Improvements and new features</h3> +<h2 id="d-20151118"><code>1.2d (2015/11/18)</code></h2> +<h3 id="improvements-and-new-features-6">Improvements and new features</h3> <ul> <li><p>the function definitions done by <code>\xintdeffunc</code> et al., as well as the macro declarations by <code>\xintNewExpr</code> et al. now have only local scope.</p></li> <li><p>tacit multiplication applies to more cases, for example (x+y)z, and always ties more than standard * infix operator, e.g. x/2y is like x/(2*y).</p></li> <li><p>some documentation enhancements, particularly in the chapter on xintexpr.sty, and also in the code source comments.</p></li> </ul> -<h2 id="c-20151116"><code>1.2c (2015/11/16)</code></h2> <h3 id="bug-fixes-5">Bug fixes</h3> <ul> -<li>in <strong>xintcore</strong>: recent release <code>1.2</code> introduced a bug in the subtraction (happened when 00000001 was found under certain circumstances at certain mod 8 locations).</li> +<li>in <strong>xintcore</strong>: release <code>1.2c</code> had inadvertently broken the <code>\xintiiDivRound</code> macro.</li> </ul> -<h3 id="improvements-and-new-features-6">Improvements and new features</h3> +<h2 id="c-20151116"><code>1.2c (2015/11/16)</code></h2> +<h3 id="improvements-and-new-features-7">Improvements and new features</h3> <ul> <li><p>macros <code>\xintdeffunc</code>, <code>\xintdefiifunc</code>, <code>\xintdeffloatfunc</code> and boolean <code>\ifxintverbose</code>.</p></li> <li><p>on-going code improvements and documentation enhancements, but stopped in order to issue this bugfix release.</p></li> </ul> -<h2 id="b-20151029"><code>1.2b (2015/10/29)</code></h2> <h3 id="bug-fixes-6">Bug fixes</h3> <ul> -<li>in <strong>xintcore</strong>: recent release <code>1.2</code> introduced a bug in the division macros, causing a crash when the divisor started with 99999999 (it was attempted to use with 1+99999999 a subroutine expecting only 8-digits numbers).</li> +<li>in <strong>xintcore</strong>: recent release <code>1.2</code> introduced a bug in the subtraction (happened when 00000001 was found under certain circumstances at certain mod 8 locations).</li> </ul> -<h2 id="a-20151019"><code>1.2a (2015/10/19)</code></h2> +<h2 id="b-20151029"><code>1.2b (2015/10/29)</code></h2> <h3 id="bug-fixes-7">Bug fixes</h3> <ul> -<li>in <strong>xintexpr</strong>: recent release <code>1.2</code> introduced a bad bug in the parsing of decimal numbers and as a result <code>\xinttheexpr 0.01\relax</code> expanded to <code>0</code> ! (sigh...)</li> +<li>in <strong>xintcore</strong>: recent release <code>1.2</code> introduced a bug in the division macros, causing a crash when the divisor started with 99999999 (it was attempted to use with 1+99999999 a subroutine expecting only 8-digits numbers).</li> </ul> -<h3 id="improvements-and-new-features-7">Improvements and new features</h3> +<h2 id="a-20151019"><code>1.2a (2015/10/19)</code></h2> +<h3 id="improvements-and-new-features-8">Improvements and new features</h3> <ul> <li><p>added <code>\xintKeepUnbraced</code>, <code>\xintTrimUnbraced</code> (<strong>xinttools</strong>) and fixed documentation of <code>\xintKeep</code> and <code>\xintTrim</code> regarding brace stripping.</p></li> <li><p>added <code>\xintiiMaxof/\xintiiMinof</code> (<strong>xint</strong>).</p></li> <li><p>TeX hackers only: replaced all code uses of <code>\romannumeral-`0</code> by the quicker <code>\romannumeral`&&@</code> (<code>^</code> being used as letter, had to find another character usable with catcode 7).</p></li> </ul> +<h3 id="bug-fixes-8">Bug fixes</h3> +<ul> +<li>in <strong>xintexpr</strong>: recent release <code>1.2</code> introduced a bad bug in the parsing of decimal numbers and as a result <code>\xinttheexpr 0.01\relax</code> expanded to <code>0</code> ! (sigh...)</li> +</ul> <h2 id="section"><code>1.2 (2015/10/10)</code></h2> -<h3 id="improvements-and-new-features-8">Improvements and new features</h3> +<h3 id="improvements-and-new-features-9">Improvements and new features</h3> <ul> <li><p>the basic arithmetic implemented in <strong>xintcore</strong> has been entirely rewritten. The mathematics remains the elementary school one, but the <code>TeX</code> implementation achieves higher speed (except, regarding addition/subtraction, for numbers up to about thirty digits), the gains becoming quite significant for numbers with hundreds of digits.</p></li> <li><p>the inputs must have less than 19959 digits. But computations with thousands of digits take time.</p></li> @@ -264,18 +286,8 @@ License: LPPL 1.3c</code></pre> <li><p>various typographical fixes throughout the documentation, and a bit of clean up of the code comments. Improved <code>\Factors</code> example of nested <code>subs</code>, <code>rseq</code>, <code>iter</code> in <code>\xintiiexpr</code>.</p></li> </ul> <h2 id="section-1"><code>1.1 (2014/10/28)</code></h2> -<dl> -<dt>bug fixes</dt> -<dd><ul> -<li><p><code>\xintZapFirstSpaces</code> hence also <code>\xintZapSpaces</code> from package <strong>xinttools</strong> were buggy when used with an argument either empty or containing only space tokens.</p></li> -<li><p><code>\xintiiexpr</code> did not strip leading zeroes, hence <code>\xinttheiiexpr 001+1\relax</code> did not obtain the expected result ...</p></li> -<li><p><code>\xinttheexpr \xintiexpr 1.23\relax\relax</code> should have produced <code>1</code>, but it produced <code>1.23</code></p></li> -<li><p>the catcode of <code>;</code> was not set at package launching time.</p></li> -<li><p>the <code>\XINTinFloatPrd:csv</code> macro name had a typo, hence <code>prd</code> was non-functional in <code>\xintfloatexpr</code>.</p></li> -</ul> -</dd> -<dt>breaking changes</dt> -<dd><ul> +<h3 id="incompatible-changes-3">Incompatible changes</h3> +<ul> <li><p>in <code>\xintiiexpr</code>, <code>/</code> does <em>rounded</em> division, rather than the Euclidean division (for positive arguments, this is truncated division). The <code>//</code> operator does truncated division,</p></li> <li><p>the <code>:</code> operator for three-way branching is gone, replaced with <code>??</code>,</p></li> <li><p><code>1e(3+5)</code> is now illegal. The number parser identifies <code>e</code> and <code>E</code> in the same way it does for the decimal mark, earlier versions treated <code>e</code> as <code>E</code> rather as infix operators of highest precedence,</p></li> @@ -284,9 +296,7 @@ License: LPPL 1.3c</code></pre> <li><p>although <code>&</code> and <code>|</code> are still available as Boolean operators the use of <code>&&</code> and <code>||</code> is strongly recommended. The single letter operators might be assigned some other meaning in later releases (bitwise operations, perhaps). Do not use them.</p></li> <li><p>in earlier releases, place holders for <code>\xintNewExpr</code> could either be denoted <code>#1</code>, <code>#2</code>, ... or also <code>$1</code>, <code>$2</code>, ... Only the usual <code>#</code> form is now accepted and the special cases previously treated via the second form are now managed via a <code>protect(...)</code> function.</p></li> </ul> -</dd> -</dl> -<p><strong>novelties :</strong></p> +<h3 id="improvements-and-new-features-10">Improvements and new features</h3> <ul> <li><p>new package <strong>xintcore</strong> has been split off <strong>xint</strong>. It contains the core arithmetic macros. It is loaded by package <strong>bnumexpr</strong>,</p></li> <li><p>neither <strong>xint</strong> nor <strong>xintfrac</strong> load <strong>xinttools</strong>. Only <strong>xintexpr</strong> does,</p></li> @@ -323,6 +333,14 @@ License: LPPL 1.3c</code></pre> <li><p><code>\xintthecoords</code> converts a comma separated list of an even number of items to the format expected by the <code>TikZ</code> <code>coordinates</code> syntax,</p></li> <li><p>completely new version <code>\xintNewExpr</code>, <code>protect</code> function to handle external macros. The dollar sign <code>$</code> for place holders is not accepted anymore, only the standard macro parameter <code>#</code>. Not all constructs are compatible with <code>\xintNewExpr</code>.</p></li> </ul> +<h3 id="bug-fixes-9">Bug fixes</h3> +<ul> +<li><p><code>\xintZapFirstSpaces</code> hence also <code>\xintZapSpaces</code> from package <strong>xinttools</strong> were buggy when used with an argument either empty or containing only space tokens.</p></li> +<li><p><code>\xintiiexpr</code> did not strip leading zeroes, hence <code>\xinttheiiexpr 001+1\relax</code> did not obtain the expected result ...</p></li> +<li><p><code>\xinttheexpr \xintiexpr 1.23\relax\relax</code> should have produced <code>1</code>, but it produced <code>1.23</code></p></li> +<li><p>the catcode of <code>;</code> was not set at package launching time.</p></li> +<li><p>the <code>\XINTinFloatPrd:csv</code> macro name had a typo, hence <code>prd</code> was non-functional in <code>\xintfloatexpr</code>.</p></li> +</ul> <h2 id="n-20140401"><code>1.09n (2014/04/01)</code></h2> <ul> <li><p>the user manual does not include by default the source code anymore: the <code>\NoSourceCode</code> toggle in file <code>xint.tex</code> has to be set to 0 before compilation to get source code inclusion (later release <code>1.1</code> made source code available as <code>sourcexint.pdf</code>).</p></li> diff --git a/Master/texmf-dist/doc/generic/xint/CHANGES.pdf b/Master/texmf-dist/doc/generic/xint/CHANGES.pdf Binary files differindex a677346395b..bbdc4767907 100644 --- a/Master/texmf-dist/doc/generic/xint/CHANGES.pdf +++ b/Master/texmf-dist/doc/generic/xint/CHANGES.pdf diff --git a/Master/texmf-dist/doc/generic/xint/README b/Master/texmf-dist/doc/generic/xint/README index 305b0e0faf8..ce37d42c084 100644 --- a/Master/texmf-dist/doc/generic/xint/README +++ b/Master/texmf-dist/doc/generic/xint/README @@ -1,4 +1,4 @@ - Source: xint.dtx 1.2i 2016/12/13 (doc 2016/12/13) + Source: xint.dtx 1.2j 2016/12/22 (doc 2016/12/22) Author: Jean-Francois Burnol Info: Expandable operations on big integers, decimals, fractions License: LPPL 1.3c diff --git a/Master/texmf-dist/doc/generic/xint/README.html b/Master/texmf-dist/doc/generic/xint/README.html index 1a5395ff7c1..fba04e1f6ff 100644 --- a/Master/texmf-dist/doc/generic/xint/README.html +++ b/Master/texmf-dist/doc/generic/xint/README.html @@ -4,7 +4,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-Style-Type" content="text/css" /> <meta name="generator" content="pandoc" /> - <meta name="author" content="xint 1.2i" /> + <meta name="author" content="xint 1.2j" /> <title>README</title> <style type="text/css">code{white-space: pre;}</style> <style type="text/css"> @@ -17,8 +17,8 @@ <body> <div id="header"> <h1 class="title">README</h1> -<h2 class="author">xint 1.2i</h2> -<h3 class="date">2016/12/13</h3> +<h2 class="author">xint 1.2j</h2> +<h3 class="date">2016/12/22</h3> </div> <div id="TOC"> <ul> @@ -36,7 +36,7 @@ <li><a href="#license">License</a></li> </ul> </div> -<pre><code>Source: xint.dtx 1.2i 2016/12/13 (doc 2016/12/13) +<pre><code>Source: xint.dtx 1.2j 2016/12/22 (doc 2016/12/22) Author: Jean-Francois Burnol Info: Expandable operations on big integers, decimals, fractions License: LPPL 1.3c</code></pre> diff --git a/Master/texmf-dist/doc/generic/xint/README.pdf b/Master/texmf-dist/doc/generic/xint/README.pdf Binary files differindex 27d1a2fccd5..3df488ff147 100644 --- a/Master/texmf-dist/doc/generic/xint/README.pdf +++ b/Master/texmf-dist/doc/generic/xint/README.pdf diff --git a/Master/texmf-dist/doc/generic/xint/sourcexint.pdf b/Master/texmf-dist/doc/generic/xint/sourcexint.pdf Binary files differindex 11774c01170..1645e0980d0 100644 --- a/Master/texmf-dist/doc/generic/xint/sourcexint.pdf +++ b/Master/texmf-dist/doc/generic/xint/sourcexint.pdf diff --git a/Master/texmf-dist/doc/generic/xint/xint.pdf b/Master/texmf-dist/doc/generic/xint/xint.pdf Binary files differindex fc91c782c6a..6c8c0a3e56b 100644 --- a/Master/texmf-dist/doc/generic/xint/xint.pdf +++ b/Master/texmf-dist/doc/generic/xint/xint.pdf |