package timedesc-tzlocal-js
- Timere-parse 0.0.7
- Timere 0.8.0
- Timedesc 2.0.0
- Timedesc 1.2.0
- Timedesc 1.1.1
- Timedesc 1.1.0
- Timedesc 1.0.0
- Timedesc 0.9.1
- Timedesc 0.9.0
- Timedesc 0.8.0
- Timedesc 0.7.0 (not released on OPAM)
- Timere-parse 0.0.6
- Timere 0.7.0
- Timedesc 0.6.0
- Timere-parse 0.0.5
- Timedesc 0.5.1
- Timere 0.6.0
- Timedesc 0.5.0
- Timedesc 0.4.0
- Timedesc 0.3.1
- Timere 0.5.0
- Timedesc 0.3.0
- Timere 0.4.0
- Timedesc 0.2.0
- Timedesc 0.1.0
- Timere 0.3.1
- Timere 0.3.0 (unreleased)
- Timere 0.2.2
- Timere 0.2.1
- Timere 0.2.0 (unreleased)
- Timere-parse 0.0.4
- Timere-parse 0.0.3
- Timere 0.1.5
- Timere-parse 0.0.2
- Timere 0.1.4
- Timere-parse 0.0.1
- Timere 0.1.3
Install
dune-project
Dependency
Authors
Maintainers
Sources
sha256=3679d0a56384d66b7f1799645913dd0f0a6a5c252570d8be679184e984102caf
doc/CHANGELOG.html
Changelog
Timere-parse 0.0.7
- Added ISO week recognition rule with keyword
iso-week
Timere 0.8.0
Added ISO week pattern
iso_week_pattern,iso_years,iso_year_ranges,iso_weeks,iso_week_ranges
Pattern resolver optimization
- Added branch skipping for year, month, day, hour levels
- This starts the search closer to the first actual potential match
Fixed handling of
lengthindeduce_child_result_space_bound_from_parent- Previously leads to incorrect result space computation, and may lead to time slots missing despite meeting criteria
Fixed handling of negative month day
- Bug introduced in 84792815ccfa1f8ae4bd9c228e314491dc31456a during reintroduction of pattern resolver branch skipping optimization
- The commit was made after relese of Timere 0.7.0, so the bug only affected users who were pinning the repo directly
Timedesc 2.0.0
- Renamed
Zoneless.maketoZoneless.of_date_and_timefor consistency Adjusted
Time_zone_infoAPI- Renamed
fixed_offset_from_utctooffset_from_utcfor consistency
- Renamed
Fixed tzdb compression/decompression code
- See issue 74
- Renamed
local_resulttolocal_dt_result
Timedesc 1.2.0
Added functions to reduce friction during construction of date time
of_date_and_timeof_date_and_time_exnof_date_and_time_unambiguousof_date_and_time_unambiguous_exn
Timedesc 1.1.1
Fixed format string parser for functions in
Span.For_humanto_stringpp
Timedesc 1.1.0
Exposed the following functions in
Utilsiso_week_date_of_jdjd_of_iso_week_date
Made
ISO_week.makeslightly more lenient in the year range accepted- Changing range from
[0, 9999]to[-1, 10000] - Previously,
Timedesc.iso_weekwould sometimes fail in the edge cases year 0 and 9999
- Changing range from
Timedesc 1.0.0
- Fixed
get_local_tz_for_argerror message - Refreshed tzdb
Added RFC9110 (HTTP Semantics) printers
pp_rfc9110to_rfc9110Timestamp.pp_rfc9110Timestamp.to_rfc9110Date.pp_rfc9110Date.to_rfc9110
and parsers
of_rfc9110of_rfc9110_exnTimestamp.of_rfc9110Timestamp.of_rfc9110_exn
Timedesc 0.9.1
Moved to using hand rolled parser for tzdb and related parsing
- Previous version using Angstrom causes stack overflow in JS targets
- Refreshed tzdb
Timedesc 0.9.0
- Moved sexp code into
timedesc-sexpto further reduce core dependencies - Replaced use of mparser with angstrom
Timedesc 0.8.0
Significantly reduced number of dependencies, and moved JS, JSON code into separate packages
- Removed dependencies:
fmt,containers,oseq - Moved JSON code into
timedesc-jsonpackage along with Yojson dependency - Moved
tzlocalandtzdbstuff into their own separate packages (timedesc-tzlocalandtimedesc-tzdbrespectively) - Moved JS tzlocal backend into
timedesc-tzlocal-jspackage
- Removed dependencies:
Adjusted
Time_zone.Db.CompressedAPI to remove use ofMarshal- This in turn allows
timedesc-tzdb.fullto not depend ontimedescas the compressed copy is stable and can be stored in repo directly
- This in turn allows
Timedesc 0.7.0 (not released on OPAM)
- Added
tzlocal.jsbackend forjs_of_ocaml Added compressed binary encoding of time zone
tzdb-fullnow only considers 1970 to 2040 to further cut down sizeUpdated string conversion functions based on pretty printers which raise
Date_time_cannot_deduce_offset_from_utcto raise the exception instead of returningNone- This simplifies the handling as return type is now simply just
string. - And for serious stuff users are expected to use only unambiguous date times anyway, which would not trigger this exception
- This simplifies the handling as return type is now simply just
Added ISO8601 printing facilities to
Timestampmodule for consistency- They are just aliases to the RFC3339 printers
Timere-parse 0.0.6
- Bumped dependency of Timedesc to >= 0.6.0, Timere to >= 0.7.0
Timere 0.7.0
- Replaced
CCOptwithCCOption(this bumps dependency of Containers to >= 3.6) - Bumped dependency of Timedesc to >= 0.6.0
Timedesc 0.6.0
Main breaking changes:
- Changes in ISO week date functions (shorting label for arguments, quality of life changes)
- Removed
_datesuffix in names ofDate.Ymd_dateandDate.ISO_ord_date
- Replaced
CCOptwithCCOption(this bumps dependency of Containers to >= 3.6) Added "partial date" modules with ISO8601 parsing and printing facilities
ISO_weekYm
Added additional ISO8601 printing facilities for all three calendar systems
Date.Ymd.pp/to_iso8601(these are just aliases to the RFC3339 printers)Date.ISO_week_date.pp/to_iso8601Date.ISO_ord.pp/to_iso8601
Added additional ISO8601 parsing facilities for all three calendar systems
Date.Ymd.of_iso8601[_exn]Date.ISO_week_date.of_iso8601[_exn]Date.ISO_ord.of_iso8601[_exn]
Added additional comparison functions to
Datelt,le,gt,ge,compare
- Added arithemtic functions to
Date - Added
pp/to_iso8601functions as aliases to the rfc3339 functions toTimedesc Patched ISO8601 parsers and RFC3339/ISO8601 printers to handle second level time zone offset
- Rare occurrence in tzdb but picked up by some new tests
Added additional date conversion functions to
Utilsymd_of_jdweekday_of_jddoy_of_ymdjd_of_ydoy
- Added
Time_zone.recorded_offsets - Tzdb refresh
Timere-parse 0.0.5
- Updated use of Timedesc, Timere API
- Added support for parsing "24:00" and "24:00:00"
- Added exception raising version of functions
- Upgraded ruleset
- Renamed
Timere_parse.durationtoTimere_parse.span
Timedesc 0.5.1
- Added ISO week date and ISO ordinal date parsing support in ISO8601 date and date time parsers
- Added
Timedesc.Date.of_iso8601 - Added
Timedesc.Time.of_iso8601 - Added
_exnvariants of ISO8601 parsing functions - Small tuning of ISO8601 parsing behaviour
- Added
pp_rfc3339andto_rfc3339toTimedesc.DateandTimedesc.Timemodules - Added sexp serialisation/deserialisation functions to
Timedesc.DateandTimedesc.Time
Timere 0.6.0
Added
inc_excargument tobounded_intervals- This fixes expressiveness issues caused by lack of an inclusive version
- Renamed
bounded_intervalstopattern_intervals - Swapped to using
inc_excforhms_intervalsAPI - Added nanosecond support for
patternandPoints.t - Added
Timere.resolve_exn - Minor fixes of
resolvefor edge cases - Upgraded
Timere.Points.maketo do a lot more deduction of missing arguments - Renamed
&to&&& - Removed
Timere.Hmsmodule, replaced use ofTimere.Hms.twithTimedesc.Time.t
Timedesc 0.5.0
- Made
Timedesc.Span.tabstract - Added accessors
get_s,get_ns_offsetand conversion functionto_s_nstoTimedesc.Spanmodule - Made
Timedesc.Time_zone_info.tabstract - Added accessors
tzandfixed_offset_from_utctoTimedesc.Time_zone_infomodule - Added format string system to
Timedesc.Span.For_human.ppandto_string
Timedesc 0.4.0
Added following to
Timedesc.Utilsjd_of_ymdjd_of_datejd_of_unix_epochjd_span_of_unix_epoch
Added
Zonelessmodule- Moved "date and time" API into
Zonelessmodule Zonelessalso includes extra ISO8601 parsing functions for handling ISO8601 strings with no time zone designators
- Moved "date and time" API into
- Updated definition of
Time_zone.equalandTime_zone.utc Added comparison functions
compare_chrono_mincompare_chrono_maxcompare_struct
Timedesc 0.3.1
- Fixed
Timedesc.Span.makehandling ofnswhenns = Int.min_int - Added
Timedesc.Span.Out_of_rangeexception for when it is not possible represent the value even after normalization
Timere 0.5.0
- Fixed unhandled exception/crash due to trying to construct invalid date times when resolving patterns
- Fixed lossy behaviour in
Pattern_resolver.Branch.to_date_time - Fixed incorrect resolution due to incorrect definition of
Resolver.timestamp_safe_sub - General fixes in
pattern_resolverandresolverfor edge cases nearingTimedesc.Timestamp.min_valandTimedesc.Timestamp.max_val Bumped Timedesc dep to
0.3.0for easier to handle time zone transitions (due to the updated definition ofTimedesc.Timestamp.max_val)- This makes resolver code simpler
- Fixed crash due to
Points.to_date_timeby changing to simply returnNoneif date time conversion fails - Added automatic bound deduction by default for
bounded_intervals - Overhaul of search space optimization code in
resolver
Timedesc 0.3.0
- Added
ceil,floorandroundtoTimedesc.Span(and also re-exported them inTimedesc.Timestamp) - Rounded down
Timedesc.Timestamp.max_valto closest integer - Added automatic second fraction precision support for non-RFC3339 pretty printers
- Updated default format string for pretty printers to include second fraction
- Updated format string system to better support second fraction
Timere 0.4.0
- Migration of date time components to Timedesc
- Changed
inter []to meanalwaysinstead ofempty Fixed
overapproximate_search_space_bottom_uphandling of bounded intervals- Previously the default search time zone was used during points to date time conversion instead of the time zone passed during execution
Timedesc 0.2.0
- Added ISO int conversion functions for
weekday - Fixed
Timedesc.Date.dayaccessor, which is used byTimedesc.day - Renamed
weektoiso_weekfor ISO week date API - Replaced use of
CCOpt.get_exnwithCCOpt.get_exn_or - Made
Timedesc.Time.tabstract - Modified
Timedesc.Time.tunderlying representation - Fixed
Timedesc.Time.maketo handle24:00:00"properly" by rewriting it to23:59:59.999_999_999
Timedesc 0.1.0
- Migration of date time components from Timere
Changes to date time components
- Added recognition of "UTC+/-offset", e.g. "UTC+7", "UTC-07:00", to
Timere.Time_zone.make - Tuning behaviour of
Timere.Time_zone.makefor handling time zones withUTCprefix - Updated ISO8601 parser to tolerate separator other than
T - Updated ISO8601 parser to tolerate numbers expressed in only one digit
- Added size checking to
Timere.Time_zone.make_offset_only* - Removed raising of
Invalid_argumentoutside of Timere combinators,pp*and some*_exnfunctions - Fixed
Points.makeerror checking - Moved hms into
Hmsmodule - Improved hms error returning
- Added
Timere.Week_date_timemodule for handling ISO week date time - Removed type
month, replaced use of it with justint Documentation overhaul with readability improvement and introduction to date time handling added
- Renamed
Timere.Date_time.to_weekdaytoTimere.Date_time.weekday Unified
DurationandSpanmodule. Now there is onlySpanmodule with human friendly constructors andviewtype inTimere.Span.For_human- See issue #27 for discussion
- Many changes and restructuring for better usability...
- Added recognition of "UTC+/-offset", e.g. "UTC+7", "UTC-07:00", to
Timere 0.3.1
- Minor refactoring on use of pattern resolver to simplify reasoning about undefined/uncertain behaviour
- Added
Timere.Span.make_small
Timere 0.3.0 (unreleased)
- Added support for parsing "24:00" and "24:00:00" in
Timere.Date_time.of_iso8601 - Changed
make_hmsto replace second with 59 when 60 is provided - Renamed
Date_time.make_precisetoDate_time.make_unambiguous - Added leap second handling to
Date_time - Fixed crash in
Timere.Date_time.of_iso8601due to failed date time construction - Upgraded
Time_zone.make_offset_onlyAPI - Updated
tz_infoandTime_zone.tdefinition to remove overlap of functionality for representing time zone with only constant offset - Renamed constants
minandmaxtomin_valandmax_valforTimere.TimestampandTimere.Date_time - Added
sinceandsince_timestamp - Pattern resolver overhaul
Resolver search space slicing fix in
slice_search_spaceoverapproximate_search_space_bottom_uprestrict_search_space_top_down
- Changed
{mday:...}to{day:...}in format string system - Better error messages when local time zone cannot be determined (PR #23)
Timere 0.2.2
- Moved timestamp functions into
Timere.Timestampmodule - Added fractional second support to ISO8601 parsing
- Fixed
Span.of_floathandling of negative floats - Renamed label argument
precisiontofrac_sfor RFC3339 related functions - Removed rounding behaviour of fractional digits for RFC3339 related functions
- Changed
make_hmsto accept second field to be 60
Timere 0.2.1
- Fixed OCaml 4.06.1 compatibility
Timere 0.2.0 (unreleased)
- Added support for nanosecond precision for date times and timestamps
- Updated tzdb
- Fixed
Timere.Date_time.makeandTimere.Date_time.make_exntypes Timere.Date_timeAPI tuning- Extended format string to support number form of month
- Extended format string to support fractional seconds
- Formatted date time string construction now fails explicitly when tz offset is required but cannot be deduced
Timere-parse 0.0.4
- Replaced
Intmodule withCCIntfor building in version 4.06.1
Timere-parse 0.0.3
- Ruleset update
- Added time zone support
- Improved bounded interval bound choosing (e.g. "10am to 2pm" would use a bound of 2 days now instead of 366 days)
- Fixed parsing of hmss
Timere 0.1.5
Fixed following functions which may exception when
tzlocal.nonebackend is usedTimere.intervalsTimere.resolve
- Added
tzlocal.utcbackend - Fixed slowdowns in
interresolution caused by incorrect batch and search space slicing logic - Fixed
sexp_of_timestampwhich previously did not specify time zone explicitly as UTC after the default time zone parameter change in API - Fixed use of
Date_time'.of_timestampat places by specifying the time zone explicitly as UTC - Updated
bounded_intervalsto try to avoid constructing terms that result in (almost) non-termination
Timere-parse 0.0.2
- Added corpus
- General parser upgrade
- Added parser for
hms
Timere 0.1.4
- Added missing exception handling in
Time.patternforRange.Range_is_invalid - Added local time zone detection (
Timere.Time_zone.local) - Swapped to using local time zone by default in
Timere.Date_timeAPI - Added missing to/of sexp functions for
Date_timeandDurationmodules - Added pretty printers for
Timere.hms
Timere-parse 0.0.1
- Base version
Timere 0.1.3
- Base version
- Timere-parse 0.0.7
- Timere 0.8.0
- Timedesc 2.0.0
- Timedesc 1.2.0
- Timedesc 1.1.1
- Timedesc 1.1.0
- Timedesc 1.0.0
- Timedesc 0.9.1
- Timedesc 0.9.0
- Timedesc 0.8.0
- Timedesc 0.7.0 (not released on OPAM)
- Timere-parse 0.0.6
- Timere 0.7.0
- Timedesc 0.6.0
- Timere-parse 0.0.5
- Timedesc 0.5.1
- Timere 0.6.0
- Timedesc 0.5.0
- Timedesc 0.4.0
- Timedesc 0.3.1
- Timere 0.5.0
- Timedesc 0.3.0
- Timere 0.4.0
- Timedesc 0.2.0
- Timedesc 0.1.0
- Timere 0.3.1
- Timere 0.3.0 (unreleased)
- Timere 0.2.2
- Timere 0.2.1
- Timere 0.2.0 (unreleased)
- Timere-parse 0.0.4
- Timere-parse 0.0.3
- Timere 0.1.5
- Timere-parse 0.0.2
- Timere 0.1.4
- Timere-parse 0.0.1
- Timere 0.1.3