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

Update HAproxy's Makefile Linux new target name #216

Conversation

thochra
Copy link

@thochra thochra commented Aug 30, 2019

Hello,

This should fix the new target name error at haproxy build:

===> Building for haproxy-2.0.5

Target 'linux2628' was removed from HAProxy 2.0 due to being irrelevant and
often wrong. Please use 'linux-glibc' instead or define your custom target
by checking available options using 'make help TARGET=<your-target>'.

make: *** [all] Error 1
*** Error code 2

Stop.
bmake[1]: stopped in /data/pkgsrc/net/haproxy
*** Error code 1

Stop.
bmake: stopped in /data/pkgsrc/net/haproxy

Filip Hajny and others added 30 commits January 15, 2019 13:08
There should be an option with packages to re-use an existing user or
group, even if a specific uid/gid is provided.  This commit introduces a
user variable to configure this: PKGINSTALL_IGNORE_UIDGID.

When PKGINSTALL_IGNORE_UIDGID is true then pkg_install will not try to
create the user/group as specified.  If the user/group does not exist
but the specified uid/gid is, then the uid/gid will be stripped so that
the system can allocate one at random.
This allows specifying additional libraries in the output phase, and is
a special case compared to _WRAP_EXTRA_ARGS as we need to ensure that
these libaries are not applied when using Sun ld in -r mode.
  * Disable zlib so that we don't pull in platform libz.
  * Set OVERRIDE_DIRDEPTH.depcomp=1 to disable depcomp-override
This allows arguments to be added when a wrapper is generating an
object, and is useful for inserting a specific library into each,
for example -lumem on SunOS.
 - Remove TOOLS_BASEDIR references.
 - Set search path with COMPILER_LIB_DIRS.
 - Don't hardcode GCC library paths.
 - Can't use -nostdlib (due to the above change).

mk/compiler/gcc.mk: remove libtool-base handling.

We need this to ensure that sys_lib_search_path_spec is correct and
prefers the runtime library.  Without this we see failures where
packages using libtool try to use both libstdc++.so's.

Ensure we can use an external libtool for binutils.
Avoids accidentally picking up a broken/non-working one from the
environment, or linking against one we don't have installed everywhere.
We already set them explicitly in pkgbuild and besides avoiding
duplicates this also allows us to change them without having to rebuild
bootstrap.
Resolves issues when bootstrapping without a suitable pkg_info
available, as the bootstrap pkg_info is unable to operate on binary
packages.  Fixes TritonDataCenter/pkgsrc-legacy#564
It is only used for c_rehash and a couple of other example tools, and
users can install perl manually if they require them.  It bloats too
much by default for something that is used so little, if at all.
 - Add ALTERNATIVES files.
 - Include necessary object files in the -libs package.
 - Prune unnecessary libraries from the -libs package.
 - Set local prefix to LOCALBASE (except tools build), and link against
   it by default.
 - Disable -fomit-frame-pointer, we like stack traces.
 - Disable --as-needed to avoid libgcc_s dependency.
 - Disable __stack_chk_fail_local (fixes 32-bit)
 - Support -fclone-functions, -fstrict-calling-conventions, -msave-args
 - Fix check-shlibs in -libs
 - Fix TritonDataCenter/pkgsrc-legacy#264 (avoid tls emulation)
 - Add ALTERNATIVES files.
 - Include the .o files in the -libs packages.
 - Prune unnecessary libraries from the -libs package.
 - Set local prefix to LOCALBASE (except tools build), and link against
   it by default.
 - Disable -fomit-frame-pointer, we like stack traces.
 - Disable __stack_chk_fail_local (fixes 32-bit)
 - DATASET-953 disable full gcc47 dependency
 - Implement -fstrict-calling-conventions, from richlowe.
 - Cleanup DEPENDS when using -libs
 - Fix check-shlibs in -libs
 - Fix TritonDataCenter/pkgsrc-legacy#264 (avoid tls emulation)
 - Fix for building with newer GCC.
These update a lot but not in a way that will affect the scan results,
and if that is the case then we remove old bulklogs anyway.
jperkin pushed a commit that referenced this pull request Apr 8, 2021
Bug-fix and maintenance update after the previous version 0.4.3.
All users of wildmidi-0.4.x are strongly encouraged to upgrade.

What's new in 0.4.4:

    Fixed integer overflow in midi parser sample count calculation (bug #200).
    Fixed 8 bit ping pong GUS patch loaders (bug #207).
    Fixed wrong variable use in reverb code (bug #210).
    Reset block status of tty after playback (bug #211).
    Fixed broken file name handling for 'save as midi' command during playback.
    Clamp MUS volume commands (PR #226).
    CMake project improvements (bugs: #214, #216, #217, #218) - cmake version 3.1 or newer is now required.
jperkin pushed a commit that referenced this pull request Jun 15, 2021
Changes with Apache 2.4.48

  *) mod_proxy_wstunnel: Add ProxyWebsocketFallbackToProxyHttp to opt-out the
     fallback to mod_proxy_http for WebSocket upgrade and tunneling.
     [Yann Ylavic]

  *) mod_proxy: Fix flushing of THRESHOLD_MIN_WRITE data while tunneling.
     BZ 65294.  [Yann Ylavic]

  *) core: Fix a regression that stripped the ETag header from 304 responses.
     PR 61820 [Ruediger Pluem, Roy T. Fielding]

  *) core: Adding SSL related inquiry functions to the server API.
     These function are always available, even when no module providing
     SSL is loaded. They provide their own "shadowing" implementation for
     the optional functions of similar name that mod_ssl and impersonators
     of mod_ssl provide.
     This enables loading of several SSL providing modules when all but
     one of them registers itself into the new hooks. Two old-style SSL
     modules will not work, as they replace the others optional functions
     with their own.
     Modules using the old-style optional functions will continue to work
     as core supplies its own versions of those.
     The following has been added so far:
     - ap_ssl_conn_is_ssl() to query if a connection is using SSL.
     - ap_ssl_var_lookup() to query SSL related variables for a
       server/connection/request.
     - Hooks for 'ssl_conn_is_ssl' and 'ssl_var_lookup' where modules
       providing SSL can install their own value supplying functions.
     - ap_ssl_add_cert_files() to enable other modules like mod_md to provide
       certificate and keys for an SSL module like mod_ssl.
     - ap_ssl_add_fallback_cert_files() to enable other modules like mod_md to
       provide a fallback certificate in case no 'proper' certificate is
       available for an SSL module like mod_ssl.
     - ap_ssl_answer_challenge() to enable other modules like mod_md to
       provide a certificate as used in the RFC 8555 'tls-alpn-01' challenge
       for the ACME protocol for an SSL module like mod_ssl. The function
       and its hook provide PEM encoded data instead of file names.
     - Hooks for 'ssl_add_cert_files', 'ssl_add_fallback_cert_files' and
       'ssl_answer_challenge' where modules like mod_md can provide providers
       to the above mentioned functions.
     - These functions reside in the new 'http_ssl.h' header file.
     [Stefan Eissing]

  *) core/mod_ssl/mod_md: adding OCSP response provisioning as core feature. This
     allows modules to access and provide OCSP response data without being tied
     of each other. The data is exchanged in standard, portable formats (PEM encoded
     certificates and DER encoded responses), so that the actual SSL/crypto
     implementations used by the modules are independant of each other.
     Registration and retrieval happen in the context of a server (server_rec)
     which modules may use to decide if they are configured for this or not.
     The area of changes:
     1. core: defines 2 functions in include/http_ssl.h, so that modules may
        register a certificate, together with its issuer certificate for OCSP
        response provisioning and ask for current response data (DER bytes) later.
        Also, 2 hooks are defined that allow modules to implement this OCSP
        provisioning.
     2. mod_ssl uses the new functions, in addition to what it did already, to
        register its certificates this way. If no one is interested in providing
        OCSP, it falls back to its own (if configured) stapling implementation.
     3. mod_md registers itself at the core hooks for OCSP provisioning. Depending
        on configuration, it will accept registrations of its own certificates only,
        all certificates or none.
     [Stefan Eissing]

 *) mod_md: v2.4.0 with improvements and bugfixes
     - MDPrivateKeys allows the specification of several types. Beside "RSA" plus
     optional key lengths elliptic curves can be configured. This means you can
     have multiple certificates for a Managed Domain with different key types.
     With ```MDPrivateKeys secp384r1 rsa2048``` you get one ECDSA  and one RSA
     certificate and all modern client will use the shorter ECDSA, while older
     client will get the RSA certificate.
     Many thanks to @tlhackque who pushed and helped on this.
     - Support added for MDomains consisting of a wildcard. Configuring
     ```MDomain *.host.net``` will match all virtual hosts matching that pattern
     and obtain one certificate for it (assuming you have 'dns-01' challenge
     support configured). Addresses #239.
     - Removed support for ACMEv1 servers. The only known installation used to
     be Let's Encrypt which has disabled that version more than a year ago for
     new accounts.
     - Andreas Ulm (<https://github.com/root360-AndreasUlm>) implemented the
     ```renewing``` call to ```MDMessageCmd``` that can deny a certificate
     renewal attempt. This is useful in clustered installations, as
     discussed in #233).
     - New event ```challenge-setup:<type>:<domain>```, triggered when the
     challenge data for a domain has been created. This is invoked before the
     ACME server is told to check for it. The type is one of the ACME challenge
     types. This is invoked for every DNS name in a MDomain.
     - The max delay for retries has been raised to daily (this is like all
     retries jittered somewhat to avoid repeats at fixed time of day).
     - Certain error codes reported by the ACME server that indicate a problem
     with the configured data now immediately switch to daily retries. For
     example: if the ACME server rejects a contact email or a domain name,
     frequent retries will most likely not solve the problem. But daily retries
     still make sense as there might be an error at the server and un-supervised
     certificate renewal is the goal. Refs #222.
     - Test case and work around for domain names > 64 octets. Fixes #227.
     When the first DNS name of an MD is longer than 63 octets, the certificate
     request will not contain a CN field, but leave it up to the CA to choose one.
     Currently, Lets Encrypt looks for a shorter name in the SAN list given and
     fails the request if none is found. But it is really up to the CA (and what
     browsers/libs accept here) and may change over the years. That is why
     the decision is best made at the CA.
     - Retry delays now have a random +/-[0-50]% modification applied to let
     retries from several servers spread out more, should they have been
     restarted at the same time of day.
     - Fixed several places where the 'badNonce' return code from an ACME server
     was not handled correctly. The test server 'pebble' simulates this behaviour
     by default and helps nicely in verifying this behaviour. Thanks, pebble!
     - Set the default `MDActivationDelay` to 0. This was confusing to users that
     new certificates were deemed not usably before a day of delay. When clocks are
     correct, using a new certificate right away should not pose a problem.
     - When handling ACME authorization resources, the module no longer requires
     the server to return a "Location" header, as was necessary in ACMEv1.
     Fixes #216.
     - Fixed a theoretical uninitialized read when testing for JSON error responses
     from the ACME CA. Reported at <https://bz.apache.org/bugzilla/show_bug.cgi?id=64297>.
     - ACME problem reports from CAs that include parameters in the Content-Type
     header are handled correctly. (Previously, the problem text would not be
     reported and retries could exceed CA limits.)
     - Account Update transactions to V2 CAs now use the correct POST-AS-GET method.
     Previously, an empty JSON object was sent - which apparently LE accepted,
     but others reject.
     [Stefan Eissing, @tlhackque, Andreas Ulm]

Changes with Apache 2.4.47

  *) mod_dav_fs: Improve logging output when failing to open files for
     writing.  PR 64413.  [Bingyu Shen <ahshenbingyu gmail.com>]

  *) mod_http2: Fixed a race condition that could lead to streams being
     aborted (RST to the client), although a response had been produced.
     [Stefan Eissing]

  *) mod_lua: Add support to Lua 5.4  [Joe Orton, Giovanni Bechis, Ruediger Pluem]

  *) MPM event/worker: Fix possible crash in child process on early signal
     delivery.  PR 64533.  [Ruediger Pluem]

  *) mod_http2: sync with github standalone version 1.15.17
     - Log requests and sent the configured error response in case of early detected
       errors like too many or too long headers. [Ruediger Pluem]
     - new option 'H2OutputBuffering on/off' which controls the buffering of stream output.
       The default is on, which is the behaviour of older mod-h2 versions. When off, all
       bytes are made available immediately to the main connection for sending them
       out to the client. This fixes interop issues with certain flavours of gRPC, see
       also <icing/mod_h2#207>.
       [Stefan Eissing]

  *) mod_unique_id: Fix potential duplicated ID generation under heavy load.
     PR 65159
     [Jonas Müntener <jonas.muentener ergon.ch>, Christophe Jaillet]

  *) "[mod_dav_fs etag handling] should really honor the FileETag setting".
     - It now does.
     - Add "Digest" to FileETag directive, allowing a strong ETag to be
       generated using a file digest.
     - Add ap_make_etag_ex() and ap_set_etag_fd() to allow full control over
       ETag generation.
     - Add concept of "binary notes" to request_rec, allowing packed bit flags
       to be added to a request.
     - First binary note - AP_REQUEST_STRONG_ETAG - allows modules to force
       the ETag to a strong ETag to comply with RFC requirements, such as those
       mandated by various WebDAV extensions.
     [Graham Leggett]

  *) mod_proxy_http: Fix a possibly crash when the origin connection gets
     interrupted before completion.  PR 64234.
     [Barnim Dzwillo <dzwillo strato.de>, Ruediger Pluem]

  *) mod_ssl: Do not keep connections to OCSP responders alive when doing
     OCSP requests.  PR 64135.  [Ruediger Pluem]

  *) mod_ssl: Improve the coalescing filter to buffer into larger TLS
     records, and avoid revealing the HTTP header size via TLS record
     boundaries (for common response generators).
     [Joe Orton, Ruediger Pluem]

  *) mod_proxy_hcheck: Don't pile up health checks if the previous one did
     not finish before hcinterval.  PR 63010.  [Yann Ylavic]

  *) mod_session: Improve session parsing.  [Yann Yalvic]

  *) mod_authnz_ldap: Prevent authentications with empty passwords for the
     initial bind to fail with status 500. [Ruediger Pluem]

  *) mod_auth_digest: Fast validation of the nonce's base64 to fail early if
     the format can't match anyway.  [Yann Ylavic]

  *) mod_proxy_fcgi: Honor "SetEnv proxy-sendcl" to forward a chunked
     Transfer-Encoding from the client, spooling the request body when needed
     to provide a Content-Length to the backend.  PR 57087.  [Yann Ylavic]

  *) mod_proxy: Put mod_proxy_{connect,wstunnel} tunneling code in common in
     proxy_util.  [Yann Ylavic]

  *) mod_proxy: Improve tunneling loop to support half closed connections and
     pending data draining (for protocols like rsync). PR 61616. [Yann Ylavic]

  *) mod_proxy_http: handle Upgrade request, 101 (Switching Protocol) response
     and switched protocol forwarding.  [Yann Ylavic]

  *) mod_proxy_wstunnel: Leave Upgrade requests handling to mod_proxy_http,
     allowing for (non-)Upgrade negotiation with the origin server.
     [Yann Ylavic]

  *) mod_proxy: Allow ProxyErrorOverride to be restricted to specific status
     codes.  PR63628. [Martin Drößler <mail martindroessler.de>]

  *) core: Add ReadBufferSize, FlushMaxThreshold and FlushMaxPipelined
     directives.  [Yann Ylavic]

  *) core: Ensure that aborted connections are logged as such. PR 62823
     [Arnaud Grandville <contact@grandville.net>]

  *) http: Allow unknown response status' lines returned in the form of
     "HTTP/x.x xxx Status xxx".  [Yann Ylavic]

  *) mod_proxy_http: Fix 100-continue deadlock for spooled request bodies,
     leading to Request Timeout (408).  PR 63855.  [Yann Ylavic]

  *) core: Remove headers on 304 Not Modified as specified by RFC7234, as
     opposed to passing an explicit subset of headers. PR 61820.
     [Giovanni Bechis]

  *) mpm_event: Don't reset connections after lingering close, restoring prior
     to 2.4.28 behaviour.  [Yann Ylavic]

  *) mpm_event: Kill connections in keepalive state only when there is no more
     workers available, not when the maximum number of connections is reached,
     restoring prior to 2.4.30 behaviour.  [Yann Ylavic]

  *) mod_unique_id: Use base64url encoding for UNIQUE_ID variable,
     avoiding the use of '@'.  PR 57044.
     [Michael Kaufmann <apache-bugzilla michael-kaufmann.ch>]

  *) mod_rewrite: Extend the [CO] (cookie) flag of RewriteRule to accept a
     SameSite attribute. [Eric Covener]

  *) mod_proxy: Add proxy check_trans hook.  This allows proxy
     modules to decline request handling at early stage.

  *) mod_proxy_wstunnel: Decline requests without an Upgrade
     header so ws/wss can be enabled overlapping with later
     http/https.

  *) mod_http2: Log requests and sent the configured error response in case of
     early detected errors like too many or too long headers.
     [Ruediger Pluem, Stefan Eissing]

  *) mod_md: Lowered the required minimal libcurl version from 7.50 to 7.29
     as proposed by <alexander.gerasimov codeit.pro>. [Stefan Eissing]

  *) mod_ssl: Fix request body buffering with PHA in TLSv1.3.  [Joe Orton]

  *) mod_proxy_uwsgi: Fix a crash when sending environment variables with no
     value. PR 64598 [Ruediger Pluem]

  *) mod_proxy: Recognize parameters from ProxyPassMatch workers with dollar
     substitution, such that they apply to the backend connection.  Note that
     connection reuse is disabled by default to avoid compatibility issues.
     [Takashi Sato, Jan Kaluza, Eric Covener, Yann Ylavic, Jean-Frederic Clere]
jperkin pushed a commit that referenced this pull request Jun 15, 2021
# pillar 1.6.1

- Bump required versions of ellipsis and vctrs to avoid warning during package load.
- `obj_sum()` no longer includes shape twice (#315).


# pillar 1.6.0

## Features

- New `num()` and `char()` offer a flexible way to customize the display of numeric and character columns (#191, #84).
- New `"pillar.max_dec_width"` option (#308).
- New `format_type_sum.AsIs()` avoids the need to implement your own `format_type_sum()` method (#286).
- `align()` gains `space` argument to control the character used for filling (#285).
- Numbers in scientific and decimal notation are formatted with the same rules regarding significant or decimal digits (#297).

## Bug fixes

- Load the debugme package only if the `DEBUGME` environment variable is set.
- More accurate detection if the decimal dot is necessary, and how many digits to show after the decimal dot (#298).
- Use display width instead of number of characters when truncating character columns.

## Documentation

- New `vignette("numbers")` and `vignette("digits")` (#308).

## Internal

- Compatibility with vctrs 0.3.7 (#291).
- `format.pillar_shaft_simple()` requires `"na"` attribute and no longer defaults to `pillar_na()` (#273).


# pillar 1.5.1

## Features

- New `format_glimpse()` (#177).

## Bug fixes

- Color and formatting can now be reliably turned off by setting the `"cli.num_colors"` option to 1 (#269).

## Documentation

- Add examples for new functions (#264).
- Fix lifecycle badges everywhere.


# pillar 1.5.0

## Breaking changes

- `obj_sum()` now always returns a string. `pillar_shaft.list()` iterates over its elements and calls `obj_sum()` for each (#137).

- Breaking: `print.pillar()` and `print.pillar_ornament()` now show  `<pillar>` `<pillar_ornament>` in the first line (#227, #228).

- pillar has been re-licensed as MIT (#215).

## Extensibility

- New `size_sum()` generic (#239).

- New `ctl_new_pillar()` and `ctl_new_compound_pillar()` used via `print.tbl()`, `format.tbl()` and `tbl_format_setup.tbl()` (#230).

- New `new_pillar()` low-level constructor (#230).

- New `new_pillar_component()` and `pillar_component()` (#230).

- New articles `vignette("extending")` and `vignette("printing")` (#251).

## Formatting

- All printing code has been moved from tibble to pillar (#179), including `glimpse()` (#234). This concentrates the printing code in one package and allows for better extensibility.

- Improve formatting for `"Surv"` and `"Surv2"` classes from the survival package (#199).

- Vectors of the `vctrs_unspecified()` class are formatted better (#256).

- Arrays are now formatted by showing only their first slice (#142).

- Avoid wrapping extra column names with spaces (#254).

## Internal

- Now using debugme to simplify understand the complex control flow, see `vignette("debugme")` (#248).

- New `format.pillar_ornament()` (#228).

- Using testthat 3e (#218).

- Avoid pillar.bold option in most tests (#216).

- Change internal storage format for `colonnade()` and `extra_cols()` (#204).


# pillar 1.4.7

- Adapt to changed environment on CRAN's Solaris machine.


# pillar 1.4.6

- Restore compatibility with R 3.2.


# pillar 1.4.5

## Features

- New `pillar.min_chars` option allows controlling the minimum number of characters shown for a character column (#178, @statsmaths).

- `bit64::integer64()` columns are now formatted the same way as numeric columns (#175).

- New `align()` to support easy alignment of strings within a character vector (existing function exported by @davidchall, #185).

## Technical

- `pillar_shaft()`, `format_type_sum()` and `extra_cols()` issue a warning if dots are unused.

- `new_pillar_title()` and `new_pillar_type()` warn if `...` is not empty.

## Internal

- Use lifecycle package.

- Remove compatibility code for R < 3.3.


# pillar 1.4.4

- `obj_sum()` uses `vctrs::vec_size()` internally.

- `is_vector_s3.default()` is soft-deprecated and no longer used. Please ensure that `vctrs::vec_is()` is `TRUE` for your class.

- Rely on vctrs for type abbreviations.


# pillar 1.4.3

- `new_pillar_shaft_simple()` gains `na` argument to control appearance of `NA` values.

- String columns are quoted if at least one value needs quotes (#171).

- Apply subtle style to `list_of` columns (#172).

- Fix formatting if mantissa is very close to 1 (#174).

- Use `as.character()` instead of `as_character()`.

- Remove compatibility with testthat < 2.0.0.
jperkin pushed a commit that referenced this pull request Sep 20, 2021
# NLopt Release Notes

## NLopt 2.6.2

15 April 2020

* Fixed forced stop exception with dimension elimination ([#317])

* Fixed `get_initial_step` wrapping ([#319])

* Various build fixes ([#314], [#308], [#303], [#278])

## NLopt 2.6.1

13 April 2019

* Fix `nlopt_version` result for 2.6.x and update soname.

## NLopt 2.6

12 April 2019

* New `nlopt_set_upper_bound` and `nlopt_set_lower_bound` functions in the low-level C API to set one bound at a time ([#257]).

* There is no longer a separate `libnlopt_cxx` library: C++ algorithms (STOGO and AGS) are compiled and included by default ([#198]).

* Various build fixes ([#197], [#216], [#245], [#250], [#230], [#261], etc.), other fixes ([#242], [#258]).

## NLopt 2.5

26 July 2018

* New AGS global solver ([#194]), thanks to Vladislav Sovrasov.

* New `nlopt_get_numevals` function providing a built-in evaluation counter ([#160]).

* New `nlopt_get_errmsg` function for more descriptive error messages.

* Build system is converted to `cmake` ([#49]), thanks to Julien Schueller

* Plugins updated for recent Octave and Guile versions.

* Various other build fixes and minor bug fixes.
jperkin pushed a commit that referenced this pull request Nov 28, 2021
Changes with Apache 2.4.48

  *) mod_proxy_wstunnel: Add ProxyWebsocketFallbackToProxyHttp to opt-out the
     fallback to mod_proxy_http for WebSocket upgrade and tunneling.
     [Yann Ylavic]

  *) mod_proxy: Fix flushing of THRESHOLD_MIN_WRITE data while tunneling.
     BZ 65294.  [Yann Ylavic]

  *) core: Fix a regression that stripped the ETag header from 304 responses.
     PR 61820 [Ruediger Pluem, Roy T. Fielding]

  *) core: Adding SSL related inquiry functions to the server API.
     These function are always available, even when no module providing
     SSL is loaded. They provide their own "shadowing" implementation for
     the optional functions of similar name that mod_ssl and impersonators
     of mod_ssl provide.
     This enables loading of several SSL providing modules when all but
     one of them registers itself into the new hooks. Two old-style SSL
     modules will not work, as they replace the others optional functions
     with their own.
     Modules using the old-style optional functions will continue to work
     as core supplies its own versions of those.
     The following has been added so far:
     - ap_ssl_conn_is_ssl() to query if a connection is using SSL.
     - ap_ssl_var_lookup() to query SSL related variables for a
       server/connection/request.
     - Hooks for 'ssl_conn_is_ssl' and 'ssl_var_lookup' where modules
       providing SSL can install their own value supplying functions.
     - ap_ssl_add_cert_files() to enable other modules like mod_md to provide
       certificate and keys for an SSL module like mod_ssl.
     - ap_ssl_add_fallback_cert_files() to enable other modules like mod_md to
       provide a fallback certificate in case no 'proper' certificate is
       available for an SSL module like mod_ssl.
     - ap_ssl_answer_challenge() to enable other modules like mod_md to
       provide a certificate as used in the RFC 8555 'tls-alpn-01' challenge
       for the ACME protocol for an SSL module like mod_ssl. The function
       and its hook provide PEM encoded data instead of file names.
     - Hooks for 'ssl_add_cert_files', 'ssl_add_fallback_cert_files' and
       'ssl_answer_challenge' where modules like mod_md can provide providers
       to the above mentioned functions.
     - These functions reside in the new 'http_ssl.h' header file.
     [Stefan Eissing]

  *) core/mod_ssl/mod_md: adding OCSP response provisioning as core feature. This
     allows modules to access and provide OCSP response data without being tied
     of each other. The data is exchanged in standard, portable formats (PEM encoded
     certificates and DER encoded responses), so that the actual SSL/crypto
     implementations used by the modules are independant of each other.
     Registration and retrieval happen in the context of a server (server_rec)
     which modules may use to decide if they are configured for this or not.
     The area of changes:
     1. core: defines 2 functions in include/http_ssl.h, so that modules may
        register a certificate, together with its issuer certificate for OCSP
        response provisioning and ask for current response data (DER bytes) later.
        Also, 2 hooks are defined that allow modules to implement this OCSP
        provisioning.
     2. mod_ssl uses the new functions, in addition to what it did already, to
        register its certificates this way. If no one is interested in providing
        OCSP, it falls back to its own (if configured) stapling implementation.
     3. mod_md registers itself at the core hooks for OCSP provisioning. Depending
        on configuration, it will accept registrations of its own certificates only,
        all certificates or none.
     [Stefan Eissing]

 *) mod_md: v2.4.0 with improvements and bugfixes
     - MDPrivateKeys allows the specification of several types. Beside "RSA" plus
     optional key lengths elliptic curves can be configured. This means you can
     have multiple certificates for a Managed Domain with different key types.
     With ```MDPrivateKeys secp384r1 rsa2048``` you get one ECDSA  and one RSA
     certificate and all modern client will use the shorter ECDSA, while older
     client will get the RSA certificate.
     Many thanks to @tlhackque who pushed and helped on this.
     - Support added for MDomains consisting of a wildcard. Configuring
     ```MDomain *.host.net``` will match all virtual hosts matching that pattern
     and obtain one certificate for it (assuming you have 'dns-01' challenge
     support configured). Addresses #239.
     - Removed support for ACMEv1 servers. The only known installation used to
     be Let's Encrypt which has disabled that version more than a year ago for
     new accounts.
     - Andreas Ulm (<https://github.com/root360-AndreasUlm>) implemented the
     ```renewing``` call to ```MDMessageCmd``` that can deny a certificate
     renewal attempt. This is useful in clustered installations, as
     discussed in #233).
     - New event ```challenge-setup:<type>:<domain>```, triggered when the
     challenge data for a domain has been created. This is invoked before the
     ACME server is told to check for it. The type is one of the ACME challenge
     types. This is invoked for every DNS name in a MDomain.
     - The max delay for retries has been raised to daily (this is like all
     retries jittered somewhat to avoid repeats at fixed time of day).
     - Certain error codes reported by the ACME server that indicate a problem
     with the configured data now immediately switch to daily retries. For
     example: if the ACME server rejects a contact email or a domain name,
     frequent retries will most likely not solve the problem. But daily retries
     still make sense as there might be an error at the server and un-supervised
     certificate renewal is the goal. Refs #222.
     - Test case and work around for domain names > 64 octets. Fixes #227.
     When the first DNS name of an MD is longer than 63 octets, the certificate
     request will not contain a CN field, but leave it up to the CA to choose one.
     Currently, Lets Encrypt looks for a shorter name in the SAN list given and
     fails the request if none is found. But it is really up to the CA (and what
     browsers/libs accept here) and may change over the years. That is why
     the decision is best made at the CA.
     - Retry delays now have a random +/-[0-50]% modification applied to let
     retries from several servers spread out more, should they have been
     restarted at the same time of day.
     - Fixed several places where the 'badNonce' return code from an ACME server
     was not handled correctly. The test server 'pebble' simulates this behaviour
     by default and helps nicely in verifying this behaviour. Thanks, pebble!
     - Set the default `MDActivationDelay` to 0. This was confusing to users that
     new certificates were deemed not usably before a day of delay. When clocks are
     correct, using a new certificate right away should not pose a problem.
     - When handling ACME authorization resources, the module no longer requires
     the server to return a "Location" header, as was necessary in ACMEv1.
     Fixes #216.
     - Fixed a theoretical uninitialized read when testing for JSON error responses
     from the ACME CA. Reported at <https://bz.apache.org/bugzilla/show_bug.cgi?id=64297>.
     - ACME problem reports from CAs that include parameters in the Content-Type
     header are handled correctly. (Previously, the problem text would not be
     reported and retries could exceed CA limits.)
     - Account Update transactions to V2 CAs now use the correct POST-AS-GET method.
     Previously, an empty JSON object was sent - which apparently LE accepted,
     but others reject.
     [Stefan Eissing, @tlhackque, Andreas Ulm]

Changes with Apache 2.4.47

  *) mod_dav_fs: Improve logging output when failing to open files for
     writing.  PR 64413.  [Bingyu Shen <ahshenbingyu gmail.com>]

  *) mod_http2: Fixed a race condition that could lead to streams being
     aborted (RST to the client), although a response had been produced.
     [Stefan Eissing]

  *) mod_lua: Add support to Lua 5.4  [Joe Orton, Giovanni Bechis, Ruediger Pluem]

  *) MPM event/worker: Fix possible crash in child process on early signal
     delivery.  PR 64533.  [Ruediger Pluem]

  *) mod_http2: sync with github standalone version 1.15.17
     - Log requests and sent the configured error response in case of early detected
       errors like too many or too long headers. [Ruediger Pluem]
     - new option 'H2OutputBuffering on/off' which controls the buffering of stream output.
       The default is on, which is the behaviour of older mod-h2 versions. When off, all
       bytes are made available immediately to the main connection for sending them
       out to the client. This fixes interop issues with certain flavours of gRPC, see
       also <icing/mod_h2#207>.
       [Stefan Eissing]

  *) mod_unique_id: Fix potential duplicated ID generation under heavy load.
     PR 65159
     [Jonas Müntener <jonas.muentener ergon.ch>, Christophe Jaillet]

  *) "[mod_dav_fs etag handling] should really honor the FileETag setting".
     - It now does.
     - Add "Digest" to FileETag directive, allowing a strong ETag to be
       generated using a file digest.
     - Add ap_make_etag_ex() and ap_set_etag_fd() to allow full control over
       ETag generation.
     - Add concept of "binary notes" to request_rec, allowing packed bit flags
       to be added to a request.
     - First binary note - AP_REQUEST_STRONG_ETAG - allows modules to force
       the ETag to a strong ETag to comply with RFC requirements, such as those
       mandated by various WebDAV extensions.
     [Graham Leggett]

  *) mod_proxy_http: Fix a possibly crash when the origin connection gets
     interrupted before completion.  PR 64234.
     [Barnim Dzwillo <dzwillo strato.de>, Ruediger Pluem]

  *) mod_ssl: Do not keep connections to OCSP responders alive when doing
     OCSP requests.  PR 64135.  [Ruediger Pluem]

  *) mod_ssl: Improve the coalescing filter to buffer into larger TLS
     records, and avoid revealing the HTTP header size via TLS record
     boundaries (for common response generators).
     [Joe Orton, Ruediger Pluem]

  *) mod_proxy_hcheck: Don't pile up health checks if the previous one did
     not finish before hcinterval.  PR 63010.  [Yann Ylavic]

  *) mod_session: Improve session parsing.  [Yann Yalvic]

  *) mod_authnz_ldap: Prevent authentications with empty passwords for the
     initial bind to fail with status 500. [Ruediger Pluem]

  *) mod_auth_digest: Fast validation of the nonce's base64 to fail early if
     the format can't match anyway.  [Yann Ylavic]

  *) mod_proxy_fcgi: Honor "SetEnv proxy-sendcl" to forward a chunked
     Transfer-Encoding from the client, spooling the request body when needed
     to provide a Content-Length to the backend.  PR 57087.  [Yann Ylavic]

  *) mod_proxy: Put mod_proxy_{connect,wstunnel} tunneling code in common in
     proxy_util.  [Yann Ylavic]

  *) mod_proxy: Improve tunneling loop to support half closed connections and
     pending data draining (for protocols like rsync). PR 61616. [Yann Ylavic]

  *) mod_proxy_http: handle Upgrade request, 101 (Switching Protocol) response
     and switched protocol forwarding.  [Yann Ylavic]

  *) mod_proxy_wstunnel: Leave Upgrade requests handling to mod_proxy_http,
     allowing for (non-)Upgrade negotiation with the origin server.
     [Yann Ylavic]

  *) mod_proxy: Allow ProxyErrorOverride to be restricted to specific status
     codes.  PR63628. [Martin Drößler <mail martindroessler.de>]

  *) core: Add ReadBufferSize, FlushMaxThreshold and FlushMaxPipelined
     directives.  [Yann Ylavic]

  *) core: Ensure that aborted connections are logged as such. PR 62823
     [Arnaud Grandville <contact@grandville.net>]

  *) http: Allow unknown response status' lines returned in the form of
     "HTTP/x.x xxx Status xxx".  [Yann Ylavic]

  *) mod_proxy_http: Fix 100-continue deadlock for spooled request bodies,
     leading to Request Timeout (408).  PR 63855.  [Yann Ylavic]

  *) core: Remove headers on 304 Not Modified as specified by RFC7234, as
     opposed to passing an explicit subset of headers. PR 61820.
     [Giovanni Bechis]

  *) mpm_event: Don't reset connections after lingering close, restoring prior
     to 2.4.28 behaviour.  [Yann Ylavic]

  *) mpm_event: Kill connections in keepalive state only when there is no more
     workers available, not when the maximum number of connections is reached,
     restoring prior to 2.4.30 behaviour.  [Yann Ylavic]

  *) mod_unique_id: Use base64url encoding for UNIQUE_ID variable,
     avoiding the use of '@'.  PR 57044.
     [Michael Kaufmann <apache-bugzilla michael-kaufmann.ch>]

  *) mod_rewrite: Extend the [CO] (cookie) flag of RewriteRule to accept a
     SameSite attribute. [Eric Covener]

  *) mod_proxy: Add proxy check_trans hook.  This allows proxy
     modules to decline request handling at early stage.

  *) mod_proxy_wstunnel: Decline requests without an Upgrade
     header so ws/wss can be enabled overlapping with later
     http/https.

  *) mod_http2: Log requests and sent the configured error response in case of
     early detected errors like too many or too long headers.
     [Ruediger Pluem, Stefan Eissing]

  *) mod_md: Lowered the required minimal libcurl version from 7.50 to 7.29
     as proposed by <alexander.gerasimov codeit.pro>. [Stefan Eissing]

  *) mod_ssl: Fix request body buffering with PHA in TLSv1.3.  [Joe Orton]

  *) mod_proxy_uwsgi: Fix a crash when sending environment variables with no
     value. PR 64598 [Ruediger Pluem]

  *) mod_proxy: Recognize parameters from ProxyPassMatch workers with dollar
     substitution, such that they apply to the backend connection.  Note that
     connection reuse is disabled by default to avoid compatibility issues.
     [Takashi Sato, Jan Kaluza, Eric Covener, Yann Ylavic, Jean-Frederic Clere]
jperkin pushed a commit that referenced this pull request Jan 18, 2022
Changelog:
Version 1.78.0

Known Issues

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

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

New Libraries

  * No new libraries.

Updated Libraries

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

Updated Tools

  * Build:
      + Includes release of B2 version 4.7.2.
jperkin pushed a commit that referenced this pull request Jan 18, 2022
Changes since 0.2.0:

## What's added?
- feat: Add additional info in view cmd #209 @ankitpokhrel
- feat: Show linked issues when viewing #219 @ankitpokhrel
- feat: Show latest comment when viewing #220 @ankitpokhrel
- feat: Add an option to load N comments when viewing issue #226 @ankitpokhrel

## What's fixed?
- fix: Allow config generations even when no boards #216 @sushilkg
- fix: Off by one error in wiki parser #224 @ankitpokhrel
- fix: Language support for Jira cloud #234 @ankitpokhrel
- fix(docs): Optional COMMENT_BODY #236 @realtime-neil
- fix: Respect BROWSER env #253 @ankitpokhrel

## Other notable changes
- cfg: A new field handle is added in issue.types section as part of #234
- build: Reproducible builds #244 #245 @realtime-neil
- build: Initialize version using runtime build info #249 @ankitpokhrel

Full Changelog: ankitpokhrel/jira-cli@v0.2.0...v0.3.0

To all direct/indirect contributors and backers, Thank you
jperkin pushed a commit that referenced this pull request Feb 21, 2022
### Added

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

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

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

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

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

### Changed

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

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

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

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

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

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

### Fixed

* CLI: A regression causing excess output during `pip audit -r`
  was fixed ([#226](pypa/pip-audit#226))
jperkin pushed a commit that referenced this pull request Apr 24, 2022
Changes since 1.5.8

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

Changes since 1.5.7

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

Changes since Epoxy 1.5.6

    Remove type redefinition [#249]

Changes since 1.5.5

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

Changes since 1.5.4

    Remove Python 2 support [#213]
    Remove Autotools support [#212]
    Use EGL_NO_X11 to disable X11 headers [#216]
    Use call convention for mock function [crziter, #220]
    Return correct version of GLSL on GLES2 [Eric Anholt, #223]
    Rely on Meson's darwin_versions option [#225]
jperkin pushed a commit that referenced this pull request Aug 30, 2022
0.6.0 - 2022-08-19
Added
 -Added support for tracing using IPv6 for tcp (#191)
 -Added -R (--multipath-strategy) flag to allow setting the Equal Cost
  Multi-path Routing strategy and added support for the dublin traceroute
  strategies for IPv4/udp (#158)
 -Added zoom-able chart showing round trip times for all hops in a trace (#209)
 -Added --udp and --tcp flags as shortcuts to -p udp and -p tcp respectively
  (#205)

Changed
 -Gray out hops which did not update in the current round (#216)
jperkin pushed a commit that referenced this pull request Aug 30, 2022
2.6.0 (13 June 2022)

* Directories are processed in lexicographic order.

  Different file systems may list directories in different order, and with
  this change we ensure that client code eager loads consistently across
  platforms, for example.

* Before this release, subdirectories of root directories always represented
  namespaces (unless ignored or collapsed).  From now on, to be considered
  namespaces they also have to contain at least one non-ignored Ruby file
  with extension .rb, directly or recursively.

   If you know beforehand a certain directory or directory pattern does not
   represent a namespace, it is intentional and more efficient to tell
   Zeitwerk to ignore it.

   However, if you don't do so and have a directory tasks that only contains
   Rake files, arguably that directory is not meant to represent a Ruby
   module.  Before, Zeitwerk would define a top-level Tasks module after it;
   now, it does not.

   This feature is also handy for projects that have directories with
   auxiliary resources mixed in the project tree in a way that is too
   dynamic for an ignore pattern to be practical.  See #216.

   In the unlikely case that an existing project has an empty directory for
   the sole purpose of defining a totally empty module (no code, and no
   nested classes or modules), such module has now to be defined in a file.

   Directories are scanned again on reloads.

* On setup, loaders created with Zeitwerk::Loader.for_gem issue warnings if
  lib has extra, non-ignored Ruby files or directories.

  This is motivated by existing gems with directories under lib that are not
  meant to define Ruby modules, like directories for Rails generators, for
  instance.

  This warning can be silenced in the unlikely case that the extra stuff is
  actually autoloadable and has to be managed by Zeitwerk.

  Please, check the documentation for further details.

  This method returns an instance of a private subclass of Zeitwerk::Loader
  now, but you cannot rely on the type, just on the interface.
jperkin pushed a commit that referenced this pull request Sep 13, 2022
37.1 (2022-09-03)
-----------------

* Allow HTML5 `nav` tag through cleaner (#259)

37.0 (2022-08-21)
-----------------

* Remove command line example from docs (#197)
* Multiple pyproject.toml fixes (#251)
* Confirm handling multiple inline strong (#252)
* Convert RST output to HTML5 (#253)
* Add Typing to classifiers (#254)
* Development tweaks - coverage reporting, actions updates (#255)
* Add test confirming behavior with unknown lexers (#256)

36.0 (2022-08-06)
-----------------

* Enable gitpod development (#238)
* Allow rst admonitions to render (#242)
* Add badges to README (#243)
* Update codebase for modern Python (#244)
* Fix table cell spans (#245)
* Allow ``math`` directive in rst (#246)
* Preserve ``lang`` attribute in ``pre`` (#247)

35.0 (2022-04-19)
-----------------

* Add py.typed to the built wheel (#228)
* Use isolated build for tox (#229)
* Fix renderer ignore (#230)
* Remove legacy check command and distutils (#233)
* Emit a warning when no content is rendered (#231)
* Drop support for Python 3.6 (#236)
* Update html attribute order in tests (#235)

34.0 (2022-03-11)
-----------------

* Add static types (#225)

33.0 (2022-03-05)
-----------------

* Support cmarkgfm>=0.8.0 (#224)

33.0 (2022-02-05)
-----------------

* Support cmarkgfm>=0.8.0 (#224)
* Support Python 3.10

32.0 (2021-12-13)
-----------------

* Allow start attribute in ordered lists (#216)
* No limit rendering RST one column field names (#219)

31.0 (2021-12-09)
-----------------

* Render disabled checkboxes from Markdown (#217)

30.0 (2021-09-30)
-----------------

* support cmarkgfm>=0.6.0 (#209)
jperkin pushed a commit that referenced this pull request Dec 19, 2022
################################################################################
Changed in xts 0.12.2:

o `Ops.xts()` no longer changes column names (via `make.names()`) when the two
  objects do not have identical indexes. This makes it consistent with
  `Ops.zoo()`. (#114)

o Subsetting a zero-length xts object now returns an object with the same
  storage type as the input. It previously always returned a 'logical' xts
  object. (#376)

o `tclass()` and `tzone()` now return the correct values for zero-length xts
  objects, instead of the defaults in the `.xts()` constructor. Thanks to Andre
  Mikulec for the report and suggested patch! (#255)

o `endpoints()` now always returns last observation. Thanks to GitHub user
  Eluvias for the report. (#300)

o Ensure `endpoints()` errors for every 'on' value when `k < 1`. It was not
  throwing an error for `k < 1` for `on` of "years", "quarters", or "months".
  Thanks to Eluvias for the report. (#301)

o Fix `window()` for yearmon and yearqtr indexes. In xts < 0.11-0, `window.zoo()`
  was dispatched when `window()` was called on a xts object because there was no
  `window.xts()` method. `window.zoo()` supports additional types of values for the
  `start` argument, and possibly other features. So this fixes a breaking change
  in xts >= 0.11-0. Thanks to GitHub user annaymj for the report. (#312)

o Clarify whether `axTicksByTime()` returns index timestamps or locations (e.g.
  1, 2, 3). Thanks to @ggrothendieck for the suggestion and feedback. (#354)

o Fix merge on complex types when 'fill' is needed. `merge()` would throw an
  error because it treated 'fill' as double instead of complex. Thanks to
  @ggrothendieck for the report. (#346)

o Add a message to tell the user how to disable 'xts_check_TZ' warning. Thanks
  to Jerzy Pawlowski for the nudge. (#113)

o Update `rbind()` to handle xts objects without dim attribute. `rbind()` threw
  an obscure error if one of the xts objects does not have a dim attribute. We
  can handle this case even though all xts objects should always have a dim
  attribute. (#361)

o `split.xts()` now always return a named list, which makes it consistent with
  `split.zoo()`. Thanks to Gabor Grothendieck for the report. (#357)

o xts objects with a zero-length POSIXct index now return a zero-length POSIXct
  vector instead of a zero-length integer vector. Thanks to Jasper Schelfhout
  for the report and PR! (#363, #364)

o Add suffixes to output of `merge.xts()`. The suffixes are consistent with
  `merge.default()` and not `merge.zoo()`, because `merge.zoo()` automatically
  uses "." as a separator between column names, but the default method doesn't.
  Thanks to Pierre Lamarche for the nudge. Better late than never? (#38, #371)


Changes to plotting functionality
--------------------------------------------------------------------------------

o You can now omit the data time range from the upper-right portion of a plot
  by setting `main.timespan = FALSE`. (#247)

o Fix `addEventLines()` when plotted objects have a 'yearmon' index. The ISO-8601
  range string was not created correctly. Thanks to @paessens for the report.
  (#353)

o Make 'ylim' robust against numerical precision issues by replacing `==` with
  `all.equal()`. Thanks to @bollard for the report, PR, and a ton of help
  debugging intermediate solutions! (#368)

o Series added to a panel now extend the panel's y-axis. Previously the y-axis
  limits were based on the first series' values and not updated when new series
  were added. So values of the new series did not appear on the plot if they
  were outside of the original series' min/max. Thanks to Vitalie Spinu for the
  report and help debugging and testing! (#360)

o All series added to any panel of a plot now update the x-axis of all panels.
  So the entire plot's x-axis will include every series' time index values
  within the original plot's time range. This behavior is consistent with
  `chart_Series()`. Thanks to Vitalie Spinu for the report and help debugging
  and testing! (#360, #216)

o All y-values are now plotted for series that have duplicate index values, but
  different data values. Thanks to Vitalie Spinu for the report and help
  debugging and testing! (#360)

o Adding a series can now extend the x-axis before/after the plot's existing
  time index range, so all of the new series' time index values are included in
  the plot. This is FALSE by default to maintain backward compatibility. Thanks
  to Vitalie Spinu for the report and help debugging and testing! (#360)
jperkin pushed a commit that referenced this pull request Mar 16, 2023
2.4.1 (2023-03-07)

* Allow running the test in isolation.

* Avoid race conditions in Scheduler#interrupt and Scheduler#unblock. (#216)

2.4.2 (2023-03-11)

* Ensure all tasks are completed before closing scheduler. (#219)
jperkin pushed a commit that referenced this pull request Mar 17, 2023
- added support for Hare
- fixed `--no-trailing-nl` option for LaTeX output (#216)
- fixed typos in rnc.lang, spn.lang and znn.lang (#139)
- fixed missing ngerman package for `--replace-quotes` option (#222)
- fixed quotes highlighting in XML (#226)
- updated file extension lists (#227)
- updated astyle lib to version 3.2
jperkin pushed a commit that referenced this pull request Jun 8, 2023
New features
 - Considerably refined the app packaging strategy, introducing support for more
   architectures and other advancements 📦 (see #246 for additional details)
 - Added button to clear all the current search filters quickly in inspect page
 - Added Swedish translation 🇸🇪 (#213)

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

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

## Google Compute Engine

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

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

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

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

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

## Behaviour in a cloud/server context

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

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

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

## Everything else

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

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

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

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

# gargle 1.3.0

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

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

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

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

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

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

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

## gargle-specific notion of OAuth client

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

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

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

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

## Google Compute Engine and Google Kubernetes Engine

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

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

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

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

## Credential function registry

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

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

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

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

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

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

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

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

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

# gargle 1.2.1

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

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

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

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

## Dependency changes

* The minimum versions of rlang and testthat have been bumped. The
  motivation is to exploit and adapt to the changes to the display of
  error messages.
jperkin pushed a commit that referenced this pull request Aug 8, 2023
What's Changed
 - fix typo in config example variable by @hyperpuncher in #209
 - Add Void Linux as install option by @f1nbar in #210
 - Implement timeout mechanism for getting authentication token by
   @aome510 in #212
 - Fix a typo for homebrew install instructions by @toh995 in #216
 - Add tracks_playback_limit config option by @aome510 in #219
 - Use ttl cache instead of lru by @aome510 in #220
 - Create app.toml with default values if it doesn't exist by @cobbinma in #221
 - Tokyonight Theme 🎨 by @cobbinma in #225
 - Improve queue popup by @m-torhan in #226
 - fix: constant module name typo by @nuugen in #227
 - Allow removing a keybind by @Kuba314 in #223
 - move items in a playlist by @cobbinma in #224
 - Improve TTL caching and handling by @aome510 in #230
 - Playlist CLI Editing - New, Delete, Import, Fork, Update by
   @justjokiing in #222
jperkin pushed a commit that referenced this pull request Sep 1, 2023
Change log:

1.1.0 (2023-08-22)
=====
- Update copyright year
- Allow passing arguments to custom commands
- Fully translate strings in unsafe paste dialog
- window: Properly sync always-show-tabs
- cleanup: Include gdkx.h in one place
- preferences: Remove unused class member
- preferences: Check if channel itself exists instead of check property
- screen: Review image loader memory management
- image-loader: Review cache management
- Add keywords to .desktop files (Fixes #50)
- screen: Take window scaling into account when drawing (Fixes #71)
- Remove obsolete GNOME default-app file (Fixes #109)
- Add "Open File Manager Here" action (Fixes #133)
- Properly manage default encoding (Fixes #128)
- Move general include in private.h
- dropdown: Disable systray icon on Wayland
- Fix startup with GDK_BACKEND=x11 (Fixes #177)
- shortcuts: Restore broken action toggle-menubar
- shortcuts: Fix non-consumed key event for show-menubar
- main: Allow GTK to parse its options first (Fixes #216)
- search: Add missing sanity check
- Use GLib logging functions and do not translate warnings
- Fix typo
- Remove obsolete CHECK_VERSION()
- Use g_new() instead of malloc()
- Fix Xfconf memory management
- search-dialog: Fix memory leak
- Remove extra separator at the end of context menu
- Missing shortcut keys in the standalone preferences dialog (Issue
#198)
- Apply 1 suggestion(s) to 1 file(s)
- Enable kinetic scrolling in VteTerminal
- Extend --disable-server description wrt. process model
- End all full sentences with a period
- Drop obsolete --disable-server translations
- prefs-dialog: Fix untranslated strings
- Add sixel support
- Add icons at missing sizes, clean up SVG metadata
- build: Fix autoconf warnings
- build: Add GLib requirement
- Add accel entries for scrolling pages (Issue #221)
- Remove documentation for dead anti-aliasing option
- Make strings translatable (Issue #222)
- Fix shortcuts-editor include
- Indentation
- Support hyperlinks (Issue #21)
- fix typo
- Fix argument type for xfce_shortcuts_editor_new
- fix background_notify
- fixed typo
- Remove disable-help preference.
- MR: !51 transitioned to Xfconf (#134)
- typos in MR !48 fixed
- Remove all references to terminal-preferences.glade
- Remove one more mention of terminal-preferences.glade
- Remove trailing slash
- Remove terminal-preferences-ui.h from makefile
- Remove terminal-preferences.glade
- MR: !48 shortcuts editor embedded into preferences-dialog (#195)
- MR: !48 preferences-dialog rewritten in C (#195)
- MR: !46 Change in implementation for TAB accels (#150)
- Implementation of MiscShiftArrowsToScroll as accelerators.
- Add PCRE2 build dependency
- Remove libxfce4ui 4.17 version guards
- Replace with xfce_gtk_menu_append_separator
- Tweak toolbar
- Translation Updates:
  , Albanian, Arabic, Armenian (Armenia), Basque, Belarusian,
  Bulgarian, Catalan, Chinese (China), Chinese (Taiwan), Croatian,
  Czech, Danish, Dutch, Eastern Armenian, English (Australia), English
  (United Kingdom), Estonian, Finnish, French, Galician, German, Greek,
  Hebrew, Hungarian, Icelandic, Indonesian, Interlingue, Italian,
  Japanese, Kazakh, Korean, Lithuanian, Malay, Norwegian Bokmål,
  Occitan (post 1500), Persian (Iran), Polish, Portuguese, Portuguese
  (Brazil), Romanian, Russian, Serbian, Slovak, Slovenian, Spanish,
  Swedish, Thai, Turkish, Ukrainian
jperkin pushed a commit that referenced this pull request Sep 1, 2023
## BumpVer 2023.1126

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

## BumpVer 2023.1125

- Add [#188][gh_i188]: Add `--tag-scope=<SCOPE>` to support separate versioning for branches.
- Add [#185][gh_i185]: Add `--tag-message=<TMPL>` parameter and `tag_message` configuration option.
- Fix [#209][gh_i209]: Make `--no-tag-commit` ommit `--follow-tags`.
jperkin pushed a commit that referenced this pull request Oct 23, 2023
This is the biggest update ever, with 36 new features, 24 bug fixes,
and 3 performance improvements.

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

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

1.12.0.1 - Andreas Abel, 2023-04-02
* Make show_command more robust to special characters and only quote when
  necessary. (Chris Wendt, PR #229.)
* Tested with GHC 8.2 - 9.6 (cabal) and GHC 8.10 - 9.6 (stack).

1.12.0 - Andreas Abel, 2023-02-27
* Rework ShellCmd and ShellCommand instances to support String arguments:
  Issue #143 fixed by Cunning Defenstrator in PR #221.

  This involves a breaking change in classes CmdArg and ShellArg: Method
  toTextArg has been replaced by toTextArgs.

  Sample migration:

    #if MIN_VERSION_shelly(1,12,0)
    -- new
    import Shelly (toTextArgs)
    snoc opts arg = opts ++ toTextArgs arg
    #else
    -- old
    import Shelly (toTextArg)
    snoc opts arg = opts ++ [ toTextArg arg ]
    #endif

* Dropped GHC 8.0 to get rid of deprecated LANGUAGE IncoherentInstances.
* Builds with GHC 8.2 - 9.6.

1.11.0 - Andreas Abel, 2023-01-24
* Restore running of local scripts, e.g. cmd "./foo.sh": Issue #107 fixed
  by Alfredo di Napoli in PR #216.
* Builds with GHC 8.0 - 9.4.

1.10.0.1 - Andreas Abel, 2023-01-24
* Allow unix-compat-0.6.
* Builds -Wall warning-free with GHC 8.0 - 9.4.
jperkin pushed a commit that referenced this pull request Oct 30, 2023
0.11.11.2
* Compat with aeson 2.2

0.11.11.1
* For optparse-applicative-0.18: use pretty instead of text #216

0.11.11.0
* Fix ambiguous occurrence AesonException

0.11.10.0
* Undo previous change (breakage with aeson 2)

0.11.9.0
* Data.Yaml.Pretty: provide key-sorting function with path to parent object
  #206
jperkin pushed a commit that referenced this pull request Oct 31, 2023
texmath (0.12.8.4)
  * TeX reader: ignore `\allowbreak` (#230).
  * TeX reader: handle `*{5}{lr}` in array column specifier (#229).
  * OMML reader: allow `m:e` to be missing in `m:nary` (#228).
    Technically this is not allowed, according to the spec, but
    Word and LibreOffice seem to tolerate it.

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

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

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

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

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

texmath (0.12.7)
  * Add typst writer. New module: Text.TeXMath.Writers.Typst.
  * TeX reader: Support multilined environment. Closes #210.
jperkin pushed a commit that referenced this pull request Nov 6, 2023
Overview of changes in gnome-calculator 45.0.1
    * Retagging release

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Overview of changes in gnome-calculator 3.38.0

Overview of changes in gnome-calculator 3.37.92

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

Overview of changes in gnome-calculator 3.36.0

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

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

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

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

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

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

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

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

## Performance of withr

* `defer()` is now a thin wrapper around `base::on.exit()`. This is
  possible thanks to two contributions that we made to R 3.5:

  - We added an argument for FIFO cleanup: `on.exit(after = FALSE)`.
  - Calling `sys.on.exit()` elsewhere than top-level didn't work. This
    is needed for manual invokation with `deferred_run()`.

  Following this change, `defer()` is now much faster (although still
  slower than `on.exit()` which is a primitive function and about as
  fast as it gets). This also increases the compatibility of `defer()`
  with `on.exit()` (all handlers are now run in the expected order
  even if they are registered with `on.exit()`) and standalone
  versions of `defer()`.


## Breaking change

* When `source()` is used with a local environment, as opposed to
  `globalenv()` (the default), you now need to set
  `options(withr.hook_source = TRUE)` to get proper withr support
  (running `defer()` or `local_` functions at top-level of a script).
  THis support is disabled by default in local environments to avoid a
  performance penalty in normal usage of withr features.


## Other features and bugfixes

* `deferred_run()` now reports the number of executed expressions with
  a message.

* `deferred_run()` can now be run at any point in a knitr file (#235).

,* `local_tempfile()` now writes `lines` in UTF-8 (#210) and always uses
  `\n` for newlines (#216).

* `local_pdf()` and friends now correctly restore to the previously
  active device (#138).

* `local_()` now works even if withr isn't attached (#207).

* `local_par()` and `with_par()` now work if you don't set any parameters
  (#238).

* `with_language()` now properly resets the translation cache (#213).

* Fixes for Debian packaging.


# withr 2.5.2

* Fixes for CRAN checks.


# withr 2.5.1

* Fixes for CRAN checks.
jperkin pushed a commit that referenced this pull request Feb 14, 2024
v0.20.1

What's Changed

    Switch to GitHub Actions CI. by @patrickt in #166
    Add the same PR template as for tree-sitter-javascript by @mjambon in #169
    Fixed CRLF behavior for tests by @ahelwer in #188
    Fix CRLF behavior mismatch during error recovery by @ahelwer in #189
    Endless methods by @aibaars in #190
    Add forwarded parameters/arguments by @aibaars in #191
    Disable C++ exceptions when compile for wasm32-wasi by @glebpom in #192
    Pattern matching by @aibaars in #193
    Improve grammar after the introduction of case-in pattern matching by @aibaars in #197
    Add parenthesized_pattern by @aibaars in #198
    Ruby 3.1 features by @aibaars in #201
    Update to Node 16 by @mattmassicotte in #206
    C bindings by @mattmassicotte in #199
    Parser improvements by @aibaars in #207
    CI: use windows-2019 for now by @aibaars in #209
    Add named rules for the various call operators by @aibaars in #211
    Update Makefile by @mattmassicotte in #213
    Allow newer tree-sitter upstream library. by @patrickt in #215
    Bump tree-sitter version to 0.20 by @hendrikvanantwerpen in #214
    Fix parse error in 'foo! if condition' by @aibaars in #216
    Parser improvements: != operator and key: [line_break] by @aibaars in #220
    Some improvements to the parser by @aibaars in #222
    Wrap class, module, method, and block bodies in a named node by @npezza93 in #224
    Parser improvments: quoted heredocs and short-hand interpolations by @aibaars in #225
    Add body field for end-less methods by @aibaars in #226
    Swift bindings by @mattmassicotte in #227
    fix: rename reserved word “arguments” by @drwpow in #229
    Bump versions in #208
    Anonymous (hash) splat arguments by @aibaars in #233
    One-line pattern matching by @aibaars in #194
    Scanner: do not skip LINE_BREAKs before .. and ... by @aibaars in #238
    Fix non-termination in parser by @aibaars in #239
    Fix scanning of division vs regex before line ending by @aibaars in #246
    Fix 'case' with newlines before expression by @aibaars in #247
jperkin pushed a commit that referenced this pull request Apr 3, 2024
Features / Improvements ✨
    Links should be "openable" (#43)
    Add support for previewing images in room scrollback (#108)
    Enable sending strikethrough text (#141)
    Support composing messages in an external editor (#155)
    Add support for logging in with SSO (#160)
    Add new command for logging out of iamb session (#162)
    Support custom sorting for room and user lists (#170)
    feat: desktop file for GUI environment launchers (#178)
    Add a new :chats window that lists both DMs and Rooms (#184)
    Add support for desktop notifications (#192)
    Support coloring entire message with the user color (#193)
    Indicate and sort on rooms with unread messages (#205)
    Support following the .well-known entries for a username's domain (#209)
    Add support for threads (#216)
    Add support for custom key macros (#217)
    Support displaying shortcodes instead of Emojis in messages (#222)
    Support configuring user gutter width (#223)
    Enable autolinking when rendering Markdown (#226)
    Support notifications via terminal bell (#227)
    Support loading a TOML configuration (#229)
    Add commands for importing and exporting room keys (#233)

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

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

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

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

Released on 2024-04-27

* Drop Python 3.7 support, add Python 3.12 support
* `#221 <https://github.com/Kozea/cairocffi/pull/225>`_:
  Add environment variable to set folder where DLLs are installed on Windows
* `#225 <https://github.com/Kozea/cairocffi/pull/225>`_:
  Use Ruff instead of Flake8 and isort


Version 1.6.1
.............

Released on 2023-07-24

* `#217 <https://github.com/Kozea/cairocffi/issues/217>`_:
  Repair installation with PyInstaller


Version 1.6.0
.............

Released on 2023-06-12

**This version uses a new CFFI mode that may break your program.**

CairoCFFI now uses Flit for packaging and is also distributed as a Python
wheel.

Please test carefully and don’t hesitate to report issues before using it in
production.

* `#216 <https://github.com/Kozea/cairocffi/pull/216>`_:
  Use ABI-level in-line CFFI mode


Version 1.5.1
.............

Released on 2023-04-15

* `#212 <https://github.com/Kozea/cairocffi/issues/212>`_:
  Bring back XCB support during wheel generation


Version 1.5.0
.............

Released on 2023-03-17

* `#106 <https://github.com/Kozea/cairocffi/issues/106>`_,
  `#200 <https://github.com/Kozea/cairocffi/issues/200>`_:
  Fallback to manual PNG file creation on hardened systems
* `#210 <https://github.com/Kozea/cairocffi/pull/210>`_:
  Use pyproject.toml for packaging and remove other useless files


Version 1.4.0
.............

Released on 2022-09-23

* `#205 <https://github.com/Kozea/cairocffi/pull/205>`_:
  Use pikepdf to parse generated PDF
* `#171 <https://github.com/Kozea/cairocffi/pull/171>`_:
  Don’t use deprecated pytest-runner anymore


Version 1.3.0
.............

Released on 2021-10-04

* `2cd512d <https://github.com/Kozea/cairocffi/commit/2cd512d>`_:
  Drop Python 3.6 support
* `#196 <https://github.com/Kozea/cairocffi/pull/196>`_:
  Fix import `constants.py` import
* `#169 <https://github.com/Kozea/cairocffi/pull/169>`_:
  Add extra library name "cairo-2.dll"
* `#178 <https://github.com/Kozea/cairocffi/pull/178>`_:
  Workaround for testing date string with cairo 1.17.4
* `#186 <https://github.com/Kozea/cairocffi/pull/186>`_:
  Fix link in documentation
* `#195 <https://github.com/Kozea/cairocffi/pull/195>`_:
  Fix typo in documentation
* `#184 <https://github.com/Kozea/cairocffi/pull/184>`_,
  `a4fc2a7 <https://github.com/Kozea/cairocffi/commit/a4fc2a7>`_:
  Clean .gitignore


Version 1.2.0
.............

Released on 2020-10-29

* `#152 <https://github.com/Kozea/cairocffi/pull/152>`_:
  Add NumPy support
* `#143 <https://github.com/Kozea/cairocffi/issues/143>`_:
  Make write_to_png function work on hardened systems
* `#156 <https://github.com/Kozea/cairocffi/pull/156>`_:
  Use major version name to open shared libraries
* `#165 <https://github.com/Kozea/cairocffi/pull/165>`_:
  Don’t list setuptools as required for installation


Version 1.1.0
.............

Released on 2019-09-05

* `#135 <https://github.com/Kozea/cairocffi/pull/135>`_,
  `#127 <https://github.com/Kozea/cairocffi/pull/127>`_,
  `#119 <https://github.com/Kozea/cairocffi/pull/119>`_:
  Clean the way external libraries are found
* `#126 <https://github.com/Kozea/cairocffi/pull/126>`_:
  Remove const char* elements from cdef
* Support Cairo features up to 1.17.2
* Fix documentation generation


Version 1.0.2
.............

Released on 2019-02-15

* `#123 <https://github.com/Kozea/cairocffi/issues/123>`_:
  Rely on a recent version of setuptools to handle VERSION


Version 1.0.1
.............

Released on 2019-02-12

* `#120 <https://github.com/Kozea/cairocffi/issues/120>`_:
  Don't delete _generated modules on ffi_build import


Version 1.0.0
.............

Released on 2019-02-08

6 years after its first release, cairocffi can now be considered as stable.

* Drop Python 2.6, 2.7 and 3.4 support
* Test with Python 3.7
* Clean code, tests and packaging
jperkin pushed a commit that referenced this pull request May 1, 2024
v20.4.0
=======

Features
--------

- Replace deprecated ssl.wrap_socket with SSLContext.wrap_socket and update examples in connection.py docs. (#216)


v20.3.1
=======

No significant changes.


v20.3.0
=======

Features
--------

- Added support for SASL login. (#195)


Bugfixes
--------

- Better handling of escape sequences in message tags. (#205)


v20.2.0
=======

Features
--------

- Require Python 3.8 or later.


v20.1.1
=======

* #213: Pinned against jaraco.text 3.10 due to change in interface.

v20.1.0
=======

* #196: In irc.bot, avoid hanging idle when the first connection
  attempt fails.

v20.0.0
=======

* ``SingleServerIRCBot`` no longer accepts ``reconnection_interval``
  as a parameter.

* Added server support for NOTICE commands.

* Require Python 3.7 or later.

v19.0.1
=======

* #176: Fix issues with version number reporting. Restored version
  version number reporting in bot and client.

v19.0.0
=======

* ``irc.client`` no longer exposes a ``VERSION`` or ``VERSION_STRING``.
  To get the version, call ``importlib.metadata.version('irc')`` directly.

v18.0.0
=======

* Require Python 3.6 or later.

17.1
====

* Rely on
  `importlib_metadata <https://pypi.org/project/importlib_metadata/>`_
  for loading version from metadata. Removes implicit dependency on
  setuptools and pkg_resources.

* #158: The AsyncIO server now accepts a connection factory to
  enable features like SSL and IPv6 support.

* #155: ``SimpleIRCClient`` now has a ``dcc`` method for initiating
  and associating a DCCConnection object with the client.
  ``DCCConnection.listen`` now accepts a ``address`` parameter.
  Deprecated ``SimpleIRCClient.dcc_listen`` and
  ``SimpleIRCClient.dcc_connect`` in favor of the better separation
  of concerns. Clients should replace::

    client.dcc_connect(addr, port, type)
    client.dcc_listen(type)

  with::

    client.dcc(type).connect(addr, port)
    client.dcc(type).listen()


17.0
====

* Removed ``irc.buffer`` module, deprecated in 14.2.
* #153: Drop support for Python 3.3 and 2.7.

16.4
====

* Long Term Service release for Python 2.7.
* #149: ``AioConnection.connect`` moved to coroutine, added
  disconnect handling for AsyncIO.

16.3
====

* #140: Methods now use 'connection' and 'event' for parameter names.

* #135 via #144: Added AsyncIO implementation.

16.2.1
======

* Package refresh and cleanup.

16.2
====

* #133: In ``irc.server``, add support for ISON.

16.1
====

* #131: Add ``Connection.encode`` and ``Connection.transmit_encoding``
  to enable encodings other than UTF-8 to be used when transmitting
  text.

16.0
====

* Removed deprecated ``execute_*`` methods on ``Connection``
  and ``Reactor`` as introduced in 15.0.

* Fixed link in README.

15.1.1
======

* New ``send_items`` method takes star args for simplicity
  in the syntax and usage.

15.1
====

* Introduce ``ServerConnection.send_items``, consolidating
  common behavior across many methods previously calling
  ``send_raw``.

15.0.6
======

* Now publish `documentation <https://python-irc.readthedocs.io/>`_
  to Read The Docs.

15.0.5
======

* #119: Handle broken pipe exception in IRCClient _send() (server.py).

15.0.4
======

* #116: Correct invocation of execute_every.

15.0.3
======

* #115: Fix AttributeError in ``execute_at`` in scheduling
  support.

15.0.2
======

* #113: Use preferred scheduler in the bot implementation.

15.0.1
======

* Deprecated calls to Connection.execute_*
  and Reactor.execute_*. Instead, call the
  equivalently-named methods on the reactor's
  scheduler.

15.0
====

* The event scheduling functionality has been decoupled
  from the client.Reactor object. Now the reactor will
  construct a Scheduler from the scheduler_class property,
  which must be an instance of irc.schedule.IScheduler.

  The ``_on_schedule`` parameter is no longer accepted
  to the Reactor class. Implementations requiring a
  signal during scheduling should hook into the ``add``
  method of the relevant scheduler class.

* Moved the underlying scheduler implementation to
  `tempora <https://pypi.org/project/tempora>`_, allowing
  it to be re-used for other purposes.

14.2.2
======

* Issue #98: Add an ugly hack to force ``build_sphinx``
  command to have the requisite libraries to build
  module documentation.

14.2.1
======

* Issue #97: Restore ``irc.buffer`` module for
  compatibility.
* Issue #95: Update docs to remove missing or
  deprecated modules.
* Issue #96: Declare Gitter support as a badge in the
  docs.

14.2
====

* Moved buffer module to `jaraco.stream
  <https://pypi.python.org/pypi/jaraco.stream>`_ for
  use in other packages.

14.1
====

* ``SingleServerIRCBot`` now accepts a ``recon``
  parameter implementing a ReconnectStrategy. The new
  default strategy is ExponentialBackoff, implementing an
  exponential backoff with jitter.
  The ``reconnection_interval`` parameter is now deprecated
  but retained for compatibility. To customize the minimum
  time before reconnect, create a custom ExponentialBackoff
  instance or create another ReconnectStrategy object and
  pass that as the ``recon`` parameter. The
  ``reconnection_interval`` parameter will be removed in
  future versions.
* Issue #82: The ``ExponentialBackoff`` implementation
  now protects from multiple scheduled reconnects, avoiding
  the issue where reconnect attempts accumulate
  exponentially when the bot is immediately disconnected
  by the server.

14.0
====

* Dropped deprecated constructor
  ``connection.Factory.from_legacy_params``. Use the
  natural constructor instead.
* Issue #83: ``connection.Factory`` no longer attempts
  to bind before connect unless a bind address is specified.

13.3.1
======

* Now remove mode for owners, halfops, and admins when the user
  is removed from a channel.
* Refactored the Channel class implementation for cleaner, less
  repetitive code.
* Expanded tests coverage for Channel class.

13.3
====

* Issue #75: In ``irc.bot``, add support for tracking admin
  status (mode 'a') in channels. Use ``channel.is_admin``
  or ``channel.admins`` to identify admin users for a channel.

* Removed deprecated irc.logging module.

13.2
====

* Moved hosting to github.

13.1.1
======

* Issue #67: Fix infinite recursion for ``irc.strings.IRCFoldedCase``
  and ``irc.strings.lower``.

13.1
====

* Issue #64: ISUPPORT PREFIX now retains the order of
  permissions for each prefix.

13.0
====

* Updated ``schedule`` module to properly support timezone aware
  times and use them by default. Clients that rely on the timezone
  naïve datetimes may restore the old behavior by overriding the
  ``schedule.now`` and ``schedule.from_timestamp`` functions
  like so:

    schedule.from_timestamp = datetime.datetime.fromtimestamp
    schedule.now = datetime.datetime.now

  Clients that were previously patching
  ``schedule.DelayedCommand.now`` will need to instead patch
  the aforementioned module-global methods. The
  classmethod technique was a poor interface for effectively
  controlling timezone awareness, so was likely unused. Please
  file a ticket with the project for support with your client
  as needed.

12.4.2
======

* Bump to jaraco.functools 1.5 to throttler failures in Python 2.

12.4
====

* Moved ``Throttler`` class to `jaraco.functools
  <https://bitbucket.org/jaraco/jaraco.functools>`_ 1.4.

12.3
====

* Pull Request #33: Fix apparent escaping issue with IRCv3 tags.

12.2
====

* Pull Request #32: Add numeric for WHOX reply.
* Issue #62 and Pull Request #34: Add support for tags in message
  processing and ``Event`` class.

12.1.2
======

* Issue #59: Fixed broken references to irc.client members.
* Issue #60: Fix broken initialization of ``irc.server.IRCClient`` on
  Python 2.

12.1.1
======

* Issue #57: Better handling of Python 3 in testbot.py script.

12.1
====

* Remove changelog from package metadata.

12.0
====

* Remove dependency on jaraco.util. Instead depend on surgical packages.
* Deprecated ``irc.logging`` in favor of ``jaraco.logging``.
* Dropped support for Python 3.2.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant