couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From kxepal <...@git.apache.org>
Subject [GitHub] couchdb-jiffy pull request: Update jiffy to 0.13.3
Date Tue, 13 Jan 2015 02:58:30 GMT
GitHub user kxepal opened a pull request:

    https://github.com/apache/couchdb-jiffy/pull/1

    Update jiffy to 0.13.3

    Propose to update jiffy up to 0.13.3
    
    Currently we have it on ~0.9.0 release. Since that time jiffy moved away from etap tests
to eunit, made a lot of work around scheduler to avoid collapses as like as many-many other
useful fixes and improvements.
    
    I removed Travis CI integration with standalone commit to not change the base history.
    
    /cc @davisp @rnewson 

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/kxepal/couchdb-jiffy update-jiffy-to-0.13.3

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/couchdb-jiffy/pull/1.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #1
    
----
commit 1e95a84b0ce8d5a86e3431e2095f245272c88662
Author: Paul Guyot <pguyot@kallisys.net>
Date:   2014-04-22T10:07:53Z

    Noncharacters U+FFFF and U+FFFE are not invalid.
    Properly decode them and accept to encode them.
    
    This was clarified by Unicode Technical Committee:
    http://www.unicode.org/versions/corrigendum9.html

commit d17c2cbdf27f182617ae1a4d676e313efceb0a2a
Author: Paul J. Davis <paul.joseph.davis@gmail.com>
Date:   2014-06-12T21:59:15Z

    Ignore erln8.config

commit c5c794eaf4fff4e5578fa1330c43c9fd7ba2ce73
Author: Paul J. Davis <paul.joseph.davis@gmail.com>
Date:   2014-06-12T21:58:34Z

    Allow the use of GDB/LLDB for debugging
    
    If the environment variable USE_GDB exists this plugin will pause
    before the EUNIT tests so that you can attach a debugger to the VM.

commit ec97d3d0c817a46345bf1d00ae27378d8a4f704b
Author: Paul J. Davis <paul.joseph.davis@gmail.com>
Date:   2014-06-13T21:20:19Z

    Silence the dev marker command

commit 79d24e9639e1c721e1a520da7e41715ea9907022
Author: Paul J. Davis <paul.joseph.davis@gmail.com>
Date:   2014-06-12T19:46:01Z

    Use a resource for the decoder structure
    
    This is ground work to allow Jiffy to yield back to the scheduler.
    Creating a decoder resource will allow for the necessary state to be
    carried across NIF function invocations.

commit 5ccff57adec8493d72005cc9b92756f69c4e33d4
Author: Paul J. Davis <paul.joseph.davis@gmail.com>
Date:   2014-06-12T21:58:19Z

    Use a resource for the encoder structure
    
    This is ground work to allow Jiffy to yield back to the scheduler.
    Creating an encoder resource will allow for the necessary state to be
    carried across NIF function invocations.

commit e9a102af7db11cafdba9f693c2eab2819efeb989
Author: Paul J. Davis <paul.joseph.davis@gmail.com>
Date:   2014-06-13T21:25:06Z

    Yield back to Erlang while decoding JSON
    
    This adds a configurable limit on the number of bytes consumed by
    the decoder before yielding back to the Erlang VM. This is to avoid the
    infamous scheduler collapse issues.
    
    The `jiffy:decode/2` now takes an option `{bytes_per_iter,
    pos_integer()}` that controls the yield frequency. The default value is
    2048.

commit bda503527d59b396a3bcca5db796fff230c8cabd
Author: Paul J. Davis <paul.joseph.davis@gmail.com>
Date:   2014-06-13T21:49:39Z

    Yield back to Erlang while encoding JSON
    
    This adds a configurable limit on the number of bytes produced by
    the encoder before yielding back to the Erlang VM. This is to avoid the
    infamous scheduler collapse issues.
    
    The `jiffy:encode/2` now takes an option `{bytes_per_iter,
    pos_integer()}` that controls the yield frequency. The default value is
    2048.

commit e668a4d5c60278d447e6ee0fa664c09d00dec3dd
Author: Paul J. Davis <paul.joseph.davis@gmail.com>
Date:   2014-06-13T22:05:48Z

    Minor README.md grammar correction.

commit 577d7e023122e2f11a83b5a2df45e69eb826a6fe
Author: Paul J. Davis <paul.joseph.davis@gmail.com>
Date:   2014-06-13T22:16:14Z

    Expand the README to cover the API more clearly

commit b96de951a2a9fabda48b4e3ed4958bf898cde913
Author: Paul J. Davis <paul.joseph.davis@gmail.com>
Date:   2014-06-16T21:17:51Z

    Initial support for the new map type
    
    This patch adds initial support for decoding/encoding to/from the new
    maps data type.
    
    I'd like to thank Jihyun Yu (yjh0502) for the initial versions of this
    work.

commit 25a301045f3094316a9569ea7355aaa5a428d4d8
Author: Paul J. Davis <paul.joseph.davis@gmail.com>
Date:   2014-06-17T01:55:19Z

    Be specific enough that =:= returns true
    
    Refactoring the test suite I found that the old etap was only as strict
    as the `==` operator where as EUnit uses the `=:=` operator.

commit 11ab9738102c84f7add66c281e4733949b909bf9
Author: Paul J. Davis <paul.joseph.davis@gmail.com>
Date:   2014-06-17T01:58:26Z

    Replace etap with eunit for the test suite
    
    Finally got off my butt and started using EUnit.

commit 4774f72d557c7c76355513e799e6e95eea496d50
Author: Paul J. Davis <paul.joseph.davis@gmail.com>
Date:   2014-06-17T02:06:22Z

    Enable Travis-CI builds

commit 46b315217d55c9b604add4e918c07f6feb6cb69b
Author: Paul J. Davis <paul.joseph.davis@gmail.com>
Date:   2014-06-17T02:09:49Z

    Make sure to update the config for Travis-CI

commit 5752dbc1fc2d9e5fd41c347b206295af8445764f
Author: Paul J. Davis <paul.joseph.davis@gmail.com>
Date:   2014-06-17T02:14:39Z

    Remove etap target from the Makefile

commit fb1b7e7201db1cb33dc1a03d50caab0ba55f3803
Author: Paul J. Davis <paul.joseph.davis@gmail.com>
Date:   2014-06-17T02:14:57Z

    Adjust timeouts to a sane cutoff

commit 4b3e4fb583f6ab95d3d3ce58d2816c6ef1ba64d1
Author: Paul J. Davis <paul.joseph.davis@gmail.com>
Date:   2014-06-17T02:19:23Z

    Include the Travis-CI status badge in the README

commit a232221c4249d31ea09dae730d556401392a98a6
Author: Paul J. Davis <paul.joseph.davis@gmail.com>
Date:   2014-06-17T02:23:39Z

    Silence unused function compiler warnings

commit eb70deb8317cb04d09eed5a298123e6f6d00d6e3
Author: Paul J. Davis <paul.joseph.davis@gmail.com>
Date:   2014-06-17T02:39:49Z

    Fix timeouts for short doubles
    
    Timeouts apparently don't actually work unless you use a test generator.
    Which makes sense in hindsight.

commit c45f312b501961eb2167973f0e74ce9faad8b656
Author: Paul J. Davis <paul.joseph.davis@gmail.com>
Date:   2014-06-17T02:52:32Z

    Include documentation on the maps feature

commit 03f2b306bc320230b9ecdc47a6961131059a0523
Author: Paul J. Davis <paul.joseph.davis@gmail.com>
Date:   2014-06-17T07:57:50Z

    Update optimization flags

commit b3ef636af2c7a42e9f8ae28d5cdbe67b104ab184
Author: Paul J. Davis <paul.joseph.davis@gmail.com>
Date:   2014-06-17T07:58:27Z

    Be explicit on the stdlib dependency

commit 307c3838214bdf78afcfc2becbf65229daa99cd8
Author: Paul J. Davis <paul.joseph.davis@gmail.com>
Date:   2014-06-17T19:48:40Z

    Disable strict aliasing
    
    This is motivated by issue #60 to see if we can get away with `-O3`
    while still handling the cast of a `Decoder**` to `void**`.
    
    Fixes #60

commit 99867af6e9bfec6bb80b10524d4dc27e39150dee
Author: Paul J. Davis <paul.joseph.davis@gmail.com>
Date:   2014-06-20T20:30:17Z

    Avoid uint64 for 32bit compatibility
    
    Rather than worry about truncation casting from a possibly 64bit value
    down to a possibly 32bit size_t we just limit the total bytes per
    invocation to 4G using an unsigned integer.
    
    Thanks to @seriyps for the report.
    
    Fixes #61

commit 2dbf89f51c547914e994f51457140df9e9a1ca83
Author: Stanislav Vishnevskiy <vishnevskiy@gmail.com>
Date:   2014-08-19T18:44:49Z

    Improved Elixir compatibility
    
    This implements the `use_nil` option as discussed on issue #64. Passing
    the atom `use_nil` as an option to both encode and decode will replace
    the atom `null` with `nil` when decoding and encode `nil` as `null` when
    encoding values.
    
    Fixes #64
    Fixes #68

commit 5eb499d73e52be6518b9e3e705be220788529ede
Author: Paul J. Davis <paul.joseph.davis@gmail.com>
Date:   2014-08-23T10:49:12Z

    Tweak the nil encoding logic
    
    I must've managed to miss the PR update from Stanislav the other day
    when merging this.

commit f9095c52581867938e1ea1eb695235994f585e89
Author: Paul J. Davis <paul.joseph.davis@gmail.com>
Date:   2014-08-23T10:47:59Z

    Improved encoder errors
    
    This updates encoder errors to report the actual Erlang value that
    caused the error. This should make it easier to debug errors when
    generating JSON.

commit 5cd89c1eda3801bdef790b1e7c0e09259332c0fc
Author: Paul J. Davis <paul.joseph.davis@gmail.com>
Date:   2014-08-23T12:20:37Z

    Persist the `val` register across yield
    
    The `val` variable is a register value that we need to be able to return
    at any time from `decode_iter`. If it happened that a yield was
    triggered while processing trailing whitespace the lack of persistance
    caused decode to return a term intialized from a random integer value.
    Obviously the Erlang VM did not enjoy this.
    
    Thanks to @michalpalka for the report.
    
    Fixes #66

commit b6afb1414e10edd5c579bf4affbde0e5b7d85737
Author: Paul J. Davis <paul.joseph.davis@gmail.com>
Date:   2014-09-19T19:28:55Z

    Remove unnecessary inclusion of proper.hrl

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

Mime
View raw message