forked from NetBSD/pkgsrc
-
Notifications
You must be signed in to change notification settings - Fork 50
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
mosh on darwin not working #60
Comments
jperkin
pushed a commit
that referenced
this issue
Jan 15, 2018
Changes: 1.1.2 ----- * Added support for: * `puremashiro` (#66) * `idolcomplex` * Added an option to filter reblogs on `tumblr` (#61) * Added OAuth user authentication for `tumblr` (#65) * Added support for `slideshare` mobile URLs (#67) * Improved pagination for various ...booru sites to work around page limits * Fixed chapter information parsing for certain manga on `kissmanga` (#58) and `batoto` (#60)
netbsd-srcmastr
pushed a commit
to NetBSD/pkgsrc
that referenced
this issue
Jan 17, 2018
I've pushed a fix for this. To work around issues like this in the future (after letting us know about them so we can continue to fix!) you can use e.g. "pkg_add -U mosh" to force the rebuilt package to be pulled in with the correct dependencies. |
jperkin
pushed a commit
that referenced
this issue
Jan 28, 2018
Version 1.1.0 (2017/11/27) -------------------------- - Fixed entries sorting when generating mo file (Fixes #78) - Fixed find method (Fixes #84) - Refactored POEntry.__cmp__ method (this should fix issues #60, #65 and #79) - Fixed duplicated entries when merging po file with pot file (fixes #68) - Fixed "None" string being outputted when polib deals with syntax error in string (Fixes issue #66) - Added a fuzzy property to entries (Fixes #76) - Take into account the message context when comparing entries - Leave occurence untouched if line number is not a number (fixes #80 and #90) - Fixed test for mo files that was failing because since gettext version 0.19.8.1, msgfmt skips the "POT-Creation-Date" metadata entry (Fixes #86) - Fixed major revision number comparison - Dropped python 2.4 support
jperkin
pushed a commit
that referenced
this issue
Feb 28, 2018
pkgsrc changes: - reuse the github framework - disable -Werror - set -D_NETBSD_SOURCE for NetBSD, this is required for obtaining pthread_condattr_setclock(3) and pthread_condattr_getclock(3) on NetBSD compiled on version <8.0 (bug in a header) - switch from ffmpeg2 to ffmpeg3 - add a workaround for a detector of ffmpeg in a homegrown dependency detector, this hardcodes paths to headers and libraries of ffmpeg3 upstream changelog ================== Version 4.3.0 (2015-05-25) player: Add support for "exact mode" - re-opens the audio device when a buffer is encountered that does not match the open audio device's sound parameters. build: Simplify cmake find modules. Add const qualifier to some fields and functions. metadata example: print the number of channels. Add documentation. Add more channel layouts. build: Compile in Debug mode by default. Version 4.2.1 (2014-10-07) updating metadata: set time_base on stream not the codec libav lockmgr: set mutex pointer to NULL on destroy fix build on GNU/hurd Version 4.2.0 (2014-09-25) build: remove bundled dependencies build: simpler cmake find modules, both code and license player: add shim to fix build failure on OSX Version 4.1.1 (2014-06-20) playlist: fix race condition which can cause decoder to hang dummy player: fix timing issues Version 4.1.0 (2014-06-13) playlist: added groove_playlist_set_fill_mode. Allows you to choose between buffering until all sinks are full and buffering until any sinks are full. Version 4.0.4 (2014-06-03) Fixed a race condition where seeking to a different playlist item and then back would have a window of time where it could report the wrong position. Properly play and pause network streams. Version 4.0.3 (2014-05-31) build: update bundled libav to latest stable 10 release build: link player with -lrt for clock_gettime. closes #67 playlist: fix case where filter graph was not being rebuilt. closes #65 playlist: fix race condition segfault when attaching a sink encoder: properly reset encoding when flush or playlist end is encountered. closes #66 Version 4.0.2 (2014-05-20) player: thread cleanup only if thread was initialized - fixes potential crash on player detach build: look for includes in the current source tree. Fixes an issue when a previous version of the library is installed. build: on unix link with -lm Version 4.0.1 (2014-05-13) groove_playlist_get_position: always set seconds even when item is NULL playlist: correct generation of the sink map fixes potential error when adding multiple sinks optimizes some cases where sinks can share filter graph chain dummy player now uses disable_resample optimization dummy player: avoid floating point error accumulation Version 4.0.0 (2014-05-12) GrooveBuffer struct contains the presentation time stamp move include statements to outside of extern C ability to set true peak on playlist items. closes #50 support per-sink gain adjustment. closes #41 GroovePlaylist: volume renamed to gain groove_playlist_set_gain renamed to groove_playlist_set_item_gain groove_playlist_set_volume renamed to groove_playlist_set_gain player: specify device by index rather than name. closes #44 player: ability to attach a dummy player device. closes #60 fingerprinter: encode/decode return 0 on success, < 0 on error fingerprinter: info struct contains raw fingerprint instead of compressed string. closes #61
jperkin
pushed a commit
that referenced
this issue
Mar 14, 2018
1.5.2 2018/02/04 Development Fixes * Test against Ruby 2.5 (#68) 1.5.1 2017/12/03 * Security: Bump Rubocop to 0.51 * Style: Define path with __dir__ (#60) * Style: Inherit Jekyll's rubocop config for consistency (#61) * Dev: Update Travis config (#62) - Drop support for Jekyll 2.x and Ruby 2.0 * Dev: Fix script/release
jperkin
pushed a commit
that referenced
this issue
Sep 24, 2018
v2.2.13 (2018-07-12) Merged Pull Requests * Avoid converting to text representation when parsing JSON/TOML/etc #66 (lamont-granquist) v2.2.12 (2018-07-06) Merged Pull Requests * add is_default? inspection method #65 (lamont-granquist) v2.2.11 (2018-07-02) Merged Pull Requests * key? and has_key? should find subcontexts #64 (lamont-granquist) v2.2.10 (2018-07-02) Merged Pull Requests * remove hashrocket syntax #62 (lamont-granquist) * add #key? alias to #has_key? #63 (lamont-granquist) v2.2.8 (2018-06-13) Merged Pull Requests * fix style warnings with latest rubocop #60 (thommay) * Fix config_context_list/hash in strict mode #57 (elyscape)
jperkin
pushed a commit
that referenced
this issue
Feb 7, 2019
Atheme Services 7.2.9 Release Notes =================================== This is a security release fixing use after free that could potentially be abused by an attacker already having the privilege to use SASL impersonation to cause a denial of service. Users of 7.2.8 should update to version 7.2.9; older releases are not affected. Atheme Services 7.2.8 Release Notes =================================== This is a security release fixing a memory leak that could potentially be abused by attackers to cause a denial of service. Users of Atheme 7.2.7 should update to version 7.2.8; older releases are not affected. Atheme Services 7.2.7 Release Notes =================================== Since late February 2016, Atheme is being brought back to development (managed and maintained by a few of the fork maintainers). Atheme 7.2.7 is the first release since that change. It includes various fixes, some backported from the forks. security -------- - [CVE-2014-9773](https://www.cvedetails.com/cve/CVE-2014-9773/): Remote attackers could modify the behavior of the Anope FLAGS compatibility code by registering the keyword nicks LIST, CLEAR, or MODIFY. Reported by ToBeFree. - [CVE-2016-4478](https://www.cvedetails.com/cve/CVE-2016-4478/): Buffer overflow in XMLRPC code. Reported by hc. nickserv -------- - Make `VHOST` set cloak assigner and timestamp the same way HostServ does - Make `INFO` call the `user_info_noexist` hook for queries that don't match an account - Make `REGAIN` log you in if successful. - Allow implementing custom filters for `LIST` - nickserv/multimark: new module which allows multiple MARK entries per nickname. - wallops when vhosting a marked account - nickserv/vhost: update usercloak metadata on vhost removal - nickserv/{enforce,ghost}: respect frozen accounts - nickserv/set_accountname: disallow change if RESTRICTed - nickserv/set_pubkey: new module (keeping backwards compatibility with old syntax) - nickserv/set_nopassword: new module - nickserv/{reset,set,send}pass: various fixes - nickserv/regain: the target user's bannedness shouldn't matter - nickserv: Verify that the nick being regained is valid. - nickserv/enforce: prevent regaining reserved nicks - nickserv/cert: Add CLEAR command - nickserv/set_email: relax verification requirements so that typo'd email addresses can be fixed (closes #441) - nickserv/list: new criterion VACATION - nickserv/info: show "Channels" line if the source user also is the target chanserv -------- - Add a `$server:` exttarget accepting server masks - Add `PUBACL` flag which allows the channel access to be public. - Don't allow `DEOP` or `KICK` of a services bot. - Don't try to expand extbans in various commands. - Allow users with +O or +V flags to op/voice themselves, since they can regain op/voice by cycling the channel anyway. - chanserv/clear_akicks: new module providing a `CLEAR AKICKS` command. - Always move on to the next nick in case of an error in /cs op etc. - Tell the user who they failed to op/voice if they don't have enough privs - +e added to chanserv{} templates and founder_flags - chanserv: remove set_founder - chanserv: use myentity_allow_foundership() to control whether or not an entity can take +F (ref #427) - chanserv/set_*: announce changes via verbose() - chanserv/flags: make Anope FLAGS compatibility an option (addresses CVE-2014-9773) - fix an issue where activating a channel in the moderation queue would op the wrong person - chanserv: move libathemecore component of bouncing mode changes on secure channels to chanserv (closes #449) - chanserv/clone: do not clone HOLD, and ANTIFLOOD AKILL flags - MC_SECURE: do not deop services - help: mention INFO instead of RECOVER gameserv -------- - gameserv/dice: make the maximum roll count configurable. groupserv --------- - Hook into `sasl_may_impersonate` to support group-membership checks - groupserv/set_groupname: new module allowing renaming a groupserv group - Added group_register and group_drop hooks (addresses #428) - groupserv: Rewrite flags parser to use ga_flags - groupserv: Fix incorrect behaviour for flags +* - groupserv: Fix inconsistencies with FLAGS - groupserv/main: allow groups to take +F (ref #427) - Add unverified user check helpserv -------- - helpserv/ticket: optionally accept a close reason and send a memo to an offline user - helpserv/ticket: mention possibility of using close reason in the help file, and log it operserv -------- - operserv/rwatch: allow creation of RWATCH rules which k-line if 'K' is a modifier on the provided regexp. - some commands now use kline_add instead of kline_sts to allow easier management of automated klines saslserv -------- - Add support for SASL authorization identities - Add a `sasl_may_impersonate` hook - The DH-AES and DH-BLOWFISH mechanisms were removed in their entirety. - Add support for IRCv3.2-draft SASL mechanism list caching, implemented by InspIRCd 2.2. - saslserv/ecdsa-nist256p-challenge: add backwards compatibility for old pubkey syntax - saslserv: call bad_password on SASL authentication failure - saslserv: use message source to get the source server - saslserv: try to include source host in SASL failure message - SASL: Log mechanism used by authenticated clients alis ---- - Add a `list ... -showsecret` flag (chan:auspex) to list secret channels perl api -------- - Export SaslServ's `sasl_may_impersonate` hook - Forward compatibility for hooks ircd protocol ------------- - Add user flag for tracking external services clients - inspircd: Hopefully fix ignored account names when linking to the network - inspircd: Various improvements to InspIRCd 2.0 support - inspircd: Remove InspIRCd 1.2 and 2.1beta support - inspircd: Add support for rejoindelay property in InspIRCd 2.2 - inspircd: Change the opertype used from 'Services' to 'Service' - ircnet: Implement oper-wallops, using individual notices - ngircd: Enable +qaohv support - ngircd: Ignore non-# channels for now - ngircd: Implement oper-wallops, using individual notices - unreal: Request MLOCK messages when linking to the network - sporksircd: Nuke obsolete module - clean up the mix of spaces & tabs - convert ircd_t to C99 struct syntax - unreal: fix checking of +f syntax - ts6-generic: add DLINE/UNDLINE implementation - ts6-generic: add support for sending mechlists - unreal: Add support for unreal 4 in a separate module - hybrid: remove obsolete module - undernet: remove obsolete module - ShadowIRCd: remove obsolete module - inspircd: add ZLINE/UNZLINE implementation - inspircd: use DELLINE for XLine removal - inspircd: properly recognize CSTATUS_IMMUNE (+Y) - inspircd: Only set hideoper mode on oper pseudoclients - charybdis: Support chm_nonotice.so (Block channel notices) extension - charybdis: Support cmode +M in charybdis and make it oper-only - charybdis: Setting CMODE_IMMUNE as .oimmune_mode - inspircd: Fix atoi logic error preventing maximum rejoindelay value other ----- - various: Fix quite a few resource leaks and possible null derefs - crypto/pbkdf2: Detect malformed (truncated) hashes - contrib/cap_sasl.pl: Import various fixes from freenode's v1.5 - contrib/cap_sasl.pl: Implement SASL EXTERNAL, ECDSA-NIST256P-CHALLENGE - contrib/cap_sasl.pl: Fix crash if irssi has ICB or SILC plugins loaded - contrib/cap_sasl.pl: Fix crash if disconnected while waiting for SASL reply - transport/jsonrpc: new module implementing JSONRPC transport - contrib/cap_sasl.pl: various other improvements - time_format: show the timezone - exttarget: explicitly disallow foundership for exttargets (closes #427) - help: various updates to reflect changes - help: clarify some behavior - [database] Make services respect an external umask when saving - transport/xmlrpc: Do not copy more bytes than were allocated (addresses CVE-2016-4478) - add a user_can_login(si, mu) hook - Add an option to strip build date for reproducible builds - botserv/set_saycaller: (optionally) give caller-nick - chanfix/fix: stay in log channel after fixes - various: code style fixes, fix some memory leaks and some warnings - i18n: mark more strings as translatable - atheme.conf example: updated to reflect changes - proxyscan/dnsbl: Improve the module and fix multiple crashes - i18n: update po/POTFILES.in crypto ------ - argon2d: New module implementing algorithm that won the Password Hashing Competition (2015). - pbkdf2v2: Newer module implementing PBKDF2-HMAC digest scheme with backward compatibility and limited forward compatibility libathemecore ------------- - add dline/undline core interface - user_is_channel_banned(): respect +e if applicable - user_is_channel_banned(): check for voice/op/etc. - do not allow entities under restriction to take +F at all (closes #439) - fix issue where pretty_mask would return host!*@* - chanacs_user_flags(): do not grant effective flags other than +b to unverified users (closes #416). - flags: update_chanacs_flags(): do not assume that a protocol module is loaded. - try_kick(): add support for inspircd-style per-user kick immunity the right way - entity: add new entity validator for taking +F (ref #427) - logger: use ISO 8601 in log files hostserv -------- - hostserv: Remove group-specific offered vhosts when group dropped - Add DROP command - hostserv/request: Ignore request if requested vhost already set Atheme Services 7.1 Release Notes ================================= In addition to assorted bugfixes in various subsystems from 7.0, the following changes have been introduced in 7.1. ircd protocol ------------- - ngircd: New protocol module. - nefarious: Add Nefarious 2 SASL support. - nefarious: Send account timestamp in svslogin. - elemental-ircd: New protocol module. - dreamforge: Remove protocol module. - inspircd: Add support for server-side MLOCK and TOPICLOCK enforcement - inspircd: Add support for matching extbans modifying matching logic - inspircd: Add +H to channel modes - inspircd: Add +X and +w to list-like mode list - ircd-seven: Support charybdis extension cmodes on ircd-seven as well. - ts6-generic: Add support for serverinfo::hidden - unreal: Add support for extbans. - unreal: Add cmode +P for permanent channel. buildsys -------- - MacOS 10.5 required for OS X builds. - V=1 option to make for verbose output. - Allow parallel building, i.e. with -j option. - Dependencies tracked on a per-sourceunit basis - Allow --disable-rpath to modify buildsys param LDFLAGS_RPATH - Install default email templates - Add --with(out)-libmowgli to force use of internal mowgli chanserv -------- - antiflood: New module to react to channel flooding - quiet: Channel statuses are removed from the target user to ensure that the quiet takes effect. - quiet: Allow unquieting improper masks on the quiet list. - quiet: Notify target user when anything changes about them. - quiet: Honor protected mode like with kick/kickban. - quiet: Support IRCDs with quiet extbans like UnrealIRCd and InspIRCd. - flags: New exempt flag +e, split from +r. Databases should be upgraded automatically. - flags: Require FORCE argument and chan:auspex to oper override. - flags: Allow users with +f and +o (+v) to set +-O (+-V) on self. - access: Do not allow changing +F via ROLE command. - Support multiple users as arguments for owner, op, halfop, voice, and quiet. nickserv -------- - sendpass: Accept grouped nicks. - register: Allow any number of emailexempts. - Do net send 'spam' notice if chanserv does not exist. - Add confirmation for badmail:del - listemail: Match on canonical addresses too - info: Show setpass to services admins with user:auspex - info_lastquit: New module to show last quit message in INFO - resetpass: Allow specifying any grouped nickname. - drop: Request confirmation when dropping an account. - access: Allow TLDs - Log sendpass sender and time - Show entity ID in 'ACC' and 'INFO' commands. groupserv --------- - Restrict +f from +F-ing themselves - Prevent +f-F from removing founders - Prevent removing last founder of a group - Make sure +F always have +f - Notify users when they are invited to a group. sasl ---- - Add ecdsa-nist256p-challenge mechanism - Add dh-aes scheme, intended to replace dh-blowfish. - Disable reload capability on all modules. perl api -------- - Add function to return entity ID - Allow sending wallops - Allow setting vhosts - Allow transferring and dropping channels - Change myuser_find to myuser_find_ext to allow lookups by UID. - Add config.xs to retrieve config values from the Perl API - Add functions to channel.xs to register a channel and to retrieve a limit, key, and ts. - Allow channelregistration.xs to get/set flags and get used time - Add registration and last seen time in account.xs email ----- - Put the network name in the subject field of outgoing emails. - Add a module canonicalizing gmail addresses. - Use canonical email addresses when checking for registration limits. libathemecore ------------- - Allow different send and receive passwords for uplinks - Respect founder_flags config setting during channel succession - Denote default crypt provider in version output. - Include reason with kline expiration messages. - Allow customization of the address for email from services. - Add option to kline user@host instead of *@host - Add qrcode API botserv ------- - Blacklist '/' from various fields. - Monkeypatch notice() to rewrite source from chanserv to botserv. crypto ------ - Rename 'fallback' crypt provider to 'plaintext' - Allow crypto modules to be loaded and the database to be updated to the preferred crypto scheme on the fly. - pbkdf2: New module implementing PBKDF2-HMAC digest scheme. misc ---- - xmlrpc: Add metadata accessor - security/cmdperm: New module which dynamically infers virtual permissions, such as command:chanserv:register - alis: Strip mIRC color/control codes from topics. - operserv/clones: Add option to give a few warning kills before applying a k-line - Codebase is stringref clean (GitHub issue #60) - memoserv/delete: Only accept numeric indexes. - chanfix: Allow admins with chan:admin to register regardless of chanfix score. - memoserv: Make inbox size customizable. - Add dragon, a new, modular, ircd link performance benchmarking toolkit. - Flood k-lines use IP address where available instead of hostname. - Add !snotices and !wallops logging targets. - Record vHost assigner and timestamp, and display in NS INFO output. - Contrib modules have their own git repo. - Add a git .mailmap - gameserv/dice: Ensure loop paramaters are integers limited to 1000 atheme.conf ----------- Be sure to check atheme.conf.example for more information on what each of these settings does. - Add 'registeremail' setting to serverinfo{}, specifying address that services emails should originate from. - Add 'hidden' setting to serverinfo{}, specifying that the services server should be hidden in /links output (limited to some ircds). - Split 'password' setting in uplink{} into 'send_password' and 'receive_password' (optional). - Move 'maxnicks' setting from serverinfo{} to nickserv{} - Move 'maxchans' setting from serverinfo{} to chanserv{} - Add 'antiflood_enforce_method' to chanserv{} for chanserv/antiflood - Add 'maxmemos' setting to memoserv{} - Add !snotices and !wallops logfiles - Add 'permissive_mode' setting to general{}, specifying manner of command denials. - Add 'kline_with_ident' and 'kline_verified_ident' to general{} - Add 'binddn' and 'bindauth' conf items to ldap{} - Document "user" operclass. Atheme Services 7.0 Release Notes ================================= All bugfixes from the 6.0 branch of Atheme are also in 7.0. dbverify -------- - New utility. Performs extensive and complicated consistency checks on your OpenSEX object store. It can find things like: - corrupt AKICK entries (AKICKs with other flags/metadata that shouldn't be there); - duplicate channel ACL entries; - entity ID collisions It can find other stuff too, and will be expanded upon in the future. Think of it like a `fsck(1)` for your object store. ircd protocol ------------- - bahamut: add experimental support for bahamut-2.0 NICKIPSTR capability. - charybdis: Add support for locking of modes provided by extensions modules. - unreal: Add support for changets. - inspircd: Add support for locking the +H channel mode. - ithildin, bircd, plexus and ptlink protocol modules removed. - inspircd: Users are now warned when they attempt to link on a client port instead of a server port. - unreal: Add SASL support. - unreal: Implement full support for mlocking +f. chanfix ------- - New service. Similar to EFNet's chanfix service. chanserv -------- - sync: New module based on cs_sync from contrib. Adds autosync on ACL change (and the ability to turn it off). - channel entrymsgs are now displayed in INFO. - akick: Support added for timed AKICKs. - ban, quiet and akick: Atheme now fills in the parts of a hostmask that are missing with these commands. - access: Various cleanups. - cs_access_alias: New contrib module. Allows level-style pseudo access lists. - clone: New module allowing you to clone a channel's access list, flags and metadata to a new channel. - cs_badwords: New contrib module. Allows channel staff to specify a badwords list for a channel and what action to take when a user says one of the words in the channel. - moderate: New module allowing operators with PRIV_CHAN_ADMIN to moderate channel registrations. This is especially useful in combination with chanfix. It is also useful in maintaining a standard of content correctness for specialized chat systems. exttarget --------- - exttarget/main: a new framework has been added which extends the entity subsystem further, allowing for entities to be dynamically constructed with the purpose of matching against any kind of user or account attribute in channel access lists. these targets can take optional parameters. - exttarget/oper: $oper extended target added. this target allows you to match against all opers on the network in channel access lists. - exttarget/registered: $registered extended target added. this target matches anyone who is logged into services. - exttarget/channel: $channel extended target added. this target allows you to match anyone who is on a channel. groupserv --------- - all groupserv commands are now modules. Your atheme.conf will need to be updated for this change if you use groupserv. - add join_flags config option and SET JOINFLAGS command. These allow changing the group flags a new user will get upon JOINing the group. - add the +b (ban) flag. This prevents accounts matching it from JOINing the group. - fflags: New command. Allows services operators to force a flags change on a group they they do not have access to. - list: Allow refining the list with a pattern. - listchans: New command. Allows group members with the +c flag to see all channels that group has access in. - honor user:regnolimit permission in relation to the maximum number of groups a user may register. (SRV-125) gameserv -------- - many refactorings - calc: new command. Allows doing basic math with GameServ. - gs_roulette: New contrib module. A game of Russian Roulette. - lottery: New module that randomly chooses one user out of the channel members. - happyfarm: New (skeleton) module that's a game like FarmVille! But on IRC! hostserv -------- - added a new host_request hook to catch and do other things with host requests. - reject: Add a optional reason parameter that will be memoed to the user with the rejection notice. memoserv -------- - ms_fsend: new contrib module. Allows sopers to override a target user being set NOMEMO or having the source user on ignore. nickserv -------- - restrict: New module that allows services opers to stop users from using commands that can be abused (hostserv/request, hostserv/take, groupserv/register, etc) - emailexempts: New config option. Lets you specify email addresses that have no limit to the number of accounts they can have registered. - when logging into a new account, users are informed that they will be logged out of their old account. - when doing RELEASE or REGAIN against a user logged into an account, log them out of the account. - old Atheme-1.x-style external logout implemented. Allows logging another user logged into your account out remotely. - listgroups: New module that shows you which groups you have access in. - nevergroup: New module that prevents anyone giving you access to a group. - badmail: New module which allows setting email addresses (or glob patterns) which are not allowed to register accounts on-the-fly. - nickserv now allows passwords longer than 32 characters if the database is being hashed. - subscribe: Removed as it had many flaws and no one used it. - ns_cleannick: new contrib module. Forces a nick change on a user if their nick is 'lame' using case normalisation. operserv -------- - emailexempts and autokline exempts are now shown in INFO. - modreload now rehashes the config if the module requires it and reloads modules that depend on the specified module. - clones: Many cleanups. - clones: Added an option to variable increase the clone limit if a users' clones are identified. - soper: Allow adding a new SOPER with a password (optional, of course). - set: Adds the ability to temporarily modify some config options on-the-fly. - info: Add a new hooks so modules that add config options can also add lines to the operserv/info output. - os_modeall: New contrib module. Allows setting a given mode on all channels. - os_joinmon: New contrib module. Facilitates monitoring certain users and when a monitored user joins a channel, that information will be sent to the services log channel. - os_resolve: New contrib module for testing the asynchronous DNS resolver. - the RWATCH database is now serialized as opensex entities. - specs: add support for groupserv-related permissions and clarify meanings of the various 'auspex' privileges. (SRV-125) proxyscan --------- - New service. Currently implements only a DNSBL scanning module. rpgserv ------- - New service. For finding and joining RP games on an IRC network. scripting --------- - Support for scripting Atheme in Perl added. Perl scripts are loaded with OperServ MODLOAD just like modules. Still in alpha. Add the --with-perl configure switch to enable it. POD-style documentation for the perl API is in doc/perl/. statserv -------- - New service. For querying for statistics about the network. xmlrpc ------ - moved to transport/xmlrpc . Your atheme.conf will need to be updated for this change if you use xmlrpc. - bad_password() is now called on invalid XMLRPC logins. code ---- - libmowgli-2 is now required instead of libmowgli. - a bit of the signal code and linker code was converted to use the mowgli implementations. - charybdis' asynchronous DNS resolver added. - mowgli.global_storage can now be used to make a module's data persistent on module reload. It is currently only used in GroupServ. - many assertions added in various places throughout the code. - added a new AC_AUTHENTICATED pseudo-priv to replace many identical checks if a user is logged in throughout the code. - irc parse/uplink state has been made modular. - atheme core has been changed to build as a library. - all the old SNOOP channel code has been removed. SNOOP has been deprecated since 5.1 and gone since 5.2. - MODULE_USE_SYMBOL() was removed in favour of MODULE_TRY_REQUEST_SYMBOL(). - most service-specific (config file) code split out from the core. - configuration-defined usernames are now truncated at USERLEN (10 characters). - UID generation split out from the core. - module_load can now be hooked into. This is particularly useful for scripting modules. - entities now have unique IDs. unique IDs may be referenced in all XMLRPC and IRC commands. - strlcpy()/strlcat() have been replaced with mowgli implementations. - atheme.string has been replaced with mowgli.string. - add new hook_channel_acl_req_t structure for channel_acl_change hook, which is intended to describe ACL changes more effectively. - call shutdown(2) on sockets being closed to help some TCP stacks be more aggressive when closing sockets. - use mowgli_eventloop_pollable instead of old eventloop code. - Windows is now supported. other ----- - ensure buffers passed to strftime() are large enough to fit the entire string. strftime() is not really required to behave in any specific way in the event of buffer overflow. - ircd_announceserv: New contrib service. This allows users to request network announcements (which sopers must approve before they're sent). - an access {} config block was added allowing rewriting of command privs. If specified, the user must match the original priv and the rewritten priv. - allow Atheme datadir to be specified on the command-line when starting. - many improvements to the LDAP authentication module. - general::immune_level config option added. This allows customising the operlevel that gets kick immunity privileges. - DNS Blacklist scanning module added. This module will scan connecting users against a list of DNS blacklists and take action if the users' IP is in one of the blacklists. This module is mainly managed through operserv. - allow SASL authentication for any nick linked to the account, not just the accountname. Atheme Services 6.0 Release Notes ================================= All bugfixes from the 5.2 branch of Atheme are also in 6.0. ircd protocol ------------- - inspircd: Support for owner, halfops and admin are now dynamically enabled by what modes exist instead of being enabled by what modules you have loaded in inspircd. - support for InspIRCd 1.1, OfficeIRC and UltimateIRCd 3 has been removed. opensex ------- - opensex is now the required database format. All flatfile will do is convert your flatfile database to opensex and exit. - converted many modules that use external databases to using opensex. chanserv -------- - new module: chanserv/access. this adds role-based channel acl via the ACCESS and ROLE commands. - new module: chanserv/successor_acl. this adds a +S channel acl flag which will weight a user as a successor. - modules may now override the succession process using the new channel_pick_successor hook. - chanserv/list: Enhance by adding many possible criteria to match channels against. - new set_prefix module. This module allows channels to define a channel-specific fantasy prefix. The channel-specific prefix is displayed in the INFO for the channel. This is particularly useful if the channel uses an external bot that conflicts with the services default fantasy prefix. - new clear_flags module. This allows founders to remove all entries from the channel access list except other founders. groupserv --------- - new service that allows users to form groups of accounts and apply the same ACL entries to them, send memos to them and other features. helpserv -------- - new service that allows users to request oper help in different ways. Currently either via a ticket system or by "pinging" the opers with a request for help. hostserv -------- - allow activating or rejecting all waiting vhosts by using '*' instead of a nick. infoserv -------- - oper-only message support. You can now give messages an importance where they will only be sent to opers upon oper-up. - in infoserv message subjects, underscores will now be replaced with spaces so you can have multi-word subjects. - allow customizing the number of infoserv messages shown to users on connect. nickserv -------- - new contrib module, ns_waitreg that allows you to specify how long a user must be connected before they can register a nick. - new regnolimit module. Allows opers to set users as able to be exempt from channel registration limits. (how many channels may be registered to one account) - nickserv/list: Enhance by adding many possible criteria to match users against. operserv -------- - new readonly module. This allows changing the readonly state at runtime. xmlrpc ------ - the legacy xmlrpc/account, xmlrpc/channel and xmlrpc/memo modules have been removed. These have been deprecated for over 4 years and you should be using xmlrpc/main and atheme.command for all your xmlrpc uses. - the xmlrpc core has been rewritten a little bit to use mowgli's patricia tree code. this should bring a performance improvement over the hashtable code it was using. - xmlrpc has been completely moved out of core - a new command, atheme.privset has been added to get the soper privs of a user. code ---- - default values in config options are now supported. This is particularly useful in modules and cleans up the config code a bit. - many bugfixes and compile warning fixes. - the flags code has been cleaned up to assume that there is only one flags table. - the flags code is now extendable by modules. - mychan_pick_candidate() is now in the public API. - the core now lives in an ipv6 world. it's 2010 - if your operating system doesn't support ipv6 - you suck. - ctcp handling has been rewritten. - new easter egg. - the shrike hash function (shash()) has been removed as there was no longer anything using it. - the "symbolmatrix" code was removed because we went with a different solution instead long ago. - myuser_t is now a child of myentity_t which describes an entity that can have channel membership. - list_t/node_t have been removed in preference of mowgli.list. - balloc has been removed in preference of mowgli.heap. other ----- - added an anope 1.9.2 flatfile DB to OpenSEX DB conversion script. - mail sending has been changed, likely causing serverinfo::mta scripts to break. The command is now passed "-t" rather than the email address and the shell is no longer used. - the SDK hg revision of modules in now shown in MODINSPECT. Atheme Services 5.2 Release Notes ================================= Note: We are looking for additional developers to help with maintenance of Services. After almost 7 years of development, many of the programmers have moved on. ircd protocol ------------- - inspircd: track channelmodes +D (delayjoin) and +d (delaymsg). chanserv -------- - split out SET into seperate modules for each SET command. chanserv/set is now a "meta-module" that depends on all the set_* modules. hostserv -------- - added OFFER module that allows opers to offer vhosts to users. - made the request system (specifically the ACTIVATE command) not send a memo to the user. infoserv -------- - new service. infoserv allows opers to send notices to users when they connect or at the time of running the command (like Global). nickserv -------- - split out SET into seperate modules for each SET command. nickserv/set is now a "meta-module" that depends on all the set_* modules. - added cracklib module that checks users' passwords on REGISTER and lets them know if the password is secure or not. You can have it just warn the user or disallow them from registering with a configuration option. - added ns_generatehash contrib module to generate a password hash for a soper if you have crypto enabled. - removed ns_ratelimitreg contrib modules as its functionality is now in core. operserv -------- - added expiry time to clone exempt code ---- - replace the atheme-services build system with the ACBS used by many other Atheme projects. - rework the colour and special character stripping for xmlrpc. - remove snoop(). any modules still using snoop() will fail to compile on atheme 5.2. please replace it in your code with logcommand() or slog(). other ----- - ircservtoatheme: generally make a bit more robust. - added ratelimiting support to hostserv/request, chanserv/register and nickserv/register. - add a new database format called opensex. This is available in 5.2 as a "technology preview" and will be mandatory in 6.0. Atheme Services 5.1.1 Release Notes =================================== ircd protocol ------------- - TS6: Rework MLOCK a bit to make it more robust and support more modes. operserv -------- - add os_helpme contrib module. Thist module marks a user as a network helper. This will only work on ircd's with the helpop (usually +h) user mode. other ----- - add extends directive to operclasses so one operclass can inherit privledges from another. See the example config for details. Note, you can have two operclasses with the same privledges, so extending is not forced. Atheme Services 5.1 Release Notes ================================= ### [MERGED] indicates items merged to the 5.0 branch ircd protocol ------------- - inspircd: common code has been merged into inspircd-aux, this will continue in the next version with inspircd 1.1 support. - inspircd: several unsupported module configurations are now programatically marked as such. - inspircd: permanent channels are now tracked in 1.2 and later. (SRV-29) - inspircd: add support for receiving SVSNICK (nick collisions) - inspircd: add support for m_ojoin - TS6: add support for MLOCK - shadowircd: updated module to shadowircd6 - hyperion: removed - Added support for ithildin1. This is still a bit experimental. - ircnet: support added for server hostmasking. botserv ------- - add missing helpfiles - botserv bots now quit instead of splitting when terminating/restarting services (SRV-12) chanserv -------- - FLAGS: allow +F* as well as +*F hostserv -------- - add missing helpfiles nickserv -------- - add support for CERTFP (CERT command) operserv -------- - reject jupes with names containing wildcards. - add os_trace contrib module. This module looks up users by various criteria and lets you perform actions on them. - add os_akillnicklist contrib module. Automatically AKILLs a list of clients, given their operating parameters. - change CLEARCHAN GLINE action to AKILL to be more consistent with the rest of Atheme. GLINE still exists as an alias to AKILL. saslserv -------- - add AUTHCOOKIE SASL method which allows for integration with Iris code ---- - add taint subsystem which allows developers to programatically define unsupportable conditions. - constify *line_sts() protocol module functions. - track deaf umode and set it on services clients if fantasy is disabled. - allow #else in helpfiles - startup flag -r (read-only) added. - enable large file support. - Add 'force_language' to sourceinfo_t, which forces the locale to be reset to the language specified by the sourceinfo structure. Useful for forcing XMLRPC responses to be in English. - force dependency calculation before most targets to fix -j problems; there is a new target build-nodeps to skip this for subsequent builds (like the old behaviour of build). other ----- - logging system entirely reworked. snoop() is deprecated and will be removed in the next version. - add general::exempts config block, for masks that will never be automatically klined. - add configurable command aliases to the services blocks - helpfiles added for all contrib modules. - make the wumpus contrib module compile and work again. - anope_convert: support newer 1.8.x Anope versions and made anope_convert a bit more robust in handling encrypted passwords. Atheme Services 5.0.1 Release Notes =================================== botserv ------- - When kicking users from an otherwise empty channel, set INHABIT, so that the bot leaves the channel after a short delay. code ---- - Remove legacy .disp field from core services structures. Atheme Services 5.0 Release Notes ================================= ### [MERGED] indicates items merged to the 4.0 branch ircd protocol ------------- - inspircd12: fix UID parsing and rejoining services after kicks. **[MERGED]** - TS6: allow nicer topic setting using charybdis 3.2's ETB. - hyperion: fix a bug that could cause the hostnames of services clients to be overwritten. **[MERGED]** - plexus: port to ts6-generic, add UF_IMMUNE for +N, add support for permanent channels. - hybrid: fix a crash. - unreal: use SVSKILL for kills from NickServ. This reduces excessive server notices. nickserv -------- - Matching a nickname access list entry no longer resets last used time. - Allow authentication via an LDAP server. - Add some missing help files. - Start the enforce timer on /ns set enforce on. - Add a per-account language setting. This currently does not work very well. - Prepend "(restored) " to marks restored from previously deleted accounts. - Change VHOST syntax, adding an ON/OFF keyword and requiring a FORCE keyword to set a vhost on a marked account. The old syntax still works for vhosts containing a dot, colon or slash. - Add ns_listlogins contrib module. This allows logged in users to see real hosts of their other logins. chanserv -------- - Set owner/protect on the founder of a new channel, if appropriate. - Do not set protect status if the user already has owner. - Rework successor selection for channels to respect flags more. **[MERGED]** - Allow users with +V to voice themselves. botserv ------- - New service. This allows users to have a "bot" join their channel instead of ChanServ. hostserv -------- - New service. This adds per-nick vhosts and a request system to what /ns vhost provides. As long as per-nick vhosts are not used it interoperates with /ns vhost. alis ---- - Add -maxmatches option which xmlrpc and chan:auspex may set to higher than the default. oper ---- - Fix a possible crash with /os greplog. **[MERGED]** - Add SGLINE system for bans by realname (TS6 xline). - Services ignores no longer apply to users with general:admin privilege. - Add /os listklinechan to the os_klinechan contrib module. - Add os_kill contrib module. This allows opers to kill users while hiding their identity. (This was added earlier, but not linked to the build.) - Add SQLINE system to disallow nick and channel names (TS6 resv). - Fix possible crash with /os noop. - RWATCH now also watches nick changes. xmlrpc ------ - Remove 4K limitation on length of xmlrpc command output. **[MERGED]** code ---- - Remove select() support and code to allow multiple "socket engines". poll() is sufficient. - Rework the network connection code to be cleaner and more flexible. - Close all connection_t fds in child processes. - Allow using sourceinfo_t.v with IRC sources. - Some tweaks to the build system. - Add type checking to the hook system. See src/hooktypes.in. It may be necessary to specify --enable-warnings to configure to enable the checks. other ----- - Try to detect MacOS X crypt(3) breakage in crypto/posix and generate a DES based hash. - Allow the user_add hook to remove the user from the network safely. - Add user_nickchange hook for nick changes, which is also allowed to remove the user from the network. Atheme Services 4.0 Release Notes ================================= [MERGED] indicates items merged to the 3.1 branch ircd protocol ------------- - Add support for ShadowIRCd 5 **[MERGED]**. This replaces the support for older versions of ShadowIRCd. - hyperion: improve detection of overwritten I:line spoofs. - hyperion: Add support for UF_IMMUNE. - general: Do not enforce AKICKs against users marked UF_IMMUNE; it is impossible to ban them effectively. - inspircd12: various fixes and updates. - ratbox: make akills work with ircd-ratbox 3.x. - ratbox: add support for ratbox services shortcuts (ENCAP RSMSG, m_rsshortcut.so) - nefarious: allow /ns vhost (FAKEHOST). - nefarious: let services joining channels op themselves, avoiding HACK(4) notices - ircd-seven: new protocol module - Limit the send queue to the ircd to a configurable value, default 1MB. Large networks may need to increase this. - Limit IRC command output to 2000 lines. XMLRPC is unaffected. - Add tracking for the "server admin" umode in some ircds. - ptlink: add support for forced nick changes (SVSNICK), fix nickTS. - Remove some obsolete protocol modules: aurora, sorcery, shadowircd. If you do still use one of these, please contact us. - Add support for P10 account creation times. - Add support for P10 user IPv6 addresses. nickserv -------- - Snoop on freeze on/off. - Add nickserv/vacation module, allowing to temporarily extend expiry times. - Make register help text depend on whether email verification is used. - Refer users to their email if they try to identify again while unverified. **[MERGED]** - In FUNGROUP, allow dropping account names, by specifying a new account name. - Add optional nickserv/listownmail to allow users to see accounts with their email. - When refusing a login due to maxlogins, tell the user what the logged in nicks are. - Show FREEZE status (but not setter, time or reason) to normal users. - Show taxonomy (property, metadata) in INFO. - Show recognized (access list) a bit better in INFO. - Ignore access lists for frozen accounts. **[MERGED]** - Add ns_fenforce contrib module. This allows admins to toggle enforce on any nickname. - When a user is recognized but not identified, still tell them to identify, but with a shorter message. - Make nickserv/enforce timings more accurate. chanserv -------- - Allow multiple spaces before fantasy commands when ChanServ is addressed by nickname. - QUIET/UNQUIET now notify the target user or channel. - Show the current successor in /cs info (for +A users and opers). - FFLAGS now overrides the NEVEROP setting on the target account. - Set owner/protect if appropriate after xOP ADD. - Show taxonomy (property, metadata) in INFO. - Add chanserv/set_limitflags, allows limiting +f's power. alis ---- - Fix handling of key and limit options. - Allow alis list on a single +s channel the user is on. memoserv -------- - Add DELETE OLD to delete all read memos. gameserv -------- - Do not add chanserv commands if fantasy is disabled. - Allow ROLL, WOD and DF with a channel name to send the results to that channel without requiring fantasy commands. This must be specifically enabled on a per-channel basis using the new ChanServ command SET GAMESERV (module chanserv/set_gameserv). oper ---- - Allow searching for AKILLs matching a given mask or id in AKILL LIST. - Allow running an operserv-only services instance, which picks up login names from the main instance (currently only for hyperion, TS6 and P10 ircds). - Add optional PCRE support. Configure --with-pcre to enable it and add the p flag to use it (e.g. /os rmatch /\d\d\d/p). The regex wrapper has been changed slightly to make this possible. - Report other nicks of deleted accounts to snoop and log file. - Add operserv/greplog module (from freenode modules) to allow searching through recent logs from IRC. - Automatically rehash after loading modules that need a rehash. xmlrpc ------ - Fix atheme.memo.ignore.list and atheme.memo.ignore.clear to require only two arguments (third wasn't ever in use). **[MERGED]** code ---- - Change kline_delete() to take a kline_t pointer instead of a user and host. - Allow modules to influence the expiry process. - Fix a minor memory leak on /os REHASH. - Fix null pointer dereference with some invalid config files. - Move the metadata entries to object_t. - Change some protocol module functions to take object pointers instead of names and add some const keywords. - Modules can now request other modules be loaded. This has been used to move some generic TS6 and P10 stuff into common modules. - Rename CMODE_OP and the like to CSTATUS_*, emphasizing that they are separate from simple modes. - Use C99 booleans (<stdbool.h>, bool, true, false). other ----- - Allow arbitrary line lengths in flatfile database loader. - Synchronized with libmowgli 0.7 framework. - Remove automatic module loading for modules/ directory; this behaviour has been deprecated since version 0.3. - Fix ircservices conversion for ircservices 5.1. - Improve flood detection. - Fix a bug with /os identify introducing enforcers. - Fix a bug that could cause normal users to be seen as enforcers. - Allow any service's nick/user/host/realname to be set in the configuration file, and update them on a rehash. The service creation code works quite a bit differently to make this possible. - Fix running on MacOS X 10.5. - Fix compilation sometimes using system include files in place of our own. - Change the default for gettext (NLS) to disabled in the setup script. - Add a check against loading incompatible modules. Formerly, trying to load incompatible modules often caused a crash. - Rework the configuration file parser to detect more errors and make it easier to add configuration options. - Add +a to the example configuration's SOP to fit expectations better. - Update anope_convert for anope 1.8 enc_md5/enc_sha1 passwords. - Wake up the process less often if it is idling. - Install an example services MOTD automatically. Atheme Services 3.1 Release Notes ================================= ### [MERGED] indicates items merged to the 3.0 branch ircd protocol ------------- - Fix a crash that could happen with ircd bugs or nick collisions with services. **[MERGED]** - Fix host changes in hyperion. **[MERGED]** - Do not check the server's password in the hyperion protocol module. - Do not allow spoofs ending in a slash in the hyperion protocol module. - Allow nickname enforcers which are clients. - Fix ping replies in P10. - Add support for InspIRCd 1.2. - Some ircds dislike colons in kline reasons, so don't use them for flood klines. - When restoring an akill, send it to all servers on all protocols. Formerly, on some protocols it was only sent to the server the banned user was on. - Add ircd-aurora protocol module. ircd-aurora is a patched version of charybdis with +qah channel statuses. - For ircds that do not indicate host change to clients, send a 396 numeric instead of a notice from the service. This is easier to parse for clients. nickserv -------- - Comment out nickserv/subscribe from the example configuration, because it is experimental at this time. **[MERGED]** - Fix a possible crash in nickserv release (nickserv/enforce module). **[MERGED]** - Fix RETURN only accepting relatively short email addresses. - Allow disabling the possibly slow maxusers (accounts/email) check by putting 0. - Show /ns vhost in /ns info. Appears to user self and user:auspex opers. - Adjust times so nicks cannot appear created before their account or used after their account was last seen. - Add user_verify_register hook, called when a registration is verified. This is after a successful VERIFY if email verification is enabled, after a successful REGISTER if not. - Make gen_vhostonreg contrib module only grant vhost once it's verified, and also set vhosts on users without vhost as they identify. - Add clearer log messages for duplicate accounts/nicks/channels in atheme.db. - Make INFO default to the user's nick (owned nicks) or current account (no owned nicks). - Also introduce an enforcer when FNCing a user via the RELEASE command. - Allow ignoring enforce on nicks unused for too long (nickserv::enforce_expire config option). This does not affect held accounts. - Add nick_can_register hook and use it to block GROUP on guest nicks also. This hook is called on both REGISTER and GROUP (if nickname ownership is enabled). - In SENDPASS, require the new keyword FORCE to override marks and the new keyword CLEAR to clear keys that were previously sent but not yet used. If these keywords are needed, the oper will be warned. - Do not allow SENDPASS on unverified accounts. - Make the enforce delay settable in the config file. - Make holdnick enforcer time variable, 30s the first time then 1h. - Add ns_ajoin contrib module to allow services-side autojoin. - Show a pending email address change in INFO, to user self and user:auspex opers. - Add ns_forbid contrib module. This registers, enforces, holds and freezes a nickname. - Split DROP into DROP (users) and FDROP (admins). - Send all failed password attempts for SOPER accounts to the snoop channel. - Make the text in INFO for unverified accounts more conspicuous. chanserv -------- - Fix removing non-applicable flags (e.g. +hH) from host channel access. **[MERGED]** - Fix ChanServ not deopping in some cases with guard on and changets off. **[MERGED]** - Fix some ugly output in chanserv/unban_self. **[MERGED]** - Respect NOOP flag in cs_sync contrib module. - Allow calling RECOVER via xmlrpc. - Add channel_can_register hook to allow modules to block channel registrations. - Add SET QUIETCHG (nickserv setting) which suppresses notices from OP, VOICE, and the like by other users. - Add cs_updown contrib module. This provides UP and DOWN commands that add and remove all modes a user is entitled to. - Change SET STAFFONLY to SET RESTRICTED. This kicks all users except those with chan:joinstaffonly priv or any access (except +b) on the channel. Also make it handle +i channels more effectively. - Allow admins to change oper only modes in mlocks even without +s flag. - Snoop changes to oper only modes in mlocks. - Split DROP into DROP (users) and FDROP (admins). - Add a confirmation step against accidental drops to DROP. This only applies to commands via IRC. alis ---- - Move ALIS from contrib to modules. The new atheme.conf line is loadmodule "modules/alis/main"; memoserv -------- gameserv -------- oper ---- - Fix a possible crash in /stats B. **[MERGED]** - Fix slight damage to news items when reloading in contrib/os_logonnews. **[MERGED]** - Allow GLOBAL to be used from non-IRC. - Add CLONES DURATION to allow changing the duration of the network bans set by the clones module. - Add os_klinechan contrib module. This allows setting channels to kline any users joining them. xmlrpc ------ - Some improvements to buffer and character set handling. code ---- - Disable object_t refcount. - Fix various format string types, add many const keywords, hide a few structs that should be private. other ----- - Improve performance with large databases by changing the mowgli_heap memory allocator. **[partially MERGED]** - Improve performance by changing the dictionary to a patricia algorithm. - Decrease memory usage for large networks. - Add LOCALEDIR to Makefile.in files, necessary for gettext. **[MERGED]** - Some improvements to the hybserv/theia conversion tool. - Some improvements to the ircservices conversion tool. - Change maximum nick length from 30 to 31. - Remove redundant expire_check and db_save in several places. This makes restart, shutdown and rehash faster without threatening data integrity. - Add Russian help files from Kein/darkwire. Using these currently requires manual copy/rename operations. - Add Russian translation from Kein/darkwire and fix the build system so it is automatically installed if gettext is enabled. - Allow for crypt() in libc as well as libcrypt (MacOS X). - Fix nested includes in the configuration file. - Add child process tracking. - Make some help files depend on what modules are loaded. - Fix a bug that caused certain timed events to be executed too late.
jperkin
pushed a commit
that referenced
this issue
Sep 2, 2019
******************************************************************************* Version 1.8.4 ******************************************************************************* 2017-11-17 Marcelo Jimenez <mroberto(at)users.sourceforge.net> GitHub #57 - 1.8.3 broke ABI without changing SONAME Opened by jcowgill This change in 1.8.3 broke the ABI and therefore the SONAME should have been changed (ie: age reset to 0): EXPORT_SPEC int UpnpAddVirtualDir( /*! [in] The name of the new directory mapping to add. */ - const char *dirName); + const char *dirName, + /*! [in] The cookie to associated with this virtual directory */ + const void *cookie, + /*! [out] The cookie previously associated, if mapping is already present */ + const void **oldcookie); If only the cookie argument was added, you could probably get away with this because all that would happen is that a garbage value is passed around without being used. With the addition of oldcookie, any old programs will not initialise this value and will probably segfault when libupnp tries to write to it. ******************************************************************************* Version 1.8.3 ******************************************************************************* 2017-09-07 Dave Overton <david(at)insomniavisions.com> Add userdata/cookie to virtualDir callbacks As with the main Device APIs (UpnpRegisterRootDevice etc), it is useful to have a userdata/cookie pointer returned with each callback. This patch allows one cookie per registered path which enables a variety of functionality in client apps. 2017-09-03 Uwe Kleine-König <uwe@kleine-koenig.org> Fix large file system support libupnp uses large file support (if available). If a program linking to libupnp does not however it creates mismatches in callframes. See Issue #51 for the results. This simplifies LFS support by using AC_SYS_LARGEFILE_SENSITIVE instead of manually defining _LARGE_FILE_SOURCE and _FILE_OFFSET_BITS (which is useless on architectures where the size of off_t is fixed). Furthermore additional logic is introduced to catch a library user without 64 bit wide off_t on such a platform. upnp.h also makes use of off_t, but as this file includes FileInfo.h, the latter is the single right place for this check. This fixes #52 which is a generalized variant of #51. 2017-08-19 Uwe Kleine-König <uwe@kleine-koenig.org> configure.ac: Drop copying of include files The comment suggests this is for windows compilation. It should be easily possible to add the source directory as an include path to the windows compiler, too, so drop this. (Otherwise this should better be done using AC_CONFIG_COMMANDS.) 2017-09-03 Uwe Kleine-König <uwe@kleine-koenig.org> Let source code use autoconfig.h not the public upnpconfig.h The former is the one supposed to be used for internal code. upnpconfig.h is only for public stuff. 2017-08-19 Uwe Kleine-König <uwe@kleine-koenig.org> configure.ac: Fix typo s/optionnal/optional/ 2017-08-08 Marcelo Jimenez <mroberto(at)users.sourceforge.net> Fix broken samples when configured with --disable-ipv6. ******************************************************************************* Version 1.8.2 ******************************************************************************* 2017-07-24 Michael Osipov Initialize in_addr and in6_addr to avoid garbage output if never written If any of the address families isn't available in UpnpGetIfInfo(), especially IPv6, always init both structs with zero to avoid garbage output with inet_ntop() to gIF_IPV4 and gIF_IPV6. See v00d00/gerbera#112 (https://github.com/v00d00/gerbera/issues/112) for consequences: bind for IPv6 will fail. 2013-10-28 Vladimir Fedoseev <va-dos(at)users.sourceforge.net> Attached patch allows to register multiple clients from single app. 2014-11-14 Philippe <philippe44ca(at)users.sourceforge.net> Hi - I recently compiled libupnp on C++ Builder XE7 and had to do a few changes to make it work. In thase this helps, I've generated a small patch file. 2015-04-30 Hugo Beauzée-Luyssen <chouquette(at)users.sourceforge.net> When building using a strict mode (-std=c++11 instead of -std=gnu++11, for instance), the WIN32 macro isn't defined. The attached patch fixes it by using _WIN32 instead. 2015-02-06 Jean-Francois Dockes <jf@dockes.org> Queue events on their subscription object instead of adding them to the thread pool immediately. Events destined for a non-responding control point would flood the thread pool and prevent correct dispatching to other clients, sometimes to the point of disabling the device. Events are now queued without allocating thread resources and properly discarded when a client is not accepting them. 2015-02-03 Jean-Francois Dockes <jf@dockes.org> genaInitNotify()/genaInitNotifyExt() and genaNotifyAll()/genaNotifyAllExt() are relatively complicated methods which only differ by the format of an input parameter. This update extracts the common code for easier maintenance, esp. relating to the queueing modifications to follow. ******************************************************************************* Version 1.8.1 ******************************************************************************* 2017-04-26 Marcelo Jimenez <mroberto(at)users.sourceforge.net> Fix some compiler warning messages on md5.c 2017-03-07 Fabrice Fontaine <fontaine.fabrice(at)gmail.com> Enable IPv6 by default 2017-03-07 Fabrice Fontaine <fontaine.fabrice(at)gmail.com> Move threadutil source code to libupnp With this patch, threadutil library is removed as the only public header that has been kept in 1.8.x is ithread.h which is mainly a wrapper to pthread with inline functions. threadutil source code will now be a part of libupnp library. ******************************************************************************* Version 1.8.0 ******************************************************************************* 2014-01-15 Peng <howtofly(at)gmail.com> Fix memory leaks. 2013-04-27 Thijs Schreijer <thijs(at)thijsschreijer.nl> Renamed SCRIPTSUPPORT to IXML_HAVE_SCRIPTSUPPORT for consistency. Also updated autoconfig and automake files, so it also works on non-windows. Option is enabled by default, because it adds an element to the node structure. Not using an available field is better than accidentally using an unavailable field. 2012-07-11 Thijs Schreijer <thijs(at)thijsschreijer.nl> Changed param to const UpnpAcceptSubscriptionExt() for consistency 2012-06-07 Thijs Schreijer <thijs(at)thijsschreijer.nl> updated ixmlDocument_createAttributeEx() and ixmlDocument_createAttribute() to use parameter DOMString instead of char * (same but now consistent) 2012-05-06 Thijs Schreijer <thijs(at)thijsschreijer.nl> Added script support (directive SCRIPTSUPPORT) for better support of garbage collected script languages. The node element gets a custom tag through ixmlNode_setCTag() and ixmlNode_getCTag(). And a callback upon releasing the node resources can be set using ixmlSetBeforeFree() See updated readme for usage. 2012-03-24 Fabrice Fontaine <fabrice.fontaine(at)orange.com> SF Bug Tracker id 3510595 - UpnpDownloadXmlDoc : can't get the file Submitted: Marco Virgulti ( mvirg83 ) - 2012-03-23 10:08:08 PDT There is a problem, perhaps, during downloading a document by UpnpDownloadXmlDoc. During debugging i've found that in an not exported api (unfortunately i forgot the code line...) where it is setted a local variable "int timeout" to -1 then passed directly to another function for sending data through tcp socket. I patched this setting it to 0 (there is an IF section that exits if timeout < 0). It is normal behavior or it is a bug? 2012-03-08 Fabrice Fontaine <fabrice.fontaine(at)orange-ftgroup.com> Check for NULL pointer in TemplateSource.h calloc can return NULL so check for NULL pointer in CLASS##_new and CLASS##_dup. 2012-03-08 Fabrice Fontaine <fabrice.fontaine(at)orange-ftgroup.com> Replace strcpy with strncpy in get_hoststr Replace strcpy with strncpy to avoid buffer overflow. 2012-03-08 Fabrice Fontaine <fabrice.fontaine(at)orange-ftgroup.com> Memory leak fix in handle_query_variable variable was never freed. 2011-02-07 Chandra Penke <chandrapenke(at)mcntech.com> Add HTTPS support using OpenSSL. HTTPS support is optional and can be enabled by passing the --enable-open-ssl argument to the configure script. The following methods are introduced to the public API: UpnpInitOpenSslContext When enabled, HTTPS can be used by using "https://" instead of "http://" when passing URLs to the HTTP Client API. 2011-02-07 Chandra Penke <chandrapenke(at)mcntech.com> Refactor HTTP Client API to be more generic. The following features are added: - Support for persistent HTTP connections (reusing HTTP connections). Tthis is still a work in progress and relies on applications to interpret the 'Connection' header appropriately. - Support for specifying request headers when making requests. Useful for interacting with web services that require custom headers. - Support for retrieving response headers (this is a API only change, some more work needs to be done to implement the actual functionality. Specifically copy_msg_headers in httpreadwrite.c needs to be implemented) - Common API for all HTTP methods. - Support for PUT, and DELETE methods. The following methods are introduced to the public HTTP Client API UpnpOpenHttpConnection, UpnpCloseHttpConnection, UpnpMakeHttpRequest, UpnpWriteHttpRequest, UpnpEndHttpRequest, UpnpGetHttpResponse, UpnpReadHttpResponse. Removed a lot of duplicate code in httpreadwrite.c 2011-01-17 Chandra Penke <chandrapenke(at)mcntech.com> Include upnpconfig.h in FileInfo.h to automatically include large file macros 2011-01-17 Chandra Penke <chandrapenke(at)mcntech.com> Fix for warnings Apple systems related to macros defined in list.h. In list.h, in apple systems, undefine the macros prior to defining them. 2011-01-16 Marcelo Jimenez <mroberto(at)users.sourceforge.net> Fix for UpnpFileInfo_get_LastModified() in http_MakeMessage(). UpnpFileInfo_get_LastModified() returns time_t, and http_MakeMessage() takes a "time_t *". Thanks to Chandra Penke for pointing the bug. 2010-11-22 Marcelo Jimenez <mroberto(at)users.sourceforge.net> Template object for ssdp_ResultData. 2010-11-10 Fabrice Fontaine <fabrice.fontaine(at)orange-ftgroup.com> Support for "polling" select in sock_read_write. Currently, in sock_read_write function, if the timeout is 0, pupnp realizes a "blocking" select (with an infinite timeout). With this patch, if timeout is set to 0, pupnp will realize a "polling" select and returns immediately if it can not read or write on the socket. This is very useful for GENA notifications when pupnp is trying to send events to a disconnected Control Point. "Blocking" select can now be done by putting a negative timeout value. 2010-09-18 Chandra Penke <chandrapenke(at)mcntech.com> This is a minor build fix. The new Template*.h files added in the latest code need to be exported. Patch against the latest sources is attached. 2010-08-22 Marcelo Jimenez <mroberto(at)users.sourceforge.net> * upnp/src/api/Discovery.c: Fix a serious bug and memory leak in UpnpDiscovery_strcpy_DeviceType(). Thanks to David Blanchet for the patch. 2010-04-25 Marcelo Jimenez <mroberto(at)users.sourceforge.net> Separation of the ClientSubscription object. 2010-04-24 Marcelo Jimenez <mroberto(at)users.sourceforge.net> Protect the object destructors agains null pointers on deletion, which should be something valid. 2010-03-27 Marcelo Jimenez <mroberto(at)users.sourceforge.net> SF Patch Tracker [ 2987390 ] upnp_debug vs. ixml_debug Thanks for the load of updates, I'm still assimilating them ! Could I make a suggestion though? The addition of printNodes(IXML_Node) to upnpdebug a dds a new dependency on ixml.h for anything using upnpdebug.h. I'm making quite a bit of use of upnpdebug in porting things to version 1.8.0, and I'd prefer it if printNodes could be added to ixmldebug.h instead. I'm attach ing a patch, what do you think ? Nick 2010-03-27 Marcelo Jimenez <mroberto(at)users.sourceforge.net> * Forward port of svn revision 505: SF Patch Tracker [ 2836704 ] Patch for Solaris10 compilation and usage. Submitted By: zephyrus ( zephyrus00jp ) 2010-03-20 Marcelo Jimenez <mroberto(at)users.sourceforge.net> * SF Patch Tracker [ 2969188 ] 1.8.0: patch for FreeBSD compilation Submitted By: Nick Leverton (leveret) Fix the order of header inclusion for FreeBSD. 2010-03-20 Marcelo Jimenez <mroberto(at)users.sourceforge.net> * Forward port of svn revision 502: SF Patch Tracker [ 2836704 ] Search for nested serviceList (not stopping at the first lis Submitted By: zephyrus ( zephyrus00jp ) Internet Gateway Device description contains nested serviceList (rootdevice -> servicelist, subdevice and subdevice has the lower-level serviceList, etc..) Unfrotunately, the sample code sample_util.c used by tv_device sample, etc. has a code that looks for only the first top-level serviceList. This results in the failure to read all the services of an IGD xml description. Attached patch modifies this behavior and looks for the service by visiting all the serviceList in xml document in turn. With the modified patch (ad additional modification), I could simulate an IGD device and created a modified control program for that. Patch against 1.6.6 TIA. 2010-03-20 Marcelo Jimenez <mroberto(at)users.sourceforge.net> * SF Patch Tracker [ 2973319 ] Problem in commit 499 Submitted By: Nick Leverton (leveret) Afraid that this doesn't compile, it seems retval should be retVal in two places. 2010-03-16 Marcelo Jimenez <mroberto(at)users.sourceforge.net> * Fix for the ithread_mutex_unlock() logic in UpnpInit(). Thanks for Nicholas Kraft. 2010-03-15 Marcelo Jimenez <mroberto(at)users.sourceforge.net> * SF Patch Tracker [ 2962606 ] Autorenewal errors: invalid SID, too-short renewal interval Submitted By: Nick Leverton (leveret) Auto-renewals send an invalid SID due to a missing UpnpString_get_String call. They also send a renewal interval of 0 instead of copying it from the original subscription. 2010-03-15 Marcelo Jimenez <mroberto(at)users.sourceforge.net> * SF Patch Tracker [ 2964685 ] patch for avoiding inet_ntoa (1.8.0) Submitted By: Nick Leverton (leveret) Seems like SF's tracker won't let me add a patch to someone else's issue ?! This refers to https://sourceforge.net/support/tracker.php?aid=2724578 The calls to inet_ntoa are in getlocalhostname(), which is called from UpnpInit when it is returning the bound IP address. UpnpInit/getlocalhostname hasn't been updated to IPv6, I presume this is deliberate so that it doesn't start returning IPv6 addresses and overwriting the caller's IPv4-sized allocation. The attached patch just updates getlocalhostname to use inet_ntop instead of inet_ntoa, and also documents the fact that UpnpInit is IPv4 only whilst UpnpInnit2 is both IPv4 and IPv6. A fuller solution might be to change UpnpInit to use some variant on UpnpGetIfInfo. UpnpInit could still be left as IPv4 only if desired - perhaps UpnpGetIfInfo could take an option for the desired address family. getlocalhostname and its own copy of the interface scanning code would then be redundant. I don't have IPv6 capability here though so I'm reluctant to change the IPv6 code, as I have no way to test it. 2010-03-15 Marcelo Jimenez <mroberto(at)users.sourceforge.net> * SF Patch Tracker [ 2724578 ] patch for avoiding memory leaks when add devices each time a device been added, UpnpInit() is called, on exit, UpnpFinish() is called, but the memories allocated by ThreadPoolInit() may lost because there's no code to call ThreadPoolShutdown() to release the memories. And inet_ntoa() is not thread safe, so in my patch, I substitute inet_ntoa() with inet_ntop(). 2010-03-14 Marcelo Jimenez <mroberto(at)users.sourceforge.net> * SF Patch Tracker [ 2964687 ] Add new string based accessors to upnp object API As per email to pupnp-devel, this is the patch to add the _strget_ accessors for string-like objects in the interface. Will add a further patch shortly to udpate the sample programs. 2008-06-27 Marcelo Jimenez <mroberto(at)users.sourceforge.net> * Nicholas Kraft's patch to fix some IPv6 copy/paste issues. He reported to be getting infinite loops with the svn code. 2008-06-13 Marcelo Jimenez <mroberto(at)users.sourceforge.net> * SF Bug Tracker [ 1984541 ] ixmlDocumenttoString does not render the namespace tag. Submitted By: Beliveau - belivo Undoing the patch that fixed this problem. In fact, there was no problem and the patch was wrong. 2008-06-11 Marcelo Jimenez <mroberto(at)users.sourceforge.net> * Ingo Hofmann's patch for "Content-Type in Subscription responses". Adds charset="utf-8" attribute to the CONTENT-TYPE header line. Hi, I have found an inconsistency regarding the text/xml content-type returned by libupnp. It looks like only subscription responses send "text/xml" where all other messages contain "text/xml; charset="utf-8"". Since I'm working on an DLNA device the latter behaviour is mandatory. I changed the according lines in gena_device.c (see attached patch). I'm not sure if it would be ok for other device to have the charset field but it would help me a lot :) Best regards, Ingo 2008-06-04 Marcelo Jimenez <mroberto(at)users.sourceforge.net> * SF Bug Tracker [ 1984541 ] ixmlDocumenttoString does not render the namespace tag. Submitted By: Beliveau - belivo The problem occurs when converting a xml document using ixmlDocumenttoString containing a namespace tag created with ixmlDocument_createElementNS. The namespace tag doesn't get rendered. example: The following code fragment prints: <?xml version="1.0"?> <root></root> instead of: <?xml version="1.0"?> <root xmlns="urn:schemas-upnp-org:device-1-0"></root> Code: #include <stdlib.h> #include <upnp/ixml.h> int main() { IXML_Document* wDoc = ixmlDocument_createDocument(); IXML_Element* wRoot = ixmlDocument_createElementNS(wDoc, "urn:schemas-upnp-org:device-1-0", "root"); ixmlNode_appendChild((IXML_Node *)wDoc,(IXML_Node *)wRoot); DOMString wString = ixmlDocumenttoString(wDoc); printf(wString); free(wString); ixmlDocument_free(wDoc); return 0; } The problem was in the printing routine, not in the library data structure. 2008-05-31 Marcelo Jimenez <mroberto(at)users.sourceforge.net> * Charles Nepveu's suggestion of not allocating a thread for MiniServer when it is not compiled. 2008-05-24 Marcelo Jimenez <mroberto(at)users.sourceforge.net> * Ported Peter Hartley's patch to compile with mingw. 2008-05-24 Marcelo Jimenez <mroberto(at)users.sourceforge.net> * Added some debug capability to ixml. 2008-05-02 Marcelo Jimenez <mroberto(at)users.sourceforge.net> * Merged Charles Nepveu's IPv6 work. libupnp now is IPv6 enabled. 2008-02-06 Marcelo Jimenez <mroberto(at)users.sourceforge.net> * Breaking API so that we now hide internal data structures. 2008-02-06 Marcelo Jimenez <mroberto(at)users.sourceforge.net> * Rewrote Peter Hartley's patch to include a new extra header field in FileInfo. ******************************************************************************* Version 1.6.22 ******************************************************************************* 2017-07-07 James Cowgill <james410(at)cowgill.org.uk> Replace MD5 impmplementation with public-domain version Currently the RSA MD5 implementation is used. Unfortunately the license has some potential issues: * The license does not explicitly allow distributing derivative works. This was the original argument used in [Debian #459516](https://bugs.debian.org/459516). * The license contains an advertising clause similar to the BSD 4-clause license. This is incompatible with the GPL and if it were enforced, would require RSA to be mentioned by pretty much everyone who uses pupnp. The simple solution is to replace it with a public domain implementation. I've taken OpenBSDs implementation and tweaked it slightly for use by pupnp by: - Adjusting the includes. - Removing the __bounded__ attributes which are specific to OpenBSD. - Using the standard integer types from stdint.h. - Using memset instead of explicit_bzero. 2016-12-16 Peter Pramberger <peterpramb(at)users.sf.net> ixml/test/test_document.c is missing the string.h include, therefore the compiler complains about an implicit declaration. ******************************************************************************* Version 1.6.21 ******************************************************************************* 2016-12-16 Gabriel Burca <gburca(at)github> If the error or info log files can not be created, use stderr and stdout instead. 2016-12-08 Uwe Kleine-König <uwe(at)kleine-koenig.org> Fix out-of-bound access in create_url_list() (CVE-2016-8863) If there is an invalid URL in URLS->buf after a valid one, uri_parse is called with out pointing after the allocated memory. As uri_parse writes to *out before returning an error the loop in create_url_list must be stopped early to prevent an out-of-bound access Bug: https://sourceforge.net/p/pupnp/bugs/133/ Bug-CVE: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-8863 Bug-Debian: https://bugs.debian.org/842093 Bug-Redhat: https://bugzilla.redhat.com/show_bug.cgi?id=1388771 2016-11-30 Uwe Kleine-König <uwe(at)kleine-koenig.org> miniserver: fix binding to ipv6 link-local addresses Linux requires to have sin6_scope_id hold the interface id when binding to link-local addresses. This is already in use in other parts of upnp, so portability shouldn't be in the way here. Without this bind(2) fails with errno=EINVAL (although ipv6(7) from manpages 4.08 specifies ENODEV in this case). Fixes: https://bugs.debian.org/813249 2016-09-15 Mathew Garret <(at)mjg59 (twitter)> SF Bug Tracker #132 CVE-2016-6255: write files via POST Submitted by: Balint Reczey in 2016-08-02 From Debian's BTS https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=831857 : From: Salvatore Bonaccorso carnil@debian.org To: Debian Bug Tracking System submit@bugs.debian.org Subject: libupnp: write files via POST Date: Wed, 20 Jul 2016 11:03:34 +0200 Source: libupnp Version: 1:1.6.17-1 Severity: grave Tags: security upstream Justification: user security hole Hi See http://www.openwall.com/lists/oss-security/2016/07/18/13 and https://twitter.com/mjg59/status/755062278513319936 . Proposed fix: mjg59/pupnp-code@be0a01b Regards, Salvatore From Mathew Garret's commit: Don't allow unhandled POSTs to write to the filesystem by default ******************************************************************************* Version 1.6.20 ******************************************************************************* 2016-02-22 Jean-Francois Dockes <medoc(at)users.sf.net> SF Bugs #131, Creator: Jean-Francois Dockes I know it sounds crazy that nobody ever saw this, but the CONTENT-LENGTH value in GENA NOTIFY messages is too small by one. It appears that most current control points don't notice the extra character (an LF, which is validly there but not included in Content-Length), probably because their protocol handler is reasonably lenient, and because the missing body LF does not prevent parsing the XML. But there is a least one anal CP (Linn Kazoo) which barfs, because it reads all data until connection close and the size mismatch triggers a bug. "Proof": In gena_device.c:217 (notify_send_and_recv()) ret_code = http_SendMessage(&info, &timeout, "bbb", start_msg.buf, start_msg.length, propertySet, strlen(propertySet), CRLF, strlen(CRLF)); start_msg has all the headers, including the empty line. Content-length should be strlen(propertySet) + strlen(CRLF) (2) In gena_device.c:433 (AllocGenaHeaders()) rc = snprintf(headers, headers_size, "%s%s%"PRIzu"%s%s%s", HEADER_LINE_1, HEADER_LINE_2A, strlen(propertySet) + 1, HEADER_LINE_2B, HEADER_LINE_3, HEADER_LINE_4); HEADER_LINE_2A is "CONTENT-LENGTH: ". The following value should be strlen(propertySet) + 2 2016-01-07 Marcelo Roberto Jimenez <mroberto(at)users.sourceforge.net> Fix for a reported integer overflow 2016-01-07 Jean-Francois Dockes <medoc(at)users.sf.net> 2016-01-07 Nick Leverton <nick(at)leverton.org> SF Patches #60, Creator: Jean-Francois Dockes When libupnp is configured with --enable-ipv6 but ipv6 is not available on the system (for example because the ipv6 code is not loaded in a Linux kernel as is the case by default on Raspbian), the ipv6 socket creation call will fail in miniserver.c and the library init will fail, even if the ipv4 initialisation would have succeeded. Let a library configured with --enable-ipv6 initialize in ipv4-only mode if ipv6 is not available instead of failing. This can happen if no ipv6 code is configured or loaded in the kernel. Don't fail if IPv6 is unavailable. We might be an IPv6 enabled distro build running on an IPv4-only custom kernel. 2016-01-07 Nick Leverton <nick(at)leverton.org> SF Bug Tracker #128, Creator: Nick Leverton redefining strndup causes "error: expected identifier or '(' before '__extension__'" Fix redefinition of strnlen and strndup These are available when HAVE_STRNDUP and HAVE_STRNLEN are defined, but libupnp provides an extern prototype anyway. Recent versions of glibc define this prototype differently, causing the following compile error: src/api/UpnpString.c:47:15: error: expected identifier or '(' before '__extension__' extern char *strndup(__const char *__string, size_t __n); 2016-01-07 Nick Leverton <nick(at)leverton.org> SF Bug Tracker #129, Creator: Nick Leverton shutdown() on UDP sockets logs ENOTCONN message. https://sourceforge.net/p/pupnp/bugs/129/ Fix ENOTCONN "Error in shutdown: Transport endpoint is not connected" When logging is enabled, ssdpserver logs bursts of "Error in shutdown: Transport endpoint is not connected" This is because shutdown() is not supported for UDP sockets and under recent UNIX specifications it returns ENOTCONN if used. 2016-01-07 Nick Leverton <nick(at)leverton.org> SF Bug Tracker #127, Creator: Klaus Fischer Miniserver uses INADDR_ANY instead of HostIP https://sourceforge.net/p/pupnp/bugs/127/ The internal miniserver.c uses INADDR_ANY instead of the HostIP/IfName provided when initializing libupnp. But, this HostIP/IfName gets used for the UDP socket when multicasting SSDP messages. Because of this, miniserver may end up sending from different IP address than ssdpserver. This patch causes miniserver to use the already known interface address. 2016-01-07 Marcelo Roberto Jimenez <mroberto(at)users.sourceforge.net> SF Bug Tracker #130, Creator: Shaddy Baddah infinite loop in UpnpGetIfInfo() under WIN32 Original code makes no sense. This patch should fix it. 2015-02-04 Shaun Marko <semarko@users.sf.net> Bug tracker #124 Build fails with --enable-debug Build environment Fedora 21 X86-64 * gcc 4.9.2 How to repeat $ ./configure --enable debug $ make libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -I../upnp/inc -I./inc -I../threadutil/inc -I../ixml/inc -I./src/inc -pthread -g -O2 -Wall -MT src/api/libupnp_la-UpnpString.lo -MD -MP -MF src/api/.deps/libupnp_la-UpnpString.Tpo -c src/api/UpnpString.c -fPIC -DPIC -o src/api .libs/libupnp_la-UpnpString.o src/api/UpnpString.c:47:16: error: expected identifier or '(' before 'extension' extern char *strndup(const char *string, size_t __n); ^ Makefile:1016: recipe for target 'src/api/libupnp_la-UpnpString.lo' failed Reason for failure Build enables -O2 optimization flags which causes the inclusion of a macro implementation of strndup from include/bits/string2.h. Workarounds Disable optimization when configuring or making: $ configure CFLAGS='-g -pthread -O0' --enable-debug $ make or $ configure --enable-debug $ make CFLAGS='-g -pthread -O0' Define NO_STRING_INLINES $ export CFLAGS="-DNO_STRING_INLINES -O2" $ ./configure --enagble-debug $ make Fix * Don't declare strndup in src/api/UpnpString.c if it exists 2015-02-01 Jean-Francois Dockes <medoc@users.sf.net> Out-of-tree builds seem to be currently broken, because ixml and threadutil files need an include path to include UpnpGlobal.h, and configure tries to copy files into a directory which it does not create. The patch fixes both issues. 2014-01-03 Peng <howtofly(at)gmail.com> rewrite soap_device.c 1) separate HTTP handling from SOAP handling 2) remove repeated validity check, each check is performed exactly once 3) fix HTTP status code per UPnP spec, SOAP spec and RFC 2774
jperkin
pushed a commit
that referenced
this issue
Oct 10, 2019
Changelog: ### GMime 3.2.4 * Replaced calls to g_memmove with memmove. It seems that the latest versions of glib have deprecated g_memmove in favor of having developers use libc's memmove() function directly. This change reduces the number of compiler warnings during the gmime build process. * Added a new GMIME_DECRYPT_NO_VERIFY flag that disables signature verification. For cases where it is not necessary to verify the signatures (or it is known that there are no signatures), making use of this flag can significantly improve the performance of decrypting OpenPGP content. * Modified GMimeParser to not set the OpenPGP state for base64/uuencoded content. While the GMimeParser is parsing a MIME message (or other MIME entity), it will normally attempt to identify OpenPGP markers in the content of GMimeParts. However, when the content is base64 or uu-encoded, the parser is unable to accurately detect these markers and so in previous versions, it was falsely claiming that such MIME parts had no OpenPGP content even though it was possible, after decoding their content, that they did in fact have OpenPGP content. For more details about this bug, see issue #60. * Added reporting of RFC 5322 addr-spec syntax violations to the GMimeParserWarning API. * Fixed a stack underflow error in the uudecode.c sample. * Improved Vala bindings. - Use correct symbol prefixes which avoid loads of cname attributes. - Unhide FilterBest.charset() method which conflicts with charset field. - Object.write_to_stream conflicts with function pointer with the same name but with a different signature. Fixes https://gitlab.gnome.org/GNOME/gmime/issues/2 Fixes https://gitlab.gnome.org/GNOME/gmime/issues/3
jperkin
pushed a commit
that referenced
this issue
Oct 20, 2019
Changelog: ### GMime 3.2.4 * Replaced calls to g_memmove with memmove. It seems that the latest versions of glib have deprecated g_memmove in favor of having developers use libc's memmove() function directly. This change reduces the number of compiler warnings during the gmime build process. * Added a new GMIME_DECRYPT_NO_VERIFY flag that disables signature verification. For cases where it is not necessary to verify the signatures (or it is known that there are no signatures), making use of this flag can significantly improve the performance of decrypting OpenPGP content. * Modified GMimeParser to not set the OpenPGP state for base64/uuencoded content. While the GMimeParser is parsing a MIME message (or other MIME entity), it will normally attempt to identify OpenPGP markers in the content of GMimeParts. However, when the content is base64 or uu-encoded, the parser is unable to accurately detect these markers and so in previous versions, it was falsely claiming that such MIME parts had no OpenPGP content even though it was possible, after decoding their content, that they did in fact have OpenPGP content. For more details about this bug, see issue #60. * Added reporting of RFC 5322 addr-spec syntax violations to the GMimeParserWarning API. * Fixed a stack underflow error in the uudecode.c sample. * Improved Vala bindings. - Use correct symbol prefixes which avoid loads of cname attributes. - Unhide FilterBest.charset() method which conflicts with charset field. - Object.write_to_stream conflicts with function pointer with the same name but with a different signature. Fixes https://gitlab.gnome.org/GNOME/gmime/issues/2 Fixes https://gitlab.gnome.org/GNOME/gmime/issues/3
jperkin
pushed a commit
that referenced
this issue
Mar 22, 2020
Update ruby-net-http-persistent to 3.1.0. === 3.1.0 2019-07-24 New features: * Support ruby 2.6 Net::HTTP#write_timeout=. Pull request #99 by Víctor Roldán Betancort. * Support setting TLS min/max version. Pull request #94 by Bart. Bug fixes: * Reduce potential for memory leak through Hash default proc bindings. Pull request #64 by Dominic Metzger. * Test proxy auto detection from no_proxy in ENV. Pull request #60 by HINOHARA Hiroshi. * Add missing timestamp for 3.0 release. Pull request #78 by Joe Van Dyk. * Support IPv6 URLs in proxy checks. Pull request #82 by Nicolás Sanguinetti. * Use Net::HTTPGenericRequest#method to check idempotence for improved compatibility. Pull request #83 by Fotos Georgiadis. * Run net-http-pipeline tests in travis. Pull request #86 by T.J. Schuck. * Correct +no_proxy+ support to override Net::HTTP proxy fallback. Pull request #88 by Jared Kauppila. * Mitigate memory leak when combined with faraday. Pull request #105 by Yohei Kitamura. * Set default connection pool size for Windows. Pull request #90 by Jared Kauppila. * Fix missing +name:+ argument in documentation. Pull requests #85 by T.J. Schuck, #84 by James White. * Fix memory leak from connection pooling. Pull request #97 by Aaron Patterson. * Update tests for minitest assert_equal deprecation. Pull request #92 by Olle Jonsson. * Fix typo in Net::HTTP::Persistent#pipeline. Pull request #91 by Kazuma Furuhashi. Other: * Added bundler hoe plugin. Pull request #103 by Michael Grosser. * Updated ruby versions in Travis CI. Pull request #93 by Olle Jonsson. Pull request #103 by Michael Grosser.
jperkin
pushed a commit
that referenced
this issue
Mar 25, 2020
Update ruby-mixlib-cli to 2.1.5. 2.1.5 (2019-12-22) * Use our standard rakefile #68 (tas50) * Fix chef-style #71 (vsingh-msys) * Add windows PR testing with Buildkite #73 (tas50) * Test on Ruby 2.7 + random testing improvements #75 (tas50) 2.1.1 (2019-06-10) * Don't explode when there are unknown keys in 'config' #66 (marcparadise) 2.1.0 (2019-06-07) * Setup BuildKite for PR testing #61 (tas50) * Disable Travis testing & Update codeowners #62 (tas50) * Fix gem homepage url #64 (tsub) * [MIXLIB-CLI-63] Add deprecated_option support #65 (marcparadise) 2.0.6 (2019-05-14) * Add additional github templates and update codeowners #58 (tas50) * Improve the --help text output of 'in:' #59 (btm) * Print out human readable lists of allowed CLI options #60 (tas50) 2.0.3 (2019-03-20) * fix global state pollution issues across examples #54 (lamont-granquist) * Add back support for Ruby 2.4 #56 (tas50) 2.0.1 (2019-01-04) * Don't ship the test files in the gem artifact #51 (tas50) 2.0.0 (2019-01-04) * remove hashrockets syntax #43 (lamont-granquist) * Remove require rubygems #44 (tas50) * Update testing and contributing boilerplate #45 (tas50) * More testing / release boilerplate #46 (tas50) * Update codeowners and add github PR template #47 (tas50) * Lint the example code #49 (tas50) * update travis, drop ruby < 2.5, major version bump #52 (lamont-granquist) * actually do the major version bump #53 (lamont-granquist)
jperkin
pushed a commit
that referenced
this issue
Mar 25, 2020
Update ruby-license-acceptance to 1.0.18. 1.0.18 (2020-02-12) * Allow for thor 0.20 still #71 (tas50) 1.0.17 (2019-12-30) * Update rake requirement from ~> 10.0 to ~> 13.0 in /components/ruby #60 (dependabot-preview[bot]) * Use dependabot to update dependencies rather than blindly updating #63 (tyler-ball) * Updating default license location for Habitat on Windows #55 (stuartpreston) * Update thor requirement from ~> 0.20 to ~> 1.0 in /components/ruby #68 (dependabot-preview[bot])CVS: ----------------------------------------------------------------------
jperkin
pushed a commit
that referenced
this issue
Jul 14, 2020
Changes: - Allow truncated XLS files #55 #60 #76 tidyverse/readxl#619 - Fix long-standing "extra column" bug #73 - Support for RSTRING records (rich-text cells in older BIFF5 files) tidyverse/readxl#611 Minimum version updated in bl3 due to header changes.
jperkin
pushed a commit
that referenced
this issue
Jul 23, 2020
Upstream changes: Changes in version 1.4-1 (2020-xx-yy) warn on NULL projargs in CRS(); edzer/sp#74 Changes in version 1.4-0 (2020-02-21) prepare for new (>= 1.5.1) rgdal, which creates and listens to a comments() field of a CRS object carrying a WKT representation of a CRS rather than the proj4string; @rsb, edzer/sp#67 and edzer/sp#69 ; for more info see e.g. edzer/sp#68 and r-spatial/discuss#28 Changes in version 1.3-2 (2019-11-07) fix length > 1 in coercion to logical error; #54, #60 add is.na method for CRS objects
jperkin
pushed a commit
that referenced
this issue
Sep 9, 2020
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
jperkin
pushed a commit
that referenced
this issue
Sep 16, 2020
Update ruby-diff-lcs to 1.4.4. ## 1.4.4 / 2020-07-01 - Fixed an issue reported by Jun Aruga in the Diff::LCS::Ldiff binary text detection. [#44][] - Fixed a theoretical issue reported by Jun Aruga in Diff::LCS::Hunk to raise a more useful exception. [#43][] - Added documentation that should address custom object issues as reported in [#35][]. - Fixed more diff errors, in part reported in [#65][]. - The use of `Numeric#abs` is incorrect in `Diff::LCS::Block#diff_size`. The diff size _must_ be accurate for correct change placement. - When selecting @max_diff_size in Diff::LCS::Hunk, choose it based on `block.diff_size.abs`. - Made a number of changes that will, unfortunately, increase allocations at the cost of being safe with frozen strings. - Add some knowledge that when `Diff::LCS::Hunk#diff` is called, that we are processing the _last_ hunk, so some changes will be made to how the output is generated. - `old`, `ed`, and `reverse_ed` formats have no differences. - `unified` format will report `\ No newline at end of file` given the correct conditions, at most once. Unified range reporting also differs for the last hunk such that the `length` of the range is reduced by one. - `context` format will report `\No newline at end of file` given the correct conditions, up to once per "file". Context range reporting also differs for the last hunk such that the `end` part of the range is reduced by one to a minimum of one. - Added a bunch more tests for the cases above, and fixed `hunk_spec.rb` so that the phrase being compared isn't nonsense French. - Updated formatting. - Added a Rake task to assist with manual testing on Ruby 1.8. ## 1.4.3 / 2020-06-29 - Fixed several issues with the 1.4 on Rubies older than 2.0. Some of this was providing useful shim functions to Hoe 3.x (which dropped these older Rubies a while ago). Specifically: - Removed Array#lazy from a method in Diff::LCS::Hunk. - Changed some unit tests to use old-style Symbol-keyed hashes. - Changed some unit test helper functions to no longer use keyword parameters, but only a trailing options hash. - Made the use of `psych` dependent on `RUBY_VERSION >= 1.9`. Resolves [#63][]. ## 1.4.2 / 2020-06-23 - Camille Drapier fixed a small issue with RuboCop configuration. [#59][] - Applied another fix (and unit test) to fix an issue for the Chef team. [#60][], [#61][] ## 1.4.1 / 2020-06-23 - Fix an issue where diff sizes could be negative, and they should be. [#57][], [#58][] ## 1.4 / 2020-06-23 - Ruby versions lower than 2.4 are soft-deprecated and will not be run as part of the CI process any longer. - Akinora MUSHA (knu) added the ability for Diff::LCS::Change objects to be implicitly treated arrays. Originally provided as pull request [#47][], but it introduced a number of test failures as documented in [#48][], and remediation of Diff::LCS itself was introduced in [#49][]. - Resolved [#5][] with some tests comparing output from `system` calls to `bin/ldiff` with some pre-generated output. Resolved [#6][] with these tests. - Resolved a previously undetected `bin/ldiff` issue with `--context` output not matching `diff --context` output. - Resolved an issue with later versions of Ruby not working with an `OptParse` specification of `Numeric`; this has been changed to `Integer`. - Brandon Fish added truffleruby in [#52][]. - Fixed two missing classes as reported in [#53]
jperkin
pushed a commit
that referenced
this issue
Sep 16, 2020
Update ruby-mixlib-log package to 3.0.9. 3.0.9 (2020-08-21) * Optimize our requires #60 (tas50)
jperkin
pushed a commit
that referenced
this issue
Nov 6, 2020
Changelog, taken from NEWS file and https://github.com/immerrr/lua-mode/releases: v20201010 * minimum Emacs version requirement is now 24.3 * fix multiline literals propertization not to break subsequent syntax * lua--fill-paragraph: fix to not move point away * lua-default-application: ensure it is possible to use (HOST . PORT) to connect to remote lua process * lua-kill-process: clean up process-related variables * lua-indent-nested-block-content-align, lua-indent-close-paren-align: new variables to control placement of nested blocks and their respective closers. With lua-indent-nested-block-content-align and lua-indent-close-paren-align set to nil, it is now possible to auto-indent code like this: foo = bar(baz, { qux, quux, }, { xyzzy }) * lua-rx: fix compatibility with new-style rx macros introduced in Emacs 27 * lua-start-process: ensure comint-prompt-regexp is set locally in inferior process buffer * make "git archive" revision format reproduceable by not including the date of the archiving operation * imenu: add "require" lines to the index * lua-backward-up-list: new navigation command that puts point before the current parenthetic construction/block * lua-indent-line: improve auto-indentation of implicitly continued statements, add some performance optimizations * font-lock: stop highlighting syntax errors in assignment statements * font-lock: add highlighting of function parameters and "for" loop variables * font-lock: fix couple of corner cases of highlighting of keywords inside strings and comments * Release v20151025 ** allow setting lua-indent-level as file local variable (issue #108) ** add luadoc keyword fontification (issue #71) ** fix comments being spilled into the code (issue #25) ** add `run-lua' alias for `lua-start-process' (issue #97) ** skip shebang line when sending to inferior buffer (issue #61) ** add builtin functions and modules for Lua 5.3 (issue #90) ** fix lua-beginning-of-proc matching (issue #85) ** add `lua-documentation-function' to customize the way the documentation is shown, rename `lua-search-url-prefix' to `lua-documentation-url', auto-detect lua documentation installed in /usr/share/doc/lua (issue #82) ** fix some errors with `lua-kill-process' (issue #69) ** improve `next-error' integration in Lua subprocess buffer: "stdin:N:" entries are no longer highlighted and no longer prompt for "stdin" files * release v20140514 ** add support for Lua 5.2 goto statements ** when indenting, don't anchor to block-open tokens somefunc({ ^ don't indent next line relative to this brace ** fix several `indent-new-comment-line'-related bugs ** add support for local functions in imenu (issue #65) ** fix font lock of functions with underscores (issue #63) ** don't send shebang when sending lua buffer to subprocess (issue #61) ** fix interaction with electric-pair-mode (issue #54) ** rewrite lua-send-region to use "loadstring" rather than "dofile" - sending code to processes on remote hosts is now supported - stack traces for errors occurred in sent code point to proper lines in files - script path is preserved when sending code (issue #55) - no more hang ups when waiting for input (issue #48) or after sending code with no output (issue #60) ** increase consistency with Emacs ecosystem to improve user experience - fix character syntax hacks: '.' is now punctuation and '_' is now symbol - remove number highlighting - font-lock "nil", "true" and "false" as constants rather than keywords ** make builtin font-locking more stable, enable it after ".." operator ** add missing modulo operator (%) to line-continuation tokens ** fix interaction with electric-pair-mode (issue #54) ** when unindenting block-close tokens consider all of them, not just the first one x = foobar('arg1', function () print('foobar') end) ^ this line starts with two block-close tokens and is unindented accordingly
jperkin
pushed a commit
that referenced
this issue
Dec 23, 2020
# 2.1.1 This version has no user visible changes. # 2.1.0 * `unzip_process()` now does not fail randomly on Windows (#60). * Now all functions handle Unicode paths correctly, on Windows as well (#42, #53). * `unzip_process()` now works when R library is on different drive than `exdir` on Windows (#45) * zip functions now have a `mode` argument to choose how files and directories are assembled into the archive. See the docs for details. * zip functions now have a `root` argument, zip changes the working directory to this before creating the archive, so all files are relative to `root`. * `zip()` and `zip_append()` are not deprecated any more, as it was hard to achieve the same functionality with the other zip functions.
jperkin
pushed a commit
that referenced
this issue
Mar 8, 2021
1.0.29 (2021-02-22) Merged Pull Requests * Gate another require and simplify expand_path #44 (tas50) * Update chefstyle requirement from 1.2.1 to 1.3.2 #45 (dependabot-preview[bot]) * Update chefstyle requirement from 1.3.2 to 1.4.2 #47 (dependabot-preview[bot]) * Update chefstyle requirement from 1.4.2 to 1.4.3 #48 (dependabot-preview[bot]) * Update chefstyle requirement from 1.4.3 to 1.4.4 #49 (dependabot-preview[bot]) * Update chefstyle requirement from 1.4.4 to 1.4.5 #50 (dependabot-preview[bot]) * Update chefstyle requirement from 1.4.5 to 1.5.0 #51 (dependabot-preview[bot]) * Update chefstyle requirement from 1.5.0 to 1.5.2 #53 (dependabot-preview[bot]) * Update chefstyle requirement from 1.5.2 to 1.5.8 #57 (dependabot-preview[bot]) * Pin chef-utils on older ruby releases in test #58 (tas50) * Update chefstyle requirement from 1.5.8 to 1.5.9 #59 (dependabot-preview[bot]) * Update chefstyle requirement from 1.5.9 to 1.6.1 #60 (dependabot-preview[bot]) * Update chefstyle requirement from 1.6.1 to 1.6.2 #61 (dependabot-preview[bot]) * Update chefstyle requirement from 1.6.2 to 1.7.1 #62 (dependabot-preview[bot]) * Remove unused ffi-yajl dep #63 (tas50)
jperkin
pushed a commit
that referenced
this issue
Mar 16, 2021
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".
jperkin
pushed a commit
that referenced
this issue
Apr 26, 2021
v1.0 Released on 2020-07-18, Nelson Mandela International Day. Added * intercalate for DList (#43, Jacob Leach) * Traversable instance for DList (#45, Veronika Romashkina) * Data.DList.Internal for the DList implementation, Data.DList.Unsafe for exporting the DList constructor UnsafeDList and record label unsafeApplyDList (#55, #59) * Data.DList.DNonEmpty (#60) * GitHub Action for uploading a release (#74) * dlist-bench, a benchmark package (#71) Changed * stimes for DList defined with stimesMonoid (#46, Janek Spaderna) * Type of tail: DList a -> DList a to DList a -> [a] (#69) * GitHub Action for continuous integration testing to replace Travis-CI (#47, #50) * GHC warning and error improvements (#72, #73) * Improved documentation (#55, #70, #76, #77) Removed * list :: b -> (a -> DList a -> b) -> DList a -> b (#69) v0.8.0.8 Released on 2020-04-02, World Autism Awareness Day. Added * toList in the Foldable instance for DList (#36, Ryan Scott) Changed * QuickCheck upper bound: 2.14 to 2.15 (a7ea60d) Fixed * Documented time complexity of head for DList (#35, Simon Jakobi)
jperkin
pushed a commit
that referenced
this issue
Jul 1, 2021
Incremental 21.3.0 (2021-03-01) =============================== Bugfixes -------- - The output of incremental is now compatible with Black (#56, #60) - Incremental now properly supports PEP 440-compliant dev, rc, post suffixes (#62) - Incremental now properly supports PEP 440-compliant post releases (#37)
jperkin
pushed a commit
that referenced
this issue
Dec 13, 2021
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
jbarfield
pushed a commit
to bissinc/pkgsrc
that referenced
this issue
Mar 22, 2022
What's Changed -Rewrite theme structs in TritonDataCenter#54 -Tweak application UI in TritonDataCenter#55 -[TritonDataCenter#51] add font highlight for CommentView and StoryView in TritonDataCenter#56 -Add story tag navigation commands in TritonDataCenter#57 -Add font highlighting for ArticleView in TritonDataCenter#58 -Update documentation and configuration structures in TritonDataCenter#59 -Integrate comfy_table in TritonDataCenter#60 -Pre-release v0.9.0 in TritonDataCenter#61 Breaking changes -There are a lot of breaking changes regarding the config options and the corresponding default values. It's highly recommended to read the config documentation or the example config file to migrate from the old versions.
jperkin
pushed a commit
that referenced
this issue
Jun 13, 2022
-Support And() and Or() in render_criteria/render_anti-criteria. See wiki (#62). -Support supplying a name for AppName render criteria (#62). -Support moving notifications depending on "active" monitor. See focus_follows and associated issue (#60). -Support loading and using SVGs (#53). -Fixed a bug where notifications would spawn at the top left of the screen for a frame or so when parented somewhere else (#71). -Updated dependencies to resolve some "security vulnerabilities". -Probably some other misc fixes.
jperkin
pushed a commit
that referenced
this issue
Aug 1, 2022
Breaking Changes Move Parser Configuration into a Feature Option by @Builditluc in #63 Exciting New Features Add option to change the keybindings via configuration by @Builditluc in #38 Add AUR install option by @ThomasFrans in #42 Add a desktop-entry for packaging by @ThomasFrans in #44 Add checksums for the release assets by @Builditluc in #59 Bug Fixes Fix Header Selection by @Builditluc in #41 Fix Keybinding Crash by @Builditluc in #46 Add missing element after line split by @ThomasFrans in #48 Disable stdout logging for release builds by @ThomasFrans in #47 Fix publish action in the cd workflow by @Builditluc in #60 Fix toc not having scrollbars by @Builditluc in #64 Other Changes Update Bug Report Issue Template by @Builditluc in #40 Add label requirement to ci workflow by @Builditluc in #52 Add documentation job to ci workflow by @Builditluc in #55 Fix typo in search.rs by @eltociear in #56 Add yashinghcodes/wik project to similar projects by @Builditluc in #58 Increase Stale Days to 365 by @Builditluc in #61
jperkin
pushed a commit
that referenced
this issue
Nov 1, 2022
0.6.20 (2022-10-30) Bug Fixes - Support bad Gif data gracefully (fixes #60) (c0acfa69) - Build script generates app icon on windows (548b9749)
jperkin
added a commit
that referenced
this issue
Dec 16, 2022
goffice 0.10.53: Morten: * Fix problem rendering "...E-xx" numbers. [#60] * Hack around introspection issue. [Part of #59] * Fix crash in plot [Gnumeric #667] goffice 0.10.52: Morten: * Improve GOComboBox css styling. * Reimplement GOActionComboStack using GtkComboBox. * Introspection fixes. * Documentation fixes. * Fix go_{add,sub}_epsilon{,l} confusion in fallback code for win32. B.S: * Fix long double problem with go_dtoa. [#57] goffice 0.10.51: Jean: * Do not clip markers in scatter plots. [#584] * Draw background and outline for data labels. [#592] John Denker: * Fix go_fake_{ceil,floor} confusion. [#56] Morten: * Introspection updates. * Improve go_pow10 accuracy by avoiding pow as much as possible. * Take evasive action re g_memdup. goffice 0.10.50: Jean: * Fix data update in matrix plots, see Debian #988397. * Fix rendering on high resolution monitors when scale is not 1. [#578] Morten: * Simplify regression equation code. * Use only 3 decimals for R^2 for regression lines. * Eliminate empty Special category from format selector. [#29] * Improve regression line equation for date axes. [#41] goffice 0.10.49: Morten: * Fix ods format problem. [Gnumeric #518] * Fix axis line crash. [Gnumeric #524] * Add state and saved-state to GODoc.
jperkin
pushed a commit
that referenced
this issue
Dec 18, 2022
# lintr 3.0.2 * Fix test to avoid leaving behind cache files in the global cache directory. # lintr 3.0.1 * Skip multi-byte tests in non UTF-8 locales (#1504) * `modify_defaults()` no longer uses the mistaken `"lintr_function"` S3 class, instead applying the `"linter"` class also common to `Linter()`. `Linter()` also includes `"function"` in the S3 class of its output to facilitate S3 dispatch to `function` methods where appropriate (#1392, @MichaelChirico). ## Changes to defaults * `brace_linter()` allows opening curly braces on a new line when there is a comment ending the preceding line (#1433 and #1434, @IndrajeetPatil). * `seq_linter()` produces lint for `seq(...)`, since it also cannot properly handle empty edge cases (#1468, @IndrajeetPatil). * `seq_linter()` additionally lints on `1:n()` (from {dplyr}) and `1:.N` (from {data.table}) (#1396, @IndrajeetPatil). * `literal_coercion_linter()` lints {rlang}'s atomic vector constructors (i.e., `int()`, `chr()`, `lgl()`, and `dbl()`) if the argument is a scalar (#1437, @IndrajeetPatil). * `redundant_ifelse_linter()`'s lint message correctly suggests negation when the `yes` condition is `0` (#1432, @IndrajeetPatil). * `seq_linter()` provides more specific replacement code in lint message (#1475, @IndrajeetPatil). ## New and improved features * `unreachable_code_linter()` ignores trailing comments if they match a closing nolint block (#1347, @AshesITR). * New `function_argument_linter()` to enforce that arguments with defaults appear last in function declarations, see the [Tidyverse design guide](https://design.tidyverse.org/args-data-details.html) (#450, @AshesITR). * New `allow_trailing` argument added to `assignment_linter()` to check when assignment operators are at the end of a line, and the value is on the following line (#1491, @ashbaldry) ## New features * `commented_code_linter()` now lints commented argument code, containing a trailing comma, as well (#386, @AshesITR). For example a comment containing `# na.rm = TRUE,` now triggers a lint. ## Bug fixes * `object_length_linter()` does not fail in case there are dependencies with no exports (e.g. data-only packages) (#1509, @IndrajeetPatil). * `get_source_expressions()` no longer fails on R files that match a knitr pattern (#743, #879, #1406, @AshesITR). * Parse error lints now appear with the linter name `"error"` instead of `NA` (#1405, @AshesITR). Also, linting no longer runs if the `source_expressions` contain invalid string data that would cause error messages in other linters. * Prevent `lint()` from hanging on Rmd files with some syntax errors (#1443, @MichaelChirico). * `get_source_expressions()` no longer omits trailing non-code lines from knitr files (#1400, #1415, @AshesITR). This fixes the location information for `trailing_blank_lines_linter()` in RMarkdown documents without terminal newlines. * The `vignette("lintr")` incorrectly cited `exclude` as the key for setting file exclusions in `.lintr` when it is actually `exclusions`. (#1401, @AshesITR) * Fixed file exclusion detection in `lint_dir()` so it no longer errors if there are multiple exclusions or no global exclusions configured for a single file (#1413, #1442, @AshesITR). ## Other changes * The minimum needed version for soft dependency `{withr}` has been bumped to `2.5.0` (#1404, @IndrajeetPatil). * Changed the deprecation warning for `with_defaults()` to also mention `modify_defaults()` (#1438, @AshesITR). # lintr 3.0.0 ## Breaking changes * All linters are now function factories (i.e., functions that return functions) for consistency. Previously, only linters with customizable parameters were factories (#245, @fangly, @AshesITR, and @MichaelChirico). This means that usage such as `lint("file.R", seq_linter)` should be updated to `lint("file.R", seq_linter())`, and the following update for custom linters: ```r my_custom_linter <- function(source_expression) { ... } # becomes my_custom_linter <- function() Linter(function(source_expression) { ... }) ``` * Exclusions specified in the `.lintr` file are now relative to the location of that file and support excluding entire directories (#158, #438, @AshesITR). * Removed long-deprecated linters (they've been marked as deprecated since v1.0.1 in 2017): + `absolute_paths_linter()` + `camel_case_linter()` + `multiple_dots_linter()` + `snake_case_linter()` + `trailing_semicolons_linter()` * Removed `return()` from `all_undesirable_functions` because early returns (which often improve readability and reduce code complexity) require explicit use of `return()`. Follow #1100 for an upcoming `return_linter()` to lint unnecessary `return()` statements (#1146, @AshesITR). Note that you can replicate old behavior by supplying `return` as a custom undesirable function: `undesirable_function_linter(c(all_undesirable_functions, list(return = NA)))` ## Deprecations * Lints are now marked with the name of the `linter` that caused them instead of the name of their implementation function. Deprecated the obsolete `linter` argument of `Lint()` (#664, #673, #746, @AshesITR). Downstream custom linters should follow suit. * Renamed `semicolon_terminator_linter()` to `semicolon_linter()` for better consistency. `semicolon_terminator_linter()` survives but is marked for deprecation. The new linter also has a new signature, taking arguments `allow_compound` and `allow_trailing` to replace the old single argument `semicolon`, again for signature consistency with other linters. * The following linters were subsumed into `brace_linter()` and are now deprecated; see the item on `brace_linter()` below: + `closed_curly_linter()` + `open_curly_linter()` + `paren_brace_linter()` * The `...` argument for `lint()`, `lint_dir()`, and `lint_package()` has been promoted to an earlier position to better match the [Tidyverse design principle](https://design.tidyverse.org/args-data-details.html) of data->descriptor->details. This change enables passing objects to `...` without needing to specify non-required arguments, e.g. `lint_dir("/path/to/dir", linter())` now works without the need to specify `relative_path`. This affects some code that uses positional arguments (#935, @MichaelChirico). + For `lint()`, `...` is now the 3rd argument, where earlier this was `cache`. + For `lint_dir()` and `lint_package()`, `...` is now the 2nd argument, where earlier this was `relative_path`. * Deprecated argument `source_file` to exported functions `with_id()` and `ids_with_token()`. It has been renamed to `source_expression` to better reflect that this argument is typically the output of `get_source_expressions()`. For now, the old argument `source_file` can still be used (with warning). The now-private functional versions of many linters also underwent the same renaming (`source_file` -> `source_expression`). This has no direct effect on packages importing lintr, but is mentioned in case custom linters imitating `lintr` style had also adopted the `source_file` naming and want to adapt to keep in sync. * Deprecated `with_defaults()` in favor of `linters_with_defaults()`, and add `modify_defaults()` which is intended to be used more generally to modify (i.e., extend, trim, and/or update) a list of defaults. Note that the argument corresponding to `with_defaults()`'s `default=` is called `defaults=` (i.e., pluralized) in both of these, and that usage like `with_defaults(default = NULL, ...)` should be converted to `linters_with_defaults(defaults = list(), ...)` (#1029, #1336, #1361, @AshesITR and @MichaelChirico). * Deprecated the `find_line()` and `find_column()` helpers from the item-level `expressions` returned with `get_source_expressions()`. These helpers were typically associated with regex-based logic for building linters, which is rarely needed and prone to false positives; now that lintr almost exclusively uses XPath-based logic for linters, these are no longer necessary (#1373, @MichaelChirico). ## Other changes to defaults ### Updates to `default_linters` * New `brace_linter()` which combines several curly brace related linters, deprecating the following predecessors (#1041, @AshesITR): + `closed_curly_linter()`; both now also allow `}]` in addition to `})` and `},` as exceptions, i.e., `}` doesn't need to be on its own line if paired with a closing square bracket, a closing parenthesis, or a comma. Also improved lint metadata so that source markers land at the closing brace instead of the closing parenthesis to improve the experience of fixing the lint (#583, @AshesITR). + `open_curly_linter()`; both also no longer lint unnecessary trailing whitespace (use `trailing_whitespace_linter()` for this) and also allow `(`, `,`, and `%>%` on preceding lines as exceptions, i.e., `{` can be alone on a line if the previous line is terminated with an opening parenthesis, a comma, or a pipe (`%>%`) (#487, #1028, @AshesITR). + `paren_brace_linter()`; `brace_linter()` also lints `if`/`else` and `repeat` with missing whitespace. + `brace_linter()` also newly enforces the following rules surrounding curly braces (originally Google linters, see below): - Require `else` to come on the same line as the preceding `}`, if present (#884, @MichaelChirico). - Require functions spanning multiple lines to use curly braces (#987, @MichaelChirico). - Require balanced usage of `{}` in `if`/`else` conditions, i.e., if the `if` branch uses braces, then so must the `else` branch, and _vice versa_ (#983, @MichaelChirico). * New `paren_body_linter()` checks that there is a space between a right parenthesis and a body expression (#809, @kpagacz). * Added `semicolon_linter()` as a default because it enforces a tidyverse style guide rule (#683, @AshesITR). * `assignment_linter()` (#915, @MichaelChirico): + Right assignments are now linted by default (`->` and `->>`). + New argument `allow_cascading_assign` (`TRUE` by default) toggles whether to lint `<<-` and `->>`. + New argument `allow_right_assign` (`FALSE` by default) toggles whether to lint `->` and `->>`. * `commented_code_linter()`: use the parse tree to find comments, eliminating some false positives (#451, @AshesITR). * `equals_na_linter()` (#545, @MichaelChirico): + Extended to lint `x != NA` (before, only `==` was caught) and `NA == x` (before, only `NA` on RHS was caught). + Extended to skip usages in comments like `is.na(x) # use is.na(x), not x == NA`. * `function_left_parentheses_linter()`: improved location information (#1266, #1267, @AshesITR). * `infix_spaces_linter()`: + Added argument `allow_multiple_spaces` (`TRUE` by default) which toggles whether to generate a lint for operators used with multiple spaces, e.g. `x + 2`. The default setting allows extra spacing to be used to increase line-to-line alignment (#940, @f-ritter and @MichaelChirico). + Extended so that usages like `a~b` and `function(a=1) { ... }` are linted (#930, #michaelchirico). + Added argument `exclude_operators` to disable lints on selected infix operators. By default, all "low-precedence" operators throw lints; see `?infix_spaces_linter` for an enumeration of these. (#914, @MichaelChirico). + Add an exception for `/` usage in `box::use()` declarations (#1087, @klmr). * `line_length_linter()`: place the source marker at the margin of the affected line to improve user experience during de-linting -- just press <kbd>Return</kbd> (#735, @AshesITR).* * `no_tab_linter()`: use more reliable matching (e.g., excluding matches found in comments; #441, @russHyde). * `object_length_linter()`: correctly detect generics and only count the implementation class towards the length. This prevents false positive lints in the case of long generic names, e.g. `very_very_very_long_generic_name.short_class` no longer produces a lint (#871, @AshesITR). * `object_name_linter()`: + Improved generic detection -- in user-defined method `my_method.upstream.class`, `upstream.class` no longer throws a lint because the generic (`my_method`) properly uses `snake_case` (#737, @AshesITR). + Exclude special R namespace hook functions such as `.onLoad()` (#500, #614, @AshesITR and @MichaelChirico). + Correctly detect imported functions when linting packages (#642, @AshesITR). + Correctly detect assignment generics like `names<-.class_name` (#843, @jonkeane). + Added new styles `"symbols"` and `"SNAKE_CASE"` (#494, #495, #615, #670, @MichaelChirico and @AshesITR). - `"symbols"` is a new default style which won't lint all-symbol object names. In particular, that means operator names like `%+%` are allowed. + No longer lints names used in `$` extractions (#582, @AshesITR). * `object_usage_linter()`: + Detect global variables if there are top-level dollar-assignments (#666, @AshesITR). + Report usage warnings spanning multiple lines (#507, @AshesITR). + Detect usages inside `glue::glue()` constructs (#942, @AshesITR). + Extended to include functions assigned with `=` instead of `<-` (#1081, @MichaelChirico). + Detect functions exported by packages that are explicitly attached using `library()` or `require()` calls (#1127, @AshesITR). + Improved location information in some cases where the previous regex-based approach didn't work, e.g. unicode characters in variable names (#1285, @AshesITR). + Correctly detect functions declared within `assign()` and `setMethod()` (#1322, @AshesITR). * `spaces_inside_linter()`: ignore spaces preceding trailing comments (#636, @MichaelChirico). * `T_and_F_symbol_linter()`: + Added as a default because it enforces a tidyverse style guide rule (#517, @AshesITR). + No longer lint occurrences of `T` and `F` when used for subsetting, and give a better message when used as variable names (#657, @AshesITR). * `trailing_blank_lines_linter()`: + Extended to lint files without a terminal newline (#675, @AshesITR). + Also, running `lint()` on a file without a terminal newline no longer throws a `warning()`. * `trailing_whitespace_linter()`: + Extended to also lint completely blank lines by default (#1044, @AshesITR). + Added argument `allow_empty_lines` (`FALSE` by default) to toggle this behavior. + Improved so that trailing whitespace inside string literals does not trigger a lint (#1045, @AshesITR). + Added argument `allow_in_strings` (`TRUE` by default) to toggle this behavior. * `undesirable_function_linter()`: + Added new functions to `default_undesirable_functions` related to debugging (#876, @MichaelChirico): - `browser()` - `debug()` - `debugcall()` - `debugonce()` - `trace()` - `untrace()` + No longer lints `library()` and `require()` calls attaching a package with an undesired name, e.g. `library(foo)` (#814, @kpagacz and @MichaelChirico). + No longer lints undesirable symbols if they are used as names in `$` extractions (#1050, @AshesITR). + Added more explanation why certain functions might be undesirable and what alternatives to use; ditto for `undesirable_operator_linter()` (#1133, #1146, #1159, @AshesITR). ### Other noteworthy changes * `cyclocomp_linter()`: set the default `complexity_limit` to 15. This brings the default into sync with what is enforced via `default_linters` (#693, @AshesITR). * `lint_package()` now lints files in the `demo` directory by default (#703, @dmurdoch). * Moved the default lintr cache directory from `~/.R/lintr_cache` (which was a violation of CRAN policy) to `R_user_dir("lintr", "cache")`. Note that 3.0.0 is a major version update and invalidates the old cache anyway, so it can be safely deleted (#1062, @AshesITR). ## New and improved features ### New linters * `backport_linter()` for detecting mismatched R version dependencies (#506, #1316, #1318, #1319, @MichaelChirico and @AshesITR). * `duplicate_argument_linter()` similarly checks that there are no duplicate arguments supplied to function calls (#850, @renkun-ken). * `missing_argument_linter()` to check for empty (missing) arguments in function calls (#563, #1152, @renkun-ken and @AshesITR). * `missing_package_linter()` to check if packages in calls to `library()` and friends are missing (#536, #1037, @renkun-ken and @MichaelChirico). * `namespace_linter()` to check for common mistakes in `pkg::symbol` usages (#548, @renkun-ken). * `package_hooks_linter()` to run a series of checks also done by `R CMD check` on the `.onLoad()`, `.onAttach()`, `.Last.lib()` and `.onDetach()` hooks (#882, @MichaelChirico). * `pipe_call_linter()` to enforce that all steps of `magrittr` pipelines use explicit calls instead of symbols, e.g. `x %>% mean()` instead of `x %>% mean` (#801, @MichaelChirico). * `sprintf_linter()` to check for common mistakes in `sprintf()` usage (#544, #624, @renkun-ken and @AshesITR). * `unused_import_linter()` to detect unnecessary `library()` calls in R scripts (#239, @jimhester, @AshesITR). #### Google linters Google is a heavy user of lintr internally, and has developed a large set of linters improving code consistency and correcting common R usage mistakes. This release includes many of these linters that are of general interest to the broader R community. More will be included in future releases. See, e.g. #884, #979, #998, #1011, #1016, #1036, #1051, #1066, and #1067; special thanks to @MichaelChirico and @michaelquinn32. * `any_duplicated_linter()` Require usage of `anyDuplicated(x) > 0L` over `any(duplicated(x))` and similar. * `any_is_na_linter()` Require usage of `anyNA(x)` over `any(is.na(x))`. * `class_equals_linter()` Prevent comparing `class(x)` with `==`, `!=`, or `%in%`, where `inherits()` is typically preferred. * `condition_message_linter()` Prevent condition messages from being constructed like `stop(paste(...))` (where just `stop(...)` is preferable). * `conjunct_test_linter()` Require usage of `expect_true(x); expect_true(y)` over `expect_true(x && y)` and similar. * `consecutive_stopifnot_linter()` Require consecutive calls to `stopifnot()` to be unified into one. * `expect_comparison_linter()` Require usage of `expect_gt(x, y)` over `expect_true(x > y)` and similar. * `expect_identical_linter()` Require usage of `expect_identical()` by default, and `expect_equal()` only by exception. * `expect_length_linter()` Require usage of `expect_length(x, n)` over `expect_equal(length(x), n)` and similar. * `expect_named_linter()` Require usage of `expect_named(x, n)` over `expect_equal(names(x), n)` and similar. * `expect_not_linter()` Require usage of `expect_false(x)` over `expect_true(!x)`, and _vice versa_. * `expect_null_linter()` Require usage of `expect_null(x)` over `expect_equal(x, NULL)` and similar. * `expect_s3_class_linter()` Require usage of `expect_s3_class(x, k)` over `expect_equal(class(x), k)` and similar. * `expect_s4_class_linter()` Require usage of `expect_s4_class(x, k)` over `expect_true(methods::is(x, k))`. * `expect_true_false_linter()` Require usage of `expect_true(x)` over `expect_equal(x, TRUE)` and similar. * `expect_type_linter()` Require usage of `expect_type(x, t)` over `expect_equal(typeof(x), t)` and similar. * `fixed_regex_linter()` Require `fixed = TRUE` or `stringr::fixed()` for regular expressions that can be expressed statically, e.g. `strsplit(x, "[.]")` can be `strsplit(x, ".", fixed = TRUE)`. + Added parameter `allow_grepl` (default `FALSE`) to toggle whether `grepl()` usages should be linted. These might be treated separately because `grepl("^x", NA)` is `FALSE`; the `startsWith()` equivalent to get `FALSE` for missing input is clunkier, but more explicit: `!is.na(x) & startsWith(x, string)` (#1376, @MichaelChirico). * `ifelse_censor_linter()` Require usage of `pmax()` / `pmin()` where appropriate, e.g. `ifelse(x > y, x, y)` is `pmax(x, y)`. * `inner_combine_linter()` Require inputs to known-vectorized functions to be combined first rather than later, e.g. `as.Date(c(x, y))` over `c(as.Date(x), as.Date(y))`. * `literal_coercion_linter()` Require using correctly-typed literals instead of direct coercion, e.g. `1L` instead of `as.numeric(1)`. * `nested_ifelse_linter()` Prevent nested calls to `ifelse()` like `ifelse(A, x, ifelse(B, y, z))`, and similar. * `numeric_leading_zero_linter()` Require a leading `0` in fractional numeric constants, e.g. `0.1` instead of `.1`. * `outer_negation_linter()` Require usage of `!any(x)` over `all(!x)` and `!all(x)` over `any(!x)`. * `paste_linter()` lint for common mis-use of `paste()` and `paste0()`: + `paste0()` encouraged instead of `paste(sep = "")`. + `toString()` or `glue::glue_collapse()` encouraged instead of `paste(x, collapse = ", ")`. + Lint `sep=` passed to `paste0()` -- typically a mistake. * `redundant_ifelse_linter()` Prevent usage like `ifelse(A & B, TRUE, FALSE)` or `ifelse(C, 0, 1)` (the latter is `as.numeric(!C)`). * `regex_subset_linter()` Require usage of `grep(ptn, x, value = TRUE)` over `x[grep(ptn, x)]` and similar. * `string_boundary_linter()` Require usage of `startsWith(x, ptn)` over `grepl("^ptn", x)` or `substr(x, 1, 3) == ptn` and similar. * `strings_as_factors_linter()` Check for code designed to work before and after the `stringsAsFactors = FALSE` default change in R 4.0 by examining code for `data.frame()` usages susceptible to assumptions about the default value of `stringsAsFactors=`. * `system_file_linter()` Prevent usage like `file.path(system.file("A", package = "pkg"), "B")` where simply `system.file("A", "B", package = "pkg")` is more concise and readable. * `unreachable_code_linter()` Prevent code after `return()` and `stop()` statements that will never be reached (extended for #1051 thanks to early user testing, thanks @bersbersbers!). * `vector_logic_linter()` Require use of scalar logical operators (`&&` and `||`) inside `if()` conditions and similar. * `yoda_test_linter()` Require usage of `expect_identical(x, 1L)` over `expect_equal(1L, x)` and similar. ### Other features and improvements * **Documentation**: Reorganize linter documentation into new tag-based Rd pages (#888, #1015, @AshesITR). + Each linter has its own help page. + `?linters` also links to tag help pages, collecting linters with a similar goal. + Each linter can have multiple tags. + `available_linters()`: new function to list available linters and their tags. This feature is extensible by package authors providing add-on linters for {lintr}. + `available_tags()`: new function to list available tags. + `linters_with_tags()`: new function to help build a list of linters using tags. * **Encodings**: lintr now supports non-system character Encodings. The correct the correct encoding is auto-detected from .Rproj or DESCRIPTION files in your project. Override the default in the `encoding` setting of lintr (#752, #782, @AshesITR). * **Jenkins CI**: Support for writing comments to GitHub repo when running in Jenkins CI (#488, @fdlk). * **Performance**: Optimized performance-critical functions in lintr, such as `get_source_expressions()` resulting in about 2x speedup in our test suite and even more for complex files (#1169, #1197, #1200, #1201, #1214, @MichaelChirico and @AshesITR). Average `lint_package()` execution time is down about 30% and the median package sees about 40% improvement. * **Raw strings**: Several linters tightened internal logic to allow for raw strings like `R"( a\string )"` (#1034, #1285, @MichaelChirico and @AshesITR). * **Selective exclusion syntax**: New syntax to exclude only selected linters from certain lines or passages. Use `# nolint: linter_name, linter2_name.` or `# nolint start: linter_name, linter2_name.` in source files or named lists of line numbers in `.lintr`. Note the terminal `.` is required. Also allows for partial matching as long as the supplied prefix is unique, e.g. `# nolint: infix_spaces.` works to exclude `infix_spaces_linter` (#605, #872, @AshesITR). + Added the linter name to lintrs output to facilitate discovery of the correct name (#1357, @AshesITR). * Improved S3 generic detection for non-standard S3 generics where `UseMethod()` is called after several preceding expressions (#846, @jonkeane). * New `sarif_output()` function to output lints to SARIF output (#1424, @shaopeng-gh) * `extraction_operator_linter()`: no longer lint `x[NULL]` (#1273, @AshesITR). * `is_lint_level()`: new exported helper for readably explaining which type of expression is required for a custom linter. Some linters are written to require the full file's parse tree (for example, `single_quotes_linter()`). Others only need single expressions, which is more cache-friendly (most linters are written this way to leverage caching) (#921, @MichaelChirico). * `lint_dir()` excludes the `renv` and `packrat` directories by default (#697, @AshesITR). * `lint()`: new optional argument `text` for supplying a line or lines directly, e.g. if the file is already in memory or linting is being done _ad hoc_ (#503, @renkun-ken). * `seq_linter()`: improve lint message to be clearer about the reason for linting (#522, @MichaelChirico). * `unneeded_concatenation_linter()`: + Correctly considers arguments in pipelines (`%>%` or `|>`; #573, #1270, @michaelquinn32 and @AshesITR). + New argument `allow_single_expression`, default `TRUE`, toggling whether `c(x)` should be linted, i.e., a call to `c()` with only one entry which is not a constant. In some such cases, `c()` can simply be dropped, e.g. `c(a:b)`; in others, the parentheses are still needed, e.g. `-c(a:b)` should be `-(a:b)`; and in still others, `c()` is used for the side-effect of stripping attributes, e.g. `c(factor(letters))` or `c(matrix(1:10, 5, 2))`. In this last case, `c()` can (and should) in most cases be replaced by `as.vector()` or `as.integer()` for readability. In fact, we suspect it is _always_ preferable to do so, and may change the default to `allow_single_expression = FALSE` in the future. Please report your use case if `as.vector()` does not suit your needs (#1344, @MichaelChirico). * `use_lintr()`: new exported helper for creating a minimal `.lintr` configuration (#902, @AshesITR). * `xml_nodes_to_lints()`: new exported helper for converting `xml_node` objects obtained using linter logic expressed in XPath into `Lint` objects (#1124, #1216, #1234, @MichaelChirico and @AshesITR). ## Bug fixes * **RStudio**: Source markers are cleared when there are no lints (#520, @AshesITR). * Error message for mismatched starts and ends of exclusion ranges is now more helpful. (#571, #860, @AshesITR and @danielinteractive). * Improved location information for R parse errors (#894, #892, @renkun-ken and @AshesITR). * `get_source_expressions()`: + Fix possible error on invalid XML produced by `xmlparsedata::xml_parse_data()` (#559, @renkun-ken). + Fix handling zero-length variable name error (#566, @renkun-ken). + Malformed Rmd files now cause a lint instead of an error (#571, @AshesITR). + No longer fails if `getParseData()` returns a truncated (invalid) Unicode character as parsed text (#815, @leogama). + Fixes the `text` value for `STR_CONST` nodes involving 1- or 2-width octal escapes (e.g. `"\1"`) to account for an R parser bug (https://bugs.r-project.org/show_bug.cgi?id=18323; #1056, @MichaelChirico). + Handle Rmd inputs containing unevaluated code blocks with named format specifiers (#472, @russHyde). * `line_length_linter()`: fix a bug causing duplicate lints for lines containing multiple expressions (#681, @AshesITR). * `lint_package()`: + Warns and returns `NULL` if no package is found (instead of giving a peculiar error message; #776, @MichaelChirico). + Stricter about what is considered to be a package -- folders named `DESCRIPTION` are ignored (#702, @MichaelChirico). * `linters_with_defaults()` (formerly `with_defaults()`): + No longer duplicates the `lintr_function` class when it is already present (#511, @AshesITR). + Warns if a named argument is `NULL` but its name is not in `defaults` (#1049, @AshesITR). * `linters_with_defaults()` handles automatic naming of very long arguments correctly (#774, @MichaelChirico). * `save_cache()` will now recursively create the cache directory; this avoids errors that could arise if any parent directories do not exist (#60, @dankessler). * `spaces_left_parentheses_linter()`: fix a bug causing warnings like "In `parent == parent[before_operator_idx]` longer object length is not a multiple of shorter object length" in nested expressions (#654, @AshesITR). ## Internals * Added a new, more restrictive test workflow - `test-package` - that fails on warnings emitted by tests (#1263, #1272, @AshesITR). * Added a secondary, more restrictive lint workflow - `lint-changed-files` - for newly written / modified code (#641, @dragosmg). * Several optional `Imported` packages have become `Suggested` dependencies: `httr`, `testthat`, and `rstudioapi`. This should allow snappier CI builds for usages not relying on some more "peripheral" features of the package. * Special thanks to @bersbersbers for early testing on the 3.0.0 changes. * Switched CI from Travis to GitHub Actions, using the full tidyverse recommended `R CMD check`. Code coverage and linting are implemented using separate GitHub Actions workflows (#572, @dragosmg). * Updated R CMD GitHub Actions workflow to check for R 3.6 on Ubuntu, instead of R 3.3, and for R 4.0 on Windows, instead of R 3.6 (#803, @ dragosmg). * `lintr` now uses the 3rd edition of `testthat` (@MichaelChirico, @AshesITR, #910, #967).
jperkin
pushed a commit
that referenced
this issue
Jan 12, 2023
Change log: 4.18.1 (2023-01-05) ====== - XfceFileNameInput - wrap error message (Issue #60) - xfce4-about: Removed excess square brackets - Revert "XfceShortcutsGrabber: Detect auto-repeat key press" - Translation Updates: Hebrew, Russian, Swedish
jperkin
pushed a commit
that referenced
this issue
Feb 7, 2023
1.7.0 (2022-11-17) What's Changed * Extract creation of Net::HTTP in httpproxy by @wishdev in #41 * Fix httpd error in CJK directory by @jeremyevans in #42 * Use GitHub Actions instead of Travis CI (retry) by @deivid-rodriguez in #40 * Skip env-locale-sensitive CGI test on the "java" platform by @headius in #46 * Make readpartial limit chunk to appropriate size by @wishdev in #45 * Do not use ensure in a block without begin by @jeremyevans in #49 * Allow empty POST and PUT requests without content length by @jeremyevans in #50 * Only run test_big_bodies test on Ruby 2.5+ by @jeremyevans in #51 * Fix test when run with US-ASCII encoding by @jeremyevans in #52 * Allow shutdown_pipe to be passed in via @config by @wishdev in #44 * Ensure server port numbers are numeric and ensure they are stored as ... by @wishdev in #55 * Fix shutdown_pipe test issue by @wishdev in #54 * Allow EPROTOTYPE error when writing junk to a socket by @jeremyevans in #56 * Use ruby/setup-ruby instead of actions/setup-ruby by @hsbt in #58 * Refix test_shutdown_pipe by @wishdev in #59 * add mime type of extention mjs by @paulownia in #60 * Make it more strict to interpret some headers by @mame in #61 1.8.0 (2023-01-27) What's Changed * Use frozen strings by @kirs in #65 * Use test-unit by @hsbt in #66 * More rubies on CI, deprecating ruby 2.3 due to test failure by @mathieujobin in #68 * Adds common mime types by @gotoken in #75 * add mime type for .webmanifest extension by @olleolleolle in #76 * CI: use bundler-cache: true by @olleolleolle in #79 * Typo by @printfinn in #78 * s/RubyVM::JIT/RubyVM::MJIT/g by @k0kubun in #82 * Fix invalid use of IP addresses in SNI by @jeremyevans in #83 * Bump actions/checkout from 2 to 3 by @dependabot in #91 * remove unneeded bin/console and bin/setup files from gemspec by @Benjamin-L in #94 * Accept put requests by @bharjr01 in #70 * Move the host request parsing to a separate method. by @wishdev in #85 * Only output prime information to $stderr if $VERBOSE by @jeremyevans in #88 * Better support for connection upgrade and bi-directional streaming. by @ioquatix in #101 1.8.1 (2023-01-27) What's Changed * Body should be non-frozen by default. by @ioquatix in #103 * Join test thread. by @ioquatix in #104 * Fix several regexp warnings. by @ioquatix in #105
jperkin
pushed a commit
that referenced
this issue
Feb 27, 2023
v0.8.2 - fix performance regression when translating en to en #63 v0.8.1 - Critical hot fix for app failing to launch when requesting weekly forecast since 0.8.0 due to necessary file not being included in the release build v0.8.0 - extend language support #58 - add geocodig fallback #59 - update translation handling #60
jperkin
pushed a commit
that referenced
this issue
May 21, 2023
0.1.51 (2023-05-17) * Land #60, Fix crash when running socks proxy4a comm
jperkin
pushed a commit
that referenced
this issue
Jul 4, 2023
What's Changed Bump deps and tools by @gaborbernat in #56 Add pyproject-fmt by @gaborbernat in #57 Bump pypa/gh-action-pypi-publish from 1.6.5 to 1.7.1 by @dependabot in #60 docs: remove (dynamic) years from copyright by @paravoid in #58 Bump pypa/gh-action-pypi-publish from 1.7.1 to 1.8.1 by @dependabot in #61 Bump deps and tools by @gaborbernat in #62 Bump pypa/gh-action-pypi-publish from 1.8.1 to 1.8.3 by @dependabot in #63 Bump pypa/gh-action-pypi-publish from 1.8.3 to 1.8.5 by @dependabot in #66 Bump deps and tools by @gaborbernat in #67 Bump deps and tools by @gaborbernat in #70 Drop 2.7 test by @gaborbernat in #72 Add trusted-publish by @gaborbernat in #73 Add 3.12 support by @gaborbernat in #74 Bump pypa/gh-action-pypi-publish from 1.8.5 to 1.8.6 by @dependabot in #76 git ls-files -z -- .github/workflows/check.yml | xargs -0 sed -i 's|3.12.0-alpha.7|3.12.0-beta.1|g' by @gaborbernat in #80 Add ruff by @gaborbernat in #81
jperkin
pushed a commit
that referenced
this issue
Sep 12, 2023
v0.1.7 What's Changed - Feature: + supported in ORIGIN by @Dajamante in #70 - Add changelog enforcer by @Urhengulas in #71 - CI: Install Rust manually by @Urhengulas in #72 - Update CI by @Urhengulas in #74 - End of year refactoring by @Urhengulas in #75 - Goodbye bors by @Urhengulas in #77 - Summer cleanup by @Urhengulas in #79 - Release v0.1.7 by @Urhengulas in #80 v0.1.6 What's Changed - Print a message when linking normally fails by @jonas-schievink in #58 - Add entry to change log by @justahero in #59 - Update to Rust 2021 🎉 by @Urhengulas in #60 - Update CHANGELOG.md by @Urhengulas in #61 - search linker scripts in cwd first by @spookyvision in #63 - ci: cache cargo registry & build artifacts by @japaric in #64 - v0.1.6 by @japaric in #68
jperkin
pushed a commit
that referenced
this issue
Dec 16, 2023
devel/ruby-redmine51 require net-imap gem version 0.3.4 but ruby31 bundles 0.2.3. So, it add latest version of net-imap gem 0.3.x as ruby-net-imap. Ruby client api for Internet Message Access Protocol. Changes from 0.2.3: 0.3.0 (2022-11-17) What's Changed * Added dependabot.yml for actions by @hsbt in #59 * Bump actions/checkout from 2 to 3 by @dependabot in #60 * Adding RFC licenses by @nevans in #57 * Warn when using deprecated SASL mechanisms by @nevans in #62 New Contributors * @dependabot made their first contribution in #60 0.3.1 (2022-11-17) What's Changed * Add XOAUTH2 authenticator by @ssunday in #63 New Contributors * @ssunday made their first contribution in #63 0.3.2 (2022-12-09) What's Changed * Support UIDPLUS extension by @hoffi in #65 * Fixes "bundle exec rake" clash with test/unit by @nevans in #67 * Fix some UIDPLUS issues by @nevans in #69 * Fixes date-time format, and adds decode_datetime by @nevans in #66 * Add SASLprep. Code generated & tested with RFC3454 by @nevans in #64 * Add the UNSELECT command by @nevans in #72 * Fix mailbox attrs by @nevans in #73 * RFCs and references by @nevans in #71 * Nodocs and remove warning by @nevans in #70 * ResponseParser docs by @nevans in #76 * Response Data docs by @nevans in #75 New Contributors * @hoffi made their first contribution in #65 0.3.3 (2022-12-21) What's Changed * Revert "Fixes "bundle exec rake", clash with test/unit" by @znz in #88 New Contributors * @znz made their first contribution in #88 0.3.4 (2023-01-18) What's Changed * Net::IMAP Client docs by @nevans in #74 0.3.5 (2023-06-12) * Fix #response documentation error, by @nevans in 87ba74e * Add RFC3454 data, to support offline testing, by @nevans in #137 * Adds Ruby 3.2 to the CI matrix, by @petergoldstein in #99 * Use reusing workflow, by @hsbt in #151 * Decode UTF-7 more strictly, by @nobu in #152 * ️Continue testing 0.3.x branch against ruby 2.6, by @nevans in 115d190 * Fix decode utf-7 test for ruby 2.6, by @nevans in 7a60c8f * Fix XOAUTH2 authenticator for ruby 2.6, by @nevans in bd4faa0 0.3.6 (2023-06-12) * Fixes file permissions regression in v0.3.5 release, reported by @aaronjensen in #154 0.3.7 (2023-07-26) What's Changed * Backport: Fix for Digest MD5 bad challenges by @nobu in #160 PR for backport is #161
jperkin
pushed a commit
that referenced
this issue
Jan 9, 2024
New Features: * Added cc and bcc options * Numerous TLS debugging and verification improvements o Debug output contains whether a client cert was requested and whether one was sent o Add new options tls-verify-ca and tls-verify-host to differentiate between types of certificate verification (tls- verify does both) o Add tls-target option to allow setting of hostname to be used in hostname verification. This is useful in some inet debugging situations and required to do hostname verification with socket or pipe o Add tls-chain (#60, initial implementation by Wolfgang Karall- Ahlborn) o Add tls-get-peer-chain option (analogous to tls-get-peer-cert, #73) o Certificate debug now includes all client and peer certs, it a chain was used (#73) o Certificate debug now includes notAfter, commonName, and subjectAltName Notable Changes: * output-file, output-file-stderr, and output-file-stdout now truncate the specified file if it already exists * Documentation improvements * Extensive test harness improvements * Add new stop-point XCLIENT-HELO to address lack of specificity when mixing XCLIENT usage with the HELO stop-point * Add new stop-point PROXY * Use IO::Socket::IP by default. Will still use IO::Socket::INET/INET6 to cover transition, but this is deprecated and will be removed in the future (#43) * TLS session debug information is now printed even if we decide not to continue the session (eg for failed verification) * Previously-deprecated functionality to allow some options to be either a filename or a literal string has been removed. Using the @ sigil is now the only was to specify file contents * Previously-deprecated -g option removed Notable Bugs Fixed: * TLS certificate verification did not always work. It should now
jperkin
pushed a commit
that referenced
this issue
Jan 9, 2024
v0.17.1 Fix Log placeholder (#60) (3cc6cad) Documentation Add "documentation" url to project meta (bf864d7) Add "documentation" url to project meta (d3bcc42) v0.17.0 Feature Logger (#47) (9269b0e) see usage: https://py-serializable.readthedocs.io/en/latest/examples.html#logging-and-log-access Documentation Modernixe read-the-docs (7ae6aad) Homepage (#48) (de206d6) Condaforge (#46) (c0074ce)
jperkin
pushed a commit
that referenced
this issue
Mar 4, 2024
Updates Fix negative balance getting stuck at 0.00 Fix the search page not giving correct results when tx type is transfer and both from and to method fields are not filled up Fix a bug that caused unrelated transactions to show up on the home page On the Home page transactions with the same date can now be moved up with ',' and down with '.' A new option on J press to add backup locations. On q press, the latest DB will be copied there Added previously missing option to reset new app data location when the input is blank New and modified status updates for better clarity New offset-based scrolling when scrolling tables A new Activity page on 'y' press that will show activity details such as when transactions were added, deleted, edited, etc Popup help texts have been updated Dependency updates and minor performance improvements Changes Fix negative balance not loading by @TheRustyPickle in #57 Allow switching position of a tx by @TheRustyPickle in #60 Show a new info status when switching to normal tx mode by @TheRustyPickle in #65 Backup path by @TheRustyPickle in #66 Update dependencies by @TheRustyPickle in #67 Add a history page by @TheRustyPickle in #68 Fix id swap UI bug by @TheRustyPickle in #72 Update popup text by @TheRustyPickle in #74
jperkin
pushed a commit
that referenced
this issue
Mar 12, 2024
0.11.2 (2024-03-08) ====== - Update copyright year - Astro data downloads adapted - Do not translate warning messages - Fix leaks around remove_timezone_offset() - build: Bump glib version - Migration to Sunrise API 3.0 - Silence one more warning - Be less verbose about network requests - Do not warn about missing -night icon variants (Fixes #60) - Use link color with better constrat for dark themes - Remove dead code - Fix remove_timezone_offset() - Add some const qualifiers - Fix moon_phases array - Do not translate warning messages - Fix a typo, everytime → every time. - Translation Updates: Albanian, Arabic, 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, Italian, Japanese, Korean, Lithuanian, Malay, Norwegian Bokmål, Norwegian Nynorsk, Occitan (post 1500), Polish, Portuguese, Portuguese (Brazil), Russian, Serbian, Slovak, Slovenian, Spanish, Swedish, Thai, Turkish, Ukrainian
jperkin
pushed a commit
that referenced
this issue
Mar 29, 2024
What's Changed - fix: ignore key release and repeat events by @joshka in #59 - Add ASCII mode and board style by @pSnehanshu in #60
jperkin
pushed a commit
that referenced
this issue
May 1, 2024
v20.4.0 ======= Features -------- - Replace deprecated ssl.wrap_socket with SSLContext.wrap_socket and update examples in connection.py docs. (#216) v20.3.1 ======= No significant changes. v20.3.0 ======= Features -------- - Added support for SASL login. (#195) Bugfixes -------- - Better handling of escape sequences in message tags. (#205) v20.2.0 ======= Features -------- - Require Python 3.8 or later. v20.1.1 ======= * #213: Pinned against jaraco.text 3.10 due to change in interface. v20.1.0 ======= * #196: In irc.bot, avoid hanging idle when the first connection attempt fails. v20.0.0 ======= * ``SingleServerIRCBot`` no longer accepts ``reconnection_interval`` as a parameter. * Added server support for NOTICE commands. * Require Python 3.7 or later. v19.0.1 ======= * #176: Fix issues with version number reporting. Restored version version number reporting in bot and client. v19.0.0 ======= * ``irc.client`` no longer exposes a ``VERSION`` or ``VERSION_STRING``. To get the version, call ``importlib.metadata.version('irc')`` directly. v18.0.0 ======= * Require Python 3.6 or later. 17.1 ==== * Rely on `importlib_metadata <https://pypi.org/project/importlib_metadata/>`_ for loading version from metadata. Removes implicit dependency on setuptools and pkg_resources. * #158: The AsyncIO server now accepts a connection factory to enable features like SSL and IPv6 support. * #155: ``SimpleIRCClient`` now has a ``dcc`` method for initiating and associating a DCCConnection object with the client. ``DCCConnection.listen`` now accepts a ``address`` parameter. Deprecated ``SimpleIRCClient.dcc_listen`` and ``SimpleIRCClient.dcc_connect`` in favor of the better separation of concerns. Clients should replace:: client.dcc_connect(addr, port, type) client.dcc_listen(type) with:: client.dcc(type).connect(addr, port) client.dcc(type).listen() 17.0 ==== * Removed ``irc.buffer`` module, deprecated in 14.2. * #153: Drop support for Python 3.3 and 2.7. 16.4 ==== * Long Term Service release for Python 2.7. * #149: ``AioConnection.connect`` moved to coroutine, added disconnect handling for AsyncIO. 16.3 ==== * #140: Methods now use 'connection' and 'event' for parameter names. * #135 via #144: Added AsyncIO implementation. 16.2.1 ====== * Package refresh and cleanup. 16.2 ==== * #133: In ``irc.server``, add support for ISON. 16.1 ==== * #131: Add ``Connection.encode`` and ``Connection.transmit_encoding`` to enable encodings other than UTF-8 to be used when transmitting text. 16.0 ==== * Removed deprecated ``execute_*`` methods on ``Connection`` and ``Reactor`` as introduced in 15.0. * Fixed link in README. 15.1.1 ====== * New ``send_items`` method takes star args for simplicity in the syntax and usage. 15.1 ==== * Introduce ``ServerConnection.send_items``, consolidating common behavior across many methods previously calling ``send_raw``. 15.0.6 ====== * Now publish `documentation <https://python-irc.readthedocs.io/>`_ to Read The Docs. 15.0.5 ====== * #119: Handle broken pipe exception in IRCClient _send() (server.py). 15.0.4 ====== * #116: Correct invocation of execute_every. 15.0.3 ====== * #115: Fix AttributeError in ``execute_at`` in scheduling support. 15.0.2 ====== * #113: Use preferred scheduler in the bot implementation. 15.0.1 ====== * Deprecated calls to Connection.execute_* and Reactor.execute_*. Instead, call the equivalently-named methods on the reactor's scheduler. 15.0 ==== * The event scheduling functionality has been decoupled from the client.Reactor object. Now the reactor will construct a Scheduler from the scheduler_class property, which must be an instance of irc.schedule.IScheduler. The ``_on_schedule`` parameter is no longer accepted to the Reactor class. Implementations requiring a signal during scheduling should hook into the ``add`` method of the relevant scheduler class. * Moved the underlying scheduler implementation to `tempora <https://pypi.org/project/tempora>`_, allowing it to be re-used for other purposes. 14.2.2 ====== * Issue #98: Add an ugly hack to force ``build_sphinx`` command to have the requisite libraries to build module documentation. 14.2.1 ====== * Issue #97: Restore ``irc.buffer`` module for compatibility. * Issue #95: Update docs to remove missing or deprecated modules. * Issue #96: Declare Gitter support as a badge in the docs. 14.2 ==== * Moved buffer module to `jaraco.stream <https://pypi.python.org/pypi/jaraco.stream>`_ for use in other packages. 14.1 ==== * ``SingleServerIRCBot`` now accepts a ``recon`` parameter implementing a ReconnectStrategy. The new default strategy is ExponentialBackoff, implementing an exponential backoff with jitter. The ``reconnection_interval`` parameter is now deprecated but retained for compatibility. To customize the minimum time before reconnect, create a custom ExponentialBackoff instance or create another ReconnectStrategy object and pass that as the ``recon`` parameter. The ``reconnection_interval`` parameter will be removed in future versions. * Issue #82: The ``ExponentialBackoff`` implementation now protects from multiple scheduled reconnects, avoiding the issue where reconnect attempts accumulate exponentially when the bot is immediately disconnected by the server. 14.0 ==== * Dropped deprecated constructor ``connection.Factory.from_legacy_params``. Use the natural constructor instead. * Issue #83: ``connection.Factory`` no longer attempts to bind before connect unless a bind address is specified. 13.3.1 ====== * Now remove mode for owners, halfops, and admins when the user is removed from a channel. * Refactored the Channel class implementation for cleaner, less repetitive code. * Expanded tests coverage for Channel class. 13.3 ==== * Issue #75: In ``irc.bot``, add support for tracking admin status (mode 'a') in channels. Use ``channel.is_admin`` or ``channel.admins`` to identify admin users for a channel. * Removed deprecated irc.logging module. 13.2 ==== * Moved hosting to github. 13.1.1 ====== * Issue #67: Fix infinite recursion for ``irc.strings.IRCFoldedCase`` and ``irc.strings.lower``. 13.1 ==== * Issue #64: ISUPPORT PREFIX now retains the order of permissions for each prefix. 13.0 ==== * Updated ``schedule`` module to properly support timezone aware times and use them by default. Clients that rely on the timezone naïve datetimes may restore the old behavior by overriding the ``schedule.now`` and ``schedule.from_timestamp`` functions like so: schedule.from_timestamp = datetime.datetime.fromtimestamp schedule.now = datetime.datetime.now Clients that were previously patching ``schedule.DelayedCommand.now`` will need to instead patch the aforementioned module-global methods. The classmethod technique was a poor interface for effectively controlling timezone awareness, so was likely unused. Please file a ticket with the project for support with your client as needed. 12.4.2 ====== * Bump to jaraco.functools 1.5 to throttler failures in Python 2. 12.4 ==== * Moved ``Throttler`` class to `jaraco.functools <https://bitbucket.org/jaraco/jaraco.functools>`_ 1.4. 12.3 ==== * Pull Request #33: Fix apparent escaping issue with IRCv3 tags. 12.2 ==== * Pull Request #32: Add numeric for WHOX reply. * Issue #62 and Pull Request #34: Add support for tags in message processing and ``Event`` class. 12.1.2 ====== * Issue #59: Fixed broken references to irc.client members. * Issue #60: Fix broken initialization of ``irc.server.IRCClient`` on Python 2. 12.1.1 ====== * Issue #57: Better handling of Python 3 in testbot.py script. 12.1 ==== * Remove changelog from package metadata. 12.0 ==== * Remove dependency on jaraco.util. Instead depend on surgical packages. * Deprecated ``irc.logging`` in favor of ``jaraco.logging``. * Dropped support for Python 3.2.
jperkin
pushed a commit
that referenced
this issue
May 6, 2024
1.23.7 (2024-04-20) * The exception backtrace should be split into at most 3 pieces. 1.24.0 (2024-04-22) * Add compatible shim for Exception#detailed_message. (#58) * Better output formatting of options. 1.25.0 (2024-05-03) * Separation of output formatting from log generation/schema. (#60) * Use Console::CapturedOutput everywhere. * Improve getting started guide. * Remove test file. * Add guidelines for custom events. * Set minimum version of fiber-local gem. * Compatibility with previous event argument. 1.25.1 (2024-05-03) * Add tests for Console::Event::Spawn. 1.25.2 (2024-05-04) * Apply subject/level filtering in Filter#call.
jperkin
pushed a commit
that referenced
this issue
May 6, 2024
2.2.0 (2024-04-10) External changes * Support multiple methods in responds_with matcher (f086b7e4, #578) - thanks to @vlad-pisanov for the suggestion * Add block syntax for sequences (93fdffd, #61) * Improve sequence failure message (0800c6ff, #60) * Drop support for Ruby v2.0 (85848fb0, #642) * Include the original test name in expired stub error messages (ca3ff8eb, #641, #642) - thanks to @casperisfine * Avoid rubocop directive ending up in YARD docs (2a9ee81a) * Update docs to fix those for Mock#method_missing (cee0bad6) * Reinstate missing CNAME for GitHub Pages site (da67bb0d) * Use Ruby v1.9 Hash syntax in docs (6de20726, #625) * Add missing YARD tag for API#sequence name param (343c5979) * Add missing YARD tag for API#states name param (f798df83) Internal changes * Tidy up Minitest vs MiniTest references (#626, #614, #615) - thanks to @zenspider & @Maimer for their help * Add Ruby v3.3 to CI build matrix (ce31b544)
jperkin
pushed a commit
that referenced
this issue
May 10, 2024
This package hasn't been updated in a long time. The following list of changes was therefore curated to focus on features or recent bugfixes. Changes in 1.7.2: * Bug #899 Guided Remediation: Parse paths in npmrc auth fields correctly. * Bug #908 Fix rust call analysis by explicitly disabling stripping of debug info. * Bug #914 Fix regression for go call analysis introduced in 1.7.0. Changes in 1.7.0: * Feature #352 Guided Remediation Introducing our new experimental guided remediation feature on osv-scanner fix subcommand. * Feature #805 Include CVSS MaxSevirity in JSON output. Changes in 1.6.2: * Feature #694 OSV-Scanner now has subcommands! The base command has been moved to scan (currently the only commands is scan). By default if you do not pass in a command, scan will be used, so CLI remains backwards compatible. * Feature #776 Add pdm lockfile support. Changes in 1.6.0 and 1.6.1: * Feature #694 Add support for NuGet lock files version 2. * Feature #655 Scan and report dependency groups (e.g. "dev dependencies") for vulnerabilities. * Feature #702 Created an option to skip/disable upload to code scanning. * Feature #732 Add option to not fail on vulnerability being found for GitHub Actions. * Feature #729 Verify the spdx licenses passed in to the license allowlist. Changes in 1.5.0: * Feature #501 Add experimental license scanning support! * Feature #642 Support scanning renv files for the R language ecosystem. * Feature #513 Stabilize call analysis for Go * Feature #676 Simplify return codes: Return 0 if there are no findings or errors. Return 1 if there are any findings (license violations or vulnerabilities). Return 128 if no packages are found. * Feature #651 CVSS v4.0 support. * Feature #60 Pre-commit hook support. Changes in 1.4.3: * Feature #621 Add support for scanning vendored C/C++ files. * Feature #581 Scan submodules commit hashes. Changes in 1.4.1: * Feature #534 New SARIF format that separates out individual vulnerabilities * Experimental Feature #57 Experimental Github Action Changes in 1.4.0: * Feature #183 Add (experimental) offline mode * Feature #452 Add (experimental) rust call analysis, detect whether vulnerable functions are actually called in your Rust project * Feature #505 OSV-Scanner support custom lockfile formats Changes in 1.3.5: * Feature #409 Adds an additional column to the table output which shows the severity if available. Changes in 1.3.0: * Feature #198 GoVulnCheck integration! Try it out when scanning go code by adding the --experimental-call-analysis flag. * Feature #260 Support -r flag in requirements.txt files. * Feature #300 Make IgnoredVulns also ignore aliases. * Feature #304 OSV-Scanner now runs faster when there's multiple vulnerabilities. Changes in 1.2.0: * Feature #168 Support for scanning debian package status file, usually located in /var/lib/dpkg/status. Thanks @cmaritan * Feature #94 Specify what parser should be used in --lockfile. * Feature #158 Specify output format to use with the --format flag. * Feature #165 Respect .gitignore files by default when scanning. * Feature #156 Support markdown table output format. Thanks @deftdawg * Feature #59 Support conan.lock lockfiles and ecosystem Thanks @SSE4 * Updated documentation! Check it out here: https://google.github.io/osv-scanner/ Changes in 1.1.0: * Feature #98: Support for NuGet ecosystem. * Feature #71: Now supports Pipfile.lock scanning. * Bug #85: Even better support for narrow terminals by shortening osv.dev URLs. * Bug #105: Fix rare cases of too many open file handles. * Bug #131: Fix table highlighting overflow. * Bug #101: Now supports 32 bit systems. Tested on NetBSD/amd64.
jperkin
pushed a commit
that referenced
this issue
Jul 1, 2024
### 1.8.10 - 15 June 2024 * feature: new "`--output`" option to write to a file instead of standard output (pull request [#90](https://codeberg.org/a-j-wood/pv/pulls/90)) supplied by [xmort](https://codeberg.org/xmort) ### 1.8.9 - 21 April 2024 * feature: new "`--si`" option to display and interpret size suffixes in multiples of 1000 rather than 1024 (pull request [#85](https://codeberg.org/a-j-wood/pv/pulls/85)) supplied by [kevinruddy](https://codeberg.org/kevinruddy) * fix: continue producing progress output when the output is blocking writes ([#34](https://codeberg.org/a-j-wood/pv/issues/34), [#86](https://codeberg.org/a-j-wood/pv/issues/86), [#87](https://codeberg.org/a-j-wood/pv/issues/87)) * fix: honour the _TMPDIR_ / _TMP_ environment variables again, rather than hard-coding "`/tmp`", when using a terminal lock file (originally removed in 1.8.0) ([#88](https://codeberg.org/a-j-wood/pv/issues/88)) * i18n: corrections and missing strings added to French translations (pull request [#83](https://codeberg.org/a-j-wood/pv/pulls/83)) supplied by [Thomas Bertels](https://codeberg.org/tbertels) ### 1.8.5 - 19 November 2023 * fix: corrected percentage formatting so it doesn't jump from 2 to 3 characters wide at 100% ([#80](https://codeberg.org/a-j-wood/pv/issues/80)) * fix: replaced "`--remote`" mechanism, using a temporary file instead of SysV IPC, so it can work reliably even when there are multiple PV instances * fix: corrected compilation failure when without IPC support * security: addressed all issues highlighted by the software auditing tools "`splint`" and "`flawfinder`" (see "`make analyse`") ([#77](https://codeberg.org/a-j-wood/pv/issues/77)) * cleanup: compilation warnings fixed on non-IPC and MacOS systems ### 1.8.0 - 24 September 2023 #### Features * feature: new "`--discard`" option to discard input as if writing to */dev/null* ([#42](https://codeberg.org/a-j-wood/pv/issues/42)) * feature: new "`--error-skip-block`" option to make "`--skip-errors`" skip whole blocks ([#37](https://codeberg.org/a-j-wood/pv/issues/37)) * feature: use `posix_fadvise()` like `cat`(1) does, to improve efficiency ([#39](https://codeberg.org/a-j-wood/pv/issues/39)) * feature: new "`--enable-static`" option to "`configure`" for static builds ([#75](https://codeberg.org/a-j-wood/pv/pull/75)) #### Security * security: with "`--pidfile`", write to a temporary file and rename it into place, to improve security * security: keep self-contained copies of name and format string in PV internal state for memory safety * security: ignore _TMP_ / _TMPDIR_ environment variables when using a terminal lock file #### Fixes * fix: only report errors about missing files when starting to transfer from them, not while calculating size, and behave more like `cat`(1) by skipping them and moving on * fix: auto-calculate total line count with "`--line-mode`" when all inputs are regular files * fix: use `clock_gettime()` in ETA calculation to cope with machine suspend/resume ([#13](https://codeberg.org/a-j-wood/pv/issues/13)) * fix: if "`--width`" or "`--height`" were provided, do not change them when the window size changes ([#36](https://codeberg.org/a-j-wood/pv/issues/36)) * fix: when a file descriptor position in "`--watchfd`" moves backwards, show the rate using the correct prefix ([#41](https://codeberg.org/a-j-wood/pv/issues/41)) * fix: rewrite terminal state save/restore so state is not intermittently garbled on exit when using "`--cursor`" ([#20](https://codeberg.org/a-j-wood/pv/issues/20)), ([#24](https://codeberg.org/a-j-wood/pv/issues/24)) #### Cleanups * cleanup: addressed many potential issues highlighted by the software auditing tools "`splint`" and "`flawfinder`" (see new target "`make analyse`") * cleanup: switched the build system to GNU Automake * cleanup: replaced the test harness with the one native to GNU Automake * cleanup: added a test for terminal width detection to "`make check`" * cleanup: added a test to "`make check`" to ensure that "`make install`" installs everything expected * cleanup: replaced *AC_HEADER_TIOCGWINSZ* with *AC_CHECK_HEADERS(sys/ioctl.h)* for better MacOS compatibility ([#74](https://codeberg.org/a-j-wood/pv/issues/74)) * cleanup: with "`--sync`", call `fsync()` instead of `fdatasync()` on incapable systems ([#73](https://codeberg.org/a-j-wood/pv/issues/73)) * cleanup: the manual is now a static file instead of needing to be built with "`configure`" #### Dropped items * dropped: dropped support for "`--enable-static-nls`" * dropped: removed the Linux Software Map file, as the LSM project appears to be long dead * dropped: will no longer publish to SourceForge as it has a chequered history and is unnecessary * dropped: removed project from GitHub and moved to Codeberg - see "[Give Up GitHub](https://giveupgithub.org/)" #### Other items * licensing change from Artistic 2.0 to GPLv3+ ### 1.7.24 - 30 July 2023 * fix: correct terminal size detection, broken in 1.7.17 by the configuration script rewrite ([#72](https://codeberg.org/a-j-wood/pv/issues/72)) * security: removed *DEBUG* environment variable in debug mode, added "`--debug`" instead * cleanup: added "`make analyse`" to run "`splint`" and "`flawfinder`" on all source files * cleanup: corrected detection of boolean capability * cleanup: word wrapping of "`--help`" output is now multi-byte locale aware * cleanup: adjusted "`indent`" rules to line length of 120 and reformatted code ### 1.7.18 - 28 July 2023 * fix: language file installation had been broken by the configuration script rewrite ### 1.7.17 - 27 July 2023 * feature: new "`--sync`" option to flush cache to disk after every write (related to [#6](https://codeberg.org/a-j-wood/pv/issues/6), to improve accuracy when writing to slow disks) * feature: new "`--direct-io`" option to bypass cache - implements [#29 "Option to enable *O_DIRECT*"](https://codeberg.org/a-j-wood/pv/issues/29) - requested by Romain Kang, Jacek Wielemborek * fix: correct byte prefix size to 2 spaces in rate display, so progress display size remains constant at low transfer rates * cleanup: rewrote `configure.in` as per suggestions in newer "`autoconf`" manuals * cleanup: replaced `header.in` with one generated by "`autoheader`", moving custom logic to a separate header file "`config-aux.h`" * cleanup: added copyright notice to all source files as per GNU standards * cleanup: changed "`--version`" output to conform to GNU standards * cleanup: replaced backticks with `$()` in all shell scripts that did not come from elsewhere, as backticks are deprecated and harder to read * cleanup: improved the output formatting of "`make test`" * cleanup: extended the "`make test`" mechanism to allow certain tests to be skipped on platforms that cannot support them * cleanup: skip the "pipe" test (for *SIGPIPE*) if GNU "`head`" is not available, so that "`make test`" on stock OpenBSD 7.3 works * cleanup: added a lot more tests to "`make test`" * cleanup: replace all calls to `sprintf()` and `snprintf()` with a new wrapper function `pv_snprintf()` to improve security and compatibility * cleanup: replace all calls to `strcat()` with a wrapper `pv_strlcat()` to improve security and compatibility * cleanup: replace all `write()` calls to the terminal with a wrapper `pv_write_retry()` for consistency * cleanup: tidy up and fix compilation warning in "`--watchfd`" code * cleanup: rewrote all local shell scripts to pass analysis by [ShellCheck](https://www.shellcheck.net) ### 1.7.0 - 17 July 2023 * dropped: support for Red Hat Enterprise Linux and its derivatives has been dropped; removed the RPM spec file, and will no longer build binaries * feature: the "`--size`" option now accepts "`@filename`" to use the size of another file (pull request [#57](https://codeberg.org/a-j-wood/pv/pull/57) supplied by [Dave Beckett](https://github.com/dajobe)) * feature: the "`--watchfd`" option is now available on OS X (pull request [#60](https://codeberg.org/a-j-wood/pv/pull/60) supplied by [christoph-zededa](https://github.com/christoph-zededa)) * feature: new "`--bits`" option to show bit count instead of byte count (adapted from pull request [#63](https://codeberg.org/a-j-wood/pv/pull/63) supplied by [Nick Black](https://nick-black.com)) * feature: new "`--average-rate-window`" option, to set the window over which the average rate is calculated, also used for ETA (modified from pull request [#65](https://codeberg.org/a-j-wood/pv/pull/65) supplied by [lemonsqueeze](https://github.com/lemonsqueeze)) * feature: the "`--watchfd`" option will now show relative filenames, if they are under the current directory (pull request [#66](https://codeberg.org/a-j-wood/pv/pull/66) supplied by [ikasty](https://github.com/ikasty)) * fix: correction to `pv_in_foreground()` to behave as its comment block says it should, when not on a terminal - corrects [#19 "No output in Arch Linux initcpio after 1.6.6"](https://codeberg.org/a-j-wood/pv/issues/19), [#31 "No output written from inside zsh <() construct"](https://codeberg.org/a-j-wood/pv/issues/31), [#55 "pv Stopped Working in the Background"](https://codeberg.org/a-j-wood/pv/issues/55) (pull request [#64](https://codeberg.org/a-j-wood/pv/pull/64) supplied by [Michael Weiß](https://github.com/quitschbo)) * fix: workaround for OS X 11 behaviour in configure script regarding stat64 at compile time (pull request [#57](https://codeberg.org/a-j-wood/pv/pull/57) supplied by [Dave Beckett](https://github.com/dajobe)) * fix: workaround for macOS equivalence of stat to stat64 - patches from [Filippo Valsorda](https://github.com/FiloSottile) and [Demitri Muna](https://github.com/demitri), correcting [#33 "Fix compilation problems due to `stat64()` on Apple Silicon"](https://codeberg.org/a-j-wood/pv/issues/33) * fix: add burst rate limit to transfer, so rate limits are not broken by bursty traffic (pull request [#62](https://codeberg.org/a-j-wood/pv/pull/62) supplied by [Volodymyr Bychkovyak](https://github.com/vbychkoviak)) * fix: corrected "`--force`" option so it will still output progress when not in the same process group as the owner of the terminal - corrects [#23 "No output with "`-f`" when run in background after 1.6.6"](https://codeberg.org/a-j-wood/pv/issues/23) and helps to correct [#31 "No output written from inside zsh <() construct"](https://codeberg.org/a-j-wood/pv/issues/31) * fix: corrected elapsed time display to show as D:HH:MM:SS after 1 day, like the ETA does - corrects [#16 "Show days in same format in ETA as in elapsed time"](https://codeberg.org/a-j-wood/pv/issues/16) * fix: corrected bug where percentages went down after 100% when in "`--numeric`" mode with a "`--size`" that was too small - corrects [#26 "Correct "`-n`" behaviour when going past 100% of "`-s`" size"](https://codeberg.org/a-j-wood/pv/issues/26) * i18n: recoded Polish translation file to UTF-8 * i18n: removed inaccurate fuzzy translation matches * docs: moved all open issues into GitHub and updated the TODO list * docs: renamed README to README.md and altered it to Markdown format * docs: moved contributors from the README to docs/ACKNOWLEDGEMENTS.md * docs: moved TODO to TODO.md and altered it to Markdown format * docs: moved NEWS to NEWS.md, converted it to UTF-8, and altered it to Markdown format
jperkin
pushed a commit
that referenced
this issue
Jul 20, 2024
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
jperkin
pushed a commit
that referenced
this issue
Jul 31, 2024
Allow tzinfo objects for Timezone by @Viicos in #56 add URLs to pyproject.toml by @samuelcolvin in #58 suggested fix on typo by @PelicanQ in #60 Correct misstatement in README by @Zac-HD in #62 Fix IsDigit -> IsDigits by @toriningen in #63 Add Unit type by @tlambert03 in #65 Improve handling of GroupedMetadata (First try) by @cksleigen in #69 Prepare for 0.7.0 release by @adriangb in #70
jperkin
pushed a commit
that referenced
this issue
Aug 28, 2024
Revision history for App-ClusterSSH 4.16 2020-06-20 Duncan Ferguson <duncan_ferguson@user.sf.net> - Further fix for 'resolve_names' error when adding hosts via the UI - Fix missing space separator for ssh_args (thanks to Petr Vorel) 4.15 2020-05-18 Duncan Ferguson <duncan_ferguson@user.sf.net> - Include all utilies within each man page - Add in 'command_pre' and 'command_post' configuration options - Fix 'Add Host' menu error finding 'resolved_names' - Ensure lib path is added to range tests to find the libraries - Mark permission test as TODO as it appears to be inconsistent 4.14 2019-08-21 Duncan Ferguson <duncan_ferguson@user.sf.net> - Include README within the repository, not just created tar.gz files - Add 'autoquit' setting to 'File' menu (Github issue #114) - Correct macro_hostname to be the FQDN of the server where cssh is being run (Github issue #116) - Add in user defined macros 4.13.2_02 2019-01-14 Duncan Ferguson <duncan_ferguson@user.sf.net> - Fix Getopt-Long minimum version - Fix excess test output when Sort::Naturally isn't installed 4.13.2_01 2018-11-24 Duncan Ferguson <duncan_ferguson@user.sf.net> - Move all Tk code into its own module as-is - Fix for 'bad pad value "3m"' error when using Tk 804.034 - Update to Perl::Tidy 20181117 - Convert to using Dist::Zilla 4.13.2 2018-03-14 Duncan Ferguson <duncan_ferguson@user.sf.net> - Fix for running builds in parallel - Improvements to SUPPORT and REPORTING BUGS sections in documentation 4.13.1 2018-03-05 Duncan Ferguson <duncan_ferguson@user.sf.net> - Minor update to fix failing tests due to 3rd party perltidy changes 4.13 2017-12-27 Duncan Ferguson <duncan_ferguson@user.sf.net> - Ensure ssh_args is keep unset if it is emptied in the configuration file - Obey configured console position (Debian bug 758215) (Github issue #100) 4.12 2017-12-23 Duncan Ferguson <duncan_ferguson@user.sf.net> - Fix 'undefined value' error 4.11 2017-12-22 Duncan Ferguson <duncan_ferguson@user.sf.net> - Fix for multiple range expansion, as in 'h{a,b}{1,2}' (Github issue #97) (Thanks to lazyfrosch) - Upgrade Perl::Tidy requirement to version 20171214 (Github issue #99) (Thanks to eserte) - Add in 'external command pipe' to allow for some commands being passed in from the command line 4.10_02 2017-08-08 Duncan Ferguson <duncan_ferguson@user.sf.net> - Include coverage tests in the resources - Include the version of cssh in the utility documentation and README - Fix dashes (-) not being accepted in hostname range expansion (Github issue #89) - Amend ranges to work on ports, FQDN's and IP addresses - Fix bug tracker links in the main documentation (Github issue #92) - New options to specify --rows, --columns and --fillscreen (Github pull request #88) (Thanks to AsharLohmar) 4.10_01 2017-04-12 Duncan Ferguson <duncan_ferguson@user.sf.net> - Allow 'include' directives when reading SSH configuration files (Github issue #77) (thanks to Azenet) - Generate README when creating the distribution from cssh man page so www.cpan.org and www.metacpan.org can display documentation 4.09 2017-03-11 Duncan Ferguson <duncan_ferguson@user.sf.net> - Add perl-5.24 Travis-CI automated testing config - Correct a logic bug around the --debug option (Github issue #75) - Fix 'Re-add closed windows' not using the correct username (Github issue #72) - Update copyright year - Make WM decorations algorithm configurable as causes problems on some systems (Debian bug 842965, re Github pull request #66) (thanks to Tony Mancill) 4.08 2016-10-18 Duncan Ferguson <duncan_ferguson@user.sf.net> - Add perl-5.8, 5.10 and 5.12 to Travis-CI automated testing - Fix building and testing on perl-5.8.9 - Improve testing on systems that do not have xterm installed - Take into account WM decorations when tiling (Github pull request #66) (thanks to Andrew Stevenson) - Add option in the config file to hide the menu (Github issue #69) - Add 'unique_servers' into the configuration file to match command line option (Github issue #70) 4.07 2016-04-30 Duncan Ferguson <duncan_ferguson@user.sf.net> - Fixed tests on systems where bash is not installed in /bin/bash (Github issue #60) - Include link to travis-ci site in release emails for automated build and test reports - Rework hostname expansion to be pure-perl rather than relying on the bash shell (Github issue #53) 4.06 2016-03-26 Duncan Ferguson <duncan_ferguson@user.sf.net> - Failure to find the terminal binary should not be fatal - Fix processing of '--extra_tag_file' and its configuration item (Github issue #51) - Add bash shell expansion on host names containing a '{' character (Github issue #53) - Fix tests when running on a server without xterm installed (such as Travis CI via GitHub) - Expand $HOME and ~ correctly when looking for files (thanks to Andrew Stevenson) - Typo correction in README (thanks to Ankit Vadehra) 4.05 2015-11-28 Duncan Ferguson <duncan_ferguson@user.sf.net> - Change default key_quit from 'Control-q' to 'Alt-q' (Github issue #50) - Amend tests to always use C locale as some error messages are hardcoded in English (Github issue #49) 4.04_01 2015-11-21 Duncan Ferguson <duncan_ferguson@user.sf.net> - Ensure documentation is generated using same perl as the build (Github issue #45) - Pass '--action' through macro parsing (Github issue #42) - Workaround for glitch in KDE where windows can become unmoveable (Github issue #46) (thanks to Brandon Perkins) - Add in '--quiet | -Q ' option to reduce output in certian scenarios - Add in 'csftp' command 4.04 2015-11-03 Duncan Ferguson <duncan_ferguson@user.sf.net> - Include bash completion script in distribution (Github issue #29) - Allow re-adding closed session (Github issue #27 - thanks to Andrew Stevenson) - Allow sorting windows in natural order (Github isue #28 - thanks to Andrew Stevenson) - Fix links in metadata files to trackers (Github issue #41) - Fix ctel and ccon not working correctly (Github issue #35) - Amend t/10host.t to use a random hostname to prevent clashes (Github issue #23) - Amend coght message in README to match all other files for the perl license
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Looking at
protobuf
...Symlinking libprotobuf only produces this error.
The text was updated successfully, but these errors were encountered: