Some of the changes referenced below have been reverted as they caused issues. See the more up to date notes about upgrading to version 0.10.0.
PushType 0.10.0 is nearly ready. These are the main highlights and significant changes to be aware of.
For potentially breaking changes - skip to notes on namespacing.
The main body of work that’s gone in to this release is a new Rails engine powering a full API for managing content in PushType. Ironically, the API is not used in this release. But it’s there and in future will play a much more important role.
The API opens the door to:
- Front-end inline editor - I’d love to also incorporate inline editing components on the front-end so you can edit a Node’s fields right there on the page. One for the future, but I’d love to see this happen.
- External integrations - This is one for the community to take advantage of, but once the API is documented then there’s lots of ideas and integrations to experiment with.
Improved namespacing and changes to routing
Until this release, the
PushType::Admin engine has been mounted as an isolated engine, but the
FrontEndController was inserted directly in to the host application, and the
ApplicationController is extended with various methods. We’re slowly moving away from that so in future PushType will be interfering with the host app less and less.
From version 0.10.0, the front end is also mounted as an isolated engine. Due to this, the way
mount_push_type works in
routes.rb has changed.
mount_push_type mounts each of the default PushType engines. It will also mount any third party engines that have registered with PushType. The method accepts a hash of options to customise the mount points of each engine:
# config/routes.rb # The following options are defaults. Any can be overriden. mount_push_type admin: 'admin', api: 'api', front_end: '/'
Notice how the default mount point for the admin engine has changed. Previously it was mounted at
/push_type, whereas now it mounts at
A beta release of version 0.10.0 can be downloaded now. I wouldn’t recommend putting the beta on any production sites, but this release addresses one or two issues raised on Github so might useful to some.