3
0
mirror of https://github.com/jlu5/PyLink.git synced 2024-12-24 11:42:51 +01:00

Import RELNOTES for 1.1-alpha1

This commit is contained in:
James Lu 2016-12-09 20:14:26 -08:00
parent 1761effa28
commit 506467193e

View File

@ -1,3 +1,62 @@
# PyLink 1.1-alpha1
The "Candescent" release.
### Changes from 1.0.3
#### Feature changes
- **Clientbot now supports optional mode syncing** :tada: See the example conf for how to configure it (look for "modesync").
- PID file checking has been implemented and is turned on by default. :warning: **When upgrading from 1.0.x, remove `pylink.pid` before starting!**
- Revamped login configuration system, which now supports **multiple accounts and hashed passwords**
- :warning: `login:user` and `login:password` are now deprecated and may be removed in a future release. Consider migrating to the new `login:` block in the example config.
- Hashing new passwords can be done using the `mkpasswd` command via IRC, or the new command line utility `pylink-mkpasswd`.
- Services bots now support setting modes on themselves on join: see "joinmodes" in the example conf
- Added a contrib module downloader (`pylink-contribdl`)
- Relay now uses the PyLink permission system. The following permissions are now available:
- Granted to opers by default:
- `relay.create`
- `relay.destroy`
- `relay.claim`
- `relay.link`
- `relay.delink`
- `relay.linkacl.view`
- `relay.linkacl`
- Granted to all users by default:
- `relay.linked`
- And the following which is not explicitly granted:
- `relay.savedb`
- Relay: added a `purge` command to remove all relays involving a network
- Automode now supports remote channel manipulation in the form `netname#channel` (#352)
- protocols/ts6 now supports legacy UID introduction, for older servers / services
- Changehost gained a few new features (look for "changehost:" in the example conf):
- Optional (per network) vHost enforcement: now you can create spoofs like freenode without using their IRCd!
- Enforcement exceptions for the feature above
- Options to enable/disable matching users by IP and real host
- New protocol support for `ircd-ratbox`, based off `ts6`
- New servermaps plugin, displaying network `/map`'s from the PyLink server's perspective. Relay links can be expanded as well to make this more detailed!
- Oper status tracking is now a network-specific option, for better security. Look for "track_oper_statuses" in the example config.
- The PyLink launcher now sets the terminal title on launch (Windows & POSIX)
- relay: implement a complementary `showchan` command, showing a list of relay links
#### Bug fixes
- Relay is potentially less crashy when PyLink is split off while it tries to introduce users (#354).
- The `bots` plugin now allows JOIN/NICK/PART on all service bots
- Relay: skip channel TS check for Clientbot (some users had this as a sporadic issue)
- Irc: explicitly kill connect loop threads after an Irc object has been removed. This fixes various freezing issues caused by ghosted connections after a network splits (#351).
- Relay: don't error when removing a channel from a network that isn't connected. (AttributeError on `removeChannel()` if `irc.pseudoclient` isn't set)
#### Internal fixes / improvements
- Server ID and service client name (if applicable) are now stored inside `IrcUser` objects, removing the need for some expensive reverse lookups
- Relay and Automode now use a centralized DataStore (backwards compatible) in `structures` for their database implementation
- Docstring rewrapping is now supported for neater, wrappable docstrings! (#307)
- `Irc.error()` was added for easier error replies; it is a simple wrapper around `Irc.reply()`
- Relay now uses locks in DB read/writes, for thread safety
- Most camel case functions in Relay were renamed to lowercase with underscores (PEP 8)
#### Misc. changes
- exec: Drop `raw` text logging to DEBUG to prevent information leakage (e.g. passwords on Clientbot)
- Removed `update.sh` (my convenience script for locally building + running PyLink)
# PyLink 1.0.3
Tagged as **1.0.3** by [GLolol](https://github.com/GLolol)