- add `ignore_ex=False` and `as_bytes=False` params to `run` ([108](https://github.com/fastai/fastcore/issues/108)) - `AttrDict`: a `dict` subclass that also provides access to keys as attrs; and change `dict2obj` to create `AttrDict`s instead of `SimpleNamespace`s ([107](https://github.com/fastai/fastcore/issues/107))
1.0.19
New Features
- `run`: flexibly run an external process and raise exception if it fails ([105](https://github.com/fastai/fastcore/issues/105))
1.0.16
New Features
- add `threadpool=False` param to `parallel` to use threads instead of processes ([102](https://github.com/fastai/fastcore/issues/102))
1.0.15
New Features
- add `L.map_filter` and `L.map_first` ([97](https://github.com/fastai/fastcore/issues/97)) - These support some nice refactorings, like changing from this: python d = [] for c in cs: m = f(c) if not m: continue d.append(m.group(1))
to this: python d = cs.map_filter(f).map(Self.group(1))
1.0.14
Bugs Squashed
- Reapply fix for 86 which was unintentionally reverted by the next commit ([91](https://github.com/fastai/fastcore/issues/91))
1.0.13
New Features
- `dict2obj`: Convert (possibly nested) dicts (or lists of dicts) to `SimpleNamespace` ([90](https://github.com/fastai/fastcore/issues/90))