diff --git a/.github/CONTRIBUTING.rst b/.github/CONTRIBUTING.rst index 621270d1..7aa854de 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 769478a1..d30dbc17 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.7 - 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 ab5dd8a1..0e38117d 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 dc5909ff..cb3d776b 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 70d01169..08a9c83b 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 787620f5..223dfaf3 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 d488fca3..3601cf94 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 b8166ab5..9db68b48 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 ca83b833..8b4e1e06 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 c5caaa4a..ba98608d 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 6fc53ec6..69810a10 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 da4061c8..d71aa3e4 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 75cb00b7..3907496a 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 5956d341..764a3854 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 f2619d08..e516651a 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 c4c78ce9..b4044dfc 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 9a6ad7a8..f773ca16 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 a8f76cbd..43a234f6 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 ce663ff5..52a9b776 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 8fa53516..280b2b67 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 d2dbcd3a..504d2d25 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 8c2fde70..0746b74b 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 19f64c57..146f68bc 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 229021be..c346804e 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 3861ef0a..9a59ddf7 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 cee2de2f..938915fa 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 094bb0eb..c2337508 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 99749253..0f4f6b29 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 c1ad6e68..dde2d08e 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 00cafc9d..7076298a 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 8f01ace1..6a650a85 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 add30c15..c87b22ea 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 a7c2e9b4..c3998b49 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 b55ed298..9a610189 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 63eed84b..39e3a215 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 48bb0829..bee34a0f 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 c6a67feb..97ce0f6e 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 fac513b5..d7f6be00 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 1bc810e0..3e31039c 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 b501d424..43c34fe7 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 abc03427..e68f3b53 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 ef24a8db..f1ad0dc1 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 f3660f05..9d13d61f 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 f30b887b..0bd3b278 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 8a131042..6a833ff7 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 ba6b1c6c..014b858f 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 ee200d1b..c3dcebf5 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 838940c5..32b391d1 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 85f9d3ca..7cc3db8f 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 00dfc3c5..0038878e 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 eeffcd5f..70e59826 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 462aa81d..0016ddbc 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 cdfef1c6..8909d613 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 6084b962..09f5111e 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 7d8a4a1a..03b363a7 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 95785a90..8f82d402 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 87ece25c..ab1b31a1 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 0af25848..37c14baf 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 db51aa15..391c3caa 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 f3de4bdb..696511f7 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 ad4fe2e4..6f50f3fd 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 5cb23058..24ac79d0 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 78d3c945..bab2f05d 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 01c86402..56dedb63 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 4e55b0f9..4d632158 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 232b6e32..f216b09a 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 482724d8..81988e1b 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 b39105e7..0fa43193 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 39df306d..43050921 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 86597104..ecf8827d 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 2334d1c0..785a8b6c 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 5bc7c00c..2c02b53c 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 6db019ec..99e91447 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 2fdfc44c..d50355c9 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 05967b6d..08046717 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 78c8b59c..98acd3b6 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 dfeae7d8..07d3412c 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 c20181e3..f645e875 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 b140c057..dcb414c0 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 a85d6e9a..60a45d73 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 b7e39bf1..3ea273b0 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 5f4b439a..efcf9d9d 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 65324e1b..34cb1553 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 53300a98..dd0ca82c 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 e93578c8..a153ad23 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 2084a5c6..fbc201a8 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 5751c351..dd54e693 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 330e5da0..d24c8f47 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 c07d8e27..028d512d 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 42423f9d..321b9cb5 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 3d226ae2..f3ca5e87 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 fb698917..9f96eff1 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 be4fb65f..a9f82834 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 1c4b00d8..4eeb9388 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 b7acd109..80d2ee17 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 a3dfd1eb..23e76d3d 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 52137d6a..1b4ff114 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 2f232ef1..32e9afac 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 6efa7d4f..2744740b 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 5557131e..60a8c524 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 ed68ee3f..c22be541 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 bb27e628..220bb744 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 d8605c22..b5ed427b 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 78385857..b82da351 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 158b8789..c8e4d307 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 b2ddc807..fce9ab0a 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 946e91ee..28d164b7 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 590741df..f6c26aa0 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 005bcb71..cdd4b2cd 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 7c17929a..2602870e 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 f42a0230..0c58c537 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 88cac177..a1043bf8 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 47d977a4..8a538e8a 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 0bad4ee5..2faaa30c 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 31edebd9..a2e6b99f 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 3c5cb498..5deef3d1 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 de987461..2dcbcce6 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 27fddf10..7390c209 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 57ad858a..5a13e24c 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 9c8badef..e01c167d 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 f4533511..f1b5001d 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 8f9fa36e..0aa6b2ea 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 b94f6951..e20a3d7b 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 68600ae0..1347f775 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 02b79cd8..d7163f88 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 4f56a947..ce625c74 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 7a9f06b5..89340a4a 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 a6bff15c..ec94b94b 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 9e530fa2..84fac481 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 b187baf5..62686971 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 ca8f5d29..bdf1f5c7 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 96bd8f84..732c64d7 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 9c61f56e..f026abfc 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 9cd4cd31..487f08d9 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 f1abc62f..ca25af31 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 ce320a5a..a4d74a10 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 91d6871a..f94f379d 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 25673c5c..ca98e61f 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 98d8e9c3..e8d40414 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 fa928e9c..7162ca02 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 ffb1ab0e..be6d0c9f 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 83d5b2a8..00a2a029 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 bb4307b2..e190129e 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 9429afe2..39977a3d 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 7e57b645..c2e2cd5b 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 54fd47d1..19518e60 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 431a50d8..7b3f30aa 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 97973f26..79a7cd56 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 d54fb8e2..52fec81b 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: