enthought/traits — pull request #93 by pberkes (2013-11-01 13:42:40+00:00)
Title: Fix the initialization sequence of the `adaptee` train in `Adapter`.

`adaptee` is a mandatory trait in `Adapter`, and it was initialized
like this:

```
super(Adapter, self).__init__(**traits)
self.adaptee = adaptee
```

The problem with this is that properties that depend on `adaptee` may be
triggered in the super-constructor, when `adaptee` is not yet defined.

The new solution:

```
traits['adaptee'] = adaptee
super(Adapter, self).__init__(**traits)
```

fixes that.

Note that this solution is better than:

```
traits.adaptee = adaptee
super(Adapter, self).__init__(**traits)
```

since in this case the trait change notification for `adaptee` is not
triggered.