Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[darwin] Outdated package: sdl2 #167

Closed
baskerville opened this issue Dec 22, 2018 · 1 comment
Closed

[darwin] Outdated package: sdl2 #167

baskerville opened this issue Dec 22, 2018 · 1 comment
Assignees

Comments

@baskerville
Copy link

The current SDL2 version is 2.0.9.

@jperkin jperkin self-assigned this Mar 11, 2019
@jperkin
Copy link
Collaborator

jperkin commented Mar 11, 2019

2.0.9 is now available.

@jperkin jperkin closed this as completed Mar 11, 2019
jperkin pushed a commit that referenced this issue Mar 26, 2019
Vala 0.44.1
===========
 * Various improvements and bug fixes:
  - ccodegen:
    + Use unsigned default value for flags-enum
    + Use guint to represent flags-enum in custom GMarshalFunc
  - Move disconnect error from signal-module to semantic-analyzer pass
  - Mark defined constructors of abstract classes as protected
  - parser: Implicit creation method of abstract classes must be protected
  - vala: Allow assignment of 0U to enum types
  - libvaladoc: Don't try to create a Content.ListItem when there is none

 * Bindings:
  - gio-2.0: SocketAddress.from_native() is a factory method not a constructor
  - glib-2.0: Add string.validate_len() since 2.60
  - gstreamer: Update from 1.15.2+ git master
  - gtk4: Update to 3.94.0+f14d998c
  - libgvc: Some additions and ownership/return-type fixes
  - vte-2.90: Mark as deprecated, it was replaced by vte-2.91
  - vapi: Update GIR-based bindings

Vala 0.44.0
===========
 * Various improvements and bug fixes:
  - parser: Adjust various source references
  - vala: More regular invocations of check() on inferred Expression.value_type

 * Bindings:
  - gstreamer: Update from 1.15.2+ git master
  - gtk4: Update to 3.94.0+eacbeb9e
  - vapi: Update GIR-based bindings

Vala 0.43.92
============
 * Various improvements and bug fixes:
  - codegen:
    + Allow to associate CCodeFile to actual SourceFile
    + Only emit declaration of *_register_type if needed
    + Add get_variable_array_length_cname() and use as possible
    + Respect array_length_cname attribute for global fields
    + Replace gvaluecollector_h_needed with dedidated add_include() calls
    + Respect finish[_vfunc]_name attributes defined in vala sources
    + Include "glib-object.h" for typeof expression
  - vala:
    + Correctly perform compatibility check of array length-type [#607]
    + Don't ignore qualified parent when inferring type of enum member [#666035]
  - girwriter:
    + Support transfer-ownership="container" for arrays
    + Always use get_gir_name() for TypeSymbols
  - testrunner: Add support for Genie source files (.gs)
  - tests: Add some Genie tests to increase coverage
  - genie: Allow main function "init" to return integer as exit status [#402]

 * Bindings:
  - gobject-2.0: Add SignalHandler.disconnect_by_data()
  - poppler-glib: Update to 0.74
  - gtk4: Update to 3.94.0+b4ae491b
  - vapi: Update GIR-based bindings

Vala 0.43.91
============
 * Various improvements and bug fixes:
  - Revert "valadoc: Drop duplicated code to add source files and use
    CodeContext API" and "valadoc: Update API tests" (#748)
  - valadoc: Report warning if resources for doclet could not be copied
  - libvaladoc: Properly support the output of async constructors (#753)
  - girparser: Correctly set array_length_type for delegates returning an array
  - Revert "vala: Don't replace assignments for local variables with non-null
    simple-types" (#755)

 * Bindings:
  - Follow GTK upstream rename to gtk4 and gtk4-unix-print
  - gtk4,gtk4-unix-printer: Update to 3.94.0+02e856f6
  - gtk+-unix-print-*.0: Fix PrintJob.get_page_ranges(),
    Printer.get_hard_margins()
  - atk-1.0: Adjust for upstream revert of Implementor using G_DEFINE_INTERFACE
  - clutter-1.0: Drop deprecated from Actor.pick() (#625)
  - glib-2.0: Add "delegate_target = false" to Log.writer_journald/
    _standard_streams/_default
  - gio-unix-2.0: Add DesktopAppInfo.get_string_list() since 2.60
  - gstreamer: Update from 1.15.1+ git master
  - webkit2gtk-4.0: Update to 2.23.91
  - vapi: Update GIR-based bindings

Vala 0.43.90
============
 * Various improvements and bug fixes:
  - codegen: Replace some unfortunate asserts with internal error reports
  - codegen: Properly handle and catch inner-error of finally-block (#742)
  - codegen: Pass lambda expression of variable initializer to signal connect
  - vala: Check inferred variable_type of LocalVariables
  - vala: Parser doesn't ensure "protected" to be applied on TypeSymbol members
  - libvaladoc: Don't change the size of an array in-parameter
  - g-i: Fix return value on error in start_discriminator()

 * Bindings:
  - Add goocanvas-2.0 bindings (#739)
  - gdk-3.0: Update to 3.24.4+a0129f55
  - glib-2.0: Bind g_log_writer_journald/_standard_streams/_default as
    LogWriterFunc (#559)
  - goocanvas: Update from 1.0.0+af07af5d
  - gstreamer: Update from 1.15.1+
  - gtk+-4.0: Update to 3.94.0+a7fa1cf6
  - vapi: Update GIR-based bindings

Vala 0.43.6
===========
 * Various improvements and bug fixes:
  - codegen: Don't apply address-of operator on literals when casting to array
  - vala: Don't tweak closure on static lambdas [#740]
  - Revert "codegen: Use copies of error_variable of catch-clauses for nested
    usage" and add asynchronous "catch-error-scope" regression test [#741]
  - libvaladoc: Build backing Vala.SourceFile for GIRs processed by importer
  - libvaladoc/girimporter: Skip "source-position" elements
  - genie: Support "protected" accessibility and allow explicit "public" [#346]

 * Bindings:
  - gst-editing-services-1.0: Fix some construtors and (un)hide symbols
  - javascriptcoregtk-4.0: Fix GLib.Callback parameters which can't hold target

Vala 0.43.5
===========
 * Various improvements and bug fixes:
  - vala:
    + Use dedicated error message for assignments to literals
    + Async methods don't allow out-parameters before in-parameters [#636]
    + Allow direct access to the integer constants of an error-domain [#732]
    + Multiple lamdba arguments in method call should all use same scope [#59]
  - codegen:
    + Use a parameter-map for creation of delegate declaration [#728]
    + Add "error_pos" CCode attribute and use it as needed [#728]
    + Emit struct declaration typedef before resolving its fields [#318]
    + Add "destroy_notify_cname" CCode attribute
    + Use get_ccode_*name/get_parameter_cexpression() for Parameters
    + Set owner for ValaDestroyNotify (POSIX) [#730]
    + Include "stddef.h" in CCodeBaseModule.destroy_value() (POSIX) [#730]
  - girparser: Recognize error parameter before delegate target parameter [#265]
  - compiler: Report deprecated command-line option "--thread"
  - valadoc: Specify that the "--driver" option is deprecated [#736]

 * Bindings:
  - atk: Don't use a custom SignalEmissionHook while it is part of gobject-2.0
  - gdk-pixbuf-2.0: Make PixbufSaveFunc usable [#728]
  - gio-2.0: Make DBusInterface[GS]etPropertyFunc usable [#728]
  - gio-2.0: Add CancellableSource ctor and update PollableSource ctors
  - glib-2.0: Add Queue.clear_full() since 2.60
  - gstreamer: Update from 1.15+ git master
  - gdk-3.0,gtk+-3.0: Update to 3.24.3+9c8f1478
  - gtk+-4.0: Update to 3.94.0+9b15c690
  - libsoup-2.4: Fix Message.add_*_handler() [#731]
  - vapi: Update GIR-based bindings

Vala 0.43.4
===========
 * Various improvements and bug fixes:
  - vala:
    + Array with fixed length don't require explicit instantiation (#720)
    + Add GenericType.get_actual_type()
    + Allow get_actual_type() to be used for expected failures
    + Add Method.compatible_no_error()
    + Don't just guess and check for a matching base_interface_method (#548)
    + Search in all interfaces for an implementation match (#548)
    + Allow explicit interface methods to be virtual (#548)
    + Report invalid instance member access to property (#605)
  - codegen:
    + Use properly checked implicit interface implementations (#548)
    + Use temp-var for MethodCall with out/ref arguments (#722)
    + Use temp-vars for ellipsis out-arguments to fix memory management (#722)
    + Add default_value for CType to initialize variables if needed (#724)
    + Cast instance parameter for property access in object-initializer
    + Don't check boolean values for (in)equality in GTask API (#726)
    + Add missing data parameter to GTypeInfo callbacks
    + Properly set annotations field of GDBus*Info struct to NULL
    + Cast instance and result of g_async_initable_new_finish() call
  - valadoc: Drop duplicated code to add source files and use CodeContext API
  - libvaladoc: Skip empty Version.replacement attribute to avoid critical
  - build: Don't leak libvalaccode symbols to libvaladoc
  - Add a basic CONTRIBUTING.md file that links to the relevant Wiki page
  - tests:
    + Fix try_parse() tests to not compare to already free'd memory
    + Warnings and criticals should be fatal on compile time too

 * Bindings:
  - glib-2.0: Use correct array-length-type for returned arrays (#171)
  - glib-2.0: Add RecMutexLocker since 2.60
  - gio-2.0: Fix File.replace_contents_bytes_async() (!37)
  - gobject-2.0: Use correct array-length-type for returned arrays
  - poppler-glib: Update to 0.71
  - gstreamer: Update from 1.15+ git master
  - gtk+-3.0: Update to 3.24.2+a8e07254
  - gtk+-4.0: Update to 3.94.0+4404afc9
  - sqlite3: Correct return C type of Statement.column_text & Value.to_text
  - webkitgtk-4.0: Update to 2.23.1
  - vapi: Update GIR-based bindings

Vala 0.43.2
===========
 * Various improvements and bug fixes:
  - codegen:
    + GType classes and interfaces require including "glib-object.h"
    + Handle non-default AsyncResult parameter position [#709]
      and regenerate GIR-based bindings to fix non-standard async methods
    + Always emit constants with initializer-list [#81]
    + Emit delegate/enum typedefs to type-declaration section [#318]
  - Break possible endless loop in SymbolResolver.get_type_for_struct() [#444]

 * Bindings:
  - gobject-introspection-1.0: Pick up version attribute fixes

Vala 0.43.1
===========
 * Highlights:
  - Emit G_DEFINE_AUTOPTR_CLEANUP_FUNC() for classes (requires glib 2.44) [#670]
  - Enforce "return yield ..." syntax to be expected [#675]
  - Drop deprecated syntax support of += and -= for signals [#676]
  - Drop deprecated syntax support of # modifier and operator [#677]
  - Allow disabling the build of valadoc [#596]
  - Add support for SingleInstance attribute for GObject classes [#647]
  - Don't allow to declare array parameters with "type array[]" [#163]
  - Collect error_types on demand to allow transformations
  - Check for matching ownership of type-arguments [#696]
  - Add profile specific delegate target/destroy types
  - Don't explicitly add glib headers, the use of symbols will do that [#623]
  - Add --enable-debug configure option
  - Move setting of default defines for VALA_0_XX and GLIB_2_XX to CodeContext
  - Add support for delegate parameters in signals [#205]
  - Admit that structs are emtpy even with a static property [#446]

 * Various improvements and bug fixes:
  - codegen:
    + Fix method pointer cast if instance isn't at first position
    + Transfer ownership of compact class to DestroysInstance method [#645]
    + Add destroy function for GLib.Array [#572]
    + Fix canonical string for quark of error domains
    + Make sure to include declarations for delegate typed parameters
    + Don't emit type_id for enum in non GOBJECT profile
    + Don't emit unused temp variable for element access assignments
    + Actually create method cast for base interface method as needed
    + Mark needle parameter of internal array-contains methods as const [#504]
    + Emit initializer for enum-value into wanted declaration space [#167]
    + Add void to delegate typedef declarations without parameters
    + Deprecate "finish_function" and "ctype" ccode-attribute
    + Fix get_ccode_name() for properties
    + Add ccode getters for GType functions of Classes and Interfaces
    + Don't allow more than one consecutive empty lines in generated code
  - vala:
    + Copy instance_pos argument from virtual/abstract base methods [#540483]
    + Compact classes don't allow private/class fields and to lock fields
    + Use comment which was already retrieved in parse_declaration()
    + Add missing re-check guards for Do/For/WhileStatement and SwitchLabel
    + Type check for errors require an error expression [#362]
    + Make check_arguments() more verbose and don't bail on first error [#438]
    + Don't emit member access of assignments on static properties [#573]
    + Use clearer error message for automatic properties in interfaces [#656]
    + Admit that structs are emtpy even with a static property [#684]
    + Let UsingDirective hold reference to UnresolvedSymbol instances only
    + Add ArrayType.length_type and ArrayCreationExpression.length_type [#607]
    + Remove hardcoded "int" length type and use ArrayType.length_type [#607]
    + Use is_weak() for type-arguments in DataType.to_qualified_string()
  - girwriter: Write glib-type attributes for Enums/Structs with type_id
  - girparser: Skip "source-position" elements and docs in transparent union
  - valadoc:
    + Match property signature with vala's codewriter
    + Sort symbols and members where possible
    + Actually assign type_id of Api.Structs
    + Add type_id to Api.Enum/Interface
    + Skip package dependency if target directory already exists
    + Fix a few errors and warnings in stylesheet
    + Adjust stylesheet to unbreak Epiphany [#644]
    + Several API clean ups
    + Add --fatal-warnings command line option
  - docs: Use Markdown for README and include build instructions
  - testrunner: Compile and run tests separately and pass buildsystem's CC
    through to valac, add various -Werror=* build cflags

 * Bindings:
  - gio-2.0: Add missing File.new_build_filename()
  - glib-2.0: Add missing Array.set_clear_func() binding
  - glib-2.0: Avoid double-free in GLib.Array if clear_func is set
  - glib-2.0: Drop g_object_unref which is part of gobject-2.0
  - gobject-2.0: Attribute all symbols with cheader_filename = "glib-object.h"
  - gdk-x11-3.0,gtk+-3.0: Update to 3.24.1+356f1f59
  - gtk+-3.0: Treat Gtk.IconInfo as GLib.Object which it is since 3.8 [#663]
  - gtk+-4.0: Update to 3.94.0+8de1ba2c
  - gstreamer: Update from 1.15+ git master
  - posix: Add CommandPipe as a sub-type of FILE [#645]
jperkin pushed a commit that referenced this issue Aug 26, 2019
Removes outdated MASTER_SITES.

Changes since b166:

Beta #167 - 25.08.2019
- Crashfix: After loading a sample from a file, the tracker would start to
  behave strangely and could crash in certain scenarios. This is yet another
  bug from beta #163. Sorry for all the serious bugs after that version,
  but I think I have fixed them all now!
- Bugfix: Custom user colors/palette wouldn't be saved to config at all
jperkin pushed a commit that referenced this issue Aug 26, 2019
Version 1.1.27 (released 06-Jun-2019)

  * suppress stack traces (with option to show) (#140)
  * distinguish text/binary/image files by icons (#166, #175)
  * colorize alternating file content lines (#167)
  * link to the instance root from the ViewVC logo (#168)
  * display directory and root counts, too (#169)
  * fix double fault error in standalone.py (#157)
  * support timezone offsets with minutes piece (#176)
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 Jan 11, 2020
1.0.15.1
* Remove whitespace after @ in as-patterns for GHC HEAD #186

1.0.15.0
* Added toNonEmpty to Data.NonNull #185

1.0.14.0
* Added WrappedMono to Data.MonoTraversable #182

1.0.13.0
* Added WrappedPoly to Data.MonoTraversable #180

1.0.12.0
* Added filterSet to Data.Containers
* Use container specific implementations for filterSet and filterMap
  #178

1.0.11.0
* Adding monomorphic instances for GHC.Generics and Data.Proxy types
  #175

1.0.10.0
* Make index work on negative indices #172 #114

1.0.9.0
* Added filterMap to Data.Containers #167
jperkin pushed a commit that referenced this issue Feb 6, 2020
v3.3.1      Mon Jan 13 10:27:16 CST 2020
========================================
[FIXES]
Some regexes would be shown as invalid when used with the -Q option.  Since
the -Q tells ack to treat the regex as a literal, this shouldn't be
possible.  (GH#294)


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

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

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

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

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

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


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

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

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

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

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


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

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

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

Removed support for Parrot (--parrot).


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


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

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

Remove the use of the version.pm module.


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

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

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

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


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


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

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


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


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

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

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


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

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

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


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

Added SVG filetype.

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


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

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

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


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

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

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

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

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

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


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


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

Added --ts for Typescript.


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

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

Lots of internal speedups.


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


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

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

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

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

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


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

# New features

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

Improvements over ack 2 include:

* Improved `-w` option.

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

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

* `--proximate=N` option

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

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

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

# Bug fixes

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

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

# Incompatibilities with ack 2

## ack 3 requires Perl 5.10.1

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

## ack 3 no longer highlights capture groups.

ack 2 would highlight your capture groups.  For example,

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

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

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

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

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

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

This has been a security problem in the past, and so in ack 3 we
no longer `eval` the contents of `--output`.  You're now restricted
to the following variables: `$1` thru `$9`, `$_`, `$.`, `$&`, ``$` ``,
`$'` and `$+`.  You can also embed `\t`, `\n` and `\r` ,
and `$f` as stand-in for `$filename` in `ack2 --output` .
jperkin pushed a commit that referenced this issue Feb 17, 2020
Upstream changes (from CHANGELOG.md):

## 4.0.3

### Fixed

- Fixed 2.7 deprecations and warnings (GH-167). [Thanks @BrianHawley]


## 4.0.2

### Changed

- Updated definitions.
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 11, 2020
Version 2.48.0

- The following is a summary of changes between 2.46.x and 2.48.0.
  For full details, please see the 2.47.x release notes below.

- This release requires at least Rust 1.39.

- #379 - New API, rsvg_handle_set_stylesheet(), to set a CSS
  stylesheet independent of the SVG document.

- #510 - support opacity in patterns.

- Librsvg's XML parser now supports namespaces (xmlns), and is
  stricter than before about it.  Files may fail to parse if there are
  attributes or elements with namespace prefixes (e.g. foo:bar instead
  of plain bar), but without a corresponding namespace declaration
  (e.g. xmlns:foo="http://example.com/foo").

  This may happen especially with incorrectly-written SVGs that use
  xlink:href or xi:include attributes without the corresponding
  namespace declarations.  If you run into this, just add the
  following to your toplevel SVG element:

      <svg xmlns="http://www.w3.org/2000/svg"
           xmlns:xlink="http://www.w3.org/1999/xlink"
	   xmlns:xi="http://www.w3.org/2001/XInclude">
           ^^^^^^^^^ these ones

- Librsvg no longer depends on libcroco, and now does all CSS
  processing using Rust crates from Mozilla Servo.  As a result,
  librsvg can now handle much more complex CSS selectors than before.

- Link-time optimization (LTO) is disabled by default on release
  builds, as this increased build time too much.  Downstream
  distributors may want to turn it back on in the toplevel Cargo.toml.

- #515 (CVE-2019-20446) - Librsvg now has limits on the number of
  loaded XML elements, and the number of referenced elements within an
  SVG document.  This is to mitigate malicious SVGs which try to
  consume all memory, and those which try to consume an exponential
  amount of CPU time.

- Many bugfixes; please see the 2.47.x release notes below.

Version 2.47.4

- (#240) - Fix rsvg-convert's multipage PDF output when the zoom
  option is used (Sven Neumann).

- (#547) - Do not stop rendering if an <image> element references a
  nonexistent file.  This fixes a number of Open Clipart cases.

- (#558) - Compute the font-size cascade correctly when there are "em"
   #and "ex" units involved.

- Updated the man page for rsvg-convert (Sven Neumann).

Version 2.47.3

- #379 - New API, rsvg_handle_set_stylesheet(), to set a CSS
  stylesheet independent of the SVG document.

- #510 - support opacity in patterns (Sven Neumann).

- Move away from the Cairo transform type to our own (Paolo Borelli).

- Update the gtk-rs version.

Version 2.47.2

- Handling of the "result", "in", "in2" attributes in filter
  primitives is slightly stricter now, and spec compliant.  Their
  arguments must be of type CSS custom-ident, so "default", "inherit",
  "initial", and "unset" are disallowed.  Most SVGs should still work
  fine.

- #542 - Fix infinite loop when processing CSS sibling combinators.

- #408 - feImage filters no longer clip their output to integer
  coordinates.

- #504 - Documentation for the Rust crate (available at
  https://gnome.pages.gitlab.gnome.org/librsvg/doc/librsvg/) now has
  API usage examples.

- Debug logs from RSVG_LOG=1 should now be more legible and contain
  better information on invalid CSS.

- Remove link-time workarounds for Rust pre-1.35 (Kleis Auke Wolthuizen).

- Unify internal error types to share the CSS code with gnome-shell.

- Made handling of XML namespaces more spec-compliant.

- Lots of refactoring to start moving away from Cairo internals
  (Paolo Borelli).

Version 2.47.1

- Librsvg no longer depends on libcroco!  It now does all CSS
  processing using Rust crates from Mozilla Servo; these are also the
  crates that are in use in recent versions of Firefox.  As a result,
  librsvg can now handle much more complex CSS selectors than before.
  Fixes #79, #167, #237, #283, #336, #428, #441, #466, #525, #525
  (Paolo Borelli, Federico Mena).  Thanks to Evgeniy Reizner
  for fixing servo/servo#22972, which made
  it possible to use Servo's selectors crate.

- #524 - Panic when reading an invalid stylesheet URL in an XML
  processing instruction (Paolo Borelli)

- Lots of little improvements to the documentation.

- Link-time optimization (LTO) is disabled by default on release
  builds, as this increased build time too much.  Downstream
  distributors may want to turn it back on in the toplevel Cargo.toml.

- We now have the start of documentation on the library's internals at
  https://gnome.pages.gitlab.gnome.org/librsvg/doc/rsvg_internals/index.html
  This should be interest of newcomers to librsvg's source code.

Version 2.47.0

- Librsvg's XML parser now supports namespaces (xmlns), and is
  stricter than before about it.  Files may fail to parse if there are
  attributes or elements with namespace prefixes (e.g. foo:bar instead
  of plain bar), but without a corresponding namespace declaration
  (e.g. xmlns:foo="http://example.com/foo").

  This may happen especially with incorrectly-written SVGs that use
  xlink:href or xi:include attributes without the corresponding
  namespace declarations.  If you run into this, just add the
  following to your toplevel SVG element:

      <svg xmlns="http://www.w3.org/2000/svg"
           xmlns:xlink="http://www.w3.org/1999/xlink"
	   xmlns:xi="http://www.w3.org/2001/XInclude">
           ^^^^^^^^^ these ones

- Patterns and gradients reused across more than one element will only
  get resolved once now; this should make things marginally faster for
  patterns or gradients with fallbacks.

- #515 (CVE-2019-20446) - Librsvg now has limits on the number of
  loaded XML elements, and the number of referenced elements within an
  SVG document.  This is to mitigate malicious SVGs which try to
  consume all memory, and those which try to consume an exponential
  amount of CPU time.

- #521 - Compute geometries correctly if there is a viewBox attribute.

- #308 - Fix stack exhaustion with circular references in <use> elements.

- Consistently use the LGPL 2.1 wherever it is mentioned.

- Patterns and gradients reused across more than one element will only
  get resolved once now; this should make things marginally faster for
  patterns or gradients with fallbacks.

- #506 - Fix empty patterns which reference a fallback pattern with
  children.
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 Apr 3, 2020
## Version 2.5 ##

2019-03-27

- Unicode 13 support ([#179]).

- No longer report zero width for category Sk ([#167]).

- `cmake` support improvements ([#173]).
jperkin pushed a commit that referenced this issue Jun 17, 2020
Changelog:
GEGL-0.4.24 2020-06-07


Build:
~~~~~~

CI creation and caching of container images for build.  Force support for 64bit
file offsets on win32, re-enabling >2GB tile swap, fallout from migration to
meson. Operations in workshop are now built as a bundle.

Core:
~~~~~

cppcheck liniting fixes. Report pixel-formats as part of graphviz debug.  New
meta-data API, that permit handling non-exif metadata in different file loaders
and savers in a generic manner. Use g_ascii_strtod to avoid being tripped up
by ',' expected through locale.

Buffer:
~~~~~~~

Fixed integer overflow in u32 bilinear blit scaler.

Changed cubic interpolation to be a bit softer, reducing induced moire seen in
issue #167. Speeded up cubic sampler with custom inlinable fabsf.

Gracefully fail when running out of swap space. issue #229 Avoid
possible deadlock in file monitoring, working around upstream issue.  Reduced
contention on tile allocation. Allow creating buffers with uninitialized data,
and tracking of empty tiles in tile backends. Sleep on tile lock contention,
reducing contention when hyperthreading. Cppcheck liniting fixes.

Operations:
~~~~~~~~~~~

Meta-operations now have an additional vfunc, update(), which gets invoked on
property changes, all meta ops have been refactored to use the new cleaner API.
gegl_operation_meta_watch_node(s) were already effectively nops, they are
marked as deprecated and left as stubs for thid party ops still calling them.

We now provide our own inlined versions of some basic single precision floats
ops, this enables inlining of performance critical code also with lower
optimization levels.

crop: with no parameters set, infer rectangle to crop from graph.

crop: cropping rectangle can be implied from graph.
hue-chroma: avoid modifying hue/chroma of neutrals
dropshadow: added option for shadow growing
median-blur: accept negative radius values
rgb-clip: add parameters for specifying clipping ranges
vignette: new shapes, horizontal and vertical.
imgcmp: make max-diff property conform to gobject standard.
save-pixbuf: use a GObject for consumer read instead of pointer property.
gegl-graph: add a gegl-chain tutorial as default script.

New Ops:

border-align: place a buffer within the borders of another one.
pack: joins two buffers into one, with optional gap.
bloom: adds a glow around highlights.
piecewise-blend: uses a grayscale map as index into array of buffers used as LUT.
variable-blur: uses piecewise-blend piecewise-blend and gaussian blur to approximate blurs with per-pixel blur radius.
focus-blur: a vignetting blur, using variable-blur.
reset-origin: moves upper left of extent to 0,0
band-tune: parametric band equalizer for tuning frequency bands of image.
jperkin pushed a commit that referenced this issue Jun 22, 2020
Update ruby-childprocess to 4.0.0.


### Version 4.0.0 / 2020-06-18

* #167: Fix detach behavior on Windows.
jperkin pushed a commit that referenced this issue Aug 23, 2020
[Fixed]
- Shebang of 'pherkin' script not replaced on 'make install' (gh #166)
- Step dispatch handles data attribute incorrectly (gh #167)
- Update copyright years
jperkin pushed a commit that referenced this issue Sep 9, 2020
4.23 2020-09-05 (rurban)
        - Fixup t/54_stringify change for JSON 2.09 (really use PR #169 madsen)

4.22 2020-09-04 (rurban)
        - Fix t/54_stringify needs JSON 2.09 for allow_unknown (PR #169 madsen)
        - Fix t/118_type.t for 5.6
        - Fix t/96_interop.t for missing JSON::XS (GH #83 ribasushi)
        - Possible fix for s390x with long double, untested (GH #83)

4.21 2020-08-13 (rurban)
        - Fix not enough HEK memory allocation for the new canonical tied hashes
          feature. (GH #168)
        - TODO broken JSON::PP::Boolean versions 2.9x - 4.0 with threads::shared in
          125_shared_boolean.t

4.20 2020-08-12 (rurban)
        - New feature: sort tied hashes with canonical. (GH #167)
        - Fix encode of threads::shared boolean (#166 Sam Bingner).
          This was broken with 4.00.
        - Fix some stringify overload cases via convert_blessed (GH #105)
        - Fix a compat case with JSON::XS, when convert_blessed is set, but
          allow_blessed not. (GH #105)
        - Improve blessed and stringify tests
        - Work on better inf/nan detection on AIX (#165 Peter Heuchert)
        - Fix documentation for booleans and their types (#162 by Karen Etheridge)

4.19 2020-02-06 (rurban)
        - Fix typed decode memory leak (#160 by Pali).

4.18 2019-12-13 (rurban)
        - Add new method ->type_all_string (#156 by Pali).
          When type_all_string is set then encode method produce stable deterministic
          string types in result JSON.
          This can be an alternative to Cpanel::JSON::XS::Type when having
          deterministic output is required but string JSON types are enough for any
          output.
        - Move SvGETMAGIC() from encode_av() and encode_hv() to encode_sv()
          (#156 by Pali)
        - Add Math::BigInt and Math::BigFloat as recommended dependences
          (#157 by Pali and Grinnz)

4.17 2019-11-04 (rurban)
        - Add Changes tests and fixups (see #155)

4.16 2019-11-04 (rurban)
        - Use Perl_strtod instead of self-made atof (via pow), to
          minimize differences from core string-to-float conversions.
          (#154). Fixes float representation regressions (in the 1e-6
          to 1e-16 range) since 5.22.

4.15 2019-10-21 (rurban)
        - Fix more tests for nvtype long double

4.14 2019-10-15 (rurban)
        - Fix tests for nvtype long double (#153)
        - Fix PREREQ's. E.g. CentOS 7 has not Test::More anymore. (#152 by Pali)

4.13 2019-10-14 (rurban)
        - For JSON_TYPE_INT and JSON_TYPE_FLOAT allow to encode numeric values
          above 2^64 in PV slot via Math::BigInt/Float (#145, #148, #149 by Pali)
        - For JSON_TYPE_INT and JSON_TYPE_FLOAT encoder allow to pass Math::BigInt
          and Math::BigFloat objects with allow_bignum. (#147 by Pali)
        - Fix encoding floating point values above 2^64 in PV slot to JSON_TYPE_INT
          (#148, #150 by Pali)
        - Do not allow serializing objects when convert_blessed is not enabled.
          (#146 by Pali)

4.12 2019-06-11 (rurban)
        - Make encoder independent on Math::BigInt version (#140 by Pali)
        - Rethrow error from eval_sv and eval_pv() (#138, #139 by Pali),
          e.g. when Math::BigInt/BigFloat fails.
        - Fix encoding Inf and NaN from PV and NV slots to JSON_TYPE_INT
          (#137 by Pali)
        - Fix memory corruption in sv_to_ivuv() function (#136 by Pali)
        - Add new method ->require_types (#135 by Pali)
        - Fix typed json encoder conversion from scalar's PV and NV slot to
          JSON_TYPE_INT (#133, #134 by Pali)
        - Fix inconsistency with warnings in typed json encoder (#131 by Pali)
        - Fix Perl 5.8.0 support (#130 by Pali)
        - Fixed minor pod typo (#129 by sheeit)
        - Document invalid recursive callbacks or overloads (#128)

4.11 2019-03-26 (rurban)
        - Fix unicode strings with BOM corrupt ->utf8 state (#125)
          The BOM encoding effects only its very own decode call,
          not its object.

4.10 2019-03-18 (rurban)
        - Fix incr_text refcounts (#123)
        - Add incr_rest testcase (#123)
        - Fix encode_stringify string-overload refcnt problem (#124)
          "Attempt to free unreferenced scalar" with convert_blessed and overload.

4.09 2019-02-15 (rurban)
        - Add seperate allow_dupkeys property, in relaxed (#122)
        - Fixed allow_dupkeys for the XS slow path
        - Silence 2 -Wunused-value warnings
        - Fix ->unblessed_bool to produce modifiable perl structures (PR #121 by Pali)
jperkin pushed a commit that referenced this issue Sep 21, 2020
2.0.3 (2020-08-22)
~~~~~~~~~~~~~~~~~~

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

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

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

- Enable re2go building by default.

- Package CMake files into release tarball.

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

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

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

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

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

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

- Changes in generic API:

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

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

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

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

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

- Changes in the generated labels:

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

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

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

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

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

- Fixed bugs related to EOF rule:

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

- Fixed miscellaneous bugs:

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

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

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

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

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

----
1.3x
----

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

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

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

- Added generic API primitives:

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

- Added configurations:

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

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

----
1.2x
----

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

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

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

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

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

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

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

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

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

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

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

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

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

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

- Added configurations for options:

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

- Removed configurations for internal/debug options.

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

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

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

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

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

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

- Changed output generation of output file to be atomic.

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

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

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

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

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

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

- Added internal options:

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

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

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

- Fixed handling of newlines:

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

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

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

- Fixed a number of other bugs and resolved issues:

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

- Updated documentation and website.
jperkin pushed a commit that referenced this issue 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
Changelog:
1.75.0
New Libraries

  * JSON: JSON parsing, serialization, and DOM in C++11, from Vinnie Falco and
    Krystian Stasiowski.
      + Fast compilation requiring only C++11
      + Easy and safe modern API with allocator support
      + Compile without Boost, define BOOST_JSON_STANDALONE
      + Optional header-only, without linking to a library
  * LEAF: A lightweight error-handling library for C++11, from Emil Dotchevski.
      + Small single-header format, no dependencies.
      + Designed for maximum efficiency ("happy" path and "sad" path).
      + No dynamic memory allocations, even with heavy payloads.
      + O(1) transport of arbitrary error types (independent of call stack
        depth).
      + Can be used with or without exception handling.
  * PFR: Basic reflection without macro or boilerplate code for user defined
    types, from Antony Polukhin.

Updated Libraries

  * Asio:
      + Enabled support for UNIX domain sockets on Windows.
      + Added executor-converting construction and assignment to ip::
        basic_resolver.
      + Added compatibility between polymorphic executors and the (deprecated)
        handler invocation hook.
      + Added the experimental::as_single completion token adapter.
      + Added support for MSG_NOSIGNAL on more platforms by using
        _POSIX_VERSION to detect whether it is supported.
      + Added the ability to compile using libpthread on Windows.
      + Added workarounds for the Intel C++ compiler.
      + Added more support for detecting and optimising for handlers that have
        no custom executor.
      + Reduced lock contention for timer cancellation on Windows.
      + Reinstated a previously removed null-pointer check, as it had a
        measurable impact on performance.
      + Fixed the executor concept to test for a const-qualified execute().
      + Fixed any_executor support for builds without RTTI support.
      + Fixed the thread_pool unit test to work without RTTI support.
      + Fixed C++20 coroutines compatibility with clang on Windows.
      + Fixed some compatibility issues with Windows Runtime.
      + Fixed shadow name warnings caused by addition of asio::query.
      + Fixed a "logical ‘or’ of equal expressions" warning on linux.
      + Fixed a benign switch fallthrough warning.
      + Added missing push/pop_options.hpp includes.
      + Suppressed zero-as-null-pointer-constant warnings.
      + Fixed a comma-operator warning.
      + Updated the documentation to clarify when the select reactor is used on
        Windows.
      + Fixed potential ambiguity caused by any_executor comparisons and
        conversion.
      + Added detection of non-experimental C++20 coroutines on MSVC 19.8.
      + Fixed compatibility with uClibc.
      + Fixed strand<> adaptation of Networking TS executors when targeting
        older C++ versions or less conformant compilers.
      + Consult the Revision History for further details.
  * Atomic:
      + Implemented SSE2 and SSE4.1 versions of address lookup algorithm, which
        is used in the internal lock pool implementation. This may improve
        performance of waiting and notifying operations in heavily contended
        cases.
      + Fixed a possible compilation error on AArch64 targets caused by
        incorrect instructions generated for bitwise (logical) operations with
        immediate constants. (#41)
  * Beast:
      + This update brings bug fixes and support for the
        BOOST_ASIO_ENBALE_HANDLER_TRACKING compile flag from Boost.Asio:
      + 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.
  * Container:
      + New devector container.
      + Fixed bugs/issues:
          o #152 Tree-based containers have troubles with move-only types.
          o #156 Compile error with vector.
          o PR#157 Add missing include.
          o #159: pmr::monotonic_buffer_resource crashes on large single
            allocations.
          o #160: Usage of uses_allocator needs a remove_cvref_t.
          o #162: small_vector on MSVC x86 call-by-value crash.
          o #161: polymorphic_allocator(memory_resource*) non-standard
            extension causes headache.
          o PR#163: container_rebind for small_vector with options.
          o #165: Link error with shared library and memory_resource inline
            members.
          o PR#166: Fix encoding error in copyright headers.
          o PR#167: error: the address of 'msg' will always evaluate as 'true'
            warning with GCC 4.4.
          o #169: flood of warnings building dlmalloc_ext_2_8_6.c on clang11.
  * Endian:
      + endian_arithmetic no longer inherits from endian_buffer
      + When BOOST_ENDIAN_NO_CTORS is defined, the unaligned endian_buffer and
        endian_arithmetic are C++03 PODs, to enable use of __attribute__((
        packed))
  * Filesystem:
      + New: Added creation_time operation, which allows to obtain file
        creation time. (Inspired by PR#134)
      + The returned value of last_write_time(p, ec) operation in case of
        failure has been changed to a minimal value representable by std::
        time_t instead of -1.
      + The returned value of hard_link_count(p, ec) operation in case of
        failure has been changed to static_cast<uintmax_t>(-1) instead of 0.
      + On POSIX systems, file_size will now indicate error code errc::
        function_not_supported if the path resolves to a non-regular file.
        Previously, errc::operation_not_permitted was reported.
      + On Linux, many operations now use statx system call internally, when
        possible, which allows to reduce the amount of information queried from
        the filesystem and potentially improve performance. The statx system
        call was introduced in Linux kernel 4.11.
      + Removed const-qualification from return types of some path methods.
        This could prevent move construction and move assignment at the call
        site in some cases. (#160)
      + On OpenBSD 4.4 and newer, use statvfs system call to obtain filesystem
        space information. (Inspired by PR#162)
      + On Windows, space now returns with an error if the provided path does
        not idendify an existing file. (#167)
  * GIL:
      + BREAKING: In next release, we are going to drop support for GCC 5. We
        may also change the required minimum C++ version from C++11 to C++14.
  * Histogram:
      + This update brings
          o Bug-fixes for corner-cases
          o Small documentation improvements
          o Fixes for new warnings from latest compilers and when compiling
            against the C++20 standard
      + See the full Release Notes for a complete list of changes.
  * Interprocess:
      + Fixed bugs:
          o #127: static assertion failure with boost interprocess 1.74 and
            basic_managed_shared_memory.
  * Intrusive:
      + Fixed bugs:
          o PR#48: MSVC "assignment within conditional" warning fix.
          o PR#49: Fix empty control statement warnings.
          o #52: Invalid casting in BOOST_INTRUSIVE_BSR_INTRINSIC.
  * Log:
      + Bug fixes:
          o Corrected the file counter that would be used in text_file_backend
            when generating the target file name (based on the pattern set by
            set_target_file_name_pattern method) when the log file is rotated.
            (#125)
          o Replaced a volatile version counter in basic_sink_frontend with an
            atomic. (#128)
          o In the asynchronous_sink frontend, resolved a possible conflict
            between flush and run methods, if run is called from a user's
            thread instead of the internal dedicated thread spawned by the
            frontend. (#131)
      + See changelog for more details.
  * Move:
      + Fixed bugs:
          o #30: (void) C-cast is a non-portable way of suppressing compiler
            warnings.
  * Mp11:
      + Added mp_pairwise_fold (suggested by Barry Revzin)
      + Removed mp_invoke (use mp_invoke_q)
  * Optional:
      + boost::none is constexpr-declared.
      + Fixed issue #78.
  * Outcome:
      + Announcements:
          o After a year and three major Boost releases announcing this
            upcoming change, this is the FINAL RELEASE of the v2.1 branch. From
            Boost 1.76 onwards, the v2.2 branch becomes the default. This
            branch has a number of major breaking changes to Outcome v2.1, see
            the documentation for details.
      + Enhancements:
          o The ADL discovered event hooks have been replaced with
            policy-specified event hooks instead. This is due to brittleness
            (where hooks would quietly self-disable if somebody changed
            something), compiler bugs (a difference in compiler settings causes
            the wrong hooks, or some but not all hooks, to get discovered), and
            end user difficulty in using them at all. The policy-specified
            event hooks can be told to default to ADL discovered hooks for
            backwards compatibility: set OUTCOME_ENABLE_LEGACY_SUPPORT_FOR to
            less than 220 to enable emulation.
          o Improve configuring OUTCOME_GCC6_CONCEPT_BOOL. Older GCCs had
            boolean based concepts syntax, whereas newer GCCs are standards
            conforming. However the precise logic of when to use legacy and
            conforming syntax was not well understood, which caused Outcome to
            fail to compile depending on what options you pass to GCC. The new
            logic always uses the legacy syntax if on GCC 8 or older, otherwise
            we use conforming syntax if and only if GCC is in C++ 20 mode or
            later. This hopefully will resolve the corner case build failures
            on GCC.
      + Bug fixes:
          o Boost.Outcome should now compile with BOOST_NO_EXCEPTIONS defined.
            Thanks to Emil, maintainer of Boost.Exception, making a change for
            me, Boost.Outcome should now compile with C++ exceptions globally
            disabled. You won't be able to use boost::exception_ptr as it can't
            be included if C++ exceptions are globally disabled.
          o #236 In the Coroutine support the final_suspend() was not noexcept,
            despite being required to be so in the C++ 20 standard. This has
            been fixed, but only if your compiler implements noop_coroutine.
            Additionally, if noop_coroutine is available, we use the much more
            efficient coroutine handle returning variant of await_suspend()
            which should significantly improve codegen and context switching
            performance.
  * Polygon:
      + C++20 fixes for event_comparison_type, vertex_equality_predicate_type,
        and voronoi_predicates. (Glen Fernandes)
  * Preprocessor:
      + When variadic data is empty in C++20 mode with __VA_OPT__ support the
        variadic size has been corrected to be 0. This also means that in this
        C++20 mode it is now valid to convert to and from empty arrays and
        lists and variadic data. The end-user can read the "C++20 Support For
        Variadic Macros" part of the "variadic macros" topic for more
        information about empty variadic data in the library.
      + The macro BOOST_PP_IS_STANDARD() has been added for identifying if the
        currently used preprocessor is a C++ standard conforming preprocessor.
        A number of preprocessors which generally work correctly with the
        library but need various internal workarounds, including the currently
        default VC++ preprocessor, are not considered C++ standard conforming
        preprocessors. However most preprocessors, including among others gcc,
        clang, and the new but currently non-default VC++ preprocessor in
        VS2019, are C++ standard conforming preprocessors.
      + For C++ standard conforming preprocessors a number of the limits
        defined in the config/limits.hpp can now be changed to higher amounts
        for a TU. The end-user should read the "limitations" topic to
        understand how and which limits can be changed.
      + For C++ standard conforming preprocessors, in order to allow the
        maximum number of FOR and WHILE iterations, the beginning 'r' and 'd'
        iteration numbers in the user-defined macros start at 1 and not 2, as
        it did in previous releases. This could be a breaking change if these
        iteration numbers are used in the user-defined macros ( they probably
        would not be ), but the change was necessary to fix some arcane bugs
        when dealing with numerical/logical operations with maximum numbers as
        well to allow the user-defined macros to be called the correct possible
        maximum number of times. For non-C++ conforming preprocessors, this
        change was not made because those non-conforming C++ preprocessors
        generally have limitations which disallow the maximum number of looping
        constructs to be run, and it was felt not to introduce a possible
        breaking change to those more fragile preprocessors would be better. It
        was also felt that besides fixing some arcane preprocessor bugs and
        providing the possible maximum number of user-defined macro
        invocations, this change could be made because it has never been
        documented what the starting 'r' and 'd' iteration numbers actually are
        but only that these numbers are incremented for each iteration.
      + The library has been upgraded to assume variadic macro support for any
        compiler working with the library. Ostensibly this means that the
        library is now a C++11 on up library, yet most of the major compilers,
        including gcc, clang, and VC++, also support variadic macros in C++98/
        C++03 mode as long as strict compliance to C++98/C++03 is not turned on
        when using one of those compilers.
  * Rational:
      + Fix Rational operators to not break under new C++20 operator==
        rewriting rules. (Glen Fernandes)
  * Signals2:
      + Correct C++ allocator model support to fix compilation in C++20
        standards mode. (Glen Fernandes)
  * System:
      + The platform-specific headers windows_error.hpp, linux_error.hpp, and
        cygwin_error.hpp emit deprecation messages and are slated for removal.
      + The old names for generic_category() and system_category() emit
        deprecation messages and are slated for removal.
      + error_condition::failed is deprecated and is slated for removal.
        operator bool() for error_condition has been reverted to its old
        meaning of value() != 0. This is done for compatibility with std::
        error_condition as the next release is expected to improve
        interoperability with <system_error> even further. Note that this does
        not affect error_code::failed, which is still alive and well.
      + The overload of error_condition::message that takes a buffer is
        deprecated and is slated for removal, for the same reasons. Note that
        this does not affect error_code::message.
  * uBLAS:
      + Correct C++ allocator model support to fix compilation in C++20
        standards mode. (Glen Fernandes and Conrad Poelman)
  * VMD:
      + The VMD number parsing has been upgraded to support the ability for the
        end-user to change the number limits in the Preprocessor library.
      + The macro BOOST_VMD_IS_GENERAL_IDENTIFIER has been added to support the
        parsing of input that represents a preprocessor token which matches the
        VMD identifier syntax, without having to register the identifier as a
        specific identifier.
  * Wave:
      + Added new C++20 tokens, including the spaceship operator <=>
      + Fixed bugs:
          o #94: fix incorrect behavior of __LINE__ and __FILE__ under
            rescanning

1.74.0
New Libraries

  * STLInterfaces: A library of CRTP bases to ease the writing of STL views,
    iterators, and sequence containers, from Zach Laine.

Updated Libraries

  * Asio:
      + Added an implementation of the proposed standard executors (P0443r13,
        P1348r0, and P1393r0).
      + Added support for the proposed standard executors to Asio's I/O
        facilities.
          o The supplied executors now meet the requirements for the proposed
            standard executors. These classes also continue to meet the
            existing requirements for the Networking TS model of executors.
          o All I/O objects, asynchronous operations, and utilities will
            interoperate with both new proposed standard executors, and with
            existing Networking TS executors.
          o The any_io_executor type alias has been introduced as the default
            runtime-polymorphic executor for all I/O objects. This defaults to
            the execution::any_executor<> template. If required for backward
            compatibility, BOOST_ASIO_USE_TS_EXECUTOR_AS_DEFAULT can be defined
            to use the old asio::executor polymorphic wrapper instead.
          o Support for the existing Networking TS model of executors can be
            disabled by defining BOOST_ASIO_NO_TS_EXECUTORS.
      + Added converting move construction and assignment to
        basic_waitable_timer.
      + Enabled C++20 coroutine support when using gcc 10.
      + Added overloads of co_spawn that launch an awaitable.
      + Added a new constructor overload to use_awaitable_t's default executor
        adapter, to enable conversion between executor types.
      + Added support for using detached_t as a default completion token, by
        adding members as_default_on() and as_default_on_t<>.
      + Added a move constructor to ssl::stream<>.
      + Changed ssl::stream<> write operations to linearise gather-write buffer
        sequences.
      + Added compile-time detection of the deprecated asio_handler_invoke,
        asio_handler_allocate, and asio_handler_deallocate hooks, when
        BOOST_ASIO_NO_DEPRECATED is defined.
      + Implemented a number of performance optimisations.
      + Added source location support to handler tracking.
      + Implemented various improvements to the handlerviz.pl tool.
      + Added the handlerlive.pl tool, which processes handler tracking output
        to produce a list of "live" handlers.
      + Added the handlertree.pl tool, which filters handler tracking output to
        include only those events in the tree that produced the nominated
        handlers.
      + Added changes for clang-based Embarcadero C++ compilers.
      + Fixed a deadlock that can occur when multiple threads concurrently
        initialise the Windows I/O completion port backend.
      + Fixed async_compose to work with copyable handlers when passed by
        lvalue.
      + Fixed completion signature deduction in co_spawn.
      + Removed a spurious Executor base class from the executor_binder
        implementation.
      + Various fixes and improvements in the documentation and examples.
      + Consult the Revision History for further details.
  * Atomic:
      + Added missing const qualifiers to some operations in atomic_ref.
      + Added support for yield instruction on ARMv8-A. The instruction is used
        internally in spin loops to reduce CPU power consumption.
      + Added support for C++20 waiting and notifying operations. The
        implementation includes generic backend that involves the internal lock
        pool, as well as specialized backends for Windows, Linux, FreeBSD,
        DragonFly BSD and NetBSD. Atomic types provide a new method
        has_native_wait_notify, a static boolean constant
        always_has_native_wait_notify and a set of capability macros that allow
        to detect if the implementation supports native waiting and notifying
        operations for a given type.
      + Changed internal representation of atomic_flag to use 32-bit storage.
        This allows for more efficient waiting and notifying operations on
        atomic_flag on some platforms.
      + Added support for build-time configuration of the internal lock pool
        size. The user can define the BOOST_ATOMIC_LOCK_POOL_SIZE_LOG2 macro to
        specify binary logarithm of the size of the lock pool. The default
        value is 8, meaning that the size of the lock pool is 256, up from 64
        used in the previous release.
      + Added support for a new set of atomic types dedicated for inter-process
        communication: ipc_atomic_flag, ipc_atomic and ipc_atomic_ref. Users
        are recommended to port their code using non-IPC types for
        inter-process communication to the new types. The new types provide the
        same set of operations as their non-IPC counterparts, with the
        following differences:
          o Most operations have an added precondition that is_lock_free
            returns true for the given atomic object. The library will issue a
            compile time error if this precondition is known to be not
            satisfied at compile time.
          o All provided operations are address-free, meaning that the atomic
            object (in case of ipc_atomic_ref - the referenced object) may be
            located in process-shared memory or mapped into the same process at
            multiple different addresses.
          o The new has_native_wait_notify operation and
            always_has_native_wait_notify constant indicate support for native
            inter-process waiting and notifying operations. When that support
            is not present, the operations are implemented with a busy loop,
            which is less efficient, but still is address-free. A separate set
            of capability macros is also provided to indicate this support.
      + Added new atomic_unsigned_lock_free and atomic_signed_lock_free types
        introduced in C++20. The types indicate the atomic object type for an
        unsigned or signed integer, respectively, that is lock-free and
        preferably has native support for waiting and notifying operations.
      + Added new gcc assembler backends for ARMv8-A (for both AArch32 and
        AArch64). The new backends are used to implement operations not
        supported by compiler intrinsics (including 128-bit operations on
        AArch64) and can also be used when compiler intrinsics are not
        available. Both little and big endian targets are supported. AArch64
        backend supports extensions defined in ARMv8.1 and ARMv8.3.
      + Added support for big endian targets in the legacy ARM backend based on
        gcc assembler blocks (this backend is used on ARMv7 and older targets).
        Previously, the backend assumed little endian memory layout, which is
        significant for 64-bit operations.
      + Improved performance of seq_cst stores and thread fences on x86 by
        using lock-prefixed instructions instead of mfence. This means that the
        operations no longer affect non-temporal stores, which was also not
        guaranteed before. Use specialized instructions and intrinsics to order
        non-temporal memory accesses.
      + Fixed capability macros for 80-bit long double on x86 targets not
        indicating lock-free operations even if 128-bit atomic operations were
        available.
      + Fixed compilation of gcc asm blocks on Alpha targets.
      + In the gcc __sync* intrinsics backend, fixed that store and load
        operations of large objects (larger than a pointer size) could be
        non-atomic. The implementation currently assumes that small objects can
        be stored with a single instruction atomically on all modern
        architectures.
  * Beast:
      + This update brings bug fixes and support for the following changes
        changes in Boost.Asio:
      + Beast supports BOOST_ASIO_NO_DEPRECATED. Define this to help identify
        areas of your Beast and Asio code which use deprecated Asio interfaces.
      + Beast also supports BOOST_ASIO_NO_TS_EXECUTORS. Define this to identify
        uses of executors from the now potentially outdated Networking TS
      + Asio will use the Standard Executors model by default. You can prevent
        this behaviour by defining BOOST_ASIO_USE_TS_EXECUTOR_AS_DEFAULT in
        which the Networking TS model will be used by default. Setting this
        flag does not prevent a program from using executors from the Standard
        Executors model explicitly.
      + 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.
  * Bimap:
      + Correct allocator usage (fixes C++20 compilation). (Glen Fernandes)
  * Config:
      + Implement BOOST_NO_CXX11_OVERRIDE and BOOST_OVERRIDE. (Glen Fernandes)
  * Core:
      + Implemented the allocator access utilities which provide a replacement
        for allocator_traits with individual traits and functions for each
        facility. They support the C++11 allocator model when possible and
        provide a fallback for C++98 compatibility. These are now used in
        Circular_Buffer, Wave, Lockfree, Heap, Smart_Ptr, Dynamic_Bitset,
        Format, Bimap and more. (Glen Fernandes)
  * DLL:
      + Multiple fixes for the library_info work on empty shared objects.
      + Compilation fixes for C++98 and C++11 modes (#28).
      + Fixes for smart_library manglings (thanks to XiaLiChao82 #37).
  * Endian:
      + Enabled scoped enumeration types in endian_reverse.
      + Enabled bool, enum, float, double in endian_reverse_inplace.
      + Added an overload of endian_reverse_inplace for arrays.
  * Filesystem:
      + Removed compile-time checks for support for symlinks and hardlink on
        Windows. Instead, a runtime check is used. (PR#142)
      + Fixed handling of reparse points in canonical and read_symlink on
        Windows. This also affects other algorithms that involve canonical and
        read_symlink in their implementation. (PR#100, #85, #99, #123, #125)
      + Fixed that read_symlink on Windows could potentially fail or cause
        failures elsewhere with a sharing violation error, if the same symlink
        was opened concurrently. (#138)
      + Fixed that is_symlink(directory_entry) would always return false, even
        if the directory entry actually referred to a symlink. (PR#148)
      + Added missing status inspection operation overloads for directory_entry
        and error_code (e.g. is_directory(directory_entry, error_code&)).
        Removed incorrect noexcept specifications for the overloads not taking
        the error_code arguments.
      + copy_file implementation has been updated to perform checks on the
        source and target files, as required by C++20 ([fs.op.copy.file]/4.1).
        In particular, the operation will fail if the source or target file is
        not a regular file or the source and target paths identify the same
        file.
      + copy_file on POSIX systems will now also copy the source file
        permissions to the target file, if the target file is overwritten.
      + New: Added copy_file implementations based on sendfile and
        copy_file_range system calls on Linux, which may improve file copying
        performance, especially on network filesystems.
      + Deprecated: The copy_option enumeration that is used with the copy_file
        operation is deprecated. As a replacement, the new enum copy_options
        (note the trailing 's') has been added. The new enum contains values
        similar to the copy_options enum from C++20. The old enum values are
        mapped onto the new enum. The old enum will be removed in a future
        release.
      + New: Added copy_options::skip_existing option, which allows copy_file
        operation to succeed without overwriting the target file, if it exists.
      + New: Added copy_options::update_existing option, which allows copy_file
        operation to conditionally overwrite the target file, if it exists, if
        its last write time is older than that of the replacement file.
      + New: copy_file now returns bool, which indicates whether the file was
        copied.
      + New, breaking change: copy operation has been extended and reworked to
        implement behavior specified in C++20 [fs.op.copy]. This includes
        support for copy_options::recursive, copy_options::copy_symlinks,
        copy_options::skip_symlinks, copy_options::directories_only,
        copy_options::create_symlinks and copy_options::create_hard_links
        options. The operation performs additional checks based on the
        specified options. Applying copy to a directory with default
        copy_options will now also copy files residing in that directory (but
        not nested directories or files in those directories).
      + New: Added create_directory overload taking two paths. The second path
        is a path to an existing directory, which is used as a source of
        permission attributes to use in the directory to create.
      + Deprecated: copy_directory operation has been deprecated in favor of
        the new create_directory overload. Note that the two operations have
        reversed order of the path arguments.
      + equivalent on POSIX systems now returns the actual error code from the
        OS if one of the paths does not resolve to a file. Previously the
        function would return an error code of 1. (#141)
      + equivalent no longer considers file size and last modification time in
        order to test whether the two paths refer to the same file. These
        checks could result in a false negative if the file was modified during
        the equivalent call.
      + New: Added absolute overloads taking error_code argument.
      + Operations that have current_path() as the default value of their
        arguments and also have an error_code argument will use the
        current_path(error_code& ec) overload to obtain the current path, so
        that its failure is reported via the error_code argument instead of an
        exception.
      + space now initializes the space_info structure members to -1 values on
        error, as required by C++20 ([fs.op.space]/1).
      + space on Windows now accepts paths referring to arbitrary files, not
        only directories. This is similar to POSIX systems and corresponds to
        the operation description in C++20. (#73)
      + New: Added implementation of temp_directory_path for Windows CE. (PR#25
        )
      + New: Improved compatibility with WASI platform. (PR#144)
      + New: Improved support for Embarcadero compilers. (PR#130)
      + New: Added implementations of unique_path operation based on getrandom
        (Linux), arc4random_buf (OpenBSD/FreeBSD/CloudABI) and BCrypt (Windows)
        system APIs.
      + Deprecated: Auto-linking against system libraries on Windows with
        MSVC-compatible compilers is deprecated and will be removed in a future
        release. This affects users linking against static library of
        Boost.Filesystem. Users are advised to update their project build
        systems to either use a shared library of Boost.Filesystem, or
        explicitly specify the dependencies of Boost.Filesystem in the linker
        command line. Users of shared library of Boost.Filesystem are not
        affected.
  * Flyweight:
      + Maintenance work.
  * Format:
      + Correct allocator usage (fixes C++20 compilation). (Glen Fernandes)
  * Geometry:
      + Improvements
          o PR#720 Additional R-tree constructors (thanks to Caian Benedicto).
          o Various improvements in buffer, set and relational operations.
      + Solved issues
          o #709 memcpy called for object with no trivial copy-assignment.
          o #721 Compilation error in bgi::detail::rtree::visitors::insert.
          o #727 MSVC warning: conditional expression is constant.
      + Bugfixes
          o PR#700 Missing cases for default strategies in distance algorithm.
          o PR#738 Longitudes out of range in direct geodesic formulas.
  * GIL:
      + Added
          o Added new constructor initializing any_image from r-value reference
            to any image (PR#486).
          o Implemented mechanism to reverse kernel_2d (PR#489).
      + Changed
          o BREAKING: Replace Boost.Variant with Boost.Variant2 (PR#474) which
            completes removal on uses of Boost.MPL (missing from Boost 1.72.0
            change added PR#274).
          o Use perfect forwarding from apply_operation to visit (PR#491).
      + Removed
          o BREAKING: Removed dependency on Boost.Variant
      + Fixed
          o Fixed invalid conversion from RGB8 to CMYK32 due to overflow (PR#
            470).
          o Fixed image constructor from other image (PR#477).
          o Fixed error plane_view_t is not a class or namespace name (PR#481).
          o Fixed interleaved_view factory using point<std::ptrdiff_t> for
            dimension (PR#487).
          o Fixed documentation replacing uses MPL with MP11 in tutorial (PR#
            494).
          o Fixed missing header in numeric/kernel.hpp to make it
            self-contained (PR#502).
      + Acknowledgements
          o Samuel Debionne, Pranam Lashkari, Mateusz Loskot, Debabrata Mandal
  * Heap:
      + Correct destruction of top node in skew_heap. (Glen Fernandes)
      + Correct and simplify allocator use. (Glen Fernandes)
  * Integer:
      + Fixed compilation of gcd in C++20 mode with clang 10.
      + Improved support for Embarcadero compilers. (PR#21)
  * Iterator:
      + boost/function_output_iterator.hpp header is now deprecated. Users
        should replace its inclusion with boost/iterator/
        function_output_iterator.hpp. (PR#51)
      + Improved support for Embarcadero compilers. (PR#55)
  * LexicalCast:
      + Fixed warnings on missing override (thanks to EugeneZelenko #35, #34).
      + Fixes for the the Embarcadero compilers (thanks to Edward Diener).
  * Log:
      + Bug fixes:
          o The syslog sink backend now verifies the IP version of the local
            and target addresses set by user. The addresses must have the same
            IP version as was specified in the ip_version named parameter on
            the sink backend construction (by default, IPv4 is assumed). When
            an address is obtained as a result of host name resolution, only
            addresses with matching IP version are considered. (#119)
      + New Features:
          o Move constructors and assignment operators of various components
            were marked noexcept.
          o Added a new range_manip stream manipulator that can be used for
            outputting elements of a range, optionally separated by a
            delimiter.
          o Added a new tuple_manip stream manipulator that can be used for
            outputting elements of a tuple or any other heterogeneous sequence,
            optionally separated by a delimiter.
          o Added a new optional_manip stream manipulator that can be used for
            outputting optionally present values.
      + See changelog for more details.
  * Mp11:
      + Improved compilation performance of mp_with_index<N> for large N.
      + Added tuple_transform (contributed by Hans Dembinski.)
  * Multi-index Containers:
      + Added node extraction and insertion following the analogous interface
        of associative containers as introduced in C++17. This feature has also
        been extended to non key-based indices, in contrast to C++ standard
        library sequence containers, which do not provide such functionality.
      + Clarified documentation on read/write key extractors (issue #32).
      + Maintenance work.
  * Nowide:
      + The library now requires a C++11-compliant compiler and stdlib
      + LFS: Add support for files > 2 GB where the underlying system supports
        it
      + Generic UTF conversion functions are now available in the boost::nowide
        ::utf namespace
      + Add support for stat with UTF-8 paths
  * Outcome:
      + Announcements:
          o The v2.1 branch is expected to be retired end of 2020, with the
            v2.2 branch becoming the default. You can use the future v2.2
            branch now using better_optimisation. This branch has a number of
            major breaking changes to Outcome v2.1, see the front page for
            details.
      + Enhancements:
          o BREAKING CHANGE void results and outcomes no longer default
            construct types during explicit construction. Previously if you
            explicitly constructed a result<T> from a non-errored result<void>,
            it default constructed T. This was found to cause unhelpful
            surprise, so it has been disabled.
          o New macro OUTCOME_ENABLE_LEGACY_SUPPORT_FOR. The macro
            OUTCOME_ENABLE_LEGACY_SUPPORT_FOR can be used to enable aliasing of
            older naming and features to newer naming and features when using a
            newer version of Outcome.
          o Concepts now have snake case style naming instead of camel case
            style. When Outcome was first implemented, it was thought that C++
            20 concepts were going to have camel case style. This was changed
            before the C++ 20 release, and Outcome's concepts have been renamed
            similarly. This won't break any code in Outcome v2.1, as
            compatibility aliases are provided. However code compiled against
            Outcome v2.2 will need to be upgraded, unless
            OUTCOME_ENABLE_LEGACY_SUPPORT_FOR is set to 210 or lower.
          o Concepts now live in OUTCOME_V2_NAMESPACE::concepts namespace.
            Previously concepts lived in the convert namespace, now they live
            in their own namespace.
          o New concepts basic_result<T> and basic_outcome<T> added. End users
            were finding an unhelpful gap in between is_basic_result<T> and
            value_or_error<T> where they wanted a concept that matched types
            which were basic_result, but not exactly one of those. Concepts
            filling that gap were added.
          o Operation TRY works differently from Outcome v2.2 onwards. This is
            a severely code breaking change which change the syntax of how one
            uses OUTCOME_TRY(). A regular expression suitable for upgrading
            code can be found in the list of changes between Outcome v2.1 and
            v2.2.
      + Bug fixes:
          o #224 The clang Apple ships in Xcode 11.4 (currently the latest) has
            not been patched with the fixes to LLVM clang that fix noexcept(std
            ::is_constructible<T, void>) failing to compile which I originally
            submitted years ago. So give up waiting on Apple to fix their
            clang, add a workaround to Outcome.
          o Spare storage could not be used from within no-value policy
            classes. Due to an obvious brain fart when writing the code at the
            time, the spare storage APIs had the wrong prototype which
            prevented them working from within policy classes. Sorry.
  * PolyCollection:
      + Fixed internal ambiguity problem between boost::type_erasure::any and
        boost::any (issue #17).
      + Maintenance work.
  * SmartPtr:
      + Added owner_equals to shared_ptr, weak_ptr, local_shared_ptr.
      + Added owner_hash_value to shared_ptr, weak_ptr.
      + Added owner_equal_to, owner_hash.
      + Added std::hash specializations for shared_ptr, local_shared_ptr.
      + Added boost::hash support to, and std::hash, std::equal_to
        specializations for, weak_ptr.
  * Stacktrace:
      + Fixed a build error when compiled with -fno-exceptions (thanks to
        Jeremiah Rodriguez #91).
  * System:
      + operator bool() now returns failed() instead of value() != 0.
  * Type_Traits:
      + Implemented conjunction, disjunction, negation, is_trivially_copyable,
        is_scoped_enum, and is_unscoped_enum. (Glen Fernandes)
  * Variant:
      + Fixed warnings on missing override (thanks to EugeneZelenko #78).
      + Fixes for the the Embarcadero compilers (thanks to Edward Diener #79).
      + Updated header locations to avoid warnings about using deprecated
        headers (thanks to Andrey Semashev #80)
  * Variant2:
      + Added support for derived types in visit.
      + Improved compilation performance for many (hundreds of) alternatives.
      + Added support for visit<R>.
  * Wave:
      + Implement C++20 features for variadics, including __VA_OPT__ (PR#75)
      + Implement __has_include (PR#102)
      + Introduce new sample: check_macro_naming, useful with Boost itself (PR#
        97)
      + Fix compilation issue caused by std::allocator member removal in C++20
        (PR#72)
      + Repair Xpressive lexer and token_statistics sample (PR#79)
      + Repair lexertl lexer (PR#78)
      + Ensure hooks are run on predefined macros as well (PR#87)
      + Various minor bug fixes
      + C++98/03 support is now deprecated and will be removed in 1.77
  * YAP:
      + Fixed compilation errors for placeholders; they now work in the general
        case, and in particular work with yap::print().
      + constexpr all the YAP.
      + Fix printing of correct value category in yap::print().
      + Doc clarification.

Updated Tools

  * Boostbook:
      + Change encoding of generated documentation from US-ASCII to UTF-8.
        (Glen Fernandes)
jperkin pushed a commit that referenced this issue Jan 13, 2021
pkgsrc change: remove redundant "ruby" from CATEGORIES.


Version v1.11.0 - December 30, 2020

Add
* RUBY_PROGRESS_BAR_FORMAT Environment Variable

Merge
* PR #165 - Show Unknown Time Remaining After Timer Reset

Fix
* Show Unknown Time Remaining After Bar Is Reset

Uncategorized
* Merge PR #167 - Convert To Github Actions
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 Jun 15, 2021
# forcats 0.5.1

* Re-license as MIT (#277).

* `fct_lump_n()` no longer uses a partial argument name (@malcolmbarrett, #276).

# forcats 0.5.0

* `as_factor()` gains a logical method that always returns a factor with
  levels "FALSE" and "TRUE" (#185).

* `fct_c()`, `fct_collapse()` and `fct_recode()` are now explicitly
  documented as using [dynamic dots](https://rlang.r-lib.org/reference/dyn-dots.html)
  (@labouz, #234).

* `fct_collapse()` now accepts a `other_level` argument, to allow a
   user-specified `Other` level (@gtm19, #194). It now correctly collapses
   factors when `other_level` is not `NULL` (#172), and makes `"Other"` the
   last level (#202) (@gtm19, #172 & #202)

* `fct_count()` no longer converts implicit NAs into explicit NAs (#151).

* `fct_inseq()` behaves more robustly when factor levels aren't all numbers
  (#221).

* `fct_lump()` has been split up into three new functions: `fct_lump_prop()`,
  `fct_lump_n()`, and `fct_lump_lowfreq()`. (@jonocarroll, #167, #142).
  All `fct_lump_()` functions check their inputs more carefully
  (@robinson_es, #169)

* `fct_reorder2()` gains a helper function `first2()`, that sorts `.y` by the
  first value of `.x` (@jtr13).
jperkin pushed a commit that referenced this issue Oct 22, 2021
## [2.49.2] – 2021-10-16

### Changed

- Lefty is disabled by default in the Autotools build system. To re-enable it,
  pass `--enable-lefty` to `./configure`. In a future release, Lefty will be
  removed.
- remove PHP5 support in SWIG bindings

### Fixed

- Msys experimental packages are included in release artifacts #2130
- CMake build system incorrectly aliases gv2gml to gml2gv #2131
- Gv2gml Doesn't escape quotes in attributes #1276
- GVPR incorrectly understands color schemes #1956

## [2.49.1] – 2021-09-22

### Changed

- the CMake build system installs gzipped man pages if `gzip` is available #1883
- CMake projects using Graphviz as a subproject (`add_subdirectory`) can now
  link against and use `gvc`.

### Fixed

- various problems in the generation of Javascript bindings
- 2.48.0: test suite is failing #2112
- Ensure correct file-level dependency for generated file in cmake generated
  projects #2119
- compile failures with a C++20-compatible toolchain #2122
- compile errors on macOS when using Bison 3.8 #2127
- Make Graphviz buildable as a cmake subproject/subdirectory #1477
- Header not found in Cmake project #2109

## [2.49.0] – 2021-08-28

### Added

- a very basic C++ API for a subset of the functions in lib/cgraph and
  lib/gvc, allowing a graph to be rendered from DOT source to a
  specified format. The new API is available through two new
  libraries: lib/cgraph++ and lib/gvc++. It is experimental, meaning
  that it might have breaking changes also in upcoming patch or minor
  releases (towards #2001)
- CMake builds now support an `with_expat` option that allows the support for
  using HTML-like labels through the optional expat library to be explicitly
  enabled (default) or disabled
- CMake builds now support an with_zlib option that allows the support for
  raster image compression through the optional zlib library to be explicitly
  enabled (default) or disabled

### Changed

- the CMake build system now enables `-Wextra` when building C++
- some Cgraph functions that take `char*` arguments that they do not modify have
  been updated to take `const char*` arguments #634
- incorrectly using the `layout` attribute on anything other than a graph now
  results in a warning about this being invalid #2078
- `edgepaint` accepts more standard `--` prefixed command line arguments and
  rejects invalid options #1971
- improved detection of Lefty dependencies in the Autotools build system
- libexpr rejects printing the time (`%t`) if no format is provided
- `-DDATE=…` option in the CMake build system has been removed
- the Autotools build system no longer writes the DATE file and the portable
  source tarball no longer includes this

### Fixed

- The attached dot file causes a segfault when processed #2095
- fix typos and update URLs in `edgepaint` usage text and man page
- Fix clang's undefined behavior warning in dotLayout
- gvpr doesn't build on macOS but MKDEFS_EXECUTABLE points to wrong
  directory #2101
- the generated gdefs.h header is no longer installed
- `ccomps` out-of-memory message no longer incorrectly refers to `gc`
- do not abort when `calloc(0, x)` or `calloc(x, 0)` in `gcalloc` return `NULL`
- failed Exshort_t type discrimination #1799
- dot manpage is in wrong directory on Windows #1936
- CMake builds fail when when the ltdl library is not available even if the
  `enable_ltdl` option is `ON`
- CMake builds fail when when the optional `zlib` library is not available
- fix graph rotation in quartz plugin

## [2.48.0] - 2021-07-17

### Added

- a new C++ test infrastructure based on ctest and Catch2 towards #2002
- support for test coverage analysis with
  [lcov](http://ltp.sourceforge.net/coverage/lcov.php) and
  [test coverage visualization in GitLab MRs](https://docs.gitlab.com/ee/user/project/merge_requests/test_coverage_visualization.html)

### Changed

- updated Graphviz bug report URL in the Autotools build system
- Fix `WIN32` path of `gvc.def` specified in `libgvc_la_LDFLAGS`
- the CMake build system now not only checks for Bison, but also ensures the
  found version is recent enough #1916

### Fixed

- ortho's eqEndSeg incorrectly modifies its arguments #2047
- Autotools enables -Wtrampolines and -Wlogical-op for Clang #2066
- node_distinct_coloring failure due to out-of-memory now reported correctly
  instead of referring to a failure to open lab_gamut
- Fix a typo `GD_LIBS` to `GDLIB_LIBS` in `tclpkg/tcldot/Makefile.am` !2022
- Autotools build system sets libgd variables now instead of incorrectly setting
  GTK variables
- HTML strings used as labels are distinguishable in GXL output by
  `kind="HTML-like string"`
- a Bashism removed from the Autotools build system
- when Criterion is available, the `command_line` test binary is no longer built
  and installed by default, but rather during `make check`
- round-tripping a file through ``gv2gxl`` and then ``gxl2gv`` no longer causes
  HTML-like labels to become non-HTML like labels #517
- fix ODR violation by including the ortho object files in the gvc lib also for
  CMake and MSbuild #2096

## [2.47.3] - 2021-06-19

### Changed

- marginally more accurate computations in Smyrna sphere projection
- Perl is no longer required to build Graphviz #2067
- nop more reliably returns success and failure exit statuses
- implicit 63 character limit on plugin names is removed in GVC
- the packaging work flow on CentOS 7 now selects the Python 3 bindings, instead
  of Python 2 bindings
- remove Python 2 bindings #1992
- improved thread-safety in Graphviz bindings Makefile

### Fixed

- no longer pass libcommon to the linker twice in mm2gv when building with CMake
- Quartz plugin is now compiled with explicit `--tag=CC` to libtool #2065
- out of bounds read when attempting to load a plugin whose name is ≥63
  characters
- out of bounds read when examining a registered plugin whose name is ≥63
  characters
- do not `fclose(NULL)` in gvmap
- Assertion error when using `dot` in `ortho.c` in `convertSPtoRoute` in
  graphviz 2.47.2 #2082. This was a regression introduced in 2.47.2.

## [2.47.2] - 2021-05-26

### Added

- CMake option `use_sanitizers` which enables building with address and
  undefined behavior sanitizer

### Changed

- $PATH is no longer assumed to be "/bin:/usr/bin:/usr/local/bin" if unset
- test suite no longer assumes `python3` exists #2049
- CMake build system locates Python 3 before calling it
- diff and grep are no longer required to build Graphviz on Windows

### Fixed

- Uninitialized variable read in delaunay_tri
- potentially mismatched format string in tclpkg
- `gvToolTred` is now exported from gvc.dll on Windows mirroring the behavior on
  Unix platforms.

## [2.47.1] - 2021-04-17

### Changed

- More detailed error messages when opening input file fails

### Fixed

- Windows build thinks xdg-open can be used to open a web browser #1954
- lab_gamut_data misses a value #1974
- xdot man page does not document some functions #1957
- Superfluous empty `@param` in documentation #1977
- PIC renderer does not work and probably never has #131
- dot conversion to dia format #689
- memory leak of reference-counted HTML strings
- Align rank from bottom in dot graph #1339
- Fix for TBbalance attribute code #1980
- HTML parser error with single closing square bracket in table row #1893
- reference counted strings put the HTML bit in the middle of the reference
  count #1984
- &amp;amp; escape disappearing #797
- miscalculation of minimum rank on large graphs
- AddressSanitizer: strcpy-param-overlap in gvconfig_libdir when
  running dot -c #1994
- fix reuse of va_list in pov rendering

## [2.47.0] - 2021-03-15

### Changed

- The edges in JSON output are ordered now !1728
- remove regex usage #1919
- RxSpencer is no longer a dependency on Windows
- gvmap.sh is compatible with POSIX shells in addition to ksh
- sed is no longer a build dependency on Windows
- SHA256 checksum generation? #1955

### Fixed

- Fix gvpr -? to actually print usage and exit non-zero
- gvpr is not built by CMake #1878
- typos in gpcanvas.c #1927
- memory leak in libmingle
- private inheritance in IncVPSC #1874
- broken sorting in nearest_neighbor_graph_ann.cpp #1938
- memory leak in ANN bridge
- gvpr on Windows does not support absolute paths #1780
- buffer overflow in unflatten
- agxbputc macro does not bracket its arguments #1814

## [2.46.1] - 2021-02-13

### Added

- Support for building against Guile 2.2
- Portable source is now also offered as a .tar.xz

### Changed

- CentOS/RHEL 6 is no longer supported
- Vestiges of Qt4 support have been removed
- C++11 support is now required of the C++ compiler used to build Graphviz
- C99 support is now required of the C compiler used to build Graphviz
- Question about userout() function in agerror.c #1924
- The minimum version of Python required to run the test suite is 3.6

### Fixed

- memory leak in label construction
- gvedit compilation errors out, but works if manually compiled with qt5 #1862
- incorrect HTML BR attribute parsing code #1913
- broken overflow checks in RectArea #1906
- various memory leaks !1699
- Fix bad free in lefty !1709
- typo in pathcross #1926
- Out-of-bounds write caused by incorrect error handling of malloc in genUserdata #1928
- Offer .tar.xz files too #454
- Header file graphviz_version.h has no include guards #1929
- regression: newlines embedded in quoted labels / node names are not preserved in 2.46.0 #1931
- Properly fill graphviz_version.h !1706

## [2.46.0] - 2021-01-18

### Added

- Cgraph's agxbuf API gained a new function agxbdisown(), for dissociating
  backing memory from the managed buffer
- Build system support for the Elbrus 2000 CPU, thanks to Michael Shigorin

### Changed

- Cgraph's agheap() API has been removed
- Autotools build system support for eFence has been removed
- Building Graphviz with ICC defaults to -O2 instead of -O0
- Build system work arounds for GCC 3 have been removed
- Incomplete support for running the test suite under CMake has been removed
- Portable source tarballs now use the “ustar” POSIX format
- Minimum version of Flex required to build Graphviz is now 2.5.2
- Minimum version of Bison required to build Graphviz is now 3.0
- Minimum version of CMake required to build Graphviz using CMake is now 3.1

### Fixed

- gvpr: line numbers in gvpr errors/warnings are incorrect #1594
- URL typo in patchwork man page
- Escaped backslashes are not correctly handled when producing xdot with dot #165
- heap-over-flow(off-by-null) in lib/common/shapes.c #1700
- Windows MSBuild executables have the wrong version #1745
- Cast Overflow at pango_textlayout #1314
- x11 back end segfaults if display is unavailable #1776
- typo in cmd/gvpr/lib/clustg #1781
- Segfault in dot #1783
- Incorrect 'Arrow type "s" unknown' error #1444
- segfault on reading 0x10 #1724
- Null-dereference READ (144736912) #1676
- "Warning! PATH too long installer unable to modify PATH!" using CMake Windows installer and PATH length > 1024 #1770
- gvedit -? gives "option - unrecognized - ignored" instead of showing usage #1813
- lefty is not built for Windows (fixed for MSBuild builds only) #1818
- a failure to detect OpenGL glGenTextures() errors has been corrected
- sfio does compile time benchmarknig #1422
- iffe "lib" check always succeeds when compiler optimises #1521
- syntax error near text who is not present #1411
- Explicitly links with libstdc++; should allow libc++ if appropriate #163
- A macOS file that was erroneously excluded from portable source tarballs has
  been restored
- Add option -? for usage to diffimg
- Add option -? for usage to dotty
- Add option -? for usage to lneato
- Add option -? for usage to vimdot
- Fix smyrna -? to actually print usage instead of error
- Fix edgepaint -? to actually print usage instead of error
- Remove '"' from usage text in non-Windows version of dotty
- Correct misspelled 'smyrna' in usage
- Fix edgepaint -o option
- Correct shebang of gvmap.sh to use ksh
- Fix gvmap.sh -? option to exit with zero exit status
- Graphviz doesn't build on MacOS with the latest libc++ #1785
- make fails if ps2pdf is not installed (using autotools) #1763
- multiple graphs to file output causes a segfault #1845
- lefty PTY functionality relies on file descriptor implementation details #1823
- buffer overflow in fdpgen
- Crashes by VRML output when current directory is not writable #793
- Segmentation fault when newrank=true #1221
- sfdp craches #236
- fdp segmentation fault with GK=0 #1290
- fdp crash #1865
- Graphviz always crash with this simple dot file #167
- Seg fault in dot #1771
- gml2gv doesn't handle some attributes correctly #1869
- Add missing circo, fdp, neato, osage, patchwork, sfdp & twopi tools to Windows builds (copies of dot)
- Add gv2gml tool to CMake (copy of gml2gv on Windows, symlink to gml2gv otherwise)
- Regression: fdp generates internal names in the output #1876
- Regression: fdp assertion error on cluster in edge #1877
- Regression in id / &lt;title&gt; in svg for twopi #1907
jperkin pushed a commit that referenced this issue Dec 13, 2021
4.1.0 (2021-06-08)

* #170: Update gem homepage to use https://
* #177: Add ARM64-macos support

4.0.0 (2020-06-18)

* #167: Fix detach behavior on Windows
* #168: Drop support for Ruby 2.3
jperkin pushed a commit that referenced this issue May 1, 2022
# withr 2.5.0

* `defer()` and all `local_*()` functions now work when run inside of
  a `.Rmd`. The deferred expressions are executed when knitr exits.

* `defer()` and `local_` functions now work within `source()`.
  The deferred expressions are executed when `source()` exits.

* `with_()` and `local_()` gain a `get` argument. Supply a getter
  function to create `with` and `local` functions that are robust to
  early exits.

  When supplied, this restoration pattern is used:

  ```
  old <- get()
  on.exit(set(old))
  set(new)
  action()
  ```

  Instead of:

  ```
  old <- set(new)
  on.exit(set(old))
  action()
  ```

  This ensures proper restoration of the old state when an early exit
  occurs during `set()` (for instance when a deprecation warning is
  caught, see #191).

* These `with_` and `local_` functions are now robust to early exits (see next bullet):

  - `_locale()`
  - `_envvar()`
  - `_libpaths()`
  - `_options()`
  - `_par()`
  - `_path()`
  - `_seed()`

* `with_namespace()` and `local_namespace()` now pass `warn.conflicts`
  to `attach()` (@kyleam, #185).

* `local_rng_version()` and `local_seed()` no longer warn when
  restoring `sample.kind` to `"Rounding"` (#167).

* `with_seed()` now preserves the current values of `RNGkind()` (#167).

* `with_collate()` is no longer affected by the `LC_COLLATE`
  environment variable set to "C" (#179).

* Local evaluations in the `globalenv()` (as opposed to top-level
  ones) are now unwound in the same way as regular environments.

* `local_tempfile()` gains a lines argument so, if desired, you can pre-fill
  the temporary file with some data.
jperkin pushed a commit that referenced this issue May 11, 2022
2021-11-30  Dirk Eddelbuettel  <edd@debian.org>

	* DESCRIPTION (Version, Date): Release 0.6.29

	* src/digest.c (digest): Accomodate Windows UCRT build
	* man/AES.Rd: Remove one URL that upsets the URL checker
	* README.md: Update one URL that upsets the URL checker

2021-11-20  Dirk Eddelbuettel  <edd@debian.org>

	* DESCRIPTION (Version, Date): Roll minor version

	* vignettes/sha1.md: Renamed from .Rmd, corrected code block syntax

2021-11-19  Dirk Eddelbuettel  <edd@debian.org>

 	* DESCRIPTION (VignetteBuilder): Converted to simplermarkdown engine
	* vignettes/sha1.Rmd: Idem
	* vignettes/water.css: Added

2021-11-05  Dirk Eddelbuettel  <edd@debian.org>

 	* README.md: Remove Travis badge
	* .travis.yml: Remove Travis YAML config

2021-09-23  Dirk Eddelbuettel  <edd@debian.org>

	* DESCRIPTION (Version, Date): Release 0.6.28

2021-09-22  Dirk Eddelbuettel  <edd@debian.org>

	* DESCRIPTION (Version, Date): Roll minor version

	* vignettes/sha1.Rmd (date): Remove knitr date calculation in YAML
	header which GitHub does not like and mistakes for Jekyll code
	* docs/mkdmt-src/src/vignette.md (date): Idem

	* README.md: Add total download badge, label other as monthly

2021-09-22  András Svraka  <svraka.andras@gmail.com>

	* R/vdigest.R (non_streaming_digest): Ensure UTF-8 encoded file paths
	on Windows
	* inst/tinytest/test_encoding.R: Expand test coverage for path name
	encodings on Windows

2021-03-28  Dirk Eddelbuettel  <edd@debian.org>

	* docs/mkdmt-src/: Moved mkdocs-material input

2021-03-26  Dirk Eddelbuettel  <edd@debian.org>

	* README.md: Add 'last commit' badge

2021-03-23  Dirk Eddelbuettel  <edd@debian.org>

	* DESCRIPTION (URL): Add link to repo

2021-03-22  Dirk Eddelbuettel  <edd@debian.org>

	* docs-src/mkdocs.yml (theme): Add (draft, incomplete) vignette
	* docs-src/src/vignette.md (title): Idem

2021-03-22  Floris Vanderhaeghe  <floris.vanderhaeghe@inbo.be>

	* man/digest.Rd: Reworded to also highlight file mode

2021-01-16  Dirk Eddelbuettel  <edd@debian.org>

	* DESCRIPTION (Version, Date): Roll minor version

	* src/SpookyV2.cpp: Disallow unaligned reads which have been seen to
	trigger SAN issues as reported by Winston in #167

2020-12-23  Dirk Eddelbuettel  <edd@debian.org>

        * .github/workflows/ci.yaml: Add CI runner using r-ci
	* README.md: Add new CI badge

2020-10-20  Dirk Eddelbuettel  <edd@debian.org>

	* DESCRIPTION (Version, Date): Release 0.6.27

2020-10-19  Dirk Eddelbuettel  <edd@debian.org>

	* src/blake3_dispatch.c: Comment-out include of intrinsics to also
	comment-out erroring on insufficient architectures such as Solaris

2020-10-17  Dirk Eddelbuettel  <edd@debian.org>

	* DESCRIPTION (Version, Date): Release 0.6.26

	* docs/: Added package website
	* docs-src/: Added package website inputs

	* .travis.yml (dist): Change to focal

2020-10-15  Dirk Eddelbuettel  <edd@debian.org>

	* README.md: Update URLs
	* man/digest.Rd: Ditto
	* man/hmac.Rd: Ditto

2020-10-14  Dirk Eddelbuettel  <edd@debian.org>

	* DESCRIPTION (Version, Date): Roll minor version

	* inst/tinytest/test_blake3.R: Skip file-based blake3 tests on Windows

	* vignettes/sha1.Rmd: Switch to minidown and 'framework: water'
	* DESCRIPTION (Suggests): Add minidown

2020-10-07  Dirk Eddelbuettel  <edd@debian.org>

	* DESCRIPTION (Version, Date): Roll minor version

2020-10-06  Winston Chang  <winston@stdout.org>

	* R/digest.R: Speedup via explicit alternative values for
	match.arg() and a direct call to serialize()
	* R/vdigest.R: Idem
	* R/init.R: Idem (for serialize())
	* inst/tinytest/test_digest.R: New test ensuring all variants hit

2020-09-21  Dirk Eddelbuettel  <edd@debian.org>

	* .travis.yml: Updated to 'bionic', R 4.0, and BSPM

2020-08-03  Dirk Eddelbuettel  <edd@debian.org>

	* DESCRIPTION (Depends): Roll Depends: on to R (>= 3.3.0) due to use
	of startsWith(), with thanks to Florian Pein

2020-05-20  Dirk Eddelbuettel  <edd@debian.org>

	* .travis.yml: Switch to bionic and R 4.0.0

2020-05-19  Dirk Schumacher  <mail@dirk-schumacher.net>

	* src/digest.c: Support file operation
	* inst/tinytest/test_blake3.R: Update test

2020-05-19  Dirk Eddelbuettel  <edd@debian.org>

	* DESCRIPTION (Version): Roll minor version and date

2020-05-19  Dirk Schumacher  <mail@dirk-schumacher.net>

	* src/blake3.c: Add blake3 implementation
	* src/blake3.h: Idem
	* src/blake3_dispatch.c: Idem
	* src/blake3_impl.h: Idem
	* src/blake3_portable.c: Idem
	* src/digest.c: Support blake3 call
	* R/digest.R: Idem
	* inst/tinytest/test_blake3.R: Add tests
	* man/digest.Rd: Add documentation

2020-03-05  Harris McGehee  <mcgehee.harris@gmail.com>

	* man/sha1.Rd: Correct typo

2020-02-26  Dirk Eddelbuettel  <edd@debian.org>

	* README.md: Add Debian badge

2020-02-22  Dirk Eddelbuettel  <edd@debian.org>
jperkin pushed a commit that referenced this issue Sep 4, 2022
5.0.0 (2022-02-02)

* Drop support for Ruby 2.4 and Ruby 2.5
* Drop support for JRuby and Rubinius
* Test with Ruby 2.7 - aried3r (Anton Rieder) (#167)
* Test with Ruby 3.0 and Ruby 3.1
* Add standardrb as code formatter
* Drop support for callbacks that accepts only a single argument.
* Change signature of Roadie::CssNotFound and Roadie::ProvidersFailed.

5.0.1 (2022-05-11)

* Don't try to inline the :host pseudo-class - viamin (Bart Agapinan).
  (#170)
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 pushed a commit that referenced this issue Nov 15, 2022
Changes from CHANGELOG.md:

# Change Log
## [2.3.4] - 2021-2-12

### Changed

- Replaced legacy test images.

## [2.3.3] - 2021-2-5

### Fixed

- Fixed [#167](team-charls/charls#167),
  Decoding\Encoding fails on IBM s390x CPU (Big Endian architecture).

## [2.3.2] - 2021-1-29

### Fixed

- Fixed team-charls/charls#160,
  warning: cast from 'unsigned char*' to 'uint16_t*'
  increases required alignment of target type.
- Fixed team-charls/charls#161 ,
  warning: useless cast to type 'size_t' {aka 'unsigned int'}
  [-Wuseless-cast].

### Changed

- Updates to the CMakeLists.txt for Unix builds (except macOS)
  to hide more symbols from the shared library.
- C++14 is now the minimum version instead of explicitly required.
  This allows consuming applications more flexibility.
  Typically CMake will select the latest C++ standard version that
  the used C++ compiler supports.

## [2.3.1] - 2021-1-25

### Fixed

- Fixed team-charls/charls#155 ,
  charls::jpegls_decoder::decode: 2 overloads have similar conversions
  in v2.3.0

## [2.3.0] - 2022-1-24

### Added

- The encoder API has been extended with a rewind method that can be
  used to re-use a configured encoder to encode multiple images in a loop.
- Added support to decode JPEG-LS images that use restart markers
  team-charls/charls#92 .
- Added support to write and read comment (COM) segments
  team-charls/charls#113 .
- Added support to encode/decode oversized images
  (width or height larger then 65535).
- Extended the validation of the encoded JPEG-LS byte stream during decoding.
- Added support to encode JPEG-LS images with:
  - The option to ensure the output stream has an even size.
  - The option to write the CharLS version number as a comment (COM segment)
    to the output stream.
  - The option to write the coding parameters to the output stream if
    the bits per pixel are larger then 12 (enabled by default).
- Usage of compiler specific attributes on the public API as replacement for
  ``[[nodiscard]]`` (which is a C++17 feature).

### Fixed

- Fixed team-charls/charls#84 ,
  Default preset coding parameters not computed for unset values.
- Fixed team-charls/charls#102 ,
  CMake find_package(charls 2.2.0 REQUIRED) not working.

### Changed

- CMakeSettings.json has been replaced with CMakePresets.json.
- Non default coding parameters are explicitly stored in
  the output stream during encoding.
- GCC shared library release builds are now using LTO
  (Link Time Optimization).
- Some functions use compiler intrinsics for slightly better performance.

## [2.2.1] - 2022-2-3

### Fixed

- Backport of fix for team-charls/charls#167 ,
  Decoding\Encoding fails on IBM s390x CPU (Big Endian architecture).
jperkin pushed a commit that referenced this issue Dec 16, 2022
This bug fix release corrects some regressions introduced in 1.8.2
along with other bugs.

Highlights include:

 * Improved handling of reentering libX11 via X*IfEvent() calls (!171, !173)
 * Fix loading of en_US.UTF-8/XLC_LOCALE (#167, !174)
 * Add XFreeThreads() and automatic call from a destructor function when
   thread-safety-constructor is enabled (!167).
 * Address issues found by UBSan and AddressSanitizer
 * Fix build with older gcc versions (!169)

The full list of changes - see https://gitlab.freedesktop.org/xorg/lib/libx11/
for further details on any of these:

Alan Coopersmith (1):
      libX11 1.8.3

Jeremy Huddleston Sequoia (1):
      ximcp: Address warning found by UBSan when growing an empty tree

Keith Packard (1):
      Update XPutBackEvent() to support clients that put back unpadded events

Matthieu Herrb (1):
      Fix 797755 Allow X*IfEvent() to reenter libX11

Nia Alarie (1):
      Don't use pragma inside a function, it breaks compiling with older GCCs.

Oliver (1):
      Add XFreeThreads function.

Takao Fujiwara (1):
      nls: consecutive cs number in en_US.UTF-8/XLC_LOCALE

Ulrich Sibiller (2):
      Indentation fixes around recent dpy->in_ifevent changes
      ChkIfEv.c: fix wrong handling of dpy->in_ifevent
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 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 2, 2023
Changelog:

## v0.2.18

### Merged PRs:

- [#2299](https://github.com/TokTok/c-toxcore/pull/2299) fix: remove the assert because buffer can be larger than UINT16_MAX.
- [#2297](https://github.com/TokTok/c-toxcore/pull/2297) cleanup: remove unused field last_seen from Onion_Friend
- [#2289](https://github.com/TokTok/c-toxcore/pull/2289) test: Add a Null_System used in toxsave_harness.
- [#2288](https://github.com/TokTok/c-toxcore/pull/2288) test: enable additional sanitizers for fuzzing
- [#2287](https://github.com/TokTok/c-toxcore/pull/2287) fix: Don't allow onion paths to be built from real friends.
- [#2285](https://github.com/TokTok/c-toxcore/pull/2285) test: Don't abort fuzz test when tox_new fails.
- [#2284](https://github.com/TokTok/c-toxcore/pull/2284) refactor: Move crypto utilities from util to crypto_core.
- [#2283](https://github.com/TokTok/c-toxcore/pull/2283) fix: Allow onion paths to be built from more random nodes.
- [#2282](https://github.com/TokTok/c-toxcore/pull/2282) fix: Fix potential array out-of-bounds in DHT onion path building.
- [#2281](https://github.com/TokTok/c-toxcore/pull/2281) cleanup: Avoid goto in msi.c.
- [#2280](https://github.com/TokTok/c-toxcore/pull/2280) test: Improve test hermeticity by using local TCP relay.
- [#2279](https://github.com/TokTok/c-toxcore/pull/2279) test: Enable fuzzing for TCP.
- [#2277](https://github.com/TokTok/c-toxcore/pull/2277) refactor: Avoid `static_cast` in `Fuzz_System` functions.
- [#2275](https://github.com/TokTok/c-toxcore/pull/2275) chore: Downgrade C++ version to 17
- [#2273](https://github.com/TokTok/c-toxcore/pull/2273) fix: Really fix overrun added in e49a477a
- [#2272](https://github.com/TokTok/c-toxcore/pull/2272) fix: Add missing return on error
- [#2270](https://github.com/TokTok/c-toxcore/pull/2270) test: Improve error messages in toxav_basic_test.
- [#2266](https://github.com/TokTok/c-toxcore/pull/2266) fix: Fixed leak and overrun added in e49a477a
- [#2263](https://github.com/TokTok/c-toxcore/pull/2263) chore: Upgrade to C++20 in CMake build.
- [#2261](https://github.com/TokTok/c-toxcore/pull/2261) refactor: Protect array unpacking against invalid lengths.
- [#2258](https://github.com/TokTok/c-toxcore/pull/2258) refactor: Rename announce functions into their own namespace.
- [#2257](https://github.com/TokTok/c-toxcore/pull/2257) fix: Format IP as string again in error log.
- [#2255](https://github.com/TokTok/c-toxcore/pull/2255) fix: Fix a stack overflow triggered by small DHT packets.
- [#2251](https://github.com/TokTok/c-toxcore/pull/2251) chore: Add MISRA-2012 check using cppcheck's misra addon.
- [#2250](https://github.com/TokTok/c-toxcore/pull/2250) cleanup: remove populate_path_nodes_tcp
- [#2249](https://github.com/TokTok/c-toxcore/pull/2249) test: Improve stability of forwarding_test.
- [#2248](https://github.com/TokTok/c-toxcore/pull/2248) refactor: Use a struct for the `ip_ntoa` buffer.
- [#2246](https://github.com/TokTok/c-toxcore/pull/2246) fix: Don't crash if RNG init failed.
- [#2244](https://github.com/TokTok/c-toxcore/pull/2244) refactor: Allow NULL logger; make it no-op in NDEBUG.
- [#2243](https://github.com/TokTok/c-toxcore/pull/2243) chore: Add initial ESP32 docker build.
- [#2242](https://github.com/TokTok/c-toxcore/pull/2242) cleanup: Use `static_assert` instead of `assert` where possible.
- [#2240](https://github.com/TokTok/c-toxcore/pull/2240) chore(deps): Use upstream cmp directly instead of our fork.
- [#2238](https://github.com/TokTok/c-toxcore/pull/2238) cleanup: Make `*_free` and `kill_*` functions nullable.
- [#2236](https://github.com/TokTok/c-toxcore/pull/2236) chore: Add dependabot config.
- [#2234](https://github.com/TokTok/c-toxcore/pull/2234) test: Add more functionality to the bootstrap fuzz harness.
- [#2233](https://github.com/TokTok/c-toxcore/pull/2233) cleanup: Replace a series of `if` statements with a `switch`.
- [#2232](https://github.com/TokTok/c-toxcore/pull/2232) test: Add fuzzer support functions for internal toxcore objects.
- [#2230](https://github.com/TokTok/c-toxcore/pull/2230) feat: Merge group announce portion of new groupchats implementation
- [#2229](https://github.com/TokTok/c-toxcore/pull/2229) cleanup: Remove layers in the cmake build.
- [#2228](https://github.com/TokTok/c-toxcore/pull/2228) chore: Fix path to fuzzer binaries in clusterfuzz build.
- [#2227](https://github.com/TokTok/c-toxcore/pull/2227) cleanup: Disallow stack frames of over 9000 bytes.
- [#2225](https://github.com/TokTok/c-toxcore/pull/2225) fix: fix typo in git command in INSTALL.md
- [#2224](https://github.com/TokTok/c-toxcore/pull/2224) cleanup: Add include for assert.h for the fuzzing build.
- [#2223](https://github.com/TokTok/c-toxcore/pull/2223) chore: Add `uint8_t` version of `bin_pack` for numbers.
- [#2219](https://github.com/TokTok/c-toxcore/pull/2219) refactor: Rename bin_pack/unpack functions the same as cmp funcs.
- [#2217](https://github.com/TokTok/c-toxcore/pull/2217) cleanup: Add Network object parameter for addr_resolve.
- [#2214](https://github.com/TokTok/c-toxcore/pull/2214) cleanup: Remove all uses of `TOX_*_MAX_SIZE` macros.
- [#2213](https://github.com/TokTok/c-toxcore/pull/2213) cleanup: Remove unused random_testing program.
- [#2212](https://github.com/TokTok/c-toxcore/pull/2212) cleanup: Expand `CONST_FUNCTION` and remove the macro.
- [#2211](https://github.com/TokTok/c-toxcore/pull/2211) cleanup: Move definitions of tox_private.h functions to tox_private.c.
- [#2210](https://github.com/TokTok/c-toxcore/pull/2210) chore: Clone submodules in clusterfuzzlite Dockerfile.
- [#2208](https://github.com/TokTok/c-toxcore/pull/2208) chore: Remove valgrind build.
- [#2206](https://github.com/TokTok/c-toxcore/pull/2206) feat: Allow overriding mono_time in tox_new.
- [#2204](https://github.com/TokTok/c-toxcore/pull/2204) chore: Support producing shared libraries on Windows
- [#2202](https://github.com/TokTok/c-toxcore/pull/2202) cleanup: Avoid name clash between struct field and function.
- [#2201](https://github.com/TokTok/c-toxcore/pull/2201) docs: Add information regarding git submodules, cmp to INSTALL.md
- [#2200](https://github.com/TokTok/c-toxcore/pull/2200) cleanup: Add more null checks in `tox_new`.
- [#2199](https://github.com/TokTok/c-toxcore/pull/2199) cleanup: Mark Mono_Time const where possible.
- [#2196](https://github.com/TokTok/c-toxcore/pull/2196) test: Remove save_load_test from autotools build.
- [#2195](https://github.com/TokTok/c-toxcore/pull/2195) fix: Correct calculation of packet sent time
- [#2193](https://github.com/TokTok/c-toxcore/pull/2193) perf: Make time move a lot faster in fuzzing runs.
- [#2190](https://github.com/TokTok/c-toxcore/pull/2190) feat: Add support for custom random number generator.
- [#2189](https://github.com/TokTok/c-toxcore/pull/2189) chore: Add third_party to toxcore-sources docker image.
- [#2188](https://github.com/TokTok/c-toxcore/pull/2188) cleanup: Make addr_resolve a private function.
- [#2187](https://github.com/TokTok/c-toxcore/pull/2187) test: Add DHT and tox_events fuzz tests to the cmake build.
- [#2186](https://github.com/TokTok/c-toxcore/pull/2186) cleanup: Use `_Static_assert` in gcc/clang.
- [#2184](https://github.com/TokTok/c-toxcore/pull/2184) test: Add some support functions to make writing fuzzers easier.
- [#2183](https://github.com/TokTok/c-toxcore/pull/2183) test: Enable more tests for msan.
- [#2182](https://github.com/TokTok/c-toxcore/pull/2182) test: Improve stability of tox_many_tcp_test.
- [#2177](https://github.com/TokTok/c-toxcore/pull/2177) feat: Add support for overriding network functions.
- [#2176](https://github.com/TokTok/c-toxcore/pull/2176) test: try to save the fuzzed save file again
- [#2175](https://github.com/TokTok/c-toxcore/pull/2175) refactor: Use cmp instead of msgpack-c for events packing.
- [#2173](https://github.com/TokTok/c-toxcore/pull/2173) chore: Use "master" as the branch in toktok-fuzzer.
- [#2170](https://github.com/TokTok/c-toxcore/pull/2170) test: Add fuzzer tests to the bazel build.
- [#2169](https://github.com/TokTok/c-toxcore/pull/2169) feat: Merge moderation portion of new groupchats codebase
- [#2167](https://github.com/TokTok/c-toxcore/pull/2167) cleanup: Reduce scope of array-typed variables where possible.
- [#2166](https://github.com/TokTok/c-toxcore/pull/2166) cleanup: Reduce scope of variables as requested by cimple.
- [#2164](https://github.com/TokTok/c-toxcore/pull/2164) feat: Merge onion_announce changes from new groupchats fork
- [#2163](https://github.com/TokTok/c-toxcore/pull/2163) chore: Enable memory sanitizer build.
- [#2160](https://github.com/TokTok/c-toxcore/pull/2160) test: Improve the stability of the save_load test
- [#2159](https://github.com/TokTok/c-toxcore/pull/2159) chore: Update the Appveyor build to VS2019 to work around conan issues
- [#2158](https://github.com/TokTok/c-toxcore/pull/2158) cleanup: Expose `struct Tox` to internal code.
- [#2157](https://github.com/TokTok/c-toxcore/pull/2157) cleanup: Split the huge TCP client packet handler.
- [#2156](https://github.com/TokTok/c-toxcore/pull/2156) cleanup: Sync doc comments between .h and .c files.
- [#2155](https://github.com/TokTok/c-toxcore/pull/2155) fix: Eliminate memory leak in toxav.
- [#2154](https://github.com/TokTok/c-toxcore/pull/2154) test: Speed up toxav_many_test by using fake mono_time.
- [#2153](https://github.com/TokTok/c-toxcore/pull/2153) docs: Put all the tox public api into a fake "tox" namespace.
- [#2150](https://github.com/TokTok/c-toxcore/pull/2150) cleanup: Move all the group.h structs into group.c.
- [#2149](https://github.com/TokTok/c-toxcore/pull/2149) cleanup: Avoid `memset` on structs.
- [#2147](https://github.com/TokTok/c-toxcore/pull/2147) feat: Store announcements
- [#2146](https://github.com/TokTok/c-toxcore/pull/2146) chore: Add testing/Dockerfile to the CI build.
- [#2145](https://github.com/TokTok/c-toxcore/pull/2145) chore: Be even more explicit about integer range bounds.
- [#2144](https://github.com/TokTok/c-toxcore/pull/2144) cleanup: Minor cleanups in TCP_connection.c.
- [#2143](https://github.com/TokTok/c-toxcore/pull/2143) fix: Allow port range in DHT_bootstrap.c.
- [#2142](https://github.com/TokTok/c-toxcore/pull/2142) cleanup: Count re-adding an existing bootstrap node as success.
- [#2141](https://github.com/TokTok/c-toxcore/pull/2141) cleanup: Disable LAN discovery in TCP-only mode.
- [#2140](https://github.com/TokTok/c-toxcore/pull/2140) cleanup: Add assertion for decrypted data length.
- [#2101](https://github.com/TokTok/c-toxcore/pull/2101) cleanup: improve CMakeLists.txt structure
- [#2100](https://github.com/TokTok/c-toxcore/pull/2100) chore: remove cpufeatures.c
- [#2098](https://github.com/TokTok/c-toxcore/pull/2098) chore: remove DHT_test.c since it's unused

### Closed issues:

- [#2256](https://github.com/TokTok/c-toxcore/issues/2256) New Defects reported by Coverity Scan for TokTok/c-toxcore
- [#2109](https://github.com/TokTok/c-toxcore/issues/2109) Assimilate `messenger_test.c`: replace with public API test
- [#2012](https://github.com/TokTok/c-toxcore/issues/2012) Support building a DLL on Windows
- [#907](https://github.com/TokTok/c-toxcore/issues/907) use dll  abnormal  System.AccessViolationException win7 x32 but x64 no problem

## v0.2.17

### Merged PRs:

- [#2138](https://github.com/TokTok/c-toxcore/pull/2138) chore: Release 0.2.17
- [#2136](https://github.com/TokTok/c-toxcore/pull/2136) docs: Clean up doxygen comments to be more doxygen-like.
- [#2135](https://github.com/TokTok/c-toxcore/pull/2135) cleanup: Move test-only functions into tests.
- [#2134](https://github.com/TokTok/c-toxcore/pull/2134) cleanup: Add explicit callback setters for MSI callbacks.
- [#2133](https://github.com/TokTok/c-toxcore/pull/2133) cleanup: Remove redundant Messenger and DHT tests.
- [#2132](https://github.com/TokTok/c-toxcore/pull/2132) cleanup: Remove dependency from LAN_discovery onto DHT.
- [#2131](https://github.com/TokTok/c-toxcore/pull/2131) cleanup: Split util.c out of the network library.
- [#2130](https://github.com/TokTok/c-toxcore/pull/2130) cleanup: Remove redundant `()` around `return` expression.
- [#2128](https://github.com/TokTok/c-toxcore/pull/2128) test: Add unit test for create/handle request packets.
- [#2127](https://github.com/TokTok/c-toxcore/pull/2127) cleanup: Remove `EAGAIN` from the list of ignored errors.
- [#2126](https://github.com/TokTok/c-toxcore/pull/2126) cleanup: Remove port from `Broadcast_Info`.
- [#2125](https://github.com/TokTok/c-toxcore/pull/2125) cleanup: Don't reference local variables in macro bodies.
- [#2123](https://github.com/TokTok/c-toxcore/pull/2123) cleanup: Remove some more implicit bool conversions.
- [#2122](https://github.com/TokTok/c-toxcore/pull/2122) chore: Enable a bunch more warnings in GCC builds.
- [#2120](https://github.com/TokTok/c-toxcore/pull/2120) cleanup: Remove all boolean-int conversions.
- [#2117](https://github.com/TokTok/c-toxcore/pull/2117) cleanup: Comply with strict include ordering.
- [#2116](https://github.com/TokTok/c-toxcore/pull/2116) cleanup: Remove more boolean conversions (and a bugfix).
- [#2115](https://github.com/TokTok/c-toxcore/pull/2115) cleanup: Log at ERROR level when `connect()` fails.
- [#2114](https://github.com/TokTok/c-toxcore/pull/2114) cleanup: Avoid creating invalid enum values.
- [#2113](https://github.com/TokTok/c-toxcore/pull/2113) cleanup: Remove superfluous parentheses on the rhs of assignments.
- [#2108](https://github.com/TokTok/c-toxcore/pull/2108) test: Add mallocfail and proxy test to our coverage runs.
- [#2106](https://github.com/TokTok/c-toxcore/pull/2106) test: Add test coverage docker build for local tests.
- [#2105](https://github.com/TokTok/c-toxcore/pull/2105) cleanup: Change valid status of onion friend to bool.
- [#2104](https://github.com/TokTok/c-toxcore/pull/2104) fix: Report failure to DHT bootstrap back to the client.
- [#2103](https://github.com/TokTok/c-toxcore/pull/2103) cleanup: Remove more implicit bool conversions.
- [#2102](https://github.com/TokTok/c-toxcore/pull/2102) cleanup: Mark all local non-pointers as const where possible.
- [#2099](https://github.com/TokTok/c-toxcore/pull/2099) cleanup: Reduce name shadowing; remove ptr-to-bool conversions.
- [#2097](https://github.com/TokTok/c-toxcore/pull/2097) cleanup: Remove implicit conversions from `uint32_t` to `bool`.
- [#2096](https://github.com/TokTok/c-toxcore/pull/2096) cleanup: Return boolean constants, not ints from bool functions.
- [#2094](https://github.com/TokTok/c-toxcore/pull/2094) fix: Null function pointer dereference.
- [#2093](https://github.com/TokTok/c-toxcore/pull/2093) cleanup: Remove any disallowed casts.
- [#2092](https://github.com/TokTok/c-toxcore/pull/2092) perf: fix issue with friend finding taking too long after disconnects.
- [#2091](https://github.com/TokTok/c-toxcore/pull/2091) cleanup: Avoid casting function pointers.
- [#2090](https://github.com/TokTok/c-toxcore/pull/2090) refactor: Move `tox_new_log` to `auto_test_support`.
- [#2088](https://github.com/TokTok/c-toxcore/pull/2088) cleanup: Remove all implicit bool conversions in if-conditions.
- [#2086](https://github.com/TokTok/c-toxcore/pull/2086) cleanup: Enable most cppcheck warnings as errors.
- [#2084](https://github.com/TokTok/c-toxcore/pull/2084) fix: out-of-memory condition by corrupted save file
- [#2079](https://github.com/TokTok/c-toxcore/pull/2079) cleanup: Remove unused execution trace library.
- [#2078](https://github.com/TokTok/c-toxcore/pull/2078) perf: Refactor onion_client.c do_friends() to reduce network traffic
- [#2075](https://github.com/TokTok/c-toxcore/pull/2075) chore: Add a .clang-format that mostly agrees with astyle.
- [#2074](https://github.com/TokTok/c-toxcore/pull/2074) chore: Make coverity scan a nightly job.
- [#2073](https://github.com/TokTok/c-toxcore/pull/2073) chore: Fix build-args in win32/win64 docker build.
- [#2072](https://github.com/TokTok/c-toxcore/pull/2072) chore: Simplify and speed up windows builds using docker image.
- [#2070](https://github.com/TokTok/c-toxcore/pull/2070) chore: Add docker image builds for windows cross compiler.
- [#2064](https://github.com/TokTok/c-toxcore/pull/2064) fix: toxsave memory leak while loading groups

### Closed issues:

- [#2121](https://github.com/TokTok/c-toxcore/issues/2121) Improve speed and stability of LAN discovery test
- [#2083](https://github.com/TokTok/c-toxcore/issues/2083) Tox save file format/loader doesn't limit or check the number of frozen peers
- [#2080](https://github.com/TokTok/c-toxcore/issues/2080) speedup getting online after tox process has been suspended
- [#2050](https://github.com/TokTok/c-toxcore/issues/2050) Excessive onion friend lookups
- [#2034](https://github.com/TokTok/c-toxcore/issues/2034) Make coverity-scan workflow a nightly build instead of on master push
- [#2000](https://github.com/TokTok/c-toxcore/issues/2000) Move win32 docker image build out to dockerfiles
- [#1990](https://github.com/TokTok/c-toxcore/issues/1990) Add a .clang-format config that matches the astyle config as closely as possible.
- [#1115](https://github.com/TokTok/c-toxcore/issues/1115) Add empty handler for LAN discovery packets when LAN discovery is disabled
- [#647](https://github.com/TokTok/c-toxcore/issues/647) `tox_bootstrap` should return an error on unrecoverable `getnodes` failure
- [#169](https://github.com/TokTok/c-toxcore/issues/169) Get rid of TOX_USER_STATUS_BUSY + 1

## v0.2.16

### Merged PRs:

- [#2071](https://github.com/TokTok/c-toxcore/pull/2071) chore: Release 0.2.16
- [#2069](https://github.com/TokTok/c-toxcore/pull/2069) chore: Simplify and speed up nacl build using toxchat/nacl.
- [#2066](https://github.com/TokTok/c-toxcore/pull/2066) test: Add a profiling script and Dockerfile.
- [#2058](https://github.com/TokTok/c-toxcore/pull/2058) fix: properly deallocate frozen peers
- [#2056](https://github.com/TokTok/c-toxcore/pull/2056) cleanup: Avoid implicit boolean and floating point conversions in decls.
- [#2055](https://github.com/TokTok/c-toxcore/pull/2055) cleanup: Avoid implicit bool conversions in logical operators.
- [#2053](https://github.com/TokTok/c-toxcore/pull/2053) cleanup: Enable tokstyle's `-Wlarge-struct-params`.
- [#2052](https://github.com/TokTok/c-toxcore/pull/2052) fix: Fix return type of functions returning uint64_t.
- [#2049](https://github.com/TokTok/c-toxcore/pull/2049) cleanup: Apply stronger type checks and fix errors.
- [#2047](https://github.com/TokTok/c-toxcore/pull/2047) feat: Improve how we share TCP relays with friends
- [#2046](https://github.com/TokTok/c-toxcore/pull/2046) cleanup: Avoid implicit pointer-to-bool conversion in `if` in toxav.
- [#2043](https://github.com/TokTok/c-toxcore/pull/2043) refactor: Compare pointers in if conditions to nullptr.
- [#2041](https://github.com/TokTok/c-toxcore/pull/2041) fix: file transfer bug introduced in commit 2073d02
- [#2039](https://github.com/TokTok/c-toxcore/pull/2039) refactor: Add a bit more logging; change WARNING to ERROR.
- [#2036](https://github.com/TokTok/c-toxcore/pull/2036) chore: Add BUILD file for websockify.
- [#2035](https://github.com/TokTok/c-toxcore/pull/2035) chore: fine tune fuzzing settings
- [#2033](https://github.com/TokTok/c-toxcore/pull/2033) cleanup: Add some more error path logging to TCP server code.
- [#2032](https://github.com/TokTok/c-toxcore/pull/2032) chore: update the list of CMake options & Windows Docker build deps
- [#2031](https://github.com/TokTok/c-toxcore/pull/2031) fix: remove bogus asserts in fuzzer harness
- [#2030](https://github.com/TokTok/c-toxcore/pull/2030) chore: expand fuzzing to toxsave
- [#2028](https://github.com/TokTok/c-toxcore/pull/2028) fix: syntax error introduced in 8bf37994fd12acec9e3010437502f478399b99b4
- [#2027](https://github.com/TokTok/c-toxcore/pull/2027) fix: add continous fuzzing
- [#2026](https://github.com/TokTok/c-toxcore/pull/2026) chore: Fix implicit declaration warning in fuzz build
- [#2025](https://github.com/TokTok/c-toxcore/pull/2025) chore: add continous fuzzing to our CI
- [#2024](https://github.com/TokTok/c-toxcore/pull/2024) perf: Reduce minimal encoding size of packed events.
- [#2023](https://github.com/TokTok/c-toxcore/pull/2023) cleanup: Add wrapper library for msgpack pack functions
- [#2022](https://github.com/TokTok/c-toxcore/pull/2022) cleanup: Split tox_unpack into two smaller libs
- [#2021](https://github.com/TokTok/c-toxcore/pull/2021) chore: Disable non-null attributes by default.
- [#2019](https://github.com/TokTok/c-toxcore/pull/2019) chore: Silence clang compile warnings causing circle-ci/asan to fail
- [#2018](https://github.com/TokTok/c-toxcore/pull/2018) fix: Coverty scan
- [#2016](https://github.com/TokTok/c-toxcore/pull/2016) docs: Add libmsgpack dependency in INSTALL.md
- [#2015](https://github.com/TokTok/c-toxcore/pull/2015) fix: shared toxcore autotools build failing
- [#2013](https://github.com/TokTok/c-toxcore/pull/2013) cleanup: Don't use VLAs for huge allocations.
- [#2011](https://github.com/TokTok/c-toxcore/pull/2011) fix: Conan build link failures
- [#2010](https://github.com/TokTok/c-toxcore/pull/2010) chore: Remove duplicate source file in autotools build.
- [#2008](https://github.com/TokTok/c-toxcore/pull/2008) chore: get skeletons out of the closet
- [#2007](https://github.com/TokTok/c-toxcore/pull/2007) feat: add bash-completion for tox-bootstrapd
- [#2006](https://github.com/TokTok/c-toxcore/pull/2006) cleanup: Add more nonnull and nullable annotations.
- [#2002](https://github.com/TokTok/c-toxcore/pull/2002) cleanup: Add nonnull annotations to function definitions.
- [#2001](https://github.com/TokTok/c-toxcore/pull/2001) chore: Add an undefined behaviour/integer sanitizer build.
- [#1999](https://github.com/TokTok/c-toxcore/pull/1999) chore: Speed up cmake builds with `UNITY_BUILD`.
- [#1996](https://github.com/TokTok/c-toxcore/pull/1996) feat: Add unpacker functions for events structures.
- [#1993](https://github.com/TokTok/c-toxcore/pull/1993) feat: Add binary packing functions for tox events.
- [#1992](https://github.com/TokTok/c-toxcore/pull/1992) chore: Set up an Android CI job
- [#1988](https://github.com/TokTok/c-toxcore/pull/1988) cleanup: Make LAN discovery thread-safe without data races.
- [#1987](https://github.com/TokTok/c-toxcore/pull/1987) cleanup: Comply with new cimple callback rules.
- [#1985](https://github.com/TokTok/c-toxcore/pull/1985) cleanup: Split msi callback array into 1 member per callback
- [#1982](https://github.com/TokTok/c-toxcore/pull/1982) chore: Add an easy way to run autotools and circleci builds locally.
- [#1979](https://github.com/TokTok/c-toxcore/pull/1979) chore: Update readme header
- [#1952](https://github.com/TokTok/c-toxcore/pull/1952) feat: Add async event handling (callbacks) code.
- [#1935](https://github.com/TokTok/c-toxcore/pull/1935) feat: add DHT queries to private API
- [#1668](https://github.com/TokTok/c-toxcore/pull/1668) perf: Take advantage of fast networks for file transfers

### Closed issues:

- [#2009](https://github.com/TokTok/c-toxcore/issues/2009) Autotools build fails
- [#2004](https://github.com/TokTok/c-toxcore/issues/2004) Add `nullable` and `nonnull` annotations to all functions.
- [#1998](https://github.com/TokTok/c-toxcore/issues/1998) Large stack allocations
- [#1977](https://github.com/TokTok/c-toxcore/issues/1977) Turn array of callbacks in msi.h into separate callbacks.
- [#1670](https://github.com/TokTok/c-toxcore/issues/1670) Broken link in readme
- [#405](https://github.com/TokTok/c-toxcore/issues/405) Remove all¹ uses of global state in toxcore
- [#340](https://github.com/TokTok/c-toxcore/issues/340) Set up a continuous integration build for Android
- [#236](https://github.com/TokTok/c-toxcore/issues/236) Tox file transfers do not use available bandwidth
- [#128](https://github.com/TokTok/c-toxcore/issues/128) Toxcore should provide an easy, local method for making sure Travis checks will pass

## v0.2.15

### Merged PRs:

- [#1984](https://github.com/TokTok/c-toxcore/pull/1984) fix: Reduce logging verbosity even more.
- [#1983](https://github.com/TokTok/c-toxcore/pull/1983) chore: Release 0.2.15
- [#1980](https://github.com/TokTok/c-toxcore/pull/1980) fix: Reduce logging verbosity in TCP server.

## v0.2.14

### Merged PRs:

- [#1978](https://github.com/TokTok/c-toxcore/pull/1978) chore: Release 0.2.14
- [#1976](https://github.com/TokTok/c-toxcore/pull/1976) docs: Make crypto_core.h appear on doxygen.
- [#1975](https://github.com/TokTok/c-toxcore/pull/1975) refactor: use proper method for generating random numbers in a range
- [#1974](https://github.com/TokTok/c-toxcore/pull/1974) docs: Add doxygen configuration and netlify publishing.
- [#1972](https://github.com/TokTok/c-toxcore/pull/1972) chore: Make the last few remaining top level comments doxygen style.
- [#1971](https://github.com/TokTok/c-toxcore/pull/1971) chore: Sync all comments between header and source files.
- [#1968](https://github.com/TokTok/c-toxcore/pull/1968) cleanup: Ensure we limit the system headers included in .h files.
- [#1964](https://github.com/TokTok/c-toxcore/pull/1964) cleanup: Don't pass the whole DHT object to lan discovery.
- [#1958](https://github.com/TokTok/c-toxcore/pull/1958) chore: Make run-infer script use docker.
- [#1956](https://github.com/TokTok/c-toxcore/pull/1956) chore: Disable some cimple warnings for now.
- [#1955](https://github.com/TokTok/c-toxcore/pull/1955) cleanup: Properly copy Node_format using serialized format
- [#1954](https://github.com/TokTok/c-toxcore/pull/1954) cleanup: make functions take const pointer to IP_Port wherever possible
- [#1950](https://github.com/TokTok/c-toxcore/pull/1950) feat: Add WASM build for toxcore and websocket bootstrap node.
- [#1948](https://github.com/TokTok/c-toxcore/pull/1948) fix: potential freeing of an immutable static buffer
- [#1945](https://github.com/TokTok/c-toxcore/pull/1945) fix: Fix bootstrap on emscripten/wasm.
- [#1943](https://github.com/TokTok/c-toxcore/pull/1943) chore: use latest toktok-stack msan version
- [#1942](https://github.com/TokTok/c-toxcore/pull/1942) cleanup: Add some toxav bounds/sanity checks
- [#1940](https://github.com/TokTok/c-toxcore/pull/1940) chore: Use latest instead of versioned toktok-stack image.
- [#1939](https://github.com/TokTok/c-toxcore/pull/1939) chore: Rename bazel-release to -opt and -debug to -dbg.
- [#1938](https://github.com/TokTok/c-toxcore/pull/1938) cleanup: small refactor of DHT getnodes function
- [#1937](https://github.com/TokTok/c-toxcore/pull/1937) cleanup: remove brackets from ip_ntoa ipv6 formatting
- [#1933](https://github.com/TokTok/c-toxcore/pull/1933) chore: Add a Bazel Buildifier CI job
- [#1932](https://github.com/TokTok/c-toxcore/pull/1932) test: separate run_auto_tests into a library (revival of #1505)
- [#1929](https://github.com/TokTok/c-toxcore/pull/1929) cleanup: make some non-const pointers const
- [#1928](https://github.com/TokTok/c-toxcore/pull/1928) fix: unintentional integer down-casts
- [#1926](https://github.com/TokTok/c-toxcore/pull/1926) fix: group av memory leak
- [#1924](https://github.com/TokTok/c-toxcore/pull/1924) test: refactor autotest live network bootstrapping
- [#1923](https://github.com/TokTok/c-toxcore/pull/1923) fix: corruption in key files, making it unable to load when node starts.
- [#1922](https://github.com/TokTok/c-toxcore/pull/1922) chore: Don't run sonar scan on pull requests.
- [#1920](https://github.com/TokTok/c-toxcore/pull/1920) cleanup: refactor group audio packet data handling
- [#1918](https://github.com/TokTok/c-toxcore/pull/1918) chore: Run sonar scan on pull requests.
- [#1917](https://github.com/TokTok/c-toxcore/pull/1917) fix: buffer overwrite in bootstrap config
- [#1916](https://github.com/TokTok/c-toxcore/pull/1916) chore: Add a make_single_file script, used for CI.
- [#1915](https://github.com/TokTok/c-toxcore/pull/1915) cleanup: replace magic numbers with appropriately named constants
- [#1914](https://github.com/TokTok/c-toxcore/pull/1914) chore: Add cpplint to the CI.
- [#1912](https://github.com/TokTok/c-toxcore/pull/1912) cleanup: Remove uses of `strcpy` and `sprintf`.
- [#1910](https://github.com/TokTok/c-toxcore/pull/1910) cleanup: Remove our only use of flexible array members in toxcore.
- [#1909](https://github.com/TokTok/c-toxcore/pull/1909) chore: Expose public API headers as files in bazel.
- [#1906](https://github.com/TokTok/c-toxcore/pull/1906) cleanup: Split large switch statement into functions.
- [#1905](https://github.com/TokTok/c-toxcore/pull/1905) chore: Mark unsafe code as testonly.
- [#1903](https://github.com/TokTok/c-toxcore/pull/1903) cleanup: Even more pointer-to-const parameters.
- [#1901](https://github.com/TokTok/c-toxcore/pull/1901) cleanup: Make parameters pointers-to-const where possible.
- [#1900](https://github.com/TokTok/c-toxcore/pull/1900) cleanup: Remove old check Suite compat layer.
- [#1899](https://github.com/TokTok/c-toxcore/pull/1899) cleanup: Make `Networking_Core` pointer-to-const where possible.
- [#1898](https://github.com/TokTok/c-toxcore/pull/1898) cleanup: Use pointer cast instead of memcpy in qsort callback.
- [#1897](https://github.com/TokTok/c-toxcore/pull/1897) refactor: Deduplicate a bunch of code in TCP client/server.
- [#1894](https://github.com/TokTok/c-toxcore/pull/1894) cleanup: Deduplicate a somewhat complex loop in DHT.c.
- [#1891](https://github.com/TokTok/c-toxcore/pull/1891) cleanup: Remove our only use of sprintf.
- [#1889](https://github.com/TokTok/c-toxcore/pull/1889) cleanup: Stop using `strerror` directly.
- [#1887](https://github.com/TokTok/c-toxcore/pull/1887) test: Add two more bootstrap/TCP nodes to autotests
- [#1884](https://github.com/TokTok/c-toxcore/pull/1884) chore: Add mypy Python type check.
- [#1883](https://github.com/TokTok/c-toxcore/pull/1883) chore: Add sonar-scan analysis on pushes.
- [#1881](https://github.com/TokTok/c-toxcore/pull/1881) cleanup: Merge crypto_core and crypto_core_mem.
- [#1880](https://github.com/TokTok/c-toxcore/pull/1880) chore: Run static analysers in multiple variants.
- [#1879](https://github.com/TokTok/c-toxcore/pull/1879) fix: Fix `toxav_basic_test` buffer overflow.
- [#1878](https://github.com/TokTok/c-toxcore/pull/1878) fix: don't count filetransfer as sending until accepted
- [#1877](https://github.com/TokTok/c-toxcore/pull/1877) fix: Fix some uninitialised memory errors found by valgrind.
- [#1876](https://github.com/TokTok/c-toxcore/pull/1876) chore: Ignore some failures in bazel-tsan.
- [#1875](https://github.com/TokTok/c-toxcore/pull/1875) chore: Add asan/tsan bazel builds.
- [#1874](https://github.com/TokTok/c-toxcore/pull/1874) cleanup: replace all instances of atoi with strtol
- [#1873](https://github.com/TokTok/c-toxcore/pull/1873) chore: Enable layering check in all c-toxcore build files.
- [#1871](https://github.com/TokTok/c-toxcore/pull/1871) chore: Enable compiler layering check.
- [#1870](https://github.com/TokTok/c-toxcore/pull/1870) chore: Disable the OpenMP cracker in bazel for now.
- [#1867](https://github.com/TokTok/c-toxcore/pull/1867) chore: Retry asan/tsan tests a few more times.
- [#1866](https://github.com/TokTok/c-toxcore/pull/1866) chore: Run tokstyle with 3 cores.
- [#1865](https://github.com/TokTok/c-toxcore/pull/1865) cleanup: Remove extra parens around function arguments.
- [#1864](https://github.com/TokTok/c-toxcore/pull/1864) cleanup: Don't use memcpy where assignment can be used.
- [#1862](https://github.com/TokTok/c-toxcore/pull/1862) chore: Remove all references to Travis CI.
- [#1861](https://github.com/TokTok/c-toxcore/pull/1861) cleanup: Use `calloc` instead of `malloc` for struct allocations.
- [#1860](https://github.com/TokTok/c-toxcore/pull/1860) cleanup: Fix `calloc` argument order.
- [#1857](https://github.com/TokTok/c-toxcore/pull/1857) chore: Get all* autotests working with MSVC
- [#1853](https://github.com/TokTok/c-toxcore/pull/1853) cleanup: Remove useless parentheses.
- [#1850](https://github.com/TokTok/c-toxcore/pull/1850) chore: Add a GH Actions code coverage job
- [#1845](https://github.com/TokTok/c-toxcore/pull/1845) fix: use correct sample size in toxav_basic_test
- [#1844](https://github.com/TokTok/c-toxcore/pull/1844) cleanup: make struct typedefs have the same name as their struct
- [#1841](https://github.com/TokTok/c-toxcore/pull/1841) cleanup: refactor toxav_call_control
- [#1840](https://github.com/TokTok/c-toxcore/pull/1840) chore: Remove old travis docker scripts.
- [#1837](https://github.com/TokTok/c-toxcore/pull/1837) chore: Add bazel-debug build.
- [#1836](https://github.com/TokTok/c-toxcore/pull/1836) fix: possible unintended negative loop bound
- [#1835](https://github.com/TokTok/c-toxcore/pull/1835) cleanup: remove dead code
- [#1834](https://github.com/TokTok/c-toxcore/pull/1834) cleanup: Reduce the scope of for-loop iterator variables.
- [#1832](https://github.com/TokTok/c-toxcore/pull/1832) fix: a double-unlocking mutex in toxav
- [#1830](https://github.com/TokTok/c-toxcore/pull/1830) chore: Add "tcc" and "compcert" compiler targets.
- [#1820](https://github.com/TokTok/c-toxcore/pull/1820) chore: Add macOS build.
- [#1819](https://github.com/TokTok/c-toxcore/pull/1819) refactor: Extract some functions from the big run_auto_test function.
- [#1818](https://github.com/TokTok/c-toxcore/pull/1818) feat: Add programs for creating savedata & bootstrap keys
- [#1816](https://github.com/TokTok/c-toxcore/pull/1816) cleanup: put breaks inside case braces
- [#1815](https://github.com/TokTok/c-toxcore/pull/1815) test: add ability for autotests to use TCP connections
- [#1813](https://github.com/TokTok/c-toxcore/pull/1813) chore: Login to dockerhub before trying to push to dockerhub.
- [#1812](https://github.com/TokTok/c-toxcore/pull/1812) chore: Only push versioned docker image on tag builds.
- [#1811](https://github.com/TokTok/c-toxcore/pull/1811) chore: Add bootstrap daemon docker image build.
- [#1810](https://github.com/TokTok/c-toxcore/pull/1810) chore: Remove apidsl comment from tox.h.
- [#1807](https://github.com/TokTok/c-toxcore/pull/1807) chore: Don't run CI on master branch pushes.
- [#1802](https://github.com/TokTok/c-toxcore/pull/1802) cleanup: Sync doc comments in a few more .c/.h files.
- [#1801](https://github.com/TokTok/c-toxcore/pull/1801) chore: Fix up a few source code comment and style issues.
- [#1798](https://github.com/TokTok/c-toxcore/pull/1798) chore: merge friend_connections from NGC fork
- [#1797](https://github.com/TokTok/c-toxcore/pull/1797) cleanup: Move `sodium.h` include to front of network.c.
- [#1794](https://github.com/TokTok/c-toxcore/pull/1794) chore: Move cmake-freebsd-stage2 back into the toxcore repo.
- [#1793](https://github.com/TokTok/c-toxcore/pull/1793) chore: Add FreeBSD build to CI.
- [#1792](https://github.com/TokTok/c-toxcore/pull/1792) chore: Add cross compilation CI targets.
- [#1790](https://github.com/TokTok/c-toxcore/pull/1790) cleanup: remove redundant (and incorrect) comments
- [#1789](https://github.com/TokTok/c-toxcore/pull/1789) refactor: rename variable to clarify purpose
- [#1786](https://github.com/TokTok/c-toxcore/pull/1786) cleanup: Remove apidsl; remove `crypto_memcmp`.
- [#1783](https://github.com/TokTok/c-toxcore/pull/1783) cleanup: fix format-source
- [#1779](https://github.com/TokTok/c-toxcore/pull/1779) chore: Update toktok-stack version.
- [#1778](https://github.com/TokTok/c-toxcore/pull/1778) chore: Tie down the use of doxygen comments.
- [#1777](https://github.com/TokTok/c-toxcore/pull/1777) cleanup: Remove crypto_pwhash import.
- [#1776](https://github.com/TokTok/c-toxcore/pull/1776) cleanup: remove unused function argument from set_tcp_connection_status()
- [#1775](https://github.com/TokTok/c-toxcore/pull/1775) cleanup: Remove apidsl for everything except the public API.
- [#1774](https://github.com/TokTok/c-toxcore/pull/1774) chore: Remove config.h.
- [#1773](https://github.com/TokTok/c-toxcore/pull/1773) chore: Fix gen-file.sh: it wasn't globbing properly.
- [#1772](https://github.com/TokTok/c-toxcore/pull/1772) chore: Add .cc files to the static analysis.
- [#1770](https://github.com/TokTok/c-toxcore/pull/1770) cleanup: merge onion.c changes from new groupchats fork
- [#1769](https://github.com/TokTok/c-toxcore/pull/1769) chore: merge tcp_connection changes from new groupchats fork
- [#1768](https://github.com/TokTok/c-toxcore/pull/1768) chore: merge DHT changes from new groupchats fork
- [#1766](https://github.com/TokTok/c-toxcore/pull/1766) chore: Use docker for the autotools ci build.
- [#1765](https://github.com/TokTok/c-toxcore/pull/1765) fix: Fix file permission issue with toxchat/bootstrap-node Docker container
- [#1762](https://github.com/TokTok/c-toxcore/pull/1762) chore: Add autotools build; exempt crypto_pwhash from tokstyle.
- [#1761](https://github.com/TokTok/c-toxcore/pull/1761) cleanup: Don't include `"config.h"` unless needed.
- [#1759](https://github.com/TokTok/c-toxcore/pull/1759) cleanup: address some unused return values
- [#1758](https://github.com/TokTok/c-toxcore/pull/1758) test: Make ERROR logging fatal in tests.
- [#1754](https://github.com/TokTok/c-toxcore/pull/1754) fix: off-by-one error caused by integer division without proper cast
- [#1753](https://github.com/TokTok/c-toxcore/pull/1753) cleanup: use crypto_memzero to wipe secret keys when no longer in use
- [#1752](https://github.com/TokTok/c-toxcore/pull/1752) chore: Use an incrementing version number for coverity scans.
- [#1751](https://github.com/TokTok/c-toxcore/pull/1751) fix: Fixed uninitialised value copy.
- [#1747](https://github.com/TokTok/c-toxcore/pull/1747) cleanup: Fix some clang-tidy warnings and make them errors.
- [#1746](https://github.com/TokTok/c-toxcore/pull/1746) chore: Add clang-tidy review github workflow.
- [#1744](https://github.com/TokTok/c-toxcore/pull/1744) cleanup: Enforce for loop consistency.
- [#1743](https://github.com/TokTok/c-toxcore/pull/1743) chore: Minor cleanups of warnings given by cppcheck.
- [#1742](https://github.com/TokTok/c-toxcore/pull/1742) test: Add a simple test for `ip_ntoa`.
- [#1740](https://github.com/TokTok/c-toxcore/pull/1740) cleanup: Put fatal errors where API return values should be impossible
- [#1738](https://github.com/TokTok/c-toxcore/pull/1738) chore: Add missing `sudo` to coverity apt-get calls.
- [#1737](https://github.com/TokTok/c-toxcore/pull/1737) refactor: Fix previous refactor
- [#1736](https://github.com/TokTok/c-toxcore/pull/1736) chore: Add workflow for running coverity scan.
- [#1735](https://github.com/TokTok/c-toxcore/pull/1735) cleanup: Use `static_assert` instead of preprocessor `#error`.
- [#1734](https://github.com/TokTok/c-toxcore/pull/1734) chore: Add logger to onion and onion announce objects
- [#1733](https://github.com/TokTok/c-toxcore/pull/1733) cleanup: Minor fixes in test code.
- [#1732](https://github.com/TokTok/c-toxcore/pull/1732) cleanup: Refactor kill_nonused_tcp()
- [#1730](https://github.com/TokTok/c-toxcore/pull/1730) cleanup: Fix last instance of `-Wcast-align` and enable the warning.
- [#1729](https://github.com/TokTok/c-toxcore/pull/1729) cleanup: Ensure that error codes are always initialised.
- [#1727](https://github.com/TokTok/c-toxcore/pull/1727) cleanup: Avoid endian-specific code in `crypto_core`.
- [#1720](https://github.com/TokTok/c-toxcore/pull/1720) feat: Add automatic fuzz testing for c-toxcore
- [#1673](https://github.com/TokTok/c-toxcore/pull/1673) cleanup: Remove hardening code from DHT
- [#1622](https://github.com/TokTok/c-toxcore/pull/1622) perf: Make the key cracker a bit faster
- [#1333](https://github.com/TokTok/c-toxcore/pull/1333) refactor: Clean up friend loading.
- [#1307](https://github.com/TokTok/c-toxcore/pull/1307) refactor: Split toxav_iterate into audio and video part

### Closed issues:

- [#1967](https://github.com/TokTok/c-toxcore/issues/1967) Potential freeing of an immutable static buffer
- [#1788](https://github.com/TokTok/c-toxcore/issues/1788) Rename dht->last_run
- [#1719](https://github.com/TokTok/c-toxcore/issues/1719) Enforce braces around macros that compute a value
- [#1694](https://github.com/TokTok/c-toxcore/issues/1694) Double unlocking in the ac_iterate
- [#1332](https://github.com/TokTok/c-toxcore/issues/1332) Padding bytes in Tox save format are not specified
- [#1217](https://github.com/TokTok/c-toxcore/issues/1217) valgrind reports "Conditional jump or move depends on uninitialised value(s)"
- [#1118](https://github.com/TokTok/c-toxcore/issues/1118) Fix threading issues in tests caught by tsan (data race etc)
- [#1087](https://github.com/TokTok/c-toxcore/issues/1087) Remove all uses of `%zu` in printf formats.
- [#1040](https://github.com/TokTok/c-toxcore/issues/1040) Random numbers should not be produced using `rng() % max`.
- [#540](https://github.com/TokTok/c-toxcore/issues/540) Stop deleting source files
- [#501](https://github.com/TokTok/c-toxcore/issues/501) Testsuite fails and hangs on FreeBSD
- [#451](https://github.com/TokTok/c-toxcore/issues/451) Don't fail when building toxcore on windows with `cmake .`
- [#350](https://github.com/TokTok/c-toxcore/issues/350) Configure coverity runs for nightly builds
- [#349](https://github.com/TokTok/c-toxcore/issues/349) Run clang-tidy on Travis with specific warnings as errors.
- [#348](https://github.com/TokTok/c-toxcore/issues/348) Run cppcheck on Travis and push the results to toktok.github.io.
- [#323](https://github.com/TokTok/c-toxcore/issues/323) Set library version on future releases
- [#235](https://github.com/TokTok/c-toxcore/issues/235) Video corruption: Don't drop video keyframes
- [#203](https://github.com/TokTok/c-toxcore/issues/203) ToxAV is still on the old API style
- [#198](https://github.com/TokTok/c-toxcore/issues/198) Crash on call while peer calling you
- [#167](https://github.com/TokTok/c-toxcore/issues/167) Const-ify pointers
- [#124](https://github.com/TokTok/c-toxcore/issues/124) Don't include OS specific headers in .h files
- [#106](https://github.com/TokTok/c-toxcore/issues/106) Sometimes Toxcore reports the wrong connection status for both the DHT, and friends.
- [#85](https://github.com/TokTok/c-toxcore/issues/85) Reproducible Builds // OBS a bad Idea

## v0.2.13

### Merged PRs:

- [#1725](https://github.com/TokTok/c-toxcore/pull/1725) cleanup: add some missing null checks
- [#1723](https://github.com/TokTok/c-toxcore/pull/1723) chore: Run infer static analyser on circle ci builds.
- [#1722](https://github.com/TokTok/c-toxcore/pull/1722) chore: Release 0.2.13
- [#1718](https://github.com/TokTok/c-toxcore/pull/1718) fix: Sec/fix crypto size compute
- [#1716](https://github.com/TokTok/c-toxcore/pull/1716) chore: Use toktok-stack docker image with built third_party.
- [#1713](https://github.com/TokTok/c-toxcore/pull/1713) test: Add some unit tests for important internal DHT functions.
- [#1708](https://github.com/TokTok/c-toxcore/pull/1708) perf: reduce calling into Mono_Time in DHT
- [#1706](https://github.com/TokTok/c-toxcore/pull/1706) chore: Enable cimple tests on cirrus build.
- [#1705](https://github.com/TokTok/c-toxcore/pull/1705) fix: issue with save_load autotest
- [#1703](https://github.com/TokTok/c-toxcore/pull/1703) chore: Upgrade to toktok-stack:0.0.11.
- [#1699](https://github.com/TokTok/c-toxcore/pull/1699) fix: some friend connection issues
- [#1698](https://github.com/TokTok/c-toxcore/pull/1698) fix: bug causing API to report wrong self connection status
- [#1693](https://github.com/TokTok/c-toxcore/pull/1693) chore: Update IRC info
- [#1691](https://github.com/TokTok/c-toxcore/pull/1691) chore: Fix Appveyor and add workarounds for Cirrus CI
- [#1686](https://github.com/TokTok/c-toxcore/pull/1686) chore: Enable c-toxcore conan packaging
- [#1684](https://github.com/TokTok/c-toxcore/pull/1684) cleanup: Update INSTALL.md instructions
- [#1679](https://github.com/TokTok/c-toxcore/pull/1679) cleanup: Trivial cleanup
- [#1674](https://github.com/TokTok/c-toxcore/pull/1674) cleanup: filetransfer code
- [#1672](https://github.com/TokTok/c-toxcore/pull/1672) docs: Add instructions for building unit tests to INSTALL.md
- [#1667](https://github.com/TokTok/c-toxcore/pull/1667) chore: Update tox-bootstrapd checksum due to newer packages in Alpine
- [#1664](https://github.com/TokTok/c-toxcore/pull/1664) cleanup: use heap memory instead of stack for large variables
- [#1663](https://github.com/TokTok/c-toxcore/pull/1663) fix: Fix file tests on windows
- [#1633](https://github.com/TokTok/c-toxcore/pull/1633) fix: AppVeyor failing due to conan remote being added twice
- [#1602](https://github.com/TokTok/c-toxcore/pull/1602) fix: Fix buffer over-read when a peer leaves a conference
- [#1586](https://github.com/TokTok/c-toxcore/pull/1586) test: Fix tcp_relay_test by adding a second bootstrap node.
- [#1580](https://github.com/TokTok/c-toxcore/pull/1580) style: Format comments according to tokstyle's requirements.
- [#1557](https://github.com/TokTok/c-toxcore/pull/1557) chore: Add conan support
- [#1537](https://github.com/TokTok/c-toxcore/pull/1537) chore: Cygwin build
- [#1516](https://github.com/TokTok/c-toxcore/pull/1516) cleanup: Make pylint and mypy happy with bootstrap_node_info.py.
- [#1515](https://github.com/TokTok/c-toxcore/pull/1515) style: Run restyled on Travis and Circle CI scripts.
- [#1514](https://github.com/TokTok/c-toxcore/pull/1514) refactor: Remove multi-declarators entirely.
- [#1513](https://github.com/TokTok/c-toxcore/pull/1513) refactor: Disallow multiple initialised declarators per decl.
- [#1510](https://github.com/TokTok/c-toxcore/pull/1510) chore: Don't build pushes to branches, only to tags.
- [#1504](https://github.com/TokTok/c-toxcore/pull/1504) chore: Remove release-drafter configuration in favour of global one.
- [#1498](https://github.com/TokTok/c-toxcore/pull/1498) refactor: Limit scope of loop iterators.
- [#1497](https://github.com/TokTok/c-toxcore/pull/1497) refactor: Use bash arrays instead of strings for static analysis scripts.
- [#1496](https://github.com/TokTok/c-toxcore/pull/1496) cleanup: Stop hard-coding packet IDs in tests.
- [#1495](https://github.com/TokTok/c-toxcore/pull/1495) chore: Exclude imported libsodium sources from restyled.
- [#1493](https://github.com/TokTok/c-toxcore/pull/1493) feat: Add logging to TCP and onion client.
- [#1489](https://github.com/TokTok/c-toxcore/pull/1489) cleanup: `NAC_LIBS` -> `NACL_LIBS`.
- [#1487](https://github.com/TokTok/c-toxcore/pull/1487) chore: Add autotools build to localbuild docker images.
- [#1473](https://github.com/TokTok/c-toxcore/pull/1473) chore: Add a script to run Travis CI locally.
- [#1467](https://github.com/TokTok/c-toxcore/pull/1467) fix: Fix a bug in savedata loading when malloc fails.
- [#1464](https://github.com/TokTok/c-toxcore/pull/1464) fix: Fix errors on error paths found by oomer.
- [#1463](https://github.com/TokTok/c-toxcore/pull/1463) cleanup: Add a check that we don't have any unused functions.
- [#1462](https://github.com/TokTok/c-toxcore/pull/1462) cleanup: Include `<string.h>` for `explicit_bzero`.
- [#1436](https://github.com/TokTok/c-toxcore/pull/1436) chore: Enable cimple tests by default but allow disabling them.

### Closed issues:

- [#1598](https://github.com/TokTok/c-toxcore/issues/1598) ERROR:  heap-buffer-overflow in group.c found with AddressSanitizer
- [#1326](https://github.com/TokTok/c-toxcore/issues/1326) the cause is great, but this thing is completely unusable
- [#1319](https://github.com/TokTok/c-toxcore/issues/1319) Is this new application is safe & trusted ??
- [#1236](https://github.com/TokTok/c-toxcore/issues/1236) Ruby Extension?
- [#1149](https://github.com/TokTok/c-toxcore/issues/1149) uTox aborts on toxcore restart
- [#886](https://github.com/TokTok/c-toxcore/issues/886) Maybe need to set the stacksize for musl-libc

## v0.2.12

### Merged PRs:

- [#1458](https://github.com/TokTok/c-toxcore/pull/1458) Release 0.2.12
- [#1457](https://github.com/TokTok/c-toxcore/pull/1457) Disable non-hermetic tests by default.
- [#1456](https://github.com/TokTok/c-toxcore/pull/1456) Limit the number of friends you can have to ~4 billion.
- [#1452](https://github.com/TokTok/c-toxcore/pull/1452) Add execution trace option for debugging.
- [#1444](https://github.com/TokTok/c-toxcore/pull/1444) Set up release-drafter to automatically draft the next release.
- [#1443](https://github.com/TokTok/c-toxcore/pull/1443) Allow test coverage to fluctuate 2% up and down, but not below 80%.
- [#1442](https://github.com/TokTok/c-toxcore/pull/1442) Add CODEOWNERS and settings.yml files.
- [#1441](https://github.com/TokTok/c-toxcore/pull/1441) [ImgBot] Optimize images
- [#1439](https://github.com/TokTok/c-toxcore/pull/1439) Fix continuous integration builds.
- [#1437](https://github.com/TokTok/c-toxcore/pull/1437) Rework the toxchat/bootstrap-node Docker image.
- [#1435](https://github.com/TokTok/c-toxcore/pull/1435) Enable TCP relay test in Bazel and autotools build.
- [#1434](https://github.com/TokTok/c-toxcore/pull/1434) Skip invalid TCP relays and DHT nodes when loading save data.
- [#1433](https://github.com/TokTok/c-toxcore/pull/1433) Fix saving of combination of loaded and connected TCP relays
- [#1430](https://github.com/TokTok/c-toxcore/pull/1430) Invert `not_valid` functions and name them `is_valid`.
- [#1429](https://github.com/TokTok/c-toxcore/pull/1429) Fix things not being initialized if creating a TCP-only network
- [#1426](https://github.com/TokTok/c-toxcore/pull/1426) Remove tokstyle exemptions from build files.
- [#1425](https://github.com/TokTok/c-toxcore/pull/1425) Stop using the "inline namespace" feature of apidsl.
- [#1424](https://github.com/TokTok/c-toxcore/pull/1424) Add new semi-private API functions to set per-packet-id custom handlers.
- [#1423](https://github.com/TokTok/c-toxcore/pull/1423) Give CI workflow a better name: clang-sanitizers
- [#1422](https://github.com/TokTok/c-toxcore/pull/1422) Use public API for sending in RTP
- [#1421](https://github.com/TokTok/c-toxcore/pull/1421) Install ci-tools and get tokstyle via the script it provides.
- [#1420](https://github.com/TokTok/c-toxcore/pull/1420) Use tox public API for sending packets in toxav BWController
- [#1419](https://github.com/TokTok/c-toxcore/pull/1419) Remove newlines from the end of LOGGER format strings.
- [#1418](https://github.com/TokTok/c-toxcore/pull/1418) Change ToxAVCall struct mutex to a more distinct name
- [#1417](https://github.com/TokTok/c-toxcore/pull/1417) Create own instance of Mono_Time for ToxAV
- [#1416](https://github.com/TokTok/c-toxcore/pull/1416) Stop using Messenger's mono_time in bandwidth controller.
- [#1415](https://github.com/TokTok/c-toxcore/pull/1415) Fix 2 memory leaks in ToxAV.
- [#1414](https://github.com/TokTok/c-toxcore/pull/1414) Show function names in asan/tsan stack traces on CircleCI.
- [#1413](https://github.com/TokTok/c-toxcore/pull/1413) Make afl_toxsave.c a bit more portable; fix memory leak.
- [#1411](https://github.com/TokTok/c-toxcore/pull/1411) Fixes towards building on MSVC.
- [#1409](https://github.com/TokTok/c-toxcore/pull/1409) Mark conference test as small.
- [#1407](https://github.com/TokTok/c-toxcore/pull/1407) Add minimal save generator
- [#1406](https://github.com/TokTok/c-toxcore/pull/1406) Migrate format-source script to new apidsl web app.
- [#1404](https://github.com/TokTok/c-toxcore/pull/1404) Smarter setup of bazel remote cache on Cirrus CI.
- [#1331](https://github.com/TokTok/c-toxcore/pull/1331) Add basic test adapter for AFL

### Closed issues:

- [#1365](https://github.com/TokTok/c-toxcore/issues/1365) Add the option to use LAN discovery even when using a proxy for remote connections
- [#1353](https://github.com/TokTok/c-toxcore/issues/1353) libtoxdns.a and libtoxav.a
- [#86](https://github.com/TokTok/c-toxcore/issues/86) Freenet as Offline Messaging Backend

## v0.2.11

### Merged PRs:

- [#1405](https://github.com/TokTok/c-toxcore/pull/1405) Release 0.2.11
- [#1403](https://github.com/TokTok/c-toxcore/pull/1403) Install libsodium from apt instead of from source.
- [#1402](https://github.com/TokTok/c-toxcore/pull/1402) Remove bazel build from Travis.
- [#1400](https://github.com/TokTok/c-toxcore/pull/1400) Disable bazel remote cache on CI.
- [#1399](https://github.com/TokTok/c-toxcore/pull/1399) Periodically try to send direct packets when connected by TCP.
- [#1398](https://github.com/TokTok/c-toxcore/pull/1398) Minor cleanup: use `assoc_timeout` function where possible.
- [#1397](https://github.com/TokTok/c-toxcore/pull/1397) Check that LOGGER macros are only called with string literals.
- [#1396](https://github.com/TokTok/c-toxcore/pull/1396) Make function defns match their decls regarding storage class.
- [#1395](https://github.com/TokTok/c-toxcore/pull/1395) Mark file-local function definitions as `static`.
- [#1394](https://github.com/TokTok/c-toxcore/pull/1394) Enable remote cache for bazel builds.
- [#1393](https://github.com/TokTok/c-toxcore/pull/1393) Add another bootstrap node to the bootstrap test.
- [#1392](https://github.com/TokTok/c-toxcore/pull/1392) Clear out old conference connections.
- [#1391](https://github.com/TokTok/c-toxcore/pull/1391) Minor cleanups in network code.
- [#1390](https://github.com/TokTok/c-toxcore/pull/1390) Avoid casting back and forth between void-ptr.
- [#1389](https://github.com/TokTok/c-toxcore/pull/1389) Standardise on having a comma at the end of enums.
- [#1388](https://github.com/TokTok/c-toxcore/pull/1388) Fix up comments a bit to start being more uniform.
- [#1387](https://github.com/TokTok/c-toxcore/pull/1387) Use rules_cc instead of native cc_library rules.
- [#1386](https://github.com/TokTok/c-toxcore/pull/1386) Use spdx license identifier instead of GPL blurb.
- [#1383](https://github.com/TokTok/c-toxcore/pull/1383) Pass packet ID to custom packet handlers.
- [#1382](https://github.com/TokTok/c-toxcore/pull/1382) Add a mutex lock/unlock inside every public API function.
- [#1381](https://github.com/TokTok/c-toxcore/pull/1381) Use `net_pack` instead of casting bytes to ints.
- [#1380](https://github.com/TokTok/c-toxcore/pull/1380) Disable FreeBSD travis build until it is fixed.
- [#1379](https://github.com/TokTok/c-toxcore/pull/1379) Update and fix FreeBSD setup on Travis-CI
- [#1378](https://github.com/TokTok/c-toxcore/pull/1378) Use ninja build system for the cmake-linux build.
- [#1376](https://github.com/TokTok/c-toxcore/pull/1376) Remove testing/av_test.c.
- [#1375](https://github.com/TokTok/c-toxcore/pull/1375) Add "cimple_test" to the bazel build.
- [#1374](https://github.com/TokTok/c-toxcore/pull/1374) Handle invite to existing conference
- [#1372](https://github.com/TokTok/c-toxcore/pull/1372) Upgrade bazel to 2.1.1.
- [#1371](https://github.com/TokTok/c-toxcore/pull/1371) Bump to astyle-3.1 in travis build.
- [#1370](https://github.com/TokTok/c-toxcore/pull/1370) use -1 rather than ~0 in unsigned integer types
- [#1362](https://github.com/TokTok/c-toxcore/pull/1362) Workaround for message number saving
- [#1358](https://github.com/TokTok/c-toxcore/pull/1358) Allow Bazel to rerun tests marked as flaky
- [#1352](https://github.com/TokTok/c-toxcore/pull/1352) Update tests to use a working bootstrap node
- [#1349](https://github.com/TokTok/c-toxcore/pull/1349) Fix tox-bootstrapd's README and update Dockerfile
- [#1347](https://github.com/TokTok/c-toxcore/pull/1347) Fix pthread_mutex_destroy getting too many arguments
- [#1346](https://github.com/TokTok/c-toxcore/pull/1346) Fix most TSAN failures
- [#1345](https://github.com/TokTok/c-toxcore/pull/1345) fix concurrency issues in mono_time
- [#1343](https://github.com/TokTok/c-toxcore/pull/1343) Fix TSAN failures in tests
- [#1334](https://github.com/TokTok/c-toxcore/pull/1334) fix missing group title length check
- [#1330](https://github.com/TokTok/c-toxcore/pull/1330) Force IPv4 for cirrus-ci tests
- [#1329](https://github.com/TokTok/c-toxcore/pull/1329) bump libsodium version in appveyor.yml
- [#1322](https://github.com/TokTok/c-toxcore/pull/1322) Clean-up of group.c code
- [#1321](https://github.com/TokTok/c-toxcore/pull/1321) Some small fixes to groups.
- [#1299](https://github.com/TokTok/c-toxcore/pull/1299) Add VScode folder to .gitignore
- [#1297](https://github.com/TokTok/c-toxcore/pull/1297) Use net_pack/unpack instead of host_to_net.

### Closed issues:

- [#1373](https://github.com/TokTok/c-toxcore/issues/1373) handle crashes after group invites
- [#1368](https://github.com/TokTok/c-toxcore/issues/1368) Are tox clients also open source
- [#1366](https://github.com/TokTok/c-toxcore/issues/1366) Generate a link for websites (Friendship and proxy)
- [#1354](https://github.com/TokTok/c-toxcore/issues/1354) Unstable Tests
- [#1316](https://github.com/TokTok/c-toxcore/issues/1316) Documentation claims toxav_iteration_interval is threadsafe but it's not
- [#1274](https://github.com/TokTok/c-toxcore/issues/1274) build error
- [#850](https://github.com/TokTok/c-toxcore/issues/850) GPG App Usage
jperkin pushed a commit that referenced this issue Aug 8, 2023
(also taking over maintainership after confirming with Patrick)

v.2.4.3
    Add static hpdf_version.h header by @vszakats in #241
    hpdf_version.h included again by hpdf.h #241 #246
    File attachment issue resolved @hvanbrug #159
    Renamed *_LIBZ defines to _*ZLIB, thanks to @karstenBriksoft #249, enables compression of PDF files again.

v.2.4.2

    Reinstated hpdf_version.h #237 #240
v.2.4.1

    Fixed library name #236 from @jschueller
    Set correct version number #237 pointed out by @xantares

v.2.4.0

    Add support for free-form triangle shading objects. by @allisonvacanti in #157
    Fix config constant to match use in hpdf_mmgr.c by @bvirlet in #167
    Improve small number writing in HPDF_FToA. by @allisonvacanti in #187
    Fix missing /CapHeight key in font definition by @yabaud in #138
    Change HPDF_Page_CreateXObjectFromImage zoom parameter type to HPDF… by @extensia in #114
    Fix another case of png files with background mask save uncompressed by @igor-niv in #221
    Avoid issue with libtiff duplicate symbols by @bvirlet in #168
    Reajust bit_depth of png image after striping depth from 16 to 8. by @joelhecht in #125
    Fixed typo in Japanese font name: Mincyo -> Mincho by @qtamaki in #80
    Fix various typos by @luzpaz in #226
    hpdf.h: add missing HPDF_Boolean typedef by @mathstuf in #189
    Moved to a CMake only build environment.
    Fix bad unicode in comment by @gix in #229
    Fix various typos by @luzpaz in #230
jperkin pushed a commit that referenced this issue Aug 13, 2023
3.5.0 (2023-08-07)

1 minor enhancement:

* Robb Shecter changed the default log level for duplicate type variant from
  warn to debug in #170.  This works because MIME::Types.logger is intended
  to fit the ::Logger interface, and the default logger (WarnLogger) is a
  subclass of ::Logger that passes through to Kernel.warn.

    - Further consideration has changed cache load messages from warn to
      error and deprecation messages from warn to debug.

1 bug fix:

* Added a definition of MIME::Type#hash. Contributed by Alex Vondrak in
  #167, fixing #166.

Dependency and CI updates:

* Update the .github/workflows/ci.yml workflow to test Ruby 3.2 and more
  reliably test certain combinations rather than depending on exclusions.

* Change .standard.yml configuration to format for Ruby 2.3 as certain files
  are not properly detected with Ruby 2.0.

    - Change from hoe-git to hoe-git2 to support Hoe version 4.

    - Apply standardrb --fix.

    - The above changes have resulted in the Soft deprecation of Ruby
      versions below 2.6.  Any errors reported for Ruby versions 2.0, 2.1,
      2.2, 2.3, 2.4, and 2.5 will be resolved, but maintaining CI for these
      versions is unsustainable.
jperkin pushed a commit that referenced this issue Sep 1, 2023
pkgsrc: patch away libgit2 mismatch for now.

⛰️ Features
    (changelog) [breaking] Add postprocessors (#155) - (5dc5fb7)

🐛 Bug Fixes
    (cd) Do not publish release notes for pre-releases (#249) - (7a82aa1)
    (cd) Disable win32-arm64 PyPI builds - (baf34a8)
    (deps) Avoid problematic serde release - (87f74bc)
    (examples) Add missing newline (#253) - (aad4222)
    (informer) Do not inform about pre-releases (#249) - (87e47e6)
    Fix previous release references - (fbb605e)

🚜 Refactor
    (clippy) Apply clippy suggestions - (4c09759)
    (clippy) Apply clippy suggestions - (a814bbe)
    (config) Use a macro for generating commit list - (c695ca3)
    (docker) Avoid copying volume inside container (#142) - (65d365c)
    (lib) Use implicit serde imports - (c8cf855)

📚 Documentation
    (blog) Add blog post for 1.3.0 release (#264) - (93d4aa4)
    (example) Update the header of configuration examples - (0bf5ebe)
    (example) Add example for generating changelog similar to cocogitto
    - (e1cf26e)
    (readme) Add contributors graph - (3c9ced0)

🎨 Styling
    (config) Further beautify the changelog in this repo - (fd7446c)
    (config) Apply formatting to configuration files - (e9aa991)
    Fix formatting - (14725e5)

🧪 Testing
    (changelog) Add cases for docs: prefix (#167) - (3a717e2)
    (repo) Add an informative error message to failing test - (7d7470b)
    Fix keep a changelog test case - (0a6ed62)
    Fix keep a changelog test case - (f5d3365)

⚙️ Miscellaneous Tasks
    (cargo) Update MSRV to 1.70.0 - (1068912)
    (cd) Use the latest git-cliff-action for releases - (3eb97b8)
    (cd) Support creating prereleases on GitHub - (a22426a)
    (config) Add additional parsers for default config - (b745778)
    (config) Update configuration for alpha/beta/rc releases - (7e7e5a7)
    (config) Skip dependency updates in the changelog - (b2edc23)
    (core) Make git2 optional - (5fdf39a)
    (docker) Update versions in Dockerfile - (0ccab91)
    (github) Add config for welcome bot - (a4725d4)
    (mergify) Rename mergify configuration file - (9fd1be6)
    (mergify) Add configuration file for automatic merge (#245) - (0a79aae)
    (pypi) Publish git-cliff on PyPI (#158) - (2b7a1ef)
    Check without default features - (e323621)
jperkin pushed a commit that referenced this issue Sep 3, 2023
1.5.1 (2023-08-28)

* Fix memory leak in rich compare methods (#167, #168).
  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 Dec 17, 2023
Change Log

2.6.1   C<2023-07-26>

* Fix: Formatting with perltidy was broken in 2.6.0

2.6.0   C<2023-07-23>

* Add debug setting for running as different user. See sudoUser setting. (#174) [wielandp]

* Allow to use a string for debuggee arguments. (#149, #173) [wielandp]

* Add stdin redirection (#166) [wielandp]

* Add link to issues to META files (#168) [szabgab/issues]

* Add support for podman

* Add support for run Perl::LanguageServer outside, but debugger inside a container

* Add setting useTaintForSyntaxCheck. If true, use taint mode for syntax check (#172) [wielandp]

* Add setting useTaintForDebug. If true, use taint mode inside debugger (#181) [wielandp]

* Add debug adapter request C<source>, which allows to display source of eval or file that are not available to vscode (#180) [wielandp]

* Fix: Spelling (#170, #171) [pkg-perl-tools]

* Fix: Convert charset encoding of debugger output according to current locale (#167) [wielandp]

* Fix: Fix diagnostic notifications override on clients (based on #185) [bmeneg]
jperkin pushed a commit that referenced this issue Jan 25, 2024
## Version 0.5.1

Changes:

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

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

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

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

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

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

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

Fixes:

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

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

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

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


## Version 0.5.0

Changes:

 * Changes mandated by CommonMark specification 0.30.

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

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

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

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

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

 * Make Unicode-specific code compliant to Unicode 15.1.

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

New Features:

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

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

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

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

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

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

Fixes:

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

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

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

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

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

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

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

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

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

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

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

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

 * [#217](mity/md4c#217):
   The parser incorrectly resolved emphasis in some situations, if the emphasis
   marks were enclosed by punctuation characters.
jperkin pushed a commit that referenced this issue May 6, 2024
v2.17.0 - 2024/05/05
 - default binding for 'c' in bacon.toml is now the new 'clippy-all' job which
   does what the old 'clippy' job was doing. 'clippy' job changed to not run on
   all targets. Default bacon.toml explain how to bind 'c' to clippy instead of
   'clippy-all' - Fix #167
 - expand env vars in job command unless the job specifies
   expand_env_vars = false - Fix #181
 - some file events filtered out from watch (feedback welcome, especially if
   you notice some failures to recompute)
 - parse test results even when tests are run with -q/--quiet - Thanks @narpfel
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