Commit Graph

7326 Commits

Author SHA1 Message Date
Joel Barciauskas
5ebb93a1ee Set the second arg to __init__ for the HeartbeatFailure exception to 'mongo', create a split_mongo connection test
Fixes TNL-2267

Clean up and PEP8 fixes to the test

Add missing paramater back

Add pylint pragma to ignore unused argument warning
2015-07-23 16:26:27 -04:00
Brian Talbot
b75f900b22 Merge pull request #8266 from edx/talbs/fix-font-face-calls
LMS/Studio: Reduce font-face file calls
2015-07-22 14:48:44 -04:00
Adam Palay
e515842395 Merge remote-tracking branch 'origin/release' into merge-release-into-master
Conflicts:
	requirements/edx/github.txt
2015-07-22 08:10:26 -04:00
Alison Hodges
6f70ed38b4 Fixes DOC-841 per multiple requests
@stroilova @shnayder please verify that I have updated these files
correctly. @catong complete the thread started in email.
2015-07-21 13:23:33 -04:00
Utkarsh
231059c24b Merge pull request #8989 from edx/utkjad/fixtemp
PLAT-734 Fix slow transaction due to multiple calls to unpickling
2015-07-21 11:07:12 -04:00
utkjad
274e6de22b PLAT-734 Fix slow transaction due to multiple calls to unpickling 2015-07-21 13:56:38 +00:00
David Ormsbee
693901529c Instead of calculating the course's usage key, just follow the parent chain. 2015-07-20 15:42:01 -04:00
David Ormsbee
abcdc05af4 Return just the CourseDescriptor in discussions get_course()
Instead of calling the modulestore's get_course(), return the
descriptor via self.runtime.get_block(). Doing this means that bulk
ops caching works within CCX courses.

Note: The long term fix for this is to have some course-level scope
so that we're not peeking at the top of the tree just for some basic
discussion-specific configuration information (in this case the
blackout dates).

TNL-2697
2015-07-20 15:42:00 -04:00
Renzo Lucioni
b50c905865 Remove modulestore dependency from Enrollment API
Sets the Enrollment API free of the modulestore by replacing modulestore queries with calls to the CourseOverview model. Course deletion invalidates the corresponding CourseOverview. XCOM-462.
2015-07-20 13:41:19 -04:00
Max Rothman
c97314413b Merge branch 'release' into release-merge-test
Conflicts:
	lms/djangoapps/commerce/urls.py
	lms/djangoapps/commerce/views.py
2015-07-17 17:42:03 -04:00
Adam
2735b2b5bb Revert "Decorated instructor dashboard with sudo_required." 2015-07-17 12:11:38 -04:00
Waheed Ahmed
bc052db1ee Added DjangoSudo functionality for instructor dashboard and course team page 2015-07-16 11:14:11 +05:00
David Baumgold
1a3f0958b9 Revert setuptools upgrade 2015-07-15 09:36:56 -04:00
David Baumgold
ffb0a6a07d Revert setuptools upgrade 2015-07-14 16:37:54 -04:00
vkaracic
ff6afaf483 Custom error messages for delete course command
This is a fix for
https://openedx.atlassian.net/browse/PLAT-619
added custom CommandError messages for invalid syntax and
invalid course keys.
2015-07-14 15:28:01 +00:00
Sven Marnach
3d7246ecc8 Allow masquerading as a specific user different from the logged in user. 2015-07-13 18:55:45 -07:00
Sarina Canelake
49f78b4742 Remove logging-not-lazy Pylint violations 2015-07-13 17:34:54 -04:00
Sarina Canelake
8283c07e32 Remove superfluous-parens pylint violations
Skipped 'print' statement violations, as print() is Py3k syntax.
2015-07-13 17:33:28 -04:00
Sarina Canelake
ba8fd1c21d Eliminate instances of unused-import Pylint violation 2015-07-13 17:33:25 -04:00
Adam Palay
5088ae3091 when removing field from _field_data_cache when rebinding a module to a new user, also remove it from _dirty_fields (TNL-2640) 2015-07-13 14:17:27 -04:00
muhammad-ammar
5a8b158900 Visual change to new Hints and Feedback problem types
TNL-2619
2015-07-13 12:18:25 +05:00
David Baumgold
705fa6999a Use a forked version of NLTK
So that we can use setuptools instead of distribute
2015-07-09 13:04:33 -04:00
Régis Behmo
95ebf7f675 Upgrade distribute to the latest stable version of setuptools
'distribute' is the ancestor of 'setuptools', and many packages require
setuptools to be installed.

Upgrade of MySQL-python from 1.2.4 to 1.2.5 is required because of an
incompatibility with setuptools>0.7.
2015-07-09 13:04:33 -04:00
David Ormsbee
79de77cf95 Optimize grading/progress page to reduce database queries (cache max scores).
The progress page did a number of things that make performance terrible for
courses with large numbers of problems, particularly if those problems are
customresponse CapaModule problems that need to be executed via codejail.

The grading code takes pains to not instantiate student state and execute the
problem code. If a student has answered the question, the max score is stored
in StudentModule. However, if the student hasn't attempted the question yet, we
have to run the problem code just to call .max_score() on it. This is necessary
in grade() if the student has answered other problems in the assignment (so we
can know what to divide by). This is always necessary to know in
progress_summary() because we list out every problem there. Code execution can
be especially slow if the problems need to invoke codejail.

To address this, we create a MaxScoresCache that will cache the max raw score
possible for every problem. We select the cache keys so that it will
automatically become invalidated when a new version of the course is published.

The fundamental assumption here is that a problem cannot have two different
max score values for two unscored students. A problem *can* score two students
differently such that they have different max scores. So Carlos can have 2/3 on
a problem, while Lyla gets 3/4. But if neither Carlos nor Lyla has ever
interacted with the problem (i.e. they're just seeing it on their progress
page), they must both see 0/4 -- it cannot be the case that Carlos sees 0/3 and
Lyla sees 0/4.

We used to load all student state into two separate FieldDataCache instances,
after which we do a bunch of individual queries for scored items. Part of this
split-up was done because of locking problems, but I think we might have gotten
overzealous with our manual transaction hammer.

In this commit, we consolidate all state access in grade() and progress()
to use one shared FieldDataCache. We also use a filter so that we only pull
back StudentModule state for things that might possibly affect the grade --
items that either have scores or have children.

Because some older XModules do work in their __init__() methods (like Video),
instantiating them takes time, particularly on large courses. This commit also
changes the code that fetches the grading_context to filter out children that
can't possibly affect the grade.

Finally, we introduce a ScoresClient that also tries to fetch score
information all at once, instead of in separate queries. Technically, we are
fetching this information redundantly, but that's because the state and score
interfaces are being teased apart as we move forward. Still, this only
amounts to one extra SQL query, and has very little impact on performance
overall.

Much thanks to @adampalay -- his hackathon work in #7168 formed the basis of
this.

https://openedx.atlassian.net/browse/CSM-17
2015-07-09 10:03:58 -04:00
Mushtaq Ali
ab60b110af Merge pull request #8735 from edx/mushtaq/plat633-delete-case
Fix 'stuck in publish issue' when deleting a component
2015-07-08 23:07:46 +05:00
Awais Jibran
989091d1ed TNL-2165
"play_video" event emitted after seeking forward in a video contains old position
2015-07-08 12:20:59 +05:00
Awais Jibran
ef89c662f3 Merge pull request #8742 from edx/aj/tnl2551-randomized-problems-failing
[NEW] - Fixed randomized problems which were not appearing to work.
2015-07-08 11:49:23 +05:00
mushtaqali
2ca9d4d070 Fix 'stuck in publish issue' when deleting an item after dicarding the changes 2015-07-07 21:52:39 +05:00
Matt Drayer
a8f909fe77 Merge pull request #8659 from edx/ziafazal/SOL-1006
ziafazal/SOL-1006: Disable course 'start date' for inactive web-enabled certificates
2015-07-06 16:45:24 -04:00
Awais Jibran
a14a562ed6 Fixed randomized problems which were not appearing to work.
TNL-2551
2015-07-06 15:29:59 +05:00
Usman Khalid
fe54b085c6 Added ability to disable xblock types in LMS.
TNL-2305
2015-07-03 20:58:40 +05:00
Ned Batchelder
514d85c183 Fix other temp dirs that are not cleaned up properly 2015-07-02 19:31:49 -04:00
Ned Batchelder
e6e5a8d812 Convert some try/finally to addCleanup 2015-07-02 19:31:48 -04:00
Ali Mohammad
eb70f2303c Merge pull request #8749 from edx/rc/2015-06-29
Merge back into master
2015-07-02 13:34:42 -04:00
Christine Lytwynec
0bb519c2a0 Merge pull request #8727 from edx/clytwynec/TE-878
use 1 coveragerc file to generate 1 coverage report per build
2015-07-02 12:13:59 -04:00
Christine Lytwynec
e9e4e3cf65 use 1 coveragerc file to generate 1 coverage report per build 2015-07-01 16:07:49 -04:00
Awais Jibran
c93d48249d Fixed quality report 2015-07-02 00:29:50 +05:00
Awais Jibran
5306ac02b0 Revert "Fixed randomized problems which were not appearing to work." 2015-07-02 02:35:54 +05:00
Awais Jibran
9e0ed9b759 Merge pull request #8672 from edx/aj/tnl2551-randomized-problems-not-working
Fixed randomized problems which were not appearing to work.
2015-07-01 19:04:36 +05:00
Awais Jibran
e64ae13a34 Fixed randomized problems which were not appearing to work.
TNL-2551
2015-07-01 16:34:34 +05:00
Kyle McCormick
6b70785c12 TNL-2623 Fix bug where status icons were hidden in image response problems 2015-06-30 17:09:20 -04:00
Adam Palay
4bb4efe9d9 Merge remote-tracking branch 'origin/release' into rc/2015-06-29
Conflicts:
	requirements/edx/github.txt
2015-06-29 16:55:57 -04:00
Adam Palay
61431015c2 update xblock only to mark field values as dirty if they've changed (TNL-2475)
force save "download_video" field if not set

set timezone to UTC explicitly
2015-06-29 14:28:45 -04:00
Alison Hodges
caa6a07d15 Fixes DOC-1957 2015-06-29 13:48:11 -04:00
Zia Fazal
bcbd1464d4 New course cannot be started till web certificate is active
fixed broken test

changes based on feedback on 6/24

fixed broken unit test after feedback changes

added more checks and updated tests

fixed broken bok choy test

Fixed pylint quality error

trying to fix pylint quality error
2015-06-29 12:53:21 +05:00
Braden MacDonald
072ae99d12 Merge pull request #8140 from edx/feature/shibboleth-tpa
Feature: Shibboleth/SAML SSO
2015-06-26 14:17:24 -07:00
Diana Huang
42d8091b49 Merge pull request #8688 from edx/diana/polling-cleanup
Clean up capa polling to have exponential backoff
2015-06-26 17:00:53 -04:00
Braden MacDonald
caca3e1bdf SAML2 third_party_auth provider(s) - PR 8018 2015-06-26 13:23:59 -07:00
Diana Huang
254d6c6821 Put a timeout on poling for codeinput and matlab problems. 2015-06-26 15:29:49 -04:00
Sarina Canelake
033d36c8f5 Merge pull request #8627 from Stanford-Online/nick/fix-tab-templates
Fix hint-problem tab bug TNL-2542
2015-06-26 13:11:46 -04:00