Welcome to little lamb

Code » limb » master » tree

[master] / meta / HISTORY

# Current development

- Nothing yet.

# version 0.2.0 [released on 2024-01-09]

- Fix EXDEV on open_write{,v}_closeat/shldata_write
- shldata: Update API to get algo & iter when reading
  Notably useful to allow re-using the same values upon re-writing a file.
  Applies to shldata, buffer-shldata & shldata-rw.
- Fix siov_memcmp() when beginning matches but is shorter
- open_saread_closeat(): Fix wrong return value when open fails
- Fix endless loop in sa_readmax when fd_read fails
- escall_scan: Fix quote handling & support "stream mode"
  - While double-quote are expected to be quoted, this wasn't actually
    checked/enforced, fixed.
  - Also, support use in a "stream mode", that is when there's not enough
    data in sce to fully unescape something, report ENODATA to give the
    caller a chance to fill its buffer and try again.
    So obviously positions in r & w are updated properly to allow such use.
- bytestr.h: Add byte_istr()
  It's byte_str() but case-insensitive.
  It's also very much *not* optimized; use with care.
- Add exec.h & related functions
- djbunix: Add fd related functions
  Namely fd_copy, fd_copy2, fd_move, fd_move2 to copy/move fds; and
  pipe_internal, pipecoe, pipenb, pipenbcoe to create pipes.
  Note all those are from skalibs, we're just documenting here.
- doc: djbunix: Add missing fd_close.3.md
- Update dependencies to comain 0.0.5 & skalibs 2.14.0.0
- Other various small changes/fixes; Refer to git log for more.


# version 0.1.0 [released on 2023-07-24]

- Here's the thing: prior to this release, it was about 3 or 4 functions, most
  of which have been refactored since. And plenty more has been added. So, let's
  consider this a first release, shall we?

  Thank you. (Also, if you still wanna know more `git log` is your friend.)


# version 0.0.3 [released on 2023-02-15]

- Add uint64_{,un}pack_trim functions to (un)pack an u64 trimming "unneeded"
  bits, i.e. all most significant bits set to zero need not be included.

  In other words, it will only use as many bytes as necessary: The value is
  stored in little-endian mode using only 7 bits per byte, with the last (most
  significant) bit used as indicator whether or not an additional byte is
  required.  Therefore the encoded number will take from only 1 up to 9 bytes.

  Also define in int.h some u64_* macros for packing/unpacking in little, big
  and trim mode, only with a slightly different interface (sce,dst instead of
  char*,u64).

  Bumping skalibs dependency to 2.12.0.0 to have new endianness primitives,
  notably uint64_littlep()


- Switch to objects/deps files put into obj/


- Makefile: Fix not checking out comain's version


# version 0.0.2 [released on 2023-02-03]

- Add BLAKE3 functions: blake3_{init,update,final}

  Also blake3() as helper to call all 3 functions at once.

  The BLAKE3 implementation is the official C implementation :
  Copyright (C) 2019-2020 Samuel Neves and Jack O'Connor
  Released into the public domain with CC0 1.0.

  https://github.com/BLAKE3-team/BLAKE3


- Add SHA3 functions: sha3_{init,update,final}

  Also sha3() as helper to call all 3 functions at once.

  The SHA3 implementation is taken from [RHash] :
  Copyright (c) 2005, Aleksey Kravchenko <rhash.admin@gmail.com>
  Released under BSD Zero Clause License.

  [RHash]: https://github.com/rhash/RHash


- Add msb64() to find the most significant bit set.


# version 0.0.1 [released on 2023-01-16]

- First release.