By sending the upload URL back to the browser with a custom header name rather than the standard Location, the browser doesn't get "redirected twice", hence only one GET request made and fixing #235
Minimal implementation of an auth mode that is read-only unless a password is provided. Enable MICROBIN_READONLY and set MICROBIN_UPLOADER_PASSWORD to try it out.
Fixes#106
- Implemented password protection for removals
- Added success message on password-protected upload creation and editing for clarity
- Made auth page focus password field when it's left empty
Still not perfect, but works better with non-text files as well finally. Worked on presenting the proper UI elements as well, as sometimes the wrong download button was showing or the password field was misisng.
This is the first, early beta version of Microbin 2.
Microbin 2 brings a lot of improvements to Microbin. To name just the most important ones:
- Server-side and client-side encryption for uploads, including file attachments,
- SQLite database support by default,
- Reworked upload settings, 5 privacy levels,
- New administrator console (/admin),
- Automatic syntax highlighting,
- Image and video embedding,
- Refreshed styling and QoL features,
- New user guide page.
Beyond these,
- Added file upload size limits,
- Added sample .env file with description for each environmental variable,
- Removed Info page (moved to admin page),
- Pasta list now sorted from newer to older,
- Pasta terminology replaced with Upload,
- Files are now served with a proper service, not just as a public directory,
- Pastas are now stored in /attachments instead of /public.
As this is the first beta of Microbin v2, and I do not recommend updating to this in critical environments as long as we are in beta stage. I expect many bugs to emerge and v2 is also getting a few more smaller QoL features from the backlog. README and website won't be updated until v2 is stable and well-tested.
Fixes#164Fixes#156Fixes#153Fixes#149Fixes#139Fixes#98Fixes#4Fixes#105 (sort of)
Fixes#97 (sort of)
Fixes#45 (sort of)
Fixes#22 (sort of)
This commit makes the textareas (notably, when adding a pasta) use
monospace font (which is in line with other pastebin services and
arguably what the user wants/expects).
- improved support for serving static resources from the binary, now supporting images
- added new logo
- changed save button
- fixed footer attribution text, it is not true anymore that MicroBin is made by myself
- replaced footer GitHub link with microbin.eu link
- Implements #7
- Implements #42 and therefore #64
- Improved #53
- Implements #59
- Implements #61
- Implements #63
- Implements #80
- Implements #84
- Added Info page
- Removed Help page
- Bumped version number to 1.2.0
- Fixed a bug where wide mode was still 720px wide
- Created FUNDING.yml
- Reorganised arguments in README.MD and documented new options
- Updated SECURITY.MD
- Added display of last read time and read count
- Increased default width to 800px to make UI less cluttered
- Reorganised index page
- New, better attach file button
I want to spend some time testing these changes and let everyone have a look at them before tagging and releasing new artifacts.
!Breaking change! - The updated version will not be able to read your old database file
Major improvements:
- Added editable pastas
- Added private pastas
- Added line numbers
- Added support for wide mode (1080p instead of 720p)
- Added syntax highlighting support
- Added read-only mode
- Added built-in help page
- Added option to remove logo, change title and footer text
Minor improvements:
- Improved looks in pure html mode
- Removed link to GitHub repo from navbar
- Broke up 7km long main.rs file into smaller modules
- Moved water.css into a template instead of serving it as an external resource
- Made Save button a bit bigger
- Updated README.MD
Bugfixes:
- Fixed a bug where an incorrect animal ID in a request would cause a crash
- Fixed a bug where an empty or corrupt JSON database would cause a crash
- index.html extended with form input
- pasta.html and pastalist.html show link to /file/{pasta.id}/{filename} path
- files are saved in pasta_data folder
- all data is now stored in pasta_data/database.json
- changed pastalist.html date format to exclude year
- added custom 404 error handler