Skip to content

Latest commit

 

History

History
501 lines (391 loc) · 17.1 KB

File metadata and controls

501 lines (391 loc) · 17.1 KB
  • Added know 'er special. I haven't killed her and it's 2022 lmao.
  • Finally updated npm packages lmao
  • Added server count, stats alias to Version command
  • Added Min Min and Steve to Smash
  • Haruka collects function usage information
    • I'm planning on unplugging her, but I wanna see how many servers actually use her before I do ;(
  • Fixed dad.coffee always failing
  • Pokémon
    • Occasionally, searches with the "0" character would return unexpected results. This has now been fixed.
  • Dab
    • Dab now catches more variations on the word "dab"
  • GitHub
    • User Agent changed to something meaningful
  • Smash
    • Add Byleth to Smash

Development version v3.1.1

  • Change GitHub UA to something meaningful
  • Add Byleth to Smash

  • New: Edits
    • Check out what your friends said before they edited their message.
  • Ping
    • Ping is now rounded correctly.
  • Smash
    • Terry's info is displayed correctly.
  • WolframAlpha
    • Tables are a equally but differently ugly.
  • Version
    • Lists the number of functions and names them.

Development version v3.1.0

  • Functions
    • Edits
      • Retrieves a message's edits. Expose your friends.
    • Version
      • Lists the number of functions and names them.
    • WolframAlpha
      • Uses tables generated by tableToAscii
    • Ping
      • Rounded to 3 decimal places
  • Helpers
    • List helper class, maybe one day we'll stop sinning. (Line 90 onwards of main.coffee)
    • tableToAscii helps format Grid WolframAlpha results
    • UMD-ified List and Relative (because they're universal)
  • package.json
    • Bumped to 3.1.0
    • Got rid of 8 vulnerabilities, yay :/

Note: The three probably doesn't mean anything to you.

Additions & Changes

  • New: WolframAlpha
    • Query the world's information with Haruka's -h wa function!
  • Smash
    • Now denotes whether a character is DLC or not.
    • Updated help data
    • Added Hero and Banjo-Kazooie metadata.
  • Ping
    • Now shows 3 numbers, WebSocket ping, Reaction time, and Delivery. This may be more confusing but I digress.
  • Dev
    • Added fetch helper function
    • Switching from config.json to .env
      • This is a breaking change, which constitutes bumping the major version number.

Bug fixes

  • Help
    • Help would refuse to show the detailed help list when asked to. I'm still not sure why, but this has been fixed.
  • Smash

Development version v3.0.0

Note: The three probably doesn't mean anything to you.

Additions & Changes

  • New: WolframAlpha
    • Query the world's information with Haruka's -h wa function!
  • Smash
    • Now denotes whether a character is DLC or not.
    • Updated help data
    • Added Hero and Banjo-Kazooie metadata.
  • Ping
    • Now shows 3 numbers, WebSocket ping, Reaction time, and Delivery. This may be more confusing but I digress.
  • Dev
    • Added fetch helper function
    • Switching from config.json to .env
      • This is a breaking change, which constitutes bumping the major version number.

Bug fixes

  • Help
    • Help would refuse to show the detailed help list when asked to. I'm still not sure why, but this has been fixed.
  • Smash
    • Smash uses the FrannHammer API for determining whether frame data was available. The endpoint has since changed, breaking older versions of Haruka's Smash function.

Some bug fixes

  • Pokémon
    • Now treats leading zeroes as expected (-h pkmn 001 brings up Bulbasaur)
  • Smash
    • Hotfix: Do not search by series. This fixes a problem when searching for "palutena", which is codename for the Kid Icarus series, bringing up Pit instead of Palutena as expected.
    • Short help aligned properly. I sincerely apologize for triggering anyone's OCD.
  • Version
    • Added relative time. Tells you how long ago Haruka was started.

New functions, yay!

  • Smash
    • Search for any character in Smash Ultimate. Not much info is returned, but I'm working on it!
  • Manga
    • Search for manga just like with anime

Changes

  • Anime
    • For a given show, Anime will now show you the following:
      • Alternate names:
        • "Kono Subarashii Sekai ni Shukufuku wo!" → "Konosuba"
        • "Seishun Buta Yarou wa Bunny Girl-senpai no Yume wo Minai" → "AoButa", etc.
      • Episode count
      • Airing status
        • Whether the anime is completed, currenty airing, about to be, or cancelled.
      • Next episode (when applicable)
        • When the next episode is airing, if applicable.
        • Relative dates such as "in one week", "tomorrow", etc.
      • Score
        • A weighted average score of user ratings.
  • Owo
    • Replies to more variants

Development version v2.1.0

  • Updated README.md function count to be correct.
  • Anime
    • Now shows the weighted score, number of episodes, status, and next airing time for any given anime.
    • Next airing time is calculated via a helper located in /src/helpers/relative.coffee
  • Dab
    • If the :rin_dab: emote exists in any server, react with it.
  • Help:
    • Updated RegExp to accept the empty string
  • Main:
    • Updated the fallback function to disregard the empty string, since Help's RegExp accounts for that.
  • Pokémon
    • Fixed a critical bug that caused Haruka to silently crash. Bug caused by Pokéapi returning an HTML-formatted 404 when Haruka expected JSON, causing JSON.parse to throw an unrecoverable error.
  • Say
    • Dead simple: just disableEveryone. No need for role management.
  • Someone
    • Only allowed to use -h someone if the user is allowed to mention @everyone.

Specials:

  • owo
    • Has a 1 in 3 chance of replying with "what's this" or some variant of it
  • Who up

Big changes

Haruka’s now a module with a simple API. See her documentation.

New functions!

  • Kick
    • Does what you expect: eject people from a server.
  • Health
    • Sends you tips to improve your bodily health.
  • Ping
    • Haruka now replies to "Awoo!", "uwu", and "owo" (case insensitive)
  • xkcd
    • Fetches xkcd comics, yay!
  • Anime
    • Looks up info for an anime, you weeb.

Development version v2.0.0

Big changes

Haruka’s now a module with a simple API.

Added

  • Adde CoffeeScript as a devDependency
  • A buttload of type definitions for JSDoc
  • Kick
    • Does what you expect: eject people from a server.
  • Health
    • Sends you tips to improve your bodily health.
  • Ping
    • Haruka now replies to "Awoo!", "uwu", and "owo" (case insensitive)
  • xkcd
    • Fetches xkcd comics, yay!
  • Anime
    • Looks up info for an anime, you weeb.

Changed

  • Version's embed footer now defaults to discord-haruka, so undefined shouldn’t show up.

Changed

  • About & Version
    • These functions now use beautiful RichEmbeds.
    • Version now prints uptime.
  • Pokémon
    • Embed will now show Movepool size, Abilities, and Base Stats
  • Ping 🏓
    • Now tells you how long it took Haruka to respond.
    • Using "Ping", "beep", or "ding" now have their own responses.

Killing bugs

If a Haruka command contains dab, she won't run that command. This has now been resolved.


Development version v1.3.5

Changed

  • About & Version
    • These functions now use beautiful RichEmbeds.
    • Version now prints uptime.
  • Pokémon
    • Rewrote entire function (lol)
    • Embed will now show Movepool size, Abilities, and Base Stats
  • Ping 🏓
    • Now tells you how long it took Haruka to respond.
    • Using "Ping", "beep", or "ding" now have their own responses.
  • config.json
    • Added about field. This is what’ll be displayed when -h about or -h version is called. See example-config.json.
  • package.json
    • Added npm run watch and npm run serve for quicker development. Now I don’t need notes.md, so that’s been deleted.

Killing bugs

If a Haruka command contains dab, she won't run that command. This has now been resolved.


What’s new

  • Reverse
    • Use -h reverse to reverse some text.
  • Someone
    • Added options for choosing members that are online, offline, idle, and dnd. The -h @someone function without any arguments now looks for online users by default.

Changes:

  • -h say @everyone and -h say @here will no longer mention everyone.
  • The -h purge function will now only delete up to the last 100 messages as per the Discord API.

Development version v1.3.4

Added

  • Abusing -h say @everyone or -h say @here in a certain server will kick that user.
  • Reverse
    • Use -h reverse to reverse some text.
  • Someone
    • Added options for choosing members that are online, offline, idle, and dnd. The -h @someone function without any arguments now looks for online users by default.

Changed

  • Purge
    • Limit is now 100, inline with Discord’s default limit.

Changes:

  • About
    • Added some more information.

Killing bugs:

  • Purge
    • It works now. 🎉

Development version v1.3.3

Added

  • About
    • Added some more information.

Changed

  • Help
    • If <FunctionObj>.hidden is truthy, <FunctionObj>.short can be left undefined.
  • Invite
    • Removed the need for Haruka.config.client_id
  • Purge
    • It works now. 🎉

Removed

config.client_id isn’t needed, so it’s been removed from example-config. Leaving it in there won’t make a difference, but it’s deprecated.


  • Uncaught errors now throw print their stack traces.

Killing bugs:

  • Purge: Users must now have relevant permissions before purging messages.
  • Dad: No longer causes an infinite loop in DMs.

Development version v1.3.1

Changed

  • Main.coffee:
    • Uncaught errors now print their stack traces.
  • Purge
    • Users must now have relevant permissions before purging messages.
  • Dad (Special)
    • DM'ing Haruka causes an error loop to occur, fixed with a single ?, another reason to love CoffeeScript.

Four new functions, one new special:

  • Someone function
    • Use -h @someone to mention a user chosen at random.
  • Emote function
    • Manage server emotes and emojis with -h emote
  • Now function
    • Get the current UTC time with -h now
  • Purge function
    • Delete messages in bulk using -h purge
  • Dab special function
    • Reacts with a dabbing emote if you say "dab" or "dabbing" in a certain server.

Note: Haruka.version and Haruka.dev have been moved to config.json


Development version v1.3

Added

  • Someone function
    • [2018-07-20]: Created someone function, use -h @someone to mention a random user, offline or online.
  • Emote function
    • [2018-07-21]: Manage server emotes and emojis with -h emote.
  • Now function
    • [2018-07-28]: Get the current UTC time with -h now
  • Dab Special function
    • [2018-07-28]: Reacts with a dabbing emote if you say "dab" or "dabbing" in a certain server.

Changed

  • Use npm run debug as a shortcut for node --inspect dist/main.js.
  • Added bug report issue template.
  • Moved version and dev to config.json

Killing bugs:

  • Fixes Haruka’s Dad special. This special would throw an error and wouldn't run, which has now been resolved.

Three new functions, one new special:

  • Aesthetic function
    • -h ae <text> turns text into wider, more aesthetic text.
  • Version function
    • -h version prints out Haruka’s current version, as well as the number of functions she has available.
  • Restart function
    • Use -h restart to restart the Haruka instance. User must be in the ops list.
  • Dad special function
    • If a message starts with "I’m" (or something like it), Haruka has a 1 in 10 chance of sending a sarcastic reply.

Development version v1.2.1

Added

  • Halt function
    • [2018-07-01]: Created function: Users in ops in config.json can run the -h halt command to halt Haruka.
  • Version function
    • [2018-07-03]: Created hidden function: -h version prints out Haruka’s current version, as well as the number of functions she has available.
  • Play function
    • [2018-07-05]: Created function: -h play <url or id> plays YouTube videos. Code could be better written.
  • Aesthetic function
    • [2018-07-14]: Created function: -h ae <text> turns text into wider, more aesthetic text.

Changed

  • [2018-07-01]: Changed activity to Watching Hentai | -h help because I think I'm clever.
  • [2018-07-04]: Cleaned up the pkmn function.
  • [2018-07-14]: Removed the play function from being added to Haruka, prefixed with an underscore.

Added two new functions:

  • GitHub function
    • Retrieves information about a GitHub repository. Syntax: -h github <user/repo>
  • Kanji function
    • Looks up info about a Kanji character. Syntax: -h kanji <kanji>

Created Special functions, which are functions that listen to every message, used for only special circumstances (i.e., making an April fools prank, writing joke replies, etc).


Development version v1.2.0-dev

Started: 2018-06-23

Added

  • GitHub function:

    • [2018-06-24]: GitHub function: Retrieves information about a GitHub repository. Syntax: -h github <user/repo>
    • [2018-06-25]: Added .catch statements
    • [2018-06-25]: Added stargazers, forks, and issues counter
  • Kanji function:

    • [2018-06-25]: Kanji function: Looks up info about a Kanji character. Syntax: -h kanji <kanji>
  • Special functions:

    • [2018-06-26]: Special functions are functions that listen to every message, used for only special circumstances (i.e., making an April fools prank, writing joke replies, etc).
    • [2018-06-26]: Added README for Special functions.
  • Everything:

    • [2018-06-25]: Added example-config.json and included it in the README.
    • [2018-06-25]: Standardized Regexes
    • [2018-06-26]: Added boilerplates

Changed

  • Pokémon function:
    • [2018-06-24]: The RichEmbed now displays data inline.
  • Help function and each function's module.exports:
    • [2018-06-25]: help in each function's module.exports now has two properties, short and long. short appears in -h help, and long appears in -h help <fn>

Removed

  • Config function:
    • [2018-06-26]: Removed _config function, as it wasn’t being worked on.

aka: Haruka’s First Release

Create a config.json file at root as described in the README. Then, start Haruka by running either npm start or node dist/main.js.

Commands:

  • -h 8ball: Answers any yes or no question.
  • -h about: General stuff about Haruka.
  • -h help: Returns a list of all the commands, much like this one.
  • -h invite: Replies with a URL to invite Haruka to other servers.
  • -h pfp: Return a user’s profile image as a URL
  • -h ping: Replies “Pong!”
  • -h pkmn: Gets information about a Pokémon.
  • -h say: Replies with whatever you tell it to.