Skip to content

Releases: Sv443-Network/JokeAPI

Release 2.1.2

19 Mar 22:17
a78cb40
Compare
Choose a tag to compare
  • Added file format "txt" to receive data as plain text (Usable on every single endpoint with the URL parameter format=txt)
  • Fixed the joke submission URL in the /info endpoint data
  • Added some HTTP error response codes:
    • 413 Payload Too Large if a joke submission is too large
    • 414 URI Too Long if the request URL is too long
  • Did some slight restructuring in the documentation, readme and contributing guide

Release 2.1.1

05 Mar 17:39
Compare
Choose a tag to compare
  • Fixed incorrect error cause when using an out-of-range ID range parameter (see #54)
  • Added a submit form to the documentation (https://sv443.net/jokeapi/v2#submit - see #57)
  • Fixed some smaller bugs and errors here and there

Release 2.1.0

22 Feb 22:14
b6f800f
Compare
Choose a tag to compare
  • Added an authorization header to make whitelisting possible without needing to have a static IP
    • Added the script npm run add-token [amount] to add one or more tokens
  • Improved the documentation (see #52)
  • Fixed a few bugs in the documentation

Release 2.0.1

03 Feb 14:27
d0d5bbb
Compare
Choose a tag to compare

This hotfix addresses these issues:

  • Hotfixed a few bugs from the big 2.0.0 update (#41)
  • Fixed joke ID caching (#40)
  • Added three new commands that are run through CI and before contributing:
    • npm run validate-ids to make sure the joke IDs are correct
    • npm run dependency-graph to generate a dependency graph (requires graphviz)
    • npm run all which is run before pushing changes
  • Enabled automated code fixing with ESLint

Release 2.0.0

27 Jan 21:52
14e6389
Compare
Choose a tag to compare

Complete rewrite of JokeAPI with a literal ton of features and improvements.

Changelog:

  • Massively improved the "Try it out" section in the docs
  • Reformatted the jokes to always contain all flags
  • Added support for selecting multiple categories at once (for example: "https://sv443.net/jokeapi/v2/joke/Dark,Miscellaneous/")
  • Massive performance improvements:
    • The documentation page and some static content are now able to be served with gzip, deflate and brotli encoding, decreasing the required bandwidth and speeding up page loading time
    • Reformatted the jokes to have the IDs beforehand, furthermore increasing performance and making it easier to know which joke ID belongs to which joke
    • Now the documentation page runs on a daemon, meaning it will only be recompiled if a file has changed, massively improving JokeAPIs perfomance
    • Static content like the stylesheet, client-side JS and images will now be loaded separately, through the "static" endpoint, decreasing page load time by an order of magnitude
  • Added a few new URL parameters:
    • Added the "?type" URL parameter to specify the type of the served joke ("single" or "twopart")
    • Added the "?contains" URL parameter to only serve jokes that match the provided search query
    • Added the "?idRange" URL parameter to get jokes from a single ID or an ID range (example: "https://sv443.net/jokeapi/v2/joke/Any?id=50-75" or "...?id=15")
  • Added the "racist" and "sexist" flags for better filtering of offensive jokes
  • IP addresses are now hashed, protecting JokeAPI's users better and making it GDPR/DSGVO compliant
  • Added multiple scripts that should be run before contributing to the project / that are run through GitHub's Continuous Integration:
    • "npm run reformat" to reformat jokes from the old pre-2.0.0 syntax to the new 2.0.0 syntax
    • "npm run reassign-ids" to make sure all jokes have the correct IDs
    • "npm run validate-jokes" to make sure all jokes are in the correct format
    • "npm run add-joke" to add a joke
  • Renamed "category" endpoint to "joke"
  • The submission of empty jokes will now be prevented
  • Set up a new reverse proxy at "https://sv443.net/jokeapi/v2/" to let people slowly migrate to the new version
  • Re-validated all jokes and removed duplicates and re-flagged them
  • Added an analytics module that keeps track of everything and makes it possible for me to finally see some (anonymous) usage statistics (complies with the GDPR/DSGVO)
  • Joke IDs will now be cached to prevent the same joke from being served multiple times in a row (this is not perfect yet but much better than before)
  • The documentation page was completely rewritten and should now be easier to use and more concise
  • Updated dependencies and added some new ones
  • Updated the contributor guide (contributing.md file)

Release 1.1.3

02 Jul 21:50
db9ae89
Compare
Choose a tag to compare
  • better IP getter for the rate limiting
  • updated dependencies
  • very small improvements to the console window

Release 1.0.0

29 Mar 22:37
34af5bf
Compare
Choose a tag to compare
v1.0.0

Delete lastComplete.html