gwen
f0ecbf4914
adds an extend API for the settings
2014-01-06 14:32:56 +01:00
172a33f842
mandatory_warnings never raises ConfigError
2013-12-16 14:20:35 +01:00
64ca069a0b
Merge branch 'master' into orm
...
Conflicts:
test/test_config.py
tiramisu/autolib.py
tiramisu/option.py
tiramisu/value.py
2013-12-12 17:50:42 +01:00
1e880f4bc6
remove unused code
2013-12-09 18:48:44 +01:00
73745be440
Important behavior change : to add default_multi value, now use Multi.append(), not Multi.append(None)
2013-12-09 17:59:39 +01:00
bb1f6947e3
better name's validation
2013-12-09 17:55:52 +01:00
0f966f6d26
check if permissive is in global properties before allow permissive for an option
2013-12-09 15:29:37 +01:00
20bef5ff04
Important behavior change in callback with multi.
...
Before, tiramisu iterable multi's callback_params in all cases.
Now, this append only if multi's callback_params are in master/slave group.
2013-12-09 15:08:14 +01:00
gwen
deb174f36e
imprecise error message
2013-12-05 09:59:07 +01:00
e153cf0e28
no more used and_
2013-12-04 16:28:11 +01:00
gwen
5fb79fed38
an error message has been deleted by error, ref #6740
2013-12-04 15:55:53 +01:00
gwen
48b662997e
an error message has been deleted by error
2013-12-04 15:48:19 +01:00
gwen
029452ccbc
validation of an ip if an ip term starts with a zero
2013-12-02 15:10:05 +01:00
374c56a9c8
first version with sqlalchemy option's storage
2013-11-23 23:34:17 +01:00
gwen
384b30210c
find and find_first's new argument
2013-11-04 17:15:47 +01:00
b606d23801
add imp_meta
2013-10-15 18:23:36 +02:00
615cad4b49
EmailOption and URLOption : let user choose attr for DomainnameOption
2013-10-01 20:01:38 +02:00
eb3327cd75
correction in allow_without_dot + test
2013-10-01 10:13:17 +02:00
2dcdbb137e
rename FileOption to FilenameOption
...
python 3 support
2013-10-01 08:19:10 +02:00
0a83a9261f
update invalid's message and display all informations when raises
2013-09-30 22:56:08 +02:00
c8a20eefb5
update invalid's message and display all informations when raises
2013-09-30 22:54:46 +02:00
cce080cbd3
add FileOption
2013-09-30 21:21:47 +02:00
1a294e3d09
refactor DomainnameOption
...
add options EmailOption and URLOption
2013-09-30 19:41:56 +02:00
feeb9842f5
serialize metaconfig/groupconfig
2013-09-30 16:22:08 +02:00
6b7db20716
Merge branch 'master' into metaconfig
2013-09-28 22:49:50 +02:00
b7f85b8559
Merge branch 'master' into lgpl
2013-09-28 18:43:46 +02:00
70f684e70c
tiramisu/option.py:
...
separate _consistencies (for Option) and _cache_consistencies (for OptionDescription)
_launch_consistency need index for multi's option
_cons_not_equal support multi options
tiramisu/value.py:
Multi._validate support consistency
2013-09-28 17:05:01 +02:00
482dfec7f2
consistancies can have more than one option
...
add _cons_broadcast
2013-09-27 23:27:08 +02:00
gwen
2490d00935
refactor name only_private
2013-09-27 11:28:23 +02:00
gwen
162ae02df8
refactor (warnings_only)
2013-09-27 09:52:18 +02:00
3073940ca4
can't assign to an OptionDescription
2013-09-26 22:35:12 +02:00
1d2008fd84
error message for ip/broadcast/netmask/network validation
2013-09-26 22:27:39 +02:00
a004f30e34
french translation correction
2013-09-26 22:11:25 +02:00
f4677b9ef9
use warnings instead of a new dictionary
2013-09-26 21:56:06 +02:00
f040d3da61
warning is now a dict
2013-09-26 18:35:20 +02:00
329b9ac349
add _second_level_validation (second's one return only warning almost _validator raise)
2013-09-25 21:10:45 +02:00
4e0f0a5b70
config_error is an exception, raise directly config_error
2013-09-25 10:22:31 +02:00
06baff2f3b
add warning ability
2013-09-24 23:19:20 +02:00
a08af2383d
comment config
2013-09-23 22:55:54 +02:00
3fc89be40e
comment tiramisu/autolib.py + some modification
2013-09-23 22:40:10 +02:00
26e3651848
update french translation
2013-09-23 21:00:45 +02:00
8a7078d3b0
gpl to lgpl
2013-09-22 22:33:09 +02:00
d2f101b7bb
didnot getattr a second time in find if not needed
2013-09-22 21:54:07 +02:00
051f1c8774
tiramisu/config.py:
...
- find byvalue support Multi
tiramisu/value.py:
- Multi's pop comment
2013-09-22 21:23:12 +02:00
c84d13a1c6
we can serialize Config now
2013-09-22 20:57:52 +02:00
972dff0a1c
serialize new callback
2013-09-20 23:47:40 +02:00
ae4df32d0e
error if change slave len for default's slave option
2013-09-19 23:02:15 +02:00
28c416dd84
add allow_reserved in IPOption
2013-09-19 21:51:55 +02:00
90ae9aa70d
refactore carry_out_calculation + test + documentation
2013-09-19 21:39:41 +02:00
gwen
30ff0fb72b
Merge branch 'master' of ssh://git.labs.libre-entreprise.org/gitroot/tiramisu
2013-09-17 14:03:03 +02:00
866364059c
dont change anything if config_error
2013-09-17 09:10:08 +02:00
7165f73292
add metaconfig
2013-09-17 09:02:10 +02:00
57f4dd8d3f
allow mandatory value (see 9ddf100118
for more details)
2013-09-16 20:51:13 +02:00
gwen
653eb776bf
Merge branch 'master' of ssh://git.labs.libre-entreprise.org/gitroot/tiramisu
2013-09-16 15:21:18 +02:00
gwen
ffc9d086f9
double negation in error msg
2013-09-16 15:21:08 +02:00
9ddf100118
when we get an option's value, we need it's values to calculate properties (ie for mandatory's option)
...
if a disabled option has a callback to an other disabled value, it's raise ConfigError
now only raise if option has no other propertiesError
2013-09-16 15:07:34 +02:00
abbb7a274e
update doc
2013-09-14 14:44:50 +02:00
28ea4f0e90
update doc
2013-09-10 21:04:12 +02:00
3dc72c505c
support no expire in getcache
2013-09-07 22:37:13 +02:00
632de1cffb
comment tiramisu/setting.py
2013-09-07 22:16:50 +02:00
371f094dcb
comment tiramisu/setting.py
2013-09-07 21:47:17 +02:00
77c1ccf40b
add 'cache' property
2013-09-07 17:25:22 +02:00
f8b0a53c3f
cache is always a dictionary in memory
2013-09-07 10:31:39 +02:00
c8876ab184
comment storage
2013-09-06 23:53:19 +02:00
22bfbb9fa4
storage no more in setting.py, code is now in storage/__init__.py
2013-09-06 23:15:36 +02:00
gwen
18fc5db4ac
lists in sets
2013-09-06 09:05:19 +02:00
dc688ad644
ro/rw_append/remove are now 'set' type
2013-09-04 09:09:45 +02:00
gwen
02873f2836
Merge branch 'master' of ssh://git.labs.libre-entreprise.org/gitroot/tiramisu
2013-09-04 09:05:25 +02:00
gwen
9983739b2b
pep8 line too long
2013-09-04 09:05:12 +02:00
3b733d1b4f
support cache consistencies + no consistencies for a symlink + test
2013-09-03 22:41:18 +02:00
gwen
fc9f6ce816
Merge branch 'master' of ssh://git.labs.libre-entreprise.org/gitroot/tiramisu
2013-09-03 11:01:37 +02:00
gwen
f9fde44b3b
docstrings
2013-09-03 11:01:07 +02:00
aeeaf6ec14
impl_get_information and impl_set_information are, now, persistent in storage
2013-09-03 10:38:38 +02:00
0212a15387
add __setstate__ to loads from a serialised object
2013-09-02 23:04:37 +02:00
cc3a33ef4f
true serialize for _children
2013-09-02 21:29:41 +02:00
84b7ec7b37
update __slots__ for Option/BaseOption
2013-09-02 20:46:51 +02:00
8ccfba1671
factorise Option and OptionDescription init
2013-09-02 20:37:23 +02:00
f106f3ced7
cannot set properties if those properties are in requirement
2013-09-02 19:47:00 +02:00
4636a977cc
requirements: calculate all requirements for an option
2013-09-02 17:13:43 +02:00
gwen
5624a69e41
merge
2013-09-02 15:11:38 +02:00
gwen
7dd9394b84
makefile and docstrings
2013-09-02 15:06:55 +02:00
2c1da6d72e
an OptionDescription can be serialized
2013-09-02 15:01:49 +02:00
d3ee2acaab
can export options
2013-09-01 22:20:11 +02:00
82b375ade5
- add "make build-pot" to build or update translations/tiramisu.pot files
...
- corrections in error's message in tiramisu/option.py
- update tiramisu.pot
- update fr's translation
2013-08-31 09:54:23 +02:00
5893f8ad72
attributes in Option are now read-only if option set in Config (_name is everytime read-only)
2013-08-30 21:15:55 +02:00
gwen
5efc62af09
docstring setpermissive
2013-08-29 09:32:32 +02:00
8aa4260404
test force_default_on_freeze with multi and correction in Multi()
2013-08-28 22:50:35 +02:00
7f755e0ef8
setpermissive should have opt has option
2013-08-28 22:05:44 +02:00
gwen
fbf05ba5e4
python 3 compatibility
...
remove __eq__ and __ne__ in Option
2013-08-28 21:13:42 +02:00
776524a22d
pep8
2013-08-28 09:18:48 +02:00
397a600be7
pep8
2013-08-28 09:16:12 +02:00
3be005e82e
add test test/test_dereference.py + memoryleaks in optiondescription's cache
2013-08-27 21:36:52 +02:00
d75cef9c0f
pep8
2013-08-27 17:13:20 +02:00
gwen
a894a5e27b
rename API add_owner -> addowner
2013-08-27 16:12:53 +02:00
acd27fb56c
huge use of weakrefs to remove memoryleaks due to circular references
2013-08-27 11:39:32 +02:00
36def6533f
store session in dictionary storage
2013-08-27 09:46:52 +02:00
fb1eba39ea
save storage with get_storage
...
list_sessions and delete_session is now in setting directly
2013-08-26 21:54:41 +02:00
0bc47b1cf9
ConstError in tiramisu/error.py
...
storage_type is now unique
rename _const => _NameSpace
can change storage's options in set_storage
storage :
add Setting object in storage
rename enumerate to list_sessions
rename delete to delete_session
auto-create owner when load sqlite3 storage and in getowner
2013-08-26 21:48:42 +02:00
gwen
551b9fb1e3
getting stated documentation
2013-08-26 17:14:14 +02:00
6b9d5aed59
add enumerate and delete method for manage storage
2013-08-25 21:57:11 +02:00
dc2c173b44
revert change in append of Multi object for sqlite3 storage
2013-08-25 20:51:29 +02:00
dcb12dac02
can change storage with set_storage, storage's name is store in storage object and storage is create with get_storage
2013-08-25 20:49:24 +02:00
36ed6f874f
add some tests for values
...
cannot use __setitem__ to set value for an option
in append, len should not greater than master option
2013-08-25 18:06:07 +02:00
f482737a47
add test to known if has a value + some corrections
2013-08-24 23:10:35 +02:00
e4c129efc5
getowner need now an option
2013-08-24 22:32:54 +02:00
4c27cb586d
in __setattr__, name should never be object's variable name
...
remove context in type_ find's option
find_first_context return AttributError if no results
2013-08-24 21:26:10 +02:00
6708fe4522
is not config in other, __neq__ should return True
2013-08-24 18:04:19 +02:00
a7d784ba3e
is not config in other, __neq__ should return True
2013-08-24 18:04:11 +02:00
196d270cc9
_calc_requirement is a set, not a tuple
2013-08-24 16:34:08 +02:00
c2b16d2605
add _path in reset for performance + more tests
2013-08-24 16:30:46 +02:00
gwen
0db7ef72a6
automatic API documentation
2013-08-23 11:16:26 +02:00
f8422c03e8
reqpath is get from option, so reqpath ever exists, cannot raise AttributeError
2013-08-22 22:52:29 +02:00
04aa4e6bf1
never same calculated properties has properties (only in cache)
2013-08-22 22:48:09 +02:00
gwen
747d994762
documentation on the requirements and docstring updates
2013-08-22 11:08:26 +02:00
1ddd88fc99
some corrections in sqlite3 storage
2013-08-21 23:21:28 +02:00
b6bb685ca5
key is now always path and change opt by path dictionary storage
2013-08-21 22:21:50 +02:00
707a215a2c
pep8
2013-08-21 18:34:32 +02:00
gwen
acca6d5a27
documentation update and docstrings
2013-08-21 17:21:09 +02:00
gwen
7d2449380c
documentation and docstring updates
2013-08-21 14:52:48 +02:00
gwen
a431b46fb9
Merge branch 'master' of ssh://git.labs.libre-entreprise.org/gitroot/tiramisu
2013-08-21 11:10:15 +02:00
gwen
defae40a2f
documentation update and docstrings
2013-08-21 11:09:11 +02:00
cc569efcc7
pep8
2013-08-20 23:00:20 +02:00
0d5a447eb3
add persistent option for db
2013-08-20 22:45:11 +02:00
d971448d02
pep8
2013-08-20 16:48:19 +02:00
2e8c75a602
merge from val_prop_plugin branch
2013-08-20 16:45:54 +02:00
82b0e26568
merge from val_prop_plugin branch
2013-08-20 16:44:52 +02:00
gwen
5c8bb1f8f9
documentation update
2013-08-20 16:38:06 +02:00
ace7f6f828
merge from master
2013-08-20 16:33:32 +02:00
gwen
564fecc261
pep 8 lines too long
2013-08-20 12:08:02 +02:00
e826f3d1c6
we can personalise storage easily
2013-08-20 09:47:12 +02:00
df7d6759cd
add sqlite plugin
2013-08-19 11:01:21 +02:00
f6f709f83d
split cache/value/setting in plugin
2013-08-14 23:06:31 +02:00
513722ed57
corrections in tiramisu's setting
2013-07-23 14:24:42 +02:00
e9ffd96a28
update translation
2013-07-18 21:25:07 +02:00
e6c3104681
translation
2013-07-17 23:05:43 +02:00
bc054d75af
translation
2013-07-17 23:02:50 +02:00
15ac8c2872
update french translation
2013-07-17 22:30:35 +02:00
8056387f02
return true error message when validation
2013-07-17 20:48:46 +02:00
de44daafeb
- can reset directly custom settings for an option: setting[option].reset()
...
- option properties are now tuple in internal, and change it to set when needed (that coping data)
2013-07-13 10:42:10 +02:00
gwen
a95f19d5f4
default settings
2013-07-12 16:20:34 +02:00
c53d574ac2
can't use RESERVED address in IPOption and NetworkOption
2013-07-11 23:06:26 +02:00
1c951558da
add new option's type: PortOption
2013-07-11 23:05:33 +02:00
c06659012b
Config: __str__ raise if no str/unicode value
2013-07-03 21:56:31 +02:00
0afb521766
support multi requirement with inverse for same option
2013-07-03 15:04:15 +02:00
gwen
b80bef0f7e
string.format with numeric parameters
2013-07-02 15:05:50 +02:00
4b5d9b4229
__str__ method could return unicode object, force to decode in str
2013-07-01 16:49:10 +02:00
b8bfa02e02
Remove 'build_actions' in 'apply_requires', now 'validate_requires_arg' build requires with tuple of tuple
...
New _requires format:
- requirement (like old format)
- tuple of requirements, each items are a tuple of requirement with same action
2013-07-01 11:55:32 +02:00
9b134c3aa7
requirement are now a dictionary (not anymore a tuple)
2013-06-29 18:41:14 +02:00
e501c6d12d
support multi requires with inverse set to True
2013-06-28 11:59:51 +02:00
75f7e7ce5d
callback with option in params which is in an hidden optiondescription
2013-06-26 16:26:42 +02:00