[IPOL discuss] demo code and doc update
Nicolas Limare
nicolas.limare at cmla.ens-cachan.fr
Mon Nov 1 13:26:08 CET 2010
Hi everyone,
Lots of things have changed in the demo system during the last 3
weeks. After too much teasing, everything is now available and
documented.
# source code
You can find the source code here:
http://demotest.ipol.im/dl/
Now the archives are updated every day, with the date information, and
3 archives are provided:
* ipol_demo_lisani : Jose Luis code branch
* ipol_demo_nil : my code branch
* ipol_demo_release : the "released" code branch, as seen on
http://www.ipol.im/pub/demo/
# documentation
The documentation and tutorials are updated on
https://edit.ipol.im/admin/demo/. Please tell me about typos and
missing informations (or, better, correct it!)
# changes
I tried to simplify the code. The version you saw in september was the
first draft, and I think the design could be greatly improved. Here is
the list of the current changes:
* layout
Now all the demos are in the /app/ subfolder. Everything else is in
the /lib/ subfolder. The library code has been reorganised into
differents files.
* build system
No more makefile; programs are built with python commands, by the
app.build() method. You must write this method when you create a new
demo; some help functions are provided in /lib/build.py, to download
a source code archive file, decompress it, and run its build script
(make, cmake, ...)
* 3-steps processing
After input data and parameters selection, the algorithm is run via
3 pages/methods:
* app.wait() checks and saves the parameters, shows a "wait" page
and triggers a page refresh
* app.run() reads the parameters and runs the program, then triggers
a redirection
* app.result() shows the algorithm result
* path/url
No more self.path() and self.url(), they were the symptom of a bad
design. Now all the paths and urls are available as class
attributes: seld.key_dir, self.base_url
* template parameters
The app class is always passed as a parameters template (thus you
can use app.base_url and app.key). The urld dictionnary parameter is
not needed anymore, it had few benefits
* description
Instead of using the app.description attribute, you should now write
the algorithm description into an input.html template
# development server
The current situation is not flexible enough. I'd like everyone to be
able to access the code branches in real time, read detailed
changelogs, contribute, send and exchange patchs, and test the code
online.
This would be achieved by a development server, with shell accesses
and demo instances, but the current demotest server *is* the demo
server, so I can't risk a server overload. Deploying and installing an
external development server wouldn't work either, because we need
some CPU power to run the demos.
We received the next demo server last week (4x Xeon7500, 64
hyperthread cores). I will install it at the end of November, once the
lab environment is ready. Then, the current demo server will be free,
and we will have it available for use as a development server.
--
Nicolas LIMARE
http://nicolas.limare.net/ pgp:0xFA423F4F
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://tools.ipol.im/mailman/archive/discuss/attachments/20101101/676f608c/attachment-0001.pgp>
More information about the discuss
mailing list