ANN: Ophal 0.1-beta1 released!

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

ANN: Ophal 0.1-beta1 released!

Fernando Paredes García
After 11 months of hard work since the lastest alpha, the first beta
release of Ophal is finally available! The focus of this first release
is what will define this beta cycle: stability and complementary features.

Let's see what we have now!

Read on-line:

## New features

The Ophal web platform started as a web framework, upon which basic CMS
features are evolving so that complementary features are required than
mere content CRUD:

- CMS modules: content, user, tag, menu, comment
- New hooks: content_render(), region(),
- New debug function: debug.log(), it logs what you pass to it into file
- New theme features: settings.lua for themes, render_t(),
theme.file_info(), theme.progress(), theme.input(), theme.select_option(),
- New JS features: extensible 'Ophal' object, Ophal.scroll_down(),, trigger ophal:comments:load()
- New documentation: How to create database schema for CMS modules
- New functions: page_not_found(), nopcall(), shutdown_ophal(),
server_exit(), format_size(), user.current(), route_build_routes(),
route_build_handler(), init_head(), add_head(), get_head(), db_limit(),
sessions_path(), sessions_destroy_expired(),
- Support error messages on JSON output format, so that errors don't
break the output!
- Route aliases with optional database storage, localize-able and with
- Progressive file uploading relying on HTML5 FileReader API and
metadata storage (optional)
- Configurable hashing algorithm of user passwords
- Support for vault.lua to store sensible settings outsite settings.lua
(i.e: passwords), ignored by .gitignore of course!
- Better robots.txt
- Support more common file extensions on Nginx
- Proof of concept Ophal CLI
- Translatable texts with new function: t()
- Session files get deleted on cron with the new module: system, enable
it if you want to have a healthy site!

## Refactoring

Some changes are required to make development experience a bit less

- Components refactored: Installation wizard, default settings builder,
- Components merged: 'menu' and 'path' are now just: 'route'
- Hooks can now break and trigger custom error.
- Routes (old menu callbacks) can now have default parameters and access
callbacks, and being called from any other module
- Password encryption removed from front-end. Use SSL my friend! and
configure to 'https'
- Code rendering the user login form is more readable
- Database schema got more consistent object names
- Function arg() renamed to route_arg()
- Use _M to build and return core modules

## New defaults

New settings get added constantly, these are the new defaults:

- Default language: en (English)
- Default theme: basic

## Legal

Ophal is now Affero GPL version 3 (AGPLv3).

## Bug fixes

Let's list them in optimistic mood:

- Support LuaJIT!
- Function get_js() now renders inline Javascript
- missing settings.lua will not crash everything from now on
- Content-Length header is now present on JSON output format
- Fewer WSODs on theme rendering bugs
- Function user.access() can handle nil params!
- Tag module is less buggy
- Front-page now has a default title when paginated

Kind regards!

Fernando Paredes García

** Before printing  this message, please consider your commitment with
the environment
** Antes de imprimir este mensaje  piensa en tu compromiso con el medio