Thanks to visit codestin.com
Credit goes to github.com

Skip to content
This repository was archived by the owner on Jan 4, 2023. It is now read-only.

Releases: PyLink/PyLink

PyLink 0.8-alpha4

30 Jun 18:56

Choose a tag to compare

Major changes in this snapshot release:

  • SECURITY: Forbid SSLv2 and SSLv3 in SSL socket creation (0fbf9e1)
  • Configurable nicks for services (per-net and global, #220, #229)
  • Resolve server hostnames when connecting (#158).
  • protocols/ts6: fix incorrect WHOIS syntax causing connection abort (6060a88)
  • protocols/nefarious: fix bad /join 0 handling causing connection abort (b1e138d)
  • relay: forbid linking two channels on the same network (e47738c)
  • protocols: various fixes for mode definitions, including missing +i handling on ts6 and unreal (26df48c, 3e19e9c)
  • Consistent defaults to ping frequency and timeout (now 90 and 180 seconds respectively)
  • Example conf: fix various typos (0edb516, cd4bf55) and be more clear about link blocks only being examples
  • Various freezes and crash bugs fixed (dd08c01, 1ad8b2e, 504a9be, 5f2da1c)

Full diff: 0.8-alpha3...0.8-alpha4

PyLink 0.8-alpha3

01 Jun 02:58

Choose a tag to compare

  • relay: support relaying a few more channel modes (flood, joinflood, freetarget, noforwards, and noinvite)
  • Introduce a new (WIP) API to create simple service bots (#216).
  • The main PyLink client now spawns itself with hideoper whenever available, to avoid filling up /lusers and /stats P/p. (#194)
  • The fantasy plugin now supports per-bot prefixes; see example conf for details.
  • Purge c_ and u_ prefixes from PyLink's internal named modes definitions (#217).
  • Various documentation updates.
  • New games plugin, currently implementing eightball, dice, and fml.
  • Various fixes to the Nefarious protocol module (89ed92b...c82cc9d, #209, #210).

PyLink 0.8-alpha2

08 May 04:40

Choose a tag to compare

  • protocols/nefarious: fix incorrect decoding of IPv6 addresses (0e0d96e)
  • protocols/(hybrid|nefarious): add missing BURST/SJOIN->JOIN hook mappings, fixing problems with relay missing users after a netjoin
  • protocols/unreal: fix JOIN handling storing channels with the wrong case (b78b911)
  • protocols/inspircd: fix wrong username being sent when formatting KILL text
  • commands: Fix loglevel command being ineffective (#208)
  • relay: Fix various race conditions, especially when multiple networks happen to lose connection simultaneously
  • API changes: many commands from utils were split into either Irc() or a new structures module (#199)

Full diff

PyLink 0.8-alpha1

23 Apr 03:14

Choose a tag to compare

  • New protocol support: IRCd-Hybrid 8.x and Nefarious IRCu
  • Track user IPs of UnrealIRCd 3.2 users (#196)
  • SIGHUP now rehashes PyLink on supported platforms (#179)
  • Improved mode support for Charybdis (#203)
  • Fix disconnect logic during ping timeouts

Full diff

PyLink 0.7.2-dev

19 Apr 14:03

Choose a tag to compare

Bug fix release:
- Support mixed Unreal 3.2/4.0 networks (#193)
- More complete APIs for checking channel access (#168)
- New servprotect plugin for KILL/SAVE flood protection. This was split out of relay due to expiringdict not being installable via pip.
- Documentation update (protocol module variables, mention new WHOIS, VERSION hooks)
- Minor fixes for Windows support. (#183)
- SIGTERM should now shut down the daemon cleanly. (#179)

8ee64d5 readme: mention why expiringdict is broken in pip3
528dfdb pmodule-spec: mention cmodes, umodes, prefixmodes variables
cb3187c ts6_common: do reverse nick lookup for KICK targets
55afa1b unreal: log instances of PUID manging to debug
75984c3 ts6_common: add abstraction to convert UIDs->outgoing nicks
9f20f8f unreal: update SJOIN matching regex
4157cb5 ts6_common: use a better variable name for _getSid()
e687bb0 unreal: remove outfilter hack, this doesn't handle text including PUIDs properly
0136ff2 example conf: mention using spaces to indent
86781d3 README: fix typo
9fde35f relay: handle server name conflicts more correctly
c01b449 relay: treat network names case-sensitively
02ec508 unreal: fix super() syntax in SQUIT handling
16779aa classes: remove lower() call when storing netname
6acfbb4 unreal: case-desensitize legacy server names when handling user introductions from them
62da384 README: unreal 3.2 mixed networks are supported now, sorta
5d0f450 Merge branches 'master' and 'devel' into devel+unreal32
9561675 unreal: add warnings & more descriptive errors regarding mixed_link
f3ceefe unreal: initialize legacy users on the right server
efd13d2 example-conf: add sample unreal block, documenting mixed_link
44b102f networks: allow all opers to run 'autoconnect'
13e9717 docs: Add a PyLink oper guide
c4273e6 unreal: fix for Python 3.4 support
4f08894 unreal: typofix
10be962 unreal: actually return the hook data for NICK & KILL
44dc856 unreal: use an awful outFilter hack to convert PUIDs->nicks when sending outgoing commands
74ee1de unreal: Start work on some really hacky Unreal 3.2 compat code (#193)
3e7255e classes: remove ts6-specific hack in Protocol.removeClient
5140728 README: mention the implications of #193
fd32bbf unreal: fix typo in last commit
efcc30c unreal: don't confuse legacy SERVER introductions from our uplink with protocol negotiation
fab404f Merge branches 'master' and 'wip/relay-fixes' into devel
3a8b0aa relay: catch OSError too when loading DB
1bcadbe Use more flexible shebangs (/usr/bin/env python3)
9e33081 relay: fix typo in comment
d213443 relay: experimental fix for #183
8b7a9f6 Merge pull request #189 from DanielOaks/devel+ignore-env
d287a22 gitignore: Ignore env folder for virtualenvs
5851901 coreplugin: modularize shutdown routines, handle SIGTERM->shutdown
b100f30 fantasy: break if IRC object isn't ready
cf36343 pylink: use abspath() to get the source directory
662d1ce inspircd: warn that inspircd 2.2 support is experimental
4a0ee6f relay: be more thread-safe via dict.copy()
305db9f utils: also don't crash in applyModes for bad mode targets
e70dfb0 Merge branch 'master' into devel
08c3b99 relay: fix ambiguous logging in KICK blocking
4125ff3 pylink: prettier "Loaded plugins" log message on start
d5d3c24 inspircd: define minimum & target protocol versions instead of hardcoding them
70b9bde unreal: fix a little typo
ad517f8 unreal: bump protocol version to 4000
19ac5b5 protocols: drop underscores from pre-defined opertypes
c71d2bf coreplugin: sync opertype changes in handle_operup
9278e56 coreplugin: normalize WHOIS output format
44083cc core: Store opertype info in all IrcUser objects
bdbc102 Merge branch 'master' into devel
fbd8659 classes: spawn PyLink clients with a custom opertype
a91fa46 Regenerate pydoc documentation
c8a3514 hooks-reference: add VERSION and WHOIS
f618b96 inspircd: add VERSION handling
00552a4 Move detailed version string generation to utils
23056e9 protocols & coreplugin: add handlers for VERSION requests
45c2abd Irc: run initVars() on connect too
aedb056 relay: actually, just kill handle_spawnmain
b2b04c8 classes: really ignore errors when shutting down sockets
ce3d3cf relay: check to make sure network is ready before handling spawnmain
0bb54d8 New servprotect plugin (anti-KILL/SAVE flood)
9fe3373 relay: get rid of kill/save protection
75ec95b Merge branch 'master' into devel
03b53ae Merge branch 'staging' into devel
e183078 protocols: Remove "secret" testing channel name
6962f3b ts6: unset has_eob correctly on reconnects
c176c90 coreplugin: use IrcChannel.getPrefixModes in whois replies
f5f0df5 classes: raise KeyError, not return KeyError...
c86a02e relay: use IrcChannel.getPrefixModes
e948db5 classes: support looking at older versions of prefix modes mappings
d84cfbc utils: simplify prefix modes handling in applyModes
e8b0018 classes: Implement IrcChannel.is(Voice|Halfop|Op)Plus (#168)
ed333a6 classes: implement IrcChannel.isOp, isVoice, getPrefixmodes, etc
8135f3a core: Depluralize prefixmodes mappings (#168)
1d4350c classes: provide IrcChannel objects with their own name using KeyedDefaultdict
544d6e1 utils: add KeyedDefaultdict

PyLink 0.7.1-dev

31 Mar 01:42

Choose a tag to compare

Bugfix release. Lingering errata which you may still encounter: #183.

0fd0936 utils: don't crash when mode target is invalid
1930739 Revert "Irc: don't call initVars() on IRC object initialization"
2b16f25 classes.Irc: clear state on disconnect, not on connect
a4395ed log: respect child loggers' levels if they are lower than the main one's
46922ce relay: remove dead networks' servers from the servers index unconditionally
f2a2114 Irc: run initVars() on connect too
9cd1635 unreal: fix wrong variable name in handle_umode2
2169a9b utils: actually abort when mode target is invalid

PyLink 0.7.0-dev

21 Mar 19:09

Choose a tag to compare

Changes from 0.6.1-dev:

d12e70d ts6: unset has_eob correctly on reconnects
5b2c9c5 Add .mailmap
abce18a log: split multi-line channel logs into multiple PRIVMSGs
a8303d0 commands: sort channel list in 'showuser' output
0dd8b80 docs/t: use rawgit links to serve HTML
506ae01 Update autogenerated docs (adding a script to do this now)
d8e5202 world: use a better module description
2adb67d runtests: remove .py extension, only run tests when ran as a script
da7bd64 conf: fix testconf missing the logging: section
557efc3 docs/t: mark hooks-reference as finished in README
9d0fcb5 docs: finish off hooks-reference (#113)
15b35f1 ts6: support charybdis +T mode (closes #173)
359bfcd bots: map 'msg' command to 'say' too
b6889fb irc: fix spacing in certificate fingerprint logging
7f5bc52 relay: fix errors in KILL handling when target isn't in any relay channels
3527960 coreplugin: tell plugins to exit cleanly before closing connections
9b0db81 changehost: modularize, add a command to apply cloaks now, match IPs too
14388d9 utils.getHostmask: add option to return IP address
5fed462 networks: remove networks with autoconnect off in 'disconnect'
8ac5436 relay: allow admins to destroy channels hosted on other networks
4df027c coreplugin: ignore services' attempts to send accountname before user introduction
1ce2725 bots: update help for 'msg' command (reflect changes made for #161)
54dc51a bots: make source client names optional (Closes #161)
34ca973 relay: cleanup, consistently include the function in log.debug calls
a740163 relay: implement DB exporting using threading.Timer, similar to classes.Irc.schedulePing
d531201 Merge branch 'master' into devel
ae8f369 relay: only show networks that are actually connected in LINKED
de1a9a7 relay: various cleanup
eec8e0d log: attempt to remedy #164 (more testing needed)
40d76c8 coreplugin: demote successful oper-up messages to debug
df23b79 commands: reformat 'showuser' output, and show services login info (#25)
decdf14 unreal: don't use updateClient to update hostname of clients internally
2ebdb4b unreal: support services account tracking (#25), fix handle_SVSMODE applying modes on the wrong target
cabdb11 inspircd: implement services account tracking (#25)
0fff91e ts6: implement services account tracking (#25)
cf15bed classes: add services_account field in IrcUser (#25), default 'identified' attribute to empty string instead of None
584f952 conf: check to make sure logging block exists in config
5877031 Merge branch 'master' into devel
21167e8 example conf: use 1 "#" without trailing space for commented-out options
0d4655c core: support multiple channel loggers with DIFFERENT log levels & fix example conf (#83)
669e889 Support configurable SSL fingerprint hash types (Closes #157)
08fd50d Logging improvements, including support for custom file targets (#83)
de84a5b log: default level should be INFO, not DEBUG
cf1de08 commands: support rehashing channel loggers
2503bd3 commands: In rehash, use irc.disconnect() to disconnect networks removed from conf
14efb27 Initial experimental support for logging to channels (#83)
4b939ea ts6: rewrite end-of-burst code (EOB is literally just a PING in ts6)
5a68dc1 Irc: don't call initVars() on IRC object initialization

PyLink 0.6.1-dev

02 Mar 05:15

Choose a tag to compare

  • Bug fix release.
    • unreal: fix handing of users connecting via IPv4 3c3ae10
    • ts6: fix incorrect recording of null IPs as 0 instead of 0.0.0.0 fdad7c9
    • inspircd, ts6: don't crash when receiving an unrecognized UID 341c208
    • inspircd: format kill reasons like Killed (sourcenick (reason)) properly.

PyLink 0.6.0-dev

23 Jan 18:24

Choose a tag to compare

Notable changes in this release:

  • New "opercmds" plugin:
    • This merges some functionality from the bots plugin, but also adds new commands such as jupe, kill, topic, and checkban.
  • New "changehost" plugin - Automated configurable vHost setting on connect.
  • Some core changes will break protocol modules and plugins written for older PyLink versions:
    • Some functions have been renamed:
      • utils.nickToUid(irc, nick) -> irc.nickToUid(nick)
      • utils.isInternalClient(irc, uid) -> irc.isInternalClient(uid)
      • utils.isInternalServer(irc, uid) -> irc.isInternalServer(uid)
      • utils.clientToServer(irc, uid) -> utils.getServer(uid)
      • utils.getProtoModule(...) -> utils.getProtocolModule(...)
    • Protocol specification is rewritten, with "Client" and "Server" dropped from the suffix of most outgoing commands: see acdd7db...2fd0a8a.
  • exec plugin: add inject and raw commands (4e7396b).
  • exec plugin: support newline (and other) escapes in exec (375dbe8).
  • protocols: allow changing remote users' hosts in updateClient (741fed9).
  • Speed up and clean up shutdown sequence, fixing hangs due to sockets not shutting down cleanly (#152).
  • protocols/unreal: Support cloaking with user mode +x (#136).
  • Various bug fixes - see 0.5-dev...0.6.0-dev for a full diff.

PyLink 0.5-dev

06 Dec 17:54

Choose a tag to compare

PyLink 0.5-dev Pre-release
Pre-release

The "We're getting somewhere..." release.

Changes

  • Bug fixes, all the bug fixes.

Core

  • Support IPv6 connections in config.
  • The offending hook data is now logged whenever a hook function errors, for more convenient debugging.
  • Add sanity checks for autoconnect - delay has to be at least 1 second now, to prevent connect floods that go on without any delay in between!
  • Add irc.reply() to send command replies to callers in the right context (channel or PM).
  • More base commands are in coreplugin instead of commands.py now, making the latter reloadable without restart.
  • Don't crash when REHASH loads a config file that's invalid.
  • utils: Replace imp (deprecated) with importlib.

Plugins

  • commands: Add a command to set log level (#124).
  • commands: Update irc.botdata (bot: data in config) in REHASH.
  • fantasy: Support nick prefixes (e.g. PyLink: help), along with a configurable prefix.

Protocols

  • protocols/TS6: Fix SQUIT handling and introduction of SID-less servers (i.e. atheme's /os JUPE) (#119)
  • protocols/unreal: Add (experimental) support for UnrealIRCd 4.0.x!
  • plugins: More complete INFO logging: plugin loading/unloading, unknown commands called, successful operups

Full diff:0.4.6-dev...0.5-dev