Prepare documentation for release

This commit is contained in:
Joshua Holmer 2016-03-03 14:11:35 -05:00
parent f8de1c8e44
commit 95f8827b41
5 changed files with 37 additions and 29 deletions

View file

@ -1,8 +1,6 @@
language: rust
rust:
- 1.6.0
- stable
- beta
- nightly
matrix:
allow_failures:
- rust: nightly

View file

@ -1,8 +0,0 @@
v 0.0.1 (unreleased)
- Initial alpha release
- Reduce color type
- Recompress with zlib
- Multithreading
- Strip headers
- Backup file before writing
- Write to stdout

8
CHANGELOG.md Normal file
View file

@ -0,0 +1,8 @@
v 0.1.0
- Initial beta release
- Reduce color type and bit depth
- Recompress with zlib
- Multithreading
- Strip headers option
- Backup file before writing option
- Write to stdout option

View file

@ -1,6 +1,6 @@
[package]
name = "oxipng"
version = "0.0.1"
version = "0.1.0"
authors = ["Joshua Holmer <jholmer.in@gmail.com>"]
[dependencies]

View file

@ -1,34 +1,34 @@
# OxiPng
[![Build Status](https://travis-ci.org/shssoichiro/oxipng.svg)](https://travis-ci.org/shssoichiro/oxipng)
[![Coverage Status](https://coveralls.io/repos/github/shssoichiro/oxipng/badge.svg?branch=master)](https://coveralls.io/github/shssoichiro/oxipng?branch=master)
## Overview
OxiPng is a PNG compression optimizer. **Note:** This package is not yet complete. DO NOT use on any files without backing them up first.
OxiPng is a lossless PNG compression optimizer.
In the typical use case, OxiPng recompresses PNG image files
losslessly and performs PNG integrity checks and corrections.
Future implementation of other features is planned.
**Note:** This package should be considered a beta. Although there are many tests in place,
there is still a chance of data loss or corruption. You should backup your files before
using this tool, unless you are very brave.
## History
If you encounter an issue, please report it via the GitHub issues tab. Include as many details
as possible.
OxiPng began as a completely rewrite of the OptiPNG project,
which is assumed to be dead as no commit has been made to it since 2013.
The name has been changed to avoid confusion and potential legal issues.
## Installing
The core goal of rewriting OptiPNG was to implement multithreading,
which would be very difficult to do within the existing C codebase of OptiPNG.
This also served as an opportunity to choose a more modern, safer language (Rust).
OxiPng can be installed from Cargo, via the following command:
```
cargo install oxipng
```
## Building
Building OxiPng can be done using the latest stable or nightly Rust with Cargo installed, as follows:
Alternatively, OxiPng can be built from source using the latest stable or nightly Rust:
```
git clone https://github.com/shssoichiro/oxipng.git
cd oxipng
cargo build --release
cp target/release/oxipng /usr/local/bin
```
Please note that zlib is a required build dependency. OxiPng should work with any 1.x version of zlib,
but you are advised to use the latest version (currently 1.2.8) for security and bug fixes.
@ -52,19 +52,29 @@ to give any extra compression gains and is not recommended.
PNG interlacing on any images that are processed. `-i 0` will remove interlacing from all
processed images. Not specifying either will keep the same interlacing state as the
input image. Note: Interlacing can add 25-50% to the size of an optimized image. Only use
it if you have a good reason.
it if you have a good reason. (*Not Yet Implemented*)
* Strip: Used to remove metadata info from processed images. Used via `--strip` or `-s`.
Can save a few kilobytes if you don't need the metadata.
More advanced options can be found by running `oxipng -h`.
## History
OxiPng began as a completely rewrite of the OptiPNG project,
which is assumed to be dead as no commit has been made to it since 2013.
The name has been changed to avoid confusion and potential legal issues.
The core goal of rewriting OptiPNG was to implement multithreading,
which would be very difficult to do within the existing C codebase of OptiPNG.
This also served as an opportunity to choose a more modern, safer language (Rust).
## Contributing
Any contributions are welcome and will be accepted via pull request on GitHub. Bug reports can be
filed via GitHub issues. If you have the capability to submit a fix with the bug report, it is
preferred that you do so via pull request, however you do not need to be a Rust programmer to
submit a bug report. Other contributions (such as improving documentation or translations)
are also welcome via GitHub.
contribute. Other contributions (such as improving documentation or translations) are also
welcome via GitHub.
## License