Bug fixes
=========
bug 334859 HTMLHELP: Underscore in chm file name prevents linking between chm files [view], [view]
bug 711041 Undocumented "enum" values in TOC of qhp files causes tag-mismatch and corrupt TOC [view]
bug 783768 QCH files: classes & their constructors get conflicting keyword handling [view]
bug_445536 Select folder for STRIP_FROM_PATH [view]
bug_644899 New diagram implementing environment [view], and [view]
bug_698167 HIDE_SCOPE_NAMES does not hide namespace scope for functions within it [view]
bug_711041 Undocumented "enum" values in TOC of qhp files causes tag-mismatch and corrupt TOC. [view], [view], [view]
issue #6382 computational time issue of Java generics [view], [view]
issue #6992 Automatic Coverity run [view], [view], [view], [view], [view], [view], [view], [view], [view], [view], [view], [view], [view], [view], and [view]
issue #7543 Support PlantUML in Markdown [view]
issue #7873 Combining `///`-style comments with macros containing @cond/@endcond causes a preprocessor error [view]
issue #8355 Doxywizard 1.9.x doesn't start up properly [view]
issue #8487 Doxygen doesn't generate links to C# classes in different namespaces [view], [view]
issue #8784 CLANG_ASSISTED_PARSING tries to parse markdown files [view]
issue #9003 Button Show HTML-Output doesn't work [view]
issue #9005 Function prototype matching @fn command, but link between both is not made [view]
issue #9006 Doxygen 1.9.3 replaces '--' with '–' inside formula alias [view]
issue #9007 Using DOT_PATH with a symlink for dot does not always work [view], and [view]
issue #9027 SEARCHDATA_FILE (searchdata.xml) keyword elements blank [view]
issue #9028 DoxyVerb environment should terminate the previous paragraph before changing paragraph formatting [view]
issue #9045 wrong grammar/spelling in german html Output [view]
issue #9051 Wrong "Related page" generating in 1.9.3 (works good in 1.9.1!) from *.md files [view], [view]
issue #9054 Feature Request: Doxywizard: Customize Doxyfile Line Endings [view]
issue #9055 Objective C method / property attribute decoration confuses parsing [view]
issue #9058 Strip leading spaces in QHP file [view], [view]
issue #9070 Doxygen is not showing all called functions in graph plot [view], [view]
issue #9074 Menubar Links not Parsed Correctly [view]
issue #9075 .html Extension Removed from Tag File URLs [view]
issue #9094 Wrong QHP index structure [view], [view]
issue #9124 Latex: Does not properly compile when PROJECT_BRIEF contains commas [view]
issue #9127 Doxywizard truncates standard input passed to doxygen process. [view]
issue #9135 Qhelpgenerator debug mode [view]
issue #9136 master does not compile on Mac 12.2.1 [view]
issue #9138 QHP index contains duplicated file entries [view]
issue #9143 warning file-line format in Possible candidates [view]
issue #9144 problem with matching function when using namespace [view]
issue #9148 No uniquely matching class member, but no candidates are printed. [view]
issue #9155 Doxygen crash with NUM_PROC_THREADS>1 [view], [view], [view]
issue #9157 Codebase static analysis shows some potential leaks and nullptr access [view]
issue #9158 Python: Two classes in one file, second class documentation block copied into its class method block [view]
issue #9171 XML output for dot file uses relative path in 1.9.3 [view]
issue #9187 doxygen -x_noenv option to not expand environment variables [view], [view]
issue #9190 DOC: Mention -x switch in the "Support" page [view], [view]
issue #9192 "Packages" has a "Packages" in the tree [view]
issue #9195 fix for warning: documentation for unknown define [view]
issue #9200 Doxygen cannot resolve link to HTML anchor page [view]
issue #9211 @file is confused by symlinks (regression since 1.9.1) [view]
issue #9217 Can't load MathJax 3 extensions [view]
issue #9229 Crash with Segmentation fault in ClassDefImpl::mergeMembers [view]
issue #9234 NUM_PROC_THREADS not being honored when processing input [view]
issue #9241 Undocumented external namespaces from .tags files are shown in output Namespace index [view]
issue #9243 GHC_NO_DIRENT_D_TYPE should be defined on Solaris [view]
issue #9251 HTML extensions stripped from DOT SVG links with tagfiles [view]
issue #9254 Missing first word of page in case of existing \page command in markdown [view]
issue #9257 Build Error regarding vhdlparser [view]
issue #9264 Markdown tables not rendered for parameters [view]
issue #9266 doxygen runtime went from 10minutes to >14hours (lots of using namespace) [view]
issue #9269 Not able to compile with MSYS2/mingw (file too big) [view], [view], [view]
issue #9274 Automatic links not working in examples that use C++ source [Potential Bug] [view], [view], [view], [view]
issue #9276 File-Line is omitted when suggesting possible candidates depending on noMatchCount [view]
issue #9284 Clicking external link within search results with EXT_LINKS_IN_WINDOW=YES opens the link in the search results box [view]
issue #9296 gives up after seeing egregiously complex template code [view]
issue #9298 Segfault in Fortran parser (heap use after free) [view], [view]
Recognize type= as variable in Fortran [view]
Concept mising in the layout description [view]
Detecting end of body in python [view]
SHOW_FILES=NO could cause broken links for grouped files [view]
Source code was missing line anchors in the HTML output when using libclang [view]
Updated Hindi Locale ID (LCID): 0x439 Hindi [view]
INCLUDE_PATH is not recursive [view]
Spurious colon in the output [view]
Global enum incorporates values from an enum class [view]
Incorrect check on a list item. [view]
Incorrect doxygen help information [view]
Incorrect line number in warning message [view]
Incorrect macro file name in LaTeX [view]
Incorrect protection for test 28 [view]
Incorrect representation of some items in HTMLHELP [view]
Incorrect version in language documentation [view]
Don't create anchor for \name command [view]
add missing newline in docu [view]
synchronize man and help messages [view]
Features
========
Add CINDEX_NO_EXPORTS option when linking against static libclang [view]
Introduce CREATE_SUBDIRS_LEVEL [view]
Add for the xml output also xml to the markdown image representation. [view]
Adding Qt6 support [view]
Update Bulgarian translation [view]
Better translation for trPackageMembers [view]
Refer to chapter Grouping with GROUP_GRAPHS [view]
HTMLHELP warning on using svg as image format for graphs [view]
mention doxygen debugging flags on the web [view]
mention how to get additional usage flags [view]
Deprecated functionality
========================
Dropping Qt4 support [view]
Restrict usable flex version to 2.6.4 and higher [view], and [view]
Update to require JavaCC 7.0.6 or higher [view]
C++17 compiler is now required to compile doxygen [view]
Refactoring and cleanup
=======================
Add null pointer checks for dynamic casts of LayoutDocEntry objects [view]
Add test possibility to check the structure of the index.qhp file [view]
Add try-catch around DocParser's destructor to avoid coverity warning [view]
Added GHC_OS_SOLARIS [view]
Added missing include and remove redundant code [view]
Added support for Bulgarian [view]
Added translation for the Hindi-language and signed up as a maintainer for the same. [view]
Adjustments according to the new README [view]
Align latex commands [view]
Allow multi-threaded computation of tooltips [view]
Automatically set copyright year in doxygen man page [view]
Automatically show correct year in about box [view], [view]
Avoid compiler error on systems where size_t==unsigned int [view]
Correcting default settings when running HTMLHELP [view]
Determination of fixed source form. [view]
Downgrade stale translator warning to message [view]
Enable always all languages [view]
Enable the equal sign in the file mask [view]
Error when generating documentation with formulas a second time [view]
Extended support for language specified in markdown fenced code blocks [view]
Fix build with MinGW and Ninja [view]
Fix debug prints [view]
Fix e-mail obfuscation issue in the manual [view]
Fix for merge issue [view]
Fix for translator.py to deal with =default destructor [view]
Fix for unsigned int issue [view]
Fix multi-threading issues if SERVER_BASED_SEARCH=YES [view]
Fix potential stack overflow [view]
Fix repeated words [view]
Fixed potential crash in case cached item was already purged [view]
Fixed regression that introduced an invalid </p> in HTML [view]
Fixed version check and did some simplifications and refactoring [view]
Handling enums in settings that double as boolean [view], [view], [view]
Handling of value of visible attribute [view]
Interaction of tests for xhtml and qhp [view]
Line numbers not shown in gray in source code [view]
Make better use of capture ranges [view]
Make boolean representation mapping part of ConfigValues::Info [view]
Making Windows executable large address aware [view]
Making tag information better available [view], [view]
Minor optimisation [view]
Missing <VERSION> in description of doxyparse [view]
Missing part of output due to wrong emoji command [view]
Modernize LANGUAGE.HOWTO [view]
Move editbin logic to a separate cmake file [view]
Moving punctuation dependency to translator [view], [view], [view]
Prevent running coverity scan when no commit are made [view]
Problem compiling under Cygwin [view]
QCString: make str() accessor return a const& [view]
QCString: slightly faster mid [view]
Reduce number of calls into visited map [view]
Reduced code duplication, optimized performance [view], and [view]
Refactoring: Moved duplicated functionality into BufStr [view]
Refactoring: clean up destructors [view]
Refactoring: implement visitors using std::visit and std::variant [view]
Refactoring: reimplemented tagreader structures [view]
Refactoring: remove unneeded class OutputDocInterface [view]
Refactoring: replace custom variant class by std::variant [view]
Refactoring: replace old style casts [view], [view], and [view]
Refactoring: split docparser [view]
Reference to non existing anchor with "More..." [view]
Reinstate warnings about stale translations [view]
Remove retrieval of the process count for tests [view]
Removed unused function in configgen.py [view]
Removing obsolete functions [view]
Replace static Config_Get... by just Config_get... [view]
Replaced DocNode::kind() by dynamic_cast checks [view]
Replaced conditional sections by adapter and fixed some signals [view]
Simplified documentation and implementation a bit [view]
Split of javascript search index into separate files [view]
Trace statement in markdown.cpp [view], [view]
Uniform retrieval file definition [view]
Uniform retrieval of language code by means of translator unit [view]
clarify what the last comments in man refer to [view]
optional command variables and align mkidx and latex command approaches [view]
pass const& of LinkedRefMap to prevent creating temporary copies [view]
2022-02-09 Nick Clifton <nickc@redhat.com>
2.38 release.
* ChangeLog.git.2.37-2.38: New file.
2022-01-22 Nick Clifton <nickc@redhat.com>
* configure: Regenerate.
2022-01-22 Nick Clifton <nickc@redhat.com>
* 2.38 release branch created.
2022-01-17 Nick Clifton <nickc@redhat.com>
Update config.[guess|sub] from upstream:
2022-01-09 Idan Horowitz <idan.horowitz@gmail.com>
config.guess: recognize SerenityOS
* config.guess (*:SerenityOS:*:*): Recognize.
(timestamp): Update.
2022-01-03 Bernhard Voelker <mail@bernhard-voelker.de>
Fix GPLv3 license headers to use a comma instead of semicolon
See: https://www.gnu.org/licenses/gpl-3.0.html#howto
Update license headers automatically using the following script:
$ git grep -l 'Foundation; either version 3' \
| xargs sed -i '/Foundation; either version 3/ s/n; e/n, e/'
* config.guess: Adjust via the above command.
(timestamp): Update.
* config.sub: Likewise.
* doc/config.guess.1: Regenerate.
* doc/config.sub.1: Likewise.
2022-01-01 Dmitry V. Levin <ldv@altlinux.org>
Update copyright years
* config.guess: Update copyright years.
* config.sub: Likewise.
2021-12-25 Dmitry V. Levin <ldv@altlinux.org>
config.sub: alias armh to armv7l
ALT uses armh as an alias for armv7l-alt-linux-gnueabihf since 2012.
* config.sub (armh-unknown|armh-alt): Set cpu, vendor, and basic_os.
(timestamp): Update.
2021-12-24 Dmitry V. Levin <ldv@altlinux.org>
config.sub: alias aarch64le to aarch64
Apparently, QNX reports aarch64 as aarch64le on little-endian machines.
* config.sub (aarch64le-*): Set cpu to aarch64.
(timestamp): Update.
2021-12-13 Dmitry V. Levin <ldv@altlinux.org>
config.sub: fix typo in timestamp
* config.sub: Fix timestamp.
2021-11-30 Andreas F. Borchert <github@andreas-borchert.de>
config.guess: x86_64-pc-solaris2.11 is not properly recognized
config.guess guesses Solaris 11 to run on a 32-bit platform
despite Solaris 11 no longer supporting any 32-bit platform.
See the following code at lines 434 to 445:
| SUN_ARCH=i386
| # If there is a compiler, see if it is configured for 64-bit objects.
| # Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
| # This test works for both compilers.
| if test "$CC_FOR_BUILD" != no_compiler_found; then
| if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
| (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
| grep IS_64BIT_ARCH >/dev/null
| then
| SUN_ARCH=x86_64
| fi
| fi
If "cc" is installed, i.e. the Oracle Studio compiler, this one is
chosen for $CC_FOR_BUILD. This compiler, the gcc provided by Oracle
and also gcc bootstrapped from sources on that platform with a default
configuration will by default generate 32-bit binaries -- even on
a 64-bit platform. And __amd64 will not be defined for compilations
targeting a 32-bit platform. This is different from the corresponding
behaviour on GNU/Linux systems where the local platform is targeted by
default.
Thus, as long as you do not add "-m64" or if you have a custom-built
gcc which defaults to 64 bit, you will get 32-bit binaries on Solaris
despite living on a 64-bit platform.
* config.guess (i86pc:SunOS:5.*:* || i86xen:SunOS:5.*:*): Adapt the
test by adding the "-m64" flag. This will work properly for Solaris
10 as well (the last Solaris release that supported x86 32-bit
platforms).
2021-10-27 Jordi Sanfeliu <jordi@fibranet.cat>
Recognize Fiwix
$ make check
cd testsuite && bash config-guess.sh && rm uname
PASS: config.guess checks (137 tests)
cd testsuite && bash config-sub.sh
PASS: config.sub checks (882 tests)
PASS: config.sub idempotency checks (819 tests)
PASS: config.sub canonicalise each config.guess testcase (137 tests)
* config.guess (i*86:Fiwix:*:*): Recognize.
* config.sub (fiwix*): Likewise.
2021-10-18 Kinshuk Dua <kinshukdua@gmail.com>
config.sub: Fix typo in comment
Fixes: 5e531d391852a54e7fab2d8ff55625fca514b305
2021-08-14 Nick Bowler <nbowler@draconx.ca>
config.sub: work around command assignment bug in some shells
When combining variable assignments with a shell command, some older
shells (notably heirloom-sh and presumably also Solaris 10 /bin/sh)
have a bug which causes the assignment to alter the current execution
environment whenever the command is a shell built-in. For example:
% dash -c 'x=good; x=bad echo >/dev/null; echo $x'
good
% jsh -c 'x=good; x=bad echo >/dev/null; echo $x'
bad
The config.sub script contains a few commands of the form:
IFS=- read ...
which triggers this bug, causing the IFS assignment to persist for the
remainder of the script. This can cause misbehaviour in certain cases,
for example:
% jsh config.sub i386-linux-gnu
config.sub: test: unknown operator gnu
% jsh config.sub i386-gnu/linux
sed: can't read s|gnu/linux|gnu|: No such file or directory
Invalid configuration `i386-gnu/linux': OS `' not recognized
* config.sub: Save and restore IFS explicitly to avoid shell bugs.
* doc/config.sub.1: Regenerate.
2021-08-04 Jeremy Soller <jackpot51@gmail.com>
config.sub: add Linux Relibc Target
$ make check
cd testsuite && bash config-guess.sh && rm uname
PASS: config.guess checks (136 tests)
cd testsuite && bash config-sub.sh
PASS: config.sub checks (881 tests)
PASS: config.sub idempotency checks (818 tests)
PASS: config.sub canonicalise each config.guess testcase (136 tests)
* config.sub (relibc*): Recognize.
* doc/config.sub.1: Regenerate.
* testsuite/config-sub.data (x86_64-linux-relibc): New test.
2021-07-06 Stephanos Ioannidis <root@stephanos.io>
config.sub: add Zephyr RTOS support
This adds the Zephyr RTOS targets in preparation for implementing the
Zephyr RTOS-specific toolchain support.
$ make check
cd testsuite && bash config-guess.sh && rm uname
PASS: config.guess checks (136 tests)
cd testsuite && bash config-sub.sh
PASS: config.sub checks (880 tests)
PASS: config.sub idempotency checks (817 tests)
PASS: config.sub canonicalise each config.guess testcase (136 tests)
* config.sub (zephyr*): Recognize.
* doc/config.sub.1: Regenerate.
* testsuite/config-sub.data: Add testcases for *-zephyr.
2021-07-03 Ozkan Sezer <sezero@users.sourceforge.net>
config.sub: disable shellcheck SC2006 / SC2268 warnings
This is in line with the recent config.guess change in commit
12fcf67c9108f4c4b581eaa302088782f0ee40ea
* config.sub (shellcheck disable): Add SC2006,SC2268.
Suggested-by: Jacob Bachmeyer <jcb@gnu.org>
2021-07-03 Ozkan Sezer <sezero@users.sourceforge.net>
config.sub: normalize the quoting in the `echo FOO | sed ...`
Some cases quote the argument to echo and some do not. At runtime
it probably does not matter because the substituted values will never
contain whitespace, but quoting them all would make shellcheck more
useful.
* config.sub: Consistently quote the argument of echo.
* doc/config.sub.1: Regenerate.
Suggested-by: Jacob Bachmeyer <jcb@gnu.org>
2021-07-02 Ozkan Sezer <sezero@users.sourceforge.net>
config.sub: replace POSIX $( ) with classic ` ` throughout
This is in line with the recent config.guess change in commit
d70c4fa934de164178054c3a60aaa0024ed07c91.
The patch was generated using patch-6.gawk script introduced in that
commit.
* config.sub: Revert POSIX command substitutions to classic form.
2021-06-04 Vineet Gupta <Vineet.Gupta1@synopsys.com>
Recognize arc32
This is the 32-bit variant of ARCv3 ISA (which is not compatible with the
32-bit ARCv2 ISA)
| make check
| cd testsuite && bash config-guess.sh && rm uname
| PASS: config.guess checks (136 tests)
| cd testsuite && bash config-sub.sh
| PASS: config.sub checks (864 tests)
| PASS: config.sub idempotency checks (801 tests)
| PASS: config.sub canonicalise each config.guess testcase (136 tests)
* config.guess (arc32:Linux:*:*): Recognize.
* config.sub (arc32): Likewise.
2021-05-27 Jacob Bachmeyer <jcb@gnu.org>
Remove automatic patch generators
These tools have served their purposes and need not be kept outside of
the repository history any longer. This patch as a diff also collects
the contents of the various tools in one convenient place.
* patch-1.gawk: Remove.
* patch-3.gawk: Likewise.
* patch-6.gawk: Likewise.
2021-05-26 Jacob Bachmeyer <jcb@gnu.org>
config.guess: manual fixups after previous automatic patch
The tool could not handle command substitutions that span lines, but
fortunately there were only two such substitutions in the script.
The test for which universe is active on Pyramid is rewritten into a
case block because it was the only use of a command substitution as an
argument to the test command, which would require quoting.
* config.guess: Rewrite "if" for Pyramid systems to "case".
2021-05-26 Jacob Bachmeyer <jcb@gnu.org>
config.guess: replace POSIX $( ) with classic ` ` throughout
The previous replacement of backticks with POSIX command substitutions
was ill-considered and illogical: this script recognizes many archaic
machine types that probably never had POSIX shells, therefore it needs
to be able to run successfully under pre-POSIX shells.
This patch was generated using the included GNU Awk program.
* config.guess: Revert POSIX command substitutions to classic form.
* patch-6.gawk: Store the tool that produced the automated patch.
2021-05-26 Jacob Bachmeyer <jcb@gnu.org>
config.guess: manual fixup after previous automated patches
This patch provides the special handling for the GNU system. As these
were two small and unique edits, they were not included in the scripts.
This patch also cleans up other minor issues that must be addressed
before reverting to classic command substitutions and updates
"shellcheck" directives to account for changes in this script and the
change in "shellcheck" towards reporting individual portability issues.
2021-05-26 Jacob Bachmeyer <jcb@gnu.org>
config.guess: automatic fixups after previous automated patch
This patch was generated using the following command:
sed -i config.guess \
-e '/="[^"]\+"\(-\|$\)/s/="\([^"([:space:])]\+\)"/=\1/' \
-e '/="[^"]\+"[[:alnum:]]/s/="\$\([^([:space:])]\+\)"/=${\1}/' \
-e \
'/\$(echo[^|]\+|/s/\([^[:space:]]\)[[:space:]]*|[[:space:]]*sed/\1 | sed/g'
* config.guess: Remove unneeded quotes in other variable assignments,
standardize spacing for "echo ... | sed" substitutions.
2021-05-26 Jacob Bachmeyer <jcb@gnu.org>
config.guess: remove unneeded quotes and factor command substitutions
This is further cleanup and simplifies some constructs that can confuse
Emacs' syntax highlighting while generally reducing required quoting.
This patch was generated using the included GNU Awk program.
* config.guess: Remove unneeded variable quotes and factor out command
substitutions when setting GUESS.
* patch-3.gawk: Store the tool that produced the automated patch.
2021-05-25 Jacob Bachmeyer <jcb@gnu.org>
config.guess: manual fixups after previous automatic patch
* config.guess: Adjust a few "leftover" cases that the tool could not
easily recognize and fixes comment indentation in a few other special
cases.
2021-05-25 Jacob Bachmeyer <jcb@gnu.org>
config.guess: use intermediate variable with uname results
This will allow quoting to be significantly simplified in another
pass through the file.
This patch was generated using the included GNU Awk program.
* config.guess: Use GUESS variable to hold results of uname analysis.
* patch-1.gawk: Store the tool that produced the automated patch.
2021-05-25 Jacob Bachmeyer <jcb@gnu.org>
config.guess: introduce intermediate variable with uname results
This will allow quoting to be significantly simplified in another
pass through the file.
* config.guess: Introduce GUESS variable to hold results of uname analysis.
2021-05-24 Dmitry V. Levin <ldv@altlinux.org>
config.guess: fix shellcheck warning SC2154
While, according to Plan 9 documentation, the environment variable
$cputype is set to the name of the kernel's CPU's architecture,
shellcheck warns that cputype is referenced but not assigned.
Be on the safe side and do not use cputype if it is not defined
or empty.
* config.guess (*:Plan9:*:*): Fix shellcheck warning SC2154.
2021-05-24 Dmitry V. Levin <ldv@altlinux.org>
config.guess: remove redundant quotes in case commands
According to the GNU Autoconf Portable Shell Programming manual,
the Bourne shell does not systematically split variables and back-quoted
expressions, in particular on the right-hand side of assignments and in
the argument of 'case'.
The change is made automatically using the following command:
$ sed -E -i 's/(\<case )"(\$[^"]+)"( in\>)/\1\2\3/' config.guess
* config.guess: Simplify case commands by removing quotes around the
argument.
Suggested-by: Jacob Bachmeyer <jcb@gnu.org>
2021-05-24 Dmitry V. Levin <ldv@altlinux.org>
config.guess: simplify exit status workaround on alphaev67-dec-osf5.1
Commit 29865ea8a5622cdd80b7a69a0afa78004b4cd311 introduced an exit trap
reset before exiting to avoid a spurious non-zero exit status on
alphaev67-dec-osf5.1. Simplify that code a bit by moving the exit trap
reset around.
* config.guess (alpha:OSF1:*:*): Reset exit trap earlier.
* doc/config.guess.1: Regenerate.
2021-10-29 Eli Zaretskii <eliz@gnu.org>
* gdb/doc/gdb.texinfo (Command Options): (Data): Document
'-memory-tag-violations'. Update the example.
2021-09-28 Andrew Burgess <andrew.burgess@embecosm.com>
* src-release.sh (GDB_SUPPPORT_DIRS): Add libbacktrace.
2021-09-27 Nick Alcock <nick.alcock@oracle.com>
PR libctf/27967
* libtool.m4 (LT_PATH_NM): Try BSDization flags with a user-provided
NM, if there is one. Run nm on itself, not on /dev/null, to avoid
errors from nms that refuse to work on non-regular files. Remove
other workarounds for this problem. Strip out blank lines from the
nm output.
2021-09-27 Nick Alcock <nick.alcock@oracle.com>
PR libctf/27967
* libtool.m4 (lt_cv_sys_global_symbol_pipe): Augment symcode for
Solaris 11.
0.12.11
Added new variant of FileCache, SeparateBodyFileCache, which uses less memory by storing the body in a separate file than metadata, and streaming data in and out directly to/from that file.
Version 68.0.0 "The Curtain" 2022-05-22
New features and enhancements
* mkvmerge: HDMV PGS subtitles: mkvmerge now tries to detect bogus timestamps
(where the current timestamp is two hours or more after the previous
timestamp) & correct them to something more sensible (1s after the previous
timestamp). That way one bogus timestamp cannot cause the rest of the frames
to not be interleaved properly with the other audio & video
packets.
* mkvmerge: added colour information, colour mastering meta information &
video projection information properties to the JSON identification
format. The properties are reported for container types for which mkvmerge
supports reading them (Matroska & MP4). The JSON identification format
version number has been bumped to v15.
* MKVToolNix GUI: multiplexer: added controls for all the video colour
information & the video projection information.
Bug fixes
* mkvmerge: SRT reader: entries with a duration of 0 or less will now be
skipped.
* mkvpropedit, MKVToolNix GUI's chapter & header editors: fixed an invalid
memory access when trying to update existing Matroska files whose EBML Head
element had a "size" field length of eight bytes, and where rewriting said
element would shrink the element by one byte. Files created by gstreamer fit
the first part whereas the second depends on the changes requested by the
user.
* mkvpropedit, MKVToolNix GUI's chapter & header editors: fixed the programs
not handling having to remove EBML void elements at the end of the file
correctly and consequently aborting.
* MKVToolNix GUI: the GUI now uses almost all SVG icons, allowing proper
scaling even for scaling factors such as 125%.
* MKVToolNix GUI: when compiled with Qt 5 the character set of INI files is
forced to UTF-8 in order to fix reading INI files written by a version
compiled with Qt 6.
Build system changes
* Qt's SVG library is now required.
Changes in Version 1.8-10
o The transform() method now internally uses a list of zoo series (as opposed
to a data.frame of numeric variables, as used in previous versions). This
means that the transformations can really operate on full zoo series.
o Added MATCH() methods for classes "Date", "POSIXct", and "POSIXlt", all
of which essentially match the underlying numeric vector (suggested by
Kurt Hornik).
o In zooreg() the "ts.eps" argument is now also used (in squares) as the
tolerance in the all.equal() comparisons used to determine the underlying
regular time grid.
v0.18.0
-All features deprecated in 0.17.0 have been removed.
-Within double quotes, \x followed by two hexadecimal digits and \ followed by
three octal digits now encode an individual byte, rather than a codepoint.
-Using a lone try without except or finally is now forbidden; this does not do
anything useful and is almost certainly an incorrect attempt to suppress an
exception.
Deprecated features will be removed in 0.19.0.
The following deprecated features trigger a warning whenever the code is parsed
or compiled, even if it is not executed:
-The legacy temporary assignment syntax (e.g. a=foo echo $a) is deprecated.
Use the new tmp command instead (e.g. tmp a = foo; echo $a).
-The clause to catch exceptions in the try special command is now spelt with
catch; the old keyword except is deprecated.
Notable bugfixes
-The output longer than terminal width is now shown fully on Windows Terminal.
-Changing directories in the navigation mode now correctly runs hooks and
updates $E:PWD.
Notable new features
-Elvish now ships a builtin language server that can be started with
elvish -lsp.
-A new flag: module for parsing command-line flags.
-A new tmp special command for doing temporary assignments.
-A new defer command to schedule a function to be run when the current closure
finishes execution.
-A new call command to call a command, using a list for and a map for options.
-A new $unix:rlimits variable allows manipulation of resource limits.
v0.17.0
Breaking changes
-Attempting to assign to a read-only variable (e.g. set nil = x) is now a
compile-time error rather than an exception.
Deprecated features - Deprecated features will be removed in 0.18.0.
The following deprecated features trigger a warning whenever the code is parsed
or compiled, even if it is not executed:
-The dir-history command is deprecated. Use store:dirs instead.
-The legacy assignment form is deprecated. Depending on whether the left-hand
variable already exists or not, use var or set instead. Use the upgrader to
migrate scripts.
-The lambda syntax that declares arguments and options within [] before { has
been deprecated. The new syntax now declares arguments and options within a
pair of |, after {. Use the upgrader to migrate scripts. See (#664).
-Use of the special namespace local: is deprecated.
-If you are using local: to reference variables (e.g. echo $local:x),
local: is never necessary in the first place since Elvish always resolves
local variables first, so just remove it.
-If you are using local: when assigning variables (e.g. local:x = foo),
local: makes sure that a new variable is created; use the var special
command instead.
-Use of the special namespace up: is deprecated.
-If you are using up: to access a non-shadowed variable in an outer scope,
up: is not necessary; just remove it.
-If you are using up: to access a shadowed variable in an outer scope, rename
the variables to have different names.
-Use of a leading empty namespace in a variable name (e.g. $:x) is deprecated.
Since $:x is always equivalent to $x anyway, just remove the : prefix.
Notable new features
New features in the language:
-A new special command pragma. The only supported pragma now is unknown
command; using pragma unknown command = disallow turns off the default
behavior of treating unknown commands as external commands.
-A new special command coalesce.
New features in the interactive editor:
-Editor modes now form a stack, instead of being mutually exclusive.
For example, it is now possible to start a minibuf mode within a completion
mode, and vice versa.
New features in the standard library:
-The store: module now exposes all functionalities of Elvish’s persistent store.
-New compare command to compare numbers, strings, and lists (#1347), in a
consistent way as the order builtin.
-The range command now supports counting down.
Performance improvements:
-The overhead of executing pipelines consisting of a single form (i.e. a simple
command with no pipes) has been reduced. A code chunk containing just nop
command now executes 4 times as fast as before. Thanks to kolbycrouch for
suggesting this optimization!
For changes between 0.16.1 and 0.17.0 check https://elv.sh/blog/
1.1.0 2022-05-21 Release
--------------------------
Bug fixes:
- CORE: Authentication without password is now rejected (reported by
Marcel Logen).
- MAIN: Potential deadlocks in thread-safe replacement functions fixed.
- GUI: State machine modified to avoid race condition when articles are
marked read while group is not completely loaded yet.
New features and improvements:
- GUI: Option to automatically check for new articles added (an interval
in minutes can be configured with the new "refresh_interval" entry in
configfile).
- GUI: Checkbox "Tools->Debug mode" removed. Debug mode must be enabled
with command line option "-debug".
- NNTP: Protocol logfile is only created if debug mode was enabled (and
unlinked otherwise, if present). "Tools->Protocol console" window now
requires debug mode.
- GUI: Support for estimated article count in subscription window added
- GUI: Support for group descriptions in subscription window added
- NNTP: Support for LIST NEWSGROUPS command (RFC 3977) added
- GUI: Support for subscription proposals from server added
(offered to user after server was changed and group list is empty)
- CORE: Support for subscription proposals from server added
- NNTP: Support for LIST SUBSCRIPTIONS command (RFC 6048) added
- TLS: Support for LibreSSL 3.5 API added
- GUI: File save operations now suggest a pathname in the file selection
window.
- GUI: File save operations now ask the user before an existing file is
overwritten.
- CORE: Function added to suggest a pathname (created from home
directory, program name and timestamp).
- CORE: Message-IDs are now generated with algorithm A3 (uses a modified
Base64 alphabet with "/" replaced by "-"). This allows to generate
RFC 5538 conformant "news"-URIs without percent-encoding.
Packaged in wip by mjturner.
Thanks to wiz for some hints.
Amfora aims to be the best looking Gemini client with the most features... all
in the terminal. It does not support Gopher or other non-Web protocols
v1.11.1
* Protect converter calls in iter_decode()/iter_encode()
* Extend XSD type matching for code generators (fallback to schema types with a local name)
Version 2.3.7-post1
Drop minimum required six version for the love of good old pip under Python 2, and updated code to be compatible with older six versions. Previous 2.3.7 releases were yanked to avoid potential issues.
Version 2.3.7-post0
Set minimum required six version.
Bug fixes
-fix HEAD request failing on compressed response
Other
-Configurable install dir for install.sh via XH_BINDIR env variable
-Use exit status 2 and 6 for request timeout and too many redirects
errors respectively
Features
-Added new --plain, --no-characters, and --no-position flags
-Allow hex numbers and units for --block-size argument
Other
-Added a man page
not installed on NetBSD for now,
see https://github.com/sharkdp/hexyl/issues/159
-Mention ability to specify length in hex
--length and --bytes are now marked as conflicting command-line options
Version 55.0
------------
Released on 2022-05-12.
This version also includes the changes from unstable b1 version listed
below.
Bug fixes:
* Fix the vertical position and available height of absolute boxes
* Minor fixes for multi-column layout
* Don’t stop rendering SVG when CSS parsing fails
* Fix sequential footnotes that could disappear when overflowing
* Fix position of absolute boxes with right-to-left direction
* Fix relative paths for SVG files stored as data URLs
Version 55.0b1
--------------
Released on 2022-04-15.
**This version is experimental, don't use it in production. If you find bugs,
please report them!**
Dependencies:
* Python 3.7+ is now needed, Python 3.6 is not supported anymore
Features:
* Support ``word-break: break-all``
* Support column breaks
* Allow reproducible PDF generation
Bug fixes:
* Handle ``inherit`` in shorthand properties
* Space out no-repeat patterns
* Avoid invalid PDF operators when drawing SVG text
* Don’t output footnotes before their call sites
* Prevent infinite loops in multi-column layout
* Fix position of absolute boxes in right-to-left contexts
* Draw borders around absolute replaced boxes
* Fix skip stacks for columns
* Better support of nested ``text-decoration`` properties
* Fix absolute blocks in lines
* Clear adjoining margins when a container’s child doesn’t fit
Performance:
* Improve tests speed
* Improve fonts management
* Improve column layout speed
* Cache ``ch`` and ``ex`` units calculations
Version 54.3
------------
Released on 2022-04-04.
Bug fixes:
* Support position: absolute in footnotes
* Fix discarded text-align values
Version 54.2
------------
Released on 2022-02-27.
Bug fixes:
* Always store parent blocks children as lists
* Fix float rounding errors
* Ignore unknown glyphs
* Fix line break when breaks occur between a nbsp and an inline block
* Always set the child index
* Fix patterns with use tags
Version 54.1
------------
Released on 2022-01-31.
Features:
* Handle break-inside: avoid on tr tags
Bug fixes:
* Handle absolute children in running elements
* Handle invalid values in text-align
* Handle absolute flex boxes
Version 54.0
------------
Released on 2022-01-08.
This version also includes the changes from unstable b1 version listed
below.
Bug fixes:
* Always use absolute paths to get hrefs in SVG
* Fix many rendering problems of broken tables
* Fix support of fonts with SVG emojis
Version 54.0b1
--------------
Released on 2021-12-13.
**This version is experimental, don't use it in production. If you find bugs,
please report them!**
Dependencies:
* html5lib 1.1+ is now needed.
New features:
* Support footnotes, with financial support from Code & Co.
* Handle parallel flows for floats, absolutes, table-cells
* Support ``text-align-last`` and ``text-align-all`` properties
* Draw SVG and PNG emojis
* Support ``overflow-wrap: anywhere``
* Add environment variable to set DLL folder on Windows
Performance:
* Cache SVG ``use`` tags
* Encode non-JPEG images as PNGs instead of JPEG2000s
Bug fixes:
* Don’t use ``text-transform`` text for content-based uses
* Don’t serialize and parse again inline SVG files
* Correctly handle whitespaces in bookmark labels
* Fix column height with ``column-span`` content
* Fix absolutely positioned boxes in duplicated pages
* Fix ``target-counter`` attribute in flex items
* Don’t draw empty glyphs
* Don’t crash when font size is really small
Documentation:
* Fix typo
Packaging:
* The source package does not include a ``setup.py`` file anymore.
1.22.4:
TYP, BUG: Fix ``np.lib.stride_tricks`` re-exported under the...
TST: Bump mypy from 0.931 to 0.940
MAINT: Explicitly re-export the types in ``numpy._typing``
MAINT: Specify sphinx, numpydoc versions for CI doc builds
BUG: Fix typos
ENH, BLD: Fix math feature detection for wasm
MAINT: Fix failing simd and cygwin tests.
MAINT: Fix failing Python 3.8 32-bit Windows test.
BUG: add linux guard
BUG: Allow legacy dtypes to cast to datetime again
BUG: Make mmap handling safer in frombuffer
BUG: Stop using PyBytesObject.ob_shash deprecated in Python 3.11.
ENH: Introduce numpy.core.setup_common.NPY_CXX_FLAGS
BUG: Ensure compile errors are raised correclty
BUG: Fix segmentation fault
MAINT: Update doc requirements
MAINT: Mark ``npy_memchr`` with ``no_sanitize("alignment")`` on clang
DOC: Proposal - make the doc landing page cards more similar...
MAINT: Update Cython version to 0.29.30.
BUG: Fix GCC error during build configuration
REL: Prepare for the NumPy 1.22.4 release.
MAINT: Skip tests that fail on PyPy.
==============
Version 2.54.3
==============
- #866 - Fix detection of gi-docgen (David King, Jan Alexander Steffens).
- Install the generated documentation in the correct place so that
Devhelp can find it (thanks to Jan Tojnar for pointing this out).
==============
Version 2.54.2
==============
- #823 - Fix regressions when computing element geometries.
- Add a --disable-gtk-doc option for the configure script, so people
can disable generating documentation for cross-compiling (Matt
Turner).
- MSVC: Support generating documentation, and passing introspection
paths (Chun-wei Fan)
==============
Version 2.54.1
==============
This release just has some build-time fixes.
- Fix oversight in the Minimum Supported Rust Version (MSRV) - this
release requires Rust 1.56 or later. This has been true since
librsvg 2.53.1, but it was not checked correctly. (Matt Turner)
- #859 - Make rst2man and gi-docgen optional. (Kleis Auke Wolthuizen)
- #856 - Fix documentation comments.
==============
Version 2.54.0
==============
This is a summary of the 2.53.x release notes; you can also read them
for more detail. Not many new features; we've been working on
infrastructure and documentation.
- Librsvg now supports SVG2 geometry properties for these elements:
rect, circle, ellipse, image, svg (Jeremias Ortega).
- #721 - Catch circular references when rendering patterns.
- The C API documentation now uses gi-docgen instead of gtk-doc.
Rsvg-convert's man page is now converted to reStructuredText instead
of troff.
- The "Recommendations for applications" chapter in the documentation
is much improved!
==============
Version 2.53.2
==============
- #851 - Output filled text as text for PDF; fixes regression due to
outputting all text as paths.
- Fix taller-than-wide proportional scaling and size limiting in
rsvg-convert.
- #772, #773, #774, #775, #776 - Implement SVG2 geometry properties
for these elements: rect, circle, ellipse, image, svg (Jeremias
Ortega).
- #450 - Fix potential unaligned accesses in surface iterators
(Michael Howell).
- Actually use GDK_PIXBUF_MODULEDIR when calling
gdk-pixbuf-query-loaders (Fabrice Fontaine).
- Windows build fixes (Chun-wei Fan).
- Add links to functions and types throughout the C API documentation.
==============
Version 2.53.1
==============
While it is not a user-visible change, Jordan Petridis has ported
librsvg's Continuous Integration (CI) infrastructure to use
Freedesktop CI Templates. This lets us test librsvg easily on
different environments. If you want your environment tested, now is
the time to add it!
- #599 - Fix incorrect text rendering when text has different scales
in the X/Y axes. This regressed after librsvg 2.52.5, when Pango
had to revert its fix for the same bug. Now librsvg renders all
text as paths, and does the scaling itself. Please file a bug if
you have evidence that this presents a performance problem for you.
- Update to the latest gtk-rs release (Bilal Elmoussaoui).
- Port to Freedesktop CI Templates (Jordan Petridis).
of troff.
- The "Recommendations for applications" chapter in the documentation
is much improved!
==============
Version 2.53.2
==============
- #851 - Output filled text as text for PDF; fixes regression due to
outputting all text as paths.
- Fix taller-than-wide proportional scaling and size limiting in
rsvg-convert.
- #772, #773, #774, #775, #776 - Implement SVG2 geometry properties
for these elements: rect, circle, ellipse, image, svg (Jeremias
Ortega).
- #450 - Fix potential unaligned accesses in surface iterators
(Michael Howell).
- Actually use GDK_PIXBUF_MODULEDIR when calling
gdk-pixbuf-query-loaders (Fabrice Fontaine).
- Windows build fixes (Chun-wei Fan).
- Add links to functions and types throughout the C API documentation.
==============
Version 2.53.1
==============
While it is not a user-visible change, Jordan Petridis has ported
librsvg's Continuous Integration (CI) infrastructure to use
Freedesktop CI Templates. This lets us test librsvg easily on
different environments. If you want your environment tested, now is
the time to add it!
- #599 - Fix incorrect text rendering when text has different scales
in the X/Y axes. This regressed after librsvg 2.52.5, when Pango
had to revert its fix for the same bug. Now librsvg renders all
text as paths, and does the scaling itself. Please file a bug if
you have evidence that this presents a performance problem for you.
- Update to the latest gtk-rs release (Bilal Elmoussaoui).
- Port to Freedesktop CI Templates (Jordan Petridis).
- Visual Studio builds can work from a git checkout now (Chun-wei Fan)
- Windows build fixes (Martin Hertz, Chun-wei Fan)
==============
Version 2.53.0
==============
This is the first release in the new development series. There are no
new features, just changes to how the documentation is built.
The man page for rsvg-convert is now generated from a reStructuredText
document, and the C API reference is generated using gi-docgen.
Please make sure you install python3-docutils (for rst2man) and
gi-docgen before compiling librsvg from a tarball.
- #755 - rsvg-convert's man page is now generated from reStructuredText.
- #827 - Move C API reference to gi-docgen.
- Test suite updates (Michael Howell).
- Link against bcrypt for Visual Studio builds (Martin Hertz).