diff -r 6d08f4a05d93 -r 3145852acc89 releasing/cbrtools/perl/relnotes.txt --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/releasing/cbrtools/perl/relnotes.txt Fri Jun 25 18:37:20 2010 +0800 @@ -0,0 +1,2835 @@ +Version 2.84.3 + +Made by Build Tools China, 08/09/2009 + +Defect fixes: + DPDEF141526 - raptor errors when validating tools_redistribution_common in MakeCBR +New Features: +* REQ12751 - CBR Tools use Raptor. + +----------------------------------------------------------------------------------- + +Version 2.84.2 + +Made by Build Tools China, 02/09/2009 + +Defect fixes: + DPDEF141709 - DeltaEnv create delta_manifest_baseline.xml format error + +----------------------------------------------------------------------------------- + +Version 2.84.1 + +Made by Build Tools China, 20/07/2009 + +Defect fixes: + DPDEF140962 - Miss manifest.xml when apply delta between 141 & 142 tb91sf + DPDEF141079 - deltaenv keep the file which has been moved to another one in old zip file + +----------------------------------------------------------------------------------- + +Version 2.84.0 + +Made by Release & Integration Tools China, 30/06/2009 + +New Features: +* REQ9701 - Faster, Optimised Packaging process. +* REQ11393 - SBSv2 support in CBR tools. + +Compatibility notes: +* There is a new reldata format introduced in this REQ. + Then if an enviornment is got by any prior CBR version, there will be reldata mismatch + when using any CBR tool in this version. So please keep the CBR tools version consistent. + +----------------------------------------------------------------------------------- + +Version 2.83.1031 + +Made by Release & Integration Tools China, 17/06/2009 + +Defect fixes: + DPDEF140280 - CBR Tools 2.83.1030 fail to compile + +----------------------------------------------------------------------------------- + +Version 2.83.1030 + +Made by Release & Integration Tools China, 18/05/2009 + +Defect fixes: + DEF139216 - DeltaEnv: keep going with error during create and apply delta + +----------------------------------------------------------------------------------- + +Version 2.83.1029 + +Made by Release & Integration Tools China, 01/04/2009 + +Defect fixes: + DPDEF137305 - CBR will report "Error: didn't find any platforms" + +----------------------------------------------------------------------------------- + +Version 2.83.1028 + +Made by Release & Integration Tools China, 26/03/2009 + +Defect fixes: + DEF130995 - Deltaenv errors in creating delta package for 9.5 - M04693 + +----------------------------------------------------------------------------------- + +Version 2.83.1027 + +Made by Release & Integration Tools China, 16/03/2009 + +Defect fixes: + DPDEF136548 - CBR tools don't work with raptor-generated abldcache file + +----------------------------------------------------------------------------------- + +Version 2.83.1026 + +Made by Release & Integration Tools China, 04/03/2009 + +Defect fixes: + DPDEF135800 - The CBR Tools do not classify IPR for source statements using relative paths + DPDEF135797 - CBR Tools do not support relative paths in MRP files + +----------------------------------------------------------------------------------- + +Version 2.83.1025 + +Made by Release & Integration Tools UK, 19/02/2009 + +Defect fixes: + DPDEF135168: - CBR Tools do not automatically include DP files + +----------------------------------------------------------------------------------- + +Version 2.83.1024 + +Made by Release & Integration Tools China, 22/01/2009 + +Defect fixes: + DPDEF128617 - MakeEnv does not work with SRCROOT set to anything other than \ + +----------------------------------------------------------------------------------- + +Version 2.83.1023 + +Made by Release & Integration Tools China, 12/01/2009 + +Defect fixes: + DPDEF128818 - Envinfo fails testing a mrp with a source statement pointing to a directory + DPDEF132654 - Project Loki - 23 - Archive-Tar + +----------------------------------------------------------------------------------- + +Version 2.83.1022 + +Made by Release & Integration Tools China, 08/01/2009 + +Defect fixes: + DEF130274 - Intermittent failures in CBR import of releases to Beijing site + DPDEF132728 - Project Loki - 175 - net-ftp-common + +----------------------------------------------------------------------------------- + +Version 2.83.1021 + +Made by Release & Integration Tools China, 23/12/2008 + +Defect fixes: + DPDEF132236 - unzip version is too old in the CBR packages + PDEF131197 - Deltaenv re-construction fails - transferring vFuture M04717 -> M04719 + +----------------------------------------------------------------------------------- +Version 2.83.1020 + +Made by Release & Integration Tools China, 17/12/2008 + +Defect fixes: + DEF131119 - deltaEnv can't create delta data of gt_techview_baseline component + DEF131116 - Permission deny issue when doing zip and delete command by using deltaenv + DPDEF130547 - CBR tools should report error to the log when import file failed + +----------------------------------------------------------------------------------- + +Version 2.83.1019 + +Made by Release & Integration Tools China, 05/11/2008 + +Defect fixes: + DPDEF129430 - Improve the warning message for envinfo with -c,-d or -p + DPDEF129931 - DeltaEnv apply need to handle one error senario + +----------------------------------------------------------------------------------- + +Version 2.83.1018 + +Made by Release & Integration Tools UK, 23/10/2008 + +Defect fixes: + DPDEF128531 - problems creating delta package using manifest file in 9.1 + DPINC128056 - Missing argument handling in CleanEnv.pm + DPDEF126632 - Deprecate support for Component-Based Archives in the CBR Tools + +Compatability notes: +* Component-based archives (using the 'archive_path_file' keyword) are now deprecated, and produce a warning - however, no functionality has been disabled. It's recommended that users migrate to using project-based archives with the 'archive_path' keyword. + +----------------------------------------------------------------------------------- + +Version 2.83.1017 + +Made by Integration & Variant Tools, 03/10/2008 + +Defect fixes: + DPDEF125527 - CBR tools source mappings break binary platform statements + DPINC128057 - Issue with reltools and [...] deep recursion + DPDEF127628 - Deltaenv produces errors on pathnames > 255 + +----------------------------------------------------------------------------------- + +Version 2.83.1016 + +Made by Integration & Variant Tools, 12/09/2008 + +Defect fixes: + DPDEF126625 - Problem with ViewNotes [viewnotes doesn't always return immediately with some browsers] + DPDEF124626 - deltaenv -c -ra doesn't work + +----------------------------------------------------------------------------------- + +Version 2.83.1015 + +Made by Product Creation Tools, 17/07/2008 + +Defect fixes: + DEF114845 - Latestver doesn't spot if the archive path doesn't exist + DEF122011 - GT0410 CBR tools: open archive file when cleaning, cleanlocalarch warns + +----------------------------------------------------------------------------------- + +Version 2.83.1014 + +Made by Product Creation Tools, 11/07/2008 + +Defect fixes: + DEF124892 - wrong command name in the synopsis of RemoveSource.html + DEF124119 - Use of uninitialized value in split at c:/apps/SITK/cbr/Utils.pm line 1467. + INC123162 - viewnotes behaves differently between old CBR and SITK's + DEF122117 - GT0410 CBR tools: perl crash for invalid paths: deltaenv -r and deltaenv -c --dp + DEF122116 - GT0410 CBR tools: perl crash if source file held open while running removesource + +Compatability notes: +* When writing release notes for use with these tools, this version of the + tools permits HTML tags to be used. To tell the tools not to treat your + comment as plain text, wrap the comment in tags + +----------------------------------------------------------------------------------- + +Version 2.83.1013 + +Made by Product Creation Tools, 20/05/2008 + +Defect fixes: + DEF114845 - Latestver doesn't spot if the archive path doesn't exist + DEF118532 - Warnings from cleanremote if remote archive paths not specified + DEF121046 - CBR tool Cleanlocalarch fails using Perl 5.8.8 + DEF121945 - GT0410 CBR tools: file held open while removing component + crashes envdb line1639 + DEF121958 - GT0410 CBR tools: no archive path crashes latestver, exportenv + and exportrel + DEF121964 - GT0410 CBR tools: wrong number of args for archive path crashes + pathdata + DEF121972 - GT0410 CBR tools: perl warnings 'exiting subroutines via next + at cleaner.pm' + DEF122005 - GT0410 CBR tools: keep_recent_env and rel give warnings on non + numeric arguments + DEF122012 - GT0410 CBR tools: incorrect configuration gives perl warnings + DEF122018 - GT0410 CBR tools: invalid source dir specified to getrel -I, + getsource -i crash + DEF122110 - GT0410 CBR tools: invalid archive path in remote reltools.ini + (pullenv, pullrel) + DEF122114 - GT0410 CBR tools: pullrel -h gives the wrong help + DEF122115 - GT0410 CBR tools: perl crash when removing source for a non + installed component + DEF122119 - GT0410 CBR tools: use of uninitialised value when calling + deltaenv -r (no args) + DEF122122 - GT0410 CBR tools: perl crash if bad values given to --maxdelta + DEF122142 - ImportEnv command line help is missing an option + +----------------------------------------------------------------------------------- + +Version 2.83.1012 + +Made by Product Creation Tools, 09/04/2008 + +Defect fixes: + PDEF120528 DeltaEnv -a : error in constructing base_documentation component + DEF119931 DeltaEnv -c tool unable to read a generated release manifest file + +----------------------------------------------------------------------------------- + +Version 2.83.1011 + +Made by Product Creation Tools, 26/03/2008 + +Defect fixes: + DEF115306 Errors when running EnvInfo + +----------------------------------------------------------------------------------- + +Version 2.83.1010 + +Made by Product Creation Tools, 22/02/2008 + +Defect fixes: + PDEF111988 Adding archives to reltools.ini slows down getenv + DEF118518 "experimentalproxy" remote site type doesn't work + DEF118517 CleanRemote doesn't work: undefined values + +----------------------------------------------------------------------------------- + +Version 2.83.1009 + +Made by Product Creation Tools, 26/11/2007 + +Defect fixes: + DEF114351 DeltaEnv is very slow processing developer library components + DEF113317 zdc.exe crashes in deltaenv + DEF110665 CBR Tools GPG documentation is out of date + DEF113042 CBR tools return a '0' value even with invalid arguments + DEF114436 GT0366: DeltaEnv: ApplyDelta.pm has incorrect English messages + +----------------------------------------------------------------------------------- + +Version 2.83.1008 + +Made by Product Creation Tools, 15/11/2007 + +Defect fixes: + + INC113318 - RELTOOLS: deltaenv can not co-op with multiple local archive + INC105515 - RELTOOLS: viewnotes and angled-brackets + DEF113091 - Inconsistent behaviour of CBR tools + DEF114173 - DeltaEnv Fails with Perl Error + +----------------------------------------------------------------------------------- + +Version 2.83.1007 + +Made by Product Creation Tools, 30/10/2007 + +Defect fixes: + + DEF112925 - DeltaEnv does not remove deleted exports + DEF113007 - DeltaEnv can create invalid delta manifests + DEF112186 - DeltaEnv fails to apply delta due to long path lengths + DEF113394 - Releasing an already existing version of a CBR comp deletes the + original from the archive + INC113252 - RELTOOLS: blddoc exit with an error + +----------------------------------------------------------------------------------- + +Version 2.83.1006 + +Made by Product Creation Tools, 22/10/2007 + +Defect fixes: + + PDEF113136 - CBR: Bad reference when remote path missing from reltools.ini + PDEF107504 - ImportEnv and ImportRel do not provide a summary + DEF113056 - DeltaEnv produces Perl warnings + DEF112883 - PullEnv/PushEnv have ceased to work + DEF112532 - DeltaEnv cannot create a delta + DEF112367 - CBR errors and warnings in M04358 v9.6 + +Compatibility notes: +* The output of ImportRel/ExportRel/ImportEnv and ExportEnv has been changed. + All the tools now produce a table of successful transfers, and then a table + of failed transfers (if any). The table also includes a column to display + the status or failure reason. + +----------------------------------------------------------------------------------- + +Version 2.83.1005 + +Made by Product Creation Tools, 09/10/2007 + +Defect fixes: + + DEF112571 - CBR creation more fragile in recent System Builds + +----------------------------------------------------------------------------------- + +Version 2.83.1004 + +Made by Product Creation Tools, 27/09/2007 + +Defect fixes: + + INC111277 - RELTOOLS: slow exporting / exportdata parsing + +----------------------------------------------------------------------------------- + +Version 2.83.1003 + +Made by Product Creation Tools, 26/09/2007 + +Defect fixes: + + DEF112113 - DeltaEnv fails to overwrite even if the overwrite flag is set + DEF112116 - DeltaEnv won't apply a delta + +----------------------------------------------------------------------------------- + +Version 2.83.1002 + +Made by Product Creation Tools, 20/09/2007 + +Defect fixes: + + DEF111270 - Mysterious warning in latestver + DEF105111 - Symbian::DistributionPolicy perldoc incorrect since CL653690 + DEF110092 - CBR tools do not indicate whether or not abld cache is being used + DEF108677 - BldDocs does not build the docs for DeltaEnv + DEF109761 - DeltaEnv obliges the user to provide a PGP key + DEF111453 - DeltaEnv causes problems for archive cleaning tool + DEF111817 - DeltaEnv fails to handle changes to export rules + +----------------------------------------------------------------------------------- + +Version 2.83.1001 + +Made by Product Creation Tools, 31/08/2007 + +Defect fixes: + + DEF108536 - autoCBR releases components unnecessarily + +Compatibility notes: +* Archived components which contain abld.bat in the manifest.xml or the zip + files may be reported as dirty. Components created with this release of the + CBR Tools will not contain abld.bat files. + +----------------------------------------------------------------------------------- + +Version 2.83.1000 + +Made by Product Creation Tools, 30/08/2007 + +New Features: +* PREQ775 - Alignment of CBR and System Model components + +Compatibility notes: +* There is a new keyword supported for specifying IPR information in MRP files. + Information on the syntax and usage of the 'ipr' keyword can be found in the + CBR Tools CHM help file->CBR Tools User Guide->Creating a typical MRP file-> + Adding IPR information. + + IPR information will be obtained from MRP files by default, unless the MRP files + do not contain IPR information in which case it will fall back to + using distribution.policy files. + + You can specify that distribution.policy files are to be used by default by + adding the 'use_distribution_policy_files_first' directive to your reltools.ini. + + If you are using distribution.policy files as default and the required + distribution.policy file is missing then the CBR Tools will attempt to get the + information from MRP files. + +----------------------------------------------------------------------------------- + +Version 2.82.1004 + +Made by Product Creation Tools, 17/08/2007 + +Defect fixes: + + INC105524 - Cleanremote command does not work... + DEF110377 - GetSource does not print warning with missing archives + +----------------------------------------------------------------------------------- + +Version 2.82.1003 + +Made by Product Creation Tools, 10/07/2007 + +Defect fixes: + + DEF103662 - Add support to envsize command to only count 'new' components + DEF107988 - Source mapping breaks manifest + DEF108734 - DeltaEnv fails to run from SITK + +----------------------------------------------------------------------------------- + +Version 2.82.1002 + +Made by Product Creation Tools, 06/07/2007 + +Defect fixes: + + INC108949 - RELTOOLS: Cannot run GetEnv because another command is already running + DEF100309 - CBR Tools do not work with GNU Diff + +----------------------------------------------------------------------------------- + +Version 2.82.1001 + +Made by Product Creation Tools, 29/06/2007 + +Defect fixes: + + DEF102405 - reltools don't seem to cope with importing releases with sourceX + but no key + DEF105028 - Cleanlocalarch did not keep a recent component when it was specified to + DEF107829 - Autoflush turned on for reltool scripts + DEF107832 - Import.pm should have setting so that "Incorrect PGP passphrase" + doesn't hang YG + +Compatibility notes: +* Previously Cleanlocalarch would remove components which were corrupt or which + were being released into the archive at the same time Cleanlocalarch was + running. Now Cleanlocalarch will not remove these components by default. + If you wish for Cleanlocalarch to remove such components you will need to + specify the -r (really clean) flag when running Cleanlocalarch. + +----------------------------------------------------------------------------------- + +Version 2.82.1000 + +Made by Product Creation Tools, 26/06/2007 + +New Features: +* GT0366/PREQ1703 Traceability PREQ for changes to legacy functionality which + have been delivered as part of Nutmeg + REQ7325 CBR intelligent bitwise-delta releases + +Compatibility notes: +* This change provides the new DeltaEnv command - there is no change to the + existing release/import/export commands or their functionality + +----------------------------------------------------------------------------------- + +Version 2.81.1018 + +Made by Product Creation Tools, 19/06/2007 + +Defect Fixes: + + DEF107823 - CBR Tools compatibility fix for export sources owned by another component + +Compatiblity notes: +* If you specify the wrong number of arguments for the 'export_file' keyword in + an MRP file then an error will be produced. The new error is 'Error: Invalid + number of arguments to 'export_file' keyword in "MRP name"'. + +----------------------------------------------------------------------------------- + + +Version 2.81.1017 + +Made by Engineering Tools, 08/06/2007 + +Defect Fixes: + + DEF107823 - CBR Tools compatibility fix for export sources owned by another component + +----------------------------------------------------------------------------------- + +Version 2.81.1016 + +Made by Engineering Tools, 30/05/2007 + +Defect Fixes: + + INC104253 - ExportRel exits silently if release exists on FTP site + +Compatiblity notes: +* Additional messages in the ExportRel command: + - a note of anything that didn't need exporting because it already exists + - a report at the end of all successful exports + - a messsage at the end if the overall effect of the tool was to do nothing + +----------------------------------------------------------------------------------- + +Version 2.81.1015 + +Made by Engineering Tools, 25/05/2007 + +Defect Fixes: + + INC105513 - Using validaterel results in releases with corrupt manifest files + INC105514 - Cannot find mrp file when using validaterel + INC105518 - Out-commented line in mrp file picked up anyway... + INC105677 - CBR Tools behave badly with special characters in passwords + INC105539 - Viewnotes produce not so good html... + INC105535 - Greek and Russian characters are not supported by reltools + INC105548 - Reltools allowing to build on drives lower than F: + +----------------------------------------------------------------------------------- + +Version 2.81.1014 + +Made by Engineering Tools, 30/04/2007 + +Defect Fixes: + + DEF101018 - CBR getenv gets stopped + DEF101032 - Unnecessary confirmation dialog in installer during upgrade + DEF104279 - The exclude keyword in the CBR export table breaks the exported archive + DEF104280 - CBR Documentation of export tables is incomplete + +Minor Changes: + Amended the error messages produces when UnZip fails to include the return code + +----------------------------------------------------------------------------------- + +Version 2.81.1013 + +Made by Engineering Tools, 01/03/2007 + +Defect Fixes: + DEF099673 - OS limits on path length are not enforced by CBR tools + DEF102329 - Importenv runs slowly + +Compatibility Notes: +* Amended CleanEnv so that warning messages are produced instead of error + messages in relation to files and the OS path length. + +----------------------------------------------------------------------------------- + +Version 2.81.1012 + +Made by Engineering Tools, 20/02/2007 + +Defect Fixes: + INC101483 - dumpbin /symbols /exports failed + +Compatibility Notes: +* The tools will now continue on from errors originating from an evalid + dependency (e.g. dumpbin, and also others such as elfdump). The errors are + suppressed if they originate from dumpbin, and appear as warnings if + originating from other tools. +* When validating the message 'No checksum found for files(s)...' will appear + in all these cases, or when validating against a release which experienced + one of the above evalid dependency failures when it was made. + +----------------------------------------------------------------------------------- + +Version 2.81.1011 + +Made by Engineering Tools, 22/01/2007 + +Defect Fixes: + DEF098727 - Add support for forcing an import of an environment + DEF092967 - [CBR Tools] Re-enable newly disabled functionality in fix for DEF092883 + DEF099673 - OS limits on path length are not enforced by CBR tools + DEF100138 - LatestVer filtering is case sensitive + DEF097215 - CBR/Evalid generates incorrect manifest checksum when dumpbin not present + +Compatibility Notes: +* Path lengths are now enforced by the CBR tools. It is now not possible to + release a file with a path of containing more than 245 characters. +* A new informational message has been added. When validating against a + component which was built on a machine with no 'dumpbin' program, and which + contains files that require dumpbin in order to be validated, the code will + now revert to the validation process which predated version 2.81 of the + tools. + The new message is 'No checksum found for files(s) - reverting to + old evalid process.' + +----------------------------------------------------------------------------------- + +Version 2.81.1010 +Made by Engineering Tools, 03/01/2007 + +Defect Fixes: + DEF091267 - CBR tools 2.80 produce warning when used with Perl 5.8.7 + DEF095504 - Support for 'ipr' keyword tolerance + DEF099019 - Export does not give FTP information without extra options + +Compatibility Notes: +* The 'ipr' keyword is not to be used in MRP files as the CBR Tools will + ignore it. This functionality has been added to support PREQ775. + +----------------------------------------------------------------------------------- + +Version 2.81.1009 +Made by Engineering Tools, 12/12/2006 + +Defect Fixes: + DEF097247 - CBR command diffrel is broken unless you provide version information + INC096841 - ImportEnv can lead to corrupt environments in low-disc space situations + +----------------------------------------------------------------------------------- + +Version 2.81.1008 +Made by Engineering Tools, 24/11/2006 + +Defect Fixes: + DEF097671: CBR assumption makes binaries from a new tools platform orphans + +----------------------------------------------------------------------------------- + +Version 2.81.1007 +Made by Engineering Tools, 2/11/2006 + +New Features: +* Implemented CR0751 - Remove GPG binary from CBR Tools distribution + +Compatibility Notes: +* Users will need to have installed a version of GPGv1.x or PGP Command Line + version 6 or later to use the import/export functionality. The tools no + longer come with a default tool. + +----------------------------------------------------------------------------------- + +Version 2.81.1006 +Made by Engineering Tools, 21/09/2006 + +Defect Fixes: + DEF091264 LatestVer should filter results by a pattern + DEF092244 Use of uninitialised value in Manifest.pm line 128 + DEF092722 exclude.txt parsing dislikes hyphens in wildcard specifications + DEF092972 ViewNotes creates blank documents when attempting to view notes + for a component which has not been released + DEF093204 CBR Tools Quick Reference typo + DEF093609 validaterel assumptions about path case can lead to CBR errors + DEF094460 [System Build] - Can't locate EvalidCompare.pm + +----------------------------------------------------------------------------------- + +Version 2.81.1005 +Made by Engineering Tools, 17/08/2006 + +Defect Fixes: + DEF092883 [System Build] - CBR Tools identifying folders as orphans + +----------------------------------------------------------------------------------- + +Version 2.81.1004 +Made by Engineering Tools, 08/08/2006 + +Defect Fixes: + DEF087684 [CBR Tools] Diffrel can't cope with paths longer than as little as 115 chars + DEF090893 [CBR Tools] The reltools.ini 'experimentalproxy' keyword is treated as 'proxy' + DEF088308 [CBR Tools] Run-time error when EPOCROOT is invalid + DEF088479 [CBR Tools] Tools never warn about missing cbrtargetalias.cfg + DEF089530 "cleanenv -rf" doesn't remove rogue dirs + DEF085602 [CBR Tools] Get source for any environment + INC089568 reltools.ini.ex out of date + +Compatibility Notes: +* GetEnv functionality has been extended to allow the source code for any + environment to be downloaded, irrespective of whether it is the current + environment or not. This is achieved by using the --source-only switch. +* When using cleanenv it will now remove any empty directories it finds within + the EPOC tree. The list of directories to be removed will be displayed + with the list of files to be removed. +* If the 'remote_site_type experimentalproxy' option was specified in the + reltools.ini file, it would actually have been interpreted as 'proxy' and + not 'experimentalproxy'. Users using the 'experimentalproxy' keyword will + find that the tools now respect that keyword. To get the old behaviour, + the remote_site_type value should be 'proxy'. +* The CBR tools now create temporary directories under the system temp dir. + If your system temp dir is deeply nested, it may be better to override this + with a shorter path, since there are limitations on internal path lengths + for certain cbr commands. This can be done my specifying the 'temp_dir' + keyword in reltools.ini, e.g. 'temp_dir c:\temp' +* The CBR tools should produce a warning message if the cbrtargetalias.cfg + file is missing. This functionality was not working properly and has now + been fixed. This warning message can be suppressed by specifying the + 'no_target_alias_warning' in your reltools.ini. + +----------------------------------------------------------------------------------- + +Version 2.81.1003 +Made by Engineering Tools, 06/06/2006 + +Defect Fixes: + DEF065262 [CBR Tools] cleanremote fails to clean old releases (documentation issue) + DEF084397 Upgrading releases using getenv doesn't remove empty include directories + DEF085780 ValidateRel fails when no MRP file exists (e.g. due to having no source) + DEF087482 cleanremote broken in 2.80.1002 + +Compatibility Notes: +* If using cleanlocalarch and the copy of the component in the local archive is + corrupt then cleanlocalarch will give the following error message and continue: + "Warning: Unable to identify the environment for 'Component Version'. This may + result in additional component releases being cleaned from the archive. + (Corrupt release; missing reldata file)". This replaces the error message: + "No Reldata file exists for $thisComp $thisVer as it would appear to be corrupt. + A fresh version shall need to be installed". + + +----------------------------------------------------------------------------------- + +Version 2.81.1002 +Made by Engineering Tools, 26/04/2006 + +Defect Fixes: + DEF084619: [CBR Tools] Cat X is pre-2.80.1000 Compatible + +----------------------------------------------------------------------------------- + +Version 2.81.1001 +Made by Engineering Tools, 19/04/2006 + +Defect Fixes: + DEF068972: [CBR Tools] A CBR component being installed can't be interrupted + +----------------------------------------------------------------------------------- + +Version 2.81.1000 +Made by Engineering Tools, 12/04/2006 + +New Features: +* GT0278/TREQ0017 Significantly Reduce CBR Build Time + REQ0035 Add component manifest + An XML manifest is created during component release - contains Evalid MD5 + checksums of component content. + REQ0036 ValidateEnv/Rel using Evalid MD5 + Validation uses the manifest checksums rather than installing a temporary + local copy and generating evalid data every time. + +N.B.: The text above is a summary of the requirements. + +Defect Fixes: + DEF058539: [CBR Tools] Timestamp of source clobbered by reapplication of MSDOS attributes + DEF077956: [CBR Tools 2.80.1001] Unhelpful Warnings + +Compatibility Notes: +* A manifest.xml file is added to each new component published. This can be + found at the same level as the component reldata file within the archive. + +----------------------------------------------------------------------------------- + +Version 2.80.1003 +Made by Engineering Tools, 04/04/2006 + +Defect Fixes: + DEF083821: CBR tools 2.81beta3 breaks the PATH environment setting + +----------------------------------------------------------------------------------- + +Version 2.80.1002 +Made by Engineering Tools, 03/04/2006 + +Defect Fixes: + DEF083670: cleanlocalarch stops cleaning + DEF083808: CBR tools have incorrect "earliest compatible version" in reldata + DEF077676: CBR tools create perl warnings and unhelpful output given a bad .mrp file + DEF082745: CBR tools envinfo releasable error should be clearer + DEF083234: CBR Tools MrpData->Source() method returns some directories + +Compatibility Notes: + +* The error message for a bad line in an MRP file has been changed. The line + number of the bad line is now printed inbetween the MRP file name and the + bad line offending line is always printed too e.g. Warning: Invalid line in + "helloworld\group\helloworld.mrp" (Line 3) - "source\helloworld" + instead of: + Warning: Invalid line in "helloworld\group\helloworld.mrp" - . +* When the EPOCROOT could not be removed from the path the following error + message was displayed: "Error: Couldn't remove "\" from "afolder". + This has now been changed to: + Error: Path does not contain EPOCROOT - EPOCROOT:"\" - Path:"afolder". + +----------------------------------------------------------------------------------- + +Version 2.80.1001 +Made by Engineering Tools, 12/01/2006 + +Defect Fixes: + DEF077665: [CBR Tools] does not add any files warning should be a remark + +----------------------------------------------------------------------------------- + +Version 2.80.1000 +Made by Engineering Tools, 06/01/2006 + +New Features: +* GT0278/TREQ0018 CBR Tools ISC Support + REQ0018 Comply with new version numbering + The CBR Tools must adhere to the Engineering Tools versioning standard. + REQ0037 Update tools documentation + The CBR Tools documentation must be updated to include new features. + REQ0045 Arbitrary IRP categorisation (A-Z) + The CBR Tools must allow arbitrary IPR categorisation of source and + exports to permit additions within the CKL. + REQ0076 Enhance existing export filtering + The CBR Tools export functionality must be able to differentiate between + source and exports when encryptying based on IPR category. + +N.B.: The text above is a summary of the requirements. + +Defects Fixed: + DEF044949 [Reltools] Missing in-source documentation + DEF052380 [RelTools] Misleading warning message from 2.76.3 + DEF053523 [Reltool] bininfo after preprel does not work + DEF054781 [Reltools] InstallSnapshot falls over if given no options. + DEF054800 [Reltools] CBR Release Tools message in 'importenv' is gibberish. + DEF054806 [reltools] Release tools command 'BuildRel' compatibility break + DEF055785 [Reltools] DiffRel upset if no source + DEF058539 [Reltools] Timestamp of source clobbered by reapplication of MSDOS attributes + DEF058760 [Reltools] GPG decrypt less verbose than GPG encrypt + DEF060192 cleanlocalarch does not report failure to delete files / directories + DEF061247 CBR tools Installation document still refers to source_filter keyword + DEF061580 [RelTools] PASV mode suggested when PASV mode enabled + DEF061684 GPG Encrypt/Decrypt does not show command executed in very verbose mode + DEF062294 [RelTools] Validateenv produces warnings + DEF064016 [RelTools] Validateenv fails if source is not present + DEF064912 validaterel does not report filename of reclassified export + DEF065010 CBR Tools treat "-exports" as "exports" + +Compatibility Notes: +* The CBR Tools were incorrectly interpreting the (illegal) MRP syntax "-exports" + to mean "exports". Version 2.80 of the CBR Tools corrects this defective action + and will now stop with the fatal error, 'Error: Unknown keyword "-exports" in + [file.mrp]' should this be encountered (where [mrp.file] is replaced by the + path to the actual MRP file containing the incorrect syntax). Actions to + resolve: 1. Ensure no MRP files contain the illegal syntax. 2. Use the + -export_file syntax instead (if required). 3. Be aware that any files thought + to have been excluded from export were actually being exported. +* CBR Tools release 2.76.4 inadvertently 'touch'ed the files as a result of + reapplying the MSDOS file attributes after unzipping (e.g. during a getenv + operation). This overwrote the original Modified timestamps with the current + system time. CBR Tools release 2.80 will preserve the timestamps as all releases + prior to 2.76.4 used-to. If any dependency has been introduced based on this + unintentional change then the actions to resolve will depend on the actual + implementation of the dependency. We do not believe it is likely that any issue + will exist due to the obscurity and relative short life of this defective + action. +* Additional -v (verbose output) has been added to the tools during GPG + decryption. This will permit the output from the encryption utility to be seen. + This brings the decryption action into line with the encryption action which + already displays the utility output. During a CBR import and when in verbose + mode, this additional output will be included in the command output. The + additional output will follow the form of the encryption output display in that + each line will be indented with a tab character. These lines may be safely + ignored as verbose output. +* IPR categorisation of source files was until recently restricted to A-G or X + (for undefined). Any letter: A-Z, is now permitted (with X retaining its special + property of representing "IPR not specified"). The behaviour in previous + versions of the tools was undefined should a previously-invalid categorisation + have been encountered. In the unlikely event that any dependencies were created + on this undefined behaviour then each will need to be looked at to determine + sensible resolutions. +* Export table syntax has been updated to allow for separate treatment of source + and exports. The old syntax is still supported but more rigorous error checking + will ensure that any invalid content will cause a fatal error to be thrown. Only + the keywords "exclude", "exclude_bin", IPR categories consisting single letters + "A"-"Z" and whitespace will be allowed. Any other punctuation will not be + permitted, e.g. hyphens, brackets, braces etc. These were not explicitly + disallowed in the previous versions but must now be, to allow the additional new + syntax to be checked properly. Actions to resolve any issue: 1. restrict export + table content to only the above permitted keywords and the new syntax (details + of which will are available in the documentation). + +----------------------------------------------------------------------------------- + +Version 2.76.4 +Made by Nic Percival, 15/02/2005 + +From Nic Percival: +* Fixes for: + DEF054892 - Missing option "exclude_bin" from the documentation in module "Installation" + +From Hocine Adjerid: +* Fixes for: + DEF053737 - [Reltools] CBR Tools Fail to work with "testexports" keyword + DEF051278 - [Reltools] zip does not accept filenames with '[' + DEF050304 - [Reltools] Commands within the RelTools indicate they are not supported + DEF050374 - [Reltools] importrel should not rely on EPOCROOT being set + DEF051241 - [Reltools] CBR tools provided GnuPG does not support IDEA encryption algorithm + DEF049473 - [Reltools] CBR tools users must not 'send us a patch' + DEF052150 - [Reltools] importrel/importenv are case sentive in 2.76.3 unlike earlier version + DEF051424 - [Reltools] RemoteSite::NetDrive unhelpful +* Implemented CR: + CR-EKOS-653GJ9 : add the possiblity to exclude binaries from a component when exporting. + +From George Sin: +* Fixes for: + DEF043802 - [Reltools] CleanLocalArch is not atomic in it's move operations + DEF049619 - [Reltools] viewnotes -d between gt_techview and gt_only_baseline crashes + DEF049823 - [Reltools] Cleanlocalarch in release tools 2.76.2 documentation needs updating + DEF047825 - [Reltools] CBR tools inefficient at searching for releases + DEF043820 - [Reltools] lastestver documentation is unclear +* Implemented CR: + ABEK-63REXV: Option to overwrite destination when using cleanlocalarch of the CBR tools. + CLEN-65CEUW: RemoveSource functionality needed for redundant components found during a Getenv\Getrel command + JROE-62DHSZ: Add support to CBR viewnotes to output HTML on stdout rather than creating a file. + EMAE-68LJZF: Minimising CBR delta sizes when transferring CBR builds between parties with shared source access + +From Larry Knibb +* Fix for: + DEF053799 - [Reltools] CBR tools do not preserve file attributes + + +From Conor Lennon: +* Fix for: + DEF051830 - [Reltools] reltools 2.76.3 causing IO errors +* Implemented CR: + CLEN-65CF94 Baseline component for DevLib and Documentation components so as to install documention as an option + CLEN-65CEUW Remove Source functionality needed for redundant components found during a Getenv\Getrel command + +----------------------------------------------------------------------------------- + +Version 2.76.3 +Made by Iain Williamson, 04/11/2004 + +From Conor Lennon: +*Fix for: + DEF050197 [System Build] CBR Warnings in 03387 (8.1a) introduced by new RelTools + +----------------------------------------------------------------------------------- + +Version 2.76.2 +Made by Nic Percival, 08/10/2004 + +From Hocine Adjerid: +* Fixes for: + DEF045203 CBR Tools do not support all FTP server s/w + DEF048538 CBR: Archive::Zip module truncates some files during unzip + DEF049213 zip.exe does not accept name with '[' + DEF049351 CBR tools do not find cbrtargetalias unless EPOCROOT is set to / + +From George Sin: +* Fixes for: + DEF045331 RelTools v2.74 fail on removesource if full component not present + DEF046291 Latestver of the reltools does not like archives that don't exist + DEF047874 Cleanlocalarch determine from the output if it's was a dummy run + DEF047458 Release tools: ftp_timeout field not used + DEF047935 Reltools docs error + +* Also includes implementation for CR WROS-5ZLKHS Provide a tool which can create a new version + of a CBR component by copying and manipulating the archive metadata of an existing version + +From Iain Williamson: +* Implemented CR ABEK-5z5GXE Usable CBR archive cleaning - new keep_recent_rel + and keep_recent_env keywords + +From George Sin: + +* Fixes for: + DEF047062 [Reltools] CBR Tools fail to identify the need to upversion a component. + DEF048513 [Reltools] validateenv does not check for additional binaries. + +From Uma Ahamed: +* Added fix for DEF045288 - latestver and viewnotes don't work in 2.75.2 with gt_only_baseline + +----------------------------------------------------------------------------------- + +Version 2.76.1 +Made by Iain Williamson, 11/08/2004 + +From Uma Ahamed: + +* Added fix for DEF043802 "CleanLocalArch is not atomic in it's move operations" + +* Added fix for DEF046030 "cleanenv removes component without re-installing it" + +From George Sin: + +* Fixes for: + DEF043820 lastestver documentation is unclear + DEF044978 Error in how source is unpacked in the Release tools... + DEF045715 Incorrect warning about -binary in comms-infras_commdb_cedar + DEF046148 Release Tools do not allow spaces in their installation directory + DEF046325 RelTools don't report correct error messages in local arch disc + full conditions + DEF046711 Release tools 2.76 cannot install files that already exist and is + read only... + +From Hocine Adjerid: + +* Fix for DEF046532 RelTools v2.76 won't configure to work with an internal + proxy for FTP traffic + +----------------------------------------------------------------------------------- + +Version 2.76 +Made by Iain Williamson, 07/06/04 + +From George Sin: + +* Have added all build from anywhere functionality as part of PR0097. + +* The keyword source_map is now accepted in the reltools.ini file. + +* In source documentation updated to refect the change. + +From Nic Percival: + +* Added fix for DEF045096, retry gpg if it fails with return code 2. + +From Iain Williamson: + +* Fixes for DEF043798, 043802, 044943 and 044944 (various cleanlocal/remote + archive defects) + +From Paul Ross: + +* Added fixes for DEF045417, DEF045416, DEF045414, DEF044950, DEF044948 + DEF044947, DEF044946, DEF044781, DEF044778, DEF044777, DEF044775, DEF044773 + DEF044771 (code review defects) + +----------------------------------------------------------------------------------- + +Version 2.75.2 +Made by Iain Williamson, 10/05/04 + +From Paul Ross: + +* Suppressed warning of missing alias file if not using 'all' functionality + (DEF044726) +* Suppressed directory listing during FTP (DEF044724) + +From Iain Williamson: + +* Fixed 'argument "n.nn.n" isn't numeric...' warning (DEF044699) + +From George Sin: + +* Fixed broken link when building 'MakingReleases' doc (DEF044976) + +----------------------------------------------------------------------------------- + +Version 2.75.1 +Made by Iain Williamson, 23/04/04 + +From Paul Ross: + +* Fixed bug where tools failed to obtain the correct IPR category for export + restricted files (DEF044565) + +----------------------------------------------------------------------------------- + +Version 2.75 +Made by Iain Williamson, 21/04/04 + +From Paul Ross: + +* Added support for the aliasing system in MRP files, for example using + a target 'ALL' in an MRP file. + +* The data needed to resolve aliases is in \epoc32\tools\variant\cbrtargetalias.cfg, + if this is absent a warning is issued only when required and then only once. + The warning can be suppressed by the presense of a flag 'no_target_alias_warning' + in the reltools.ini file. + +* In IniData.pm added APIs ReadTargetAlias(), ReadTargetAliasFile() to read the + alias file. Added APIs HasTargetPlatforms() and TargetPlatforms() to resolve + MRP aliases. Added API CheckAliasWarning() to handle the absence of alias + file warning. + +* In MrpData.pm added implementation code in HandleBinSet() to provide resolution of + aliases if appropriate. + +From Adrian Taylor: + +* Removed obsolete GenMrp and UpdateMrp commands. + +* Marked several obscure tools as 'unsupported' + +* Added warnings if -binary or -export_file are not doing anything. + +* Added two new types of remote archive: 'experimentalftp' and + 'experimentalproxy'. These are exactly the same as 'ftp' and 'proxy', + but use a different algorithm for listing the contents of the FTP site. + You may find that these new remote site types work successfully with + CleanRemote, whilst the standard 'ftp' and 'proxy' types almost + certainly will not. + +* Rejigged the test suite to use a real FTP site for testing. + +----------------------------------------------------------------------------------- + +Version 2.74 +Made by Adrian Taylor, 12/02/04 + +This version is identical to 2.73-Testing-Only. + +----------------------------------------------------------------------------------- + +Version 2.73 *** TESTING ONLY *** +Made by Adrian Taylor, 30/01/04 + +From Adrian Taylor: + +* Added -i flag to GetRel + +* Ensured little dots march across screen even with the dodgy IO layer + of Perl 5.8.x + +* Fixed bug where tools didn't complain if EPOCROOT wasn't set (DEF041251) + +* 'component' argument to EnvInfo -f was case-sensitive. INC040759. + Fixed. + +* Added Optimisation document. + +* Added new field to reldata: 'first compatible version'. This shows the first + version of the tools that a given release should work with. It's set based on + the CategoriseXXX features in the reltools.ini. GetRel and GetEnv issue a + warning if they're trying to install a release that's too recent. + +* Added optional version number filter to LatestVer, so it only shows versions + with a certain phrase in their version number. + +* Tests for GetSource -i, GetRel -s and GetRel -si added to test suite. + +* Fix for serious bug, introduced in 2.71, where duplicate ownership files were + sometimes not reported. + +* Increased diagnostics for problems listing directories on FTP sites, to try + to work out what's up with the Symbian FTP site. + +* Increased robustness of RemoteSite::FTP::DirList now I've seen the symptoms + that the Symbian FTP site has. + +* Improved efficiency of ExportEnv - it no longer does so many redundant checks + to find out if a release has already been exported. + +* Upgraded Net::FTP to libnet-1.17 + +* Reverted 2.72 change where FTP connections used 'dir' instead of 'ls'. This + will reveal problems with CleanRemote, which I have tried to work around. + +From Matt Davies (merged by Ade): + +* Fix for INC040720 - CBR Tools: Categorised Exports cannot have spaces in the source path + +----------------------------------------------------------------------------------- + +Version 2.72 +Made by Adrian Taylor, 4/12/03 + +From Adrian Taylor: + +* Added 'testexports' MRP directive + +* Re-enabled limited SourceInfo functionality + +* Fixed many bugs in CleanRemote. + +* Ensure 'PGP passphrase' prompt is never invisible even on Perl 5.8.x + +* Added \epoc32\release\tools\* to the list of standard ignores, as the + files in there are intermediate files. (They get copied to \epoc32\tools, + which is the final resting place). See DEF039764 for the reasoning. + +* Prevented the use of Win32::Semaphore module when disable_win32_extensions + is turned on + +From Joe Branton: + +* Added checks to ensure that all exported files referred to by an MRP file physically + exist. Also added a defensive check to Utils::ZipList to throw an error if any + of the files being zipped are not present (previously such situations were being + ignored). + +----------------------------------------------------------------------------------- + +Version 2.71 +Made by Joe Branton, 08/10/2003 + +Know Problems: + +* The command 'SourceInfo' is broken in this release. + +From Adrian Taylor: + +* Removing -d option from LatestVer documentation + +* Removed annoying FTP site prompting with LatestVer -vv when no FTP site + defined. + +* Prevented the version number '0' which confused the tools + +* Fixed bug which prevented BinInfo working if the component was + pending release. + +From Joe Branton: + +* Added support for EPOCROOT with a value other that '\'. When installing binaries + they will be installed into %EPOCROOT%\epoc32. When making releases, EPOCROOT is + not stored in the zip files, thereby allowing a release to be installed into an + environment configured with a different EPOCROOT. + +* Added support for a new environment variable - SRCROOT. This is similar to EPOCROOT + except that it defines where the release tools install source (by default - the -i + option can still be used to override this). SRCROOT information is not stored in + release zip files. + +* Added support for relative paths in MRP files. You can now do things like: + + binary . all + exports ..\somepath + + Such paths are read as being relative to the directory inwhich the MRP file is stored. + If absolute paths are specified, the following rules apply to each keyword: + + 'notes_source ' - SRCROOT is prepended to . + 'source ' - SRCROOT is prepended to or . + '[-][test]binary ' - SRCROOT is prepended to . + '[-][test]binary ' - EPOCROOT is prepended to or . + 'exports ' - SRCROOT is prepended to . + '[-]export_file ' - SRCROOT is prepended to . + - EPOCROOT is prepended to . + + Note, it is assumed that all components are EPOCROOT compliant (i.e. only generate files + within %EPOCROOT%). Currently at least one component (Java) is known to not comply. This + has the consequence that it is not currently possible to release Java using an EPOCROOT + of anything other than '\'. It also means that when installing an environment containing + Java, its 'erj' directoy will be put in %EPOCROOT%\erj rather than \erj. + + Tools developers note, within MrpData all paths are stored in absolute form, but + without EPOCROOT or SRCROOT at the beginning. This is because parts of MrpData get + written into RelData objects, and these need to be independent of EPOC/SRCROOT. The + consequence of this is that care must be taken both within MrpData and by users of + MrpData to prepend EPOCROOT or SRCROOT as appropriate before using the paths. + +* Added support for :zip statements in the PRJ_EXPORTS section of bld.inf files. Note, + at the time of writing bldmake.pl contained bugs in it's implemention of this + functionality. Tested against a hacked version of bldmake.pl that contained fixes to: + a) "abld -w export" listing "\" as an export (bug in GetArchiveExportList()). + b) "abld -w export" not listing exports relative to EPOCROOT. + +----------------------------------------------------------------------------------- + +Version 2.70 +Made by Adrian Taylor, 07/08/2003 + +From Adrian Taylor: + +* Better error checking of 'unzip' return code, detecting invalid releases. + Similarly with GPG. + +* Fix to allow 'perldoc CleanEnv' to produce the command manual page, + rather than the manual page for the internal module. + +* Fixed problem with -f option on Push/Pull/Rel/Env + +* Worked around bug in Perl 5.8.0 itself, which prevented GetRel -p and + MakeRel -p from working (Perl bug #21217) + +* Fixing minor bug in test suite t_snapshot and Perl 5.005 + +----------------------------------------------------------------------------------- + +Version 2.69 +Made by Adrian Taylor, 30/7/2003 + +From Adrian Taylor: + +* Fixing bug in ValidateEnv which resulted in complaints about "uninitialised + value at line 644". + +----------------------------------------------------------------------------------- + +Version 2.68 +Made by Adrian Taylor 23/7/2003 + +From Adrian Taylor: + +* Fixing bug in ValidateRel. If there was a component with binary files, + none of which were within \epoc32, and no source code files, its status + would always be reported as clean by validation. + +----------------------------------------------------------------------------------- + +Version 2.67 +Made by Joe Branton 9/07/2003 + +From Adrian Taylor: + +* Fixing bug in ValidateRel. If you had a pending release component, then + you validated against a component that didn't match what you had, the tools + got temporarily confused and you had to PrepRel the component to get things + back to normal. + +From Joe Branton: + +* Added '-d' option to CleanLocalArch to allow dummy runs to be performed. + +* Changed behaviour of CleanLocalArch so that it cleans entire releases - previously + it left reldata files behind in an attempt to preserve release note history. However + with this file in place the tools will not warn the user if they attempt to install + the corresponding release even though there is nothing to install. This issue + needs to be addressed in a more fundamental way. For the time being cleaned releases + are removed without trace. + +* Removed output to STDERR from the majority of the tools. Note, this has not been done + for the Net (FTP etc) modules and IPRTOOL since sources are not technically part of + the release tools and we don't want to branch them. + +----------------------------------------------------------------------------------- + +Version 2.66 +Made by Adrian Taylor 24/06/2003 + +From Adrian Taylor: + +* Reinstating CleanLocalArch command + +----------------------------------------------------------------------------------- + +Version 2.65 +Made by Joe Branton 16/06/2003 + +From Adrian Taylor: + +* Fixing bug in MakeSnapShot - no error message was printed if the filename + was not specified + +* Fixing bug which prevented 'viewnotes -s ' when not installed + +From Joe Branton: + +* Fixed defect that caused .lib file binaries (and potentially other duplicate files + to be incorrectly categorised. Duplicate files should now be put into the 'unclassified' + category so that they are available regardless of the user's 'required_binary' + configuration. + +----------------------------------------------------------------------------------- + +Version 2.64 +Made by Joe Branton 8/5/2003 + +From John Roe (merged by Joe Branton): + +* Fixed bug in mrp parser that caused an error to be thrown when parsing mrp files + with multiple "exports" statements with export classification enabled. + +----------------------------------------------------------------------------------- + +Version 2.63 +Made by Andy Salter 14/04/2003 + +From Andy Salter: + +* Added EnvUserName to reldata.pm and viewnotes. + +----------------------------------------------------------------------------------- + +Version 2.62 +Made by Joe Branton 07/04/2003 + +From Adrian Taylor: + +* Fixed bug that prevented reltools.ini keyword 'pasv_transfer_mode' from working. + +* Added helpful error message if Utils::SplitFileName dies due to a known bug in Perl 5.6.0 (fixed in 5.6.1) + +* Added more files to blddocs + +* Ignore whitespace at start and end of lines with getrel -p + +From Andy Salter: + +* Added -o option to ViewNotes, to allow writing output to a file or directory. + +From Joe Branton: + +* Added utility InstCol2. See documentation for details. + +* Fixed minor interface bug in BinInfo - died nastily if given no arguments. + +* Fixed defect in ini file parser that caused spurious "Unknown keyword" errors to be + displayed when running the test t_exportimport. It's unlikely that this defect would + ever be seen in 'the wild' because it would have been necessary for the Perl variable + $1 have been set before parsing the ini file. Since the tools always parse the ini file + pretty much before doing anything else, this is unlikely to happen. (Also in 2.60.01) + +* Fixed identical problem to that described above in MrpData. (Also in 2.60.01) + +* Integrated latest version of IPRTOOL (provided by Uma Ahamed) which fixes problem + relating to '.' characters in directory names. Removed corresponding assertions from + MrpData. + +From Iain Williamson (merged by Joe): + +* Fixed defect in the way the required_binaries reltools.ini keyword is handled. Now, + for example, specifying 'wincw' will not result in 'wins' also being installed. + (Also in 2.60.01) + +* Added -i option to GetEnv (mirrors GetSource -i option). + Note, the supplied patch was slightly modified - the logic for checking that -i is + always accompanied with -s was wrong. (Also in 2.60.01) + +----------------------------------------------------------------------------------- + +Version 2.61 +Made by Joe Branton 13/03/2003 + +From Joe Branton: + +* Extended the behaviour of Im/ExportRel regarding the handling of a list of component + versions specified in a text file. The commands now support im/exporting multiple + versions of the same component. + +* Fixed minor interface bugs in ViewNotes. Now correctly reports when a component + does not exist, rather than displaying an empty web page. + +* Added 'dummy run' option (-d) to CleanRemote. + +* Overhalled configuration of the automated tests. There is now a 'developer_specific.txt' + configuration file in the 'configs' directory which should be all developers need to + change in order to set up the test harness. The various configurations are generated + using a new module ConfigMaker. This provides some C pre-processor like functionality + to allow the amount of duplication between configurations to be minimised. See the test + documentation for details. + +* Fixed defect in ini file parser that caused spurious "Unknown keyword" errors to be + displayed when running the test t_exportimport. It's unlikely that this defect would + ever be seen in 'the wild' because it would have been necessary for the Perl variable + $1 have been set before parsing the ini file. Since the tools always parse the ini file + pretty much before doing anything else, this is unlikely to happen. + +* Fixed identical problem to that described above in MrpData. + +* Added MrpComplexity command. See documentation for details. + +* Fixed defect in PrepEnv interactive mode that caused it to prematurely abort if an + internal version was not specified when internal versions are required. It now reports + an error and carries on. + +* Added new commands MakeSnapShot and InstallSnapShot. See documentation for details. + +From Adrian Taylor: + +* Tidied error message in PathData/ProjectBased + +* Fixed regression in 2.59 where diffenv -v no longer overrode -d + +* Clarified documentation of -a in latestver + +* Added further documentation for -n in viewnotes + +* Clarified messages printed by validate[env|rel] -vs + +* Spaces at the end of 'source XXX' lines in MRP files are now ignored + +Note this release did NOT contain the changes made in 2.60.01 below. These fixes +have been merged in 2.62. + +----------------------------------------------------------------------------------- + +Version 2.60.01 +Made by Joe Branton 31/03/2003 + +From Iain Williamson (merged by Joe): + +* Fixed defect in the way the required_binaries reltools.ini keyword is handled. Now, + for example, specifying 'wincw' will not result in 'wins' also being installed. + +* Added -i option to GetEnv (mirrors GetSource -i option). + Note, the supplied patch was slightly modified - the logic for checking that -i is + always accompanied with -s was wrong. + +From Joe Branton (bug fixes taken from latest branch to get tests to pass): + +* Fixed defect in ini file parser that caused spurious "Unknown keyword" errors to be + displayed when running the test t_exportimport. It's unlikely that this defect would + ever be seen in 'the wild' because it would have been necessary for the Perl variable + $1 have been set before parsing the ini file. Since the tools always parse the ini file + pretty much before doing anything else, this is unlikely to happen. + +* Fixed identical problem to that described above in MrpData. + +---------------------------------------------------------------------------------- +Version 2.60 +Made by Joe Branton 26/02/2003 + +From Joe Branton: + +* Fixed defect in new export categorisation functionality that caused a + "Can't use string as an ARRAY" Perl error for components whose mrp file contained + an 'exports' statement, but which did not actually export anything. + +* Changed the way that exported files are IPR classified. Previously the classifications + were read from the corresponding source file classifications. However, this meant + that unless exported files are released as source, the tools would fail to find + the classification and throw an error. Now IPRTOOL is invoked to explicitly classify + the source of every exported file, which lifts this limitation. + +----------------------------------------------------------------------------------- + +Version 2.59 +Made by ---, --/--/-- + +From Adrian Taylor: + +* 'envinfo' and other read-only commands will no longer try to create all the + archives listed in your reltools.ini. + +* Fixed documentation error in latestver + +* Added check that 'source' directories do not contain '.', because iprtool + fails and therefore no source gets packaged up. + +* Improved realism of 'fake abld' in test suite. + +* Added check that archive_path lines in reltools.ini have a remote path + specified, when it's needed. + +* Added -d flag to 'ViewNotes' which produces a single HTML page concatenating + the release notes between one environment and another. + +* Changed DiffEnv to use a new class, EnvDifferencer.pm, which is also used + by ViewNotes. + +* Added warning to CheckBc that it requires Perl 5.6.1 + +* Added information to "Installation" about where to get Perl 5.6.1 + +* Added tests for 'viewnotes'. Added minimal tests to ensure that CheckBc + and CheckRls do at least run + +* getenv -o now overwrites binaries as well as source (including pending + release components) + +* Added new "Further Information" document and added information to + "Quick Start". + +* Fixed bug making releases of 'tools rel' or 'tools deb' components + +From Joe Branton + +* EnvSize now checks that the user has provided a component name before attempting + to calculate its sizes. + +* Added 'categorise_exports' keyword and corresponding functionality. See the + 'Installation' section in the documentation for details. + +* Added '[-]export_file' mrp keyword and corresponding functionality. See the + 'Making Releases' section in the doucmentation for details. + +* Added '-d' option to blddocs. By default 'Implementation Notes' are no longer + generated. This option can be used to override the default. + +* Added 'exclude' keyword and corresponding functionality to the export table parser + ExportData. See the 'Installation' section in the documentation for details. + +* Changed the failure report summaries of ImportEnv and ExportEnv to print a formatted + table. + +* Added multi-volume export / import functionality to allow exports to be done + do writable CD drives and the like. + +----------------------------------------------------------------------------------- +Version 2.58 +Made by Adrian Taylor, 15/01/03 + +From Adrian Taylor: + +* Fixed bug introduced in 2.56 where an environment scan would continue + to run if a binary file didn't exist. This reported very confusing + error messages from envinfo and makeenv, and if you agreed to the + prompts, cleanenv would delete extra files. + +* Added extra documentation and warning messages to prepenv, to note + that it doesn't always notice dirty components. + +* Fixed prepenv bugs. Firstly, it ignored new MRP locations. Secondly, + it misleadingly implied you didn't have to specify a new internal + version number for updated components. + +* Table formatter always now displays using text format if the output + is not a TTY. + +* Added -d flag to exportrel and exportenv, which means 'dummy run'. + It reports what would happen, without actually doing anything. + In particular it reports what PGP keys will be used to encrypt each + file. + +----------------------------------------------------------------------------------- + +Version 2.57 +Made by Adrian Taylor, 09/01/03 + +From Joe Branton: + +* Fixed bug relating to unpacking zip files (say from a getsource) into a directory + that doesn't exist. It seems that zip can cope with a single directory not exisiting, + but not more than one. + +* Added vtable checking functionality to CheckBc. + +* Added options to CheckBc to allow individual tests to be disabled. + +* Added utility CheckRls. + +* Added check to ensure the EPOCROOT environment variable is set to '\'. + +* Fixed bug in PrepRel/Env that allowed a new mrp file to be specified without specifying a new version. + +From Adrian Taylor: + +* Added envsize command + +* Added reporting of release size into viewnotes + +* Added extra check to exporting, to ensure that the size of the resulting + file on the FTP site matches the expected size. + +* Added flag -x to exportenv, to just check the size of the exported files + instead of doing any exporting. This can provide a report of what exported + components are corrupted, if there's a dodgy FTP site. + +* Fixed bug in MrpData where directories reported by 'abld -what' would + get included in the zip file, instead of their contents. + +* Optimised sourceinfo + +* Added extra check that the component name in the MRP file matches the component + name in the environment database. ("The Fitzgerald Case"). + +* Changed test suite so t_run requires a drive letter as a command-line + argument. (Because I managed to run it on C: and delete most of c:\apps + before I realised what was happening...) + +* Importenv/exportenv problem summary now displays what went wrong. + +* Added -t flag to validaterel, which stops deletion of the temporary + directory. This allows further investigation with evalid and other tools. + +* Fixed MRP parsing bug where there were comments on the ends of lines + +* Made third (remote path) argument to 'archive_path' in reltools.ini optional + +* Fixed typo in listcomponents help + +* Fixed bug in Excel table formatter where 001 was coming out as 1 + +* Added -a [number] option to latestver, to show the last 'n' releases. + Also allowed -vvv to work even if there is no remote site properly + defined. + +----------------------------------------------------------------------------------- + +Version 2.56 +Made by Adrian Taylor, 21/11/02 + +From Adrian Taylor: + +* Added SourceInfo tool. This shows what source files belong to + a component, and vice-versa. + +* Added BuildRel tool, which will try to build all the platforms + listed in the MRP file of that component. + +* Stopped envinfo -f from classifying all the source code. We now do + it only when you actually require the classified source code. This + makes environment scans about five times as fast when you have lots of + components pending release. + +* Added table_format keyword to reltools.ini, allowing you to see the + output of envinfo, latestver and similar commands in Excel, HTML or + CSV format if you like. (Reason: the reports that sourceinfo outputs + are far too long to be readable in a console). + +* Added 'all' option for binary MRP syntax. e.g. + binary \rabbit\hole\group all + (Reason: a licensee wanted all possible binaries delivered). + +* Changed exportenv to warn if components aren't in the export table, + before it starts tranferring data. + +* Added a little more readily available information to viewnotes output. + +* Fixed bug in viewnotes -s where didn't exist - the error + message was illogical. + +* Fixed bug in MergeEnvironments where -i would stop it all from working + +* Fixed bug where extension makefiles using the TO_ROOT variable would + cause envinfo to report unknown origins. + +* Fixed typo in spelling of disable_win32_extensions. The old spelling + still works. + +* Tidied up the options that were added to prepenv in 2.55. + +* envinfo now states component names in error messages during its + scanning phase. + +* Checking for error-free completion of bldmake bldfiles. + +* Fixed bug where duplicate item checking for MRP binaries was + sometimes case-sensitive with categorise_binaries + +* Notice more errors from abld build -w and build makefile to fix + them. + +* Fixed bug where "exports xxx" line in MRP wouldn't trigger bldmake. Normally + this was OK because there would be a 'binary' line first which would call + bldmake. + +----------------------------------------------------------------------------------- + +Version 2.55 +Made by Adrian Taylor, 07/11/2002 + +From Joe Branton: + +* Changed CleanEnv so that it removes empty directories associated with the clean. + +* Added -d option to DiffEnv. This causes the command to ignore components that are + younger in the first environment compared to the second. Useful when younger + releases are known to be backwards compatible with older ones. + +* Added 'globbing' functionality to BinInfo. You can now do things like: + bininfo \epoc32\release\wins\udeb\*.dl? + +From Adrian Taylor: + +* Fixed bug where project-style archive structures would not successfully create + directories on network shares. + +* Added -t option to diffrel, to allow you to specify a particular diffing tool + on the command line. This is useful with -t "diff -bBru" to produce diff + files, that can later be used with the 'patch' command to patch another version. + +* Removing troublesome debug print from RelData when using -v and a new-style + archive path. + +* Added lots of options to prepenv. -l: shows latest version of each component + available. -i : always use this internal version number. -m: don't + prompt for MRP location. -p: skip components that are pending release. + These options work, but aren't very polished yet. + +* Added minimal test scripts for prepenv, getsource, removesource. + +* Added pushrel and pullrel (at last). In the process, I abstracted out + a lot of PushEnv, PullEnv, PushRel and PullRel into a new module, + called PushPullRel. + +* Added removesource. + +* Make cleanenv -f less confusing with another message. + +* bininfo now works for components that are pending release. + +* bininfo now reports if a file is part of an ignore_binary line + +* getrel -o now overwrites binaries as well as source. + +----------------------------------------------------------------------------------- + +Version 2.54 +Made by Adrian Taylor, 20/09/2002 + +From Joe Branton: + +* Generally improved CheckBc. It now has been run over a pair of Hurricane source + trees. Only e32 and f32 are still causing problems. + +* Changed viewnotes so that it compiles HTML files into \epoc32\relinfo\notes and + reuses them if they're already present. + +* Fixed bug that caused auto-generation of abld.bat to fail if 'cleanenv -r' had + previously been run on the environment. + +* Modified interface to GetSource - an install directory can now be optionally be + specified using the switch '-i'. Previously it was specified by the last parameter + which made it useless if you wanted to the source for all components. + +* GetSource when used to get the source for all components now doesn't abort at the + first error. + +* Commands that remove comonents now throw an error if their not able to remove a + particular file (previously they just warned). This is to prevent the tools getting + into the situation where subsequently the zip utility prompts the user about + overwriting files. + +* Added some additional robustness to the signature generation code. Previously it + didn't ensure that all entries in the zip file were files. It turns out that some + zip utilities put directories as entries. If these kind of zip files are + encountered now, the signature is generated correctly and a warning is displayed. + +From Adrian Taylor: + +* Added new error check to project-based path data module. It now gives you + a sensible error message if you enter a non-existent project name. + +* Fixed "uninitialized value" warning from bininfo after a validateenv against + an external environment where you validated against a component whose binaries + didn't exist on the local site. + +* Finally fixed source validation. Previously, there were occasional false- + positive results (i.e. wrongly reported dirty) where a component had + several source code directories listed in its MRP. The sorry tale begins + with the need to check for added files. To do this, it has to deduce + what the root source code directory is for the component, then check + whether any extra files have been added inside that directory. If there + are several root directories, the algorithm goes wrong and selects too + 'wide' a directory, where it probably will find other files inside. + + The only way to solve this was to remember the "source" lines stored + in the MRP. From this release on, we remember that information and + store it in the release packet. We later use that information in source + validation. + + This means that source validation won't fully work against releases made with + earlier versions of the release tools. But don't worry: you'll get a nice + error message explaining the situation. The only part of source validation + which fails is the check for added files - the check for removed files + and changed files still works fine. + +* Expanded test suite to test a variety of 'source' MRP statements. + +----------------------------------------------------------------------------------- + +Version 2.53 +Made by Adrian Taylor, 21/08/2002 + +From Adrian Taylor: + +* Fixed bug where remote archive locations were getting made lowercase if you + use the new archive-path arrangement. + +* Made blddocs runnable from anywhere. Documents whichever tools version is + in your $PATH. + +* Added some extra commands/modules into BldDocs. + +* Fixed bug where some validateenv would set some components to dirty instead + of "binaries clean, source dirty". Validaterel did not have this bug. + +* Fixed an untidy error message in latestver + +* Added new tool, "MergeEnvironments". This is a specialised tool for taking + a subset of the components from one environment, and a subset from another, + and making a third environment (as a new release but without any binaries + or source). The intention is that you would then validate against that + merged environment. Currently the tool only supports the subset selection + using the prefix of the version number. + +* Made error checking in RelData.pm and MrpData.pm stricter + +----------------------------------------------------------------------------------- + +Version 2.52 +Made by Joe Branton 01/08/2002 + +From Joe Branton: + +* Fixed bug in mrp parsing code that caused an assertion to fail is the component + concerned didn't have any binaries. + +* Fixed bug in mrp parsing code associated with the classification of 'tools' binaries. + Previously everything was expected to support the build variants 'udeb' and 'urel'. + 'tools' has now been made a special case, and are always unclassified. + +* Fixed bug in mrp parsing code the prevented '-binary' from working properly when use + the 'categorise_binaries' reltools.ini keyword. Previously '-binary ' only excluded + binaries from the 'unclassified' category. They are not excluded from all categories. + +----------------------------------------------------------------------------------- + +Version 2.51 +Made by Adrian Taylor 26/07/2002 + +From Adrian Taylor: + +* Fixed bug where envinfo -f didn't work for pending release components when + using a project-based archive path + +* Fixed a bug where validation would die if it had to make a fake signature + +* Fixed cosmetic error message if a release didn't exist + +From Joe Branton: + +* Fixed a bug where envinfo would complain of uninitialized values when + MRPs contained some strange targets + +----------------------------------------------------------------------------------- + +Version 2.50 +Made by Adrian Taylor 24/07/2002 + +From Adrian Taylor: + +* Restructured the archive path arrangement. A new "archive_path" keyword + is now possible instead of the old "archive_path_file" keyword. See + the Installation document for details. This is optional; the old + arrangement will still work. + +* Fixed bug in binary categorisation where components with no binaries could + not be exported or envinfo'd. + +* Added 'listcomponents' command + +* Extended latestver with -aa switch, -vv and -vvv switches, and the ability + to show output about all installed components. + +* Fixed error in "usage" message of envmembership + +* Added additional test cases: t_bininfo, t_pushpullenv, t_latestver, + t_envmembership, t_envinfo, t_exportimport + +* Added -f ("force") flag to CleanEnv, to allow easier use in test scripts + +* Fixed bug in source validation where the "binaries clean, source dirty" status + appeared as "dirty" if the component had been dirty immediately beforehand + +* Fixed error message in ValidateRel if a non-existent component was specified + +* Components can now be validated against an external version even if they're + pending release. + +From Joe Branton: + +* Fixed bug in ViewNotes that prevented versions containing upper case characters from + being previewed. + +* Added CheckBc utility - does some simple tests for backwards compatibility breaks. + +* Added two new reltools.ini keywords - 'categorise_binaries' and 'required_binaries'. + The first instructs the tools to categorise binaries according to their build + variants. The second allows a particular individual (or project) to select which + build variants they require. See the documentation 'Installation Guide' for more + details. + +------------------------------------------------------------------------------------ + +Version 2.30 +Made by Adrian Taylor 23/7/2002 + +From Adrian Taylor: + +* Fixed regression caused by CommandController changes where validaterel would + no longer print second and subsequent validation failures. + +----------------------------------------------------------------------------------- + +Version 2.29 +Made by Adrian Taylor 22/7/2002 + +From Adrian Taylor: + +* Fixed bug where source directories with "authorised " IPR data + did not get zipped up. + +----------------------------------------------------------------------------------- + +Version 2.28 +Made by Adrian Taylor 1/7/2002 + +From Adrian Taylor: + +* Fixed bug introduced by source validation, where previously dirty components + refused to go clean again. + +* Used updated version of iprtool from Richard Harrison, which reports even + directories containing just "distribution.policy". Removed the workaround + added in 2.26. + +------------------------------------------------------------------------- + +Version 2.27 +Made by Adrian Taylor 28/6/2002 + +From Adrian Taylor; + +* Fixed bug in CommandController stuff that stopped imports and exports working + +------------------------------------------------------------------------------------ + +Version 2.26 +Made by Adrian Taylor 27/6/2002 + +From Adrian Taylor: + +* Changed behaviour of ValidateRel so that it will change the version + number in the environment database if the validation succeeds. + +* Fixed bug in MrpData.pm where directories with spaces in their name were not + getting included in source zips. + +* Fixed bug in MrpData.pm where . and .. were accidentally getting put into all + release zips. (So far as we know, this had no effect.) + +* Changed (binary) validation to work properly for components which release + binary files outside \epoc32 + +* Changed validation to overwrite files in the temporary directory, + so it should keep going under more circumstances + +* Fixed bug where source validation would try to validate source for components + without any source code. + +* Worked around a bug in iprtool where directories containing just "distribution.policy" + were not put into zip files. This upset validaterel later on. + +* Fixed bug in ValidateRel where it didn't keep going after first error. + +* Added "\epoc32\winscw\c\*" to the list of standard ignores + +From Joe Branton: + +* Added -r option to DiffRel, and fixed bugs associated with the -l option. This means + that now you can specify exactly which directories you'd like to diff (both the local + directory and/or the directory within the release zip file) if you want to. + +* Added a new class (CommandController) that allows certain types of commands to run + concurrently, and prevents others from running concurrently. Also gave temporary + directories a unique name to allow for this concurrency. + +* Added new keyword to IniData - disable_win32_extentions - this currently only disables + the above CommandController functionality, but I intend to use it more widely in the + future. + +------------------------------------------------------------------------------------ + +Version 2.25 +Made by Adrian Taylor 18/6/2002 + +From Adrian Taylor; + +* Fixed bug in source validation which incorrectly classified some components as + 'binaries clean, source dirty' when they were in reality completely clean. + +----------------------------------------------------------------------------- + +Version 2.24 +Made by Adrian Taylor 17/6/2002 + +From Adrian Taylor: + +* Fixed RelData.pm so that latestver works correctly even when there are + corrupt (blank) reldata files in the archive. + +* Added -s flag to ValidateRel and ValidateEnv, to permit the validation of + source code. The purpose of this is to detect changes to source code that + don't cause changes in the binaries. (For example, changes to distribution + policy). There are some associated changes in EnvDb; in particular + the addition of an extra status "binaries clean, source dirty" which + is only ever set by these two commands. + +* Updated test example output for the above change and various other recent + changes. + +------------------------------------------------------------------------------------ + +Version 2.23 +Made by Joe Branton 10/6/2002 + +From Joe Branton: + +* Fixed bug in Utils::CommonDir that caused a GetSource to get stuck in a + 'Use of uninitialized value' infinite loop. + +From Lee Luchford: + +* Updated iprtool to latest version from GT. Fixed defect in previous version + which outputted all directory names in upper case + +----------------------------------------------------------------------------------- + +Version 2.22 +Made by Joe Branton 10/6/2002 + +From Adrian Taylor: + +* Added facility to prefix # with \ in reltools.ini, to escape literal # + (in this case the need was for an FTP site password) + +From Joe Branton: + +* Fixed bug in mbld that caused '-h' to fail. +* Changed behaviour of environment scans to improve performance when there are a lot + of files that will be ignored. Previously the \epoc32 tree was scanned fully and + at the end files to be ignored were removed from the data structure. Now the ignore + list is checked during the scan to allow entire directory branches to be ingored + without scanning them. +* Added functionality to ViewNotes to allow it to display a summary of all the + release notes in a specific (or the current) environment. +* Added 'disallow_unclassified_source' keyword to IniData and changed MrpData to + make use of the new flag. This is intended to allow sites to ensure that all + source code is given a category. +* Fixed bug in GenMrp that was causing binary statements to be added for aif and mbm + files that live in \epoc32\data\z. +* Changed GenMrp to ignore the platform 'cw_ide' (for the time being). +* Changed GetSource so that it displays the name of the significant directory the + source is being unpacked into. +* Changed GetSource so that it doesn't allow you to overwrite files that are already + present in your development drive. +* Added '-o' option to GetSource, GetRel and GetEnv to allow existing source code + to be overwritten. + +----------------------------------------------------------------------------------- + +Version 2.21 + +Made by Lee Luchford 29/05/2002 + +From Lee Luchford: + +* Added 'cleanremote' tool to delete unwanted releases from remote archive and made + necessary modifications to RemoteSite modules to support this tool + +* Removed changes to all tools related to introduction of CleanLocalArch tool + (e.g checks to see if releases have been cleaned) It has been decided to remove + this tool in future + +* Fix for component name case dependency bug in getrel + +From James Gibbons: + +* Modified ValidateRel so that the binaries of a component on the current drive can be validated against + a version of the component other than the version held in the environment database. + +* Fixed usage text for EnvMembership so the name of the command is correct. + +From Joe Branton: + +* Fixed a bug in diffrel where it didn't cope with diffing components where the top level directory + for a component contained files (rather than just directories). +------------------------------------------------------------------------------------ + +Version 2.20 + +Made by Lee Luchford 03/05/2002 + +From Lee Luchford: + +* Added ftp_timeout keyword to reltools.ini. This overrides the default timeout value which + may not be long enough for poor FTP connections + +* Added ftp_reconnect_attempts to reltools.ini. This overrides the default number of reconnect + attempts made when the connection to the FTP site is dropped. This should be set to higher + value for poor FTP connections + +* Fixed a bug in EnvDb.pm related to the getsource command. The regular expression used + to grep for source files just looked for the word 'source' in the file name. Since the + file name includes the path if the release directory contains the string 'source' + all zips in the release dir are unzipped, including binaries. + +* Fixed getrel to handle case dependency of version numbers + +----------------------------------------------------------------------------------- + +Version 2.19 +Made by Joe Branton 15/04/2002 + +From Lee Luchford: + +* Modified NotesCompiler.pm to interpret new lines as line breaks in HTML + +* ImportRel now checks to see if releases exist locally before connecting to the remote + and asking for passwords etc... + +* ValidateRel now takes the name of a file containing a list of + component names as an argument. All of the components listed in the + file are validated + +* Fixed case dependency of version numbers bug in DiffEnv + +* Fixed warnings in BldDocs + +* Fixed POD errors in FAQ document + +From Joe Branton: + +* Fixed bug that caused 'viewnotes -s' to miss out releases if there are more than one + release directory with exactly the same modified time. Added a record of 'the right + thing to do' to todo.txt (read the release dates out of RelData). + +* Fixed bug in bininfo that caused it to report incorrectly that there is no information + available when the owning component is pending release (file name case problem). + +* Fixed bug in makefile auto-generation code that caused components with multiple 'binary' + statements in the mrp file to only have their first set of makefiles generated. + +* BinInfo if given a component name, now displays a list of all files owned by that + component and their current status. + +* Archive path files are now checked to ensure they don't contain more than one entry + for the same component. + +* The archive path and export data files now don't need to exist until they are actually + required. This should allow use of tools like envinfo when not connected to the network. + +* Added license file for zip and unzip. Also removed the leading underscore from the + executable file names so as to conform to the license. + +* Added CleanLocalArch command which can be used to clear out old releases from a release archive. + See documentation for details. + +* Changed viewnotes -s so that the summary is ordered according the release time and date + stored in the release's reldata file (previously it used the timestamp of the corresponding + release archive directory). + +* Added new command - 'latestver'. See documentation for details. + +* Added new utility command - 'mbld'. See documentation for details. + +* Upgraded to the latest version of IPRTOOL (//EPOC/main/sysint/tools/iprtool.pl@140492). + +* ViewNotes is now tolerent to directories within a component's release archive not being releases. + A warning is now issued rather than bailing out altogether. + +* Added 'relToolsVer' tag to reldata. + +* Changed '\\epoc32\\data\\emulator\\epoc.sys.ini' to '\\epoc32\\data\\emulator\\*.sys.ini'. + +* Changed the interface to DiffRel - it'll now attempt to work out how to difference against + the source in a development environment (rather than having to be giving the name of a + directory against which to difference). + +* Added 'reallyclean' flag to CleanEnv. Causes it to clean out files that are normally ignored + from the point of view of unknown origin status (intermediate build files etc). + +From James Gibbons: + +* Added new command EnvMembership. To allow querying of baselines to see if a particular component + component release is present. + +----------------------------------------------------------------------------------- + +Version 2.18 +Made by Lee Luchford 28/01/2002 + +From Lee Luchford: + +* Fix IO bug affecting Perl 5005 during FTP transfers. The FTP.pm module now + quits the FTP connection whenever an error occurs instead of just aborting the + failed command but keeping the connection open. + +* Increase TIMEOUT value in Proxy.pm module + +* Add -r option to export and import tools. The user can now force the use of FTP + resume mode from the command line overriding the ftp_server_supports_resume + value in the reltools.ini file + +* Implemented an FTP get command with resume in FTP.pm + +* Fix for PGP.pm. Check to see if error code defined before using in numerical + comparisons + +----------------------------------------------------------------------------------- + +Version 2.17 +Made by Lee Luchford 21/01/2002 + +From Lee Luchford: + +* Added a fix for PGP version 7 in PGP.pm. Error codes have changed between 6 and 7 + so errors were not being handled correctly + +* Changes to ExportRel, ExportEnv, ImportRel, ImportEnv and FTP.pm to handle case + dependency of file names on the FTP server. + Now when exporting, component names are all converted to lower case and the actual + version number (ie with the correct case) is read from the releases reldata file + The FTP module ignores case when checking to see if a file exists and selects the + correct filename to download. + +* Changed naming of the temporary files used during uploads to FTP sites. + Now of the form lpdrt*****.tmp. Should make it more obvious that we can delete + these files if they are left lying around on the server + +------------------------------------------------------------------------------------ + +Version 2.16 +Made by Joe Branton 10/01/2002 + +From Lee Luchford: + +* Added support for FTP servers with firewalls (ie passive transfers) and servers that do not + support reconnect and resume. Use the new keywords "pasv_transfer_mode" and + "ftp_server_supports_resume" in the reltools.ini to activate these features + +* RelTransfer::Export module modified. A failed log file send no longer reports that the actual + release failed to export + +* Removed FTP download with resume code. Not reliable at the moment. + +From Joe Branton: + +* PrepEnv and PrepRel now throw an error if a version already exists. + +* BinInfo now handles file name arguments of any case. + +* Fixed bug in EnvDb that caused duplicates to not be reported accurately when making + a release (or scanning an environment using EnvInfo). + +* Fixed bug in Utils::TidyFileName that cause UNC paths to get converted into absolute + paths. This caused a "Path not found" error message when making a release to an archive + specified using UNC paths. This is not a fatal error, but the release files do not get + their read only attribute set. + +* Testing importing/exporting against the Symbian FTP site showed that the file / directory + existance checking routes weren't working for this server (though they worked fine + against others). Changed the implementation, and tested again our normal test Linux box, + the Symbian server and the Bayou server. + +---------------------------------------------------------------------------------------- + +Version 2.15 +Made by Joe Branton 20/12/2001 + +From Joe Branton: + +* The reltools.ini keywords 'remote_username' and 'remote_password' are no longer mandatory + for FTP access - if not provided, they are prompted for at runtime. This also applies to + the keywords 'proxy_username' and 'proxy_password' for use with proxy FTP servers. + +* Implemented 'hidden text' password entry ('*' characters are displayed rather than the + actual text). This is used when the user is asked to enter encryption passphrases or + FTP passwords. + +* Fixed a bug in the NETDRIVE exporting code that caused exported files to appear in the root + of the current drive rather than the network drive. + +* Added minimal progress information to imports and exports when the verbosity level is zero. + +* Imported files are now set to read only in the archive (corresponding to MakeEnv and MakeRel's + behaviour). + +---------------------------------------------------------------------------------------- + +Version 2.14 +Made by Joe Branton 19/12/2001 + +From Lee Luchford: + +* In FTP.pm comment out file size comparison check for successful uploads. Appears to + cause problems on the Symbian FTP server + +* FTP move command cannot overwrite existing files. RemoteSite::FTP.pm now deletes the remote file + before a move is attempted + +* Win32::File module function calls replaced with system "attrib ..." in Utils.pm since Win32::File + fails in some situations + +* glob replaced with readdir + small fix for filtering individual source files in + MrpData.pm + +From Joe Branton: + +* Fixed Win2K only problem associated with finding 'evalid.bat' in the user's path. This + cause ValidateRel/Env to fail on Win2K machines. + +* DiffEnv now displays "Environments identical" rather than an empty table if there are + no differences. + +* Fixed another suspicious forward slash in file name when using GetSource. + +* Fixed bug in ViewNotes that caused the summary feature (available via -s) to produce + a summary page with broken links on IE 5.0 and Opera 6.0 (and possibly other browsers). + The problem was that these browsers expect any files they are asked to render to have + the extention .html. This is now the case. + +* Fixed regression in mrp parser that allowed the binary.zip file to contain multiple files + whose name only differs with regard to case. + +---------------------------------------------------------------------------------------- + +Version 2.13 +Made by Joe Branton 27/11/2001 + +From Joe Branton: + +* Fixed a regression introduced by changing the behaviour of the tools to not lower + the case of file names. Bug caused the tools to wrongly report files as having + unkown origin. + +---------------------------------------------------------------------------------------- + +Version 2.12 +Made by Joe Branton 27/11/2001 + +From Lee Luchford: + +* Added support for proxy FTP servers by adding RemoteSite::FTP::Proxy module + If remote_site_type keyword in reltools.ini has value 'PROXY' then FTP access is + via the proxy server and the keywords proxy, proxy_username and proxy_password must + be defined in reltools.ini + +* fix to handle FTP sites that have problems with back slashes in paths + +* Some changes to FTP module code for improved reconnect and resume handling + +* Added passive mode support to FTP module. Include pasv_transfer_mode keyword in reltools.ini. + If keyword specified then connects to FTP site in passive mode. + +* Ask for PGP passphrase in Import module constructor ie before any files are downloaded + +From Joe Branton: + +* Removed the file name case lowering behaviour of the tools. This behaviour broke certain + regression tests that depended upon file and directory names being in upper case (as they are + when the build tools create them). + +* DiffEnv now displays the components in alphabetical order. + +---------------------------------------------------------------------------------------- + +Version 2.11 +Made by Joe Branton 19/11/2001 + +From Lee Luchford: + +* ExportRel and ImportRel added support for exporting and importing multiple releases by passing + a file containing a list of component names and version numbers + +* ExportEnv and ImportEnv now check to see if all components in the environment are defined + in the archive path file before attempting to export/import + +* Various fixes for potential problems with FTP uploading/downloading in RemoteSite::FTP.pm + +From Joe Branton: + +* Added a new switch to EnvInfo (-ff). -f now displays a table of component name, version, and status. + -ff displays a table of component name, version, internal version status and mrp name. + +* Tidied up new line handling in EnvInfo when displaying progress dots and an error occurs. + +* PrepRel now warns before removing an entry from the environment database. + +* Fixed bug in PrepRel that caused entries to be removed if only the mrp name is specified. + Now updates the mrp name instead. + +* Changed PrepEnv interactive mode so that any change in an entries data is written to the database. + Previously the version needed to be changed to prevoke a write. + +* The check for binaries being released by more than one component is now done in EnvInfo + as well as MakeEnv. + +* Tidied up the output of EnvInfo, MakeEnv and CleanEnv. + +* ViewNotes now supports previewing the release notes for components that are currently pending + release. + +* Put the "Release environment" section of the release notes into a table. + +* Added a new command - ModNotes. This allows the release notes of an release that has already + been made to be modified. + +* Added a new command - BinInfo. This displays the name of the component that owns a particular + binary file, the currently installed version and the file's current status. + +* Added support for releasing test code. Mrp files now support a new keyword - 'testbinary' (and also + -testbinary). The syntax for this is very similar to the original 'binary' keyword. + +* Added support for displaying a summary of all releases to date of a particular component + in ViewNotes. + +* The ini file can now be in either \epoc32\relinfo for the directory the tools are installed + in. \epoc32\relinfo is checked first. If not found there, but found in the tools dir then + a warning is issued. To disable this warning use the new "no_ini_location_warning" keyword. + +* check_ignore.txt is no more. The standard ignores that used to ship in this file have been moved + into the body of the Perl scripts (IniData.pm to be precise). Project specific customisations + can be added to reltools.ini using the "ignore_binary" keyword. See the Installation Guide for + details. + +---------------------------------------------------------------------------------------- + +Version 2.10 +Made by Lee Luchford 02/11/2001 + +From Lee Luchford: + +* Rewrite of Crypt modules. Broken up into a base module Crypt.pm and 2 modules Crypt::PGP.pm and + Crypt::GPG.pm both of which implement an abstract interface defined in Crypt.pm + +* Fixed decryption bug in Crypt::GPG.pm. Open2 was not killing off child processes, now uses open + instead but dumps the output to a file which is then parsed for errors. + +* Rewrite of RemoteSite modules. Broken up into a base module RemoteSite.pm and 2 modules RemoteSite::FTP.pm and + RemoteSite::NetDrive.pm both of which implement an abstract interface defined in RemoteSite.pm + +* RemoteSite::FTP now has support for reconnect and resume for downloads and uploads + +* RemoteSite::FTP and RemoteSite::NetDrive both use temporary files during uploads and then rename the + temporary file to the final release name. Therefore .log files are no longer needed to confirm that + an upload was successful + +* RelExporter and RelImporter replaced by a base module RelTransfer.pm and 2 modules RelTransfer::Export + and RelTransfer::Import which inherit from the base module. + +* pgp passphrase errors handled better in RelTransfer::Import. Keep asking for passphrase until + correct + +* ExportRel, ExportEnv and ImportRel now have a -f option which forces the export and import of + releases even if they already exist + +* reltools.ini and check_ignore.txt now assumed to be stored in \epoc32\relinfo instead of the + release tools directory + +* Changed pgp_path keyword in reltools.ini to pgp_config_path + +* Changed pgp_users_keyid keyword to pgp_encrpytion_key in reltools.ini. Also this keyword can + be used more than once to build up a list of default keys used for encryption + +* Remote site type no longer determined by remote_host value in reltools.ini. Added remote_site_type + keyword which should have the value FTP or NETDRIVE + +* Added zero compression option to Utils::ZipList function + +* Replace globs with readdir in RelTransfer modules and EnvDb.pm + +From Joe Branton: + +* Partially fixed bug to do with the way file modified times are stored in the environment + database. The WIN32 Perl implementation returns file modified times taking into account + daylight saving. Previously they were stored in this form in the environment database, + which meant that when daylight saving changed, environments were reported as dirty. The + fix attempts to undo the daylight saving accounting, and store the times in GMT. + + It is a partial fix, because testing has revealed that certain time zones (e.g. Cairo, GMT +2) + cause unexpected hour shifts in some files. The reason for this is currently unknown (although + some test code was written in C using the Windows stdlib, and this showed the same behaviour). + + NOTE, ANY EXISTING ENVIRONMENT DATABASES WILL HAVE THEIR TIMES IN THE WRONG FORMAT. This + will manifest itself as the environment appearing completely dirty. To fix this, either run + ValidateEnv, or re-run GetEnv. In most cases, this problem should not return. Because of the + issue described above, users in some time zones may experience a recurrence of this problem + when daylight saving changes. Also, users that change their time zone to one of the affected + ones, may see this problem recur. + +* Release notes source files are now checked for existance as well as whether they are + actually a file (results in a more meaningful error message if the file does not exist). + +* DiffRel now removes the drive letter if specified for the source path. + +* PrepRel/Env now removes the drive letter if specified for the mrp file name. + +---------------------------------------------------------------------------------------- + +Version 2.09 +Made by Lee Luchford 17/10/2001 + +From Lee Luchford: + +* Fixed critical bug in MrpData.pm. Iprtool parsing failed in some cases causing some source + files to be missing from release + +----------------------------------------------------------------------------------------- + +Version 2.08 +Made by Joe Branton 12/10/2001 + +From Lee Luchford: + +* Fixed bug in RemoteSite::FTP. Sometimes a release was getting exported + even though it already existed on the remote site. This problem occurs if the connection is + dropped during the check for existence of a release on the remote site. Now attempts to reconnect + several times if the connection is dropped, if this does not work then dies marking the export + as failed + +* Improved error handling for components mistakenly ommitted from the export table. Now throws an + error if the component does not exist in the export table and the release does not exist on the + remote site. + +From Joe Branton: + +* Added more status checking to GetEnv - now checks the status of components that will be removed + and warns if their status is pending release (providing an oportunity to abort the GetEnv). + +* Fixed a bug in PrepRel. If called with no version argument, the specified component is removed + from the environment database. Previously, if a component name that did not exist was specified + PrepRel would still report successful removal from the database. It now reports an error. It + also removes that component's signature file as well as the database entry (i.e. fully cleans up). + +* Tweaked the code in MrpData that interacts with the build tools to cope with the version shipped + with Hurricane. The build tools now use GNU Make for most task (rather than Microsoft's NMake), + and this reports errors in a different way. The old build tools should still be supported. + +* Automatic calling of bldmake and generation of makefiles now only does one attempt of each (rather + than getting stuck in an infinite loop if there is a problem). + +* Add protection against makefiles that list files for release with double back slashes (e.g. + "\epoc32\release\wins\udeb\\test.dll") since these cause problems for the zip. Double slash + is replaced with a single slash. + +* Added a check in GenMrp to ensure that the bld.inf file exists - dies cleanly if not. + +* Fixed a bug in DiffEnv that caused components present in "environment 2" but not in "environment 1" + to be wrongly assigned to "environment 1". + +* Added "keep going" style error handling to PullEnv. + +* Added "-l" switch to GenMrp to allow the source directory nesting level to be specified. This allows + the tool to be used effectively with GT's new sub-system directory structure. + +* Fixed bug that meant whitespace in the release tools installation directory name caused the + tools to fail badly. + +* Fixed "uninitialised variable" warning in the exporting commands that occurs when there is no + pgp_path keyword in the reltools.ini. + +---------------------------------------------------------------------------------------- + +Version 2.07 +Made by Lee Luchford 19/9/2001 + +From Lee Luchford: + +* Replaced CryptTool with Crypt::PGP and Crypt::GNUPG grouping + together all modules with a common interface for encrypting and + decrypting files into one directory + Crypt::PGP uses NA command line PGP client (executable name pgp.exe) + Crypt::GNUPG uses GNU Privacy guard PGP client (executable name gpg.exe) + +* Changed FtpSite to RemoteSite::FTP and NetworkDrive to RemoteSite::LANShare + grouping together all modules with a common interface for accessing + a remote site into one directory + +* Updated modules which are affected by above changes + +* ExportRel replaced by RelExporter and ImportRel replaced by RelImporter + +* All Export and Import related modules now use named argument lists in constructors + +* Fix to Net::Config module to remove 'uninitialized value' warning when exporting/importing + +* Fixed handling of PGP passphrases with blank spaces + +* Added the ImportRel tool for importing single releases + +* MrpData.pm now handles single source files listed in the mrp file. + Runs IPRTool on the directory where the file is stored to get the + category of the file. + +* ExportData.pm now allows comment lines starting with # + +* ExportData.pm now allows spaces in recipient names in column headers + +* ExportData.pm returns empty anonymous array references instead + of undef. Fixes potential dererencing a non array reference bugs + +* RelExporter now checks to see if PGP keys listed in export data file exist on keyring + before attempting to encrypt releases + +* Crypt::PGP and Crypt::GNUPG include fixes for handling directory names with spaces + +From Joe Branton: + +* Fixed bug in GenMrp that caused an extra invalid binary statement to be printed. + +* Fixed bug in EnvDb::InstallComponent that caused an invalid database entry to be + written if the components reldata file fails to open. + +* Changed EnvDb::CheckEnv so that warnings about "unknown origin" files are not displayed + if there were any errors parsing mrp files. This was done because errors in mrp files + are likely to cause many "unknown origin" as a knock on effect. + +* Fixed bug in MakeRel.pm that causes releases to fail if they didn't contain any source + or binaries (release directory not made correctly). + +* Fixed bug in MakeRel.pm that caused an "Uninitialised value" warning to be displayed + when no internal version was specified. + +* Fixed bug in ViewNotes that cause the page displayed by the web browser to be invalid. + The temporary file was getting deleted before the browser had had a chance to read it. + ViewNotes now pauses until the user hits a key before deleting. + +* Added FAQ section to documentation. + +* Changed EnvDb::ValidateComp to pick up evalid from anywhere in the user's path, rather + than only \epoc32\tools (mainly to make running the test code easier). + +* Added an automated test suite for testing core (non-interactive) commands. + +* Added 'keep going' error handling functionality to PrepEnv - total number of errors is + listed at the end. + +* Added check to PrepRel.pm to ensure that a valid mrp file name is specified. + +* Fixed bugs in PushEnv/PullEnv that caused UNC paths to fail. + +* Added better parameter checking to PushEnv and PullEnv. + +* Fixed bug in EnvDb::CheckComp that caused an invalid db entry to be written if a check + was attempted on a component that did not exists. This manifested itself in EnvInfo if + you give the name of a non-existent component as a parameter. + +------------------------------------------------------------------------------------------ + +Version 2.06 +Made by Joe Branton 30/8/2001 + +From Joe Branton: + +* Fixed (another) bug in GetEnv that cause getting an environment on a clean drive + to fail (doh!). + +------------------------------------------------------------------------------------------ + +Version 2.05 +Made by Joe Branton 24/8/2001 + +From Lee Luchford: + +* Added some additional information about setting up PGP to the Installation Guide. + +From Joe Branton: + +* Fixed a bug in GetEnv that caused environment upgrading to fail. + +* Fixed a bug in CleanEnv that caused re-installation of dirty components to fail. + +* Fixed some cosmetic problems relating to the 'dot' progress information when + performing an environment scan. + +* Added additional status output to ValidateEnv. + +* Added additional feedback to PrepEnv and PrepRel. + +* Added implementation of interactive mode to PrepEnv. + +------------------------------------------------------------------------------------------ + +Version 2.04 +Made by Joe Branton 20/8/2001 + +From Lee Luchford: + +* Updated CPan Net module to latest release. + +* Change to CryptTool to display less warnings. + +* EnvDb.pm, ExportRel.pm and ImportRel.pm now use File::DosGlob as a workaround to glob + bug in latest Perl release. + +* Added a new ExportRel tool to export individual releases. + +* Source filtering (with IPR tool) is now used by default. Therefore the source_filter + keyword in reltools.ini is deprecated. A new keyword, ignore_source_filter_errors, maybe + used to switch off displaying of source filter errors in release notes. + + +From Joe Branton: + +* Added new tools CleanEnv, PullEnv and PushEnv (see documentation for details). + +* Added progress dots to environment scanning code (when used with a verbosity of 0). + +* Added 'keep going' type error handling to mrp file parsing during an environment scan. + +* Added makefile generation functionality to GenMrp. + +* Changed behaviour of GetEnv to work in phases. Phase 1 checks that each component in the + requested environment is physically available. Phase 2 removes all old binaries. Phase 3 + installs all new binaries. This makes the process robust when binary files have moved from + one component into another. + +* Added -l option to MakeRel which causes lib files to be copied from the thumb release + directory if they are not found in the armi release directory. + +* Added progress info (via verbosity level 1) and exit info to PrepEnv. + +* Fixed uninitialised variable bug in GetSource when an install path is not specified. + +* Added extra progress info to GetSource and PrepEnv. + +* Changed PrepEnv to have the same syntax as PrepRel - now uses '-m' to denote an mrp file name.