Skip to content

Commit

Permalink
Merge branch 'develop' into rules-json
Browse files Browse the repository at this point in the history
Conflicts:
	core/controllers/editor.py
	core/domain/rule_domain_test.py
	core/templates/dev/head/editor/EditorServices.js
	core/tests/protractor_utils/editor.js
	extensions/rules/code_evaluation.py
  • Loading branch information
wxyxinyu committed May 11, 2016
2 parents 2b40b06 + 1dac7b4 commit f30e4f3
Show file tree
Hide file tree
Showing 364 changed files with 10,640 additions and 4,103 deletions.
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -13,5 +13,4 @@ venv/
*.db
.DS_Store
.idea
static/images/splash/*
.vagrant/*
3 changes: 3 additions & 0 deletions .pylintrc
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,9 @@ good-names=e,_,d,f,i,l,p,w,fn,fs,id,pc,sc,zf,setUp,tearDown,longMessage,maxDiff
# Regex for dummy variables (to prevent 'unused argument' errors)
dummy-variables-rgx=_|unused_*

# Regular expression which should match good variable names
variable-rgx=[a-z_]+

[DESIGN]

# Minimum number of public methods for a class (see R0903).
Expand Down
64 changes: 51 additions & 13 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,25 +1,40 @@
sudo: required
# In order to install Chrome stable we need trusty distribution.
dist: trusty
language: python

python:
- 2.7

addons:
firefox: latest
apt:
sources:
- google-chrome
packages:
- google-chrome-stable
- google-chrome-beta

branches:
only:
- master
- develop

env:
- RUN_BACKEND_TESTS=false RUN_FRONTEND_TESTS=false RUN_LINT=true REPORT_BACKEND_COVERAGE=false
- RUN_BACKEND_TESTS=false RUN_FRONTEND_TESTS=true RUN_LINT=false REPORT_BACKEND_COVERAGE=false
- RUN_BACKEND_TESTS=true RUN_FRONTEND_TESTS=false RUN_LINT=false REPORT_BACKEND_COVERAGE=false
- RUN_BACKEND_TESTS=true RUN_FRONTEND_TESTS=false RUN_LINT=false REPORT_BACKEND_COVERAGE=true


matrix:
- RUN_LINT=true
- RUN_FRONTEND_TESTS=true
- RUN_E2E_TESTS_EDITOR=true
- RUN_E2E_TESTS_EXTENSIONS=true
- RUN_E2E_TESTS_LIBRARY=true
- RUN_E2E_TESTS_MISC=true
- RUN_BACKEND_TESTS=true REPORT_BACKEND_COVERAGE=false
- RUN_BACKEND_TESTS=true REPORT_BACKEND_COVERAGE=true
matrix:
allow_failures:
# The backend tests, with coverage, take too long to run, so we make this
# optional.
- env: RUN_BACKEND_TESTS=true RUN_FRONTEND_TESTS=false RUN_LINT=false REPORT_BACKEND_COVERAGE=true
- env: RUN_BACKEND_TESTS=true REPORT_BACKEND_COVERAGE=true
fast_finish: true

notifications:
Expand All @@ -30,10 +45,23 @@ notifications:
- [email protected]
on_success: change
on_failure: change
irc:
channels:
- chat.freenode.net#oppia
on_success: never
on_failure: always
webhooks:
urls:
# This URL can be obtained by going to the Gitter chat room
# and clicking Settings > Integrations.
- https://webhooks.gitter.im/e/f8f782497ec1ffcea2e7
on_success: always
on_failure: always

before_install:
- pip install codecov
- export CHROME_BIN=chromium-browser
- pip install numpy==1.6.1
- export CHROME_BIN=/usr/bin/google-chrome-stable
- export DISPLAY=:99.0
- bash -e /etc/init.d/xvfb start

Expand All @@ -42,13 +70,12 @@ install:
- pushd $TRAVIS_BUILD_DIR
- source scripts/setup.sh || exit 1
- source scripts/setup_gae.sh || exit 1
- mkdir -p $GOOGLE_APP_ENGINE_HOME
- curl --silent https://storage.googleapis.com/appengine-sdks/deprecated/1919/google_appengine_1.9.19.zip
-o gae-download.zip
- unzip -qq gae-download.zip -d $TOOLS_DIR/google_appengine_1.9.19/
- rm gae-download.zip

script:
- if [ $RUN_E2E_TESTS_EDITOR == 'true' ]; then bash scripts/run_e2e_tests.sh --suite="editor"; fi
- if [ $RUN_E2E_TESTS_EXTENSIONS == 'true' ]; then bash scripts/run_e2e_tests.sh --suite="extensions"; fi
- if [ $RUN_E2E_TESTS_LIBRARY == 'true' ]; then bash scripts/run_e2e_tests.sh --suite="library"; fi
- if [ $RUN_E2E_TESTS_MISC == 'true' ]; then bash scripts/run_e2e_tests.sh --suite="misc"; fi
- if [ $RUN_BACKEND_TESTS == 'true' ] && [ $REPORT_BACKEND_COVERAGE == 'true' ]; then bash scripts/run_backend_tests.sh --generate_coverage_report; fi
- if [ $RUN_BACKEND_TESTS == 'true' ] && [ $REPORT_BACKEND_COVERAGE == 'false' ]; then bash scripts/run_backend_tests.sh; fi
- if [ $RUN_LINT == 'true' ]; then bash scripts/install_third_party.sh; python scripts/pre_commit_linter.py --path=.; fi
Expand All @@ -59,3 +86,14 @@ script:
after_success:
- if [ $RUN_BACKEND_TESTS == 'true' ] && [ $REPORT_BACKEND_COVERAGE == 'true' ]; then codecov; fi
- if [ $RUN_FRONTEND_TESTS == 'true' ]; then codecov --file ../karma_coverage_reports/coverage-final.json; fi

cache:
# Cache Oppia's dependencies.
directories:
- ../node_modules/
- ../oppia_tools/
- third_party/

before_cache:
# Delete python bytecode to prevent cache rebuild.
- find third_party -name "*.pyc" -print -delete
19 changes: 19 additions & 0 deletions AUTHORS
Original file line number Diff line number Diff line change
Expand Up @@ -8,22 +8,28 @@
#
# Please keep the list sorted alphabetically.

Abhijit Suresh <[email protected]>
Alex Gower <[email protected]>
Allan Zhou <[email protected]>
Andrew Low <[email protected]>
Andrey Mironyuk <[email protected]>
Arun Kumar <[email protected]>
Avijit Gupta <[email protected]>
Barnabas Makonda <[email protected]>
Ben Targan <[email protected]>
Bolaji Fatade <[email protected]>
Brenton Briggs <[email protected]>
Charisse De Torres <[email protected]>
Chase Albert <[email protected]>
Chin Zhan Xiong <[email protected]>
Debanshu Bhaumik <[email protected]>
Deepank Agarwal <[email protected]>
Edward Allison <[email protected]>
Estelle Lee <[email protected]>
Frederik Creemers <[email protected]>
Google Inc.
Grace Guo <[email protected]>
Hitesh Sharma <[email protected]>
Jacob Davis <[email protected]>
Jakub Osika <[email protected]>
Jasper Deng <[email protected]>
Expand All @@ -32,30 +38,43 @@ Jérôme (zolk232) <[email protected]>
Jerry Chen <[email protected]>
Joshua Lusk <[email protected]>
Karen Rustad <[email protected]>
Kenneth Ho <[email protected]>
Kerry Wang <[email protected]>
Kevin Lee <[email protected]>
Kristin Anthony <[email protected]>
Kumari Shalini <[email protected]>
Marcel Schmittfull <[email protected]>
Mark Cabanero <[email protected]>
Mark Halpin <[email protected]>
Michael Mossey <[email protected]>
Michael Wagner <[email protected]>
Milagro Teruel <[email protected]>
Mungo Dewar <[email protected]>
Oskar Cieslik <[email protected]>
Oswell Chan <[email protected]>
Owen Parry <[email protected]>
Philip Hayes <[email protected]>
Prasanna Patil <[email protected]>
Raine Hoover <[email protected]>
Rajat Patwa <[email protected]>
Reto Brunner <[email protected]>
Richard Cho <[email protected]>
Samara Trilling <[email protected]>
Santos Hernandez <[email protected]>
Sanyam Khurana <[email protected]>
Satwik Kansal <[email protected]>
Scott Junner <[email protected]>
Shafqat Dulal <[email protected]>
Shouvik Roy <[email protected]>
Sourav Badami <[email protected]>
Sreenivasulu Giritheja <[email protected]>
Tarashish Mishra <[email protected]>
Travis Shafer <[email protected]>
Tuguldur Baigalmaa <[email protected]>
Umesh Singla <[email protected]>
Viraj Prabhu <[email protected]>
Vishal Gupta <[email protected]>
Xinyu Wu <[email protected]>
Yi Yan <[email protected]>
Yousef Hamza <[email protected]>
Zoe Madden-Wood <[email protected]>
151 changes: 151 additions & 0 deletions CHANGELOG
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,157 @@ This file contains a summary of changes to the Oppia code base. For a full chang

https://github.com/oppia/oppia/commits/master

v2.2.0 (7 May 2016)
-------------------
Overall site design and navigation:
* Fix #1510: separate the library page from the splash page.
* Clicking on the logo at the top left redirects to the appropriate home page.
* Fix #1075: use material icons instead of glyphicons.
* Fix #1615: add a footer to all informational pages on the site

Splash page:
* Redesign the splash page.

Library page:
* Rename 'gallery' to 'library' throughout the codebase.
* Add an index page with explorations in different categories.
* Fix #1360: add a separate category for featured explorations.
* Fix #1681: redesign the number-of-contributors indicator on the exploration summary tiles.
* Create new category icons.
* Reduce the number of categories in the category dropdown menu.
* Add stable URLs for search result pages.
* Redesign the 'loading more results' indicator.

Editor page:
* Redesign the editor onboarding flow.
* Fix #1537: send an email when a user is granted new rights to an exploration.
* Fix (part of) #798: clarify the message shown when an interaction is missing.
* Fix #1679: in the editor view, prevent the feedback tab overlapping the sign-in menu.
* Reduce the widths of the editor tabs.
* Tidy up the save/publish button styling in the navbar.
* Fix #1676: remove the small gap between the "Save Draft" and "Discard Draft" buttons.
* Remove the visibility toggle for private explorations from the Settings tab.
* Fix a bug in getEditorTabContext() that resulted in incorrect detection of the editor preview mode.
* Fix #1788: correctly align parameter input fields in Firefox.

Learner:
* Fix #1497: ensure that the inter-paragraph spacing behaves correctly.
* Fix #1678: prevent share links from being squashed in the information card.

Interactions:
* CodeRepl:
- Fix #1682: add an OutputContains rule.
- Fix #1671: make text highlighting visible.
- Fix #1767: add a 'test run' button.
- Fix a bug where the error message displayed in the user-facing console was not updated promptly.

Rich-text editor:
* Add indent/outdent functionality.
* Add block-style previews for some RTE components.
* Fix #914: remove the RTE icon resize handlebars in Firefox.

Profile page:
* Fix #1350: redesign the profile page to include a portfolio section and display responsively.
* Fix #1544: Fetch Gravatar images or identicons when a new user signs up.

Other pages:
* Fix #1703 (preferences page): fix the preferred languages dropdown width.
* Fix #1712 (admin page): add a navigation bar, and separate the page into different categories.
* "My explorations" page:
- Autofocus correctly when the 'create exploration' modal is opened.
- Redesign the page to be more useful to new creators.
- Show a more informative status ("Published" instead of "Good") for published explorations that have no unresolved feedback messages.

Developer workflow:
* Fix #995: add Protractor e2e tests to Travis-CI.
* Improve Travis-CI build times by caching specific directories.
* Fix #1717: enforce correct permissions on the node_modules/ dir in Vagrant.

Infrastructure and tests:
* Update protractor to 3.3.0.
* Fix #1434: replace deprecated $http.success & $http.error with $http.then.
* Fix #1369: add a domain layer for objects related to feedback threads.
* Fix #1729: add tests for summary_services.py.
* Add analytics events for buttons on the splash page, and for opening the 'publish exploration' modal.


v2.1.5 (3 Apr 2016)
-------------------
Overall site design and navigation:
* Fix #1347: redesign the navbar, and include a "create" button on more pages.
* Fix #1533: make "My Explorations" the homepage for logged-in users.
* Fix #1531: introduce an alertsService to display warnings and transitory info messages.
* Fix #1622: replace PNG images with icon fonts (where possible) to improve performance.

Gallery page:
* Fix #1617: add a "deselect all" option in the category and language selectors in the search bar.
* Fix #1550: return profile pictures together with the other data in the exploration summary tiles, in order to avoid multiple unnecessary fetches to the server.
* Fix #1543: for community-editable explorations, the first avatar in the exploration summary tile should be a globe.
* Fix #1668: reinstate the search loading indicator.
* Fix #1529: truncate long usernames in the gallery card tooltips so that they don't overflow.
* Create new directives for the search bar and the grid of exploration summary tiles.

Editor page:
* Fix #473: changing the rule type should preserve existing rule input fields, whenever possible.
* Fix #1613: after publishing, creators should be encouraged to share their explorations.
* Fix #1575: correctly restore the "Save Draft" button after the user tries to save changes that have no net effect.
* Fix #1656: fix alignment of status and state in feedback/suggestion threads.
* Fix #1370: show the number of open feedback/suggestion threads in the exploration editor navbar.
* Fix #1566: clicking the edit icons in the Oppia response editor should open up the response editor.
* Generate default rule input values in the backend and send these to the frontend, thus reducing the need for the core code to special-case on particular interaction ids.
* Fix #1536: within the multiple-choice option dropdown in the rule selector, images should not overlap.
* Partially address #1287: implement a storage layer to support auto-saving of drafts.
* Remove unnecessary two-way binding in the rule type dropdown selector.

Learner page:
* Fix #1637: prevent the feedback popup from overflowing off the screen.
* Increase the size of the first avatar on each exploration card.
* Adjust the progress-dot tooltips to point towards the left.

Interactions:
* CodeRepl: display underscores correctly in the code editor.
* ItemSelectionInput: make the UI more similar to that of MultipleChoiceInput.
* LogicProof: update the Angular reference in the JavaScript generating helper file.
* PencilCodeEditor: hide the Pencil Code error console.
* SetInput: remove the error that arises in the editor when trying to add an element to a rule input.
* SetInput: explicitly instruct the learner to add one item per line.
* TextInput: always show the "submit" button.

Rich-text editor:
* Fix #945: improve the rich-text editor performance by removing unnecessary internal $watch statements.
* Fix #448: redesign the icons for all the RTE components.
* Fix #1534: prevent long math LaTeX formulas from spilling out of the rule selector dropdown.
* Fix #1496: ensure that videos stay within their container when they are inserted into a Collapsible RTE component.

Collections:
* Fix #1564: make it possible to unpublish collections.
* Fix #1649: pass num_views to collection learner view
* Fix #1216: fix the display of the collection viewer tiles on small screens.
* Add collection editor frontend and backend controllers, so that the collection editor is fully functional.

Other pages:
* Fix #1288 (profile page): redesign the calculation of the impact score.
* Fix #1368 (notifications page): make the page display correctly on small screens.
* Fix #1628 ("my explorations" page): ensure that the "Unresolved Feedback" status message does not overflow the exploration card.
* Fix #1633 (about page): reinstate the missing "Oppia Foundation" anchor.
* Fix #1631 (privacy page): de-italicize the text in the sidebar.

Developer workflow:
* Install XVFB and adjust setup.sh to prepend xvfb-run to frontend test commands for developers who are using Vagrant.
* Fix #1568: add an error message if the GAE download via curl fails.
* Fix #1488: make the pre_push hook switch to the correct branch before linting.
* Update run_frontend_tests.sh to not run the minified tests by default, and add an optional flag to skip the installation process. These two flags together significantly speed up running the frontend tests.
* Fix #1643: report build status on gitter and IRC.
* Update the README to point to the new IRC channel.

Infrastructure and tests:
* Fix #1504: update textAngular to v1.4.5, and add Rangy (v1.3.0) as a third-party dependency.
* Fix #1416: guard against the backend sending duplicate emails.
* Fix #1579: introduce a standard naming scheme for example users in the Protractor tests.
* Add an analytics event for new signups.
* Remove all author tags from the codebase.


v2.1.4 (28 Feb 2016)
--------------------
Learner page:
Expand Down
Loading

0 comments on commit f30e4f3

Please sign in to comment.