All Versions
41
Latest Version
Avg Release Cycle
76 days
Latest Release
499 days ago
Changelog History
Page 2
Changelog History
Page 2
-
v7.0.0 Changes
April 24, 2020โ Added
- ๐
config_interpolation
parameter for :class:.Reddit
supporting basic and extended modes. - โ Add :meth:
.Redditors.partial_redditors
that returns lightweight redditor objects that contain only a few fields. This is useful for resolving Redditor IDs to their usernames in bulk. - :meth:
.User.friends
has a new parameteruser
that takes either an instance of :class:.Redditor
or a string containing a redditor name and returns an instance of :class:.Redditor
if the authenticated user is friends with the user, otherwise throws an exception. - :meth:
.SubmissionModeration.flair
has the parameterflair_template_id
for applying flairs with template IDs. - โก๏ธ :meth:
~.Emoji.update
supports modifying an emoji's permissions. - ๐ :meth:
~.SubredditEmoji.add
now supports optionally passing booleans to set an emoji's permissions upon upload. - โก๏ธ Methods :meth:
.SubredditLinkFlairTemplates.update
and :meth:.SubredditRedditorFlairTemplates.update
contain a new parameter,fetch
, that toggles the automatic fetching of existing data from Reddit. It is set to True by default. - โก๏ธ Values in methods :meth:
.SubredditLinkFlairTemplates.update
and :meth:.SubredditRedditorFlairTemplates.update
that are left as the defaults will no longer be over-written if thefetch
parameter is set toTrue
, but will fill in existing values for the flair template. - The parameter
text
for methods :meth:.SubredditLinkFlairTemplates.update
and :meth:.SubredditRedditorFlairTemplates.update
is no longer required. - There is a new method, :meth:
.Subreddit.post_requirements
, to fetch a subreddit's post requirements. - Method :meth:
.SubmissionModeration.sticky
will now ignore the Confict exception generated by trying to sticky the same post multiple times. - A new method :meth:
.CommentModeration.show
will uncollapse a comment that was collapsed because of Crowd Control - Methods :meth:
.Subreddit.submit_image
and :meth:.Subreddit.submit_video
will throw :class:.TooLargeMediaException
if the submitted media is rejected by Reddit due to the size of the media. - Class :class:
.Reddit
has an attribute,validate_on_submit
, that can be set after class initialization that causes methods :meth:.Subreddit.submit
, :meth:.Subreddit.submit_image
, :meth:.Subreddit.submit_video
, and :meth:.Submission.edit
to check that the submission matches a subreddit's post validation rules. This attribute will be functionally useless once Reddit implements their change. This attribute will be deprecated on the next release after Reddit's change, and will be removed on the next major release after Reddit's change.
โ .. warning:: In May-June 2020, Reddit will force all submissions to run through a subreddit's validation rules.
- Introduced a data class, :class:
.RedditErrorItem
, to represent an individual error item returned from Reddit. - Class :class:
.RedditAPIException
now serves as a container for the :class:.RedditErrorItem
\ s. You can access the items by doingRedditAPIException.items
, which returns a list. - :class:
.APIException
is an alias to :class:.RedditAPIException
. - Parameter
discussion_type
to methods :meth:.Subreddit.submit
, :meth:.Subreddit.submit_image
, and :meth:.Subreddit.submit_video
to support submitting as a live discussion (set toCHAT
). - Instances of :class:
.Trophy
can be compared for equality with each other. - ๐ง :class:
.Reddit
has a new configurable parameter,timeout
. This defaults to 16 seconds. It controls how long PRAW will wait for a response before throwing an exception. - PRAW now handles ratelimit errors returned as instances of
:class:
.RedditAPIException
. - :class:
.Reddit
has one new parameter,ratelimit_seconds
. The parameter configures the maximum amount of seconds to catch ratelimits for. It defaults to 5 seconds when not specified.
๐ Changed
prawcore.BadRequest
should no longer be raised. Instead a more useful :class:.RedditAPIException
instance will be raised.- 0๏ธโฃ Set the default comment sort to
confidence
instead ofbest
because it turns outbest
isn't actually the correct value for the parameter.
๐ Deprecated
- ๐ :class:
.APIException
is deprecated and slated for removal in PRAW 8.0.
๐ Fixed
- โก๏ธ :meth:
.SubredditFlair.update
will not error out when the flair text contains quote marks.
โ Removed
- Converting :class:
.APIException
to string will no longer escape unicode characters. - Module
praw.models.modaction
no longer exists. Please use the modulepraw.models.mod_action
, or directly importModAction
frompraw.models
. - โก๏ธ Methods :meth:
.SubredditLinkFlairTemplates.update
and :meth:.SubredditRedditorFlairTemplates.update
will no longer create flairs that are using an invalid template id, but instead throw a :class:.InvalidFlairTemplateID
. - ๐ Method
reddit.user.moderator_subreddits
has been removed. Please use :meth:.Redditor.moderated
instead.
- ๐
-
v6.5.1 Changes
January 07, 2010๐ Fixed
- โ Removed usages of
NoReturn
that caused PRAW to fail due toImportError
in Python<3.5.4
and<3.6.2
.
- โ Removed usages of
-
v6.5.0 Changes
January 05, 2020โ Added
- :meth:
.set_original_content
supports marking a submission as original content. - :meth:
.unset_original_content
supports unmarking a submission as original content. - :meth:
.Redditor.moderated
to get a list of a Redditor's moderated subreddits. - Parameter
without_websockets
to :meth:~.Subreddit.submit_image
and :meth:~.Subreddit.submit_video
to submit without using WebSockets. - ๐ :meth:
.Reddit.redditor
supportsfullname
param to fetch a Redditor by the fullname instead of name. :class:.Redditor
constructor now also hasfullname
param. - โ Add :class:
.RemovalReason
and :class:.SubredditRemovalReasons
to work with removal reasons - Attribute
removal_reasons
to :class:.SubredditModeration
to interact with new removal reason classes - Parameters
mod_note
andreason_id
to :meth:.ThingModerationMixin.remove
to optionally apply a removal reason on removal - โ Add :class:
.SubredditModerationStream
to enable moderation streams - Attribute
stream
to :class:.SubredditModeration
to interact with new moderation streams - โ Add :meth:
.SubredditModerationStream.edited
to allow streaming of :meth:.SubredditModeration.edited
- โ Add :meth:
.SubredditModerationStream.log
to allow streaming of :meth:.SubredditModeration.log
- โ Add :meth:
.SubredditModerationStream.modmail_conversations
to allow streaming of :meth:.Modmail.conversations
- โ Add :meth:
.SubredditModerationStream.modqueue
to allow streaming of :meth:.SubredditModeration.modqueue
- โ Add :meth:
.SubredditModerationStream.reports
to allow streaming of :meth:.SubredditModeration.reports
- โ Add :meth:
.SubredditModerationStream.spam
to allow streaming of :meth:.SubredditModeration.spam
- โ Add :meth:
.SubredditModerationStream.unmoderated
to allow streaming of :meth:.SubredditModeration.unmoderated
- โ Add :meth:
.SubredditModerationStream.unread
to allow streaming of :meth:.SubredditModeration.unread
- Parameter
exclude_before
to :func:.stream_generator
to allow :meth:.SubredditModerationStream.modmail_conversations
to work - Parameters
allowable_content
andmax_emojis
to :meth:~.SubredditRedditorFlairTemplates.add
, :meth:~.SubredditLinkFlairTemplates.add
, and :meth:~.SubredditFlairTemplates.update
, as well as its child classes.
๐ Deprecated
- Method
reddit.user.moderator_subreddits
as :meth:.Redditor.moderated
provides more functionality. - ๐ The file for ModActions (praw/models/modaction.py) has been moved to praw/models/mod_action.py and the previous has been Deprecated.
Expected Changes
- The behavior of func:
APIException
will no longer unicode-escape strings in the next minor release
- :meth:
-
v6.4.0 Changes
September 21, 2019โ Added
- ๐ :meth:
~.Submission.crosspost
support parameterflair_id
to flair the submission immediately upon crossposting. - ๐ :meth:
~.Submission.crosspost
support parameterflair_text
to set a custom text to the flair immediately upon crossposting. - ๐ :meth:
~.Submission.crosspost
support parameternsfw
to mark the submission NSFW immediately upon crossposting. - ๐ :meth:
~.Submission.crosspost
support parameterspoiler
to mark the submission as a spoiler immediately upon crossposting.
๐ Fixed
- :meth:
.add_community_list
has parameterdescription
to support unannounced upstream Reddit API changes. - โก๏ธ :meth:
~.WidgetModeration.update
supports passing a list of :class:.Subreddit
objects.
๐ Changed
Removed
css_class
parameter cannot be used withbackground_color
,text_color
, ormod_only
constraint on methods:SubredditFlairTemplates.update()
SubredditRedditorFlairTemplates.add()
SubredditLinkFlairTemplates.add()
โ Removed
- โฌ๏ธ Drop official support for Python 2.7.
Multireddit.rename()
no longer works due to a change in the Reddit API.
- ๐ :meth:
-
v6.3.1 Changes
June 10, 2019โ Removed
- ๐
SubredditListingMixin.gilded()
, as this was supposed to be removed in 6.0.0 after deprecation in 5.2.0.
- ๐
-
v6.3.0 Changes
June 09, 2019โ Added
- Collections (:class:
.Collection
and helper classes). - :meth:
~.Subreddit.submit
, :meth:~.Subreddit.submit_image
, and :meth:~.Subreddit.submit_video
can be used to submit a post directly to a collection. praw.util.camel_to_snake
andpraw.util.snake_case_keys
.- ๐ Comments can now be locked and unlocked via
comment.mod.lock()
andcomment.mod.unlock()
. See: (:meth:.ThingModerationMixin.lock
and :meth:.ThingModerationMixin.unlock
). align
parameter to :meth:.SubredditStylesheet.upload_banner_additional_image
๐ Changed
- :meth:
.Reddit.info
now accepts any non-str iterable for fullnames (not justlist
). - :meth:
.Reddit.info
now returns a generator instead of a list when using theurl
parameter.
- Collections (:class:
-
v6.2.0 Changes
May 05, 2019โ Added
- ๐
:meth:
.SubredditStylesheet.upload_banner
- :meth:
.SubredditStylesheet.upload_banner_additional_image
- :meth:
.SubredditStylesheet.upload_banner_hover_image
- ๐
:meth:
.SubredditStylesheet.delete_banner
- :meth:
.SubredditStylesheet.delete_banner_additional_image
- :meth:
.SubredditStylesheet.delete_banner_hover_image
- :meth:
~.Subreddit.submit
, :meth:~.Subreddit.submit_image
, and :meth:~.Subreddit.submit_video
support parameternsfw
to mark the submission NSFW immediately upon posting. - :meth:
~.Subreddit.submit
, :meth:~.Subreddit.submit_image
, and :meth:~.Subreddit.submit_video
support parameterspoiler
to mark the submission as a spoiler immediately upon posting. - :meth:
~.Subreddit.submit_image
and :meth:~.Subreddit.submit_video
support parametertimeout
. Default timeout has been raised from 2 seconds to 10 seconds. - Added parameter
function_kwargs
to :func:.stream_generator
to pass additional kwargs tofunction
.
๐ Fixed
- :meth:
.Subreddit.random
returnsNone
instead of raising :class:.ClientException
when the subreddit does not support generating random submissions.
Other
- โฌ๏ธ Bumped minimum prawcore version to 1.0.1.
- ๐
:meth:
-
v6.1.1 Changes
January 29, 2019โ Added
- :meth:
~.SubredditFlair.set
supports parameterflair_template_id
for giving a user redesign flair.
- :meth:
-
v6.1.0 Changes
January 19, 2019โ Added
- โ Add method :meth:
.Redditor.trophies
to get a list of the Redditor's trophies. - โ Add class :class:
.PostFlairWidget
. - Add attributes
reply_limit
andreply_sort
to class :class:.Comment
- โ Add class :class:
.SubredditWidgetsModeration
(accessible through :attr:.SubredditWidgets.mod
) and method :meth:.add_text_area
. - โ Add class :class:
.WidgetModeration
(accessible through the.mod
attribute on any widget) with methods :meth:~.WidgetModeration.update
and :meth:~.WidgetModeration.delete
. - โ Add method :meth:
.Reddit.put
for HTTP PUT requests. - Add methods :meth:
.add_calendar
and :meth:.add_community_list
. - Add methods :meth:
.add_image_widget
and :meth:.upload_image
. - Add method :meth:
.add_custom_widget
. - Add method :meth:
.add_post_flair_widget
. - โ Add method :meth:
.add_menu
. - Add method :meth:
.add_button_widget
. - โ Add method :meth:
~.SubredditWidgetsModeration.reorder
to reorder a subreddit's widgets. - โ Add :class:
.Redditors
(reddit.redditors
) to provide Redditor listings. - โ Add :meth:
~.Subreddit.submit_image
for submitting native images to Reddit. - โ Add :meth:
~.Subreddit.submit_video
for submitting native videos and videogifs to Reddit.
๐ Changed
- :meth:
.User.me
returnsNone
in :attr:~praw.Reddit.read_only
mode. - :meth:
.SubredditLinkFlairTemplates.__iter__
uses the v2 flair API endpoint. This change will result in additional fields being returned. All fields that were previously returned will still be returned. - :meth:
.SubredditRedditorFlairTemplates.__iter__
uses the v2 flair API endpoint. The method will still return the exact same items. - Methods :meth:
~.SubredditRedditorFlairTemplates.add
, :meth:~.SubredditLinkFlairTemplates.add
, :meth:~.SubredditRedditorFlairTemplates.update
, and :meth:~.SubredditLinkFlairTemplates.update
can add and update redesign-style flairs with the v2 flair API endpoint. They can still update pre-redesign-style flairs with the older endpoint.
๐ Fixed
- ๐ Widgets of unknown types are parsed as
Widget
\ s rather than raising an exception.
- โ Add method :meth:
-
v6.0.0 Changes
July 24, 2018โ Added
- โ Add method :meth:
.WikiPage.revision
to get a specific wiki page revision. - Added parameter
skip_existing
to :func:.stream_generator
to skip existing items when starting a stream. - โ Add method :meth:
.Front.best
to get the front page "best" listing. - โ Add :attr:
.Subreddit.widgets
, :class:.SubredditWidgets
, and widget subclasses like :class:.TextArea
to support fetching Reddit widgets. - โ Add method :meth:
.Submission.mark_visited
to mark a submission as visited on the Reddit backend.
๐ Fixed
- ๐ Fix
RecursionError
on :class:.SubredditEmoji
'srepr
andstr
. - ๐ :meth:
.SubredditFilters.add
and :meth:.SubredditFilters.remove
also accept a :class:.Subreddit
for thesubreddit
parameter. - โ Remove restriction which prevents installed (non-confidential) apps from using OAuth2 authorization code grant flow.
โ Removed
Subreddit.submissions
as the API endpoint backing the method is no more. See https://www.reddit.com/r/changelog/comments/7tus5f/update_to_search_api/.
- โ Add method :meth: