Breaking Changes for 0.99.8
tango.io
- The use of FilePath in TempFile is deprecated in favour of char[] paths. This was missed in the related sweep of the prior release
- In order to streamline tango.io, the modules FileConduit, Conduit, and DeviceConduit have been moved to tango.io.device instead. They will be joined by SerialConduit, ThreadConduit and others. The biggest impact here will be upon FileConduit, though imports for all three will require a minor adjustment.
- Endian settings within DataStream & DataFileStream has changed from a ctor parameter to a dedicated method. Default behaviour is unchanged.
tango.time
- TimeSpan.seconds(ulong), etc. is now replaced by TimeSpan.fromSeconds(ulong), etc. The original form causes problems when people write code like:
auto ts = TimeSpan.seconds(60); ts.seconds = 30; // you would think this would assign 30 seconds to ts, but what it does is create a // temporary and throw it away.
tango.util.container
- iterator.freach has been replaced by a simpler and much more efficient approach: to remedy, remove references to each .freach tail
- CircularList.iterator.reverse has a different return value
tango.sys
- Process has a new feature to copy the environment. Prior to this change, the environment was copied on Windows systems when no environment was passed in. After this change however, the default is to not copy the environment. So code that is expecting the environment to be copied should be updated to use the new copyEnv field. Posix systems default was to create a blank environment, so this is not a breaking change for those platforms.
- Process no longer uses multiple execute functions. This is to cut down on the number of possible combinations. A new chaining property set model has been created, so you can set multiple properties on one line and then call execute.
- Process will now by default create a console window on Windows. In order to prevent this, set the gui property of Process to true. Previously, this flag was always set, but it caused some problems with the new fine-grained standard handle redirection functionality.
tango.net.ftp
The FTP functionality has gotten a long overdue Tango-fication. This has resulted in some breaking changes:
- Telnet: findAvailableServer now returns SocketConduit instead of Socket.












