(Context: https://review.openstack.org/#/c/117418/)

I'm looking for some rough consensus on what naming conventions we want for 
unused variables in Neutron, and across the larger OpenStack python codebase 
since there's no reason for Neutron to innovate here.

As far as I can see, there are two cases:

1.  The "I just don't care" variable

Eg:    _, _, filename = path.rpartition('/')

In python this is very commonly '_', but this conflicts with the gettext 
builtin so we should avoid it in OpenStack.

Possible candidates include:

a.  'x'
b. '__'  (double-underscore) 
c. No convention

2.  "I know it is unused, but the name still serves as documentation"

Note this turns up as two cases: as a local, and as a function parameter.

Eg:   out, _err = execute('df', path)

Eg:   def makefile(self, _mode, _other):
            return self._buffer

I deliberately chose that second example to highlight that the leading-
underscore convention collides with its use for private properties.

Possible candidates include:

a. _foo   (leading-underscore, note collides with private properties)
b. unused_foo   (suggested in the Google python styleguide)
c. NOQA_foo   (as suggested in c/117418)
d. No convention  (including not indicating that variables are known-unused)

As with all style discussions, everyone feels irrationally attached to their 
favourite, but the important bit is to be consistent to aid readability  (and 
in this case, also to help the mechanical code checkers).

Vote / Discuss / Suggest additional alternatives.

 - Gus

OpenStack-dev mailing list

Reply via email to