forked from NetBSD/pkgsrc
-
Notifications
You must be signed in to change notification settings - Fork 50
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
want nagios-nrpe in pkgsrc tools #246
Comments
Added to the trunk list, will schedule a build tonight to pick this up. |
jperkin
pushed a commit
that referenced
this issue
Jun 7, 2020
Update ruby-coderay to 1.1.3. 1.1.3 (2020-05-29) * Tokens: Ensure Ruby 2.6 compatibility. [#233, thanks to Jun Aruga] * SQL scanner: Add numeric data type. [#223, thanks to m16a1] * Java scanner: Add var as type. [#229, thanks to Davide Angelocola] * Gem: Fix deprecation warning. [#246, thanks to David Rodr�«¿guez]
jperkin
pushed a commit
that referenced
this issue
Aug 13, 2020
Changes: 2.12.0 ------ ### Added - Added default priority variable `TODOTXT_PRIORITY_ON_ADD` ([#246]) - Added `done` option as alias of `do` ([#169]) - Added macOS 10.15.x support ([#300]) - Highlighting of dates, metadata and item numbers ([#264]) - Minimal config file / default filenames (todo.txt, done.txt, report.txt) ([#289]) - Enable file completion for add-on actions via `_todo_file{1,2,3}_actions` ([#270]) - Allow to customize what can be before / inside / after `+project` and `@context` ([#271]) ### Changed - Read the task's name and uses as default ([#249]) - Updated interpreter reference to use environment variable ([#160]) - Allow setting of bash completion path ([#301]) ### Fixes - Fixed no end-of-line bug. Supports todos with no end-of-line. ([#295])
jperkin
pushed a commit
that referenced
this issue
Sep 21, 2020
2.0.3 (2020-08-22) ~~~~~~~~~~~~~~~~~~ - Fix issues when building re2c as a CMake subproject (`#302 <https://github.com/skvadrik/re2c/pull/302>`_: - Final corrections in the SIMPA article "RE2C: A lexer generator based on lookahead-TDFA", https://doi.org/10.1016/j.simpa.2020.100027 2.0.2 (2020-08-08) ~~~~~~~~~~~~~~~~~~ - Enable re2go building by default. - Package CMake files into release tarball. 2.0.1 (2020-07-29) ~~~~~~~~~~~~~~~~~~ - Updated version for CMake build system (forgotten in release 2.0). - Added a short article about re2c for the Software Impacts journal. 2.0 (2020-07-20) ~~~~~~~~~~~~~~~~ - Added new code generation backend for Go and a new ``re2go`` program (`#272 <https://github.com/skvadrik/re2c/issues/272>`_: Go support). Added option ``--lang <c | go>``. - Added CMake build system as an alternative to Autotools (`#275 <https://github.com/skvadrik/re2c/pull/275>`_: Add a CMake build system (thanks to ligfx), `#244 <https://github.com/skvadrik/re2c/issues/244>`_: Switching to CMake). - Changes in generic API: + Removed primitives ``YYSTAGPD`` and ``YYMTAGPD``. + Added primitives ``YYSHIFT``, ``YYSHIFTSTAG``, ``YYSHIFTMTAG`` that allow to express fixed tags in terms of generic API. + Added configurations ``re2c:api:style`` and ``re2c:api:sigil``. + Added named placeholders in interpolated configuration strings. - Changes in reuse mode (``-r, --reuse`` option): + Do not reset API-related configurations in each `use:re2c` block (`#291 <https://github.com/skvadrik/re2c/issues/291>`_: Defines in rules block are not propagated to use blocks). + Use block-local options instead of last block options. + Do not accumulate options from rules/reuse blocks in whole-program options. + Generate non-overlapping YYFILL labels for reuse blocks. + Generate start label for each reuse block in storable state mode. - Changes in start-conditions mode (``-c, --start-conditions`` option): + Allow to use normal (non-conditional) blocks in `-c` mode (`#263 <https://github.com/skvadrik/re2c/issues/263>`_: allow mixing conditional and non-conditional blocks with -c, `#296 <https://github.com/skvadrik/re2c/issues/296>`_: Conditions required for all lexers when using '-c' option). + Generate condition switch in every re2c block (`#295 <https://github.com/skvadrik/re2c/issues/295>`_: Condition switch generated for only one lexer per file). - Changes in the generated labels: + Use ``yyeof`` label prefix instead of ``yyeofrule``. + Use ``yyfill`` label prefix instead of ``yyFillLabel``. + Decouple start label and initial label (affects label numbering). - Removed undocumented configuration ``re2c:flags:o``, ``re2c:flags:output``. - Changes in ``re2c:flags:t``, ``re2c:flags:type-header`` configuration: filename is now relative to the output file directory. - Added option ``--case-ranges`` and configuration ``re2c:flags:case-ranges``. - Extended fixed tags optimization for the case of fixed-counter repetition. - Fixed bugs related to EOF rule: + `#276 <https://github.com/skvadrik/re2c/issues/276>`_: Example 01_fill.re in docs is broken + `#280 <https://github.com/skvadrik/re2c/issues/280>`_: EOF rules with multiple blocks + `#284 <https://github.com/skvadrik/re2c/issues/284>`_: mismatched YYBACKUP and YYRESTORE (Add missing fallback states with EOF rule) - Fixed miscellaneous bugs: + `#286 <https://github.com/skvadrik/re2c/issues/286>`_: Incorrect submatch values with fixed-length trailing context. + `#297 <https://github.com/skvadrik/re2c/issues/297>`_: configure error on ubuntu 18.04 / cmake 3.10 - Changed bootstrap process (require explicit configuration flags and a path to re2c executable to regenerate the lexers). - Added internal options ``--posix-prectable <naive | complex>``. - Added debug option ``--dump-dfa-tree``. - Major revision of the paper "Efficient POSIX submatch extraction on NFA". ---- 1.3x ---- 1.3 (2019-12-14) ~~~~~~~~~~~~~~~~ - Added option: ``--stadfa``. - Added warning: ``-Wsentinel-in-midrule``. - Added generic API primitives: + ``YYSTAGPD`` + ``YYMTAGPD`` - Added configurations: + ``re2c:sentinel = 0;`` + ``re2c:define:YYSTAGPD = "YYSTAGPD";`` + ``re2c:define:YYMTAGPD = "YYMTAGPD";`` - Worked on reproducible builds (`#258 <https://github.com/skvadrik/re2c/pull/258>`_: Make the build reproducible). ---- 1.2x ---- 1.2.1 (2019-08-11) ~~~~~~~~~~~~~~~~~~ - Fixed bug `#253 <https://github.com/skvadrik/re2c/issues/253>`_: re2c should install unicode_categories.re somewhere. - Fixed bug `#254 <https://github.com/skvadrik/re2c/issues/254>`_: Turn off re2c:eof = 0. 1.2 (2019-08-02) ~~~~~~~~~~~~~~~~ - Added EOF rule ``$`` and configuration ``re2c:eof``. - Added ``/*!include:re2c ... */`` directive and ``-I`` option. - Added ``/*!header:re2c:on*/`` and ``/*!header:re2c:off*/`` directives. - Added ``--input-encoding <ascii | utf8>`` option. + `#237 <https://github.com/skvadrik/re2c/issues/237>`_: Handle non-ASCII encoded characters in regular expressions + `#250 <https://github.com/skvadrik/re2c/issues/250>`_ UTF8 enoding - Added include file with a list of definitions for Unicode character classes. + `#235 <https://github.com/skvadrik/re2c/issues/235>`_: Unicode character classes - Added ``--location-format <gnu | msvc>`` option. + `#195 <https://github.com/skvadrik/re2c/issues/195>`_: Please consider using Gnu format for error messages - Added ``--verbose`` option that prints "success" message if re2c exits without errors. - Added configurations for options: + ``-o --output`` (specify output file) + ``-t --type-header`` (specify header file) - Removed configurations for internal/debug options. - Extended ``-r`` option: allow to mix multiple ``/*!rules:re2c*/``, ``/*!use:re2c*/`` and ``/*!re2c*/`` blocks. + `#55 <https://github.com/skvadrik/re2c/issues/55>`_: allow standard re2c blocks in reuse mode - Fixed ``-F --flex-support`` option: parsing and operator precedence. + `#229 <https://github.com/skvadrik/re2c/issues/229>`_: re2c option -F (flex syntax) broken + `#242 <https://github.com/skvadrik/re2c/issues/242>`_: Operator precedence with --flex-syntax is broken - Changed difference operator ``/`` to apply before encoding expansion of operands. + `#236 <https://github.com/skvadrik/re2c/issues/236>`_: Support range difference with variable-length encodings - Changed output generation of output file to be atomic. + `#245 <https://github.com/skvadrik/re2c/issues/245>`_: re2c output is not atomic - Authored research paper "Efficient POSIX Submatch Extraction on NFA" together with Dr Angelo Borsotti. - Added experimental libre2c library (``--enable-libs`` configure option) with the following algorithms: + TDFA with leftmost-greedy disambiguation + TDFA with POSIX disambiguation (Okui-Suzuki algorithm) + TNFA with leftmost-greedy disambiguation + TNFA with POSIX disambiguation (Okui-Suzuki algorithm) + TNFA with lazy POSIX disambiguation (Okui-Suzuki algorithm) + TNFA with POSIX disambiguation (Kuklewicz algorithm) + TNFA with POSIX disambiguation (Cox algorithm) - Added debug subsystem (``--enable-debug`` configure option) and new debug options: + ``-dump-cfg`` (dump control flow graph of tag variables) + ``-dump-interf`` (dump interference table of tag variables) + ``-dump-closure-stats`` (dump epsilon-closure statistics) - Added internal options: + ``--posix-closure <gor1 | gtop>`` (switch between shortest-path algorithms used for the construction of POSIX closure) - Fixed a number of crashes found by American Fuzzy Lop fuzzer: + `#226 <https://github.com/skvadrik/re2c/issues/226>`_, `#227 <https://github.com/skvadrik/re2c/issues/227>`_, `#228 <https://github.com/skvadrik/re2c/issues/228>`_, `#231 <https://github.com/skvadrik/re2c/issues/231>`_, `#232 <https://github.com/skvadrik/re2c/issues/232>`_, `#233 <https://github.com/skvadrik/re2c/issues/233>`_, `#234 <https://github.com/skvadrik/re2c/issues/234>`_, `#238 <https://github.com/skvadrik/re2c/issues/238>`_ - Fixed handling of newlines: + correctly parse multi-character newlines CR LF in ``#line`` directives + consistently convert all newlines in the generated file to Unix-style LF - Changed default tarball format from .gz to .xz. + `#221 <https://github.com/skvadrik/re2c/issues/221>`_: big source tarball - Fixed a number of other bugs and resolved issues: + `#2 <https://github.com/skvadrik/re2c/issues/2>`_: abort + `#6 <https://github.com/skvadrik/re2c/issues/6>`_: segfault + `#10 <https://github.com/skvadrik/re2c/issues/10>`_: lessons/002_upn_calculator/calc_002 doesn't produce a useful example program + `#44 <https://github.com/skvadrik/re2c/issues/44>`_: Access violation when translating the attached file + `#49 <https://github.com/skvadrik/re2c/issues/49>`_: wildcard state \000 rules makes lexer behave weard + `#98 <https://github.com/skvadrik/re2c/issues/98>`_: Transparent handling of #line directives in input files + `#104 <https://github.com/skvadrik/re2c/issues/104>`_: Improve const-correctness + `#105 <https://github.com/skvadrik/re2c/issues/105>`_: Conversion of pointer parameters into references + `#114 <https://github.com/skvadrik/re2c/issues/114>`_: Possibility of fixing bug 2535084 + `#120 <https://github.com/skvadrik/re2c/issues/120>`_: condition consisting of default rule only is ignored + `#167 <https://github.com/skvadrik/re2c/issues/167>`_: Add word boundary support + `#168 <https://github.com/skvadrik/re2c/issues/168>`_: Wikipedia's article on re2c + `#180 <https://github.com/skvadrik/re2c/issues/180>`_: Comment syntax? + `#182 <https://github.com/skvadrik/re2c/issues/182>`_: yych being set by YYPEEK () and then not used + `#196 <https://github.com/skvadrik/re2c/issues/196>`_: Implicit type conversion warnings + `#198 <https://github.com/skvadrik/re2c/issues/198>`_: no match for ‘operator!=’ in ‘i != std::vector<_Tp, _Alloc>::rend() [with _Tp = re2c::bitmap_t, _Alloc = std::allocator<re2c::bitmap_t>]()’ + `#210 <https://github.com/skvadrik/re2c/issues/210>`_: How to build re2c in windows? + `#215 <https://github.com/skvadrik/re2c/issues/215>`_: A memory read overrun issue in s_to_n32_unsafe.cc + `#220 <https://github.com/skvadrik/re2c/issues/220>`_: src/dfa/dfa.h: simplify constructor to avoid g++-3.4 bug + `#223 <https://github.com/skvadrik/re2c/issues/223>`_: Fix typo + `#224 <https://github.com/skvadrik/re2c/issues/224>`_: src/dfa/closure_posix.cc: pack() tweaks + `#225 <https://github.com/skvadrik/re2c/issues/225>`_: Documentation link is broken in libre2c/README + `#230 <https://github.com/skvadrik/re2c/issues/230>`_: Changes for upcoming Travis' infra migration + `#239 <https://github.com/skvadrik/re2c/issues/239>`_: Push model example has wrong re2c invocation, breaks guide + `#241 <https://github.com/skvadrik/re2c/issues/241>`_: Guidance on how to use re2c for full-duplex command & response protocol + `#243 <https://github.com/skvadrik/re2c/issues/243>`_: A code generated for period (.) requires 4 bytes + `#246 <https://github.com/skvadrik/re2c/issues/246>`_: Please add a license to this repo + `#247 <https://github.com/skvadrik/re2c/issues/247>`_: Build failure on current Cygwin, probably caused by force-fed c++98 mode + `#248 <https://github.com/skvadrik/re2c/issues/248>`_: distcheck still looks for README + `#251 <https://github.com/skvadrik/re2c/issues/251>`_: Including what you use is find, but not without inclusion guards - Updated documentation and website.
jperkin
pushed a commit
that referenced
this issue
Sep 21, 2020
# DBI 1.1.0 ## New features - New `DBIConnector` class (#280). - Specify `immediate` argument to `dbSendQuery()`, `dbGetQuery()`, `dbSendStatement()` and `dbExecute()` (#268). - Use specification for `dbGetInfo()` (#271). - `dbUnquoteIdentifier()` now supports `Id()` objects with `catalog` members (#266, @raffscallion). It also handles unquoted identifiers of the form `table`, `schema.table` or `catalog.schema.table`, for compatibility with dbplyr. ## Documentation - New DBI intro article (#286, @cutterkom). - Add pkgdown reference index (#288). - DBI specification on https://dbi.r-dbi.org/dev/articles/spec now comes with a table of contents and code formatting. - Update examples to refer to `params` instead of `param` (#235). - Improved documentation for `sqlInterpolate()` (#100). Add usage of `SQL()` to `sqlInterpolate()` examples (#259, @renkun-ken). - Improve documentation for `Id`. ## Internal - Add tests for `dbUnquoteIdentifier()` (#279, @baileych). - `sqlInterpolate()` uses `dbQuoteLiteral()` instead of checking the type of the input. - Avoid partial argument match in `dbWriteTable()` (#246, @richfitz).
jperkin
pushed a commit
that referenced
this issue
Oct 9, 2020
Pkgsrc changes: * Add option for doh (DNS-over-HTTPS), default enabled. Upstream changes: This release contains the DNS Flag Day 2020 changes. This sets the default EDNS buffer size to 1232, that should reduce fragmentation. https://dnsflagday.net/2020/ There is inclusive language in the configuration. There is caps-exempt, ipsecmod-allow and primary server options for auth-zones. The older terms are accepted to keep configuration working. DNS-over-HTTPS is supported in this release. The DoH is enabled when Unbound is compiled with the nghttp2 library, with configure --with-libnghttp2. Then have an interface on the https port, that can be configured with the https-port option. Also have a cert and key available with the tls-service-key and tls-service-pem options. Further settings can be configured for the http-endpoint, http-max-streams, http-query-buffer-size, http-response-buffer-size and http-nodelay options. The max streams sets the maximum concurrent streams, the buffer size options the number of bytes in buffers, and the nodelay option can turn on TCP_NODELAY for DNS-over-HTTPS service. In the statistics the memory used is reported in mem.http.query_buffer and mem.http.response_buffer. The number of queries is reported in num.query.https, they are also included in the tcp and tls counts because https uses TLS and TCP. The DLV options and code to handle DLV lookups have been removed from the code base. The DLV repository is empty nowadays, it has been decommissioned. There is a new feature where it is possible to use interface names to bind to the IP addresses on that interface. It pulls in the addresses at the start of the server, if the addresses change, use the existing freebind and other socket options to register for addresses before they appear, or the interface-automatic option that copies them from queries to answers with ancillary data. There is a new option for the edns-tag draft specification. It can be enabled if you need the tentative implementation to add those tags to outgoing messages. Features - DNS Flag Day 2020: change edns-buffer-size default to 1232. - Merge PR #255: DNS-over-HTTPS support. - Use inclusive language in configuration - Merge PR #284 and Fix #246: Remove DLV entirely from Unbound. The DLV has been decommisioned and in unbound 1.5.4, in 2015, there was advise to stop using it. The current code base does not contain DLV code any more. The use of dlv options displays a warning. - Similar to NSD PR#113, implement that interface names can be used, eg. something like interface: eth0 is resolved at server start and uses the IP addresses for that named interface. - Merge PR #272: Add EDNS client tag functionality. - Add edns-client-tag-opcode option Bug Fixes - Merge PR #270 from cgzones: munin plugin: always exit 0 in autoconf - Merge PR #269, Fix python module len() implementations, by Torbjörn Lönnemark - Merge PR #268, draft-ietf-dnsop-serve-stale-10 has become RFC 8767 on March 2020, by and0x000. - Fix doxygen comment for no ssl for tls session ticket key callback routine. - Fix mini_event.h on OpenBSD cannot find fd_set. - Improve error log message when inserting rpz RR. - Merge PR #280, Make tvOS & watchOS checks verify truthiness as well as definedness, by Felipe Gasper. - contrib/aaaa-filter-iterator.patch file renewed diff content to apply cleanly to the current coderepo for the current code version. - Fix #287: doc typo: "Additionaly". - Merge (modified) PR #277, use EVP_MAC_CTX_set_params if available, by Vít#zslav #í#ek. - Create and init edns tags data for libunbound. - Fix stats double count issue (#289). - Fix that dnstap reconnects do not spam the log with the repeated attempts. Attempts on the timer are only logged on high verbosity, if they produce a connection failure error. - Fix to apply chroot to dnstap-socket-path, if chroot is enabled. - Change configure to use EVP_sha256 instead of HMAC_Update for openssl-3.0.0. - Update documentation in python example code. - Review fix interface, doxygen and assign null in case of error free. - Merge PR #293: Add missing prototype. Also refactor to use the new shorthand function to clean up the code. - Refactor to use sock_strerr shorthand function. - Fix #296: systemd nss-lookup.target is reached before unbound can successfully answer queries. Changed contrib/unbound.service.in. - Fix num.expired statistics output. - Remove x file mode on ipset/ipset.c and h files. - Spelling fix. - Introduce test for statistics. - Fix that prefer-ip4 and prefer-ip6 can be get and set with unbound-control, with libunbound and the unbound-checkconf option output function. - Merge PR #311 by luismerino: Dynlibmod leak. - Error message is logged for dynlibmod malloc failures. - iana portlist updated. - Fix #304: dnstap logging not recovering after dnstap process restarts - Fix edns-client-tags get_option typo - Fix #305: dnstap logging significantly affects unbound performance (regression in 1.11). - Fix #305: only wake up thread when threshold reached. - Fix to ifdef fptr wlist item for dnstap. - Fix memory leak of edns tags at libunbound context delete. - Fix double loopexit for unbound-dnstap-socket after sigterm.
jperkin
pushed a commit
that referenced
this issue
Nov 6, 2020
Version 1.64.1 -------------- - The BigInt type is now _actually_ available, as it wasn't enabled in the 1.64.0 release even though it was mentioned in the release notes. - Closed bugs and merge requests: * testCommandLine's Unicode tests failing on Alpine Linux [Philip Chimento, #296, !399] * build: Various clean-ups [Jan Tojnar, !403] * Correctly handle vfunc inout parameters [Marco Trevisan, !404] * Fix failed redirect of output in CommandLine tests [Liban Parker, !409] Version 1.58.6 -------------- - Various backports: * Correctly handle vfunc inout parameters [Marco Trevisan] * Fix failed redirect of output in CommandLine tests [Liban Parker] * Avoid filename conflict when tests run in parallel [Philip Chimento] Version 1.64.0 -------------- - No change from 1.63.92. Version 1.63.92 --------------- - Closed bugs and merge requests: * object: Use g_irepository_get_object_gtype_interfaces [Colin Walters, Philip Chimento, #55, !52] * Add -fno-semantic-interposition to -Bsymbolic-functions [Jan Alexander Steffens (heftig), #303, !397] * examples: add a dbus-client and dbus-service example [Andy Holmes, !398] * Various GNOME Shell crashes during GC, mozjs68 regression [Jan Alexander Steffens (heftig), Philip Chimento, #301, !396] Version 1.63.91 --------------- - Closed bugs and merge requests: * [mozjs68] Reorganize modules for ESM. [Evan Welsh, Philip Chimento, !383] * Various maintenance [Philip Chimento, !388] * Fix building GJS master with Visual Studio and update build instructions [Chun-wei Fan, !389] * Resolve "Gnome Shell crash on GC run with mozjs68" [Philip Chimento, !391] * installed-tests/js: Add missing dep on warnlib_typelib [Jan Alexander Steffens, !393] * object: Cache known unresolvable properties [Daniel van Vugt, Philip Chimento, !394, #302] Version 1.58.5 -------------- - Closed bugs and merge requests: * Fix Visual Studio builds of gnome-3-34 (1.58.x) branch [Chun-wei Fan, !392] * Can not access GObject properties of classes without GI information [Juan Pablo Ugarte, !385, #299] Version 1.63.90 --------------- - New JS API: The GObject module has gained new overrides: GObject.signal_handler_find(), GObject.signal_handlers_block_matched(), GObject.signal_handlers_unblock_matched(), and GObject.signal_handlers_disconnect_matched(). These overrides replace the corresponding C API, which was not idiomatic for JavaScript and was not fully functional because it used bare C pointers for some of its functionality. See modules/overrides/GObject.js for API documentation. - New JavaScript features! This version of GJS is based on SpiderMonkey 68, an upgrade from the previous ESR (Extended Support Release) of SpiderMonkey 60. Here are the highlights of the new JavaScript features. For more information, look them up on MDN or devdocs.io. * New language features + The BigInt type, currently a stage 3 proposal in the ES standard, is now available. * New syntax + `globalThis` is now the ES-standard supported way to get the global object, no matter what kind of JS environment. The old way, `window`, will still work, but is no longer preferred. + BigInt literals are expressed by a number with "n" appended to it: for example, `1n`, `9007199254740992n`. * New APIs + String.prototype.trimStart() and String.prototype.trimEnd() now exist and are preferred instead of trimLeft() and trimRight() which are nonstandard. + String.prototype.matchAll() allows easier access to regex capture groups. + Array.prototype.flat() flattens nested arrays, well-known from lodash and similar libraries. + Array.prototype.flatMap() acts like a reverse filter(), allowing adding elements to an array while iterating functional-style. + Object.fromEntries() creates an object from iterable key-value pairs. + Intl.RelativeTimeFormat is useful for formatting time differences into human-readable strings such as "1 day ago". + BigInt64Array and BigUint64Array are two new typed array types. * New behaviour + There are a lot of minor behaviour changes as SpiderMonkey's JS implementation conforms ever closer to existing ECMAScript standards and adopts new ones. For complete information, read the Firefox developer release notes: https://developer.mozilla.org/en-US/Firefox/Releases/61#JavaScript https://developer.mozilla.org/en-US/Firefox/Releases/62#JavaScript https://developer.mozilla.org/en-US/Firefox/Releases/63#JavaScript https://developer.mozilla.org/en-US/Firefox/Releases/64#JavaScript https://developer.mozilla.org/en-US/Firefox/Releases/65#JavaScript https://developer.mozilla.org/en-US/Firefox/Releases/66#JavaScript https://developer.mozilla.org/en-US/Firefox/Releases/67#JavaScript https://developer.mozilla.org/en-US/Firefox/Releases/68#JavaScript * Backwards-incompatible changes + The nonstandard String generics were removed. These had only ever been implemented by Mozilla and never made it into a standard. (An example of a String generic is calling a string method on something that might not be a string like this: `String.endsWith(foo, 5)`. The proper way is `String.prototype.endsWith.call(foo, 5)` or converting `foo` to a string.) This should not pose much of a problem for existing code, since in the previous version these would already print a deprecation warning whenever they were used. You can use `moz68tool` from mozjs-deprecation-tools (https://gitlab.gnome.org/ptomato/moz60tool) to scan your code for this nonstandard usage. - Closed bugs and merge requests: * invalid import on signal.h [#295, !382, Philip Chimento] * SpiderMonkey 68 [#270, !386, Philip Chimento] * GObject: Add override for GObject.handler_block_by_func [#290, !371, Philip Chimento] Version 1.63.3 -------------- - Closed bugs and merge requests: * JS ERROR: TypeError: this._rooms.get(...) is undefined [Philip Chimento, #289, !367] * Run CI build with --werror [Philip Chimento, #286, !365] * build: Remove Autotools build system [Philip Chimento, !364] * gjs-symlink script is incompatible with distro builds [Michael Catanzaro, Bastien Nocera, #291, !369, !370] * installed-tests: Don't hardcode the path of bash [Ting-Wei Lan, !372] * Update Visual Studio build instructions (after migrating to full Meson-based builds) [Chun-wei Fan, !375] * object: Warn when setting a deprecated property [Florian Müllner, !378] * CI: Create mozjs68 CI images [Philip Chimento, !379] * Various maintenance [Philip Chimento, !374, !380, !381] Version 1.58.4 -------------- - Now prints a warning when constructing an unregistered object inheriting from GObject (i.e. if you forgot to use GObject.registerClass.) In 1.58.2 this would throw an exception, which broke some existing code, so that change was reverted in 1.58.3. In this version the check is reinstated, but we log a warning instead of throwing an exception, so that people know to fix their code, but without breaking things. NOTE: In 1.64 (the next stable release) the warning will be changed back into an exception, because code with this problem can be subtly broken and cause unexpected errors elsewhere. So make sure to fix your code if you get this warning. - Closed bugs and merge requests: * GSettings crash fixes [Andy Holmes, !373] - Memory savings for Cairo objects [Philip Chimento, !374] - Fix for crash in debug functions [Philip Chimento, !374] Version 1.63.2 -------------- - There is an option for changing the generated GType name for GObject classes created in GJS to a new scheme that is less likely to have collisions. This scheme is not yet the default, but you can opt into it by setting `GObject.gtypeNameBasedOnJSPath = true;` as early as possible in your prograṁ. Doing this may require some changes in Glade files if you use composite widget templates. We recommend you make this change in your codebase as soon as possible, to avoid any surprises in the future. - New JS API: GObject.Object has gained a stop_emission_by_name() method which is a bit more idiomatic than calling GObject.signal_stop_emission_by_name(). - It's now supported to use the "object" attribute in a signal connection in a composite widget template in a Glade file. - Closed bugs and merge requests: * CI: Tweak eslint rule for unneeded parentheses [Florian Müllner, !353] * Smarter GType name computation [Marco Trevisan, !337] * Meson CI [Philip Chimento, !354] * Visual Studio builds using Meson [Chun-wei Fan, !355] * Hide internal symbols from ABI [Marco Trevisan, #194, !352] * Allow creating custom tree models [Giovanni Campagna, #71] * build: Fix dist files [Florian Müllner, !357] * GObject: Add convenience wrapper for signal_stop_emission_by_name() [Florian Müllner, !358] * Various maintenance [Philip Chimento, !356] * object_instance_props_to_g_parameters should do more check on argv [Philip Chimento, #63, !359] * Support flat C arrays of structures [Philip Chimento, !361] * Gtk Templates: support connectObj argument [Andy Holmes, !363] - Various build fixes [Philip Chimento] Version 1.58.2 -------------- - Closed bugs and merge requests: * GObject based class initialization checks [Marco Trevisan, Philip Chimento, !336] * Silently leaked return value of callbacks [Xavier Claessens, Philip Chimento, #86, !44] * Crash when calling Gio.Initable.async_init with not vfunc_async_init implementation [Philip Chimento, #287, !362] * [cairo] insufficient checking [Philip Chimento, #49, !360] - Various crash fixes backported from the development branch that didn't close a bug or merge request. Version 1.63.1 -------------- - Note that the 1.59, 1.60, 1.61, and 1.62 releases are hereby skipped, because we are calling the next stable series 1.64 to match gobject-introspection and GLib. - GJS now includes a Meson build system. This is now the preferred way to build it; however, the old Autotools build system is still available for a transitional period. - Closed bugs and merge requests: * GObject: Add convenience wrapper for signal_handler_(un)block() [Florian Müllner, !326] * GObject based class initialization checks [Marco Trevisan, Philip Chimento, !336] * Meson port [Philip Chimento, !338] * add http client example [Sonny Piers, !342] * Smaller CI, phase 2 [Philip Chimento, !343] * add websocket client example [Sonny Piers, !344] * Fix Docker images build [Philip Chimento, !345] * CI: Use new Docker images [Philip Chimento, !346] * docs: Update internal links [Andy Holmes, !348] * Don't pass generic marshaller to g_signal_newv() [Niels De Graef, !349] * tests: Fail debugger tests if command failed [Philip Chimento, !350] * Minor CI image fixes [Philip Chimento, !351] * Various fixes [Marco Trevisan, Philip Chimento] Version 1.58.1 -------------- - Closed bugs and merge requests: * Import wiki documentation [Sonny Piers, !341] * Smaller CI, phase 1 [Philip Chimento, !339] * Crashes after setting child property 'icon-name' on GtkStack then displaying another GtkStack [Florian Müllner, #284, !347] * GLib.strdelimit crashes [Philip Chimento, #283, !340] Version 1.58.0 -------------- - No change from 1.57.92. Version 1.57.92 --------------- - Closed bugs and merge requests: * tests: Enable regression test cases for GPtrArrays and GArrays of structures [Stéphane Seng, !334] * Various maintenance [Philip Chimento, !333, !335] Version 1.57.91 --------------- - GJS no longer links to libgtk-3. This makes it possible to load the Gtk-4.0 typelib in GJS and write programs that use GTK 4. - The heapgraph tool has gained some improvements; it is now possible to print a heap graph of multiple targets. You can also mark an object for better identification in the heap graph by assigning a magic property: for example, myObject.__heapgraph_name = 'Button' will make that object identify itself as "Button" in heap graphs. - Closed bugs and merge requests: * Remove usage of Lang in non legacy code [Sonny Piers, !322] * GTK4 [Florian Müllner, #99, !328, !330] * JS syntax fixes [Marco Trevisan, Philip Chimento, !306, !323] * gi: Avoid infinite recursion when converting GValues [Florian Müllner, !329] * Implement all GObject-introspection test suites [Philip Chimento, !327, !332] * Heapgraph improvements [Philip Chimento, !325] Version 1.57.90 --------------- - New JS API: GLib.Variant has gained a recursiveUnpack() method which transforms the variant entirely into a JS object, discarding all type information. This can be useful for dealing with a{sv} dictionaries, where deepUnpack() will keep the values as GLib.Variant instances in order to preserve the type information. - New JS API: GLib.Variant has gained a deepUnpack() method which is exactly the same as the already existing deep_unpack(), but fits with the other camelCase APIs that GJS adds. - Closed bugs and merge requests: * Marshalling of GPtrArray broken [#9, !311, Stéphane Seng] * Fix locale chooser [!313, Philip Chimento] * dbus-wrapper: Remove interface skeleton flush idle on dispose [!312, Marco Trevisan] * gobject: Use auto-compartment when getting property as well [!316, Florian Müllner] * modules/signals: Use array destructuring in _emit [!317, Jonas Dreßler] * GJS can't call glibtop_init function from libgtop [#259, !319, Philip Chimento] * GLib's VariantDict is missing lookup [#263, !320, Sonny Piers] * toString on an object implementing an interface fails [#252, !299, Marco Trevisan] * Regression in GstPbutils.Discoverer::discovered callback [#262, !318, Philip Chimento] * GLib.Variant.deep_unpack not working properly with a{sv} variants [#225, !321, Fabián Orccón, Philip Chimento] * Various maintenance [!315, Philip Chimento] - Various CI fixes [Philip Chimento] Version 1.57.4 -------------- - Closed bugs and merge requests: * gjs 1.57 requires a recent sysprof version for sysprof-capture-3 [#258, !309, Olivier Fourdan] - Misc documentation changes [Philip Chimento] Version 1.57.3 -------------- - The GJS profiler is now integrated directly into Sysprof 3, via the GJS_TRACE_FD environment variable. Call stack information and garbage collector timing will show up in Sysprof. See also GNOME/Initiatives#10 - New JS API: System.addressOfGObject(obj) will return a string with the hex address of the underlying GObject of `obj` if it is a GObject wrapper, or throw an exception if it is not. This is intended for debugging. - New JS API: It's now possible to pass a value from Gio.DBusProxyFlags to the constructor of a class created by Gio.DBusProxy.makeProxyWrapper(). - Backwards-incompatible change: Trying to read a write-only property on a DBus proxy object, or write a read-only property, will now throw an exception. Previously it would fail silently. It seems unlikely any code is relying on the old behaviour, and if so then it was probably masking a bug. - Closed bugs and merge requests: * Build failure on Continuous [#253, !300, Philip Chimento] * build: Bump glib requirement [!302, Florian Müllner] * profiler: avoid clearing 512 bytes of stack [!304, Christian Hergert] * system: add addressOfGObject method [!296, Marco Trevisan] * Add support for GJS_TRACE_FD [!295, Christian Hergert] * Gio: Make possible to pass DBusProxyFlags to proxy wrapper [!297, Marco Trevisan] * Various maintenance [!301, Philip Chimento] * Marshalling of GPtrArray broken [#9, !307, Stéphane Seng] * Build fix [!308, Philip Chimento] * Gio: sync dbus wrapper properties flags [!298, Marco Trevisan] * GjsMaybeOwned: Reduce allocation when used as Object member [!303, Marco Trevisan] Version 1.57.2 -------------- - There are now overrides for Gio.SettingsSchema and Gio.Settings which avoid aborting the whole process when trying to access a nonexistent key or child schema. The original API from GLib was intended for apps, since apps should have complete control over which settings keys they are allowed to access. However, it is not a good fit for shell extensions, which may need to access different settings keys depending on the version of GNOME shell they're running on. This feature is based on code from Cinnamon which the copyright holders have kindly agreed to relicense to GJS's license. - New JS API: It is now possible to pass GObject.TypeFlags to GObject.registerClass(). For example, passing `GTypeFlags: GObject.TypeFlags.ABSTRACT` in the class info object, will create a class that cannot be instantiated. This functionality was present in Lang.Class but has been missing from GObject.registerClass(). - Closed bugs and merge requests: * Document logging features [#230, !288, Andy Holmes] * Support optional GTypeFlags value in GObject subclasses [!290, Florian Müllner] * Ensure const-correctness in C++ objects [#105, !291, Onur Şahin] * Programmer errors with GSettings cause segfaults [#205, !284, Philip Chimento] * Various maintenance [!292, Philip Chimento] * debugger: Fix summary help [!293, Florian Müllner] * context: Use Heap pointers for GC objects stored in vectors [!294, Philip Chimento] Version 1.56.2 -------------- - Closed bugs and merge requests: * Crash in BoxedInstance when struct could not be allocated directly [#240, !285, Philip Chimento] * Cairo conversion bugs [!286, Philip Chimento] * Gjs crashes when binding inherited property to js added gobject-property [#246, !289, Marco Trevisan] * console: Don't accept --profile after the script name [!287, Philip Chimento] Version 1.57.1 -------------- - Closed bugs and merge requests: * Various maintenance [!279, Philip Chimento] * mainloop: Assign null to property instead of deleting [!280, Jason Hicks] * Added -d version note README.md [!282, Nauman Umer] * Extra help for debugger commands [#236, !283, Nauman Umer] * Crash in BoxedInstance when struct could not be allocated directly [#240, !285, Philip Chimento] * Cairo conversion bugs [!286, Philip Chimento] Version 1.56.1 -------------- - Closed bugs and merge requests: * Calling dumpHeap() on non-existent directory causes crash [#134, !277, Philip Chimento] * Using Gio.MemoryInputStream.new_from_data ("string") causes segfault [#221, !278, Philip Chimento] * Fix gjs_context_eval() for non-zero-terminated strings [!281, Philip Chimento] Version 1.56.0 -------------- - No change from 1.55.92. Version 1.55.92 --------------- - Closed bugs and merge requests: * Fix CI failures [!269, Philip Chimento] * Possible memory allocation/deallocation bug (possibly in js_free() in GJS) [!270, Chun-wei Fan, Philip Chimento] * cairo-context: Special-case 0-sized vector [!271, Florian Müllner] * Add some more eslint rules [!272, Florian Müllner] * win32/NMake: Fix introspection builds [!274, Chun-wei Fan] * NMake/libgjs-private: Export all the public symbols there [!275, Chun-wei Fan] Version 1.55.91 --------------- - The problem of freezing while running the tests using GCC's sanitizers was determined to be a bug in GCC, which was fixed in GCC 9.0.1. - Closed bugs and merge requests: * gnome-sound-recorder crashes deep inside libgjs [#223, !266, Philip Chimento] * Various maintenance [!267, Philip Chimento] * wrapperutils: Define $gtype property as non-enumerable [!268, Philip Chimento] Version 1.55.90 --------------- - New JS API: It's now possible to call and implement DBus methods whose parameters or return types include file descriptor lists (type signature 'h'.) This involves passing or receiving a Gio.UnixFDList instance along with the parameters or return values. To call a method with a file descriptor list, pass the Gio.UnixFDList along with the rest of the parameters, in any order, the same way you would pass a Gio.Cancellable or async callback. For return values, things are a little more complicated, in order to avoid breaking existing code. Previously, synchronously called DBus proxy methods would return an unpacked GVariant. Now, but only if called with a Gio.UnixFDList, they will return [unpacked GVariant, Gio.UnixFDList]. This does not break existing code because it was not possible to call a method with a Gio.UnixFDList before, and the return value is unchanged if not calling with a Gio.UnixFDList. This does mean, unfortunately, that if you have a method with an 'h' in its return signature but not in its argument signatures, you will have to call it with an empty FDList in order to receive an FDList with the return value, when calling synchronously. On the DBus service side, when receiving a method call, we now pass the Gio.UnixFDList received from DBus to the called method. Previously, sync methods were passed the parameters, and async methods were passed the parameters plus the Gio.DBusInvocation object. Appending the Gio.UnixFDList to those parameters also should not break existing code. See the new tests in installed-tests/js/testGDBus.js for examples of calling methods with FD lists. - We have observed on the CI server that GJS 1.55.90 will hang forever while running the test suite compiled with GCC 9.0.0 and configured with the --enable-asan and --enable-ubsan arguments. This should be addressed in one of the following 1.55.x releases. - Closed bugs and merge requests: * GDBus proxy overrides should support Gio.DBusProxy.call_with_unix_fd_list() [#204, !263, Philip Chimento] * Add regression tests for GObject vfuncs [!259, Jason Hicks] * GjsPrivate: Sources should be C files [!262, Philip Chimento] * build: Vendor last-good version of AX_CODE_COVERAGE [!264, Philip Chimento] Version 1.55.4 -------------- - Closed bugs and merge requests: * Various maintenance [!258, Philip Chimento] * Boxed copy constructor should not be called, split Boxed into prototype and instance structs [#215, !260, Philip Chimento] Version 1.55.3 -------------- - Closed bugs and merge requests: * Manually constructed ByteArray toString segfaults [#219, !254, Philip Chimento] * signals: Add _signalHandlerIsConnected method [!255, Jason Hicks] * Various maintenance [!257, Philip Chimento] Version 1.52.5 -------------- - This was a release consisting only of backports from the GNOME 3.30 branch to the GNOME 3.28 branch. - This release includes the "Big Hammer" patch from GNOME 3.30 to reduce memory usage. For more information, read the blog post at https://feaneron.com/2018/04/20/the-infamous-gnome-shell-memory-leak/ It was not originally intended to be backported to GNOME 3.28, but in practice several Linux distributions already backported it, and it has been working well to reduce memory usage, and the bugs have been ironed out of it. It does decrease performance somewhat, so if you don't want that then don't install this update. - Closed bugs and merge requests: * Ensure not to miss the force_gc flag [#150, !132, Carlos Garnacho] * Make GC much more aggressive [#62, !50, Giovanni Campagna, Georges Basile Stavracas Neto, Philip Chimento] * Queue GC when a GObject reference is toggled down [#140, !114, !127, Georges Basile Stavracas Neto] * Reduce memory overhead of g_object_weak_ref() [#144, !122, Carlos Garnacho, Philip Chimento] * context: Defer and therefore batch forced GC runs [performance] [!236, Daniel van Vugt] * context: use timeout with seconds to schedule a gc trigger [!239, Marco Trevisan] * Use compacting GC on RSS size growth [!133, #151, Carlos Garnacho] * GType memleak fixes [!244, Marco Trevisan] Version 1.55.2 -------------- - Closed bugs and merge requests: * Gnome-shell crashes on destroying cached param specs [#213, !240, Marco Trevisan] * Various maintenance [!235, !250, Philip Chimento] * Auto pointers builder [!243, Marco Trevisan] * configure.ac: Update bug link [!245, Andrea Azzarone] * SIGSEGV when exiting gnome-shell [#212, !247, Andrea Azzarone, Philip Chimento] * Fix build with --enable-dtrace and create CI job to ensure it doesn't break in the future [#196, !237, !253, Philip Chimento] * Delay JSString-to-UTF8 conversion [!249, Philip Chimento] * Annotate return values [!251, Philip Chimento] * Fix a regression with GError toString() [!252, Philip Chimento] * GType memleak fixes [!244, Marco Trevisan] * Atoms refactor [!233, Philip Chimento, Marco Trevisan] * Write a "Code Hospitable" README file [#17, !248, Philip Chimento, Andy Holmes, Avi Zajac] * object: Method lookup repeatedly traverses introspection [#54, !53, Colin Walters, Philip Chimento] * Handler of GtkEditable::insert-text signal is not run [#147, !143, Tomasz Miąsko, Philip Chimento] Version 1.54.3 -------------- - Closed bugs and merge requests: * object: Fix write-only properties [!246, Philip Chimento] * SIGSEGV when exiting gnome-shell [#212, !247, Andrea Azzarone] * SelectionData.get_targets crashes with "Unable to resize vector" [#201, !241, Philip Chimento] * Gnome-shell crashes on destroying cached param specs [#213, !240, Marco Trevisan] * GType memleak fixes [!244, Marco Trevisan] * Fix build with --enable-dtrace and create CI job to ensure it doesn't break in the future [#196, !253, Philip Chimento] Version 1.54.2 -------------- - Closed bugs and merge requests: * context: Defer and therefore batch forced GC runs [performance] [!236, Daniel van Vugt] * context: use timeout with seconds to schedule a gc trigger [!239, Marco Trevisan] * fundamental: Check if gtype is valid before using it [!242, Georges Basile Stavracas Neto] - Backported a fix for a crash in the interactive interpreter when executing something like `throw "foo"` [Philip Chimento] - Backported various maintenance from 3.31 [Philip Chimento] Version 1.55.1 -------------- - New API for programs that embed GJS: gjs_memory_report(). This was already an internal API, but now it is exported. - Closed bugs and merge requests: * object: Implement newEnumerate hook for GObject [!155, Ole Jørgen Brønner] * Various maintenance [!228, Philip Chimento] * ByteArray.toString should stop at null bytes [#195, !232, Philip Chimento] * Byte arrays that represent encoded strings should be 0-terminated [#203, !232, Philip Chimento] * context: Defer and therefore batch forced GC runs [performance] [!236, Daniel van Vugt] * context: use timeout with seconds to schedule a gc trigger [!239, Marco Trevisan] * arg: Add special-case for byte arrays going to C [#67, !49, Jasper St. Pierre, Philip Chimento] Version 1.52.4 -------------- - This was a release consisting only of backports from the GNOME 3.30 branch to the GNOME 3.28 branch. - Closed bugs and merge requests: * `ARGV` encoding issues [#22, !108, Evan Welsh] * Segfault on enumeration of GjSFileImporter properties when a searchpath entry contains a symlink [#154, !144, Ole Jørgen Brønner] * Possible refcounting bug around GtkListbox signal handlers [#24, !154, Philip Chimento] * Fix up GJS_DISABLE_JIT flag now the JIT is enabled by default in SpiderMonkey [!159, Christopher Wheeldon] * Expose GObject static property symbols. [!197, Evan Welsh] * Do not run linters on tagged commits [!181, Claudio André] * gjs-1.52.0 fails to compile against x86_64 musl systems [#132, !214, Philip Chimento] * gjs no longer builds after recent autoconf-archive updates [#149, !217, Philip Chimento] Version 1.54.1 -------------- - Closed bugs and merge requests: * legacy: Ensure generated GType names are valid [!229, Florian Müllner] * Fix GJS profiler with MozJS 60 [!230, Georges Basile Stavracas Neto] * Regression with DBus proxies [#202, !231, Philip Chimento] Version 1.54.0 -------------- - Compatibility fix for byte arrays: the legacy toString() behaviour of byte arrays returned from GObject-introspected functions is now restored. If you use the functionality, a warning will be logged asking you to upgrade your code. - Closed bugs and merge requests: * byteArray: Add compatibility toString property [Philip Chimento, !227] Version 1.53.92 --------------- - Technology preview of a GNOME 3.32 feature: native Promises for GIO-style asynchronous operations. This is the result of Avi Zajac's summer internship. To use it, you can opt in once for each specific asynchronous method, by including code such as the following: Gio._promisify(Gio.InputStream.prototype, 'read_bytes_async', 'read_bytes_finish'); After executing this, you will be able to use native Promises with the Gio.InputStream.prototype.read_async() method, simply by not passing a callback to it: try { let bytes = await stream.read_bytes_async(count, priority, cancel); } catch (e) { logError(e, 'Failed to read bytes'); } Note that any "success" boolean return values are deleted from the array of return values from the async method. That is, let [contents, etag] = file.load_contents_async(cancel); whereas the callback version still returns a useless [ok, contents, etag] that can never be false, since on false an exception would be thrown. In the callback version, we must keep this for compatibility reasons. Note that due to a bug in GJS (https://gitlab.gnome.org/GNOME/gjs/issues/189), promisifying methods on Gio.File.prototype and other interface prototypes will not work. We provide the API Gio._LocalFilePrototype on which you can promisify methods that will work on Gio.File instances on the local disk only: Gio._promisify(Gio._LocalFilePrototype, 'load_contents_async', 'load_contents_finish'); We estimate this will cover many common use cases. Since this is a technology preview, we do not guarantee API stability with the version coming in GNOME 3.32. These APIs are marked with underscores to emphasize that they are not stable yet. Use them at your own risk. - Closed bugs and merge requests: * Added promisify to GJS GIO overrides [!225, Avi Zajac] * Temporary fix for Gio.File.prototype [!226, Avi Zajac] Version 1.53.91 --------------- - Closed bugs and merge requests: * CI: add webkit and gtk-app tests [!222, Claudio André] * Fix example eslint errors [!207, Claudio André, Philip Chimento] * Fix more "lost" GInterface properties [!223, Florian Müllner] * Fix --enable-installed-tests when built from a tarball [!224, Simon McVittie] Version 1.53.90 --------------- - GJS now depends on SpiderMonkey 60 and requires a compiler capable of C++14. - GJS includes a simple debugger now. It has basic stepping, breaking, and printing commands, that work like GDB. Activate it by running the GJS console interpreter with the -d or --debugger flag before the name of the JS program on the command line. - New API for programs that embed GJS: gjs_context_setup_debugger_console(). To integrate the debugger into programs that embed the GJS interpreter, call this before executing the JS program. - New JavaScript features! This version of GJS is based on SpiderMonkey 60, an upgrade from the previous ESR (Extended Support Release) of SpiderMonkey 52. Here are the highlights of the new JavaScript features. For more information, look them up on MDN or devdocs.io. * New syntax + `for await (... of ...)` syntax is used for async iteration. + The rest operator is now supported in object destructuring: e.g. `({a, b, ...cd} = {a: 1, b: 2, c: 3, d: 4});` + The spread operator is now supported in object literals: e.g. `mergedObject = {...obj1, ...obj2};` + Generator methods can now be async, using the `async function*` syntax, or `async* f() {...}` method shorthand. + It's now allowed to omit the variable binding from a catch statement, if you don't need to access the thrown exception: `try {...} catch {}` * New APIs + Promise.prototype.finally(), popular in many third-party Promise libraries, is now available natively. + String.prototype.toLocaleLowerCase() and String.prototype.toLocaleUpperCase() now take an optional locale or array of locales. + Intl.PluralRules is now available. + Intl.NumberFormat.protoype.formatToParts() is now available. + Intl.Collator now has a caseFirst option. + Intl.DateTimeFormat now has an hourCycle option. * New behaviour + There are a lot of minor behaviour changes as SpiderMonkey's JS implementation conforms ever closer to ECMAScript standards. For complete information, read the Firefox developer release notes: https://developer.mozilla.org/en-US/Firefox/Releases/53#JavaScript https://developer.mozilla.org/en-US/Firefox/Releases/54#JavaScript https://developer.mozilla.org/en-US/Firefox/Releases/55#JavaScript https://developer.mozilla.org/en-US/Firefox/Releases/56#JavaScript https://developer.mozilla.org/en-US/Firefox/Releases/57#JavaScript https://developer.mozilla.org/en-US/Firefox/Releases/58#JavaScript https://developer.mozilla.org/en-US/Firefox/Releases/59#JavaScript https://developer.mozilla.org/en-US/Firefox/Releases/60#JavaScript * Backwards-incompatible changes + Conditional catch clauses have been removed, as they were a Mozilla extension which will not be standardized. This requires some attention in GJS programs, as previously we condoned code like `catch (e if e.matches(Gio.IOError, Gio.IOError.EXISTS))` with a comment in overrides/GLib.js, so it's likely this is used in several places. + The nonstandard `for each (... in ...)` loop was removed. + The nonstandard legacy lambda syntax (`function(x) x*x`) was removed. + The nonstandard Mozilla iteration protocol was removed, as well as nonstandard Mozilla generators, including the Iterator and StopIteration objects, and the Function.prototype.isGenerator() method. + Array comprehensions and generator comprehensions have been removed. + Several nonstandard methods were removed: ArrayBuffer.slice() (but not the standard version, ArrayBuffer.prototype.slice()), Date.prototype.toLocaleFormat(), Function.prototype.isGenerator(), Object.prototype.watch(), and Object.prototype.unwatch(). - Many of the above backwards-incompatible changes can be caught by scanning your source code using https://gitlab.gnome.org/ptomato/moz60tool, or https://extensions.gnome.org/extension/1455/spidermonkey-60-migration-validator/ - Deprecation: the custom ByteArray is now discouraged. Instead of ByteArray, use Javascript's native Uint8Array. The ByteArray module still contains functions for converting between byte arrays, strings, and GLib.Bytes instances. The old ByteArray will continue to work as before, except that Uint8Array will now be returned from introspected functions that previously returned a ByteArray. To keep your old code working, change this: let byteArray = functionThatReturnsByteArray(); to this: let byteArray = new ByteArray.ByteArray(functionThatReturnsByteArray()); To port to the new code: * ByteArray.ByteArray -> Uint8Array * ByteArray.fromArray() -> Uint8Array.from() * ByteArray.ByteArray.prototype.toString() -> ByteArray.toString() * ByteArray.ByteArray.prototype.toGBytes() -> ByteArray.toGBytes() * ByteArray.fromString(), ByteArray.fromGBytes() remain the same * Unlike ByteArray, Uint8Array's length is fixed. Assigning an element past the end of a ByteArray would lengthen the array. Now, it is ignored. Instead use Uint8Array.of(), for example, this code: let a = ByteArray.fromArray([97, 98, 99, 100]); a[4] = 101; should be replaced by this code: let a = Uint8Array.from([97, 98, 99, 100]); a = Uint8Array.of(...a, 101); The length of the byte array must be set at creation time. This code will not work anymore: let a = new ByteArray.ByteArray(); a[0] = 255; Instead, use "new Uint8Array(1)" to reserve the correct length. - Closed bugs and merge requests: * Run tests using real software [#178, !192, Claudio André] * Script tests are missing some errors [#179, !192, Claudio André] * Create a '--disable-readline' option and use it [!196, Claudio André] * CI: stop using Fedora for clang builds [!198, Claudio André] * Expose GObject static property symbols. [!197, Evan Welsh] * CI fixes [!200, Claudio André] * Docker images creation [!201, Claudio André] * Get Docker images built and stored in GJS registry [#185, !203, !208, Claudio André, Philip Chimento] * Clear the static analysis image a bit more [!205, Claudio André] * Rename the packaging job to flatpak [!210, Claudio André] * Create SpiderMonkey 60 docker images [!202, Claudio André] * Debugger [#110, !204, Philip Chimento] * Add convenience g_object_set() replacement [!213, Florian Müllner] * Add dependencies of the real tests (examples) [!215, Claudio André] * CWE-126 [#174, !218, Philip Chimento] * gjs no longer builds after recent autoconf-archive updates [#149, !217, Philip Chimento] * gjs-1.52.0 fails to compile against x86_64 musl systems [#132, !214, Philip Chimento] * Run the GTK real tests (recently added) [!212, Claudio André] * Fix thorough tests failures [!220, Philip Chimento] * Port to SpiderMonkey 60 [#161, !199, Philip Chimento] * Replace ByteArray with native ES6 TypedArray [#5, !199, Philip Chimento] * Overriding GInterface properties broke [#186, !216, Florian Müllner, Philip Chimento] * Avoid segfault when checking for GByteArray [!221, Florian Müllner] - Various build fixes [Philip Chimento]
jperkin
pushed a commit
that referenced
this issue
Feb 23, 2021
Changelog: ## [1.7.2](rime/librime@1.7.1...1.7.2) (2021-02-07) ### Bug Fixes * **chord_composer:** should clear raw input after committing text ([79b34ab](rime/librime@79b34ab)) ## [1.7.1](rime/librime@1.7.0...1.7.1) (2021-02-06) ### Bug Fixes * **chord_composer:** press Return key to commit raw key sequence ([2b25861](rime/librime@2b25861)) # [1.7.0](rime/librime@1.6.1...1.7.0) (2021-01-17) ### Bug Fixes * **chord_composer:** more safely handle the placeholder ZWSP ([025d9fb](rime/librime@025d9fb)) * **cmake:** use full paths defined by GNUInstallDirs ([bb8c263](rime/librime@bb8c263)), closes [#424](rime/librime#424) * **opencc:** update submodule to fix [#425](rime/librime#425) ([3fa1571](rime/librime@3fa1571)) * **script_translator:** always_show_comments also applies to phrases ([440a97c](rime/librime@440a97c)), closes [#272](rime/librime#272) [#419](rime/librime#419) * **table_translator:** index out of bound access in string ([ff7acdc](rime/librime@ff7acdc)) ### Features * **chareset_filter:** add CJK Compatibility Ideographs in is_extended_cjk() ([3cb1128](rime/librime@3cb1128)), closes [#305](rime/librime#305) * **setup:** find and load external RIME plugins as shared libs [#431](rime/librime#431) ([b2abd09](rime/librime@b2abd09)) ## [1.6.1](rime/librime@1.6.0...1.6.1) (2020-09-21) ### Bug Fixes * **rime_api.cc:** dangling pointer returned from RimeGetSharedDataDir ([78abaa8](rime/librime@78abaa8)) # [1.6.0](rime/librime@1.5.3...1.6.0) (2020-09-20) ### Bug Fixes * **ascii_composer:** do not comsume Shift key release ([debc2c0](rime/librime@debc2c0)) * **ascii_composer:** first read ascii_composer/good_old_caps_lock from schema config ([3fc56c4](rime/librime@3fc56c4)) * **chord_composer:** commit raw input with uppercase letters ([cc983d5](rime/librime@cc983d5)) * **CMakeLists.txt:** ensure paths in pkgconfig file are absolute ([0e96e51](rime/librime@0e96e51)) * **CMakeLists.txt:** would not use signals v1 due to a typo ([6662a28](rime/librime@6662a28)), closes [#225](rime/librime#225) * **custom_settings:** accept "*.schema" as config id ([604da0b](rime/librime@604da0b)) * **dict:** issues with user db recovery ([0f3d0df](rime/librime@0f3d0df)) * **dict_compiler:** build prism with loaded syllabary when not rebuilding primary table ([93fe827](rime/librime@93fe827)) * **plugins/CMakeLists.txt:** avoid rime_library linking to itself via rime_plugins_deps ([fe744db](rime/librime@fe744db)) * **rime_api.cc:** check struct has member of non-pointer type ([090dfa4](rime/librime@090dfa4)) * **rime_api.cc:** using unchecked fields introduced an ABI breakage ([62bbead](rime/librime@62bbead)), closes [/github.com/rime/librime/pull/328#pullrequestreview-335125464](https://github.com//github.com/rime/librime/pull/328/issues/pullrequestreview-335125464) * **rime_test:** set data directories to working directory using rime::SetupDeployer API ([7c08a90](rime/librime@7c08a90)) * **simplifier:** opencc::DictEntry::Values() type change in opencc 1.1.0 ([beae5b1](rime/librime@beae5b1)), closes [#367](rime/librime#367) * **user_db:** pointer cast error caused by multiple inheritance ([2ed780b](rime/librime@2ed780b)) * use official emoji 12.0 data ([#304](rime/librime#304)) ([75a60dc](rime/librime@75a60dc)) ### Features * **api:** implement capnproto api ([873f648](rime/librime@873f648)) * **api:** include candidate labels in proto message ([aae7a0c](rime/librime@aae7a0c)) * **charset_filter:** support charset options with emoji ([#293](rime/librime#293)) ([943c95b](rime/librime@943c95b)) * **charset_filter:** support CJK Unified Ideographs Extension G ([#393](rime/librime#393)) ([0a1573d](rime/librime@0a1573d)) * **chord_composer:** support chording with Shift keys ([94cf479](rime/librime@94cf479)) * **chord_composer:** use Control, Alt, Shift to input chord ([f3a2ad0](rime/librime@f3a2ad0)) * **dictionary:** packs extends the dictionary with extra binary table files ([930074c](rime/librime@930074c)) * **key_binder:** bind key to a key sequence ([3b5dbf6](rime/librime@3b5dbf6)), closes [#301](rime/librime#301) * **logging:** setup min log level, log dir and set file mode to log files ([90839b0](rime/librime@90839b0)) * **selector:** support 4 combinations of horizontal/vertical text orientation and stacked/linear candidate list layout ([c498f71](rime/librime@c498f71)) * **selector:** support vertical UI ([dbb35c6](rime/librime@dbb35c6)) * **switcher:** enable schema in cases where conditions are met ([217c72b](rime/librime@217c72b)) * **tools/rime_proto_console:** demo for proto api ([d88ef9f](rime/librime@d88ef9f)) ### Performance Improvements * **poet:** optimize for performance in making sentences (~40% faster) ([0853465](rime/librime@0853465)) ## [1.5.3](rime/librime@1.5.2...1.5.3) (2019-06-22) ### Bug Fixes * **cmake, xcode.mk:** find optional dependency icu, while building xcode/release-with-icu target [skip appveyor] ([17a80f8](rime/librime@17a80f8)) * **single_char_filter:** broken in librime 1.5.2 ([6948a62](rime/librime@6948a62)) ### Features * **appveyor:** build variant "rime-with-plugins" for tagged commits [skip travis] ([eef8c30](rime/librime@eef8c30)) * **travis-ci:** build variant "rime-with-plugins" for tagged commits [skip appveyor] ([cf11c27](rime/librime@cf11c27)) * **travis-ci:** deploy artifacts for macOS to GitHub releases [skip appveyor] ([3f03784](rime/librime@3f03784)) ## [1.5.2](rime/librime@1.5.1...1.5.2) (2019-06-17) ### Bug Fixes * **user_dictionary, contextual_translation:** fix user phrase quality; order contextual suggestions by type ([69d5c32](rime/librime@69d5c32)) ## [1.5.1](rime/librime@1.5.0...1.5.1) (2019-06-16) ### Bug Fixes * **user_dictionary:** make user phrases comparable in weight to system words ([982f69d](rime/librime@982f69d)) # [1.5.0](rime/librime@1.4.0...1.5.0) (2019-06-06) ### Bug Fixes * **ci:** update build script ([84a1a1b](rime/librime@84a1a1b)) * **ci:** use submodules in AppVeyor CI build script ([7b515b4](rime/librime@7b515b4)) * **cmake:** libboost Windows XP compatibility fix ([#270](rime/librime#270)) ([fecfe39](rime/librime@fecfe39)), closes [rime/weasel#337](rime/weasel#337) * **CMakeLists.txt:** install header files in all platforms ([821d563](rime/librime@821d563)) * **CMakeLists.txt:** set "-std=c++11" in CMAKE_CXX_FLAGS ([5d8a836](rime/librime@5d8a836)) * **config/plugins.h:** memory leak caused by non-virtual destructor ([316a659](rime/librime@316a659)), closes [#259](rime/librime#259) * **deploy:** treat schema dependencies as optional; do not report errors if missing ([ff3d5e9](rime/librime@ff3d5e9)) * **engine:** schema doesn't match the one used by switcher ([e41bb63](rime/librime@e41bb63)), closes [#269](rime/librime#269) * **rime_levers_api.h:** customize_bool() misused `bool` type ([42bacc5](rime/librime@42bacc5)) * **syllabifier:** enable_completion not working ([2714131](rime/librime@2714131)), closes [#343](rime/librime#343) * **table_translator:** null pointer exception when dict entries are filtered ([77438a9](rime/librime@77438a9)) * **test:** compile error in unit test ([7076d9e](rime/librime@7076d9e)) * **travis-install.sh:** working directory ([97220ce](rime/librime@97220ce)) ### Features * **appveyor:** install RIME_PLUGINS [skip travis] ([c7ce66f](rime/librime@c7ce66f)) * **CMakeList.txt:** add plugin build support ([#257](rime/librime#257)) ([dfa341b](rime/librime@dfa341b)) * **contextual_translation:** weight and re-order phrases by context ([2390da3](rime/librime@2390da3)) * **dict:** specify vocabulary db name in dict settings ([dcdc301](rime/librime@dcdc301)) * **grammar:** compare homophones/homographs in sentence ([9248a6b](rime/librime@9248a6b)) * **install-plugins.sh:** git-clone or update plugins ([70483b4](rime/librime@70483b4)) * **poet:** find best sentence candidates ([b3f4005](rime/librime@b3f4005)) * **rime_api:** get candidate list from index ([c587900](rime/librime@c587900)) * **translator:** contextual suggestions in partially selected sentence ([12a7501](rime/librime@12a7501)) * **translator:** look at preceding text when making sentence ([6ae34de](rime/librime@6ae34de)) * **travis-ci:** install plugins specified in envvar RIME_PLUGINS ([c857639](rime/librime@c857639)) ### Performance Improvements * **dictionary:** refactor DictEntryIterator and do partial sort ([0258c7f](rime/librime@0258c7f)) ### BREAKING CHANGES * **rime_levers_api.h:** in signature of C API function `customize_bool()`, change type `bool` to `Bool` (alias of `int`). Impact: the changed function is not in use by any first party code, known to be in use by osfans/trime. # [1.4.0](rime/librime@1.3.2...1.4.0) (2019-01-16) ### Bug Fixes * **config:** user_config should not fall back to shared data ([68c8a34](rime/librime@68c8a34)), closes [#271](rime/librime#271) * **SymlinkingPrebuiltDictionaries:** remove dangling symlinks ([5ad333d](rime/librime@5ad333d)), closes [#241](rime/librime#241) * **SymlinkingPrebuiltDictionaries:** remove dangling symlinks ([f8e4ebf](rime/librime@f8e4ebf)), closes [#241](rime/librime#241) ### Features * spelling correction ([#228](rime/librime#228)) ([ad3638a](rime/librime@ad3638a)) * **Dockerfile:** for build ([#246](rime/librime#246)) ([cafd0d5](rime/librime@cafd0d5)) ## [1.3.2](rime/librime@1.3.1...1.3.2) (2018-11-12) ### Bug Fixes * **CMakeLists.txt:** do not link binaries when building static library ([99573e3](rime/librime@99573e3)) * **CMakeLists.txt:** do not require boost::signals, which will be deprecated in Boost 1.69 ([8a9ef3b](rime/librime@8a9ef3b)), closes [#225](rime/librime#225) * **config_compiler:** ambiguous operator overload with cmake option ENABLE_LOGGING=OFF ([b86b647](rime/librime@b86b647)), closes [#211](rime/librime#211) * **config_compiler:** support creating list in-place by __patch and __merge ([0784eb0](rime/librime@0784eb0)) * **table_translator:** enable encoding uniquified commit history ([74e31bc](rime/librime@74e31bc)) ### Features * **language:** shared user dictionary per language (Closes [#184](rime/librime#184)) ([#214](rime/librime#214)) ([9f774e7](rime/librime@9f774e7)) * always_show_comments option ([#220](rime/librime#220)) ([19cea07](rime/librime@19cea07)) ## [1.3.1](rime/librime@1.3.0...1.3.1) (2018-04-01) ### Bug Fixes * **config_file_update:** clean up deprecated user copy ([#193](rime/librime#193)) ([8d8d2e6](rime/librime@8d8d2e6)) * **thirdparty/src/leveldb:** do not link to snappy library ([6f6056a](rime/librime@6f6056a)) # 1.3.0 (2018-03-09) ### Bug Fixes * **CMakeLists.txt, build.bat:** install header files (public API) ([06c9e86](rime/librime@06c9e86)) * **config_compiler:** "/" mistaken as path separator in merged map key ([#192](rime/librime#192)) ([831ffba](rime/librime@831ffba)), closes [#190](rime/librime#190) * **ConfigFileUpdate:** no need to create user build if shared build is up-to-date ([cafd5c4](rime/librime@cafd5c4)) * **SchemaUpdate:** read compiled schema from shared build if there is no user build ([45a04dd](rime/librime@45a04dd)) * **simplifier:** fix typo ([9e1114e](rime/librime@9e1114e)), closes [#183](rime/librime#183) * **user_db:** unwanted implicit instantiation of UserDbFormat template ([3cbc9cb](rime/librime@3cbc9cb)), closes [#188](rime/librime#188) ### Chores * **release tag:** deprecating tag name prefix 'rime-' in favor of semver 'X.Y.Z' ### BREAKING CHANGES * **release tag:** After 1.3.0 release, we'll no longer be creating tags in the format 'rime-X.Y.Z'. Downstream packagers please change automated scripts accordingly. ## 1.2.10 (2018-02-21) ### Bug Fixes * **config_compiler:** linking failure on blocking root node of a dependency resource ([ecf3397](rime/librime@ecf3397)) * table_translator not making sentence if table entry is hidden by charset filter. ([77eb12e](rime/librime@77eb12e)) * **appveyor.install.bat:** switch to a more stable download server for libboost ([bcc4d10](rime/librime@bcc4d10)) * **appveyor.yml:** archive header files ([c8b1e67](rime/librime@c8b1e67)) * **ascii_composer:** support key binding Shift+space in ascii mode ([7077389](rime/librime@7077389)) * **build.bat:** fix build errors with VS2015 build tools ([ec940c6](rime/librime@ec940c6)) * **calculus, recognizer:** memory leak due to unchecked regex error ([19ddc1e](rime/librime@19ddc1e)), closes [#171](rime/librime#171) * **chord_composer:** allow editor to define BackSpace key behavior ([7f41f65](rime/librime@7f41f65)) * **chord_composer:** letters with modifier keys should not be committed by a following enter key ([aab5eb8](rime/librime@aab5eb8)) * **ci:** call cmake under /usr/local with sudo by passing $PATH environment variable ([a0e6d2f](rime/librime@a0e6d2f)) * **cmake:** fix build break for mingw ([939893c](rime/librime@939893c)) * **config:** auto save modified config data; fixes [#144](rime/librime#144) ([2736f4b](rime/librime@2736f4b)) * **config:** treat "@" as map key rather than list index ([a1df9c5](rime/librime@a1df9c5)) * **config_compiler:** duplicate PendingChild dependencies happen from multiple commands on the same node ([25c28f8](rime/librime@25c28f8)) * **config_compiler:** enforce dependency priorities ([69a6f3e](rime/librime@69a6f3e)) * **config_compiler:** null value should not overwrite a normal key in a merged tree ([4ecae44](rime/librime@4ecae44)) * **config_compiler:** template operator overload had compile error with NDK ([71817a0](rime/librime@71817a0)) * **config/build_info_plugin:** referenced but unavailable resources should also be recorded ([cd46f7a](rime/librime@cd46f7a)) * **ConfigFileUpdate:** should succeed if shared copy does not exist ([8a3e25c](rime/librime@8a3e25c)) * **custom_settings:** fall back to $shared_data_dir/build when loading config ([caf8ebb](rime/librime@caf8ebb)) * **custom_settings:** load built settings from $user_data_dir/build directory ([463dc09](rime/librime@463dc09)) * **deployment_tasks:** symbols.yaml is no longer a build target ([f920e4f](rime/librime@f920e4f)) * **dict_compiler:** prism should load compiled schema ([c2fd0cf](rime/librime@c2fd0cf)), closes [#176](rime/librime#176) * **key_event:** KeySequence::repr() prefer unescaped punctuation characters ([aa43e5e](rime/librime@aa43e5e)) * **levers:** update deployment tasks for copy-free resource resolution ([1f86413](rime/librime@1f86413)) * **Makefile:** make install-debug; do return error code on mac ([1177142](rime/librime@1177142)) * **rime_api:** use user_config_open() to access user.yaml ([4e4a491](rime/librime@4e4a491)) * **rime_console:** not showing switcher's context ([632cf4b](rime/librime@632cf4b)) * **schema:** create a "schema" component that opens Config by schema_id ([555f990](rime/librime@555f990)) * **simplifier:** fix crash if no opencc file ([091cb9d](rime/librime@091cb9d)) * **simplifier:** tips option for show_in_comment simplifier ([e7bb757](rime/librime@e7bb757)) * **uniquifier:** half of the duplicate candidates remain after dedup [Closes [#114](rime/librime#114)] ([2ab76bc](rime/librime@2ab76bc)) ### Features * **build.bat:** customize build settings via environment variables ([#178](rime/librime#178)) ([1678b75](rime/librime@1678b75)) * **chord_composer:** accept escaped chording keys ([79a32b2](rime/librime@79a32b2)) * **chord_composer:** support chording with function keys ([48424d3](rime/librime@48424d3)) * **config:** add config compiler plugin that includes default:/menu into schema ([b51dda8](rime/librime@b51dda8)) * **config:** best effort resolution for circurlar dependencies ([2e52d54](rime/librime@2e52d54)) * **config:** build config files if source files changed ([0d79712](rime/librime@0d79712)) * **config:** config compiler plugins that port legacy features to the new YAML syntax ([a7d253e](rime/librime@a7d253e)) * **config:** config_builder saves output to $rime_user_dir/build/ ([e596155](rime/librime@e596155)) * **config:** references to optional config resources, ending with "?" ([14ec858](rime/librime@14ec858)) * **config:** save __build_info in compiled config ([45a7337](rime/librime@45a7337)) * **config:** separate out config_builder and user_config components ([9e9493b](rime/librime@9e9493b)) * **config:** support append and merge syntax ([04dcf42](rime/librime@04dcf42)) * **customizer:** disable saving patched config files ([88f5a0c](rime/librime@88f5a0c)) * **detect_modifications:** quick test based on last write time of files ([285fbcc](rime/librime@285fbcc)) * **dict:** no conditional compilation on arm ([85b945f](rime/librime@85b945f)) * **dict:** relocate binary files to $user_data_dir/build ([bc66a47](rime/librime@bc66a47)) * **dict:** use resource resolver to find dictionary files ([8ea08b3](rime/librime@8ea08b3)) * add property notifier ([fa7b5a5](rime/librime@fa7b5a5)) * **resource_resolver:** add class and unit test ([03ee8b4](rime/librime@03ee8b4)) * **resource_resolver:** fallback root path ([02151da](rime/librime@02151da)) * **translator:** add history_translator ([#115](rime/librime#115)) ([ae13354](rime/librime@ae13354)) ## 1.2.9 (2014-12-14) * **rime_api.h:** add `RIME_MODULE_LIST`, `RIME_REGISTER_MODULE_GROUP`. * **Makefile:** add make targets `thirdparty/*` to build individual libraries. * **legacy/src/legacy_module.cc:** plugin module `rime-legacy` for GPL code, providing component `legacy_userdb` for user dictionary upgrade. * **src/setup.cc:** define module groups `"default"` and `"deployer"`, to avoid naming a list of built-bin modules in `RimeTraits::modules`. * **test/table_test.cc:** fix random segment faults when run shuffled. * **thirdparty/src/leveldb:** new dependency LevelDB, replacing Kyoto Cabinet. * **dict/level_db:** userdb implementation based on LevelDB, replacing treeDb. * **dict/tree_db:** moved to `legacy/src/`. * **dict/user_db:** refactored and modularized to ease adding implementations. * **gear/cjk_minifier:** support CJK Extension E. * **gear/memory:** save cached phrases as soon as the next composition begins. * **gear/recognizer:** match space iff set `recognizer/use_space: true`. * **gear/simplifier:** catch and log OpenCC exceptions when loading. * **gear/single_char_filter:** bring single character candidates to the front. * **gear/simplifier:** adapt to OpenCC 1.0 API. * **thirdparty/src/opencc:** update OpenCC to v1.0.2 (incompatible with v0.4). * **lever/deployment_tasks:** update and rename task `user_dict_upgrade`. ## 1.2 (2014-07-15) * **rime_api:** add API functions to access complex structures in config; add API to get the raw input and cursor position, or to select a candidate. * **config:** support references to list elements in key paths. eg. `schema_list/@0/schema` is the id of the first schema in schema list. * **switcher:** enable folding IME options in the switcher menu. * **dict_compiler:** also detect changes in essay when updating a dictionary; support updating prism without the source file of the dictionary. * **preset_vocabulary:** load `essay.txt` instead of `essay.kct`. * **reverse_lookup_dictionary:** adopt a new file format with 50% space saving. * **table:** add support for a new binary format with 20% space saving; fix alignment on ARM. * **ascii_composer:** do not toggle IME states when long pressing `Shift` key; support discarding unfinished input when switching to ASCII mode. * **affix_segmentor:** fix issues with selecting a partial-match candidate. * **chord_composer:** commit raw input composed with original key strokes. * **cjk_minifier:** a filter to hide characters in CJK extension set, works with `script_translator`. * **navigator:** do not use `BackSpace` to revert selecting a candidate but to edit the input after moving the cursor left or right. * **punctuator:** support `ascii_punct` option for switching between Chinese and Western (ASCII) punctuations. * **speller:** auto-select candidates by pattern matching against the code; fix issues to cooperate with punctuator. * **CMakeLists.txt:** add options `ENABLE_LOGGING` and `BOOST_USE_CXX11`; introduce a new dependency: `libmarisa`. * **cmake/FindYamlCpp.cmake:** check the availability of the new (v0.5) API. * **sample:** the directory containing a sample plug-in module. * **tools/rime_patch.cc:** a command line tool to create patches. * **thirdparty:** include source code of third-party libraries to ease building librime on Windows and Mac. ## 1.1 (2013-12-26) * **new build dependency:** compiler with C++11 support. tested with GCC 4.8.2, Apple LLVM version 5.0, MSVC 12 (2013). * **encoder:** disable warnings for phrase encode failures in log output; limit the number of results in encoding a phrase with multiple solutions. * **punctuator:** fixed a bug in matching nested "pairs of 'symbols'". * **speller:** better support for auto-committing, allowing users of table based input schema to omit explicitly selecting candidates in many cases. * **schema_list_translator:** option for static schema list order. * **table_translator:** fixed the range of CJK-D in charset filter.
jperkin
pushed a commit
that referenced
this issue
Mar 30, 2021
Packaging changes: - Some patches got upstreamed - Upstream now defaults to name=sc-im so it no longer needs to be set Changes, (reformatted) from the official changelog: New features: - New motions in edit mode: df cf F dF cF d0 d$ c0 c$ t T dt dT ct cT ^ g_ d^ dg_ c^ cg_ - Simple mouse support. Can handle selection of single cells and scroll. - Added markdown export. - Add custom colors with RGB definitions. - Add support for italic attribute to be appled to cells. - Added digraphs. - Added EXECUTE command. - Added --export_csv --export_tab --export_txt parameters. - New input_bar_bottom config variable. - New underline_grid config variable. - Added filename in status bar (filename_with_mode config variable). - Added option to truncate cells. - Added xlsx sheet parameter. - New @fact function. Other: - modified config and history file locations - renamed winch to sig_winch. - current fg and bg colors are kept if they are not specified in :cellcolor. - OpenBSD support (mostly wordexp() workaround) - Correct lua api function names in doc - always generate backup file when opening file - renamed scim to sc-im in Makefile - Document trigger return value convention Issues fixed: - fix bug when deleting an ent that for instance has a @sum()... it used to remove its vertex and THE ENTS LINKED to THEM! - fix error messages when using "scim --version" and color definitions are intented to be applied from .scimrc. - fix in waiting for valid command to complete after pressing ESC key. - fix in parse_str so a word with white space can be stored in dictionary value - fix when setting default_paste_from_clipboard_cmd - Don't clobber startup message w/ err opening file - Allow for lua scripts in local .sc directory #259 - Send informational messages to stderr rather than the output when used in non-interactive mode #263 - fixed cell_negative color #271 - fixed locked cells when saving #261 - fixed DEL key in insert mode #272 - fix when resizing column #266 - "Autobackup - case insensitive QER options when backup exists" - fixed segfault when fcopy'ing with no selection while on first column - Call write triggers on value clear - Use sc_info to report trigger exit code - fixed #277 - Grow table up to MAXROWS exactly - Remove redundant if clause (God only knows where that was). - fix in getVertex that prevented rebuild_graph to work properly. - fix annoying bug because of not resetting inputline_pos to 0 when confirming a command in COMMAND_MODE - fix in let and slet. existing vertexs should not be removed. - added "eval_visited" in vertex struct for not to collide with current "visited", since: EvalAll uses EvalBottomUp EvalBottomUp uses EvalJustOneVertex EvalJustOneVertex uses eval eval uses GraphAddEdge GraphAddEdge uses GraphIsReachable GraphIsReachable uses visited and EvalBottomUp also uses uses visited! - Also changed markAllVerticesNotVisited and All_vertexs_of_edges_visited functions. - Some other issues fixed: #228, #234, #239, #240, #244, #246, #260, #295, #308 - .. and many other fixes and improvements! Pending: The most significative issue is regarding circular references. This have to be deeply analyzed and with the collaboration of the community it would be hopefully fixed by v0.9.
jperkin
pushed a commit
that referenced
this issue
Jun 15, 2021
httpuv 1.6.1 ============ * The `timegm()` function is a non-standard GNU extension, so it has been replaced with an internal `timegm2()` function. (#300) httpuv 1.6.0 ============ * Remove BH dependency. httpuv now requires a compiler which supports C++11. (#297) httpuv 1.5.5 ============ * Fix SHA1 calculation, and thus WebSocket server handshakes, on big-endian systems. (#284) * Fixed #195: Responses required `headers` to be a named list. Now it can also be `NULL`, an empty unnamed list, or it can be unset. (#289) * Allow responses to omit `body` (or set it as `NULL`) to avoid sending a body or setting the `Content-Length` header. This is intended for use with HTTP 204/304 responses. (#288) httpuv 1.5.4 ============ * Fixed #275: Large HTTP request headers could get truncated if they spanned more than one TCP message. (#277) * Fixed build for Solaris. (#271) * Fixed a test that had incorrect logic. (#272) httpuv 1.5.3.1 ============== * Updated libuv to version 1.37.0. (#266) * Fixed #204: On UBSAN builds of R, there were warnings about unaligned memory access. (#246) * Avoid creating a new Rook error stream object for each request. This should improve performance. (#245) * Resolved #247: httpuv no longer returns a HTTP 400 code for static files when the "Content-Length" header is 0. This Content-Length header is inserted by some proxies even for messages without payloads. (#248) * Resolved #253: Setting the FRAMEWORK environment variable would break compilation. This change removes any dependency on that variable. (#254) httpuv 1.5.2 ============ * In the static file-serving code path, httpuv previously looked for a `Connection: upgrade` header; if it found this header, it would not try to serve a static file, and it would instead forward the HTTP request to the R code path. However, some proxies are configured to always set this header, even when the connection is not actually meant to be upgraded. Now, instead of looking for a `Connection: upgrade` header, httpuv looks for the presence of an `Upgrade` header (with any value), and should be more robust to incorrectly-configured proxies. (#215) * Fixed handling of messages without payloads: (#219) * Fixed #224: Static file serving on Windows did not work correctly if it was from a path that contained non-ASCII characters. (#227) * Resolved #194, #233: Added a `quiet` option to `startServer`, which suppresses startup error messages that are normally printed to console (and can't be intercepted with `capture.output()`). (#234) * Added a new function `randomPort()`, which returns a random available port for listening on. (#234) * Added a new (unexported) function `logLevel()`, for controlling debugging information that will be printed to the console. Previously, httpuv occasionally printed messages like `ERROR: [uv_write] broken pipe` and `ERROR: [uv_write] bad file descriptor` by default. This happened when the server tried to write to a pipe that was already closed, but the situation was not harmful, and was already being handled correctly. Now these messages are printed only if the log level is set to `INFO` or `DEBUG`. (#223) * If an application's `$call()` method is missing, it will now give a 404 response instead of a 500 response. (#237) * Disallowed backslash in static path, to prevent path traversal attacks. (#235) * Static file serving on Windows could fail if multiple requests accessed the same file simultaneously. (#239)
jperkin
pushed a commit
that referenced
this issue
Mar 15, 2022
## [2.1.0] - 2022-03-11 ### Added * CLI: The `--skip-editable` flag has been added, allowing users to skip local packages or parsed requirements (via `-r`) that are marked as editable ([#244](pypa/pip-audit#244)) * CLI: `pip-audit` can audit projects that list their dependencies in `pyproject.toml` files, via `pip-audit <dir>` ([#246](pypa/pip-audit#246))
jperkin
pushed a commit
that referenced
this issue
Apr 24, 2022
Changes since 1.5.8 Allow libopengl.so to be used when GLX_LIB is missing [#257, John Bates] Changes since 1.5.7 Revert changes from PR #238 / #229 Fixes regressions: #240, #252, #253 Changes since Epoxy 1.5.6 Remove type redefinition [#249] Changes since 1.5.5 Fix issue with loading OpenGL/GLX/EGL libraries [#238, Yaroslav Isakov] Expose dependency variables in pkg-config file [#231, Xavier Claessens] Support Win64 pointer-sized types [#246] Close output objects when generating files [#242, Aleksandr] Changes since 1.5.4 Remove Python 2 support [#213] Remove Autotools support [#212] Use EGL_NO_X11 to disable X11 headers [#216] Use call convention for mock function [crziter, #220] Return correct version of GLSL on GLES2 [Eric Anholt, #223] Rely on Meson's darwin_versions option [#225]
jperkin
pushed a commit
that referenced
this issue
Jun 13, 2022
2.5.1 Fix Add missing Vulnerability comparator for sorting (#246) (c3f3d0d) 2.5.0 Feature Use SortedSet in model to improve reproducibility - this will provide predictable ordering of various items in generated CycloneDX documents - thanks to @RodneyRichardson (8a1c404) Documentation Fix typo "This is out" -> "This is our" (ef0278a) 2.4.0 Feature deps: Remove unused typing-extensions constraints (2ce358a)
jperkin
pushed a commit
that referenced
this issue
Sep 13, 2022
37.1 (2022-09-03) ----------------- * Allow HTML5 `nav` tag through cleaner (#259) 37.0 (2022-08-21) ----------------- * Remove command line example from docs (#197) * Multiple pyproject.toml fixes (#251) * Confirm handling multiple inline strong (#252) * Convert RST output to HTML5 (#253) * Add Typing to classifiers (#254) * Development tweaks - coverage reporting, actions updates (#255) * Add test confirming behavior with unknown lexers (#256) 36.0 (2022-08-06) ----------------- * Enable gitpod development (#238) * Allow rst admonitions to render (#242) * Add badges to README (#243) * Update codebase for modern Python (#244) * Fix table cell spans (#245) * Allow ``math`` directive in rst (#246) * Preserve ``lang`` attribute in ``pre`` (#247) 35.0 (2022-04-19) ----------------- * Add py.typed to the built wheel (#228) * Use isolated build for tox (#229) * Fix renderer ignore (#230) * Remove legacy check command and distutils (#233) * Emit a warning when no content is rendered (#231) * Drop support for Python 3.6 (#236) * Update html attribute order in tests (#235) 34.0 (2022-03-11) ----------------- * Add static types (#225) 33.0 (2022-03-05) ----------------- * Support cmarkgfm>=0.8.0 (#224) 33.0 (2022-02-05) ----------------- * Support cmarkgfm>=0.8.0 (#224) * Support Python 3.10 32.0 (2021-12-13) ----------------- * Allow start attribute in ordered lists (#216) * No limit rendering RST one column field names (#219) 31.0 (2021-12-09) ----------------- * Render disabled checkboxes from Markdown (#217) 30.0 (2021-09-30) ----------------- * support cmarkgfm>=0.6.0 (#209)
jperkin
pushed a commit
that referenced
this issue
Oct 18, 2022
9.01: - Fix library minor version (missing bump to 5.8). 9.00: - Add support for AnyConnect "Session Token Re-use Anchor Protocol" (STRAP) (#410). - Add support for AnyConnect "external browser" SSO mode (!354). - On Windows, fix crash on tunnel setup. (#370, 6a2ffbb) - Bugfix RSA SecurID token decryption and PIN entry forms, broken in v8.20. (#388, !344) - Support Cisco's multiple-certificate authentication (!194). - Append internal=no to GlobalProtect authentication/configuration forms, for compatibility with servers which apparently require this to function properly. (#246, !337) - Revert GlobalProtect default route handling change from v8.20. (!367) - Support split-exclude routes for Fortinet. (#394, !345) - Add openconnect_set_useragent() function. - Add webview callback and SAML/SSO support for AnyConnect, GlobalProtect. (!126). 8.20: - When the queue length (-Q option) is 16 or more, try using vhost-net to accelerate tun device access. - Use epoll() where available. - Support non-AEAD ciphersuites in DTLSv1.2 with AnyConnect. (#249) - Make tncc-emulate.py work with Python 3.7+. (#152, !120) - Emulated a newer version of GlobalProtect official clients, 5.1.5-8; was 4.0.2-19 (!131) - Support Juniper login forms containing both password and 2FA token (!121) - Explicitly disable 3DES and RC4, unless enabled with --allow-insecure-crypto (!114) - Add obsolete-server-crypto test (!114) - Allow protocols to delay tunnel setup and shutdown (!117) - Support for GlobalProtect IPv6 (!155 and !188; previous work in d6db0ec) - SIGUSR1 causes OpenConnect to log detailed connection information and statistics (!154) - Allow --servercert to be specified multiple times in order to accept server certificates matching more than one possible fingerprint (!162, #25) - Add insecure debugging build mode for developers (!112) - Demangle default routes sent as split routes by GlobalProtect (!118) - Improve GlobalProtect login argument decoding (!143) - Add detection of authentication expiration date, intended to allow front-ends to cache and reuse authentication cookies/sessions (!156) - Small bug fixes and clarification of many logging messages. - Support more Juniper login forms, including some SSO forms (!171) - Automatically build Windows installers for OpenConnect command-line interface (!176) - Restore compatibility with newer Cisco servers, by no longer sending them the X-AnyConnect-Platform header (#101, !175) - Add support for PPP-based protocols, currently over TLS only (!165). - Add support for two PPP-based protocols, F5 with --protocol=f5 and Fortinet with --protocol=fortinet (!169). - Add experimental support for Wintun Layer 3 TUN driver under Windows (#231, !178). - Clean up and improve Windows routing/DNS configuration script (vpnc-scripts!26, vpnc-scripts!41, vpnc-scripts!44). - On Windows, reclaim needed IP addresses from down network interfaces so that configuration script can succeed (!178). - Fix output redirection under Windows (#229) - More gracefully handle idle timeouts and other fatal errors for Juniper and Pulse (!187) - Ignore failures to fetch the Juniper/oNCP landing page if the authentication was successful (3e779436). - Add support for Array Networks SSL VPN (#102) - Support TLSv1.3 with TPMv2 EC and RSA keys, add test cases for swtpm and hardware TPM. (ed80bfac...ee1cd782) - Add openconnect_get_connect_url() to simplify passing correct server information to the connecting openconnect process. (NetworkManager-openconnect #46, #53) - Disable brittle "system policy" enforcement where it cannot be gracefully overridden at user request. (RH#1960763). - Pass "portal cookie" fields from GlobalProtect portal to gateway to avoid repetition of password- or SAML-based login (!199) - With --user, enter username supplied via command-line into all authentication forms, not just the first. (#267, !220). - Fix a subtle bug which has prevented ESP rekey and ESP-to-TLS fallback from working reliably with the Juniper/oNCP protocol since v8.04. (#322, !293). - Fix a bug in csd-wrapper.sh which has prevented it from correctly downloading compressed Trojan binaries since at least v8.00. (!305) - Make Windows socketpair emulation more robust in the face of Windows's ability to break its localhost routes. (#228, #361, !320) - Perform proper disconnect and routes cleanup on Windows when receiving Ctrl+C or Ctrl+Break. (#362, !323) - Improve logging in routing/DNS configuration scripts. (!328, vpnc-scripts!45) - Support modified configuration packet from Pulse 9.1R14 servers (#379, !331)
jperkin
pushed a commit
that referenced
this issue
Mar 16, 2023
1.6.0 (2023-03-13) * Adapters - Support for Rails 6.1 and above (Adapters::ActiveRecord, Adapters::ActiveSupportCache, ActiveSupportCache::MonetaStore) * Adapters::YAML - add theadsafe option * Adapters::Sequel - fix deadlock issue with #increment on MySQL in newer Sequel versions (#244) * Adapters::Sequel - fix issue with Postgres HStore on newer Postgres (#243) * Adapters - fixed an issue many adapters had where #merge! errored if passed an empty hash (#246) * Support changes - Drop support for 2.3 and 2.4, add support for 3.x
jperkin
pushed a commit
that referenced
this issue
Mar 19, 2023
Major changes between sudo 1.9.13p3 and 1.9.13p2: * Fixed a bug introduced in sudo 1.9.13 that caused a syntax error when "list" was used as a user or host name. GitHub issue #246. * Fixed a bug that could cause sudo to hang when running a command in a pseudo-terminal when there is still input buffered after a command has exited. * Fixed "sudo -U otheruser -l command". This is a regression in sudo 1.9.13. GitHub issue #248. * Fixed "sudo -l command args" when matching a command in sudoers with command line arguments. This is a regression in sudo 1.9.13. GitHub issue #249.
jperkin
pushed a commit
that referenced
this issue
May 2, 2023
jperkin
pushed a commit
that referenced
this issue
May 25, 2023
Changelog (taken from https://github.com/eudev-project/eudev/releases/tag/v3.2.12): Release 3.2.12 What's Changed rules/50-udev-default.rules: add PTP entry for Hyper-V/Azure by @dermotbradley in #218 Add the BUILD instructions for Gentoo by @lu-zero in #224 Fix warnings by @bbonev in #222 udev: add udev_dir as synonym of udevdir by @oreo639 in #225 build: Remove dead g-i-r configuration by @akiernan in #231 Hwdb.7 by @bbonev in #221 Precompiled hwdb by @bbonev in #223 Merge suitable rules changes from systemd by @bbonev in #220 Merge hwdb from systemd by @bbonev in #219 Fix problems detected by fortified builds by @bbonev in #232 Avoid warning on 32bit by @bbonev in #233 Systemd PR 24353 by @bbonev in #239 Do not free a static string by @bbonev in #238 man: udev.7, mention /usr/lib with split-usr by @omnivagant in #246 Missing tools by @bbonev in #240 Fix compile-time issue on very old kernels by @cockroach in #247
jperkin
pushed a commit
that referenced
this issue
Jun 8, 2023
New features - Considerably refined the app packaging strategy, introducing support for more architectures and other advancements 📦 (see #246 for additional details) - Added button to clear all the current search filters quickly in inspect page - Added Swedish translation 🇸🇪 (#213) Improvements - Updated most of the existing translations to v1.2: - German 🇩🇪 (#191) - Spanish 🇪🇸 (#203) - Persian 🇮🇷 (#193) - Korean 🇰🇷 (#205) - Polish 🇵🇱 (#244) - Romanian 🇷🇴 (#241) - Russian 🇷🇺 (#187) - Turkish 🇹🇷 (#192) - Ukrainian 🇺🇦 (#216) - Chinese 🇨🇳 (#214) - Renamed "Administrative entity" to "Autonomous System name" to avoid confusion - Improved filter columns relative width to avoid the "Application protocol" label being cut when displayed in Swedish - Footer URLs have been updated to include links to Sniffnet's official website and GitHub Sponsor page - Updated docs including installation instruction for Arch Linux (#185) - Minor improvements to packets and bytes number format - Minor improvements to: - code readability (#248) - docs (#235) Fixes - Various issues have been fixed by the refined packaging strategy (#199, #220, #223, #224, #225, #242) - Solved a minor problem that caused flags to be slightly misaligned in inspect page table
jperkin
pushed a commit
that referenced
this issue
Jun 21, 2023
Major changes between sudo 1.9.13p3 and 1.9.13p2: * Fixed a bug introduced in sudo 1.9.13 that caused a syntax error when "list" was used as a user or host name. GitHub issue #246. * Fixed a bug that could cause sudo to hang when running a command in a pseudo-terminal when there is still input buffered after a command has exited. * Fixed "sudo -U otheruser -l command". This is a regression in sudo 1.9.13. GitHub issue #248. * Fixed "sudo -l command args" when matching a command in sudoers with command line arguments. This is a regression in sudo 1.9.13. GitHub issue #249.
jperkin
pushed a commit
that referenced
this issue
Jun 22, 2023
Link with libsocket where needed (#234) by @amigadave in #235 Remove libsoup from doc and CI by @janbrummer in #238 Fix coverity findings by @janbrummer in #241 Add a comment that docs option needs introspection by @janbrummer in #242 Set pac data after download only by @janbrummer in #244 Fix race condition in px_manager_get_proxies_sync by @janbrummer in #245 Update gobject dependency in pkgconfig file by @floppym in #239 Reread env variables in each get_config call by @janbrummer in #246 Bump version to 0.5.2 by @janbrummer in #247
jperkin
pushed a commit
that referenced
this issue
Aug 8, 2023
(also taking over maintainership after confirming with Patrick) v.2.4.3 Add static hpdf_version.h header by @vszakats in #241 hpdf_version.h included again by hpdf.h #241 #246 File attachment issue resolved @hvanbrug #159 Renamed *_LIBZ defines to _*ZLIB, thanks to @karstenBriksoft #249, enables compression of PDF files again. v.2.4.2 Reinstated hpdf_version.h #237 #240 v.2.4.1 Fixed library name #236 from @jschueller Set correct version number #237 pointed out by @xantares v.2.4.0 Add support for free-form triangle shading objects. by @allisonvacanti in #157 Fix config constant to match use in hpdf_mmgr.c by @bvirlet in #167 Improve small number writing in HPDF_FToA. by @allisonvacanti in #187 Fix missing /CapHeight key in font definition by @yabaud in #138 Change HPDF_Page_CreateXObjectFromImage zoom parameter type to HPDF… by @extensia in #114 Fix another case of png files with background mask save uncompressed by @igor-niv in #221 Avoid issue with libtiff duplicate symbols by @bvirlet in #168 Reajust bit_depth of png image after striping depth from 16 to 8. by @joelhecht in #125 Fixed typo in Japanese font name: Mincyo -> Mincho by @qtamaki in #80 Fix various typos by @luzpaz in #226 hpdf.h: add missing HPDF_Boolean typedef by @mathstuf in #189 Moved to a CMake only build environment. Fix bad unicode in comment by @gix in #229 Fix various typos by @luzpaz in #230
jperkin
pushed a commit
that referenced
this issue
Nov 30, 2023
What's Changed - Added: Navigation between journals popup inputs via arrow keys by @AmmarAbouZor in #246 - Fixed: Letter V can't be typed in built-in editor insert mode by @AmmarAbouZor in #249
jperkin
pushed a commit
that referenced
this issue
Feb 7, 2024
3.0.0 / 2024-01-05 * PR #265 - Change Readline for Reline for Ruby 3.3 compat (@abinoam) * PR #264 - Add abbrev gem as dependency (@mathieujobin) * PR #263 - Release 3.0.0.pre.1 * Raise minimum Ruby version requirement to 3.0 * PR #262 - Do not call stty on non-tty (@kbrock) * PR #260 / I #43 - Ctrl-U (erase line) handling (@abinoam, issue by @gutenye) * PR #259 / I #236 - Handle Ctrl-C when Question#echo = false (@abinoam, @Fahhetah, issue by @aspyct) * PR #258 / I #246 - Add validation class support (@abinoam, issue by @Joshfindit) - Make it dry-types compatible through the use of #valid? - Solve the multiple answers in one line problem with a combination of custom coercion (parser) and custom validation * PR #257 / I #233 - Show Question#default hint for non String values (@abinoam, issue by @branch14) - Add Question#default_hint_show to allow disabling it. * PR #256 / I #249 - Fix Array validation in Question#in (@abinoam, issue by @esotericpig) 3.0.1 (2024-01-20) * PR #268 - Remove unused abbrev dependency (@zvkemp)
jperkin
pushed a commit
that referenced
this issue
Feb 14, 2024
v0.20.1 What's Changed Switch to GitHub Actions CI. by @patrickt in #166 Add the same PR template as for tree-sitter-javascript by @mjambon in #169 Fixed CRLF behavior for tests by @ahelwer in #188 Fix CRLF behavior mismatch during error recovery by @ahelwer in #189 Endless methods by @aibaars in #190 Add forwarded parameters/arguments by @aibaars in #191 Disable C++ exceptions when compile for wasm32-wasi by @glebpom in #192 Pattern matching by @aibaars in #193 Improve grammar after the introduction of case-in pattern matching by @aibaars in #197 Add parenthesized_pattern by @aibaars in #198 Ruby 3.1 features by @aibaars in #201 Update to Node 16 by @mattmassicotte in #206 C bindings by @mattmassicotte in #199 Parser improvements by @aibaars in #207 CI: use windows-2019 for now by @aibaars in #209 Add named rules for the various call operators by @aibaars in #211 Update Makefile by @mattmassicotte in #213 Allow newer tree-sitter upstream library. by @patrickt in #215 Bump tree-sitter version to 0.20 by @hendrikvanantwerpen in #214 Fix parse error in 'foo! if condition' by @aibaars in #216 Parser improvements: != operator and key: [line_break] by @aibaars in #220 Some improvements to the parser by @aibaars in #222 Wrap class, module, method, and block bodies in a named node by @npezza93 in #224 Parser improvments: quoted heredocs and short-hand interpolations by @aibaars in #225 Add body field for end-less methods by @aibaars in #226 Swift bindings by @mattmassicotte in #227 fix: rename reserved word “arguments” by @drwpow in #229 Bump versions in #208 Anonymous (hash) splat arguments by @aibaars in #233 One-line pattern matching by @aibaars in #194 Scanner: do not skip LINE_BREAKs before .. and ... by @aibaars in #238 Fix non-termination in parser by @aibaars in #239 Fix scanning of division vs regex before line ending by @aibaars in #246 Fix 'case' with newlines before expression by @aibaars in #247
jperkin
pushed a commit
that referenced
this issue
Feb 29, 2024
# callr 3.7.5 * No changes. # callr 3.7.4 * The `r_session$get_running_time()` method now returns the correct values, as documented (#241, @djnavarro). * callr now uses fully qualified function calls in the subprocess to avoid interference with functions defined in the global environment. I.e. `base::stderr()` instead of `stderr()`. Closes #246.
jperkin
pushed a commit
that referenced
this issue
Jun 10, 2024
2.4.0 (2024-06-08) Enhancements * @ag4a fix the rails_compat to work with Rails 7 [PR #246] Bug Fixes * @bastelfreak adding license to the gemspec [PR #223] * @olleolleolle dropping unused gemspec directives [PR #233]
jperkin
pushed a commit
that referenced
this issue
Jul 10, 2024
## Change Log for Release asterisk-18.23.1 ### Summary: - Commits: 1 - Commit Authors: 1 - Issues Resolved: 0 - Security Advisories Resolved: 1 - [GHSA-qqxj-v78h-hrf9](GHSA-qqxj-v78h-hrf9): res_pjsip_endpoint_identifier_ip: wrongly matches ALL unauthorized SIP requests ### Closed Issues: - !GHSA-qqxj-v78h-hrf9: res_pjsip_endpoint_identifier_ip: wrongly matches ALL unauthorized SIP requests ### Commits By Author: - ### George Joseph (1): - Revert "res_pjsip_endpoint_identifier_ip: Add endpoint identifier transport ad.. ----- ## Change Log for Release asterisk-18.23.0 ### Summary: - Commits: 44 - Commit Authors: 15 - Issues Resolved: 26 - Security Advisories Resolved: 0 ### User Notes: - #### res_pjsip_logger: Preserve logging state on reloads. Issuing "pjsip reload" will no longer disable logging if it was previously enabled from the CLI. - #### loader.c: Allow dependent modules to be unloaded recursively. In certain circumstances, modules with dependency relations can have their dependents automatically recursively unloaded and loaded again using the "module refresh" CLI command or the ModuleLoad AMI command. - #### tcptls/iostream: Add support for setting SNI on client TLS connections Secure websocket client connections now send SNI in the TLS client hello. - #### res_pjsip_endpoint_identifier_ip: Add endpoint identifier transport address. set identify_by=transport for the pjsip endpoint. Then use the existing 'match' option and the new 'transport' option of the identify. Fixes: #672 - #### res_pjsip_endpoint_identifier_ip: Endpoint identifier request URI this new feature let users match endpoints based on the indound SIP requests' URI. To do so, add 'request_uri' to the endpoint's 'identify_by' option. The 'match_request_uri' option of the identify can be an exact match for the entire request uri, or a regular expression (between slashes). It's quite similar to the header identifer. Fixes: #599 - #### res_pjsip_refer.c: Allow GET_TRANSFERRER_DATA the GET_TRANSFERRER_DATA dialplan variable can now be used also in pjsip. - #### manager.c: Add new parameter 'PreDialGoSub' to Originate AMI action When using the Originate AMI Action, we now can pass the PreDialGoSub parameter, instructing the asterisk to perform an subrouting at channel before call start. With this parameter an call initiated by AMI can request the channel to start the call automaticaly, adding a SIP header to using GoSUB, instructing to autoanswer the channel, and proceeding the outbuound extension executing. Exemple of an context to perform the previus indication: [addautoanswer] exten => _s,1,Set(PJSIP_HEADER(add,Call-Info)=answer-after=0) exten => _s,n,Set(PJSIP_HEADER(add,Alert-Info)=answer-after=0) exten => _s,n,Return() - #### manager.c: Add CLI command to kick AMI sessions. The "manager kick session" CLI command now allows kicking a specified AMI session. - #### chan_dahdi: Allow specifying waitfordialtone per call. "waitfordialtone" may now be specified for DAHDI trunk channels on a per-call basis using the CHANNEL function. - #### Upgrade bundled pjproject to 2.14.1 Bundled pjproject has been upgraded to 2.14.1. For more information visit pjproject Github page: https://github.com/pjsip/pjproject/releases/tag/2.14.1 ### Upgrade Notes: - #### pbx_variables.c: Prevent SEGV due to stack overflow. The maximum amount of dialplan recursion using variable substitution (such as by using EVAL_EXTEN) is capped at 15. ## Issue and Commit Detail: ### Closed Issues: - 246: [bug]: res_pjsip_logger: Reload disables logging - 472: [new-feature]: chan_dahdi: Allow waitfordialtone to be specified per call - 474: [new-feature]: loader.c: Allow dependent modules to be unloaded automatically - 480: [improvement]: pbx_variables.c: Prevent infinite recursion and stack overflow with variable expansion - 485: [new-feature]: manager.c: Allow kicking specific manager sessions - 525: [bug]: say.c: Money announcements off by one cent due to floating point rounding - 579: [improvement]: Allow GET_TRANSFERRER_DATA for pjsip - 599: [improvement]: Endpoint identifier request line - 611: [bug]: res_pjsip_session: Polling on non-existing file descriptors when stream is removed - 624: [bug]: Park() application does not continue execution if lot is full - 642: [bug]: Prometheus bridge metrics contains duplicate entries and help - 666: [improvement]: ARI debug should contain endpoint and method - 669: [bug]: chan_dahdi: Tens or hundreds of thousands of channel opens attempted during restart - 672: [improvement]: Endpoint identifier transport - 673: [new-feature]: chan_dahdi: Add AMI action to show spans - 676: [bug]: res_stir_shaken implicit declaration of function errors/warnings - 681: [new-feature]: callerid.c: Parse all received parameters - 683: [improvement]: func_callerid: Warn if invalid redirecting reason is set - 689: [bug] Document the `Events` argument of the `Login` AMI action - 696: [bug]: Unexpected control subclass '14' - 713: [bug]: SNI isn't being set on websocket client connections - 716: [bug]: Memory leak in res_stir_shaken tn_config, plus a few other issues - 719: [bug]: segfault on start if compiled with DETECT_DEADLOCKS - 721: [improvement]: logger: Add unique verbose prefixes for higher verbose levels - 729: [bug]: Build failure with uclibc-ng - ASTERISK-29912: res_pjsip: module reload disables logging ### Commits By Author: - ### Fabrice Fontaine (1): - res/stasis/control.c: include signal.h - ### George Joseph (8): - Fix incorrect application and function documentation references - res_stir_shaken: Fix compilation for CentOS7 (openssl 1.0.2) - manager.c: Add missing parameters to Login documentation - rtp_engine and stun: call ast_register_atexit instead of ast_register_cleanup - logger.h: Add SCOPE_CALL and SCOPE_CALL_WITH_RESULT - make_buildopts_h: Always include DETECT_DEADLOCKS - stir_shaken: Fix memory leak, typo in config, tn canonicalization - tcptls/iostream: Add support for setting SNI on client TLS connections - ### Henrik Liljedahl (1): - res_pjsip_sdp_rtp.c: Initial RTP inactivity check must consider the rtp_timeou.. - ### Holger Hans Peter Freyther (1): - res_prometheus: Fix duplicate output of metric and help text - ### Ivan Poddubny (2): - asterisk.c: Fix sending incorrect messages to systemd notify - configs: Fix a misleading IPv6 ACL example in Named ACLs - ### Joshua Elson (1): - Implement Configurable TCP Keepalive Settings in PJSIP Transports - ### Martin Nystroem (1): - res_ari.c: Add additional output to ARI requests when debug is enabled - ### Martin Tomec (1): - res_pjsip_refer.c: Allow GET_TRANSFERRER_DATA - ### Maximilian Fridrich (1): - res_pjsip_session: Reset pending_media_state->read_callbacks - ### Naveen Albert (14): - res_parking: Fail gracefully if parking lot is full. - chan_dahdi: Allow specifying waitfordialtone per call. - manager.c: Add CLI command to kick AMI sessions. - pbx_variables.c: Prevent SEGV due to stack overflow. - menuselect: Minor cosmetic fixes. - chan_dahdi: Don't retry opening nonexistent channels on restart. - chan_dahdi: Add DAHDIShowStatus AMI action. - func_callerid: Emit warning if invalid redirecting reason set. - file.c, channel.c: Don't emit warnings if progress received. - callerid.c: Parse previously ignored Caller ID parameters. - loader.c: Allow dependent modules to be unloaded recursively. - say.c: Fix cents off-by-one due to floating point rounding. - logger: Add unique verbose prefixes for levels 5-10. - res_pjsip_logger: Preserve logging state on reloads. - ### Sean Bright (8): - res_monitor.c: Don't emit a warning about 'X' being unrecognized. - alembic: Quote new MySQL keyword 'qualify.' - res_pjsip: Fix alembic downgrade for boolean columns. - res_config_mysql.c: Support hostnames up to 255 bytes. - alembic: Fix compatibility with SQLAlchemy 2.0+. - cli.c: `core show channels concise` is not really deprecated. - alembic: Correct NULLability of PJSIP id columns. - app_queue.c: Properly handle invalid strategies from realtime. - ### Sperl Viktor (2): - res_pjsip_endpoint_identifier_ip: Endpoint identifier request URI - res_pjsip_endpoint_identifier_ip: Add endpoint identifier transport address. - ### Spiridonov Dmitry (1): - sorcery.c: Fixed crash error when executing "module reload" - ### Stanislav Abramenkov (1): - Upgrade bundled pjproject to 2.14.1 - ### jonatascalebe (1): - manager.c: Add new parameter 'PreDialGoSub' to Originate AMI action ### Commit List: - configs: Fix a misleading IPv6 ACL example in Named ACLs - asterisk.c: Fix sending incorrect messages to systemd notify - res/stasis/control.c: include signal.h - res_pjsip_logger: Preserve logging state on reloads. - logger: Add unique verbose prefixes for levels 5-10. - say.c: Fix cents off-by-one due to floating point rounding. - loader.c: Allow dependent modules to be unloaded recursively. - tcptls/iostream: Add support for setting SNI on client TLS connections - stir_shaken: Fix memory leak, typo in config, tn canonicalization - make_buildopts_h: Always include DETECT_DEADLOCKS - sorcery.c: Fixed crash error when executing "module reload" - callerid.c: Parse previously ignored Caller ID parameters. - logger.h: Add SCOPE_CALL and SCOPE_CALL_WITH_RESULT - app_queue.c: Properly handle invalid strategies from realtime. - file.c, channel.c: Don't emit warnings if progress received. - alembic: Correct NULLability of PJSIP id columns. - rtp_engine and stun: call ast_register_atexit instead of ast_register_cleanup - manager.c: Add missing parameters to Login documentation - func_callerid: Emit warning if invalid redirecting reason set. - chan_dahdi: Add DAHDIShowStatus AMI action. - res_pjsip_endpoint_identifier_ip: Add endpoint identifier transport address. - res_stir_shaken: Fix compilation for CentOS7 (openssl 1.0.2) - Fix incorrect application and function documentation references - cli.c: `core show channels concise` is not really deprecated. - res_pjsip_endpoint_identifier_ip: Endpoint identifier request URI - Implement Configurable TCP Keepalive Settings in PJSIP Transports - chan_dahdi: Don't retry opening nonexistent channels on restart. - res_pjsip_refer.c: Allow GET_TRANSFERRER_DATA - res_ari.c: Add additional output to ARI requests when debug is enabled - alembic: Fix compatibility with SQLAlchemy 2.0+. - manager.c: Add new parameter 'PreDialGoSub' to Originate AMI action - menuselect: Minor cosmetic fixes. - pbx_variables.c: Prevent SEGV due to stack overflow. - res_prometheus: Fix duplicate output of metric and help text - manager.c: Add CLI command to kick AMI sessions. - chan_dahdi: Allow specifying waitfordialtone per call. - res_parking: Fail gracefully if parking lot is full. - res_config_mysql.c: Support hostnames up to 255 bytes. - res_pjsip: Fix alembic downgrade for boolean columns. - Upgrade bundled pjproject to 2.14.1 - alembic: Quote new MySQL keyword 'qualify.' - res_pjsip_session: Reset pending_media_state->read_callbacks - res_monitor.c: Don't emit a warning about 'X' being unrecognized. ### Commit Details: #### configs: Fix a misleading IPv6 ACL example in Named ACLs Author: Ivan Poddubny Date: 2024-05-05 "deny=::" is equivalent to "::/128". In order to mean "deny everything by default" it must be "::/0". #### asterisk.c: Fix sending incorrect messages to systemd notify Author: Ivan Poddubny Date: 2024-05-05 Send "RELOADING=1" instead of "RELOAD=1" to follow the format expected by systemd (see sd_notify(3) man page). Do not send STOPPING=1 in remote console mode: attempting to execute "asterisk -rx" by the main process leads to a warning if NotifyAccess=main (the default) or to a forced termination if NotifyAccess=all. #### res/stasis/control.c: include signal.h Author: Fabrice Fontaine Date: 2024-05-01 Include signal.h to avoid the following build failure with uclibc-ng raised since asterisk/asterisk@2694792: stasis/control.c: In function 'exec_command_on_condition': stasis/control.c:313:3: warning: implicit declaration of function 'pthread_kill'; did you mean 'pthread_yield'? [-Wimplicit-function-declaration] 313 | pthread_kill(control->control_thread, SIGURG); | ^~~~~~~~~~~~ | pthread_yield stasis/control.c:313:41: error: 'SIGURG' undeclared (first use in this function) 313 | pthread_kill(control->control_thread, SIGURG); | ^~~~~~ cherry-pick-to: 18 cherry-pick-to: 20 cherry-pick-to: 21 Fixes: #729 #### res_pjsip_logger: Preserve logging state on reloads. Author: Naveen Albert Date: 2023-08-09 Currently, reloading res_pjsip will cause logging to be disabled. This is because logging can also be controlled via the debug option in pjsip.conf and this defaults to "no". To improve this, logging is no longer disabled on reloads if logging had not been previously enabled using the debug option from the config. This ensures that logging enabled from the CLI will persist through a reload. ASTERISK-29912 #close Resolves: #246 UserNote: Issuing "pjsip reload" will no longer disable logging if it was previously enabled from the CLI. #### logger: Add unique verbose prefixes for levels 5-10. Author: Naveen Albert Date: 2024-04-27 Add unique verbose prefixes for levels higher than 4, so that these can be visually differentiated from each other. Resolves: #721 #### say.c: Fix cents off-by-one due to floating point rounding. Author: Naveen Albert Date: 2024-01-10 Some of the money announcements can be off by one cent, due to the use of floating point in the money calculations, which is bad for obvious reasons. This replaces floating point with simple string parsing to ensure the cents value is converted accurately. Resolves: #525 #### loader.c: Allow dependent modules to be unloaded recursively. Author: Naveen Albert Date: 2023-12-02 Because of the (often recursive) nature of module dependencies in Asterisk, hot swapping a module on the fly is cumbersome if a module is depended on by other modules. Currently, dependencies must be popped manually by unloading dependents, unloading the module of interest, and then loading modules again in reverse order. To make this easier, the ability to do this recursively in certain circumstances has been added, as an optional extension to the "module refresh" command. If requested, Asterisk will check if a module that has a positive usecount could be unloaded safely if anything recursively dependent on it were unloaded. If so, it will go ahead and unload all these modules and load them back again. This makes hot swapping modules that provide dependencies much easier. Resolves: #474 UserNote: In certain circumstances, modules with dependency relations can have their dependents automatically recursively unloaded and loaded again using the "module refresh" CLI command or the ModuleLoad AMI command. #### res_pjsip_sdp_rtp.c: Initial RTP inactivity check must consider the rtp_timeou.. Author: Henrik Liljedahl Date: 2024-04-11 First rtp activity check was performed after 500ms regardless of the rtp_timeout setting. Having a call in ringing state for more than rtp_timeout and the first rtp package is received more than 500ms after sdp negotiation and before the rtp_timeout, erronously caused the call to be hungup. Changed to perform the first rtp inactivity check after the timeout setting preventing calls to be disconnected before the rtp_timeout has elapsed since sdp negotiation. Fixes #710 #### tcptls/iostream: Add support for setting SNI on client TLS connections Author: George Joseph Date: 2024-04-23 If the hostname field of the ast_tcptls_session_args structure is set (which it is for websocket client connections), that hostname will now automatically be used in an SNI TLS extension in the client hello. Resolves: #713 UserNote: Secure websocket client connections now send SNI in the TLS client hello. #### stir_shaken: Fix memory leak, typo in config, tn canonicalization Author: George Joseph Date: 2024-04-25 * Fixed possible memory leak in tn_config:tn_get_etn() where we weren't releasing etn if tn or eprofile were null. * We now canonicalize TNs before using them for lookups or adding them to Identity headers. * Fixed a typo in stir_shaken.conf.sample. Resolves: #716 #### make_buildopts_h: Always include DETECT_DEADLOCKS Author: George Joseph Date: 2024-04-27 Since DETECT_DEADLOCKS is now split from DEBUG_THREADS, it must always be included in buildopts.h instead of only when ADD_CFLAGS_TO_BUILDOPTS_H is defined. A SEGV will result otherwise. Resolves: #719 #### sorcery.c: Fixed crash error when executing "module reload" Author: Spiridonov Dmitry Date: 2024-04-14 Fixed crash error when cli "module reload". The error appears when compiling with res_prometheus and using the sorcery memory cache for registrations #### callerid.c: Parse previously ignored Caller ID parameters. Author: Naveen Albert Date: 2024-04-01 Commit f2f397c1a8cc48913434ebb297f0ff50d96993db previously made it possible to send Caller ID parameters to FXS stations which, prior to that, could not be sent. This change is complementary in that we now handle receiving all these parameters on FXO lines and provide these up to the dialplan, via chan_dahdi. In particular: * If a redirecting reason is provided, the channel's redirecting reason is set. No redirecting number is set, since there is no parameter for this in the Caller ID protocol, but the reason can be checked to determine if and why a call was forwarded. * If the Call Qualifier parameter is received, the Call Qualifier variable is set. * Some comments have been added to explain why some of the code is the way it is, to assist other people looking at it. With this change, Asterisk's Caller ID implementation is now reasonably complete for both FXS and FXO operation. Resolves: #681 #### logger.h: Add SCOPE_CALL and SCOPE_CALL_WITH_RESULT Author: George Joseph Date: 2024-04-09 If you're tracing a large function that may call another function multiple times in different circumstances, it can be difficult to see from the trace output exactly which location that function was called from. There's no good way to automatically determine the calling location. SCOPE_CALL and SCOPE_CALL_WITH_RESULT simply print out a trace line before and after the call. The difference between SCOPE_CALL and SCOPE_CALL_WITH_RESULT is that SCOPE_CALL ignores the function's return value (if any) where SCOPE_CALL_WITH_RESULT allows you to specify the type of the function's return value so it can be assigned to a variable. SCOPE_CALL_WITH_INT_RESULT is just a wrapper for SCOPE_CALL_WITH_RESULT and the "int" return type. #### app_queue.c: Properly handle invalid strategies from realtime. Author: Sean Bright Date: 2024-04-13 The existing code sets the queue strategy to `ringall` but it is then immediately overwritten with an invalid one. Fixes #707 #### file.c, channel.c: Don't emit warnings if progress received. Author: Naveen Albert Date: 2024-04-09 Silently ignore AST_CONTROL_PROGRESS where appropriate, as most control frames already are. Resolves: #696 #### alembic: Correct NULLability of PJSIP id columns. Author: Sean Bright Date: 2024-04-06 Fixes #695 #### rtp_engine and stun: call ast_register_atexit instead of ast_register_cleanup Author: George Joseph Date: 2024-04-02 rtp_engine.c and stun.c were calling ast_register_cleanup which is skipped if any loadable module can't be cleanly unloaded when asterisk shuts down. Since this will always be the case, their cleanup functions never get run. In a practical sense this makes no difference since asterisk is shutting down but if you're in development mode and trying to use the leak sanitizer, the leaks from both of those modules clutter up the output. #### manager.c: Add missing parameters to Login documentation Author: George Joseph Date: 2024-04-03 * Added the AuthType and Key parameters for MD5 authentication. * Added the Events parameter. Resolves: #689 #### func_callerid: Emit warning if invalid redirecting reason set. Author: Naveen Albert Date: 2024-04-01 Emit a warning if REDIRECTING(reason) is set to an invalid reason, consistent with what happens when REDIRECTING(orig-reason) is set to an invalid reason. Resolves: #683 #### chan_dahdi: Add DAHDIShowStatus AMI action. Author: Naveen Albert Date: 2024-03-29 * Add an AMI action to correspond to the "dahdi show status" command, allowing span information to be retrieved via AMI. * Show span number and sig type in "dahdi show channels". Resolves: #673 #### res_pjsip_endpoint_identifier_ip: Add endpoint identifier transport address. Author: Sperl Viktor Date: 2024-03-28 Add a new identify_by option to res_pjsip_endpoint_identifier_ip called 'transport' this matches endpoints based on the bound ip address (local) instead of the 'ip' option, which matches on the source ip address (remote). UserNote: set identify_by=transport for the pjsip endpoint. Then use the existing 'match' option and the new 'transport' option of the identify. Fixes: #672 #### res_stir_shaken: Fix compilation for CentOS7 (openssl 1.0.2) Author: George Joseph Date: 2024-04-01 * OpenSSL 1.0.2 doesn't support X509_get0_pubkey so we now use X509_get_pubkey. The difference is that X509_get_pubkey requires the caller to free the EVP_PKEY themselves so we now let RAII_VAR do that. * OpenSSL 1.0.2 doesn't support upreffing an X509_STORE so we now wrap it in an ao2 object. * OpenSSL 1.0.2 doesn't support X509_STORE_get0_objects to get all the certs from an X509_STORE and there's no easy way to polyfill it so the CLI commands that list profiles will show a "not supported" message instead of listing the certs in a store. Resolves: #676 #### Fix incorrect application and function documentation references Author: George Joseph Date: 2024-04-01 There were a few references in the embedded documentation XML where the case didn't match or where the referenced app or function simply didn't exist any more. These were causing 404 responses in docs.asterisk.org. #### cli.c: `core show channels concise` is not really deprecated. Author: Sean Bright Date: 2024-04-01 Fixes #675 #### res_pjsip_endpoint_identifier_ip: Endpoint identifier request URI Author: Sperl Viktor Date: 2024-03-28 Add ability to match against PJSIP request URI. UserNote: this new feature let users match endpoints based on the indound SIP requests' URI. To do so, add 'request_uri' to the endpoint's 'identify_by' option. The 'match_request_uri' option of the identify can be an exact match for the entire request uri, or a regular expression (between slashes). It's quite similar to the header identifer. Fixes: #599 #### Implement Configurable TCP Keepalive Settings in PJSIP Transports Author: Joshua Elson Date: 2024-03-18 This commit introduces configurable TCP keepalive settings for both TCP and TLS transports. The changes allow for finer control over TCP connection keepalives, enhancing stability and reliability in environments prone to connection timeouts or where intermediate devices may prematurely close idle connections. This has proven necessary and has already been tested in production in several specialized environments where access to the underlying transport is unreliable in ways invisible to the operating system directly, so these keepalive and timeout mechanisms are necessary. Fixes #657 #### chan_dahdi: Don't retry opening nonexistent channels on restart. Author: Naveen Albert Date: 2024-03-26 Commit 729cb1d390b136ccc696430aa5c68d60ea4028be added logic to retry opening DAHDI channels on "dahdi restart" if they failed initially, up to 1,000 times in a loop, to address cases where the channel was still in use. However, this retry loop does not use the actual error, which means chan_dahdi will also retry opening nonexistent channels 1,000 times per channel, causing a flood of unnecessary warning logs for an operation that will never succeed, with tens or hundreds of thousands of open attempts being made. The original patch would have been more targeted if it only retried on the specific relevant error (likely EBUSY, although it's hard to say since the original issue is no longer available). To avoid the problem above while avoiding the possibility of breakage, this skips the retry logic if the error is ENXIO (No such device or address), since this will never succeed. Resolves: #669 #### res_pjsip_refer.c: Allow GET_TRANSFERRER_DATA Author: Martin Tomec Date: 2024-02-06 There was functionality in chan_sip to get REFER headers, with GET_TRANSFERRER_DATA variable. This commit implements the same functionality in pjsip, to ease transfer from chan_sip to pjsip. Fixes: #579 UserNote: the GET_TRANSFERRER_DATA dialplan variable can now be used also in pjsip. #### res_ari.c: Add additional output to ARI requests when debug is enabled Author: Martin Nystroem Date: 2024-03-22 When ARI debug is enabled the logs will now output http method and the uri. Fixes: #666 #### alembic: Fix compatibility with SQLAlchemy 2.0+. Author: Sean Bright Date: 2024-03-20 SQLAlchemy 2.0 changed the way that commits/rollbacks are handled causing the final `UPDATE` to our `alembic_version_<whatever>` tables to be rolled back instead of committed. We now use one connection to determine which `alembic_version_<whatever>` table to use and another to run the actual migrations. This prevents the erroneous rollback. This change is compatible with both SQLAlchemy 1.4 and 2.0. #### manager.c: Add new parameter 'PreDialGoSub' to Originate AMI action Author: jonatascalebe Date: 2024-03-14 manager.c: Add new parameter 'PreDialGoSub' to Originate AMI action The action originate does not has the ability to run an subroutine at initial channel, like the Aplication Originate. This update give this ability for de action originate too. For example, we can run a routine via Gosub on the channel to request an automatic answer, so the caller does not need to accept the call when using the originate command via manager, making the operation more efficient. UserNote: When using the Originate AMI Action, we now can pass the PreDialGoSub parameter, instructing the asterisk to perform an subrouting at channel before call start. With this parameter an call initiated by AMI can request the channel to start the call automaticaly, adding a SIP header to using GoSUB, instructing to autoanswer the channel, and proceeding the outbuound extension executing. Exemple of an context to perform the previus indication: [addautoanswer] exten => _s,1,Set(PJSIP_HEADER(add,Call-Info)=answer-after=0) exten => _s,n,Set(PJSIP_HEADER(add,Alert-Info)=answer-after=0) exten => _s,n,Return() #### menuselect: Minor cosmetic fixes. Author: Naveen Albert Date: 2024-03-21 Improve some of the formatting from dd3f17c699e320d6d30c94298d8db49573ba28da (#521). #### pbx_variables.c: Prevent SEGV due to stack overflow. Author: Naveen Albert Date: 2024-03-21 It is possible for dialplan to result in an infinite recursion of variable substitution, which eventually leads to stack overflow. If we detect this, abort substitution and log an error for the user to fix the broken dialplan. Resolves: #480 UpgradeNote: The maximum amount of dialplan recursion using variable substitution (such as by using EVAL_EXTEN) is capped at 15. #### res_prometheus: Fix duplicate output of metric and help text Author: Holger Hans Peter Freyther Date: 2024-02-24 The prometheus exposition format requires each line to be unique[1]. This is handled by struct prometheus_metric having a list of children that is managed when registering a metric. In case the scrape callback is used, it is the responsibility of the implementation to handle this correctly. Originally the bridge callback didn't handle NULL snapshots, the crash fix lead to NULL metrics, and fixing that lead to duplicates. The original code assumed that snapshots are not NULL and then relied on "if (i > 0)" to establish the parent/children relationship between metrics of the same class. This is not workerable as the first bridge might be invisible/lacks a snapshot. Fix this by keeping a separate array of the first metric by class. Instead of relying on the index of the bridge, check whether the array has an entry. Use that array for the output. Add a test case that verifies that the help text is not duplicated. Resolves: #642 [1] https://prometheus.io/docs/instrumenting/exposition_formats/#grouping-and-sorting #### manager.c: Add CLI command to kick AMI sessions. Author: Naveen Albert Date: 2023-12-06 This adds a CLI command that can be used to manually kick specific AMI sessions. Resolves: #485 UserNote: The "manager kick session" CLI command now allows kicking a specified AMI session. #### chan_dahdi: Allow specifying waitfordialtone per call. Author: Naveen Albert Date: 2023-12-02 The existing "waitfordialtone" setting in chan_dahdi.conf applies permanently to a specific channel, regardless of how it is being used. This rather restrictively prevents a system from simultaneously being able to pick free lines for outgoing calls while also allowing barge-in to a trunk by some other arrangement. This allows specifying "waitfordialtone" using the CHANNEL function for only the next call that will be placed, allowing significantly more flexibility in the use of trunk interfaces. Resolves: #472 UserNote: "waitfordialtone" may now be specified for DAHDI trunk channels on a per-call basis using the CHANNEL function. #### res_parking: Fail gracefully if parking lot is full. Author: Naveen Albert Date: 2024-03-03 Currently, if a parking lot is full, bridge setup returns -1, causing dialplan execution to terminate without TryExec. However, such failures should be handled more gracefully, the same way they are on other paths, as indicated by the module's author, here: http://lists.digium.com/pipermail/asterisk-dev/2018-December/077144.html Now, callers will hear the parking failure announcement, and dialplan will continue, which is consistent with existing failure modes. Resolves: #624 #### res_config_mysql.c: Support hostnames up to 255 bytes. Author: Sean Bright Date: 2024-03-18 Fixes #654 #### res_pjsip: Fix alembic downgrade for boolean columns. Author: Sean Bright Date: 2024-03-18 When downgrading, ensure that we don't touch columns that didn't actually change during upgrade. #### Upgrade bundled pjproject to 2.14.1 Author: Stanislav Abramenkov Date: 2024-03-12 Fixes: asterisk#648 UserNote: Bundled pjproject has been upgraded to 2.14.1. For more information visit pjproject Github page: https://github.com/pjsip/pjproject/releases/tag/2.14.1 #### alembic: Quote new MySQL keyword 'qualify.' Author: Sean Bright Date: 2024-03-15 Fixes #651 #### res_pjsip_session: Reset pending_media_state->read_callbacks Author: Maximilian Fridrich Date: 2024-02-15 In handle_negotiated_sdp the pending_media_state->read_callbacks must be reset before they are added in the SDP handlers in handle_negotiated_sdp_session_media. Otherwise, old callbacks for removed streams and file descriptors could be added to the channel and Asterisk would poll on non-existing file descriptors. Resolves: #611 #### res_monitor.c: Don't emit a warning about 'X' being unrecognized. Author: Sean Bright Date: 2024-03-07 Code was added in 030f7d41 to warn if an unrecognized option was passed to an application, but code in Monitor was taking advantage of the fact that the application would silently accept an invalid option. We now recognize the invalid option but we don't do anything if it's set. Fixes #639
github-actions bot
pushed a commit
that referenced
this issue
Nov 24, 2024
0.6.6 - 2024-11-19 Added PR#268 resolved #267 by adding a unicode-ident workaround to compensate for the LICENSE-UNICODE file more closely matching the Unicode-3.0 SPDX identifier rather than the expected Unicode-DFS-2016 one. 0.6.5 - 2024-11-18 Added PR#261 resolved #246 by adding an --offline (as well as --locked and --frozen) option to the generate command. PR#266 resolved #230 by adding a --target option to generate, allowing one to specify one or more targets to filter the dependency graph by, overriding the targets configuration option. Changed PR#262 resolved #258 by using LTO for release builds, slightly decreasing binary sizes. Fixed PR#263 resolved #238 by adding the native-certs feature to use the native certificate store. This feature is not enabled by default as it is only required for corporate environments that man in the middle network traffic. PR#265 resolved #198 by detecting if the parent process is powershell and exiting with an error if cargo-about's output is being redirected instead of using the -o option, as powershell is terrible and doesn't use utf-8 encoding by default. PR#266 resolved #222 by adding some additional documentation on https://clearlydefined.io.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Would be useful in the global zone.
The text was updated successfully, but these errors were encountered: