Nephtali 3.0.9 available for download
The newest release of Nephtali is now available for download, and most notably, it incorporates caching capabilities. While Nephtali doesn’t transparently perform the caching for you, it does facilitate the caching of the final page, or of the markup after all of the templates have been applied. You can read more about the new caching capabilites at the Nephtali wiki.
The new caching capabilities are especially useful for improving the performance of pages like the homepage for Nephtali, which gets data from multiple web services. Of note, the homepage also provides an example of how Nephtali tries to improve the experience of its developers.
When a pipe has an error rendering, Nepthali automatically handles the error by displaying the error view for that pipe. That is to say, when using the Nepthali framework, an error in one dynamic region of a page does not require the visitor be redirected to an error page. The visitor can still see the other dynamic regions that properly rendered.
When I integrated the first draft of the caching capabilities in the Nephtali website, I came back to the site a few times and realized that on one occasion, the cached version of the page included an error view (one of the web service requests had timed out.) To handle this situation, I augmented the code in this release so Nepthali only calls the save function for a registered cache if all of the pipes on the page rendered without errors.
[Note: If you’re manually handling the errors, you can still avoid having a page cached by calling n\val($name = ‘nephtali_is_cacheable’, $value = false) to let Nephtali know that the particular request shouldn’t be saved.]
Let me know if you have any issues with the new download.