aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
* Put an strf format for ISO8601 in utilsGravatar jesopo2019-02-121-0/+2
|
* Hold on to tags and type for BATCHesGravatar jesopo2019-02-111-0/+7
|
* IRCServer should handle ping_sent, not IRCSocketGravatar jesopo2019-02-112-2/+5
|
* last_read/last_send is now handled by IRCSocket.pyGravatar jesopo2019-02-112-5/+5
|
* `socket.getpeername()` can return more than 2 values (IRCSocket)Gravatar jesopo2019-02-111-1/+1
|
* `connected` status is now tracked by IRCSocketsGravatar jesopo2019-02-113-3/+4
|
* Add `IRCSocket.connected_ip` to hold on to the IP address we connected to (e.g.Gravatar jesopo2019-02-111-0/+3
| | | | so we know which IP we picked from a round robin DNS)
* Shift socket.socket related logic to IRCSocket.pyGravatar jesopo2019-02-113-161/+209
|
* We don't need to send `writebuffer.empty` event any more (src/IRCServer.py)Gravatar jesopo2019-02-111-3/+0
|
* Actually return `str` object from IRCLine.__str__Gravatar jesopo2019-02-101-1/+1
|
* Add _char_limit return type hint, fix decoded_data return type hintGravatar jesopo2019-02-101-2/+2
| | | | (src/IRCLine.py)
* Import IRCServer in IRCLine so type hint comment is valid (src/IRCLine.py)Gravatar jesopo2019-02-101-1/+1
|
* Add a comment as to why IRCLine's LINE_CUTOFF is 470, not 510Gravatar jesopo2019-02-101-0/+1
|
* Change LINE_CUTOFF to 470, now that we compute max char counts (src/IRCLine.py)Gravatar jesopo2019-02-101-1/+1
|
* Let IRCLine.Line handle truncating command outputGravatar jesopo2019-02-102-5/+23
|
* Parse sent data in IRCServer._send, not IRCServer.sendGravatar jesopo2019-02-101-2/+6
|
* Add `IRCServer.hostmask()` to construct our nick!user@host hostmaskGravatar jesopo2019-02-101-0/+3
|
* Shift encoding/truncating IRC lines to src/IRCLine.pyGravatar jesopo2019-02-102-14/+16
|
* Return truncted data from encode_truncate and hold it in IRCLine.LineGravatar jesopo2019-02-103-6/+12
|
* Make use of utils.truncate_encode, to avoid cutting utf8 sequences in halfGravatar jesopo2019-02-101-4/+3
|
* add `utils.truncate_encode`, to encode and truncate a string while ↵Gravatar jesopo2019-02-101-0/+10
| | | | respecting utf8 multi-byte encoding
* Don't send empty space with JOIN if key=="" (src/IRCServer.py)Gravatar jesopo2019-02-101-1/+1
|
* Return IRCLine object from IRCServer.send() (and functions that call .send())Gravatar jesopo2019-02-101-48/+55
|
* fix `self.batches` type hint (src/IRCServer.py)Gravatar jesopo2019-02-101-1/+1
|
* IRCLine's `data` should be bytesGravatar jesopo2019-02-101-1/+1
|
* Add missing src/IRCLine.py fileGravatar jesopo2019-02-101-0/+20
|
* `now` isn't defined now that throttle code has been separated out ↵Gravatar jesopo2019-02-101-1/+1
| | | | (src/IRCServer.py)
* Track lines-to-be-sent up until they're completely sent, queue up more than 1Gravatar jesopo2019-02-101-14/+43
| | | | line at a time in write buffer if we've got space (src/IRCServer.py)
* rename, 'IRCLine' -> 'IRCParsedLine' (utils.irc)Gravatar jesopo2019-02-101-3/+3
|
* Make line cutoff character count a const (src/IRCServer.py)Gravatar jesopo2019-02-101-2/+3
|
* Add TimersContext.find_allGravatar jesopo2019-02-101-0/+2
|
* Add Timers.find_all, to find all timers of a certain nameGravatar jesopo2019-02-101-0/+10
|
* Abstract ssl socket wrapping away so we can reuse itGravatar jesopo2019-02-103-14/+28
|
* Old copypaste fail - we were returning the most recent user id when creating ↵Gravatar jesopo2019-02-101-1/+1
| | | | | | channels (Database.py)
* Set default values for various types of channel modes (src/IRCServer.py)Gravatar jesopo2019-02-091-4/+9
|
* Also capture channel setting-related modes (e.g. +f for flood settings)Gravatar jesopo2019-02-091-0/+1
|
* Return "0s" from utils.to_pretty_time when given 0 secondsGravatar jesopo2019-02-071-0/+3
|
* Send `CAP LS` after we send `PASS` (if applicable) (src/IRCServer.py)Gravatar jesopo2019-02-071-1/+2
|
* Add optional `default` param to `Exports.get_one()` (src/Exports.py)Gravatar jesopo2019-02-071-3/+5
|
* Implement ExportsContext.get_oneGravatar jesopo2019-02-071-0/+2
|
* Implement `Exports.get_one()`Gravatar jesopo2019-02-071-0/+3
|
* Fix mypy typing issue with importspec loader Optionalness (src/ModuleManager.py)Gravatar jesopo2019-02-061-1/+2
|
* If a server has a hostname that's not an IP, use it as SNI server nameGravatar jesopo2019-02-062-2/+14
|
* Don't break if we try to "finish" a waiting CAP when it's already finishedGravatar jesopo2019-02-061-1/+1
|
* Don't .lower() nicknames in Database.py, it doesn't know about IRC casemappingGravatar jesopo2019-02-062-4/+5
|
* STARTTLS was removed long agoGravatar jesopo2019-02-051-2/+0
|
* Manually count ACK/NAK for REQed CAPs before ENDing CAP negotiationGravatar jesopo2019-02-051-0/+2
|
* Switch to using __init__.py as main file of directory modules, so they behaveGravatar jesopo2019-02-051-3/+4
| | | | like a package (also put the modules manually in sys.modules
* Switch to a non-deprecated method of loading files by filenameGravatar jesopo2019-02-051-2/+4
| | | | (`importlib.util.spec_from_file_location`)
* Add `make_event(..)` to EventHookContextGravatar jesopo2019-01-301-0/+4
|