Skip to content

URS v3.3.0

Choose a tag to compare

@JosephLai241 JosephLai241 released this 15 Jun 03:17
· 151 commits to master since this release

Summary

  • Introduced livestreaming tools:
    • Livestream comments or submissions submitted within Subreddits.
    • Livestream comments or submissions submitted by a Redditor.

Full Changelog

Added

  • User interface
    • Added livestream scraper flags:
      • -lr - livestream a Subreddit
      • -lu - livestream a Redditor
      • Added livestream scrape control flags to limit stream exclusively to submissions (default is streaming comments):
        • --stream-submissions
    • Added a flag -v/--version to display the version number.
  • Source code
    • Added a new sub-module live_scrapers within praw_scrapers for livestream functionality:
      • Livestream.py
      • utils/DisplayStream.py
      • utils/StreamGenerator.py
    • Added a new file Version.py to single-source the package version.
    • Added a gallery_data and media_metadata check in Comments.py, which includes the above fields if the submission contains a gallery.
  • README
    • Added a new "Installation" section with updated installation procedures.
    • Added a new section "Livestreaming Subreddits and Redditors" with sub-sections containing details for each flag.
    • Updated the Table of Contents accordingly.
  • Tests
    • Added additional unit tests for the live_scrapers module. These tests are located in tests/test_praw_scrapers/test_live_scrapers:
      • tests/test_praw_scrapers/test_live_scrapers/test_Livestream.py
      • tests/test_praw_scrapers/test_live_scrapers/test_utils/test_DisplayStream.py
      • tests/test_praw_scrapers/test_live_scrapers/test_utils/test_StreamGenerator.py
  • Repository documents
    • Added a Table of Contents for The Forest.md

Changed

  • User interface
    • Updated the usage menu to clarify which tools may use which optional flags.
  • Source code
    • Reindexed the praw_scrapers module:
      • Moved the following files into the new static_scrapers sub-module:
        • Basic.py
        • Comments.py
        • Redditor.py
        • Subreddit.py
      • Updated absolute imports throughout the source code.
    • Moved confirm_options(), previously located in Subreddit.py to Global.py.
    • Moved PrepRedditor.prep_redditor() algorithm to its own class method PrepMutts.prep_mutts().
      • Added additional error handling to the algorithm to fix the KeyError exception mentioned in the Issue Fix or Enhancement Request section.
    • Removed Colorama's init() method from many modules - it only needs to be called once and is now located in Urs.py.
    • Updated requirements.txt.
  • README
    • The "Exporting" section is now one large section and is now located on top of the "URS Overview" section.
  • Tests
    • Updated absolute imports for existing PRAW scrapers.
    • Removed a few tests for DirInit.py since the make_directory() and make_type_directory() methods have been deprecated.

Deprecated

  • Source code
    • Removed many methods defined in the InitializeDirectory class in DirInit.py:
      • LogMissingDir.log()
      • create()
      • make_directory()
      • make_type_directory()
      • make_analytics_directory()
        • Replaced these methods with a more versatile create_dirs() method.