• 
      

    Support managing OAuth2 applications in the db

    Review Request #8630 — Created Jan. 17, 2017 and submitted

    Information

    Review Board
    release-3.0.x
    eb6e91b...

    Reviewers

    ReviewBoard now depends on django-oauth-toolkit to provide support as
    an OAuth2 identity provider for OAuth2 client applications. This first
    patch allows applications to be managed in the database by
    administrators. We use our own custom application model to allow
    applications to be limited to LocalSites, as well as for attaching
    extra data fields to them.

    This patch also provides help text for the application form fields, most
    of which were missing them.

    I was able to create an application in the database successfully.

    Description From Last Updated

    'django_reset' imported but unused

    reviewbotreviewbot

    'from settings_local import *' used; unable to detect undefined names

    reviewbotreviewbot

    'RelatedUserWidget' imported but unused

    reviewbotreviewbot

    'django_reset' imported but unused

    reviewbotreviewbot

    'from settings_local import *' used; unable to detect undefined names

    reviewbotreviewbot

    Do we need to limit the version here to ensure compatibility with Django 1.6.x?

    daviddavid

    Class docstring?

    daviddavid

    This is kind of hard to read. Can we do all the help text on the next line and indented …

    daviddavid

    d before o.

    daviddavid

    We should have _('Local Site') as the first argument to this to provide a localizable name in the admin.

    daviddavid

    Same here with localizable name.

    daviddavid

    'django_reset' imported but unused

    reviewbotreviewbot

    'from settings_local import *' used; unable to detect undefined names

    reviewbotreviewbot

    Col: 80 E501 line too long (88 > 79 characters)

    reviewbotreviewbot

    'override_feature_check' imported but unused

    reviewbotreviewbot

    Col: 80 E501 line too long (88 > 79 characters)

    reviewbotreviewbot

    Col: 80 E501 line too long (88 > 79 characters)

    reviewbotreviewbot

    Col: 43 W291 trailing whitespace

    reviewbotreviewbot

    Col: 80 E501 line too long (88 > 79 characters)

    reviewbotreviewbot

    Col: 80 E501 line too long (88 > 79 characters)

    reviewbotreviewbot

    Col: 1 W391 blank line at end of file

    reviewbotreviewbot

    'django_reset' imported but unused

    reviewbotreviewbot

    'from settings_local import *' used; unable to detect undefined names

    reviewbotreviewbot

    Col: 80 E501 line too long (88 > 79 characters)

    reviewbotreviewbot

    'django_reset' imported but unused

    reviewbotreviewbot

    'from settings_local import *' used; unable to detect undefined names

    reviewbotreviewbot

    Col: 80 E501 line too long (88 > 79 characters)

    reviewbotreviewbot

    Formatting has to happen outside of _()

    daviddavid

    As of Django 1.7, this needs to define either fields or excludes. To match the behavior you have here, use …

    daviddavid

    Please add a Meta here that defines app_label, db_table, and has localized versions of verbose_name and verbose_name_plural

    daviddavid

    'django_reset' imported but unused

    reviewbotreviewbot

    'from settings_local import *' used; unable to detect undefined names

    reviewbotreviewbot

    Should be indented 2 spaces.

    daviddavid

    This must also return self.cleaned_data.

    chipx86chipx86

    Col: 80 E501 line too long (88 > 79 characters)

    reviewbotreviewbot

    "but it" -> "but"

    chipx86chipx86

    "the are" -> "they are"

    chipx86chipx86

    "users' passwords"

    chipx86chipx86

    Rather than space-separated, can we include a textarea and make it line-separated?

    chipx86chipx86

    Probably want to say "unchecked" instead of "false", I would guess.

    chipx86chipx86

    "is a" -> "is"

    chipx86chipx86

    'django_reset' imported but unused

    reviewbotreviewbot

    'from settings_local import *' used; unable to detect undefined names

    reviewbotreviewbot

    Blank line between these.

    chipx86chipx86

    Should include the name of the block. Makes it easier to see in larger templates.

    chipx86chipx86

    Missing "Returns."

    chipx86chipx86

    Col: 80 E501 line too long (88 > 79 characters)

    reviewbotreviewbot

    You can wrap before the <. It's valid.

    chipx86chipx86

    Minor thing, but technically you should get cleaned_data from this, modify that, and return it directly, instead of using self.cleaned_data. …

    chipx86chipx86

    'django_reset' imported but unused

    reviewbotreviewbot

    'from settings_local import *' used; unable to detect undefined names

    reviewbotreviewbot

    File doc comment?

    daviddavid

    This should use ugettext instead of ugettext_lazy.

    daviddavid

    Localized field name?

    daviddavid

    Having random blank lines in the middle of this list when there aren't comments is weird. Can we clean that …

    daviddavid

    'django_reset' imported but unused

    reviewbotreviewbot

    'from settings_local import *' used; unable to detect undefined names

    reviewbotreviewbot

    Blank line after this.

    daviddavid

    'django_reset' imported but unused

    reviewbotreviewbot

    'from settings_local import *' used; unable to detect undefined names

    reviewbotreviewbot
    reviewbot
    1. Tool: PEP8 Style Checker
      Processed Files:
          reviewboard/dependencies.py
          reviewboard/oauth/admin.py
          reviewboard/oauth/models.py
          reviewboard/settings.py
          reviewboard/oauth/forms.py
      
      Ignored Files:
          reviewboard/oauth/__init__.py
      
      
      
      Tool: Pyflakes
      Processed Files:
          reviewboard/dependencies.py
          reviewboard/oauth/admin.py
          reviewboard/oauth/models.py
          reviewboard/settings.py
          reviewboard/oauth/forms.py
      
      Ignored Files:
          reviewboard/oauth/__init__.py
      
      
    2. reviewboard/settings.py (Diff revision 1)
       
       
      Show all issues
       'django_reset' imported but unused
      
    3. reviewboard/settings.py (Diff revision 1)
       
       
      Show all issues
       'from settings_local import *' used; unable to detect undefined names
      
    4. 
        
    brennie
    reviewbot
    1. Tool: PEP8 Style Checker
      Processed Files:
          reviewboard/dependencies.py
          reviewboard/oauth/admin.py
          reviewboard/oauth/models.py
          reviewboard/settings.py
          reviewboard/oauth/forms.py
      
      Ignored Files:
          reviewboard/oauth/__init__.py
      
      
      
      Tool: Pyflakes
      Processed Files:
          reviewboard/dependencies.py
          reviewboard/oauth/admin.py
          reviewboard/oauth/models.py
          reviewboard/settings.py
          reviewboard/oauth/forms.py
      
      Ignored Files:
          reviewboard/oauth/__init__.py
      
      
    2. reviewboard/oauth/forms.py (Diff revision 2)
       
       
      Show all issues
       'RelatedUserWidget' imported but unused
      
    3. reviewboard/settings.py (Diff revision 2)
       
       
      Show all issues
       'django_reset' imported but unused
      
    4. reviewboard/settings.py (Diff revision 2)
       
       
      Show all issues
       'from settings_local import *' used; unable to detect undefined names
      
    5. 
        
    brennie
    reviewbot
    1. Tool: Pyflakes
      Processed Files:
          reviewboard/dependencies.py
          reviewboard/oauth/admin.py
          reviewboard/oauth/models.py
          reviewboard/settings.py
          reviewboard/oauth/forms.py
      
      Ignored Files:
          reviewboard/oauth/__init__.py
      
      
      
      Tool: PEP8 Style Checker
      Processed Files:
          reviewboard/dependencies.py
          reviewboard/oauth/admin.py
          reviewboard/oauth/models.py
          reviewboard/settings.py
          reviewboard/oauth/forms.py
      
      Ignored Files:
          reviewboard/oauth/__init__.py
      
      
    2. reviewboard/settings.py (Diff revision 3)
       
       
      Show all issues
       'django_reset' imported but unused
      
    3. reviewboard/settings.py (Diff revision 3)
       
       
      Show all issues
       'from settings_local import *' used; unable to detect undefined names
      
    4. 
        
    david
    1. 
        
    2. reviewboard/dependencies.py (Diff revision 3)
       
       
      Show all issues

      Do we need to limit the version here to ensure compatibility with Django 1.6.x?

      1. Indeed, we can't even use this package -- we have to use an older one.

    3. reviewboard/oauth/admin.py (Diff revision 3)
       
       
      Show all issues

      Class docstring?

    4. reviewboard/oauth/forms.py (Diff revision 3)
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
      Show all issues

      This is kind of hard to read. Can we do all the help text on the next line and indented 4 spaces?

    5. reviewboard/oauth/models.py (Diff revision 3)
       
       
       
       
       
      Show all issues

      d before o.

    6. reviewboard/oauth/models.py (Diff revision 3)
       
       
      Show all issues

      We should have _('Local Site') as the first argument to this to provide a localizable name in the admin.

    7. reviewboard/oauth/models.py (Diff revision 3)
       
       
      Show all issues

      Same here with localizable name.

    8. 
        
    brennie
    reviewbot
    1. Tool: Pyflakes
      Processed Files:
          reviewboard/oauth/forms.py
          reviewboard/dependencies.py
          reviewboard/oauth/admin.py
          reviewboard/oauth/models.py
          reviewboard/oauth/features.py
          reviewboard/features/checkers.py
          reviewboard/oauth/tests.py
      
      Ignored Files:
          reviewboard/templates/admin/oauth/application/change_list.html
          reviewboard/static/rb/css/pages/admin.less
      
      
      
      Tool: PEP8 Style Checker
      Processed Files:
          reviewboard/oauth/forms.py
          reviewboard/dependencies.py
          reviewboard/oauth/admin.py
          reviewboard/oauth/models.py
          reviewboard/oauth/features.py
          reviewboard/features/checkers.py
          reviewboard/oauth/tests.py
      
      Ignored Files:
          reviewboard/templates/admin/oauth/application/change_list.html
          reviewboard/static/rb/css/pages/admin.less
      
      
    2. reviewboard/oauth/forms.py (Diff revision 4)
       
       
      Show all issues
      Col: 80
       E501 line too long (88 > 79 characters)
      
    3. reviewboard/oauth/tests.py (Diff revision 4)
       
       
      Show all issues
       'override_feature_check' imported but unused
      
    4. 
        
    brennie
    reviewbot
    1. Tool: PEP8 Style Checker
      Processed Files:
          reviewboard/oauth/forms.py
          reviewboard/dependencies.py
          reviewboard/oauth/admin.py
          reviewboard/oauth/models.py
          reviewboard/oauth/features.py
          reviewboard/features/checkers.py
      
      Ignored Files:
          reviewboard/templates/admin/oauth/application/change_list.html
          reviewboard/static/rb/css/pages/admin.less
      
      
      
      Tool: Pyflakes
      Processed Files:
          reviewboard/oauth/forms.py
          reviewboard/dependencies.py
          reviewboard/oauth/admin.py
          reviewboard/oauth/models.py
          reviewboard/oauth/features.py
          reviewboard/features/checkers.py
      
      Ignored Files:
          reviewboard/templates/admin/oauth/application/change_list.html
          reviewboard/static/rb/css/pages/admin.less
      
      
    2. reviewboard/oauth/forms.py (Diff revision 5)
       
       
      Show all issues
      Col: 80
       E501 line too long (88 > 79 characters)
      
    3. 
        
    brennie
    reviewbot
    1. Tool: PEP8 Style Checker
      Processed Files:
          reviewboard/oauth/forms.py
          reviewboard/dependencies.py
          reviewboard/oauth/admin.py
          reviewboard/oauth/models.py
          reviewboard/oauth/features.py
          reviewboard/features/checkers.py
      
      Ignored Files:
          reviewboard/templates/admin/oauth/application/change_list.html
          reviewboard/static/rb/css/pages/admin.less
      
      
      
      Tool: Pyflakes
      Processed Files:
          reviewboard/oauth/forms.py
          reviewboard/dependencies.py
          reviewboard/oauth/admin.py
          reviewboard/oauth/models.py
          reviewboard/oauth/features.py
          reviewboard/features/checkers.py
      
      Ignored Files:
          reviewboard/templates/admin/oauth/application/change_list.html
          reviewboard/static/rb/css/pages/admin.less
      
      
    2. reviewboard/oauth/forms.py (Diff revision 6)
       
       
      Show all issues
      Col: 80
       E501 line too long (88 > 79 characters)
      
    3. reviewboard/oauth/models.py (Diff revision 6)
       
       
      Show all issues
      Col: 43
       W291 trailing whitespace
      
    4. 
        
    brennie
    reviewbot
    1. Tool: Pyflakes
      Processed Files:
          reviewboard/oauth/forms.py
          reviewboard/dependencies.py
          reviewboard/oauth/admin.py
          reviewboard/oauth/models.py
          reviewboard/oauth/features.py
          reviewboard/features/checkers.py
      
      Ignored Files:
          reviewboard/templates/admin/oauth/application/change_list.html
          reviewboard/static/rb/css/pages/admin.less
      
      
      
      Tool: PEP8 Style Checker
      Processed Files:
          reviewboard/oauth/forms.py
          reviewboard/dependencies.py
          reviewboard/oauth/admin.py
          reviewboard/oauth/models.py
          reviewboard/oauth/features.py
          reviewboard/features/checkers.py
      
      Ignored Files:
          reviewboard/templates/admin/oauth/application/change_list.html
          reviewboard/static/rb/css/pages/admin.less
      
      
    2. reviewboard/oauth/forms.py (Diff revision 7)
       
       
      Show all issues
      Col: 80
       E501 line too long (88 > 79 characters)
      
    3. 
        
    brennie
    reviewbot
    1. Tool: Pyflakes
      Processed Files:
          reviewboard/settings.py
          reviewboard/oauth/forms.py
          reviewboard/dependencies.py
          reviewboard/oauth/admin.py
          reviewboard/oauth/models.py
          reviewboard/oauth/features.py
          reviewboard/features/checkers.py
      
      Ignored Files:
          reviewboard/templates/admin/oauth/application/change_list.html
          reviewboard/oauth/__init__.py
          reviewboard/static/rb/css/pages/admin.less
      
      
      
      Tool: PEP8 Style Checker
      Processed Files:
          reviewboard/settings.py
          reviewboard/oauth/forms.py
          reviewboard/dependencies.py
          reviewboard/oauth/admin.py
          reviewboard/oauth/models.py
          reviewboard/oauth/features.py
          reviewboard/features/checkers.py
      
      Ignored Files:
          reviewboard/templates/admin/oauth/application/change_list.html
          reviewboard/oauth/__init__.py
          reviewboard/static/rb/css/pages/admin.less
      
      
    2. reviewboard/oauth/forms.py (Diff revision 8)
       
       
      Show all issues
      Col: 80
       E501 line too long (88 > 79 characters)
      
    3. reviewboard/oauth/models.py (Diff revision 8)
       
       
      Show all issues
      Col: 1
       W391 blank line at end of file
      
    4. reviewboard/settings.py (Diff revision 8)
       
       
      Show all issues
       'django_reset' imported but unused
      
    5. reviewboard/settings.py (Diff revision 8)
       
       
      Show all issues
       'from settings_local import *' used; unable to detect undefined names
      
    6. 
        
    brennie
    reviewbot
    1. Tool: PEP8 Style Checker
      Processed Files:
          reviewboard/settings.py
          reviewboard/oauth/forms.py
          reviewboard/dependencies.py
          reviewboard/oauth/admin.py
          reviewboard/oauth/models.py
          reviewboard/oauth/features.py
          reviewboard/features/checkers.py
      
      Ignored Files:
          reviewboard/templates/admin/oauth/application/change_list.html
          reviewboard/oauth/__init__.py
          reviewboard/static/rb/css/pages/admin.less
      
      
      
      Tool: Pyflakes
      Processed Files:
          reviewboard/settings.py
          reviewboard/oauth/forms.py
          reviewboard/dependencies.py
          reviewboard/oauth/admin.py
          reviewboard/oauth/models.py
          reviewboard/oauth/features.py
          reviewboard/features/checkers.py
      
      Ignored Files:
          reviewboard/templates/admin/oauth/application/change_list.html
          reviewboard/oauth/__init__.py
          reviewboard/static/rb/css/pages/admin.less
      
      
    2. reviewboard/oauth/forms.py (Diff revision 9)
       
       
      Show all issues
      Col: 80
       E501 line too long (88 > 79 characters)
      
    3. reviewboard/settings.py (Diff revision 9)
       
       
      Show all issues
       'django_reset' imported but unused
      
    4. reviewboard/settings.py (Diff revision 9)
       
       
      Show all issues
       'from settings_local import *' used; unable to detect undefined names
      
    5. 
        
    brennie
    reviewbot
    1. Tool: Pyflakes
      Processed Files:
          reviewboard/settings.py
          reviewboard/dependencies.py
          reviewboard/oauth/admin.py
          reviewboard/oauth/models.py
          reviewboard/oauth/features.py
          reviewboard/oauth/forms.py
      
      Ignored Files:
          reviewboard/templates/admin/oauth/application/change_list.html
          reviewboard/oauth/__init__.py
          reviewboard/static/rb/css/pages/admin.less
      
      
      
      Tool: PEP8 Style Checker
      Processed Files:
          reviewboard/settings.py
          reviewboard/dependencies.py
          reviewboard/oauth/admin.py
          reviewboard/oauth/models.py
          reviewboard/oauth/features.py
          reviewboard/oauth/forms.py
      
      Ignored Files:
          reviewboard/templates/admin/oauth/application/change_list.html
          reviewboard/oauth/__init__.py
          reviewboard/static/rb/css/pages/admin.less
      
      
    2. reviewboard/oauth/forms.py (Diff revision 10)
       
       
      Show all issues
      Col: 80
       E501 line too long (88 > 79 characters)
      
    3. reviewboard/settings.py (Diff revision 10)
       
       
      Show all issues
       'django_reset' imported but unused
      
    4. reviewboard/settings.py (Diff revision 10)
       
       
      Show all issues
       'from settings_local import *' used; unable to detect undefined names
      
    5. 
        
    david
    1. Because we're introducing a new app, we should simultaneously introduce an AppConfig for django 1.7+. The apps in djblets 0.10 have examples.

    2. reviewboard/oauth/forms.py (Diff revision 10)
       
       
       
       
       
       
      Show all issues

      Formatting has to happen outside of _()

    3. reviewboard/oauth/forms.py (Diff revision 10)
       
       
      Show all issues

      As of Django 1.7, this needs to define either fields or excludes. To match the behavior you have here, use fields = '__all__'

    4. reviewboard/oauth/models.py (Diff revision 10)
       
       
      Show all issues

      Please add a Meta here that defines app_label, db_table, and has localized versions of verbose_name and verbose_name_plural

    5. reviewboard/static/rb/css/pages/admin.less (Diff revision 10)
       
       
       
       
       
      Show all issues

      Should be indented 2 spaces.

    6. 
        
    brennie
    reviewbot
    1. Tool: PEP8 Style Checker
      Processed Files:
          reviewboard/settings.py
          reviewboard/dependencies.py
          reviewboard/oauth/__init__.py
          reviewboard/oauth/models.py
          reviewboard/oauth/features.py
          reviewboard/oauth/forms.py
          reviewboard/oauth/admin.py
      
      Ignored Files:
          reviewboard/templates/admin/oauth/application/change_list.html
          reviewboard/static/rb/css/pages/admin.less
      
      
      
      Tool: Pyflakes
      Processed Files:
          reviewboard/settings.py
          reviewboard/dependencies.py
          reviewboard/oauth/__init__.py
          reviewboard/oauth/models.py
          reviewboard/oauth/features.py
          reviewboard/oauth/forms.py
          reviewboard/oauth/admin.py
      
      Ignored Files:
          reviewboard/templates/admin/oauth/application/change_list.html
          reviewboard/static/rb/css/pages/admin.less
      
      
    2. reviewboard/oauth/forms.py (Diff revision 11)
       
       
      Show all issues
      Col: 80
       E501 line too long (88 > 79 characters)
      
    3. reviewboard/settings.py (Diff revision 11)
       
       
      Show all issues
       'django_reset' imported but unused
      
    4. reviewboard/settings.py (Diff revision 11)
       
       
      Show all issues
       'from settings_local import *' used; unable to detect undefined names
      
    5. 
        
    chipx86
    1. This looks great, Barret! Thanks, and sorry it took so long to get around to it.

      My comments just concern typos and very trivial things.

    2. reviewboard/oauth/forms.py (Diff revision 11)
       
       
      Show all issues

      This must also return self.cleaned_data.

    3. reviewboard/oauth/forms.py (Diff revision 11)
       
       
      Show all issues

      "but it" -> "but"

    4. reviewboard/oauth/forms.py (Diff revision 11)
       
       
      Show all issues

      "the are" -> "they are"

    5. reviewboard/oauth/forms.py (Diff revision 11)
       
       
      Show all issues

      "users' passwords"

    6. reviewboard/oauth/forms.py (Diff revision 11)
       
       
       
       
      Show all issues

      Rather than space-separated, can we include a textarea and make it line-separated?

    7. reviewboard/oauth/forms.py (Diff revision 11)
       
       
      Show all issues

      Probably want to say "unchecked" instead of "false", I would guess.

    8. reviewboard/oauth/models.py (Diff revision 11)
       
       
      Show all issues

      "is a" -> "is"

    9. Show all issues

      Blank line between these.

    10. Show all issues

      Should include the name of the block. Makes it easier to see in larger templates.

    11. 
        
    brennie
    reviewbot
    1. Tool: PEP8 Style Checker
      Processed Files:
          reviewboard/settings.py
          reviewboard/dependencies.py
          reviewboard/oauth/__init__.py
          reviewboard/oauth/models.py
          reviewboard/oauth/features.py
          reviewboard/oauth/forms.py
          reviewboard/oauth/admin.py
          reviewboard/oauth/apps.py
      
      
      
      Tool: Pyflakes
      Processed Files:
          reviewboard/settings.py
          reviewboard/dependencies.py
          reviewboard/oauth/__init__.py
          reviewboard/oauth/models.py
          reviewboard/oauth/features.py
          reviewboard/oauth/forms.py
          reviewboard/oauth/admin.py
          reviewboard/oauth/apps.py
      
      
    2. reviewboard/oauth/forms.py (Diff revision 12)
       
       
      Show all issues
      Col: 80
       E501 line too long (88 > 79 characters)
      
    3. reviewboard/settings.py (Diff revision 12)
       
       
      Show all issues
       'django_reset' imported but unused
      
    4. reviewboard/settings.py (Diff revision 12)
       
       
      Show all issues
       'from settings_local import *' used; unable to detect undefined names
      
    5. 
        
    chipx86
    1. Trivial stuff. I'm happy after this.

    2. reviewboard/oauth/forms.py (Diff revision 12)
       
       
       
      Show all issues

      Missing "Returns."

    3. reviewboard/oauth/forms.py (Diff revision 12)
       
       
      Show all issues

      You can wrap before the <. It's valid.

    4. reviewboard/oauth/forms.py (Diff revision 12)
       
       
      Show all issues

      Minor thing, but technically you should get cleaned_data from this, modify that, and return it directly, instead of using self.cleaned_data. In practice, it doesn't matter really, since it's set by the base Form.clean(), but worth doing.

    5. 
        
    brennie
    reviewbot
    1. Tool: Pyflakes
      Processed Files:
          reviewboard/settings.py
          reviewboard/dependencies.py
          reviewboard/oauth/__init__.py
          reviewboard/oauth/models.py
          reviewboard/oauth/features.py
          reviewboard/oauth/forms.py
          reviewboard/oauth/admin.py
          reviewboard/oauth/apps.py
      
      
      
      Tool: PEP8 Style Checker
      Processed Files:
          reviewboard/settings.py
          reviewboard/dependencies.py
          reviewboard/oauth/__init__.py
          reviewboard/oauth/models.py
          reviewboard/oauth/features.py
          reviewboard/oauth/forms.py
          reviewboard/oauth/admin.py
          reviewboard/oauth/apps.py
      
      
    2. reviewboard/settings.py (Diff revision 13)
       
       
      Show all issues
       'django_reset' imported but unused
      
    3. reviewboard/settings.py (Diff revision 13)
       
       
      Show all issues
       'from settings_local import *' used; unable to detect undefined names
      
    4. 
        
    david
    1. 
        
    2. reviewboard/oauth/apps.py (Diff revision 13)
       
       
      Show all issues

      File doc comment?

    3. reviewboard/oauth/forms.py (Diff revision 13)
       
       
       
      Show all issues

      This should use ugettext instead of ugettext_lazy.

    4. reviewboard/oauth/models.py (Diff revision 13)
       
       
      Show all issues

      Localized field name?

    5. reviewboard/settings.py (Diff revision 13)
       
       
       
       
      Show all issues

      Having random blank lines in the middle of this list when there aren't comments is weird. Can we clean that up?

    6. 
        
    brennie
    reviewbot
    1. Tool: Pyflakes
      Processed Files:
          reviewboard/settings.py
          reviewboard/dependencies.py
          reviewboard/oauth/__init__.py
          reviewboard/oauth/models.py
          reviewboard/oauth/features.py
          reviewboard/oauth/forms.py
          reviewboard/oauth/admin.py
          reviewboard/oauth/apps.py
      
      
      
      Tool: PEP8 Style Checker
      Processed Files:
          reviewboard/settings.py
          reviewboard/dependencies.py
          reviewboard/oauth/__init__.py
          reviewboard/oauth/models.py
          reviewboard/oauth/features.py
          reviewboard/oauth/forms.py
          reviewboard/oauth/admin.py
          reviewboard/oauth/apps.py
      
      
    2. reviewboard/settings.py (Diff revision 14)
       
       
      Show all issues
       'django_reset' imported but unused
      
    3. reviewboard/settings.py (Diff revision 14)
       
       
      Show all issues
       'from settings_local import *' used; unable to detect undefined names
      
    4. 
        
    david
    1. 
        
    2. reviewboard/oauth/apps.py (Diff revision 14)
       
       
      Show all issues

      Blank line after this.

    3. 
        
    brennie
    Review request changed
    Status:
    Completed
    Change Summary:
    Pushed to release-3.0.x (9826566)