travitch / persistent-vector

Persistent vectors for Haskell based on array mapped tries
BSD 3-Clause "New" or "Revised" License
27 stars 4 forks source link

Release 0.2 #30

Closed travitch closed 4 years ago

travitch commented 4 years ago

I'm preparing an interim release to fix the slicing bugs. I anticipate more changes (potentially some breaking) in future releases.

@treeowl Do you have any objections to releasing in the current state? I put the slicing primitives back in their inefficient forms to preserve API compatibility. I wrote up a changelog (which is mostly about your changes).

treeowl commented 4 years ago

I'd like to fix #27 first, if you don't mind.

travitch commented 4 years ago

Sure, no problem

treeowl commented 4 years ago

You have an open PR for that, and to make splitting eager. The latter might be controversial, but I think I prefer it that way.

travitch commented 4 years ago

Thanks! The improved Eq and Ord are much more sensible. I think I agree on the splitting - this structure is supposed to be pretty firmly on the strict side. I'll just document the strictness. If it becomes a problem we can always change it (or offer two variants).

treeowl commented 4 years ago

I think you should reinstate testing with old GHC versions for this release. I've gone to too much trouble making things backwards compatible to have that potentially be wasted. Let's wait till the next release to drop support for old stuff.

travitch commented 4 years ago

Okay. I turned travis-ci back on. It isn't easy to go before 7.10 in Github Actions (though we could do it).

treeowl commented 4 years ago

Like I said, I think we should just get everything tested once more, make a release, and then dump everything before 7.10.

treeowl commented 4 years ago

I think it should be ready now.

travitch commented 4 years ago

Thanks - I released 0.2 with various correctness fixes. This makes me feel a lot better about what is out there and it seems like a good basis for further development. I'm looking forward to factoring out the tail as a separate data type.