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

mit-krb5 default plugins broken? #74

Closed
coyhile opened this issue Jan 26, 2018 · 4 comments
Closed

mit-krb5 default plugins broken? #74

coyhile opened this issue Jan 26, 2018 · 4 comments

Comments

@coyhile
Copy link

coyhile commented Jan 26, 2018

Trying to bootstrap an MIT KDC based on mit-krb5-1.14.6, one sees the following behavior:

[root@krbtest ~]# kdb5_util create
Loading random data
Initializing database '/var/krb5kdc/principal' for realm 'LOCAL',
master key name 'K/M@LOCAL'
You will be prompted for the database Master Password.
It is important that you NOT FORGET this password.
Enter KDC database master key:
Re-enter KDC database master key to verify:
kdb5_util: Unable to load requested database module 'db2': plugin symbol 'kdb_function_table' not found while creating database '/var/krb5kdc/principal'
[root@krbtest ~]#

Looking further, we see from truss (in relevant part):

93041:  ioctl(3, TCSETS, 0xFFFFBF7FFFDFF900)            = 0
93041:  sigaction(SIGINT, 0xFFFFBF7FFFDFF7E0, 0x00000000) = 0
93041:  close(3)                                        = 0
93041:  time()                                          = 1516974864
93041:  stat("/etc/krb5.conf", 0xFFFFBF7FFFDFF670)      = 0
93041:  time()                                          = 1516974864
93041:  time()                                          = 1516974864
93041:  stat("/opt/local/lib/krb5/plugins/kdb/db2", 0xFFFFBF7FFFDFF770) Err#2 ENOENT
93041:  open("/usr/lib/locale/en_US.UTF-8/LC_MESSAGES/SUNW_OST_OSLIB.mo", O_RDONLY) Err#2 ENOENT
93041:  stat("/opt/local/lib/krb5/plugins/kdb/db2.so", 0xFFFFBF7FFFDFF770) Err#2 ENOENT
93041:  fstat(2, 0xFFFFBF7FFFDFE520)                    = 0
kdb5_util93041: write(2, " k d b 5 _ u t i l", 9)               = 9
: 93041:        write(2, " :  ", 2)                             = 2
Unable to load requested database module 'db2': plugin symbol 'kdb_function_table' not found93041:      write(2, " U n a b l e   t o   l o".., 92)      = 92
 93041: write(2, "  ", 1)                               = 1
while creating database '93041: write(2, " w h i l e   c r e a t i".., 25)      = 25
/var/krb5kdc/principal93041:    write(2, " / v a r / k r b 5 k d c".., 22)      = 22

And looking at the directory called out there, we see

[root@krbtest ~]# ls /opt/local/lib/krb5/plugins/kdb/
libdb2.la  libdb2.so
[root@krbtest ~]#

Creating a symlink allows the operation to complete successfully:

[root@krbtest ~]# ln -s /opt/local/lib/krb5/plugins/kdb/libdb2.so /opt/local/lib/krb5/plugins/kdb/db2.so
[root@krbtest ~]#  kdb5_util create
Loading random data
Initializing database '/var/krb5kdc/principal' for realm 'LOCAL',
master key name 'K/M@LOCAL'
You will be prompted for the database Master Password.
It is important that you NOT FORGET this password.
Enter KDC database master key:
Re-enter KDC database master key to verify:
[root@krbtest ~]#
@coyhile
Copy link
Author

coyhile commented Jan 26, 2018

The container where I was testing is base-64-lts@17.4.0. I'll see if I can repro with the previous LTS image. ETA: same behavior with base-64-lts@16.4.1

@coyhile
Copy link
Author

coyhile commented Jan 26, 2018

I built this outside the pkgsrc framework by hand, and I do not see the behavior there. In fact, the output of the default generated Makefile from configure yields lib/krb5/plugins/kdb/db2.so.

Is it this that causes the problems here?

jperkin pushed a commit that referenced this issue Jan 28, 2018
2018/01/26: Version 6.7.1

2018/01/25: disable USE_TRY_IN_MATCH_LIMIT by default
2018/01/24: implement mechanism of try-in-match-limit
2018/01/24: #76: rename EXPORT to ONIGURUMA_EXPORT
2018/01/15: #73: update for automake 1.15.1
2018/01/14: #74: update description of README
2018/01/10: #72: Correct spelling and grammar in FAQ (English)
2017/12/25: remove USE_COMBINATION_EXPLOSION_CHECK codes
@mamash
Copy link

mamash commented Feb 1, 2018

Not just that single patch, but the entire patch set that injects support for pkgsrc libtool, likely. That's something that's usually desirable, because a central sanctioned libtool helps avoid all kinds of peculiar problems that different upstreams may suffer from. I'll investigate.

jperkin pushed a commit that referenced this issue Apr 5, 2018
1.48   2018-03-26
- The last release would die if Sub::Util was not available, but this should
  just be an optional requirement. Fixed by Paul Howarth. Fixes GH #77. PR
  #78.

1.47   2018-03-25
- DateTime::Duration->multiply now only allows integer
  multipliers. Implemented by Dan Stewart. PR #73.

- Added is_last_day_of_quarter() and is_last_day_of_year()
  methods. Implemented by Dan Stewart. PR #72.

- When an exception was thrown while adding a duration the object could be
  left in a broken state, with the duration partially applied. Subsequent
  addition or subtraction would produce the wrong results. Reported by Pawel
  Pabian. GH #74.
jperkin pushed a commit that referenced this issue Jul 8, 2018
Upstream changes:
1.706     2018-07-06 20:20:00-05:00 America/Chicago

    [Fixed]

    - The File, Stderr, and Stdout adapters now correctly allow being
      set to the "emergency" log level threshold. Previously, trying to
      only allow "emergency" log lines would result in all logs being
      written (and a warning about an invalid log level being set).
      Thanks @alabamapaul! [Github #74]
jperkin pushed a commit that referenced this issue Aug 16, 2018
Changelog:
[v3.2.1][] - 2017-08-17
-----------------------

### Fixes
* Issue #101: Bump ABI major number due to incompatible change in struct
  when adding option annotation/comments in [v.3.1][]: `1.1.0 -> 2.0.0`


[v3.2][] - 2017-06-03
---------------------

### Fixes
* Issue #96: Add Windows/mingw compatible `fmemopen()` replacement
* Issue #98: Fix v3.1 regression, segfault on comment-only lines


[v3.1][] - 2017-05-24
---------------------

### Changes
* Refactored `CFGF_IGNORE_UNKNOWN` support, libConfuse now properly
  ignores any type and sub-section without the need for declaring an
  `__unknown` option.  When the flag is set all unknown options,
  including unknown sub-sections with, in turn, unknown options, are
  now fully ignored
* Issue #69: New API for creating titled sections at runtime,
  by Jonas Johansson @jonasj76
* Issue #92: Support for option annotation/comments.  Every option can
  now have a comment, which is both read and written from/to file.
  Disabled by default, enable with `CFGF_COMMENTS` flag in `cfg_init()`
* ABI bump: 1.0.0 --> 1.1.0, due to new functionality

### Fixes
* Build unit tests statically for easier debugging
* Issue #21: Major refactor of lexer to fix memory leaks, `cfg_free()`
  now properly releases all memory.  By Joachim Nilsson @troglobit
* Issue #64: Fixed MSVC build errors, by George Koskeridis @Gikoskos
* Issue #65: SIGSEGV when parsed default values are used with include,
  by Dmitri Zhabinski
* Issue #71: Fix syntax in rpm spec file, for CentOS/RHEL7
* Issue #73: Adjust gettext version requirement to build on CentOS/RHEL7.
  GNU gettext v0.18.2.1 update `AM_GNU_GETTEXT()` to use AC_PROG_MKDIR_P
  instead of `AM_PROG_MKDIR_P`, but v0.18.1.1 is included in Ubuntu 12.04
  LTS.  Fortunately Ubuntu 14.04 LTS ships v0.18.3.1 and Debian Jessie
  ships v0.19.3.  Unfortunately, CentOS7 and RHEL7 ships v0.18.2.1, so
  for best compat. level at this point in time we require v0.18.2.
* Issue #74: Fix typos in documentation, by Luca Ceresoli
* Issue #79: Add `fmemopen()` compat for *BSD, including macOS
jperkin pushed a commit that referenced this issue Aug 30, 2018
Upstream changes:
Changed in xts 0.11-0:

o  Fix make.index.unique() to always return a unique and sorted index. Thanks
   to Chris Katsulis for the report and example (#241).

o  Add window.xts() method and completely refactor the internal binary search
   function it depends on. Thanks to Corwin Joy for the PR, tests, review, and
   patience (#100, #240).

o  Better axis tick mark locations for plots. Thanks to Dirk Eddelbuettel for
   the report (#246). Also incorporate axTicksByTime2() into axTicksByTime() to
   reduce code duplication from the migration of quantmod::chart_Series() to
   xts::plot.xts() (#74).

o  Add details to plot.xts() parameters that are periodicity, now that RStudio
   has argument completion. Thanks to Evelyn Mitchell for the PR (#154).

o  periodicity() now warns instead of errors if the xts object contains less
   than 2 observations (#230).

o  first() and last() now keep dims when they would otherwise be dropped by a
   regular row subset. This is consistent with head() and tail(). Thanks to
   Davis Vaughan for the report (#226).

o  Fix subset when ISO8601 string is outside the valid range, so it returns no
   data instead of all rows (#96).

o  Avoid partial name matches from parse.side() (inside .parseISO8601())
   results that are passed to firstof() and lastof(). Thanks to @gp2x for the
   report and the patch (#231).

o  na.locf.xts() now loops over columns of multivariate objects in C code,
   instead of in R. This should improve speed and memory performance. Thanks to
   Chris Katsulis and Tom Andrews for their reports and patches (#232, #233,
   #234, #235, #237).

o  Change plot.xts() default 'pch = 0' (rectangles) to 'pch = 1' (circles) so
   it looks more like base and zoo plots (#203).

Changed in xts 0.10-2:

o  na.locf.xts() and na.omit.xts() now support character xts objects. Thanks to
   Ken Williams and Samo Pahor for the reports (#42).

o  na.locf.xts() now honors 'x' and 'xout' arguments by dispatching to the next
   method (#215). Thanks to Morten Grum for the report.

o  coredata.xts() now functions the same as coredata.zoo() on zero-length
   objects, and only removes xts-related attributes (#223). Thanks to Vincent
   Guyader for the report.

o  plot.xts() no longer ignores 'col.up' and 'col.dn' when 'type="h"' (#224).
   Thanks to Charlie Friedemann for the report. This was inadvertently broken
   as part of the fix for #210.
@sjorge
Copy link

sjorge commented Sep 23, 2018

I also hit this bug while trying to setup a quick test kdc

Loading random data
Initializing database '/var/krb5kdc/principal' for realm 'ACHERON.BE',
master key name 'K/M@ACHERON.BE'
You will be prompted for the database Master Password.
It is important that you NOT FORGET this password.
Enter KDC database master key:
Re-enter KDC database master key to verify:
kdb5_util: Unable to load requested database module 'db2': plugin symbol 'kdb_function_table' not found while creating database '/var/krb5kdc/principal'```

The service to start the kdc and kadmind are also missing from the mit-krb5 package.

jperkin pushed a commit that referenced this issue Sep 24, 2018
1.10.6 (2018-08-22 15:11 UTC)

Changelog:

* PR #70: Fix notice undefined variable metadata_dir
* PR #71: fix Warning: count(): Parameter must be an array or an object
* PR #74: Bug #23744 Remove is_executable check
* Bug #23744: The is_executable check in the Which method when run on Windows
  is unnecessary
* PR #75: Migrate old while(list() = each()) constructs to foreach
* PR #76: Fix PHP Warning: "continue" targeting switch is equivalent to
  "break"
* PR #77: proxy server auth
* PR #72: Correctly authenticate at proxy server
* PR #78: array or Countable error in 7.2
jperkin pushed a commit that referenced this issue Nov 10, 2018
Version 1.1.0
-------------

Released 2018-10-26

-   Change default signing algorithm back to SHA-1. (`#113`_)
-   Added a default SHA-512 fallback for users who used the yanked 1.0.0
    release which defaulted to SHA-512. (`#114`_)
-   Add support for fallback algorithms during deserialization to
    support changing the default in the future without breaking existing
    signatures. (`#113`_)
-   Changed capitalization of packages back to lowercase as the change
    in capitalization broke some tooling. (`#113`_)

.. _#113: pallets/itsdangerous#113
.. _#114: pallets/itsdangerous#114


Version 1.0.0
-------------

Released 2018-10-18

YANKED

*Note*: This release was yanked from PyPI because it changed the default
algorithm to SHA-512. This decision was reverted in 1.1.0 and it remains
at SHA1.

-   Drop support for Python 2.6 and 3.3.
-   Refactor code from a single module to a package. Any object in the
    API docs is still importable from the top-level ``itsdangerous``
    name, but other imports will need to be changed. A future release
    will remove many of these compatibility imports. (`#107`_)
-   Optimize how timestamps are serialized and deserialized. (`#13`_)
-   ``base64_decode`` raises ``BadData`` when it is passed invalid data.
    (`#27`_)
-   Ensure value is bytes when signing to avoid a ``TypeError`` on
    Python 3. (`#29`_)
-   Add a ``serializer_kwargs`` argument to ``Serializer``, which is
    passed to ``dumps`` during ``dump_payload``. (`#36`_)
-   More compact JSON dumps for unicode strings. (`#38`_)
-   Use the full timestamp rather than an offset, allowing dates before
    2011. (`#46`_)
-   Detect a ``sep`` character that may show up in the signature itself
    and raise a ``ValueError``. (`#62`_)
-   Use a consistent signature for keyword arguments for
    ``Serializer.load_payload`` in subclasses. (`#74`_, `#75`_)
-   Change default intermediate hash from SHA-1 to SHA-512. (`#80`_)
-   Convert JWS exp header to an int when loading. (`#99`_)

.. _#13: pallets/itsdangerous#13
.. _#27: pallets/itsdangerous#27
.. _#29: pallets/itsdangerous#29
.. _#36: pallets/itsdangerous#36
.. _#38: pallets/itsdangerous#38
.. _#46: pallets/itsdangerous#46
.. _#62: pallets/itsdangerous#62
.. _#74: pallets/itsdangerous#74
.. _#75: pallets/itsdangerous#75
.. _#80: pallets/itsdangerous#80
.. _#99: pallets/itsdangerous#99
.. _#107: pallets/itsdangerous#107
jperkin pushed a commit that referenced this issue Jan 20, 2019
Patch submitted by Frederic Cambus, who takes maintainership.

Upstream changelog
==================

2018-12-10 1.2

    NEW: Dockerfile (#76)
    UPD: add examples of empty arrays/objects to manual (#74)
    NEW: support -e to ignore empty stdin; contributed by Robi Karp
    NEW: object-path support (#57)
jperkin pushed a commit that referenced this issue Dec 11, 2019
Upstream changes (from CHANGELOG.md):

v0.16.2 (2019-12-04)

Merged pull requests:

* Fix regression introduced by frozen symbol fix #86 (sebjacobs)

v0.16.1 (2019-11-08)

Merged pull requests:

* Remove ruby 1.9.2 from travis build matrix #84 (unasuke)
* Make Memoist.escape_punctuation compatible with MRI 2.7 #82 (casperisfine)
* add 2.5.1 to travis #77 (matthewrudy)
* Remove ghit.me #74 (matthewrudy)
* Place sample code for execution in README.md #73 (3nan3)
* Require Ruby >=1.9.2 #69 (matthewrudy)
jperkin pushed a commit that referenced this issue Jan 3, 2020
Upstream changes (from NEWS):

v1.8.5

* Security fix for CVE-2019-20205 (#127), integer overflow problem,
  reported by @sleicasper.

* Security fix for CVE-2019-20056 (#126), assertion failure problem,
  reported by @sleicasper.

* Security fix for CVE-2019-20094 (#125), heap overflow problem,
  reported by @cuanduo.

* Security fix for #124, illegal longjump() call problem,
  reported by @cuanduo.

* Serucity fix for #74 and #123, access violation problem,
  reported by @hongxuchen and SuhwanSong.

* Security fix for #122, heap overflow problem,
  reported by @SuhwanSong.

* Security fix for CVE-2019-20023(#117, #119, #120), memory leaks problem,
  reported by @SuhwanSong and @gutiniao.

* Strip first flag check in LZW compression function for issue #118,
  reported by @yoichi
jperkin pushed a commit that referenced this issue Mar 25, 2020
Update ruby-mixlib-config to 3.0.6.
pkgsrc change: add "USE_LANGUAGES=	# none".


3.0.6 (2019-12-29)

* Substitute require for require_relative #80 (tas50)


3.0.5 (2019-11-14)

* Add BuildKite PR Testing #75 (tas50)
* Remove Travis PR testing + add foundation team as the project owner #76
  (tas50)
* Test on Windows and use the smaller containers #77 (tas50)
* Do not crash when loading undefined context from hash #79 (marcparadise)


3.0.1 (2019-04-23)

* update travis, drop ruby < 2.5, major version bump #73 (lamont-granquist)
* Allow Ruby 2.4 / Update github templates #74 (tas50)

2.2.18 (2018-12-17)

* Add github issue and PR templates #68 (tas50)
* Resolve chefstyle and expeditor issues #69 (tas50)
* Expand ruby testing in Travis #70 (tas50)
* Standardize the gemfile and rakefile #71 (tas50)
* Only ship the required library files in the gem artifact #72 (tas50)
jperkin pushed a commit that referenced this issue May 10, 2020
Changelog:
8 April 2020: Wouter
	- Tag for 4.3.1rc2.

7 April 2020: Wouter
	- Merge #91 by gearnode: nsd-control-setup recreate certificates.
	  The '-r' option recreates certificates.  Without it it creates them
	  if they do not exist, and does not modify them otherwise.

6 April 2020: Wouter
	- Merge #90 by phicoh: O_CLOEXEC should be FD_CLOEXEC.
	- Merge #92 by tonysgi: Fix typo.

2 April 2020: Wouter
	- Tag for 4.3.1rc1.

1 April 2020: Wouter
	- Fix for whitespace in minimal responses test for FreeBSD.

25 March 2020: Wouter
	- Merge #86 from noloader: Use precious variables for GREP, EGREP,
	  SED, AWK, LEX and YACC.
	- For #86: Fix that programs loaded after CFLAGS and stuff is
	  set, specifically the compiler, so that it can work if it needs
	  special flags from that.  Fix that lex only needs to support -i
	  if actually defined, otherwise the output included in the source
	  tarball can be used.
	- Merge #72 from noloader: Increase Travis testing coverage

23 March 2020: Wouter
	- Fix unterminated ifdef in nsd.h.
	- Fix unknown u_long in util.c for Issue #80 .

20 March 2020: Wouter
	- Merge #83 from noloader: Fix GNU HURD sched_setaffinity compile.
	- Fix #82: print error when system does not have setaffinity.
	- Fix #80: NetBSD and implicit declaration of reallocarray.
	- Fix for #80: Fix reallocarray test to define before include.
	- Fix for #80: Define alternatives for IFNAMSIZ if it does not exist.

19 March 2020: Wouter
	- Fix #76: cpuid typedef for Hurd, DragonflyBSD compile.
	- Fix #75: configure test for sched_setaffinity, and use
	  cpuset_setaffinity otherwise.  Also test for presence of sysconf.
	- Fix #74: GNU Hurd fix cast from pointer to integer of different size.
	- Fix for #74, #75: cpuset test for header contents and provide code.
	- Fix #78: Fix SO_SETFIB error on FreeBSD.

18 March 2020: Wouter
	- Fix #70: error: 'fd_set' undeclared.
	- Fix #71: error: 'for' loop initial declaration used outside C99
	  mode.
	- Fix to move declarations out of for loops in event test too.
	- Fix to move declarations out of for loops in popen3 test too.
	- Another fix to move declaration out of for loop for event test.
	- Fix to move declarations out of for loops in cutest regex display.
jperkin pushed a commit that referenced this issue Jun 3, 2020
2020-05-31 -- 0.9.4

  * Fixed: testrunner: No longer crashes when compiled with NDEBUG (GitHub #67)
  * Fixed: CMake: Support GTest 1.8.0 (GitHub #68)
      Thanks to Ryan Schmidt for the related report!
  * Fixed: CMake: Use variable GTEST_INCLUDE_DIRS (with plural "S") rather than
      GTEST_INCLUDE_DIR (GitHub #79, #81)
      Thanks to Wouter Beek for the related report!
  * Improved: CMake: Send config summary to stdout, not stderr (GitHub #72)
      Thanks to Scott Donelan for the patch!
  * Improved: Make -DURIPARSER_BUILD_TESTS=OFF unlock compilation without
      a C++ compiler; thanks to Fabrice Fontaine for the patch! (GitHub #69)
  * Added: Functions to make UriUri[AW] instances independent of the original
      URI string (GitHub #77 and #78)
      New functions:
        uriMakeOwner[AW]
        uriMakeOwnerMm[AW]
  * Added: CMake option URIPARSER_ENABLE_INSTALL to toggle installation of
      files, defaults to "ON" (GitHub #74, #75)
      Thanks to Scott Donelan for the patch!
  * Soname: 1:26:0
jperkin pushed a commit that referenced this issue Aug 15, 2020
3.2.5
Added
  IMAP Daemon: added switch to control the diffential state reload
    (mailbox_update_strategy=2), more information in dbmail.conf,
    mailbox_update_strategy_2_max_iterations [#81]
  IMAP Daemon: added switch to control UNSEEN first message in SELECT commands

Changed
  IMAP Daemon: allow reporting UID COPY success in case of various failures
    (except quota), reporting issues are sent to error log as warnings [#87]

Optimizations
  optimizing differential state [#81]
  optimizing fetch message headers [#85]

Issues
  fixing issue related to copy message in regard to RFC 3501, section 6.4.8
  fixing issues related group_concat for PostgreSql [#75], [#78]
  fixing issue related to lastRowId [#71]
  fixing issues related with differential update [#70], [#73]
  fixing proc not being used in BSD systems [#74]
  IMAP Daemon: segmentation fault [#68]

3.2.4
Added
  IMAP Daemon: mailbox-update-strategy switch (see dbmail.conf), experimental
  support for application_name in database connection uri
  IMAP Daemon: mailbox_search_strategy switch (see dbmail.conf)

Changed
  systemd unit changed to type notify
  mailbox state is build using only valid messages [#39]

Optimizations
  IMAP Daemon: optimization of sql queries in relation to message headers
  libevent increased priority on accepting new connections
  libevent optimization on reading and writing to sockets
  simplify libzdb configuration (AC_CHECK_HEADERS)

Issues
  fix segmentation fault in imap_append_hash_as_string [#12]
  dbmail-users: sql issue on deleting alias user [#18]
  IMAP Daemon: generation of invalid BODYSTRUCTURE in Content-Type field [#23]
  fix support for jemalloc latest version [#35]
  IMAP Deamon: BYE Command now offers optional message even on normal operations
  IMAP Deamon: idle message now offers optional message (* OK Still Here)
  IMAP Daemon: random hangs when single user is connected [#37]
  fix fd leaks
  IMAP Daemon: fix MODIFIED keyword, too many '[' and ']'
  fix segmentation fault in find_end_of_header
  fix gcc 10 compilation issue, duplicated definition
jperkin pushed a commit that referenced this issue Sep 16, 2020
Pkgsrc changes:
 * Added a patch to cope with fromStatT on NetBSD
 * Added a patch to cope with docker client default settings (build
   also on NetBSD)

Upstream changes:

1.5.3 (August 27th, 2020)

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

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

## 1.5.1

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

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

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

## 1.5.0
### July 21st, 2020

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

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

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

## 1.4.3 (TBD)

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

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

## 1.4.2 (May 21st, 2020)

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

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

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

## 1.4.1 (April 30th, 2020)

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

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

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

## 1.4.0 (April 7th, 2020)

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

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

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

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

## 1.3.6 (May 21st, 2020)

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

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

## 1.3.5 (April 28th, 2020)

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

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

## 1.3.4 (March 19th, 2020)

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

## 1.3.3 (March 5th, 2020)

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

## 1.3.2 (January 22nd, 2020)

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

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

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

## 1.3.1 (December 18th, 2019)

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

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

## 1.3 (November 14th, 2019)

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

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

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

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

## 1.2.4 (November 7th, 2019)

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

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

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

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

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

0.5.0
======
- Bump required GTK+ in `mousepad-prefs-dialog.ui` (#78)
- Fix an oversight in updating actions state (#76)
- Remove TODO file (#74)
- Ensure that opening modes are excluded from translation
- Translation Updates:
  Albanian, Bulgarian, Chinese (China), Dutch, French, German, Greek,
  Hebrew, Indonesian, Italian, Norwegian Bokmål, Portuguese,
  Portuguese (Brazil), Slovenian, Spanish, Japanese

0.4.90
======
Release candidate for upcoming stable version 0.5.

- Dependency Changes:
  - GLib >= 2.45.8
  - GTK+ >= 3.20
  - GtkSourceView >= 3.24
  - GTK+ 2 support has been removed
  - GtkSourceView 2 support has been removed

- New Features:
  - Add keybindings to show the menubar temporarily when hidden
  - Add command line option and setting for file opening mode
  - Improve encoding dialog
  - Add regex search

- Discontinued Features
  - multi-select (GTK+ 2)

- Appearance Changes
  - Replace `$HOME` with a tilde in displayed filename
  - Add new default keybindings and reveal some hidden ones
  - Search bar tweaks
  - Make tabs expanded for consistency with other Xfce programs
  - Add copyright and license info to About dialog
  - Improve label texts of "Find and Replace" dialog and search bar
  - Make the statusbar smaller
  - Add new app icon and switch to reverse DNS name
  - Save the state of the "highlight all" button in the search bar
  - Update window title of Find and Replace dialog
  - Add "Wrap around" check box to Find and Replace dialog (Bug #11290)
  - Infer filetype from shebang line (Bug #10514)
  - Show info when Templates directory does not exist (Bug #10486)

- Code Refactoring
  - Restore the use of the file `accels.scm`
  - Code refactoring around saving and restoring window geometry
  - Improve save-related actions
  - Fully switch to GtkApplication
  - Avoid deprecation warnings 5: CSS related
  - Avoid deprecation warnings 4: GtkUIManager and GtkAction
  - GtkStock
  - Avoid deprecation warnings 2: miscellaneous
  - Avoid deprecation warnings 1: alignment and padding
  - Avoid compilation warnings other than deprecation
  - Remove support for GTK+2
  - Switch to README.md and foreign automake mode
  - Add basic GitLab pipeline

- Bug Fixes:
  - Remove README.md from DISTCLEANFILES, it's not generated
  - Fix crash when dragging tab to GSV widget
  - Change GtkTextView wrap mode to GTK_WRAP_WORD_CHAR
  - Initialize the recent manager if needed at startup
  - Prevent search bar from overlapping the document
  - Properly disconnect signal handlers
  - Fix make distcheck
  - Fix color modifications in search entries
  - Do not open an empty document when encoding failed
  - Do not search for previously selected text
  - Update search field with selected text
  - Bug #16717: Move from exo-csource to xdt-csource
  - Remember last save location (Bug #14165)
  - Use g_get_user_dir to get Templates directory (Bug #11048)
  - Sync remaining menu actions to their settings (Bug #11046)
  - Install appstream in metainfo folder (Bug #11200)
  - Add appdata file (Bug #11200)
  - Fix building with `--enable-dbus --disable-gtk3`
  - Change visibility of fullscreen bars after small delay (Bug #9735)
  - Fix return type of fullscreen settings (Bug #9735)

- 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, Norwegian
  Nynorsk, Occitan (post 1500), Polish, Portuguese, Portuguese
  (Brazil), Romanian, Russian, Serbian, Slovak, Slovenian, Spanish,
  Swedish, Telugu, Thai, Turkish, Ukrainian, Uyghur
jperkin pushed a commit that referenced this issue Dec 14, 2020
# rprojroot 2.0.2 (2020-11-15)

## Features
- In `find_root_file()`, if the first path component is already an
  absolute path, the path is returned unchanged without referring to
  the root. This allows using both root-relative and absolute paths in
  `here::here()`. Mixing root-relative and absolute paths in the same
  call returns an error (#59).

- `find_root_file()` propagates `NA` values in path components. Using
  tidyverse recycling rules for path components of length different
  from one (#66).

- `has_file()` and `has_file_pattern()` gain `fixed` argument (#75).
- New `is_drake_project` criterion (#34).
- Add `subdir` argument to `make_fix_file()` (#33, @BarkleyBG).
- Update documentation for version control criteria (#35, @uribo).

## Breaking changes

- `Has_file()` and `has_dir()` now throw an error if the `filepath`
  argument is an absolute path (#74).

- `has_basename()` replaces `has_dirname()` to avoid confusion (#63).

- `as_root_criterion()` and `is_root_criterion()` replace `as.` and
  `is.`, respectively. The latter are soft-deprecated.

- `thisfile()` and related functions are soft-deprecated, now
  available in the whereami package (#43).

## Bug fixes

- The `is_dirname()` criterion no longer considers sibling directories (#44).

## Internal

- Use testthat 3e (#70).
- The backports package is no longer imported (#68).
- Re-license as MIT (#50).
- Move checks to GitHub Actions (#52).

- Availability of suggested packages knitr and rmarkdown, and pandoc,
  is now checked before running the corresponding tests.
jperkin pushed a commit that referenced this issue Dec 23, 2020
- Fix for #72, newly generated test suite refers to file using
  $TEXTTEST_ROOT now to make it easier to version control
- Fix for #75, improve naming of controls and handle lack of source file
  in Import Files dialog
- Fix for #74, focus now in first combo box or text field in dialogs,
  not just first text field. Mainly for Import Files.
- Fixing preview of new or missing files that cannot be decoded using
  the default encoding
- Fix an issue when starting sge slave
- Fix issue when the config queue capacity is None
- Restore functionality to have mode-dependent window sizes
  (dynamic_screen_height etc) which was lost in 4.0
- Possibility to increase parallelism via queue_system_max_capacity
- Make sure we can terminate running tests
jperkin pushed a commit that referenced this issue Feb 23, 2021
Changelog:
PRJ_VER=1.5.1
SUMMARY=Fix the Ctrl, Numpad and selection keys handling
REDHAT_BUGZILLA=1337185
[Changes]
- Enhancement:
- Fix:
  + GH issue #73: Ctrl, Alt, Ins causes the pre-edit duplicate commit
  + GH issue #74: Failed to clean the PreEdit when changing input focus
  + GH issue #79: Failed to input space when "space-as-selection"
  + GH issue #87 Modify dropdown menu for selecting keys
  + GH issue #88 Numpad should be able to select
  + RHBZ #1337185 - Cannot add phrases with Ctrl
    A.k.a GH issue #63
    Thank for contribution from hiunnhue
- Acknowledge:
  + Obata Akio contributed pull request 71, 72, 73
  + hiunnhue contributed pull request 75, 76, 77, 78, 80, 81, 82, 83, 84, 86,
    87, 90, 91, 92, 94
  + hiunnhue fixed issue 73, 74, 79, 87, 88, 90, 91, 92, 94
jperkin pushed a commit that referenced this issue Apr 22, 2021
Version 1.68.0
--------------

- Closed bugs and merge requests:

  * 40.rc session crashes in gjs on unlocking (sometimes) [#387, !588, Marco
    Trevisan]
  * 40.rc: installed-tests installed despite explicitly disabled [#388, !589,
    Philip Chimento]

Version 1.67.3
--------------

- Closed bugs and merge requests:

  * System.exit() doesn't work inside signal handler [#19, !565, Evan Welsh]
  * GdkEvent subtypes trigger assert in Gtk4 [#365, !566, Evan Welsh]
  * Replace g_memdup [#375, !567, Philip Chimento]
  * 1.67.2: build fails with gcc 11 [#376, !568, Philip Chimento]
  * Warnings introspecting array of boxed type as signal argument. [#377, !569,
    Carlos Garnacho]
  * Add list command to debugger [!571, Nasah Kuma]
  * Assertion failure in enqueuePromiseJob [#349, !572, Philip Chimento]
  * in interpreter Ctrl-c should exit inner shell if stuck [#98, !574, Philip
    Chimento]
  * Compiler ambiguity in enum-utils.h on operator overloading [#368, !576,
    Chun-wei Fan]
  * Fix GJS_DISABLE_JIT not fully disabling JIT [!575, Ivan Molodetskikh]
  * Error running gjs built with prefix: g_object_new_is_valid_property: object
    class 'GjsContext' has no property named 'program-path' [#381, !577, Sonny
    Piers]
  * Various maintenance [!578, !586, Philip Chimento]
  * Add some profiling labels [!579, Ivan Molodetskikh]
  * Some installed tests (introspection) segfault when GTK isn't available
    [#383, !580, Olivier Tilloy]
  * Installed tests do not install the js/modules subdir [#384, !581, Olivier
    Tilloy]
  * Installed tests fail because expected path doesn't include project name
    [#385, !582, Olivier Tilloy]
  * 1.67.2: Regress test hangs / timeouts on i686 [#379, !583, Marco Trevisan]
  * object: Do not call any function on disposed GObject pointers [!585, Marco
    Trevisan]

Version 1.67.2
--------------

- New language features: Importing ES modules is now supported, both statically
  with import statements and dynamically with the import() function. For more
  information on how to use modules, see:
  https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/import
  Four built-in modules exist: cairo, gettext, gi, and system. Except for gi,
  they work similarly to the old-style modules imports.cairo, imports.gettext,
  and imports.system. Consult the documentation in doc/Modules.md on how to use
  them.

- The debugger now has a "list" command which works very similarly to its GDB
  equivalent.

- New API: GObject.ParamSpec.jsobject() works like the other GObject.ParamSpec
  types, and allows you to have a GObject property whose value is a JavaScript
  object (plain object, Date, Array, etc.)

- New API: System.programPath is the name of the JS program that GJS is running,
  or null if there isn't one (for example, in the interactive interpreter.)

- New API: System.programArgs is an array of arguments given to the JS program.
  It is the same as ARGV but is consistently always present. (ARGV was not
  defined in the interactive interpreter or when embedding GJS in a C program.)

- Closed bugs and merge requests:

  * Support Native JSObject GType for Signals and Properties [!305, Marco
    Trevisan, Philip Chimento]
  * Add 'system.programPath' API. [!443, Evan Welsh]
  * ESM: Enable static imports. (Part 3) [!450, Evan Welsh, Philip Chimento]
  * Refactor ARGV handling and add `system.programArgs` [!455, Evan Welsh,
    Philip Chimento]
  * Function make the object more C++ friendly [!514, Marco Trevisan]
  * ESM: Enable dynamic imports. [!525, Evan Welsh, Philip Chimento]
  * Remove JSClass macros from Ns, GType, and Cairo types [!549, Philip
    Chimento]
  * various documentation improvements [!551, Sonny Piers]
  * Replace remaining mentions of window with globalThis [!552, Sonny Piers]
  * add .editorconfig file [!553, Sonny Piers]
  * Display current line of source code when displaying current frame in
    debugger [!554, Nasah Kuma]
  * doc: add Clapper and Flatseal to thirty party applications written in GJS
    [!555, Sonny Piers]
  * Multiline template literals are missing newlines when entered at interactive
    prompt [#371, !556, Ales Huzik]
  * function: Remove JSClass macros [!558, Philip Chimento, Marco Trevisan]
  * Missing classes on global. [#372, !559, Philip Chimento]
  * arg: fix build failure with glib main branch [!560, Michael Catanzaro]
  * Update to Jasmine 2.9.1 [!561, Evan Welsh]
  * Various maintenance [!562, Philip Chimento]
  * Add list command to debugger [!563, Nasah Kuma]
  * Upgrade to Jasmine 3.6.0 [!564, Evan Welsh]

- Various refactors in preparation for BigInt support in gobject-introspection
  [Marco Trevisan]

Version 1.67.1
--------------

- The debugger now has a "backtrace full" command which works very similarly to
  its GDB equivalent.

- The GObject.ParamFlags.CONSTRUCT_ONLY flag is now correctly enforced, when
  using it on GObject classes defined in JavaScript. This might break code that
  was incorrectly trying to set a property that it had previously defined as
  construct-only. The workaround is to remove the CONSTRUCT_ONLY flag.

- Fixed exception when calling GObject.Type().

- Several performance improvements.

- Progress on ES Modules.

- Closed bugs and merge requests:

  * gobject: Handle CONSTRUCT_ONLY flag [!377, Florian Müllner]
  * Add native module registry to global (Part 2) [!456, Evan Welsh]
  * testGIMarshalling: Expand test coverage for flags [!479, Simon McVittie]
  * Private Objects: Use native allocators and structs [!494, Marco Trevisan]
  * Pass-by-reference GValue arguments do not work right [#74, !496, !507, Marco
    Trevisan]
  * Templated-data-only GjsAutoPointer (and use it more around) [!504, Marco
    Trevisan]
  * Error in function "_init()" in module "modules/overrides/GObject.js" [#238,
    !508, Nina Pypchenko]
  * fails to build on 32-bit [#357, !511, Michael Catanzaro]
  * Revert "arg-cache: Save space by not caching GType" [!512, Jonas Dreßler]
  * gi/wrapperutils: Move gjs_get_string_id() into resolve() implementations
    [!513, Jonas Dreßler]
  * updates on eslint configuration [!517, Nasah Kuma]
  * Update CONTRIBUTING.md about the runner system failure [!518, Nasah Kuma]
  * Switch to eslint-plugin-jsdoc and remove lint-condo [!520, #359, Evan Welsh,
    Philip Chimento]
  * gi: Check property before access [!521, Florian Müllner]
  * testGIMarshalling: Actually run the GPtrArray utf8 tests [!522, Marco
    Trevisan]
  * Add more documents for "imports" and "imports.gi" [!526, wsgalaxy]
  * overrides/Gtk: Set BuilderScope in class init [!527, Florian Müllner]
  * gi/arg-cache: Only skip array length parameter once [!528, Florian Müllner]
  * Copyright conformance with Reuse Software spec [!529, Philip Chimento, Evan
    Welsh]
  * Remove JSClass macros [!530, !533, !537, Philip Chimento]
  * Avoid pulling from DockerHub in CI [!531, Philip Chimento, Marco Trevisan]
  * Use GNOME-specific rules with cppcheck [!532, Philip Chimento]
  * Fedora 33 CI images [!535, Philip Chimento]
  * Fix IWYU bugs [!536, Philip Chimento]
  * Reduce bandwidth usage in CI, and pick a more accurate base for diff checks
    [!538, Philip Chimento]
  * debugger: Make '$$' mean the last value [!539, Philip Chimento]
  * Add codespell CI job [#362, !540, !541, !547, Björn Daase]
  * Various maintenance [!542, !548, Philip Chimento]
  * fix readline build on certain systems [!543, Jakub Kulík]
  * build: Require gobject-introspection 1.66.0 [!546, Philip Chimento]
  * Add backtrace full command to debugger [#208, !550, Nasah Kuma]

- Various refactors for type safety [Marco Trevisan]

- Various maintenance [Philip Chimento]

Version 1.66.2
--------------

- Performance improvements and crash fixes backported from the development
  branch.

- Bug fixes enabling use of GTK 4.

- Closed bugs and merge requests:

  * Error in function "_init()" in module "modules/overrides/GObject.js" [#238,
    !508, Nina Pypchenko]
  * Revert "arg-cache: Save space by not caching GType" [!512, Jonas Dreßler]
  * gi/wrapperutils: Move gjs_get_string_id() into resolve() implementations
    [!513, Jonas Dreßler]
  * overrides/Gtk: Set BuilderScope in class init [!527, Florian Müllner]
  * fix readline build on certain systems [!543, Jakub Kulík]
jperkin pushed a commit that referenced this issue Apr 26, 2021
v1.0
Released on 2020-07-18, Nelson Mandela International Day.

Added
* intercalate for DList (#43, Jacob Leach)
* Traversable instance for DList (#45, Veronika Romashkina)
* Data.DList.Internal for the DList implementation, Data.DList.Unsafe
  for exporting the DList constructor UnsafeDList and record label
  unsafeApplyDList (#55, #59)
* Data.DList.DNonEmpty (#60)
* GitHub Action for uploading a release (#74)
* dlist-bench, a benchmark package (#71)

Changed
* stimes for DList defined with stimesMonoid (#46, Janek Spaderna)
* Type of tail: DList a -> DList a to DList a -> [a] (#69)
* GitHub Action for continuous integration testing to replace Travis-CI (#47, #50)
* GHC warning and error improvements (#72, #73)
* Improved documentation (#55, #70, #76, #77)

Removed
* list :: b -> (a -> DList a -> b) -> DList a -> b (#69)


v0.8.0.8
Released on 2020-04-02, World Autism Awareness Day.

Added
* toList in the Foldable instance for DList (#36, Ryan Scott)

Changed
* QuickCheck upper bound: 2.14 to 2.15 (a7ea60d)

Fixed
* Documented time complexity of head for DList (#35, Simon Jakobi)
jperkin pushed a commit that referenced this issue Jun 4, 2021
glibmm is a C++ interface for the devel/glib2 library.

This package follows the 2.68 API.

Changes compared to devel/glibmm:

2.68.0 (stable):
This is the first stable release in the glibmm-2.68 ABI series.
It is parallel-installable with the glibmm-2.4 ABI.

The tarball for 2.68.0 has been created with 'meson dist'.
If you build with Autotools from the tarball, please read the relevant
part of the README file.

Glib:
* PropertyProxyConnectionNode::connect_changed():
  Fix using without property name
  (Daniel Boles) Issue #74 (wswfc), merge request !35
* Remove BalancedTree
  (Kjell Ahlstedt)

Gio:
* ListStore: Accept interfaces
  (Andreas Persson) Merge request !38
* MenuModel: Make MenuAttribute and MenuLink enum class
  (Kjell Ahlstedt)
* Add TlsClientConnectionImpl and TlsServerConnectionImpl
  (Kjell Ahlstedt)
* SocketClient::signal_event(): Fix wrapping of 'connection' parameter
  (Kjell Ahlstedt) Issue #73 (smilingthax)

gmmproc:
* Add optional decl_prefix parameter to _WRAP_GERROR and _WRAP_ENUM
  Used for adding GLIBMM_API or similar for MS Visual C++
  (Chun-wei Fan) Merge request !32
* Allow decorating comparison operators (for Visual Studio builds)
  (Chun-wei Fan) Merge request !33
* _CLASS_BOXEDTYPE, _CLASS_OPAQUE_COPYABLE: Fix move assignment
  (Kjell Ahlstedt) Issue #76 (misos1)
* Decorate private generated classes with __declspec when building
  with Visual Studio
  (Chun-wei Fan) Merge request !39, !41
* generate_wrap_init.pl.in: Use g_type_ensure(SomeClass::get_type())
  to ensure that get_type() is called
  (Kjell Ahlstedt)

Build:
* Use __declspec(dllexport) consistently when building glibmm with
  Visual Studio
  (Chun-wei Fan) Merge request !32
* Meson build: Set default value of the 'warnings' option to 'min'
  (Kjell Ahlstedt)
* Improve NMake support
  (Chun-wei Fan)
* Improve Visual Studio support
  (Chun-wei Fan) Merge request !37
* docs/reference/: Update for Doxygen >= 1.8.16
  (Kjell Ahlstedt)
* Meson build: Fix versioning on macOS
  (Kjell Ahlstedt) Pull request libsigcplusplus#65 (Tom Schoonjans)
* Meson build: Fix detection of macOS
  (Tom Schoonjans) Merge request !43
* Change the ABI to glibmm-2.68
  (Kjell Ahlstedt)

Documentation:
* Meson build: Add missing Glib::Value and Variant documentation
  (Kjell Ahlstedt)


2.65.3: (unstable):
Distro packagers should probably not package this yet.

Tests:
* glibmm_buildfilename: Add some tests
  (Kjell Ahlstedt) Issue #71 (Kalev Lember)

Build:
* Meson build: Install generate_extra_defs.h
  (Kjell Ahlstedt) Issue #70 (Jan Alexander Steffens)


2.65.2: (unstable):
Distro packagers should probably not package this yet.

Glib:
* Add missing #includes
  (Kjell Ahlstedt) Issue #69 (Kalev Lember)


2.65.1: (unstable):
Distro packagers should probably not package this yet.

Glib:
* Add get_user_runtime_dir()
  (scx) Issue #57, merge request !14
* Add get_host_name()
  (scx) Issue #58, merge request !15
* MainContext: Add push/pop/get_thread_default()
  (Kjell Ahlstedt) Issue #56 (Yackie-Yang)
* Add StdStringView and UStringView
  Use them in build_filename() and other functions
  (Thomas Holder, Kjell Ahlstedt) Issue #34
  (Thomas Holder) Issue #64, #65
* Regex::match(): Avoid using string after deletion
  (Thomas Holder) Issue #66, merge request !25
* Add Glib::canonicalize_filename()
  (Kjell Ahlstedt) Issue #59 (Patrick Storz)
* Binding: get_source() and get_target() return ObjectBase*
  (Kjell Ahlstedt) Issue #63 (Daniel Boles)
* ustring: Fix insert(iterator, In, In)
  (Thomas Holder) Merge request !19
* Value: Adding static_assert() for template parameter
  (Pavlo Solntsev) Merge request !23
* Error: Derive from std::exception, remove Glib::Exception
  (Kjell Ahlstedt) Issue #23 (Daniel Boles)
* Binding: Keep a binding alive even without a RefPtr
  (Kjell Ahlstedt) Issue #62 (Daniel Boles)

Gio:
* DBus::Connection: Make the wrap() function thread-safe
  (Kjell Ahlstedt) Issue #56 (Yackie-Yang)
* SettingsSchemaSource: Add list_schemas()
  Add a create(), wrapping new_from_directory()
  (Daniel Boles) Issue #19, merge request !20
* DBus::Message::get_unix_fd_list(): Add refreturn
  (Kjell Ahlstedt) Issue #68 (kr.woaini)

Tests:
* Add glibmm_ustring_compare test
  (Thomas Holder) Issue #65
* Add glibmm_regex test
  (Thomas Holder) Issue #66, merge request !25
* Add glibmm_binding test
  (Daniel Boles) Merge request !18

gmmproc:
* Add optional decl_prefix parameter to _CLASS_BOXEDTYPE,
  _CLASS_BOXEDTYPE_STATIC, _CLASS_GOBJECT, _CLASS_INTERFACE,
  _CLASS_OPAQUE_COPYABLE, _CLASS_OPAQUE_REFCOUNTED, _WRAP_GERROR
  Used for adding GLIBMM_API or similar for MS Visual C++
  (Chun-wei Fan)

Build:
* Change the ABI to glibmm-2.66
  (Kjell Ahlstedt)
* Add Meson support
  (Chun-wei Fan, Kjell Ahlstedt) Merge request !27
* Drop gendef from Windows builds
  (Chun-wei Fan) Issue #12 (Mikhail Titov), merge request !29

Documentation:
* Correct spelling of spawn_async_with_pipes()
  (Mike Fleetwood) Merge request !16
* Glib::Binding: Several doc improvements
  (Daniel Boles) Merge request !18
* Glib::Binding: Explain why SlotTransform takes GValue*
  (Kjell Ahlstedt) Issue #61 (Daniel Boles)
* Gio::AsyncResult: Improve the class description
  (Kjell Ahlstedt) Issue #27 (Alberto Mardegan)
jperkin pushed a commit that referenced this issue Aug 31, 2021
# 2.2.0

* Header values (of version made by and external attributes) are now
  correctly read and written on big-endian systems (#68).

* `zip_list()` now also returns `crc32` and `offset` (#74, @jefferis).
jperkin pushed a commit that referenced this issue Jun 2, 2022
Upstream changes:
#-#-#-#-#-#-#-#-#-#    Changes in TTR version 0.24.2    #-#-#-#-#-#-#-#-#-#


BUG FIXES

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


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


BUG FIXES

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

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

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

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

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

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

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


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


SIGNIFICANT USER-VISIBLE CHANGES

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

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


NEW FEATURES

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


BUG FIXES

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

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

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

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

  - HMA() threw an error when 'n' was an odd number. This was because the
    first call to WMA() used 'n = n / 2' which caused 'n' to not be an
    integer. Thanks to GitHub user dragie for the report. (#76)
jperkin pushed a commit that referenced this issue Jul 26, 2022
Remove some unused build dependencies.

3.2.0 (stable)

* Allow slots with rvalue reference parameters
  (Slava Andrejev) Pull requests #74, #77

Build:
* Meson build: Perl is not required by new versions of mm-common
  (Kjell Ahlstedt)
* NMake Makefiles: Support building with VS2022
  (Chun-wei Fan)

Documentation:
* Upgrade the manual from DocBook 4.1 to DocBook 5.0
  (Kjell Ahlstedt)
* ptr_fun(), mem_fun() docs: Remove left-overs from sigc++-2.0
  (Kjell Ahlstedt)
* Fix links to sigc::slot and sigc::signal
  (Kjell Ahlstedt)
jperkin pushed a commit that referenced this issue Sep 1, 2022
2.0.0.1 (2021-11-02)
====================

- The underlying universal functions in ``erfa.ufunc`` now work with an ``out``
  argument also if the required output is a structured array. [gh-76]

2.0.0 (2021-05-17)
==================

- Bundled liberfa version update to v2.0.0. This includes new functionality,
  and hence pyerfa 2.0.0 cannot run with previous versions of liberfa.
- ``erfa.dt_eraLDBODY`` has been corrected to ensure that the 'pv' entry is
  now of type ``erfa.dt_pv``, so that cross-assignments with that dtype work
  correctly. [gh-74]
- ``erfa_generator`` now also generates a ``test_ufunc.py`` file that
  runs all the C code tests on the ufuncs, thus verifying the code
  wrapping worked correctly. As part of that, the ability to give
  specific output file names has been removed, as it was not used.
  (Note: these changes have no effect on use of PyERFA.) [gh-71]

1.7.3 (2021-04-25)
==================

- Bundled liberfa version update to v1.7.3.
- Fixed a bug that caused the output of ``rx``, ``ry``, and ``rz`` to be
  boolean rather than float for some compilers/OS. [gh-72]

1.7.2 (2021-01-25)
==================

- Bundled liberfa version update to v1.7.2.
- The classproperty decorator is now thread-safe
  (backport astropy/astropy#11224).
jperkin pushed a commit that referenced this issue Sep 1, 2022
v0.10.2 - What's Changed

    Rewrite CI-CD in #77
    Update dependencies in #76
    Use a "forked" rcdom module in #78

v0.10.1 - What's Changed

    Update dependencies in #68
    Support multiple keybindings to a single command in #70
    Implement different view traits/helpers in #71
    Refactor link handler codes in #72
    Code refactor and cleanup part I in #74
    Code refactor and clean part II in #75

    Breaking changes
    -Modified the list of shortcuts and default shortcuts for each view.
     Please refer to the shorcuts README or the example config file for
     migration to the new version.
jperkin pushed a commit that referenced this issue Sep 4, 2022
0.9.2 (2022-06-07)

* Add dig and fetch to Sawyer::Resource (#74)
jperkin pushed a commit that referenced this issue Feb 27, 2023
0.6.0 (2023-02-22)

What's Changed

* feat: implement bidirectional adjacency graph #78. New class
  BidirectionalAdjacencyGraph which implements the protocol defined in
  module BidirectionalGraph.

* Bump actions/configure-pages from 2 to 3 by @dependabot in #74

* Fix: codeclimate badge by @monora in #77

* fix(doc): #79 class comments in generated doc by @monora in #80
jperkin pushed a commit that referenced this issue Mar 3, 2023
jperkin pushed a commit that referenced this issue Mar 16, 2023
1.21.0 (2023-02-13)

* Support for Ruby 3.0.0, 3.1.0, 3.2.0. (Drop support for Ruby 2.2 and
  earlier.) #66

* Support Rails 6 and Rails 7. (Drop support for Rails 3.x, 4.x) #66, #72

* Fix RMagick 5.0 compatible. #66

* Infinite loop has been resolved. #68, #74

* Fixed a bug that caused the x position to shift when an <img> tag was
  behind a <li> tag in HTML. #74

* fix: Incorrect characters when copying out of a generated PDF with Unicode
  fonts. #71

* Suppresses output for Circle(), Ellipse(), PieSector(), and PieSectorXY()
  when the radius is 0. #67

* Don't change an object while iterating over it #59 (by thegcat)

* fix : bidi bug #56 (by ahorek)

* Avoid rdoc stack level too deep (SystemStackError) in gem install. #76

* PDF example output option OUTPUT=true added #70

* Make the image file path acquisition process extensible #58 (by yui-har)
jperkin pushed a commit that referenced this issue Jun 5, 2023
# CHANGES IN xfun VERSION 0.39

- Fixed a bug that `protect_math()` fails to protect the starting `$$`
  that has leading white spaces.

- Added a function `strip_html()` to remove HTML tags and comments
  from text.

- The function `alnum_id()` will remove HTML tags and comments from
  text (using `strip_html()`) before converting it to an ID string.

- Added a function `env_option()` to retrieve an option value from
  `options()`. If the option does not exist there, check the
  environment variables. This provides a way for users to set an
  option via either `options()` or an environment variable.

# CHANGES IN xfun VERSION 0.38

- Added an object `download_cache`, which is a list of methods to
  download a URL, cache the result, retrieve the result from the
  cache, and clear the cache.

- Added an argument `default` to `url_filename()` to provide a default
  filename when it cannot be determined from the URL.

- Added a function `yaml_load()` to read YAML data when the **yaml**
  package is not available. It only supports a limited number of data
  types and is supposed to be used as a fallback method. See the help
  page `?xfun::yaml_load` for details.

- Added a function `yaml_body()` to split a document into YAML
  metadata and the body.

- `is_arm64()` also supports Linux now (thanks, @eitsupi, #74).

- `is_blank()` returns a logical vector of the same length as the
  input vector now, indicating if each element of the input is
  blank. Previously it returns a logical scalar indicating whether
  *all* elements are blank. If you want the old behavior, you can use
  `all(is_blank())`.
jperkin pushed a commit that referenced this issue Jun 22, 2023
# fansi Release Notes

## v1.0.4

CRAN compiled code warning suppression release.

* Fix void function declarations and definitions.
* Change `sprintf` to `snprintf`.

## v1.0.3

* Address problem uncovered by gcc-12 linters, although the issue itself could
  not manifest due to redundancy of checks in the code.

## v1.0.0-2

This is a major release and includes some behavior changes.

### Features

* New functions:
    * [#26](brodieG/fansi#26) Replacement forms of
      `substr_cl` (i.e `substr_ctl<-`).
    * `state_at_end` to compute active state at end of a string.
    * `close_state` to generate a closing sequence given an active state.
    * [#31](brodieG/fansi#31) `trimws_ctl` as an
      equivalent to `trimws`.
    * [#64](brodieG/fansi#64) `normalize_sgr` converts
      compound _Control Sequences_ into normalized form (e.g. "ESC[44;31m"
      becomes "ESC[31mESC[44m") for better compatibility with
      [`crayon`](https://github.com/r-lib/crayon).  Additionally, most functions
      gain a `normalize` parameter so that they may return their output in
      normalized form (h/t @krlmlr).
* [#74](https://github.com/brodieG/fansi/issues/74)`substr_ctl` and related
  functions are now all-C instead of a combination of C offset computations and
  R level `substr` operations.  This greatly improves performance, particularly
  for vectors with many distinct strings.  Despite documentation claiming
  otherwise, `substr_ctl` was quite slow in that case.
* [#66](brodieG/fansi#66) Improved grapheme support,
  including accounting for them in `type="width"` mode, as well as a
  `type="graphemes"` mode to measure in graphemes instead of characters.
  Implementation is based on heuristics designed to work in most common use
  cases.
* `html_esc` gains a `what` parameter to indicate which HTML special characters
  should be escaped.
* Many functions gain `carry` and `terminate` parameters to control how `fansi`
  generated substrings interact with surrounding formats.
* [#71](brodieG/fansi#71) Functions that write SGR and
  OSC are now more parsimonious (see "Behavior Changes" below).
* [#73](brodieG/fansi#73) Default parameter values
  retrieved with `getOption` now always have explicit fallback values defined
  (h/t @gadenbui).
* Better warnings and error messages, including more granular messages for
  `unhandled_ctl` for adjacent _Control Sequences_.
* `term.cap` parameter now accepts "all" as value, like the `ctl` parameter.

### Deprecated Functions

* All the "sgr" functions (e.g., `substr_sgr`, `strwrap_sgr`) are deprecated.
  They will likely live on indefinitely, but they are of limited usefulness and
  with the added support for OSC hyperlinks their name is misleading.
* `sgr_to_html` is now `to_html` with slight modifications to semantics; the old
  function remains and does not warn about unescaped "<" or ">" in the
  input string.

### Behavior Changes

The major intentional behavior change is to default `fansi` to always recognize
true color CSI SGR sequences (e.g. `"ESC[38;2;128;50;245m"`).  The prior
default was to match the active terminal capabilities, but it is unlikely that
the intent of a user manipulating a string with truecolor sequences is to
interpret them incorrectly, even if their terminal does.  `fansi` will continue
to warn in this case.  To keep the pre-1.0 behavior add `"old"` to the
`term.cap` parameter.

Additionally, `to_html` will now warn if it encounters unescaped HTML special
character "<" or ">" in the input string.

Finally, the 1.0 release is an extensive refactoring of many parts of the
SGR and OSC hyperlink controls (_Special Sequences_) intake and output
algorithms.  In some cases this means that some `fansi` functions will output
_Special Sequences_ slightly differently than they did before.  In almost all
cases the rendering of the output should remain unchanged, although there are
some corner cases with changes (e.g. in `strwrap_ctl` SGRs embedded in
whitespace sequences don't break the sequence).

The changes are a side effect of applying more consistent treatment of corner
cases around leading and trailing control sequences and (partially) invalid
control sequences.  Trailing _Special Sequences_ in the output is now omitted as
it would be immediately closed (assuming `terminate=TRUE`, the default).
Leading SGR is interpreted and re-output.

Normally output consistency alone would not be a reason to change behavior, but
in this case the changes should be almost always undetectable in the
**rendered** output, and maintaining old inconsistent behavior in the midst of a
complete refactoring of the internals was beyond my patience.  I apologize if
these behavior changes adversely affect your programs.

> WARNING: we will strive to keep rendered appearance of `fansi` outputs
> consistent across releases, but the exact bytes used in the output of _Special
> Sequences_ may change.

Other changes:

* Tests may no longer pass with R < 4.0 although the package should still
  function correctly.  This is primarily because of changes to the character
  width Unicode Database that ships with R, and many of the newly added grapheme
  tests touch parts of that database that changed (emoji).
* CSI sequences with more than one "intermediate" byte are now considered valid,
  even though they are likely to be very rare, and CSI sequences consume all
  subsequent bytes until a valid closing byte or end of string is encountered.
* `strip_ctl` only warns with malformed CSI and OSC if they are reported as
  supported via the `ctl` parameter.  If CSI and OSC are indicated as not
  supported, but two byte escapes are, the two initial bytes of CSI and OSCs
  will be stripped.
* "unknown" encoded strings are no longer translated to UTF-8 in UTF-8 locales
  (they are instead assumed to be UTF-8).
* `nchar_ctl` preserves `dim`, `dimnames`, and `names` as the base functions do.
* UTF-8 known to be invalid should not be output, even if present in input
  (UTF-8 validation is not complete, only sequences that are obviously wrong are
  detected).

### Bug Fixes

* Fix `tabs_as_spaces` to handle sequential tabs, and to perform better on very
  wide strings.
* Strings with invalid UTF-8 sequences with "unknown" declared encoding in UTF-8
  locales now cause errors instead of being silently translated into byte
  escaped versions (e.g. "\xf0\xc2" (2 bytes), used to be interpreted as
  "<f0><c2>" (four characters).  These now cause errors as they would have if
  they had had "UTF-8" declared encoding.
* In some cases true colors of form "38;2;x;x;x" and "48;2;x;x;x" would only be
  partially transcribed.

### Internal Changes

* More aggressive UTF-8 validation, also, invalid UTF-8 code points now advance
  only one byte instead of their putative width based on the initial byte.
* Reduce peak memory usage by making some intermediate buffers eligible for
  garbage collection prior to native code returning to R.
* Reworked internals to simplify buffer size computation and synchronization, in
  some cases this might cause slightly reduced performance.  Please report any
  significant performance regressions.
* `nchar_ctl(...)` is no longer a wrapper for `nchar(strip_ctl(...))` so that it
  may correctly support grapheme width calculations.
jperkin pushed a commit that referenced this issue Jul 4, 2023
What's Changed

    Bump deps and tools by @gaborbernat in #56
    Add pyproject-fmt by @gaborbernat in #57
    Bump pypa/gh-action-pypi-publish from 1.6.5 to 1.7.1 by @dependabot in #60
    docs: remove (dynamic) years from copyright by @paravoid in #58
    Bump pypa/gh-action-pypi-publish from 1.7.1 to 1.8.1 by @dependabot in #61
    Bump deps and tools by @gaborbernat in #62
    Bump pypa/gh-action-pypi-publish from 1.8.1 to 1.8.3 by @dependabot in #63
    Bump pypa/gh-action-pypi-publish from 1.8.3 to 1.8.5 by @dependabot in #66
    Bump deps and tools by @gaborbernat in #67
    Bump deps and tools by @gaborbernat in #70
    Drop 2.7 test by @gaborbernat in #72
    Add trusted-publish by @gaborbernat in #73
    Add 3.12 support by @gaborbernat in #74
    Bump pypa/gh-action-pypi-publish from 1.8.5 to 1.8.6 by @dependabot in #76
    git ls-files -z -- .github/workflows/check.yml | xargs -0 sed -i 's|3.12.0-alpha.7|3.12.0-beta.1|g' by @gaborbernat in #80
    Add ruff by @gaborbernat in #81
jperkin pushed a commit that referenced this issue Jul 10, 2023
Features/Improvements ✨
 - Append suffix to download filenames to avoid overwrites (#35)
 - Support uploading image attachments from clipboard (#36)
 - Support leaving rooms (#45)
 - Support hiding server part of username in message scrollback (#71)
 - Restore opened tabs and windows upon restart (#72)
 - Interpret newlines as line breaks when converting Markdown to HTML (#74)
 - Indicate when you're editing a message (#75)
 - Support configuring which program :open runs (#95)
 - Support sending and completing Emoji shortcodes in the message bar (#100)
 - Indicate number of members in room (#110)
 - Show errors fetching space hierarchy when list is empty (#113)
 - Show Git SHA information when printing version information (#120)
 - Reduce number of Tokio workers (#129)
 - Indicate when there are new messages below scrollback viewport (#131)

Bug Fixes 🐞
 - Tab completion panics for unrecognized commands (#81)
 - Fix error message for undefined download directory (#87)
 - Gracefully handle verification events that are unknown locally (#90)
 - Use terminal window focus to determine when a message has actually been seen
   (#94)
 - ChatStore::set_receipts locks up app for bad connections (#99)
 - Need fallback behaviour when dirs::download_dir returns None (#118)
 - Code blocks get rendered without line breaks (#122)
 - Remove trailing newlines in body (#125)
 - Profile session token should only be readable by the user (#130)
 - Handle sync failure after successful password entry (#133)

Documentation/README Updates 📚
 - Add manual pages (#88)
 - Mention Minimum Supported Rust Version in README (#115)
 - Link to AUR pkg in README (#121)

Meta 👷‍♀️
 - Update locked Cargo dependencies (#70)
 - Add Nix flake (#73)
 - Add FUNDING.yml to project (#77)
 - Upload artifacts built in GitHub Actions (#105)
 - Cache build directory in GitHub Actions (#107)
 - Replace GitHub actions using deprecated features (#114)
 - Fix Nix flake build on Darwin (#117)
jperkin pushed a commit that referenced this issue Jul 10, 2023
2.1.0 (2023-06-30)

What's Changed

* Address warning: mismatched indentations at 'when' with 'case' by @yahonda
  in #74
* Make assert_dom_equal ignore insignificant whitespace when walking the
  node tree by @jduff in #84
* Expand Substitution Matching Types support by @seanpdoyle in #90
* Alias assert_select methods to assert_dom versions by @seanpdoyle in #93
* Raise an error if the last arg is the wrong format by @ghiculescu in #96
* Fix replacement for multiple substitutions by @speckins in #76
* Better error message if response.body is blank or not parseable by
  Nokogiri by @ghiculescu in #97
* selector_assertions/html_selector: No trailing . on content_mismatch by
  @issyl0 in #102
* Use Minitest::Assertion#diff for content failure messages by @flavorjones
  in #106

New Contributors

* @nicolasleger made their first contribution in #73
* @yahonda made their first contribution in #74
* @dependabot made their first contribution in #79
* @jduff made their first contribution in #86
* @amatsuda made their first contribution in #88
* @seanpdoyle made their first contribution in #90
* @ghiculescu made their first contribution in #96
* @jbampton made their first contribution in #95
* @speckins made their first contribution in #76
* @issyl0 made their first contribution in #102
* @flavorjones made their first contribution in #103

2.1.1 (2023-06-30)

What's Changed

* Fix issue when application isn't using minitest.
jperkin pushed a commit that referenced this issue Sep 1, 2023
1.3.0 (2023-08-23)

What's Changed

* Rename data -> selector. by @ioquatix in #67
* Spurious wakeups by @ioquatix in #66
* Don't use EPOLLONESHOT for the wakeup event. by @Math2 in #68
* Failing test case for waiting on a reused FD. by @Math2 in #69
* Always re-register epoll descriptor. by @ioquatix in #71
* Fix potential race conditions in io_uring backend. by @ioquatix in #70
* NetBSD/OpenBSD compatibility for KQueue selector, some FreeBSD fixes by
  @Math2 in #72
* Introduce correct support for compacting GC. by @ioquatix in #73
* Fix external tests by @ioquatix in #75
* Add more external tests. by @ioquatix in #74
* Run coverage tests on more Ruby versions. by @ioquatix in #76


1.3.1 (2023-08-24)

What's Changed

* Fix a weird bug with duplicate CQEs. by @ioquatix in #78


1.3.2 (2023-08-24)

What's Changed

* Ensure that every io_uring_get_sqe is used correctly. by @ioquatix in #80
* Add tests for cancellation and update pure Ruby implementation. by
  @ioquatix in #79
jperkin pushed a commit that referenced this issue Sep 12, 2023
v0.1.7
What's Changed
 - Feature: + supported in ORIGIN by @Dajamante in #70
 - Add changelog enforcer by @Urhengulas in #71
 - CI: Install Rust manually by @Urhengulas in #72
 - Update CI by @Urhengulas in #74
 - End of year refactoring by @Urhengulas in #75
 - Goodbye bors by @Urhengulas in #77
 - Summer cleanup by @Urhengulas in #79
 - Release v0.1.7 by @Urhengulas in #80

v0.1.6
What's Changed
 - Print a message when linking normally fails by @jonas-schievink in #58
 - Add entry to change log by @justahero in #59
 - Update to Rust 2021 🎉 by @Urhengulas in #60
 - Update CHANGELOG.md by @Urhengulas in #61
 - search linker scripts in cwd first by @spookyvision in #63
 - ci: cache cargo registry & build artifacts by @japaric in #64
 - v0.1.6 by @japaric in #68
jperkin pushed a commit that referenced this issue Oct 29, 2023
1.11.0 (2023-10-26)

Changelog:

* Feature: Add SCRAM-SHA-1, SCRAM-SHA-224, SCRAM-SHA-256, SCRAM-SHA-384 and
  SCRAM-SHA-512 support (#76)

* Task: Mark authentication methods CRAM-MD5, DIGEST-MD5 and LOGIN as
  DEPRECATED with deprecation warnings in the error-log (#76)

* BugFix: SMTP: STARTTLS failed (code: 220, response: 2.0.0 Ready to start
  TLS) (#74)

* BugFix: Issue with non-blocking streams on establishing STARTTLS
  encryption (#74)

* BugFix: Implement TLS1.3 on STARTTLS encryption (#74)

* BugFix: using implode() instead of join() (#74)
jperkin pushed a commit that referenced this issue Oct 29, 2023
4.2.2
* Adding rate limit for RST_STREAM to work around CVE-2023-44487. #94

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

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

4.1.3
* Using crypton instead of cryptonite.

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

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

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

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

Merged Pull Requests

* Update chefstyle requirement from 2.0.9 to 2.1.0 #62 (dependabot[bot])
* Update chefstyle requirement from 2.1.0 to 2.1.1 #63 (dependabot[bot])
* Update chefstyle requirement from 2.1.1 to 2.1.3 #65 (dependabot[bot])
* Update chefstyle requirement from 2.1.3 to 2.2.0 #66 (dependabot[bot])
* add ruby 3.1 in verfiy pipeline #69 (skeshari12)
* INFC-158 fix build from addition of Ruby 3.0/3.1 tests for Windows #71
  (tpowell-progress)
* Bundle pristine to patch 3.1 ruby #78 (tpowell-progress)
* Expose archive format compression methods #74 (sj26)
* Allow opening archive from fd #75 (sj26)
* Add .buildkite directory to fix the build #79 (tpowell-progress)
jperkin pushed a commit that referenced this issue Dec 16, 2023
devel/ruby-redmine51 require net-imap gem version 0.3.4 but ruby31 bundles
0.2.3.  So, it add latest version of net-imap gem 0.3.x as ruby-net-imap.

Ruby client api for Internet Message Access Protocol.


Changes from 0.2.3:

0.3.0 (2022-11-17)

What's Changed

* Added dependabot.yml for actions by @hsbt in #59
* Bump actions/checkout from 2 to 3 by @dependabot in #60
* Adding RFC licenses by @nevans in #57
* Warn when using deprecated SASL mechanisms by @nevans in #62

New Contributors

* @dependabot made their first contribution in #60

0.3.1 (2022-11-17)

What's Changed

* Add XOAUTH2 authenticator by @ssunday in #63

New Contributors

* @ssunday made their first contribution in #63

0.3.2 (2022-12-09)

What's Changed

* Support UIDPLUS extension by @hoffi in #65
* Fixes "bundle exec rake" clash with test/unit by @nevans in #67
* Fix some UIDPLUS issues by @nevans in #69
* Fixes date-time format, and adds decode_datetime by @nevans in #66
* Add SASLprep. Code generated & tested with RFC3454 by @nevans in #64
* Add the UNSELECT command by @nevans in #72
*  Fix mailbox attrs by @nevans in #73
* RFCs and references by @nevans in #71
* Nodocs and remove warning by @nevans in #70
* ResponseParser docs by @nevans in #76
* Response Data docs by @nevans in #75

New Contributors

* @hoffi made their first contribution in #65

0.3.3 (2022-12-21)

What's Changed

* Revert "Fixes "bundle exec rake", clash with test/unit" by @znz in #88

New Contributors

* @znz made their first contribution in #88

0.3.4 (2023-01-18)

What's Changed

* Net::IMAP Client docs by @nevans in #74

0.3.5 (2023-06-12)

* Fix #response documentation error, by @nevans in 87ba74e
* Add RFC3454 data, to support offline testing, by @nevans in #137
* Adds Ruby 3.2 to the CI matrix, by @petergoldstein in #99
* Use reusing workflow, by @hsbt in #151
* Decode UTF-7 more strictly, by @nobu in #152
* ️Continue testing 0.3.x branch against ruby 2.6, by @nevans in 115d190
* Fix decode utf-7 test for ruby 2.6, by @nevans in 7a60c8f
* Fix XOAUTH2 authenticator for ruby 2.6, by @nevans in bd4faa0

0.3.6 (2023-06-12)

* Fixes file permissions regression in v0.3.5 release, reported by
  @aaronjensen in #154

0.3.7 (2023-07-26)

What's Changed

* Backport: Fix for Digest MD5 bad challenges by @nobu in #160 PR for
  backport is #161
jperkin pushed a commit that referenced this issue Dec 20, 2023
1.059  2023-07-20

- correctly propagate the exit value of a packed executable

  Get the exit value from perl_destruct() instead of perl_run().
  These may be different, e.g. if the value of $? is set in an END block.

- clean up tests a bit
- set up GitHub CI and add cpanfile (for CI only)
- check more return codes in myldr/*.c

1.058  2023-06-12

- patch DynaLoader.pm to make intercepting DynaLoader::bootstrap work again
  for Perl >= 5.35 on Windows (see #74)

  $do_expand was changed in perl 5.36 from an (implicit) "local" variable
  to "my". This breaks how PAR::Heavy intercepts calls to
  DynaLoader::bootstrap: monkey-patching DynaLoader::bootstrap,
  DynaLoader::dl_findfile and DynaLoader::bootstrap while setting
  "local $DynaLoader::do_expand = 1".

- reorganize modules etc used in tests
- add test to run an XS module from a .par file
- add a test for loading XS "glue" DLLs

- remove unused code for packed DLLs ("pp --link ...")
  - nobody packs (non-XS) DLLs as embedded "FILE"s
  - nobody uses a $Config{version) sub directory when packing DLLs below
    "shlib/" in the zip

1.057  2022-11-29

- use a different method to mark executable built from "pp --clean ..."

  - scripts/par.pl: don't patch the string "__PASS_PAR_CLEAN__               \0" in the
    "boot" section of the executable and ...
  - myldr/boot.c: ... stop looking for the patched string
  - scripts/par.pl: add "\0CLEAN" in lieu of "\0CACHE" (and drop the 40-byte
    cache name below that) in the "trailer" section when generating a packed
    executable when META.yml indicates "--clean" was specified)
  - myldr/mktmpdir.c: allow "\0CLEAN" as an alternative to "\0CACHE"
    and set PAR_CLEAN=1 in that case
  - myldr/mktmpdir.c: implement find_par_magic() akin the one in script/par.pl

- better CLT detection in MacOS (#70) [plk <Philip@kime.org.uk>]

- use Getopt::ArgvFile with resolveEnvVars=1
  suggested by Johan Vromans (@sciurius on GitHub)

1.056  2022-09-05

- Fix #66: patch myldr/boot for "pp --clean ..." without side effects

  - make sure myldr/boot contains exactly one string of the form
    "__PASS_PAR_CLEAN__               \0" so that there are no
    duplicates that may get split on chunk boundaries
    (myldr/boot_embedded_files.c)
  - simplify patching of this string (in $loader) to
    "__PASS_PAR_CLEAN__=1             \0" in script/par.pl
  - add a test for #66 (check for ephemeral vs persistent cache directory)

- Revert "Fixes #62: rs6000_71 (AIX) "An offset in the .loader section header is too large.""

  PAR_CLEAN is set too late: at this point PAR_TEMP has already
  been set (and populated) to a persistent cache directory
  (/tmp/par-USER/cache-SHA1) instead of an ephemeral one (/tmp/par-USER/temp-PID).

- Some code cleanup
  - replace some magic numbers with constants
  - use string interpolation (instead of concatenation)
  - clean up some convoluted C code

1.055  2022-07-03

- Fix #62: rs6000_71 (AIX) "An offset in the .loader section header is too large."

  Communicate pp option "--clean" to the generated executable in a
  different way. Previously this was done by patching "__ENV_PAR_..." strings
  **in the executable being built** and interpreting these strings in
  par.pl **at runtime**. Though hacky, this seemingly worked on any OS
  (without rendering the executable invalid).
  But the only information ever passed was the value of PAR_CLEAN and this was
  gleaned at build time from the value of JSONPath $par.clean from META.yml
  in the zip (set by pp by option "--clean").
  Instead read and interpret "META.yml" in par.pl **at runtime**.

- Fix: merge PR #58 from Philip@kime.org.uk:

  Adding support for running MacOS Universal binaries created via 'lipo'
  from already pp'ed and signed thin binaries

- Make writing stuff more robust: check return value of print()
  and close() in some places.

1.054  2022-01-27

- Temporarily disable t/90-gh41.t (system("\\\\?\\some-absolute-path") fails)

1.053  2022-01-25

- Fix: merge PR #56 from from Philip Kime <Philip@kime.org.uk>:
  Updating OSX codesign fix util with fix for automatically added ad-hoc signatures on OSX 12+

- Fix: merge PR #42 from Andrew-Kulpa/master:
  Get exe size from file handle instead of path

- Fix: prevent TABs in literal makefile fragments from being expanded

- Cleanups:
  - par_findprog(): pass a copy of argument `path´ to strtok()
  - simplify searching for PAR magic
  - consolidate die()s
  - add a test for GitHub #41
  - add error message when exec'ing the custom perl fails in myldr/boot
  - untangle %require_list and %ModuleCache
jperkin pushed a commit that referenced this issue Feb 7, 2024
# CHANGES IN xfun VERSION 0.41

- `process_file()` will write to the file only if the processed text
  is different with the input text. This is to avoid writing files
  unnecessarily.

- `session_info()` will remove extra blank lines (thanks, @chuxinyuan,
  #82) and also omit the time zone info.

# CHANGES IN xfun VERSION 0.40

- `number_to_words()` supports decimal numbers now (thanks,
  @harshvardhaniimi, #80).

- `is_ascii()` is more robust now (thanks, @bastistician, #81).

# CHANGES IN xfun VERSION 0.39

- Fixed a bug that `protect_math()` fails to protect the starting `$$`
  that has leading white spaces.

- Added a function `strip_html()` to remove HTML tags and comments from text.

- The function `alnum_id()` will remove HTML tags and comments from
  text (using `strip_html()`) before converting it to an ID string.

- Added a function `env_option()` to retrieve an option value from
  `options()`. If the option does not exist there, check the
  environment variables. This provides a way for users to set an
  option via either `options()` or an environment variable.

# CHANGES IN xfun VERSION 0.38

- Added an object `download_cache`, which is a list of methods to
  download a URL, cache the result, retrieve the result from the
  cache, and clear the cache.

- Added an argument `default` to `url_filename()` to provide a default
  filename when it cannot be determined from the URL.

- Added a function `yaml_load()` to read YAML data when the **yaml**
  package is not available. It only supports a limited number of data
  types and is supposed to be used as a fallback method. See the help
  page `?xfun::yaml_load` for details.

- Added a function `yaml_body()` to split a document into YAML metadata and the body.

- `is_arm64()` also supports Linux now (thanks, @eitsupi, #74).

- `is_blank()` returns a logical vector of the same length as the
  input vector now, indicating if each element of the input is
  blank. Previously it returns a logical scalar indicating whether
  *all* elements are blank. If you want the old behavior, you can use
  `all(is_blank())`.

# CHANGES IN xfun VERSION 0.37

- Added a function `is_arm64()` to test the CPU type (thanks, @AlbanSagouis, #72).

- Started deprecating `xfun::isFALSE()` in favor of `base::isFALSE()`
  for R >= 3.5.0 (thanks, @mmaechler, #66); `isFALSE()` will
  eventually be removed from **xfun** when we do not need to support R
  < 3.5.0.
jperkin pushed a commit that referenced this issue Mar 4, 2024
1.0.3 (2024-02-28)

What's Changed

* Prefer audio/ogg instead of audio/vorbis by @gmcgibbon in #65
* Suppress warning by @wonda-tea-coffee in #69
* Add explanation of MimeType.for's handling of argument types by @elebow in
  #68
* tables.rb: Generate UTF-8 strings when possible. by @casperisfine in #70
* Remove comment strings from Tables::TYPE by @casperisfine in #71
* Store MIME parents in a distinct Hash by @casperisfine in #72
* Fix magic detection for HTML with <svg by @ursm in #74
* Update gem name in Gemfile by @elebow in #88
* Move to GitHub Actions by @hahmed in #82
* Add note in README how to extend detection of custom file types by
  @vipulnsward in #93
* Fix Illustrator detection as application/pdf instead of
  application/illustrator by @jeremy in #94

New Contributors

* @wonda-tea-coffee made their first contribution in #69
* @elebow made their first contribution in #68
* @casperisfine made their first contribution in #70
* @ursm made their first contribution in #74
* @hahmed made their first contribution in #82
* @vipulnsward made their first contribution in #93
* @jeremy made their first contribution in #94

1.0.4 (2024-03-01)

What's Changed

* Regression fix: binary declared type should fall back to filename
  extension type by @jeremy in #99
jperkin pushed a commit that referenced this issue Mar 4, 2024
Updates
    Fix negative balance getting stuck at 0.00
    Fix the search page not giving correct results when tx type is transfer and both from and to method fields are not filled up
    Fix a bug that caused unrelated transactions to show up on the home page
    On the Home page transactions with the same date can now be moved up with ',' and down with '.'
    A new option on J press to add backup locations. On q press, the latest DB will be copied there
    Added previously missing option to reset new app data location when the input is blank
    New and modified status updates for better clarity
    New offset-based scrolling when scrolling tables
    A new Activity page on 'y' press that will show activity details such as when transactions were added, deleted, edited, etc
    Popup help texts have been updated
    Dependency updates and minor performance improvements

Changes
    Fix negative balance not loading by @TheRustyPickle in #57
    Allow switching position of a tx by @TheRustyPickle in #60
    Show a new info status when switching to normal tx mode by @TheRustyPickle in #65
    Backup path by @TheRustyPickle in #66
    Update dependencies by @TheRustyPickle in #67
    Add a history page by @TheRustyPickle in #68
    Fix id swap UI bug by @TheRustyPickle in #72
    Update popup text by @TheRustyPickle in #74
jperkin pushed a commit that referenced this issue Jun 4, 2024
Upstream changes:
2.047     2024-05-18

    - Fixed implementation of GH-77.

    - Added $pdf->standard_fonts() and $pdf->is_standard_font($name) (initial
      patch by Johan Vromans).


2.046     2024-05-14

    - [GH-74] Fixed documentation error saying that stroke_color and fill_color
      can be chained.

    - Crash instead of freezing if a PDF trailer's Prev keys result in a loop or
      if multiple trailers use the same object ID and generation number.

    - [GH-70] Fix off-by-one error when adding a page at the beginning of a PDF.

    - [GH-77] Significantly improve performance when adding many pages to a PDF.
jperkin pushed a commit that referenced this issue Jun 18, 2024
Version 0.7.8

* Do not merge sub directives if they have not been changed.
  (#53 by Cédric Krier)
* Silence deprecation warnings from attempting to import Ellipsis and
  Str (which are needed to support older Pythons). (#73 by Cédric Krier)
* Remove fallback to distutils, patching of bdist_egg and use of doctools.
  (#74 by Simon Cross)
* Clarify the escaping in _URL_FINDER. (#76 by Simon Cross)
* Fix installation with setuptools >= 60. (#68 by Graham Inggs)
jperkin pushed a commit that referenced this issue Jul 1, 2024
### 1.8.10 - 15 June 2024

 * feature: new "`--output`" option to write to a file instead of standard output (pull request [#90](https://codeberg.org/a-j-wood/pv/pulls/90)) supplied by [xmort](https://codeberg.org/xmort)

### 1.8.9 - 21 April 2024

 * feature: new "`--si`" option to display and interpret size suffixes in multiples of 1000 rather than 1024 (pull request [#85](https://codeberg.org/a-j-wood/pv/pulls/85)) supplied by [kevinruddy](https://codeberg.org/kevinruddy)
 * fix: continue producing progress output when the output is blocking writes ([#34](https://codeberg.org/a-j-wood/pv/issues/34), [#86](https://codeberg.org/a-j-wood/pv/issues/86), [#87](https://codeberg.org/a-j-wood/pv/issues/87))
 * fix: honour the _TMPDIR_ / _TMP_ environment variables again, rather than hard-coding "`/tmp`", when using a terminal lock file (originally removed in 1.8.0) ([#88](https://codeberg.org/a-j-wood/pv/issues/88))
 * i18n: corrections and missing strings added to French translations (pull request [#83](https://codeberg.org/a-j-wood/pv/pulls/83)) supplied by [Thomas Bertels](https://codeberg.org/tbertels)

### 1.8.5 - 19 November 2023

 * fix: corrected percentage formatting so it doesn't jump from 2 to 3 characters wide at 100% ([#80](https://codeberg.org/a-j-wood/pv/issues/80))
 * fix: replaced "`--remote`" mechanism, using a temporary file instead of SysV IPC, so it can work reliably even when there are multiple PV instances
 * fix: corrected compilation failure when without IPC support
 * security: addressed all issues highlighted by the software auditing tools "`splint`" and "`flawfinder`" (see "`make analyse`") ([#77](https://codeberg.org/a-j-wood/pv/issues/77))
 * cleanup: compilation warnings fixed on non-IPC and MacOS systems

### 1.8.0 - 24 September 2023

#### Features

 * feature: new "`--discard`" option to discard input as if writing to */dev/null* ([#42](https://codeberg.org/a-j-wood/pv/issues/42))
 * feature: new "`--error-skip-block`" option to make "`--skip-errors`" skip whole blocks ([#37](https://codeberg.org/a-j-wood/pv/issues/37))
 * feature: use `posix_fadvise()` like `cat`(1) does, to improve efficiency ([#39](https://codeberg.org/a-j-wood/pv/issues/39))
 * feature: new "`--enable-static`" option to "`configure`" for static builds ([#75](https://codeberg.org/a-j-wood/pv/pull/75))

#### Security

 * security: with "`--pidfile`", write to a temporary file and rename it into place, to improve security
 * security: keep self-contained copies of name and format string in PV internal state for memory safety
 * security: ignore _TMP_ / _TMPDIR_ environment variables when using a terminal lock file

#### Fixes

 * fix: only report errors about missing files when starting to transfer from them, not while calculating size, and behave more like `cat`(1) by skipping them and moving on
 * fix: auto-calculate total line count with "`--line-mode`" when all inputs are regular files
 * fix: use `clock_gettime()` in ETA calculation to cope with machine suspend/resume ([#13](https://codeberg.org/a-j-wood/pv/issues/13))
 * fix: if "`--width`" or "`--height`" were provided, do not change them when the window size changes ([#36](https://codeberg.org/a-j-wood/pv/issues/36))
 * fix: when a file descriptor position in "`--watchfd`" moves backwards, show the rate using the correct prefix ([#41](https://codeberg.org/a-j-wood/pv/issues/41))
 * fix: rewrite terminal state save/restore so state is not intermittently garbled on exit when using "`--cursor`" ([#20](https://codeberg.org/a-j-wood/pv/issues/20)), ([#24](https://codeberg.org/a-j-wood/pv/issues/24))

#### Cleanups

 * cleanup: addressed many potential issues highlighted by the software auditing tools "`splint`" and "`flawfinder`" (see new target "`make analyse`")
 * cleanup: switched the build system to GNU Automake
 * cleanup: replaced the test harness with the one native to GNU Automake
 * cleanup: added a test for terminal width detection to "`make check`"
 * cleanup: added a test to "`make check`" to ensure that "`make install`" installs everything expected
 * cleanup: replaced *AC_HEADER_TIOCGWINSZ* with *AC_CHECK_HEADERS(sys/ioctl.h)* for better MacOS compatibility ([#74](https://codeberg.org/a-j-wood/pv/issues/74))
 * cleanup: with "`--sync`", call `fsync()` instead of `fdatasync()` on incapable systems ([#73](https://codeberg.org/a-j-wood/pv/issues/73))
 * cleanup: the manual is now a static file instead of needing to be built with "`configure`"

#### Dropped items

 * dropped: dropped support for "`--enable-static-nls`"
 * dropped: removed the Linux Software Map file, as the LSM project appears to be long dead
 * dropped: will no longer publish to SourceForge as it has a chequered history and is unnecessary
 * dropped: removed project from GitHub and moved to Codeberg - see "[Give Up GitHub](https://giveupgithub.org/)"

#### Other items

 * licensing change from Artistic 2.0 to GPLv3+

### 1.7.24 - 30 July 2023

 * fix: correct terminal size detection, broken in 1.7.17 by the configuration script rewrite ([#72](https://codeberg.org/a-j-wood/pv/issues/72))
 * security: removed *DEBUG* environment variable in debug mode, added "`--debug`" instead
 * cleanup: added "`make analyse`" to run "`splint`" and "`flawfinder`" on all source files
 * cleanup: corrected detection of boolean capability
 * cleanup: word wrapping of "`--help`" output is now multi-byte locale aware
 * cleanup: adjusted "`indent`" rules to line length of 120 and reformatted code

### 1.7.18 - 28 July 2023

 * fix: language file installation had been broken by the configuration script rewrite

### 1.7.17 - 27 July 2023

 * feature: new "`--sync`" option to flush cache to disk after every write (related to [#6](https://codeberg.org/a-j-wood/pv/issues/6), to improve accuracy when writing to slow disks)
 * feature: new "`--direct-io`" option to bypass cache - implements [#29 "Option to enable *O_DIRECT*"](https://codeberg.org/a-j-wood/pv/issues/29) - requested by Romain Kang, Jacek Wielemborek
 * fix: correct byte prefix size to 2 spaces in rate display, so progress display size remains constant at low transfer rates
 * cleanup: rewrote `configure.in` as per suggestions in newer "`autoconf`" manuals
 * cleanup: replaced `header.in` with one generated by "`autoheader`", moving custom logic to a separate header file "`config-aux.h`"
 * cleanup: added copyright notice to all source files as per GNU standards
 * cleanup: changed "`--version`" output to conform to GNU standards
 * cleanup: replaced backticks with `$()` in all shell scripts that did not come from elsewhere, as backticks are deprecated and harder to read
 * cleanup: improved the output formatting of "`make test`"
 * cleanup: extended the "`make test`" mechanism to allow certain tests to be skipped on platforms that cannot support them
 * cleanup: skip the "pipe" test (for *SIGPIPE*) if GNU "`head`" is not available, so that "`make test`" on stock OpenBSD 7.3 works
 * cleanup: added a lot more tests to "`make test`"
 * cleanup: replace all calls to `sprintf()` and `snprintf()` with a new wrapper function `pv_snprintf()` to improve security and compatibility
 * cleanup: replace all calls to `strcat()` with a wrapper `pv_strlcat()` to improve security and compatibility
 * cleanup: replace all `write()` calls to the terminal with a wrapper `pv_write_retry()` for consistency
 * cleanup: tidy up and fix compilation warning in "`--watchfd`" code
 * cleanup: rewrote all local shell scripts to pass analysis by [ShellCheck](https://www.shellcheck.net)

### 1.7.0 - 17 July 2023

 * dropped: support for Red Hat Enterprise Linux and its derivatives has been dropped; removed the RPM spec file, and will no longer build binaries
 * feature: the "`--size`" option now accepts "`@filename`" to use the size of another file (pull request [#57](https://codeberg.org/a-j-wood/pv/pull/57) supplied by [Dave Beckett](https://github.com/dajobe))
 * feature: the "`--watchfd`" option is now available on OS X (pull request [#60](https://codeberg.org/a-j-wood/pv/pull/60) supplied by [christoph-zededa](https://github.com/christoph-zededa))
 * feature: new "`--bits`" option to show bit count instead of byte count (adapted from pull request [#63](https://codeberg.org/a-j-wood/pv/pull/63) supplied by [Nick Black](https://nick-black.com))
 * feature: new "`--average-rate-window`" option, to set the window over which the average rate is calculated, also used for ETA (modified from pull request [#65](https://codeberg.org/a-j-wood/pv/pull/65) supplied by [lemonsqueeze](https://github.com/lemonsqueeze))
 * feature: the "`--watchfd`" option will now show relative filenames, if they are under the current directory (pull request [#66](https://codeberg.org/a-j-wood/pv/pull/66) supplied by [ikasty](https://github.com/ikasty))
 * fix: correction to `pv_in_foreground()` to behave as its comment block says it should, when not on a terminal - corrects [#19 "No output in Arch Linux initcpio after 1.6.6"](https://codeberg.org/a-j-wood/pv/issues/19), [#31 "No output written from inside zsh <() construct"](https://codeberg.org/a-j-wood/pv/issues/31), [#55 "pv Stopped Working in the Background"](https://codeberg.org/a-j-wood/pv/issues/55) (pull request [#64](https://codeberg.org/a-j-wood/pv/pull/64) supplied by [Michael Weiß](https://github.com/quitschbo))
 * fix: workaround for OS X 11 behaviour in configure script regarding stat64 at compile time (pull request [#57](https://codeberg.org/a-j-wood/pv/pull/57) supplied by [Dave Beckett](https://github.com/dajobe))
 * fix: workaround for macOS equivalence of stat to stat64 - patches from [Filippo Valsorda](https://github.com/FiloSottile) and [Demitri Muna](https://github.com/demitri), correcting [#33 "Fix compilation problems due to `stat64()` on Apple Silicon"](https://codeberg.org/a-j-wood/pv/issues/33)
 * fix: add burst rate limit to transfer, so rate limits are not broken by bursty traffic (pull request [#62](https://codeberg.org/a-j-wood/pv/pull/62) supplied by [Volodymyr Bychkovyak](https://github.com/vbychkoviak))
 * fix: corrected "`--force`" option so it will still output progress when not in the same process group as the owner of the terminal - corrects [#23 "No output with "`-f`" when run in background after 1.6.6"](https://codeberg.org/a-j-wood/pv/issues/23) and helps to correct [#31 "No output written from inside zsh <() construct"](https://codeberg.org/a-j-wood/pv/issues/31)
 * fix: corrected elapsed time display to show as D:HH:MM:SS after 1 day, like the ETA does - corrects [#16 "Show days in same format in ETA as in elapsed time"](https://codeberg.org/a-j-wood/pv/issues/16)
 * fix: corrected bug where percentages went down after 100% when in "`--numeric`" mode with a "`--size`" that was too small - corrects [#26 "Correct "`-n`" behaviour when going past 100% of "`-s`" size"](https://codeberg.org/a-j-wood/pv/issues/26)
 * i18n: recoded Polish translation file to UTF-8
 * i18n: removed inaccurate fuzzy translation matches
 * docs: moved all open issues into GitHub and updated the TODO list
 * docs: renamed README to README.md and altered it to Markdown format
 * docs: moved contributors from the README to docs/ACKNOWLEDGEMENTS.md
 * docs: moved TODO to TODO.md and altered it to Markdown format
 * docs: moved NEWS to NEWS.md, converted it to UTF-8, and altered it to Markdown format
jperkin pushed a commit that referenced this issue Jul 20, 2024
3.1.1 (2024-07-12)

Merged Pull Requests

* Replace FILE with dir and other minor chefstyle fixes #61 (tas50)
* Add Ruby 3.0 testing #62 (tas50)
* Upgrade to GitHub-native Dependabot #63 (dependabot-preview[bot])
* Remove Ruby 2.4 support and Test Ruby 3.0/3.1 #66 (poorndm)
* Bump minimum to 2.7 #75 (tpowell-progress)
* Support ruby3.3 Logger by properly initialize super class #74 (mtasaka)
* ffi less than 1.17.0 because of ruby 3.0 #77 (tpowell-progress)
jperkin pushed a commit that referenced this issue Aug 24, 2024
From Iris via pkgsrc-wip.

Changelog from 2.9.27 to 2.9.28:

8f4e86ca Version 2.9.28
c6c3823b Added Sven Höxter to aboutDialog for his patches
cba17cc6 Feature: link app icon as a mimetype icon for the hicolor default theme (#109)
01aae901 Fix: do not install manpage in doc dir (#107)
201ca770 Bugfix: Open french documention if required
97e0e837 Spelling fix: remove duplicate word (#108)
1a3d001d Spelling fixes (#105)
7eb79dde Desktop file improvements (#106)
92a762ed Merge branch 'release' of github.com:insilmaril/vym into release
d9d7b12a Updated project name
5248d9a0 Fixed typo in version number
0e87888d Updated year in README.md
acdf0677 Updated release notes

--

Release notes VYM - View Your Mind

The lists below shows differences between vym 2.8.0 and the latest 2.9.x
version.

Feel free to report any bugs or feature requests on
https://github.com/insilmaril/vym/issues

Thanks for using vym!

Uwe Drechsel - May 2024
Version 2.9.27
Bugfixes

    Bugfix: Markdown improvements by Markus Seilnacht
    Bugfix: Allow saving of readonly maps
    Bugfix: Use vymBaseDir when setting up libreoffice export
    Bugfix: Resetting task delta prio not limited to visible tasks

Version 2.9.26
Features

    Feature: #87 Enable Crtl modifier for macros triggered by function keys.
    Feature: Set last export type to "Update" after successfully "Creating"
Confluence page
    Feature: Updated status bar messages when loading/saving maps
    Feature: #91 Update Italian translation
    Feature: Dropped URLs are truncated at start of parameters

Bugfixes

    Bugfix: Minor typo in German translation
    Bugfix: Minor typo in Confluence settings dialog
    Bugfix: Pasted text URLs in a heading no longer create URL in branch
    Bugfix: #90 Disable BSP indexing to avoid crashes
    Bugfix: #88 Improved ASCII export

Changes

    Change: Removed or changed shortcuts with ALT

Version 2.9.22
Features

    Feature: Support multiple Jira instances with specific authentication
methods
    Feature: Floppy disk icon for unsaved maps better visible, if active
    Feature: Upload images also for new Confluence pages
    Feature: New commands to control visuals of selection box
    Feature: added script to set colors of selection box for dark theme:
        demos/scripts/setSelectionBoxDarkTheme.vys
    Feature: Center on selection and fit to view with Key_Period + Key_Shift
    Feature: Delete vymLink with Ctrl-Shift click
    Feature: Scale pasted images to 300px width
    Feature: Define pen color, width and brush for selection box
        setSelectionPenColor
        setSelectionPenWidth
        setSelectionBrushColor
    Feature: Option to 'never' use dark theme
    Feature: Support Personal Access Tokens for Jira and Confluence
    Feature: Improved animated centering on selection (Shortcut: Key_Period)
    Feature: For multiple selected items show count in status line
    Feature: Scale images on the fly
    This allows to paste and shrink images (Ctrl + "-"), but when zooming in
the images are not pixelized, but still have original resolution. Storing e.g.
screenshots is more efficient this way.

Bugfixes

    Bugfix: Creating Confluence page without attachments
    Bugfix: Icon and status of view icons
    Bugfix: disabled all icons when no map is available.
    Bugfix: Fixed layout of dialog for Confluence export
    Bugfix: Improved adding new branches at border of current scene
    Bugfix: Urls and VymLinks shown again in statusBar
    Bugfix: Wrong positon of selection box of xlinks control points, resulting
in crazy scrolling, when control point is selected.
    Bugfix: #79 quell linking error (#79)
    Bugfix: Set selection background color in TreeEditor
    Bugfix: Also center on selected branch when using HeadingEditor while
editing a heading
    Bugfix: Save colors of headings
    Bugfix: Editing long plainText headings might open HeadingEditor
    Bugfix: #65 and #71 Colors in NoteEditor with RichText
    Bugfix: #76 Editing heading of zoomed in view causes panning
    Bugfix: When zooming in/out using mouse wheel don't change rotation
    Bugfix: Background colors in HeadingEditor
    Bugfix: #40 Editing PlainText headings with linebreaks
    Bugfix: #75 TreeEditor and Linebreaks in headings
    Bugfix: #73 Default maps should not have word default in MapCenter
    Bugfix: #72 Improved support to load new default maps
    Bugfix: #74 HTML export uses word wrap for PlainText notes
    Bugfix: Update HeadingEditor for RichText heading, when frame background
changes
    Bugfix: Update color and heading of HeadingEditor
    Bugfix: #70 HeadingEditor doesn't use map background when switching on
RichText mode
    Bugfix: #70 settings override macroPath, if local option is used "-l"
    Bugfix: #68 HeadingEditor doesn't update after in MapEditor
    Bugfix: Consider zoomFactor after load when scrolling to selection
    Bugfix: Set color and width of legacy xlink

Changes

    Change: Use Control modifier instead of Shift to only move MapCenter
    Change: Compatibility with 2.9.514: Some elements can be read, even if vym

Version 2.9.2
Bugfixes

    Bugfix: #64 Read notes correctly from (very old) maps

Version 2.9.0

This version provides bugfixes and some new features. The biggest and most
visible changes are dark theme support and an extended color bar to select
colors.

The platform support has been improved, native Mac version is available (again)
and also binaries for various Linux flavors. See the README.md for details
Features

    Feature: Dark theme
    Feature: Increase max. number of recent maps to 20
    Feature: Reset priority delta for visible tasks (all maps)
    Feature: Toggle target for multiple selected items
    Feature: Copying and pasting between vym instances and pasting images
    Feature: Added desktop files for easier packaging accross Linux distros
    Feature: Larger font size for editing headings on WIndows
    Feature: Scripting commands to edit heading and get depth of branch
    Feature: Introduced colors toolbar (#39)
    Feature: Use expand macro in Confluence export for scrolled branches
    Feature: Move branches diagonally with Ctrl-PageUp/Down
    Feature: Enable openSSL on Windows
    Feature: Add information from JIRA as attributes
    Feature: Toggle flag for multiselection
    Feature: Confluence and JIRA support
    Feature: Cycle tasks by clicking status in taskeditor
    Feature: Cursor up/down + Shift-key can be used to select multiple branches
    Feature: Updated translations for Greek and German

Bugfixes

    Bugfix: #52 Saving part of map overwrites original map
    Bugfix: #48 lockfile cannot be renamed on Windows
    Bugfix: Read map attributes for default map
    Bugfix: Create translation files during build
    Bugfix: German translation to show keyboard macros in help menu
    Bugfix: Set URL when getting Jira data
    Bugfix: Use mapname and correct postfic when exporting
    Bugfix: #25 treeEditor opens when pasting images
    Bugfix: less compiler warnings related to deprecated Qt
    Bugfix: Restore state of treeEditor and slideEditor from settings in map
after load
    Bugfix: Don't set URL for Jira ticket, if Jira pattern is not known
    Bugfix: Umlauts when exporting to a Confluence page
    Bugfix: undo/redo when toggling task via F12-macro
    Bugfix: Allow selecting text while editing a heading in QLineEdit
    Bugfix: Remove invalid QModelIndex warning when relinking images from
mainbranch to center
    Bugfix: Avoid jumping of view when adding branches to center"
    Bugfix: Reset current text format when switching from RichText to PlainText
    Bugfix: Unused duplicate branchPropertyEditor dockwidget removed
    Bugfix: Setting for Windows data-root directory (#36)
    Bugfix: vymBaseDir improvements (#34)
    Bugfix: Don't trigger reposition when selection changes
    Bugfix: Relink branches and keep parent
    Bugfix: set CMAKE_INSTALL_DATAROOTDIR (#24)
    Bugfix: #31 Confluence export missing siblinigs of hidden first branch
    Bugfix: #26 tabname for save but unchanged maps does not update
    Bugfix: Getting user info from Confluence
    Bugfix: Freemind import
    Bugfix: exportLast of Markdown export
    Bugfix: piping plaintext mails from mutt into note
    Bugfix: Cycling tasks in taskeditor
    Bugfix: Links to images (color and hiding)
    Bugfix: Don't give up on unknown tags when importing Freeplane
    Bugfix: Remove unnecessary columns from taskeditor
    Bugfix: #14 Packaging for openSUSE: Set vymBaseDir correctly
    Bugfix: Trash button in NoteEditor
    Bugfix: vym crashed, when cursor left/right was used and multiple branches
were selected
    Bugfix: Copy to new map
    Bugfix: crash while checking an empty directory (#9)

Changes

    Changed: Settings for JIRA and Confluence
    Changed: Moved functionality of recover session into restore ression
    Changed: Sleeping tasks keep their priority (Before prio was lowered and
sleeping tasks dropped to bottom.)
    Changed: Removed unused Bugzilla script
    Changed: Builds now use cmake

Release notes View Your Mind - vym 2.8.0

This version provides bugfixes and some new features. The biggest and most
visible change are the (mostly) reworked and now scalable icons in mind maps.

At least on Linux you now can also connect to JIRA and Confluence and retrieve
data, but also create or update Confluence pages.

A brandnew feature is the (experimental) support to import and export Firefox
bookmarks - very handy to sort bigger bookmark collections.

Scripting still is considered as Technology Preview - APIs still might change
in upcoming versions, when vym will be based on Qt6. Just check out the
keyboard macros for F01 to F24 or also the example scripts.

The lists below list differences between vym 2.7.0 and 2.8.0.

Feel free to report any bugs or feature requests on
https://github.com/insilmaril/vym/issues

Thanks for using vym!

Uwe Drechsel - April 2021
Notes:

    Some function keys have changed, e.g. Shift-F8 for toggling frames to
include children

    File format has changed within the vym files

    CDATA is no longer used, but <vymtext> and <heading> use attributes now for
texts. Vym versions below 2.7.566 cannot read newer maps
    Removed support for Bugzilla
    Removed support for SUSE FATE tool
    Removed dependency on 7z on Windows platform
    Removed setting to edit branch after creating
    Various optimizations, e.g. when updating map when NoteEditor changes
    Removed unused windows code
    Updated code to Qt 5.14
    Reorganized source code, moved it to github and applied coding style using
clang-format

Detailed list of features

    Feature: Improved presentation mode and added projector icon
    Feature: Added recover option (--recover)
    Feature: Allow cursor positioning during edit of heading
    Feature: Allow middle mouse for pasting while editing heading
    Feature: Alternatively pan view using middle mouse button
    Feature: Basic editing of tasks in TaskEditor
    Feature: BranchPropertyEditor show sleep time
    Feature: Initial Confluence support (on Linux)
        Create new Confluence pages
        Get Confluence username and use in export (experimental)
        Native Confluence Agent to retrieve page name
    Feature: Dialog to enter credentials for Confluence
    Feature: Drag drop in TaskEditor for repriorization
    Feature: Editing in TreeEditor
    Feature: Hide less popular standard flags if not used in a map (Present,
rose, phone, clock)
    Feature: Icons for filters in taskeditor
    Feature: Improved editing in TaskEditor
    Feature: Improved handling of modifiers
    Feature: Improved winter mode
    Feature: Import and export of Firefox bookmarks (experimental)
    Feature: Internal testsuite prepared
    Feature: Load default map instead of creating it
    Feature: More verbose status message for toggling frames when using
function keys
    Feature: Most of the flags have been reworked and are scalable vector
graphics now
    Feature: Repeat last command in map using F8
    Feature: Save as default map
    Feature: Select images using cursor left/right in MapEditor
    Feature: Set sleep time weeks with 'w'
    Feature: Setting for margin when scrolling to selection
    Feature: Shortcut Shift-G to goto linked map
    Feature: Show Delta Priority in TaskEditor
    Feature: Show Task modification times
    Feature: Show file location in properties dialog
    Feature: Show flags in taskeditor

Bugfixes

    Bugfix: Collapse selected branch using "<"-key
    Bugfix: Better placement of flags toolbars for new user
    Bugfix: Comment in map properties no longer saved as HTML
    Bugfix: Compiler warnings
    Bugfix: Correctly read task modification time from file
    Bugfix: Crash when exporting HTML
    Bugfix: Disable user flags toolbar when image is selected
    Bugfix: Don't save definitions of unused userflags
    Bugfix: Edit and actually use the correct path for macros
    Bugfix: Editing of branch heading in heading editor
    Bugfix: Editor states related to multiple selection
    Bugfix: Emtpy lines for hidden branches in ASCII export
    Bugfix: Flag to search notes in FindResultWidget
    Bugfix: For non-sleeping tasks display "-" in table as sleep time
    Bugfix: Function key F4 not executing related macro
    Bugfix: HTML export for svg- and userflags
    Bugfix: History of changing RichText notes in editor
    Bugfix: History of editing notes and headings
    Bugfix: Inactive NoteEditor in some cases
    Bugfix: Modifier for modModes is SHIFT, not CTRL.
    Bugfix: Opening default map, but without existing file
    Bugfix: Reenable context menu in TaskEditor
    Bugfix: Removal of temporary files on Windows
    Bugfix: Repeat toggling target with F8
    Bugfix: Ruby testsuite
    Bugfix: Select new tab after creating new map
    Bugfix: Shortcuts for formats in TextEditor
    Bugfix: Tests related to changing (named) flags
    Bugfix: Undo of setting task to sleep
    Bugfix: Undo/redo toggling flag
    Bugfix: Update HeadingEditor after reselect and undo/redo
    Bugfix: Update confluence script
    Bugfix: Waking up of sleeping tasks is visible again
    Bugfix: Warning when saving uncompressed map
    Bugfix: application to open external links
    Bugfix: libpng warning
    Bugfix: svg flags not displaying correctly
    Bugfix: toggling target was not saved
    Bugfix: use most important shortcuts also in TreeEditor
github-actions bot pushed a commit that referenced this issue Oct 14, 2024
 - fix wal sometimes not using srgb (3091f71ef4) #74
 - backends:
     - fix kmeans to use the full image, instead of resizing, and run 5 times (e92ec097f1)
     - lch: reduce MIN_CHROMA so it catches more colors ba8b9bf92b
 - fix up complementary on templates #86 314af00176
 - cache:
     - It now stores the contents hash (cfd81f7835)
     - No more magick number on Windows (c0d81a5704)
 - misc: fix up woodpecker, doc generation, makefile, refactor code on colorspaces
github-actions bot pushed a commit that referenced this issue Dec 2, 2024
# wk 0.9.4

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

# wk 0.9.3

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

# wk 0.9.2

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

# wk 0.9.1

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

# wk 0.9.0

## Breaking changes

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

## Bugfixes and improvements

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

# wk 0.8.0

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

# wk 0.7.3

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

# wk 0.7.2

* Fix use-after-free warnings.

# wk 0.7.1

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

# wk 0.7.0

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

# wk 0.6.0

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

# wk 0.5.0

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

# wk 0.4.1

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

# wk 0.4.0

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

# wk 0.3.4

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

# wk 0.3.3

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

# wk 0.3.2

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

# wk 0.3.1

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

No branches or pull requests

3 participants