-
Notifications
You must be signed in to change notification settings - Fork 164
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
devel/py-pip: Add pip2 and pip3 alternatives #64
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please move ALTERNATIVE_SRC inclusion logic before bsd.pkg.mk
, looks good otherwise, thanks!
devel/py-pip/Makefile
Outdated
|
||
.if !empty(_PYTHON_VERSION:M2*) | ||
ALTERNATIVES_SRC= ${PKGDIR}/ALTERNATIVES.python2 | ||
.endif | ||
.if !empty(_PYTHON_VERSION:M3*) | ||
ALTERNATIVES_SRC= ${PKGDIR}/ALTERNATIVES.python3 | ||
.endif |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Normally in package Makefile bsd.pkg.mk
inclusion is the last line.
Please move that logic before bsd.pkg.mk
inclusion, betweet the REPLACE_PYTHON paragraph and post-install, and add:
.include "../../lang/python/pyversion.mk"
[... logic to select ALTERNATIVES_SRC ...]
@iamleot Do you know why the pip2 and pip3 is removed with lines:
It is deleted from directory with |
Bartosz writes:
@iamleot Do you know why the pip2 and pip3 is removed with lines:
```
post-install:
cd ${DESTDIR}${PREFIX}/bin && ${RM} -f pip pip[2-3]
```
Because they would conflict in multi-pkg case: e.g. you can have
py27-pip, py36-pip, py37-pip and py38-pip and in that case I guess that
each of them would install pip/pip2 (py27-pip) or pip/pip3 (py3*-pip)
To avoid that only pip${PYVERSSUFFIX} is installed so you can have
installed e.g. both py37-pip and py38-pip without any conflicts.
It is deleted from directory with `pkg_alternatives`, eg. `/pkg/libdata/pkg_alternatives/usr/local/pkg/bin/pip3`
ITYM it is deleted from the ${DESTDIR} (under the WRKOBJDIR). That's
pretty common with multi-packages like Python one (and more commen is
to rename them via ${MV} to add the ${PYVERSSUFFIX} suffix).
|
@iamleot Is there a way to have single I have tried with variable, like: and then use single
Do you know how to achieve that? |
Bartosz writes:
@iamleot Is there a way to have single `${PKGDIR}/ALTERNATIVES` file?
I have tried with variable, like:
`PYMAJORVERSION= ${_PYTHON_VERSION:C/^([0-9])/\1}`
or even:
`PYMAJORVERSION= 3`
and then use single `${PKGDIR}/ALTERNATIVES` file, eg:
```
bin/pip @Prefix@***@***.***@
bin/pip${PYMAJORVERSION} @Prefix@***@***.***@
```
Do you know how to achieve that?
|
Thanks, I have limited the number of ALTERNATIVES files to one :-) |
The pip2 and pip3 are widely used aliases which make sure the specific major version is used. https://packages.debian.org/buster/all/python-pip/filelist https://packages.debian.org/pl/sid/python3-pip With this patch the alternate pip2 and pip3 wrappers are introduced.
Thanks! I have just committed it with only a minor change - removing the not needed grouping for the trailing Thank you @Gang65 for the patch! |
0.069 2020-08-25 - fix #64 ECC: segfault on invalid input - fix #63 ltc Licensing could be clearer (added src/{ltc,ltm}/LICENSE) - fix #62 documentation only (Crypt::CBC related) - bundled libtomcrypt update branch:develop (commit:d8d7a83b 2020-07-14) 0.068 2020-03-10 - fix #60 Test failues on macOS Catalina 0.067 2020-02-01 - new: Crypt::PK::Ed25519 - new: Crypt::PK::X25519 - bundled libtomcrypt update branch:develop (commit:1937f412 2019-11-22) 0.066 2019-10-20 - fix #57 Build fails on i686 - bundled libtomcrypt update branch:develop (commit:354c9051 2019-10-20) - no perl module code change 0.065 2019-10-19 - fix #56 Math::BigInt 1.999817 breaks the tests of CryptX - bundled libtomcrypt update branch:develop (commit:25410c75 2019-10-17) - no perl module code change, just tests
Update php-http3 to 3.2.1. pkgsrc change: * Update supported PHP versions. * Add a few dependency. 3.2.1, 2019-06-07 * Fixed gh-issue #88: Unable to run test suite (Remi Collet) * Fixed gh-issue #86: test failure with curl 7.64 * Fixed gh-issue #85: [-Wformat-extra-args] build warnings * Fixed gh-issue #84: segfault and build failure since curl 7.62 * Fixed gh-issue #82: Test harness improvements (Chris Wright) * Fixed gh-issue #64: compress and connecttimeout interfere with low_speed_limit (@rcanavan) * Fixed http\QueryString::getGlobalInstance() * Fixed missing 2nd reflection argument info of http\Client::notify() * Fixed PHP-7.4 compatibility 3.2.0, 2018-07-19 * PHP-7.2 compatibility * Fixed gh-issue #73: build fails with libidn and libidn2 * Added brotli compression support * Implemented gh-issue #58: Notify observers before any request is built 3.2.0RC1, 2018-04-09 * PHP-7.2 compatibility * Fixed gh-issue #73: build fails with libidn and libidn2 * Added brotli compression support * Implemented gh-issue #58: Notify observers before any request is built 3.1.0, 2016-12-12 * Added http\Client\Curl\User interface for userland event loops * Added http\Url::IGNORE_ERRORS, http\Url::SILENT_ERRORS and http\Url::STDFLAGS * Added http\Client::setDebug(callable $debug) * Added http\Client\Curl\FEATURES constants and namespace * Added http\Client\Curl\VERSIONS constants and namespace * Added share_cookies and share_ssl (libcurl >= 7.23.0) options to http\Client::configure() * http\Client uses curl_share handles to properly share cookies and SSL/TLS sessions between requests * Improved configure checks for default CA bundles * Improved negotiation precision * Fixed regression introduced by http\Params::PARSE_RFC5987: negotiation using the params parser would receive param keys without the trailing asterisk, stripped by http\Params::PARSE_RFC5987. * Fix gh-issue #50: http\Client::dequeue() within http\Client::setDebug() causes segfault (Mike, Maik Wagner) * Fix gh-issue #47: http\Url: Null pointer deref in sanitize_value() (Mike, @rc0r) * Fix gh-issue #45: HTTP/2 response message parsing broken with libcurl >= 7.49.1 (Mike) * Fix gh-issue #43: Joining query with empty original variable in query (Mike, Sander Backus) * Fix gh-issue #42: fatal error when using punycode in URLs (Mike, Sebastian Thielen) * Fix gh-issue #41: Use curl_version_info_data.features when initializing options (Mike) * Fix gh-issue #40: determinde the SSL backend used by curl at runtime (Mike, @rcanavan) * Fix gh-issue #39: Notice: http\Client::enqueue(): Could not set option proxy_service_name (Mike, @rcanavan) * Fix gh-issue #38: Persistent curl handles: error code not properly reset (Mike, @afflerbach) * Fix gh-issue #36: Unexpected cookies sent if persistent_handle_id is used (Mike, @rcanavan, @afflerbach) * Fix gh-issue #34: allow setting multiple headers with the same name (Mike, @rcanavan) * Fix gh-issue #33: allow setting prodyhost request option to NULL (Mike, @rcanavan) * Fix gh-issue #31: add/improve configure checks for default CA bundle/path (Mike, @rcanavan)
CUPS 2.3.3op2 is the latest OpenPrinting CUPS security and bug fix release. Changes include: Security: Fixed a buffer (read) overflow in the ippReadIO function (CVE-2020-10001) Clarified the documentation for the "Listen" directive (Issue #53) Fixed duplicate ColorModel entries for AirPrint printers (Issue 59) Fixed directory/permission defaults for Debian kfreebsd-based systems (Issue #60, Issue #61) Fixed crash bug in ppdOpen (Issue #64, Issue #78) Fixed regression in snprintf emulation function (Issue #67) The scheduler's systemd service file now waits for the nslcd service to start (Issue #69) The libusb-based USB backend now uses a simpler read timer implementation to avoid a regression in a previous change (Issue #72) The PPD caching code now only tracks the APPrinterIconPath value on macOS (Issue #73) Fixed segfault in help.cgi when searching in man pages (Issue #81) Root certificates were incorrectly stored in "~/.cups/ssl".
glibmm is a C++ interface for the devel/glib2 library. This package follows the 2.68 API. Changes compared to devel/glibmm: 2.68.0 (stable): This is the first stable release in the glibmm-2.68 ABI series. It is parallel-installable with the glibmm-2.4 ABI. The tarball for 2.68.0 has been created with 'meson dist'. If you build with Autotools from the tarball, please read the relevant part of the README file. Glib: * PropertyProxyConnectionNode::connect_changed(): Fix using without property name (Daniel Boles) Issue #74 (wswfc), merge request !35 * Remove BalancedTree (Kjell Ahlstedt) Gio: * ListStore: Accept interfaces (Andreas Persson) Merge request !38 * MenuModel: Make MenuAttribute and MenuLink enum class (Kjell Ahlstedt) * Add TlsClientConnectionImpl and TlsServerConnectionImpl (Kjell Ahlstedt) * SocketClient::signal_event(): Fix wrapping of 'connection' parameter (Kjell Ahlstedt) Issue #73 (smilingthax) gmmproc: * Add optional decl_prefix parameter to _WRAP_GERROR and _WRAP_ENUM Used for adding GLIBMM_API or similar for MS Visual C++ (Chun-wei Fan) Merge request !32 * Allow decorating comparison operators (for Visual Studio builds) (Chun-wei Fan) Merge request !33 * _CLASS_BOXEDTYPE, _CLASS_OPAQUE_COPYABLE: Fix move assignment (Kjell Ahlstedt) Issue #76 (misos1) * Decorate private generated classes with __declspec when building with Visual Studio (Chun-wei Fan) Merge request !39, !41 * generate_wrap_init.pl.in: Use g_type_ensure(SomeClass::get_type()) to ensure that get_type() is called (Kjell Ahlstedt) Build: * Use __declspec(dllexport) consistently when building glibmm with Visual Studio (Chun-wei Fan) Merge request !32 * Meson build: Set default value of the 'warnings' option to 'min' (Kjell Ahlstedt) * Improve NMake support (Chun-wei Fan) * Improve Visual Studio support (Chun-wei Fan) Merge request !37 * docs/reference/: Update for Doxygen >= 1.8.16 (Kjell Ahlstedt) * Meson build: Fix versioning on macOS (Kjell Ahlstedt) Pull request libsigcplusplus#65 (Tom Schoonjans) * Meson build: Fix detection of macOS (Tom Schoonjans) Merge request !43 * Change the ABI to glibmm-2.68 (Kjell Ahlstedt) Documentation: * Meson build: Add missing Glib::Value and Variant documentation (Kjell Ahlstedt) 2.65.3: (unstable): Distro packagers should probably not package this yet. Tests: * glibmm_buildfilename: Add some tests (Kjell Ahlstedt) Issue #71 (Kalev Lember) Build: * Meson build: Install generate_extra_defs.h (Kjell Ahlstedt) Issue #70 (Jan Alexander Steffens) 2.65.2: (unstable): Distro packagers should probably not package this yet. Glib: * Add missing #includes (Kjell Ahlstedt) Issue #69 (Kalev Lember) 2.65.1: (unstable): Distro packagers should probably not package this yet. Glib: * Add get_user_runtime_dir() (scx) Issue #57, merge request !14 * Add get_host_name() (scx) Issue #58, merge request !15 * MainContext: Add push/pop/get_thread_default() (Kjell Ahlstedt) Issue #56 (Yackie-Yang) * Add StdStringView and UStringView Use them in build_filename() and other functions (Thomas Holder, Kjell Ahlstedt) Issue #34 (Thomas Holder) Issue #64, #65 * Regex::match(): Avoid using string after deletion (Thomas Holder) Issue #66, merge request !25 * Add Glib::canonicalize_filename() (Kjell Ahlstedt) Issue #59 (Patrick Storz) * Binding: get_source() and get_target() return ObjectBase* (Kjell Ahlstedt) Issue #63 (Daniel Boles) * ustring: Fix insert(iterator, In, In) (Thomas Holder) Merge request !19 * Value: Adding static_assert() for template parameter (Pavlo Solntsev) Merge request !23 * Error: Derive from std::exception, remove Glib::Exception (Kjell Ahlstedt) Issue #23 (Daniel Boles) * Binding: Keep a binding alive even without a RefPtr (Kjell Ahlstedt) Issue #62 (Daniel Boles) Gio: * DBus::Connection: Make the wrap() function thread-safe (Kjell Ahlstedt) Issue #56 (Yackie-Yang) * SettingsSchemaSource: Add list_schemas() Add a create(), wrapping new_from_directory() (Daniel Boles) Issue #19, merge request !20 * DBus::Message::get_unix_fd_list(): Add refreturn (Kjell Ahlstedt) Issue #68 (kr.woaini) Tests: * Add glibmm_ustring_compare test (Thomas Holder) Issue #65 * Add glibmm_regex test (Thomas Holder) Issue #66, merge request !25 * Add glibmm_binding test (Daniel Boles) Merge request !18 gmmproc: * Add optional decl_prefix parameter to _CLASS_BOXEDTYPE, _CLASS_BOXEDTYPE_STATIC, _CLASS_GOBJECT, _CLASS_INTERFACE, _CLASS_OPAQUE_COPYABLE, _CLASS_OPAQUE_REFCOUNTED, _WRAP_GERROR Used for adding GLIBMM_API or similar for MS Visual C++ (Chun-wei Fan) Build: * Change the ABI to glibmm-2.66 (Kjell Ahlstedt) * Add Meson support (Chun-wei Fan, Kjell Ahlstedt) Merge request !27 * Drop gendef from Windows builds (Chun-wei Fan) Issue #12 (Mikhail Titov), merge request !29 Documentation: * Correct spelling of spawn_async_with_pipes() (Mike Fleetwood) Merge request !16 * Glib::Binding: Several doc improvements (Daniel Boles) Merge request !18 * Glib::Binding: Explain why SlotTransform takes GValue* (Kjell Ahlstedt) Issue #61 (Daniel Boles) * Gio::AsyncResult: Improve the class description (Kjell Ahlstedt) Issue #27 (Alberto Mardegan)
1.1.1 (2021-07-26) Merged Pull Requests * Update chefstyle requirement from 1.7.1 to 1.7.2 #64 (dependabot-preview[bot]) * Update chefstyle requirement from 1.7.2 to 1.7.4 #65 (dependabot-preview[bot]) * Update chefstyle requirement from 1.7.4 to 1.7.5 #67 (dependabot-preview[bot]) * Upgrade to GitHub-native Dependabot #68 (dependabot-preview[bot]) * Drop support for EOL Ruby 2.4 #76 (tas50) * Fix failures on Ruby 3 #66 (tas50)
Change log: 0.12.1 (2021-11-26) ====== - Dependency Changes: - GLib >= 2.44.0 - Performance Improvement: - Optimize sorting by content type - Load images asynchronously (#16, #29, #32, !34) - Increase image loading buffer size (!34) - Appearance Changes: - Allow to display all files in the open dialog (!33) - Code Refactoring: - Rework the file opening procedure (!33) - Bug Fixes: - Fix a memory leak when closing the window directly - Refactoring: Clarify thumbnailer queue management - Thumbnailer: Do not empty an unprocessed file list - Update window title on image deletion or insertion - Perform content-based filtering wherever necessary - Set device scale for animated images - Properly recognize SVG compressed image files - Use the generic pixbuf loader for RAW image files - Fix pointer behavior in fullscreen mode - Icon bar: Properly highlight item under the cursor - Icon bar: Center on the active item for any size change - Fix regression: Exif orientation is not respected (#69) - Do not try to load images whose pixbuf is not available (!34) - Fix memory management of image loading objects (!34) - Use URIs instead of filenames in the `.desktop` file (#49) - Directory loading: Allow to load a directory via the cli - Flatpak: Access remote locations with GVfs - Directory loading: Fix improper use of GFileEnumerator APIs (#68) - Translation Updates: Albanian, Arabic, Armenian (Armenia), Basque, Belarusian, Bulgarian, Catalan, Chinese (China), Chinese (Taiwan), Croatian, Czech, Danish, Dutch, Eastern Armenian, English (Australia), English (United Kingdom), Estonian, Finnish, French, Galician, German, Greek, Hebrew, Hungarian, Icelandic, Indonesian, Interlingue, Italian, Japanese, Kazakh, Korean, Lithuanian, Malay, Norwegian Bokmål, Occitan (post 1500), Polish, Portuguese, Portuguese (Brazil), Romanian, Russian, Serbian, Slovak, Slovenian, Spanish, Swedish, Thai, Turkish, Ukrainian, Uyghur 0.12.0 (2021-10-11) ====== - Dependency Changes: - libxfce4ui >= 4.16.0 - libxfce4util >= 4.16.0 - New Features: - Allow to choose the default scale (!29) - Keep the scale in memory for each loaded image (#7, #17, !28) - Toggle fullscreen mode by double clicking on the image - Performance Improvement: - Optimize directory loading (#20, #22, #32, #37, !31) - Optimize image viewer redraw: Disable overlay scrolling (#64) - Optimize image viewer redraw: Reuse source surface (#64, !26) - Avoid using Cairo Xlib backend to create surfaces (#60, #61, #62, !25) - Optimize image viewer redraw: Animation (#64) - Optimize image viewer redraw: Background color (#64) - Optimize image viewer redraw: Clock (#64) - Optimize image viewer redraw: Selection box (#64) - Don't redraw the main window when it loses focus (#64) - Remove the shadow of the toolbar buttons (#51, #64) - Appearance Changes: - Hide thumbnail scrollbar when unused (!24) - Use the same background for the image and the thumbnails (#36, !23) - Drop preferences-desktop-default-applications icon - Code Refactoring: - Flatpak build (!32) - Refactoring: Use only one file filter for the app - Refactoring: Icon bar adjustments - Cleanup: `icon_bar.c` - Cleanup: Pass orientation directly from file to viewer - Code refactoring: Image viewer adjustments, scale and drawing (!27) - Use integers for the image rendering rectangle - Code cleanup: Build sanitation, obsolete code removal, spacing, normalization (!22) - Transfer contents from dispose() to finalize() - Add debugging macros - Bug Fixes: - Protect asynchronous jobs from an application exit - Fix position of the active item in the icon bar when vertical (#34) - Take into account the device scale (#47, !30) - Properly load images via drag and drop (#67) - Delay GdkPixbufLoader "closed" signal handler - Use the same scale factor to zoom via action and scrolling - Fix a lack of centering when zooming via the menu action - Fix some memory leak (several commits of this kind) - Fix file creation monitoring - Try to display the image on `GDK_PIXBUF_ERROR_CORRUPT_IMAGE` (#39) - Always set adjustment upper bounds greater than page sizes (#35) - Scaling/zoom corrections (#30, !8) - Fix animated GIF display - Automate and sanitize memory management of sources (#65) - Fix `rstto_icon_bar_rows_reordered()` (#48) - Chain up to parent in dispose() and finalize() - Translation Updates: Albanian, Arabic, Armenian (Armenia), Basque, Belarusian, Bulgarian, Catalan, Chinese (China), Chinese (Taiwan), Croatian, Czech, Danish, Dutch, Eastern Armenian, English (Australia), English (United Kingdom), Estonian, Finnish, French, Galician, German, Greek, Hebrew, Hungarian, Icelandic, Indonesian, Interlingue, Italian, Japanese, Kazakh, Korean, Lithuanian, Malay, Norwegian Bokmål, Occitan (post 1500), Polish, Portuguese, Portuguese (Brazil), Romanian, Russian, Serbian, Slovak, Slovenian, Spanish, Swedish, Thai, Turkish, Ukrainian, Uyghur 0.11.0 (2021-06-11) ====== - Update copyright years and appdata infos - Enable `HAVE_MAGIC_H`-delimited code - Fix compilation warnings - autoconf: Some updates - Update `.gitignore` - Add option to copy image to clipboard (!20) - Allow dragging window when CSD is used (#52) - Remove GSourceFunc casts - Added new stock icons with reverse DNS format - Updates README.md - Include string.h - Codebase cleanup (!7) - Make build less verbose - Update .gitignore - Make sure that argument passed to strncmp is non-NULL (!1) - privacy_dialog.c: Remove dead initialization (!2) - image_list.c: Remove dead assignment (!2) - Add basic GitLab pipeline - Switch to README.md and foreign automake mode - Bug #16717: Move from exo-csource to xdt-csource - Resolve couple "cast between incompatible function types" warnings - Fix memory leaks in Privacy Dialog - Resolve deprecation warnings - Resolve some deprecation warnings - Clean up unused functions - Rename vars and funcs: show -> hide - Add inactivity timeout setting to Preferences - Hide the cursor while inactive in fullscreen mode - Fix 'Status bar appears upon leaving fullscreen' - Update .gitignore - Do not show translation info on --help output - Fix "window-state-event" handler - Update credits - Add support for old gtk2-style bg color settings - Add missing LDFLAGS (fixes build on *bsd) - In fullscreen mode, show toolbar when the mouse pointer is moved to the top - Return to git versioning - Translation Updates: Albanian, Arabic, Armenian (Armenia), Basque, Belarusian, Bulgarian, Catalan, Chinese (China), Chinese (Taiwan), Croatian, Czech, Danish, Dutch, Eastern Armenian, English (Australia), English (United Kingdom), Estonian, Finnish, French, Galician, German, Greek, Hebrew, Hungarian, Icelandic, Indonesian, Interlingue, Italian, Japanese, Kazakh, Korean, Lithuanian, Malay, Norwegian Bokmål, Occitan (post 1500), Polish, Portuguese, Portuguese (Brazil), Romanian, Russian, Serbian, Slovak, Slovenian, Spanish, Swedish, Telugu, Thai, Turkish, Ukrainian, Uyghur
[0.6.1] - 2022-03-13 Bug Fixes -Do not skip all tags when skip_tags is empty (#63) -Use root commit when --latest and there is only one tag (#59) -Use the correct branch for codecov (#65) -Fix keepachangelog config example (#66) Documentation -Add another option of GitHub Actions (#64) -Document timestamp format of Release struct (#67) Miscellaneous Tasks -Upgrade regex dependency to fix CVE-2022-24713 -Upgrade dependencies
Upstream changes: 1.5.1 crayon now does not fail to install from source if the utils package is not loaded (#133). 1.5.0 You can use the new cli.default_num_colors option to set the default number of ANSI colors, only if ANSI support is otherwise detected. See the details in the manual of num_ansi_colors(). (From cli.) crayon now install cleanly on R 3.4.x and R 3.5.x on Windows (#131). 1.4.2 Better ANSI support detection if there is an active sink(). Support ANSI markup in RStudio jobs. 1.4.1 ANSI color support detection works correctly now in older RStudio (#112). ANSI color support detection works correctly now on older R versions (#109). 1.4.0 Overhauled and much improved detection of ANSI color support and number of ANSI colors. NO_COLOR environment variable disables color (#64) Now colors are turned on if ANSICON (https://github.com/adoxa/ansicon) is active. New hyperlink() function to add hyperlinks to terminal output. The new has_hyperlink() function tests if the current stdout() supports this. reset style now restores previous style for text following it (@brodieG, #35). Warnings are no longer generated when the INSIDE_EMACS environment variable is set but does not include a version number.
# pkgbuild 1.3.1 * Accept Rtools40 for R 4.2, it works well, as long as the PATH includes both `${RTOOLS40_HOME}/usr/bin` and `${RTOOLS40_HOME}/ucrt64/bin`. E.g. `~/.Renviron` should contain now ``` PATH="${RTOOLS40_HOME}\usr\bin;${RTOOLS40_HOME}\ucrt64\bin;${PATH}" ``` to make Rtools40 work with both R 4.2.x (devel currently) and R 4.1.x and R 4.0.x. # pkgbuild 1.3.0 * pkgbuild now supports Rtools 4.2. * pkgbuild now returns the correct path for R 3.x (#96). * `build()` now always returns the path of the built package (#108). * pkgbuild output now looks better in `.Rmd` documents and in general in non-dynamic terminals. You can also force dynamic and non-dynamic output now (#64). * pkgbuild does not build the PDF manual now if `pdflatex` is not installed, even if `manual = TRUE` (#123). # pkgbuild 1.2.1 * Gábor Csárdi is now the maintainer. * `build_setup_source` now considerers both command-line build arguments, as well as parameters `vignettes` or `manual` when conditionally executing flag-dependent behaviors (@dgkf, #120)
Breaking Changes Move Parser Configuration into a Feature Option by @Builditluc in #63 Exciting New Features Add option to change the keybindings via configuration by @Builditluc in #38 Add AUR install option by @ThomasFrans in #42 Add a desktop-entry for packaging by @ThomasFrans in #44 Add checksums for the release assets by @Builditluc in #59 Bug Fixes Fix Header Selection by @Builditluc in #41 Fix Keybinding Crash by @Builditluc in #46 Add missing element after line split by @ThomasFrans in #48 Disable stdout logging for release builds by @ThomasFrans in #47 Fix publish action in the cd workflow by @Builditluc in #60 Fix toc not having scrollbars by @Builditluc in #64 Other Changes Update Bug Report Issue Template by @Builditluc in #40 Add label requirement to ci workflow by @Builditluc in #52 Add documentation job to ci workflow by @Builditluc in #55 Fix typo in search.rs by @eltociear in #56 Add yashinghcodes/wik project to similar projects by @Builditluc in #58 Increase Stale Days to 365 by @Builditluc in #61
What's Changed Exciting New Features Add toc position setting by @Builditluc in #65 Add more toc settings by @Builditluc in #66 Bug Fixes Fix toc not having scrollbars by @Builditluc in #64 Fix Word Spacing by @Builditluc in #68 Fix the crash that occurs when no links or headers exist by @Builditluc in #70
Fixes - Fixed AppImage build for systems without OpenSSL 1.1 (#182). - Fixed build errors on MinGW (#193). - Fixed not being able to change volume on some styles (#206). - Fixed crash when playing library items with many tracks (#208). - Fixed MPRIS support on Qt 6. - Fixed side panel tabs not working on some styles. - Fixed not showing tool-tip for added date in albums. - Fixed using Fusion style when saving settings with default selected. - Fixed not displaying artist names with "&" properly. - Fixed flat buttons having a background with built-in dark theme. - Fixed not refreshing some cached albums correctly. Changes - Added automatic re-authentication if token expired (#64). - Improved error handling when setting client path (#65). - Added support for saving passwords on more Linux systems, macOS, and Windows (#70). - Added column for track liked status (#138). - Disallowed actions are now disabled (#186). - Added support for media keys on Windows (#192). - Client volume is now remembered instead of always being 100% (#196). - Added options for copying name of playlist/track/album (#203). - Added support for librespot v0.5.0 (#210). - Added back lyrics. - Now uses a native menu bar on macOS. - Improved startup performance. - Replaced "Save password in keyring" option with "Remember me" in password entry. - Added Apple Silicon support for macOS builds. - Replaced "fixed width remaining time" with custom fixed-width system font.
0.2.51 (2023-06-12) * Land #64, add masm format 0.2.52 (2023-06-14) * Add support for Ruby 3.3.0-preview1
# fansi Release Notes ## v1.0.4 CRAN compiled code warning suppression release. * Fix void function declarations and definitions. * Change `sprintf` to `snprintf`. ## v1.0.3 * Address problem uncovered by gcc-12 linters, although the issue itself could not manifest due to redundancy of checks in the code. ## v1.0.0-2 This is a major release and includes some behavior changes. ### Features * New functions: * [#26](brodieG/fansi#26) Replacement forms of `substr_cl` (i.e `substr_ctl<-`). * `state_at_end` to compute active state at end of a string. * `close_state` to generate a closing sequence given an active state. * [#31](brodieG/fansi#31) `trimws_ctl` as an equivalent to `trimws`. * [#64](brodieG/fansi#64) `normalize_sgr` converts compound _Control Sequences_ into normalized form (e.g. "ESC[44;31m" becomes "ESC[31mESC[44m") for better compatibility with [`crayon`](https://github.com/r-lib/crayon). Additionally, most functions gain a `normalize` parameter so that they may return their output in normalized form (h/t @krlmlr). * [#74](https://github.com/brodieG/fansi/issues/74)`substr_ctl` and related functions are now all-C instead of a combination of C offset computations and R level `substr` operations. This greatly improves performance, particularly for vectors with many distinct strings. Despite documentation claiming otherwise, `substr_ctl` was quite slow in that case. * [#66](brodieG/fansi#66) Improved grapheme support, including accounting for them in `type="width"` mode, as well as a `type="graphemes"` mode to measure in graphemes instead of characters. Implementation is based on heuristics designed to work in most common use cases. * `html_esc` gains a `what` parameter to indicate which HTML special characters should be escaped. * Many functions gain `carry` and `terminate` parameters to control how `fansi` generated substrings interact with surrounding formats. * [#71](brodieG/fansi#71) Functions that write SGR and OSC are now more parsimonious (see "Behavior Changes" below). * [#73](brodieG/fansi#73) Default parameter values retrieved with `getOption` now always have explicit fallback values defined (h/t @gadenbui). * Better warnings and error messages, including more granular messages for `unhandled_ctl` for adjacent _Control Sequences_. * `term.cap` parameter now accepts "all" as value, like the `ctl` parameter. ### Deprecated Functions * All the "sgr" functions (e.g., `substr_sgr`, `strwrap_sgr`) are deprecated. They will likely live on indefinitely, but they are of limited usefulness and with the added support for OSC hyperlinks their name is misleading. * `sgr_to_html` is now `to_html` with slight modifications to semantics; the old function remains and does not warn about unescaped "<" or ">" in the input string. ### Behavior Changes The major intentional behavior change is to default `fansi` to always recognize true color CSI SGR sequences (e.g. `"ESC[38;2;128;50;245m"`). The prior default was to match the active terminal capabilities, but it is unlikely that the intent of a user manipulating a string with truecolor sequences is to interpret them incorrectly, even if their terminal does. `fansi` will continue to warn in this case. To keep the pre-1.0 behavior add `"old"` to the `term.cap` parameter. Additionally, `to_html` will now warn if it encounters unescaped HTML special character "<" or ">" in the input string. Finally, the 1.0 release is an extensive refactoring of many parts of the SGR and OSC hyperlink controls (_Special Sequences_) intake and output algorithms. In some cases this means that some `fansi` functions will output _Special Sequences_ slightly differently than they did before. In almost all cases the rendering of the output should remain unchanged, although there are some corner cases with changes (e.g. in `strwrap_ctl` SGRs embedded in whitespace sequences don't break the sequence). The changes are a side effect of applying more consistent treatment of corner cases around leading and trailing control sequences and (partially) invalid control sequences. Trailing _Special Sequences_ in the output is now omitted as it would be immediately closed (assuming `terminate=TRUE`, the default). Leading SGR is interpreted and re-output. Normally output consistency alone would not be a reason to change behavior, but in this case the changes should be almost always undetectable in the **rendered** output, and maintaining old inconsistent behavior in the midst of a complete refactoring of the internals was beyond my patience. I apologize if these behavior changes adversely affect your programs. > WARNING: we will strive to keep rendered appearance of `fansi` outputs > consistent across releases, but the exact bytes used in the output of _Special > Sequences_ may change. Other changes: * Tests may no longer pass with R < 4.0 although the package should still function correctly. This is primarily because of changes to the character width Unicode Database that ships with R, and many of the newly added grapheme tests touch parts of that database that changed (emoji). * CSI sequences with more than one "intermediate" byte are now considered valid, even though they are likely to be very rare, and CSI sequences consume all subsequent bytes until a valid closing byte or end of string is encountered. * `strip_ctl` only warns with malformed CSI and OSC if they are reported as supported via the `ctl` parameter. If CSI and OSC are indicated as not supported, but two byte escapes are, the two initial bytes of CSI and OSCs will be stripped. * "unknown" encoded strings are no longer translated to UTF-8 in UTF-8 locales (they are instead assumed to be UTF-8). * `nchar_ctl` preserves `dim`, `dimnames`, and `names` as the base functions do. * UTF-8 known to be invalid should not be output, even if present in input (UTF-8 validation is not complete, only sequences that are obviously wrong are detected). ### Bug Fixes * Fix `tabs_as_spaces` to handle sequential tabs, and to perform better on very wide strings. * Strings with invalid UTF-8 sequences with "unknown" declared encoding in UTF-8 locales now cause errors instead of being silently translated into byte escaped versions (e.g. "\xf0\xc2" (2 bytes), used to be interpreted as "<f0><c2>" (four characters). These now cause errors as they would have if they had had "UTF-8" declared encoding. * In some cases true colors of form "38;2;x;x;x" and "48;2;x;x;x" would only be partially transcribed. ### Internal Changes * More aggressive UTF-8 validation, also, invalid UTF-8 code points now advance only one byte instead of their putative width based on the initial byte. * Reduce peak memory usage by making some intermediate buffers eligible for garbage collection prior to native code returning to R. * Reworked internals to simplify buffer size computation and synchronization, in some cases this might cause slightly reduced performance. Please report any significant performance regressions. * `nchar_ctl(...)` is no longer a wrapper for `nchar(strip_ctl(...))` so that it may correctly support grapheme width calculations.
What's Changed - Fixed: Release GitHub action by @AmmarAbouZor in #53 - Added: Tags (Categories) for journal + Filter Function by @AmmarAbouZor in #56 - Changed: Keep journals list in focus after closing the external editor by @AmmarAbouZor in #58 - Added: Select-Tags Popup in Create/Edit Journals Prompt by @AmmarAbouZor in #62 - Changed: Add Filter Keybindings To Footer by @AmmarAbouZor in #64 - Added: Search Functions in Filter by @AmmarAbouZor in #66 - Added: Create Cleanup Cache GitHub Action by @AmmarAbouZor in #73 - Added: Wiki Documentation by @AmmarAbouZor in #76 - Added: automatic version increment and CFF self-maintenance by @kevinmatthes in #79 - Allow Release Action To Start Manually by @AmmarAbouZor in #83
v0.1.7 What's Changed - Feature: + supported in ORIGIN by @Dajamante in #70 - Add changelog enforcer by @Urhengulas in #71 - CI: Install Rust manually by @Urhengulas in #72 - Update CI by @Urhengulas in #74 - End of year refactoring by @Urhengulas in #75 - Goodbye bors by @Urhengulas in #77 - Summer cleanup by @Urhengulas in #79 - Release v0.1.7 by @Urhengulas in #80 v0.1.6 What's Changed - Print a message when linking normally fails by @jonas-schievink in #58 - Add entry to change log by @justahero in #59 - Update to Rust 2021 🎉 by @Urhengulas in #60 - Update CHANGELOG.md by @Urhengulas in #61 - search linker scripts in cwd first by @spookyvision in #63 - ci: cache cargo registry & build artifacts by @japaric in #64 - v0.1.6 by @japaric in #68
devel/ruby-redmine51 require net-imap gem version 0.3.4 but ruby31 bundles 0.2.3. So, it add latest version of net-imap gem 0.3.x as ruby-net-imap. Ruby client api for Internet Message Access Protocol. Changes from 0.2.3: 0.3.0 (2022-11-17) What's Changed * Added dependabot.yml for actions by @hsbt in #59 * Bump actions/checkout from 2 to 3 by @dependabot in #60 * Adding RFC licenses by @nevans in #57 * Warn when using deprecated SASL mechanisms by @nevans in #62 New Contributors * @dependabot made their first contribution in #60 0.3.1 (2022-11-17) What's Changed * Add XOAUTH2 authenticator by @ssunday in #63 New Contributors * @ssunday made their first contribution in #63 0.3.2 (2022-12-09) What's Changed * Support UIDPLUS extension by @hoffi in #65 * Fixes "bundle exec rake" clash with test/unit by @nevans in #67 * Fix some UIDPLUS issues by @nevans in #69 * Fixes date-time format, and adds decode_datetime by @nevans in #66 * Add SASLprep. Code generated & tested with RFC3454 by @nevans in #64 * Add the UNSELECT command by @nevans in #72 * Fix mailbox attrs by @nevans in #73 * RFCs and references by @nevans in #71 * Nodocs and remove warning by @nevans in #70 * ResponseParser docs by @nevans in #76 * Response Data docs by @nevans in #75 New Contributors * @hoffi made their first contribution in #65 0.3.3 (2022-12-21) What's Changed * Revert "Fixes "bundle exec rake", clash with test/unit" by @znz in #88 New Contributors * @znz made their first contribution in #88 0.3.4 (2023-01-18) What's Changed * Net::IMAP Client docs by @nevans in #74 0.3.5 (2023-06-12) * Fix #response documentation error, by @nevans in 87ba74e * Add RFC3454 data, to support offline testing, by @nevans in #137 * Adds Ruby 3.2 to the CI matrix, by @petergoldstein in #99 * Use reusing workflow, by @hsbt in #151 * Decode UTF-7 more strictly, by @nobu in #152 * ️Continue testing 0.3.x branch against ruby 2.6, by @nevans in 115d190 * Fix decode utf-7 test for ruby 2.6, by @nevans in 7a60c8f * Fix XOAUTH2 authenticator for ruby 2.6, by @nevans in bd4faa0 0.3.6 (2023-06-12) * Fixes file permissions regression in v0.3.5 release, reported by @aaronjensen in #154 0.3.7 (2023-07-26) What's Changed * Backport: Fix for Digest MD5 bad challenges by @nobu in #160 PR for backport is #161
0.1.55 (2023-12-05) * Land #64, Add getresource method for DNS options
v1.0.18 (2024-02-06) Fix addresses issues accessing resources in Python v3.9 (#64) restore using stdlib to 3.9 or later
pkgsrc changes: - adapt to various upstream changes - update for newer version of pjproject - add unconditional depeendency on SDL - remove pktccops and mgcp option (has to do with supporting cable headends) - remove various 64-bit time_t fixes as upstream is finally doing these [asterisk-announce] asterisk release 18.21.0 The Asterisk Development Team would like to announce the release of asterisk-18.21.0. This release resolves issues reported by the community and would have not been possible without your participation. Thank You! Change Log for Release asterisk-18.21.0 ======================================== Summary: ---------------------------------------- - logger: Fix linking regression. - Revert "core & res_pjsip: Improve topology change handling." - menuselect: Use more specific error message. - res_pjsip_nat: Fix potential use of uninitialized transport details - app_if: Fix faulty EndIf branching. - manager.c: Fix regression due to using wrong free function. - config_options.c: Fix truncation of option descriptions. - manager.c: Improve clarity of "manager show connected". - make_xml_documentation: Really collect LOCAL_MOD_SUBDIRS documentation. - general: Fix broken links. - MergeApproved.yml: Remove unneeded concurrency - app_dial: Add option "j" to preserve initial stream topology of caller - ast_coredumper: Increase reliability - logger.c: Move LOG_GROUP documentation to dedicated XML file. - res_odbc.c: Allow concurrent access to request odbc connections - res_pjsip_header_funcs.c: Check URI parameter length before copying. - config.c: Log #exec include failures. - make_xml_documentation: Properly handle absolute LOCAL_MOD_SUBDIRS. - app_voicemail.c: Completely resequence mailbox folders. - sig_analog: Fix channel leak when mwimonitor is enabled. - res_rtp_asterisk.c: Update for OpenSSL 3+. - alembic: Update list of TLS methods available on ps_transports. - func_channel: Expose previously unsettable options. - app.c: Allow ampersands in playback lists to be escaped. - uri.c: Simplify ast_uri_make_host_with_port() - func_curl.c: Remove CURLOPT() plaintext documentation. - res_http_websocket.c: Set hostname on client for certificate validation. - live_ast: Add astcachedir to generated asterisk.conf. - SECURITY.md: Update with correct documentation URL - func_lock: Add missing see-also refs to documentation. - app_followme.c: Grab reference on nativeformats before using it - configs: Improve documentation for bandwidth in iax.conf. - logger: Add channel-based filtering. - chan_iax2.c: Don't send unsanitized data to the logger. - codec_ilbc: Disable system ilbc if version >= 3.0.0 - resource_channels.c: Explicit codec request when creating UnicastRTP. - doc: Update IP Quality of Service links. - chan_pjsip: Add PJSIPHangup dialplan app and manager action - chan_iax2.c: Ensure all IEs are displayed when dumping frame contents. - chan_dahdi: Warn if nonexistent cadence is requested. - stasis: Update the snapshot after setting the redirect - ari: Provide the caller ID RDNIS for the channels - main/utils: Implement ast_get_tid() for OpenBSD - res_rtp_asterisk.c: Fix runtime issue with LibreSSL - app_directory: Add ADSI support to Directory. - core_local: Fix local channel parsing with slashes. - Remove files that are no longer updated - app_voicemail: Add AMI event for mailbox PIN changes. - app_queue.c: Emit unpause reason with PauseQueueMember event. - bridge_simple: Suppress unchanged topology change requests - res_pjsip: Include cipher limit in config error message. - res_speech: allow speech to translate input channel - res_rtp_asterisk.c: Fix memory leak in ephemeral certificate creation. - res_pjsip_dtmf_info.c: Add 'INFO' to Allow header. - api.wiki.mustache: Fix indentation in generated markdown - pjsip_configuration.c: Disable DTLS renegotiation if WebRTC is enabled. - configs: Fix typo in pjsip.conf.sample. - res_pjsip_exten_state,res_pjsip_mwi: Allow unload on shutdown - res_pjsip: Expanding PJSIP endpoint ID and relevant resource length to 255 characters - .github: PRSubmitActions: Fix adding reviewers to PR - .github: New PR Submit workflows - .github: New PR Submit workflows - res_stasis: signal when new command is queued - ari/stasis: Indicate progress before playback on a bridge - func_curl.c: Ensure channel is locked when manipulating datastores. - .github: Fix job prereqs in PROpenedUpdated - .github: Block PR tests until approved - logger.h: Add ability to change the prefix on SCOPE_TRACE output - Add libjwt to third-party - res_pjsip: update qualify_timeout documentation with DNS note - chan_dahdi: Clarify scope of callgroup/pickupgroup. - func_json: Fix crashes for some types - res_speech_aeap: add aeap error handling - app_voicemail: Disable ADSI if unavailable. - codec_builtin: Use multiples of 20 for maximum_ms - lock.c: Separate DETECT_DEADLOCKS from DEBUG_THREADS - asterisk.c: Use the euid's home directory to read/write cli history - res_pjsip_transport_websocket: Prevent transport from being destroyed before message finishes. - cel: add publish user event helper - chan_console: Fix deadlock caused by unclean thread exit. - file.c: Add ability to search custom dir for sounds - chan_iax2: Improve authentication debugging. - res_rtp_asterisk: fix wrong counter management in ioqueue objects - make_buildopts_h, et. al. Allow adding all cflags to buildopts.h - func_periodic_hook: Add hangup step to avoid timeout - res_stasis_recording.c: Save recording state when unmuted. - res_speech_aeap: check for null format on response - func_periodic_hook: Don't truncate channel name - safe_asterisk: Change directory permissions to 755 - chan_rtp: Implement RTP glue for UnicastRTP channels - app_queue: periodic announcement configurable start time. - variables: Add additional variable dialplan functions. - Restore CHANGES and UPGRADE.txt to allow cherry-picks to work User Notes: ---------------------------------------- - ### app_dial: Add option "j" to preserve initial stream topology of caller The option "j" is now available for the Dial application which uses the initial stream topology of the caller to create the outgoing channels. - ### logger: Add channel-based filtering. The console log can now be filtered by channels or groups of channels, using the logger filter CLI commands. - ### chan_pjsip: Add PJSIPHangup dialplan app and manager action A new dialplan app PJSIPHangup and AMI action allows you to hang up an unanswered incoming PJSIP call with a specific SIP response code in the 400 -> 699 range. - ### app_voicemail: Add AMI event for mailbox PIN changes. The VoicemailPasswordChange event is now emitted whenever a mailbox password is updated, containing the mailbox information and the new password. Resolves: #398 - ### res_speech: allow speech to translate input channel res_speech now supports translation of an input channel to a format supported by the speech provider, provided a translation path is available between the source format and provider capabilites. - ### res_pjsip: Expanding PJSIP endpoint ID and relevant resource length to 255 characters With this update, the PJSIP realm lengths have been extended to support up to 255 characters. - ### res_stasis: signal when new command is queued Call setup times should be significantly improved when using ARI. - ### lock.c: Separate DETECT_DEADLOCKS from DEBUG_THREADS You no longer need to select DEBUG_THREADS to use DETECT_DEADLOCKS. This removes a significant amount of overhead if you just want to detect possible deadlocks vs needing full lock tracing. - ### file.c: Add ability to search custom dir for sounds A new option "sounds_search_custom_dir" has been added to asterisk.conf that allows asterisk to search AST_DATA_DIR/sounds/custom for sounds files before searching the standard AST_DATA_DIR/sounds/<lang> directory. - ### make_buildopts_h, et. al. Allow adding all cflags to buildopts.h The "Build Options" entry in the "core show settings" CLI command has been renamed to "ABI related Build Options" and a new entry named "All Build Options" has been added that shows both breaking and non-breaking options. - ### chan_rtp: Implement RTP glue for UnicastRTP channels The dial string option 'g' was added to the UnicastRTP channel which enables RTP glue and therefore native RTP bridges with those channels. - ### app_queue: periodic announcement configurable start time. Introduce a new queue configuration option called 'periodic-announce-startdelay' which will vary the normal (historic) behavior of starting the periodic announcement cycle at periodic-announce-frequency seconds after entering the queue to start the periodic announcement cycle at period-announce-startdelay seconds after joining the queue. The default behavior if this config option is not set remains unchanged. Signed-off-by: Jaco Kroon <jaco at uls.co.za> - ### variables: Add additional variable dialplan functions. Four new dialplan functions have been added. GLOBAL_DELETE and DELETE have been added which allows the deletion of global and channel variables. GLOBAL_EXISTS and VARIABLE_EXISTS have been added which checks whether a global or channel variable has been set. Upgrade Notes: ---------------------------------------- - ### app.c: Allow ampersands in playback lists to be escaped. Ampersands in URLs passed to the `Playback()`, `Background()`, `SpeechBackground()`, `Read()`, `Authenticate()`, or `Queue()` applications as filename arguments can now be escaped by single quoting the filename. Additionally, this is also possible when using the `CONFBRIDGE` dialplan function, or configuring various features in `confbridge.conf` and `queues.conf`. - ### pjsip_configuration.c: Disable DTLS renegotiation if WebRTC is enabled. The dtls_rekey will be disabled if webrtc support is requested on an endpoint. A warning will also be emitted. - ### res_pjsip: Expanding PJSIP endpoint ID and relevant resource length to 255 characters As part of this update, the maximum allowable length for PJSIP endpoints and relevant resources has been increased from 40 to 255 characters. To take advantage of this enhancement, it is recommended to run the necessary procedures (e.g., Alembic) to update your schemas. [asterisk-announce] asterisk release 18.20.2 The Asterisk Development Team would like to announce the release of asterisk-18.20.2. This release resolves issues reported by the community and would have not been possible without your participation. Thank You! Change Log for Release asterisk-18.20.2 ======================================== Summary: ---------------------------------------- - res_rtp_asterisk: Fix regression issues with DTLS client check [asterisk-announce] asterisk release 18.20.1 The Asterisk Development Team would like to announce security release Asterisk 18.20.1. The following security advisories were resolved in this release: - [Path traversal via AMI GetConfig allows access to outside files](https://github.com/asterisk/asterisk/s ecurity/advisories/GHSA-8857-hfmw-vg8f) - [Asterisk susceptible to Denial of Service via DTLS Hello packets during call initiation](https://github .com/asterisk/asterisk/security/advisories/GHSA-hxj9-xwr8-w8pq) - [PJSIP logging allows attacker to inject fake Asterisk log entries ](https://github.com/asterisk/asteris k/security/advisories/GHSA-5743-x3p5-3rg7) - [PJSIP_HEADER dialplan function can overwrite memory/cause crash when using 'update'](https://github.com /asterisk/asterisk/security/advisories/GHSA-98rc-4j27-74hh) Change Log for Release asterisk-18.20.1 ======================================== Summary: ---------------------------------------- - res_pjsip_header_funcs: Duplicate new header value, don't copy. - res_pjsip: disable raw bad packet logging - res_rtp_asterisk.c: Check DTLS packets against ICE candidate list - manager.c: Prevent path traversal with GetConfig. [asterisk-announce] asterisk release 18.20.0 The Asterisk Development Team would like to announce the release of asterisk-18.20.0. This release resolves issues reported by the community and would have not been possible without your participation. Thank You! Change Log for Release asterisk-18.20.0 ======================================== Summary: ---------------------------------------- - ari-stubs: Fix more local anchor references - ari-stubs: Fix more local anchor references - ari-stubs: Fix broken documentation anchors - res_pjsip_session: Send Session Interval too small response - .github: Update workflow-application-token-action to v2 - app_dial: Fix infinite loop when sending digits. - app_voicemail: Fix for loop declarations - alembic: Fix quoting of the 100rel column - pbx.c: Fix gcc 12 compiler warning. - app_audiosocket: Fixed timeout with -1 to avoid busy loop. - download_externals: Fix a few version related issues - main/refer.c: Fix double free in refer_data_destructor + potential leak - sig_analog: Add Called Subscriber Held capability. - app_macro: Fix locking around datastore access - Revert "app_stack: Print proper exit location for PBXless channels." - .github: Use generic releaser - install_prereq: Fix dependency install on aarch64. - res_pjsip.c: Set contact_user on incoming call local Contact header - extconfig: Allow explicit DB result set ordering to be disabled. - rest-api: Run make ari-stubs - res_pjsip_header_funcs: Make prefix argument optional. - pjproject_bundled: Increase PJSIP_MAX_MODULE to 38 - manager: Tolerate stasis messages with no channel snapshot. - core/ari/pjsip: Add refer mechanism - chan_dahdi: Allow autoreoriginating after hangup. - audiohook: Unlock channel in mute if no audiohooks present. - sig_analog: Allow three-way flash to time out to silence. - res_prometheus: Do not generate broken metrics - res_pjsip: Enable TLS v1.3 if present. - func_cut: Add example to documentation. - extensions.conf.sample: Remove reference to missing context. - func_export: Use correct function argument as variable name. - app_queue: Add support for applying caller priority change immediately. - .github: Fix cherry-pick reminder issues - chan_iax2.c: Avoid crash with IAX2 switch support. - res_geolocation: Ensure required 'location_info' is present. - Adds manager actions to allow move/remove/forward individual messages in a particular mailbox folder. The forward command can be used to copy a message within a mailbox or to another mailbox. Also adds a VoicemailBoxSummarry, required to retrieve message ID's. - app_voicemail: add CLI commands for message manipulation - res_rtp_asterisk: Move ast_rtp_rtcp_report_alloc using `rtp->themssrc_valid` into the scope of the rtp_i nstance lock. - .github: Minor tweak to Asterisk Releaser - .github: Suppress cherry-pick reminder for some situations - sig_analog: Allow immediate fake ring to be suppressed. User Notes: ---------------------------------------- - ### sig_analog: Add Called Subscriber Held capability. Called Subscriber Held is now supported for analog FXS channels, using the calledsubscriberheld option. This allows a station user to go on hook when receiving an incoming call and resume from another phone on the same line by going on hook, without disconnecting the call. - ### res_pjsip_header_funcs: Make prefix argument optional. The prefix argument to PJSIP_HEADERS is now optional. If not specified, all header names will be returned. - ### core/ari/pjsip: Add refer mechanism There is a new ARI endpoint `/endpoints/refer` for referring an endpoint to some URI or endpoint. - ### chan_dahdi: Allow autoreoriginating after hangup. The autoreoriginate setting now allows for kewlstart FXS channels to automatically reoriginate and provide dial tone to the user again after all calls on the line have cleared. This saves users from having to manually hang up and pick up the receiver again before making another call. - ### sig_analog: Allow three-way flash to time out to silence. The threewaysilenthold option now allows the three-way dial tone to time out to silence, rather than continuing forever. - ### res_pjsip: Enable TLS v1.3 if present. res_pjsip now allows TLS v1.3 to be enabled if supported by the underlying PJSIP library. The bundled version of PJSIP supports TLS v1.3. - ### app_queue: Add support for applying caller priority change immediately. The 'queue priority caller' CLI command and 'QueueChangePriorityCaller' AMI action now have an 'immediate' argument which allows the caller priority change to be reflected immediately, causing the position of a caller to move within the queue depending on the priorities of the other callers. - ### Adds manager actions to allow move/remove/forward individual messages in a particular mailbox folder. The forward command can be used to copy a message within a mailbox or to another mailbox. Also adds a Vo icemailBoxSummarry, required to retrieve message ID's. The following manager actions have been added VoicemailBoxSummary - Generate message list for a given mailbox VoicemailRemove - Remove a message from a mailbox folder VoicemailMove - Move a message from one folder to another within a mailbox VoicemailForward - Copy a message from one folder in one mailbox to another folder in another or the same mailbox. - ### app_voicemail: add CLI commands for message manipulation The following CLI commands have been added to app_voicemail voicemail show mailbox <mailbox> <context> Show contents of mailbox <mailbox>@<context> voicemail remove <mailbox> <context> <from_folder> <messageid> Remove message <messageid> from <from_folder> in mailbox <mailbox>@<context> voicemail move <mailbox> <context> <from_folder> <messageid> <to_folder> Move message <messageid> in mailbox <mailbox>&<context> from <from_folder> to <to_folder> voicemail forward <from_mailbox> <from_context> <from_folder> <messageid> <to_mailbox> <to_context> <to_ folder> Forward message <messageid> in mailbox <mailbox>@<context> <from_folder> to mailbox <mailbox>@<context> <to_folder> - ### sig_analog: Allow immediate fake ring to be suppressed. The immediatering option can now be set to no to suppress the fake audible ringback provided when immediate=yes on FXS channels. [asterisk-announce] Asterisk Release 18.19.0 The Asterisk Development Team would like to announce the release of Asterisk 18.19.0. This release resolves issues reported by the community and would have not been possible without your participation. Thank You! Change Log for Release 18.19.0 ======================================== Summary: ---------------------------------------- - app.h: Move declaration of ast_getdata_result before its first use - doc: Remove obsolete CHANGES-staging and UPGRADE-staging - .github: Updates for AsteriskReleaser - app_voicemail: fix imap compilation errors - res_musiconhold: avoid moh state access on unlocked chan - utils: add lock timestamps for DEBUG_THREADS - .github: Back out triggering PROpenedOrUpdated by label - .github: Move publish docs to new file CreateDocs.yml - rest-api: Updates for new documentation site - .github: Remove result check from PROpenUpdateGateTests - .github: Fix use of 'contains' - .github: Add recheck label test to additional jobs - .github: Fix recheck label typos - .github: Fix recheck label manipulation - .github: Allow PR submit checks to be re-run by label - app_voicemail_imap: Fix message count when IMAP server is unavailable - res_pjsip_rfc3326: Prefer Q.850 cause code over SIP. - res_pjsip_session: Added new function calls to avoid ABI issues. - app_queue: Add force_longest_waiting_caller option. - pjsip_transport_events.c: Use %zu printf specifier for size_t. - res_crypto.c: Gracefully handle potential key filename truncation. - configure: Remove obsolete and deprecated constructs. - res_fax_spandsp.c: Clean up a spaces/tabs issue - ast-db-manage: Synchronize revisions between comments and code. - test_statis_endpoints: Fix channel_messages test again - res_crypto.c: Avoid using the non-portable ALLPERMS macro. - tcptls: when disabling a server port, we should set the accept_fd to -1. - AMI: Add parking position parameter to Park action - test_stasis_endpoints.c: Make channel_messages more stable - build: Fix a few gcc 13 issues - .github: Rework for merge approval - ast-db-manage: Fix alembic branching error caused by #122. - app_followme: fix issue with enable_callee_prompt=no (#88) - sounds: Update download URL to use HTTPS. - configure: Makefile downloader enable follow redirects. - res_musiconhold: Add option to loop last file. - chan_dahdi: Fix Caller ID presentation for FXO ports. - AMI: Add CoreShowChannelMap action. - sig_analog: Add fuller Caller ID support. - res_stasis.c: Add new type 'sdp_label' for bridge creation. - app_queue: Preserve reason for realtime queues - .github: Fix issues with cherry-pick-reminder - indications: logging changes - .github Ignore error when adding reviewrs to PR - .github: Update field descriptions for AsteriskReleaser - callerid: Allow specifying timezone for date/time. - chan_pjsip: Allow topology/session refreshes in early media state - chan_dahdi: Fix broken hidecallerid setting. - .github: Change title of AsteriskReleaser job - asterisk.c: Fix option warning for remote console. - .github: Don't add cherry-pick reminder if it's already present - .github: Fix quoting in PROpenedOrUpdated - .github: Add cherry-pick reminder to new PRs - configure: fix test code to match gethostbyname_r prototype. - res_pjsip_pubsub.c: Use pjsip version for pending NOTIFY check. (#76) - res_sorcery_memory_cache.c: Fix memory leak - xml.c: Process XML Inclusions recursively. - .github: Tweak improvement issue type language. - .github: Tweak new feature language, and move feature requests elsewhere. - .github: Fix staleness check to only run on certain labels. User Notes: ---------------------------------------- - ### AMI: Add parking position parameter to Park action New ParkingSpace parameter has been added to AMI action Park. - ### res_musiconhold: Add option to loop last file. The loop_last option in musiconhold.conf now allows the last file in the directory to be looped once reached. - ### AMI: Add CoreShowChannelMap action. New AMI action CoreShowChannelMap has been added. - ### sig_analog: Add fuller Caller ID support. Additional Caller ID properties are now supported on incoming calls to FXS stations, namely the redirecting reason and call qualifier. - ### res_stasis.c: Add new type 'sdp_label' for bridge creation. When creating a bridge using the ARI the 'type' argument now accepts a new value 'sdp_label' which will configure the bridge to add labels for each stream in the SDP with the corresponding channel id. - ### app_queue: Preserve reason for realtime queues Make paused reason in realtime queues persist an Asterisk restart. This was fixed for non-realtime queues in ASTERISK_25732. Upgrade Notes: ---------------------------------------- - ### app_queue: Preserve reason for realtime queues Add a new column to the queue_member table: reason_paused VARCHAR(80) so the reason can be preserved. Closed Issues: ---------------------------------------- - #45: [bug]: Non-bundled PJSIP check for evsub pending NOTIFY check is insufficient/ineffective - #55: [bug]: res_sorcery_memory_cache: Memory leak when calling sorcery_memory_cache_open - #64: [bug]: app_voicemail_imap wrong behavior when losing IMAP connection - #65: [bug]: heap overflow by default at startup - #66: [improvement]: Fix preserve reason of pause when Asterisk is restared for realtime queues - #73: [new-feature]: pjsip: Allow topology/session refreshes in early media state - #87: [bug]: app_followme: Setting enable_callee_prompt=no breaks timeout - #89: [improvement]: indications: logging changes - #91: [improvement]: Add parameter on ARI bridge create to allow it to send SDP labels - #94: [new-feature]: sig_analog: Add full Caller ID support for incoming calls - #98: [new-feature]: callerid: Allow timezone to be specified at runtime - #100: [bug]: sig_analog: hidecallerid setting is broken - #102: [bug]: Strange warning - 'T' option is not compatible with remote console mode and has no effect . - #104: [improvement]: Add AMI action to get a list of connected channels - #108: [new-feature]: fair handling of calls in multi-queue scenarios - #110: [improvement]: utils - add lock timing information with DEBUG_THREADS - #116: [bug]: SIP Reason: "Call completed elsewhere" no longer propagating - #120: [bug]: chan_dahdi: Fix broken presentation for FXO caller ID - #122: [new-feature]: res_musiconhold: Add looplast option - #133: [bug]: unlock channel after moh state access - #136: [bug]: Makefile downloader does not follow redirects. - #145: [bug]: ABI issue with pjproject and pjsip_inv_session - #155: [bug]: GCC 13 is catching a few new trivial issues - #158: [bug]: test_stasis_endpoints.c: Unit test channel_messages is unstable - #174: [bug]: app_voicemail imap compile errors - #200: [bug]: Regression: In app.h an enum is used before its declaration. [asterisk-announce] Asterisk Release 18.18.1 The Asterisk Development Team would like to announce security release Asterisk 18.18.1. The following security advisories were resolved in this release: https://github.com/asterisk/asterisk/security/advisories/GHSA-4xjp-22g4-9fxm Change Log for Release 18.18.1 ======================================== Summary: ---------------------------------------- - apply_patches: Use globbing instead of file/sort. - apply_patches: Sort patch list before applying - pjsip: Upgrade bundled version to pjproject 2.13.1 User Notes: ---------------------------------------- - ### res_http_media_cache: Introduce options and customize The res_http_media_cache module now attempts to load configuration from the res_http_media_cache.conf file. The following options were added: * timeout_secs * user_agent * follow_location * max_redirects * protocols * redirect_protocols * dns_cache_timeout_secs - ### format_sln: add .slin as supported file extension format_sln now recognizes '.slin' as a valid file extension in addition to the existing '.sln' and '.raw'. - ### bridge_builtin_features: add beep via touch variable Add optional touch variable : TOUCH_MIXMONITOR_BEEP(interval) Setting TOUCH_MIXMONITOR_BEEP/TOUCH_MONITOR_BEEP to a valid interval in seconds will result in a periodic beep being played to the monitored channel upon MixMontior/Monitor feature start. If an interval less than 5 seconds is specified, the interval will default to 5 seconds. If the value is set to an invalid interval, the default of 15 seconds will be used. - ### app_senddtmf: Add SendFlash AMI action. The SendFlash AMI action now allows sending a hook flash event on a channel. - ### res_mixmonitor: MixMonitorMute by MixMonitor ID It is now possible to specify the MixMonitorID when calling the manager action: MixMonitorMute. This will allow an individual MixMonitor instance to be muted via ID. The MixMonitorID can be stored as a channel variable using the 'i' MixMonitor option and is returned upon creation if this option is used. As part of this change, if no MixMonitorID is specified in the manager action MixMonitorMute, Asterisk will set the mute flag on all MixMonitor audiohooks on the channel. Previous behavior would set the flag on the first MixMonitor audiohook found. - ### pbx_dundi: Add PJSIP support. DUNDi now supports chan_pjsip. Outgoing calls using PJSIP require the pjsip_outgoing_endpoint option to be set in dundi.conf. - ### test.c: Fix counting of tests and add 2 new tests The "tests" attribute of the "testsuite" element in the output XML now reflects only the tests actually requested to be executed instead of all the tests registered. The "failures" attribute was added to the "testsuite" element. Also added two new unit tests that just pass and fail to be used for testing CI itself. - ### cli: increase channel column width This change increases the display width on 'core show channels' amd 'core show channels verbose' For 'core show channels', the Channel name field is increased to 64 characters and the Location name field is increased to 32 characters. For 'core show channels verbose', the Channel name field is increased to 80 characters, the Context is increased to 24 characters and the Extension is increased to 24 characters. Upgrade Notes: ---------------------------------------- Closed Issues: ---------------------------------------- - #193: [bug]: third-party/apply-patches doesn't sort the patch file list before applying [asterisk-announce] Asterisk Release 18.18.0 The Asterisk Development Team would like to announce the release of Asterisk 18.18.0. This release resolves issues reported by the community and would have not been possible without your participation. Thank You! Change Log for Release 18.18.0 ======================================== Summary: ---------------------------------------- - Set up new ChangeLogs directory - .github: Add AsteriskReleaser - chan_pjsip: also return all codecs on empty re-INVITE for late offers - cel: add local optimization begin event - core: Cleanup gerrit and JIRA references. (#40) - .github: Fix CherryPickTest to only run when it should - .github: Fix reference to CHERRY_PICK_TESTING_IN_PROGRESS - .github: Remove separate set labels step from new PR - .github: Refactor CP progress and add new PR test progress - res_pjsip: mediasec: Add Security-Client headers after 401 - .github: Add cherry-pick test progress labels - LICENSE: Update link to trademark policy. - chan_dahdi: Add dialmode option for FXS lines. (#36) - .github: Update issue templates - .github: Remove unnecessary parameter in CherryPickTest - Initial GitHub PRs - Initial GitHub Issue Templates - pbx_dundi: Fix PJSIP endpoint configuration check. - Revert "app_queue: periodic announcement configurable start time." - pbx_dundi: Add PJSIP support. - res_pjsip_stir_shaken: Fix JSON field ordering and disallowed TN characters. - install_prereq: Add Linux Mint support. - chan_pjsip: fix music on hold continues after INVITE with replaces - voicemail.conf: Fix incorrect comment about #include. - app_queue: Fix minor xmldoc duplication and vagueness. - test.c: Fix counting of tests and add 2 new tests - loader.c: Minor module key check simplification. - ael: Regenerate lexers and parsers. - res_calendar: output busy state as part of show calendar. - bridge_builtin_features: add beep via touch variable - res_mixmonitor: MixMonitorMute by MixMonitor ID - format_sln: add .slin as supported file extension - app_queue: periodic announcement configurable start time. - func_json: Fix JSON parsing issues. - app_dial: Fix DTMF not relayed to caller on unanswered calls. - make_version: Strip svn stuff and suppress ref HEAD errors - configure: fix detection of re-entrant resolver functions - cli: increase channel column width - res_agi: RECORD FILE plays 2 beeps. - app_senddtmf: Add SendFlash AMI action. - contrib: rc.archlinux.asterisk uses invalid redirect. - main/iostream.c: fix build with libressl - res_http_media_cache: Introduce options and customize User Notes: ---------------------------------------- - ### cel: add local optimization begin event The new AST_CEL_LOCAL_OPTIMIZE_BEGIN can be used by itself or in conert with the existing AST_CEL_LOCAL_OPTIMIZE to book-end local channel optimizaion. - ### chan_dahdi: Add dialmode option for FXS lines. (#36) A "dialmode" option has been added which allows specifying, on a per-channel basis, what methods of subscriber dialing (pulse and/or tone) are permitted. Additionally, this can be changed on a channel at any point during a call using the CHANNEL function. - ### pbx_dundi: Add PJSIP support. DUNDi now supports chan_pjsip. Outgoing calls using PJSIP require the pjsip_outgoing_endpoint option to be set in dundi.conf. - ### cli: increase channel column width This change increases the display width on 'core show channels' amd 'core show channels verbose' For 'core show channels', the Channel name field is increased to 64 characters and the Location name field is increased to 32 characters. For 'core show channels verbose', the Channel name field is increased to 80 characters, the Context is increased to 24 characters and the Extension is increased to 24 characters. - ### app_senddtmf: Add SendFlash AMI action. The SendFlash AMI action now allows sending a hook flash event on a channel. - ### res_http_media_cache: Introduce options and customize The res_http_media_cache module now attempts to load configuration from the res_http_media_cache.conf file. The following options were added: * timeout_secs * user_agent * follow_location * max_redirects * protocols * redirect_protocols * dns_cache_timeout_secs - ### test.c: Fix counting of tests and add 2 new tests The "tests" attribute of the "testsuite" element in the output XML now reflects only the tests actually requested to be executed instead of all the tests registered. The "failures" attribute was added to the "testsuite" element. Also added two new unit tests that just pass and fail to be used for testing CI itself. - ### res_mixmonitor: MixMonitorMute by MixMonitor ID It is now possible to specify the MixMonitorID when calling the manager action: MixMonitorMute. This will allow an individual MixMonitor instance to be muted via ID. The MixMonitorID can be stored as a channel variable using the 'i' MixMonitor option and is returned upon creation if this option is used. As part of this change, if no MixMonitorID is specified in the manager action MixMonitorMute, Asterisk will set the mute flag on all MixMonitor audiohooks on the channel. Previous behavior would set the flag on the first MixMonitor audiohook found. - ### bridge_builtin_features: add beep via touch variable Add optional touch variable : TOUCH_MIXMONITOR_BEEP(interval) Setting TOUCH_MIXMONITOR_BEEP/TOUCH_MONITOR_BEEP to a valid interval in seconds will result in a periodic beep being played to the monitored channel upon MixMontior/Monitor feature start. If an interval less than 5 seconds is specified, the interval will default to 5 seconds. If the value is set to an invalid interval, the default of 15 seconds will be used. - ### format_sln: add .slin as supported file extension format_sln now recognizes '.slin' as a valid file extension in addition to the existing '.sln' and '.raw'. Upgrade Notes: ---------------------------------------- - ### cel: add local optimization begin event The existing AST_CEL_LOCAL_OPTIMIZE can continue to be used as-is and the AST_CEL_LOCAL_OPTIMIZE_BEGIN event can be ignored if desired. Closed Issues: ---------------------------------------- - #35: [New Feature]: chan_dahdi: Allow disabling pulse or tone dialing - #39: [Bug]: Remove .gitreview from repository. - #43: [Bug]: Link to trademark policy is no longer correct - #48: [bug]: res_pjsip: Mediasec requires different headers on 401 response - #52: [improvement]: Add local optimization begin cel event ### For more details, see: https://downloads.asterisk.org/pub/telephony/asterisk/releases/ChangeLog-18.18.0.md [asterisk-announce] Asterisk 18.17.1 Now Available The Asterisk Development Team would like to announce the release of Asterisk 18.17.1. The release of Asterisk 18.17.1 resolves several issues reported by the community and would have not been possible without your participation. Thank you! The following issues are resolved in this release: Bugs fixed in this release: ----------------------------------- * ASTERISK-30469 - res_pjsip_pubsub: Regression for subscription shutdowns (Reported by N A) * ASTERISK-30472 - pbx_ael: Literal usage for variables broken (Reported by isrl) For a full list of changes in this release, please see the ChangeLog: https://downloads.asterisk.org/pub/telephony/asterisk/ChangeLog-18.17.1 Thank you for your continued support of Asterisk! [asterisk-announce] Asterisk 18.17.0 Now Available The Asterisk Development Team would like to announce the release of Asterisk 18.17.0. The release of Asterisk 18.17.0 resolves several issues reported by the community and would have not been possible without your participation. Thank you! The following issues are resolved in this release: New Features made in this release: ----------------------------------- * ASTERISK-29810 - app_signal: Add channel signaling applications (Reported by N A) * ASTERISK-30262 - res_pjsip_session: Allow a context to be specified for overlap dialing (Reported by N A) * ASTERISK-30319 - Add BYE Reason support for SIP (Reported by Igor Goncharovsky) * ASTERISK-30180 - app_broadcast: Add a channel audio multicasting application (Reported by N A) Bugs fixed in this release: ----------------------------------- * ASTERISK-27830 - Asterisk crashes on Invalid UTF-8 string (Reported by AvayaXAsterisk) * ASTERISK-30354 - chan_iax2: Lack of formats prior to receiving voice frames causes jitterbuffer to stall (Reported by N A) * ASTERISK-30162 - when chan_iax is used to relay calls, no ringing indication is played (Reported by Jaco Kroon) * ASTERISK-30424 - pjproject_bundled: cross-compilation broken when ssl autodetected (Reported by Nick French) * ASTERISK-30388 - res_phoneprov: Stale SERVER variable when multi-homed (Reported by cmaj) * ASTERISK-30419 - pjsip: Crash when sending NOTIFY in PJSIP 2.13 (Reported by Ross Beer) * ASTERISK-30417 - Copy/Paste error in UnpauseQueueMember (Reported by Sean Bright) * ASTERISK-30406 - pbx_ael: Global variables are not expanded. (Reported by Sean Bright) * ASTERISK-29604 - ari: Segfault with lots of calls (Reported by Danila Evgrafov) * ASTERISK-30391 - res_rtp_asterisk: Issue with transcoding g722 after MES changes (Reported by George Joseph) * ASTERISK-30345 - loader.c: Modules that decline to load cannot be reloaded (Reported by N A) * ASTERISK-30379 - http: fix NULL pointer dereference while enable_status on TLS-only (Reported by Boris P. Korzun) * ASTERISK-30375 - res_http_media_cache: Crash when URL has no path component. (Reported by Sean Bright) * ASTERISK-30351 - manager: Originate variables are not added when setvar used in manager.conf (Reported by Sebastian Gutierrez) * ASTERISK-30369 - res_pjsip: Websockets from same IP shut down when they shouldn't be (Reported by Joshua C. Colp) * ASTERISK-30367 - pbx: Fix outdated channel snapshots with pbx_exec (Reported by N A) * ASTERISK-28767 - chan_pjsip: Caller ID not used when checking for extension, callerid supplement executed too late (Reported by Oleg) * ASTERISK-30350 - res_pjsip_sdp_rtp: rtp_timeout_hold is not used when moh_passthrough has call on hold (Reported by Benjamin Keith Ford) * ASTERISK-30240 - app voicemail odbc build error with gcc 11.1 (Reported by Michael Bradeen) * ASTERISK-30100 - res_pjsip: Path is ignored on INVITE to endpoint (Reported by Yury Kirsanov) * ASTERISK-30198 - Error `Too many open files` occurs after about ~8000 calls when using mixmonitor (Reported by Julien Alie) Improvements made in this release: ----------------------------------- * ASTERISK-30411 - app_read: add option to include terminating digit on empty, terminated strings (Reported by Michael Bradeen) * ASTERISK-30405 - app_directory: Add 's' option to skip channel call (Reported by Michael Bradeen) * ASTERISK-30422 - app_senddtmf: add the option for senddtmf to answer (Reported by Michael Bradeen) * ASTERISK-30325 - Upgrade Asterisk to bundled pjproject 2.13 (Reported by Stanislav Abramenkov) * ASTERISK-30404 - app_directory: Add reading directory configuration from custom file (Reported by Michael Bradeen) * ASTERISK-29913 - func_json: Adds multi-level and array parsing to JSON_DECODE (Reported by N A) * ASTERISK-30353 - func_frame_trace: Print text for text frames (Reported by N A) * ASTERISK-30361 - json.h: Add missing ast_json_object_real_get (Reported by N A) * ASTERISK-30280 - Create capability to assign a Media Experience Score to RTP streams (Reported by George Joseph) * ASTERISK-30332 - func_callerid: Warn if invalid redirecting reason provided (Reported by N A) For a full list of changes in this release, please see the ChangeLog: https://downloads.asterisk.org/pub/telephony/asterisk/ChangeLog-18.17.0 Thank you for your continued support of Asterisk! [asterisk-announce] Asterisk 16.29.1, 18.15.1, 19.7.1, 20.0.1 Now Available The Asterisk Development Team would like to announce the release of Asterisk 16.29.1, 18.15.1, 19.7.1, and 20.0.1. The release of Asterisk 16.29.1, 18.15.1, 19.7.1, and 20.0.1 resolves issues reported by the community and would have not been possible without your participation.Thank you! The following issue is resolved in this release: Bugs fixed in this release: ----------------------- [ASTERISK-30103 <https://issues.asterisk.org/jira/browse/ASTERISK-30103>] chan_ooh323 vulnerability in calling/called party IE (Reported By: Michael Bradeen) [ASTERISK-30176 <https://issues.asterisk.org/jira/browse/ASTERISK-30176>] GetConfig can read files outside of Asterisk (Reported By: shawty) [ASTERISK-30244 <https://issues.asterisk.org/jira/browse/ASTERISK-30244>] Occasional crash when TCP/TLS connection terminated and subscription persistence is removed (Reported By: nappsoft) [ASTERISK-30338 <https://issues.asterisk.org/jira/browse/ASTERISK-30338>] Backport 2.13 security fixes from pjproject [asterisk-announce] Asterisk 18.15.0 Now Available The Asterisk Development Team would like to announce the release of Asterisk 18.15.0. The release of Asterisk 18.15.0 resolves several issues reported by the community and would have not been possible without your participation. Thank you! The following issues are resolved in this release: New Features made in this release: ----------------------------------- * ASTERISK-30037 - Add test support to calling external processes (Reported by Philip Prindeville) * ASTERISK-30161 - locks: add AMI event for deadlock (Reported by N A) * ASTERISK-30211 - app_confbridge: Add end_marked_any option (Reported by N A) * ASTERISK-30186 - res_pjsip: Add support for reloading TLS certificate and key information (Reported by Joshua C. Colp) * ASTERISK-29899 - features: Add advanced transfer initiation options (Reported by N A) Bugs fixed in this release: ----------------------------------- * ASTERISK-30235 - res_crypto and tests: Memory issues and and uninitialized variable error (Reported by George Joseph) * ASTERISK-30234 - res_geolocation: ...may be used uninitialized error in geoloc_config.c (Reported by George Joseph) * ASTERISK-30215 - Inbound SIP INVITE with Geo Location causing a Segmentation Fault (Reported by Dan Cropp) * ASTERISK-30135 - [res_musiconhold] Allows the moh only for the answered call (Reported by sungtae kim) * ASTERISK-26894 - pjsip should support tel uri scheme (Reported by Gergely D½½ms½½di) * ASTERISK-30210 - func_frame_trace: Channel masquerade triggers assertion (Reported by N A) * ASTERISK-30190 - res_geolocation: GEOLOC_PROFILE isn't returning correct values on incoming channel (Reported by George Joseph) * ASTERISK-29185 - chan_pjsip: Endpoint: allow = all is broken. (Reported by Alexander Traud) * ASTERISK-30192 - res_tonedetect: fix typo for frametype (Reported by N A) * ASTERISK-29453 - alembic: incoming_call_offer_pref and outgoing_call_offer_pref missing in "ps_endpoints" table (Reported by Daniel Th½½men) * ASTERISK-26826 - testsuite: Add support for Python 3 (Reported by Joshua C. Colp) * ASTERISK-30167 - res_geolocation: Refactor for issues found by users (Reported by George Joseph) * ASTERISK-28422 - Memory Leak in Confbridge menu (Reported by Ted G) * ASTERISK-29917 - ami: FilterList action doesn't exist (Reported by N A) * ASTERISK-30018 - app_meetme: MeetmeList AMI event not documented (Reported by Michael Cargile) * ASTERISK-30020 - ConfbridgeListRooms Event Not Documented (Reported by Michael Cargile) * ASTERISK-30151 - Documentation doesn't include info about "field", a 3rd required parameter. (Reported by Chris Young) Improvements made in this release: ----------------------------------- * ASTERISK-30241 - res_pjsip_gelocation: Downgrade some NOTICE scope trace debugs to DEBUG level (Reported by N A) * ASTERISK-30178 - extend user_eq_phone behavior to local uri's (Reported by Michael Bradeen) * ASTERISK-30046 - Reimplement res/res_crypto.c internals with EVP_PKEY interface to Openssl API's (Reported by Philip Prindeville) * ASTERISK-30045 - Add test coverage to res/res_crypto.c functionality (Reported by Philip Prindeville) * ASTERISK-30185 - res_geolocation: Allow location parameters to be specified in profiles (Reported by George Joseph) * ASTERISK-30177 - res_geolocation: Add option to suppress empty elements (Reported by George Joseph) * ASTERISK-30182 - res_geolocation: Add built-in profiles to use in fully dynamic configurations (Reported by George Joseph) * ASTERISK-29906 - [patch] update RLS to reflect the changes to the lists (Reported by Alexei Gradinari) * ASTERISK-30163 - general: fix minor formatting issues (Reported by N A) * ASTERISK-30164 - chan_iax2: Add missing option documentation (Reported by N A) * ASTERISK-30153 - logger: Improve log levels (Reported by N A) * ASTERISK-30160 - cdr.conf: Remove obsolete app_mysql reference (Reported by N A) * ASTERISK-30159 - general: Remove obsolete SVN references (Reported by N A) [asterisk-announce] Asterisk 18.14.0 Now Available The Asterisk Development Team would like to announce the release of Asterisk 18.14.0. The release of Asterisk 18.14.0 resolves several issues reported by the community and would have not been possible without your participation. Thank you! The following issues are resolved in this release: Improvements made in this release: ----------------------------------- * ASTERISK-30128 - Create PJSIP interface module for Geolocation (Reported by George Joseph) * ASTERISK-30127 - Create core Geolocation capability for Asterisk (Reported by George Joseph) * ASTERISK-30089 - general: fix typos (Reported by N A) * ASTERISK-30050 - Upgrade Asterisk to bundled pjproject 2.12.1 (Reported by Stanislav Abramenkov) Bugs fixed in this release: ----------------------------------- * ASTERISK-30167 - res_geolocation: Refactor for issues found by users (Reported by George Joseph) * ASTERISK-29966 - pbx_variables: ast_str_strlen can be wrong (Reported by N A) * ASTERISK-29905 - OSX: bininstall launchd issue on cross-platfrom build (Reported by Sergey V. Lobanov) * ASTERISK-30137 - manager: Global disabled event filtered is incomplete (Reported by N A) * ASTERISK-30109 - res_pjsip: no contact-status AMI event on register of prune-on-boot contact that uses the same URI as before Asterisk restart (Reported by Michael Neuhauser) * ASTERISK-29991 - chan_dahdi, callerid: Caller ID does not honor presentation (Reported by N A) * ASTERISK-30126 - Spelling mistake in configs/samples/queues.conf.sample (Reported by Sam Banks) * ASTERISK-30029 - build: Git security vulnerability fix is sad with our accessing git as root during "make install" (Reported by Joshua C. Colp) * ASTERISK-29907 - res_pjsip, app_confbridge: Video call through ConfBridge with normal endpoints causes infinite loop/crash (Reported by N A) * ASTERISK-30138 - Compile failure in res_geolocation/geoloc_eprofile.c when optimization is enabled (Reported by George Joseph) * ASTERISK-30096 - cel_odbc: Column type 9 (field 'cdr:cel:eventtime') is unsupported at this time (Reported by Morvai Szabolcs) * ASTERISK-30083 - chan_iax2: Optional dependency on openssl/res_crypto is now mandatory (Reported by Dmitry Melekhov) * ASTERISK-30099 - test_aeap_transport: transport_connect_fail sporadically causes failure (Reported by Kevin Harwell) * ASTERISK-30123 - features: Update automixmon documentation to reflect reality (Reported by Trevor Peirce) * ASTERISK-30117 - pbx_lua: Remove compiler warnings (Reported by Boris P. Korzun) * ASTERISK-30101 - res_prometheus: Optional load res_pjsip_outbound_registration.so (Reported by Boris P. Korzun) * ASTERISK-29989 - app_dial, chan_dahdi: DIALSTATUS is inconsistent for busy (Reported by N A) * ASTERISK-30001 - db: Removing nonexistent entries shows "Database entry removed" (Reported by N A) * ASTERISK-30115 - app_dial: Allow hook flashes to propogate on outbound dials (Reported by N A) * ASTERISK-30106 - res_calendar_icalendar: Microsoft online ICS calendars no longer work (Reported by N A) * ASTERISK-29822 - cli: Typing \? freezes the CLI permanently with remote console (Reported by N A) * ASTERISK-30072 - res_pjsip: allow TLS verification of wildcard cert-bearing servers (Reported by Kevin Harwell) * ASTERISK-30075 - say: Abort if channel hangs up during playback (Reported by N A) New Features made in this release: ----------------------------------- * ASTERISK-30136 - db: Add AMI action to retrieve all keys beginning with a prefix (Reported by N A) * ASTERISK-30000 - chan_dahdi: Add POLARITY function (Reported by N A) * ASTERISK-30062 - cli: Add CLI command to execute a dialplan app (Reported by N A) * ASTERISK-29999 - pjsip: Get information from 200 OK INVITE reply headers (Reported by Jos½½ Lopes) * ASTERISK-30061 - pbx: Add pbx helper application (Reported by N A) [asterisk-announce] Asterisk 18.13.0 Now Available The Asterisk Development Team would like to announce the release of Asterisk 18.13.0. The release of Asterisk 18.13.0 resolves several issues reported by the community and would have not been possible without your participation. Thank you! The following issues are resolved in this release: Improvements made in this release: ----------------------------------- * ASTERISK-29906 - [patch] update RLS to reflect the changes to the lists (Reported by Alexei Gradinari) * ASTERISK-29891 - [patch] provide a display name for RLS subscriptions (Reported by Alexei Gradinari) * ASTERISK-30090 - xmldocs: Use example tags for examples (Reported by N A) * ASTERISK-30086 - res_parking: Warn when invalid parking space requested (Reported by N A) * ASTERISK-30058 - Evaluate dialplan functions and variables in agi exec (Reported by Shloime Rosenblum) * ASTERISK-30027 - ari: expose channel driver's unique id (i.e. Call-ID for chan_sip/chan_pjsip) in ARI channel resource (Reported by Moritz Fain) * ASTERISK-29845 - res_pjsip_outbound_registration: Show time remaining until registration lapses (Reported by N A) Bugs fixed in this release: ----------------------------------- * ASTERISK-30097 - console: Recent documentation changes for connecting to remote console are inconsistent (Reported by Matthias Hensler) * ASTERISK-30043 - Wrong party is disconnected when hook-flashing on 3-way bridge (Reported by Josh Alberts) * ASTERISK-29603 - res_pjsip: UPDATE/re-INVITE not sent when "timers=always" is specified in pjsip.conf (Reported by Ray Crumrine) * ASTERISK-30092 - DateTime application: wrong inflection for one o'clock in German (Reported by Christof Efkemann) * ASTERISK-30064 - pbx: iax2 switch causes crash due to deadlock and assertion (Reported by N A) * ASTERISK-29981 - res_calendar: Asterisk crashes when starting, and will not run (Reported by N A) * ASTERISK-30039 - cli: Targeted debug on startup deadlocks and creates unstable system (Reported by N A) * ASTERISK-30051 - res_pjsip: No video after un-hold with moh_passthrough=yes (Reported by Maximilian Fridrich) * ASTERISK-24601 - [patch]Missing RFC4235 tags and attributes in PJSIP NOTIFY event: dialog XML body (Reported by Marco Paland) * ASTERISK-30059 - menuselect: libxml include fails under Gentoo (Reported by waltermoeller) * ASTERISK-30060 - loader: format warnings in dev mode (Reported by N A) * ASTERISK-30065 - pjsip: Open Websocket connection is not reused for outgoing requests (Reported by LA) * ASTERISK-30042 - res_pjsip_transport_websocket: Registration over websocket returns a rewritten contact (Reported by Thomas Guebels) * ASTERISK-29993 - chan_dahdi: Operator control option borks both lines involved on callee disconnect (Reported by N A) * ASTERISK-30044 - GCC 12 issues (Reported by George Joseph) New Features made in this release: ----------------------------------- * ASTERISK-30063 - app_voicemail: Add option to prevent deletion of messages (Reported by N A) * ASTERISK-29965 - res_pjsip_outbound_registration: Make max registration delay configurable (Reported by N A) * ASTERISK-30087 - res_parking: Add music on hold override option (Reported by N A) * ASTERISK-30036 - app_confbridge: Add CONFBRIDGE_CHANNELS function (Reported by N A) Thank you for your continued support of Asterisk! [asterisk-announce] Asterisk 18.12.1 Now Available The Asterisk Development Team would like to announce the release of Asterisk 18.12.1. The release of Asterisk 18.12.1 resolves an issue reported by the community and would have not been possible without your participation. Thank you! The following issue is resolved in this release: Bugs fixed in this release: ----------------------------------- * ASTERISK-30065 - pjsip: Open Websocket connection is not reused for outgoing requests (Reported by LA) [asterisk-announce] Asterisk 18.12.0 Now Available The Asterisk Development Team would like to announce the release of Asterisk 18.12.0. The release of Asterisk 18.12.0 resolves several issues reported by the community and would have not been possible without your participation. Thank you! The following issues are resolved in this release: Security bugs fixed in this release: ----------------------------------- * ASTERISK-29476 - res_stir_shaken: Blind SSRF vulnerabilities (Reported by Clint Ruoho) * ASTERISK-29838 - ${SQL_ESC()} not correctly escaping a terminating \ (Reported by Leandro Dardini) * ASTERISK-29872 - res_stir_shaken: Resource exhaustion with large files (Reported by Benjamin Keith Ford) New Features made in this release: ----------------------------------- * ASTERISK-29931 - Option to allow a user to not hear the join sound on enter but everyone else can (Reported by Michael Cargile) * ASTERISK-29968 - func_db: Add a function to return cardinality of keys at prefix (Reported by N A) * ASTERISK-29486 - Hint-like extension value lookup function without device state (Reported by N A) * ASTERISK-29941 - chan_pjsip: Add ability to send flash events (Reported by N A) * ASTERISK-29820 - cli: Add command to evaluate a function (Reported by N A) * ASTERISK-29876 - app_queue: Add music on hold option (Reported by N A) Bugs fixed in this release: ----------------------------------- * ASTERISK-29655 - res_pjsip_session: No video to caller if no camera available (Reported by Michael Auracher) * ASTERISK-29638 - res_pjsip_session: No video after early media (Reported by Michael Auracher) * ASTERISK-28518 - chan_dahdi: Caller ID FSK Erroneously Sent when Picking Up Dahdi Call On Hold (Reported by Josh Alberts) * ASTERISK-29990 - chan_dahdi: adding ring cadences is not idempotent on dahdi restart (Reported by N A) * ASTERISK-30007 - chan_iax2: Prevent crashes due to attempted encryption with missing secrets (Reported by N A) * ASTERISK-29728 - menuselect: Disabled by default modules that are enabled are always recompiled (Reported by N A) * ASTERISK-30002 - app_meetme: Don't erroneously set global variables when channel is NULL (Reported by N A) * ASTERISK-29994 - chan_dahdi: Round robin array size is too small for max number of groups (Reported by N A) * ASTERISK-22246 - Asterisk's "T" flag is ignored when used with "r" or "R" flags. (documentation bug) (Reported by Rusty Newton) * ASTERISK-26582 - Asterisk seems to ignore the "n" parameter for "disable console colorization" (Reported by Sebastian Gutierrez) * ASTERISK-29843 - Session timers get removed on UPDATE (Reported by Mark Petersen) * ASTERISK-29943 - file.c: seeking to negative file offset is not prevented (Reported by N A) * ASTERISK-29955 - chan_sip: SIP route header is missing on UPDATE (Reported by Mark Petersen) * ASTERISK-29842 - Do not change 180 Ringing to 183 Progress even if early_media already enabled (Reported by Mark Petersen) * ASTERISK-29948 - iostream: Infinite TCP timeout writing data (Reported by N A) * ASTERISK-29253 - Incorrect bridging on transfer (Reported by Yury Kirsanov) * ASTERISK-30006 - res_pjsip: UDP transport does not work when async_operations is greater than 1 (Reported by Ross Beer) * ASTERISK-30024 - Failed to sign STIR/SHAKEN payload with functionality not enabled (Reported by Claude Diderich) * ASTERISK-30021 - ast_variable_list_replace_variable uses variable with new keyword (Reported by Jasper Hafkenscheid) * ASTERISK-30023 - cdr_adaptive_odbc: does not support DATETIME database columns (Reported by Gregory Massel) * ASTERISK-30015 - pjsip / WebRTC: Chrome creating large number of SDP attributes (Reported by Josh Hogan) * ASTERISK-26689 - res_pjsip_sdp_rtp: 183 Session in Progress. Disconnecting channel for lack of RTP activity (Reported by Dmitriy Serov) * ASTERISK-29929 - res_pjsip_sdp_rtp: Disconnecting channel for lack of RTP activity in one way sessions (Reported by Boris P. Korzun) * ASTERISK-29411 - Crash in pjsip_msg_find_hdr_by_name (Reported by LA) * ASTERISK-29535 - Segmentation fault in libasteriskpj.so.2 (Reported by Daniel Bonazzi) * ASTERISK-26719 - pbx: Only up to 127 includes in a dialplan context (AST_PBX_MAX_STACK - 1) (Reported by Tzafrir Cohen) * ASTERISK-29986 - build: Asterisk 18.11.0 doesn't compile when wget isn't available (Reported by Stefan Ruijsenaars) * ASTERISK-29988 - REGRESSION: The build process is requiring xmllint or xmlstarlet ro be installed when it shouldn't (Reported by George Joseph) * ASTERISK-29895 - chan_iax2: Fix misaligned spacing in iax2 show netstats printout (Reported by N A) * ASTERISK-29939 - agi: Fix xmldoc bug with set music (Reported by N A) * ASTERISK-28891 - documentation: AGICommand_set+music documentation arguments displayed incorreclty (Reported by Jonathan Harris) * ASTERISK-29048 - chan_iax2: "iax2 show registry" shows host for perceived (Reported by David Herselman) * ASTERISK-29674 - Adjust for 64bit time_t (Reported by Andre Heider) * ASTERISK-29961 - RLS: domain part of 'uri' list attribute mismatch with SUBSCRIBE request (Reported by Alexei Gradinari) * ASTERISK-29928 - logging messages truncated when using MUSL runtime (Reported by Philip Prindeville) * ASTERISK-29960 - ari: Retrieving stored recording can returns wrong file (Reported by Arix) * ASTERISK-29950 - SayNumber can handle '01' to '07', but not '08' or '09' (Reported by Jim Van Meggelen) Improvements made in this release: ----------------------------------- * ASTERISK-24827 - Missing documentation for chan_dahdi dial string ring cadences (Reported by Scott Griepentrog) * ASTERISK-29940 - general: Add since tags to xmldocs (Reported by N A) * ASTERISK-29726 - Add Asterisk External Application Protocol (AEAP) implementation (Reported by Kevin Harwell) * ASTERISK-29951 - app_mf, app_sf: Return -1 on hangup (Reported by N A) * ASTERISK-29954 - app_meetme: Emit warning if conference not found (Reported by N A) * ASTERISK-29351 - Qualify pjproject 2.12 for Asterisk (Reported by George Joseph) * ASTERISK-29976 - Should Readme include information about install_prereq script? (Reported by Marcel Wagner) * ASTERISK-29970 - Use pkg-config to find libxml2 headers and libraries (Reported by Hugh McMaster) * ASTERISK-29980 - build: External binary modules don't use https (Reported by INVADE International Ltd.) * ASTERISK-25716 - Documentation: Document explanations and examples for possible values of DIALSTATUS (Reported by Rusty Newton) * ASTERISK-29967 - pbx_builtins: Add missing documentation (Reported by N A) [asterisk-announce] Asterisk 18.11.3 Now Available Asterisk Development Team asteriskteam at digium.com Tue Apr 26 12:09:50 CDT 2022 The Asterisk Development Team would like to announce the release of Asterisk 18.11.3. The release of Asterisk 18.11.3 resolves an issue reported by the community and would have not been possible without your participation. Thank you! The following issue is resolved in this release: Bugs fixed in this release: ----------------------------------- * ASTERISK-30024 - Failed to sign STIR/SHAKEN payload with functionality not enabled (Reported by Claude Diderich) [asterisk-announce] Asterisk 16.25.2, 18.11.2, 19.3.2 and 16.8-cert14 Now Available (Security) The Asterisk Development Team would like to announce security releases for Asterisk 16, 18 and 19, and Certified Asterisk 16.8. The available releases are released as versions 16.25.2, 18.11.2, 19.3.2 and 16.8-cert14. The following security vulnerabilities were resolved in these versions: * AST-2022-001: res_stir_shaken: resource exhaustion with large files When using STIR/SHAKEN, it½½½s possible to download files that are not certificates. These files could be much larger than what you would expect to download. * AST-2022-002: res_stir_shaken: SSRF vulnerability with Identity header When using STIR/SHAKEN, it½½½s possible to send arbitrary requests like GET to interfaces such as localhost using the Identity header. * AST-2022-003: func_odbc: Possible SQL Injection Some databases can use backslashes to escape certain characters, such as backticks. If input is provided to func_odbc which includes backslashes it is possible for func_odbc to construct a broken SQL query and the SQL query to fail. [asterisk-announce] Asterisk 18.11.1 Now Available Asterisk Development Team asteriskteam at digium.com Tue Mar 29 19:15:43 CDT 2022 The Asterisk Development Team would like to announce the release of Asterisk 18.11.1. The release of Asterisk 18.11.1 resolves several issues reported by the community and would have not been possible without your participation. Thank you! The following issues are resolved in this release: Bugs fixed in this release: ----------------------------------- * ASTERISK-29986 - build: Asterisk 18.11.0 doesn't compile when wget isn't available (Reported by Stefan Ruijsenaars) * ASTERISK-29988 - REGRESSION: The build process is requiring xmllint or xmlstarlet ro be installed when it shouldn't (Reported by George Joseph) [asterisk-announce] Asterisk 18.11.0 Now Available Asterisk Development Team asteriskteam at digium.com Thu Mar 24 09:06:03 CDT 2022 The Asterisk Development Tea…
v20.4.0 ======= Features -------- - Replace deprecated ssl.wrap_socket with SSLContext.wrap_socket and update examples in connection.py docs. (#216) v20.3.1 ======= No significant changes. v20.3.0 ======= Features -------- - Added support for SASL login. (#195) Bugfixes -------- - Better handling of escape sequences in message tags. (#205) v20.2.0 ======= Features -------- - Require Python 3.8 or later. v20.1.1 ======= * #213: Pinned against jaraco.text 3.10 due to change in interface. v20.1.0 ======= * #196: In irc.bot, avoid hanging idle when the first connection attempt fails. v20.0.0 ======= * ``SingleServerIRCBot`` no longer accepts ``reconnection_interval`` as a parameter. * Added server support for NOTICE commands. * Require Python 3.7 or later. v19.0.1 ======= * #176: Fix issues with version number reporting. Restored version version number reporting in bot and client. v19.0.0 ======= * ``irc.client`` no longer exposes a ``VERSION`` or ``VERSION_STRING``. To get the version, call ``importlib.metadata.version('irc')`` directly. v18.0.0 ======= * Require Python 3.6 or later. 17.1 ==== * Rely on `importlib_metadata <https://pypi.org/project/importlib_metadata/>`_ for loading version from metadata. Removes implicit dependency on setuptools and pkg_resources. * #158: The AsyncIO server now accepts a connection factory to enable features like SSL and IPv6 support. * #155: ``SimpleIRCClient`` now has a ``dcc`` method for initiating and associating a DCCConnection object with the client. ``DCCConnection.listen`` now accepts a ``address`` parameter. Deprecated ``SimpleIRCClient.dcc_listen`` and ``SimpleIRCClient.dcc_connect`` in favor of the better separation of concerns. Clients should replace:: client.dcc_connect(addr, port, type) client.dcc_listen(type) with:: client.dcc(type).connect(addr, port) client.dcc(type).listen() 17.0 ==== * Removed ``irc.buffer`` module, deprecated in 14.2. * #153: Drop support for Python 3.3 and 2.7. 16.4 ==== * Long Term Service release for Python 2.7. * #149: ``AioConnection.connect`` moved to coroutine, added disconnect handling for AsyncIO. 16.3 ==== * #140: Methods now use 'connection' and 'event' for parameter names. * #135 via #144: Added AsyncIO implementation. 16.2.1 ====== * Package refresh and cleanup. 16.2 ==== * #133: In ``irc.server``, add support for ISON. 16.1 ==== * #131: Add ``Connection.encode`` and ``Connection.transmit_encoding`` to enable encodings other than UTF-8 to be used when transmitting text. 16.0 ==== * Removed deprecated ``execute_*`` methods on ``Connection`` and ``Reactor`` as introduced in 15.0. * Fixed link in README. 15.1.1 ====== * New ``send_items`` method takes star args for simplicity in the syntax and usage. 15.1 ==== * Introduce ``ServerConnection.send_items``, consolidating common behavior across many methods previously calling ``send_raw``. 15.0.6 ====== * Now publish `documentation <https://python-irc.readthedocs.io/>`_ to Read The Docs. 15.0.5 ====== * #119: Handle broken pipe exception in IRCClient _send() (server.py). 15.0.4 ====== * #116: Correct invocation of execute_every. 15.0.3 ====== * #115: Fix AttributeError in ``execute_at`` in scheduling support. 15.0.2 ====== * #113: Use preferred scheduler in the bot implementation. 15.0.1 ====== * Deprecated calls to Connection.execute_* and Reactor.execute_*. Instead, call the equivalently-named methods on the reactor's scheduler. 15.0 ==== * The event scheduling functionality has been decoupled from the client.Reactor object. Now the reactor will construct a Scheduler from the scheduler_class property, which must be an instance of irc.schedule.IScheduler. The ``_on_schedule`` parameter is no longer accepted to the Reactor class. Implementations requiring a signal during scheduling should hook into the ``add`` method of the relevant scheduler class. * Moved the underlying scheduler implementation to `tempora <https://pypi.org/project/tempora>`_, allowing it to be re-used for other purposes. 14.2.2 ====== * Issue #98: Add an ugly hack to force ``build_sphinx`` command to have the requisite libraries to build module documentation. 14.2.1 ====== * Issue #97: Restore ``irc.buffer`` module for compatibility. * Issue #95: Update docs to remove missing or deprecated modules. * Issue #96: Declare Gitter support as a badge in the docs. 14.2 ==== * Moved buffer module to `jaraco.stream <https://pypi.python.org/pypi/jaraco.stream>`_ for use in other packages. 14.1 ==== * ``SingleServerIRCBot`` now accepts a ``recon`` parameter implementing a ReconnectStrategy. The new default strategy is ExponentialBackoff, implementing an exponential backoff with jitter. The ``reconnection_interval`` parameter is now deprecated but retained for compatibility. To customize the minimum time before reconnect, create a custom ExponentialBackoff instance or create another ReconnectStrategy object and pass that as the ``recon`` parameter. The ``reconnection_interval`` parameter will be removed in future versions. * Issue #82: The ``ExponentialBackoff`` implementation now protects from multiple scheduled reconnects, avoiding the issue where reconnect attempts accumulate exponentially when the bot is immediately disconnected by the server. 14.0 ==== * Dropped deprecated constructor ``connection.Factory.from_legacy_params``. Use the natural constructor instead. * Issue #83: ``connection.Factory`` no longer attempts to bind before connect unless a bind address is specified. 13.3.1 ====== * Now remove mode for owners, halfops, and admins when the user is removed from a channel. * Refactored the Channel class implementation for cleaner, less repetitive code. * Expanded tests coverage for Channel class. 13.3 ==== * Issue #75: In ``irc.bot``, add support for tracking admin status (mode 'a') in channels. Use ``channel.is_admin`` or ``channel.admins`` to identify admin users for a channel. * Removed deprecated irc.logging module. 13.2 ==== * Moved hosting to github. 13.1.1 ====== * Issue #67: Fix infinite recursion for ``irc.strings.IRCFoldedCase`` and ``irc.strings.lower``. 13.1 ==== * Issue #64: ISUPPORT PREFIX now retains the order of permissions for each prefix. 13.0 ==== * Updated ``schedule`` module to properly support timezone aware times and use them by default. Clients that rely on the timezone naïve datetimes may restore the old behavior by overriding the ``schedule.now`` and ``schedule.from_timestamp`` functions like so: schedule.from_timestamp = datetime.datetime.fromtimestamp schedule.now = datetime.datetime.now Clients that were previously patching ``schedule.DelayedCommand.now`` will need to instead patch the aforementioned module-global methods. The classmethod technique was a poor interface for effectively controlling timezone awareness, so was likely unused. Please file a ticket with the project for support with your client as needed. 12.4.2 ====== * Bump to jaraco.functools 1.5 to throttler failures in Python 2. 12.4 ==== * Moved ``Throttler`` class to `jaraco.functools <https://bitbucket.org/jaraco/jaraco.functools>`_ 1.4. 12.3 ==== * Pull Request #33: Fix apparent escaping issue with IRCv3 tags. 12.2 ==== * Pull Request #32: Add numeric for WHOX reply. * Issue #62 and Pull Request #34: Add support for tags in message processing and ``Event`` class. 12.1.2 ====== * Issue #59: Fixed broken references to irc.client members. * Issue #60: Fix broken initialization of ``irc.server.IRCClient`` on Python 2. 12.1.1 ====== * Issue #57: Better handling of Python 3 in testbot.py script. 12.1 ==== * Remove changelog from package metadata. 12.0 ==== * Remove dependency on jaraco.util. Instead depend on surgical packages. * Deprecated ``irc.logging`` in favor of ``jaraco.logging``. * Dropped support for Python 3.2.
### 1.8.10 - 15 June 2024 * feature: new "`--output`" option to write to a file instead of standard output (pull request [#90](https://codeberg.org/a-j-wood/pv/pulls/90)) supplied by [xmort](https://codeberg.org/xmort) ### 1.8.9 - 21 April 2024 * feature: new "`--si`" option to display and interpret size suffixes in multiples of 1000 rather than 1024 (pull request [#85](https://codeberg.org/a-j-wood/pv/pulls/85)) supplied by [kevinruddy](https://codeberg.org/kevinruddy) * fix: continue producing progress output when the output is blocking writes ([#34](https://codeberg.org/a-j-wood/pv/issues/34), [#86](https://codeberg.org/a-j-wood/pv/issues/86), [#87](https://codeberg.org/a-j-wood/pv/issues/87)) * fix: honour the _TMPDIR_ / _TMP_ environment variables again, rather than hard-coding "`/tmp`", when using a terminal lock file (originally removed in 1.8.0) ([#88](https://codeberg.org/a-j-wood/pv/issues/88)) * i18n: corrections and missing strings added to French translations (pull request [#83](https://codeberg.org/a-j-wood/pv/pulls/83)) supplied by [Thomas Bertels](https://codeberg.org/tbertels) ### 1.8.5 - 19 November 2023 * fix: corrected percentage formatting so it doesn't jump from 2 to 3 characters wide at 100% ([#80](https://codeberg.org/a-j-wood/pv/issues/80)) * fix: replaced "`--remote`" mechanism, using a temporary file instead of SysV IPC, so it can work reliably even when there are multiple PV instances * fix: corrected compilation failure when without IPC support * security: addressed all issues highlighted by the software auditing tools "`splint`" and "`flawfinder`" (see "`make analyse`") ([#77](https://codeberg.org/a-j-wood/pv/issues/77)) * cleanup: compilation warnings fixed on non-IPC and MacOS systems ### 1.8.0 - 24 September 2023 #### Features * feature: new "`--discard`" option to discard input as if writing to */dev/null* ([#42](https://codeberg.org/a-j-wood/pv/issues/42)) * feature: new "`--error-skip-block`" option to make "`--skip-errors`" skip whole blocks ([#37](https://codeberg.org/a-j-wood/pv/issues/37)) * feature: use `posix_fadvise()` like `cat`(1) does, to improve efficiency ([#39](https://codeberg.org/a-j-wood/pv/issues/39)) * feature: new "`--enable-static`" option to "`configure`" for static builds ([#75](https://codeberg.org/a-j-wood/pv/pull/75)) #### Security * security: with "`--pidfile`", write to a temporary file and rename it into place, to improve security * security: keep self-contained copies of name and format string in PV internal state for memory safety * security: ignore _TMP_ / _TMPDIR_ environment variables when using a terminal lock file #### Fixes * fix: only report errors about missing files when starting to transfer from them, not while calculating size, and behave more like `cat`(1) by skipping them and moving on * fix: auto-calculate total line count with "`--line-mode`" when all inputs are regular files * fix: use `clock_gettime()` in ETA calculation to cope with machine suspend/resume ([#13](https://codeberg.org/a-j-wood/pv/issues/13)) * fix: if "`--width`" or "`--height`" were provided, do not change them when the window size changes ([#36](https://codeberg.org/a-j-wood/pv/issues/36)) * fix: when a file descriptor position in "`--watchfd`" moves backwards, show the rate using the correct prefix ([#41](https://codeberg.org/a-j-wood/pv/issues/41)) * fix: rewrite terminal state save/restore so state is not intermittently garbled on exit when using "`--cursor`" ([#20](https://codeberg.org/a-j-wood/pv/issues/20)), ([#24](https://codeberg.org/a-j-wood/pv/issues/24)) #### Cleanups * cleanup: addressed many potential issues highlighted by the software auditing tools "`splint`" and "`flawfinder`" (see new target "`make analyse`") * cleanup: switched the build system to GNU Automake * cleanup: replaced the test harness with the one native to GNU Automake * cleanup: added a test for terminal width detection to "`make check`" * cleanup: added a test to "`make check`" to ensure that "`make install`" installs everything expected * cleanup: replaced *AC_HEADER_TIOCGWINSZ* with *AC_CHECK_HEADERS(sys/ioctl.h)* for better MacOS compatibility ([#74](https://codeberg.org/a-j-wood/pv/issues/74)) * cleanup: with "`--sync`", call `fsync()` instead of `fdatasync()` on incapable systems ([#73](https://codeberg.org/a-j-wood/pv/issues/73)) * cleanup: the manual is now a static file instead of needing to be built with "`configure`" #### Dropped items * dropped: dropped support for "`--enable-static-nls`" * dropped: removed the Linux Software Map file, as the LSM project appears to be long dead * dropped: will no longer publish to SourceForge as it has a chequered history and is unnecessary * dropped: removed project from GitHub and moved to Codeberg - see "[Give Up GitHub](https://giveupgithub.org/)" #### Other items * licensing change from Artistic 2.0 to GPLv3+ ### 1.7.24 - 30 July 2023 * fix: correct terminal size detection, broken in 1.7.17 by the configuration script rewrite ([#72](https://codeberg.org/a-j-wood/pv/issues/72)) * security: removed *DEBUG* environment variable in debug mode, added "`--debug`" instead * cleanup: added "`make analyse`" to run "`splint`" and "`flawfinder`" on all source files * cleanup: corrected detection of boolean capability * cleanup: word wrapping of "`--help`" output is now multi-byte locale aware * cleanup: adjusted "`indent`" rules to line length of 120 and reformatted code ### 1.7.18 - 28 July 2023 * fix: language file installation had been broken by the configuration script rewrite ### 1.7.17 - 27 July 2023 * feature: new "`--sync`" option to flush cache to disk after every write (related to [#6](https://codeberg.org/a-j-wood/pv/issues/6), to improve accuracy when writing to slow disks) * feature: new "`--direct-io`" option to bypass cache - implements [#29 "Option to enable *O_DIRECT*"](https://codeberg.org/a-j-wood/pv/issues/29) - requested by Romain Kang, Jacek Wielemborek * fix: correct byte prefix size to 2 spaces in rate display, so progress display size remains constant at low transfer rates * cleanup: rewrote `configure.in` as per suggestions in newer "`autoconf`" manuals * cleanup: replaced `header.in` with one generated by "`autoheader`", moving custom logic to a separate header file "`config-aux.h`" * cleanup: added copyright notice to all source files as per GNU standards * cleanup: changed "`--version`" output to conform to GNU standards * cleanup: replaced backticks with `$()` in all shell scripts that did not come from elsewhere, as backticks are deprecated and harder to read * cleanup: improved the output formatting of "`make test`" * cleanup: extended the "`make test`" mechanism to allow certain tests to be skipped on platforms that cannot support them * cleanup: skip the "pipe" test (for *SIGPIPE*) if GNU "`head`" is not available, so that "`make test`" on stock OpenBSD 7.3 works * cleanup: added a lot more tests to "`make test`" * cleanup: replace all calls to `sprintf()` and `snprintf()` with a new wrapper function `pv_snprintf()` to improve security and compatibility * cleanup: replace all calls to `strcat()` with a wrapper `pv_strlcat()` to improve security and compatibility * cleanup: replace all `write()` calls to the terminal with a wrapper `pv_write_retry()` for consistency * cleanup: tidy up and fix compilation warning in "`--watchfd`" code * cleanup: rewrote all local shell scripts to pass analysis by [ShellCheck](https://www.shellcheck.net) ### 1.7.0 - 17 July 2023 * dropped: support for Red Hat Enterprise Linux and its derivatives has been dropped; removed the RPM spec file, and will no longer build binaries * feature: the "`--size`" option now accepts "`@filename`" to use the size of another file (pull request [#57](https://codeberg.org/a-j-wood/pv/pull/57) supplied by [Dave Beckett](https://github.com/dajobe)) * feature: the "`--watchfd`" option is now available on OS X (pull request [#60](https://codeberg.org/a-j-wood/pv/pull/60) supplied by [christoph-zededa](https://github.com/christoph-zededa)) * feature: new "`--bits`" option to show bit count instead of byte count (adapted from pull request [#63](https://codeberg.org/a-j-wood/pv/pull/63) supplied by [Nick Black](https://nick-black.com)) * feature: new "`--average-rate-window`" option, to set the window over which the average rate is calculated, also used for ETA (modified from pull request [#65](https://codeberg.org/a-j-wood/pv/pull/65) supplied by [lemonsqueeze](https://github.com/lemonsqueeze)) * feature: the "`--watchfd`" option will now show relative filenames, if they are under the current directory (pull request [#66](https://codeberg.org/a-j-wood/pv/pull/66) supplied by [ikasty](https://github.com/ikasty)) * fix: correction to `pv_in_foreground()` to behave as its comment block says it should, when not on a terminal - corrects [#19 "No output in Arch Linux initcpio after 1.6.6"](https://codeberg.org/a-j-wood/pv/issues/19), [#31 "No output written from inside zsh <() construct"](https://codeberg.org/a-j-wood/pv/issues/31), [#55 "pv Stopped Working in the Background"](https://codeberg.org/a-j-wood/pv/issues/55) (pull request [#64](https://codeberg.org/a-j-wood/pv/pull/64) supplied by [Michael Weiß](https://github.com/quitschbo)) * fix: workaround for OS X 11 behaviour in configure script regarding stat64 at compile time (pull request [#57](https://codeberg.org/a-j-wood/pv/pull/57) supplied by [Dave Beckett](https://github.com/dajobe)) * fix: workaround for macOS equivalence of stat to stat64 - patches from [Filippo Valsorda](https://github.com/FiloSottile) and [Demitri Muna](https://github.com/demitri), correcting [#33 "Fix compilation problems due to `stat64()` on Apple Silicon"](https://codeberg.org/a-j-wood/pv/issues/33) * fix: add burst rate limit to transfer, so rate limits are not broken by bursty traffic (pull request [#62](https://codeberg.org/a-j-wood/pv/pull/62) supplied by [Volodymyr Bychkovyak](https://github.com/vbychkoviak)) * fix: corrected "`--force`" option so it will still output progress when not in the same process group as the owner of the terminal - corrects [#23 "No output with "`-f`" when run in background after 1.6.6"](https://codeberg.org/a-j-wood/pv/issues/23) and helps to correct [#31 "No output written from inside zsh <() construct"](https://codeberg.org/a-j-wood/pv/issues/31) * fix: corrected elapsed time display to show as D:HH:MM:SS after 1 day, like the ETA does - corrects [#16 "Show days in same format in ETA as in elapsed time"](https://codeberg.org/a-j-wood/pv/issues/16) * fix: corrected bug where percentages went down after 100% when in "`--numeric`" mode with a "`--size`" that was too small - corrects [#26 "Correct "`-n`" behaviour when going past 100% of "`-s`" size"](https://codeberg.org/a-j-wood/pv/issues/26) * i18n: recoded Polish translation file to UTF-8 * i18n: removed inaccurate fuzzy translation matches * docs: moved all open issues into GitHub and updated the TODO list * docs: renamed README to README.md and altered it to Markdown format * docs: moved contributors from the README to docs/ACKNOWLEDGEMENTS.md * docs: moved TODO to TODO.md and altered it to Markdown format * docs: moved NEWS to NEWS.md, converted it to UTF-8, and altered it to Markdown format
Based on PR 58426 by jonathan buschmann. ## 2.4.7 2024-05-05 ### Fixed - docs(pop): clarify --spill behavior (#445) - fix(branch): disallow branch before subcommand (#447) ### Changed - refactor: get gix-command via gix with command feature - Update gix to version 0.62 ## 2.4.6 2024-04-07 ### Fixed - fix(bash): fix completion for "committish" ### Changed - docs: Update copyright year - chore: update gix to 0.61.1 - ci: update to wix 4.0.5 ## 2.4.5 2024-02-18 ### Fixed - fix: stdout from hooks (#418) ### Changed - chore: add category and keywords to Cargo.toml - build: exclude some paths from crate - docs(readme): enumerate more package repositories - chore: update dependencies ## 2.4.4 2024-02-11 ### Fixed - fix: pass stdio for interactive editing (#415) - fix: update gix-tempfile and gix-lock to 13.1.0 (#413) ### Changed - chore: update dependencies ## 2.4.3 2024-02-04 ### Added - feat(branch): allow delete of current branch ### Fixed - fix(branch): delete branch config with branch - fix: use gix-command for interactive edit (#407) - fix: improved interactive editor diagnostics - chore: update gix to 0.58.0 (#407) - docs: fix dates in changelog ### Changed - refactor(branch): use gix to rename config section - refactor: use gix to remove stgit branch config - refactor: use gix-command for hooks - refactor: use non-deprecated indexmap methods - ci: update cargo-generate-rpm to 0.14.0 - ci: update to upload-artifact@v4 - ci: restore use of IO::Pty in MacOS build ## 2.4.2 2023-12-26 ### Changed - feat(pop): allow unescaped negative patch offsets - feat(show): allow unescaped negative patch offsets - chore: update dependencies ## 2.4.1 2023-12-10 ### Fixed - fix(zsh): short -r opt for `stg series` ### Changed - chore: update gix to 0.56.0 - chore: update transient dependencies ## 2.4.0 2023-10-08 ### Added - feat(delete): --all -A -U -H options - feat(sink): -T/--above option - feat(branch): short opts for clone and delete ## 2.3.3 2023-10-04 ### Fixed - fix(zsh): -S option for float, import, and sync - build: avoid non-portable install options - test: improved test script portability ### Changed - update dependencies ## [2.3.2] 2023-08-19 ### Fixed - fix!(uncommit): check for HEAD/top mismatch (#360) - docs: docstring spelling and formatting fixes ### Changed - feat(uncommit): print uncommited patches - pin serde to avoid using precompiled binary - update dependencies ## [2.3.1] 2023-07-25 ### Fixed - fix(zsh): typo in completion help for stg commit --all - fix: use canonical Message-ID spelling - fix(stgit.el): recognize new empty patch marker - fix(import): Keep first line break in body ### Changed - update dependencies ## [2.3.0] 2023-05-25 ### Removed - import-compressed is always enabled, no longer a feature ### Added - unofficial deb and rpm packages - msi package for Windows ### Fixed - fix(import): would panic without import-url feature - fix(import): patch numbers not stripped from name ### Changed - use bzip2-rs instead of bzip2 crate - update dependencies ## [2.2.4] 2023-05-15 ### Added - feat: Upgrade from ancient stack state formats (#235) ### Fixed - fix(branch): create based on remote branch (#317) - fix(import): lost subject lines resembling header (#321) - fix(import): subject line may be discarded ### Changed - chore: update dependencies ## [2.2.3] 2023-04-26 ### Fixed - fix: error using on Windows (#273) - fix: path handling for Windows compatibility - fix: commit-msg hook run from work root - fix: avoid "stg.exe" in usage on Windows - fix: use gitattributes to force LF endings on Windows - fix: wrap hooks with sh on Windows ### Changed - chore: update to gix 0.44.0 - chore: update other dependencies ## [2.2.2] 2023-04-01 ### Fixed - fix: rebase with '@' in ref names (#306) - fix: improved error messages for unrecognized commands ## [2.2.1] 2023-03-29 ### Changed - chore: update to clap 4.2.0 - chore: update to gix 0.43.0 - chore: pin clap minor version ### Fixed - fix(branch): allow reuse of partially deleted branch names (#290) - fix(branch): branch list alignment - fix: running hooks from worktree subdir (#295) - fix: running from linked worktree (#297) - fix(float): correct -S in usage string - fix: correctly show bold command/subcommand in overidden usage ## [2.2.0] 2023-02-24 ### Removed - feat!: remove short -s option for --submodules - fix!: patch name cannot be {base} or @ ### Added - feat: patch locator syntax - feat: locate branches using @{-N} syntax - feat(series): Add --reverse option - feat(series): options for patch offsets and indices - feat(series): --no-xxx options to override display options - feat(series): optional value for --short - feat!: short -s option for --signoff (#245) - feat(init): add -b/--branch option ### Changed - fix!: use -S as short opt for --series - feat!: constrain refresh -p to visible patches - feat(series)!: empty patch prefix changed to * - feat!: spell errors in lowercase - refactor: use gitoxide instead of git2 - refactor: use time crate instead of chrono - feat!: update to clap 4.1 - chore: update to latest dependencies ### Fixed - fix: Error if author or committer is not configured - fix: Use correct base directory for core.hooksPaths - fix(rename): colliding patch names - fix(rebase): repair rebasing to a tag (#265) - fix(branch): switch branch with detached head - docs: Repair docstrings being confused as html - docs: normalized spelling for --branch value ## [2.1.0] 2022-12-12 ### Added - feat: Configurable push conflict policy (#60) - feat: Add --committer-date-is-author-date option (#47) - feat(import): Add --3way option (#36) - feat(import): Add --directory option (#36) ### Changed - feat!: Relaxed stack initialization (#238) - feat!: Only sign stack based on stgit.gpgsign (#238) - fix!: Allow "---" separator in messages (#243) - feat: More descriptive push conflict message (#60) - feat: Avoid post-edit commits when no change - chore: Update dependencies to latest versions ### Fixed - fix: Improved error message for uninitialized stack - fix: Improve error for re-initialization attempt - fix(prev): Different error message for empty stack - fix: Accept full ref name for branches - fix(zsh): Complete --edit and --diff for stg new ## [2.0.4] 2022-11-30 ### Changed - docs: Document configuration variables - refactor: Use is-terminal instead of atty - chore: Update Cargo.lock with latest dependencies. ### Fixed - fix: Don't generate new patch name until after edit (#239) - fix: Run shell aliases from top-level of work tree - fix: Use GIT_PREFIX in built-in aliases ## [2.0.3] 2022-11-21 ### Changed - chore: Update Cargo.lock with latest dependencies. ### Fixed - fix: improved git version parsing on MacOS - fix: StGit-specific branch config handling - docs: fixed many typos ## [2.0.2] 2022-11-17 ### Changed - chore: Update Cargo.lock with latest dependencies. - docs(init): Add long help for `stg init`. ### Added - feat: Enable basic support for `extensions.worktreeconfig` to unblock sparse checkout with partial clone (#195). ### Fixed - docs: More inter-command links - docs: Normalize quoting ## [2.0.1] 2022-11-07 ### Changed - chore: Update to clap 4.0.22 ### Fixed - docs(readme): Clarify static versus dynamic linking (#230) - build: Improve Documentation build performance (#229) ## [2.0.0] 2022-11-06 ### Removed - `stg clone` is removed. Use `git clone` and `stg init` instead. - `stg mail` is replaced with `stg email format` and `stg email send`. - `stg refresh --spill` is replaced with dedicated `stg spill` command. - `stg edit` no longer accepts `-O/--diff-opts`. Custom diff options is in conflict with editable diffs since many (most?) diff options cause the diff to no long be applicable. - `stg files` no longer accepts `-O/--diff-opts`. This option was of marginal value since it only had a possible side effect when `--stat` was being used. ### Added - `stg id` now accepts the `-b/--branch` option. - `stg completion` command provides runtime support for shell completions. - `stg completion bash` generates bash shell completion script. - `stg completion fish` generates fish shell completion script. - `stg completion zsh` outputs zsh shell completion script. - `stg completion list` shows StGit commands and aliases and is used at completion-time by shell completion scripts. - `stg completion man` generates man pages in asciidoc format. - `stg email format` wraps `git format-patch` and provides a mechanism to generate patch emails and optional cover letter in mbox format. - `stg email send` wraps `git send-email` and allows sending patch emails, either from files generated by `stg email format` or by specifying patches directly. - `stg new --refresh` allows a new patch to be refreshed with changes in one step. The `-i/--index`, `-F/--force`, `-s/--submodules`, and `--no-submodules` options from `stg refresh` are also available to `stg new` when using `-r/--refresh`. - `stg series` gains the `-i/--commit-id` option to display patches' commit ids. - `stg show` diff output can now be limited to certain paths by specifying path limits on the command line. - `stg spill` replaces `stg refresh --spill`. - `stg version` gains `-s/--short` flag to show shortened version info. - Added documentation for patch range syntax to stg(1) man page. - Added `install-all` target to top-level Makefile that installs the executable, man pages, html pages, and shell completions. ### Changed - StGit is now implemented entirely in Rust instead of Python. - StGit is generally much faster; many commands are up to 4x faster. There was an emphasis on making informational commands such as `stg id`, `stg series`, and `stg top` as fast as possible to make their use in interactive contexts (shell prompts, IDE extensions) more comfortable. - StGit error messages have been updated; many have different, and hopefully better, wording. Error messages are also use color (when color is enabled). Scripts relying on exact error messages from StGit will need to be updated. - StGit output to stdout is generally more terse. Commands that change the stack such as `push`, `pop`, and `commit`, use sigils to denote the changes made to the stack. E.g. `stg commit p0..p3` will output `$ p0..p3` where the "$" sigil means that a patch, or patch range, has been committed. These are all the currently used stack change sigils: - `+` patch was pushed - `-` patch was popped - `>` patch became the current topmost patch - `&` patch was updated - `$` patch was committed - `#` patch was deleted - `@` patch was rolled-back - `!` patch was hidden - StGit aliases are now more like Git aliases. Normal aliases refer to StGit subcommands, but aliases prefixed with '!' are shell aliases that may run arbitrary commands. An example normal alias would be `git config stgit.alias.list 'series --description --empty'`. An example shell alias would be `git config stgit.alias.st '!git status --short'`. - Commands such as `stg goto`, `stg push`, and `stg pop` now require full/correct patch names on the command line and no longer accept unambiguous patch name prefixes. When an inexact patch name is provided on the command line, the error message will now suggest similar valid patch names. - Additional template search paths were added. In addition to looking for template files in .git/, also look in `$XDG_CONFIG_HOME/stgit/templates/` and `$HOME/.stgit/templates`. This search strategy is consistent with how git looks for the global config file. - The new `--signoff` patch edit option supersedes the deprecated `--sign` and `--sign-by` options. `--signoff` without its optional value does the same thing as `--sign`, while `--signoff=<value>` does the same thing as `--sign-by=<value>`. - The `--ack` and `--review` patch edit options now optionally take a value. The `--ack-by` and `--review-by` options are deprecated. - `stg branch` output is now generally less verbose. - `stg branch --describe` replaces `stg branch --description`. The `--description` subcommand remains supported as a hidden alias to `--describe`, but the description string must now be provided as its own argument; i.e. `--description="description string"` is no longer supported. - `stg branch --list` now produces colorized output. The `--color` option or `NO_COLOR` environment variable may be used to affect this behavior. - `stg branch --rename` now supports renaming regular git branches in addition to StGit-enabled branches. - `stg clean` now uses `-A` and `-U` short options for `--applied` and `--unapplied` instead of `-a` and `-u`. This is done for consistency with `stg series` and `stg show`. - `stg import` now only recognizes compressed patches by their file extension (`.bz2` or `.gz`) and no longer proactively attempts to decompress using all known decompressors. - `stg import` support for compressed input files is selectable at compile time using the `import-compressed` feature. - `stg import` support for importing from a URL is selectable at compile time using the `import-url` feature. **N.B.** there is a measurable runtime performance impact of building with `import-url` due to the unconditional, pre-main initialization of `curl` which affects **all** `stg` commands. - `stg log` now colorizes output by default. The `--color` option or `NO_COLOR` environment variable may be used to affect this behavior. - `stgit.new.verbose` changed to `stgit.edit.verbose` and now also affects edit behavior for `edit`, `refresh`, and `squash` along with `new`. - `stg new` now accepts `-e/--edit` and `-d/--diff` instead of `-v/--verbose` - `stg pick` now allows a mix of commits and patches to be picked whereas previously only a single commit xor multiple patches could be picked. - `stg pick` now performs a single stack transaction for all the picked patches/commits instead of one transaction per pick. - `stg push` now attempts to perform three-way merges, which may improve conflict resolution in some cases. This feature is enabled by default when git >= 2.32.0 is detected. - `stg rebase --interactive` the "squash" and "fixup" instructions may no longer be applied to the first patch in the instruction list. The stated semantics of both "squash" and "fixup" is that they squash the labeled patch with the preceding patch, which is not possible/valid when there is no preceding patch. - `stg refresh` no longer has a `--spill` flag. Use `stg spill` instead. - `stg series` has updated colorized output. - `stg series` now requires patch range arguments to be both in-order and contiguous. Constraining patch ranges in this manner ensures that the output from `stg series` is always a valid/correct view of a subset of the series. - `stg show` diff output respects the `--color` option. - `stg squash` now allows the full suite of patch edit options, including `-d/--diff`. Previously only a few message-related options were available. - `stg version` now displays copyright and license statements. ### Fixed - `stg branch --create` inherits the current branch's remote branch configuration, if available. The Python implementation had an apparent bug that prevented inheriting the remote branch configuration when creating from the current branch. - Avoid case insensitive patch name collisions. On operating systems with case-insensitive paths, patch names that only differ by case lead to patch reference collisions. StGit now ensures that patch names are distinct under case insensitive comparisons. - `stg pull` and `stg rebase` record updated stack state instead of deferring until the next stack-modifying command to do so. ### Changed since 2.0.0-rc.2 #### Changed - chore: Update Cargo.lock #### Fixed - fix(zsh): Repair broken completion of --git-opt - fix(zsh): Add missing `stg email send --branch` - fix(email): Send using --branch option - fix: Avoid duplicate signoff with stgit.autosign - fix: Do not use 3way for merged checks ## [2.0.0-rc.2] 2022-10-23 ### Changed - The `--diff-opts` option is renamed to `--diff-opt`. `--diff-opts` remains available as an alias. - The `--diff-opt` option no longer allows multiple git options per occurrence. This allows git diff options with spaces in their values. - The `--git-opts` option for `stg email format` and `stg email send` is renamed `--git-opt`. - The `--git-opt` option no longer allows multiple git options per occurrence. This allows git options with spaces in their values. - Zsh completion for `--diff-opt` and `--git-opt` leverage the full-featured git completion capability. ### Fixed - Repair check for modifications to stack by external tools. - `stg pull` and `stg rebase` record updated stack state instead of deferring until the next stack-modifying command to do so. - Improve patch application with `git apply --3way` when pushing` (#225) - Zsh completion for `--diff-opt` accommodates multiple occurrences ## [2.0.0-rc.1] 2022-09-30 ### Added - Added `--annotate` flag to `stg email send`. - Added `-p`/`--patch` option to `stg show` as alternative way to select patch ranges (#216). - Added `-n`/`--name` option to `stg new` as alternative way to specify new patch name (#216). ### Changed - Update `git2` to 0.15.0, which may further help compatibility with sparse checkouts and multiple worktrees (#195). - Update to `clap` 4.0, which changes the help formatting and coloring. - Update other dependencies to latest versions in Cargo.lock. - No longer depend on `lazy_static` crate. - Use `std::thread::scope` instead of custom mechanism. This brings the total number of uses of `unsafe` in StGit to zero. - Minimum rustc requirement is set to 1.63.0. - The '$' sigil used for committed patches is now yellow instead of white. - Patch names beginning with a hyphen '-' may be disambiguated from command line options by escaping the leading '-' with a backslash. - `stg email format` and `stg email send` now use `-G`/`--git-opts` to pass additional options to `git format-patch` and `git send-email`. - Patch name arguments to `stg email format` and `stg email-send` can now be placed after a `--` separator (#216). - Update top-level usage help for `stg`. ### Fixed - Various errors that may occur when executing a stack transaction are now handled more robustly such that the changes from the transaction are rolled-back so that the stack, repository, and worktree are all in a consistent state (#205). - The `stg uncommit -h` usage indentation is repaired. - The `stg float` usage now shows the two distinct usage modes. - `stg squash --name` allows patch names with leading '-'. - `stg diff --range` allows patch names and ranges with leading '-'. - Fix some pre-indented paragraphs in help/about strings. - Zsh completion for `stg edit` incorrectly included -O/--diff-opts. - Zsh completion for `stg files` incorrectly included -O/--diff-opts. ## [2.0.0-beta.3] 2022-08-28 ### Added - Add install targets for `contrib/` directory. ### Changed - Use `git` executable instead of `libgit2` for all status and index operations to improve compatibility with sparse index checkouts (#195). - Show commit hash in `stg version` output when not built from tag. - Use `cargo --locked` consistently in Makefiles. - Use "patch" extension in temp file name when editing a patch with a diff. - Updated transient dependencies in Cargo.lock. ### Fixed - Repair `stg branch --describe` panic when run without arguments - Repair zsh completions for `git branch` - Repair `stgit.el` to use compatible `stg show` commands (#202). - Repair `stg uncommit --to` to work with annotated tags (#203). - Repair `make install` to not install cargo tracking files. ## [2.0.0-beta.2] 2022-08-05 ### Changed - Improved error when push conflicts with untracked files (#193) - Removed a few transitive dependencies by turning-off features in bstr and chrono. - Update Cargo.lock with latest dependencies - Update to clap 3.2 and only use non-deprecated interfaces ### Fixed - Repair `stg spill` when spilling newly added files and using path limits. ## [2.0.0-beta.1] 2022-07-28 ### Removed - Removed Python implementation of StGit. ### Added - Man page generation in asciidoc format with `stg completion man`. This was needed for feature parity with the Python implementation. - Added documentation for patch range syntax to stg(1) man page. - Added `install-all` target to top-level Makefile that installs the executable, man pages, html pages, and shell completions. ### Changed - Additional template search paths were added. In addition to looking for template files in .git/, also look in `$XDG_CONFIG_HOME/stgit/templates/` and `$HOME/.stgit/templates`. This search strategy is consistent with how git looks for the global config file. - Makefile targets are updated such that they are all applicable to the Rust implementation. - Argument value names are now all lowercase in help and man pages. - Updated Cargo.lock with latest versions of dependencies. - Release checklist is updated for Rust implementation. ### Fixed - Minor typo fixes in help strings - Improved documentation for top-level `stg` options. - Improve error message in edge case of attempting to push a hidden patch by name when there are no unapplied patches. ## [2.0.0-alpha.2] 2022-07-07 ### Added - `stg email format` wraps `git format-patch` and provides a mechanism to generate patch emails and optional cover letter in mbox format. - `stg email send` wraps `git send-email` and allows sending patch emails, either from files generated by `stg email format` or by specifying patches directly. ### Changed - Bash completions for shell aliases now fallback to filename completions (#191). - Help options listings now ensure --color and --help are shown last. - Various zsh completion improvements: - Add descriptions for --color values - Complete -O/--diff-opts values (using `git diff-tree --git-completion-helper`) - Comprehend `stg -C <dir>` options - Improved/corrected alias expansion - Improved error messages when completion is attempted outside git repo and/or StGit-initialized branch - Patch name completions now look and feel like output from `stg series` - Complete patch range syntax ('patch0..patchN') for all relevant commands - Completion for `stg squash` no longer allows duplicate patch name arguments - Removed completions for removed `stg mail` command - Completion for `stg sink` no longer offers hidden patches - Completion for `stg rename` comprehends second, new patch name argument - Completion for `stg diff --range` now works ### Fixed - Compatibility with git versions prior to 2.35.0 is repaired by avoiding using `git apply --allow-empty` (#192). - Fish completions for -O/--diff-opts are repaired ## [2.0.0-alpha.1] 2022-06-17 ### Added - `stg series` gains the `-i/--commit-id` option to display patches' commit ids. - `stg series` colorized output is modified. The main change is that patch descriptions are no longer yellow. - `stg version` now displays copyright and license statements. - `stg version` gains `-s/--short` flag to show shortened version info. - The `stgit.diff-opts` configuration variable is now respected as it was in the Python implementation. - `stg completion` command provides runtime support for shell completions. - `stg completion bash` generates bash shell completion script. - `stg completion fish` generates fish shell completion script. - `stg completion zsh` outputs zsh shell completion script. - `stg completion list` shows StGit commands and aliases and is used at completion-time by shell completion scripts. ### Changed - The `-O/--diff-opts` flag now allows both multiple space separated opts in one value as well as multiple occurrences of `-O/--diff-opts` on the same command line. This behavior is compatible with the Python implementation. - `stg series` help output splits options into a few sections. - Dependencies are updated to more recent versions in Cargo.lock. ### Fixed - `stg edit --set-tree` no longer causes the interactive editor to be implicitly invoked. - Repair build for non-Linux unix targets (including MacOS) and Windows targets. - Avoid case insensitive patch name collisions. On operating systems with case-insensitive paths, patch names that only differ by case lead to patch reference collisions. StGit now ensures that patch names are distinct under case insensitive comparisons. - Add missing `-t` short option for `--set-tree` for `stg edit`. - Add missing `-k` short option for `--keep`. ## [2.0.0-alpha.0] 2022-05-17 ### Removed - `stg edit` no longer accepts `-O/--diff-opts`. Custom diff options is in conflict with editable diffs since many (most?) diff options cause the diff to no long be applicable. - `stg files` no longer accepts `-O/--diff-opts`. This option was of marginal value since it only had a possible side effect when `--stat` was being used. - `stg clone` is removed (at least for the time being). Use `git clone` and `stg init` instead. - `stg mail` is removed, but will be re-added or replaced prior to the 2.0.0 release. ### Added - `stg new --refresh` allows a new patch to be refreshed with changes in one step. The `-i/--index`, `-F/--force`, `-s/--submodules`, and `--no-submodules` options from `stg refresh` are also available to `stg new`. - `stg id` now accepts the `-b/--branch` option. - `stg spill` replaces `stg refresh --spill`. ### Changed - StGit aliases are now more like Git aliases. Normal aliases refer to StGit subcommands, but aliases prefixed with '!' are shell aliases that may run arbitrary commands. An example normal alias would be `git config stgit.alias.list 'series --description --empty'`. An example shell alias would be `git config stgit.alias.st '!git status --short'`. - The `--ack` and `--review` options now optionally take a value. The `--ack-by` and `--review-by` options are deprecated. - Commands such as `stg goto`, `stg push`, and `stg pop` now require full/correct patch names on the command line and no longer accept unambiguous patch name prefixes. When an inexact patch name is provided on the command line, the error message will now indicate similar valid patch names. - `stg branch` output is now generally less verbose. - `stg branch --describe` replaces `stg branch --description`. The `--description` subcommand remains supported as a hidden alias to `--describe`, but the description string must now be provided as its own argument; i.e. `--description="description string"` is no longer supported. - `stg branch --list` now produces colorized output. The `--color` option or `NO_COLOR` environment variable may be used to affect this behavior. - `stg branch --rename` now supports renaming regular git branches in addition to StGit-enabled branches. - `stg clean` now uses `-A` and `-U` short options for `--applied` and `--unapplied` instead of `-a` and `-u`. This is done for consistency with `stg series` and `stg show`. - `stg import` now only recognizes compressed patches by their file extension (`.bz2` or `.gz`) and no longer attempts to decompress using all known decompressors. - `stg import` support for compressed input files is selectable at compile time using the `import-compressed` feature. - `stg import` support for importing from a URL is selectable at compile time using the `import-url` feature. - `stg log` now colorizes output by default. The `--color` option or `NO_COLOR` environment variable may be used to affect this behavior. - `stgit.new.verbose` changed to `stgit.edit.verbose` and now affects edit behavior for `edit`, `refresh`, and `squash` along with `new`. - `stg new` now accepts `-e/--edit` and `-d/--diff` instead of `-v/--verbose` - `stg pick` now allows a mix of commits and patches to be picked whereas previously only a single commit xor multiple patches could be picked. - `stg pick` now performs a single stack transaction for all the picked patches/commits instead of one transaction per pick. - `stg rebase --interactive` the "squash" and "fixup" instructions may no longer be applied to the first patch in the instruction list. The stated semantics of both "squash" and "fixup" is that they squash the labeled patch with the preceding patch, which is not possible/valid when there is no preceding patch. - `stg refresh` no longer has the `--spill` flag. Use `stg spill` instead. - Updated colorized output for `stg series`. - `stg series` now requires patch range arguments to be both in-order and contiguous. Constraining patch ranges in this manner ensures that the output from `stg series` is always a valid/correct view of a subset of the series. - `stg show` diff can now be limited to certain paths by specifying path limits on the command line. - `stg show` diff output respects the `--color` option. - The new `--signoff` patch edit option supersedes the deprecated `--sign` and `--sign-by` options. `--signoff` without its optional value does the same thing as `--sign`, while `--signoff=<value>` does the same thing as `--sign-by=<value>`. - `stg squash` now allows the full suite of patch edit options, including `-d/--diff`. Previously only a few message-related options were available. ### Fixed - `stg branch --create` inherits the current branch's remote branch configuration, if available. The Python implementation had an apparent bug that prevented inheriting the remote branch configuration when creating from the current branch. ## [1.5] 2022-01-28 ### Removed ### Added - Add Makefile targets for installing shell completions - `stg rebase --interactive` learns 'hide' instruction ### Changed - Picked patch names are preserved when possible (#175) - Replace `--unapplied` option with `--noapply` for `stg pick` (#174) - `stg pick --noapply` no longer reverses patch order (#174) - Use `stg version` uses `sys.executable` to get Python version. ### Fixed - Repair `stg repair` with amended first patch (#163) - Repair corner cases where invalid patchnames could be generated by `stg new`, `stg uncommit`, etc. (#176) - `stg mail` could crash due to a misspelled reference (#178) - Zsh completion for `stg refresh -p` now completes against all patches (not just applied patches). - Zsh gains missing completion for `stg push --noapply` - Minor repair to help for `stg float --noapply` and `stg push --noapply` - Restore `stg sink --nopush` capability. ## [1.4] 2021-10-27 ### Removed - Python 3.5, which became EOL 2020-09-13, support is deprecated and will be removed in a future StGit release - Python 3.6, which will be EOL 2021-12-23, support is deprecated and will be removed in a future StGit release ### Added - The new `stg import --message-id` option causes the Message-ID from imported emails to be included as the Message-Id trailer in the patch description (#42) - The new 'stgit.import.message-id' config option also enables the Message-Id trailer (#42) ### Changed - `stg import` no longer creates "Message-Id" trailer by default when importing patches from email (#42) - StGit works with Python 3.10 - `stg version` prints a more abbreviated Python version - `stg commit` will no longer commit empty patches by default; the `--allow-empty` option may be used to override this behavior (#158) - The `stgit.main.main()` function now takes an argv parameter and returns an int return code in most cases instead of calling sys.exit(), thus making main() a bit easier to use as an API. ### Fixed - Repair stack upgrade with `stg branch --list` (#155) - Repair crash in `stg squash` with out of order patches and no name specified (#157) - Zsh completions learn `stg float --noapply` option - Zsh completion for `stg sink` now allows multiple patches ## [1.3] 2021-09-26 ### Removed ### Added ### Changed ### Fixed - Repair crash regression when using `stgit.autosign` ## [1.2] 2021-09-26 ### Removed ### Deprecated - Python 3.5, which became EOL 2020-09-13, support is deprecated and will be removed in a future StGit release - Python 3.6, which will be EOL 2021-12-23, support is deprecated and will be removed in a future StGit release ### Added - `stg rebase ` learns `--interactive`; easily re-order, edit, squash, fixup, or delete patches via your editor - `stg rebase` learns `--autostash`; stash changes before the rebase and apply them after. Also configurable with the `stgit.autostash` configuration option - `stg edit` can now rename patches (#119) - `stg edit` gains helpful instructions (#138) - `stg new` learns `--verbose`, which includes a diff in the editor window (similar to `git commit --verbose`). This behavior is also configurable with the `stgit.new.verbose` configuration option - `stg push` and `stg float` learn `--noapply` option; allows patches to be reordered without updating worktree and deferring merge conflict resolution (#144) - `stg edit`, `stg refresh`, and `stg new` learn the `--sign-by`, `--ack-by`, and `--review-by` options which allow those respective trailers' values to be specified by the user on the command line (#92) ### Changed - Stack metadata version 5; stack metadata is moved from `refs/heads/<branch>.stgit` to `refs/stacks/<branch>` and the stack metadata file now uses a JSON format instead of the prior custom format; the stack metadata will be upgraded to v5 on first use of this version of StGit; like all stack metadata upgrades, **this is a one-way auto-upgrade for existing stacks** (#65) - Use setuptools instead of distutils for packaging - No git or python version checks in setup.py - Use different dynamic versioning system - Install `stg` executable as console_script entry point - More sophisticated search for bash.exe on Windows when running hooks - The editor window text for `stg squash` has been modified to mirror git's behavior -- the squash edit message now includes all commits (#71) - Binary diffs are no longer shown when with `stg edit -d` - Multiple trailers can now be added at once; this is now allowed, for example: `stg edit --sign --review --ack` - Update zsh completion for `stg rebase` to show local and remote heads (#102) - Zsh completions for commands with patch arguments now comprehend the effect of `-b/--branch` and `-B/--ref-branch` - Zsh completions now guard patch names--one less TAB press to complete patch names in certain contexts - `stg import` now extracts the `Message-ID` email header into the patch message (#42) ### Fixed - Repair crash when attempting to export empty patch (#112) - Exact command name matches are unambiguous (#110) - Exiting with an empty `stg edit` editor will now abort the edit; previously it would delete your commit message. (#138) - Repair completions when stg.series.description is enabled in config - Workaround child process reaping race on Windows (#78) - Repair crash with `stg float --series` when bad patch name in series - Repair zsh completion for `stg float` to accept multiple patch names - Repair zsh completion for changed files, affecting `stg refresh` and `stg diff` ### Internal - Add link to coverage.io project to CONTRIBUTING.md - Set smart `exclude_lines` default for 'coverage' - Expanded test suite for `stg edit` - Add pkgtest.py script to help test StGit packaging - Cleanup .gitignore files ## [1.1] 2021-04-30 ### Removed ### Added - StGit GPG-signs patches when `commit.gpgsign` is set (#12) - Support `core.hooksPath` in git config - Add `-C` option for `stg import` and `stg fold` (#18) ### Changed - Allow importing mail and series from urls (#94) - `stg refresh --edit` may also use `--diff` and `--diff-opts` (#98) - `stg goto` allows sha1 of a patch instead of patch name (#93) ### Fixed - Repair hang in `stg pull -m`, `stg goto -m`, and `stg push -m` - Repair `stg mail` to show diffstat of whole series (#104) - Repair MANIFEST.in to include AUTHORS.md and README.md files ## [1.0] 2021-02-07 ### Removed - Drop support for Python < 3.5 - Remove previously deprecated `stg publish` command - Removed contrib scripts: `stg-swallow`, `stg-fold-files-from`, `stg-dispatch`, `stg-whatchanged`, and `stg-show-old` ### Added - The pre-commit hook is now run for `stg refresh` - New `--spill` option for `stg refresh` - Add stgit.series.description config option (#88) - Official support for Python versions up to 3.9 ### Changed - Stack metadata format 4. All metadata now kept in Git objects; no more stack state files in .git/patches. **A one-way auto-upgrade to format version 4 will occur when StGit commands are run on an existing StGit branch.** - Use `python3` in shebangs instead of `python` - `contrib/stgbashprompt.sh` is no longer executable - Internal docstrings now use reStructuredText instead of Epytext ### Fixed - Importing large patches is much, much faster (#66) - Other performance improvements when dealing with large patches - Repair diffstat when outside work tree root (#62) - Use encoded (string) environment variables on Windows (#79) - Fix `stg pull` when no upstream is configured (#83) - Fix `refresh` crash with path limiting and files added to index (#85) - Repair `new` with patchdescr.template crash (#87) - Repair `log` from worktree subdir with patches specified - Repair `import` allowing/generating duplicate patch names (#64) - Repair `mail --auto` to strip comments after addrs (#91) ## [0.23] 2020-06-12 ### Removed - Drop support for Python 3.3; Python 2 (2.6 and 2.7) remain deprecated, but supported for one last release - Tutorial is removed; it now exists as part of the website ### Deprecated - Python 2.x support is deprecated and will be removed in a future release ### Added - Support html5 output of docs from asciidoc - Add `--expose` option for `stg pick` to allow picked commit message to be customized ### Changed - Limit mail diffstat to 72 columns - Added pyproject.toml file for black configuration - Minimum Git version is 2.2.0 - Quote stg and subcommand in man page synopsis - Replaced RELEASENOTES with this CHANGELOG.md - Replaces Documentation/SubmittingPatches with CONTRIBUTING.md ### Fixed - Repair MANIFEST.in and generated source dist - Repair importing mail with ": " (colon space) in subject - Fix mail cover letter shortlog - Fix mail cover letter diffstat - `stg series` now only outputs colors when `isatty()` - Repair mail SSL check (#57) - Repair `stg mail` with both `-a` and `-e` options (#58) - Remove empty short-opt for `--no-submodules` of `stg refresh` - Repair build.py for Python 2 with explicit `flush()` - `stgit.refreshsubmodules` added to sample gitconfig ### Internal - Update docs build system from upstream Git docs - Use coverage contexts to map commands to covered lines - Improve mail tests - Use GitHub Actions instead of TravisCI - Format StGit source using black formatter ## [0.22] - 2020-03-02 ### Removed - Remove debian packaging; downstream Debian uses its own anyway ### Deprecated - Python 2.x support is deprecated and will be removed in the next StGit release - `stg publish` is deprecated and will be removed in the next StGit release ### Added - `stg import` has new --keep-cr option, like `git mailsplit` ### Changed - `stg new` now includes patch name in log message - `stg branch --rename` can now rename the current branch - `stg branch --create` now works even if the workspace is dirty, consistent with `git checkout` - `stg branch --description` now works on both regular and stgit branches - `stg edit --diff` now implies `--edit` - `stg refresh` and `stg edit` now reset the committer information, consistent with `stg push` - git notes are now preserved when patches are modified - Tutorial improvements - Many additional tests and test improvements - All stgit commands now use "new" git library infrastructure ### Fixed - `stg branch --create` inherits remote correctly from parent committish - Patch names are checked earlier to avoid inconsistent stack states - Improved commit data parsing and handling of non-UTF8 encodings - Repair git error messages when checking stgit version from outside a git repo ## [0.21] - 2019-10-28 ### Changed - Faster handling of large patches (#44) ### Fixed - Build reproducibility repairs (Thanks reproducible-builds.org team!) - Python can now be run with optimizations (`python -O`) - `stg log` now prints trailing newline - Improved command line option parsing for `stg log` ## [0.20] - 2019-10-04 ### Added - `stg patches -d` can now output colored diffs. - `stg publish --overwrite` allows branch to be overwritten instead of creating new commits. - `stg log --clear` deletes the stack's log history. Use with caution. - Fish shell completions for stg. - Zsh completions for stg. - `stg mail --domain` option overrides the host's domain in the message ID. ### Changed - Branch protection metadata now captured in config instead of .git/patches/<branch>protect file. This updates stgit's metadata format from v2 to v3. - `stg diff` no longer shows binary diffs by default. Use `-O--binary` or add `--binary` to stgit.diff-opts in config. - Diagnostic output is now routed to stderr instead of stdout. Diagnostic output is also now sent to stderr unconditionally, i.e. no more isatty() test (#35). - Converted to "new" lib infrastructure: `show`, `patches`, `diff`, `pick`, `pull`, `rebase`, and `fold`. ### Fixed - `stg show` detects conflicting --applied and --unapplied options. - `stg show --stat` now shows commit headers. - `stg patches --diff` now shows proper diff instead of `b'...'` repr of diff. - `stg diff --range` detects some invalid values (e.g. `-r ..`). - Date parsing is now more portable, only use platform specific `date` as last parsing option. Affects, e.g., `stg refresh --authdate`. - Repaired search path for templates to avoid looking in Python site-packages directory. - Ensure stdout and stderr are flushed. Rarely affected `stg diff`. - `stg repair` will now fail if extra command line arguments are provided. - Bash completions are now generated in a reproducible manner. - `stg edit --diff` on an empty patch no longer crashes. - `stg pick` no longer fails when picked commit has empty message (#39). - `stg rebase` no longer crashes when there are conflicts (#34). - `stg pick` no longer crashes if --name is not provided when picking a regular commit object. - Improved test coverage for: branch, diff, pick, sync, - New tests for: files, patches, fold, series - Portable use of iconv, sort, and sed in tests. - Linting using flake8 and isort. - All Python code now conforms to PEP-8. - Updated test infrastructure from git 2.20. - Parallel tests with coverage (`make -j4 coverage`) now works. - Documentation build is not included in code coverage. - Repaired log end messages when using `STGIT_SUBPROCESS_LOG=debug`. - Renamed "dunder" instance attributes to improve debugging. - Fail faster when patch name has slash ('/') (#24). ## [0.19] 2018-11-05 ### Changed - Python 3 support. StGit supports Python 2.6, 2.7, 3.3, 3.4, 3.5, 3.6, and 3.7. PyPy interpreters are also supported. - Submodules are now ignored when checking if working tree is clean. Submodules are also not included by default when refreshing a patch. - Config booleans are now parsed similarly to git-config. - `contrib/stgit.el` is now licenced with GPLv2. - Add continuous integration (travis-ci) and code coverage (coveralls) support. - Many new test cases were added. ### Fixed - Repair handling of emails with utf-8 bodies containing latin-1 characters. Also correctly decode email headers containing quoted encoded words. - StGit's version is now correct/available in the release archive. ## [0.18] 2017-08-14 ### Added - `commit-msg` hook support for easier integration with Gerrit, allowing a Change-Id line to be inserted in the commit message - `stg mail` improvements for 'Suggested-by:' tag and auto generation of Cc for the cover letter based on all tags in the series - `stg mail` bash completion for the --to, --cc and --bcc options based on the content of the [mail "alias"] section of Git configuration - `stg edit --review` option to add a 'Reviewed-by:' tag - `stg pop --spill` functionality to allow popping a patch from the stack while keeping its modification in the tree ### Changed - Project page details updated (gna.org has been shut down) ### Fixed - Various fixes and test coverage improvements
1.9.3 Upgrade and pin Textual at 0.74.0. Simplify text area theme naming conventions. fix: Ensure response status code border text is styled using the theme. fix: Ensure text area theme automatically updates when command palette is used to change theme. 1.9.2 Fix check for missing colors in xresources by @SqrtMinusOne in #64 1.9.1 Fix crash in auth form. 1.9.0 User defined themes New configuration options Fixes Testing
- Fix GetCDPSession, and likely other things passing objects around to each other - Fix #62 - Explosion when running reap_playwright_servers, thanks to Keith Carangelo - Fix issue working with some methods that take multiple arguments, thanks to Keith Carangelo - chdir to tmpdir when daemonizing to fix users without access to / - Fix #64 - Prevent explosion during global destruction due to UA disappearing
From Iris via pkgsrc-wip. Changelog from 2.9.27 to 2.9.28: 8f4e86ca Version 2.9.28 c6c3823b Added Sven Höxter to aboutDialog for his patches cba17cc6 Feature: link app icon as a mimetype icon for the hicolor default theme (#109) 01aae901 Fix: do not install manpage in doc dir (#107) 201ca770 Bugfix: Open french documention if required 97e0e837 Spelling fix: remove duplicate word (#108) 1a3d001d Spelling fixes (#105) 7eb79dde Desktop file improvements (#106) 92a762ed Merge branch 'release' of github.com:insilmaril/vym into release d9d7b12a Updated project name 5248d9a0 Fixed typo in version number 0e87888d Updated year in README.md acdf0677 Updated release notes -- Release notes VYM - View Your Mind The lists below shows differences between vym 2.8.0 and the latest 2.9.x version. Feel free to report any bugs or feature requests on https://github.com/insilmaril/vym/issues Thanks for using vym! Uwe Drechsel - May 2024 Version 2.9.27 Bugfixes Bugfix: Markdown improvements by Markus Seilnacht Bugfix: Allow saving of readonly maps Bugfix: Use vymBaseDir when setting up libreoffice export Bugfix: Resetting task delta prio not limited to visible tasks Version 2.9.26 Features Feature: #87 Enable Crtl modifier for macros triggered by function keys. Feature: Set last export type to "Update" after successfully "Creating" Confluence page Feature: Updated status bar messages when loading/saving maps Feature: #91 Update Italian translation Feature: Dropped URLs are truncated at start of parameters Bugfixes Bugfix: Minor typo in German translation Bugfix: Minor typo in Confluence settings dialog Bugfix: Pasted text URLs in a heading no longer create URL in branch Bugfix: #90 Disable BSP indexing to avoid crashes Bugfix: #88 Improved ASCII export Changes Change: Removed or changed shortcuts with ALT Version 2.9.22 Features Feature: Support multiple Jira instances with specific authentication methods Feature: Floppy disk icon for unsaved maps better visible, if active Feature: Upload images also for new Confluence pages Feature: New commands to control visuals of selection box Feature: added script to set colors of selection box for dark theme: demos/scripts/setSelectionBoxDarkTheme.vys Feature: Center on selection and fit to view with Key_Period + Key_Shift Feature: Delete vymLink with Ctrl-Shift click Feature: Scale pasted images to 300px width Feature: Define pen color, width and brush for selection box setSelectionPenColor setSelectionPenWidth setSelectionBrushColor Feature: Option to 'never' use dark theme Feature: Support Personal Access Tokens for Jira and Confluence Feature: Improved animated centering on selection (Shortcut: Key_Period) Feature: For multiple selected items show count in status line Feature: Scale images on the fly This allows to paste and shrink images (Ctrl + "-"), but when zooming in the images are not pixelized, but still have original resolution. Storing e.g. screenshots is more efficient this way. Bugfixes Bugfix: Creating Confluence page without attachments Bugfix: Icon and status of view icons Bugfix: disabled all icons when no map is available. Bugfix: Fixed layout of dialog for Confluence export Bugfix: Improved adding new branches at border of current scene Bugfix: Urls and VymLinks shown again in statusBar Bugfix: Wrong positon of selection box of xlinks control points, resulting in crazy scrolling, when control point is selected. Bugfix: #79 quell linking error (#79) Bugfix: Set selection background color in TreeEditor Bugfix: Also center on selected branch when using HeadingEditor while editing a heading Bugfix: Save colors of headings Bugfix: Editing long plainText headings might open HeadingEditor Bugfix: #65 and #71 Colors in NoteEditor with RichText Bugfix: #76 Editing heading of zoomed in view causes panning Bugfix: When zooming in/out using mouse wheel don't change rotation Bugfix: Background colors in HeadingEditor Bugfix: #40 Editing PlainText headings with linebreaks Bugfix: #75 TreeEditor and Linebreaks in headings Bugfix: #73 Default maps should not have word default in MapCenter Bugfix: #72 Improved support to load new default maps Bugfix: #74 HTML export uses word wrap for PlainText notes Bugfix: Update HeadingEditor for RichText heading, when frame background changes Bugfix: Update color and heading of HeadingEditor Bugfix: #70 HeadingEditor doesn't use map background when switching on RichText mode Bugfix: #70 settings override macroPath, if local option is used "-l" Bugfix: #68 HeadingEditor doesn't update after in MapEditor Bugfix: Consider zoomFactor after load when scrolling to selection Bugfix: Set color and width of legacy xlink Changes Change: Use Control modifier instead of Shift to only move MapCenter Change: Compatibility with 2.9.514: Some elements can be read, even if vym Version 2.9.2 Bugfixes Bugfix: #64 Read notes correctly from (very old) maps Version 2.9.0 This version provides bugfixes and some new features. The biggest and most visible changes are dark theme support and an extended color bar to select colors. The platform support has been improved, native Mac version is available (again) and also binaries for various Linux flavors. See the README.md for details Features Feature: Dark theme Feature: Increase max. number of recent maps to 20 Feature: Reset priority delta for visible tasks (all maps) Feature: Toggle target for multiple selected items Feature: Copying and pasting between vym instances and pasting images Feature: Added desktop files for easier packaging accross Linux distros Feature: Larger font size for editing headings on WIndows Feature: Scripting commands to edit heading and get depth of branch Feature: Introduced colors toolbar (#39) Feature: Use expand macro in Confluence export for scrolled branches Feature: Move branches diagonally with Ctrl-PageUp/Down Feature: Enable openSSL on Windows Feature: Add information from JIRA as attributes Feature: Toggle flag for multiselection Feature: Confluence and JIRA support Feature: Cycle tasks by clicking status in taskeditor Feature: Cursor up/down + Shift-key can be used to select multiple branches Feature: Updated translations for Greek and German Bugfixes Bugfix: #52 Saving part of map overwrites original map Bugfix: #48 lockfile cannot be renamed on Windows Bugfix: Read map attributes for default map Bugfix: Create translation files during build Bugfix: German translation to show keyboard macros in help menu Bugfix: Set URL when getting Jira data Bugfix: Use mapname and correct postfic when exporting Bugfix: #25 treeEditor opens when pasting images Bugfix: less compiler warnings related to deprecated Qt Bugfix: Restore state of treeEditor and slideEditor from settings in map after load Bugfix: Don't set URL for Jira ticket, if Jira pattern is not known Bugfix: Umlauts when exporting to a Confluence page Bugfix: undo/redo when toggling task via F12-macro Bugfix: Allow selecting text while editing a heading in QLineEdit Bugfix: Remove invalid QModelIndex warning when relinking images from mainbranch to center Bugfix: Avoid jumping of view when adding branches to center" Bugfix: Reset current text format when switching from RichText to PlainText Bugfix: Unused duplicate branchPropertyEditor dockwidget removed Bugfix: Setting for Windows data-root directory (#36) Bugfix: vymBaseDir improvements (#34) Bugfix: Don't trigger reposition when selection changes Bugfix: Relink branches and keep parent Bugfix: set CMAKE_INSTALL_DATAROOTDIR (#24) Bugfix: #31 Confluence export missing siblinigs of hidden first branch Bugfix: #26 tabname for save but unchanged maps does not update Bugfix: Getting user info from Confluence Bugfix: Freemind import Bugfix: exportLast of Markdown export Bugfix: piping plaintext mails from mutt into note Bugfix: Cycling tasks in taskeditor Bugfix: Links to images (color and hiding) Bugfix: Don't give up on unknown tags when importing Freeplane Bugfix: Remove unnecessary columns from taskeditor Bugfix: #14 Packaging for openSUSE: Set vymBaseDir correctly Bugfix: Trash button in NoteEditor Bugfix: vym crashed, when cursor left/right was used and multiple branches were selected Bugfix: Copy to new map Bugfix: crash while checking an empty directory (#9) Changes Changed: Settings for JIRA and Confluence Changed: Moved functionality of recover session into restore ression Changed: Sleeping tasks keep their priority (Before prio was lowered and sleeping tasks dropped to bottom.) Changed: Removed unused Bugzilla script Changed: Builds now use cmake Release notes View Your Mind - vym 2.8.0 This version provides bugfixes and some new features. The biggest and most visible change are the (mostly) reworked and now scalable icons in mind maps. At least on Linux you now can also connect to JIRA and Confluence and retrieve data, but also create or update Confluence pages. A brandnew feature is the (experimental) support to import and export Firefox bookmarks - very handy to sort bigger bookmark collections. Scripting still is considered as Technology Preview - APIs still might change in upcoming versions, when vym will be based on Qt6. Just check out the keyboard macros for F01 to F24 or also the example scripts. The lists below list differences between vym 2.7.0 and 2.8.0. Feel free to report any bugs or feature requests on https://github.com/insilmaril/vym/issues Thanks for using vym! Uwe Drechsel - April 2021 Notes: Some function keys have changed, e.g. Shift-F8 for toggling frames to include children File format has changed within the vym files CDATA is no longer used, but <vymtext> and <heading> use attributes now for texts. Vym versions below 2.7.566 cannot read newer maps Removed support for Bugzilla Removed support for SUSE FATE tool Removed dependency on 7z on Windows platform Removed setting to edit branch after creating Various optimizations, e.g. when updating map when NoteEditor changes Removed unused windows code Updated code to Qt 5.14 Reorganized source code, moved it to github and applied coding style using clang-format Detailed list of features Feature: Improved presentation mode and added projector icon Feature: Added recover option (--recover) Feature: Allow cursor positioning during edit of heading Feature: Allow middle mouse for pasting while editing heading Feature: Alternatively pan view using middle mouse button Feature: Basic editing of tasks in TaskEditor Feature: BranchPropertyEditor show sleep time Feature: Initial Confluence support (on Linux) Create new Confluence pages Get Confluence username and use in export (experimental) Native Confluence Agent to retrieve page name Feature: Dialog to enter credentials for Confluence Feature: Drag drop in TaskEditor for repriorization Feature: Editing in TreeEditor Feature: Hide less popular standard flags if not used in a map (Present, rose, phone, clock) Feature: Icons for filters in taskeditor Feature: Improved editing in TaskEditor Feature: Improved handling of modifiers Feature: Improved winter mode Feature: Import and export of Firefox bookmarks (experimental) Feature: Internal testsuite prepared Feature: Load default map instead of creating it Feature: More verbose status message for toggling frames when using function keys Feature: Most of the flags have been reworked and are scalable vector graphics now Feature: Repeat last command in map using F8 Feature: Save as default map Feature: Select images using cursor left/right in MapEditor Feature: Set sleep time weeks with 'w' Feature: Setting for margin when scrolling to selection Feature: Shortcut Shift-G to goto linked map Feature: Show Delta Priority in TaskEditor Feature: Show Task modification times Feature: Show file location in properties dialog Feature: Show flags in taskeditor Bugfixes Bugfix: Collapse selected branch using "<"-key Bugfix: Better placement of flags toolbars for new user Bugfix: Comment in map properties no longer saved as HTML Bugfix: Compiler warnings Bugfix: Correctly read task modification time from file Bugfix: Crash when exporting HTML Bugfix: Disable user flags toolbar when image is selected Bugfix: Don't save definitions of unused userflags Bugfix: Edit and actually use the correct path for macros Bugfix: Editing of branch heading in heading editor Bugfix: Editor states related to multiple selection Bugfix: Emtpy lines for hidden branches in ASCII export Bugfix: Flag to search notes in FindResultWidget Bugfix: For non-sleeping tasks display "-" in table as sleep time Bugfix: Function key F4 not executing related macro Bugfix: HTML export for svg- and userflags Bugfix: History of changing RichText notes in editor Bugfix: History of editing notes and headings Bugfix: Inactive NoteEditor in some cases Bugfix: Modifier for modModes is SHIFT, not CTRL. Bugfix: Opening default map, but without existing file Bugfix: Reenable context menu in TaskEditor Bugfix: Removal of temporary files on Windows Bugfix: Repeat toggling target with F8 Bugfix: Ruby testsuite Bugfix: Select new tab after creating new map Bugfix: Shortcuts for formats in TextEditor Bugfix: Tests related to changing (named) flags Bugfix: Undo of setting task to sleep Bugfix: Undo/redo toggling flag Bugfix: Update HeadingEditor after reselect and undo/redo Bugfix: Update confluence script Bugfix: Waking up of sleeping tasks is visible again Bugfix: Warning when saving uncompressed map Bugfix: application to open external links Bugfix: libpng warning Bugfix: svg flags not displaying correctly Bugfix: toggling target was not saved Bugfix: use most important shortcuts also in TreeEditor
# backports 1.5.0 * Added backport for the null-coalesce operator `%||%` for R versions prior to 4.4.0. * `lengths()` now also works for long vectors (#64, thanks to @HughParsonage)
The pip2 and pip3 aliases are widely used aliases which make sure the
specific major version is used.
https://packages.debian.org/buster/all/python-pip/filelist
https://packages.debian.org/pl/sid/python3-pip
https://packages.debian.org/pl/sid/all/python3-pip/filelist
With this patch the alternate pip2 and pip3 wrappers are introduced.