aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Document the breaking change with the new dictionary storage change.Rapptz2016-01-083-4/+41
| | | | | Since the only things dict views support are iteration we should advise people who want the old behaviour to change it to a list.
* Document how Client.run should be the last function to call.Rapptz2016-01-082-0/+14
|
* document public get_ methods and make others privateSteven Berler2016-01-083-44/+50
|
* performance improvementsSteven Berler2016-01-084-74/+120
| | | | | | | | | | | | | | | | | | | | | Replaced server member lists, channel lists, and private channel lists with dicts. This allows O(1) lookups and removes (previously it would be an O(N) operation to lookup or remove). I did pretty extensive testing and benchmarking to compare the performance of using lists vs using dicts. Iterating through lists to find an item is only faster in the average case for extremely small lists (less than 3 items). For 100 items, using a dict is about 10 times faster on average (and about 100 times faster for 1000 items). The overhead in dicts is in memory usage and initial creation time. Creating and populating a dict is about 2 to 3 times slower than creating and appending items to a list. However this cost is still tiny. For 1000 items this equates to about a 70 microsecond difference (on an i7 CPU) for populating the entire dict. The memory overhead for a dict (compared to a list) is about 25-60 KB per 1000 items (can vary depending on dict resizing). Originally I wanted to use OrderedDicts to presereve order, but in my testing OrderedDicts have about 6x the memory overhead compared to normal dicts.
* [commands] Add a way to enable or disable certain commands.Rapptz2016-01-072-7/+39
|
* [commands] Special handling for when the converter is bool.Rapptz2016-01-071-0/+12
|
* [commands] Allow registration of multiple command prefixes.Rapptz2016-01-072-4/+22
|
* Fix handling of embed-only MESSAGE_UPDATE.Rapptz2016-01-071-1/+6
|
* Add Message.nonce attribute.Rapptz2016-01-072-3/+8
|
* Change the way MESSAGE_UPDATE events are handled.Rapptz2016-01-071-11/+1
| | | | | | | | Previously we created a copy of the object and did some strange iteration over the data and set the attributes that we thought were valid. This worked back then in v0.1.0 of the library when it was written, but it no longer works nowadays when we want to be as future proof as possible.
* Add missing roles attribute to Server.__slots__Rapptz2016-01-071-1/+1
|
* Add missing documentation for discord.GameRapptz2016-01-071-0/+6
|
* Documentation fixes to quiet Sphinx warnings.Rapptz2016-01-074-7/+8
|
* Document the fact that data classes use __slots__.Rapptz2016-01-071-0/+9
|
* Add __slots__ for missing classes that didn't have it.Rapptz2016-01-063-5/+36
|
* [commands] Don't skip whitespace if the command trigger is found.Rapptz2016-01-061-1/+1
|
* [commands] None default without specified type uses str now.Rapptz2016-01-061-1/+1
|
* Unavailable guilds get added to cache.Rapptz2016-01-062-4/+2
|
* Remove excessive logging when using voice.Rapptz2016-01-061-2/+0
|
* Add Member.permissions_in.Rapptz2016-01-061-0/+16
| | | | Fixes #63
* Update README to use Python 3.5.Rapptz2016-01-061-21/+13
|
* Examples now use Python 3.5. Remove echo.py example.Rapptz2016-01-068-80/+61
|
* [commands] Add CommandNotFound error.Rapptz2016-01-053-11/+22
|
* Add basic example bot showcasing the commands ext module.Rapptz2016-01-051-0/+51
|
* [commands] Add a way to remove commands.Rapptz2016-01-041-0/+19
|
* Use setuputils.find_package to find extension modules.Rapptz2016-01-041-2/+2
|
* Documentation improvements on using check decorator.Rapptz2016-01-041-2/+32
|
* Add missing import in commands core.Rapptz2016-01-041-0/+2
|
* Update license of files to 2016.Rapptz2016-01-0422-23/+23
|
* Initial implementation of commands extension module.Rapptz2016-01-047-0/+1069
|
* Revert "Use super() in classes that could be subclassed."Rapptz2016-01-043-3/+0
| | | | This reverts commit 948f565b430d80f782d0b7c264cc0b27aa1ec0b2.
* Use super() in classes that could be subclassed.Rapptz2016-01-043-0/+3
|
* Change permissions to remove the can_ prefix.Rapptz2016-01-034-75/+78
|
* Document more breaking changes in migrating file.Rapptz2016-01-031-0/+52
|
* Remove print statement from bytes check.Rapptz2016-01-011-1/+0
|
* Implement compressed READYRapptz2016-01-011-1/+10
|
* Actually send the payload data in Client.create_serverRapptz2015-12-311-1/+12
|
* Fix issue with add_roles and friends not working.Rapptz2015-12-301-2/+2
| | | | | Previously it stated that Role object is not serializable due to passing in Role objects rather than their IDs.
* Add logs to help debug some voice data.Rapptz2015-12-301-0/+2
|
* Maintain order in role related functions.Rapptz2015-12-302-9/+21
|
* utils.get now supports nested attribute retrieval.Rapptz2015-12-301-3/+15
|
* Changed cache check to be the login endpoint itself.Rapptz2015-12-291-19/+5
|
* Fix indentation errorRapptz2015-12-291-1/+1
|
* Add ability to move members to a different voice channel.Rapptz2015-12-291-0/+43
|
* Remove Client.voice_channelRapptz2015-12-291-4/+3
|
* Client.join_voice_channel now accepts an Object.Rapptz2015-12-291-0/+3
| | | | Fixes #62.
* Simplify parser event check with hasattr rather than tuples.Rapptz2015-12-291-9/+3
|
* Add missing ` in documentation for create_serverRapptz2015-12-291-1/+1
|
* ConnectionState is now constructed in Client.__init__.Rapptz2015-12-292-15/+15
| | | | | | This should reduce the amount of checks for None if someone doesn't want a websocket connection. The connection state is instead cleared rather than reconstructed.
* Raise ClientException if an unexpected websocket close happensRapptz2015-12-291-1/+5
|