Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refactor!: move to axum #42

Merged
merged 66 commits into from
Nov 9, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
66 commits
Select commit Hold shift + click to select a range
4b9c4c4
refactor: begin refactor to axum
simonsan Sep 13, 2023
bedf13c
imports
simonsan Sep 13, 2023
7c8bf7f
tracing::debug
simonsan Sep 13, 2023
12da923
refactor I
simonsan Sep 13, 2023
134b6db
refactor II
simonsan Sep 13, 2023
47b3eb4
refactor III
simonsan Sep 13, 2023
04ec935
refactor IV
simonsan Sep 13, 2023
7c106e8
refactor V
simonsan Sep 13, 2023
747572a
refactor VI
simonsan Sep 13, 2023
71cb856
use pathbuf
simonsan Sep 13, 2023
d41f38f
handle errors better
simonsan Sep 16, 2023
8f51e4e
fix some errors
simonsan Sep 16, 2023
0d73eeb
fix some errors
simonsan Sep 16, 2023
e63a324
fix path doesn't live long enough
simonsan Sep 16, 2023
4598058
fix some errors III
simonsan Sep 16, 2023
7a04566
async stream body to file?
simonsan Sep 16, 2023
7acd328
add todo
simonsan Sep 16, 2023
3b91b40
remove outdated comment
simonsan Sep 16, 2023
4eb18dd
add todo
simonsan Sep 16, 2023
f3f7bba
clippy fixes
simonsan Sep 16, 2023
4a5b708
remove braces
simonsan Sep 16, 2023
34ad03d
style: fmt
simonsan Jan 5, 2024
d69c1fd
chore: update to latest axum and apply fixes
simonsan Jan 5, 2024
4771de6
refactor!: moving to axum (#40)
mundo-68 Jan 22, 2024
8835c89
refactor(error): Use own errors throughout library part
simonsan Jan 23, 2024
de3ca63
chore(deps): updating dependencies
simonsan Jan 23, 2024
a1c13cf
fix: don't unwrap in bin
simonsan Jan 23, 2024
5766b3d
refactor(error): state better which file is not able to be read
simonsan Jan 23, 2024
4dbd9b5
docs: remove tide remarks from readme
simonsan Jan 23, 2024
a86be5d
fix: imports
simonsan Jan 23, 2024
7bcca5d
refactor(errors): more error handling stuff
simonsan Jan 23, 2024
8f2d8f5
test: fix config tests
simonsan Jan 23, 2024
bef9af5
ci: reactivate audit workflow
simonsan Jan 23, 2024
d3a0ec4
chore: remove OnceCell dep and set rust-version
simonsan Jan 23, 2024
1bbf402
chore: remove justfile
simonsan Jan 23, 2024
280095b
chore: update changelog
simonsan Jan 23, 2024
d3e27a3
handle paths by axum for files_list
aawsome Jan 23, 2024
a4e3bf8
add handling for missing :path
aawsome Jan 23, 2024
293be27
fix: clippy
simonsan Jan 24, 2024
6a1d193
refactor: Path extraction using Axum
simonsan Jan 24, 2024
287040d
fix: cleanup and borrowing/coercion
simonsan Jan 24, 2024
2088ac7
refactor(error): more error handling stuff
simonsan Jan 24, 2024
3d6eb52
fix(tests): change route in tests to adapt to path extraction
simonsan Jan 24, 2024
3077680
tests: cleanup
simonsan Jan 24, 2024
f9807e0
WIP: use option
simonsan Jan 24, 2024
5c94f80
refactor: more optional for name
simonsan Jan 24, 2024
4a1e73e
refactor: add missing async
simonsan Jan 24, 2024
36fd0ec
tests: consolidate test names
simonsan Jan 24, 2024
34fbb1e
refactor: use typed_paths
simonsan Jan 25, 2024
dc00979
fix: cleanup tpe explicit some
simonsan Jan 25, 2024
76ce24b
fix: possible typo?
simonsan Jan 25, 2024
1bf0041
docs(testing): few corrections
simonsan Jan 25, 2024
e27fe79
testing: cleanup more from testing
simonsan Jan 25, 2024
470d999
style: fmt
simonsan Jan 25, 2024
9e7c2c4
fixed repository and file_exchange handlers (#43)
mundo-68 Jan 26, 2024
78ab5a7
fix: few fixes from review
simonsan Jan 26, 2024
f72629e
fix: test_add_delete_config_passes
simonsan Jan 26, 2024
3114a64
Merge branch 'main' into feature/axum
simonsan Mar 15, 2024
e982c5b
Merge branch 'main' into feature/axum
simonsan Nov 9, 2024
781d4a5
commit reviewed stuff, without web + typed path changes
simonsan Nov 9, 2024
cb7a502
update deps
simonsan Nov 9, 2024
177d5dd
don't build on broken platforms
simonsan Nov 9, 2024
fd544b4
Merge branch 'main' into feature/axum
simonsan Nov 9, 2024
2fca76a
Merge branch 'main' into feature/axum
simonsan Nov 9, 2024
2599a50
Merge branch 'main' into feature/axum
simonsan Nov 9, 2024
e177bd0
Merge branch 'main' into feature/axum
simonsan Nov 9, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 2 additions & 3 deletions .github/workflows/audit.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,8 @@ on:
- "**/Cargo.lock"
- "crates/**/Cargo.toml"
- "crates/**/Cargo.lock"
# TODO!: After axum refactor has landed, we can enable this again
# merge_group:
# types: [checks_requested]
merge_group:
types: [checks_requested]

concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
Expand Down
33 changes: 18 additions & 15 deletions .github/workflows/cross-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,11 +36,12 @@ jobs:
target: x86_64-pc-windows-msvc
architecture: x86_64
use-cross: false
- os: windows-latest
os-name: windows
target: x86_64-pc-windows-gnu
architecture: x86_64
use-cross: false
# Disabled for now, as aws-lc-sys needs bindgen-cli for manual build with CMake in cross
# - os: windows-latest
# os-name: windows
# target: x86_64-pc-windows-gnu
# architecture: x86_64
# use-cross: false
- os: macos-13
os-name: macos
target: x86_64-apple-darwin
Expand Down Expand Up @@ -71,16 +72,18 @@ jobs:
target: i686-unknown-linux-gnu
architecture: i686
use-cross: true
- os: ubuntu-latest
os-name: netbsd
target: x86_64-unknown-netbsd
architecture: x86_64
use-cross: true
- os: ubuntu-latest
os-name: linux
target: armv7-unknown-linux-gnueabihf
architecture: armv7
use-cross: true
# Disabled for now, as aws-lc-sys needs bindgen-cli for manual build with CMake in cross
# - os: ubuntu-latest
# os-name: netbsd
# target: x86_64-unknown-netbsd
# architecture: x86_64
# use-cross: true
# Disabled for now, as aws-lc-sys needs bindgen-cli for manual build with CMake in cross
# - os: ubuntu-latest
# os-name: linux
# target: armv7-unknown-linux-gnueabihf
# architecture: armv7
# use-cross: true

steps:
- name: Checkout repository
Expand Down
27 changes: 15 additions & 12 deletions .github/workflows/nightly.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,12 +31,13 @@ jobs:
architecture: x86_64
binary-postfix: ".exe"
use-cross: false
- os: windows-latest
os-name: windows
target: x86_64-pc-windows-gnu
architecture: x86_64
binary-postfix: ".exe"
use-cross: false
# Disabled for now, as aws-lc-sys needs bindgen-cli for manual build with CMake in cross
# - os: windows-latest
# os-name: windows
# target: x86_64-pc-windows-gnu
# architecture: x86_64
# binary-postfix: ".exe"
# use-cross: false
- os: macos-13
os-name: macos
target: x86_64-apple-darwin
Expand Down Expand Up @@ -74,18 +75,20 @@ jobs:
binary-postfix: ""
use-cross: true
# TODO!: This needs a fix, linking `execinfo` fails
# + Disabled for now, as aws-lc-sys needs bindgen-cli for manual build with CMake in cross
# - os: ubuntu-latest
# os-name: netbsd
# target: x86_64-unknown-netbsd
# architecture: x86_64
# binary-postfix: ""
# use-cross: true
- os: ubuntu-latest
os-name: linux
target: armv7-unknown-linux-gnueabihf
architecture: armv7
binary-postfix: ""
use-cross: true
# Disabled for now, as aws-lc-sys needs bindgen-cli for manual build with CMake in cross
# - os: ubuntu-latest
# os-name: linux
# target: armv7-unknown-linux-gnueabihf
# architecture: armv7
# binary-postfix: ""
# use-cross: true

steps:
- name: Checkout repository
Expand Down
26 changes: 14 additions & 12 deletions .github/workflows/prebuilt-pr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -68,18 +68,20 @@ jobs:
architecture: i686
binary-postfix: ""
use-cross: true
- os: ubuntu-latest
os-name: netbsd
target: x86_64-unknown-netbsd
architecture: x86_64
binary-postfix: ""
use-cross: true
- os: ubuntu-latest
os-name: linux
target: armv7-unknown-linux-gnueabihf
architecture: armv7
binary-postfix: ""
use-cross: true
# Disabled for now, as aws-lc-sys needs bindgen-cli for manual build with CMake in cross
# - os: ubuntu-latest
# os-name: netbsd
# target: x86_64-unknown-netbsd
# architecture: x86_64
# binary-postfix: ""
# use-cross: true
# Disabled for now, as aws-lc-sys needs bindgen-cli for manual build with CMake in cross
# - os: ubuntu-latest
# os-name: linux
# target: armv7-unknown-linux-gnueabihf
# architecture: armv7
# binary-postfix: ""
# use-cross: true

steps:
- name: Checkout repository
Expand Down
26 changes: 14 additions & 12 deletions .github/workflows/release-cd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -59,18 +59,20 @@ jobs:
architecture: i686
binary-postfix: ""
use-cross: true
- os: ubuntu-latest
os-name: netbsd
target: x86_64-unknown-netbsd
architecture: x86_64
binary-postfix: ""
use-cross: true
- os: ubuntu-latest
os-name: linux
target: armv7-unknown-linux-gnueabihf
architecture: armv7
binary-postfix: ""
use-cross: true
# Disabled for now, as aws-lc-sys needs bindgen-cli for manual build with CMake in cross
# - os: ubuntu-latest
# os-name: netbsd
# target: x86_64-unknown-netbsd
# architecture: x86_64
# binary-postfix: ""
# use-cross: true
# Disabled for now, as aws-lc-sys needs bindgen-cli for manual build with CMake in cross
# - os: ubuntu-latest
# os-name: linux
# target: armv7-unknown-linux-gnueabihf
# architecture: armv7
# binary-postfix: ""
# use-cross: true

steps:
- name: Checkout repository
Expand Down
8 changes: 8 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,11 @@

# These are backup files generated by rustfmt
**/*.rs.bk

# Test data created may accidentally be included
/tests/test_data/test_repos/repo_remove_me
/tests/test_data/test_repos/repo_remove_me_2
tests/fixtures/test_data/rustic_server.toml #often updated with content that should not be archived
/tmp_test_data
tests/fixtures/test_data/test_repos/test_repo/keys/__add_file_test_adds_this_one__
tests/fixtures/test_data/test_repos/test_repo/keys/__get_file_test_adds_this_two__
170 changes: 169 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,13 @@ All notable changes to this project will be documented in this file.
- Update rust crate toml to 0.8
- Deserialization with newest toml
- Clippy
- Remove unmaintained `actions-rs` ci actions
- Update rust crate clap to 4.4.10
([#37](https://github.com/rustic-rs/rustic_server/issues/37))
- Update github action to download artifacts, as upload/download actions from
nightly workflow were incompatible with each other
- Don't unwrap in bin
- Imports

### Documentation

Expand All @@ -23,6 +30,10 @@ All notable changes to this project will be documented in this file.
- Remove To-dos from Readme
- Break line in toml code for usability
- Update changelog
- Rewrite contributing remark
- Fix list indent
- Add contributing
- Remove tide remarks from readme

### Features

Expand Down Expand Up @@ -61,9 +72,166 @@ All notable changes to this project will be documented in this file.
- Add triaging of issues
- Run release checks also on release subbranches
- Add maskfile
- Update changelog
- Run workflow on renovate branches
- Add merge queue checks
- Add cargo deny
- Relink to new image location
- Add binstall support
- Build nightly with rsign signed binaries
- Update public key
- Support rsign signature
- Remove special os-dependent linker/compiler settings
- Update cross ci
- Check if nightly builds for arm64 darwin builds work now
- Arm64 on darwin still fails
- Add x86_64-pc-windows-gnu target
- Compile dependencies with optimizations in dev mode
- Add results to ci
- Lockfile maintenance
- Run actions that need secrets.GITHUB_TOKEN only on rustic-rs org
- Update dtolnay/rust-toolchain
- Update taiki-e/install-action
- Update rustsec/audit-check
- Netbsd nightly builds fail due to missing execinfo, so we don't build on it
for now
- Upgrade dprint config
- Activate automerge for github action digest update
- Activate automerge for github action digest update
- Automerge lockfile maintenance
- :debug
- Update to latest axum and apply fixes
- Reactivate audit workflow
- Remove OnceCell dep and set rust-version
- Remove justfile

### Refactor

- Refactor to library and server binary
- Begin refactor to axum
- [**breaking**] Moving to axum
([#40](https://github.com/rustic-rs/rustic_server/issues/40))
- Use own errors throughout library part
- State better which file is not able to be read
- More error handling stuff

### Testing

- Fix config tests

## [0.1.1] - 2024-01-23

### Bug Fixes

- Nightly builds, exclude arm64 darwin build until issue Publishing
aarch64-apple-darwin failed #6 is fixed
- Update rust crate toml to 0.8
- Deserialization with newest toml
- Clippy
- Remove unmaintained `actions-rs` ci actions
- Update rust crate clap to 4.4.10
([#37](https://github.com/rustic-rs/rustic_server/issues/37))
- Update github action to download artifacts, as upload/download actions from
nightly workflow were incompatible with each other
- Don't unwrap in bin
- Imports

### Documentation

- Update readme, fix manifest
- Add continuous deployment badge to readme
- Fix typo in html element
- Add link to nightly
- Add link to nightly downloads in documentation
- Remove CI Todo
- Remove To-dos from Readme
- Break line in toml code for usability
- Update changelog
- Rewrite contributing remark
- Fix list indent
- Add contributing
- Remove tide remarks from readme

### Features

- Pr-build flag to build artifacts for a pr manually if needed

### Miscellaneous Tasks

- Add ci
- Nightly builds
- Update header link
- Add release pr workflow
- Add caching
- Add signature and shallow clones to nightly
- Declutter and reorganize
- Remove lint from ci workflow and keep it separate, replace underscore in
workflow files
- Rebase and extract action to own repository
- Use create-binary-artifact action
- Put action version to follow main branch while action is still in development
- Switch ci to rustic-rs/create-binary-artifact action
- Switch rest of ci to rustic-rs/create-binary-artifact action
- Change license
- Fix workflow name for create-binary-artifact action, and check breaking
changes package dependent
- Decrease build times on windows
- Fix github refs
- Set right package
- Use bash substring comparison to determine package name from branch
- Fix woggly github action comparison
- Add changelog generation
- Initialize cargo release, update changelog
- Add dev tooling
- Run git-cliff with latest tag during release
- Remove comment from cargo manifest
- Change workflow extensions to yml
- Add triaging of issues
- Run release checks also on release subbranches
- Add maskfile
- Update changelog
- Run workflow on renovate branches
- Add merge queue checks
- Add cargo deny
- Relink to new image location
- Add binstall support
- Build nightly with rsign signed binaries
- Update public key
- Support rsign signature
- Remove special os-dependent linker/compiler settings
- Update cross ci
- Check if nightly builds for arm64 darwin builds work now
- Arm64 on darwin still fails
- Add x86_64-pc-windows-gnu target
- Compile dependencies with optimizations in dev mode
- Add results to ci
- Lockfile maintenance
- Run actions that need secrets.GITHUB_TOKEN only on rustic-rs org
- Update dtolnay/rust-toolchain
- Update taiki-e/install-action
- Update rustsec/audit-check
- Netbsd nightly builds fail due to missing execinfo, so we don't build on it
for now
- Upgrade dprint config
- Activate automerge for github action digest update
- Activate automerge for github action digest update
- Automerge lockfile maintenance
- :debug
- Update to latest axum and apply fixes
- Reactivate audit workflow
- Remove OnceCell dep and set rust-version
- Remove justfile

### Refactor

- Refactor to library and server binary
- Begin refactor to axum
- [**breaking**] Moving to axum
([#40](https://github.com/rustic-rs/rustic_server/issues/40))
- Use own errors throughout library part
- State better which file is not able to be read
- More error handling stuff

### Testing

<!-- generated by git-cliff -->
- Fix config tests
Loading