Skip to content

Releases: scramjet/mpedn

1.5.1: Merge pull request #7 from gabrielmaldi/character-carthage

29 Jan 22:50
43ef454

Choose a tag to compare

Minor update to include MPEdnCharacter in the MPEdnFwk target.

Release 1.5

18 Jul 07:01

Choose a tag to compare

Please note this is a breaking change if you're using EDN containing characters.

It's become clear that [NSNumber numberWithUnsignedChar] is not the correct ObjC mapping for EDN characters: e.g. other libraries such as a serialisation library we've encountered can generate these for small numbers. There's no way in this case to say the value should be encoded as a number not a unicode character, as shown by:

(lldb) po [@'a' class]
__NSCFNumber

(lldb) po [@((int8_t)97) class]
__NSCFNumber

(lldb) po [@'a' objCType]
"c"

(lldb) po [@((int8_t)97) objCType]
"c"

In this release, EDN characters are mapped to MPEdnCharacter, which is a simple wrapper around a unichar value.

Release 1.4

28 Mar 01:27

Choose a tag to compare

Add support for the quote char ' in symbols (e.g. 'abc becomes MPEdnSymbol with name 'abc). This is not in the EDN spec, and doesn't make any sense outside of an evaluated environment and yet:

 user> (pr-str (clojure.edn/read-string "'a"))
 "'a"

Since Clojure can generate EDN like this, we now also accept it (but do not generate it).

Release 1.3

01 Mar 04:02

Choose a tag to compare

  • Fix parser error for the symbols +, -, and . appearing in compound contexts such as vectors, e.g. the expression [+]

Release 1.2

28 Sep 01:27
be7fc74

Choose a tag to compare

  • Support ISO 8601 dates

Release 1.1

10 Jul 01:08

Choose a tag to compare

  • Potentially breaking: MPEdnKeyword's are now compared like they are in Clojure: by namepace, then by name
  • Support 64-bit (signed integer) precision integers on 32-bit devices
  • Implement NSSecureCoding for keywords, symbols, and tagged values
  • Add useSpaceAsSeparator option to MPEdnWriter
  • Add <>:# as valid characters in symbols

Release 1.0.4

08 Nov 04:12

Choose a tag to compare

Add support for "#" and ":" in keywords to agree with EDN spec.

Release 1.0.3

17 Oct 23:13
48f836c

Choose a tag to compare

Generate a static library in the framework target. (via @gabrielmaldi).

Release 1.0.2

31 Aug 02:14
85a3896

Choose a tag to compare

Add shared library framework target to support Carthage (thanks @gabrielmaldi).

Release 1.0.1

18 Jun 03:24

Choose a tag to compare

Only minor changes in this release. Add shared Xcode schema for Carthage.