Preparing to Beta 2...
What expected in the next beta version:
Now CppCMS is really ready for serving high load sides, thanks to new distributed cache module based on Boost.Asio.
Several CppCMS processes running on different computers can share same cache distributed over several TCP/IP cache servers.
- Staticly typed template system that fully integrated with the framework that allows:
- "Django style" template inheritance.
- Powerful extendsions abilities using C++ code directly.
- Static compilation with generated templates code or loading templates as external shared objects.
- Creates a potential for future "forms/widgets" integration.
- Various bugfixes and code cleanup.
Possibly included: form validation and generation modules.
to be Continued…
Comments
Hi,
You might also like to check this interesting project out: http://fastcgipp.com/
In particular the support for Session, Post, Get is quite easy.
Does cppcms support something like that??
Also cppcms apache module might be well received.
Thanks for this link, this is really interestring.
Even more, it supports acces to post/get requests via CgiCC library and gives much more: templates system, cache, many APIs like cgi/fastcgi/scgi and so on and so far.
At some point it will probably be. However you have lot’s of different APIs to connect CppCMS to different web servers.
Thanks for the info, I know about cgicc and do like cgicc, although I find the syntax html() << head() etc. quite different really.
However I wonder if you could add possible support for html-dom like syntax. You could possibly use http://codesynthesis.com/ to generate the C++ code from the html schema.
eg simple un-working example.
html_document = new html_document(); body = new htm_body(); document.add(body); document.print(cppcms.out); body_builder(html_body *body) :-) { body.add(new html_div()); }Also have you considered inviting other developers on this project too. A start might comp.c++.moderated newsgroup
I use it only for form processing and other non-html related information.
Also the solution you suggest is not good enough as well. There should no direct html generation in C++ code.
I have a template system (like .aspx/jsp etc.). Look at this code, template and the in the C++ code line 342. I just prepare content information and render template.
Generaly it is bad to create HTML in any language directly.
I didn’t published it there however, once it published in reggit. Meanwhile no too much volonteers. (However I get bug reports time to time)
Thanks for the info, the html-dom structure is useful in many cases.
However for the templating stuff have you checked out this from google. Can you incorporate this rather than implementing your own template system. http://goog-ctemplate.sourceforge.net/
Also one of the things I forgot to mention was that the fastcgipp has support for unicode, internally it uses wchar_t but all i/o is utf-8. Have you considered implementing as such?
Ok, from what I have seen, goog-ctemplate is similar to tmpl-0.0.1 release. However, IMHO it seems to be less powerful, and defenatly less friendly. For example, in order to set value in old CppCMS template system you may just write:
cont["key"]=string("somevalue"); cont["int_key"]=10;However, I had moved to other solution: staticly typed templates At this point, it seems to me that CppCMS templating system is very powerful, if not the most powerful system, for HTML code generation in C++.
CppCMS uses internaly utf-8 as most C/C++ friendly encoding system. It has full internationalization support using thread-safe implementation of GNU Gettext, including support of RTL languages.
I do not have special facilities for work with wchar_t, but wchar itself is very problematic one. At Linux it represents utf32, at Windows ucs-16 or maybe variable length utf-16? And so far and so on.
So if you need specific things like "cutting" words correctly according to locale, it is quite easy to do in utf8 as well, more then that, you can always incorporate ICU library.
Meanwhile, CppCMS has great i18n support. See my Hebrew blog that works 100% on same software.
You can send a trackback to following url:
Add Comment:
You can write your messages using Markdown syntax.
You must enable JavaScript in order to post comments.