Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Develop <- v0.14.x #7184

Merged
merged 272 commits into from
Jul 2, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
272 commits
Select commit Hold shift + click to select a range
b748c82
Break apart the ImportFacilityModalGroup
jonboiser Jun 16, 2020
783d9a3
Integrate SyncAllModal with backend
jonboiser Jun 16, 2020
dc2ebb6
Merge remote-tracking branch 'origin/release-v0.14.x' into peer-sync-…
jonboiser Jun 16, 2020
ddc4d40
topic page heading, channelcard use kgrid
nucleogenesis Jun 16, 2020
3c45240
Merge pull request #7050 from jredrejo/remove_chrome_autofilling
indirectlylit Jun 17, 2020
b6f9c7d
Merge pull request #6917 from bjester/app-support-keyboard-change
indirectlylit Jun 17, 2020
a505f69
Merge pull request #6996 from nucleogenesis/mobile-gestures
indirectlylit Jun 17, 2020
fb8a105
Integrate FacilityTasksPage with backend
jonboiser Jun 17, 2020
3abad8f
Merge remote-tracking branch 'le/app-support' into merge-app
indirectlylit Jun 17, 2020
1db18cc
Merge pull request #7069 from indirectlylit/merge-app
indirectlylit Jun 17, 2020
86cd4d7
Update Python version at the build_windows dockerfile
mrpau-richard Jun 17, 2020
a3b8015
Update Windows Installer to v1.4.0-beta2
mrpau-richard Jun 17, 2020
cd0d118
I added a comment to re-build the PR.
mrpau-richard Jun 17, 2020
36535cc
Merge pull request #7072 from mrpau/feature/upgrade-windows-python-to…
cpauya Jun 17, 2020
d41d128
Using requirements file rather than inline dependency definition
DXCanas Jun 16, 2020
41adf77
Making release upload requirements less ambiguous.
DXCanas Jun 16, 2020
eb4968d
Pinning dependencies.
DXCanas Jun 16, 2020
1758cb1
Dockerize integration test worksheet
DXCanas Jun 16, 2020
d722af3
Use python modules to encode SQLAlchemy content schema instead of bin…
rtibbles Jun 5, 2020
0e8c292
Upgrade SQLAlchemy.
rtibbles Jun 5, 2020
8822c7e
Linting.
rtibbles Jun 17, 2020
148a6e3
Reorganize setup wizard APIs
jonboiser Jun 17, 2020
173f0e5
Update the FacilitiesTask UIs
jonboiser Jun 17, 2020
a35fd43
Simplify Store deletion, remove DatabaseMaxCounter records, clear cache
bjester Jun 17, 2020
6ac2c9d
Remove unnecessary line
jonboiser Jun 17, 2020
47a3522
Update for Import Tasks
jonboiser Jun 17, 2020
61c834f
Add more metadata to tasks
jonboiser Jun 17, 2020
b77d4d2
Merge remote-tracking branch 'origin/release-v0.14.x' into peer-sync-…
jonboiser Jun 17, 2020
b371a18
Bind mounting dir with gdrive auth
DXCanas Jun 16, 2020
88b7d6d
Correcting faulty conditional logic for TAG_NAME definition.
DXCanas Jun 17, 2020
58cee7d
Clean up intermediary iid file on script exit as well
DXCanas Jun 17, 2020
30eba8b
Do not bootstrap all users on device at Sign In
nucleogenesis Jun 11, 2020
43a84fc
remove console.log
nucleogenesis Jun 11, 2020
9680f26
backend lint that pre-commit did not catch
nucleogenesis Jun 11, 2020
6db565d
More efficient queries
nucleogenesis Jun 12, 2020
d3360e2
move Facility queries into api
nucleogenesis Jun 12, 2020
b34daf4
last_synced to values from field_map
nucleogenesis Jun 12, 2020
0a4fa59
begin accounting for new backend
nucleogenesis Jun 12, 2020
225b5a4
map dataset to facility, wire up frontend
nucleogenesis Jun 12, 2020
ec31d8e
DRY it up a bit for your reading and viewing pleasure
nucleogenesis Jun 15, 2020
a3cb425
remove junk, avoid unnecessary api call
nucleogenesis Jun 15, 2020
83e43eb
tox lint fix
nucleogenesis Jun 15, 2020
dd10cc2
cast dataset uuid to UUIDField
nucleogenesis Jun 17, 2020
e1f40aa
cast dataset uuid to TextField
nucleogenesis Jun 17, 2020
7ce5435
Move facility tasks stuff to a mixin
jonboiser Jun 17, 2020
ee7003c
clearer comment about the patch code
nucleogenesis Jun 17, 2020
9f5298b
Show “Removing facility” indicator
jonboiser Jun 17, 2020
5f36867
top spacing for control bar
nucleogenesis Jun 17, 2020
095e00a
kbutton group added to FacilitiesPage
nucleogenesis Jun 17, 2020
0eada83
kbuttongroup added again to device > facilities page
nucleogenesis Jun 17, 2020
201e8c7
kbuttongroup added in userpermissionspage
nucleogenesis Jun 17, 2020
a0322d9
kbuttongroup added in setup wizard SetupMethod form
nucleogenesis Jun 17, 2020
18517ee
Merge pull request #7074 from nucleogenesis/pdf-renderer-button-spacing
indirectlylit Jun 17, 2020
b5f85f0
Formatting
jonboiser Jun 17, 2020
6bcac76
Add facility task management functions
jonboiser Jun 17, 2020
17e393b
Merge remote-tracking branch 'origin/release-v0.14.x' into peer-sync-…
jonboiser Jun 18, 2020
869b6bb
Removing faulty reassignment of TAG_NAME
DXCanas Jun 17, 2020
9bbed57
layout: spacing and flow on signin page
nucleogenesis Jun 18, 2020
3409c9d
Fix task API tests
jonboiser Jun 18, 2020
91a70d7
Fix JS tests
jonboiser Jun 18, 2020
480d367
Use crosscomponent translator to get empty task message
jonboiser Jun 18, 2020
aed0827
Fix test
jonboiser Jun 18, 2020
2d5f40b
Fix the generateuserdata errors in command prompt on windows. Use th…
cpauya Jun 18, 2020
994ef5e
Merge pull request #6994 from rtibbles/non_binary_schema
indirectlylit Jun 18, 2020
364473b
Merge pull request #7073 from DXCanas/build-test-dockerize-worksheet
DXCanas Jun 18, 2020
5ed43c6
tweak to fix regression in search styling
indirectlylit Jun 18, 2020
817a298
Merge pull request #7075 from nucleogenesis/kds-0.14-fixes
indirectlylit Jun 18, 2020
3a74012
Merge pull request #7078 from mrpau/hotfix/7077-fix-generateuserdata-…
indirectlylit Jun 18, 2020
e404c44
Merge pull request #7082 from learningequality/release-v0.12.x
indirectlylit Jun 18, 2020
42a8d88
modify available_languages since ach-ug has been added in language_in…
lyw07 Jun 18, 2020
1b8fed6
latest translations from Crowdin
lyw07 Jun 18, 2020
7519836
Merge remote-tracking branch 'LE/release-v0.13.x' into LE/release-v0.…
DXCanas Jun 18, 2020
afbb27d
Removing extra windows step.
DXCanas Jun 18, 2020
c4187ec
fix linting error
lyw07 Jun 18, 2020
06891a5
Merge branch 'release-v0.14.x' into peer-sync-ui-integration
lyw07 Jun 18, 2020
79d80cf
Merge remote-tracking branch 'le/release-v0.14.x' into taglines-frontend
indirectlylit Jun 18, 2020
c6609b0
Adding extra line for flake8 formatting
DXCanas Jun 18, 2020
c1dfb2a
update styles
indirectlylit Jun 18, 2020
af89494
Merge pull request #7061 from nucleogenesis/taglines-frontend
indirectlylit Jun 18, 2020
6ea6776
exclude ach-ug when generating intl-locale-data.js and vue-intl-local…
lyw07 Jun 18, 2020
3c71389
Merge pull request #7076 from jonboiser/peer-sync-ui-integration
lyw07 Jun 18, 2020
b61f289
Merge pull request #7084 from lyw07/new-strings
lyw07 Jun 18, 2020
6979d06
Merge pull request #7085 from DXCanas/dockerize-integration-worksheet
DXCanas Jun 18, 2020
ebc8ea1
fix font pointer issues
nucleogenesis Jun 18, 2020
923891d
double-oops more stuff that should have been removed
nucleogenesis Jun 18, 2020
5715178
Renaming file so that dependencies are actually pinned.
DXCanas Jun 18, 2020
cf3e358
handle numpad enter
indirectlylit Jun 18, 2020
5720e77
Merge pull request #7094 from DXCanas/actually-pin-dependencies
DXCanas Jun 18, 2020
0c4cf33
move monkey patch to core/models
nucleogenesis Jun 19, 2020
fc488f8
Merge pull request #7096 from learningequality/release-v0.12.x
indirectlylit Jun 19, 2020
8cc31b0
Merge pull request #7092 from nucleogenesis/woff-pointers
indirectlylit Jun 19, 2020
5dbe1e6
Merge pull request #7037 from nucleogenesis/do-not-bootstrap-every-us…
indirectlylit Jun 19, 2020
afbfb4c
Don't show the password input if the username is not correctly validated
Jun 19, 2020
edc07ee
Removing windows signing step assumption from upload script Step was …
DXCanas Jun 19, 2020
fcee3dd
Merge pull request #7105 from DXCanas/remove-signed-exe-assumption
DXCanas Jun 19, 2020
b3bfc1b
render view and get plugin_data into etag
nucleogenesis Jun 19, 2020
fe997ef
Merge pull request #7104 from learningequality/release-v0.13.x
DXCanas Jun 19, 2020
c1a1b2a
latest strings
indirectlylit Jun 22, 2020
273d5d4
rename i18n-update to i18n-download
indirectlylit Jun 22, 2020
f5847c4
do not internationalize collection kind names
indirectlylit Jun 22, 2020
68f7026
don't save selectedListUser if not username is given
Jun 22, 2020
f137e08
Assessment data is correctly added to the fetch request
Jun 22, 2020
6c8cf86
Merge pull request #7110 from indirectlylit/rename-command
jonboiser Jun 22, 2020
8fac17a
Merge pull request #7106 from learningequality/release-v0.12.x
DXCanas Jun 22, 2020
3ed929a
Forcing GH upload step to use Vader
DXCanas Jun 22, 2020
102de30
Merge pull request #7119 from DXCanas/upload-on-vader-preference
DXCanas Jun 22, 2020
a778e9d
Merge remote-tracking branch 'LE/release-v0.10.x' into upload-on-vade…
DXCanas Jun 22, 2020
3b290d3
Merge pull request #7126 from DXCanas/upload-on-vader-preference-0.11
DXCanas Jun 22, 2020
f0fcfcf
Merge remote-tracking branch 'LE/release-v0.11.x' into upload-on-vade…
DXCanas Jun 22, 2020
f57dccf
Merge pull request #7129 from DXCanas/upload-on-vader-preference-0.12
DXCanas Jun 23, 2020
63de69e
Merge pull request #7118 from jredrejo/fix_contentnoderesource_fetch
jredrejo Jun 23, 2020
4991c66
update kolibri version to 0.14.0 beta
lyw07 Jun 23, 2020
ff8c939
Merge pull request #7146 from lyw07/update-to-beta
jonboiser Jun 23, 2020
fd1f258
Merge remote-tracking branch 'le/release-v0.14.x' into i18n
indirectlylit Jun 23, 2020
683f810
add more strings
indirectlylit Jun 23, 2020
7ee7f5f
Merge pull request #7109 from indirectlylit/i18n
indirectlylit Jun 24, 2020
04bd64d
Use ‘facility’ icon in DeviceTopNav
jonboiser Jun 22, 2020
0e41f83
Move TaskTypes to constants file
jonboiser Jun 22, 2020
0cbd954
Rename TaskPanel.vue to FacilityTaskPanelDetails.vue (Fixes #7112)
jonboiser Jun 22, 2020
6516e13
Adjust box properties for SetupWizard pages (Fixes #7066)
jonboiser Jun 22, 2020
23be7d6
Make 0 the lower bound for visible languages in LanguageSwitcherList
jonboiser Jun 22, 2020
e53220c
Improve guard for SetupWizard beforeMount (Fixes #7068)
jonboiser Jun 23, 2020
7638180
Fix DeviceNameForm
jonboiser Jun 22, 2020
1048a6f
Fix positioning of “info” icon in CoreInfoIcon (Fixes #7070)
jonboiser Jun 22, 2020
015a442
Use BackLink in FacilityTasksPage (Fixes #7121(
jonboiser Jun 22, 2020
535974c
Use KButtonGroup in AppError (Fixes #7124)
jonboiser Jun 22, 2020
ad3871c
Use address nickname in ImportFacilityModalGroup if using static addr…
jonboiser Jun 22, 2020
edde780
If search term + filters yields no results, don’t clear out filters i…
jonboiser Jun 22, 2020
dd3d9e1
Display ’n of 4’ message for pull-tasks
jonboiser Jun 22, 2020
c708a8d
Fix status message for running DELETEFACILITY tasks
jonboiser Jun 22, 2020
86b9c66
Redirect to Tasks page after succesfully starting a facility import (…
jonboiser Jun 22, 2020
1e8fab3
Merge pull request #7133 from jonboiser/0.14b3-bug-fixes
jonboiser Jun 24, 2020
c1ac886
Merge pull request #7095 from indirectlylit/numpad
jonboiser Jun 24, 2020
7b31303
First batch
radinamatic Jun 24, 2020
eae50a5
Merge pull request #7136 from learningequality/release-v0.12.x
DXCanas Jun 24, 2020
6ae1c0a
Merge pull request #7161 from learningequality/release-v0.13.x
DXCanas Jun 24, 2020
87325ef
Force to show username validation errors when clicking next button
Jun 24, 2020
1785cd1
Rollback upload virtualenv to 3.5
DXCanas Jun 24, 2020
cd72467
Using the right data payload
Jun 24, 2020
df47692
Merge pull request #7167 from DXCanas/fix-upload-deps
DXCanas Jun 24, 2020
fdd44f8
cloning the object didn't work
Jun 24, 2020
78eacc8
Remove unneeded console.log
Jun 24, 2020
5a9b0ba
Standardizing on a release envar to use for all pipelines.
DXCanas Jun 24, 2020
61ed075
Merge pull request #7178 from learningequality/release-v0.12.x
DXCanas Jun 24, 2020
914f4f2
Merge pull request #7180 from learningequality/release-v0.13.x
DXCanas Jun 24, 2020
82b47cd
Merge pull request #7179 from DXCanas/android-trigger-envar-standardi…
DXCanas Jun 24, 2020
1491555
Improvements to facility commands
bjester Jun 24, 2020
1834070
Increase chunk size
bjester Jun 24, 2020
6718431
Merge pull request #7168 from jredrejo/axios_needs_formdata
jonboiser Jun 24, 2020
fc4f68b
Fix clear on queue/dequeue signals
bjester Jun 24, 2020
4cfffd1
Fix pre-commit errors
jonboiser Jun 24, 2020
19ee5ad
Fix flake8 error
jonboiser Jun 25, 2020
0f7d682
Merge pull request #7114 from indirectlylit/collection-kinds
jonboiser Jun 25, 2020
edbdaed
Include additional pre-aggregated stats in pingback
jamalex Jun 25, 2020
fceb5ff
Second batch
radinamatic Jun 25, 2020
6c40605
Linter
radinamatic Jun 25, 2020
9842d66
Update facility task settings
bjester Jun 25, 2020
ea88395
Update sync progress handling, UI made indeterminate for certain states
bjester Jun 25, 2020
a41de91
Make interactive facility selection message generic
bjester Jun 25, 2020
db01216
Update morango to latest
bjester Jun 25, 2020
5693352
Fix cache key namespaces
bjester Jun 25, 2020
198701a
Use cross-process safe locking
bjester Jun 25, 2020
bca1f3d
add KButtonGroup to Preview Component
br-kwon Jun 25, 2020
3eedda2
add to authors.md
br-kwon Jun 24, 2020
bf22a2f
add KButtonGroup to ImportCSVPage
br-kwon Jun 24, 2020
7679955
Always use process cache to be on safe side of cross-process locking
bjester Jun 25, 2020
255ab05
Use “cancelAction” and “continueAction” on buttons
jonboiser Jun 25, 2020
85c5e8c
Merge pull request #7185 from jamalex/pingback_updates
jonboiser Jun 25, 2020
918d557
point design system at tagged release
indirectlylit Jun 25, 2020
a35eb33
Merge pull request #7187 from bjester/facility-cmd-improvements
jonboiser Jun 25, 2020
fe6b446
update to beta2
indirectlylit Jun 25, 2020
69cb1f8
caching etag
nucleogenesis Jun 25, 2020
c29707c
Merge pull request #7188 from indirectlylit/tagged-design-system
indirectlylit Jun 25, 2020
91769cb
add prop to AuthBase to hide the normal create account button
nucleogenesis Jun 25, 2020
eeff5e9
Add facilityPageLinks getter
jonboiser Jun 23, 2020
ff86e42
Replace USER_CREATE_PAGE links with UserCreatePage getter
jonboiser Jun 23, 2020
27dca73
Replace USER_EDIT_PAGE links with UserEditPage getter
jonboiser Jun 23, 2020
798cfdb
Replace USER_MGMT_PAGE links with UserPage getter
jonboiser Jun 23, 2020
9b88c5a
Replace CLASS_EDIT_MGMT_PAGE links with ClassEditPage getter
jonboiser Jun 23, 2020
7046c6b
Replace CLASS_MGMT_PAGE with ManageClassPage getter
jonboiser Jun 23, 2020
cc43ef8
Refresh core facilities list after adding/deleting a classroom
jonboiser Jun 23, 2020
eb0303e
Fix error in SyncInterface when ‘theFacility’ is undefined
jonboiser Jun 23, 2020
738ba46
Replace CLASS_ENROLL_LEARNER and CLASS_ASSIGN_COACH links with getter
jonboiser Jun 23, 2020
52ffa02
Add beforeMount guard to redirect out of AllFacilitiesPage
jonboiser Jun 23, 2020
dfec46e
Rename ‘inMultipleFacilityPage’ getter to ‘userIsMultiFacilityAdmin’
jonboiser Jun 23, 2020
2998140
Add AllFacilitiesPage to facilityPageLinks getter
jonboiser Jun 23, 2020
f97e5f0
Add ALL_FACILITIES_PAGE PageName constant
jonboiser Jun 23, 2020
3826acc
Rename ‘inMultipleFacilityPage’ to ‘userIsMultiFacilityAdmin’ in Coac…
jonboiser Jun 24, 2020
cc3710f
Add beforeMount guard to coach AllFacilitiesPage
jonboiser Jun 24, 2020
06a4e0e
Make userIsMultiFacilityAdmin a core/session getter
jonboiser Jun 24, 2020
ff18fb6
Add back arrow to “All Facilities” link
jonboiser Jun 24, 2020
56940a1
Add DATA_EXPORT, FACILITY_CONFIG, and IMPORT_CSV page to facilityPage…
jonboiser Jun 26, 2020
074eb98
Pass facility_id as a param to /tasks/importusersfromcsv
jonboiser Jun 26, 2020
552fbb6
Merge pull request #7191 from nucleogenesis/no-duplicate-create-accou…
jonboiser Jun 26, 2020
02d63dc
Group by plugin
radinamatic Jun 26, 2020
4df83ba
Main order updated with new folders
radinamatic Jun 26, 2020
f9a9797
Some minor updates.
cpauya Jun 26, 2020
2915b02
Communicate that 404 is an expected response
Jun 26, 2020
585fa60
Merge pull request #5 from mrpau/0.14-super-admin-gherkins
radinamatic Jun 26, 2020
e47ff29
Merge pull request #7166 from jonboiser/fix-all-classes-link
jonboiser Jun 26, 2020
cac2456
Defer setting default learner password until submitting form
jonboiser Jun 26, 2020
8730b12
Merge pull request #7160 from radinamatic/0.14-super-admin-gherkins
jonboiser Jun 26, 2020
b075d08
Get facilityConfig for the active facility
jonboiser Jun 26, 2020
d1095fb
Replace ‘currentFacilityId’ with activeFacilityId in facility page vu…
jonboiser Jun 26, 2020
6f31618
Hide PrivacyLinkAndModal for Personal Setup (Fixes #7183)
jonboiser Jun 26, 2020
96c5c1d
Fix redirect callback for handleSubmitUpdateYourProfileModal
jonboiser Jun 26, 2020
3a0b65b
Add method to get initialize url.
rtibbles Jun 11, 2020
c47477e
Set the app_key key value to a hex value on creation, to replicate
rtibbles Jun 26, 2020
fc743d5
Update integration testing script for new feature file name path
mrpau-richard Jun 29, 2020
373f47b
Run pre-commit
mrpau-richard Jun 29, 2020
075fa95
Merge pull request #7208 from mrpau/hotfix/update-script
mrpau-richard Jun 29, 2020
429c4c2
toolbarRoute -> returnBackRoute
Jun 29, 2020
7a7b8a5
Redirect to a list after adding/removing an item
Jun 29, 2020
971a635
Merge pull request #7198 from jonboiser/clear-admin-pw
jonboiser Jun 29, 2020
3e2212a
Merge pull request #7195 from MisRob/logging-404-expected
rtibbles Jun 29, 2020
e6d73e9
prepend our etag cache key to avoid collision
nucleogenesis Jun 29, 2020
af42b8d
Coerce generators to lists.
rtibbles Jun 29, 2020
7727eb4
Also coerce postgres ArrayAgg results to their proper Python represen…
rtibbles Jun 30, 2020
9043d27
you cannot get something from the cache without the correct key
nucleogenesis Jun 30, 2020
a2b20f3
Merge pull request #7214 from rtibbles/coerce_generators
rtibbles Jun 30, 2020
a1e2d6d
Update vue-router to 3.3.4 (Fixes #7200)
jonboiser Jun 30, 2020
321eea0
Make static symlinking check more robust.
rtibbles Jun 30, 2020
d231ee5
spacing when windowIsSmall for mobile buttons on channel import
nucleogenesis Jun 30, 2020
445a019
Select options behavior improvements
Jun 30, 2020
8898149
Consistent snackbars labels
Jun 30, 2020
f057627
Removed OIDC provider plugin because it's been built as an external p…
Jun 18, 2020
2b3b778
Merge pull request #7221 from jredrejo/remove_oidc_provider_plugin_v14
rtibbles Jun 30, 2020
2842e43
Merge pull request #7107 from nucleogenesis/etag-account-for-plugin-data
rtibbles Jun 30, 2020
43ff030
Use user ID instead of username to determine whether user is the “sam…
jonboiser Jun 24, 2020
208ecf9
Memoize the facilityName method to avoid repeat facility name look ups
jonboiser Jun 24, 2020
44cf8e9
Make test assertion order-invariant
jonboiser Jun 25, 2020
3fb26c6
Fix the AppBarTitle when in Facility > AllFacilitiesPage
jonboiser Jun 30, 2020
8cf04e8
Add jacob (nucleogenesis) to Authors
nucleogenesis Jun 30, 2020
7ab1038
Add hack to prevent undoing the removal of the 1 and only resource
jonboiser Jun 30, 2020
f4c7fdf
Merge pull request #7225 from nucleogenesis/i-am-an-author-now
jonboiser Jun 30, 2020
3bb5d96
Merge pull request #7219 from nucleogenesis/spacing-fix-buttons-devic…
jonboiser Jun 30, 2020
a16d93f
Merge pull request #7213 from MisRob/redirect-to-list-after-adding-re…
jonboiser Jun 30, 2020
434cc5e
Update content negotiation for morango operation
bjester Jun 30, 2020
9933818
Allow default parsing
bjester Jun 30, 2020
bd1fdde
Merge pull request #7029 from rtibbles/interface_initialize_url
kollivier Jun 30, 2020
d5b4c78
Remove morango renderer override
bjester Jun 30, 2020
aeb6e8e
urls object wants all dashes (or all underscores) for keys.
kollivier Jun 30, 2020
eed1cf2
Merge pull request #7102 from jredrejo/show_password_if_validated
jonboiser Jul 1, 2020
4273078
Merge pull request #7182 from jonboiser/permissions-page-fixes
jonboiser Jul 1, 2020
c1e579a
Close dialog when switching to the same language
Jul 1, 2020
e5b8eb8
Merge pull request #7226 from bjester/content-negotiation
rtibbles Jul 1, 2020
babcb4d
Merge pull request #7217 from rtibbles/sensitive_symlinks_covered_in_…
rtibbles Jul 1, 2020
8c1a495
Merge pull request #7231 from MisRob/language-switcher-same-language
jonboiser Jul 1, 2020
0168f10
Syntax fixes for client calls.
kollivier Jul 1, 2020
fa9ea9e
Merge pull request #7228 from kollivier/dashing_underscore
rtibbles Jul 1, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
68 changes: 27 additions & 41 deletions .buildkite/build_worksheet.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,46 +2,32 @@

set -euo pipefail

SCRIPTPATH=$(pwd)
PIP_PATH="$SCRIPTPATH/env/bin/pip"
PYTHON_PATH="$SCRIPTPATH/env/bin/python"

echo "Now creating virtualenv..."
virtualenv -p python3 env
if [ $? -ne 0 ]; then
echo ".. Abort! Can't create virtualenv."
exit 1
fi

PIP_CMD="$PIP_PATH install gspread==3.1.0"
echo "Running $PIP_CMD..."
$PIP_CMD
if [ $? -ne 0 ]; then
echo ".. Abort! Can't install '$PIP_CMD'."
exit 1
fi

PIP_CMD="$PIP_PATH install --upgrade oauth2client"
echo "Running $PIP_CMD..."
$PIP_CMD
if [ $? -ne 0 ]; then
echo ".. Abort! Can't install '$PIP_CMD'."
exit 1
fi

PIP_CMD="$PIP_PATH install PyOpenSSL"
echo "Running $PIP_CMD..."
$PIP_CMD
if [ $? -ne 0 ]; then
echo ".. Abort! Can't install '$PIP_CMD'."
exit 1
fi

PYTHON_CMD="$PYTHON_PATH .buildkite/create_integration_testing_worksheet.py"
$PYTHON_CMD
if [ $? -ne 0 ]; then
echo ".. Abort! Can't execute '$PYTHON_CMD'."
exit 1
fi
docker build \
--iidfile build_test_iid \
-t testing_worksheet \
-f docker/build_test_worksheet.dockerfile \
.

CIDFILE=build_test_cid

# If any error occurs, remove the CIDFILE that's about to be generated
trap "rm $CIDFILE" err

docker run \
--cidfile $CIDFILE \
-e GOOGLE_SPREADSHEET_CREDENTIALS \
-e BUILDKITE_TAG \
-e BUILDKITE_PULL_REQUEST_BASE_BRANCH \
-v $GOOGLE_SPREADSHEET_CREDENTIALS:$GOOGLE_SPREADSHEET_CREDENTIALS \
$(cat ./build_test_iid)

CID=$(cat $CIDFILE)

# Now that we know a container was created, remove it on exit
trap "rm build_test_iid && docker rm $CID" exit

docker cp \
$CID:/kolibri/.buildkite/spreadsheet-link.txt \
$PWD/.buildkite/

buildkite-agent artifact upload '.buildkite/spreadsheet-link.txt'
23 changes: 13 additions & 10 deletions .buildkite/create_integration_testing_worksheet.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,18 @@
SPREADSHEET_TPL_KEY = "1kVhg0evo9EV2aDo10KdIIjwqsoT4rISR7dJzf6s_-RM"
SPREADSHEET_TITLE = "Integration testing with Gherkin scenarios"


# Use to get the Kolibri version, for the integration testing spreadsheet
SHEET_TAG = os.getenv("BUILDKITE_TAG")
def get_tag_name():
if os.getenv("BUILDKITE_TAG"):
return os.getenv("BUILDKITE_TAG")
elif os.getenv("BUILDKITE_PULL_REQUEST_BASE_BRANCH"):
return os.getenv("BUILDKITE_PULL_REQUEST_BASE_BRANCH")
else:
return "develop"


SHEET_TAG = get_tag_name()
SHEET_TPL_COLUMN = "B"
SHEET_TPL_START_VALUE = 5
SHEET_INDEX = 0
Expand All @@ -34,13 +44,6 @@
if SHEET_PARENT_CONTAINER_ID == "" or SHEET_PARENT_CONTAINER_ID is None:
SHEET_PARENT_CONTAINER_ID = "10bMsasxKvpi_9U1NU9rq7YBnFBiCkYrc"

if SHEET_TAG == "" or SHEET_TAG is None:
buildkite_branch = os.getenv("BUILDKITE_PULL_REQUEST_BASE_BRANCH")
if buildkite_branch != "" or buildkite_branch is not None:
SHEET_TAG = buildkite_branch
else:
SHEET_TAG = "develop"

if SPREADSHEET_CREDENTIALS == "" or SPREADSHEET_CREDENTIALS is None:
logging.info("Spreadsheet credentials not exist")
sys.exit()
Expand All @@ -61,8 +64,8 @@


def get_feature_name(str_arg):
str_name = str_arg.replace("-", " ").replace(".feature", " ").capitalize()
return str_name.strip()
str_name = str_arg.replace("-", " ").replace(".feature", " ").strip().split("/")[-1]
return str_name.capitalize()


def get_role_name(str_arg):
Expand Down
7 changes: 3 additions & 4 deletions .buildkite/pipeline.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ steps:
env:
LE_TRIGGERED_FROM_BUILD_ID: "${BUILDKITE_BUILD_ID}"
LE_TRIGGERED_FROM_JOB_ID: "${BUILDKITE_JOB_ID}"
LE_TRIGGERED_FROM_KOLIBRI_VERSION_TAG: "${BUILDKITE_TAG}"
LE_KOLIBRI_RELEASE: "${BUILDKITE_TAG:-false}"

- label: Build Windows installer
command: .buildkite/build_windows_installer.sh
Expand Down Expand Up @@ -54,13 +54,12 @@ steps:
depends_on:
- deb-build

- label: Build Windows installer
command: .buildkite/build_windows_installer.sh

- wait

- label: Upload Release Artifacts
command: .buildkite/setup_and_upload_artifact.sh
agents:
vader=true
if: build.tag != null

- wait
Expand Down
8 changes: 1 addition & 7 deletions .buildkite/setup_and_upload_artifact.sh
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ if [ $? -ne 0 ]; then
exit 1
fi

PIP_CMD="$PIP_PATH install -r requirements/pipeline.txt"
PIP_CMD="$PIP_PATH install -r requirements/release_upload.txt"
echo "Running $PIP_CMD..."
$PIP_CMD
if [ $? -ne 0 ]; then
Expand All @@ -26,12 +26,6 @@ echo "Now excuting upload artifacts script..."
mkdir -p dist
buildkite-agent artifact download 'dist/*' dist/

{
buildkite-agent artifact download '*.exe' dist/ --step "Sign Windows installer"
} || {
echo "No signed Windows installer found"
}

$PYTHON_CMD
if [ $? -ne 0 ]; then
echo ".. Abort! Can't execute '$PYTHON_CMD'."
Expand Down
2 changes: 2 additions & 0 deletions AUTHORS.md
Original file line number Diff line number Diff line change
Expand Up @@ -66,3 +66,5 @@ Please feel free to add your name to this list if you make a PR
* Brandon Nguyen (bransgithub)
* Chris Castle (crcastle)
* Julián Duque (julianduque)
* Brian Kwon (br-kwon)
* Jacob Pierce (nucleogenesis)
11 changes: 8 additions & 3 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# List most target names as 'PHONY' to prevent Make from thinking it will be creating a file of the same name
.PHONY: help clean clean-assets clean-build clean-pyc clean-docs lint test test-all assets coverage docs release test-namespaced-packages staticdeps staticdeps-cext writeversion setrequirements buildconfig pex i18n-extract-frontend i18n-extract-backend i18n-transfer-context i18n-extract i18n-django-compilemessages i18n-upload i18n-pretranslate i18n-pretranslate-approve-all i18n-download i18n-regenerate-fonts i18n-stats i18n-install-font i18n-download-glossary i18n-upload-glossary docker-whl docker-windows docker-demoserver docker-devserver docker-envlist
.PHONY: help clean clean-assets clean-build clean-pyc clean-docs lint test test-all assets coverage docs release test-namespaced-packages staticdeps staticdeps-cext writeversion setrequirements buildconfig pex i18n-extract-frontend i18n-extract-backend i18n-transfer-context i18n-extract i18n-django-compilemessages i18n-upload i18n-pretranslate i18n-pretranslate-approve-all i18n-download i18n-regenerate-fonts i18n-stats i18n-install-font i18n-download-translations i18n-download-glossary i18n-upload-glossary docker-whl docker-windows docker-demoserver docker-devserver docker-envlist

help:
@echo "Usage:"
Expand Down Expand Up @@ -210,7 +210,7 @@ i18n-pretranslate-approve-all:
i18n-convert:
python build_tools/i18n/crowdin.py convert-files

i18n-download:
i18n-download-translations:
python build_tools/i18n/crowdin.py rebuild-translations ${branch}
python build_tools/i18n/crowdin.py download-translations ${branch}
node build_tools/i18n/intl_code_gen.js
Expand All @@ -224,7 +224,12 @@ i18n-regenerate-fonts:
python build_tools/i18n/fonts.py generate-full-fonts
python build_tools/i18n/fonts.py generate-subset-fonts

i18n-update: i18n-download i18n-regenerate-fonts i18n-transfer-context
i18n-download: i18n-download-translations i18n-regenerate-fonts i18n-transfer-context

i18n-update:
echo "WARNING: i18n-update has been renamed to i18n-download"
$(MAKE) i18n-download
echo "WARNING: i18n-update has been renamed to i18n-download"

i18n-stats:
python build_tools/i18n/crowdin.py translation-stats ${branch}
Expand Down
11 changes: 9 additions & 2 deletions build_tools/i18n/intl_code_gen.js
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,11 @@ const generateVueIntlItems = language => {
* we strip off the territory code if it's there.
*/
const vue_intl_code = language.intl_code.split('-')[0];
return `data.push(require('vue-intl/locale-data/${vue_intl_code}.js'));`;

// Exclude ach-ug language that is defined in language_info.json
if (vue_intl_code !== 'ach') {
return `data.push(require('vue-intl/locale-data/${vue_intl_code}.js'));`;
}
};

const vueIntlFooter = `
Expand Down Expand Up @@ -87,7 +91,9 @@ const generateIntlItems = language => {
filename += codes[4];
}

return `
// Exclude ach-ug language that is defined in language_info.json
if (language.intl_code !== 'ach-ug') {
return `
case '${language.intl_code}':
return new Promise(function(resolve) {
require.ensure(
Expand All @@ -97,6 +103,7 @@ const generateIntlItems = language => {
}
);
});`;
}
};

const intlFooter = `
Expand Down
14 changes: 4 additions & 10 deletions build_tools/i18n/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,14 +30,6 @@
KEY_ENG_NAME = "english_name"
KEY_DEFAULT_FONT = "default_font"

IN_CTXT_LANG = {
KEY_CROWDIN_CODE: "ach",
KEY_INTL_CODE: "ach-ug",
KEY_LANG_NAME: "In-context translation",
KEY_ENG_NAME: "In-context translation",
KEY_DEFAULT_FONT: "NotoSans",
}


def to_locale(language):
"""
Expand Down Expand Up @@ -77,8 +69,10 @@ def available_languages(include_in_context=False, include_english=False):
for lang in languages:
if include_english or lang[KEY_INTL_CODE] != "en":
result.append(lang)
if include_in_context:
result.append(IN_CTXT_LANG)
# in-context language has been included in language_info.json,
# remove it if the parameter include_in_context is False
if lang[KEY_INTL_CODE] == "ach-ug" and not include_in_context:
result.remove(lang)
return result


Expand Down
14 changes: 14 additions & 0 deletions docker/build_test_worksheet.dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
FROM python:3.5-slim

WORKDIR /kolibri

COPY integration_testing integration_testing/

WORKDIR /kolibri/.buildkite

COPY .buildkite/create_integration_testing_worksheet.py \
requirements/build_test_worksheet.txt ./

RUN pip install -r build_test_worksheet.txt

CMD ["python", "create_integration_testing_worksheet.py"]
3 changes: 1 addition & 2 deletions docker/build_windows.dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -28,15 +28,14 @@ VOLUME /kolibridist/

# TODO(cpauya): Verify the checksums of the downloaded Python installers.

# Build the Kolibri Windows installer
CMD git clone https://github.com/learningequality/kolibri-installer-windows.git && \
cd kolibri-installer-windows && \
git checkout $KOLIBRI_WINDOWS_INSTALLER_VERSION && \
cd src && \
cp /kolibridist/kolibri-$KOLIBRI_VERSION*.whl . && \
export KOLIBRI_BUILD_VERSION=$KOLIBRI_VERSION && \
make && \
curl -sS https://www.python.org/ftp/python/3.4.3/python-3.4.3.msi --output "python-setup/python-3.4.3.msi" && \
curl -sS https://www.python.org/ftp/python/3.4.3/python-3.4.3.amd64.msi --output "python-setup/python-3.4.3.amd64.msi" && \
wine inno-compiler/ISCC.exe installer-source/KolibriSetupScript.iss && \
mv *.exe kolibri-$KOLIBRI_VERSION-unsigned.exe && \
cp *.exe /kolibridist/
2 changes: 1 addition & 1 deletion docker/env.list
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
KOLIBRI_VERSION

# Set the default version of the Windows Installer
KOLIBRI_WINDOWS_INSTALLER_VERSION=v1.4.0-beta1
KOLIBRI_WINDOWS_INSTALLER_VERSION=v1.4.0-beta2

# Make sure we don't record these docker runs in pingbacks
KOLIBRI_RUN_MODE="docker"
Expand Down
4 changes: 2 additions & 2 deletions docs/i18n.rst
Original file line number Diff line number Diff line change
Expand Up @@ -329,7 +329,7 @@ Next, we download the latest translations from Crowdin and rebuild a number of d

.. code-block:: bash

make i18n-update branch=[release-branch-name]
make i18n-download branch=[release-branch-name]

This will do a number of things for you:

Expand Down Expand Up @@ -375,7 +375,7 @@ The language must be described using the following keys, with everything in lowe

If the language doesn't exist in Django, you may get errors when trying to view the language. In this case it needs to be added to ``EXTRA_LANG_INFO`` in ``base.py``.

For the new language to work, the ``django.mo`` files for the language must also be generated by running ``make i18n-update`` and committed to the repo.
For the new language to work, the ``django.mo`` files for the language must also be generated by running ``make i18n-download`` and committed to the repo.

To test unsupported languages, you can use the `Deployment` section `LANGUAGES` option in the Kolibri options.ini. Either set the value to ``all`` to activate all languages, or add the specific Intl language code as the value.

Expand Down
13 changes: 8 additions & 5 deletions docs/manual_testing/general_notes/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -133,24 +133,27 @@ Create 2 facilities, with 2 classes per facility, with 20 learners per class, 2
Examples for a fresh Kolibri install (no imported channels)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

For a fresh Kolibri installation, use this to automatically create superusers and skip on-boarding. The super user username is ``superuser`` and password is ``password``.
For a fresh Kolibri installation, use this to automatically create superusers and skip on-boarding (setup wizard). The superuser username is ``superuser`` and password is ``password``.

.. code-block:: bash

kolibri manage generateuserdata --no-onboarding

Create 2 facilities, with 2 classes per facility, with 20 learners per class, 2 interactions per learner.
Create 2 facilities, with 2 classes per facility, with 20 learners per class.

.. code-block:: bash

kolibri manage generateuserdata --facilities 2 --classes 2 --users 20 --num-content-items 2
kolibri manage generateuserdata --facilities 2 --classes 2 --users 20 --no-onboarding


Notes
~~~~~

1. If there are existing facilities, it will only create the remaining ones. So if you already have one facility, specifying ``--facilities 2`` will create one more facility and its subsequent sample data.
1. Use the `--max-channels` option to limit the number of channels for learners to interact with. This saves a lot of time specially on large data samples.
1. The ``--no-onboarding`` argument creates a super user for each facility with username ``superuser`` and password ``password``.

2. Use the `--max-channels` option to limit the number of channels for learners to interact with. This saves a lot of time specially on large data samples.

3. The ``--no-onboarding`` argument creates a super user for each facility with username ``superuser`` and password ``password``.


Collecting client and server errors using Sentry
Expand Down
2 changes: 2 additions & 0 deletions integration_testing/features/ORDER.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,5 +3,7 @@ admin
coach
learner
guest
app-context
common
debian
windows
4 changes: 4 additions & 0 deletions integration_testing/features/app-context/ORDER.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
app-context-manage-password-requirements.feature
app-context-manage-sign-in-options.feature
app-context-remote-network-access.feature
app-context-disable-device-network-access.feature
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ Feature: Multiple facility sign in
Given there is more than one facility on the device
And I am on the sign in page


Scenario: User accesses Kolibri for the first time on their browser and creates a new account
Given I am viewing Kolibri for the first time in my current browser
And there is no account that has signed in before on the device
Expand Down Expand Up @@ -131,6 +130,5 @@ Feature: Multiple facility sign in
Then I see the coach landing page
And I see my username in the app bar


Examples:
| username | facility |
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,11 @@ Feature: Guest signs up for an account
And I click the *Finish* button
Then I am signed in and I can see the *Learn > Channels* page

Scenario: Accounts created on *Create an account* page do not see a notification to update profile
Given I completed the account creation workflow
When I am redirected to the *Learn* page
Then I don't see the *Update your profile* modal

Scenario: Username is already taken
Given A user already exists with some username
When I try to sign up for a new account with that same username
Expand Down