Commit Graph

80 Commits

Author SHA1 Message Date
Ben Ogle
693fd43449 Fix resetting scoped config defaults
It would write an empty object for the parent key when there were no
other objects in the parent key.

Closes #4175
2014-11-14 15:11:43 -08:00
Ben Ogle
d0d6af7e55 Specs for priority 2014-10-24 13:07:14 -07:00
Ben Ogle
2b148b7720 Accept escaped dots in config settings keys
Fixes #3898
2014-10-20 16:58:57 -07:00
Ben Ogle
7ffe5d1385 Add support for scoped defaults in config schemas 2014-10-20 14:52:12 -07:00
Ben Ogle
055c632ee9 Call save() in restoreDefault() for scopedSettings 2014-10-20 12:29:46 -07:00
Ben Ogle
a42b3ff171 Support a scopeSelector in getSettings() 2014-10-15 16:26:03 -07:00
Ben Ogle
757abfe3db Config::restoreDefaults handles scopes 2014-10-15 15:33:38 -07:00
Ben Ogle
ae857203fd Support scoped settings in getDefault 2014-10-15 15:11:19 -07:00
Ben Ogle
62c1972c95 isDefault supports scoped settings 2014-10-15 14:44:16 -07:00
Ben Ogle
0588e14850 Only notify when changed key path is really sub path of observed path
Closes #3775
2014-10-13 14:25:55 -07:00
Ben Ogle
8910dd1a11 Update to not new format from propertiesForSource 2014-10-08 16:01:42 -07:00
Ben Ogle
a3bbbc19b5 Read and write scoped settings from the user’s config 2014-10-08 16:01:42 -07:00
Ben Ogle
a711e908d5 💄 2014-10-03 10:46:57 -07:00
Ben Ogle
f724c7fca8 Implement observing on scoped properties 2014-10-03 10:46:57 -07:00
Ben Ogle
899929a1ce addScopedDefaults -> addScopedSettings 2014-10-03 10:46:57 -07:00
Ben Ogle
d47dbede29 Fix specs 2014-10-03 10:46:57 -07:00
Ben Ogle
356f4bec7c Basic scoped settings in Config works 2014-10-03 10:46:13 -07:00
Ben Ogle
57603b3a00 Fix config resetting all values when one changes.
Closes atom/settings-view#257
2014-10-01 09:37:25 -07:00
Ben Ogle
54af7eced1 Handle empty config files + reset settings before applying user config
Closes #3664
2014-09-30 12:39:07 -07:00
Ben Ogle
b54deccfae String type must be strict.
It makes sense to coerce from more general -> more specific data types.
eg. string -> int, etc. But coercing the other way is problematic
in the case of chaining because the more general type will swallow the
specific type. eg. Setting `false` on type: [‘string’, ‘boolean’] will 
coerce the boolean to a string, and will never allow the value to be
a boolean.
2014-09-29 16:09:49 -07:00
Ben Ogle
a7185a894f Fix specs 2014-09-29 16:09:49 -07:00
Ben Ogle
16c7fd3d70 Add spec for update event on load 2014-09-29 16:09:49 -07:00
Ben Ogle
08b138997d Change the onDidChange / observe arguments
Support passing no keypath
2014-09-29 16:09:48 -07:00
Ben Ogle
ef19e925e9 Strings accept numbers too 2014-09-29 16:09:48 -07:00
Ben Ogle
2c1fa19e27 Update spec strings 2014-09-29 16:09:48 -07:00
Ben Ogle
22fb5adda9 Remove deprecated calls for config.observe .. callNow: false in core 2014-09-29 16:09:47 -07:00
Ben Ogle
800dee09ba Make boolean schema validator a little tighter 2014-09-29 16:09:47 -07:00
Ben Ogle
6b4ce902ba Undefined in Config::set always unsets the value 2014-09-29 16:09:46 -07:00
Ben Ogle
03a9a67ba8 Move spec 2014-09-29 16:08:04 -07:00
Ben Ogle
ae76bd6c96 Do not allow infinity in number types 2014-09-29 16:08:04 -07:00
Ben Ogle
662fc443dc Fix specs 2014-09-29 16:08:04 -07:00
Ben Ogle
0fc773c1fc Warn when loading bogus values from the user's config 2014-09-29 16:08:03 -07:00
Ben Ogle
af1bdaf901 Dont fail when there are thigns to set with array and object types 2014-09-29 16:08:03 -07:00
Ben Ogle
0d2fdec326 Fix specs in config 2014-09-29 16:08:03 -07:00
Ben Ogle
9fff544955 Fix specs 2014-09-29 16:05:24 -07:00
Ben Ogle
9fbbd1e59b Back to getSchema 2014-09-29 16:05:24 -07:00
Ben Ogle
2c1190b552 Validate enum keywords 2014-09-29 16:05:24 -07:00
Ben Ogle
5e9a269278 getSchema -> schemaForKeyPath 2014-09-29 16:05:24 -07:00
Ben Ogle
f7f28e7995 Handle minimum and maximum keywords on number types 2014-09-29 16:05:24 -07:00
Ben Ogle
ac67430926 Handle bad values in number type 2014-09-29 16:05:23 -07:00
Ben Ogle
409b5536e1 Support arrays 2014-09-29 16:05:23 -07:00
Ben Ogle
2526ba0efb Add an object filter 2014-09-29 16:05:23 -07:00
Ben Ogle
1a8c5ba551 Handle validation of schema types 2014-09-29 16:05:23 -07:00
Ben Ogle
f909d32826 Support more types 2014-09-29 16:05:23 -07:00
Ben Ogle
d0bb49dea0 Add type filter system to config 2014-09-29 16:05:23 -07:00
Ben Ogle
02e87555f4 Handle schema loading 2014-09-29 16:05:23 -07:00
Ben Ogle
a79c015774 Update ::observe and add ::onDidChange 2014-09-29 16:05:23 -07:00
Nathan Sobo
d37cfb9042 Assign default invisible character glyphs via config defaults
This commit also extends config.get to merge default values into the
returned object if both the assigned and default values are objects.
This allows 'atom.invisibles' to be treated as an object that always has
the default values filled in.
2014-08-13 16:32:13 -06:00
Nathan Sobo
7a4a85cb20 Fix failures running config specs locally 2014-05-16 09:00:01 -06:00
Kevin Sawicki
408665d7d2 Add Config::isDefault(keyPath) 2014-04-17 13:24:34 -07:00