From c11891f6000f9fd55eea81c37be6904e2d4055c4 Mon Sep 17 00:00:00 2001 From: Pierre-Yves Nicolas Date: Tue, 26 Jan 2021 13:44:03 +0100 Subject: [PATCH] SONARPY-816 S1720 should not raise on empty __init__.py --- .../test/resources/expected/python-S1720.json | 699 ------------------ .../python/checks/MissingDocstringCheck.java | 9 +- .../checks/MissingDocstringCheckTest.java | 11 +- .../{ => missing_docstring}/emptyModule.py | 0 .../missing_docstring/empty_init/__init__.py | 0 .../missingDocstring.py | 0 .../missingDocstringAtModuleLevel.py | 0 .../nonempty_init/__init__.py | 2 + 8 files changed, 18 insertions(+), 703 deletions(-) rename python-checks/src/test/resources/checks/{ => missing_docstring}/emptyModule.py (100%) create mode 100644 python-checks/src/test/resources/checks/missing_docstring/empty_init/__init__.py rename python-checks/src/test/resources/checks/{ => missing_docstring}/missingDocstring.py (100%) rename python-checks/src/test/resources/checks/{ => missing_docstring}/missingDocstringAtModuleLevel.py (100%) create mode 100644 python-checks/src/test/resources/checks/missing_docstring/nonempty_init/__init__.py diff --git a/its/ruling/src/test/resources/expected/python-S1720.json b/its/ruling/src/test/resources/expected/python-S1720.json index 26adc313fd..16ace758b7 100644 --- a/its/ruling/src/test/resources/expected/python-S1720.json +++ b/its/ruling/src/test/resources/expected/python-S1720.json @@ -520,9 +520,6 @@ 594, 700, ], -'project:buildbot-0.8.6p1/buildbot/db/__init__.py':[ -0, -], 'project:buildbot-0.8.6p1/buildbot/db/base.py':[ 0, 16, @@ -1412,9 +1409,6 @@ 154, 216, ], -'project:buildbot-0.8.6p1/buildbot/status/web/hooks/__init__.py':[ -0, -], 'project:buildbot-0.8.6p1/buildbot/status/web/hooks/base.py':[ 0, ], @@ -3912,423 +3906,213 @@ 'project:django-2.2.3/django/conf/global_settings.py':[ 9, ], -'project:django-2.2.3/django/conf/locale/ar/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/ar/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/az/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/az/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/bg/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/bg/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/bn/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/bn/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/bs/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/bs/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/ca/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/ca/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/cs/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/cs/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/cy/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/cy/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/da/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/da/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/de/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/de/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/de_CH/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/de_CH/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/el/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/el/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/en/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/en/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/en_AU/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/en_AU/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/en_GB/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/en_GB/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/eo/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/eo/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/es/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/es/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/es_AR/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/es_AR/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/es_CO/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/es_CO/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/es_MX/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/es_MX/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/es_NI/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/es_NI/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/es_PR/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/es_PR/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/et/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/et/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/eu/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/eu/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/fa/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/fa/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/fi/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/fi/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/fr/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/fr/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/fy/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/fy/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/ga/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/ga/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/gd/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/gd/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/gl/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/gl/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/he/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/he/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/hi/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/hi/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/hr/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/hr/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/hu/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/hu/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/id/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/id/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/is/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/is/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/it/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/it/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/ja/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/ja/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/ka/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/ka/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/km/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/km/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/kn/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/kn/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/ko/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/ko/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/lt/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/lt/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/lv/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/lv/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/mk/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/mk/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/ml/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/ml/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/mn/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/mn/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/nb/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/nb/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/nl/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/nl/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/nn/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/nn/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/pl/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/pl/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/pt/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/pt/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/pt_BR/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/pt_BR/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/ro/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/ro/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/ru/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/ru/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/sk/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/sk/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/sl/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/sl/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/sq/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/sq/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/sr/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/sr/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/sr_Latn/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/sr_Latn/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/sv/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/sv/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/ta/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/ta/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/te/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/te/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/th/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/th/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/tr/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/tr/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/uk/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/uk/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/vi/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/vi/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/zh_Hans/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/zh_Hans/formats.py':[ 0, ], -'project:django-2.2.3/django/conf/locale/zh_Hant/__init__.py':[ -0, -], 'project:django-2.2.3/django/conf/locale/zh_Hant/formats.py':[ 0, ], @@ -4342,9 +4126,6 @@ 'project:django-2.2.3/django/conf/urls/static.py':[ 0, ], -'project:django-2.2.3/django/contrib/__init__.py':[ -0, -], 'project:django-2.2.3/django/contrib/admin/__init__.py':[ 0, 25, @@ -4410,9 +4191,6 @@ 0, 4, ], -'project:django-2.2.3/django/contrib/admin/migrations/__init__.py':[ -0, -], 'project:django-2.2.3/django/contrib/admin/models.py':[ 0, 23, @@ -4440,9 +4218,6 @@ 240, 527, ], -'project:django-2.2.3/django/contrib/admin/templatetags/__init__.py':[ -0, -], 'project:django-2.2.3/django/contrib/admin/templatetags/admin_list.py':[ 0, 96, @@ -4495,9 +4270,6 @@ 424, 428, ], -'project:django-2.2.3/django/contrib/admin/views/__init__.py':[ -0, -], 'project:django-2.2.3/django/contrib/admin/views/autocomplete.py':[ 0, ], @@ -4608,9 +4380,6 @@ 135, 232, ], -'project:django-2.2.3/django/contrib/auth/handlers/__init__.py':[ -0, -], 'project:django-2.2.3/django/contrib/auth/handlers/modwsgi.py':[ 0, ], @@ -4680,9 +4449,6 @@ 0, 61, ], -'project:django-2.2.3/django/contrib/auth/migrations/__init__.py':[ -0, -], 'project:django-2.2.3/django/contrib/auth/mixins.py':[ 0, ], @@ -4776,9 +4542,6 @@ 4, 14, ], -'project:django-2.2.3/django/contrib/contenttypes/migrations/__init__.py':[ -0, -], 'project:django-2.2.3/django/contrib/contenttypes/models.py':[ 0, 8, @@ -4812,9 +4575,6 @@ 0, 4, ], -'project:django-2.2.3/django/contrib/flatpages/migrations/__init__.py':[ -0, -], 'project:django-2.2.3/django/contrib/flatpages/models.py':[ 0, 8, @@ -4824,9 +4584,6 @@ 0, 6, ], -'project:django-2.2.3/django/contrib/flatpages/templatetags/__init__.py':[ -0, -], 'project:django-2.2.3/django/contrib/flatpages/templatetags/flatpages.py':[ 0, 9, @@ -4857,15 +4614,6 @@ 0, 6, ], -'project:django-2.2.3/django/contrib/gis/db/__init__.py':[ -0, -], -'project:django-2.2.3/django/contrib/gis/db/backends/__init__.py':[ -0, -], -'project:django-2.2.3/django/contrib/gis/db/backends/base/__init__.py':[ -0, -], 'project:django-2.2.3/django/contrib/gis/db/backends/base/adapter.py':[ 0, ], @@ -4881,9 +4629,6 @@ 10, 86, ], -'project:django-2.2.3/django/contrib/gis/db/backends/mysql/__init__.py':[ -0, -], 'project:django-2.2.3/django/contrib/gis/db/backends/mysql/base.py':[ 0, 11, @@ -4905,9 +4650,6 @@ 0, 10, ], -'project:django-2.2.3/django/contrib/gis/db/backends/oracle/__init__.py':[ -0, -], 'project:django-2.2.3/django/contrib/gis/db/backends/oracle/adapter.py':[ 0, 7, @@ -4940,9 +4682,6 @@ 0, 6, ], -'project:django-2.2.3/django/contrib/gis/db/backends/postgis/__init__.py':[ -0, -], 'project:django-2.2.3/django/contrib/gis/db/backends/postgis/adapter.py':[ 11, ], @@ -4977,9 +4716,6 @@ 0, 4, ], -'project:django-2.2.3/django/contrib/gis/db/backends/spatialite/__init__.py':[ -0, -], 'project:django-2.2.3/django/contrib/gis/db/backends/spatialite/adapter.py':[ 0, ], @@ -5180,9 +4916,6 @@ 109, 116, ], -'project:django-2.2.3/django/contrib/gis/gdal/prototypes/__init__.py':[ -0, -], 'project:django-2.2.3/django/contrib/gis/gdal/prototypes/errcheck.py':[ 96, ], @@ -5200,9 +4933,6 @@ 'project:django-2.2.3/django/contrib/gis/gdal/prototypes/srs.py':[ 0, ], -'project:django-2.2.3/django/contrib/gis/gdal/raster/__init__.py':[ -0, -], 'project:django-2.2.3/django/contrib/gis/gdal/raster/band.py':[ 0, 236, @@ -5333,9 +5063,6 @@ 'project:django-2.2.3/django/contrib/gis/ptr.py':[ 0, ], -'project:django-2.2.3/django/contrib/gis/serializers/__init__.py':[ -0, -], 'project:django-2.2.3/django/contrib/gis/serializers/geojson.py':[ 0, 65, @@ -5379,9 +5106,6 @@ 0, 5, ], -'project:django-2.2.3/django/contrib/humanize/templatetags/__init__.py':[ -0, -], 'project:django-2.2.3/django/contrib/humanize/templatetags/humanize.py':[ 0, 218, @@ -5662,9 +5386,6 @@ 0, 4, ], -'project:django-2.2.3/django/contrib/redirects/migrations/__init__.py':[ -0, -], 'project:django-2.2.3/django/contrib/redirects/models.py':[ 0, 6, @@ -5677,9 +5398,6 @@ 0, 5, ], -'project:django-2.2.3/django/contrib/sessions/backends/__init__.py':[ -0, -], 'project:django-2.2.3/django/contrib/sessions/backends/base.py':[ 0, ], @@ -5716,9 +5434,6 @@ 0, 5, ], -'project:django-2.2.3/django/contrib/sessions/migrations/__init__.py':[ -0, -], 'project:django-2.2.3/django/contrib/sessions/models.py':[ 0, 6, @@ -5777,9 +5492,6 @@ 0, 5, ], -'project:django-2.2.3/django/contrib/sites/migrations/__init__.py':[ -0, -], 'project:django-2.2.3/django/contrib/sites/models.py':[ 0, 25, @@ -5828,9 +5540,6 @@ 460, 496, ], -'project:django-2.2.3/django/contrib/staticfiles/templatetags/__init__.py':[ -0, -], 'project:django-2.2.3/django/contrib/staticfiles/templatetags/staticfiles.py':[ 0, 12, @@ -5858,16 +5567,10 @@ 25, 29, ], -'project:django-2.2.3/django/core/__init__.py':[ -0, -], 'project:django-2.2.3/django/core/cache/__init__.py':[ 32, 116, ], -'project:django-2.2.3/django/core/cache/backends/__init__.py':[ -0, -], 'project:django-2.2.3/django/core/cache/backends/base.py':[ 9, 13, @@ -5901,9 +5604,6 @@ 0, 13, ], -'project:django-2.2.3/django/core/checks/compatibility/__init__.py':[ -0, -], 'project:django-2.2.3/django/core/checks/database.py':[ 0, 7, @@ -5932,9 +5632,6 @@ 22, 44, ], -'project:django-2.2.3/django/core/checks/security/__init__.py':[ -0, -], 'project:django-2.2.3/django/core/checks/security/base.py':[ 0, 110, @@ -6010,9 +5707,6 @@ 'project:django-2.2.3/django/core/files/utils.py':[ 0, ], -'project:django-2.2.3/django/core/handlers/__init__.py':[ -0, -], 'project:django-2.2.3/django/core/handlers/base.py':[ 0, 17, @@ -6028,9 +5722,6 @@ 66, 130, ], -'project:django-2.2.3/django/core/mail/backends/__init__.py':[ -0, -], 'project:django-2.2.3/django/core/mail/backends/console.py':[ 10, ], @@ -6218,9 +5909,6 @@ 280, 291, ], -'project:django-2.2.3/django/core/servers/__init__.py':[ -0, -], 'project:django-2.2.3/django/core/servers/basehttp.py':[ 53, 81, @@ -6266,12 +5954,6 @@ 45, 55, ], -'project:django-2.2.3/django/db/backends/__init__.py':[ -0, -], -'project:django-2.2.3/django/db/backends/base/__init__.py':[ -0, -], 'project:django-2.2.3/django/db/backends/base/base.py':[ 0, ], @@ -6309,9 +5991,6 @@ 106, 112, ], -'project:django-2.2.3/django/db/backends/dummy/__init__.py':[ -0, -], 'project:django-2.2.3/django/db/backends/dummy/base.py':[ 19, 25, @@ -6325,9 +6004,6 @@ 0, 4, ], -'project:django-2.2.3/django/db/backends/mysql/__init__.py':[ -0, -], 'project:django-2.2.3/django/db/backends/mysql/base.py':[ 96, ], @@ -6368,9 +6044,6 @@ 0, 6, ], -'project:django-2.2.3/django/db/backends/oracle/__init__.py':[ -0, -], 'project:django-2.2.3/django/db/backends/oracle/base.py':[ 20, 63, @@ -6422,9 +6095,6 @@ 0, 5, ], -'project:django-2.2.3/django/db/backends/postgresql/__init__.py':[ -0, -], 'project:django-2.2.3/django/db/backends/postgresql/base.py':[ 27, 61, @@ -6487,9 +6157,6 @@ 'project:django-2.2.3/django/db/backends/signals.py':[ 0, ], -'project:django-2.2.3/django/db/backends/sqlite3/__init__.py':[ -0, -], 'project:django-2.2.3/django/db/backends/sqlite3/base.py':[ 48, 61, @@ -7127,9 +6794,6 @@ 526, 530, ], -'project:django-2.2.3/django/middleware/__init__.py':[ -0, -], 'project:django-2.2.3/django/middleware/common.py':[ 0, 117, @@ -7153,9 +6817,6 @@ 0, 8, ], -'project:django-2.2.3/django/template/backends/__init__.py':[ -0, -], 'project:django-2.2.3/django/template/backends/base.py':[ 0, 9, @@ -7268,9 +6929,6 @@ 80, 153, ], -'project:django-2.2.3/django/template/loaders/__init__.py':[ -0, -], 'project:django-2.2.3/django/template/loaders/app_directories.py':[ 11, ], @@ -7304,9 +6962,6 @@ 12, 16, ], -'project:django-2.2.3/django/templatetags/__init__.py':[ -0, -], 'project:django-2.2.3/django/templatetags/cache.py':[ 0, 10, @@ -7464,9 +7119,6 @@ 0, 55, ], -'project:django-2.2.3/django/utils/__init__.py':[ -0, -], 'project:django-2.2.3/django/utils/_os.py':[ 0, ], @@ -7759,9 +7411,6 @@ 104, 389, ], -'project:django-2.2.3/django/views/decorators/__init__.py':[ -0, -], 'project:django-2.2.3/django/views/decorators/cache.py':[ 0, 27, @@ -8049,9 +7698,6 @@ 0, 11, ], -'project:django-cms-3.7.1/cms/forms/__init__.py':[ -0, -], 'project:django-cms-3.7.1/cms/forms/fields.py':[ 0, 13, @@ -8091,19 +7737,10 @@ 60, 198, ], -'project:django-cms-3.7.1/cms/management/__init__.py':[ -0, -], -'project:django-cms-3.7.1/cms/management/commands/__init__.py':[ -0, -], 'project:django-cms-3.7.1/cms/management/commands/cms.py':[ 0, 18, ], -'project:django-cms-3.7.1/cms/management/commands/subcommands/__init__.py':[ -0, -], 'project:django-cms-3.7.1/cms/management/commands/subcommands/base.py':[ 0, 13, @@ -8147,9 +7784,6 @@ 0, 13, ], -'project:django-cms-3.7.1/cms/middleware/__init__.py':[ -0, -], 'project:django-cms-3.7.1/cms/middleware/language.py':[ 0, 10, @@ -8435,9 +8069,6 @@ 0, 5, ], -'project:django-cms-3.7.1/cms/templatetags/__init__.py':[ -0, -], 'project:django-cms-3.7.1/cms/templatetags/cms_admin.py':[ 0, 24, @@ -8481,12 +8112,6 @@ 976, 992, ], -'project:django-cms-3.7.1/cms/test_utils/__init__.py':[ -0, -], -'project:django-cms-3.7.1/cms/test_utils/fixtures/__init__.py':[ -0, -], 'project:django-cms-3.7.1/cms/test_utils/fixtures/fakemlng.py':[ 0, 6, @@ -8506,18 +8131,9 @@ 0, 5, ], -'project:django-cms-3.7.1/cms/test_utils/project/__init__.py':[ -0, -], -'project:django-cms-3.7.1/cms/test_utils/project/brokenpluginapp/__init__.py':[ -0, -], 'project:django-cms-3.7.1/cms/test_utils/project/brokenpluginapp/cms_plugins.py':[ 0, ], -'project:django-cms-3.7.1/cms/test_utils/project/bunch_of_plugins/__init__.py':[ -0, -], 'project:django-cms-3.7.1/cms/test_utils/project/bunch_of_plugins/models.py':[ 0, 5, @@ -8531,9 +8147,6 @@ 'project:django-cms-3.7.1/cms/test_utils/project/custom_templates/__init__.py':[ 0, ], -'project:django-cms-3.7.1/cms/test_utils/project/customuserapp/__init__.py':[ -0, -], 'project:django-cms-3.7.1/cms/test_utils/project/customuserapp/admin.py':[ 0, 9, @@ -8543,9 +8156,6 @@ 13, 59, ], -'project:django-cms-3.7.1/cms/test_utils/project/emailuserapp/__init__.py':[ -0, -], 'project:django-cms-3.7.1/cms/test_utils/project/emailuserapp/admin.py':[ 0, 9, @@ -8560,9 +8170,6 @@ 10, 89, ], -'project:django-cms-3.7.1/cms/test_utils/project/extensionapp/__init__.py':[ -0, -], 'project:django-cms-3.7.1/cms/test_utils/project/extensionapp/admin.py':[ 0, 7, @@ -8582,9 +8189,6 @@ 38, 42, ], -'project:django-cms-3.7.1/cms/test_utils/project/fakemlng/__init__.py':[ -0, -], 'project:django-cms-3.7.1/cms/test_utils/project/fakemlng/models.py':[ 0, 5, @@ -8600,9 +8204,6 @@ 'project:django-cms-3.7.1/cms/test_utils/project/models.py':[ 0, ], -'project:django-cms-3.7.1/cms/test_utils/project/mti_pluginapp/__init__.py':[ -0, -], 'project:django-cms-3.7.1/cms/test_utils/project/mti_pluginapp/cms_plugins.py':[ 0, 9, @@ -8615,9 +8216,6 @@ 54, 64, ], -'project:django-cms-3.7.1/cms/test_utils/project/nested_plugins_app/__init__.py':[ -0, -], 'project:django-cms-3.7.1/cms/test_utils/project/nested_plugins_app/cms_plugins.py':[ 0, 16, @@ -8628,9 +8226,6 @@ 'project:django-cms-3.7.1/cms/test_utils/project/nonroot_urls.py':[ 0, ], -'project:django-cms-3.7.1/cms/test_utils/project/objectpermissionsapp/__init__.py':[ -0, -], 'project:django-cms-3.7.1/cms/test_utils/project/objectpermissionsapp/backends.py':[ 0, 7, @@ -8641,9 +8236,6 @@ 43, 60, ], -'project:django-cms-3.7.1/cms/test_utils/project/placeholderapp/__init__.py':[ -0, -], 'project:django-cms-3.7.1/cms/test_utils/project/placeholderapp/admin.py':[ 0, 9, @@ -8691,15 +8283,6 @@ 'project:django-cms-3.7.1/cms/test_utils/project/placeholderapp_urls.py':[ 0, ], -'project:django-cms-3.7.1/cms/test_utils/project/pluginapp/__init__.py':[ -0, -], -'project:django-cms-3.7.1/cms/test_utils/project/pluginapp/plugins/__init__.py':[ -0, -], -'project:django-cms-3.7.1/cms/test_utils/project/pluginapp/plugins/caching/__init__.py':[ -0, -], 'project:django-cms-3.7.1/cms/test_utils/project/pluginapp/plugins/caching/cms_plugins.py':[ 0, 9, @@ -8713,9 +8296,6 @@ 'project:django-cms-3.7.1/cms/test_utils/project/pluginapp/plugins/caching/models.py':[ 0, ], -'project:django-cms-3.7.1/cms/test_utils/project/pluginapp/plugins/extra_context/__init__.py':[ -0, -], 'project:django-cms-3.7.1/cms/test_utils/project/pluginapp/plugins/extra_context/cms_plugins.py':[ 0, 7, @@ -8723,9 +8303,6 @@ 'project:django-cms-3.7.1/cms/test_utils/project/pluginapp/plugins/extra_context/models.py':[ 0, ], -'project:django-cms-3.7.1/cms/test_utils/project/pluginapp/plugins/link/__init__.py':[ -0, -], 'project:django-cms-3.7.1/cms/test_utils/project/pluginapp/plugins/link/cms_plugins.py':[ 0, 8, @@ -8734,9 +8311,6 @@ 0, 11, ], -'project:django-cms-3.7.1/cms/test_utils/project/pluginapp/plugins/manytomany_rel/__init__.py':[ -0, -], 'project:django-cms-3.7.1/cms/test_utils/project/pluginapp/plugins/manytomany_rel/admin.py':[ 0, ], @@ -8758,9 +8332,6 @@ 47, 58, ], -'project:django-cms-3.7.1/cms/test_utils/project/pluginapp/plugins/meta/__init__.py':[ -0, -], 'project:django-cms-3.7.1/cms/test_utils/project/pluginapp/plugins/meta/cms_plugins.py':[ 0, 12, @@ -8781,9 +8352,6 @@ 25, 26, ], -'project:django-cms-3.7.1/cms/test_utils/project/pluginapp/plugins/multicolumn/__init__.py':[ -0, -], 'project:django-cms-3.7.1/cms/test_utils/project/pluginapp/plugins/multicolumn/cms_plugins.py':[ 0, 9, @@ -8797,9 +8365,6 @@ 'project:django-cms-3.7.1/cms/test_utils/project/pluginapp/plugins/multicolumn/models.py':[ 0, ], -'project:django-cms-3.7.1/cms/test_utils/project/pluginapp/plugins/multiwrap/__init__.py':[ -0, -], 'project:django-cms-3.7.1/cms/test_utils/project/pluginapp/plugins/multiwrap/cms_plugins.py':[ 0, 8, @@ -8813,15 +8378,9 @@ 'project:django-cms-3.7.1/cms/test_utils/project/pluginapp/plugins/multiwrap/models.py':[ 0, ], -'project:django-cms-3.7.1/cms/test_utils/project/pluginapp/plugins/one_thing/__init__.py':[ -0, -], 'project:django-cms-3.7.1/cms/test_utils/project/pluginapp/plugins/one_thing/models.py':[ 0, ], -'project:django-cms-3.7.1/cms/test_utils/project/pluginapp/plugins/revdesc/__init__.py':[ -0, -], 'project:django-cms-3.7.1/cms/test_utils/project/pluginapp/plugins/revdesc/cms_plugins.py':[ 0, 8, @@ -8840,9 +8399,6 @@ 33, 39, ], -'project:django-cms-3.7.1/cms/test_utils/project/pluginapp/plugins/style/__init__.py':[ -0, -], 'project:django-cms-3.7.1/cms/test_utils/project/pluginapp/plugins/style/cms_plugins.py':[ 0, 8, @@ -8850,9 +8406,6 @@ 'project:django-cms-3.7.1/cms/test_utils/project/pluginapp/plugins/style/models.py':[ 0, ], -'project:django-cms-3.7.1/cms/test_utils/project/pluginapp/plugins/validation/__init__.py':[ -0, -], 'project:django-cms-3.7.1/cms/test_utils/project/pluginapp/plugins/validation/cms_plugins.py':[ 0, 5, @@ -8864,9 +8417,6 @@ 'project:django-cms-3.7.1/cms/test_utils/project/pluginapp/plugins/validation/models.py':[ 0, ], -'project:django-cms-3.7.1/cms/test_utils/project/sampleapp/__init__.py':[ -0, -], 'project:django-cms-3.7.1/cms/test_utils/project/sampleapp/admin.py':[ 0, 7, @@ -9014,9 +8564,6 @@ 11, 16, ], -'project:django-cms-3.7.1/cms/test_utils/util/__init__.py':[ -0, -], 'project:django-cms-3.7.1/cms/test_utils/util/context_managers.py':[ 0, 13, @@ -9045,9 +8592,6 @@ 9, 16, ], -'project:django-cms-3.7.1/cms/tests/__init__.py':[ -0, -], 'project:django-cms-3.7.1/cms/tests/test_admin.py':[ 0, 39, @@ -9367,9 +8911,6 @@ 155, 208, ], -'project:django-cms-3.7.1/cms/toolbar/__init__.py':[ -0, -], 'project:django-cms-3.7.1/cms/toolbar/items.py':[ 0, 13, @@ -9677,9 +9218,6 @@ 0, 7, ], -'project:django-cms-3.7.1/menus/migrations/__init__.py':[ -0, -], 'project:django-cms-3.7.1/menus/models.py':[ 0, 5, @@ -9688,9 +9226,6 @@ 0, 107, ], -'project:django-cms-3.7.1/menus/templatetags/__init__.py':[ -0, -], 'project:django-cms-3.7.1/menus/templatetags/menu_tags.py':[ 0, 27, @@ -9741,9 +9276,6 @@ 234, 253, ], -'project:docker-compose-1.24.1/compose/cli/__init__.py':[ -0, -], 'project:docker-compose-1.24.1/compose/cli/colors.py':[ 0, 18, @@ -10232,9 +9764,6 @@ 256, 317, ], -'project:docker-compose-1.24.1/script/release/release/__init__.py':[ -0, -], 'project:docker-compose-1.24.1/script/release/release/bintray.py':[ 0, 11, @@ -10285,9 +9814,6 @@ 'project:docker-compose-1.24.1/tests/__init__.py':[ 0, ], -'project:docker-compose-1.24.1/tests/acceptance/__init__.py':[ -0, -], 'project:docker-compose-1.24.1/tests/acceptance/cli_test.py':[ 0, 46, @@ -10311,9 +9837,6 @@ 22, 49, ], -'project:docker-compose-1.24.1/tests/integration/__init__.py':[ -0, -], 'project:docker-compose-1.24.1/tests/integration/network_test.py':[ 0, 13, @@ -10370,9 +9893,6 @@ 0, 14, ], -'project:docker-compose-1.24.1/tests/unit/__init__.py':[ -0, -], 'project:docker-compose-1.24.1/tests/unit/bundle_test.py':[ 0, 16, @@ -10393,9 +9913,6 @@ 215, 220, ], -'project:docker-compose-1.24.1/tests/unit/cli/__init__.py':[ -0, -], 'project:docker-compose-1.24.1/tests/unit/cli/command_test.py':[ 0, 16, @@ -10455,9 +9972,6 @@ 0, 27, ], -'project:docker-compose-1.24.1/tests/unit/config/__init__.py':[ -0, -], 'project:docker-compose-1.24.1/tests/unit/config/config_test.py':[ 0, 61, @@ -10751,9 +10265,6 @@ 16, 37, ], -'project:mypy-0.782/mypy/__init__.py':[ -0, -], 'project:mypy-0.782/mypy/__main__.py':[ 7, ], @@ -10851,9 +10362,6 @@ 'project:mypy-0.782/mypy/defaults.py':[ 0, ], -'project:mypy-0.782/mypy/dmypy/__init__.py':[ -0, -], 'project:mypy-0.782/mypy/dmypy/__main__.py':[ 0, ], @@ -11062,9 +10570,6 @@ 'project:mypy-0.782/mypy/parse.py':[ 0, ], -'project:mypy-0.782/mypy/plugins/__init__.py':[ -0, -], 'project:mypy-0.782/mypy/plugins/attrs.py':[ 559, ], @@ -11151,9 +10656,6 @@ 'project:mypy-0.782/mypy/semanal_typeddict.py':[ 23, ], -'project:mypy-0.782/mypy/server/__init__.py':[ -0, -], 'project:mypy-0.782/mypy/server/astdiff.py':[ 234, 241, @@ -11335,9 +10837,6 @@ 908, 1021, ], -'project:mypy-0.782/mypy/test/__init__.py':[ -0, -], 'project:mypy-0.782/mypy/test/collect.py':[ 0, ], @@ -11608,9 +11107,6 @@ 17, 192, ], -'project:mypy-0.782/mypyc/__init__.py':[ -0, -], 'project:mypy-0.782/mypyc/analysis.py':[ 87, 129, @@ -11623,9 +11119,6 @@ 51, 78, ], -'project:mypy-0.782/mypyc/codegen/__init__.py':[ -0, -], 'project:mypy-0.782/mypyc/codegen/emitclass.py':[ 21, 25, @@ -11688,9 +11181,6 @@ 0, 6, ], -'project:mypy-0.782/mypyc/ir/__init__.py':[ -0, -], 'project:mypy-0.782/mypyc/ir/class_ir.py':[ 373, 383, @@ -11721,9 +11211,6 @@ 310, 314, ], -'project:mypy-0.782/mypyc/irbuild/__init__.py':[ -0, -], 'project:mypy-0.782/mypyc/irbuild/builder.py':[ 63, 67, @@ -11897,9 +11384,6 @@ 0, 4, ], -'project:mypy-0.782/mypyc/primitives/__init__.py':[ -0, -], 'project:mypy-0.782/mypyc/primitives/dict_ops.py':[ 92, 183, @@ -11998,9 +11482,6 @@ 7, 20, ], -'project:mypy-0.782/mypyc/test/__init__.py':[ -0, -], 'project:mypy-0.782/mypyc/test/config.py':[ 0, ], @@ -12064,9 +11545,6 @@ 196, 205, ], -'project:mypy-0.782/mypyc/transform/__init__.py':[ -0, -], 'project:mypy-0.782/mypyc/transform/exceptions.py':[ 21, 35, @@ -12104,9 +11582,6 @@ 0, 59, ], -'project:mypy-0.782/test-data/packages/modulefinder-site-packages/foo/__init__.py':[ -0, -], 'project:mypy-0.782/test-data/packages/modulefinder-site-packages/foo/bar.py':[ 0, ], @@ -12149,39 +11624,18 @@ 'project:mypy-0.782/test-data/packages/modulefinder-site-packages/standalone.py':[ 0, ], -'project:mypy-0.782/test-data/packages/modulefinder/nsx-pkg1/nsx/a/__init__.py':[ -0, -], -'project:mypy-0.782/test-data/packages/modulefinder/nsx-pkg2/nsx/b/__init__.py':[ -0, -], 'project:mypy-0.782/test-data/packages/modulefinder/nsx-pkg3/nsx/c/c.py':[ 0, ], -'project:mypy-0.782/test-data/packages/modulefinder/nsy-pkg1/nsy/a/__init__.py':[ -0, -], -'project:mypy-0.782/test-data/packages/modulefinder/nsy-pkg2/nsy/b/__init__.py':[ -0, -], 'project:mypy-0.782/test-data/packages/modulefinder/nsy-pkg2/nsy/c.py':[ 0, ], 'project:mypy-0.782/test-data/packages/modulefinder/pkg1/a.py':[ 0, ], -'project:mypy-0.782/test-data/packages/modulefinder/pkg2/b/__init__.py':[ -0, -], -'project:mypy-0.782/test-data/packages/typedpkg/typedpkg/__init__.py':[ -0, -], 'project:mypy-0.782/test-data/packages/typedpkg/typedpkg/dne.py':[ 0, ], -'project:mypy-0.782/test-data/packages/typedpkg/typedpkg/pkg/__init__.py':[ -0, -], 'project:mypy-0.782/test-data/packages/typedpkg/typedpkg/pkg/aaa.py':[ 0, 1, @@ -12195,9 +11649,6 @@ 'project:mypy-0.782/test-data/packages/typedpkg_ns/typedpkg_ns/__init__.py':[ 0, ], -'project:mypy-0.782/test-data/packages/typedpkg_ns/typedpkg_ns/ns/__init__.py':[ -0, -], 'project:mypy-0.782/test-data/packages/typedpkg_ns/typedpkg_ns/ns/bbb.py':[ 0, 1, @@ -12307,9 +11758,6 @@ 99, 108, ], -'project:mypy-0.782/test-data/stdlib-samples/3.2/test/__init__.py':[ -0, -], 'project:mypy-0.782/test-data/stdlib-samples/3.2/test/subprocessdata/sigchild_ignore.py':[ 0, ], @@ -12826,9 +12274,6 @@ 0, 3, ], -'project:numpy-1.16.4/numpy/compat/tests/__init__.py':[ -0, -], 'project:numpy-1.16.4/numpy/compat/tests/test_compat.py':[ 0, 10, @@ -13161,9 +12606,6 @@ 861, 880, ], -'project:numpy-1.16.4/numpy/core/tests/__init__.py':[ -0, -], 'project:numpy-1.16.4/numpy/core/tests/test_abc.py':[ 0, 10, @@ -14452,9 +13894,6 @@ 2512, 2523, ], -'project:numpy-1.16.4/numpy/distutils/tests/__init__.py':[ -0, -], 'project:numpy-1.16.4/numpy/distutils/tests/test_exec_command.py':[ 0, 61, @@ -14753,9 +14192,6 @@ 'project:numpy-1.16.4/numpy/f2py/setup.py':[ 28, ], -'project:numpy-1.16.4/numpy/f2py/tests/__init__.py':[ -0, -], 'project:numpy-1.16.4/numpy/f2py/tests/test_array_from_pyobj.py':[ 0, 43, @@ -14897,9 +14333,6 @@ 0, 4, ], -'project:numpy-1.16.4/numpy/fft/tests/__init__.py':[ -0, -], 'project:numpy-1.16.4/numpy/fft/tests/test_fftpack.py':[ 0, 16, @@ -15109,9 +14542,6 @@ 139, 204, ], -'project:numpy-1.16.4/numpy/lib/tests/__init__.py':[ -0, -], 'project:numpy-1.16.4/numpy/lib/tests/test__datasource.py':[ 0, 36, @@ -15632,9 +15062,6 @@ 6, 31, ], -'project:numpy-1.16.4/numpy/linalg/tests/__init__.py':[ -0, -], 'project:numpy-1.16.4/numpy/linalg/tests/test_build.py':[ 0, 12, @@ -15756,9 +15183,6 @@ 0, 4, ], -'project:numpy-1.16.4/numpy/ma/tests/__init__.py':[ -0, -], 'project:numpy-1.16.4/numpy/ma/tests/test_core.py':[ 68, 949, @@ -15860,9 +15284,6 @@ 0, 4, ], -'project:numpy-1.16.4/numpy/matrixlib/tests/__init__.py':[ -0, -], 'project:numpy-1.16.4/numpy/matrixlib/tests/test_defmatrix.py':[ 0, 19, @@ -15942,9 +15363,6 @@ 0, 3, ], -'project:numpy-1.16.4/numpy/polynomial/tests/__init__.py':[ -0, -], 'project:numpy-1.16.4/numpy/polynomial/tests/test_chebyshev.py':[ 16, 33, @@ -16092,9 +15510,6 @@ 19, 23, ], -'project:numpy-1.16.4/numpy/random/tests/__init__.py':[ -0, -], 'project:numpy-1.16.4/numpy/random/tests/test_random.py':[ 0, 14, @@ -16122,9 +15537,6 @@ 0, 5, ], -'project:numpy-1.16.4/numpy/testing/_private/__init__.py':[ -0, -], 'project:numpy-1.16.4/numpy/testing/_private/decorators.py':[ 94, 128, @@ -16184,9 +15596,6 @@ 0, 5, ], -'project:numpy-1.16.4/numpy/testing/tests/__init__.py':[ -0, -], 'project:numpy-1.16.4/numpy/testing/tests/test_decorators.py':[ 24, 28, @@ -16259,9 +15668,6 @@ 1485, 1496, ], -'project:numpy-1.16.4/numpy/tests/__init__.py':[ -0, -], 'project:numpy-1.16.4/numpy/tests/test_ctypeslib.py':[ 0, 40, @@ -17190,9 +16596,6 @@ 1572, 1589, ], -'project:tensorflow/python/autograph/pyct/common_transformers/__init__.py':[ -0, -], 'project:tensorflow/python/autograph/pyct/common_transformers/anf.py':[ 483, ], @@ -17618,9 +17021,6 @@ 'project:tensorflow/python/autograph/utils/tensors_test.py':[ 30, ], -'project:tensorflow/python/client/__init__.py':[ -0, -], 'project:tensorflow/python/client/device_lib.py':[ 34, ], @@ -17692,9 +17092,6 @@ 'project:tensorflow/python/compat/disable_v2_behavior_test.py':[ 27, ], -'project:tensorflow/python/compiler/__init__.py':[ -0, -], 'project:tensorflow/python/compiler/mlir/mlir_test.py':[ 26, ], @@ -19065,9 +18462,6 @@ 91, 93, ], -'project:tensorflow/python/debug/cli/__init__.py':[ -0, -], 'project:tensorflow/python/debug/cli/analyzer_cli_test.py':[ 53, 57, @@ -19204,9 +18598,6 @@ 'project:tensorflow/python/debug/examples/v2/debug_mnist_v2.py':[ 125, ], -'project:tensorflow/python/debug/lib/__init__.py':[ -0, -], 'project:tensorflow/python/debug/lib/check_numerics_callback.py':[ 118, 220, @@ -21499,9 +20890,6 @@ 556, 569, ], -'project:tensorflow/python/feature_column/__init__.py':[ -0, -], 'project:tensorflow/python/feature_column/feature_column.py':[ 194, 606, @@ -21665,9 +21053,6 @@ 61, 134, ], -'project:tensorflow/python/framework/__init__.py':[ -0, -], 'project:tensorflow/python/framework/auto_control_deps.py':[ 125, 131, @@ -22784,9 +22169,6 @@ 42, 49, ], -'project:tensorflow/python/keras/datasets/__init__.py':[ -0, -], 'project:tensorflow/python/keras/distribute/distribute_strategy_test.py':[ 69, 77, @@ -22962,9 +22344,6 @@ 'project:tensorflow/python/keras/distribute/worker_training_state_test.py':[ 33, ], -'project:tensorflow/python/keras/engine/__init__.py':[ -0, -], 'project:tensorflow/python/keras/engine/base_layer.py':[ 587, 727, @@ -23387,9 +22766,6 @@ 3136, 3200, ], -'project:tensorflow/python/keras/feature_column/__init__.py':[ -0, -], 'project:tensorflow/python/keras/feature_column/dense_features_test.py':[ 44, 51, @@ -23746,9 +23122,6 @@ 194, 238, ], -'project:tensorflow/python/keras/layers/preprocessing/__init__.py':[ -0, -], 'project:tensorflow/python/keras/layers/preprocessing/benchmarks/category_crossing_benchmark.py':[ 43, ], @@ -24028,9 +23401,6 @@ 1263, 1277, ], -'project:tensorflow/python/keras/legacy_tf_layers/__init__.py':[ -0, -], 'project:tensorflow/python/keras/legacy_tf_layers/base.py':[ 151, 407, @@ -24174,9 +23544,6 @@ 2066, 2082, ], -'project:tensorflow/python/keras/mixed_precision/experimental/__init__.py':[ -0, -], 'project:tensorflow/python/keras/mixed_precision/experimental/autocast_variable_test.py':[ 52, 54, @@ -24421,9 +23788,6 @@ 38, 119, ], -'project:tensorflow/python/keras/saving/__init__.py':[ -0, -], 'project:tensorflow/python/keras/saving/hdf5_format.py':[ 470, ], @@ -24819,9 +24183,6 @@ 32, 55, ], -'project:tensorflow/python/keras/utils/__init__.py':[ -0, -], 'project:tensorflow/python/keras/utils/composite_tensor_support_test.py':[ 163, 172, @@ -24984,9 +24345,6 @@ 'project:tensorflow/python/keras/utils/vis_utils_test.py':[ 28, ], -'project:tensorflow/python/keras/wrappers/__init__.py':[ -0, -], 'project:tensorflow/python/keras/wrappers/scikit_learn_test.py':[ 37, 50, @@ -24998,9 +24356,6 @@ 159, 175, ], -'project:tensorflow/python/kernel_tests/__init__.py':[ -0, -], 'project:tensorflow/python/kernel_tests/ackermann_test.py':[ 28, ], @@ -25153,9 +24508,6 @@ 'project:tensorflow/python/kernel_tests/bitcast_op_test.py':[ 29, ], -'project:tensorflow/python/kernel_tests/boosted_trees/__init__.py':[ -0, -], 'project:tensorflow/python/kernel_tests/boosted_trees/quantile_ops_test.py':[ 40, ], @@ -27567,9 +26919,6 @@ 'project:tensorflow/python/kernel_tests/zero_division_test.py':[ 28, ], -'project:tensorflow/python/layers/__init__.py':[ -0, -], 'project:tensorflow/python/layers/utils.py':[ 26, 88, @@ -27579,19 +26928,10 @@ 28, 94, ], -'project:tensorflow/python/lib/__init__.py':[ -0, -], -'project:tensorflow/python/lib/core/__init__.py':[ -0, -], 'project:tensorflow/python/lib/core/bfloat16_test.py':[ 47, 187, ], -'project:tensorflow/python/lib/io/__init__.py':[ -0, -], 'project:tensorflow/python/lib/io/file_io.py':[ 740, ], @@ -27966,9 +27306,6 @@ 29, 101, ], -'project:tensorflow/python/ops/distributions/__init__.py':[ -0, -], 'project:tensorflow/python/ops/distributions/bernoulli.py':[ 144, ], @@ -28235,9 +27572,6 @@ 443, 468, ], -'project:tensorflow/python/ops/linalg/__init__.py':[ -0, -], 'project:tensorflow/python/ops/linalg/adjoint_registrations.py':[ 36, 47, @@ -28360,9 +27694,6 @@ 161, 180, ], -'project:tensorflow/python/ops/linalg/sparse/__init__.py':[ -0, -], 'project:tensorflow/python/ops/linalg/sparse/conjugate_gradient.py':[ 83, 88, @@ -28403,9 +27734,6 @@ 877, 1279, ], -'project:tensorflow/python/ops/losses/__init__.py':[ -0, -], 'project:tensorflow/python/ops/losses/util.py':[ 105, 110, @@ -29922,9 +29250,6 @@ 231, 290, ], -'project:tensorflow/python/platform/__init__.py':[ -0, -], 'project:tensorflow/python/platform/app_test.py':[ 29, ], @@ -29987,9 +29312,6 @@ 205, 211, ], -'project:tensorflow/python/profiler/__init__.py':[ -0, -], 'project:tensorflow/python/profiler/internal/model_analyzer_testlib.py':[ 114, ], @@ -30262,9 +29584,6 @@ 39, 54, ], -'project:tensorflow/python/summary/__init__.py':[ -0, -], 'project:tensorflow/python/summary/plugin_asset_test.py':[ 0, 43, @@ -30637,9 +29956,6 @@ 207, 211, ], -'project:tensorflow/python/training/__init__.py':[ -0, -], 'project:tensorflow/python/training/adadelta_test.py':[ 35, ], @@ -31145,12 +30461,6 @@ 1058, 1128, ], -'project:tensorflow/python/user_ops/__init__.py':[ -0, -], -'project:tensorflow/python/util/__init__.py':[ -0, -], 'project:tensorflow/python/util/compat.py':[ 114, ], @@ -31300,9 +30610,6 @@ 71, 75, ], -'project:tensorflow/python/util/protobuf/__init__.py':[ -0, -], 'project:tensorflow/python/util/protobuf/compare.py':[ 189, 193, @@ -31426,9 +30733,6 @@ 27, 56, ], -'project:tensorflow/tools/__init__.py':[ -0, -], 'project:tensorflow/tools/api/lib/python_object_to_proto_visitor.py':[ 79, 94, @@ -31601,9 +30905,6 @@ 'project:tensorflow/tools/tensorflow_builder/config_detector/config_detector.py':[ 657, ], -'project:tensorflow/tools/tensorflow_builder/config_detector/data/__init__.py':[ -0, -], 'project:tensorflow/tools/tensorflow_builder/config_detector/data/cuda_compute_capability.py':[ 237, ], diff --git a/python-checks/src/main/java/org/sonar/python/checks/MissingDocstringCheck.java b/python-checks/src/main/java/org/sonar/python/checks/MissingDocstringCheck.java index a884241b4f..3ccc83be0d 100644 --- a/python-checks/src/main/java/org/sonar/python/checks/MissingDocstringCheck.java +++ b/python-checks/src/main/java/org/sonar/python/checks/MissingDocstringCheck.java @@ -54,11 +54,18 @@ private enum DeclarationType { @Override public void initialize(Context context) { - context.registerSyntaxNodeConsumer(Kind.FILE_INPUT, ctx -> checkDocString(ctx, ((FileInput) ctx.syntaxNode()).docstring())); + context.registerSyntaxNodeConsumer(Kind.FILE_INPUT, ctx -> checkFileInput(ctx, (FileInput) ctx.syntaxNode())); context.registerSyntaxNodeConsumer(Kind.FUNCDEF, ctx -> checkDocString(ctx, ((FunctionDef) ctx.syntaxNode()).docstring())); context.registerSyntaxNodeConsumer(Kind.CLASSDEF, ctx -> checkDocString(ctx, ((ClassDef) ctx.syntaxNode()).docstring())); } + private static void checkFileInput(SubscriptionContext ctx, FileInput fileInput) { + if ("__init__.py".equals(ctx.pythonFile().fileName()) && fileInput.statements() == null) { + return; + } + checkDocString(ctx, fileInput.docstring()); + } + private static void checkDocString(SubscriptionContext ctx, @CheckForNull StringLiteral docstring) { Tree tree = ctx.syntaxNode(); DeclarationType type = getType(tree); diff --git a/python-checks/src/test/java/org/sonar/python/checks/MissingDocstringCheckTest.java b/python-checks/src/test/java/org/sonar/python/checks/MissingDocstringCheckTest.java index e3fbf5d63b..e88004988b 100644 --- a/python-checks/src/test/java/org/sonar/python/checks/MissingDocstringCheckTest.java +++ b/python-checks/src/test/java/org/sonar/python/checks/MissingDocstringCheckTest.java @@ -26,17 +26,22 @@ public class MissingDocstringCheckTest { @Test public void test() { - PythonCheckVerifier.verify("src/test/resources/checks/missingDocstring.py", new MissingDocstringCheck()); + PythonCheckVerifier.verify("src/test/resources/checks/missing_docstring/missingDocstring.py", new MissingDocstringCheck()); } @Test public void testMissingDocStringAtModuleLevel() { - PythonCheckVerifier.verify("src/test/resources/checks/missingDocstringAtModuleLevel.py", new MissingDocstringCheck()); + PythonCheckVerifier.verify("src/test/resources/checks/missing_docstring/missingDocstringAtModuleLevel.py", new MissingDocstringCheck()); } @Test public void testEmptyModule() { - PythonCheckVerifier.verify("src/test/resources/checks/emptyModule.py", new MissingDocstringCheck()); + PythonCheckVerifier.verify("src/test/resources/checks/missing_docstring/emptyModule.py", new MissingDocstringCheck()); } + @Test + public void __init__without_docstring() { + PythonCheckVerifier.verifyNoIssue("src/test/resources/checks/missing_docstring/empty_init/__init__.py", new MissingDocstringCheck()); + PythonCheckVerifier.verify("src/test/resources/checks/missing_docstring/nonempty_init/__init__.py", new MissingDocstringCheck()); + } } diff --git a/python-checks/src/test/resources/checks/emptyModule.py b/python-checks/src/test/resources/checks/missing_docstring/emptyModule.py similarity index 100% rename from python-checks/src/test/resources/checks/emptyModule.py rename to python-checks/src/test/resources/checks/missing_docstring/emptyModule.py diff --git a/python-checks/src/test/resources/checks/missing_docstring/empty_init/__init__.py b/python-checks/src/test/resources/checks/missing_docstring/empty_init/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/python-checks/src/test/resources/checks/missingDocstring.py b/python-checks/src/test/resources/checks/missing_docstring/missingDocstring.py similarity index 100% rename from python-checks/src/test/resources/checks/missingDocstring.py rename to python-checks/src/test/resources/checks/missing_docstring/missingDocstring.py diff --git a/python-checks/src/test/resources/checks/missingDocstringAtModuleLevel.py b/python-checks/src/test/resources/checks/missing_docstring/missingDocstringAtModuleLevel.py similarity index 100% rename from python-checks/src/test/resources/checks/missingDocstringAtModuleLevel.py rename to python-checks/src/test/resources/checks/missing_docstring/missingDocstringAtModuleLevel.py diff --git a/python-checks/src/test/resources/checks/missing_docstring/nonempty_init/__init__.py b/python-checks/src/test/resources/checks/missing_docstring/nonempty_init/__init__.py new file mode 100644 index 0000000000..c27bf1bb0a --- /dev/null +++ b/python-checks/src/test/resources/checks/missing_docstring/nonempty_init/__init__.py @@ -0,0 +1,2 @@ +#Noncompliant@-1 {{Add a docstring to this module.}} +print("hello!")