In May-June 2020, Reddit will force all submissions to run through a subreddit’s validation rules.

Removed css_class parameter cannot be used with background_color , text_color , or mod_only constraint on methods:

The release’s sole purpose is to announce the deprecation of the is_link parameter as described below:

PRAW 4 introduces significant breaking changes. The numerous changes are not listed here, only the feature removals. Please read through Quick Start to help with updating your code to PRAW 4. If you require additional help please ask on /r/redditdev or via Slack.

Added

praw.models.Comment.block() , praw.models.Message.block() , and praw.models.SubredditMessage.block() to permit blocking unwanted user contact.

, , and to permit blocking unwanted user contact. praw.models.LiveHelper.create() to create new live threads.

to create new live threads. praw.models.Redditor.unblock() to undo a block.

to undo a block. praw.models.Subreddits.gold() to iterate through gold subreddits.

to iterate through gold subreddits. praw.models.Subreddits.search() to search for subreddits by name and description.

to search for subreddits by name and description. praw.models.Subreddits.stream() to obtain newly created subreddits in near-realtime.

to obtain newly created subreddits in near-realtime. praw.models.User.karma() to retrieve the current user’s subreddit karma.

to retrieve the current user’s subreddit karma. praw.models.reddit.submission.SubmissionModeration.lock and praw.models.reddit.submission.SubmissionModeration.unlock to change a Submission’s lock state.

and to change a Submission’s lock state. praw.models.reddit.subreddit.SubredditFlairTemplates.delete() to delete a single flair template.

to delete a single flair template. praw.models.reddit.subreddit.SubredditModeration.unread() to iterate over unread moderation messages.

to iterate over unread moderation messages. praw.models.reddit.subreddit.ModeratorRelationship.invite() to invite a moderator to a subreddit.

to invite a moderator to a subreddit. praw.models.reddit.subreddit.ModeratorRelationship.update() to update a moderator’s permissions.

to update a moderator’s permissions. praw.models.reddit.subreddit.ModeratorRelationship.update_invite() to update an invited moderator’s permissions.

to update an invited moderator’s permissions. praw.models.Front.random_rising() , praw.models.Subreddit.random_rising() and praw.models.Multireddit.random_rising() .

, and . WikiPage supports a revision argument.

supports a revision argument. revisions() to obtain a list of recent revisions to a subreddit.

to obtain a list of recent revisions to a subreddit. revisions() to obtain a list of revisions for a wiki page.

to obtain a list of revisions for a wiki page. Support installed-type OAuth apps.

Support read-only OAuth for all application types.

Support script-type OAuth apps.

Changed

Note Only prominent changes are listed here.

helpers.comments_stream is now praw.models.reddit.subreddit.SubredditStream.comments()

is now helpers.submissions_between is now Subreddit.submissions . This new method now only iterates through newest submissions first and as a result makes approximately 33% fewer requests.

is now . This new method now only iterates through newest submissions first and as a result makes approximately 33% fewer requests. helpers.submission_stream is now praw.models.reddit.subreddit.SubredditStream.submissions()

Removed

Removed Reddit ’s login method. Authentication must be done through OAuth.

’s method. Authentication must be done through OAuth. Removed praw-multiprocess as this functionality is no longer needed with PRAW 4.

as this functionality is no longer needed with PRAW 4. Removed non-oauth functions Message.collapse and Message.uncollapse is_username_available .

and . Removed captcha related functions.

For changes prior to version 4.0 please see: 3.4.0 changelog