Skip to content
This repository was archived by the owner on Oct 9, 2021. It is now read-only.

Commit 16b00ff

Browse files
committed
Filter dependencies longer than 200 characters
1 parent 9f9b8d6 commit 16b00ff

3 files changed

Lines changed: 37 additions & 1 deletion

File tree

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# -*- coding: utf-8 -*-
2+
# vim: set filetype=python
3+
4+
import os, sys
5+
import django.forms.monstertruck
6+
from verylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongname import verylongname
7+
from flask import session
8+
from notlongenoughnotlongenoughnotlongenoughnotlongenoughnotlongenoughnotlongenoughnotlongenoughnotlongenoughnotlongenoughnotlongenoughnotlongenoughnotlongenoughnotlongenoughnotlongenoughnotlongenoughnotlo import notlongenough
9+
10+
11+
class MyClass(object):
12+
"""this class
13+
"""
14+
15+
def method1(self):
16+
a = 1 + 2
17+
b = 'hello world!'
18+
for x in y:
19+
print(x)
20+
raise Exception()

tests/test_dependencies.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -210,6 +210,18 @@ def test_dependencies_still_detected_when_alternate_language_used(self):
210210
extra_args=['--alternate-language', 'PYTHON'],
211211
)
212212

213+
def test_long_dependencies_removed(self):
214+
self.shared(
215+
expected_dependencies=[
216+
'django',
217+
'flask',
218+
'notlongenoughnotlongenoughnotlongenoughnotlongenoughnotlongenoughnotlongenoughnotlongenoughnotlongenoughnotlongenoughnotlongenoughnotlongenoughnotlongenoughnotlongenoughnotlongenoughnotlongenoughnotlo',
219+
],
220+
expected_language='Python',
221+
expected_lines=20,
222+
entity='python_with_long_import.py',
223+
)
224+
213225
def test_python_dependencies_detected(self):
214226
self.shared(
215227
expected_dependencies=[

wakatime/dependencies/__init__.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -131,5 +131,9 @@ def parse(self):
131131
if self.parser:
132132
plugin = self.parser(self.source_file, lexer=self.lexer)
133133
dependencies = plugin.parse()
134-
return list(filter(bool, set(dependencies)))
134+
135+
def filter_dependencies(dep):
136+
return dep and len(dep) <= 200
137+
138+
return list(filter(filter_dependencies, set(dependencies)))
135139
return []

0 commit comments

Comments
 (0)