js_of_ocaml strategy for Mtime_clock's JavaScript implementation. Primitives of mtime.clock.os are now implemented in pure JavaScript and linked by js_of_ocaml. This means that the mtime.clock.jsoo library no longer exists, simply link against mtime.clock.os instead. Thanks to Hugo Heuzard for suggesting and implementing this.Mtime.{min,max}_stamp.Mtime.Span.{ns,us,ms,s,min,hour,day,year} and the Mtime.Span.(*) operator (#28).Mtime.s_to_* and Mtime.*_to_s floating point constants (#28).Mtime.Span.{add,zero,one,min_span,max_span}.This is a major breaking release with a new API. Thanks to David Sheets for contributions and discussions. The API was changed to mirror and follow the conventions and design of Ptime. The Mtime module now only provides platform independent datatypes for supporting monotonic clock readings. Platform dependent access to monotonic clocks is provided by the Mtime_clock modules. The Mtime.t type was added for monotonic timestamps.
mtime.{jsoo,os} to mtime.{clock.jsoo,clock.os} which implement the new Mtime_clock interface. The mtime package has the platform independent support.Mtime.available, Mtime_clock functions now raise Sys_error on unsupported platforms or errors.Mtime_clock which statisfies MirageOS's monotonic clock signature.Mtime.{elapsed,counter,count} to Mtime_clock.{elapsed,counter,count}.Mtime.t a type to represent system-relative monotonic timestamps and related functions. Thanks to David Sheets for the patch and his patience.Mtime.Span module for functions on monotonic time spans. Most of the previous platform independent support is now provided by this module. See below.Mtime.to_ns_uint64 to Mtime.Span.to_uint64_ns.Mtime.to_* to Mtime.Span.to_*.Mtime.pp_span[_s] to Mtime.Span.pp[_float__s].Mtime.Span.{compare,equal}. Thanks to David Sheets for the patch.Mtime.Span.of_uint64_ns. Thanks to David Sheets for the patch.First release.