teardown: Build safe and composable teardown sub-routines for resources

[ library, mit, system ] [ Propose Tags ]

The teardown library allows you to reliably execute cleanup sub-routines for allocated resources. When a program is initialized, it:

  • Ensures that teardown sub-routines are executed exactly once

  • Ensures that if errors occur on the execution of a Teardown sub-routine, the error does not propagate to others; bulkheading failure on cleanup.

  • Requires every sub-routine to be documented at creation time; thus helping tracing your application structure.

  • Allows tracing the teardown of your application, how is structured, how much time it takes to execute, and what component (if any) failed to finalize.


[Skip to Readme]

Modules

[Index] [Quick Jump]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.0.0.1, 0.0.0.2, 0.1.0.0, 0.1.0.1, 0.2.0.0, 0.3.0.0, 0.4.0.0, 0.4.1.0, 0.5.0.0, 0.5.0.1
Change log CHANGELOG.md
Dependencies base (>=4.8 && <5), prettyprinter (>=1.1), rio (>=0.0.0.0), typed-process (>=0.1.0.0), unliftio (>=0.2.4.0) [details]
License MIT
Copyright © 2017, 2018 Roman Gonzalez
Author Roman Gonzalez
Maintainer open-source@roman-gonzalez.info
Category System
Home page https://github.com/roman/Haskell-teardown#readme
Bug tracker https://github.com/roman/Haskell-teardown/issues
Source repo head: git clone https://github.com/roman/Haskell-teardown
Uploaded by RomanGonzalez at 2019-01-30T17:27:19Z
Distributions LTSHaskell:0.5.0.1, NixOS:0.5.0.1, Stackage:0.5.0.1
Reverse Dependencies 4 direct, 0 indirect [details]
Downloads 5670 total (36 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2019-01-30 [all 1 reports]

Readme for teardown-0.5.0.1

[back to package description]

🗑️ teardown

Composable, idempotent & transparent application resource cleanup sub-routines

Table Of Contents

Installation

Hackage Stackage LTS Stackage Nightly

Make sure you include the following entry on your cabal file's dependecies section.

library:
  build-depends: teardown

Or on your package.yaml

dependencies:
- teardown

Documentation

Development

Build Status Github Hackage Dependencies

Follow the developer guidelines

License

Copyright (c) 2017, 2018 Roman Gonzalez

Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.

THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.