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

dovecot requires update #223

Closed
vtoc opened this issue Sep 14, 2019 · 2 comments
Closed

dovecot requires update #223

vtoc opened this issue Sep 14, 2019 · 2 comments
Assignees

Comments

@vtoc
Copy link

vtoc commented Sep 14, 2019

https://www.openwall.com/lists/oss-security/2019/08/28/3

Vulnerable version: All versions prior to 2.3.7.2 and 2.2.36.4

This vulnerability allows for out-of-bounds writes to objects stored on
the heap up to 8096 bytes in pre-login phase, and 65536 bytes post-login
phase, allowing sufficiently skilled attacker to perform complicated
attacks that can lead to leaking private information or remote code
execution. Abuse of this bug is very difficult to observe, as it does
not necessarily cause a crash. Attempts to abuse this bug are not
directly evident from logs.
@jperkin jperkin self-assigned this Sep 16, 2019
@jperkin
Copy link
Collaborator

jperkin commented Sep 16, 2019

Available in trunk since Sept 9 and 2018Q4 since Sept 11.

@jperkin jperkin closed this as completed Sep 16, 2019
@jperkin
Copy link
Collaborator

jperkin commented Sep 16, 2019

Backported to 2016Q4 too, packages now available (pending mirror catchup).

jperkin pushed a commit that referenced this issue Sep 18, 2019
libcec (4.0.4.1~#DIST#) #DIST#; urgency=medium

  * fixed: only prevent TV polls when a Samsung TV is detected instead of
    suppressing all logical addresses. issue #424 #444

 -- Pulse-Eight Packaging <packaging@pulse-eight.com>  Fri, 21 Dec 2018 22:34:14 +0100

libcec (4.0.3.1~#DIST#) #DIST#; urgency=medium

  * fixed:
    * detect debian based distros properly when installing python. closes #314
    * don't filter out broadcast in HandleDeviceVendorCommandWithId(). issue
      #309
    * send an active source message when a routing change has been received with
      libCEC's address as new route and no active source message has been sent
      yet. issue #309 #205 #233
    * vs2015 c++ redistributables
    * fix missing tinfo linking in cec-client. #341
    * set wrong variable. #343 #352
    * LG - don't activate the source when receiving vendor command 0xB. #344
    * LG TV always changing input when turned on #307
    * Fix menu language string. #360
    * correct python lib path for python 2.7+/3+. #356
    * Fix build if tinfo library is not present. #398
    * disable autonomous mode when a Samsung TV is connected. Samsung 2017+ TVs
      will power on randomly (Samsung bug). don't poll the TV. #424
    * CRPiCECAdapterMessageQueue::Write() accessed the queue without locking.
      #423
    * use sig_atomic_t for shared object between sig handler and main. #425
    * python 3.5+ import. #356
    * TDA995x: Fix logical address readback. #303
    * TDA995x: Handle physical address change, optimize logical address setup.
      #303
    * Pulse-Eight USB CEC adapter detection on macOS Mojave. #434
    * Fix broken Python version check and failure to build on cmake < 3.7. #409
    * 13 char device name got truncated

  * changed:
    * log a warning when we detect that RPi's CEC service is used by something
      else, blocking libCEC. issue #191
    * const IAdapterCommunication::GetLogicalAddresses(), making the mutex
      mutable for now without changing the platform lib. closes #259
    * Add a Reinitialze action.  Useful for after the device has been powered
      down. #299
    * Panasonic media control info to the readme
    * detect WIN64 in cmake automatically. #322
    * README.developers.md. #330
    * instructions for hdmi_force_hotplug=1 on the pi
    * eventghost plugin install/create. #375
    * Include C version of libCEC loader when installing. #397
    * Explicitly use python3 in pyCecClient. #433
    * build with vs 2015

 -- Pulse-Eight Packaging <packaging@pulse-eight.com>  Thu, 8 Nov 2018 18:05:36 +0100

libcec (4.0.2.1~#DIST#) #DIST#; urgency=medium

  * fixed:
    * windows: device detection. credits: @Portisch
    * don't automatically assume that an AVR is active in some situations
    * don't take Panasonic's vendor id when emulating an AVR
    * drm EDID parser not compiled in. credits @gdachs
    * python: have Swig generate Python threading support
    * python: only pass unsigned
    * python: allow empty callback parameters
    * python: install demo app as executable
    * python: correct install path. credits @Lo0k @mkreisl. #284 #288 #289 #291
    * python: possible crash when passing an invalid callback

 -- Pulse-Eight Packaging <packaging@pulse-eight.com>  Mon, 23 Jan 2017 16:28:00 +0100

libcec (4.0.1.1~#DIST#) #DIST#; urgency=medium

  * fixed:
    * TransmitVolumeDown to use CEC_USER_CONTROL_CODE_VOLUME_DOWN. credits:
      @michaelarnauts
    * HAVE_AOCEC_API missing in if in AdapterFactory. credits: @gdachs
    * env.h had 'ON' instead of '1' for some values

 -- Pulse-Eight Packaging <packaging@pulse-eight.com>  Tue, 3 Jan 2017 19:12:00 +0100

libcec (4.0.0.3~#DIST#) #DIST#; urgency=medium

  * fixed:
    * headers weren't installed after package name changes

 -- Pulse-Eight Packaging <packaging@pulse-eight.com>  Tue, 14 Nov 2016 10:15:00 +0100

libcec (4.0.0.2~#DIST#) #DIST#; urgency=medium

  * changed:
    * updated readme files
    * renamed 'libcec-dev' to 'libcec4-dev'

  * fixed:
    * removed debian Replaces/Provides/Conflicts
    * crash in drm edid code. credits: @zivillian
    * compilation with -DHAVE_AOCEC_API=1

 -- Pulse-Eight Packaging <packaging@pulse-eight.com>  Tue, 7 Nov 2016 22:43:00 +0100

libcec (4.0.0.1~#DIST#) #DIST#; urgency=medium

  * API cleaned up for v4
  * changed:
    * signature for GetDeviceMenuLanguage() changed
    * signature for GetDeviceOSDName() changed
    * signature for libcec_get_device_menu_language() changed
    * signature for get_device_osd_name() changed
    * cec_datapacket size reduced to 16 bytes
    * callbacks changed to pass pointers instead of copies
    * obsolete entries removed from libcec_configuration
    * removed deprecated FindAdapters() and MuteAudio()
    * send volume change commands to the TV if no audio system is present. Only
      some TVs support this. closes #223

  * added:
    * bAutoWakeAVR entry in libcec_configuration, which controls whether to
      automatically power on the avr or not when the source is activated. issue
      #156
    * iDoubleTapTimeoutMs replacing iDoubleTapTimeout50Ms. time is now in
      milliseconds
    * new AO CEC adapter. credits: @gdachs

  * fixed:
    * compilation with full debugging enabled
    * handling of LG vendor command 0x0B. Issue #256. Credits @Vollstrecker
    * return value wasn't checked correctly in CLibCEC::RegisterClient()
    * Raspberry Pi fixes for issues #252 and #191

 -- Pulse-Eight Packaging <packaging@pulse-eight.com>  Tue, 26 Oct 2016 18:08:00 +0100

libcec (3.2.0.1~#DIST#) #DIST#; urgency=medium

  * Slit up repositories for libCEC and .Net utilities.

 -- Pulse-Eight Packaging <packaging@pulse-eight.com>  Wed, 19 Oct 2016 16:57:00 +0100

libcec (3.1.0.1~#DIST#) #DIST#; urgency=medium

  * changed / added:
    * bump platform lib (windows)
    * use a template that can be used by scripts for the changelog
    * make released key polling wait for exact time until key gets released.
      credits @popcornmix
    * keep track of time since initial button press and last button update
      credits @popcornmix
    * support repeating button presses with configurable repeat rate. credits
      @popcornmix
    * pass through duration on all button repeats. credits @popcornmix
    * updated README.md
    * moved the buffer in CDRMEdidParser::GetPhysicalAddress() from the stack
      to heap
    * added #include to make the IDE happy. not actually used when compiling
    * clean up device detection code a bit and replace winapi calls with
      CM_* calls. issue #130
    * replaced lockdev by flock. closes #141
    * use a single number as major SO version like others. credits @rbalint
    * Sharp uses vendor id 0x534850 too. issue #36
    * use p8-platform instead of platform
    * detect dirty trees
    * support for vs2015 to build scripts
    * update build scripts for vs2015 and win10uni

  * fixed:
    * missing version.h when installing on windows
    * skip double press removal. It is handled through other means. credits
      @popcornmix
    * don't generate an invalid env.h when not built with the .git dir present.
      closes #112
    * fix multi-arch libdir locations. credits @wsnipex
    * fix for holding buttons on remotes of Philips TVs. credits @mrgreywater
    * initialisation issue found on Raspberry Pi with Buildroot. credits
      @elouet
    * crash on systems without /sys/class/drm. credits @rbalint
    * segfault when an empty EDID blob is passed to
      GetPhysicalAddressFromEDID()
    * combo key (stop by default) in the EventGhost plugin. fixes #128
    * silence compiler warnings
    * git-rev.sh script
    * clean/fix platform detection
    * display a nice error message if LibCecSharp failed to load
    * limit the log in cectray to 100k
    * open cec-tray minimised if configured. don't open and minimise. issue
      #158
    * cosmetics: persist -> save
    * query commands in eventghost. fixes #160
    * eventghost demo config
    * don't call PowerOnDevices() if no devices to wake have been configured.
      issue #97
    * Don't skip checking for Rasperry Pi library (Fixes #166). credits
      @kingosticks
    * TDA99x check
    * disable DRM for FreeBSD

 -- Pulse-Eight Packaging <packaging@pulse-eight.com>  Wed, 20 Jan 2016 00:37:32 +0100

libcec (3.0.1-1~#DIST#) #DIST#; urgency=low

  * changed / added:
    * autodetect physical ID from DRM. credits @PoppyPop
    * cmake command line options for raspberry pi distributions that don't use
      standard system paths for libs for some reason
    * convenience methods for compilation on the raspberry pi with non-standard
      system directories and cross compilation
    * explanation in README.md for Exynos and TDA995x
    * don't treat failed acks from the tv as error when sending an active
      source message
    * compilation info when building libCEC
    * build shared libraries by default
    * cec-client: 'tx' command parsing

  * fixed:
    * return code of CCECClient callbacks after async changed. credits: @mk01
    * polling addresses on RPi. credits: @mk01
    * interruptable Sleep() in RPiCECAdapterMessageQueue
    * Exynos support. credits: @YamashitaRen
    * XCASE got removed from posix termios in some recent version
    * don't return an abort code if sending a response code fails

 -- Pulse-Eight Packaging <packaging@pulse-eight.com>  Fri, 03 Jul 2015 15:19:00 +0200

libcec (3.0.0-2) unstable; urgency=low

  * fixed:
    * build fixes on non-linux

 -- Pulse-Eight Packaging <packaging@pulse-eight.com>  Fri, 01 May 2015 01:41:00 +0200

libcec (3.0.0-1) unstable; urgency=low

  * changed / added:
    * initial version of an EventGhost plugin
    * Python API added through Swig, based on the C++ API
    * switched from autotools to cmake
    * added curses support. credits @joao29a
    * added cecc-client (testclient for the C api)
    * added runtime libCEC loading for C
    * updated the C interface to include new features and no longer use a
      global library instance
    * some AVRs fail to be powered up by the TV when it powers up. power up the
      AVR explicitly
    * added support for CEC_DEVICE_TYPE_TV (useful for testing)
    * compile with c++11
    * removed CStdString
    * drop 'using namespace std'
    * autogenerated version numbers, drop some backwards compat code
    * LibCecSharp: added PhysicalAddressToString()
    * CecSharpClient: better formatting of the scan command

  * fixed:
    * Debian packaging cleaned up. Credits @PimentNoir
    * fixed Raspberry Pi compilation. Credits @NHellFire
    * ignore vendor command with id from pioneer AVRs. bugzid: 3853
    * update the vendor id of a device when receiving a vendor command with id
      before receiving a vendor id
    * XBMC->Kodi rebranding
    * don't delete m_client when m_cec hasn't been deleted yet in
      CLibCEC::~CLibCEC(). issue #63
    * change device types in CCECProcessor::Process(), not directly. issue #63
    * use shared_ptr<CPVRClient> instead of passing raw pointers around that
      can be unregistered from another thread and crash
    * check if the port or device actually changed in CCECClient::SetHDMIPort()
    * potential buffer overflow
    * fixed setting the physical address at startup when using default settings
    * don't call callbacks directly in libCEC, but queue them and process from
      a worker thread
    * libCEC Tray: crash when retrying to find adapters
    * libCEC Tray: don't show the "no device found" warning when resuming
      from standby
    * libCEC Tray: reconnect to the adapter after resuming from standby
    * libCEC Tray: send key presses to the active window when none of the
      predefined (wmc/kodi) ones are active
    * libCEC Tray: fixed key combinations with the windows key

 -- Pulse-Eight Packaging <packaging@pulse-eight.com>  Fri, 03 Apr 2015 21:13:00 +0200
jperkin pushed a commit that referenced this issue Oct 29, 2019
CHANGELOG
=========

HAXM v7.5.4

    Added VM pause support to fix the crash issue of loading snapshot (#239).
    Fixed incorrect interruptibility_state to resolve an issue on loading snapshot (#233).
    Fixed a bug during mapping memory slots (#237).
    Fixed incorrect VMX_ENTRY_CONTROLS loading (#225).
    Enabled PCLMULQDQ feature in CPUID emulation if supported by the host (#231).
    Optimized the log interfaces and enhanced the logging mechanism on Windows (#215, #232).
    Fixed the compilation warnings and errors on Linux (#223).
jperkin pushed a commit that referenced this issue Nov 6, 2019
Update ruby-sprockets to 4.0.0.

* pkgsr change: Add "USE_LANGUAGES=	# none".


## 4.0.0

- Fixes for Ruby 2.7 keyword arguments warnings [#625](rails/sprockets#625)
- Manifest files are sorted alphabetically [#626](rails/sprockets#626)

## 4.0.0.beta10

- Fix YACB (Yet Another Caching Bug) [Fix broken expansion of asset link paths](rails/sprockets#614)

## 4.0.0.beta9

- Minimum Ruby version for Sprockets 4 is now 2.5+ which matches minimum ruby verision of Rails [#604]
- Fix threading bug introduced in Sprockets 4 [#603]
- Warn when two potential manifest files exist. [#560]

## 4.0.0.beta8

- Security release for [CVE-2018-3760](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-3760)

## 4.0.0.beta7

- Fix a year long bug that caused `Sprockets::FileNotFound` errors when the asset was present [#547]
- Raise an error when two assets such as foo.js and foo.js.erb would produce the same output artifact (foo.js) [#549 #530]
- Process `*.jst.eco.erb` files with ERBProcessor

## 4.0.0.beta6

- Fix source map line offsets [#515]
- Return a `400 Bad Request` when the path encoding is invalid. [#514]

## 4.0.0.beta5

- Reduce string allocations
- Source map metadata uses compressed form specified by the [source map v3 spec](https://docs.google.com/document/d/1U1RGAehQwRypUTovF1KRlpiOFze0b-_2gc6fAH0KY0k). [#402] **[BREAKING]**
- Generate [index maps](https://docs.google.com/document/d/1U1RGAehQwRypUTovF1KRlpiOFze0b-_2gc6fAH0KY0k/edit#heading=h.535es3xeprgt) when decoding source maps isn't necessary. [#402]
- Remove fingerprints from source map files. [#402]

## 4.0.0.beta4

- Changing the version now busts the digest of all assets [#404]
- Exporter interface added [#386]
- Using ENV vars in templates will recompile templates when the env vars change. [#365]
- Source maps for imported sass files with sassc is now fixed [#391]
- Load paths now in error messages [#322]
- Cache key added to babel processor [#387]
- `Environment#find_asset!` can now be used to raise an exception when asset could not be found [#379]

## 4.0.0.beta3

- Source Map fixes [#255] [#367]
- Performance improvements

## 4.0.0.beta2

- Fix load_paths on Sass processors [#223]


## 4.0.0.beta1

- Initial release of Sprockets 4

Please upgrade to the latest Sprockets 3 version before upgrading to Sprockets 4. Check the 3.x branch for previous changes https://github.com/rails/sprockets/blob/3.x/CHANGELOG.md.
jperkin pushed a commit that referenced this issue Nov 6, 2019
SoftHSM2 is not a drop-in replacement for SoftHSM version 1, so this
is added as a separate package.  See softhsm2-migrate(1) for
migration instructions.

Upstream changes since SoftHSM version 1.x:

SoftHSM 2.5.0 - 2018-09-24

* Issue #323: Support for EDDSA with vendor defined mechanisms.
  (Patch from Francis Dupont)
* Issue #362: CMake Build System Support for SoftHSM.
  (Patch from Constantine Grantcharov)
* Issue #368: Support migrating 32-bit SoftHSMv1 DB on 64-bit system (LP64).
* Issue #385: Default is not to build EDDSA since it has not been released in
  OpenSSL.
* Issue #387: Windows: Add VS2017 detection to Configure.py.
  (Patch from Jaroslav Imrich)
* Issue #412: Replace PKCS11 headers with a version from p11-kit.
  (Patch from Alexander Bokovoy)

Bugfixes:
* Issue #366: Support cross-compilation.
  (Patch from Michael Weiser)
* Issue #377: Duplicate symbol error with custom p11test.
* Issue #386: Use RDRAND in OpenSSL if that engine is available.
* Issue #388: Update DBTests.cpp to fix x86 test failure.
  (Patch from tcely)
* Issue #393: Not setting CKA_PUBLIC_KEY_INFO correctly.
  (Patch from pkalapat)
* Issue #401: Wrong key and keyserver mentioned in installation documentation.
  (Patch from Berry A.W. van Halderen)
* Issue #408: Remove mutex callbacks after C_Finalize().
  (Patch from Alexander Bokovoy)


SoftHSM 2.4.0 - 2018-02-27

* Issue #135: Support PKCS#8 for GOST.
* Issue #140: Support for CKA_ALLOWED_MECHANISMS.
  (Patch from Brad Hess)
* Issue #141: Support CKA_ALWAYS_AUTHENTICATE for private key objects.
* Issue #220: Support for CKM_DES3_CMAC and CKM_AES_CMAC.
* Issue #226: Configuration option for Windows build to enable build with
  static CRT (/MT).
* Issue #325: Support for CKM_AES_GCM.
* Issue #334: Document that initialized tokens will be reassigned to another
  slot (based on the token serial number).
* Issue #335: Support for CKM_RSA_PKCS_PSS.
  (Patch from Nikos Mavrogiannopoulos)
* Issue #341: Import AES keys with softhsm2-util.
  (Patch from Pavel Cherezov)
* Issue #348: Document that OSX needs pkg-config to detect cppunit.
* Issue #349: softhsm2-util will check the configuration and report any
  issues before loading the PKCS#11 library.

Bugfixes:
* Issue #345: Private objects are presented to security officer in search
  results.
* Issue #358: Race condition when multiple applications are creating and
  reading object files.


SoftHSM 2.3.0 - 2017-07-03

* Issue #130: Upgraded to PKCS#11 v2.40.
  * Minor changes to some return values.
  * Added CKA_DESTROYABLE to all objects. Used by C_DestroyObject().
  * Added CKA_PUBLIC_KEY_INFO to certificates, private, and public key
    objects. Will be accepted from application, but SoftHSM will
    currently not calculate it.
* Issue #142: Support for CKM_AES_CTR.
* Issue #155: Add unit tests for SessionManager.
* Issue #189: C_DigestKey returns CKR_KEY_INDIGESTIBLE when key
  attribute CKA_EXTRACTABLE = false. Whitelist SHA algorithms to allow
  C_DigestKey in this case.
* Issue #225: Show slot id after initialization.
* Issue #247: Run AppVeyor (Windows CI) for each PR and merge.
* Issue #257: Set CKA_DECRYPT/CKA_ENCRYPT flags on key import to true.
  (Patch from Martin Domke)
* Issue #261: Add support for libeaycompat lib for FIPS on Windows.
  (Patch from Matt Hauck)
* Issue #262: Support importing ECDSA P-521 in softhsm-util.
* Issue #276: Support for Botan 2.0.
* Issue #279: Editorial changes from Mountain Lion to Sierra.
  (Patch from Mike Neumann)
* Issue #283: More detailed error messages when initializing SoftHSM.
* Issue #285: Support for LibreSSL.
  (Patch from Alon Bar-Lev)
* Issue #286: Update .gitignore.
  (Patch from Alon Bar-Lev)
* Issue #291: Change to enable builds and reports on new Jenkinks
  environment.
* Issue #293: Detect cppunit in autoconf.
  (Patch from Alon Bar-Lev)
* Issue #309: CKO_CERTIFICATE and CKO_PUBLIC_KEY now defaults to
  CKA_PRIVATE=false.
* Issue #314: Update README with information about logging.
* Issue #330: Adjust log levels for failing to enumerate object store.
  (Patch from Nikos Mavrogiannopoulos)

Bugfixes:
* Issue #216: Better handling of CRYPTO_set_locking_callback() for OpenSSL.
* Issue #265: Fix deriving shared secret with ECC.
* Issue #280: HMAC with sizes less than L bytes is strongly discouraged.
  Set a lower bound equal to L bytes in ulMinKeySize and check it when
  initializing the operation.
* Issue #281: Fix test of p11 shared library.
  (Patch from Lars Silvén)
* Issue #289: Minor fix of 'EVP_CipherFinal_ex'.
  (Patch from Viktor Tarasov)
* Issue #297: Fix build with cppunit.
  (Patch from Ludovic Rousseau)
* Issue #302: Export PKCS#11 symbols from the library.
  (Patch from Ludovic Rousseau)
* Issue #305: Zero pad key to fit the block in CKM_AES_KEY_WRAP.
* Issue #313: Detecting CppUnit when using Macports.
  (Patch from mouse07410)


SoftHSM 2.2.0 - 2016-12-05

* Issue #143: Delete a token using softhsm2-util.
* Issue #185: Change access mode bits for /var/lib/softhsm/tokens/
  to 1777. All users can now create tokens, but only access their own.
  (Patch from Rick van Rein)
* Issue #186: Reinitializing a token will now keep the token, but all
  token objects are deleted, the user PIN is removed and the token
  label is updated.
* Issue #190: Support for OpenSSL 1.1.0.
* Issue #198: Calling C_GetSlotList with NULL_PTR will make sure that
  there is always a slot with an uninitialized token available.
* Issue #199: The token serial number will be used when setting the slot
  number. The serial number is set after the token has been initialized.
  (Patch from Lars Silvén)
* Issue #203: Update the command utils to use the token label or serial
  to find the token and its slot number.
* Issue #209: Possibility to test other PKCS#11 implementations with the
  CppUnit test.
  (Patch from Lars Silvén)
* Issue #223: Mark public key as non private by default.
  (Patch from Nikos Mavrogiannopoulos)
* Issue #230: Install p11-kit module, to disable use --disable-p11-kit.
  (Patch from David Woodhouse)
* Issue #237: Add windows continuous integration build.
  (Patch from Peter Polacko)

Bugfixes:
* Issue #201: Missing new source file and test configuration in the
  Windows build project.
* Issue #205: ECDSA P-521 support for OpenSSL and better test coverage.
* Issue #207: Fix segmentation faults in loadLibrary function.
  (Patch from Jaroslav Imrich)
* Issue #215: Update the Homebrew install notes for OSX.
* Issue #218: Fix build warnings.
* Issue #235: Add the libtool install command for OSX.
  (Patch from Mark Wylde)
* Issue #236: Use GetEnvironmentVariable instead of getenv on Windows.
  (Patch from Jaroslav Imrich)
* Issue #239: Crash on module unload with OpenSSL.
  (Patch from David Woodhouse)
* Issue #241: Added EXTRALIBS to Windows utils project.
  (Patch from Peter Polacko)
* Issue #250: C++11 not detected.
* Issue #255: API changes in Botan 1.11.27.
* Issue #260: Fix include guard to check WITH_FIPS.
  (Patch from Matt Hauck)
* Issue #268: p11test fails on 32-bit systems.
* Issue #270: Build warning about "converting a string constant".
* Issue #272: Fix C++11 check to look for unique_ptr.
  (Patch from Matt Hauck)


SoftHSM 2.1.0 - 2016-03-14

* Issue #136: Improved guide and build scripts for Windows.
  (Thanks to Jaroslav Imrich)
* Issue #144: The password prompt in softhsm2-util can now be
  interrupted (ctrl-c).
* Issue #166: Add slots.removable config option.
  (Patch from Sumit Bose)
* Issue #180: Windows configure script improvements.
  (Patch from Arnaud Grandville)

Bugfixes:
* Issue #128: Prioritize the return values in C_GetAttributeValue.
  (Patch from Nicholas Wilson)
* Issue #129: Fix errors reported by Visual Studio 2015.
  (Patch from Jaroslav Imrich)
* Issue #132: Handle the CKA_CHECK_VALUE correctly for certificates
  and symmetric key objects.
* Issue #154: Fix the Windows build and destruction order of objects.
  (Patch from Arnaud Grandville)
* Issue #162: Not possible to create certificate objects containing
  CKA_CERTIFICATE_CATEGORY, CKA_NAME_HASH_ALGORITHM, or
  CKA_JAVA_MIDP_SECURITY_DOMAIN.
* Issue #163: Do not attempt decryption of empty byte strings.
  (Patch from Michal Kepien)
* Issue #165: Minor changes after a PVS-Studio code analysis, and
  C_EncryptUpdate crash if no ciphered data is produced.
  (Patch from Arnaud Grandville)
* Issue #169: One-byte buffer overflow in call to EVP_DecryptUpdate.
* Issue #171: Problem while closing library that is initialized but
  improperly finalized.
* Issue #173: Adjust return values for the template parsing.
* Issue #174: C_DeriveKey() error with leading zero bytes.
* Issue #177: CKA_NEVER_EXTRACTABLE set to CK_FALSE on objects
  created with C_CreateObject.
* Issue #182: Resolve compiler warning.
  (Patch from Josh Datko)
* Issue #184: Stop discarding the global OpenSSL libcrypto state.
  (Patch from Michal Trojnara)
* SOFTHSM-123: Fix library cleanup on BSD.


SoftHSM 2.0.0 - 2015-07-17

* SOFTHSM-121: Test cases for C_DecryptUpdate/C_DecryptFinal.
* Support C_DecryptUpdate/C_DecryptFinal for symmetric algorithms.
  (Patch from Thomas Calderon)

Bugfixes:
* SOFTHSM-120: Segfault after renaming variables.


SoftHSM 2.0.0b3 - 2015-04-17

* SOFTHSM-113: Support for Botan 1.11.15
* SOFTHSM-119: softhsm2-util: Support ECDSA key import
  (Patch from Magnus Ahltorp)
* SUPPORT-139: Support deriving generic secrets, DES, DES2, DES3, and AES.
  Using DH, ECDH or symmetric encryption.

Bugfixes:
* SOFTHSM-108: A marked as trusted certificate cannot be imported.
* SOFTHSM-109: Unused parameter and variable warnings.
* SOFTHSM-110: subdir-objects warnings from autoreconf.
* SOFTHSM-111: Include FIPS-NOTES.md in dist.
* SOFTHSM-112: CKM_AES_KEY_WRAP* conflict in pkcs11.h.
* SOFTHSM-114: Fix memory leak in a test script.
* SOFTHSM-115: Fix static analysis warnings.
* SUPPORT-154: A marked as non-modifiable object cannot be generated.
* SUPPORT-155: auto_ptr is deprecated in C++11, use unique_ptr.
* SUPPORT-157: Derived secrets were truncated after encryption and
  could thus not be decrypted.
* Mutex should call MutexFactory wrapper functions.
  (Patch from Jerry Lundstrom)
* Return detailed error message to loadLibrary().
  (Patch from Petr Spacek)


SoftHSM 2.0.0b2 - 2014-12-28

* SOFTHSM-50: OpenSSL FIPS support.
* SOFTHSM-64: Updated build script for Windows.
* SOFTHSM-100: Use --free with softhsm2-util to initialize the first
  free token.
* SOFTHSM-103: Allow runtime configuration of log level.
* SOFTHSM-107: Support for CKM_<symcipher>_CBC_PAD.
* Add support for CKM_RSA_PKCS_OAEP key un/wrapping.
  (Patch from Petr Spacek)
* Use OpenSSL EVP interface for AES key wrapping.
  (Patch from Petr Spacek)
* Allow reading configuration file from user's home directory.
  (Patch from Nikos Mavrogiannopoulos)

Bugfixes:
* SOFTHSM-102: C_DeriveKey() uses OBJECT_OP_GENERATE.
* Coverity found a number of issues.


SoftHSM 2.0.0b1 - 2014-09-10

* SOFTHSM-84: Check that all mandatory attributes are given during
  the creation process.
* SOFTHSM-92: Enable -fvisibility=hidden on per default
* SUPPORT-137: Implement C_EncryptUpdate and C_EncryptFinal
  (Patch from Martin Paljak)
* Add support for CKM_RSA_PKCS key un/wrapping
  (Patch from Petr Spacek)

Bugfixes:
* SOFTHSM-66: Attribute handling when using multiple threads
* SOFTHSM-93: Invalid C++ object recycling.
* SOFTHSM-95: umask affecting the calling application.
* SOFTHSM-97: Check if Botan has already been initialized.
* SOFTHSM-98: Handle mandatory attributes for DSA, DH, and ECDSA
  correctly.
* SOFTHSM-99: Binary encoding of GOST values.
* SUPPORT-136: softhsm2-keyconv creates files with sensitive material
  in insecure way.


SoftHSM 2.0.0a2 - 2014-03-25

* SOFTHSM-68: Display a better configure message when there is a
  version of Botan with a broken ECC/GOST/OID implementation.
* SOFTHSM-70: Improved handling of the database backend.
* SOFTHSM-71: Supporting Botan 1.11.
* SOFTHSM-76: Do not generate RSA keys smaller than 1024 bit when
  using the Botan crypto backend.
* SOFTHSM-83: Support CKA_VALUE_BITS for CKK_DH private key object.
* SOFTHSM-85: Rename libsofthsm.so to libsofthsm2.so and prefix the
  command line utilties with softhsm2-.
* SOFTHSM-89: Use constants and not strings for signaling algorithms.
* SUPPORT-129: Possible to use an empty template in C_GenerateKey.
  The class and key type are inherited from the generation mechanism.
  Some mechanisms do however require a length attribute. [SOFTHSM-88]
* SUPPORT-131: Support RSA-PSS using SHA1, SHA224, SHA256, SHA384,
  or SHA512. [SOFTHSM-87]

Bugfixes:
* SOFTHSM-39: Fix 64 bit build on sparc sun4v.
* SOFTHSM-69: GOST did not work when you disabled ECC.
* SOFTHSM-78: Correct the attribute checks for a number of objects.
* SOFTHSM-80: Prevent segfault in OpenSSL GOST HMAC code.
* SOFTHSM-91: Fix a warning from static code analysis.
* Fixed a number of memory leaks.


SoftHSM 2.0.0a1 - 2014-02-10

This is the first alpha release of SoftHSMv2. It focuses on a higher
level of security by encrypting sensitive information and using
unswappable memory. There is also a more generalized crypto backend,
where you can use Botan or OpenSSL.
jperkin pushed a commit that referenced this issue Jan 3, 2020
1.2.4.0
* Add TH Lift instances for Data.Text.Text and Data.Text.Lazy.Text
  (gh-232)
* Update Haddock documentation to better reflect fusion eligibility;
  improve fusion rules for takeWhileEnd and length (gh-241, ghc-202)
* Optimise Data.Text.replicate from O(n) to O(log n) (gh-209)
* Support base-4.13.0.0

1.2.3.1
* Make decodeUtf8With fail explicitly for unsupported non-BMP
  replacement characters instead silent undefined behaviour (gh-213)
* Fix termination condition for file reads via Data.Text.IO operations
  (gh-223)
* A serious correctness issue affecting uses of take and drop with
  negative counts has been fixed (gh-227)
* A bug in the case-mapping functions resulting in unreasonably large
  allocations with large arguments has been fixed (gh-221)

1.2.3.0
* Spec compliance: toCaseFold now follows the Unicode 9.0 spec
  (updated from 8.0).
* Bug fix: the lazy takeWhileEnd function violated the lazy text
  invariant (gh-184).
* Bug fix: Fixed usage of size hints causing incorrect behavior
  (gh-197).
* New function: unsnoc (gh-173).
* Reduce memory overhead in encodeUTF8 (gh-194).
* Improve UTF-8 decoder error-recovery (gh-182).
* Minor documentation improvements (@SInCE annotations, more examples,
  clarifications).

1.2.2.2
* The toTitle function now correctly handles letters that immediately
  follow punctuation. Before, "there's" would turn into
  "There'S". Now, it becomes "There's".
* The implementation of unstreaming is faster, resulting in operations
  such as map and intersperse speeding up by up to 30%, with smaller
  code generated.
* The optimised length comparison function is now more likely to be
  used after some rewrite rule tweaking.
* Bug fix: an off-by-one bug in takeEnd is fixed.
* Bug fix: a logic error in takeWord16 is fixed.

1.2.2.1
* The switch to integer-pure in 1.2.2.0 was apparently mistaken. The
  build flag has been renamed accordingly. Your army of diligent
  maintainers apologizes for the churn.
* Spec compliance: toCaseFold now follows the Unicode 8.0 spec
  (updated from 7.0)
* An STG lint error has been fixed
jperkin pushed a commit that referenced this issue Feb 6, 2020
v3.3.1      Mon Jan 13 10:27:16 CST 2020
========================================
[FIXES]
Some regexes would be shown as invalid when used with the -Q option.  Since
the -Q tells ack to treat the regex as a literal, this shouldn't be
possible.  (GH#294)


v3.3.0      Sat Dec 28 16:00:21 CST 2019
========================================
[FEATURES]
The error message ack displays when the regex passed is invalid has been
improved.  The message is more readable and includes a pointer to the
offending part of the regex.  For example:

    $ ack 'status: (open|closed|in progress'
    ack: Invalid regex 'status: (open|closed|in progress'
    Regex: status: (open|closed|in progress
                   ^---HERE Unmatched ( in regex

Added many new file and directory exclusions to speed up file selection.
* Python's *.pyc, *.pyd and *.pyo compiled files
* Python's __pycache__ and .pytest_cache directories
* Linux *.so shared object files
* Windows dynamic-link library *.dll files
* gettext compiled *.mo translation files
* macOS's __MACOSX directories and .DS_Store files

Reorganized the --help menu to put "action" options like -f, -g and -l at
the top of the listing.

The --show-types option only has an effect with -f or -g.  ack will now
tell you if you use --show-types without -f or -g when it will have no
effect.

Improved the error message when ack gets passed two options that can't be
used together.


[FIXES]
Fixed the behavior of --break and --heading.  Using --break would
implicitly set --noheading, and --heading would implicitly set --nobreak.

The following pairs of options don't make sense to use together, and ack will now warn you if you try:

* -x and --files-from
* -v and -o
* -v and --output
* -v and --passthru

Fixed the minimum version of the Getopt::Long module required. (GH #287)

The line number and filename separators in --passthru mode now work the
same as in context (-A/-B/-C) mode.  (GH #291)


v3.2.0      Sun Nov  3 22:52:18 CST 2019
========================================
[FEATURES]
Added "-t X" as a short alias for --type=X.

Added "-T X" as a short alias for --type=noX.

The feature of using the name of the type as an option is deprecated.  For
example, ack currently lets you use "--perl" instead of "--type=perl" or
"-t perl",  This is now deprecated and will be removed in a future release.

Removed support for Parrot (--parrot).


v3.1.3      Sat Oct 19 19:23:48 CDT 2019
========================================
No changes to functionality.  Fixed a problem with version numbers.
Thanks to Dan Book for his help.
See beyondgrep/ack3@b3c43d4


v3.1.2      Mon Oct 14 21:47:51 CDT 2019
========================================
[SPEEDUP]
Using -w with a pattern that ended with a metacharacter would be slower
than it should be because it would skip an optimization. Now it's fixed.
(GH #181, #251)

[FIXES]
Fixed test failures that would sometimes happen on Windows machines because
of taint mode.  Thanks, Tomasz Konojacki. (GH #235)

Remove the use of the version.pm module.


v3.1.1      Sat Aug 31 22:56:10 CDT 2019
========================================
[SPEEDUP]
Improved the speed up the -l, -L and -c options by pre-scanning the file
in bulk before doing line-by-line scan. (GH #221)

ack now uses File::Next 1.18 which calls stat() only once per file or
directory, instead of sometimes calling it twice.  This should improve the
time spent traversing directories.

[FIXES]
On Windows, patterns with $ to mark the end of the line would not match.
(GH #229)

[DOCUMENTATION]
Fixed docs that referred to --range-stop instead of --range-end. (GH #228)


v3.1.0      Thu Aug 22 22:43:15 CDT 2019
========================================
[FEATURES]
Added the --range-start and --range-end options to allow searching only
ranges of each file. (GH #165)


v3.0.3      Tue Aug 20 23:42:02 CDT 2019
========================================
[FIXES]
Made smartcase's check for lowercase patterns smarter.

[DOCUMENTATION]
Updated many URLs, especially in the config. (GH #223)


v3.0.2      Thu Jul  4 21:42:43 CDT 2019
========================================
[FIXES]
ack's smart-case feature would think that a pattern like "select \S+ from"
is looking for a uppercase letter, and so would not make a case-insensitive
search.  Now, ack knows that uppercase letters in metacharacters don't
count as looking for a uppercase letter. (GH #156, 187, 214)


v3.0.1      Tue Jun 25 20:47:58 CDT 2019
========================================
[FIXES]
The -s option tells ack not to complain about missing or unreadable files
it tries to search.  The -s option would not always work in conjection with
the -x option.  Now it does.  Thanks, Anders Eriksson and M. Scott Ford.
(GH #175)

ack would die if you specified a --output option that didn't use one
of Perl's special match variables.  Now it won't.  Thanks, M. Scott
Ford. (GH #210)

[INTERNALS]
Added a Dockerfile for use when working on ack development.  Thanks,
M. Scott Ford. (GH #208)


v3.0.0      Mon May 27 21:46:34 CDT 2019
========================================
First official release of ack verison 3.

See "Release notes for ack 3.0.0" at the bottom of this document for
details of what has changed between ack 2.x and ack 3.

[FIXES]
Fixed a failing test if Pod::Perldoc::ToTextOverstrike was being
used. (GH#202)


2.999_08 Sun May 19 20:33:13 CDT 2019
=====================================
[ENHANCEMENTS]
Consolidated the manual and FAQ into one document, accessible with --man.
Cookbook.pm has been moved to dev for future use.

Added SVG filetype.

[FIXES]
Invalid options used to cause an error message triplicate. Fixes GH #192.


2.999_07 Sun Mar 31 21:54:55 CDT 2019
=====================================
[ENHANCEMENTS]
Added --help-colors and --help-rgb-colors options to display colors
available for color options.

Many more mutex options have been added to help users know when they've
made a mistake.  For example, it doesn't make sense to have -C to show
context when using -f to get a file list.

Overhauled the handling of mutually exclusive options.  We now properly
handle mutex options even if they are abbreviated.  The actual argument
used is now shown.  Fixes GH #57.


2.999_06 Thu Jan 10 20:37:23 CST 2019
=====================================
[ENHANCEMENTS]
The --tt option for Template Toolkit is now --ttml.  The short version
still works.

The standalone version of ack no longer supports the --faq or --cookbook
options, which never worked right for it anyway.  Instead, --man includes
the FAQ and Cookbook.

The --man option no longer uses the `perldoc` program for rendering the
documentation.  This means you'll have to pipe it into your own pager if
you want scrolling, but it makes it much more portable.

[FIXES]
ack would stop finding files if there was a file named "0" in the current
directory. Thanks, Rob Hoelz. (GH #162)

[REMOVED FUNCTIONALITY]
The --lines option has been removed. (GH #167)

The -u short alias for --underline has been removed. (GH #173)


2.999_05 Sun Oct 21 21:37:39 CDT 2018
=====================================
[ENHANCEMENTS]
Add -p as a shorter version of --proximate.


2.999_04 Thu Sep  6 17:45:07 CDT 2018
=====================================
[ENHANCEMENTS]
Added -P as a negation of --proximate.  It is the same as --proximate=0.
If you have --proximate in an .ackrc, -P can be used to cancel it.

Added --ts for Typescript.


2.999_03 Fri Jan 19 11:02:46 CST 2018
=====================================
[ENHANCEMENTS]
The check for whether we need to scan the entire file line-by-line now
reads 10M of file instead of just 100K.

Removed support for the ACK_OPTIONS environment variable.  Use an ackrc
file instead.  If you have ACK_OPTIONS set, ack will give a warning.

Lots of internal speedups.


2.999_02 Mon Jan  8 23:03:42 CST 2018
=====================================
[ENHANCEMENTS]
Added an optimization to make ack only do a line-by-line search of a
file if there's a match somewhere in the file.  This gives ack a 20-30%
in timings of common cases.


2.999_01 Mon Jan  1 22:11:17 CST 2018
=====================================
[ENHANCEMENTS]
Added --pod as a filetype, recognizing .pod as its extension.  This is
Perl's POD (Plain Old Documentation) format.

Added --markdown as a filetype, recognizing .md and .markdown as
extensions.

--pager is no longer allowed in a project .ackrc file.  --match and
--output are not allowed in any .ackrc file.

ack 3's new features are listed below for now.

[FIXES]
--lines had some mutex options that were not getting checked.  Now,
--lines is mutex with --passthru, --match and all context options.


=============================
# Release notes for ack 3.0.0
=============================

# New features

ack 3 is a greplike tool optimized for searching large code trees.

Improvements over ack 2 include:

* Improved `-w` option.

* `-w` option will warn if your pattern does not lend itself to
word matching.

* `-i`, `-I` and `--smart-case`

* `--proximate=N` option

* Added `--pod` and `--markdown`.

* Added `GNUmakefile` to the list of makefile specs.

* Added `-S` as a synonym for `--smart-case`.

# Bug fixes

* Column numbers were not getting colorized in the output.  Added
`--color-colno` option and `ACK_COLOR_COLNO` environment variable.

* A pattern that wanted whitespace at the end could match the
linefeed at the end of a line.  This is no longer possible.

# Incompatibilities with ack 2

## ack 3 requires Perl 5.10.1

ack 2 only needed Perl 5.8.8.  This shouldn't be a problem since 5.10.1
has been out since 2009.

## ack 3 no longer highlights capture groups.

ack 2 would highlight your capture groups.  For example,

    ack '(set|get)_foo_(name|id)'

would highlight the `set` or `get`, and the `name` or `id`, but not the
full `set_user_id` that was matched.

This feature was too confusing and has been removed.  Now, the entire
matching string is highlighted.

## ack 3's --output allows fewer special variables

In ack 2, you could put any kind of Perl code in the `--output`
option and it would get `eval`uated at run time, which would let
you do tricky stuff like this gem from Mark Fowler
(http://www.perladvent.org/2014/2014-12-21.html):

    ack --output='$&: @{[ eval "use LWP::Simple; 1" && length LWP::Simple::get($&) ]} bytes' \
                    'https?://\S+' list.txt
    http://google.com/: 19529 bytes
    http://metacpan.org/: 7560 bytes
    http://www.perladvent.org/: 5562 bytes

This has been a security problem in the past, and so in ack 3 we
no longer `eval` the contents of `--output`.  You're now restricted
to the following variables: `$1` thru `$9`, `$_`, `$.`, `$&`, ``$` ``,
`$'` and `$+`.  You can also embed `\t`, `\n` and `\r` ,
and `$f` as stand-in for `$filename` in `ack2 --output` .
jperkin pushed a commit that referenced this issue Mar 12, 2020
Vala 0.48.0
===========
 * Various improvements and bug fixes:
  - vala:
    + Fix circular reference in Property/EnumValueType
    + Report an internal error for unavailable context and bail
    + Prevent possible stack-overflow in Class.is_subtype_of()
  - Add missing CodeContext.pop() calls
  - codegen: Add more "low-level" includes of "glib.h"
  - girparser: Decrease return_array_length_idx for transformed function
  - girparser: Delay adding of "GLib.Object" prerequisite to interfaces
  - manual: Update from wiki.gnome.org

 * Bindings:
  - vapi: Update GIR-based bindings

 * Contributors:
   Alberto Fanjul, Arnaud Bonatti, Corentin Noël, Evan Nemerson, Florian Brosch,
   Jeremy Philippe, Michael Gratton, Ole André Vadla Ravnås, Princeton Ferro,
   Rico Tzschichholz, Simon Werbeck

Vala 0.47.92
============
 * Various improvements and bug fixes:
  - Add support for sealed classes in bindings [#278]
  - codegen: Don't initialize stack-allocated array with local-constant
    length [#910]
  - vala: Improve robustness of analyzer pass for language-servers [#911]
  - vala: Add local-variables to current scope regardless its error state
  - testrunner: Pass G_DEBUG=fatal-warnings to invalid test

 * Bindings:
  - Add some fundamental deps files to improve --nostdpkg support [#911]

Vala 0.47.91
============
 * Various improvements and bug fixes:
  - vala:
    + Fix base-access check for compact classes (2)
    + Don't ignore errors in Parameter and acknowledge them further
    + Properly set CodeNode.error when reporting an error
  - girparser: Report a warning for conflicting class and instance methods
  - testrunner: Invalid tests and therefore expected failures must return 1
  - manual: Update from wiki.gnome.org

 * Bindings:
  - Add harfbuzz-gobject binding [#909]
  - gstreamer: Update from 1.17.0+ git master
  - gtk+-*.0,gtk4: Fix iter parameter of TextIter.order() [#908]
  - gtk4: Update to 3.98.0+410dbdf6
  - pango: Update and add harfbuzz-gobject as dependency
  - webkit2gtk-4.0: Update to 2.27.90

Vala 0.47.4
===========
 * Various improvements and bug fixes:
  - codegen:
    + Skip StructRegisterFunction for boolean/integer/floating types [#901]
    + Handle different type-symbols in visit_base_access() [#901]
    + Explicitly include header for length-type of arrays
    + Explicitly include <glib.h> as needed for null-literal
    + Make *_try_id specific to emit-context instead being global states
  - vala:
    + Improve detection of recursive struct declarations [#902]
    + Inline allocated arrays require length or initializer [#903]
  - parser: Improve robustness and behavior of --keep-going

 * Bindings:
  - javascriptcoregtk-4.0: Make JSC.Class usable by defining the right callback
  - gtk4: Update to 3.96.0+4ab12ab7
  - vapi: Update GIR-based bindings

Vala 0.47.3
===========
 * Highlights:
  - Add further support for params arrays [#128]

 * Various improvements and bug fixes:
  - codegen:
    + Don't set implemenation of interface property to its own [#891]
    + Use result value of assignment rather than its computation [#895]
    + Cast instance parameter in member-initializer for base-properties [#899]
  - vala:
    + Infer target_type in coalescing expressions [#892]
    + Non-nullable value-type in coalesce expression needs to be copied [#893]
    + Fix short-circuiting behavior of coalescing operator [#534]
    + Always bail if there are semantic errors
  - girparser: Apply explicitly given ctype metadata attributes on callables

 * Bindings:
  - glib-2.0: Let (u)int.try_parse() return false if there is an unparsed part
  - gtk4: Update to 3.96.0+7e2e92a8
  - gstreamer: Update from 1.17.0+ git master
  - vapi: Update GIR-based bindings
  - webkit2gtk-4.0: Update to 2.27.4

Vala 0.47.2
===========
 * Highlights:
  - compiler: Add "--depfile" option writing package dependencies to given file

 * Various improvements and bug fixes:
  - codegen:
    + Fix support of dynamic DBus methods
    + Fix vfunc signature of delegate-typed property in interface
    + Fix precondition in creation method of structs
    + Remove unreachable code in TypeRegisterFunction.init_from_type()
    + Improve *_get_type() fast path (requires glib >= 2.58) [#879]
  - vala:
    + Report error for async creation expression without yield
    + Don't require constant initializer in fast-vapi [#461]
    + VoidType is actually compatible with itself [#878]
    + Improve handling of "void" as generic type [#878]
    + Keep formal_target_type on transform of method-call/object-creation [#835]
    + Add a basic parameter check for [Print] methods
    + Let the parser have set namespace members as static
    + Don't ignore inner errors in Block and acknowledge them further
    + Improve error message for unsupported inner types and declarations
    + Don't allow "va_list" as return-type or type of fields [#884]
    + Check before accessing "name" of parent_symbol which might be null
    + Allow to override base interface properties explicitly
  - gidl/girparser: Creation methods must not be marked as static
  - parser: Implicit "main" method of main-block is public and static
  - scanner: "\x" requires two hex digits at most
  - scanner: Improve check of "\u" escape sequence
  - genie: Fix parser's inner state when a struct is declared after a class

 * Bindings:
  - glib-2.0: Add to_string() for GLib.PollFd and GLib.Pid
  - glib-2.0: Add new symbols from 2.64
  - glib-2.0: Reset errno before calling strto*() functions.
  - gstreamer: Update from 1.17.0+ git master
  - gtk4: Update to 3.96.0+448a4023
  - pango: Update to 1.44+
  - vapi: Update GIR-based bindings
  - webkit2gtk-4.0: Update to 2.27.3

Vala 0.47.1
===========
 * Highlights:
  - Various improvements for the POSIX profile
  - codegen:
    + Allow passing/retrieving any delegate to/from varargs parameter
    + Support gobject property of null-terminated array without length [#855]
    + Support gobject property of delegates not carrying their target [#856]
    + Warn when directly accessing member of silent cast-expression
  - vala:
    + Add DelegateType.target/destroy fields to access its user-data [#857]
    + Accept interface as inner type for object-type symbols [#697]
    + Add GenericType.dup/destroy fields [#190]
    + Support "unowned var" to declare local variables [#152]
  - compiler: Add "--list-sources" options to output list of all sources [#872]

 * Various improvements and bug fixes:
  - codegen:
    + Move type-argument checks to SemanticAnalyzer
    + Make CCodeBaseModule.generate_method_declaration() return bool
    + Fix custom reference-counting for compact classes
    + G_DEFINE_AUTOPTR_CLEANUP_FUNC must not declared more than once
    + Use SemanticAnalyzer.get_data_type_for_symbol()
    + Commonize the determining of return-type for delegates and methods
  - vala:
    + Rename DataType.data_type property to DataType.type_symbol
    + Unify backing symbol instance of data-types
    + Respect --abi-stability in Class/Interface.accept_children()
    + Don't mark method as used on recursive usage of itself [#100]
    + Set GLib.Error as symbol of error-types if no error-domain was given
    + Make Callable derive from Symbol
  - libvaladoc: Remove TypeReference.pass_ownership API
  - valadoc: Rename FormalParameter to Parameter
  - girwriter: Fix position of priv field (--abi-stability) [#850]

 * Bindings:
  - glib-2.0: Add binding for "gettext()" [#864]
  - glib-2.0: Add new symbols from 2.64
  - glib-2.0: Add optional "base" parameter to *.parse/try_parse() of integers
    and check errno for EINVAL and ERANGE in *.try_parse() [#223]
  - glib-2.0: Add (u)int.try_parse() [#649]
  - glib-2.0: Add "has_typedef = false" to custom MarkupParser*Func delegates
  - gtk+-*.0: Fix iter parameter of TextBuffer.backspace()
  - gtksourceview-2.0: Fix iter parameter in SourceBuffer.backward/forward/...
  - libusb-1.0: Use a wrapper for Context.get_device_list() [#151]
jperkin pushed a commit that referenced this issue Mar 26, 2020
   1.5
   ---
   * Fixes #280: Problem with new record
   * Fixes #284: Manpage errors
   * Fixes #287: Problem with dnssec create with algorithm/flags

   1.4
   ---
   * Fixes #268: Drop support of click < 7.0
   * Drop support of python 2.6 and 3.3
   * Add coverage
   * Test python 3.7 and pypy in travis
   * PEP8

   1.3
   ---

   * Use pytest instead of nose
   * Add extra parameter in domain create
   * Add support of Python 3.7
   * Fixes #245: Add support of DNSSEC
   * Fixes #250: Drop support of Python < 3.3

   1.2
   ---

   * Add support for paas size s+ for creation/update
   * Fixes #232: Update 'gandi record update' command to allow filtering by name
   * Fix bug when attempting to migrate a vm which cannot be migrated
   * Only display DC closed warning if a date is set

   1.1
   ---

   * FR-SD5 is now the default datacenter.
   * Add new 'gandi dns update' command.
   * Fixes #228: Generate a user password at the creation of a VM
   * Improve wait for ssh connectivity after 'gandi vm create' command to handle ipv6
   * Fix a bug with 'gandi disk migrate' command not working with multiple datacenters choices
   * Improve documentation for generating username/apikey with Gandi V5

   1.0
   ----

   * New 'dns' namespace to manage DNS records/dnssec through LiveDNS API.
   * Add new 'gandi vm migrate' command.
   * Refactor internal click code usage. Remove hackish code to handle
     nested commands which was limited to only 1 nested level.
     - This change will break code of users which were using custom commands
       on top of Gandi CLI, To fix this you have to use the proper click syntax
       to declare a new group for your commands.
     - This change also remove the automatic listing of all namespace commands
       upon a typo or unknown/wrong command.
   * Fixes #224: DeprecationWarning makes tests fail with python 3.6.2

   0.22
   ----

   * Fixes #223: 'gandi setup' command error
   * Fixes #222: AttributeError during vm creation on a private vlan
   * Fixes tests for 'gandi deploy' and 'gandi status' commands

   0.21
   ----

   * Add new 'gandi disk migrate' command
   * Update 'gandi setup' command to ask for apikey for REST API
   * Handle deprecated images
     - Add a warning during 'gandi vm create' command
     - Display a * before image labels on 'gandi vm create' help
     - Display a /!\ DEPRECATED on 'gandi vm images' command
   * Fixes #220: gandi record update issues
     - Do not cast to int the id of the record, use the retrieve value
     - Handle both record syntax with 'IN' or not when parsing
     - Delete created zone if record.update call fail from xmlrpc API
   * Fixes #219: Can't remove disk snapshot profile
   * vm: delete: Fix delete when we reach the list limit
     - Fixed a bug when deleting a vm that wasn't listed in the first 500 results
       of gandi.iaas.list.
   * Fix issue when updating disk kernel with a kernel from another datacenter
     - CLI was proposing only kernels available on datacenter 1, but some kernels
       are available only on other datacenters, so we list everything for --kernel
       parameters, and for disk update command we add a new check if this kernel is
       available for this disk on this datacenter.
   * Add epilog to help messages to notify user about man documentation
   * Add one new verbose level for dumping data

   0.20
   ----

   * Add support for python3.6
   * Debian 8 is the new default VM image
   * FR-SD3 is the new default datacenter
   * Update 'gandi mail create' command to allow passing password as parameter
   * Update 'gandi certificate create' command: duration is now limited to 2 years
   * Update 'gandi ip create' command to fix bad units in help message
   * Fixes #182: 'gandi disk create' will detect datacenter when creating a new VM disk
   * Fixes #184: 'gandi disk list' can now filter for attach/detach state
   * Fixes #192: 'gandi certificate info' now still works after 500 certificates
   * Fixes #201: 'gandi certificate export' was duplicating intermediate certificate
   * Fixes #211: 'gandi paas deploy' tests should work again when using git commands
   * Fixes a bug with options not using corrected value when deprecated
   * Update unixpipe module to remove usage of posix and non portable imports
jperkin pushed a commit that referenced this issue Jun 7, 2020
Update ruby-coderay to 1.1.3.


1.1.3 (2020-05-29)

* Tokens: Ensure Ruby 2.6 compatibility. [#233, thanks to Jun Aruga]
* SQL scanner: Add numeric data type. [#223, thanks to m16a1]
* Java scanner: Add var as type. [#229, thanks to Davide Angelocola]
* Gem: Fix deprecation warning. [#246, thanks to David Rodr�«¿guez]
jperkin pushed a commit that referenced this issue Sep 9, 2020
pkgsrc changes:
 - Fix a typo in DISTNAME/PKGNAME: it is now go-ffuf (instead of go-fuff)
 - Only installs bin/ffuf and its README
 - Reset MAINTAINERship, requested by <nikita>

Changes:
1.1.0
-----
 - Add unsupported arch/os to goreleaser ignore list (#267)
 - Release 1.1 (#266)
 - Fix crash with 3xx requests without location header (#265)
 - Update random seed logic (#262)
 - fix file get thing (#226)
 - Update CONTRIBUTORS.md to add bsysop (#258)
 - Fixed behavior of wordlist:keyword separator in Windows (#240)
 - Add Host information to JSON output file (#223)
 - Support outputting all file formats concurrently (#218)
 - Increase default rows per page on html report (#217)
 - Add the wordlists to the header information (#211)
 - Fix error with missing usage info (#195)
 - Feature178 (#186)
 - Fix for #193 (#194)
 - Fix for issue #179 (#180)
 - Prepare for 1.1.0-git (#176)
jperkin pushed a commit that referenced this issue Sep 9, 2020
0.2.2
Changes

-DBus: Fetch playback progress when position is queried (fixes #223, #236)
-DBus: Fix trackid replacing string with d-bus path, Seek & SetPosition
implementation (#252)
-Add notifications (#247)
-Do not delete from empty queue (fixes #253)
-Make contextmenu aware of commands (e.g. for Vim-like bindings)
(fixes #108, #157, #178, #199, #250)
-Use libc for setlocale() to fix non-ASCII (#256)
jperkin pushed a commit that referenced this issue Sep 18, 2020
0.60:

Asciidoc:
 * Introduce "compat" option to parse like asciidoc or asciidoctor.

Text (and Markdown):
 * Fix the support of nested lists (GitHub's #131).

Other:
 * Remove the experimental C extension that was never built,
   distributed, tested nor modified since 2007.

XML:
 * Provide a meaningful message when the translators butcher the
   <placeholder> attributes instead of truncating the file.
   (GitHub's #254)


0.59.1:

po4a tool:
 * Really fix --srcdir and --destdir handling (Debian's #960892 again).
   Even with the previous fix, the aptitude package was still broken.

Documentation:
 * Clarify the syntax of -o parameters (GitHub's #233).

Sgml:
 * Sort the attributes. Without this, msgids are randomly fuzzied.
   (Debian's #725931 and Debian's #810988)


0.59:

po4a tool:
 * Fix --srcdir handling (GitHub's #237 and Debian's #960892).
   This bug was breaking the build of several packages, including dpkg.

Addendum:
 * New mode 'eof' to easily add at the end of the file (Debian's #960949).

Documentation:
 * Fix many typos and glitches
 * Start a section about external projects using po4a

Tests:
 * po4a: Add a test for the [po_directory] feature

Overall:
 * Improve the displayed messages, don't translate debug messages.


0.58.1:

Documentation:
 * Document an option of the XML parser (GitHub's #223).
 * Small glitches found during the translations.

Tests:
 * Also ignore 'Project-Id-Version' when diffing PO files (GitHub's #224)
 * asciidoc: reactivate tablecells tests

AsciiDoc:
 * Fix management of images in tables (Github's #226)
 * Tolerate underline length variations in two lines titles (Github's #212)


0.58:

AsciiDoc:
 * Accept numbered list items beginning with any number of dots
   (GitHub's #210)

Markdown:
 * Avoid translating Markdown fenced code block info string (GitHub's #194)
 * List Markdown fenced code block info string as text type (GitHub's #195)
 * Support YAML Front Matter (GitHub's #196). This requires YAML::Tiny.
 * Introduce options yfm_keys and yfm_skip_array to respectively
   specify which YAML keys should be translated, and that the array
   content should not be translated.
 * Work around a bug in YAML::Tiny that quotes numbers (GitHub's #217)
 * Add gettext flag "markdown-text" for relevant entries (GitHub's #208)

Text:
 * Honor the (existing) --neverwrap option to handle every content verbatim.

Texinfo:
 * Add the comments starting with 'TRANSLATORS:' to the po file
   (GitHub's #162)

XHTML:
 * Don't fail nor warn when a closing tag is missing, that's legit in HTML.
   (GitHub's #179)

XML and DocBook:
 * Allow attributes with no value (GitHub's #178).
 * Processing Instructions are handled as inline tags by default, but
   you can change them back to breaking with '-o break-pi' (GitHub's #170)

Yaml:
 * Introduce option to skip array values. (GitHub's #187)

po4a tool:
 * Cleanups and fixups about options' parsing (now tested and documented)
     _
    / \  You may need to upgrage your po4a.conf if you were using
   /_!_\ "unwanted features" (ie, bugs) of the previous implementation.

 * Do not touch source dir when --destdir is provided (Debian #602387)
 * Pass --add-location=file to msgmerge when receiving option porefs.
   (requires gettext >= 0.19 -- June 2014)
 * Option --master-charset sets the charset of the generated POT file.
 * Option --master-language sets the language of the generated POT file.
 * Add support for addendum path in po4a_paths (Debian #823189)
 * Stop pretending that --porefs can control the wrapping of reference
   comments, as the gettext tools used internally always rewrap them.

Scripts:
 * Rename po4aman-display-po to po4a-display-man
 * Rename po4apod-display-po to po4a-display-pod

Core:
 * Use UTF-8 by default (the 20th century is over -- Debian #862460)
   po4a used to prefer ascii unless it proved impossible. But the
   underlying detection would fail, possibly for document containing
   UTF-8 chars composed on printable ascii chars only.
 * Add a --wrap-po option to control how the po file is wrapped, and
   chose between either nicely wrapped files that tend to produce git
   conflicts, or ugly files that are easy to automatically deal with.

Tests:
 * Completely refactor most tests. They are now more reliable and the
   error messages are much more useful to understand the issues.
 * Many bugs to po4a and the core were ironed out in the process.
 * PO files content are now tested too (GitHub's #67)

Documentation:
 * Various cleanups by Golubev Alexander (GitHub's #190 & #191)
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 Nov 6, 2020
Version 1.64.1
--------------

- The BigInt type is now _actually_ available, as it wasn't enabled in the
  1.64.0 release even though it was mentioned in the release notes.

- Closed bugs and merge requests:
  * testCommandLine's Unicode tests failing on Alpine Linux [Philip Chimento,
    #296, !399]
  * build: Various clean-ups [Jan Tojnar, !403]
  * Correctly handle vfunc inout parameters [Marco Trevisan, !404]
  * Fix failed redirect of output in CommandLine tests [Liban Parker, !409]

Version 1.58.6
--------------

- Various backports:
  * Correctly handle vfunc inout parameters [Marco Trevisan]
  * Fix failed redirect of output in CommandLine tests [Liban Parker]
  * Avoid filename conflict when tests run in parallel [Philip Chimento]

Version 1.64.0
--------------

- No change from 1.63.92.

Version 1.63.92
---------------

- Closed bugs and merge requests:
  * object: Use g_irepository_get_object_gtype_interfaces [Colin Walters, Philip
    Chimento, #55, !52]
  * Add -fno-semantic-interposition to -Bsymbolic-functions [Jan Alexander
    Steffens (heftig), #303, !397]
  * examples: add a dbus-client and dbus-service example [Andy Holmes, !398]
  * Various GNOME Shell crashes during GC, mozjs68 regression [Jan Alexander
    Steffens (heftig), Philip Chimento, #301, !396]

Version 1.63.91
---------------

- Closed bugs and merge requests:
  * [mozjs68] Reorganize modules for ESM. [Evan Welsh, Philip Chimento, !383]
  * Various maintenance [Philip Chimento, !388]
  * Fix building GJS master with Visual Studio and update build instructions
    [Chun-wei Fan, !389]
  * Resolve "Gnome Shell crash on GC run with mozjs68" [Philip Chimento, !391]
  * installed-tests/js: Add missing dep on warnlib_typelib [Jan Alexander
    Steffens, !393]
  * object: Cache known unresolvable properties [Daniel van Vugt, Philip
    Chimento, !394, #302]

Version 1.58.5
--------------

- Closed bugs and merge requests:
  * Fix Visual Studio builds of gnome-3-34 (1.58.x) branch [Chun-wei Fan, !392]
  * Can not access GObject properties of classes without GI information [Juan
    Pablo Ugarte, !385, #299]

Version 1.63.90
---------------

- New JS API: The GObject module has gained new overrides:
  GObject.signal_handler_find(), GObject.signal_handlers_block_matched(),
  GObject.signal_handlers_unblock_matched(), and
  GObject.signal_handlers_disconnect_matched(). These overrides replace the
  corresponding C API, which was not idiomatic for JavaScript and was not fully
  functional because it used bare C pointers for some of its functionality.
  See modules/overrides/GObject.js for API documentation.

- New JavaScript features! This version of GJS is based on SpiderMonkey 68, an
  upgrade from the previous ESR (Extended Support Release) of SpiderMonkey 60.
  Here are the highlights of the new JavaScript features.
  For more information, look them up on MDN or devdocs.io.

  * New language features
    + The BigInt type, currently a stage 3 proposal in the ES standard, is now
      available.

  * New syntax
    + `globalThis` is now the ES-standard supported way to get the global
      object, no matter what kind of JS environment. The old way, `window`, will
      still work, but is no longer preferred.
    + BigInt literals are expressed by a number with "n" appended to it: for
      example, `1n`, `9007199254740992n`.

  * New APIs
    + String.prototype.trimStart() and String.prototype.trimEnd() now exist and
      are preferred instead of trimLeft() and trimRight() which are nonstandard.
    + String.prototype.matchAll() allows easier access to regex capture groups.
    + Array.prototype.flat() flattens nested arrays, well-known from lodash and
      similar libraries.
    + Array.prototype.flatMap() acts like a reverse filter(), allowing adding
      elements to an array while iterating functional-style.
    + Object.fromEntries() creates an object from iterable key-value pairs.
    + Intl.RelativeTimeFormat is useful for formatting time differences into
      human-readable strings such as "1 day ago".
    + BigInt64Array and BigUint64Array are two new typed array types.

  * New behaviour
    + There are a lot of minor behaviour changes as SpiderMonkey's JS
      implementation conforms ever closer to existing ECMAScript standards and
      adopts new ones. For complete information, read the Firefox developer
      release notes:
      https://developer.mozilla.org/en-US/Firefox/Releases/61#JavaScript
      https://developer.mozilla.org/en-US/Firefox/Releases/62#JavaScript
      https://developer.mozilla.org/en-US/Firefox/Releases/63#JavaScript
      https://developer.mozilla.org/en-US/Firefox/Releases/64#JavaScript
      https://developer.mozilla.org/en-US/Firefox/Releases/65#JavaScript
      https://developer.mozilla.org/en-US/Firefox/Releases/66#JavaScript
      https://developer.mozilla.org/en-US/Firefox/Releases/67#JavaScript
      https://developer.mozilla.org/en-US/Firefox/Releases/68#JavaScript

  * Backwards-incompatible changes
    + The nonstandard String generics were removed. These had only ever been
      implemented by Mozilla and never made it into a standard. (An example of a
      String generic is calling a string method on something that might not be a
      string like this: `String.endsWith(foo, 5)`. The proper way is
      `String.prototype.endsWith.call(foo, 5)` or converting `foo` to a string.)
      This should not pose much of a problem for existing code, since in the
      previous version these would already print a deprecation warning whenever
      they were used.
      You can use `moz68tool` from mozjs-deprecation-tools
      (https://gitlab.gnome.org/ptomato/moz60tool) to scan your code for this
      nonstandard usage.

- Closed bugs and merge requests:
  * invalid import on signal.h [#295, !382, Philip Chimento]
  * SpiderMonkey 68 [#270, !386, Philip Chimento]
  * GObject: Add override for GObject.handler_block_by_func [#290, !371, Philip
    Chimento]

Version 1.63.3
--------------

- Closed bugs and merge requests:
  * JS ERROR: TypeError: this._rooms.get(...) is undefined [Philip Chimento,
    #289, !367]
  * Run CI build with --werror [Philip Chimento, #286, !365]
  * build: Remove Autotools build system [Philip Chimento, !364]
  * gjs-symlink script is incompatible with distro builds [Michael Catanzaro,
    Bastien Nocera, #291, !369, !370]
  * installed-tests: Don't hardcode the path of bash [Ting-Wei Lan, !372]
  * Update Visual Studio build instructions (after migrating to full Meson-based
    builds) [Chun-wei Fan, !375]
  * object: Warn when setting a deprecated property [Florian Müllner, !378]
  * CI: Create mozjs68 CI images [Philip Chimento, !379]
  * Various maintenance [Philip Chimento, !374, !380, !381]

Version 1.58.4
--------------

- Now prints a warning when constructing an unregistered object inheriting from
  GObject (i.e. if you forgot to use GObject.registerClass.) In 1.58.2 this
  would throw an exception, which broke some existing code, so that change was
  reverted in 1.58.3. In this version the check is reinstated, but we log a
  warning instead of throwing an exception, so that people know to fix their
  code, but without breaking things.
  NOTE: In 1.64 (the next stable release) the warning will be changed back into
  an exception, because code with this problem can be subtly broken and cause
  unexpected errors elsewhere. So make sure to fix your code if you get this
  warning.

- Closed bugs and merge requests:
  * GSettings crash fixes [Andy Holmes, !373]

- Memory savings for Cairo objects [Philip Chimento, !374]

- Fix for crash in debug functions [Philip Chimento, !374]

Version 1.63.2
--------------

- There is an option for changing the generated GType name for GObject classes
  created in GJS to a new scheme that is less likely to have collisions. This
  scheme is not yet the default, but you can opt into it by setting
  `GObject.gtypeNameBasedOnJSPath = true;` as early as possible in your
  prograṁ. Doing this may require some changes in Glade files if you use
  composite widget templates.

  We recommend you make this change in your codebase as soon as possible, to
  avoid any surprises in the future.

- New JS API: GObject.Object has gained a stop_emission_by_name() method which
  is a bit more idiomatic than calling GObject.signal_stop_emission_by_name().

- It's now supported to use the "object" attribute in a signal connection in a
  composite widget template in a Glade file.

- Closed bugs and merge requests:
  * CI: Tweak eslint rule for unneeded parentheses [Florian Müllner, !353]
  * Smarter GType name computation [Marco Trevisan, !337]
  * Meson CI [Philip Chimento, !354]
  * Visual Studio builds using Meson [Chun-wei Fan, !355]
  * Hide internal symbols from ABI [Marco Trevisan, #194, !352]
  * Allow creating custom tree models [Giovanni Campagna, #71]
  * build: Fix dist files [Florian Müllner, !357]
  * GObject: Add convenience wrapper for signal_stop_emission_by_name() [Florian
    Müllner, !358]
  * Various maintenance [Philip Chimento, !356]
  * object_instance_props_to_g_parameters should do more check on argv [Philip
    Chimento, #63, !359]
  * Support flat C arrays of structures [Philip Chimento, !361]
  * Gtk Templates: support connectObj argument [Andy Holmes, !363]

- Various build fixes [Philip Chimento]

Version 1.58.2
--------------

- Closed bugs and merge requests:
  * GObject based class initialization checks [Marco Trevisan, Philip Chimento,
    !336]
  * Silently leaked return value of callbacks [Xavier Claessens, Philip
    Chimento, #86, !44]
  * Crash when calling Gio.Initable.async_init with not vfunc_async_init
    implementation [Philip Chimento, #287, !362]
  * [cairo] insufficient checking [Philip Chimento, #49, !360]

- Various crash fixes backported from the development branch that didn't close
  a bug or merge request.

Version 1.63.1
--------------

- Note that the 1.59, 1.60, 1.61, and 1.62 releases are hereby skipped, because
  we are calling the next stable series 1.64 to match gobject-introspection and
  GLib.

- GJS now includes a Meson build system. This is now the preferred way to build
  it; however, the old Autotools build system is still available for a
  transitional period.

- Closed bugs and merge requests:
  * GObject: Add convenience wrapper for signal_handler_(un)block() [Florian
    Müllner, !326]
  * GObject based class initialization checks [Marco Trevisan, Philip Chimento,
    !336]
  * Meson port [Philip Chimento, !338]
  * add http client example [Sonny Piers, !342]
  * Smaller CI, phase 2 [Philip Chimento, !343]
  * add websocket client example [Sonny Piers, !344]
  * Fix Docker images build [Philip Chimento, !345]
  * CI: Use new Docker images [Philip Chimento, !346]
  * docs: Update internal links [Andy Holmes, !348]
  * Don't pass generic marshaller to g_signal_newv() [Niels De Graef, !349]
  * tests: Fail debugger tests if command failed [Philip Chimento, !350]
  * Minor CI image fixes [Philip Chimento, !351]
  * Various fixes [Marco Trevisan, Philip Chimento]

Version 1.58.1
--------------

- Closed bugs and merge requests:
  * Import wiki documentation [Sonny Piers, !341]
  * Smaller CI, phase 1 [Philip Chimento, !339]
  * Crashes after setting child property 'icon-name' on GtkStack then displaying
    another GtkStack [Florian Müllner, #284, !347]
  * GLib.strdelimit crashes [Philip Chimento, #283, !340]

Version 1.58.0
--------------

- No change from 1.57.92.

Version 1.57.92
---------------

- Closed bugs and merge requests:
  * tests: Enable regression test cases for GPtrArrays and GArrays of structures
    [Stéphane Seng, !334]
  * Various maintenance [Philip Chimento, !333, !335]

Version 1.57.91
---------------

- GJS no longer links to libgtk-3. This makes it possible to load the Gtk-4.0
  typelib in GJS and write programs that use GTK 4.

- The heapgraph tool has gained some improvements; it is now possible to print a
  heap graph of multiple targets. You can also mark an object for better
  identification in the heap graph by assigning a magic property: for example,
  myObject.__heapgraph_name = 'Button' will make that object identify itself as
  "Button" in heap graphs.

- Closed bugs and merge requests:
  * Remove usage of Lang in non legacy code [Sonny Piers, !322]
  * GTK4 [Florian Müllner, #99, !328, !330]
  * JS syntax fixes [Marco Trevisan, Philip Chimento, !306, !323]
  * gi: Avoid infinite recursion when converting GValues [Florian Müllner, !329]
  * Implement all GObject-introspection test suites [Philip Chimento, !327,
    !332]
  * Heapgraph improvements [Philip Chimento, !325]

Version 1.57.90
---------------

- New JS API: GLib.Variant has gained a recursiveUnpack() method which
  transforms the variant entirely into a JS object, discarding all type
  information. This can be useful for dealing with a{sv} dictionaries, where
  deepUnpack() will keep the values as GLib.Variant instances in order to
  preserve the type information.

- New JS API: GLib.Variant has gained a deepUnpack() method which is exactly the
  same as the already existing deep_unpack(), but fits with the other camelCase
  APIs that GJS adds.

- Closed bugs and merge requests:
  * Marshalling of GPtrArray broken [#9, !311, Stéphane Seng]
  * Fix locale chooser [!313, Philip Chimento]
  * dbus-wrapper: Remove interface skeleton flush idle on dispose [!312, Marco
    Trevisan]
  * gobject: Use auto-compartment when getting property as well [!316, Florian
    Müllner]
  * modules/signals: Use array destructuring in _emit [!317, Jonas Dreßler]
  * GJS can't call glibtop_init function from libgtop [#259, !319,
    Philip Chimento]
  * GLib's VariantDict is missing lookup [#263, !320, Sonny Piers]
  * toString on an object implementing an interface fails [#252, !299, Marco
    Trevisan]
  * Regression in GstPbutils.Discoverer::discovered callback [#262, !318, Philip
    Chimento]
  * GLib.Variant.deep_unpack not working properly with a{sv} variants [#225,
    !321, Fabián Orccón, Philip Chimento]
  * Various maintenance [!315, Philip Chimento]

- Various CI fixes [Philip Chimento]

Version 1.57.4
--------------

- Closed bugs and merge requests:
  * gjs 1.57 requires a recent sysprof version for sysprof-capture-3 [#258,
    !309, Olivier Fourdan]

- Misc documentation changes [Philip Chimento]

Version 1.57.3
--------------

- The GJS profiler is now integrated directly into Sysprof 3, via the
  GJS_TRACE_FD environment variable. Call stack information and garbage
  collector timing will show up in Sysprof. See also GNOME/Initiatives#10

- New JS API: System.addressOfGObject(obj) will return a string with the hex
  address of the underlying GObject of `obj` if it is a GObject wrapper, or
  throw an exception if it is not. This is intended for debugging.

- New JS API: It's now possible to pass a value from Gio.DBusProxyFlags to the
  constructor of a class created by Gio.DBusProxy.makeProxyWrapper().

- Backwards-incompatible change: Trying to read a write-only property on a DBus
  proxy object, or write a read-only property, will now throw an exception.
  Previously it would fail silently. It seems unlikely any code is relying on
  the old behaviour, and if so then it was probably masking a bug.

- Closed bugs and merge requests:
  * Build failure on Continuous [#253, !300, Philip Chimento]
  * build: Bump glib requirement [!302, Florian Müllner]
  * profiler: avoid clearing 512 bytes of stack [!304, Christian Hergert]
  * system: add addressOfGObject method [!296, Marco Trevisan]
  * Add support for GJS_TRACE_FD [!295, Christian Hergert]
  * Gio: Make possible to pass DBusProxyFlags to proxy wrapper [!297, Marco
    Trevisan]
  * Various maintenance [!301, Philip Chimento]
  * Marshalling of GPtrArray broken [#9, !307, Stéphane Seng]
  * Build fix [!308, Philip Chimento]
  * Gio: sync dbus wrapper properties flags [!298, Marco Trevisan]
  * GjsMaybeOwned: Reduce allocation when used as Object member [!303, Marco
    Trevisan]

Version 1.57.2
--------------

- There are now overrides for Gio.SettingsSchema and Gio.Settings which avoid
  aborting the whole process when trying to access a nonexistent key or child
  schema. The original API from GLib was intended for apps, since apps should
  have complete control over which settings keys they are allowed to access.
  However, it is not a good fit for shell extensions, which may need to access
  different settings keys depending on the version of GNOME shell they're
  running on.

  This feature is based on code from Cinnamon which the copyright holders have
  kindly agreed to relicense to GJS's license.

- New JS API: It is now possible to pass GObject.TypeFlags to
  GObject.registerClass(). For example, passing
  `GTypeFlags: GObject.TypeFlags.ABSTRACT` in the class info object, will create
  a class that cannot be instantiated. This functionality was present in
  Lang.Class but has been missing from GObject.registerClass().

- Closed bugs and merge requests:
  * Document logging features [#230, !288, Andy Holmes]
  * Support optional GTypeFlags value in GObject subclasses [!290, Florian
    Müllner]
  * Ensure const-correctness in C++ objects [#105, !291, Onur Şahin]
  * Programmer errors with GSettings cause segfaults [#205, !284, Philip
    Chimento]
  * Various maintenance [!292, Philip Chimento]
  * debugger: Fix summary help [!293, Florian Müllner]
  * context: Use Heap pointers for GC objects stored in vectors [!294, Philip
    Chimento]

Version 1.56.2
--------------

- Closed bugs and merge requests:
  * Crash in BoxedInstance when struct could not be allocated directly [#240,
    !285, Philip Chimento]
  * Cairo conversion bugs [!286, Philip Chimento]
  * Gjs crashes when binding inherited property to js added gobject-property
    [#246, !289, Marco Trevisan]
  * console: Don't accept --profile after the script name [!287, Philip
    Chimento]

Version 1.57.1
--------------

- Closed bugs and merge requests:
  * Various maintenance [!279, Philip Chimento]
  * mainloop: Assign null to property instead of deleting [!280, Jason Hicks]
  * Added -d version note README.md [!282, Nauman Umer]
  * Extra help for debugger commands [#236, !283, Nauman Umer]
  * Crash in BoxedInstance when struct could not be allocated directly [#240,
    !285, Philip Chimento]
  * Cairo conversion bugs [!286, Philip Chimento]

Version 1.56.1
--------------

- Closed bugs and merge requests:
  * Calling dumpHeap() on non-existent directory causes crash [#134, !277,
    Philip Chimento]
  * Using Gio.MemoryInputStream.new_from_data ("string") causes segfault [#221,
    !278, Philip Chimento]
  * Fix gjs_context_eval() for non-zero-terminated strings [!281, Philip
    Chimento]

Version 1.56.0
--------------

- No change from 1.55.92.

Version 1.55.92
---------------

- Closed bugs and merge requests:
  * Fix CI failures [!269, Philip Chimento]
  * Possible memory allocation/deallocation bug (possibly in js_free() in GJS)
    [!270, Chun-wei Fan, Philip Chimento]
  * cairo-context: Special-case 0-sized vector [!271, Florian Müllner]
  * Add some more eslint rules [!272, Florian Müllner]
  * win32/NMake: Fix introspection builds [!274, Chun-wei Fan]
  * NMake/libgjs-private: Export all the public symbols there [!275, Chun-wei
    Fan]

Version 1.55.91
---------------

- The problem of freezing while running the tests using GCC's sanitizers was
  determined to be a bug in GCC, which was fixed in GCC 9.0.1.

- Closed bugs and merge requests:
  * gnome-sound-recorder crashes deep inside libgjs [#223, !266, Philip
    Chimento]
  * Various maintenance [!267, Philip Chimento]
  * wrapperutils: Define $gtype property as non-enumerable [!268, Philip
    Chimento]

Version 1.55.90
---------------

- New JS API: It's now possible to call and implement DBus methods whose
  parameters or return types include file descriptor lists (type signature 'h'.)
  This involves passing or receiving a Gio.UnixFDList instance along with the
  parameters or return values.

  To call a method with a file descriptor list, pass the Gio.UnixFDList along
  with the rest of the parameters, in any order, the same way you would pass a
  Gio.Cancellable or async callback.

  For return values, things are a little more complicated, in order to avoid
  breaking existing code. Previously, synchronously called DBus proxy methods
  would return an unpacked GVariant. Now, but only if called with a
  Gio.UnixFDList, they will return [unpacked GVariant, Gio.UnixFDList]. This
  does not break existing code because it was not possible to call a method with
  a Gio.UnixFDList before, and the return value is unchanged if not calling with
  a Gio.UnixFDList. This does mean, unfortunately, that if you have a method
  with an 'h' in its return signature but not in its argument signatures, you
  will have to call it with an empty FDList in order to receive an FDList with
  the return value, when calling synchronously.

  On the DBus service side, when receiving a method call, we now pass the
  Gio.UnixFDList received from DBus to the called method. Previously, sync
  methods were passed the parameters, and async methods were passed the
  parameters plus the Gio.DBusInvocation object. Appending the Gio.UnixFDList to
  those parameters also should not break existing code.

  See the new tests in installed-tests/js/testGDBus.js for examples of calling
  methods with FD lists.

- We have observed on the CI server that GJS 1.55.90 will hang forever while
  running the test suite compiled with GCC 9.0.0 and configured with the
  --enable-asan and --enable-ubsan arguments. This should be addressed in one of
  the following 1.55.x releases.

- Closed bugs and merge requests:
  * GDBus proxy overrides should support Gio.DBusProxy.call_with_unix_fd_list()
    [#204, !263, Philip Chimento]
  * Add regression tests for GObject vfuncs [!259, Jason Hicks]
  * GjsPrivate: Sources should be C files [!262, Philip Chimento]
  * build: Vendor last-good version of AX_CODE_COVERAGE [!264, Philip Chimento]

Version 1.55.4
--------------

- Closed bugs and merge requests:
  * Various maintenance [!258, Philip Chimento]
  * Boxed copy constructor should not be called, split Boxed into prototype and
    instance structs [#215, !260, Philip Chimento]

Version 1.55.3
--------------

- Closed bugs and merge requests:
  * Manually constructed ByteArray toString segfaults [#219, !254, Philip
    Chimento]
  * signals: Add _signalHandlerIsConnected method [!255, Jason Hicks]
  * Various maintenance [!257, Philip Chimento]

Version 1.52.5
--------------

- This was a release consisting only of backports from the GNOME 3.30 branch to
  the GNOME 3.28 branch.

- This release includes the "Big Hammer" patch from GNOME 3.30 to reduce memory
  usage. For more information, read the blog post at
  https://feaneron.com/2018/04/20/the-infamous-gnome-shell-memory-leak/
  It was not originally intended to be backported to GNOME 3.28, but in practice
  several Linux distributions already backported it, and it has been working
  well to reduce memory usage, and the bugs have been ironed out of it.

  It does decrease performance somewhat, so if you don't want that then don't
  install this update.

- Closed bugs and merge requests:

  * Ensure not to miss the force_gc flag [#150, !132, Carlos Garnacho]
  * Make GC much more aggressive [#62, !50, Giovanni Campagna, Georges Basile
    Stavracas Neto, Philip Chimento]
  * Queue GC when a GObject reference is toggled down [#140, !114, !127, Georges
    Basile Stavracas Neto]
  * Reduce memory overhead of g_object_weak_ref() [#144, !122, Carlos Garnacho,
    Philip Chimento]
  * context: Defer and therefore batch forced GC runs [performance] [!236,
    Daniel van Vugt]
  * context: use timeout with seconds to schedule a gc trigger [!239, Marco
    Trevisan]
  * Use compacting GC on RSS size growth [!133, #151, Carlos Garnacho]
  * GType memleak fixes [!244, Marco Trevisan]

Version 1.55.2
--------------

- Closed bugs and merge requests:
  * Gnome-shell crashes on destroying cached param specs [#213, !240, Marco
    Trevisan]
  * Various maintenance [!235, !250, Philip Chimento]
  * Auto pointers builder [!243, Marco Trevisan]
  * configure.ac: Update bug link [!245, Andrea Azzarone]
  * SIGSEGV when exiting gnome-shell [#212, !247, Andrea Azzarone, Philip
    Chimento]
  * Fix build with --enable-dtrace and create CI job to ensure it doesn't break
    in the future [#196, !237, !253, Philip Chimento]
  * Delay JSString-to-UTF8 conversion [!249, Philip Chimento]
  * Annotate return values [!251, Philip Chimento]
  * Fix a regression with GError toString() [!252, Philip Chimento]
  * GType memleak fixes [!244, Marco Trevisan]
  * Atoms refactor [!233, Philip Chimento, Marco Trevisan]
  * Write a "Code Hospitable" README file [#17, !248, Philip Chimento, Andy
    Holmes, Avi Zajac]
  * object: Method lookup repeatedly traverses introspection [#54, !53, Colin
    Walters, Philip Chimento]
  * Handler of GtkEditable::insert-text signal is not run [#147, !143, Tomasz
    Miąsko, Philip Chimento]

Version 1.54.3
--------------

- Closed bugs and merge requests:
  * object: Fix write-only properties [!246, Philip Chimento]
  * SIGSEGV when exiting gnome-shell [#212, !247, Andrea Azzarone]
  * SelectionData.get_targets crashes with "Unable to resize vector" [#201,
    !241, Philip Chimento]
  * Gnome-shell crashes on destroying cached param specs [#213, !240, Marco
    Trevisan]
  * GType memleak fixes [!244, Marco Trevisan]
  * Fix build with --enable-dtrace and create CI job to ensure it doesn't break
    in the future [#196, !253, Philip Chimento]

Version 1.54.2
--------------

- Closed bugs and merge requests:
  * context: Defer and therefore batch forced GC runs [performance] [!236,
    Daniel van Vugt]
  * context: use timeout with seconds to schedule a gc trigger [!239, Marco
    Trevisan]
  * fundamental: Check if gtype is valid before using it [!242, Georges Basile
    Stavracas Neto]

- Backported a fix for a crash in the interactive interpreter when executing
  something like `throw "foo"` [Philip Chimento]

- Backported various maintenance from 3.31 [Philip Chimento]

Version 1.55.1
--------------

- New API for programs that embed GJS: gjs_memory_report(). This was already an
  internal API, but now it is exported.

- Closed bugs and merge requests:

  * object: Implement newEnumerate hook for GObject [!155, Ole Jørgen Brønner]
  * Various maintenance [!228, Philip Chimento]
  * ByteArray.toString should stop at null bytes [#195, !232, Philip Chimento]
  * Byte arrays that represent encoded strings should be 0-terminated [#203,
    !232, Philip Chimento]
  * context: Defer and therefore batch forced GC runs [performance] [!236,
    Daniel van Vugt]
  * context: use timeout with seconds to schedule a gc trigger [!239, Marco
    Trevisan]
  * arg: Add special-case for byte arrays going to C [#67, !49, Jasper
    St. Pierre, Philip Chimento]

Version 1.52.4
--------------

- This was a release consisting only of backports from the GNOME 3.30 branch to
  the GNOME 3.28 branch.

- Closed bugs and merge requests:

  * `ARGV` encoding issues [#22, !108, Evan Welsh]
  * Segfault on enumeration of GjSFileImporter properties when a searchpath
    entry contains a symlink [#154, !144, Ole Jørgen Brønner]
  * Possible refcounting bug around GtkListbox signal handlers [#24, !154,
    Philip Chimento]
  * Fix up GJS_DISABLE_JIT flag now the JIT is enabled by default in
    SpiderMonkey [!159, Christopher Wheeldon]
  * Expose GObject static property symbols. [!197, Evan Welsh]
  * Do not run linters on tagged commits [!181, Claudio André]
  * gjs-1.52.0 fails to compile against x86_64 musl systems [#132, !214, Philip
    Chimento]
  * gjs no longer builds after recent autoconf-archive updates [#149, !217,
    Philip Chimento]

Version 1.54.1
--------------

- Closed bugs and merge requests:
  * legacy: Ensure generated GType names are valid [!229, Florian Müllner]
  * Fix GJS profiler with MozJS 60 [!230, Georges Basile Stavracas Neto]
  * Regression with DBus proxies [#202, !231, Philip Chimento]

Version 1.54.0
--------------

- Compatibility fix for byte arrays: the legacy toString() behaviour of byte
  arrays returned from GObject-introspected functions is now restored. If you
  use the functionality, a warning will be logged asking you to upgrade your
  code.

- Closed bugs and merge requests:
  * byteArray: Add compatibility toString property [Philip Chimento, !227]

Version 1.53.92
---------------

- Technology preview of a GNOME 3.32 feature: native Promises for GIO-style
  asynchronous operations. This is the result of Avi Zajac's summer internship.
  To use it, you can opt in once for each specific asynchronous method, by
  including code such as the following:

      Gio._promisify(Gio.InputStream.prototype, 'read_bytes_async',
          'read_bytes_finish');

  After executing this, you will be able to use native Promises with the
  Gio.InputStream.prototype.read_async() method, simply by not passing a
  callback to it:

      try {
          let bytes = await stream.read_bytes_async(count, priority, cancel);
      } catch (e) {
          logError(e, 'Failed to read bytes');
      }

  Note that any "success" boolean return values are deleted from the array of
  return values from the async method. That is,

      let [contents, etag] = file.load_contents_async(cancel);

  whereas the callback version still returns a useless [ok, contents, etag]
  that can never be false, since on false an exception would be thrown. In the
  callback version, we must keep this for compatibility reasons.

  Note that due to a bug in GJS (https://gitlab.gnome.org/GNOME/gjs/issues/189),
  promisifying methods on Gio.File.prototype and other interface prototypes will
  not work. We provide the API Gio._LocalFilePrototype on which you can
  promisify methods that will work on Gio.File instances on the local disk only:

      Gio._promisify(Gio._LocalFilePrototype, 'load_contents_async',
          'load_contents_finish');

  We estimate this will cover many common use cases.

  Since this is a technology preview, we do not guarantee API stability with
  the version coming in GNOME 3.32. These APIs are marked with underscores to
  emphasize that they are not stable yet. Use them at your own risk.

- Closed bugs and merge requests:
  * Added promisify to GJS GIO overrides [!225, Avi Zajac]
  * Temporary fix for Gio.File.prototype [!226, Avi Zajac]

Version 1.53.91
---------------

- Closed bugs and merge requests:
  * CI: add webkit and gtk-app tests [!222, Claudio André]
  * Fix example eslint errors [!207, Claudio André, Philip Chimento]
  * Fix more "lost" GInterface properties [!223, Florian Müllner]
  * Fix --enable-installed-tests when built from a tarball [!224, Simon
    McVittie]

Version 1.53.90
---------------

- GJS now depends on SpiderMonkey 60 and requires a compiler capable of C++14.

- GJS includes a simple debugger now. It has basic stepping, breaking, and
  printing commands, that work like GDB. Activate it by running the GJS console
  interpreter with the -d or --debugger flag before the name of the JS program
  on the command line.

- New API for programs that embed GJS: gjs_context_setup_debugger_console().
  To integrate the debugger into programs that embed the GJS interpreter, call
  this before executing the JS program.

- New JavaScript features! This version of GJS is based on SpiderMonkey 60, an
  upgrade from the previous ESR (Extended Support Release) of SpiderMonkey 52.
  Here are the highlights of the new JavaScript features.
  For more information, look them up on MDN or devdocs.io.

  * New syntax
    + `for await (... of ...)` syntax is used for async iteration.
    + The rest operator is now supported in object destructuring: e.g.
      `({a, b, ...cd} = {a: 1, b: 2, c: 3, d: 4});`
    + The spread operator is now supported in object literals: e.g.
      `mergedObject = {...obj1, ...obj2};`
    + Generator methods can now be async, using the `async function*` syntax,
      or `async* f() {...}` method shorthand.
    + It's now allowed to omit the variable binding from a catch statement, if
      you don't need to access the thrown exception: `try {...} catch {}`

  * New APIs
    + Promise.prototype.finally(), popular in many third-party Promise
      libraries, is now available natively.
    + String.prototype.toLocaleLowerCase() and
      String.prototype.toLocaleUpperCase() now take an optional locale or
      array of locales.
    + Intl.PluralRules is now available.
    + Intl.NumberFormat.protoype.formatToParts() is now available.
    + Intl.Collator now has a caseFirst option.
    + Intl.DateTimeFormat now has an hourCycle option.

  * New behaviour
    + There are a lot of minor behaviour changes as SpiderMonkey's JS
      implementation conforms ever closer to ECMAScript standards. For complete
      information, read the Firefox developer release notes:
      https://developer.mozilla.org/en-US/Firefox/Releases/53#JavaScript
      https://developer.mozilla.org/en-US/Firefox/Releases/54#JavaScript
      https://developer.mozilla.org/en-US/Firefox/Releases/55#JavaScript
      https://developer.mozilla.org/en-US/Firefox/Releases/56#JavaScript
      https://developer.mozilla.org/en-US/Firefox/Releases/57#JavaScript
      https://developer.mozilla.org/en-US/Firefox/Releases/58#JavaScript
      https://developer.mozilla.org/en-US/Firefox/Releases/59#JavaScript
      https://developer.mozilla.org/en-US/Firefox/Releases/60#JavaScript

  * Backwards-incompatible changes
    + Conditional catch clauses have been removed, as they were a Mozilla
      extension which will not be standardized. This requires some attention in
      GJS programs, as previously we condoned code like `catch (e if
      e.matches(Gio.IOError, Gio.IOError.EXISTS))`  with a comment in
      overrides/GLib.js, so it's likely this is used in several places.
    + The nonstandard `for each (... in ...)` loop was removed.
    + The nonstandard legacy lambda syntax (`function(x) x*x`) was removed.
    + The nonstandard Mozilla iteration protocol was removed, as well as
      nonstandard Mozilla generators, including the Iterator and StopIteration
      objects, and the Function.prototype.isGenerator() method.
    + Array comprehensions and generator comprehensions have been removed.
    + Several nonstandard methods were removed: ArrayBuffer.slice() (but not
      the standard version, ArrayBuffer.prototype.slice()),
      Date.prototype.toLocaleFormat(), Function.prototype.isGenerator(),
      Object.prototype.watch(), and Object.prototype.unwatch().

- Many of the above backwards-incompatible changes can be caught by scanning
  your source code using https://gitlab.gnome.org/ptomato/moz60tool, or
  https://extensions.gnome.org/extension/1455/spidermonkey-60-migration-validator/

- Deprecation: the custom ByteArray is now discouraged. Instead of ByteArray,
  use Javascript's native Uint8Array. The ByteArray module still contains
  functions for converting between byte arrays, strings, and GLib.Bytes
  instances.

  The old ByteArray will continue to work as before, except that Uint8Array
  will now be returned from introspected functions that previously returned a
  ByteArray. To keep your old code working, change this:

      let byteArray = functionThatReturnsByteArray();

  to this:

      let byteArray = new ByteArray.ByteArray(functionThatReturnsByteArray());

  To port to the new code:

  * ByteArray.ByteArray -> Uint8Array
  * ByteArray.fromArray() -> Uint8Array.from()
  * ByteArray.ByteArray.prototype.toString() -> ByteArray.toString()
  * ByteArray.ByteArray.prototype.toGBytes() -> ByteArray.toGBytes()
  * ByteArray.fromString(), ByteArray.fromGBytes() remain the same

  * Unlike ByteArray, Uint8Array's length is fixed. Assigning an element past
    the end of a ByteArray would lengthen the array. Now, it is ignored.
    Instead use Uint8Array.of(), for example, this code:

        let a = ByteArray.fromArray([97, 98, 99, 100]);
        a[4] = 101;

    should be replaced by this code:

        let a = Uint8Array.from([97, 98, 99, 100]);
        a = Uint8Array.of(...a, 101);

    The length of the byte array must be set at creation time. This code will
    not work anymore:

        let a = new ByteArray.ByteArray();
        a[0] = 255;

    Instead, use "new Uint8Array(1)" to reserve the correct length.

- Closed bugs and merge requests:

  * Run tests using real software [#178, !192, Claudio André]
  * Script tests are missing some errors [#179, !192, Claudio André]
  * Create a '--disable-readline' option and use it [!196, Claudio André]
  * CI: stop using Fedora for clang builds [!198, Claudio André]
  * Expose GObject static property symbols. [!197, Evan Welsh]
  * CI fixes [!200, Claudio André]
  * Docker images creation [!201, Claudio André]
  * Get Docker images built and stored in GJS registry [#185, !203, !208,
    Claudio André, Philip Chimento]
  * Clear the static analysis image a bit more [!205, Claudio André]
  * Rename the packaging job to flatpak [!210, Claudio André]
  * Create SpiderMonkey 60 docker images [!202, Claudio André]
  * Debugger [#110, !204, Philip Chimento]
  * Add convenience g_object_set() replacement [!213, Florian Müllner]
  * Add dependencies of the real tests (examples) [!215, Claudio André]
  * CWE-126 [#174, !218, Philip Chimento]
  * gjs no longer builds after recent autoconf-archive updates [#149, !217,
    Philip Chimento]
  * gjs-1.52.0 fails to compile against x86_64 musl systems [#132, !214, Philip
    Chimento]
  * Run the GTK real tests (recently added) [!212, Claudio André]
  * Fix thorough tests failures [!220, Philip Chimento]
  * Port to SpiderMonkey 60 [#161, !199, Philip Chimento]
  * Replace ByteArray with native ES6 TypedArray [#5, !199, Philip Chimento]
  * Overriding GInterface properties broke [#186, !216, Florian Müllner, Philip
    Chimento]
  * Avoid segfault when checking for GByteArray [!221, Florian Müllner]

- Various build fixes [Philip Chimento]
jperkin pushed a commit that referenced this issue Dec 14, 2020
# processx 3.4.5

* New options in `pty_options` to set the initial size of the pseudo
  terminal.

* Reading the standard output or error now does not crash occasionally
  when a `\n` character is at the beginning of the input buffer (#281).

# processx 3.4.4

* processx now works correctly for non-ASCII commands and arguments passed
  in the native encoding, on Windows (#261, #262, #263, #264).

* Providing multiple environment variables now works on windows (#267).

# processx 3.4.3

* The supervisor (activated with `supervise = TRUE`) does not crash
  on the Windows Subsystem on Linux (WSL) now (#222).

* Fix ABI compatibility for pre and post R 4.0.1 versions. Now CRAN
  builds (with R 4.0.2 and later 4.0.x) work well on R 4.0.0.

* Now processx can run commands on UNC paths specified with
  forward slashes: `//hostname/...` UNC paths with the usual
  back-slashes were always fine (#249).

* The `$as_ps_handle()` method works now better; previously it
  sometimes created an invalid `ps::ps_handle` object, if the system
  clock has changed (#258).

# processx 3.4.2

* `run()` now does a better job with displaying the spinner on terminals
  that buffer the output (#223).

* Error messages are now fully printed after an error. In non-interactive
  sessions, the stack trace is printed as well.

* Further improved error messages. Errors from C code now include the
  name of the C function, and errors that belong to a process include the
  system command (#197).

* processx does not crash now if the process receives a SIGPIPE signal when
  trying to write to a pipe, of which the other end has already exited.

* processx now to works better with fork clusters from the parallel
  package. See 'Mixing processx and the parallel base R package' in the
  README file (#236).

* processx now does no block SIGCHLD by default in the subprocess,
  blocking potentially causes zombie sub-subprocesses (#240).

* The `process$wait()` method now does not leak file descriptors on
  Unix when interrupted (#141).
jperkin pushed a commit that referenced this issue Jan 13, 2021
3.2.2 (2020-11-16)

* Remove copyright dates #225 (tas50)
* Cleanup deps and fix the failing spec helper loading of support files
  #226 (tas50)

v3.2.0 (2020-11-12)

* Windows: fetch env variables for specified users #224 (kapilchouhan99)

v3.1.7 (2020-10-29)

* Loosen win32-process dep to resolve Ruby 3 deprecation warnings #223
  (tas50)
jperkin pushed a commit that referenced this issue Jan 27, 2021
Most work done by leot@ and sjmulder@ in pkgsrc-wip.

tig-2.5.1
---------

Improvements:

 - bash/zsh completion: reimplement and decrease runtime by factor 1863. (#795)
 - Add binding to reflog view to toggle reference display.
 - Fail if tig is given an invalid or ambiguous ref. (#980)
 - Make tig process-group leader an option. (#986, #951)
 - Handle GIT_WORK_TREE environment variable.
 - The blame view requires a working tree.
 - Fix use of deprecated vwprintw() function.
 - Update utf8proc to v2.5.0.
 - Add --word-diff=plain colorizing support. (#221)

Bug fixes:

 - Fix segmentation fault. (#971)
 - Fix cursor position after "Move to parent" in blame view. (#973)
 - Fix crash on adding a line to a view. (#523)
 - Fix memory leak in diff unit.
 - Fix loop after refresh or change in refs/main split view. (#991)
 - Fix occasional crash on custom key bindings. (#1001)

tig-2.5.0
---------

Improvements:

 - Single file view enters blame mode on "b". (#804)
 - Show untracked files in the default view. (#762)
 - Disable graph if log.follow is enabled and there is only one pathspec.
   (#881)
 - Disable graph for author searches.
 - git_colors: interpret 'ul' as 'underline'.
 - Add refname variable. (#900)
 - Add -C option to specify the working directory. (#570)
 - Improve behaviour of auto and periodic refresh modes. (#389, #441, #482,
   #794, #888, #932)
 - Add support for repos created with git --work-tree. (#872)
 - Add diff-highlight to pager mode.
 - Show annotated commits in main view. (#819)
 - Introduce reflog view. (#538)
 - Add option to start with cursor on HEAD commit. (#755)
 - Support combined diffs with more than 2 parents.
 - Improve how a toggle option value is shown on the status line. (#879)
 - Add options to filter refs output. (#694)
 - Update utf8proc to v2.4.0. (#961)

Bug fixes:

 - Fix garbled cursor line with older ncurses versions.
 - Fix diff highlighting of removed lines starting with -- and added lines
   starting with ++. (#871, #875)
 - Fix loop when displaying search result if regex matches an empty string.
   (#866)
 - Add synchronous command description in tigrc.
 - Fix parsing of git rev-parse output. (#884)
 - Propagate --first-parent to diff arguments. (#861)
 - Use proper type for hash table size. (#858)
 - Fix incorrect cppcheck warning about realloc() use.
 - Don't shift signed int by 31 bits.
 - Fix Vim going background after running Tig outside of a git repository.
   (#906)
 - make-builtin-config: use "read -r". (#912)
 - Fix segfaults with readline 8.0. (#893)
 - Reset state before closing stage view automatically.
 - Don't use a child view as previous view.
 - Force reload of VIEW_FLEX_WIDTH views only when needed.
 - Combined diff uses @@@ as hunk marker.
 - Fix memory leak induced by 'tig grep'.
 - Fix memory leak in main view.
 - Exit gracefully if refs view was defined without ref column. (#897)
 - Fix pager view not moving up when child view is open.
 - make-builtin-config: Fix unportable sed usage in read_tigrc().
 - Properly detect combined diffs. (#942)

tig-2.4.1
---------

Bug fixes:

 - Add `CURSES_CFLAGS` to `CPPFLAGS`. (#856, Linuxbrew/homebrew-core#8440)

tig-2.4.0
---------

Improvements:

 - Add 'send-child-enter' option to control interaction with child views.
   (#791)
 - Update make config defaults for Cygwin to ncurses6. (#792)
 - Build against netbsd-curses. (#789)
 - Change the blame view to render more like `git blame`. (#812)
 - Improve worktree and submodule support. (#459, #781, #783)
 - Support running Tig via a Git alias. (#763)
 - Use ISO-8601 letters for short relative dates. (#759, #760)
 - Change date formatting to show time zones by default. (#428, #811)
 - Use utf8proc to handle Unicode characters. (#827)

Bug fixes:

 - Fix `file(1)` argument on Linux used for resolving encodings. (#788)
 - Fix underflow in the file search. (#800, #801)
 - Fix line numbers in grep view when scrolled. (#813)
 - Pass command line args through to the stage view. (#569, #823)
 - Fix resource leak. (#780)
 - Fix various compiler warnings and pointer arithmetic. (#799, #803)
 - Workaround potential null pointer dereferences. (#824)
 - Bind to single and double quotes by using the *<SingleQuote>* and
   *<DoubleQuote>* key mappings. (#821)
 - Make Tig the process-group leader and clean child processes. (#828, #837)
 - Fix sh compatibility in `contrib/tig-pick`. (#832)
 - Fix incorrect behaviour of up and down keys in diff view when opened from
   diff preview. (#802, #835)
 - Open the stage view when maximizing a split diff view of (un)staged changes.
   (#836)
 - Use fully qualified reference name for tags when conflicting with branch
   name. (#746, #787, #849)
 - Fix resize not working after entering command. (#845) (#846)
 - Use stack allocated memory to handle `TIG_LS_REMOTE`. (#839)
 - Fix deleted file mode line remains highlighted after hovering in diff or
   stage view. (#851)
 - Fix `TIG_LS_REMOTE` not working with git-ls-remote(1). (#853, #854)

tig-2.3.3
---------

Bug fixes:

 - Revert "Handle \n like \r (#758)". (GH #769)
 - Fix GH #164 by catching SIGHUP.
 - Change `refs_tags` type to `size_t`.

tig-2.3.2
---------

Bug fixes:

 - Fix busy loop detection to handle large repos. (GH #164)

tig-2.3.1
---------

Improvements:

 - Restore TTY attributes. (GH #725)
 - Handle `\n` like `\r`. (GH #758)

Bug fixes:

 - Add workaround that detects busy loops when Tig loses the TTY. This may
   happen if Tig does not receive the HUP signal (e.g. when started with
   `nohup`). (GH #164)
 - Fix compatibility with ncurses-5.4 which caused copy-pasting to not work
   in the prompt. (GH #767)
 - tig(1): document correct environment variable. (GH #752)

tig-2.3.0
---------

Incompatibilities:

 - The `width` setting on the `status`, `text` and `commit-title` columns was
   never applied and has been removed. (GH #617)

Improvements:

 - Improve load performance by throttling screen updates. (GH #622, #629)
 - Speed up graph rendering. (GH #638)
 - Enable scroll optimizations for Terminal.app and iTerm2. (GH #637)
 - Improve the test suite portability to not depend on GNU sed. (GH #609, #614)
 - Make build reproducible. (https://reproducible-builds.org/) (GH #613)
 - Enable binding to more symbolic keys and keys with control modifier:
   `F13`-`F19`, `ShiftLeft`, `ShiftRight`, `ShiftDel`, `ShiftHome`, `ShiftEnd`,
   `ShiftTab`, `Ctrl-C`, `Ctrl-V`, `Ctrl-S`, and `Ctrl-@`. (GH #314, #619,
   #642)
 - Persist readline history to `~/.tig_history` or `$XDG_DATA_HOME/tig/history`.
   Use `history-size` to control the number of entries to save. (GH #620, #713,
   #714, #718)
 - Preload last search from persistent history. (GH #630)
 - Add `view-close-no-quit` action, unbound by default. (GH #607)
 - Add `mouse-wheel-cursor` option (off by default) when set to true causes
   wheel actions to prefer moving the cursor instead of scrolling. (GH #608)
 - Add `truncation-delimiter` option, set to `~` by default. (GH #646)
 - Add `-q` parameter to `source` for "source-if-present". (GH #612)
 - Add `:echo` prompt command to display text in the status bar. (GH #626, #636)
 - Make `diff-highlight` colors configurable. (GH #625, #633)
 - Let Ctrl-C exit Y/N dialog, menu prompts and the file finder. (GH #632, #648)
 - Hide cursor unless at textual prompt. (GH #643)
 - Expand tilde ('~') in `:script` paths. (GH #674)
 - Show single-line output of external command in status bar. (GH #200, #557,
   #678)
 - Disable the graph when `--no-merges` is passed. (GH #687)
 - Print backtraces on segfault in debug mode.
 - Ignore script lines starting with `#` (comment). (GH #705)
 - Complete `repo:*` variables when readline is enabled. (GH #702)
 - Incorporate XTerm's `wcwidth.c` to find Unicode widths. (GH #691)

Bug fixes:

 - Fix graph display issues. (GH #419, #638)
 - Fix and improve rendering of Unicode characters. (GH #330, #621, #644, #682)
 - Handle hyphenated directory names when listing content. (GH #602)
 - Do not jump to next match when cancelling the search prompt. (GH #627)
 - Fix clearing of the status line after `Ctrl-C`. (GH #623, #649)
 - Fix handling of width on line-number and trimmed width of 1. (GH #617)
 - Set cursor position when not updating prompt contents. (GH #647)
 - Erase status line at exit time for users without altscreen-capable terminals.
   (GH #589)
 - Fix unexpected keys when restoring from suspend (`Ctrl-Z`). (GH #232)
 - contrib/vim.tigrc: Also bind G in the main as a workaround for limitations of
   the `none` action. (GH #594, #599)
 - Only override `blame-options` when commands are given and fix parsing of
   `-C`. (GH #597)
 - Fix diff name discovery to better handle prefixes.
 - Interpret button5 as wheel-down. (GH #321, #606)
 - Fix `back` / `parent` in tree view. (GH #641)
 - Fix memory corruption in `concat_argv` and file finder. (GH #634, #655)
 - Fix reading from stdin for `tig show`.
 - Document problem of outdated system-wide `tigrc` files in Homebrew. (GH #598)
 - Repaint the display when toggling `line-graphics`. (GH #527)
 - Fix custom date formatting support longer strings. (GH #522)
 - Don't segfault on ":exec" irregular args. (GH #686)
 - Fix segfault when calling htab_empty. (GH #663, #745)

tig-2.2.2
---------

Upgrade instructions:

 - The `status-untracked-dirs` option was renamed to
   `status-show-untracked-dirs` to match the new `status-show-untracked-files`
   option.

Improvements:

 - Use `diff-options` when preparing the diff in the stage view to make the diff
   state configurable. (GH #545)
 - Add 'status-show-untracked-files' option mirroring Git's
   'status.showUntrackedFiles' to toggle display of untracked files.  in the
   status view. On by default. (GH #562)
 - Update `ax_with_curses.m4` and use `pkg-config` to detect. (GH #546)
 - Add `tig-pick` script for using Tig as a commit picker. (GH #575, #580)
 - Add "smart case" option ('set ignore-case = smart-case') to ignore case when
   the search string is lower-case only. (GH #320, #579)

Bug fixes:

 - Fix author ident cache being keyed by email only. (GH #424, #526, #547)
 - Fix periodic refresh mode to properly detect ref changes. (GH #430, #591)
 - Add workaround for detecting failure to start the diff-highlight process.
 - Show diffs in the stash view when `set mailmap = true`. (GH #556)
 - Fix parsing of git-log revision arguments, such as `--exclude=...` in
   conjunction with `--all`. (GH #555)
 - Fix diff stat parsing for binary copies.
 - Fix crash when resizing terminal while search is in progress. (GH #515, #550)
 - Fix argument filtering to pass more arguments through to Git.
 - Check for termcap support in split tinfo libs. (GH #568, #585)

tig-2.2.1
---------

Improvements:

 - Support Git's 'diff-highlight' program when `diff-highlight` is set to either
   true or the path of the script to use for post-processing.
 - Add navigation between merge commits. (GH #525)
 - Add 'A' as a binding to apply a stash without dropping it.
 - Bind 'Ctrl-D' and 'Ctrl-U' to half-page movements by default.
 - manual: Mention how to change default Up/Down behavior in diff view.

Bug fixes:

 - Reorganize checking of libraries for termcap functions.
 - Fix `:goto <id>` error message.

tig-2.2
-------

Incompatibilities:

 - Note that all user-defined commands are now executed at the repository root
   instead of whatever subdirectory Tig was started in. (GH #412)
 - Remove `cmdline-args` option to avoid problems where setting it in `~/.tigrc`
   potentially breaks other views due to its "context-sensitive" nature, where
   a `git-log` option maybe cause `git-grep` to fail. (GH #431)

Improvements:

 - Use .mailmap to show canonical name and email addresses, off by default.
   Add `set mailmap = yes` to `~/.tigrc` to enable. (GH #411)
 - Highlight search results, configurable via `search-result` color. (GH #493)
 - Wrap around when searching, configurable via `wrap-search` setting.
 - Populate `%(file)` with file names from diff stat. (GH #404)
 - `tig --merge` implies `--boundary` similar to gitk.
 - Expose repository variables to external commands, e.g. `%(repo:head)` gives
   the branch name of the current HEAD and `%(repo:cdup)` for the repo root
   path.
 - Add `make uninstall`. (GH #417)
 - Add ZSH completion file (based on Bash completion) (GH #433)
 - Expose the text of the currently selected line as the %(text) (GH #457)
 - Allow users to specify rev arguments to blame (GH #439)
 - Update OSX make config to find brew installed ncurses
 - Add sample git-flow keybinding (GH #421)
 - Add chocolate theme (GH #432)
 - Show stash diffs. (GH #328)
 - Make user tigrc location configurable. (GH #479)
 - Compact relative date display mode. (GH #331)
 - Add date column option controlling whether to show local date.
 - Move to parent commit in the main view. (GH #388)
 - Add `:goto <rev>` prompt command to go to a `git-rev-parse`d revision, e.g.
   `:goto some/branch` or `:goto %(commit)^2`.
 - Respect the XDG standard for configuration files. (GH #513)
 - Show tracking information in `tig status` (GH #504)
 - Resolve diff paths when `diff.noprefix` is true. (GH #487, #488)
 - Support for custom `strftime(3)` date formats, e.g.:

	set main-view-date = custom
	set main-view-date-format = "%Y-%m-%d"

Bug fixes:

 - Prevent staged rename from displaying unstaged changes (GH #472, #491)
 - Fix corrupt chunk header during staging of single lines. (GH #410)
 - Fix out of bounds read in graph-v2 module. (GH #402)
 - Add currently checked out branch to `%(branch)`. (GH #416)
 - Size diff stats correctly for split views.
 - Fix `git-worktree` support by using `git-show-ref`. (GH #437)
 - Add currently checked out branch to `%(branch)` (GH #416)
 - Fix segfault when hitting return in empty file search (GH #464)
 - Remove separator on horizontal split when switching from vertical split
 - Do not expand `--all` when parsing `%(revargs)` (GH #442, #462)
 - Fix exit when the main view is reloaded due to option toggling. (GH #470)
 - Expand all whitespace and control characters to spaces. (GH #485)
 - Restore ability to unbind a default keybinding with `none`. (GH #483)
 - Fix blob view to honor the `wrap-lines` setting.

tig-2.1.1
---------

Improvements:

 - Add support for key combos. (GH #67)
 - See `contrib/vim.tigrc` for Vim-like keybindings. (GH #273, #351)
 - Add GitHub inspired file finder to search for and open any file. (GH #342)
 - Add `search` keymap for navigating file finder search results.

Bug fixes:

 - Fix display of multiple references per commit. (GH #390, #391)
 - Sync the prompt's cursor position with readline's internal position.
   (GH #396)
 - Keep unstaged changes view open after an staging command. (GH #399)

tig-2.1
-------

Improvements:

 - Improve C99 compliance so Tig compiles with the native compilers on
   Solaris (SunStudio cc) and AIX (xlc). (GH #380)
 - Add move-half-page-up and move-half-page-down actions. (GH #323)
 - Preserve the cursor position when changing the diff context.
 - Show 'Unstaged changes' above 'Staged changes' in the main view. (GH #383)
 - Add `:exec <flags><args...>` prompt command to execute commands.
 - Add shorthand for changing the view settings of a single column,
   eg. `set main-view-author = short`. (GH #318)
 - Show better diff context info in the stage view.
 - Add `%(lineno)` state variable. (GH #304)
 - Use hash table to speed up refs lookup. (GH #350)
 - Show the file path in the blob view when available.
 - Use `set commit-order = default` to use Git's default commit order, even when
   the commit graph is enabled. The option will turn off automatic enabling of
   `--topo-order` when the graph is shown in the main view. (GH #310, #324)
 - Speed up the diff view in large repos by loading git-describe info after the
   diff content has been read. (GH #324)
 - Add the old graph rendering as an option. (GH #310, #324)
 - Add `main-options` setting for specifying default main view options.
   Example: `set main-options = --max-count=1000`. (GH #368)
 - See `contrib/large-repo.tigrc` for settings that will help to speed up Tig in
   large repos. (GH #368)
 - Add `:save-options <file>` prompt command to save config to file. (GH #315)

Bug fixes:

 - Update manual to reflect default keybinding changes. (GH #325)
 - Fix graph support for `--first-parent`. (GH #326)
 - Fix off-by-one error when opening editor from the grep view.
 - Fix status on-branch information.
 - Fix main view to handle the case when git-log doesn't find any commits.
 - Fix corner case when parsing diff chunk when lines information is missing.
 - Ensure main view changes commits are shown right before the current HEAD.
 - Fix rendering of boundary commits.
 - Fix compilation with GNU Make 3.80 by removing `$(abspath)`. (GH #362)
 - Fix config parsing to support shell-like quoting in user-defined command,
   e.g. `bind generic <Ctrl-f> :!git log -G"%(prompt Prompt: )"` (GH #371)
 - Make diff meta information colors more consistent with Git. (GH #375)
 - Fix segfault when updating changes in a maximized stage view opened via the
   main view. (GH #376)
 - Handle line number configs where the interval is not specified. (GH #378)
 - Fix display of error messages during startup. (GH #385)
 - Show untracked files outside the current directory like git-status. (GH #230)

tig-2.0.3
---------

Improvements:

 - Add `:save-display <file>` prompt command to save the current display.
 - Add `:script <file>` prompt command for scripting the Tig UI.
 - Add test framework and convert existing tests to use it.
 - Add command-line option for starting in refs view: `tig refs`. (GH #309)
 - Make blame commit ID colors stable across reloads. (GH #303)
 - Increase blame ID and graph rendering color palette to 14 colors.
 - New setting 'split-view-width' controls the width for vertical splits. It
   takes the width of the right-most view either as a number or a percentage.
 - Expose settings holding command line argument lists: `file-args`, `rev-args`,
   and `cmdline-args`. They are mainly intended for testing purposes but also
   allows to change the filtering arguments dynamically. (GH #306)
 - Add `log-options` setting for specifying default log view options.
   Example: `set log-options = --pretty=fuller`.
 - Use option specific view flags to reload view after `:set` commands.

Bug fixes:

 - Refresh the current view when returning from an external command and
   `refresh-mode=after-command`. (GH #289)
 - Fix readline completion.
 - Fix '/' to `find-next` when readline support is enabled. (GH #302)
 - Fix readline prompt to correctly handle UTF-8 characters.
 - Add warnings for more obsolete actions and colors.
 - Fix passing of commit IDS via stdin to the main view.
 - Fix commit title overflow drawing for multibyte text. (GH #307)
 - Fix installation directory permissions.
 - Handle binary files matches reported by git-grep.
 - Toggling of "args"-typed options without any arguments will clear the current
   arguments. Example: `:toggle blame-options`.
 - Detect custom `pretty.format` settings that break the log view and fallback
   to use the `medium` format. (GH #225)
 - Fix invocation of git-diff for the blame view's line tracking. (GH #316)
 - Fix blame completion of directory names. (GH #317)
 - Fix display of conflicts in the main view when 'show-changes' is enabled.
 - Fix off-by-one error when displaying line numbers in the grep view.
 - When showing the commit graph ensure that either topo, date or author-date
   commit order is used. (Debian #757692) (GH #238)

tig-2.0.2
---------

Improvements:

 - Use git-status for diffing the index.
 - Group toggle options together in the help view.

Bug fixes:

 - Fix refs, main and grep loading when 'gui.encoding' is set. (GH #287)
 - Ignore 'gui.encoding' and 'i18n.commitencoding' when set to 'UTF-8'.
 - Add work-around for missing strndup() on Mac OS X v10.6. (GH #286)
 - Fix spurious abbreviation of author names. (GH #288)
 - Don't show empty action groups in the help view.

tig-2.0.1
---------

Bug fixes:

 - Fix compilation in watch.c.
 - Fix parsing of key bindings mapped to '^' and '<'. (GH #280, #282)

tig-2.0
-------

Incompatibilities:

 - In preparation for key combo support, key mappings for symbolic keys (e.g.
   `Up` and `Down`) must now start with `<` and end with `>`, e.g. `<Up>` and
   `<Down>`. Furthermore, escape key combos must now use `<Esc>key` instead of
   `^[key`, and control key mappings must now use `<Ctrl-key>` instead of
   `^key`.
 - Only use 'diff-options' for the diff view and introduce '%(cmdlineargs)' to
   hold non-file and non-revision flags passed on the command line. Affects all
   user-defined commands that expect '%(diffargs)' to hold both 'diff-options'
   arguments and those passed on the command line. (GH #228)
 - Remove built-in keybinding for `git gc`. Add the following line to `~/.tigrc`
   to restore it: `bind generic G ?git gc`.
 - To support view specific colors, '.' can no longer be used interchangeably
   with '-' and '_' in settings names and in particular color names.
 - Replace 'stage-next' action with prompt command using a predefined search
   (see below) and add binding (`@` by default) to also work in the diff view.
 - Most view display options must now be set via the new `*-view` options in
   tigrc. Existing options are no longer recognized, but a warning is shown.
 - Remap default bindings to have more consistent convention: use lower-case
   keys primarily for view switching and non-destructive actions, use upper-case
   keys for view-specific actions including user-defined commands. To preserve
   old default key bindings see `contrib/bindings-v1.x.tigrc`. (GH #257)

Improvements:

 - Add mouse support: scroll view, click line to move cursor, double click line
   (or click again) to "Enter" cursor line, e.g. open commit diff. Disabled by
   default, since it makes text selection less intuitive. If you enable this
   remember to hold down Shift (or Option on Mac) when selecting text.
 - Rewrite and improve the rendering of the commit graph. (GH #144, #46)
 - Add completion and history support to the prompt via readline. (GH #185)
 - Options can be configured and toggled individually for each view. Use the new
   view settings to configure the order and display options for each view
   columns. See system tigrc and tigrc(5) for examples. (GH #89, #222)
 - Add grep view as a front-end to git-grep(1): `tig grep -p strchr`. From
   within Tig, the key for switching or grepping is bound to 'g' by default.
 - Rename 'branch' view to 'refs' view and show tags. (GH #134)
 - Add main view pager mode that reads git-log's '--pretty=raw' data
   from stdin, e.g. `git reflog --pretty=raw | tig --pretty=raw`.
 - Add support for `--graph` and highlight diff stats in the log view.
 - Add default command bindings: `!` to delete branch, `!` to drop stash.
 - Add 'stage-split-chunk' action for splitting chunks in the stage view.
   Bound to '\' by default. (GH #107)
 - Add 'back' action bound to '<' by default, which will return the blame view
   to the previous revision and line after moving e.g. to the parent. (GH #124)
 - Auto-refresh views based on watched repository changes. Configure by setting
   `refresh-mode` to 'manual', 'auto', 'after-command', or 'periodic'. (GH #190)
 - All default settings are in well-documented system `tigrc`.
 - Add `:toggle` prompt command to manipulate options using keybindings. For
   example: `bind diff D :toggle diff-options --patience --notes`. (GH #69)
 - Add a new "auto" value for the 'vertical-split' option to let Tig choose the
   split orientation (this is the new default behavior). Can be toggled.
 - Make it possible to toggle the display of files in untracked directories.
 - Allow Tig to be started with no default configuration by specifying an
   alternative system `tigrc` file, e.g.: `TIGRC_SYSTEM=~/.tigrc.safe tig`. Set
   `TIGRC_SYSTEM` to the empty string to use built-in configuration instead of
 - Key mappings can contain UTF-8 multibyte unicode keys.
 - Warn about conflicting keybindings using Ctrl, e.g. `<Ctrl-f>` and
   `<Ctrl-F>`. (GH #218)
 - Extend key bindings for prompt commands (ie. `bind <keymap> <key> :<prompt>`)
   to support predefined searches, eg.: `bind stage 2 :?^@@`.
 - Git color mappings can be configured in tigrc.
 - More informative configuration error messages.
 - Make reference label formatting configurable, for example:
   `set reference-format = (branch) <tags> remote`. (GH #201)
 - Adjust author width and other view columns automatically. (GH #49)
 - Support view specific colors: `color stage.diff-add yellow default`.
 - Copy `-S`, `-G` and `--grep=` pattern to search buffer so 'find-next' and
   'find-prev' work as expected.
 - Optionally specify custom prompt for `%(prompt)` in shell commands, e.g.
   `bind main B ?git checkout -b "%(prompt Enter new branch name: )"`.
 - Add `%(remote)` and `%(tag)` symbols to complement `%(branch)`.
 - User-defined commands can now be prefixed with any of the supported flags,
   e.g. `?git checkout -b %(branch)`.
 - Open editor at line number for combined diffs e.g. diffs of unmerged files.
 - Add build configuration for Cygwin (OS name: CYGWIN_NT-6.1). (GH #92)
 - Document the Git commands supported by the pager mode.  (GH #1)
   system `tigrc` configuration. (GH #235)

Bug fixes:

 - Fix stash diff display when reloading the stash view after a deleting.
 - Set the commit reference when opening the blame view from the blob view.
 - Correctly identify and highlight the remote branch tracked by HEAD.
 - Pass --no-color after user defined arguments to ensure that colors do not
   break the output parsing. (GH #191)
 - Close stdin when pager mode is not supported.
 - Show newly created branches in the main view. (GH #196)
 - File with 0 changes breaks diffstat highlighting (GH #215)
 - Update %(branch) variable in the main view. (GH #223)
 - Disable graph rendering when either of `--reverse`, `-S`, `-G`, and `--grep`
   are passed to the main view. (GH #127)
 - Only refresh views that support it.
 - Fix author and date annotation of renamed entries in the tree view.
 - Fix use of unsafe methods in the signal handler. (GH #245)
 - Fix rendering in non-UTF8 terminals.
 - Fix stage-update-line by rewriting the diff chunk containing the line instead
   of using `--unidiff-zero` and a diff context of zero. (GH #130)
 - Fix status-update to work for untracked directories. (GH #236)
 - Don't pass log parameters given on the command line to the diff view.
jperkin pushed a commit that referenced this issue Jun 15, 2021
httpuv 1.6.1
============

* The `timegm()` function is a non-standard GNU extension, so it has
  been replaced with an internal `timegm2()` function. (#300)

httpuv 1.6.0
============

* Remove BH dependency. httpuv now requires a compiler which supports
  C++11. (#297)

httpuv 1.5.5
============

* Fix SHA1 calculation, and thus WebSocket server handshakes, on
  big-endian systems. (#284)

* Fixed #195: Responses required `headers` to be a named list. Now it
  can also be `NULL`, an empty unnamed list, or it can be
  unset. (#289)

* Allow responses to omit `body` (or set it as `NULL`) to avoid
  sending a body or setting the `Content-Length` header. This is
  intended for use with HTTP 204/304 responses. (#288)

httpuv 1.5.4
============

* Fixed #275: Large HTTP request headers could get truncated if they
  spanned more than one TCP message. (#277)

* Fixed build for Solaris. (#271)

* Fixed a test that had incorrect logic. (#272)

httpuv 1.5.3.1
==============

* Updated libuv to version 1.37.0. (#266)

* Fixed #204: On UBSAN builds of R, there were warnings about
  unaligned memory access. (#246)

* Avoid creating a new Rook error stream object for each request. This
  should improve performance. (#245)

* Resolved #247: httpuv no longer returns a HTTP 400 code for static
  files when the "Content-Length" header is 0. This Content-Length
  header is inserted by some proxies even for messages without
  payloads. (#248)

* Resolved #253: Setting the FRAMEWORK environment variable would
  break compilation.  This change removes any dependency on that
  variable. (#254)

httpuv 1.5.2
============

* In the static file-serving code path, httpuv previously looked for a
  `Connection: upgrade` header; if it found this header, it would not
  try to serve a static file, and it would instead forward the HTTP
  request to the R code path. However, some proxies are configured to
  always set this header, even when the connection is not actually
  meant to be upgraded. Now, instead of looking for a `Connection:
  upgrade` header, httpuv looks for the presence of an `Upgrade`
  header (with any value), and should be more robust to
  incorrectly-configured proxies. (#215)

* Fixed handling of messages without payloads: (#219)

* Fixed #224: Static file serving on Windows did not work correctly if
  it was from a path that contained non-ASCII characters. (#227)

* Resolved #194, #233: Added a `quiet` option to `startServer`, which
  suppresses startup error messages that are normally printed to
  console (and can't be intercepted with `capture.output()`). (#234)

* Added a new function `randomPort()`, which returns a random
  available port for listening on. (#234)

* Added a new (unexported) function `logLevel()`, for controlling
  debugging information that will be printed to the
  console. Previously, httpuv occasionally printed messages like
  `ERROR: [uv_write] broken pipe` and `ERROR: [uv_write] bad file
  descriptor` by default. This happened when the server tried to write
  to a pipe that was already closed, but the situation was not
  harmful, and was already being handled correctly. Now these messages
  are printed only if the log level is set to `INFO` or
  `DEBUG`. (#223)

* If an application's `$call()` method is missing, it will now give a
  404 response instead of a 500 response. (#237)

* Disallowed backslash in static path, to prevent path traversal attacks. (#235)

* Static file serving on Windows could fail if multiple requests
  accessed the same file simultaneously. (#239)
jperkin pushed a commit that referenced this issue Aug 23, 2021
# Changelog

## [1.0.4](https://github.com/fvwmorg/fvwm3/tree/1.0.4) (2021-07-17)

[Full Changelog](fvwmorg/fvwm3@1.0.3...1.0.4)

**Breaking changes:**

- Deprecate Label for FvwmPager [\#342](fvwmorg/fvwm3#342)
- Extend \*FvwmIconMan:Resolution to include specific Desktop / Pager [\#455](fvwmorg/fvwm3#455)
- Replace libbson with cJSON [\#408](fvwmorg/fvwm3#408)
- FvwmButtons: Shrink windows when honoring Hints. [\#577](fvwmorg/fvwm3#577) ([somiaj](https://github.com/somiaj))
- Replace libbson with cJSON [\#571](fvwmorg/fvwm3#571) ([ThomasAdam](https://github.com/ThomasAdam))
- Add commands to configure the size/position window. [\#558](fvwmorg/fvwm3#558) ([ThomasAdam](https://github.com/ThomasAdam))
- Retire FvwmTile and FvwmCascade wrappers. [\#515](fvwmorg/fvwm3#515) ([somiaj](https://github.com/somiaj))

**Implemented enhancements:**

- Set min. size for windows shown in pager [\#542](fvwmorg/fvwm3#542)
- Moving windows: allow for "warping" to other windows in a given direction [\#540](fvwmorg/fvwm3#540)
- Update monitor struct to know if monintor edges are OUTSIDE\_EDGE or INSIDE\_EDGE [\#523](fvwmorg/fvwm3#523)
- Two issues with the WindowList [\#151](fvwmorg/fvwm3#151)
- Feature Request: Enable using the 'c' unit with the "MinWindowSize" and "MaxWindowSize" styles [\#145](fvwmorg/fvwm3#145)
- Allow per monitor EdgeCommand and EdgeLeaveCommand [\#582](fvwmorg/fvwm3#582) ([somiaj](https://github.com/somiaj))
- expand: add prev\_{desk,pagex,pagey} [\#579](fvwmorg/fvwm3#579) ([ThomasAdam](https://github.com/ThomasAdam))
- Improve translations [\#568](fvwmorg/fvwm3#568) ([somiaj](https://github.com/somiaj))
- Cleanup SetRCDefaults\(\) [\#567](fvwmorg/fvwm3#567) ([somiaj](https://github.com/somiaj))
- Add local configuration file to the default-config. [\#557](fvwmorg/fvwm3#557) ([somiaj](https://github.com/somiaj))
- Add icon for Run Command. [\#552](fvwmorg/fvwm3#552) ([somiaj](https://github.com/somiaj))
- Add command: Move shuffle \[flags\] direction\(s\) [\#550](fvwmorg/fvwm3#550) ([somiaj](https://github.com/somiaj))
- expand: add desk, pagex, pagey variables [\#539](fvwmorg/fvwm3#539) ([ThomasAdam](https://github.com/ThomasAdam))
- Add a screen option to the Scroll command. [\#531](fvwmorg/fvwm3#531) ([ThomasAdam](https://github.com/ThomasAdam))
- RandR: support RandRFunc for screen changes [\#525](fvwmorg/fvwm3#525) ([ThomasAdam](https://github.com/ThomasAdam))

**Fixed bugs:**

- Pager do not show smalls windows in the correct place when snapped to the edge [\#541](fvwmorg/fvwm3#541)
- EwmhBaseStruts glitch when using screen with different resolutions [\#66](fvwmorg/fvwm3#66)
- Fvwm segfaults parsing module configuration [\#575](fvwmorg/fvwm3#575)
- Swallowing FvwmPager inside FvwmButtons breaks resizing FvwmButtons when aspect ratio resizing is used [\#573](fvwmorg/fvwm3#573)
- Move X Y Warp doesn't move pointer to window. [\#551](fvwmorg/fvwm3#551)
- Maximize fullscreen command does not clear \_NET\_WM\_STATE\_FULLSCREEN when exiting fullscreen [\#545](fvwmorg/fvwm3#545)
- EdgeLeaveCommand don't work or need a page change to work [\#543](fvwmorg/fvwm3#543)
- FvwmPager Icon view fix background color. [\#537](fvwmorg/fvwm3#537)
- FvwmPager with bad aspect ratio on dual-head display [\#522](fvwmorg/fvwm3#522)
- AnimatedMove [\#513](fvwmorg/fvwm3#513)
- Spelling errors found by lintian. [\#511](fvwmorg/fvwm3#511)
- SnapAttraction: take into account individual monitors [\#466](fvwmorg/fvwm3#466)
- FvwmPager not taking into account global screen dimensions when configured with DeskTopScale [\#223](fvwmorg/fvwm3#223)
- FvwmPager: moving windows inside FvwmPager is inconsistent [\#198](fvwmorg/fvwm3#198)
- Add force\_icons\_size kludge to .stalonetrayrc. [\#581](fvwmorg/fvwm3#581) ([somiaj](https://github.com/somiaj))
- Fix pass through binding logic. [\#570](fvwmorg/fvwm3#570) ([somiaj](https://github.com/somiaj))
- Make default-config greyed colorset grey. [\#566](fvwmorg/fvwm3#566) ([somiaj](https://github.com/somiaj))
- Cleanup FvwmScript manual page. [\#565](fvwmorg/fvwm3#565) ([somiaj](https://github.com/somiaj))
- GNOME: remove DO\_IGNORE\_GNOME\_HINTS [\#556](fvwmorg/fvwm3#556) ([lgsobalvarro](https://github.com/lgsobalvarro))
- Unmaximize: restore \_NET\_WM\_STATE [\#546](fvwmorg/fvwm3#546) ([ThomasAdam](https://github.com/ThomasAdam))
- Fix compiler warnings in modules/FvwmScript/Instructions.c [\#544](fvwmorg/fvwm3#544) ([pm215](https://github.com/pm215))
- Rework FvwmPager to move windows easier [\#536](fvwmorg/fvwm3#536) ([ThomasAdam](https://github.com/ThomasAdam))
- Move: disable working area when screen given [\#535](fvwmorg/fvwm3#535) ([ThomasAdam](https://github.com/ThomasAdam))
- Make RightPanel use primary monitor dimensions. [\#530](fvwmorg/fvwm3#530) ([somiaj](https://github.com/somiaj))
- Set base struts only for primary monitor in default-config. [\#528](fvwmorg/fvwm3#528) ([somiaj](https://github.com/somiaj))
- Change FvwmPager Logic for initial window size. [\#527](fvwmorg/fvwm3#527) ([somiaj](https://github.com/somiaj))
- EWMH\_GetWorkArea use monitor dimensions. [\#526](fvwmorg/fvwm3#526) ([somiaj](https://github.com/somiaj))
- Make SnapAttraction snap to edges of all monitors. [\#521](fvwmorg/fvwm3#521) ([somiaj](https://github.com/somiaj))
- Update FvwmCommand to allow multiple args. [\#514](fvwmorg/fvwm3#514) ([somiaj](https://github.com/somiaj))

**Merged pull requests:**

- Extend FvwmIconMan Resolution configuration. [\#561](fvwmorg/fvwm3#561) ([somiaj](https://github.com/somiaj))
- Allow Min/Max WindowSize style to use client size [\#560](fvwmorg/fvwm3#560) ([somiaj](https://github.com/somiaj))
- Add more columns to default-config menu ItemFormat. [\#559](fvwmorg/fvwm3#559) ([somiaj](https://github.com/somiaj))
- Fix broken link. [\#529](fvwmorg/fvwm3#529) ([somiaj](https://github.com/somiaj))
- Spelling error fixes. [\#512](fvwmorg/fvwm3#512) ([somiaj](https://github.com/somiaj))
- Working on 1.0.4 [\#509](fvwmorg/fvwm3#509) ([ThomasAdam](https://github.com/ThomasAdam))
- module expand: don't overwrite previous expansion [\#576](fvwmorg/fvwm3#576) ([ThomasAdam](https://github.com/ThomasAdam))
- conditional: fix whitespace/comma parsing [\#572](fvwmorg/fvwm3#572) ([ThomasAdam](https://github.com/ThomasAdam))
- Configure a colorset for XDGMenu options. [\#564](fvwmorg/fvwm3#564) ([somiaj](https://github.com/somiaj))
- Menu: add option to grey entries out [\#563](fvwmorg/fvwm3#563) ([ThomasAdam](https://github.com/ThomasAdam))
- Remove \*FvwmPager: Label configuration option. [\#562](fvwmorg/fvwm3#562) ([somiaj](https://github.com/somiaj))
- move: Warp: move pointer to centre of window [\#553](fvwmorg/fvwm3#553) ([ThomasAdam](https://github.com/ThomasAdam))
- FvwmPager: Improvments with dealing with tiny windows on tiny pagers. [\#548](fvwmorg/fvwm3#548) ([somiaj](https://github.com/somiaj))
- PanFrame improvements [\#547](fvwmorg/fvwm3#547) ([ThomasAdam](https://github.com/ThomasAdam))
- pager: teach Icon view about colorsets [\#538](fvwmorg/fvwm3#538) ([ThomasAdam](https://github.com/ThomasAdam))
- placement: fix mouse positioning [\#533](fvwmorg/fvwm3#533) ([ThomasAdam](https://github.com/ThomasAdam))
- EdgeScroll: a few improvements [\#524](fvwmorg/fvwm3#524) ([ThomasAdam](https://github.com/ThomasAdam))
- Update manual for Echo/EchoFuncDefinition [\#520](fvwmorg/fvwm3#520) ([somiaj](https://github.com/somiaj))
- release: remove dev-docs from release tarball [\#518](fvwmorg/fvwm3#518) ([ThomasAdam](https://github.com/ThomasAdam))
- configure: remove stale references to BUGADDR [\#517](fvwmorg/fvwm3#517) ([ThomasAdam](https://github.com/ThomasAdam))
- Configuration tweaks [\#516](fvwmorg/fvwm3#516) ([ThomasAdam](https://github.com/ThomasAdam))
- build: add CHANGELOG.md to dist [\#510](fvwmorg/fvwm3#510) ([ThomasAdam](https://github.com/ThomasAdam))
jperkin pushed a commit that referenced this issue Dec 2, 2021
Change log:

4.16.3
======
- panel: Change width of default panel-2 to 1% (Fixes #454)
- panel: Fix xfce4-panel-CRITICAL
- panel: Fix xfce4-panel-CRITICAL when already running
- libxfce4panel: Do not destroy context menu if popped up (Fixes #442)
- launcher: Check for menu item initialization
- launcher: Fix garcon-CRITICAL at startup
- systray: Fix GObject-CRITICAL
- systray: Fix Gtk-CRITICAL at startup/shutdown
- systray: Fix libsystray-CRITICAL
- tasklist: Fix Gtk-CRITICAL
- Silent `-Wcast-align` from Clang
- Translation Updates:
  Bulgarian, English (Australia), Estonian, Hebrew, Italian, Norwegian
  Bokmål, Occitan (post 1500), Portuguese, Spanish, Swedish

4.16.2
======
- Add icons to help and about items in panel menu
- Modernize documentation (developer.xfce.org)
- Translation Updates:
  Croatian, Estonian, Georgian, Ukrainian

4.16.1
======
- pager: Use gobject bindings (Fixes #376)
- pager: Switch to new workspaces icon name
- launcher: avoid double fork
- statustray: Display tooltip title of statusnotifier items as plaintext
- statustray: Prevent crash when parsing properties (Fixes #379)
- windowmenu: fix use-after-free in window_menu_plugin_window_item_new
- Fix compilation warnings
- Update `.gitignore`
- Translation Updates:
  Albanian, Amharic, Arabic, Armenian (Armenia), Asturian, Basque,
  Belarusian, Bengali, Bulgarian, Catalan, Chinese (China), Chinese
  (Hong Kong), Chinese (Taiwan), Croatian, Czech, Danish, Dutch,
  Eastern Armenian, English (Australia), English (United Kingdom),
  Estonian, Finnish, French, Galician, Georgian, German, Greek, Hebrew,
  Hungarian, Icelandic, Indonesian, Interlingue, Italian, Japanese,
  Kazakh, Korean, Lithuanian, Malay, Norwegian Bokmål, Norwegian
  Nynorsk, Occitan (post 1500), Panjabi (Punjabi), Polish, Portuguese,
  Portuguese (Brazil), Romanian, Russian, Serbian, Sinhala, Slovak,
  Slovenian, Spanish, Swedish, Thai, Turkish, Ukrainian, Vietnamese

4.16.0
======
- panel: Fix intellihide with CSD (Fixes #368)
- tasklist: Fix wireframe for CSD windows (Fixes #338)
- tasklist: Auto-adjust icon size (Closes #90)
- Revert "tasklist: Auto-adjust icon size (Closes #90)"
- Fix GSourceFunc removal
- Remove GSourceFunc casts
- Remove GLIB_CHECK_VERSION IFDEFs which are obsolete after glib bump


4.15.6
======
- settings: Use spinbuttons for size and nrows
- settings: Update item listview toolbar
- Make dbusmenu-gtk3-0.4 optional, disables StatusNotifier integration
- gobject introspection wants a capital letter for the gir file
- Use new xfce_spawn API
- Bump GLib (and gio, gthread, etc) minimum to 2.50.0
- Update .gitignore
- Add README.md to EXTRA_DIST
- Fix compiler warnings
- Fix memory leaks
- Drop generated code from repo
- Revert "launcher: Appear "checked" on click (Fixes #256)"
- Translation Updates:
  Chinese (China), Estonian, Norwegian Nynorsk, Russian, Serbian,
  Slovak, Slovenian, Turkish, Vietnamese

4.15.5
======
- actions: Switch to new session icons (Fixes #332)
- add-items: Drop not-so-helpful dialog subtitle
- add-items: Bump default dialog size (Fixes #258)
- launcher: Appear "checked" on click (Fixes #256)
- tasklist: Limit blinking notification
- intellihide: Check if cursor is over the panel (Fixes #311)
- launcher: Set plugin icon as fallback (Fixes #329)
- Add new README.md
- Fixed icon for about dialog and added more icons for better scaling
- Unref datetime objects
- Translation Updates:
  Albanian, Amharic, Arabic, Armenian (Armenia), Basque, Belarusian,
  Bengali, Bulgarian, Catalan, Chinese (China), Chinese (Hong Kong),
  Chinese (Taiwan), Croatian, Czech, Danish, Dutch, Eastern Armenian,
  English (Australia), English (United Kingdom), Estonian, Finnish,
  French, Galician, Georgian, German, Greek, Hebrew, Hungarian,
  Icelandic, Indonesian, Interlingue, Italian, Japanese, Kazakh, Korean,
  Lithuanian, Malay, Norwegian Bokmål, Norwegian Nynorsk, Occitan (post
  1500), Panjabi (Punjabi), Polish, Portuguese, Portuguese (Brazil),
  Romanian, Russian, Serbian, Sinhala, Slovak, Slovenian, Spanish,
  Swedish, Thai, Turkish, Ukrainian, Uyghur, Vietnamese

4.15.4
======
- New plugin: statustray (supports statusnotifier and systray)
- plugins: Add new rDNS icons for all plugins
- Use shared field codes expansion
- tasklist: Add "Launch New Instance" item to menu (Fixes #158)
- Translation Updates:
  Albanian, Chinese (China), Chinese (Taiwan), Croatian, Estonian,
  French, Hebrew, Japanese, Kazakh, Korean, Lithuanian, Norwegian
  Bokmål, Polish, Portuguese, Portuguese (Brazil), Serbian, Swedish,
  Turkish

4.15.3
======
- Add new app icon and rDNS icon name
- Fix background of 48px app icons (Bug #16873)
- dark-mode: Make property unique across panels
- tasklist: Allow keyboard navigation within groups (Fixes #270)
- applicationsmenu: Correctly block autohiding (Fixes #287)
- action buttons: Fix combobox signal
- action buttons: Drop 'inverted buttons' setting (#223)
- action buttons: Add button title options (Bug #8980)
- action buttons: Fix separator width (Bug #15558)
- launcher: Fix launcher menu button state (Fixes #264)
- launcher: Fix crash with actions menu (Bug #16823)
- launcher: Fix in default panel configuration
- Improve docs for xfce_panel_plugin_position_widget (Bug #9438)
- Add Gio to libxfce4panel gir includes
- Add basic GitLab pipeline
- Fix whitespace error
- Fix panel build with vala 0.48 (Bug #16426)
- Fix build
- Update gitignore (Fixes #295)
- Drop references to Gtk2 and 4.6 panel plugins
- Translation Updates:
  Albanian, Amharic, Arabic, Armenian (Armenia), Belarusian, Bengali,
  Bulgarian, Catalan, Chinese (China), Chinese (Hong Kong), Chinese
  (Taiwan), Croatian, Czech, Danish, Dutch, Eastern Armenian, English
  (Australia), English (United Kingdom), Estonian, Finnish, French,
  Galician, Georgian, German, Greek, Hebrew, Hungarian, Icelandic,
  Indonesian, Interlingue, Italian, Japanese, Kazakh, Korean, Lithuanian,
  Malay, Norwegian Bokmål, Norwegian Nynorsk, Occitan (post 1500),
  Panjabi (Punjabi), Polish, Portuguese, Portuguese (Brazil), Romanian,
  Russian, Sinhala, Slovak, Slovenian, Spanish, Swedish, Thai, Turkish,
  Uighur, Ukrainian, Vietnamese

4.15.2
======
- panel: Improve autohide animation
- panel: Add "popdown-speed" property to adjust autohide animation
- panel: Fix autohide state machine
- panel: Fix cancellation of autohide animation
- panel: Immediately show panel in intellihide
- panel: Don't tamper with leave_opacity value (Bug #16296)
- launcher: Show desktop actions in context menu
- plugin: Show custom menu items below plugin name
- tasklist: Hide brackets for min windows by default
- tasklist: Fix crash middle-click-closing grouped windows (Bug #16410)
- systray: Basic support for symbolic icons
- systray: Silence deprecation warnings
- systray: Remove superfluous warning
- Improve wording in "Remove plugin" dialog (Bug #9000)
- settings: Add keywords for discoverability (Bug #10694)
- Fix GTimeVal deprecation (Bug #16643)
- Fix memory leak in panel plugin wrapper (Bug #16640)
- Update docstring
- Update libxfce4panel symbols
- Make var names more consistent
- Fix cast
- Fix typo
- Fix indentation
- Translation Updates:
  Albanian, Basque, Belarusian, Bulgarian, Catalan, Chinese (China),
  Chinese (Taiwan), Croatian, Danish, Dutch, Finnish, French, Galician,
  Georgian, German, Hebrew, Hungarian, Italian, Japanese, Kazakh,
  Lithuanian, Malay, Norwegian Bokmål, Polish, Portuguese, Portuguese
  (Brazil), Russian, Serbian, Slovenian, Spanish, Turkish, Ukrainian

4.15.1
======
- Enable dark-mode by default
- tic-tac-toe: Fix XfceTitledDialog with CSD
- add-item dialog: Fix XfceTitledDialog with CSD
- systray: Improve app icon lookup
- directorymenu: Add create folder/document menuitems (Bug #15639)
- directorymenu: Add option to hide folder/terminal menuitems (Bug
#15630)
- plugins: Fix enter/leave opacity w/o compositing (Bug #14577)
- clock: Drop leading zeros for days in default layout
- clock: Add back hour:min to format presets (Bug #16035)
- panel: Make sure "span monitors" is conditionally sensitive
- tasklist: Fix drag&drop in deskbar mode (Bug #16298)
- Fix autohide with bg color or image (Bug #16064)
- Improve the marching ants animation
- Remove extra underscore (Bug #16266)
- Use an empty placeholder icon for launcher (Bug #15819)
- Always provide files for vala binding in dist tarball
- Replace GtkStock icon
- Use symbolic window-close button image
- Fix doc typos
- Fix indentation
- Translation Updates:
  Albanian, Basque, Bulgarian, Catalan, Chinese (China), Chinese
  (Taiwan), Croatian, Czech, Danish, Dutch, English (United Kingdom),
  Finnish, French, Galician, Georgian, German, Greek, Hungarian,
  Interlingue, Italian, Japanese, Lithuanian, Norwegian Bokmål, Polish,
  Portuguese, Portuguese (Brazil), Russian, Serbian, Slovak, Slovenian,
  Spanish, Swedish, Turkish

4.15.0
======
 - Drop support for Gtk2 and 4.6 plugins
 - Drop Gtk2/4.6-only references from the docs
 - Don't show or try to load Gtk2 plugins anymore
 - Add dark mode preference
 - autohide: Add sliding out animation
 - Draw panel border based on position and length
 - appmenu: Listen to icon theme changes (Bug #15861)
 - appmenu: Use panel's icon size
 - clock: Validate timezone entry (Bug #16036)
 - prefs: Plug memory leaks (Bug #16016)
 - docs: Fix build by dropping unused refs (Bug #16031)
 - pager: Fix scrolling in pager-buttons (Bug #15614)
 - pager: Face-lift of settings dialog
 - pager: Only show scroll-option with buttons
 - pager: Add option to show workspace number
 - systray: Drop "Show frame" option (Bug #14186)
 - tasklist: Resize when windows get removed (Bug #14394)
 - systray: Fix icons without compositing (Bug #14577)
 - windowlist: Make layout consistent with xfdesktop
 - windowlist: Replace deprecated gtk_widget_modify_font
 - launcher: Fix visual state of arrow-button (Bug #15818)
 - launcher: Avoid excessive left padding on popup menu (Bug #15819)
 - Fix typos and improve code formatting
 - Translation Updates:
   Albanian, Arabic, Armenian (Armenia), Belarusian, Bulgarian, Chinese
   (China), Chinese (Taiwan), Croatian, Danish, Dutch, French, Galician,
   German, Greek, Hebrew, Hungarian, Indonesian, Italian, Japanese,
   Lithuanian, Malay, Norwegian Bokmål, Polish, Portuguese, Portuguese
   (Brazil), Russian, Serbian, Slovak, Spanish, Swedish, Thai, Turkish
jperkin pushed a commit that referenced this issue Dec 2, 2021
Change log:

4.16.2
======
- keyboard: Mark system defaults switch as active (Fixes #310)
- keyboard: Correctly initialize setting (Fixes #310)
- keyboard: Fix icon name in settings dialog
- keyboard: Make buttons translatable (Fixes #306)
- xfsettingsd: Fix setting float array properties
- Translation Updates:
  Arabic, Basque, Bulgarian, Estonian, Hebrew, Norwegian Bokmål,
  Slovenian, Spanish, Swedish, Thai, Ukrainian

4.16.1
======
- display: Fix scale by rounding (Fixes #258)
- Drop preferences-desktop-default-applications icon name
- Also allocate terminating element
- Translation Updates:
  Albanian, Arabic, Armenian (Armenia), Asturian, Basque, Belarusian,
  Belarusian (Tarask), Bengali, Bulgarian, Catalan, Chinese (China),
  Chinese (Hong Kong), Chinese (Taiwan), Croatian, Czech, Danish,
  Dutch, Eastern Armenian, English (Australia), English (Canada),
  English (United Kingdom), Estonian, Finnish, French, Galician,
  German, Greek, Hebrew, Hungarian, Icelandic, Indonesian, Interlingue,
  Italian, Japanese, Kabyle, Kazakh, Korean, Lithuanian, Malay,
  Norwegian Bokmål, Norwegian Nynorsk, Occitan (post 1500), Polish,
  Portuguese, Portuguese (Brazil), Romanian, Russian, Serbian, Slovak,
  Slovenian, Spanish, Swedish, Thai, Turkish, Ukrainian

4.16.0
======
- Drop subtitles from settings dialogs (Fixes #239)
- display: Fix icon name in settings dialog
- settings-manager: Fix visibility of filterbar
- settings-manager: Correctly show/hide the filterbar
- settings-manager: Switch to GtkSearchEntry
- settings-manager: Put filter in separate bar (Fixes #226)
- appearance: Add 'Add' button to install themes (Fixes #193)
- color: Tweak colors  of icon
- mime: Accept Thunar's old id name (Fixes #247)
- settings-editor: Enable tooltips and ellipsizing for `Value` column
- settings-editor: Fix scrollbar for channels
- settings-editor: Point to correct docs URL (#245)
- bump glib (and gio, gthread, etc) minimum to 2.50.0
- Remove GSourceFunc casts
- Indentation fixes
- Translation Updates:
  Basque, Bulgarian, Estonian, French, German, Hebrew, Indonesian,
  Italian, Japanese, Norwegian Bokmål, Norwegian Nynorsk, Portuguese,
  Portuguese (Brazil), Russian, Serbian, Slovenian, Swedish, Turkish,
  Ukrainian

4.15.3
======
- Disable UPower support by default
- Add 24px and 32px icons
- xfsettingsd: avoid default double fork
- mime: Add 'Open with...' button
- mime: Add new generic launcher icons
- color: Adjust padding of dialog
- color: Add labels to toolbar
- keyboard: Make 'system defaults' a GtkSwitch
- keyboard: Adjust width of shortcut column (Fixes #223)
- keyboard: Update dialog UI
- keyboard: Make all table columns sortable
- keyboard: Improve inline toolbar alignment
- display: Center minimal dialog on monitor where cursor is
- settings-editor: Add labels to toolbar items
- Update README file
- Translation Updates:
  Albanian, Arabic, Armenian (Armenia), Basque, Belarusian, Belarusian
  (Tarask), Bengali, Bulgarian, Catalan, Chinese (China), Chinese (Hong
  Kong), Chinese (Taiwan), Croatian, Czech, Danish, Dutch, Eastern
  Armenian, English (Australia), English (Canada), English (United
  Kingdom), Estonian, Finnish, French, Galician, German, Greek, Hebrew,
  Hungarian, Icelandic, Indonesian, Interlingue, Italian, Japanese,
  Kazakh, Korean, Lithuanian, Malay, Norwegian Bokmål, Norwegian
  Nynorsk, Occitan (post 1500), Polish, Portuguese, Portuguese
  (Brazil), Romanian, Russian, Serbian, Slovak, Slovenian, Spanish,
  Swedish, Thai, Turkish, Ukrainian, Uyghur

4.15.2
======
- appearance: Fix width of DPI spinbutton (Bug #16125)
- appearence: Sync theme, icon, font names to gsettings
- appearance: Fix list refresh on DnD (Fixes #213)
- appearance: Drop toolbar style setting (Bug #16665)
- display: Initial fractional scaling support (Fixes #162)
- display: Custom scale changes are display changes
- display: Improve layout in settings dialog
- display: Resize display widget according to scale
- display: Move scaling presets to glade
- display: Set minimum scale to 0.1
- display: Improve state machine for scaling option
- xfsettingsd: Correctly get current xrandr scale
- mime-settings: Rename dialog and icon to 'Default Applications'
- mime-settings: Fix window icon name
- mime-settings: Fix double free
- mime-helpers: Fix Nautilus icon name
- mime-helpers: Rename Thunar to thunar
- Rename Thunar to thunar in make and potfiles
- Expand desktop entry field codes
- keyboard-settings: Support libxfce4ui XfceTitledDialog new API
- keyboard: Show shortcuts with keycap class
- settings-manager: Ensure searchbox has initial focus (Bug #16890)
- settings-manager: Simplify redrawing of search results (Fixes #141)
- settings-manager: Hide filter entry in plugged dialogs
- Convert xfce4-compose-mail to Python
- Add dependency to Python3
- Use just binary name (instead of full path) as argument
- Don't crash when upowerd isnt present (bug #60)
- Always install shiny new icons
- Drop libxfce4ui 4.15.1 ifdefs
- Fix xfconf-related memory leaks
- Update .gitignore
- Fix typo
- Translation Updates:
  Bulgarian, Catalan, Chinese (China), Chinese (Hong Kong), Chinese
  (Taiwan), Croatian, Danish, Dutch, English (Canada), Estonian, Finnish,
  French, German, Hebrew, Hungarian, Indonesian, Italian, Japanese,
  Kazakh, Korean, Lithuanian, Norwegian Bokmål, Serbian, Swedish,
  Turkish

4.15.1
======
This release transitions several exo components to xfce-settings.
Please use with exo 4.15.1 or later for best results.
- exo-compose-email -> xfce4-compose-email
- exo-helper -> xfce4-mime-helper
- mime-settings now includes preferred applications

Other Updates:
- Switch to new app icons and rDNS icon names
- Increase mouse cursor upper bound for HiDPI (Bug #16042)
- Fix a memory leak
- Fix typo
- Add basic GitLab pipeline
- Make "Profiles matching" sentence translatable (Bug #16679)
- settings-manager: Use symbolic find/clear icons
- Move from exo-csource to xdt-csource (Bug #16717)
- Handle failure to get Xkl engine for display (Bug #16017)
- settings-manager: Make sure content determines size
- Fix cast warnings
- Fix GTimeVal deprecation (Bug #16645)
- Fix keywords and mark them  as translateable
- Use proper fallback configuration on "apply" and "toggle off" (Bug #16476)
- keyboard-settings: Fix log flood (Bug #16521)
- keyboard: Fix crash when editing shortcut (Bug #15958)
- Add keywords to .desktop files (Bug #10694)
- settings-manager: Improve search by including keywords (Bug #10694)
- xfsettingsd: Add --disable-wm-check flag (Bug #16128)
- Fix typecasting
- Set "gtk-titlebar-middle-click" to "lower" by default
- display: Allow resizing of minimal dialog (Bug #15450)
- settings-manager: Show min and max buttons
- dialogs: Ensure dialogs have min and max buttons
- Translation Updates:
  Albanian, Arabic, Armenian (Armenia), Basque, Belarusian, Belarusian
  (Tarask), Bulgarian, Catalan, Chinese (China), Chinese (Hong Kong),
  Chinese (Taiwan), Croatian, Czech, Danish, Dutch, English (Australia),
  English (Canada), English (United Kingdom), Estonian, Finnish, French,
  Galician, German, Greek, Hebrew, Hungarian, Icelandic, Indonesian,
  Interlingue, Italian, Japanese, Kazakh, Korean, Lithuanian, Malay,
  Norwegian Bokmål, Norwegian Nynorsk, Occitan (post 1500), Polish,
  Portuguese, Portuguese (Brazil), Romanian, Russian, Serbian, Slovak,
  Slovenian, Spanish, Swedish, Thai, Turkish, Uighur, Ukrainian

4.15.0
======
- xsettings: Use CSD for GtkDialogs by default
- settings-manager: Fix XfceTitledDialog layout with CSD
- settings-manager: Drop setting the old header style
- display: Show ratio next to display resolution
- display: Mark preferred mode with an asterisk
- display: Add init function for aspect ratios
- display: Right-align the display ratio
- display: Fixed warning and removed ratio
- display: Improve look of ratio
- display: Fix icon name for primary indicator
- display: Initialize crtc->scalex/y (Bug #15971)
- settings-editor: Add consistent inline-toolbar
- appearance: Only show themes that support Gtk3 (Bug #15849)
- color: Fix crash in add-profiles dialog (Bug #15876)
- color: Conditionally hide info button in add-profile dialog
- color: Add tooltip to profile info buttons
- display: Fix profile matching in xfsettingsd
- display: Assure correct gchar** (Bug #15816)
- keyboard: Improve layout of add-command dialog
- keyboard: Add mnemonics to add-command dialog (Bug #10495)
- Switch to symbolic window-close icon
- Bump libxfce4ui dependency to 4.15.1
- Improve string for session managers
- Ensure the newly labeled 'Xfce Settings Daemon' is translated
- Do not show translation info on --help output
- Translation Updates:
  Albanian, Arabic, Basque, Belarusian, Bulgarian, Catalan, Chinese
  (China), Chinese (Taiwan), Croatian, Czech, Danish, Dutch, English
  (United Kingdom), Finnish, French, Galician, German, Greek, Hebrew,
  Hungarian, Indonesian, Interlingue, Italian, Japanese, Korean,
  Lithuanian, Malay, Norwegian Bokmål, Polish, Portuguese, Portuguese
  (Brazil), Russian, Serbian, Slovak, Slovenian, Spanish, Swedish, Thai,
  Turkish
jperkin pushed a commit that referenced this issue Feb 21, 2022
### Added

* CLI: The `--fix` flag has been added, allowing users to attempt to
  automatically upgrade any vulnerable dependencies to the first safe version
  available ([#212](pypa/pip-audit#212),
  [#222](pypa/pip-audit#222))

* CLI: The combination of `--fix` and `--dry-run` is now supported, causing
  `pip-audit` to perform the auditing step but not any resulting fix steps
  ([#223](pypa/pip-audit#223))

* CLI: The `--require-hashes` flag has been added which can be used in
  conjunction with `-r` to check that all requirements in the file have an
  associated hash ([#229](pypa/pip-audit#229))

* CLI: The `--index-url` flag has been added, allowing users to use custom
  package indices when running with the `-r` flag
  ([#238](pypa/pip-audit#238))

* CLI: The `--extra-index-url` flag has been added, allowing users to use
  multiple package indices when running with the `-r` flag
  ([#238](pypa/pip-audit#238))

### Changed

* `pip-audit`'s minimum Python version is now 3.7.

* CLI: The default output format is now correctly pluralized
  ([#221](pypa/pip-audit#221))

* Output formats: The SBOM output formats (`--format=cyclonedx-xml` and
  `--format=cyclonedx-json`) now use CycloneDX
  [Schema 1.4](https://cyclonedx.org/docs/1.4/xml/)
  ([#216](pypa/pip-audit#216))

* Vulnerability sources: When using PyPI as a vulnerability service, any hashes
  provided in a requirements file are checked against those reported by PyPI
  ([#229](pypa/pip-audit#229))

* Vulnerability sources: `pip-audit` now uniques each result based on its
  alias set, reducing the amount of duplicate information in the default
  columnar output format
  ([#232](pypa/pip-audit#232))

* CLI: `pip-audit` now prints its output more frequently, including when
  there are no discovered vulnerabilities but packages were skipped.
  Similarly, "manifest" output formats (JSON, CycloneDX) are now emitted
  unconditionally
  ([#240](pypa/pip-audit#240))

### Fixed

* CLI: A regression causing excess output during `pip audit -r`
  was fixed ([#226](pypa/pip-audit#226))
jperkin pushed a commit that referenced this issue Mar 15, 2022
                Internet Systems Consortium DHCP Distribution
                            Version 4.4.3
                            9 March 2022
                            Release Notes

                            NEW FEATURES

Please note that that ISC DHCP is licensed under the Mozilla Public
License, MPL 2.0. Please see https://www.mozilla.org/en-US/MPL/2.0/ to read
the MPL 2.0 license terms.

NOTE: The client and relay components are now End-Of-Life.
4.4.3 is the final release for those components.

For information on how to install, configure, and run this software, as
well as how to find documentation and report bugs, please consult the
README file.

ISC DHCP uses the standard GNU configure command for installation. Please review the
output of `./configure --help` to see what options are available.

The system has only been tested on Linux and FreeBSD, and may not work on
other platforms. Please subscribe to the dhcp-users mailing list at
https://lists.isc.org/mailman/listinfo/dhcp-users and report any problems
and/or suggested fixes to dhcp-users@lists.isc.org.

ISC DHCP is open source software maintained by Internet Systems
Consortium.  This product includes cryptographic software written
by Eric Young (eay@cryptsoft.com).

		Changes since 4.4.2-P1 (New Features)

- Two new OMAPI function calls were added, `dhcpctl_timed_connect()`
  and `dhcpctl_timed_wait_for_completion()`. These provide timed
  versions of creating a connection and waiting for an operation
  to complete.
  [GitLab #76]

- The BIND libraries have been updated to the latest version, 9.11.36. This fixes a number
  of compilation issues on various systems, including OpenWRT. Thanks to
  Philip Prindeville for testing on OpenWRT.
  [GitLab #218, #171, #180, #192]

- Support was added for the new DHCPv4 option v6-only-preferred, specified
  in RFC 8925. A new reason code, V6ONLY, was added to the client script
  and the client Linux script sample was updated.
  [GitLab #132]

		Changes since 4.4.2-P1 (Bug Fixes)

- Minor corrections were made to allow compilation under gcc 10.
  [GitLab #117]

- The logic in dhclient that causes it to decline DHCPv4 leases if the
  client script exits abnormally (i.e. crashes) has been corrected.
  [GitLab #123]

- The limit on the size of a lease file that can be loaded at startup
  is now only enforced on 32-bit systems.
  [GitLab #92]

- The PRNG initialization has been improved. It now uses the configure flag
  `--with-randomdev=PATH`, which specifies the device from which to read the
  initial seed. That is typically `/dev/random` (the default value) or
  `/dev/urandom`, but may be specified otherwise on the local system. The old
  behavior can be forced by disabling this feature (`--with-randomdev=no`).
  If the initialization is disabled or reading from the random device fails,
  the previous algorithm (retrieve the last four bytes of hardware addresses
  from all network interfaces that have them, and use the current time and
  process ID) is used.
  [GitLab #197]

- A minor dhclient code fix was made to remove compilation warnings.
  [GitLab #190]

- The hard-coded MD5 algorithm name was removed in OMAPI connection logic.
  Previously, using any other algorithm via a key-algorithm statement would
  allow OMAPI connections to be made, but subsequent actions such as updating
  an object would fail.
  [GitLab #148]

- The parallel build has been improved. Thanks to Sergei Trofimovich for
  the patch. The parallel build is still experimental, as officially the
  BIND 9 code does not support the parallel build for libraries.
  [GitLab #91]

- Handling of LDAP options (`ldap-gssapi-principal` and `ldap-gssapi-keytab`)
  has been improved. This is contributed code that has not been tested by ISC. Thank
  you to Petr Mensik and Pavel Zhukov for the patches!
  [GitLab !56,!75]

- It is now possible to use `option -g ipaddr` in the dhcrelay to replace the giaddr sent to
  clients with the given ipaddr, to work around bogus clients like Solaris 11
  grub which use giaddr instead of the announced router (3) to set up their
  default route. Thanks to Jens Elkner for the patch!
  [GitLab #223, !86, !92]
jperkin pushed a commit that referenced this issue Apr 24, 2022
Changes since 1.5.8

    Allow libopengl.so to be used when GLX_LIB is missing [#257, John Bates]

Changes since 1.5.7

    Revert changes from PR #238 / #229
    Fixes regressions: #240, #252, #253

Changes since Epoxy 1.5.6

    Remove type redefinition [#249]

Changes since 1.5.5

    Fix issue with loading OpenGL/GLX/EGL libraries [#238, Yaroslav Isakov]
    Expose dependency variables in pkg-config file [#231, Xavier Claessens]
    Support Win64 pointer-sized types [#246]
    Close output objects when generating files [#242, Aleksandr]

Changes since 1.5.4

    Remove Python 2 support [#213]
    Remove Autotools support [#212]
    Use EGL_NO_X11 to disable X11 headers [#216]
    Use call convention for mock function [crziter, #220]
    Return correct version of GLSL on GLES2 [Eric Anholt, #223]
    Rely on Meson's darwin_versions option [#225]
jperkin pushed a commit that referenced this issue Jul 4, 2022
This release is the first release of chardet that no longer
supports Python < 3.6.

In addition to that change, it features the following user-facing
changes:

    Added a prober for Johab Korean (#207, @grizlupo)
    Added a prober for UTF-16/32 BE/LE (#109, #206, @jpz)
    Added test data for Croatian, Czech, Hungarian, Polish, Slovak,
    Slovene, Greek, and Turkish, which should help prevent future
    errors with those languages
    Improved XML tag filtering, which should improve accuracy for
    XML files (#208)
    Tweaked SingleByteCharSetProber confidence to match latest
    uchardet (#209)
    Made detect_all return child prober confidences (#210)
    Updated examples in docs (#223, @domdfcoding)
    Documentation fixes (#212, #224, #225, #226, #220, #221, #244
    from too many to mention)
    Minor performance improvements (#252, @deedy5)
    Add support for Python 3.10 when testing (#232, @jdufresne)
    Lots of little development cycle improvements, mostly thanks
    to @jdufresne
jperkin pushed a commit that referenced this issue Sep 2, 2022
                Internet Systems Consortium DHCP Distribution
                            Version 4.4.3
                            9 March 2022
                            Release Notes

                            NEW FEATURES

Please note that that ISC DHCP is licensed under the Mozilla Public
License, MPL 2.0. Please see https://www.mozilla.org/en-US/MPL/2.0/ to read
the MPL 2.0 license terms.

NOTE: The client and relay components are now End-Of-Life.
4.4.3 is the final release for those components.

For information on how to install, configure, and run this software, as
well as how to find documentation and report bugs, please consult the
README file.

ISC DHCP uses the standard GNU configure command for installation. Please review the
output of `./configure --help` to see what options are available.

The system has only been tested on Linux and FreeBSD, and may not work on
other platforms. Please subscribe to the dhcp-users mailing list at
https://lists.isc.org/mailman/listinfo/dhcp-users and report any problems
and/or suggested fixes to dhcp-users@lists.isc.org.

ISC DHCP is open source software maintained by Internet Systems
Consortium.  This product includes cryptographic software written
by Eric Young (eay@cryptsoft.com).

		Changes since 4.4.2-P1 (New Features)

- Two new OMAPI function calls were added, `dhcpctl_timed_connect()`
  and `dhcpctl_timed_wait_for_completion()`. These provide timed
  versions of creating a connection and waiting for an operation
  to complete.
  [GitLab #76]

- The BIND libraries have been updated to the latest version, 9.11.36. This fixes a number
  of compilation issues on various systems, including OpenWRT. Thanks to
  Philip Prindeville for testing on OpenWRT.
  [GitLab #218, #171, #180, #192]

- Support was added for the new DHCPv4 option v6-only-preferred, specified
  in RFC 8925. A new reason code, V6ONLY, was added to the client script
  and the client Linux script sample was updated.
  [GitLab #132]

		Changes since 4.4.2-P1 (Bug Fixes)

- Minor corrections were made to allow compilation under gcc 10.
  [GitLab #117]

- The logic in dhclient that causes it to decline DHCPv4 leases if the
  client script exits abnormally (i.e. crashes) has been corrected.
  [GitLab #123]

- The limit on the size of a lease file that can be loaded at startup
  is now only enforced on 32-bit systems.
  [GitLab #92]

- The PRNG initialization has been improved. It now uses the configure flag
  `--with-randomdev=PATH`, which specifies the device from which to read the
  initial seed. That is typically `/dev/random` (the default value) or
  `/dev/urandom`, but may be specified otherwise on the local system. The old
  behavior can be forced by disabling this feature (`--with-randomdev=no`).
  If the initialization is disabled or reading from the random device fails,
  the previous algorithm (retrieve the last four bytes of hardware addresses
  from all network interfaces that have them, and use the current time and
  process ID) is used.
  [GitLab #197]

- A minor dhclient code fix was made to remove compilation warnings.
  [GitLab #190]

- The hard-coded MD5 algorithm name was removed in OMAPI connection logic.
  Previously, using any other algorithm via a key-algorithm statement would
  allow OMAPI connections to be made, but subsequent actions such as updating
  an object would fail.
  [GitLab #148]

- The parallel build has been improved. Thanks to Sergei Trofimovich for
  the patch. The parallel build is still experimental, as officially the
  BIND 9 code does not support the parallel build for libraries.
  [GitLab #91]

- Handling of LDAP options (`ldap-gssapi-principal` and `ldap-gssapi-keytab`)
  has been improved. This is contributed code that has not been tested by ISC. Thank
  you to Petr Mensik and Pavel Zhukov for the patches!
  [GitLab !56,!75]

- It is now possible to use `option -g ipaddr` in the dhcrelay to replace the giaddr sent to
  clients with the given ipaddr, to work around bogus clients like Solaris 11
  grub which use giaddr instead of the announced router (3) to set up their
  default route. Thanks to Jens Elkner for the patch!
  [GitLab #223, !86, !92]
jperkin pushed a commit that referenced this issue Sep 17, 2022
Patches privately shared by <pin> and RVP, thanks!

Changes:
608
---
* Add the --header option (github #43).
* Add the --no-number-headers option (github #178).
* Add the --status-line option.
* Add the --redraw-on-quit option (github #36).
* Add the --search-options option (github #213).
* Add the --exit-follow-on-close option (github #244).
* Add 'H' color type to set color of header lines.
* Add #version conditional to lesskey.
* Add += syntax to variable section in lesskey files.
* Allow option name in -- command to end with '=' in addition to '\n'.
* Add $HOME/.config to possible locations of lesskey file (github #153).
* Add $XDG_STATE_HOME and $HOME/.local/state to possible locations
  of history file (github #223).
* Don't read or write history file in secure mode (github #201).
* Fix display of multibyte and double-width chars in prompt.
* Fix ESC-BACKSPACE command when BACKSPACE key does not send 0x08
  (github #188).
* Add more \k codes to lesskey format.
* Fix bug when empty file is modified while viewing it.
* Fix bug when parsing a malformed lesskey file (githb #234).
* Fix bug scrolling history when --incsearch is set (github #214).
* Fix buffer overflow when invoking lessecho with more than 63 -m/-n
  options (github #198).
* Fix buffer overflow in bin_file (github #271).
* Fix bug restoring color at end of highlighted text.
* Fix bug in parsing lesskey file.
* Defer moving cursor to lower left in some more cases.
* Suppress TAB filename expansion in some cases where it doesn't make sense.
* Fix termlib detection when compiler doesn't accept
  calls to undeclared functions.
* Fix bug in input of non-ASCII characters on Windows (github #247)
* Escape filenames when invoking LESSCLOSE.
* Fix bug using multibyte UTF-8 char in search string
  with --incsearch (github #273).

590
---
* Make less able to read lesskey source files (deprecating lesskey).
* If XDG_CONFIG_HOME is set, find lesskey source file
  in $XDG_CONFIG_HOME/lesskey rather than $HOME/.lesskey.
* If XDG_DATA_HOME is set, find and store history file
  in $XDG_DATA_HOME/lesshst rather than $HOME/.lesshst.
* Add the --lesskey-src option.
* Add the --file-size option.
* With -F, if screen is resized to make file fit on one screen, don't exit.
* Fix bug which could leave terminal in mouse-reporting mode
  after exiting less.
* Fix bug which caused failure to respond to window resize.
* Fix backslash bug searching in tag file.

581
---
* Change ESC-u command to toggle, not disable, highlighting per man page.
* Add ESC-U command.
* Add ctrl-W search modifier for wrapping search.
* F command can be interrupted by ^X.
* Support OSC 8 hyperlinks when -R is in effect.
* g command with no number will ignore -j and put first line at top of screen.
* Multiple + or -p command line options are handled better.
* Add the --incsearch option.
* Add the --line-num-width option.
* Add the --status-col-width option.
* Add the --use-color and --color options.
* Display -w highlight even if highlighted line is empty.
* If search result is in a long line, scroll to ensure it is visible.
* Editing the same file under different names now creates only
  one entry in the file list.
* Make visual bell more visible on some terminals.
* Ring end-of-file bell no more than once per second.
* Build can use either Python or Perl for Makefile.aut operations.
* Fix crash when using the @ search modifier.
* Fix crash in the 's' command due to duplicate free.
* Fix realpath crash on Darwin.
jperkin pushed a commit that referenced this issue Dec 18, 2022
# callr 3.7.3

* Errors from callr now include the standard output (in `$stdout`) and
  standard error (in `stderr`) again. The standard output and error are also
  printed on error in non-interactive sessions, and a note is printed about
  them in interactive sessions.

# callr 3.7.2

* New function `add_hook()` to hook into the callr process startup and
  options. This is for experts and it is also currently experimental
  (#203, @klmr).

# callr 3.7.1

* When copying existing startup files, an additional newline is appended to
  protect against a missing newline at the end of the file. This would
  cause R ignore that line (#205).

* Serialization of objects passed between sessions now uses `compress=FALSE`
  by default. The default can be changed by setting the
  `callr.compress_transport` option (#223, @dfalbel).

* We have revamped callr's error objects, with lots of improvements to the
  output.
jperkin pushed a commit that referenced this issue May 10, 2023
### [2.3.1] - 2022-11-29

#### Changed

  * The printout of the inferred `intersphinx_mapping` item for inventories
    retrieved by URL (`--url`) in the 'suggest' CLI mode is now relocated to
    fall immediately below the inventory-search output. It also now is displayed
    even if no objects in the `objects.inv` satisfy the score threshold.
    ([#262](bskinn/sphobjinv#262))

  * The 'suggest' CLI mode output now includes dividers for improved
    readability.

#### Tests

  * The plaintext `tests/resource/objects_attrs.txt` was converted to POSIX EOLs
    and declared as binary to git, in order to provide a consistent state for
    sdist packaging, regardless of platform (POSIX vs Windows).

    * As a result, it was necessary to modify the `scratch_path` fixture to
      "`unix2dos`" this file on Windows systems, in order to provide a
      consistent test state.

    * Similarly, the `decomp_cmp_test` fixture was modified to "`unix2dos`" the
      `objects_attrs.txt` resource before comparisons, again in order to provide
      a consistent reference artifact. Implementing required direct manipulation
      of the bytes contents of the file, instead of the `filecmp.cmp` method
      that had been used previously.

  * The README doctests and shell tests have been removed from the default
    pytest suite. They must be explicitly opted-in with the `--readme` and
    `--doctest-glob="README.rst"` flags to pytest.

    * A new job, `readme`, has been added to the `aux_tests` stage of the Azure
      Pipelines CI to run these tests for PRs and release branches.

  * The constraint for `pytest-check` was bumped to `>=1.1.2` and all uses of
    the `check` fixture were revised from `with check.check(...):` to
    `with check(...):`. ([#265](bskinn/sphobjinv#265))

  * Azure Pipelines now has Python 3.11 available for all of Ubuntu, Windows and
    MacOS, so it was added to the core text matrix for all platforms.

  * A new CI job was created on Azure Pipelines that creates an sdist from the
    current project, extracts it into a sandboxed environment, installs the dev
    dependencies, and runs the pytest suite (`azure-sdisttest.yml`).

  * All uses of `pytest-check` were updated to use the
    [v1.1.2 syntax](https://github.com/okken/pytest-check/blob/main/changelog.md#110---2022-nov-21)
    (`check` fixture, or `from pytest_check import check`).

#### Internal

  * The `sys.exit()` in the case of no objects falling above the 'suggest'
    search threshold was refactored into the main `do_suggest()` body, to
    minimize the surprise of an `exit()` call coming in a subfunction.
    ([#263](bskinn/sphobjinv#263))

#### Packaging

  * `MANIFEST.in` was revised in order to provide a testable (`pytest --nonloc`)
    sdist, in order to streamline packaging of `sphobjinv` for conda-forge.
    (Thanks very much to [@anjos](https://github.com/anjos) for getting the
    recipes for `sphobjinv` and its dependencies in place! See
    [#264](bskinn/sphobjinv#264).)

#### Administrative

  * `sphobjinv` is now available via conda-forge! A note was added to the docs
    to indicate this.

  * The version bump on `pytest-check` no longer permits the use of Python 3.6
    in CI. As Python 3.6 is nearly a year beyond EOL, this seems a reasonable
    time to officially drop support for it. `python_requires` will still be at
    `>=3.6` for now; it *should* still work for 3.6...but, no guarantees.

  * The hook versions for `pre-commit-hooks`, `black`, and `pyproject-fmt` were
    updated to v4.3, v22.10, and v0.3.5, respectively.

  * `CONTENT_LICENSE.txt` was created, to specifically house the full
    content/documentation license information.

  * `LICENSE.txt` was revised to only hold the MIT License for the code,
    primarily so that Github's automatic systems will recognize the project as
    MIT licensed.

  * Caching of pip downloads was added to all of the Azure Pipelines jobs.

  * The version constraint for `pytest-check` was raised to `>=1.1.2`.

  * A temporary upper bound was placed on the `flake8` version (now `>=5,<6`,
    instead of `>=5`) to avoid pip resolver failures likely due to conflicts
    with constraints declared by plugins.

  * The older versions of `jsonschema` tested in the `tox` matrix were
    streamlined down to 3.0 (`==3.0`), 3.x (`<4`), 4.0 (`<4.1`) and 4.8
    (`<4.9`).

  * The pin of `sphinx-issues==0.4.0` in the `tox` matrix was removed, to match
    the unpinned package in the `requirements-xxx.txt` files.


### [2.3] - 2022-11-08

#### Added

  * The CLI now prints the project name and version for the `objects.inv` as
    part of the 'suggest' mode output.

  * The CLI now prints an inferred `intersphinx_mapping` entry for a remote
    docset as part of the 'suggest' mode output, where such inference is
    possible. The output from this mapping inference was added to the relevant
    tests, and a couple of unit tests on some basic pieces of functionality were
    written. ([#149](bskinn/sphobjinv#149))

  * The CLI now provides considerably more information about what is happening
    with the URLs it checks when trying to retrieve a remote inventory.
    ([#99](bskinn/sphobjinv#99), plus more)

  * CLI 'suggest' results output now displays more information about
    the total number of objects in the inventory, the search score threshold,
    and the number of results falling at/above that threshold.
    ([#232](bskinn/sphobjinv#232))

  * A new CLI option, `-p`/`--paginate`, enables paging of the results from the
    `suggest` feature. ([#70](bskinn/sphobjinv#70))

#### Fixed

  * The regex for parsing object lines from decompressed inventories now
    correctly processes `{role}` values that contain internal colons.

  * CLI corner case where options are passed but no subparser is specified
    now results in a clean error-exit, instead of an exception.
    ([#239](bskinn/sphobjinv#239))

#### Documentation

  * Updated doctests to reflect the new v22.1 attrs `objects.inv` used for
    demonstration purposes.

  * Updated `syntax.rst` to indicate that the `{role}` in an inventory object
    MAY contain a colon.

  * Added new 'CLI implementation' pages for the new modules, downstream of the
    refactoring of the CLI 'convert' and 'suggest' code.

  * Revised the intro paragraph of the 'CLI usage' page to more clearly emphasize
    the two CLI subcommands and the links to their respective docs pages.

  * Fixed a mistake in the CLI help info for the `--url` argument to `convert`.

#### Tests

  * Various tests were updated to reflect the contents of the new v22.1 attrs
    `objects.inv` introduced to replace the previous v17.2 inventory.

  * A modern Sphinx `objects.inv` (v6.0.0b) was added to `tests/resource` as
    `objects_sphinx.inv`, and the previous v1.6.6 was renamed to
    `objects_sphinx_1_6_6.inv`.

  * The 'valid objects' test cases were updated to reflect the possibility for a
    colon within `{role}`:

    * The colon-within-`{role}` test case was moved from 'invalid' to 'valid'.

    * The colon-within-`{domain}` test case was also moved from 'invalid' to
      'valid', but with an annotation added to indicate that it's not actually
      viable---it will actually be interpreted incorrectly, with the first
      portion of the colon-containing `{domain}` imported as `{domain}`, and the
      remainder imported as part of `{role}`.

#### Internal

  * Refactor CLI code to place the 'convert' and 'suggest' implementations in
    their own modules.

  * Refactor CLI 'suggest' code to the main `do_suggest()` function and a
    handful of sub-functions.

  * Rename the `log_print()` CLI helper function to the more-descriptive
    `print_stderr()`.

  * Bump development Sphinx version to v5.3.

  * Bump flake8 version to >=5, due to the absorption of flake8-colors
    colorization functionality. The flake8/tox config was updated accordingly.

  * Bump pre-commit black hook to v22.3.0.

  * Remove PyPy and Python 3.6 from Azure Pipelines test matrix.

  * Revise `__version__` retrieval in `setup.py` to use an intermediate
    dictionary with `exec()`.

  * Update `setup.cfg` to use `license_files`, instead of the deprecated
    `license_file`.

#### Administrative

  * Apply CC BY 4.0 to documentation and docstrings and update project files to
    reflect.


### [2.2.2] - 2022-03-22

#### Fixed

  * UnicodeDecodeErrors are ignored within the vendored `fuzzywuzzy` package
    during `suggest` operations, using the `errors=replace` mode within
    bytes.decode().

    * This misbehavior emerged after vendoring `fuzzywuzzy`, suggesting that
      it was a bug fixed later on in that project's development, after the
      point from which it was vendored.

    * This change may alter `suggest` behavior for those inventory objects with
      pathological characters. But, given their rarity, user experience is not
      expected to be noticeably affected.

#### Internal

  * The `pyproject-fmt` formatted was added as a pre-commit hook.

  * The `flake8-raise` plugin was added to the linting suite.

#### Testing

  * A smoke test for error-free `suggest` execution was added for all of the
    inventory files in `tests/resource`.


### [2.2.1] - 2022-02-05

#### Internal

  * The `benchmarks.py` file within the vendored version of `fuzzywuzzy`
    was removed. This *should* have no effect on `sphobjinv` functionality.
    * Per [#223](bskinn/sphobjinv#223), the
      Python 2 code within `benchmarks.py` breaks a full-source compilation
      done as part of an RPM packaging workflow.


### [2.2] - 2022-01-30

#### Administrative

  * The project documentation has been updated to reflect the deprecation
    of the `python-Levenshtein` speedup.

  * `pre-commit` has been added to the project, primarily to automate
    `black` code formatting on every commit.

    * The default trailing-whitespace, end-of-file, YAML syntax, and
      large-file-prevention hooks have also been added.

#### Internal

  * `sphinx-removed-in` was added as a dev and RTD dependency, to provide
    the `versionremoved` Sphinx directive.


### [2.2b1] - 2021-12-23

#### Removed

  * Acceleration of the `suggest` functionality via use of `python-Levenshtein`
    is no longer possible due to the vendoring of an early, MIT-licensed version
    of `fuzzywuzzy`, as noted below. The `speedup` install extra is now obsolete,
    and has been removed.

#### Internal

  * The `fuzzywuzzy` string matcher was vendored into the project from a point
    in its development history before the `python-Levenshtein` dependency,
    and its corresponding GPL encumbrance, was introduced.

#### Administrative

  * Project default branch migrated to `main` from `master`.

  * Standard development Python version bumped to 3.10.

  * Standard development Sphinx version bumped to 4.3.1.

  * Active support for Python 3.11 added.


### [2.1] - 2021-04-14

#### Added

  * Python 3.10 support was officially added.

#### Changed

  * The User-Agent header sent by `Inventory` when making an HTTP(S) request
    now identifies `sphobjinv` and its version (anticipate no API or
    behavior change).

  * An extraneous newline was removed before tables printed in the
    'suggest' CLI mode (cosmetic change).

#### Fixed

  * Previously, `sphobjinv.Inventory` would ignore entries in `objects.inv`
    that contained spaces within `name`
    (see [#181](bskinn/sphobjinv#181));
    this is now fixed.

#### Removed

  * Python 3.5 is no longer supported.

  * The relaxation of the integer constraint on the `priority` field
    introduced in v2.1b1 has been *reverted*, as `objects.inv` data lines
    with such non-integer `priority` values are skipped by Sphinx.

#### Internal

  * Where possible, string interpolation has been refactored to use
    f-strings.

  * A 'speedup' `extras_require` entry has been added to allow simple installation
    of `python-Levenshtein` for Linux and MacOS platforms, as
    `pip install sphobjinv[speedup]`. This extra does nothing on Windows, since
    compilation machinery is anticipated not to be available for most users.

  * `objects_mkdoc_zlib0.inv`, which was compressed at `zlib` level 0,
    has been added to the test resources directory.

  * This file had to be flagged as binary in `.gitattributes` in order to avoid
      git EOL auto-conversion on Windows.

  * The CLI functionality was refactored from the single `sphobjinv.cmdline` module
    into a dedicated set of `sphobjinv.cli.*` submodules.

  * Some internal `type(...) is ...` checks were replaced with `isinstance(...)`

#### Testing

  * Added *significant* body of new tests to confirm inventory compatibility
    with both `sphobjinv` and Sphinx itself.

    * Consistency checks added both for data within `sphobjinv.Inventory` instances
      **AND** as emitted from `sphinx.ext.inventory.InventoryFile.load()`.

    * The tests in `tests/test_valid_objects.py` strive to bracket as precisely
      as possible what content is allowed on an `objects.inv` data line,
      in addition to providing guidance on what is allowable, but discouraged.

      `docs/source/syntax.rst` was also edited to reflect this guidance.

  * Additional tests have been added to probe corner cases involving Windows EOLs.

  * A test was added to ensure that the schema in `sphobjinv.schema` is in fact
    a valid JSON schema.

  * Multiple asserts/checks per test method have been converted to use
    `pytest-check` instead of `pytest-subtests`, due to some inconsistent
    behavior with the latter.

  * `tox` environments and dependencies were updated, and some flake8 configuration
    was adjusted.

#### Administrative

  * Standard development Python version bumped to 3.9.

  * Standard development Sphinx version bumped to 3.5.0.

  * Added `[skip ci]` flag in commit text for skipping Github Actions CI.

  * RtD upgraded to use Python 3.8.

  * Added 'radio Sphinx' logo to RtD docs.

  * Drafted `CONTRIBUTING.md` and added PR & issue templates.

  * Tranferred most project metadata from `setup.py` to `setup.cfg`.


### [2.1b1] - 2020-11-13

#### Fixed

  * Equality tests on Inventory and DataObjStr/DataObjBytes instances
    now work correctly.

  * Non-integer and non-numeric values for `priority` are now accepted
    during `Inventory` instantiation, consistent with what is allowed
    by `DataObjStr` and `DataObjBytes` instantiation.


### [2.1a2] - 2020-10-27

#### Added

  * When an inventory is retrieved via CLI from a remote URL with `-u`,
    the resolved location of the inventory is included in generated JSON
    at `json_dict.metadata.url`.

#### Changed

  * CLI logging messages are now emitted to stderr instead of stdout.


### [2.1a1] - 2020-10-26

#### Added

  * A hyphen can now be passed as the CLI input and/or output file name
    to instruct sphobjinv to use stdin and/or stdout, respectively.

  * The `fileops` and `inventory` APIs are now tested to work with
    both strings and `pathlib.Path` objects, where they interact
    with the filesystem.

#### Refactored

  * Patterns in regular expressions are now defined with raw strings
    to improve readability.
jperkin pushed a commit that referenced this issue May 25, 2023
Changelog (taken from https://github.com/eudev-project/eudev/releases/tag/v3.2.12):

Release 3.2.12

What's Changed

    rules/50-udev-default.rules: add PTP entry for Hyper-V/Azure by @dermotbradley in #218
    Add the BUILD instructions for Gentoo by @lu-zero in #224
    Fix warnings by @bbonev in #222
    udev: add udev_dir as synonym of udevdir by @oreo639 in #225
    build: Remove dead g-i-r configuration by @akiernan in #231
    Hwdb.7 by @bbonev in #221
    Precompiled hwdb by @bbonev in #223
    Merge suitable rules changes from systemd by @bbonev in #220
    Merge hwdb from systemd by @bbonev in #219
    Fix problems detected by fortified builds by @bbonev in #232
    Avoid warning on 32bit by @bbonev in #233
    Systemd PR 24353 by @bbonev in #239
    Do not free a static string by @bbonev in #238
    man: udev.7, mention /usr/lib with split-usr by @omnivagant in #246
    Missing tools by @bbonev in #240
    Fix compile-time issue on very old kernels by @cockroach in #247
jperkin pushed a commit that referenced this issue May 25, 2023
What's Changed

    Guard PxManager test with pacrunner-duktape option by @janbrummer in #215
    Fix build on NetBSD. by @0-wiz-0 in #220
    Install libpxbackend into pkglibdir by @amigadave in #223
    Move glib2 inclusion out of c++ protection. by @0-wiz-0 in #227
    Replace libsoup with glib socket service functions by @janbrummer in #228
    Enforce online state for tests by @janbrummer in #229
    Use glib-object header instead of gio by @janbrummer in #230
    Fix libproxy rpath by @janbrummer in #231
    Draft: Improve ignore checks by @janbrummer in #232
    Release 0.5.1 by @janbrummer in #233
jperkin pushed a commit that referenced this issue Jun 5, 2023
# shinyjs 2.1.0 (2021-12-20)
- New feature: you can now reset all inputs on the page by calling
  `reset()` with no arguments (#222)
- New feature: Add a `removeEvent()` function which removes events
  added to HTML elements with `onclick()` or `onevent()` (#244)
- Fix bug: `disable()` did not work on nested download buttons (#223)
- Fix bug: Don't automatically namespace ID arguments in custom
  extendShinyjs functions (#229)
- Fix bug: ensure that `extendShinyjs()` functions don't overwrite
  native {shinyjs} functions (#230)
jperkin pushed a commit that referenced this issue Jun 8, 2023
New features
 - Considerably refined the app packaging strategy, introducing support for more
   architectures and other advancements 📦 (see #246 for additional details)
 - Added button to clear all the current search filters quickly in inspect page
 - Added Swedish translation 🇸🇪 (#213)

Improvements
 - Updated most of the existing translations to v1.2:
     - German 🇩🇪 (#191)
     - Spanish 🇪🇸 (#203)
     - Persian 🇮🇷 (#193)
     - Korean 🇰🇷 (#205)
     - Polish 🇵🇱 (#244)
     - Romanian 🇷🇴 (#241)
     - Russian 🇷🇺 (#187)
     - Turkish 🇹🇷 (#192)
     - Ukrainian 🇺🇦 (#216)
     - Chinese 🇨🇳 (#214)
 - Renamed "Administrative entity" to "Autonomous System name" to avoid
   confusion
 - Improved filter columns relative width to avoid the "Application protocol"
   label being cut when displayed in Swedish
 - Footer URLs have been updated to include links to Sniffnet's official website
   and GitHub Sponsor page
 - Updated docs including installation instruction for Arch Linux (#185)
 - Minor improvements to packets and bytes number format
 - Minor improvements to:
     - code readability (#248)
     - docs (#235)

Fixes
 - Various issues have been fixed by the refined packaging strategy (#199, #220,
   #223, #224, #225, #242)
 - Solved a minor problem that caused flags to be slightly misaligned in inspect
   page table
jperkin pushed a commit that referenced this issue Jun 11, 2023
# gargle 1.4.0

## Google Compute Engine

* `credentials_gce(scopes = NULL)` is now equivalent to
  `credentials_gce(scopes =
  "https://www.googleapis.com/auth/cloud-platform")`, i.e. there's an
  even stronger current towards the recommended "cloud-platform"
  scope.

* `credentials_gce(scopes =)` now includes those `scopes` in its
  request to the metadata server for an access token (#216). Note that
  the scopes for a GCE access token are generally pre-determined for
  the instance and its associated service account at creation/launch
  time and these requested `scopes` will have no effect. But this
  seems to do no harm and it is possible that there are contexts where
  this is useful.

* `credentials_gce()` now emits considerably more information when the
  `"gargle_verbosity"` option is set to `"debug"`. For example, it
  reports mismatches between requested scopes and instance scopes and
  between requested scopes and the access token's actual scopes.

* `credentials_gce()` stores the actual scopes of the received access
  token, which can differ from the requested scopes. This is also
  noted when the `"gargle_verbosity"` option is set to `"debug"`.

* The `GceToken` R6 class gains a better `$print()` method that is
  more similar to gargle's treatment of tokens obtained with other
  flows.

## Behaviour in a cloud/server context

* gargle is better able to detect when it's running on Posit Workbench
  or RStudio Server, e.g., in a subprocess.

* `gargle_oauth_client_type()` is a new function that returns either
"installed" or "web".  It returns the value of the new global option
by the same name (`"gargle_oauth_client_type"`), if defined.  If the
option is not defined, returns "web" on RStudio Server, Posit
Workbench, Posit Cloud, or Google Colaboratory and "installed"
otherwise.  In the context of out-of-band (OOB) auth, an "installed"
client type leads to the conventional OOB flow (only available for GCP
projects in testing mode) and a "web" client leads to the new
pseudo-OOB flow.  The option and accessor have been added to cover
contexts other than those mentioned above where it is helpful to
request a "web" client.

* `credentials_user_oauth2()` now works in Google Colaboratory (#140).

## Everything else

* gargle now elicits user input via `readline()`, instead of via
  `utils::menu()`, which is favorable for interacting with the user in
  a Jupyter notebook (#242).

* The roxygen templating functions that wrapper packages can use to
generate standardized documentation around auth have been updated to
reflect gargle's pivot from OAuth "app" to "client".  Changes of note:

  - `PREFIX_auth_configure_description()` crosslinks to `PREFIX_oauth_client()`
    now, not `PREFIX_oauth_app()`. So this assumes the package has indeed
    introduced the `PREFIX_oauth_client()` function (and, presumably, has
    deprecated `PREFIX_oauth_app()`).
  - `PREFIX_auth_configure_params()` gains `client` argument.
  - `PREFIX_auth_configure_params()` deprecates the `app` argument and uses a
    lifecycle badge. It is assumed that the badge SVG is present, which can be
    achieved with `usethis::use_lifecycle()`.
  - `PREFIX_auth_configure_params()` crosslinks to
    `gargle::gargle_oauth_client_from_json()`. The wrapper package therefore
    needs to state a minimum version for gargle, e.g. `gargle (>= 1.3.0)` (or
    higher).

* `credentials_byo_oauth2()` works now for (variations of) service
  account tokens, as intended, not just for user tokens (#250). It
  also emits more information about scopes when the
  `"gargle_verbosity"` option is set to `"debug"`.

# gargle 1.3.0

## (Partial) deprecation out-of-band (OOB) auth flow

On February 16, 2022, Google announced the gradual deprecation of the
out-of-band (OOB) OAuth flow.  OOB **still works** if the OAuth client
is associated with a GCP project that is in testing mode and this is
not going away.  But OOB is no longer supported for projects in
production mode.  To be more accurate, some production-mode projects
have gotten an extension to permit the use of OOB auth for a bit
longer, but that's just a temporary reprieve.

The typical user who will (eventually) be impacted is:

* Using R via RStudio Server, Posit Workbench, or Posit Cloud.
* Using tidyverse packages such as googledrive, googlesheets4, or bigrquery.
* Relying on the built-in OAuth client. Importantly, this client is associated
  with a GCP project that is in production mode.

The phased deprecation of OOB is nearly complete and we expect
conventional OOB to stop working with the built-in tidyverse OAuth
client on February 1, 2023, at the latest.

**In preparation for this, gargle has gained support for a new flow,
which we call pseudo-OOB (in contrast to conventional OOB)**.  The
pseudo-OOB flow is triggered when `use_oob = TRUE` (an existing
convention in gargle and gargle-using packages) and the configured
OAuth client is of "Web application" type.  The
gargle/googledrive/googlesheets4/bigrquery packages should now default
to a "Web application" client on RStudio Server, Posit Workbench and
Posit Cloud, leading the user through the pseudo-OOB flow.  Other than
needing to re-auth once, affected users should still find that things
"just work".

Read the `vignette("auth-from-web")` for more.

## gargle-specific notion of OAuth client

`gargle_oauth_client()` is a new constructor for an S3 class by the same name.
There are two motivations:

  - To adjust to Google's deprecation of conventional OOB and to support
    gargle's new pseudo-OOB flow, it is helpful for gargle to know whether an
    OAuth client ID is of type "Web application" or "Desktop app". That means we
    need a Google- and gargle-specific notion of an OAuth client, so we can
    introduce a `type` field.
  - A transition from httr to httr2 is on the horizon, so it makes sense to
    look more toward `httr2:oauth_client()` than to `httr::oauth_app()`.
    gargle's vocabulary is generally shifting towards "client" and away from
    "app".

`oauth_app_from_json()` has therefore been (soft) deprecated, in favor
of a new function `gargle_oauth_client_from_json()`, which is the
preferred way to instantiate an OAuth client, since the downloaded
JSON conveys the client type and redirect URI(s).  As a bridging
measure, `gargle_oauth_client` currently inherits from httr's
`oauth_app`, but this probably won't be true in the long-term.

`gargle_client(type =)` replaces `gargle_app()`.

## Google Compute Engine and Google Kubernetes Engine

`credentials_gce()` no longer asks the user about initiating an OAuth
cache, which is not relevant to that flow (#221).

`gce_instance_service_accounts()` is a newly exported utility that
exposes the service accounts available from the metadata server for
the current instance (#234).

The global option `"gargle.gce.timeout"` is newly documented in
`credentials_gce()`.  This controls the timeout, in seconds, for
requests to the metadata server.  The default value (or strategy) for
setting this should often suffice, but the option exists for those
with an empirical need to increase the timeout (#186, #195).

`vignette("non-interactive-auth")` has a new section "Workload
Identity on Google Kubernetes Engine (GKE)" that explains how gargle
supports the use of workload identity for applications running on
GKE. This is the recommended method of auth in R code running on GKE
that needs to access other Google Cloud services, such as the BigQuery
API (#197, #223, @MarkEdmondson1234).

## Credential function registry

It's gotten a bit easier to work with the credential registry.
The primary motivation is that, for example, on Google Compute Engine, you might
actually want to suppress auth with the default service account and auth as a
normal user instead.
This is especially likely to come up with gmailr / the Gmail API.

* The credential-fetcher `credentials_byo_oauth2()` has been moved to the very
  beginning of the default registry. The logic is that a user who has specified
  a non-`NULL` value of `token` must mean business and does not want automagic
  auth methods like ADC or GCE to be tried before using their `token`
  (#187, #225).

* The `...` in `cred_funs_all()` are now
  [dynamic dots](https://rlang.r-lib.org/reference/dyn-dots.html) (#224).

* Every registered credential function must have a unique name now.
  This is newly enforced by `cred_funs_add()` and `cred_funs_set()` (#224).

* `cred_funs_list_default()` is a new function that returns gargle's default
  list of credential functions (#226).

* `cred_funs_add(cred_fun = NULL)` is now available to remove a credential
  function from the registry (#224).

* `with_cred_funs()` and `local_cred_funs()` are new helpers for making narrowly
  scoped changes to the registry (#226).

* The `ls` argument of `cred_funs_set()` has been renamed to `funs` (#226).

* In general, credential registry functions now return the current registry,
  invisibly (#224).

# gargle 1.2.1

* Help files below `man/` have been re-generated, so that they give
  rise to valid HTML5. (This is the impetus for this release, to keep
  the package safely on CRAN.)

* We have switched to newer oauth2.googleapis.com-based OAuth2 URIs,
  moving away from the accounts.google.com and googleapis.com/oauth2
  equivalents.

* `credentials_gce()` no longer validates the requested scopes against
instance scopes.  In practice, it's easy for this check to be more of
a nuisance than a help (#161, #185 @craigcitro).

* `request_retry()` retries for an expanded set of HTTP codes: 408,
  429, 500, 502, 503. Previously, retries were limited to 429 (#169).

## Dependency changes

* The minimum versions of rlang and testthat have been bumped. The
  motivation is to exploit and adapt to the changes to the display of
  error messages.
jperkin pushed a commit that referenced this issue Jun 22, 2023
2.6.2 (2023-06-13)

What's Changed

* Don't allow event loop to be interrupted at any time. by @ioquatix in #223
jperkin pushed a commit that referenced this issue Aug 8, 2023
What's Changed
 - fix typo in config example variable by @hyperpuncher in #209
 - Add Void Linux as install option by @f1nbar in #210
 - Implement timeout mechanism for getting authentication token by
   @aome510 in #212
 - Fix a typo for homebrew install instructions by @toh995 in #216
 - Add tracks_playback_limit config option by @aome510 in #219
 - Use ttl cache instead of lru by @aome510 in #220
 - Create app.toml with default values if it doesn't exist by @cobbinma in #221
 - Tokyonight Theme 🎨 by @cobbinma in #225
 - Improve queue popup by @m-torhan in #226
 - fix: constant module name typo by @nuugen in #227
 - Allow removing a keybind by @Kuba314 in #223
 - move items in a playlist by @cobbinma in #224
 - Improve TTL caching and handling by @aome510 in #230
 - Playlist CLI Editing - New, Delete, Import, Fork, Update by
   @justjokiing in #222
jperkin pushed a commit that referenced this issue Oct 27, 2023
Changes in 3.4.0.0 [Andreas Abel, 2023-06-20]
* New wrappers to lex strict Text: strict-text, posn-strict-text,
  monad-strict-text and monadUserState-strict-text (PR #240). These
  complement the existing wrappers for String and ByteString.
* Tested with GHC 7.0 - 9.6.2.

Changes in 3.3.0.0 [Andreas Abel, 2023-05-25]
* Add an Ord instance to AlexPosn (Issue #233). This breaks developments
  that define their own (orphan) instance Ord AlexPosn. If this is the
  derived stock instance, the fix is to delete the orphan instance and
  require build-tool-depends: alex:alex >= 3.3.0.0.
* Switch to Haskell PVP versioning with four digits.
* Tested with GHC 7.0 - 9.6.1.

Change in 3.2.7.4 [Andreas Abel, 2023-05-02]
* The user-supplied "epilogue" Haskell code is now put last in the
  generated file. This enables use of Template Haskell in the
  epilogue. (Issue #125.)
* Tested with GHC 7.0 - 9.6.1.

Change in 3.2.7.3 [Andreas Abel, 2023-04-14]
* Amend last change (3.2.7.2) so that Alex-generated code does not need
  LANGUAGE PatternGuards.
* Tested with GHC 7.0 - 9.6.1.

Change in 3.2.7.2 [Andreas Abel, 2023-04-03]
* Fix bug with out-of-bound access to alex_check array. (Surfaced with
  GHC's JS backend, fixed by Sylvain Henry in PR #223.)
* Tested with GHC 7.0 - 9.6.1.
jperkin pushed a commit that referenced this issue Oct 31, 2023
texmath (0.12.8.4)
  * TeX reader: ignore `\allowbreak` (#230).
  * TeX reader: handle `*{5}{lr}` in array column specifier (#229).
  * OMML reader: allow `m:e` to be missing in `m:nary` (#228).
    Technically this is not allowed, according to the spec, but
    Word and LibreOffice seem to tolerate it.

texmath (0.12.8.3)
  * OMML writer: use "on" and "off" instead of "1" and "0" for
    m:CT_OnOff type.  It is said that "1" and "0" work in Word
    but not Powerpoint.

texmath (0.12.8.2)
  * Typst writer: use binom instead of a fraction (jgm/pandoc#9063).

texmath (0.12.8.1)
  * Typst writer: several fixes (#223, Lleu Yang).
    + Escape quotes (") in inQuotes
    + Accent `\8407` corresponds to `arrow()`
    + Write `#none`'s for matrices with blanks at the beginning of a row

texmath (0.12.8)
  * Expose Text.TeXMath.Shared [API change]
  * Typst writer: Fix bug where 's' turned into 'space' (#219).
  * Typst writer: Fix handling of overline (#214).
  * Typst writer: Fix underbrace (#217).
  * Typst writer: Improve some accents (#216).
  * TeX writer: don't include \ on last line of matrix.
  * TeX writer: Remove escaping of spaces inside \text{}.
    It isn't needed, and it causes problems in MathJax rendering.
  * TeX reader: allow empty matrices.
  * MathML writer: Fix rendering of vectors (#218).
  * Depend on external typst-symbols package.

texmath (0.12.7.1)
 * Typst writer:
   + Improve under/overbrace/bracket/line.
   + Fix bugs with super/subscript grouping (#212).
   + Fix case where super/subscript is on an empty element,
     by inserting a zws.

texmath (0.12.7)
  * Add typst writer. New module: Text.TeXMath.Writers.Typst.
  * TeX reader: Support multilined environment. Closes #210.
jperkin pushed a commit that referenced this issue Nov 6, 2023
## BumpVer 2023.1129

- Fix [#224][gh_i224]: Add `--environ` so it emits `0` values. Depricate `-e/--env`.
- Add [#223][gh_pr223]: Add support for `.bumpver.toml`
jperkin pushed a commit that referenced this issue Dec 18, 2023
    c4befd0 Merge pull request #223 from danielgtaylor/dependabot/go_modules/golang.org/x/net-0.17.0
    2db8c10 Merge pull request #225 from exoscale/cached-transport
    c0f180c Merge pull request #226 from danielgtaylor/dependabot/go_modules/golang.org/x/image-0.10.0
    b75a307 Merge pull request #227 from cbliard/patch-1
    a92c7db Merge pull request #229 from danielgtaylor/redirect-url
    21a9017 Merge pull request #233 from danielgtaylor/hide-secrets-input
    d16bdd7 Merge pull request #234 from danielgtaylor/clear-auth-cache
    0a1f26c Update docs to use go install instead of go get
    00b34d8 chore(deps): bump golang.org/x/image from 0.5.0 to 0.10.0
    8135dc8 chore(deps): bump golang.org/x/net from 0.7.0 to 0.17.0
    ac559b9 chore: add configurable redirect_url, preserve default value
    97c3636 feat: add command to clear auth token cache
    13fe1aa fix(api): Do not cache server responses when refreshing API defs
    1ecdb09 fix: hide secret input during API config, fixes #232
    9a25266 fix: use better url parsing
jperkin pushed a commit that referenced this issue Jan 25, 2024
## Version 0.5.1

Changes:

 * LaTeX math extension (`MD_FLAG_LATEXMATHSPANS`) now requires that opener
   mark is not immediately preceded with alpha-numeric character and similarly
   that closer mark is not immediately followed with alpha-numeric character.

   So for example `foo$ x + y = z $` is not recognized as LaTeX equation
   anymore because there is no space between `foo` and the opening `$`.

 * Table extension (`MD_FLAG_TABLES`) now recognizes only tables with no more
   than 128 columns. This limit has been imposed to prevent a pathological
   case of quadratic output size explosion which could be used as DoS attack
   vector.

 * We are now more strict with `MD_FLAG_PERMISSIVExxxAUTOLINKS` family of
   extensions with respect to non-alphanumeric characters, with the aim to
   mitigate false positive detections.

   Only relatively few selected non-alphanumeric are now allowed in permissive
   e-mail auto-links (`MD_FLAG_PERMISSIVEEMAILAUTOLINKS`):
     - `.`, `-`, `_`, `+` in user name part of e-mail address; and
     - `.`, `-`, `_` in host part of the e-mail address.

   Similarly for URL and e-mail auto-links (`MD_FLAG_PERMISSIVEURLAUTOLINKS` and
   `MD_FLAG_PERMISSIVEWWWAUTOLINKS`):
     - `.`, `-`, `_` in host part of the URL;
     - `/`, `.`, `-`, `_` in path part of the URL;
     - `&`, `.`, `-`, `+`, `_`, `=`, `(`, `)` in the query part of the URL
       (additionally, if present, `(` and `)` must form balanced pairs); and
     - `.`, `-`, `+`, `_` in the fragment part of the URL.

   Furthermore these characters (with some exceptions like where they serve as
   delimiter characters, e.g. `/` for paths) are generally accepted only when
   an alphanumeric character both precedes and follows them (i.e. these cannot
   be "stacked" together).

Fixes:

 * Fix several bugs where we haven't properly respected already resolved spans
   of higher precedence level in handling of permissive auto-links extensions
   (family of `MD_FLAG_PERMISSIVExxxAUTOLINKS` flags), LaTeX math extension
   (`MD_FLAG_LATEXMATHSPANS`) and wiki-links extension (`MD_FLAG_WIKILINKS`)
   of the form `[[label|text]]` (with pipe `|`). In some complex cases this
   could lead to invalid internal parser state and memory corruption.

   Identified with [OSS-Fuzz](https://github.com/google/oss-fuzz).

 * [#222](mity/md4c#222):
   Fix strike-through extension (`MD_FLAG_STRIKETHROUGH`) which did not respect
   same rules for pairing opener and closer marks as other emphasis spans.

 * [#223](mity/md4c#223):
   Fix incorrect handling of new-line character just at the beginning and/or
   end of a code span where we were not following CommonMark specification
   requirements correctly.


## Version 0.5.0

Changes:

 * Changes mandated by CommonMark specification 0.30.

   Actually there are only very minor changes to recognition of HTML blocks:

   - The tag `<textarea>` now triggers HTML block (of type 1 as per the
     specification).

   - HTML declaration (HTML block type 4) is not required to begin with an
     upper-case ASCII character after the `<!`. Any ASCII character is now
     allowed. Also it now doesn't require a whitespace before the closing `>`.

   Other than that, the newest specification mainly improves test coverage and
   clarifies its wording in some cases, without affecting the implementation.

   Refer to [CommonMark
   0.30 notes](https://github.com/commonmark/commonmark-spec/releases/tag/0.30)
   for more info.

 * Make Unicode-specific code compliant to Unicode 15.1.

 * Update list of entities known to the HTML renderer from
   https://html.spec.whatwg.org/entities.json.

New Features:

 * Add extension allowing to treat all soft break as hard ones. It has to be
   explicitly enabled with `MD_FLAG_HARD_SOFT_BREAKS`.

   Contributed by [l-m](https://github.com/l1mey112).

 * Structure `MD_SPAN_A_DETAIL` now has a new member `is_autolink`.

   Contributed by [Jens Alfke](https://github.com/snej).

 * `md2html` utility now supports command line options `--html-title` and
   `--html-css`.

   Contributed by [Andreas Baumann](https://github.com/andreasbaumann).

Fixes:

 * [#163](mity/md4c#163):
   Make HTML renderer to emit `'\n'` after the root tag when in the XHTML mode.

 * [#165](mity/md4c#165):
   Make HTML renderer not to percent-encode `'~'` in URLs. Although it does
   work, it's not needed, and it can actually be confusing with URLs such as
   `http://www.example.com/~johndoe/`.

 * [#167](mity/md4c#167),
   [#168](mity/md4c#168):
   Fix multiple instances of various buffer overflow bugs, found mostly using
   a fuzz testing. Contributed by [dtldarek](https://github.com/dtldarek) and
   [Thierry Coppey](https://github.com/TCKnet).

 * [#169](mity/md4c#169):
   Table underline now does not require 3 characters per table column anymore.
   One dash (optionally with a leading or tailing `:` appended or prepended)
   is now sufficient. This improves compatibility with the GFM.

 * [#172](mity/md4c#172):
   Fix quadratic time behavior caused by unnecessary lookup for link reference
   definition even if the potential label contains nested brackets.

 * [#173](mity/md4c#173),
   [#174](mity/md4c#174),
   [#212](mity/md4c#212),
   [#213](mity/md4c#213):
   Multiple bugs identified with [OSS-Fuzz](https://github.com/google/oss-fuzz)
   were fixed.

 * [#190](mity/md4c#190),
   [#200](mity/md4c#200),
   [#201](mity/md4c#201):
   Multiple fixes of incorrect interactions of indented code block with a
   preceding block.

 * [#202](mity/md4c#202):
   We were not correctly calling `enter_block()` and `leave_block()` callbacks
   if multiple HTML blocks followed one after another; instead previously
   such blocks were merged into one.

   (This may likely impact only applications interested in Markdown's AST,
   and not just converting Markdown to other formats like HTML.)

 * [#210](mity/md4c#210):
   The `md2html` utility now handles nested images with optional titles
   correctly.

 * [#214](mity/md4c#214):
   Tags `<h2>` ... `<h6>` incorrectly did not trigger HTML block.

 * [#215](mity/md4c#215):
   The parser incorrectly did not accept optional tabs after setext header
   underline.

 * [#217](mity/md4c#217):
   The parser incorrectly resolved emphasis in some situations, if the emphasis
   marks were enclosed by punctuation characters.
jperkin pushed a commit that referenced this issue Feb 13, 2024
Changes:

 * Changes mandated by CommonMark specification 0.31:

   - The specification expands set of Unicode characters seen by Markdown
     parser as a punctuation. Namely all Unicode general categories P
     (punctuation) and S (symbols) are now seen as such.

   - The definition of HTML comment has been changed so that `<!-->` and
     `<!--->` are also recognized as HTML comments.

   - HTML tags recognized as HTML block starting condition of type 4 has been
     updated, namely a tag `<source>` has been removed, whereas `<search>`
     added.

   Refer to [CommonMark 0.31.2](https://spec.commonmark.org/0.31.2/) for full
   specification.

Fixes:

 - [#230](mity/md4c#230):
   The fix [#223](mity/md4c#223) in 0.5.1 release
   was incomplete and one corner case remained unfixed. This is now addressed.

 - [#231](mity/md4c#231):
   `md2html --full-html` now emits `<meta  charset="UTF-8">` in the HTML header.
jperkin pushed a commit that referenced this issue Apr 3, 2024
Features / Improvements ✨
    Links should be "openable" (#43)
    Add support for previewing images in room scrollback (#108)
    Enable sending strikethrough text (#141)
    Support composing messages in an external editor (#155)
    Add support for logging in with SSO (#160)
    Add new command for logging out of iamb session (#162)
    Support custom sorting for room and user lists (#170)
    feat: desktop file for GUI environment launchers (#178)
    Add a new :chats window that lists both DMs and Rooms (#184)
    Add support for desktop notifications (#192)
    Support coloring entire message with the user color (#193)
    Indicate and sort on rooms with unread messages (#205)
    Support following the .well-known entries for a username's domain (#209)
    Add support for threads (#216)
    Add support for custom key macros (#217)
    Support displaying shortcodes instead of Emojis in messages (#222)
    Support configuring user gutter width (#223)
    Enable autolinking when rendering Markdown (#226)
    Support notifications via terminal bell (#227)
    Support loading a TOML configuration (#229)
    Add commands for importing and exporting room keys (#233)

Documentation / README updates 📚
    Fix example config (#140)
    Add more documentation (#166)
    Update README.md to add openSUSE Tumbleweed (#191)
    Add snap install instructions (#210)
    Add example of mapping "V" to toggle message selection mode (#195)
    Update manual pages to use mdoc(7) and list commands (#230)
    Add an icon for iamb (#232)

Bug Fixes 🐞
    Fix not showing display names in already synced rooms (#171)
    Fix image preview offset (#179)
    Update to ratatui-image@0.4.3 to use native sixel lib (#181)
    Fix truncation/padding for non-ASCII sender names (#182)
    Fix crash on small image preview (#198)
    Download rooms keys from backups if they exist (#211)
    Ignore key releases on platforms that support it (#220)
    Provide better error message for M_UNKNOWN_TOKEN (#101)
    Fix entering thread view when there's no messages yet (#224)
    Fix image previews in replies (#225)
    Reset message bar when ! is passed with :cancel (#231)
    Wait to log in before starting background tasks (#234)

Performance ⏱️
    Reduce CPU usage by instead fetching read receipts after related sync events (#168)
    Load receipts for room before acquiring lock (#213)

Building / Housekeeping 🧹
    Update Cargo.lock file (#157)
    Update modalkit for newer ratatui and crossterm
    Fix CI workflow (#164)
    Use mozilla-actions/sccache-action for caching builds (#169)
    Enable direnv for Nix flakes (#183)
    Update to matrix-sdk@0.7.1 (#200)
    Rename Nix flake build input from pkgconfig to pkg-config (#203)
    Update modalkit dependencies (#204)
    Move LTO into its own "release-lto" profile (#207)
    Fix Nix flake hashes (#206)
    Pull in modalkit repository with a Cargo.lock (#208)
    Nix flake updates (#214)
    Update to ratatui-image@0.8.1 (#215)
    Support linking against system OpenSSL (#218)
    GitHub workflow should use --locked to avoid broken Cargo.lock (#219)
    Fix odd Windows-only compile error (#221)
jperkin pushed a commit that referenced this issue Jun 10, 2024
2.4.0 (2024-06-08)

Enhancements

* @ag4a fix the rails_compat to work with Rails 7 [PR #246]

Bug Fixes

* @bastelfreak adding license to the gemspec [PR #223]
* @olleolleolle dropping unused gemspec directives [PR #233]
jperkin pushed a commit that referenced this issue Jul 20, 2024
tox: add pip==24.1b1 by @woodruffw in #213
tox: pip241b2 by @woodruffw in #216
tox: pip==24.1 by @woodruffw in #218
tox: pip==24.1.1 by @woodruffw in #220
tox: pip==24.1.2 by @woodruffw in #222
meta: drop support for Python 3.7 by @woodruffw in #223
prep 0.0.34 by @woodruffw in #224
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