Emmanuel Garette
ced260046c
test for multi
2014-02-02 18:21:09 +01:00
Emmanuel Garette
683e40fbb5
when change len of calculated master, change len of slave too
2014-02-02 18:20:01 +01:00
Emmanuel Garette
8709386570
__getattr__ OD
2014-02-01 18:35:18 +01:00
Emmanuel Garette
2f40216fad
Merge branch 'master' into orm
2014-02-01 17:25:39 +01:00
Emmanuel Garette
71b235551e
add tests for find()
2014-02-01 17:25:31 +01:00
Emmanuel Garette
cddeef0990
Merge branch 'master' into orm
2014-02-01 16:49:29 +01:00
Emmanuel Garette
f48f3e7544
add tests for find()
2014-02-01 16:49:16 +01:00
Emmanuel Garette
313b03b246
cache in sql works
2014-02-01 16:26:23 +01:00
Emmanuel Garette
02a987b39d
sqlalchemy
2014-01-30 22:55:15 +01:00
Emmanuel Garette
2eb63c917b
active callback's slave verification
2014-01-28 09:14:56 +01:00
Emmanuel Garette
7c8049a8d0
Merge branch 'master' into orm
2014-01-27 23:28:43 +01:00
Emmanuel Garette
a1dd2cfce7
require works well in sqlalchemy storage
2014-01-27 17:16:05 +01:00
gwen
9deb67f887
warning and error messages not translated in the tests
2014-01-27 14:55:53 +01:00
Emmanuel Garette
880b6366eb
Merge branch 'master' into orm
...
Conflicts:
tiramisu/setting.py
2014-01-25 16:39:32 +01:00
Emmanuel Garette
138018dfe9
if we delete all reference to a Config and we have reference to old SubConfig, Values, Multi or Settings, make a ConfigError instead of AttributError on NoneType object
2014-01-25 11:20:11 +01:00
Emmanuel Garette
3b3e5216fe
cache
2014-01-25 10:15:25 +01:00
Emmanuel Garette
661f844ce6
sqlalchemy has a storage
2014-01-20 14:53:14 +01:00
Emmanuel Garette
068f68460d
Merge branch 'master' into orm
2014-01-18 10:25:09 +01:00
Emmanuel Garette
9d92ab84d7
regression: permissive for option is apply every time, not only when global permissive is set
2014-01-16 09:49:37 +01:00
Emmanuel Garette
cde04d654a
Merge branch 'master' into orm
...
Conflicts:
tiramisu/setting.py
2014-01-09 20:32:17 +01:00
gwen
3c36e05d82
adds test for an API
2014-01-06 14:40:29 +01:00
Emmanuel Garette
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
Emmanuel Garette
c58de18b62
add more tests
2013-12-09 18:56:29 +01:00
Emmanuel Garette
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
Emmanuel Garette
bb1f6947e3
better name's validation
2013-12-09 17:55:52 +01:00
Emmanuel Garette
6e4f19eebe
more tests
2013-12-09 15:43:45 +01:00
Emmanuel Garette
0f966f6d26
check if permissive is in global properties before allow permissive for an option
2013-12-09 15:29:37 +01:00
Emmanuel Garette
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
029452ccbc
validation of an ip if an ip term starts with a zero
2013-12-02 15:10:05 +01:00
Emmanuel Garette
374c56a9c8
first version with sqlalchemy option's storage
2013-11-23 23:34:17 +01:00
Emmanuel Garette
eb3327cd75
correction in allow_without_dot + test
2013-10-01 10:13:17 +02:00
Emmanuel Garette
6902ad4f18
some extra tests for filename
2013-10-01 08:23:10 +02:00
Emmanuel Garette
2dcdbb137e
rename FileOption to FilenameOption
...
python 3 support
2013-10-01 08:19:10 +02:00
Emmanuel Garette
0a83a9261f
update invalid's message and display all informations when raises
2013-09-30 22:56:08 +02:00
Emmanuel Garette
cce080cbd3
add FileOption
2013-09-30 21:21:47 +02:00
Emmanuel Garette
1a294e3d09
refactor DomainnameOption
...
add options EmailOption and URLOption
2013-09-30 19:41:56 +02:00
Emmanuel Garette
feeb9842f5
serialize metaconfig/groupconfig
2013-09-30 16:22:08 +02:00
Emmanuel Garette
6b7db20716
Merge branch 'master' into metaconfig
2013-09-28 22:49:50 +02:00
Emmanuel Garette
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
Emmanuel Garette
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
Emmanuel Garette
f4677b9ef9
use warnings instead of a new dictionary
2013-09-26 21:56:06 +02:00
Emmanuel Garette
f040d3da61
warning is now a dict
2013-09-26 18:35:20 +02:00
Emmanuel Garette
e63dbf308d
more tests for warnings
2013-09-26 09:31:51 +02:00
Emmanuel Garette
329b9ac349
add _second_level_validation (second's one return only warning almost _validator raise)
2013-09-25 21:10:45 +02:00
Emmanuel Garette
06baff2f3b
add warning ability
2013-09-24 23:19:20 +02:00
Emmanuel Garette
3fc89be40e
comment tiramisu/autolib.py + some modification
2013-09-23 22:40:10 +02:00
Emmanuel Garette
ff7714d8d3
add find test value in a multi's option
2013-09-22 21:31:37 +02:00
Emmanuel Garette
c84d13a1c6
we can serialize Config now
2013-09-22 20:57:52 +02:00
Emmanuel Garette
972dff0a1c
serialize new callback
2013-09-20 23:47:40 +02:00
Emmanuel Garette
ae4df32d0e
error if change slave len for default's slave option
2013-09-19 23:02:15 +02:00
Emmanuel Garette
28c416dd84
add allow_reserved in IPOption
2013-09-19 21:51:55 +02:00
Emmanuel Garette
90ae9aa70d
refactore carry_out_calculation + test + documentation
2013-09-19 21:39:41 +02:00
Emmanuel Garette
866364059c
dont change anything if config_error
2013-09-17 09:10:08 +02:00
Emmanuel Garette
7165f73292
add metaconfig
2013-09-17 09:02:10 +02:00
Emmanuel Garette
57f4dd8d3f
allow mandatory value (see 9ddf100118
for more details)
2013-09-16 20:51:13 +02:00
Emmanuel Garette
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
Emmanuel Garette
3dc72c505c
support no expire in getcache
2013-09-07 22:37:13 +02:00
Emmanuel Garette
77c1ccf40b
add 'cache' property
2013-09-07 17:25:22 +02:00
Emmanuel Garette
f8b0a53c3f
cache is always a dictionary in memory
2013-09-07 10:31:39 +02:00
Emmanuel Garette
22bfbb9fa4
storage no more in setting.py, code is now in storage/__init__.py
2013-09-06 23:15:36 +02:00
Emmanuel Garette
3b733d1b4f
support cache consistencies + no consistencies for a symlink + test
2013-09-03 22:41:18 +02:00
Emmanuel Garette
aeeaf6ec14
impl_get_information and impl_set_information are, now, persistent in storage
2013-09-03 10:38:38 +02:00
Emmanuel Garette
f106f3ced7
cannot set properties if those properties are in requirement
2013-09-02 19:47:00 +02:00
Emmanuel Garette
4636a977cc
requirements: calculate all requirements for an option
2013-09-02 17:13:43 +02:00
gwen
52a6705fbf
new logo for the tiramisu project
2013-09-02 16:27:22 +02:00
Emmanuel Garette
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
Emmanuel Garette
c01f14920d
test more sloted options
2013-08-30 09:40:28 +02:00
Emmanuel Garette
eb62d0c4a4
add test for impl_get_path_by_opt and impl_get_opt_by_path
2013-08-29 09:29:28 +02:00
Emmanuel Garette
8aa4260404
test force_default_on_freeze with multi and correction in Multi()
2013-08-28 22:50:35 +02:00
Emmanuel Garette
8c24903dfb
order in properties can change
2013-08-28 21:23:42 +02:00
gwen
fbf05ba5e4
python 3 compatibility
...
remove __eq__ and __ne__ in Option
2013-08-28 21:13:42 +02:00
Emmanuel Garette
71a8171c52
add tests for persistent mode
2013-08-27 22:08:35 +02:00
Emmanuel Garette
3be005e82e
add test test/test_dereference.py + memoryleaks in optiondescription's cache
2013-08-27 21:36:52 +02:00
gwen
a894a5e27b
rename API add_owner -> addowner
2013-08-27 16:12:53 +02:00
Emmanuel Garette
acd27fb56c
huge use of weakrefs to remove memoryleaks due to circular references
2013-08-27 11:39:32 +02:00
Emmanuel Garette
36def6533f
store session in dictionary storage
2013-08-27 09:46:52 +02:00
gwen
551b9fb1e3
getting stated documentation
2013-08-26 17:14:14 +02:00
Emmanuel Garette
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
Emmanuel Garette
f482737a47
add test to known if has a value + some corrections
2013-08-24 23:10:35 +02:00
Emmanuel Garette
e6a183c00d
test get_modified_values
2013-08-24 22:54:02 +02:00
Emmanuel Garette
e4c129efc5
getowner need now an option
2013-08-24 22:32:54 +02:00
Emmanuel Garette
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
Emmanuel Garette
c2b16d2605
add _path in reset for performance + more tests
2013-08-24 16:30:46 +02:00
Emmanuel Garette
62553aba1f
test invalid owner in setowner
2013-08-23 09:29:42 +02:00
Emmanuel Garette
ac62931525
add test for recursive path in requirement
2013-08-22 22:57:32 +02:00
Emmanuel Garette
04aa4e6bf1
never same calculated properties has properties (only in cache)
2013-08-22 22:48:09 +02:00
gwen
3d67e35447
documentation on the tests
2013-08-22 12:17:10 +02:00
Emmanuel Garette
b6bb685ca5
key is now always path and change opt by path dictionary storage
2013-08-21 22:21:50 +02:00
Emmanuel Garette
e826f3d1c6
we can personalise storage easily
2013-08-20 09:47:12 +02:00
Emmanuel Garette
df7d6759cd
add sqlite plugin
2013-08-19 11:01:21 +02:00
Emmanuel Garette
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
Emmanuel Garette
1c951558da
add new option's type: PortOption
2013-07-11 23:05:33 +02:00
Emmanuel Garette
c06659012b
Config: __str__ raise if no str/unicode value
2013-07-03 21:56:31 +02:00
Emmanuel Garette
0afb521766
support multi requirement with inverse for same option
2013-07-03 15:04:15 +02:00
Emmanuel Garette
9b134c3aa7
requirement are now a dictionary (not anymore a tuple)
2013-06-29 18:41:14 +02:00
Emmanuel Garette
e501c6d12d
support multi requires with inverse set to True
2013-06-28 11:59:51 +02:00
Emmanuel Garette
75f7e7ce5d
callback with option in params which is in an hidden optiondescription
2013-06-26 16:26:42 +02:00
Emmanuel Garette
23f6d2228f
add symlink test
2013-06-13 22:07:58 +02:00