Releases: Forceu/Gokapi
v1.9.2
Changelog
- Added preview meta-data, enabling preview for services like WhatsApp
- Added hotlink support for avif and apng format
- Fixed headers not set when proxying S3 storage, resulting in incorrect filename and not forcing download #199
Upgrading
- If running an older version than 1.9.2 please check the 1.9.1 changelog for upgrading and breaking changes
Full Changelog: v1.9.1...v1.9.2
v1.9.1
Changelog
- Fixed processing/uploading status not showing after upload #193
- Fixed crash when OIDC returns nil for groups #198
- Fixed crash after running setup and changing encryption #197
- Changed versioning of css/js files to prevent caching of old versions #195
- Other minor changes
Breaking changes
If you are using a custom theme, make sure that you change the CSS and JS filenames. Instead of e.g. main.min.css
, the files are versioned now to include the version number in the filename, in this example the filename would be main.min.5.css
Upgrading
- If running an older version than 1.9.0, please check the 1.9.0 changelog for upgrading and breaking changes
Full Changelog: v1.9.0...v1.9.1
v1.9.0
Changelog
- Fixed upload speeds being very low in some cases #162
- Fixed Docker image having the incorrect timezone #169
- Added Redis support. If you want to use Redis instead of SQLite, re-run the setup to change your database type. Refer to the documentation on how to migrate your data to a different database
- Database location can now be changed with the setup
- Fixed QR code not having decryption key when end-to-end encryption was enabled
- Added option to display filenames in URL #171
- Added makefile for development
- Replaced SSE library with more efficient code
- Fixed
go generate
not working on Windows, thanks @Kwonunn - Gokapi version number will not be displayed on public pages anymore
- Added
windows/arm64
target
Breaking Changes
- API: The output for the schema
File
has changed. The base URL was removed and now the complete URL for to download or hotlink the file is added. The additional keyIncludeFilename
indicates if the URLs contain the filename. - Configuration: Env variable
GOKAPI_DB_NAME
deprecated. On first start the database location will be saved as an URL string to the configuration file. For automatic deploymentGOKAPI_DATABASE_URL
can also be used
Upgrading
- Configuration file needs to be writable
- If running an older version than 1.8.0, please upgrade to 1.8.4 first and check the 1.8.0 changelog for upgrading and breaking changes
Full Changelog: v1.8.4...v1.9.0
v1.8.4
Changelog
- Gokapi runs as root in Docker container by default (this was changed in 1.8.3). To run it as unprivileged user, set environment variable
DOCKER_NONROOT
to true. - Removed logging of errors when a user unexpectedly closed download or upload connection
Upgrading
- You might need to change permissions on the docker volumes, if you want the content to be readable by the host user. (Only applicable if you were running 1.8.3 before)
- Important: If you have used the old Keycloak example for configuration, please make sure that it is configure properly, as with the old example unauthorised access might have been possible! Documentation: Creating scopes for groups
If you are running a version <1.8.0, please see the 1.8.0 changelog for upgrading and breaking changes
Full Changelog: v1.8.3...v1.8.4
v1.8.3
Changelog
- Fixed Keycloak documentation. Important: If you have used the old example for configuration, please make sure that it is configure properly, as with the old example unauthorised access might have been possible! Documentation: Creating scopes for groups
- The binary will no longer be run as root in the Docker image. Breaking change: If you want to reconfigure Gokapi, the argument to pass to Docker is now a different one: Documentation
- If salts are empty, new ones will now be generated on startup. This is to aid automatic deployment
- A new admin password can be set with
--deployment-password newPassword
, but this should only be used for automatic deployment - Env variable
GOKAPI_LOG_STDOUT
added, which also outputs all log entries to the terminal - Display error message, if a reverse proxy does not allow file upload, or has been set to accept a too low file size
- Added header, so that nginx does not cache SSE
- Cloud storage file downloads can now be proxied through Gokapi, e.g. if the storage server is on an internal network
- Fixed a bug, where the option "Always save images locally" reverted back to default when re-running setup
- Updated documentation
Upgrading
If you are running a version <1.8.0, please see the 1.8.0 changelog for upgrading and breaking changes
Full Changelog: v1.8.2...v1.8.3
v1.8.2
Changelog
- Fixed that trailing slash was removed from OIDC provider URL: Thanks @JeroenoBoy
- S3 credentials are not shown in setup anymore, if they are provided through environment variables
- Added parameter to install Gokapi as a systemd service: Thanks @masoncfrancis
- Fixed typos: Thanks @Phaeton
- Updated Go version to 1.22
Upgrading
If you are running a version <1.8.0, please see the 1.8.0 changelog for upgrading and breaking changes
Full Changelog: v1.8.1...v1.8.2
v1.8.1
Changelog
- Reworked OIDC authentication, added support for Groups, use consent instead of select_account, better error handling
- Added wildcard support for OIDC groups and users
- Fixed crash on client timeout #125
- Added /auth/create API endpoint for creating API keys
- Minor changes and fixes
Upgrading
If you are running a version <1.8.0, please see the 1.8.0 changelog for upgrading and breaking changes
v1.8.0
⚠️ Breaking Changes / Backup recommended ⚠️
With this release, the old key-value database was changed to sqlite3. Please backup all Gokapi data before installing this release. On first start, the old database will be migrated and all users will be logged out. If you experience any problems, please open an issue and let us know!
Breaking Changes
- Dropped Windows 32bit support
- Only 4,000 parallel requests that are writing to the database are supported now, any requests above that limit may be rejected. Up to 500,000 parallel reading requests were tested.
- According to the documentation, the
GOKAPI_DATA_DIR
environment variable should be persistent, however that was not the case. Now the data directory that was set on first start will be used. If you were usingGOKAPI_DATA_DIR
after the first start, make sure that the data directory is the one found in your config file. - By default, IP addresses of clients downloading files are not saved anymore to comply with GDPR. This can be enabled by re-running the setup
- Existing API keys will be granted all API permissions except
MODIFY_API
, therefore cannot use/auth/friendlyname
without having the permission granted first - The undocumented
GOKAPI_FILE_DB
environment variable was removed - Removed optional application for reading database content
Further Changelog
- Parameters of already uploaded files can be edited now
- Added permission model for API tokens
- Added
/auth/modify
and/files/modify API
endpoint - Fixed "Powered by Gokapi" URL not clickable
- Fixed the ASCII logo #108 Thanks to @Kwonunn
- Improved UI
- Fixed minor bugs
- Updated dependencies
- Updated documentation
v1.7.2
Changelog
- Added option to change the name in the setup
- The filename is now shown in the title for downloads
- SessionStorage is used instead of localStorage for e2e decryption
- Replaced expiry image with dynamic SVG
Full Changelog: v1.7.1...v1.7.2
v1.7.1
Changelog
- Fixed Gokapi not able to upload when running on a Windows system #95
- Improved Upload UI
- Added healthcheck for docker by @Jisagi in #89
- Fixed upload counter not updating after upload #92
- Fixed hotlink generation on files that required client-side decryption
- Replaced go:generate code with native Go
- Min Go version now 1.20
- Updated dependencies
- A lot of refactoring, minor changes
- Fixed background not loading in 1.7.0 (unpublished release) #101
Full Changelog: v1.6.2...v1.7.1