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

Added cjose library. #44

Closed
wants to merge 1 commit into from
Closed

Added cjose library. #44

wants to merge 1 commit into from

Conversation

siepkes
Copy link

@siepkes siepkes commented Mar 14, 2019

cjose is a C library implementing the Javascript Object Signing and Encryption (JOSE).

I need this library so I can add mod_auth_openidc. I'm not a pkgsrc pro so I would appreciate it if someone could take a good look before merging 😉

@iamleot
Copy link
Member

iamleot commented Mar 14, 2019 via email

@iamleot
Copy link
Member

iamleot commented Mar 14, 2019 via email

@siepkes
Copy link
Author

siepkes commented Mar 14, 2019

@iamleot You people are fast!

You can probably just set DISTNAME to cjose-0.6.1' and remove GITHUB_PROJECT (it is already cjose by default), PKGNAME and DIST_SUBDIR. After that please rerun make checksum' because it will result in changes to `distinfo' too.

Done!

WRKSRC redefinition can be removed as well with the previous suggested change.

Done!

I'll take a look at pkgsrc-wip. Though luckily for me cjose was the only un-packaged dependency for mod_auth_openidc. Thanks for the feedback!


PKGCONFIG_OVERRIDE+= cjose.pc.in

.include "../../textproc/jansson/buildlink3.mk"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's a nit, but long term we prefer to maintain sorted includes (with exception of mk/bsd.pkg.mk that comes the last).

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fair enough! Ordered them alphabetically (I assume that's what you mean, right?).

Maybe this would also be something that could be integrated in to pkglint?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Right. It would be a valuable addition to pkglint. Feel free to report it to the maintainer (or contribute a patch which would be even better).

@iamleot
Copy link
Member

iamleot commented Mar 15, 2019 via email

@krytarowski
Copy link
Member

E.g. on vim-gtk3 by sorting the gtk3 bl3 inclusion before libXpm and libXt bl3 inclusions led to a failure at link time while previously it was accidentally built fine but without GTK3+ support.

Isn't that a bug in blk3.mk files? Anyway it has to be done diligently.

@siepkes
Copy link
Author

siepkes commented Mar 15, 2019

@iamleot I just noticed that after removing the suggested headers pkgsrc can't find the package on Github (curl get's a 404). The only way I could get it to work is if I do it like this:

DISTNAME=       cjose-${GITHUB_TAG}
CATEGORIES=     textproc
MASTER_SITES=   ${MASTER_SITE_GITHUB:=cisco/}
GITHUB_TAG=     0.6.1

Is this correct om am I missing something?

@siepkes siepkes force-pushed the cjose_trunk branch 2 times, most recently from 1b2fd5b to 93cffb7 Compare March 15, 2019 10:58
@iamleot
Copy link
Member

iamleot commented Mar 15, 2019 via email

cjose is a C library implementing the Javascript Object Signing and
Encryption (JOSE).
@siepkes
Copy link
Author

siepkes commented Mar 15, 2019

Just setting DISTNAME to `cjose-0.6.1' and removing GITHUB_TAG should be enough.

Actually it seems it is. Don't know what went wrong when I was testing...Probably need more coffee.

So as far as I can tell this thing is pretty complete now?

netbsd-srcmastr pushed a commit that referenced this pull request Nov 14, 2019
2.62.0 (stable):

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

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

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

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

Documentation:
* Glib::init(), Gio::init(): Improve the documentation
  (Kjell Ahlstedt) Issue #49 (Van de Bugger)
* Glib::ustring can't always replace std::string
  (Kjell Ahlstedt) Issue #47 (Patrick Storz)
netbsd-srcmastr pushed a commit that referenced this pull request Nov 20, 2019
0.33  2019-03-09 15:18:15 PST
        - Removed dependency to Digest::SHA1 #45
        - Added explicit dep to HTTP::Request::Common #44
        - Add t/lib to INC for Perl 5.26+
        - Fix POD link

0.32  2019-02-26 14:36:19 MST
        - Fix dependency for Cookie::Baker

0.31  2019-02-26 12:01:00 MST
        - Documentation fix
        - Support samesite cookie attributes #42
netbsd-srcmastr pushed a commit that referenced this pull request Jan 18, 2020
update ruby-arel-helpers to 2.11.0.

2.11.0

* Allow consumers of ArelHelpers::QueryBuilder to chain on falsy return
  (@ramhoj #44).
	- Add not_nil in front of builder methods to opt-in.

2.10.0

* Add support for Rails 6 rc2.
netbsd-srcmastr pushed a commit that referenced this pull request Jan 27, 2020
## 0.4.0 / 2020-01-18

### Major Enhancements

  * Drop Ruby 2.3 support

### Minor Enhancements

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

### Development Fixes

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

### Documentation

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

27 November 2017 Jeroen
	- Fix regressions in configparser.y

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

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

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

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

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

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

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

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

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

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

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

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

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

28 August 2019: Wouter
	- In tests check for tls test tool availability.
netbsd-srcmastr pushed a commit that referenced this pull request Mar 12, 2020
v3.1.0
======

#47: ``.open`` now raises ``FileNotFoundError`` and
``IsADirectoryError`` when appropriate.

v3.0.0
======

#44: Merge with v1.2.0.

v1.2.0
======

#44: ``zipp.Path.open()`` now supports a compatible signature
as ``pathlib.Path.open()``, accepting text (default) or binary
modes and soliciting keyword parameters passed through to
``io.TextIOWrapper`` (encoding, newline, etc). The stream is
opened in text-mode by default now. ``open`` no
longer accepts ``pwd`` as a positional argument and does not
accept the ``force_zip64`` parameter at all. This change is
a backward-incompatible change for that single function.

v2.2.1
======

#43: Merge with v1.1.1.

v1.1.1
======

#43: Restored performance of implicit dir computation.

v2.2.0
======

#36: Rebuild package with minimum Python version declared both
in package metadata and in the python tag.

v2.1.0
======

#32: Merge with v1.1.0.

v1.1.0
======

#32: For read-only zip files, complexity of ``.exists`` and
``joinpath`` is now constant time instead of ``O(n)``, preventing
quadratic time in common use-cases and rendering large
zip files unusable for Path. Big thanks to Benjy Weinberger
for the bug report and contributed fix (#33).

v2.0.1
======

#30: Corrected version inference (from jaraco/skeleton#12).

v2.0.0
======

Require Python 3.6 or later.
netbsd-srcmastr pushed a commit that referenced this pull request Mar 12, 2020
v1.2.0
======

#44: ``zipp.Path.open()`` now supports a compatible signature
as ``pathlib.Path.open()``, accepting text (default) or binary
modes and soliciting keyword parameters passed through to
``io.TextIOWrapper`` (encoding, newline, etc). The stream is
opened in text-mode by default now. ``open`` no
longer accepts ``pwd`` as a positional argument and does not
accept the ``force_zip64`` parameter at all. This change is
a backward-incompatible change for that single function.

v1.1.1
======

#43: Restored performance of implicit dir computation.
netbsd-srcmastr pushed a commit that referenced this pull request Mar 24, 2020
Update ruby-mixlib-authentication to 3.0.6.


3.0.6 (2019-12-30)

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


3.0.4 (2019-10-31)

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


3.0.1 (2019-04-23)

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


2.1.5 (2019-12-22)

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


2.1.1 (2019-06-10)

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


2.1.0 (2019-06-07)

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


2.0.6 (2019-05-14)

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


2.0.3 (2019-03-20)

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


2.0.1 (2019-01-04)

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


2.0.0 (2019-01-04)

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


## 0.4.0 / 2020-01-18

### Major Enhancements

  * Drop Ruby 2.3 support

### Minor Enhancements

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

### Development Fixes

  * Adopt Jekyll's rubocop config for consistency

### Documentation

  * fixes the readme (#52)
netbsd-srcmastr pushed a commit that referenced this pull request Sep 14, 2020
Update ruby-diff-lcs to 1.4.4.


## 1.4.4 / 2020-07-01

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

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

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

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

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

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

## 1.4.3 / 2020-06-29

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

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

  Resolves [#63][].

## 1.4.2 / 2020-06-23

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

## 1.4.1 / 2020-06-23

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

## 1.4 / 2020-06-23

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

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

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

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

- Enable re2go building by default.

- Package CMake files into release tarball.

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

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

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

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

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

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

- Changes in generic API:

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

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

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

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

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

- Changes in the generated labels:

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

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

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

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

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

- Fixed bugs related to EOF rule:

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

- Fixed miscellaneous bugs:

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

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

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

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

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

----
1.3x
----

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

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

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

- Added generic API primitives:

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

- Added configurations:

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

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

----
1.2x
----

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

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

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

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

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

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

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

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

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

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

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

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

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

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

- Added configurations for options:

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

- Removed configurations for internal/debug options.

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

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

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

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

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

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

- Changed output generation of output file to be atomic.

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

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

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

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

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

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

- Added internal options:

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

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

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

- Fixed handling of newlines:

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

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

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

- Fixed a number of other bugs and resolved issues:

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

- Updated documentation and website.
netbsd-srcmastr pushed a commit that referenced this pull request Oct 30, 2021
Upstream changes:
0.029 2021-10-25 00:02:53+02:00

    - Fix basic implicit mappings in flow sequences, e.g. [a, b: c, d]

0.028 2021-10-21 22:00:36+02:00

    - Fix empty values with properties in flow mappings and sequences
      (`[ &foo , bar]`, `{ &foo , k: v }`)
    - Fix: Allow comment lines with tabs in flow
    - Fix: parsing of explicit block indenting (issue #46)
    - Automatically tie new hashes inside tied hashes (issue #44)
    - yamlpp-load-dump: Add options --dump-module and --include*
    - docs: Add mising constants (issue #45)
netbsd-srcmastr pushed a commit that referenced this pull request Dec 12, 2021
1.3 (2021-03-01)

* Add ssh2_send_eof() [PR #45] (Calvin Buckley)
* PHP stream cast function for SSH channel objects for stream_select()
  support. [PR #38] (Robert Wolf)
* Fix for PHP 7.4 and 8 [PR #44] (Andy Postnikov and Remi Collet)
* Fixed debug and disconnected callback [PR #37] (Piotr Rogowski)
* Various stability and memory issue fixes [PR #39, #41] (Robert Wolf)
* Segfault fix for bug #79757 [PR #43] (Konrad K)
* Various stability and bug fixes #79631, #63480, #80294, #75523, #80729 [PR
  #46, #47, #48, #49, #50 and #51] (Christoph M. Becker)

1.3.1 (2021-03-02)

* 1.3.1 release only fixed the PHP >= 8.0 requirement in the package.xml. No
  code changes.
netbsd-srcmastr pushed a commit that referenced this pull request Feb 21, 2022
Bug Fixes
- Only drop previous releases if skipped (#44)
- Run clippy from nightly toolchain
- Update tests about optional config values
- Set the previous release when using `--unreleased` (#47)
- Lower the priority of global configuration file (#51)
- Update the download link of latest grcov release
- Use the correct tar command for extracting grcov archive
- Update grcov download command
- Update custom error tests

Documentation
- Update template contexts about link_parsers
- Add minimal example
- Update copyright years

Features
- Add `link_parsers` for parsing/extracting links (#42)
- Make the `git` section optional (#45)
- Make the `changelog` section optional (#45)
- [**breaking**] Use conventional commit body to check against commit parsers
- [**breaking**] Replace --topo-order by --date-order (#58)

Miscellaneous Tasks
- Update arg parsing to clap v3 (#49)
- Upgrade dependencies
- Bump the Rust version in Dockerfile
- Run cargo-audit for checking vulnerabilities
- Update the runner to macos-11

Refactor
- Apply clippy suggestions
- [**breaking**] Change the default value of `trim` to `true`
- Unify serde and serde_derive using derive feature (#57)

Styling
- Update the styling
- Comply with MD022 and fix minor typos (#61)
netbsd-srcmastr pushed a commit that referenced this pull request Jun 2, 2022
What's Changed
    -added cross-platform media control in #43, #44 (disabled on pkgsrc)
    -improved device connect logic on startup in #45
    -updated backtrace logic to log all the panics
    -minor UI changes and improvements in #46
    -added enable_media_control and default_device config options.
    (See the general config document).

Breaking changes
    -renamed ReconnectIntegratedClient command to RestartIntegratedClient
    -modified the default shortcuts for SelectNextOrScrollDown,
     SelectPreviousOrScrollUp, and PreviousPage commands
netbsd-srcmastr pushed a commit that referenced this pull request Jun 4, 2022
Change log:

1.5.4
======
- Update configure.ac.in syntax
- Fix #53: taskmanager translations
- Translation Updates:
  Albanian, Basque, Belarusian, Bulgarian, Catalan, Chinese (China),
  Chinese (Taiwan), Czech, Danish, Dutch, Estonian, French, Galician,
  German, Greek, Hebrew, Indonesian, Italian, Japanese, Kazakh, Korean,
  Lithuanian, Norwegian Bokmål, Polish, Portuguese, Portuguese
  (Brazil), Russian, Serbian, Slovak, Spanish, Swedish, Thai, Turkish,
  Ukrainian

1.5.3
======
- Fix rendering bug (Fixes #44)
- Fix rendering bug for swap graph (relates to #44)
- Fix bindings related to the "show-legend" setting
- Allow to copy full process command line (#33)
- Rename Private to Resident Bytes (#7)
- Avoid grabbing the filter entry if it is not realized
- Fix intltool lock file problem during make distcheck
- `uid_name` has been removed from `task` struct
- Fix invalid casts for "About" and "Help" (Fixes #43)
- Show localized website label
- Update COPYING (Issue #49)
- Updated copyright year, authors, and project links
- Translation Updates:
  Albanian, Arabic, Armenian (Armenia), Asturian, Azerbaijani, Basque,
  Belarusian, Bulgarian, Catalan, Chinese (China), Chinese (Hong Kong),
  Chinese (Taiwan), Croatian, Czech, Danish, Dutch, Eastern Armenian,
  English (Australia), English (United Kingdom), Estonian, Finnish,
  French, Galician, German, Greek, Hebrew, Hungarian, Icelandic,
  Indonesian, Interlingue, Italian, Japanese, Kazakh, Korean,
  Lithuanian, Malay, Norwegian Bokmål, Occitan (post 1500), Persian
  (Iran), Polish, Portuguese, Portuguese (Brazil), Russian, Serbian,
  Slovak, Spanish, Swedish, Telugu, Thai, Turkish, Ukrainian, Uyghur
netbsd-srcmastr pushed a commit that referenced this pull request Aug 1, 2022
Breaking Changes
    Move Parser Configuration into a Feature Option by @Builditluc in #63

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

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

Other Changes
    Update Bug Report Issue Template by @Builditluc in #40
    Add label requirement to ci workflow by @Builditluc in #52
    Add documentation job to ci workflow by @Builditluc in #55
    Fix typo in search.rs by @eltociear in #56
    Add yashinghcodes/wik project to similar projects by @Builditluc in #58
    Increase Stale Days to 365 by @Builditluc in #61
netbsd-srcmastr pushed a commit that referenced this pull request Aug 18, 2022
[0.9.1] - 2022-08-18
Added
    Support setting the detail level via config or args (#44)

Changed

    Enable GitHub Sponsors for funding
    Apply clippy lints for tests
    Bump dependencies
    Set MSRV to 1.57.0

Fixed
    Apply clippy lints
    Update test preparation script about gpg directories

Removed
    Remove broken link from README.md
netbsd-srcmastr pushed a commit that referenced this pull request Aug 31, 2022
0.1.35 (2022-04-05)

* Land #42, Add ruby 3.1.1 to test matrix

0.1.36 (2022-05-03)

* Land #45, Allow explicitly setting peer hostname

0.1.37 (2022-05-03)

* Land #46, fixes a bug caused by a missing require statement

0.1.38 (2022-05-03)

* Land #44, Ignore trailing commas in range walker

0.1.39 (2022-05-09)

* Land #48, Fix typo in ssl_tcp.rb Fixes #47

0.1.40 (2022-06-13)

* Fix typo in README.md

0.1.41 (2022-08-02)

* Land #50, Run ubuntu 22.04 in test matrix
netbsd-srcmastr pushed a commit that referenced this pull request Aug 31, 2022
0.2.37 (2021-09-16)

* Land #42, Update Ubuntu version & Ruby setup

0.2.38 (2022-06-29)

* Land #44, Fix rex-text split string crash

0.2.39 (2022-08-08)

* Land #47, Run ubuntu 22.04 in test matrix
netbsd-srcmastr pushed a commit that referenced this pull request Nov 29, 2022
What's New
 - color config option (#43)
    - allows use a "plain"'(white) color for weather
 - display of current time (#44)
    - visual indicator of the current time in the forecast graph
netbsd-srcmastr pushed a commit that referenced this pull request Dec 3, 2022
pkgsrc change: Add PKG_SKIP_REASON if ruby*-base has the same version.

0.3.2 (2022-09-28)

* Make exception API compatible with what Ruby expects #42

0.3.3 (2022-10-29)

* No timeout library required #44
* Make the digest library optional #45
netbsd-srcmastr pushed a commit that referenced this pull request Dec 17, 2022
v1.0.1
What's Changed
- Revert "feat(:nail-care:): dracula-theme" by @arthurhenrique in #51
- revert for color blind by @arthurhenrique in #52

v1.0.0
What's Changed
- Add NetBSD by @0323pin in #39
- chore: add performance checker by @arthurhenrique in #42
- Refactor count_leap_years() and add test cases by @elliotwutingfeng in #40
- Refactor count_leap_years() and add test cases (#40) by @arthurhenrique in #43
- Configure Renovate by @renovate in #44
- feat: show today by @arthurhenrique in #46
- chore: update by @arthurhenrique in #47
- feat(:nail-care:): dracula-theme by @arthurhenrique in #48
- chore: release 🚀 by @arthurhenrique in #49
netbsd-srcmastr pushed a commit that referenced this pull request Jan 11, 2023
From the upstream ChangeLog:

    FIX: fix build with libressl >= 2.7.0
    NEW: Added Ignore Directories Feature
    UPD: Generate Unicode source code based on the latest https://www.unicode.org/Public/UNIDATA/UnicodeData.txt
    FIX: Protect against removing AFP metadata xattr
    FIX: avoid setting adouble entries on symlinks
    FIX: add handling for cases where ad_entry() returns NULL
    FIX: Fix setting of LD_LIBRARY_FLAGS ($shlibpath_var).
    FIX: Fedora migrating away from IO::Socket::INET6 to IO::Socket::IP
    FIX: afpd: check return values from setXXid() functions
    FIX: afpd: drop groups in become_user_permanently()
    FIX: Fix use after free in get_tm_used()
    FIX: Fix sign extension problem in bsd_attr_list()
    FIX: Fix garbage read in bsd_attr_list
    FIX: make afpstats python 3 compatible
    UPD: docs: manual: Remove wrong TCP-over-TCP info; minor copy editing
    FIX: configure.ac: fix macro ordering for CentOS 6
    FIX: configure.ac: fix typo Reviewed-by: Ralph Boehme slow@samba.org
    FIX: configure.ac: remove some trailing whitespace Reviewed-by: Ralph Boehme slow@samba.org
    FIX: configure.ac: fix deprecated macro invocation Reviewed-by: Ralph Boehme slow@samba.org
    FIX: configure.ac: replace obsolete macro Reviewed-by: Ralph Boehme slow@samba.org
    FIX: libatalk/dsi/Makefile.am: fix deprecation warning
    FIX: Store AutoMake helper script in build-aux/
    FIX: configure.ac: define a dir for macros
    FIX: configure.ac: AM_CONFIG_HEADER is deprecated
    FIX: autotools: Fix another deprecation warning
    FIX: libgcrypt typo in configuration error message
    UPD: Various CI improvements
    FIX: libatalk/conf: re-generation of afp_voluuid.conf
    UPD: libatalk/conf: code cleanup and add locking to get_vol_uuid()
    UPD: add documentation for the lv_flags_t
    FIX: No need to check for attropen on Solaris #44


GC unused PLIST options.
netbsd-srcmastr pushed a commit that referenced this pull request Jan 18, 2023
From the upstream ChangeLog:

    FIX: fix build with libressl >= 2.7.0
    NEW: Added Ignore Directories Feature
    UPD: Generate Unicode source code based on the latest https://www.unicode.org/Public/UNIDATA/UnicodeData.txt
    FIX: Protect against removing AFP metadata xattr
    FIX: avoid setting adouble entries on symlinks
    FIX: add handling for cases where ad_entry() returns NULL
    FIX: Fix setting of LD_LIBRARY_FLAGS ($shlibpath_var).
    FIX: Fedora migrating away from IO::Socket::INET6 to IO::Socket::IP
    FIX: afpd: check return values from setXXid() functions
    FIX: afpd: drop groups in become_user_permanently()
    FIX: Fix use after free in get_tm_used()
    FIX: Fix sign extension problem in bsd_attr_list()
    FIX: Fix garbage read in bsd_attr_list
    FIX: make afpstats python 3 compatible
    UPD: docs: manual: Remove wrong TCP-over-TCP info; minor copy editing
    FIX: configure.ac: fix macro ordering for CentOS 6
    FIX: configure.ac: fix typo Reviewed-by: Ralph Boehme slow@samba.org
    FIX: configure.ac: remove some trailing whitespace Reviewed-by: Ralph Boehme slow@samba.org
    FIX: configure.ac: fix deprecated macro invocation Reviewed-by: Ralph Boehme slow@samba.org
    FIX: configure.ac: replace obsolete macro Reviewed-by: Ralph Boehme slow@samba.org
    FIX: libatalk/dsi/Makefile.am: fix deprecation warning
    FIX: Store AutoMake helper script in build-aux/
    FIX: configure.ac: define a dir for macros
    FIX: configure.ac: AM_CONFIG_HEADER is deprecated
    FIX: autotools: Fix another deprecation warning
    FIX: libgcrypt typo in configuration error message
    UPD: Various CI improvements
    FIX: libatalk/conf: re-generation of afp_voluuid.conf
    UPD: libatalk/conf: code cleanup and add locking to get_vol_uuid()
    UPD: add documentation for the lv_flags_t
    FIX: No need to check for attropen on Solaris #44


GC unused PLIST options.
netbsd-srcmastr pushed a commit that referenced this pull request Feb 6, 2023
1.7.0 (2022-11-17)

What's Changed

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


1.8.0 (2023-01-27)

What's Changed

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

1.8.1 (2023-01-27)

What's Changed

* Body should be non-frozen by default. by @ioquatix in #103
* Join test thread. by @ioquatix in #104
* Fix several regexp warnings. by @ioquatix in #105
netbsd-srcmastr pushed a commit that referenced this pull request Jun 12, 2023
What's Changed
 - Add NetBSD by @0323pin in #3
 - Migrate from tui-rs to ratatui by @AmmarAbouZor in #4
 - settings improvements by @AmmarAbouZor in #13
 - [Documentation] Create README Badges by @kevinmatthes in #14
 - CI Improvements by @AmmarAbouZor in #15
 - Changed: Help popup improvements by @AmmarAbouZor in #17
 - Added: Export current journal's content by @AmmarAbouZor in #18
 - Increase Version by @AmmarAbouZor in #19
 - Fixed setting backend path from CLI by @AmmarAbouZor in #22
 - Added: Release CD action by @AmmarAbouZor in #24
 - Fixed: Export journal extension by @AmmarAbouZor in #25
 - Changed: Enhance render loop by @AmmarAbouZor in #28
 - Added: CITATION.cff by @kevinmatthes in #26
 - Added: Edit current journal content in external editor by @AmmarAbouZor
   in #29
 - Added: configure CHANGELOG maintenance utilities by @kevinmatthes in #16
 - Added: Tabs and scrolling to help popup by @AmmarAbouZor in #32
 - Fixed: bugs in fragment creation by @kevinmatthes in #33
 - Added: Multi-selection for journals by @AmmarAbouZor in #34
 - Changed: bump baptiste0928/cargo-install to v2.1.0 by @kevinmatthes in #36
 - [Aeruginous] Create CHANGELOG Fragment by @github-actions in #37
 - Added: Export Import functions for multiple journals by @AmmarAbouZor in #39
 - [Aeruginous] Create CHANGELOG Fragment by @github-actions in #40
 - Fixed: Synchronizing problems with sqlite back-end by @AmmarAbouZor in #41
 - [Aeruginous] Create CHANGELOG Fragment by @github-actions in #42
 - Changed: improve GHA linting speed dramatically by @kevinmatthes in #43
 - [Aeruginous] Create CHANGELOG Fragment by @github-actions in #44
 - Addd: Option to Use Git Configured Editor as External editor by @AmmarAbouZor
   in #45
 - [Aeruginous] Create CHANGELOG Fragment by @github-actions in #46
 - [Aeruginous] Create Missing CHANGELOG Fragments by @AmmarAbouZor in #48
 - Chore: Add dependabot by @AmmarAbouZor in #50
 - [Aeruginous] Assemble CHANGELOG by @github-actions in #52
netbsd-srcmastr pushed a commit that referenced this pull request Jul 4, 2023
Upstream changes:
2.044     2022-11-16

    - Added support for QR codes.

    - [GH-44] The X coordinate returned by $text->position() or (deprecated)
      $text->textpos() was incorrect when read after being set twice (report by
      Johan Vromans).

    - [GH-45] Renamed transform's "relative" option to "repeat" and fixed the
      documentation describing what it does (report by Johan Vromans).

    - [GH-49] Fix page_layout storing its value as page_mode (report by Johan
      Vromans).

    - [GH-50] Fix $pdf->viewer_preferences to return the same values it accepts
      for non_full_screen_page_mode (report by Johan Vromans).

    - Minor doc clarifications and improved error messages.
netbsd-srcmastr pushed a commit that referenced this pull request Jul 4, 2023
Upstream changes:
0.036 2023-05-10 17:09:48+02:00

    - Add option -dumpcode to turn of dumping coderefs in YAML::PP::Schema::Perl
    - ci updates

0.035 2022-09-30 21:16:16+02:00

    - Fix parsing alias as mapping key
    - Support emitting folded block scalars. Now any input should
      be able to output as a folded block scalar correctly. Preserving
      scalar styles will now also preserve those

0.034 2022-06-30 10:31:56+02:00

    - Fix parsing empty folded block scalars with trailing linebreaks
    - Fix error handling (remaining tokens on invalid input)
    - Support experimental v5.36 booleans
    - Allow to specify multiple boolean classes (issue #37)

0.033 2022-06-27 16:31:32+02:00

    - Fix add_mapping_resolver + on_create (tie existing data)

0.032 2022-03-08 19:02:00+01:00

    - Add missing '~' to allowed chars in tags
    - Restructure directive parsing a bit
    - Support YAML::PP::Ref in yamlpp-* utility scripts
    - Add -P to yaml-load-dump --preserve
    - Add --dump option to yamlpp-parse-emit
    - yamlpp-load-dump -D JSON::PP: don't output space before colon
    - Add export tags to YAML::PP::Common
    - Update yaml-test-suite to 2022-01-17

0.031 2021-12-25 23:43:19+01:00

    - Fix several rare test cases:
    - Support literal escaped tabs
    - Allow only one digit for block scalar indent indicator
    - Allow comments at the end of directives
    - Match word boundary after '%YAML'
    - Allow tabs and multiple spaces between directive elements
    - Forbid lines starting with tabs in block mode
    - After tabs no further indentation elements allowed

0.030 2021-11-07 21:57:28+01:00

    - preserve: Keep existing data (issue #44)
    - Forbid directive without directive end marker
    - Support explicit empty key/value pairs in flow mappings
    - Enforce EOL after end of flow context
    - Forbid multiple question marks in flow mappings
netbsd-srcmastr pushed a commit that referenced this pull request Aug 5, 2023
1.19.0 (2023-08-03)

* Add adapter module for external gems.

1.20.0 (2023-08-02)

What's Changed

* Modernize gem. by @ioquatix in #45
* Encode serialized output to avoid encoding errors. by @ioquatix in #44
* This release drops support for Ruby 2.7.
netbsd-srcmastr pushed a commit that referenced this pull request Aug 13, 2023
pkgsrc changes:
 - Remove patch-line.c: was a backport from upstream, no longer needed
 - Add patch-edit.c because several <signal.h> definitions are actually
   accessed on non-OS2 codepaths as well (noticed on NetBSD but should be
   relevant for all non-OS2 platforms)

Changes:
Major changes between "less" versions 633 and 643

* Fix problem when a program piping into less reads from the tty,
  like sudo asking for password (github #368).
* Fix search modifier ^E after ^W.
* Fix bug using negated (^N) search (github #374).
* Fix erroneous EOF when terminal window size changes (github #372).
* Fix compile error with some definitions of ECHONL (github #395).
* Fix regression in exit code when stdin is /dev/null and
  output is a file (github #373).
* Add lesstest test suite to production release (github #344).
* Change lesstest output to conform with
  automake Simple Test Format (github #399).

Major changes between "less" versions 632 and 633

* Fix build on systems which have ncurses/termcap.h or
  ncursesw/termcap.h but not termcap.h.

Major changes between "less" versions 608 and 632

* Add LESSUTFCHARDEF environment variable (github #275).
* Add # command (github #330).
* Add ^S search modifier (github #196).
* Add --wordwrap option (github #113).
* Add --no-vbell option (github #304).
* Add --no-search-headers option (github #44).
* Add --modelines option (github #89).
* Add --intr option (github #224).
* Add --proc-backspace, --proc-tab and --proc-return options (github #335).
* Add --show-preproc-errors option (github #258).
* Add LESS_LINES and LESS_COLUMNS environment variables (github #84).
* Add LESS_DATA_DELAY environment variable (github #337).
* Allow empty "lines" field in --header option.
* Update Unicode tables.
* Improve ability of ^X to interrupt F command (github #49).
* Status column (-J) shows off-screen matches.
* Parenthesized sub-patterns in searches are colored with unique colors,
  if supported by the regular expression library (github #196).
* Don't allow opening a tty as file input unless -f is set (github #309).
* Don't require newline input after +&... option (github #339).
* Fix incorrect handling of some Private Use Unicode characters.
* Fix ANSI color bug when overstriking with colored chars (github #276).
* Fix compiler const warning (github #279).
* Fix signal race in iread (github #280).
* Fix reading procfs files on Linux (github #282).
* Fix --ignore-case with ctrl-R (no regex) search (github #300).
* Fix bug doing repeat search after setting & filter (github #299).
* Fix bug doing repeat search before non-repeat search.
* Fix crash with -R and certain line lengths (github #338).
* Don't retain search options from a cancelled search (github #302).
* Don't call realpath on fake filenames like "-" (github #289).
* Implement lesstest test suite.
* Convert function parameter definitions from K&R to C89 (github #316).
netbsd-srcmastr pushed a commit that referenced this pull request Aug 31, 2023
3.0.0 (2023-08-25)

What's Changed

* Breaking: Drop support for Ruby < 2.5.
* Added: Support for ECDSA (@bensie, @rchekaluk) #43, #44, #46, #49
* Added: OpenSSL 3.x support by @rchekaluk in #48
* Added: Test against Ruby 2.5, 2.6, 2.7, 3.0, 3.1, 3.2, 3.3, jruby-9.3,
  jruby-9.4 with GitHub Actions
* Fixed: SSH public keys not validated/parsed if contain comments by
  @MangyCoyote in #39

New Contributors

* @djberg96 made their first contribution in #40
* @MangyCoyote made their first contribution in #39
* @gogainda made their first contribution in #42
* @rchekaluk made their first contribution in #43
netbsd-srcmastr pushed a commit that referenced this pull request Aug 31, 2023
 - Patch release to pick up the fix for #44 which was a regression
   introduced in 0.7.0.
netbsd-srcmastr pushed a commit that referenced this pull request 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.
netbsd-srcmastr pushed a commit that referenced this pull request Nov 6, 2023
Updates
 - Home page now shows a breakdown of total expense/income per transaction
   method

Changes
 - Show detailed income expense info on the home page by @TheRustyPickle in #43
 - Update version by @TheRustyPickle in #44
netbsd-srcmastr pushed a commit that referenced this pull request Dec 17, 2023
23.0.0 (2022-03-30)
Changed
* Update messages to v18.0.0
* [Java] Replaced Gherkin with a GherkinParser that uses a builder to
  construct.
* [Java] Made all internal classes package private
* [Java] Removed unused stopAtFirstError property from Parser
* [PHP] Implemented Gherkin
* [JavaScript] @cucumber/message-streams has been removed from the
  dependencies. If you are using @cucumber/gherkin-streams v5.0.0 or later,
  you have to add @cucumber/message-streams in your dependencies in addition
  to @cucumber/gherkin.
Removed
* [Java] the io.cucumber.gherkin.Main class is no longer part of the jar.

23.0.1 (2022-03-31)
Fixed
* [PhP] Fix dependency of messages (#1943)

24.0.0 (2022-05-31)
Added
* [Java], [JavaScript], [PHP], [Perl], [Python], [Go], [C], [DotNet], [Ruby]
  Support new messages keyword types fields an added with #1966 (#1741)
Changed
* [Java] the GherkinDialect constructor is no longer public (it's only used
  internally)
* [Go] the gherkin.GherkinDialectsBuildin id renamed to
  gherkin.DialectsBuiltin
* [Go] the gherkin.GherkinDialect id renamed to gherkin.Dialect
* [Go] the gherkin.GherkinDialectProvider id renamed to
  gherkin.DialectProvider
* The ne (Nepali) and translation changed from अनी to अनि
* The uz (Uzbek) given translation changed from Агар to Belgilangan
* The en-old (Old English) when translation changed from Tha / Þa / Ða to
  Bæþsealf / Bæþsealfa / Bæþsealfe / Ciricæw / Ciricæwe / Ciricæwa
Fixed
* [Java] remove shaded dependency on
  com.eclipsesource.minimal-json:minimal-json (#1957 #1959)

24.1.0 (2022-10-10)
Added
* [Java] Added support for reading directly from input (files, streams,
  paths, ect)
* [C] The C implementation re-enabled and made up to date. (#1989)
Fixed
* [Javascript] Include tags from rules in scenario outlines (#2091)
* [Python] Fix gherkin-python for compiling example values with trailing
  backslash (#2048, #1954)
* [PHP] Disallow installation of Messages 18.x (#2034)

25.0.0 (2022-11-09)
Added
* Additional ja (Japanese) translations for and, but
* Added amh (Amharic) translation
* Add Фича and Шаблон примера as more convenient
  translations (#2078)
Changed
* ja (Japanese) Rule translation changed from Rule to ルール
Fixed
* Translations fixed for ka (Georgian) locale

25.0.1 (2022-11-09)
Fixed
* Fix release process for perl and elixir

25.0.2 (2022-11-09)
Fixed
* Fix half-glyph in Georgian translations (#44)

26.0.0 (2022-12-17)
Added
* [Java] Enabled reproducible builds
Changed
* Upgraded messages to v21
* [.NET] Update target frameworks fo .NET 6, .NET Framework 4.6.2, .NET
  Standard 2.0
Fixed
* Link to the correct repository in various package meta-data.
* [Perl] Specify version range for Cucumber::Messages dependency (#50)

26.0.1 (2022-12-17)
Fixed
* [Go] Fix module names

26.0.2 (2022-12-27)
Fixed
* [Go] Fix module names (again)

26.0.3 (2023-01-03)
Fixed
* [Javascript, PHP, Ruby] Allow messages v19.1.4 to v20.0.1 to be used
* [Java] Improve text trim performance (#84)

26.2.0 (2023-04-07)
Changed
* Upgraded messages to v22

26.1.0 (2023-03-23)
Added
* (i18n) Add Belarusian localization

27.0.0 (2023-09-15)
Added
* (i18n) Added Malayalam localization
* (i18n) Added 'ed' to Italian (#31)
* (i18n) Added Danish translation of "Rule"
* (i18n) Added Dutch translation of "Rule"
* (i18n) Added Esperanto translation of "Rule"
* [Ruby] Added Gherkin::Query#parent_locations for determining a scenario's
  parents' line numbers (#89)
* C++ implementation #117
Changed
* [.NET] Bump sdk to .net 8. Added .net 8 to test platforms
* [Go, Perl, Ruby] Upgraded messages to v22
* [Go] Improve performance - don't compile regex on matcher create
* [Perl] Fix release packaging
* [Perl] Include CHANGELOG.md in tarball
* [Perl] Harmonized error reporting with mainstream implementations - errors
  are now converted to messages and reported in the message stream (#31)
* [Ruby] Update minimum ruby requirement from 2.3 to 2.5
netbsd-srcmastr pushed a commit that referenced this pull request Jan 14, 2024
3.5.0:
- Added the - force option
  - Allows a user to force the generation of digests for strings down to
    50 characters long

3.5.1:
- Fixed the error in the Python extension

3.5.2:
- Added the BlackHat Asia tool (presented at Arsenal)

3.7.0:
- merged in various fixes - ifdef for SPARC and RH73
- corrected TLSH_CTC_final.pdf
- added a SHA1 to the NOTICE.txt file
- improved the make.sh so that it calls the test.sh (and does
  regression tests)
- improved regression tests to confirm that the hash is calculated
  correctly in your environment
- fixed the header file C++ standard violation (reserved identifier
  violation #21)

3.7.1:
- resolved issue #29 - the force option for Python
  Step 1 - adding a regression test for strings approx of length 50
  Step 2 - add python code

3.7.2:
- added code to set the distance parameters for ROC analysis

3.7.3:
- resolving issue #44
- making static library the default

3.7.4:
- resolving issue #45
- add a timing test for TLSH

3.7.5:
- resolving issue #46
- in include/tlsh_impl.h
	#define SLIDING_WND_SIZE  5
  this can be varied between 4 to 8

3.8.0:
- Adding    // access functions - required by tools using TLSH library
  - int Lvalue();
  - int Q1ratio();
  - int Q2ratio();

3.9.0:
- resolving issue #48 - tlsh_pattern program

3.9.1:
- resolving issue #38
- putting in fix in rand_tags.cpp so that it generates identical output
  to previous version while safely working with pointers

3.9.2:
- Also merged the contents of NOTICE.txt into LICENSE. This was done
  because NOTICE.txt is sometimes accidently removed when people clone
  this repository. And the LICENSE specifically states that NOTICE.txt
  should NOT be removed.
- Also added command line option -notice which displays the
  NOTICE.txt file

3.9.3:
- currently tlsh_pattern returns all the matches
  modify tlsh_pattern to return the best match
- remove the newline from the input fields when reading in the
  tlsh_pattern file

3.9.4:
- check in order_bug program which demonstrates issue #50
- resolved issue #50 - added code to tlsh_impl.cpp to check for invalid
  call sequences to update() and final()

3.9.5:
- issue #61: added a command line option -notest - do not do any testing

3.9.6:
- Have a cmake option to build tlsh with a zero byte checksum
  (development / research option)
- Default build has 1 byte checksum - which is strongly recommended

3.9.7:
- resolving issue #50 for bin/timing_unittest

3.9.8:
- timing_unittest measures the time taken to do distance calculations
- add a command line option -size - so that you can measure the time
  taken to evaluate different sizes of string

3.9.9:
- resolve issue #62
- remove dependancy on GNUInstallDirs

3.10.0:
- Adding // access function - required by tools using TLSH library
  - int BucketValue(int bucket);
  - int Checksum(int k);

3.11.0:
- Make calculation of TLSH digests approx 7 times faster (for large
  files), done by
  - inline functions
  - unrolling loops
  - fixing the -O2 optimization option

3.11.1:
- tidy up:
  1. use fast_b_mapping() instead of b_mapping()
  2. remove declaration of unsigned r which is never used
  3. remove #include which is not required

3.12.0:
- remove floating point calculations such as log() function
  use alookup table instead

3.13.0:
- .vcproj files and instructions for builing TLSH on Windows using
  Visual Studio

3.13.1:
- fixing setup.py so that you can install Python Extension on Windows

3.14.0:
- adding sliding window size to tlsh_version
- changing test.sh to read the sliding window size

3.14.1:
- fixing error in test script for -xlen option (print statements about
  considering length were incorrect)
- improved test.sh - tests for existance of expected output files

3.15.0:
- Refactor code - so that input of directory or digest is in a struct.
  The code to process input is in library code (input_desc.cpp,
  shared_file_functions.cpp). The input routines can be used by
  myultiple programs. Also, preparing for things like csv input files.

3.15.1:
- added command line option -help to show full help information

3.15.2:
- tlsh_pattern uses refactored code introduced in 3.15.0

3.16.0:
- improved tlsh_pattern functionality
- added regression tests for tlsh_pattern

3.16.1:
- improved tlsh functionality
- add options

3.16.2:
- added regression tests for 3.16.1

3.17.0:
- Make command line option  -force        (50 char limit) the default behaviour
- Add a command line option -conservative (256 char limit)

3.17.3:
- add checking to confirm that TLSH digests are the correct length in
  - -c option
  - -d option
  - the appropriate column of -l listfile options

3.18.0:
- resolve issue #72 - remove tlsh_version

3.19.0:
- preperation for Windows build
  remove ../Testing/ from test.sh script and from regression test
  results

3.19.1:
- in test.sh and testlen.sh - make TLSH_PROG a variable

4.0.0:
- version 4: adding version identifier to each digest: 'T1'
  - adding command line option -old to generate old style digests
  - In this version - the showvers is defaulted to off - so this will
    pass the old regression tests

4.0.1:
- turing on T1 functionality by setting showvers=1 in main
- updating regression tests to have T1 at the start of digests

4.1.0:
- adding -o option for output filename (output will go to stdout if no
  output file given)
  - changed test scripts to use -o option
- adding -ojson option for json output
  - added regression test for -ojson option
- adding -onull option to output empty files / files too small as TNULL

4.2.0:
- Windows version using minGW

4.2.1:
- resolve issue #78 json objects do not validate on windows

4.2.2:
- resolve issue #81
- Pass regression tests

4.2.3:
- add regression tests that are compatible with
  https://github.com/glaslos/tlsh

4.3.0:
- issue #79 - divide by 0 if q3 == 0
  solution. if (q3 == 0) return invalid hash

4.4.0:
- Fixing Python Extension
  - updated python extension to T1 hashes (4.0.0)
  - fixed python_test.sh (which attempted to access old expected
    results files)
  - added license information to py_ext/tlshmodule.cpp

4.4.1:
- Command line options to tlsh_digest.py
  -conservative	enforce 256 byte limit
  -old		generate old style hash (without "T1")
- added python functions to tlsh package (for backwards compatibility)
  tlsh.oldhash(data)
  tlsh.conservativehash(data)
  tlsh.oldconservativehash(data)

4.5.0:
- Checking in files to create pypi package

4.6.0:
- Add architecture ppc64le to travis build (Thanks ddeka2910)

4.7.0:
- Release updated package py-tlsh on Pypi.org
- Merging in pull request that adds functions to Python package
  lvalue, q1ratio, q2ratio, checksum, bucket_value and is_valid
- resolve issue #102 - correct Python version numbers

4.7.2:
- regression tests for C++ and Python functions for:
  lvalue, q1ratio, q2ratio, checksum, bucket_value
- resolve issue #95 - allow Requires-Python: >=2.7

4.8.0:
- Fix the make install target by adding the version.h in the
  installed files

4.8.1:
- Improve portability, add shared library build, install tlsh_unittest

4.8.2:
- fixed tlsh_win_version.h
netbsd-srcmastr pushed a commit that referenced this pull request Jul 19, 2024
Based on PR 58426 by jonathan buschmann.

## 2.4.7 2024-05-05

### Fixed
- docs(pop): clarify --spill behavior (#445)
- fix(branch): disallow branch before subcommand (#447)

### Changed
- refactor: get gix-command via gix with command feature
- Update gix to version 0.62


## 2.4.6 2024-04-07

### Fixed
- fix(bash): fix completion for "committish"

### Changed
- docs: Update copyright year
- chore: update gix to 0.61.1
- ci: update to wix 4.0.5


## 2.4.5 2024-02-18

### Fixed
- fix: stdout from hooks (#418)

### Changed
- chore: add category and keywords to Cargo.toml
- build: exclude some paths from crate
- docs(readme): enumerate more package repositories
- chore: update dependencies


## 2.4.4 2024-02-11

### Fixed
- fix: pass stdio for interactive editing (#415)
- fix: update gix-tempfile and gix-lock to 13.1.0 (#413)

### Changed
- chore: update dependencies


## 2.4.3 2024-02-04

### Added
- feat(branch): allow delete of current branch

### Fixed
- fix(branch): delete branch config with branch
- fix: use gix-command for interactive edit (#407)
- fix: improved interactive editor diagnostics
- chore: update gix to 0.58.0 (#407)
- docs: fix dates in changelog

### Changed
- refactor(branch): use gix to rename config section
- refactor: use gix to remove stgit branch config
- refactor: use gix-command for hooks
- refactor: use non-deprecated indexmap methods
- ci: update cargo-generate-rpm to 0.14.0
- ci: update to upload-artifact@v4
- ci: restore use of IO::Pty in MacOS build


## 2.4.2 2023-12-26

### Changed
- feat(pop): allow unescaped negative patch offsets
- feat(show): allow unescaped negative patch offsets
- chore: update dependencies


## 2.4.1 2023-12-10

### Fixed
- fix(zsh): short -r opt for `stg series`

### Changed
- chore: update gix to 0.56.0
- chore: update transient dependencies


## 2.4.0 2023-10-08

### Added
- feat(delete): --all -A -U -H options
- feat(sink): -T/--above option
- feat(branch): short opts for clone and delete


## 2.3.3 2023-10-04

### Fixed
- fix(zsh): -S option for float, import, and sync
- build: avoid non-portable install options
- test: improved test script portability

### Changed
- update dependencies


## [2.3.2] 2023-08-19

### Fixed
- fix!(uncommit): check for HEAD/top mismatch (#360)
- docs: docstring spelling and formatting fixes

### Changed
- feat(uncommit): print uncommited patches
- pin serde to avoid using precompiled binary
- update dependencies


## [2.3.1] 2023-07-25

### Fixed
- fix(zsh): typo in completion help for stg commit --all
- fix: use canonical Message-ID spelling
- fix(stgit.el): recognize new empty patch marker
- fix(import): Keep first line break in body

### Changed
- update dependencies


## [2.3.0] 2023-05-25

### Removed
- import-compressed is always enabled, no longer a feature

### Added
- unofficial deb and rpm packages
- msi package for Windows

### Fixed
- fix(import): would panic without import-url feature
- fix(import): patch numbers not stripped from name

### Changed
- use bzip2-rs instead of bzip2 crate
- update dependencies


## [2.2.4] 2023-05-15

### Added
- feat: Upgrade from ancient stack state formats (#235)

### Fixed
- fix(branch): create based on remote branch (#317)
- fix(import): lost subject lines resembling header (#321)
- fix(import): subject line may be discarded

### Changed
- chore: update dependencies


## [2.2.3] 2023-04-26

### Fixed
- fix: error using on Windows (#273)
- fix: path handling for Windows compatibility
- fix: commit-msg hook run from work root
- fix: avoid "stg.exe" in usage on Windows
- fix: use gitattributes to force LF endings on Windows
- fix: wrap hooks with sh on Windows

### Changed
- chore: update to gix 0.44.0
- chore: update other dependencies


## [2.2.2] 2023-04-01

### Fixed
- fix: rebase with '@' in ref names (#306)
- fix: improved error messages for unrecognized commands


## [2.2.1] 2023-03-29

### Changed
- chore: update to clap 4.2.0
- chore: update to gix 0.43.0
- chore: pin clap minor version

### Fixed
- fix(branch): allow reuse of partially deleted branch names (#290)
- fix(branch): branch list alignment
- fix: running hooks from worktree subdir (#295)
- fix: running from linked worktree (#297)
- fix(float): correct -S in usage string
- fix: correctly show bold command/subcommand in overidden usage


## [2.2.0] 2023-02-24

### Removed
- feat!: remove short -s option for --submodules
- fix!: patch name cannot be {base} or @

### Added
- feat: patch locator syntax
- feat: locate branches using @{-N} syntax
- feat(series): Add --reverse option
- feat(series): options for patch offsets and indices
- feat(series): --no-xxx options to override display options
- feat(series): optional value for --short
- feat!: short -s option for --signoff (#245)
- feat(init): add -b/--branch option

### Changed
- fix!: use -S as short opt for --series
- feat!: constrain refresh -p to visible patches
- feat(series)!: empty patch prefix changed to *
- feat!: spell errors in lowercase
- refactor: use gitoxide instead of git2
- refactor: use time crate instead of chrono
- feat!: update to clap 4.1
- chore: update to latest dependencies

### Fixed
- fix: Error if author or committer is not configured
- fix: Use correct base directory for core.hooksPaths
- fix(rename): colliding patch names
- fix(rebase): repair rebasing to a tag (#265)
- fix(branch): switch branch with detached head
- docs: Repair docstrings being confused as html
- docs: normalized spelling for --branch value


## [2.1.0] 2022-12-12

### Added
- feat: Configurable push conflict policy (#60)
- feat: Add --committer-date-is-author-date option (#47)
- feat(import): Add --3way option (#36)
- feat(import): Add --directory option (#36)

### Changed
- feat!: Relaxed stack initialization (#238)
- feat!: Only sign stack based on stgit.gpgsign (#238)
- fix!: Allow "---" separator in messages (#243)
- feat: More descriptive push conflict message (#60)
- feat: Avoid post-edit commits when no change
- chore: Update dependencies to latest versions

### Fixed
- fix: Improved error message for uninitialized stack
- fix: Improve error for re-initialization attempt
- fix(prev): Different error message for empty stack
- fix: Accept full ref name for branches
- fix(zsh): Complete --edit and --diff for stg new


## [2.0.4] 2022-11-30

### Changed
- docs: Document configuration variables
- refactor: Use is-terminal instead of atty
- chore: Update Cargo.lock with latest dependencies.

### Fixed
- fix: Don't generate new patch name until after edit (#239)
- fix: Run shell aliases from top-level of work tree
- fix: Use GIT_PREFIX in built-in aliases


## [2.0.3] 2022-11-21

### Changed
- chore: Update Cargo.lock with latest dependencies.

### Fixed
- fix: improved git version parsing on MacOS
- fix: StGit-specific branch config handling
- docs: fixed many typos


## [2.0.2] 2022-11-17

### Changed
- chore: Update Cargo.lock with latest dependencies.
- docs(init): Add long help for `stg init`.

### Added
- feat: Enable basic support for `extensions.worktreeconfig` to unblock
  sparse checkout with partial clone (#195).

### Fixed
- docs: More inter-command links
- docs: Normalize quoting


## [2.0.1] 2022-11-07

### Changed
- chore: Update to clap 4.0.22

### Fixed
- docs(readme): Clarify static versus dynamic linking (#230)
- build: Improve Documentation build performance (#229)


## [2.0.0] 2022-11-06

### Removed
- `stg clone` is removed. Use `git clone` and `stg init` instead.
- `stg mail` is replaced with `stg email format` and `stg email send`.
- `stg refresh --spill` is replaced with dedicated `stg spill` command.
- `stg edit` no longer accepts `-O/--diff-opts`. Custom diff options is
  in conflict with editable diffs since many (most?) diff options cause
  the diff to no long be applicable.
- `stg files` no longer accepts `-O/--diff-opts`. This option was of
  marginal value since it only had a possible side effect when `--stat`
  was being used.

### Added
- `stg id` now accepts the `-b/--branch` option.
- `stg completion` command provides runtime support for shell
  completions.
- `stg completion bash` generates bash shell completion script.
- `stg completion fish` generates fish shell completion script.
- `stg completion zsh` outputs zsh shell completion script.
- `stg completion list` shows StGit commands and aliases and is used at
  completion-time by shell completion scripts.
- `stg completion man` generates man pages in asciidoc format.
- `stg email format` wraps `git format-patch` and provides a mechanism
  to generate patch emails and optional cover letter in mbox format.
- `stg email send` wraps `git send-email` and allows sending patch
  emails, either from files generated by `stg email format` or by
  specifying patches directly.
- `stg new --refresh` allows a new patch to be refreshed with changes in
  one step. The `-i/--index`, `-F/--force`, `-s/--submodules`, and
  `--no-submodules` options from `stg refresh` are also available to
  `stg new` when using `-r/--refresh`.
- `stg series` gains the `-i/--commit-id` option to display patches'
  commit ids.
- `stg show` diff output can now be limited to certain paths by
  specifying path limits on the command line.
- `stg spill` replaces `stg refresh --spill`.
- `stg version` gains `-s/--short` flag to show shortened version info.
- Added documentation for patch range syntax to stg(1) man page.
- Added `install-all` target to top-level Makefile that installs the
  executable, man pages, html pages, and shell completions.

### Changed
- StGit is now implemented entirely in Rust instead of Python.
- StGit is generally much faster; many commands are up to 4x faster.
  There was an emphasis on making informational commands such as `stg
  id`, `stg series`, and `stg top` as fast as possible to make their use
  in interactive contexts (shell prompts, IDE extensions) more
  comfortable.
- StGit error messages have been updated; many have different, and
  hopefully better, wording. Error messages are also use color (when
  color is enabled). Scripts relying on exact error messages from StGit
  will need to be updated.
- StGit output to stdout is generally more terse. Commands that change
  the stack such as `push`, `pop`, and `commit`, use sigils to denote
  the changes made to the stack. E.g. `stg commit p0..p3` will output `$
  p0..p3` where the "$" sigil means that a patch, or patch range, has
  been committed. These are all the currently used stack change sigils:
  - `+` patch was pushed
  - `-` patch was popped
  - `>` patch became the current topmost patch
  - `&` patch was updated
  - `$` patch was committed
  - `#` patch was deleted
  - `@` patch was rolled-back
  - `!` patch was hidden
- StGit aliases are now more like Git aliases. Normal aliases refer to
  StGit subcommands, but aliases prefixed with '!' are shell aliases
  that may run arbitrary commands. An example normal alias would be `git
  config stgit.alias.list 'series --description --empty'`. An example
  shell alias would be `git config stgit.alias.st '!git status
  --short'`.
- Commands such as `stg goto`, `stg push`, and `stg pop` now require
  full/correct patch names on the command line and no longer accept
  unambiguous patch name prefixes. When an inexact patch name is
  provided on the command line, the error message will now suggest
  similar valid patch names.
- Additional template search paths were added. In addition to looking
  for template files in .git/, also look in
  `$XDG_CONFIG_HOME/stgit/templates/` and `$HOME/.stgit/templates`. This
  search strategy is consistent with how git looks for the global config
  file.
- The new `--signoff` patch edit option supersedes the deprecated
  `--sign` and `--sign-by` options. `--signoff` without its optional
  value does the same thing as `--sign`, while `--signoff=<value>` does
  the same thing as `--sign-by=<value>`.
- The `--ack` and `--review` patch edit options now optionally take a
  value. The `--ack-by` and `--review-by` options are deprecated.
- `stg branch` output is now generally less verbose.
- `stg branch --describe` replaces `stg branch --description`. The
  `--description` subcommand remains supported as a hidden alias to
  `--describe`, but the description string must now be provided as its
  own argument; i.e. `--description="description string"` is no longer
  supported.
- `stg branch --list` now produces colorized output. The `--color`
  option or `NO_COLOR` environment variable may be used to affect this
  behavior.
- `stg branch --rename` now supports renaming regular git branches in
  addition to StGit-enabled branches.
- `stg clean` now uses `-A` and `-U` short options for `--applied` and
  `--unapplied` instead of `-a` and `-u`. This is done for consistency
  with `stg series` and `stg show`.
- `stg import` now only recognizes compressed patches by their file
  extension (`.bz2` or `.gz`) and no longer proactively attempts to
  decompress using all known decompressors.
- `stg import` support for compressed input files is selectable at
  compile time using the `import-compressed` feature.
- `stg import` support for importing from a URL is selectable at compile
  time using the `import-url` feature. **N.B.** there is a measurable
  runtime performance impact of building with `import-url` due to the
  unconditional, pre-main initialization of `curl` which affects **all**
  `stg` commands.
- `stg log` now colorizes output by default. The `--color` option or
  `NO_COLOR` environment variable may be used to affect this behavior.
- `stgit.new.verbose` changed to `stgit.edit.verbose` and now also
  affects edit behavior for `edit`, `refresh`, and `squash` along with
  `new`.
- `stg new` now accepts `-e/--edit` and `-d/--diff` instead of
  `-v/--verbose`
- `stg pick` now allows a mix of commits and patches to be picked
  whereas previously only a single commit xor multiple patches could be
  picked.
- `stg pick` now performs a single stack transaction for all the picked
  patches/commits instead of one transaction per pick.
- `stg push` now attempts to perform three-way merges, which may improve
  conflict resolution in some cases. This feature is enabled by default
  when git >= 2.32.0 is detected.
- `stg rebase --interactive` the "squash" and "fixup" instructions may
  no longer be applied to the first patch in the instruction list. The
  stated semantics of both "squash" and "fixup" is that they squash the
  labeled patch with the preceding patch, which is not possible/valid
  when there is no preceding patch.
- `stg refresh` no longer has a `--spill` flag. Use `stg spill` instead.
- `stg series` has updated colorized output.
- `stg series` now requires patch range arguments to be both in-order
  and contiguous. Constraining patch ranges in this manner ensures that
  the output from `stg series` is always a valid/correct view of a
  subset of the series.
- `stg show` diff output respects the `--color` option.
- `stg squash` now allows the full suite of patch edit options,
  including `-d/--diff`. Previously only a few message-related options
  were available.
- `stg version` now displays copyright and license statements.

### Fixed

- `stg branch --create` inherits the current branch's remote branch
  configuration, if available. The Python implementation had an apparent
  bug that prevented inheriting the remote branch configuration when
  creating from the current branch.
- Avoid case insensitive patch name collisions. On operating systems
  with case-insensitive paths, patch names that only differ by case lead
  to patch reference collisions. StGit now ensures that patch names are
  distinct under case insensitive comparisons.
- `stg pull` and `stg rebase` record updated stack state instead of
  deferring until the next stack-modifying command to do so.

### Changed since 2.0.0-rc.2

#### Changed
- chore: Update Cargo.lock

#### Fixed
- fix(zsh): Repair broken completion of --git-opt
- fix(zsh): Add missing `stg email send --branch`
- fix(email): Send using --branch option
- fix: Avoid duplicate signoff with stgit.autosign
- fix: Do not use 3way for merged checks


## [2.0.0-rc.2] 2022-10-23

### Changed
- The `--diff-opts` option is renamed to `--diff-opt`. `--diff-opts`
  remains available as an alias.
- The `--diff-opt` option no longer allows multiple git options per
  occurrence. This allows git diff options with spaces in their values.
- The `--git-opts` option for `stg email format` and `stg email send` is
  renamed `--git-opt`.
- The `--git-opt` option no longer allows multiple git options per
  occurrence. This allows git options with spaces in their values.
- Zsh completion for `--diff-opt` and `--git-opt` leverage the
  full-featured git completion capability.

### Fixed
- Repair check for modifications to stack by external tools.
- `stg pull` and `stg rebase` record updated stack state instead of
  deferring until the next stack-modifying command to do so.
- Improve patch application with `git apply --3way` when pushing` (#225)
- Zsh completion for `--diff-opt` accommodates multiple occurrences


## [2.0.0-rc.1] 2022-09-30

### Added
- Added `--annotate` flag to `stg email send`.
- Added `-p`/`--patch` option to `stg show` as alternative way to select patch
  ranges (#216).
- Added `-n`/`--name` option to `stg new` as alternative way to specify new
  patch name (#216).

### Changed
- Update `git2` to 0.15.0, which may further help compatibility with
  sparse checkouts and multiple worktrees (#195).
- Update to `clap` 4.0, which changes the help formatting and coloring.
- Update other dependencies to latest versions in Cargo.lock.
- No longer depend on `lazy_static` crate.
- Use `std::thread::scope` instead of custom mechanism. This brings the
  total number of uses of `unsafe` in StGit to zero.
- Minimum rustc requirement is set to 1.63.0.
- The '$' sigil used for committed patches is now yellow instead of
  white.
- Patch names beginning with a hyphen '-' may be disambiguated from command
  line options by escaping the leading '-' with a backslash.
- `stg email format` and `stg email send` now use `-G`/`--git-opts` to pass
  additional options to `git format-patch` and `git send-email`.
- Patch name arguments to `stg email format` and `stg email-send` can now be
  placed after a `--` separator (#216).
- Update top-level usage help for `stg`.

### Fixed
- Various errors that may occur when executing a stack transaction are
  now handled more robustly such that the changes from the transaction
  are rolled-back so that the stack, repository, and worktree are all in
  a consistent state (#205).
- The `stg uncommit -h` usage indentation is repaired.
- The `stg float` usage now shows the two distinct usage modes.
- `stg squash --name` allows patch names with leading '-'.
- `stg diff --range` allows patch names and ranges with leading '-'.
- Fix some pre-indented paragraphs in help/about strings.
- Zsh completion for `stg edit` incorrectly included -O/--diff-opts.
- Zsh completion for `stg files` incorrectly included -O/--diff-opts.


## [2.0.0-beta.3] 2022-08-28

### Added
- Add install targets for `contrib/` directory.

### Changed
- Use `git` executable instead of `libgit2` for all status and index
  operations to improve compatibility with sparse index checkouts
  (#195).
- Show commit hash in `stg version` output when not built from tag.
- Use `cargo --locked` consistently in Makefiles.
- Use "patch" extension in temp file name when editing a patch with a
  diff.
- Updated transient dependencies in Cargo.lock.

### Fixed
- Repair `stg branch --describe` panic when run without arguments
- Repair zsh completions for `git branch`
- Repair `stgit.el` to use compatible `stg show` commands (#202).
- Repair `stg uncommit --to` to work with annotated tags (#203).
- Repair `make install` to not install cargo tracking files.


## [2.0.0-beta.2] 2022-08-05

### Changed
- Improved error when push conflicts with untracked files (#193)
- Removed a few transitive dependencies by turning-off features in bstr
  and chrono.
- Update Cargo.lock with latest dependencies
- Update to clap 3.2 and only use non-deprecated interfaces

### Fixed
- Repair `stg spill` when spilling newly added files and using path
  limits.


## [2.0.0-beta.1] 2022-07-28

### Removed
- Removed Python implementation of StGit.

### Added
- Man page generation in asciidoc format with `stg completion man`. This
  was needed for feature parity with the Python implementation.
- Added documentation for patch range syntax to stg(1) man page.
- Added `install-all` target to top-level Makefile that installs the
  executable, man pages, html pages, and shell completions.

### Changed
- Additional template search paths were added. In addition to looking
  for template files in .git/, also look in
  `$XDG_CONFIG_HOME/stgit/templates/` and `$HOME/.stgit/templates`. This
  search strategy is consistent with how git looks for the global config
  file.
- Makefile targets are updated such that they are all applicable to the
  Rust implementation.
- Argument value names are now all lowercase in help and man pages.
- Updated Cargo.lock with latest versions of dependencies.
- Release checklist is updated for Rust implementation.

### Fixed
- Minor typo fixes in help strings
- Improved documentation for top-level `stg` options.
- Improve error message in edge case of attempting to push a hidden
  patch by name when there are no unapplied patches.


## [2.0.0-alpha.2] 2022-07-07

### Added
- `stg email format` wraps `git format-patch` and provides a mechanism
  to generate patch emails and optional cover letter in mbox format.
- `stg email send` wraps `git send-email` and allows sending patch
  emails, either from files generated by `stg email format` or by
  specifying patches directly.

### Changed
- Bash completions for shell aliases now fallback to filename
  completions (#191).
- Help options listings now ensure --color and --help are shown last.
- Various zsh completion improvements:
  - Add descriptions for --color values
  - Complete -O/--diff-opts values (using `git diff-tree --git-completion-helper`)
  - Comprehend `stg -C <dir>` options
  - Improved/corrected alias expansion
  - Improved error messages when completion is attempted outside git
    repo and/or StGit-initialized branch
  - Patch name completions now look and feel like output from `stg
    series`
  - Complete patch range syntax ('patch0..patchN') for all relevant
    commands
  - Completion for `stg squash` no longer allows duplicate patch name
    arguments
  - Removed completions for removed `stg mail` command
  - Completion for `stg sink` no longer offers hidden patches
  - Completion for `stg rename` comprehends second, new patch name
    argument
  - Completion for `stg diff --range` now works

### Fixed
- Compatibility with git versions prior to 2.35.0 is repaired by
  avoiding using `git apply --allow-empty` (#192).
- Fish completions for -O/--diff-opts are repaired


## [2.0.0-alpha.1] 2022-06-17

### Added
- `stg series` gains the `-i/--commit-id` option to display patches'
  commit ids.
- `stg series` colorized output is modified. The main change is that
  patch descriptions are no longer yellow.
- `stg version` now displays copyright and license statements.
- `stg version` gains `-s/--short` flag to show shortened version info.
- The `stgit.diff-opts` configuration variable is now respected as it
  was in the Python implementation.
- `stg completion` command provides runtime support for shell completions.
- `stg completion bash` generates bash shell completion script.
- `stg completion fish` generates fish shell completion script.
- `stg completion zsh` outputs zsh shell completion script.
- `stg completion list` shows StGit commands and aliases and is used at
  completion-time by shell completion scripts.

### Changed
- The `-O/--diff-opts` flag now allows both multiple space separated
  opts in one value as well as multiple occurrences of `-O/--diff-opts`
  on the same command line. This behavior is compatible with the Python
  implementation.
- `stg series` help output splits options into a few sections.
- Dependencies are updated to more recent versions in Cargo.lock.

### Fixed
- `stg edit --set-tree` no longer causes the interactive editor to be
  implicitly invoked.
- Repair build for non-Linux unix targets (including MacOS) and Windows
  targets.
- Avoid case insensitive patch name collisions. On operating systems
  with case-insensitive paths, patch names that only differ by case lead
  to patch reference collisions. StGit now ensures that patch names are
  distinct under case insensitive comparisons.
- Add missing `-t` short option for `--set-tree` for `stg edit`.
- Add missing `-k` short option for `--keep`.


## [2.0.0-alpha.0] 2022-05-17

### Removed
- `stg edit` no longer accepts `-O/--diff-opts`. Custom diff options is
  in conflict with editable diffs since many (most?) diff options cause
  the diff to no long be applicable.
- `stg files` no longer accepts `-O/--diff-opts`. This option was of
  marginal value since it only had a possible side effect when `--stat`
  was being used.
- `stg clone` is removed (at least for the time being). Use `git clone`
  and `stg init` instead.
- `stg mail` is removed, but will be re-added or replaced prior to the
  2.0.0 release.

### Added
- `stg new --refresh` allows a new patch to be refreshed with changes in
  one step. The `-i/--index`, `-F/--force`, `-s/--submodules`, and
  `--no-submodules` options from `stg refresh` are also available to
  `stg new`.
- `stg id` now accepts the `-b/--branch` option.
- `stg spill` replaces `stg refresh --spill`.

### Changed
- StGit aliases are now more like Git aliases. Normal aliases refer to
  StGit subcommands, but aliases prefixed with '!' are shell aliases
  that may run arbitrary commands. An example normal alias would be
  `git config stgit.alias.list 'series --description --empty'`. An
  example shell alias would be `git config stgit.alias.st '!git status
  --short'`.
- The `--ack` and `--review` options now optionally take a value. The
  `--ack-by` and `--review-by` options are deprecated.
- Commands such as `stg goto`, `stg push`, and `stg pop` now require
  full/correct patch names on the command line and no longer accept
  unambiguous patch name prefixes. When an inexact patch name is
  provided on the command line, the error message will now indicate
  similar valid patch names.
- `stg branch` output is now generally less verbose.
- `stg branch --describe` replaces `stg branch --description`. The
  `--description` subcommand remains supported as a hidden alias to
  `--describe`, but the description string must now be provided as its
  own argument; i.e. `--description="description string"` is no longer
  supported.
- `stg branch --list` now produces colorized output. The `--color`
  option or `NO_COLOR` environment variable may be used to affect this
  behavior.
- `stg branch --rename` now supports renaming regular git branches in
  addition to StGit-enabled branches.
- `stg clean` now uses `-A` and `-U` short options for `--applied` and
  `--unapplied` instead of `-a` and `-u`. This is done for consistency
  with `stg series` and `stg show`.
- `stg import` now only recognizes compressed patches by their file
  extension (`.bz2` or `.gz`) and no longer attempts to decompress using
  all known decompressors.
- `stg import` support for compressed input files is selectable at
   compile time using the `import-compressed` feature.
- `stg import` support for importing from a URL is selectable at compile
  time using the `import-url` feature.
- `stg log` now colorizes output by default. The `--color` option or
  `NO_COLOR` environment variable may be used to affect this behavior.
- `stgit.new.verbose` changed to `stgit.edit.verbose` and now affects edit
  behavior for `edit`, `refresh`, and `squash` along with `new`.
- `stg new` now accepts `-e/--edit` and `-d/--diff` instead of `-v/--verbose`
- `stg pick` now allows a mix of commits and patches to be picked
  whereas previously only a single commit xor multiple patches could be
  picked.
- `stg pick` now performs a single stack transaction for all the picked
  patches/commits instead of one transaction per pick.
- `stg rebase --interactive` the "squash" and "fixup" instructions may
  no longer be applied to the first patch in the instruction list. The
  stated semantics of both "squash" and "fixup" is that they squash the
  labeled patch with the preceding patch, which is not possible/valid
  when there is no preceding patch.
- `stg refresh` no longer has the `--spill` flag. Use `stg spill`
  instead.
- Updated colorized output for `stg series`.
- `stg series` now requires patch range arguments to be both in-order
  and contiguous. Constraining patch ranges in this manner ensures that
  the output from `stg series` is always a valid/correct view of a
  subset of the series.
- `stg show` diff can now be limited to certain paths by specifying path
  limits on the command line.
- `stg show` diff output respects the `--color` option.
- The new `--signoff` patch edit option supersedes the deprecated
  `--sign` and `--sign-by` options. `--signoff` without its optional
  value does the same thing as `--sign`, while `--signoff=<value>` does
  the same thing as `--sign-by=<value>`.
- `stg squash` now allows the full suite of patch edit options,
  including `-d/--diff`. Previously only a few message-related options
  were available.

### Fixed
- `stg branch --create` inherits the current branch's remote branch
  configuration, if available. The Python implementation had an apparent
  bug that prevented inheriting the remote branch configuration when
  creating from the current branch.


## [1.5] 2022-01-28

### Removed
### Added
- Add Makefile targets for installing shell completions
- `stg rebase --interactive` learns 'hide' instruction

### Changed
- Picked patch names are preserved when possible (#175)
- Replace `--unapplied` option with `--noapply` for `stg pick` (#174)
- `stg pick --noapply` no longer reverses patch order (#174)
- Use `stg version` uses `sys.executable` to get Python version.

### Fixed
- Repair `stg repair` with amended first patch (#163)
- Repair corner cases where invalid patchnames could be generated by
  `stg new`, `stg uncommit`, etc. (#176)
- `stg mail` could crash due to a misspelled reference (#178)
- Zsh completion for `stg refresh -p` now completes against all patches
  (not just applied patches).
- Zsh gains missing completion for `stg push --noapply`
- Minor repair to help for `stg float --noapply` and `stg push
  --noapply`
- Restore `stg sink --nopush` capability.


## [1.4] 2021-10-27

### Removed
- Python 3.5, which became EOL 2020-09-13, support is deprecated and
  will be removed in a future StGit release
- Python 3.6, which will be EOL 2021-12-23, support is deprecated and
  will be removed in a future StGit release

### Added
- The new `stg import --message-id` option causes the Message-ID from
  imported emails to be included as the Message-Id trailer in the patch
  description (#42)
- The new 'stgit.import.message-id' config option also enables the
  Message-Id trailer (#42)

### Changed
- `stg import` no longer creates "Message-Id" trailer by default when
  importing patches from email (#42)
- StGit works with Python 3.10
- `stg version` prints a more abbreviated Python version
- `stg commit` will no longer commit empty patches by default; the
  `--allow-empty` option may be used to override this behavior (#158)
- The `stgit.main.main()` function now takes an argv parameter and
  returns an int return code in most cases instead of calling
  sys.exit(), thus making main() a bit easier to use as an API.

### Fixed
- Repair stack upgrade with `stg branch --list` (#155)
- Repair crash in `stg squash` with out of order patches and no name
  specified (#157)
- Zsh completions learn `stg float --noapply` option
- Zsh completion for `stg sink` now allows multiple patches


## [1.3] 2021-09-26

### Removed

### Added

### Changed

### Fixed
- Repair crash regression when using `stgit.autosign`

## [1.2] 2021-09-26

### Removed

### Deprecated
- Python 3.5, which became EOL 2020-09-13, support is deprecated and
  will be removed in a future StGit release
- Python 3.6, which will be EOL 2021-12-23, support is deprecated and
  will be removed in a future StGit release

### Added
- `stg rebase ` learns `--interactive`; easily re-order, edit, squash,
  fixup, or delete patches via your editor
- `stg rebase` learns `--autostash`; stash changes before the rebase and
  apply them after. Also configurable with the `stgit.autostash`
  configuration option
- `stg edit` can now rename patches (#119)
- `stg edit` gains helpful instructions (#138)
- `stg new` learns `--verbose`, which includes a diff in the editor
  window (similar to `git commit --verbose`). This behavior is also
  configurable with the `stgit.new.verbose` configuration option
- `stg push` and `stg float` learn `--noapply` option; allows patches
  to be reordered without updating worktree and deferring merge conflict
  resolution (#144)
- `stg edit`, `stg refresh`, and `stg new` learn the `--sign-by`,
  `--ack-by`, and `--review-by` options which allow those respective
  trailers' values to be specified by the user on the command line (#92)

### Changed
- Stack metadata version 5; stack metadata is moved from
  `refs/heads/<branch>.stgit` to `refs/stacks/<branch>` and the stack
  metadata file now uses a JSON format instead of the prior custom
  format; the stack metadata will be upgraded to v5 on first use of
  this version of StGit; like all stack metadata upgrades, **this is a
  one-way auto-upgrade for existing stacks** (#65)
- Use setuptools instead of distutils for packaging
- No git or python version checks in setup.py
- Use different dynamic versioning system
- Install `stg` executable as console_script entry point
- More sophisticated search for bash.exe on Windows when running hooks
- The editor window text for `stg squash` has been modified to mirror
  git's behavior -- the squash edit message now includes all commits
  (#71)
- Binary diffs are no longer shown when with `stg edit -d`
- Multiple trailers can now be added at once; this is now allowed, for
  example: `stg edit --sign --review --ack`
- Update zsh completion for `stg rebase` to show local and remote heads
  (#102)
- Zsh completions for commands with patch arguments now comprehend the
  effect of `-b/--branch` and `-B/--ref-branch`
- Zsh completions now guard patch names--one less TAB press to complete
  patch names in certain contexts
- `stg import` now extracts the `Message-ID` email header into the patch
  message (#42)

### Fixed
- Repair crash when attempting to export empty patch (#112)
- Exact command name matches are unambiguous (#110)
- Exiting with an empty `stg edit` editor will now abort the edit;
  previously it would delete your commit message. (#138)
- Repair completions when stg.series.description is enabled in config
- Workaround child process reaping race on Windows (#78)
- Repair crash with `stg float --series` when bad patch name in series
- Repair zsh completion for `stg float` to accept multiple patch names
- Repair zsh completion for changed files, affecting `stg refresh` and
  `stg diff`

### Internal
- Add link to coverage.io project to CONTRIBUTING.md
- Set smart `exclude_lines` default for 'coverage'
- Expanded test suite for `stg edit`
- Add pkgtest.py script to help test StGit packaging
- Cleanup .gitignore files


## [1.1] 2021-04-30

### Removed

### Added
- StGit GPG-signs patches when `commit.gpgsign` is set (#12)
- Support `core.hooksPath` in git config
- Add `-C` option for `stg import` and `stg fold` (#18)

### Changed
- Allow importing mail and series from urls (#94)
- `stg refresh --edit` may also use `--diff` and `--diff-opts` (#98)
- `stg goto` allows sha1 of a patch instead of patch name (#93)

### Fixed
- Repair hang in `stg pull -m`, `stg goto -m`, and `stg push -m`
- Repair `stg mail` to show diffstat of whole series (#104)
- Repair MANIFEST.in to include AUTHORS.md and README.md files


## [1.0] 2021-02-07

### Removed
- Drop support for Python < 3.5
- Remove previously deprecated `stg publish` command
- Removed contrib scripts: `stg-swallow`, `stg-fold-files-from`,
  `stg-dispatch`, `stg-whatchanged`, and `stg-show-old`

### Added
- The pre-commit hook is now run for `stg refresh`
- New `--spill` option for `stg refresh`
- Add stgit.series.description config option (#88)
- Official support for Python versions up to 3.9

### Changed
- Stack metadata format 4. All metadata now kept in Git objects; no more
  stack state files in .git/patches. **A one-way auto-upgrade to format
  version 4 will occur when StGit commands are run on an existing StGit
  branch.**
- Use `python3` in shebangs instead of `python`
- `contrib/stgbashprompt.sh` is no longer executable
- Internal docstrings now use reStructuredText instead of Epytext

### Fixed
- Importing large patches is much, much faster (#66)
- Other performance improvements when dealing with large patches
- Repair diffstat when outside work tree root (#62)
- Use encoded (string) environment variables on Windows (#79)
- Fix `stg pull` when no upstream is configured (#83)
- Fix `refresh` crash with path limiting and files added to index (#85)
- Repair `new` with patchdescr.template crash (#87)
- Repair `log` from worktree subdir with patches specified
- Repair `import` allowing/generating duplicate patch names (#64)
- Repair `mail --auto` to strip comments after addrs (#91)


## [0.23] 2020-06-12

### Removed
- Drop support for Python 3.3; Python 2 (2.6 and 2.7) remain
  deprecated, but supported for one last release
- Tutorial is removed; it now exists as part of the website

### Deprecated
- Python 2.x support is deprecated and will be removed in a future
  release

### Added
- Support html5 output of docs from asciidoc
- Add `--expose` option for `stg pick` to allow picked commit message to
  be customized

### Changed
- Limit mail diffstat to 72 columns
- Added pyproject.toml file for black configuration
- Minimum Git version is 2.2.0
- Quote stg and subcommand in man page synopsis
- Replaced RELEASENOTES with this CHANGELOG.md
- Replaces Documentation/SubmittingPatches with CONTRIBUTING.md

### Fixed
- Repair MANIFEST.in and generated source dist
- Repair importing mail with ": " (colon space) in subject
- Fix mail cover letter shortlog
- Fix mail cover letter diffstat
- `stg series` now only outputs colors when `isatty()`
- Repair mail SSL check (#57)
- Repair `stg mail` with both `-a` and `-e` options (#58)
- Remove empty short-opt for `--no-submodules` of `stg refresh`
- Repair build.py for Python 2 with explicit `flush()`
- `stgit.refreshsubmodules` added to sample gitconfig

### Internal
- Update docs build system from upstream Git docs
- Use coverage contexts to map commands to covered lines
- Improve mail tests
- Use GitHub Actions instead of TravisCI
- Format StGit source using black formatter

## [0.22] - 2020-03-02

### Removed
- Remove debian packaging; downstream Debian uses its own anyway

### Deprecated
- Python 2.x support is deprecated and will be removed in the next StGit
  release
- `stg publish` is deprecated and will be removed in the next StGit
  release

### Added
- `stg import` has new --keep-cr option, like `git mailsplit`

### Changed
- `stg new` now includes patch name in log message
- `stg branch --rename` can now rename the current branch
- `stg branch --create` now works even if the workspace is dirty,
  consistent with `git checkout`
- `stg branch --description` now works on both regular and stgit
  branches
- `stg edit --diff` now implies `--edit`
- `stg refresh` and `stg edit` now reset the committer information,
  consistent with `stg push`
- git notes are now preserved when patches are modified
- Tutorial improvements
- Many additional tests and test improvements
- All stgit commands now use "new" git library infrastructure

### Fixed
- `stg branch --create` inherits remote correctly from parent committish
- Patch names are checked earlier to avoid inconsistent stack states
- Improved commit data parsing and handling of non-UTF8 encodings
- Repair git error messages when checking stgit version from outside a
  git repo


## [0.21] - 2019-10-28

### Changed
- Faster handling of large patches (#44)

### Fixed
- Build reproducibility repairs (Thanks reproducible-builds.org team!)
- Python can now be run with optimizations (`python -O`)
- `stg log` now prints trailing newline
- Improved command line option parsing for `stg log`


## [0.20] - 2019-10-04

### Added
- `stg patches -d` can now output colored diffs.
- `stg publish --overwrite` allows branch to be overwritten instead of
  creating new commits.
- `stg log --clear` deletes the stack's log history. Use with caution.
- Fish shell completions for stg.
- Zsh completions for stg.
- `stg mail --domain` option overrides the host's domain in the message
  ID.

### Changed
- Branch protection metadata now captured in config instead of
  .git/patches/<branch>protect file. This updates stgit's metadata
  format from v2 to v3.
- `stg diff` no longer shows binary diffs by default. Use `-O--binary`
  or add `--binary` to stgit.diff-opts in config.
- Diagnostic output is now routed to stderr instead of stdout.
  Diagnostic output is also now sent to stderr unconditionally, i.e. no
  more isatty() test (#35).
- Converted to "new" lib infrastructure: `show`, `patches`, `diff`,
  `pick`, `pull`, `rebase`, and `fold`.

### Fixed
- `stg show` detects conflicting --applied and --unapplied options.
- `stg show --stat` now shows commit headers.
- `stg patches --diff` now shows proper diff instead of `b'...'` repr of
  diff.
- `stg diff --range` detects some invalid values (e.g. `-r ..`).
- Date parsing is now more portable, only use platform specific `date`
  as last parsing option. Affects, e.g., `stg refresh --authdate`.
- Repaired search path for templates to avoid looking in Python
  site-packages directory.
- Ensure stdout and stderr are flushed. Rarely affected `stg diff`.
- `stg repair` will now fail if extra command line arguments are
  provided.
- Bash completions are now generated in a reproducible manner.
- `stg edit --diff` on an empty patch no longer crashes.
- `stg pick` no longer fails when picked commit has empty message (#39).
- `stg rebase` no longer crashes when there are conflicts (#34).
- `stg pick` no longer crashes if --name is not provided when picking a
  regular commit object.
- Improved test coverage for: branch, diff, pick, sync,
- New tests for: files, patches, fold, series
- Portable use of iconv, sort, and sed in tests.
- Linting using flake8 and isort.
- All Python code now conforms to PEP-8.
- Updated test infrastructure from git 2.20.
- Parallel tests with coverage (`make -j4 coverage`) now works.
- Documentation build is not included in code coverage.
- Repaired log end messages when using `STGIT_SUBPROCESS_LOG=debug`.
- Renamed "dunder" instance attributes to improve debugging.
- Fail faster when patch name has slash ('/') (#24).


## [0.19] 2018-11-05

### Changed
- Python 3 support. StGit supports Python 2.6, 2.7, 3.3, 3.4, 3.5, 3.6,
  and 3.7. PyPy interpreters are also supported.
- Submodules are now ignored when checking if working tree is clean.
  Submodules are also not included by default when refreshing a patch.
- Config booleans are now parsed similarly to git-config.
- `contrib/stgit.el` is now licenced with GPLv2.
- Add continuous integration (travis-ci) and code coverage (coveralls)
  support.
- Many new test cases were added.

### Fixed
- Repair handling of emails with utf-8 bodies containing latin-1
  characters. Also correctly decode email headers containing quoted
  encoded words.
- StGit's version is now correct/available in the release archive.


## [0.18] 2017-08-14

### Added
- `commit-msg` hook support for easier integration with Gerrit, allowing
  a Change-Id line to be inserted in the commit message
- `stg mail` improvements for 'Suggested-by:' tag and auto generation of
  Cc for the cover letter based on all tags in the series
- `stg mail` bash completion for the --to, --cc and --bcc options based
  on the content of the [mail "alias"] section of Git configuration
- `stg edit --review` option to add a 'Reviewed-by:' tag
- `stg pop --spill` functionality to allow popping a patch from the
  stack while keeping its modification in the tree

### Changed
- Project page details updated (gna.org has been shut down)

### Fixed
- Various fixes and test coverage improvements
netbsd-srcmastr pushed a commit that referenced this pull request Jul 19, 2024
0.1.40 (2024-07-04)

* Land #44, Upversion Github actions
netbsd-srcmastr pushed a commit that referenced this pull request Sep 17, 2024
 - Save current MSRV in manifest by @alerque in #44
 - Improve graph image calculation and add tests by @lusingander in #45
 - Fix ci by @lusingander in #47
 - Graph color config by @lusingander in #48
 - Half-width graph support by @lusingander in #50
 - Minor code cleanup by @lusingander in #51
netbsd-srcmastr pushed a commit that referenced this pull request Oct 18, 2024
# debugme 1.2.0

* debugme now does not instrumented code multiple times, this
  could happen if environments were referenced from multiple
  places (#15).

* debugme now correctly instruments functions with attributes,
  the attributes are kept now. Some packages, e.g. `assertthat` create
  such functions.

* debugme now supports debug levels. Relatedly, `debugme()` has a
  `level` argument now (#49, @krlmlr).

* debugme now correctly instruments functions with `NULL` body
  and functions with no arguments.

* Nested calls are printed better now, with indentation (#44, @krlmlr).

* `debugme()` now re-reads the `DEBUGME` environment variable
  (#45, @krlmlr).

* New `DEBUGME_SHOW_TIMESTAMP` environment variable to hide timestamp
  output for reproducibility (#49, @krlmlr).

* debugme now does not change the random seed (#50).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants