caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Ben Millwood <bmillwood@janestreet.com>
To: caml users <caml-list@inria.fr>, ocaml-core@googlegroups.com
Subject: [Caml-list] [ANN] Core Suite 111.28.00
Date: Tue, 26 Aug 2014 11:41:17 +0100	[thread overview]
Message-ID: <CA+MHO52WoTppK93btFyRWfFogAtqjVxjG3z=nW6t9VVAa0D4WQ@mail.gmail.com> (raw)

I am delighted to announce the 111.28.00 release of the Core suite.

The following packages were upgraded:

- async
- async_extended
- async_extra
- async_find
- async_inotify
- async_kernel
- async_parallel
- async_unix
- bignum
- core
- core_bench
- core_extended
- core_kernel
- jenga
- ocaml_plugin
- pa_bench
- pa_ounit
- patdiff
- patience_diff
- textutils

Files and documentation for this release are available on our website
and all packages are in opam:

  https://ocaml.janestreet.com/ocaml-core/111.28.00/individual/
  https://ocaml.janestreet.com/ocaml-core/111.28.00/doc/

The changelog for all Core packages across all versions can be found at:

  https://ocaml.janestreet.com/ocaml-core/CHANGES.md

Here is the list of changes for this version:

## 111.28.00

### async_extra

- Added to `Versioned_rpc` a non-functor interface.
- Added `Log.level`, which returns the last level passed to `set_level`.
- Enabled Async-RPC pushback in the `Tcp_file` protocol.

### async_unix

- Added `Shutdown.set_default_force`, which allows one to change the
  default `force` value used by `shutdown`.

    This is useful for applications that call `shutdown` indirectly.

        val set_default_force : (unit -> unit Deferred.t) -> unit

### core

- Added `Piecewise_linear.create_from_linear_combination`.

        val create_from_linear_combination : (t * float) list -> t Or_error.t

- Added `Time.is_{earlier,later} : Time.t -> than:Time.t -> bool`, which
  are easier to read than `Time.(<)` and friends.
- Added `Command.exec`, which allows one to include the `Command`
  hierarchy from one executable in another.

    `Command.exec` takes the file path to an executable that uses the
    `Command` module and returns a `Command.t` that integrates the
    executable (by exec'ing it), including providing recursive help and
    autocompletion as if it were a standard `Command.t`.

- Replaced most uses of `Hashtbl.replace` with `Hashtbl.set`.
- Renamed `Float.epsilon` to `robust_comparison_tolerance`, to avoid
  confusion with `epsilon_float`.

### core_extended

- Implemented `Int.gcd` using binary GCD in C, for improved performance.
- Added `Bin_io_utils.Serialized`, which stores a value in memory as its
  bin-io representation.

    Writing such a value just blits the value.
- Moved `Text_block` from `Core_extended` into `Textutils`.
- Added modules `Hashtbl2` and `Hashtbl2_pair`.

### core_kernel

- Added `Pooled_hashtbl.resize` function, to allow preallocating a table
  of the desired size, to avoid growth at an undesirable time.
- Added `Pooled_hashtbl.on_grow` callback, to get information about
  hashtbl growth.
- Changed `Hashable.Make` to not export a `Hashable` module.

    The `Hashable` module previously exported was useless, and shadowed
    `Core.Std.Hashable`.

- Moved `Common.does_raise` to `Exn.does_raise`, to make it easier to
  find.
- Added `Float.one`, `minus_one`, and `~-`.  (fixes #12).
- Removed `Core.Std.unimplemented` and renamed it as
  `Or_error.unimplemented`.

    It is not used enough to live in the global namespace.

### jenga

- Fixed problem that caused `rule failed to generate targets`.

### ocaml_plugin

- Fixed a bug in tests that could leave the repository in a state where
  running the tests would fail.

    The bug happened if the tests were interrupted after creating
    read-only directories but before cleaning then up.

### pa_ounit

- Added a flag to disable embedding of unit tests/inline benchmarks.
  (`janestreet/core_kernel#13`)

### textutils

- Moved `Text_block` from `Core_extended` into `Textutils`.

----

We hope you find it useful!

-- Ben Millwood, on behalf of the Core team.

                 reply	other threads:[~2014-08-26 10:41 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CA+MHO52WoTppK93btFyRWfFogAtqjVxjG3z=nW6t9VVAa0D4WQ@mail.gmail.com' \
    --to=bmillwood@janestreet.com \
    --cc=caml-list@inria.fr \
    --cc=ocaml-core@googlegroups.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).