The standard library of the D programming language
Find a file
Jonathan M Davis 21c09f18d3 Issue 16053: Fix it so that SysTime's from*String supports more than 7 digits.
ISO 8601 says that it's up to the application to decide how many digits
to put in the fractional seconds if they're present. SysTime.to*String
puts up to 7 (stripping trailing zeroes), because that's
hecto-nanosecond precision, and SysTime holds the time in
hecto-nanoseconds. Currently, from*String only accepts up to 7 digits in
the fractional seconds, which _does_ follow the spec in that (per the
spec) the number of digits is up to the applications. However, while we
never emit more than 7 digits, other applications do, so only accepting
7 digits makes us incompatible with them, whereas accepting them would
make us more compatible with other programs, and it would actually be
more efficient, since we'd have fewer checks in the code.

So, these changes make is so that SysTime.from*String accepts more than 7
digits in the fractional seconds, but the additional digits are
truncated (since SysTime doesn't support more than 7 digits of
precision).
2017-05-13 07:18:41 -07:00
changelog Update changelog entry for splitting std.datetime. 2017-05-06 16:48:09 +02:00
etc/c Replace LUCKY links with actual links 2017-02-28 23:46:54 +01:00
std Issue 16053: Fix it so that SysTime's from*String supports more than 7 digits. 2017-05-13 07:18:41 -07:00
.codecov.yml add codecov config 2016-08-25 00:09:07 +02:00
.dscanner.ini Merge pull request #5160 from wilzbach/dscanner-check-for-void-auto-return 2017-02-28 13:28:42 -05:00
.editorconfig Use test_runner for coverage testing 2016-08-14 15:18:48 +02:00
.gitignore Add temp/tmp folder to gitignore. 2017-03-04 00:28:53 -05:00
circle.yml Split style target for CircleCi 2017-05-05 18:49:08 +02:00
circleci.sh Check public functions for public examples (#4998) 2017-03-01 15:49:15 +01:00
CONTRIBUTING.md update issue link to issues.dlang.org 2016-05-17 09:40:29 +03:00
index.d Remove std.experimental.ndslice (#5187) 2017-03-02 09:02:45 +01:00
Jenkinsfile update pipeline ci repo url 2017-04-09 10:46:25 +02:00
LICENSE_1_0.txt Changed Phobos to use the Boost license. Currently, all public domain modules and all licensed modules by Walter, Andrei, Bartosz, and Don have been changed to use this license (excepting std.c, for the moment). Ideally, all Phobos modules will eventually be distributed under this license, which means obtaining permission from a few more authors, deleting, or rewriting some modules. 2009-09-16 18:19:51 +00:00
osmodel.mak netbsd patch 2016-03-11 10:10:47 +06:00
posix.mak Merge pull request #5372 from MartinNowak/rm_ut_deps 2017-05-08 03:43:29 +02:00
project.ddoc add PROJECT=phobos ddoc macro 2014-01-10 19:16:53 +01:00
README.md CircleCI badge: only show build status for the master branch 2016-12-10 12:00:39 +01:00
unittest.d Unify Phobos by ensuring there's always a space after cast(...) 2017-02-21 16:40:20 +01:00
win32.mak Remove std.datetime.common,datetime,timeofday. 2017-05-06 16:48:09 +02:00
win64.mak Remove std.datetime.common,datetime,timeofday. 2017-05-06 16:48:09 +02:00

D Logo Phobos Standard Library

GitHub tag Build status Code coverage Issue Stats

Phobos is the standard library that comes with the D Programming Language Compiler.

Download

Phobos is packaged together with the compiler. You should download the whole precompiled package.

To build everything yourself, there is a description in the wiki.

Phobos is distributed under Boost Software Licence. See the licence file.

I Want to Contribute

Great! See the CONTRIBUTING.md file.