- Поправлены ложные ассерты об утекших экранах, редко возникающие неверно по причине того, что UIKit промедлил с очисткой экрана из памяти
- В демо приложение добавлена шторка (bottom sheet) на третий таб на айфоне или на detail view сплит контроллера первого таба на айпаде). Проверяется навык Маршрута не закрывать повторно уже закрытые модально экраны (в демке это когда шторку с полочками закрывают свайпом вниз или тапом по затемненной области вокруг шторки, при этом модальный экран первый раз закрывается напрямую через UIKit, а второй раз через Marshroute). Это работает только если второе закрытие вызывается асинхронно от первого (в completion'е первого закрытия экрана)
- В конструкторах
ResettingTransitionContextпараметрanimatingTransitionsHandlerпереименован вnavigationTransitionsHandlerтам, где мы работаем сUINavigationController. AnimatingTransitionsHandlerпереименован вBaseAnimatingTransitionsHandler, появился протоколAnimatingTransitionsHandler.ContainingTransitionsHandlerпереименован вBaseContainingTransitionsHandler, появился протоколContainingTransitionsHandler.- Появились протоколы
NavigationTransitionsHandler,SplitViewTransitionsHandler,TabBarTransitionsHandlerдля лучшей типизации кода. - Вместо прямой завязки на
UITabBarControllerиUISplitViewControllerтеперь есть протоколыTabBarControllerProtocolиSplitViewControllerProtocol. Теперь можно работать с Marshroute, подставив кастомные реализации таб бара и сплит вью (которые даже не наследуются отUITabBarControllerиUISplitViewController). Заметка: аналогичную работу можно проделать и дляUINavigationController'а, но на практике еще не встречалось случаев, когда кто-то реализовывал аналоги навигационного контроллера своими силами. - Удалены
WeakBoxиStrongBox - Некоторые
marshroutePrintзаменены наmarshrouteAssertionFailure - Удалена интеграция с Travis
- Поддержана tv os 9.0