package core
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page
Industrial strength alternative to OCaml's standard library
Install
dune-project
Dependency
Authors
Maintainers
Sources
v0.17.0.tar.gz
sha256=b0e23c1b1049e48cbbaa596d49927c66e6026506031bd7f5b485af6e9475b4e3
doc/CHANGES.html
Release v0.17.0
Bool.Stable.V1:- Add
hash. - Expose a comparator, type-equal to the unstable one.
- Add
- Timezones can be used from javascript targets without needing to bundle and serve a copy of the unix timezone database.
- Add support for
@@deriving diffto core. Bigstring:- Remove
max_mem_waiting_gc_in_bytesparameter fromBigstring.create Add functions:
Bigstring.unsafe_memsetfor filling a range with a character without bounds checksBigstring.memcmp_stringfor efficient comparison betweenBigstringandstringdataBigstring.get_stringand some variants of it, as alternatives toBigstring.to_string. These are nice because they follow the convention of theBigstring.get_int*functions, and in particular avoid optional arguments.
- Remove
- Remove
Diffable_comparablefrom core. It is no longer necessary now thatMapandSetincludeDiffable.S. - Make
MapandSetimplementDiffable.S. - Updated
Container.Genericto allow two phantom type parameters. - Make
Error,Result,Or_error,Percent,String_id.S,Date,SpanandOfdayimplementDiffable.S. - Added
Utf8,Utf16le,Utf16be,Utf32leandUtf32besubmodules toUcharandStringfor Unicode encoding support. - Add a
Binarysubmodule toInt,Int32, etc, which provideto_stringandsexp_of_twith syntax matching the OCaml binary int literal syntax. - Add Quickcheck generator to
Uchar.tand add Quickcheck generators toStringfor generating valid Unicode strings in different encodings. - Update the type of
Quickcheck.Generator.createandQuickcheck.Generator.generateto useSplittable_random.tinstead ofSplittable_random.State.t. The former is simply a shorter alias for the latter. Byte_units:- Add
[@@deriving typerep] - Add quickcheck
gen_inclandgen_uniform_incl.
- Add
- Add
add_validate_parsing_flagparameter toCommand.run, enabling a-validate-parsingflag in all subcommands. The command immediately exits with a return code of 0 if argument parsing is successful. - Add
Bin_protsupport for writing locally-allocated values inArray,Bigstring,Blang,Bool,Bytes,Char,Date,Either,Filename,Float,Int,Int32,Int64,Lazy,List,Maybe_bound,Nativeint,Option,Ref,Result,String,Unit - Add
Bin_prot.Writer.to_bigstringandBin_prot.Reader.of_bigstring, for converting directly between a value and a buffer containing precisely the serialization of that value. - Add
Binable.S_localinterface, reflecting support for writing locally-allocated values. - Add
Comparablesupport for locally-allocated values inLazy - Add
[@@deriving equal]to a number of stable types:Byte_units.Stable.V2,Day_of_week.Stable.V1,Either.Stable.V1,Fdeque.Stable.V1,Fqueue.Stable.V1,Int63.Stable.V1,List.Stable.V1,Md5.Stable.V1,Nothing.Stable.V1,Percent.Stable.V3,Pid.Stable.V1,Queue.Stable.V1,Result.Stable.V1,Set_once.Stable.V1,Source_code_position.Stable.V1,Unit.Stable.V2 - Add
[@@deriving equal]to types exposed byPerms. - Expose the fact that
Pid.tis an immediate. - Add
Char.Stable. - Add
Comparable.Extend_plain, which is likeComparable.Extendbut only requiressexp_of_tand nott_of_sexp. - Remove or limit usage of
[@@deriving fields]to reduce bloat in:Command.Shape,Gc,Source_code_position - Add
Float.Stable.V1.globalize Changes in
Gcto support the OCaml 5 runtime:- In documentation for
Gc.Stat, indicateheap_words,heap_chunks,free_blocks,largest_free,top_heap_words, andstack_sizemetrics are not available in OCaml 5 runtime, defaulting to0. In documentation for
Gc.Control:- Include behavior under OCaml 5 runtime for
minor_heap_size, detailing the total size of the minor heap across active domains. - Update default
space_overheadvalue documentation to reflect differences between OCaml 4 and OCaml 5 runtimes. - Add new flag
0x400toControl.verbosefor outputting GC statistics at program exit in OCaml 5 runtime. - Update
Gc.statandquick_statfunction documentation to reflect behavior differences between OCaml 4 and OCaml 5 runtimes, emphasizing approximation of GC statistics in OCaml 5 due to per-domain buffers. - Clarify
countersfunction's return values may differ betweenquick_statand itself under OCaml 5 runtime, detailing accuracy in single-domain scenarios. - Note potential overflow of integers returned by GC statistics functions on 32-bit machines and clarify accuracy of
minor_wordsin byte-code versus native code programs.
- Include behavior under OCaml 5 runtime for
- In documentation for
- Additional
Gcsupport for locally-allocated values. - Add
Sexp_grammarsupport toChar.Stable.V1,Filename.Stable.V1,Host_and_port,Maybe_bound.Stable.V1,Nothing.Stable.V1Time_ns.Ofday.Stable.V1,Result.Stable.V1,Time_ns.Ofday.Stable.V1,Time_ns.Span.Stable.V1 - Add
Host_and_port.Hide_port_in_tests, re-exposing the type with test-friendly serialization which elides the port. - Deprecate
List.stable_dedup_stagedandSet.stable_dedup_listin favor ofList.stable_dedup - Deprecate
Map.comparatorin favor ofMap.Comparator.Module.t Add new
Mapfunctions:Map.of_list_with_key_foldto resolve duplicate keys by folding values.Map.of_list_with_key_reduceto resolve duplicate keys by reducing values.Map.unzipto transform a map of tuples into a tuple of maps.Map.merge_disjoint_exnto merge two maps with disjoint keys, raising an exception if any keys overlap.Map.sumandMap.sumifor summing values with a provided summable type and function.
- Add
[@@deriving sexp_of]toSubstring. - Improve
Time.to_sec_stringdocumentation. - Add fast, approximate rounding functions to
Time_ns.Span. - Add
Time_ns.OandTime_ns.Span.O, containing infix operators. - Improve
Time_ns.next_multipleandTime_ns.prev_multipledocumentation. - Add
For_testing.reset_countertoUnique_id.Id. - Add support for validating locally-allocated values to
Validated. Add new functions to
Univ_map:key_id_set, exposing the set of rawUidkeysfind_packed_by_idandfind_packed_by_id_exn, allowing lookup by rawUidkey
Release v0.16.0
Changes that affect multiple modules:
- Replaced references to
CamlwithStdlib. - Added
stable_witnessvalues to many stable-version submodules. Added support for locally-allocated values.
- Added
[@local]to many function arguments, especially closures. - Added
[@local_opt]to primitives, and exported more primitives explicitly. - Added deriving
globalizeto some types.
- Added
Changes to individual modules:
Array: Addedfold_mapandfold_mapi.Bigstring:- Added
get_head_padded_fixed_string_local,get_tail_padded_fixed_string_local, andwrite_bin_prot_known_size. - Updated documentation for
unsafe_destroy.
- Added
Binable: Removed deprecated functor aliases.Binary_searchable: AddedS0_permissionssignature.Bounded_index: Addedzero_based_indexandnum_indexes.Byte_units: Addabs,sign, andneg.Command:- Moved to its own library. Still re-exported from
Core. - Removed references to
Core-dependent types. - No longer exports process-management functions.
- Added
Command.basic_or_error. - Added
Arg_type.parseandArg_type.autocomplete. - Added
Flag.escape_with_autocomplete,Flag.no_arg_required, andFlag.no_arg_abort. - Removed deprecated function
Flag.one_or_more. - Added
Param.choose_one_non_optional,Param.optional_to_required, andParam.parse.
- Moved to its own library. Still re-exported from
Comparable:- Renamed
Polymorphic_comparetoComparisons. - Added
Stable.V1.With_stable_witness.Make.
- Renamed
Container: AddedS0_permissionsandS1_with_creators_permissions.Date:- Document caveats for functions based on
is_weekdayoris_weekend. - Add
round_forward_to_weekday,round_backward_to_weekday,round_forward_to_business_day, andround_backward_to_business_day. - Add
Stable.V1.Option.to_intandStable.V1.Option.of_int_exn.
- Document caveats for functions based on
Day_of_week:- Add deriving
sexp_grammarandtyperep. - Add deriving
sexp_grammartoStable.V1.
- Add deriving
Doubly_linked: Addfirst_exnandlast_exn.Filename: split outFilename_baselibrary for parts not dependent onCore.Float: addStable.V1.Gc:- Add
Stat.add. - Add
stat_size. - Remove
prepare_heap_to_count_minor_allocation.
- Add
Hashable: AddStable.V1.With_stable_witness.Hashtbl: AddMake_stableandMake_stable_with_hashable.Hash_queue: Addto_alist,replace_or_enqueue,replace_or_enqueue_front, andreplace_or_enqueue_back.Hash_set: AddMake_stableandMake_stable_with_hashable.Heap_block: Moved to its ownHeap_blocklibrary.Identifiable: AddMake_plain_using_comparator.Indexed_container: Added this module. It exportsS1_permissionsandS1_with_creators_permissions, defined by analogy to the same names inContainer.Info: AddedStable.V2.t_sexp_grammar.Int: Exportedcomparator_witnessequivalence withBase.Int.Int63:- Exported
comparator_witnessequivalence withBase.Int. - Added
Stable.V1.
- Exported
Lazy: Exportedt_stable_witness.List: remove deprecated functionstable_dedup.Map:- Removed creator/accessor signatures except
*_genericversions. - Made
tinjective in all three type parameters. - Replaced references to
comparatortype withComparator.Module.t. - Removed deprecated type alias
comparator. - Reworded documentation on Tree types.
- Added
quickcheck_observerandquickcheck_shrinkertoS_plain. - Added
of_list_with_key,of_list_with_key_or_error,of_list_with_key_exn,of_list_with_key_multi,split_le_gt,split_lt_ge, andtranspose_keys. - Added
Make_applicative_traversals, providingmapiandfilter_mapithat operate lazily inside an applicative. - Added
Stable.V1.With_stable_witness.
- Removed creator/accessor signatures except
Maybe_bound:- Added deriving
equalandhashtot,As_lower_bound.t, andAs_upper_bound.t.
- Added deriving
Option:- Added deriving
equalandhashtoStable.V1.
- Added deriving
Or_error:- Deprecated
Expect_test_config_with_unit_expect, as[%expect]now always has type unit.
- Deprecated
Percent:Addressed round-trippability via strings and sexps.
- Added
to_string_round_trippable. - Documented caveats about
StringableandSexpableimplementations. - Documented caveats on
Stable.V1. - Added
Stable.V2based ont_of_sexp/sexp_of_tand documented caveats. - Added
Stable.V3as a fully round-trippable version. - Made similar updates to
Option.Stable. - Documented caveats on
Always_percentage. - Added
Almost_round_trippableas a more human-readable format thanStable.V3.
- Added
Addressed precision issues.
- Added
*_slow_more_accurateversions ofof_percentage,to_percentage,of_bp, andto_bp. - Documented caveats on the original versions.
- Added
- Added
t_sexp_grammar,one_hundred_percent.
Pid: Added derivingquickcheck.Quickcheck: Updated implementation and documentation ofgeometric. Swapped argument order.Sequence: Added inlined records toStep.t.Set:- Removed creator/accessor signatures except
*_genericversions. - Replaced references to
comparatortype withComparator.Module.t. - Added
comparator_s. - Updated documentation of
split. - Added
split_le_gtandsplit_lt_ge. - Added
Stable.V1.With_Stable_Witness.
- Removed creator/accessor signatures except
Set_once:- Added documentation of
equalsemantics. - Added deriving
compareandequal.
- Added documentation of
Sexp: Added derivingequalandsexp_grammartoStable.V1.t.String_id:- Documented shared bin shape for all modules created by
Make. - Added
Make_with_distinct_bin_shape.
- Documented shared bin shape for all modules created by
Time_float: Updated deprecation messages to mentionTime_float_unixinstead ofTime_unix.Time_ns:- Added deriving
equalandhashtoStable.V1.Ofday. - Added more
of_int_*conversions toSpan. - Added optional
Random.Stateargument toSpan.randomize. - Removed deprecated submodules from
Stable. - Exported
Optionsubmodule. - Exported
Stablesubmodule. - Exported
V1,Option.V1, andOption.V2fromSpan.Stable. - Added deriving
hash,equal, andsexp_grammartoSpan.Stable.V2.
- Added deriving
Tuple: AddedT2.map_bothandT3.map_all.Unit: AddedStable.V2with zero-width bin-io.Univ_map: Moved to its ownUniv_maplibrary.Validated: AddedS_allowing_substitution.
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page