Also fixes issue where multiple meilisearch binaries would be packaged
in the Docker container if they were present on the building machine.
Ensures that the proper platform/arch specific meilisearch binary is the
one that is linked in Docker containers.
Fixes#1561
The unified based image provides all hardware acceleration methods, so
users will not have install specific hardware variants.
Hardware-specific images will be published for a short time in order to
provide warnings to existing users to migrate their install over to the
non-suffixed version.
Thank you to @jasongdove for his hard work on the base image!
* Updates Typescript to latest version
* Changes server Typescript config to actually emit JS files. We were
already running a full tsc invocation against the server for
typechecking anyway... and we use tsx for fast dev iteration w/o
typechecking, so we may as well just emit the actual JS files so that we
can take advantage of thinks like decorator metadata (upcoming inversify
PR...)
* Updates better-sqlite version to latest
* Bumps node version requirement to 22 and codifies it in package.json
engines
The new logic depends on a new boolean in the settings.json file. If
Tunarr detects that the settings.json file did not exist at initial
startup, it will set 'freshSettings' to true. On subsequent runs, it
will explicitly set this to 'false'. This bit is used to determine
whether a legacy migration should be attempted.
This new logic allows for the Tunarr database _directory_ to exist at
startup (a requirement for bind mounting with containers) but still be
able to determine if this is a 'first run'.
Also includes:
* Attaching className to child loggers, for additional logging context
in production env
* Logging improvement in the legacy migrator to print actual errors
* waitAfterEachMs option in asyncPool
* support for background fixer tasks to not delay server startup too
long
Various fixes. Fix bug where normalize codecs logic to pick when to transcode was the reverse of what we wanted. Beep and white noise are less loud, which prevent issues with ac3 encoder. Channel Icon Overlay doesn't appear during error screen.
Change docker container to use alpine linux, comes with ffmpeg 4.2+ easier.
Encode commercials to be same video codec as programs when channel icons enabled. Resolution/framerate could still be problematic.