ikaaro 0.78.0 is a transitional version. We've:
- We replaced the
libsoupserver bygevent.WSGIServerto simplify Python 3 migration. - The goal is to migrate itools/ikaaro to Python 3 and to use a simple WSGI server with asyncio.
The purpose is to prepare future:
- Migration to python3
- Increase performances of database
- Possibility to add an SQL backend (posgres json for example ?)
- Allow to handle several requests at once on ikaaro webserver
- Simplify build of javascript web applications with ikaaro
In 0.78 we'll try to make non breaking changes. (or small ones).
- We replaced
libsoupserver bygevent.WSGIServer - Unused packages have been removed to simplify migration to python 3 (
itools.blog,itools.cc,itools.agenda,itools.comments) - Static view
/ui/xxxnow usecontext.get_templateso there's a cache (Now served files should be loadable via handlers - so with no errors) Catalogdon't flush data on disk at each transaction to increase commits speeditools.web: Cache headers to increase speed of cookies decodingitools.database: Add new unitests on database, & fix many bugsResource.del_resource: Do not check cookies, that should be done in views- Now we clearly identify the differences between
FolderandResource(for performances: Don't need to do DB queries to search resources childs) - Resource: the
indexfield has been removed (not used & avoid useless call toget_linkson each resources) - Add Dockerfile to simplify tests: https://hub.docker.com/r/hforge/
- Continous Integration: Connect to CircleCI https://circleci.com/gh/hforge
Resource.get_names()return an iterator- Add method
Server.launch_at_stop() - Log cron informations into
example.com/log/cron - Cron actions are called via HTTP requests
- Improve unitests workflows
- Folders: Resources can be added in current folder only (List with childs didn't scale)
- Remove 'is_content' index (never that simple)
- We've removed
obsolete package
notify_subscribersmethod has been removeditools.agendawas removeditools.blogwas removeditools.ccwas removeditools.commentwas removed- Import of widgets from
itools.autoformis now obsolete, useitools.widgetsinstead - Calls to
database.fs.*should be removed len(resource.get_names())should be replace bylen(list(resource.get_names()))Folder_Viewview has been removeddatabase.worktreehas been removed