Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

core 109.19.00-rc1 #644

Merged
merged 3 commits into from Apr 20, 2013
Merged

core 109.19.00-rc1 #644

merged 3 commits into from Apr 20, 2013

Conversation

ghost
Copy link

@ghost ghost commented Apr 15, 2013

No description provided.

@ghost
Copy link
Author

ghost commented Apr 15, 2013

109.19.00

async_extra

  • Added function Versioned_typed_tcp.Client.flushed : t -> [Flushed | Pending of Time.t Deferred.t ].

    This exposes whether the underlying Writer.t has been flushed.

async_unix

  • Reworked a number of Reader functions to improve performance by
    avoiding deferreds.

    This is a followup to the Reader improvements in 109.14, and
    eliminates some last vestiges of performance degradation that had
    been introduced in 109.04.

  • Added function Reader.lseek : t -> int64 -> mode:[<Set | End] -> int64 Deferred.t.

    lseek t offset ~mode clears t's buffer and calls Unix.lseek on
    t's file descriptor.

  • Added function Writer.bytes_received : t -> int.

  • Added function Unix.mkfifo : ?perm:file_perm -> string -> unit Deferred.t, which was mistakenly missing.

    This is a simple wrapper around Core.Unix.mkfifo.

core

  • Changed Time.to_string and Time.sexp_of_t to include the
    timezone.

    This is an incompatible change with very old programs in which
    Time.of_string and Time.t_of_sexp did not support the timezone.

    If you have programs that are:

    • very old and do Time string/sexp handling
    • rely on reading in time values without using Time.of_string and
      Time.t_of_sexp.
    • rely on chains of writing/reading/writing times across machines
      and timezones where the time is always intended to be taken as the
      local time on the currently reading machine

    you should recompile/review your code to make sure you won't have
    issues.

  • Added function List.remove_consecutive_duplicates : 'a t -> equal:('a -> 'a -> bool) -> 'a t.

    This returns the input list with consecutive duplicates removed, and
    doesn't change the order of the remaining elements.

  • Added module User_and_group, which is a pair of a unix username
    and primary unix group.

    The string/sexp converters follow the usual unix convention of
    <user>:<group>.

  • Added function Date.first_strictly_after : t -> on:Weekday.t -> t.

    first_strictly_after t ~on:day_of_week returns the first
    occurrence of day_of_week strictly after t.

  • Added functor Type_equal.Lift.

    It is always safe to conclude that if type a equals b, then type
    a X.t equals b X.t, for any type X.t. The OCaml type checker
    uses this fact when it can. However, sometimes, e.g. when using
    Type_equal.conv, one needs to explicitly use this fact to
    construct an appropriate Type_equal.t. The Type_equal.Lift*
    functors do this.

    module Type_equal : sig
      type ('a, 'b) t
      ...
      module Lift (X : T1) : sig
        val lift : ('a, 'b) t -> ('a X.t, 'b X.t) t
      end
    end

fieldslib

  • Made with fields generate the same functions in the Fields and
    Fields_of_* modules whether the type is called t or not.

zero

  • Removed a performance test from Pool that was nondeterministically
    failing.

@avsm
Copy link
Member

avsm commented Apr 18, 2013

Testing for other broken packages more widely due to the Time.of_string changes

@yminsky
Copy link
Contributor

yminsky commented Apr 19, 2013

Do you mean the Time.to_string changes? It's the generation, not consumption of strings that has changed....

@avsm
Copy link
Member

avsm commented Apr 19, 2013

@yminsky -- yep, I misread it but did the extra builds anyway. @diml, can we have the final please?

@ghost
Copy link
Author

ghost commented Apr 19, 2013

Here it is.

avsm added a commit that referenced this pull request Apr 20, 2013
@avsm avsm merged commit dbd0ba6 into ocaml:master Apr 20, 2013
@ghost ghost deleted the core-109.19.00 branch April 22, 2013 16:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants