Skip to content

Commit

Permalink
Release v0.14.6
Browse files Browse the repository at this point in the history
- Upgrade to libunftp 1.20.0
- Compile with Rust 1.78.0
- Upgrade other dependencies
  • Loading branch information
hannesdejager committed May 18, 2024
1 parent 16a0b65 commit b76ec5e
Show file tree
Hide file tree
Showing 12 changed files with 532 additions and 466 deletions.
74 changes: 37 additions & 37 deletions .github/workflows/rust.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ name: build
# Update the RUST_VERSION here and in the Makefile when we upgrade
env:
CARGO_TERM_COLOR: always
RUST_VERSION: 1.74.1
RUST_VERSION: 1.78.0

on:
push:
Expand All @@ -22,7 +22,7 @@ on:
branches:
- master
release:
types: [created]
types: [ created ]

jobs:

Expand All @@ -47,20 +47,20 @@ jobs:
runs-on: ubuntu-latest
if: ${{ github.ref != 'refs/heads/master' }}
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Install Rust toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: ${{ env.RUST_VERSION }}
override: true
default: true
components: rustfmt
- name: Check formatting
uses: actions-rs/cargo@v1
with:
command: fmt
args: --all -- --check
- name: Checkout code
uses: actions/checkout@v3
- name: Install Rust toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: ${{ env.RUST_VERSION }}
override: true
default: true
components: rustfmt
- name: Check formatting
uses: actions-rs/cargo@v1
with:
command: fmt
args: --all -- --check

clippy:
name: Run Clippy
Expand All @@ -84,24 +84,24 @@ jobs:
args: --all-features --workspace -- -D warnings

test:
name: Run Tests
runs-on: ubuntu-latest
steps:
- name: Checkout sources
uses: actions/checkout@v3
- name: Install rust toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: ${{ env.RUST_VERSION }}
override: true
default: true
components: clippy
- name: Install build dependencies
run: sudo apt-get update && sudo apt-get install -y libpam-dev
- name: Run tests
run: cargo test --verbose --workspace --all --all-features
- name: Build Docs
run: cargo doc --all-features --workspace --no-deps
name: Run Tests
runs-on: ubuntu-latest
steps:
- name: Checkout sources
uses: actions/checkout@v3
- name: Install rust toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: ${{ env.RUST_VERSION }}
override: true
default: true
components: clippy
- name: Install build dependencies
run: sudo apt-get update && sudo apt-get install -y libpam-dev
- name: Run tests
run: cargo test --verbose --workspace --all --all-features
- name: Build Docs
run: cargo doc --all-features --workspace --no-deps

build-linux-gnu:
runs-on: ubuntu-latest
Expand Down Expand Up @@ -244,7 +244,7 @@ jobs:
target: ${{ env.target }}
- name: Install Rosetta
if: runner.os == 'macOS' && runner.arch == 'arm64'
run: softwareupdate --install-rosetta
run: softwareupdate --install-rosetta --agree-to-license
- name: Build
run: cargo build --release --target=${{ env.target }} --features rest_auth,jsonfile_auth,cloud_storage
- name: Rename
Expand All @@ -255,7 +255,7 @@ jobs:
name: unftp_${{ env.target }}
path: target/${{ env.target }}/release/unftp_${{ env.target }}

upload-release-binaries:
upload-release-binaries:
if: ${{ github.event_name == 'release' }} # Testing: if: ${{ github.ref == 'refs/heads/hannes/upload' }}
runs-on: ubuntu-latest
strategy:
Expand Down Expand Up @@ -329,7 +329,7 @@ jobs:
run: chmod +x ./x86_64-unknown-linux-musl/unftp_x86_64-unknown-linux-musl

- name: Build Docker image
run: docker build -t bolcom/unftp:${{ env.BUILD_VERSION }}-scratch -f packaging/docker/scratch.Dockerfile.ci .
run: docker build -t bolcom/unftp:${{ env.BUILD_VERSION }}-scratch -f packaging/docker/scratch.Dockerfile.ci .

- name: Save Docker image as tar
run: docker save -o docker-image-scratch.tar bolcom/unftp:${{ env.BUILD_VERSION }}-scratch
Expand Down
49 changes: 31 additions & 18 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
# Changelog

## 2023-12-24 unftp v0.14.6

- Upgraded to libunftp v0.20.0
- Upgraded other dependencies
- Compile with Rust 1.78.0

## 2023-12-24 unftp v0.14.5

- Added support for source IP in REST authentication requests
Expand Down Expand Up @@ -32,7 +38,8 @@

## 2022-12-08 unftp v0.14.0

- The JSON authentication method (`--auth-json-path`) JSON user file (`--usr-json-path`) now support gzipped or gzipped+base64-encoded gzip files.
- The JSON authentication method (`--auth-json-path`) JSON user file (`--usr-json-path`) now support gzipped or
gzipped+base64-encoded gzip files.
The compression makes it possible to fit large configuration files in a Kubernetes configmap for example.
- Upgraded to unftp-auth-jsonfile v0.3.0 to support the gzipped or gzipped+base64-encoded auth json

Expand All @@ -52,10 +59,11 @@

## 2022-06-26 unftp v0.13.2

- Added support for [tokio-console])(https://github.com/tokio-rs/console), the debugger for async Rust. Enable through
- Added support for [tokio-console])(https://github.com/tokio-rs/console), the debugger for async Rust. Enable through
the `tokio_console` compile time feature.
- [#414](https://github.com/bolcom/libunftp/pull/414) via libunftp: Fixed path display issues for Windows clients.
- [#413](https://github.com/bolcom/libunftp/pull/413) via libunftp: Fixed issue where the `OPTS UTF8` command was not handled correctly as seen with the FTP client included in Windows Explorer.
- [#413](https://github.com/bolcom/libunftp/pull/413) via libunftp: Fixed issue where the `OPTS UTF8` command was not
handled correctly as seen with the FTP client included in Windows Explorer.
- Upgraded dependencies

## 2022-04-15 unftp v0.13.1
Expand All @@ -70,16 +78,17 @@

- BREAKING: Changed the format of the message sent in the Google Pub/Sub notifications.
- Expanded on messages sent in Google Pub/Sub notifications:
1. Include a Logout event
2. Added a Trace ID field to allowing matching messages pertaining to the same control channel session
3. Added a sequence number field to allow message ordering.
4. Added the event type as a message attribute to allow for pub/sub message filtering
1. Include a Logout event
2. Added a Trace ID field to allowing matching messages pertaining to the same control channel session
3. Added a sequence number field to allow message ordering.
4. Added the event type as a message attribute to allow for pub/sub message filtering

The message data format is documented in our user documentation at [unftp.rs](https://unftp.rs/server/pubsub).

## 2021-11-19 unftp v0.12.13

- Implemented integration with Google Pub/Sub through the `--ntf-pubsub-project` and `ntf-pubsub-topic` arguments. Configuring
- Implemented integration with Google Pub/Sub through the `--ntf-pubsub-project` and `ntf-pubsub-topic` arguments.
Configuring
this will send notifications to the pub/sub topic for FTP file system changes and logins for instance.
- \#33 Implemented graceful shutdown
- Upgraded dependencies
Expand All @@ -94,29 +103,33 @@ _tag: v0.12.12_

_tag: v0.12.11_

- Added the `--usr-json-path` argument to allow per-user settings to be specified in a JSON file. This can be the same
- Added the `--usr-json-path` argument to allow per-user settings to be specified in a JSON file. This can be the same
JSON file specified for `--auth-json-path`. See the project README for examples.
- \#85 Ability to restrict the file system operations that an FTP user can do. Accomplished with above-mentioned per user
- \#85 Ability to restrict the file system operations that an FTP user can do. Accomplished with above-mentioned per
user
settings (`vfs_perms` property).
- \#85 Ability to specify a separate root directory per user account (`root` property).
- Ability to enable/disable an FTP account. Accomplished with above-mentioned per user settings (`account_enabled` property).
- \#85 Ability to specify a separate root directory per user account (`root` property).
- Ability to enable/disable an FTP account. Accomplished with above-mentioned per user settings (`account_enabled`
property).
- \#87 Added ability to enforce mTLS per user (`client_cert` property).
- \#87 Added ability to check the CN of a user's client certificate (`client_cert.allowed_cn` property).
- Upgraded to the latest libunftp and its extentions. See [the libunftp changelog](https://github.com/bolcom/libunftp/blob/master/CHANGELOG.md)
for more info.
- \#87 Added ability to check the CN of a user's client certificate (`client_cert.allowed_cn` property).
- Upgraded to the latest libunftp and its extentions.
See [the libunftp changelog](https://github.com/bolcom/libunftp/blob/master/CHANGELOG.md)
for more info.

## 2021-05-26 unftp v0.12.10

_tag: v0.12.10_

- Fixed a bug where logging to Redis stops after some time.
- Added support for the `SITE MD5` command. Use `--enable-sitemd5` for the filesystem backend (it is automatically enabled for the GCS storage backend)
- Added support for the `SITE MD5` command. Use `--enable-sitemd5` for the filesystem backend (it is automatically
enabled for the GCS storage backend)

## 2021-05-02 unftp v0.12.9

_tag: v0.12.9_

- Added Mutual TLS support with the addition of the `--ftps-client-auth` and `--ftps-trust-store` arguments.
- The JSON authentication method (`--auth-json-path`) now supports encryption through
[PBKDF2](https://tools.ietf.org/html/rfc2898#section-5.2) encoded passwords. See the
- The JSON authentication method (`--auth-json-path`) now supports encryption through
[PBKDF2](https://tools.ietf.org/html/rfc2898#section-5.2) encoded passwords. See the
[unftp-auth-jsonfile](https://docs.rs/unftp-auth-jsonfile/0.1.1/unftp_auth_jsonfile/) documentation for an example.
Loading

0 comments on commit b76ec5e

Please sign in to comment.