## 1 SASL Release Notes History

### 1.1 SASL 2.0

#### 1.1.1 Fixed Bugs and Malfunctions

- When doing a code replacement in run-time, updating the internal state of a gen_server, gen_event or gen_fsm, it was stated in the documentation that the first argument `OldVsn` to the callback function `Module:code_change` was defined by the `vsn` attribute in the old version of `Module`.
  However, this was not true. For downgrades, `OldVsn` was `{down,Vsn}`, where `Vsn` was fetched from the `.app` file instead.
  The version is now always fetched from the module using `beam_lib:version/1` and the man pages for gen_* have been updated accordingly.
  *** POTENTIAL INCOMPATIBILITY ***
  Own Id: OTP-3699
- The release handling instruction `restart_application` was translated to the low-level instruction `application_remove` and a set of `load_module` instructions.
  However, `application_remove` caused the modules listed for the new, not the old, version of the application to be unloaded. If the set of modules was changed, this meant the release handler would try to purge non-existant modules and/or forget to unload modules no longer used.
  `restart_application` is now translated to a correct set of `delete_module` and `add_module` instructions instead, and the `application_remove` instruction is deprecated.
  *** POTENTIAL INCOMPATIBILITY ***
  Own Id: OTP-4805
- `release_handler:check_install_release/1` returned `{error,Reason}` if `sys.config` or `relup` was missing. Since both these files are optional, the behaviour has been changed to write warnings to the terminal but return an `ok` tuple instead.
  *** POTENTIAL INCOMPATIBILITY ***
  Own Id: OTP-4824

#### 1.1.2 Improvements and New Features

- Added a clause to `systools:make_script/1` which makes it possible to provide (atomic) options when calling the function using `erl -s`.
  Example: `erl -noinput +B -s systools make_script myrel no_module_tests -s erlang halt` is equal to calling `systools:make_script("myrel", [no_module_tests])`.
  Own Id: OTP-3384
- Added simplified versions of the `update` and `load_module` release handling instructions.
  Own Id: OTP-4793
- Added two new release handling instructions: `{update, Module, supervisor}` and `{delete_module, Module}`.
  Own Id: OTP-4800

### 1.2 SASL 1.10.1

#### 1.2.1 Improvements and New Features

- The option `{abort_on_error,Bool}` has been added to `rb:start/1` and `rb:rescan/1`. With it you can choose whether or not rb should stop logging if it encounters an unprintable report. When `abort_on_error` is set to `false`, rb will resume logging after a bad report has been handled. The error messages rb prints when logging fails have been enhanced.
  Own Id: OTP-5096 Aux Id: seq8930

Copyright © 1991-2006 Ericsson AB