Skip to content

Commit

Permalink
Adds ability to fork individual messages, and keep the forked message…
Browse files Browse the repository at this point in the history
…s (mostly) updated as the underlying messages change.

Messages marked with a 🧵 emoji will be forked. If you want to fork multiple, first mark the first message you want to fork with a :needle: emoji, then the last message you want to fork with a 🧵 emoji. (No more than 100 messages may intervene).

This fixes #34.

Merge branch 'fork-thread' into main

* fork-thread: (38 commits)
  Updated all fmt.Prinf messages to end in newline for cleaner log output. Part of #34.
  The read out for forked message says how many messages were forked, and informs the user they could have forked multiple messages if they used the needle emoji.
  Remove refernces to forked messages from the index when the fork is deleted, so we don't try to update them when they don't exist.
  Fixed an error introduced in 02cf584
  Make updateForkedMessages be resilient to if the fork has been deleted at some point. Introduce restErrorCode. Part of #34.
  Fixed a bug where TFIDF.AutoTopWords would fail if there were even fewer total words seen then were asked for. Part of #34.
  Fixed a bug where if there was no needle, it would copy up to 100 messages before thread.
  Made it so if you have a :needle: above the 🧵 all of the messages between them, inclusive, up to 100 messages, will be forked too.
  Refactor so it's possible to ask multiple messages to be forked at once. Part of #34.
  Forked threads go to the correct default category now. Part of #34.
  Made it so when the thraed is hit, it creates a new auto-named thread with that message.
  Define bot.createNewThreadInDefaultCategory . Part of #34.
  Refactor a new bot.channelMessage that stuffs the GuildID into the returned message, and document why it exists. Part of #34.
  A bit of refactoring to pass around messagerefs, not just strings. Part of #34.
  Fix an error where the forked messages's back links didn't work, because guildID wasn't passed. No idea why session.ChannelMessage isn't returning the guildID.
  When a message is forked, the bot replies to the main channel with a link to the channel it was forked to. Part of #34.
  When a forked message has its emoji reactions change, update the emoji reactions on the forked versions, too. Part of #34.
  Make it so messages that are forked, when they are updated, also update their forks. Part of #34.
  noteMessageIfFork now requests persistence.
  IDFIndex grows RequestPersistence() which schedules a persistence save within 5 minutes, but reqpeated calls will still only have one.
  ...
  • Loading branch information
jkomoros committed Jun 16, 2021
2 parents d000f53 + 939100b commit 6af9251
Show file tree
Hide file tree
Showing 5 changed files with 620 additions and 32 deletions.
Loading

0 comments on commit 6af9251

Please sign in to comment.