slack-gc

Crates.ioslack-gc
lib.rsslack-gc
version1.0.1
sourcesrc
created_at2018-07-21 17:33:57.781135
updated_at2018-07-21 19:41:49.292058
descriptionA barebones utility for cleaning up old slack file uploads
homepage
repositoryhttps://github.com/reynisdrangar/slack-gc
max_upload_size
id75382
size24,994
Reynisdrangar (reynisdrangar)

documentation

README

Slack Free-Tier Garbage Collector

Build Status Build status

Slack's free tier is wonderful if you have friends that have moved all over the world who still want to keep in touch. Unfortunately, though, their shared file storage is capped at 5GB and retention policies are only available to paying customers (totally understandable). Since I can't ask everyone I know to pay eight bucks a month to hang out, and I can't afford to pay for all of that myself, I wrote this little garbage collector to clean up files older than a configurable number of days using each user's "Legacy Token" for the Slack API.

Building

Everything ought to "Just go" with cargo, as you'd expect:

cargo test --all
cargo build --release --all

The only curveball here is that I generally expect you'll have clippy around, and rustfmt too. Commit messages are also expected to be in conventional style, which is enforced in CI on pull requests.

If you want to locally run clippy, you'll need it installed:

  • rustup install nightly
  • cargo +nightly install clippy

Contributing

Please format your commits with a conventional tag (feat/fix/chore), and expect me to squash them when I merge your PR. If it helps, feel free to rebase and rewrite history in your local branch until it makes sense.

The linter, and clippy, are configured to be pretty overproctective of this repo, in large part since I'm learning rust still too, and it helps me. That means Travis is also going to be pretty militant about failing out valid, but not idiomatic code. Please bear with me and play along.

Beyond that, know that this code is licensed MIT, and your contributions are a part of that whole. That means other people can make money from it, change it, or even repackage it under a new name if they'd like. I'd have released this to the public domain if that weren't such an anglocentric approach, so consider this choice of license "the freest thing I could come up with."

Know also that I've adopted the contributor covenant, a common code of conduct which requires that everyone in the orbit of this code behave with basic human decency toward one another. It also requires that as this project's maintainer, I promise to uphold it. The full text is in the top level of the repository.

Commit count: 0

cargo fmt