Releases: ShaneIsrael/fireshare
v1.6.9
What's Changed
Database Integrity
- Added unique constraint on
video_game_linktable (video_id + game_id) to prevent duplicate game links; existing duplicates removed via migration - Added application-level duplicate check before creating
VideoGameLinkentries during video scanning
Video Player UI
- Constrained controls overlay gradient to bottom 25% of the player for improved visual clarity
v1.6.8
Bug Fixes
-
Video edits not saving on game pages
Editing video details from the video modal on a game category page now saves correctly and the card updates in real time. -
Empty description being overwritten on save
Clearing a video's description no longer reverts to a previous value. -
Cover art not reflecting load state in Chromium
Game page header images that were already cached now correctly report as loaded, fixing display issues in Chromium-based browsers.
v1.6.7
What's New
Improvements
- Cropped videos now show a "Cropping video..." overlay with a progress spinner while the server processes the crop
- Cropped files are generated with
faststartflag, enabling playback before the full file downloads - Long folder names in folder dropdowns now scroll with a marquee animation on hover. This applies to both the selected value and the options list
- LDAP authentication errors are now logged through the app logger instead of the bare
loggingmodule - Analytics script injection support via a placeholder in
index.html
Bug Fixes
- Saving video details no longer invalidates the thumbnail — thumbnail reload is now skipped when the same video is already open
- Saving video details now closes edit mode immediately instead of waiting for the server response, eliminating the save lag
- Removing a crop no longer leaves the crop polling interval running
- Fixed missing
keyprop warning on navbar list items
v1.6.6
What's New
Sidebar / Toolbar
- Folder selector moved to the top-bar area to sit next to the sort order.
- Toolbar button and dropdown styles updated to match the rest of the app better.
Game Specific Pages
- Updated the game specific pages to use the same performance improved scrolling and loading that the primary videos page uses.
Image Gallery
- Images that scroll out of view are now unloaded to reduce memory usage and keep scrolling smooth for libraries with many images.
- Clicking the randomize button no longer causes off-screen images to get stuck as blank placeholders
- Image skeletons now use the correct aspect ratio while loading instead of defaulting to 16:9
- Card borders only appear once the image has finished loading
Image Modal
- The modal now waits for the image to fully load before appearing, eliminating the pop/flicker on open
Video Player
- Fixed (allegedly as I don't have an iphone to test it) the fullscreen button on iOS. If the fix works it should now correctly allow fullscreen from the homepage video modal (iOS Safari requires a different fullscreen API that wasn't being used)
- Fixed the copy link button in the video modal, which was copying
[object Object]instead of the actual URL
v1.6.5
Pretty big update with this one. I think there's definitely something in here for everyone. If you experience any issues please create a github issue and provide any app logs you can so that I can try to get a fix out as soon as possible.
Note: The first app start after this release might be a little slow. With the update to the game assets, a migration script needs to run to migrate any game assets you already have to the new format. Subsequent updates/restarts should be just as fast as before.
What's New
Password Protected Videos
Videos can now be protected with a password. Admins can set a password on any video, and visitors will be prompted to enter it before playback begins. Even if someone has a direct link to the video file, the file will not be served if they have not unlocked the video. Once unlocked, the session is remembered for one hour. Only the video files are protected; thumbnails and other video related metadata (title, description, game, tags, etc) are not.
Video Resume / Playback Progress
Fireshare now remembers where you left off. When you reopen a video you've previously watched, playback automatically resumes from your last position (as long as you were more than 10 seconds in and haven't reached the last 10% of the video). Progress is stored locally in the browser.
Fireshare Lite Image
A new fireshare:latest-lite Docker image is available. This is a smaller image without GPU transcoding dependencies. CPU transcoding is still supported. Ideal for users who don't need GPU acceleration. Versioned images also have a -lite version. So for this release and forward you'll be able to use v1.6.5-lite if you want to pin to a specific release rather than using the latest tag.
Game Suggestions Sidebar
A suggestions panel now appears in the sidebar showing game tags based on your video library, making it easier to browse and discover content by game. This feature is on by default but can be disabled in the Settings menu. @dammitjeff
Live Upload Preview
The upload card now shows a live video preview while selecting a file before uploading. @dammitjeff
Nginx Error Pages
Friendly error pages are now shown for HTTP error codes (404, 403, 500, etc.). A dedicated page is shown when the Fireshare API is unavailable.
Performance Improvements
Game Assets Served Directly by Nginx
Game artwork (hero images, logos, icons) is now served directly by nginx rather than proxied through the API server, reducing load and improving response times. Downloaded assets are also converted to webp which is a much more friendly web format and reduces file size.
Bug Fixes
- Fixed transcoding job queue reporting incorrect progress counts after a server restart
- Fixed an issue where game info on video cards would sometimes pop-in which would shift the text over as you scroll creating a visually jarring experience.
v1.6.4
What's Changed
Bug Fixes
- Fixed an issue where uploading large or slow files could result in the video never appearing in the library after upload completed successfully
- Fixed a race condition that could result in multiple workers attempting to transcode the same file
- Fixed an issue where transcoding the same video multiple times simultaneously could cause corrupted output or failed transcodes
- Fixed an issue where transcoding would silently fail if the job was interrupted by a container restart. Affected jobs are now automatically retried on next startup
Improvements
- Transcoding jobs are now queued in the database, so manually triggered transcodes from any session are no longer lost if the server handles the request on a different internal worker
- Video library scans no longer skip or get blocked while a long transcode is in progress
- Servers with high core-count CPUs (e.g. 32-core Threadripper) no longer spawn an excessive number of worker processes, which could exhaust container PID limits and prevent startup. By default, Fireshare will us at most 4 workers with 8 threads each. If you want more or less workers than the defaults worker count can now be tuned via environment variables (
GUNICORN_WORKERS,GUNICORN_WORKER_CAP,GUNICORN_THREADS).
v1.6.3
What's Changed
Improvements / Fixes:
- Added
image_defaultsto the default configuration and ensured it's kept in sync withvideo_defaultsfor privacy settings; ifimage_defaultsis missing, it is automatically inherited fromvideo_defaults - Added atomic writing for config files and improved error handling: invalid
config.jsonfiles are now backed up and reset to defaults, preventing startup failures. - Added warnings if required data directories are not properly mounted, to help prevent data loss in containerized environments.
UI / UX:
- Improved image upload feedback: success alerts now reflect the actual number of images uploaded, and error messages include server responses for better troubleshooting.
- Updated the image feed to automatically refresh after uploads, ensuring users see new images without manual reloads.
Full Changelog: v1.6.2...v1.6.3
v1.6.2
What's New
- Release notes dialog - A new in-app release notes viewer now appears automatically when a new version is detected. It renders markdown, supports pagination, and can be reopened anytime from the navigation bar when a new release is available.
- Update indicator - The version box in the sidebar now shows a clickable icon when a newer version of Fireshare is available.
Dockerfile Improvements
- Switched apt sources to a kernel.org mirror for more reliable builds.
- Removed stale NVIDIA apt sources that were causing build failures.
- Standardized all
ENVdeclarations to useENV KEY=VALUEformat. - Demo mode is now disabled by default in
.env.dev.
Bug Fixes & Cleanup
- Fixed card size change handler signature.
- Removed unused props and minor code cleanups.
Full Changelog: v1.6.1...v1.6.2
v1.6.1
What's Changed
Server
SECRET_KEYis auto-generated if not explicitly set causing sessions to be auto expired every app restart
UI & UX
- Refreshed login screen look and feel
- Sidebar look and feel updates
- Version info moved to its own component
- Folder dropdown enabled by default
- Various mobile fixes especially for mobile Firefox
Infrastructure & Performance
- SQLite:
busy_timeoutraised to 30 seconds andwal_autocheckpointtuned to reduce write-latency spikes under concurrent load. - Gunicorn: Fixed config file not being loaded - workers now scale with CPU count, threads per worker doubled to 8. This should resolve timeout issues that would occasionally happen on requests.
Full Changelog: v1.6.0...v1.6.1
v1.6.0
Whats New
This has been a much requested feature and I have had a lot of time to slowly think about how I wanted to implement it and tie it in with everything else. Being mostly house ridden as of late due to sickness I have been spending waaaaay too much time coding. I'm finally feeling a lot better so hopefully I'll slow it down now and mostly focus on bug fixes and smaller updates. Sorry for so many releases!
Screenshots & Images
- New screenshot/image system - Fireshare now supports scanning, uploading, and managing screenshots and images alongside your video library.
- Dedicated image feed view and per-image detail page with metadata
- Image file manager for bulk management (edit, delete, move)
- Images linked to a game are mixed into that game's page
- Drag & drop image uploading
- Mobile-friendly image viewing with pinch-to-zoom and pan support
- Image folder rules configuration in Settings
To enable and use images in Fireshare all you need to do is mount a new volumes to the /images mount. Images must be in their own separate directory from your videos. Any images placed in your /videos mount will not get scanned in.
Check it out live on: https://v.fireshare.net
Fixes
- File manager row selection no longer opens the item
- Memoized cards for improved rendering performance
- Memoized file manager rows to be more snappy on larger collections
- Fixed sidebar not appearing on mobile for Files and Settings pages
- Mobile improvements to file manager
Docs
- Added TROUBLESHOOTING.md guide
- Cleaned up leftover chunked upload file fragments that can happen in the event of a broken connection.