Download Reference Manual
The Developer's Library for D
About Wiki Forums Source Search Contact
Version 14 (modified by kris, 14 years ago)
added notes about Trace

Note: we expect the next release (1.0) to have zero breaking changes; they're all being executing now instead

Breaking Changes for 0.99.9

tango.io

  • FilePath.opAssign() support was removed, as it inhibited the ability to set a FilePath reference to null. This will affect only those who use fp = "c:/wumpus" instead of fp.set("c:/wumpus")

  • io.encode and io.digest have moved to a permanent home within tango.util

tango.io.device

  • all devices now detach themselves when garbage-collected. This was changed to correctly support scope variables, and should be invisible to nearly everyone
  • device.Array does not have a default ctor anymore. You must provide at least one argument, which helps eliminate some usage confusion

tango.io.protocol

  • this rarely-used package has been moved to the Mango project instead

tango.util

  • PathUtil functionality has been merged into tango.io.Path
  • ArgParser has been deprecated in favour of tango.text.Arguments

tango.util.log

  • AppendFiles increased the fileset limit to 1000 (from 10), requiring a minor change to the fileset naming convention. Given that file naming is different, new log files will be generated upon using this release and prior/existing files will be ignored
  • Trace.formatln() is now merely an alias for Log.formatln(), so it's better to import tango.util.log.Config and use Log("hello {}", "world") directly

tango.net

  • relocated Conduit derivatives into net.device, and renamed in preparation for v1.0 release. Easy fix is to delete "Conduit" from the class-names via a search and replace. Related imports should be changed from tango.net to tango.net.device
  • all devices now detach themselves when garbage-collected. This was changed to correctly support scope variables, and should be invisible to nearly everyone
  • raw (berkeley) socket support has been renamed Berkeley, has moved to net.device, and is now a struct instead of a class. This will affect those who used the raw socket API instead of the prior SocketConduit

  • added timeout support to Socket.write (already there for Socket.read)
  • the infinite timeout value is now -1 rather than 0, and configured as such for all devices by default
  • the PKI and OpenSSL modules have relocated to net.utils
  • names in the Uri class have been revised (more D, less Java), but aliases are in place. Should not affect anyone

  • rarely-used tango.net.cluster has been moved to the Mango project