* [CogManager] Correctly manage core and install paths
This keeps the core and install paths separate from those set in the
config.
It also displays the core path separately in `[p]paths`
Resolves#1982.
* [CogManager] Fix old reference to method removed in previous commit
Also did a bit of a general cleanup of cog_manager.py's code
* Make the core path a class attribute
* [CogManager] Paths should default to a list
Fixes#1943
This just skips cogs when `__module__` is None. Also:
- backported rapptz/discord.py#621
- moved RPC handler unregister to remove_cog()
- raise an exception when a load would overwrite an existing extension
* basic caching layer
* bit more work, now with an upper size to the cache
* cache fix
* smarter cache invalidation
* One more cache case
* Put in a bare skeleton of something else still needed
* more logic handling improvements
* more work, still not finished
* mass-resolve is done in theory, but needs testing
* small bugfixin + comments
* add note about before/after hooks
* LRU-dict fix
* when making comments about optimizations, provide historical context
* fmt pass
* Ability to run Red with token without instance
* --no-instance flag
* Reformatted cli with black
* Fix changes requested by @Tobotimus
- Use "system reboot" to be clearer
- save_default_config renamed to create_temp_config
- More documentation for the create_temp_config function
* Update create_temp_config call
* Fix up imports
* [V3 JSON] Return deepcopy in JSON driver
* Add a test
* foo not bar
* Add a test for setting and then mutating
* Resolve issue for setting and mutating as well
* Reformat
* Switch RPC libs for websockets support
* Implement RPC handling for core
* Black reformat
* Fix docs for build on travis
* Modify RPC to use a Cog base class
* Refactor rpc server reference as global
* Handle cogbase unload method
* Add an init call to handle mutable base attributes
* Move RPC server reference back to the bot object
* Remove unused import
* Add tests for rpc method add/removal
* Add tests for rpc method add/removal and cog base unloading
* Add one more test
* Black reformat
* Add RPC mixin...fix MRO
* Correct internal rpc method names
* Add rpc test html file for debugging/example purposes
* Add documentation
* Add get_method_info
* Update docs with an example RPC call specifying parameter formatting
* Make rpc methods UPPER
* Black reformat
* Fix doc example
* Modify this to match new method naming convention
* Add more tests
* prevent the bot from being a modlog target
* prevent heirarchy issues in mod
* modify this comparison to avoid more complex mocking of the guild object in mod test
* spelling
* Cleanup quotes in cogs
* More quote cleanup that I missed
fixed a little bit of grammar here and there as well.
* [V3 Warnings] Change allowcustomreasons docstring
To help not confuse users who would believe that the command would use allow or disallow.
* Run black reformat
* implements local whitelist/blacklist which had unused bot.db settings
This includes a role listing
* format pass
* Update core_commands.py
* .
* black format pass
* [V3 Fuzzy search] fix several issues with this feature
* Make it check if parent commands are hidden
* Check if compiler available in setup.py
* Let's just compile a dummy C file to check compiler availability
* Add a missing import + remove unneeded code
* Extract load/unload/reload
* Add a few more commands
* Refactor load/unload signature
* Add invite URL and version info
* Black fixes
* Split the incoming cog names in reload correctly
* Reformat
* Remove meta.bot