Commit graph

25 commits

Author SHA1 Message Date
dvdsk
28463e48c1
Adds a feature no-c-deps which makes microbin easy to crosscompile
With `no-c-deps` enabled microbin can be compiled for aarch64 by simply
passing in `--no-default-features`, `--no-c-deps` & `--target
aarch64-unknown-linux-musl`. The resulting binary is fully static and
does *not* depend on glibc. Therefore it can be deployed to any linux
target running an aarch64 cpu (arm). There is no need for any
containers.

There where four obstactles to easily statically linking microbin
with musl.

- The syntect library depended on the onigura regex engine. With
  `no-c-deps` it uses `fancy-regex` a slower alternative fully written
  in rust.
- Dependency actix-web supported zstd compression requiring the system
  zstd library to be present.
- The rusqlite library build and linked the C-library sqlite. That needs
  a crosscompiler and various crosscompile packages. With `no-c-deps`
  enabled the sqlite db option is disabled and the -json-db arg must be
  used. If the user does not pass -json-db microbin will panic when
  starting with a clear error message.
- reqwest was using openssl for reporting telemetry and checking for new
  versions. With `no-c-deps` it uses rustls with crypto provider
  rustcrypto. While rustcrypto has not been formally verified it should
  be good enough for sending telemetry (which should not contain any
  secure/personal data anyway) and checking versions.
2024-10-22 18:14:54 +02:00
dvdsk
b86adc7ac9
update deps + rustls 2024-10-22 01:40:41 +02:00
dvdsk
96de6125c9
Upgrade deps, builds upon pr #254 by Timshel 2024-10-22 01:14:26 +02:00
Timshel
3a256305e7 Upgrade deps 2024-03-13 21:23:24 +01:00
Daniel Szabo
571bfbff1f Bump version for v2 release 2023-07-11 20:16:05 +03:00
Daniel Szabo
917ce3c713 Update checking and telemetry improvements
- Implemented configuration telemetry
- Added option to disable version checking
- Updated URL for versioning and telemetry endpoint
- Added option to opt-in for a public MicroBin server list in the future
2023-07-11 17:36:33 +03:00
Daniel Szabo
9e03864090 set openssl dependency as vendored
Fixes build github action error caused by dependency of a non-included openssl system binary in the action used to build MicroBin
2023-07-10 14:45:21 +03:00
Daniel Szabo
590e3022e8 Bump version for v2 beta 4 2023-07-10 14:21:14 +03:00
Daniel Szabo
6322d6cbb0 Added simple update checker
By parsing some json served by the MicroBin website, MicroBin can now check whether there is a newer version out there, and display the update information on the admin screen.
2023-07-09 14:00:29 +03:00
Daniel Szabo
efdcf0f5e2 Bump versioning for new beta release 2023-07-08 19:18:58 +03:00
Daniel Szabo
4c367c0ddf Bump version to 2.0.1 (beta2) 2023-07-04 19:23:23 +03:00
Daniel Szabo
38e4fa4fe7 update cargo version number 2023-07-01 21:20:43 +03:00
Daniel Szabo
bc188e3d34 Microbin 2 beta 1 first commit
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 #164
Fixes #156
Fixes #153
Fixes #149
Fixes #139
Fixes #98
Fixes #4

Fixes #105 (sort of)
Fixes #97 (sort of)
Fixes #45 (sort of)
Fixes #22 (sort of)
2023-07-01 19:12:06 +03:00
Dániel Szabó
3d45357be3
Merge pull request #169 from szabodanika/dependabot/cargo/tokio-1.25.1
Bump tokio from 1.21.2 to 1.25.1
2023-06-26 12:31:29 +03:00
Dániel Szabó
b0988d08c1
Merge pull request #168 from szabodanika/dependabot/cargo/spin-0.9.8
Bump spin from 0.9.4 to 0.9.8
2023-06-26 12:31:20 +03:00
dependabot[bot]
f581cdd969
Bump tokio from 1.21.2 to 1.25.1
Bumps [tokio](https://github.com/tokio-rs/tokio) from 1.21.2 to 1.25.1.
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.21.2...tokio-1.25.1)

---
updated-dependencies:
- dependency-name: tokio
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-26 07:45:41 +00:00
dependabot[bot]
85d8fa53a3
Bump spin from 0.9.4 to 0.9.8
Bumps [spin](https://github.com/mvdnes/spin-rs) from 0.9.4 to 0.9.8.
- [Changelog](https://github.com/mvdnes/spin-rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mvdnes/spin-rs/commits)

---
updated-dependencies:
- dependency-name: spin
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-26 07:45:31 +00:00
dependabot[bot]
a5406867b6
Bump h2 from 0.3.15 to 0.3.19
Bumps [h2](https://github.com/hyperium/h2) from 0.3.15 to 0.3.19.
- [Release notes](https://github.com/hyperium/h2/releases)
- [Changelog](https://github.com/hyperium/h2/blob/master/CHANGELOG.md)
- [Commits](https://github.com/hyperium/h2/compare/v0.3.15...v0.3.19)

---
updated-dependencies:
- dependency-name: h2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-26 07:44:09 +00:00
Daniel Szabo
0eedf1c8e0 increment version number in Cargo.lock 2023-03-26 23:06:46 +03:00
Zac
6907bb4f13 bugfix: stored XSS
bugfix: Copy Text is not working when the button Copy Url does not exist.
2023-02-21 09:52:00 +08:00
Daniel Szabo
c6e5c6f018 Merge branch 'master' into szabodanika 2022-11-06 23:21:45 +02:00
Daniel Szabo
2198cbdff9 Getting ready for 1.2 & new site release
- 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
2022-11-01 20:56:07 +02:00
Heng-Yi Wu
b5da40fbdc
feat: hashids 2022-11-01 21:19:54 +08:00
Daniel Szabo
44b55ae08e Getting ready for 1.2.0 release: many smaller requests implemented
- 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.
2022-10-29 14:11:55 +03:00
Dániel Szabó
d2e7234d96 small ui improvements
- fix width for pure html mode
- improve copy button look and placement
- make input field heights more consistent on pasta creation page
2022-10-27 14:12:11 +03:00