Switch branches/tags
Sereal-Path-4.004 Sereal-Path-4.003 Sereal-Path-4.002 Sereal-Path-4.001_004 Sereal-Path-4.001_003 Sereal-Path-4.001_002 Sereal-Path-4.001_001 Sereal-Path-0.014 Sereal-Path-0.013 Sereal-Path-0.011 Sereal-Path-0.010 Sereal-Path-0.009 Sereal-Path-0.008 Sereal-Path-0.007 Sereal-Path-0.004 Sereal-Path-0.003 Sereal-Path-0.002 Sereal-Path-0.001 Sereal-Merger-0.001 Sereal-Encoder-4.005 Sereal-Encoder-4.004 Sereal-Encoder-4.003 Sereal-Encoder-4.002 Sereal-Encoder-4.001_003 Sereal-Encoder-4.001_002 Sereal-Encoder-4.001_001 Sereal-Encoder-3.015 Sereal-Encoder-3.014_002 Sereal-Encoder-3.014_001 Sereal-Encoder-3.014 Sereal-Encoder-3.012 Sereal-Encoder-3.011 Sereal-Encoder-3.010 Sereal-Encoder-3.009 Sereal-Encoder-3.008 Sereal-Encoder-3.007 Sereal-Encoder-3.006_007 Sereal-Encoder-3.006_006 Sereal-Encoder-3.006_005 Sereal-Encoder-3.006_004 Sereal-Encoder-3.006_003 Sereal-Encoder-3.006_002 Sereal-Encoder-3.006_001 Sereal-Encoder-3.006 Sereal-Encoder-3.005_005 Sereal-Encoder-3.005_004 Sereal-Encoder-3.005_003 Sereal-Encoder-3.005_002 Sereal-Encoder-3.005_001 Sereal-Encoder-3.005 Sereal-Encoder-3.004 Sereal-Encoder-3.003_004 Sereal-Encoder-3.003_003 Sereal-Encoder-3.003_002 Sereal-Encoder-3.003_001 Sereal-Encoder-3.003 Sereal-Encoder-3.002_002 Sereal-Encoder-3.002_001 Sereal-Encoder-3.002 Sereal-Encoder-3.001_012 Sereal-Encoder-3.001_011 Sereal-Encoder-3.001_009 Sereal-Encoder-3.001_008 Sereal-Encoder-3.001_007 Sereal-Encoder-3.001_006 Sereal-Encoder-3.001_005 Sereal-Encoder-3.001_004 Sereal-Encoder-3.001_003 Sereal-Encoder-3.001_002 Sereal-Encoder-3.001_001 Sereal-Encoder-3.001 Sereal-Encoder-3.000_004 Sereal-Encoder-3.000_003 Sereal-Encoder-3.000_002 Sereal-Encoder-3.000_001 Sereal-Encoder-2.070_103 Sereal-Encoder-2.070_102 Sereal-Encoder-2.070_101 Sereal-Encoder-2.12 Sereal-Encoder-2.11 Sereal-Encoder-2.10 Sereal-Encoder-2.09 Sereal-Encoder-2.08 Sereal-Encoder-2.07_01 Sereal-Encoder-2.06 Sereal-Encoder-2.04 Sereal-Encoder-2.03 Sereal-Encoder-2.02 Sereal-Encoder-2.01 Sereal-Encoder-2.00_03 Sereal-Encoder-2.00_02 Sereal-Encoder-2.00_01 Sereal-Encoder-0.37 Sereal-Encoder-0.36 Sereal-Encoder-0.35 Sereal-Encoder-0.34 Sereal-Encoder-0.33 Sereal-Encoder-0.32 Sereal-Encoder-0.31 Sereal-Encoder-0.30
Nothing to show
Commits on Sep 3, 2012
  1. Ignore more cloned files

    tsee committed Sep 3, 2012
  2. Move shared things to the shared subdirectory

    tsee committed Sep 3, 2012
    This seems necessary for dist/manifest building.
  3. pass tests on 5.8.5

    demerphq committed Sep 3, 2012
    Regexp logic was in the wrong place, and we werent created hashes with shared keys properly
  4. Fix compiler warnings

    tsee committed Sep 3, 2012
  5. Always call av_extend - the 8 default size applies to hashes only

    tsee committed Sep 3, 2012
    We've been assuming that by default, arrays have an underlying C array
    of 8 SVs, but that's not true, as far as I can tell. sv.c has that logic
    for hashes, but not for arrays. So we always call av_extend - even
    though it could be argued that it shouldn't be called for length=0
    arrays, but the extra branch is probably not worth that comparatively
    rare special case.
Commits on Sep 2, 2012
  1. Unroll av_fetch()

    demerphq committed Sep 2, 2012
    If the array is not magical then we can just iterate over the C level array.
  2. further tweaks - make weakref logic do less work

    demerphq committed Sep 2, 2012
    this is tricky, adding expect_false() in places where we expect false seems to slow
    things down. be careful to benchmark
  3. decode the classname before the reference it blesses

    demerphq committed Sep 2, 2012
    It is easier on the encoder to encode the classname before
    it encodes whatever is blessed. So we swapped them around.
Commits on Sep 1, 2012
  1. Avoid resetting persistent decoder flags

    tsee committed Sep 1, 2012
    Some (most, right now) flags in the decoder are "static", IOW, they are
    not intended to be reset for each decoder run. For example, one of the
    flags marks the difference between a decoder that will be freed soon
    versus a decoder that will be reused.
    We were unconditionally unsetting all flags in various cleanup places.
    That was bad. Instead, we just unset all flags that pertain to the
    current decoder run.
Commits on Aug 31, 2012
  1. apparently we have to manually SvREFCNT_dec after we pop

    demerphq committed Aug 31, 2012
    Which I find weird. Could this be version dependent? It IS the case
    on 5.8.5.
  2. Fix unrolled newRV_noincs for old perls

    tsee committed Aug 31, 2012
    Until (exclusive) 5.12, we used to have an actual SV type SVt_RV. Now
    it's the same as SVt_IV, but we need to explicitly upgrade to the right
    type depending on the perl version.
  3. rework decoder logic so top level routines are wrapped

    demerphq committed Aug 31, 2012
    this allows a lot of subs  to marked inline

    tsee committed Aug 31, 2012
  5. More documentation for Encoder and Decoder

    tsee committed Aug 31, 2012
    Encoder isn't too bad now (including documentation for all three public
    functions), but the Decoder docs need a lot of work.
    We'll have to think carefully about how to implement protocol-level
    compatibility and how to expose it to Perl. Also, should we have a
    protocol spec exposed as POD somewhere?
  6. I give in: No shiny new typemap tools

    tsee committed Aug 31, 2012
    Too painful to build packages for them on our old, shit 5.8.5.