Add
* Added new field types and spruced up the existing ones ... also began adding the new configuration schema stuff to the demo “yodogg” project found in tests/. [Alexander Böhn]
Minutiae
* Minutiae. [Alexander Böhn]
Other
* Bump version: 0.3.1 → 0.3.2. [Alexander Böhn]
* Bugfixes in “clu.config” – ... better None-checks in “clu.config.env” ... force-stringify arg in “clu.confiig.settings.Schema.nestify(…)” ... check type before length in “clu.config.fieldtypes.StringField” ... many updates and tweaks to the “clu.fs.appdirectories” module ... testing package EnvBase subclasses and custom schema classes in “test_config.py” ... miscellaneous changes to support all of the above shit. [Alexander Böhn]
* A large miscellany-roundup push, featuring: ... correct-er (i.e. more like the builtin) “update(…)” method’s logic, w/r/t iterable arguments; ... correct-er (i.e. not inconsistent) argument passing/checking in several of the “clu.config.fieldtypes.fields”; ... updates to “clu.config.filebase.FileName” allowing config files to optionally be located and used from “sys.path” directories ... fixes to the aforementioned “clu.config.filebase.FileName” to decouple it from CLU’s app name – config files should all now defer to the “clu.config.filebase.FileBase” respective subclass name information, across the board; ... Lots of docstring tweaks, corrections, and OCD-ish updates; ... The initialization logic of “clu.config.settings.Schema” now takes place in “__new__(…)” rather than “__init__(…)” – this lets subclassers forego calling up to the superclass if they define an “__init__(…)” and clearly separates the concerns; ... Some minor nitpicky updates to the way that the aforementioned “clu.config.settings.Schema” stringification methods work; ... Calling “clu.config.settings.Schema.validate()” returns True if all goes well… this may or may not be gratuitous as it’ll never return False – if validation goes awry at any point the call to “validate()” raises a ValidationError; ... The possible “replaceable endings” in “clu.exporting” are as automatically-generated as possible, and more comprehensive like in general; and finally ... the exporter tests now correctly locate, import, and examine the “yodogg” testing module’s exporter subclasses. [Alexander Böhn]
* WHOOOOPS. [Alexander Böhn]
* Fixing “clu.config.fieldtypes.TupleField” [Alexander Böhn]
* Removed “default” params from NamespacedFieldManager methods. [Alexander Böhn]
* Trimmed a whoooooole lot of dead code. [Alexander Böhn]
* Fixed container field types ... it wasn’t a pretty fix – it involves manually calling a field’s “__set_name__(…)” method – but it works. Blech! [Alexander Böhn]
* Moved file-format-related config stuff into “clu.config.formats” [Alexander Böhn]
* I feel docstring, oh so docstring – [Alexander Böhn]
* Docstrings for “clu.config.settings.Schema” [Alexander Böhn]
* Dead code trim, simplifications, greater helpfulness in exceptions… [Alexander Böhn]
* These tests, they are a-pass-in’ [Alexander Böhn]
* Beginnigs of __repr__ logic for “clu.config.base.{Flat,Nested}” ... also fixes ensuring “clu.dicts.merge_two(…)” will actually work. [Alexander Böhn]
* More wide-ranging updates to the “clu.config” machinery ... Added a “clone()” method! ... Fixed “clu.dicts.merge_two(…)” to be properly generic, and thus support these new mapping types! ... cleaned the dead code out of “clu.config.tomlfile”! ... AND MORE!!!! [Alexander Böhn]
* Had to rename “clu.config.toml” as “clu.config.tomlfile” ... to avoid confusing `import` – like it was somehow doing py2-ish implict relative imports, “import toml” from within the file that defined “clu.config.toml” would yield “clu.config.toml” – what the fuuuuuuuuuuuck? So I changed it. [Alexander Böhn]
* Many updates to “clu.config” … ... docstrings abound! ... fixes for the “clu.config.base.Flat.{keys,values}(…)” methods! ... “Flat.nestify(…)” and “Nested.flatten(…)” allow reformatting namespaced-dictionary data losslessly between internal formats! ... Expanded the “find_file(…)” method and moved it and its many helper class-methods from “clu.config.filebase.FileBase” up to “clu.config.filebase.FileName” – the key difference being that the latter is a mixin class and can be reused outside of the FileBase implementation(s)! ... Most of the intermediate file-finding-related methods can take either additional or overriding parameters which will be great for testing!! ... other miscellaneous shit I am sure!!! [Alexander Böhn]
* Self-test introspection for the “clu.config.toml” module. [Alexander Böhn]
* Getting ever-closer – adding “clu.config.toml” [Alexander Böhn]
* Continuing apace on “clu.config.filebase” [Alexander Böhn]
* Fleshing out “clu.config.base”; staring on “clu.config.filebase” [Alexander Böhn]
* Start of the “clu.config” module. [Alexander Böhn]
* Moved a few enum-alias-related predicates into “clu.typology” [Alexander Böhn]
* First stab at slash-operators for Directory filesystem types. [Alexander Böhn]
* Trying to get the PyPy testenv to actually use PyPy, like it used to. [Alexander Böhn]