Skip to content

v2.3

Latest
Compare
Choose a tag to compare
@barthofu barthofu released this 04 Mar 10:48
· 1 commit to main since this release

TSCord template v2.3

This is the changelog, you can see the migration guide from the v2.2 here.

This update mainly focus on 3 things:

  • developer experience
  • refactoring and cleaning the codebase
  • keeping the dependencies and ecosystem up to date

Warning

If you want to see the changes coming alongside this PR, check commit per commit because we've ran the new code formater and it has changed by default the style of nearly all the files.

Features

  • HMR (Hot Module Replacement) on commands and events files (#131)
  • Logs auto-archiving and retention policies (#143)
  • Linting and formatting through an eslint config using antfu/eslint-config as base (#128)
  • Lint stage in github actions workflows
  • Environment variables validation (#130)
  • Created wrapper @Service decorator for @singleton, which can take a keepInstanceAfterHmr parameter in order to keep the instance state between HMR reloads (e.g: Store service)
  • Created wrappers @Injectable and @AutoInjectable of respectively @injectable and @autoInjectable to uniformize names and import source (@/decorators instead of tsyringe)
  • Type discordx client config in the src/client.ts file (6f83ffb)

Refactor

  • Switching back from swc to tsc in order to improve stability at the cost of little speed deperdition (#135)
  • Renamed all internal path aliases from @<module_name> to @/<module_name> (e.g: @services -> @/services)
  • Remove useless botOnline api middleware HTTP request (8060043)
  • Remove useless websocket client and all related events by switching them to REST endpoints for the dashboard (8db5d31)
  • Remove all eval from the code, for security concerns (60baa42)
  • Remove undesired typesafe-i18n logs at startup (c570dde)

Bug fixes

  • isJSONEncodable isn't a function at startup (65338ea)
  • Plugins can't import intents from client config (add934f - @Mr-Artemus)

Chores

  • Update to node v20.11 (LTS)
  • Update dependencies