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.
+