data.avl

Add hash tests and hash fixes for Clojure 1.6

Details

  • Type: Enhancement Enhancement
  • Status: Resolved Resolved
  • Priority: Minor Minor
  • Resolution: Completed
  • Affects Version/s: None
  • Fix Version/s: None
  • Component/s: None
  • Labels:
    None

Description

With the changes planned to hash functions in Clojure 1.6, it would be good to enhance data.avl so that it continues to work with Clojure 1.5.1, but is prepared to calculate hash functions on its data structures consistent with Clojure 1.6's changes, too.

Activity

Hide
Michał Marczyk added a comment - - edited

Thanks, I was planning to do that once Clojure releases an alpha with Murmur3. A first cut is available here:

https://github.com/clojure/data.avl/tree/3-hasheq

We could check *clojure-version* instead; we'll see what seems best once the API stabilizes.

Show
Michał Marczyk added a comment - - edited Thanks, I was planning to do that once Clojure releases an alpha with Murmur3. A first cut is available here: https://github.com/clojure/data.avl/tree/3-hasheq We could check *clojure-version* instead; we'll see what seems best once the API stabilizes.
Hide
Andy Fingerhut added a comment -

Patch davl-3-v1.diff is one way to update the hash function for Clojure 1.6. I have tested it with the latest Clojure master as of Feb 8 2014, plus the current patches for these tickets:

CLJ-1339, CLJ-1331, CLJ-1335, CLJ-1336, CLJ-1344

It would be best to wait until the patches for these have been applied, and see if any changes are made to them that would affect this patch.

Show
Andy Fingerhut added a comment - Patch davl-3-v1.diff is one way to update the hash function for Clojure 1.6. I have tested it with the latest Clojure master as of Feb 8 2014, plus the current patches for these tickets: CLJ-1339, CLJ-1331, CLJ-1335, CLJ-1336, CLJ-1344 It would be best to wait until the patches for these have been applied, and see if any changes are made to them that would affect this patch.
Hide
Michał Marczyk added a comment - - edited

Just applied your patch to master, plus, on top of it, a commit switching to the compile-if approach and a commit to remove reflection in the test suite. Thanks!

Show
Michał Marczyk added a comment - - edited Just applied your patch to master, plus, on top of it, a commit switching to the compile-if approach and a commit to remove reflection in the test suite. Thanks!
Hide
Michał Marczyk added a comment -

0.0.12-alpha1 is out.

Here's the announcement thread on the mailing list:

https://groups.google.com/d/msg/clojure/UBYwNRd956g/GVio8bpgWO4J

Show
Michał Marczyk added a comment - 0.0.12-alpha1 is out. Here's the announcement thread on the mailing list: https://groups.google.com/d/msg/clojure/UBYwNRd956g/GVio8bpgWO4J

People

Vote (0)
Watch (1)

Dates

  • Created:
    Updated:
    Resolved: