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

[darwin] GNU sed?! #52

Closed
baskerville opened this issue Dec 11, 2017 · 1 comment
Closed

[darwin] GNU sed?! #52

baskerville opened this issue Dec 11, 2017 · 1 comment
Assignees

Comments

@baskerville
Copy link

Is there a package that provides a version of GNU sed greater or above 4.0?

@jperkin jperkin self-assigned this Dec 11, 2017
@jperkin
Copy link
Collaborator

jperkin commented Dec 11, 2017

gsed (textproc/gsed), currently at version 4.4.

@jperkin jperkin closed this as completed Dec 11, 2017
jperkin pushed a commit that referenced this issue Dec 11, 2017
Changes:
1.1.0
-----
 * Added the `-r/--limit-rate` command-line option to set a maximum download
   rate
 * Added the `--sleep` command-line option to specify the number of seconds
   to sleep before each download
 * Updated `gelbooru` to no longer use their now disabled API
 * Fixed SWF extraction for `sankaku` (#52)
 * Fixed extraction issues for `hentai2read` and `khinsider`
 * Removed the deprecated `--images` and `--chapters` options
 * Removed the `mangazuki` module
jperkin pushed a commit that referenced this issue Feb 28, 2018
* Add Makefile.common to prepare for geography/py-gdal

Changelog:
= GDAL/OGR 2.2.3 Release Notes =

The 2.2.3 release is a bug fix release.

== Build ==

 * nmake.opt: Ensure PDB is included in release DLL if WITH_PDB requested (#7055)

== Port ==

 * /vsicurl/ and derived filesystems: redirect ReadDir() to ReadDirEx() (#7045)
 * /vsicurl/: enable redirection optimization on signed URLs of Google Cloud Storage. Helps for the PLScenes driver (#7067)
 * /vsicurl/: fix 2.2 regression regarding retrieval of file size of FTP file (#7088)
 * /vsis3/: fix to avoid invalid content to be sent if Write() writes more than 50 MB in a single call (#7058)
 * /vsis3/: fix Seek(Tell(), SEEK_SET) fails if current position is not 0 (#7062)
 * /vsis3/: fix support of non-ASCII characters in keys (#7143, #7146)
 * Fix CPLCopyTree() that doesn't properly on MSVC 2015 (and possibly other platforms) (#7070)

== Algorithms ==

 * RPC transformer: set output coordinates to HUGE_VAL when failure occurs, so that a following coordinate transformation can detect the error too (#7090)
 * GDALGrid() with linear algorithm: avoid assertions/segmentation fault when GDALTriangulationFindFacetDirected() fails (#7101)
 * GDALComputeProximity(): fix int32 overflow when computing distances on large input datasets (#7102)
 * GDALResampleChunk32R_Gauss: fix potential out of bounds access (https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=4056)

== GDAL utilities ==

 * gdalwarp: fix issue with GDALAdjustValueToDataType(Float32, +/- inf)  that didn't preserve infinity, which affected gdalwarp -dstnodata inf (#7097)
 * gdalwarp -crop_to_cutline: reduce number of iterations to find the appropriate densification (#7119)
 * gdal_contour: return with non-0 code if field creation or contour generation failed (#7147)

== GDAL drivers ==

GeoRaster driver:
 * fix int overflow (#6999)

GPKG driver:
 *  speed-up statistics retrieval on non-Byte datasets (#7096)

GRIB driver:
 * if GRIB_ADJUST_LONGITUDE_RANGE config option is set to YES, adjust the longitude range to be close to [-180,180] when possible for products whose left origin is close to 180deg. (#7103)

GSAG driver:
 * avoid assertion on some files with nul characters (https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3726)

GTiff driver:
 * make sure that -co PHOTOMETRIC=RGB overrides the color interpretation of the first 3 bands of the source datasets (#7064)
 * on reading use GeogTOWGS84GeoKey to override the defaults TOWGS84 values coming from EPSG code (#7144)
 * fix potential crash when reading in RGBA mode with internal libtiff (https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=4157)
 * fix potential crash with old-jpeg compression and internal libtiff (https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=4180)

HTTP driver:
 * do not open the underlying dataset with GDAL_OF_SHARED, to avoid later assertion

JP2KAK driver:
 * fix unix build with Kakadu 7.A and later (#7048, #7081)

JPEG driver:
 * Add compatibility with libjpeg-turbo 1.5.2 that honours max_memory_to_use (cf https://github.com/libjpeg-turbo/libjpeg-turbo/issues/162)

JP2OpenJPEG driver:
 * Add support for openjpeg 2.3 (#7074)

netCDF driver:
 * fix raster read as nodata with Byte datatype, (valid_range={0,255} or _Unsigned = True) and negative _FillValue (#7069)
 * be more tolerant on the formatting of standard parallel (space separated instead of {x,y,...} syntax), and accept up to 2/1000 error on spacing to consider a regular grid, to be able to read files provided by the national weather institute of Netherlands (KNMI) (#7086)

PDF driver:
 * round to upper integer when computing a DPI such that page size remains within limits accepted by Acrobat (#7083)

Sentinel2 driver:
 * add support for direct opening of .zip files of new safe_compact L1C products (#7085)

VRT driver:
 * avoid error being emitted when opening a VRTRawRasterBand in a .zip files (#7056)

== OGR core ==

 * Fix OGR[Curve]Polygon::Intersects(OGRPoint*) to return true when point is on polygon boundary (#7091)
 * importFromWkt(): fix import of GEOMETRYCOLLECTION ending with POINT EMPTY or LINESTRING EMPTY (#7128, 2.1 regression)

== OGR utilities ==

 * ogrtindex: fix crash when using -f SQLITE -t_srs XXXX (#7053)

== OGR drivers ==

Amigocloud driver:
 * Fixed data field types (https://github.com/OSGeo/gdal/pull/246)
 * Output list of datasets if dataset id is not provided.
 * Implemented waiting for job to complete on the server. This will improve write to AmigoCloud reliability.
 * Updated documentation.

FileGDB driver:
 * remove erroneous ODsCCreateGeomFieldAfterCreateLayer capability declaration (https://github.com/OSGeo/gdal/pull/247)

GeoJSON driver:
 * ESRIJson: recognize documents that lack geometry fields (#7071)
 * ESRIJson: recognize documents starting with a very long fieldAliases list (#7107)

GeoRSS driver:
 * fix detection of field type (#7108)

GML driver:
 * fix FORCE_SRS_DETECTION=YES effect on feature count and SRS reporting on gml files with .gfs (#7046)
 * do not try to open kml files (#7061)
 * GML geometry parsing: fix robustness issue with gml:PolyhedralSurface
 * do not report gml:name / gml:description of features as layer metadata

GPKG driver:
 * do not try to update extent on gpkg_contents after GetExtent() on a empty layer of a datasource opened in read-only mode

GTM driver:
 * fix null pointer dereference in case of read error (https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=4047)

KML / LIBKML drivers:

MDB driver:
 * fix multi-thread support (https://issues.qgis.org/issues/16039)

MITAB driver
 * do not emit error if the .ind file is missing, just a debug message (#7094)

MySQL:
 * fix build with MariaDB 10.2 (#7079)

OCI driver:
 * initialize in multi-threaded compatible mode to fix QGIS related crashes (https://issues.qgis.org/issues/17311), and fix a few memleaks

ODS driver:
 * avoid using CPLSPrintf() return directly with VSIFOpenL() as the temp buffer might be later recycled (https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=4050)

PLScenes driver:
 * backport data/plscenesconf.json from trunk to add SkySatScene fields

Shapefile driver:
 *  Fix GetFeatureCount() to properly take into account spatial filter when attribute filter also in effect (#7123)

SQLite/Spatialite driver:
 * don't invalidate statistics when running a PRAGMA (https://issues.qgis.org/issues/17424)
 * SQLite dialect: support SQLite 3.21, and LIKE, <>, IS NOT, IS NOT NULL, IS NULL and IS operators (#7149)

XLS driver:
 * workaround opening filenames with incompatible character set on Windows (https://issues.qgis.org/issues/9301)

XLSX driver:
 * fix non working detection of Date/Time fields in some documents (#7073)
 * fix opening of documents with x: namespace in xl/workbook.xml (#7110)
 * avoid using CPLSPrintf() return directly with VSIFOpenL() as the temp buffer might be later recycled (https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=4050)

== SWIG bindings ==

 * map GRA_Max, GRA_Min, GRA_Med, GRA_Q1 and GRA_Q3 (#7153)

== Python bindings ==

 * remove 'from . import _gdal_array' line from gdal_array.py that is not necessary with normal execution of the bindings, and cause errors with PyInstaller (#7044)

= GDAL/OGR 2.2.2 Release Notes =

The 2.2.2 release is a bug fix release.

== Build ==

 * Windows build: always build the PDF driver, even when none of poppler/podofo/pdfium are available, in which case it is write-only (#6938)
 * Compilation fixes on Ubuntu 16.04 with explicit --std=c++03 (#6952)

== Port ==

 * /vsigzip/: make Eof() detect end of stream when receive a Z_BUF_ERROR error. Fixes #6944.
 * Fix memleak in VSIGSFSHandler::GetFileList()
 * /vsigzip/: avoid trying to write a .gz.properties file on a /vsicurl/ file (#7016)
 * Fix registration of /vsicrypt/ file system handler when compiled as a plugin (#7030)
 * CPLStrtod(): parse string like '-1.#IND0000000' as NaN instead of -1 (#7031)

== Algorithms ==

  * Warper: when operating on single-band, skip target pixels whose source center pixel is nodata (2.2 regression, #7001)
  * Warper: avoid blocking when number of rows is 1 and NUM_THREADS > 1 (#7041). Also limit the number of threads so that each one processes at least 65536 pixels

== GDAL core ==

 * GDALGCPsToGeoTransform(): add GDAL_GCPS_TO_GEOTRANSFORM_APPROX_OK=YES and GDAL_GCPS_TO_GEOTRANSFORM_APPROX_THRESHOLD=threshold_in_pixel configuration option (#6995)
 * Fix issue with GDALProxyRasterBand::FlushCache() not flushing everything required (#7040)
 * RawDataset::IRasterIO(): don't assume all bands are RawRasterBand

== GDAL utilities ==

 * gdal2tiles.py: fix GDAL 2.2 regression where tilemapresource.xml was no longer generated (#6966)
 * gdal_translate/DefaultCreateCopy(): do not destroy target file in case of failed copy wen using -co APPEND_SUBDATASET=YES (#7019)
 * gdal_translate: make -b mask[,xx] use the appropriate band data type (#7028)

== GDAL drivers ==

GeoRaster driver:
 * add support for GCP (#6973)

GPKG driver:
 * do not error out if extent in gpkg_contents is present but invalid (#6976)
 * fix opening subdatasets with absolute filenames on Windows (https://issues.qgis.org/issues/16997)
 * fix possible assertion / corruption when creating a raster GeoPackage (#7022)

GSAG driver:
 * fix reading issue that could cause a spurious 0 value to be read and shift all following values (#6992)

GTiff driver:
 * fix reading subsampled JPEG-in-TIFF when block height = 8 (#6988)
 * when reading a COMPD_CS (and GTIFF_REPORT_COMPD_CS=YES), set the name from the GTCitationGeoKey (#7011)

GTX driver:
 * do not emit error when opening with GDAL_PAM_ENABLED=NO (#6996)

HF2 driver:
 * fix reading tiles that are 1-pixel wide (2.1 regression, #6949)

IDRISI driver:
 * Fix memleak in IDRISI Open()

ISIS3 driver:
 * make sure that -co USE_SRC_HISTORY=NO -co ADD_GDAL_HISTORY=NO results in remove of History section (#6968)
 * fix logic to initialize underlying GeoTIFF file in IWriteBlock(), and implement Fill() (#7040)

JPEG2000 driver:
 * Fix build failure in C++03 mode on Jasper inclusion in RHEL 6 (#6951)
 * Fix build failure with recent Jasper that no longer define uchar

JP2OpenJPEG driver:
 * Add support for building against OpenJPEG 2.2 (#7002)
 * fix performance issues with small images with very small tile size, such as some Sentinel2 quicklooks (#7012)
 * properly use the opj_set_decode_area() API (#7018)

netCDF driver:
 * avoid vector vs raster variable confusion that prevents reading Sentinel3 datasets, and avoid invalid geolocation array to be reported (#6974)

PDF driver:
 * add support for Poppler 0.58 (#7033)

PDS driver:
 * fix parsing of labels with nested list constructs (2.2 regression, #6970)

SRTMHGT driver:
 * recognizes the .hgt.gz extension (#7016)

VRT driver:
 * avoid stack buffer read overflow with complex data type and scale = 0. (oss-fuzz#2468)
 * fix uninitialized buffer in areas without sources when using non pixel packed spacing (#6965)
 * Warped VRT: correctly take into account cutline for implicit overviews; also avoid serializing a duplicate CUTLINE warping options in warped .vrt (#6954)
 * Warped VRT: fix implicit overview when output geotransform is not the same as the transformer dst geotransform (#6972)
 * fix IGetDataCoverageStatus() in the case of non-simple sources, which unbreaks gdalenhance -equalize (#6987)

== OGR core ==

 * OGRCompondCurve::addCurveDirectly(): try reversing non contiguous curves (for GML/NAS)
 * OGR API SPY: fix the way we map dataset handles to variable name, to avoid invalid reuses of variable still active
 * OGRParseDate(): avoid false-positive time detection, in particular for GeoJSON (#7014)
 * OGRCurve::get_isClosed(): do not take into account M component (#7017)
 * OGRLineString::setPoint() and addPoint() with a OGRPoint* argument. properly takes into account ZM, Z and M dimensions (#7017)

== OGRSpatialReference ==

 * Fix OGRSpatialReference::IsSame() to return FALSE when comparing EPSG:3857 (web_mercator) and EPSG:3395 (WGS84 Mercator) (#7029)
 * importFromProj4(): implement import of Hotine Oblique Mercator Two Points Natural Origin, and fix OGRSpatialReference::Validate() for that formulation (#7042)

== OGR utilities ==

 * ogr2ogr: fix small memory leak when using -limit switch
 * ogr2ogr: make -f GMT work again (#6993)

== OGR drivers ==

AVCBin driver:
 * fix 2.1 regression regarding attributes fetching (#6950)

DXF driver:
 * fix reading files where INSERT is the last entity and DXF_MERGE_BLOCK_GEOMETRIES is false (#7006)
 * avoid segfault when creating a DXF file with only the 'blocks' layer (#6998)
 * fix potential null pointer dereference in PrepareLineStyle (#7038)

GeoJSON driver:
 * fix 2.2 regression regarding lack of setting the FeatureCollection CRS on feature geometries (fixes https://github.com/r-spatial/sf/issues/449#issuecomment-319369945)
 * prevent infinite recursion when reading geocouch spatiallist with properties.properties.properties (#7036)

GML driver:
 * fix field type detection logic to avoid a field with xsi:nil=true to be identified as a string (#7027)
 * JPGIS FGD v4: fix logic so that coordinate order reported is lon/lat (https://github.com/OSGeo/gdal/pull/241)

GMLAS driver:
 * fix memleak in swe:DataRecord handling
 * avoid false-positive warning about attribute found in document but ignored according to configuration, when the attribute is actually not present in the document but has a default value (#6956)
 * (quick-and-not-prefect) fix to avoid a <xs:any> to prevent all other fields from being set (#6957)
 * get the srsName when set on the srsName of the gml:pos of a gml:Point (#6962)
 * CityGML related fixes: better take into account .xsd whose namespace prefix is not in the document, fix discovery of substitution elements, handle gYear data type (#6975)

GPKG driver:
 * fix feature count after SetFeature() with sqlite < 3.7.8 (#6953)
 * do not take into account gpkg_contents for the extent of vector layers when it is present but invalid (#6976)
 * fix logic to detect FID on SQL result layer when several FID fields are selected (#7026)

KML / LIBKML drivers:
 * read documents with an explicit kml prefix (#6981)

MSSQLSpatial driver:
 * fix issues on x64 (#6930)
 * properly format DELETE statement with schema (#7039)

OCI driver:
 * check view with unquoted table name (#5552)

OpenFileGDB driver:
 * properly read GeneralPolygon with M component whose all values are set to NaN (#7017)

OSM driver:
 * increase string buffer for osm XML files (#6964)

Shapefile driver:
 * use VSIStatL() in Create() to properly work with /vsimem/ directories (#6991)
 * fix regression affecting GDAL 2.1.3 or later, 2.2.0 or later, when editing the last shape of a file and growing it, and then appending a new shape, which resulted in corruption of both shapes (#7031)

SQLite/Spatialite driver:
 * escape integer primary key column name on table creation (#7007)

== C# bindings ==

 * Implement RasterIO extensions (#6915)

== Python bindings ==

 * fix reference count issue on gdal.VSIStatL() when it returns None, that can cause Python crashes if None refcount drops to zero
 * add C-API to create driver instances for use in SWIG (https://trac.osgeo.org/osgeo4w/ticket/466)

== Security oriented fixes ==

Note: this is only a very partial backport of more extensive fixes done in GDAL trunk. Credit to OSS-Fuzz for all of them. (oss-fuzz#XXXX is a shortcut to
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=XXXX)

* NAS: avoid assertion / null ptr deref and possibly other failures on corrupted files. (oss-fuzz#2366, oss-fuzz#2580)
* NTF: avoid null ptr deref. Related to https://oss-fuzz.com/v2/testcase-detail/6527758899347456
* VSIMemHandle::Read(): avoid unwanted unsigned int overflow that cause a later heap buffer overflow. Fixes https://oss-fuzz.com/v2/testcase-detail/5227283000328192.
* MBTiles: fix use after free. (oss-fuzz#2388)
* netCDF: fix stack buffer overflow when building vector layers from netCDF variables if they don't have the expected number of dimensions. (oss-fuzz#2400)
* DXF: prevent infinite loop / excessive memory allocation on truncated file. (#oss-fuzz#2403)
* DXF: avoid excessive memory allocation. (oss-fuzz#2444)
* XYZ: fix write heap-buffer-overflow (oss-fuzz#2426)
* GTiff: make IGetDataCoverageStatus() properly set the current TIFF directory, and only implement it for 'normal' bands. To avoid heap buffer overflows. (oss-fuzz#2438)
* GTiff: avoid null pointer derefrence when requested implicit overviews on corrupted JPEG-compressed file. (oss-fuzz#2441)
* GTiff: avoid potential issue on corrupted files (oss-fuzz#2481)
* GTiff: don't override member nBlocksPerRow member of GTiffJPEGOverviewBand with unrelated value, in case of single-strip case. (oss-fuzz#3020)
* PCIDSK: for band interleave channel, correctly use pixel_offset in case it is different from pixel_size. (oss-fuzz#2440)
* MITAB: fix skipping of blank lines when reading MIF geometries, and avoid potential very loop loop. Fixes https://oss-fuzz.com/v2/testcase-detail/4516730841858048
* CPLKeywordParser: avoid potential heap buffer overflow read. (oss-fuzz#2706)
* CPLKeywordParser: avoid potential infinite loop. Fixes https://oss-fuzz.com/v2/testcase-detail/5733173726019584
* morphFromESRI(): fixes heap-after-free uses. (oss-fuzz#2864)
* OGR_VRT: fix null pointer dereference on GetExtent() on an invalid layer. (oss-fuzz#3017)
* OGR_VRT: avoid crash on cyclic VRT. (oss-fuzz#3123)
* OSM: avoid potential write heap buffer overflow on corrupted PBF files. (oss-fuzz#3022)
* FAST: fix potential read heap buffer overflow. (oss-fuzz#3025)
* CPG: avoid null pointer dereference on failed open. (oss-fuzz#3136)

= GDAL/OGR 2.2.1 Release Notes =

The 2.2.1 release is a bug fix release.

== Build ==
 * fix compilation without BIGTIFF_SUPPORT (#6890)
 * configure: detect if std::isnan() is available. Helps compilation on some MacOSX setups, combined together --without-cpp11. Refs https://github.com/macports/macports-ports/pull/480
 * fix compilation against ancient Linux kernel headers (#6909)
 * fix detection of 64bit file API with clang 5 (#6912)
 * configure: use .exe extension when building with mingw64* toolchains (fixes #6919)
 * mongoDB: compilation fix on Windows

== Port ==

* /vsicurl/: fix occasional inappropriate failures in Read() with some combinations of initial offset, file size and read request size (#6901)
* Add a VSICurlClearCache() function (bound to SWIG as gdal.VSICurlClearCache()) to be able to clear /vsicurl/ related caches (#6937)

== Algorithms ==

* GDALRasterize(): avoid hang in some cases with all_touched option (#5580)
* gdal_rasterize: fix segfault when rasterizing onto a raster with RPC (#6922)

== GDAL utilities ==

* ogr_merge.py: fix '-single -o out.shp in.shp' case (#6888)

== GDAL drivers ==

AIGRID driver:
  * fix handling on raw 32-bit AIG blocks

ENVISAT driver:
* fix 2.2 regression in initialization of members of MerisL2FlagBand. (#6929)

GeoRaster driver:
 * Fix memory allocation failure (#6884)
 * add support for JP2-F in BLOB compression (corrections on geo-reference) (#6861)

GPKG driver:
 * avoid corruption of gpkg_tile_matrix when building overviews, down to a level where they are smaller than the tile size (#6932)

GTIFF driver:
* Internal libtiff: fix libtiff 4.0.8 regression regarding creating of single strip uncompressed TIFF files (#6924)

netCDF driver:
 * add support for radian and microradian units for geostationnary projection (https://github.com/OSGeo/gdal/pull/220)

NWT_GRC driver:
 * Fix handling of alpha values in GRC color table (#6905)
 * Handle case of 0-len GRC class names (#6907)

VRT driver:
 * speed-up SerializeToXML() in case of big number of bands

XYZ driver:
 * fix 2.2 regression where the driver hangs on some dataset with missing samples (#6934)

== OGR utilities ==

* ogr2ogr/GDALVectorTranslate(): fix crash when using -f PDF -a_srs (#6920)

== OGR drivers ==

GeoJSON driver:
 * ESRIJson: avoid endless looping on servers that don't support resultOffset (#6895)
 * ESRIJson: use 'latestWkid' in priority over 'wkid' when reading 'spatialReference' (https://github.com/OSGeo/gdal/pull/218)
 * GeoJSON writer: accept writing ZM or M geometry by dropping the M component (#6935)

GPKG driver:
 * make driver robust to difference of cases between table_name in gpkg_contents/gpkg_geometry_columns and name in sqlite_master (#6916)

MITAB driver:
 * recognize Reseau_National_Belge_1972 / EPSG:31370 on writing (#6903)

MySQL driver:
 * fix compilation issue with Arch Linux and mariadb 10.1.23 (fixes #6899)

PG driver:
 * do not be confused by a 'geometry' table in a non-PostGIS enabled database (#6896)

PLScenes:
 * remove support for V0. Deprecate V1 API. Only Data V1 is supported ( #6933)

== Perl bindings ==

* Backport the fix to #6142 Install man page according to GDALmake.opt if INSTALL_BASE is set.
* always return something from non-void functions (#6898)

== Python bindings ==

* Accept callback = 0 since SWIG generates it as the default argument of BandRasterIONumPy(). Fixes https://github.com/OSGeo/gdal/pull/219
* Fix 2.2 regression preventing use of callback function in Band.ComputeStatistics() (#6927)

== Security oriented fixes ==

Note: this is only a very partial backport of more extensive fixes done in GDAL trunk. Credit to OSS-Fuzz for all of them (some have been found locally, so no related ticket)

* Fix CPLErrorSetState to ensure it does not write beyond DEFAULT_LAST_ERR_MSG_SIZE and correctly null-terminates last message. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1529.
* Open() and Stat() methods of a number of virtual file systems: check that the filename starts with the full prefix. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1543.
* VRT pixel functions: fix crash with 'complex' when source count is < 2. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1549
* OpenAIR: fix potential out-of-buffer read if we need to ingest 30000 bytes
* Several fixes in importFromWkb() and importFromWkt()
* GDALDataset and GDALRasterBand::ReportError(): fix crash if dataset name has a % character
* NASAKeywordHandler::SkipWhite(): fix out of bounds read
* MITAB: ParseTABFileFields(): fix out of bounds read.
* MITAB: ParseMIFHeader(): fix memory leak and out-of-bounds read on corrupted file
* MITAB: ParseMIFHeader(): fix memory leaks on corrupted files
* MITAB: avoid potentially veryyyy long loop when stroking arcs. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1644
* MITAB: avoid heap-buffer-overflow in MITABCoordSys2TABProjInfo(). Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1653
* OSARDataset::Open(): fix crash if pOpenInfo->fpL == NULL. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1565
* OGRESRIJSONReadPolygon(): fix crash in error code path
* DXF: prevent null ptr deref and out-of-bounds read on corrupted file
* DXF: TranslateSPLINE(): sanitize integer values read to avoid int overflow. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1843
* KML::unregisterLayerIfMatchingThisNode(): use memmove() instead of memcpy(). Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1580
* KML: fix crash on weird structure with recursively empty folders. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1591
* KML: fix null ptr dereference on corrupted file. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1634
* OGRCurveCollection::importBodyFromWkb(): fix potential crash if the curve in the collection has not the same dimension has the collection dimension. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1584
* OGRCompoundCurve::importFromWkb(): avoid potential stack overflow. Fixes https://oss-fuzz.com/v2/testcase-detail/5192348843638784
* TIGER: fix potential stack buffer overflows. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1586 and 2020
* TIGER: avoid potential infinite looping. Fixes https://oss-fuzz.com/v2/testcase-detail/4724815883665408
* VFK: avoid out-of-bounds read. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1596 and 2074
* CPLHexToBinary(): avoid reading outside of hex2char array on on-ASCII input. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1606
* OGR PDS: avoid int32 overflow. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=160
* GeoRSS: fix null pointer dereference on corrupted files. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1611.
* VSIArchiveFilesystemHandler::SplitFilename(): improve performance. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1597
* OGRGeometryFactory::organizePolygons(): fix crash on empty polygons. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1620
* JML: fix null pointer dereference on invalid files. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1622
* Shape: prevent null ptr deref on truncated MultiPointM geometry. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1638
* /vsisubfile/: avoid Tell() to return negative values. And make VSIIngestFile() more robust to unsigned overflow. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1642
* GTM: avoid useless recursive opening of files when provided with a gzip-compressed input. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1650
* GTiff: fix heap-buffer-overflow. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1677
* GTiff: avoid heap-buffer-overfow on corrupted State Plane citation. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2050
* GTiff: avoid potential stack buffer overflow on corrupted Imagine citation. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2105
* GTiff: prevent heap overflow and fix reading of multi-band band-interleaved 16/24-bit float datasets. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2264
* GTiff: fix potential infinite loop when parsing some 24-bit float denormalized numbers. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2315
* Internal libjson-c: fix stack buffer overflow. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1682
* ILI1/ILI2: fix null pointer dereference when opening filename ','. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1689
* ILI1: fix various crashes on corrupted files (including, but not limited to, https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1760, 1784, 1926)
* ILI2: use proper cast operator. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1813
* ILI2: fix null pointer dereference on corrupted files. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1993
* ILI2: fix crash due to unhandled exception. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2191
* morphFromESRI(): fix heap-use-after-free issue. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1690
* morphFromESRI(): prevent potential null pointer dereference. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1783 and 1867
* SEGUKOOA: fix inversion of leap year that caused index-out-of-bound reading on day 366 of leap years (2.2 regression). Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1698
* CPLParseXMLString(): make it error out on invalid XML file even under CPLTurnErrorIntoWarning() mode. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1703.
* GML / NAS: fix memory leak in error code path, and potential heap-buffer-read-overflow
* NTF: fix various issues: heap & stack buffer-overflow, null ptr derefs, memory leaks. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1819 , 1820 , 1823, 1833, 1854, 1862, 1910, 1931, 1961, 1990, 1995, 1996, 2003, 2033, 2052, 2077, 2084, 2103, 2130, 2135, 2146, 2166, 2185, 2187, https://oss-fuzz.com/v2/testcase-detail/4696417694121984
* OGRCreateFromMultiPatch(): avoid assertion on NaN coordinates. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1930
* GXF: validate nGType to avoid later out-of-bound read in GXFReadRawScanlineFrom(). Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1975
* GXF: fix int overflow and avoid excessive memory allocation. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2207
* DGN: prevent heap-buffer-overflow read. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1988
* COSAR: fix leak of file descriptor. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2019
* ISO8211: prevent stack buffer overflow. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2022
* WEBP: prevent int32 overflow and too large memory allocation. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2059
* IRIS: fix heap-buffer-overflow in some cases of nDataTypeCode. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2069
* E00GRID: avoid heap and stack buffer overflows. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2090 , 2182, 2237, 2327
* VICAR: fix null pointer dereference. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2116
* VICAR: avoid use-after-free and heap-buffer-overflow. Fixes https://oss-fuzz.com/v2/testcase-detail/4825577427042304
* VICAR: fix potential endless loop on broken files. Fixes https://oss-fuzz.com/v2/testcase-detail/6261508172414976
* REC: fix nullptr deref
* REC: fix potential stack buffer overflow. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2165
* GDALGetJPEG2000Structure() / DumpGeoTIFFBox(): fix memory leak.
* DumpGeoTIFFBox(): reject GeoJP2 boxes with a TIFF with band_count > 1
* DumpJPK2CodeStream(): avoid potentially very long loop
* GDALGetJPEG2000Structure(): avoid bad performance on corrupted JP2 boxes. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2214
* GPKG: fix potential heap-buffer overflow in GPkgHeaderFromWKB(). Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2150
* GPKG: fix potential null ptr deref. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2240
* GPKG: avoid potential division by zero. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2253
* SEGUKOOA: prevent read beyond end of buffer. (#6921)
* SRP: avoid potential stack buffer overflow and excessive memory allocation/processing time
* CPLUnixTimeToYMDHMS(): avoid potential infinite loop. Fixes https://oss-fuzz.com/v2/testcase-detail/4949567697059840
* Selafin: fix double frees. Fixes https://oss-fuzz.com/v2/testcase-detail/6429713822121984
* CEOS: fix heap buffer overflow. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2259
* CEOS: fix memleak in error code path. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2279
* FAST: avoid null pointer dereference. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2290
* netCDF: avoid stack buffer overflow. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2302

GDAL/OGR 2.2.0 Release Notes =

== In a nutshell... ==

 * New GDAL/raster drivers:
   - DERIVED driver: read-support. Expose subdatasets in a a new metadata domain, called DERIVED_SUBDATASETS
   - JP2Lura driver: read/create support for JPEG-2000 images using Luratech JP2 Library
   - PRF: add read-only support for PHOTOMOD PRF file format driver (github #173)
   - RRASTER driver: read-support .grd/.gri files handled by the R 'raster' package (#6249)
 * New OGR/vector drivers:
    - CAD driver: read support for DWG R2000 files (GSoC 2016 project)
    - DGNv8 driver: read-write support for DGN 8.0 format (using Teigha ODA libraries)
    - GMLAS driver: read-write support. XML/GML driver driven by Application Schemas.
 * New utility script: ogrmerge.py to merge several vector datasets into a single one
 * New /vsigs/ and /vsigs_streaming/ virtual file systems to read Google Cloud Storage non-public files
 * Significantly improved drivers:
  - NWT_GRD: write support (#6533)
  - FileGDB/OpenFileGDB: add support to read curve geometries (#5890)
  - VRT derived band: add the capability to define pixel functions in Python
  - Add read support for RasterLite2 coverages in SQLite driver
  - GPKG: implement tiled gridded elevation data extension
  - ISIS3: add write support and improve read support
 * RFC 63: Add GDALRasterBand::GetDataCoverageStatus() and implement it in GTiff and VRT drivers
        https://trac.osgeo.org/gdal/wiki/rfc63_sparse_datasets_improvements
 * RFC 64: Triangle, Polyhedral surface and TIN
        https://trac.osgeo.org/gdal/wiki/rfc64_triangle_polyhedralsurface_tin
    ==> this RFC introduces potential backward incompatible behaviour.
        Consult MIGRATION_GUIDE.txt
 * RFC 66: OGR random layer read/write capabilities
        https://trac.osgeo.org/gdal/wiki/rfc66_randomlayerreadwrite
 * RFC 67: add null field state for OGR features, in addition to unset fields
        https://trac.osgeo.org/gdal/wiki/rfc67_nullfieldvalues
    ==> this RFC introduces potential backward incompatible behaviour.
        Consult MIGRATION_GUIDE.txt
 * Upgrade to EPSG database v9.0 (#6772)
 * Python bindings: Global Interpreter Lock (GIL) released before entering GDAL native code (for all, in GDAL module and a few ones in ogr like ogr.Open())
 * Continued major efforts on sanitization of code base
 * Remove bridge and vb6 bindings (#6640)
 * GNM built by default

== Installed files ==

 * Removed: data/s57attributes_aml.csv data/s57attributes_iw.csv data/s57objectclasses_aml.csv data/s57objectclasses_iw.csv
 * Added plscenesconf.json, gmlasconf.xsd

== Backward compatibility issues ==

See MIGRATION_GUIDE.TXT

== GDAL/OGR 2.2.0 - General Changes ==

Build(Unix):
 * improve detection of packaged libfyba (SOSI) --with-sosi, as in Ubuntu 16.04 (#6488)
 * Sort files in static library to make the build reproducible (#6520)
 * fix libqhull include path when it is /usr/local/include/libqhull (#6522)
 * FileGDB: compilation fix on Linux in C++11 mode
 * configure: make pdfium detection not fail if there are just warnings. And make configure fail if --with-pdfium was required but failed (#6653)
 * Make ./configure --with-xerces fail if not found
 * Don't install script documentation in INST_BIN (github #157)
 * configure: auto-detect webp without requiring explicit --with-webp
 * configure: use pkg-config for HDF5 detection so that works out of the box on recent Ubuntu
 * auto-detect JDK 8 on Ubuntu
 * MDB: allow libjvm.so to be dlopen'd with --with-jvm-lib=dlopen (Unix only, github #177)
 * configure: delete temporary directories on the mac
 * configure: make sure --with-macosx-framework is correctly defined
 * configure: error out if --with-ld-shared is specified (#6769)
 * configure: remove bashism.
 * configure: fix --without-mrf (#6811)
 * configure: take into account CXXFLAGS and LDFLAGS in a few more cases (cryptopp, podofo, libdap)
 * Vagrant: all lxc and Hyper-V provider support; use vagrant-cachier for package caching
 * configure: update DWG support to work with Teigha libraries
 * Internal libgeotiff: hide symbols in --with-hide-internal-symbols mode
 * Shape: do not export Shapelib symbols for builds --with-hide-internal-symbols (#6860)

Build(Windows):
 * Try to avoid confusion between libqhull io.h and mingw own io.h (#6590)
 * update script to generate most recent Visual C++ project files (#6635)
 * fix broken and missing dependencies in makefile.vc
 * add a way to use an external zlib (github #171)
 * Rename makegdal_gen.bat to generate_vcxproj.bat
 * generate_vcxproj.bat: Set correct value of PlatformToolset property based on specified Visual C++ version. Add NMAKE command line parameters: MSVC_VER based on specified Visual C++ version, DEBUG=1 WITH_PDB=1 to Debug build configuration.
 * generate_vcxproj.bat: generate project for autotest/cpp (Ticket #6815)
* Add WIN64=1 to NMAKE command line options.
 * Add HDF4_INCLUDE option (#6805)
 * Add MSVC compiler option /MP to build with parallel processes.
 * Add ZLIB_LIB missing from EXTERNAL_LIBS

Build(all):
 * make Xerces 3.1 the minimal version
 * drop support for PostgreSQL client library older than 7.4, or non security maintained releases older than 8.1.4, 8.0.8, 7.4.13, 7.3.15

== GDAL 2.2.0 - Overview of Changes ==

Port:
 * Export VSICreateCachedFile() as CPL_DLL so as to enable building JP2KAK as a plugin
 * Added possibility to find GDAL_DATA path using INST_DATA definition without execution GDALAllRegister if GDAL_DATA placed in version named directory on Linux (#6543)
 * Unix filesystem: make error message about failed open to report the filename (#6545)
 * File finder: Remove hardcoded find location (/usr/local/share/gdal) (#6543)
 * Win32 filesystem handler: make Truncate() turn on sparse files when doing file extension
 * Add VSIFGetRangeStatusL() and VSISupportsSparseFiles()
 * GDAL_NO_HARDCODED_FIND compilation option (#6543,#6531) to block file open calls (for sandboxed systems)
 * Add VSIMallocAligned(), VSIMallocAlignedAuto() and VSIFreeAligned() APIs
 * /vsizip / /vsitar: support alternate syntax /vsitar/{/path/to/the/archive}/path/inside/the/tar/file so as not to be dependent on file extension and enable chaining
 * Optimize opening of /vsitar/my.tar.gz/my_single_file
 * /vsizip/ : support creating non-ASCII filenames inside a ZIP (#6631)
 * VSI Unix file system: fix behaviour in a+ mode that made MRF caching not work on Mac and other BSD systems
 * Fix deadlock at CPLWorkerThreadPool destruction (#6646)
 * Windows: honour GDAL_FILENAME_IS_UTF8 setting to call LoadLibraryW() (#6650)
 * CPLFormFilename(): always use / path separator for /vsimem, even on Windows
 * /vsimem/: add trick to limit the file size, so as to be able to test how drivers handle write errors
 * /vsimem/: fix potential crash when closing -different- handles pointing to the same file from different threads (#6683)
 * CPLHTTPFetch(): add MAX_FILE_SIZE option
 * CPLHTTPFetch(): add a CAINFO option to set the path to the CA bundle file. As a fallback also honour the CURL_CA_BUNDLE and SSL_CERT_FILE environment variables used by the curl binary, which makes this setting also available for /vsicurl/, /vsicurl_streaming/, /vsis3/ and /vsis3_streaming/ file systems (#6732)
 * CPLHTTPFetch(): don't disable peer certificate verification when doing https (#6734)
 * CPLHTTPFetch(): cleanly deal with multiple headers passed with HEADERS and separated with newlines
 * CPLHTTPFetch(): add a CONNECTTIMEOUT option
 * CPLHTTPFetch(): add a GDAL_HTTP_HEADER_FILE / HEADER_FILE option.
 * CPLHTTPSetOptions(): make redirection of POST requests to still be POST requests after redirection (#6849)
 * /vsicurl/: take CPL_VSIL_CURL_ALLOWED_EXTENSIONS into account even if GDAL_DISABLE_READDIR_ON_OPEN is defined (#6681)
 * /vsicurl/: get modification time if available from GET or HEAD results
 * /vsis3/: add a AWS_REQUEST_PAYER=requester configuration option (github #186)
 * CPLParseXMLString(): do not reset error state
 * Windows: fix GetFreeDiskSpace()
 * Fix GetDiskFreeSpace() on 32bit Linux to avoid 32bit overflow when free disk space is above 4 GB (#6750)
 * Fix CPLPrintUIntBig() to really print a unsigned value and not a signed one
 * Add CPL_HAS_GINT64, GINT64_MIN/MAX, GUINT64_MAX macros (#6747)
 * Add CPLGetConfigOptions(), CPLSetConfigOptions(), CPLGetThreadLocalConfigOptions() and CPLSetThreadLocalConfigOptions() to help improving compatibility between osgeo.gdal python bindings and rasterio (related to https://github.com/mapbox/rasterio/pull/969)
 * MiniXML serializer: fix potential buffer overflow.

Core:
 * Proxy dataset: add consistency checks in (the unlikely) case the proxy and underlying dataset/bands would not share compatible characteristics
 * GDALPamDataset::TryLoadXML(): do not reset error context when parsing .aux.xml
 * PAM/VRT: only take into account <Entry> elements when deserializing a <ColorTable>
 * GDALCopyWords(): add fast copy path when src data type == dst data type == Int16 or UInt16
 * GetVirtualMemAuto(): allow USE_DEFAULT_IMPLEMENTATION=NO to prevent the default implementation from being used
 * Nodata comparison: fix test when nodata is FLT_MIN or DBL_MIN (#6578)
 * GetHistogram() / ComputeRasterMinMax() / ComputeStatistics(): better deal with precision issues of nodata comparison on Float32 data type
 * Fast implementation of GDALRasterBand::ComputeStatistics() for GDT_Byte and GDT_UInt16 (including use of SSE2/AVX2)
 * Driver manage: If INST_DATA is not requested, do not check the GDAL_DATA variable.
 * Make sure that GDALSetCacheMax() initialize the raster block mutex (#6611)
 * External overview: fix incorrect overview building when generating from greater overview factors to lower ones, in compressed and single-band case (#6617)
 * Speed-up SSE2 implementation of GDALCopy4Words from float to byte/uint16/int16
 * Add SSE2 and SSSE3 implementations of GDALCopyWords from Byte with 2,3 or 4 byte stride to packed byte
 * GDALCopyWords(): SSE2-accelerated Byte->Int32 and Byte->Float32 packed conversions
 * Fix GDALRasterBand::IRasterIO() on a VRT dataset that has resampled sources, on requests such as nXSize == nBufXSize but nXSize != dfXSize
 * GDALRasterBand::IRasterIO(): add small epsilon to floating-point srcX and srcY to avoid some numeric precision issues when rounding.
 * Add GDALRasterBand::GetActualBlockSize() (#1233)
 * Fix potential deadlock in multithreaded writing scenarios (#6661)
 * Fix thread-unsafe behaviour when using GetLockedBlock()/MarkDirty()/DropLock() lower level interfaces (#6665)
 * Fix multi-threading issues in read/write scenarios (#6684)
 * Resampled RasterIO(): so as to get consistent results, use band datatype as intermediate type if it is different from the buffer type
 * Add GDALIdentifyDriverEx() function (github #152)
 * GDALOpenInfo: add a papszAllowedDrivers member and fill it in GDALOpenEx()
 * GDALDefaultOverviews::BuildOverviews(): improve progress report
 * Average and mode overview/rasterio resampling: correct source pixel computation due to numerical precision issues when downsampling by an integral factor, and also in oversampling use cases (github #156)
 * Overview building: add experimental GDAL_OVR_PROPAGATE_NODATA config option that can be set to YES so that a nodata value in source samples will cause the target pixel to be zeroed. Only implemented for AVERAGE resampling right now
 * GDALValidateOptions(): fix check of min/max values
 * GMLJP2 v2: update to 2.0.1 corrigendum and add capability to set gml:RectifiedGrid/gmlcov:rangeType content. Set SRSNAME_FORMAT=OGC_URL by default when converting to GML. Add gml:boundedBy in gmljp2:GMLJP2RectifiedGridCoverage
 * GMLJP2 v2: ensure KML root node id unicity when converting annotations on the fly. When generating GML features, make sure that PREFIX and TARGET_NAMESPACE are unique when specifying several documents.

Algorithms:
 * RPC transformer: speed-up DEM extraction by requesting and caching a larger buffer, instead of doing many queries of just a few pixels that can be costly with VRT for example
 * GDALDeserializeRPCTransformer(): for consistency, use the same default value as in GDALCreateRPCTransformer() if <PixErrThreshold> is missing (so use 0.1 instead of 0.25 as before)
 * TPS solver: when Armadillo fails sometimes, fallback to old method
 * GDALCreateGenImgProjTransformer2(): add SRC_APPROX_ERROR_IN_SRS_UNIT, SRC_APPROX_ERROR_IN_PIXEL, DST_APPROX_ERROR_IN_SRS_UNIT, DST_APPROX_ERROR_IN_PIXEL, REPROJECTION_APPROX_ERROR_IN_SRC_SRS_UNIT and REPROJECTION_APPROX_ERROR_IN_DST_SRS_UNIT transformer options, so as to be able to have approximate sub-transformers
 * Fix GDAL_CG_Create() to call GDALContourGenerator::Init() (#6491)
 * GDALContourGenerate(): handle the case where the nodata value is NaN (#6519)
 * GDALGridCreate(): fix hang in multi-threaded case when pfnProgress is NULL or GDALDummyProgress (#6552)
 * GDAL contour: fix incorrect oriented contour lines in some rare cases (#6563)
 * Warper: multiple performance improvements for cubic interpolation and uint16 data type
 * Warper: add SRC_ALPHA_MAX and DST_ALPHA_MAX warp options to control the maximum value of the alpha channel. Set now to 65535 for UInt16 (and 32767 for Int16), or to 2^NBITS-1. 255 used for other cases as before
 * Warper: avoid undefined behaviour when doing floating point to int conversion, that may trigger exception with some compilers (LLVM 8) (#6753)
 * OpenCL warper: update cubicConvolution to use same formula as CPU case (#6664)
 * OpenCL warper: fix compliance to the spec. Fix issues with NVidia opencl (#6624, #6669)
 * OpenCL warper: use GPU based over CPU based implementation when possible, use non-Intel OpenCL implementation when possible. Add BLACKLISTED_OPENCL_VENDOR and PREFERRED_OPENCL_VENDOR to customize choice of implementation

Utilities:
 * gdalinfo -json: fix order of points in wgs84Extent.coordinates (github #166)
 * gdalwarp: do not densify cutlines by default when CUTLINE_BLEND_DIST is used (#6507)
 * gdalwarp: when -to RPC_DEM is specified, make -et default to 0 as documented (#6608)
 * gdalwarp: improve detection of source alpha band and auto-setting of target alpha band. Automatically set PHOTOMETRIC=RGB on target GeoTIFF when input colors are RGB
 * gdalwarp: add a -nosrcalpha option to wrap the alpha band as a regular band and not as the alpha band
 * gdalwarp: avoid cutline densification when no transform at all is involved (related to #6648)
 * gdalwarp: fix failure with cutline on a layer of touching polygons (#6694)
 * gdalwarp: allow to set UNIFIED_SRC_NODATA=NO to override the default that set it to YES
 * gdalwarp: fix -to SRC_METHOD=NO_GEOTRANSFORM -to DST_METHOD=NO_GEOTRANSFORM mode (#6721)
 * gdalwarp: add support for shifting the values of input DEM when source and/or target SRS references a proj.4 vertical datum shift grid
 * gdalwarp: fix crash when -multi and -to RPC_DEM are used together (#6869)
 * gdal_translate: when using -projwin with default nearest neighbour resampling, align on integer source pixels (#6610)
 * gdal_translate & gdalwarp: lower the default value of GDAL_MAX_DATASET_POOL_SIZE to 100 on MacOSX (#6604)
 * gdal_translate: avoid useless directory scanning on GeoTIFF files
 * gdal_translate: make "-a_nodata inf -ot Float32" work without warning
 * gdal_translate: set nodata value on vrtsource on scale / unscale / expand cases (github #199)
 * GDALTranslate(): make it possible to create a anonymous target VRT from a (anonymous) memory source
 * gdaldem: speed-up computations for src type = Byte/Int16/UInt16 and particularly for hillshade
 * gdaldem hillshade: add a -multidirectional option
 * GDALDEMProcessing() API: fix -alt support (#6847)
 * gdal_polygonize.py: explicitly set output layer geometry type to be polygon (#6530)
 * gdal_polygonize.py: add support for -b mask[,band_number] option to polygonize a mask band
 * gdal_rasterize: make sure -3d, -burn and -a are exclusive
 * gdal_rasterize: fix segfaults when rasterizing into an ungeoreferenced raster, or when doing 'gdal_rasterize my.shp my.tif' with a non existing my.tif (#6738)
 * gdal_rasterize: fix crash when rasterizing empty polygon (#6844)
 * gdal_grid: add a smoothing parameter to invdistnn algorithm (github #196)
 * gdal_retile.py: add a -overlap switch
 * gdal2tiles.py: do not crash on empty tiles generation (#6057)
 * gdal2tiles.py: handle requested tile at too low zoom to get any data (#6795)
 * gdal2tiles: fix handling of UTF-8 filenames (#6794)
 * gdal2xyz: use %d formatting for Int32/UInt32 data types (#6644)
 * gdal_edit.py: add -scale and -offset switches (#6833)
 * gdaltindex: emit warning in -src_srs_format WKT when WKT is too large
 * gdalbuildvrt: add a -oo switch to specify dataset open options

Python samples:
 * add validate_cloud_optimized_geotiff.py
 * add validate_gpkg.py

Multi-driver:
 * Add GEOREF_SOURCES open option / GDAL_GEOREF_SOURCES config. option to all JPEG2000 drivers and GTiff to control which sources of georeferencing can be used and their respective priority

AIGRID driver:
 * fix 2.1.0 regression when reading statistics (.sta) file with only 3 values, and fix <2.1 behaviour to read them in LSB order (#6633)

AAIGRID driver:
 * auto-detect Float64 when the nodata value is not representable in the Float32 range

ADRG driver:
 * handle north and south polar zones (ZNA 9 and 18) (#6783)

ASRP driver:
 * fix georeferencing of polar arc zone images (#6560)

BPG driver:
* declare GDALRegister_BPG as C exported for building as a plugin (#6693)

DIMAP driver:
 * DIMAP: for DIMAP 2, read RPC from RPC_xxxxx.XML file (#6539)
 * DIMAP/Pleiades metadata reader: take into tiling to properly shift RPC (#6293)
 * add support for tiled DIMAP 2 datasets (#6293)

DODS driver:
 * fix crash on URL that are not DODS servers (#6718)

DTED driver:
 * correctly create files at latitudes -80, -75, -70 and -50 (#6859)

ECW driver:
 * Add option ECW_ALWAYS_UPWARD=TRUE/FALSE  to work around issues with "Downward" oriented images (#6516).

ENVI driver:
 * on closing, pad image file with trailing nul bytes if needed (#6662)
 * add read/write support for rotated geotransform (#1778)

GeoRaster driver:
 * fix report of rotation (#6593)
 * support for JP2-F compression (#6861)
 * support direct loading of JPEG-F when blocking=no (#6861)
 * default blocking increased from 256x256 to 512x512 (#6861)

GPKG driver:
 * implement tiled gridded elevation data extension
 * add VERSION creation option
 * check if transaction COMMIT is successful (#6667)
 * fix crash on overview building on big overview factor (#6668)
 * fix crash when opening an empty raster with USE_TILE_EXTENT=YES
 * fix gpkg_zoom_other registration

GTiff driver:
 * support SPARSE_OK=YES in CreateCopy() mode (and in update mode with the SPARSE_OK=YES open option), by actively detecting blocks filled with 0/nodata about to be written
 * When writing missing blocks (i.e. non SPARSE case), use the nodata value when defined. Otherwise fallback to 0 as before.
 * in FillEmptyTiles() (i.e. in the TIFF non-sparse mode), avoid writing zeroes to file so as to speed up file creation when filesystem supports ... sparse files
 * add write support for half-precision floating point (Float32 with NBITS=16)
 * handle storing (and reading) band color interpretation in GDAL internal metadata when it doesn't match the capabilities of the TIFF format, such as B,G,R ordering (#6651)
 * Fix RasterIO() reported when downsampling a RGBA JPEG compressed TIFF file (#6943)
 * Switch search order in GTIFGetOGISDefn() - Look for gdal_datum.csv before datum.csv (#6531)
 * optimize IWriteBlock() to avoid reloading tile/strip from disk in multiband contig/pixel-interleave layouts when all blocks are dirty
 * fix race between empty block filling logic and background compression threads when using Create() interface and NUM_THREADS creation option (#6582)
 * use VSIFTruncateL() to do file extension
 * optimize reading and writing of 1-bit rasters
 * fix detection of blocks larger than 2GB on opening on 32-bit builds
 * fix saving and loading band description (#6592)
 * avoid reading external metadata file that could be related to the target filename when using Create() or CreateCopy() (#6594)
 * do not generate erroneous ExtraSamples tag when translating from a RGB UInt16, without explicit PHOTOMETRIC=RGB (#6647)
 * do not set a PCSCitationGeoKey = 'LUnits = ...' as the PROJCS citation on reading
 * fix creating an image with the Create() interface with BLOCKYSIZE > image height (#6743)
 * fix so that GDAL_DISABLE_READDIR_ON_OPEN = NO / EMPTY_DIR is properly honoured and doesn't cause a useless directory listing
 * make setting GCPs when geotransform is already set work (with warning about unsetting the geotransform), and vice-versa) (#6751)
 * correctly detect error return of TIFFReadRGBATile() and TIFFReadRGBAStrip()
 * in the YCBCR RGBA interface case, only expose RGB bands, as the alpha is always 255
 * don't check free disk space when outputting to /vsistdout/ (#6768)
 * make GetUnitType() use VERT_CS unit as a fallback (#6675)
 * in COPY_SRC_OVERVIEWS=YES mode, set nodata value on overview bands
 * read GCPs in ESRI <GeodataXform> .aux.xml
 * explicitly write YCbCrSubsampling tag, so as to avoid (latest version of) libtiff to try reading the first strip to guess it. Helps performance for cloud optimized geotiffs
 * map D_North_American_1927 datum citation name to OGC North_American_Datum_1927 so that datum is properly recognized (#6863)
 * Internal libtiff. Resync with CVS (post 4.0.7)
 * Internal libtiff: fix 1.11 regression that prevents from reading one-strip files that have no StripByteCounts tag (#6490)

GRASS driver:
 * plugin configure: add support for GRASS 7.2 (#6785)
 * plugin makefile: do not clone datum tables and drivers (#2953)
 * use Rast_get_window/Rast_set_window for GRASS 7 (#6853)

GRIB driver:
 * Add (minimalistic) support for template 4.15 needed to read Wide Area Forecast System (WAFS) products (#5768)
 * **Partial** resynchronization with degrib-2.0.3, mostly to get updated tables (related to #5768)
 * adds MRMS grib2 decoder table (http://www.nssl.noaa.gov/projects/mrms/operational/tables.php) (github #160)
 * enable PNG decoding on Unix (#5661, github #160)
 * remove explicitly JPEG2000 decompression through Jasper and use generic GDAL code so that other drivers can be triggered
 * fix a few crashes on malformed files

GTX driver:
 * add a SHIFT_ORIGIN_IN_MINUS_180_PLUS_180 open option

HDF4 driver:
 * Fixed erroneous type casting in HDF4Dataset::AnyTypeToDouble() that breaks reading georeferencing and other metadata

HDF5 driver:
 * correct number of GCPs to avoid dummy trailing (0,0)->(0,0,0) and remove +180 offset applied to GCP longitude. Add instead a heuristics to determine if the product is crossing the antimeridian, and a HDF5_SHIFT_GCPX_BY_180 config option to be able to override the heuristics (#6666)

HFA driver:
 * fix reading and writing of TOWGS84 parameters (github #132)
 * export overview type from HFA files to GDAL metadata as OVERVIEWS_ALGORITHM (github #135)
 * make .ige initialization use VSIFTruncateL() to be faster on Windows
 * add support for TMSO and HOM Variant A projections (#6615)
 * Add elevation units read from HFA files metadata (github #169)
 * set binning type properly according to layerType being thematic or not (#6854)

Idrisi driver:
 * use geotransform of source dataset even if it doesn't have a SRS (#6727)
 * make Create() zero-initialize the .rst file (#6873)

ILWIS driver:
 * avoid IniFile::Load() to set the bChanged flag, so as to avoid a rewrite of files when just opening datasets

ISCE driver:
 * fix computation of line offset for multi-band BIP files, and warn if detecting a wrong file produced by GDAL 2.1.0 (#6556)
 * fix misbehaviour on big endian hosts
 * add support for reading and writing georeferencing (#6630, #6634)
 * make parsing of properties case insensitive (#6637)

ISIS3 driver:
 * add write support
 * add mask band support on read
 * get label in json:ISIS3 metadata domain

JPEGLS driver:

JP2ECW driver:
 * fix crash when translating a Float64 raster (at least with SDK 3.3)

JP2KAK driver:
 * add support for Kakadu v7.9.  v7.8 should not be used.  It has a bug fixed in v7.9
 * catch exceptions in jp2_out.write_header()

JP2OpenJPEG driver:
 * add a USE_TILE_AS_BLOCK=YES open option that can help with whole image conversion
 * prevent endless looping in openjpeg in case of short write
 * for single-line organized images, such as found in some GRIB2 JPEG2000 images, use a Wx1 block size to avoid huge performance issues (#6719)
  * ignore warnings related to empty tag-trees.

JPIPKAK driver:
 * fix random crashes JPIP in multi-tread environment (#6809)

KEA driver:
 * Add support for Get/SetLinearBinning (#6855)

KMLSuperOverlay driver:
 * recognize simple document made of GroundOverlay (#6712)
 * Add FORMAT=AUTO option. Uses PNG for semi-transparent areas, else JPG. (#4745)

LAN driver:
 * remove wrong byte-swapping for big-endian hosts

MAP driver:
 * change logic to detect image file when its path is not absolute

MBTiles driver:
 * on opening if detecting 3 bands, expose 4 bands since there might be transparent border tiles (#6836)
 * fix setting of minzoom when computing overviews out of order
 * do not open .mbtiles that contain vector tiles, which are not supported by the driver

MEM driver:
 * disable R/W mutex for tiny performance increase in resampled RasterIO
 * add support for overviews
 * add support for mask bands

MRF driver:
 * bug fix in PNG and JPEG codecs
 * Fixing a problem with setting NoData for MRFs generated with Create
 * fix plugin building (#6498)
 * rename CS variable so as to avoid build failure on Solaris 11 (#6559)
 * Allow MRF to write the data file directly to an S3 bucket.
 * Allow relative paths when MRF is open via the metadata string.
 * Add support for spacing (unused space) between tiles. Defaults to none.
 * Read a single LERC block as an MRF file.

MSG driver:
 * fix incorrect georeference calculation for msg datasets (github #129)

NetCDF driver:
 * add support for reading SRS from srid attribute when it exists and has content like urn:ogc:def:crs:EPSG::XXXX (#6613)
 * fix crash on datasets with 1D variable with 0 record (#6645)
 * fix erroneous detection of a non-longitude X axis as a longitude axis that caused a shift of 360m on the georeferencing (#6759)
 * read/write US_survey_foot unit for linear units of projection
 * apply 'add_offset' and 'scale_factor' on x and y variables when present, such as in files produced by NOAA from the new GOES-16 (GOES-R) satellite (github #200)
 * add a HONOUR_VALID_RANGE=YES/NO open option to control whether pixel values outside of the validity range should be set to the nodata value (#6857)
 * fix crash on int64/uint64 dimensions and variables, and add support for them (#6870)

NITF driver:
 * add support for writing JPEG2000 compressed images with JP2OpenJPEG driver
 * fix writing with JP2KAK driver (emit codestream only instead of JP2 format)
 * fix setting of NBPR/NBPC/NPPBH/NPPBV fields for JPEG2000 (fixes #4322); in JP2ECW case, make sure that the default PROFILE=NPJE implies 1024 block size at the NITF level
 * implement creation of RPC00B TRE for RPC metadata in CreateCopy() mode
 * add support for reading&writing _rpc.txt files
 * nitf_spec.xml: Add support for MTIRPB TRE in NITF image segment. Also makes minor change to BLOCKA to include default values (github #127)
 * nitf_spec.xml: add IMASDA and IMRFCA TREs
 * GetFileList(): Small optimization to avoid useless file probing.

NWT_GRD:
 * detect short writes

OpenJPEG driver:
 * support direct extracting of GeoRaster JP2-F BLOB (#6861)

PCIDSK driver:
 * handle Exceptions returned from destructor and check access rights in setters (github #183)

PDF driver:
 * implement loading/saving of metadata from/into PAM (#6600)
 * implement reading from/writing to PAM for geotransform and projection (#6603)
 * prevent crashes on dataset reopening in case of short write

PLScenes driver:
 * add a METADATA open option

PostgisRaster driver:
 * fix potential crash when one tile has a lower number of bands than the max of the table (#6267)

R driver:
 * fix out-of-memory (oom) with corrupt R file

Raw drivers:
 * prevent crashes on dataset closing in case of short write

RMF driver:
 * fix wrong counter decrement that caused compressed RMF to be incorrectly decompressed (github #153)
 * fix load/store inversion of cm and dm units in MTW files (github #162)
 * fix reading nodata for non-double data type (github #174)

ROIPAC driver:
 * add support for reading/writing .flg files (#6504)
 * fix computation of line offset for multi-band BIP files, and warn if detecting a wrong file produced by GDAL >= 2.0.0 (#6591)
 * fix for big endian hosts

RS2 driver:
 * add support for reading RPC from product.xml

SAFE driver:
 * fix handling of SLC Products by providing access to measurements as subdatasets (#6514)

Sentinel2 driver:
 * add support for new "Safe Compact" encoding of L1C products (fixes #6745)

SQLite driver:
 * Add read support for RasterLite2 coverages in SQLite driver

SRTMHGT driver:
 * open directly .hgt.zip files
 * accept filenames like NXXEYYY.SRTMGL1.hgt (#6614)
 * handle files for latitude >= 50 (#6840)

VRT driver:
 * add default pixel functions: real, imag, complex, mod, phase, conj, etc... for complex data types (github #141)
 * avoid useless floating point values in SrcRect / DstRect (#6568)
 * avoid buffer initialization in RasterIO() when possible (replace ancient and likely broken concept of bEqualAreas)
 * make CheckCompatibleForDatasetIO() return FALSE on VRTDerivedRasterBands (#6599)
 * VRT warp: fix issue with partial blocks at the right/bottom and dest nodata values that are different per band (#6581)
 * fix performance issue when nodata set at band level and non-nearest resampling used (#6628)
 * VRTComplexSource: do temp computations on double to avoid precision issues when band data type is Int32/UInt32/CInt32/Float64/CFloat64 (#6642)
 * VRT derived band: add the capability to define pixel functions in Python
 * CreateCopy(): detect short writes
 * Fix linking error on VRTComplexSource::RasterIOInternal<float>() (#6748)
 * avoid recursion in xml:VRT metadata (#6767)
 * prevent 'Destination buffer too small' error when calling GetMetadata('xml:VRT') on a in-memory VRT copied from a VRT
 * fix 2.1 regression that can cause crash in VRTSimpleSource::GetFileList() (#6802)

WMS driver:
 * Added support for open options to WMS minidrivers
 * Refactored the multi-http code to make it possible to do range requests.
 * Added a minidriver_mrf, which reads from remote MRFs using range requests.
 * Made the minidriver_arcgis work with an ImageService, not only MapService.
 * Added static cache of server response.
 * Allow tiledWMS to work in off-line mode by including the server response in the .wms file itself.
 * honour GDAL_HTTP_USERAGENT config option when it is set and <UserAgent> is missing (#6825)
 * WMS/WMTS: better deal with tiles with different band count (grayscale, gray+alpha, palette, rgb, rgba) (github #208)
 * Make HTTPS options apply to tWMS minidriver init, better HTTP error reporting

WMTS driver:
 * do not take into account WGS84BoundingBox/BoundingBox that would be the result of the densified reprojection of the bbox of the most precise tile matrix
 * add TILEMATRIX / ZOOM_LEVEL open options
 * accept tiles of small dimensions (github #210)

XYZ driver:

== OGR 2.2.0 - Overview of Changes ==

Core:
 * Layer algebra: Add KEEP_LOWER_DIMENSION_GEOMETRIES=YES/NO option to Intersection, Union and Identity.
Default is yes, but it is set to no unless result layer is of geom type unknown.
If set to no, result features which would have lower dim geoms are skipped
if operating on two layers with same geom dim.
 * Fix crash/corrupted values when running importFromWkb() on POLYGON M/POLYGON ZM geometries (#6562)
 * Add OGR_WKT_PRECISION config option that defaults to 15 to select the number of decimals when outputting to WKT
 * Make OGRFeature::SetField(string) accept JSon serialized arrays for the String/Integer/Integer64/RealList types; add reciprocal OGRFeature::GetFieldAsSerializedJSon() for those types
 * OGRGeometryFactory::transformWithOptions(): better deal with reprojection from polar projection to WGS84, and projections crossing the antimeridian to WGS84, by splitting geometries prior to reprojection (#6705)
 * LinearRing transformTo(): force last point to be identical to first one in case it is not.
 * GML geometry parsing: avoid 'Cannot add a compound curve inside a compound curve' error (#6777)
 * OGR SQL: fix IN filtering on MapInfo indexed columns (#6798)
 * OGR SQL: add support for LIMIT and OFFSET keywords
 * OGR SQL: add comparisons on date / datetime (#6810)
 * OGR SQL: increase efficiency of DISTINCT operator
 * OGREnvelope: change initialization to fix issue when getting MULTIPOINT(0 0,1 1) envelope (#6841)
 * OGRParse: fix parsing logic to avoid false positive detection of string as datetime (#6867)

OGRSpatialReference:
 * Upgrade to EPSG database v9.0 (#6772)
 * OGRCT: upgrade LIBNAME of mingw and cygwin to libproj-9.dll and cygproj-9.dll to be up-to-date with proj 4.9.X (recommended method is using ./configure --with-static-proj4 instead) (#6501)
 * importFromESRI(): fix import of multi line MERCATOR SRS (#6523)
 * morphToESRI(): correctly compute standard_parallel_1 of Mercator(2SP) projection from scale factor of Mercator(1SP) (#6456, #4861)
 * exportToProj4(): recognize explicit OSR_USE_ETMERC=NO to avoid using etmerc with proj >= 4.9.3
 * importFromProj4(): do not set a AUTHORITY node for strings like '+init=epsg:XXXX +some_param=val'
 * importFromProj4(): be robust with missing proj.4 epsg dictionary when importing '+init=epsg:xxxx +other_parm=value'
 * AutoIdentifyEPSG(): add identification of EPSG:3995 (Arctic Polar Stereographic on WGS84) and EPSG:3031 (Antarctic Polar Stereographic on WGS84)
 * OGRCoordinateTransformation: avoid potential bugs in proj.4 on NaN input
 * importFromEPSG(): take into account DX,DY,DZ,RX,RY,RZ,DS columns in pcs.csv to add per-PCS TOWGS84 overrides (geotiff #52)
 * Coordinate transformation: prevent unnecessary coordinate transformations (github #184, #185)

Utilities:
 * ogr2ogr: do not return error on ogr2ogr --utility_version
 * ogr2ogr: keep -append and -overwrite when -update follows
 * ogr2ogr: fix heuristics to detect likely abs…
jperkin pushed a commit that referenced this issue Jul 8, 2018
Changelog:
    Don't consume key release events [#52]
    Improve hankaku katakana conversion [#51]
    Use the same typing rule in dict-edit mode [#50]
    Add abort-to-latin and abort-to-latin-unhandled command [#48]
    Add more z-* shortcuts from DDSKK
    Fix memory leak caused by Vala array conversion
    Bump build requirements (glib >= 2.36, valadoc >= 0.40)
jperkin pushed a commit that referenced this issue Sep 20, 2018
VisualVM 1.4.1 released on April 25th, 2018

Features and Enhancements:

    Heap Viewer allows to compare heap dumps
    Load Snapshot dialog uses All Supported Files filter by default
    Full support for running on JDK 10 and monitoring/profiling Java 10 processes

Fixed Bugs:

    GH-51: StackOverflowError at Startup Profiler
    GH-52: A11Y - Keyboard navigation using Tab does not work
    GH-53: Configurable OQL results limit
    GH-54: A11Y - Filter & Find actions not accessible using keyboard shortcuts
    GH-55: Make thread view collapsable in heapViewer
    GH-57: Why has the "compare to another heap dump" feature disappeared
    GH-59: Provide All Files file filter in File | Load
    GH-62: OQL engine not available
    GH-73: VisualVM 1.4 refuses to launch under JDK 10


VisualVM 1.4 released on December 12th, 2017

Features and Enhancements:

    CPU Sampler and Profiler display live call trees, delta results, selected threads, and many other improvements
    Memory Profiler allows profiling of defined classes, displays delta results
    Introducing a lightweight JDBC profiler for monitoring SQL commands executed by a Java process
    Heap Viewer is the new .hprof heap dumps viewer in VisualVM with a lot of improvements over the original HeapWalker
    Colored classes/methods in Sampler, Profiler and Heap Viewer views based on user-defined filters
    Full support for running on JDK 9 and monitoring/profiling Java 9 processes
    Built on NetBeans Platform & profiler 9.0-dev

API Changes:

    Compatible: com.sun.tools.visualvm.core.snapshot.Snapshot.computeSnapshotID() added

Fixed Bugs:

    GH-3: MBeans plugin doesn't repaint window
    GH-7: NullPointerException when starting with eclipse Launcher
    GH-14: Can not save snapshots of profiler or sampler when multiple users run VisualVM on the same Machine
    GH-31: "Peform GC"
    GH-38: Profile and Profiler Snapshot actions always disabled


VisualVM 1.3.9 released on October 4th, 2016

Migration to GitHub:

VisualVM project has been migrated to GitHub, including the sources, downloads and update centers. New project pages have been created at https://visualvm.github.io, the content will be incrementally transferred from the original pages at https://visualvm.java.net.
Features and Enhancements:

    Issue 603: remember decisions about future host/connection resolving
    Issue 618: --openjmx cli option should take a connection name and allow setting skip ssl
    Enabled VM Coredumps support on Microsoft Windows
    The --openid and --openpid parameters now accept index of process tab to open
    Start Page has been refreshed to contain up to date links to useful resources
    Experimental support for running on JDK 9 and monitoring/profiling Java 9 processes
    Built on NetBeans Platform & profiler 8.0.2

API Changes:

    Compatible: com.sun.tools.visualvm.charts.SimpleXYChartDescriptor.decimal(minValue, maxValue, initialYMargin, chartFactor, customFormat, hideableItems, valuesBuffer) added
    Compatible: com.sun.tools.visualvm.core.options.GlobalPreferences.setDoNotShowAgain(key, value) added
    Compatible: com.sun.tools.visualvm.core.options.GlobalPreferences.getDoNotShowAgain(key) added

Fixed Bugs:

    Issue 458: libprofilerinterface.so exports popular symbol names
    Issue 575: Fix sampler memory snapshot type
    Issue 594: Cannot load heap dump - ArrayIndexOutOfBoundsException
    Issue 601: java.lang.ClassNotFoundException: com.fubar.MyClass$$Lambda$9
    Issue 602: SimpleXYChartDescriptor.decimal Should Be Able To Display > 2 decimal places
    Issue 604: Tracer dynamic does not work with JDK 8
    Issue 605: VisualVM fails to load local java applications when NetbeansBased applications are running
    Issue 606: Command line arg --openjmx doesn't ask for credentials in some cases
    Issue 607: Incorrect snapshot name
    Issue 608: ArrayIndexOutOfBoundsException
    Issue 623: Support Lambdas in Java 8
    Issue 625: Opening a thread dump may take several minutes
    Issue 626: ClassCastException: java.lang.String cannot be cast to [Ljava.lang.Object;
    Issue 627: Memory sampling does not work
    Issue 636: Thread dump cannot be closed
    IssueTracker query to list all changes in NetBeans profiler 8.0.1 and 8.0.2 affecting VisualVM
    IssueTracker query to list all changes in NetBeans profiler after 8.0.2 affecting VisualVM
jperkin pushed a commit that referenced this issue Feb 4, 2019
2.0.0 (2018-12-26)

Added

* to_local and period_for instance methods have been added to TZInfo::Timezone. These are similar to utc_to_local and period_for_utc, but take the UTC offset of the given time into account.
* abbreviation, dst?, base_utc_offset and observed_utc_offset instance methods have been added to TZInfo::Timezone, returning the abbreviation, whether daylight savings time is in effect and the UTC offset of the time zone at a specified time.
* A TZInfo::Timestamp class has been added. It can be used with TZInfo::Timezone in place of a Time or DateTime.
* local_time, local_datetime and local_timestamp instance methods have been added to TZInfo::Timezone. These methods construct local Time, DateTime and TZInfo::Timestamp instances with the correct UTC offset and abbreviation for the time zone.
* Support for a (yet to be released) version 2 of tzinfo-data has been added, in addition to support for version 1. The new version will remove the (no longer needed) DateTime parameters from transition times, reduce memory consumption and improve the efficiency of loading timezone and country indexes.
* A TZInfo::VERSION constant has been added, indicating the TZInfo version number.

Changed

* The minimum supported Ruby versions are now Ruby MRI 1.9.3, JRuby 1.7 (in 1.9 or later mode) and Rubinius 3.
* Local times are now returned using the correct UTC offset (instead of using UTC). #49 and #52.
* Local times are returned as instances of TimeWithOffset, DateTimeWithOffset or TZInfo::TimestampWithOffset. These classes subclass Time, DateTime and TZInfo::Timestamp respectively. They override the default behaviour of the base classes to return information about the observed offset at the indicated time. For example, the zone abbreviation is returned when using the %Z directive with strftime.
* The transitions_up_to, offsets_up_to and strftime instance methods of TZInfo::Timezone now take the UTC offsets of given times into account (instead of ignoring them as was previously the case).
* The TZInfo::TimezonePeriod class has been split into two subclasses: TZInfo::OffsetTimezonePeriod and TZInfo::TransitionsTimezonePeriod. TZInfo::OffsetTimezonePeriod is returned for time zones that only have a single offset. TZInfo::TransitionsTimezonePeriod is returned for periods that start or end with a transition.
* TZInfo::TimezoneOffset#abbreviation, TZInfo::TimezonePeriod#abbreviation and TZInfo::TimezonePeriod#zone_identifier now return frozen String instances instead of instances of Symbol.
* The utc_offset and utc_total_offset attributes of TZInfo::TimezonePeriod and TZInfo::TimezoneOffset have been renamed base_utc_offset and observed_utc_offset respectively. The former names have been retained as aliases.
* TZInfo::Timezone.get, TZInfo::Timezone.get_proxy and TZInfo::Country.get can now be used with strings having any encoding. Previously, only encodings that are directly comparable with UTF-8 were supported.
* The requested identifier is included in TZInfo::InvalidTimezoneIdentifier exception messages.
* The requested country code is included in TZInfo::InvalidCountryCode exception messages.
* The full range of transitions is now loaded from zoneinfo files. Zoneinfo files produced with version 2014c of the zic tool contain an initial transition 2**63 seconds before the epoch. Zoneinfo files produced with version 2014d or later of zic contain an initial transition 2**59 seconds before the epoch. These transitions would previously have been ignored, but are now returned in methods such as TZInfo::Timezone#transitions_up_to.
* The TZInfo::RubyDataSource and TZInfo::ZoneinfoDataSource classes have been moved into a new TZInfo::DataSources module. Code that is setting TZInfo::ZoneinfoDataSource.search_path or TZInfo::ZoneinfoDataSource.alternate_iso3166_tab_search_path will need to be updated accordingly.
* The TZInfo::InvalidZoneinfoDirectory and TZInfo::ZoneinfoDirectoryNotFound exception classes raised by TZInfo::DataSources::ZoneinfoDataSource have been moved into the TZInfo::DataSources module.
* Setting the data source to :ruby or instantiating TZInfo::DataSources::RubyDataSource will now immediately raise a TZInfo::DataSources::TZInfoDataNotFound exception if require 'tzinfo/data' fails. Previously, a failure would only occur later when accessing an index or loading a timezone or country.
* The DEFAULT_SEARCH_PATH and DEFAULT_ALTERNATE_ISO3166_TAB_SEARCH_PATH constants of TZInfo::DataSources::ZoneinfoDataSource have been made private.
* The TZInfo::Country.data_source, TZInfo::DataSource.create_default_data_source, TZInfo::DataSources::ZoneinfoDataSource.process_search_path, TZInfo::Timezone.get_proxies and TZInfo::Timezone.data_source methods have been made private.
* The performance of loading zoneinfo files and the associated indexes has been improved.
* Memory use has been decreased by deduplicating String instances when loading country and time zone data.
* The dependency on the deprecated thread_safe gem as been removed and replaced by concurrent-ruby.
* The Info classes used to return time zone and country information from TZInfo::DataSource implementations have been moved into the TZInfo::DataSources module.
* The TZInfo::TransitionDataTimezoneInfo class has been removed and replaced with TZInfo::DataSources::TransitionsDataTimezoneInfo and TZInfo::DataSources::ConstantOffsetDataTimezoneInfo. TZInfo::DataSources::TransitionsDataTimezoneInfo is constructed with an Array of TZInfo::TimezoneTransition instances representing times when the offset changes. TZInfo::DataSources::ConstantOffsetDataTimezoneInfo is constructed with a TZInfo::TimezoneOffset instance representing the offset constantly observed in a time zone.
* The TZInfo::DataSource#timezone_identifiers method should no longer be overridden in custom data source implementations. The implementation in the base class now calculates a result from TZInfo::DataSource#data_timezone_identifiers and TZInfo::DataSource#linked_timezone_identifiers.
* The results of the TZInfo::DataSources::RubyDataSource to_s and inspect methods now include the time zone database and tzinfo-data versions.

Removed

* Methods of TZInfo::Timezone that accept time arguments no longer allow Integer timestamp values. Time, DateTime or TZInfo::Timestamp values or objects that respond to to_i, subsec and optionally utc_offset must be used instead.
* The %:::z format directive can now only be used with TZInfo::Timezone#strftime if it is supported by Time#strftime on the runtime platform.
* Using TZInfo::Timezone.new(identifier) and TZInfo::Country.new(code) to obtain a specific TZInfo::Timezone or TZInfo::Country will no longer work. TZInfo::Timezone.get(identifier) and TZInfo::Country.get(code) should be used instead.
* The TZInfo::TimeOrDateTime class has been removed.
* The valid_for_utc?, utc_after_start?, utc_before_end?, valid_for_local?, local_after_start? and local_before_end? instance methods of TZInfo::TimezonePeriod have been removed. Comparisons can be performed with the results of the starts_at, ends_at, local_starts_at and local_ends_at methods instead.
* The to_local and to_utc instance methods of TZInfo::TimezonePeriod and TZInfo::TimezoneOffset have been removed. Conversions should be performed using the TZInfo::Timezone class instead.
* The TZInfo::TimezonePeriod#utc_total_offset_rational method has been removed. Equivalent information can be obtained using the TZInfo::TimezonePeriod#observed_utc_offset method.
* The datetime, time, local_end, local_end_time, local_start and local_start_time instance methods of TZInfo::TimezoneTransition have been removed. The at, local_end_at and local_start_at methods should be used instead and the result (a TZInfo::TimestampWithOffset) converted to either a DateTime or Time by calling to_datetime or to_time on the result.
* The us_zones and us_zone_identifiers class methods of TZInfo::Timezone have been removed. TZInfo::Country.get('US').zones and TZInfo::Country.get('US').zone_identifiers should be used instead.
jperkin pushed a commit that referenced this issue Aug 26, 2019
Changelog:

New Libraries

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

Updated Libraries

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

This release has a number of bug fixes.  Added is the ipset module, that
helps add ip-addresses that are looked up in a domain to a firewall
ip-address filter.  Also, the python module has restart next, per-query
data and multiple instance support.  The unbound -V option has been
added and it prints the build config.

Features:
- PR #28: IPSet module, by Kevin Chou.  Created a module to support
  the ipset that could add the domain's ip to a list easily.
  Needs libmnl, and --enable-ipset and config it, doc/README.ipset.md.
- Merge PR #6: Python module: support multiple instances
- Merge PR #5: Python module: define constant MODULE_RESTART_NEXT
- Merge PR #4: Python module: assign something useful to the
  per-query data store 'qdata'
- Introduce `-V` option to print the version number and build options.
  Previously reported build options like linked libs and linked modules
  are now moved from `-h` to `-V` as well for consistency.
- PACKAGE_BUGREPORT now also includes link to GitHub issues.

Bug Fixes:
- Fix #39: In libunbound, leftover logfile is close()d unpredictably.
- Fix for #24: Fix abort due to scan of auth zone masters using old
  address from previous scan.
- Fix to omit RRSIGs from addition to the ipset.
- Fix to make unbound-control with ipset, remove unused variable,
  use unsigned type because of comparison, and assign null instead
  of compare with it.  Remade lex and yacc output.
- make depend
- Added documentation to the ipset files (for doxygen output).
- Fix python dict reference and double free in config.
- Fix memleak in unit test, reported from the clang 8.0 static analyzer.
- For #45, check that 127.0.0.1 and ::1 are not used in unbound.conf
  when do-not-query-localhost is turned on, or at default on,
  unbound-checkconf prints a warning if it is found in forward-addr or
  stub-addr statements.
- Fix for possible assertion failure when answering respip CNAME from
  cache.
- Fix in respip addrtree selection. Absence of addr_tree_init_parents()
  call made it impossible to go up the tree when the matching netmask is
  too specific.
- Fix #48: Unbound returns additional records on NODATA response,
  if minimal-responses is enabled, also the additional for negative
  responses is removed.
- Fix #49: Set no renegotiation on the SSL context to stop client
  session renegotiation.
- Fix question section mismatch in local zone redirect.
- Add verbose log message when auth zone file is written, at level 4.
- Add hex print of trust anchor pointer to trust anchor file temp
  name to make it unique, for libunbound created multiple contexts.
- For #52 #53, second context does not close logfile override.
- Fix #52 #53, fix for example fail program.
- Fix to return after failed auth zone http chunk write.
- Fix to remove unused test for task_probe existance.
- Fix to timeval_add for remaining second in microseconds.
- Check repinfo in worker_handle_request, if null, drop it.
- Generate configlexer with newer flex.
- Fix warning for unused variable for compilation without systemd.
- Fix #59, when compiled with systemd support check that we can properly
  communicate with systemd through the `NOTIFY_SOCKET`.
- iana portlist updated.
- Fix autotrust temp file uniqueness windows compile.
- avoid warning about upcast on 32bit systems for autotrust.
- escape commandline contents for -V.
- Fix character buffer size in ub_ctx_hosts.
- Option -V prints if TCP fastopen is available.
- Fix unittest valgrind false positive uninitialised value report,
  where if gcc 9.1.1 uses -O2 (but not -O1) then valgrind 3.15.0
  issues an uninitialised value for the token buffer at the str2wire.c
  rrinternal_get_owner() strcmp with the '@' value.  Rewritten to use
  straight character comparisons removes the false positive.  Also
  valgrinds --expensive-definedness-checks=yes can stop this false
  positive.
- Please doxygen's parser for "@" occurrence in doxygen comment.
- Fixup contrib/fastrpz.patch
- Remove warning about unknown cast-function-type warning pragma.
- Document limitation of pidfile removal outside of chroot directory.
- Fix log_dns_msg to log irrespective of minimal responses config.
- Fix that pkg-config is setup before --enable-systemd needs it.
jperkin pushed a commit that referenced this issue Sep 2, 2019
*******************************************************************************
Version 1.8.4
*******************************************************************************

2017-11-17 Marcelo Jimenez <mroberto(at)users.sourceforge.net>

	GitHub #57 - 1.8.3 broke ABI without changing SONAME
	Opened by jcowgill

	This change in 1.8.3 broke the ABI and therefore the SONAME should have
	been changed (ie: age reset to 0):

	EXPORT_SPEC int UpnpAddVirtualDir(
	        /*! [in] The name of the new directory mapping to add. */
	-       const char *dirName);
	+       const char *dirName,
	+       /*! [in] The cookie to associated with this virtual directory */
	+       const void *cookie,
	+       /*! [out] The cookie previously associated, if mapping is already present */
	+       const void **oldcookie);

	If only the cookie argument was added, you could probably get away with
	this because all that would happen is that a garbage value is passed
	around without being used. With the addition of oldcookie, any old
	programs will not initialise this value and will probably segfault when
	libupnp tries to write to it.

*******************************************************************************
Version 1.8.3
*******************************************************************************

2017-09-07 Dave Overton <david(at)insomniavisions.com>

	Add userdata/cookie to virtualDir callbacks

	As with the main Device APIs (UpnpRegisterRootDevice etc), it is useful
	to have a userdata/cookie pointer returned with each callback.

	This patch allows one cookie per registered path which enables a variety
	of functionality in client apps.

2017-09-03 Uwe Kleine-König <uwe@kleine-koenig.org>

	Fix large file system support

	libupnp uses large file support (if available). If a program linking to
	libupnp does not however it creates mismatches in callframes. See
	Issue #51 for the results.

	This simplifies LFS support by using AC_SYS_LARGEFILE_SENSITIVE instead of
	manually defining _LARGE_FILE_SOURCE and _FILE_OFFSET_BITS (which is
	useless on architectures where the size of off_t is fixed).

	Furthermore additional logic is introduced to catch a library user without
	64 bit wide off_t on such a platform.

	upnp.h also makes use of off_t, but as this file includes FileInfo.h, the
	latter is the single right place for this check.

	This fixes #52 which is a generalized variant of #51.

2017-08-19 Uwe Kleine-König <uwe@kleine-koenig.org>

	configure.ac: Drop copying of include files

	The comment suggests this is for windows compilation. It should be easily
	possible to add the source directory as an include path to the windows
	compiler, too, so drop this. (Otherwise this should better be done using
	AC_CONFIG_COMMANDS.)

2017-09-03 Uwe Kleine-König <uwe@kleine-koenig.org>

	Let source code use autoconfig.h not the public upnpconfig.h

	The former is the one supposed to be used for internal code. upnpconfig.h is only
	for public stuff.

2017-08-19 Uwe Kleine-König <uwe@kleine-koenig.org>

	configure.ac: Fix typo s/optionnal/optional/

2017-08-08 Marcelo Jimenez <mroberto(at)users.sourceforge.net>

	Fix broken samples when configured with --disable-ipv6.

*******************************************************************************
Version 1.8.2
*******************************************************************************

2017-07-24 Michael Osipov

	Initialize in_addr and in6_addr to avoid garbage output if never written

	If any of the address families isn't available in UpnpGetIfInfo(),
	especially IPv6, always init both structs with zero to avoid garbage
	output with inet_ntop() to gIF_IPV4 and gIF_IPV6.

	See v00d00/gerbera#112 (https://github.com/v00d00/gerbera/issues/112)
	for consequences: bind for IPv6 will fail.

2013-10-28 Vladimir Fedoseev <va-dos(at)users.sourceforge.net>

	Attached patch allows to register multiple clients from single app.

2014-11-14 Philippe <philippe44ca(at)users.sourceforge.net>

	Hi - I recently compiled libupnp on C++ Builder XE7 and had to do a few
	changes to make it work. In thase this helps, I've generated a small
	patch file.

2015-04-30 Hugo Beauzée-Luyssen <chouquette(at)users.sourceforge.net>

	When building using a strict mode (-std=c++11 instead of -std=gnu++11,
	for instance), the WIN32 macro isn't defined. The attached patch fixes
	it by using _WIN32 instead.

2015-02-06 Jean-Francois Dockes <jf@dockes.org>

	Queue events on their subscription object instead of adding them to the
	thread pool immediately.

	Events destined for a non-responding control point would flood the
	thread pool and prevent correct dispatching to other clients, sometimes
	to the point of disabling the device. Events are now queued without
	allocating thread resources and properly discarded when a client is not
	accepting them.

2015-02-03 Jean-Francois Dockes <jf@dockes.org>

	genaInitNotify()/genaInitNotifyExt() and
	genaNotifyAll()/genaNotifyAllExt() are relatively complicated methods
	which only differ by the format of an input parameter. This update
	extracts the common code for easier maintenance, esp. relating to the
	queueing modifications to follow.


*******************************************************************************
Version 1.8.1
*******************************************************************************

2017-04-26 Marcelo Jimenez <mroberto(at)users.sourceforge.net>

	Fix some compiler warning messages on md5.c

2017-03-07 Fabrice Fontaine <fontaine.fabrice(at)gmail.com>

	Enable IPv6 by default

2017-03-07 Fabrice Fontaine <fontaine.fabrice(at)gmail.com>

	Move threadutil source code to libupnp

	With this patch, threadutil library is removed as the only public
	header that has been kept in 1.8.x is ithread.h which is mainly a
	wrapper to pthread with inline functions.
	threadutil source code will now be a part of libupnp library.

*******************************************************************************
Version 1.8.0
*******************************************************************************

2014-01-15 Peng <howtofly(at)gmail.com>

	Fix memory leaks.

2013-04-27 Thijs Schreijer <thijs(at)thijsschreijer.nl>

	Renamed SCRIPTSUPPORT to IXML_HAVE_SCRIPTSUPPORT for consistency. Also
	updated autoconfig and automake files, so it also works on non-windows.
	Option is enabled by default, because it adds an element to the node
	structure. Not using an available field is better than accidentally
	using an unavailable field.

2012-07-11 Thijs Schreijer <thijs(at)thijsschreijer.nl>

	Changed param to const UpnpAcceptSubscriptionExt() for consistency

2012-06-07 Thijs Schreijer <thijs(at)thijsschreijer.nl>

	updated ixmlDocument_createAttributeEx() and ixmlDocument_createAttribute()
	to use parameter DOMString instead of char * (same but now consistent)

2012-05-06 Thijs Schreijer <thijs(at)thijsschreijer.nl>

	Added script support (directive SCRIPTSUPPORT) for better support of
	garbage collected script languages. The node element gets a custom tag
	through ixmlNode_setCTag() and ixmlNode_getCTag(). And a callback upon
	releasing the node resources can be set using ixmlSetBeforeFree()
	See updated readme for usage.

2012-03-24 Fabrice Fontaine <fabrice.fontaine(at)orange.com>

	SF Bug Tracker id 3510595 - UpnpDownloadXmlDoc : can't get the file

	Submitted: Marco Virgulti ( mvirg83 ) - 2012-03-23 10:08:08 PDT

	There is a problem, perhaps, during downloading a document by
	UpnpDownloadXmlDoc. During debugging i've found that in an not exported
	api (unfortunately i forgot the code line...) where it is setted a
	local variable "int timeout" to -1 then passed directly to another
	function for sending data through tcp socket. I patched this setting it
	to 0 (there is an IF section that exits if timeout < 0). It is normal
	behavior or it is a bug?

2012-03-08 Fabrice Fontaine <fabrice.fontaine(at)orange-ftgroup.com>

	Check for NULL pointer in TemplateSource.h

	calloc can return NULL so check for NULL pointer in CLASS##_new and
	CLASS##_dup.

2012-03-08 Fabrice Fontaine <fabrice.fontaine(at)orange-ftgroup.com>

	Replace strcpy with strncpy in get_hoststr

	Replace strcpy with strncpy to avoid buffer overflow.

2012-03-08 Fabrice Fontaine <fabrice.fontaine(at)orange-ftgroup.com>

	Memory leak fix in handle_query_variable

	variable was never freed.

2011-02-07 Chandra Penke <chandrapenke(at)mcntech.com>

	Add HTTPS support using OpenSSL. HTTPS support is optional and can
	be enabled by passing the --enable-open-ssl argument to the
	configure script.

	The following methods are introduced to the public API:
	UpnpInitOpenSslContext

	When enabled, HTTPS can be used by using "https://" instead of
	"http://" when passing URLs to the HTTP Client API.

2011-02-07 Chandra Penke <chandrapenke(at)mcntech.com>

	Refactor HTTP Client API to be more generic.

	The following features are added:

	- Support for persistent HTTP connections (reusing HTTP
	  connections). Tthis is still a work in progress and relies on
	  applications to interpret the 'Connection' header
	  appropriately.

	- Support for specifying request headers when making
	  requests. Useful for interacting with web services that require
	  custom headers.

	- Support for retrieving response headers (this is a API only
	  change, some more work needs to be done to implement the actual
	  functionality. Specifically copy_msg_headers in httpreadwrite.c
	  needs to be implemented)

	- Common API for all HTTP methods.

	- Support for PUT, and DELETE methods.

	The following methods are introduced to the public HTTP Client API

	UpnpOpenHttpConnection, UpnpCloseHttpConnection, UpnpMakeHttpRequest,
	UpnpWriteHttpRequest, UpnpEndHttpRequest, UpnpGetHttpResponse,
	UpnpReadHttpResponse.

	Removed a lot of duplicate code in httpreadwrite.c

2011-01-17 Chandra Penke <chandrapenke(at)mcntech.com>

	Include upnpconfig.h in FileInfo.h to automatically include large
	file macros

2011-01-17 Chandra Penke <chandrapenke(at)mcntech.com>

	Fix for warnings Apple systems related to macros defined in list.h.

	In list.h, in apple systems, undefine the macros prior to defining them.

2011-01-16 Marcelo Jimenez <mroberto(at)users.sourceforge.net>

	Fix for UpnpFileInfo_get_LastModified() in http_MakeMessage().

	UpnpFileInfo_get_LastModified() returns time_t, and http_MakeMessage()
	takes a "time_t *". Thanks to Chandra Penke for pointing the bug.

2010-11-22 Marcelo Jimenez <mroberto(at)users.sourceforge.net>

	Template object for ssdp_ResultData.

2010-11-10 Fabrice Fontaine <fabrice.fontaine(at)orange-ftgroup.com>

	Support for "polling" select in sock_read_write.

	Currently, in sock_read_write function, if the timeout is 0, pupnp
	realizes a "blocking" select (with an infinite timeout). With this
	patch, if timeout is set to 0, pupnp will realize a "polling" select
	and returns immediately if it can not read or write on the socket. This
	is very useful for GENA notifications when pupnp is trying to send
	events to a disconnected Control Point. "Blocking" select can now be
	done by putting a negative timeout value.

2010-09-18 Chandra Penke <chandrapenke(at)mcntech.com>

	This is a minor build fix. The new Template*.h files added in the latest
	code need to be exported. Patch against the latest sources is attached.

2010-08-22 Marcelo Jimenez <mroberto(at)users.sourceforge.net>
	* upnp/src/api/Discovery.c: Fix a serious bug and memory leak in
	UpnpDiscovery_strcpy_DeviceType(). Thanks to David Blanchet for the
	patch.

2010-04-25 Marcelo Jimenez <mroberto(at)users.sourceforge.net>
	Separation of the ClientSubscription object.

2010-04-24 Marcelo Jimenez <mroberto(at)users.sourceforge.net>
	Protect the object destructors agains null pointers on deletion, which
	should be something valid.

2010-03-27 Marcelo Jimenez <mroberto(at)users.sourceforge.net>
	SF Patch Tracker [ 2987390 ] upnp_debug vs. ixml_debug
	Thanks for the load of updates, I'm still assimilating them ! Could I make
	a suggestion though? The addition of printNodes(IXML_Node) to upnpdebug a
	dds a new dependency on ixml.h for anything using upnpdebug.h. I'm making
	quite a bit of use of upnpdebug in porting things to version 1.8.0, and I'd
	prefer it if printNodes could be added to ixmldebug.h instead. I'm attach
	ing a patch, what do you think ?

	Nick

2010-03-27 Marcelo Jimenez <mroberto(at)users.sourceforge.net>
	* Forward port of svn revision 505:
	SF Patch Tracker [ 2836704 ] Patch for Solaris10 compilation and usage.
	Submitted By: zephyrus ( zephyrus00jp )

2010-03-20 Marcelo Jimenez <mroberto(at)users.sourceforge.net>
	* SF Patch Tracker [ 2969188 ] 1.8.0: patch for FreeBSD compilation
	Submitted By: Nick Leverton (leveret)
	Fix the order of header inclusion for FreeBSD.

2010-03-20 Marcelo Jimenez <mroberto(at)users.sourceforge.net>
	* Forward port of svn revision 502:
	SF Patch Tracker [ 2836704 ] Search for nested serviceList (not
	stopping at the first lis
	Submitted By: zephyrus ( zephyrus00jp )

	Internet Gateway Device description contains nested serviceList (rootdevice
	-> servicelist, subdevice
	and subdevice has the lower-level serviceList, etc..)

	Unfrotunately, the sample code sample_util.c used by tv_device sample,
	etc.
	has a code that looks for only the first top-level serviceList.
	This results in the failure to read all the services of an IGD xml
	description.

	Attached patch modifies this behavior and looks for the service by
	visiting all the serviceList in xml document in turn.

	With the modified patch (ad additional modification), I could
	simulate an IGD device and created a modified control program for that.

	Patch against 1.6.6

	TIA.

2010-03-20 Marcelo Jimenez <mroberto(at)users.sourceforge.net>
	* SF Patch Tracker [ 2973319 ] Problem in commit 499
	Submitted By: Nick Leverton (leveret)
	Afraid that this doesn't compile, it seems retval should be retVal in two
	places.

2010-03-16 Marcelo Jimenez <mroberto(at)users.sourceforge.net>
	* Fix for the ithread_mutex_unlock() logic in UpnpInit().
	Thanks for Nicholas Kraft.

2010-03-15 Marcelo Jimenez <mroberto(at)users.sourceforge.net>
	* SF Patch Tracker [ 2962606 ] Autorenewal errors: invalid SID,
	too-short renewal interval
	Submitted By: Nick Leverton (leveret)

	Auto-renewals send an invalid SID due to a missing UpnpString_get_String
	call. They also send a renewal interval of 0 instead of copying it from
	the original subscription.

2010-03-15 Marcelo Jimenez <mroberto(at)users.sourceforge.net>
	* SF Patch Tracker [ 2964685 ] patch for avoiding inet_ntoa (1.8.0)
	Submitted By: Nick Leverton (leveret)

	Seems like SF's tracker won't let me add a patch to someone else's issue ?!
	This refers to https://sourceforge.net/support/tracker.php?aid=2724578

	The calls to inet_ntoa are in getlocalhostname(), which is called from
	UpnpInit when it is returning the bound IP address.
	UpnpInit/getlocalhostname hasn't been updated to IPv6, I presume this is
	deliberate so that it doesn't start returning IPv6 addresses and
	overwriting the caller's IPv4-sized allocation.

	The attached patch just updates getlocalhostname to use inet_ntop instead
	of inet_ntoa, and also documents the fact that UpnpInit is IPv4 only whilst
	UpnpInnit2 is both IPv4 and IPv6.

	A fuller solution might be to change UpnpInit to use some variant on
	UpnpGetIfInfo. UpnpInit could still be left as IPv4 only if desired -
	perhaps UpnpGetIfInfo could take an option for the desired address family.
	getlocalhostname and its own copy of the interface scanning code would then
	be redundant. I don't have IPv6 capability here though so I'm reluctant to
	change the IPv6 code, as I have no way to test it.

2010-03-15 Marcelo Jimenez <mroberto(at)users.sourceforge.net>
	* SF Patch Tracker [ 2724578 ] patch for avoiding memory leaks when
	add devices

	each time a device been added, UpnpInit() is called, on exit, UpnpFinish()
	is called, but the memories allocated by ThreadPoolInit() may lost because
	there's no code to call ThreadPoolShutdown() to release the memories. And
	inet_ntoa() is not thread safe, so in my patch, I substitute inet_ntoa()
	with inet_ntop().

2010-03-14 Marcelo Jimenez <mroberto(at)users.sourceforge.net>
	* SF Patch Tracker [ 2964687 ] Add new string based accessors to upnp
	object API

	As per email to pupnp-devel, this is the patch to add the _strget_
	accessors for string-like objects in the interface.

	Will add a further patch shortly to udpate the sample programs.

2008-06-27 Marcelo Jimenez <mroberto(at)users.sourceforge.net>
	* Nicholas Kraft's patch to fix some IPv6 copy/paste issues. He
	reported to be getting infinite loops with the svn code.

2008-06-13 Marcelo Jimenez <mroberto(at)users.sourceforge.net>
	* SF Bug Tracker [ 1984541 ]
	ixmlDocumenttoString does not render the namespace tag.
	Submitted By: Beliveau - belivo

	Undoing the patch that fixed this problem. In fact, there was no
	problem and the patch was wrong.

2008-06-11 Marcelo Jimenez <mroberto(at)users.sourceforge.net>
	* Ingo Hofmann's patch for "Content-Type in Subscription responses".
	Adds charset="utf-8" attribute to the CONTENT-TYPE header line.

	Hi,

	I have found an inconsistency regarding the text/xml content-type
	returned by libupnp. It looks like only subscription responses send
	"text/xml" where all other messages contain "text/xml; charset="utf-8"".
	Since I'm working on an DLNA device the latter behaviour is mandatory.
	I changed the according lines in gena_device.c (see attached patch).
	I'm not sure if it would be ok for other device to have the charset
	field but it would help me a lot :)

	Best regards,
	Ingo

2008-06-04 Marcelo Jimenez <mroberto(at)users.sourceforge.net>
	* SF Bug Tracker [ 1984541 ]
	ixmlDocumenttoString does not render the namespace tag.
	Submitted By: Beliveau - belivo

	The problem occurs when converting a xml document using
	ixmlDocumenttoString containing a namespace tag created with
	ixmlDocument_createElementNS. The namespace tag doesn't get rendered.

	example: The following code fragment prints:

	<?xml version="1.0"?>
	<root></root>

	instead of:
	<?xml version="1.0"?>
	<root xmlns="urn:schemas-upnp-org:device-1-0"></root>

	Code:

	#include <stdlib.h>
	#include <upnp/ixml.h>

	int main()
	{
		IXML_Document* wDoc = ixmlDocument_createDocument();
		IXML_Element* wRoot = ixmlDocument_createElementNS(wDoc,
			"urn:schemas-upnp-org:device-1-0", "root");
		ixmlNode_appendChild((IXML_Node *)wDoc,(IXML_Node *)wRoot);
		DOMString wString = ixmlDocumenttoString(wDoc);
		printf(wString);
		free(wString);
		ixmlDocument_free(wDoc);

		return 0;
	}

	The problem was in the printing routine, not in the library data
	structure.

2008-05-31 Marcelo Jimenez <mroberto(at)users.sourceforge.net>
	* Charles Nepveu's suggestion of not allocating a thread for
	MiniServer when it is not compiled.

2008-05-24 Marcelo Jimenez <mroberto(at)users.sourceforge.net>
	* Ported Peter Hartley's patch to compile with mingw.

2008-05-24 Marcelo Jimenez <mroberto(at)users.sourceforge.net>
	* Added some debug capability to ixml.

2008-05-02 Marcelo Jimenez <mroberto(at)users.sourceforge.net>
	* Merged Charles Nepveu's IPv6 work. libupnp now is IPv6 enabled.

2008-02-06 Marcelo Jimenez <mroberto(at)users.sourceforge.net>
	* Breaking API so that we now hide internal data structures.

2008-02-06 Marcelo Jimenez <mroberto(at)users.sourceforge.net>
	* Rewrote Peter Hartley's patch to include a new extra header field in
	FileInfo.

*******************************************************************************
Version 1.6.22
*******************************************************************************

2017-07-07 James Cowgill <james410(at)cowgill.org.uk>

	Replace MD5 impmplementation with public-domain version

	Currently the RSA MD5 implementation is used. Unfortunately the license
	has some potential issues:
	* The license does not explicitly allow distributing derivative works.
	This was the original argument used in
	[Debian #459516](https://bugs.debian.org/459516).
	* The license contains an advertising clause similar to the BSD 4-clause
	license. This is incompatible with the GPL and if it were enforced,
	would require RSA to be mentioned by pretty much everyone who uses pupnp.

	The simple solution is to replace it with a public domain
	implementation. I've taken OpenBSDs implementation and tweaked it
	slightly for use by pupnp by:
	- Adjusting the includes.
	- Removing the __bounded__ attributes which are specific to OpenBSD.
	- Using the standard integer types from stdint.h.
	- Using memset instead of explicit_bzero.

2016-12-16 Peter Pramberger <peterpramb(at)users.sf.net>

	ixml/test/test_document.c is missing the string.h include, therefore
	the compiler complains about an implicit declaration.

*******************************************************************************
Version 1.6.21
*******************************************************************************

2016-12-16 Gabriel Burca <gburca(at)github>

	If the error or info log files can not be created, use stderr and
	stdout instead.

2016-12-08 Uwe Kleine-König <uwe(at)kleine-koenig.org>

	Fix out-of-bound access in create_url_list() (CVE-2016-8863)

	If there is an invalid URL in URLS->buf after a valid one, uri_parse is
	called with out pointing after the allocated memory. As uri_parse writes
	to *out before returning an error the loop in create_url_list must be
	stopped early to prevent an out-of-bound access

	Bug: https://sourceforge.net/p/pupnp/bugs/133/
	Bug-CVE: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-8863
	Bug-Debian: https://bugs.debian.org/842093
	Bug-Redhat: https://bugzilla.redhat.com/show_bug.cgi?id=1388771

2016-11-30 Uwe Kleine-König <uwe(at)kleine-koenig.org>

	miniserver: fix binding to ipv6 link-local addresses

	Linux requires to have sin6_scope_id hold the interface id when binding to
	link-local addresses. This is already in use in other parts of upnp, so
	portability shouldn't be in the way here. Without this bind(2) fails with
	errno=EINVAL (although ipv6(7) from manpages 4.08 specifies ENODEV in this
	case).

	Fixes: https://bugs.debian.org/813249

2016-09-15 Mathew Garret <(at)mjg59 (twitter)>

	SF Bug Tracker #132 CVE-2016-6255: write files via POST

	Submitted by: Balint Reczey in 2016-08-02

	From Debian's BTS https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=831857 :
	From: Salvatore Bonaccorso carnil@debian.org
	To: Debian Bug Tracking System submit@bugs.debian.org
	Subject: libupnp: write files via POST
	Date: Wed, 20 Jul 2016 11:03:34 +0200
	Source: libupnp
	Version: 1:1.6.17-1
	Severity: grave
	Tags: security upstream
	Justification: user security hole
	Hi
	See http://www.openwall.com/lists/oss-security/2016/07/18/13 and
	https://twitter.com/mjg59/status/755062278513319936 .
	Proposed fix:
	mjg59/pupnp-code@be0a01b
	Regards,
	Salvatore

	From Mathew Garret's commit: Don't allow unhandled POSTs to write to the filesystem by default

*******************************************************************************
Version 1.6.20
*******************************************************************************

2016-02-22 Jean-Francois Dockes <medoc(at)users.sf.net>

	SF Bugs #131, Creator: Jean-Francois Dockes

	I know it sounds crazy that nobody ever saw this, but the CONTENT-LENGTH
	value in GENA NOTIFY messages is too small by one.

	It appears that most current control points don't notice the extra
	character (an LF, which is validly there but not included in
	Content-Length), probably because their protocol handler is reasonably
	lenient, and because the missing body LF does not prevent parsing the
	XML. But there is a least one anal CP (Linn Kazoo) which barfs, because
	it reads all data until connection close and the size mismatch triggers
	a bug.

	"Proof":
	In gena_device.c:217 (notify_send_and_recv())

	ret_code = http_SendMessage(&info, &timeout,
	    "bbb",
	    start_msg.buf, start_msg.length,
	    propertySet, strlen(propertySet),
	    CRLF, strlen(CRLF));

	start_msg has all the headers, including the empty line.
	Content-length should be strlen(propertySet) + strlen(CRLF) (2)
	In gena_device.c:433 (AllocGenaHeaders())

	rc = snprintf(headers, headers_size, "%s%s%"PRIzu"%s%s%s",
	    HEADER_LINE_1,
	    HEADER_LINE_2A,
	    strlen(propertySet) + 1,
	    HEADER_LINE_2B,
	    HEADER_LINE_3,
	    HEADER_LINE_4);

	HEADER_LINE_2A is "CONTENT-LENGTH: ".
	The following value should be strlen(propertySet) + 2

2016-01-07 Marcelo Roberto Jimenez <mroberto(at)users.sourceforge.net>

	Fix for a reported integer overflow

2016-01-07 Jean-Francois Dockes <medoc(at)users.sf.net>
2016-01-07 Nick Leverton <nick(at)leverton.org>
	SF Patches #60, Creator: Jean-Francois Dockes

	When libupnp is configured with --enable-ipv6 but ipv6 is not available
	on the system (for example because the ipv6 code is not loaded in a Linux
	kernel as is the case by default on Raspbian), the ipv6 socket creation
	call will fail in miniserver.c and the library init will fail, even if
	the ipv4 initialisation would have succeeded.

	Let a library configured with --enable-ipv6 initialize in ipv4-only
	mode if ipv6 is not available instead of failing. This can happen
	if no ipv6 code is configured or loaded in the kernel.

	Don't fail if IPv6 is unavailable.
	We might be an IPv6 enabled distro build running on an IPv4-only custom kernel.

2016-01-07 Nick Leverton <nick(at)leverton.org>

	SF Bug Tracker #128, Creator: Nick Leverton
	redefining strndup causes "error: expected identifier or '(' before '__extension__'"

	Fix redefinition of strnlen and strndup
	These are available when HAVE_STRNDUP and HAVE_STRNLEN are defined, but
	libupnp provides an extern prototype anyway.  Recent versions of glibc
	define this prototype differently, causing the following compile error:

	src/api/UpnpString.c:47:15: error: expected identifier or '(' before  '__extension__'
		extern char *strndup(__const char *__string, size_t __n);

2016-01-07 Nick Leverton <nick(at)leverton.org>

	SF Bug Tracker #129, Creator: Nick Leverton
	shutdown() on UDP sockets logs ENOTCONN message.
	https://sourceforge.net/p/pupnp/bugs/129/

	Fix ENOTCONN "Error in shutdown: Transport endpoint is not connected"

	When logging is enabled, ssdpserver logs bursts of
	"Error in shutdown: Transport endpoint is not connected"
	This is because shutdown() is not supported for UDP sockets and under
	recent UNIX specifications it returns ENOTCONN if used.

2016-01-07 Nick Leverton <nick(at)leverton.org>

	SF Bug Tracker #127, Creator: Klaus Fischer
	Miniserver uses INADDR_ANY instead of HostIP
	https://sourceforge.net/p/pupnp/bugs/127/

	The internal miniserver.c uses INADDR_ANY instead of the HostIP/IfName
	provided when initializing libupnp. But, this HostIP/IfName gets used
	for the UDP socket when multicasting SSDP messages.  Because of this,
	miniserver may end up sending from different IP address than ssdpserver.
	This patch causes miniserver to use the already known interface address.

2016-01-07 Marcelo Roberto Jimenez <mroberto(at)users.sourceforge.net>

	SF Bug Tracker #130, Creator: Shaddy Baddah
	infinite loop in UpnpGetIfInfo() under WIN32

	Original code makes no sense. This patch should fix it.

2015-02-04 Shaun Marko <semarko@users.sf.net>

	Bug tracker #124 Build fails with --enable-debug

	Build environment
	Fedora 21
	X86-64
	* gcc 4.9.2

	How to repeat
	$ ./configure --enable debug
	$ make
	libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -I../upnp/inc -I./inc -I../threadutil/inc
	-I../ixml/inc -I./src/inc -pthread -g -O2 -Wall -MT src/api/libupnp_la-UpnpString.lo
	-MD -MP -MF src/api/.deps/libupnp_la-UpnpString.Tpo -c src/api/UpnpString.c
	-fPIC -DPIC -o src/api .libs/libupnp_la-UpnpString.o src/api/UpnpString.c:47:16:
	error: expected identifier or '(' before 'extension'
	extern char *strndup(const char *string, size_t __n);
	^
	Makefile:1016: recipe for target 'src/api/libupnp_la-UpnpString.lo' failed

	Reason for failure
	Build enables -O2 optimization flags which causes the inclusion of a
	macro implementation of strndup from include/bits/string2.h.

	Workarounds
	Disable optimization when configuring or making:
	$ configure CFLAGS='-g -pthread -O0' --enable-debug
	$ make
	or
	$ configure --enable-debug
	$ make CFLAGS='-g -pthread -O0' Define NO_STRING_INLINES
	$ export CFLAGS="-DNO_STRING_INLINES -O2"
	$ ./configure --enagble-debug
	$ make

	Fix
	* Don't declare strndup in src/api/UpnpString.c if it exists

2015-02-01 Jean-Francois Dockes <medoc@users.sf.net>

	Out-of-tree builds seem to be currently broken, because ixml and
	threadutil files need an include path to include UpnpGlobal.h, and
	configure tries to copy files into a directory which it does not create.
	The patch fixes both issues.

2014-01-03 Peng <howtofly(at)gmail.com>

	rewrite soap_device.c

	1) separate HTTP handling from SOAP handling
	2) remove repeated validity check, each check is performed exactly once
	3) fix HTTP status code per UPnP spec, SOAP spec and RFC 2774
jperkin pushed a commit that referenced this issue Oct 6, 2019
maradns-2.0.17:
This is the stable release of MaraDNS. No security updates were made.

        Deadwood updated to 3.2.14
        Default max_mem value doubled as discussed in GitHub issue #52.
jperkin pushed a commit that referenced this issue Oct 20, 2019
maradns-2.0.17:
This is the stable release of MaraDNS. No security updates were made.

        Deadwood updated to 3.2.14
        Default max_mem value doubled as discussed in GitHub issue #52.
jperkin pushed a commit that referenced this issue Oct 28, 2019
Switch from qt4 to qt5. Remove the qt4 option.

CHANGELOG
=========
BibleTime 2.11.2
The BibleTime team is proud to announce the immediate availability of BibleTime version 2.11.2 which is the second bugfix release in the stable 2.11 series of BibleTime.

All users of BibleTime are encouraged to upgrade, especially users still using BibleTime version 2.10 or earlier.

Notable changes since 2.11.1:

    Updated translations.
    Improved compatibility with Qt 5.11 (including bug #140)
    Fixed crash when clicking on "full syntax" (bug #134)
    Fixed Mag not always working with Hebrew / Strongs (bug #132)
    Fixed BibleTime startup on some versions of Windows (bug #119)
    Fixed Bookshelf Wizard buttons not being translated (bug #131)
    Fixed application icon directory to match the FreeDesktop standard
    Fixed bug which prevented installing of works (bug #124)

BibleTime 2.11.1
The BibleTime team is proud to announce the immediate availability of BibleTime version 2.11.1 which is the first bugfix release in the stable 2.11 series of BibleTime.

All users of BibleTime are encouraged to upgrade, especially users still using BibleTime version 2.10 or earlier.

Notable changes since 2.11.0:

    Enhanced packaging for Windows.
    Enhanced some error messages.
    Updated translations. Thanks to all translators!.
    Improved build-time detection of Qt WebEngine.
    Fixed crash with Qt 5.9 (workaround for QTBUG-61213).
    Fixed apocryphal books not being properly displayed (#12).
    Fixed paragraphs being displayed incorrectly (#37).
    Fixed some greek dictionary modules not working in mag (#52).
    Fixed windows not starting on some Windows 7 computers (#90).
    Fixed a bug which hindered changing to second tab in Tabbed view (#91)
    Fixed Qt "More Info..." tab being blank (#92)
    Fixed crash when closing module display window with Qt 5.8 (#94)
    Fixed images not being displayed (#95).
    Fixed reloading of "All Text Windows" shortcuts not working (#102).
    Fixed problem with Save - Yes/No dialog and editing a Personal commentary (#105).

BibleTime 2.11.0
Thanks to the great mercy of our Savior and Lord, king Jesus Christ, the BibleTime team is yet again pleased to announce the immediate availability of BibleTime version 2.11.0, which is the first full release in the the stable 2.11 series of BibleTime.

All users of BibleTime are encouraged to upgrade, including users of the BibleTime version 2.10 series.

Notable changes since the 2.10 series:

    Redesigned bookshelf manager
    Many bugfixes and optimizations

Build requirements changes:

    A C++11 compiler is now required
    Qt 5 or later is now required
    xml-po is no longer required

BibleTime 2.11 RC 2
The BibleTime team is proud to announce the immediate availability of BibleTime version 2.11 RC 2, which is the second release candidate in the stable 2.11 series of BibleTime, with a number of bugs fixed since RC 1.

Notable changes since the 2.10 series:

    Many bugfixes and optimizations
    Redesigned bookshelf manager

Build requirements changes:

    A C++11 compiler is now required
    Qt 5 or later is now required
    xml-po is no longer required

BibleTime 2.11 RC 1
The BibleTime team is proud to announce the immediate availability of BibleTime version 2.11_rc1,
which is the first release candidate in the stable 2.11 series of BibleTime.

Notable changes since the 2.10 series:

    Many bug fixes and optimizations
    Redesigned bookshelf manager

Build requirements changes:

    A C++11 compiler is now required
    Qt 5 or later is now required
    xml-po is no longer required

BibleTime 2.11 beta 1
The BibleTime team is proud to announce the immediate availability of BibleTime version 2.11_beta1,
which is the first (and only) beta release in the stable 2.11 series of BibleTime.

Notable changes since the 2.10 series:

    Many bug fixes and optimizations
    Redesigned bookshelf manager

Build requirements changes:

    A C++11 compiler is now required
    Qt 5 or later is now required
    xml-po is no longer required
jperkin pushed a commit that referenced this issue Nov 15, 2019
2.62.0 (stable):

Glib:
* Add ustring::make_valid()
  (Krzysztof Piecuch) Bug #780075
  (Martin Ejdestig) Merge request !11
  Issue #40 (Tanu Kaskinen)
* Use convert_return_gchar_ptr_to_*() in a couple of ustring methods
  (Martin Ejdestig) Merge request !11
* Add ustring::sprintf(), wrapping g_strdup_printf()
  (Daniel Boles) Issue #21
* Fix callback races in glibmm when GSource is destructed
  (Dainis Jonitis) Issue #41
* Checksum, Datetime, TimeZone: Add Glib::Value specializations
  (Kjell Ahlstedt)
* Property: Add const get_proxy() returning ReadOnly
  Getting Proxy from ReadOnly is const
  (Daniel Boles) Issue #44
* Property: Update for compatibility with Gtk::Builder
  (Kjell Ahlstedt)
* Fix memory leak in Variant<std::tuple<>>::create()
  (Van de Bugger, Kjell Ahlstedt) Issue #48
* Deprecate TimeVal
  (Kjell Ahlstedt)

Gio:
* Add Application::add_option_group()
  (Kjell Ahlstedt Issue #46 (Patrick Storz)
* DBus::Object: Fix refcounts in some vfuncs
  (Kjell Ahlstedt)
* Gio::DBus: Add ObjectProxy, ObjectSkeleton, ObjectManager,
  ObjectManagerClient, ObjectManagerServer
  (Kjell Ahlstedt) Issue #43 (Martin Ejdestig)
* Drive, MountOperation, ThemedIcon, TlsDatabase, VolumeMonitor:
  Fix ownership of some lists and arrays (Fixes memory leaks
  and dangling pointers)
  (Kjell Ahlstedt)
* Add SocketControlMessage::add_deserialize_func()
  (Kjell Ahlstedt) Issue #52 (Ankur deep jaiswal)

gmmproc:
* Update for new glib deprecation macros
  (Kjell Ahlstedt)

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

Documentation:
* Glib::init(), Gio::init(): Improve the documentation
  (Kjell Ahlstedt) Issue #49 (Van de Bugger)
* Glib::ustring can't always replace std::string
  (Kjell Ahlstedt) Issue #47 (Patrick Storz)
jperkin pushed a commit that referenced this issue Nov 24, 2019
0.35 2019-09-21T13:50:02Z
  - add support for UDP #52
jperkin pushed a commit that referenced this issue Jan 3, 2020
0.14.8, released 2019-05-01
    #78, add strMap
0.14.7, released 2018-09-18
    #75, escape single quote (') characters as &#39;
    #72, update some dead URLs
0.14.6, released 2018-02-27
    Fix up source positions on bogus <! markers
0.14.5, released 2018-02-27
    Fix up source positions on bogus <? markers
0.14.4, released 2018-02-26
    #71, fix up source positions on bogus comments
0.14.3, released 2018-01-21
    #70, fix up source positions on comments
0.14.2, released 2017-11-30
    #66, make sure positions are correct for lone & characters
0.14.1, released 2017-02-25
    #63, add maybeAttrib
0.14, released 2016-06-11
    #14, eliminate Text.HTML.Download
0.13.10, released 2016-05-06
    #51, improve the Haddock documentation
    #52, fix some > 16bit HTML entities
jperkin pushed a commit that referenced this issue Jan 27, 2020
## 0.4.0 / 2020-01-18

### Major Enhancements

  * Drop Ruby 2.3 support

### Minor Enhancements

  * Remove parent command&#39;s flags from subcommand usage (#44)

### Development Fixes

  * Adopt Jekyll&#39;s rubocop config for consistency

### Documentation

  * fixes the readme (#52)
jperkin pushed a commit that referenced this issue Feb 20, 2020
Changelog:
3 December 2019: Wouter
	- Fix #52: do not log transient network full errors unless higher
	  verbosity is set.
	- Fix checkconf test for new error output string.
	- tag for 4.2.4rc1 release.

27 November 2017 Jeroen
	- Fix regressions in configparser.y

22 November 2019: Wouter
	- Fix #48: Add make distclean that removes config.h made by configure.
	  And add maintainer-clean that removes bison and flex output.

18 November 2019: Wouter
	- Detect fixed time memcmp for openssl 0.9.8 compatibility.
	- Detect EC_KEY_new_by_curve_name for openssl 0.9.8.
	- include limits.h for UINT_MAX.
	- If no recvmmsg, dont use msg_flags member, but errno for error,
	  where our fallback function left it, msg_flags also does not exist
	  on some systems.
	- Remove unused variable warning for portability.

14 November 2019: Wouter
	- Fix checkconf test with filenames that sort in the same order.
	- Tag for 4.2.3rc1.  Branch master is 4.2.4 in development.

11 November 2019: Wouter
	- Fix #44: document that remote-control is a top-level nsd.conf
	  attribute.
	- Fix compile on OSX.
	- Fix for #44: nicer top-level clause documentation.

22 October 2019: Jeroen
	- Number of different UDP handlers has been reduced to one. recvmmsg
	  and sendmmsg implementations are now used on all platforms.
	  Compatible implementations are in place for systems that lack the
	  system calls.
	- Socket options are now set in designated functions for easy reuse.
	- Socket setup has been simplified for easy reuse.
	- Configuration parser is now aware of the context in which an option
	  was specified.

21 October 2019: Wouter
	- For #21 add
	  contrib/patch_for_s6_startup_and_other_service_supervisors.diff
	  that adds support for readiness notification with READY_FD from
	  Cameron Nemo.

17 October 2019: Jeroen
	- Fix #40: Merge small fixes for confine-to-zone by Greg Bock.

15 October 2019: Jeroen
	- For #39: Merge confine-to-zone feature contributes by Greg Bock.

26 September 2019: Wouter
	- Fix #38: log address and failure reason with tls handshake errors,
	  squelches (the same as unbound) some unless high verbosity is used.
	- Fixup clang analysis warning in xfrd_parse_received_xfr_packet
	  master dereference.

25 September 2019: Wouter
	- The nsd.conf includes are sorted ascending, for include statements
	  with a '*' from glob.

16 September 2019: Wouter
	- Fixup warnings during --disable-ipv6 compile.
	- Fixup unit test executable to run without IPv6.

4 September 2019: Wouter
	- Fix #35: excessive logging of ixfr failures, it stops the log when
	  fallback to axfr is possible. log is enabled at high verbosity.

2 September 2019: Wouter
	- For #21: pidfile "" allows to run NSD without a pidfile, for
	  startup management tools like daemontools.

28 August 2019: Wouter
	- In tests check for tls test tool availability.
jperkin pushed a commit that referenced this issue Mar 25, 2020
Update ruby-mixlib-authentication to 3.0.6.


3.0.6 (2019-12-30)

* Test on Ruby 2.7 + random testing improvements #51 (tas50)
* Substitute require for require_relative #52 (tas50)


3.0.4 (2019-10-31)

* Add BuildKite PR Testing #47 (tas50)
* Update project owner + Remove Travis CI #48 (tas50)
* Update mixlib-log requirement from ~> 2 to ~> 3 #50 (dependabot-preview[bot])


3.0.1 (2019-04-23)

* remove hashrocket syntax #40 (lamont-granquist)
* Update testing boilerplate #41 (tas50)
* Update codeowners and add github PR template #43 (tas50)
* Only ship the required libraries in the gem artifact #44 (tas50)
* update travis, drop ruby < 2.5, major version bump #45 (lamont-granquist)
* Add back Ruby 2.4 support / update testing #46 (tas50)
jperkin pushed a commit that referenced this issue Mar 25, 2020
Update ruby-mixlib-cli to 2.1.5.


2.1.5 (2019-12-22)

* Use our standard rakefile #68 (tas50)
* Fix chef-style #71 (vsingh-msys)
* Add windows PR testing with Buildkite #73 (tas50)
* Test on Ruby 2.7 + random testing improvements #75 (tas50)


2.1.1 (2019-06-10)

* Don't explode when there are unknown keys in 'config' #66 (marcparadise)


2.1.0 (2019-06-07)

* Setup BuildKite for PR testing #61 (tas50)
* Disable Travis testing & Update codeowners #62 (tas50)
* Fix gem homepage url #64 (tsub)
* [MIXLIB-CLI-63] Add deprecated_option support #65 (marcparadise)


2.0.6 (2019-05-14)

* Add additional github templates and update codeowners #58 (tas50)
* Improve the --help text output of 'in:' #59 (btm)
* Print out human readable lists of allowed CLI options #60 (tas50)


2.0.3 (2019-03-20)

* fix global state pollution issues across examples #54 (lamont-granquist)
* Add back support for Ruby 2.4 #56 (tas50)


2.0.1 (2019-01-04)

* Don't ship the test files in the gem artifact #51 (tas50)


2.0.0 (2019-01-04)

* remove hashrockets syntax #43 (lamont-granquist)
* Remove require rubygems #44 (tas50)
* Update testing and contributing boilerplate #45 (tas50)
* More testing / release boilerplate #46 (tas50)
* Update codeowners and add github PR template #47 (tas50)
* Lint the example code #49 (tas50)
* update travis, drop ruby < 2.5, major version bump #52 (lamont-granquist)
* actually do the major version bump #53 (lamont-granquist)
jperkin pushed a commit that referenced this issue Mar 25, 2020
Update ruby-mixlib-log to 3.0.8.


3.0.8 (2019-12-30)

* Expand testing / Update GitHub templates #51 (tas50)
* Add Build Kite PR Testing #52 (tas50)
* Remove Travis PR Testing #53 (tas50)
* Resolve all warnings emitted during testing #54 (zenspider)
* Add windows testing in Buildkite #56 (tas50)
* Test on Ruby 2.7 + random testing improvements #58 (tas50)
* Substitute require for require_relative #59 (tas50)


3.0.1 (2019-01-05)

* reverting back to ruby 2.3 support #48 (lamont-granquist)


3.0.0 (2019-01-04)

* update travis, drop ruby < 2.5, major version bump #47 (lamont-granquist)

2.0.9 (2018-12-18)

* remove hashrocket syntax #41 (lamont-granquist)
* Remove the changelog generator gem #42 (tas50)
* Test on all the Ruby versions we support #43 (tas50)
* Test on Ruby 2.6 in Travis + test on Xenial #46 (tas50)
* Only ship the required library files in the gem artifact #45 (tas50)
jperkin pushed a commit that referenced this issue May 10, 2020
2.9.2:
	[ Michał Janiszewski ]
	* Only use x86-assembly when explicitly on x86
	* Use unsigned integers correctly
	* Initialize pointers that might otherwise not be

	[ Fabian Greffrath ]
	* update README esp. WRT directory structure

	[ Rosen Penev ]
	* fix compilation without SBR/PS_DEC (#48)
	* fix compilation with LC_ONLY_DECODER (#47)

	[ Fabian Greffrath ]
	* fix "inline function 'cfftf1' declared but never defined" compiler warning
	* fix some inconsistencies in the frontend output
	* mp4read_open: add check for failed frame buffer allocation
	* stszin: add check for allocation error and integer overflow
	* add a pkg-config file

	[ Stefan Pöschel ]
	* frontend: address compile warning + add missing LF (#50)

	[ François Cartegnie ]
	* library name is faad (#52)
	* Unbreak PS audio (#51)
jperkin pushed a commit that referenced this issue May 13, 2020
Patchlevel 7b (Oct 2019)

NEW FEATURES:
	o A X color database is not needed, but can be provided. The location of
	  the database can be given at compile time, default /etc/X11/rgb.txt.

BUGS FIXED:
	Ticket numbers refer to https://sourceforge.net/p/mcj/tickets/#.
	Debian bug numbers refer to https://bugs.debian.org/#.
	o Do not clip objects with line-thickness 0 having arrows. Ticket #53.
	o Do not segfault on circle/half circle arrowheads with a magnification
	  larger 42. Always draw circle arrowheads with 40 points. Ticket #52.
	o Allow circles or ellipses with negative radii. Ticket #49.
	o Avoid "dimension too large error" with tikz output by avoiding
	  coordinate values smaller than -16383.
	o Make tests (test1.c) work with -fsanitize=address compiler option.
	o Obey join-style of lines in tikz output.
	o Pass utf8-strings to svg output, escape some chars (<>&).
	o Accept inclined boxes and change them to polygons. Fixes ticket #43.
	o Make tests #27 and #33 work on Mac Darwin, failed due to whitespace
	  formatting differences. From Hanspeter Niederstrasser. Ticket #40.
	o Use only latex, neither etex or tex, to test tikz output. Usage of
	  etex, after hint from Roland Rosenfeld, closed debian bug 920368.
	o For tikz output, do not draw arrows on a single point line.
	o Omit spurious showpage when including jpg-file. From Rainer Buchty.
	o Correct a few memory leaks and corruptions. See commit d1c54f6.
	o Change negative color numbers to default color. Fixes ticket #30.
	o A spline with one point would cause segfault. Fixed, see ticket #29.
	o Allow one char without newline in the last line of an input file.
	  Fixes ticket #28.
	o Harden input, mainly against files in which an incomplete object would
	  be created and freeing the object would violate memory, i.e, it may
	  cause segfault. See, e.g., ticket #27.
	o Properly initalize line storage when reading fig files version 1.3.
	  Would segfault when reading incomplete line and trying to free it.
	  Fixes ticket #26, debian bug 906743.
	o Silently ignore the hundred-first and more comment lines. This
	  fixes ticket #25 and debian bug 906740.
	o Use SetFigFont, not SetFigFontNFSS in pictex output. Fixes
	  https://bugs.launchpad.net/ubuntu/+source/transfig/+bug/1359485 .
	o Accept blanks in color names (e.g., fig2dev -L eps -g"Misty Rose"..).
	o Correct typos in man-pages, debian 30_man_typo.patch.

-------------------------------------
Patchlevel 7a (May 2018)

NEW FEATURES:
	o Add option -w, wrap (create stand-alone perl file) for Perl/Tk output.
	o Distribute the X bitmaps files within fig2dev, no need to install
	  these files. The files were needed for Tk and Perl/Tk output.

BUGS FIXED:
	Ticket numbers refer to https://sourceforge.net/p/mcj/tickets/#.
	o Fix regression whereupon flipped ellipses were not read. Ticket #23.
	o Distribute i18n files ru_RU.CP1251.ps and uk_UA.KOI8-U.ps.
	o Make test "survive debian bug #890016" succeed on 32 bit systems.

-------------------------------------
Patchlevel 7 (April 2018)

OPTION LETTER CHANGES:
	o  Language         previous option         current option
	  ------------------------------------------------------------
	   cgm              -b dummy                -a
	   epic             -A scale                -d scale
	   eepic            -A scale                -d scale
	   eepicemu         -A scale                -d scale
	   gbx              -i on|off               -v
	   ibmgl            -m mag,xoff,yoff        -m mag -x xoff -y yoff
	   mp               -I file                 -d file
	   ps               -S dummy                -o

NEW FEATURES:
	o Print language-specific help text by using fig2dev -L lang -h.
	o Add option -M, multipage, for MetaPost output language.
	o Add option -P, pagemode, and -z to choose a pagesize for pdf output.
	o Add option -W (scaling of figures not possible) for tikz.
	o Add option -b, border width, for LaTeX output language.
	o Add option -f for pstex_t and pdftex_t output language.
	o Add uk_UA and ru_RU encodings for PostScript output. Ticket #12.

BUGS FIXED:
	o Update help text: Output help for dxf and textyl output language,
	  add description of -g option for Tk/Tcl and Perl/Tk output, allow -f
	  option for pstex_t and pdftex_t output language.

	Debian bug numbers refer to https://bugs.debian.org/#.
	Ticket numbers refer to https://sourceforge.net/p/mcj/tickets/#.
	o Sanitize input. Do not segfault on malformed input files. Fixes debian
	  bugs 881143, 881144, 881396, 890015, 890016, 882021 and also 882022.
	o Do not put an %%Orientation: comment into PostScript output. Some
	  viewers would rotate the resulting file, others not.
	o Fix build on NetBSD, which has a _setmode() function different from
	  _setmode() on Windows. Ticket #17. Also, avoid alloca(). Ticket #16.
	o tikz output: Omit the semicolon after \pgftext[..]{...};.
	o Define PostScript patterns with larger tiles, may render better. #13
	o Fix build in case libXpm is missing. Ticket #15.
	o Use netpbm programs instead of ghostscript, to produce smaller files.
	o Correctly embed eps files with binary preview (epsi, typically
	  found on Microsoft systems). Also, allow to embed ps-files. Fixes
	  debian bug 248807, ticket #8.
	o For compilation, do not depend on PATH_MAX being defined.
jperkin pushed a commit that referenced this issue Jun 7, 2020
Update ruby-mercenary to 0.4.0.


## 0.4.0 / 2020-01-18

### Major Enhancements

  * Drop Ruby 2.3 support

### Minor Enhancements

  * Remove parent command's flags from subcommand usage (#44)

### Development Fixes

  * Adopt Jekyll's rubocop config for consistency

### Documentation

  * fixes the readme (#52)
jperkin pushed a commit that referenced this issue Sep 16, 2020
Pkgsrc changes:
 * Added a patch to cope with fromStatT on NetBSD
 * Added a patch to cope with docker client default settings (build
   also on NetBSD)

Upstream changes:

1.5.3 (August 27th, 2020)

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

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

## 1.5.1

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

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

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

## 1.5.0
### July 21st, 2020

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

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

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

## 1.4.3 (TBD)

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

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

## 1.4.2 (May 21st, 2020)

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

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

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

## 1.4.1 (April 30th, 2020)

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

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

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

## 1.4.0 (April 7th, 2020)

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

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

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

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

## 1.3.6 (May 21st, 2020)

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

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

## 1.3.5 (April 28th, 2020)

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

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

## 1.3.4 (March 19th, 2020)

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

## 1.3.3 (March 5th, 2020)

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

## 1.3.2 (January 22nd, 2020)

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

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

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

## 1.3.1 (December 18th, 2019)

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

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

## 1.3 (November 14th, 2019)

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

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

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

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

## 1.2.4 (November 7th, 2019)

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

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

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

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


1.0.7 (2020-08-21)

* Optimize our requires #53 (tas50)

1.0.6 (2020-08-13)

* Optimize requires for non-omnibus installs #52 (tas50)
jperkin pushed a commit that referenced this issue Sep 16, 2020
Update ruby-diff-lcs to 1.4.4.


## 1.4.4 / 2020-07-01

- Fixed an issue reported by Jun Aruga in the Diff::LCS::Ldiff binary text
  detection. [#44][]
- Fixed a theoretical issue reported by Jun Aruga in Diff::LCS::Hunk to raise
  a more useful exception. [#43][]
- Added documentation that should address custom object issues as reported in
  [#35][].

- Fixed more diff errors, in part reported in [#65][].

  - The use of `Numeric#abs` is incorrect in `Diff::LCS::Block#diff_size`.
    The diff size _must_ be accurate for correct change placement.
  - When selecting @max_diff_size in Diff::LCS::Hunk, choose it based on
    `block.diff_size.abs`.
  - Made a number of changes that will, unfortunately, increase allocations
    at the cost of being safe with frozen strings.
  - Add some knowledge that when `Diff::LCS::Hunk#diff` is called, that we
    are processing the _last_ hunk, so some changes will be made to how the
    output is generated.

    - `old`, `ed`, and `reverse_ed` formats have no differences.
    - `unified` format will report `\ No newline at end of file` given the
      correct conditions, at most once. Unified range reporting also
      differs for the last hunk such that the `length` of the range is
      reduced by one.
    - `context` format will report `\No newline at end of file` given the
      correct conditions, up to once per "file". Context range reporting also
      differs for the last hunk such that the `end` part of the range is
      reduced by one to a minimum of one.

- Added a bunch more tests for the cases above, and fixed `hunk_spec.rb` so
  that the phrase being compared isn't nonsense French.

- Updated formatting.
- Added a Rake task to assist with manual testing on Ruby 1.8.

## 1.4.3 / 2020-06-29

- Fixed several issues with the 1.4 on Rubies older than 2.0. Some of this was
  providing useful shim functions to Hoe 3.x (which dropped these older
  Rubies a while ago). Specifically:

  - Removed Array#lazy from a method in Diff::LCS::Hunk.
  - Changed some unit tests to use old-style Symbol-keyed hashes.
  - Changed some unit test helper functions to no longer use keyword
    parameters, but only a trailing options hash.
  - Made the use of `psych` dependent on `RUBY_VERSION >= 1.9`.

  Resolves [#63][].

## 1.4.2 / 2020-06-23

- Camille Drapier fixed a small issue with RuboCop configuration. [#59][]
- Applied another fix (and unit test) to fix an issue for the Chef team.
  [#60][], [#61][]

## 1.4.1 / 2020-06-23

- Fix an issue where diff sizes could be negative, and they should be. [#57][],
  [#58][]

## 1.4 / 2020-06-23

- Ruby versions lower than 2.4 are soft-deprecated and will not be run as
  part of the CI process any longer.
- Akinora MUSHA (knu) added the ability for Diff::LCS::Change objects to be
  implicitly treated arrays. Originally provided as pull request [#47][],
  but it introduced a number of test failures as documented in [#48][], and
  remediation of Diff::LCS itself was introduced in [#49][].
- Resolved [#5][] with some tests comparing output from `system` calls to
  `bin/ldiff` with some pre-generated output. Resolved [#6][] with these
  tests.
- Resolved a previously undetected `bin/ldiff` issue with `--context` output
  not matching `diff --context` output.
- Resolved an issue with later versions of Ruby not working with an `OptParse`
  specification of `Numeric`; this has been changed to `Integer`.
- Brandon Fish added truffleruby in [#52][].
- Fixed two missing classes as reported in [#53]
jperkin pushed a commit that referenced this issue Sep 16, 2020
Update ruby-mixlib-authentication package to 3.0.7.


3.0.7 (2020-08-21)

* Optimize our requires #53 (tas50)

3.0.6 (2019-12-30)

* Test on Ruby 2.7 + random testing improvements #51 (tas50)
* Substitute require for require_relative #52 (tas50)
jperkin pushed a commit that referenced this issue Oct 24, 2020
This is an ABI breaking update so security/libfido2 must also be updated.

v0.8.0
  BREAKING: Fix cbor_tag_item not increasing the reference count on the tagged item reference it returns [Fixes #109] (discovered bt JohnGilmour)
  BREAKING: CBOR_DECODER_EBUFFER removed from cbor_decoder_status
  Fixed several minor manpage issues [#159] (discovered by kloczek@)
v0.7.0
  Fix bad encoding of NaN half-floats [Fixes #53] (discovered by BSipos-RKF)
  Fix potentially bad encoding of negative half-float with exponent < -14 [Fixes #112] (discovered by yami36)
  BREAKING: Improved bool support [Fixes #63]
  Fix memory_allocation_test breaking the build without CBOR_CUSTOM_ALLOC [Fixes #128] (by panlinux)
  Fix a potential build issue where cJSON includes may be misconfigured
  Breaking: Add a limit on the size of the decoding context stack (by James-ZHANG)
  Enable LTO/IPO based on CheckIPOSupported [#143] (by xanderlent)
v0.6.1
    Fix bad shared library version number
v0.6.0
    Correctly set .so version [Fixes #52].
    Fix & prevent heap overflow error in example code [#74] [#76] (by @nevun)
    Correctly set OSX dynamic library version [Fixes #75]
    Fix misplaced 0xFF bytes in maps possibly causing memory corruption
    BREAKING: Fix handling & cleanup of failed memory allocation in constructor
    and builder helper functions [Fixes #84]
    Globally enforced code style [Fixes #83]
    Fix issue possible memory corruption bug on repeated
    cbor_(byte)string_add_chunk calls with intermittently failing realloc calls
    Fix possibly misaligned reads and writes when endian.h is uses or when
    running on a big-endian machine [Fixes #99, #100]
jperkin pushed a commit that referenced this issue Aug 31, 2021
6.0.0 (2021-07-09)

Changed

* Updated cucumber-core ~> 10.0.0 and cucumber-messages ~> 17.0.0 This
  brings breaking changes because of internal changes in
  Cucumber::Messages. (#44)


6.0.1 (2021-07-19)

Changed

* Patched cucumber-core and cucumber-messages


6.1.0 (2021-08-09)

Added

* The possibility to verify if the plugin has already been installed or
  not. To do so, use Cucumber::Wire::Plugin.installed?. (46)

Changed

* cucumber-wire is now able to install itself as a plugin into
  cucumber-ruby. (46)


6.1.1 (2021-08-27)

Changed

* Use the new InstallPlugin hook rather than AfterConfiguration. (#52)
jperkin pushed a commit that referenced this issue Sep 20, 2021
1.1.3 (2021-09-16)

* Update chefstyle requirement from 1.6.2 to 1.7.1 #52
  (dependabot-preview[bot])
* Update chefstyle requirement from 1.7.1 to 1.7.2 #53
  (dependabot-preview[bot])
* Update chefstyle requirement from 1.7.2 to 1.7.5 #55
  (dependabot-preview[bot])
* Upgrade to GitHub-native Dependabot #56 (dependabot-preview[bot])
* Remove support for EOL Ruby 2.4 #59 (tas50)
* Update chefstyle requirement from 1.7.5 to 2.0.8 #60 (dependabot[bot])
* Update chefstyle requirement from 2.0.8 to 2.0.9 #61 (dependabot[bot])
* Add strip components support #58 (jasonwbarnett)
jperkin pushed a commit that referenced this issue Nov 9, 2021
pkgsrc change: add newline to the DESCR file.

1.0.2 (2021-09-20)

* Include Apache license in gem release. (a525d5b)
* Prefer audio/x-wav for WAV audio files. (#45)
* Prefer application/x-x509-ca-cert for Privacy-Enhanced Mail
  certificates. (#46)
* Prefer audio/flac for FLAC audio files. (#47)
* Prefer audio/aac for Advanced Audio Coding audio files. (#49)
* Prefer application/vnd.ms-access for Microsodt Access DB files. (#50)
* Support text/x-scss and text/x-sass stylesheets. (#52)
* Support encrypted Microsoft Access DB files. (#53)
* Prefer application/x-ole-storage for Microsoft Office files. (#54)
* Prefer text/markdown for Markdown files. (#55)
* Prefer audio/mpc for Musepack audio files. (#56)
* Support audio/webm audio files. (#58)
* Support image/avif images files. (#63)
jperkin pushed a commit that referenced this issue Dec 2, 2021
Change log:

1.9.0
======
- Remove unused variable
- Update deprecated autotools macros
- Do not mark text with ':' after '://' as a link (bug #52)
- Add support for links with scheme other than HTTP (bug #52)
- Fix missing-prototypes
- Create README.md. Update configure.ac.in
- Add basic gitlab CI
- Fix "Disabled labels on context menu are dark yellow"
- Fix a few deprecation warnings
- Fix make distcheck
- Fix blinking image on panel
- Remove commented code
- Update build system
- Fix make distcheck
- Remove deprecated gtk stock usage
- Fix build system
- Continue the gtk3 port
- Update URLs from goodies.x.o to docs.x.o (Bug #16171)
- po: update POTFILES.in
- gtk3: update css style with required changes from 3.20
- gtk3: drop libunique leftover flags and code
- gtk3: Drop support for GTK+-2.0
- bump post release
- Translation Updates:
  , Albanian, Amharic, Arabic, Armenian (Armenia), Asturian, Basque,
  Belarusian, Bulgarian, Catalan, Chinese (China), Chinese (Taiwan),
  Croatian, Czech, Danish, Dutch, Eastern Armenian, English
  (Australia), English (United Kingdom), Estonian, Finnish, French,
  Galician, German, Greek, Hebrew, Hungarian, Icelandic, Indonesian,
  Interlingue, Italian, Japanese, Kazakh, Korean, Latvian, Lithuanian,
  Malay, Norwegian Bokmål, Occitan (post 1500), Polish, Portuguese,
  Portuguese (Brazil), Romanian, Russian, Serbian, Slovak, Slovenian,
  Spanish, Swedish, Thai, Turkish, Ukrainian, Urdu, Urdu (Pakistan),
  Uyghur, Vietnamese
jperkin pushed a commit that referenced this issue Dec 13, 2021
Change log:

0.12.1 (2021-11-26)
======
- Dependency Changes:
  - GLib >= 2.44.0

- Performance Improvement:
  - Optimize sorting by content type
  - Load images asynchronously (#16, #29, #32, !34)
  - Increase image loading buffer size (!34)

- Appearance Changes:
  - Allow to display all files in the open dialog (!33)

- Code Refactoring:
  - Rework the file opening procedure (!33)

- Bug Fixes:
  - Fix a memory leak when closing the window directly
  - Refactoring: Clarify thumbnailer queue management
  - Thumbnailer: Do not empty an unprocessed file list
  - Update window title on image deletion or insertion
  - Perform content-based filtering wherever necessary
  - Set device scale for animated images
  - Properly recognize SVG compressed image files
  - Use the generic pixbuf loader for RAW image files
  - Fix pointer behavior in fullscreen mode
  - Icon bar: Properly highlight item under the cursor
  - Icon bar: Center on the active item for any size change
  - Fix regression: Exif orientation is not respected (#69)
  - Do not try to load images whose pixbuf is not available (!34)
  - Fix memory management of image loading objects (!34)
  - Use URIs instead of filenames in the `.desktop` file (#49)
  - Directory loading: Allow to load a directory via the cli
  - Flatpak: Access remote locations with GVfs
  - Directory loading: Fix improper use of GFileEnumerator APIs (#68)

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

0.12.0 (2021-10-11)
======
- Dependency Changes:
  - libxfce4ui >= 4.16.0
  - libxfce4util >= 4.16.0

- New Features:
  - Allow to choose the default scale (!29)
  - Keep the scale in memory for each loaded image (#7, #17, !28)
  - Toggle fullscreen mode by double clicking on the image

- Performance Improvement:
  - Optimize directory loading (#20, #22, #32, #37, !31)
  - Optimize image viewer redraw: Disable overlay scrolling (#64)
  - Optimize image viewer redraw: Reuse source surface (#64, !26)
  - Avoid using Cairo Xlib backend to create surfaces (#60, #61, #62, !25)
  - Optimize image viewer redraw: Animation (#64)
  - Optimize image viewer redraw: Background color (#64)
  - Optimize image viewer redraw: Clock (#64)
  - Optimize image viewer redraw: Selection box (#64)
  - Don't redraw the main window when it loses focus (#64)
  - Remove the shadow of the toolbar buttons (#51, #64)

- Appearance Changes:
  - Hide thumbnail scrollbar when unused (!24)
  - Use the same background for the image and the thumbnails (#36, !23)
  - Drop preferences-desktop-default-applications icon

- Code Refactoring:
  - Flatpak build (!32)
  - Refactoring: Use only one file filter for the app
  - Refactoring: Icon bar adjustments
  - Cleanup: `icon_bar.c`
  - Cleanup: Pass orientation directly from file to viewer
  - Code refactoring: Image viewer adjustments, scale and drawing (!27)
  - Use integers for the image rendering rectangle
  - Code cleanup: Build sanitation, obsolete code removal, spacing, normalization (!22)
  - Transfer contents from dispose() to finalize()
  - Add debugging macros

- Bug Fixes:
  - Protect asynchronous jobs from an application exit
  - Fix position of the active item in the icon bar when vertical (#34)
  - Take into account the device scale (#47, !30)
  - Properly load images via drag and drop (#67)
  - Delay GdkPixbufLoader "closed" signal handler
  - Use the same scale factor to zoom via action and scrolling
  - Fix a lack of centering when zooming via the menu action
  - Fix some memory leak (several commits of this kind)
  - Fix file creation monitoring
  - Try to display the image on `GDK_PIXBUF_ERROR_CORRUPT_IMAGE` (#39)
  - Always set adjustment upper bounds greater than page sizes (#35)
  - Scaling/zoom corrections (#30, !8)
  - Fix animated GIF display
  - Automate and sanitize memory management of sources (#65)
  - Fix `rstto_icon_bar_rows_reordered()` (#48)
  - Chain up to parent in dispose() and finalize()

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

0.11.0 (2021-06-11)
======
- Update copyright years and appdata infos
- Enable `HAVE_MAGIC_H`-delimited code
- Fix compilation warnings
- autoconf: Some updates
- Update `.gitignore`
- Add option to copy image to clipboard (!20)
- Allow dragging window when CSD is used (#52)
- Remove GSourceFunc casts
- Added new stock icons with reverse DNS format
- Updates README.md
- Include string.h
- Codebase cleanup (!7)
- Make build less verbose
- Update .gitignore
- Make sure that argument passed to strncmp is non-NULL (!1)
- privacy_dialog.c: Remove dead initialization (!2)
- image_list.c: Remove dead assignment (!2)
- Add basic GitLab pipeline
- Switch to README.md and foreign automake mode
- Bug #16717: Move from exo-csource to xdt-csource
- Resolve couple "cast between incompatible function types" warnings
- Fix memory leaks in Privacy Dialog
- Resolve deprecation warnings
- Resolve some deprecation warnings
- Clean up unused functions
- Rename vars and funcs: show -> hide
- Add inactivity timeout setting to Preferences
- Hide the cursor while inactive in fullscreen mode
- Fix 'Status bar appears upon leaving fullscreen'
- Update .gitignore
- Do not show translation info on --help output
- Fix "window-state-event" handler
- Update credits
- Add support for old gtk2-style bg color settings
- Add missing LDFLAGS (fixes build on *bsd)
- In fullscreen mode, show toolbar when the mouse pointer is moved to
the top
- Return to git versioning
- Translation Updates:
  Albanian, Arabic, Armenian (Armenia), Basque, Belarusian, Bulgarian,
  Catalan, Chinese (China), Chinese (Taiwan), Croatian, Czech, Danish,
  Dutch, Eastern Armenian, English (Australia), English (United
  Kingdom), Estonian, Finnish, French, Galician, German, Greek, Hebrew,
  Hungarian, Icelandic, Indonesian, Interlingue, Italian, Japanese,
  Kazakh, Korean, Lithuanian, Malay, Norwegian Bokmål, Occitan (post
  1500), Polish, Portuguese, Portuguese (Brazil), Romanian, Russian,
  Serbian, Slovak, Slovenian, Spanish, Swedish, Telugu, Thai, Turkish,
  Ukrainian, Uyghur
jperkin pushed a commit that referenced this issue Jan 18, 2022
Changelog:
Version 1.78.0

Known Issues

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

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

New Libraries

  * No new libraries.

Updated Libraries

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

Updated Tools

  * Build:
      + Includes release of B2 version 4.7.2.
jbarfield pushed a commit to bissinc/pkgsrc that referenced this issue Mar 22, 2022
Note that xmpp.py has been removed; use xmpp-message instead.

pkgsrc changes:
 Allow python 3 builds, now that it works with python 3.

Upstream changes:

2021-12-28 0.7.0
================
- Documentation: Improve README and setup.py
- ``xmpp-message``: Evaluate return value from ``connection.auth()`` and
  croak when it fails
- ``xmpp-message``: Optionally read credentials from ``~/.xsend`` file
- Remove ``basic.py`` and ``xsend.py`` example programs


2021-12-28 0.6.5
================
- Python 3: Encoding fix for authentication (TritonDataCenter#52). Thanks, @D-L, @sumdog and @gdt!


2021-10-19 0.6.4
================
- Python 3: Fix handling of ``socket.error``/``OSError`` exceptions
jperkin pushed a commit that referenced this issue Apr 13, 2022
new feature:
    :z <keyword> lets you jump to a directory that matches the keyword.
     (zoxide required) #52 4e4c1b7
    :cd | :z => Go to home directory. b536332

fix:
    Fix bug when reading .git/HEAD to show branch name 2de3a97

some refactoring: 830812e 6377d66 bd12fa6
jperkin pushed a commit that referenced this issue Jun 2, 2022
Upstream changes:
#-#-#-#-#-#-#-#-#-#    Changes in TTR version 0.24.2    #-#-#-#-#-#-#-#-#-#


BUG FIXES

  - Check for 'ratio > 0' before calculating 'n' in zlema() C code. The prior
    code could result in division by 0, which was flagged by clang-UBSAN.
    Thanks to Prof Brian Ripley for the report. (#100)


#-#-#-#-#-#-#-#-#-#    Changes in TTR version 0.24.1    #-#-#-#-#-#-#-#-#-#


BUG FIXES

  - Fix leading NA accounting in wma() C code. The prior code caused invalid
    reads under valgrind. Thanks to Prof Brian Ripley for the report. (#99)

  - Check for 'ratio > 0' before calculating 'n' in ema() C code. The prior
    code could result in division by 0, which was flagged by UBSAN. Thanks to
    Prof Brian Ripley for the report. (#100)

  - Make ALMA() output length equal input length when the input can not be
    converted to xts. This was caused by the difference between
    rollapply.default() and rollapply.xts(). Thanks to GitHub user
    marksimmonds for the report. (#29)

  - Fix stoch() in very rare cases where fastK is Inf. I could only reproduce
    this if the Close is > High and High and Low are equal, but that is a data
    error. I fixed anyway because there may be other cases I don't anticipate.
    Thanks to GitHub user cjuncosa for the report. (#52)

  - Fix MFI() when money flow is always zero or positive. The denominator of
    the money ratio will be zero if there is no negative money flow for 'n'
    consecutive observations (e.g. during a strong up-trend), which causes the
    money flow index to be Inf. Set the money flow index to 100 in this case.

    And the money ratio will be NaN if there's no money flow for 'n'
    consecutive observations (e.g. if there are no trades), which causes the
    money flow index to be NaN. Set the money flow index to 50 in this case.

    Thanks to GitHub user jgehw for the report, reproducible example, and
    suggested patch. (#81)


#-#-#-#-#-#-#-#-#-#    Changes in TTR version 0.24.0    #-#-#-#-#-#-#-#-#-#


SIGNIFICANT USER-VISIBLE CHANGES

  - Updated stockSymbols() to use the NASDAQ FTP site instead of downloading
    the CSV from the NASDAQ stock screener page. Some columns are no longer
    populated because they are not provided in the FTP file:
      LastSale ,MarketCap, IPOyear, Sector, Industry
    These columns will be removed in a future version. (#98, #5, #97)

  - runPercentRank(x, n, cumulative = TRUE) now sets observations in the
    initialization period to NA. This is consistent with the other
    running/rolling functions in TTR. If you want the previous behavior,
    you should use runPercentRank(x, n = 1, cumulative = TRUE). Thanks to
    GitHub user httassadar for the report. (#73)


NEW FEATURES

  - Add Ehler's Correlation Trend Indicator. Thanks to Evelyn Mitchell for
    the suggestion, and for Ethan Smith for the initial implementation. (#92)


BUG FIXES

  - runMAD() returned incorrect values when 'cumulative = TRUE' and the input
    contained leading NA. Thanks to GitHub user stellathecat for the report.
    This also affected runMedian() also. (#93)

  - ZLEMA() would crash when 'ratio = 0.0' and 'n' was not specified. Thanks
    to GitHub user yogat3ch for the report! (#95)

  - WMA() did not return an xts object when passed an xts object for 'x' that
    had leading NA, with the default 'wts = 1:n'. Thanks to Cory Fletcher for
    reporting this issue via email. (#96)

  - stoch() was wrong when 'bounded = FALSE'. Thanks to GitHub user rfinfun
    for the report and patch. (#74)

  - HMA() threw an error when 'n' was an odd number. This was because the
    first call to WMA() used 'n = n / 2' which caused 'n' to not be an
    integer. Thanks to GitHub user dragie for the report. (#76)
jperkin pushed a commit that referenced this issue Jun 21, 2022
What's Changed
 -Add image rendering support (under image feature) in #48, #52
 -Improve actions on item feature in #54, #55
 -Update rust CI to run based on specific features in #51

Breaking changes
 -Disable lyric-finder by default. Need to specify --features lyric-finder to
  install/build the application with the feature
jperkin pushed a commit that referenced this issue Aug 1, 2022
Breaking Changes
    Move Parser Configuration into a Feature Option by @Builditluc in #63

Exciting New Features
    Add option to change the keybindings via configuration by @Builditluc in #38
    Add AUR install option by @ThomasFrans in #42
    Add a desktop-entry for packaging by @ThomasFrans in #44
    Add checksums for the release assets by @Builditluc in #59

Bug Fixes
    Fix Header Selection by @Builditluc in #41
    Fix Keybinding Crash by @Builditluc in #46
    Add missing element after line split by @ThomasFrans in #48
    Disable stdout logging for release builds by @ThomasFrans in #47
    Fix publish action in the cd workflow by @Builditluc in #60
    Fix toc not having scrollbars by @Builditluc in #64

Other Changes
    Update Bug Report Issue Template by @Builditluc in #40
    Add label requirement to ci workflow by @Builditluc in #52
    Add documentation job to ci workflow by @Builditluc in #55
    Fix typo in search.rs by @eltociear in #56
    Add yashinghcodes/wik project to similar projects by @Builditluc in #58
    Increase Stale Days to 365 by @Builditluc in #61
jperkin pushed a commit that referenced this issue Sep 4, 2022
0.2.40 (2022-08-31)

* Land #52, Update Ubuntu 18.04 to 20.04 in Github CI script

0.2.41 (2022-08-31)

* Land #50, added golang support for output.

0.2.42 (2022-09-01)

* Land #54, Extract matchers to files

0.2.43 (2022-09-01)

* Land #53, Fix Language Wrapping

0.2.44 (2022-09-02)

* Land #48, Adds color support for wrapped tables
jperkin pushed a commit that referenced this issue Sep 21, 2022
0.1.43 (2022-09-16)

* Land #52, Fix openssl3 unsafe legacy renegotiation disabled error
jperkin pushed a commit that referenced this issue Oct 3, 2022
Bug Fixes
 - Re-enable blur (fixes #52) (e33d27db)
jperkin pushed a commit that referenced this issue Dec 18, 2022
v1.0.1
What's Changed
- Revert "feat(:nail-care:): dracula-theme" by @arthurhenrique in #51
- revert for color blind by @arthurhenrique in #52

v1.0.0
What's Changed
- Add NetBSD by @0323pin in #39
- chore: add performance checker by @arthurhenrique in #42
- Refactor count_leap_years() and add test cases by @elliotwutingfeng in #40
- Refactor count_leap_years() and add test cases (#40) by @arthurhenrique in #43
- Configure Renovate by @renovate in #44
- feat: show today by @arthurhenrique in #46
- chore: update by @arthurhenrique in #47
- feat(:nail-care:): dracula-theme by @arthurhenrique in #48
- chore: release 🚀 by @arthurhenrique in #49
jperkin pushed a commit that referenced this issue Feb 7, 2023
1.7.0 (2022-11-17)

What's Changed

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


1.8.0 (2023-01-27)

What's Changed

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

1.8.1 (2023-01-27)

What's Changed

* Body should be non-frozen by default. by @ioquatix in #103
* Join test thread. by @ioquatix in #104
* Fix several regexp warnings. by @ioquatix in #105
jperkin pushed a commit that referenced this issue Feb 10, 2023
Change log:

4.18.2 (2023-02-09)
======
- Update copyright year
- Add XfceScreensaver (!89)
- docs: Fix broken links
- shortcut-dialog: Use parent window for the grab if possible (Fixes #52)
- Fix memory leak
- Fix memory leaks
jperkin pushed a commit that referenced this issue Feb 27, 2023
3.2023.0218 (2023-02-18)

* Updated the Apache and IANA media registry entries as of release date.

* Mohammed Gad added the jfif file extension for image/jpeg text format. #52

* Reworked the loading of IANA provisional media registries to merge them
  into the top-level media-type registries instead of a standalone registry
  file.  #53 originally identified by Chris Salzberg in #50.

* It is worth noting that this is an imperfect solution as if a media type
  is provisionally registered and withdrawn, it will linger in the registry
  with no clean way of identifying them at the moment.  See #54.

* This release also fixes ruby-mime-types#163, where logs show "Type
  application/netcdf is already registered as a variant of
  application/netcdf".

3.2023.0218.1 (2023-02-18)

* When this data library was created in 2015, I made the decision based on
  information available to deprecate text/javascript in favour of
  application/javascript.  Since the previous update (2022-01-05), IANA has
  officially deprecated application/javascript in favour of text/javascript.
  Samuel Williams discovered this in #55 by noting that all js types were
  marked obsolete in version 3.2023.0218.

* A hotfix has been applied to resolve this.  However, note that
  application/javascript will not be returned by default, only
  text/javascript.
jperkin pushed a commit that referenced this issue Mar 28, 2023
This release will include the following changes:

 - Fetch scrollback history independently of main loop #39
 - Add NetBSD install instructions #51
 - Create release profile with LTO #52
 - Support configuring client request timeout #54
 - Link to iamb space in README #55
 - Fix empty message check when sending #56
 - Show events that couldn't be decrypted #57
 - Allow log level to be configured #58
 - Indicate when an encrypted room event has been redacted #59
 - Lazy load room state events on initial sync #62
 - HTML self-closing tags are getting parsed incorrectly #63
 - Emote messages should always show sender #65
 - Update README.md to include Arch Linux package #66
 - Redacted messages need to have their HTML removed #67

I'm also going to update to modalkit@0.0.14 to pull in two useful bug fixes:
 - List widget should only use focus for rendering item modalkit#102
 - Vim keybinding D has wrong Count modalkit#103
jperkin pushed a commit that referenced this issue Apr 28, 2023
2.1.6 [20 March 2023]
------------------------
* Remove deprecated usage of `Printf.ksprintf`, ocaml 5 compatibility

2.1.5 [14 December 2022]
------------------------
* Fix extra lines on non empty headers [#49 @hhugo]
* Make the tests flambda2-ready [#52 @lthls]
* Fix build failure on OCaml 5.0 when using the non-dune build mode [#50 @dra27]
jperkin pushed a commit that referenced this issue Jun 17, 2023
What's Changed
 - Add NetBSD by @0323pin in #3
 - Migrate from tui-rs to ratatui by @AmmarAbouZor in #4
 - settings improvements by @AmmarAbouZor in #13
 - [Documentation] Create README Badges by @kevinmatthes in #14
 - CI Improvements by @AmmarAbouZor in #15
 - Changed: Help popup improvements by @AmmarAbouZor in #17
 - Added: Export current journal's content by @AmmarAbouZor in #18
 - Increase Version by @AmmarAbouZor in #19
 - Fixed setting backend path from CLI by @AmmarAbouZor in #22
 - Added: Release CD action by @AmmarAbouZor in #24
 - Fixed: Export journal extension by @AmmarAbouZor in #25
 - Changed: Enhance render loop by @AmmarAbouZor in #28
 - Added: CITATION.cff by @kevinmatthes in #26
 - Added: Edit current journal content in external editor by @AmmarAbouZor
   in #29
 - Added: configure CHANGELOG maintenance utilities by @kevinmatthes in #16
 - Added: Tabs and scrolling to help popup by @AmmarAbouZor in #32
 - Fixed: bugs in fragment creation by @kevinmatthes in #33
 - Added: Multi-selection for journals by @AmmarAbouZor in #34
 - Changed: bump baptiste0928/cargo-install to v2.1.0 by @kevinmatthes in #36
 - [Aeruginous] Create CHANGELOG Fragment by @github-actions in #37
 - Added: Export Import functions for multiple journals by @AmmarAbouZor in #39
 - [Aeruginous] Create CHANGELOG Fragment by @github-actions in #40
 - Fixed: Synchronizing problems with sqlite back-end by @AmmarAbouZor in #41
 - [Aeruginous] Create CHANGELOG Fragment by @github-actions in #42
 - Changed: improve GHA linting speed dramatically by @kevinmatthes in #43
 - [Aeruginous] Create CHANGELOG Fragment by @github-actions in #44
 - Addd: Option to Use Git Configured Editor as External editor by @AmmarAbouZor
   in #45
 - [Aeruginous] Create CHANGELOG Fragment by @github-actions in #46
 - [Aeruginous] Create Missing CHANGELOG Fragments by @AmmarAbouZor in #48
 - Chore: Add dependabot by @AmmarAbouZor in #50
 - [Aeruginous] Assemble CHANGELOG by @github-actions in #52
jperkin pushed a commit that referenced this issue Sep 1, 2023
Switch to GH Actions CI. by @patrickt in #41
Add the same PR template as for tree-sitter-javascript by @mjambon in #43
Update package.json to include the repository key by @msftenhanceprovenance in #50
Loosen Rust crate's tree-sitter dependency by @dcreager in #52
adding make support by @mattmassicotte in #56
feat: treat iota as predeclared identifier by @kawaemon in #58
feat: add support to parse of type parameters by @kawaemon in #57
feat: allow to put type arguments in calling expressions by @kawaemon in #59
Update C code by @aryx in #66
Document reason for statements at top level by @adonovan in #67
Make method bodies non-optional by @adonovan in #68
Fix node naming in {param,field}_declaration by @adonovan in #65
Structure Query by @mattmassicotte in #70
Remove field_identifier from keyed_element by @adonovan in #71
Generic Makefile by @mattmassicotte in #72
Bump tree-sitter version to 0.20 by @hendrikvanantwerpen in #78
Swift Package by @mattmassicotte in #79
Made body optional for method_declaration by @lmaruvada in #90
Allow GenericType to accept QualifiedType by @kawaemon in #92
feat(queries/highlight): highlight built-in functions as @function.builtin by @jimeh in #96
feat(grammar): capture comment directives by @matoous in #97
Revert "Merge pull request #97 from matoous/md/comment-directives" by @matoous in #98
feat(ci): run build & test action on PRs by @matoous in #99
fix: fix string literal rule by @SuperBo in #91
Add more types and struct/parameter fix by @amaanq in #118
Param fix by @amaanq in #119
Update identifiers and top level declarations by @amaanq in #120
Fix single import spec list without terminator by @amaanq in #122
Materialize expression_statement nodes by @josharian in #124
Formatting & CI fixes by @amaanq in #126
jperkin pushed a commit that referenced this issue Sep 1, 2023
1.23.2 (2023-08-15)

* Better backtrace filtering. (#52)
jperkin pushed a commit that referenced this issue Oct 29, 2023
1.3.2.2 - 2023-08-02, Andreas Abel
* Fix return type in memcpy FFI signature (#52)
* Refactor regexec to avoid partial functions tail and (!0)
* Tested with GHC 7.4 - 9.8.1-alpha1

1.3.2.1 - 2023-05-19, Andreas Abel
* Fix haddock rendering of code examples in top-level documentation (#50)
* Tested with GHC 7.4 - 9.6
jperkin pushed a commit that referenced this issue Oct 29, 2023
0.2.4
* Make pipe_tables extension treat backslash escapes like GH does (#112,
  Michael Howell). This change essentially changes the way the text \\|
  gets parsed inside a table. In the old version, the first backslash
  escapes the second backslash, and then the pipe is treated as a cell
  separator. In the new version, the pipe is still preceded by a backslash,
  so it is still literal text. The escaping rule is documented in detail in
  the spec for this extension. This change also aligns our escaping of
  pipes with GitHub's.

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

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

0.2.3.4
* Require whitespace after definition list marker (#104). Otherwise we can
  inadvertently clobber strikeout or subscript.
jperkin pushed a commit that referenced this issue Oct 29, 2023
4.2.2
* Adding rate limit for RST_STREAM to work around CVE-2023-44487. #94

4.2.1
* This version is identical to v4.2.0 by accident.

4.2.0
* Treating HALF_CLOSED_LOCAL correctly. #90
* Ensuring that GOAWAY is sent after DATA in the client side. #89
* Test uses a random port instead of 8080.
* Breaking change: adding two optional SockAddrs to Config to be copied
  into Aux.
* Close all streams on termination. #83
* Introducing OutBodyStreamingUnmask #80
* Introducing KilledByHttp2ThreadManager instead of ThreadKilled. #79 #81
  #82
* Handle RST_STREAM with NO_ERROR. #78
* Internal changes: #74
* Breaking change: Client is generalized into (forall b. Request ->
  (Response -> IO b) -> IO b) -> IO a. The RankNTypes language extension is
  required. #72

4.1.3
* Using crypton instead of cryptonite.

4.1.2
* Removing the race of frameSender and frameReceiver in the server
  side. This fixes the loss of RST_Stream and TLS bad MAC error. #67

4.1.1
* Fixing memory-blow-up due to no flow control. #62 #66

4.1.0
* Implementing streaming from the client side. #41
* Making use of SettingsMaxFrameSize #44 #57
* Disabling flow control #55
* Fixing buffer overrun by trailers #52
* Proper use of settings
* Breaking change: the data structure of Next was changed. The http3
  package is influenced.

4.0.0
* Breaking change: HTTP2Error is redefined.
* Breaking change: FrameTypeId, SettingsKeyId and ErrorCodeId are
  removed. Use FrameType, SettingsKey and ErrorCode instead.
* A client can receive a concrete HTTP2Error.
* Catching up RFC 9113. Host: and :authority cannot disagree.
* Breaking change: Network.HTTP2 and Network.HTTP2.Priority are removed.
* Breaking change: obsoleted stuff are removed.
jperkin pushed a commit that referenced this issue Dec 17, 2023
1.0.1 (2023-11-11)

* Fix push to be O(1).
* Fix SuffixArray initialization doc (#50)
* Update dependencies
* Add benchmarks for Heap (#52)
jperkin pushed a commit that referenced this issue Feb 7, 2024
Added
 - add --contrast flag

Fixed
 - add back source_color to --show-colors
 - use IndexMap for --show-colors table

Other
 - Merge pull request #52 from InioX/dev
 - (readme) update acknowledgements
 - (readme) remove roadmap
 - bump material-colors ver
jperkin pushed a commit that referenced this issue Feb 20, 2024
pkgsrc changes:
- adapt to various upstream changes
- update for newer version of pjproject
- add unconditional depeendency on SDL
- remove pktccops and mgcp option (has to do with supporting cable headends)
- remove various 64-bit time_t fixes as upstream is finally doing these


                               [asterisk-announce] asterisk release 18.21.0


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

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

Thank You!


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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


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

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

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

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


                               [asterisk-announce] asterisk release 18.20.2

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

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

Thank You!


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

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

- res_rtp_asterisk: Fix regression issues with DTLS client check


                               [asterisk-announce] asterisk release 18.20.1


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

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


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

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

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


                               [asterisk-announce] asterisk release 18.20.0

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

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

Thank You!


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

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

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

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

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

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

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

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

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

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

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

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

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

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


                               [asterisk-announce] Asterisk Release 18.19.0

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

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

Thank You!


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

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

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

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

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

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

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

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

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

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


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

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


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

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


                               [asterisk-announce] Asterisk Release 18.18.1

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

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


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

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

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

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

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

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

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

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

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

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

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

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


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


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

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


                               [asterisk-announce] Asterisk Release 18.18.0

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

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

Thank You!


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

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

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

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

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

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

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

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

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

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

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

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

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

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


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

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


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

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

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


                            [asterisk-announce] Asterisk 18.17.1 Now Available

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

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

Thank you!

The following issues are resolved in this release:

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

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

Thank you for your continued support of Asterisk!


                            [asterisk-announce] Asterisk 18.17.0 Now Available

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

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

Thank you!

The following issues are resolved in this release:

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

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

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

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

Thank you for your continued support of Asterisk!


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

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

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

The following issue is resolved in this release:

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

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

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

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

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


                            [asterisk-announce] Asterisk 18.15.0 Now Available

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

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

Thank you!

The following issues are resolved in this release:

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

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

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


                            [asterisk-announce] Asterisk 18.14.0 Now Available

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

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

Thank you!

The following issues are resolved in this release:

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

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

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


                            [asterisk-announce] Asterisk 18.13.0 Now Available

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

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

Thank you!

The following issues are resolved in this release:

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

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

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

Thank you for your continued support of Asterisk!


                            [asterisk-announce] Asterisk 18.12.1 Now Available

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

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

Thank you!

The following issue is resolved in this release:

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


                            [asterisk-announce] Asterisk 18.12.0 Now Available

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

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

Thank you!

The following issues are resolved in this release:

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

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

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

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


                            [asterisk-announce] Asterisk 18.11.3 Now Available

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

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

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

Thank you!

The following issue is resolved in this release:

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


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

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

The following security vulnerabilities were resolved in these versions:

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

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

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


                            [asterisk-announce] Asterisk 18.11.1 Now Available

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

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

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

Thank you!

The following issues are resolved in this release:

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


                            [asterisk-announce] Asterisk 18.11.0 Now Available

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

The Asterisk Development Tea…
jperkin pushed a commit that referenced this issue Jun 10, 2024
# colourpicker 1.3.0 (2023-08-19)

- Add `width` parameter to `colourInput()` (#52)
- Don't use `addResourcePath()` and instead use `htmlDependency()` (#43)

# colourpicker 1.2.0 (2022-10-28)

- Add CSS class to input label (#48)
- Don't output side-effect text to the console when closing the
  gadget/addin
- Upgrade jQuery to version latest version 3.6.1 (#53)

# colourpicker 1.1.1 (2021-09-30)

- Fix plotHelper() to work with new ggplot that complained about
  CPCOLS variable not existing
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants