aboutsummaryrefslogtreecommitdiff
path: root/src/IRCServer.py
Commit message (Collapse)AuthorAgeFilesLines
* Add IRCServer.has_capability and use it throughout line_handlerGravatar jesopo2019-03-031-0/+2
|
* Rename IRCLine.Line to IRCLine.SentLine, for clarityGravatar jesopo2019-02-241-26/+27
|
* Fire preprocess.send per-command - use this to only strip colors from ParsedLineGravatar jesopo2019-02-231-6/+3
| | | | objects for PRIVMSG and NOTICE
* Move utils.irc.IRCParsedLine to IRCLine.ParsedLine, improve truncationGravatar jesopo2019-02-231-8/+9
| | | | | mechanism, don't convert sent line from ParsedLine to text to ParsedLine for line_handler handling
* Add `target` typehint on IRCServer.send_tagmsg, add send_tagmsg to ↵Gravatar jesopo2019-02-221-1/+1
| | | | IRCChannel/IRCUser
* Add IRCServer.send_joins, a nicer interface than manually `",".join`ingGravatar jesopo2019-02-201-0/+4
|
* Don't pass `None` around as tag default, fix some missing return type argsGravatar jesopo2019-02-191-2/+3
|
* Add `make_batch` and `send_batch` to IRCServerGravatar jesopo2019-02-181-0/+11
|
* Shift formatting protocol data to it's own file: utils.irc.protocolGravatar jesopo2019-02-181-68/+36
|
* Put a helper function in utils to do iso8601 formatting. change IRCServer'sGravatar jesopo2019-02-171-2/+1
| | | | last-read setting to use it.
* How did this newline get hereGravatar jesopo2019-02-171-1/+0
|
* 'src/IRCServer.capabilities' -> 'src/IRCServer.agreed_capabilities'Gravatar jesopo2019-02-161-1/+1
|
* Send `CAP REQ` in 10-item chunks (src/IRCServer.py)Gravatar jesopo2019-02-161-3/+6
|
* Don't add a space after a formatted tagmsg in _tag_str (src/IRCServer.py)Gravatar jesopo2019-02-141-3/+5
|
* Add IRCServer.send_tagmsg, to send `TAGMSG` commandsGravatar jesopo2019-02-141-0/+3
|
* Only put a ":" on trailing args when it's requiredGravatar jesopo2019-02-121-13/+21
|
* Upgrade resume.py to `draft/resume-0.3` and support sending last-read timestampGravatar jesopo2019-02-121-0/+4
|
* IRCServer should handle ping_sent, not IRCSocketGravatar jesopo2019-02-111-1/+5
|
* last_read/last_send is now handled by IRCSocket.pyGravatar jesopo2019-02-111-5/+2
|
* `connected` status is now tracked by IRCSocketsGravatar jesopo2019-02-111-2/+0
|
* Shift socket.socket related logic to IRCSocket.pyGravatar jesopo2019-02-111-158/+27
|
* We don't need to send `writebuffer.empty` event any more (src/IRCServer.py)Gravatar jesopo2019-02-111-3/+0
|
* Let IRCLine.Line handle truncating command outputGravatar jesopo2019-02-101-1/+1
|
* 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-101-8/+2
|
* Return truncted data from encode_truncate and hold it in IRCLine.LineGravatar jesopo2019-02-101-2/+3
|
* Make use of utils.truncate_encode, to avoid cutting utf8 sequences in halfGravatar jesopo2019-02-101-4/+3
|
* 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
|
* `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)
* Make line cutoff character count a const (src/IRCServer.py)Gravatar jesopo2019-02-101-2/+3
|
* Abstract ssl socket wrapping away so we can reuse itGravatar jesopo2019-02-101-13/+4
|
* 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
|
* Send `CAP LS` after we send `PASS` (if applicable) (src/IRCServer.py)Gravatar jesopo2019-02-071-1/+2
|
* If a server has a hostname that's not an IP, use it as SNI server nameGravatar jesopo2019-02-061-1/+6
|
* 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-061-2/+3
|
* 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
|
* Make sure more than one hook can catch `preprocess.send` but still respect anyGravatar jesopo2019-01-261-2/+5
| | | | that return a change to the output (src/IRCServer.py)
* `IRCServer.Server.irc_lower` should have a return type hint of `str`Gravatar jesopo2019-01-241-1/+1
|
* Typo, `IRCServer.Server.irc_equal` -> `IRCServer.Server.irc_equals`Gravatar jesopo2019-01-241-1/+1
|
* Add `irc_lower()` and `irc_equals()` to IRCServer.Server so that no where elseGravatar jesopo2019-01-241-7/+11
| | | | in the code has to know about the server having a casemapping
* Only pop MODE args when we're certain we should (pays more attention toGravatar jesopo2018-12-061-0/+2
| | | | CHANMODES ISUPPORT)
* A couple of tweaks to clarify some type hintsGravatar jesopo2018-12-021-1/+4
|
* `data` is now `line`Gravatar jesopo2018-12-021-1/+1
|