forked from oppia/oppia
-
Notifications
You must be signed in to change notification settings - Fork 0
/
CHANGELOG
5159 lines (4484 loc) · 275 KB
/
CHANGELOG
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
This file contains a summary of changes to the Oppia code base.
v2.8.7 (24 Nov 2019)
------------------------
Code health
* Remove DubeySandeep from codeowner for various miscellaneous projects. (#7914)
* Fix #6738: changed direct usage of window.location (#7879)
* Fix part of #7427: Add valid args docstring for story_domain_test.py (#7832)
* Migrating deviceinfo service (#7821)
* Fixes #6240: adding e2e test for assigning and viewing roles (#7767)
* Fix part of #6240 Add test for exploration stats on user profile (#7766)
* Fixes part of #6240: Mark correct answers after enabling correctness feedback (#7764)
Development workflow
* Resolves audit issues (#8056)
* Resolve yarn audit (#8006)
* Resolve audit errors (#7949)
* Switch download source for CKEditor libs to GitHub for better stability. (#7920)
* Fix part of #6975: Rename services directory files according to new naming conventions (#7896)
* Fix #7890: Add more explicit codeowners fix (#7895)
* Fix #7831: Added lint check for excessive new lines between function definitions (#7881)
* Fix part of #7450: Modify private methods calls in GenerateHashTests to public calls (#7860)
* Fix part of #6975 Apply the new naming convention to remaining directories (#7844)
* Migrated DocumentAttributeCustomization & MetatagCustomization (#7835)
* Migration url service (#7834)
* Migrating dateTimeFormatService and format-timer.pipe (#7827)
* Migration extension tag assembler serivce (#7805)
* Upgrades AlertsService and NormalizeWhiteSpaceFilter to Angular (#7777)
Translations
* Adds Ewe language for translation and voiceover. (#7871)
* Routine update of translations. (#7887)
Community contribution and dashboard
* Fix #7968: Adds missing language code in the exploration opportunity domain object (#7999)
Bug fixes
* Fix #8048: Fix refresher modal on small screens (#8054)
* Fix #8024: Decrease 'min-width' of feedback editor (#8051)
* Fix #7973: Fixes tutorial, navbar for small screens (#8044)
* Fix #7974: Fix Lateral Scroll Bug on Learner Dashboard Mobile (#8026)
* Fix #7976: Changes to display the avatar of a different user (#8017)
* Fix #7975: 'this' was out of scope in SidebarStatusService (#8011)
* Fix #8002: Unused skills table text overflow fix (#8003)
* Fix #7967: ensure chapter editor validation failures are not cut off on right (#8001)
* Fix #7963: Adds margin for logic proof help lines (#7997)
* Fix #7960, #7995: Fix date, publish button (#7996)
* Fix #7983: Minor CSS fixes (#7986)
* Revert "Wipeout 3.4: Start using GAE user ID" (#7954)
* Fixes 7939: Admin navbar misplaced fix (#7940)
* Fix #7849: Add background color when hovering over sign-button (#7917)
* Fix #7691: Card Basic Setting Alignment Fixed (#7904)
* Fix #6909: Add a polyfill for SVGElement.prototype.outerHTML (#7886)
* Fix #7381: Replace apply with applyAsync in top-navigation-bar.directive (#7885)
* Fixes #6062: aligns the share buttons of any exploration page (#7883)
* Fix #7869: Fixes collection page UI issues (#7878)
* Fix #7873: Removes arrow function with function to resolve undefined `this` issue. (#7877)
* Fix #7855: Change e.message() to e.message (#7866)
* Fix #7529: Adds a strict check for Outcome object before executing hasNonemptyFeedback (#7856)
* Fix #7794: Add warning when MIDI is unsupported in the browser (#7840)
Infrastructural changes
* Rename gae_user_id to gae_id (#7998)
* Release Automation [Milestone 6]: Automate backup restoration for migrations on backup server (#7916)
* Release Automation [Milestone 5]: Add checks to ensure that travis and circleci are run before prod deployment, changelog generation for hotfixes (#7912)
* Wipeout 2.8: Add has_reference_to_user_id to remainig models (#7893)
* Wipeout 2.7: Reindex all children of BaseSnapshotMetadataModel (#7874)
* Wipeout 3.4: Start using GAE user ID (#7823)
* Wipeout 2.5: Add has_reference_to_user_id to another models (#7813)
* Release Automation [Milestone 4]: Add pre commit tests in deploy, automate hotfix branch creation (#7790)
Testing coverage
* Covered missing lines in skill_editor.py (#7905)
New structures
* Fix #8032: Truncate skill name to 35 characters for display (#8033)
* Question editor fixes (#7910)
* Added fields to skill editor (#7909)
* Split flag for new structure viewers (#7898)
* Add more interaction types to the question editor and fix question mode detection in outcome editor (#7894)
* Removed the concept of "private skills" (#7891)
* Flipped the ENABLE_NEW_STRUCTURES_VIEWER flag (#7889)
* Changes to questions tab and rubrics editor (#7846)
v2.8.6 (28 Oct 2019)
------------------------
Bug fixes
* Fix #7802: Fix indexing of explorations after update (#7853)
* Fix #7663: Fixes collapsible block (#7850)
* Reverts tests for Improvement tab added in #7719 (#7758)
* Fix issues with capitalize filter (#7757)
* Fix #6158: Initialise $interval inside initSession method (#7738)
* Fix #7441: Replace 'one' with explicit key '=1' for certain languages (#7727)
* Fix #7689: fixes the author dropdown menu in the footer (#7726)
* Fix 7687: fixed library page tablet view (#7724)
* Fix #6921: Add logger for _submitAnswer issue (#7723)
* Fix #7681: HTML Select Option Styling (#7721)
* Update thread status when suggestion is resolved (#7719)
* Fix #7693: Navbar Menu highlight fix (#7717)
* Fix #7662: Cursor fix (#7713)
* Fix #7660: Set maximum width for link field and set ellipsis on it (#7701)
* Fix #7653: broadcast 'stateEditorInitialized' after state-editor has been initialized (#7697)
* Fix #7688: Uses font-awesome font instead of glyphicon for the… (#7692)
* Fix #7684: Replace single quotes with double quotes (#7685)
* Fix mailgun issue arising due to Python encoding error (#7652)
* Fix #7252: Add undefined check for NgAudio audio object (#7640)
* Fix error in creator dashboard due to duplicate prefixes. (#7636)
* Fix #7444: Make sessionStorage existence check more robust (#7628)
* Fix #5793: Suppress tpload errors that occur with -1 status code (#7611)
* Fix navigation e2e test suite breakage (#7603)
* Fix e2e tests and few small fixes (#7600)
* Fix part of #7589: Fix unicode errors on develop (#7596)
* Fix #7553: General classroom page fixes (#7580)
* Replace call of bash scripts with python (#7573)
* Fix #7253: Handle malformed language_code param gracefully (#7563)
* Fixed a bug that raises after submitting an answer in the question player (#7551)
* Fix #7460: Adds explicit annotation for $scope in copier.directive (#7547)
* Fix unicode errors on develop (#7545)
* Fix build process on Mac OS (#7541)
* Fix #3677: Changes refreshSettingTab function to fix the loading issue with the e2e test. (#7526)
* Fix #7481 (#7523)
* Fix #6161: fix 'name' undefined server error (#7520)
* Fix 7509: Drag & Drop Interaction not working in local develop (#7512)
* Fix lint issues in develop branch (#7468)
* Fixed a bug that opening review test raises an error (#7413)
* Fixed a bug that opening the question player raises an error (#7392)
* Fixes typescript errors and adds a new test for typescript compilation (#7373)
* Fixes #7262 Dashboard spacing (#7369)
* Fix the stats regeneration job by saving all the stats models at the end (#7284)
* Fix source map issue (#7498)
Code health
* Fix part of #6240: Write e2e tests for view explorations (#7742)
* Use "Improvement Task" as new nomenclature (#7679)
* Change webpack optimalization (#7639)
* Fix css files are not linted (#7516)
* Moved more script imports to webpack (#7447)
* Remove CKEditor-5 Initialisation (#7432)
* Remove unneeded imports. (#7422)
* Fix #6961: extensions/interactions/LogicProof/static/js into webpack (#7409)
* Fix 7362: Remove jinja from preferences page directive (#7396)
* Fix part of #5002: Remove GCS_RESOURCE_BUCKET_NAME from GLOBALS (#7374)
* Fix part of 7176: Refactor dicts in frontend to have only camelCase keys for AudioLanguageObjectFactory (#7365)
* Fixes part of #6240:: e2e test for suggesting changes for an exploration (#7361)
* Migrating to CK5: PR3-building Data flow model for CKEditor-5 (#7333)
* Migrating to Bootstrap-4 (#7319)
* Fixes part of #5002: Remove GLOBALS from exploration player and collection editor. (#7203)
* Fixes part of #5002: Remove GLOBALS from exploration editor page (#7194)
Development workflow
* Node updates (#7744)
* Fix: Mandatory pattern check message is missing from pre_commit_linter output (#7743)
* Node updates (#7720)
* Update node packages (#7711)
* Fix #7704: Presubmit checks command not working with pre_commit_linter (#7706)
* Upgrade workflow packages (#7700)
* Upgrade node packages (#7698)
* Fix #7648: Run third party dependencies lib script in pre commit linter (#7678)
* Fix #7673 and #7616: Add yarn path (#7675)
* Fix #7646: Remove build calls from install third party (#7658)
* Ensure ConsoleErrorPage handler does not count towards backend… (#7655)
* Reduce codeowner dependency on Sean. (#7651)
* Remove dependency on ConverterMapping name in pylint-quotes (#7638)
* Remove configparser line from CircleCI config. (#7635)
* Compares sorted keys to fix backend tests (#7633)
* Remove dependency on ConverterMapping name in pylint (#7631)
* Add TODOs for explicit browser sleep (#7623)
* Fix #7423: Update node packages (#7615)
* Fix #6866: Remove webpack compilation from backend tests (#7604)
* Run install_third_party_libs on start.py (#7597)
* Fix part of #7589: Fixes js and ts message addition (#7595)
* Fix part of #6975: Refactor ExpressionParserService.js (expressions directory file) in create_expression_parser.py (#7592)
* Fixes #7496: consolidate threads and process (#7591)
* Fix lint errors (#7588)
* Move workflows in circleci config (#7587)
* Add James as a second CODEOWNER for Speed team (#7584)
* Fixes #6276: Custom lint requirement for single space after yield keyword (#7581)
* Fix part of #6975: Apply the new naming convention to expressions/ directory (#7556)
* Fix #7554: Make linter exit quietly when there are no files to lint (#7555)
* Fix part of #6975: Apply the new naming convention to base_components/ directory (#7548)
* Fix #7494: Split additionalEditorAndPlayerFeatures e2e test to avoid timeout on travis (#7544)
* Fix unicode errors in pre_commit_linter (#7535)
* Omit backend_prod_files during linting (#7533)
* Migrate to yarn (#7532)
* Fix part of #6866: Remove extra compilation from backend tests (#7528)
* Remove Vagrant support from codebase (#7521)
* Stops the e2e tests to run if port 9001 is blocked (#7514)
* Fix backend test that caused failures for some developers due to a time-calculation discrepancy. (#7508)
* Fix hashes file names (#7501)
* Fix backend and lint tests (#7480)
* Convert bash scripts to Python (#7465)
* Fixes #7452: Upgrade eslint plugin (#7459)
* Update outdated eslint-utils (#7451)
* Add current directory to python path in pre_push_hook (#7437)
* Fix part of #6866: Remove extra compilation from backend tests (#7436)
* Fix failed message in pre commit linter (#7428)
* Change htmllint-cli source (#7425)
* Fix #7400: Fixes issues with running typescript checks (#7401)
* Enable colon lint rule (#7399)
* Convert clean.sh to python (#7395)
* Fix part of #7305: Updates to linter to make it faster (#7394)
* Fix part of #7305 separate LintChecksManager (#7368)
* Fix #7338: fix dashboard e2e flakiness (#7367)
* Rename /dist to /webpack and move it to the root (#7315)
Translations
* Fix #6338: Hide Voiceover buttons instead of disable. (#7754)
* Add functionality to add and review translation suggestion. (#7513)
Community contribution and dashboard
* Fix #7383: Add functionality to regenerate exploration opportunity summary models. (#7426)
* Basic community dashboard with translation and voiceover opportunity. (#7109)
New structures
* Fix new structures editor UI issues (#7666)
* Added new structures dummy data generator (#7621)
* Create the classroom page (#7524)
* Fix #7084: Converts strings to i18n strings in the question player (#7458)
* Create the controllers for classroom page (#7455)
* Fix part of #5914: FeedbackMessagesCreated Takeout (#7411)
* Add rubric frontend to skill editor (#7389)
* Fix #7022: Improve question selection by deduplication and selecting based on skill difficulty and skill mastery (#7366)
* Add learning tips feature to the skill mastery modal in the question player result page (#7356)
* Fix #7021: Add a skill tab in the topic viewer (#7287)
Updates to static pages
* Fix #7542: Remove status code global (#7594)
* Remove jinja from tests directory (#7478)
* Serve error pages using transclusion components (#7449)
* Fix #2485: Serve story-viewer using transclusion components (#7390)
* Fix #7004: Move jinja dependencies_html to webpack (#7350)
Infrastructural changes
* Upgrades adminRouter and reviewTestEngine Service to Angular (#7674)
* Upgrades some services to angular (#7672)
* Update CKEditor to version 4.12.1. (#7654)
* Fix part of #5914: GeneralFeedbackThreadUserModel Takeout (#7642)
* Add statistics regeneration job to job_registry (#7641)
* Fix call to build in deploy script (#7634)
* Fix constants file name in deploy script (#7632)
* Fixes dependencies check (#7626)
* Wipeout 3.3: Add gae_user_id and migration job for filling it (#7625)
* Adds script to generate topological list of all the services on the basis of dependencies (#7624)
* Remove state ID mapping model from the codebase (#7617)
* Upgrades ItemSelectionRuleInputService and RemoveDuplicatesInArrayFilter to Angular 8 (#7610)
* Upgrades LogicProofRule Service to Angular 8 (#7606)
* Upgrades MusicNotesInputRulesService to Angular 8 (#7599)
* Upgrades NumericInputRulesService to Angular 8 (#7579)
* Upgrades InteractiveMapRulesService to Angular 8 (#7578)
* Upgrades MultipleChoiceInputRuleService to Angular 8 (#7575)
* Upgrades DrapAndDropSortInputRulesService to Angular 8 (#7570)
* Upgrade SetInputRulesService to Angular 8 (#7562)
* Wipeout 2.3: Add deletion policy to remaining storage models (#7552)
* Milestone 2 [Release Automation]: Updates to release_info for automatic changelog creation (#7510)
* Wipeout 2.2: Add deletion policy to some storage models (#7500)
* Fix part of #5914: GeneralFeedbackEmailReplyToIdModel - Takeout (#7490)
* Wipeout 3.2: Feedback email migration (#7464)
* Convert all Python strings to unicode (#7446)
* Fix part of #5914: Lesson Progress - Takeout (#7435)
* Wipeout 3.1: Feedback migration (#7415)
* Milestone 1: Release automation for deploying to test server (#7410)
* Upgrade more services to Angular 8 - VIII (#7408)
* Upgrade more services to Angular 8 - VII (#7398)
* Upgrade more services to Angular - VI (#7386)
* Wipeout 2.1: Add deletion policy method to some storage models (#7351)
* Migrate to Python 3 (#7177)
* Fix part of #5002: Remove interaction specs from GLOBALS (#7385)
* Fix part of #6975: Rename extensions directory according to new naming conventions (#7360)
Testing coverage
* Fix part of #6240: Profile Photo Upload E2E Test (#7527)
* Adds creator dashboard tests to travis (#7511)
* Fix part of #6240: Adds e2e test to check grid and list view on creator dashboard page (#7506)
* Fix part of #6240: Add E2E Tests for Profile Page Personal Deta… (#7505)
* Remove unused methods from jinja utils and exp_domain (#7497)
* Fix part of #6240: Adds e2e test to check message on feedback thread (#7495)
* Fix part of #6240: Adds e2e tests to check stats on creator dashboard page (#7491)
* Fix part of #6240: Adds e2e test to check status change of feedback thread (#7484)
* Fix part of #6240: Adds e2e tests for prefered audio and site language in user's profile (#7456)
* Improve coverage of some files (#7370)
* Fix part of #6240: e2e test to save exploration to play later list and viewing it on the learner dashboard. (#7285)
* Fix part of #6240 : Adds e2e test to check loading of appropriate dashboard (#7503)
Improvements to editors and players
* Creator View in Improvements Tab: AnswerDetailsImprovementCard (#7412)
* Launch Improvements Tab (#7337)
* Finalize Style Changes to Improvements Tab (#7330)
* Enabling Learner for fill out answer details (#7159)
v2.8.5 (11 Sep 2019)
------------------------
Statistics
* Fix #5975: Fixed fraction display for Playthroughs (#7062)
Bug fixes
* Fix #7540: Changes max-width value of .oppia-library-group (#7582)
* Fix #7536: fa-times not loading correctly in the learner dashboard (#7567)
* Fix #7318: Fix blue outline in chrome (#7561)
* Fix #6931: Fix functionality of Download exploration button (#7522)
* Fix #7489: Fixes issue with exploration player navbar (#7492)
* Fixes #7417: Fix Image upload bug in preferences page (#7482)
* Fix regex for TODO comments check (#7384)
* Fix #7377: Fixed the link issue (#7382)
* Fix #7363: Repair getTypeFromBackendName in ParamTypeObjectFactory.ts (#7364)
* Fix typescript errors (#7341)
* Fix #7246: Disallow saving of duplicate values in set input interaction (#7331)
* Add bot's username in the reserved usernames list (#7317)
* Import Visualization Directives in Statistics Tab (#7312)
* Fix #6727: Corrected the misalignment of images in the /about page (#7310)
* Fix lint (#7306)
* Fix circleci lint (#7303)
* Fix typescript errors and add a new config file for compilation checks (#7293)
* Fix #7234: Add functionality to clean migration bot contributions data (#7288)
* Fix #6982: linting violations in assets/constants.js (#7279)
* Revert "Fix part of #5002 remove GCS_RESOURCE_BUCKET_NAME from GLOBAL… (#7278)
* #Fixes 7125 Fixing unresponsive sidebar toggle in mobile view (#7265)
* Fix #7239: $sce.trustAsResourceUrl is called after the url is constructed (#7243)
* Fix failing FE test on develop. (#7213)
* Fix #6621: Return default values when sessionStorage is not available (#7205)
* Fix failing test in develop (#7199)
* Fixed an import error when running backend tests (#7154)
* Fix backend test issues on develop branch (#7142)
* Fix #7116: Mis-aligned fa-icons & Upgrades Font-awesome to 5.9.0 (#7117)
* Add log for issue #6921 (#7028)
* Fix #6159: Regenerate missing stats models (#6916)
Improvements to editors and players
* Fix Improvements Tab Navigation (#7326)
* Address remaining review comments for #7052 (#7258)
* Fix #6618: Allow creator to copy exploration's "Link to share" (#7185)
* Fix part of #5799: Add Action Buttons to Feedback and Suggestion Improvement Cards (#7147)
* Fix Part of #5799: Improve Styling of Feedback/Suggestion Improvement Cards (#7118)
* Adding controllers, object factory and backend api service for learner answer details (#7052)
* Fix #4438: Implement draft upgrade functions (#7036)
New structures
* Added rubric field to skill model (#7371)
* Create a subtopic page viewer (#7354)
* Fix two issues in the topic viewer page (#7353)
* Create new topic fetchers file (#7280)
* Fix part of #5914: UserSkillMasteryModel Takeout (#7264)
* Fix #7020: Update skill mastery degree after tests and show a skill mastery modal (#7237)
* Small fix for previous PR #7141 (#7217)
* Fix #7071: Implement Boost Score functionality (#7209)
* Added image upload to the RTE in new structures (#7207)
* Fix #7017: Backend changes for UserSkillMastery and add a handler for updating user skill mastery degree (#7193)
* Added story publish to story editor (#7174)
* Fix #6481: Misconception Name length increase from 30 chars to 50 chars (#7148)
* Fix #7019: Add skill_id to Misconception and replace tagged_misconception_id with tagged_skill_misconception_id in AnswerGroup (#7141)
* Fix #7018: Display concept cards for failing skills at the end of review tests (#7102)
* Fix #6576 and #6957 Frontend to set skill difficulty per skill in question creation. Also move skill ids to the payload (#7074)
Code health
* Fix part of #6240: Separate out revert commit test in ExplorationHistoryTab e2e test. (#7332)
* Enforce semicolon for typescript files (#7324)
* Fixes #6688: content of style tags in html are indented by 2 spaces (#7308)
* Move lint checks to CircleCI (#7300)
* Add env/ to .gitignore (#7299)
* Fix #6962: Remove jinja interaction templates and integrate css file into webpack (#7286)
* Fixes #7250: Change protractor screenshot (#7275)
* Fix #7197: Address review comments from #7068 (#7269)
* Change notification email for travis (#7242)
* Fix part of #6271: Refactor update_page_contents_html and update_page_contents_audio #7202 (#7231)
* Fix #7212: Address follow up comments from #7178. (#7230)
* Fix part of #6387: Remove GLOBALS from admin page (#7186)
* Migrating to CK5: PR2-Initialise CKeditor 5 (#7184)
* Add Kevin to travis notifications (#7179)
* Migrating to CK5: PR1-Rename the CK4 directives (#7175)
* Fixes #7167: Move npm audit to pre submit hook (#7172)
* Change source of htmllint-cli package (#7164)
* Remove Bare Promises from the Frontend (#7155)
* Output lcov for frontend coverage (#7152)
* Fixes part of #6387: Remove default_twitter_share_message_editor and default_object_values from GLOBALS (#7149)
* Fixes part of #6387: Remove tag_regex, invalid_parameter_names, show_trainable_unresolved_answers (#7140)
* Fixes #6821: Fix frontend coverage (#7138)
* Fix part of #6387: Remove GLOBALS from profile and collection_player (#7131)
* Fix part of #5002 remove GCS_RESOURCE_BUCKET_NAME from GLOBALS (#7130)
* Fixes #7010: Adds a linting check that ensures all TODO comments have a username with them (#7114)
* Upgrade AngularJS Material (#7097)
Development workflow
* Revert PRs #7341 and #7293 to unbreak the build. (#7349)
* Fix part of #6024 Consolidate searching for patterns in general (#7339)
* Fix part of #6024 Consolidate searching for bad patterns (#7329)
* Fix #6497: Pre-commit linter should fail hard when there are no files to be checked (#7328)
* DOCKERFILE + karma changes for installation on Windows (#7313)
* Fix #6766: Fix webpack hanging (#7311)
* Fix #7249: Bound max memory used by YUI compressor. (#7282)
* Add path to chrome under wsl (#7274)
* Transfer codeownership from apb7 to kevinlee12 (#7236)
* Add project label bullet to the PR checklist (#7235)
* Adds temporary folder for checking ts files to gitignore (#7227)
* Use driver explicitly in wait to fix flaky e2e failure (#7196)
* Change commit hook permissions (#7181)
* Generate separate coverage reports for frontend and backend (#7151)
Updates to static pages
* Serve more static pages using app.yaml (#7268)
* Serve some dynamic pages using transclusion components (#7195)
* Revert "Serve some dynamic pages using transclusion components" (#7190)
* Serve Review_tests page using transclusion components (#7187)
* Remove dependence on base.html from exploration editor page (#7134)
* Serve some dynamic pages using transclusion components (#7068)
Review system
* Fix part of #6271: Refactor update_content and update_param_changes (#7202)
Infrastructural changes
* Upgrade more services to Angular 8 - V (#7352)
* Fix part of #5914: Drafts & created lessons - Takeout (#7298)
* Remove base controller from HTML tag to after Angular bootstrap and convert I18NFooter and Thanks to component directives. (#7283)
* Modularize more pages. (#7261)
* Fix part of #5914: User Roles & Rights - Takeout (#7260)
* Remove oppia module export. (#7259)
* Fix #7168 Remove requests package (#7238)
* Update html validation jobs to produce exp_id in output (#7226)
* Upgrade more services to Angular 8 - IV (#7223)
* Fix part of #6975: Apply the new naming convention to directives/ directory (#7215)
* Upgrade more services to Angular 8 - III (#7214)
* Upgrade more services to Angular 8 - II (#7178)
* Add vinitamurthi@ as owners for the questions project (#7163)
* Fix #7087: Add log for "contains no units" SyntaxError (#7157)
* Upgrade more services to Angular 8 (#7145)
* Separates exploration model getters from exp_services (#7093)
* Upgrade constants to Angular 8 (#7066)
* Upgrade ExplorationFeaturesService to Angular 8 (#7065)
Testing coverage
* Remove files from coverage report and add final tests (#7314)
* Fixes part of #6240: e2e test for reporting an exploration(additionalEditorAndPlayerFeatures.js). (#7297)
* Fix part of #4057: Added unit tests for FatigueDetectionService. (#7232)
* Fix part of #6550: Improve coverage of some files (#7173)
* Fix part of #6550: Write tests for docstrings_checker and pylint_extensions (#7153)
* Fix part of #6550: Write tests for stats_jobs_one_off (#7150)
* Fix part of #6550: Write tests for build.py (#7133)
* Fix part of #6550: Write tests for extensions/ and utils (#7113)
* Fix #6853: Break each validation into its separate test function (#7073)
* Fix part of #6550: Write tests for domain/exp_services and domain/exp_domain (#6844)
v2.8.4 (26 Jul 2019)
------------------------
Bug fixes
* Fix #7143: Removes imageFonts from MathJax (#7200)
* Fix #7188: Resolve issues with learner dashboard and profile page (#7191)
* Fix #7161: Removes expression evaluation braces from i18n translation-values (#7183)
* Fix #7125: Fixed sidebar toggle in the splash page (#7162)
* Fix #7126: Removes html validation and associated tests (#7144)
* Fix #7127: Fix invalid html conversion process to avoid extra lines (#7128)
* Fix #7120: Use app_dev.yaml for e2e test and performance test (#7123)
* Add log for error during blob construction (#7108)
* Add log for undefined interaction specs (#7107)
* Fix backend tests on develop (#6977)
* Fix #6777: Pressing R prompts microphone only in translation tab. (#6898)
* Retrain classifier models if they are not available for previous version of exploration states (#6868)
* Fix #1105: Fires 'redrawGraph' event on navigating to the editor (#7098)
* Fix #7042: Change d3.event.translate to d3.event.transform (#7082)
* Fix backend tests on develop (#7078)
* Fixes #7047: Hides submit button if interactionId is null (#7070)
* Fixes #5795: Adds null check and changes z-index value for "Restart From Beginning" button (#7060)
* Feedback text overflow (#7054)
Statistics
* Adding a LearnerAnswerDetailsModel (#6815)
Improvements to editors and players
* Fix part of #5799: Feedback card object factory (#7076)
* Frontend changes such that creator can enable/disable solicit answer details feature for a state (#6926)
* Fix #6792: Adding Exploration Titles to Collection Landing Page (#6881)
New structures
* Fix #6348: Add functionality to start a practice session in the topic viewer (#7075)
* Fix #7016: Separate review test to pass/fail mode and add score bar for each skill (#7050)
* Remove frontend for question suggestions (#7029)
* Fix #6779 and part of #6347: First draft of the results page (#6993)
* Display review tests when viewing stories (#6987)
* Record completion after completing a story node in the story viewer (#6973)
* Fix part of #6346: Add a state service to record the users progress in the question player (for score calculation) (#6971)
* Link multiple skills to one question and unify question list service (#6927)
* [Milestone 1.1] Implement review test using question player (#6850)
* Replace content_ids_to_audio_translations dict with RecordedVoiceovers object in topics and skills. (#6814)
Infrastructural changes
* Fix #6952: Adds a backend test to ensure that all storage models have audit jobs (#7101)
* Introduction to Angular 8 (#7048)
* Introduction to Angular 8. (#7027)
* Fix #6887: Audit jobs and tests for user models and a new panel for prod jobs on admin tab (#7023)
* Separate remaining constants into individual files. (#6996)
* Audit jobs and tests for classifier, jobs, feedback and suggestion models (#6995)
* Audit jobs and tests for question models (#6992)
* Audit jobs and tests for skill models (#6991)
* Audit jobs and tests for topic models (#6990)
* Domain object changes for topic, skill, question models (#6989)
* Separate constants in domain/ into individual files. (#6968)
* Migrate remaining pages to component directives. (#6953)
* Milestone 1.1, 1.2, 1.3: Add audit jobs and tests (#6857)
* Fix part of #5914: UserStatsModel Takeout (#6825)
* Fix part of #5914: UserSettingsModel and UserSubscriptionsModel Takeout (#6981)
* Fixes part of #6271: Refactor question domain update to accept objects (#7024)
Translations
* Routine update of translations (#7069)
Updates to static pages
* Serve other dynamic pages using transclusion components (#7104)
* Serve static pages from app.yaml (#6974)
* Milestone 1.3, 1.4 Serve remaining static pages statically (#6934)
Code health
* Fix #5069: Remove $parent from codebase. (#7110)
* Fixes #6950: Fix ck editor fileoverview (#7106)
* Fix #7037: Add check for npm packages (#7051)
* Upgrades node_modules @types definition of d3, google.visualization & selenium-webdriver (#6969)
* Upgrades Angular static libraries (#6966)
* Upgrades Requests (#6965)
* Fixes part of #5002: Remove CSRF token from GLOBALS (#6951)
* Upgrades hammer.js and waveSurferJs (#6941)
* Upgrades code-mirror, browsermob-proxy and mouse-trap (#6940)
* Upgrades isort webtest and pylint quotes (#6938)
* Upgrades GAE Libraries (#6922)
* Upgrades Angular-audio, Mutagen and MidiJs (#6912)
* Migrating to Font-Awesome 5 (#6789)
* Upgrades jasmine, karma-webpack, webdriver-manager, covergae, pygithub & webpack to their latest version (#6770)
Development workflow
* Fixes: Build error in develop (#7137)
* Add clean to webpack config (#7112)
* Make pre push hook executable (#7111)
* Make pre-commit hook file executable (#7105)
* Fixes #7079: Update lexical analysis to path analysis (#7096)
* Fix #7033: introduce a wait into the e2e test, and change how refreshing is done in the editor tab. (#7094)
* Introduce Code-Climate to maintain coverage (#7067)
* Fixes #6736: Add pre-commit hook check for package-lock.json (#7059)
* Fix browermobproxy version in pre-commit script (#7055)
* Fix #6888: Run tests split by classes (#7040)
* Fix part of #6732: Migrate interactions and classifiers to webpack (#6939)
* Update CODEOWNERS file. (#7103)
* Analytics Team Owner Handoff (#7077)
* Add Sean as backup for vojtechjelinek (#7063)
Testing coverage
* Fix part of #6550: Write tests for cron.py (#7095)
* Fix part of #6550: Write tests for controllers/reader.py (#7081)
* Fix part of #6550: Write tests for admin.py (#7057)
* Fix part of #6550: Write tests for core/jobs (#7006)
* Fix part of #6550: Write tests for test_utils (#7003)
* Fix part of #6550: Write tests for state_domain (#6999)
* Fix part of #6550: Write tests for story_domain and story_services (#6983)
* Fix part of #6550: Write tests for user_services (#6980)
* Fix part of #6550: Write tests for feedback_services (#6978)
* Fix part of #6550: Write tests for topic_services and gae_suite (#6976)
* Fix part of #6550: Write tests for suggestion_services (#6970)
* Fix part of #6550: Write tests for summary_services and topic_jobs_one_off (#6963)
* Fix part of #6550: Write tests for domain/exp_jobs_one_off (#6946)
* Fix part of #6550: Write tests for domain/suggestion_registry (#6937)
* Fix part of #6550: Write tests for rights_manager, subtopic_page_domain and subtopic_page_services (#6936)
* Fix part of #6550: Write tests for stats_domain and stats_services (#6925)
* Fix part of #6550: Write tests for skill_domain and skill_services (#6896)
* Fix part of #6550: Write tests for domain/html_validation_service.py (#6861)
* Fix part of #6550: Write tests for controllers/topic_editor (#6761)
* Fix part of #6550: Write tests for controllers/skill_editor and controllers/story_editor (#6750)
* Fix part of #6550: Write tests for controllers/feedback.py (#6740)
* Raise backend test coverage of review_test.py to 100% (#7014)
v2.8.3 (3 Jun 2019)
------------------------
Bug fixes
* Fix #7007: Allows adding proper tags for the exploration by replacing parent with ctrl (#7058)
* Fix #6864: Fix console error in learner dashboard and empty suggestion modal (#7056)
* Fix #7031: Add missing $ctrl (#7032)
* Fix issues in collection pages (#6958)
* Added log for #6158 (#6955)
* Minor nit fixes (#6954)
* Fix #6943: Fix code editor interaction issue in exploration player. (#6948)
* Fix #6895: Fix feedback status selector not showing issue. (#6947)
* Fix #6933: Fix modal and status issue in translation tab. (#6944)
* Fix #6917: Adds dependency to topic editor (#6918)
* Add log for null summaries (for #6157) (#6910)
* Fix #6903: added required share link directive to exploration save service to force wrapping (#6908)
* Fix #6897: fix issues with tile backgrounds and images (#6872)
* Fix #6851: Revert "Remove {{BEFORE_END_HEAD_TAG_HOOK}} from Base.html (#6835)" (#6852)
* Fix topic viewer 404 error (#6838)
* Fix #6832: Fix issues with ctrl and $scope (#6836)
* Add logging for #6702, #6604 (#6833)
* Fix #6737: Remove state id mapping from the codebase (#6830)
* Fix 500 error when downloading old exploration versions. (#6826)
* Fix #6806: Regressions in the Oppia navbars (#6820)
* Fix #6298: Adds a condition to check length of input response pairs (#6809)
* Added log for issue #6478 (#6808)
* Extended hover on about menu when any li child is hovered (#6801)
* Fix #6785: Fix image upload issue (#6787)
* Fix #6500: Removes console message if the querySegment length is longer (#6768)
* Fix Array.fill() not a function stackdriver error using polyfill for IE (#6756)
* Fix explorationHistoryTab e2e test issue in the develop branch (#6739)
* Fix #6686: Added a validation check for the patterns/file mentioned in the suites of e2e tests. (#6716)
* Fix #6582: Set Title to inherit the width of the parent (#6715)
* Fix #6523: Invalidate Stats Cache for States when Interaction Type Changes (#6679)
* Update pre_push_hook to run frontend test if .ts or .js file changes (#6677)
* Fixes #6331: Do not allow user to add roles if title is not given. (#6625)
Code health
* Upgrades Requests (#6965)
* Remove Before End Hook from base.html (#6880)
* One off job to delete state ID mapping models from the datastore. (#6871)
* Fix part of #5002: Remove isTopicManager and userIsLoggedIn (#6845)
* Remove {{BEFORE_END_HEAD_TAG_HOOK}} from Base.html (#6835)
* Upgrades uiSortable and jQuery (#6803)
* Upgrades bleach and simplejson (#6797)
* Fix Part of #6565: Make Exploration pages and Collection pages use pageTitleService (#6786)
* Webpack introduction (#6324)
Development workflow
* Fix #6914: Remove unused setup code that is causing breakages on some systems. (#6942)
* Fix #6678: Add test for ensuring usage of angular.mock.inject (#6924)
* Fix #6799: Add restricted globals rule to eslint (#6923)
* Fix part of #6732: Extensions objects webpack integration (#6889)
* Fix #6884: Update license link in README. (#6886)
* Fix part of #6732: Migrate visualizations to webpack (#6885)
* Fix part of #6732: Migrate RTCs to webpack (#6882)
* Reduce the time for a PR to be classified as stale (#6837)
* Add bullet point about adding assignees (#6807)
* Remove all browserstack-related statements from .travis.yml (#6800)
* Resolve npm errors (and fix some pre-push hook issues as well). (#6769)
* Speed webpack compilation (#6751)
* Routine update of translations. (#6747)
* Use pip_install command instead of vanilla pip install for PyGithub. (#6746)
* Add webpack to codeowners (#6745)
* Fixes creation of tmp folders while running lint (#6722)
* Upgrade types/node dependency to 10.14.6. (#6721)
* Revert package-lock.json in PR #6585 (#6711)
* Changing License to Apache-2.0 (#6697)
* Adds a check to track extra js files and removes local compiled js before each compilation (#6694)
* Update pre push to halt if upstream is not set (#6675)
* Fix release_info.py to stop picking cherrypicks from past releases in the changelog (#6669)
* Full coverage for CODEOWNERS in the codebase. (#6616)
* Fix #6449: Added check for CODEOWNERS to ensure that the most important rules are at the end. (#6560)
* Fix #6364: Added file overview check. (#6451)
Translations
* Translation tab text and speed improvements. (#6709)
* Fix #5627 : Stop recording should stop microphone and angular-recorder should be replaced. (#6708)
New structures
* Fix part of #6346: Pass skill descriptions to the question player (#6967)
* Create a preliminary story viewer page (#6945)
* Add linked_skill_ids to the Question model (#6929)
* Add backward linkage of story to the topic it belongs. (#6855)
* Fix a bug in the Question Player Directive (#6848)
* Score Ring component for the results page in practice sessions (#6813)
* Removed the ENABLE_NEW_STRUCTURE_EDITORS flag (#6780)
* Fix part of #6346: Integrate Exploration player in Question player body (#6692)
* Fix part of #6346: Initial check in for the Question Player Directive (#6620)
Updates to static pages
* Milestone 1.2 Serve more pages statically (#6874)
* Fix #6794: Add landing page for negative numbers and refactor landing page. (#6846)
* Serve get_started page statically (#6818)
* Fix part of #6565: Make story_editor, topic_editor and topic_viewer use pageTitleService (#6742)
Infrastructural changes
* Move SuggestionModalService to services/ (#6935)
* Clean up work on constants. (#6919)
* Rename PretestEngineService to QuestionPlayerEngineService (#6913)
* Migrate standalone controllers in pages to component directives. (#6907)
* Separate constants into separate file per page (#6906)
* Apply folders by feature to Learner Dashboard. (#6905)
* Fix part of #6732: Migrate value_generators to webpack (#6900)
* Apply folders by feature to Exploration Editor. (#6899)
* Apply folders by feature to Exploration Player and Admin page (#6892)
* Apply folders by feature to collection editor and topic editor. (#6890)
* Apply folders by feature to moderate sized pages. (#6879)
* Modify update_configs.py script to include constants.js as well. (#6877)
* Apply folders by feature to lightweight pages. (#6876)
* Apply folders by feature to components/forms/validators/ and split tests. (#6870)
* Apply folders by features to remaining part of components/ folder. (#6869)
* Apply folders by features to part of components/ folder (#6863)
* Introduce Folders by Feature to filters/ folder. (#6860)
* Eliminate controller files for suggestion modals (#6859)
* Eliminate editor_tab.html to merge into exploration_editor_tab.html (#6858)
* Convert Learner Local Nav and Leaner Local Info in ExplorationPlayer to component directives. (#6856)
* Convert standalone controllers in Exploration Editor page to component directives (#6843)
* Convert standalone controllers in LibraryFooter and ExplorationGraph to component directives (#6840)
* Adding solicit_answer_details in the State class (#6810)
* Add skip_files in third_party_size_check.py (#6796)
* Fix a bug where the email header was incorrect. (#6795)
* Generalized image storage (#6783)
* Upgrades MathJax & MathJs (#6778)
* Add comment for npm dedupe command. (#6775)
* Add CollectionEditorStateService import in CollectionEditor.ts (#6753)
* Convert directives in extensions to component directives (#6752)
* Migrate controllers/directives in the pages directory to component directives (#6749)
* Convert directives in components folder to component directives (#6728)
* Add a oneoff job to clean up invalid UserSubscriptionsModel (#6720)
* Remove exploration from subscribers when it's deleted (#6719)
* Add validation for state id mappings. (#6680)
* Fix #6043: Change state's content_ids_to_audio_translations to recorded_voiceovers (#6587)
* Fix #6548: Convert the current per-exploration translator role to a voice-artist role. (#6566)
Testing coverage
* Fix backend tests on develop (#6878)
* Fix backend tests on develop (#6875)
* Fix part of #6550: Write tests for domain/topic_domain (#6873)
* Fix part of #6550: Write tests for domain/question_services (#6854)
* Fix part of #6550: Write tests for controllers/editor (#6849)
* Fix part of #6550: Write tests for domain/user_jobs_one_off (#6842)
* Fix part of #6550: Write tests for domain/collection_services (#6839)
* Fix part of #6550: Write tests for domain/classifier_domain and domain/event_services (#6831)
* Fix part of #4057: Add unit tests for lookupEnvs method of ExpressionSyntaxTreeService.ts (#6828)
* Fix part of #6550: Write tests for controllers/suggestion (#6822)
* Fix part of #6550: Write tests for collection_domain (#6819)
* Fix part of #6550: Make coverage 100% for controllers/library (#6812)
* Fix part of #6550: Write tests for storage base_model, statistics and pages.py (#6811)
* Fix part of #6550: Write tests for classifier, collection, email, feedback and user storage gae_models (#6802)
* Fix part of #6550: Write tests for gae_image_services and replaced PIL with Pillow (#6788)
* Fix part of #6550: Write tests for controllers/acl_decorators (#6782)
* Fix part of #6550: Write tests for controllers/collection_editor (#6764)
* Fix part of #6550: Improve test coverage of core/controller/libary.py" to 92% (#6760)
* Fix part of #6550: Write tests for controllers/email_dashboard (#6744)
* Fix part of #6550: Write tests for collection_viewer and translator (#6741)
* Fix part of #6550: Improve coverage for learner dashboard (#6729)
* Fix #6572: Adds e2e test for written translation project (#6718)
* Fix part of #6550: Write tests for core/controllers/profile.py (#6713)
* Fix part of #6550: Improved coverage for controllers/base.py (#6712)
* Fix part of #6550: Write backend tests for skill_jobs_one_off, story_jobs_one_off, user_query_jobs_one_off , value_generators_domain, and visualization_registry (#6710)
* Fix part of #6550: Write backend tests for core/domain/param_domain.py and core/domain/search_services.py (#6664)
* Fix part of #6550: Increased coverage for learner progress services (#6643)
* Fix part of #6550: Write backend tests for core.controllers.moderator and core.controllers.question_editor_test (#6585)
* Fix part of #5134: Improve coverage for creator_dashboard and gae_search_services (#6480)
* Fix part of #6550: Adds 100% backend tests coverage for resources.py, topics_and_skills_dashboard.py, activity_jobs_one_off.py and classifier_services.py (#6602)
Improvements to editors and players
* Fix #6262: Constrain the width of the tooltip so that it fits the screen (instead of overflowing) (#6865)
v2.8.2 (23 May 2019)
------------------------
Improvements to editors and players
* Fix #6468: Fix the improper alignment of tick mark in the library page (#6552)
* Fix #6200: Fix inconsistent spacing with the lists (#6554)
* Fix #6542: Add card name to the title of the exploration feedback (#6580)
* Fix #6623: Add title to sharing link icons (#6624)
New structures
* Modify topic viewer page and few UI changes on topic editor page (#6455)
Bug fixes
* Fix #6418: Add validation checks to avoid infinite loops explained in issue and comments (#6520)
* Fix #3819: Fix strange dragging behaviour of play later list in learner dashboard (#6544)
* Fix #6229: Reordering Hints and Worked Examples in Safari (#6547)
* Fix #6561: Corrected the "About-->Get Involved" link on the top navigation bar (#6567)
* Fix part of #6159: Fix revert exploration method (#6575)
* Fix broken interaction previews in the exploration editor (#6627)
* Fix lint issue by adding a space after colon (#6631)
* Fix #6667: Renamed e2e test file to fix the issue. (#6668)
Updates to static pages
* Add NOTICE file, per Section 4(d) of the Apache license. (#6568)
* Fix #6562: Removed G+ from the footer and Readme.md (#6569)
* Fix #6581: Remove alternative versions of splash page (#6594)
* Add a checkpoint to check for codeowners to the PR checklist (#6603)
* Add a note regarding changelog labels to PR checklist (#6608)
Translations
* Add proper validation for written translations to allow translation in hinglish (#6588)
Infrastructural changes
* Migrate codebase to typescript (#6530)
* Add a new one off job for validating production models. (#6541)
* Fix part of #5914: Adds unimplemented extract_data method in the BaseModel (#6573)
Code health
* Fix part of #6387: Remove globals ALLOWED_INTERACTIONS_CATEGORIES (#6472)
* Rename states_schema_version to state_schema_version. (#6589)
* Fix part of #6565: Made error page and library page to use PageTitleService (#6595)
* Update pylint to version 1.9.4 (#6626)
* Update pycodestyle to version 2.5.0 (#6637)
* Use package.json to install node modules; upgrade node module versions. (#6659)
Development workflow
* Adds codeowner to core.domain files (#6545)
* Removing the timeout multiplier, to get in sync with linting files (#6559)
* Fix part of #6555: Fix existing lint issues in develop branch (#6563)
* Add removal of app.yaml version field to deploy script (#6564)
* Fix release info script: fix imports, and sort PRs in descending order (#6607)
* Moves lint test from CircleCI to Travis CI. (#6647)
* Introduce `linter_utils` module (#6650)
* Add a comment to explain setting of node path (#6681)
Testing coverage
* Fix part of #5134: Increase coverage from 82% to 100% for core.platform.email.gae_email_services.py (#6335)
* Fix part of #6240: Add e2e test for adding user bio in preferences page (#6512)
* Fix Part of #6240: Add e2e tests for editing exploration properties in coreEditorAndPlayerFeatures.js (#6557)
* Fix part of #6550: Raise code coverage of core.storage.question.gae_models to 100% (#6558)
* Fix part of #6550: Increase backend test coverage to 100% in multiple files. (#6648)
v2.8.1 (26 April 2019)
------------------------
Improvements to editors and players
* Fix #6285: Fixes issues while selecting an answer in the editor feedback tab. (#6532)
* Fixed minor issue in story editor (#6529)
* UI related to the written translation project. (#6503)
* Add send mail functionality for reviewing topics (#6501)
* Fix #2125: Fix alignment of Exploration Graph legend in history tab. (#6402)
* Fix #5802, #5590: Introduce Playthrough Improvements Cards (#6400)
* Fix #6370: Fix Title and Goal label alignment (#6372)
* Fix #5530: Update collection title after save and refresh (#6362)
* Fix #6322: Add IsProperSubsetOf to item-selection interaction (#6350)
New structures
* Support question difficulty per skill (#6502)
* Fix #6377: Create Practice Sessions Page Skeleton (#6381)
* Question Player Backend API Service (#6373)
Translations
* Fix #5921: Adds e2e test for uploading audio in translation tab (#6340)
* Fix #6248 : Prevent guest and unauthorized users from drag-and-drop audio in translation tab. (#6304)
* Fix part of #5898: Aria model with test case (#6290)
* Add written translation property in skillContents and subtopic. (#6241)
* Fix part of #5898: Added Google Analytics for translation tab (#6166)
* Add proper validation for written translations to allow translation in hinglish. (#6588)
Infrastructural changes
* Fix release info script: fix imports, and sort PRs in descending order (#6607)
* Add removal of app.yaml version field to deploy script. (#6564)
* Fix the backend issues with some new structure models (#6514)
* Change the name of the schema_version field in story models. (#6420)
* Make new model IDs only contain alphanumeric characters. (#6408)
* Update release script to use SSH Git URL instead of HTTPS (#6382)
* Fix #6294: Upgrade BeautifulSoup version from 4.6.0 to 4.7.1 (#6355)
* Fix part of #6343: Update js files to remove typescript compile errors (#6344)
Bug fixes
* Fix broken interaction previews in the exploration editor (#6627)
* Fix part of #6159: Fix revert exploration method (#6575)
* Fix few translation tab related issues. (#6571)
* Fix #6538: Adds a proper title for landing pages. (#6539)
* Fix #6181:Removed the exception which occured during clearing search index (#6518)
* Fix issues with New Structures (#6506)
* Fix #6383: Added regex to validate return_url in signup page (#6498)
* Fix #6426: Added regex check for exploration id & nodes now can be saved with null exploration ids. (#6470)
* Fix #6461: Changing error status for missing csrf_token from 500 to 401. (#6463)
* Fix #6452: Fix server errors (#6454)
* Fix #4931: Fixes frozen editor tour (#6450)
* Fix #4632: Fixes learn again-continue button (#6448)
* Fix #6206: Fix enlargement of text in RTE (#6447)
* Fix #6436: Adds removeDuplicatesInArray filter in exploration_player. (#6437)
* Fix #6414: REQUIRE_PAYLOAD_CSRF_CHECK Flag Flipped in Error404Handler class. (#6435)
* Remove unwanted validation check and related tests from exploration. (#6407)
* Fix #6205 : Disabled the reject button, enabled only when some review is entered. (#6384)
* Fix #6325 : modify style of active and inactive submenus on learner dashboard (#6358)
* Fix #6199: Hint tabs failed to open when active hint deleted (#6243)
* Fix #2306: Fixes signup issue when a new tab is opened (#6235)
Code health
* Fix #6494: Added check for style properties to have a space between the colon and the property value. (#6516)
* Fix part of #6387: Email constant fix (#6467)
* Fix part of issue #6316: Remove some scripts from base.html which were not needed in it. (#6466)
* Fix part of #6343: Adds custom type definitions (#6430)
* Fix part of #6387: Remove globals from library.html and preferences.html (#6415)
* Fix part of #5002: Removed iframed from GLOBALS (#6410)
* Fix part of #5002: Remove logoutUrl from HTML (#6401)
* Fix #6316: Refactor base.html (#6399)
* Fix part of #5002: Moved SITE_FEEDBACK_FORM_URL from GLOBALS to constants.js. (#6365)
* Fix part of #6254: Refactor for directives.js and filters.js (#6275)
Development workflow
* Fix #6534: make MR jobs runnable on localhost. (#6543)
* Update pip and Skulpt installations for newer versions of Ubuntu (#6464)
* Move lint tests to CircleCI from Travis (#6453)
* Reorder CODEOWNERS to ensure that the most important rules are at the end. (#6438)
* Add webhook links for Travis, CircleCI & Codecov (#6398)
* Automate changelog generation in the release_info script (#6395)
* Fix #6321: Added checks to validate patterns in CODEOWNERS file. (#6386)
* Add option not to start browser window to start.sh (#6363)
* Add issue template for server errors (#6308)
* Add a script for updating indexes. Move gcloud functions into a separate module. (#6305)
* Port back-end tests from Travis to CircleCI (#6234)
* Fix #5426: Lint check to ensure that each Angular file contains exactly one service/directive/etc. inside it. (#6202)
* Fix #6100 : Added verbose and non verbose mode in the pre submit check (#6146)
Testing coverage
* Fix part of #5134: Make test coverage of core.storage.exploration.gae_models 100% (#6540)
* Fix part of #5134, more robust testing to schema_utils.py (#6432)
* Fix part of #4057: Increase test coverage to 100% for HintObjectFactory.js and InteractionObjectFactory.js. (#6428)
* Fix part of #5134: Make test coverage of core.controllers.collection_viewer 100% (#6427)
* Add pending New Structures e2e tests (#6385)
* Fix part of #5134 : Increasing the test coverage of subtopic_page_services.py from 64% to 100%. (#6360)
* Fix part of #5134: Increased Coverage from 89% to 100% for core.domain.email_manager.py (#6306)
* Add unit test for translation_tab/TranslationStatusService.js (#6261)
v2.8.0 (30 March 2019)
------------------------
New structures
* Fixed the backend issues with some new structure models (#6514)
* Fixed issues with New Structures (#6506)
* Support question difficulty per skill (#6502)
* Added subtopic_viewer (SubtopicPageDataHandler), which returns page contents for a subtopic. (#6327)
* Fixed issues from intuitiveness testing on New Structures (#6314)
* Added story viewer backend handler (#6237)
* Updated the topic backend handler (#6185)
Improvements to editors and players
* Replace google-map with openStreetMap in map interaction. (#6309)
* Fix #2584: Replace default text while inserting links with placeholder (#6286)
Translations
* Adds written translations domain object in frontend for state and question. (#6320)
* Fixes #5784: unhandled promise in the ng-audio library. (#6280)
* Adds written translation property in skillContents and subtopic. (#6241)
* Added active content id service to fix translation tab issues. (#6211)
* Fix #4278: Re-introduce 3-letter language codes for explorations and collections. (#6182)
* Adds functionality to internally manage to add and delete content ids into assets dict. (#6171)
* Translation Script: Adds TranslationScript and ContentTranslation object in state domain. (#6121)
* Fix #5572: added translation help explaining translation features (#5796)
Bug fixes
* Fix #6426: Added regex check for exploration id & nodes now can be saved with null exploration ids. (#6470)
* Fix #6436: Adds removeDuplicatesInArray filter in exploration_player. (#6437)
* Fix #6205: Disabled the reject button, enabled only when some review is entered. (#6384)
* Fix #6301: fixes Dev-mode label showing up for a brief amount of time on page load. (#6356)
* Fix #6174: Address 'Promise is undefined' server error. (#6281)
* Fix #6214: Audio bar hides for auto-generated audio (#6265)
* Fix #6244: Fixing the cancel button in hint editor (#6250)
* Fix #2306: Fixes signup issue when a new tab is opened (#6235)
* Fix #5508: Feedback threads in feedback tab reorder now in real time. (#6183)
* Fix #5487: Fix load issue with multiple same images (#6170)
* Fix #6140: Learner answer overflow (#6154)
* Fix #6111: Aligned checkmarks on learner's dashboard (#6147)
* Fix part of #4231: Make the add response modal scroll visible at all times, via css (#6116)
* Refactor for suggestion modal display (#6093)
Code health
* Moved state related components in a separate dir. (#6334)
* Fixes #6316: Refactor base.html (#6319)
* Fixes #6226: Moves generating CKEditor widgets from app.js to separate file. (#6288)
* Delete old one-off jobs. (#6283)
* Fix part of #6254: Refactor for directives.js and filters.js (#6275)
* Removing scripts and include statements for popovers (#6270)
* Fix #6194: Remove extraneous file. (#6196)
Development workflow
* Update pip and Skulpt installations for newer versions of Ubuntu (#6464)
* Fix frontend tests failing occasionally. (#6371)
* Adds QA team as a codeowner for test files. (#6352)
* Adds codeowners related to frontend pages. (#6332)
* Run lint tests on Travis until fixed on CircleCI (#6328)
* Add issue template for server errors (#6308)
* Add a script for updating indexes. Move gcloud functions into a separate module. (#6305)
* Update deployment script to check for indexes in advance. (#6300)
* Fix #6282: Run front-end tests in pre-push hook, only if changes are made in JS files. (#6289)
* Add some additional pre-release checks. (#6284)
* Fix CODEOWNER wrong dir issue. (#6277)
* Adds code-owners for teams/projects. (#6266)
* Fixes #6233 : Improved the error message for match line breaks controller (#6246)
* Port back-end tests from Travis to CircleCI (#6234)
* Fix part of #5476: Add checks to detect spaces in docstring (#6231)
* Fix #5465: Added check for prohibited imports (#6180)
* Fix part of #5939: Custom pylint extension for checking single character files and newline characters. (#6172)
* Fix #6103: Add summary of errors for lint checks on Travis (#6165)
* Fix #6004: Added a presubmit check to ensure imports of JS files are sorted (#6125)
Infrastructural changes
* Change the name of the schema_version field in story models. (#6420)
* Make new model IDs only contain alphanumeric characters. (#6408)
* Generalized landing page based on subject and topic. (#6357)
* Remove google forum link. (#6333)
* Correct comment string in UserSubscriptionsModel (#6310)
* Adds codeowners for other projects. (#6287)
* Fix part of #6254: Refactor to implement rule of 1 (#6267)
* Fix #6251: Add basic typescript configuration (#6256)
* Fix #6210: Added an exploration whitelist (#6255)
* One off job to validate exploration migration can be carried out successfully. (#6249)
* Fix #6213: Add application_readable to directive htmls handler (#6216)
* Remove Open Sans and Rubik fonts (#6208)
* Update app.yaml to improve caching (#6184)
* Translation Script: Exploration migration including services for handling translation script. (#6175)
* Fix part of #5002: Remove promo bar from globals (#6169)
Testing coverage
* Added pending New Structures e2e tests (#6385)
* New Structures e2e tests (#6315)
* Fix part of #5134: learner_playlist_services - fix grammar and whitespace (#6291)
* Fix part of #5134: 100% coverage for core.platform.models (#6263)
* Fix part of #4057 Make PlayerPositionService.js 100% test coverage (#6258)
* Fix part of #5134: Increased coverage to 100% for question_editor (#6217)
* Added topics and skills dashboard e2e tests (#6204)
* Fix part of #5134: Increased coverage to 100% for mailgun_email_services.py (#6133)
* Fix #5134: Improve coverage to 89% by implementing anonymous feedback (#6086)
* Fix part of #5134: Added test for exp one off jobs (#5972)
* Fix part of #5134: Added test for core.storage.file.gae_models (#5960)
v2.7.3 (16 February 2019)
------------------------
Infrastructural changes