Releases: nokonoko/Uguu
Releases · nokonoko/Uguu
V1.8.7
Uguu 1.8.7
Whats new
- Donation icons and copy icon have been replaced by SVG loaded in uguu.css to reduce amount of requests and data transfer needed when loading page.
- Preloading improvements for CSS and JS.
- "grillLoader" has been replaced with loading the grills via JS, which is controlled via the "GRILLS" array in
config.json
upon compilation. - Upon compilation all assets will be pre-compressed using gzip so Nginx can serve them without having to compress them on runtime.
- Updated Nginx examples: faster TLS handshake, php extension re-write, allowing Nginx to serve pre-compressed assets.
- CSS fixes and improvements, better accessibility on mobile devices.
- The API no longer returns the original filename when uploading, since this can leak sensitive information.
- Assets such as the background image and the grills come pre-compressed in the AVIF format which further reduces load size, if a browser doesnt support AVIF it will fall back to PNG.
- Other minor things.
Breaking changes
config.json
needs to be updated.- Nginx config needs to be updated.
Recommended to do a clean install for this release, you may keep your existing database and all of your config.json settings.
V1.8.6
Uguu 1.8.6
This version of Uguu requires a minimum of PHP version 8.3.
Whats new
- Includes INDEX creation in the dbSchemas files, this greatly improves performance when performing filename generation, antidupe, blacklist or rate-limit checks against the database, especially on big databases. It's recommended you follow the instructions below on how to add INDEX.
- time() is called once in connector to get a timestamp instead of multiple times.
- The function
diverseArray
is now calledtransposeArray
, the variables within the function are also renamed to make it easier to understand. - The function
uploadFile
performs a check ifBENCHMARK_MODE
is set in the configuration, if it is the file will not be uploaded. - Benchmarking capbility added.
- Docs updated with how to use Benchmarking and also a Optimization Guide.
Breaking changes
- config.json must include the
"BENCHMARK_MODE"
value, should be set tofalse
when not benchmarking, otherwise file(s) will not be uploaded.
Add INDEX to an existing Uguu installation
SQLite
CREATE INDEX files_hash_idx ON files (hash);
CREATE INDEX files_name_idx ON files (filename);
CREATE INDEX ratelimit_iphash_idx ON ratelimit (iphash);
CREATE INDEX blacklist_hash_idx ON blacklist (hash);
PostgreSQL
CREATE INDEX files_hash_idx ON files (hash);
CREATE INDEX files_name_idx ON files (filename);
CREATE INDEX ratelimit_iphash_idx ON ratelimit (iphash);
CREATE INDEX blacklist_hash_idx ON blacklist (hash);
MySQL
CREATE INDEX files_hash_idx ON files (hash);
CREATE INDEX files_name_idx ON files (filename);
CREATE INDEX ratelimit_iphash_idx ON ratelimit (iphash);
CREATE INDEX blacklist_hash_idx ON blacklist (hash);
V1.8.5
V1.8.4
This is a breaking change, src/Classes/Upload.php
and src/config.json
needs to be updated! Recommended to update entire Uguu.
Changes:
- Added LICENSE file.
- Updated copyright/license notice in files.
- Updated some function documentation in files.
- Updated how file extension & MIME type filtering is handled, you can now put it in whitelist or blacklist mode.
- Fixed a possible bug where rate limit and filtering rules might default to true even if config is set to false.
- Updated config.json, BLOCKED_MIME & BLOCKED_EXTENSIONS are now FILTER_MIME and FILTER_EXTENSIONS.
- Updated installation documentation
V1.8.3
Make sure you read the V1.8.0 release note before upgrading to this version if your current version in below 1.8.0.
Changes:
- Flattr donation setting removed since it has been shut down.
- Ethereum donation setting added.
- Updated default API template.
- Minor CSS change.
V1.8.2
V1.8.1
V1.8.0
Be sure to read the documentation before you upgrade from a earlier version since there are many major changes!
- Fixed up uguu.js so it's a tad more modern or at least ES6+ ish compliant.
- Fixed the issue where the progress bar jumps from 0% to 100% with nothing inbeetwen, this was due to the JS minifier breaking the code.. :) Resolved by switching from the module "Minify" to "Node-Minify" and using "node-minify/uglify-es".
- CSS is now compressed using "cssnano"
- Fixed so you can set the response type format you want from the API, it was overriding to JSON before which it was not supposed to do.
- Corrected some spelling errors in the FAQ.
- Replaced the tools page with a API page which explains how to use it.
- Added an option in config.json if the Github nav link show be shown or not.
- Added the FAQ link to the navbar.
- Added minimum version of NodeJS for compilation to work. (18)
- Added so file url links now open in a new tab.
- Removed the checkDB and checkFiles bash scripts, this will instead be handled in a PHP script by adding it to cron. This will also read the expire value from the config file rather then having to set it manually in the script.
- Added a expireTimeUnit to the config file so one isn't forced to use just hours, it support setting it to minutes, hours, days, weeks, months and years.
- I've decided to remove Docker support from this release and re-do it and make it a bit better.
- Other minor improvements.