BIND 10 #905: TSIG: complete python library update

BIND 10 Development do-not-reply at isc.org
Thu May 12 16:21:04 UTC 2011


#905: TSIG: complete python library update
-------------------------------------+-------------------------------------
                   Reporter:         |                 Owner:  jinmei
  jinmei                             |                Status:  reviewing
                       Type:         |             Milestone:
  enhancement                        |  Sprint-20110517
                   Priority:  major  |            Resolution:
                  Component:         |             Sensitive:  0
  DNSPacket API                      |           Sub-Project:  DNS
                   Keywords:         |  Estimated Difficulty:  2.0
            Defect Severity:  N/A    |           Total Hours:  0
Feature Depending on Ticket:         |
        Add Hours to Ticket:  0      |
                  Internal?:  0      |
-------------------------------------+-------------------------------------
Changes (by stephen):

 * owner:  stephen => jinmei


Comment:

 Reviewing differences between commit
 e93f054a2d0cf1c21d00112ccaa93d5d2432a677 (where branch for #893 was merged
 immediately after creating the branch for #905) and commit
 9eddc07cd32918f3b8e9ebd114d9c8f8f39a359b (latest commit).

 '''src/lib/dns/python/tsigerror_python.cc'''[[BR]]
 Would help if there was a little more documentation on the class; for
 example, it would be helpful to highlight the different constructors (one
 with an integer and the copy constructor).

 '''src/lib/util/python/pycppwrapper_util.h'''[[BR]]
 Very clever: it should simplify the creation of Python interfaces.

 '''Other'''

 > This approach requires careful consideration of inclusion ordering,
 which is becoming a difficult task as the binding gets bigger.
 Why not just include #ifdef sentinels in the .cc files and include them in
 one another as required?  Providing there are no loops, the inclusion
 ordering won't matter.

 > It's also error prone because we sometimes use 'using namespace' in .cc
 files, but with this approach this means doing so before including some
 other header files, which is generally considered a bad practice.
 Maybe, but as there are only a few different namespaces being "used" (I
 found six, including "std"), why not just put them at the head of the
 pydnspp.cc and be done with it.

 An alternative would be to put the appropriate "using" declaration within
 some of the longer functions (so limiting the scope to just that function)
 and use the namespace in type declarations elsewhere.

-- 
Ticket URL: <http://bind10.isc.org/ticket/905#comment:8>
BIND 10 Development <http://bind10.isc.org>
BIND 10 Development


More information about the bind10-tickets mailing list