Async PRAW, an abbreviation for "Asynchronous Python Reddit API Wrapper", is a python package that allows for simple access to Reddit's API.
Added
.delete_mobile_banner
to delete mobile banners..upload_mobile_banner
to upload mobile banners.Fixed
.ModNote
when a user has more than a hundred notes.Added
.pin
to manage pinned submissions on the authenticated user's profile..update_display_layout
to update the display layout of posts in a
:class:.Collection
..SubredditCollectionsModeration.create
keyword argument display_layout
for
specifying a display layout when creating a :class:.Collection
.~.Message.parent
to get the parent of a :class:.Message
..ModNote
to represent a moderator note..ModNote.delete
to delete a single moderator note..RedditModNotes
to interact with moderator notes from a :class:.Reddit
instance. This provides the ability to create and fetch notes for one or more
redditors from one or more subreddits..RedditorModNotes
to interact with moderator notes from a :class:.Redditor
instance..RedditorModNotes.subreddits
to obtain moderator notes from multiple
subreddits for a single redditor..SubredditModNotes
to interact with moderator notes from a
:class:.Subreddit
instance..SubredditModNotes.redditors
to obtain moderator notes for multiple redditors
from a single subreddit.~.BaseModNotes.create
to create a moderator note..Redditor.notes
to interact with :class:.RedditorModNotes
..SubredditModeration.notes
to interact with :class:.SubredditModNotes
.~.ModNoteMixin.create_note
create a moderator note from a :class:.Comment
or
:class:.Submission
.~.ModNoteMixin.author_notes
to view the moderator notes for the author of a
:class:.Comment
or :class:.Submission
.Changed
.conversations
now returns a :class:.ListingGenerator
allowing you to page
through more than 100 conversations.Deprecated
after
argument for :meth:.conversations
will now have to be included in
params
keyword argument.Added
comment_sort
attribute is updated after the
submission has already been fetched and a warn_comment_sort
config setting to turn
off the warning..user_selectable
to get available subreddit link flairs..Draft
to represent a submission draft..Draft.delete
to delete drafts..Draft.submit
to submit drafts..Draft.update
to modify drafts..DraftHelper
to fetch or create drafts on new Reddit..DraftList
to represent a list of :class:.Draft
objects.Deprecated
.CommentForest
as an asynchronous iterator..CommentForest.list
no longer needs to be awaited..Submission.comments
no longer needs to be awaited and is now a property.Fixed
.Subreddit
and its
helper classes.libsqlite3-dev
is
needed to utilize aiosqlite
package which depends on the sqlite3
builtin.Deprecated
lazy
has been replace by fetch
to consolidate the keyword
argument used to explicitly perform a fetch when initializing an object.Added
~.WikiPage.discussions
to obtain site-wide link submissions that link to the
WikiPage..revert
to revert a WikiPage to a specified revision..Inbox.mark_all_read
to mark all messages as read with one API call.~.InboxableMixin.unblock_subreddit
to unblock a subreddit..update_crowd_control_level
to update the crowd control level of a post..moderator_subreddits
, which returns information about the subreddits that the
authenticated user moderates, has been restored.refresh_token
has been added back. See
https://www.reddit.com/r/redditdev/comments/olk5e6/followup_oauth2_api_changes_regarding_refresh/
for more info.Deprecated
.Reddit
keyword argument token_manager
.Changed
.Reddit
will now be shallow copied when a deepcopy is preformed on it as
asyncprawcore.Session
(more specifically, :py:class:asyncio.AbstractEventLoop
)
does not support being deepcopied.Fixed
.RedditBase
objects would be sent in a request as
"None"
.Added
.UserSubreddit
for the subreddit
attribute of :class:.Redditor
..Reddit.username_available
checks if a username is available..trusted
to retrieve a :class:.RedditorList
of trusted users..trust
to add a user to the trusted list..distrust
to remove a user from the trusted list..SQLiteTokenManager
(may not work on Windows)Changed
.Redditor.moderated
will now objectify all data returned from the API.wiki_edit
endpoint has been changed from r/{subreddit}/api/wiki/edit/
to
r/{subreddit}/api/wiki/edit
..Redditor.block
no longer needs to retrieve a user's fullname.Deprecated
subreddit
attribute of :class:.Redditor
is no longer a dict.Fixed
.WikiPage.edit
and :meth:.SubredditWiki.create
would fail if
passed content
and reason
parameters that produced a request with a body
greater than 500 KiB, even when the parameters did not exceed their respective
permitted maximum lengths..Reddit.request
could not handle instances of BadRequest
\s
when the JSON data contained only the keys "reason" and "message"..Reddit.request
could not handle instances of BadRequest
\s
when the response did not contain valid JSON data..FullnameMixin.fullname
sometimes returned the wrong fullname.Added
.Reddit
keyword argument token_manager
..FileTokenManager
and its parent abstract class :class:.BaseTokenManager
.Deprecated
refresh_token
is deprecated and its use will result in a
:py:class:DeprecationWarning
. This deprecation applies in all ways of setting
configuration values, i.e., via praw.ini
, as a keyword argument when initializing
an instance of :class:.Reddit
, and via the PRAW_REFRESH_TOKEN
environment
variable. To be prepared for Async PRAW 8, use the new :class:.Reddit
keyword
argument token_manager
. See :ref:refresh_token
in Async PRAW's documentation for
an example..me
will no longer return None
when called in :attr:.read_only
mode
starting in Async PRAW 8. A :py:class:DeprecationWarning
will be issued. To switch
forward to the Async PRAW 8 behavior set praw8_raise_exception_on_me=True
in your
asyncpraw.Reddit(...)
call.Added
~.Subreddits.premium
to reflect the naming change in Reddit's API..submit_gallery
..Reddit.submission
..invited
to get invited moderators of a subreddit.~.Submission.award
and :meth:~.Comment.award
with the ability to
specify type of award, anonymity, and message when awarding a submission or comment.subreddits
parameter in
:meth:.Reddit.info
..Reddit.close
to close the requestor session..Reddit
as an asynchronous context manager that automatically
closes the requestor session on exit.Changed
~.BoundedSet
will now utilize a Last-Recently-Used (LRU) storing mechanism,
which will change the order in which elements are removed from the set..submit_image
and :meth:.submit_video
performance in slow
network environments by removing a race condition when establishing a
websocket connection.Deprecated
~.Subreddits.gold
is superseded by :meth:~.Subreddits.premium
.~.Submission.gild
is superseded by :meth:~.Submission.award
.~.Comment.gild
is superseded by :meth:~.Comment.award
.PRAWException
is superseded by :class:.AsyncPRAWException
.Fixed
.parent()
on a comment it clears its replies..RedditBase
object will fail.