| Commit message (Collapse) | Author | Age | Lines | 
| ...                      |  | 
| | | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | |  | 
- Replaced type checking with `TextChannel.is_news()` for simplification to check is possible to publish new
- Removed unnecessary `while` loop on `send_webhook` that check is webhook available. No need for this after starting ordering modification.
 | 
| | | | | | | | | | | | |  | 
 | 
| | | | |\ \ \ \ \ \ \ \ \   | 
 | 
| | | | | | | | | | | | | | 
| | | | | | | | | | | | | 
| | | | | | | | | | | | |  | 
Co-Authored-By: Joseph <[email protected]>
 | 
| | | | |/ / / / / / / / /   | 
 | 
| | | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | |  | 
Added `features="lxml"` to `BeautifulSoup` class creating to avoid warning.
 | 
| | | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | |  | 
- Added footer to webhook sent message
- Made `send_webhook` return `discord.Message` instead ID of message
- Added waiting for Webhook on `send_webhook`
- Added message publishing in new loops
 | 
| | | | | | | | | | | | |  | 
 | 
| | | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | |  | 
- Created new helper function `News.get_webhook_and_channel` to will be run in Cog loading and will fetch #python-news channel and webhook.
- Fixed `News.send_webhook` when you pass `None` as author, this will not add author.
- Replaced individual channel and webhook fetches with `News.webhook` and `News.channel`.
- Replaced positional arguments with kwargs in `send_webhook` uses.
- Moved maillists syncing from `News.__init__` to `News.post_maillist_news`.
- Simplified `News.post_pep_news` already exist checks.
 | 
| | | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | |  | 
- Created helper function `News.get_thread_and_first_mail`
- Created helper function `News.send_webhook`
- Created helper function `News.check_new_exist`
- Task `post_maillist_news`, that send latest maillist threads to news, when they don't exist.
- Implemented helper functions to PEP news
- Added date check
 | 
| | | | | | | | | | | | |  | 
 | 
| | | | | | | | | | | | |  | 
 | 
| | | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | |  | 
Function fetch display names of these mail lists, that bot will post. These names will be used on Webhook author names. `News.webhook_names` storage these name and display name pairs.
 | 
| | | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | |  | 
- Created task `post_pep_news` that pull existing news message IDs from API, do checks and send new PEP when it's not already sent.
- Removed `get_webhook`
- Removed `self.webhook`
 | 
| | | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | |  | 
Replaced in-file mail lists with constants.py's, replaced webhook ID getting.
 | 
| | | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | |  | 
Removed Webhook and Channel from their listings, created new class `PythonNews` that hold them + mail lists.
 | 
| | | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | |  | 
and webhook.
This use local dev environment IDs.
 | 
| | | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | |  | 
`News.get_webhook` fetch discord.Webhook by ID provided in config. `self.webhook` use webhook that it got from this function.
 | 
| | | | | | | | | | | | |  | 
 | 
| | | | | | | | | | | | |  | 
 | 
| | | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | |  | 
Function sync maillists listing with API, that hold IDs of message that have news. PEPs handling is over RSS, so this will added manually in this function.
 | 
| | | | | | | | | | | | |  | 
 | 
| | | | | | | | | | | | |  | 
 | 
| | | | | |_|_|_|_|/ / /  
| | | |/| | | | | | |   
| | | | | | | | | | |   
| | | | | | | | | | |    | 
Added general content of cog: class and setup.
 | 
| | | | | | | | | | | | 
| | | | | | | | | | | 
| | | | | | | | | | | 
| | | | | | | | | | | 
| | | | | | | | | | | 
| | | | | | | | | | | 
| | | | | | | | | | |  | 
The `msg` arg is for displaying a message when the assertion fails. To
match against the exception's message, `assertRaisesRegex` must be used.
Since all of the messages are meant to be interpreted literally rather
than as regex, `re.escape` is used.
 | 
| | | | | | | | | | | |  | 
 | 
| | | | | | | | | | | |  | 
 | 
| | | | | | | | | | | |  | 
 | 
| | |_|_|_|_|_|_|_|_|/  
|/| | | | | | | | |   
| | | | | | | | | |   
| | | | | | | | | |   
| | | | | | | | | |   
| | | | | | | | | |    | 
`datetime` objects only support a year up to 9999.
Fixes #906
 | 
| |\ \ \ \ \ \ \ \ \ \  
| |_|/ / / / / / / /  
|/| | | | | | | | |    | 
Free tag
 | 
| | |\ \ \ \ \ \ \ \ \  
| |/ / / / / / / / /  
|/| | | | | | | | |    | 
 | 
| |\ \ \ \ \ \ \ \ \ \  
| | | | | | | | | | | 
| | | | | | | | | | |  | 
Fix category cache issue
 | 
| |/ / / / / / / / / /   | 
 | 
| |\ \ \ \ \ \ \ \ \ \  
| |_|_|/ / / / / / /  
|/| | | | | | | | |    | 
Answered help session statistics
 | 
| | | | | | | | | | |  | 
 | 
| | | | | | | | | | |  | 
 | 
| | | | | | | | | | |  | 
 | 
| | | | | | | | | | |  | 
 | 
| |/ / / / / / / / /  
| | | | | | | | |   
| | | | | | | | |   
| | | | | | | | |    | 
anyone but the claimant
 | 
| |\ \ \ \ \ \ \ \ \  
| |_|/ / / / / / /  
|/| | | | | | | |    | 
Explicitly use UTF-8 to read tag files
 | 
| | |\ \ \ \ \ \ \ \  
| |/ / / / / / / /  
|/| | | | | | | |    | 
 | 
| |\ \ \ \ \ \ \ \ \  
| | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | |  | 
python-discord/bug/frontend/870/help-channel-dm-category
HelpChannels: fix AttributeError getting a category for a DMChannel 
 | 
| | |\ \ \ \ \ \ \ \ \  
| |/ / / / / / / / /  
|/| | | | | | | | |    | 
 | 
| |\ \ \ \ \ \ \ \ \ \  
| | | | | | | | | | | 
| | | | | | | | | | |  | 
Fix wrong exception type in syncing
 | 
| | |\ \ \ \ \ \ \ \ \ \  
| |/ / / / / / / / / /  
|/| | | | | | | | | |    | 
 | 
| | | | | | | | | | | | 
| | | | | | | | | | | 
| | | | | | | | | | |  | 
We want our members to use the paste site to share text-based files instead of them sharing the files as attachments on Discord. As `.md`, a file extensions used for plain-text files with markdown formatting, is such a text file, I've removed it from the anti-malware whitelist.
 | 
| | | | | | | | | | | | 
| | | | | | | | | | | 
| | | | | | | | | | |  | 
Replaced `TimeoutError` with `asyncio.TimeoutError`.
 | 
| | | |_|_|_|_|_|_|_|/  
| |/| | | | | | | |   
| | | | | | | | | |    | 
Replaced `TimeoutError` with `asyncio.TimeoutError`.
 | 
| | | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | |  | 
Co-Authored-By: kwzrd <[email protected]>
 | 
| | | | | | | | | | |  | 
 |