Commit Graph

25 Commits

Author SHA1 Message Date
Hynek Schlawack 445b6b2e00 Add these argument to attr.s
Useful for third party classes and when using properties.

Based on feedback by @econchick & @hawkowl
2015-02-08 16:31:16 +01:00
Lynn Root ab6b3e9b4b Fix typo 2015-02-07 14:03:17 -06:00
Hynek Schlawack 4e81b7b5e2 Rename add_XXX to no_XXX
Assume you want everything by default and be consistent with the no_XXX
attributes on Attribute.
2015-02-07 09:15:59 +01:00
Hynek Schlawack f7597c795f Clarify backward compatibility + polish API docs 2015-02-01 19:27:36 +01:00
Hynek Schlawack 82892487fb Remove assignment validation again
Mainly because:

1. I don't want to encourage mutations.
2. It's impossible to protect the attributes from becoming invalid anyway so
   this is a lot of complexity (and __setattr__ overwriting) but only little
   benefit.
2015-01-31 18:01:31 +01:00
Hynek Schlawack e7ebf4bf81 Allow single attributes to be excluded 2015-01-30 17:48:34 +01:00
Hynek Schlawack 943d686509 Validate assignments 2015-01-30 13:30:47 +01:00
Hynek Schlawack 7c85d68de2 Verify amount of arguments passed to Attribute 2015-01-30 13:26:44 +01:00
Hynek Schlawack 564fade925 Simplify attributes decorator 2015-01-30 09:50:33 +01:00
Hynek Schlawack 5753281838 Add attrs.make_class 2015-01-30 08:57:33 +01:00
Hynek Schlawack f61fb5d185 Eliminate factory field
Instead, have only one default field.  If the default value is an instance of
attr.Factory, use it as a factory.
2015-01-29 23:10:56 +01:00
Hynek Schlawack 717dcdadca Short default_value to default 2015-01-29 22:32:41 +01:00
Hynek Schlawack 9cb48a5814 Shorten default_factory to factory 2015-01-29 22:29:37 +01:00
Hynek Schlawack 7aaab84091 Add assoc 2015-01-29 20:50:42 +01:00
Hynek Schlawack 4f62d47d08 We don't need three names for the same thing 2015-01-29 19:39:49 +01:00
Hynek Schlawack 8f98b38136 Increase branch coverage
And a lot of under the hood work.
2015-01-29 17:31:49 +01:00
Hynek Schlawack 3e45f0559e Strip underscore for __init__
There is not such thing as private parameters.
2015-01-29 13:05:04 +01:00
Hynek Schlawack 692e4613a0 Add instance_of validator 2015-01-29 12:20:17 +01:00
Hynek Schlawack 3f2fd8317d More doc polishing 2015-01-28 16:55:45 +01:00
Hynek Schlawack d5d3dfcdb5 Some minor doc polish 2015-01-28 16:02:18 +01:00
Hynek Schlawack 372c55318c Add validators 2015-01-28 15:54:41 +01:00
Hynek Schlawack d291e8c4dc Add some API docs
Also define ls and has only for classes.
2015-01-28 15:16:42 +01:00
Hynek Schlawack fdd41b0466 Rename s to _add_methods
...and rename within __init__.py
2015-01-28 12:38:54 +01:00
Hynek Schlawack 14c5485cf5 Use proper Attributes in all dunders 2015-01-28 11:34:55 +01:00
Hynek Schlawack 9560908555 Initial commit
Docs aren't there yet
2015-01-27 17:53:17 +01:00