From e0ff7d5bc6336ed2a4cfcbf03c32e834d7c6cac5 Mon Sep 17 00:00:00 2001 From: LilSpazJoekp <15524072+LilSpazJoekp@users.noreply.github.com> Date: Mon, 8 Dec 2025 15:30:40 +0000 Subject: [PATCH] Update pre-commit hooks --- .github/CONTRIBUTING.rst | 42 ++++++---- .pre-commit-config.yaml | 4 +- AUTHORS.rst | 25 +++--- CHANGES.rst | 80 +++++++++++-------- README.rst | 35 ++++---- docs/code_overview/asyncpraw_models.rst | 5 +- docs/code_overview/exceptions.rst | 10 ++- docs/code_overview/models/comment.rst | 5 +- docs/code_overview/models/draft.rst | 5 +- docs/code_overview/models/livethread.rst | 5 +- docs/code_overview/models/liveupdate.rst | 5 +- docs/code_overview/models/message.rst | 5 +- .../models/modmailconversation.rst | 5 +- docs/code_overview/models/more.rst | 5 +- docs/code_overview/models/multireddit.rst | 5 +- docs/code_overview/models/redditor.rst | 5 +- docs/code_overview/models/submission.rst | 5 +- docs/code_overview/models/subreddit.rst | 5 +- docs/code_overview/models/wikipage.rst | 5 +- docs/code_overview/other.rst | 5 +- docs/code_overview/other/asyncprawbase.rst | 5 +- docs/code_overview/other/auth.rst | 5 +- docs/code_overview/other/base_mod_notes.rst | 5 +- docs/code_overview/other/baselist.rst | 5 +- docs/code_overview/other/button.rst | 5 +- docs/code_overview/other/buttonwidget.rst | 5 +- docs/code_overview/other/calendar.rst | 5 +- .../other/calendarconfiguration.rst | 5 +- docs/code_overview/other/collection.rst | 5 +- .../other/collectionmoderation.rst | 5 +- docs/code_overview/other/commentforest.rst | 5 +- docs/code_overview/other/commenthelper.rst | 5 +- .../code_overview/other/commentmoderation.rst | 5 +- docs/code_overview/other/communitylist.rst | 5 +- docs/code_overview/other/config.rst | 5 +- .../other/contributorrelationship.rst | 5 +- docs/code_overview/other/customwidget.rst | 5 +- docs/code_overview/other/domainlisting.rst | 5 +- docs/code_overview/other/draftlist.rst | 5 +- docs/code_overview/other/emoji.rst | 5 +- docs/code_overview/other/fullnamemixin.rst | 5 +- docs/code_overview/other/hover.rst | 5 +- docs/code_overview/other/idcard.rst | 5 +- docs/code_overview/other/image.rst | 5 +- docs/code_overview/other/imagedata.rst | 5 +- docs/code_overview/other/imagewidget.rst | 5 +- docs/code_overview/other/inboxablemixin.rst | 5 +- docs/code_overview/other/inlinegif.rst | 5 +- docs/code_overview/other/inlineimage.rst | 5 +- docs/code_overview/other/inlinemedia.rst | 5 +- docs/code_overview/other/inlinevideo.rst | 5 +- docs/code_overview/other/listinggenerator.rst | 5 +- .../other/livecontributorrelationship.rst | 5 +- .../other/livethreadcontribution.rst | 5 +- docs/code_overview/other/livethreadstream.rst | 5 +- .../other/liveupdatecontribution.rst | 5 +- docs/code_overview/other/menu.rst | 5 +- docs/code_overview/other/menulink.rst | 5 +- docs/code_overview/other/mod_action.rst | 5 +- docs/code_overview/other/mod_note.rst | 5 +- docs/code_overview/other/mod_note_mixin.rst | 5 +- docs/code_overview/other/moderatedlist.rst | 5 +- .../other/moderatorrelationship.rst | 5 +- docs/code_overview/other/moderatorswidget.rst | 5 +- docs/code_overview/other/modmail.rst | 5 +- docs/code_overview/other/modmailmessage.rst | 5 +- docs/code_overview/other/partialredditor.rst | 5 +- docs/code_overview/other/polldata.rst | 5 +- docs/code_overview/other/polloption.rst | 5 +- docs/code_overview/other/postflairwidget.rst | 5 +- docs/code_overview/other/preferences.rst | 5 +- docs/code_overview/other/reddit_mod_notes.rst | 5 +- docs/code_overview/other/redditbase.rst | 5 +- .../other/redditor_mod_notes.rst | 5 +- docs/code_overview/other/redditorlist.rst | 5 +- docs/code_overview/other/redditorstream.rst | 5 +- docs/code_overview/other/removalreason.rst | 5 +- docs/code_overview/other/rule.rst | 5 +- docs/code_overview/other/rulemoderation.rst | 5 +- docs/code_overview/other/ruleswidget.rst | 5 +- docs/code_overview/other/styles.rst | 5 +- docs/code_overview/other/stylesheet.rst | 5 +- docs/code_overview/other/sublisting.rst | 5 +- docs/code_overview/other/submenu.rst | 5 +- docs/code_overview/other/submissionflair.rst | 5 +- .../other/submissionmoderation.rst | 5 +- .../other/subreddit_mod_notes.rst | 5 +- .../other/subredditcollections.rst | 5 +- .../other/subredditcollectionsmoderation.rst | 5 +- docs/code_overview/other/subredditemoji.rst | 5 +- docs/code_overview/other/subredditfilters.rst | 5 +- docs/code_overview/other/subredditflair.rst | 5 +- .../other/subredditflairtemplates.rst | 5 +- .../other/subredditlinkflairtemplates.rst | 5 +- .../other/subredditlistingmixin.rst | 5 +- docs/code_overview/other/subredditmessage.rst | 5 +- .../other/subredditmoderation.rst | 5 +- .../other/subredditmoderationstream.rst | 5 +- .../other/subredditquarantine.rst | 5 +- .../other/subredditredditorflairtemplates.rst | 5 +- .../other/subredditrelationship.rst | 5 +- .../other/subredditremovalreasons.rst | 5 +- docs/code_overview/other/subredditrules.rst | 5 +- .../other/subredditrulesmoderation.rst | 5 +- docs/code_overview/other/subredditstream.rst | 5 +- .../other/subredditstylesheet.rst | 5 +- docs/code_overview/other/subredditwidgets.rst | 5 +- .../other/subredditwidgetsmoderation.rst | 5 +- docs/code_overview/other/subredditwiki.rst | 5 +- docs/code_overview/other/textarea.rst | 5 +- .../other/thingmoderationmixin.rst | 5 +- docs/code_overview/other/trophy.rst | 5 +- docs/code_overview/other/usersubreddit.rst | 5 +- .../other/usersubredditmoderation.rst | 5 +- docs/code_overview/other/util.rst | 5 +- docs/code_overview/other/widget.rst | 5 +- docs/code_overview/other/widgetmoderation.rst | 5 +- .../other/wikipagemoderation.rst | 5 +- docs/code_overview/reddit/drafts.rst | 5 +- docs/code_overview/reddit/front.rst | 5 +- docs/code_overview/reddit/inbox.rst | 5 +- docs/code_overview/reddit/live.rst | 5 +- docs/code_overview/reddit/multireddit.rst | 5 +- docs/code_overview/reddit/redditors.rst | 5 +- docs/code_overview/reddit/subreddit.rst | 5 +- docs/code_overview/reddit/subreddits.rst | 5 +- docs/code_overview/reddit/user.rst | 5 +- docs/code_overview/reddit_instance.rst | 5 +- docs/genindex.rst | 5 +- docs/getting_started/authentication.rst | 40 ++++++---- docs/getting_started/configuration.rst | 15 ++-- .../configuration/environment_variables.rst | 5 +- .../getting_started/configuration/options.rst | 30 ++++--- .../getting_started/configuration/prawini.rst | 25 +++--- .../configuration/reddit_initialization.rst | 5 +- docs/getting_started/faq.rst | 5 +- docs/getting_started/installation.rst | 20 +++-- docs/getting_started/logging.rst | 5 +- docs/getting_started/multiple_instances.rst | 10 ++- docs/getting_started/quick_start.rst | 33 ++++---- docs/getting_started/ratelimits.rst | 5 +- docs/index.rst | 10 ++- docs/package_info/asyncpraw_migration.rst | 20 +++-- docs/package_info/contributing.rst | 53 ++++++------ docs/package_info/glossary.rst | 11 +-- docs/package_info/references.rst | 5 +- docs/tutorials/comments.rst | 15 ++-- docs/tutorials/refresh_token.rst | 15 ++-- docs/tutorials/reply_bot.rst | 22 ++--- 149 files changed, 686 insertions(+), 474 deletions(-) diff --git a/.github/CONTRIBUTING.rst b/.github/CONTRIBUTING.rst index 621270d14..7aa854de5 100644 --- a/.github/CONTRIBUTING.rst +++ b/.github/CONTRIBUTING.rst @@ -1,14 +1,17 @@ -Guidelines for Contributing -=========================== +############################# + Guidelines for Contributing +############################# -Code of Conduct ---------------- +***************** + Code of Conduct +***************** This project is released with a `Contributor Code of Conduct`_. By participating in this project you agree to abide by its terms. -Creating an Issue ------------------ +******************* + Creating an Issue +******************* 1. Please do not create issues for questions you have. The appropriate location for such questions is `r/redditdev`_ or via Slack_. @@ -17,15 +20,17 @@ Creating an Issue 3. Please use GitHub's issue search feature to look for already reported issues before reporting your own. -Responding to Issues --------------------- +********************** + Responding to Issues +********************** One of the simplest ways to help with Async PRAW is by answering others questions. When responding, always be positive. While something may be obvious to you, it likely is not to the person asking the question. -Creating Pull Requests ----------------------- +************************ + Creating Pull Requests +************************ 1. If you are fixing an already filed issue, please indicate your intentions by commenting on the issue. This act will hopefully minimize any duplicate work. @@ -58,15 +63,17 @@ Creating Pull Requests 9. Feel free to check on the status of your pull request periodically by adding a comment. -Becoming a Team Member ----------------------- +************************ + Becoming a Team Member +************************ The PRAW team is always interested in expanding Async PRAW's active team member base with proven contributors. If you are interested, please let us know. In general, we would like to see you push a number of contributions before we add you on. -Style Recommendations ---------------------- +*********************** + Style Recommendations +*********************** To keep Async PRAW's source consistent, all contribution code must pass the ``pre_push.py`` script. GitHub Actions will enforce the passing of the automated tests, @@ -75,7 +82,7 @@ ensure consistency with much of PEP8 and PEP257 there are a few things that it d enforce. Please look over the following list: Method Order within a Class -~~~~~~~~~~~~~~~~~~~~~~~~~~~ +=========================== - Group method names by type and order the groups like so: @@ -113,8 +120,9 @@ Method Order within a Class def instance_method(self): pass -See Also --------- +********** + See Also +********** Please also read `Contributing to Async PRAW`_. diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 769478a14..62465db5b 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -22,12 +22,12 @@ repos: - id: ruff args: [ --exit-non-zero-on-fix, --fix ] files: ^(praw/.*.py)$ - rev: v0.13.3 + rev: v0.14.8 - repo: https://github.com/LilSpazJoekp/docstrfmt hooks: - id: docstrfmt - rev: v1.11.1 + rev: v2.0.0 - repo: https://github.com/MarcoGorelli/auto-walrus hooks: diff --git a/AUTHORS.rst b/AUTHORS.rst index ab5dd8a11..0e38117df 100644 --- a/AUTHORS.rst +++ b/AUTHORS.rst @@ -1,10 +1,12 @@ -Author/Maintainer -================= +################### + Author/Maintainer +################### - Joel Payne `@LilSpazJoekp `_ -Documentation Contributors -========================== +############################ + Documentation Contributors +############################ - Dale Cudmore `@DCuddies `_ - Zhifu Ge `@zhifuge `_ @@ -34,18 +36,21 @@ Documentation Contributors - Andrew Chen Wang `@Andrew-Chen-Wang `_ - Add "Name and github profile link" above this line. -PRAW Author -=========== +############# + PRAW Author +############# - Bryce Boe `@bboe `_ -Logo Creator -============ +############## + Logo Creator +############## - kungming2 `@kungming2 `_ -Source Contributors -=================== +##################### + Source Contributors +##################### - Ethan Dalool `@voussoir `_ - William McKinnerney `@williammck `_ diff --git a/CHANGES.rst b/CHANGES.rst index dc5909ff6..cb3d776b5 100644 --- a/CHANGES.rst +++ b/CHANGES.rst @@ -1,10 +1,12 @@ -Change Log -========== +############ + Change Log +############ Async PRAW follows `semantic versioning `_. -Unreleased ----------- +************ + Unreleased +************ **Added** @@ -88,15 +90,17 @@ Unreleased - Remove ``SubredditMessage.mute`` and ``SubredditMessage.unmute`` methods. - Remove ``InboxableMixin.unblock_subreddit`` method. -7.8.1 (2024/12/21) ------------------- +******************** + 7.8.1 (2024/12/21) +******************** **Changed** - Bump asyncprawcore minimum version. -7.8.0 (2024/10/20) ------------------- +******************** + 7.8.0 (2024/10/20) +******************** **Added** @@ -141,8 +145,9 @@ Unreleased - XML parsing error when media uploads fail. -7.7.1 (2023/07/11) ------------------- +******************** + 7.7.1 (2023/07/11) +******************** **Changed** @@ -152,8 +157,9 @@ Unreleased - An issue with replying to a modmail conversation results in a error. -7.7.0 (2023/02/25) ------------------- +******************** + 7.7.0 (2023/02/25) +******************** **Added** @@ -166,8 +172,9 @@ Unreleased - An issue when uploading media during the submission of a new media post. - Removal reasons are now returned in the same order as they appear on Reddit. -7.6.1 (2022/11/28) ------------------- +******************** + 7.6.1 (2022/11/28) +******************** **Changed** @@ -179,8 +186,9 @@ Unreleased - An issue where :class:`.ModmailConversation`'s ``messages`` attribute would only contain the latest message. -7.6.0 (2022/10/23) ------------------- +******************** + 7.6.0 (2022/10/23) +******************** **Added** @@ -227,8 +235,9 @@ Unreleased alphabetically, and prevent breaking changes when adding new arguments to existing methods. -7.5.0 (2021/11/13) ------------------- +******************** + 7.5.0 (2021/11/13) +******************** **Added** @@ -259,8 +268,9 @@ Unreleased - An import error when using Async PRAW in environments where ``libsqlite3-dev`` is needed to utilize ``aiosqlite`` package which depends on the ``sqlite3`` builtin. -7.4.0 (2021/07/30) ------------------- +******************** + 7.4.0 (2021/07/30) +******************** **Added** @@ -284,8 +294,9 @@ Unreleased - :class:`.Reddit` keyword argument ``token_manager``. -7.3.1 (2021/07/06) ------------------- +******************** + 7.3.1 (2021/07/06) +******************** **Changed** @@ -298,8 +309,9 @@ Unreleased - Fixed an issue where some :class:`.RedditBase` objects would be sent in a request as ``"None"``. -7.3.0 (2021/06/18) ------------------- +******************** + 7.3.0 (2021/06/18) +******************** **Added** @@ -338,8 +350,9 @@ Unreleased - Fixed bug where :meth:`~.FullnameMixin.fullname` sometimes returned the wrong fullname. -7.2.0 (2021/02/25) ------------------- +******************** + 7.2.0 (2021/02/25) +******************** **Added** @@ -360,8 +373,9 @@ Unreleased switch forward to the Async PRAW 8 behavior set ``praw8_raise_exception_on_me=True`` in your ``asyncpraw.Reddit(...)`` call. -7.1.1 (2021/02/11) ------------------- +******************** + 7.1.1 (2021/02/11) +******************** **Added** @@ -405,13 +419,15 @@ Unreleased - An issue where streams could get stuck on a deleted item and never pull new items. - Fix subreddit style asset uploading. -7.1.0 (2020/07/16) ------------------- +******************** + 7.1.0 (2020/07/16) +******************** - First official Async PRAW release! -7.1.0.pre1 (2020/07/16) ------------------------ +************************* + 7.1.0.pre1 (2020/07/16) +************************* - Initial Async PRAW pre-release. diff --git a/README.rst b/README.rst index 70d011691..08a9c83b7 100644 --- a/README.rst +++ b/README.rst @@ -1,5 +1,6 @@ -Async PRAW: The Asynchronous Python Reddit API Wrapper -====================================================== +######################################################## + Async PRAW: The Asynchronous Python Reddit API Wrapper +######################################################## .. image:: https://img.shields.io/pypi/v/asyncpraw.svg :alt: Latest Async PRAW Version @@ -42,8 +43,9 @@ you're set. .. _installation: -Installation ------------- +************** + Installation +************** Async PRAW is supported on Python 3.9+. The recommended way to install Async PRAW is via `pip `_. @@ -61,8 +63,9 @@ To install the latest development version of Async PRAW run the following instea For instructions on installing Python and pip see "The Hitchhiker's Guide to Python" `Installation Guides `_. -Quickstart ----------- +************ + Quickstart +************ Assuming you already have a credentials for a script-type OAuth application you can instantiate an instance of Async PRAW like so: @@ -111,8 +114,9 @@ With the ``reddit`` instance you can then interact with Reddit: Please see Async PRAW's `documentation `_ for more examples of what you can do with Async PRAW. -Async PRAW Discussion and Support ---------------------------------- +*********************************** + Async PRAW Discussion and Support +*********************************** For those new to Python, or would otherwise consider themselves a Python beginner, please consider asking questions on the `r/learnpython @@ -146,13 +150,15 @@ welcome. `_. By participating in this project you agree to abide by its terms. -Documentation -------------- +*************** + Documentation +*************** Async PRAW's documentation is located at https://asyncpraw.readthedocs.io/. -History -------- +********* + History +********* `February 2019 `_: @@ -163,8 +169,9 @@ PRAW. `_: Async PRAW was moved into the praw-dev namespace. -License -------- +********* + License +********* Async PRAW's source (v7.1.1+) is provided under the `Simplified BSD License `_. diff --git a/docs/code_overview/asyncpraw_models.rst b/docs/code_overview/asyncpraw_models.rst index 787620f55..223dfaf31 100644 --- a/docs/code_overview/asyncpraw_models.rst +++ b/docs/code_overview/asyncpraw_models.rst @@ -1,5 +1,6 @@ -Working with Async PRAW's Models -================================ +################################## + Working with Async PRAW's Models +################################## .. toctree:: :maxdepth: 2 diff --git a/docs/code_overview/exceptions.rst b/docs/code_overview/exceptions.rst index d488fca39..3601cf943 100644 --- a/docs/code_overview/exceptions.rst +++ b/docs/code_overview/exceptions.rst @@ -1,13 +1,15 @@ -Exceptions in Async PRAW -======================== +########################## + Exceptions in Async PRAW +########################## In addition to exceptions under the ``asyncpraw.exceptions`` namespace shown below, exceptions might be raised that inherit from ``asyncprawcore.AsyncPrawcoreException``. Please see the following resource for information on those exceptions: https://github.com/praw-dev/asyncprawcore/blob/main/asyncprawcore/exceptions.py -asyncpraw.exceptions --------------------- +********************** + asyncpraw.exceptions +********************** .. automodule:: asyncpraw.exceptions :inherited-members: diff --git a/docs/code_overview/models/comment.rst b/docs/code_overview/models/comment.rst index b8166ab55..9db68b48d 100644 --- a/docs/code_overview/models/comment.rst +++ b/docs/code_overview/models/comment.rst @@ -1,5 +1,6 @@ -Comment -======= +######### + Comment +######### .. autoclass:: asyncpraw.models.Comment :inherited-members: diff --git a/docs/code_overview/models/draft.rst b/docs/code_overview/models/draft.rst index ca83b8339..8b4e1e065 100644 --- a/docs/code_overview/models/draft.rst +++ b/docs/code_overview/models/draft.rst @@ -1,5 +1,6 @@ -Draft -===== +####### + Draft +####### .. autoclass:: asyncpraw.models.Draft :inherited-members: diff --git a/docs/code_overview/models/livethread.rst b/docs/code_overview/models/livethread.rst index c5caaa4a8..ba98608db 100644 --- a/docs/code_overview/models/livethread.rst +++ b/docs/code_overview/models/livethread.rst @@ -1,5 +1,6 @@ -LiveThread -========== +############ + LiveThread +############ .. autoclass:: asyncpraw.models.LiveThread :inherited-members: diff --git a/docs/code_overview/models/liveupdate.rst b/docs/code_overview/models/liveupdate.rst index 6fc53ec60..69810a10a 100644 --- a/docs/code_overview/models/liveupdate.rst +++ b/docs/code_overview/models/liveupdate.rst @@ -1,5 +1,6 @@ -LiveUpdate -========== +############ + LiveUpdate +############ .. autoclass:: asyncpraw.models.LiveUpdate :inherited-members: diff --git a/docs/code_overview/models/message.rst b/docs/code_overview/models/message.rst index da4061c85..d71aa3e49 100644 --- a/docs/code_overview/models/message.rst +++ b/docs/code_overview/models/message.rst @@ -1,5 +1,6 @@ -Message -======= +######### + Message +######### .. autoclass:: asyncpraw.models.Message :inherited-members: diff --git a/docs/code_overview/models/modmailconversation.rst b/docs/code_overview/models/modmailconversation.rst index 75cb00b7b..3907496a5 100644 --- a/docs/code_overview/models/modmailconversation.rst +++ b/docs/code_overview/models/modmailconversation.rst @@ -1,5 +1,6 @@ -ModmailConversation -=================== +##################### + ModmailConversation +##################### .. autoclass:: asyncpraw.models.reddit.modmail.ModmailConversation :inherited-members: diff --git a/docs/code_overview/models/more.rst b/docs/code_overview/models/more.rst index 5956d3417..764a3854a 100644 --- a/docs/code_overview/models/more.rst +++ b/docs/code_overview/models/more.rst @@ -1,5 +1,6 @@ -MoreComments -============ +############## + MoreComments +############## .. autoclass:: asyncpraw.models.MoreComments :inherited-members: diff --git a/docs/code_overview/models/multireddit.rst b/docs/code_overview/models/multireddit.rst index f2619d08f..e516651a8 100644 --- a/docs/code_overview/models/multireddit.rst +++ b/docs/code_overview/models/multireddit.rst @@ -1,5 +1,6 @@ -Multireddit -=========== +############# + Multireddit +############# .. autoclass:: asyncpraw.models.Multireddit :inherited-members: diff --git a/docs/code_overview/models/redditor.rst b/docs/code_overview/models/redditor.rst index c4c78ce9e..b4044dfcc 100644 --- a/docs/code_overview/models/redditor.rst +++ b/docs/code_overview/models/redditor.rst @@ -1,5 +1,6 @@ -Redditor -======== +########## + Redditor +########## .. autoclass:: asyncpraw.models.Redditor :inherited-members: diff --git a/docs/code_overview/models/submission.rst b/docs/code_overview/models/submission.rst index 9a6ad7a85..f773ca169 100644 --- a/docs/code_overview/models/submission.rst +++ b/docs/code_overview/models/submission.rst @@ -1,5 +1,6 @@ -Submission -========== +############ + Submission +############ .. autoclass:: asyncpraw.models.Submission :inherited-members: diff --git a/docs/code_overview/models/subreddit.rst b/docs/code_overview/models/subreddit.rst index a8f76cbd7..43a234f66 100644 --- a/docs/code_overview/models/subreddit.rst +++ b/docs/code_overview/models/subreddit.rst @@ -1,5 +1,6 @@ -Subreddit -========= +########### + Subreddit +########### .. autoclass:: asyncpraw.models.Subreddit :inherited-members: diff --git a/docs/code_overview/models/wikipage.rst b/docs/code_overview/models/wikipage.rst index ce663ff54..52a9b7766 100644 --- a/docs/code_overview/models/wikipage.rst +++ b/docs/code_overview/models/wikipage.rst @@ -1,5 +1,6 @@ -WikiPage -======== +########## + WikiPage +########## .. autoclass:: asyncpraw.models.reddit.wikipage.WikiPage :inherited-members: diff --git a/docs/code_overview/other.rst b/docs/code_overview/other.rst index 8fa53516c..280b2b674 100644 --- a/docs/code_overview/other.rst +++ b/docs/code_overview/other.rst @@ -1,5 +1,6 @@ -Other Classes -============= +############### + Other Classes +############### The following list of classes are provided here for complete documentation. You should not likely need to work with these classes directly, but rather through instances of diff --git a/docs/code_overview/other/asyncprawbase.rst b/docs/code_overview/other/asyncprawbase.rst index d2dbcd3aa..504d2d252 100644 --- a/docs/code_overview/other/asyncprawbase.rst +++ b/docs/code_overview/other/asyncprawbase.rst @@ -1,5 +1,6 @@ -AsyncPRAWBase -============= +############### + AsyncPRAWBase +############### .. autoclass:: asyncpraw.models.base.AsyncPRAWBase :inherited-members: diff --git a/docs/code_overview/other/auth.rst b/docs/code_overview/other/auth.rst index 8c2fde702..0746b74b7 100644 --- a/docs/code_overview/other/auth.rst +++ b/docs/code_overview/other/auth.rst @@ -1,5 +1,6 @@ -Auth -==== +###### + Auth +###### .. autoclass:: asyncpraw.models.Auth :inherited-members: diff --git a/docs/code_overview/other/base_mod_notes.rst b/docs/code_overview/other/base_mod_notes.rst index 19f64c57d..146f68bc0 100644 --- a/docs/code_overview/other/base_mod_notes.rst +++ b/docs/code_overview/other/base_mod_notes.rst @@ -1,5 +1,6 @@ -BaseModNotes -============ +############## + BaseModNotes +############## .. autoclass:: asyncpraw.models.mod_notes.BaseModNotes :inherited-members: diff --git a/docs/code_overview/other/baselist.rst b/docs/code_overview/other/baselist.rst index 229021be9..c346804e4 100644 --- a/docs/code_overview/other/baselist.rst +++ b/docs/code_overview/other/baselist.rst @@ -1,5 +1,6 @@ -BaseList -======== +########## + BaseList +########## .. autoclass:: asyncpraw.models.list.base.BaseList :inherited-members: diff --git a/docs/code_overview/other/button.rst b/docs/code_overview/other/button.rst index 3861ef0a2..9a59ddf78 100644 --- a/docs/code_overview/other/button.rst +++ b/docs/code_overview/other/button.rst @@ -1,5 +1,6 @@ -Button -====== +######## + Button +######## .. autoclass:: asyncpraw.models.Button :inherited-members: diff --git a/docs/code_overview/other/buttonwidget.rst b/docs/code_overview/other/buttonwidget.rst index cee2de2fb..938915fac 100644 --- a/docs/code_overview/other/buttonwidget.rst +++ b/docs/code_overview/other/buttonwidget.rst @@ -1,5 +1,6 @@ -ButtonWidget -============ +############## + ButtonWidget +############## .. autoclass:: asyncpraw.models.ButtonWidget :inherited-members: diff --git a/docs/code_overview/other/calendar.rst b/docs/code_overview/other/calendar.rst index 094bb0eb1..c23375083 100644 --- a/docs/code_overview/other/calendar.rst +++ b/docs/code_overview/other/calendar.rst @@ -1,5 +1,6 @@ -Calendar -======== +########## + Calendar +########## .. autoclass:: asyncpraw.models.Calendar :inherited-members: diff --git a/docs/code_overview/other/calendarconfiguration.rst b/docs/code_overview/other/calendarconfiguration.rst index 997492532..0f4f6b29e 100644 --- a/docs/code_overview/other/calendarconfiguration.rst +++ b/docs/code_overview/other/calendarconfiguration.rst @@ -1,5 +1,6 @@ -CalendarConfiguration -===================== +####################### + CalendarConfiguration +####################### .. autoclass:: asyncpraw.models.CalendarConfiguration :inherited-members: diff --git a/docs/code_overview/other/collection.rst b/docs/code_overview/other/collection.rst index c1ad6e683..dde2d08e4 100644 --- a/docs/code_overview/other/collection.rst +++ b/docs/code_overview/other/collection.rst @@ -1,5 +1,6 @@ -Collection -========== +############ + Collection +############ .. autoclass:: asyncpraw.models.Collection :inherited-members: diff --git a/docs/code_overview/other/collectionmoderation.rst b/docs/code_overview/other/collectionmoderation.rst index 00cafc9d7..7076298af 100644 --- a/docs/code_overview/other/collectionmoderation.rst +++ b/docs/code_overview/other/collectionmoderation.rst @@ -1,5 +1,6 @@ -CollectionModeration -==================== +###################### + CollectionModeration +###################### .. autoclass:: asyncpraw.models.reddit.collections.CollectionModeration :inherited-members: diff --git a/docs/code_overview/other/commentforest.rst b/docs/code_overview/other/commentforest.rst index 8f01ace13..6a650a853 100644 --- a/docs/code_overview/other/commentforest.rst +++ b/docs/code_overview/other/commentforest.rst @@ -1,5 +1,6 @@ -CommentForest -============= +############### + CommentForest +############### .. autoclass:: asyncpraw.models.comment_forest.CommentForest :inherited-members: diff --git a/docs/code_overview/other/commenthelper.rst b/docs/code_overview/other/commenthelper.rst index add30c156..c87b22eac 100644 --- a/docs/code_overview/other/commenthelper.rst +++ b/docs/code_overview/other/commenthelper.rst @@ -1,5 +1,6 @@ -CommentHelper -============= +############### + CommentHelper +############### .. autoclass:: asyncpraw.models.listing.mixins.subreddit.CommentHelper :inherited-members: diff --git a/docs/code_overview/other/commentmoderation.rst b/docs/code_overview/other/commentmoderation.rst index a7c2e9b40..c3998b49e 100644 --- a/docs/code_overview/other/commentmoderation.rst +++ b/docs/code_overview/other/commentmoderation.rst @@ -1,5 +1,6 @@ -CommentModeration -================= +################### + CommentModeration +################### .. autoclass:: asyncpraw.models.reddit.comment.CommentModeration :inherited-members: diff --git a/docs/code_overview/other/communitylist.rst b/docs/code_overview/other/communitylist.rst index b55ed2989..9a610189f 100644 --- a/docs/code_overview/other/communitylist.rst +++ b/docs/code_overview/other/communitylist.rst @@ -1,5 +1,6 @@ -CommunityList -============= +############### + CommunityList +############### .. autoclass:: asyncpraw.models.CommunityList :inherited-members: diff --git a/docs/code_overview/other/config.rst b/docs/code_overview/other/config.rst index 63eed84b3..39e3a2154 100644 --- a/docs/code_overview/other/config.rst +++ b/docs/code_overview/other/config.rst @@ -1,5 +1,6 @@ -Config -====== +######## + Config +######## .. autoclass:: asyncpraw.config.Config :inherited-members: diff --git a/docs/code_overview/other/contributorrelationship.rst b/docs/code_overview/other/contributorrelationship.rst index 48bb0829a..bee34a0f7 100644 --- a/docs/code_overview/other/contributorrelationship.rst +++ b/docs/code_overview/other/contributorrelationship.rst @@ -1,5 +1,6 @@ -ContributorRelationship -======================= +######################### + ContributorRelationship +######################### .. autoclass:: asyncpraw.models.reddit.subreddit.ContributorRelationship :inherited-members: diff --git a/docs/code_overview/other/customwidget.rst b/docs/code_overview/other/customwidget.rst index c6a67febd..97ce0f6ed 100644 --- a/docs/code_overview/other/customwidget.rst +++ b/docs/code_overview/other/customwidget.rst @@ -1,5 +1,6 @@ -CustomWidget -============ +############## + CustomWidget +############## .. autoclass:: asyncpraw.models.CustomWidget :inherited-members: diff --git a/docs/code_overview/other/domainlisting.rst b/docs/code_overview/other/domainlisting.rst index fac513b5c..d7f6be009 100644 --- a/docs/code_overview/other/domainlisting.rst +++ b/docs/code_overview/other/domainlisting.rst @@ -1,5 +1,6 @@ -DomainListing -============= +############### + DomainListing +############### .. autoclass:: asyncpraw.models.DomainListing :inherited-members: diff --git a/docs/code_overview/other/draftlist.rst b/docs/code_overview/other/draftlist.rst index 1bc810e00..3e31039c7 100644 --- a/docs/code_overview/other/draftlist.rst +++ b/docs/code_overview/other/draftlist.rst @@ -1,5 +1,6 @@ -DraftList -========= +########### + DraftList +########### .. autoclass:: asyncpraw.models.DraftList :inherited-members: diff --git a/docs/code_overview/other/emoji.rst b/docs/code_overview/other/emoji.rst index b501d424b..43c34fe72 100644 --- a/docs/code_overview/other/emoji.rst +++ b/docs/code_overview/other/emoji.rst @@ -1,5 +1,6 @@ -Emoji -===== +####### + Emoji +####### .. autoclass:: asyncpraw.models.reddit.emoji.Emoji :inherited-members: diff --git a/docs/code_overview/other/fullnamemixin.rst b/docs/code_overview/other/fullnamemixin.rst index abc034273..e68f3b53e 100644 --- a/docs/code_overview/other/fullnamemixin.rst +++ b/docs/code_overview/other/fullnamemixin.rst @@ -1,5 +1,6 @@ -FullnameMixin -============= +############### + FullnameMixin +############### .. autoclass:: asyncpraw.models.reddit.mixins.FullnameMixin :inherited-members: diff --git a/docs/code_overview/other/hover.rst b/docs/code_overview/other/hover.rst index ef24a8db0..f1ad0dc1b 100644 --- a/docs/code_overview/other/hover.rst +++ b/docs/code_overview/other/hover.rst @@ -1,5 +1,6 @@ -Hover -===== +####### + Hover +####### .. autoclass:: asyncpraw.models.Hover :inherited-members: diff --git a/docs/code_overview/other/idcard.rst b/docs/code_overview/other/idcard.rst index f3660f054..9d13d61fa 100644 --- a/docs/code_overview/other/idcard.rst +++ b/docs/code_overview/other/idcard.rst @@ -1,5 +1,6 @@ -IDCard -====== +######## + IDCard +######## .. autoclass:: asyncpraw.models.IDCard :inherited-members: diff --git a/docs/code_overview/other/image.rst b/docs/code_overview/other/image.rst index f30b887bf..0bd3b278b 100644 --- a/docs/code_overview/other/image.rst +++ b/docs/code_overview/other/image.rst @@ -1,5 +1,6 @@ -Image -===== +####### + Image +####### .. autoclass:: asyncpraw.models.Image :inherited-members: diff --git a/docs/code_overview/other/imagedata.rst b/docs/code_overview/other/imagedata.rst index 8a1310426..6a833ff75 100644 --- a/docs/code_overview/other/imagedata.rst +++ b/docs/code_overview/other/imagedata.rst @@ -1,5 +1,6 @@ -ImageData -========= +########### + ImageData +########### .. autoclass:: asyncpraw.models.ImageData :inherited-members: diff --git a/docs/code_overview/other/imagewidget.rst b/docs/code_overview/other/imagewidget.rst index ba6b1c6ce..014b858f2 100644 --- a/docs/code_overview/other/imagewidget.rst +++ b/docs/code_overview/other/imagewidget.rst @@ -1,5 +1,6 @@ -ImageWidget -=========== +############# + ImageWidget +############# .. autoclass:: asyncpraw.models.ImageWidget :inherited-members: diff --git a/docs/code_overview/other/inboxablemixin.rst b/docs/code_overview/other/inboxablemixin.rst index ee200d1ba..c3dcebf5d 100644 --- a/docs/code_overview/other/inboxablemixin.rst +++ b/docs/code_overview/other/inboxablemixin.rst @@ -1,5 +1,6 @@ -InboxableMixin -============== +################ + InboxableMixin +################ .. autoclass:: asyncpraw.models.reddit.mixins.InboxableMixin :inherited-members: diff --git a/docs/code_overview/other/inlinegif.rst b/docs/code_overview/other/inlinegif.rst index 838940c57..32b391d16 100644 --- a/docs/code_overview/other/inlinegif.rst +++ b/docs/code_overview/other/inlinegif.rst @@ -1,5 +1,6 @@ -InlineGif -========= +########### + InlineGif +########### .. autoclass:: asyncpraw.models.InlineGif :inherited-members: diff --git a/docs/code_overview/other/inlineimage.rst b/docs/code_overview/other/inlineimage.rst index 85f9d3ca9..7cc3db8ff 100644 --- a/docs/code_overview/other/inlineimage.rst +++ b/docs/code_overview/other/inlineimage.rst @@ -1,5 +1,6 @@ -InlineImage -=========== +############# + InlineImage +############# .. autoclass:: asyncpraw.models.InlineImage :inherited-members: diff --git a/docs/code_overview/other/inlinemedia.rst b/docs/code_overview/other/inlinemedia.rst index 00dfc3c57..0038878e8 100644 --- a/docs/code_overview/other/inlinemedia.rst +++ b/docs/code_overview/other/inlinemedia.rst @@ -1,5 +1,6 @@ -InlineMedia -=========== +############# + InlineMedia +############# .. autoclass:: asyncpraw.models.InlineMedia :inherited-members: diff --git a/docs/code_overview/other/inlinevideo.rst b/docs/code_overview/other/inlinevideo.rst index eeffcd5f7..70e598269 100644 --- a/docs/code_overview/other/inlinevideo.rst +++ b/docs/code_overview/other/inlinevideo.rst @@ -1,5 +1,6 @@ -InlineVideo -=========== +############# + InlineVideo +############# .. autoclass:: asyncpraw.models.InlineVideo :inherited-members: diff --git a/docs/code_overview/other/listinggenerator.rst b/docs/code_overview/other/listinggenerator.rst index 462aa81d6..0016ddbcd 100644 --- a/docs/code_overview/other/listinggenerator.rst +++ b/docs/code_overview/other/listinggenerator.rst @@ -1,5 +1,6 @@ -ListingGenerator -================ +################## + ListingGenerator +################## .. autoclass:: asyncpraw.models.ListingGenerator :inherited-members: diff --git a/docs/code_overview/other/livecontributorrelationship.rst b/docs/code_overview/other/livecontributorrelationship.rst index cdfef1c67..8909d6138 100644 --- a/docs/code_overview/other/livecontributorrelationship.rst +++ b/docs/code_overview/other/livecontributorrelationship.rst @@ -1,5 +1,6 @@ -LiveContributorRelationship -=========================== +############################# + LiveContributorRelationship +############################# .. autoclass:: asyncpraw.models.reddit.live.LiveContributorRelationship :inherited-members: diff --git a/docs/code_overview/other/livethreadcontribution.rst b/docs/code_overview/other/livethreadcontribution.rst index 6084b962e..09f5111ee 100644 --- a/docs/code_overview/other/livethreadcontribution.rst +++ b/docs/code_overview/other/livethreadcontribution.rst @@ -1,5 +1,6 @@ -LiveThreadContribution -====================== +######################## + LiveThreadContribution +######################## .. autoclass:: asyncpraw.models.reddit.live.LiveThreadContribution :inherited-members: diff --git a/docs/code_overview/other/livethreadstream.rst b/docs/code_overview/other/livethreadstream.rst index 7d8a4a1aa..03b363a7d 100644 --- a/docs/code_overview/other/livethreadstream.rst +++ b/docs/code_overview/other/livethreadstream.rst @@ -1,5 +1,6 @@ -LiveThreadStream -================ +################## + LiveThreadStream +################## .. autoclass:: asyncpraw.models.reddit.live.LiveThreadStream :inherited-members: diff --git a/docs/code_overview/other/liveupdatecontribution.rst b/docs/code_overview/other/liveupdatecontribution.rst index 95785a90a..8f82d4024 100644 --- a/docs/code_overview/other/liveupdatecontribution.rst +++ b/docs/code_overview/other/liveupdatecontribution.rst @@ -1,5 +1,6 @@ -LiveUpdateContribution -====================== +######################## + LiveUpdateContribution +######################## .. autoclass:: asyncpraw.models.reddit.live.LiveUpdateContribution :inherited-members: diff --git a/docs/code_overview/other/menu.rst b/docs/code_overview/other/menu.rst index 87ece25cc..ab1b31a14 100644 --- a/docs/code_overview/other/menu.rst +++ b/docs/code_overview/other/menu.rst @@ -1,5 +1,6 @@ -Menu -==== +###### + Menu +###### .. autoclass:: asyncpraw.models.Menu :inherited-members: diff --git a/docs/code_overview/other/menulink.rst b/docs/code_overview/other/menulink.rst index 0af258481..37c14bafe 100644 --- a/docs/code_overview/other/menulink.rst +++ b/docs/code_overview/other/menulink.rst @@ -1,5 +1,6 @@ -MenuLink -======== +########## + MenuLink +########## .. autoclass:: asyncpraw.models.MenuLink :inherited-members: diff --git a/docs/code_overview/other/mod_action.rst b/docs/code_overview/other/mod_action.rst index db51aa153..391c3caa1 100644 --- a/docs/code_overview/other/mod_action.rst +++ b/docs/code_overview/other/mod_action.rst @@ -1,5 +1,6 @@ -ModAction -========= +########### + ModAction +########### .. autoclass:: asyncpraw.models.ModAction :inherited-members: diff --git a/docs/code_overview/other/mod_note.rst b/docs/code_overview/other/mod_note.rst index f3de4bdb2..696511f7b 100644 --- a/docs/code_overview/other/mod_note.rst +++ b/docs/code_overview/other/mod_note.rst @@ -1,5 +1,6 @@ -ModNote -======= +######### + ModNote +######### .. autoclass:: asyncpraw.models.ModNote :inherited-members: diff --git a/docs/code_overview/other/mod_note_mixin.rst b/docs/code_overview/other/mod_note_mixin.rst index ad4fe2e4a..6f50f3fdc 100644 --- a/docs/code_overview/other/mod_note_mixin.rst +++ b/docs/code_overview/other/mod_note_mixin.rst @@ -1,5 +1,6 @@ -ModNoteMixin -============ +############## + ModNoteMixin +############## .. autoclass:: asyncpraw.models.reddit.mixins.ModNoteMixin :members: diff --git a/docs/code_overview/other/moderatedlist.rst b/docs/code_overview/other/moderatedlist.rst index 5cb230581..24ac79d05 100644 --- a/docs/code_overview/other/moderatedlist.rst +++ b/docs/code_overview/other/moderatedlist.rst @@ -1,5 +1,6 @@ -ModeratedList -============= +############### + ModeratedList +############### .. autoclass:: asyncpraw.models.ModeratedList :inherited-members: diff --git a/docs/code_overview/other/moderatorrelationship.rst b/docs/code_overview/other/moderatorrelationship.rst index 78d3c945e..bab2f05dd 100644 --- a/docs/code_overview/other/moderatorrelationship.rst +++ b/docs/code_overview/other/moderatorrelationship.rst @@ -1,5 +1,6 @@ -ModeratorRelationship -===================== +####################### + ModeratorRelationship +####################### .. autoclass:: asyncpraw.models.reddit.subreddit.ModeratorRelationship :inherited-members: diff --git a/docs/code_overview/other/moderatorswidget.rst b/docs/code_overview/other/moderatorswidget.rst index 01c86402e..56dedb636 100644 --- a/docs/code_overview/other/moderatorswidget.rst +++ b/docs/code_overview/other/moderatorswidget.rst @@ -1,5 +1,6 @@ -ModeratorsWidget -================ +################## + ModeratorsWidget +################## .. autoclass:: asyncpraw.models.ModeratorsWidget :inherited-members: diff --git a/docs/code_overview/other/modmail.rst b/docs/code_overview/other/modmail.rst index 4e55b0f93..4d6321580 100644 --- a/docs/code_overview/other/modmail.rst +++ b/docs/code_overview/other/modmail.rst @@ -1,5 +1,6 @@ -Modmail -======= +######### + Modmail +######### .. autoclass:: asyncpraw.models.reddit.subreddit.Modmail :inherited-members: diff --git a/docs/code_overview/other/modmailmessage.rst b/docs/code_overview/other/modmailmessage.rst index 232b6e32f..f216b09a7 100644 --- a/docs/code_overview/other/modmailmessage.rst +++ b/docs/code_overview/other/modmailmessage.rst @@ -1,5 +1,6 @@ -ModmailMessage -============== +################ + ModmailMessage +################ .. autoclass:: asyncpraw.models.ModmailMessage :inherited-members: diff --git a/docs/code_overview/other/partialredditor.rst b/docs/code_overview/other/partialredditor.rst index 482724d86..81988e1b5 100644 --- a/docs/code_overview/other/partialredditor.rst +++ b/docs/code_overview/other/partialredditor.rst @@ -1,5 +1,6 @@ -PartialRedditor -=============== +################# + PartialRedditor +################# .. autoclass:: asyncpraw.models.redditors.PartialRedditor :inherited-members: diff --git a/docs/code_overview/other/polldata.rst b/docs/code_overview/other/polldata.rst index b39105e71..0fa431937 100644 --- a/docs/code_overview/other/polldata.rst +++ b/docs/code_overview/other/polldata.rst @@ -1,5 +1,6 @@ -PollData -======== +########## + PollData +########## .. autoclass:: asyncpraw.models.reddit.poll.PollData :inherited-members: diff --git a/docs/code_overview/other/polloption.rst b/docs/code_overview/other/polloption.rst index 39df306dc..430509215 100644 --- a/docs/code_overview/other/polloption.rst +++ b/docs/code_overview/other/polloption.rst @@ -1,5 +1,6 @@ -PollOption -========== +############ + PollOption +############ .. autoclass:: asyncpraw.models.reddit.poll.PollOption :inherited-members: diff --git a/docs/code_overview/other/postflairwidget.rst b/docs/code_overview/other/postflairwidget.rst index 865971040..ecf8827d4 100644 --- a/docs/code_overview/other/postflairwidget.rst +++ b/docs/code_overview/other/postflairwidget.rst @@ -1,5 +1,6 @@ -PostFlairWidget -=============== +################# + PostFlairWidget +################# .. autoclass:: asyncpraw.models.PostFlairWidget :inherited-members: diff --git a/docs/code_overview/other/preferences.rst b/docs/code_overview/other/preferences.rst index 2334d1c0e..785a8b6c3 100644 --- a/docs/code_overview/other/preferences.rst +++ b/docs/code_overview/other/preferences.rst @@ -1,5 +1,6 @@ -Preferences -=========== +############# + Preferences +############# .. autoclass:: asyncpraw.models.Preferences :inherited-members: diff --git a/docs/code_overview/other/reddit_mod_notes.rst b/docs/code_overview/other/reddit_mod_notes.rst index 5bc7c00ce..2c02b53cf 100644 --- a/docs/code_overview/other/reddit_mod_notes.rst +++ b/docs/code_overview/other/reddit_mod_notes.rst @@ -1,5 +1,6 @@ -RedditModNotes -============== +################ + RedditModNotes +################ .. autoclass:: asyncpraw.models.RedditModNotes :inherited-members: diff --git a/docs/code_overview/other/redditbase.rst b/docs/code_overview/other/redditbase.rst index 6db019ec9..99e91447c 100644 --- a/docs/code_overview/other/redditbase.rst +++ b/docs/code_overview/other/redditbase.rst @@ -1,5 +1,6 @@ -RedditBase -========== +############ + RedditBase +############ .. autoclass:: asyncpraw.models.reddit.base.RedditBase :inherited-members: diff --git a/docs/code_overview/other/redditor_mod_notes.rst b/docs/code_overview/other/redditor_mod_notes.rst index 2fdfc44c6..d50355c94 100644 --- a/docs/code_overview/other/redditor_mod_notes.rst +++ b/docs/code_overview/other/redditor_mod_notes.rst @@ -1,5 +1,6 @@ -RedditorModNotes -================ +################## + RedditorModNotes +################## .. autoclass:: asyncpraw.models.RedditorModNotes :inherited-members: diff --git a/docs/code_overview/other/redditorlist.rst b/docs/code_overview/other/redditorlist.rst index 05967b6df..080467170 100644 --- a/docs/code_overview/other/redditorlist.rst +++ b/docs/code_overview/other/redditorlist.rst @@ -1,5 +1,6 @@ -RedditorList -============ +############## + RedditorList +############## .. autoclass:: asyncpraw.models.RedditorList :inherited-members: diff --git a/docs/code_overview/other/redditorstream.rst b/docs/code_overview/other/redditorstream.rst index 78c8b59c8..98acd3b69 100644 --- a/docs/code_overview/other/redditorstream.rst +++ b/docs/code_overview/other/redditorstream.rst @@ -1,5 +1,6 @@ -RedditorStream -============== +################ + RedditorStream +################ .. autoclass:: asyncpraw.models.reddit.redditor.RedditorStream :inherited-members: diff --git a/docs/code_overview/other/removalreason.rst b/docs/code_overview/other/removalreason.rst index dfeae7d81..07d3412c4 100644 --- a/docs/code_overview/other/removalreason.rst +++ b/docs/code_overview/other/removalreason.rst @@ -1,5 +1,6 @@ -RemovalReason -============= +############### + RemovalReason +############### .. autoclass:: asyncpraw.models.reddit.removal_reasons.RemovalReason :inherited-members: diff --git a/docs/code_overview/other/rule.rst b/docs/code_overview/other/rule.rst index c20181e30..f645e8755 100644 --- a/docs/code_overview/other/rule.rst +++ b/docs/code_overview/other/rule.rst @@ -1,5 +1,6 @@ -Rule -==== +###### + Rule +###### .. autoclass:: asyncpraw.models.Rule :inherited-members: diff --git a/docs/code_overview/other/rulemoderation.rst b/docs/code_overview/other/rulemoderation.rst index b140c0578..dcb414c0b 100644 --- a/docs/code_overview/other/rulemoderation.rst +++ b/docs/code_overview/other/rulemoderation.rst @@ -1,5 +1,6 @@ -RuleModeration -============== +################ + RuleModeration +################ .. autoclass:: asyncpraw.models.reddit.rules.RuleModeration :inherited-members: diff --git a/docs/code_overview/other/ruleswidget.rst b/docs/code_overview/other/ruleswidget.rst index a85d6e9a8..60a45d73b 100644 --- a/docs/code_overview/other/ruleswidget.rst +++ b/docs/code_overview/other/ruleswidget.rst @@ -1,5 +1,6 @@ -RulesWidget -=========== +############# + RulesWidget +############# .. autoclass:: asyncpraw.models.RulesWidget :inherited-members: diff --git a/docs/code_overview/other/styles.rst b/docs/code_overview/other/styles.rst index b7e39bf17..3ea273b0f 100644 --- a/docs/code_overview/other/styles.rst +++ b/docs/code_overview/other/styles.rst @@ -1,5 +1,6 @@ -Styles -====== +######## + Styles +######## .. autoclass:: asyncpraw.models.Styles :inherited-members: diff --git a/docs/code_overview/other/stylesheet.rst b/docs/code_overview/other/stylesheet.rst index 5f4b439a0..efcf9d9d3 100644 --- a/docs/code_overview/other/stylesheet.rst +++ b/docs/code_overview/other/stylesheet.rst @@ -1,5 +1,6 @@ -Stylesheet -========== +############ + Stylesheet +############ .. autoclass:: asyncpraw.models.Stylesheet :inherited-members: diff --git a/docs/code_overview/other/sublisting.rst b/docs/code_overview/other/sublisting.rst index 65324e1b8..34cb15539 100644 --- a/docs/code_overview/other/sublisting.rst +++ b/docs/code_overview/other/sublisting.rst @@ -1,5 +1,6 @@ -SubListing -========== +############ + SubListing +############ .. autoclass:: asyncpraw.models.listing.mixins.redditor.SubListing :inherited-members: diff --git a/docs/code_overview/other/submenu.rst b/docs/code_overview/other/submenu.rst index 53300a98d..dd0ca82cd 100644 --- a/docs/code_overview/other/submenu.rst +++ b/docs/code_overview/other/submenu.rst @@ -1,5 +1,6 @@ -Submenu -======= +######### + Submenu +######### .. autoclass:: asyncpraw.models.Submenu :inherited-members: diff --git a/docs/code_overview/other/submissionflair.rst b/docs/code_overview/other/submissionflair.rst index e93578c82..a153ad236 100644 --- a/docs/code_overview/other/submissionflair.rst +++ b/docs/code_overview/other/submissionflair.rst @@ -1,5 +1,6 @@ -SubmissionFlair -=============== +################# + SubmissionFlair +################# .. autoclass:: asyncpraw.models.reddit.submission.SubmissionFlair :inherited-members: diff --git a/docs/code_overview/other/submissionmoderation.rst b/docs/code_overview/other/submissionmoderation.rst index 2084a5c6f..fbc201a81 100644 --- a/docs/code_overview/other/submissionmoderation.rst +++ b/docs/code_overview/other/submissionmoderation.rst @@ -1,5 +1,6 @@ -SubmissionModeration -==================== +###################### + SubmissionModeration +###################### .. autoclass:: asyncpraw.models.reddit.submission.SubmissionModeration :inherited-members: diff --git a/docs/code_overview/other/subreddit_mod_notes.rst b/docs/code_overview/other/subreddit_mod_notes.rst index 5751c351c..dd54e693d 100644 --- a/docs/code_overview/other/subreddit_mod_notes.rst +++ b/docs/code_overview/other/subreddit_mod_notes.rst @@ -1,5 +1,6 @@ -SubredditModNotes -================= +################### + SubredditModNotes +################### .. autoclass:: asyncpraw.models.SubredditModNotes :inherited-members: diff --git a/docs/code_overview/other/subredditcollections.rst b/docs/code_overview/other/subredditcollections.rst index 330e5da05..d24c8f47e 100644 --- a/docs/code_overview/other/subredditcollections.rst +++ b/docs/code_overview/other/subredditcollections.rst @@ -1,5 +1,6 @@ -SubredditCollections -==================== +###################### + SubredditCollections +###################### .. autoclass:: asyncpraw.models.reddit.collections.SubredditCollections :inherited-members: diff --git a/docs/code_overview/other/subredditcollectionsmoderation.rst b/docs/code_overview/other/subredditcollectionsmoderation.rst index c07d8e27e..028d512df 100644 --- a/docs/code_overview/other/subredditcollectionsmoderation.rst +++ b/docs/code_overview/other/subredditcollectionsmoderation.rst @@ -1,5 +1,6 @@ -SubredditCollectionsModeration -============================== +################################ + SubredditCollectionsModeration +################################ .. autoclass:: asyncpraw.models.reddit.collections.SubredditCollectionsModeration :inherited-members: diff --git a/docs/code_overview/other/subredditemoji.rst b/docs/code_overview/other/subredditemoji.rst index 42423f9de..321b9cb5c 100644 --- a/docs/code_overview/other/subredditemoji.rst +++ b/docs/code_overview/other/subredditemoji.rst @@ -1,5 +1,6 @@ -SubredditEmoji -============== +################ + SubredditEmoji +################ .. autoclass:: asyncpraw.models.reddit.emoji.SubredditEmoji :inherited-members: diff --git a/docs/code_overview/other/subredditfilters.rst b/docs/code_overview/other/subredditfilters.rst index 3d226ae2b..f3ca5e87f 100644 --- a/docs/code_overview/other/subredditfilters.rst +++ b/docs/code_overview/other/subredditfilters.rst @@ -1,5 +1,6 @@ -SubredditFilters -================ +################## + SubredditFilters +################## .. autoclass:: asyncpraw.models.reddit.subreddit.SubredditFilters :inherited-members: diff --git a/docs/code_overview/other/subredditflair.rst b/docs/code_overview/other/subredditflair.rst index fb698917a..9f96eff11 100644 --- a/docs/code_overview/other/subredditflair.rst +++ b/docs/code_overview/other/subredditflair.rst @@ -1,5 +1,6 @@ -SubredditFlair -============== +################ + SubredditFlair +################ .. autoclass:: asyncpraw.models.reddit.subreddit.SubredditFlair :inherited-members: diff --git a/docs/code_overview/other/subredditflairtemplates.rst b/docs/code_overview/other/subredditflairtemplates.rst index be4fb65f7..a9f82834d 100644 --- a/docs/code_overview/other/subredditflairtemplates.rst +++ b/docs/code_overview/other/subredditflairtemplates.rst @@ -1,5 +1,6 @@ -SubredditFlairTemplates -======================= +######################### + SubredditFlairTemplates +######################### .. autoclass:: asyncpraw.models.reddit.subreddit.SubredditFlairTemplates :inherited-members: diff --git a/docs/code_overview/other/subredditlinkflairtemplates.rst b/docs/code_overview/other/subredditlinkflairtemplates.rst index 1c4b00d8e..4eeb93883 100644 --- a/docs/code_overview/other/subredditlinkflairtemplates.rst +++ b/docs/code_overview/other/subredditlinkflairtemplates.rst @@ -1,5 +1,6 @@ -SubredditLinkFlairTemplates -=========================== +############################# + SubredditLinkFlairTemplates +############################# .. autoclass:: asyncpraw.models.reddit.subreddit.SubredditLinkFlairTemplates :inherited-members: diff --git a/docs/code_overview/other/subredditlistingmixin.rst b/docs/code_overview/other/subredditlistingmixin.rst index b7acd1094..80d2ee17e 100644 --- a/docs/code_overview/other/subredditlistingmixin.rst +++ b/docs/code_overview/other/subredditlistingmixin.rst @@ -1,5 +1,6 @@ -SubredditListingMixin -===================== +####################### + SubredditListingMixin +####################### .. autoclass:: asyncpraw.models.listing.mixins.subreddit.SubredditListingMixin :inherited-members: diff --git a/docs/code_overview/other/subredditmessage.rst b/docs/code_overview/other/subredditmessage.rst index a3dfd1eb3..23e76d3d5 100644 --- a/docs/code_overview/other/subredditmessage.rst +++ b/docs/code_overview/other/subredditmessage.rst @@ -1,5 +1,6 @@ -SubredditMessage -================ +################## + SubredditMessage +################## .. autoclass:: asyncpraw.models.SubredditMessage :inherited-members: diff --git a/docs/code_overview/other/subredditmoderation.rst b/docs/code_overview/other/subredditmoderation.rst index 52137d6a9..1b4ff1141 100644 --- a/docs/code_overview/other/subredditmoderation.rst +++ b/docs/code_overview/other/subredditmoderation.rst @@ -1,5 +1,6 @@ -SubredditModeration -=================== +##################### + SubredditModeration +##################### .. autoclass:: asyncpraw.models.reddit.subreddit.SubredditModeration :inherited-members: diff --git a/docs/code_overview/other/subredditmoderationstream.rst b/docs/code_overview/other/subredditmoderationstream.rst index 2f232ef13..32e9afac6 100644 --- a/docs/code_overview/other/subredditmoderationstream.rst +++ b/docs/code_overview/other/subredditmoderationstream.rst @@ -1,5 +1,6 @@ -SubredditModerationStream -========================= +########################### + SubredditModerationStream +########################### .. autoclass:: asyncpraw.models.reddit.subreddit.SubredditModerationStream :inherited-members: diff --git a/docs/code_overview/other/subredditquarantine.rst b/docs/code_overview/other/subredditquarantine.rst index 6efa7d4f4..2744740b9 100644 --- a/docs/code_overview/other/subredditquarantine.rst +++ b/docs/code_overview/other/subredditquarantine.rst @@ -1,5 +1,6 @@ -SubredditQuarantine -=================== +##################### + SubredditQuarantine +##################### .. autoclass:: asyncpraw.models.reddit.subreddit.SubredditQuarantine :inherited-members: diff --git a/docs/code_overview/other/subredditredditorflairtemplates.rst b/docs/code_overview/other/subredditredditorflairtemplates.rst index 5557131e4..60a8c524f 100644 --- a/docs/code_overview/other/subredditredditorflairtemplates.rst +++ b/docs/code_overview/other/subredditredditorflairtemplates.rst @@ -1,5 +1,6 @@ -SubredditRedditorFlairTemplates -=============================== +################################# + SubredditRedditorFlairTemplates +################################# .. autoclass:: asyncpraw.models.reddit.subreddit.SubredditRedditorFlairTemplates :inherited-members: diff --git a/docs/code_overview/other/subredditrelationship.rst b/docs/code_overview/other/subredditrelationship.rst index ed68ee3f6..c22be541a 100644 --- a/docs/code_overview/other/subredditrelationship.rst +++ b/docs/code_overview/other/subredditrelationship.rst @@ -1,5 +1,6 @@ -SubredditRelationship -===================== +####################### + SubredditRelationship +####################### .. autoclass:: asyncpraw.models.reddit.subreddit.SubredditRelationship :inherited-members: diff --git a/docs/code_overview/other/subredditremovalreasons.rst b/docs/code_overview/other/subredditremovalreasons.rst index bb27e6287..220bb744a 100644 --- a/docs/code_overview/other/subredditremovalreasons.rst +++ b/docs/code_overview/other/subredditremovalreasons.rst @@ -1,5 +1,6 @@ -SubredditRemovalReasons -======================= +######################### + SubredditRemovalReasons +######################### .. autoclass:: asyncpraw.models.reddit.removal_reasons.SubredditRemovalReasons :inherited-members: diff --git a/docs/code_overview/other/subredditrules.rst b/docs/code_overview/other/subredditrules.rst index d8605c227..b5ed427bc 100644 --- a/docs/code_overview/other/subredditrules.rst +++ b/docs/code_overview/other/subredditrules.rst @@ -1,5 +1,6 @@ -SubredditRules -============== +################ + SubredditRules +################ .. autoclass:: asyncpraw.models.reddit.rules.SubredditRules :inherited-members: diff --git a/docs/code_overview/other/subredditrulesmoderation.rst b/docs/code_overview/other/subredditrulesmoderation.rst index 783858578..b82da3518 100644 --- a/docs/code_overview/other/subredditrulesmoderation.rst +++ b/docs/code_overview/other/subredditrulesmoderation.rst @@ -1,5 +1,6 @@ -SubredditRulesModeration -======================== +########################## + SubredditRulesModeration +########################## .. autoclass:: asyncpraw.models.reddit.rules.SubredditRulesModeration :inherited-members: diff --git a/docs/code_overview/other/subredditstream.rst b/docs/code_overview/other/subredditstream.rst index 158b8789c..c8e4d307b 100644 --- a/docs/code_overview/other/subredditstream.rst +++ b/docs/code_overview/other/subredditstream.rst @@ -1,5 +1,6 @@ -SubredditStream -=============== +################# + SubredditStream +################# .. autoclass:: asyncpraw.models.reddit.subreddit.SubredditStream :inherited-members: diff --git a/docs/code_overview/other/subredditstylesheet.rst b/docs/code_overview/other/subredditstylesheet.rst index b2ddc807a..fce9ab0a3 100644 --- a/docs/code_overview/other/subredditstylesheet.rst +++ b/docs/code_overview/other/subredditstylesheet.rst @@ -1,5 +1,6 @@ -SubredditStylesheet -=================== +##################### + SubredditStylesheet +##################### .. autoclass:: asyncpraw.models.reddit.subreddit.SubredditStylesheet :inherited-members: diff --git a/docs/code_overview/other/subredditwidgets.rst b/docs/code_overview/other/subredditwidgets.rst index 946e91eeb..28d164b73 100644 --- a/docs/code_overview/other/subredditwidgets.rst +++ b/docs/code_overview/other/subredditwidgets.rst @@ -1,5 +1,6 @@ -SubredditWidgets -================ +################## + SubredditWidgets +################## .. autoclass:: asyncpraw.models.SubredditWidgets :inherited-members: diff --git a/docs/code_overview/other/subredditwidgetsmoderation.rst b/docs/code_overview/other/subredditwidgetsmoderation.rst index 590741dfa..f6c26aa05 100644 --- a/docs/code_overview/other/subredditwidgetsmoderation.rst +++ b/docs/code_overview/other/subredditwidgetsmoderation.rst @@ -1,5 +1,6 @@ -SubredditWidgetsModeration -========================== +############################ + SubredditWidgetsModeration +############################ .. autoclass:: asyncpraw.models.SubredditWidgetsModeration :inherited-members: diff --git a/docs/code_overview/other/subredditwiki.rst b/docs/code_overview/other/subredditwiki.rst index 005bcb713..cdd4b2cd3 100644 --- a/docs/code_overview/other/subredditwiki.rst +++ b/docs/code_overview/other/subredditwiki.rst @@ -1,5 +1,6 @@ -SubredditWiki -============= +############### + SubredditWiki +############### .. autoclass:: asyncpraw.models.reddit.subreddit.SubredditWiki :inherited-members: diff --git a/docs/code_overview/other/textarea.rst b/docs/code_overview/other/textarea.rst index 7c17929a3..2602870ec 100644 --- a/docs/code_overview/other/textarea.rst +++ b/docs/code_overview/other/textarea.rst @@ -1,5 +1,6 @@ -TextArea -======== +########## + TextArea +########## .. autoclass:: asyncpraw.models.TextArea :inherited-members: diff --git a/docs/code_overview/other/thingmoderationmixin.rst b/docs/code_overview/other/thingmoderationmixin.rst index f42a02308..0c58c537d 100644 --- a/docs/code_overview/other/thingmoderationmixin.rst +++ b/docs/code_overview/other/thingmoderationmixin.rst @@ -1,5 +1,6 @@ -ThingModerationMixin -==================== +###################### + ThingModerationMixin +###################### .. autoclass:: asyncpraw.models.reddit.mixins.ThingModerationMixin :inherited-members: diff --git a/docs/code_overview/other/trophy.rst b/docs/code_overview/other/trophy.rst index 88cac177f..a1043bf87 100644 --- a/docs/code_overview/other/trophy.rst +++ b/docs/code_overview/other/trophy.rst @@ -1,5 +1,6 @@ -Trophy -====== +######## + Trophy +######## .. autoclass:: asyncpraw.models.Trophy :members: __str__ diff --git a/docs/code_overview/other/usersubreddit.rst b/docs/code_overview/other/usersubreddit.rst index 47d977a4f..8a538e8a7 100644 --- a/docs/code_overview/other/usersubreddit.rst +++ b/docs/code_overview/other/usersubreddit.rst @@ -1,5 +1,6 @@ -UserSubreddit -============= +############### + UserSubreddit +############### .. autoclass:: asyncpraw.models.UserSubreddit :inherited-members: diff --git a/docs/code_overview/other/usersubredditmoderation.rst b/docs/code_overview/other/usersubredditmoderation.rst index 0bad4ee51..2faaa30c5 100644 --- a/docs/code_overview/other/usersubredditmoderation.rst +++ b/docs/code_overview/other/usersubredditmoderation.rst @@ -1,5 +1,6 @@ -UserSubredditModeration -======================= +######################### + UserSubredditModeration +######################### .. autoclass:: asyncpraw.models.reddit.user_subreddit.UserSubredditModeration :inherited-members: diff --git a/docs/code_overview/other/util.rst b/docs/code_overview/other/util.rst index 31edebd95..a2e6b99f2 100644 --- a/docs/code_overview/other/util.rst +++ b/docs/code_overview/other/util.rst @@ -1,5 +1,6 @@ -Util -==== +###### + Util +###### .. autoclass:: asyncpraw.models.util.BoundedSet :inherited-members: diff --git a/docs/code_overview/other/widget.rst b/docs/code_overview/other/widget.rst index 3c5cb498c..5deef3d18 100644 --- a/docs/code_overview/other/widget.rst +++ b/docs/code_overview/other/widget.rst @@ -1,5 +1,6 @@ -Widget -====== +######## + Widget +######## .. autoclass:: asyncpraw.models.Widget :inherited-members: diff --git a/docs/code_overview/other/widgetmoderation.rst b/docs/code_overview/other/widgetmoderation.rst index de9874613..2dcbcce60 100644 --- a/docs/code_overview/other/widgetmoderation.rst +++ b/docs/code_overview/other/widgetmoderation.rst @@ -1,5 +1,6 @@ -WidgetModeration -================ +################## + WidgetModeration +################## .. autoclass:: asyncpraw.models.WidgetModeration :inherited-members: diff --git a/docs/code_overview/other/wikipagemoderation.rst b/docs/code_overview/other/wikipagemoderation.rst index 27fddf10e..7390c209f 100644 --- a/docs/code_overview/other/wikipagemoderation.rst +++ b/docs/code_overview/other/wikipagemoderation.rst @@ -1,5 +1,6 @@ -WikiPageModeration -================== +#################### + WikiPageModeration +#################### .. autoclass:: asyncpraw.models.reddit.wikipage.WikiPageModeration :inherited-members: diff --git a/docs/code_overview/reddit/drafts.rst b/docs/code_overview/reddit/drafts.rst index 57ad858a1..5a13e24cf 100644 --- a/docs/code_overview/reddit/drafts.rst +++ b/docs/code_overview/reddit/drafts.rst @@ -1,5 +1,6 @@ -reddit.drafts -============= +############### + reddit.drafts +############### .. autoclass:: asyncpraw.models.DraftHelper :inherited-members: diff --git a/docs/code_overview/reddit/front.rst b/docs/code_overview/reddit/front.rst index 9c8badef8..e01c167dd 100644 --- a/docs/code_overview/reddit/front.rst +++ b/docs/code_overview/reddit/front.rst @@ -1,5 +1,6 @@ -reddit.front -============ +############## + reddit.front +############## .. autoclass:: asyncpraw.models.Front :inherited-members: diff --git a/docs/code_overview/reddit/inbox.rst b/docs/code_overview/reddit/inbox.rst index f4533511d..f1b5001d8 100644 --- a/docs/code_overview/reddit/inbox.rst +++ b/docs/code_overview/reddit/inbox.rst @@ -1,5 +1,6 @@ -reddit.inbox -============ +############## + reddit.inbox +############## .. autoclass:: asyncpraw.models.Inbox :inherited-members: diff --git a/docs/code_overview/reddit/live.rst b/docs/code_overview/reddit/live.rst index 8f9fa36ec..0aa6b2ea1 100644 --- a/docs/code_overview/reddit/live.rst +++ b/docs/code_overview/reddit/live.rst @@ -1,5 +1,6 @@ -reddit.live -=========== +############# + reddit.live +############# .. autoclass:: asyncpraw.models.LiveHelper :inherited-members: diff --git a/docs/code_overview/reddit/multireddit.rst b/docs/code_overview/reddit/multireddit.rst index b94f6951b..e20a3d7be 100644 --- a/docs/code_overview/reddit/multireddit.rst +++ b/docs/code_overview/reddit/multireddit.rst @@ -1,5 +1,6 @@ -reddit.multireddit -================== +#################### + reddit.multireddit +#################### .. autoclass:: asyncpraw.models.MultiredditHelper :inherited-members: diff --git a/docs/code_overview/reddit/redditors.rst b/docs/code_overview/reddit/redditors.rst index 68600ae04..1347f7751 100644 --- a/docs/code_overview/reddit/redditors.rst +++ b/docs/code_overview/reddit/redditors.rst @@ -1,5 +1,6 @@ -reddit.redditors -================ +################## + reddit.redditors +################## .. autoclass:: asyncpraw.models.Redditors :inherited-members: diff --git a/docs/code_overview/reddit/subreddit.rst b/docs/code_overview/reddit/subreddit.rst index 02b79cd85..d7163f885 100644 --- a/docs/code_overview/reddit/subreddit.rst +++ b/docs/code_overview/reddit/subreddit.rst @@ -1,5 +1,6 @@ -reddit.subreddit -================ +################## + reddit.subreddit +################## .. autoclass:: asyncpraw.models.SubredditHelper :inherited-members: diff --git a/docs/code_overview/reddit/subreddits.rst b/docs/code_overview/reddit/subreddits.rst index 4f56a947b..ce625c74e 100644 --- a/docs/code_overview/reddit/subreddits.rst +++ b/docs/code_overview/reddit/subreddits.rst @@ -1,5 +1,6 @@ -reddit.subreddits -================= +################### + reddit.subreddits +################### .. autoclass:: asyncpraw.models.Subreddits :inherited-members: diff --git a/docs/code_overview/reddit/user.rst b/docs/code_overview/reddit/user.rst index 7a9f06b5d..89340a4af 100644 --- a/docs/code_overview/reddit/user.rst +++ b/docs/code_overview/reddit/user.rst @@ -1,5 +1,6 @@ -reddit.user -=========== +############# + reddit.user +############# .. autoclass:: asyncpraw.models.User :inherited-members: diff --git a/docs/code_overview/reddit_instance.rst b/docs/code_overview/reddit_instance.rst index a6bff15c5..ec94b94be 100644 --- a/docs/code_overview/reddit_instance.rst +++ b/docs/code_overview/reddit_instance.rst @@ -1,5 +1,6 @@ -The Reddit Instance -=================== +##################### + The Reddit Instance +##################### .. autoclass:: asyncpraw.Reddit :inherited-members: diff --git a/docs/genindex.rst b/docs/genindex.rst index 9e530fa2f..84fac4818 100644 --- a/docs/genindex.rst +++ b/docs/genindex.rst @@ -1,2 +1,3 @@ -Index -===== +####### + Index +####### diff --git a/docs/getting_started/authentication.rst b/docs/getting_started/authentication.rst index b187baf5d..62686971e 100644 --- a/docs/getting_started/authentication.rst +++ b/docs/getting_started/authentication.rst @@ -1,7 +1,8 @@ .. _oauth: -Authenticating via OAuth -======================== +########################## + Authenticating via OAuth +########################## Async PRAW supports all three types of applications that can be registered on Reddit. Those are: @@ -34,8 +35,9 @@ table defines which application types can use which flows: .. _password_flow: -Password Flow -------------- +*************** + Password Flow +*************** **Password Flow** is the simplest type of authentication flow to work with because no callback process is involved in obtaining an ``access_token``. @@ -89,7 +91,7 @@ The output should contain the same name as you entered for ``username``. .. _2fa: Two-Factor Authentication -~~~~~~~~~~~~~~~~~~~~~~~~~ +========================= A 2FA token can be used by joining it to the password with a colon: @@ -113,8 +115,9 @@ will be raised by API calls after one hour. .. _code_flow: -Code Flow ---------- +*********** + Code Flow +*********** A **code flow** application is useful for two primary purposes: @@ -139,7 +142,7 @@ involved in obtaining access or refresh tokens. .. _auth_url: Obtain the Authorization URL -~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +============================ The first step to completing the **code flow** is to obtain the authorization URL. You can do that as follows: @@ -182,8 +185,9 @@ one change: set the value of ``client_secret`` to ``None`` when initializing .. _implicit_flow: -Implicit Flow -------------- +*************** + Implicit Flow +*************** The **implicit flow** requires a similar instantiation of the :class:`.Reddit` class as done in :ref:`code_flow`, however, the token is returned directly as part of the @@ -198,8 +202,9 @@ instance. .. _read_only_application: -Read-Only Mode --------------- +**************** + Read-Only Mode +**************** All application types support a read-only mode. Read-only mode provides access to Reddit like a logged out user would see including the default subreddits in the @@ -221,14 +226,14 @@ Read-only mode can be toggled via: reddit.read_only = False Application-Only Flows -~~~~~~~~~~~~~~~~~~~~~~ +====================== The following flows are the **read-only mode** flows for Reddit applications .. _application_only_client_credentials_flow: Application-Only (Client Credentials) -+++++++++++++++++++++++++++++++++++++ +------------------------------------- This is the default flow for **read-only mode** in script and web applications. The idea behind this is that Reddit *can* trust these applications as coming from a given @@ -241,7 +246,7 @@ applications are not considered confidential clients. .. _application_only_installed_client_flow: Application-Only (Installed Client) -+++++++++++++++++++++++++++++++++++ +----------------------------------- This is the default flow for **read-only mode** in installed applications. The idea behind this is that Reddit *might not be able* to trust these applications as coming @@ -260,8 +265,9 @@ such as in installed applications where the end user could retrieve the ``client .. _using_refresh_tokens: -Using a Saved Refresh Token ---------------------------- +***************************** + Using a Saved Refresh Token +***************************** A saved refresh token can be used to immediately obtain an authorized instance of :class:`.Reddit` like so: diff --git a/docs/getting_started/configuration.rst b/docs/getting_started/configuration.rst index ca8f5d293..bdf1f5c7b 100644 --- a/docs/getting_started/configuration.rst +++ b/docs/getting_started/configuration.rst @@ -1,7 +1,8 @@ .. _configuration: -Configuring Async PRAW -====================== +######################## + Configuring Async PRAW +######################## .. note:: @@ -26,8 +27,9 @@ Environment variables have the highest priority, followed by keyword arguments t .. _proxy-support: -Using an HTTP or HTTPS proxy with Async PRAW --------------------------------------------- +********************************************** + Using an HTTP or HTTPS proxy with Async PRAW +********************************************** Async PRAW internally relies upon the aiohttp_ package to handle HTTP requests. Aiohttp supports use of ``HTTP_PROXY`` and ``HTTPS_PROXY`` environment variables in order to @@ -64,8 +66,9 @@ configuring Async PRAW like so: username="fakebot3", ) -Configuring a custom aiohttp ClientSession ------------------------------------------- +******************************************** + Configuring a custom aiohttp ClientSession +******************************************** Async PRAW uses aiohttp_ to handle networking. If your use-case requires custom configuration, it is possible to configure a ClientSession_ and then use it with Async diff --git a/docs/getting_started/configuration/environment_variables.rst b/docs/getting_started/configuration/environment_variables.rst index 96bd8f849..732c64d71 100644 --- a/docs/getting_started/configuration/environment_variables.rst +++ b/docs/getting_started/configuration/environment_variables.rst @@ -1,7 +1,8 @@ .. _environment_variables: -Async PRAW Environment Variables -================================ +################################## + Async PRAW Environment Variables +################################## The second-highest priority configuration options can be passed to a program via environment variables prefixed with ``praw_``. diff --git a/docs/getting_started/configuration/options.rst b/docs/getting_started/configuration/options.rst index 9c61f56ef..f026abfc7 100644 --- a/docs/getting_started/configuration/options.rst +++ b/docs/getting_started/configuration/options.rst @@ -1,7 +1,8 @@ .. _configuration_options: -Configuration Options -===================== +####################### + Configuration Options +####################### Async PRAW's configuration options are broken down into the following categories: @@ -16,8 +17,9 @@ All of these options can be provided in any of the ways mentioned in .. _basic_options: -Basic Configuration Options ---------------------------- +***************************** + Basic Configuration Options +***************************** :check_for_updates: When ``true``, check for new versions of Async PRAW. When a newer version of Async PRAW is available a message is reported via standard error @@ -29,8 +31,9 @@ Basic Configuration Options .. _oauth_options: -OAuth Configuration Options ---------------------------- +***************************** + OAuth Configuration Options +***************************** :client_id: (Required) The OAuth client ID associated with your registered Reddit application. See :ref:`oauth` for instructions on registering a Reddit application. @@ -49,8 +52,9 @@ OAuth Configuration Options .. _site_options: -Reddit Site Configuration Options ---------------------------------- +*********************************** + Reddit Site Configuration Options +*********************************** Async PRAW can be configured to work with instances of Reddit which are not hosted at `reddit.com `_. The following options may need to be updated in @@ -76,8 +80,9 @@ order to successfully access a third-party Reddit site: .. _misc_options: -Miscellaneous Configuration Options ------------------------------------ +************************************* + Miscellaneous Configuration Options +************************************* These are options that do not belong in another category, but still play a part in Async PRAW. @@ -100,8 +105,9 @@ PRAW. .. _custom_options: -Custom Configuration Options ----------------------------- +****************************** + Custom Configuration Options +****************************** Your application can utilize PRAW's configuration system in order to provide its own custom settings. Async PRAW utilizes the the same configuration system as PRAW. diff --git a/docs/getting_started/configuration/prawini.rst b/docs/getting_started/configuration/prawini.rst index 9cd4cd317..487f08d93 100644 --- a/docs/getting_started/configuration/prawini.rst +++ b/docs/getting_started/configuration/prawini.rst @@ -1,7 +1,8 @@ .. _praw.ini: -praw.ini Files -============== +################ + praw.ini Files +################ Async PRAW comes with a ``praw.ini`` file in the package directory, and looks for user defined ``praw.ini`` files in a few other locations: @@ -51,8 +52,9 @@ defined ``praw.ini`` files in a few other locations: print(os.environ.get("", "")) -Format of praw.ini ------------------- +******************** + Format of praw.ini +******************** ``praw.ini`` uses the `INI file format `_, which can contain multiple groups of settings separated into sections. PRAW and Async PRAW @@ -69,8 +71,9 @@ Reddit. The contents of the package's ``praw.ini`` file are: values in your own ``praw.ini`` file. You can even override settings of the ``DEFAULT`` site in user defined ``praw.ini`` files. -Defining Additional Sites -------------------------- +*************************** + Defining Additional Sites +*************************** In addition to the ``DEFAULT`` site, additional sites can be configured in user defined ``praw.ini`` files. All sites inherit settings from the ``DEFAULT`` site and can @@ -102,8 +105,9 @@ you have three separate bots, you might create a site for each: password=invalidlfo00esyy username=fakebot3 -Choosing a Site ---------------- +***************** + Choosing a Site +***************** Site selection is done via the ``site_name`` parameter to :class:`.Reddit`. For example, to use the settings defined for ``bot2`` as shown above, initialize :class:`.Reddit` @@ -121,8 +125,9 @@ like so: A site can also be selected via a ``praw_site`` environment variable. This approach has precedence over the ``site_name`` parameter described above. -Using Interpolation -------------------- +********************* + Using Interpolation +********************* By default Async PRAW doesn't apply any interpolation on the config file but this can be changed with the ``config_interpolation`` parameter which can be set to "basic" or diff --git a/docs/getting_started/configuration/reddit_initialization.rst b/docs/getting_started/configuration/reddit_initialization.rst index f1abc62f8..ca25af31e 100644 --- a/docs/getting_started/configuration/reddit_initialization.rst +++ b/docs/getting_started/configuration/reddit_initialization.rst @@ -1,7 +1,8 @@ .. _reddit_initialization: -Keyword Arguments to :class:`.Reddit` -===================================== +####################################### + Keyword Arguments to :class:`.Reddit` +####################################### Most of Async PRAW's documentation will demonstrate configuring Async PRAW through the use of keyword arguments when initializing instances of :class:`.Reddit`. All of the diff --git a/docs/getting_started/faq.rst b/docs/getting_started/faq.rst index ce320a5a6..a4d74a102 100644 --- a/docs/getting_started/faq.rst +++ b/docs/getting_started/faq.rst @@ -1,5 +1,6 @@ -Frequently Asked Questions -========================== +############################ + Frequently Asked Questions +############################ .. _faq1: diff --git a/docs/getting_started/installation.rst b/docs/getting_started/installation.rst index 91d6871a6..f94f379db 100644 --- a/docs/getting_started/installation.rst +++ b/docs/getting_started/installation.rst @@ -1,5 +1,6 @@ -Installing Async PRAW -===================== +####################### + Installing Async PRAW +####################### Async PRAW supports Python 3.9+. The recommended way to install Async PRAW is via ``pip``. @@ -20,8 +21,9 @@ Async PRAW supports Python 3.9+. The recommended way to install Async PRAW is vi For instructions on installing Python and pip see "The Hitchhiker's Guide to Python" `Installation Guides `_. -Updating Async PRAW -------------------- +********************* + Updating Async PRAW +********************* Async PRAW can be updated by running: @@ -29,8 +31,9 @@ Async PRAW can be updated by running: pip install --upgrade asyncpraw -Installing Older Versions -------------------------- +*************************** + Installing Older Versions +*************************** Older versions of Async PRAW can be installed by specifying the version number as part of the installation command: @@ -39,8 +42,9 @@ of the installation command: pip install asyncpraw==7.1.0 -Installing the Latest Development Version ------------------------------------------ +******************************************* + Installing the Latest Development Version +******************************************* Is there a feature that was recently merged into Async PRAW that you cannot wait to take advantage of? If so, you can install Async PRAW directly from GitHub like so: diff --git a/docs/getting_started/logging.rst b/docs/getting_started/logging.rst index 25673c5c9..ca98e61f5 100644 --- a/docs/getting_started/logging.rst +++ b/docs/getting_started/logging.rst @@ -1,5 +1,6 @@ -Logging in Async PRAW -===================== +####################### + Logging in Async PRAW +####################### It is occasionally useful to observe the HTTP requests that Async PRAW is issuing. To do so you have to configure and enable logging. diff --git a/docs/getting_started/multiple_instances.rst b/docs/getting_started/multiple_instances.rst index 98d8e9c35..e8d40414c 100644 --- a/docs/getting_started/multiple_instances.rst +++ b/docs/getting_started/multiple_instances.rst @@ -1,5 +1,6 @@ -Running Multiple Instances of Async PRAW -======================================== +########################################## + Running Multiple Instances of Async PRAW +########################################## Async PRAW performs rate limiting dynamically based on the HTTP response headers from Reddit. As a result you can safely run a handful of Async PRAW instances without any @@ -14,8 +15,9 @@ additional configuration. If you are authorized on other users' behalf, each authorization should have its own rate limit, even when running from a single IP address. -Multiple Programs ------------------ +******************* + Multiple Programs +******************* The recommended way to run multiple instances of Async PRAW is to simply write separate independent Python programs. With this approach one program can monitor a comment stream diff --git a/docs/getting_started/quick_start.rst b/docs/getting_started/quick_start.rst index fa928e9c6..7162ca028 100644 --- a/docs/getting_started/quick_start.rst +++ b/docs/getting_started/quick_start.rst @@ -1,12 +1,14 @@ -Quick Start -=========== +############# + Quick Start +############# In this section, we go over everything you need to know to start building scripts or bots using Async PRAW, the Asynchronous Python Reddit API Wrapper. It's fun and easy. Let's get started. -Prerequisites -------------- +*************** + Prerequisites +*************** :Python Knowledge: You need to know at least a little Python and some understanding of asynchronous usage in Python to use Async PRAW. Async PRAW supports `Python 3.9+`_. @@ -40,11 +42,12 @@ Prerequisites With these prerequisites satisfied, you are ready to learn how to do some of the most common tasks with Reddit's API. -Common Tasks ------------- +************** + Common Tasks +************** Obtain a :class:`.Reddit` Instance -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +================================== .. warning:: @@ -61,7 +64,7 @@ There are two distinct states a :class:`.Reddit` instance can be in: :ref:`read- .. _read-only: Read-only :class:`.Reddit` Instances -++++++++++++++++++++++++++++++++++++ +------------------------------------ To create a read-only :class:`.Reddit` instance, you need three pieces of information: @@ -117,7 +120,7 @@ authorized :class:`.Reddit` instance. .. _authorized: Authorized :class:`.Reddit` Instances -+++++++++++++++++++++++++++++++++++++ +------------------------------------- In order to create an authorized :class:`.Reddit` instance, two additional pieces of information are required for **script** applications (see :ref:`oauth` for other @@ -158,7 +161,7 @@ to read-only mode whenever you want: some options available to you. Please see: :ref:`configuration`. Close Connections in :class:`.Reddit` -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +===================================== The asynchronous context requires closing your session when you finish using Reddit: @@ -177,7 +180,7 @@ Or, you can use an asynchronous context manager: # connection is closed Obtain a :class:`.Subreddit` -~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +============================ To obtain a :class:`.Subreddit` instance, pass the subreddit's name when calling ``subreddit`` on your :class:`.Reddit` instance. For example: @@ -195,7 +198,7 @@ To obtain a :class:`.Subreddit` instance, pass the subreddit's name when calling # Output: a subreddit for discussion of ... Obtain :class:`.Submission` Instances from a :class:`.Subreddit` -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +================================================================ Now that you have a :class:`.Subreddit` instance, you can iterate through some of its submissions, each bound to an instance of :class:`.Submission`. There are several sorts @@ -245,7 +248,7 @@ You can create :class:`.Submission` instances in other ways too: submission = await reddit.submission(url="https://www.reddit.com/...") Obtain :class:`.Redditor` Instances -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +=================================== There are several ways to obtain a redditor (a :class:`.Redditor` instance). Two of the most common ones are: @@ -268,7 +271,7 @@ For example: # Output: u/bboe's karma Obtain :class:`.Comment` Instances -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +================================== Submissions have a ``comments`` attribute that is a :class:`.CommentForest` instance. That instance is iterable and represents the top-level comments of the submission by the @@ -306,7 +309,7 @@ updated. See :ref:`extracting_comments` for an example. .. _determine-available-attributes-of-an-object: Determine Available Attributes of an Object -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +=========================================== If you have a Async PRAW object, e.g., :class:`.Comment`, :class:`.Message`, :class:`.Redditor`, or :class:`.Submission`, and you want to see what attributes are diff --git a/docs/getting_started/ratelimits.rst b/docs/getting_started/ratelimits.rst index ffb1ab0e8..be6d0c9f8 100644 --- a/docs/getting_started/ratelimits.rst +++ b/docs/getting_started/ratelimits.rst @@ -1,7 +1,8 @@ .. _ratelimits: -Ratelimits -========== +############ + Ratelimits +############ Even though Async PRAW respects the |ratelimit_header|_ and waits the appropriate time between requests, there are other unknown ratelimits that Reddit has that might require diff --git a/docs/index.rst b/docs/index.rst index 83d5b2a8a..00a2a0296 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -1,5 +1,6 @@ -Async PRAW: The Asynchronous Python Reddit API Wrapper -====================================================== +######################################################## + Async PRAW: The Asynchronous Python Reddit API Wrapper +######################################################## Async PRAW's documentation is organized into the following sections: @@ -8,8 +9,9 @@ Async PRAW's documentation is organized into the following sections: - :ref:`tutorial` - :ref:`package_info` -Documentation Conventions -------------------------- +*************************** + Documentation Conventions +*************************** Unless otherwise mentioned, all examples in this document assume the use of a **script** application. See :ref:`oauth` for information on using **installed** applications and diff --git a/docs/package_info/asyncpraw_migration.rst b/docs/package_info/asyncpraw_migration.rst index bb4307b25..e190129ea 100644 --- a/docs/package_info/asyncpraw_migration.rst +++ b/docs/package_info/asyncpraw_migration.rst @@ -1,11 +1,13 @@ -Migrating to Async PRAW -======================= +######################### + Migrating to Async PRAW +######################### With the conversion to async, there are few critical changes that had to be made. This page outlines a few those changes. -Network Requests ----------------- +****************** + Network Requests +****************** .. _network_requests: @@ -16,8 +18,9 @@ well. You can tell if a method needs awaited by looking at the docs. For example :meth:`.me` has the word ``await`` before ``me(use_cache: bool = True)`` in the header for that method since that method makes a network request. -Lazy Loading ------------- +************** + Lazy Loading +************** .. _lazy_loading: @@ -104,8 +107,9 @@ you need to call the ``.load()`` method first: # network request is not made as object is already fully fetched print(submission.score) -Getting items by Indices ------------------------- +************************** + Getting items by Indices +************************** .. _objects_by_indices: diff --git a/docs/package_info/contributing.rst b/docs/package_info/contributing.rst index 9429afe23..39977a3da 100644 --- a/docs/package_info/contributing.rst +++ b/docs/package_info/contributing.rst @@ -1,18 +1,20 @@ -Contributing to Async PRAW -========================== +############################ + Contributing to Async PRAW +############################ Async PRAW gladly welcomes new contributions. As with most larger projects, we have an established consistent way of doing things. A consistent style increases readability, decreases bug-potential and makes it faster to understand how everything works together. -Setting Up Your Development Environment ---------------------------------------- +***************************************** + Setting Up Your Development Environment +***************************************** This section will cover the recommended steps to get you started with contributing to Async PRAW. Create a Virtual Environment -~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +============================ It is strongly recommended to use a virtual environment to isolate your development environment. This is a good idea because it will make managing the needed dependencies @@ -43,7 +45,7 @@ following: .. _install_dev_deps: Install Development Dependencies -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +================================ Next, you will need to install the dependencies development dependencies. This is done by running the following: @@ -67,11 +69,12 @@ by running the following: easier testing and debugging. The ``[dev]`` extra will install all development dependencies. This includes the dependencies for both linting and testing. -Code Style ----------- +************ + Code Style +************ Linting -~~~~~~~ +======= Async PRAW follows :PEP:`8` and :PEP:`257` and some :ref:`asyncpraw_specific_guidelines`. pre-commit_ is used to manage a suite of @@ -105,7 +108,7 @@ To run all the needed checks and to ensure the docs build correctly, run the fol .. _asyncpraw_specific_guidelines: Async PRAW Specific Style Guidelines -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +==================================== The following are Async PRAW-specific guidelines in addition to the PEPs specified in Linting_: @@ -172,15 +175,16 @@ Linting_: url=None, ): ... -Testing -------- +********* + Testing +********* Contributions to Async PRAW requires 100% test coverage. If you know how to add a feature, but aren't sure how to write the necessary tests, please open a pull request anyway so we can work with you to write the necessary tests. Running the Test Suite -~~~~~~~~~~~~~~~~~~~~~~ +====================== `GitHub Actions`_ automatically runs all updates to known branches and pull requests. However, it's useful to be able to run the tests locally. The simplest way is via: @@ -193,7 +197,7 @@ Without any configuration or modification, all the tests should pass. If they do please file a bug report. Adding and Updating Integration Tests -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +===================================== Async PRAW's integration tests utilize vcrpy_ to record an interaction with Reddit. The recorded interaction is then replayed for subsequent test runs. @@ -257,8 +261,9 @@ Examples: @pytest.mark.add_placeholder(generated_data_b=generate_data_b()) async def test_example__with_generated_placeholders(self): ... -Documentation -------------- +*************** + Documentation +*************** - All publicly available functions, classes, and modules should have a docstring. - All documentation files and docstrings should be linted and formatted by @@ -268,7 +273,7 @@ Documentation name. Static Checker -~~~~~~~~~~~~~~ +============== Async PRAW's test suite comes with a checker tool that can warn you of using incorrect documentation styles (using ``.. code::`` instead of ``.. code-block::``, using ``/r/`` @@ -278,25 +283,27 @@ instead of ``r/``, etc.). This is run automatically by the pre-commit hooks and .. autoclass:: tools.static_word_checks.StaticChecker :inherited-members: -Files to Update ---------------- +***************** + Files to Update +***************** AUTHORS.rst -~~~~~~~~~~~ +=========== For your first contribution, please add yourself to the end of the respective list in the ``AUTHORS.rst`` file. CHANGES.rst -~~~~~~~~~~~ +=========== For feature additions, bug fixes, or code removal please add an appropriate entry to ``CHANGES.rst``. If the ``Unreleased`` section does not exist at the top of ``CHANGES.rst`` please add it. See `commit 280525c16ba28cdd69cdbb272a0e2764b1c7e6a0`_ for an example. -See Also --------- +********** + See Also +********** Please also read the `Contributing Guidelines`_ diff --git a/docs/package_info/glossary.rst b/docs/package_info/glossary.rst index 7e57b645c..c2e2cd5b1 100644 --- a/docs/package_info/glossary.rst +++ b/docs/package_info/glossary.rst @@ -1,5 +1,6 @@ -Glossary -======== +########## + Glossary +########## .. _access_token: @@ -14,27 +15,21 @@ Glossary Here is a list of the six different types of objects returned from Reddit: - .. _fullname_t1: - ``t1`` These objects represent :class:`.Comment`\ s. - .. _fullname_t2: - ``t2`` These objects represent :class:`.Redditor`\ s. - .. _fullname_t3: - ``t3`` These objects represent :class:`.Submission`\ s. - .. _fullname_t4: - ``t4`` These objects represent :class:`.Message`\ s. - .. _fullname_t5: - ``t5`` These objects represent :class:`.Subreddit`\ s. - .. _fullname_t6: - ``t6`` These objects represent :class:`.Trophy`\ s. diff --git a/docs/package_info/references.rst b/docs/package_info/references.rst index 54fd47d1c..19518e60f 100644 --- a/docs/package_info/references.rst +++ b/docs/package_info/references.rst @@ -1,5 +1,6 @@ -References -========== +############ + References +############ - `Async PRAW Source Code `_. - `PRAW Source Code `_. diff --git a/docs/tutorials/comments.rst b/docs/tutorials/comments.rst index 431a50d86..7b3f30aab 100644 --- a/docs/tutorials/comments.rst +++ b/docs/tutorials/comments.rst @@ -1,5 +1,6 @@ -Comment Extraction and Parsing -============================== +################################ + Comment Extraction and Parsing +################################ A common use for Reddit's API is to extract comments from submissions and use them to perform keyword or phrase analysis. @@ -29,8 +30,9 @@ to one or more specific subreddits, please see :meth:`.SubredditStream.comments` .. _extracting_comments: -Extracting comments with Async PRAW ------------------------------------ +************************************* + Extracting comments with Async PRAW +************************************* Assume we want to process the comments for this submission: https://www.reddit.com/r/funny/comments/3g1jfi/buttons/ @@ -78,8 +80,9 @@ could ignore :class:`.MoreComments` in our code, like so: continue print(top_level_comment.body) -The ``replace_more`` method ---------------------------- +***************************** + The ``replace_more`` method +***************************** In the previous snippet, we used :py:func:`isinstance` to check whether the item in the comment list was a :class:`.MoreComments` so that we could ignore it. But there is a diff --git a/docs/tutorials/refresh_token.rst b/docs/tutorials/refresh_token.rst index 97973f26a..79a7cd565 100644 --- a/docs/tutorials/refresh_token.rst +++ b/docs/tutorials/refresh_token.rst @@ -1,10 +1,12 @@ .. _refresh_token: -Working with Refresh Tokens -=========================== +############################# + Working with Refresh Tokens +############################# -Reddit OAuth2 Scopes --------------------- +********************** + Reddit OAuth2 Scopes +********************** Before working with refresh tokens you should decide which scopes your application requires. If you want to use all scopes, you can use the special scope ``*``. @@ -68,8 +70,9 @@ wikiedit Edit wiki pages on my behalf wikiread Read wiki pages through my account ================ ====================================================================== -Obtaining Refresh Tokens ------------------------- +************************** + Obtaining Refresh Tokens +************************** The following program can be used to obtain a refresh token with the desired scopes: diff --git a/docs/tutorials/reply_bot.rst b/docs/tutorials/reply_bot.rst index d54fb8e2a..52fec81bb 100644 --- a/docs/tutorials/reply_bot.rst +++ b/docs/tutorials/reply_bot.rst @@ -1,5 +1,6 @@ -Submission Stream Reply Bot -=========================== +############################# + Submission Stream Reply Bot +############################# Most redditors have seen bots in action on the site. Reddit bots can perform a number of tasks including providing useful information, e.g., an Imperial to Metric units bot; @@ -24,8 +25,9 @@ There are three key components we will address to perform this task: 2. Analyze the title of each submission to see if it contains a simple question. 3. Reply with an appropriate lmgtfy_ link. -LMGTFY Bot ----------- +************ + LMGTFY Bot +************ The goal of the LMGTFY Bot is to point users in the right direction when they ask a simple question that is unlikely to be upvoted or answered by other users. @@ -42,7 +44,7 @@ appropriate lmgtfy_ link. For the example questions those links are: 2. https://lmgtfy.com/?q=How+many+feet+are+in+a+yard%3F Step 1: Getting Started -~~~~~~~~~~~~~~~~~~~~~~~ +======================= Access to Reddit's API requires a set of OAuth2 credentials. Those credentials are obtained by registering an application with Reddit. To register an application and @@ -74,7 +76,7 @@ that registered the application are required. `_. Step 2: Monitoring New Submissions to /r/AskReddit -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +================================================== PRAW provides a convenient way to obtain new submissions to a given subreddit. To indefinitely iterate over new submissions to a subreddit add: @@ -94,7 +96,7 @@ from the special ``"all"`` subreddit by joining them with minuses (``-``), for e ``"all-excluded_subreddit1-excluded_subreddit2"``. Step 3: Analyzing the Submission Titles -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +======================================= Now that we have a stream of new submissions to r/AskReddit, it is time to see if their titles contain a simple question. We naïvely define a simple question as: @@ -135,7 +137,7 @@ submission. For instance, what would happen without the ``break`` if a submissio title was "Who is or what are buffalo?"? Step 4: Automatically Replying to the Submission -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +================================================ The LMGTFY Bot is nearly complete. We iterate through submissions and find ones that appear to be simple questions. All that is remaining is to reply to those submissions @@ -176,7 +178,7 @@ you will likely run into rate limit issues. These rate limits will persist until account acquires sufficient karma. Step 5: Cleaning Up The Code -~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +============================ While we have a working bot, we have added little segments here and there. If we were to continue to do so in this fashion our code would be quite unreadable. Let's clean it up @@ -223,7 +225,7 @@ executed: :lines: 42- The Complete LMGTFY Bot -~~~~~~~~~~~~~~~~~~~~~~~ +======================= The following is the complete LMGTFY Bot: