Permalink
Commits on Nov 3, 2016
  1. Give the README a flatter header structure

    committed Nov 3, 2016
  2. Remove Gitter badge as I don't use it

    committed Nov 3, 2016
  3. Some updates to README for 4.0.4 release

    committed Nov 3, 2016
  4. Add draft NEWS entry for 4.0.4 release

    committed Nov 2, 2016
  5. Reject invalid UTF-8 byte sequences & unicode code points

    Gosh! That was a merry chase. There's a bit of duplication here, but in the spirit of "first make it work..." I'm happy with it. It addresses:
    
    - flat-out illegal byte values
    - missing continuation bytes
    - unexpected continuation bytes
    - overlong encodings
    - invalid code points
    
    c.f. https://en.wikipedia.org/wiki/UTF-8
    
    I wish to thank Nicolas Seriot for reporting #219 which led to this learning opportunity. After 9 years of calling itself a "strict" JSON parser SBJson finally does UTF-8 validation 😂
    committed on GitHub Nov 3, 2016
Commits on Nov 2, 2016
  1. Make hex codes in errors more consistent, and without casts

    committed Nov 2, 2016
  2. Reject code points in range 0xD800-0xDFFF and over 0x10FFFF

    These are the so-called surrogate pairs, and any code points not
    encodable in UTF-16.
    
    c.f. https://en.wikipedia.org/wiki/UTF-8#Invalid_code_points
    committed Nov 2, 2016
  3. Reject illegal UTF-8 overlong encoding

    These are UTF-8 byte sequences that uses more bytes than necessary to
    encode their Unicode code point, e.g. using a 4-byte sequence where a
    3-byte sequence would do.
    
    As far as I understand this is only possible for 3- and 4-byte sequences
    starting with E0 and F0, hence only those code paths check for it.
    
    c.f. https://en.wikipedia.org/wiki/UTF-8#Codepage_layout
    committed Nov 2, 2016
  4. Fix crash when encountering illegal UTF-8 bytes

    This change throws an error for any of the flat-out illegal UTF-8 bytes
    noted in https://en.wikipedia.org/wiki/UTF-8#Codepage_layout
    committed Oct 30, 2016
  5. When expecting parser errors, report files that unexpectedly parses

    committed Nov 2, 2016
  6. Indentation fix

    committed Nov 2, 2016
  7. Report which test file produces a crash rather than a stacktrace

    committed Oct 31, 2016
  8. Remove assertion about number of tests run

    This causes no end of conflicts when adding tests (especially with
    multiple active branches). The aim was to ensure tests were not silently
    failing, but I believe xcodebuild handles that now and also codecov
    alerts me to code coverage dropping, which would indicate tests not
    runnin properly.
    committed Nov 2, 2016
Commits on Nov 1, 2016
  1. Rename methods for clarity

    committed Oct 31, 2016
Commits on Oct 30, 2016
  1. Add passing test for UTF-8 with BOM

    I got a bug report saying this caused a crash in 4.0.1, but I am unable
    to reproduce it as this test shows.
    committed Oct 30, 2016
  2. Adding passing tests re: Issue 215

    This is to demonstrate that I cannot reproduce the error reported in issue 215.
    committed Oct 30, 2016
  3. Add .editorconfig and fix indentation (#227)

    Also introduce more linebreaks into some long function signatures
    committed on GitHub Oct 30, 2016
Commits on Oct 29, 2016
  1. Recreate Xcode project & targets & change to a "more traditional" rep…

    …o layout
    
    Hopefully this will lower the barrier to contribution for people.
    
    Upgrade to settings recommended by Xcode 8.1. As the test targets no
    longer use a precompiled header, we have to import the XCTest header.
    
    We also add TestData as a file reference, to avoid having so many
    references to test data files in the Xcode project file. (Smaller
    project file -> less merge conflicts.) We need to tweak tests slightly
    to add the TestData directory to the path, but I prefer that to having
    so many references.
    
    Finally update the TravisCI build job to work with the two new targets.
    committed Oct 28, 2016
Commits on Oct 27, 2016
  1. Changes suggested by Xcode 8

    committed Oct 26, 2016
  2. Belatedly add NEWS for 4.0.3 release

    committed Oct 27, 2016
  3. Attempt at making iOS tests pass under Travis (#223)

    committed on GitHub Oct 27, 2016
Commits on Jul 7, 2016
  1. Merge pull request #216 from hotbott/master

    Add dynamic framework target (Carthage)
    committed on GitHub Jul 7, 2016
Commits on Jul 5, 2016
  1. Adjust Travis CI configuration (#1)

    * Adjust Travis CI configuration
    hotbott committed on GitHub Jul 5, 2016
Commits on Jul 4, 2016
  1. Rename Carthage Mac target

    hotbott committed Jul 4, 2016
Commits on Jul 1, 2016
  1. Update README.md

    hotbott committed Jul 1, 2016
  2. Add Carthage iOS target

    hotbott committed Jul 1, 2016
Commits on Sep 9, 2015
  1. Merge pull request #211 from stig/add-repostatus

    Add repo status to README
    committed Sep 9, 2015
  2. Add repo status to README

    committed Sep 9, 2015
Commits on Jul 24, 2015
Commits on Jul 23, 2015
  1. Merge pull request #208 from stig/make-variable-private

    Make variable private
    committed Jul 23, 2015
  2. Add codecov badge to README

    committed Jul 23, 2015