Commit graph

44 commits

Author SHA1 Message Date
Andrei Alexandrescu
a2ff34f123 Fixed failing expandTilde on OSX. For some reason tilde expansion yields /var/ on my machine. Is that an exception? 2010-07-28 08:09:20 +00:00
Shin Fujishiro
d920fc3e29 - Fixed bugzilla 3937: os.path.dirname fails on absolute path.
- Fixed bugzilla 4260: windows & basename.
- Made dirname() tolerant of excess path separators (e.g. "/usr//src").
- Fixed dirname() to deal with Windows' "current directory of a drive" case (e.g. "C:.").
- Made basename() more generic.
- Added more unittests for dirname() and basename().
- Changed version(Win32) to version(Windows) as the module doesn't depend on pointer size.
- Added guard assertion for unknown platforms.
2010-06-24 01:14:06 +00:00
Andrei Alexandrescu
798b6c0cea Made basename() generic in string type. 2010-06-08 17:24:11 +00:00
Walter Bright
53a3eec534 invariant => immutable 2010-05-05 22:19:49 +00:00
Don Clugston
0ecae3a354 Change [length] to [$] throughout Phobos. 2009-11-03 07:55:49 +00:00
Sean Kelly
747f3cf1e4 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.
Removed std.openrj.
2009-09-16 18:19:51 +00:00
Andrei Alexandrescu
1d08003b32 Fixed bug 2790 2009-09-03 19:49:33 +00:00
Andrei Alexandrescu
e336106541 minor 2009-07-04 06:59:56 +00:00
Andrei Alexandrescu
0861028456 minor 2009-04-06 17:27:25 +00:00
Andrei Alexandrescu
c26ac41eb5 * getDrive now works with all string types
* isabs accepts in char[]
* join accepts variadic in char[]
* fnmatch works with in char[]
2009-04-06 17:20:10 +00:00
Sean Kelly
e108928d21 * Modified all std modules to use core.sys.posix in place of std.c.linux.
* Transformed std.c.linux.* into wrappers around core.sys.posix modules where appropriate.
* Added std.c.osx as the OSX equivalent of std.c.linux.
* Added std.c.osx.socket for OSX-specific socket declarations not covered by the Posix spec.
* Altered all makefiles to zip, etc, the new std.c.osx package.
2009-03-26 03:02:32 +00:00
Sean Kelly
7de36d8138 Posix targets should now build correctly against the core.stdc chages. 2009-03-25 14:53:41 +00:00
Sean Kelly
c4a3aab657 The std.c modules now simply wrap the corresponding core.stdc modules to expose standard C declarations. std.c.os remains unchanged thus far, but will likely be altered as well. This unfortunately eliminates the auto doc generation for the std.c modules, since the modules are now largely empty. If the user wants to know what they contain, how the functions work, etc, I suggest for now simply referring to a C library spec--the core.stdc modules conform almost exactly to the C99 library definition. 2009-03-20 18:52:45 +00:00
Walter Bright
d57e203dc9 fold in some OSX changes 2009-02-10 02:21:15 +00:00
Walter Bright
f5803c1505 update for new compiler 2008-11-23 05:35:41 +00:00
Sean Kelly
5eeb591a95 Modified Phobos to reference the new core package in druntime. 2008-10-17 01:01:18 +00:00
Sean Kelly
edb5c5003e This commit includes all the changes necessary for Phobos to run against druntime. Here is a sucinct list of the changes made:
* Removed gcstats.  Garbage collector statistics will be avaialable in durintime's 'memory' module.
    * Removed object.d.  This module is replaced by the object.d provided by druntime.
    * Removed std.array.  To trap an array bounds error, import 'exception' from druntime and catch ArrayBoundsException.
    * Removed std.asserterror.  To trap an asertion failure, import 'exception' from druntime and catch AssertException.
    * Removed std.gc.  To interact with the garbage collector, import 'memory' from druntime.
    * Removed std.hiddenfunc.  No equivalent exception is currently exposed by druntime, but if one is exposed it will be called HiddenFuncException and be declared in 'exception'.
    * Removed std.moduleinit.  druntime declares ModuleInfo in object.d, so it is implicitly availble without importing.
    * Removed std.outofmemory.  To trap an out of memory error, import 'exception' from druntime and catch OutOfMemoryException.
    * Removed std.switcherr.  To trap a switch error, import 'exception' from druntime and catch SwitchException.
    * Removed std.synchro.  This functionality will exist within druintime.
    * Removed std.thread.  A Thread class is available within druntime's 'thread' module.  An interface comparison will be provided separately.
    * Removed std.typeinfo.  The classes defined in this package are for runtime use and should not be visible to the user.

The prior version of Phobos has been archived in tags/phobos-2.019 if needed.
2008-10-11 00:56:40 +00:00
Andrei Alexandrescu
15f4458850 Fixed documentation. Made dirname generic. 2008-10-01 02:05:25 +00:00
Bartosz Milewski
25d0ef1dd2 Fixed bug 2322: Paths on Windows sometimes must include the trailing separator 2008-08-30 19:33:22 +00:00
Walter Bright
35f626afb9 revert std.path for windows so it passes unit tests 2008-05-15 21:28:48 +00:00
Andrei Alexandrescu
1ae5300f52 * std.algorithm: Changed the map() function so that it deduces the return type
* std.contracts: Added file and line information to enforce. Added errnoEnforce that reads and formats a message according to errno. Added corresponding ErrnoException class.

* std.encoding: For now commented out std.encoding.to. 

* std.file: Fixed bug 2065

* std.format: Fixed bug in raw write for arrays

* std.getopt: Added new option stopOnFirstNonOption. Also automatically expand dubious option groups with embedded in them (useful for shebang scripts)

* std.math: improved integral powers

* std.md5: Improved signature of sum so it takes multiple arrays. Added getDigestString.

* std.path: changed signatures of test functions from bool to int. Implemented rel2abs for Windows. Improved join so that it accepts multiple paths. Got rid of some gotos with the help of scope statements.

* std.process: added getenv and setenv. Improved system() so it returns the exit code correctly on Linux.

* std.random: added the dice function - a handy (possibly biased) dice.

* std.file: added support for opening large files (not yet tested)

* std.utf: added the codeLength function. Got rid of some gotos.
2008-05-06 05:08:52 +00:00
Walter Bright
496bd6039b fix for bugzilla 1967 2008-04-23 06:12:41 +00:00
Andrei Alexandrescu
29f3cc23f7 std.math: minor change in approxEqual.
std.contracts: added functions pointsTo()

std.numeric: minor unittest fixes.

std.bitmanip: fixed code bloat issue, reintroduced FloatRep and DoubleRep.

std.conv: minor simplification of implementation.

std.regexp: added reference to ECMA standard in the documentation.

std.getopt: changed return type from bool to void, error is signaled by use of exceptions.

std.functional: added unaryFun, binaryFun, adjoin.

std.string: updated documentation, changed code to compile with warnings enabled.

std.traits: changed FieldTypeTuple; added RepresentationTypeTuple, hasAliasing; fixed bug 1826; added call to flush() from within write; fixed unlisted bug in lines().

std.algorithm: added map, reduce, filter, inPlace, move, swap, overwriteAdjacent, find, findRange, findBoyerMoore, findAdjacent, findAmong, findAmongSorted, canFind, canFindAmong, canFindAmongSorted, count, equal, overlap, min, max, mismatch, EditOp, none, substitute, insert, remove, levenshteinDistance, levenshteinDistanceAndPath, copy, copyIf, iterSwap, swapRanges, reverse, rotate, SwapStrategy, Unstable, Semistable, Stable, eliminate, partition, nthElement, sort, schwartzSort, partialSort, isSorted, makeIndex, schwartzMakeIndex, lowerBound, upperBound, equalRange, canFindSorted.

std.thread: fixed so it compiles with warnings enabled.

std.file: made getSize() faster under Linux.

std.random: fixed so it compiles with warnings enabled; improved function uniform so it deduces type generated from its arguments.

std.format: added fixes to make formatting work with const data.

std.path: minor documentation changes.
2008-02-19 07:00:56 +00:00
Walter Bright
c3d2ffdf9b add callinterfacefinalizer 2008-01-25 20:26:26 +00:00
Brad Roberts
09916d399a Initial merge of candidate to trunk for r459:513 2007-11-27 20:28:40 +00:00
Walter Bright
5046982cb3 fixed numerous compilation errors 2007-10-15 01:42:59 +00:00
Brad Roberts
a9bc53273c merge r387:397 from candidate to trunk
-- new module std.contracts
  -- migrate callers to it where appropriate
2007-10-14 23:04:19 +00:00
Brad Roberts
eec6be69ed Merge r297:387 from candidate to trunk.
-- add std.getopt
  -- add std.variant
  -- switch strings over to be invariant rather than const
  -- hopefully the last big linux makefile overhaul
  -- fix for bug 1579: write[ln] fails for obj.toString()
  -- fix negative precision handling in std.format
  -- add some file and directory iterator helpers
  -- among other little changes here and there...
2007-10-14 09:22:50 +00:00
Brad Roberts
8f79f3ec35 phobos 2.003 2007-09-10 07:28:23 +00:00
Brad Roberts
de971890b0 phobos 2.000 2007-09-10 06:45:08 +00:00
Brad Roberts
1aeecce30a phobos 1.009 2007-09-10 06:02:33 +00:00
Brad Roberts
7371485bf8 phobos 0.177 2007-09-10 05:36:45 +00:00
Brad Roberts
a298690ea5 phobos 0.170 2007-09-10 05:32:20 +00:00
Brad Roberts
d6ac036aff phobos 0.149 2007-09-10 05:11:52 +00:00
Brad Roberts
110cfd9da7 phobos 0.148 2007-09-10 05:04:40 +00:00
Brad Roberts
b029d8c452 phobos 0.147 2007-09-10 05:03:22 +00:00
Brad Roberts
72a09be429 phobos 0.146 2007-09-10 05:02:39 +00:00
Brad Roberts
9938247f0e phobos 0.145 2007-09-10 05:01:21 +00:00
Brad Roberts
96892ebf9e phobos 0.143 2007-09-10 04:58:30 +00:00
Brad Roberts
cc60c823a2 phobos 0.133 2007-09-10 04:49:48 +00:00
Brad Roberts
362b31cc8d phobos 0.132 2007-09-10 04:48:31 +00:00
Brad Roberts
224c570c1b phobos 0.78 2007-09-10 03:43:40 +00:00
Brad Roberts
35a12fec2f phobos 0.76 2007-09-10 03:11:55 +00:00
Brad Roberts
fa1bc52ba2 phobos 0.75 2007-09-10 03:06:06 +00:00
Renamed from path.d (Browse further)