aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Expand)AuthorAgeFilesLines
* combine find_setting() and find_setting_prefix() on user/channel/server/botGravatar jesopo2019-10-074-31/+42
* parse out content_type in Response ctorGravatar jesopo2019-10-051-5/+3
* parse content-type out in utils.http.request, put it on Response objectGravatar jesopo2019-10-041-9/+13
* Allow utils.Setting_ parse functions to throw detailed errorsGravatar jesopo2019-10-041-0/+3
* 'is_localhost()' -> 'host_permitted()'Gravatar jesopo2019-09-301-4/+4
* use ipaddress is_loopback etc to do better forbidden ranges•••closes #87 Gravatar jesopo2019-09-301-0/+9
* only _kill() when there's no servers *and* the event queue is empty•••this is so that bitbot doesn't exit when you !reconnect but only have 1 server Gravatar jesopo2019-09-301-1/+1
* only return IRCUser.hostmask() when all needed pieces are availableGravatar jesopo2019-09-271-1/+3
* add external_modules directoryGravatar jesopo2019-09-271-17/+28
* forgot to commit kwargs for get_user()Gravatar jesopo2019-09-271-5/+15
* add utils.parse.try_int() because .isdigit() isnt good enoughGravatar jesopo2019-09-261-0/+6
* add IRCBuffer.find_many_from()Gravatar jesopo2019-09-261-2/+8
* assume http fallback_encoding by content-type (utf8 for json)Gravatar jesopo2019-09-251-1/+8
* refactor all checks for channel_type to server.is_channel()Gravatar jesopo2019-09-202-3/+6
* only BeautifulSoup for finding encoding when it's a html-ish typeGravatar jesopo2019-09-201-1/+1
* cache calculated "next expiration" timeGravatar jesopo2019-09-201-1/+12
* Allow passing source Hostmask to IRCBatchGravatar jesopo2019-09-191-1/+2
* log call was replaced with Exception but [] on args remainedGravatar jesopo2019-09-191-1/+1
* give Requests, use them in utils.http.request_many()Gravatar jesopo2019-09-191-12/+25
* utils.http.request_() has no self, let alone self.logGravatar jesopo2019-09-191-3/+4
* should be using pair_start/pair_end throughout `for`Gravatar jesopo2019-09-191-2/+2
* also show "bad" data in HTTPParsingException when a message is providedGravatar jesopo2019-09-181-1/+1
* show "bad" data in HTTPParsingException messageGravatar jesopo2019-09-181-2/+3
* move q.close() to where it will be called even if deadline is hitGravatar jesopo2019-09-181-1/+2
* move _raise_deadline() out of except block to clean up printed stacktraceGravatar jesopo2019-09-181-0/+4
* don't check already-read data when checking for too-large requests•••this check was here because the first read will return empty if it was an invalid byte sequence for e.g. gzip because we needed to receive more data. the second read will always return data (not decoded) so regardless of what the already-read data is, the second read is the only criteria we need. Gravatar jesopo2019-09-171-1/+1
* log which URL caused an error in request_manyGravatar jesopo2019-09-171-1/+6
* only decode content-types in DECODE_CONTENT_TYPESGravatar jesopo2019-09-171-1/+1
* Response.__init__() needs `encoding` nowGravatar jesopo2019-09-171-1/+1
* restore 5 second (instead of default 10) deadline for http.requestGravatar jesopo2019-09-171-1/+1
* use utils.deadline_process() in utils.http._request() so background threads can•••call _request() Gravatar jesopo2019-09-171-30/+37
* add .get() to CaseInsensitiveDictGravatar jesopo2019-09-171-0/+2
* use Queue.get() with timeout, not Process.join() for timeout•••this was because the threads spawned by multiprocessing.Queue seemed to be making Process.join() believe the subprocess had not exited. Gravatar jesopo2019-09-171-7/+7
* first draft of multiprocess.Process deadline systemGravatar jesopo2019-09-171-0/+23
* add missing IRCLine import to IRCChannelGravatar jesopo2019-09-171-2/+2
* 'seperate_hostmask()' -> 'parse_hostmask()'Gravatar jesopo2019-09-161-2/+2
* topic_setter should be stored as a HostmaskGravatar jesopo2019-09-161-8/+3
* EventRoot._hook's `kwarg` should be a list of tuplesGravatar jesopo2019-09-161-1/+2
* add `json_body` arg to Request to json-encode body, only return from `body` if•••not null Gravatar jesopo2019-09-161-4/+8
* support '0' as an IntSetting valueGravatar jesopo2019-09-151-3/+6
* get_user_status() -> get_user_modes(), filter in format_activity.pyGravatar jesopo2019-09-121-1/+1
* add utils.SensitiveSetting, to .format() hide valueGravatar jesopo2019-09-121-0/+4
* add utils.Setting.format() so subtypes can format differentlyGravatar jesopo2019-09-121-0/+3
* translate INVITE from [channel_name, target] to [target, channel_name]Gravatar jesopo2019-09-122-3/+3
* Revert "INVITE should be [channel_name, target]"•••This reverts commit f3d8ffad2c8dc9444e32f65e3c78373ec6ad0661. Gravatar jesopo2019-09-122-4/+4
* INVITE should be [channel_name, target]Gravatar jesopo2019-09-122-4/+4
* allow Requests to specify a useragentGravatar jesopo2019-09-121-3/+4
* add IRCChannel.send_invite()Gravatar jesopo2019-09-121-0/+2
* Revert "add IRCBot.http_client(), to allow modules to override default http c...•••This reverts commit 81347fbba0ab9325321bc9e085b3354bb16512df. Gravatar jesopo2019-09-111-3/+0
* add IRCBot.http_client(), to allow modules to override default http clientGravatar jesopo2019-09-111-0/+3