Skip to content

4.0.0

Compare
Choose a tag to compare
@synzen synzen released this 01 Jan 01:04
· 2427 commits to master since this release

IMPORTANT

Any feeds or profiles on a bot below v4.0.0 (this release version) MUST be updated to update and remove deprecated references.

To update:

  1. Make a backup of your profiles (through mongoDB, copy/pasting the json, or with rssbackup)
  2. Run node update.js in the main directory
  3. Run npm install

Major Changes

  • Refactored many functions to be promises for much cleaner code
  • Refactored to use database as source of truth for guild profiles, statistics and failed links

Additions

  • Command rssalert to support DM'ing feed warnings/failures to users rather than in server channels
  • Command rssprefix for custom prefix support
  • Command rssversion for bot version
  • Command rssinvite to send an invite link for the bot
  • Command rssdump to see raw placeholders
  • Controller command listguilds to generate a list of guilds the bot is in
  • Controller command showtrace to show error stack traces
  • Support for raw placeholders (directly from article sources)
  • Support for direct regex input for regexOps (thanks @Chilace #83)
  • Support for user subscriptions in addition to roles
  • Support for multiple embeds for webhooks (not possible for users)
  • Config config.feeds.sendOldOnFirstCycle
  • Config config.bot.exitOnSocketIssues
  • Config config.feeds.decode for manual encoding specifications for decoding feeds (allows fixes for feeds with ?? characters everywhere)
  • "this" as a valid channel input for rssmove
  • Heroku deploy button (thanks @neveSZ #69)

Removals

  • Controller command forceremove
  • Support for statistics on databaseless versions
  • Support for failed links on databaseless versions
  • Config value "isolated" for config.advanced.processorMethod
  • Placeholders {reddit_author} and {reddit_direct}
  • config.feeds.sendOldMessages
  • config.feeds.maxOldAge
  • config.feeds.showRegexErrs

Changes

  • Renamed "single" to "concurrent" for config.advanced.processorMethod config value
  • Renamed "parallel" to "parallel-isolated" for config.advanced.processorMethod config value
  • Renamed command rssroles to rssmention to account for users
  • Replaced needle with node-fetch

Fixes

  • Errors never being shown in channel for articles that failed to send
  • Docker configuration issues (thanks Danpiel #53)

Miscellaneous

  • Performance probably improved?
  • Title checks are more robust. Previously title checks only affected previously sent articles. For example, if two articles in the same fetch cycle had the same title, title checks didn't do anything. Now it accounts for articles in the same cycle.
  • Environment variables for certain configs can be set in a .env file in the root directory (thanks @Chilace #82)
  • Added Contribution guidelines (thanks @Chilace #85)
  • Refactored to use config.js across all files (thanks @NNTin #74)