_ _ /_\ _ _ __ _ _ _ | |_ __ _ / _ \| '_/ _` | ' \| ' \/ _` | /_/ \_\_| \__,_|_||_|_||_\__,_| -- By Pepperfish aranha@pepperfish.net ------[ 0.1.0 - The Happy Face Spider ]---------------------------------------- Branch Location: http://bzr.digital-scurf.org/trees/managed/aranha/devel This is the fifth pre-release of aranha. There is no guarantee that any of this works -- certainly do not entrust critical or irreplacable data to it. The Happy face spider (Theridion Grellator) is a cute and funky spider found in Hawaii. You can read more about it here: http://en.wikipedia.org/wiki/Theridion_grallator Please contact aranha@pepperfish.net or see us on #aranha on the Freenode IRC network if you have anything to contribute, suggest or request. Please see the TODO file for things left to do. If you can contribute then it would be appreciated. The primary features of this release are: * A fix left over from 0.0.3 to allow classichandler pages to reach the request object as 'request' * Numeric parameter elements get promoted to numbers so foo.1=bar does the more predictable setting of foo[1] rather than foo["1"] * Test suite refactored and expanded * Sentinel() will work again * The class system will now precompile (AOT rather than JIT) all class members for added speed. There's a pragma to disable this if you really need it disabling. * --enable-small-mode now strips every bit of Lua going into the aranha binary. This saves around 50KiB currently. * lua_ismethod now uses a flag rather than (self) so that it correctly works on stripped content. * Explicitly checks for libm in order to correctly link on some platforms * Trivial v1 cookie handling functions in place on aranha.request * Incorporation of the aranha.crypt module, replacing aranha.bigint which is now available from within aranha.crypt. Currently all this exports is a simple hashing interface to support generating tokens for the session stuff. * Session support including cookie management and aranha.dbi.session to store sessions in a database. * Some amd64 fixes for modern OSes where COCO would fail to compile otherwise. * Updated the aranha startup to include the diverter in the stuff loaded by the commandline tool. This means that you can use it in your scripts, which is nice. * A fix to allow objects to be constructed with tables, or to allow their call metamethods to take table constructors. * Modules no longer *REQUIRE* their _MODULE variables etc, as the module loader will attempt to provide sensible defaults if they are not provided by the module. * Modules can now use dots in their namespaces with impugnity as they will be loaded into a table heirarchy as required. * Modules which want to provide information can now do so in a neater way than the old _MODULE_ variables (which continue to work) by use of the ModuleInfo function. See any of the supplied modules for examples of its use. * DBI now available in the contrib modules. We recommend the use of the postgres binding rather than libdbi as it's more reliable. * Example openid support. * Class instantiation changed to New() rather than Class() * New utility function deep_copy() for copying table heirarchies. * New :allParams() method on aranha.request * aranha.template module implementing Aranha Template Language (atl) which is a ZPT-alike (Zope-Page-Templates) language for templating XML. * aranha.appbuilder module to facilitate better functionality encapsulation and site structuring. Also provided is app.build which builds an application from a structure and configuration file similarly to how rails builds apps. * Developer-mode support (developermode=1 in aranha.conf) which delays the preload until request time. This allows for easier development of sites since all code loading is done at request time, meaning that you don't risk apache telling you to bugger off because your fastcgi won't start. * aranha.datetime module provided. Currently very simple, will be extended later. * Added sugar for: =>>...<< for inline expansion of diverted strings instead of automatically adding them to the diverter. Useful for passing formatted strings with neat expansions directly into function calls or assigments etc. This is directly supported as function call sugar: blahfoo =>>...<< => blahfoo(=>>...<<) * aranha.static.urihandler class (in aranha.static module) which provides a simplistic static file service to allow resources etc to be published simply. There are almost certainly other sundry changes which are of interest only to developers and can be worked out using bzr log and friends. ------[ 0.0.3 - The Kaldorei Spider Kabob ]------------------------------------ Branch Location: http://bzr.digital-scurf.org/trees/managed/aranha/0.0.3 This is the fourth pre-release of Aranha. There is no guarantee that any of this works -- certainly don't entrust important and/or irreplacable data to it. Please contact aranha@pepperfish.net if there is anything you wish to suggest or if you have anything you would like to contribute. Please see the TODO file for things left to do. If you can contribute then it would be appreciated. The primary features of this release are: * Many fixes following the 0.0.2 release being deployed for Michael Drake including but not limited to: - Fix to the diverter to cope with more than one active divert - Fix to the VM to correctly encode docstrings in constructed tables. - Distribute the .cin files so that the substitutions are done properly in things like 'aranha prepare' - Fix up the README examples * The class system now enforces the calling of your parentconstructor() If you fail to call up enough that aranha.object's constructor is called then the class instantiation will fail with an error. * The class system's "abstract" pragma will now take effect preventing the incorrect "foo is abstract but is not declared as such" errors which some users have encountered. * Pre/Post page hooks. aranha.uri.basehandler is a class from which you can derive new handler types. It implements the installPreHook and the installPostHook methods (newly required by aranha.namespace) and provides a mechanism for calling them at the right time. The aranha.uri.classichandler class has been updated to use this. * The new contrib-modules tree has been added. This contains modules which are not integrated into the build system but are provided for your convenience. They are generally supported directly by the Aranha team but you should check each one in case it's not. * aranha.dbi.libdbi and aranha.bigint updated to new parentconstructor protocol There are almost certainly other sundry changes which are of interest only to developers and can be worked out using bzr log and friends. ------[ 0.0.2 - The Peruvian Nazca Spider ]------------------------------------ Branch Location: http://bzr.digital-scurf.org/trees/managed/aranha/0.0.2 This is the third pre-release of Aranha. There is no guarantee that any of this works -- certainly don't entrust important and irreplacable data to it. Please contact aranha@pepperfish.net if there is anything you wish to suggest or if you have anything you would like to contribute. Please see the TODO file for things left to do. If you can contribute then it would be appreciated. The primary features of this release are: * Format delimiter for the diverter has changed from '#' to '$' This is to ensure that it does not conflict with Lua 5.1's # operator (len) * New module 'aranha.docs' for managing documentation strings This is incomplete but should give a good indication of where we're heading with the documentation system. * Class system now supports a huge number more metamethods. * LuaJIT 1.1.2 has been integrated (check out --enable-jit in configure) This is only for Linux/x86 currently, but hopefully we can extend this later * Support for the Lua 5.1 package protocol has been added although we make no assurances about how well it will behave with C addons. The preferred extension protocol for Aranha is still aranha modules. There are almost certainly other sundry changes which are of interest only to developers and can be worked out using bzr log and friends. ------[ 0.0.1 - The Siberian Hunting Spider ]---------------------------------- Branch Location: http://bzr.digital-scurf.org/trees/managed/aranha/devel Revision ID: revno:44 This is the second pre-release of Aranha. There is no guarantee that any of this works -- certainly don't entrust important and irreplacable data to it. Please contact aranha@pepperfish.net if there is anything you wish to suggest or if you have anything you would like to contribute. Please see the TODO file for things left to do. If you can contribute then it would be appreciated. The primary features of this release are: * Migration from Bazaar 1.4 to Bazaar-NG version control. All history has been magically preserved and the trees merged into one. * Integration of Rici Lake's comprehensions *and* constructors patch against a more recent Lua 5.1 snapshot. In particular this renamed the 'where' clause to 'when' and has better properties wrt. debugging. * Along with the above comes a more recent 5.1 which means __siz is no more and the * operator is no more. Instead we have __len and # * Added tests for the os.{exists,fileinfo,isdir....} methods * Fixed up some of the codebase for gcc 4 cleanlyness. * Class system gains 'tostring' methods on aranha.class and aranha.interface making stringifying of classes neater. * New 'Sentinel' function provides an instance of aranha.sentinel with the specified name. Useful for where you need markers and want them to be unique but nicely stringified. * New extension module compilation system (aranha prepare) * Removed libtool from the equation as it was fairly unnecessary * Lexer/Parser/VM coverage tests * Added :hasMethod() to aranha.class and aranha.interface for interrogation There are almost certainly other sundry changes which are of interest only to developers and can be worked out using bzr log and friends. -----------------------------------AFTER HERE HISTORY IS FROM THE ARCH ERA ]--- ------[ 0.0.0 - The Ukranian Hunting Spider ]---------------------------------- Config: configs/prereleases/aranha.ukranian-hunting-spider A aranha siberiana tem pernas boas, tem bom dia, pode capturar insetos, fazer teia, pegar insetos para a familia - Eu não posso fazer nada. This is the first pre-release of Aranha. Please contact aranha@pepperfish.net if there is anything you wish to suggest or if you have anything you would like to contribute. The primary extra language features of this release are: * Class system * Documentation strings for functions and tables * Extra for-loop constructs including 'where ' 'while ' 'with varlist = explist' 'andfor ...' and 'for ...' * List comprehensions (table comprehensions really) of the form: { for yield end } For example: { for k,v in pairs(foo) where type(v)=="string" yield [k] = v end} * Extra os functions (exists, fileinfo, isdir...) * string.format supports reordering and generic additions to the format types * String diversion and interpolative syntax >> |expr| << ------------------------------------------------------------------[ END ]------