{"push_id":641480568,"size":34,"distinct_size":3,"ref":"refs/heads/dont_lock_answers_until_due_date","head":"cf0608966dcec33094e3180991be47e7a07c8b67","before":"d7f8e9c34c4d09b23a147f0c41a52c8dc6b957e1","commits":[{"sha":"ecb618c2aae1cc560db7ddf576e068455beafd77","author":{"email":"0403b005976ebd55332535cafe60440eab31f547@rice.edu","name":"Dante Soares"},"message":"Support ETags based on the updated_at timestamp and support If-Modified-Since for Tasks and TaskSteps","distinct":false,"url":"https://api.github.com/repos/Dantemss/tutor-server/commits/ecb618c2aae1cc560db7ddf576e068455beafd77"},{"sha":"c977cf296b6b6ec173993e5ec862f7e72fd31dc4","author":{"email":"0403b005976ebd55332535cafe60440eab31f547@rice.edu","name":"Dante Soares"},"message":"TaskStep now also touches the Tasked (since they are displayed together)","distinct":false,"url":"https://api.github.com/repos/Dantemss/tutor-server/commits/c977cf296b6b6ec173993e5ec862f7e72fd31dc4"},{"sha":"edb03df86c5d0e05ec71ca2890af0f9bd8b8b663","author":{"email":"0403b005976ebd55332535cafe60440eab31f547@rice.edu","name":"Dante Soares"},"message":"Changed after_save to after_update and added more safeguards","distinct":false,"url":"https://api.github.com/repos/Dantemss/tutor-server/commits/edb03df86c5d0e05ec71ca2890af0f9bd8b8b663"},{"sha":"338f1365dc2075bd2b549f6c2e07a8f54e97bb9a","author":{"email":"0403b005976ebd55332535cafe60440eab31f547@rice.edu","name":"Dante Soares"},"message":"Added a couple of specs to ensure that saving steps will invalidate the task's cache","distinct":false,"url":"https://api.github.com/repos/Dantemss/tutor-server/commits/338f1365dc2075bd2b549f6c2e07a8f54e97bb9a"},{"sha":"b0f395465fd1df7aed915b8ecb9c82d754c512f1","author":{"email":"3d07a85bcf8c861e99d9e9b5021708e397105dd4@gmail.com","name":"JP Slavinsky"},"message":"Merge pull request #204 from Dantemss/etags\n\nStrong ETag and If-Modified-Since","distinct":false,"url":"https://api.github.com/repos/Dantemss/tutor-server/commits/b0f395465fd1df7aed915b8ecb9c82d754c512f1"},{"sha":"540d87067f780162b516313c23191bbb7c9af994","author":{"email":"0403b005976ebd55332535cafe60440eab31f547@rice.edu","name":"Dante Soares"},"message":"Added prototype entity class","distinct":false,"url":"https://api.github.com/repos/Dantemss/tutor-server/commits/540d87067f780162b516313c23191bbb7c9af994"},{"sha":"8f3dd8aff511cc5c88cbfff3b34e4b8ee3ce1d22","author":{"email":"0403b005976ebd55332535cafe60440eab31f547@rice.edu","name":"Dante Soares"},"message":"Moved initialize out of protected, since it's always private","distinct":false,"url":"https://api.github.com/repos/Dantemss/tutor-server/commits/8f3dd8aff511cc5c88cbfff3b34e4b8ee3ce1d22"},{"sha":"54e2f308bf322a03bec361c7fa5e8b798ab9c21b","author":{"email":"0403b005976ebd55332535cafe60440eab31f547@rice.edu","name":"Dante Soares"},"message":"Finished Entity base class; Moved it to the lib folder; Started working on wrapping Exercise","distinct":false,"url":"https://api.github.com/repos/Dantemss/tutor-server/commits/54e2f308bf322a03bec361c7fa5e8b798ab9c21b"},{"sha":"df2ed5b9f3bb17c04842e9de1bbd37f8d9298667","author":{"email":"0403b005976ebd55332535cafe60440eab31f547@rice.edu","name":"Dante Soares"},"message":"Fixed several corner cases for the wrapper; Fixed some specs","distinct":false,"url":"https://api.github.com/repos/Dantemss/tutor-server/commits/df2ed5b9f3bb17c04842e9de1bbd37f8d9298667"},{"sha":"cebc9f2c9a81557946aa500b9eae44c1a2f4fe77","author":{"email":"0403b005976ebd55332535cafe60440eab31f547@rice.edu","name":"Dante Soares"},"message":"More spec fixes","distinct":false,"url":"https://api.github.com/repos/Dantemss/tutor-server/commits/cebc9f2c9a81557946aa500b9eae44c1a2f4fe77"},{"sha":"44394f41fdaba2d7565f70906be3bb92a283dd51","author":{"email":"0403b005976ebd55332535cafe60440eab31f547@rice.edu","name":"Dante Soares"},"message":"Added TaskedExercise wrapper; Fixed old specs","distinct":false,"url":"https://api.github.com/repos/Dantemss/tutor-server/commits/44394f41fdaba2d7565f70906be3bb92a283dd51"},{"sha":"dcbd034840401fc2d836debcf5a54f35c09789fb","author":{"email":"0403b005976ebd55332535cafe60440eab31f547@rice.edu","name":"Dante Soares"},"message":"Some small fixes","distinct":false,"url":"https://api.github.com/repos/Dantemss/tutor-server/commits/dcbd034840401fc2d836debcf5a54f35c09789fb"},{"sha":"97e3f33b700a02af1e40cd77a3908c47c7aae813","author":{"email":"0403b005976ebd55332535cafe60440eab31f547@rice.edu","name":"Dante Soares"},"message":"Post-rebase fixes","distinct":false,"url":"https://api.github.com/repos/Dantemss/tutor-server/commits/97e3f33b700a02af1e40cd77a3908c47c7aae813"},{"sha":"56b1ea063c74773544acced9a375911725398453","author":{"email":"0403b005976ebd55332535cafe60440eab31f547@rice.edu","name":"Dante Soares"},"message":"Added some comments to Entity and optimized some code","distinct":false,"url":"https://api.github.com/repos/Dantemss/tutor-server/commits/56b1ea063c74773544acced9a375911725398453"},{"sha":"d02b2416694a4cbe5ef402821c09ef609e5cf6f1","author":{"email":"0403b005976ebd55332535cafe60440eab31f547@rice.edu","name":"Dante Soares"},"message":"Moved representers into the Tasks subsystem per Kevin's suggestion","distinct":false,"url":"https://api.github.com/repos/Dantemss/tutor-server/commits/d02b2416694a4cbe5ef402821c09ef609e5cf6f1"},{"sha":"c822cbba7f0c4a006fa9ebdae4adcdaa04fc2997","author":{"email":"0403b005976ebd55332535cafe60440eab31f547@rice.edu","name":"Dante Soares"},"message":"Moved recover/refresh routines into the Tasks subsystem","distinct":false,"url":"https://api.github.com/repos/Dantemss/tutor-server/commits/c822cbba7f0c4a006fa9ebdae4adcdaa04fc2997"},{"sha":"b8f0ec93339d5b3b18eff223da62d9904163bb93","author":{"email":"0403b005976ebd55332535cafe60440eab31f547@rice.edu","name":"Dante Soares"},"message":"Set Entity::Relation repository as readonly","distinct":false,"url":"https://api.github.com/repos/Dantemss/tutor-server/commits/b8f0ec93339d5b3b18eff223da62d9904163bb93"},{"sha":"9e113eb8b6f009531b1ba56fddec2ca43c1066a5","author":{"email":"0403b005976ebd55332535cafe60440eab31f547@rice.edu","name":"Dante Soares"},"message":"Removed passthrough; removed reliance on method_missing; Fixed sprint 10 task","distinct":false,"url":"https://api.github.com/repos/Dantemss/tutor-server/commits/9e113eb8b6f009531b1ba56fddec2ca43c1066a5"},{"sha":"522ec01b9412359f22b7ca824b856133002ce958","author":{"email":"0403b005976ebd55332535cafe60440eab31f547@rice.edu","name":"Dante Soares"},"message":"Removed TaskedExercise entity","distinct":false,"url":"https://api.github.com/repos/Dantemss/tutor-server/commits/522ec01b9412359f22b7ca824b856133002ce958"},{"sha":"9c40503128e2ae1a65633368ed82be120bd53f79","author":{"email":"0403b005976ebd55332535cafe60440eab31f547@rice.edu","name":"Dante Soares"},"message":"Fixed RepresenterMapper; Renamed XTaskedExercise routines to XTaskStep","distinct":false,"url":"https://api.github.com/repos/Dantemss/tutor-server/commits/9c40503128e2ae1a65633368ed82be120bd53f79"}]}