{"push_id":696551322,"size":66,"distinct_size":10,"ref":"refs/heads/muzaffar/tnl1945-bookmarks-api","head":"7d6d4c246702f00f8c16ef51ae916a090dfd73a0","before":"98389a98b03552b009d0eb1bbd23d1c405788221","commits":[{"sha":"9e30bdb2c7bf0c53e06fc8a967bb9dece7d63c99","author":{"email":"45a9ab7824d023e4378398d2fc445202dfe5e5a6@gmail.com","name":"Marko Jevtic"},"message":"(SOL-835) Addressing flakiness of the reindex acceptance test","distinct":false,"url":"https://api.github.com/repos/edx/edx-platform/commits/9e30bdb2c7bf0c53e06fc8a967bb9dece7d63c99"},{"sha":"ef26e8e83fb42bf1d631ce683a16b7afe0ddd3dd","author":{"email":"f24a081e9f99ea5e38d506fa7514ed6562c09e0f@edx.org","name":"Greg Price"},"message":"Add comment endorsement to discussion API","distinct":false,"url":"https://api.github.com/repos/edx/edx-platform/commits/ef26e8e83fb42bf1d631ce683a16b7afe0ddd3dd"},{"sha":"6a0c9aee9deb10661aeea2e681c0d956c050f14b","author":{"email":"539ceab9a4c155868dd360023fd9ed09f5ff249b@crisewing.com","name":"cewing"},"message":"MIT CCX: Use CCX Keys\n\nImplement the use of CCX opaque keys throughout the ccx code base\n\ninclude the new custom ccx id package in the github checkouts list\n\nupdate the coach dashboard wrapper to get CCX information from the incoming course_id, if possible\n\nupdate function signatures for all view functions to expect CCX as passed by the dashboard wrapper (default to None), remove calls to get_ccx_for_coach as the ccx is passed in.\n\nupdate reverse calls in python view code to use a CCXLocator for the URL instead of a CourseLocator\n\nuse CCXLocator where necessary\n\nuse course id to find ccx, instead of thread local\n\nremove unused method and related tests\n\nuse course id for getting ccx\n\nprovide course id to the get_current_ccx method\n\nensure the course id passed in is a CourseKey instance of some type whether it starts out as a string or not\n\nuse the provided block to figure out what the course_id should be, then get the ccx for that\n\nredirect to ccx dashboard using coach ccx if no ccx is passed in\n\nupdate student dashboard listing for ccx to build an appropriate url from a CCXLocator, not from the course locator.\n\nrefactor building the ccx locator so we don't have to do it repeatedly\n\nbegin test refactoring after ccx_keys introduction\n\nEnsure that when access checking happens, the course_locator form of a ccx locator is used.  This ensures that the access check happens against the course and it is not necesarry to duplicate the entire access control structure for the course.\n\npick up api change in ccx-keys\n\ncreate and conditionally use a wrapper for the mixed modulestore returned by xmodule.modulestore.django.modulestore\n\nthe wrapper will strip and restore ccx values from CourseKey and UsageKey objects\n\nfix return values on a few methods\n\nremove unused symbol\n\npull updated ccx-keys package\n\nset course_id on the caching descriptor system to avoid api incompatibilities in some subsystems\n\nuse ccx.course instead of self.course\n\nfix get method to find course keys from blocks that are not themselves keys but have a location attribute (which will be a key)\n\nif an item coming out of the db has children, restore the ccx to them as well\n\nif the block passed in has a CCX key, unwrap that before we try to look up the override, otherwise it will never be found.\n\npick up a change in the ccx keys package that allows for stripping CCX identity from a usage key\n\nbegin writing tests to cover this modulestore wrapper\n\nremove the switch_pocs view, the url pattern for it, and the tests that covered it\n\nremove the ccx context and the middleware responsible for setting the current CCX.  These are no longer needed\n\nall dashboard views should raise 404 if a ccx is not provided by the coach_dashboard decorator\n\ncode quality\n\nprevent errors resulting from trying to `get` a ccx based on non-unique criteria.\n\nremove obsolete usage of ACTIVE_CCX_KEY\n\nfix setUp method for grading tests to properly create grades for the ccx rather than for the course.\n\nclean up reverse calls\n\ncode quality\n\nadding docstrings to clarify purpose of this patch\n\nfix bug in getting ccx for coach\n\nfix grading views to properly fetch a ccx-ified course so that grades for that version will be calculated\n\nfix small errors in modulestore implementation\n\nfix errant merge marker\n\nupdate call to get_current_ccx after key refactoring merged with tab changes","distinct":false,"url":"https://api.github.com/repos/edx/edx-platform/commits/6a0c9aee9deb10661aeea2e681c0d956c050f14b"},{"sha":"ef4836503f4390dd29640ba70a603067dfdb436c","author":{"email":"539ceab9a4c155868dd360023fd9ed09f5ff249b@crisewing.com","name":"cewing"},"message":"MIT CCX: Use CCX Keys - responses to code review\n\nremove references to middleware that were missed previously\n\nuse key apis rather than local implementation of key conversion.  remove local implementationa\n\nremove spurious test for attribute\n\nfix test setUp to avoid unneeded flattening\n\ncode quality fixes\n\nadd security check ensuring that the coach is coach for *this* CCX.\n\nprevent ccx/deprecated course id problems\n\n1.  do not allow ccx objects to be created if the course id is deprecated\n2.  filter out any ccx memberships that involve deprecated course ids (in case there are bad ccxs in the database)\n\nFix test failures and errors arising from incorrect code path execution\n\nCreate context manager to handle unwrapping and restoring ccx values for the modulestore wrapper, employ it throughout modulestore wrapper implementation","distinct":false,"url":"https://api.github.com/repos/edx/edx-platform/commits/ef4836503f4390dd29640ba70a603067dfdb436c"},{"sha":"04e764d13dd0d8e22b01852d8b2be7e60150681b","author":{"email":"0582c5011296bfe1139e34abde9f2455d4c32a9d@edx.org","name":"Ben Patterson"},"message":"Make addCleanup idempotent.\n\nSometimes this file does not exist depending on when a test failed. Remove it gracefully.","distinct":false,"url":"https://api.github.com/repos/edx/edx-platform/commits/04e764d13dd0d8e22b01852d8b2be7e60150681b"},{"sha":"d96b5814856dfa0f24ac491c1b50ab0f8faddf2a","author":{"email":"0582c5011296bfe1139e34abde9f2455d4c32a9d@edx.org","name":"Ben Patterson"},"message":"Fix flaky lettuce test. TNL-1452","distinct":false,"url":"https://api.github.com/repos/edx/edx-platform/commits/d96b5814856dfa0f24ac491c1b50ab0f8faddf2a"},{"sha":"2fd68dc983b7548300260737de9c249166d5a137","author":{"email":"37d41699bdee4fcb969ca499eb0f8b82c60d59cc@edx.org","name":"Will Daly"},"message":"ECOM-1724 a11y footer updates\n\n* Add action text to social media links.\n* Make the alt text for mobile links more descriptive.","distinct":false,"url":"https://api.github.com/repos/edx/edx-platform/commits/2fd68dc983b7548300260737de9c249166d5a137"},{"sha":"4b6e2f4880b27708ea8af288969bda29121d054b","author":{"email":"0582c5011296bfe1139e34abde9f2455d4c32a9d@edx.org","name":"Ben Patterson"},"message":"Merge pull request #8471 from edx/benp/flaky-cms-component-jun2015\n\nFix flaky lettuce test. TNL-1452","distinct":false,"url":"https://api.github.com/repos/edx/edx-platform/commits/4b6e2f4880b27708ea8af288969bda29121d054b"},{"sha":"69772ef20ea82a6541dc4a5557c908a19ca22159","author":{"email":"a4c0a8ee53c7899aeb9223a0280a729d6c2927a8@gmail.com","name":"Ali Mohammad"},"message":"Convert access to StudentModuleHistory to use the UserStateClient API.","distinct":false,"url":"https://api.github.com/repos/edx/edx-platform/commits/69772ef20ea82a6541dc4a5557c908a19ca22159"},{"sha":"0f6ef4447611d890fd879f33d528dba8d8e969cb","author":{"email":"c464919b81827217448443726c3e362a8aef48f9@edx.org","name":"Calen Pennington"},"message":"Don't pass in a user object to DjangoUserStateClient","distinct":false,"url":"https://api.github.com/repos/edx/edx-platform/commits/0f6ef4447611d890fd879f33d528dba8d8e969cb"},{"sha":"b9f5eef4aec2b009b430bc048bbd6db54fa7a0a0","author":{"email":"c464919b81827217448443726c3e362a8aef48f9@edx.org","name":"Calen Pennington"},"message":"Log an exception before swallowing it in a KeyValueMultiSaveError","distinct":false,"url":"https://api.github.com/repos/edx/edx-platform/commits/b9f5eef4aec2b009b430bc048bbd6db54fa7a0a0"},{"sha":"c1ace0448393e74b538656016e7d6cddf4233d5b","author":{"email":"6172ee6f49fba92a5382b011a3c5c7c6295148ec@gmail.com","name":"Calen Pennington"},"message":"Merge pull request #8391 from edx/alawibaba/plat5892\n\nFirst draft.","distinct":false,"url":"https://api.github.com/repos/edx/edx-platform/commits/c1ace0448393e74b538656016e7d6cddf4233d5b"},{"sha":"7a3c1f04dd2e520102765177e57f2946e8fac3e4","author":{"email":"37d41699bdee4fcb969ca499eb0f8b82c60d59cc@edx.org","name":"Will Daly"},"message":"Merge pull request #8502 from edx/alasdair/ECOM-1724-footer-a11y-update\n\nECOM-1724 a11y footer updates","distinct":false,"url":"https://api.github.com/repos/edx/edx-platform/commits/7a3c1f04dd2e520102765177e57f2946e8fac3e4"},{"sha":"a41d9a549140ce20fa554e113d27b7d6ea20b0c1","author":{"email":"8550020ba845001be221c6f050b51a1d91b36941@edx.org","name":"Diana Huang"},"message":"Prevent duplication of tabs with different names.","distinct":false,"url":"https://api.github.com/repos/edx/edx-platform/commits/a41d9a549140ce20fa554e113d27b7d6ea20b0c1"},{"sha":"cb431ccb24ebf02ab55baf8955720203a359614b","author":{"email":"539ceab9a4c155868dd360023fd9ed09f5ff249b@crisewing.com","name":"cewing"},"message":"MIT CCX: Use CCX Keys: further revisions in response to code review\n\nonly require ccx-keys once\n\nget_current_ccx will now expect a CourseKey instance as its argument, and will raise a value error if this expectation is not met.\n\ndocument reason for local import\n\nadd special methods to pass attribute setting and deletion through to the wrapped modulestore\n\nadd __setattr__ and __delattr__ per code review, update __init__ to work with new methods\n\nstyle change per code review\n\nclean up context manager usage as recommended by code review\n\nremove unused code and imports\n\nconvert modulestore type tests to use the `get_modulestore_type` api, remove unused imports\n\ncode quality: add docstrings\n\nincrease coverage for utils tests\n\nfix bug found in testing.\n\nincrease test coverage on modulestore wrapper\n\ncode quality fixes\n\ncode-quality: ignore import error, but mark site for future consideration","distinct":false,"url":"https://api.github.com/repos/edx/edx-platform/commits/cb431ccb24ebf02ab55baf8955720203a359614b"},{"sha":"e0dbb0758c402526d73b8c83dd7beeed565b4eea","author":{"email":"bfd180c46ce521d3df435dc7fe07429ccb38a403@edx.org","name":"Sarina Canelake"},"message":"Update translations (autogenerated message)","distinct":false,"url":"https://api.github.com/repos/edx/edx-platform/commits/e0dbb0758c402526d73b8c83dd7beeed565b4eea"},{"sha":"8af8d257c914521de581bc9827376ad1227c1215","author":{"email":"bfd180c46ce521d3df435dc7fe07429ccb38a403@edx.org","name":"Sarina Canelake"},"message":"Merge pull request #8508 from edx/sarina/20150612-update-translations\n\nUpdate translations (autogenerated message)","distinct":false,"url":"https://api.github.com/repos/edx/edx-platform/commits/8af8d257c914521de581bc9827376ad1227c1215"},{"sha":"b4c4e818d7f45d71bb9e4f57bc5114d2eb671486","author":{"email":"0582c5011296bfe1139e34abde9f2455d4c32a9d@edx.org","name":"Ben Patterson"},"message":"Merge pull request #8493 from edx/benp/allow-for-flaky-jun2015\n\nMake addCleanup idempotent.","distinct":false,"url":"https://api.github.com/repos/edx/edx-platform/commits/b4c4e818d7f45d71bb9e4f57bc5114d2eb671486"},{"sha":"c31a5106079424e9947bcff907456873c088a363","author":{"email":"37d41699bdee4fcb969ca499eb0f8b82c60d59cc@edx.org","name":"Will Daly"},"message":"Deprecate course details API v0","distinct":false,"url":"https://api.github.com/repos/edx/edx-platform/commits/c31a5106079424e9947bcff907456873c088a363"},{"sha":"21e338f74318e902a80c66040f0bede511f35748","author":{"email":"a4101abcb5ff3f2bf70ab1a6ec15ef1f131e74fc@gmail.com","name":"Adam"},"message":"Merge pull request #8506 from edx/diana/fix-tab-duplication\n\nPrevent duplication of tabs with different names.","distinct":false,"url":"https://api.github.com/repos/edx/edx-platform/commits/21e338f74318e902a80c66040f0bede511f35748"}]}