# StreamGzip
[](https://github.com/ne-sachirou/stream_gzip/actions)
[](https://coveralls.io/github/ne-sachirou/stream_gzip)
[](https://hex.pm/packages/stream_gzip)
[](https://hexdocs.pm/stream_gzip/)
[](https://hex.pm/packages/stream_gzip)
[](https://github.com/ne-sachirou/stream_gzip/blob/master/LICENSE)
[](https://github.com/ne-sachirou/stream_gzip/commits/master)
Gzip or gunzip a stream.
## Installation
Add `:stream_gzip` to your list of dependencies in `mix.exs`:
```elixir
def deps do
[
{:stream_gzip, "~> 0.4"}
]
end
```
## Usage
Gunzip:
```elixir
"x.gz"
|> File.stream!
|> StreamGzip.gunzip
|> Enum.into("")
```
Gzip:
```elixir
"x"
|> File.stream!
|> StreamGzip.gzip
|> Stream.into(File.stream! "x.gz")
|> Stream.run
```
## Copyright and License
Copyright (c) 2017 ne_Sachirou
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.