Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ghostscript fails to generate a png from a pdf #122

Closed
jfqd opened this issue Jun 19, 2018 · 3 comments
Closed

ghostscript fails to generate a png from a pdf #122

jfqd opened this issue Jun 19, 2018 · 3 comments

Comments

@jfqd
Copy link

jfqd commented Jun 19, 2018

I am struggling to generate a png from a given pdf with ghostscript 9.23 (agpl) on SmartOS 2018Q1.

gs -dSAFER -dBATCH -dNOPAUSE -dNOPROMPT -dMaxBitmap=500000000 -dAlignToPixels=0 -dGridFitTT=2 -sDevice=pngalpha -dTextAlphaBits=4 -dGraphicsAlphaBits=4 '-r300x300' -dFirstPage=1 -dLastPage=1 -sOutputFile=a.png a.pdf

Outputs:

GPL Ghostscript 9.23 (2018-03-21)
Copyright (C) 2018 Artifex Software, Inc.  All rights reserved.
This software comes with NO WARRANTY: see the file PUBLIC for details.
GPL Ghostscript 9.23: Cannot open X display `(null)'.
**** Unable to open the initial device, quitting.

If I set export GS_DEVICE=display before, I get the following output:

GPL Ghostscript 9.23 (2018-03-21)
Copyright (C) 2018 Artifex Software, Inc.  All rights reserved.
This software comes with NO WARRANTY: see the file PUBLIC for details.
   **** Warning: considering '0000000000 XXXXX n' as a free entry.
   **** Warning: considering '0000000000 XXXXX n' as a free entry.
Processing pages 1 through 1.
Page 1
GPL Ghostscript 9.23: Unrecoverable error, exit code 255

Running the same command on my macOS 10.13 with the brew installed ghostscript works fine:

GPL Ghostscript 9.23 (2018-03-21)
Copyright (C) 2018 Artifex Software, Inc.  All rights reserved.
This software comes with NO WARRANTY: see the file PUBLIC for details.
Processing pages 1 through 1.
Page 1
%%BoundingBox: 42 0 399 596
%%HiResBoundingBox: 42.480002 0.000000 398.160015 595.200023

The following packages are installed on the SmartOS vm:

ImageMagick-7.0.7.26 Package for display and interactive manipulation of images
adobe-cidfonts-20000901 Adobe CID-keyed O'Reilly fonts for CJK
adobe-cmaps-20060615 Adobe CMap files for CJK
apr-1.6.3            Apache Portable Runtime
apr-util-1.6.1nb1    Apache Portable Runtime utilities
autogen-5.18.10nb2   The Automated Text and Program Generation Tool
binutils-2.26.1      GNU binary utilities
bmake-20150505       Portable (autoconf) version of NetBSD 'make' utility
boehm-gc-7.6.2nb1    Garbage collection and memory leak detection for C and C++
bootstrap-mk-files-20170802 *.mk files for the bootstrap bmake utility
bsdinstall-20160108  Portable version of the BSD install(1) program
bzip2-1.0.6nb1       Block-sorting file compressor
changepass-1.3.3     Simple tool to set user passwords non-interactively
curl-7.59.0          Client that groks URLs
cwrappers-20180325   pkgsrc compiler wrappers
cyrus-sasl-2.1.26nb7 Simple Authentication and Security Layer
db4-4.8.30           Berkeley DB version 4 from Oracle
dtracetools-1.0      DTraceTools for Joyent SmartMachines
expat-2.2.4nb1       XML parser library written in C
fftw-3.3.7           Collection of fast C routines to compute DFTs
fontconfig-2.13.0nb1 Library for configuring and customizing font access
freetype2-2.9        Font rendering engine and library API
gcc49-4.9.4nb6       The GNU Compiler Collection (GCC) - 4.9 Release Series
gcc49-libs-4.9.4nb6  The GNU Compiler Collection (GCC) support shared libraries
gdbm-1.14.1          The GNU database manager
gettext-lib-0.19.8.1 Internationalized Message Handling Library (libintl)
ghostscript-9.05nb11 Meta-package for installing the preferred ghostscript version
ghostscript-agpl-9.23 Postscript interpreter
ghostscript-cidfonts-20000901nb6 CIDFont resources for Ghostscript
ghostscript-cmaps-20020913nb3 CMap resources for Ghostscript
ghostscript-fonts-8.11nb3 Postscript fonts for Aladdin Ghostscript
giflib-5.1.4         GIF image format library
git-base-2.16.3      GIT Tree History Storage Tool (base package)
gmake-4.1nb3         GNU version of 'make' utility
gmp-6.1.2            Library for arbitrary precision arithmetic
gnupg-1.4.22nb2      GNU Privacy Guard, public-Key encryption and digital signatures
gnutls-3.6.0         GNU Transport Layer Security library
grep-3.1nb1          GNU grep
gsed-4.4             GNU implementation of sed, the POSIX stream editor
guile20-2.0.14nb2    Official extension language for the GNU operating system (2.0 branch)
icu-60.2             Robust and full-featured Unicode services
jbig2dec-0.14        JBIG2 decoder library
jbigkit-2.1          JBIG-KIT lossless image compression library
lcms2-2.8            Little Color Management System - a color management library
libICE-1.0.9nb1      Inter Client Exchange (ICE) library for X
libSM-1.2.2nb1       X Session Management Library
libX11-1.6.5nb1      Base X libraries from modular Xorg X11
libXau-1.0.8nb1      Authorization Protocol for X from X.org
libXdmcp-1.1.2nb1    X Display Manager Control Protocol library from X.org
libXext-1.3.3nb1     X Extension library
libXmu-1.1.2         X Miscellaneous Utilities library
libXt-1.1.5nb1       X Toolkit Intrinsics library
libarchive-3.3.2     Library to read/create different archive formats
libatomic_ops-7.6.2nb1 Multi-platform library of atomic operations by Hans Boehm
libcfg+-0.7.0        Command line and configuration file parsing library
libevent-2.1.8nb1    Asynchronous event notification library
libffi-3.2.1nb4      Foreign function interface
libgcrypt-1.8.2      GNU cryptographic library
libgpg-error-1.28nb1 Definitions of common error values for all GnuPG components
libiconv-1.14nb3     Character set conversion library
libidn-1.33          Internationalized Domain Names command line tool
libidn2-2.0.4        Convert internationalized domain names to/from ASCII Encoding
libjpeg-turbo-1.5.0  Accelerated libjpeg with SIMD instructions
libltdl-2.4.6        Generic shared library support (libltdl abstraction library)
libpaper-1.1.24      Paper size handling library
libpcap-1.8.1        System-independent interface for user-level packet capture
libssh2-1.8.0        SSH2 protocol library
libtasn1-4.12        ASN.1 structure parser library
libunistring-0.9.9   Unicode string library
libuuid-2.31         Generate unique identifiers for objects
libwebp-0.6.1        WebP image format library and tools
libxcb-1.13          X protocol C-language Binding
libxml2-2.9.8        XML parser library from the GNOME project
libxslt-1.1.32       XSLT parser library from the GNOME project
libyaml-0.1.7        YAML 1.1 parser and emitter written in C
lzo-2.10             Portable lossless data compression library
mcookie-2.31         Tool for creating cookies for xauth(1)
mit-krb5-1.14.6      MIT Kerberos 5 authentication system
mozilla-rootcerts-1.0.20180111 Root CA certificates from the Mozilla Project
nawk-20121220nb1     Brian Kernighan's pattern-directed scanning and processing language
nbsed-20120308       NetBSD-current's sed(1)
ncurses-6.0nb5       CRT screen handling and optimization package
ncursesw-6.0nb4      Wide character CRT screen handling and optimization package
nettle-3.4           Cryptographic library
nghttp2-1.31.0       Implementation of HTTP/2 in C
nicstat-1.92         Network traffic statics utility for Solaris and Linux
nodejs-9.8.0         V8 JavaScript for clients and servers
nullmailer-2.1nb1    Simple relay-only mail transport agent
openjpeg-2.3.0       JPEG 2000 library
openldap-client-2.4.45 Lightweight Directory Access Protocol libraries and client programs
openssl-1.0.2o       Secure Socket Layer and cryptographic library
p5-Authen-SASL-2.16nb5 Perl module to handle SASL authentication
p5-Crypt-SSLeay-0.72nb4 Crypt::SSLeay - OpenSSL glue that provides LWP https support
p5-Digest-HMAC-1.03nb7 Perl5 module for HMAC
p5-Email-Valid-1.202nb1 Perl5 module for testing validity of an email address
p5-Encode-Locale-1.05nb3 Determine the locale encoding for Encode
p5-Error-0.17025     Perl extension module for try/throw/catch exception handling
p5-Exporter-Tiny-1.000000nb1 Exporter with the features of Sub::Exporter but only core dependencies
p5-File-Listing-6.04nb6 Perl 5 module providing a directory parser
p5-Filter-1.58       Perl5 classes representing a number of source filters
p5-GSSAPI-0.28nb8    Perl extension providing access to the GSSAPIv2 library
p5-HTML-Parser-3.72nb2 Perl5 module to parse HTML text documents
p5-HTML-Tagset-3.20nb9 Perl5 module of data tables useful in parsing HTML
p5-HTTP-Cookies-6.04 HTTP cookie jars
p5-HTTP-Daemon-6.01nb6 Simple http server class
p5-HTTP-Date-6.02nb6 Perl 5 module providing date conversion routines
p5-HTTP-Message-6.15 Construct HTTP style messages
p5-HTTP-Negotiate-6.01nb6 Negotiate HTTP service parameters
p5-IO-CaptureOutput-1.11.04nb3 Capture STDOUT and STDERR from Perl code, subprocesses, or XS
p5-IO-HTML-1.001nb3  Open an HTML file with automatic charset detection
p5-IO-Socket-INET6-2.72nb3 Perl object interface for AF_INET/AF_INET6 domain sockets
p5-IO-Socket-SSL-2.056 Perl5 SSL socket interface class
p5-LWP-MediaTypes-6.02nb6 Guess media type for a file or a URL
p5-LWP-Protocol-https-6.07nb1 Provide https support for LWP::UserAgent
p5-LWP-UserAgent-Determined-1.07nb3 Perl5 virtual browser that retries errors
p5-List-MoreUtils-0.428 Provide the stuff missing in List::Util
p5-List-MoreUtils-XS-0.428 Provide compiled List::MoreUtils functions
p5-MailTools-2.20    Perl5 modules related to mail applications
p5-Mozilla-CA-20180117 Mozilla's CA cert bundle for Perl
p5-Net-CIDR-0.18nb3  Perl5 module to manipulate IPv4/IPv6 netblocks in CIDR notation
p5-Net-DNS-1.15      Perl5 module for DNS resolution
p5-Net-Domain-TLD-1.75nb1 Work with TLD names
p5-Net-HTTP-6.17     Perl 5 module for low-level HTTP connections (client)
p5-Net-IP-1.26nb5    Perl extension for manipulating IPv4/IPv6 addresses
p5-Net-LibIDN-0.12nb9 Perl bindings for GNU Libidn
p5-Net-SMTP-SSL-1.04nb1 Perl5 module providing SSL support for Net::SMTP
p5-Net-SSLeay-1.85   Perl5 module for using OpenSSL
p5-Net-Server-2.009  Perl5 modules for network services engine
p5-Path-Class-0.37nb1 Cross-platform path specification manipulation
p5-Socket6-0.28nb1   Perl5 module to support getaddrinfo() and getnameinfo()
p5-Switch-2.17nb1    Switch statement for Perl
p5-Text-Balanced-2.03nb3 Extract delimited text sequences from strings
p5-Time-HiRes-1.9758 Perl5 module for high resolution time, sleep, and alarm
p5-TimeDate-2.30nb4  Perl5 TimeDate distribution
p5-Try-Tiny-0.30     Minimal try/catch with proper preservation of $@
p5-URI-1.73          Perl5 Uniform Resource Identifiers class (URI, RFC 2396)
p5-WWW-RobotRules-6.02nb6 Perl 5 module database of robots.txt-derived permissions
p5-libwww-6.33       Perl5 library for WWW access
patch-2.7.6          Patch files using diff output
pcre-8.42            Perl Compatible Regular Expressions library
pcre2-10.30nb1       Perl Compatible Regular Expressions library (major version 2)
perl-5.26.1nb2       Practical Extraction and Report Language
pkg_alternatives-1.6 Generic wrappers for programs with similar interfaces
pkg_install-20180325 Package management and administration tools for pkgsrc
pkg_install-info-4.5nb3 Standalone GNU info file installation utility
pkgconf-1.4.1nb1     API-driven pkg-config replacement
pkgin-0.9.4nb8       Apt / yum like tool for managing pkgsrc binary packages
pkgsrc-gnupg-keys-20170418 GnuPG keys for pkgsrc infrastructure
png-1.6.34           Library for manipulating PNG images
py27-expat-2.7.14    Python interface to expat
py27-pip-9.0.3       Installs Python packages as an easy_install replacement
py27-setuptools-39.0.1 New Python packaging system
py27-sqlite3-2.7.14nb11 Built-in sqlite support for Python 2.5 and up
python27-2.7.14      Interpreted, interactive, object-oriented programming language
readline-7.0         GNU library that can recall and edit previous input
smtools-20160926     Joyent tools relevant to SmartOS and SmartMachines
spiped-1.5.0nb1      Tool for creating symmetrically encrypted and authenticated pipes
sqlite3-3.22.0       SQL Database Engine in a C Library
sudo-1.8.22          Allow others to run commands as root
tcp_wrappers-7.6.4   Monitor and filter incoming requests for network services
tiff-4.0.9nb2        Library and tools for reading and writing TIFF data files
xauth-1.0.10         X authentication utility
xinit-1.4.0          X init program
xmlcatmgr-2.2nb1     XML and SGML catalog manager
xz-5.2.3nb1          XZ utilities
zlib-1.2.11          General purpose data compression library
zoneinit-1.6.9       Joyent Instance initialization toolchain

What am I doing wrong? Are any dependent packages missing? Or is the build broken?

@jfqd
Copy link
Author

jfqd commented Jun 19, 2018

FYI: ghostscript packages are installed by this mibe: https://github.com/jfqd/mi-qutic-ruby24/blob/master/packages which is based on this mibe: https://github.com/jfqd/mi-qutic-base/blob/master/packages

@jperkin
Copy link
Collaborator

jperkin commented Jun 25, 2018

I looked at reproducing this, and noticed that your command option -sDevice=pngalpha is spelled incorrectly, it should be -sDEVICE=pngalpha. With that changed it works for me. As for why it works on macOS, this is likely because the Mac will perform case-insensitive matching.

Can you confirm?

@jfqd
Copy link
Author

jfqd commented Jun 25, 2018

Unbelievable! You are right! Thanks a lot for figuring this out!

@jfqd jfqd closed this as completed Jun 25, 2018
jperkin pushed a commit that referenced this issue Aug 28, 2018
Yaml:
 * New module, by Brian Exelbierd (GitHub's #66)
 * Fix the behavior with utf-8 files, thanks to Zero King (GitHub's #112)
 * Add the references from the Yaml file to the po file (GitHub's #117)
   Thanks Zero King.

Texinfo:
 * Fix handling of spaces in menu descriptions (Github's #122 and
   Debian's #758851).

Text:
 * Fix the parsing of fortunes files, which had been broken since
   v0.43. The handling has changed a bit, all msgids are now marked as
   "no-wrap", because the word wrap in fortunes files usually matters.
 * Remove the option for parsing AsciiDoc. There has been a standalone
   module for nearly five years, released with v0.45. The AsciiDoc
   option for the Text module has been deprecated since then.
 * Support pandoc's bibliographic information (title, author, date)
   at the beginning of a markdown file. Also fix a trailing newline
   in some markdown titles (Debian's #894977).

Man:
 * Support .MT and .ME macros for e-mail address markup (Debian's #900965).
 * Support .OP, .SY, and .YS macros for command synopses.

Asciidoc:
 * handle macros with empty target, thanks Martijn Thé (GitHub's #54)
 * Fixed a bug that prevented the asciidoc module to parse correctly four
   characters table marks.

Documentation:
 * Fix many typos and other issues found by Yuri Chornoivan (GitHub's #104)
   and Allan Nordhøy (GitHub's #102) while translating.
 * Remove the last references to the alioth servers and mailing lists.

po4a tool:
 * po4a --keep-translations will not remove your existing translations
   if they fall below the threshold. It won't create badly translated
   files either. Use it if you prefer outdated but translated doc to
   updated but not translated doc.

po4a-build tool:
 * Remove it and all related shell scripts and makefile chunks. It is
   deprecated by the po4a tool since a long time, and I could not find
   any usage of po4a-build either in Debian or using search engines.

Translations:
 * New translation: Norwegian Bokmål, thanks Petter Reinholdtsen.
 * Updated: Indonesian, thanks Hori75.
 * Updated: Portuguese (Brazil), thanks Rafael Fontenelle.
 * Updated: French, Martin Quinson using weblate.
 * Updated: Swedish, thanks Anders Jonsson using weblate.
 * Updated: German, thanks Helge Kreutzmann.
 * Updated: Italian, thanks Marco Ciampa.
 * Updated: Dutch, thanks Frans Spiesschaert (Debian's #877248) & weblate.
 * Updated: Portuguese, thanks shshshwhs using weblate.
   Fixed: xml tags in Portuguese, thanks Jean-Noël Avila.
 * Updated: Estonian, thanks Kristjan Räts using weblate.
 * Updated: Ukrainian, thanks Yuri Chornoivan using weblate.
 * Updated: Russian, thanks Igor using weblate.
 * Updated: Ukrainian, thanks Yuri Chornoivan (українська).
 * Updated: Portuguese (Brazil), thanks Rafael Fontenelle.
 * Updated: German, thanks Helge Kreutzmann.
 * Updated: Italian, thanks Marco Ciampa.
 * Updated: French, thanks Jean-Baptiste.
 * Updated: Vietnamese, thanks to Trần Ngọc Quân.

Other:
 * Move to GitHub as the Alioth hosting facility is shutting down.
jperkin pushed a commit that referenced this issue Dec 1, 2018
pkgsrc changes:
 - Switch to www/webkit-gtk (instead of using webkit24-gtk3)
 - Adjust GITHUB_RELEASE to remove the trailing `a', please note that this will
   probably not needed for future releases!

Changes:
1.12.5
------
 * #665: Webkit browser now supplies 'Liferea' component in user agent
 * #664: Added "Mark All As Read" button to headerbar plugin
 * #620: Added flatpak JSON
   (glitsj16)
 * #579: Added item list column drag and drop reordering
   (Yanko Kaneti)
 * #436, #662: Move from GnomeKeyring to libsecret
   (bgermann)
 * Fixes #663: Correct instapaper sharing link
   (Daniel Alexandersen)
 * Fixes #661: Update sharing links
   (Daniel Alexandersen)
 * Fixes #271: Consistent over usage of CPU (trigger by "Next Unread" loop)
   (reported by GreenLunar)
 * #472, #632: Dropping Inoreader support (API broke)

1.12.4
------
 * Fixes #660: Added installable plugin to change accels
   (Lars Windolf)
 * Fixes #654: Segfault on date out of range
   (Leaiz)
 * Fixes #651: Fixes Free Music Archive link in default OPMLs
   (reported by benjbrandall)
 * Fixes #649: Switch from persistent to session-only cookies
   (Daniel Alexandersen)
 * Fixes #645, #646: unread count of vfolder
   (Leaiz)
 * Fixes #637: Extra keywords in .desktop file (syndication; rss; atom)
   (Daniel Alexandersen)
 * Fixes #557: Updating counters for remote sources
   (Leiaz)
 * Updated cookie usage hint in FAQ

1.12.3
------
 * #634: Added setting for custom download commands
   (Leiaz)
 * #614: GTK Headerbar support via plugin
   (Lars Windolf)
 * #608: Refactoring UI code to switch to GAction and GtkBuilder
   Note: this implies not having icons in the main menu anymore
   which were still there for all non-GNOME users (see #626).
   (Leiaz)
 * #589: Item list view column order rework as a preparation for
   possible real column drag&drop. Introduces a new DConf setting
   for the column order.
   (Yanko Kaneti)
 * Fixes #280: Mark read toolbar button always disabled for search folders
   (Lars Windolf, reported by dvahalev)
 * Fixes #591: Please add a safety question when "marking all read"
   (Leiaz, reported by Nudin)
 * Fixes #625: Avoid exception in trayicon.py
   (Lars Windolf)
 * Fixes #627: GnomeKeyring plugin fails to activate when keyring doesn't exist
   (Lars Windolf)
 * Fixes #630: Fix feed list selection after DnD
   (Peter Zaitev)
 * Fixes #633: Big Memory leak in date code
   (Leiaz)
 * Update of Turkish translation (emintufan)
 * Update of French translation (guilieb)


1.12.2
------
 * Adding a plugin installer plugin that allows discovering
   and automatically installing 3rd party plugins
 * #585: Drop language from user agent to increase privacy
   (Daniel Aleksandersen)
 * #583: Add transmission-gtk and aria2 as download tool options
   (Daniel Aleksandersen)
 * #495: New command line option --disable-plugins (-p) to start
   with all plugins disabled.
 * Fixes #610: Liferea not showing up in GNOME Software
   (Yanko Kaneti)
 * Fixes #604: Correctly print error message when failing
   to unlock GNOME keyring
   (ghost)
 * Fixes #602: CSS style for GTK link colors not used
   (reported by pupyc)
 * Fixes #581: Redirect location updates and adds HTTP 308 (RFC 7538) support
   (Daniel Aleksandersen)
 * Fixes #578: Unable to set unread items in bold
   (Leiaz, reported by EverEve)
 * #612: Update of French translation
   (Guillaume Bernard)
 * #596: Update of Swedish translation
   (jony0008)
 * #594: Update of Polish default feed list
   (wmyrda)
 * #584: Fixes broken OPML feed list entries
   (Daniel Aleksandersen)
 * #584: Added Norwegian feed list
   (Daniel Aleksandersen)
 * #577: Fixes newsbin doc typo
   (Daniel Aleksandersen)

1.12.1
------
 * Fixes #562: Lintian spelling errors
   (reported by Paul Gevers)
 * Fixes #563: Appstream data has new format
   (patch by Paul Gevers)
 * Fixes #572: Doesn't remember some sort orders
   (reported by geplus)
 * Fixes #504: Fix assertions/crashes on changing view layouts
   (Leiaz)
 * Fixes #573: Workaround to avoid GtkPaned shrinking
   (Leiaz)
 * #566: Update of Italian translation (Gianvito Cavasoli)
 * #566: Update of Italian default feed list (Gianvito Cavasoli)
 * #514: Update of Indonesian translation (Samsul Ma'arif)
 * #514: Added Indonesian default feed list (Samsul Ma'arif)
 * Update of German translation


1.12.0
------
 * Fixes unhiding from tray icon when activated via GApplication
   (when starting Liferea a 2nd time)
 * #399: Reorder columns in 'Normal' email-like view
   to have the date column always at the end
   (Mikel Olasagasti)
 * #532: Add plugin to make unread feeds titles bold
   (Yanko Kaneti)
 * Workaround for #503: Liferea deanonymize Tor
   (Leiaz)
 * Fixes #450: #546 Resize both panes in normal and wide view
   (Leiaz)
 * Fixes #538: toggle_visibility() does not make a minimized window
   visible again
   (reported by Balló György)
 * Fixes #522: Segfault when switching feed in combined view
   (patch by jonmstone)
 * Fixes #419, #457: Handling of relative URLs in Atom parser
   (Leiaz)
 * Added 'View Image' context menu option in HTML view
 * Dropped del.icio.us from social bookmarking options
   as it is a read-only service now.
 * Redesign of the wide view mode: larger titles with small text teasers
 * Added optional AMP/HTML5 content enrichment feature

1.12-rc3
--------
 * Fixes #459: Fixes GtkDoc warnings
   (Leiaz)
 * Fixes #415: Filter commands are not asynchronous
   (Rich Coe)
 * Fixes #363: Missing space above internal browser address bar
   (reported by nekohayo, patch by Mikel Olasagasti)
 * Fixes #208: All "Unread" search folder items marked read at once
   (Leiaz)
 * Fixes #251: Liferea does not always use theme icons when it is launched
   on system startup (reported by GreenLunar, fix by Leiaz)
 * Change headline column sorting in wide view to time sorted
 * Updated Finnish translation (Jorma Karvonen)
 * Updated Latvian translation (Rihards Prieditis)
 * Updated Albanian translation (Bensik Bleta)
 * Updated Hungarian translation (Balázs Úr)
 * Updated Brazlian translation (Rafael Ferreira)
 * Updated French translation (Guillaume Bernard)

1.12-rc2
--------
 * Change all g_warnings() to g_print() for remote source
   to avoid "crashing" on errors.
 * Reorganized all UI definitions in separate files to simplify
   GtkBuilder handling.
 * Github #425: Add GeoRSS info and map link in item header
   (Mikel Olasagasti)
 * Github #407: Replacing deprecated elements in preferences
   (Leiaz)
 * Github #396: Create LifereaApplication type
   (Leiaz)
 * Github #434: Partial RFC3229+feed support for bandwidth savings
   (Daniel Aleksandersen)
 * Fixes Github #208: gtk_tree_store_get_path: assertion
   'iter->stamp == priv->stamp'
   (reported by Mno-hime)
 * Fixes Github #403: Leftover OSM XSLT in item view
   (reported by Paul Gevers)
 * Fixes Github #423: Internal browser shows files system on go-back
   (Leiaz, reported by Paul Gevers)
 * Updated German translation
 * Github #441: Updated French translation
   (Surfoo)


1.12-rc1a
---------
 * Fixing missing header files

1.12-rc1
--------
 * Github #348: Added support for downloading content that
   cannot be displayed by HTML widget (e.g. PDFs)
   (Leiaz)
 * Github #355: Migrate to Python3 libpeas loader
   (patch by picsel2)
 * Github #311: Upgrade to WebKit2
   (patch by Leiaz)
 * Github #292: Show new item count in tray icon
   (patch by mozbugbox)
 * Github #297: Minimize to systray on window close
   (patch by Hugo Arregui)
 * Github #325: Auto-fitting, translated license
   (patches by GreenLunar and Adolfo Jayme-Barrientos)
 * Fixes Github #73: Problem with favicon update
   (reported by asl97)
 * Fixes Github #177, #350: Tray icon not scaled properly
   (patch by mozbugbox)
 * Removes GeoIP rendering via OSM to avoid exposing
   users to remote JS library resources.
   (reported by Paul Gevers)
 * Fixes Github #337: Case sensitive sorting
   (reported by Pi03k)
 * Fixes Github #361: Show all enclosuers
   (Leiaz)
 * Fixes Github #368: Segfault on liferea-feed-add
   (Leiaz)
 * Fixes Github #382: Broken Auto-Detect/No Proxy setting
   (Leiaz)
 * Fixes Github #383: Per feed don't use proxy setting is broken
   (reported by Leiaz)
 * Github #309: Update of Japanese translation
   (IWAI, Masaharu)
 * Github #329: Update of Hebrew translation
   (GreenLunar)
 * Github #330: Update of Spanish translation
   (Adolfo Jayme-Barrientos)
 * Update of Swedish translation
   (Andreas Ronnquist)


1.11.7
------
 * Github #287: Add support for media:group.
   (patch by Leiaz)
 * Github #287: Fixes issues with media:content.
   (patch by Leiaz)
 * Fixes Github #283: Bad .desktop categories definition
   (reported by Wuzzy2)
 * Fixes Github #279: Fixes rules no visible in searchdialog
   (patch by Leiaz)
 * Fixes Github #278: No "Download" tab in Tools/Preferences
   (docs error, reported by Anders Jonsson)
 * Fixes Github #83: Segfault when sorting feeds in folder
   (patch by Leiaz)
 * Fixes French translation
   (patch by polo2ro)
 * Github #300: Updated manpage
   (patch by GreenLunar)

1.11.6
------
 * Added "Do Not Track" support (enabled per default)
 * Github #193: Added x-scheme-handler/feed to desktop file
   (suggested by GreenLunar)
 * Github #209: Add image icons to plugins
   (by GreenLunar)
 * Github #210: Enable tests for parsing RFC822 dates with 2 digit year
   (patch by arunanbala)
 * Fixes Github #78: Shaky text in feed list
   (reported by GreenLunar)
 * Fixes Github #195: Out-dated documentation on enclose download
   (reported by brian-in-crawford)
 * Fixes Github #198: Traceback on popup notifications
   (reported by GreenLunar)
 * Fixes Github #216: Untranslatable strings
   (reported by GreenLunar)
 * Fixes Github #256: PyGIWarnings on loading plugins
   (patch by glitjs16)

1.11.5
------
 * Github #178: Implementing full screen mode for videos
   (mozbugbox)
 * Fixes Github #32: Prevent erroneous "Mark all as read"
   (reported by Mno-hime)
 * Improves Github #36, #113: UI lock up during refresh
   (suggested by mozbugbox)
 * Fixes Github #180: Removing item from (v)folder marks all read
   (reported by GreenLunar)
 * Fixes Github #140, #158: Vertical pane placement is forgotten.
   (patch by foresto)
 * Fixes Github #182: Missing config.h include in date.c
   (reported by Paul Gevers)
 * Update of Russian translation (bboa)

1.11.4
------
 * Fixes Github #154: Crashes while starting (corrupt icon)
   (reported by jcamposz)
 * Github #149: Fixes a random crash on startup
   (patch by mozbugbox)
 * Fixes Github #79: RTL ordering of Back/Forward icons
   (reported by GreenLunar)
 * Fixes Github #30: Segfault after updating from 1.8 to 1.10
   (reported by vakuum)
 * Fixes Github #87: URL resolving wrong if base tag involved
   (reported by DanMan, fixed by mozbugbox)
 * Fixes all defects reported by Coverity scan
 * Simplied external browser handling. Now Liferea only supports
   the gtk_show_uri() launch mechanism for the system default browser
   and a user specified browser command.
 * Update of Albanian translation (Besnik Bleta)
 * Update of Hebrew translation (Genghis Khan)
 * Update of Spanish translation (Juan Campos Zambrana)
 * Fixes typo in Italian translation

1.11.3
------
 * Fixes Github #134: Broken default news feed.
   (reported by pvdl)
 * Fixes Github #133: Subscribe into TheOldReader categories
 * Fixes Github #122: Crashes at launch, "segmentation fault"
   (reported by geoffm)
 * Fixes some memory leaks
   (patch by Rich Coe)
 * Fixes Github #145: Incorrect method triggered for 'Launch External'
   (patch by mozbugbox)
 * Fixes Github #48: Window stays hidden on next start after Ctrl+W
   (reported by Jeff Fortin)
 * Expose LifereaHtmlView to GObject Introspection
   (patch by mozbugbox)
 * Improves Google Reader API error handling
 * Now using HTTPS only when accessing TheOldReader
 * Added LifereaNodeSourceActivatable interface to allow plugins
   implementing new node source types.
 * Downgrade enclosure drop warning from Glib warning to debug trace.

1.11.2
------
 * Fixes Github #132: Broken documentation link
   (reported by kallus)
 * Fixes Github #121: Wrapping issue in folder display
   (reported by Jeff Forting)
 * Fixes Github #114: Avoid termination on UTF-8 validation error
 * Fixes Github #90: Libnotify plugin not working
   (reported by asl97)
 * Fixes Github #86: Support HTTP content negotiation
   (suggested by DanMan)
 * Black-list some categories used by Google Reader clones
   that should not be visible.
 * Allowing browser history to go back to previously
   shown headline when browsing inside the item view.
 * Dropping offline option as this is duplicated with
   desktop environment in GNOME/network manager.
 * Fixes Github #100: Problems with dark Adwaita theme in GTK 3.14
   (reported by majutsushi)
 * Fixes for preferences dialog width.
   (patch by Jeff Fortin)
 * Update of Arabic translation (Khaled Hosny)

1.11.1
------
 * Fixes Github #81: Inability to add subscriptions
   (reported by GreenLunar)
 * Fixes Javascript links not opening in new browser tabs
 * Updated Hebrew translation (Genghis Khan)
 * Fixes Github #88: Minor DE translation mistake (moraxy)

1.11.0
------
 * Added experimental InoReader support
 * Added experimental Reedah support
 * Fixes SF #1123: Mistakenly claims "TinyTinyRSS source is not self-updating"
   (reported by Dominik Grafenhoher)
 * Fixes SF #1119: Crash on font resize at startup.
   (reported by David Smith)
 * Fixes #1056, #1089, #1098: Honor preferences when opening links
   (patch by Daniel Seither)
 * Fixes #1117: Selecting last unread item in reduced feed list jumps to next feed
   (reported by Bruce Guenter)
 * Fixes missing "Via" metadata type
   (patch by Rich Coe)
 * Fixes incorrect new count reset handling in item_state.c and
   some of the node source implementations.
 * Fixes SF #1096: missing installation of liferea.convert file
   (reported by stqn)
 * Fixes SF #1135: liferea-add-feed doesn't process feed:https//
   (patch by Kevin Walke)
 * Fixes SF #1137, #1142: startup race with LifereaHtmlView
   (reported by Yanko Kaneti)
 * Fixes Github #13: Parsing errors not visible with dark themes
   (reported by Steve Kelly)
 * Fixes Github #29: Do not use bold text for feeds/folders with unread items
   in the leftmost treeview (repored by Jeff Fortin)
 * Fixes SF #1141: Liferea does not update feeds with TinyTinyRSS
   (reported by Dominik Grafenhofer, denk_mal, Fabian Henze)
 * Fixes SF #1150: subscription prop/source: not all fields and
   buttons visible (reported by David Smith)
 * Fixes Github #26: RTL comments appear incorrectly
   (reported by yaconf)
 * Fixes Github #27: Images do not autosize to fit the available space
   (reported by Jeff Fortin)
 * Fixes Github #34: Add TinyTinyRSS Enclosure Support
   (reported by Adrixan)
 * Fixes Github #43: "Any of the following" search condition doesn't work
   (reported by Jeff Fortin)
 * Fixes Github #49: Some dialogs scrolling areas do not request enough height
   (reported by Jeff Fortin)
 * Fixes Github #53: Doesn't automatically update feed name and favicon
   for new feed (reported by asl97)
 * Patch SF #224: Update to new libxml2 buffer API
   (Simon Kagedal Reimer)
 * Patch SF #209: Avoid copying list in itemset_merge_items
   (kaloyan)
 * Make Liferea use ETags and send If-None-Match
   (patch by Chris Siebenmann)
 * Support NOCONFIGURE for RPM builds
   (Charles A Edwards)
 * Rename README to README.md
 * Removing libindicate support (to be added as plugin maybe)
 * Removing libnotify support (to be added as plugin maybe)
 * Removing build in tray icon support
 * Added tray icon plugin
 * Added category/folder support for TheOldReader
 * Added folder auto-removal for TinyTinyRSS & TheOldReader
 * Updated README on plugin contribution
 * Updated Arabic translation (Khaled Hosny)
jperkin pushed a commit that referenced this issue Jan 10, 2019
Changes since b121:

Beta #127 - 02.01.2019
- Remove overflown notes (> B-9) when loading modules
- Remove overflown efx/notes when loading tracks/patterns
- Removed some unneded logic in the pattern editor text routines
- Code cleanup

Beta #126 - 29.12.2018
- Pattern row quantization (record) was broken in beta #125

Beta #125 - 28.12.2018
- Fixed an issue with sample data peaks while zooming in/out in Smp. Ed.
- The playback timer is now counting BPM ticks from the replayer
  instead of spawning/deleting a 1-sec SDL timer every time you
  play a song.
- Updated the "Keyboard" and "Problems/FAQ" help texts

Beta #124 - 17.12.2018
- The scrollbar in the MIDI input device list didn't work
- Fixed some minor audio/video timer problems
- More verbose error checking on program startup

Beta #123 - 16.12.2018
- Rewrote the Help screen routines to be exact to real FT2.
  It now uses less RAM.
- Some GUI decoration was missing in extended pattern editor mode
- Code cleanup

Beta #122 - 15.12.2018
- Windows: Reverted back to SDL2.0.8 because of the keyboard
  shutting itself off and on randomly with SDL2.0.9.
  Really strange stuff... It doesn't happen in SDL2.0.8.
- More bug fixes on sample hand editing (Smp. Ed.)
jperkin pushed a commit that referenced this issue Mar 26, 2019
Pkgsrc changes:
 * Track rename of logrotate-default to logrotate.conf
 * Add a fix so that the log file name is actually passed
   to the various script hooks(!)
   logrotate/logrotate#245

Upstream changes:

3.15.0
======
 * timer unit: change trigger fuzz from 12h to 1h (#230)
 * service unit: only run if /var/log is mounted (#230)
 * preserve fractional part of timestamps when compressing (#226)
 * re-indent source code using spaces only (#188)
 * minage: avoid rounding issue while comparing the amount of seconds (#36)
 * never remove old log files if rotate -1 is specified (#202)
 * return non-zero exit status if a config file contains an error (#199)
 * make copytruncate work with rotate 0 (#191)
 * warn user if both size and the time interval options are used (#192)
 * pass rotated log file name as the 2nd argument of the postrotate
   script when sharedscript is not enabled (#193)
 * rename logrotate-default to logrotate.conf (#187)

3.14.0
======
 * make configure show support status for SELinux and ACL at the end (#179)
 * make logrotate build again on FreeBSD (#178)
 * move wtmp and btmp definitions from logrotate.conf to
 * separate configuration files in logrotate.d (#168)
 * print a warning about logrotate doing nothing when -d is used (#165)
 * do not reject executable config files (#166)
 * add hardening options to logrotate.service in examples (#143)
 * fix spurious compressor failure when using su and compress (#169)
 * keep logrotate version in .tarball-version in release tarballs (#156)
 * introduce the hourago configuration directive (#159)
 * ignore empty patterns in tabooext to avoid exclusion of everything (#160)
 * properly report skipped test cases instead of pretending success

3.13.0
======
 * make distribution tarballs report logrotate version properly (RHBZ#1500264)
 * make (un)compress work even if stdin and/or stdout are closed (#154)
 * remove -s from DEFAULT_MAIL_COMMAND and improve its documenation (#152)
 * uncompress logs before mailing them even if delaycompress is enabled (#151)
 * handle unlink of a non-existing log file as a warning only (#144)
 * include compile-time options in the output of logrotate --version (#145)
 * make logrotate --version print to stdout instead of stderr (#145)
 * flush write buffers before syncing state file (#148)
 * specify (un)compress utility explicitly in tests (#137)
 * enable running tests in parallel (#132)
 * explicitly map root UID/GID to 0 on Cygwin (#133)
 * add .dpkg-bak and .dpkg-del to default tabooext list (#134)

3.12.3
======
 * copy and copytruncate directives now work together again
 * unlink() is no longer preceded by open() unless shred is enabled (#124)
 * compress and uncompress now take commands from $PATH, too (#122)

3.12.2
======
 * build fixes related to -Werror (#119) and -Werror=format= (#108)
 * configure --enable-werror now controls use of the -Werror flag (#123)

3.12.1
======
 * Included forgotten build-aux directory in release tarballs.

3.12.0
======
 * Fixed accident removal of rotated files with dateext. (#118)
 * Line comments inside globs in config files are now skipped. (#109)
 * logrotate now recovers from a corrupted state file. (#45)
 * Makefile.legacy has been removed. (#103)
 * config.h is now generated by autotools. (#102 and #103)
 * createolddir now creates old directory as unprivileged user. (#114)
 * weekly rotations are now predictable and configurable. (#93)
 * Errors in config files are no longer treated as fatal errors. (#81)
 * configure --with-default-mail-command specifies default mail command. (#100)
 * Fixed heap buffer overflow when parsing crafted config file. (#33)
jperkin pushed a commit that referenced this issue Aug 26, 2019
Changelog:

New Libraries

    Variant2: A never-valueless, strong guarantee implementation of std::variant, from Peter Dimov.

Updated Libraries

    Align:
        Support for any integral type in the integral versions of align_up and align_down.
        Revised the implementation of aligned_allocator to no longer require a specialization for void.
        Define propagate_on_container_move_assignment and is_always_equal in aligned_allocator.
    Asio:
        Improved performance slightly by eliminating a redundant move construction when completed handlers are dispatched.
        Eliminated a compiler warning by annotating a case fall-through in the free function connect() implementation.
        Fixed the is_*_buffer_sequence detection traits for user-defined sequence types.
        Fixed some Windows-specific warnings about an incompatible pointer cast when obtaining the CancelIoEx entry point.
        Changed to automatically set the defaults when opening a serial port on Windows.
        Changed the serial port get_option() member function to be const.
        Fixed a name hiding issue with the WinRT stream-oriented socket backend's shutdown function.
        Applied a minor fix to the documentation for is_dynamic_buffer.
        Added some support for Haiku OS.
        Added wolfSSL compatability.
        Changed to require C++17 or later for coroutines TS support with clang.
        Fixed a doxygen generation problem in the tutorial.
        Ensured example programs are correctly incorporated into the documentation.
    Any:
        Static initialization of the default constructed boost::any is now possible.
        Fixed performance regression in assignment on a compilers without move-semantics.
        Maintenance work.
    Beast:
        This version consists mostly of bug fixes and performance improvements.
        Substantial work included for the split compilation mode, to reduce compile time when defining BOOST_BEAST_SEPARATE_COMPILATION.
        We'd love to know how you or your company use Beast, consider adding an item to the Companies and Individuals Using Beast list.
        See the full Release Notes for a complete list of changes.
    Circular Buffer:
        Correct doxygen generated reference to no longer show internal members. (Glen Fernandes)
        Eliminate ubsan warning on add and sub. (Glen Fernandes)
        Fix incorrect check in is_uninitialized. (Niklas Fejes)
    Container:
        Fixed bugs:
            GitHub #47: "added alignment specification for small_vector".
            GitHub #88: "Implement C++17 MoveAssignable requirements for self-move assignments".
            GitHub #107: "Alignment ignored in resource_adaptor".
            GitHub #109: "Get rid of integer overflow in copy_move_algo.hpp (-fsanitize=integer)".
            GitHub #110: "Avoid gcc 9 deprecated copy warnings in new_allocator.hpp".
            GitHub #112: "vector::resize() compilation error with msvc-10..12: data is not a member of boost::detail::aligned_storage".
            GitHub #114: "Fix small_vector noexcept specification".
            GitHub #116: "MSVC + boost 1.70 compilation error when windows.h is already included (detail/thread_mutex.hpp)".
            GitHub #117: "flat_map/map::insert_or_assign with hint has wrong return types".
            GitHub #118: "Non-unique inplace_set_difference used in in flat_tree_merge_unique and iterator invalidation in insert_unique".
            GitHub #122: "Fix has_trivial_destructor_after_move".
            GitHub #123: "With heterogeneous lookup, equal_range can result in a range with length greater than 1".
        deque can now have options, using deque_options. The block size/bytes can be be specified.
        static_vector can now have options, using static_vector_options. Alignment and throwing behaviour can be be specified.
        small_vector can now have options, using small_vector_options. Alignment and growth factor can be be specified.
    Context:
        Add support for RISC-V LP64D
        #72: Fix ABI violation on ppc64 ELFv2
        #99: cleanup of stack if creating ucontext fails
    Conversion:
        Maintenance work.
    Core:
        Added functions alloc_construct, alloc_construct_n, alloc_destroy, and alloc_destroy_n in <boost/core/alloc_construct.hpp> for allocator aware and exception safe construction and destruction of objects and arrays. (Glen Fernandes)
        Added constexpr functions first_scalar in <boost/core/first_scalar.hpp> for obtaining a pointer to the first scalar element of an array. Given a pointer of type T* they return a pointer of type remove_all_extents_t<T>*. (Glen Fernandes)
        Added class template noinit_adaptor in <boost/core/noinit_adaptor.hpp> which is an allocator adaptor that converts any allocator into one whose construct(ptr) performs default initialization via placement new, and whose destroy(ptr) invokes the value_type destructor directly. (Glen Fernandes)
        Added class template default_allocator in <boost/core/default_allocator.hpp>, which can serve as a minimal default allocator that has interface similar to C++20 std::allocator, supports configurations with disabled exceptions and does not have std as an associated namespace. The allocator uses operator new and operator delete for allocation. (Glen Fernandes)
        In <boost/core/uncaught_exceptions.hpp> header, added workarounds for better compatibility with QNX SDP 7.0 when libc++/libc++abi libraries are used. (Andrey Semashev, #59)
        The <boost/detail/sp_typeinfo.hpp> header is now marked as deprecated and will be removed in a future release. <boost/core/typeinfo.hpp> should be used instead. (Peter Dimov)
    Dynamic Bitset:
        Enabled hardware-assisted popcount on MSVC (#38).
        Added support for boost::hash and std::hash (#45).
        Support copy-initialization with default constructor (#48).
    Endian:
        Clarified requirements on the value type template parameter
        Added support for float and double
        Added endian_load, endian_store
        Updated endian_reverse to correctly support all non-bool integral types
        Moved deprecated names to the deprecated header endian.hpp
    Fiber:
        documentation for shared_work updated
    Filesystem:
        Fixed incorrect error_code returned from directory iterator increment when readdir_r is used.
        For path, fixed rvalue-aware operator/ return type to return an rvalue instead of rvalue reference. This fixes leaving a dangling reference in the user's code if the result of operator/ is bound to a const reference. (#110)
        Fixes for better compatibility with Windows CE. (#24)
        Added minimal support for CMake. (#106)
    Flyweight:
        Maintenance work.
    Histogram:
        New features:
            Support for thread-safe storages and new thread-safe accumulators
            Support for compiling without exceptions/RTTI (increases performance by 10-20 %) (with Glen Fernandes)
            Performance improvements for 1D and 2D histograms
            boost::histogram::indexed now returns forward iterator range instead of input iterator range
            boost::histogram::indexed_range::accessor is now non-copyable and acts like reference to cell value, making more algorithms from the C++ stdlib work
            boost::histogram::algorithm::reduce with new slice option and option fusion
            boost::histogram::algorithm::project accepts runtime indices for static histograms
        Bug Fixes:
            boost::histogram::algorithm::reduce also works on histograms that have some axis types without reduction support
            boost::histogram::axis::traits::update now works correctly for boost::histogram::axis::variant
        Other:
            100 % test coverage
            Reduced internal Boost dependencies
            Improved documentation and examples
            Guaranteed no-throw moves for all builtin axis types
            Compile cleanly at higher warning levels
        See changelog for more details.
    IoStreams:
        Fixed processing of multi-stream files (#87).
        Added support for multi-threaded LZMA (#95).
    Interprocess:
        GitHub #85 ("warning: Implicit conversion loses integer precision").
        GitHub #86 ("warning: Possible misuse of comma operator").
    Intrusive:
        GitHub #42: Documentation does not describe treap priority_of_value changes
        GitHub #43: Fix tests with BOOST_INTRUSIVE_VARIADIC_TEMPLATES enabled
        GitHub #45: Disable variadic templates for MSVC-12 to avoid ICEs
    LexicalCast:
        Added tests for boost::filesystem::path conversions #25.
        Maintenance work, including #28.
    Log:
        New features:
            Improved support for C++17 std::string_view in basic_formatting_ostream. The string view can now participate in character code conversion on output.
            Added auto_newline formatter and stream manipulator. It can be used to ensure that formatted output always ends with a newline while avoiding duplicate newlines.
            In the output stream, text file and text multi-file sink backends added support for configuring behavior with regard to appending a trailing newline to every formatted log record. Use auto_newline_mode named parameter of the backend constructor or call the set_auto_newline_mode method on the sink backend.
            Note: The default behavior with regard to trailing newlines added by sink backends has changed slightly compared to the previous Boost.Log releases. The backends will now only add a trailing newline if there isn't one in the formatted log message string already. In previous releases a newline was added unconditionally.
            Added support for passing arbitrary function objects in the filter and format named parameters to sink constructors and convenience functions for initializing sinks. For example, it is now possible to specify C++11 lambda functions directly in these parameters. (#63)
            In the default filter and formatter factories used in filter and formatter parsers, added support for severity level attribute values of type boost::log::trivial::severity_level. For filters, the support is limited to attributes with "Severity" name.
        Bug fixes:
            Fixed incorrect parsing of components of the rotated file names while scanning for files in the text file sink backend. If the file name pattern ended with a placeholder (for example, a file counter), the scan_for_files method would not find files matching that pattern in the target storage, leaving them unmanaged. In particular, such files would not be deleted to free target storage. (#78)
            Updated basic_formatting_ostream and basic_record_ostream to make it possible to overload stream output operators for pointers to user-defined types. User-defined operator<< overloads taking std::basic_ostream and a pointer argument should now be picked up by the compiler when the pointer is being written to one of Boost.Log streams. (#84)
        See changelog for more details.
    Math:
        New features:
            Catmull-Rom interpolator now works in C++11
            Cardinal quadratic B-spline interpolation
            Domain of elliptic integrals extended
            sin_pi and cos_pi performance improvements
            Forward-mode automatic differentiation
            Vector valued barycentric rational interpolation
            Ooura's method for evaluation of Fourier integrals
        Bug fixes:
            Multiple compatibility issues with Multiprecision fixed
            Lambert-W fixed on a rare architecture
    Metaparse:
        New features:
            In C++11 variadic template support for the following: sequence, one_of_c, one_of, repeated_one_of, repeated_one_of1, one_char_except_c, one_char_except.
        Bug fixes:
            BOOST_METAPARSE_STRING does not use out of range character values as template arguments.
            any_of_c<> does not create empty array in C++14.
    Move:
        Git Issue #26: "Invalid iterator increment/decrement in the last iteration of adaptive_sort_combine_blocks".
    Multi Array:
        Simplify allocator support by using new alloc_construct_n and alloc_destroy_n facilities from Core. (Glen Fernandes)
    Multi-index Containers:
        Added variants of const_mem_fun and mem_fun for differently qualified member functions (issue #24).
        Terse key specification syntax now correctly handles noexcept-specified member functions (issue #24).
    Outcome:
        Enhancements:
            #184 As per request from Boost release managers, relocated version.hpp and revision.hpp into detail, and added the Boost licence boilerplate to the top of every source file which was missing one (I think). Also took the opportunity to run the licence restamping script over all Outcome, so copyright dates are now up to date.
            #185 Add FAQ item explaining issue #185, and why we will do nothing to fix it right now.
            #189 Refactored the OUTCOME_TRY implementation to use more clarified customisation points capable of accepting very foreign inputs. Removed the std::experimental::expected<T, E> specialisations, as those are no longer necessary. Fixed the documentation for the customisation points which previously claimed that they are ADL discovered, which they are not. Added a recipe describing how to add in support for foreign input types.
            #183 Added a separate motivation/plug_error_code specifically for Boost.
        Bug fixes:
            OUTCOME_VERSION_MINOR hadn't been updated to 1.
            #181 Fix issue #181 where Outcome didn't actually implement the strong swap guarantee, despite being documented as doing so.
            #190 Fix issue #190 in Boost edition where unit test suite was not runnable from the Boost release distro.
            #182 Fix issue #182 where trait::is_exception_ptr_available<T> was always true, thus causing much weirdness, like not printing diagnostics and trying to feed everything to make_exception_ptr().
            #192 Fix issue #192 where the std::basic_outcome_failure_exception_from_error() was being defined twice for translation units which combine standalone and Boost Outcome's.
    Parameter:
        Upgraded keyword generation macro BOOST_PARAMETER_TEMPLATE_KEYWORD (#15).
        Moved keyword generation macro BOOST_PARAMETER_NESTED_KEYWORD from Accumulators to this library (#28).
        Added support for std::reference_wrapper and std::ref() (#16).
        Moved boost::parameter::required, boost::parameter::optional, and boost::parameter::deduced metafunction definitions to their own header files in directory boost/parameter (#18).
        Added support for Boost.Parameter-enabled function call operators (#20).
        Added support for parameter category qualifiers "forward", "consume", and "move_from" (current qualifiers are "in", "out", and "in_out") (#21) (#23) based on http://www.modernescpp.com/index.php/c-core-guidelines-how-to-pass-function-parameters. Added new usage syntax BOOST_PARAMETER_NAME((object-name), namespace-name) qualifier(tag-name)) and BOOST_PARAMETER_NAME(qualifier(name)). (Existing code that uses qualifiers directly and correctly with BOOST_PARAMETER_FUNCTION and other code generation macros should remain unaffected for now, so no breaking changes.) The reason for the change in usage is to enable applying of parameter category constraints to Boost.Parameter-enabled functions and constructors invoked through argument composition. (Otherwise, it is currently possible to use argument composition to bypass parameter category constraints applied in BOOST_PARAMETER_FUNCTION et. al.)
        Added support for perfect forwarding (#23) (#26), so that parameter::parameters::operator() can accept non-const rvalues. As a positive side effect, Boost.Parameter-enabled functions and constructors are no longer bound by BOOST_PARAMETER_MAX_ARITY on compilers that support perfect forwarding. User code can now check for this support by detecting the configuration macro BOOST_PARAMETER_HAS_PERFECT_FORWARDING, or manually turn off this support by defining the configuration macro BOOST_PARAMETER_DISABLE_PERFECT_FORWARDING.
        Added metafunctions boost::parameter::is_argument_pack (#27), boost::parameter::are_tagged_arguments (#52), and boost::parameter::result_of::compose (#75).
        Added variadic function template boost::parameter::compose() which takes in named arguments and returns them in an argument pack (#52). For compilers that do not support perfect forwarding, the configuration macro BOOST_PARAMETER_COMPOSE_MAX_ARITY determines the maximum number of arguments that boost::parameter::compose() can take in (#61).
        Added code generation macros BOOST_PARAMETER_BASIC_FUNCTION_CALL_OPERATOR, BOOST_PARAMETER_BASIC_CONST_FUNCTION_CALL_OPERATOR, BOOST_PARAMETER_NO_SPEC_FUNCTION, BOOST_PARAMETER_NO_SPEC_MEMBER_FUNCTION, BOOST_PARAMETER_NO_SPEC_CONST_MEMBER_FUNCTION, BOOST_PARAMETER_NO_SPEC_FUNCTION_CALL_OPERATOR, BOOST_PARAMETER_NO_SPEC_CONST_FUNCTION_CALL_OPERATOR, BOOST_PARAMETER_NO_SPEC_CONSTRUCTOR, and BOOST_PARAMETER_NO_SPEC_NO_BASE_CONSTRUCTOR (#52).
        Added support for Boost.MP11 (#47) (#66) (#70). User code can now check for this support by detecting the configuration macro BOOST_PARAMETER_CAN_USE_MP11, or manually turn off this support by defining the configuration macro BOOST_PARAMETER_DISABLE_MP11_USAGE.
        Improved support for parameter-dependent return types via SFINAE (#73).
    PtrContainer:
        Fix a ptr_vector regression introduced in 1.66.0 (#24).
    PolyCollection:
        Maintenance work.
    SmartPtr:
        Added aliasing constructors to weak_ptr
        Added weak_ptr<T>::empty()
        Added enable_shared_from, shared_from, and weak_from
    Stacktrace:
        Fixed output of name(), source_location() and source_line() for the default constructed frame with thread sanitizer builds in C++98 mode.
        Fixed output of long strings from name() and source_location() on MSVC #78.
        Maintenance work.
    Test:
        Boost.test v3.11 see the Changes log for more details.
        Breaking changes:
            Boost.Test shows deprecation warnings if some very old headers as deprecated. If you encounter such warnings, please follow the indications: those headers will be removed in a future release.
        New feature:
            Now BOOST_TEST can be used to compare abstract types
        Bug fixes and pull requests:
            GitHub Issues: #209, #218
            GitHub Pull Requests: #219, #224
    Utility:
        Implemented function template ostream_string in <boost/utility/ostream_string.hpp> to optimally write any kind of string content to an output stream. It satisfies the requirements of [ostream.formatted.reqmts]. (Glen Fernandes)
        Optimized the stream output operators of basic_string_view and basic_string_ref to write directly to the rdbuf stream buffer. (Glen Fernandes)
    Uuid:
        Breaking change: MD5 name-based uuid generation was corrected to be identical on all endian systems. Define BOOST_UUID_COMPAT_PRE_1_71_MD5 to keep the result in a format compatible with 1.66 through 1.70. This does not affect the default name-based uuid generation which is based on SHA1. (#109)
    Variant:
        Fixed compilation of boost::apply_visitor with variants passed by non const reference in #68. Many thanks to Ed Catmur for providing the fix.
        Added support for std::hash (#49). Macro BOOST_VARIANT_DO_NOT_SPECIALIZE_STD_HASH could be defined to avoid those specializations.
        Added micro optimizations for binary size and performance by Nikita Kniazev in #63 and #66.
        Maintenance work, including #64 by Nikita Kniazev and #67 by Hans Dembinski.
    YAP:
        Added an example showing how to make self-evaluating YAP expressions (that is, expressions that don't need an explicit call to evaluate() or transform()).
jperkin pushed a commit that referenced this issue Oct 24, 2019
## 2.3.1 / 2019-10-22

### Security

Address CVE-2019-15587: Unsanitized JavaScript may occur in sanitized output when a crafted SVG element is republished.

This CVE's public notice is at flavorjones/loofah#171


## 2.3.0 / unreleased

### Features

* Expand set of allowed protocols to include `tel:` and `line:`. [#104, #147]
* Expand set of allowed CSS functions. [related to #122]
* Allow greater precision in shorthand CSS values. [#149] (Thanks, @danfstucky!)
* Allow CSS property `list-style` [#162] (Thanks, @jaredbeck!)
* Allow CSS keywords `thick` and `thin` [#168] (Thanks, @georgeclaghorn!)
* Allow HTML property `contenteditable` [#167] (Thanks, @andreynering!)


### Bug fixes

* CSS hex values are no longer limited to lowercase hex. Previously uppercase hex were scrubbed. [#165] (Thanks, @asok!)


### Deprecations / Name Changes

The following method and constants are hereby deprecated, and will be completely removed in a future release:

* Deprecate `Loofah::Helpers::ActionView.white_list_sanitizer`, please use `Loofah::Helpers::ActionView.safe_list_sanitizer` instead.
* Deprecate `Loofah::Helpers::ActionView::WhiteListSanitizer`, please use `Loofah::Helpers::ActionView::SafeListSanitizer` instead.
* Deprecate `Loofah::HTML5::WhiteList`, please use `Loofah::HTML5::SafeList` instead.

Thanks to @JuanitoFatas for submitting these changes in #164 and for making the language used in Loofah more inclusive.
jperkin pushed a commit that referenced this issue Dec 12, 2019
Pkgsrc changes:
 * Remove now integrated patch.

Upstream changes:

This release contains a number of security related fixes, contributed by
X41 D-Sec. They have conducted a security audit of Unbound, funded by
OSTIF. The previous CVEs fixed in 1.9.4 and 1.9.5 were the most
important ones, less important fixes and side findings for more robust
code have been included in this release, alongside a normal number of
bug fixes.

The sort order for included config snippets is now ascending by name, it
previously was reversed due to an oversight.  Most config snippets do
not depend on the order as they add a stub or forward zone or some
server: section config entries.


Features:
- The unbound.conf includes are sorted ascending, for include
  statements with a '*' from glob.
- drop-tld.diff in contrib/ : adds option drop-tld: yesno that drops 2 label
  queries, to stop random floods.  Apply with
  patch -p1 < contrib/drop-tld.diff and compile.
  From Saksham Manchanda (Secure64).  Please note that we think this
  will drop DNSKEY and DS lookups for tlds and hence break DNSSEC
  lookups for downstream clients.
- Add new configure option `--enable-fully-static` to enable full static
  build if requested; in relation to #91.
- Add make distclean that removes everything configure produced,
  and make maintainer-clean that removes bison and flex output.
- unbound-fuzzers.tar.bz2 in contrib/ : three programs for fuzzing, that
  are 1:1 replacements for unbound-fuzzme.c that gets created after applying
  the contrib/unbound-fuzzme.patch.  They are contributed by
  Eric Sesterhenn from X41 D-Sec.

Bug Fixes:
- Fix that pkg-config is setup before --enable-systemd needs it.
- Fix contrib/fastrpz.patch asprintf return value checks.
- ipset module #28: log that an address is added, when verbosity high.
- ipset: refactor long routine into three smaller ones.
- updated Makefile dependencies.
- squelch DNS over TLS errors 'ssl handshake failed crypto error'
  on low verbosity, they show on verbosity 3 (query details), because
  there is a high volume and the operator cannot do anything for the
  remote failure.  Specifically filters the high volume errors.
- Fix #71: fix openssl error squelch commit compilation error.
- Fix #72: configure --with-syslog-facility=LOCAL0-7 with default
  LOG_DAEMON (as before) can set the syslog facility that the server
  uses to log messages.
- Use explicit bzero for wiping clear buffer of hash in cachedb,
  reported by Eric Sesterhenn from X41 D-Sec.
- Fix #78: Memory leak in outside_network.c.
- Merge pull request #76 from Maryse47: Improvements and fixes for
  systemd unbound.service.
- oss-fuzz badge on README.md.
- Fix fix for #78 to also free service callback struct.
- Fix for oss-fuzz build warning.
- Fix wrong response ttl for prepended short CNAME ttls, this would
  create a wrong zero_ttl response count with serve-expired enabled.
- Merge #80 from stasic: Improve wording in man page.
- Merge #82 from hardfalcon: Downgrade CAP_NET_ADMIN to CAP_NET_RAW
  in unbound.service.
- Merge #81 from Maryse47: Consistently use /dev/urandom instead
  of /dev/random in scripts and docs.
- Merge #83 from Maryse47: contrib/unbound.service.in: do not fork
  into the background.
- Merge #85 for #84 from sam-lunt: Add kill capability to systemd
  service file to fix that systemctl reload fails.
- Merge #87 from hardfalcon: Fix contrib/unbound.service.in,
  Drop CAP_KILL, use + prefix for ExecReload= instead.
- Merge #90 from vcunat: fix build with nettle-3.5.
- Fix for CVE-2019-16866.  That fix is also in 1.9.4.
- Merge #86 from psquarejho: Added -b source address option to
  smallapp/unbound-anchor.c, from Lukas Wunner.
- Add doxygen comments to unbound-anchor source address code, in #86.
- Merge #97: manpage: Add missing word on unbound.conf,
  from Erethon.
- Fix #99: Memory leak in ub_ctx (event_base will never be freed).
- Fix #109: check number of arguments for stdin-pipes in
  unbound-control and fail if too many arguments.
- Merge #102 from jrtc27: Add getentropy emulation for FreeBSD.
- iana portlist updated.
- contrib/fastrpz.patch updated to apply for current code.
- fixes for splint cleanliness, long vs int in SSL set_mode.
- In unbound-host use separate variable for get_option to please
  code checkers.
- update to bison output of 3.4.1 in code repository.
- Provide a prototype for compat malloc to remove compile warning.
- Portable grep usage for reuseport configure test.
- Check return type of HMAC_Init_ex for openssl 0.9.8.
- gitignore .source tempfile used for compatible make.
- Fix for CVE-2019-18934, shell execution in ipsecmod.  This fix is also
  in 1.9.5.
- Fix authzone printout buffer length check.
- Fixes to please lint checks.
- Fix Integer Overflow in Regional Allocator,
  reported by X41 D-Sec.
- Fix Unchecked NULL Pointer in dns64_inform_super()
  and ipsecmod_new(), reported by X41 D-Sec.
- Fix Out-of-bounds Read in rr_comment_dnskey(),
  reported by X41 D-Sec.
- Fix Integer Overflows in Size Calculations,
  reported by X41 D-Sec.
- Fix Integer Overflow to Buffer Overflow in
  sldns_str2wire_dname_buf_origin(), reported by X41 D-Sec.
- Fix Out of Bounds Read in sldns_str2wire_dname(),
  reported by X41 D-Sec.
- Fix Out of Bounds Write in sldns_bget_token_par(),
  reported by X41 D-Sec.
- Fix Out of Bounds Read in rrinternal_get_owner(),
  reported by X41 D-Sec.
- Fix Race Condition in autr_tp_create(),
  reported by X41 D-Sec.
- Fix Shared Memory World Writeable,
  reported by X41 D-Sec.
- Adjust unbound-control to make stats_shm a read only operation.
- Fix Weak Entropy Used For Nettle,
  reported by X41 D-Sec.
- Fix Randomness Error not Handled Properly,
  reported by X41 D-Sec.
- Fix Out-of-Bounds Read in dname_valid(),
  reported by X41 D-Sec.
- Fix Config Injection in create_unbound_ad_servers.sh,
  reported by X41 D-Sec.
- Fix Local Memory Leak in cachedb_init(),
  reported by X41 D-Sec.
- Fix Integer Underflow in Regional Allocator,
  reported by X41 D-Sec.
- Upgrade compat/getentropy_linux.c to version 1.46 from OpenBSD.
- Synchronize compat/getentropy_win.c with version 1.5 from
  OpenBSD, no changes but makes the file, comments, identical.
- Upgrade compat/getentropy_solaris.c to version 1.13 from OpenBSD.
- Upgrade compat/getentropy_osx.c to version 1.12 from OpenBSD.
- Changes to compat/getentropy files for,
  no link to openssl if using nettle, and hence config.h for
  HAVE_NETTLE variable.
  compat definition of MAP_ANON, for older systems.
  ifdef stdint.h inclusion for older systems.
  ifdef sha2.h inclusion for older systems.
- Fixed Compat Code Diverging from Upstream, reported by X41 D-Sec.
- Fix compile with --enable-alloc-checks, reported by X41 D-Sec.
- Fix Terminating Quotes not Written, reported by X41 D-Sec.
- Fix Useless memset() in validator, reported by X41 D-Sec.
- Fix Unrequired Checks, reported by X41 D-Sec.
- Fix Enum Name not Used, reported by X41 D-Sec.
- Fix NULL Pointer Dereference via Control Port,
  reported by X41 D-Sec.
- Fix Bad Randomness in Seed, reported by X41 D-Sec.
- Fix python examples/calc.py for eval, reported by X41 D-Sec.
- Fix comments for doxygen in dns64.
- Fix dname loop maximum, reported by Eric Sesterhenn from X41 D-Sec.
- Fix compiler warnings.
- Merge pull request #122 from he32: In tcp_callback_writer(),
  don't disable time-out when changing to read.
- Merge pull request #124 from rmetrich: Changed log lock
  from 'quick' to 'basic' because this is an I/O lock.
- Fix text around serial arithmatic used for RRSIG times to refer
  to correct RFC number.
- Fix Assert Causing DoS in synth_cname(),
  reported by X41 D-Sec.
- Fix similar code in auth_zone synth cname to add the extra checks.
- Fix Assert Causing DoS in dname_pkt_copy(),
  reported by X41 D-Sec.
- Fix OOB Read in sldns_wire2str_dname_scan(),
  reported by X41 D-Sec.
- Fix Out of Bounds Write in sldns_str2wire_str_buf(),
  reported by X41 D-Sec.
- Fix Out of Bounds Write in sldns_b64_pton(),
  fixed by check in sldns_str2wire_int16_data_buf(),
  reported by X41 D-Sec.
- Fix Insufficient Handling of Compressed Names in dname_pkt_copy(),
  reported by X41 D-Sec.
- Fix Out of Bound Write Compressed Names in rdata_copy(),
  reported by X41 D-Sec.
- Fix Hang in sldns_wire2str_pkt_scan(),
  reported by X41 D-Sec.
  This further lowers the max to 256.
- Fix snprintf() supports the n-specifier,
  reported by X41 D-Sec.
- Fix Bad Indentation, in dnscrypt.c,
  reported by X41 D-Sec.
- Fix Client NONCE Generation used for Server NONCE,
  reported by X41 D-Sec.
- Fix compile error in dnscrypt.
- Fix _vfixed not Used, removed from sbuffer code,
  reported by X41 D-Sec.
- Fix Hardcoded Constant, reported by X41 D-Sec.
- make depend
- Fix lock type for memory purify log lock deletion.
- Fix testbound for alloccheck runs, memory purify and lock checks.
- update contrib/fastrpz.patch to apply more cleanly.
- Fix Make Test Fails when Configured With --enable-alloc-nonregional,
  reported by X41 D-Sec.
- Fix ipsecmod compile
- Fix Makefile.in for ipset module compile, from Adi Prasaja.
jperkin pushed a commit that referenced this issue Dec 15, 2019
Motivated by wanting to build under more recent systems with
newer OpenSSL.

Many changes since 1.99.15


[v2.5][] - 2018-09-30
---------------------

### Changes
- macOS changes by Jo Rhett:
  - Add linking with `-lresolv`
  - Use Homebrew's CA trust store
  - Update REDAME with install help
- Add support for selfhost.de DDNS

### Fixes
- Fix #211: Only show DDNS server response on successful transaction
- Fix #211: Improved error handling in OpenSSL back-end
- Fix #214: Add `nochg` to list of good responses for custom providers
- Fixes by Erich Sauvageau:
  - Fix #216: Add DNS lookup exception for `all.dnsomatic.com`
  - Fix #219: Add DNS lookup exception for `default@tunnelbrooker.net`


[v2.4][] - 2018-08-18
---------------------

### Changes
- Add support for Dynu DDNS provider

### Fixes
- Add missing defines for `LLONG_MAX` and `LLONG_MIN` on some platforms
- Fix #209: Update FreeDNS plugin to use v2 of their API to fetch update key
- Fix #210: Use `~/.cache/inadyn` or `~/.inadyn` when running unprivileged


[v2.3.1][] - 2018-02-12
-----------------------

This minor bug fix release holds Debian packaging fixes by André Colomb.

### Changes
- Make .deb files an official part of releases

### Fixes
- Fix installation of `inadyn` in `/usr/sbin` and symlink in `/usr/bin`
- Rename debian/inadyn.links to be standards-compliant
- Update deprecated build dependency for dh-systemd
- Fix lintian warning about unsafe symlinks for build scripts
- Version numbers containing a dash are inappropriate for 'native'
  packages, bump revision instead


[v2.3][] - 2018-01-05
---------------------

### Changes
- Distribute `CONTRIBUTING.md` in release tarballs, by André Colomb
- Clean up debug messages for HTTPS connections, by André Colomb
- New build-depends, `libgnutls28-dev` for Debian/Ubuntu users and
  GnuTLS >= 3.0 for others, by André Colomb
- Issue #192: Add `examples/*.conf` to source distribution, by André Colomb

### Fixes
- TCP, not UDP, for `getaddrinfo()` hints + numeric lookups, by André Colomb
- Disable SSL for checkip connections to SPDYN service, by André Colomb
- Issue #186: Allow IPv6 for HTTP(S) connections, by André Colomb
- Issue #189: Ignore premature session termination in GnuTLS, by André Colomb
- Issue #193: Fix broken internal links in README.md, by André Colomb


[v2.2.1][] - 2017-10-06
-----------------------

### Fixes

- Issue #174: `gnutls.c` missing `stdint.h`, fix for ArchLinux
- Issue #179: Update easyDNS plugin to new API, by Nicholas Alipaz


[v2.2][] - 2017-08-09
---------------------

### Changes
- Use HTTP by default for DYN.com checkip server, used by many DDNS
  providers that do not have their own.  This change is far more user
  friendly since you no longer have to explicitly set `checkip-ssl =
  false` for the most common use-case.
- Some DDNS providers have multiple IP addresses registered for the same
  service, as of this release Inadyn immediately tries to connect to the
  next listed addresses on connection problems.
- Issue #153: Support for custom HTTP User Agent.  Useful with providers
  that require using a specific brower.  Set to, e.g. "Mozilla/4.0", or
  rely on the default "inadyn/VERSION" user agent.
- Support for the `%%` format specifier in custom server URL's, as
  mentioned in issue #152.
- Add support for a `.conf` syntax checker: `inadyn --check-config`
- Add support for logging to `stderr` when running in foreground or
  without syslog enabled
- Simplified provider name lookup in `.conf` file.  Now substring match
  is used, resulting in support for `provider Dyn { ... }`.
- Remove libite dependency by importing all its used files into inadyn.
  This should ease adoption by distributions and end users.  All code
  is under free licenses: BSD, ISC.
- Import Timur's Debian packaging, adding debconf support

### Fixes
- Issue #152: Do not attempt to create PID file in oneshot mode (`-1`)
- Issue #152: Must URL encode custom server URL's
- Issue #170: Use configured `--prefix` not hard coded `/etc/inadyn.conf`
- Issue #172: Use separate variable for `--iface` command line option and
  `.conf` file option


[v2.1][] - 2016-12-04
---------------------

### Changes
- Use HTTPS instead of HTTP by default
- Support for disabling HTTPS for `checkip-server`, per provider.
  Idea from Valery Frolov
- Add `-I,--ident=NAME` option for syslog+pidfile name
- Deprecate `--pidfile=NAME` option in favor of `--ident=NAME`

### Fixes
- Issue #150: Custom update URL parser fixes
- Issue #151: Support for detecting OpenSSL v1.1
- Issue #144: Clarify use of public vs private IP.  It is possible
  to register private IP addresses in a public DNS
- Clarify `--foreground` option in man page
- Document minimum required versions of libite and libConfuse
- Portability fixes, replace `__progname` with a small function,
  replace `%m` with `%s` and `strerror(errno)`.


[v2.0][] - 2016-09-12
---------------------

New configuration file format, changed command line options, improved
HTTPS support using GnuTLS and Open/LibreSSL.  Inadyn now comes with
certificate validation enabled by default.

### Changes
- New configuration file format using [libConfuse][]
- Radically simplified command line, a .conf file is now required
- Reorganized SSL code, split `ssl.c` into `openssl.c` and `gnutls.c`
- Strict HTTPS certificate validation is now default.  To disable this
  use `strict-ssl = false` in the .conf file.
- Certificate validation uses trusted CA certificates from the system
  with fall-backs to certain known locations.  To override this default
  handling a `ca-trust-file = FILE` setting in `inadyn.conf` can be used
  to provide the path to another CA cert bundle, in PEM format.
- Massive overhaul of `inadyn(8)` and `inadyn.conf(5)` man pages
- Support for reading address from interface, including IPv6 addresses
- Support for calling an external script to get the IP address
- Support for multiple users @ same provider, idea from Valery Frolov:

        provider default@no-ip.com:1 {
            username    = ian
            password    = secret
            alias       = flemming.no-ip.com
        }

        provider default@no-ip.com:2 {
            username    = james
            password    = bond
            alias       = spectre.no-ip.com
        }

- Support for ddnss.de and dynv6.com, contributed by Sven Hoefer
- Support for spdyn.de, on request from Frank Röhm
- Support for strato.com, contributed by Duncan Overbruck
- Support for disabling IP address validation: `verify-address = false`
- Refactored memory handling and privilige separation to simplify code
- Refactored logging and backgrounding to simplify code
- Removed old compatibility symlinks and other required GNU specific
  files, we now distribute and install README.md and ChangeLog.md

### Fixes
- Fix issue #61: Add HTTPS certificate validation for OpenSSL/LibreSSL
- Fix issue #67: Use GnuTLS native API for HTTPS
- Fix DuckDNS: now requires 'www.' prefix in server URL.  By Frank Aurich
- Fix issue #110: Poodle `SSL_MODE_SEND_FALLBACK_SCSV` not needed
- Fix issue #101: Remove support for custom pidfile
- Fix issue #102: Relocate cache files `/var/run/inadyn` to `/var/cache/inadyn`
- Fix issue #113: `--drop-privs` does not work
- Add actual permissions check to `os_check_perms()`
- Fix issue #121: Support for fully customizable update URL
- Fix issue #122: Only use HTTPS connection for DNS update, not checkip
- Fix issue #131: Use FreeDNS' own checkip server instead of DYN.com's
- Fix issue #134: Support wildcard cert with GnuTLS backend
jperkin pushed a commit that referenced this issue Jan 3, 2020
Upstream changes (from NEWS):

v1.8.5

* Security fix for CVE-2019-20205 (#127), integer overflow problem,
  reported by @sleicasper.

* Security fix for CVE-2019-20056 (#126), assertion failure problem,
  reported by @sleicasper.

* Security fix for CVE-2019-20094 (#125), heap overflow problem,
  reported by @cuanduo.

* Security fix for #124, illegal longjump() call problem,
  reported by @cuanduo.

* Serucity fix for #74 and #123, access violation problem,
  reported by @hongxuchen and SuhwanSong.

* Security fix for #122, heap overflow problem,
  reported by @SuhwanSong.

* Security fix for CVE-2019-20023(#117, #119, #120), memory leaks problem,
  reported by @SuhwanSong and @gutiniao.

* Strip first flag check in LZW compression function for issue #118,
  reported by @yoichi
jperkin pushed a commit that referenced this issue Mar 25, 2020
Update ruby-airbrussh to 1.4.0.


1.4.0 (2019-10-13)

New Features

* Allow ConsoleFormatter context to be configurable (#131) @pblesi


1.3.4 (2019-09-15)

Housekeeping

* Add issues, source code URLs to gemspec metadata (#129) @mattbrictson
* Add changelog_uri to metadata to easily link from rubygems.org (#128)
  @nickhammond


1.3.3 (2019-08-18)

Bug Fixes

* Fix LoadError when airbrussh is used without rake installed (#127)
  @mattbrictson

Housekeeping

* Migrate to new GitHub Actions config format (#125) @mattbrictson
* Remove chandler from rake release process (#124) @mattbrictson
* Set up release-drafter (#123) @mattbrictson
* Eliminate double CI builds on PRs (#122) @mattbrictson


1.3.2 (2019-06-15)

* #121: Gracefully handle SSH output that has invalid UTF-8 encoding instead
   of raising an exception - @mattbrictson
jperkin pushed a commit that referenced this issue May 20, 2020
v0.9.5 (2020-03-28) : I Knew Her, She Knew Me
----------------------------------------------

Fix
~~~
- `eyeD3 --genre ""` to clear genre frame restored.
- Genre id->name mapping for non-standard genres and custom maps.


v0.9.4 (2020-03-21) : The Devil Made Me Do It
-----------------------------------------------

New
~~~
- Relative volume adjustments (RVA2 and RVAD) (#399)
- Tag properties copyright and encoded_by
- Support GRP1 (Apple) frames.

Changes
~~~~~~~
- Genre serialization not ID3 v2.3 format by default, and other genre cleanup (#402)
  fixes #382

Fix
~~~
- Date correctness between ID3 versions (#396)
- PopularityFrame email encoding bug.
- Plugins more featured in docs


v0.9.3 (2020-03-01) : It Dawned On Me
--------------------------------------

Changes
~~~~~~~
- Track/disc numbers can be set with integer strings.
- Disc number getter and setter hooks

v0.9.2 (2020-02-10) : Into The Future
--------------------------------------

Fix
~~~
- Removed setting of PYTHONIOENCODING, it breaks MacOS.
  Fixes #388


v0.9.1 (2020-02-09) : Dead and Gone
------------------------------------

Fix
~~~
- Docs and pep8.

Other
~~~~~
- Experiment with setting utf-8 writer for stdout and stderr.


v0.9 (2020-01-01) : Favorite Thing
-----------------------------------

Major Changes
~~~~~~~~~~~~~
- Dropped support for Python versions 2.7, 3.4, and 3.5.
- File scanning is no longer recursive by default; use `-r / --recursive`.
- Default log-level changed from WARNING to ERROR.

New
~~~
- Mime-type detection uses filetype.py (libmagic no longer required)
- setFileScannerOpts function accepts `default_recursive` option.
- A new `jsontag` plugin for converting tags to JSON.
- A new `extract` plugin for extracting tags from media.
- A new `yamltag` plugin for converting tags to YAML.
- A new `mimetypes` plugin for listing file mime-types / measuring performance
- Original artist support (TOPE frame, --orig-artist)
- Added support for Python 3.8 and pypy3.

Changes
~~~~~~~
- Log warning when ID3 v1.x text truncation occurs. Fixes #299.
- Accept (invalid) date strings for the form YYYYMMDD. Fixes #379
- Adjust replay gain correctly for lame >= 3.95.1 headers.
- Added -r/--recursive argument. eyeD3 is no longer recursive by default (#378)
- Regenerated grako parser.
- New ValueError for _setNum when unknown type/values are passed.
- Moved src/* to top-level repo directory.

Fix
~~~
- PRIV data type checking, fixed examples, etc.
- Use tox for `make test`
- ID3 v2.3 to v2.4 date conversion.
- Match mp3 mime-types against all possible mime-types.
  Specifically, application/x-font-gdos. Fixes #338
- Fix simple typo: titel -> title. <tim.gates@iress.com>
- Fixed: load the right config file in arguments. <zhumumu@gmail.com>
- Fix issue tracker link. Fixes #333.
- Fixed art plugin when `pylast` is not installed.
- Unbound variable for track num/total.  Fixes #327.
- Fixed MP3 header search to not false match on BOMs.
- Honor APIC text encoding when description is "".  #200.
- Fixed bug with improper types when re-rendering unique file ID. (#324)
  <gabrieldiegoteixeira@gmail.com>
- UFID fixes, update (#325) <gabrieldiegoteixeira@gmail.com>

Other
~~~~~
- Deprecation of eyed3.utils.guessMimeType
- Removed ipdb from dev requirements


v0.8.12 (2019-12-27)
---------------------

Changes
~~~~~~~
- Accept (invalid) date strings for the form YYYYMMDD. Fixes #379

Other
~~~~~
- Test with py38


v0.8.11 (2019-11-09)
------------------------

Fix
~~~
- ID3 v2.3 to v2.4 date conversion.
- Match mp3 mime-types against all possible mime-types.
  Specifically, application/x-font-gdos. Fixes #338


v0.8.10 (2019-03-07) : Apples
------------------------------

New
~~~
- Log warning when ID3 v1.x text truncation occurs. Fixes #299.

Fix
~~~
- Honor APIC text encoding when description is "".  #200.
- Fixed bug with improper types when re-rendering unique file ID. (#324)
  <gabrieldiegoteixeira@gmail.com>


v0.8.9 (2019-01-12) : Descent Into...
--------------------------------------

Changes
~~~~~~~
- Fixup plugin: -t changed to --type.
- Pin pathlib to latest version 1.0.1 (#304) <github-bot@pyup.io>

Fix
~~~
- Force no-color output when stdout is not a terminal (#297)
  <gaetano.guerriero@gmx.com>
- Requirements.txt: pathlib is only needed for older python versions
  (#284) <Mic92@users.noreply.github.com>
- Art plugin: Pin pylast to 2.x to preserve Python2 support.


v0.8.8 (2018-11-28) : In Ruins
------------------------------

New
~~~
- Follow symlink directories. Fixes #224

Changes
~~~~~~~
- Eyed3.core.AudioInfo `time_secs` is now a float and non-lossy. Fixes #210
- Removed Python 3.3 support.

Fix
~~~
- Better type handling during TLEN [fixup plugin].
- Don't tweak logging by default, only thru `main`. Fixes #243

Other
~~~~~
- Added a separate example for Windows (--add-image <url>) [Addresses
  the issue #219] (#220) <chamatht@gmail.com>


v0.8.7 (2018-06-11) : Aeon
---------------------------

Fix
~~~
- Only use os.fwalk where supported.


v0.8.6 (2018-05-27) : Robot Man
--------------------------------

New
~~~
- Art plugin can now download album covers from last.fm.

Changes
~~~~~~~
- Use os.fwalk for its better performance (esp. >= py37) Fixes #166
- TagTemplate `path_friendly` is now a string, namely the delimiter to use.

Fix
~~~
- Classic plugin: --write-image will work with --quiet. Fixes #188
- Multiple fixes for display plugin %images% replacements. Fixes #176
- Allow --remove-* options to work when there are no tags. Fixes #183


v0.8.5 (2018-03-27) : 30$ Bag
-----------------------------

New
~~~
- Mp3AudioFile.initTag now returns the new tag.
- Eyed3.core.EP_MAX_SIZE_HINT.
- Added docs for install devel dependencies and test data.

Changes
~~~~~~~
- Similarly to TextFrame, fallback to latin1 for invalid encodings.
- Removed paver as a dep.
- Removed fabfile and mkenv.
- Clean pytest_cache.
- Nicfit.py cc update.

Fix
~~~
- Handle missing `fcntl` on Windows. Fixes #135.
- In addition to None, "" will now clear dates.
- Update index.rst to reflect the code is in a Git repo, not Mercurial (#164)
  <deoren@users.noreply.github.com>

Other
~~~~~
- Update pytest from 3.2.2 to 3.5.0 (#175) <github-bot@pyup.io>
- Update twine from 1.9.1 to 1.11.0 (#173) <github-bot@pyup.io>
- Update sphinx from 1.6.5 to 1.7.2 (#174) <github-bot@pyup.io>
- Update sphinxcontrib-paverutils from 1.16.0 to 1.17.0 (#172) <github-
  bot@pyup.io>
- Update pytest-runner from 3.0 to 4.2 (#171) <github-bot@pyup.io>
- Update nicfit.py from 0.7 to 0.8 (#161) <github-bot@pyup.io>
- Update ipdb from 0.10.3 to 0.11 (#159) <github-bot@pyup.io>
- Update factory-boy from 2.9.2 to 2.10.0 (#150) <github-bot@pyup.io>
- Update pyaml from 17.10.0 to 17.12.1 (#138) <github-bot@pyup.io>
- Update python-magic to 0.4.15 (#130) <github-bot@pyup.io>
- Update pip-tools from 1.10.1 to 1.11.0 (#129) <github-bot@pyup.io>
- Update check-manifest from 0.35 to 0.36 (#125) <github-bot@pyup.io>


v0.8.4 (2017-11-17) : The Cold Vein
-------------------------------------

New
~~~
- Composer (TCOM) support (#123)
- Check for version incompatibilities during version changes.

Changes
~~~~~~~
- More forgiving of invalid text encoding identifiers (fixes #101)
- More forgiving of bad Unicode in text frames (fixes #105)
- EyeD3 cmd line helper turned not session-scoped fixture.
- Only warn about missing grako when the plugin is used. Fixes #115.

Fix
~~~
- Fix python3 setup when system encoding is not utf-8 (#120)
  <x.guerriero@tin.it>
- Fix bad frames detection in stats plugin for python3 (#113)
  <x.guerriero@tin.it>
- Script exits with 0 status when called with --version/--help (#109)
  <x.guerriero@tin.it>
- Help pymagic with poorly encoded filenames.
- [display plugin] Handle comments.
- [display plugin] Handle internal exception types. Fixes #118.
- IOError (nor OSError) have a message attr.

Other
~~~~~
- Set theme jekyll-theme-slate.
- Update pytest to 3.2.5 (#122) <github-bot@pyup.io>
- Update pytest-runner to 3.0 (#108) <github-bot@pyup.io>
- Update sphinx to 1.6.5 (#106) <github-bot@pyup.io>
- Update flake8 to 3.5.0 (#107) <github-bot@pyup.io>


v0.8.3 (2017-10-22) : So Alone
-------------------------------

Fix
~~~
- Reload and process after tag removals, fixes #102. (PR #103)
- Display incorrectly encoded strings (usually filenames)

Other
~~~~~
- Make the classic output span the actual width of the tty so you can
  see the actual path with a long file name. (#92) <redshodan@gmail.com>


v0.8.2 (2017-09-23) : Standing At the Station
----------------------------------------------

New
~~~
- Pypy and pypy3 support.

Changes
~~~~~~~
- 'nose' is no longer used/required for testing.

Fix
~~~
- Fix for Unicode paths when using Python2.  Fixes #56.


v0.8.1 (2017-08-26) : I Can't Talk To You
------------------------------------------

New
~~~
- ``make pkg-test-data`` target.
- Sample mime-type tests.

Fix
~~~
- Added ``python-magic`` as a dependency for reliable mime-type detection.
  Fixes #61
- Add pathlib to requirements. Fixes #43.
- [doc] Fixed github URL.


v0.8 (2017-05-13) : I Don't Know My Name
-----------------------------------------
.. warning::
  This release is **NOT** API compatible with 0.7.x. The majority
  of the command line interface has been preserved although many options
  have either changed or been removed.  Additionally, support for Python 2.6
  has been dropped.

New
~~~
- Python 3 support (version 2.7 and >= 3.3 supported)
- The Display plugin (-P/--plugin display) enables complete control over tag
  output. Requires ``grako``. If using pip, ``pip install eyeD3[display]``.
  Contributed by Sebastian Patschorke.
- Genre.parse(id3_std=False) (and --non-std-genres) to disable genre #
  mapping.
- eyed3.load accept pathlib.Path arguments.
- eyed3.core.AudioFile accept pathlib.Path arguments.
- eyed3.utils.walk accept pathlib.Path arguments.
- New manual page. Contributed by Gaetano Guerriero
- ``make test-data``

Changes
~~~~~~~~
- Project home from to GitHub: https://github.com/nicfit/eyeD3

Fix
~~~
- Lang fixes, and no longer coerce invalids to eng.

Other
~~~~~
- Moved to pytest, although unittest not yet purged.
jperkin pushed a commit that referenced this issue Jul 14, 2020
### All Platforms
- Allow the RPC server to listen on an IPv6 address ([#161](transmission/transmission#161))
- Change `TR_CURL_SSL_VERIFY` to `TR_CURL_SSL_NO_VERIFY` and enable verification by default ([#334](transmission/transmission#334))
- Go back to using hash as base name for resume and torrent files (those stored in configuration directory) ([#122](transmission/transmission#122))
- Handle "fields" argument in "session-get" RPC request; if "fields" array is present in arguments, only return session fields specified; otherwise return all the fields as before
- Limit the number of incorrect authentication attempts in embedded web server to 100 to prevent brute-force attacks ([#371](transmission/transmission#371))
- Set idle seed limit range to 1..40320 (4 weeks tops) in all clients ([#212](transmission/transmission#212))
- Add Peer ID for Xfplay, PicoTorrent, Free Download Manager, Folx, Baidu Netdisk torrent clients ([#256](transmission/transmission#256), [#285](transmission/transmission#285), [#355](transmission/transmission#355), [#363](transmission/transmission#363), [#386](transmission/transmission#386))
- Announce `INT64_MAX` as size left if the value is unknown (helps with e.g. Amazon S3 trackers) ([#250](transmission/transmission#250))
- Add `TCP_FASTOPEN` support (should result in slight speedup) ([#184](transmission/transmission#184))
- Improve ToS handling on IPv6 connections ([#128](transmission/transmission#128), [#341](transmission/transmission#341), [#360](transmission/transmission#360), [#692](transmission/transmission#692), [#737](transmission/transmission#737))
- Abort handshake if establishing DH shared secret fails (leads to crash) ([#27](transmission/transmission#27))
- Don't switch trackers while announcing (leads to crash) ([#297](transmission/transmission#297))
- Improve completion scripts execution and error handling; add support for .cmd and .bat files on Windows ([#405](transmission/transmission#405))
- Maintain a "session ID" file (in temporary directory) to better detect whether session is local or remote; return the ID as part of "session-get" response (TRAC-5348, [#861](transmission/transmission#861))
- Change torrent location even if no data move is needed ([#35](transmission/transmission#35))
- Support CIDR-notated blocklists ([#230](transmission/transmission#230), [#741](transmission/transmission#741))
- Update the resume file before running scripts ([#825](transmission/transmission#825))
- Make multiscrape limits adaptive ([#837](transmission/transmission#837))
- Add labels support to libtransmission and transmission-remote ([#822](transmission/transmission#822))
- Parse `session-id` header case-insensitively ([#765](transmission/transmission#765))
- Sanitize suspicious path components instead of rejecting them ([#62](transmission/transmission#62), [#294](transmission/transmission#294))
- Load CA certs from system store on Windows / OpenSSL ([#446](transmission/transmission#446))
- Add support for mbedtls (formely polarssl) and wolfssl (formely cyassl), LibreSSL ([#115](transmission/transmission#115), [#116](transmission/transmission#116), [#284](transmission/transmission#284), [#486](transmission/transmission#486), [#524](transmission/transmission#524), [#570](transmission/transmission#570))
- Fix building against OpenSSL 1.1.0+ ([#24](transmission/transmission#24))
- Fix quota support for uClibc-ng 1.0.18+ and DragonFly BSD ([#42](transmission/transmission#42), [#58](transmission/transmission#58), [#312](transmission/transmission#312))
- Fix a number of memory leaks (magnet loading, session shutdown, bencoded data parsing) ([#56](transmission/transmission#56))
- Bump miniupnpc version to 2.0.20170509 ([#347](transmission/transmission#347))
- CMake-related improvements (Ninja generator, libappindicator, systemd, Solaris and macOS) ([#72](transmission/transmission#72), [#96](transmission/transmission#96), [#117](transmission/transmission#117), [#118](transmission/transmission#118), [#133](transmission/transmission#133), [#191](transmission/transmission#191))
- Switch to submodules to manage (most of) third-party dependencies
- Fail installation on Windows if UCRT is not installed

### Mac Client
- Bump minimum macOS version to 10.10
- Dark Mode support ([#644](transmission/transmission#644), [#722](transmission/transmission#722), [#757](transmission/transmission#757), [#779](transmission/transmission#779), [#788](transmission/transmission#788))
- Remove Growl support, notification center is always used ([#387](transmission/transmission#387))
- Fix autoupdate on High Sierra and up by bumping the Sparkle version ([#121](transmission/transmission#121), [#600](transmission/transmission#600))
- Transition to ARC ([#336](transmission/transmission#336))
- Use proper UTF-8 encoding (with macOS-specific normalization) when setting download/incomplete directory and completion script paths ([#11](transmission/transmission#11))
- Fix uncaught exception when dragging multiple items between groups ([#51](transmission/transmission#51))
- Add flat variants of status icons for message log ([#134](transmission/transmission#134))
- Optimize image resources size ([#304](transmission/transmission#304), [#429](transmission/transmission#429))
- Update file icon when file name changes ([#37](transmission/transmission#37))
- Update translations

### GTK+ Client
- Add queue up/down hotkeys ([#158](transmission/transmission#158))
- Modernize the .desktop file ([#162](transmission/transmission#162))
- Add AppData file ([#224](transmission/transmission#224))
- Add symbolic icon variant for the Gnome top bar and when the high contrast theme is in use ([#414](transmission/transmission#414), [#449](transmission/transmission#449))
- Update file icon when its name changes ([#37](transmission/transmission#37))
- Switch from intltool to gettext for translations ([#584](transmission/transmission#584), [#647](transmission/transmission#647))
- Update translations, add new translations for Portuguese (Portugal)

### Qt Client
- Bump minimum Qt version to 5.2
- Fix dropping .torrent files into main window on Windows ([#269](transmission/transmission#269))
- Fix prepending of drive letter to various user-selected paths on Windows ([#236](transmission/transmission#236), [#307](transmission/transmission#307), [#404](transmission/transmission#404), [#437](transmission/transmission#437), [#699](transmission/transmission#699), [#723](transmission/transmission#723), [#877](transmission/transmission#877))
- Fix sorting by progress in presence of magnet transfers ([#234](transmission/transmission#234))
- Fix .torrent file trashing upon addition ([#262](transmission/transmission#262))
- Add queue up/down hotkeys ([#158](transmission/transmission#158))
- Reduce torrent properties (file tree) memory usage
- Display tooltips in torrent properties (file tree) in case the names don't fit ([#411](transmission/transmission#411))
- Improve UI look on hi-dpi displays (YMMV)
- Use session ID (if available) to check if session is local or not ([#861](transmission/transmission#861))
- Use default (instead of system) locale to be more flexible ([#130](transmission/transmission#130))
- Modernize the .desktop file ([#162](transmission/transmission#162))
- Update translations, add new translations for Afrikaans, Catalan, Danish, Greek, Norwegian Bokmål, Slovenian

### Daemon
- Use libsystemd instead of libsystemd-daemon (TRAC-5921)
- Harden transmission-daemon.service by disallowing privileges elevation ([#795](transmission/transmission#795))
- Fix exit code to be zero when dumping settings ([#487](transmission/transmission#487))

### Web Client
- Fix tracker error XSS in inspector (CVE-?)
- Fix performance issues due to improper use of `setInterval()` for UI refresh (TRAC-6031)
- Fix recognition of `https://` links in comments field ([#41](transmission/transmission#41), [#180](transmission/transmission#180))
- Fix torrent list style in Google Chrome 59+ ([#384](transmission/transmission#384))
- Show ETA in compact view on non-mobile devices ([#146](transmission/transmission#146))
- Show upload file button on mobile devices ([#320](transmission/transmission#320), [#431](transmission/transmission#431), [#956](transmission/transmission#956))
- Add keyboard hotkeys for web interface ([#351](transmission/transmission#351))
- Disable autocompletion in torrent URL field ([#367](transmission/transmission#367))

### Utils
- Prevent crash in transmission-show displaying torrents with invalid creation date ([#609](transmission/transmission#609))
- Handle IPv6 RPC addresses in transmission-remote ([#247](transmission/transmission#247))
- Add `--unsorted` option to transmission-show ([#767](transmission/transmission#767))
- Widen the torrent-id column in transmission-remote for cleaner formatting ([#840](transmission/transmission#840))
jperkin pushed a commit that referenced this issue Sep 9, 2020
4.23 2020-09-05 (rurban)
        - Fixup t/54_stringify change for JSON 2.09 (really use PR #169 madsen)

4.22 2020-09-04 (rurban)
        - Fix t/54_stringify needs JSON 2.09 for allow_unknown (PR #169 madsen)
        - Fix t/118_type.t for 5.6
        - Fix t/96_interop.t for missing JSON::XS (GH #83 ribasushi)
        - Possible fix for s390x with long double, untested (GH #83)

4.21 2020-08-13 (rurban)
        - Fix not enough HEK memory allocation for the new canonical tied hashes
          feature. (GH #168)
        - TODO broken JSON::PP::Boolean versions 2.9x - 4.0 with threads::shared in
          125_shared_boolean.t

4.20 2020-08-12 (rurban)
        - New feature: sort tied hashes with canonical. (GH #167)
        - Fix encode of threads::shared boolean (#166 Sam Bingner).
          This was broken with 4.00.
        - Fix some stringify overload cases via convert_blessed (GH #105)
        - Fix a compat case with JSON::XS, when convert_blessed is set, but
          allow_blessed not. (GH #105)
        - Improve blessed and stringify tests
        - Work on better inf/nan detection on AIX (#165 Peter Heuchert)
        - Fix documentation for booleans and their types (#162 by Karen Etheridge)

4.19 2020-02-06 (rurban)
        - Fix typed decode memory leak (#160 by Pali).

4.18 2019-12-13 (rurban)
        - Add new method ->type_all_string (#156 by Pali).
          When type_all_string is set then encode method produce stable deterministic
          string types in result JSON.
          This can be an alternative to Cpanel::JSON::XS::Type when having
          deterministic output is required but string JSON types are enough for any
          output.
        - Move SvGETMAGIC() from encode_av() and encode_hv() to encode_sv()
          (#156 by Pali)
        - Add Math::BigInt and Math::BigFloat as recommended dependences
          (#157 by Pali and Grinnz)

4.17 2019-11-04 (rurban)
        - Add Changes tests and fixups (see #155)

4.16 2019-11-04 (rurban)
        - Use Perl_strtod instead of self-made atof (via pow), to
          minimize differences from core string-to-float conversions.
          (#154). Fixes float representation regressions (in the 1e-6
          to 1e-16 range) since 5.22.

4.15 2019-10-21 (rurban)
        - Fix more tests for nvtype long double

4.14 2019-10-15 (rurban)
        - Fix tests for nvtype long double (#153)
        - Fix PREREQ's. E.g. CentOS 7 has not Test::More anymore. (#152 by Pali)

4.13 2019-10-14 (rurban)
        - For JSON_TYPE_INT and JSON_TYPE_FLOAT allow to encode numeric values
          above 2^64 in PV slot via Math::BigInt/Float (#145, #148, #149 by Pali)
        - For JSON_TYPE_INT and JSON_TYPE_FLOAT encoder allow to pass Math::BigInt
          and Math::BigFloat objects with allow_bignum. (#147 by Pali)
        - Fix encoding floating point values above 2^64 in PV slot to JSON_TYPE_INT
          (#148, #150 by Pali)
        - Do not allow serializing objects when convert_blessed is not enabled.
          (#146 by Pali)

4.12 2019-06-11 (rurban)
        - Make encoder independent on Math::BigInt version (#140 by Pali)
        - Rethrow error from eval_sv and eval_pv() (#138, #139 by Pali),
          e.g. when Math::BigInt/BigFloat fails.
        - Fix encoding Inf and NaN from PV and NV slots to JSON_TYPE_INT
          (#137 by Pali)
        - Fix memory corruption in sv_to_ivuv() function (#136 by Pali)
        - Add new method ->require_types (#135 by Pali)
        - Fix typed json encoder conversion from scalar's PV and NV slot to
          JSON_TYPE_INT (#133, #134 by Pali)
        - Fix inconsistency with warnings in typed json encoder (#131 by Pali)
        - Fix Perl 5.8.0 support (#130 by Pali)
        - Fixed minor pod typo (#129 by sheeit)
        - Document invalid recursive callbacks or overloads (#128)

4.11 2019-03-26 (rurban)
        - Fix unicode strings with BOM corrupt ->utf8 state (#125)
          The BOM encoding effects only its very own decode call,
          not its object.

4.10 2019-03-18 (rurban)
        - Fix incr_text refcounts (#123)
        - Add incr_rest testcase (#123)
        - Fix encode_stringify string-overload refcnt problem (#124)
          "Attempt to free unreferenced scalar" with convert_blessed and overload.

4.09 2019-02-15 (rurban)
        - Add seperate allow_dupkeys property, in relaxed (#122)
        - Fixed allow_dupkeys for the XS slow path
        - Silence 2 -Wunused-value warnings
        - Fix ->unblessed_bool to produce modifiable perl structures (PR #121 by Pali)
jperkin pushed a commit that referenced this issue Sep 21, 2020
# pkgload 1.1.0

* `dev_example()` now works after removing an inconsistent call to `load_all()`
  (@riccardoporreca, #122).

* `load_all()` now issues a warning if exported objects conflict with objects
  defined in the global environment (#112)

* `run_example()` arguments `run` and `test` are deprecated in favor of the
  (hopefully) more clear `run_dontrun` and `run_donttest` (#107).

* Internal fixes for compatibility with the future 4.1.0 release.
jperkin pushed a commit that referenced this issue Dec 28, 2020
Change since 1.3.1 from RELEASE_NOTES

1.4.0           2018/06/??
        Add ARC support.  Extensive work contributed by ValiMail.
        Add "DomainWhitelist" and "DomainWhitelistFile" config options.
        Extract client IP address for ARC reports when provided via
                Authentication-Results.
        Update SQL schema to support new reporting functionality for DKIM
                selectors and ARC local policy overrides (refer to the example
                schema.mysql file).
        Add experimental support for reporting of ARC local policy overrides.
        Add support for recording and reporting of DKIM selectors.
        Override a DMARC "fail" if an ARC "pass" is recorded in conjunction with
                an ARC policy pass.
        Fix bug #137: Handle base64 inside AR tokens that are values.
                Problem reported by Joseph Coffland.
        LIBOPENDMARC: Fix bug #203: Reject DMARC records that have duplicate
                tags in them.  Reported by Dirk Stoecker.
        REPORTS: Feature request #146: Add option to pull input from a file.
        REPORTS: Fix bug #153: Suppress duplicate results from the same
                domain.  Patch from Tomki Camp.

1.3.2           2017/03/04
        Feature request #86: Change meaning of "RequiredHeaders" such that
                header validity is always checked, but messages are only
                rejected on that basis when the flag is set.  Based
                on a patch from Andreas Schulze.
        Feature request #127: Log SPF results when rejecting.  Requested
                by Patrick Wagner; patch from Andreas Schulze, follow-up
                patch from Juri Haberland.
        Feature request #138: Inculde policy and disposition information
                in an Authentication-Results comment.  Based on a patch
                from Juri Haberland.
        Feature request #139: Include the client host name if known
                in failure reports.  Suggested by Roland Turner;
                patch by Andreas Schulze.
        Fix bug #95: Assume IPv6 for SPF operations.  Patch from Juri Haberland.
        Fix bug #120: Fix control logic around the SPF result.
                Reported by Christophe Wolfhugel; patch from Andreas Schulze.
        Fix bug #122: Don't skip the HELO milter phase when SPF is enabled.
                Reported by Christophe Wolfhugel.
        Fix bug #157: Fix logging of implicit authserv-ids.  Reported
                by Andreas Schulze; patch from Juri Haberland.
        Fix bug #158: Log ignored connections.  Patch from Andreas Schulze.
        Fix bug #160: Fix "SyslogFacility" handling.  Patch from
                Juri Haberland.
        Fix bug #163: Use a larger buffer for the raw MAIL FROM value.
                Based on a patch from Andreas Schulze.
        Fix bug #174: Trim "!" suffixes from reporting addresses.  Problem
                noted by Juri Haberland.
        Fix bug #186: When reloading the configuration file, the public
                suffix list was read in with the wrong comment indicator.
                Patch from Federico Omoto.
        Fix bug #194: Fix inappropriate DMARC status when "p=none" is
                discovered.  Patch from Juri Haberland.
        Fix bug #195: When parsing Received-SPF, use the correct constants
                in the history file entries.  Patch from Juri Haberland.
        LIBOPENDMARC: Fix bug #115: Fix type mismatch.  Patch from
                Sebastian A. Siewior via Scott Kitterman.
        LIBOPENDMARC: Fix bug #121: Fix IPv6 CIDR matching in SPF code.
                Patch from Christophe Wolfhugel.
        LIBOPENDMARC: Fix bug #125: Compile time IPv6 fix.  Reported by
                Christophe Wolfhugel.
        LIBOPENDMARC: Fix bug #131: Fix alignment bug.  Patch from
                Andreas Schulze.
        LIBOPENDMARC: Fix bug #147: Fix stripping of whitespace from
                DMARC DNS records.  Based on a patch from Job Noorman.
        LIBOPENDMARC: Fix bug #149: Apply "sp" setting, if present and
                applicable.  Patch from Petr Novak.
        LIBOPENDMARC: Fix bug #154: Fix "rf" and "fo" processing logic.
        LIBOPENDMARC: Fix bug #156: Fix variable name.  Patch by
                Andreas Schulze.
        LIBOPENDMARC: Fix bug #165: Fix logic in checking which SPF
                identifier was used.  Patches from Marco Favero and
                Juri Haberland.
        LIBOPENDMARC: Fix bug #167: Don't return "fail" when we should
                return "none".  Patch from Marco Favero.
        REPORTS: Fix bug #134: Handle SMTP errors correctly.  Patch from
                Andreas Schulze.
        REPORTS: Fix bug #141: Set the HELO parameter correctly.
                Reported by Alan Smith; patch from Andreas Schulze.
        REPORTS: Fix bug #143: Fix logic in table truncation.
                Reported by Wayne Andersen; patch from Juri Haberland.
        REPORTS: Fix bug #162: Always report "sp" in aggregate reports.
                Patch from Juri Haberland.
        REPORTS: Fix bug #166: Fix report start/end time logic.
                Patch from Juri Haberland.
        REPORTS: Fix bug #188: Don't delete inputs too early in
                opendmarc-reports.  Patch from Juri Haberland.
        TOOLS: Fix bug #161: "Forensic" reports were renamed "Failure"
                reports.  Patch from Andreas Schulze.
        TOOLS: Fix bug #164: Handle IPv6 test addresses.  Reported by
                Andreas Schulze; patch from Juri Haberland.
        DOCS: Patch #189: Replace the DMARC RFC with an HTML page
                referencing the relevant specs, since Debian doesn't
                consider RFCs to be "free".  Patch from Scott Kitterman
                via Juri Haberland.
jperkin pushed a commit that referenced this issue Feb 6, 2021
1.9.0 (2021-02-04)

* Misc cleanup #122
jperkin pushed a commit that referenced this issue Jul 22, 2021
Changelog:

Arx Libertatis 1.2 "Mega Mega Mega"

Released: 2021-07-13 (announcement)

Gameplay

  * Added an alternate, less strict rune recognition algorithm
    (enabled by default) (feature request #289, #653)
  * Made rune recognition less dependent on framerate (bug #856)
  * Added an alternate bow aim mode
  * Added gravity to arrows unless fully charged
  * Fixed weapon durability degrading faster at higher framerates
    (bug #790)
  * Fixed poison and magic resistance bonus from equipment and cheats
    being ignored in some cases
  * Fixed player ascending infinitely when attacked while levitating
    (bug #640)
  * Fixed Slow down (Rhaa Rune (decrease)Movis Rune (movement)) spell
    affecting user interface and input and improve player movement
    while it is active (bug #534)
  * Fixed hunger dropping below 0% when overeating (bug #132, fix is
    also applied when loading save files)
  * Higher caster level now makes the Curse (Rhaa Rune (decrease)
    Stregum Rune (magic)Vitae Rune (life)) spell more effective against
    NPC Damages, Armor Class and Damage Absorption instead of less
    effective
  * Calculated Armor Class, Magic Resistance, Poison Resistance and
    Damages stats now include attribute and skill modifiers from items
    and spells (bug #322)
  * The Critical Hit chance now includes item and cheat modifiers
  * The Negate magic (Nhi Rune (remove)Stregum Rune (magic)
    Spacium Rune (field)) spell and effect now correctly follows
    the target
  * Fixed player not receiving experience for kills by summoned
    creatures
  * Fixed selection of replacement weapon when the equipped one
    breaks to select one that is similarly powerful
  * Fixed maximum player Health and Mana ignoring attribute modifiers
    from items and spells while the MAX or MAR cheats are active
  * Fixed Akbaa not attacking the player after using his tentacle
    attack twice (bug #584)
  * Fixed spells without mana drain using the mana drain from
    previous spells
  * Fixed Confuse (Rhaa Rune (decrease)Vista Rune (vision)) spell
    ending immediately (bug #615)

Graphics

  * Windows: In multi-GPU setups (Optimus/PowerXpress) the more
    powerful GPU is now used by default
  * Added a configurable FPS limit independent of vsync, defaulting
    to the display refresh rate
  * Added a field of view setting (feature request #404)
  * Re-added a fullscreen gamma option (feature request #254)
  * Added support for fullscreen modes with different refresh rates
  * Added anti-aliasing to alpha cutouts (color key anti-aliasing,
    alpha to coverage and sample shading
  * Added an option to disable anisotropic filtering
    (feature request #96)
  * Added options to disable view bobbing and camera shake
    (feature request #405)
  * Fixed missing blob shadows under dragged entities
  * Fixed wrongly displayed light flare when dragging a torch (bug #783)
  * Fixed water and lava not being animated while the night vision
    spell is active (bug #1053)
  * Fixed scaling of flares around lights with higher resolutions
  * Fixed light flares showing through scene geometry or disappearing
    when the light is still visible (bug #120)
  * Fixed light flares showing through non-interactive entities
    (e.g. doors that are opening or closing)
  * Fixed light flares being drawn in front interface elements
    including notes (bug #1145)
  * Fixed light flares being disabled when the player book is open
  * Fixed flashes, flares and other effects appearing in front of
    the cinematic border
  * Fixed missing dynamic lighting for far away scene geometry
    (bug #1213)
  * Fixed amount of sparks, flame and smoke particles depending on
    the framerate
  * Fixed cinematic light flicker depending on the framerate
  * Fixed VSync setting not being applied until the game is restarted
  * Fixed water and lava animation overlay (bug #512)
  * Fixed map rendering glitches with buggy OpenGL drivers (bug #539)
  * Fixed Negate magic (Nhi Rune (remove)Stregum Rune (magic)Spacium
    Rune (field)) and Trap (Aam Rune (create)Morte
    Rune (death)Cosum Rune (object)) spell effects not rotating
  * Fixed overzealous entity culling (bug #588)
  * Fixed weapons and equipment always being drawn in front of the
    player hands and arms
  * Fixed player hands clipping with walls in first person view
  * Fixed arrow object rotation not matching direction
  * Fixed missing arrow trails (bug #538) and improved the effect
    (also used in the Speed (Mega Rune (increase)Movis
    Rune (movement)) spell)
  * Fixed NPC animations not playing when close to the player
    (bug #270)
  * Fixed missing aura when a protection spell ended before a Lower
    armor (Rhaa Rune (decrease)Kaom Rune (protection)) on the same
    target
  * Fixed Ylside blow up effect only disappearing when looking at it
    (bug #122)
  * Fixed lighting only being updated every other frame (bug #75)
  * Increased depth buffer from 16 bits minimum to 24 bits to
    prevent Z-fighting (bug #759)
  * Linux: Fixed missing anti-aliasing for some drivers

Interface

  * Added options to scale the player book, HUD and cursor with
    larger resolutions (feature request #391, #996)
  * Added an option to limit speech width on wide screens (enabled
    by default)
  * Fixed scaling and positioning of magic flares when casting with
    higher resolutions (bug #535)
  * Fixed scaling of cinematics with higher and wide resolutions
  * Add an option to letterbox or fade out cinematics with wide
    resolutions (fade by default)
  * Fixed player book and minimap being stretched with wide resolutions
    (bug #211)
  * Fixed minimap texture filtering changing when hovering map markers
    (bug #570)
  * Added anti-aliasing to HUD element borders (even without MSAA)
  * Improved quest book text layout
  * Added options to control the in-game font size and weight
  * Increased default font weight for text in the player book and notes
    to improve readability
  * Improved shop inventory sorting
  * Added crosshair when aiming with a fully charged bow
  * Sorting the inventory now never drops items to the ground
  * Fixed missing quest book background when there are no quest entries
    (bug #1021)
  * Fixed wrong items being highlighted when in combine mode (bug #121)
  * Add missing item halo when combining items
  * Fixed item halo being displayed in front of dragged items
  * Fixed too small font size at resolutions slightly above 640x480
  * Fixed rendering of runes in the player book
  * Removed light affecting the world when clicking on runes in the book
  * Tweaked how spell/stealth/equipment/torch icons move when opening
    the inventory
  * Fixed purse halo not showing when selling certain items
  * Fixed health and mana gauges not being hidden during the death
    animation (bug #806)
  * Fixed position of number in cursor when distributing skill points
  * Fixed level transition icons on the map not being displayed
    correctly (bug #782)
  * The player book is now closed when returning to mouse look mode
    (bug #143)
  * Fixed missing characters after forced line breaks in text
    (bug #718)

Controls

  * Added raw mouse input support and an option to control mouse
    acceleration
  * Fixed border turning (bug #255) and added an option to disable it
  * The "Resume game" menu entry and quickload (F9) now load the last
    save if no game is running (feature request #45)
  * Added a keyboard shortcut for drinking cure poison potions (not
    bound by default)
  * Added a keyboard shortcut to enter level transitions
    (feature request #105)
  * Add an auto ready weapon mode that only triggers on enemies
  * Player book and notes can now be closed using Escape
    (feature request #409)
  * Improved item drag and drop behavior
  * Improved drag threshold to make it less likely to accidentally
    drag an item when Shift+clicking it (bug #1225)
  * Fixed being able to exceed item stack size limits in some cases
    (bug #1111)
  * Added the ability to drop stacks of items to the floor or throw
    them (feature request #36)
  * Added the ability to pick up stacks of items outside inventories
    while holding shift (stealth mode shortcut)
  * Items can now be dragged across saves and level transitions
  * Fixed rotation of dragged and thrown entities (bug #591)
  * Fixed invert mouse setting affecting turning via keyboard or
    screen borders
  * Fixed double-click only working for the first slot in the Action
    binding (bug #795)
  * Mouse grab now released during cutscenes, conversations and
    cinematics
  * Fixed mouse not always being centered when exiting mouse look mode
  * Mouse look mode is now cancelled on focus loss to prevent the
    cursor being continuously warped to the window center

Audio

  * Added an option to enable OpenAL Soft's virtual surround (HRTF)
    support (enabled automatically when using headphones)
  * Re-added environmental audio effects (reverb) using OpenAL EFX
    (the game uses only one relatively neutral environment)
  * Added a config option to select the audio device
    (feature request #379)
  * Restored more spell sounds and fixed spell sound positions
  * The Harm (Rhaa Rune (decrease)Vitae Rune (life)), Ignite (Aam
    Rune (create)Yok Rune (fire)) and Douse (Nhi Rune (remove)Yok
    Rune (fire)) sound effects now correctly follow the caster/target
    (bug #740)
  * Added an option to mute audio when the window is not focused
  * Fixed duplicated page turn sound when clicking top tabs in the
    player book (bug #1125)
  * Fixed casting sound being played on level load when restoring
    persistent fields of protection
  * Fixed bare handed entity hit sound being repeated each frame
  * Fixed sound position when dousing torches
  * Added missing panning for ambient sounds
  * Audio listener orientation now uses the camera pitch (only
    noticeable with HRTF)
  * Fixed audio suddenly cutting off when getting too far from sources

Menu

  * Added text and audio language options (available languages depend
    on your Arx Fatalis version)
  * Added German, Italian, Russian and Spanish localization of new
    menu strings (feature request #1006)
  * Improved customize controls menu:
  * Overwriting bindings no longer moves the old key (bug #717)
  * Key bindings can now be removed using the escape key
    (feature request #408)
  * Displayed key names now use the current keyboard layout
  * Fixed removing duplicated key assignments
  * Fixed being locked out of the config menu when binding the
    'toggle fullscreen' action to the left mouse button (bug #1136)
  * Fixed UI not updating properly when changing key bindings
    (bug #717)
  * Sliders and option widgets can now be controlled using the mouse
    wheel or by clicking at the desired position
  * Fixed checkbox mouseover area (bug #528)
  * Fixed disappearing menu textures after resizing the window (bug #275)
  * Fixed slow cursor animation and shorter cursor trail with higher
    framerates
  * Increased the save thumbnail size
  * Added support for Unicode save names (feature request #1032)
  * Improved editing support in the save name textbox, including copy
    & paste support
  * Improved date/time display in the save list
  * Added additional highlighting and improved positioning to the
    credits
  * Added the libraries and tools used for the build to the credits
  * Added support for scrolling the credits using the mouse wheel
    or keyboard
  * Fixed credits scroll position changing on window size changes

Windowing

  * Switched to SDL 2 for windowing and input (task #506) - SDL 1
    backend will be removed in the next version
  * No longer grabs all keys when fullscreen (with SDL2)
  * The default ("Desktop") resolution now selects fullscreen
    windowed mode (with SDL2) (feature request #300, #449)
  * Added an option not to minimize the fullscreen window on
    Alt+TAB (feature request #814)
  * Added a new high-resolution icon
  * Screen saver is no longer inhibited while in the menu in windowed mode
  * Windows: Disabled OS-level DPI scaling (bug #706)
  * Windows: Fixed missing window icon
  * Linux: Translated the .desktop file to Italian and Spanish
  * macOS: Handle Command + Q shortcut to close the window

Modding

  * Added support for loading uncompressed FTL files
  * Added a blender plugin for FTL files
  * Added support for extending localization strings in mods
  * Added a ^camera system variable returning the active camera
  * Added a ^dragged system variable returning the item being dragged
  * Added the ^angle* and ^view* system system variables returning
    the rotation of the player or another entity
  * Fixed ^gamedays system variable to give the number of days since
    the playthrough start instead of the the number of 10-days
  * Added the -o flag to the spellcast script command to orphan the
    spell after being cast
  * Added library and python wrapper for decompressing FTL files

Debugging

  * Added a script console (feature request #356)
  * Added more debug views and made the key binding configurable
    (feature request #1500)
  * Added --skiplogo, --loadlevel, --loadslot and --loadsave
    command-line option to skip startup logos or load a level
    or save file on startup
  * Added support for loading save files by drag & drop
  * Added ability to rename saves to arxsavetool
  * Added a --benchmark command-line option
  * Added a --override-gl command-line option and extension_overrides
    setting to control used OpenGL extensions
  * Changed to OpenGL debug context and enabled ARB_debug_output for
    debug builds or with the --debug-gl option
  * Added a config option for the vertex streaming buffer size

Tools

  * Added support to arxunpak to extract all resources as seen by
    the game (default when no arguments are given)
  * Added support to arxunpak to create resource manifests with
    checksums
  * arxunpak now handles non-ASCII characters in filenames
  * Unix: Added support for different French and Russian Arx Fatalis
    CD versions to the data install script
  * Unix: Added support for different localized demo versions to the
    data install script
  * Unix: Fixed support for copying non-English data files from Steam
    installs in the data install script (bug #829)

Performance

  * A lot of code cleanup and various performance tweaks
  * Reduced number of redundant OpenGL state changes
  * Improved vertex upload, now uses persistently mapped buffers when
    available
  * MSAA is now disabled for interface draw calls where it does not
    make a difference
  * Optimized particle effect rendering
  * Changed blood rendering to only need one draw command per particle
  * Disabled denormalized floating point numbers on x86 and ARM for
    better performance
  * Added a performance profiling tool
  * Changed magic missile spell to only use one sound source instead
    of one per missile
  * Improved CPU usage when the window is minimized
  * Improved pathfinding performance, especially when the target is
    unreachable (bug #652)
  * Windows: The OpenGL context is no longer re-initialized on
    resolution changes
  * Unix: Enabled -ffast-math in release builds (was already enabled
    for MSVC)

Other Fixes

  * Significantly improved the item-world collision test: thrown or
    dropped items should no longer get stuck in walls, hover above
    the ground or fall through the ground or walls (bug #50, #556, #956)
  * Fixed screenshot shortcut (F10) always overriding the same file
  * Fixed potential resource leaks
  * Fixed direction of player speech outside cutscenes
  * Save files now correctly store game time for playthroughs longer
    than 1193 hours (AL 1.1.x and older as well as AF 1.21 simply
    ignore the additional data)
  * Fixed inconsistent state (weapon equipped while not in combat
    mode) when loading a save that was created while in combat mode
  * Fixed persistent arrow trails if arrows get outside the world
  * Fixed game time not being reset to 0 when starting a new
    playthrough after having an old one loaded
  * Fixed ^sender script variable possibly changing during script
    execution
  * Fixed a buffer overflow when saving with very long script
    variables
  * Fixed missing black bars in a cutscene in the castle of Arx
    (bug #1014)
  * Fixed Akbaa tentacle not being hidden when it is supposed to be
    in the Ylside bunker
  * Fixed crashes with item stack sizes or player gold amounts
    above 999999
  * Fixed wrat teleport breaking when saving and loading during the
    teleport
  * Fixed inconsistent weapon attachment when saving while in combat
    mode (bug #581)
  * Fixed getting stuck in a cutscene in level 5 (bug #1293)
  * Made saving more robust against unexpected filesystem errors
    (bug #439) or other programs opening the save file (bug #1218)
  * Improved handling of corrupted inventories in save files
    (bug #1445)
  * Fixed initial player position when starting a new game after
    already having loaded an existing game (bug #140)
  * Fixed minimap reveal status not being reset when starting a new
    game (bug #1349)
  * Fixed script variables not getting cleared on new game
  * Fixed an error when a resource file size changed after the game
    start
  * Fixed various crashes:
  * Fixed a crash when loading saves with more than 1500 entities in
    a single level (bug #375)
  * Fixed a crash when the entity whose inventory is open is destroyed
    (bug #843)
  * Fixed a crash when the caster or target of a spell is destroyed
    (bug #951)
  * Fixed a crash when the entity selected for combining is destroyed
    (bug #452)
  * Fixed a lockup when throwing items at certain objects
  * Fixed problems when loading save files with bugged entity positions
    (bug #894, #995)
  * Fixed asserts with very high player stats not obtainable during
    normal gameplay (bug #942)

Technical Changes

  * Fixed build with CMake 3.5.0 or newer
  * Fixed Windows XP support with newer MSVC versions
  * New dependency: GLM 0.9.5.0 or newer
  * macOS: New dependency: iconutil (from Xcode) or icnsutil for
    building the .icns icon
  * New crash reporter dependency: WinHTTP / libcurl 7.20.0 or newer
  * Dropped support for CMake < 2.8.3
  * Dropped support for Boost < 1.48
  * Dropped support for Qt < 4.7
  * Added support for using libepoxy instead of GLEW to load OpenGL
    functions
  * The unity build is now enabled by default
  * No longer stores deleted entities in save files if not needed
  * Added SDL 2 fall-back for error dialogs
  * Cleaned up missing data files error dialog, ask before running
    arx-install-data
  * Added support for statically linking Freetype and ZLIB
  * Color output is no longer enabled if $NO_COLOR is set or if $TERM
    is unset or set to "dumb"
  * Added support for setting a runtime libexec search dir different
    from the install path
  * Added support for the ARX_PATH environment variable under Windows
  * Added support for storing .pak and loose files in a data
    subdirectory
  * Added support for loading data files relative to the executable
  * Added support for configuring additional data search paths
  * There is now a dialog on crash and the crash report is prepared
    even if the Qt-based reporter is not available
  * Fixed build on newer macOS versions
  * Save files now track which playthrough they belong to (not used
    in the UI yet)
  * The arx binary now displays a graphical error dialog when passed
    bad command-line arguments
  * Changed passwall cheat to bypass culling
  * Removed the need for a custom vertex shader
  * Added support for using OpenGL ES-CM 1.x when desktop OpenGL is
    not available
  * Add a script warning when a command is missing parameters
  * The Gold linker is used and link time optimizations are now
    enabled automatically when building from source
  * Enabled address randomization for the main executable in MSVC
    builds
  * Made .pak loading case-insensitive on all platforms
  * Windows: Added support for statically linking Qt in the crash
    reporter
  * Windows: Support using a 32-bit crash reporter for a 64-bit arx
    process
  * Windows: Added Unicode filesystem support (feature request #786)

Removed Features

  * DirectX backends (Direct3D, DirectSound, DirectInput)
  * Video bit depth option
  * Support for loading uncooked objects (.teo) and scenes (.scn)
  * Removed link_mouse_look_to_use config option
  * Removed the unused killme script command
  * Removed the unused stack, code, rgb and sub-commands from the
    zoneparam script command
  * Remove stubbed-out -a flag from the set script command
jperkin pushed a commit that referenced this issue Sep 21, 2021
# version 0.5-3

* `read_stars()` accepts a function (or list with functions) as first argument,
   allowing for saving `stars` objects that read from package directories resolving
   platform-dependent paths at run-time

* handle categorical rasters starting at value 0 (by adding 1, and warning); #428

* add `%in%` method; #424

* `read_stars` gains an argument `tolerance` to control tolerance in
  dimension value comparisons; #414

* binary Ops (like `+`, `-`, `*` etc.) work for `stars_proxy` objects; #390

* `st_rasterize` rasterizes multiple attributes, and handles factors
  (when sf >= 0.9-9)

* `write_stars` deals better with `stars_proxy` objects; #404

* fix regression in reading some `stars_proxy` objects; #379

* add `[<-` (partially) and `is.na` methods for `stars_proxy` objects; #402

* add `replace_na` methods; #402

# version 0.5-2

* read and write factor levels as GDAL category names; write color table; #392

* handle `normalize_path` for choosing to `proxy`; #391

* ignore units when there are different units accross bands of a subdataset

* speed up `st_rgb` using faster `st_apply` approach; #315, #390

* improve handling of crs in Spatial objects (avoid loss of wkt comments)

* correctly write band subsets for smaller proxy objects; #291

* write arbitrarily cropped proxy objects; #291

* speed up `st_apply` when a function is provided that works on chunks
  at a time; #390

* warn when breaks = "quantile" results in a single class; #388

* fix `[` bug selecting bands in proxy objects; #388

* for `stars_proxy` objects, `write_stars` writes all objects into a
  multi-layer file; #385

* multi-file proxy objects can be `st_warp`ed with `use_gdal = TRUE`; #385

# version 0.5-1

* fix weird GDAL-related bug in stars2 vignette

* `read_ncdf` does not take time as mid-points of regular intervals,
  but as starting points; #378

# version 0.5-0

* fix handling of rasters with color tables; #375

* `st_apply` and other methods for `stars_proxy` objects handle ... ; #374

* add `st_bbox`, `st_crs` methods for terra's `SpatVector` objects;
  https://github.com/mtennekes/tmap/issues/536

* add `st_bbox`, `st_crs` and `st_as_stars` methods for terra's
  `SpatRaster` objects; https://github.com/mtennekes/tmap/issues/536

* allow for multi-resolution attributes in `stars_proxy` objects
  (e.g., all gray scale sentinel-2 bands); see vignettes 2 and 7 for
  examples.

* `plot` defaults to a categorical color scale when plotting a factor
  variable; https://github.com/mtennekes/tmap/issues/526

* `st_extract` extracts space-time points if `time_column` is
  specified, and handles time intervals; #352

* add `[[<-.stars` method, which is now called by `$<-.stars`, so that
  array names can be set programmatically

* add `transmute` methods

* `plot.stars` calls `droplevels` if a factor array has any `NA` levels; #339

* `read_stars` reads `NaN`s as `NA`; #333

* improve `st_extract` method for both `stars` and `stars_proxy`
  objects; interpolation options are reduced to bilinear; #322, #279,
  #290

* better handle categorical rasters that do not start at value 1; #329

* plot layout can be controlled with `mfrow = c(nr, nc)` argument

* `stars_proxy` objects have a normalized path; #331

* cropping or selecting with `bbox` treats cells always as small
  polygons; #330

* add faster `st_extract` method for `stars` objects; #322

* added vignette: "How `raster` functions map to `stars` functions",
  by Sebastien Rochette; #122, #325

* fix bug in dimension `values` field when downsampling; #324

* `write_stars` also writes out band names; #323

* add `rgdal` to Suggests:

* each `call_list` entry of a `stars_proxy` object carries its proper
  calling environment; #309

* `st_as_sf.stars` copes with zero attribute (empty) stars objects

* add `st_set_bbox` generic, to set raster extent, motivated by #315

* set up tic, with great help from @pat-s, #313

* get rid of more `proj4string`s for representing coordinate reference
  systems; #312

* as(x, "Spatial") correctly handles `from` dimension values different
  from one

* `read_stars` now sets the `BANDNAME` GDAL metadata item, or else the
  band's GetDescription() as the band's dimension values

* `st_as_stars.data.frame` reads simple tables (non-raster data) if
  `dims` has length less than 2

* band descriptions are in the band dimension values

* dimension tables are simpler, and are shown properly in Rstudio

* `st_rgb` gains a `probs` argument, to cut off and stretch based on
  quantiles

* `as(x, "Raster")` merges multiple attributes before converting to
  raster brick
jperkin pushed a commit that referenced this issue Dec 2, 2021
Change log:

0.5.7
======
- Bug Fixes:
  - Update Appdata file and use the same description everywhere
  - Prevent warning when saving a deleted file via a symlink (#135)
  - Conform to Freedesktop.org standard for file naming
  - Properly disconnect signal handlers
  - Be sure not to disable highlighting when disabling regex search
  - Check for realpath()
  - Check for `errno.h` required by CI
  - Fix a nasty memory leak
  - Fix "Save As" procedure when it recurses
  - Allow drag and drop on selections in the textview
  - Code cleanup: Remove a useless dnd signal forwarding
  - Code cleanup: Simplify `mousepad_file_save()`
  - Fix a small memory leak
  - Improve trash can management
  - Update read-only status on file location change/validation
  - Monitor also the target of broken links
  - Fix monitoring of files opened through a symlink
  - Allow drag and drop of broken links
  - Follow symlinks if necessary when checking if a file exists
  - Replace `g_realloc()` with `g_renew()`
  - Replace `g_malloc*()` with `g_new*()` (!113)
  - Make sure that `gtk_selection_data_get_uris()` returned non-NULL (!113)
  - Initialize `contents` and use it to guard `g_file_replace_contents` (!113)
  - Fix an unlikely memory leak
  - Make CSD consistent with other Xfce windows (#145)
- Translation Updates:
  Estonian, Greek, Kazakh, Polish, Serbian, Slovenian, Swedish,
  Ukrainian

0.5.6
======
- New Features:
  - Add session backup and restore
    - Remember windows and tabs (#21, !108)
    - Handle unsaved documents (#32, !109)
    - DE session support (#3, !110)
  - Extend the use of recent history (!107)
  - Add use of `GtkSourceView:smart-backspace` (!101)
  - Add a "Move Words" action (!100)

- Appearance Changes:
  - Add a setting to control tab expansion (#100)
  - Prefs dialog: Substitute CSD for status bar visibility
  - Add a "File" tab to the prefs dialog (!108)
  - Make search input fields less flickery (!104)
  - Allow saving non-existent, empty but named file (#120, !103)
  - Enable "Save" action for read-only documents (#126, !103)
  - Make "Find as you type" an option (!102)
  - Reveal hidden setting "indent-on-tab" (!101)

- Code Refactoring:
  - A review of duplicated view-related actions (#127)

- Tests:
  - Add a test plugin to monitor application state (!105)
  - Add a test script for Mousepad (!99)

- Bug Fixes:
  - Filter notebook click events also on y-coordinate (#144)
  - Allow to open files from the trash can (#141, !112)
  - Monitor file deletion (#140, !111)
  - Printing: Create config file if it does not exist
  - Check all windows for the file to be opened
  - Fix wrong externally modified document in some situations
  - Plugin support: Properly handle plugin settings (#136)
  - Direct monitoring of symlink targets
  - Set the state of submenu actions
  - print-dialog: Fix some memory leaks
  - Fix a type inconsistency in the "encoding-changed" signal
  - Always check if the user has explicitly set a filetype
  - Fix monitoring events to listen to
  - Ensure statefull actions exist until their state is recovered
  - Fix GVariant-related memory leaks
  - Do not warn if the plugin directory does not exist
  - Add a sanity check on the window for "Externally Modified"
  - Do not set the style scheme id as translatable
  - Properly update recent menu in case of file deletion
  - CSD: Set the decoration layout for all windows
  - Add a sanity check on file location for monitoring
  - Add "preferences" action to `mousepad.desktop` (#130)

- Translation Updates:
  Albanian, Arabic, Armenian (Armenia), Basque, Belarusian, Bulgarian,
  Catalan, Chinese (China), Chinese (Taiwan), Croatian, Czech, Danish,
  Dutch, Eastern Armenian, English (Australia), English (United
  Kingdom), Estonian, Finnish, French, Galician, German, Greek, Hebrew,
  Hungarian, Icelandic, Indonesian, Interlingue, Italian, Japanese,
  Kazakh, Korean, Lithuanian, Malay, Norwegian Bokmål, Occitan (post
  1500), Persian (Iran), Polish, Portuguese, Portuguese (Brazil),
  Romanian, Russian, Serbian, Slovak, Slovenian, Spanish, Swedish,
  Thai, Turkish, Ukrainian, Uyghur

0.5.5
======
- New Features:
  - Add a `.desktop` file to make Mousepad appear in Xfce settings (!94)
  - Add a command line option to open the prefs dialog (!94)
  - Plugin support (!92)
  - Add gspell plugin (#1, !92)
  - Disable and wipe recent history if recent-menu-items is set to 0 (#112, !89)
  - Support -ve line and column values for "Go to" location (#113, !84)

- Appearance Changes:
  - Switch to client-side decorations (!97)

- Code Refactoring:
  - Remove Xfconf dependency (#60, #122, !98)
  - A general review of sanity checks
  - A review of window lifetime management
  - A review of document lifetime management
  - Automate and sanitize memory management of sources
  - A small review of GSettings use
  - Do not use `== (TRUE|FALSE)` for boolean conditions

- Bug Fixes:
  - Fix actions to show/hide bars in fullscreen mode (#129)
  - Fix broken "Revert" action
  - Fix and extend "Move Lines" action (#87, #116, !96)
  - Support for drag and drop of tabs when search is active
  - Do a silent search when changing tabs with the search bar enabled
  - Use get/set_real_line_offset () functions for "Paste as Column" (#114, !91)
  - Restore cursor position after transpose (#115, !88)
  - Fix "Delete Line" action (#117, !86)
  - Fix recent_sort function (!90)
  - Reset line and column number if not given on command line (#121, !87)
  - menu: "Spaces to Tabs" converter converts leading spaces (#118, !85)
  - Make window require attention when opening new tabs (2) (#119)

- Translation Updates:
  Albanian, Arabic, Armenian (Armenia), Basque, Belarusian, Bulgarian,
  Catalan, Chinese (China), Chinese (Taiwan), Croatian, Czech, Danish,
  Dutch, Eastern Armenian, English (Australia), English (United
  Kingdom), Estonian, Finnish, French, Galician, German, Greek, Hebrew,
  Hungarian, Icelandic, Indonesian, Interlingue, Italian, Japanese,
  Kazakh, Korean, Lithuanian, Malay, Norwegian Bokmål, Occitan (post
  1500), Persian (Iran), Polish, Portuguese, Portuguese (Brazil),
  Romanian, Russian, Serbian, Slovak, Slovenian, Spanish, Swedish,
  Thai, Turkish, Ukrainian, Uyghur
jperkin pushed a commit that referenced this issue Jan 18, 2022
changes from changelog:

2022-01-06 -- 0.9.6

>>>>>>>>>>>>> SECURITY >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
  * Fixed: [CVE-2021-46141]
      Fix a bug affecting both uriNormalizeSyntax* and uriMakeOwner*
      functions where the text range in .hostText would not be duped using
      malloc but remain unchanged (and hence "not owned") for URIs with
      an IPv4 or IPv6 address hostname; depending on how an application
      uses uriparser, this could lead the application into a use-after-free
      situation.
      As the second half, fix uriFreeUriMembers* functions that would not
      free .hostText memory for URIs with an IPv4 or IPv6 address host;
      also, calling uriFreeUriMembers* multiple times on a URI of this
      very nature would result in trying to free pointers to stack
      (rather than heap) memory (GitHub #121, GitHub #124)
      Commit 987b046e41f407d17c622e580fc82a5e834b4329
      Commit b1a34743bc1472e055d886e29e9b53f670eb3282
  * Fixed: [CVE-2021-46142]
      Fix functions uriNormalizeSyntax* for out-of-memory situations
      (i.e. malloc returning NULL) for URIs containing empty segments
      (any of user info, host text, query, or fragment) where previously
      pointers to stack (rather than heap) memory were freed (GitHub #122,
      GitHub #124)
      Commit c0483990e6b5b454f7c8752b36760cfcb0d093f5
>>>>>>>>>>>>> SECURITY >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
  * Fixed: CMake: Call "enable_language(CXX)" prior to tinkering with
      CMAKE_CXX_* variables (GitHub #110)
      Thanks to Alexander Richardson for the patch (originally at libexpat)
  * Fixed: CMake: Support absolute paths for both CMAKE_INSTALL_LIBDIR
      and CMAKE_INSTALL_INCLUDEDIR (GitHub #114)
      Thanks to Rafael Fontenelle for bringing this up (originally at libexpat)
  * Fixed: Windows: Address MSVC compiler warnings (GitHub #111, GitHub #113)
  * Fixed: Documentation: Space requirements for uriUriStringToUnixFilename
      did not take into account short form "file:/bin/bash" of RFC 8089 of 2017
      (with prefix "file:/" rather than "file:///") that uriparser supports
      since release 0.8.6 in 2018 (GitHub #118, GitHub #119)
  * Fixed: Compile error with MinGW GCC 9 related to a mismatched prototype
      for function inet_ntop (GitHub #117, GitHub #120)
      Thanks to Sandro Mani for the report!
  * Fixed: Compile warnings in test suite code (GitHub #120)
  * Improved: Respect variable ${CPP} in doc/preprocess.sh (GitHub #115)
  * Added: Test suite invocation for MinGW using Wine (GitHub #120)
  * Soname: 1:29:0 see https://verbump.de/ for what these numbers do
jperkin pushed a commit that referenced this issue Jan 18, 2022
Fixes:
-Fixed empty context menu when right-clicking empty spaces (#122).
-Fixed not updating playlist when deleting a track (#128).
-Fixed incorrect track order after deleting a track in a playlist (#130).
-Fixed paging not working with some lists (#145).
-Fixed not removing extra spacing when using system title bar.
-Fixed issues with followed playlists by other users not updating properly.
-Fixed issue when attempting to search for nothing.
-Fixed issues resuming playback when last used device was no longer available.

Changes:
-Added an option to show desktop notification on track change (#99).
-Added support for repeating a single track (#108).
-Added support for podcasts (#110).
-New and improved volume slider (#112).
-Already opened artists are now re-used (#113).
-Added support for mirrored title bar buttons (#120).
-Added support for creating new playlists (#139).
-Added support for following, and unfollowing, playlists.
-New status messages, replacing the status bar and desktop notifications.
-Added a custom font for the custom dark theme.
-Now continues playing tracks from search results.
-Now shows more artists links, for example social media links.
-Removed broken "PulseAudio volume control" setting.
-Tracks in albums now show an added date for when the album released.
-New categories in settings for logs and for troubleshooting.
jperkin pushed a commit that referenced this issue Apr 26, 2022
# waldo 0.4.0

* Atomic S3 classes with format methods now use those methods when
  displaying comparisons (#98). If the printed representation is the
  same, they fallback to displaying the underlying data.

* Rowwise data frame comparisons are now much much faster (#116),
  and respect the `max_diffs` argument (@krlmlr, #110).

* Unnamed environments now compare by value, not by reference (i.e. if
  two environments contain the same values, they compare the same, even
  if they're different environments) (#127). Environments that contain
  self-references are handled correctly (#117). Differences between pairs
  of environments are only ever reported once.

* In the unlikely event that you have bare CHARSXP objects, waldo now
  handles them (#121).

* S4 objects are labelled with their class, not all superclasses (#125).

* `compare_proxy()` ignores the `"index"` attribute for data tables
  (@krlmlr, #107), and works again for `RProtoBuf`  objects
  (@MichaelChirico, #119)

* Infinite values can be compared with a tolerance (@dmurdoch, #122).
jperkin pushed a commit that referenced this issue May 2, 2022
# wk 0.6.0

* Fixed `wk_affine_rescale()` to apply the translate and scale
  operations in the correct order (#94).
* Add `wk_handle_slice()` and `wk_chunk_map_feature()` to support
  a chunk + apply workflow when working with large vectors (#101, #107).
* C and R code was rewritten to avoid materializing ALTREP vectors
  (#103, #109).
* Added a `wk_crs_proj_definition()` generic for foreign CRS objects
  (#110, #112).
* Added `wk_crs_longlat()` helper to help promote authority-compliant
  CRS choices (#112).
* Added `wk_is_geodesic()`, `wk_set_geodesic()`, and argument `geodesic`
  in `wkt()` and `wkb()` as a flag for objects whose edges must
  be interpolated along a spherical/ellipsoidal trajectory (#112).
* Added `sf::st_geometry()` and `sf::st_sfc()` methods for wk geometry
  vectors for better integration with sf (#113, #114).
* Refactored well-known text parser to be more reusable and faster
  (#115, #104).
* Minor performance enhancement for `is.na()` and `validate_wk_wkb()`
  when called on a very long `wkb()` vector (#117).
* Fixed issue with `validate_wk_wkb()` and `validate_wk_wkt()`, which failed
  for most valid objects (#119).
* Added `wk_envelope()` and `wk_envelope_handler()` to compute feature-wise
  bounding boxes (#120, #122).
* Fixed headers and tests to pass on big endian systems (#105, #122).
* Incorporated the geodesic attribute into vctrs methods, data frame
  columns, and bbox/envelope calculation (#124, #125).
* Fix `as_xy()` for nested data frames and geodesic objects (#126, #128).
* Remove deprecated `wkb_problems()`, `wkt_problems()`, `wkb_format()`,
  and `wkt_format()` (#129).
* `wk_plot()` is now an S3 generic (#130).
jperkin pushed a commit that referenced this issue Dec 8, 2022
Patchlevel 8b (Aug 2021)

NEW FEATURES:
	o Detect the output language from the output file name.
	o On the command line, a minus (-) as input or output file name refers
	  to standard input or standard output.

BUGS FIXED:
	Ticket numbers refer to https://sourceforge.net/p/mcj/tickets/#.
	o Correct buffer overflows and segfaults, mainly due to maliciously
	  crafted input files, tickets #113-117, #122, #123, #125-#135.
	o With -Lepic -P, generate a complete tex file.
	o Correctly produce a gif if a transparent color is given, ticket #121.
	o Return with error if no space is left on the device. Ticket #101.
jperkin pushed a commit that referenced this issue Jan 4, 2023
Bug Fixes
 - Fix error when no results are available by @Builditluc in #105
 - Fix multiple views not displaying the correct border by @Builditluc in #118
 - Fix large release size by @Builditluc in #119
 - Fix short articles having a limited size by @Builditluc in #120
 - Fix external links not being recognized by @Builditluc in #121

Other Changes
 - Bump cursive to 0.20 by @Builditluc in #106
 - Change GitHub workflow badge routes by @Builditluc in #107
 - Update contributors badge style by @Builditluc in #108
 - Update lockfile dependencies by @Builditluc in #122
 - Fix spelling error by @Builditluc in #123
jperkin pushed a commit that referenced this issue Apr 8, 2023
New features
 - Added feature to warn you when a newer version of Sniffnet is available on
   GitHub 🆕 (#118)
 - Added badge on tab bar to show unread notifications count
 - Added Romanian translation 🇷🇴 (#113)

Improvements
 - Introduction of lazy widgets to improve the application efficiency (#122)
 - Aesthetic improvements to create a more modern and minimal UI (use #119 to
   suggest me further improvements)
 - Changed keyboard shortcut to open settings from ctrl+S to ctrl+,, as
   suggested in #97
 - Refactored and cleaned code modules (#123)

Fixes
 - Fixed problem that was causing a switch to the initial page when back button
   was pressed with settings opened on running page and with no packets received
 - Fixed problem that was causing application logo to be partially hidden when
   resizing the window to a lower dimension
 - Show - option in app protocol picklist only when a filter is active
 - Fixed header alignment
jperkin pushed a commit that referenced this issue Apr 17, 2023
[1.8.1] - 2023-04-11
What's Changed
 - Fix some typos by @goggle in #110
 - add clap requires to flags that depent on --report by @jhscheer in #111
 - refactor tests: move --no-config to mod::run_cmd by @jhscheer in #112
 - Prevent panic when --prune is used with --glob which results in empty match
   set by @solidiquis in #116
 - Add ability to take glob patterns from stdin by @jhscheer in #114
 - Refactor/node and support hard link detection on Windows by @solidiquis
   in #118
 - Support colorless output when redirecting/piping stdout; also provide
   --no-color option by @solidiquis in #120
 - remove ansi escapes for default icon by @solidiquis in #122
jperkin pushed a commit that referenced this issue May 29, 2023
Pkgsrc changes:
 * Only checksums.

Upstream changes:
2023-05-26 1.10.0
        New features:
        - Native dynamic discovery for NAPTR and SRV records (#2, #83)
        - Optionally log accounting requests when respoinding directly (#72)
        - SNI support for outgoing connections (#90)
        - Optionally specify server name for certificate name check (#106)
        - Manual MTU setting for DTLS on non-linux platforms

        Misc:
        - Don't require server type to be set by dyndisc scripts
        - Improve locating openssl lib using pkg-config

        Bug Fixes:
        - Fix radius message length handling

2023-05-02 1.9.3
        Bug Fixes:
        - Fix shutdown TLS connection on malformed radius message (#122)
        - Fix handling of lost requests in DTLS
        - Fix flush requests when dyndisc fails
jperkin pushed a commit that referenced this issue Jun 11, 2023
# sass 0.4.6

* Close #127: Removed a compilation warning on Windows w/ gcc-12. (#128)

# sass 0.4.5

## Improvements

* Close #122: Upgrade LibSass dependency from v3.6.4 to v3.6.5. (#123)

# sass 0.4.4

## Improvements

* Close #116: Remove hard-coded lstdc++ flag from Makevars. (#118)

# sass 0.4.3

## Improvements

* Close #113: Get rid of C++ warning during package installation about
  sprintf() being deprecated. (#114)

# sass 0.4.2

## Bug fixes

* `sass()` no longer encounters a false positive cache hit when
  `sass_file()` is used inside a `sass_bundle()`. (#107, #108)

* `font_google()` no longer produces a directory name with a `_`
  prefix (which was causing the directory to be ignored when deployed
  to GitHub Pages). (#105, #106)

# sass 0.4.1

## Improvements

* Several speed improvements for `sass()` and `as_sass_layer()`,
particularly when `sass(write_attachments = TRUE)` encounters a
`cache` hit. (#98) 0

* Removed compilation warnings with gcc-12. (#100)

* Removed linking errors that occur when custom C++ flags are used to
  compile (#94, #104).
jperkin pushed a commit that referenced this issue Jul 10, 2023
Features/Improvements ✨
 - Append suffix to download filenames to avoid overwrites (#35)
 - Support uploading image attachments from clipboard (#36)
 - Support leaving rooms (#45)
 - Support hiding server part of username in message scrollback (#71)
 - Restore opened tabs and windows upon restart (#72)
 - Interpret newlines as line breaks when converting Markdown to HTML (#74)
 - Indicate when you're editing a message (#75)
 - Support configuring which program :open runs (#95)
 - Support sending and completing Emoji shortcodes in the message bar (#100)
 - Indicate number of members in room (#110)
 - Show errors fetching space hierarchy when list is empty (#113)
 - Show Git SHA information when printing version information (#120)
 - Reduce number of Tokio workers (#129)
 - Indicate when there are new messages below scrollback viewport (#131)

Bug Fixes 🐞
 - Tab completion panics for unrecognized commands (#81)
 - Fix error message for undefined download directory (#87)
 - Gracefully handle verification events that are unknown locally (#90)
 - Use terminal window focus to determine when a message has actually been seen
   (#94)
 - ChatStore::set_receipts locks up app for bad connections (#99)
 - Need fallback behaviour when dirs::download_dir returns None (#118)
 - Code blocks get rendered without line breaks (#122)
 - Remove trailing newlines in body (#125)
 - Profile session token should only be readable by the user (#130)
 - Handle sync failure after successful password entry (#133)

Documentation/README Updates 📚
 - Add manual pages (#88)
 - Mention Minimum Supported Rust Version in README (#115)
 - Link to AUR pkg in README (#121)

Meta 👷‍♀️
 - Update locked Cargo dependencies (#70)
 - Add Nix flake (#73)
 - Add FUNDING.yml to project (#77)
 - Upload artifacts built in GitHub Actions (#105)
 - Cache build directory in GitHub Actions (#107)
 - Replace GitHub actions using deprecated features (#114)
 - Fix Nix flake build on Darwin (#117)
jperkin pushed a commit that referenced this issue Jul 16, 2023
0.6.6 (2023-07-10)

* Bump GoogleCloudPlatform/release-please-action from 2 to 3 (#120, #122)
  (3e804d4)
jperkin pushed a commit that referenced this issue Sep 1, 2023
Switch to GH Actions CI. by @patrickt in #41
Add the same PR template as for tree-sitter-javascript by @mjambon in #43
Update package.json to include the repository key by @msftenhanceprovenance in #50
Loosen Rust crate's tree-sitter dependency by @dcreager in #52
adding make support by @mattmassicotte in #56
feat: treat iota as predeclared identifier by @kawaemon in #58
feat: add support to parse of type parameters by @kawaemon in #57
feat: allow to put type arguments in calling expressions by @kawaemon in #59
Update C code by @aryx in #66
Document reason for statements at top level by @adonovan in #67
Make method bodies non-optional by @adonovan in #68
Fix node naming in {param,field}_declaration by @adonovan in #65
Structure Query by @mattmassicotte in #70
Remove field_identifier from keyed_element by @adonovan in #71
Generic Makefile by @mattmassicotte in #72
Bump tree-sitter version to 0.20 by @hendrikvanantwerpen in #78
Swift Package by @mattmassicotte in #79
Made body optional for method_declaration by @lmaruvada in #90
Allow GenericType to accept QualifiedType by @kawaemon in #92
feat(queries/highlight): highlight built-in functions as @function.builtin by @jimeh in #96
feat(grammar): capture comment directives by @matoous in #97
Revert "Merge pull request #97 from matoous/md/comment-directives" by @matoous in #98
feat(ci): run build & test action on PRs by @matoous in #99
fix: fix string literal rule by @SuperBo in #91
Add more types and struct/parameter fix by @amaanq in #118
Param fix by @amaanq in #119
Update identifiers and top level declarations by @amaanq in #120
Fix single import spec list without terminator by @amaanq in #122
Materialize expression_statement nodes by @josharian in #124
Formatting & CI fixes by @amaanq in #126
jperkin pushed a commit that referenced this issue Sep 10, 2023
Changes from Ant 1.10.13 TO Ant 1.10.14
=======================================

Changes that could break older environments:
-------------------------------------------

 * Resource#compareTo now invokes getName rather than toString as the
   later may be costly (for example in the case of a StringResource).
   Bugzilla Report 66496

 * When using Java 18 or higher, Ant will no longer use Java SecurityManager
   because it has been deprecated for removal and by default is disallowed
   to be set at runtime https://openjdk.org/jeps/411.
   This will mean that the "<permissions>" type is no longer functional when
   using Java 18 or higher.
   Furthermore, when using Java 18 or higher, if the build executes
   tasks that call "java.lang.System.exit()" and if those tasks aren't
   running in a forked VM of their own, then such tasks will now kill
   the entire Ant build process. It is recommended that such tasks be
   updated to launch in a forked JVM so that the System.exit() call
   will not impact the JVM in which Ant process runs.

Fixed bugs:
-----------

 * log only the stylesheet name in the xslt task.
   Github Pull Request #199

 * junitlauncher task's "test" and "listener" elements which take
   a "outputDir" property were incorrectly resolving the outputDir
   against the current working directory instead of the project's
   basedir. This has now been fixed.
   Bugzilla Report 66504

 * regexmapper would, in some cases, incorrectly consume backslash characters
   from the "to" attribute, resulting in missing backslashes in the output.
   This is now fixed.
   Bugzilla Report 66468

 * <fixcrlf>, <replace> and <replaceregexp> now try to preserve the
   file permissions of the files they modify.
   Bugzilla Report 66522

 * junitlauncher task would fail if a forked test timed out even
   if haltOnFailure was set to false. This is now fixed.
   Bugzilla Report 66411

 * fixes a bug in org.apache.tools.zip.ZipOutputStream where, even
   when "zip64Mode" is set to "always", ZipOutputStream may not create
   a CEN extra field data for the entry.
   Bugzilla Report 66873

 * legacy-xml listener of junitlauncher task wouldn't report certain
   failures involving junit jupiter dynamic tests. This has now been
   fixed.
   Github Pull Request #122

Other changes:
--------------

 * <fork> element of the junitlauncher task now has a new optional "java"
   attribute which can be used to point to a different Java installation
   for runnning the forked tests.
   Bugzilla Report 66464

 * made sure <echoproperties> sorts the echoed properties on JDK9+ as well.
   Bugzilla Report 66588

 * org.apache.tools.ant.taskdefs.Recorder class now introduces a
   setLogLevel(LogLevel level) method.
   Bugzilla Report 66238

 * The <fork> element of junitlaunchertask now allows a "forkMode"
   attribute. forkMode=perTestClass can now be used to launch
   each test class in a separate forked JVM.
   Bugzilla Report 65176
jperkin pushed a commit that referenced this issue Nov 24, 2023
While waiting for some of the features in the main branch to finish baking for
the v0.4 release why not enjoy some bugfixes, doc cleanups, and refactors right
now?

Fixed
 - Fixed a panic that occured when the viewed file gets removed or renamed (#145)
 - Made live code reloading more robust (#106 & #147)
    - Live code reloading should work with more editors (e.g. neovim)
    - Live code reloading should more reliable watch the desired file
 - Improved syntax highlighting (#150)
    - We now support highlighting many more formats (e.g. TOML, Dockerfiles, etc.)
    - We now support highlighting code blocks that use a language marker followed
      by a comma like ```rust,ignore
 - Nested numbered lists now display ordering correctly (#154)
 - Fixed a panic that occured on some specific system configurations (#169)

Docs
 - Use a repology badge for package manager installation (#109)
 - Make correct location of config file more clear (#122)

Along with a whole slew of internal refactors and testing improvements

I'd also like to give a big thanks to all of the contributors that helped make
this release possible!
jperkin pushed a commit that referenced this issue Nov 30, 2023
1.10.14 (2023-11-26)

Changelog:

* PR #112: Put glue and pieces parameters to implode in correct order for
  PHP 7.4+
* PR #121: Fix PHP bug 81653: Typo in install-pear-nozlib.phar
* PR #122: add %S EXPECTF capability
* PR #124: Fix: Creation of dynamic property PEAR_Error::$callback is
  deprecated
* PR #125: Fixed extension loaded check for pecl binaries
* PR #126: Remove -n option from pecl.bat for shared extensions
* PR #127: fix Using ${var} in strings is deprecated
* PR #128: fix lingering license references to PHP license
* PR #129: Exclude tests from composer classmap
* PR #131: fix private lastError name
jperkin pushed a commit that referenced this issue Dec 17, 2023
2.084 2023/11/06
- various fixes for edge cases and build: #136, #141, #142, #143, #145
- update documentation to reflect default SSL_version
2.083 2023/05/18
- fix t/protocol_version.t for OpenSSL versions which don't support SECLEVEL
  (regression from #122)
2.082 2023/05/17
- SSL_version default now TLS 1.2+ since TLS 1.1 and lower deprecated #122
- fix output of alert string when debugging #132
- improve regex for hostname validation #130, #126
- add can_ciphersuites subroutine for feature checking #127
- Utils::CERT_create - die if unexpected arguments are given instead of ignoring
  these
jperkin pushed a commit that referenced this issue Dec 18, 2023
18.0.0 (2022-03-24)

Added
* Support for EcmaScript modules (aka ESM) (#1756)
* New optional name property on the Hook schema (#1914)

Changed
* JSON Schema: some array fields now have "minItems": 1.
* Generate Java code that uses Optional in getters.
* Setters are removed.
* Classes without required fields have public empty constructors, and
  static of methods for each field. (#1858 aslakhellesoy)
* Java: Make this library more null safe.

19.0.0 (2022-05-31)

Added
* Expand the messages protocol with keyword types (#1966)

Changed
* [Java] the PickleStep constructor has changed - it now needs an
  extra PickleStepType argument.
* [Java] the Step constructor has changed - it now needs an extra
  StepKeywordType argument.

19.1.0 (2022-06-20)

Added
* [Javascript] Adding the json schemas of the messages to the NPM
  package (PR#2010)

19.1.1 (2022-06-22)

Fixed
* [Javascript] Schema are actually missing from 19.1.0 (PR#2016)

19.1.2 (2022-06-22)

Fixed
* [Javascript] Schema was still missing in 19.1.1 due to how npm
  manages the files attribute in package.json (PR#2020)

19.1.3 (2022-09-20)

Fixed
* Add name field to package.cjs.json (#36)

19.1.4 (2022-09-22)

Changed
* Update dependencies

20.0.0 (2022-11-14)

Changed
* Add workerId field to TestCaseStarted message (#34)
* [Java] Enabled reproducible builds

Fixed
* Change Go module name to match repo (#101)

21.0.0 (2022-12-17)

Added
* [Java] Add javadoc to messages (#124)

Changed
* Add exception to TestStepFinished TestRunFinished (#122)

21.0.1 (2022-12-17)

Fixed
* [Java] Suppress warnings for missing javadoc (#128)

22.0.0 (2023-04-06)

Added
* Added source reference to parameter type (#45)

Fixed
* Corrected Java and PHP generators to allow running using Docker on
  Windows (#146)

23.0.0 (2023-11-01)

Added
* Added C++ implementation (#152)

Changed
* [Ruby] Updated minimum Ruby version to 2.5 - (#177 luke-hill)

24.0.0 (2023-11-24)

Added
* Add stackTrace prop to Exception message (#182)
jperkin pushed a commit that referenced this issue Jan 25, 2024
0.10.4
 - Fixed version mismatch in wired --version (#126).

0.10.3
 - Support showing specific notifications with clip using
   e.g. wired --show id37 (#96).
 - Add wired --kill to cleanly exit the process.
 - Performance improvements.
 - Optionally trim whitespace in notification text (when trim_whitespace is
   set to true (default: true).
 - Updated wired.service to hopefully make sure that we have a display before
   starting the service. I still would rather you just launch wired directly.
 - Allow startup to continue even if we couldn't remove the existing wired
   socket (loosely #122).
jperkin pushed a commit that referenced this issue Jan 25, 2024
2.8.3
=====
- Fix adding launchers to desktop. (Issue #122)
- Fix segfault in profile destructor. (Issue #123)
- Translation updates: Catalan, Chinese (Taiwan), Danish, Dutch, German,
  Greek, Indonesian, Korean, Lithuanian, Polish, Portuguese, Serbian, Slovak,
  Spanish, Swedish.
jperkin pushed a commit that referenced this issue Feb 1, 2024
0.20.7

    Fix sizeof precedence by @philipturnbull in #168
    Adds GH tag queries by @BekaValentine in #122
    Add Microsoft SEH extension to the grammar by @DennySun2100 in #164
    Add TAGS_QUERY to rust bindings by @Squadrick in #175
    Misc fixes by @amaanq

0.20.6

    fix: rework rules to reduce state count by @amaanq in #162
    Fix by @amaanq in #163
jperkin pushed a commit that referenced this issue Feb 7, 2024
Changelog:


Release version 12

    Clean up some FreeBSD conditions (#98) (5a81837)
    Add ES256K support (#90) (e6a7ae7)
    Meson changes (#135) (c1569b7)
    Update CI (#8) (#129) (253549a)
    lib/openssl/rsaes.c: Fix issue where jose_hook_alg_find failed to find the … …existance of RSA_OAEP algorithm (58112df)
    Increase test program/scripts timeout values (#131) (45367dd)
    Fix test compilation warnings (#127) (aee1096)
    Adapt alg_comp test to different zlib (#142) (4878253)
    Use checkout v3 Github action to avoid warnings (#137) (6a639e2)
    Alternative fix for fedora:rawide (#138) (55b11f5)
    lib/openssl/hmac.c: rename hmac function to jhmac (#130) (33b9e0b)
    jose: build library only as shared (#119) (b72f8ca)
    meson: add option to disable building manpages (#118) (786b426)
    Add a more descriptive error when jwk gen fails (#105) (cdb1030)
    Use "command -v" instead of "which" (deprecated) (#125) (e1d66f1)
    Test for jq existing (used in jose-jwe-enc test) (#124) (ddc0d2a)
    Correct jose_jws.3 man page example (#122) (ad08d70)
    lib/hsh.c: rename hsh local variable (#111) (3d5b287)
    Avoid master word when possible (#120) (5bc6a92)
    Fix github action CI by setting appropriate centos (a091f56)
    Fix format of jose-jwe-enc man page (76924de)
    Meson Fixes (320336b)
    ci: make ubuntu:devel and fedora:rawhide not to fail the pipeline (1d15950)
    ci: retry when installing the deps in debian/ubuntu (bfdbb6e)
    ci: remove travis-ci (05d8e70)
jperkin pushed a commit that referenced this issue Feb 9, 2024
4.12.0 (stable):

Gtk:
* AboutDialog: Deprecate ctor with use_header_bar.
  (Daniel Boles) Merge request !74
* Add SymbolicPaintable.
* Add ScrollInfo and enum ListScrollFlags.
* ColumnView, GridView, ListView, Viewport: Add scroll_to().
* ColumnViewRow, ListItem: Add set/get/property_accessible_description()
  and set/get/property_accessible_label().
* DropDown: Add set/get/property_header_factory()
  and set/get/property_search_match_mode().
* FileLauncher: Add set/get/property_always_ask().
* Window: Add is_suspended() and property_suspened().
  (Kjell Ahlstedt)

Documentation:
* Remove README.SUN and other obsolete files
  (Kjell Ahlstedt) Issue #140
* Gtk::Widget: Describe managed and non-managed widgets
  (Kjell Ahlstedt) Issue #138 (Daniel Boles)

Build:
* recentinfo.hg: Fix Visual Studio build
  (Chun-wei Fan) Merge request !75
* Require gtk4 >= 4.12.0
  (Kjell Ahlstedt)


4.11.3 (unstable):

Gdk:
* Pixbuf: Deprecate the create() method taking a Cairo::Surface.
  (Kjell Ahlstedt)

Gtk:
* Snapshot: Add some #includes.
  (Kjell Ahlstedt) Issue #137 (Daniel Boles)
* Image: Deprecate the set() method taking a Pixbuf.
* Notebook: Wrap the object returned from get_pages() in a
  SelectionListModelImpl (like Stack::get_pages()).
* Picture: Deprecate set_pixbuf().
* ColumnView: Add set/get/property_header_factory().
* CssProvider: Deprecate load_from_data(). Add load_from_string()
  and load_from_bytes().
  (Kjell Ahlstedt)

Documentation:
* Group some classes in the new ListView group and note that
  all classes in the TreeView group are deprecated.
  (Kjell Ahlstedt)

Build:
* Require gtk4 >= 4.11.3
  (Kjell Ahlstedt)


4.11.2 (unstable):

Gdk:
* GLTexture: Deprecate create().
* Add GLTextureBuilder.
  (Kjell Ahlstedt)

Gtk:
* Box, BoxLayout: Add set/get/property_baseline_child().
* Button: Add set/get/property_can_shrink().
* CenterBox, CenterLayout: Add set/get/property_shrink_center_last().
* GLArea: Deprecate set/get/property_use_es().
  Add set/get/property_allowed_apis(), get/property_api().
* Add ListHeader, SectionModel.
* ListView: Add set/get/property_header_factory().
* MenuButton: Add set/get/property_can_shrink().
* SortListModel: Add set/get/property_section_sorter().
* Widget: Deprecate get_allocation(),
  get_allocated_width/height/baseline(). Add get_baseline().
  (Kjell Ahlstedt)

Build:
* MSVC build: Mark GTKMM_API for the Entry class
  (Chun-wei Fan) Merge request !73
* Require gtk4 >= 4.11.2
  (Kjell Ahlstedt)


4.11.1 (unstable):

Gdk and Gtk:
* Use callback functions with C linkage.
  (Kjell Ahlstedt) Issue glibmm#1 (Murray Cumming)

Gdk:
* Add Gdk::Graphene::Point, Rect and Size.
  They wrap the corresponding classes in the Graphene library.
  (Kjell Ahlstedt)
* Add class DragSurfaceSize.
* DragSurface: Add signal_compute_size().
* Surface: Add get/property_scale(). Deprecate create_similar_surface().
  (Kjell Ahlstedt)

Gtk:
* Snapshot: Add push_repeat(), push_clip(), append_cairo(),
  append_texture(), append_color() with Gdk::Graphene::Rect.
  Deprecate other push_clip(), push_clip(), append_cairo(),
  append_texture(), append_color() overloads. Add translate().
* Widget: Add compute_bounds() and compute_point().
  Deprecate translate_coordinates().
  (Kjell Ahlstedt)
* Add classes ColumnViewCell and ColumnViewRow.
* ColumnView: Add set/get/property_tab_behavior() and
  set/get/property_row_factory().
* Add enum ListTabBehavior.
* FlowBox and ListBox: Add remove_all().
* GridView and ListView: Add set/get/property_tab_behavior().
* ListItem: Add set/get/property_focusable().
  (Kjell Ahlstedt)

Build:
* Require gtk4 >= 4.11.1
  (Kjell Ahlstedt)


4.10.0 (stable):

Gdk:
* Add TextureDownloader
* Add enum MemoryFormat, identical to MemoryTexture::Format
* Texture: Add get_format()
  (Kjell Ahlstedt)

Gtk:
* VolumeButton: Deprecated
* ProgressBar: Deprecate property_ellipsize()
  (Kjell Ahlstedt)
* FileDialog: open_multiple_finish() and select_multiple_folders_finish()
  return std::vector<Glib::RefPtr<Gio::File>> instead of
  Glib::RefPtr<Gio::ListModel>.
  FileChooser: Deprecate get_files() and get_shortcut_folders().
  Add get_files2() and get_shortcut_folders2().
  (Kjell Ahlstedt) Issue #132
* FileDialog: Make open[_finish](), select_folder[_finish](),
  save[_finish](), open_multiple[_finish](),
  select_multiple_folders[_finish]() non-const.
* FontDialog: Make choose_family[_finish]() and
  choose_face[_finish]() non-const.
* Accessible: Add set_accessible_parent(), update_next_accessible_sibling()
* MenuButton: Add set/get/property_active().
* ScaleButton: Add get/property_active().
* SearchEntry: Add set/get_placeholder_text().
  (Kjell Ahlstedt)

Tests:
* Add filedialog test
  (Kjell Ahlstedt)

Build:
* Require gtk4 >= 4.10.0
  (Kjell Ahlstedt)


4.9.3 (unstable):

Gdk:
* Display: Deprecate get_startup_notification_id().
* Monitor: Add get/property_description().
  (Kjell Ahlstedt)

Gtk:
* Deprecated classes: Assistant, AssistantPage, LockButton, Statusbar
* Gesture: Deprecate set_sequence_state().
* Accessible: Add enum Accessible::PlatformState. Add get_at_context(),
  get_platform_state(), get_accessible_parent(), get_bounds(),
  get_first_accessible_child(), get_next_accessible_sibling().
* Add ATContext and UriLauncher.
  (Kjell Ahlstedt)

Documentation:
* Gtk::Image, Picture, StringList, StringObject: Improve class descriptions
  (Kjell Ahlstedt)

Build:
* Require gtk4 >= 4.9.3
  (Kjell Ahlstedt)


4.9.2 (unstable):

Gdk:
* Display: Deprecate notify_startup_complete() and put_event().
  (Kjell Ahlstedt)

Gtk:
* Widget: Deprecate show() and hide(). (Use set_visible().)
* Add FileLauncher.
* CenterBox: Add property_[start|center|end]_widget().
* FileDialog: Rename get/set/property_current_filter() to
    get/set/property_default_filter(). Rename get/set/property_current_folder() to
    get/set/property_initial_folder(). Add get/set/property_initial_name(),
    get/set/property_initial_file(), get/set/property_accept_label().
    Remove current_file parameter from open(), current_folder parameter from
    select_folder(). Delete get/set/property_shortcut_folders().
* GestureStylus: Add get/set/property_stylus_only().
* TreeExpander: Add get/set/property_indent_for_depth()
   and get/set/property_hide_expander().
* ToggleButton: Deprecate toggled().
  (Kjell Ahlstedt)

Build:
* Require gtk4 >= 4.9.2
  (Kjell Ahlstedt)
* Meson build: Fix the evaluation of is_git_build on Windows
  (Kjell Ahlstedt) Issue #131 (William Roy)


4.9.1 (unstable):

Gtk:
* Deprecate about 50 classes:
  AppChooser, AppChooserButton, AppChooserDialog,
  AppChooserWidget, CellArea, CellAreaBox, CellAreaContext,
  CellLayout, CellRenderer, CellRendererAccel, CellRendererCombo,
  CellRendererPixbuf, CellRendererProgress, CellRendererSpin,
  CellRendererSpinner, CellRendererText, CellRendererToggle, CellView,
  ComboBox, ComboBoxText, EntryCompletion, IconView, ListStore,
  ListViewText, StyleContext, TreeDragDest, TreeDragSource,
  TreeIter and other classes in treeiter.hg,
  TreeModel, TreeModelFilter, TreeModelSort, TreePath, TreeRowReference,
  TreeSelection, TreeSortable, TreeStore, TreeView, TreeViewColumn,
  namespace CellRenderer_Generation, namespace TreeView_Private,
  ColorButton, ColorChooser, ColorChooserDialog,
  FileChooser, FileChooserDialog, FileChooserNative, FileChooserWidget,
  FontButton, FontChooser, FontChooserDialog, FontChooserWidget,
  MessageDialog, TreeModelColumn, TreeModelColumnRecord, InfoBar
* Deprecate Window::signal_keys_changed()
* Add ColumnViewColumn::set/get/property_id(), enum Collation,
  StringSorter::set/get/property_collation(), Widget::get_color,
  StyleProvider::add/remove_provider_for_display()
* StringList::create(): Add default value (empty vector) to parameter
* Add classes AlertDialog, ColorDialog, ColorDialogButton,
  ColumnViewSorter, FileDialog, FontDialog, FontDialogButton,
  enums DialogError, FontLevel
  (Kjell Ahlstedt)

Demos:
* Don't use deprecated API.
  Some demo programs have been renamed.
  (Kjell Ahlstedt)

Build:
* Meson build: Detect if we build from a git subtree
  (William Roy) Merge request !72
* Require gtk4 >= 4.9.1
  (Kjell Ahlstedt)


4.8.0 (stable):

Gtk:
* TextView::get_tabs(): Fix a memory leak
* Add enum ContentFit
* Label: Add set/get/property_tabs()
* Picture: Add set/get/property_content_fit()
  (Kjell Ahlstedt)

Demos:
* Dialog demo: Add a non-modal dialog
  (Kjell Ahlstedt) Issue #123 (PBS)

Documentation:
* Don't translate the preprocessor macro name GDK_MODIFIER_MASK
  (Kjell Ahlstedt) Issue #124 (PBS)

Build:
* Require gtk4 >= 4.7.2
  (Kjell Ahlstedt)


4.7.1 (unstable):

Gdk:
* Add enum Gdk::GLApi, deprecate enum Gdk::GLAPI
  (Kjell Ahlstedt) Issue #113 (PBS)
* Add enum ScrollUnit
* Event: Add get_scroll_unit()
  (Kjell Ahlstedt)

Gtk:
* Allow managed Gtk::Window's
  (Kjell Ahlstedt) Issue #24 (Daniel Elstner)
* Gtk::Object::_release_c_instance(): Unref orphan managed widgets
  (Kjell Ahlstedt) Issue #115 (PBS)
* Entry: Add signal_activate()
  (Kjell Ahlstedt) Issue #100 (RedDocMD)
* Don't derive gtkmm__GtkXxx GTypes from final types
  (Kjell Ahlstedt) Issue glib#2661
* Application: Only create window on first activate
  (Andrew Potter) Merge request !70
* CheckButton: Add set/unset/get/property_child()
* EventControllerScroll: Add get_unit()
* Picture: Deprecate set/get/property_keep_aspect_ratio()
* SearchEntry: Add set/get/property_search_delay()
* DirectoryList, FilterListModel, FlattenListModel, MultiFilter,
  MultiSelection, MultiSorter, NoSelection, SelectionFilterModel,
  ShortcutController, SingleSelection, SliceListModel, SortListModel,
  TreeListModel: Add property_item_type(), property_n_items()
  (Kjell Ahlstedt)
* ApplicationWindow: Disambiguate activate_action()
  (Kjell Ahlstedt) Issue #122 (PBS)
* Add class Inscription
  (Kjell Ahlstedt)
* Widget: Add signal_destroy()
  (Baldvin Kovacs) Merge request !71

Documentation:
* Gdk::Drag, Gdk::Drop, Gtk::Dialog, Gtk::Widget: Improve class descriptions
  (Kjell Ahlstedt)

Build:
* Meson build: Avoid configuration warnings
  (Kjell Ahlstedt)
* Meson build: Fix builds with Vulkan-enabled GTK
  (Chun-wei Fan) Merge request !68
* Require gtk4 >= 4.7.1
  (Kjell Ahlstedt)


4.6.1 (stable):

Gdk:
* Surface::signal_render(): Fix ref count of Cairo::Region
  (Baldvin Kovacs) Merge request !66
* enum GLAPI: Partially fix name clash with epoxy/gl.h
  A complete fix requires new API; will have to wait until gtkmm 4.8
  (Kjell Ahlstedt) Issue #113 (PBS)

Gtk:
* Application::make_window_and_run(): Delay the deletion of Window
  (Kjell Ahlstedt) Issue #114 (PBS)

Build with Meson:
* Don't use deprecated execute(..., gui_app: ...)
  Require meson >= 0.56.0
  (Kjell Ahlstedt) Issue #111
* Check if Perl is required for building documentation
  (Kjell Ahlstedt)


4.6.0 (stable):

Gdk:
* Deprecate Gdk::Cairo::draw_from_gl().
* Display: Add create_gl_context().
* Texture: Add create_from_filename(), create_from_bytes(),
  save_to_png_bytes(), save_to_tiff(), save_to_tiff_bytes().
* GLContext: Deprecate set_use_es() and unset_use_es().
  Add set/get/property_allowed_apis() and get/property_api().
  (Kjell Ahlstedt)

Gtk:
* DropDown: Add set/get/property_show_arrow().
* FlowBox: Add prepend(), append().
* Label: Add set/get/property_natural_wrap_mode().
* MenuButton: Add set/unset/get/property_child().
* Settings: Add property_gtk_hint_font_metrics().
* TextChildAnchor: Add create(replacement_character).
* TextTag: Add properties line_height(), text_transform(),
  word(), sentence(), line_height_set(), text_transform_set(),
  word_set(), sentence_set().
* TreeExpander: Add set/get/property_indent_for_icon().
* Window: Add property_titlebar().
  (Kjell Ahlstedt)

Documentation:
* Gtk::Object: Change deprecated `pack_start` to `append`.
  (LI Daobing) Merge request !65

Build:
* MSVC build: Support Visual Studio 2022.
  NMake Makefiles: Fix header installation.
  (Chun-wei Fan)
* Require pangomm-2.48 >= 2.50.0, gtk4 >= 4.6.0
  (Kjell Ahlstedt)


4.4.0 (stable):

Gdk:
* PixbufAnimation: Add create_from_stream(), create_from_stream_async(),
  create_from_stream_finish(), create_from_resource().
  (Kjell Ahlstedt)
* ContentFormats: Add parse().
  Display: Add prepare_gl().
  GLContext: Deprecate get/property_shared_context(). Add is_shared().
  (Kjell Ahlstedt)

Gtk:
* Add EventControllerLegacy.
  (BogDan Vatra) Merge request !64
* DropDown::get_selected_item(), ListItem::get_item(),
  SingleSelection::get_selected_item(), TreeExpander::get_item(),
  TreeListRow::get_item(): Don't try to dynamic_cast the return value
  to Glib::Object. It fails if the object has been constructed as
  an interface.
  (Kjell Ahlstedt)
* Fixed the const versions of Assistant::get_page(), NoteBook::get_page()
  and Stack::get_page(). Fixed MediaControls::set_media_stream() and
  Video::set_media_stream().
  (Kjell Ahlstedt)
* Application, Window: Swap inclusions. Include window.h in application.h
  instead of application.h in window.h.
  === Note === This will affect compilation of code that uses Application
  without including gtkmm/application.h.
  (Kjell Ahlstedt)
* DropTarget: Deprecate get/property_drop(). Add get/property_current_drop().
  FileFilter: Add add_suffix().
  MediaStream: Deprecate prepared(), unprepared() and ended().
  Add stream_prepared(), stream_unprepared() and stream_ended().
  MenuButton: Add set/get/property_always_show_arrow() and
  set/get/property_primary().
  TextView: Add set/get_rtl_context() and set/get_ltr_context().
  (Kjell Ahlstedt)

Demos:
* Images, SizeGroup, ListStore and TreeStore demos: Minor fixes.
  (Kjell Ahlstedt)
* Add Add ColumnView demo.
  (Kjell Ahlstedt)

Build:
* Require gtk4 >= 4.4.0.
  (Kjell Ahlstedt)
jperkin pushed a commit that referenced this issue Feb 20, 2024
pkgsrc changes:
- adapt to various upstream changes
- update for newer version of pjproject
- add unconditional depeendency on SDL
- remove pktccops and mgcp option (has to do with supporting cable headends)
- remove various 64-bit time_t fixes as upstream is finally doing these


                               [asterisk-announce] asterisk release 18.21.0


The Asterisk Development Team would like to announce
the release of asterisk-18.21.0.

This release resolves issues reported by the community
and would have not been possible without your participation.

Thank You!


Change Log for Release asterisk-18.21.0
========================================

Summary:
----------------------------------------

- logger: Fix linking regression.
- Revert "core & res_pjsip: Improve topology change handling."
- menuselect: Use more specific error message.
- res_pjsip_nat: Fix potential use of uninitialized transport details
- app_if: Fix faulty EndIf branching.
- manager.c: Fix regression due to using wrong free function.
- config_options.c: Fix truncation of option descriptions.
- manager.c: Improve clarity of "manager show connected".
- make_xml_documentation: Really collect LOCAL_MOD_SUBDIRS documentation.
- general: Fix broken links.
- MergeApproved.yml:  Remove unneeded concurrency
- app_dial: Add option "j" to preserve initial stream topology of caller
- ast_coredumper: Increase reliability
- logger.c: Move LOG_GROUP documentation to dedicated XML file.
- res_odbc.c: Allow concurrent access to request odbc connections
- res_pjsip_header_funcs.c: Check URI parameter length before copying.
- config.c: Log #exec include failures.
- make_xml_documentation: Properly handle absolute LOCAL_MOD_SUBDIRS.
- app_voicemail.c: Completely resequence mailbox folders.
- sig_analog: Fix channel leak when mwimonitor is enabled.
- res_rtp_asterisk.c: Update for OpenSSL 3+.
- alembic: Update list of TLS methods available on ps_transports.
- func_channel: Expose previously unsettable options.
- app.c: Allow ampersands in playback lists to be escaped.
- uri.c: Simplify ast_uri_make_host_with_port()
- func_curl.c: Remove CURLOPT() plaintext documentation.
- res_http_websocket.c: Set hostname on client for certificate validation.
- live_ast: Add astcachedir to generated asterisk.conf.
- SECURITY.md: Update with correct documentation URL
- func_lock: Add missing see-also refs to documentation.
- app_followme.c: Grab reference on nativeformats before using it
- configs: Improve documentation for bandwidth in iax.conf.
- logger: Add channel-based filtering.
- chan_iax2.c: Don't send unsanitized data to the logger.
- codec_ilbc: Disable system ilbc if version >= 3.0.0
- resource_channels.c: Explicit codec request when creating UnicastRTP.
- doc: Update IP Quality of Service links.
- chan_pjsip: Add PJSIPHangup dialplan app and manager action
- chan_iax2.c: Ensure all IEs are displayed when dumping frame contents.
- chan_dahdi: Warn if nonexistent cadence is requested.
- stasis: Update the snapshot after setting the redirect
- ari: Provide the caller ID RDNIS for the channels
- main/utils: Implement ast_get_tid() for OpenBSD
- res_rtp_asterisk.c: Fix runtime issue with LibreSSL
- app_directory: Add ADSI support to Directory.
- core_local: Fix local channel parsing with slashes.
- Remove files that are no longer updated
- app_voicemail: Add AMI event for mailbox PIN changes.
- app_queue.c: Emit unpause reason with PauseQueueMember event.
- bridge_simple: Suppress unchanged topology change requests
- res_pjsip: Include cipher limit in config error message.
- res_speech: allow speech to translate input channel
- res_rtp_asterisk.c: Fix memory leak in ephemeral certificate creation.
- res_pjsip_dtmf_info.c: Add 'INFO' to Allow header.
- api.wiki.mustache: Fix indentation in generated markdown
- pjsip_configuration.c: Disable DTLS renegotiation if WebRTC is enabled.
- configs: Fix typo in pjsip.conf.sample.
- res_pjsip_exten_state,res_pjsip_mwi: Allow unload on shutdown
- res_pjsip: Expanding PJSIP endpoint ID and relevant resource length to 255 characters
- .github: PRSubmitActions: Fix adding reviewers to PR
- .github: New PR Submit workflows
- .github: New PR Submit workflows
- res_stasis: signal when new command is queued
- ari/stasis: Indicate progress before playback on a bridge
- func_curl.c: Ensure channel is locked when manipulating datastores.
- .github: Fix job prereqs in PROpenedUpdated
- .github: Block PR tests until approved
- logger.h: Add ability to change the prefix on SCOPE_TRACE output
- Add libjwt to third-party
- res_pjsip: update qualify_timeout documentation with DNS note
- chan_dahdi: Clarify scope of callgroup/pickupgroup.
- func_json: Fix crashes for some types
- res_speech_aeap: add aeap error handling
- app_voicemail: Disable ADSI if unavailable.
- codec_builtin: Use multiples of 20 for maximum_ms
- lock.c: Separate DETECT_DEADLOCKS from DEBUG_THREADS
- asterisk.c: Use the euid's home directory to read/write cli history
- res_pjsip_transport_websocket: Prevent transport from being destroyed before message finishes.
- cel: add publish user event helper
- chan_console: Fix deadlock caused by unclean thread exit.
- file.c: Add ability to search custom dir for sounds
- chan_iax2: Improve authentication debugging.
- res_rtp_asterisk: fix wrong counter management in ioqueue objects
- make_buildopts_h, et. al.  Allow adding all cflags to buildopts.h
- func_periodic_hook: Add hangup step to avoid timeout
- res_stasis_recording.c: Save recording state when unmuted.
- res_speech_aeap: check for null format on response
- func_periodic_hook: Don't truncate channel name
- safe_asterisk: Change directory permissions to 755
- chan_rtp: Implement RTP glue for UnicastRTP channels
- app_queue: periodic announcement configurable start time.
- variables: Add additional variable dialplan functions.
- Restore CHANGES and UPGRADE.txt to allow cherry-picks to work

User Notes:
----------------------------------------

- ### app_dial: Add option "j" to preserve initial stream topology of caller
  The option "j" is now available for the Dial application which
  uses the initial stream topology of the caller to create the outgoing
  channels.

- ### logger: Add channel-based filtering.
  The console log can now be filtered by
  channels or groups of channels, using the
  logger filter CLI commands.

- ### chan_pjsip: Add PJSIPHangup dialplan app and manager action
  A new dialplan app PJSIPHangup and AMI action allows you
  to hang up an unanswered incoming PJSIP call with a specific SIP
  response code in the 400 -> 699 range.

- ### app_voicemail: Add AMI event for mailbox PIN changes.
  The VoicemailPasswordChange event is
  now emitted whenever a mailbox password is updated,
  containing the mailbox information and the new
  password.
  Resolves: #398

- ### res_speech: allow speech to translate input channel
  res_speech now supports translation of an input channel
  to a format supported by the speech provider, provided a translation
  path is available between the source format and provider capabilites.

- ### res_pjsip: Expanding PJSIP endpoint ID and relevant resource length to 255 characters
  With this update, the PJSIP realm lengths have been extended
  to support up to 255 characters.

- ### res_stasis: signal when new command is queued
  Call setup times should be significantly improved
  when using ARI.

- ### lock.c: Separate DETECT_DEADLOCKS from DEBUG_THREADS
  You no longer need to select DEBUG_THREADS to use
  DETECT_DEADLOCKS.  This removes a significant amount of overhead
  if you just want to detect possible deadlocks vs needing full
  lock tracing.

- ### file.c: Add ability to search custom dir for sounds
  A new option "sounds_search_custom_dir" has been added to
  asterisk.conf that allows asterisk to search
  AST_DATA_DIR/sounds/custom for sounds files before searching the
  standard AST_DATA_DIR/sounds/<lang> directory.

- ### make_buildopts_h, et. al.  Allow adding all cflags to buildopts.h
  The "Build Options" entry in the "core show settings"
  CLI command has been renamed to "ABI related Build Options" and
  a new entry named "All Build Options" has been added that shows
  both breaking and non-breaking options.

- ### chan_rtp: Implement RTP glue for UnicastRTP channels
  The dial string option 'g' was added to the UnicastRTP channel
  which enables RTP glue and therefore native RTP bridges with those
  channels.

- ### app_queue: periodic announcement configurable start time.
  Introduce a new queue configuration option called
  'periodic-announce-startdelay' which will vary the normal (historic)
  behavior of starting the periodic announcement cycle at
  periodic-announce-frequency seconds after entering the queue to start
  the periodic announcement cycle at period-announce-startdelay seconds
  after joining the queue.  The default behavior if this config option is
  not set remains unchanged.
  Signed-off-by: Jaco Kroon <jaco at uls.co.za>

- ### variables: Add additional variable dialplan functions.
  Four new dialplan functions have been added.
  GLOBAL_DELETE and DELETE have been added which allows
  the deletion of global and channel variables.
  GLOBAL_EXISTS and VARIABLE_EXISTS have been added
  which checks whether a global or channel variable has
  been set.


Upgrade Notes:
----------------------------------------

- ### app.c: Allow ampersands in playback lists to be escaped.
  Ampersands in URLs passed to the `Playback()`,
  `Background()`, `SpeechBackground()`, `Read()`, `Authenticate()`, or
  `Queue()` applications as filename arguments can now be escaped by
  single quoting the filename. Additionally, this is also possible when
  using the `CONFBRIDGE` dialplan function, or configuring various
  features in `confbridge.conf` and `queues.conf`.

- ### pjsip_configuration.c: Disable DTLS renegotiation if WebRTC is enabled.
  The dtls_rekey will be disabled if webrtc support is
  requested on an endpoint. A warning will also be emitted.

- ### res_pjsip: Expanding PJSIP endpoint ID and relevant resource length to 255 characters
  As part of this update, the maximum allowable length
  for PJSIP endpoints and relevant resources has been increased from
  40 to 255 characters. To take advantage of this enhancement, it is
  recommended to run the necessary procedures (e.g., Alembic) to
  update your schemas.


                               [asterisk-announce] asterisk release 18.20.2

The Asterisk Development Team would like to announce
the release of asterisk-18.20.2.

This release resolves issues reported by the community
and would have not been possible without your participation.

Thank You!


Change Log for Release asterisk-18.20.2
========================================

Summary:
----------------------------------------

- res_rtp_asterisk: Fix regression issues with DTLS client check


                               [asterisk-announce] asterisk release 18.20.1


The Asterisk Development Team would like to announce security release
Asterisk 18.20.1.

The following security advisories were resolved in this release:
- [Path traversal via AMI GetConfig allows access to outside files](https://github.com/asterisk/asterisk/s
ecurity/advisories/GHSA-8857-hfmw-vg8f)
- [Asterisk susceptible to Denial of Service via DTLS Hello packets during call initiation](https://github
.com/asterisk/asterisk/security/advisories/GHSA-hxj9-xwr8-w8pq)
- [PJSIP logging allows attacker to inject fake Asterisk log entries ](https://github.com/asterisk/asteris
k/security/advisories/GHSA-5743-x3p5-3rg7)
- [PJSIP_HEADER dialplan function can overwrite memory/cause crash when using 'update'](https://github.com
/asterisk/asterisk/security/advisories/GHSA-98rc-4j27-74hh)


Change Log for Release asterisk-18.20.1
========================================

Summary:
----------------------------------------

- res_pjsip_header_funcs: Duplicate new header value, don't copy.
- res_pjsip: disable raw bad packet logging
- res_rtp_asterisk.c: Check DTLS packets against ICE candidate list
- manager.c: Prevent path traversal with GetConfig.


                               [asterisk-announce] asterisk release 18.20.0

The Asterisk Development Team would like to announce
the release of asterisk-18.20.0.

This release resolves issues reported by the community
and would have not been possible without your participation.

Thank You!


Change Log for Release asterisk-18.20.0
========================================

Summary:
----------------------------------------

- ari-stubs: Fix more local anchor references
- ari-stubs: Fix more local anchor references
- ari-stubs: Fix broken documentation anchors
- res_pjsip_session: Send Session Interval too small response
- .github: Update workflow-application-token-action to v2
- app_dial: Fix infinite loop when sending digits.
- app_voicemail: Fix for loop declarations
- alembic: Fix quoting of the 100rel column
- pbx.c: Fix gcc 12 compiler warning.
- app_audiosocket: Fixed timeout with -1 to avoid busy loop.
- download_externals:  Fix a few version related issues
- main/refer.c: Fix double free in refer_data_destructor + potential leak
- sig_analog: Add Called Subscriber Held capability.
- app_macro: Fix locking around datastore access
- Revert "app_stack: Print proper exit location for PBXless channels."
- .github: Use generic releaser
- install_prereq: Fix dependency install on aarch64.
- res_pjsip.c: Set contact_user on incoming call local Contact header
- extconfig: Allow explicit DB result set ordering to be disabled.
- rest-api: Run make ari-stubs
- res_pjsip_header_funcs: Make prefix argument optional.
- pjproject_bundled: Increase PJSIP_MAX_MODULE to 38
- manager: Tolerate stasis messages with no channel snapshot.
- core/ari/pjsip: Add refer mechanism
- chan_dahdi: Allow autoreoriginating after hangup.
- audiohook: Unlock channel in mute if no audiohooks present.
- sig_analog: Allow three-way flash to time out to silence.
- res_prometheus: Do not generate broken metrics
- res_pjsip: Enable TLS v1.3 if present.
- func_cut: Add example to documentation.
- extensions.conf.sample: Remove reference to missing context.
- func_export: Use correct function argument as variable name.
- app_queue: Add support for applying caller priority change immediately.
- .github: Fix cherry-pick reminder issues
- chan_iax2.c: Avoid crash with IAX2 switch support.
- res_geolocation: Ensure required 'location_info' is present.
- Adds manager actions to allow move/remove/forward individual
  messages in a particular mailbox folder. The forward command can
  be used to copy a message within a mailbox or to another mailbox.
  Also adds a VoicemailBoxSummarry, required to retrieve message ID's.
- app_voicemail: add CLI commands for message manipulation
- res_rtp_asterisk: Move ast_rtp_rtcp_report_alloc using
  `rtp->themssrc_valid` into the scope of the rtp_i nstance lock.
- .github: Minor tweak to Asterisk Releaser
- .github: Suppress cherry-pick reminder for some situations
- sig_analog: Allow immediate fake ring to be suppressed.

User Notes:
----------------------------------------

- ### sig_analog: Add Called Subscriber Held capability.
  Called Subscriber Held is now supported for analog
  FXS channels, using the calledsubscriberheld option. This allows
  a station  user to go on hook when receiving an incoming call
  and resume from another phone on the same line by going on hook,
  without disconnecting the call.

- ### res_pjsip_header_funcs: Make prefix argument optional.
  The prefix argument to PJSIP_HEADERS is now
  optional. If not specified, all header names will be
  returned.

- ### core/ari/pjsip: Add refer mechanism
  There is a new ARI endpoint `/endpoints/refer` for referring
  an endpoint to some URI or endpoint.

- ### chan_dahdi: Allow autoreoriginating after hangup.
  The autoreoriginate setting now allows for kewlstart FXS
  channels to automatically reoriginate and provide dial tone to the
  user again after all calls on the line have cleared. This saves users
  from having to manually hang up and pick up the receiver again before
  making another call.

- ### sig_analog: Allow three-way flash to time out to silence.
  The threewaysilenthold option now allows the three-way
  dial tone to time out to silence, rather than continuing forever.

- ### res_pjsip: Enable TLS v1.3 if present.
  res_pjsip now allows TLS v1.3 to be enabled if supported by
  the underlying PJSIP library. The bundled version of PJSIP supports
  TLS v1.3.

- ### app_queue: Add support for applying caller priority change immediately.
  The 'queue priority caller' CLI command and
  'QueueChangePriorityCaller' AMI action now have an 'immediate'
  argument which allows the caller priority change to be reflected
  immediately, causing the position of a caller to move within the
  queue depending on the priorities of the other callers.

- ### Adds manager actions to allow move/remove/forward individual
    messages in a particular mailbox folder.  The forward command
    can be used to copy a message within a mailbox or to another
    mailbox. Also adds a Vo icemailBoxSummarry, required to retrieve
    message ID's.
  The following manager actions have been added
    VoicemailBoxSummary - Generate message list for a given mailbox
    VoicemailRemove - Remove a message from a mailbox folder
    VoicemailMove - Move a message from one folder to another within a mailbox
    VoicemailForward - Copy a message from one folder in one mailbox
      to another folder in another or the same mailbox.

- ### app_voicemail: add CLI commands for message manipulation
  The following CLI commands have been added to app_voicemail
  voicemail show mailbox <mailbox> <context>
  Show contents of mailbox <mailbox>@<context>
  voicemail remove <mailbox> <context> <from_folder> <messageid>
  Remove message <messageid> from <from_folder> in mailbox <mailbox>@<context>
  voicemail move <mailbox> <context> <from_folder> <messageid> <to_folder>
  Move message <messageid> in mailbox <mailbox>&<context> from <from_folder> to <to_folder>
  voicemail forward <from_mailbox> <from_context> <from_folder>
    <messageid> <to_mailbox> <to_context> <to_ folder>
  Forward message <messageid> in mailbox <mailbox>@<context> <from_folder> to
  mailbox <mailbox>@<context> <to_folder>

- ### sig_analog: Allow immediate fake ring to be suppressed.
  The immediatering option can now be set to no to suppress
  the fake audible ringback provided when immediate=yes on FXS channels.


                               [asterisk-announce] Asterisk Release 18.19.0

The Asterisk Development Team would like to announce
the release of Asterisk 18.19.0.

This release resolves issues reported by the community
and would have not been possible without your participation.

Thank You!


Change Log for Release 18.19.0
========================================

Summary:
----------------------------------------

- app.h: Move declaration of ast_getdata_result before its first use
- doc: Remove obsolete CHANGES-staging and UPGRADE-staging
- .github: Updates for AsteriskReleaser
- app_voicemail: fix imap compilation errors
- res_musiconhold: avoid moh state access on unlocked chan
- utils: add lock timestamps for DEBUG_THREADS
- .github: Back out triggering PROpenedOrUpdated by label
- .github: Move publish docs to new file CreateDocs.yml
- rest-api: Updates for new documentation site
- .github: Remove result check from PROpenUpdateGateTests
- .github: Fix use of 'contains'
- .github: Add recheck label test to additional jobs
- .github: Fix recheck label typos
- .github: Fix recheck label manipulation
- .github: Allow PR submit checks to be re-run by label
- app_voicemail_imap: Fix message count when IMAP server is unavailable
- res_pjsip_rfc3326: Prefer Q.850 cause code over SIP.
- res_pjsip_session: Added new function calls to avoid ABI issues.
- app_queue: Add force_longest_waiting_caller option.
- pjsip_transport_events.c: Use %zu printf specifier for size_t.
- res_crypto.c: Gracefully handle potential key filename truncation.
- configure: Remove obsolete and deprecated constructs.
- res_fax_spandsp.c: Clean up a spaces/tabs issue
- ast-db-manage: Synchronize revisions between comments and code.
- test_statis_endpoints:  Fix channel_messages test again
- res_crypto.c: Avoid using the non-portable ALLPERMS macro.
- tcptls: when disabling a server port, we should set the accept_fd to -1.
- AMI: Add parking position parameter to Park action
- test_stasis_endpoints.c: Make channel_messages more stable
- build: Fix a few gcc 13 issues
- .github: Rework for merge approval
- ast-db-manage: Fix alembic branching error caused by #122.
- app_followme: fix issue with enable_callee_prompt=no (#88)
- sounds: Update download URL to use HTTPS.
- configure: Makefile downloader enable follow redirects.
- res_musiconhold: Add option to loop last file.
- chan_dahdi: Fix Caller ID presentation for FXO ports.
- AMI: Add CoreShowChannelMap action.
- sig_analog: Add fuller Caller ID support.
- res_stasis.c: Add new type 'sdp_label' for bridge creation.
- app_queue: Preserve reason for realtime queues
- .github: Fix issues with cherry-pick-reminder
- indications: logging changes
- .github Ignore error when adding reviewrs to PR
- .github: Update field descriptions for AsteriskReleaser
- callerid: Allow specifying timezone for date/time.
- chan_pjsip: Allow topology/session refreshes in early media state
- chan_dahdi: Fix broken hidecallerid setting.
- .github: Change title of AsteriskReleaser job
- asterisk.c: Fix option warning for remote console.
- .github: Don't add cherry-pick reminder if it's already present
- .github: Fix quoting in PROpenedOrUpdated
- .github: Add cherry-pick reminder to new PRs
- configure: fix test code to match gethostbyname_r prototype.
- res_pjsip_pubsub.c: Use pjsip version for pending NOTIFY check. (#76)
- res_sorcery_memory_cache.c: Fix memory leak
- xml.c: Process XML Inclusions recursively.
- .github: Tweak improvement issue type language.
- .github: Tweak new feature language, and move feature requests elsewhere.
- .github: Fix staleness check to only run on certain labels.

User Notes:
----------------------------------------

- ### AMI: Add parking position parameter to Park action
  New ParkingSpace parameter has been added to AMI action Park.

- ### res_musiconhold: Add option to loop last file.
  The loop_last option in musiconhold.conf now
  allows the last file in the directory to be looped once reached.

- ### AMI: Add CoreShowChannelMap action.
  New AMI action CoreShowChannelMap has been added.

- ### sig_analog: Add fuller Caller ID support.
  Additional Caller ID properties are now supported on
  incoming calls to FXS stations, namely the
  redirecting reason and call qualifier.

- ### res_stasis.c: Add new type 'sdp_label' for bridge creation.
  When creating a bridge using the ARI the 'type' argument now
  accepts a new value 'sdp_label' which will configure the bridge to add
  labels for each stream in the SDP with the corresponding channel id.

- ### app_queue: Preserve reason for realtime queues
  Make paused reason in realtime queues persist an
  Asterisk restart. This was fixed for non-realtime
  queues in ASTERISK_25732.


Upgrade Notes:
----------------------------------------

- ### app_queue: Preserve reason for realtime queues
  Add a new column to the queue_member table:
  reason_paused VARCHAR(80) so the reason can be preserved.


Closed Issues:
----------------------------------------

  - #45: [bug]: Non-bundled PJSIP check for evsub pending NOTIFY check is insufficient/ineffective
  - #55: [bug]: res_sorcery_memory_cache: Memory leak when calling sorcery_memory_cache_open
  - #64: [bug]: app_voicemail_imap wrong behavior when losing IMAP connection
  - #65: [bug]: heap overflow by default at startup
  - #66: [improvement]: Fix preserve reason of pause when Asterisk is restared for realtime queues
  - #73: [new-feature]: pjsip: Allow topology/session refreshes in early media state
  - #87: [bug]: app_followme: Setting enable_callee_prompt=no breaks timeout
  - #89: [improvement]:  indications: logging changes
  - #91: [improvement]: Add parameter on ARI bridge create to allow it to send SDP labels
  - #94: [new-feature]: sig_analog: Add full Caller ID support for incoming calls
  - #98: [new-feature]: callerid: Allow timezone to be specified at runtime
  - #100: [bug]: sig_analog: hidecallerid setting is broken
  - #102: [bug]: Strange warning - 'T' option is not compatible with remote console mode and has no effect
.
  - #104: [improvement]: Add AMI action to get a list of connected channels
  - #108: [new-feature]: fair handling of calls in multi-queue scenarios
  - #110: [improvement]: utils - add lock timing information with DEBUG_THREADS
  - #116: [bug]: SIP Reason: "Call completed elsewhere" no longer propagating
  - #120: [bug]: chan_dahdi: Fix broken presentation for FXO caller ID
  - #122: [new-feature]: res_musiconhold: Add looplast option
  - #133: [bug]: unlock channel after moh state access
  - #136: [bug]: Makefile downloader does not follow redirects.
  - #145: [bug]: ABI issue with pjproject and pjsip_inv_session
  - #155: [bug]: GCC 13 is catching a few new trivial issues
  - #158: [bug]: test_stasis_endpoints.c: Unit test channel_messages is unstable
  - #174: [bug]: app_voicemail imap compile errors
  - #200: [bug]: Regression: In app.h an enum is used before its declaration.


                               [asterisk-announce] Asterisk Release 18.18.1

The Asterisk Development Team would like to announce security release
Asterisk 18.18.1.

The following security advisories were resolved in this release:
https://github.com/asterisk/asterisk/security/advisories/GHSA-4xjp-22g4-9fxm


Change Log for Release 18.18.1
========================================

Summary:
----------------------------------------

- apply_patches: Use globbing instead of file/sort.
- apply_patches: Sort patch list before applying
- pjsip: Upgrade bundled version to pjproject 2.13.1

User Notes:
----------------------------------------

- ### res_http_media_cache: Introduce options and customize
  The res_http_media_cache module now attempts to load
  configuration from the res_http_media_cache.conf file.
  The following options were added:
    * timeout_secs
    * user_agent
    * follow_location
    * max_redirects
    * protocols
    * redirect_protocols
    * dns_cache_timeout_secs

- ### format_sln: add .slin as supported file extension
  format_sln now recognizes '.slin' as a valid
  file extension in addition to the existing
  '.sln' and '.raw'.

- ### bridge_builtin_features: add beep via touch variable
  Add optional touch variable : TOUCH_MIXMONITOR_BEEP(interval)
  Setting TOUCH_MIXMONITOR_BEEP/TOUCH_MONITOR_BEEP to a valid
  interval in seconds will result in a periodic beep being
  played to the monitored channel upon MixMontior/Monitor
  feature start.
  If an interval less than 5 seconds is specified, the interval
  will default to 5 seconds.  If the value is set to an invalid
  interval, the default of 15 seconds will be used.

- ### app_senddtmf: Add SendFlash AMI action.
  The SendFlash AMI action now allows sending
  a hook flash event on a channel.

- ### res_mixmonitor: MixMonitorMute by MixMonitor ID
  It is now possible to specify the MixMonitorID when calling
  the manager action: MixMonitorMute.  This will allow an
  individual MixMonitor instance to be muted via ID.
  The MixMonitorID can be stored as a channel variable using
  the 'i' MixMonitor option and is returned upon creation if
  this option is used.
  As part of this change, if no MixMonitorID is specified in
  the manager action MixMonitorMute, Asterisk will set the mute
  flag on all MixMonitor audiohooks on the channel.  Previous
  behavior would set the flag on the first MixMonitor audiohook
  found.

- ### pbx_dundi: Add PJSIP support.
  DUNDi now supports chan_pjsip. Outgoing calls using
  PJSIP require the pjsip_outgoing_endpoint option
  to be set in dundi.conf.

- ### test.c: Fix counting of tests and add 2 new tests
  The "tests" attribute of the "testsuite" element in the
  output XML now reflects only the tests actually requested
  to be executed instead of all the tests registered.
  The "failures" attribute was added to the "testsuite"
  element.
  Also added two new unit tests that just pass and fail
  to be used for testing CI itself.

- ### cli: increase channel column width
  This change increases the display width on 'core show channels'
  amd 'core show channels verbose'
  For 'core show channels', the Channel name field is increased to
  64 characters and the Location name field is increased to 32
  characters.
  For 'core show channels verbose', the Channel name field is
  increased to 80 characters, the Context is increased to 24
  characters and the Extension is increased to 24 characters.


Upgrade Notes:
----------------------------------------


Closed Issues:
----------------------------------------

  - #193: [bug]: third-party/apply-patches doesn't sort the patch file list before applying


                               [asterisk-announce] Asterisk Release 18.18.0

The Asterisk Development Team would like to announce
the release of Asterisk 18.18.0.

This release resolves issues reported by the community
and would have not been possible without your participation.

Thank You!


Change Log for Release 18.18.0
========================================

Summary:
----------------------------------------

- Set up new ChangeLogs directory
- .github: Add AsteriskReleaser
- chan_pjsip: also return all codecs on empty re-INVITE for late offers
- cel: add local optimization begin event
- core: Cleanup gerrit and JIRA references. (#40)
- .github: Fix CherryPickTest to only run when it should
- .github: Fix reference to CHERRY_PICK_TESTING_IN_PROGRESS
- .github: Remove separate set labels step from new PR
- .github: Refactor CP progress and add new PR test progress
- res_pjsip: mediasec: Add Security-Client headers after 401
- .github: Add cherry-pick test progress labels
- LICENSE: Update link to trademark policy.
- chan_dahdi: Add dialmode option for FXS lines. (#36)
- .github: Update issue templates
- .github: Remove unnecessary parameter in CherryPickTest
- Initial GitHub PRs
- Initial GitHub Issue Templates
- pbx_dundi: Fix PJSIP endpoint configuration check.
- Revert "app_queue: periodic announcement configurable start time."
- pbx_dundi: Add PJSIP support.
- res_pjsip_stir_shaken: Fix JSON field ordering and disallowed TN characters.
- install_prereq: Add Linux Mint support.
- chan_pjsip: fix music on hold continues after INVITE with replaces
- voicemail.conf: Fix incorrect comment about #include.
- app_queue: Fix minor xmldoc duplication and vagueness.
- test.c: Fix counting of tests and add 2 new tests
- loader.c: Minor module key check simplification.
- ael: Regenerate lexers and parsers.
- res_calendar: output busy state as part of show calendar.
- bridge_builtin_features: add beep via touch variable
- res_mixmonitor: MixMonitorMute by MixMonitor ID
- format_sln: add .slin as supported file extension
- app_queue: periodic announcement configurable start time.
- func_json: Fix JSON parsing issues.
- app_dial: Fix DTMF not relayed to caller on unanswered calls.
- make_version: Strip svn stuff and suppress ref HEAD errors
- configure: fix detection of re-entrant resolver functions
- cli: increase channel column width
- res_agi: RECORD FILE plays 2 beeps.
- app_senddtmf: Add SendFlash AMI action.
- contrib: rc.archlinux.asterisk uses invalid redirect.
- main/iostream.c: fix build with libressl
- res_http_media_cache: Introduce options and customize

User Notes:
----------------------------------------

- ### cel: add local optimization begin event
  The new AST_CEL_LOCAL_OPTIMIZE_BEGIN can be used
  by itself or in conert with the existing
  AST_CEL_LOCAL_OPTIMIZE to book-end local channel optimizaion.

- ### chan_dahdi: Add dialmode option for FXS lines. (#36)
  A "dialmode" option has been added which allows
  specifying, on a per-channel basis, what methods of
  subscriber dialing (pulse and/or tone) are permitted.
  Additionally, this can be changed on a channel
  at any point during a call using the CHANNEL
  function.

- ### pbx_dundi: Add PJSIP support.
  DUNDi now supports chan_pjsip. Outgoing calls using
  PJSIP require the pjsip_outgoing_endpoint option
  to be set in dundi.conf.

- ### cli: increase channel column width
  This change increases the display width on 'core show channels'
  amd 'core show channels verbose'
  For 'core show channels', the Channel name field is increased to
  64 characters and the Location name field is increased to 32
  characters.
  For 'core show channels verbose', the Channel name field is
  increased to 80 characters, the Context is increased to 24
  characters and the Extension is increased to 24 characters.

- ### app_senddtmf: Add SendFlash AMI action.
  The SendFlash AMI action now allows sending
  a hook flash event on a channel.

- ### res_http_media_cache: Introduce options and customize
  The res_http_media_cache module now attempts to load
  configuration from the res_http_media_cache.conf file.
  The following options were added:
    * timeout_secs
    * user_agent
    * follow_location
    * max_redirects
    * protocols
    * redirect_protocols
    * dns_cache_timeout_secs

- ### test.c: Fix counting of tests and add 2 new tests
  The "tests" attribute of the "testsuite" element in the
  output XML now reflects only the tests actually requested
  to be executed instead of all the tests registered.
  The "failures" attribute was added to the "testsuite"
  element.
  Also added two new unit tests that just pass and fail
  to be used for testing CI itself.

- ### res_mixmonitor: MixMonitorMute by MixMonitor ID
  It is now possible to specify the MixMonitorID when calling
  the manager action: MixMonitorMute.  This will allow an
  individual MixMonitor instance to be muted via ID.
  The MixMonitorID can be stored as a channel variable using
  the 'i' MixMonitor option and is returned upon creation if
  this option is used.
  As part of this change, if no MixMonitorID is specified in
  the manager action MixMonitorMute, Asterisk will set the mute
  flag on all MixMonitor audiohooks on the channel.  Previous
  behavior would set the flag on the first MixMonitor audiohook
  found.

- ### bridge_builtin_features: add beep via touch variable
  Add optional touch variable : TOUCH_MIXMONITOR_BEEP(interval)
  Setting TOUCH_MIXMONITOR_BEEP/TOUCH_MONITOR_BEEP to a valid
  interval in seconds will result in a periodic beep being
  played to the monitored channel upon MixMontior/Monitor
  feature start.
  If an interval less than 5 seconds is specified, the interval
  will default to 5 seconds.  If the value is set to an invalid
  interval, the default of 15 seconds will be used.

- ### format_sln: add .slin as supported file extension
  format_sln now recognizes '.slin' as a valid
  file extension in addition to the existing
  '.sln' and '.raw'.


Upgrade Notes:
----------------------------------------

- ### cel: add local optimization begin event
  The existing AST_CEL_LOCAL_OPTIMIZE can continue
  to be used as-is and the AST_CEL_LOCAL_OPTIMIZE_BEGIN event
  can be ignored if desired.


Closed Issues:
----------------------------------------

  - #35: [New Feature]: chan_dahdi: Allow disabling pulse or tone dialing
  - #39: [Bug]: Remove .gitreview from repository.
  - #43: [Bug]: Link to trademark policy is no longer correct
  - #48: [bug]: res_pjsip: Mediasec requires different headers on 401 response
  - #52: [improvement]: Add local optimization begin cel event

### For more details, see:
https://downloads.asterisk.org/pub/telephony/asterisk/releases/ChangeLog-18.18.0.md


                            [asterisk-announce] Asterisk 18.17.1 Now Available

The Asterisk Development Team would like to announce the release of Asterisk 18.17.1.

The release of Asterisk 18.17.1 resolves several issues reported by the
community and would have not been possible without your participation.

Thank you!

The following issues are resolved in this release:

Bugs fixed in this release:
-----------------------------------
 * ASTERISK-30469 - res_pjsip_pubsub: Regression for
      subscription shutdowns
      (Reported by N A)
 * ASTERISK-30472 - pbx_ael: Literal usage for variables broken
      (Reported by isrl)

For a full list of changes in this release, please see the ChangeLog:
https://downloads.asterisk.org/pub/telephony/asterisk/ChangeLog-18.17.1

Thank you for your continued support of Asterisk!


                            [asterisk-announce] Asterisk 18.17.0 Now Available

The Asterisk Development Team would like to announce the release of Asterisk 18.17.0.

The release of Asterisk 18.17.0 resolves several issues reported by the
community and would have not been possible without your participation.

Thank you!

The following issues are resolved in this release:

New Features made in this release:
-----------------------------------
 * ASTERISK-29810 - app_signal: Add channel signaling
      applications
      (Reported by N A)
 * ASTERISK-30262 - res_pjsip_session: Allow a context to be
      specified for overlap dialing
      (Reported by N A)
 * ASTERISK-30319 - Add BYE Reason support for SIP
      (Reported by Igor Goncharovsky)
 * ASTERISK-30180 - app_broadcast: Add a channel audio
      multicasting application
      (Reported by N A)

Bugs fixed in this release:
-----------------------------------
 * ASTERISK-27830 - Asterisk crashes on Invalid UTF-8 string
      (Reported by AvayaXAsterisk)
 * ASTERISK-30354 - chan_iax2: Lack of formats prior to
      receiving voice frames causes jitterbuffer to stall
      (Reported by N A)
 * ASTERISK-30162 - when chan_iax is used to relay calls, no
      ringing indication is played
      (Reported by Jaco Kroon)
 * ASTERISK-30424 - pjproject_bundled: cross-compilation broken
      when ssl autodetected
      (Reported by Nick French)
 * ASTERISK-30388 - res_phoneprov: Stale SERVER variable when
      multi-homed
      (Reported by cmaj)
 * ASTERISK-30419 - pjsip: Crash when sending NOTIFY in PJSIP 2.13
      (Reported by Ross Beer)
 * ASTERISK-30417 - Copy/Paste error in UnpauseQueueMember
      (Reported by Sean Bright)
 * ASTERISK-30406 - pbx_ael: Global variables are not expanded.
      (Reported by Sean Bright)
 * ASTERISK-29604 - ari: Segfault with lots of calls
      (Reported by Danila Evgrafov)
 * ASTERISK-30391 - res_rtp_asterisk: Issue with transcoding
      g722 after MES changes
      (Reported by George Joseph)
 * ASTERISK-30345 - loader.c: Modules that decline to load
      cannot be reloaded
      (Reported by N A)
 * ASTERISK-30379 - http: fix NULL pointer dereference while
      enable_status on TLS-only
      (Reported by Boris P. Korzun)
 * ASTERISK-30375 - res_http_media_cache: Crash when URL has no
      path component.
      (Reported by Sean Bright)
 * ASTERISK-30351 - manager: Originate variables are not added
      when setvar used in manager.conf
      (Reported by Sebastian
      Gutierrez)
 * ASTERISK-30369 - res_pjsip: Websockets from same IP shut down
      when they shouldn't be
      (Reported by Joshua C. Colp)
 * ASTERISK-30367 - pbx: Fix outdated channel snapshots with pbx_exec
      (Reported by N A)
 * ASTERISK-28767 - chan_pjsip: Caller ID not used when checking
      for extension, callerid supplement executed too late
      (Reported by Oleg)
 * ASTERISK-30350 - res_pjsip_sdp_rtp: rtp_timeout_hold is not
      used when moh_passthrough has call on hold
      (Reported by Benjamin Keith Ford)
 * ASTERISK-30240 - app voicemail odbc build error with gcc 11.1
      (Reported by Michael Bradeen)
 * ASTERISK-30100 - res_pjsip: Path is ignored on INVITE to endpoint
      (Reported by Yury Kirsanov)
 * ASTERISK-30198 - Error `Too many open files` occurs after
      about ~8000 calls when using mixmonitor
      (Reported by Julien Alie)

Improvements made in this release:
-----------------------------------
 * ASTERISK-30411 - app_read: add option to include terminating
      digit on empty, terminated strings
      (Reported by Michael Bradeen)
 * ASTERISK-30405 - app_directory: Add 's' option to skip
      channel call
      (Reported by Michael Bradeen)
 * ASTERISK-30422 - app_senddtmf: add the option for senddtmf to answer
      (Reported by Michael Bradeen)
 * ASTERISK-30325 - Upgrade Asterisk to bundled pjproject 2.13
      (Reported by Stanislav Abramenkov)
 * ASTERISK-30404 - app_directory: Add reading directory
      configuration from custom file
      (Reported by Michael Bradeen)
 * ASTERISK-29913 - func_json: Adds multi-level and array
      parsing to JSON_DECODE
      (Reported by N A)
 * ASTERISK-30353 - func_frame_trace: Print text for text frames
      (Reported by N A)
 * ASTERISK-30361 - json.h: Add missing
      ast_json_object_real_get
      (Reported by N A)
 * ASTERISK-30280 - Create capability to assign a Media
      Experience Score to RTP streams
      (Reported by George Joseph)
 * ASTERISK-30332 - func_callerid: Warn if invalid redirecting
      reason provided
      (Reported by N A)

For a full list of changes in this release, please see the ChangeLog:
https://downloads.asterisk.org/pub/telephony/asterisk/ChangeLog-18.17.0

Thank you for your continued support of Asterisk!


               [asterisk-announce] Asterisk 16.29.1, 18.15.1, 19.7.1, 20.0.1 Now Available

The Asterisk Development Team would like to announce the release of
Asterisk 16.29.1, 18.15.1, 19.7.1, and 20.0.1.

The release of Asterisk 16.29.1, 18.15.1, 19.7.1, and 20.0.1 resolves issues reported by the
community and would have not been possible without your participation.Thank you!

The following issue is resolved in this release:

Bugs fixed in this release:
-----------------------

[ASTERISK-30103 <https://issues.asterisk.org/jira/browse/ASTERISK-30103>]
chan_ooh323 vulnerability in calling/called party IE (Reported By: Michael
Bradeen)

[ASTERISK-30176 <https://issues.asterisk.org/jira/browse/ASTERISK-30176>]
GetConfig can read files outside of Asterisk (Reported By: shawty)

[ASTERISK-30244 <https://issues.asterisk.org/jira/browse/ASTERISK-30244>]
Occasional crash when TCP/TLS connection terminated and subscription
persistence is removed (Reported By: nappsoft)

[ASTERISK-30338 <https://issues.asterisk.org/jira/browse/ASTERISK-30338>]
Backport 2.13 security fixes from pjproject


                            [asterisk-announce] Asterisk 18.15.0 Now Available

The Asterisk Development Team would like to announce the release of Asterisk 18.15.0.

The release of Asterisk 18.15.0 resolves several issues reported by the
community and would have not been possible without your participation.

Thank you!

The following issues are resolved in this release:

New Features made in this release:
-----------------------------------
 * ASTERISK-30037 - Add test support to calling external processes
      (Reported by Philip Prindeville)
 * ASTERISK-30161 - locks: add AMI event for deadlock
      (Reported by N A)
 * ASTERISK-30211 - app_confbridge: Add end_marked_any option
      (Reported by N A)
 * ASTERISK-30186 - res_pjsip: Add support for reloading TLS
      certificate and key information
      (Reported by Joshua C.  Colp)
 * ASTERISK-29899 - features: Add advanced transfer initiation options
      (Reported by N A)

Bugs fixed in this release:
-----------------------------------
 * ASTERISK-30235 - res_crypto and tests:  Memory issues and and
      uninitialized variable error
      (Reported by George Joseph)
 * ASTERISK-30234 - res_geolocation: ...may be used
      uninitialized error in geoloc_config.c
      (Reported by George Joseph)
 * ASTERISK-30215 - Inbound SIP INVITE with Geo Location causing
      a Segmentation Fault
      (Reported by Dan Cropp)
 * ASTERISK-30135 - [res_musiconhold] Allows the moh only for
      the answered call
      (Reported by sungtae kim)
 * ASTERISK-26894 - pjsip should support tel uri scheme
      (Reported by Gergely D½½ms½½di)
 * ASTERISK-30210 - func_frame_trace: Channel masquerade
      triggers assertion
      (Reported by N A)
 * ASTERISK-30190 - res_geolocation:  GEOLOC_PROFILE isn't
      returning correct values on incoming channel
      (Reported by George Joseph)
 * ASTERISK-29185 - chan_pjsip: Endpoint: allow = all is broken.
      (Reported by Alexander Traud)
 * ASTERISK-30192 - res_tonedetect: fix typo for frametype
      (Reported by N A)
 * ASTERISK-29453 - alembic: incoming_call_offer_pref and
      outgoing_call_offer_pref missing in "ps_endpoints" table
      (Reported by Daniel Th½½men)
 * ASTERISK-26826 - testsuite: Add support for Python 3
      (Reported by Joshua C. Colp)
 * ASTERISK-30167 - res_geolocation:  Refactor for issues found
      by users
      (Reported by George Joseph)
 * ASTERISK-28422 - Memory Leak in Confbridge menu
      (Reported by Ted G)
 * ASTERISK-29917 - ami: FilterList action doesn't exist
      (Reported by N A)
 * ASTERISK-30018 - app_meetme: MeetmeList AMI event not documented
      (Reported by Michael Cargile)
 * ASTERISK-30020 - ConfbridgeListRooms Event Not Documented
      (Reported by Michael Cargile)
 * ASTERISK-30151 - Documentation doesn't include info about
      "field", a 3rd required parameter.
      (Reported by Chris Young)

Improvements made in this release:
-----------------------------------
 * ASTERISK-30241 - res_pjsip_gelocation: Downgrade some NOTICE
      scope trace debugs to DEBUG level
      (Reported by N A)
 * ASTERISK-30178 - extend user_eq_phone behavior to local uri's
      (Reported by Michael Bradeen)
 * ASTERISK-30046 - Reimplement res/res_crypto.c internals with
      EVP_PKEY interface to Openssl API's
      (Reported by Philip Prindeville)
 * ASTERISK-30045 - Add test coverage to res/res_crypto.c functionality
      (Reported by Philip Prindeville)
 * ASTERISK-30185 - res_geolocation: Allow location parameters
      to be specified in profiles
      (Reported by George Joseph)
 * ASTERISK-30177 - res_geolocation:  Add option to suppress
      empty elements
      (Reported by George Joseph)
 * ASTERISK-30182 - res_geolocation: Add built-in profiles to
      use in fully dynamic configurations
      (Reported by George Joseph)
 * ASTERISK-29906 - [patch] update RLS to reflect the changes to
      the lists
      (Reported by Alexei Gradinari)
 * ASTERISK-30163 - general: fix minor formatting issues
      (Reported by N A)
 * ASTERISK-30164 - chan_iax2: Add missing option documentation
      (Reported by N A)
 * ASTERISK-30153 - logger: Improve log levels
      (Reported by N A)
 * ASTERISK-30160 - cdr.conf: Remove obsolete app_mysql reference
      (Reported by N A)
 * ASTERISK-30159 - general: Remove obsolete SVN references
      (Reported by N A)


                            [asterisk-announce] Asterisk 18.14.0 Now Available

The Asterisk Development Team would like to announce the release of Asterisk 18.14.0.

The release of Asterisk 18.14.0 resolves several issues reported by the
community and would have not been possible without your participation.

Thank you!

The following issues are resolved in this release:

Improvements made in this release:
-----------------------------------
 * ASTERISK-30128 - Create PJSIP interface module for Geolocation
      (Reported by George Joseph)
 * ASTERISK-30127 - Create core Geolocation capability for Asterisk
      (Reported by George Joseph)
 * ASTERISK-30089 - general: fix typos
      (Reported by N A)
 * ASTERISK-30050 - Upgrade Asterisk to bundled pjproject 2.12.1
      (Reported by Stanislav Abramenkov)

Bugs fixed in this release:
-----------------------------------
 * ASTERISK-30167 - res_geolocation:  Refactor for issues found
      by users
      (Reported by George Joseph)
 * ASTERISK-29966 - pbx_variables: ast_str_strlen can be wrong
      (Reported by N A)
 * ASTERISK-29905 - OSX: bininstall launchd issue on
      cross-platfrom build
      (Reported by Sergey V. Lobanov)
 * ASTERISK-30137 - manager: Global disabled event filtered is incomplete
      (Reported by N A)
 * ASTERISK-30109 - res_pjsip: no contact-status AMI event on
      register of prune-on-boot contact that uses the same URI as
      before Asterisk restart
      (Reported by Michael Neuhauser)
 * ASTERISK-29991 - chan_dahdi, callerid: Caller ID does not
      honor presentation
      (Reported by N A)
 * ASTERISK-30126 - Spelling mistake in
      configs/samples/queues.conf.sample
      (Reported by Sam Banks)
 * ASTERISK-30029 - build: Git security vulnerability fix is sad
      with our accessing git as root during "make install"
      (Reported by Joshua C. Colp)
 * ASTERISK-29907 - res_pjsip, app_confbridge: Video call
      through ConfBridge with normal endpoints causes infinite
      loop/crash
      (Reported by N A)
 * ASTERISK-30138 - Compile failure in
      res_geolocation/geoloc_eprofile.c when optimization is enabled
      (Reported by George Joseph)
 * ASTERISK-30096 -  cel_odbc: Column type 9 (field
      'cdr:cel:eventtime') is unsupported at this time
      (Reported by Morvai Szabolcs)
 * ASTERISK-30083 - chan_iax2: Optional dependency on
      openssl/res_crypto is now mandatory
      (Reported by Dmitry Melekhov)
 * ASTERISK-30099 - test_aeap_transport: transport_connect_fail
      sporadically causes failure
      (Reported by Kevin Harwell)
 * ASTERISK-30123 - features: Update automixmon documentation to
      reflect reality
      (Reported by Trevor Peirce)
 * ASTERISK-30117 - pbx_lua: Remove compiler warnings
      (Reported by Boris P. Korzun)
 * ASTERISK-30101 - res_prometheus: Optional load
      res_pjsip_outbound_registration.so
      (Reported by Boris P.  Korzun)
 * ASTERISK-29989 - app_dial, chan_dahdi: DIALSTATUS is
      inconsistent for busy
      (Reported by N A)
 * ASTERISK-30001 - db: Removing nonexistent entries shows
      "Database entry removed"
      (Reported by N A)
 * ASTERISK-30115 - app_dial: Allow hook flashes to propogate on
      outbound dials
      (Reported by N A)
 * ASTERISK-30106 - res_calendar_icalendar: Microsoft online ICS
      calendars no longer work
      (Reported by N A)
 * ASTERISK-29822 - cli: Typing \? freezes the CLI permanently
      with remote console
      (Reported by N A)
 * ASTERISK-30072 - res_pjsip: allow TLS verification of
      wildcard cert-bearing servers
      (Reported by Kevin Harwell)
 * ASTERISK-30075 - say: Abort if channel hangs up during playback
      (Reported by N A)

New Features made in this release:
-----------------------------------
 * ASTERISK-30136 - db: Add AMI action to retrieve all keys
      beginning with a prefix
      (Reported by N A)
 * ASTERISK-30000 - chan_dahdi: Add POLARITY function
      (Reported by N A)
 * ASTERISK-30062 - cli: Add CLI command to execute a dialplan app
      (Reported by N A)
 * ASTERISK-29999 - pjsip: Get information from 200 OK INVITE
      reply headers
      (Reported by Jos½½ Lopes)
 * ASTERISK-30061 - pbx: Add pbx helper application
      (Reported by N A)


                            [asterisk-announce] Asterisk 18.13.0 Now Available

The Asterisk Development Team would like to announce the release of Asterisk 18.13.0.

The release of Asterisk 18.13.0 resolves several issues reported by the
community and would have not been possible without your participation.

Thank you!

The following issues are resolved in this release:

Improvements made in this release:
-----------------------------------
 * ASTERISK-29906 - [patch] update RLS to reflect the changes to the lists
      (Reported by Alexei Gradinari)
 * ASTERISK-29891 - [patch] provide a display name for RLS subscriptions
      (Reported by Alexei Gradinari)
 * ASTERISK-30090 - xmldocs: Use example tags for examples
      (Reported by N A)
 * ASTERISK-30086 - res_parking: Warn when invalid parking space requested
      (Reported by N A)
 * ASTERISK-30058 - Evaluate dialplan functions and variables in agi exec
      (Reported by Shloime Rosenblum)
 * ASTERISK-30027 - ari: expose channel driver's unique id (i.e.
      Call-ID for chan_sip/chan_pjsip) in ARI channel resource
      (Reported by Moritz Fain)
 * ASTERISK-29845 - res_pjsip_outbound_registration: Show time
      remaining until registration lapses
      (Reported by N A)

Bugs fixed in this release:
-----------------------------------
 * ASTERISK-30097 - console: Recent documentation changes for
      connecting to remote console are inconsistent
      (Reported by Matthias Hensler)
 * ASTERISK-30043 - Wrong party is disconnected when
      hook-flashing on 3-way bridge
      (Reported by Josh Alberts)
 * ASTERISK-29603 - res_pjsip: UPDATE/re-INVITE not sent when
      "timers=always" is specified in pjsip.conf
      (Reported by Ray Crumrine)
 * ASTERISK-30092 - DateTime application: wrong inflection for
      one o'clock in German
      (Reported by Christof Efkemann)
 * ASTERISK-30064 - pbx: iax2 switch causes crash due to
      deadlock and assertion
      (Reported by N A)
 * ASTERISK-29981 - res_calendar: Asterisk crashes when
      starting, and will not run
      (Reported by N A)
 * ASTERISK-30039 - cli: Targeted debug on startup deadlocks and
      creates unstable system
      (Reported by N A)
 * ASTERISK-30051 - res_pjsip: No video after un-hold with
      moh_passthrough=yes
      (Reported by Maximilian Fridrich)
 * ASTERISK-24601 - [patch]Missing RFC4235 tags and attributes
      in PJSIP NOTIFY event: dialog  XML body
      (Reported by Marco Paland)
 * ASTERISK-30059 - menuselect: libxml include fails under Gentoo
      (Reported by waltermoeller)
 * ASTERISK-30060 - loader: format warnings in dev mode
      (Reported by N A)
 * ASTERISK-30065 - pjsip: Open Websocket connection is not
      reused for outgoing requests
      (Reported by LA)
 * ASTERISK-30042 - res_pjsip_transport_websocket: Registration
      over websocket returns a rewritten contact
      (Reported by Thomas Guebels)
 * ASTERISK-29993 - chan_dahdi: Operator control option borks
      both lines involved on callee disconnect
      (Reported by N A)
 * ASTERISK-30044 - GCC 12 issues
      (Reported by George Joseph)

New Features made in this release:
-----------------------------------
 * ASTERISK-30063 - app_voicemail: Add option to prevent
      deletion of messages
      (Reported by N A)
 * ASTERISK-29965 - res_pjsip_outbound_registration: Make max
      registration delay configurable
      (Reported by N A)
 * ASTERISK-30087 - res_parking: Add music on hold override option
      (Reported by N A)
 * ASTERISK-30036 - app_confbridge: Add CONFBRIDGE_CHANNELS function
      (Reported by N A)

Thank you for your continued support of Asterisk!


                            [asterisk-announce] Asterisk 18.12.1 Now Available

The Asterisk Development Team would like to announce the release of Asterisk 18.12.1.

The release of Asterisk 18.12.1 resolves an issue reported by the
community and would have not been possible without your participation.

Thank you!

The following issue is resolved in this release:

Bugs fixed in this release:
-----------------------------------
 * ASTERISK-30065 - pjsip: Open Websocket connection is not
      reused for outgoing requests
      (Reported by LA)


                            [asterisk-announce] Asterisk 18.12.0 Now Available

The Asterisk Development Team would like to announce the release of Asterisk 18.12.0.

The release of Asterisk 18.12.0 resolves several issues reported by the
community and would have not been possible without your participation.

Thank you!

The following issues are resolved in this release:

Security bugs fixed in this release:
-----------------------------------
 * ASTERISK-29476 - res_stir_shaken: Blind SSRF vulnerabilities
      (Reported by Clint Ruoho)
 * ASTERISK-29838 - ${SQL_ESC()} not correctly escaping a terminating \
      (Reported by Leandro Dardini)
 * ASTERISK-29872 - res_stir_shaken: Resource exhaustion with large files
      (Reported by Benjamin Keith Ford)

New Features made in this release:
-----------------------------------
 * ASTERISK-29931 - Option to allow a user to not hear the join
      sound on enter but everyone else can
      (Reported by Michael Cargile)
 * ASTERISK-29968 - func_db: Add a function to return
      cardinality of keys at prefix
      (Reported by N A)
 * ASTERISK-29486 - Hint-like extension value lookup function
      without device state
      (Reported by N A)
 * ASTERISK-29941 - chan_pjsip: Add ability to send flash events
      (Reported by N A)
 * ASTERISK-29820 - cli: Add command to evaluate a function
      (Reported by N A)
 * ASTERISK-29876 - app_queue: Add music on hold option
      (Reported by N A)

Bugs fixed in this release:
-----------------------------------
 * ASTERISK-29655 - res_pjsip_session: No video to caller if no
      camera available
      (Reported by Michael Auracher)
 * ASTERISK-29638 - res_pjsip_session: No video after early media
      (Reported by Michael Auracher)
 * ASTERISK-28518 - chan_dahdi: Caller ID FSK Erroneously Sent
      when Picking Up Dahdi Call On Hold
      (Reported by Josh Alberts)
 * ASTERISK-29990 - chan_dahdi: adding ring cadences is not
      idempotent on dahdi restart
      (Reported by N A)
 * ASTERISK-30007 - chan_iax2: Prevent crashes due to attempted
      encryption with missing secrets
      (Reported by N A)
 * ASTERISK-29728 - menuselect: Disabled by default modules that
      are enabled are always recompiled
      (Reported by N A)
 * ASTERISK-30002 - app_meetme: Don't erroneously set global
      variables when channel is NULL
      (Reported by N A)
 * ASTERISK-29994 - chan_dahdi: Round robin array size is too
      small for max number of groups
      (Reported by N A)
 * ASTERISK-22246 - Asterisk's "T" flag is ignored when used
      with "r" or "R" flags. (documentation bug)
      (Reported by Rusty Newton)
 * ASTERISK-26582 - Asterisk seems to ignore the "n" parameter
      for "disable console colorization"
      (Reported by Sebastian Gutierrez)
 * ASTERISK-29843 - Session timers get removed on UPDATE
      (Reported by Mark Petersen)
 * ASTERISK-29943 - file.c: seeking to negative file offset is
      not prevented
      (Reported by N A)
 * ASTERISK-29955 - chan_sip: SIP route header is missing on UPDATE
      (Reported by Mark Petersen)
 * ASTERISK-29842 - Do not change 180 Ringing to 183 Progress
      even if early_media already enabled
      (Reported by Mark Petersen)
 * ASTERISK-29948 - iostream: Infinite TCP timeout writing data
      (Reported by N A)
 * ASTERISK-29253 - Incorrect bridging on transfer
      (Reported by Yury Kirsanov)
 * ASTERISK-30006 - res_pjsip: UDP transport does not work when
      async_operations is greater than 1
      (Reported by Ross Beer)
 * ASTERISK-30024 - Failed to sign STIR/SHAKEN payload with
      functionality not enabled
      (Reported by Claude Diderich)
 * ASTERISK-30021 - ast_variable_list_replace_variable uses
      variable with new keyword
      (Reported by Jasper Hafkenscheid)
 * ASTERISK-30023 - cdr_adaptive_odbc: does not support DATETIME
      database columns
      (Reported by Gregory Massel)
 * ASTERISK-30015 - pjsip / WebRTC: Chrome creating large number
      of SDP attributes
      (Reported by Josh Hogan)
 * ASTERISK-26689 - res_pjsip_sdp_rtp: 183 Session in Progress.
      Disconnecting channel for lack of RTP activity
      (Reported by Dmitriy Serov)
 * ASTERISK-29929 - res_pjsip_sdp_rtp: Disconnecting channel for
      lack of RTP activity in one way sessions
      (Reported by Boris P. Korzun)
 * ASTERISK-29411 - Crash in pjsip_msg_find_hdr_by_name
      (Reported by LA)
 * ASTERISK-29535 - Segmentation fault in libasteriskpj.so.2
      (Reported by Daniel Bonazzi)
 * ASTERISK-26719 - pbx: Only up to 127 includes in a dialplan
      context (AST_PBX_MAX_STACK - 1)
      (Reported by Tzafrir Cohen)
 * ASTERISK-29986 - build: Asterisk 18.11.0 doesn't compile when
      wget isn't available
      (Reported by Stefan Ruijsenaars)
 * ASTERISK-29988 - REGRESSION: The build process is requiring
      xmllint or xmlstarlet ro be installed when it shouldn't
      (Reported by George Joseph)
 * ASTERISK-29895 - chan_iax2: Fix misaligned spacing in iax2
      show netstats printout
      (Reported by N A)
 * ASTERISK-29939 - agi: Fix xmldoc bug with set music
      (Reported by N A)
 * ASTERISK-28891 - documentation: AGICommand_set+music
      documentation arguments displayed incorreclty
      (Reported by Jonathan Harris)
 * ASTERISK-29048 - chan_iax2: "iax2 show registry" shows host
      for perceived
      (Reported by David Herselman)
 * ASTERISK-29674 - Adjust for 64bit time_t
      (Reported by Andre Heider)
 * ASTERISK-29961 - RLS: domain part of 'uri' list attribute
      mismatch with SUBSCRIBE request
      (Reported by Alexei Gradinari)
 * ASTERISK-29928 - logging messages truncated when using MUSL runtime
      (Reported by Philip Prindeville)
 * ASTERISK-29960 - ari: Retrieving stored recording can returns
      wrong file
      (Reported by Arix)
 * ASTERISK-29950 - SayNumber can handle '01' to '07', but not
      '08' or '09'
      (Reported by Jim Van Meggelen)

Improvements made in this release:
-----------------------------------
 * ASTERISK-24827 - Missing documentation for chan_dahdi dial
      string ring cadences
      (Reported by Scott Griepentrog)
 * ASTERISK-29940 - general: Add since tags to xmldocs
      (Reported by N A)
 * ASTERISK-29726 - Add Asterisk External Application Protocol
      (AEAP) implementation
      (Reported by Kevin Harwell)
 * ASTERISK-29951 - app_mf, app_sf: Return -1 on hangup
      (Reported by N A)
 * ASTERISK-29954 - app_meetme: Emit warning if conference not found
      (Reported by N A)
 * ASTERISK-29351 - Qualify pjproject 2.12 for Asterisk
      (Reported by George Joseph)
 * ASTERISK-29976 - Should Readme include information about
      install_prereq script?
      (Reported by Marcel Wagner)
 * ASTERISK-29970 - Use pkg-config to find libxml2 headers and libraries
      (Reported by Hugh McMaster)
 * ASTERISK-29980 - build: External binary modules don't use https
      (Reported by INVADE International Ltd.)
 * ASTERISK-25716 - Documentation: Document explanations and
      examples for possible values of DIALSTATUS
      (Reported by Rusty Newton)
 * ASTERISK-29967 - pbx_builtins: Add missing documentation
      (Reported by N A)


                            [asterisk-announce] Asterisk 18.11.3 Now Available

   Asterisk Development Team asteriskteam at digium.com
   Tue Apr 26 12:09:50 CDT 2022

The Asterisk Development Team would like to announce the release of Asterisk 18.11.3.

The release of Asterisk 18.11.3 resolves an issue reported by the
community and would have not been possible without your participation.

Thank you!

The following issue is resolved in this release:

Bugs fixed in this release:
-----------------------------------
 * ASTERISK-30024 - Failed to sign STIR/SHAKEN payload with
      functionality not enabled
      (Reported by Claude Diderich)


      [asterisk-announce] Asterisk 16.25.2, 18.11.2, 19.3.2 and 16.8-cert14 Now Available (Security)

The Asterisk Development Team would like to announce security releases for
Asterisk 16, 18 and 19, and Certified Asterisk 16.8. The available releases are
released as versions 16.25.2, 18.11.2, 19.3.2 and 16.8-cert14.

The following security vulnerabilities were resolved in these versions:

* AST-2022-001: res_stir_shaken: resource exhaustion with large files
  When using STIR/SHAKEN, it½½½s possible to download files that are not
  certificates. These files could be much larger than what you would expect to
  download.

* AST-2022-002: res_stir_shaken: SSRF vulnerability with Identity header
  When using STIR/SHAKEN, it½½½s possible to send arbitrary requests like GET to
  interfaces such as localhost using the Identity header.

* AST-2022-003: func_odbc: Possible SQL Injection
  Some databases can use backslashes to escape certain characters, such as
  backticks. If input is provided to func_odbc which includes backslashes it is
  possible for func_odbc to construct a broken SQL query and the SQL query to
  fail.


                            [asterisk-announce] Asterisk 18.11.1 Now Available

   Asterisk Development Team asteriskteam at digium.com
   Tue Mar 29 19:15:43 CDT 2022

The Asterisk Development Team would like to announce the release of Asterisk 18.11.1.

The release of Asterisk 18.11.1 resolves several issues reported by the
community and would have not been possible without your participation.

Thank you!

The following issues are resolved in this release:

Bugs fixed in this release:
-----------------------------------
 * ASTERISK-29986 - build: Asterisk 18.11.0 doesn't compile when
      wget isn't available
      (Reported by Stefan Ruijsenaars)
 * ASTERISK-29988 - REGRESSION: The build process is requiring
      xmllint or xmlstarlet ro be installed when it shouldn't
      (Reported by George Joseph)


                            [asterisk-announce] Asterisk 18.11.0 Now Available

   Asterisk Development Team asteriskteam at digium.com
   Thu Mar 24 09:06:03 CDT 2022

The Asterisk Development Tea…
jperkin pushed a commit that referenced this issue Mar 26, 2024
Hello all! This will likely be the final release of Amfora.
For more information, please see my blog post, https://www.makeworld.space/2023/08/bye_gemini.html

Thanks to all the users and especially the contributors, who made this project
the personal success it was for me.

The following is copied from the CHANGELOG.md file in this repo.
Added
    Syntax highlighting for preformatted text blocks with alt text (#252, #263, wiki page)
    Client certificates can be restricted to certain paths of a host (#115)
    header config option in [subscriptions] to allow disabling the header text on the subscriptions page (#191)
    Selected link and scroll position stays for non-cached pages (#122)
    Keybinding to open URL with URL handler instead of configured proxy (#143)
    include theme key to import themes from an external file (#154, #290)
    Support SOCKS5 proxying by setting AMFORA_SOCKS5 environment variable (#155)
    When bookmarking a page, the first level one heading is suggested as the name (#267, #293)
    Confirmation prompts for URL schemes in new [url-prompts] config section (#301, #302)

Changed
    Center text automatically, removing left_margin from the config (#233)
    max_width defaults to 80 columns instead of 100 (#233)
    Tabs have the domain of the current page instead of numbers (#202)
    Closing Amfora with q was removed in favor of Shift-q (#243)
    Paging up or down scrolls by 50% instead of 75%, to match less (#303)
    Update deps, require Go 1.17 (#336)
    Show local directory index file if available (#319)
    Updated Project Gemini URLs (#342)

Fixed
    Modal can't be closed when opening non-gemini text URLs from the commandline (#283, #284)
    External programs started by Amfora remain as zombie processes (#219)
    Prevent link lines (and other types) from being wider than the max_width setting (#280)
    new:7 on new tab page fails to open link (#306)
    Slashes aren't decoded in redirect URLs (#322, #324)
    Typing localhost in the bottom bar actually loads localhost instead of searching (#326, #327)
jperkin pushed a commit that referenced this issue Jun 7, 2024
From upstream's changelog:


AWStats 7.9 Latest

Add Windows 11 and Android 13 operating systems
Update Hungarian translation and migrate it to UTF-8.
fix cross site scripting
Replace hard coded text with $Message ( Monthly, Daily, Hourly )
Android 11 + 12, MacOS 11 ( Big Sur ) + 12 ( Monterey )
Catch up german translations
Change the substitution that replaces newlines with BR elements so
that the syntax works for both HTML and XHTML.
Added a few robots and 1 phone browser. Also corrected some errors in
devlop robots.pm
Only look for configuration in dedicated awstats directories
Unwrap SRS e-mail addresses
Fixes #195/CVE-2020-35176
As geoip2_country doesn't have AddHTMLGraph_geoip2_country, it
should only generate subpage for geoip2_city.
added support for HaikuOS and Safari based WebPositive browser
Adding missing td-tag opening
Tajik Language Support


AWStats 7.8

NEW Add SelectBox for DatabaseBreak Mode: month,day and hour.
Update http status codes
Add more file types
Update README.md
Fix geoip2 formatting problem
corner case 99
Fix some incoherent entries in search_engines.pm
Fix geoip2 plugin on windows by renaming it
Update robots.pm with PR118 data. Add:
- PiplBot bot
- um-IC & um-LN bot
- arcemedia
- bit.ly
- bidswitchbot
- bnf.fr_bot
- contxbot
- flamingo
- getintent (variant)
- laserlikebot
- mappy
- mojeek (variant)
- serendeputy
- trendiction
- yak (linkinfluence)
- zoominfobot
Fixes #104
Change markdown to better readability
Update Copyright year
Change to https links
Fix links for perl download
NEW add %time6 tag in log format to support some IIS log format
geoip2: Fix table formatting error. Missing "" item tag.
Changes to robots.pm
Add support for macOS DMG and PKG files
Fix browser detection with HTTP 206 status code
Support for macOS 10.13/10.14 + improved image compression of icons
Fix use the 5 top hits as base 100 for graph to show the top 5 hits.
Clean up geoip2 and geoip2 city modules
* Correctly convert dns names to ip4 and ip6 address using getaddrinfo
(fixes #120, #121, obsoletes #115)
* Only lookup if the IP is of type public (fixes #122)
and catch further lookup errors (obsoletes #123)
* Store and display the GeoIP City output HTML escaped (fixes #127)
* Code to perform and cache the actual lookup is consolidated
* General code improvement and readability
Losslessly reduced size of PNG images by about 33% using zopfli,
pngout and oxipng. Also added os icons for macOS 10.13 and 10.14.
Add Robot: The Knowledge AI
Fix Error: Not same number of records of RobotsSearchIDOrder_listx
Robots, Search Engine and Web Page Tracking Modifications
Optimize OptimizeArray
Added UptimeRobot https://uptimerobot.com/
Fix a few grammar errors in the model config
Ignore search phrases longer than 80 characters.
Fix 404 detail page not updating
Decode RFC 3986 "unreserved chars" in URLs.
Fix #80
Disable nested includes warnings for Perl > 5.6.
Update domains.pm
Fix two invalid entries in search_engines.pm
Format Tera Bytes
Fix "Illegal division by zero" error.
Fix #79
Improving error handling in awstats_buildstaticpages.pl
FIX #90
Exclude private IP addresses since GeoIP2::Reader doesn't support them
Ignore search phrases longer than 80 characters.
Only purge data for the saved section.
Make city plugin more functional
Fix issue with ShowHost section when address is resolved.
Initial implementation of GeoIP2 City lookup.
Fix a few issues with Country lookup.
Initial implementation. Looksup only Country code for IPv4 and IPv6
Update hebrew file
Quite a few additions and modifications. Especially yahoo detection.
Added device pixel ratio ( dpr ) to awstats_misc_tracker.js.
added 37 new robots to robots.pm file using v 7.7 robots.pm file as base file.
Move oBot entry lower as to not incorrectly get picked for other *obot robots.
Decode RFC 3986 "unreserved chars" in URLs. This makes awstats
treat "/foo" and "/%66%6f%6f" as equivalent.
Missing Sint Maarten flag
Wrong label cf. https://dev.maxmind.com/geoip/legacy/codes/iso3166/
Fix Issue #76 - country name not correct
Fix utf bom files
Fix another vulnerability reported by cPanel Security Team (can
execute arbitraty code)
Add more tests


PKG_SYSCONFDIR fixes
pkglint cleanup
Remove trivial MESSAGE
jperkin pushed a commit that referenced this issue Sep 24, 2024
 - Add debugging output for renderer by @corhere in #123
 - Emit a NAME section properly formatted for whatis parsing by @corhere in #124
 - Fix rendering of lists by @corhere in #122
jperkin pushed a commit that referenced this issue Oct 7, 2024
Highlights
 - Added support for 32X emulation (with a caveat regarding performance)
 - Significant audio quality improvements for Genesis / Mega Drive and SNES
 - Support for loading directly from .zip and .7z files
 - Lots of Genesis / Mega Drive bugfixes

32X Notes
 - All released 32X games plus Doom 32X Resurrection should be playable except for the 6 FMV games that require the Sega CD 32X combo
     - Doom 32X Resurrection features that require Sega CD do not currently work (CD-DA music, offloading some audio processing to the Sega CD 68000)
 - SH-2 CPU cache and basic SH-2 memory access timings are emulated, so overall SH-2 speed should be moderately accurate (though still faster than actual hardware in some cases)
 - SH-2 emulation is currently not optimized well - full-speed 32X emulation requires a CPU with decent single-core performance, and fast-forward speed will be very limited
     - For a comparison point, the Steam Deck CPU barely runs 32X at full speed from my testing
     - This will likely improve in a future release - the current implementation is pure interpreter because that was easiest to implement and it (surprisingly) still runs at full speed with a fast enough host CPU

New Features
 - Added support for loading directly from .zip and .7z compressed archives for every console except Sega CD (#91)
     - Archives containing multiple images are only partially supported; in this case the emulator will always load the first file with a recognized file extension
 - (SNES) Added an audio enhancement option for cubic Hermite interpolation between decoded ADPCM samples, which usually makes the audio sound sharper and less muffled
     - The difference is most noticeable in games that use low sample rate audio, such as the Donkey Kong Country trilogy
     - This is off by default because it pretty radically changes the sound in some games
 - (Genesis) Added an option to have no controller plugged into one or both of the controller ports, for games that behave differently based on the presence or absence of a controller (#113)
 - (NES) Added support for the UNROM 512 mapper (iNES mapper 30), a homebrew mapper used by a number of games including Black Box Challenge and Battle Kid 2 (#73 / #86)
     - This mapper unusually supports flash memory mapped as PRG "ROM"; for the games that have this (e.g. Black Box Challenge), it's emulated by persisting the entire current contents of PRG ROM to the save file whenever the game modifies itself
 - (GB) Added partial support for the Hudson HuC-3 mapper, used by Robopon and a few Japan-only games (#89)
     - "Partial" because the builtin speaker, the IR sensor, and parts of the event/alarm functionality are not emulated
 - GUI: Added a new "Open Using" menu option to open a file using a specific emulator core, rather than always choosing the core based on file extension (#121)
 - GUI: Added an option to explicitly set the UI theme to light or dark rather than always using the system default

Improvements
 - (Genesis) YM2612 DAC crossover distortion (aka the "ladder effect") is now emulated, which significantly improves music accuracy in a number of games; this is extremely noticeable in Streets of Rage, Streets of Rage 2, and After Burner II, among others
     - There is also a new option to disable ladder effect emulation, since the effect was less pronounced on later console models (and also because I think it's neat to hear how it affects the sound by toggling a checkbox)
 - (SMS/GG/Genesis) Replaced the PSG and YM2612 low-pass filters with much more aggressive ones; this should generally improve audio quality, and in some cases will remove erroneous buzzing/popping noises that were present before (e.g. in The Adventures of Batman & Robin) (#108)
 - Improved audio output behavior for all emulator backends, which should significantly reduce the likelihood of audio pops caused by audio buffer underflow
 - GUI: Added help text to most options menus
 - GUI: Improved performance when the main list table is large

Genesis / Mega Drive Fixes
 - Fixed the PSG's noise channel not oscillating when the period is set to 0 (which should behave the same as period of 1); this fixes missing high-frequency noise in Knuckles' Chaotix among other games
 - Fixed a degenerate case for performance when a game repeatedly writes the same value to specific VDP registers during active display, as After Burner Complete does
 - Fixed some 68000 CPU bugs discovered while working on 32X support
     - Implemented line 1010/1111 exception handling for when the 68000 executes an illegal opcode where the highest 4 bits are 1010 or 1111; Zaxxon's Motherbase 2000 depends on this to boot
     - Fixed divide by zero exception handling pushing the wrong PC value onto the stack; After Burner Complete frequently divides by zero and depends on correctly handling the exception
     - Fixed the DIVS instruction finishing way too quickly in some cases where the division overflows a signed 16-bit result but the CPU doesn't detect the overflow early
 - Fixed an off-by-one error in determining whether to set the sprite overflow flag in the VDP status register; this fixes flickering sprite graphics in Alex Kidd in the Enchanted Castle (#125)
     - This was a regression introduced in v0.6.1 as part of the changes to get Overdrive 2's textured cube effect working
 - Adjusted how writes to the controller CTRL registers ($A10009 / $A1000B) affect the controller's TH line; this fixes controls not working properly in Trouble Shooter (#110)
 - Made it possible for games to read the VINT flag in the VDP status register as 1 slightly before the 68000 INT6 interrupt is raised; this fixes Tyrants: Fight Through Time and Ex-Mutants failing to boot (#127)
 - Implemented undocumented behavior regarding how the Z80 BIT instruction sets the S and P/V flags; this fixes missing audio in Ex-Mutants, which relies on this behavior in its audio driver code
 - Implemented approximate emulation of memory refresh delay
     - This is emulated by simply stalling the 68000 for 2 out of every 128 mclk cycles, unless it executes a very long instruction that doesn't access the bus mid-instruction (e.g. multiplication or division)
     - Memory refresh delay is not emulated in 32X mode because it seemed to break audio synchronization between the Genesis and 32X hardware in some games
 - Added SRAM mappings for several games that have SRAM in the cartridge but don't declare it in the cartridge header: NHL 96, Might and Magic, and Might and Magic III (#107 / #116 / #117)
 - Little-endian ROM images are now detected and byteswapped on load; this along with a custom ROM address mapping fixes Triple Play failing to boot (#112)
 - The emulator will now recognize the unconventionial region string "EUROPE" as meaning that the game only supports PAL/EU; this fixes Another World incorrectly defaulting to NTSC/US mode instead of PAL/EU (#122)
 - Unused bits in the Z80 BUSACK register ($A11100) now read approximate open bus instead of 0; this fixes Danny Sullivan's Indy Heat failing to boot (#120)
 - Improved VDP DMA timing; this fixes corrupted graphics in OutRunners (#118)
 - The vertical interrupt is now delayed by one 68000 instruction if a game enables vertical interrupts while a vertical interrupt is pending; this fixes Sesame Street: Counting Cafe failing to boot (#119)
 - The Z80 BUSACK line now changes immediately in response to bus arbiter register writes instead of waiting for the next Z80 instruction time slot; this fixes the Arkagis Revolution demo failing to boot (#123)
 - The emulator will now enable the bank-switching Super Street Fighter 2 mapper if the cartridge header declares the system as "SEGA DOA" in addition to the standard value of "SEGA SSF"; this fixes the Demons of Asteborg demo not working properly (#115)

Other Fixes
 - Fixed save state slots not working properly if the ROM filename contains multiple dots; before this fix, only one slot would ever be used
 - (Sega CD) When a game issues a CDD command while the drive is playing, the drive now continues to read one more sector before it changes behavior in response to the new command; this fixes Radical Rex crashing during the intro (#100)
 - (Sega CD) Writes to PRG RAM by the main CPU and the Z80 are now blocked unless the sub CPU is removed from the bus; this fixes Dungeon Explorer from crashing after the title screen (#104)
 - (Sega CD) The sub CPU is now halted if it accesses word RAM in 2M mode while word RAM is owned by the main CPU, and it remains halted until the main CPU transfers ownership back to the sub CPU. This fixes glitched graphics in Marko's Magic Football (#101)
 - (Sega CD) Various fixes to CDC register and DMA behavior; with this plus all of the above fixes, the emulator now fully passes the mcd-verificator test suite (#105)
 - (NES) The UxROM mapper code (iNES mapper 2) no longer assumes that the cartridge has no PRG RAM; this fixes Alwa's Awakening: The 8-Bit Edition failing to boot (#93)
 - (SNES) Adjusted timing of PPU line rendering to occur 4 mclk cycles later; this fixes Lemmings having a flickering line at the top of the screen during gameplay
     - This worked correctly prior to v0.7.2 - it was broken by the CPU timing adjustment that fixed Rendering Ranger R2 from constantly freezing
 - (GB) Fixed the window X condition incorrectly being able to trigger when WX=255 and fine X scrolling is used (SCX % 8 != 0); this fixes corrupted graphics in Pocket Family GB 2
 - Fixed the emulator crashing if prescale factor is set so high that the upscaled frame size exceeds 8192x8192 in either dimension
github-actions bot pushed a commit that referenced this issue Oct 13, 2024
Highlights
 - Added support for 32X emulation (with a caveat regarding performance)
 - Significant audio quality improvements for Genesis / Mega Drive and SNES
 - Support for loading directly from .zip and .7z files
 - Lots of Genesis / Mega Drive bugfixes

32X Notes
 - All released 32X games plus Doom 32X Resurrection should be playable except for the 6 FMV games that require the Sega CD 32X combo
     - Doom 32X Resurrection features that require Sega CD do not currently work (CD-DA music, offloading some audio processing to the Sega CD 68000)
 - SH-2 CPU cache and basic SH-2 memory access timings are emulated, so overall SH-2 speed should be moderately accurate (though still faster than actual hardware in some cases)
 - SH-2 emulation is currently not optimized well - full-speed 32X emulation requires a CPU with decent single-core performance, and fast-forward speed will be very limited
     - For a comparison point, the Steam Deck CPU barely runs 32X at full speed from my testing
     - This will likely improve in a future release - the current implementation is pure interpreter because that was easiest to implement and it (surprisingly) still runs at full speed with a fast
enough host CPU

New Features
 - Added support for loading directly from .zip and .7z compressed archives for every console except Sega CD (#91)
     - Archives containing multiple images are only partially supported; in this case the emulator will always load the first file with a recognized file extension
 - (SNES) Added an audio enhancement option for cubic Hermite interpolation between decoded ADPCM samples, which usually makes the audio sound sharper and less muffled
     - The difference is most noticeable in games that use low sample rate audio, such as the Donkey Kong Country trilogy
     - This is off by default because it pretty radically changes the sound in some games
 - (Genesis) Added an option to have no controller plugged into one or both of the controller ports, for games that behave differently based on the presence or absence of a controller (#113)
 - (NES) Added support for the UNROM 512 mapper (iNES mapper 30), a homebrew mapper used by a number of games including Black Box Challenge and Battle Kid 2 (#73 / #86)
     - This mapper unusually supports flash memory mapped as PRG "ROM"; for the games that have this (e.g. Black Box Challenge), it's emulated by persisting the entire current contents of PRG ROM to
the save file whenever the game modifies itself
 - (GB) Added partial support for the Hudson HuC-3 mapper, used by Robopon and a few Japan-only games (#89)
     - "Partial" because the builtin speaker, the IR sensor, and parts of the event/alarm functionality are not emulated
 - GUI: Added a new "Open Using" menu option to open a file using a specific emulator core, rather than always choosing the core based on file extension (#121)
 - GUI: Added an option to explicitly set the UI theme to light or dark rather than always using the system default

Improvements
 - (Genesis) YM2612 DAC crossover distortion (aka the "ladder effect") is now emulated, which significantly improves music accuracy in a number of games; this is extremely noticeable in Streets of
Rage, Streets of Rage 2, and After Burner II, among others
     - There is also a new option to disable ladder effect emulation, since the effect was less pronounced on later console models (and also because I think it's neat to hear how it affects the sound
by toggling a checkbox)
 - (SMS/GG/Genesis) Replaced the PSG and YM2612 low-pass filters with much more aggressive ones; this should generally improve audio quality, and in some cases will remove erroneous buzzing/popping
noises that were present before (e.g. in The Adventures of Batman & Robin) (#108)
 - Improved audio output behavior for all emulator backends, which should significantly reduce the likelihood of audio pops caused by audio buffer underflow
 - GUI: Added help text to most options menus
 - GUI: Improved performance when the main list table is large

Genesis / Mega Drive Fixes
 - Fixed the PSG's noise channel not oscillating when the period is set to 0 (which should behave the same as period of 1); this fixes missing high-frequency noise in Knuckles' Chaotix among other
games
 - Fixed a degenerate case for performance when a game repeatedly writes the same value to specific VDP registers during active display, as After Burner Complete does
 - Fixed some 68000 CPU bugs discovered while working on 32X support
     - Implemented line 1010/1111 exception handling for when the 68000 executes an illegal opcode where the highest 4 bits are 1010 or 1111; Zaxxon's Motherbase 2000 depends on this to boot
     - Fixed divide by zero exception handling pushing the wrong PC value onto the stack; After Burner Complete frequently divides by zero and depends on correctly handling the exception
     - Fixed the DIVS instruction finishing way too quickly in some cases where the division overflows a signed 16-bit result but the CPU doesn't detect the overflow early
 - Fixed an off-by-one error in determining whether to set the sprite overflow flag in the VDP status register; this fixes flickering sprite graphics in Alex Kidd in the Enchanted Castle (#125)
     - This was a regression introduced in v0.6.1 as part of the changes to get Overdrive 2's textured cube effect working
 - Adjusted how writes to the controller CTRL registers ($A10009 / $A1000B) affect the controller's TH line; this fixes controls not working properly in Trouble Shooter (#110)
 - Made it possible for games to read the VINT flag in the VDP status register as 1 slightly before the 68000 INT6 interrupt is raised; this fixes Tyrants: Fight Through Time and Ex-Mutants failing
to boot (#127)
 - Implemented undocumented behavior regarding how the Z80 BIT instruction sets the S and P/V flags; this fixes missing audio in Ex-Mutants, which relies on this behavior in its audio driver code
 - Implemented approximate emulation of memory refresh delay
     - This is emulated by simply stalling the 68000 for 2 out of every 128 mclk cycles, unless it executes a very long instruction that doesn't access the bus mid-instruction (e.g. multiplication or
division)
     - Memory refresh delay is not emulated in 32X mode because it seemed to break audio synchronization between the Genesis and 32X hardware in some games
 - Added SRAM mappings for several games that have SRAM in the cartridge but don't declare it in the cartridge header: NHL 96, Might and Magic, and Might and Magic III (#107 / #116 / #117)
 - Little-endian ROM images are now detected and byteswapped on load; this along with a custom ROM address mapping fixes Triple Play failing to boot (#112)
 - The emulator will now recognize the unconventionial region string "EUROPE" as meaning that the game only supports PAL/EU; this fixes Another World incorrectly defaulting to NTSC/US mode instead of
PAL/EU (#122)
 - Unused bits in the Z80 BUSACK register ($A11100) now read approximate open bus instead of 0; this fixes Danny Sullivan's Indy Heat failing to boot (#120)
 - Improved VDP DMA timing; this fixes corrupted graphics in OutRunners (#118)
 - The vertical interrupt is now delayed by one 68000 instruction if a game enables vertical interrupts while a vertical interrupt is pending; this fixes Sesame Street: Counting Cafe failing to boot
(#119)
 - The Z80 BUSACK line now changes immediately in response to bus arbiter register writes instead of waiting for the next Z80 instruction time slot; this fixes the Arkagis Revolution demo failing to
boot (#123)
 - The emulator will now enable the bank-switching Super Street Fighter 2 mapper if the cartridge header declares the system as "SEGA DOA" in addition to the standard value of "SEGA SSF"; this fixes
the Demons of Asteborg demo not working properly (#115)

Other Fixes
 - Fixed save state slots not working properly if the ROM filename contains multiple dots; before this fix, only one slot would ever be used
 - (Sega CD) When a game issues a CDD command while the drive is playing, the drive now continues to read one more sector before it changes behavior in response to the new command; this fixes Radical
Rex crashing during the intro (#100)
 - (Sega CD) Writes to PRG RAM by the main CPU and the Z80 are now blocked unless the sub CPU is removed from the bus; this fixes Dungeon Explorer from crashing after the title screen (#104)
 - (Sega CD) The sub CPU is now halted if it accesses word RAM in 2M mode while word RAM is owned by the main CPU, and it remains halted until the main CPU transfers ownership back to the sub CPU.
This fixes glitched graphics in Marko's Magic Football (#101)
 - (Sega CD) Various fixes to CDC register and DMA behavior; with this plus all of the above fixes, the emulator now fully passes the mcd-verificator test suite (#105)
 - (NES) The UxROM mapper code (iNES mapper 2) no longer assumes that the cartridge has no PRG RAM; this fixes Alwa's Awakening: The 8-Bit Edition failing to boot (#93)
 - (SNES) Adjusted timing of PPU line rendering to occur 4 mclk cycles later; this fixes Lemmings having a flickering line at the top of the screen during gameplay
     - This worked correctly prior to v0.7.2 - it was broken by the CPU timing adjustment that fixed Rendering Ranger R2 from constantly freezing
 - (GB) Fixed the window X condition incorrectly being able to trigger when WX=255 and fine X scrolling is used (SCX % 8 != 0); this fixes corrupted graphics in Pocket Family GB 2
 - Fixed the emulator crashing if prescale factor is set so high that the upscaled frame size exceeds 8192x8192 in either dimension
github-actions bot pushed a commit that referenced this issue Oct 21, 2024
1.7.2 (2024-10-16)

* Add fifo test. (#91)
* Initial support for pread/pwrite in uring backend.
* Add debug workflow with sanitizers enabled. (#115)
* Add waiting fiber write barrier for all selector implementations. (#122)
github-actions bot pushed a commit that referenced this issue Dec 2, 2024
# wk 0.9.4

- Ensure package tests pass against sf 1.0-18 (#224, #225).

# wk 0.9.3

- Ensure package compiles with `STRICT_R_HEADERS=1` (#222).

# wk 0.9.2

- Add `wk_crs()` and `wk_set_crs()` methods for `bbox` (#213)
- Fix wk_trans inconsistent meta flags handling (#217)
- Ensure package builds on arm64 for Windows (#220)

# wk 0.9.1

- Fix format strings/arguments for R-devel (#209).

# wk 0.9.0

## Breaking changes

- The common well-known binary representation of POINT EMPTY (i.e.,
  POINT (nan nan)) is now handled as POINT EMPTY allowing empty points
  to roundtrip through `wkb()` vectors (#196, #204).
- `xy(NA, NA)` is now read as a null feature instead of POINT EMPTY. This
  preserves the invariant that null features can also be identified using
  `is.na()` (#205).
- `xy(NaN, NaN)` is now read as POINT EMPTY and `is.na(xy(NaN, NaN))`
  now returns `FALSE`. This means that both EMPTY and null points can roundtrip
  through `xy()` (#205).

## Bugfixes and improvements

- `wk_meta()` now contains a new column `is_empty`, which is `TRUE`
  for any feature that contains at least one non-empty coordinate. This allows
  more efficient detection of features with zero coordinates (#197, #199).
- Updated PROJ data to use the latest pull of the database packaged with
  PROJ 9.3.0 (#201).
- The wk package now compiles once again on gcc 4.8 (#203, #206).
- Fixed `sfc_writer()` to correctly attach the `classes` attribute to
  sfc output with mixed geometry types (#195).
- Function `sfc_writer()` now has an argument `promote_multi` to write any
  input as the MULTI variant. This makes it more likely that an input vector
  will be read as a single geometry type (#198).
- The `wk_collection_filter()` now correctly increments the `part_id` when
  calling the child handler (@brownag, #194).

# wk 0.8.0

* Added `wkb_to_hex()` (@anthonynorth, #183).
* Implemented `vctrs::vec_proxy_equal()` for `wkb()` vctrs
  (@anthonynorth, #183).
* Fixed `sfc_writer()`, which had returned NULL for some inputs
  (e.g., via `wk_collection()`) (@anthonynorth, #182, #186).
* Added `wk_clockwise()` and `wk_counterclockwise()` to re-wind polygon rings
  (@anthonynorth, #188).
* New replacement-function mode for `wk_coords<-()` for in-place modification
  of coordinates (@mdsumner, #187).
* New function `wk_trans_explicit()` migrated from crs2crs (@mdsumner, #187).

# wk 0.7.3

* Fix tests for updated waldo package (#178).

# wk 0.7.2

* Fix use-after-free warnings.

# wk 0.7.1

* Fix implicit reliance on error `as.data.frame.default()`,
  which no longer occurs in r-devel (#166).

# wk 0.7.0

* Remove legacy headers that are no longer used by any downstream package
  (#146).
* `validate_wk_wkt()` now errors for an object that does not inherit from
  'wk_wkt' (#123, #146).
* Added `wk_crs_projjson()` to get a JSON representation of a CRS object.
  To make lookup possible based on shortcut-style CRS objects (e.g.,
  `"EPSG:4326"` or `4326`), added data objects `wk_proj_crs_view` and
  `wk_proj_crs_json` that contain cached versions of rendered PROJJSON
  based on the latest PROJ version (#147).
* Added a `wk_crs_proj_definition()` method for `wk_crs_inherit()` (#136,
  #147).
* Conversion to sf now uses the `sfc_writer()` for all wk classes, making
  conversions faster and fixing at least one issue with conversion of NA
  geometries to sf (#135).
* `wk_plot()` now plots `NULL`/`NA` geometries and mixed geometry types
  more reliably (#142, #143, #149).
* Exported EMPTY geometries to well-known text now include dimension
  (e.g., `POINT Z EMPTY`) (#141, #150).
* Fixed bug where `wk_polygon()` doubled some points when the input contained
  closed rings (#134, #151).
* Fixed bug where `wk_count()` exposed uninitialized values for empty input
  (#139, #153).
* The `xy_writer()` now opportunistically avoids allocating vectors for Z
  or M values unless they are actually needed (#131, #154).
* Added example WKT for all geometry types and dimensions plus helper
  `wk_example()` to access them and set various properties (#155).
* Fixes warnings when compiling with `-Wstrict-prototypes` (#157, #158).
* Removed `wk_chunk_map_feature()` in favour of using chunking strategies
  directly (#132, #159).
* Optimized `wk_coords()` for `xy()` objects (#138, #160).
* Added accessor methods for record-style vectors: `rct_xmin()`, `rct_xmax()`,
  `rct_ymin()`, `rct_ymax()`, `rct_width()`, `rct_height()`, `crc_center()`,
  `crc_x()`, `crc_y()`, `crc_r()`, `xy_x()`, `xy_y()`, `xy_z()`, and `xy_m()`
  (#144, #161).
* Added rectangle operators `rct_intersects()`, `rct_contains()`,
  and `rct_intersection()` (#161).

# wk 0.6.0

* Fixed `wk_affine_rescale()` to apply the translate and scale
  operations in the correct order (#94).
* Add `wk_handle_slice()` and `wk_chunk_map_feature()` to support
  a chunk + apply workflow when working with large vectors (#101, #107).
* C and R code was rewritten to avoid materializing ALTREP vectors
  (#103, #109).
* Added a `wk_crs_proj_definition()` generic for foreign CRS objects
  (#110, #112).
* Added `wk_crs_longlat()` helper to help promote authority-compliant
  CRS choices (#112).
* Added `wk_is_geodesic()`, `wk_set_geodesic()`, and argument `geodesic`
  in `wkt()` and `wkb()` as a flag for objects whose edges must
  be interpolated along a spherical/ellipsoidal trajectory (#112).
* Added `sf::st_geometry()` and `sf::st_sfc()` methods for wk geometry
  vectors for better integration with sf (#113, #114).
* Refactored well-known text parser to be more reusable and faster
  (#115, #104).
* Minor performance enhancement for `is.na()` and `validate_wk_wkb()`
  when called on a very long `wkb()` vector (#117).
* Fixed issue with `validate_wk_wkb()` and `validate_wk_wkt()`, which failed
  for most valid objects (#119).
* Added `wk_envelope()` and `wk_envelope_handler()` to compute feature-wise
  bounding boxes (#120, #122).
* Fixed headers and tests to pass on big endian systems (#105, #122).
* Incorporated the geodesic attribute into vctrs methods, data frame
  columns, and bbox/envelope calculation (#124, #125).
* Fix `as_xy()` for nested data frames and geodesic objects (#126, #128).
* Remove deprecated `wkb_problems()`, `wkt_problems()`, `wkb_format()`,
  and `wkt_format()` (#129).
* `wk_plot()` is now an S3 generic (#130).

# wk 0.5.0

* Fixed bugs relating to the behaviour of wk classes as
  vectors (#64, #65, #67, #70).
* `crc()` objects are now correctly exported as polygons
  with a closed loop (#66, #70).
* Added `wk_vertices()` and `wk_coords()` to extract individual
  coordinate values from geometries with optional identifying
  information. For advanced users, the `wk_vertex_filter()`
  can be used as part of a pipeline to export coordinates
  as point geometries to another handler (#69, #71).
* Added `wk_flatten()` to extract geometries from collections.
  For advanced users, the `wk_flatten_filter()` can be used as
  part of a pipeline (#75, #78).
* `options("max.print")` is now respected by all vector classes
  (#72, #74).
* Moved implementation of plot methods from wkutils to wk to
  simplify the dependency structure of both packages (#80, #76).
* Added `wk_polygon()`, `wk_linestring()`, and `wk_collection()`
  to construct polygons, lines, and collections. For advanced
  users, `wk_polygon_filter()`, `wk_linestring_filter()`, and
  `wk_collection_filter()` can be used as part of a pipeline
  (#77, #84).
* Added a C-level transform struct that can be used to simplify
  the the common pattern of transforming coordinates. These
  structs can be created by other packages; however, the
  `wk_trans_affine()` and `wk_trans_set()` transforms are
  also built using this feature. These are run using the
  new `wk_transform()` function and power the new
  `wk_set_z()`, `wk_set_m()`, `wk_drop_z()`, `wk_drop_m()`,
  functions (#87, #88, #89).

# wk 0.4.1

* Fix LTO and MacOS 3.6.2 check errors (#61).

# wk 0.4.0

* Removed `wksxp()` in favour of improved `sf::st_sfc()` support
  (#21).
* Rewrite existing readers, writers, and handlers, using
  a new C API (#13).
* Use new C API in favour of header-only approach for all
  wk functions (#19, #22).
* Use cpp11 to manage safe use of callables that may longjmp
  from C++.
* Vector classes now propagate `attr(, "crs")`, and check
  that operations that involve more than one vector have
  compatable CRS objects as determined by `wk_crs_equal()`.
* Added an R-level framework for other packages to implement
  wk readers and handlers: `wk_handle()`, `wk_translate()`,
  and `wk_writer()` (#37).
* Added a native reader and writer for `sf::st_sfc()` objects
  and implemented R-level generics for sfc, sfg, sf, and bbox
  objects (#28, #29, #38, #45).
* Implement `crc()` vector class to represent circles (#40).
* Added a 2D cartesian bounding box handler (`wk_bbox()`) (#42).
* Refactored unit tests reflecting use of the new API and
  for improved test coverage (#44, #45, #46).
* Added `wk_meta()`, `wk_vector_meta()`, and `wk_count()` to
  inspect properties of vectors (#53).
* Modified all internal handlers such that they work with vectors
  of unknown length (#54).

# wk 0.3.4

* Fixed reference to `wkutils::plot.wk_wksxp()`, which
  no longer exists.

# wk 0.3.3

* Fixed WKB import of ZM geometries that do not use EWKB.
* Added `xy()`, `xyz()`, `xym()` and `xyzm()` classes
  to efficiently store point geometries.
* Added the `rct()` vector class to efficiently store
  two-dimensional rectangles.
* Fixed the CRAN check  failure caused by a circular
  dependency with  the wkutils package.
* Added S3 methods to coerce sf objects to and from
  `wkt()`, `wkb()` and `wksxp()`.

# wk 0.3.2

* Fixed EWKB output for collections and multi-geometries
  that included SRID (#3).
* Fixed CRAN check errors related to exception handling on
  MacOS/R 3.6.2.

# wk 0.3.1

* Added a `NEWS.md` file to track changes to the package.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants