Skip to content

Latest commit

 

History

History
224 lines (168 loc) · 7.34 KB

CHANGELOG.md

File metadata and controls

224 lines (168 loc) · 7.34 KB

Changelog

[0.10.3] - 2022-11-15

Changed

  • Relaxed dry-core version constraint to allow use with 1.0.0.

[0.10.2] - 2021-03-03

Fixed

  • Added missing item 16 (Image: Master brand logo) to List 38.
  • Fixed keyword argument syntax to work on MRI 3.0.0.

[0.10.1] - 2020-02-13

Fixed

  • Bug in discount coded element that was preventing discount code from loading.

[0.10.0] - 2019-07-08

Changed

  • Rename gem from onix to cacofonix
  • Rename primary module namespace from ONIX to Cacofonix
  • Use Cacofonix::DTDs to set appropriate env vars before XML parsing; required for ONIX 2.1 DTDs to be properly loaded and related entities in source XML files to be respected
  • Address Fixnum->Integer and BigDecimal.new->BigDecimal deprecations
  • Require Ruby 2.5 or newer

Previous releases (as onix gem)

v0.9.1 (5th September 2011)

  • relax activesupport dependency to work with rails 3 or 3.1

v0.9.0 (14th April 2011)

  • switch back to the vanilla roxml gem. Ben is maintaining it again and he has merged in my bug fixes
  • clarify comments explaining encoding behaviour
  • Add options hash to ONIX::Reader. Only option at this stage is :encoding, which allows the user to override the assumed encoding of the input XML
  • API change, so new minor version

v0.8.5 (21st December 2010)

  • update packaging - use bundler and rspec 2.x
  • support normalising short tag files that include HTML tags

v0.8.4 (18th October 2010)

  • some small fixes to xml names from Tim
  • make all code lists available via the ONIX::Lists class

v0.8.3 (9th September 2010)

  • Fix for race condition in ONIX::Normaliser
    • thanks to pixelvixen for reporting
  • force roxml to be 3.1.6 or higher. Earlier versions misbehaved when monkey patching nokogiri

v0.8.2 (6th May 2010)

  • fix APAProduct#series and APAProduct#series=

v0.8.1 (5th January 2010)

  • Use nokogiri's support for transparent entity conversion when reading an ONIX file
  • Removed entity replacement from ONIX::Normaliser
    • the external dependency on sed made me uncomfortable, and it wasn't really necessary now that nokogiri can do it for us
  • Removed utf-8 normalisation from ONIX::Normaliser
    • nokogiri also handles this really cleanly and transparently. Regardless of the source file encoding, Nokogiri::Reader returns utf-8 encoded data
  • Add the release attribute to files we generate
    • it's optional in 2.1, but mandatory in 3.0. As we start to see 3.0 files in the wild it will help to have a rapid way to distinguish between them
  • Add ONIX::Reader#release - to detect the release version of files we read in

v0.8.0 (31st October 2009)

  • Replace LibXML dependency with Nokogiri. Nokogiri is under active development, has a responsive maintainer and is significantly more stable
  • Switch to ROXML 3.x
    • roxml also switched from libxml to nokogiri
    • roxml removed deprecated parts of it's API
    • should now avoid various conflicts with mongrel
  • Ensure APAProduct#price returns the first product price and ignores the price type

v0.7.8 (19th October 2009)

  • add support for additional elements (mostly series and audience related)
    • thanks tim

v0.7.7 (1st October 2009)

  • optimise sed usage in ONIX::Normaliser. huge speed improvement on large files.

v0.7.6 (21st September 2009)

  • provide access to the PackQuantity element

v0.7.5 (8th September 2009)

  • Don't raise an exception on malformed dates when reading files

v0.7.4 (2nd September 2009)

  • Expand ONIX::Normaliser
    • strip control chars
    • add encoding declaration to valid utf-8 files that aren't declared as such

v0.7.3 (19th August 2009)

  • Switch from java to xsltproc to convert short tag ONIX files to reference tags

v0.7.2 (19th August 2009)

  • Added ONIX::Normaliser class
    • for normalising various ONIX files into a form that makes them easy to process. Shouldn't be necesary to pre-process files like this, but I'm sick of trying to wrestle the libxml ruby bindings

v0.7.1 (24th June 2009)

  • Small tweak to ordering of elements in the Product group

v0.7.0 (17th June 2009)

  • try using LibXML for reader again
    • retrieving the ONIX version of the input file is currently disabled, as that seems to be the source of our instability
  • Various Ruby 1.9 compatability tweaks
    • add source file coding declarations. All source files are UTF-8
    • ONIX::Reader ensures all input data is converted to UTF-8
    • the ROXML based objects seem to forget the encoding when they're marshalled, so force string based attributes back to UTF-8

v0.6.7 (Unreleased)

  • add some accessors to the Title composite

v0.6.6 (Unreleased)

  • Forget the S on an element name

v0.6.5 (Unreleased)

  • Ruby 1.9 compat

v0.6.4 (Unreleased)

  • Add APAProduct#price

v0.6.3(Unreleased)

  • Bump ROXML dependency to 2.5.3 to get libxml-ruby 1.1.3 compatibility

v0.6.2 (Unreleased)

  • Fix a small typo in APAProduct

v0.6.1 (Unreleased)

  • Stopped using LibXMLs Reader class as the basis for our reader.
    • We were getting too many segfaults (even 1 is too many!)
    • until we resolve it, reverted to manual string parsing
    • This is a fairly major regression of functionality. For 99% of files it won't matter, but for some corner cases it will. ie UTF-16 encoded files
    • Will also be noticeably slower
    • Hopefully only a short term fix, until I work out what is going on with libxml

v0.6.0 (18th March 2009)

  • remove use of threads in ONIX::Reader
    • a producer/consumer pattern was useful in the REXML stream parsing days, but now LibXML's Reader binding provides a better alternative
    • API left unchanged, this was all under the hood
  • bump required ROXML version to 2.5.2

v0.5.1 (4th March 2009)

  • Fix a single letter typo

v0.5 (2nd March 2009)

  • Switch ROXML dependency from a patched version to vanilla
    • Vanilla ROXML now has all the features we need
    • This change should be transparent to ONIX gem users

v0.4.7 (9th December 2008)

  • Contributor sub elements should match the order specified in the DTD

v0.4.6 (2nd December 2008)

  • 2 new accessors on the contributor class - bio and corporate name

v0.4.5 (21st November 2008)

  • APAProduct wrapper should generate valid MediaFile composites

v0.4.4 (19th November 2008)

  • Added support for more elements from MarketRepresentation

v0.4.3 (11th November 2008)

  • Added support for AgentName and MarketPublishingStatus

v0.4.2 (1st November 2008)

  • Remove final remnants of REXML code
  • Minor reordering of elements to match DTD

v0.4.1 (UNRELEASED)

  • Added accessors to various product measurements. Height, weight, etc.
  • Reduced time for an ONIX::Reader class to initialise

v0.4.0 (28th October 2008)

  • Major rework: now based on ROXML instead of xml-mapping
    • Mostly API Compatible
    • StreamReader and StreamWriter renamed to Reader and Writer
    • ROXML is based on libxml, so things should be significantly faster

v0.2.7 (Unreleased)

  • Add line breaks after each product

v0.2.5 (Unreleased)

  • Make PublishingStatus a two_digit_node

v0.2.4 (Unreleased)

  • Initialise the media files array of a new product correctly

v0.2.3 (Unreleased)

  • Switch a few more fields over to TwoDigitNodes
  • Make the product availability field accessible from APAProduct

v0.2.2 (Unreleased)

  • Add a new nodetype (DateNode) for YYYYMMDD fields

v0.2.1 (Unreleased)

  • Add a new nodetype (TwoDigitNode) for two digit codes

v0.2.0 (16th July 2008)

  • Add support for reading and storing subject codes (BIC, BISAC, etc)

v0.1.0 (12th June 2008)

  • Initial Release