Revision: 3776
Author: pekka.klarck
Date: Thu Jun 10 07:08:10 2010
Log: final release notes
http://code.google.com/p/robotframework/source/detail?r=3776

Deleted:
 /wiki/ReleaseNotes25Final.wiki
Modified:
 /wiki/ReleaseNotes25.wiki

=======================================
--- /wiki/ReleaseNotes25Final.wiki      Thu Jun 10 07:06:21 2010
+++ /dev/null
@@ -1,251 +0,0 @@
-#summary Release notes for Robot Framework 2.5 series
-
-<wiki:toc max_depth="1"/>
-
-= Robot Framework 2.5 =
-
-Robot Framework (RF) 2.5 is a new major release with loads of bigger
-and smaller enhancements and bug fixes. It was released after few
-[PreviewReleases25 preview releases] on Thursday 2010-06-10.
-
-Questions and comments related to the
-release can be sent to the [MailingLists mailing lists] and possible
-bugs submitted to
-the [http://code.google.com/p/robotframework/issues issue tracker].
-
-= Downloads =
-
-Installers and other packages can be downloaded from the
-[http://code.google.com/p/robotframework/downloads/list download page].
-See [Installation installation instructions] for installation
-and upgrading information.
-
-= Most important new features =
-
-== Continuing test execution on failure ==
-
-Being able to continue the test execution after failures was the most
-requested feature in RF 2.5. There are now several ways to accomplish it:
-
-  * Raising a _continuable_ exception from a test library (issue 137).
-  * Using `Run Keyword And Continue On Failure` keyword (issue 545).
- * In teardowns all keywords are automatically executed even if there are failures (issue 544).
-
-For more information about this new feature, see the [http://robotframework.googlecode.com/svn/tags/robotframework-2.5/doc/userguide/RobotFrameworkUserGuide.html#continue-on-failure Continue on failure] section in the [UserGuide User Guide].
-
-== Stopping test execution gracefully ==
-
-Another important test execution related feature is the ability to
-stop the test execution fully so that reports and logs are
-generated. Nowadays there are several ways to do it:
-
-  * Pressing `Ctrl-C` (issue 108).
-  * Using signals `SIGINT` and `SIGTERM` (issue 349).
-  * Raising a _fatal_ exception from a test library (issue 366).
-  * Using `Fatal Error` keyword (issue 546).
-
-This feature is explained more thoroughly in the [http://robotframework.googlecode.com/svn/tags/robotframework-2.5/doc/userguide/RobotFrameworkUserGuide.html#stopping-test-execution-gracefully Stopping test execution gracefully] section in the [UserGuide User Guide].
-
-== Support for named arguments ==
-
-The named arguments syntax (issue 215) makes it possible to use
-keywords that have several arguments with default values so that only
-certain arguments are overridden.  For example, the keyword below
-could be used like `| Named Arg Example | zap=42 |` and first two
-arguments would get their default values.
-
-{{{
-  def named_arg_example(foo=1, bar=2, zap=3):
-      print foo, bar, zap
-}}}
-
-See also the [http://robotframework.googlecode.com/svn/tags/robotframework-2.5/doc/userguide/RobotFrameworkUserGuide.html#named-arguments Named arguments] section in the [UserGuide User Guide].
-
-== Possibility to specify test template to ease data-driven testing ==
-
-Test templates (issue 500) allow specifying the keyword to use in test
-cases only once. This makes data-driven testing, where the same
-keyword is executed with different input and/or output values, easier
-and reduces duplication. An added benefit is that when a test has
-multiple steps, all of them will be executed even if one of the steps
-fails.
-
-This functionality can be enabled for all tests in a file with in the
-setting table with the setting `Test Template` or for individual tests
-with the setting `[Template]`. The example below illustrates the
-latter usage.
-
-{{{
-***Test Case***
-Invalid login
-    [Template]  Login with invalid user name and password should fail
-    ${VALID USER}  invalid password
-    invalid user   ${VALID PASSWORD}
-    invalid user   xxx
-    ${VALID USER}  ${EMPTY}
-    ${EMPTY}       ${VALID PASSWORD}
-    ${EMPTY}       ${EMPTY}
-}}}
-
-See also the [http://robotframework.googlecode.com/svn/tags/robotframework-2.5/doc/userguide/RobotFrameworkUserGuide.html#test-templates Test templates] and [http://robotframework.googlecode.com/svn/tags/robotframework-2.5/doc/userguide/RobotFrameworkUserGuide.html#data-driven-style Data-driven style] sections in the [UserGuide User Guide].
-
-== Possibility to validate test data using dry-run ==
-
-A new command line option `--runmode dryrun` was added to support
-validation of test data without actually executing the lowest level
-keywords (issue 452).
-
-== Full Jython 2.5 support ==
-
-Robot Framework 2.1.3 already works with Jython 2.5 but there were
-some rough edges . Nowadays Jython 2.5 is fully and officially
-supported (issue 198), and even installation using it works
-(issue 547).
-
-= Backwards incompatible changes =
-
-== Minimum Python/Jython version is 2.5 ==
-
-Robot Framework 2.5 only runs on Python and Jython 2.5 or newer (but
-not on 3.x yet). If you cannot upgrade your Python/Jython installation,
-you can use older Robot Framework releases that support Jython 2.2 and
-Python 2.3 and newer.
-
-== Not compatible with previous RIDE and Mabot releases ==
-
-The internal changes in the framework have made it incompatible with
-the previous [http://code.google.com/p/robotframework-ride RIDE] and
-[http://code.google.com/p/robotframework-mabot Mabot]
-releases. RF 2.5 compatible RIDE release is under development.
-
-== Parsing modules have been rewritten ==
-
-In order to support RIDE better in the future, Robot Framework's
-internal parsing modules were rewritten (issue 486). These changes do
-not affect test execution but custom tools using the parsing modules
-need to be updated. The good news is that the new parsing modules are
-much easier to use externally than the old ones.
-
-== Parallel execution of keywords was removed ==
-
-The special `:PARALLEL` syntax was removed because it was buggy,
-fixing it fully would have been too big task, and supporting the
-special syntax in the core framework, in RIDE, and elsewhere is extra
-work. For more information see issue 490.
-
-== Default Tags and Test Timeout removed from initialization files ==
-
-It is not possible to use `Default Tags` or `Test Timeout` settings
-in test suite initialization files anymore. See issue 398 for details.
-
-== List variables are not supported with certain settings ==
-
-It is not possible to use `...@{list}` variables anymore with settings
-that require a scalar value. Issue 564 explains this limitation more
-throughly.
-
-== Other backwards incompatible changes ==
-
- * Old syntax for repeating single keyword multiple times was removed (issue 194). - * Several helper methods were removed from the `robot.utils` module (issue 481). - * Built-in keywords executing other keywords (`Run Keyword And Ignore/Expect Error`, `Wait Until Keyword Succeeds`) do not hide syntax errors or timeouts (issue 521). - * Running all the keywords in teardowns even if there are failures (issue 544) may cause problems. Keywords that were previously skipped after failures are now run.
-  * `robotidy.py` tool was removed (issue 553).
- * `:FOR` loops without body or without values to loop over fail (issue 560). - * New automatic variable `${SUITE SOURCE}` may overwrite existing variables with the same name (issue 346). - * The way how test suite, test case, user keyword, and metadata names are created was changed (issue 377 and issue 562). - * Deprecated `mode` argument of `Create File` keyword was changed to `encoding` (issue 256). - * Deprecated `pattern_type` argument was removed from `Grep File` and `List Directory` keywords (issue 258 and issue 260). - * Deprecated `return_mode` argument was removed from `Run` keyword (issue 358).
-  * Deprecated `mode` argument of `Read Process Output` was removed.
- * Deprecated keywords `Syslog` and `Grep` were removed (issue 271 and issue 287). - * Deprecated `--transform` and `--colormonitor` options were removed (issue 526 and issue 527).
-
-== Deprecated features ==
-
-These features have been deprecated and will be removed in RF 2.6:
-
- * The possibility to create scalar variables with a list value in the Variable table (issue 401). - * The possibility to have scalar and list variables with the same base name (e.g. `${VAR}` and `...@{var}`) (issue 484).
-  * `Create File With Encoding` keyword (issue 256).
-
-= All fixes and enhancements in RF 2.5 =
-
-|| *ID* || *Type* || *Priority* || *Summary* ||
-|| Issue 198 || Enhancement || Critical || Jython 2.5 support ||
-|| Issue 529 || Defect || High || UTF-8 BOM is not ignored in plain text or TSV test data files || -|| Issue 108 || Enhancement || High || Ctrl-c should stop test execution gracefully || -|| Issue 137 || Enhancement || High || Support continuing test execution regardless of failures || -|| Issue 215 || Enhancement || High || Support for named arguments to ease overriding only certain default values || -|| Issue 349 || Enhancement || High || It should be possible to stop test execution gracefully with signal || -|| Issue 366 || Enhancement || High || Stop execution if special "fatal" exception raised || -|| Issue 377 || Enhancement || High || Don't convert test suite, test case and keyword names unnecessarily || -|| Issue 452 || Enhancement || High || Possibility to verify test data without actually executing tests (dry-run) || -|| Issue 486 || Enhancement || High || Parsing modules should preserve comments to keep them available for RIDE and other tools || -|| Issue 487 || Enhancement || High || Make the parsed test data model easier to use externally by RIDE and other tools || -|| Issue 490 || Enhancement || High || Remove parallel execution of keywords (`:PARALLEL` ) because it doesn't work correctly and requires special syntax || -|| Issue 500 || Enhancement || High || Possibility to specify 'Test Template' for all tests to ease data-driven testing || -|| Issue 544 || Enhancement || High || Run all keywords in teardown even if there are failures || -|| Issue 564 || Enhancement || High || Disallow using `...@{list}` variables with settings that require scalar values to ease parsing || -|| Issue 518 || Documentation || High || Document that Python/Jython version must be >= 2.5 (and < 3.0) || -|| Issue 541 || Documentation || High || Document test execution flow (incl. continue on failure and stopping gracefully) || -|| Issue 288 || Defect || Medium || It is not possible to assign all Python and Java iterables to list variables || -|| Issue 444 || Defect || Medium || Quickstart demo fails when executed in a directory containing space in its name || -|| Issue 474 || Defect || Medium || Byte strings containing non-ASCII characters not escaped on Jython || -|| Issue 499 || Defect || Medium || HTML entity references having values outside ISO-8859-1 are not resolved correctly. || -|| Issue 509 || Defect || Medium || Non-ASCII output returned by `Run` and `Start Process` keywords is decoded incorrectly when stdout is redirected (e.g. in CI environment) || -|| Issue 516 || Defect || Medium || Non-ASCII characters not shown correctly on the console output || -|| Issue 520 || Defect || Medium || Using a timeouted keyword with wrong number of arguments causes `FrameworkError` || -|| Issue 521 || Defect || Medium || Keywords executing other keywords (`Run Kw and Ignore/Expect Error`, `Wait Until Kw Succeeds`) hide syntax errors and timeouts || -|| Issue 523 || Defect || Medium || Quote character `"` at the end of test suite documentation breaks report (and log) generation || -|| Issue 530 || Defect || Medium || Creating logs and reports fails on Jython when suite name and test name contain non-ASCII characters || -|| Issue 534 || Defect || Medium || Showing non-ASCII characters printed from Java libraries in logs depends on system encoding || -|| Issue 550 || Defect || Medium || Non-integer value with `FOR IN RANGE` can break the whole test execution || -|| Issue 573 || Defect || Medium || Runner scripts (`pybot`, `jybot`, `rebot`) require bash on unixy machines || -|| Issue 194 || Enhancement || Medium || Remove the old syntax for repeating a single keyword multiple times || -|| Issue 232 || Enhancement || Medium || Possibility to configure parsing so that files having test case table are not ignored even if they don't have tests || -|| Issue 321 || Enhancement || Medium || Enhance listener `start_suite` method to provide test/suite names and and total test count || -|| Issue 341 || Enhancement || Medium || New `Set Test Message` keyword to set or override test message || -|| Issue 342 || Enhancement || Medium || New `BuiltIn` keyword `Run Keyword If Timeout Occurred` || -|| Issue 343 || Enhancement || Medium || Add free metadata to attributes passed to `start_suite` and `end_suite` listener methods || -|| Issue 346 || Enhancement || Medium || New variable `${SUITE SOURCE}` containing an absolute path to suite file or directory || -|| Issue 398 || Enhancement || Medium || Remove `Default Tags` and `Test Timeout` from test suite initialization files || -|| Issue 401 || Enhancement || Medium || Deprecate possibility to create scalar variables containing list in variable table ||
-|| Issue 404 || Enhancement || Medium || Better styles for `libdoc.py` ||
-|| Issue 427 || Enhancement || Medium || Allow variable files' `get_variables` to return any mapping || -|| Issue 484 || Enhancement || Medium || Deprecate the possibility to have scalar and list variables with same base name (e.g. `${FOO}` and `...@{foo}`) | | -|| Issue 515 || Enhancement || Medium || Importing Java libraries does not work on standalone Jython || -|| Issue 524 || Enhancement || Medium || Parsing modules should preserve table headers to make them available for RIDE and other tools || -|| Issue 528 || Enhancement || Medium || Argument files cannot have non-ASCII content || -|| Issue 531 || Enhancement || Medium || Show repr instead string value of the arguments and return value in the log file || -|| Issue 533 || Enhancement || Medium || Documentation generated by `libdoc.py` should show the test library scope || -|| Issue 535 || Enhancement || Medium || Possibility to give custom styles for `libdoc.py` || -|| Issue 545 || Enhancement || Medium || New `BuiltIn` keyword `Run Keyword And Continue On Failure` || -|| Issue 546 || Enhancement || Medium || New `BuiltIn` keyword `Fatal Error` to stop the whole test execution || -|| Issue 547 || Enhancement || Medium || Support for installation using Jython ||
-|| Issue 553 || Enhancement || Medium || Remove `robotidy.py` tool ||
-|| Issue 554 || Enhancement || Medium || Add an option to define report background colors || -|| Issue 563 || Enhancement || Medium || Support for setting suite metadata using syntax `| Metadata | Name | Value |` || -|| Issue 572 || Enhancement || Medium || `Run Keywords` keyword to allow running multiple keywords in setup/teardown easily || -|| Issue 497 || Documentation || Medium || Document that timeouts might cause performance problems if tests are executed with Python || -|| Issue 513 || Documentation || Medium || Add "how to debug problems" section to the User Guide || -|| Issue 403 || Refactoring || Medium || Parsed user keyword objects should have all data even if part of the data is invalid ||
-|| Issue 511 || Defect || Low || Easter is coming but the egg is missing ||
-|| Issue 522 || Defect || Low || Errors are corrupted when test data paths contain non-ASCII characters || -|| Issue 569 || Defect || Low || Non-existing variable in user keyword return value very hard to debug || -|| Issue 256 || Enhancement || Low || Change deprecated `mode` argument of `Create File` keyword to `encoding` and deprecate `Create File With Encoding` || -|| Issue 258 || Enhancement || Low || Remove deprecated `pattern_type` argument of `Grep File` keyword || -|| Issue 260 || Enhancement || Low || Remove deprecated `pattern_type` argument from `List Directory` keywords ||
-|| Issue 271 || Enhancement || Low || Remove deprecated `Syslog` keyword ||
-|| Issue 287 || Enhancement || Low || Remove deprecated `Grep` keyword ||
-|| Issue 340 || Enhancement || Low || Increased the maximum size of the error message to 40 lines || -|| Issue 358 || Enhancement || Low || Remove deprecated `return_mode` argument of `Run` keyword || -|| Issue 514 || Enhancement || Low || Remove deprecated `mode` argument from `Read Process Output` keyword || -|| Issue 526 || Enhancement || Low || Remove already deprecated and ignored `--transform` option || -|| Issue 527 || Enhancement || Low || Remove deprecated `--colormonitor` option || -|| Issue 560 || Enhancement || Low || `:FOR` loops without body or without values to loop through should fail || -|| Issue 562 || Enhancement || Low || Suite metadata names should not be converted unnecessarily ||
-|| Issue 481 || Refactoring || Low || Cleanup `robot.utils` module ||
-
-Altogether 74 issues.
-
=======================================
--- /wiki/ReleaseNotes25.wiki   Mon May 31 05:18:35 2010
+++ /wiki/ReleaseNotes25.wiki   Thu Jun 10 07:08:10 2010
@@ -1,66 +1,71 @@
-#summary Robot Framework 2.5 pre-releases
+#summary Release notes for Robot Framework 2.5 series

 <wiki:toc max_depth="1"/>

-= Robot Framework 2.5 Preview Releases =
-
-Robot Framework (RF) 2.5 is a new major release with loads of bigger and smaller enhancements and bug fixes. Before the final release there will be some alpha, beta, and release candidate releases in order to:
-
-  * make the already implemented features available to users,
-  * get feedback from the new features, and
-  * allow users to test the new version on their environments.
-
-[#Robot_Framework_2.5_Alpha_1 RF 2.5 apha 1] was released on 2010-05-06, and -[#Robot_Framework_2.5_Release_Candidate_1 RF 2.5 release candidate 1] on 2010-05-31.
-The target is to get the final release out on Monday 2010-06-07.
-
-Please submit possible bugs you encounter with the preview releases to the
-[http://code.google.com/p/robotframework/issues/list issue tracker], and send general
-comments and questions to the [MailingLists mailing lists].
+= Robot Framework 2.5 =
+
+Robot Framework (RF) 2.5 is a new major release with loads of bigger
+and smaller enhancements and bug fixes. It was released after few
+[PreviewReleases25 preview releases] on Thursday 2010-06-10.
+
+Questions and comments related to the
+release can be sent to the [MailingLists mailing lists] and possible
+bugs submitted to
+the [http://code.google.com/p/robotframework/issues issue tracker].

 = Downloads =

-The latest pre-release is always available on the
+Installers and other packages can be downloaded from the
 [http://code.google.com/p/robotframework/downloads/list download page].
+See [Installation installation instructions] for installation
+and upgrading information.

 = Most important new features =

 == Continuing test execution on failure ==

-Being able to continue the test execution after failures was the most requested feature in RF 2.5. There are several ways to accomplish it:
-
-  * Raising a _continuable_ exception from a test library (issue 137)
-  * Using `Run Keyword And Continue On Failure` keyword (issue 545)
-  * In teardowns all keywords are executed automatically (issue 544)
-
-In all these cases the test will be marked failed at the end. Its final error message is created by combining the messages from the occurred failures together.
+Being able to continue the test execution after failures was the most
+requested feature in RF 2.5. There are now several ways to accomplish it:
+
+  * Raising a _continuable_ exception from a test library (issue 137).
+  * Using `Run Keyword And Continue On Failure` keyword (issue 545).
+ * In teardowns all keywords are automatically executed even if there are failures (issue 544).
+
+For more information about this new feature, see the [http://robotframework.googlecode.com/svn/tags/robotframework-2.5/doc/userguide/RobotFrameworkUserGuide.html#continue-on-failure Continue on failure] section in the [UserGuide User Guide].

 == Stopping test execution gracefully ==

-Another important test execution related feature is the ability to stop the test execution fully so that reports and logs are generated. Nowadays there are several ways to do it:
-
-  * Pressing `Ctrl-C` (issue 108)
-  * Using signals `SIGINT` and `SIGTERM` (issue 349)
-  * Raising a _fatal_ exception from a test library (issue 366)
-  * Using `Fatal Error` keyword (issue 546)
+Another important test execution related feature is the ability to
+stop the test execution fully so that reports and logs are
+generated. Nowadays there are several ways to do it:
+
+  * Pressing `Ctrl-C` (issue 108).
+  * Using signals `SIGINT` and `SIGTERM` (issue 349).
+  * Raising a _fatal_ exception from a test library (issue 366).
+  * Using `Fatal Error` keyword (issue 546).
+
+This feature is explained more thoroughly in the [http://robotframework.googlecode.com/svn/tags/robotframework-2.5/doc/userguide/RobotFrameworkUserGuide.html#stopping-test-execution-gracefully Stopping test execution gracefully] section in the [UserGuide User Guide].

 == Support for named arguments ==

-The named arguments syntax (issue 215) makes it possible to use keywords that have several arguments with default values so that only certain arguments are overridden. -For example, the keyword below could be used like `| Named Arg Example | zap=42 |` and first two arguments would get their default values.
+The named arguments syntax (issue 215) makes it possible to use
+keywords that have several arguments with default values so that only
+certain arguments are overridden.  For example, the keyword below
+could be used like `| Named Arg Example | zap=42 |` and first two
+arguments would get their default values.

 {{{
   def named_arg_example(foo=1, bar=2, zap=3):
       print foo, bar, zap
 }}}
+
+See also the [http://robotframework.googlecode.com/svn/tags/robotframework-2.5/doc/userguide/RobotFrameworkUserGuide.html#named-arguments Named arguments] section in the [UserGuide User Guide].

 == Possibility to specify test template to ease data-driven testing ==

-*NOTE:* This is a new feature in RF 2.5 release candidate 1.
-
 Test templates (issue 500) allow specifying the keyword to use in test
 cases only once. This makes data-driven testing, where the same
-keyword is executed with the same input and/or output values, easier
+keyword is executed with different input and/or output values, easier
 and reduces duplication. An added benefit is that when a test has
 multiple steps, all of them will be executed even if one of the steps
 fails.
@@ -81,128 +86,166 @@
     ${EMPTY}       ${VALID PASSWORD}
     ${EMPTY}       ${EMPTY}
 }}}
+
+See also the [http://robotframework.googlecode.com/svn/tags/robotframework-2.5/doc/userguide/RobotFrameworkUserGuide.html#test-templates Test templates] and [http://robotframework.googlecode.com/svn/tags/robotframework-2.5/doc/userguide/RobotFrameworkUserGuide.html#data-driven-style Data-driven style] sections in the [UserGuide User Guide].

 == Possibility to validate test data using dry-run ==

-A new command line option `--runmode dryrun` was added to support validation of test data without actually executing the lowest level keywords (issue 452).
+A new command line option `--runmode dryrun` was added to support
+validation of test data without actually executing the lowest level
+keywords (issue 452).

 == Full Jython 2.5 support ==

-Robot Framework 2.1.3 already works with Jython 2.5 but there were some rough edges . Nowadays Jython 2.5 is fully and officially supported (issue 198), and even installation using it works (issue 547).
-
+Robot Framework 2.1.3 already works with Jython 2.5 but there were
+some rough edges . Nowadays Jython 2.5 is fully and officially
+supported (issue 198), and even installation using it works
+(issue 547).

 = Backwards incompatible changes =

 == Minimum Python/Jython version is 2.5 ==

-Robot Framework 2.5 only runs on Python and Jython 2.5 or newer (but on 3.x yet). -If you cannot upgrade your Python/Jython installation, you can use older Robot Framework releases that support Jython 2.2 and Python 2.3 and newer.
+Robot Framework 2.5 only runs on Python and Jython 2.5 or newer (but
+not on 3.x yet). If you cannot upgrade your Python/Jython installation,
+you can use older Robot Framework releases that support Jython 2.2 and
+Python 2.3 and newer.

 == Not compatible with previous RIDE and Mabot releases ==

 The internal changes in the framework have made it incompatible with
 the previous [http://code.google.com/p/robotframework-ride RIDE] and
 [http://code.google.com/p/robotframework-mabot Mabot]
-releases.
-
- * RF 2.5 alpha 1 is compatible with [http://code.google.com/p/robotframework-ride/wiki/ReleaseNotes#RIDE_0.23 RIDE 0.23], which is also compatible with [http://code.google.com/p/robotframework/wiki/ReleaseNotes21#Robot_Framework_2.1.3 RF 2.1.3].
-  * RF 2.5 rc 1 is currently not compatible with any RIDE release.
-  * No RF 2.5 preview release is compatible with Mabot.
-
-== Other backwards incompatible changes ==
-
-Potentially backwards incompatible issues are
-[http://code.google.com/p/robotframework/issues/list?can=1&q=target%3D2.5+label%3Dbwic labeled with bwic label in the issue tracker]. Why these changes may cause problems will be explained thoroughly later when these release notes are improved.
-
-= Deprecated features =
-
-Will be listed later.
-
-= Robot Framework 2.5 Release Candidate 1 =
-
-Robot Framework Release Candidate 1 was released 2010-05-31. This release contains all -functionality intended to be included in RF 2.5 and the main issues holding back the final -release are related to documentation. Additionally, we'll continue implementing compatible
-RIDE release straight after the RC.
-
-Full list of issues that were closed after alpha1 is listed below.
-
-
-|| Issue 377 || Enhancement || High || Don't convert test suite, test case and keyword names unnecessarily || -|| Issue 452 || Enhancement || High || Possibility to verify test data without actually executing tests (dry-run) || -|| Issue 486 || Enhancement || High || Parsing modules should preserve comments to keep them available for RIDE and other tools || -|| Issue 500 || Enhancement || High || Possibility to specify 'Test Template' for all tests to ease data-driven testing || -|| Issue 564 || Enhancement || High || Disallow using `...@{list}` variables with settings that require scalar values to ease parsing || -|| Issue 518 || Documentation || High || Document that Python/Jython version must be >= 2.5 (and < 3.0) || -|| Issue 444 || Defect || Medium || Quickstart Demo fails in windows if sut directory has whitespace || -|| Issue 550 || Defect || Medium || Non-integer value with `FOR IN RANGE` can break the whole test execution || -|| Issue 232 || Enhancement || Medium || Possibility to configure parsing so that files having test case table are not ignored even if they don't have tests || -|| Issue 515 || Enhancement || Medium || Importing Java libraries does not work on standalone Jython || -|| Issue 524 || Enhancement || Medium || Parsing modules should preserve table headers to make them available for RIDE and other tools ||
-|| Issue 553 || Enhancement || Medium || Remove `robotidy.py` tool ||
-|| Issue 563 || Enhancement || Medium || Support for setting suite metadata using syntax `| Metadata | Name | Value |` || -|| Issue 403 || Refactoring || Medium || Parsed user keyword objects should have all data even if part of the data is invalid || -|| Issue 560 || Enhancement || Low || For loop without body or without values should fail || -|| Issue 562 || Enhancement || Low || Suite metadata names should not be converted unnecessarily ||
-|| Issue 481 || Refactoring || Low || Cleanup `robot.utils` module ||
-
-Altogether 17 issues.
-
-
-= Robot Framework 2.5 Alpha 1 =
-
-The first RF 2.5 pre-release was releases on 2010-05-06. Full list of issues is below.
+releases. RF 2.5 compatible RIDE release is under development.
+
+== Parsing modules have been rewritten ==
+
+In order to support RIDE better in the future, Robot Framework's
+internal parsing modules were rewritten (issue 486). These changes do
+not affect test execution but custom tools using the parsing modules
+need to be updated. The good news is that the new parsing modules are
+much easier to use externally than the old ones.
+
+== Parallel execution of keywords was removed ==
+
+The special `:PARALLEL` syntax was removed because it was buggy,
+fixing it fully would have been too big task, and supporting the
+special syntax in the core framework, in RIDE, and elsewhere is extra
+work. For more information see issue 490.
+
+== Default Tags and Test Timeout removed from initialization files ==
+
+It is not possible to use `Default Tags` or `Test Timeout` settings
+in test suite initialization files anymore. See issue 398 for details.
+
+== List variables are not supported with certain settings ==
+
+It is not possible to use `...@{list}` variables anymore with settings
+that require a scalar value. Issue 564 explains this limitation more
+throughly.
+
+== Other backwards incompatible changes ==
+
+ * Old syntax for repeating single keyword multiple times was removed (issue 194). + * Several helper methods were removed from the `robot.utils` module (issue 481). + * Built-in keywords executing other keywords (`Run Keyword And Ignore/Expect Error`, `Wait Until Keyword Succeeds`) do not hide syntax errors or timeouts (issue 521). + * Running all the keywords in teardowns even if there are failures (issue 544) may cause problems. Keywords that were previously skipped after failures are now run.
+  * `robotidy.py` tool was removed (issue 553).
+ * `:FOR` loops without body or without values to loop over fail (issue 560). + * New automatic variable `${SUITE SOURCE}` may overwrite existing variables with the same name (issue 346). + * The way how test suite, test case, user keyword, and metadata names are created was changed (issue 377 and issue 562). + * Deprecated `mode` argument of `Create File` keyword was changed to `encoding` (issue 256). + * Deprecated `pattern_type` argument was removed from `Grep File` and `List Directory` keywords (issue 258 and issue 260). + * Deprecated `return_mode` argument was removed from `Run` keyword (issue 358).
+  * Deprecated `mode` argument of `Read Process Output` was removed.
+ * Deprecated keywords `Syslog` and `Grep` were removed (issue 271 and issue 287). + * Deprecated `--transform` and `--colormonitor` options were removed (issue 526 and issue 527).
+
+== Deprecated features ==
+
+These features have been deprecated and will be removed in RF 2.6:
+
+ * The possibility to create scalar variables with a list value in the Variable table (issue 401). + * The possibility to have scalar and list variables with the same base name (e.g. `${VAR}` and `...@{var}`) (issue 484).
+  * `Create File With Encoding` keyword (issue 256).
+
+= All fixes and enhancements in RF 2.5 =

 || *ID* || *Type* || *Priority* || *Summary* ||
 || Issue 198 || Enhancement || Critical || Jython 2.5 support ||
-|| Issue 288 || Defect || High || It is not possible to assign all Python and Java iterables to list variables || || Issue 529 || Defect || High || UTF-8 BOM is not ignored in plain text or TSV test data files || || Issue 108 || Enhancement || High || Ctrl-c should stop test execution gracefully || -|| Issue 137 || Enhancement || High || Support for continuing test execution regardless of failures (ContinueOnFailure) || +|| Issue 137 || Enhancement || High || Support continuing test execution regardless of failures || || Issue 215 || Enhancement || High || Support for named arguments to ease overriding only certain default values || || Issue 349 || Enhancement || High || It should be possible to stop test execution gracefully with signal || || Issue 366 || Enhancement || High || Stop execution if special "fatal" exception raised || -|| Issue 398 || Enhancement || High || Remove `Default Tags` and `Test Timeout` from test suite initialization files || +|| Issue 377 || Enhancement || High || Don't convert test suite, test case and keyword names unnecessarily || +|| Issue 452 || Enhancement || High || Possibility to verify test data without actually executing tests (dry-run) || +|| Issue 486 || Enhancement || High || Parsing modules should preserve comments to keep them available for RIDE and other tools || +|| Issue 487 || Enhancement || High || Make the parsed test data model easier to use externally by RIDE and other tools || +|| Issue 490 || Enhancement || High || Remove parallel execution of keywords (`:PARALLEL` ) because it doesn't work correctly and requires special syntax || +|| Issue 500 || Enhancement || High || Possibility to specify 'Test Template' for all tests to ease data-driven testing || || Issue 544 || Enhancement || High || Run all keywords in teardown even if there are failures || +|| Issue 564 || Enhancement || High || Disallow using `...@{list}` variables with settings that require scalar values to ease parsing || +|| Issue 518 || Documentation || High || Document that Python/Jython version must be >= 2.5 (and < 3.0) || +|| Issue 541 || Documentation || High || Document test execution flow (incl. continue on failure and stopping gracefully) || +|| Issue 288 || Defect || Medium || It is not possible to assign all Python and Java iterables to list variables || +|| Issue 444 || Defect || Medium || Quickstart demo fails when executed in a directory containing space in its name || || Issue 474 || Defect || Medium || Byte strings containing non-ASCII characters not escaped on Jython || || Issue 499 || Defect || Medium || HTML entity references having values outside ISO-8859-1 are not resolved correctly. || || Issue 509 || Defect || Medium || Non-ASCII output returned by `Run` and `Start Process` keywords is decoded incorrectly when stdout is redirected (e.g. in CI environment) || || Issue 516 || Defect || Medium || Non-ASCII characters not shown correctly on the console output || -|| Issue 520 || Defect || Medium || Using a timeouted keyword with wrong number of arguments causes FrameworkError || +|| Issue 520 || Defect || Medium || Using a timeouted keyword with wrong number of arguments causes `FrameworkError` || || Issue 521 || Defect || Medium || Keywords executing other keywords (`Run Kw and Ignore/Expect Error`, `Wait Until Kw Succeeds`) hide syntax errors and timeouts || -|| Issue 523 || Defect || Medium || " character at the end of test suite documentation breaks report (and log) generation || +|| Issue 523 || Defect || Medium || Quote character `"` at the end of test suite documentation breaks report (and log) generation || || Issue 530 || Defect || Medium || Creating logs and reports fails on Jython when suite name and test name contain non-ASCII characters || || Issue 534 || Defect || Medium || Showing non-ASCII characters printed from Java libraries in logs depends on system encoding || +|| Issue 550 || Defect || Medium || Non-integer value with `FOR IN RANGE` can break the whole test execution || +|| Issue 573 || Defect || Medium || Runner scripts (`pybot`, `jybot`, `rebot`) require bash on unixy machines || || Issue 194 || Enhancement || Medium || Remove the old syntax for repeating a single keyword multiple times || +|| Issue 232 || Enhancement || Medium || Possibility to configure parsing so that files having test case table are not ignored even if they don't have tests || || Issue 321 || Enhancement || Medium || Enhance listener `start_suite` method to provide test/suite names and and total test count || || Issue 341 || Enhancement || Medium || New `Set Test Message` keyword to set or override test message || -|| Issue 342 || Enhancement || Medium || New keyword `Run Keyword If Timeout Occurred` to BuiltIn || -|| Issue 343 || Enhancement || Medium || Add free metadata to attributes passed to start_suite and end_suite listener methods || -|| Issue 346 || Enhancement || Medium || New variable ${SUITE SOURCE} containing an absolute path to suite file or directory || +|| Issue 342 || Enhancement || Medium || New `BuiltIn` keyword `Run Keyword If Timeout Occurred` || +|| Issue 343 || Enhancement || Medium || Add free metadata to attributes passed to `start_suite` and `end_suite` listener methods || +|| Issue 346 || Enhancement || Medium || New variable `${SUITE SOURCE}` containing an absolute path to suite file or directory || +|| Issue 398 || Enhancement || Medium || Remove `Default Tags` and `Test Timeout` from test suite initialization files || || Issue 401 || Enhancement || Medium || Deprecate possibility to create scalar variables containing list in variable table ||
 || Issue 404 || Enhancement || Medium || Better styles for `libdoc.py` ||
|| Issue 427 || Enhancement || Medium || Allow variable files' `get_variables` to return any mapping || || Issue 484 || Enhancement || Medium || Deprecate the possibility to have scalar and list variables with same base name (e.g. `${FOO}` and `...@{foo}`) | | -|| Issue 490 || Enhancement || Medium || Remove parallel execution of keywords (`:PARALLEL` ) because it doesn't work correctly and requires special syntax || +|| Issue 515 || Enhancement || Medium || Importing Java libraries does not work on standalone Jython || +|| Issue 524 || Enhancement || Medium || Parsing modules should preserve table headers to make them available for RIDE and other tools || || Issue 528 || Enhancement || Medium || Argument files cannot have non-ASCII content || || Issue 531 || Enhancement || Medium || Show repr instead string value of the arguments and return value in the log file || -|| Issue 533 || Enhancement || Medium || Documentation should include the scope || +|| Issue 533 || Enhancement || Medium || Documentation generated by `libdoc.py` should show the test library scope || || Issue 535 || Enhancement || Medium || Possibility to give custom styles for `libdoc.py` || -|| Issue 545 || Enhancement || Medium || New keyword 'Run Keyword And Continue On Failure' || -|| Issue 546 || Enhancement || Medium || New BuiltIn keyword `Fatal Error` to stop the whole test execution || -|| Issue 547 || Enhancement || Medium || Enhance install.py script so that pybot-script is not created when run with Jython || +|| Issue 545 || Enhancement || Medium || New `BuiltIn` keyword `Run Keyword And Continue On Failure` || +|| Issue 546 || Enhancement || Medium || New `BuiltIn` keyword `Fatal Error` to stop the whole test execution || +|| Issue 547 || Enhancement || Medium || Support for installation using Jython ||
+|| Issue 553 || Enhancement || Medium || Remove `robotidy.py` tool ||
+|| Issue 554 || Enhancement || Medium || Add an option to define report background colors || +|| Issue 563 || Enhancement || Medium || Support for setting suite metadata using syntax `| Metadata | Name | Value |` || +|| Issue 572 || Enhancement || Medium || `Run Keywords` keyword to allow running multiple keywords in setup/teardown easily || || Issue 497 || Documentation || Medium || Document that timeouts might cause performance problems if tests are executed with Python || +|| Issue 513 || Documentation || Medium || Add "how to debug problems" section to the User Guide || +|| Issue 403 || Refactoring || Medium || Parsed user keyword objects should have all data even if part of the data is invalid ||
 || Issue 511 || Defect || Low || Easter is coming but the egg is missing ||
|| Issue 522 || Defect || Low || Errors are corrupted when test data paths contain non-ASCII characters || -|| Issue 256 || Enhancement || Low || Change 'mode' argument 'Create File' to 'encoding' and deprecate 'Create File With Encoding' || +|| Issue 569 || Defect || Low || Non-existing variable in user keyword return value very hard to debug || +|| Issue 256 || Enhancement || Low || Change deprecated `mode` argument of `Create File` keyword to `encoding` and deprecate `Create File With Encoding` || || Issue 258 || Enhancement || Low || Remove deprecated `pattern_type` argument of `Grep File` keyword || || Issue 260 || Enhancement || Low || Remove deprecated `pattern_type` argument from `List Directory` keywords ||
 || Issue 271 || Enhancement || Low || Remove deprecated `Syslog` keyword ||
-|| Issue 287 || Enhancement || Low || Remove deprecated `BuiltIn.Grep` keyword ||
+|| Issue 287 || Enhancement || Low || Remove deprecated `Grep` keyword ||
|| Issue 340 || Enhancement || Low || Increased the maximum size of the error message to 40 lines || || Issue 358 || Enhancement || Low || Remove deprecated `return_mode` argument of `Run` keyword || || Issue 514 || Enhancement || Low || Remove deprecated `mode` argument from `Read Process Output` keyword || || Issue 526 || Enhancement || Low || Remove already deprecated and ignored `--transform` option || || Issue 527 || Enhancement || Low || Remove deprecated `--colormonitor` option ||
-
-Altogether 50 issues.
+|| Issue 560 || Enhancement || Low || `:FOR` loops without body or without values to loop through should fail || +|| Issue 562 || Enhancement || Low || Suite metadata names should not be converted unnecessarily ||
+|| Issue 481 || Refactoring || Low || Cleanup `robot.utils` module ||
+
+Altogether 74 issues.
+

Reply via email to