diff options
Diffstat (limited to 'README')
-rw-r--r-- | README | 34 |
1 files changed, 32 insertions, 2 deletions
diff --git a/README b/README index c5c18a90d..7542f8d35 100644 --- a/README +++ b/README @@ -30,8 +30,38 @@ Zsh is a shell with lots of features. For a list of some of these, see the file FEATURES, and for the latest changes see NEWS. For more details, see the documentation. -Possible incompatibilities ---------------------------- +Incompatibilities between 5.0.0 and 5.0.1 +----------------------------------------- + +In 5.0.0, the new "sticky" emulation feature was applied to functions +explicitly declared within an expression following `emulate ... -c', but +did not apply to functions marked for autoload in that expression. This +was not documented and experience suggests it was inconvenient, so in +5.0.1 autoloads also have the sticky property. + +In other words, + + emulate zsh -c 'func() { ... }' + +behaves the same way in 5.0.0 and 5.0.1, with the function func always being +run in native zsh emulation regardless of the current option settings. +However, + + emulate zsh -c 'autoload -Uz func' + +behaves differently: in 5.0.0, func was loaded with the options in +effect at the point where it was first run, and subsequently run with +whatever options were in effect at that point; in 5.0.1, func is loaded +with native zsh emulation options and run with those same options. This +is now the recommended way of ensuring a function is loaded and run with +a consistent set of options. + +Note that the `autoload -z' has never affected the options applied when +the function is loaded or run, only the effect of the KSH_AUTOLOAD +option at the point the function is loaded. + +Possible incompatibilities between 4.2 and 5.0 +---------------------------------------------- Here are some incompatibilities in the shell since the 4.2 series of releases. It is hoped most users will not be adversely affected by these. |