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

p5-Text-BibTeX: build path was leaked into dylib reference #104

Closed
anadrome opened this issue May 19, 2018 · 2 comments
Closed

p5-Text-BibTeX: build path was leaked into dylib reference #104

anadrome opened this issue May 19, 2018 · 2 comments
Assignees

Comments

@anadrome
Copy link

When doing a full-upgrade, I get this warning:

/Users/pbulk/build/textproc/p5-Text-BibTeX/work/Text-BibTeX-0.85/btparse/src/libbtparse.dylib, needed by p5-Text-BibTeX-0.85 is not present in this system.
proceed ? [y/N]

My installed version is 0.80nb1; current in the repository is 0.85. This is on macOS Sierra, using the repository https://pkgsrc.joyent.com/packages/Darwin/trunk/x86_64/All.

@jperkin
Copy link
Collaborator

jperkin commented May 20, 2018

Thanks, that shouldn't happen, I'll fix this and also figure out why the checks for correct library paths is failing in this case.

@jperkin jperkin self-assigned this May 20, 2018
netbsd-srcmastr pushed a commit to NetBSD/pkgsrc that referenced this issue May 25, 2018
It completely broke the checks, resulting in broken binary packages
being shipped, e.g. TritonDataCenter#104
jperkin pushed a commit that referenced this issue Jun 9, 2018
Upstream changes:
6.18      2018-06-05 16:29:15Z
    - Revert status_message to original code (GH#111) (Theo van Hoesel)

6.17      2018-06-05 01:55:34Z
    - Documented status code 451 in the list of constants (GH #104) (Robert Rothenberg)
    - Status code 451 is cachable by default, as per RFC 7725 (GH #104) (Robert Rothenberg)
    - Add default status_message for unknown status codes (GH#105) (Robert Rothenberg)
    - Corrections to the documentation (GH#102) (Jonas B. Nielsen)
jperkin pushed a commit that referenced this issue Jun 25, 2018
4.04 2018-06-22 (rurban)
        - Fix bignum NaN/inf handling (#78 reported by Slaven Rezic)
        - Move author tests to xt/ as suggested in #106, added a make xtest target.
          Fixes a test fail with ASAN.

4.03 2018-06-21 (rurban)
        - Add sereal cpanel_json_xs type (#110 James Rouzier)
        - Fix bencode/bdecode methods in cpanel_json_xs (#111 Fulvio Scapin)
        - Overload ne operator for JSON::PP::Boolean (#107 tevfik1903)
        - Add a missing semicolon to a documentation example (#104 E. Choroba)
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 Sep 20, 2018
Changes:
1.5.3
-----
- Added support for:
   + hentaicafe - https://hentai.cafe/ (#101)
   + bobx - http://www.bobx.com/dark/
- Added black-/whitelist options for post-processor modules
- Added support for tumblr inline videos (#102)
- Fixed extraction of smugmug albums without owner (#100)
- Fixed issues when using default config values with reddit extractors (#104)
- Fixed pagination for user favorites on sankaku (#106)
• Fixed a crash when processing deviantart journals (#108)
@jperkin
Copy link
Collaborator

jperkin commented Mar 11, 2019

This was fixed in NetBSD@7fb398b

@jperkin jperkin closed this as completed Mar 11, 2019
jperkin pushed a commit that referenced this issue Jun 20, 2019
##############################################
# 2015-09-05 galculator 2.1.4 released       #
##############################################

2015-09-05 Simon Flöry <[email protected]>
	* adding a fresh "tx pull" of translations (thanks to all translators!)
	* adding an appdata file (thanks to Alexander)

2014-05-17 Simon Flöry <[email protected]>
	* in ui.c::set_all_dispctrl_buttons_property check for table_children != NULL
		(fixes sf.net bug #107, thanks to Chris LaFleur for reporting)
	* *.c: all dynamic memory allocation and free'ing is done via glib now.
	* Changed default background color for the display to white.

2014-05-07 Simon Flöry <[email protected]>
	* In callbacks.c and general_functions.c, team up every
		gtk_check_menu_item_set_active with a gtk_check_menu_item_toggled. See
		also 2014-01-08 and sf.net bug #99.
		(fixes sf.net bug #105, thanks to Don for reporting)

2014-03-20 Simon Flöry <[email protected]>
	* translations are now served through transifex (thanks to the MATE project,
		in particular to Stefano and Martin)
	* adding a fresh "tx pull" of translations (thanks to all translators!)

2014-03-16 Simon Flöry <[email protected]>
	* set_basic_object_data/set_scientific_object_data make structs static
(fixes sf.net bug #104, thanks to Campbell Barton for reporting)
jperkin pushed a commit that referenced this issue Sep 18, 2019
v7:
compton now requires uthash to build.
xcb-xinerama is now mandatory.
Improved build experience on FreeBSD.
compton now detects what driver it is using.
glFinish is used automatically when not using NVIDIA driver. This should reduce input lag.
Window shadow parameter is tweaked so it won't get cut off at the edges.
The experimental glx backend now uses OpenGL 3.3 core profile.
New blur configuration syntax

v6:
Experimental new backends are integrated into compton
vsync is now a boolean value, indicates whether vsync should be enabled. #130
xcb-xinerama is mandatory now. Build option xinerama is removed.
New glx backend is feature complete.
New xrender backend is feature complete.
Better handling of X visuals and GLX FBConfigs #104 cf9125c
Failure to parse config file is now a hard error.
Fading, window state tracking is refactored.

Deprecations
--sw-opti is deprecated. Users who want to limit the paint rate should always just use --vsync.
--glx-use-gpushader4 is deprecated
--vsync-aggressive is deprecated
Support for Composite < 0.2 dropped
New glx backend won't support OpenGL < 3.0
--glx-swap-method is deprecated in favor of the easier to understand option --use-damage #131
--glx-copy-from-front and --glx-use-copysubbuffermesa are removed since they are deprecated 3 major releases ago.
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 19, 2019
Upstream changes:

v1.8.3
* Security fix for CVE-2018-19757 (#79), NULL pointer dereference problem,
  reported by @nluedtke and fixed by @knok (#91, #94).

* Security fix for CVE-2018-19762 (#81), heap-based buffer overflow problem,
  reported by @nluedtke and fixed by @knok (#92).

* Security fix for CVE-2018-19756 (#80), heap-based buffer over-read problem,
  reported by @nluedtke and fixed by @knok (#93).

* Security fix for CVE-2018-19763 (#82), heap-based buffer over-read problem,
  reported by @nluedtke and fixed by @knok (#95).

* Security fix for CVE-2018-19761, illegal address access, fixed by @knok (#96).

* Security fix for CVE-2018-19759, heap-based buffer over-read problem, fixed by @knok (#98).

* Security fix for CVE-2018-3753 (#83), infinite loop problem,
  reported by @cool-tomato and fixed by @knok (#99).

* Security fix for CVE-2018-19759 (#102),
  heap-based buffer over-read that will cause a denial of service.
  reported and fixed by @YourButterfly. (#106)

* Security fix for CVE-2019-19635 (#103), heap-based buffer overflow,
  reported and fixed by @YourButterfly. (#106)

* Security fix for CVE-2019-19636 (#104) and CVE-2019-19637 (#105), integer overflow problem.
  reported and fixed by @YourButterfly. (#106)

* gif loader: check LZW code size (Issue #75), Thanks to @hongxuchen.
              saitoha/libsixel@7808a06

* core: Fix a global-buffer-overflow problem (Issue #72), Thanks to @fgeek.
        saitoha/libsixel@c868b59

* core: Fix unexpected hangs/performance issues (Issue #76), Thanks to @hongxuchen.
        saitoha/libsixel@88561b7
        saitoha/libsixel@2d3d9ff
        saitoha/libsixel@c9363cd
jperkin pushed a commit that referenced this issue Jan 3, 2020
3.1.14.0
* Add parseFromFile to Text.Parsec.Text.Lazy and Text.Parsec.Text
  (#103, #104).
* Clarify Haddock documentation in various places (#105,#101,#102).
* Add support for base-4.13.

3.1.13.0

* Add official support for SafeHaskell.

  NOTE: This is the first version whose SafeHaskell properties have
  become an intentional part of the API contract; previous versions
  were merely accidentally safe-inferred (or not depending on various
  factors; in other words, this was a fragile property). If you rely
  on SafeHaskell to consider module imports from parsec safe, this is
  the first version of parsec which actually guarantees a well-defined
  state; you can declare this requirement by either specifying

    build-depends: parsec >= 3.1.13.0 && < 3.2

  or, starting with cabal-version:2.0, via

    build-depends: parsec ^>= 3.1.13.0

* Drop support for GHC 7.0, GHC 7.2, and GHC 7.4.1; support window
  starts with GHC 7.4.2.

3.1.12.0
* Support limited to GHC 7.0 & GHC 7.2 only
* Add MonadFail instance for ParsecT
* Add Semigroup/Monoid instances for ParsecT (#80,#82)
* Fix space leak in Applicative/Monad interface (#37)
* Add parserTrace and parserTraced combinators for debugging.

3.1.11
* Include README.md in package.

3.1.10
* Most types now have a Typeable instance. Some instances are dropped
  from older versions of GHC (sorry about that!).
* The token-parser now rejects Unicode numeric escape sequences for
  characters outside the Unicode range.
* The token-parser now loses less precision when parsing literal
  doubles.
* Documentation fixes and corrections.
* We no longer test parsec builds on GHC 7.4.
jperkin pushed a commit that referenced this issue Jan 12, 2020
(pkgsrc changes)
 - Add (some) TEST_DEPENDS, but 'make test' not completed yet,
   some not yet R-packages are required

(upstream changes)
# callr 3.4.0
* All callr functions and background processes properly clean up
  temporary files now (#104).

* callr now uses a more principled setup for the library path, and
  restores the related environment variables in the child process.
  This is a **breaking change** if you relied on having the library set
  in a `system()` subprocess of the callr subprocess (#114).

* Better printing of `rlang_error`s that happened in the subprocess.

* The stacking of error objects is slightly different now, as we keep the
  unmodified error from the subprocess in `$parent$error`.

* callr now loads `.Rprofile` files from the current working directory
  by default. This works better with packrat, renv, and other software
  that relies on a local profile for initialization (#131).

# callr 3.3.2
No user visible changes in this version.
jperkin pushed a commit that referenced this issue Jan 20, 2020
Update ruby-ffi-yajl to 2.3.3.


2.3.3 (2019-12-30)

* Use correct version file #104 (jaymalasinha)
* Substitute require for require_relative #105 (tas50)
jperkin pushed a commit that referenced this issue Jan 27, 2020
Update ruby-ffi-yajl to 2.3.3.


2.3.3 (2019-12-30)

* Use correct version file #104 (jaymalasinha)
* Substitute require for require_relative #105 (tas50)
jperkin pushed a commit that referenced this issue Mar 11, 2020
2.64.0 - March 6, 2020
======================

- Fix OpenSSL backend on RHEL 6 (!116)

2.63.92 - February 27, 2020
===========================

- Revert fix for #127, which broke libsoup (#129)

2.63.91 - February 14, 2020
===========================

- Fix peer-certificate properties changing too soon (#127)
- GnuTLS backend: reduce session resumption cache lifetime (!113)
- GnuTLS backend: restore TLS 1.2 support for copy session state (!114)

2.63.90 - February 1, 2020
==========================

- Remove PKCS#11 support, deferred until next cycle (#104)
- Remove OpenSSL backend's OCSP support (#124)

2.63.3 - January 3, 2019
========================

- Fix OpenSSL backend regressions and reenable OpenSSL testsuite (#54)
- Temporarily disable cancellation of sync handshakes (#97)
- Disable flaky test (#104) and resolve testsuite flakiness (#105)
- Fix leak of base iostream (or base datagram socket), 2.62 regression
- Fix duplicate notifies of peer-certificate and peer-certificate-errors
- Fix regression where GnuTLS connection init could theoretically fail without error
- Fix obscure corner case where SNI might not work
- Fix various build warnings on Windows
- Fix multiple build failures on Windows (Chun-wei Fan)
- Fix installed tests (Iain Lane)

2.63.2 - November 22, 2019
==========================

- Fix crash when handshake context is reset too late (#97)
- Require GnuTLS 3.6.5 (#100)
- Build mock PKCS #11 module only for GnuTLS backend (#101)
- Rework session resumption support for TLS 1.3 (!69)
- Run GnuTLS tests under TLS 1.2 in addition to TLS 1.3 (!69)
- Support OpenSSL 1.0.1 (!81)
- Drop rehandshake mode and protocol version fallback support (!83)
- Add logging functions (!89, MARTINSONS Frederic)
- Fix PKCS #11 tests with TLS 1.2 (!91, Patrick Griffis)
- Add more debug logging for PKCS #11 (!92, Patrick Griffis)
- Fix leak in GTlsCertificateGnutls finalizer (!93, Patrick Griffis)

2.63.1 - October 11, 2019
=========================

- Add support for new PKCS#11 APIs to facilitate use with smartcards (Patrick Griffis)
- Disable TLS 1.0 and TLS 1.1 when using GnuTLS
- Fix threadsafety issue (#95)
jperkin pushed a commit that referenced this issue Mar 30, 2020
…nSSL

Changes since libp11-0.2.8 from the NEWS file:

New in 0.4.4; 2017-01-26; Michal Trojnara
* Fixed a state reset caused by re-login on LOAD_CERT_CTRL engine ctrl;
  fixes #141 (Michal Trojnara)
* "?" and "&" allowed as URI separators; fixes #142 (Michal Trojnara)
* engine: Unified private/public key and certificate enumeration
  to be performed without login if possible (Michal Trojnara)

New in 0.4.3; 2016-12-04; Michal Trojnara
* Use UI to get CKU_CONTEXT_SPECIFIC PINs (Michal Trojnara)
* Added graceful handling of alien (non-PKCS#11) keys (Michal Trojnara)
* Added symbol versioning (Nikos Mavrogiannopoulos)
* Soname tied with with the OpenSSL soname (Nikos Mavrogiannopoulos)
* Added MSYS2, Cygwin, and MinGW/MSYS support (Pawel Witas)
* Workaround implemented for a deadlock in PKCS#11 modules that
  internally use OpenSSL engines (Michal Trojnara, Pawel Witas)
* Fixed an EVP_PKEY reference count leak (David Woodhouse)
* Fixed OpenSSL 1.1.x crash in public RSA methods (Doug Engert,
  Michal Trojnara)
* Fixed OpenSSL 1.1.x builds (Nikos Mavrogiannopoulos, Michal Trojnara)
* Fixed retrieving PIN values from certificate URIs (Andrei Korikov)
* Fixed symlink installation (Alon Bar-Lev)

New in 0.4.2; 2016-09-25; Michal Trojnara
* Fixed a 0.4.0 regression bug causing the engine finish function to
  remove any configured engine parameters; fixes #104 (Michal Trojnara)
New in 0.4.1; 2016-09-17; Michal Trojnara
* Use enginesdir provided by libcrypto.pc if available (David Woodhouse)
* Certificate cache destroyed on login/logout (David Woodhouse)
* Fixed accessing certificates marked as CKA_PRIVATE (David Woodhouse)
* Directly included libp11 code into the engine (Matt Hauck)
* Fixed handling simultaneous make jobs (Derek Straka)
* Reverted an old hack that broke engine initialization (Michal Trojnara)
* Fixed loading of multiple keys due to unneeded re-logging (Matt Hauck)
* Makefile fixes and improvements (Nikos Mavrogiannopoulos)
* Fixed several certificate selection bugs (Michal Trojnara)
* The signed message digest is truncated if it is too long for the
  signing curve (David von Oheimb)
* Workaround for broken PKCS#11 modules not returning CKA_EC_POINT
  in the ASN1_OCTET_STRING format (Michal Trojnara)
* OpenSSL 1.1.0 build fixes (Michal Trojnara)

New in 0.4.0; 2016-03-28; Michal Trojnara
* Merged engine_pkcs11 (Michal Trojnara)
* Added ECDSA support for OpenSSL < 1.0.2 (Michal Trojnara)
* Added ECDH key derivation support (Doug Engert and Michal Trojnara)
* Added support for RSA_NO_PADDING RSA private key decryption, used
  by OpenSSL for various features including OAEP (Michal Trojnara)
* Added support for the ANSI X9.31 (RSA_X931_PADDING) RSA padding
  (Michal Trojnara)
* Added support for RSA encryption (not only signing) (Michal Trojnara)
* Added CKA_ALWAYS_AUTHENTICATE support (Michal Trojnara)
* Fixed double locking the global engine lock (Michal Trojnara)
* Fixed incorrect errors reported on signing/encryption/decryption
  (Michal Trojnara)
* Fixed deadlocks in keys and certificates listing (Brian Hinz)
* Use PKCS11_MODULE_PATH environment variable (Doug Engert)
* Added support for building against OpenSSL 1.1.0-dev (Doug Engert)
* Returned EVP_PKEY objects are no longer "const" (Michal Trojnara)
* Fixed building against OpenSSL 0.9.8 (Michal Trojnara)
* Removed support for OpenSSL 0.9.7 (Michal Trojnara)

New in 0.3.1; 2016-01-22; Michal Trojnara
* Added PKCS11_is_logged_in to the API (Mikhail Denisenko)
* Added PKCS11_enumerate_public_keys to the API (Michal Trojnara)
* Fixed EVP_PKEY handling of public keys (Michal Trojnara)
* Added thread safety based on OpenSSL dynamic locks (Michal Trojnara)
* A private index is allocated for ex_data access (RSA and ECDSA classes)
  instead of using the reserved index zero (app_data) (Michal Trojnara)
* Fixes in reinitialization after fork; addresses #39
  (Michal Trojnara)
* Improved searching for dlopen() (Christoph Moench-Tegeder)
* MSVC build fixes (Michal Trojnara)
* Fixed memory leaks in pkcs11_get_evp_key_rsa() (Michal Trojnara)

New in 0.3.0; 2015-10-09; Nikos Mavrogiannopoulos
* Added small test suite based on softhsm (run on make check)
* Memory leak fixes (Christian Heimes)
* On module initialization tell the module to that the OS locking
  primitives are OK to use (Mike Gerow)
* Transparently handle applications that fork. That is call C_Initialize()
  and reopen any handles if a fork is detected.
* Eliminated any hard coded limits for certificate size (Doug Engert)
* Added support for ECDSA (Doug Engert)
* Allow RSA_NO_PADDING padding mode in PKCS11_private_encrypt
  (Stephane Adenot)
* Eliminated several hard-coded limits in parameter sizes.
jperkin pushed a commit that referenced this issue Jun 7, 2020
Update ruby-jekyll-archives to 2.2.1.


2.2.1 (2019-03-23)

Minor Enhancements

* Make Archive subclass of Page (#67)
* Don't limit slugs/title to strings (#41)
* Enable incremental operation (#58)
* Remove deprecated defs (#89)

Development Fixes

* Target Ruby 2.3
* Allow testing and using with Jekyll 4.x (#133)
* Update Travis config and Gemfile for Ruby < 2.2.2 support (#68)
* Consolidate History file to work with jekyllbot (#80)
* Remove Travis test for Ruby 1.9 (#87)
* Inherit Jekyll's rubocop config for consistency (#65)
* Bump travis ruby versions (#91)
* Fix Travis build error (#93)
* Define path with dir (#105)
* Appease Rubocop (#104)
* update Rubocop and Travis config (#110)
* Update .travis.yml (#111)
* Modernize tests & linting (#114)
* Test against Ruby 2.5 (#118)
* Lint with rubocop-jekyll (#128)

Documentation

* Update Installation Guide (#116)
* docs/configuration: GitHub table display was messed up (#96)
* Small updates for consistency across document (#130)
jperkin pushed a commit that referenced this issue Jun 14, 2020
Changelog:
For the release 20.03, we provide a changelog hereby about what has changed since 17.12 (to download the change log, a link is provided at the bottom of this page):
General UI/SDK changes:

    UI: Add information about the wxWidgets library being used in Help -> About dialog
    UI: Fix two asserts for incorrect use of wxALIGN_LEFT when opening the Project -> Properties dialog
    wx3: Fix assertion when removing last virtual target (ticket #892)
    UI: Add logging of execution time to various places in the code
    UI: Add compiler ID to Help -> About dialog (ticket #870)
    UI: Make Plugin manager to have resizeable plugin info control
    UI: Fix Toolbars corruption when saving perspective (ticket #846)
    Fix crash with batch build on linux by moving the build process out of OnInit() when using wx>=30
    UI: Improve child window placement. Introduce 3 options: center-on-parent (default), center-on-display and leave to OS/ Window manager.
    UI: Make sure pressing escape works correctly in the Reorder targets dialog
    UI: Fix the parents of various child dialogs in the Build -> Properties
    UI: Make sure we call PlaceWindow for the dialog for selecting platform for targets
    UI: Make sure the correct parent is set when showing the project dependencies dialog
    UI: Fix possible assert when the language selection is invalid
    UI: Make data paths more resilient to changes to the current directory
    UI: Make pressing Escape in scope "Code Refactoring" dialog to close it
    UI: Adjust borders for the Find/Replace dialog
    UI: Fix corruption of toolbars when saving perspective (ticket #846)
    UI: Fix assert that a bitmap is already selected in a DC on Windows
    UI: Fix crash if the list in Settings->Scripting is empty (ticket 842)
    UI: Show only one message box if a project could not be loaded while loading a workspace (ticket #809)
    scintilla-wx: Remove double buffering for wxGTK (it doesn't fix the flickering problem)
    UI: Select the correct language in the menu shown from the language button in the status bar
    scintilla-wx: Cherry-pick changes from wx-master (Better support for passing images from wx to scintilla)
    UI: Some places in the code were trying to load images from file system and not from resources.zip (ticket #826)
    UI: Replace the wxComboBox with wxChoice in Project->Properties->Build targets->Type
    UI: Make the layout of Environment Settings -> View a bit more compact
    UI: Replace the radio buttons for images sizes in Env Settings -> View with wxChoice controls
    UI: Use better looking icon for the "Select text" button in the Incremental search toolbar
    UI: Fix layout issue in the environment settings dialog
    UI: Print config file path as the first line in the list ctrl for the main log
    UI: Fit toolbars on every load
    UI: Make MainFrame::DoFixToolbarsLayout to really work when toolbar size changes
    UI: Make it possible to assign a keyboard shortcut to Build -> Select target -> Select target...
    sdk: Fix memory leak when showing the "choose compiler" dialog, because the current compiler is not available
    UI: Log the info message to the main log
    UI: Avoid crash or assert when application is closed via OS's TaskBar
    UI: Fix a warning emitted by wxWidgets about incorrect use of wxALIGN_CENTER_HORIZONTAL in the EditPath dialog
    UI: Treat editor and project files as modified when altered outside of Code::Blocks and not reloaded (ticket #492)
    wx30: Do no call LoadResource for plugins which don't have xrc files in their zip archives
    wx30: Fix assert that all images added to an image list must have the same size
    batch build: Fix segmentation fault after batch build (ticket #738)
    UI: Fix crash in GotoFile::BuildContent(74)
    SDK: Fix memory leak when loading new workspace
    UI: Fix a memory leak of Page objects on application shutdown
    UI: Fixes to the auto-sizing feature of the GotoFile dialog (see r11468)
    UI: Make the Goto File window to resize itself when the content of the list ctrl doesn't fit
    UI: Make opening containing folder work when the path contains whitespace (ticket #734)
    wx3-stl: Make almost everything (wxSmith doens't) to build with wxWidgets in STL mode
    sdk: Remove duplicated calls to AddBuildTarget for generated files
    sdk: Make sure we don't add the same file twice if it is stored with different relative path in the project file
    sdk: Make CompilerFactory::GetCompiler using an id faster
    sdk: Small optimization in cbProject::addFile (don't call wxFileName::GetExt multiple times)
    sdk: Small optimizations in MacrosManager
    sdk: Don't save empty extension tags in the project file
    sdk: Sort extensions just before saving the project
    sdk: Add $PLATFORM macro that expands to "msw" on windows and "unix" on linux and mac
    sdk: Path delimiters in the .cbp file aren't Unix-normalized when saving project on Windows (ticket #705)
    UI: Print a message in the log when the application is ended because another instance is detected
    UI: Fix a crash/assert on shutdown when the CallAfter is executed after the managers have been shutdown
    UI: Print an error in the log if opening a file fails
    UI: Make sure passing --file=path/to/file.ext without line number works, too
    ProjectManagerUI: Implement both external and internal wxTreeCtrl Drag and Drop for the project manager tree
    ProjectManagerUI: Temporary disable external drag and drop from project manager wxTreeCntrl. External and Internal drag and drop are incompatible.
    UI: Remove double dollar signs (ticket #653)
    wx30: Fix de-serializing wxStrings when doing DDE
    UI: Prevent the splash screen from staying on top from the compiler selector dialog
    Fix possible null pointer dereference in plugins management (ticket #673)
    UI: Set the focus to the OK button in the Multi Select dialog (used when adding files to a project)
    UI: Make sure that the file path control in the EditPath is larger, so longer paths could be reviewed
    UI: DefaultMimeHandler: Set min size for the selection dialog
    UI: Fix crash when reloading multiple projects in a workspace and they have dependencies
    wx3-gtk3: Fix crash when doing Control-A, Control-V (ticket #629)
    UI: Make sure the current project is always visible in the project tree while moving it up/down (ticket #617)
    UI: Show the scintilla version in about dialog
    wx30: Fix editor redraw problems on Windows (workaround, related to status bar)
    UI: Make return to select the filtered option in the Goto File, Goto Function and Select Target dialogshe toolbar if the requested icon couldn't be loaded
    Make the SpellChecker icons in the status bar to be HiDPI aware
    Use toolbar art providers for main, compiler and debugger toolbars
    Move select_target.png to sdk/resources
    Make it possible to use the cbArtProvider with toolbars
    Make button images (zoom in/out) in the help plugin panel to be HiDPI aware
    Apply scale factor to the toolbar size
    Make icons in various dialogs to be HiDPI aware
    Fix browse buttons in Project -> Properties to look good on HiDPI monitors
    Make the icons for the buttons in IncrementSearch to be HiDPI aware
    Make the icon in scope "Code Refactoring" dialog to be HiDPI aware
    Add support for bitmap buttons to the cbArtProvider
    Fix scaling of menu images created with the cbArtProvider on macOS
    help plugin: Fix bigger icons in the Help menu on Windows
    IncrementalSearch: Fix the menu icon to use the menu size and scaling (HiDPI aware)
    DoxyBlocks: Make the Module menu images to be HiDPI aware
    Make the readonly icon used in editor's notebook to be HiDPI aware
    Try to make Notebook icons in 'Logs and Others' look non-blurry on GTK3+GDK_SCALE=2
    Make all loggers in 'Log & Others' to provide HiDPI aware icons
    Make the OpenFilesList plugin HiDPI aware
    Better support for creating the image list on GTK3 when scaling factor is 2
    Modify cbProjectTreeImages::MakeImageList to add a red image in the generate image list when a file fails to load
    Make the tree images in project tree and file manager trees to be HiDPI aware
    Use the scaling factor detection to select the image size for menu images
    Fix debug log message about ClientToScreen failures coming from the call to wxDisplay::GetFromWindow
    Update icons from the cb-icons repo (compiler and incremental search pluigns)
    Move images to codecompletion.zip instead storing them on the file system and fix all build systems
    Implement sizeable images in the auto completion list produced by the CC plugin
    Remove wrong warning message in the log from the cbArtProvider
    Fix the icon size in Breakpoints dialog on HiDPI windows builds
    Make the list images in Breakpoints dialog to look good on scaled GTK+3 build (scaling factor 2 or more)
    Make images in the Build menu (compiler plugin) to be DPI aware
    Make the IncrementalSearch menu image to be DPI aware
    Make the DoxyBlocks menu images to be DPI aware
    Make the images in the debugger menu to be DPI aware
    Make all images defined in main_menu.xrc to be DPI aware
    Add additional image sizes which would be used for the main menu
    Make the icons in the Breakpoints dialog to be DPI aware
    Remove toolbar images with size 22x22
    Print the resource id of the toolbar when there are problems loading a bitmap
    Add 20x20, 24x24, 28x28, 40x40, 48x48, 56x56 and 64x64 for contrib plugins
    Add 20x20, 24x24, 28x28, 40x40, 48x48, 56x56 and 64x64 for core stuff
    Add more options for the sizes of the toolbar icons
    Print log message when loading an image for a toolbar fails
    Fix asserts in the wxBitmap c-tor when the image file cannot be found on this
    Print a warning when changing the size of toolbar images
    Make the wx31 builds to be system dpiAware
    Fix missing image after the move of 22x22 images to a separate folder
    Do not use scalingFactor on Windows
    Add wrapper for wxWindow::GetContentScaleFactor to make it easier to use this call
    Make toolbar images for DoxyBlocks work correctly when using GTK+3 on HiDPI (scale >= 2) monitor
    Make toolbars on wx3.1 and GTK3 to almost look sharp
    Print scaling factor for the main frame during startup
    Do not call Realize toolbars for every disabled tool in a xrc file
    Reenable the dpi aware flag on windows
    Add 32x32 images for the rest of plugins which create toolbars
    Make toolbars work on retina mac machines
    Add the possibility to select toolbars which are 32x32 big
    Add 32x32 images for main and debugger toolbars
    Print warning message when a toolbar image requires resizing
    Make the xrc wxToolbarAddon handler to be able to remap bitmap paths

SDK new/changed APIs:

    sdk: Implement cbProject::operator= so it is possible to copy projects
    sdk: Change the return type of cbWatch::GetDebugString (ABI break)
    sdk: Remove cbWatchesDlg::UpdateWatches, because it is no longer used
    sdk: Add cbEVT_DEBUGGER_CONTINUED event for debugger
    UI: Try to place child windows always on a valid display (ticket #770)
    sdk: Make cbAssert to send SIGINT instead of SIGTERM
    SDK: Make cbResolveSymLinkedDirPath a bit more robust
    sdk: Add function which could be used to get the rect of the monitor where a window is placed (extracted from PlaceWindow)
    sdk: Add API for sorting menu items in the editor's context menu (modify all plugins to use it)
    UI: Use sorted container to provide a more stable iteration when building the module menu
    UI: Use the setting for caret line to show it in the syntax highlight settings

Performance improvements:

    UI: Minimize the time needed to open the file/replace dialog for the LLVM project
    SDK: Call the virtual function GetTitle just once inside loops in cbProject::RemoveBuildTarget

Syntax Hightlight UI improvements:

    UI: Make it possible to type in the syntax highlight preview
    wx30: Fix assert introduced with rev 9667 (reading null color for syntax highlight)

Editor:

    Try to fix flicker when moving the cursor with keyboard/mouse (ticket #890)
    Disable middle-mouse button paste until user sets Settings -> Editor -> Other editor setting -> Enable marked text paste with middle mouse click (on Windows)
    Fix non-latin keys to work in shortcuts in the editor on Linux
    Add controls for selecting the technology and font quality
    Auto-size marker margin column and switch to breakpoint image with the correct size
    Make the width of the change bar to change with the zoom
    Add an option which can be used to disable the save-to-temp-and-move operation we use by default
    Add menu item 'Copy full path' in the editor tab context menu
    Implement 'Fold current block' to work when the cursor is inside the block (ticket #700)
    Fix the feature which restores editor folds when the project/editor is reloaded
    Make it possible to set the white-space mode to "Only indent"
    Enable pasting when there are multiple cursors and typing with them is enabled
    Group all find related items together at the top of the context menu in the editor
    Move the Code Refactoring -> Rename symbols menu item to the Insert submenu
    Move Properties to the bottom of the editor's context menu
    Remove excessive separators from the editor's context menu
    Remove menu items from editor's context menu which are duplicated in the editor's tab
    Move Copy/Cut/Paste from a submenu Edit to the main context menu of the editor
    Add 'Close to the left' and 'Close to the right' menu items in the context menu for the editor's notebook
    Implement caret buffer in the editor (up to now we have it implemented in the EditorTweaks plugin). UI in the Settings -> Editor -> General -> Other editor settings
    Do not mess the editor with brace selection completion when there are multiple cursors
    Pass a theme object to editors created for new files (ticket #100)
    Make the line for the current position during debugging to use the same colour as the caret line (ticket #659)

Lexers:

    Add syntax highlighting for Nim (ticket #657)
    Add WAVE keyword to Windows resource lexer (ticket #834)
    Improve C/C++ lexer (ticket #741)
    Add YAML lexer, make sure to always use spaces when editing YAML xers not only for the ObjC lexer
    Add selection, active line, matching brace and no matching brace style options using code
    Add lexer for plaintext files
    Add lexer for Markdown (ticket #640)
    Update doxygen keywords in the C/C++ lexer
    Upn the project files
    Save the old print function and restore it after executing the script in ScriptingManager::LoadBufferRedirectOutput (ticket #817)
    Make it possible to use relative paths when including squirrel scripts (ticket #812)

Library updourceExporter plugin)

Astyle:

    Finally make Mozilla-style/example work
    Add new options, remove obsolete options

Code completion plugin:

    Take the zoom of the current editor into account when deciding if to use a buffered auto completion listticket #25)
    Fix parsing of struct instances declared on same statement (ticket #762)
    Fix parsing of multi-line #if defined() (ticket #761)
    Fix parsing of 'for' loops with empty declaration block. Handle the case where the first token is a semiif the list of directories is empty (ticket #780)
    Improve the logic for starting/stopping system header threads
    Fix crash when the project has files with invalid targets and the user tries to do header completion
    Ignore attribute((whatever)) in typedef definition (ticket #759)
    Support function declaration lists (ticket #724)
    Handle comma as terminator for function declarations
    Fix leaks of SystemHeadersThread objects when shutting down the application
    Log how much time traversing a directory to find headers takes
    Do not traverse root folders for drives
    Use better method for detecting file system loops
    Do not block the UI when showing the list of include completions while a thread is traversing
    Fix assertion when clicking on "Find references of:" (ticket #633)

Compiler plugin:

    Add an option to targets which allows the user to select the linker executable to be used for the target
    Make the LinkerExecutableOption::AutoDetect work as advertised
    Cleaned up obsolete interim C/C++ standards that are now properly supported by GCC (i.e. C++11/14/17; C17)
    Print Build banner at command preBuild step, else they appear to belong to previous target
    Fix assert about RecalcSizes (ticket #857)
    Expand CodeBlocks variables for non-ttCommandsOnly targets also
    Fix potential crash if the choice control is removed from the toolbar
    Print a log message that we are modifying the dll search path before running an executable
    Adjust the regexp for detecting the compiler version to support double digit numbers
    Do not switch to the build log when the workspace is closed
    Fix a crash introduced in r11465 (ticket #582)
    Clear target specific variables from the MacroManager on every recalculation (ticket #582)
    Remove duplicated compiler option
    Clear logs when the workspace is closed (ticket #656)
    Make sure the goto prev/next build error goes only on errors
    Show the build message when the user requests goto prev/next error
    Add support for -std=c++17 flag
    Don't show a log message when the wxKill command fails to kill children, because they've finished already
    Hide process output when the process is stopped/killed
    Fix double send of cbEVT_COMPILER_FINISHED when the executable is closed after run
    Make the abort button work again (ticket #104). Kill the started process and all children instead of using wxSIGTERM

Debugger plugin:

    Make sure we always store remote debugging project options sorted by target
    Rework the plugin to not use ProjectLoaderHooks
    Fix crash when trying to attach when there is no loaded project (ticket #879)
    Fix regression when executing additional commands before
    Make sure we don't save empty serial baud attributes in the debugger extension
    Improve UI of Debugger project options panel
    Check additional shell commands when deciding if the remote settings for target/projects need to be saved
    Rework the UI for the "Remote connection" tab in the project opions to look a bit more pleasant
    Improve the IsPointerType to detect restrict and const volatile types as pointers correctly
    sdk: Add another parameter to cbDebuggerPlugin::AddWatch to make it similar to AddMemoryRangeWatch
    sdk: Make it possible to delay the update of memory range watches (possible massive breakage)
    sdk: Add event which will be used to notify debug windows that data is ready
    Initial implementation of Memory Range Watches
    Set the plugin value of the event when sending EVT_DEBUGGER_UPDATED
    Send CURSOR_CHANGED event when the debugger has stopped on a breakpoint/signal
    Fix the disassembly view with newer GDBs
    Make it possible to evaluate expression in wxSmith code blocks
    Improvements for Fortran (ticket #717)
    Put the recent entered command in the position 0 of the wxComboBox list.
    Remove gdb_types.script because it is not longer used (the scripting support has been removed from the debugger)
    Make sure to quit correctly when attaching to process fails
    Make it possible to attach to a process using the command line (This commit adds --dbg-attach and --dbg-config command line options)
    Prevent warning for invalid current directory when attaching to process
    Make sure to set the SHELL variable before starting GDB

OccurrenceHighlighting plugin:

    Update the permanent occurrence highlights when editor is split
    Handle editor open events to highlight all words that match the set for permanent highlights
    Make it possible to set the plugin to override the text colour

Scripting wizard:

    Fix wxWidgets script on windows (ticket #676)
    Print better message when the xrc file fails to load
    Change extension for files added to Fortran projects to f90 (ticket #605)

Browse tracker plugin:

    Create default.Browsetracker.ini from old Browsetracker.ini (only once) when personality == default
    Fix deprecated wxFont usage in config panel
    Honor Toolbar activation/deactivation from View/Toolbars; Change config toolbar setting to "Show Toolbar Always"
    Fix crash in JumpTracker when the editor object is nullptr
    Internationalize the configuration panel
    Fix shutdown assert on linux when using wx3.x
    Unregister hooks/sinks to prevent crashes when uninstalled

Code snippets plugin:

    Let user know that attempt to edit file failed
    Adds DnD to ProjectManagerUI, removes it from the plugin, and fixes asserts
    Fix assert (ticket #631)

Drag scroll plugin:

    Add user config option to reverse mouse wheel zoom
    Fix right mouse click in project window. See http://forums.codeblocks.org/index.php/topic,22863.new.html
    Don't move cursor when using right mouse key (wx3.x)

Environment variables plugin:

    Crash when closing Environment settings dialog (ticket #877)
    Rework the plugin to not use ProjectLoaderHooks
    Incorrect variables could be set or variables could be lost when using the configuration dialog (ticket #641)

File manager plugin:

    Slow down caused by incorrect fix in rev 11463 (ticket #722)
    Fix assert when clicking the 'goto parent directory' button beyond the root (ticket #713)
    Fix wrong use of stl-containers (erasing invalidates iterators) (ticket #722)

Key binder plugin:

    Fix warning for Ctrl-P being duplicated
    Introduce version 2.0 using CodeLight key binding methods; allowing future ability to dynamically set menu and global accelerators to any frame
    Sort cbKeybinder20.conf file and remove old (duplicate) bindings
    Use correct file separator on Linux for .config/cbKeyBinder10.ini
    If there is no <personality>.cbKeyBinder10.ini file try to load cbKeybinder10.ini
    Add overridden menu accelerators to global table for Linux
    Obtain correct config folder on linux (ticket 840)
    Freeze config panel while updating
    Avoid 'Wheres the event handler gone' asserts when modifying shortcuts
    Fix F2, Shift-F2 and allow linux to handle any View menu check items (ticket #273)

Nassi-Shneiderman plugin:

    Convert the toolbar images from xpm buffers defined in code to using pngs stored in a zip
    Fix crashes during drag n drop of bricks
    Use wxBRUSHSTYLE_ constants to get rid of depricated-warnings from wx31
    Remove wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL for expanded item. Avoids assert from wxWidgets 3.1

Project options manipulator plugin:

    Replace all options in one go (partial fix for ticket #868)
    Report success after changing the compiler options (ticket #470)
    Fix the UI layout of main dialog (ticket #607)

RndGen plugin:

    Some code cleanup (ticket #736)
    Add the plugin to the builds on linux/macos (ticket #728)
    Better explanation of the purpose anaracter handling.
    Fix wrong white space handling on windows by using the scintilla word finding functions
    Speedup by moving code out of loop and advancing the position of the parser
    Add Spanish flag images (ticket #881)
    Make the popup menu(ticket #742)
    Prepare the plugin to support more than two resolutions of UI images
    Make the images in plugin's toolbar to work correctly on GTK+ 3 and scaling of 2x
    Remove almost all places in the plugin which used the /environment/toolbar_sizefault style for wxListView (ticket #884)
    Add wxDIRP_SMALL flag for wxDirPickerCtrl (ticket #861)
    Fix wrong grouping of radio boxes in the wxSmith settings dialog (ticket #875)
    Fix image editor layout for wxWidgets >= 3.1.0 and rename dialog to be resizable
    Handle the default color in the color property class the same in both wxWidgets 3.x and wxWidgets 2.8 (ticket #815)
    Fix "dangling" frames which prevent Code::Blocks's process from exiting correctly
    Fix wxImagePanel preview errorx assert when using the wxGridBagSizer (ticket #664)
    Fix use-after-free error when moving a control in a sizer
    Add Radio as possible wxAuiToolBarItem item kind (ticket #15)
    Fix assert after inserting wxListCtrl (ticket #671)
    Set sensible d:

    Astyle: Fix argument bug (ticket #698)
    AutoSave: Add option to save log rotated backup files in a sub-folder (ticket #132)
    ClassWizard: Remember file extensions for header and source files
    CppCheck: Fix crash when the generated xml is missing
    CScope: Add configuration dialog to select the cscope executable. Also add a link to the help page in the settings dialog.
    EditorConfig: Rework the plugin to not use ProjectLoaderHooks
    EditorConfig: Allow to use global editor settings for EOL (ticket #577)
    EditorTweaks: Remove caret buffer code, because it was added to the core editor
    Help: Fix bug in man2html (ticket #626)
    IncrementalSearch: Try to have better/simpler history in the choice control (ticket #740)
    IncrementalSearch: Make it possible to get focus by clicking (ticket 625)
    MouseSap: Remove all direct GTK calls. Fix Shift-MiddleMouse key pasting to avoid overwriting Primary clipboard.
    OpenFileList: Fix crash when disable/enable the plugin in the plugin manager dialog (ticket #774)
    OpenFileList: Fix memory leak when unloading the plugin
    ReopenEditor: Fix memory leaks
    SmartIndent: Improve brace completion for Fortran (ticket #667)
    ToDo plugin: Fix memory corruption due to splash screen (ticket #635)

Summary, for download

Download the full changelog here: http://sourceforge.net/projects/codeblocks/files/Binaries/20.03/changelog
jperkin pushed a commit that referenced this issue Sep 16, 2020
Pkgsrc changes:
 * Added a patch to cope with fromStatT on NetBSD
 * Added a patch to cope with docker client default settings (build
   also on NetBSD)

Upstream changes:

1.5.3 (August 27th, 2020)

NOTE:
All security content from 1.5.2, 1.5.1, 1.4.5, 1.4.4, 1.3.9, 1.3.8,
1.2.6, and 1.2.5 has been made fully open source, and the git tags for
1.5.3, 1.4.6, 1.3.10, and 1.2.7 will build correctly for open source
users.

BUG FIXES:
 * auth/aws: Made header handling for IAM authentication more robust
 * secrets/ssh: Fixed a bug with role option for SSH signing algorithm
   to allow more than RSA signing

## 1.5.1

CHANGES:
* pki: The tidy operation will now remove revoked certificates if the
  parameter `tidy_revoked_certs` is set to `true`. This will result in
  certificate entries being immediately removed, as opposed to
  awaiting until its NotAfter time. Note that this only affects
  certificates that have been already
  revoked. [[GH-9609](https://github.com/hashicorp/vault/pull/9609)]

IMPROVEMENTS:
* auth/jwt: Add support for fetching groups and user information from
  G Suite during
  authentication. [[GH-9574](https://github.com/hashicorp/vault/pull/9574)]
* secrets/openldap: Add "ad" schema that allows the engine to
  correctly rotate AD
  passwords. [[GH-9740](https://github.com/hashicorp/vault/pull/9740)]
* ui: Wrap TTL option on transit engine export action is updated to a
  new component.
  [[GH-9632](https://github.com/hashicorp/vault/pull/9632)]

BUG FIXES:
* secrets/gcp: Ensure that the IAM policy version is appropriately set
  after a roleset's bindings have
  changed. [[GH-9603](https://github.com/hashicorp/vault/pull/9603)]
* replication (enterprise): Fix status API output incorrectly stating
  replication is in `idle` state.
* core: Fix panic when printing over-long info fields at startup
  [[GH-9681](https://github.com/hashicorp/vault/pull/9681)]

## 1.5.0
### July 21st, 2020

CHANGES:
* storage/raft: The storage configuration now accepts a new
  `max_entry_size` config that will limit the total size in bytes of
  any entry committed via raft. It defaults to `"1048576"`
  (1MiB). [[GH-9027](https://github.com/hashicorp/vault/pull/9027)]
* token: Token creation with custom token ID via `id` will no longer
  allow periods (`.`) as part of the input string.
  The final generated token value may contain periods, such as the
  `s.` prefix for service token
  indication. [[GH-8646](https://github.com/hashicorp/vault/pull/8646/files)]
* token: Token renewals will now return token policies within the
  `token_policies` , identity policies within `identity_policies`, and
  the full policy set within
  `policies`. [[GH-8535](https://github.com/hashicorp/vault/pull/8535)]
* cubbyhole: Reject reads and writes to an empty ("")
  path. [[GH-8971](https://github.com/hashicorp/vault/pull/8971)]
* core: Remove the addition of newlines to parsed configuration when
  using integer/boolean values
  [[GH-8928](https://github.com/hashicorp/vault/pull/8928)]
* audit: Token TTL and issue time are now provided in the auth portion
  of audit logs. [[GH-9091](https://github.com/hashicorp/vault/pull/9091)]

IMPROVEMENTS:
* audit: Replication status requests are no longer
  audited. [[GH-8877](https://github.com/hashicorp/vault/pull/8877)]
* audit: Added mount_type field to requests and
  responses. [[GH-9167](https://github.com/hashicorp/vault/pull/9167)]
* auth/aws: Add support for Web Identity credentials
  [[GH-7738](https://github.com/hashicorp/vault/pull/7738)]
* auth/jwt: Support users that are members of more than 200 groups on Azure
  [[GH-120](https://github.com/hashicorp/vault-plugin-auth-jwt/pull/120)]
* auth/kubernetes: Allow disabling `iss` validation
  [[GH-91](https://github.com/hashicorp/vault-plugin-auth-kubernetes/pull/91)]
* core: Add the Go version used to build a Vault binary to the server message
  output. [[GH-9078](https://github.com/hashicorp/vault/pull/9078)]
* core: Added Password Policies for user-configurable password generation
  [[GH-8637](https://github.com/hashicorp/vault/pull/8637)]
* core: New telemetry metrics covering token counts, token creation, KV
  secret counts, lease
  creation. [[GH-9239](https://github.com/hashicorp/vault/pull/9239)]
  [[GH-9250](https://github.com/hashicorp/vault/pull/9250)]
  [[GH-9244](https://github.com/hashicorp/vault/pull/9244)]
  [[GH-9052](https://github.com/hashicorp/vault/pull/9052)]
* cli: Support reading TLS parameters from file for the `vault operator raft
  join` command. [[GH-9060](https://github.com/hashicorp/vault/pull/9060)]
* plugin: Add SDK method, `Sys.ReloadPlugin`, and CLI command, `vault plugin
  reload`, for reloading
  plugins. [[GH-8777](https://github.com/hashicorp/vault/pull/8777)]
* plugin (enterprise): Add a scope field to plugin reload, which when global,
  reloads the plugin anywhere in a
  cluster. [[GH-9347](https://github.com/hashicorp/vault/pull/9347)]
* sdk/framework: Support accepting TypeFloat parameters over the API
  [[GH-8923](https://github.com/hashicorp/vault/pull/8923)]
* secrets/aws: Add iam_groups parameter to role create/update
  [[GH-8811](https://github.com/hashicorp/vault/pull/8811)]
* secrets/database: Add static role rotation for MongoDB Atlas database
  plugin
  [[GH-11](https://github.com/hashicorp/vault-plugin-database-mongodbatlas/pull/11)]
* secrets/database: Add static role rotation for MSSQL database plugin
  [[GH-9062](https://github.com/hashicorp/vault/pull/9062)]
* secrets/database: Allow InfluxDB to use insecure TLS without cert bundle
  [[GH-8778](https://github.com/hashicorp/vault/pull/8778)]
* secrets/gcp: Support BigQuery dataset ACLs in absence of IAM endpoints
  [[GH-78](https://github.com/hashicorp/vault-plugin-secrets-gcp/pull/78)]
* secrets/pki: Allow 3072-bit RSA keys
  [[GH-8343](https://github.com/hashicorp/vault/pull/8343)]
* secrets/ssh: Add a CA-mode role option to specify signing algorithm
  [[GH-9096](https://github.com/hashicorp/vault/pull/9096)]
* secrets/transit: Transit requests that make use of keys now include a new
  field  `key_version` in their responses
  [[GH-8775](https://github.com/hashicorp/vault/pull/8775)]
* secrets/transit: Improving transit batch encrypt and decrypt latencies
  [[GH-9100](https://github.com/hashicorp/vault/pull/9100)]
* sentinel: Add a sentinel config section, and "additional_enabled_modules",
  a list of Sentinel modules that may be imported in addition to the
  defaults.
* ui: Update TTL picker styling on SSH secret engine
  [[GH-8891](https://github.com/hashicorp/vault/pull/8891)]
* ui: Only render the JWT input field of the Vault login form on mounts
  configured for JWT auth
  [[GH-8952](https://github.com/hashicorp/vault/pull/8952)]
* cli: Add a new subcommand, `vault monitor`, for tailing server logs in the
  console. [[GH-8477](https://github.com/hashicorp/vault/pull/8477)]
* ui: Add replication dashboards.  Improve replication management
  workflows. [[GH-8705]](https://github.com/hashicorp/vault/pull/8705).

BUG FIXES:
* agent: Restart template server when it shuts down
  [[GH-9200](https://github.com/hashicorp/vault/pull/9200)]
* auth/oci: Fix issue where users of the Oracle Cloud Infrastructure (OCI)
  auth method could not authenticate when the plugin backend was mounted at a
  non-default path.
  [[GH-7](https://github.com/hashicorp/vault-plugin-auth-oci/pull/7)]
* core: Extend replicated cubbyhole fix in 1.4.0 to cover case where a
  performance primary is also a DR primary
  [[GH-9148](https://github.com/hashicorp/vault/pull/9148)]
* secrets/aws: Fix issue where performance standbys weren't able to generate
  STS credentials after an IAM access key rotation in AWS and root IAM
  credential update in Vault
  [[GH-9186](https://github.com/hashicorp/vault/pull/9186)]
* secrets/database: Fix issue where rotating root database credentials while
  Vault's storage backend is unavailable causes Vault to lose access to the
  database [[GH-8782](https://github.com/hashicorp/vault/pull/8782)]
* secrets/database: Fix issue that prevents performance standbys from
  connecting to databases after a root credential rotation
  [[GH-9129](https://github.com/hashicorp/vault/pull/9129)]
* secrets/gcp: Fix issue were updates were not being applied to the
  `token_scopes` of a roleset.
  [[GH-90](https://github.com/hashicorp/vault-plugin-secrets-gcp/pull/90)]
* secrets/kv: Return the value of delete_version_after when reading
  kv/config, even if it is set to the default.
  [[GH-42](https://github.com/hashicorp/vault-plugin-secrets-kv/pull/42)]
* ui: Add Toggle component into core addon so it is available in KMIP and
  other Ember Engines.
  [[GH-8913]](https://github.com/hashicorp/vault/pull/8913)
* ui: Disallow max versions value of large than 9999999999999999 on kv2
  secrets engine. [[GH-9242](https://github.com/hashicorp/vault/pull/9242)]

## 1.4.3 (TBD)

IMPROVEMENTS:
* auth/aws: Add support for Web Identity credentials
  [[GH-9251](https://github.com/hashicorp/vault/pull/9251)]
* core: Add the Go version used to build a Vault binary to the server message
  output. [[GH-9078](https://github.com/hashicorp/vault/pull/9078)]
* secrets/database: Add static role rotation for MongoDB Atlas database
  plugin [[GH-9311](https://github.com/hashicorp/vault/pull/9311)]
* ui: Link to the Vault Changelog in the UI footer
  [[GH-9216](https://github.com/hashicorp/vault/pull/9216)]

BUG FIXES:
* auth/oci: Fix issue where users of the Oracle Cloud Infrastructure (OCI)
  auth method could not authenticate when the plugin backend was mounted at a
  non-default path. [[GH-9278](https://github.com/hashicorp/vault/pull/9278)]
* replication: The issue causing cubbyholes in namespaces on performance
  secondaries to not work, which was fixed in 1.4.0, was still an issue when
  the primary was both a performance primary and DR primary.
* secrets/aws: Fix issue where performance standbys weren't able to generate
  STS credentials after an IAM access key rotation in AWS and root IAM
  credential update in Vault
  [[GH-9207](https://github.com/hashicorp/vault/pull/9207)]
* secrets/database: Fix issue that prevents performance standbys from
  connecting to databases after a root credential rotation
  [[GH-9208](https://github.com/hashicorp/vault/pull/9208)]
* secrets/gcp: Fix issue were updates were not being applied to the
  `token_scopes` of a roleset.
  [[GH-9277](https://github.com/hashicorp/vault/pull/9277)]

## 1.4.2 (May 21st, 2020)

SECURITY:
* core: Proxy environment variables are now redacted before being logged, in
  case the URLs include a username:password. This vulnerability,
  CVE-2020-13223, is fixed in 1.3.6 and 1.4.2, but affects 1.4.0 and 1.4.1,
  as well as older versions of Vault
  [[GH-9022](https://github.com/hashicorp/vault/pull/9022)]
* secrets/gcp: Fix a regression in 1.4.0 where the system TTLs were being
  used instead of the configured backend TTLs for dynamic service
  accounts. This vulnerability is CVE-2020-12757.
  [[GH-85](https://github.com/hashicorp/vault-plugin-secrets-gcp/pull/85)]

IMPROVEMENTS:
* storage/raft: The storage stanza now accepts `leader_ca_cert_file`,
  `leader_client_cert_file`, and  `leader_client_key_file` parameters to read
  and parse TLS certificate information from paths on disk.
  Existing non-path based parameters will continue to work, but their values
  will need to be provided as a single-line string with newlines delimited by
  `\n`.  [[GH-8894](https://github.com/hashicorp/vault/pull/8894)]
* storage/raft: The `vault status` CLI command and the `sys/leader` API now
  contain the committed and applied raft indexes.
  [[GH-9011](https://github.com/hashicorp/vault/pull/9011)]

BUG FIXES:
* auth/aws: Fix token renewal issues caused by the metadata changes in 1.4.1
  [[GH-8991](https://github.com/hashicorp/vault/pull/8991)]
* auth/ldap: Fix 1.4.0 regression that could result in auth failures when
  LDAP auth config includes upndomain.
  [[GH-9041](https://github.com/hashicorp/vault/pull/9041)]
* secrets/ad: Forward rotation requests from standbys to active clusters
  [[GH-66](https://github.com/hashicorp/vault-plugin-secrets-ad/pull/66)]
* secrets/database: Prevent generation of usernames that are not allowed by
  the MongoDB Atlas API
  [[GH-9](https://github.com/hashicorp/vault-plugin-database-mongodbatlas/pull/9)]
* secrets/database: Return an error if a manual rotation of static account
  credentials fails [[GH-9035](https://github.com/hashicorp/vault/pull/9035)]
* secrets/openldap: Forward all rotation requests from standbys to active
  clusters [[GH-9028](https://github.com/hashicorp/vault/pull/9028)]
* secrets/transform (enterprise): Fix panic that could occur when accessing
  cached template entries, such as a requests that accessed templates
  directly or indirectly from a performance standby node.
* serviceregistration: Fix a regression for Consul service registration that
  ignored using the listener address as the redirect address unless api_addr
  was provided. It now properly uses the same redirect address as the one
  used by Vault's Core object.
  [[GH-8976](https://github.com/hashicorp/vault/pull/8976)]
* storage/raft: Advertise the configured cluster address to the rest of the
  nodes in the raft cluster. This fixes an issue where a node advertising
  0.0.0.0 is not using a unique hostname.
  [[GH-9008](https://github.com/hashicorp/vault/pull/9008)]
* storage/raft: Fix panic when multiple nodes attempt to join the cluster at
  once. [[GH-9008](https://github.com/hashicorp/vault/pull/9008)]
* sys: The path provided in `sys/internal/ui/mounts/:path` is now
  namespace-aware. This fixes an issue with `vault kv` subcommands that had
  namespaces provided in the path returning permission denied all the time.
  [[GH-8962](https://github.com/hashicorp/vault/pull/8962)]
* ui: Fix snowman that appears when namespaces have more than one period
  [[GH-8910](https://github.com/hashicorp/vault/pull/8910)]

## 1.4.1 (April 30th, 2020)

CHANGES:
* auth/aws: The default set of metadata fields added in 1.4.1 has been
  changed to `account_id` and `auth_type`
  [[GH-8783](https://github.com/hashicorp/vault/pull/8783)]
* storage/raft: Disallow `ha_storage` to be specified if `raft` is set as the
  `storage` type. [[GH-8707](https://github.com/hashicorp/vault/pull/8707)]

IMPROVEMENTS:
* auth/aws: The set of metadata stored during login is now configurable
  [[GH-8783](https://github.com/hashicorp/vault/pull/8783)]
* auth/aws: Improve region selection to avoid errors seen if the account
  hasn't enabled some newer AWS regions
  [[GH-8679](https://github.com/hashicorp/vault/pull/8679)]
* auth/azure: Enable login from Azure VMs with user-assigned identities
  [[GH-33](https://github.com/hashicorp/vault-plugin-auth-azure/pull/33)]
* auth/gcp: The set of metadata stored during login is now configurable
  [[GH-92](https://github.com/hashicorp/vault-plugin-auth-gcp/pull/92)]
* auth/gcp: The type of alias name used during login is now configurable
  [[GH-95](https://github.com/hashicorp/vault-plugin-auth-gcp/pull/95)]
* auth/ldap: Improve error messages during LDAP operation failures
  [[GH-8740](https://github.com/hashicorp/vault/pull/8740)]
* identity: Add a batch delete API for identity entities
  [[GH-8785]](https://github.com/hashicorp/vault/pull/8785)
* identity: Improve performance of logins when no group updates are needed
  [[GH-8795]](https://github.com/hashicorp/vault/pull/8795)
* metrics: Add `vault.identity.num_entities` metric
  [[GH-8816]](https://github.com/hashicorp/vault/pull/8816)
* secrets/kv: Allow `delete-version-after` to be reset to 0 via the CLI
  [[GH-8635](https://github.com/hashicorp/vault/pull/8635)]
* secrets/rabbitmq: Improve error handling and reporting
  [[GH-8619](https://github.com/hashicorp/vault/pull/8619)]
* ui: Provide One Time Password during Operation Token generation process
  [[GH-8630]](https://github.com/hashicorp/vault/pull/8630)

BUG FIXES:
* auth/okta: Fix MFA regression (introduced in
  [GH-8143](https://github.com/hashicorp/vault/pull/8143)) from 1.4.0
  [[GH-8807](https://github.com/hashicorp/vault/pull/8807)]
* auth/userpass: Fix upgrade value for `token_bound_cidrs` being ignored due
  to incorrect key provided
  [[GH-8826](https://github.com/hashicorp/vault/pull/8826/files)]
* config/seal: Fix segfault when seal block is removed
  [[GH-8517](https://github.com/hashicorp/vault/pull/8517)]
* core: Fix an issue where users attempting to build Vault could receive Go
  module checksum errors
  [[GH-8770](https://github.com/hashicorp/vault/pull/8770)]
* core: Fix blocked requests if a SIGHUP is issued during a long-running
  request has the state lock held.
  Also fixes deadlock that can happen if `vault debug` with the config target
  is ran during this time.
  [[GH-8755](https://github.com/hashicorp/vault/pull/8755)]
* core: Always rewrite the .vault-token file as part of a `vault login` to
  ensure permissions and ownership are set correctly
  [[GH-8867](https://github.com/hashicorp/vault/pull/8867)]
* database/mongodb: Fix context deadline error that may result due to retry
  attempts on failed commands
  [[GH-8863](https://github.com/hashicorp/vault/pull/8863)]
* http: Fix superflous call messages from the http package on logs caused by
  missing returns after `respondError` calls
  [[GH-8796](https://github.com/hashicorp/vault/pull/8796)]
* namespace (enterprise): Fix namespace listing to return `key_info` when a
  scoping namespace is also provided.
* seal/gcpkms: Fix panic that could occur if all seal parameters were
  provided via environment variables
  [[GH-8840](https://github.com/hashicorp/vault/pull/8840)]
* storage/raft: Fix memory allocation and incorrect metadata tracking issues
  with snapshots [[GH-8793](https://github.com/hashicorp/vault/pull/8793)]
* storage/raft: Fix panic that could occur if `disable_clustering` was set to
  true on Raft storage cluster
  [[GH-8784](https://github.com/hashicorp/vault/pull/8784)]
* storage/raft: Handle errors returned from the API during snapshot
  operations [[GH-8861](https://github.com/hashicorp/vault/pull/8861)]
* sys/wrapping: Allow unwrapping of wrapping tokens which contain nil data
  [[GH-8714](https://github.com/hashicorp/vault/pull/8714)]

## 1.4.0 (April 7th, 2020)

CHANGES:
* cli: The raft configuration command has been renamed to list-peers to avoid
  confusion.

FEATURES:
* **Kerberos Authentication**: Vault now supports Kerberos authentication
  using a SPNEGO token.
   Login can be performed using the Vault CLI, API, or agent.
* **Kubernetes Service Discovery**: A new Kubernetes service discovery
  feature where, if configured, Vault will tag Vault pods with their current
  health status. For more, see
  [#8249](https://github.com/hashicorp/vault/pull/8249).
* **MongoDB Atlas Secrets**: Vault can now generate dynamic credentials for
  both MongoDB Atlas databases as well as the [Atlas programmatic
  interface]
  (https://docs.atlas.mongodb.com/tutorial/manage-programmatic-access/).
* **OpenLDAP Secrets Engine**: We now support password management of existing
  OpenLDAP user entries. For more, see [#8360]
  (https://github.com/hashicorp/vault/pull/8360/).
* **Redshift Database Secrets Engine**: The database secrets engine now
  supports static and dynamic secrets for the Amazon Web Services (AWS)
  Redshift service.
* **Service Registration Config**: A newly introduced `service_registration`
  configuration stanza, that allows for service registration to be configured
  separately from the storage backend. For more, see [#7887]
  (https://github.com/hashicorp/vault/pull/7887/).
* **Transform Secrets Engine (Enterprise)**: A new secrets engine that
  handles secure data transformation and tokenization against provided input
  value.
* **Integrated Storage**: Promoted out of beta and into general availability
  for both open-source and enterprise workloads.

IMPROVEMENTS:
* agent: add option to force the use of the auth-auth token, and ignore the
  Vault token in the request
  [[GH-8101](https://github.com/hashicorp/vault/pull/8101)]
* api: Restore and fix DNS SRV Lookup
  [[GH-8520](https://github.com/hashicorp/vault/pull/8520)]
* audit: HMAC http_raw_body in audit log; this ensures that large
  authenticated Prometheus metrics responses get replaced with short HMAC
  values [[GH-8130](https://github.com/hashicorp/vault/pull/8130)]
* audit: Generate-root, generate-recovery-token, and
  generate-dr-operation-token requests and responses are now
  audited. [[GH-8301](https://github.com/hashicorp/vault/pull/8301)]
* auth/aws: Reduce the number of simultaneous STS client credentials needed
  [[GH-8161](https://github.com/hashicorp/vault/pull/8161)]
* auth/azure: subscription ID, resource group, vm and vmss names are now
  stored in alias metadata
  [[GH-30](https://github.com/hashicorp/vault-plugin-auth-azure/pull/30)]
* auth/jwt: Additional OIDC callback parameters available for CLI logins
  [[GH-80](https://github.com/hashicorp/vault-plugin-auth-jwt/pull/80) &
  [GH-86](https://github.com/hashicorp/vault-plugin-auth-jwt/pull/86)]
* auth/jwt: Bound claims may be optionally configured using globs
  [[GH-89](https://github.com/hashicorp/vault-plugin-auth-jwt/pull/89)]
* auth/jwt: Timeout during OIDC CLI login if process doesn't complete within
  2 minutes
  [[GH-97](https://github.com/hashicorp/vault-plugin-auth-jwt/pull/97)]
* auth/jwt: Add support for the `form_post` response mode
  [[GH-98](https://github.com/hashicorp/vault-plugin-auth-jwt/pull/98)]
* auth/jwt: add optional client_nonce to authorization flow
  [[GH-104](https://github.com/hashicorp/vault-plugin-auth-jwt/pull/104)]
* auth/okta: Upgrade okta sdk lib, which should improve handling of groups
  [[GH-8143](https://github.com/hashicorp/vault/pull/8143)]
* aws: Add support for v2 of the instance metadata service (see [issue
  7924](https://github.com/hashicorp/vault/issues/7924) for all linked PRs)
* core: Separate out service discovery interface from storage interface to allow
  new types of service discovery not coupled to storage
  [[GH-7887](https://github.com/hashicorp/vault/pull/7887)]
* core: Add support for telemetry option `metrics_prefix`
  [[GH-8340](https://github.com/hashicorp/vault/pull/8340)]
* core: Entropy Augmentation can now be used with AWS KMS and Vault Transit
  seals
* core: Allow tls_min_version to be set to TLS 1.3
  [[GH-8305](https://github.com/hashicorp/vault/pull/8305)]
* cli: Incorrect TLS configuration will now correctly fail
  [[GH-8025](https://github.com/hashicorp/vault/pull/8025)]
* identity: Allow specifying a custom `client_id` for identity tokens
  [[GH-8165](https://github.com/hashicorp/vault/pull/8165)]
* metrics/prometheus: improve performance with high volume of metrics updates
  [[GH-8507](https://github.com/hashicorp/vault/pull/8507)]
* replication (enterprise): Fix race condition causing clusters with high
  throughput writes to sometimes fail to enter streaming-wal mode
* replication (enterprise): Secondary clusters can now perform an extra gRPC
  call to all nodes in a primary
  cluster in an attempt to resolve the active node's address
* replication (enterprise): The replication status API now outputs
  `last_performance_wal`, `last_dr_wal`, and `connection_state` values
* replication (enterprise): DR secondary clusters can now be recovered by the
  `replication/dr/secondary/recover` API
* replication (enterprise): We now allow for an alternate means to create a
  Disaster Recovery token, by using a batch token that is created with an ACL
  that allows for access to one or more of the DR endpoints.
* secrets/database/mongodb: Switched internal MongoDB driver to mongo-driver
  [[GH-8140](https://github.com/hashicorp/vault/pull/8140)]
* secrets/database/mongodb: Add support for x509 client authorization to
  MongoDB [[GH-8329](https://github.com/hashicorp/vault/pull/8329)]
* secrets/database/oracle: Add support for static credential rotation
  [[GH-26](https://github.com/hashicorp/vault-plugin-database-oracle/pull/26)]
* secrets/consul: Add support to specify TLS options per Consul backend
  [[GH-4800](https://github.com/hashicorp/vault/pull/4800)]
* secrets/gcp: Allow specifying the TTL for a service key
  [[GH-54](https://github.com/hashicorp/vault-plugin-secrets-gcp/pull/54)]
* secrets/gcp: Add support for rotating root keys
  [[GH-53](https://github.com/hashicorp/vault-plugin-secrets-gcp/pull/53)]
* secrets/gcp: Handle version 3 policies for Resource Manager IAM requests
  [[GH-77](https://github.com/hashicorp/vault-plugin-secrets-gcp/pull/77)
* secrets/nomad: Add support to specify TLS options per Nomad backend
  [[GH-8083](https://github.com/hashicorp/vault/pull/8083)]
* secrets/ssh: Allowed users can now be templated with identity information
  [[GH-7548](https://github.com/hashicorp/vault/pull/7548)]
* secrets/transit: Adding RSA3072 key support
  [[GH-8151](https://github.com/hashicorp/vault/pull/8151)]
* storage/consul: Vault returns now a more descriptive error message when
  only a client cert or a client key has been provided
  [[GH-4930]](https://github.com/hashicorp/vault/pull/8084)
* storage/raft: Nodes in the raft cluster can all be given possible leader
  addresses for them to continuously try and join one of them, thus
  automating the process of join to a greater extent
  [[GH-7856](https://github.com/hashicorp/vault/pull/7856)]
* storage/raft: Fix a potential deadlock that could occur on leadership
  transition [[GH-8547](https://github.com/hashicorp/vault/pull/8547)]
* storage/raft: Refresh TLS keyring on snapshot restore
  [[GH-8546](https://github.com/hashicorp/vault/pull/8546)]
* storage/etcd: Bumped etcd client API SDK
  [[GH-7931](https://github.com/hashicorp/vault/pull/7931) &
  [GH-4961](https://github.com/hashicorp/vault/pull/4961) &
  [GH-4349](https://github.com/hashicorp/vault/pull/4349) &
  [GH-7582](https://github.com/hashicorp/vault/pull/7582)]
* ui: Make Transit Key actions more prominent
  [[GH-8304](https://github.com/hashicorp/vault/pull/8304)]
* ui: Add Core Usage Metrics
  [[GH-8347](https://github.com/hashicorp/vault/pull/8347)]
* ui: Add refresh Namespace list on the Namespace dropdown, and redesign of
  Namespace dropdown menu
  [[GH-8442](https://github.com/hashicorp/vault/pull/8442)]
* ui: Update transit actions to codeblocks & automatically encode plaintext
  unless indicated [[GH-8462](https://github.com/hashicorp/vault/pull/8462)]
* ui: Display the results of transit key actions in a modal window
  [[GH-8462](https://github.com/hashicorp/vault/pull/8575)]
* ui: Transit key version styling updates & ability to copy key from dropdown
  [[GH-8480](https://github.com/hashicorp/vault/pull/8480)]

BUG FIXES:
* agent: Fix issue where TLS options are ignored for agent template feature
  [[GH-7889](https://github.com/hashicorp/vault/pull/7889)]
* auth/jwt: Use lower case role names for `default_role` to match the `role`
  case convention
  [[GH-100](https://github.com/hashicorp/vault-plugin-auth-jwt/pull/100)]
* auth/ldap: Fix a bug where the UPNDOMAIN parameter was wrongly used to
  lookup the group membership of the given user
  [[GH-6325]](https://github.com/hashicorp/vault/pull/8333)
* cli: Support autocompletion for nested mounts
  [[GH-8303](https://github.com/hashicorp/vault/pull/8303)]
* cli: Fix CLI namespace autocompletion
  [[GH-8315](https://github.com/hashicorp/vault/pull/8315)]
* identity: Fix incorrect caching of identity token JWKS responses
  [[GH-8412](https://github.com/hashicorp/vault/pull/8412)]
* metrics/stackdriver: Fix issue that prevents the stackdriver metrics
  library to create unnecessary stackdriver descriptors
  [[GH-8073](https://github.com/hashicorp/vault/pull/8073)]
* replication: Fix issue causing cubbyholes in namespaces on performance
  secondaries to not work.
* replication (enterprise): Unmounting a dynamic secrets backend could
  sometimes lead to replication errors.  Change the order of operations to
  prevent that.
* seal (enterprise): Fix seal migration when transactional seal wrap backend
  is in use.
* secrets/database/influxdb: Fix potential panic if connection to the
  InfluxDB database cannot be established
  [[GH-8282](https://github.com/hashicorp/vault/pull/8282)]
* secrets/database/mysql: Ensures default static credential rotation
  statements are used
  [[GH-8240](https://github.com/hashicorp/vault/pull/8240)]
* secrets/database/mysql: Fix inconsistent query parameter names: {{name}} or
  {{username}} for different queries. Now it allows for either for backwards
  compatibility [[GH-8240](https://github.com/hashicorp/vault/pull/8240)]
* secrets/database/postgres: Fix inconsistent query parameter names: {{name}}
  or {{username}} for different queries. Now it allows for either for
  backwards compatibility
  [[GH-8240](https://github.com/hashicorp/vault/pull/8240)]
* secrets/pki: Support FQDNs in DNS Name
  [[GH-8288](https://github.com/hashicorp/vault/pull/8288)]
* storage/raft: Allow seal migration to be performed on Vault clusters using
  raft storage [[GH-8103](https://github.com/hashicorp/vault/pull/8103)]
* telemetry: Prometheus requests on standby nodes will now return an error
  instead of forwarding the request to the active node
  [[GH-8280](https://github.com/hashicorp/vault/pull/8280)]
* ui: Fix broken popup menu on the transit secrets list page
  [[GH-8348](https://github.com/hashicorp/vault/pull/8348)]
* ui: Update headless Chrome flag to fix `yarn run test:oss`
  [[GH-8035](https://github.com/hashicorp/vault/pull/8035)]
* ui: Update CLI to accept empty strings as param value to reset
  previously-set values
* ui: Fix bug where error states don't clear when moving between action tabs
  on Transit [[GH-8354](https://github.com/hashicorp/vault/pull/8354)]

## 1.3.6 (May 21st, 2020)

SECURITY:
* core: proxy environment variables are now redacted before being logged, in
  case the URLs include a username:password. This vulnerability,
  CVE-2020-13223, is fixed in 1.3.6 and 1.4.2, but affects 1.4 and 1.4.1, as
  well as older versions of Vault
  [[GH-9022](https://github.com/hashicorp/vault/pull/9022)

BUG FIXES:
* auth/aws: Fix token renewal issues caused by the metadata changes in 1.3.5
  [[GH-8991](https://github.com/hashicorp/vault/pull/8991)]
* replication: Fix mount filter bug that allowed replication filters to hide
  local mounts on a performance secondary

## 1.3.5 (April 28th, 2020)

CHANGES:
* auth/aws: The default set of metadata fields added in 1.3.2 has been
  changed to `account_id` and `auth_type`
  [[GH-8783](https://github.com/hashicorp/vault/pull/8783)]

IMPROVEMENTS:
* auth/aws: The set of metadata stored during login is now configurable
  [[GH-8783](https://github.com/hashicorp/vault/pull/8783)]

## 1.3.4 (March 19th, 2020)

SECURITY:
* A vulnerability was identified in Vault and Vault Enterprise such that,
  under certain circumstances,  an Entity's Group membership may
  inadvertently include Groups the Entity no longer has permissions to. This
  vulnerability, CVE-2020-10660, affects Vault and Vault Enterprise versions
  0.9.0 and newer, and is fixed in 1.3.4.
  [[GH-8606](https://github.com/hashicorp/vault/pull/8606)]
* A vulnerability was identified in Vault Enterprise such that, under certain
  circumstances, existing nested-path policies may give access to Namespaces
  created after-the-fact. This vulnerability, CVE-2020-10661, affects Vault
  Enterprise versions 0.11 and newer, and is fixed in 1.3.4.

## 1.3.3 (March 5th, 2020)

BUG FIXES:
* approle: Fix excessive locking during tidy, which could potentially block
  new approle logins for long enough to cause an outage
  [[GH-8418](https://github.com/hashicorp/vault/pull/8418)]
* cli: Fix issue where Raft snapshots from standby nodes created an empty
  backup file [[GH-8097](https://github.com/hashicorp/vault/pull/8097)]
* identity: Fix incorrect caching of identity token JWKS responses
  [[GH-8412](https://github.com/hashicorp/vault/pull/8412)]
* kmip: role read now returns tls_client_ttl
* kmip: fix panic when templateattr not provided in rekey request
* secrets/database/influxdb: Fix potential panic if connection to the
  InfluxDB database cannot be established
  [[GH-8282](https://github.com/hashicorp/vault/pull/8282)]
* storage/mysql: Fix potential crash when using MySQL as coordination for
  high availability [[GH-8300](https://github.com/hashicorp/vault/pull/8300)]
* storage/raft: Fix potential crash when using Raft as coordination for high
  availability [[GH-8356](https://github.com/hashicorp/vault/pull/8356)]
* ui: Fix missing License menu item
  [[GH-8230](https://github.com/hashicorp/vault/pull/8230)]
* ui: Fix bug where default auth method on login is defaulted to auth method
  that is listing-visibility=unauth instead of "other"
  [[GH-8218](https://github.com/hashicorp/vault/pull/8218)]
* ui: Fix bug where KMIP details were not shown in the UI Wizard
  [[GH-8255](https://github.com/hashicorp/vault/pull/8255)]
* ui: Show Error messages on Auth Configuration page when you hit permission
  errors [[GH-8500](https://github.com/hashicorp/vault/pull/8500)]
* ui: Remove duplicate form inputs for the GitHub config
  [[GH-8519](https://github.com/hashicorp/vault/pull/8519)]
* ui: Correct HMAC capitalization
  [[GH-8528](https://github.com/hashicorp/vault/pull/8528)]
* ui: Fix danger message in DR
  [[GH-8555](https://github.com/hashicorp/vault/pull/8555)]
* ui: Fix certificate field for LDAP config
  [[GH-8573](https://github.com/hashicorp/vault/pull/8573)]

## 1.3.2 (January 22nd, 2020)

SECURITY:
 * When deleting a namespace on Vault Enterprise, in certain circumstances,
   the deletion process will fail to revoke dynamic secrets for a mount in
   that namespace. This will leave any dynamic secrets in remote systems
   alive and will fail to clean them up. This vulnerability, CVE-2020-7220,
   affects Vault Enterprise 0.11.0 and newer.

IMPROVEMENTS:
 * auth/aws: Add aws metadata to identity alias
   [[GH-7985](https://github.com/hashicorp/vault/pull/7985)]
 * auth/kubernetes: Allow both names and namespaces to be set to "*"
   [[GH-78](https://github.com/hashicorp/vault-plugin-auth-kubernetes/pull/78)]

BUG FIXES:
* auth/azure: Fix Azure compute client to use correct base URL
  [[GH-8072](https://github.com/hashicorp/vault/pull/8072)]
* auth/ldap: Fix renewal of tokens without configured policies that are
  generated by an LDAP login
  [[GH-8072](https://github.com/hashicorp/vault/pull/8072)]
* auth/okta: Fix renewal of tokens without configured policies that are
  generated by an Okta login
  [[GH-8072](https://github.com/hashicorp/vault/pull/8072)]
* core: Fix seal migration error when attempting to migrate from auto unseal
  to shamir [[GH-8172](https://github.com/hashicorp/vault/pull/8172)]
* core: Fix seal migration config issue when migrating from auto unseal to
  auto unseal [[GH-8172](https://github.com/hashicorp/vault/pull/8172)]
* plugin: Fix issue where a plugin unwrap request potentially used an expired
  token [[GH-8058](https://github.com/hashicorp/vault/pull/8058)]
* replication: Fix issue where a forwarded request from a performance/standby
  node could run into a timeout
* secrets/database: Fix issue where a manual static role rotation could
  potentially panic [[GH-8098](https://github.com/hashicorp/vault/pull/8098)]
* secrets/database: Fix issue where a manual root credential rotation request
  is not forwarded to the primary node
  [[GH-8125](https://github.com/hashicorp/vault/pull/8125)]
* secrets/database: Fix issue where a manual static role rotation request is
  not forwarded to the primary node
  [[GH-8126](https://github.com/hashicorp/vault/pull/8126)]
* secrets/database/mysql: Fix issue where special characters for a MySQL
  password were encoded
  [[GH-8040](https://github.com/hashicorp/vault/pull/8040)]
* ui: Fix deleting namespaces
  [[GH-8132](https://github.com/hashicorp/vault/pull/8132)]
* ui: Fix Error handler on kv-secret edit and kv-secret view pages
  [[GH-8133](https://github.com/hashicorp/vault/pull/8133)]
* ui: Fix OIDC callback to check storage
  [[GH-7929](https://github.com/hashicorp/vault/pull/7929)].
* ui: Change `.box-radio` height to min-height to prevent overflow issues
  [[GH-8065](https://github.com/hashicorp/vault/pull/8065)]

## 1.3.1 (December 18th, 2019)

IMPROVEMENTS:
* agent: Add ability to set `exit-after-auth` via the CLI
  [[GH-7920](https://github.com/hashicorp/vault/pull/7920)]
* auth/ldap: Add a `request_timeout` configuration option to prevent
  connection requests from hanging
  [[GH-7909](https://github.com/hashicorp/vault/pull/7909)]
* auth/kubernetes: Add audience to tokenreview API request for Kube
  deployments where issuer is not Kube.
  [[GH-74](https://github.com/hashicorp/vault/pull/74)]
* secrets/ad: Add a `request_timeout` configuration option to prevent
  connection requests from hanging
  [[GH-59](https://github.com/hashicorp/vault-plugin-secrets-ad/pull/59)]
* storage/postgresql: Add support for setting `connection_url` from
  enviornment variable `VAULT_PG_CONNECTION_URL`
  [[GH-7937](https://github.com/hashicorp/vault/pull/7937)]
* telemetry: Add `enable_hostname_label` option to telemetry stanza
  [[GH-7902](https://github.com/hashicorp/vault/pull/7902)]
* telemetry: Add accept header check for prometheus mime type
  [[GH-7958](https://github.com/hashicorp/vault/pull/7958)]

BUG FIXES:
* agent: Fix issue where Agent exits before all templates are rendered when
  using and `exit_after_auth`
  [[GH-7899](https://github.com/hashicorp/vault/pull/7899)]
* auth/aws: Fixes region-related issues when using a custom `sts_endpoint` by
  adding a `sts_region` parameter
  [[GH-7922](https://github.com/hashicorp/vault/pull/7922)]
* auth/token: Fix panic when getting batch tokens on a performance standby
  from a role that does not exist
  [[GH-8027](https://github.com/hashicorp/vault/pull/8027)]
* core: Improve warning message for lease TTLs
  [[GH-7901](https://github.com/hashicorp/vault/pull/7901)]
* identity: Fix identity token panic during invalidation
  [[GH-8043](https://github.com/hashicorp/vault/pull/8043)]
* plugin: Fix a panic that could occur if a mount/auth entry was unable to
  mount the plugin backend and a request that required the system view to be
  retrieved was made
  [[GH-7991](https://github.com/hashicorp/vault/pull/7991)]
* replication: Add `generate-public-key` endpoint to list of allowed
  endpoints for existing DR secondaries
* secrets/gcp: Fix panic if bindings aren't provided in roleset
  create/update.
  [[GH-56](https://github.com/hashicorp/vault-plugin-secrets-gcp/pull/56)]
* secrets/pki: Prevent generating certificate on performance standby when
  storing
  [[GH-7904](https://github.com/hashicorp/vault/pull/7904)]
* secrets/transit: Prevent restoring keys to new names that are sub paths
  [[GH-7998](https://github.com/hashicorp/vault/pull/7998)]
* storage/s3: Fix a bug in configurable S3 paths that was preventing use of
  S3 as a source during `operator migrate` operations
  [[GH-7966](https://github.com/hashicorp/vault/pull/7966)]
* ui: Ensure secrets with a period in their key can be viewed and copied
  [[GH-7926](https://github.com/hashicorp/vault/pull/7926)]
* ui: Fix status menu after demotion
  [[GH-7997](https://github.com/hashicorp/vault/pull/7997)]
* ui: Fix select dropdowns in Safari when running Mojave
  [[GH-8023](https://github.com/hashicorp/vault/pull/8023)]

## 1.3 (November 14th, 2019)

CHANGES:
 * Secondary cluster activation: There has been a change to the way that
   activating performance and DR secondary clusters works when using public
   keys for encryption of the parameters rather than a wrapping token. This
   flow was experimental and never documented. It is now officially supported
   and documented but is not backwards compatible with older Vault releases.
 * Cluster cipher suites: On its cluster port, Vault will no longer advertise
   the full TLS 1.2 cipher suite list by default. Although this port is only
   used for Vault-to-Vault communication and would always pick a strong
   cipher, it could cause false flags on port scanners and other security
   utilities that assumed insecure ciphers were being used. The previous
   behavior can be achieved by setting the value of the (undocumented)
   `cluster_cipher_suites` config flag to `tls12`.
 * API/Agent Renewal behavior: The API now allows multiple options for how it
   deals with renewals. The legacy behavior in the Agent/API is for the renewer
   (now called the lifetime watcher) to exit on a renew error, leading to a
   reauthentication. The new default behavior is for the lifetime watcher to
   ignore 5XX errors and simply retry as scheduled, using the existing lease
   duration. It is also possible, within custom code, to disable renewals
   entirely, which allows the lifetime watcher to simply return when it
   believes it is time for your code to renew or reauthenticate.

FEATURES:
 * **Vault Debug**: A new top-level subcommand, `debug`, is added that allows
   operators to retrieve debugging information related to a particular Vault
   node. Operators can use this simple workflow to capture triaging
   information, which can then be consumed programmatically or by support and
   engineering teams.  It has the abilitity to probe for config, host,
   metrics, pprof, server status, and replication status.
 * **Recovery Mode**: Vault server can be brought up in recovery mode to
   resolve outages caused due to data store being in bad state. This is a
   privileged mode that allows `sys/raw` API calls to perform surgical
   corrections to the data tore. Bad storage state can be caused by
   bugs. However, this is usually observed when known (and fixed) bugs are
   hit by older versions of Vault.
 * **Entropy Augmentation (Enterprise)**: Vault now supports sourcing entropy
   from external source for critical security parameters. Currently an HSM
   that supports PKCS#11 is the only supported source.
 * **Active Directory Secret Check-In/Check-Out**: In the Active Directory
   secrets engine, users or applications can check out a service account for
   use, and its password will be rotated when it's checked back in.
 * **Vault Agent Template**: Vault Agent now supports rendering templates
   containing Vault secrets to disk, similar to Consul Template
   [[GH-7652](https://github.com/hashicorp/vault/pull/7652)]
 * **Transit Key Type Support**: Signing and verification is now supported
   with the P-384 (secp384r1) and P-521 (secp521r1) ECDSA curves
   [[GH-7551](https://github.com/hashicorp/vault/pull/7551)] and encryption
   and decryption is now supported via AES128-GCM96
   [[GH-7555](https://github.com/hashicorp/vault/pull/7555)]
 * **SSRF Protection for Vault Agent**: Vault Agent has a configuration
   option to require a specific header before allowing requests
   [[GH-7627](https://github.com/hashicorp/vault/pull/7627)]
 * **AWS Auth Method Root Rotation**: The credential used by the AWS auth
   method can now be rotated, to ensure that only Vault knows the credentials
   it is using [[GH-7131](https://github.com/hashicorp/vault/pull/7131)]
 * **New UI Features**: The UI now supports managing users and groups for the
   Userpass, Cert, Okta, and Radius auth methods.
 * **Shamir with Stored Master Key**: The on disk format for Shamir seals has
   changed, allowing for a secondary cluster using Shamir downstream from a
   primary cluster using Auto
   Unseal. [[GH-7694](https://github.com/hashicorp/vault/pull/7694)]
 * **Stackdriver Metrics Sink**: Vault can now send metrics to
   [Stackdriver](https://cloud.google.com/stackdriver/). See the
   [configuration
   documentation](https://www.vaultproject.io/docs/config/index.html) for
   details. [[GH-6957](https://github.com/hashicorp/vault/pull/6957)]
 * **Filtered Paths Replication (Enterprise)**: Based on the predecessor
   Filtered Mount Replication, Filtered Paths Replication allows now
   filtering of namespaces in addition to mounts.
 * **Token Renewal via Accessor**: Tokens can now be renewed via the accessor
   value through the new `auth/token/renew-accessor` endpoint if the caller's
   token has permission to access that endpoint.
 * **Improved Integrated Storage (Beta)**: Improved raft write performance,
   added support for non-voter nodes, along with UI support for: using raft
   storage, joining a raft cluster, and downloading and restoring a
   snapshot.

IMPROVEMENTS:
 * agent: Add ability to set the TLS SNI name used by Agent
   [[GH-7519](https://github.com/hashicorp/vault/pull/7519)]
 * agent & api: Change default renewer behavior to ignore 5XX errors
   [[GH-7733](https://github.com/hashicorp/vault/pull/7733)]
 * auth/jwt: The redirect callback host may now be specified for CLI logins
   [[GH-71](https://github.com/hashicorp/vault-plugin-auth-jwt/pull/71)]
 * auth/jwt: Bound claims may now contain boolean values
   [[GH-73](https://github.com/hashicorp/vault-plugin-auth-jwt/pull/73)]
 * auth/jwt: CLI logins can now open the browser when running in WSL
   [[GH-77](https://github.com/hashicorp/vault-plugin-auth-jwt/pull/77)]
 * core: Exit ScanView if context has been cancelled
   [[GH-7419](https://github.com/hashicorp/vault/pull/7419)]
 * core: re-encrypt barrier and recovery keys if the unseal key is updated
   [[GH-7493](https://github.com/hashicorp/vault/pull/7493)]
 * core: Don't advertise the full set of TLS 1.2 cipher suites on the cluster
   port, even though only strong ciphers were used
   [[GH-7487](https://github.com/hashicorp/vault/pull/7487)]
 * core (enterprise): Add background seal re-wrap
 * core/metrics: Add config parameter to allow unauthenticated sys/metrics
   access. [[GH-7550](https://github.com/hashicorp/vault/pull/7550)]
 * metrics: Upgrade DataDog library to improve performance
   [[GH-7794](https://github.com/hashicorp/vault/pull/7794)]
 * replication (enterprise): Write-Ahead-Log entries will not duplicate the
   data belonging to the encompassing physical entries of the transaction,
   thereby improving the performance and storage capacity.
 * replication (enterprise): Added more replication metrics
 * replication (enterprise): Reindex process now compares subpages for a more
   accurate indexing process.
 * replication (enterprise): Reindex API now accepts a new `skip_flush`
   parameter indicating all the changes should not be flushed while the tree
   is locked.
 * secrets/aws: The root config can now be read
   [[GH-7245](https://github.com/hashicorp/vault/pull/7245)]
 * secrets/database/cassandra: Add ability to skip verfication of connection
   [[GH-7614](https://github.com/hashicorp/vault/pull/7614)]
 * secrets/gcp: Fix panic during rollback if the roleset has been deleted
   [[GH-52](https://github.com/hashicorp/vault-plugin-secrets-gcp/pull/52)]
 * storage/azure: Add config parameter to Azure storage backend to allow
   specifying the ARM endpoint
   [[GH-7567](https://github.com/hashicorp/vault/pull/7567)]
 * storage/cassandra: Improve storage efficiency by eliminating unnecessary
   copies of value data
   [[GH-7199](https://github.com/hashicorp/vault/pull/7199)]
 * storage/raft: Improve raft write performance by utilizing FSM Batching
   [[GH-7527](https://github.com/hashicorp/vault/pull/7527)]
 * storage/raft: Add support for non-voter nodes
   [[GH-7634](https://github.com/hashicorp/vault/pull/7634)]
 * sys: Add a new `sys/host-info` endpoint for querying information about
   the host [[GH-7330](https://github.com/hashicorp/vault/pull/7330)]
 * sys: Add a new set of endpoints under `sys/pprof/` that allows profiling
   information to be extracted
   [[GH-7473](https://github.com/hashicorp/vault/pull/7473)]
 * sys: Add endpoint that counts the total number of active identity entities
   [[GH-7541](https://github.com/hashicorp/vault/pull/7541)]
 * sys: `sys/seal-status` now has a `storage_type` field denoting what type
   of storage the cluster is configured to use
 * sys: Add a new `sys/internal/counters/tokens` endpoint, that counts the
   total number of active service token accessors in the shared token
   storage.
   [[GH-7541](https://github.com/hashicorp/vault/pull/7541)]
 * sys/config: Add  a new endpoint under `sys/config/state/sanitized` that
   returns the configuration state of the server. It excludes config values
   from `storage`, `ha_storage`, and `seal` stanzas and some values
   from `telemetry` due to potential sensitive entries in those fields.
 * ui: when using raft storage, you can now join a raft cluster, download a
   snapshot, and restore a snapshot from the UI
   [[GH-7410](https://github.com/hashicorp/vault/pull/7410)]
 * ui: clarify when secret version is deleted in the secret version history
   dropdown [[GH-7714](https://github.com/hashicorp/vault/pull/7714)]

BUG FIXES:
 * agent: Fix a data race on the token value for inmemsink
   [[GH-7707](https://github.com/hashicorp/vault/pull/7707)]
 * api: Fix Go API using lease revocation via URL instead of body
   [[GH-7777](https://github.com/hashicorp/vault/pull/7777)]
 * api: Allow setting a function to control retry behavior
   [[GH-7331](https://github.com/hashicorp/vault/pull/7331)]
 * auth/gcp: Fix a bug where region information in instance groups names could
   cause an authorization attempt to fail
   [[GH-74](https://github.com/hashicorp/vault-plugin-auth-gcp/pull/74)]
 * cli: Fix a bug where a token of an unknown format (e.g. in ~/.vault-token)
   could cause confusing error messages during `vault login`
   [[GH-7508](https://github.com/hashicorp/vault/pull/7508)]
 * cli: Fix a bug where the `namespace list` command with JSON formatting
   always returned an empty object
   [[GH-7705](https://github.com/hashicorp/vault/pull/7705)]
 * cli: Command timeouts are now always specified solely by the
   `VAULT_CLIENT_TIMEOUT`
   value. [[GH-7469](https://github.com/hashicorp/vault/pull/7469)]
 * core: Don't allow registering a non-root zero TTL token lease. This is
   purely defense in depth as the lease would be revoked immediately anyways,
   but there's no real reason to allow registration.
   [[GH-7524](https://github.com/hashicorp/vault/pull/7524)]
 * identity (enterprise): Fixed identity case sensitive loading in secondary
   cluster [[GH-7327](https://github.com/hashicorp/vault/pull/7327)]
 * identity: Ensure only replication primary stores the identity case
   sensitivity state
   [[GH-7820](https://github.com/hashicorp/vault/pull/7820)]
 * raft: Fixed VAULT_CLUSTER_ADDR env being ignored at startup
   [[GH-7619](https://github.com/hashicorp/vault/pull/7619)]
 * secrets/pki: Don't allow duplicate SAN names in issued certs
   [[GH-7605](https://github.com/hashicorp/vault/pull/7605)]
 * sys/health: Pay attention to the values provided for `standbyok` and
   `perfstandbyok` rather than simply using their presence as a key to flip on
   that behavior [[GH-7323](https://github.com/hashicorp/vault/pull/7323)]
 * ui: using the `wrapped_token` query param will work with `redirect_to` and
   will automatically log in as intended
   [[GH-7398](https://github.com/hashicorp/vault/pull/7398)]
 * ui: fix an error when initializing from the UI using PGP keys
   [[GH-7542](https://github.com/hashicorp/vault/pull/7542)]
 * ui: show all active kv v2 secret versions even when `delete_version_after`
   is configured [[GH-7685](https://github.com/hashicorp/vault/pull/7685)]
 * ui: Ensure that items in the top navigation link to pages that users have
   access to [[GH-7590](https://github.com/hashicorp/vault/pull/7590)]

## 1.2.4 (November 7th, 2019)

SECURITY:
 * In a non-root namespace, revocation of a token scoped to a non-root
   namespace did not trigger the expected revocation of dynamic secret leases
   associated with that token. As a result, dynamic secret leases in non-root
   namespaces may outlive the token that created them.  This vulnerability,
   CVE-2019-18616, affects Vault Enterprise 0.11.0 and newer.
 * Disaster Recovery secondary clusters did not delete already-replicated data
   after a mount filter has been created on an upstream Performance secondary
   cluster. As a result, encrypted secrets may remain replicated on a Disaster
   Recovery secondary cluster after application of a mount filter excluding
   those secrets from replication. This vulnerability, CVE-2019-18617, affects
   Vault Enterprise 0.8 and newer.
 * Update version of Go to 1.12.12 to fix Go bug golang.org/issue/34960 which
   corresponds to CVE-2019-17596.

CHANGES:
 * auth/aws: If a custom `sts_endpoint` is configured, Vault Agent and the
   CLI should provide the corresponding region via the `region` parameter
   (which already existed as a CLI parameter, and has now been added to
   Agent). The automatic region detection added to the CLI and Agent in 1.2
   has been removed.

IMPROVEMENTS:
  * cli: Ignore existing token during CLI login
    [[GH-7508](https://github.com/hashicorp/vault/pull/7508)]
  * core: Log proxy settings from environment on startup
    [[GH-7528](https://github.com/hashicorp/vault/pull/7528)]
  * core: Cache whether we've been initialized to reduce load on storage
    [[GH-7549](https://github.com/hashicorp/vault/pull/7549)]

BUG FIXES:
 * agent: Fix handling of gzipped responses
   [[GH-7470](https://github.com/hashicorp/vault/pull/7470)]
 * cli: Fix panic when pgp keys list is empty
   [[GH-7546](https://github.com/hashicorp/vault/pull/7546)]
 * cli: Command timeouts are now always specified solely by the
   `VAULT_CLIENT_TIMEOUT`
   value. [[GH-7469](https://github.com/hashicorp/vault/pull/7469)]
 * core: add hook for initializing seals for migration
   [[GH-7666](https://github.com/hashicorp/vault/pull/7666)]
 * core (enterprise): Migrating from one auto unseal method to another never
   worked on enterprise, now it does.
 * identity: Add required field `response_types_supported` to identity token
   `.well-known/openid-configuration` response
   [[GH-7533](https://github.com/hashicorp/vault/pull/7533)]
 * identity: Fixed nil pointer panic when merging entities
   [[GH-7712](https://github.com/hashicorp/vault/pull/7712)]
 * replication (Enterprise): Fix issue causing performance standbys nodes
   disconnecting when under high loads.
 * secrets/azure: Fix panic that could occur if client retries timeout
   [[GH-7793](https://github.com/hashicorp/vault/pull/7793)]
 * secrets/database: Fix bug in combined DB secrets engine that can result in
   writes to static-roles endpoints timing out
   [[GH-7518](https://github.com/hashicorp/vault/pull/7518)]
 * secrets/pki: Improve tidy to continue when value is nil
   [[GH-7589](https://github.com/hashicorp/vault/pull/7589)]
 * ui (Enterprise): Allow kv v2 secrets that are gated by Control Groups to
   be viewed in the UI
   [[GH-7504](https://github.com/hashicorp/vault/pull/7504)]
jperkin pushed a commit that referenced this issue Sep 21, 2020
2.0.3 (2020-08-22)
~~~~~~~~~~~~~~~~~~

- Fix issues when building re2c as a CMake subproject
  (`#302 <https://github.com/skvadrik/re2c/pull/302>`_:

- Final corrections in the SIMPA article "RE2C: A lexer generator based on
  lookahead-TDFA", https://doi.org/10.1016/j.simpa.2020.100027

2.0.2 (2020-08-08)
~~~~~~~~~~~~~~~~~~

- Enable re2go building by default.

- Package CMake files into release tarball.

2.0.1 (2020-07-29)
~~~~~~~~~~~~~~~~~~

- Updated version for CMake build system (forgotten in release 2.0).

- Added a short article about re2c for the Software Impacts journal.

2.0 (2020-07-20)
~~~~~~~~~~~~~~~~

- Added new code generation backend for Go and a new ``re2go`` program
  (`#272 <https://github.com/skvadrik/re2c/issues/272>`_: Go support).
  Added option ``--lang <c | go>``.

- Added CMake build system as an alternative to Autotools
  (`#275 <https://github.com/skvadrik/re2c/pull/275>`_:
  Add a CMake build system (thanks to ligfx),
  `#244 <https://github.com/skvadrik/re2c/issues/244>`_: Switching to CMake).

- Changes in generic API:

  + Removed primitives ``YYSTAGPD`` and ``YYMTAGPD``.
  + Added primitives ``YYSHIFT``, ``YYSHIFTSTAG``, ``YYSHIFTMTAG``
    that allow to express fixed tags in terms of generic API.
  + Added configurations ``re2c:api:style`` and ``re2c:api:sigil``.
  + Added named placeholders in interpolated configuration strings.

- Changes in reuse mode (``-r, --reuse`` option):

  + Do not reset API-related configurations in each `use:re2c` block
    (`#291 <https://github.com/skvadrik/re2c/issues/291>`_:
    Defines in rules block are not propagated to use blocks).
  + Use block-local options instead of last block options.
  + Do not accumulate options from rules/reuse blocks in whole-program options.
  + Generate non-overlapping YYFILL labels for reuse blocks.
  + Generate start label for each reuse block in storable state mode.

- Changes in start-conditions mode (``-c, --start-conditions`` option):

  + Allow to use normal (non-conditional) blocks in `-c` mode
    (`#263 <https://github.com/skvadrik/re2c/issues/263>`_:
    allow mixing conditional and non-conditional blocks with -c,
    `#296 <https://github.com/skvadrik/re2c/issues/296>`_:
    Conditions required for all lexers when using '-c' option).
  + Generate condition switch in every re2c block
    (`#295 <https://github.com/skvadrik/re2c/issues/295>`_:
    Condition switch generated for only one lexer per file).

- Changes in the generated labels:

  + Use ``yyeof`` label prefix instead of ``yyeofrule``.
  + Use ``yyfill`` label prefix instead of ``yyFillLabel``.
  + Decouple start label and initial label (affects label numbering).

- Removed undocumented configuration ``re2c:flags:o``, ``re2c:flags:output``.

- Changes in ``re2c:flags:t``, ``re2c:flags:type-header`` configuration:
  filename is now relative to the output file directory.

- Added option ``--case-ranges`` and configuration ``re2c:flags:case-ranges``.

- Extended fixed tags optimization for the case of fixed-counter repetition.

- Fixed bugs related to EOF rule:

  + `#276 <https://github.com/skvadrik/re2c/issues/276>`_:
    Example 01_fill.re in docs is broken
  + `#280 <https://github.com/skvadrik/re2c/issues/280>`_:
    EOF rules with multiple blocks
  + `#284 <https://github.com/skvadrik/re2c/issues/284>`_:
    mismatched YYBACKUP and YYRESTORE
    (Add missing fallback states with EOF rule)

- Fixed miscellaneous bugs:

  + `#286 <https://github.com/skvadrik/re2c/issues/286>`_:
    Incorrect submatch values with fixed-length trailing context.
  + `#297 <https://github.com/skvadrik/re2c/issues/297>`_:
    configure error on ubuntu 18.04 / cmake 3.10

- Changed bootstrap process (require explicit configuration flags and a path to
  re2c executable to regenerate the lexers).

- Added internal options ``--posix-prectable <naive | complex>``.

- Added debug option ``--dump-dfa-tree``.

- Major revision of the paper "Efficient POSIX submatch extraction on NFA".

----
1.3x
----

1.3 (2019-12-14)
~~~~~~~~~~~~~~~~

- Added option: ``--stadfa``.

- Added warning: ``-Wsentinel-in-midrule``.

- Added generic API primitives:

  + ``YYSTAGPD``
  + ``YYMTAGPD``

- Added configurations:

  + ``re2c:sentinel = 0;``
  + ``re2c:define:YYSTAGPD = "YYSTAGPD";``
  + ``re2c:define:YYMTAGPD = "YYMTAGPD";``

- Worked on reproducible builds
  (`#258 <https://github.com/skvadrik/re2c/pull/258>`_:
  Make the build reproducible).

----
1.2x
----

1.2.1 (2019-08-11)
~~~~~~~~~~~~~~~~~~

- Fixed bug `#253 <https://github.com/skvadrik/re2c/issues/253>`_:
  re2c should install unicode_categories.re somewhere.

- Fixed bug `#254 <https://github.com/skvadrik/re2c/issues/254>`_:
  Turn off re2c:eof = 0.

1.2 (2019-08-02)
~~~~~~~~~~~~~~~~

- Added EOF rule ``$`` and configuration ``re2c:eof``.

- Added ``/*!include:re2c ... */`` directive and ``-I`` option.

- Added ``/*!header:re2c:on*/`` and ``/*!header:re2c:off*/`` directives.

- Added ``--input-encoding <ascii | utf8>`` option.

  + `#237 <https://github.com/skvadrik/re2c/issues/237>`_:
    Handle non-ASCII encoded characters in regular expressions
  + `#250 <https://github.com/skvadrik/re2c/issues/250>`_
    UTF8 enoding

- Added include file with a list of definitions for Unicode character classes.

  + `#235 <https://github.com/skvadrik/re2c/issues/235>`_:
    Unicode character classes

- Added ``--location-format <gnu | msvc>`` option.

  + `#195 <https://github.com/skvadrik/re2c/issues/195>`_:
    Please consider using Gnu format for error messages

- Added ``--verbose`` option that prints "success" message if re2c exits
  without errors.

- Added configurations for options:

  + ``-o --output`` (specify output file)
  + ``-t --type-header`` (specify header file)

- Removed configurations for internal/debug options.

- Extended ``-r`` option: allow to mix multiple ``/*!rules:re2c*/``,
  ``/*!use:re2c*/`` and ``/*!re2c*/`` blocks.

  + `#55 <https://github.com/skvadrik/re2c/issues/55>`_:
    allow standard re2c blocks in reuse mode

- Fixed ``-F --flex-support`` option: parsing and operator precedence.

  + `#229 <https://github.com/skvadrik/re2c/issues/229>`_:
    re2c option -F (flex syntax) broken
  + `#242 <https://github.com/skvadrik/re2c/issues/242>`_:
    Operator precedence with --flex-syntax is broken

- Changed difference operator ``/`` to apply before encoding expansion of
  operands.

  + `#236 <https://github.com/skvadrik/re2c/issues/236>`_:
    Support range difference with variable-length encodings

- Changed output generation of output file to be atomic.

  + `#245 <https://github.com/skvadrik/re2c/issues/245>`_:
    re2c output is not atomic

- Authored research paper "Efficient POSIX Submatch Extraction on NFA"
  together with Dr Angelo Borsotti.

- Added experimental libre2c library (``--enable-libs`` configure option) with
  the following algorithms:

  + TDFA with leftmost-greedy disambiguation
  + TDFA with POSIX disambiguation (Okui-Suzuki algorithm)
  + TNFA with leftmost-greedy disambiguation
  + TNFA with POSIX disambiguation (Okui-Suzuki algorithm)
  + TNFA with lazy POSIX disambiguation (Okui-Suzuki algorithm)
  + TNFA with POSIX disambiguation (Kuklewicz algorithm)
  + TNFA with POSIX disambiguation (Cox algorithm)

- Added debug subsystem (``--enable-debug`` configure option) and new debug
  options:

  + ``-dump-cfg`` (dump control flow graph of tag variables)
  + ``-dump-interf`` (dump interference table of tag variables)
  + ``-dump-closure-stats`` (dump epsilon-closure statistics)

- Added internal options:

  + ``--posix-closure <gor1 | gtop>`` (switch between shortest-path algorithms
    used for the construction of POSIX closure)

- Fixed a number of crashes found by American Fuzzy Lop fuzzer:

  + `#226 <https://github.com/skvadrik/re2c/issues/226>`_,
    `#227 <https://github.com/skvadrik/re2c/issues/227>`_,
    `#228 <https://github.com/skvadrik/re2c/issues/228>`_,
    `#231 <https://github.com/skvadrik/re2c/issues/231>`_,
    `#232 <https://github.com/skvadrik/re2c/issues/232>`_,
    `#233 <https://github.com/skvadrik/re2c/issues/233>`_,
    `#234 <https://github.com/skvadrik/re2c/issues/234>`_,
    `#238 <https://github.com/skvadrik/re2c/issues/238>`_

- Fixed handling of newlines:

  + correctly parse multi-character newlines CR LF in ``#line`` directives
  + consistently convert all newlines in the generated file to Unix-style LF

- Changed default tarball format from .gz to .xz.

  + `#221 <https://github.com/skvadrik/re2c/issues/221>`_:
    big source tarball

- Fixed a number of other bugs and resolved issues:

  + `#2 <https://github.com/skvadrik/re2c/issues/2>`_: abort
  + `#6 <https://github.com/skvadrik/re2c/issues/6>`_: segfault
  + `#10 <https://github.com/skvadrik/re2c/issues/10>`_:
    lessons/002_upn_calculator/calc_002 doesn't produce a useful example program
  + `#44 <https://github.com/skvadrik/re2c/issues/44>`_:
    Access violation when translating the attached file
  + `#49 <https://github.com/skvadrik/re2c/issues/49>`_:
    wildcard state \000 rules makes lexer behave weard
  + `#98 <https://github.com/skvadrik/re2c/issues/98>`_:
    Transparent handling of #line directives in input files
  + `#104 <https://github.com/skvadrik/re2c/issues/104>`_:
    Improve const-correctness
  + `#105 <https://github.com/skvadrik/re2c/issues/105>`_:
    Conversion of pointer parameters into references
  + `#114 <https://github.com/skvadrik/re2c/issues/114>`_:
    Possibility of fixing bug 2535084
  + `#120 <https://github.com/skvadrik/re2c/issues/120>`_:
    condition consisting of default rule only is ignored
  + `#167 <https://github.com/skvadrik/re2c/issues/167>`_:
    Add word boundary support
  + `#168 <https://github.com/skvadrik/re2c/issues/168>`_:
    Wikipedia's article on re2c
  + `#180 <https://github.com/skvadrik/re2c/issues/180>`_:
    Comment syntax?
  + `#182 <https://github.com/skvadrik/re2c/issues/182>`_:
    yych being set by YYPEEK () and then not used
  + `#196 <https://github.com/skvadrik/re2c/issues/196>`_:
    Implicit type conversion warnings
  + `#198 <https://github.com/skvadrik/re2c/issues/198>`_:
    no match for ‘operator!=’ in ‘i != std::vector<_Tp, _Alloc>::rend() [with _Tp = re2c::bitmap_t, _Alloc = std::allocator<re2c::bitmap_t>]()’
  + `#210 <https://github.com/skvadrik/re2c/issues/210>`_:
    How to build re2c in windows?
  + `#215 <https://github.com/skvadrik/re2c/issues/215>`_:
    A memory read overrun issue in s_to_n32_unsafe.cc
  + `#220 <https://github.com/skvadrik/re2c/issues/220>`_:
    src/dfa/dfa.h: simplify constructor to avoid g++-3.4 bug
  + `#223 <https://github.com/skvadrik/re2c/issues/223>`_:
    Fix typo
  + `#224 <https://github.com/skvadrik/re2c/issues/224>`_:
    src/dfa/closure_posix.cc: pack() tweaks
  + `#225 <https://github.com/skvadrik/re2c/issues/225>`_:
    Documentation link is broken in libre2c/README
  + `#230 <https://github.com/skvadrik/re2c/issues/230>`_:
    Changes for upcoming Travis' infra migration
  + `#239 <https://github.com/skvadrik/re2c/issues/239>`_:
    Push model example has wrong re2c invocation, breaks guide
  + `#241 <https://github.com/skvadrik/re2c/issues/241>`_:
    Guidance on how to use re2c for full-duplex command & response protocol
  + `#243 <https://github.com/skvadrik/re2c/issues/243>`_:
    A code generated for period (.) requires 4 bytes
  + `#246 <https://github.com/skvadrik/re2c/issues/246>`_:
    Please add a license to this repo
  + `#247 <https://github.com/skvadrik/re2c/issues/247>`_:
    Build failure on current Cygwin, probably caused by force-fed c++98 mode
  + `#248 <https://github.com/skvadrik/re2c/issues/248>`_:
    distcheck still looks for README
  + `#251 <https://github.com/skvadrik/re2c/issues/251>`_:
    Including what you use is find, but not without inclusion guards

- Updated documentation and website.
jperkin pushed a commit that referenced this issue Jan 25, 2021
2.0.0 (2020-11-01)

Requires Ruby 2.4+

* Protect against nil in column/row loop (#92)
* Remove unicode display string extensions (#104)
jperkin pushed a commit that referenced this issue Mar 30, 2021
2021-03-18 -- 0.9.5

  * Fixed: Fix a bug regarding section "5.2.4. Remove Dot Segments"
      of RFC 3986 that affected both normalization and reference resolution
      with regard to trailing slashes (GitHub #92, #97)
      Thanks to Dan Pape for the report!
  * Fixed: MinGW: Fix name of static library (GitHub #90)
      Thanks to SpaceIm for the patch and Sandro Mani for review!
  * Fixed: Use correct inline marker "__forceinline" for Intel C++ Compiler
      (GitHub #93)
      Thanks to jensenrichardson for the patch!
  * Fixed: Link against pthreads for (default) -DURIPARSER_BUILD_TESTS=ON
      (GitHub #99, #100)
  * Fixed: When integrated using CMake function add_subdirectory, installation
      could fail due to lack of prefix ${CMAKE_CURRENT_SOURCE_DIR} (GitHub #98)
      Thanks for the patch to Shehzan Mohammed!
  * Fixed: Addressed MSVC compile warning about lack of /EHsc when compiling
      the C++ test suite code (GitHub #102)
  * Fixed: Stopped misadvertising wide characters as Unicode support
      (GitHub #104)
  * Added: CMake option URIPARSER_WARNINGS_AS_ERRORS=(ON|OFF)
      to turn compile warnings into errors, defaults to "OFF" (GitHub #102)
  * Improved: pkg-config: Use ${prefix} and ${exec_prefix} to ease
      overriding variables using --define-variable=NAME=VALUE,
      e.g. as done on OpenWRT (GitHub #91)
      Thanks to Karel Kočí for the pull request!
  * Improved: Auto-detection of the qhelpgenerator command based on CMake
      package "Qt5Help" when available.  CMake option "QHG_LOCATION" can still
      be used to enforce a specific location (GitHub #103)
      Thanks for his help to Andreas Sturmlechner!
  * Improved: Make documentation use pkg-config in example on how to
      check for uriparser from within configure.ac (GNU Autoconf)
      (GitHub #37, #106)
  * Improved: In testing code, add a missing 'extern "C"' (GitHub #109)
      Thanks to Jørgen Ibsen for the patch!
  * Soname: 1:28:0 — see https://verbump.de/ for what these numbers do
jperkin pushed a commit that referenced this issue Jun 4, 2021
Changes since 1.4.0 from the RELEASE_NOTES file
        NOTE: In response to CVE-2019-20790, opendmarc has changed
                how it evaluates headers added by previous
                SPF milters.  Users are encouraged to read the
                CVE-2019-20790 file in the "SECURITY" folder
                for more details. (#49, #158).  Originally reported by
                Jianjun Chen, feedback by Simon Wilson and
                David Bürgin <[email protected]>.
        NOTE: OpenDMARC's internal SPF handling will be removed
                in a future version.  Users are encouraged to
                build linked against libspf2.  Many pre-built
                packages provided by OS packagers already do this.
                (See https://www.libspf2.org)
        Addition of defines for MUSL C Library. (#129/#133).  Patches by
                Marco Rebhan.
        Updated opendmarc.conf manpage and opendmarc.conf.sample to point to
                https://publicsuffix.org/list/.
        Added a CONTRIBUTING document.
        Fix two #ifdefs in arc functions for strlcpy. (#138).  Reported by
                Leo Bicknell.
        Fixes to MySQL Schema (#98/#99).  Patch by Bond Keevil.
        LIBSPF2 calls would not compile on OpenBSD due to OpenBSD not
                having the ns_type definition in arpa/resolv.h.
                Added detection to configure script.  (#134)
        Reworked hcreate_r calls to use hcreate, to compile natively on
                OpenBSD and MacOS. (Part of #94)  Reported by Rupert
                Gallagher.
        Add compatibility with AutoConf 2.70. (#95)
        Documentation updates about SourceForge being deprecated.  (#101)
        Only accept results from Received-SPF fields that indicate clearly
                which identifier was being evaluated, since DMARC specifically
                only wants results based on MAIL FROM.
        Many build-time fixes (#100, #91, #90, #86, #85, #84, #83, #82, #81)
                Patches provided by Rupert Gallagher ([email protected])
        Added config option HoldQuarantinedMessages (default false), which
                controls if messages with p=quarantine will be passed on to
                the mail stream (if False) or placed in the MTA's "hold"
                queue (if True).  Issue #105.  Patch by Marcos Moraes, on
                the OpenDMARC mailing list.
        Remove "--with-wall" from "configure".  Suggested by Leo Bicknell.
        LIBOPENDMARC: Fix bug #50: Ignore all RRTYPEs other than TXT.
                Problem reported by Jan Bouwhuis.
        LIBOPENDMARC: Fix bug #89: Repair absurd RRTYPE test in SPF code.
        LIBOPENDMARC: Fix bug #104: Fix bogus header field parsing code.
        LIBOPENDMARC: Fix bug #161: Don't pass the client IP address through
                htonl() since it's already in network byte order.  This
                was causing SPF errors when the internal SPF
                implementation was in use.
        LIBOPENDMARC: Fix numerous problems with the internal SPF
                implementation.
jperkin pushed a commit that referenced this issue Jun 15, 2021
htmltools 0.5.1.1
--------------------------------------------------------------------------------

* Added shiny as a suggested package.


htmltools 0.5.1
--------------------------------------------------------------------------------

## New Features & Improvements

* Added a new `tagFunction()` for generating `tags` and/or
  `htmlDependency()`s conditional on the rendering context. For an
  example, see `?tagFunction`. (#180)

* Closed #104: `save_html()`'s `file` argument now properly handles
  relative paths. (@haozhu233, #105, #192)

* `save_html()` now has a `lang` parameter that can be used to set the
  lang attribute of `<html>`. (@ColinFay, #185)

* Closed #101: `htmlDependency` & `renderDependencies` now allow the
  `script` argument to be given as a named list containing the
  elements: `src`, `integrity`, `crossorigin`. (@matthewstrasiotto,
  #188)

* Closed #189: `validateCssUnit()` now accepts `fit-content`. (#190)

* `htmlPreserve()` can now optionally use the Pandoc `raw_attribute`
  extension to enclose HTML.

## Breaking Changes

* Closed #161: `parseCssColors(x)` now requires `x` to be a character
  vector (it no longer accepts a `list()` of strings) and an error is
  no longer thrown when `mustWork = FALSE` and `x` contains `NA`
  value(s). (#194)

## Bug fixes

* `print(as.tags(x))` no longer results in error when `x` is a generic
  `list()` of tag-like objects. (#181)


htmltools 0.5.0
--------------------------------------------------------------------------------

* `tags` is now generated by a script which collects all
  [HTML](https://developer.mozilla.org/en-US/docs/Web/HTML/Element) and
  [SVG](https://developer.mozilla.org/en-US/docs/Web/SVG/Element) element tags
  documented in [MDN Web Docs](https://developer.mozilla.org).  This feature
  only appends to the existing set of `tags` (#159)

* Removed the Rcpp depedency and the compiled code now uses C rather than C++ (#158)

* BREAKING CHANGE: Fixed #57, #153: `htmlTemplate` output no longer inserts
  extra whitespace around {{...}} replacement values. (#154)

* `HTML()` now takes `.noWS` argument, which can be used to suppress surrounding
  whitespace (similar to the new argument for tags in htmltools 0.4.0). (#154)

* `css()` now returns `NULL` instead of `""` when no non-empty properties are
  specified. (#145)

* `save_html(tags$body(...))` no longer results in double <body> tags being
  written to the .html file. (Note that `save_html(tags$html(...))` is not
  supported at this time.) (#145)

* Trailing commas now permited in `...` arguments to `css()`, `tagList()`, and
  the var-arg mutation functions: `tagAppendAttributes()`, `tagSetChildren()`,
  and `tagAppendChildren()`. (#145)

* Added `capturePlot` and `plotTag` functions, for easily creating image files
  and HTML <img> tags (respectively) from plot expressions. (#150)

* Added `parseCssColors` function, for normalizing the various CSS
  color formats into #RRGGBB(AA) strings. (#155)

* Fixed #156: Now `extractPreserveChunks()` handles strings contain
  Emoji Unicode strings correctly on Windows. (#157)

* The `.noWS` parameter for suppressing whitespace can now take an `"inside"`
  value (equivalent to `c("after-start", "before-end")`). (#163)

htmltools 0.4.0
--------------------------------------------------------------------------------

* Fixed #128: Added support for trailing commas in tagLists and the predefined
  tags. (#135)

* Added some HTML tag functions to `tags` that were missing. (#111)

* Updated RcppExports for new version of Rcpp. (#93)

* `as.character.shiny.tags()` will handle non-ASCII attributes correctly if they
  are not encoded in native encoding.

* Fixed #99: `NA` attributes were sometimes rendered as `"NA"` in the HTML,
  instead of being blank. (#100)

* The error message for trailing commas in tag functions now provides context
  and useful information. (#109)

* Stopped using inline styles to set background color for `save_html`, as doing so
  makes it difficult to override using other CSS rules. (#123)

* Added a `.noWS` argument to `tag()` and `tags` which can be used to suppress
  the automatically generated whitespace around a particular tag. (#131)

* Added a shim for `system.file()` so that htmltools works with `htmlDependency`
  objects created by a package that was loaded with `devtools::load_all()`.
  (#129)

* `validateCssUnit()` now accepts `ch`, `rem`, and `calc()`. (#134)

* Fixed #125: `print.html` removes html dependencies. (#126)

* Stopped extra carriage returns from being inserted by `save_html` on Windows.
  (#137)
jperkin pushed a commit that referenced this issue Jan 18, 2022
Changelog:
Version 1.78.0

Known Issues

These are patches from library authors which were found too late to be fixed in
the release.

  * Boost.Build silently skips installation of library headers and binaries in
    some cases, see #104.
      + Fixed in PR#113, patch.
  * Boost.Atomic fails to build when targeting UWP, see #54. Patch.

New Libraries

  * No new libraries.

Updated Libraries

  * Asio:
      + Added an io_uring backend that may optionally be used for all I/O
        objects, including sockets, timers, and posix descriptors.
      + Added support for files, with new new classes for stream-oriented and
        random-access files. This feature currently supports I/O completion
        ports on Windows, and io_uring on Linux.
      + Added support for portable pipes on POSIX and Windows (when I/O
        completion ports are available).
      + Added support for registered buffers, which are optimised when using
        the io_uring backend.
      + Added experimental support for channels, that may be used to send and
        queue completions as messages.
      + Implemented improvements to experimental::coro.
      + Disabled aligned_alloc on clang when using an MSVC runtime.
      + Changed to use a faster implementation for ip::network_v4::canonical().
      + Added template specialisations for common uses to improve compile time.
      + Reduced the size of io_context executors to a single pointer.
      + Increased the small object buffer size for execution::any_executor and
        any_io_executor.
      + Fixed multi-signature handling when variadic templates are disabled.
      + Fixed compatibility with new versions of gcc and clang.
      + Fixed compilation on Solaris.
      + Fixed defence against Qt-defined macros when building with MSVC.
      + Improved error messages emitted by ssl facilities.
      + Fixed bind_executor compatibility with completion tokens.
      + Fixed build errors when BOOST_ASIO_USE_TS_EXECUTOR_AS_DEFAULT is
        defined.
      + Added missing move assignment operator to awaitable<>.
      + Fixed an access violation when using coroutines with MSVC, due to
        incorrect alignment of allocated memory.
      + Fixed a cleanup issue in experimental::parallel_group that occured when
        the execution context was shut down with parallel operations still
        pending.
      + Added clarifications to the documentation on concurrency hints.
      + Added documentation on error handling techniques for C++20 coroutines.
      + Fixed various warnings.
      + Consult the Revision History for further details.
  * Assert:
      + Added source_location::to_string.
  * Atomic:
      + Use process-local futex operations on Android for non-IPC waiting and
        notifying operations.
      + Added support for Linux targets that only define SYS_futex_time64
        syscall, such as riscv32.
      + Added a workaround for incorrect result of std::alignment_of on clang 8
        for 64-bit types on 32-bit x86 targets.
      + Added a ulock backend for waiting and notifying operations on Darwin
        systems since Mac OS 10.12, iOS 10.0, tvOS 10.0 or watchOS 3.0.
      + On Windows, corrected discrepancy between atomic-type
        ::always_has_native_wait_notify and the corresponding capability macros
        when targeting Windows 8 or later. The library will now directly use
        WaitOnAddress and related APIs from public headers and therefore
        require user to link with synchronization.lib if the user requires
        Windows 8 or later by defining BOOST_USE_WINAPI_VERSION, _WIN32_WINNT
        or similar macros. The library is linked automatically on compilers
        that support auto-linking (e.g. MSVC).
      + Added support for types with padding bits, except unions, on compilers
        that provide a way to clear the padding bits. This feature is supported
        by gcc 11 and MSVC 14.2 (compiler version 19.27) and newer, as well as
        other compilers supporting similar intrinsics. On compilers that don't
        allow to clear the padding bits, types with padding are still generally
        not supported with the exception of 80-bit long double on x86 targets.
        A new BOOST_ATOMIC_NO_CLEAR_PADDING capability macro is defined to
        indicate when clearing the padding is not supported.
      + Initializing constructors of atomic_ref and ipc_atomic_ref no longer
        use atomic instructions to clear the padding bits in the referenced
        object. This reduces the cost of the atomic reference construction.
      + Initializing constructors of atomic and ipc_atomic are now constexpr
        for enums, classes and floating point types. For classes and floating
        point types, the constructors are constexpr if the compiler supports
        constexpr std::bit_cast, the type has no padding bytes and no padding
        is required to implement native atomic operations.
      + In accordance with C++20, default constructors of atomic and ipc_atomic
        now perform value initialization of the contained object. For types
        without a user-defined default constructor, this means the
        default-constructed atomic will be zero-initialized.
      + Added a workaround for compilation error on AIX caused by the assembler
        tool not supporting numeric labels. (PR#50)
      + Added a workaround for compilation error with Visual Studio 2015 prior
        to Update 3. (#52)
      + See changelog for more details.
  * Beast:
      + This maintenance update brings minor bug fixes and updated CI
        reporting.
      + Fixed security vulnerability CVE-2016-9840 in zlib implementation.
      + Fixed WebSocket permessage_deflate implementation. This should result
        in an increase in compression performance when using Beast WebSockets.
      + Removed the test stream and test framework's dependency on RTTI. You
        can now use our handy test stream to check your embedded asynchronous
        communications code!
      + We'd love to know how you or your company use Beast, consider adding an
        entry to the Companies and Individuals Using Beast list.
      + See the full Release Notes for a complete list of changes.
  * Core:
      + Added a generic implementation to <boost/core/cmath.hpp>, enabled when
        BOOST_CORE_USE_GENERIC_CMATH is defined or when the platform does not
        provide the necessary facilities in <cmath>.
      + Added boost::core::type_name, a utility function that returns the name
        of a type as a string.
      + Added boost::span, a C++11 implementation of C++20's std::span (Glen
        Fernandes).
  * Describe:
      + Added has_describe_enumerators, has_describe_bases,
        has_describe_members.
      + Added enum_to_string, enum_from_string.
      + Added relational and stream insertion operators.
      + Added descriptor_by_name, descriptor_by_pointer.
  * DLL:
      + Fixed missing #include, thanks to Denis Blank (PR#54)
      + Dropped TravisCI in favor of GithubAction CI
  * Filesystem:
      + v4: path::filename and path::iterator no longer return an implicit
        trailing dot (".") element if the path ends with a directory separator.
        Instead, an empty path is returned, similar to C++17 std::filesystem.
        This also affects other methods that are defined in terms of iterators
        or filename, such as path::stem, path::compare or
        lexicographical_compare. For example, path("a/b/") == path("a/b/.") no
        longer holds true. (#193)
      + v4: path::lexically_normal no longer produce a trailing dot (".")
        element and omits a directory separator after a trailing dot-dot ("..")
        element in the normalized paths.
      + v4: path append operations now consider root name and root directory in
        the appended path. If the appended path is absolute, or root name is
        present and differs from the source path, the resulting path is
        equivalent to the appended path. If root directory is present, the
        result is the root directory and relative path rebased on top of the
        root name of the source path. Otherwise, the behavior is similar to v3.
        (#214)
      + path::lexically_normal now converts directory separators to preferred
        separators in the root name of the normalized paths.
      + Optimized overloads of path::assign, path::append, path::concat and the
        corresponding operators to avoid unnecessary path copying and reduce
        the amount of code redundancy.
      + On POSIX systems, fixed absolute(p, base) returning a path with root
        name base.root_name() if p starts with a root directory. In such a case
        p is already an absolute path and should be returned as is.
      + create_directories no longer reports an error if the input path
        consists entirely of dot (".") and dot-dot ("..") elements. The
        implementation is no longer using recursion internally and therefore is
        better protected from stack overflow on extremely long paths.
      + On Windows, remove now supports deleting read-only files. The operation
        will attempt to reset the read-only attribute prior to removal. Note
        that this introduces a possibility of the read-only attribute being
        left unset, if the operation fails and the original value of the
        attribute fails to be restored. This also affects remove_all. (#216)
      + remove_all now returns static_cast< uintmax_t >(-1) in case of error,
        similar to C++17 std::filesystem.
      + Fixed a linking error about unresolved references to
        Boost.ContainerHash functions when user's code includes boost/
        filesystem/path.hpp but not boost/container_hash/hash.hpp and the
        compiler is set to preserve unused inline functions. (#215)
      + Added a workaround for MSVC and compatible compilers eliminating path
        globals cleanup in release builds. This could lead to a memory leak if
        Boost.Filesystem shared library was repeatedly loaded and unloaded in
        the process. (#217)
  * Geometry:
      + Improvements
          o PR#894 Optimization and refactoring of rtree queries.
          o PR#913 DynamicGeometry and GeometryCollection support in various
            algorithms (undocumented for now).
          o PR#922 DynamicGeometry and GeometryCollection support in distance
            (undocumented for now).
      + Solved issues
          o #867 Poor performance of rtree query iterator with nearest
            predicate for big k.
          o #870 Compilation error in boost::geometry::self_turns.
          o #896 Assertion failure in get_turns with
            BOOST_GEOMETRY_NO_ROBUSTNESS.
      + Bugfixes
          o PR#906 Invalid result of buffer on macos-11 with clang-12.
          o PR#921 Compilation errors with c++20 (various compilers) and gcc-5.
          o Various fixes in set operations and buffer.
  * JSON:
      + Standalone mode of the library is deprecated.
      + Allow external libraries to forward declare value_to and value_from.
      + Fixed signed integer overflow in number parsing.
      + Add support for /Zc:implicitNoexcept- on MSVC.
  * Lambda2:
      + Added special cases in operator<< and operator>> when the first
        argument is a stream, to allow std::cout << _1.
      + Added operator->*.
      + Added first, second.
  * Log:
      + General changes:
          o Updated detection of std::codecvt specializations for char16_t and
            char32_t for compatibility with C++17 and later. (PR#159)
          o Added support for C++17 std::byte type to receive methods of the
            inter-process message queue.
          o On Windows, when building the library for Windows 8 or later, the
            library will use nt62 tag in the version namespace to denote the
            target OS ABI. For example, the version namespace could be named as
            v2_mt_nt62. This name will be part of all symbols exported by the
            library. Use the BOOST_USE_WINAPI_VERSION macro consistenly when
            building Boost and your code to request the minimum target Windows
            version.
          o Improved performance of SSSE3 and AVX2 implementations of the dump
            stream manipulator.
          o Added support for CMake build system. Only library build is
            supported at this moment, Boost.Build is still used for running
            tests.
      + Bug fixes:
          o Fixed a race condition on POSIX systems in reliable_message_queue::
            open_or_create or the equivalent constructor. Multiple threads or
            processes calling open_or_create concurrently with sending or
            receiving messages from the same queue could end up corrupting the
            queue contents and potentially crashing the process. (#162)
          o Added a workaround for b2 install failing on Windows because of
            missing boost_log_setup library if
            BOOST_LOG_WITHOUT_SETTINGS_PARSERS is defined. (#164)
      + See changelog for more details.
  * Math:
      + Add support for cubic roots.
      + Add support for constexpr versions of various standard library math
        routines.
      + Add support for Bezier polynomials.
      + Improve worst-case tanh-sinh integration performance.
      + Disable inadvertant use of integral types in integration routines.
      + Minor update for erf approximations when the result is with 2ulp of 1.
      + Allow Bernoulli code to be used on platforms with no atomic integers.
      + Improve the mode of the non-central Chi Squared distribution.
      + Improve certain edge cases for <cstdfloat> complex-valued elementary
        functions, see #507.
  * Multi-index Containers:
      + Added contains to key-based indices (issue #35).
      + Added merge operations to key-based indices. The functionality goes
        beyond the standard specification for (unordered) associative
        containers in a number of ways, most notably:
          o The source index can be of any type, including non key-based
            indices.
          o Partial merge is provided: for instance, x.merge(y,first,last)
            merges only the elements of y within [first,last).
      + Previous versions of splice for sequenced and random access indices
        were destructive, i.e. elements were copy-inserted into the destination
        and then erased from the source. Now, splice is based on node transfer
        much as merge in key-based indices, and has been similarly extended to
        accept source indices of any type: in fact, splice can be regarded as a
        frontend to the same functionality provided by merge in key-based
        indices. For reasons of backwards compatibility, the destructive
        behavior of splice has been retained in the case that the source and
        destination containers have unequal allocators.
      + The fact has been documented that index iterator types do only depend
        on node_type and the position of the index in its multi_index_container
        , (except for hashed indices, where uniqueness/non-uniqueness is also a
        dependency). This has implications on the validity of iterators to
        elements transferred by merge or splice. This property is a variant of
        what has been called SCARY iterators in the C++ standard mailing lists.
        SCARYness is currently (August 2021) not mandated for standard
        containers.
      + Iterator SCARYness is now also preserved in safe mode.
  * Multiprecision:
      + Rework rational_adaptor to remove dependency on Boost.Rational and
        improve performance.
      + Fix issue with type_traits and clang, see #383.
      + Fixed buggy Lehmer's GCD routine, see #370.
      + Fix mpc_complex constructors so that lossy conversions are explicit,
        see #363.
      + Correct miscellaneous configuration issues (Intel intrinsic usage and
        Apple clang).
      + Correct some iostream operators for unsigned char types.
      + Correct mpq_rational conversions to integer types, see #342.
  * PFR:
      + Added missing #include <memory> for inclusion of std::addressof
      + Fixed -Wzero-length-array warning when dealing with empty aggregates
      + Fixed compilation on msvc compilers <= 1920 (thanks to Alexey Romanov
        aka @alexey-romanov)
      + Added basic CMakeLists.txt support (thanks to @pdimov aka Peter Dimov)
      + Multiple improvements for docs, including links to https://github.com/
        apolukhin/pfr_non_boost
      + Added misc/strip_boost_namespace.sh script to remove boost:: and BOOST_
        prefixes
  * Predef:
      + Version 1.13.1
      + Fix spelling of "epoch".
      + Add missing parenthesis in sparc.h (from tkoecker).
      + Update documentation to use Rouge code styling and Amber general style.
  * Regex:
      + Breaking Change: Change \B to be the opposite of \b as per Perl
        behaviour.
      + Change w32_regex_traits.hpp so that windows.h is no longer included.
      + Fxed fuzzing related issues #151, #152, #153, #156.
  * System:
      + Added support for source locations to error_code.
      + Added error_code::to_string, error_condition::to_string, error_code::
        what.
      + system_error::what() now contains the source location, if present.
      + Added result<T, E = error_code>, a class holding either a value or an
        error, defined in <boost/system/result.hpp>.
  * Utility:
      + Library documentation converted to QuickBook (thanks to Alan de
        Freitas, PR#79).
  * Variant2:
      + Added <boost/variant2.hpp>.
      + Added unsafe_get<I>.
      + Added visit_by_index.
      + Added operator<<.

Updated Tools

  * Build:
      + Includes release of B2 version 4.7.2.
jperkin pushed a commit that referenced this issue Feb 21, 2022
Changes since tio v1.32:

 * Show auto connect status in show configuration

 * Use '#pragma once' in all headers

 * Improve printed output

   Get rid of inconsistencies in the printed output (error printing,
   colors, etc.).

   Prepare for user configurable color.

 * Rename option -i to -L

 * Shorten timestamp

 * Shorten timestamp description

   We do not need the date part of the timestamp. It simply takes up too
   much precious line space. In case of logging to file, one can easily
   conclude the date from the file date information.

 * Replace Travis with circleCI

 * Replace autotools with meson

   To introduce much simpler build configuration which is also easier to
   maintain.

 * Add list serial devices feature

   For convenience, add a --list-devices option which lists the available
   serial devices.

 * Cleanup: Use dot notation for default options struct

 * Update AUTHORS

 * Add command to show version

   The key sequence ctrl-t v will now show the version of tio.

 * Align format of timestamps

 * Add Sylvain as official co-maintainer

Sylvain LAFRASSE:

 * Add '-t' option description for time stamping.

 * Add description for time stamping.

 * Resolved tio/tio#84: Added timestamps in log file if enabled.

attila-v:

 * Refine timestamps with milliseconds and ISO-8601 format (#129).

   * Show milliseconds too in the timestamp (#114) and log file (#124)
   * Change timestamp format to ISO-8601.

Yin Fengwei:

 * Output newline on stdout with hex print mode

   This is to fix the issue #104. The timestamp will always be
   printed at the beginning of line:

   [10:25:56] Switched to hexadecimal mode
   0d 0a 0d [10:25:57] 41 43 52 4e 3a 5c 3e 0d 0a 0d [10:25:58] 41

   is changed to:

   [12:34:56] 45 72 72 6f 72 3a 20 49 6e 76 61 6c 69 64 20
   [12:34:56] 41 43 52 4e 3a 5c 3e
   [12:34:56] 41 43 52 4e 3a 5c 3e
   [12:34:57] 41 43 52 4e 3a 5c 3e 6c 73

Jakob Haufe:

 * Make comparison POSIX compliant

   String comparison with == is not POSIX compliant and can fail with e.g.
   dash.

Henrik Brix Andersen:

 * Add bash completion of tty devices.

 * Add -t/--timestamp to bash completion script.

Henner Zeller:

 * Local echo: show character by character even if stdout buffered.

Björn Stenberg:

 * Show error when failing to open a tty

Alban Bedel:

 * Fix out of tree builds

   Out of tree builds are currently broken because $(top_srcdir)src/include
   is not in the search path. In tree builds are working because autconf add
   $(top_builddir)/src/include to the search path for the generated config.h.
   As $(top_builddir) and $(top_srcdir) are identical during in tree builds
   the search path still end up beeing somehow correct.

   To fix this add -I$(srcdir)/include to the CPPFLAGS in Makefile.am.

Fabrice Fontaine:

 * src/setspeed2.c: fix redefinition of termio

   Include ioctls.h and termbits.h from asm-generic instead of asm to avoid
   build failures.

Erik Moqvist

 * Exit if output speed cannot be set.

Lars Kellogg-Stedman:

 * fflush() after putchar() for print_hex and print_normal

   In order for local echo to work properly, we have to either call
   fflush(stdout) after every character or just disable line buffering.
   This change calls fflush() after putchar().

 * Disable line buffering in stdout

   In order for local echo to work properly, we have to either call
   fflush(stdout) after every character or just disable line buffering.
   This change uses setbuf(stdout, NULL) to do the latter.

George Stark:

 * dont show line state if ioctl failed

 * add serial lines manual control

arichi:

 * Flush every local echo char

   Flush stdout at every char in case it
   happens to be buffered.

Mariusz Midor:

 * Newline: handle booth NL and CR

   Flag ONLCRNL expects code \n after press Enter, but on some systems \r
   is send instead.
jperkin pushed a commit that referenced this issue Feb 21, 2022
### v1.1.0 2021-10-11 Paris (France)

- Add Keccak256 module (ethereum padding) (@maxtori, @dinosaure, #118)
- Update README.md to include the documentation (@mimoo, @dinosaure, 65a5c12)
- Remove deprecated function from `fmt` library (@dinosaure, #121)
- **NOTE**: This version lost the support of OCaml 4.03 and OCaml 4.04.

### v1.0.1 2020-02-08 Paris (France)

- Fix `esy` support (@dinosaure, #115)
- Fix big-endian support (@dinosaure, #113)

### v1.0.0 2020-11-02 Paris (France)

- **breaking changes** Upgrade the library with MirageOS 3.9 (new layout of artifacts)
  Add tests about compilation of unikernels (execution and link)
  (#105, @dinosaure, @hannesm)
- Fix `esy` installation (#104, @dinosaure)
- **breaking changes** Better GADT (#103, @dinosaure)
  As far as I can tell, nobody really use this part of `digestif`.
  The idea is to provide a GADT which contains the type of the hash.
  From third-part libraries point-of-view, it's better to _pattern-match_ with
  such information instead to use a polymorphic variant (as before).
- **breaking changes** key used for HMAC is a constant `string` (#101, @dinosaure, @hannesm)
  The key should not follow the same type as the digest value (`string`, `bytes`, `bigstring`).
  This update restricts the user to user only constant key (as a `string`).

### v0.9.0 2020-07-10 Paris (France)

- Add sha3 implementation (#98), @lyrm, @dinosaure, @hannesm and @cfcs

### v0.8.1 2020-06-15 Paris (France)

- Move to `dune.2.6.0` (#97)
- Apply `ocamlformat.0.14.2` (#97)
- Fix tests according `alcotest.1.0.0` (#95)

### v0.8.0 2019-20-09 Saint Louis (Sénégal)

- Fake version to prioritize dune's variants instead of
  old linking trick
- Use `stdlib-shims` to keep compatibility with < ocaml.4.07.0

### v0.7.3 2019-07-09 Paris (France)

- Fix bug about specialization of BLAKE2{B,S} (#85, #86)
  reported by @samoht, fixed by @dinosaure, reviewed by @hannes and @cfcs
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 May 4, 2022
0.14.0

What's Changed

    docs: update missed example.com reference by @danielgtaylor in #114
    Password prompt when user defined but not password by @kpetremann in #116
    api: add show and add missing sync documentation by @kpetremann in #117
    feat: render Markdown using glamour by @danielgtaylor in #118
    docs: various updates & config examples by @danielgtaylor in #119
    chore: adding some forgotten files by @danielgtaylor in #120
    fix: build on windows by @danielgtaylor in #121

0.13.3

What's Changed

    docs/configuration.md: Clarify equivalent commands by @waldyrious in #109
    fix: formatting, simplify dates by @danielgtaylor in #110
    fix: base64 handling of []byte and raw mode on structured input by @danielgtaylor in #111
    fix: combine all links for paginated responses by @danielgtaylor in #112
    docs: update guide & other docs by @danielgtaylor in #113

0.13.2

What's Changed

    docs: add anatomy of an openapi-powered cli command info by @danielgtaylor in #100
    docs: add comparison page by @danielgtaylor in #101
    Docs updates by @danielgtaylor in #102
    fix: detect text/yaml response content type by @danielgtaylor in #103
    fix: add basic build time to dev --version by @danielgtaylor in #104
    fix: do not use scientific notation for large integers by @danielgtaylor in #105
    fix: do not panic on empty image by @danielgtaylor in #106
    fix: prevent escaping JSON for browsers by @danielgtaylor in #107
    fix: find HAL links in array responses by @danielgtaylor in #108
gco pushed a commit to gco/pkgsrc that referenced this issue Sep 11, 2022
3.0.27 (2022-06-08)

Merged Pull Requests

* Update chefstyle requirement from 1.2.1 to 1.3.2 TritonDataCenter#84
  (dependabot-preview[bot])
* Update chefstyle requirement from 1.3.2 to 1.4.0 TritonDataCenter#85
  (dependabot-preview[bot])
* Update chefstyle requirement from 1.4.0 to 1.4.2 TritonDataCenter#86
  (dependabot-preview[bot])
* Update chefstyle requirement from 1.4.2 to 1.4.3 TritonDataCenter#87
  (dependabot-preview[bot])
* Update chefstyle requirement from 1.4.3 to 1.4.5 TritonDataCenter#89
  (dependabot-preview[bot])
* Update chefstyle requirement from 1.4.5 to 1.5.0 TritonDataCenter#90
  (dependabot-preview[bot])
* Update chefstyle requirement from 1.5.0 to 1.5.2 TritonDataCenter#92
  (dependabot-preview[bot])
* Update chefstyle requirement from 1.5.2 to 1.5.8 TritonDataCenter#96
  (dependabot-preview[bot])
* Update chefstyle requirement from 1.5.8 to 1.5.9 TritonDataCenter#97
  (dependabot-preview[bot])
* Remove parallel pin now that it supports Ruby 2.4 again TritonDataCenter#98 (tas50)
* Add Ruby 2.7 testing + cache gem installs in CI TritonDataCenter#99 (tas50)
* Update chefstyle requirement from 1.5.9 to 1.6.2 TritonDataCenter#101
  (dependabot-preview[bot])
* Update chefstyle requirement from 1.6.2 to 1.7.1 TritonDataCenter#102
  (dependabot-preview[bot])
* Update chefstyle requirement from 1.7.1 to 1.7.2 TritonDataCenter#104
  (dependabot-preview[bot])
* Update chefstyle requirement from 1.7.2 to 1.7.5 TritonDataCenter#106
  (dependabot-preview[bot])
* Upgrade to GitHub-native Dependabot TritonDataCenter#107 (dependabot-preview[bot])
* add ruby tests 3.0 and 3.1 in verify pipeline TritonDataCenter#109 (jayashrig158)
* Fix in nested_hash parsing in config TritonDataCenter#115 (Nik08)
jperkin pushed a commit that referenced this issue Dec 6, 2022
Features
 - Significantly improved performance, see #173 and #176 (@sharifhsn)
 - Added variable panels through the --panels and --terminal-width flags,
   see #13 and #164 (@sharifhsn)
 - Added new --group-bytes/-g option, see #104 and #170 (@RinHizakura)
 - Added new --base B option (where B can be binary, octal, decimal or
   hexadecimal), see #147 and #178 (@sharifhsn)
 - Show actual zero bytes as ⋄ in the character panel (previously: 0), in
   order not to confuse them with ASCII
 - 0 bytes if colors are deactivated. Closes #166 (@sharkdp)

hexyl as a library
 - Breaking change: Printer::new is deprecated as a part of the public API.
   Alternatively, you can now construct a Printer using the PrinterBuilder
   builder API, see #168. (@sharifhsn)

Other
 - More tests for the squeezing feature, see #177 (@mkatychev)

Thank you
 - Special thanks go to @sharifhsn, not just for the new features, bugfixes
   and performance improvements. But also for many internal improvements of
   the code base and other maintenance tasks.
jperkin pushed a commit that referenced this issue Dec 18, 2022
# pkgload 1.3.2

* Fixes for CRAN checks.


# pkgload 1.3.1

* `dev_topic_find()` is now exported (#215).

* `dev_help()` will remind you to run `pkgload::load_all()` if no
  in-development packages are found (#221).

* Shimmed `?` now works even if you've renamed the documentation topic (#220).

* `dev_help()` now works with an RStudio daily to deliver a rendered
  development documentation that includes working images and links (#228).


# pkgload 1.3.0

* `load_all()` now calls `rlang::check_installed()` to prompt whether
  to install missing packages.

  Outdated and missing dependencies are installed using pak if
  installed. If not, the remotes package is used if installed.
  Otherwise `install.packages()` is used as a last resort but this
  method does not support Remotes fields.

* `load_all()` gains an `attach` argument set to `TRUE` by default (#209).
  If set to `FALSE`, `load_all()` creates a new namespace but doesn't
  create a package environment on the search path. In this case, it is
  more similar to `loadNamespace()` than to `library()`.

* Improved the way help pages are displayed in RStudio. This makes the
  behaviour within and outside RStudio consistent and fixes issues
  with Rd macros (#120).

* `unregister()` is now exported. This is a gentler version of
  `unload()` which removes the package from the search path,
  unregisters methods, and unregisters the namespace. However it
  doesn't try to unload the namespace or its DLL so that dangling
  references keep working.

* User `onLoad` hooks are now run after exports have been
  populated. This allows the hook to use exported functions.

* The loaded namespace is now locked just before user `onLoad` hooks
  are run. This better reproduced the namespace sealing behaviour of
  regular loading.

  The package environment environment is now locked as well before
  both the user and package `onAttach` hooks are run.

* Added support for loading a .so or .dll file from the `inst`
  folder via a new `library.dynam()` shim (@ethanplunkett, #48).

* The `system.file()` shim now fails if you supply a path that starts
  with `inst` to better reproduce the behaviour with installed
  packages (#104).

* `load_all()` now imports its dependencies lazily to avoid parallel
  installation issues (#89).

* Unknown Rd macros no longer trigger a warning when building the
  package topic index (#119).

* `load_all(compile = TRUE)` now forces a full recompilation (#93).

* The advice about running `rm()` to remove conflicts with objects in
  the global environment is now clickable in RStudio (#199).

* New `is_loading()` predicate to detect whether `load_all()` is
  currently running (#134).

* `.dynLibs()` is no longer emptied when package with no DLL is
  unloaded (#176).

* The `?` shim no longer interprets `?"/"` as a path (#198).

* rstudioapi is no longer a hard dependency of pkgload (#187).

* Errors thrown in user hooks are now demoted to a warning
  condition. Previously they were demoted using `try()`, making it
  harder to debug them.

* `load_all()` correctly re-loads modified translations, avoiding
  the usual gettext behaviour.
jperkin pushed a commit that referenced this issue Feb 7, 2023
1.7.0 (2022-11-17)

What's Changed

* Extract creation of Net::HTTP in httpproxy by @wishdev in #41
* Fix httpd error in CJK directory by @jeremyevans in #42
* Use GitHub Actions instead of Travis CI (retry) by @deivid-rodriguez in
  #40
* Skip env-locale-sensitive CGI test on the "java" platform by @headius in
  #46
* Make readpartial limit chunk to appropriate size by @wishdev in #45
* Do not use ensure in a block without begin by @jeremyevans in #49
* Allow empty POST and PUT requests without content length by @jeremyevans
  in #50
* Only run test_big_bodies test on Ruby 2.5+ by @jeremyevans in #51
* Fix test when run with US-ASCII encoding by @jeremyevans in #52
* Allow shutdown_pipe to be passed in via @config by @wishdev in #44
* Ensure server port numbers are numeric and ensure they are stored as
  ... by @wishdev in #55
* Fix shutdown_pipe test issue by @wishdev in #54
* Allow EPROTOTYPE error when writing junk to a socket by @jeremyevans in
  #56
* Use ruby/setup-ruby instead of actions/setup-ruby by @hsbt in #58
* Refix test_shutdown_pipe by @wishdev in #59
* add mime type of extention mjs by @paulownia in #60
* Make it more strict to interpret some headers by @mame in #61


1.8.0 (2023-01-27)

What's Changed

* Use frozen strings by @kirs in #65
* Use test-unit by @hsbt in #66
* More rubies on CI, deprecating ruby 2.3 due to test failure by
  @mathieujobin in #68
* Adds common mime types by @gotoken in #75
* add mime type for .webmanifest extension by @olleolleolle in #76
* CI: use bundler-cache: true by @olleolleolle in #79
* Typo by @printfinn in #78
* s/RubyVM::JIT/RubyVM::MJIT/g by @k0kubun in #82
* Fix invalid use of IP addresses in SNI by @jeremyevans in #83
* Bump actions/checkout from 2 to 3 by @dependabot in #91
* remove unneeded bin/console and bin/setup files from gemspec by
  @Benjamin-L in #94
* Accept put requests by @bharjr01 in #70
* Move the host request parsing to a separate method. by @wishdev in #85
* Only output prime information to $stderr if $VERBOSE by @jeremyevans in
  #88
* Better support for connection upgrade and bi-directional streaming. by
  @ioquatix in #101

1.8.1 (2023-01-27)

What's Changed

* Body should be non-frozen by default. by @ioquatix in #103
* Join test thread. by @ioquatix in #104
* Fix several regexp warnings. by @ioquatix in #105
jperkin pushed a commit that referenced this issue Feb 7, 2023
What's Changed
 - add initial issue templates in #104
 - Refactor default themes in #107
 - Add sharing support in #110
 - Update play/pause icon usage and rename doc folder in #112
 - Add support for seeing the current queue in #113
 - Fix incorrect playback position on Linux in #114
 - Automatically update the lyric page on playing new track in #115
 - More flexible theme config in #118

Notes
 There are some potentially breaking changes with theme configurations.
 Please refer to the updated theme documentation for migration.
jperkin pushed a commit that referenced this issue Apr 8, 2023
[1.7.0] - 2023-03-30
What's Changed
 - Fix windows can not recognize the tag version when publishing by
   @Tlntin in #91
 - Fix the problem that test actions cannot upload windows binary files, add
   the function of custom form to set tag version. by @Tlntin in #94
 - Reduce default thread count by @solidiquis in #99
 - option for plain text disk usage reporting by @solidiquis in #102
 - Prune bug by @solidiquis in #103
 - dirs-only by @solidiquis in #104
 - Feature/file count by @solidiquis in #105
jperkin pushed a commit that referenced this issue Apr 28, 2023
This release fixes for installation issues on nix and updates dependencies to
solve potential vulnerabilities. Other than that, installation sources in the
documentation have been updated and code has been refactored to improve quality
and to allow for easier integration of other weather data sources in the coming
releases.

What's Changed
 - Add API Trait by @kevinmatthes in #88
 - Add Information on cargo install --git by @kevinmatthes in #91
 - Add information on installation from the AUR by @orhun in #104
 - Refactor 'localisation' by @danieleades in #107
 - Address a bunch of pedantic clippy lints by @danieleades in #106
 - Refactor get_forecast_indices() by @tobealive in #111
 - Updated flake.lock by @jeiang in #114
 - Updated flake.nix to exclude network tests by @jeiang in #120
 - Create Local Coverage GHA Workflow by @kevinmatthes in #112
jperkin pushed a commit that referenced this issue May 12, 2023
Features
 - Support both little and big Endian dumps using --endianness={little,big},
 see #189 and #104 (@RinHizakura)

Changes
 - Breaking: Changed the meaning of the short flag -C to be consistent with
 hexdump -C. Previously, this would hide the character panel, but now -C shows
 the character panel, in case it has been previously (e.g. in an alias)
 disabled with --no-characters, see #187 (@sharkdp)

hexyl as a library
 - New endianness method for PrinterBuilder
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 Aug 13, 2023
# nloptr 2.0.3

* Improved compatibility on RHEL/CentOS by first searching for a
`cmake3` binary on the `PATH` (#104).

* Improved backward compatibility with older versions of `cmake` (#119).

# nloptr 2.0.2

This is a patch version in which:

* I link to the `nlopt` library via `nlopt/lib/libnlopt.a` instead of
`-Lnlopt/lib -lnlopt` when building `nlopt` from included sources to avoid
potential mess where `-lnlopt` could look for the `nlopt` library in other
places and possibly link with an existing too old system build of `nlopt`.

Additionally, we contacted Simon Urbanek for updating the `nlopt` recipe for
macOS users so that it does now match the latest `v2.7.1`, which should avoid
`nlopt` to be built on the fly on CRAN machines.

# nloptr 2.0.1

This is a release mainly for increasing direct compatibility with most
user cases. In details, here is the list of changes that have been
made:

* Update `SystemRequirements` description to make it clearer which
  minimal versions of `cmake` (`>= 3.15.0`) and `nlopt` (`>= 2.7.0`)
  are required (#100, @HenrikBengtsson).

* End configuration sooner and louder if `cmake` is missing when
  needed with clearer message (#103, @eddelbuettel).

* Ensure system-wide installation of `cmake` in the list of
  suggestions to install it when missing.

* Update GHA scripts to latest versions.
* Configure git to always use LF line endings for configure.ac file.
* Add CI for R-devel on Windows with Rtools42.
* Fix for compatibility with versions of R anterior to `4.0` (#111).

* Look for a `cmake3` binary in the current path before `cmake` for
  increasing compatibility with most RHEL/CentOS users (#104,
  @bhogan-mitre @HenrikBengtsson).

# nloptr 2.0.0

## Major changes

* Use [CMake](https://cmake.org) to build `nlopt` from included
  sources on macOS and on Linux if no system build of NLopt (>= 2.7.0)
  is found.

* Update included sources of NLopt to latest version (2.7.1).


* Put back the ability on Linux platforms to re-use an existing
  external build of NLopt instead of building from the included
  sources (contributed by Dirk Eddelbuettel, #88).

* Now builds using NLopt from `rwinlib` on Windows current release
  (contributed by Jeroen Ooms, #92), or NLopt from `Rtools42` on
  Windows devel (contributed by Tomas Kalibera).

## Minor changes

* Added a `NEWS.md` file to track changes to the package.
* Use markdown in Roxygen documentation.

* Added a logo and a proper [**nloptr**
  website](https://astamm.github.io/nloptr/).

* Added coverage.
* Switch from Travis to Github Actions for CI.
* Use Catch for unit testing C/C++ code.
* Now tracking code coverage.

* Update NLopt-related URLs following migration of [NLopt
  website](https://nlopt.readthedocs.io/en/latest/).

* Fixed bug to avoid linking issues when using the C API via `#include
  <nloptrAPI.h>` in several source files.

* Fix precision issue in test example `hs071` (astamm/nloptr#81,
  @Tom-python0121).

* Made NLopt algorithm `NLOPT_GN_ESCH` available from R interface
  (contributed by Xiongtao Dai).
jperkin pushed a commit that referenced this issue Oct 23, 2023
This is the biggest update ever, with 36 new features, 24 bug fixes,
and 3 performance improvements.

Thank you to every contributor for making Yazi better and better!
What's Changed

    feat: add Mintty (Git Bash) image preview support by @sxyazi in #103
    refactor: use Url instead of PathBuf by @sxyazi in #107
    fix: mime of javascript by @XYenon in #106
    perf: load large folders in chunks by @sxyazi in #117
    fix: set cursor block after closing input prompt from insert mode
         by @auvred in #109
    fix: doesn't redirect the stderr of the clipboard command to null
         by @sxyazi in #119
    feat: suspend process (Ctrl-Z) by @sxyazi in #120
    fix: notification of file changes in linked directories by @sxyazi in #121
    feat: file size sorting under the simplified file system by @sxyazi in #123
    fix: show_hidden not properly applied to hovered folder by @sxyazi in #124
    fix: recognize symlink directories as files by @sxyazi in #125
    fix: respect symlink paths without canonicalizing them by @sxyazi in #126
    feat: make Input streamable by @sxyazi in #127
    perf: doesn't wait for the process of killing by @sxyazi in #128
    feat: find by @sxyazi in #104
    feat: tab-specific sorting by @sxyazi in #131
    feat: new V, D, C keybinding for Input component by @sxyazi in #139
    fix: swap description for search commands by @knutwalker in #141
    fix: image position calculation by @sxyazi in #144
    feat: support for image preview within tmux by @sxyazi in #147
    feat: show keywords when in search mode by @sxyazi in #152
    feat: fallback to built-in highlighting if jq is not installed
          by @ndtoan96 in #151
    feat: make the glob expr case insensitive by default, and prepend \s to
          make it sensitive by @sxyazi in #156
    fix: check relative path on expand_path by @sxyazi in #165
    feat: support for FreeBSD permission type by @yggdr in #169
    feat: multiple openers for a single rule by @Linus789 in #154
    fix: leave upwards only if an IO error occurs in current by @sxyazi in #172
    docs: add archlinuxcn installation guide by @Integral-Tech in #176
    fix: image preview not working on Zellij by @Eric-Song-Nop in #181
    feat: make trash optional by @sxyazi in #178
    fix: inconsistent Shift key behavior on Unix and Windows
         by @ndtoan96 in #174
    feat: new force option added for the remove command, which does not show
          the confirmation dialog on trashing/deleting by @sxyazi in #173
    fix: typo of LICENSE file by @conradojordan in #201
    feat: add flake.nix by @XYenon in #205
    feat: include ignored files on search when hidden files are shown
          by @PhotonQuantum in #212
    feat: new orphan option for opener rules, to keep the process running even
          when Yazi exited by @sxyazi in #216
    feat: scroll half/full page with arrow percentage supported, and new
          Vi-like <C-u>, <C-d>, <C-b>, and <C-f> keybindings added by
          @TD-Sky in #213
    feat: highlight matching words on finding by @PhotonQuantum in #211
    feat: add BackTab support by @sxyazi in #209
    fix: set stdio to null when orphan is true by @sxyazi in #229
    feat: new force option for creating and renaming by @sxyazi in #208
    feat: loop through to find by @ndtoan96 in #234
    feat: backward/forward by @ndtoan96 in #230
    perf: reimplement optimized natural sorting algorithm, speed up ~6 times
          for case-insensitive sorting by @sxyazi in #237
    chore: changing the finding key to n/N to keep with Vim's conventions
           by @sxyazi in #238
    feat: added new options to the `find' command for smart-case/
          case-insensitive finds by @ndtoan96 in #240
    feat: add new --no-cwd-file option to quit command for flexible cwd-file
          setting by @XOR-op in #245
    fix: avoid adding non-regular paths to backstack by @ndtoan96 in #249
    fix: support RGBA16 images by @sxyazi in #250
    feat: support trash for NetBSD by @sxyazi in #251
    feat: support environment variable in cd path by @ndtoan96 in #241
    feat: new theme system by @sxyazi in #161
    fix: cannot cd if there is whitespace in path by @ndtoan96 in #255
    fix: add application/x-wine-extension-ini to text mime by @ndtoan96 in #259
    fix: collect and fix all hard coded themes and color
         by @Eric-Song-Nop in #221
    fix: some colors not readable in light mode by @sxyazi in #264
    feat: better file hover state by @sxyazi in #269
    refactor: split commands into separate files by @sxyazi in #272
    feat: cancel selected items automatically on entering, leaving, copying, or
          cutting by @sxyazi in #273
    feat: add a new Bar component, and make border styles customizable
          by @sxyazi in #278
    fix: adapt another $TERM value of foot-extra for foot by @sxyazi in #277
    refactor: simplify building conditions by @sxyazi in #280
    chore: add git rev to nix pkg version by @XYenon in #206
    feat: new Manager component for better style extensions by @sxyazi in #284
    feat: cross-system opener rule support by @sxyazi in #289
    fix: delegate the SIGINT signal of processes with orphan=true to their
    parent by @sxyazi in #290
    feat: line mode by @sxyazi in #291
    feat: shell completions & auto releasing by @TD-Sky in #282
jperkin pushed a commit that referenced this issue Oct 29, 2023
0.2.4
* Make pipe_tables extension treat backslash escapes like GH does (#112,
  Michael Howell). This change essentially changes the way the text \\|
  gets parsed inside a table. In the old version, the first backslash
  escapes the second backslash, and then the pipe is treated as a cell
  separator. In the new version, the pipe is still preceded by a backslash,
  so it is still literal text. The escaping rule is documented in detail in
  the spec for this extension. This change also aligns our escaping of
  pipes with GitHub's.

0.2.3.6
* Fix pipe table parser so that |s don't interfere with other block
  structures (Michael Howell, #111, fixing #52 and #95). This parser is
  structured as a system that parses the second line first, then parses the
  first line. That is, if it detects a delimiter row as the second line of
  a paragraph, it converts the paragraph into a table. This seems
  counterintuitive, but it works better than trying to convert a table into
  a paragraph, since it might need to be something else.
* Improve parsing of inline math (#110).

0.2.3.5
* Resolve entities inside wikilinks (#105, Michał Kukieła).

0.2.3.4
* Require whitespace after definition list marker (#104). Otherwise we can
  inadvertently clobber strikeout or subscript.
jperkin pushed a commit that referenced this issue Nov 6, 2023
Overview of changes in GLib 2.78.0, 2023-09-08
==============================================

* Bugs fixed:
  - #3095 Error handling of invalid GKeyFile string escape sequences changed in
    GLib 2.77.3 (Philip Withnall)
  - !3559 gdb: Workaround optimized out quark_seq_id
  - !3561 meson: fix `gnetworking.h` install tag
  - !3562 gthread: Annotate g_thread_exit() with G_NORETURN
  - !3564 Fix gutils-user-database unit test

Overview of changes in GLib 2.77.3, 2023-08-31
==============================================

* Bugs fixed:
  - #2575 GSettings schemas default value translations don't work when using
    l10n=time (Michael Catanzaro)
  - #3032 gdbus-codegen eats indentation in RST in XML comments (André)
  - #3051 g_dbus_connection_export_menu_model() is not thread_safe
  - #3061 Possible SEGV (null pointer deref) in distribute_method_call() (Philip
    Withnall)
  - #3083 `arg_data`  in GOptionEntry is not a list (Philip Withnall)
  - #3090 Possible SEGV (null pointer deref) in _g_resource_file_new() (Philip
    Withnall)
  - !3459 glib-unix: Clean up use of O_NONBLOCK
  - !3503 interim solution for macOS CI
  - !3519 meson: warn if -mms-bitfields is necessary
  - !3526 gnetworkaddress: use reentrant getservbyname_r() if available
  - !3527 tests: Use g_assert_*() rather than g_assert() in tree tests
  - !3528 gio-tool-info: Move translator comments so they’re visible
  - !3530 gregex: set default max stack size for PCRE2 JIT compiler to 512KiB
  - !3532 tests: Disable use of ptrace() in tests on BSD and macOS
  - !3533 ci: Only run pages CI job on scheduled job runs
  - !3534 ci: Further fix to pages CI job
  - !3535 Use 'meson setup' to configure
  - !3538 glib-unix: Accept O_CLOEXEC as well as FD_CLOEXEC in
    g_unix_open_pipe()
  - !3540 gio: Add gresource.dtd
  - !3541 gtestutils: Mention not ignoring SIGCHLD in g_test_trap_subprocess()
    docs
  - !3542 [th/gchildwatch-fail-message] gmain: improve g_warning() for failure
    in g_child_watch_dispatch()
  - !3543 [th/use-localtime-r] use localtime_r() in g_log_writer_format_fields()
  - !3545 gregex: if JIT stack limit is reached, fall back to interpretive
    matching
  - !3547 glib/gfileutils.c: use 64 bits for value in get_tmp_file()
  - !3550 glib/tests/asyncqueue.c: skip test_async_queue_timed in 2038 or later
  - !3553 Generate missing docs for out arguments
  - !3555 gkeyfile: Fix overwriting of GError

Overview of changes in GLib 2.77.2, 2023-08-12
==============================================

* Bugs fixed:
  - #3071 g_test_trap_subprocess and g_test_subprocess broken in 2.77.1 (Jonas
    Ådahl)
  - !3432 ci: Don’t run pipeline after merging a MR
  - !3520 Fix typos
  - !3521 GTree: Handle node counter overflow and return it as an unsigned value
  - !3523 gspawn, gdataset: Restore nullable callback functions

Overview of changes in GLib 2.77.1, 2023-07-30
==============================================

* Fix some regressions with `GKeyFile` comment handling (#3047, work by Gaël Bonithon)

* Improve handling of query and fragment components in `file:` URIs (#3050, work by Lukáš Tyrychtr)

* Bugs fixed:
  - #473 systemtap probes for gvariant (Allison Karlitskaya)
  - #623 g_type_query() doesn't work for dynamic types (Philip Withnall)
  - #931 Optimise GPrivate by removing one malloc (Allison Karlitskaya)
  - #2929 gio: Failing build due to race generating glib/gversionmacros.h (Eric
    van Gyzen)
  - #3045 2.77.0: gio pkg-config test has incorrect install location for gio-
    querymodules & glib-compile-schemas (Philip Withnall)
  - #3047 2.77.0 changes formatting of keyfiles (Gaël Bonithon)
  - #3048 Forcing fallback for libintl does not work (Brendan Shanks)
  - #3050 g_file_new_for_uri() handles query strings incorrectly ("?") (Lukáš
    Tyrychtr)
  - #3054 Fedora installer (anaconda) crashes early with glib 2.77.0 due to
    "Attempt to unlock mutex that was not locked", when it runs `hwclock` and
    changes the system time (Thomas Haller, Philip Withnall)
  - !3287 Audit and fix incorrect use of (closure) in glib
  - !3461 gfileinfo: add file_path methods for language bindings
  - !3485 docs: Expand supported platforms documentation a little
  - !3494 ci: Manually fetch submodules for style-check CI jobs
  - !3495 gdbus-codegen: Error on invalid dbus types
  - !3496 garray: Fix typo in doc comment of g_ptr_array_sort[_with_data]()
  - !3499 strfuncs: Add missing ownership annotations for returned string
    vectors
  - !3504 Revert "build/gmodule-2.0.pc: Move compiler flags from Libs to Cflags"
  - !3505 meson: help gobject-introspection locate source and build dirs
  - !3509 build-sys: drop -mms-bitfields GCC flag
  - !3510 testutils: Use prctl PR_SET_DUMPABLE to silence core dumps on Linux
  - !3514 Revert "build-sys: drop -mms-bitfields GCC flag"
  - !3515 gnetworkmonitor: Expand guidelines for metered data use
  - !3517 tests: Add some more tests for g_type_query()
  - !3518 m4macros: drop unused m4 files

Overview of changes in GLib 2.77.0, 2023-07-06
==============================================

* Fix `GSocketClient` connecting to a proxy if the port is not specified
  (#2832, work by Michael Catanzaro)

* Support using `copy_file_range()` in `g_file_copy()`, if available (#2863,
  work by Philip Withnall)

* Improve handling of comments above groups in key files (#2927,
  work by Gaël Bonithon)

* Re-upgrade missing attribute debugs to criticals in `GFileInfo` (#2951,
  work by Philip Withnall)

* Do not redefine NULL on C++ (#2973, work by Marco Trevisan)

* Make `g_signal_handlers_block_matched()` work for `G_SIGNAL_MATCH_ID`
  (#2980, work by Przemyslaw Gorszkowski)

* Fixes to support building with bionic libc better (#3008, work by Øyvind Kolås)

* Fix potential stack overflow in gspawn on macOS if open file limit is very
  high (#3024, work by Dario Saccavino)

* Fix support for `--force-fallback-for libpcre` in meson configuration (#3025,
  work by Marius Kintel)

* Generate specific marshallers in `gdbus-codegen` (#3028, work by Marco Trevisan)

* Fix build failure on Android with `statx()` support (#3039, work by Philip Withnall)

* Improve locking performance of `GSignal` (!2824, work by Marco Trevisan)

* Improve locking performance of `g_main_context_iterate()` (!3235, work by
  Marco Trevisan)

* Add an inline definition of `g_free()` to automatically use `g_free_sized()`
  if available (!3252, work by Marco Trevisan)

* Fix race with `waitpid()` and `GChildWatchSource` (!3353, work by Thomas Haller)

* Add `glib_valgrind_suppressions` variable to glib pkg-config file (!3361, work
  by Marco Trevisan)

* Fix build on macOS SDK 10.11 (!3385, work by Peter Williams)

* Switch to using a separate thread pool and support timeouts in
  `GThreadedResolver` (!3397, work by Philip Withnall)

* Track pending `GTask`s if `G_ENABLE_DEBUG` is defined (!3404, work by Philip Withnall)

* Support GSignal fast path and more marshallers in `gobject_gdb.py` (!3437,
  work by Nelson Ben)

* Disable the macOS CI because it’s too unreliable — if you rely on GLib working
  on macOS, please get in touch and do something to help! (!3463, decision taken
  by Philip Withnall)

* Bugs fixed:
  - #65 glib-mkenums: parse_trigraph() chokes on quoted commas (Emmanuel Fleury)
  - #95 GMarkupParser documentation completion (David King)
  - #98 g_get_current_dir SIGSEGV on long path (Philip Withnall)
  - #104 Invocation of the interface "g_key_file_remove_comment" does not remove
    comment in specific case (Gaël Bonithon)
  - #116 Document UTF-8 behaviour and requirements throughout GLib (Philip
    Withnall)
  - #252 Disagreement between runtime and docs on whether interfaces are
    "classed" (Philip Withnall)
  - #322 gdbus-example-proxy-subclass.c is not complete. (Colin Walters)
  - #799 GAppInfoMonitor documentation deficiencies (Philip Withnall)
  - #1264 Use-after-free under
    send_message_with_reply_cleanup():gdbusconnection.c:1792 (Philip Withnall)
  - #2289 Document clearly that libgio is not guaranteed to be safe to use in
    setuid processes (Philip Withnall)
  - #2307 mainloop test leaks a GMainLoop object (Philip Withnall)
  - #2829 "glib-compile-resources --dependency-file=DEPFILE" creates wrong set
    of dependencies (Michael Catanzaro)
  - #2832 GSocketClient cannot proxy connect unless default port is explicitly
    specified in proxy URL (Michael Catanzaro)
  - #2855 gio/tests/socket-client.c name is too confusing because it does not
    use GSocketClient (Mike Salmela)
  - #2861 Check for __kernel_long_t when enabling futex()
  - #2863 Use copy_file_range() whenever possible in g_file_copy (Philip
    Withnall)
  - #2864 Documentation mentions non-existing function `g_value_free` (Philip
    Withnall)
  - #2879 Job #2498619 failed: gio/tests/socket.c:1654:test_reuse_tcp: assertion
    failed (error == (g-io-error-quark, 33)): error is NULL (Philip Withnall)
  - #2927 GKeyFile: Inconsistent behavior of comment writing above a group (Gaël
    Bonithon)
  - #2939 mkenums.py test fails on FreeBSD (Philip Withnall)
  - #2951 Re-upgrade missing attribute debugs to criticals in GFileInfo (Philip
    Withnall)
  - #2952 Not clear that GPollableInputStream methods are undefined if
    can_poll() returns FALSE (Philip Withnall)
  - #2953 Missing docs for GOption (commandline parser) (Sam Thursfield)
  - #2958 nbd server fails with glib 2.76.0
  - #2960 GDebugControllerDBus wrong default in documentation (Philip Withnall)
  - #2963 Probably wrong information regarding G_PLATFORM_WIN32 in
    README.win32.md
  - #2965 test_measure fails with coreutils 9.2 (Joan Bruguera)
  - #2966 Multiple Definition Error When Generating gio/tests/test5.gresource
    (Dan Yeaw)
  - #2969 user docs: GLib.DateTime.format: broken highlighting (Philip Withnall)
  - #2972 GtkFileLauncher: generated paths not recognized on Win32 (Luca Bacci)
  - #2973 Build failed due to NULL pointer redefinition in C++ (Marco Trevisan
    (Treviño))
  - #2980 g_signal_handlers_block_matched does not work for G_SIGNAL_MATCH_ID
    (Przemyslaw Gorszkowski)
  - #2982 Build randomly fails with: 'gmodule/gmodule-visibility.h' file not
    found (Marco Trevisan (Treviño))
  - #2993 g_dbus_interface_skeleton_get_vtable misses transfer annotation and is
    not introspectable
  - #2997 g_assert_cmpuint() should display positive, not negative values (Eric
    Blake)
  - #3003 glib-compile-schemas failed on directory name with no Latin symbols
    (Daniyar Tleulin)
  - #3007 GOptionContext group headings missing colon at the end (Philip
    Withnall)
  - #3008 Adaptations for building with bionic libc under termux (Øyvind Kolås)
  - #3020 Races in gio/tests/portal-support-snap* tests
  - #3024 Possible stack overflow in gspawn on MacOS
  - #3025 libpcre and libintl cannot be chosen to use the builtins
  - #3027 action exporter fails in the presence of actions with maybe parameter
    types (Matthias Clasen)
  - #3028 gdbus-codegen should generate marshallers (Marco Trevisan (Treviño))
  - #3030 Document GListModel requiring unique instance pointers from
    GListModelInterface.get_item (Christian Hergert)
  - #3034 futex based g_mutex_lock sometimes splatters errno with EAGAIN on
    contended locks
  - #3039 Build failure due to statx fields with NDK r25.c (Philip Withnall)
  - #3040 gtester in custom_target() run against system rather than built
    libglib during build
  - !2824 gsignal: Reduce lock/unlock pairs and ensure we always work on valid
    signal nodes
  - !3146 Make GVariant/GHash opaque types compatible with CHERI
  - !3235 gmain: Avoid some lock/unlock dance during g_main_context_iterate
  - !3252 gmem: Add an inline definition of g_free() to automatically use
    g_free_sized()
  - !3289 Work around an UCRT issue with _wspawn() functions taking an envp
    block
  - !3306 gregistrysettingsbackend: Allow a different root key path
  - !3308 doc: Workaround missing API index
  - !3314 gmain: More explicitly document g_main_context_release() prereqs
  - !3326 unicode: add tests for g_utf8_normalize() and empty strings
  - !3333 build: Drop old .gitignore files from test directories
  - !3335 meson: allow -Dlibelf=enabled without pkg-config
  - !3337 gio-tool-info: Fix a duplicate attribute name in the UI
  - !3340 meson: Move msvc_recommended_pragmas.h to a subdirectory
  - !3341 g_utf8_normalize: don't read past the end of the buffer
  - !3342 Add fuzzing harness for g_utf8_normalize()
  - !3344 tools: Drop check-abis.sh script
  - !3345 docs: Drop section about default branch renaming from README.md
  - !3347 gsocket/inotify/gwakeup: Use SOCK_NONBLOCK and O_NONBLOCK to avoid
    fcntl() syscalls where possible
  - !3351 tests: Update Unicode normalisation tests from Unicode 15
  - !3352 meson: Fix detection of a system-provided proxy-libintl
  - !3353 [th/child-watch-waitpid] fix race with waitpid() and child watcher
    sources
  - !3356 build/gmodule-2.0.pc: Move compiler flags from Libs to Cflags
  - !3357 Make clang++ happier when using G_STATIC_ASSERT
  - !3361 meson: Add glib_valgrind_suppressions variable to glib pkg-config file
  - !3365 gwin32: Avoid use of function call with side effect in g_return_*
    macro
  - !3366 Add init macros for refcounting types
  - !3367 actiongroup: Add a compiler warning
  - !3371 Explicitly mark size parameter as (in)
  - !3377 gsignal: Clarify documentation for GSignalMatchType matching
  - !3378 build: Post-release version bump
  - !3381 gtimer: Avoid doing anything on g_usleep (0)
  - !3382 gsocket: Explicitly mark size parameter as (in)
  - !3383 add g_timeout_add_seconds_once
  - !3384 Test g_signal_handlers_disconnect_matched for G_SIGNAL_MATCH_ID match
  - !3385 gio: fix build on older macOS SDKs
  - !3388 appmonitor: Skip the test under OSX
  - !3389 glib/tests/[rec-]mutex: Allow each thread to work
  - !3390 Fix error format in gio/gunixconnection.c (part 2)
  - !3392 gvariant: Fix doc for g_variant_new_object_path
  - !3393 Fix small issues in docs
  - !3395 gtask: Document that g_task_run_in_thread() uses a shared resource
  - !3396 glib-unix: Improve documentation for g_unix_fd_source_new()
  - !3397 gthreadedresolver: Switch to using a separate thread pool and support
    timeouts
  - !3398 Avoid having g_futex_simple() inadvertently modify errno
  - !3399 meson: wrap html documentation generation with gtk_doc option
  - !3400 restore error messages in gunixconnection while maintaining older
    compiler support
  - !3401 ci: Disable the Coverity CI job
  - !3404 gtask: Track pending GTasks if G_ENABLE_DEBUG is defined
  - !3405 gthreadedresolver: Remove some incorrect assertions
  - !3406 gthreadpool: Clarify that item_free_func is not normally called
  - !3407 gregistrysettingsbackend: Remove translatable pspec nick/blurb
  - !3408 docs: Update/Drop txt documents from docs directory
  - !3409 docs: Don’t ignore gunixfdlist.h when building docs on Windows
  - !3410 tests: Add descriptions to environment tests
  - !3416 gtestutils: Fix section marker in documentation
  - !3418 docs: Add lb90 as a Windows maintainer
  - !3419 docs: Update various broken/redirected links and fix list formatting
  - !3420 gtestutils: print timing information per test case in TAP output
  - !3421 glib/tests/fileutils:fix asserts when running as root
  - !3422 Check for linux/netlink.h buildability
  - !3423 gstring: add g_string_new_take
  - !3425 gwin32networkmonitor: Fix returning address of local variable
  - !3426 gdataset, gobject: Use atomic compare and exchange full to set
    pointers
  - !3429 Rename GTK+ to GTK (mostly comments and documentation)
  - !3430 gobject_gdb.py: fix regression caused by bfbe7127d5
  - !3431 gfile: Ensure loff_t is defined on FreeBSD
  - !3435 Ignore g_task_print_alive_task() when introspecting GIO
  - !3437 gobject_gdb.py: support gsignal fastpath and detect more marshallers
  - !3438 gio: Check cancellable iterating local file enumerator
  - !3439 gstring: Add `Since` marker to `g_string_new_take()`
  - !3440 gutf8: Add a g_utf8_truncate_middle() function
  - !3441 Allow proper introspection of GTypeValueTable
  - !3442 gio: Add g_file_new_build_filenamev
  - !3448 meson: try iconv in libintl lookup
  - !3449 docs: Move README.win32.md to the docs folder and update
    CONTRIBUTING.md
  - !3450 gactionmap: Add g_action_map_remove_action_entries()
  - !3453 docs: Use the type name as the section name for GKeyFile
  - !3455 gfileinfo: add (type filename) annotation to symlink_target functions
  - !3456 gmain: Document that g_steal_fd() preserves errno
  - !3458 gstdio: Improve documentation of some functions as async-signal safe
  - !3462 tests: Reduce thread and iteration count on CI for /thread/rec-mutex3
  - !3463 ci: Disable the macOS CI
  - !3465 gobject_gdb.py: adapt to recent gsignal changes
  - !3466 resolver: Add space in documentations
  - !3470 pcre subproject fixes: Allow fallback & static build
  - !3471 gio-tool-mount: Add option to show progress when unmounting
  - !3472 tests: Fix an intermittent timing error with testing g_usleep(0)
  - !3477 gdbus-codegen: Fix some minor typos in the documentation
  - !3484 docs: Fix a typo in the backports policy
  - !3486 docs: Document issue and merge request triaging and review guidelines
  - !3488 codegen: Use g_signal_emit to emit signals
  - !3489 guniprop: fix param direction in g_unichar_get_mirror_char(), for
    introspection
  - !3490 gobject/tests: Fix running on 32-bit Windows
jperkin pushed a commit that referenced this issue Nov 6, 2023
Overview of changes in gnome-calculator 45.0.1
    * Retagging release

Overview of changes in gnome-calculator 45.0
    * Search provider performance improvements !154, !155, !156 (Christian Hergert)
    * Use numeric font instead of monospace #290 (Robert Roth)
    * Fixed electron-volt unit abbreviation #347 (Robert Roth)
    * Fixed erroneous Joule unit name #348 (Robert Roth)
    * Fixed missing build dependency !157 (Jeremy Bicha)

Overview of changes in gnome-calculator 45.beta
    * Fixed variable and function popover reverse typing #335, #320 (Robert Roth)
    * Better left/right cursor key handling !153 (Seth Falco)
    * Improved toolbar using Adwaita library !151 (Felipe Kinoshita)
    * Flatpak build improvements (Robert Roth)

Overview of changes in gnome-calculator 45.alpha
    * Remember window size #328 !146 (Leonard K, Alice Mikhaylenko)
    * Allow opening Main Menu by pressing F10 !142 !149 (Automeris naranja)
    * Extend bit-shifting limit #306 !143 (J Sory)
    * Added new energy units !143 (J Sory)
    * Added TWD support via Bank of Canada rates #27 !148 (Mário Adriano)
    * Added legal section for exchange rate source attribution (Robert Roth)
    * Added United Nations Treasury exchange rate datasource (Robert Roth)
    * Added Jamaican Dollar currency #291 (Robert Roth)
    * Added Ukrainian hryvnia currency #278 (Robert Roth)
    * Added Nigerian Naira currency #142 (Robert Roth)
    * Changed symbolic icon to C on the clear button #336 (Robert Roth)
    * Dropped VEF currency support #78 (Robert Roth)
    * Use new vala-nightly SDK extension for flatpak (Robert Roth)

Overview of changes in gnome-calculator 44.beta
    * Improved factorization !141 (J. Sory)
    * Number format selection documentation improvements #321 (Robert Roth)
    * Made builtin function descriptions translatable #323 (Robert Roth)
    * Fixed display showing 0 on startup #318 (Robert Roth)
    * Improved button tooltips !132 (sunflowerskater)
    * Added signed int support to programming mode !110 (Erik Wolf)
    * i and e constants updated according to ISO 80000-2:2009 !137 (majjejjam)
    * Help overlay updates !133 (Sabri Ünal)
    * Added preferences shortcut !129 (Sabri Ünal)
    * Destroy dialog after clicking cancel #310 (Jaycee Santos)

Overview of changes in gnome-calculator 43.0.1
    * Fixed appdata versioning (Robert Roth)

Overview of changes in gnome-calculator 43.0
    * Removed old issue tracker references !128 (Jake Dane)

Overview of changes in gnome-calculator 43.rc
    * Fix crash when entering new function name !124 (Nathaniel Russel)
    * Fix source view border !121 (Alexander Mikhaylenko)
    * Flatpak build update !122 (Bartłomiej Piotrowski)
    * Port about window to libadwaita !119 (Christopher Davis)
    * Port to libsoup3 !120 (AppleME)

Overview of changes in gnome-calculator 43.alpha
    * Fixed broken undo/redo #266 (Robert Roth)
    * Make sure variable name definitions work with whitespace too (Robert Roth)
    * Fix translatable strings !116 (Maximiliano)
    * Fixed missing implicit multiplication with variable and root #279 (Robert Roth)
    * meson warning fixes (Robert Roth)

Overview of changes in gnome-calculator 42.2
    * Fixed incorrect history with bits toggling #281 (Robert Roth)
    * Fixed crash when typing in variable popover #282 (Robert Roth)
    * Fixed incorrect libxml usage #283 (Luca Bacci, Robert Roth)

Overview of changes in gnome-calculator 42.1
    * Fixed broken undo/redo #266 (Robert Roth)
    * Removed automatic closing brace addition #271 (Robert Roth)
    * Fixed incorrect percentage symbol precedence handling #236, #275 (Robert Roth)

Overview of changes in gnome-calculator 42.rc
    * Use new gnome post_install script !106 (Bobby Rong)
    * gcalc build fixes (Daniel Espinoza Ortiz)
    * Updated screenshots (Christopher Davis)
    * Set default focus to entry (Robert Roth)

Overview of changes in gnome-calculator 42.beta
    * Fixed build issues with GCI entry controller tests #250 (Robert Roth)
    * Force LTR in history view #252 (Robert Roth)
    * programing mode: Force bit digits to be always LTR #258 (Yosef Or Boczko)
    * Use AdwApplication (Alexander Mikhaylenko)
    * ui: Fix styles !105 (Alexander Mikhaylenko)

Overview of changes in gnome-calculator 42.alpha
    * build: Support flatpak development builds (Óscar Fernández Díaz)
    * build: migrated to GTK4 !98 (Cristopher Davis, Robert Roth)
    * entry: Added currencies completion provider (Robert Roth)
    * entry: Fixed percentage evaluation error #237 (Robert Roth)
    * internal: Moved history view from MathDisplay to MathWindow (Robert Roth)
    * window: set default width for basic and keyboard mode #240 (Robert Roth)
    * buttons: removed destructive action class from clear button #242 (Robert Roth)
    * converter: search support in unit selector, separate conversion category selector #108 (Robert Roth)

Overview of changes in gnome-calculator 41.0
    * Use first translated symbol for conversion with button #219 (Robert Roth)
    * Appdata includes hardware support information (Adrien Plazas)

Overview of changes in gnome-calculator 41.alpha
    * Adaptive preferences window !85 (Adrien Plazas)
    * Fixed currency conversion using convert button #216 (Robert Roth)
    * User interface reworked, adaptive UI !81 (Adrien Plazas)
    * Enlarged calculator icon in help !82 (Sabri Ünal)
    * Code cleanup (Robert Roth)
    * Fixed kilohertz shorthand !87 (scootergrisen)
    * Fixed donation link !88 (René Genz)
    * Added support using calculator without currency conversion for privacy !89 (Ray Strode)
    * Added support for function description of custom functions using @ !90 (Martin Jirku)

Overview of changes in gnome-calculator 40.rc
    * Resize window after switching mode !78 (joshas)
    * Fixed compilation warnings (Robert Roth)
    * Support offline currency conversion tests #208 (Robert Roth)
    * Use official unit on conversion button click #207 (Robert Roth)
    * Fixed temperature unit typos #211 (Robert Roth)
    * Ellipsize conversion labels #17 (Robert Roth)
    * Added Ctrl+Delete shortcut for clearing the current equation #187 (Robert Roth)
    * Allow multiple decimal points #166. #5 (Robert Roth)
    * Added Ctrl+O shortcut for degrees symbol (Robert Roth)
    * Use gtk-sourceview 4.8 !80 (Robert Roth)

Overview of changes in gnome-calculator 40.beta
    * Fixed CI build (Robert Roth)
    * Fixed issues with initial loading of currencies (Robert Roth)
    * Rework currency retrieval preparing for currency provider plugins (Robert Roth)
    * Fixed commandline conversions #33 (Robert Roth)
    * Added currency conversion tests (Robert Roth)
    * Added support for frequencies conversion (Dave Hulst)
    * Added support for converting to and from weeks (Dave Hulst)
    * Added support for converting to and from centuries and decades (Dave Hulst)
    * Increase buttons font size #201 (Robert Roth)
    * Added % button to Advanced mode (Dave Hulst)
    * Show 4 decimals in converter instead of only two #203 (Robert Roth)
    * Added style classes to buttons !76 (Dave Hulst)

Overview of changes in gnome-calculator 40.alpha
    * Use libhandy for window and headerbar !69 (Cristopher Davis)
    * Use C instead of Clr in help !70 (scootergrisen)
    * Fixed broken currency conversion on first start #199 (Robert Roth)
    * Removed duplicate word from help #198 (Robert Roth)
    * Added lbs shortcut for pounds conversion (Robert Roth)
    * Fixed inconsistent word size (A. M. Roswell)
    * Removed unused trunc button from programming mode #41 (Robert Roth)
    * Fixed deprecation warnings
    * Added Serbian Dinar with fixed rate #49 (Robert Roth)
    * Added Bangladeshi Taka with fixed rate #191 (A. M. Roswell)
    * Updated mailing list contact to Discourse (Robert Roth)
    * Added basic help page for programming mode (A. M. Roswell)
    * Added insert character code button (A. M. Roswell)
    * Dim inapplicable bits on word size change #189 (A. M. Roswell)
    * Make the conversion labels selectable (Robert Roth)
    * Do not convert on swap #170 (Robert Roth)
    * Word size changer in programming mode !58 (A. M. Roswell)
    * Added metric cups conversion unit !53 (Lucy Coleclough)
    * Fixed astronomical unit conversion !51 (Thomas Nilsson)
    * Fixed feet-based units name, added mph and kph shortcuts #180 (Robert Roth)
    * Use shell copy to clipboard action #178 (Robert Roth)
    * Fixed preferences of angle units !56 (Delton Ding)

Overview of changes in gnome-calculator 3.38.0

Overview of changes in gnome-calculator 3.37.92

Overview of changes in gnome-calculator 3.37.90
    * Add tooltips for bits in programming mode !46 (Olliver Schinagl)
    * snap packaging updates (Ken VanDine)
    * Added link to website in About #155 (Robert Roth)
    * Added speed conversions !49 (Mathieu Heurtevin)
    * History view follows preferences #105, #159, #168 (Robert Roth)
    * Added month as time unit #158 (Robert Roth)
    * Better help for variables example usage #154 (Robert Roth)
    * Defined pi variable, added pi button in programming mode #153 (Robert Roth)
    * CI build fixes (Robert Roth)
    * Updated app icon !47 (Jakub Steiner)
    * Fixed bug returning empty string as result #152 (Robert Roth)
    * Support latex-style multiplication #164 (Robert Roth)
    * Added support for tau constant #46 (Robert Roth)
    * Unify constant handling (Robert Roth)
    * Separate UI files from sources (Robert Roth)
    * Moved number format selection to separate menu #24 (Robert Roth)
    * Replaces mode selector shortcuts with Ctrl+Alt (Robert Roth)
    * Clear answer if editing right before it #59, #161 (Robert Roth)
    * Moved preferences dialog to UI file (Robert Roth)
    * Refresh bits panel after calculation #38 (Robert Roth)
    * Removed past author addresses #174 (Robert Roth)

Overview of changes in gnome-calculator 3.36.0

Overview of changes in gnome-calculator 3.35.92
    * doc: Don't pass --fatal-warnings to valadoc (Rico Tzschichholz)
    * Removed obsolete keyboard shortcut #148 (Robert Roth)
    * help: Update icon for 3.36 (Andre Klapper)

Overview of changes in gnome-calculator 3.35.90
    * Drop padding around the display !40 (Adrien Plazas)
    * Updated Keyboard Shortcuts (Sabri Ünal)
    * Handle Escape and Enter correctly with completion #144 (Robert Roth)
    * Added F10 for primary menu shortcut #148 (Robert Roth)
    * Updated app icon !43 (Tobias Bernard)
    * Added Rack Units to the conversions !37 (Léo Gillot-Lamure)
    * Fixed freeze on calculating atan(+/-i) #139 (Robert Roth)
    * Fixed mode shortcuts by removing blocking mnemonics #138 (Robert Roth)
    * Implemented result history browsing using alt left/right #129 (Robert Roth)
    * Added translator comments for possible modes as command line arguments !38 (Rafael Fontenelle)

Overview of changes in gnome-calculator 3.35.3
    * Help updates (Andre Klapper)

Overview of changes in gnome-calculator 3.35.2
    * List possible modes in commandline help #112 (Robert Roth)
    * Add square feet unit #132 (Robert Roth)
    * Base conversion display selectable #123 (Robert Roth)
    * Created nightly icon (Jakub Steiner)
    * Snap build updates (Heather Ellsworth)
    * GCalc library code fixes (Rico Tzschichholz, Daniel Espinoza Ortiz)
    * Update required meson version (Diego Escalante Urrelo)
    * Adapt code to changed gtk+-3.0 bindings (Rico Tzschichholz)
    * Added GCi libary and tests for controllers for widgets (Daniel Espinoza Ortiz)
    * Solve on = key if input isq not a variable name #22 (Alberto González Palomo)

Overview of changes in gnome-calculator 3.33.92
    * README updates (Roger)

Overview of changes in gnome-calculator 3.33.90
    * Flatpak build cleanup (Jordan Petridis)
    * Debug messages cleanup (Daniel Espinosa Ortiz)

Overview of changes in gnome-calculator 3.33.3
    * calculator library build fixes (Daniel Espinosa Ortiz)
    * CI build fixes (Ken VanDine)
    * Added mnemonics for primary menu items #113 (Robert Roth)
    * Dropped leading zeros octal prefix #114, #109, #110 (Robert Roth)

Overview of changes in gnome-calculator 3.33.2
    * Separated calculator library !19 (Daniel Espinosa Ortiz)
    * Ensure icon is available for shell (Ken VanDine)
    * Support entering left/right shift with keyboard #98 (Robert Roth)
    * Fixed CFA conversion rate #102 (Robert Roth)
    * Remove copy icon from search provider results #103 (Robert Roth)
    * Do not assume octal base for binary numbers #101 (Robert Roth)
    * Show thousands separator in unit converter #102 (Robert Roth)
    * Use currency name instead of display name for conversion #106 (Robert Roth)
    * Quit warns and closes all windows #51 (Robert Roth)
    * Avoid normalizing the equation twice in search #104 (Pascal Nowack)
    * Ignore keypresses while calculating results #47 (Robert Roth)
    * Only allow one decimal point in numbers #5 (Robert Roth)
    * Application icon updated in help (Andre Klapper)
jperkin pushed a commit that referenced this issue Nov 7, 2023
[2.1.0] - 2023-10-30

Features & Improvements

    Added support for Python 3.12 #379
    Added CONTRIBUTING.md document #331
    Added tests/ directory to sdist artifact #327

Bug fixes

    Fixed subcommand completions for Fish #359
    Removed deprecated -A option from Fish completions #366
    Fixed program name discovery in completions script when running as module #231
    Fixed ANSI coloring detection in virtual terminal environments (Windows, PyCharm) #104
    Fixed terminal size detection #299
jperkin pushed a commit that referenced this issue Feb 9, 2024
2.78.1 (stable):

Glib:
* Dispatcher: Allow destroy during emit
  (Kjell Ahlstedt) Issue #116 (PBS)

gmmproc:
* h2def.py: Make return types that are unsigned work.
  Required by gtkmm4, GdkDmabufTextureBuilder
  (Kjell Ahlstedt)

Build:
* Meson build: Don't fail if warning_level=everything
  (Daniel Boles, Kjell Ahlstedt) Merge request gtkmm!87
* MSVC, NMake: Make dep paths configurable
  (Chun-wei Fan)


2.78.0 (stable):

Glib:
* ustring: Add a std::hash<> specialization
  Not included by #include <glibmm.h>.
  Activate with #include <glibmm/ustring_hash.h>.
  (Kjell Ahlstedt) Issue #16 (Murray Cumming), merge request !61


2.77.0 (unstable):

Glib, Gio:
* Use callback functions with C linkage
  (Kjell Ahlstedt) Issue #1 (Murray Cumming)

Glib:
* Add create_variant()
  (Kjell Ahlstedt) Issue #109 (ilya-fedin)
* Add VariantBase::get_dynamic()
  (Kjell Ahlstedt) Issue #110 (ilya-fedin)
* Variant: Provide Variant<long long> whenever possible
  (Kjell Ahlstedt) Issue #111 (ilya-fedin)
* VariantContainerBase: Add a const version of get_child()
  and deprecate the non-const version
  (Kjell Ahlstedt) Issue #112 (ilya-fedin)
* Add DBusHandle and Variant<DBusHandle>
  (Kjell Ahlstedt) Issue #113 (ilya-fedin)
* ustring: Add truncate_middle()
  (Kjell Ahlstedt)

Gio:
* Add Subprocess and SubprocessLauncher
  (Kjell Ahlstedt) Issue #106 (ilya-fedin)
* Resolver: Add set/get/property_timeout()
  (Kjell Ahlstedt)

Documentation:
* Gio::File: Fix various spelling errors
  (Daniel Boles)
* Remove AUTHORS and README.SUN; add info to README.md
  (Kjell Ahlstedt) Issue gtkmm#140

gmmproc:
* Generate callback functions with C linkage
  (Kjell Ahlstedt) Issue #1 (Murray Cumming)

Examples:
* Add subprocess example
  (Kjell Ahlstedt) Issue #106 (ilya-fedin)

Tests:
* Giomm tests: Test for /etc/passwd instead of /etc/fstab
  (Jeremy Bicha) Merge request !60

Build:
* Require glib-2.0 >= 2.77.0
* Autotools build: Don't include config.h in ustring.cc
  (Kjell Ahlstedt)


2.76.0 (stable):

Glib:
* Dispatcher: Don't warn when a Dispatcher is deleted while
  messages are pending.
  (Kjell Ahlstedt) Issue #108 (PBS)
* Dispatcher: Add const versions of emit() and operator()()
  and deprecate the non-const versions.
  (Kjell Ahlstedt) Issue #103 (PBS)

Gio:
* ListModel: Add get_typed_object()
  (Kjell Ahlstedt) See issue gtkmm#132


2.75.0 (unstable):

Glib:
* Module: Deprecate build_path()
* Binding: Fix the bind_property() with two transformation functions
* Add the GLIBMM_CHECK_VERSION() preprocessor macro
  (Kjell Ahlstedt)

Gio:
* NetworkMonitor::get_default(): Add refreturn
  (Kjell Ahlstedt) Issue #104 (ilya-fedin)
* AppInfo: Add get_[recommended|fallback]_for_type()
  (Kjell Ahlstedt) Issue #105 (ilya-fedin)
* Add BytesIcon
  (Kjell Ahlstedt) Issue #107 (ilya-fedin)
* ListStore: Rename a local variable
  (Chun-wei Fan) Merge request !59
* Settings: Add bind() with mapping functions and unbind()
  (Kjell Ahlstedt)

Documentation:
* Glib::Binding::unbind(): Fix documentation
  (Kjell Ahlstedt)

gmmproc:
* generate_wrap_init.pl.in: Disable warning C4273 on Visual Studio
  (Chun-wei Fan) Merge request !57

Tests:
* Fix giomm_simple test on Windows
  (Chun-wei Fan) Merge request !58

Meson build:
* Detect if we build from a git subtree
  (William Roy) Merge request gtkmm!72
  (Kjell Ahlstedt) Issue gtkmm#131 (William Roy)
* Don't copy files with configure_file()
  (Kjell Ahlstedt)


2.74.0 (stable):

Gio:
* ListStore: Add find()
* File: Add create_tmp()
  (Kjell Ahlstedt)

Documentation:
* File: Document create_for_parse_name()
  (Kjell Ahlstedt)


2.73.2 (unstable):

Glib:
* ustring: Add release()
  (Kjell Ahlstedt) Issue #101 (PBS)

Gio:
* ListStore: Don't derive a gtkmm__GListStore GType
  (Kjell Ahlstedt) Issue glib#2661
* DBus::Proxy: get_connection(), get_interface_info(): Add refreturn
  (Kjell Ahlstedt) Issue #102 (우정모)
* AppInfo: Add get_default_for_type_async/finish(),
  get_default_for_uri_scheme_async/finish()
* File: Add make_symbolic_link_async/finish()
* ListStore: Add property_n_items()
* Resolver: Add lookup_by_name_with_flags(),
  lookup_by_name_with_flags_async/finish()
  (Kjell Ahlstedt)

Documentation:
* Glib::RefPtr: Improve the documentation
  (Kjell Ahlstedt) Issue gtkmm#119 (David Marceau)
* Gio::Action: Improve the documentation
  (Kjell Ahlstedt) Issue #100 (Diederik van Lierop)

gmmproc:
* Improved handling of final types
  (Kjell Ahlstedt) Issue glib#2661
* Improve handling of gi-docgen syntax in C documentation
  (Kjell Ahlstedt)

Build:
* Meson build: Avoid unnecessary configuration warnings
  (Kjell Ahlstedt)
* Meson/MSVC: Add more warnings to ignore
  (Chun-wei Fan)
* NMake Makefiles: Ensure g[lib|io]mm[config.h|.rc] are created
  (Chun-wei Fan) Issue #99 (Martin Ammermüller)
* Require glib-2.0 >= 2.73.2
  (Kjell Ahlstedt)


2.72.1 (stable):

Glib:
* ustring_Iterator: Don't declare copy constructor =default.
  A fix in the 2.72.0 release broke ABI.
  (Kjell Ahlstedt) Issue #98 (Scotty Trees)


2.72.0 (stable):

Glib:
* MainContext: Add create(MainContextFlags flags)
  (Kjell Ahlstedt)

Gio:
* Add AppInfoMonitor
  (Kjell Ahlstedt, technic93) Issue #97
* DBus::Proxy: signal_signal() accepts a signal name
* File: Add move_async() and move_finish()
* SocketClient: Deprecate set/get/property_tls_validation_flags()
* TlsCertificate: Add properties private_key, private_key_pem,
pkcs11_uri, private_key_pkcs11_uri. Fix the create*() methods.
* TlsClientConnection.hg: Deprecate set/get/property_validation_flags()
  (Kjell Ahlstedt)

gmmproc:
* Add "ignore_deprecations" argument in _WRAP_METHOD()
  (Kjell Ahlstedt)

Build:
* Require glib-2.0 >= 2.71.2
  (Kjell Ahlstedt)
* MSVC build: Support VS2022 builds
  (Chun-wei Fan)
* Meson build: Specify 'check' option in run_command()
  Require Meson >= 0.55.0
  (Kjell Ahlstedt)


2.70.0 (stable):

Glib:
* Timer: Add resume() and is_active()
  (Kjell Ahlstedt) Issue #87 (chamignoom)
* Add the Environ class
  (Kjell Ahlstedt) Issue #89 (Alexander Shaduri)
* Binding: Add dup_source(), dup_target().
    Deprecate get_source(), get_target().
  TimeZone: Add operator bool(), create_identifier(). Deprecate create().
  (Kjell Ahlstedt)

Gio:
* FileInfo: Add get/set_access_date(), get/set_creation_date().
  Notification: Add set_category().
  TlsCertificate: Add property/get_not_valid_before(),
    property/get_not_valid_after(), property/get_subject_name(),
    property/get_issuer_name().
  TlsConnection: Add property/get_protocol_version(),
    property/get_ciphersuite_name().
  (Kjell Ahlstedt)

Tests:
* Add test of Glib::Environ
  (Kjell Ahlstedt) Issue #89 (Alexander Shaduri)

gmmproc:
* Handle gi-docgen syntax in C documentation
  (Kjell Ahlstedt)

Build:
* Require glib-2.0 >= 2.69.1
  (Kjell Ahlstedt)


2.68.2 (stable):

Glib:
* Replace all g_quark_from_static_string() by g_quark_from_string()
  (Kjell Ahlstedt) Issue #96 (小太)

Gio:
* FileEnumerator: Remove refreturn to avoid memory leak
  (talisein) Merge request !53
* ListModel::get_object(): Make it work for interface classes
  (Kjell Ahlstedt) Issue #93 (pumkinpal)
* AppInfo::get_all(): Avoid a crash on Windows
  (Kjell Ahlstedt) Issue #94 (Lawrence37)

Build:
* MSVC build: Remove extraneous GLIBMM_API in Glib::ustring
  (Kjell Ahlstedt) Issue #92 (Christoph Reiter)
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 May 3, 2024
5.2.1
    Using time-manager v0.1.0. #115

5.2.0
    Using http-semantics #114
    Header of http-types should be used as high-level header.
    TokenHeader of http-semantics should be used as low-level header.
    Breaking change: encodeHeader takes Header of http-types.
    Breaking change: decodeHeader returns Header of http-types.
    Breaking change: HeaderName as ByteString is removed.

5.1.4
    Using network-control v0.1.

5.1.3
    Defining SendRequest type synonym. #111

5.1.2
    Make ping rate limit configurable #108

5.1.1
    Deal with RST_STREAM in HalfClosedLocal state #107

5.1.0
    Drop frames after reset #106
    BREAKING CHANGE: Use String for Authority #105
    Properly close streams #104

5.0.1
    Allowing bytestring 0.12.

5.0.0
    Using the network-control package.
    The limits of resources can be specified in ServerConfig and ClientConfig.
    Open streams based on peer's MaxStreams.
    Rejecting Data if it is over the receiving limit.
    Informing MaxStreams properly.
    Informing WindowUpdate properly.
    New API: Server.Internal.runIO and Client.Internal.runIO.
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 Jun 14, 2024
1.6.1 (2024-06-12)

* Fix typo in readme.md (#103)
* Include invalid duration in error message. (#104)

1.6.2 (2024-06-12)

* Support conversion of T_BIGNUM. (#105)
* Rename Timers::Handle#offset to #time as it's more accurate. (#106)
* Conditionally include <sys/wait.h> for WNOHANG. (#107)
  - On some systems it's not present.
jperkin pushed a commit that referenced this issue Jul 20, 2024
Based on PR 58426 by jonathan buschmann.

## 2.4.7 2024-05-05

### Fixed
- docs(pop): clarify --spill behavior (#445)
- fix(branch): disallow branch before subcommand (#447)

### Changed
- refactor: get gix-command via gix with command feature
- Update gix to version 0.62


## 2.4.6 2024-04-07

### Fixed
- fix(bash): fix completion for "committish"

### Changed
- docs: Update copyright year
- chore: update gix to 0.61.1
- ci: update to wix 4.0.5


## 2.4.5 2024-02-18

### Fixed
- fix: stdout from hooks (#418)

### Changed
- chore: add category and keywords to Cargo.toml
- build: exclude some paths from crate
- docs(readme): enumerate more package repositories
- chore: update dependencies


## 2.4.4 2024-02-11

### Fixed
- fix: pass stdio for interactive editing (#415)
- fix: update gix-tempfile and gix-lock to 13.1.0 (#413)

### Changed
- chore: update dependencies


## 2.4.3 2024-02-04

### Added
- feat(branch): allow delete of current branch

### Fixed
- fix(branch): delete branch config with branch
- fix: use gix-command for interactive edit (#407)
- fix: improved interactive editor diagnostics
- chore: update gix to 0.58.0 (#407)
- docs: fix dates in changelog

### Changed
- refactor(branch): use gix to rename config section
- refactor: use gix to remove stgit branch config
- refactor: use gix-command for hooks
- refactor: use non-deprecated indexmap methods
- ci: update cargo-generate-rpm to 0.14.0
- ci: update to upload-artifact@v4
- ci: restore use of IO::Pty in MacOS build


## 2.4.2 2023-12-26

### Changed
- feat(pop): allow unescaped negative patch offsets
- feat(show): allow unescaped negative patch offsets
- chore: update dependencies


## 2.4.1 2023-12-10

### Fixed
- fix(zsh): short -r opt for `stg series`

### Changed
- chore: update gix to 0.56.0
- chore: update transient dependencies


## 2.4.0 2023-10-08

### Added
- feat(delete): --all -A -U -H options
- feat(sink): -T/--above option
- feat(branch): short opts for clone and delete


## 2.3.3 2023-10-04

### Fixed
- fix(zsh): -S option for float, import, and sync
- build: avoid non-portable install options
- test: improved test script portability

### Changed
- update dependencies


## [2.3.2] 2023-08-19

### Fixed
- fix!(uncommit): check for HEAD/top mismatch (#360)
- docs: docstring spelling and formatting fixes

### Changed
- feat(uncommit): print uncommited patches
- pin serde to avoid using precompiled binary
- update dependencies


## [2.3.1] 2023-07-25

### Fixed
- fix(zsh): typo in completion help for stg commit --all
- fix: use canonical Message-ID spelling
- fix(stgit.el): recognize new empty patch marker
- fix(import): Keep first line break in body

### Changed
- update dependencies


## [2.3.0] 2023-05-25

### Removed
- import-compressed is always enabled, no longer a feature

### Added
- unofficial deb and rpm packages
- msi package for Windows

### Fixed
- fix(import): would panic without import-url feature
- fix(import): patch numbers not stripped from name

### Changed
- use bzip2-rs instead of bzip2 crate
- update dependencies


## [2.2.4] 2023-05-15

### Added
- feat: Upgrade from ancient stack state formats (#235)

### Fixed
- fix(branch): create based on remote branch (#317)
- fix(import): lost subject lines resembling header (#321)
- fix(import): subject line may be discarded

### Changed
- chore: update dependencies


## [2.2.3] 2023-04-26

### Fixed
- fix: error using on Windows (#273)
- fix: path handling for Windows compatibility
- fix: commit-msg hook run from work root
- fix: avoid "stg.exe" in usage on Windows
- fix: use gitattributes to force LF endings on Windows
- fix: wrap hooks with sh on Windows

### Changed
- chore: update to gix 0.44.0
- chore: update other dependencies


## [2.2.2] 2023-04-01

### Fixed
- fix: rebase with '@' in ref names (#306)
- fix: improved error messages for unrecognized commands


## [2.2.1] 2023-03-29

### Changed
- chore: update to clap 4.2.0
- chore: update to gix 0.43.0
- chore: pin clap minor version

### Fixed
- fix(branch): allow reuse of partially deleted branch names (#290)
- fix(branch): branch list alignment
- fix: running hooks from worktree subdir (#295)
- fix: running from linked worktree (#297)
- fix(float): correct -S in usage string
- fix: correctly show bold command/subcommand in overidden usage


## [2.2.0] 2023-02-24

### Removed
- feat!: remove short -s option for --submodules
- fix!: patch name cannot be {base} or @

### Added
- feat: patch locator syntax
- feat: locate branches using @{-N} syntax
- feat(series): Add --reverse option
- feat(series): options for patch offsets and indices
- feat(series): --no-xxx options to override display options
- feat(series): optional value for --short
- feat!: short -s option for --signoff (#245)
- feat(init): add -b/--branch option

### Changed
- fix!: use -S as short opt for --series
- feat!: constrain refresh -p to visible patches
- feat(series)!: empty patch prefix changed to *
- feat!: spell errors in lowercase
- refactor: use gitoxide instead of git2
- refactor: use time crate instead of chrono
- feat!: update to clap 4.1
- chore: update to latest dependencies

### Fixed
- fix: Error if author or committer is not configured
- fix: Use correct base directory for core.hooksPaths
- fix(rename): colliding patch names
- fix(rebase): repair rebasing to a tag (#265)
- fix(branch): switch branch with detached head
- docs: Repair docstrings being confused as html
- docs: normalized spelling for --branch value


## [2.1.0] 2022-12-12

### Added
- feat: Configurable push conflict policy (#60)
- feat: Add --committer-date-is-author-date option (#47)
- feat(import): Add --3way option (#36)
- feat(import): Add --directory option (#36)

### Changed
- feat!: Relaxed stack initialization (#238)
- feat!: Only sign stack based on stgit.gpgsign (#238)
- fix!: Allow "---" separator in messages (#243)
- feat: More descriptive push conflict message (#60)
- feat: Avoid post-edit commits when no change
- chore: Update dependencies to latest versions

### Fixed
- fix: Improved error message for uninitialized stack
- fix: Improve error for re-initialization attempt
- fix(prev): Different error message for empty stack
- fix: Accept full ref name for branches
- fix(zsh): Complete --edit and --diff for stg new


## [2.0.4] 2022-11-30

### Changed
- docs: Document configuration variables
- refactor: Use is-terminal instead of atty
- chore: Update Cargo.lock with latest dependencies.

### Fixed
- fix: Don't generate new patch name until after edit (#239)
- fix: Run shell aliases from top-level of work tree
- fix: Use GIT_PREFIX in built-in aliases


## [2.0.3] 2022-11-21

### Changed
- chore: Update Cargo.lock with latest dependencies.

### Fixed
- fix: improved git version parsing on MacOS
- fix: StGit-specific branch config handling
- docs: fixed many typos


## [2.0.2] 2022-11-17

### Changed
- chore: Update Cargo.lock with latest dependencies.
- docs(init): Add long help for `stg init`.

### Added
- feat: Enable basic support for `extensions.worktreeconfig` to unblock
  sparse checkout with partial clone (#195).

### Fixed
- docs: More inter-command links
- docs: Normalize quoting


## [2.0.1] 2022-11-07

### Changed
- chore: Update to clap 4.0.22

### Fixed
- docs(readme): Clarify static versus dynamic linking (#230)
- build: Improve Documentation build performance (#229)


## [2.0.0] 2022-11-06

### Removed
- `stg clone` is removed. Use `git clone` and `stg init` instead.
- `stg mail` is replaced with `stg email format` and `stg email send`.
- `stg refresh --spill` is replaced with dedicated `stg spill` command.
- `stg edit` no longer accepts `-O/--diff-opts`. Custom diff options is
  in conflict with editable diffs since many (most?) diff options cause
  the diff to no long be applicable.
- `stg files` no longer accepts `-O/--diff-opts`. This option was of
  marginal value since it only had a possible side effect when `--stat`
  was being used.

### Added
- `stg id` now accepts the `-b/--branch` option.
- `stg completion` command provides runtime support for shell
  completions.
- `stg completion bash` generates bash shell completion script.
- `stg completion fish` generates fish shell completion script.
- `stg completion zsh` outputs zsh shell completion script.
- `stg completion list` shows StGit commands and aliases and is used at
  completion-time by shell completion scripts.
- `stg completion man` generates man pages in asciidoc format.
- `stg email format` wraps `git format-patch` and provides a mechanism
  to generate patch emails and optional cover letter in mbox format.
- `stg email send` wraps `git send-email` and allows sending patch
  emails, either from files generated by `stg email format` or by
  specifying patches directly.
- `stg new --refresh` allows a new patch to be refreshed with changes in
  one step. The `-i/--index`, `-F/--force`, `-s/--submodules`, and
  `--no-submodules` options from `stg refresh` are also available to
  `stg new` when using `-r/--refresh`.
- `stg series` gains the `-i/--commit-id` option to display patches'
  commit ids.
- `stg show` diff output can now be limited to certain paths by
  specifying path limits on the command line.
- `stg spill` replaces `stg refresh --spill`.
- `stg version` gains `-s/--short` flag to show shortened version info.
- Added documentation for patch range syntax to stg(1) man page.
- Added `install-all` target to top-level Makefile that installs the
  executable, man pages, html pages, and shell completions.

### Changed
- StGit is now implemented entirely in Rust instead of Python.
- StGit is generally much faster; many commands are up to 4x faster.
  There was an emphasis on making informational commands such as `stg
  id`, `stg series`, and `stg top` as fast as possible to make their use
  in interactive contexts (shell prompts, IDE extensions) more
  comfortable.
- StGit error messages have been updated; many have different, and
  hopefully better, wording. Error messages are also use color (when
  color is enabled). Scripts relying on exact error messages from StGit
  will need to be updated.
- StGit output to stdout is generally more terse. Commands that change
  the stack such as `push`, `pop`, and `commit`, use sigils to denote
  the changes made to the stack. E.g. `stg commit p0..p3` will output `$
  p0..p3` where the "$" sigil means that a patch, or patch range, has
  been committed. These are all the currently used stack change sigils:
  - `+` patch was pushed
  - `-` patch was popped
  - `>` patch became the current topmost patch
  - `&` patch was updated
  - `$` patch was committed
  - `#` patch was deleted
  - `@` patch was rolled-back
  - `!` patch was hidden
- StGit aliases are now more like Git aliases. Normal aliases refer to
  StGit subcommands, but aliases prefixed with '!' are shell aliases
  that may run arbitrary commands. An example normal alias would be `git
  config stgit.alias.list 'series --description --empty'`. An example
  shell alias would be `git config stgit.alias.st '!git status
  --short'`.
- Commands such as `stg goto`, `stg push`, and `stg pop` now require
  full/correct patch names on the command line and no longer accept
  unambiguous patch name prefixes. When an inexact patch name is
  provided on the command line, the error message will now suggest
  similar valid patch names.
- Additional template search paths were added. In addition to looking
  for template files in .git/, also look in
  `$XDG_CONFIG_HOME/stgit/templates/` and `$HOME/.stgit/templates`. This
  search strategy is consistent with how git looks for the global config
  file.
- The new `--signoff` patch edit option supersedes the deprecated
  `--sign` and `--sign-by` options. `--signoff` without its optional
  value does the same thing as `--sign`, while `--signoff=<value>` does
  the same thing as `--sign-by=<value>`.
- The `--ack` and `--review` patch edit options now optionally take a
  value. The `--ack-by` and `--review-by` options are deprecated.
- `stg branch` output is now generally less verbose.
- `stg branch --describe` replaces `stg branch --description`. The
  `--description` subcommand remains supported as a hidden alias to
  `--describe`, but the description string must now be provided as its
  own argument; i.e. `--description="description string"` is no longer
  supported.
- `stg branch --list` now produces colorized output. The `--color`
  option or `NO_COLOR` environment variable may be used to affect this
  behavior.
- `stg branch --rename` now supports renaming regular git branches in
  addition to StGit-enabled branches.
- `stg clean` now uses `-A` and `-U` short options for `--applied` and
  `--unapplied` instead of `-a` and `-u`. This is done for consistency
  with `stg series` and `stg show`.
- `stg import` now only recognizes compressed patches by their file
  extension (`.bz2` or `.gz`) and no longer proactively attempts to
  decompress using all known decompressors.
- `stg import` support for compressed input files is selectable at
  compile time using the `import-compressed` feature.
- `stg import` support for importing from a URL is selectable at compile
  time using the `import-url` feature. **N.B.** there is a measurable
  runtime performance impact of building with `import-url` due to the
  unconditional, pre-main initialization of `curl` which affects **all**
  `stg` commands.
- `stg log` now colorizes output by default. The `--color` option or
  `NO_COLOR` environment variable may be used to affect this behavior.
- `stgit.new.verbose` changed to `stgit.edit.verbose` and now also
  affects edit behavior for `edit`, `refresh`, and `squash` along with
  `new`.
- `stg new` now accepts `-e/--edit` and `-d/--diff` instead of
  `-v/--verbose`
- `stg pick` now allows a mix of commits and patches to be picked
  whereas previously only a single commit xor multiple patches could be
  picked.
- `stg pick` now performs a single stack transaction for all the picked
  patches/commits instead of one transaction per pick.
- `stg push` now attempts to perform three-way merges, which may improve
  conflict resolution in some cases. This feature is enabled by default
  when git >= 2.32.0 is detected.
- `stg rebase --interactive` the "squash" and "fixup" instructions may
  no longer be applied to the first patch in the instruction list. The
  stated semantics of both "squash" and "fixup" is that they squash the
  labeled patch with the preceding patch, which is not possible/valid
  when there is no preceding patch.
- `stg refresh` no longer has a `--spill` flag. Use `stg spill` instead.
- `stg series` has updated colorized output.
- `stg series` now requires patch range arguments to be both in-order
  and contiguous. Constraining patch ranges in this manner ensures that
  the output from `stg series` is always a valid/correct view of a
  subset of the series.
- `stg show` diff output respects the `--color` option.
- `stg squash` now allows the full suite of patch edit options,
  including `-d/--diff`. Previously only a few message-related options
  were available.
- `stg version` now displays copyright and license statements.

### Fixed

- `stg branch --create` inherits the current branch's remote branch
  configuration, if available. The Python implementation had an apparent
  bug that prevented inheriting the remote branch configuration when
  creating from the current branch.
- Avoid case insensitive patch name collisions. On operating systems
  with case-insensitive paths, patch names that only differ by case lead
  to patch reference collisions. StGit now ensures that patch names are
  distinct under case insensitive comparisons.
- `stg pull` and `stg rebase` record updated stack state instead of
  deferring until the next stack-modifying command to do so.

### Changed since 2.0.0-rc.2

#### Changed
- chore: Update Cargo.lock

#### Fixed
- fix(zsh): Repair broken completion of --git-opt
- fix(zsh): Add missing `stg email send --branch`
- fix(email): Send using --branch option
- fix: Avoid duplicate signoff with stgit.autosign
- fix: Do not use 3way for merged checks


## [2.0.0-rc.2] 2022-10-23

### Changed
- The `--diff-opts` option is renamed to `--diff-opt`. `--diff-opts`
  remains available as an alias.
- The `--diff-opt` option no longer allows multiple git options per
  occurrence. This allows git diff options with spaces in their values.
- The `--git-opts` option for `stg email format` and `stg email send` is
  renamed `--git-opt`.
- The `--git-opt` option no longer allows multiple git options per
  occurrence. This allows git options with spaces in their values.
- Zsh completion for `--diff-opt` and `--git-opt` leverage the
  full-featured git completion capability.

### Fixed
- Repair check for modifications to stack by external tools.
- `stg pull` and `stg rebase` record updated stack state instead of
  deferring until the next stack-modifying command to do so.
- Improve patch application with `git apply --3way` when pushing` (#225)
- Zsh completion for `--diff-opt` accommodates multiple occurrences


## [2.0.0-rc.1] 2022-09-30

### Added
- Added `--annotate` flag to `stg email send`.
- Added `-p`/`--patch` option to `stg show` as alternative way to select patch
  ranges (#216).
- Added `-n`/`--name` option to `stg new` as alternative way to specify new
  patch name (#216).

### Changed
- Update `git2` to 0.15.0, which may further help compatibility with
  sparse checkouts and multiple worktrees (#195).
- Update to `clap` 4.0, which changes the help formatting and coloring.
- Update other dependencies to latest versions in Cargo.lock.
- No longer depend on `lazy_static` crate.
- Use `std::thread::scope` instead of custom mechanism. This brings the
  total number of uses of `unsafe` in StGit to zero.
- Minimum rustc requirement is set to 1.63.0.
- The '$' sigil used for committed patches is now yellow instead of
  white.
- Patch names beginning with a hyphen '-' may be disambiguated from command
  line options by escaping the leading '-' with a backslash.
- `stg email format` and `stg email send` now use `-G`/`--git-opts` to pass
  additional options to `git format-patch` and `git send-email`.
- Patch name arguments to `stg email format` and `stg email-send` can now be
  placed after a `--` separator (#216).
- Update top-level usage help for `stg`.

### Fixed
- Various errors that may occur when executing a stack transaction are
  now handled more robustly such that the changes from the transaction
  are rolled-back so that the stack, repository, and worktree are all in
  a consistent state (#205).
- The `stg uncommit -h` usage indentation is repaired.
- The `stg float` usage now shows the two distinct usage modes.
- `stg squash --name` allows patch names with leading '-'.
- `stg diff --range` allows patch names and ranges with leading '-'.
- Fix some pre-indented paragraphs in help/about strings.
- Zsh completion for `stg edit` incorrectly included -O/--diff-opts.
- Zsh completion for `stg files` incorrectly included -O/--diff-opts.


## [2.0.0-beta.3] 2022-08-28

### Added
- Add install targets for `contrib/` directory.

### Changed
- Use `git` executable instead of `libgit2` for all status and index
  operations to improve compatibility with sparse index checkouts
  (#195).
- Show commit hash in `stg version` output when not built from tag.
- Use `cargo --locked` consistently in Makefiles.
- Use "patch" extension in temp file name when editing a patch with a
  diff.
- Updated transient dependencies in Cargo.lock.

### Fixed
- Repair `stg branch --describe` panic when run without arguments
- Repair zsh completions for `git branch`
- Repair `stgit.el` to use compatible `stg show` commands (#202).
- Repair `stg uncommit --to` to work with annotated tags (#203).
- Repair `make install` to not install cargo tracking files.


## [2.0.0-beta.2] 2022-08-05

### Changed
- Improved error when push conflicts with untracked files (#193)
- Removed a few transitive dependencies by turning-off features in bstr
  and chrono.
- Update Cargo.lock with latest dependencies
- Update to clap 3.2 and only use non-deprecated interfaces

### Fixed
- Repair `stg spill` when spilling newly added files and using path
  limits.


## [2.0.0-beta.1] 2022-07-28

### Removed
- Removed Python implementation of StGit.

### Added
- Man page generation in asciidoc format with `stg completion man`. This
  was needed for feature parity with the Python implementation.
- Added documentation for patch range syntax to stg(1) man page.
- Added `install-all` target to top-level Makefile that installs the
  executable, man pages, html pages, and shell completions.

### Changed
- Additional template search paths were added. In addition to looking
  for template files in .git/, also look in
  `$XDG_CONFIG_HOME/stgit/templates/` and `$HOME/.stgit/templates`. This
  search strategy is consistent with how git looks for the global config
  file.
- Makefile targets are updated such that they are all applicable to the
  Rust implementation.
- Argument value names are now all lowercase in help and man pages.
- Updated Cargo.lock with latest versions of dependencies.
- Release checklist is updated for Rust implementation.

### Fixed
- Minor typo fixes in help strings
- Improved documentation for top-level `stg` options.
- Improve error message in edge case of attempting to push a hidden
  patch by name when there are no unapplied patches.


## [2.0.0-alpha.2] 2022-07-07

### Added
- `stg email format` wraps `git format-patch` and provides a mechanism
  to generate patch emails and optional cover letter in mbox format.
- `stg email send` wraps `git send-email` and allows sending patch
  emails, either from files generated by `stg email format` or by
  specifying patches directly.

### Changed
- Bash completions for shell aliases now fallback to filename
  completions (#191).
- Help options listings now ensure --color and --help are shown last.
- Various zsh completion improvements:
  - Add descriptions for --color values
  - Complete -O/--diff-opts values (using `git diff-tree --git-completion-helper`)
  - Comprehend `stg -C <dir>` options
  - Improved/corrected alias expansion
  - Improved error messages when completion is attempted outside git
    repo and/or StGit-initialized branch
  - Patch name completions now look and feel like output from `stg
    series`
  - Complete patch range syntax ('patch0..patchN') for all relevant
    commands
  - Completion for `stg squash` no longer allows duplicate patch name
    arguments
  - Removed completions for removed `stg mail` command
  - Completion for `stg sink` no longer offers hidden patches
  - Completion for `stg rename` comprehends second, new patch name
    argument
  - Completion for `stg diff --range` now works

### Fixed
- Compatibility with git versions prior to 2.35.0 is repaired by
  avoiding using `git apply --allow-empty` (#192).
- Fish completions for -O/--diff-opts are repaired


## [2.0.0-alpha.1] 2022-06-17

### Added
- `stg series` gains the `-i/--commit-id` option to display patches'
  commit ids.
- `stg series` colorized output is modified. The main change is that
  patch descriptions are no longer yellow.
- `stg version` now displays copyright and license statements.
- `stg version` gains `-s/--short` flag to show shortened version info.
- The `stgit.diff-opts` configuration variable is now respected as it
  was in the Python implementation.
- `stg completion` command provides runtime support for shell completions.
- `stg completion bash` generates bash shell completion script.
- `stg completion fish` generates fish shell completion script.
- `stg completion zsh` outputs zsh shell completion script.
- `stg completion list` shows StGit commands and aliases and is used at
  completion-time by shell completion scripts.

### Changed
- The `-O/--diff-opts` flag now allows both multiple space separated
  opts in one value as well as multiple occurrences of `-O/--diff-opts`
  on the same command line. This behavior is compatible with the Python
  implementation.
- `stg series` help output splits options into a few sections.
- Dependencies are updated to more recent versions in Cargo.lock.

### Fixed
- `stg edit --set-tree` no longer causes the interactive editor to be
  implicitly invoked.
- Repair build for non-Linux unix targets (including MacOS) and Windows
  targets.
- Avoid case insensitive patch name collisions. On operating systems
  with case-insensitive paths, patch names that only differ by case lead
  to patch reference collisions. StGit now ensures that patch names are
  distinct under case insensitive comparisons.
- Add missing `-t` short option for `--set-tree` for `stg edit`.
- Add missing `-k` short option for `--keep`.


## [2.0.0-alpha.0] 2022-05-17

### Removed
- `stg edit` no longer accepts `-O/--diff-opts`. Custom diff options is
  in conflict with editable diffs since many (most?) diff options cause
  the diff to no long be applicable.
- `stg files` no longer accepts `-O/--diff-opts`. This option was of
  marginal value since it only had a possible side effect when `--stat`
  was being used.
- `stg clone` is removed (at least for the time being). Use `git clone`
  and `stg init` instead.
- `stg mail` is removed, but will be re-added or replaced prior to the
  2.0.0 release.

### Added
- `stg new --refresh` allows a new patch to be refreshed with changes in
  one step. The `-i/--index`, `-F/--force`, `-s/--submodules`, and
  `--no-submodules` options from `stg refresh` are also available to
  `stg new`.
- `stg id` now accepts the `-b/--branch` option.
- `stg spill` replaces `stg refresh --spill`.

### Changed
- StGit aliases are now more like Git aliases. Normal aliases refer to
  StGit subcommands, but aliases prefixed with '!' are shell aliases
  that may run arbitrary commands. An example normal alias would be
  `git config stgit.alias.list 'series --description --empty'`. An
  example shell alias would be `git config stgit.alias.st '!git status
  --short'`.
- The `--ack` and `--review` options now optionally take a value. The
  `--ack-by` and `--review-by` options are deprecated.
- Commands such as `stg goto`, `stg push`, and `stg pop` now require
  full/correct patch names on the command line and no longer accept
  unambiguous patch name prefixes. When an inexact patch name is
  provided on the command line, the error message will now indicate
  similar valid patch names.
- `stg branch` output is now generally less verbose.
- `stg branch --describe` replaces `stg branch --description`. The
  `--description` subcommand remains supported as a hidden alias to
  `--describe`, but the description string must now be provided as its
  own argument; i.e. `--description="description string"` is no longer
  supported.
- `stg branch --list` now produces colorized output. The `--color`
  option or `NO_COLOR` environment variable may be used to affect this
  behavior.
- `stg branch --rename` now supports renaming regular git branches in
  addition to StGit-enabled branches.
- `stg clean` now uses `-A` and `-U` short options for `--applied` and
  `--unapplied` instead of `-a` and `-u`. This is done for consistency
  with `stg series` and `stg show`.
- `stg import` now only recognizes compressed patches by their file
  extension (`.bz2` or `.gz`) and no longer attempts to decompress using
  all known decompressors.
- `stg import` support for compressed input files is selectable at
   compile time using the `import-compressed` feature.
- `stg import` support for importing from a URL is selectable at compile
  time using the `import-url` feature.
- `stg log` now colorizes output by default. The `--color` option or
  `NO_COLOR` environment variable may be used to affect this behavior.
- `stgit.new.verbose` changed to `stgit.edit.verbose` and now affects edit
  behavior for `edit`, `refresh`, and `squash` along with `new`.
- `stg new` now accepts `-e/--edit` and `-d/--diff` instead of `-v/--verbose`
- `stg pick` now allows a mix of commits and patches to be picked
  whereas previously only a single commit xor multiple patches could be
  picked.
- `stg pick` now performs a single stack transaction for all the picked
  patches/commits instead of one transaction per pick.
- `stg rebase --interactive` the "squash" and "fixup" instructions may
  no longer be applied to the first patch in the instruction list. The
  stated semantics of both "squash" and "fixup" is that they squash the
  labeled patch with the preceding patch, which is not possible/valid
  when there is no preceding patch.
- `stg refresh` no longer has the `--spill` flag. Use `stg spill`
  instead.
- Updated colorized output for `stg series`.
- `stg series` now requires patch range arguments to be both in-order
  and contiguous. Constraining patch ranges in this manner ensures that
  the output from `stg series` is always a valid/correct view of a
  subset of the series.
- `stg show` diff can now be limited to certain paths by specifying path
  limits on the command line.
- `stg show` diff output respects the `--color` option.
- The new `--signoff` patch edit option supersedes the deprecated
  `--sign` and `--sign-by` options. `--signoff` without its optional
  value does the same thing as `--sign`, while `--signoff=<value>` does
  the same thing as `--sign-by=<value>`.
- `stg squash` now allows the full suite of patch edit options,
  including `-d/--diff`. Previously only a few message-related options
  were available.

### Fixed
- `stg branch --create` inherits the current branch's remote branch
  configuration, if available. The Python implementation had an apparent
  bug that prevented inheriting the remote branch configuration when
  creating from the current branch.


## [1.5] 2022-01-28

### Removed
### Added
- Add Makefile targets for installing shell completions
- `stg rebase --interactive` learns 'hide' instruction

### Changed
- Picked patch names are preserved when possible (#175)
- Replace `--unapplied` option with `--noapply` for `stg pick` (#174)
- `stg pick --noapply` no longer reverses patch order (#174)
- Use `stg version` uses `sys.executable` to get Python version.

### Fixed
- Repair `stg repair` with amended first patch (#163)
- Repair corner cases where invalid patchnames could be generated by
  `stg new`, `stg uncommit`, etc. (#176)
- `stg mail` could crash due to a misspelled reference (#178)
- Zsh completion for `stg refresh -p` now completes against all patches
  (not just applied patches).
- Zsh gains missing completion for `stg push --noapply`
- Minor repair to help for `stg float --noapply` and `stg push
  --noapply`
- Restore `stg sink --nopush` capability.


## [1.4] 2021-10-27

### Removed
- Python 3.5, which became EOL 2020-09-13, support is deprecated and
  will be removed in a future StGit release
- Python 3.6, which will be EOL 2021-12-23, support is deprecated and
  will be removed in a future StGit release

### Added
- The new `stg import --message-id` option causes the Message-ID from
  imported emails to be included as the Message-Id trailer in the patch
  description (#42)
- The new 'stgit.import.message-id' config option also enables the
  Message-Id trailer (#42)

### Changed
- `stg import` no longer creates "Message-Id" trailer by default when
  importing patches from email (#42)
- StGit works with Python 3.10
- `stg version` prints a more abbreviated Python version
- `stg commit` will no longer commit empty patches by default; the
  `--allow-empty` option may be used to override this behavior (#158)
- The `stgit.main.main()` function now takes an argv parameter and
  returns an int return code in most cases instead of calling
  sys.exit(), thus making main() a bit easier to use as an API.

### Fixed
- Repair stack upgrade with `stg branch --list` (#155)
- Repair crash in `stg squash` with out of order patches and no name
  specified (#157)
- Zsh completions learn `stg float --noapply` option
- Zsh completion for `stg sink` now allows multiple patches


## [1.3] 2021-09-26

### Removed

### Added

### Changed

### Fixed
- Repair crash regression when using `stgit.autosign`

## [1.2] 2021-09-26

### Removed

### Deprecated
- Python 3.5, which became EOL 2020-09-13, support is deprecated and
  will be removed in a future StGit release
- Python 3.6, which will be EOL 2021-12-23, support is deprecated and
  will be removed in a future StGit release

### Added
- `stg rebase ` learns `--interactive`; easily re-order, edit, squash,
  fixup, or delete patches via your editor
- `stg rebase` learns `--autostash`; stash changes before the rebase and
  apply them after. Also configurable with the `stgit.autostash`
  configuration option
- `stg edit` can now rename patches (#119)
- `stg edit` gains helpful instructions (#138)
- `stg new` learns `--verbose`, which includes a diff in the editor
  window (similar to `git commit --verbose`). This behavior is also
  configurable with the `stgit.new.verbose` configuration option
- `stg push` and `stg float` learn `--noapply` option; allows patches
  to be reordered without updating worktree and deferring merge conflict
  resolution (#144)
- `stg edit`, `stg refresh`, and `stg new` learn the `--sign-by`,
  `--ack-by`, and `--review-by` options which allow those respective
  trailers' values to be specified by the user on the command line (#92)

### Changed
- Stack metadata version 5; stack metadata is moved from
  `refs/heads/<branch>.stgit` to `refs/stacks/<branch>` and the stack
  metadata file now uses a JSON format instead of the prior custom
  format; the stack metadata will be upgraded to v5 on first use of
  this version of StGit; like all stack metadata upgrades, **this is a
  one-way auto-upgrade for existing stacks** (#65)
- Use setuptools instead of distutils for packaging
- No git or python version checks in setup.py
- Use different dynamic versioning system
- Install `stg` executable as console_script entry point
- More sophisticated search for bash.exe on Windows when running hooks
- The editor window text for `stg squash` has been modified to mirror
  git's behavior -- the squash edit message now includes all commits
  (#71)
- Binary diffs are no longer shown when with `stg edit -d`
- Multiple trailers can now be added at once; this is now allowed, for
  example: `stg edit --sign --review --ack`
- Update zsh completion for `stg rebase` to show local and remote heads
  (#102)
- Zsh completions for commands with patch arguments now comprehend the
  effect of `-b/--branch` and `-B/--ref-branch`
- Zsh completions now guard patch names--one less TAB press to complete
  patch names in certain contexts
- `stg import` now extracts the `Message-ID` email header into the patch
  message (#42)

### Fixed
- Repair crash when attempting to export empty patch (#112)
- Exact command name matches are unambiguous (#110)
- Exiting with an empty `stg edit` editor will now abort the edit;
  previously it would delete your commit message. (#138)
- Repair completions when stg.series.description is enabled in config
- Workaround child process reaping race on Windows (#78)
- Repair crash with `stg float --series` when bad patch name in series
- Repair zsh completion for `stg float` to accept multiple patch names
- Repair zsh completion for changed files, affecting `stg refresh` and
  `stg diff`

### Internal
- Add link to coverage.io project to CONTRIBUTING.md
- Set smart `exclude_lines` default for 'coverage'
- Expanded test suite for `stg edit`
- Add pkgtest.py script to help test StGit packaging
- Cleanup .gitignore files


## [1.1] 2021-04-30

### Removed

### Added
- StGit GPG-signs patches when `commit.gpgsign` is set (#12)
- Support `core.hooksPath` in git config
- Add `-C` option for `stg import` and `stg fold` (#18)

### Changed
- Allow importing mail and series from urls (#94)
- `stg refresh --edit` may also use `--diff` and `--diff-opts` (#98)
- `stg goto` allows sha1 of a patch instead of patch name (#93)

### Fixed
- Repair hang in `stg pull -m`, `stg goto -m`, and `stg push -m`
- Repair `stg mail` to show diffstat of whole series (#104)
- Repair MANIFEST.in to include AUTHORS.md and README.md files


## [1.0] 2021-02-07

### Removed
- Drop support for Python < 3.5
- Remove previously deprecated `stg publish` command
- Removed contrib scripts: `stg-swallow`, `stg-fold-files-from`,
  `stg-dispatch`, `stg-whatchanged`, and `stg-show-old`

### Added
- The pre-commit hook is now run for `stg refresh`
- New `--spill` option for `stg refresh`
- Add stgit.series.description config option (#88)
- Official support for Python versions up to 3.9

### Changed
- Stack metadata format 4. All metadata now kept in Git objects; no more
  stack state files in .git/patches. **A one-way auto-upgrade to format
  version 4 will occur when StGit commands are run on an existing StGit
  branch.**
- Use `python3` in shebangs instead of `python`
- `contrib/stgbashprompt.sh` is no longer executable
- Internal docstrings now use reStructuredText instead of Epytext

### Fixed
- Importing large patches is much, much faster (#66)
- Other performance improvements when dealing with large patches
- Repair diffstat when outside work tree root (#62)
- Use encoded (string) environment variables on Windows (#79)
- Fix `stg pull` when no upstream is configured (#83)
- Fix `refresh` crash with path limiting and files added to index (#85)
- Repair `new` with patchdescr.template crash (#87)
- Repair `log` from worktree subdir with patches specified
- Repair `import` allowing/generating duplicate patch names (#64)
- Repair `mail --auto` to strip comments after addrs (#91)


## [0.23] 2020-06-12

### Removed
- Drop support for Python 3.3; Python 2 (2.6 and 2.7) remain
  deprecated, but supported for one last release
- Tutorial is removed; it now exists as part of the website

### Deprecated
- Python 2.x support is deprecated and will be removed in a future
  release

### Added
- Support html5 output of docs from asciidoc
- Add `--expose` option for `stg pick` to allow picked commit message to
  be customized

### Changed
- Limit mail diffstat to 72 columns
- Added pyproject.toml file for black configuration
- Minimum Git version is 2.2.0
- Quote stg and subcommand in man page synopsis
- Replaced RELEASENOTES with this CHANGELOG.md
- Replaces Documentation/SubmittingPatches with CONTRIBUTING.md

### Fixed
- Repair MANIFEST.in and generated source dist
- Repair importing mail with ": " (colon space) in subject
- Fix mail cover letter shortlog
- Fix mail cover letter diffstat
- `stg series` now only outputs colors when `isatty()`
- Repair mail SSL check (#57)
- Repair `stg mail` with both `-a` and `-e` options (#58)
- Remove empty short-opt for `--no-submodules` of `stg refresh`
- Repair build.py for Python 2 with explicit `flush()`
- `stgit.refreshsubmodules` added to sample gitconfig

### Internal
- Update docs build system from upstream Git docs
- Use coverage contexts to map commands to covered lines
- Improve mail tests
- Use GitHub Actions instead of TravisCI
- Format StGit source using black formatter

## [0.22] - 2020-03-02

### Removed
- Remove debian packaging; downstream Debian uses its own anyway

### Deprecated
- Python 2.x support is deprecated and will be removed in the next StGit
  release
- `stg publish` is deprecated and will be removed in the next StGit
  release

### Added
- `stg import` has new --keep-cr option, like `git mailsplit`

### Changed
- `stg new` now includes patch name in log message
- `stg branch --rename` can now rename the current branch
- `stg branch --create` now works even if the workspace is dirty,
  consistent with `git checkout`
- `stg branch --description` now works on both regular and stgit
  branches
- `stg edit --diff` now implies `--edit`
- `stg refresh` and `stg edit` now reset the committer information,
  consistent with `stg push`
- git notes are now preserved when patches are modified
- Tutorial improvements
- Many additional tests and test improvements
- All stgit commands now use "new" git library infrastructure

### Fixed
- `stg branch --create` inherits remote correctly from parent committish
- Patch names are checked earlier to avoid inconsistent stack states
- Improved commit data parsing and handling of non-UTF8 encodings
- Repair git error messages when checking stgit version from outside a
  git repo


## [0.21] - 2019-10-28

### Changed
- Faster handling of large patches (#44)

### Fixed
- Build reproducibility repairs (Thanks reproducible-builds.org team!)
- Python can now be run with optimizations (`python -O`)
- `stg log` now prints trailing newline
- Improved command line option parsing for `stg log`


## [0.20] - 2019-10-04

### Added
- `stg patches -d` can now output colored diffs.
- `stg publish --overwrite` allows branch to be overwritten instead of
  creating new commits.
- `stg log --clear` deletes the stack's log history. Use with caution.
- Fish shell completions for stg.
- Zsh completions for stg.
- `stg mail --domain` option overrides the host's domain in the message
  ID.

### Changed
- Branch protection metadata now captured in config instead of
  .git/patches/<branch>protect file. This updates stgit's metadata
  format from v2 to v3.
- `stg diff` no longer shows binary diffs by default. Use `-O--binary`
  or add `--binary` to stgit.diff-opts in config.
- Diagnostic output is now routed to stderr instead of stdout.
  Diagnostic output is also now sent to stderr unconditionally, i.e. no
  more isatty() test (#35).
- Converted to "new" lib infrastructure: `show`, `patches`, `diff`,
  `pick`, `pull`, `rebase`, and `fold`.

### Fixed
- `stg show` detects conflicting --applied and --unapplied options.
- `stg show --stat` now shows commit headers.
- `stg patches --diff` now shows proper diff instead of `b'...'` repr of
  diff.
- `stg diff --range` detects some invalid values (e.g. `-r ..`).
- Date parsing is now more portable, only use platform specific `date`
  as last parsing option. Affects, e.g., `stg refresh --authdate`.
- Repaired search path for templates to avoid looking in Python
  site-packages directory.
- Ensure stdout and stderr are flushed. Rarely affected `stg diff`.
- `stg repair` will now fail if extra command line arguments are
  provided.
- Bash completions are now generated in a reproducible manner.
- `stg edit --diff` on an empty patch no longer crashes.
- `stg pick` no longer fails when picked commit has empty message (#39).
- `stg rebase` no longer crashes when there are conflicts (#34).
- `stg pick` no longer crashes if --name is not provided when picking a
  regular commit object.
- Improved test coverage for: branch, diff, pick, sync,
- New tests for: files, patches, fold, series
- Portable use of iconv, sort, and sed in tests.
- Linting using flake8 and isort.
- All Python code now conforms to PEP-8.
- Updated test infrastructure from git 2.20.
- Parallel tests with coverage (`make -j4 coverage`) now works.
- Documentation build is not included in code coverage.
- Repaired log end messages when using `STGIT_SUBPROCESS_LOG=debug`.
- Renamed "dunder" instance attributes to improve debugging.
- Fail faster when patch name has slash ('/') (#24).


## [0.19] 2018-11-05

### Changed
- Python 3 support. StGit supports Python 2.6, 2.7, 3.3, 3.4, 3.5, 3.6,
  and 3.7. PyPy interpreters are also supported.
- Submodules are now ignored when checking if working tree is clean.
  Submodules are also not included by default when refreshing a patch.
- Config booleans are now parsed similarly to git-config.
- `contrib/stgit.el` is now licenced with GPLv2.
- Add continuous integration (travis-ci) and code coverage (coveralls)
  support.
- Many new test cases were added.

### Fixed
- Repair handling of emails with utf-8 bodies containing latin-1
  characters. Also correctly decode email headers containing quoted
  encoded words.
- StGit's version is now correct/available in the release archive.


## [0.18] 2017-08-14

### Added
- `commit-msg` hook support for easier integration with Gerrit, allowing
  a Change-Id line to be inserted in the commit message
- `stg mail` improvements for 'Suggested-by:' tag and auto generation of
  Cc for the cover letter based on all tags in the series
- `stg mail` bash completion for the --to, --cc and --bcc options based
  on the content of the [mail "alias"] section of Git configuration
- `stg edit --review` option to add a 'Reviewed-by:' tag
- `stg pop --spill` functionality to allow popping a patch from the
  stack while keeping its modification in the tree

### Changed
- Project page details updated (gna.org has been shut down)

### Fixed
- Various fixes and test coverage improvements
jperkin pushed a commit that referenced this issue Sep 16, 2024
0.081   2024-09-08
        - fix #107 Drop -msse4.1 -maes for libtomcrypt
        - fix #105 Several functions in CryptX::AuthEnc deal weirdly with non-simple-string plaintext
        - fix #104 Add ethereum format signature
        - fix #103 Use standard __asm__ blocks instead of asm
        - fix #99 ltc: fix aesni flag handling
        - fix #87 Add possibility to use different hash algorithms in RSAES-OAEP
        - BIG CHANGE switch to PEM/SSH key loading via libtomcrypt
        - bundled libtomcrypt update branch:develop (commit:ce904c86 2024-09-02)
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 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