Skip to content

v1.2.0 Release Notes

adamgit edited this page Jun 4, 2014 · 3 revisions

SVGKit version 1.2.0 Changelist

(all commits: https://github.com/SVGKit/SVGKit/commits/v1.2.0)

(for latest download / source, c.f. Versions)

  • Fixed "rotate" transform type.
  • fixed an bug when parse color with #000 format
  • Specify GNU++11 and non-ARC in the CocoaPods specs.
  • Fixed warnings from static analyzer.
  • Fixed an exception when view "imageWithSinglePointPath" in iOS demo project.
  • better handling for null rects
  • Fixed some memory warnings from static analyzer
  • Fixed some warnings
  • Fixed import of QuartzCore for case-sensitive disks
  • Changed deployment target from iOS 7.0 to 4.0 to match the rest of the SVGKit project.
  • Changed #ifdef's for ENABLE_GLOBAL_IMAGE_CACHE_FOR_SVGKIMAGE_IMAGE_NAMED to work as expected.
  • FIXED: added workaround for Apple's CALayer.h having a property that is iOS6+ only
  • FIXED: layer Identifier was not being cloned when CALayers were cloned
  • FIXED: bug in new asynch loading code
  • FIXED: Demo now shows full parse-time stats to width of scroll area, instead of truncating at edge of screen
  • FIXED: 64bit compatibility at datatype / compiler level. Needs testing on 64bit hardware (but I don't have any)
  • Made project build for all architectures (include arm64)
  • Fixed some memory leaks that the clang analyzer pointed out
  • Fixed useElement.y useElement.width, useElement.height assignments.
  • Fixed: iPhone 5s has the same density as 5 and 4
  • Fixed: Not include unnecessary files in SVGKImage.h so app can contain only it.
  • Skipping cache purge and log message when cache is empty
  • Improved the handling when the CSS file isn't found by the usual methods.
  • Improved CSS style rules to parse individual selectors, added support for element and identity selectors.
  • Improved external CSS loading to first try relative paths.
  • Fixes CGPathAddRoundedRect compile error on iOS 7.
  • FIXED: fill-opacity being ignored when no fill specified (fixed #115)
  • FIXED: bug in DOM's NamedNodeMap that meant .length could easily crash, or return incorrect values
  • FIXED: renamed a parameter that prevented Objective-C++ files from linking SVGKit

Performance:

  • IMPROVED: greatly reduced the memory allocations during parsing
  • ADDED: autoreleasepool for Apple's memory-wasting Scanner method
  • Improved the performance and memory usage of parsing individual selectors.

Documentation:

  • Minor doc improvements
  • REFACTORED: cleaned up the Demo source to make it clearer the various tricks going on for people to copy/paste to their own code
  • Fixed odd demo scenario that loads a layered image with a nil decoder
  • Improved format and location of populateFromImage.
  • ADDED: code to do a fully legal export of validating SVG files direct from the in-memory representation

Features:

  • ADDED: SVGKParser SHOULD now be safe to run multiple copies simultaneously on different thread
  • ADDED: SVGKParser 'parseSynchronously' can now be cancelled ASYNCHronously from other threads (experimental - more testing needed)
  • ADDED: Asynchronous parsing of SVGKImage's
  • ADDED: approximate progress-bar for loading large SVGKImage's (estimates by looking at how many bytes have been read from the file and XML parsed)
  • ADDED: a simple implementation of intrinsicContentsSize. This is useful if using the image views with Auto layout.
  • Updated podspec so it will actually build when added as a pod to a project.
  • REFACTORED: exporting SVG's to NSData and UIImage is now much cleaner
  • ADDED: measurements of PARSE time and RENDER time to the Demo-iOS project, per file
  • Added support for parsing external CSS stylesheets.
  • Changed initWithCoder: to call the super implementation, allowing position, size, etc. to be preserved when using an SVGK*ImageView in a NIB file.
  • IMPROVED: [SVGKImage imageNamed:] will now search the app/user's Documents directory as well as the bundle, making it extremely useful for apps that allow user-edited SVG files
  • ADDED: Full support for SVG preserveAspectRatio='meet' (xMinYMin, xMidYMid, etc). NB: no support for SLICE yet
  • ADDED: option on newCopyPositionedAbsolute to get all the sublayers of a CALayer, as well as the layer itself
  • UPDATED: set lib version to 1.2.0pre, to avoid confusion when debugging

Contributors:

  • Adam Martin
  • florianreinhart
  • David Gileadi
  • Martin M Reed
  • rrbrambley
  • flemingm
  • cjhanson
  • pyro2927
  • stephenhouser
  • amayers
  • Abizern
  • djmadcat
  • xlc
  • rhcad
  • andmar1x
Clone this wiki locally