Skip to content

Commit

Permalink
Remove deprecated HasTraits.get and HasTraits.set methods (#1738)
Browse files Browse the repository at this point in the history
`HasTraits.get` and `HasTraits.set` were deprecated in 2014. Users
should use `trait_get` and `trait_set` instead.

## Checklist

- [x] Tests
- [x] Update API reference (`docs/source/traits_api_reference`)  - N/A
- [x] Update User manual (`docs/source/traits_user_manual`)  - N/A
- [x] Update type annotation hints in stub files
  • Loading branch information
mdickinson committed Apr 17, 2023
1 parent 7eefaa2 commit dcbefb4
Show file tree
Hide file tree
Showing 3 changed files with 1 addition and 40 deletions.
16 changes: 0 additions & 16 deletions traits/has_traits.py
Original file line number Diff line number Diff line change
Expand Up @@ -1417,13 +1417,6 @@ def trait_get(self, *names, **metadata):

return result

# Defines the deprecated alias for 'trait_get'
@deprecated('use "HasTraits.trait_get" instead')
def get(self, *names, **metadata):
return self.trait_get(*names, **metadata)

get.__doc__ = trait_get.__doc__

def trait_set(self, trait_change_notify=True, **traits):
""" Shortcut for setting object trait attributes.
Expand Down Expand Up @@ -1468,15 +1461,6 @@ def trait_set(self, trait_change_notify=True, **traits):

return self

# Defines the deprecated alias for 'trait_set'
@deprecated('use "HasTraits.trait_set" instead')
def set(self, trait_change_notify=True, **traits):
return self.trait_set(
trait_change_notify=trait_change_notify, **traits
)

set.__doc__ = trait_set.__doc__

def trait_setq(self, **traits):
""" Shortcut for setting object trait attributes.
Expand Down
2 changes: 0 additions & 2 deletions traits/has_traits.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -72,9 +72,7 @@ class HasTraits(CHasTraits, metaclass=MetaHasTraits):
def has_traits_interface(self, *interfaces: _Any): ...
def __reduce_ex__(self, protocol: _Any): ...
def trait_get(self, *names: _Any, **metadata: _Any): ...
def get(self, *names: _Any, **metadata: _Any): ...
def trait_set(self, trait_change_notify: bool = ..., **traits: _Any): ...
def set(self, trait_change_notify: bool = ..., **traits: _Any): ...
def trait_setq(self, **traits: _Any): ...
def reset_traits(self, traits: Optional[_Any] = ..., **metadata: _Any): ...
def copyable_trait_names(self, **metadata: _Any): ...
Expand Down
23 changes: 1 addition & 22 deletions traits/tests/test_trait_get_set.py
Original file line number Diff line number Diff line change
Expand Up @@ -37,31 +37,10 @@ def test_trait_get(self):
values = obj.trait_get("string", "integer")
self.assertEqual(values, {"string": "foo", "integer": 0})

def test_trait_set_deprecated(self):
obj = TraitsObject()

with self.assertNotDeprecated():
obj.trait_set(integer=1)

with self.assertDeprecated():
obj.set(string="foo")

self.assertEqual(obj.string, "foo")
self.assertEqual(obj.integer, 1)

def test_trait_get_deprecated(self):
obj = TraitsObject()
obj.string = "foo"
obj.integer = 1

with self.assertNotDeprecated():
values = obj.trait_get("integer")
values = obj.trait_get("integer")
self.assertEqual(values, {"integer": 1})

with self.assertDeprecated():
values = obj.get("string")
self.assertEqual(values, {"string": "foo"})

def test_trait_set_quiet(self):
obj = TraitsObject()
obj.string = "foo"
Expand Down

0 comments on commit dcbefb4

Please sign in to comment.