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

Openssl include symbolic link is self referential #164

Closed
yb66 opened this issue Dec 11, 2018 · 1 comment
Closed

Openssl include symbolic link is self referential #164

yb66 opened this issue Dec 11, 2018 · 1 comment
Assignees

Comments

@yb66
Copy link

yb66 commented Dec 11, 2018

Hi there,

This is for openssl-1.0.2p, I noticed a rogue symbolic link.

#  in /opt/pkg [16:23:27] 
$ l openssl/include
lrwxr-xr-x  1 root  wheel    15B 27 Jan  2018 openssl/include -> include/openssl

#  in /opt/pkg [16:23:32] 
$ l openssl/include/
ls: openssl/include/: Too many levels of symbolic links

My fix:

#  in /opt/pkg/openssl [16:23:52] C:1
$ sudo rm include

#  in /opt/pkg/openssl [16:24:24] C:1
$ sudo ln -s ../include/openssl include

#  in /opt/pkg/openssl [16:24:30] 
$ l
<snip>
lrwxr-xr-x   1 root  wheel    18B 11 Dec 16:24 include -> ../include/openssl

#  in /opt/pkg/openssl [16:24:31] 
$ l include/
total 3720
drwxr-xr-x   78 root  wheel   2.4K 17 Nov 16:32 .
drwxr-xr-x  313 root  wheel   9.8K 17 Nov 16:32 ..
-rw-r--r--    1 root  wheel   6.0K  2 Oct 04:36 aes.h
-rw-r--r--    1 root  wheel    62K  2 Oct 04:36 asn1.h
-rw-r--r--    1 root  wheel    24K  2 Oct 04:36 asn1_mac.h
<snip>

I've no idea how to change the package or even if this is the right place to bring up this issue so if it's the wrong place just let me know (and perhaps point me in the right direction:)

Regards,
iain

jperkin pushed a commit that referenced this issue Mar 26, 2019
Changelog:
    trust: Improve error handling if backed trust file is corrupted [#206]
    url: Prefer upper-case letters in hex characters when encoding [#193]
    trust/extract-jks.c: also honor SOURCE_DATE_EPOCH time [#202]
    virtual: Prefer fixed closures to libffi closures [#196]
    Fix issues spotted by coverity and cppcheck [#194, #204]
    Build and test fixes [#164, #191, #199, #201]
jperkin pushed a commit that referenced this issue May 21, 2019
AsciiDoc:
 * Fix Asciidoc unindented lists (GitHub's #149)
 * Make Asciidoc Tables nowrap and support current format (GitHub's #63)
 * Do not include table fences in pot file (GitHub's #163)
 * Add option to prevent translation of target of image blocks (GitHub's #164)

Markdown:
 * Improve markdown ruler parsing, and add test.
 * Add markdown fenced code block parsing, and add test.

Sgml:
 * Avoid deprecated unescaped left brace in regex to get ready for Perl 5.32.
   (Debian's #903735)

TransTractor:
 * Ensure to split lines before addendum operation without loss or addition of
   newline.  With this change, addendum behavior is more intuitive.
   (Debian's #518218, Github's #147, #153)

Wml:
 * Fix longstanding error regarding comments at the beginning of a file.
   (Github's #138)

Xml, Docbook:
 * Document XML tag behavior customization with example to help use case
   specific customization.  (Debian's #515763)
 * Debug output enhancement to help people understand what exactly happening
   inside po4a.
 * Extensive POD and code comment additions and updates.

po4a tool:
 * Add pot_in feature to support the secondary master file for the base of
   POT/PO file generation.

Test:
 * Add XML test cases with po4a including addendum, tag customization, and
   pot_in feature.

Translations:
 * New translation to Chinese and Chinese Simplified, thanks Liu Guang.
 * Updated: Dutch, thanks Frans Spiesschaert.
 * Updated: Estonian, thanks Kristjan Räts.
 * Updated: French, thanks Brandelune and ButterflyOfFire.
 * Updated: German, thanks Helge Kreutzmann.
 * Updated: Italian, thanks Marco Ciampa.
 * Updated: Norwegian Bokmål, thanks Petter Reinholdtsen.
 * Updated: Portuguese (Brazil), thanks Rafael Fontenelle and Luiz
   Fernando Ranghetti.
 * Updated: Russian: thanks Igor.
 * Updated: Spanish, thanks emma peel and Omar Campagne.
 * Updated: Swedish, thanks Anders Jonsson.
 * Updated: Ukrainian, thanks Yuri Chornoivan (українська).
 * Updated: Vietnamese, thanks Trần Ngọc Quân.
jperkin pushed a commit that referenced this issue Aug 26, 2019
Local changes merged upstream.

Changes since b163

Beta #164 - 05.08.2019
- Applied some NetBSD/illumos/SmartOS code patches that got sent in (untested)
- Removed SSE macros to let the compiler optimize instead, and to make cross
  compiling even simpler. We don't really need them anymore since most of the
  speed-critical math in the clone is fixed-point these days.
- macOS: Fixed intensive CPU usage if another window is completely covering the
  FT2 clone window.
- macOS: The SDL2.framework file in the FT2 clone app was larger than it needed
  to be, which was fixed by the SDL team not long ago. It has been replaced.
- Small code cleanup
jperkin pushed a commit that referenced this issue Oct 6, 2019
Switched to github for upstream, build system now uses cmake.

Changes in major release 2.0.0:

New Features

    implement polyphonic key pressure (#185, thanks to @mawe42)
    add API for manipulating default modulators (#265, #164, #71, thanks to @mawe42)
    add midi.autoconnect setting for automatically connecting fluidsynth with available MIDI Input ports (currently only for alsa_seq thanks to @tomcucinotta)
    add seek support to midi-player (#261, thanks to @loki666)
    add support for text and lyrics midi events (#111)
    add support for 24 bit sample soundfonts (#301, #329)
    consider "important midi channels" during overflow calculation synth.overflow.important-channels (#294, thanks to @mawe42)
    add a custom default modulator for MIDI CC8 to support proper stereo balance (#317, thanks to @mawe42)
    add support for an additional custom high-pass filter (#331, thanks to @mawe42)
    incorporate JJC's polymono patch (#306, #236, #158)
        add basic channel support
        implement MIDI modes Omni On, Omni Off, Poly, Mono
        implement portamento control
        implement legato control
        implement breath control
    add support soundfont loading from memory (#241)
    add a profiling command interface (#345, thanks to @jjceresa)
    add support on demand sample loading (#366, thanks to @mawe42)
    add reverb and chorus settings (#49)
    allow using the midi router to manipulate midi files when playing from command line
    fluid_synth_process() received a new proper implementation
    synth.effects-groups allows to render effects of all MIDI channels to separate audio channels

General

    CMake 3.1.0 or later is required for building
    consider channel pressure, key pressure and pitch wheel for lower attenuation boundary calculation (#163, thanks to @mawe42)
    complete rewrite of the LADSPA subsystem (#227, #235, thanks to @mawe42)
    complete rewrite of the Soundfont Loader API (#334, #309)
    avoid reverb amplitude growing exponentially (#279, thanks to @jjceresa)
    removed deprecated autotools build system
    a minimal build of fluidsynth without requiring pkg-config is supported
    remove deprecated LADCCA support
    use unique device names for the audio.portaudio.device setting (#284, thanks to @jjceresa)
    documentation of the settings moved to http://www.fluidsynth.org/api/fluidsettings.xml
    adjust MIDI Pan and Balance calculations as outlined by MIDI Recommended Practice (RP-036) (#317, thanks to @mawe42)
    make network support compile-time optional (#307, thanks to @carlo-bramini)
    speed up calculation of chorus modulation waveforms for devices without FPU (#321, thanks to @carlo-bramini)
    cleanup internal audio rendering and mixing engine (#197)
    reduce memory consumption of loaded soundfonts (#370, thanks to @mawe42)
jperkin pushed a commit that referenced this issue Oct 20, 2019
Switched to github for upstream, build system now uses cmake.

Changes in major release 2.0.0:

New Features

    implement polyphonic key pressure (#185, thanks to @mawe42)
    add API for manipulating default modulators (#265, #164, #71, thanks to @mawe42)
    add midi.autoconnect setting for automatically connecting fluidsynth with available MIDI Input ports (currently only for alsa_seq thanks to @tomcucinotta)
    add seek support to midi-player (#261, thanks to @loki666)
    add support for text and lyrics midi events (#111)
    add support for 24 bit sample soundfonts (#301, #329)
    consider "important midi channels" during overflow calculation synth.overflow.important-channels (#294, thanks to @mawe42)
    add a custom default modulator for MIDI CC8 to support proper stereo balance (#317, thanks to @mawe42)
    add support for an additional custom high-pass filter (#331, thanks to @mawe42)
    incorporate JJC's polymono patch (#306, #236, #158)
        add basic channel support
        implement MIDI modes Omni On, Omni Off, Poly, Mono
        implement portamento control
        implement legato control
        implement breath control
    add support soundfont loading from memory (#241)
    add a profiling command interface (#345, thanks to @jjceresa)
    add support on demand sample loading (#366, thanks to @mawe42)
    add reverb and chorus settings (#49)
    allow using the midi router to manipulate midi files when playing from command line
    fluid_synth_process() received a new proper implementation
    synth.effects-groups allows to render effects of all MIDI channels to separate audio channels

General

    CMake 3.1.0 or later is required for building
    consider channel pressure, key pressure and pitch wheel for lower attenuation boundary calculation (#163, thanks to @mawe42)
    complete rewrite of the LADSPA subsystem (#227, #235, thanks to @mawe42)
    complete rewrite of the Soundfont Loader API (#334, #309)
    avoid reverb amplitude growing exponentially (#279, thanks to @jjceresa)
    removed deprecated autotools build system
    a minimal build of fluidsynth without requiring pkg-config is supported
    remove deprecated LADCCA support
    use unique device names for the audio.portaudio.device setting (#284, thanks to @jjceresa)
    documentation of the settings moved to http://www.fluidsynth.org/api/fluidsettings.xml
    adjust MIDI Pan and Balance calculations as outlined by MIDI Recommended Practice (RP-036) (#317, thanks to @mawe42)
    make network support compile-time optional (#307, thanks to @carlo-bramini)
    speed up calculation of chorus modulation waveforms for devices without FPU (#321, thanks to @carlo-bramini)
    cleanup internal audio rendering and mixing engine (#197)
    reduce memory consumption of loaded soundfonts (#370, thanks to @mawe42)
jperkin pushed a commit that referenced this issue Oct 20, 2019
pkgsrc changes:
 - Remove patch-filter_pdf.cxx (was a backport from upstream) and patch-Makefile.in
   (now `-r' option of `ln' is checked in configure phase)

Changes:
1.25.11
-------
 - cups-browsed: Really accept entries without printer name
   reported on a job status request (Issue #163).
 - cups-browsed: Strip IPP atrribute values reported by the
   printer on a get-printer-attributes request from white
   space (Pull request #166).

1.25.10
-------
 - libcupsfilters: Added NULL checks when handling page size
   names as some of the page sizes in CUPS' PWG media list have
   a NULL PPD name (Ubuntu bug #1847488).

1.25.9
------
 - cups-browsed: Fix leaks in get_printer_attributes() function.
 - cups-browsed: Avoid infinite recursion on IPP 1.1 fallback.

1.25.8
------
 - cups-browsed: On a job status request accept also entries
   without the printer name being reported (Issue #163).
 - cups-browsed: Fall back to IPP 1.1 if a
   get-printer-attributes IPP request with IPP 2.x fails (Issue
   #124, Issue #163).
 - gstoraster: Use ".setfilladjust2" instead of the
   undocumented ".setfilladjust" PostScript command for
   Center-of-Pixel method to fill paths (Issue #164).

1.25.7
------
 - implicitclass, libcupsfilters: Fixes to solve an assertion
   error and printing to an Apple Raster printer (Issue #162,
   Ubuntu bug #1845286, Ubuntu bug #1845548).
 - cups-browsed: Do not try to resolve the network interface
   name on Avahi messages which are not interface-related (like
   "All for now"or "Cache exhausted", Issue #163).
 - Build system: The helper script ln-srf to build on systems
   with old ln was not included in the release tarballs (Issue
   #161).
 - pdftoraster: Fixed some bugs in output bitmap generation (
   writePageImage() function): Segfault on output of
   up-side-down pages (back side when printing duplex on some
   printers), margin offsets not taken into account on
   monochrome jobs, CUPS_CSPACE_W color space not recognized as
   monochrome (Ubuntu bug #1845286).

1.25.6
------
 - implicitclass: Make sure the destination printer gets always
   set and do not pass on the cups-browsed-dest-printer when
   sending the job to the final destination (Issue #152, Pull
   request #159).
 - Build system: Support old ln versions without the -r option
   (Pull request #154, #157).
 - texttotext: Link with libiconv if needed (Pull request
   #155, #158).
 - foomatic-rip: Fix argument representation for raw queue
   debug mesaage (Pull request #153).

1.25.5
------
 - bannertopdf: Added missing "#include <cstring>" to pdf.cxx
   so that bannertopdf correctly builds with QPDF 9.0.0 (Issue
   #134, Issue #151, Gentoo bug #693498).
 - rastertopdf: Let the getIPPColorProfileName() function not
   return a pointer to a local variable (clang warning, Issue
   #150).
 - cups-browsed: If a locally generated queue (usually with
          "implicitclass://..." URI) left over from a previous
          (crashed) session is picked up on startup, do not set the
          URI as the remote printer's URI and do not cause a fatal
          error on a failed get-printer-attributes IPP request (Issue
          #148, Debian bug #939316).
 - pdftopdf: Do not preserve encryption, since the output
          already goes into the printer (Issue #146, Pull request
          #147).

1.25.4
------
 - imagetoraster: Do not call imagetops and pstoraster for
   classifications and page labels as these filters are not
   included any more with cups-filters.  Classifications and
   page labels are currently not supported for direct image
   printing, only for PDF or PostScript input (which goes
   through pdftopdf).
 - imagetoraster, imagetopdf: Fixed auto-rotation of images to
   fit output page best (Issue #145).
 - pdftoraster: If the PPD contains several equally-sized page
   size entries which match the size of the input page and one
   is the size selected by the user via the "PageSize" or
   "media" option (or the default selection in the PPD) then
   prefer this one instead of simply the first matching one.
 - pdftoraster: If the input page size cannot be matched with
   one of the PPD's page sizes it is considered a custom size,
   fill the page size name field of the CUPS Raster header with
   "Custom.XXXxYYY" then.
 - pdftoraster: Match the input page size with a page size in
   the PPD only if the differences of the dimensions are less
   than 1%, also match the input page size against the
   imageable area of the PPD's page sizes if no match with the
   full page size is found (Issue #138).

1.25.3
------
 - Sample PPDs: In HP-Color_LaserJet_CM3530_MFP-PDF.ppd renamed
   "custom" choice of the option "stapleoption" to "customsize"
   as from CUPS 2.2.12 on "custom" is not accepted any more as a
   choice name in a PPD file.
 - cups-browsed: Fixed check whether the remote printer understands
   PWG Raster (Issue #141).

1.25.2
------
 - foomatic-rip: Fixed segmentation fault when running
   foomatic-rip by hand and the PRINTER environment variable is
   not set (Pull request #139).
 - cups-browsed: Added note to cups-browsed.conf and man page
   about IP-based URIs depending on the network interface used.
 - cups-browsed: For each DNS-SD-discovered printer register
   each DNS-SD discovery instance with network interface,
   family, and IPP type. When DNS-SD messages of instances
   disappearing show up, only unregister this instance and
   remove the printer only if no instance is left. This
   prevents a local queue of a still available printer being
   removed when Wi-Fi (= one interface) is turned off (Issue
   #136).
 - cups-browsed: If a remote printer is served from the local
   machine, prefer the "localhost"/loopback interface URI.
 - cups-browsed: If a remote printer is discovered more than
   once, use the new instance only if it has no downgrades and
   at least one upgrade compared to the old one. Features
   currently compared are IPP/IPPS, loopback interface or not,
   and discovery via CUPS legacy/LDAP/DNS-SD.
 - cups-browsed: If an Avahi-discovered entry comes through the
   "lo" interface, always use the host name "localhost". Use
   IP addresses instead of host names only if explicitly
   requested.
 - cups-browsed: Consider remote printer entries also as from
   the same printer if one has the local machine's network name
   and the other "localhost" as host name (Issue #136).

1.25.1
------
 - imagetopdf: Fixed crash when no PPD file was supplied (Pull
   request #133).
 - pdftoraster: Fixed offset issues leading to segmentation
   faults (Issue #131, Pull request #132).
 - pdftoraster: Added anti-aliasing for better raster image
   quality (Pull request #129).
 - pdftoraster: Added graceful handling of zero-page input
   (Issue #117, Pull request #127).

1.25.0
------
 - pdftoijs, pdftoopvp: Removed these deprecated filters
   completely as there is no demand for them any more. They
   also used unstable, undocumented APIs of Poppler.
 - pdftoraster: Changed from using unstable, undocumented APIs
   of Poppler to stable, documented ones, to improve
   maintainability of this filter, and with it of the
   cups-filters package. Thanks to Tanmay Anand for
   contributing this as his Google Summer of Code 2019 project.
 - libcupsfilters: Added support for color spaces CMY and RGBW
   when using filters without PPD file (mainly for development
   and debugging, option "print-color-mode" with values
   "cmy-XX" and "rgbw-XX" with XX being the number of bits per
   color).

1.24.0
------
 - cups-browsed: Integration of Deepak Patankar's Google Summer
   of Code 2018 project with the main goal of clustering
   different printers and automatically selecting the
   destination printers by job content and option/attribute
   settings. All changes of this release are done by Deepak as
   parts of his project.
 - cups-browsed, implicitclass: Support for mixed clusters of
   remote CUPS queues and IPP network printers. For this PPD
   files of remote CUPS queues are generated by cups-browsed
   based on IPP queries, as for native IPP printers, the number
   of jobs for load balancing is polled in a way that it works
   also with native IPP printers, the implicitclass backend
   sends jobs directky to the printer instead of re-queueing
   them via CUPS.
 - cups-browsed: Merge IPP attributes of several printers to
   combined attributes for the cluster to generate the
   cluster's PPD file, including PPD constraints for option
   combinations not fulfillable by any of the member printers,
   and finding reasonable, non-conflicting default settings,
 - cups-browsed: Selection algorithm for the destination
   printer for a job sent to the cluster. Based on the job
   settings requested such as page size, media type, print
   quality, ... the best most suitable printer in the cluster
   for the job will be selected.
 - cups-browsed, implicitclass: Filter jobs to clusters already
   locally. Due to the fact that a cluster's member printers
   are not exclusively non-raw CUPS queues with the complete
   filtering framework on the remote server, but also native
   IPP printers, we need to support generic driverless printers
   as destination. So we cannot pass on the input data
   unfiltered but need to filter locally. We let the cluster's
   PPD file emulate a PDF printer, letting the local CUPS queue
   of the cluster run pdftopdf and any pre-filters to turn the
   input into PDF and we let the implicitclass backend turn PDF
   into a format understood by the destination printer,
   supporting the 4 formats of driverless IPP printing: PDF,
   PWG Raster, Apple Raster, PCLm.
jperkin pushed a commit that referenced this issue Oct 24, 2019
## 2.3.1 / 2019-10-22

### Security

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

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


## 2.3.0 / unreleased

### Features

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


### Bug fixes

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


### Deprecations / Name Changes

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

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

Thanks to @JuanitoFatas for submitting these changes in #164 and for making the language used in Loofah more inclusive.
jperkin pushed a commit that referenced this issue Mar 7, 2020
ChangeLog:

v5.6.2

Bug fixes:

    #271 fixes a corner-case bug with more than 100 CSV/TSV files with
    headers of varying lengths.

Documentation:

    The new http://johnkerl.org/miller/doc/whyc-details.html is an
    elaboration on http://johnkerl.org/miller/doc/whyc.html which answers
    a question posed by @BurntSushi on Reddit a couple years ago which
    I did not address in detail at the time.

v5.6.1

    The only change is that http://johnkerl.org/miller/doc is now
    more mobile-friendly.  All build artifacts are the same as at
    https://github.com/johnkerl/miller/releases/tag/v5.6.0

v5.6.0

    The new system DSL function allows you to run arbitrary shell commands
    and store them in field values. Some example usages are documented
    here. This is in response to issues #246 and #209.

    There is now support for ASV and USV file formats. This is in response
    to issue #245.

    The new format-values verb allows you to apply numerical formatting
    across all record values. This is in response to issue #252.

Documentation:

    The new DKVP I/O in Python sample code now works for Python 2 as
    well as Python 3.

    There is a new cookbook entry on doing multiple joins. This is in
    response to issue #235.

Bugfixes:

    The toupper, tolower, and capitalize DSL functions
    are now UTF-8 aware, thanks to @sheredom's marvelous
    https://github.com/sheredom/utf8.h. The internationalization page
    has also been expanded. This is in response to issue #254.

    #250 fixes a bug using in-place mode in conjunction with verbs
    (such as rename or sort) which take field-name lists as arguments.

    #253 fixes a bug in the label when one or more names are common
    between old and new.

    #251 fixes a corner-case bug when (a) input is CSV; (b) the last
    field ends with a comma and no newline; (c) input is from standard
    input and/or --no-mmap is supplied.

v5.5.0

    The new positional-indexing feature resolves #236 from @aborruso. You
    can now get the name of the 3rd field of each record via $[[3]], and
    its value by $[[[3]]]. These are both usable on either the left-hand
    or right-hand side of assignment statements, so you can more easily
    do things like renaming fields progrmatically within the DSL.

    There is a new capitalize DSL function, complementing the
    already-existing toupper. This stems from #236.

    There is a new skip-trivial-records verb, resolving #197. Similarly,
    there is a new remove-empty-columns verb, resolving #206. Both are
    useful for data-cleaning use-cases.

    Another pair is #181 and #256. While Miller uses mmap internally
    (and invisibily) to get approximately a 20% performance boost over
    not using it, this can cause out-of-memory issues with reading either
    large files, or too many small ones. Now, Miller automatically avoids
    mmap in these cases. You can still use --mmap or --no-mmap if you
    want manual control of this.

    There is a new --ivar option for the nest verb which complements
    the already-existing --evar. This is from #260 thanks to @jgreely.

    There is a new keystroke-saving urandrange DSL function:
    urandrange(low, high) is the same as low + (high - low) *
    urand(). This arose from #243.

    There is a new -v option for the cat verb which writes a low-level
    record-structure dump to standard error.

    There is a new -N option for mlr which is a keystroke-saver for
    --implicit-csv-header --headerless-csv-output.

Documentation:

    The new FAQ entry
    http://johnkerl.org/miller/doc/faq.html#How_to_escape_'%3F'_in_regexes%3F
    resolves #203.

    The new FAQ entry
    http://johnkerl.org/miller/doc/faq.html#How_can_I_filter_by_date%3F
    resolves #208.

    #244 fixes a documentation issue while highlighting the need for #241.

Bugfixes:

    There was a SEGV using nest within then-chains, fixed in response
    to #220.

    Quotes and backslashes weren't being escaped in JSON output with
    --jvquoteall; reported on #222.

v5.4.0

    The new clean-whitespace verb resolves #190 from @aborruso. Along with
    the new functions strip, lstrip, rstrip, collapse_whitespace, and
    clean_whitespace, there is now both coarse-grained and fine-grained
    control over whitespace within field names and/or values. See the
    linked-to documentation for examples.

    The new altkv verb resolves #184 which was originally opened via an
    email request. This supports mapping value-lists such as a,b,c,d to
    alternating key-value pairs such as a=b,c=d.

    The new fill-down verb resolves #189 by @aborruso. See the linked-to
    documentation for examples.

    The uniq verb now has a uniq -a which resolves #168 from @sjackman.

    The new regextract and regextract_or_else functions resolve #183
    by @aborruso.

    The new ssub function arises from #171 by @dohse, as a simplified way
    to avoid escaping characters which are special to regular-expression
    parsers.

    There are new localtime functions in response to #170 by
    @sitaramc. However note that as discussed on #170 these do
    not undo one another in all circumstances. This is a non-issue
    for timezones which do not do DST. Otherwise, please use with
    disclaimers: localdate, localtime2sec, sec2localdate, sec2localtime,
    strftime_local, and strptime_local.

Builds:

    Windows build-artifacts are now available in Appveyor at
    https://ci.appveyor.com/project/johnkerl/miller/build/artifacts,
    and will be attached to this and future releases. This resolves #167,
    #148, and #109.

    Travis builds at https://travis-ci.org/johnkerl/miller/builds now
    run on OSX as well as Linux.

    An Ubuntu 17 build issue was fixed by @singalen on #164.

Documentation:

    put/filter documentation was confusing as reported by @NikosAlexandris
    on #169.

    The new FAQ entry
    http://johnkerl.org/miller-releases/miller-head/doc/faq.html#How_to_rectangularize_after_joins_with_unpaired?
    resolves #193 by @aborruso.

    The new cookbook entry
    http://johnkerl.org/miller/doc/cookbook.html#Options_for_dealing_with_duplicate_rows
    arises from #168 from @sjackman.

    The unsparsify documentation had some words missing as reported by
    @tst2005 on #194.

    There was a typo in the cookpage page
    http://johnkerl.org/miller/doc/cookbook.html#Full_field_renames_and_reassigns
    as fixed by @tst2005 in #192.

Bugfixes:

    There was a memory leak for TSV-format files only as reported by
    @treynr on #181.

    Dollar sign in regular expressions were not being escaped properly
    as reported by @dohse on #171.

v5.3.0

    Comment strings in data files: mlr --skip-comments allows
    you to filter out input lines starting with #, for all file
    formats. Likewise, mlr --skip-comments-with X lets you specify
    the comment-string X. Comments are only supported at start of data
    line. mlr --pass-comments and mlr --pass-comments-with X allow you
    to forward comments to program output as they are read.

    The count-similar verb lets you compute cluster sizes by cluster
    labels.

    While Miller DSL arithmetic gracefully overflows from 64-integer
    to double-precision float (see also here), there are now the
    integer-preserving arithmetic operators .+ .- .* ./ .// for those
    times when you want integer overflow.

    There is a new bitcount function: for example, echo x=0xf0000206 |
    mlr put '$y=bitcount($x)' produces x=0xf0000206,y=7.

    Issue 158: mlr -T is an alias for --nidx --fs tab, and mlr -t is an
    alias for mlr --tsvlite.

    The mathematical constants π and e have been renamed from PI and
    E to M_PI and M_E, respectively. (It's annoying to get a syntax
    error when you try to define a variable named E in the DSL, when
    A through D work just fine.) This is a backward incompatibility,
    but not enough of us to justify calling this release Miller 6.0.0.

Documentation:

    As noted here, while Miller has its own DSL there will always be
    things better expressible in a general-purpose language. The new page
    Sharing data with other languages shows how to seamlessly share data
    back and forth between Miller, Ruby, and Python. SQL-input examples
    and SQL-output examples contain detailed information the interplay
    between Miller and SQL.

    Issue 150 raised a question about suppressing numeric conversion. This
    resulted in a new FAQ entry How do I suppress numeric conversion?,
    as well as the longer-term follow-on issue 151 which will make
    numeric conversion happen on a just-in-time basis.

    To my surprise, csvlite format options weren’t listed in mlr --help
    or the manpage. This has been fixed.

    Documentation for auxiliary commands has been expanded, including
    within the manpage.

Bugfixes:

    Issue 159 fixes regex-match of literal dot.

    Issue 160 fixes out-of-memory cases for huge files. This is an old
    bug, as old as Miller, and is due to inadequate testing of huge-file
    cases. The problem is simple: Miller prefers memory-mapped I/O
    (using mmap) over stdio since mmap is fractionally faster. Yet as
    any processing (even mlr cat) steps through an input file, more and
    more pages are faulted in -- and, unfortunately, previous pages are
    not paged out once memory pressure increases. (This despite gallant
    attempts with madvise.) Once all processing is done, the memory is
    released; there is no leak per se. But the Miller process can crash
    before the entire file is read. The solution is equally simple: to
    prefer stdio over mmap for files over 4GB in size. (This 4GB threshold
    is tunable via the --mmap-below flag as described in the manpage.)

    Issue 161 fixes a CSV-parse error (with error message "unwrapped
    double quote at line 0") when a CSV file starts with the UTF-8
    byte-order-mark ("BOM") sequence 0xef 0xbb 0xbf and the header line
    has double-quoted fields. (Release 5.2.0 introduced handling for
    UTF-8 BOMs, but missed the case of double-quoted header line.)

    Issue 162 fixes a corner case doing multi-emit of aggregate variables
    when the first variable name is a typo.

    The Miller JSON parser used to error with Unable to parse JSON data:
    Line 1 column 0: Unexpected 0x00 when seeking value on empty input,
    or input with trailing whitespace; this has been fixed.
jperkin pushed a commit that referenced this issue Mar 25, 2020
Update ruby-puppet-resource_api to 1.8.12.

## [1.8.7](https://github.com/puppetlabs/puppet-resource_api/tree/1.8.7) (2019-09-11)
[Full Changelog](puppetlabs/puppet-resource_api@1.8.6...1.8.7)

**Fixed bugs:**

- \(FM-8092\) Fix caching scope of transport schemas [\#200](puppetlabs/puppet-resource_api#200) ([DavidS](https://github.com/DavidS))

**Merged pull requests:**

- \(FM-8485\) - Addition of CODEOWNERS file [\#203](puppetlabs/puppet-resource_api#203) ([david22swan](https://github.com/david22swan))
- \(MODULES-9258\) Improve referencing and add summary [\#199](puppetlabs/puppet-resource_api#199) ([MaxMagill](https://github.com/MaxMagill))
- \(maint\) Pin both Jruby cells to use `dist: trusty` [\#197](puppetlabs/puppet-resource_api#197) ([da-ar](https://github.com/da-ar))

## [v1.8.6](https://github.com/puppetlabs/puppet-resource_api/tree/v1.8.6) (2019-07-01)
[Full Changelog](puppetlabs/puppet-resource_api@1.8.5...v1.8.6)

**Implemented enhancements:**

- \(SERVER-2470\) list\_all\_transports implementation for puppetserver [\#187](puppetlabs/puppet-resource_api#187) ([DavidS](https://github.com/DavidS))

**Fixed bugs:**

- \(MODULES-9428\) make the composite namevar implementation usable [\#174](puppetlabs/puppet-resource_api#174) ([DavidS](https://github.com/DavidS))

**Merged pull requests:**

- Merge 1.6.x [\#194](puppetlabs/puppet-resource_api#194) ([da-ar](https://github.com/da-ar))
- \(maint\) test fixes [\#193](puppetlabs/puppet-resource_api#193) ([DavidS](https://github.com/DavidS))
- \(packaging\) Revert to version '1.8.5' \[no-promote\] [\#192](puppetlabs/puppet-resource_api#192) ([gimmyxd](https://github.com/gimmyxd))
- \(packaging\) Bump to version '1.9.0' \[no-promote\] [\#191](puppetlabs/puppet-resource_api#191) ([gimmyxd](https://github.com/gimmyxd))

## [1.8.5](https://github.com/puppetlabs/puppet-resource_api/tree/1.8.5) (2019-06-24)
[Full Changelog](puppetlabs/puppet-resource_api@1.8.4...1.8.5)

**Fixed bugs:**

- \(maint\) Mergeup 1.6.x: FM-7839, desc/docs cleanup [\#186](puppetlabs/puppet-resource_api#186) ([DavidS](https://github.com/DavidS))

**Merged pull requests:**

- \(maint\) reduce debug noise caused by `feature?` [\#189](puppetlabs/puppet-resource_api#189) ([da-ar](https://github.com/da-ar))
- \(FM-8265\) Merge branch '1.6.x' into master [\#188](puppetlabs/puppet-resource_api#188) ([da-ar](https://github.com/da-ar))
- \(maint\) test fixes [\#185](puppetlabs/puppet-resource_api#185) ([DavidS](https://github.com/DavidS))
- \(maint\) make test order really random [\#175](puppetlabs/puppet-resource_api#175) ([DavidS](https://github.com/DavidS))
- \(packaging\) Update reported version to 1.8.4 \[no-promote\] [\#171](puppetlabs/puppet-resource_api#171) ([gimmyxd](https://github.com/gimmyxd))

## [1.8.4](https://github.com/puppetlabs/puppet-resource_api/tree/1.8.4) (2019-06-12)
[Full Changelog](puppetlabs/puppet-resource_api@1.8.3...1.8.4)

**Implemented enhancements:**

- \(FM-7839\) Implement `to\_json` method for ResourceShim [\#168](puppetlabs/puppet-resource_api#168) ([da-ar](https://github.com/da-ar))

**Fixed bugs:**

- \(maint\) backport minor fixes from master to 1.6.x [\#184](puppetlabs/puppet-resource_api#184) ([DavidS](https://github.com/DavidS))
- \(PUP-9747\) Relax validation for bolt [\#182](puppetlabs/puppet-resource_api#182) ([DavidS](https://github.com/DavidS))
- \(maint\) Add to\_hash function to resourceShim for compatibility [\#180](puppetlabs/puppet-resource_api#180) ([da-ar](https://github.com/da-ar))
- \(maint\) implement `desc`/`docs` fallback [\#177](puppetlabs/puppet-resource_api#177) ([DavidS](https://github.com/DavidS))

**Closed issues:**

- ResourceShim should respond to to\_hash [\#179](puppetlabs/puppet-resource_api#179)

**Merged pull requests:**

- \(maint\) Merge 1.6.x to master  [\#183](puppetlabs/puppet-resource_api#183) ([mihaibuzgau](https://github.com/mihaibuzgau))
- \(maint\) Fixup Gemfile for JRuby 1.7 installs [\#173](puppetlabs/puppet-resource_api#173) ([da-ar](https://github.com/da-ar))
- \(maint\) test cleanups [\#172](puppetlabs/puppet-resource_api#172) ([DavidS](https://github.com/DavidS))

## [1.8.3](https://github.com/puppetlabs/puppet-resource_api/tree/1.8.3) (2019-04-12)
[Full Changelog](puppetlabs/puppet-resource_api@1.8.2...1.8.3)

**Fixed bugs:**

- \(FM-7867\) Always throw when transport schema validation fails [\#169](puppetlabs/puppet-resource_api#169) ([da-ar](https://github.com/da-ar))

**Merged pull requests:**

- \(PA-2496\) Bump version and remove v from version number [\#170](puppetlabs/puppet-resource_api#170) ([mihaibuzgau](https://github.com/mihaibuzgau))

## [1.8.2](https://github.com/puppetlabs/puppet-resource_api/tree/1.8.2) (2019-04-10)
[Full Changelog](puppetlabs/puppet-resource_api@v1.6.4...1.8.2)

**Merged pull requests:**

- \(packaging\) Update reported version to 1.8.2 \[no-promote\] [\#167](puppetlabs/puppet-resource_api#167) ([mihaibuzgau](https://github.com/mihaibuzgau))

## [v1.6.4](https://github.com/puppetlabs/puppet-resource_api/tree/v1.6.4) (2019-03-25)
[Full Changelog](puppetlabs/puppet-resource_api@v1.8.1...v1.6.4)

**Merged pull requests:**

- Add `implementations` to reserved bolt keywords [\#165](puppetlabs/puppet-resource_api#165) ([DavidS](https://github.com/DavidS))
- \(MAINT\) Bump version [\#164](puppetlabs/puppet-resource_api#164) ([sebastian-miclea](https://github.com/sebastian-miclea))
- Release prep for v1.8.1 [\#163](puppetlabs/puppet-resource_api#163) ([DavidS](https://github.com/DavidS))

# Changelog

All significant changes to this repo will be summarized in this file.


## [v1.8.1](https://github.com/puppetlabs/puppet-resource_api/tree/v1.8.1) (2019-03-13)
[Full Changelog](puppetlabs/puppet-resource_api@v1.8.0...v1.8.1)

**Fixed bugs:**

- \(maint\) Fixes sensitive transport values where absent keys are wrapped [\#161](puppetlabs/puppet-resource_api#161) ([da-ar](https://github.com/da-ar))

**Merged pull requests:**

- 1.6.x mergeup [\#162](puppetlabs/puppet-resource_api#162) ([DavidS](https://github.com/DavidS))
- \(FM-7829\) Update README with transports examples [\#160](puppetlabs/puppet-resource_api#160) ([willmeek](https://github.com/willmeek))
- \(maint\) update release docs [\#159](puppetlabs/puppet-resource_api#159) ([DavidS](https://github.com/DavidS))
- Improve travis cells and testing [\#145](puppetlabs/puppet-resource_api#145) ([DavidS](https://github.com/DavidS))

## [v1.8.0](https://github.com/puppetlabs/puppet-resource_api/tree/v1.8.0) (2019-02-26)
[Full Changelog](puppetlabs/puppet-resource_api@v1.7.0...v1.8.0)

**Implemented enhancements:**

- \(FM-7695\) Transports - the remote content framework [\#157](puppetlabs/puppet-resource_api#157) ([DavidS](https://github.com/DavidS))
- \(FM-7698\) implement `sensitive:true` handling [\#156](puppetlabs/puppet-resource_api#156) ([da-ar](https://github.com/da-ar))
- \(PDK-1271\) Allow a transport to be wrapped and used like a device [\#155](puppetlabs/puppet-resource_api#155) ([da-ar](https://github.com/da-ar))
- \(FM-7701\) Support device providers when using Transport Wrapper [\#154](puppetlabs/puppet-resource_api#154) ([da-ar](https://github.com/da-ar))
- \(FM-7726\) implement `context.transport` to provide access [\#152](puppetlabs/puppet-resource_api#152) ([DavidS](https://github.com/DavidS))
- \(FM-7674\) Allow wrapping a Transport in a legacy Device [\#149](puppetlabs/puppet-resource_api#149) ([da-ar](https://github.com/da-ar))
- \(FM-7600\) Add Transport.connect method [\#148](puppetlabs/puppet-resource_api#148) ([da-ar](https://github.com/da-ar))

**Fixed bugs:**

- \(FM-7690\) Fix transports cache to be environment aware [\#151](puppetlabs/puppet-resource_api#151) ([da-ar](https://github.com/da-ar))

**Merged pull requests:**

- \(FM-7726\) cleanups for the transport  [\#153](puppetlabs/puppet-resource_api#153) ([DavidS](https://github.com/DavidS))
- \(FM-7691,FM-7696\) refactoring definition handling in contexts [\#150](puppetlabs/puppet-resource_api#150) ([DavidS](https://github.com/DavidS))

## [v1.7.0](https://github.com/puppetlabs/puppet-resource_api/tree/v1.7.0) (2019-01-07)
[Full Changelog](puppetlabs/puppet-resource_api@v1.6.3...v1.7.0)

**Implemented enhancements:**

- \(maint\) Validate Type Schema [\#142](puppetlabs/puppet-resource_api#142) ([da-ar](https://github.com/da-ar))

**Merged pull requests:**

- \(maint\) Bundler 2.0 dropped support for Ruby versions \< 2.2 [\#147](puppetlabs/puppet-resource_api#147) ([da-ar](https://github.com/da-ar))
-  \(FM-7597\) RSAPI Transport register function [\#146](puppetlabs/puppet-resource_api#146) ([da-ar](https://github.com/da-ar))
- \(packaging\) Update version to 1.7.0 [\#144](puppetlabs/puppet-resource_api#144) ([branan](https://github.com/branan))

## [v1.6.3](https://github.com/puppetlabs/puppet-resource_api/tree/v1.6.3) (2018-12-11)
[Full Changelog](puppetlabs/puppet-resource_api@v1.6.2...v1.6.3)

**Closed issues:**

- Trying to understand stubbing in the examples [\#136](puppetlabs/puppet-resource_api#136)

**Merged pull requests:**

- \(packaging\) Update version to 1.6.3 [\#143](puppetlabs/puppet-resource_api#143) ([branan](https://github.com/branan))
- Move parameter and property logic to separate classes [\#140](puppetlabs/puppet-resource_api#140) ([bpietraga](https://github.com/bpietraga))
- \(maint\) Predeclare Puppet module before ResourceApi [\#139](puppetlabs/puppet-resource_api#139) ([caseywilliams](https://github.com/caseywilliams))
- \(maint\) minor fix to make data\_type\_handling change work [\#138](puppetlabs/puppet-resource_api#138) ([DavidS](https://github.com/DavidS))
- \(maint\) extract data type handling code [\#137](puppetlabs/puppet-resource_api#137) ([bpietraga](https://github.com/bpietraga))
- Release prep for v1.6.2 [\#135](puppetlabs/puppet-resource_api#135) ([DavidS](https://github.com/DavidS))
jperkin pushed a commit that referenced this issue May 20, 2020
v0.9.5 (2020-03-28) : I Knew Her, She Knew Me
----------------------------------------------

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


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

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

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

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


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

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

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

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


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

Fix
~~~
- Docs and pep8.

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


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

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

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

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

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

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


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

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

Other
~~~~~
- Test with py38


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

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


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

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

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


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

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

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


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

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

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

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

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


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

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


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

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

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

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


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

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

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

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

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


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

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

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

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

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


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

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

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


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

New
~~~
- Pypy and pypy3 support.

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

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


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

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

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


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

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

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

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

Other
~~~~~
- Moved to pytest, although unittest not yet purged.
jperkin pushed a commit that referenced this issue Sep 21, 2020
# rstudioapi 0.11

* `rstudioapi::launcherResourceLimit()` now properly delegates the type
  and memory arguments. (#164)

* `rstudioapi` gains the function `highlightUi()`, used to highlight UI
  elements in newer versions of RStudio.

* Paths returned from `selectFile()` are now properly marked with
  UTF-8 encoding.

* It is now possible for `rstudioapi` to communicate with a parent RStudio
  session, for R sessions launched as RStudio jobs. Use
    `rstudioapi::isAvailable(child_ok = TRUE)` to assert that it's okay to check
      that `rstudioapi` is available and is running within an RStudio job.

* Added `bugReport()`, a helper function for reporting RStudio bugs
  on the GitHub issue tracker with an issue template pre-populated
    with some helpful diagnostic information.

* Added `userIdentity` and `systemUsername`, used to retrieve information about
  the current user.
jperkin pushed a commit that referenced this issue Dec 28, 2020
Change since 1.3.1 from RELEASE_NOTES

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

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

* New `style_hyperlink()` function to add hyperlinks, on terminals that
  support them.

* `cli_format_method()` now works properly in knitr, and other environments
  that catch message conditions (#159).

* ANSI strings created by `col_*`, `bg_*` and `style_*` now also add the
  `character` class to the result. This fixes issues with code that
  expect `character` objects.

* New functions to manipulate ANSI strings: `ansi_aling()`,
  `ansi_has_any()`, `ansi_nchar()`, `ansi_regex()`, `ansi_strip()`,
  `ansi_strsplit()`, `ansi_substr()`, `ansi_substring()`.

# cli 2.1.0

* New `cli_vec()` function to allow easier formatting of collapsed
  vectors. It is now also possible to use styling to set the collapsing
  parameters (#129).

* New `pluralize()` function to perform pluralization without generating
  cli output (#155).

* `console_width()` works better now in RStudio, and also in terminals.

* Styling of verbatim text work properly now (#147, @tzakharko).

* Messages (ie. `message` conditions) coming from cli now have the
  `cliMessage` class, so you can easily suppress them without suppressing
  other messages (#156).

* cli prints the output to `stderr()` now, if there is an output or
  message sink. This is to make interactive and non-interactive sessions
  consistent (#153).

* Pluralization works corrently now if the last alternative is the
  empty string (#158).

* cli now caches the result of the dark background detection in iTerm on
  macOS. Reload cli to delete the cache (#131).

* The `is_dynamic_tty()`, `is_ansi_tty()` and `ansi_hide_cursor()` and
  releted functions now default to the `"auto"` stream, which is
  automatically selected to be either `stdout()` or `stderr()`.
  See the manual for details (#144).

* The default theme now quotes file names, paths, email addresses if they
  don't start or end with an alphanumeric character or a slash. This is
  to make it easier to spot names that start or end with a space (#167).

* `make_spinner()` clears the line properly now (@tzakharko, #164).

* Semantic cli functions now automatically replace Unicode non-breaking
  space characters (`\u00a0`) with regular space characters, right before
  output. They are still used to calculate the line breaks, but not
  outputted (#161).
* Progress bars now respect `is_dynamic_tty()` and do not output `\r` when this
  is false (@jimhester, #177)
jperkin pushed a commit that referenced this issue Jan 2, 2021
- improved PHP 8 syntax support
- added Emacs Org-Mode support (#174)
- fixed single argument and truecolor output of mark_lines.lua
  plug-in (#164)
- added lineno and column parameters to Decorate hook
- LIB: moved CodeGenerator::readUserStyleDef and getStyleDefinition to
  public (#173)
jperkin pushed a commit that referenced this issue Jan 13, 2021
2.0.7 (2020-11-19)

* Add missing padding to request packets
* Land #166, Add missing padding to Netlogon request packets

2.0.6 (2020-09-23)

* Fix Trans2 response data block
* Remove unicode encoding in SMB1 File#rename
* Fix example file permissions
* Update specs
* Land #165, Fix SMB1 Trans2 response packets

2.0.5 (2020-09-21)

* Add the first two necessary requests for exploiting CVE-2020-1472
* Add responses and fix a bug in the NetlogonCredential type
* Add the function to calculate the session key
* Use a string instead of an int array for credential data
* Fix some typos in the documentation that could have been confusing
* Add proper data type definitions for Netlogon
* Fix some Netlogon data definitions and register the service
* Add the NetrServerPasswordSet2 request / response definitions
* Add rspec unit tests for the netlogon request / response definitions
* Implement a WarnNoReadLengthPlugin for the NdrFixedByteArray
* Land #164, Minimal Netlogon Implementation For CVE-2020-1472 (AKA:
  Zerologon)
jperkin pushed a commit that referenced this issue Jan 27, 2021
Most work done by leot@ and sjmulder@ in pkgsrc-wip.

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

Improvements:

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

Bug fixes:

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

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

Improvements:

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

Bug fixes:

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

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

Bug fixes:

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

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

Improvements:

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

Bug fixes:

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

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

Bug fixes:

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

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

Bug fixes:

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

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

Improvements:

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

Bug fixes:

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

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

Incompatibilities:

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

Improvements:

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

Bug fixes:

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

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

Upgrade instructions:

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

Improvements:

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

Bug fixes:

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

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

Improvements:

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

Bug fixes:

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

tig-2.2
-------

Incompatibilities:

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

Improvements:

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

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

Bug fixes:

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

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

Improvements:

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

Bug fixes:

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

tig-2.1
-------

Improvements:

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

Bug fixes:

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

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

Improvements:

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

Bug fixes:

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

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

Improvements:

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

Bug fixes:

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

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

Bug fixes:

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

tig-2.0
-------

Incompatibilities:

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

Improvements:

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

Bug fixes:

 - Fix stash diff display when reloading the stash view after a deleting.
 - Set the commit reference when opening the blame view from the blob view.
 - Correctly identify and highlight the remote branch tracked by HEAD.
 - Pass --no-color after user defined arguments to ensure that colors do not
   break the output parsing. (GH #191)
 - Close stdin when pager mode is not supported.
 - Show newly created branches in the main view. (GH #196)
 - File with 0 changes breaks diffstat highlighting (GH #215)
 - Update %(branch) variable in the main view. (GH #223)
 - Disable graph rendering when either of `--reverse`, `-S`, `-G`, and `--grep`
   are passed to the main view. (GH #127)
 - Only refresh views that support it.
 - Fix author and date annotation of renamed entries in the tree view.
 - Fix use of unsafe methods in the signal handler. (GH #245)
 - Fix rendering in non-UTF8 terminals.
 - Fix stage-update-line by rewriting the diff chunk containing the line instead
   of using `--unidiff-zero` and a diff context of zero. (GH #130)
 - Fix status-update to work for untracked directories. (GH #236)
 - Don't pass log parameters given on the command line to the diff view.
jperkin pushed a commit that referenced this issue Apr 18, 2021
-Add support for Elvish (#174)
-Use Nushell from Nixpkgs unstable (#171)
-Make z exclude current directory (#173)
-Append __zoxide_hook to front of PROMPT_COMMAND (#170)
-Add support for Nushell (#164)
-Find zoxide in Xonsh shells (#168)
-Reference integration with nnn (autojump plugin) (#166)
-Fix CI (#161)
-Remove barely-used aliases (#158)
-Use variable to prevent hook redefinition (#154)
-Use /dev/null on Unix shells (#152)
-Specified external call to cd for fish (#146)
-Remove cargo-udeps
-Handle write errors gracefully (#143)
-Use builtin in shells (#141)
-Use zero copy deserialization (#138)
-Forcibly disable backtraces (#130)
-Start fish in an isolated env (#128)
-Run shell tests in a clean env
-Add NetBSD and Alpine Linux install instructions
-Use Nix for testing
-Split tests
-Change install instructions, add third-party integrations and update README
-Add Termux install instructions
-Update installation instructions
jperkin pushed a commit that referenced this issue Apr 26, 2021
texmath (0.12.2)
  * MathML input: support mmultiscripts element (#158, #100).
  * Make MathML tag/attr recognition case-insensitive (#158).
  * Pandoc writer: better handling of styling such as `\mathrm` (#145).
    Previously identifiers were always italic, no matter what
    styling was applied.
  * Ignore `\tag` in TeX input (#162).
  * TeX writer: avoid unneeded `\left` and `\right` for delimited.
    We don't need `\left` and `\right` when the contents are
    "standard height."
  * TeX reader: parse implicit EDelimited sections (#172).
    We now parse `(x)` as EDelimited, even though `\right` and `\left`
    are not used.

texmath (0.12.1.1)
  * Fix compilation with GHC-9.0.1 (#169, Simon Jakobi).
    Background:
    https://gitlab.haskell.org/ghc/ghc/-/wikis/migration/9.0#simplified-subsumption
  * Add eqn to online demo.
  * Improve error messages for unknown control sequences, and restructure
    tex parser to be more efficient (#167).

texmath (0.12.1)
  * OMML writer: explicitly mark symbols as non-italic (#109).
    Otherwise, for some reason, they appear as italic by default.
  * Improve error messages in reading tex arrays.
  * Improve support for `\bmod`, `\mod`, etc. (#165).
    Allow them to take complex arguments like `\left( 1 \right)`.
  * Improve support for `\genfrac` (#164).
  * Ignore `\textstyle`, `\scriptstyle`, `\scriptscriptstyle`,
    as we currently ignore `\displaystyle`.
  * Parse siunitx commands in reading tex (#157).
  * Improve handling of `\not` in reading tex (#161).
    Previously we only handled `\not` in front of certain symbols.
  * Support `\pod` and `\pmod` and clean up spacing and font for
    `\mod` and `\bmod` (#160).

texmath (0.12.0.3)
  * Allow pandoc-types 1.22.

texmath (0.12.0.2)
  * Allow pandoc-types 1.21.
  * Pandoc output: omit empty Emph for sub/superscript without base (#155).
  * tex writer: Use `\overline{\overline{B}}` instead of unicode
    double line accent (#153).

texmath (0.12.0.1)
  * OMML writer: Fix overline and accent rendering (#152).
  * OMML reader: Fix dropped arrows (#153). Add tests.
jperkin pushed a commit that referenced this issue Jan 18, 2022
ChangeLog:

2022-01-05 1.6

- FIX: repair tests broken by AUTHORS change (#164)
- FIX: repair make distcheck by removing copied _jo zsh functions
jperkin pushed a commit that referenced this issue Jan 18, 2022
Changelog:
Version 1.78.0

Known Issues

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

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

New Libraries

  * No new libraries.

Updated Libraries

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

Updated Tools

  * Build:
      + Includes release of B2 version 4.7.2.
jperkin pushed a commit that referenced this issue May 1, 2022
# 1.4.0

* `cran_check_results()` now downloads results in parallel, so it is
  much faster.

* `rcmdcheck_process` now redirects the standard error to the standard
  output, to make sure that they are correctly interleaved (#148).

* rcmdcheck now puts Rtools on the PATH, via pkgbuild (#111).

* rcmdcheck now builds the manual when building the package, if it is
  needed for `\Sexpr{}` expressions (#137).

* This version fixes a rare race condition that made rcmdcheck fail (#139).

* rcmdcheck now safeguards against R deleting the user's home directory
  via an `R CMD build` bug (#120).

* rcmdcheck can now ignore files in `inst/doc` when building a package.
  See the `Config/build/clean-inst-doc` package option in
  `?"rcmdcheck-config"` (#130).

* It is now possible to turn on/off ANSI colors for rcmdcheck only,
  without affecting the checked package. See `?"rcmdcheck-config" and the
  `RCMDCHECK_NUM_COLORS` environment variable and the `rcmdcheck.num_colors`
  option (#119, @jimhester).

* `print.rcmdcheck()` now has a `test_output` argument and
  `rcmdcheck.test_output` global option, to control whether to print the full
  test output or not. (#121)

* RStudio's Pandoc is now on the path during `rcmdcheck()`
  and `rcmdcheck_process` (#109, #132, @dpprdan).

* `rcmdcheck()` now errors if the check process crashes (#110, #163).

* `rcmdcheck()` prints the check ouptut better interactively, especially
  when the package has multiple test files (#145, #161).

* rcmdcheck can now ignore `NOTE`s, if requested, see `?rcmdcheck` for
  details (#12, #160).

* rcmdcheck now always converts its output to UTF-8 from the native
  encoding. It also handles parsing check output in a non-native encoding
  better (#152).

* rcmdcheck now ignored time stamps when comparing two check results (#128).

* rcmdcheck now does not print extra empty lines in the interactive output
  on GitHub Actions.

* rcmdcheck now uses a more robust implementation to extract the session
  info from the check process (#164).
jperkin pushed a commit that referenced this issue Jul 24, 2022
2.72.1 - June 29, 2022
======================

 - Discard empty proxy environment variables (#189)

2.72.0 - March 22, 2022
=======================

 - Fix proxy tests (#186)
 - GnuTLS: use IANA-style ciphersuite names with GnuTLS 3.7.4 (!202)
 - Windows build fixes (!206, !207, Chun-wei Fan)
 - meson devenv (!208, Xavier Claessens)
 - Updated translations

2.72.beta - February 11, 2022
=============================

 - Add environment variable proxy resolver (#162)
 - OpenSSL: fix uninitialized memory use (!201, Daniel Kolesa)

2.72.alpha - January 6, 2022
============================

 - OpenSSL: fix unsafe error handling (!187, Patrick Griffis)
 - Correctly load libsoup DLL on Windows (!190, Chun-wei Fan)
 - OpenSSL: use system trust on Windows (!192, Francesco Conti)
 - GnuTLS: fix TLS 1.3 ciphersuite names, should use underscores (!194)
 - OpenSSL: fail when appropriate if Must-Staple extension is set (!197)
 - Improve failure of tls-unique channel binding requests (!198, Ruslan Marchenko)
 - Do not fill SNI extension with IP address (!200, Matteo Biggio)

2.70.1 - December 6, 2021
=========================

 - Fix crashes when handshake is cancelled (#97, #176)
 - OpenSSL: fix spurious certificate expired verification errors (#179)
 - GnuTLS: Fix tests on 32-bit systems (!188, Simon McVittie)
 - GnuTLS: Fix crash when invalid priority string is forced (!189)

2.70.0 - September 16, 2021
===========================

 - Updated translations

2.70.rc - September 3, 2021
===========================

 - gnutls: revert AuthorityInformationAccess implementation for now (#160)
 - gnutls: fix use of non-default GTlsDatabases, Geary crash on startup (#169)
 - openssl: remove openssl-util (!181)
 - gnutls: fix leak in g_tls_certificate_gnutls_copy (!182, Patrick Griffis)
 - gnutls: Unbreak GTLS_GNUTLS_CHECK_VERSION (!185)

2.70.beta - August 12, 2021
===========================

 - gnutls: Ensure that PKCS #11 pins are NUL terminated (!178, Patrick Griffis)
 - openssl: Restore OCSP support (!179, !180, Patrick Griffis)

2.70.alpha - July 2, 2021
=========================

- Fix TLS channel bindings tests (#164)
- Require OpenSSL 1.0.2 (#166)
- Fix threadsafety issue in certificate verification (!148)
- dlopen libsoup for performing HTTP requests (!149, Patrick Griffis)
- Implement new get_negotiated_protocol vfunc (!150)
- Implement new protocol version and ciphersuite name accessors (!151)
- OpenSSL: use system keychain on macOS (!154)
- OpenSSL: add DTLS support, plus many related improvements (!155, Ole André Vadla Ravnås)
- Implement new GTlsCertificate details APIs (!156, !165, Ross Wollman)
- GnuTLS: improve error handling for PIN failures (!158, Patrick Griffis)
- GnuTLS: expose PIN type on PIN requests (!159, Patrick Griffis)
- GnuTLS: check cancellable in pull timeout callback (!160)
- Add support for Android (!162, Ole André Vadla Ravnås)
- Improve automation of test certificate creation (!167, !168, !169, Patrick Griffis)
- GnuTLS: use GnuTLS to implement all channel bindings (!172)
- GnuTLS: rework certificate verification to use TLS session (!173)
- GnuTLS: improve peer identity verification (!176)
- Bring back automatic downloading of missing intermediate certificates (not fixed, may go away again)

2.68.1 - April 22, 2021
=======================

 - Fix threadsafety issue in certificate verification (!148)
 - Temporarily remove support for downloading missing intermediate certificates with GnuTLS 3.7 (#160)

2.68.0 - March 19, 2021
=======================

 - Fix double free in GnuTLS client certificate request code (!147)

2.68.rc - March 12, 2021
========================

 - Improve heuristic for returning G_TLS_ERROR_CERTIFICATE_REQUIRED
 - Fix check for certain handshake failure conditions

2.68.alpha - January 7, 2021
============================

 - Download and validate missing intermediate certificates (requires GnuTLS 3.7) (#96)
 - OpenSSL backend now uses system crypto policy (#106)
 - Remove use of g_assert in testsuite (#137)
 - Restore support for old versions of OpenSSL (#156)
 - Implement TLS channel bindings API (!139, Ruslan Marchenko)
 - Implement PKCS#11 API (!140, Patrick Griffis)
 - Update testsuite for Fedora 33 crypto policy (!141)
 - Fix NULL dereference in g_tls_connection_base_read_message (!144, Vladimir D. Seleznev)
 - Fix a couple code issues found by Coverity

2.66.0 - September 11, 2020
===========================

- Updated translations

2.65.90 - August 6, 2020
========================

 - Many fixes to OpenSSL backend (!128, Ruslan Marchenko)

2.65.1 - July 2, 2020
=====================

 - Fix peer-certificate[-errors] props set too soon (#127)
 - Implement ALPN for OpenSSL backend (!126, Ruslan Marchenko)
 - Fix Windows build (!127, Cun-wei Fan)
jperkin pushed a commit that referenced this issue Jul 25, 2022
Change log:

0.5.10 (2022-07-09)
======
- New Features:
  - Consider unnamed files unchanged when empty (#170, !123)

- Bug Fixes:
  - session-restore: Manage autosave ids through a GList (#165)
  - Honor global "gtk-menu-images" setting for icon visibility
  - search: Do not select first combo box entry when list does not change
  - Fix encoding conversion when saving
  - Fix encoding conversion when opening (#172)
  - Update charset when a byte order mark is detected (#172)
  - tests: Add plugin settings to the list
  - build: Fix intltool lock file problem during make distcheck
  - Fix a memory leak in menu item realignment (#164)

- Translation Updates:
  Finnish, Greek, Hebrew, Hungarian, Russian, Serbian, Swedish,
  Turkish, Ukrainian
jperkin pushed a commit that referenced this issue Sep 10, 2022
## v3.2.0

#### Fixes:
- fixed `[dotted.table]` source columns sometimes being off by one (#152) (@vaartis)
- fixed spurious `Wnull-dereference` warning on GCC (#164) (@zaporozhets)
- fixed `print_to_stream` ambiguity for `size_t` (#167) (@acronce)

#### Additions:
- added value type deduction to `emplace()` methods
- added `toml::path` utility type (#153, #156, #168) (@jonestristand, @kcsaul)
- added config option `TOML_CALLCONV`
- added missing relational operators for `source_position`

#### Changes:
- relaxed cvref requirements of `is_homogeneous()`, `emplace()`, `emplace_back()`, `emplace_hint()`
- relaxed mantissa and digits10 requirements of extended float support
@jperkin jperkin self-assigned this Oct 25, 2022
@jperkin
Copy link
Collaborator

jperkin commented Oct 25, 2022

Sorry, not sure what happened to this, but this symlink certainly doesn't still exist.

@jperkin jperkin closed this as completed Oct 25, 2022
jperkin pushed a commit that referenced this issue Dec 6, 2022
Features
 - Significantly improved performance, see #173 and #176 (@sharifhsn)
 - Added variable panels through the --panels and --terminal-width flags,
   see #13 and #164 (@sharifhsn)
 - Added new --group-bytes/-g option, see #104 and #170 (@RinHizakura)
 - Added new --base B option (where B can be binary, octal, decimal or
   hexadecimal), see #147 and #178 (@sharifhsn)
 - Show actual zero bytes as ⋄ in the character panel (previously: 0), in
   order not to confuse them with ASCII
 - 0 bytes if colors are deactivated. Closes #166 (@sharkdp)

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

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

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

* fix `%/%` and `%%` if arguments have different units; #313

* fix multiplier parsing for `exp(log(x))` operations; #321

* fix specification of secondary axes with `scale_units`; #326

# version 0.8-0

* enhance unit mapping for newly installed units; #290

* remove deprecations: `install_symbolic_unit`, `remove_symbolic_unit`,
  `install_conversion_constant`, `install_conversion_offset`; #290

* fix multipliers for round trip log-exp operations; #292

* integrate `ggplot2` scales (previously in the `ggforce` package) to
  automatically print axes with units; #294 addressing #164

* fix `all.equal.units` for non-units `current`

* fix zero power; #285

* fix `unique.units` to support arrays and matrices, implement methods for
  `duplicated` and `anyDuplicated`

* fix plot labels with spaces; #298 addressing #297

* always add units to labels, including user-provided ones; as part of #298

* new symbols/names with a percentage character are not allowed due to an
  upstream bug; #289
jperkin pushed a commit that referenced this issue Jan 12, 2023
From the upstream ChangeLog:

[2.2] Fix 'multiple definition' compile time errors by @rdmark in #136
[2.2] Remove bitrotted code by @rdmark in #139
[2.2] Fixes for the OpenSSL 1.1 API; add OpenSSL 1.0 backwards compat by @rdmark in #142
[2.2] Install afp_ldap.conf based on LDAP support, not availability of ACLs. by @rdmark in #143
[2.2] Resolve gcc 10 compile time warnings on Linux by @rdmark in #165
[2.2] Downstream patches for NetBSD compatibility by @rdmark in #148
[2.2] Make timelord work on non-big-endian systems; ability to sync localtime by @rdmark in #151
[2.2] Resolve papd compile time errors due to deprecated CUPS calls by @rdmark in #152
[2.2] Resolve automake warnings running bootstrap by @rdmark in #153
[2.2] Handle special FIRSTNET behavior on NetBSD by @rdmark in #154
[2.2] papd patches for compatibility with older Apple LaserWriter drivers on Mac and GS/OS by @rdmark in #156
[2.2] Allow non-unicode volume to be scanned by the repair tool. by @rdmark in #158
[2.2] Update init script templates to start/stop a2boot daemon. by @rdmark in #160
[2.2] Backport Netatalk 3 patches by @rdmark in #161
[2.2] papd: Send replies to client when printing to prompt more data by @rdmark in #162
[2.2] afpd: Add option to disable afp session tickles by @rdmark in #163
[2.2] Update for Unicode 14 by @rdmark in #164
[2.2] Made the AsanteTalk bridge consistently start up in AppleTalk Phase 2�$A!-�(B by @rdmark in #166
[2.2] Introduce fully functional systemd unit configurations for all daemons by @rdmark in #167
[2.2] General stability patches by @rdmark in #168
Fix some compile errors by @JensKSP in #176

Package changes:

Distfile has been moved to github
Clean up unused PLIST variables
jperkin pushed a commit that referenced this issue Mar 12, 2023
# rgl 1.0.1

## Major changes

* The long promised deprecations of the `rgl.*` functions
have happened.  Now deprecated: `rgl.abclines`,
`rgl.bbox`, `rgl.bg`, `rgl.clear`, `rgl.clipplanes`,
`rgl.close`, `rgl.light`, `rgl.lines`,
`rgl.linestrips`, `rgl.material`,  `rgl.open`,
`rgl.planes`, `rgl.points`, `rgl.quads`,
`rgl.select3d`, `rgl.set`, `rgl.setAxisCallback`,
`rgl.sprites`, `rgl.surface`, `rgl.texts`,
`rgl.triangles`, and `rgl.viewpoint`.
* A vignette "Deprecating the `rgl.*` interface"
has been added.
* Also deprecated: `elementId2Prefix`, `writeWebGL`

## Minor changes

* Since `rgl.material` is deprecated and no
longer contains the list of material types in its
argument list, `rgl.material.names` and `rgl.material.readonly` have been
added.
* Similarly, `rgl.par3d.names` and `rgl.par3d.readonly`
contain lists of properties that may be set or queried
in `par3d()`.
* The flexibility improvements for `surface3d()` in
0.111.6 were incomplete.
* Argument `flip` has been added to `surface3d()` to allow
front and back to be switched.

# rgl 0.111.6

## Minor changes

* Added a panning example to the help page for `setUserCallbacks()`.
* Replaced all calls to `sprintf` from C/C++ code with calls to
`snprintf`.
* `surface3d` and `rgl.surface` are now more flexible,
allowing any of the 3 coordinates to be a vector or matrix
as long as at least one is a matrix.
* `material3d` can now specify an `id` to query properties
for individual objects.
* Since `rgl.material` is soon to be deprecated and no
longer contain the list of material types in its
argument list, `rgl.material.names` and `rgl.material.readonly` have been
added.
* Similarly, `rgl.par3d.names` and `rgl.par3d.readonly`
contain lists of properties that may be set or queried
in `par3d()`.
* Made some examples conditional on interactive use
to save time on CRAN.

## Bug fixes

* Default mouse modes used when a window is opened by an `rgl.*`
call (which is not recommended!) now match
the defaults in `rgl::r3dDefaults`.
* Missing values could cause `surface3d()` to segfault.
* The C source code for `gl2psGetFileFormat` missed declaring
a prototype.

# rgl 0.110.2

## Major changes

* Material property `"blend"` has been added, to allow
various kinds of blending for semi-transparent objects
(issue #245).

## Minor changes

* The `Buffer` object now handles reading of sparse
accessors.
* Low level drawing of primitives has been made more
memory efficient.  This is only likely to make a
noticeable change with very large objects, where R
was running out of memory because of unnecessary
duplication. (Related to issue #260.)
* Recycling of x, y and z vectors in several functions
is more consistent.
* The `polygon3d()` function now chooses coordinates
automatically, as `triangulate()` does (PR #262.)
* The `mtext3d()` and related functions such as
`title3d()` now accept language objects
other than expressions, as `plotmath3d()` always has
(issue #273).

## Bug fixes

* The bounding box could be calculated incorrectly
if data all had large values (issue #250).
* Shiny displays failed to load the shaders (issue #249).
* `transform3d()` failed due to missing argument (issue #253).
* `readOBJ()` is now more flexible in what kinds of
separators it will accept. (issue #258).
* Failure to initialize could cause a segfault.
* On non-macOS platforms, gray-scale textures failed
to display, with a message about an invalid enumerant.
* The third coordinate for `adj` that was added in 0.108.3
was not rendered properly in `rglwidget()` displays of
text.  This sometimes caused text to disappear when it
was near the far limit of the display (issue #269).
* The X11 error fix in 0.109.6 could result in R
freezing in `Rcmdr`.
* Low level drawing functions are now more consistent
about returning an invisible `NULL` if asked to plot zero
items, rather than raising an error or crashing (issue #274).
* Calling `axis3d()` with no ticks or labels no longer triggers
an error, it now silently returns `NULL`.

# rgl  0.109.6

## Minor changes

* `rglwidget()` displays now act on "pointer" events,
not just "mouse" events, so they should be more usable
on touch screens and tablets (PR #240).

## Bug fixes

* Plotting `scene3d()` objects didn't handle suppressed
axes properly, drawing the default axis instead (issue
#241).
* On some systems using X11, `rgl` would segfault when
the "fixed" font was not found.
* X11 errors could cause R to abort.

# rgl  0.109.2

## Major changes

* Changes to support glTF animation:
  - Handling of `embedding = "modify"` for the model matrix
    has changed.  Now the centering step is only done for
    `embedding = "replace"`.  In addition, various bugs
    have been fixed.
  - If a subscene has no lights defined, the lights from the parent
    are used.
  - `plot.rglscene()` now ends with the root subscene as
    current.  It also allows specification of `open3d()`
    parameters in a list.
  - The `MATn` types in `Buffer` are returned as arrays with
    dim `c(n, n, count)`.
  - The `plot3d.rglscene` method now passes `...` to `open3d()`.
  - The `setUserShaders()` function now allows arrays of 4x4 matrices as "uniforms", and allows additional textures to be specified.
* `sprites3d()` now has the option of
`rotating = TRUE`, to allow 3D sprites to rotate with
the scene.
* Added `getShaders()` function to get shaders used in WebGL.
* Now detects if `rgl` is running within `reprex::reprex()`
and if so arranges that a screenshot will be included in the
output.
* Added default shaders to be used in `rglwidget()`, rather than
constructing them on the fly.  This incompatibly affects the use
of lights and clipping planes with user shaders:  their data
is now stored in arrays rather than multiple numbered variables.

## Minor changes

* Now that `pkgdown` 2.0.0 has been released, a number
of internal workarounds to support the development version
have been removed.
* Added `as.mesh3d()` methods for `"rglsubscene"` and `"rglscene"`.
* `open3d()` now handles `useNULL` and `silent` arguments
passed in `params`.
* Controls passed to `playwidget()` may now include a
component specifying HTML dependencies.
* Added `rglwidgetClass.readAccessor()` method to let other
code use the buffering.
* Changed the internal organization of bounding box calculations.
* All functions that produce meshes now accept
material properties.  Newly modified to do so using the `...`
argument:  `cylinder3d()`, and `getBoundary3d()`.
* Updated the system requirements and installation instructions.
* Solid bounding box decorations now try harder to display 3 faces (issue #206).
* Now that `webshot2` is on CRAN, instructions for
installing it from Github have been removed.
* Sometimes `webshot2` snapshots are very slow, so
the default for the `webshot` argument to `snapshot3d()`
now depends on the `RGL_USE_WEBSHOT` environment
variable, using `TRUE` if it is unset. (Reported by Prof. B. D. Ripley.)
* If the Chrome browser is not found, `snapshot3d(webshot = TRUE)` now issues a warning and
reverts to using `rgl.snapshot()`.
* Buffers now use "normalized integers" to store
color or texture coordinate values that lie between 0
and 1 when it saves some space.
* At the request of CRAN, the `akima` package is no
longer suggested.

## Bug fixes

* `as.mesh3d.rglobject()` didn't handle objects with indices
properly.
* In WebGL, the front vs back calculation sometimes
got the wrong result (issue #164).
* `pop3d(tag = x)` did not always find the objects with `tag == x` if they were not in the current subscene.
* The default values for `front` and `back` in `rgl.material`
and `material3d` are now `"filled"`, as documented in some
places.
* The `fog` setting wasn't handled properly by `bg3d()`.
* Numerous cases of partial argument matching were fixed
(suggestion of Henrik Bengtsson in issue #170.)
* Argument `col` is accepted as a synonym for `color` in `material3d()` and `rgl.material()`.
* `planes3d()` objects were not displayed consistently
in `rgl` windows and WebGL displays, because the bounding
boxes were not computed consistently (issue #169).
* Some initialization wasn't done properly in Shiny apps,
so they failed after a redraw (issue #173).
* Buffers are now optional, as they don't work with
Shiny scene changes (also issue #173).
* The NULL device would sometimes miscalculate the
bounding box.
* `selectpoints3d(closest = TRUE)` selected too many points
when multiple objects were in the scene.
* Clearing nested subscenes could cause a segfault and crash.
* In `knitr` and `rmarkdown`, blank plots could be shown
when `par3d(skipRedraw=TRUE)` was set (issue #188).
* Objects drawn with `sprites3d()` weren't lit correctly
in WebGL (issue #189).
* Objects with textures were sometimes drawn more than once, both
before the texture loaded and after.  This was most noticeable for
objects with user textures.
* Axis mode `"pretty"` got lost when scenes were redrawn.
* Tick labels were sometimes lost in WebGL displays and
`snapshot3d()` results (issue #197).
* The new material properties from 0.107.10 and 0.108.3
were not handled properly by `plotmath3d()`.
* `rglMouse()` did not set the default value of the drop-down
selector properly (issue #213).
* `merge.mesh3d()`, used by `filledContour3d()`, didn't handle
colors properly (issue #212).
* `bg3d(sphere = TRUE)` has been fixed (issue #207).
* Textures were not appearing on spheres, and front-back
differences weren't being rendered (issue #217).
* When "knitting" within RStudio under R 4.2.0 on
Windows, `rgl` scenes didn't appear (reported by
Dieter Menne.) A workaround has been added.
* In `rglwidget()`, axis labels were not always
displayed, and did not move with solid bounding box
decorations properly (issue #206).
* On some systems, `lines3d()` using both missing values
and transparency did not draw properly (issue #234,
originally reported by Gaspar Jekely).
* The `rglShared()` example failed when `crosstalk`
was uninstalled.


# rgl  0.108.3.2

## Bug fixes

* Changes introduced in 0.100.50 lacked checks; these caused
segfaults in Windows with R 4.2.0 and RStudio (issue #208).
* A typo caused problems loading fonts on some systems.

# rgl  0.108.3

## Major changes

* Added `getBoundary3d()` function to extract the boundary
edges of a mesh.
* Added material property `tag`, a string associated
with each object.  The value is reported by `ids3d(tags = TRUE)` and
may be used to select objects in most functions that use ids,
but otherwise is
largely ignored by `rgl`.  The `tagged3d()` function returns
information on tags.
* Primitive types (points, lines, segments, triangles, quads)
can now accept an `indices` parameter, similar to the
indices in `mesh3d` objects.
* Added `Buffer` object, based on glTF design, for holding binary
data for `rglwidget()`.

## Minor changes

* Allowed for a third coordinate in `text3d()`'s `adj`
parameter.
* Added support for `adj`, `pos` and `offset` to
`sprites3d()`.
* Added support for `pos` values of `0` (at specified
location), `5` (in front of it), and `6` (behind it) in
`text3d()`, `sprites3d()` and `plotmath3d()`.
* `crosstalk` is now a Suggested package, rather than
a required one.
* The `Makevars.ucrt` file has been modified with
contributions from Tomas Kalibera to work with his `winutf8`
build of R.
* `bgplot3d()` no longer pauses for each page when running
examples.
* `deldir` version 1.0-2 is incompatible with `rgl`.  Added
the `checkDeldir()` function to avoid running it.
* `shade3d()` treated texture coordinates like colors, and
  duplicated the first one for the whole face when `meshColor = "faces"` was chosen.
  Instead, they are now treated like vertex coordinates.
  (Reported by Michael Sumner in issue #145).
* Corrected the documentation and made the implementations
of `asHomogeneous()`, `asEuclidean()` etc. more consistent.
* An `as.rglscene()` generic has been added, though no methods
are defined in this package.
* `downlit` 0.4.0 has been released with support for `rgl`, so instructions
for installing the devel version have been removed.

## Bug fixes

* Fixed rendering of text as sprites3d() objects.
* Added `--static` flag to configure script for FreeType
  installation.  (Suggestion of Simon Urbanek and Prof. Brian Ripley.)
* `shade3d()`, `wire3d()` and `dots3d()` overrode
  `"front"` and `"back"` material settings in mesh objects.
* `rglwidget()` handling of bounding box decorations had
  several bugs.
* `rgl` could not find routines in the DLL on some Windows
installs (Issue 148.)
* Some cases where allocations were not protected have been fixed.
jperkin pushed a commit that referenced this issue Apr 8, 2023
Change log:

4.18.2 (2023-03-28)
======
- manager: Fix GQueue memory management
- Fix Xfconf memory management
- Update bug report address
- Fix suspend/hibernation bug on ConsoleKit2 (Fixes #164)
jperkin pushed a commit that referenced this issue Apr 28, 2023
v0.17.0

    docs: reorder sections to start with the why by @eddiemonge in #159
    feat: allow uppercase HTTP verbs as commands by @danielgtaylor in #160
    fix: crash with certain --help commands by @danielgtaylor in #161
    feat: bulk list supports shorthand query filters by @danielgtaylor in #162
    fix: completion for multi-variable templates by @danielgtaylor in #163
    feat: upgrade to Shorthand v2.1.0 by @danielgtaylor in #164
    fix: properly support commas in headers by @danielgtaylor in #165
    Fix bug #128 by @james-maloney in #166
    fix: run tests on pulls by @danielgtaylor in #167
    fix: properly set error on panic recovery by @danielgtaylor in #168
    feat: set exit code from status code, fixes #125 by @danielgtaylor in #169
    fix: add test for combined path+op params and ref by @danielgtaylor in #171
    fix: upgrade to libopenapi 0.4.x by @danielgtaylor in #170
    fixes 'findApi' when the help command is used by @james-maloney in #172
jperkin pushed a commit that referenced this issue May 21, 2023
 2.5.0   C<2023-02-05>

 * Set minimal Perl version to 5.16 (#91)

 * Per default enviroment from vscode will be passed to debuggee, syntax check and perltidy.

 * Add configuration C<disablePassEnv> to not pass enviroment variables.

 * Support for C<logLevel> and C<logFile> settings via LanguageServer protocol and
not only via command line options (#97) [schellj]

 * Fix: "No DB::DB routine defined" (#91) [peterdragon]

 * Fix: Typos and spelling in README (#159) [dseynhae]

 * Fix: Update call to gensym(), to fix 'strict subs' error (#164) [KohaAloha]

 * Convert identention from tabs to spaces and remove trailing whitespaces
jperkin pushed a commit that referenced this issue Sep 1, 2023
1.5.0 (2023-08-25)

* Fix to prevent distutils deprecation warning (#159)
  (Christopher Dilks)

* Drop Python 2.7 support

* Fix memory leak of Python objects.  (#129) This should fixes #128 and
  maybe also fixes #164.
  (mknkmyza)
jperkin pushed a commit that referenced this issue Oct 27, 2023
0.4.3.14
    #170, #171 Support GHC 9.8.

0.4.3.13
    #167 Support th-abstraction 0.5.

0.4.3.12
    #164, #165 Support template-haskell 2.19 (and GHC 9.6 by extension).
jperkin pushed a commit that referenced this issue Oct 30, 2023
0.14
* Add rWeakDeliminators field to Rule. [API change]
* Make WordDetect sensitive to weakDeliminator. This fixes parsing of
  floats beginning with '0.' in C (#174).
* Add debiancontrol syntax (#173).

0.13.4.1
* Update syntax definitions: ada, bash, cmake, css, html, isocpp, java,
  javascript, kotlin, latex, makefile, markdown, php, python, qml, r, sass,
  scss, typescript, zsh.
* Don't require word boundary at end of Int, Float, HlCHex, HlCOct
  (#170). KDE does not. This fixes things like 7L in R.

0.13.4
* Add dosbat syntax (MS DOS batch file) (#169).
* Derive Bounded Instance for TokenType (#168, Pavan Pikhi). Add Bounded to
  the derived instances for the TokenType type. This allows consumers to
  use [minBound .. maxBound] to generate a list of all token types when
  writing a Style.
* Require xml-conduit >= 1.9.1.3. This fixes a bug that prevents parsing
  certain DOCTYPE declarations, e.g. in agda.xml.
* Updated cmake syntax definition.

0.13.3
* Add gap language (#167).
* Update syntax definitions.
* Add patches for agda.xml and dtd.xml, to wor around a bug in xml-conduit:
  snoyberg/xml#187
* Store compiled regexes in RE (#166, Jonathan Coates). This changes the RE
  type to (lazily) compile the regex when constructed, rather than in the
  tokenizer. This allows us to avoid re-compiling regexes for each separate
  tokenize call, instead sharing them globally. We try to hide the
  internals of this, exposing the previous interface (RE { reString,
  reCaseSensitive }) with pattern synonyms.
* ConTeXt: fix handling of spaces in non-normal tokens (Albert
  Krewinkel). This ensures that multiple spaces won't be collapsed into a
  single space.

0.13.2.1
* Update tango style for new token types (#164). The original tango style
  didn't have colors defined for many token types that have been added
  since it was added. This commit updates the style to support them. Thanks
  to @danbraswell for providing the values needed.
jperkin pushed a commit that referenced this issue Oct 31, 2023
0.14
* Add rWeakDeliminators field to Rule. [API change]
* Make WordDetect sensitive to weakDeliminator. This fixes parsing of
  floats beginning with '0.' in C (#174).
* Add debiancontrol syntax (#173).

0.13.4.1
* Update syntax definitions: ada, bash, cmake, css, html, isocpp, java,
  javascript, kotlin, latex, makefile, markdown, php, python, qml, r, sass,
  scss, typescript, zsh.
* Don't require word boundary at end of Int, Float, HlCHex, HlCOct
  (#170). KDE does not. This fixes things like 7L in R.

0.13.4
* Add dosbat syntax (MS DOS batch file) (#169).
* Derive Bounded Instance for TokenType (#168, Pavan Pikhi). Add Bounded to
  the derived instances for the TokenType type. This allows consumers to
  use [minBound .. maxBound] to generate a list of all token types when
  writing a Style.
* Require xml-conduit >= 1.9.1.3. This fixes a bug that prevents parsing
  certain DOCTYPE declarations, e.g. in agda.xml.
* Updated cmake syntax definition.

0.13.3
* Add gap language (#167).
* Update syntax definitions.
* Add patches for agda.xml and dtd.xml, to wor around a bug in xml-conduit:
  snoyberg/xml#187
* Store compiled regexes in RE (#166, Jonathan Coates). This changes the RE
  type to (lazily) compile the regex when constructed, rather than in the
  tokenizer. This allows us to avoid re-compiling regexes for each separate
  tokenize call, instead sharing them globally. We try to hide the
  internals of this, exposing the previous interface (RE { reString,
  reCaseSensitive }) with pattern synonyms.
* ConTeXt: fix handling of spaces in non-normal tokens (Albert
  Krewinkel). This ensures that multiple spaces won't be collapsed into a
  single space.

0.13.2.1
* Update tango style for new token types (#164). The original tango style
  didn't have colors defined for many token types that have been added
  since it was added. This commit updates the style to support them. Thanks
  to @danbraswell for providing the values needed.
jperkin pushed a commit that referenced this issue Nov 6, 2023
Overview of changes in gnome-calculator 45.0.1
    * Retagging release

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Overview of changes in gnome-calculator 3.38.0

Overview of changes in gnome-calculator 3.37.92

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

Overview of changes in gnome-calculator 3.36.0

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

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

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

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

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

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

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

Overview of changes in gnome-calculator 3.33.2
    * Separated calculator library !19 (Daniel Espinosa Ortiz)
    * Ensure icon is available for shell (Ken VanDine)
    * Support entering left/right shift with keyboard #98 (Robert Roth)
    * Fixed CFA conversion rate #102 (Robert Roth)
    * Remove copy icon from search provider results #103 (Robert Roth)
    * Do not assume octal base for binary numbers #101 (Robert Roth)
    * Show thousands separator in unit converter #102 (Robert Roth)
    * Use currency name instead of display name for conversion #106 (Robert Roth)
    * Quit warns and closes all windows #51 (Robert Roth)
    * Avoid normalizing the equation twice in search #104 (Pascal Nowack)
    * Ignore keypresses while calculating results #47 (Robert Roth)
    * Only allow one decimal point in numbers #5 (Robert Roth)
    * Application icon updated in help (Andre Klapper)
jperkin pushed a commit that referenced this issue Feb 1, 2024
    [oss-fuzz] fuzzing support by @0x34d in #153
    [Fuzzing] fix harness by @0x34d in #156
    [Fuzzing] using cifuzz for PR by @0x34d in #154
    Specify C++11 std in meson build by @DownerCase in #157
    Add ini_ prefix even to static names so inih can be used as an #include by @benhoyt in #164
jperkin pushed a commit that referenced this issue Feb 1, 2024
0.20.7

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

0.20.6

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

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

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

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

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

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

Changed

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

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

- redrew U+A690 U+A691

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

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

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

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

[v0.054] - 2024-03-05

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

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

[v0.053] - 2023-12-26

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

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

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

[v0.052] - 2023-11-30

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

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

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

    U+2B95: ⮕

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

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

[v0.051] - 2023-08-04

Added

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

Changed
- glyphs tweaked:

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

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

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

[v0.050] - 2023-06-03

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

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

[v0.049] - 2023-05-11

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

Changed

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

[v0.048] - 2023-02-06

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

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

[v0.047] - 2022-12-25

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

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

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

- various other small nudges and tweaks

[v0.046] - 2022-08-15

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

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

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

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

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

🯱🯴:🯳🯵:🯱🯸
```

Changed
- small nudges and tweaks to many glyphs

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

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

Changed
- updated makie logo U+E831 to 
- small tweaks to various math operators
- fixes for some italic failures
- Math Script Roundhand alternates (U1D4D0 -> U1D4CF) renamed in anticipation of Variation Selectors working one day...
jperkin pushed a commit that referenced this issue Sep 24, 2024
This is a point release intended to clear up a couple of CVEs and
apply point fixes that have been accumulating since 5.2.1

There are a few unresolved (but minor) memory leaks related to design
issues in the API that still need to be resolved. Expect those fixes
in the next release.

Code Fixes
----------

* Fixes for CVE-2023-48161, CVE-2022-28506,

* Address SF issue #138 Documentation for obsolete utilities still installed

* Address SF issue #139: Typo in "LZW image data" page ("110_2 = 4_10")

* Address SF issue #140: Typo in "LZW image data" page ("LWZ")

* Address SF issue #141: Typo in "Bits and bytes" page ("filed")

* Note as already fixed SF issue #143: cannot compile under mingw

* Address SF issue #144: giflib-5.2.1 cannot be build on windows and other platforms using c89

* Address SF issue #145: Remove manual pages installation for binaries that are not installed too

* Address SF issue #146: [PATCH] Limit installed man pages to binaries, move giflib to section 7

* Address SF issue #147 [PATCH] Fixes to doc/whatsinagif/ content

* Address SF issue #148: heap Out of Bound Read in gif2rgb.c:298 DumpScreen2RGB

* Declared no-info on SF issue #150: There is a denial of service vulnerability in GIFLIB 5.2.1

* Declared Won't-fix on SF issue 149: Out of source builds no longer possible

* Address SF issue #151: A heap-buffer-overflow in gif2rgb.c:294:45

* Address SF issue #152: Fix some typos on the html documentation and man pages

* Address SF issue #153: Fix segmentation faults due to non correct checking for args

* Address SF issue #154: Recover the giffilter manual page

* Address SF issue #155: Add gifsponge docs

* Address SF issue #157: An OutofMemory-Exception or Memory Leak in gif2rgb

* Address SF issue #158: There is a null pointer problem in gif2rgb

* Address SF issue #159 A heap-buffer-overflow in GIFLIB5.2.1 DumpScreen2RGB() in gif2rgb.c:298:45

* Address SF issue #163: detected memory leaks in openbsd_reallocarray giflib/openbsd-reallocarray.c

* Address SF issue #164: detected memory leaks in GifMakeMapObject giflib/gifalloc.c

* Address SF issue #166: a read zero page leads segment fault in getarg.c and memory leaks in gif2rgb.c and gifmalloc.c

* Address SF issue #167: Heap-Buffer Overflow during Image Saving in DumpScreen2RGB Function at Line 321 of gif2rgb.c
jperkin pushed a commit that referenced this issue Oct 4, 2024
…vel/boost-headers,

devel/boost-libs,devel/boost-mpi,devel/py-boost: Uodate to 1.86.0

Changelog:
New Libraries

  * No new libraries.

Updated Libraries

  * Atomic:
      + Use futex(2) system call on OpenBSD since recent OpenBSD versions have
        removed support for syscall(2).
  * Beast:
      + API Changes
          o Added HTTP status code 418 I'm a teapot.
      + Fixes
          o Narrowing conversion in read_size_hint_db().
          o Overloads that are ambiguous when using default completion tokens.
          o Misplaced static_assert in http::basic_fields move-assignment
            operator.
          o Underflow of bytes_transferred in WebSocket partial write
            operations.
          o websocket::stream::read_size_hint() does not exceed
            read_message_max.
          o Various warnings in tests.
          o Error handling in SSL shutdown operations in examples.
          o Annotate fallthrough case in zlib.
          o Handling of expired timers in basic_stream::ops::transfer_op.
          o Ambiguity in test::basic_stream constructor overloads.
          o Partial parsing of the final chunk in http::parser.
      + Improvements
          o Graceful shutdown in server_flex_awaitable example.
          o Simplified awaitable examples.
          o Added fuzzing targets.
          o Remove superfluous uses of std::bind in some examples.
          o ssl_stream does not use flat_stream.
      + Documentation
          o ssl_stream and flat_stream marked as deprecated.
          o net::ssl::stream is canonical in snippets and examples.
          o Added SSL/TLS Shutdown Procedure section.
      + Acknowledgements
          o tyler92, Ruslan Zakirov, Orgad Shaneh, Alexander Kernozhitsky
  * Charconv:
      + Fixed support for PPC64LE architecture.
      + Fixed support for platforms like Alpine linux that provide the <
        quadmath.h> header but not the compiled library.
      + Fixed first character pattern matching in from_chars for integer types.
      + Fixed overflow detection for integers with base greater than 10.
      + Added native support for std::float16_t and std::bfloat16_t instead of
        using interchange formats.
  * Cobalt:
      + Added support for asio::cancel_after
      + Made asio::deferred co_await-able, because it's asio's default token
      + Added noop utility
      + Added experimental support for stackful coroutines/fibers
      + Fixed movability of channel & coroutine types
  * Compat:
      + Added bind_front.hpp, bind_back.hpp, invoke.hpp, mem_fn.hpp,
        integer_sequence.hpp and type_traits.hpp.
      + Added function_ref.hpp.
  * Container:
      + Fixed bugs/issues:
          o GitHub #285: "devector<>::push_front asserts after clear()".
          o GitHub #280: "Several containers don't support non-movable types
            when move assigning".
          o GitHub #279: "small_vector cannot go back to use stack space".
          o GitHub #277: "Remove dep on boost::static_assert".
          o GitHub #275: "Compilation fails if custom key comparison is used".
          o GitHub #273: "flat_map/vector crashes on appends (memory
            corruption)".
          o GitHub #269: "flat_multimap::emplace not sorting elements under
            GCC".
          o GitHub #266: "small_vector<T> is misaligned on the stack in 32
            bits".
          o GitHub #259: "Global variables".
          o GitHub #245: "flat_tree::insert ordered range doesn't assert
            sorting".
          o GitHub #241: "flat_map should support same interface as std::map".
  * Core:
      + Added a boost/core/pointer_in_range.hpp header with a pointer_in_range
        function template to check if a pointer is within a given range.
      + Fixed type_name for abstract classes. (#172)
      + Fixed boost/core/type_name.hpp compilation error with MSVC with
        disabled native wchar_t type. (#173)
      + Added a workaround for an MSVC bug causing empty_value compilation
        errors when it is used with a nested class. (PR#175)
  * CRC:
      + C++03 is no longer supported; a C++11 compiler is required. (This
        includes GCC 4.6 or later, and MSVC 10.0 (VS 2010) or later.)
      + Removed dependencies on Array, Config, Integer, and TypeTraits. The
        library is now standalone.
  * Filesystem:
      + is_empty operation is now better protected against concurrent
        filesystem modifications.
      + On POSIX systems, is_empty now indicates error if invoked on a file
        other than a regular file or a directory.
      + On Windows, fixed file_size and is_empty operating on symlinks rather
        than the files the symlinks refer to. (#313)
      + directory_entry::refresh no longer throws an exception if the file
        referenced by the entry doesn't exist. This makes directory_entry::
        status and directory_entry::symlink_status, as well as methods based on
        them, behave similarly to the equivalent standalone operations. The
        fact that the file does not exist is still indicated via the error_code
        returned by the corresponding directory_entry::refresh overload, or can
        be seen by testing if the file type returned by directory_entry::status
        or directory_entry::symlink_status calls is file_type::file_not_found.
        (#314)
      + Fixed weakly_canonical testing path elements for existence relative to
        the current path instead of the base path specified in the call, if the
        input path was a relative path.
      + On Windows, fixed weakly_canonical producing incorrect result path when
        the input path started with "..". (#311)
  * Format:
      + C++03 is no longer supported; a C++11 compiler is required. (This
        includes GCC 4.7 or later, and MSVC 12.0 (VS 2013) or later.)
  * Function:
      + Removed dependency on Boost.TypeTraits.
      + Brought back the argN_type typedefs that were accidentally lost in
        1.85.
  * GIL:
      + Added
          o Added tell() and error() functions to istream_device and
            ostream_device classes (PR#747).
      + Changed
          o Don't ignore custom color converter in color_converted_view
            function (PR#726).
          o Added workaround for conflict with min() and max() macros on WinAPI
            (PR#745).
          o The use of boost::filesystem in GIL is now configurable in CMake
            via option BOOST_GIL_USE_BOOST_FILESYSTEM (PR#743).
      + Fixed
          o Fixed convolution in convolve_2d (PR#723)
          o Normalize Gaussian 2D kernel to avoid darkening (PR#725)
          o Wrong buffer size in path string conversion functions for std::
            wstring is fixed, avoiding buffer overflows when using I/O-related
            functions with std::wstring paths (PR#746).
      + Acknowledgements
          o Christoph Gringmuth, Christopher Kormanyos, nicolacandussi, Dirk
            Stolle, Olzhas Zhumabek
  * Graph:
      + Major update: C++14 is the new minimum standard; this was partly
        dictated by dependencies (at least to C++11) and partly by choice. If
        you require support for an older standard, please contact the
        maintainer.
      + Remove direct dependency on Boost.Regex.
      + Fix several compilation errors caused by not explicitly including
        common headers.
      + isomorphism: Fix docs, ignore vertex_max_invariant parameter in favour
        of cheaply calculating upper exclusive bound, fix bug with Associative
        Property Map, improve space efficiency from linear in the size of the
        maximum invariant to linear in the size of g1.
      + boykov_kolmogorov_max_flow: Fix named parameter overload.
      + adj_list_edge_iterator: Fix maybe-uninitialized warnings.
      + hawick_circuits: Add a parameter to optionally limit the depth of the
        search, causing a potentially suboptimal answer to be returned early.
      + disjoint_sets: Improve performance of link_sets by removing redundant
        lookup of set representatives.
      + maximum_adjacency_search: Refactor and more tests.
      + property: Use BOOST_ATTRIBUTE_NO_UNIQUE_ADDRESS to remove wasted space.
      + labeled_graph: Fix remove_labeled_vertex so that it actually removes
        the label too.
      + r_c_shortest_paths: Fix bug that the single-solution variant did not
        always return the shortest path.
      + read_graphviz: Fix stack overflow (oss-fuzz issue 66719) and
        non-keyword subgraph parsing.
      + Many miscellaneous improvements: broken links, typos, etc.
  * Interprocess:
      + Fixed bugs:
          o GitHub #191 ("vectorstream: support file sizes larger than INT_MAX
            ").
          o GitHub #198 ("Minor fixes for documentation of offset_ptr").
          o GitHub #202 ("Allow to map message_queue in anonymous memory").
          o GitHub #207 ("cmake: link system libraries").
          o GitHub #214 ("Doc: Fix github links").
  * Intrusive:
      + Fixed bug GitHub #86: Invalid UTF-8 character in comment
  * JSON:
      + Support for GCC versions older than version 5.0 is deprecated and will
        stop in Boost 1.88.0.
      + source_location parameter was added to throwing accessor functions.
      + Parse option to tolerate invalid UTF-16 surrogate pairs, and produce
        WTF-8.
      + Added accessor functions that return system::result.
      + Handle missing error case in direct parsing.
  * LexicalCast:
      + Fixed conversion of std::basic_string_view and boost::basic_string_view
        containing one or more \0 characters. Issue was introduced in 1.85.0.
  * leaf:
      + More optimal verbose_diagnostic_info implementation.
      + Bug fixes.
      + Added [[nodiscard]] to class result<>.
  * Locale:
      + Add support for custom allocators in conv::utf_to_utf
      + Don't build examples by default
  * Log:
      + Added a workaround for windres.exe issue, when it is used in CMake to
        compile event log resource files on MinGW-w64. (PR#231)
  * Math:
      + Correct Bessel function results at infinity, see 1143.
      + Improve Non Central T numerical stability, see scipy20693.
      + Correct float_next/float_prior behaviour at infinity.
      + Prevent spurious underflow in non-central beta, see scipy20693.
      + Add improvement to Heuman Lambda precision.
      + Improve Skew Normal root finding, see 1120.
      + Lots of minor fixes and improved code coverage.
  * Multiprecision:
      + Make sure eval_convert_to() does not terminate with super large
        numbers, see 618.
      + Fix sinc implementation to match behavior of Boost.Math.
      + Fix divide-by-zero in cpp_int modulus operations.
      + Fix underflow behavior consistency for integers greater than 128-bits,
        see 626.
  * MySQL:
      + The long-deprecated functions query, start_query, execute_statement and
        start_statement_execution (and their async equivalents) have been
        removed.
      + Breaking changes to experimental APIs:
          o The identifier class (client-side SQL formatting) has been removed.
            Use the new format specifiers feature, instead.
          o The required interface for custom formatters has been changed to
            accomodate the new format specifiers API.
          o any_connection::async_connect now requires that its connect_params
            argument be kept alive until the operation completes. The overload
            taking a const connect_params* has been removed.
          o character_set::name is now a const char* instead of a string_view,
            as MySQL character set names can't contain NULL characters.
          o any_connection internal buffer is now limited to 64MB. If you need
            to read or write rows bigger than that, increase
            any_connection_params::max_buffer_size. connection and their helper
            typedefs are not limited.
          o Renamed any_connection_params::initial_read_buffer_size to
            initial_buffer_size.
          o Renamed pool_params::initial_read_buffer_size to
            initial_buffer_size.
      + New experimental API: pipelines. Pipelines can increase efficiency by
        coalescing several requests in a single network packet. Pipelines can
        be used to run text queries, prepare, execute and close statements,
        reset session state and set the connection's character set.
      + Client-side SQL formatting now supports ranges out of the box.
        Formatting can be further customized using the new sequence function.
        Use cases like batch inserts and batch lookups can be significantly
        simplified using this functionality.
      + Client-side SQL formatting now supports format specifiers which modify
        how values are formatted. {:i} formats a string as a dynamic SQL
        identifiers, and {:r} outputs a raw unescaped
      + The static interface (static_results and static_execution_state) now
        supports Boost.Pfr types using pfr_by_name and pfr_by_position. Added
        underlying_row_t to support such types.
      + date and datetime can now be constructed from and converted to C++20
        std::chrono::local_time.
      + Added any_connection_params::max_buffer_size, which allows to set a
        limit to the connection's internal buffer.
      + Added is_fatal_error, which allows users can now distinguish between
        fatal (which require closing and re-opening the connection) and
        non-fatal error codes.
      + Added formattable_ref, a type-erased reference type that can refer to
        any type satisfying the Formattable concept.
      + Fixed an ODR violation under MSVC which could cause crashes in release
        builds when using Boost.MySQL with other code also using asio::
        coroutine in different translation units.
  * Odeint:
      + Added CMake Option BOOST_NUMERIC_ODEINT_NO_ADAPTORS to reduce
        dependencies, see 82
      + Fixed CMake detection of MPI.
  * Process:
      + Moved the old boost.process to v1 subfolder and inline namespace.
        deprecated process/*.hpp v1 headers
      + Turned v2 into a compile library.
      + Fixed usage on alpine linux / musl
  * Stacktrace:
      + Big new feature: stacktrace from arbitrary exception for Windows. std::
        stacktrace::from_current_exception() now works on Windows platform.
        Many thanks to huangqinjin for the implementation PR#159 Now on POSIX
        and Windows the from_current_exception() function returns the
        stacktrace of the current exception object as if the stacktrace was
        captured at the point of throwing the exception.
      + Fixed inclusion of rarely used Windows SDK headers which can cause
        conflict with other code using Windows SDK. Thanks to Marat Abrarov for
        fixing the issue PR#157.
      + Build option boost.stacktrace.from_exception now properly works on
        MacOS. Thanks to Peter Dimov for the fix PR#166.
      + Fixed a typo in assert expression. Thanks to Kilian Henneberger for the
        bug report #164.
      + Fixed shadowing warnings. Thanks to Nigel Stewart for the bug report #
        141.
      + Added dladdr minimal support for AIX. Many thanks to Cl??ment Chigot
        for the implementation PR#114.
      + Added Boost::stacktrace CMake alias that refers to the best supported
        implementation of Boost.Stacktrace on the platform. Thanks to Alex for
        the feature PR#167.
      + Significant improvement of CMake: multiple fixes, added many new tests,
        improved CI. Many thanks to Peter Dimov for all the improvements.
      + Fix addr2line work when the process is looked up via PATH. Thanks to
        Schreischildkroete for the bug report and to Jens Richter for fix #72.
  * Test:
      + Fix -Wundef in configuration step.
      + Fix unreachable return compilation error on MSVC.
  * Unordered:
      + Added container pmr aliases when header <memory_resource> is available.
        The alias boost::unordered::pmr::[container] refers to boost::unordered
        ::[container] with a std::pmr::polymorphic_allocator allocator type.
      + Equipped open-addressing and concurrent containers to internally
        calculate and provide statistical metrics affected by the quality of
        the hash function. This functionality is enabled by the global macro
        BOOST_UNORDERED_ENABLE_STATS.
      + Avalanching hash functions must now be marked via an is_avalanching
        typedef with an embedded value constant set to true (typically,
        defining is_avalanching as std::true_type). using is_avalanching = void
        is deprecated but allowed for backwards compatibility.
      + Added Visual Studio Natvis framework custom visualizations for
        containers and iterators. This works for all containers with an
        allocator using raw pointers. In this release, containers and iterators
        are not supported if their allocator uses fancy pointers. This may be
        addressed in later releases.
  * UUID:
      + Major update.
      + C++03 is no longer supported, a C++11 compiler is required. (This
        includes GCC 4.8 or later, MSVC 14.0 (VS 2015) or later, and
        MinGW-w64.)
      + Decreased number of Boost dependencies from 39 (in total) to just 5.
      + Updated to reflect the newer RFC 9562.
      + Added generators for time-based UUIDs.
      + Many other improvements, see the revision history.
  * Wave:
      + Replaced one use of vsprintf with the more secure vsnprintf
      + Fixed bug:
          o #197: Improper signed overflow handling (UB and a missing division
            check)
  * WinAPI:
      + Added BOOST_USE_WINAPI_VERSION CMake option, which allows users to
        specify the Windows version for Boost to target.

Updated Tools

  * BoostBook:
      + DTD updated: constructor, copy-assignment and destructor elements are
        now allowed inside method-group elements.
      + Many fixes and improvements in Doxygen-generated documentation:
          o Fixed duplicate equal signs in Doxygen-generated enum value
            initializers.
          o Disabled alphabetical sorting of function arguments. The sorting
            can be re-enabled by setting the new boost.sort.params XSL
            parameter to 1.
          o Added support for custom class member grouping. See Doxygen tags @
            name and @{/@}.
          o Added support for Doxygen references to classes, methods, enums,
            variables, etc. (see @ref tag).
          o Added support for @remark and @Important tags.
          o Added support for @parblock tags, which can be used to place
            multiple paragraphs under a tag that expects a single paragraph as
            an argument (e.g. @returns).
          o Template parameter defaults that refer to implementation details
            are now concealed, similar to function parameter defaults.
          o Improved presentation of unnamed enums. Instead of showing a
            synthesized name such as @0, the name is either omitted or is [
            unnamed], if the name is necessary to introduce a link to the enum
            documentation.
          o Changed the "See Also" (@sa) blocks to be displayed inline, similar
            to "Returns".
          o Fixed presentation of multiple exception specifications (@throws).
          o Added support for free form description of throwing behavior. If
            the exception type after the @throws tag is "~" then the exception
            type is omitted from the output, and the following description is
            displayed directly in the "Throws" section.
          o Removed redundant spaces in return types and template parameters.
  * Build:
      + Includes release of B2 version 5.2.1.
github-actions bot pushed a commit that referenced this issue Oct 24, 2024
TL/DR

    Add cramjam.experimental.blosc2
    Add cramjam.experimental.igzip (on 64bit targets)
    Add wasm32 emscripten build and test for pyodide

What's Changed

    Update libcramjam crate to 0.3.0 in cramjam-cli by @musicinmybrain in #152
    Add experimental blosc2 support by @milesgranger in #107
    Move sdist generations to own job by @milesgranger in #155
    Add blosc2 to CLI, libcramjam features and own CI by @milesgranger in #156
    Don't overwrite artifact on each job by @milesgranger in #157
    Prepare for release by @milesgranger in #158
    Change github release job in CI by @milesgranger in #161
    Adjust for move of libcramjam and CLI to own repos by @milesgranger in #162
    Bump libcramjam and simplify CI by @milesgranger in #163
    Bump version and fix CI artifact uploading by @milesgranger in #164
    Bump actions/download-artifact from 3 to 4.1.7 in /.github/workflows by @dependabot in #168
    Update PyO3 0.20 -> 0.22 & Python 3.13 by @milesgranger in #169
    Update upload/download-artifact actions by @milesgranger in #170
    Add more feature configuration options by @milesgranger in #174
    Fix blosc2 upgrade API changes by @milesgranger in #176
    Expose linking flexibility for xz, gzip/deflate from libcramjam by @milesgranger in #175
    Remove pypy3.9 from CI by @milesgranger in #177
    Exclude benchmarks from builds by @milesgranger in #179
    Add wasm32-emscripten builds by @milesgranger in #181
    Add experimental igzip by @milesgranger in #182
github-actions bot pushed a commit that referenced this issue Dec 2, 2024
(NEWS.md is not updated to 1.1.7)
# s2 1.1.5

* fix compiler problem on Alpine 3.19.0 (#251)

# s2 1.1.4

* Updated more tests to pass on a forthcoming waldo package update (#237).

# s2 1.1.3

* Made a test less strict to pass tests on Alpine Linux (#218, #220).
* Updated tests to pass on forthcoming waldo package update (@hadley, #226).
* Updated vendored file modifications to suppress a multi-line comment
  warning on gcc (#214, #227).

# s2 1.1.2

- Fixed test for `as.data.frame()` for `s2_cell()` to comply with new wk
  version and the latest release of R (#207).
- Fix unary union of an empty multipolygon (#208).
- Added `#include <cstdint>` to an Abseil header to fix compilation with
  gcc13 (#209, #210).
- Update internal Abseil to 20220623.1 LTS (#213).

# s2 1.1.1

- Fix new CRAN check warnings (#202, #203).

# s2 1.1.0

- Fix for s2 build on Windows with R <= 3.6.x (#142)
- Fix for s2 build on MacOS with multiple openssl versions (#142, #145, #146)
- Fix for s2 build on 32-bit openssl (#143, #147)
- Added `s2_convex_hull()` and `s2_convex_hull_agg()` (@spiry34, #150,
  #151, #163).
- Added `max_distance` argument to `s2_closest_edges()`, making
  distance-constrained k-nearest neighbours possible (#125, #156, #162).
- Added a spherical `s2_point_on_surface()` implementation for polygons
  (@kylebutts, #152, #161)
- Added a `s2_cell_union()` vector class to represent cell coverings and
  operators to generate them from an s2 geography vector (e.g.,
  `s2_covering_cell_ids()`). Cell unions are useful as compact representations
  of spherical geometry and can be used like a bounding box to determine
  a possible intersection with one or more geographies (#85, #94, #164).
- Refactored the simple features compatability layer into a standalone
  code base for potential future use in a Python adaptation (#165).
- Migrate input and output to non-deprecated wk package handlers and writers
  (#101, #165, #168).
- Make `s2_union_agg()` more efficient using a recursive merge strategy
  (#103, #165).
- Fix package build on Raspberry Pi (#169, #171).
- Fix warning on clang14 when compiling with `-O0` (#167, #172).
- Added `s2_prepared_dwithin()` and fixed `s2_dwithin_matrix()` such that it
  efficiently uses the index (#157, #174).
- Updated `s2_lnglat()` and `s2_point()` to use `wk::xy()` (a record-style
  vctr) to represent point coordinates. This is much faster than the previous
  representation which relied on `list()` of external pointers (#181, #159).
- Added arguments `planar` and `tessellate_tol_m` to `s2_as_text()`,
  `s2_as_binary()`. Use `planar = TRUE` and set `tessellate_tol_m` to the
  maximum error for your use-case to automatically subdivide edges to
  preserve or "straight" lines in Plate carree projection on import (#182).
- Added arguments `planar` and `tessellate_tol_m` to `s2_geog_from_text()`, and
  `s2_geog_from_wkb()`. Use `planar = TRUE` and set `tessellate_tol_m` to the
  maximum error for your use-case to automatically subdivide edges to
  ensure or "straight" lines in Plate carree projection on export (#182).

# s2 1.0.7

- Update the internal copy of s2geometry to use updated Abseil,
  fixing a compiler warning on gcc-11 (#79, #134).
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