Releases: enchant97/hasty-paste
Releases · enchant97/hasty-paste
V1.10.0
V1.9.0
⛔ Deprecated feature has been removed, see #70 ⛔
⚠️ New & Changed Configs ⚠️
Name | Description | Default | Docker Default |
---|---|---|---|
USE_LONG_ID | When "True" pastes will use a longer id | False | False |
STORAGE__TYPE | What storage type to use (DISK, S3) | DISK | DISK |
STORAGE__DISK__PASTE_ROOT | Where the paste flat file system will be kept | - | /app/data |
STORAGE__S3__ENDPOINT_URL | Use a different endpoint other than AWS | - | - |
STORAGE__S3__ACCESS_KEY_ID | Access key ID | - | - |
STORAGE__S3__SECRET_ACCESS_KEY | Access key secret | - | - |
STORAGE__S3__BUCKET_NAME | Bucket name to store pastes (should already be created) | - | - |
HIDE_BOOT_MESSAGE | Hide the ascii art boot message | False | False |
Change Log
Added
- #27; 🚧 Experimental S3 storage support
- Add ability to hide ascii art boot message
Changed
- #70; Long ID only adjustable through config value
- Bump deps
V1.8.0
⚠️ Notice For Existing Users ⚠️
The Docker image is now rootless, you will need to adjust the permissions of the data folder to be owned by the nobody
user (lowest permissions).
Why was this change made? Running the app as a non-root user reduces the attack surface if an attacker gained access to the container. The app src is also owned by root, preventing tampering and is read-only to the nobody
user.
See comment here for more info.
Change Log
Added
- Ensure Redis can be reached on app launch
- Add ASCII art for launch :)
- #67; log loaded configs on launch
- #66; custom 404 page
- Support installing using pip through setuptools pyproject
- Added optional json accelerator (installed by default in Docker image)
Changed
- #68; make Docker image rootless (increase security)
- Reduce number of final Docker image layers
- Remove ability to use "Copy Share Link" when not under secure connection
- Improved launch scripts
- Bump pip versions
Fixed
- Fix long id
Full Changelog: v1.7.0...v1.8.0
V1.7.0
⛔ Deprecated features have been removed, see #50 ⛔
⚠️ New & Changed Configs ⚠️
Name | Description | Default | Docker Default |
---|---|---|---|
TIME_ZONE | The time-zone where your clients are (used in web UI) | Europe/London | Europe/London |
CACHE__INTERNAL_MAX_SIZE | The max size of the internal cache (<=0 to disable) | 4 | 4 |
Change Log
Added
- Show expiry on paste screen
- Configurable multi-tiered caching
- CLI can remove empty cache folders
- Strict paste id checking in URLs
- Better general exception handling
- Add human padding for paste id
- Add more unit tests
Changed
- Major code refactoring (pastes are no longer dependant on storage types, for future s3 object support)
- Tidy REST API routes
Fixed
- Fixed #53 Expiry set in UI always interpreted as UTC, by having a configurable timezone
Removed
- Removed deprecated features, see #50
V1.6.1
V1.6.0
⛔ Deprecation Notice ⛔
- Paste id's with symbol characters are being deprecated and will be removed in the future, please use the "Clone & Edit" button to resave under new id (or just delete them).
- api route /api/pastes/{paste id} will no longer return the flat file, but instead the raw paste content
- api route /api/pastes/{paste id}/content will be removed
These are planned for removal in V1.7 see #50
⚠️ New & Changed Configs ⚠️
Name | Description | Default | Docker Default |
---|---|---|---|
CACHE__ENABLE | Whether to enable caching of any type | True | True |
CACHE__MAX_INTERNAL_SIZE | The max size of the internal cache | 4 | 4 |
CACHE__REDIS_URI | Use redis for caching (disabled internal) | - | - |
BRANDING__HIDE_VERSION | Hide the app version number | False | False |
Change Log
Added
- Simple paste creation through the api
- Ability to hide version number
- Optional caching with internal or redis
Changed
- Code refactoring
- Update requirements
- Dependency updates
Full Changelog: v1.5.0...v1.6.0
V1.5.0
⛔ Deprecation Notice ⛔
Paste id's with symbol characters are being deprecated and will be removed in the future, please use the "Clone & Edit" button to resave under new id (or just delete them).
⚠️ New & Changed Configs ⚠️
Name | Description | Default | Docker Default |
---|---|---|---|
UI_DEFAULT__USE_LONG_ID | Setting this to "True" or "False" hides the long id checkbox in UI | - | - |
UI_DEFAULT__EXPIRE_TIME__ENABLE | Enable a default expire time in web ui | False | False |
UI_DEFAULT__EXPIRE_TIME__MINUTES | Default minutes in ui for expiry if enabled | 0 | 0 |
UI_DEFAULT__EXPIRE_TIME__HOURS | Default hours in ui for expiry if enabled | 1 | 1 |
UI_DEFAULT__EXPIRE_TIME__DAYS | Default days in ui for expiry if enabled | 0 | 0 |
BRANDING__TITLE | Customise the app title | - | - |
BRANDING__DESCRIPTION | Customise the app description | - | - |
BRANDING__ICON | Customise the app icon, provide as absolute filepath | - | - |
BRANDING__FAVICON | Customise the app favicon, provide as absolute filepath | - | - |
BRANDING__CSS_FILE | Customise the site theme, using a provided css file | - | - |
Change Log
Added
- #39, brand customisation
Changed
- Only generate paste id's with A-Za-z0-9
- Put config into groups
- Update pip requirements
- quart-schema to ~=0.13.0
- pydantic[dotenv] to ~=1.10.2
- mkdocs-material to ~=8.5.3
Full Changelog: v1.4.0...v1.5.0