Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: tinylib/msgp
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v1.3.0
Choose a base ref
...
head repository: tinylib/msgp
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v1.4.0
Choose a head ref
  • 8 commits
  • 39 files changed
  • 5 contributors

Commits on Jun 23, 2025

  1. Configuration menu
    Copy the full SHA
    3773182 View commit details
    Browse the repository at this point in the history

Commits on Jun 24, 2025

  1. Add Reader/ReadBytes fuzz tests and limits (#394)

    * Add Reader/ReadBytes fuzz tests and limits
    
    * Fix crash in ReadTimeBytes
    * Limit map/array size on ReadIntfBytes
    * Expose `SetMaxRecursionDepth/GetMaxRecursionDepth` to manage max recursion depth.
    * Expose `SetMaxElements/GetMaxElements` to limit array, bin, map and extension sizes.
    * Expose `SetMaxStringLength/GetMaxStringLength` to limit string/map key sizes.
    
    All of these will allow stricter control over decoding memory usage.
    
    Bumps minimum version to Go 1.22
    
    * Upgrade linter, fix issues reported.
    * Upgrade tinygo and ci-linter install version
    * Add corpus
    klauspost authored Jun 24, 2025
    Configuration menu
    Copy the full SHA
    55a61ad View commit details
    Browse the repository at this point in the history

Commits on Jun 25, 2025

  1. go.mod: bump github.com/philhofer/fwd to v1.2.0 (#396)

    no diff; same commit, but tagged: philhofer/fwd@20a13a1...v1.2.0
    
    Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
    thaJeztah authored Jun 25, 2025
    Configuration menu
    Copy the full SHA
    e50c842 View commit details
    Browse the repository at this point in the history

Commits on Aug 8, 2025

  1. Configuration menu
    Copy the full SHA
    a180baa View commit details
    Browse the repository at this point in the history

Commits on Aug 12, 2025

  1. Decode/Unmarshal a msgpack array of arbitrary length into a struct (n…

    …ew directive:vartuple) (#399)
    
    * Decode/Unmarshal a msgpack array of arbitrary length into a struct (new directive:vartuple)
    UladzimirTrehubenka authored Aug 12, 2025
    Configuration menu
    Copy the full SHA
    17a251f View commit details
    Browse the repository at this point in the history

Commits on Aug 22, 2025

  1. Add binary map key and shimming (#398)

    * Allows for binary map keys
    * Allows for non-string map keys to be shimmed as well as cast from string type aliases.
    * Allows automatic conversion of some map key types to/from string.
    
    Adds directive `maps`
    
    * `//msgp:maps binkeys|shim|autoshim`
    
    Not adding the directive will retain current behaviour where maps without string keys are ignored.
    
    Adding `binkeys` will allow for binary marshaling of map keys. Types are inferred with standard rules. Binary encoding can be shimmed and can return any standard type. See `_generated/map_bin_key.go` for examples.
    
    Adding `shim` will require you to add shims to custom map key types. Shims must be with string type. See `_generated/map_shim_key.go` for examples.
    
    Adding `autoshim` will add automatic shimming to map keys that are `uint, uint8, uint16, uint32, uint64, int, int8, int16, int32, int64, bool, float32, float64, byte` - so these are written as a string. Standard `strconv.Parse/Format` functions are used. Aliased types are not supported, but `msgp:replace MyInt with:int` directive can be used and this will be picked up.
    
    Adds `witherr:true|false` to `//msgp:shim` directives, so shim de-serializing can return errors.
    
    Updates/Resolves: #331 #345 #305 #257 #232
    
    Quirks:
    
    * Sizing is not perfect and can sometimes be collapsed from a range to constant.
    * These maps are not currently readable by "Interface" functions.
    klauspost authored Aug 22, 2025
    Configuration menu
    Copy the full SHA
    60fdfdb View commit details
    Browse the repository at this point in the history
  2. Allow commandline directives (#401)

    Make it possible to add directives as commandline parameter.
    
    Alternatively to `//msgp:tag json` directives can also be specified using the `-d` flag. Example: `msgp -d "tag json"`. Multiple flags can be added.
    
    Directives in files take precedence over commandline.
    
    Bonus: Print info on all directives.
    klauspost authored Aug 22, 2025
    Configuration menu
    Copy the full SHA
    8e91241 View commit details
    Browse the repository at this point in the history
  3. Clarify -unexported flag. (#402)

    Fixes #251
    klauspost authored Aug 22, 2025
    Configuration menu
    Copy the full SHA
    ddb4e2e View commit details
    Browse the repository at this point in the history
Loading