* This starts setting up checks.py to handle managed permission overrides
* A decent starting point, more work to come
* missing else fix
* more work on this
* reduce redundant code
* More work on this...
* more progress
* add a debug flag to some things in .resolvers to help with exploring why checks behave in a certain way
* modify this to be a list for ease of showing full resolution order
* more
* don't bypass is_owner, ever
* remove old logic about ownercommands
* better handling of chec validity
* anonymous functions return None for __module__, remove some code as a result
* mutable default bind fix
* Add a caching layer (to be invalidated as needed)
Ensure checks in the chain inserted before the core logic only return None or False
(whitelists then blacklists are checked first in core logic, from most to least specific scope, overriding this with an allow does not make sense)
* more progress, slow work as I have time
* Modifies the predicates so that their inner functions are accesible from cogs without
being a check
* Update checks.py
Safety for existing permissions.py cogs
* This is where I take a change of course on setting this up,
because this would have been the most long winded interactive command ever as
it was starting to progress.
This is going to support individual entry updates, settings from yaml, gettings, and clearing existing settings
as well as printing a settings template out and referring people to what is going to be very well written docs
* block permissions cog from being unblocked by the permissions cog as a safety feature (really, co-owner exists at this point)
* WIP
* Okay, this has the intent of the changes, just to actually test these as working as intended + add corresponding guild functions
* oh nice, missed a couple files, sec...
* WIP, also, something's broken in resolvers or check_overrides >>
* This is working now (still needs docs and more...)
* unmerge changes from other PR
* is_owner still needs to exist in here due to management of non checked commands
* Update this to new style standards
* forgot to commit some local changes earlier
* fix update logic
* fix update logic
* b14 fix, lol
* fix issue with management command name
* this isnt a real fix
* Ok..
* perms
* This is working, but needs docs and more configuration opts now
* more
* Ux functions, need testing
* style
* fix using the obj str rather than the id
* fix CogOrCommand converter
* Return the correct things in the converter
* last fix, needs docs, and possibly some extra Ux utils
* start doc writing
* extra user facing commands
* yaml docs
* yaml fix
* secondary checks-fix
* 3rd party check stuff
* remove warning that this isn't ready yet
* swap ctx.tick for real responses, require emoji perms for interactive menuing, better attr handling for nicknames
* send file to author
* alias to `p`
* more ctx tick removal
(This is a long ass changelog...)
* Update CONTRIBUTING.md with details on new dev workflow
* Fix typos
* Update link in README.rst
* tiny grammar fix
* Specify the line length
* Update CONTRIBUTING.md
* Fix links in contents
* Add section for keeping dependencies up-to-date
* Include notes about Makefile
* Okay, let's fix the issues here hopefully.
* This is working now
* Unfinished, and needs a lot of testing.
* more work
* working
* minor thing to remove
* improve i18n and usage feedback
* More docstrings
* still not ready...
* push this untested pile of code.
* working, menu needs cleaning up though, modlog converter not here yet
* menu cleanup
* add note about the fact that values are overwritten
* add i18n
* User friendlier quitting
* Better naming of a function
* setup automodule for dataconverter
* More documentation
* use Config.MEMBER (etc) instead of 'MEMBER' (etc)
* Initial commit
* Fix sentry
* Make cog manager install path work relative to the bot's dir
* Fix downloader to save data relative to the defined data folder
* Fix sentry test
* Fix downloader tests
* Change logfile location
* Add another line to codeowners
* Basic tests
* Fix versioning
* Add in FutureWarning for config file changes
* Add reference to issue
* WIP cog path manager
* Initial working state
* Get real reloading working
* Type error thingy
* And fix the tests
* Start UI shit
* path reordering
* Add install path getter/setter and fix config syntax
* Determine bot directory at runtime
* Add UI commands for install path
* Update downloader to use install path
* Add sane install path default
* Make evaluation of cog install path lazy
* Some typing fixes
* Add another line to codeowners
* Conditionally put install path in paths
* Always put install path first
* Dont allow people to add the installdir as an additional path, guarantee install dir isn't shown with paths command
* Make shit update loaded cogs
* Add tests
* Another one