Skip to content
Snippets Groups Projects
Unverified Commit 5a737d06 authored by Ned Batchelder's avatar Ned Batchelder Committed by GitHub
Browse files

Merge pull request #100 from edx/nedbat/clean-up

Clean up a few things
parents 35cdddcf ac6682ee
No related branches found
No related tags found
No related merge requests found
...@@ -2,4 +2,4 @@ ...@@ -2,4 +2,4 @@
[run] [run]
data_file = .coverage data_file = .coverage
source = lti_consumer source = lti_consumer
omit = */urls.py, *tests* omit = */urls.py
# ***************************
# ** DO NOT EDIT THIS FILE **
# ***************************
#
# This file was generated by edx-lint: https://github.com/edx/edx-lint
#
# If you want to change this file, you have two choices, depending on whether
# you want to make a local change that applies only to this repo, or whether
# you want to make a central change that applies to all repos using edx-lint.
#
# Note: If your pylintrc file is simply out-of-date relative to the latest
# pylintrc rules in edx-lint, ensure you have the latest edx-lint installed
# and then follow the steps for a "LOCAL CHANGE".
#
# LOCAL CHANGE:
#
# 1. Edit the local .editorconfig_tweaks file to add changes just to this
# repo's file.
#
# 2. Run:
#
# $ edx_lint write .editorconfig
#
# 3. This will modify the local file. Submit a pull request to get it
# checked in so that others will benefit.
#
#
# CENTRAL CHANGE:
#
# 1. Edit the .editorconfig file in the edx-lint repo at
# https://github.com/edx/edx-lint/blob/master/edx_lint/files/.editorconfig
#
# 2. install the updated version of edx-lint (in edx-lint):
#
# $ pip install .
#
# 3. Run (in edx-lint):
#
# # uses .editorconfig_tweaks from edx-lint for linting in edx-lint
# # NOTE: Use Python 3.x, which no longer includes comments in the output file
# $ edx_lint write .editorconfig
#
# 4. Make a new version of edx_lint, submit and review a pull request with the
# .editorconfig update, and after merging, update the edx-lint version by
# creating a new tag in the repo (uses pbr).
#
# 5. In your local repo, install the newer version of edx-lint.
#
# 6. Run:
#
# # uses local .editorconfig_tweaks
# $ edx_lint write .editorconfig
#
# 7. This will modify the local file. Submit a pull request to get it
# checked in so that others will benefit.
#
#
#
#
#
# STAY AWAY FROM THIS FILE!
#
#
#
#
#
# SERIOUSLY.
#
# ------------------------------
[*]
end_of_line = lf
insert_final_newline = true
charset = utf-8
indent_style = space
indent_size = 4
max_line_length = 120
trim_trailing_whitespace = true
[{Makefile, *.mk}]
indent_style = tab
indent_size = 8
[*.{yml,yaml,json}]
indent_size = 2
[*.js]
indent_size = 2
[*.diff]
trim_trailing_whitespace = false
[.git/*]
trim_trailing_whitespace = false
[*.rst]
max_line_length = 79
# 236fe82ad6fd039c2dc9d98eb6b70bb72d183307
[pep8]
ignore=E501
max_line_length=120
exclude=settings
.PHONY: help all install-test install compile-sass quality test covreport upgrade
help: ## display this help message
@echo "Please use \`make <target>' where <target> is one of"
@grep '^[a-zA-Z]' $(MAKEFILE_LIST) | sort | awk -F ':.*?## ' 'NF==2 {printf "\033[36m %-25s\033[0m %s\n", $$1, $$2}'
all: install compile-sass quality test all: install compile-sass quality test
install-test: install-test:
...@@ -5,14 +11,20 @@ install-test: ...@@ -5,14 +11,20 @@ install-test:
install: install-test install: install-test
compile-sass: compile-sass: ## Compile the Sass assets
./scripts/sass.sh sass --no-cache --style compressed ./lti_consumer/static/sass/student.scss ./lti_consumer/static/css/student.css
quality: ## Run the quality checks
-pycodestyle --config=.pep8 lti_consumer
-pylint --rcfile=pylintrc lti_consumer
quality: test: ## Run the tests
./scripts/quality.sh mkdir -p var
rm -rf .coverage
python -m coverage run --rcfile=.coveragerc ./test.py --noinput
test: covreport: ## Show the coverage results
./scripts/test.sh python -m coverage report -m --skip-covered
upgrade: export CUSTOM_COMPILE_COMMAND=make upgrade upgrade: export CUSTOM_COMPILE_COMMAND=make upgrade
upgrade: ## update the requirements/*.txt files with the latest packages satisfying requirements/*.in upgrade: ## update the requirements/*.txt files with the latest packages satisfying requirements/*.in
......
...@@ -7,7 +7,7 @@ integration of third-party LTI provider tools. ...@@ -7,7 +7,7 @@ integration of third-party LTI provider tools.
Installation Installation
------------ ------------
Install the requirements into the python virtual environment of your Install the requirements into the Python virtual environment of your
``edx-platform`` installation by running the following command from the ``edx-platform`` installation by running the following command from the
root folder: root folder:
...@@ -15,7 +15,7 @@ root folder: ...@@ -15,7 +15,7 @@ root folder:
$ pip install -r requirements/base.txt $ pip install -r requirements/base.txt
Addtitionally, to enable LTI 1.3 Launch support, the following FEATURE flag needs to be set in `/edx/etc/studio.yml` in your LMS container: Additionally, to enable LTI 1.3 Launch support, the following FEATURE flag needs to be set in `/edx/etc/studio.yml` in your LMS container:
.. code:: yaml .. code:: yaml
...@@ -74,7 +74,7 @@ We have some useful documentation on how to set this up here: ...@@ -74,7 +74,7 @@ We have some useful documentation on how to set this up here:
http://edx.readthedocs.io/projects/open-edx-building-and-running-a-course/en/latest/exercises_tools/lti_component.html#lti-authentication-information http://edx.readthedocs.io/projects/open-edx-building-and-running-a-course/en/latest/exercises_tools/lti_component.html#lti-authentication-information
1. In Studio Advanced settings, set the value of the "LTI Passports" field to "test:test:secret" - 1. In Studio Advanced settings, set the value of the "LTI Passports" field to "test:test:secret" -
this will set the oauth client key and secret used to send a message to the test LTI provider. this will set the OAuth client key and secret used to send a message to the test LTI provider.
2. Create an LTI Consumer problem in a course in studio (after enabling it in "advanced_modules" 2. Create an LTI Consumer problem in a course in studio (after enabling it in "advanced_modules"
as seen above). Make a unit, select "Advanced", then "LTI Consumer". as seen above). Make a unit, select "Advanced", then "LTI Consumer".
3. Click edit and fill in the following fields: 3. Click edit and fill in the following fields:
......
...@@ -6,7 +6,5 @@ oeps: ...@@ -6,7 +6,5 @@ oeps:
oep-2: true oep-2: true
oep-7: true oep-7: true
oep-18: true oep-18: true
owner: scottrish
track-pulls: true
tags: tags:
- library - library
...@@ -2,17 +2,63 @@ ...@@ -2,17 +2,63 @@
# ** DO NOT EDIT THIS FILE ** # ** DO NOT EDIT THIS FILE **
# *************************** # ***************************
# #
# It is generated by: # This file was generated by edx-lint: https://github.com/edx/edx-lint
# $ edx_lint write pylintrc
# #
# If you want to change this file, you have two choices, depending on whether
# you want to make a local change that applies only to this repo, or whether
# you want to make a central change that applies to all repos using edx-lint.
# #
# Note: If your pylintrc file is simply out-of-date relative to the latest
# pylintrc rules in edx-lint, ensure you have the latest edx-lint installed
# and then follow the steps for a "LOCAL CHANGE".
# #
# LOCAL CHANGE:
# #
# 1. Edit the local pylintrc_tweaks file to add changes just to this
# repo's file.
# #
# 2. Run:
# #
# $ edx_lint write pylintrc
# #
# 3. This will modify the local file. Submit a pull request to get it
# checked in so that others will benefit.
# #
# STAY AWAY! #
# CENTRAL CHANGE:
#
# 1. Edit the pylintrc file in the edx-lint repo at
# https://github.com/edx/edx-lint/blob/master/edx_lint/files/pylintrc
#
# 2. install the updated version of edx-lint (in edx-lint):
#
# $ pip install .
#
# 3. Run (in edx-lint):
#
# # uses pylintrc_tweaks from edx-lint for linting in edx-lint
# # NOTE: Use Python 3.x, which no longer includes comments in the output file
# $ edx_lint write pylintrc
#
# 4. Make a new version of edx_lint, submit and review a pull request with the
# pylintrc update, and after merging, update the edx-lint version by
# creating a new tag in the repo (uses pbr).
#
# 5. In your local repo, install the newer version of edx-lint.
#
# 6. Run:
#
# # uses local pylintrc_tweaks
# $ edx_lint write pylintrc
#
# 7. This will modify the local file. Submit a pull request to get it
# checked in so that others will benefit.
#
#
#
#
#
# STAY AWAY FROM THIS FILE!
# #
# #
# #
...@@ -22,49 +68,309 @@ ...@@ -22,49 +68,309 @@
# #
# ------------------------------ # ------------------------------
[MASTER] [MASTER]
profile = no
ignore = ignore =
persistent = yes persistent = yes
load-plugins = edx_lint.pylint,pylint_django load-plugins = edx_lint.pylint,pylint_django,pylint_celery
[MESSAGES CONTROL] [MESSAGES CONTROL]
enable =
blacklisted-name,
line-too-long,
syntax-error,
init-is-generator,
return-in-init,
function-redefined,
not-in-loop,
return-outside-function,
yield-outside-function,
return-arg-in-generator,
nonexistent-operator,
duplicate-argument-name,
abstract-class-instantiated,
bad-reversed-sequence,
continue-in-finally,
method-hidden,
access-member-before-definition,
no-method-argument,
no-self-argument,
invalid-slots-object,
assigning-non-slot,
invalid-slots,
inherit-non-class,
inconsistent-mro,
duplicate-bases,
non-iterator-returned,
unexpected-special-method-signature,
invalid-length-returned,
import-error,
used-before-assignment,
undefined-variable,
undefined-all-variable,
invalid-all-object,
no-name-in-module,
unbalance-tuple-unpacking,
unpacking-non-sequence,
bad-except-order,
raising-bad-type,
misplaced-bare-raise,
raising-non-exception,
nonimplemented-raised,
catching-non-exception,
slots-on-old-class,
super-on-old-class,
bad-super-call,
missing-super-argument,
no-member,
not-callable,
assignment-from-no-return,
no-value-for-parameter,
too-many-function-args,
unexpected-keyword-arg,
redundant-keyword-arg,
invalid-sequence-index,
invalid-slice-index,
assignment-from-none,
not-context-manager,
invalid-unary-operand-type,
unsupported-binary-operation,
repeated-keyword,
not-an-iterable,
not-a-mapping,
unsupported-membership-test,
unsubscriptable-object,
logging-unsupported-format,
logging-too-many-args,
logging-too-few-args,
bad-format-character,
truncated-format-string,
mixed-fomat-string,
format-needs-mapping,
missing-format-string-key,
too-many-format-args,
too-few-format-args,
bad-str-strip-call,
model-unicode-not-callable,
super-method-not-called,
non-parent-method-called,
test-inherits-tests,
translation-of-non-string,
redefined-variable-type,
cyclical-import,
unreachable,
dangerous-default-value,
pointless-statement,
pointless-string-statement,
expression-not-assigned,
duplicate-key,
confusing-with-statement,
using-constant-test,
lost-exception,
assert-on-tuple,
attribute-defined-outside-init,
bad-staticmethod-argument,
arguments-differ,
signature-differs,
abstract-method,
super-init-not-called,
relative-import,
import-self,
misplaced-future,
invalid-encoded-data,
global-variable-undefined,
redefined-outer-name,
redefined-builtin,
redefined-in-handler,
undefined-loop-variable,
cell-var-from-loop,
duplicate-except,
nonstandard-exception,
binary-op-exception,
property-on-old-class,
bad-format-string-key,
unused-format-string-key,
bad-format-string,
missing-format-argument-key,
unused-format-string-argument,
format-combined-specification,
missing-format-attribute,
invalid-format-index,
anomalous-backslash-in-string,
anomalous-unicode-escape-in-string,
bad-open-mode,
boolean-datetime,
fatal,
astroid-error,
parse-error,
method-check-failed,
django-not-available,
raw-checker-failed,
django-not-available-placeholder,
empty-docstring,
invalid-characters-in-docstring,
missing-docstring,
wrong-spelling-in-comment,
wrong-spelling-in-docstring,
unused-import,
unused-variable,
unused-argument,
exec-used,
eval-used,
bad-classmethod-argument,
bad-mcs-classmethod-argument,
bad-mcs-method-argument,
bad-whitespace,
consider-iterating-dictionary,
consider-using-enumerate,
literal-used-as-attribute,
multiple-imports,
multiple-statements,
old-style-class,
simplifiable-range,
singleton-comparison,
superfluous-parens,
unidiomatic-typecheck,
unneeded-not,
wrong-assert-type,
simplifiable-if-statement,
no-classmethod-decorator,
no-staticmethod-decorator,
unnecessary-pass,
unnecessary-lambda,
useless-else-on-loop,
unnecessary-semicolon,
reimported,
global-variable-not-assigned,
global-at-module-level,
bare-except,
broad-except,
logging-not-lazy,
redundant-unittest-assert,
model-missing-unicode,
model-has-unicode,
model-no-explicit-unicode,
protected-access,
deprecated-module,
deprecated-method,
too-many-nested-blocks,
too-many-statements,
too-many-boolean-expressions,
wrong-import-order,
wrong-import-position,
wildcard-import,
missing-final-newline,
mixed-line-endings,
trailing-newlines,
trailing-whitespace,
unexpected-line-ending-format,
mixed-indentation,
bad-option-value,
unrecognized-inline-option,
useless-suppression,
bad-inline-option,
deprecated-pragma,
disable = disable =
bad-continuation,
invalid-name,
misplaced-comparison-constant,
file-ignored,
bad-indentation,
lowercase-l-suffix,
unused-wildcard-import,
global-statement,
no-else-return,
apply-builtin,
backtick,
basestring-builtin,
buffer-builtin,
cmp-builtin,
cmp-method,
coerce-builtin,
coerce-method,
delslice-method,
dict-iter-method,
dict-view-method,
duplicate-code,
execfile-builtin,
feature-toggle-needs-doc,
file-builtin,
filter-builtin-not-iterating,
fixme,
getslice-method,
hex-method,
illegal-waffle-usage,
import-star-module-level,
indexing-exception,
input-builtin,
intern-builtin,
locally-disabled, locally-disabled,
locally-enabled, locally-enabled,
too-few-public-methods, logging-format-interpolation,
bad-builtin, long-builtin,
star-args, long-suffix,
abstract-class-not-used, map-builtin-not-iterating,
abstract-class-little-used, metaclass-assignment,
next-method-called,
no-absolute-import,
no-init, no-init,
fixme,
too-many-lines,
no-self-use, no-self-use,
nonzero-method,
oct-method,
old-division,
old-ne-operator,
old-octal-literal,
old-raise-syntax,
parameter-unpacking,
print-statement,
raising-string,
range-builtin-not-iterating,
raw_input-builtin,
reduce-builtin,
reload-builtin,
round-builtin,
setslice-method,
standarderror-builtin,
suppressed-message,
too-few-public-methods,
too-many-ancestors, too-many-ancestors,
too-many-arguments,
too-many-branches,
too-many-instance-attributes, too-many-instance-attributes,
too-few-public-methods, too-many-lines,
too-many-locals,
too-many-public-methods, too-many-public-methods,
too-many-return-statements, too-many-return-statements,
too-many-branches, ungrouped-imports,
too-many-arguments, unichr-builtin,
too-many-locals, unicode-builtin,
unused-wildcard-import, unpacking-in-except,
duplicate-code using-cmp-argument,
xrange-builtin,
zip-builtin-not-iterating,
[REPORTS] [REPORTS]
output-format = text output-format = text
files-output = no files-output = no
reports = no reports = no
evaluation = 10.0 - ((float(5 * error + warning + refactor + convention) / statement) * 10) score = no
comment = no
[BASIC] [BASIC]
required-attributes =
bad-functions = map,filter,apply,input bad-functions = map,filter,apply,input
module-rgx = (([a-z_][a-z0-9_]*)|([A-Z][a-zA-Z0-9]+))$ module-rgx = (([a-z_][a-z0-9_]*)|([A-Z][a-zA-Z0-9]+))$
const-rgx = (([A-Z_][A-Z0-9_]*)|(__.*__)|log|urlpatterns)$ const-rgx = (([A-Z_][A-Z0-9_]*)|(__.*__)|log|urlpatterns)$
class-rgx = [A-Z_][a-zA-Z0-9]+$ class-rgx = [A-Z_][a-zA-Z0-9]+$
function-rgx = ([a-z_][a-z0-9_]{2,30}|test_[a-z0-9_]+)$ function-rgx = ([a-z_][a-z0-9_]{2,40}|test_[a-z0-9_]+)$
method-rgx = ([a-z_][a-z0-9_]{2,40}|setUp|set[Uu]pClass|tearDown|tear[Dd]ownClass|assert[A-Z]\w*|maxDiff|test_[a-z0-9_]+)$ method-rgx = ([a-z_][a-z0-9_]{2,40}|setUp|set[Uu]pClass|tearDown|tear[Dd]ownClass|assert[A-Z]\w*|maxDiff|test_[a-z0-9_]+)$
attr-rgx = [a-z_][a-z0-9_]{2,30}$ attr-rgx = [a-z_][a-z0-9_]{2,30}$
argument-rgx = [a-z_][a-z0-9_]{2,30}$ argument-rgx = [a-z_][a-z0-9_]{2,30}$
...@@ -74,11 +380,11 @@ inlinevar-rgx = [A-Za-z_][A-Za-z0-9_]*$ ...@@ -74,11 +380,11 @@ inlinevar-rgx = [A-Za-z_][A-Za-z0-9_]*$
good-names = f,i,j,k,db,ex,Run,_,__ good-names = f,i,j,k,db,ex,Run,_,__
bad-names = foo,bar,baz,toto,tutu,tata bad-names = foo,bar,baz,toto,tutu,tata
no-docstring-rgx = __.*__$|test_.+|setUp$|setUpClass$|tearDown$|tearDownClass$|Meta$ no-docstring-rgx = __.*__$|test_.+|setUp$|setUpClass$|tearDown$|tearDownClass$|Meta$
docstring-min-length = -1 docstring-min-length = 5
[FORMAT] [FORMAT]
max-line-length = 120 max-line-length = 120
ignore-long-lines = ^\s*(# )?<?https?://\S+>?$ ignore-long-lines = ^\s*(# )?((<?https?://\S+>?)|(\.\. \w+: .*))$
single-line-if-stmt = no single-line-if-stmt = no
no-space-check = trailing-comma,dict-separator no-space-check = trailing-comma,dict-separator
max-module-lines = 1000 max-module-lines = 1000
...@@ -96,7 +402,6 @@ ignore-imports = no ...@@ -96,7 +402,6 @@ ignore-imports = no
[TYPECHECK] [TYPECHECK]
ignore-mixin-members = yes ignore-mixin-members = yes
ignored-classes = SQLObject ignored-classes = SQLObject
zope = no
unsafe-load-any-extension = yes unsafe-load-any-extension = yes
generated-members = generated-members =
REQUEST, REQUEST,
...@@ -127,7 +432,6 @@ dummy-variables-rgx = _|dummy|unused|.*_unused ...@@ -127,7 +432,6 @@ dummy-variables-rgx = _|dummy|unused|.*_unused
additional-builtins = additional-builtins =
[CLASSES] [CLASSES]
ignore-iface-methods = isImplementedBy,deferred,extends,names,namesAndDescriptions,queryDescriptionFor,getBases,getDescriptionFor,getDoc,getName,getTaggedValue,getTaggedValueTags,isEqualOrExtendedBy,setTaggedValue,isImplementedByInstancesOf,adaptWith,is_implemented_by
defining-attr-methods = __init__,__new__,setUp defining-attr-methods = __init__,__new__,setUp
valid-classmethod-first-arg = cls valid-classmethod-first-arg = cls
valid-metaclass-classmethod-first-arg = mcs valid-metaclass-classmethod-first-arg = mcs
...@@ -153,4 +457,4 @@ int-import-graph = ...@@ -153,4 +457,4 @@ int-import-graph =
[EXCEPTIONS] [EXCEPTIONS]
overgeneral-exceptions = Exception overgeneral-exceptions = Exception
# d8bfe98cfd638a8d10288d842a7d3d4532a279c3 # 42226da5ce66bbfda9d557aac3602fd7a381f747
...@@ -8,7 +8,7 @@ appdirs==1.4.4 # via fs ...@@ -8,7 +8,7 @@ appdirs==1.4.4 # via fs
bleach==3.1.5 # via -r requirements/base.in bleach==3.1.5 # via -r requirements/base.in
certifi==2020.6.20 # via requests certifi==2020.6.20 # via requests
chardet==3.0.4 # via requests chardet==3.0.4 # via requests
django==2.2.15 # via -c requirements/constraints.txt, -r requirements/base.in, edx-opaque-keys django==2.2.16 # via -c requirements/constraints.txt, -r requirements/base.in, edx-opaque-keys
edx-opaque-keys[django]==2.1.1 # via -r requirements/base.in edx-opaque-keys[django]==2.1.1 # via -r requirements/base.in
fs==2.4.11 # via xblock fs==2.4.11 # via xblock
future==0.18.2 # via pyjwkest future==0.18.2 # via pyjwkest
...@@ -19,7 +19,7 @@ mako==1.1.3 # via -r requirements/base.in, xblock-utils ...@@ -19,7 +19,7 @@ mako==1.1.3 # via -r requirements/base.in, xblock-utils
markupsafe==1.1.1 # via mako, xblock markupsafe==1.1.1 # via mako, xblock
oauthlib==3.1.0 # via -r requirements/base.in oauthlib==3.1.0 # via -r requirements/base.in
packaging==20.4 # via bleach packaging==20.4 # via bleach
pbr==5.4.5 # via stevedore pbr==5.5.0 # via stevedore
pycryptodomex==3.9.8 # via -r requirements/base.in, pyjwkest pycryptodomex==3.9.8 # via -r requirements/base.in, pyjwkest
pyjwkest==1.4.2 # via -r requirements/base.in pyjwkest==1.4.2 # via -r requirements/base.in
pymongo==3.11.0 # via edx-opaque-keys pymongo==3.11.0 # via edx-opaque-keys
...@@ -32,6 +32,7 @@ simplejson==3.17.2 # via xblock-utils ...@@ -32,6 +32,7 @@ simplejson==3.17.2 # via xblock-utils
six==1.15.0 # via bleach, edx-opaque-keys, fs, packaging, pyjwkest, python-dateutil, stevedore, xblock six==1.15.0 # via bleach, edx-opaque-keys, fs, packaging, pyjwkest, python-dateutil, stevedore, xblock
sqlparse==0.3.1 # via django sqlparse==0.3.1 # via django
stevedore==1.32.0 # via -c requirements/constraints.txt, edx-opaque-keys stevedore==1.32.0 # via -c requirements/constraints.txt, edx-opaque-keys
typing==3.7.4.3 # via fs
urllib3==1.25.10 # via requests urllib3==1.25.10 # via requests
web-fragments==0.3.2 # via xblock, xblock-utils web-fragments==0.3.2 # via xblock, xblock-utils
webencodings==0.5.1 # via bleach webencodings==0.5.1 # via bleach
......
django==2.2.15 # via -c requirements/constraints.txt, -r requirements/base.txt, django-pyfs, edx-opaque-keys, xblock-sdk django==2.2.16 # via -c requirements/constraints.txt, -r requirements/base.txt, django-pyfs, edx-opaque-keys, xblock-sdk
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
ddt ddt
coveralls coveralls
mock mock
pep8
django-pyfs django-pyfs
edx_lint edx_lint
pycodestyle
xblock-sdk xblock-sdk
...@@ -7,8 +7,8 @@ ...@@ -7,8 +7,8 @@
appdirs==1.4.4 # via -r requirements/base.txt, fs appdirs==1.4.4 # via -r requirements/base.txt, fs
astroid==2.3.3 # via pylint, pylint-celery astroid==2.3.3 # via pylint, pylint-celery
bleach==3.1.5 # via -r requirements/base.txt bleach==3.1.5 # via -r requirements/base.txt
boto3==1.14.48 # via fs-s3fs boto3==1.14.53 # via fs-s3fs
botocore==1.17.48 # via boto3, s3transfer botocore==1.17.53 # via boto3, s3transfer
certifi==2020.6.20 # via -r requirements/base.txt, requests certifi==2020.6.20 # via -r requirements/base.txt, requests
chardet==3.0.4 # via -r requirements/base.txt, requests chardet==3.0.4 # via -r requirements/base.txt, requests
click-log==0.3.2 # via edx-lint click-log==0.3.2 # via edx-lint
...@@ -36,8 +36,8 @@ mccabe==0.6.1 # via pylint ...@@ -36,8 +36,8 @@ mccabe==0.6.1 # via pylint
mock==3.0.5 # via -c requirements/constraints.txt, -r requirements/test.in mock==3.0.5 # via -c requirements/constraints.txt, -r requirements/test.in
oauthlib==3.1.0 # via -r requirements/base.txt oauthlib==3.1.0 # via -r requirements/base.txt
packaging==20.4 # via -r requirements/base.txt, bleach packaging==20.4 # via -r requirements/base.txt, bleach
pbr==5.4.5 # via -r requirements/base.txt, stevedore pbr==5.5.0 # via -r requirements/base.txt, stevedore
pep8==1.7.1 # via -r requirements/test.in pycodestyle==2.6.0 # via -r requirements/test.in
pycryptodomex==3.9.8 # via -r requirements/base.txt, pyjwkest pycryptodomex==3.9.8 # via -r requirements/base.txt, pyjwkest
pyjwkest==1.4.2 # via -r requirements/base.txt pyjwkest==1.4.2 # via -r requirements/base.txt
pylint-celery==0.3 # via edx-lint pylint-celery==0.3 # via edx-lint
...@@ -56,6 +56,7 @@ six==1.15.0 # via -r requirements/base.txt, astroid, bleach, edx-l ...@@ -56,6 +56,7 @@ six==1.15.0 # via -r requirements/base.txt, astroid, bleach, edx-l
sqlparse==0.3.1 # via -r requirements/base.txt, django sqlparse==0.3.1 # via -r requirements/base.txt, django
stevedore==1.32.0 # via -c requirements/constraints.txt, -r requirements/base.txt, edx-opaque-keys stevedore==1.32.0 # via -c requirements/constraints.txt, -r requirements/base.txt, edx-opaque-keys
typed-ast==1.4.1 # via astroid typed-ast==1.4.1 # via astroid
typing==3.7.4.3 # via -r requirements/base.txt, fs
urllib3==1.25.10 # via -r requirements/base.txt, botocore, requests urllib3==1.25.10 # via -r requirements/base.txt, botocore, requests
web-fragments==0.3.2 # via -r requirements/base.txt, xblock, xblock-utils web-fragments==0.3.2 # via -r requirements/base.txt, xblock, xblock-utils
webencodings==0.5.1 # via -r requirements/base.txt, bleach webencodings==0.5.1 # via -r requirements/base.txt, bleach
......
...@@ -15,6 +15,6 @@ py==1.9.0 # via tox ...@@ -15,6 +15,6 @@ py==1.9.0 # via tox
pyparsing==2.4.7 # via packaging pyparsing==2.4.7 # via packaging
six==1.15.0 # via packaging, tox, virtualenv six==1.15.0 # via packaging, tox, virtualenv
toml==0.10.1 # via tox toml==0.10.1 # via tox
tox==3.19.0 # via -r requirements/tox.in tox==3.20.0 # via -r requirements/tox.in
virtualenv==20.0.31 # via tox virtualenv==20.0.31 # via tox
zipp==1.1.1 # via -c requirements/constraints.txt, importlib-metadata, importlib-resources zipp==1.1.1 # via -c requirements/constraints.txt, importlib-metadata, importlib-resources
...@@ -7,8 +7,8 @@ ...@@ -7,8 +7,8 @@
appdirs==1.4.4 # via -r requirements/test.txt, -r requirements/tox.txt, fs, virtualenv appdirs==1.4.4 # via -r requirements/test.txt, -r requirements/tox.txt, fs, virtualenv
astroid==2.3.3 # via -r requirements/test.txt, pylint, pylint-celery astroid==2.3.3 # via -r requirements/test.txt, pylint, pylint-celery
bleach==3.1.5 # via -r requirements/test.txt bleach==3.1.5 # via -r requirements/test.txt
boto3==1.14.48 # via -r requirements/test.txt, fs-s3fs boto3==1.14.53 # via -r requirements/test.txt, fs-s3fs
botocore==1.17.48 # via -r requirements/test.txt, boto3, s3transfer botocore==1.17.53 # via -r requirements/test.txt, boto3, s3transfer
certifi==2020.6.20 # via -r requirements/test.txt, requests certifi==2020.6.20 # via -r requirements/test.txt, requests
chardet==3.0.4 # via -r requirements/test.txt, requests chardet==3.0.4 # via -r requirements/test.txt, requests
click-log==0.3.2 # via -r requirements/test.txt, edx-lint click-log==0.3.2 # via -r requirements/test.txt, edx-lint
...@@ -18,7 +18,7 @@ coveralls==2.1.2 # via -r requirements/test.txt ...@@ -18,7 +18,7 @@ coveralls==2.1.2 # via -r requirements/test.txt
ddt==1.4.1 # via -r requirements/test.txt ddt==1.4.1 # via -r requirements/test.txt
distlib==0.3.1 # via -r requirements/tox.txt, virtualenv distlib==0.3.1 # via -r requirements/tox.txt, virtualenv
django-pyfs==2.2 # via -r requirements/test.txt django-pyfs==2.2 # via -r requirements/test.txt
django==2.2.15 # via -c requirements/constraints.txt, -r requirements/test.txt, django-pyfs, edx-opaque-keys, xblock-sdk django==2.2.16 # via -c requirements/constraints.txt, -r requirements/test.txt, django-pyfs, edx-opaque-keys, xblock-sdk
docopt==0.6.2 # via -r requirements/test.txt, coveralls docopt==0.6.2 # via -r requirements/test.txt, coveralls
docutils==0.15.2 # via -r requirements/test.txt, botocore docutils==0.15.2 # via -r requirements/test.txt, botocore
edx-lint==1.5.2 # via -r requirements/test.txt edx-lint==1.5.2 # via -r requirements/test.txt
...@@ -41,10 +41,10 @@ mccabe==0.6.1 # via -r requirements/test.txt, pylint ...@@ -41,10 +41,10 @@ mccabe==0.6.1 # via -r requirements/test.txt, pylint
mock==3.0.5 # via -c requirements/constraints.txt, -r requirements/test.txt mock==3.0.5 # via -c requirements/constraints.txt, -r requirements/test.txt
oauthlib==3.1.0 # via -r requirements/test.txt oauthlib==3.1.0 # via -r requirements/test.txt
packaging==20.4 # via -r requirements/test.txt, -r requirements/tox.txt, bleach, tox packaging==20.4 # via -r requirements/test.txt, -r requirements/tox.txt, bleach, tox
pbr==5.4.5 # via -r requirements/test.txt, stevedore pbr==5.5.0 # via -r requirements/test.txt, stevedore
pep8==1.7.1 # via -r requirements/test.txt
pluggy==0.13.1 # via -r requirements/tox.txt, tox pluggy==0.13.1 # via -r requirements/tox.txt, tox
py==1.9.0 # via -r requirements/tox.txt, tox py==1.9.0 # via -r requirements/tox.txt, tox
pycodestyle==2.6.0 # via -r requirements/test.txt
pycryptodomex==3.9.8 # via -r requirements/test.txt, pyjwkest pycryptodomex==3.9.8 # via -r requirements/test.txt, pyjwkest
pyjwkest==1.4.2 # via -r requirements/test.txt pyjwkest==1.4.2 # via -r requirements/test.txt
pylint-celery==0.3 # via -r requirements/test.txt, edx-lint pylint-celery==0.3 # via -r requirements/test.txt, edx-lint
...@@ -63,8 +63,9 @@ six==1.15.0 # via -r requirements/test.txt, -r requirements/tox.tx ...@@ -63,8 +63,9 @@ six==1.15.0 # via -r requirements/test.txt, -r requirements/tox.tx
sqlparse==0.3.1 # via -r requirements/test.txt, django sqlparse==0.3.1 # via -r requirements/test.txt, django
stevedore==1.32.0 # via -c requirements/constraints.txt, -r requirements/test.txt, edx-opaque-keys stevedore==1.32.0 # via -c requirements/constraints.txt, -r requirements/test.txt, edx-opaque-keys
toml==0.10.1 # via -r requirements/tox.txt, tox toml==0.10.1 # via -r requirements/tox.txt, tox
tox==3.19.0 # via -r requirements/tox.txt tox==3.20.0 # via -r requirements/tox.txt
typed-ast==1.4.1 # via -r requirements/test.txt, astroid typed-ast==1.4.1 # via -r requirements/test.txt, astroid
typing==3.7.4.3 # via -r requirements/test.txt, fs
urllib3==1.25.10 # via -r requirements/test.txt, botocore, requests urllib3==1.25.10 # via -r requirements/test.txt, botocore, requests
virtualenv==20.0.31 # via -r requirements/tox.txt, tox virtualenv==20.0.31 # via -r requirements/tox.txt, tox
web-fragments==0.3.2 # via -r requirements/test.txt, xblock, xblock-utils web-fragments==0.3.2 # via -r requirements/test.txt, xblock, xblock-utils
......
#!/usr/bin/env bash
set -e
pep8 --config=.pep8 lti_consumer
pylint --rcfile=pylintrc lti_consumer
#!/usr/bin/env bash
set -e
# Student view sass
sass --no-cache --style compressed ./lti_consumer/static/sass/student.scss ./lti_consumer/static/css/student.css
#!/usr/bin/env bash
set -e
mkdir -p var
rm -rf .coverage
python -m coverage run --rcfile=.coveragerc ./test.py $1 --noinput
[pycodestyle]
ignore = E501
max_line_length = 120
exclude = settings
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment