libunftp 0.18.8

Extensible, async, cloud orientated FTP(S) server library.
Documentation
# Contributing to libunftp

libunftp welcomes contribution from everyone in the form of suggestions, bug reports, pull requests, and feedback.

Please reach out here in a GitHub issue if we can do anything to help you contribute.

# Contributing to the bundled authentication or storage back-end implementations

Please find them in the crates directory. We welcome improvements to them.

# Developing your own authentication or storage back-end implementation

We would love to see many of these emerge on crates.io to create an ecosystem of usable FTP building blocks for Rust. If
we can ask that you prefix your crate names:

- unftp-auth-* for authentication implementations
- unftp-sbe-* for storage back-end implementations

Keeping this naming convention will allow a consistent and easy way for people to find libunftp extentions on crates.io

## Submitting bug reports and feature requests

When reporting a bug or asking for help, please include enough details so that the people helping you can reproduce the behavior you are seeing. For some tips on how to approach this, read about how to produce a [Minimal, Complete, and Verifiable example](https://stackoverflow.com/help/mcve).

When making a feature request, please make it clear what problem you intend to solve with the feature, any ideas for how libunftp could support solving that problem, any possible alternatives, and any disadvantages.

## Checking your code

We encourage you to check that the test suite passes locally and make sure that clippy and rustfmt are happy before 
submitting a pull request with your changes. If anything does not pass, typically it will be easier to iterate and 
fix it locally than waiting for the CI servers to run tests for you. Pull requests that do not pass the CI pipeline 
will not be merged.

For your convenience we've added a makefile target. Simply run `make pr-prep` before your pull request.