Add prospective release notes
@@ -66,6 +66,72 @@ simplify the code.
From the 2.x series only Python 2.6 and 2.7 are supported.
From the Python 3.x series all versions from 3.2 onward are supported.
+Code cleaned.
+Tests renamed and more organised.
+Generally Flake 8 complient.
+Fewer special cases for ancient versions of Python.
+
+The row length is checked when writing PNG files.
+Previously it was possible to write badly formed PNG files
+by passing in rows of the wrong length.
+
+`pHYS` chunk is now processed.
+
+The `Writer()` interface now supports source pixels
+that have a different bitdepth for each channel.
+To exploit this, pass in a tuple for the bitdepth argument.
+
+Ancillary tools regularised and simplified.
+
+`pripamtopng` command line tool converts NetPBM PNM/PAM files to PNG.
+Previously `png.py` did this.
+Note that only one input file is converted,
+if you have intensity and opacity in separate files,
+you have two options:
+either use `pamstack` to convert them into a single PAM file and
+convert that, or
+convert each file to PNG, then use `priweavepng` to weave them together.
+Both will work.
+
+`pripngtopam` command line tool converts PNG to NetPBM PNM/PAM file.
+Previously `png.py` did this.
+
+`python -m pngsuite` is now a command line tool to
+write various images from the PNG suite of test images.
+Previously this was possible using `gen`.
+
+`priweavepng` command line tool performs channel extraction across
+multiple images.
+This is a more general version of `pipstack` (which has been removed),
+and is inspired by `pamstack` from NetPBM.
+
+The `--interlace` option available on many previous tools is
+now only available on `priweavepng`,
+making it the preferred tool for generating interlaced PNGs.
+
+`pripngchunk` command line tool adds and deletes chunks and
+"intelligently" knows about transparent, gamma, background chunks.
+It is the preferred tool for adding those chunks,
+which was previously possible using various options of other tools.
+
+`gen` now uses centre pixel sampling, which means that a 256 pixel
+wide 8-bit gradient takes on all possible 256 values.
+It also improves output for very small images.
+
+`gen` now uses `Fraction` for internal maths meaning that the stripe
+patterns are accurate and do not have loose pixels.
+
+`gen` now only outputs greyscale PNG files
+(but see next item for a feature to generate colour PNGs).
+
+`gen` can output multiple PNGs onto the same stream.
+This aligns well with a feature of `priweavepng` which
+accepts multiple PNGs from stdin.
+LA, RGB, and RGBA test images can be generated by
+piping `gen` into `priweavepng`:
+`gen RTL RTR RBR | priweavepng - - -`
+will generate an RGB PNG.
+
### Release 0.0.18
