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

New package: kapacitor-1.5.2 #201

Closed
wants to merge 1 commit into from

Conversation

hww3
Copy link

@hww3 hww3 commented May 23, 2019

Kapacitor is an open-source framework for processing, monitoring, and alerting
on time-series data.

Tested on SmartOS and Darwin.

Kapacitor is an open-source framework for processing, monitoring, and alerting
on time-series data.
@jperkin jperkin closed this in 70fa9b3 Sep 3, 2019
jperkin pushed a commit that referenced this pull request 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 pull request Jan 3, 2020
Version 3.1.1.1
* Fix for GHCJS. #431

Version 3.1.1.0
* A new API: gracefulClose. #417
* touchSocket, unsafeFdSocket: Allow direct access to a socket's file
  descriptor while providing tools to prevent it from being garbage
  collected. This also deprecated fdSocket in favor of unsafeFdSocket
  and withFdSocket. #423
* socketToFd: Duplicates a socket as a file desriptor and closes the
  source socket. #424

Version 3.1.0.1
* getAddrInfo: raise exception if no AddrInfo returned. #410
* Avoid catching SomeException. #411

Version 3.1.0.0
* Making GC of socket safer. #399
* Deprecating fdSocket. Use withFdSocket instead to ensure that
  sockets are GCed in proper time. #399

Version 3.0.1.1
* Fix blocking if_nametoindex errors on Windows #391

Version 3.0.1.0
* Added getSocketType :: Socket -> IO SocketType. #372
* Correcting manual and brushing up test cases #375
* Fixed longstanded bug in getContents on mac #375
* Fixing regression: set correct sockaddr length for abstract
  addresses for Linux. #374

Version 3.0.0.1
* Fixed a bug in connect where exceptions were not thrown #368

Version 3.0.0.0
* Breaking change: the Network and Network.BSD are
  removed. Network.BSD is provided a new package: network-bsd.
* Breaking change: the signatures are changed:

    old fdSocket :: Socket -> CInt
    new fdSocket :: Socket -> IO CInt

    old mkSocket :: CInt -> Family -> SocketType -> ProtocolNumber -> SocketStatus -> IO Socket
    new mkSocket :: CInt -> IO Socket

* Breaking change: the deprecated APIs are removed: send, sendTo,
  recv, recvFrom, recvLen, htonl, ntohl, inet_addr, int_ntoa,
  bindSocket, sClose, SocketStatus, isConnected, isBound, isListening,
  isReadable, isWritable, sIsConnected, sIsBound, sIsListening,
  sIsReadable, sIsWritable, aNY_PORT, iNADDR_ANY, iN6ADDR_ANY,
  sOMAXCONN, sOL_SOCKET, sCM_RIGHTS, packSocketType, getPeerCred.
* Breaking change: SockAddrCan is removed from SockAddr.
* Socket addresses are extendable with Network.Socket.Address.
* "socket" is now asynchronous-exception-safe. #336
* "recvFrom" returns (0, addr) instead of throwing an error on EOF. #360
* All APIs are available on any platforms.
* Build system is simplified.
* Bug fixes.

Version 2.8.0.1
* Eensuring that accept returns a correct sockaddr for unix
  domain. #400
* Avoid out of bounds writes in pokeSockAddr. #400

Version 2.8.0.0
* Breaking change: PortNumber originally contained Word16 in network
  byte order and used "deriving Ord". This results in strange behavior
  on the Ord instance. Now PortNumber holds Word16 in host byte
  order. #347
* Breaking change: stopping the export of the PortNum constructor in
  PortNumber.
* Use bytestring == 0.10.* only.
* Use base >= 4.7 && < 5.

Version 2.7.0.2
* Removing withMVar to avoid the deadlock between "accept" and "close"
  #330
* "close" does not throw exceptions. A new API: "close'" throws
  exceptions when necessary. #337
* Fixing the hang of lazy sendAll. #340
* Installing NetDef.h (#334) #334

Version 2.7.0.1
* A new API: socketPortSafe. #319
* Fixing a drain bug of sendAll. #320
* Porting the new CALLCONV convention from master. #313
* Withdrawing the deprecations of packFamily and unpackFamily. #324

Version 2.7.0.0
* Obsoleting the Network module.
* Obsoleting the Network.BSD module.
* Obsoleting APIs: MkSocket, htonl, ntohl, getPeerCred, getPeerEid,
  send, sendTo, recv, recvFrom, recvLen, inet_addr, inet_ntoa,
  isConnected, isBound, isListening, isReadable, isWritable, aNY_PORT,
  iNADDR_ANY, iN6ADDR_ANY, sOMAXCONN, sOL_SOCKET, sCM_RIGHTS,
  packFamily, unpackFamily, packSocketType
* Breaking change: do not closeFd within sendFd. #271
* Exporting ifNameToIndex and ifIndexToName from Network.Socket.
* New APIs: setCloseOnExecIfNeeded, getCloseOnExec and getNonBlock
* New APIs: isUnixDomainSocketAvailable and getPeerCredential
* socketPair, sendFd and recvFd are exported even on Windows.

Version 2.6.3.5
* Reverting "Do not closeFd within sendFd" #271

Version 2.6.3.4
* Don't touch IPv6Only when running on OpenBSD #227
* Do not closeFd within sendFd #271
* Updating examples and docs.

Version 2.6.3.3
* Adds a function to show the defaultHints without reading their
  undefined fields #291
* Improve exception error messages for getAddrInfo and getNameInfo
  #289

Version 2.6.3.2
* Zero memory of sockaddr_un if abstract socket #220
* Improving error messages #232
* Allow non-blocking file descriptors via setNonBlockIfNeeded #242
* Update config.{guess,sub} to latest version #244
* Rename my_inet_ntoa to avoid symbol conflicts #228
* Test infrastructure improvements #219 #217 #218
* House keeping and cleanup #238 #237

Version 2.6.3.1
* Reverse breaking exception change in Network.Socket.ByteString.recv
  #215

Version 2.6.3.0
* New maintainers: Evan Borden (@eborden) and Kazu Yamamoto
  (@kazu-yamamoto). The maintainer for a long period, Johan Tibell
  (@tibbe) stepped down. Thank you, Johan, for your hard work for a
  long time.
* New APIs: ntohl, htonl,hostAddressToTuple{,6} and
  tupleToHostAddress{,6}. #210
* Added a Read instance for PortNumber. #145
* We only set the IPV6_V6ONLY flag to 0 for stream and datagram socket
  types, as opposed to all of them. This makes it possible to use
  ICMPv6. #180 #181
* Work around GHC bug #12020. Socket errors no longer cause segfaults
  or hangs on Windows. #192
* Various documentation improvements and the deprecated pragmas. #186
  #201 #205 #206 #211
* Various internal improvements. #193 #200

Version 2.6.2.1
* Regenerate configure and HsNetworkConfig.h.in.
* Better detection of CAN sockets.

Version 2.6.2.0
* Add support for TCP_USER_TIMEOUT.
* Don't conditionally export the SockAddr constructors.
* Add isSupportSockAddr to allow checking for supported address types
  at runtime.
jperkin pushed a commit that referenced this pull request Mar 11, 2020
This is a signficant update from 5.2.0; proj has withdrawn one API and
deprecated another.  Packages that have a healthy upstream and are up
to date should be ok, but some will need remedial attention.  I have
held off on this update for quite a long time, but it seems we have
arrived at the problems from some packages' failure to cope with proj
6 being less serious than holding back well-maintained packages from
the improvements.

Add an option "proj-grids", default on, to include the optional grid
files.  These are large, but necessary for many datum transformations.
Upstream's tests fail with them installed, because the test vectors
are computed without them, so tests are forced to fail if grids are
included.

Upstream NEWS, projected to standard NEWS content follows.  (NB: The
6.0.0 content is the most critical to understand.)


6.3.1 Release Notes
-------------------

 Updates
 -------

 o Update the EPSG database to version 9.8.6

 o Database: add mapping for gg10_smv2.mnt and gg10_sbv2.mnt French grids

 o Database: add mapping for TOR27CSv1.GSB


6.3.0 Release Notes
-------------------

 Updates
 -------

 o Database: tune accuracy of Canadian NTv1 file w.r.t NTv2 (#1812)

 o Modify verbosity level of some debug/trace messages (#1811)

 o projinfo: no longer call createBoundCRSToWGS84IfPossible() for WKT1:GDAL
   (#1810)

 o proj_trans: add retry logic to select other transformation if the best one
   fails. (#1809)

 o BoundCRS::identify(): improvements to discard CRS that aren't relevant
   (#1802)

 o Database: update to IGNF v3.1.0 (#1785)

 o Build: Only export symbols if building DLL (#1773)

 o Database: update ESRI entries with ArcGIS Desktop version 10.8.0 database
   (#1762)

 o createOperations(): chain operations whose middle CRSs are not identical but
   have the same datum (#1734)

 o import/export PROJJSON: support a interpolation_crs key to geoid_model
   (#1732)

 o Database: update to EPSG v9.8.4 (#1725)

 o Build: require SQLite 3.11 (#1721)

 o Add support for GEOIDMODEL (#1710)

 o Better filtering based on extent and performance improvements (#1709)


6.2.1 Release Notes
-------------------

 Updates
 -------

 o Update the EPSG database to version 9.8.2


6.2.0 Release Notes
-------------------

 Updates
 -------

 o Introduced PROJJSON, a JSON encoding of WKT2 (#1547)

 o Support CRS instantiation of OGC URN's (#1505)

 o Expose scope and remarks of database objects (#1537)

 o EPSG Database updated to version 9.7.0 (#1558)

 o Added C API function proj_grid_get_info_from_database() (#1494)

 o Added C API function
   proj_operation_factory_context_set_discard_superseded() (#1534)

 o Added C API function proj_context_set_autoclose_database() (#1566)

 o Added C API function proj_create_crs_to_crs_from_pj() (#1567)

 o Added C API function proj_cleanup() (#1569)


6.1.1 Release Notes
-------------------

 Updates
 -------

 o Update EPSG registry to version 9.6.3 (1485)


6.1.0 Release Notes
-------------------

 Updates
 -------

 o Include custom ellipsoid definitions from QGIS (#1337)

 o Add "-k ellipsoid" option to projinfo (#1338)

 o Make cs2cs support 4D coordinates (#1355)

 o WKT2 parser: update to OGC 18-010r6 (#1360 #1366)

 o Update internal version of googletest to v1.8.1 (#1361)

 o Database update: EPSG v9.6.2 (#1462), IGNF v3.0.3, ESRI 10.7.0
   and add operation_version column (#1368)

 o Add proj_normalize_for_visualization() that attempts to apply axis
   ordering as used by most GIS applications and PROJ <6 (#1387)

 o Added noop operation (#1391)

 o Paths set by user take priority over PROJ_LIB for search paths (#1398)

 o Reduced database size (#1438)

 o add support for compoundCRS and concatenatedOperation named from
   their components (#1441)


6.0.0 Release Notes
-------------------

PROJ 6 has undergone extensive changes to increase its functional scope from a
cartographic projection engine with so-called "early-binding" geodetic datum
transformation capabilities to a more complete library supporting coordinate
transformations and coordinate reference systems.

As a foundation for other enhancements, PROJ now includes a C++ implementation
of the modelisation propopsed by the ISO-19111:2019 standard / OGC Abstract
Specification Topic 2: "Referencing By Coordinates", for geodetic reference
frames (datums), coordinate reference systems and coordinate operations.
Construction and query of those geodetic objects is available through a new C++
API, and also accessible for the most part from bindings in the C API.

Those geodetic objects can be imported and exported from and into the OGC
Well-Known Text format (WKT) in its different variants: ESRI WKT, GDAL WKT 1,
WKT2:2015 (ISO 19162:2015) and WKT2:2018 (ISO 19162:2018). Import and export of
CRS objects from and into PROJ strings is also supported. This functionality
was previously available in the GDAL software library (except WKT2 support
which is a new feature), and is now an integral part of PROJ.

A unified database of geodetic objects, coordinate reference systems and their
metadata, and coordinate operations between those CRS is now available in a
SQLite3 database file, proj.db. This includes definitions imported from the
IOGP EPSG dataset (v9.6.0 release), the IGNF (French national mapping agency)
geodetic registry and the ESRI projection engine database. PROJ is now the
reference software in the "OSGeo C stack" for this CRS and coordinate operation
database, whereas previously this functionality was spread over PROJ, GDAL and
libgeotiff, and used CSV or other adhoc text-based formats.

Late-binding coordinate operation capabilities, that takes  metadata such as
area of use and accuracy into account, has been added. This can avoid in a
number of situations the past requirement of using WGS84 as a pivot system,
which could cause unneeded accuracy loss, or was not doable at all sometimes
when transformation to WGS84 was not available. Those late-binding capabilities
are now used by the proj_create_crs_to_crs() function and the cs2cs utility.

A new command line utility, projinfo, has been added to query information about
a geodetic object of the database, import and export geodetic objects from/into
WKT and PROJ strings, and display coordinate operations available between two
CRSs.

 UPDATES
 -------

 o Removed projects.h as a public interface (#835)

 o Deprecated the proj_api.h interface. The header file is still available
   but will be removed with the next major version release of PROJ. It is
   now required to define ACCEPT_USE_OF_DEPRECATED_PROJ_API_H before the
   interface can be used (#836)

 o Removed support for the nmake build system (#838)

 o Removed support for the proj_def.dat defaults file (#201)

 o C++11 required for building PROJ (#1203)

 o Added build dependency on SQLite 3.7 (#1175)

 o Added projinfo command line application (#1189)

 o Added many functions to proj.h for handling ISO19111 functionality (#1175)

 o Added C++ API exposing ISO19111 functionality (#1175)

 o Updated cs2cs to use late-binding features (#1182)

 o Removed the nad2bin application. Now available in the proj-datumgrid
   git repository (#1236)

 o Removed support for Chebyshev polynomials in proj (#1226)

 o Removed proj_geocentric_latitude from proj.h API (#1170)

 o Changed behaviour of proj: Now only allow initialization of
   projections (#1162)

 o Changed behaviour of tmerc: Now default to the Extended Transverse
   Mercator algorithm (etmerc). Old implementation available by adding
   +approx (#404)

 o Chaged behaviour: Default ellipsoid now set to GRS80 (was WGS84) (#1210)

 o Allow multiple directories in PROJ_LIB environment variable (#1281)

 o Added Lambert Conic Conformal (2SP Michigan) projection (#1142)

 o Added Bertin1953 projection (#1133)

 o Added Tobler-Mercator projection (#1153)

 o Added Molodensky-Badekas transform (#1160)

 o Added push and pop coordinate operations (#1250)

 o Removed +t_obs parameter from helmert and deformation (#1264)

 o Added +dt parameter to deformation as replacement for
   removed +t_obs (#1264)
jperkin pushed a commit that referenced this pull request 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 pull request May 3, 2020
pkgsrc changes:
 - Remove patches/patch-configure: applied uptsream
 - Convert the CHECK_PORTABILITY_SKIP to a REPLACE_BASH: it is more consistent
   with other REPLACE_BASHes (there are several files that are not installed
   then) and complaining about `==' test(1) operator in a bash script is
   not correct.

Changes:
1.27.4
------
- libcupsfilters, cups-browsed: Fix memory issues in
  ppdgenerator and cups-browsed (Pull request #226).
- pdftops: Mention cups-filters README, CUPS README in debug
  log (Pull request #225).
- pdftopdf, gstoraster, foomatic-rip: Use "-dSAFER"
  Ghostscript option, instead of the deprecated
  "-dPARANOIDSAFER" (Pull request #224).
- Build System: Replace '==' in configure.ac test with '=', as
  the former is a bashism (Pull request #222).

1.27.3
------
- cups-browsed: Allow sharing local queues pointing to remote
  CUPS queues and re-sharing printers discovered via
  BrowsePoll by default, using
  AllowResharingRemoteCUPSPrinters and
  NewBrowsePollQueuesShared directives in cups-browsed.conf
  (Issue #101, Pull request #218).
- driverless: Correctly unlink temporary file when generating
  PPD file (Pull request #220).
- cups-browsed: Fixed memory leaks (Pull request #219).
- foomatic-rip: PDF page count side-loads the PDF file to
  count the pages in, so it cannot be run in -dSAFER mode. Run
  even in -dNOSAFER mode to override the -dSAFER default of
  newer Ghostscript versions. This should not cause a security
  problem as we do not take an input file which could do
  arbitrary side-loads but we run hard-coded PostScript
  commands instead (Issue #216).
- libfontembed: Add checks to the test programs to not
  segfault if the test font file is not found (Pull request
  #214).
- Build System: Let ./configure fail if the supplied test font
  file path (or the default) does not exist (Pull request
  #214), also use the "find" command to find the test font
  file DejaVuSans.ttf under /usr/share/fonts, as every
  distribution has it somewhere else.

1.27.2
------
- foomatic-rip: In some PostScript input files it was possible
  that option settings did not get inserted or lines inserted
  on the wron place (Issue #208, Pull request #210).
- foomatic-rip: For the PDF page count call Ghostscript in
  sandbox mode and fix pointer arithmetics (Pull request
  #212).
- foomatic-rip: Zero-page-job handling changes made the last
  page of PostScript files not printed, also turning one-page
  jobs into zero-page jobs (Issue #200, Issue #206, Issue
  #208, Pull request #209, Pull request #210, Pull request
  #211).
- cups-browsed: check_printer_with_option() function:
  Initialize the value, add further checks, freeing memory and
  stop allocating magic numbers (Pull request #204).
- cups-browsed: Additional checks against crashes in the
  is_local_hostname() function (Ubuntu bug #1863716)

1.27.1
------
- libcupsfilters: Let the PPD generator not put any dashes
  into the PPD option and choice names when translating them
  from IPP attribute names, to avoid that on the
  back-translation by CUPS no double-dashes are
  generated. This broke paper tray selections with tray names
  like "tray-1", "tray-2", ... (Issue #192, Issue #201, Debian
  bug #949315).
- foomatic-rip: Fixed segfault when PRINTER environment
  variable is not supplied.
- pdftopdf, pdftops, gstoraster, gstopdf, gstopxl,
  rastertoescpx, rastertopclx, foomatic-rip: Handle zero-page
  jobs (Issue #117, Pull request #196, Pull request #197, Pull
  request #198, Pull request #200).
- texttopdf: Added support for CJK (double-width) fonts (Issue
  #135, Pull request #199).
- cups-browsed: Switched default for "CreateIPPPrinterQueues"
  from "local-only" to "All". The configure script options
  "--enable-auto-setup-local-only" and
  "--enable-auto-setup-driverless-only" can be used to change
  this default (Debian bug #921252).
- rastertoescpx: Fixed wrong freeing of a buffer.
- pdftops: Added options "crop-to-fit" and "fill" to the
  pdftopdf options which the pstops called by pdftops should
  not apply a second time.
- pdftops: Added missing "-sstdout=%stderr" to Ghostscript
  command line, to assure that all messages are redirected to
  stderr and do not mix up with the output data.

1.27.0
------
- cups-browsed: Eliminate the use of the local CUPS daemon's
  (the CUPS we are attached to) port number completely, so
  that for attaching to an arbitrary local CUPS daemon
  listening on an arbitrary port (or even not listening on
  localhost at all) it is enough to tell cups-browsed the
  domain socket the CUPS daemon is listening on.
- cups-browsed, libcupsfilters: Identify DNS-SD-reported
  printers as of the local CUPS daemon via UUID and not via
  the port on which the local CUPS is listening, as we do not
  always have this port available.
- cups-browsed: Leave the port for legacy CUPS browsing and
  broadcasting on 631, do not use a possible alternative port
  of the CUPS we are attached to. The legacy CUPS servers we
  communicate with are always remote ones.
- libcupsfilters: in the PPD generator prioritize
  print-color-mode-supported against
  pwg-raster-document-type-supported (Issue #186, Pull request
  #188)
- rastertopdf, rastertops, texttopdf, pdftoraster,
  mupdftoraster: Handle zero-page jobs, corrections on
  zero-page job handling (Issue #117)
- cups-browsed: When restarting after a crash make sure that
  local queue names have same upper/lower case as before.
- cups-browsed: Small code improvements to reduce crash
  probability.

1.26.2
------
- cups-browsed: Added crash guards to avoid crashes in case
  the dummy printer entry for a deleted master entry is used.
- cups-browsed: Set the port of the local CUPS daemon to be
  used according to the IPP_PORT environment variable.
- cups-browsed: Eliminated the use of the cupsGetPPD2()
  function of libcups completely, also the remaining calls
  in the record_printer_options() and update_cups_queues()
  functions, the former causing incomplete recording of
  option settings and the latter use of CUPS-generated
  PPDs not working when CUPS is running on a non-standard
  port.
- cups-browsed: Eliminated the use of the cupsGetPPD2()
  function of libcups in queue_overwritten(). The function
  actually loads the queue's PPD file if the queue is on a
  local CUPS on port 631. Due to a bug the function fails if
  an alternative port is used. This lets queue_overwritten()
  always assume that the PPD got removed and therefore the
  queue got overwritten. So queues got released from
  cups-browsed if it was printed on them or if they were
  supposed to be removed on shutdown.
- foomatic-rip: Fixed compilation with -fno-common. Starting
  from the upcoming GCC 10, the default of the -fcommon option
  will change to -fno-common. This causes compilation errors
  in foomatic-rip due to missing "external" declarations.
  (Pull request #184).
jperkin pushed a commit that referenced this pull request Aug 25, 2020
v1.4.0 (2020-06-07)
-------------------

Features
^^^^^^^^
* `#197 <https://github.com/readthedocs/sphinx-autoapi/issues/197>`: Added
  ``autoapi.__version__`` and ``autoapi.__version_info__`` attributes
  for accessing version information.
* `#201 <https://github.com/readthedocs/sphinx-autoapi/issues/201>`: (Python)
  Added the ``autoapi_member_order`` option to allow the order that members
  are documentated to be configurable.
* `#203 <https://github.com/readthedocs/sphinx-autoapi/issues/203>`: (Python)
  A class without a docstring inherits one from its parent.
  A methods without a docstring inherits one from the method that it overrides.
* `#204 <https://github.com/readthedocs/sphinx-autoapi/issues/204>`: (Python)
  Added the ``imported-members`` AutoAPI option to be able to enable or disable
  documenting objects imported from the same top-level package or module
  without needing to override templates.

Bug Fixes
^^^^^^^^^
* `#198 <https://github.com/readthedocs/sphinx-autoapi/issues/198>`:
  Documentation describes the required layout for template override directories.
* `#195 <https://github.com/readthedocs/sphinx-autoapi/issues/195>`: (Python)
  Fixed incorrect formatting when ``show-inheritance-diagram``
  and ``private-members`` are turned on.
* `#193 <https://github.com/readthedocs/sphinx-autoapi/issues/193>` and
* `#208 <https://github.com/readthedocs/sphinx-autoapi/issues/208>`: (Python)
  Inheritance diagrams can follow imports to find classes to document.
* `#213 <https://github.com/readthedocs/sphinx-autoapi/issues/213>`: (Python)
  Fixed module summary never showing.

Trivial/Internal Changes
^^^^^^^^^^^^^^^^^^^^^^^^
* black shows diffs by default
* `#207 <https://github.com/readthedocs/sphinx-autoapi/issues/207>`:
  Fixed a typo in the code of the golang tutorial.
jperkin pushed a commit that referenced this pull request Sep 16, 2020
Update ruby-logging package to 2.3.0.


== 2.3.0 / 2020-07-04

Enhancements

- all appender output is now synchronized [PR #219]
- renamed the `LogEvent#method` to no longer conflict with `Kernel#method`
  [PR #218]
- @bhuga (not the Fortnite star) added a `raise_errors` method for debugging
  [PR #203]
- thanks to @olleolleolle for keeping on top of Travis and Ruby versions

Bug Fixes
- conosle appenders can be reopened [PR #220]
- fixed a race condition in the rolling file appender [PR #216]
- fixed a race condition when opening log file destinations [PR #208 #217]
- @MikaelSmith fixed a race condition in Logger creation [PR #201]
- documentation bug fixes [PR #184 #185 #188 #194 #209]
jperkin pushed a commit that referenced this pull request 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 pull request 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 pull request Feb 23, 2021
Changelog:
What's New in libchewing 0.5.1 (May 18, 2016)
---------------------------------------------------------
* Bug fixed:
  - Fix wrong CHEWING_DATADIR definition in CMake build #222.
  - Fix j, k selection when symbol in between #149 #221.


What's New in libchewing 0.5.0 (May 2, 2016)
---------------------------------------------------------
* New feature
  - Add Carpalx keyboard layout support #217.

* Dictionary
  - Update dictionary #151 #155 #188 #191 #201.
  - Add debug tool: dump_database.
  - Sort tsi.src #212.

* Misc
  - Tweak several comments.
  - Fix libchewing document.
  - Remove old/dead code.
  - Improve code readability and consistency.
  - Update automake syntax #114.
  - Add test cases #169 #177.
  - Update Python sample code.
  - Add debug tool dump_database.
  - Integrate coverity scan in https://scan.coverity.com/.

* Platform-specific
  - Update README for OS X.
  - Set WITH_INTERNAL_SQLITE3 to true by default in MS-Windows.
  - Fix Visual Studio compiling warnings/errors #168 #171 #189 #190 #213.
  - Add a cmake option BUILD_DLL to enable building *.dll with MS VC++ #185.
  - Make the python binding of libchewing support Windows dll files #186.
  - Don't use SIGSTOP in MS-Windows.

* Bug fixed
  - Check if ld supports --no-defined #144.
  - Fix unexpected candidate disorder for '1' #153
  - Replace bash-izm '==' operator with '=' for test(1) # 158.
  - Fix several Coverity errors #172 #173.
  - Fix ChewingKillChar which is disabling OpenSymbolChoice #160 #181.
  - ㄅ cannot overwrite ㄆ in HSU and ET26 #170 #183.

* Successful stories:
  - Rime Input Method Engine (RIME) takes partial dictionary from
    libchewing.
  - PIME (writing input methods for Windows easily with Python) supports
    Chewing IM by default.
jperkin pushed a commit that referenced this pull request Aug 3, 2021
0.8.2

Changes
 - Improved yank and undo alloc'ing. Malloc as much we need from start
   in a long batch and avoid small mallocs.
 - Changed the way lua scripts are referenced in formulas. Now they are
   input as any other string formula, like this:
   \"@lua("script_name.lua", 1) being 1 if the reference should be added
   to the depgraph or not, making it evaluated just once or every time
   the depgraph is evaluated.
   NOTE that if set to 0 and the cell is referenced by another cell, it
   will be executed nonetheless.
 - Added new exec_lua configuration variable.
 - Rows now can have height higher than one LINE. See fj and fk in
   normal mode or :formatrow in command mode.
 - Wrap cell content. new autowrap config value. works when nooverlap
   and notruncate are set.
 - Open URL or file specified on cell (PR 401)
 - Import mkd files
 - Multiple frozen rows/columns (fr / fc in normal mode)
 - Added mapping_timeout configuration variable with a default value of
   1500ms (used to be a fixed value of 800ms).
 - Added mouse support in insert and command mode. The selection of a
   cell gets copied to inputbar.
 - Added command_timeout configuration variable.
 - handle hidden rows/cols in undo/redo of ir/ic/dr/dc
 - Added backwards search with '?'
 - Restore \\* from old SC. \\{char} fills the cell with n occurrences
   of {char} to complete its width
 - Store frozen rows and cols when saving file
 - Added :formatcol command (handling its undo as well)
 - Added :formatrow command (handling its undo as well)
 - Added undo of freeze row and col
 - Handle \n in cell input, and with autowrap
 - Handle undoing changes in row height produced by string input
 - Changed input bar from window to pad: permits entering string longer
   than COLS.
 - @count counts cells with strings as well, and not just with numbers.
 - Handle entering a label after :datefmt for datetime value edition.
 - New dracula / papercolor themes.
 - Added EvalRange() so that the graph is not evaluated entirely all the
   time.
 - Replaced 'EvalAll' with 'EvalRange'.
 - Removed unneeded parameters on EvalJustVertex"
 - Added eval_order in EvalRange and rebuild_graph.
 - Added @evaluate / @sevaluate functions
 - Handle @nval dependencies.
 - Handle @mycol/@myrow calls during startup when no EvalJustOneVertex
   is yet called
 - Added @Getent (FR issue #451)
 - The saving format for :w command would be according to current file
   format. #493
 - modified savefile() of file.c to check current file format before
   saving a file.
 - Keep consistent with other format such as csv and save the file with
   the same format as current file.
 - Added HELP_HIGHLIGHT definition color for help page.
 - Renamed GRID_PAIR to GRID_EVEN in color.c.
 - UNDO of :fsum is handled by let.
 - calc_offscr_rows/cols rewriten and renamed to calc_mobile_rows/cols

Fixes
 - Fix old sc bug - issue #371
 - Fix when saving sc files of cells that has some string expressions -
   issue #541
 - Fix leak in nval.
 - Fix Issue #372.
 - Free lua memory at exit.
 - Fix when saving marks in file after importing xlsx file and saving it
   in sc format.
 - EXPR and NUMBER colors were overloaded by STRING color #546
 - Fix markdown export when empty col was added left to data
 - Fix in :showrows command.
 - :fsum added to command mode commands. It was missing.
 - Added :showcols command that was missing.
 - Handled issue #429
 - handled issue #374
 - Ignore SIGWINCH outside ncurses.
 - triggers: Avoid segfault when not being able to load module. Issue
   #325

0.8.1

New features
 - Braille support
 - Added latex export - issue #394
 - Added mappings for command mode
 - Work on issues #225 and #247: support mapping of ñ and other special
   chars
 - Basic ODS file import
 - Paste to a range of selected cells - (actually added on v0.8 - issue
   438 - PR 445)
 - Added txtdelim | for csv files import - issue 409
 - Added macros to --version (show version)
 - Support higher versions of lua.
 - Handle ESC key in mappings. related to issue #492.
 - Added freeze to visual mode - issue #459

Changes
 - Recognise SPACE in mappings rather than simple ' '
 - Visual change: Moved cmd multiplier to the left of mode
 - Changed default headings colors
 - many improvements to the config facility and usage - PR 519
 - improved sort for 65k rows

Fixes
 - Fix issues on CIRCULAR REFERENCES: #473 #201 #475 #321. these were as
   hard.
 - Fix issue 417 and added a date type in xlsx import.
 - Fix Engformat overlap text y número. Mostraba * (actually fixed
   on v0.8)
 - Fix column header display - overflow with column width 2 and column
   with two letters - PR 517
 - Fix isnumeric test to recognise floats: affects copy/paste - PR 450
 - Fix issue setting conf variables like nonumeric
 - Fix when showing empty text - 944844505d7cdb7d3d392a5c1d2b3ffde40a1fff
 - Fix issue #227 - this was hard. used to segfault and keep wrong
   reference after deleting row that is last in range of expr. ex.
   @AvG(B1:B4) and deleting row 4
 - Fix issue #433: large memory use with multiple linked cells.
 - Fix issue #287 - valueize didnt update depgraph
 - Solved issue #399. 'g' command of NORMAL_MODE changed to 'gt'"
 - Fixed vmaps in get_mappings function.
 - Fixed bug on 'error' in gram.y - comment on issue #482
 - Fix issue #457: cursor position could add empty rows or columns when
   exporting csv files
 - Fix issue #288: ^ misbehaving when having fixed rows
 - Fix in mouse clicks
 - Fix possible memory leak in add freeze
 - XLSX: Free memory leak when looking for specified sheet.
 - XLSX: Avoid segfault when using shared formulas. issue #218.
jperkin pushed a commit that referenced this pull request Aug 23, 2021
# rio 0.5.27
* Documentation fixes for CRAN.

# rio 0.5.26
* Added support for "zsav" format. (#273)

# rio 0.5.25
* Modified tests per email request from CRAN.
* Added `coerce_character` argument (default FALSE) to `factorize()`
  to enable coercing character columns to factor. (#278)

# rio 0.5.24
* Fix handling of "label" and "labels" attributes when exporting using
  haven methods (SPSS, Stata, SAS). (#268, h/t Ruben Arslan)
* Fix (a different bug?) handling factors by haven::labelled() (#271,
  Alex Bokov)
* HTML import can now handle multiple tbody elements within a single
  table, a th element in a non-header row, and empty elements in
  either the header or data. (#260, #263, #264 Bill Denney)

# rio 0.5.23
* CSVY support is now provided by `data.table::fread()` and
  `data.table::fwrite()`, providing significant performance gains.
* Added an internal `arg_reconcile()` function to streamline the task
  of removing/renaming arguments for compatibility with various
  functions (#245, Alex Bokov)

# rio 0.5.22
* Added an `export_list()` function to write a list of data frames to
  multiple files using a vector of file names or a file
  pattern. (#207, h/t Bill Denney)
* Added an `is_file_text()` function to determine whether a file is in
  a plain-text format. Optionally narrower subsets of characters can
  be specified, e.g. ASCII. (#236 Alex Bokov)

# rio 0.5.21
* Added support for Apache Arrow (Parquet) files. (#214)
* Fix dropping of variable label in `characterize()` and
  `factorize()`. (#204, h/t David Armstrong)
* `import_list()` now returns a `filename` attribute for each data
  frame in the list (when importing from multiple files), in order to
  distinguish files with the same base name but different extensions
  (e.g., `import_list(c("foo.csv", "foo.tsv"))`). (#208, h/t Vimal
  Rawat)
* Import of DBF files now does not convert strings to factors. (#202,
  h/t @jllipatz)
* Implemented `import()` method for .dump R files. (#240)

# rio 0.5.20
* Additional pointers were added to indicate how to load .doc, .docx,
  and .pdf files (#210, h/t Bill Denney)
* Ensure that tests only run if the corresponding package is
  installed.  (h/t Bill Denney)
* Escape ampersands for html and xml export (#234 Alex Bokov)

# rio 0.5.19
* Fix behavior of `export()` to plain text files when `append = TRUE`
  (#201, h/t Juli�$BC!�(Bn Urbano)
* `import_list()` now preserve names of Excel sheets, etc. when the
  'which' argument is specified. (#162, h/t Danny Parsons)
* Modify message and errors when working with unrecognized file
  formats. (#195, h/t Trevor Davis)
* Add support for GraphPad Prism .pzfx files (#205, h/t Bill Denney)

# rio 0.5.18
* Adjust `import()`/`export()` for JSON file formats to allow non-data
  frame objects. Behavior modeled after RDS format. (#199 h/t Nathan
  Day)

# rio 0.5.17
* Fix `the condition has length > 1 and only the first element will be
  used` warning in `gather_attributes()`. (#196, h/t Ruben Arslan)
jperkin pushed a commit that referenced this pull request Aug 25, 2021
# shinyjs 2.0.0 (2020-08-24)

- **IMPORTANT CHANGE** Remove commercial license (it only existed
    because some big companies asked for it, but it ended up being a
    bigger headache for 99% of the community)

- **BREAKING CHANGE** When using `extendShinyjs()`, the `functions`
    parameter must always be provided.

- **BREAKING CHANGE** When using `extendShinyjs()`, the `script` path
    parameter now behaves like any other Shiny web resource, which
    means it cannot be loaded from the local file system. The path
    must be discoverable by the browser, so it either needs to be a
    public URL, inside a `www` folder, or available via
    `addResourcePath()`.

- New feature: add a `refresh()` function (#205)

- New feature: add `asis` parameter to `reset()` function, which works
  like it does in all other functions that support `asis` (#146)

- Fix bug: `extendShinyjs()` now works with any web URL or any
  resource path (#201)

- Fix bug: `reset()` didn't work when a sliderInput was initialized
  with `value=NULL` (#207)

- Remove `V8` as a package dependency.

# shinyjs 1.1 (2020-01-12)

This update was 2 years in the making because it required a lot of
testing by users to ensure none of these features cause any regression
bugs in real apps.

- **BREAKING CHANGE** The `includeShinyjs` parameter in `runcodeUI()`
    is now deprecated
- Fix bug: shinyjs functions used inside a module with a `selector`
  argument instead of an `id` argument didn't work (#175)
- Fix bug: shinyjs functions did not work with IDs that had a space in
  them (#176)
- Fix bug: non-selectize select inputs could not be disabled (#186)
- Fix bug: `click()` now works with download buttons (#198)

- New feature: added `asis` parameter to any function that takes an
  ID. When `asis=TRUE`, the ID will not be namespaced when inside a
  module (#118)

- New feature: added `id` parameter to `runcode()`, allowing it to
  work inside Shiny modules (#184)

- New feature: `onevent()` returns the `offsetX` and `offsetY` event
  properties

- New feature: `onevent()` accepts a `properties` parameter that
  allows the user to retrieve additional properties that are not
  whitelisted by default (#159)

- New feature: `hide()`/`show()` now only bubble up the DOM tree to
  the nearest input container if the current element is an input
  (#153)

- Documentation: added documentation about `useShinyjs()` side effects
  and about including `shinyjs` in packages (#182)
jperkin pushed a commit that referenced this pull request Sep 20, 2021
2.12.0 (2021-08-11)

Features

* Support empty HTML5 data attributes. [#215]

2.11.0 (2021-07-31)

Features

* Allow HTML5 element wbr.
* Allow all CSS property values for border-collapse. [#201]

Changes

* Deprecating Loofah::HTML5::SafeList::VOID_ELEMENTS which is not a
  canonical list of void HTML4 or HTML5 elements.
* Removed some elements from Loofah::HTML5::SafeList::VOID_ELEMENTS that
  either are not acceptable elements or aren't considered "void" by libxml2.
jperkin pushed a commit that referenced this pull request Nov 28, 2021
Changes since 0.1.1:

> This version has some breaking changes in the config file and, you will
need to regenerate the config for all features to work.

## Notable changes
- The tool is now compatible with next-gen/team-managed project.
- New filters when listing issues, viz:
  - Filter by parent: This will allow you to list all sub-tasks of a task.
  - Order by filter: This will allow you to display a list sorted by their
    rank for example.
- You can now assign epic to the issue on creation.
- You can add issues to the sprint with `jira sprint add`

## What's added?
- feat: Allow to assign epic on create #194
- feat: Cmd to add issues to sprint #205
- feat: Allow to filter by parent #197
- feat: Add order-by filter #206
- feat: Add type on project listing #190

## What's fixed?
- fix: Make epic add work in next-gen project #195
- fix: Epic creation for next-gen project #192
- fix: Make epic remove work in next-gen project #196
- fix: Make epic list work for next-gen project #201
- fix: Segmentation fault on view #202
- fix(tui): Link/key copy is broken for altered key col #204

## Config changes
- cfg!: Expand config to include project type #191
- cfg!: Rename field to name and add link field to epic #193

## Dependency updates
- dep: Upgrade rivo/tview #176
- dep: Upgrade outdated deps to latest #177
- dep: Use Go 1.17 #178


**Full Changelog**: ankitpokhrel/jira-cli@v0.1.1...v0.2.0
jperkin pushed a commit that referenced this pull request Sep 10, 2022
Changes since 1.10.6

    ray: simplify NaN checking [Érico Nogueira]
    Build fixes [Dor Askayo, q66, Chun-wei Fan, Marc-André Lureau]
    SIMD: Make reciprocal operations 0-safe [Dor Askayo]
    SIMD: Add simplified scalar reciprocal [Dor Askayo]
    ray: Improve intersection [Dor Askayo]
    tests: Fix installed introspection test [Matthias Devlamynck]
    Fix detection of AArch64 [Dor Askayo]
    tests: Add ray intersection unit [Sebastian Keller]
    Fix ARM64 build on Windows [Chun-wei Fan]
    Documentation fixes

Issues fixed since 1.10.4

    Hide GRAPHENE_SIMD_S from the introspection data [#211, Simon McVittie]
    Nudge ray axis when intersecting a box [#214, Jonas Ådahl]

Changes since 1.10.2:

    Add ARM NEON support when building with Visual Studio [Chun-wei Fan]
    Build fix on ARM64 Windows [Chun-wei Fan]
    Drop deprecated "python3" Meson module
    Fix detection of non-intersecting boxes [Daniel van Vugt, #201]
    Only enable SSE2 on x86_64 [Xi Ruoyao]
    Use the compiler-appropriate alignment attributes
    Change introspection option to a yielding feature [Xavier Claessens]
jperkin pushed a commit that referenced this pull request 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 pull request Dec 18, 2022
# tidyselect 1.2.0

## New features

* New `tidyselect_data_proxy()` and `tidyselect_data_has_predicates()`
  allows tidyselect to work with custom input types (#242).

* New `eval_relocate()` for moving a selection. This powers `dplyr::relocate()`
  (#232).

## Lifecycle changes

* Using `all_of()` outside of a tidyselect context is now deprecated (#269).
  In the future it will error to be consistent with `any_of()`.

* Use of `.data` in tidyselect expressions is now deprecated to more cleanly
  separate tidy-select from data-masking. Replace `.data$x` with `"x"` and
  `.data[[var]]` with `any_of(var)` or `all_of(var)` (#169).

* Use of bare predicates (not wrapped in `where()`) and indirection (without
  using `all_of()`) have been formally deprecated (#317).

## Minor improvements and bug fixes

* Selection language:

  * `any_of()` generates a more informative error if you supply too many
    arguments (#241).

  * `all_of()` (like `any_of()`) returns an integer vector to make it easier
    to combine in functions (#270, #294). It also fails when it can't find
    variables even when `strict = FALSE`.

  * `matches()` recognises and correctly uses stringr pattern objects
    (`stringr::regex()`, `stringr::fixed()`, etc) (#238). It also now
    works with named vectors (#250).

  * `num_range()` gains a `suffix` argument (#229).

  * `where()` is now exported, like all other select helpers (#201),
    and gives more informative errors (#236).

* `eval_select()` with `include` now preserves the order of the variables
  if they're present in the selection (#224).

* `eval_select()` always returns a named vector, even when renaming is not
  permitted (#220).

* `eval_select()` and `eval_relocate()` gain new `allow_empty` argument which
  makes it possible to forbid empty selections with `allow_empty = FALSE` (#252).

* `eval_select(allow_rename = FALSE)` no longer fails with empty
  selections (#221, @eutwt) or with predicate functions (#225). It now properly
  fails with partial renaming (#305).

* `peek_var()` error now generates hyperlink to docs with recent RStudio (#289).

* `vars_pull()` generates more informative error messages (#234, #258, #318)
  and gains `error_call` and `error_arg` arguments.

* Errors produced by tidyselect should now be more informative. Evaluation
  errors are now chained, with the child error call is set to the `error_call`
  argument of `eval_select()` and `eval_rename()`. We've also improved
  backtraces of base errors, and done better at propagating the root
  `error_call` to vctrs input checkers.

* `tidyselect_verbosity` is no longer used; deprecation messaging is now
  controlled by `lifecycle_verbosity` like all other packages (#317).
jperkin pushed a commit that referenced this pull request Feb 7, 2023
pkgsrc change: remove pkglint warning.

0.29.0.gfm.1 (2021-09-14)

* Fixed denial of service bug in GFM's table extension per
  GHSA-7gc6-9qr5-hc85

0.29.0.gfm.2 (2021-09-16)

* Fixed issues with footnote rendering when used with the autolinker (#121),
  and when footnotes are adjacent (#139).

* We now allow footnotes to be referenced from inside a footnote definition,
  we use the footnote label for the fnref href text when rendering html, and
  we insert multiple backrefs when a footnote has been referenced multiple
  times (#229, #230)

* We added new data- attributes to footnote html rendering to make them
  easier to style (#234)

0.29.0.gfm.3 (2022-03-03)

* Fixed heap memory corruption vulnerabiliy via integer overflow per
  GHSA-mc3g-88wq-6f4x

0.29.0.gfm.4 (2022-05-31)

* Remove source from list of HTML block elements per
  commonmark/commonmark-spec#710

0.29.0.gfm.5 (2022-08-25)

* Added xmpp: and mailto: support to the autolink extension

0.29.0.gfm.6 (2022-09-15)

* Fixed polynomial time complexity DoS vulnerability in autolink extension
  per GHSA-cgh3-p57x-9q7q

0.29.0.gfm.7 (2023-01-23)

* Fixed CVE-2023-22486, a polynomial time complexity issue in cmark-gfm
  which may lead to unbounded resource exhaustion and subsequent denial of
  service.

* Fixed CVE-2023-22485, in which a crafted markdown document could trigger
  an out-of-bounds read in the validate_protocol function.

* Fixed CVE-2023-22484, a polynomial time complexity issue in cmark-gfm
  which may lead to unbounded resource exhaustion and subsequent denial of
  service.

* Fixed CVE-2023-22483, several polynomial time complexity issues in
  cmark-gfm which may lead to unbounded resource exhaustion and subsequent
  denial of service.

* We removed an unneeded .DS_Store file (#291)

* We added a test for domains with underscores and fix roundtrip behavior
  (#292)

* We now use an up-to-date clang-format (#294)

* We made a variety of implicit integer truncations explicit by moving to
  size_t as our standard size integer type (#302)

* We introduced a new flag mechanism that is used in cmark node state
  management, which requires clients call the cmark_init_standard_node_flags
  function at program startup (420c20a)

The security issues were reported and resolved by @kevinbackhouse and
@philipturnbull of the GitHub Security Lab

0.29.0.gfm.8 (2023-01-25)

* We restored backwards compatibility by deprecating the
  cmark_init_standard_node_flags() requirement, which is now a noop (#305)

* We added a quadratic complexity fuzzing target (#304)

0.29.0.gfm.9 Latest (2023-01-31)

Code was tidied:

* Use of a private header was cleaned up #248
* Man page was update #255
* Warnings for -Wstrict-prototypes were cleaned up #285
* We avoid header duplication #289

New functionality:

* We now store positioning info for url_match #201
* We now expose cmark_parent_footnote_def for non-C renderers #254
* Footnote aria-label text now reference the specific footnote backref, and
  we include a data-footnote-backref-idx attribute so the label can be
  internationalized in a downstream filter #307
jperkin pushed a commit that referenced this pull request May 25, 2023
What's Changed

    Fix building without duktape by @mattst88 in #180
    Fix WITH_GNOME2 documentation by @mattst88 in #181
    bindings: perl: Use ccflags from %Config for libproxy module compilation by @Vogtinator in #183
    Use XDG_CURRENT_DESKTOP to detect GNOME desktop like systems by @janbrummer in #192
    Enable the use of ducktape in Windows systems by @illera88 in #194
    Enable static builds for libproxy by @illera88 in #195
    Fix build on macOS by @wegank in #189
    Complete rewrite by @janbrummer in #201
    kde: Remove line breaks in values by @janbrummer in #203
    Add man page for proxy tool by @janbrummer in #204
    Add PX_FORCE_CONFIG env by @janbrummer in #205
    add alert function to pacrunners by @multiSnow in #196
    Update architecture documentation by @janbrummer in #206
    Check for valid uri_host in ignore_ip() by @janbrummer in #210
    Remove line break in debug output by @janbrummer in #211
    Improve GNOME/KDE get_config() execution by @janbrummer in #212
jperkin added a commit that referenced this pull request Jul 10, 2023
Also fix issue with newer msgfmt unable to use /dev/null as an output file.

Version 4.0.1 (2023-06-30)

core: force key "return" to command "/input return" when migrating legacy keys
core: display actual key name and command with key Alt+k, remove key Alt+K
      (grab raw key) and associated commands /input grab_raw_key and /input
      grab_raw_key_command
core: check for newline characters in string_is_whitespace_char (issue #1968)
api: do not convert option name to lower case in API functions
     config_set_plugin and config_set_desc_plugin
guile: fix crash on quit with Guile < 3 (issue #1965)
irc: reply to a CTCP request sent to self nick (issue #1966)
irc: sent "QUIT" message to servers connected with TLS on /upgrade

Version 4.0.0 (2023-06-24)

New features

core: use human readable key bindings, separate keys with comma in combos,
      remove modifier "meta2-", add option legacy in command /key (issue #1238,
      task #10317)
core: make keys normal options, so they are shown and can be updated with /set
      and /fset commands (task #12427, task #11783)
core: add key Alt+K (upper case) to grab raw key and its command (issue #1238)
core: add option key in command /debug (issue #1238)
core: force ctrl keys to lower case when they are added (issue #1875)
core: use 256 colors by default and always allow 256 colors, find nearest color
      if less colors are available in terminal (issue #1920)
core: insert multiple pasted lines in input instead of sending immediately, add
      keys to move and delete in a single line and whole input, add option
      weechat.look.input_multiline_lead_linebreak (issue #1502, issue #1503,
      issue #1504)
core: render newline characters in chat line messages (issue #1908)
core: don’t split on newline characters in printf_date_tags when
      input_multiline is set (issue #1909)
core: add key @l in cursor mode to quote line, add variable
      "_chat_focused_line" in function hashtable sent to hook_focus callback
      (issue #1913, issue #1914)
core: add option split_return in command /input (issue #1916)
core: send all command line parameters not beginning with a dash to all plugins
core: add command /reset to reset options to their default values
core: add option rename in command /bar
core: add relative move of read marker with /buffer set unread [+/-]N (issue
      #1895)
core: add access to hashtable properties in evaluation of expressions (issue
      #1888)
core: display similar command names when a command is unknown (issue #1877)
core: rename option weechat.color.status_name_ssl to
      weechat.color.status_name_tls
core: add option weechat.color.status_name_insecure to display buffer name with
      a specific color when not connected with TLS to the server
core, plugins: make many identifiers case sensitive (issue #1872, issue #398,
      bug #32213)
core: add item "mouse_status" in default status bar, change default color to
      lightgreen
core, trigger: add options weechat.color.chat_status_disabled and
      weechat.color.chat_status_enabled, remove options trigger.color.trigger
      and trigger.color.trigger_disabled, add enabled/disabled status color in
      output of /filter list (issue #1820)
core: add completions "filters_names_disabled" and "filters_names_enabled",
      used in completion of /filter disable and /filter enable
api: add function config_set_version (issue #1238)
api: don’t split on newline by default in functions command and command_options
     when input_multiline is set to 0
api: add optional argument with version in info "version_number"
api: add info "auto_load_scripts"
alias: use lower case for default aliases, rename all aliases to lower case on
       upgrade (issue #1872)
alias: add $& to replace all arguments with double quotes escaped (issue #1140,
       issue #1190)
alias: add options missing and rename in command /alias
fifo: add support of escaped chars in text or commands sent (issue #1950)
fset: add options fset.color.color_name and fset.color.color_name_selected
      (issue #1920)
irc: rename "ssl" options to "tls", connect with TLS and port 6697 by default
irc: add support of capabilities "batch" and "draft/multiline" (issue #1292,
     issue #1923)
irc: add support of capability "echo-message" (issue #139)
irc: display CTCP ACTION to channel on the channel buffer (issue #207)
irc: display STATUSMSG actions differently from standard actions on channels
     (issue #1577)
irc: add modifier "irc_cap_sync_req" (issue #1767)
irc: add support of "LINELEN" in message 005 (max message length in bytes)
     (issue #1927)
irc: add support of "UTF8ONLY" in message 005 (issue #1688)
irc: add command /action (issue #201, issue #1577)
irc: add command /rules (issue #1864)
irc: add command /knock (issue #7)
irc: add server option "registered_mode", add fields "authentication_method"
     and "sasl_mechanism_used" in server (issue #1625)
irc: add option join in command /autojoin
irc: use key when /joining in open channel buffer (issue #1260)
irc: add option buffer in command /autojoin sort (issue #1876)
irc: add ${username} in server options "nicks" and "username", change their
     default values to use it
irc: add infos "irc_server_cap" and "irc_server_cap_value"
irc: add option irc.look.display_host_notice
irc: add tag "new_host_xxx" in message displayed for command CHGHOST (issue
     #1808)
logger: add option logger.file.log_conditions (issue #1942)
logger: add info "logger_log_file"
relay: rename "ssl" options and protocol to "tls"
relay: make TLS certificate/key loading error handling more verbose (issue
       #1558)
relay: add modifiers "relay_client_irc_in", "relay_client_irc_out1" and
       "relay_client_irc_out" in irc protocol
relay: add support of capability "echo-message" in irc protocol (issue #1949)
relay: add handshake option "escape_commands" in weechat protocol
trigger: add completions "trigger_names_disabled" and "trigger_names_enabled",
         used in completion of /trigger disable and /trigger enable

Bug fixes

core: fix refresh of bar item "input_search" after buffer switch in root bars
      (issue #1939)
core: fix completion after newline in input (issue #1925)
core: fix partial completion when the common prefix found is empty (issue #340)
core: display a specific error when trying to bind a key without area in mouse
      context
core: fix display of key with command /key bindctxt <context> <key>
core: fix default value of bar options (issue #846)
core: allow any valid boolean value in command /bar set <name> separator xxx
core: run config hooks only when value or default value is actually changed in
      set/reset/unset functions
core: fix crash in case of NULL message sent to function
      gui_chat_printf_y_date_tags (issue #1883)
core: allow command /input move_next_word going to the end of line (issue
      #1881)
core: ignore incomplete ctrl/meta/meta2 codes in keys
core: fix display glitch in command errors when a wide char is set in option
      weechat.look.command_chars (issue #1871)
core: fix update of terminal title in some terminals like suckless terminal
      (stterm) (issue #1882)
core: fix infinite loop on startup when running some gui commands before the
      switch to core buffer is performed (issue #1917)
api: readjust string size in function string_dyn_free when string is not freed
buflist: do not display keys added in default context on first load
exec: remove trailing "M" (carriage return) in output of commands
fset: remove scroll to top of fset buffer when options are added or removed
      (issue #1892)
guile: fix crash when plugin is loaded on GNU/Hurd (issue #1951)
irc: fix format of IRC tags displayed in messages (use "=" to separate key from
     value, do not convert "_" to "-") (issue #1929)
irc: reset all internal servers variables when disconnecting
irc: start from the beginning of nicks at automatic reconnection (issue #337,
     issue #965)
irc: fix join of channels in "autojoin" server option on first connection to
     server if auto reconnection is performed (issue #1873)
irc: update autojoin option with redirected channels when autojoin_dynamic is
     enabled (issue #1898)
irc: update secure data when server autojoin option contains ${sec.data.xxx}
     and option autojoin_dynamic is enabled (issue #1934)
irc: don’t switch to buffer of joined channel if it was not manually joined nor
     present in server autojoin option
irc: fix target buffer for commands 432/433 (erroneous nickname/nickname
     already in use) when the nickname looks like a channel
irc: display command 437 on server buffer when nickname cannot change while
     banned on channel (issue #88)
irc: add messages 415 (cannot send message to channel) and 742 (mode cannot be
     set)
irc: add missing tag "log3" in notify messages
irc: add missing tags "irc_cap" and "log3" in cap messages (client capability)
irc: fix split of CTCP message with no arguments
irc: remove extra space in CTCP ACTION message sent without arguments
logger: fix display of multiline messages in backlog (issue #1926)
lua: fix crash with print when the value to print is not a string (issue #1904,
     issue #1905)
relay: fix crash on /upgrade when at least a client is connected with weechat
       protocol
relay: fix connection with IRC clients sending "CAP REQ :" (without capability)
       and not sending "CAP END" (issue #1040)
ruby: fix crash on quit when a child process is still running (issue #1889,
      issue #1915)
ruby: fix crash in display of exception backtrace with Ruby 3 (issue #1631,
      issue #1886)
script: remove trailing "J" (line feed char) in source of scripts displayed
spell: check buffer pointer received in info "spell_dict"
trigger: make default triggers "cmd_pass", "cmd_pass_register" and
         "server_pass" compatible with multiline input (issue #1935)
typing: fix crash when pointer buffer is not received in callback for signal
        "input_text_changed" (issue #1869)
typing: remove nicks typing even when option typing.look.enabled_self is off
        (issue #1718)

Tests

core: add tests on URL functions
gui: add tests on bar and key functions
alias: add tests on alias functions
irc: check tags in messages displayed by IRC plugin
irc: add tests on function irc_server_alloc_with_url
irc: add tests on message/notice/action/CTCP sent
logger: add tests on tail functions
relay: add tests on "irc" protocol

Build

core: remove build with autotools (issue #1860)
core: remove RPM packaging
core: remove build of .bz2 and .zst files in make dist
core: remove obsolete cpack config
core: add "stable-number" and "devel-number" in script version.sh
core: add quotes around paths in CMake files (issue #29)
doc: convert docgen.py to C, remove autogen files from repository, add
     parameter --doc-gen to weechat-headless binary, add CMake option
     ENABLE_DOC_INCOMPLETE
jperkin pushed a commit that referenced this pull request Aug 8, 2023
v0.8.1 (Sat Aug 05 2023)
Release Notes
Add language selection (#190)

You can now change the language of the current article by pressing F3 (requires
an article to be open and the key can be configured). Within the popup, you can
select a new language from the available ones (not all articles are available
in all languages). This feature also include several configuration options,
so be sure to check them out in the docs.

Exciting New Features 🎉
 - Add language selection #190 (@Builditluc)

Bug Fixes 🐛
 - Fix whitespace caused by quoteboxes #205 (@Builditluc)
 - Fix navigation links appearing in articles #204 (@Builditluc)
 - Fix missing elements because of nested divs #203 (@Builditluc)
 - Fix long gaps after lists #202 (@Builditluc)
 - Fix ghost lists from Portalbox #201 (@Builditluc)
 - Fix nested indentation #200 (@Builditluc)
 - Fix description list parsing #199 (@Builditluc)
 - Fix stack overflow crash when displaying a Namespace #198 (@Builditluc)
 - Fix padding for list items #196 (@Builditluc)
 - Fix disambiguation padding and prefix #195 (@Builditluc)
 - Fix viewport reset after link selection #194 (@Builditluc)
 - Notify on links with an Anchor #192 (@Builditluc)

Structure and Style Changes
 - Rework Links to be more stable #191 (@Builditluc)
jperkin pushed a commit that referenced this pull request Sep 1, 2023
## BumpVer 2023.1126

- Add [#214][gh_pr214]: Support for pre/post commit hooks.
- Add [#219][gh_pr219]: Fix pathlib issues on Windows.
- Fix [#201][gh_i201]: Better error message for SemVer corner case.
- Update [#215][gh_i215]: Better error message for greedy pattern matching.
- Update [#216][gh_i216]: Use .toml format in REAMDE examples.

## BumpVer 2023.1125

- Add [#188][gh_i188]: Add `--tag-scope=<SCOPE>` to support separate versioning for branches.
- Add [#185][gh_i185]: Add `--tag-message=<TMPL>` parameter and `tag_message` configuration option.
- Fix [#209][gh_i209]: Make `--no-tag-commit` ommit `--follow-tags`.
jperkin pushed a commit that referenced this pull request Oct 20, 2023
## v3.4.0

#### Fixes

-   fixed `value_flags` not being preserved correctly when inserting into tables and arrays (#108) (@LebJe)
-   fixed `toml::value::flags()` not being cleared when `std::move`-ing a value
-   fixed error in README (#195) (@andrewkcorcoran)
-   fixed compiler error when using NVCC (#198) (@thompsonnoahe)
-   fixed `noexcept(...)` sometimes being incorrectly derived on `for_each()`
-   fixed `for_each()` compilation error on GCC &lt;= 7 (#197) (@sagi-ottopia, @damirbarr)
-   fixed `FLT_RADIX` check getting broken by Intel MKL headers (#202) (@iago-lito)
-   fixed keys containing `\t` incorrectly formatting as bare keys (@jasmine-zhu, @arp242)
-   fixed keys containing `\t` and `\n` not round-tripping correctly (@arp242)

#### Additions

-   added support for using enums with `value_or()`

#### Changes:

-   renamed header files to have `.hpp` extension (`toml.h` is still present for backwards-compatibility)

#### Build system:

-   fixed meson builds with `-Ddefault_library=static` having hidden symbols on GNU compilers (#201) (@vlad0x00)
jperkin pushed a commit that referenced this pull request Oct 23, 2023
This is the biggest update ever, with 36 new features, 24 bug fixes,
and 3 performance improvements.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Overview of changes in gnome-calculator 3.38.0

Overview of changes in gnome-calculator 3.37.92

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

Overview of changes in gnome-calculator 3.36.0

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

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

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

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

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

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

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

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

Support for Python 3.12 (#204)

* Fix for Python 3.12
* Getting rid of Python 3.7, since it's not supported anymore.
* Precommit hooks' autoupdate.
* Disabling `aiohttp` for testing Python 3.12.

3.11.1

Replace aiohttp with httpx for a few tests by @mindflayer in #197
Fix for urllib2>=2 by @mindflayer in #201

3.11.0


Migrating the HTTP[S] mock from relying on http-parser to httptools.

Never discovered the root cause for the failing tests with
aiohttp/Python 3.11 (first time ever I added @pytest.mark.xfail
to a few tests). Same test works with httpx, so I suspect it's
related to a client issue. I'll probably migrate to httpx as
the reference client for testing async/await code.
jperkin pushed a commit that referenced this pull request Dec 18, 2023
4.18.3 (2023-11-30)
======
- power: Fix inhibition management
- settings: Present window to the user when already opened
- settings: Remove useless g_application_hold/release()
- A review of signal handlers disconnection
- Remove #ifdefs DEBUG
- brightness: Rework min level management
- Refactor XfpmBrightness
- Remove useless logs
- backlight: Adjust some spacing for consistency / readability
- backlight: Return earlier when brightness key event should not be
handled
- backlight: fix "handle display brightness keys" setting
- Simplify brightness level management (Fixes #139)
- Add missing properties for panel plugin settings
- Use same debug function everywhere (V2)
- brightness: Silence more warnings
- Fix previous commit (again)
- Fix previous commit
- Fix g_spawn*_sync() wait status management
- brightness: Fix g_spawn() wait status management
- Silence some more warnings
- Update docs url
- power: Fix memory leak
- settings: Fix hidden widgets when !has_lcd_brightness
- backlight: Fix xfconf warning about cancelled operation
- Lower some warning levels
- Use same debug function everywhere
- Fix upower object management
- plugin: Fix non unreffed objects on finalize
- systray-icon: Fix "floating object" warning on finalize
- systray-icon: Fix "invalid property" warnings
- Suspend system if lock screen fails on lid close (Fixes #209)
- Add energy rate into device details
- power: Fix use of g_hash_table_get_values()
- Fix light locker integration (Fixes #201)
- Add app icon at 64px, 96px, clean up SVG metadata
- Fix description for pending states.
- Translation Updates:
  Albanian, Arabic, Armenian (Armenia), Basque, Belarusian, Bulgarian,
  Catalan, Chinese (China), 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, Kannada, Kazakh, Korean, Lithuanian, Malay,
  Norwegian Bokmål, Occitan (post 1500), Polish, Portuguese,
  Portuguese (Brazil), Romanian, Russian, Serbian, Slovak, Slovenian,
  Spanish, Swedish, Thai, Turkish, Ukrainian
jperkin pushed a commit that referenced this pull request 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 pull request Feb 14, 2024
0.20.5

    Replace non-JSON-standard single-quotes with double-quotes in binding.gyp by @nordlow in #240
    Fixes by @amaanq in #245

0.20.4

not documented

0.20.3

    fix: heredocs with many trailing file redirects by @ahlinc in #197
    fix: don't expose \n rule anchors as visible anonymous nodes by @ahlinc in #198
    fix: restore missed redirect field by @ahlinc in #200
    fix: alias simple_heredoc_body to heredoc_body by @ahlinc in #201
jperkin pushed a commit that referenced this pull request Feb 14, 2024
v0.20.1

What's Changed

    Switch to GitHub Actions CI. by @patrickt in #166
    Add the same PR template as for tree-sitter-javascript by @mjambon in #169
    Fixed CRLF behavior for tests by @ahelwer in #188
    Fix CRLF behavior mismatch during error recovery by @ahelwer in #189
    Endless methods by @aibaars in #190
    Add forwarded parameters/arguments by @aibaars in #191
    Disable C++ exceptions when compile for wasm32-wasi by @glebpom in #192
    Pattern matching by @aibaars in #193
    Improve grammar after the introduction of case-in pattern matching by @aibaars in #197
    Add parenthesized_pattern by @aibaars in #198
    Ruby 3.1 features by @aibaars in #201
    Update to Node 16 by @mattmassicotte in #206
    C bindings by @mattmassicotte in #199
    Parser improvements by @aibaars in #207
    CI: use windows-2019 for now by @aibaars in #209
    Add named rules for the various call operators by @aibaars in #211
    Update Makefile by @mattmassicotte in #213
    Allow newer tree-sitter upstream library. by @patrickt in #215
    Bump tree-sitter version to 0.20 by @hendrikvanantwerpen in #214
    Fix parse error in 'foo! if condition' by @aibaars in #216
    Parser improvements: != operator and key: [line_break] by @aibaars in #220
    Some improvements to the parser by @aibaars in #222
    Wrap class, module, method, and block bodies in a named node by @npezza93 in #224
    Parser improvments: quoted heredocs and short-hand interpolations by @aibaars in #225
    Add body field for end-less methods by @aibaars in #226
    Swift bindings by @mattmassicotte in #227
    fix: rename reserved word “arguments” by @drwpow in #229
    Bump versions in #208
    Anonymous (hash) splat arguments by @aibaars in #233
    One-line pattern matching by @aibaars in #194
    Scanner: do not skip LINE_BREAKs before .. and ... by @aibaars in #238
    Fix non-termination in parser by @aibaars in #239
    Fix scanning of division vs regex before line ending by @aibaars in #246
    Fix 'case' with newlines before expression by @aibaars in #247
jperkin pushed a commit that referenced this pull request Feb 20, 2024
0.0.33

What's Changed

    fix release workflow, corrective release by @woodruffw in #210

0.0.32

What's Changed

    github: add dependabot config for GHA by @woodruffw in #203
    tox: add pip2400 by @woodruffw in #204
    Bump the actions group with 5 updates by @dependabot in #205
    pip_api: don't pass escaped path into _parse_local_package_name by @woodruffw in #208
    prep 0.0.32 by @woodruffw in #209

0.0.31

What's Changed

    Test against pip==22.2 by @di in #152
    Test against pip==22.2.1 by @di in #158
    Test against pip==22.2.2 by @di in #160
    Test against pip==22.3 by @di in #163
    Test against Python 3.11 by @di in #154
    workflows/release: bump gh-action-sigstore-python, update slug by @woodruffw in #161
    Test against pip==22.3.1 by @di in #165
    Add alls-greens configuration by @di in #166
    Contributions from @webknjaz by @di in #172
    Use sdist as a testing source in CI by @webknjaz in #174
    Test against pip==23.0 by @di in #176
    Test against pip==23.0.1 by @di in #178
    Test against pip==23.1 by @di in #180
    Test against pip==23.1.1 by @di in #183
    Test against pip==23.1.2 by @di in #185
    Test against pip==23.2 by @di in #188
    Test against pip==23.2.1 by @di in #190
    Test against pip==23.3 by @di in #192
    Test against pip==23.3.1 by @di in #194
    Test against pip==23.3.2 by @di in #198
    Handle editable projects with pyproject.toml by @di in #200
    Version 0.0.31 by @di in #201
jperkin pushed a commit that referenced this pull request Mar 20, 2024
[0.11.0] - 2024-03-17
Added
    Add log view pane to the TUI (#201)

Changed
    Simplify cargo-tarpaulin installation in CI
    Set up mergify
    Switch to ratatui-splash-screen

Fixed
    Show all the algorithm names (#154)
    Apply clippy suggestions
jperkin pushed a commit that referenced this pull request Aug 24, 2024
[v0.056] - 2024-06-27 16:16:25

Added
- added anchors to U+25CC
- added ﬓﬗﬔﬕﬖ (U+FB14...) (men_now-arm men_xeh-arm men_ech-arm men_ini-arm vew_now-arm men-arm)

Changed

- revert the colorization of U+E800 (the Julia logo), reverting #201. This
minor addition caused a lot of problems with certain terminals and environments,
and the benefits aren’t really worth it.

- redrew the Braille characters (U+2800...) (again)

- redrew U+A690 U+A691

[v0.055] - 2024-05-05 15:34

Added
- U+E800 (the Julia logo) will appear in color in compliant environments, fixes #201
- cv04, a squarer character variant for `l`, fixes #205
- U+AB30 ... U+AB6B (ꬰ ꬱ ꬳ ꬵ ꬶ ꬷ ꬺ ꬻ ꬼ ꭀ ꭁ ꭂ ꭃ ꭄ ꭅ ꭆ ꭇ ꭈ ꭉ ꭊ ꭋ ꭌ ꭍ ꭎ ꭏ ꭐ ꭑ ꭔ ꭕ ꭖ ꭗ ꭘ ꭙ ꭠ ꭡ ꭢ ꭦ ꭧ ꭨ ꭪ ꭫)

Changed
- interrobangs U+203D (‽ ⸘) now use more conventional design (#204)
- daggers redrawn (U+2020 † U+2021 ‡ U+2E4B ⹋) (#198)

Removed
- all CJK half/full width glyphs, fixes #206
    # details of glyphs removed:
    println("uni534D")
    println("uni70B9")
    println("uni3297")
    println("uni3299")
    [println("uni", uppercase(string(c, base=16))) for c in 0x3358:0x3370];
    [println("uni", uppercase(string(c, base=16))) for c in 0xFE10:0xFE1F];
    [println("uni", uppercase(string(c, base=16))) for c in 0xFE30:0xFE4F];
    [println("uni", uppercase(string(c, base=16))) for c in 0xFF00:0xFFEF];

[v0.054] - 2024-03-05

Added
- retro computing symbols: U+2427 ... U+2429, U+1CC00 ... U+1CEAF
    These will be introduced in Unicode v16 this year
    [PDF here)](https://www.unicode.org/L2/L2021/21235r-terminals-supplement.pdf),
    they might need modifying once more information appears...
- supplemental arrows U+1F8B2 ... U+1F8C1
- ss17 replaces Braille Characters with the equivalent Octants (U+1CD00 ... U+1CDE5). It's been suggested that
    octants might be better than Braille glyphs for more detailed graphics (eg see UnicodePlots),
    but this ss doesn't confirm this.

Changed
- Germandbls U+1E9E design improved
- box drawing characters tweaked
- arrows at U+21c4

[v0.053] - 2023-12-26

Added
- improved support for Hebrew (U+0591 -> U+05F4)
- numbers now accept non-spacing marks (such as a dot U+0307 or a hat U+0302) #196
- U+FFFC (fontbakery.com told me I should add it)

Changed
- combining diacriticals U+0305, U+0332, U+0333, U+0336, U+033F now extend across the full width of the glyph, as per Unicode spec

Removed
- soft hyphen (U+00AD) - fontbakery.com told me to remove it

[v0.052] - 2023-11-30

-  (U+F35D) Private Use Area: external link icon: this popular icon never quite made it into Unicode (proposal [here](https://www.unicode.org/L2/L2018/18303-external-link.pdf)) but it's useful.
- added mirrored versions of the non-mirrorable glyphs for BiDi (ie right-to-left): ⅀, ∁, ∂, ∃, ∄, ∑, ∖, √, ∛, ∜, ∝, ∦, ∫, ∬, ∭, ∮, ∯, ∰, ∱, ∲, ∳, ∹, ∻, ∾, ∿, ≀, ≁, ≂, ≄, ≆, ≇, ≈, ≉, ≊, ≋, ≟, ≠, ≢, ⊌, ⊧, ⊪, ⊬, ⊭, ⊮, ⊯, ⊾, ⊿, ⋵, ⋸, ⋹, ⋿, ⌠, ⌡, ⟀, ⟌, ⟓, ⟔, ⦜, ⦝, ⦞, ⦟, ⦢, ⦦, ⦧, ⧂, ⧃, ⧉, ⧎, ⧜, ⧡, ⧣, ⧤, ⧥, ⧴, ⧶, ⧷, ⨊, ⨋, ⨌, ⨍, ⨎, ⨏, ⨐, ⨑, ⨒, ⨓, ⨔, ⨕, ⨖, ⨗, ⨘, ⨙, ⨚, ⨛, ⨜, ⨞, ⨟, ⨠, ⨡, ⨤, ⨦, ⨩, ⨾, ⩗, ⩘, ⩪, ⩫, ⩬, ⩭, ⩯, ⩰, ⩳, ⩴, ⪣, ⫝̸, ⫢, ⫦, ⫳, ⫻, ⫽, 𝛛, 𝜕, 𝝏, 𝞉, 𝟃 (issue #192)
- 点 (U+70B9)
- some missing Latin-C glyphs: Ⱨ (U+2c67), Ⱪ (U+2c69), Ɱ (U+2c6e), Ⱳ (U+2c72), Ⱬ (U+2c6b), ⱸ (U+2c78), ⱶ (U+2c76), ⱨ (U+2c68), ⱪ (U+2c6a), ⱹ (U+2c79), ⱴ (U+2c74), ⱱ (U+2c71), ⱳ (U+2c73), ⱬ (U+2c6c)

Changed
- modified ᲁ, ᲅ (issue #193)
- modified precedence characters so that they look a bit different from ordinary operators ≺, ≻, ≼, ≽, ≾, ≿, ⋨, ⋩, ⪯, ⪰, ⪱, ⪲, ⪳, ⪴, ⪵, ⪶, ⪷, ⪸, ⪹, ⪺ (issue #190)
- modified ᵢ (U+1D62 subscript i) to distinbguish from ₁ (U+2081 subscript 1) on lower resolution displays: dσ_du₁, dσ_duᵢ (issue #184)
- italic l is slightly redesigned to look different from italic 1 (issue #152)
- hopefully fixed diacritics for DIN 91379 (issue #180)
- tweaked consistency of arrows. There appear to be three groups in Unicode:

    U+2B00: ⬀⬁⬂⬃⬄⬅⬆⬇⬈⬉⬊⬋⬌⬍

    U+2B95: ⮕

    U+2794: ➔➕➖➘➙➚➛➜➝➞➟➠➡➢➣➤➥➦➧➨➩➪➫➬➭➮➯➱➲➳➴➵➶➷➸➹➺➻➼➽➾⟵⟶⟷⟸⟹⟺⟻⟼⟽⟾⟿

Removed
- U+FB31 -> U+FB35, U+FAB2 have been removed. These were glyphs that emulated NerdFonts' Private Use Area icons, but they shouldn't have been put there originally, since that's not a PUA, but Hebrew, so they've now been removed from NerdFonts and JuliaMono.

[v0.051] - 2023-08-04

Added

Ϣ, ϣ, Ϥ, ϥ, Ϧ, ϧ, Ϩ, ϩ, Ϫ, ϫ, Ϭ, ϭ, Ϯ, ϯ, ֈ, ᛱ, ᛲ, ᛳ, ᛴ, ᛵ, ᛶ, ᛷ, ᛸ, ᶑ, ᷂, ⱶ, ꜩ, ꜻ, ꝏ, ꝑ, ꝓ, ꝗ, ꝧ, ꞁ, Ꞃ, ꞃ, ꞇ, ꞓ, ꞗ, Ꞙ, Ꞡ, ꞡ, Ꞣ, ꞣ, Ꞥ, ꞥ, Ꞧ, ꞩ, Ꟗ, ꟗ, Ꟙ, ꟙ, ꬴ, ꭚ, 𝼀, 𝼁, 𝼂, 𝼃, 𝼄, 𝼅, 𝼆, 𝼇, 𝼈, 𝼉, 𝼊, 𝼋, 𝼌, 𝼍, 𝼏, 𝼐, 𝼑, 𝼒, 𝼓, 𝼔, 𝼕, 𝼖, 𝼗, 𝼘, 𝼙, 𝼚, 𝼛, 𝼜, 𝼝, 𝼞, 𝼦, 𝼧, 𝼨, 𝼩, 𝼪, 🆭

Changed
- glyphs tweaked:

U+00a9 ©, U+014a Ŋ, U+0199 ƙ, U+019e ƞ, U+01a6 Ʀ, U+01ab ƫ, U+024c Ɍ, U+0273 ɳ, U+1dc3 ᷃, U+2103 ℃, U+2109 ℉, U+2117 ℗, U+2c67 Ⱨ, U+33ab ㎫, U+a720 ꜠, U+a750 Ꝑ, U+a752 Ꝓ, U+a756 Ꝗ, U+a796 Ꞗ, U+a7a7 ꞧ, U+a7a8 Ꞩ, U+1f12f 🄯

- some alchemy symbols were updated, to match new designs in Unicode 15
U+1f741 🝁, U+1f747 🝇, U+1f74c 🝌, U+1f74f 🝏, U+1f756 🝖, U+1f758 🝘, U+1f763 🝣, U+1f768 🝨, U+1f76d 🝭, U+1f76e 🝮

- more fiddling to get marks placed correctly. Some progress might be seen...
- the [source files](https://github.com/cormullion/juliamonomaster/) are available in `.glyphs` format instead `.glyphspackage` format. Even Github was complaining about the number of files being changed...

[v0.050] - 2023-06-03

Added
- stylistic set ss16 - smaller parentheses, brackets, and braces (#173)

Changed
- diacritics positioning reworked
- family linking tweaked, hopefully fixing #172

[v0.049] - 2023-05-11

Added
- alternate ASCII tilde in cv03 (#163)
- mastodon logo 0xF0AD1 󰫑
- prohibited sign 0x1f6c7 🛇
- 0x0b83 ஃ, 0xA95f ꥟, 0x115C9 𑗉

Changed

- æ œ (0x0153) now match better in width (#166)
- inverse shapes ◘◙◚◛ (#160)
- fixed hexagram errors (#164)
- Cyrillic Yery with back Yer (0xA650, 0xA651) (#162)
- Greek glyphs 0x1F0D, 0x1F1D, 0x1F2D, 0x1F6D adjusted (#165)
- roman numerals Ⅰ Ⅱ Ⅲ redone
- github workflow tweaked
- Braille 235678 ⣶ 0x28f6 was too high, moved down

[v0.048] - 2023-02-06

Added
- Cyrillic Small Letters (issue #155)
  eg U+1C88 U+A64B
  "ᲀᲁᲂᲃᲄᲅᲆᲇᲈꙊꙋ"
- Kaktovik numerals (U+1D2C0...)
  "𝋀𝋁𝋂𝋃𝋄𝋅𝋆𝋇𝋈𝋉𝋊𝋋𝋌𝋍𝋎𝋏𝋐𝋑𝋒𝋓"

Changed
- Peseta sign U+20A7 ₧ was wrong, fixed
- control codes improved (U+2400...)
- block mosaic glyphs fit better (U+1FB00...) (issue #156)
- various other small nudges and tweaks

[v0.047] - 2022-12-25

Added
- Armenian character set (U+0531 - U+0537)
  ԱԲԳԴԵԶԷԸԹԺԻԼԽԾԿՀՁՂՃՄՅՆՇՈՉՊՋՌՍՎՏՐՑՒՓՔՕՖ
  աբգդեզէըթժիլխծկհձղճմյնշոչպջռսվտրցւփքօֆև
- ss03 stylistic set (Alternative J), a J without a top bit, now has lowercase version
- cv01 character variant draws a three (3) with a round top

Changed
- U+A66E (ꙮ) is updated (very important change :)
- Fraktur S (𝔖) tweaked
- lower case l tweaked

- ⍝ (U+235D) Up shoe jot APL tweaked

- various other small nudges and tweaks

[v0.046] - 2022-08-15

Added
- small updates required for Unicode 15 - mostly transuranian symbols u1f774 ... (🝴🝵🝶🝻🝼🝽🝾🝿🟙) :)
- added Variation Selector support for switching between Cursive and Roundhand

  eg `u1d4d0`, mathematical bold script capital a, returns Cursive A, "𝓐" , but when u1d4d0 is followed by 0xFE01 (VS2), it returns Roundhand A, "𝓐︁"

  This works for Capital letters only. See [this Unicode PDF](https://www.unicode.org/L2/L2020/20275r-math-calligraphic.pdf) for the details.

- added some Arabic glyphs; should be considered place-holders at present
- raised colon alternate for seven segment displays:

```
using Dates
t = now()
h = hour(t)
m = minute(t)
s = second(t)
str = lpad(h, 2, "0") * lpad(m, 2, "0") * lpad(s, 2, "0")
for (n, c) in enumerate(str)
    print(Char(0x1fbf0 + parse(Int, c)))
    n ∈ (2, 4) && print(":")
end

🯱🯴:🯳🯵:🯱🯸
```

Changed
- small nudges and tweaks to many glyphs

Removed
- ligature for '<' and '-'; otherwise it's not possible to write `z<-1`

Added
- Symbols for Legacy Computing: U+1FB00 to 1FBFF mostly characters from old 1980s computers such as Commodores and Sinclairs... (useful? 🤷)
- Tonsky's progress symbols UEE00 to EE0B (tonsky/FiraCode#1324)
- redraw U+237C
- tarot cards
- add halfwidth arrows U+FFE9:U+FFEC ←↑→↓
- checksums

Changed
- updated makie logo U+E831 to 
- small tweaks to various math operators
- fixes for some italic failures
- Math Script Roundhand alternates (U1D4D0 -> U1D4CF) renamed in anticipation of Variation Selectors working one day...
github-actions bot pushed a commit that referenced this pull request Dec 2, 2024
# wk 0.9.4

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

# wk 0.9.3

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

# wk 0.9.2

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

# wk 0.9.1

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

# wk 0.9.0

## Breaking changes

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

## Bugfixes and improvements

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

# wk 0.8.0

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

# wk 0.7.3

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

# wk 0.7.2

* Fix use-after-free warnings.

# wk 0.7.1

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

# wk 0.7.0

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

# wk 0.6.0

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

# wk 0.5.0

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

# wk 0.4.1

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

# wk 0.4.0

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

# wk 0.3.4

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

# wk 0.3.3

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

# wk 0.3.2

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

# wk 0.3.1

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

Successfully merging this pull request may close these issues.

1 participant