; ------------------------------------------------------------------------------
; This Source Code Form is subject to the terms of the Mozilla Public License,
; v. 2.0. If a copy of the MPL was not distributed with this file, You can
; obtain one at http://mozilla.org/MPL/2.0/
;
; Copyright (C) 2013-2014, Peter Johnson (www.delphidabbler.com).
;
; Change Log for Environment Variables Unit
; ------------------------------------------------------------------------------

Release v3.0 of 30 January 2014
+ Major rewrite of Environment Variables Unit:
  - New TPJEnvironmentVars static class, along with some subsidiary types, that provides methods to interrogate, enumerate and manipulate environment variables. This class supersedes the TPJEnvVar component and the various public routines: it replicates and extends their functionality while also fixing several bugs found in them.
  - Both the TPJEnvVars component and the public routines are now deprecated and have been flagged as such.
  - All public routines re-implemented as simple wrappers around calls to TPJEvironmentVas methods.
  - TPJEnvVars component refactored and heavily revised to call into TPJEnvironmentVars. Some minor bugs fixed.
  - On compilers that support it, anonymous methods can now be used as callbacks passed to enumerator methods.
  - Unit names in uses clauses are now qualified with their namespace when compiled with Delphi XE2 and later.
  - Registration code for the TPJEnvVars component has been removed into a new PJEnvVarsDsgn unit. This new unit is now required only if the deprecated component is to be registered with the Delphi IDE.
  - Fixed problem with compiler directives that was causing compilation to fail on Delphi XE5.
+ Added two public domain demo projects, with a VCL and FireMonkey 2 version of each, along with a read-me file that explains how to compile and use them.
+ WinHelp help file removed from project.
+ Source code license changed to Mozilla Public License v2.0.
+ Updated documentation:
  - The unit is now extensively documented in XMLDoc format.
  - The project read-me file has been completely overhauled re the changes.
  - The main documentation files are now licensed under the Mozilla Public License v2.0.
  - The documentation internet short-cut's URL has been changed to reference new online documentation. The short-cut has also been renamed.
  - The MPL text file's contents have been changed from the Mozilla Public License v1.1 to v2.0 and the file has been renamed accordingly.
  - HTML file containing demo code has been removed.

Release v2.0 of 23 October 2010
+ Added an enumerator for the environment variables component that supports the Delphi for..in construct (issue #10: http://code.google.com/p/ddab-lib/issues/detail?id=10).
+ Added new EnvBlockSize and two overloaded GetAllEnvVarNames routines.
+ Renamed some conditional compilation symbols.
+ Abandoned Delphi 3 support.
+ Updated help file re changes. Added links to Wiki in place of detailed information.
+ Added demo code for new enumerator and routines to demo read-me file.
+ Updated read-me file.

Release v1.3.2 of 22 October 2010
+ Fixed bug in ExpandEnvVars routine (issue #11: http://code.google.com/p/ddab-lib/issues/detail?id=11).
+ Made minor changes to read-me file.

Release v1.3.1 of 20 February 2010
+ Fixed bug in GetAllEnvVars routine (issue #3: http://code.google.com/p/ddab-lib/issues/detail?id=3).
+ Fixed bug in ExpandEnvironmentStrings (issue #4: http://code.google.com/p/ddab-lib/issues/detail?id=4).
+ Updated help file and example code document for compatibility when Unicode Delphis. Example code stripped from help file.
+ Updated documentation.

Release v1.3 of 17 August 2008
+ Fixed bugs in component:
  - Compilers later than Delphi 7 used deprecated Win32Error instead of EOSError.
  - Passing nil as owner to component's constructor caused an access violation.
+ Added assertion to enforce passing non-nil callback function to TPJEnvVars.EnumNames.
+ Switched off UNSAFE_TYPE warnings in Delphi 7 and later.
+ Expanded and corrected help file content and updated copyright date.
+ Changed to Mozilla Public License.

Release v1.2 of 10 August 2003
+ Fixed bug causing error when attempting to access an environment variable that does not exist.

Unreleased v1.1 of 31 July 2003
+ Updated component palette from "PJ Stuff" to "DelphiDabbler".
+ Changed references to EWin32Error exception to EOSError in components compiled with Delphi 6 and later.
+ Updated copyright date and owner in help file.

Release v1.0 of 02 September 2001
+ Original version.
