Ernesto Vargas
ffb2f9e84b
lint/tests: Give nice error message for common import failures.
...
This should make users much more likely to be able to debug issues
where they ran Zulip outside the Vagrant environment or virtualenv.
[error messages tweaked by tabbott]
2016-06-06 13:39:26 -07:00
Tim Abbott
553ef81f92
Add lint rules for mypy type annotations.
2016-06-05 13:00:55 -07:00
Tim Abbott
03debdf82f
Fix malformed error message when creating invalid Realm Emoji.
...
Thanks to Greg McCoy for his help finding this bug.
2016-06-03 23:12:36 -07:00
Nathan Florea
5fe9076631
Remove some mutable default arguments.
...
These ones don't fix any bugs, because the mutable arg is never passed
outside of the callable or mutated. But it's good practice to not use
them in case those invariants are changed in the future.
2016-06-03 09:16:56 -07:00
Umair Khan
bd4e471706
Check json_error and JsonableError in linter.
...
Mainly the check is to ensure that all the strings that pass through
these two functions are captured by `makemessages`.
2016-05-31 07:40:42 -07:00
Umair Khan
4b28fcd2f3
Add option to linter to exclude lines from files.
2016-05-31 07:40:42 -07:00
Tim Abbott
41336f3782
lint-all: Check for use of '== None'.
2016-05-31 07:02:04 -07:00
Eklavya Sharma
1c04560def
Re-enable pyflakes in linter and remove python 3 pyflakes errors.
2016-05-25 19:25:13 +05:30
Eklavya Sharma
1a6257394c
Make tools/lint-all run on python 3.
...
Since pyflakes catches some extra errors in python 3, disable
pyflakes for now.
2016-05-25 19:23:13 +05:30
Eklavya Sharma
3185b7e750
Remove unneeded imports from tools/lint-all.
2016-05-25 19:12:09 +05:30
Tim Abbott
542af0d6b6
lint: Add option to print verbose timing output.
2016-05-04 14:22:52 -07:00
Tim Abbott
e2aeee0c35
lint: Add check for unnecessary whitespace between % and (.
2016-05-04 14:22:52 -07:00
Tim Abbott
72ee9f5137
lint: Check for unnecssary whitespace after ','s.
2016-05-04 14:17:27 -07:00
Tim Abbott
391a225595
lint: Check for missing space after comments.
2016-05-02 22:10:47 -07:00
Tim Abbott
302da832fa
lint: Enforce whitespace between : and value in dicts.
2016-04-27 22:23:40 -07:00
Tim Abbott
8a278cbe3a
Switch to using a Zulip version of @login_required.
...
Currently the code is the unmodified Django upstream implementation;
this commit is preparation for modifying it.
2016-04-21 14:59:39 -07:00
Tim Abbott
9c56027627
lint: Add CSS lint rule for whitespace after {.
2016-04-20 11:50:01 -07:00
Tim Abbott
a46b5d7bbe
Add lint check for missing whitespace after =.
2016-04-20 11:37:03 -07:00
Tim Abbott
a72385246e
Fix missing whitespace after '=' in python/js code.
2016-04-20 11:36:14 -07:00
Tim Abbott
a2b59b8b51
lint: Check whitespace rules for txt files.
2016-04-14 14:36:29 -07:00
Tim Abbott
39950b8f4f
lint: Check whitespace rules in markdown files too.
2016-04-14 14:30:29 -07:00
Tim Abbott
2b76f6223e
Make 'no newline at end of file' lint error more actionable.
...
There's a handy sed command to fix this, so we might as well document
it.
2016-04-14 10:55:06 -07:00
Tim Abbott
e71d8bb4b6
lint-all: Require newlines at end of JSON files.
2016-04-14 10:49:12 -07:00
Tim Abbott
9584ae1ab8
Add CSS linter for missing space after : in rules.
2016-04-08 21:04:43 -07:00
Tim Abbott
209e6ef7a1
Run trailing whitespace linter on bash files.
2016-04-08 11:52:11 -07:00
Tim Abbott
caba24b2af
Fix existing trailing whitespace in bash scripts.
2016-04-08 11:52:11 -07:00
Tim Abbott
4fa63c29ca
Run whitespace linters on html files.
2016-04-08 11:52:11 -07:00
Tim Abbott
d670e902a9
Run whitespace linters on handlebars templates.
2016-04-08 11:52:11 -07:00
Tim Abbott
c6d01ab76b
Run whitespace linters on CSS files.
2016-04-08 11:47:10 -07:00
Tim Abbott
1b84617771
Don't skip running python custom linters inside comments.
...
This fixes an issue where we weren't checking for trailing whitespace
in comments.
2016-04-08 11:47:10 -07:00
Tim Abbott
14b5e265c2
Remove unuseful suspicious code lint check.
2016-04-08 11:47:10 -07:00
Tim Abbott
efd14e7ad9
Revert "Exclude 'from typing import *' from linter."
...
This reverts commit d936bf61f9
.
We no longer need this since we've migrated to specifying the
dependencies in the typing module that we're actually using.
2016-04-07 14:12:18 -07:00
Tim Abbott
78e289f904
Exclude puppet-common tests from puppet linter.
2016-04-04 17:08:29 -07:00
Eklavya Sharma
81fdeae0ea
Remove '.'s from extensions in lister.py interface and lint-all.
...
In lint-all, change occurences of '.py', '.js', ... to 'py', 'js', ....
2016-04-01 15:27:16 -07:00
Eklavya Sharma
ad4c20a3e6
Migrate lint-all to lister.py for getting files.
...
This has the side effect of making lint-all check all shell scripts,
not just those under scripts/, tools/, and bin/.
[commit message expanded by tabbott]
2016-04-01 15:24:43 -07:00
Tim Abbott
d936bf61f9
Exclude 'from typing import *' from linter.
2016-03-30 21:50:31 -07:00
Tim Abbott
f9222de83e
Auto-load commonly used modules in manage.py shell.
...
This automatically loads settings, zerver.models.* and
zerver.lib.actions.* when you start `manage.py shell`, which should
save a bit of time basically every time someone uses it.
Fixes #275 .
2016-03-19 11:32:49 -07:00
Varshit
72033069ed
Extend lint-all to check for newlines at the end of files.
2016-03-17 23:03:56 -07:00
Tim Abbott
3a46bae542
Fix shell script list computation to exclude files not in git.
...
This fixes an issue where the next commit's no-newline-and-end-of-file
check was incorrectly firing on tools/phantomjs.
2016-03-17 23:03:56 -07:00
Eklavya Sharma
aa505b0d55
Apply Python 3 futurize transform libmodernize.fixes.fix_map
...
Refer to #256
2016-03-10 22:03:44 -08:00
Eklavya Sharma
def027a1ec
Apply Python 3 futurize transform libmodernize.fixes.fix_filter
...
Refer to #256
2016-03-10 22:03:06 -08:00
Eklavya Sharma
c59185e119
Apply Python 3 futurize transform libfuturize.fixes.fix_print_with_import
...
Refer #256
2016-03-10 22:02:17 -08:00
Tim Abbott
aad3bff193
Harden style rule for % comprehensions and fix existing errors.
2016-02-02 23:08:19 -08:00
Tim Abbott
700055c194
Apply modernize transform libmodernize.fixes.fix_file.
...
This replaces use of file() with open() which is python 3 compatible,
and also adds it to our python 3 support test suite.
2016-01-26 21:09:42 -08:00
Vladislav Manchev
df4d1b3c14
Add linting code for detecting shebang bashisms.
...
This will prevent regressions in OpenBSD compatibility, since OpenBSD
doesn't support passing arguments in the #! line.
2016-01-21 22:33:55 -08:00
Tim Abbott
0fe819eb57
lint: Tighten lint rules around whitespace around '%' comprehensions.
2015-12-05 15:29:42 -08:00
Tim Abbott
69b6b60017
lint: Clean up whitespace_rules.
...
Several of these rules only apply to one of Python and Javascript, and
this simplifies the logic and should make our linter code more readable.
In the process, we add support for per-rule/file pair exclusions to
handle the tab exception for codehilite.py.
2015-12-05 15:29:42 -08:00
Tim Abbott
a712954c59
lint: Rewrite custom checks to use a more consistent framework.
2015-12-05 15:29:42 -08:00
Tim Abbott
8a18e78a65
Add lint rules checking for our % comprehension style.
2015-12-05 15:29:42 -08:00
Tim Abbott
b81ecc4064
Add whitespace lint rules checking for missing spaces before {.
2015-11-10 10:06:47 -08:00