Pierre-Yves David <pierre-yves.david@logilab.fr> [Fri, 15 Oct 2010 11:48:43 +0200] rev 6508
[pkg] fix install_data import not present in setuptools
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 15 Oct 2010 11:48:16 +0200] rev 6507
backport stable
Pierre-Yves David <pierre-yves.david@logilab.fr> [Fri, 15 Oct 2010 11:41:10 +0200] rev 6506
[packaging] add a __init__.py to cubes directory when installing data
Pierre-Yves David <pierre-yves.david@logilab.fr> [Fri, 15 Oct 2010 11:40:36 +0200] rev 6505
[distribution] Handle missing instance directory when listing and running instance command.
no directory means no available instance.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Fri, 15 Oct 2010 11:39:54 +0200] rev 6504
[setuptools] Automaticly move data content of a cubicweb's egg in the proper location.
This should be done once during the first import of the cubicweb module.
This is an ugly hack because setuptools lake proper post install hooks.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Fri, 15 Oct 2010 11:39:10 +0200] rev 6503
[packaging] Egg are not valid cubicweb prefix.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Wed, 13 Oct 2010 18:58:56 +0200] rev 6502
[config] Put "Instance" and "Instance data" directory within cubiweb install prefix.
Instance directory (/etc/cubicweb.d) and Instance Data directory
(/var/lib/cubiweb/) are now put withing the install prefix of cubicweb.
When this prefix is /usr/ old behaviour are used (they are putted in the root
directory).
This change will make cubicweb much more virtual env friendly.
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 14 Oct 2010 00:10:43 +0200] rev 6501
[debian] goa package gone for now
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 15 Oct 2010 11:33:06 +0200] rev 6500
[component] remove row argument which is actually discarded by registry's cache (untill we feel we need a per context cache...)
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 15 Oct 2010 11:25:59 +0200] rev 6499
[deprecation] enhanced messages
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 15 Oct 2010 11:25:51 +0200] rev 6498
[bw compat] fix compat for entity.attr assigment
Nicolas Chauvat <nicolas.chauvat@logilab.fr> [Thu, 14 Oct 2010 17:32:36 +0200] rev 6497
fix typo
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 14 Oct 2010 16:57:56 +0200] rev 6496
[iprogress] None resilience
Pierre-Yves David <pierre-yves.david@logilab.fr> [Wed, 13 Oct 2010 18:54:59 +0200] rev 6495
#1251878: Cubicweb no longer crash for missing instance and data dir at create.
Those directory should be created by cubicweb now.
We may want to issue a warning if they are missing.
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 14 Oct 2010 14:10:45 +0200] rev 6494
[config] make config.cubes() available on NoAppCubicWebConfiguration
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 14 Oct 2010 14:10:02 +0200] rev 6493
[rql2sql] properly compute has_text relation table scope
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 14 Oct 2010 10:15:56 +0200] rev 6492
fix some pylint detected errors
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 14 Oct 2010 10:15:38 +0200] rev 6491
pylint option update
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 14 Oct 2010 10:08:00 +0200] rev 6490
[components] add missing imports for code copied/pasted. Forgot to run pylint afterward...
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 14 Oct 2010 09:49:59 +0200] rev 6489
[component] avoid conflict on global/local identifier
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 14 Oct 2010 09:01:58 +0200] rev 6488
[migration] missing future import
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 14 Oct 2010 00:10:43 +0200] rev 6487
[debian] goa package gone for now
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 14 Oct 2010 00:10:07 +0200] rev 6486
[doc] kill deprecated french documentation
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 14 Oct 2010 00:01:04 +0200] rev 6485
Added tag cubicweb-debian-version-3.10.0-1 for changeset 9ef1347f8d99
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 14 Oct 2010 00:01:03 +0200] rev 6484
Added tag cubicweb-version-3.10.0 for changeset 0793fe84651b
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 13 Oct 2010 22:18:59 +0200] rev 6483
3.10
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 13 Oct 2010 19:46:35 +0200] rev 6482
backport stable
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 13 Oct 2010 16:47:22 +0200] rev 6481
[schema categorization] new NO_I18NCONTEXT set usable to somewhat control c-c i18n
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 13 Oct 2010 16:46:54 +0200] rev 6480
i18n catalog cleanup
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 13 Oct 2010 16:18:20 +0200] rev 6479
[primary] RsetBox view should give dispctrl & all to its subview. Also, don't use csv when in boxes.
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 13 Oct 2010 16:17:37 +0200] rev 6478
[server] fix dumb name error
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 13 Oct 2010 16:17:20 +0200] rev 6477
[see also component] drop it, we can acheive the same result with uicfg rules
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 13 Oct 2010 16:16:48 +0200] rev 6476
[primary] fix autolimited view which was not limited at all
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 13 Oct 2010 16:00:06 +0200] rev 6475
[see also component] avoid seeing see_also entities in side boxes as well
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 13 Oct 2010 15:59:35 +0200] rev 6474
[components] remove old deprecation warning
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 13 Oct 2010 15:59:05 +0200] rev 6473
[wf history] avoid title duplication
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 13 Oct 2010 13:03:48 +0200] rev 6472
i18n tweaks
Alexandre Fayolle <alexandre.fayolle@logilab.fr> [Wed, 13 Oct 2010 11:00:22 +0200] rev 6471
[book] small note about test/data/schema.py
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 13 Oct 2010 08:37:21 +0200] rev 6470
backport stable
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 13 Oct 2010 08:37:09 +0200] rev 6469
[test] reset uncommitable flag on ValidationError raised during automatic db population
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 13 Oct 2010 08:36:38 +0200] rev 6468
[ctx component] has no wview method
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 13 Oct 2010 07:45:18 +0200] rev 6467
[entity, repo] move prefill_entity_cache function back to repository due to usage of del_existing_rel_if_needed function which is also defined there
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 12 Oct 2010 23:36:54 +0200] rev 6466
cleanup and 3.10 updates
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 12 Oct 2010 23:36:35 +0200] rev 6465
[architecture] introduce adapter to ease transformation of errors before display to the end user. Use it for UniqueTogetherError first
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 12 Oct 2010 23:34:55 +0200] rev 6464
[repo, entity] move entity cache initialization to a function, and call it before source.add_entity so it may be used in error handler or such
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 12 Oct 2010 22:20:15 +0200] rev 6463
i18n update
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 12 Oct 2010 22:15:47 +0200] rev 6462
[ui component] restore see_also component
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 12 Oct 2010 22:12:50 +0200] rev 6461
[ui component] RelatedObjectsCtxComponent to superseede RelatedObjectsVComponent (still there for bw compat)
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 12 Oct 2010 22:11:06 +0200] rev 6460
[c-c i18ncubicweb] fix 'non-contextual' relations
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 12 Oct 2010 19:15:31 +0200] rev 6459
[i18n] uniformize footer capitalization
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 12 Oct 2010 19:10:48 +0200] rev 6458
cleanup
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 12 Oct 2010 19:10:43 +0200] rev 6457
[selector] more efficient rql_condition by simply retreiving COUNT()
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 12 Oct 2010 19:10:08 +0200] rev 6456
[workflow] fix bw compat code
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 12 Oct 2010 19:09:52 +0200] rev 6455
[baseviews] new cw.archive.[by_author|by_date] views, extracted from blog
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 12 Oct 2010 14:13:07 +0200] rev 6454
[test/possible views] skip deprecated views
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 12 Oct 2010 14:10:58 +0200] rev 6453
[form] unify form.render prototype to take a 'w' argument as other view/components render method
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 12 Oct 2010 12:12:05 +0200] rev 6452
[ui] nicer ajax edit relation table (tags box for instance)
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 11 Oct 2010 19:45:15 +0200] rev 6451
fix pre 3.10 bw compat
Katia Saurfelt <katia.saurfelt@logilab.fr> [Mon, 11 Oct 2010 19:13:01 +0200] rev 6450
small typo on mustMach, handle initialvalue, handle empty userInput
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Mon, 11 Oct 2010 19:13:00 +0200] rev 6449
[formwidgets] rewrite autocomplete cw widgets to get rid of div-style declaration API
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Mon, 11 Oct 2010 19:12:59 +0200] rev 6448
[javascript] update to jQuery 1.4.2 and jQuery-ui 1.8.5
The most notable changes are :
- A bug in jQuery 1.4.2 forces us to add 2 noop() methods
on cw objects to handle event unbinding, see :
http://dev.jquery.com/ticket/6184
for more details.
- jquery.autocomplete.js is not maintained anymore as it now has
a standard implementation in jquery ui. The downside is that
the new autocomplete version needs more work to be used.
cubicweb.widgets.js defines a cwautocomplete plugin which is
just a (not so) thin wrapper around the std autocomplete plugin
to keep backward compatibility and usage simplicty.
The original autocomplete author wrote a nice migration guide :
http://www.learningjquery.com/2010/06/autocomplete-migration-guide
- If you're using jQuery.ajax directly, you might have surprises
with arguments serialization for arrays. To get the old behaviour,
you need to pass a `traditional: true` extra arguments to jQuery.ajax.
Of course, it's transparent if you're using cubicweb higher level
helpers such as loadxhtml, loadRemote, etc.
Julien Jehannet <julien.jehannet@logilab.fr> [Mon, 11 Oct 2010 17:46:22 +0200] rev 6447
[tests] update windmill use cases from link corrections
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 11 Oct 2010 18:01:25 +0200] rev 6446
[contextual components] missing layout for components in the toolbar
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 11 Oct 2010 18:00:51 +0200] rev 6445
[selectors] make configuration_values selector works for startup/maintainance hook
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 11 Oct 2010 18:00:21 +0200] rev 6444
[c-c i18ncube] proper command class name
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 11 Oct 2010 17:59:58 +0200] rev 6443
[i18n cube] skip bw compat registries boxes and contentnavigation
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 11 Oct 2010 14:45:25 +0200] rev 6442
backport stable
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 11 Oct 2010 13:40:18 +0200] rev 6441
TestServerConfig needs default_base_url
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 11 Oct 2010 12:27:29 +0200] rev 6440
backport stable
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 11 Oct 2010 12:27:17 +0200] rev 6439
[test] we must consider default_base_url()
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 11 Oct 2010 12:26:50 +0200] rev 6438
[js test] cleanup, move anonymous_logged handling to the test class (easier to control there
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 11 Oct 2010 12:03:12 +0200] rev 6437
CtxComponent don't have wview
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 11 Oct 2010 11:05:19 +0200] rev 6436
[test] missing main
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 11 Oct 2010 11:02:27 +0200] rev 6435
backport stable
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 11 Oct 2010 10:47:22 +0200] rev 6434
[test] fix ldap test when executed from certain hosts
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 11 Oct 2010 10:14:22 +0200] rev 6433
[test] missing main
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 11 Oct 2010 10:14:11 +0200] rev 6432
restore line dropped in 6424:f443a2b8a5c7 which is necessary to have proper base-url on test server config (used for ms tests at least)
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 11 Oct 2010 09:17:54 +0200] rev 6431
typo
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 11 Oct 2010 09:01:14 +0200] rev 6430
[breadcrumb] infinite loop safety belt, bw compatible by hi-jacking 'recurs' argument
Aurelien Campeas <aurelien.campeas@logilab.fr> [Sat, 09 Oct 2010 00:38:07 +0200] rev 6429
[login] fix some previously introduced login box css breakage
Sylvain Thénault <sylvain.thenault@logilab.fr> [Sat, 09 Oct 2010 00:38:02 +0200] rev 6428
[components] refactor main template header: make it much more flexible by using CtxComponent
* rename userlink class (not private) with somewhat bw compat
* make some cosmetic adjustements on log-in/registration components
* update to component api, though this may breaks some sub-classes
(for application customizing the breadcrumbs component for instance)
Sylvain Thénault <sylvain.thenault@logilab.fr> [Sat, 09 Oct 2010 00:05:52 +0200] rev 6427
[schema / sources] store data sources as cubicweb entities
this implies several changes:
* new CWSource / CWSourceHostConfig entity types
* only the system sources and default admin login/password stored in sources file
(other stuff will be ignored)
* on startup, get sources definition from the database
* every entities have a cw_source relation
* a facet allow filtering
Sylvain Thénault <sylvain.thenault@logilab.fr> [Sat, 09 Oct 2010 00:05:50 +0200] rev 6426
[hook/operation] nicer api to achieve same result as set_operation, as described in #1253630
Sylvain Thénault <sylvain.thenault@logilab.fr> [Sat, 09 Oct 2010 00:05:49 +0200] rev 6425
backport stable
Julien Jehannet <julien.jehannet@logilab.fr> [Fri, 08 Oct 2010 15:28:51 +0200] rev 6424
[devtools] refactor http server initialization in a much saner way
Use a new ApptestConfiguration to group server paramater.
Fix base-url mangling between main site and data ressources.
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 08 Oct 2010 17:07:46 +0200] rev 6423
[pre 3.10 compat] if CtxComponent as a call() method, emit a deprecation warning but use it. Also ensure default value on class for visible and order, and define wview for bw compat as well
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 08 Oct 2010 16:11:37 +0200] rev 6422
[reledit] do not reload on the parent node
Aurelien Campeas <aurelien.campeas@logilab.fr> [Fri, 08 Oct 2010 16:11:23 +0200] rev 6421
[js/edition] kill deprecated (& dead) reledit code
Aurelien Campeas <aurelien.campeas@logilab.fr> [Fri, 08 Oct 2010 13:19:07 +0200] rev 6420
[views/wdoc] do not crash on malconstructed stuff
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 08 Oct 2010 13:12:14 +0200] rev 6419
typo
Aurelien Campeas <aurelien.campeas@logilab.fr> [Fri, 08 Oct 2010 11:54:17 +0200] rev 6418
[views/authentication] fix http auth regression (no message)
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 08 Oct 2010 11:11:31 +0200] rev 6417
[test] fixes
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 08 Oct 2010 11:11:09 +0200] rev 6416
fix bad merge
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 08 Oct 2010 11:11:08 +0200] rev 6415
cleanups
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 08 Oct 2010 09:43:24 +0200] rev 6414
[test] skip test when dbhelper has no underlying dbapi module available
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 08 Oct 2010 07:55:11 +0200] rev 6413
backport stable
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 08 Oct 2010 07:48:37 +0200] rev 6412
[test] cleanup / unittest2 api update
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 08 Oct 2010 07:44:22 +0200] rev 6411
[test] don't add unnecessary dependency to blog
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 08 Oct 2010 07:43:38 +0200] rev 6410
[test] fix tests broken by transaction behaviour on Unauthorized/ValidationError (no rollback but connection marked as non-commitable)
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 07 Oct 2010 19:04:07 +0200] rev 6409
backport stable
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 07 Oct 2010 19:02:00 +0200] rev 6408
[testlib] fix mail monkey patching, former patch was applied on stable instead of default
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 07 Oct 2010 18:51:13 +0200] rev 6407
[primary view] default to outofcontext view for entities displayed in boxes
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Thu, 07 Oct 2010 17:25:24 +0200] rev 6406
xml-escape <script> tags generated by HTMLHead
Alexandre Fayolle <alexandre.fayolle@logilab.fr> [Wed, 06 Oct 2010 15:32:59 +0200] rev 6405
fix some issues in DotGraphView, and enhance reusability
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 06 Oct 2010 14:57:14 +0200] rev 6404
backport stable
Pierre-Yves David <pierre-yves.david@logilab.fr> [Wed, 06 Oct 2010 14:56:43 +0200] rev 6403
[testlib] Fix mail monkeypatch in testlib
ea26eb5fd388 in stable introduce monkeypatching of SendMailOp.commit_event
8bc6eac1fac1 in default rename SendMailOp.commit_event to postcommit_event
d7f5d873e1b8 merge stable in default without handling the rename.
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 06 Oct 2010 14:56:20 +0200] rev 6402
[selector] fix iterable detection
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 06 Oct 2010 14:04:26 +0200] rev 6401
backport stable
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 06 Oct 2010 11:57:21 +0200] rev 6400
restore vital block of code (gone in 6384:89d5b339ebdd)
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 06 Oct 2010 10:47:29 +0200] rev 6399
[debian] constrain pyro version in debian packaging
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 06 Oct 2010 10:46:20 +0200] rev 6398
[test] send mail synchronously during tests
Stephanie Marcu <stephanie.marcu@logilab.fr> [Tue, 05 Oct 2010 10:17:24 +0200] rev 6397
[book] improve documentation lisibility for cwconfig chapter and fix some references
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 05 Oct 2010 10:15:09 +0200] rev 6396
[login ui] cleanup and somewhat bw compat
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 05 Oct 2010 10:14:37 +0200] rev 6395
[selectors] move selectors according to their type, add missing ones to documentation
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Tue, 05 Oct 2010 08:33:10 +0200] rev 6394
[forms] remove dead code and simplify inlineviews creation
remove AutomaticEntityForm.should_inline_relation_form which is not
used anywhere and comes from a time where uicfg did not exist.
remove test for "force_<rtype>_display" presence in req.form to
determine whether or not the inline creation form should be displayed.
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 04 Oct 2010 19:09:09 +0200] rev 6393
include fcayre's patch #1060507 to get extra rql query parameters from form content in rgx_action
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 04 Oct 2010 19:05:51 +0200] rev 6392
[forms] catching KeyError closes #961831: migration failure when defining form fields
Aurelien Campeas <aurelien.campeas@logilab.fr> [Mon, 04 Oct 2010 18:59:32 +0200] rev 6391
[authentication] force retriever implementor to think about it
Aurelien Campeas <aurelien.campeas@logilab.fr> [Mon, 04 Oct 2010 18:56:10 +0200] rev 6390
[repo] add a find_users method for under-privileged accounts
Aurelien Campeas <aurelien.campeas@logilab.fr> [Mon, 04 Oct 2010 18:56:05 +0200] rev 6389
refactor login box & form to enable easy pluggability
* vregistry.selectable: get all selectable object of fixed oid with given context
* template headeri, logbox, logform: reorganize a bit the structure