← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1849980] Re: Do not inherit from built-in "dict"

 

Reviewed:  https://review.opendev.org/691874
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=4b3baeb15a8015e8ed9075e465cf97800189eef2
Submitter: Zuul
Branch:    master

commit 4b3baeb15a8015e8ed9075e465cf97800189eef2
Author: Rodolfo Alonso Hernandez <ralonsoh@xxxxxxxxxx>
Date:   Fri Oct 25 17:00:43 2019 +0000

    Do not inherit from built-in "dict"
    
    This is not recommended because some type methods are implemented not
    in Python but in C [1][2] and should not be overridden. Subclassing
    the built-in types directly, will yield non-obvious errors that are
    hard to debug, and identify at first glance [3].
    
    [1] http://www.kr41.net/2016/03-23-dont_inherit_python_builtin_dict_type.html
    [2] https://treyhunner.com/2019/04/why-you-shouldnt-inherit-from-list-and-dict-in-python/
    [3] https://medium.com/bynder-tech/using-collections-in-python-36129737b5a1
    
    Closes-Bug: #1849980
    
    Change-Id: I08c712ff1b093370cda2ce66b93e2a0709094fe1


** Changed in: neutron
       Status: In Progress => Fix Released

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1849980

Title:
  Do not inherit from built-in "dict"

Status in neutron:
  Fix Released

Bug description:
  agent.linux.dhcp.DictModel inherits from built-in "dict" type. This is
  not recommended because some type methods are implemented not in
  Python but in C [1][2] and should not be overridden. Subclassing the
  built-in types directly, will yield non-obvious errors that are hard
  to debug, and identify at first glance [3].

  
  [1] http://www.kr41.net/2016/03-23-dont_inherit_python_builtin_dict_type.html
  [2] https://treyhunner.com/2019/04/why-you-shouldnt-inherit-from-list-and-dict-in-python/
  [3] https://medium.com/bynder-tech/using-collections-in-python-36129737b5a1

To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1849980/+subscriptions


References