Changelog

Releases

  • 1.0 – August 6, 2008 (Initial release to the public.)
  • 1.2 – Nov 23, 2008 (Upgrade Notes from 1.0 to 1.2) (Original product page)
  • 2.0a Jan 30, 2009 (E-mail distribution)
  • 2.0a Mar 4, 2009 (E-mail distribution)
    • Fixed: Cleanup routine can cause bottleneck on GetFiles() – fix so that Directory.GetFiles() only happens at startup and when items are added. Only affects sites with slow filesystems (or without filesystem caching), and with thousands of images.
    • Fixed: imagecache/ is not protected when AllowURLRewriting is enabled

      http://localhost/resize(40,40)/imagecache/1639776677.jpg

      bypasses it. Added protection in the HttpModule.

    • Fixed: Potential issue in Quantizer.cs that may cause lines in GIF output.
    • Fixed Maxwidth/maxheight not getting picked up.
    • Fixed: Custom crop coordinates at 0 were being applied in the negative coordinate zone. Fixed so x1,y1 weren’t affected, but setting x2 and y2 to 0 is bottom-right relative.
    • Changed flip to be after all operations, and added sourceFlip to replace its behavior.
    • Added -ignoreicc parameter and made ICC reading the default. ICC profiles are not written out – browser do not support them.
  • 2.0b May 16, 2009 (Upgrade notes from 1.2 to 2.0)
    • Fixed: Incorrect aspect ratio issue if both maxwidth, width, and height are specified.
    • Fixed: UNC hosted websites are now supported.
    • Added DisableCacheCleanup command, and made MaxCachedImages < 0 behave the same as DisableCacheCleanup=true
    • Fixed: rounding error that could cause a pixel line on the right and/or bottom sides of the image. Rare floating point rounding error in GDI native code. Added code to force rounding to be consistent.
  • 2.0rc1 May 21, 2009 (Upgrade notes from 1.2 to 2.0)
    • Fixed: Transparency is preserved more reliably with GIF files. Certain GIF files were losing transparency because the way the color palette was constructed.
    • Fixed: .tif is now a supported input extension… previously only .tiff and .tff were allowed.
    • Added WatermarkSettings.cs class for watermarking. Easy to extend for your own use.
    • Converted ImageManager from a Static class to a normal class with a getBestInstance() static method. Allows easy plugin creation for ImageManager.
    • Added support for ?frame=1-x and ?page=1-x. You can now select frames from GIF images and pages from TIFF files. Removed ?time
    • Hashes are now SHA-256 instead of .NET 32-bit. They are base-16 encoded. This results in longer file names, but astronomically low chances of hash collisions.
    • Fixed upgrade notes link in upgrade notes.txt
  • 2.0rc2 Jun 3, 2009 (Upgrade notes from 1.2 to 2.0)
    • Fixed: Extremely rare bug where rounding causes Bitmap to be initialized with a dimension of 0, and causes a Parameter exception.
      Ocurred when resizing an image to < 2px in height or width (usually happens with 2×1000 size images, etc).
      Added regression test for 500×2 image resized to 100px wide.
    • Fixed: Typo (missing else) in SaveToNonSeekableStream. This method is for extensibility, and is not used by the Resizer directly.
      This method is now tested and part of the Regression tests (HandlerTest.ashx).
  • 2.1b Nov. 13, 2009 (Upgrade notes from 2.0 to 2.1b)
    • Fixed: Fixed elusive performance bug in DiskCache that caused directory listings to run every image request.
    • Added: GIF/PNG dithering support!
    • Added: Zero-IIS-configuration installation mode! No wildcard mapping needed. Syntax: “image.jpg.axd?width=500″
    • Fixed: All requests are forced to pass through the UrlAuthorizationModule now. Previously, any URL rewriting (like customfolders.cs) caused URL auth rules to be circumvented. This was documented behavior, but a secure solution has now been found.
    • Added: DisableCustomQuantization setting to allow GIFs to be generated on servers where the Marshal class is prohibited.
    • Added: PerfTests project to run benchmarks on the image resizing and encoding code.
    • Added: ImageManager.BuildImage now accepts an HttpPostedFile instance for resizing, making upload and resize simple. Sample project included.