lists.torproject.org
Sign In Sign Up
Manage this list Sign In Sign Up

Keyboard Shortcuts

Thread View

  • j: Next unread message
  • k: Previous unread message
  • j a: Jump to all threads
  • j l: Jump to MailingList overview

tbb-commits

Thread Start a new thread
Download
Threads by month
  • ----- 2025 -----
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2024 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2023 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2022 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2021 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2020 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2019 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2018 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2017 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2016 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2015 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2014 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
tbb-commits@lists.torproject.org

  • 1 participants
  • 18632 discussions
[tor-browser-build/maint-10.0-android] Bug 40127: Update fenix for mozilla83-based Fenix
by gk@torproject.org 26 Nov '20

26 Nov '20
commit 693565603cd6a8f68eb103f4f2c38c4200833035 Author: Georg Koppen <gk(a)torproject.org> Date: Fri Nov 6 10:47:02 2020 +0000 Bug 40127: Update fenix for mozilla83-based Fenix --- projects/fenix/config | 6 +- projects/fenix/gradle-dependencies-list.txt | 824 ++++++++++++++-------------- 2 files changed, 408 insertions(+), 422 deletions(-) diff --git a/projects/fenix/config b/projects/fenix/config index c5cf037..4587ee9 100644 --- a/projects/fenix/config +++ b/projects/fenix/config @@ -8,13 +8,13 @@ gpg_keyring: torbutton.gpg variant: Release var: - fenix_version: 82.1.1 - torbrowser_branch: 10.0 + fenix_version: 83.0.0b2 + torbrowser_branch: 10.5 copyright_year: '[% exec("git show -s --format=%ci").remove("-.*") %]' container: use_container: 1 # This should be updated when the list of gradle dependencies is changed. - gradle_dependencies_version: 9 + gradle_dependencies_version: 10 # Switch to make it easier to grab all dependencies during a dry-run. fetch_gradle_dependencies: 0 diff --git a/projects/fenix/gradle-dependencies-list.txt b/projects/fenix/gradle-dependencies-list.txt index 812bb77..07adc7f 100644 --- a/projects/fenix/gradle-dependencies-list.txt +++ b/projects/fenix/gradle-dependencies-list.txt @@ -7,10 +7,12 @@ sha256sum | url 3690001fc5a57ad176cacf7a13f56219bffb73b93c7978dbac1e1e5db082d6c0 | https://dl.google.com/dl/android/maven2/androidx/activity/activity/1.1.0/ac… d38d63edb30f1467818d50aaf05f8a692dea8b31392a049bfa991b159ad5b692 | https://dl.google.com/dl/android/maven2/androidx/annotation/annotation/1.1.… 2e9372ba7780ef44952adbf86b66e1f08682c1e5277c926185f6564a13799efe | https://dl.google.com/dl/android/maven2/androidx/annotation/annotation/1.1.… -5fe8003b383ec669c597b7a27f278c3ba9f882eee814097453dee3142f04c5a0 | https://dl.google.com/dl/android/maven2/androidx/appcompat/appcompat-resour… 2be4b24b78192681fea20c6e98d17b1e6c8b851a74463466284b76663f2dc8ba | https://dl.google.com/dl/android/maven2/androidx/appcompat/appcompat-resour… -05ddb6ddf163b8ec669d770138fc3c3b98f713f98d01c718463ba7bcc4712a28 | https://dl.google.com/dl/android/maven2/androidx/appcompat/appcompat/1.2.0-… +c470297c03ff3de1c3d15dacf0be0cae63abc10b52f021dd07ae28daa3100fe5 | https://dl.google.com/dl/android/maven2/androidx/appcompat/appcompat-resour… +149dd8cec3664bef8ffde86c396ba1e2ab156ea68793d29800d008bacbc9c0f8 | https://dl.google.com/dl/android/maven2/androidx/appcompat/appcompat-resour… 42251d6d9992dff4c91445213845b976814575436e05c00c3b8964829e1916d6 | https://dl.google.com/dl/android/maven2/androidx/appcompat/appcompat/1.2.0-… +3d2131a55a61a777322e2126e0018011efa6339e53b44153eb651b16020cca70 | https://dl.google.com/dl/android/maven2/androidx/appcompat/appcompat/1.2.0/… +8eb3cbe823b609853b481646e3d2c1aa39dbde53dd269712fd844ffdef2ebb42 | https://dl.google.com/dl/android/maven2/androidx/appcompat/appcompat/1.2.0/… fe1237bf029d063e7f29fe39aeaf73ef74c8b0a3658486fc29d3c54326653889 | https://dl.google.com/dl/android/maven2/androidx/arch/core/core-common/2.1.… 83bbb3960eaabc600ac366c94cb59414e441532a1d6aa9388b0b8bfface5cf01 | https://dl.google.com/dl/android/maven2/androidx/arch/core/core-common/2.1.… e2007d41ddc69ee2a77fed7b5c1dc5a41e01122926ba59696aab7b18d2264411 | https://dl.google.com/dl/android/maven2/androidx/arch/core/core-runtime/2.0… @@ -18,8 +20,8 @@ dd77615bd3dd275afb11b62df25bae46b10b4a117cd37943af45bdcbf8755852 | https://dl.go c0c4ed0160cd2ca18390015de8b392b697c173327c6b2c0947d4e62f6958c05d | https://dl.google.com/dl/android/maven2/androidx/arch/core/core-runtime/2.1… f7eab60c57addd94bb06275832fe7600611beaaae1a1ec597c231956faf96c8b | https://dl.google.com/dl/android/maven2/androidx/asynclayoutinflater/asyncl… 48167eeedc8da79c4d29deaf0d0cd9b5d8fedcae01f1a6efb3f28f08e8982f71 | https://dl.google.com/dl/android/maven2/androidx/asynclayoutinflater/asyncl… -f917426d8ee388fd4a8f4a315ed329b48344783ec37db45f7e691f583021370a | https://dl.google.com/dl/android/maven2/androidx/biometric/biometric/1.1.0-… -43186a32f6f3d493eb80247bef2821d32f8799c07749d34223a83acedda33c32 | https://dl.google.com/dl/android/maven2/androidx/biometric/biometric/1.1.0-… +7fb765ae73ef362447dae025174e81b7bbddaf14b174e837502d2655d13d0aee | https://dl.google.com/dl/android/maven2/androidx/biometric/biometric/1.1.0-… +dba33e4c628c84287c538d7394a2085f8edfaa4d3067c7917dc38d0886df7555 | https://dl.google.com/dl/android/maven2/androidx/biometric/biometric/1.1.0-… 8a28c71070271b6f802f5a285ab9ae5b424e60a4f4bb4e73c0c6f53c1375506d | https://dl.google.com/dl/android/maven2/androidx/browser/browser/1.2.0/brow… 0125474b4ff9dd64d9ebaa003ba0a19f782354e4490e270fc9fb2a39b33c1115 | https://dl.google.com/dl/android/maven2/androidx/browser/browser/1.2.0/brow… 1193c04c22a3d6b5946dae9f4e8c59d6adde6a71b6bd5d87fb99d82dda1afec7 | https://dl.google.com/dl/android/maven2/androidx/cardview/cardview/1.0.0/ca… @@ -31,29 +33,26 @@ a7913a5275ad68e555d2612ebe8c14c367b153e14ca48a1872a64899020e54ef | https://dl.go 67e9066ca4acfdc6e3cc508293c31ba0398057ff118e4f70b1e1813c9a3456d1 | https://dl.google.com/dl/android/maven2/androidx/collection/collection/1.1.… 5595a40e278a7b39fa78a09490e3d7f3faa95c7b01447148bd38b5ade0605c35 | https://dl.google.com/dl/android/maven2/androidx/concurrent/concurrent-futu… 4505b9a5e30a9418b59a9ad6702c3e4193aea6e691a3d03cf220c7640ad083e2 | https://dl.google.com/dl/android/maven2/androidx/concurrent/concurrent-futu… -b3c695234ca7b1b28c303471571b1f2e39d2b042e1daf7864fbf8ec9adbc1157 | https://dl.google.com/dl/android/maven2/androidx/constraintlayout/constrain… -f182f3a681ae1c7ea44d0dddab950de912d4ffbc98979fd5e20671aa4d7cbedd | https://dl.google.com/dl/android/maven2/androidx/constraintlayout/constrain… -d5d56b766a4070490e87a9462e43c4eaa836db95b53d77bcf928aeeebc5ad84b | https://dl.google.com/dl/android/maven2/androidx/constraintlayout/constrain… -3ba1bd1b4b6cffb4ffe59bbbf0b7feaffb77aa9ecf008c3e59941a2f9be4aa8b | https://dl.google.com/dl/android/maven2/androidx/constraintlayout/constrain… +39855ac7c9d9ff4370d26e00b5b2eb855658acea7c74a6ae5e4b66ae964b1c5f | https://dl.google.com/dl/android/maven2/androidx/constraintlayout/constrain… +49f78efb8cd61ca834ccf6cbad281e90f650b46489c63ca48b58ed3546120a80 | https://dl.google.com/dl/android/maven2/androidx/constraintlayout/constrain… +23a9545e64581b328d4d842ee30fd9df9c1512fe5cb7aa7beede5fe96580b608 | https://dl.google.com/dl/android/maven2/androidx/constraintlayout/constrain… +b71d08c17632724426e77d362988cc0f06c8139a0ad112e0abb437e1b48291ac | https://dl.google.com/dl/android/maven2/androidx/constraintlayout/constrain… b4029635ee4bf28a1c797ba18e4f02d3a0ec9f32fee5aea9add982b775959929 | https://dl.google.com/dl/android/maven2/androidx/coordinatorlayout/coordina… 44a9e30abf56af1025c52a0af506fee9c4131aa55efda52f9fd9451211c5e8cb | https://dl.google.com/dl/android/maven2/androidx/coordinatorlayout/coordina… a67c52c9ddfaff2ffb2fd4b97cd94fa382e837ea8a5874d029e0a04fa63e5caf | https://dl.google.com/dl/android/maven2/androidx/coordinatorlayout/coordina… -dcb74d510d552b35eff73b0dd27b829649535f3902e5b5a1f26040383c10a940 | https://dl.google.com/dl/android/maven2/androidx/core/core-ktx/1.2.0/core-k… -29eaddba4e6a35e68a128e594ebae3b72ef7e767f1b273ef93dc2ed019ff97f6 | https://dl.google.com/dl/android/maven2/androidx/core/core-ktx/1.2.0/core-k… -3d1f4e37b77dd92353879a040ab4ce2f706798bcbdf066147491c3642b3f79a6 | https://dl.google.com/dl/android/maven2/androidx/core/core/1.2.0/core-1.2.0… -fbcd03f456764c7f076e27226a51cb2281fecc57cc4b5e15ab5a2e388ac83300 | https://dl.google.com/dl/android/maven2/androidx/core/core/1.3.0-rc01/core-… -1c6b6626f15185d8f4bc7caac759412a1ab6e851ecf7526387d9b9fadcabdb63 | https://dl.google.com/dl/android/maven2/androidx/core/core/1.3.0/core-1.3.0… -3ea5d60db139d9fbc5c5f7ac06d779fb75dafe71b0931bc9db863231294bc2d5 | https://dl.google.com/dl/android/maven2/androidx/core/core/1.3.0/core-1.3.0… +78309600ba6fe4473c045976906649b25b3c9a49b14642f8a8a7dcd9e1afe7c8 | https://dl.google.com/dl/android/maven2/androidx/core/core-ktx/1.3.2/core-k… +ba6a806bc1a6faf0cbae08397b3f781feca293ff2b5f3aa600b3d2db142e5ab4 | https://dl.google.com/dl/android/maven2/androidx/core/core-ktx/1.3.2/core-k… +94de196cd67950cff6ef3e1ac59015f8eaaf61840bdc238f2cf54ddef8dd0be9 | https://dl.google.com/dl/android/maven2/androidx/core/core/1.3.2/core-1.3.2… +afb5ea494dd083ed404cd51f580d218e37362f8ae326e893bee521290ed34920 | https://dl.google.com/dl/android/maven2/androidx/core/core/1.3.2/core-1.3.2… a81c8fe78815fa47df5b749deb52727ad11f9397da58b16017f4eb2c11e28564 | https://dl.google.com/dl/android/maven2/androidx/cursoradapter/cursoradapte… 62d95c89850af21030b19f14d5f7ecd6d8bcc9a3014c59002ec99624caac8100 | https://dl.google.com/dl/android/maven2/androidx/cursoradapter/cursoradapte… ce9e47b87184f5bd5e139e9becd5b26476d42d78c31bf2fdedc37acb41b9ad49 | https://dl.google.com/dl/android/maven2/androidx/customview/customview/1.0.… 01f76ab043770a97b054046f9815717b82ce0355c02967d16c61981359dc189a | https://dl.google.com/dl/android/maven2/androidx/customview/customview/1.1.… c814d435f73e9e6d169886d0eb96b5c5361feb48449fbbb315c908c03c588c94 | https://dl.google.com/dl/android/maven2/androidx/customview/customview/1.1.… -dd93f1c8e81d39d550629659cb7b7938dab401767053173a74189d1c462f108e | https://dl.google.com/dl/android/maven2/androidx/databinding/databinding-co… -bc37a0228311fb37cf7c90f760dbfbc4bf80be303419b00669fbeae764c37ccc | https://dl.google.com/dl/android/maven2/androidx/databinding/databinding-co… -918262759635720d1f0ad29fbb40a46a8ab57505b994f0d97953790d8222c073 | https://dl.google.com/dl/android/maven2/androidx/databinding/databinding-co… -8b1ccde96f52e1a5913765b66c88bc43ff7aea3ccd27eecac6494f5a1afe9d5e | https://dl.google.com/dl/android/maven2/androidx/databinding/databinding-co… -bb7d574cb955f8f74cc91e6165c6a89c35a24b9d6144445a37c96ba6ffff8f36 | https://dl.google.com/dl/android/maven2/androidx/databinding/databinding-co… +1cc969dc9754eace3c8255b87b57ca564fe0b037061f23e5b767d8a1f7538848 | https://dl.google.com/dl/android/maven2/androidx/databinding/databinding-co… +4bc5e2587f40db5ffb422c831fa1d34eac131b2574fc8a1c41e172fa3f5e9d97 | https://dl.google.com/dl/android/maven2/androidx/databinding/databinding-co… +d7346bc57ab5bf5cad74549796e2997cba2834ef1513537639e32e60674063cc | https://dl.google.com/dl/android/maven2/androidx/databinding/databinding-co… +ef3e51cbdcc7bd677a0611beb3183dc4f62e915736a4449517719e737764f7b5 | https://dl.google.com/dl/android/maven2/androidx/databinding/databinding-co… 865a061ef2fad16522f8433536b8d47208c46ff7c7745197dfa1eeb481869487 | https://dl.google.com/dl/android/maven2/androidx/documentfile/documentfile/… 013288a9317a552706ce625fb24493e8223288529223ec578cf855a5ae9c16e5 | https://dl.google.com/dl/android/maven2/androidx/documentfile/documentfile/… da6733425a83f5ce850878fa7201082345fed7c668dd58550fdd19c0396c6fa4 | https://dl.google.com/dl/android/maven2/androidx/drawerlayout/drawerlayout/… @@ -61,6 +60,7 @@ da6733425a83f5ce850878fa7201082345fed7c668dd58550fdd19c0396c6fa4 | https://dl.go 27f4d1caa432aaa353bbbac70947a4d64ea80d45c31002768b3e112d93afc326 | https://dl.google.com/dl/android/maven2/androidx/drawerlayout/drawerlayout/… 50f0f3b734f93829eeac7456b7cb13e5430741e555c535911a958ee4a8242bca | https://dl.google.com/dl/android/maven2/androidx/fragment/fragment-ktx/1.2.… 7353bdc194dab699167d79876efb779cf9a172b2d6b11d37fd7d789e7e100395 | https://dl.google.com/dl/android/maven2/androidx/fragment/fragment-ktx/1.2.… +e329d673361e94d2e8f4d4d14e1f0586368bd43fb19efd5766ce7498bcccd162 | https://dl.google.com/dl/android/maven2/androidx/fragment/fragment/1.0.0/fr… ef78eb27ac02ddf3545d5f8a3857c73a2837a01853f8d5fcf77251011db52544 | https://dl.google.com/dl/android/maven2/androidx/fragment/fragment/1.1.0/fr… d19e82d142def6c4e136da70bf92f194c0ecc61d14ab4e84567b2ced0920fa93 | https://dl.google.com/dl/android/maven2/androidx/fragment/fragment/1.2.5/fr… df0aca46b62bb47cc662cbcee63372db6d2a2859478ee38b594fba3433fe30a5 | https://dl.google.com/dl/android/maven2/androidx/fragment/fragment/1.2.5/fr… @@ -83,7 +83,6 @@ bd53c64b038585215b4959c1a388437a3ad525608a31c58e4283c3e371727d4d | https://dl.go 510e33b8b6ca33d2fcb3b7615a4528e338b438de398f3ee8de119c26508a5fdd | https://dl.google.com/dl/android/maven2/androidx/lifecycle/lifecycle-extens… 5951f882e95b7e05ceb9adfca0fa2ebd511d63ea5a00da4eae6c6d0c1903da18 | https://dl.google.com/dl/android/maven2/androidx/lifecycle/lifecycle-liveda… 85695cce0045ebb9cbba3e2fbe7d7953489bdeb517a1b2e834313ce54556ba22 | https://dl.google.com/dl/android/maven2/androidx/lifecycle/lifecycle-liveda… -650fda1a232f5669742140571570ccad2f47a71225ab0f02179bc8d144b982c8 | https://dl.google.com/dl/android/maven2/androidx/lifecycle/lifecycle-liveda… 556c1f3af90aa9d7d0d330565adbf6da71b2429148bac91e07c485f4f9abf614 | https://dl.google.com/dl/android/maven2/androidx/lifecycle/lifecycle-liveda… aa51621be3817d1f5d21336b0c0525fe96ae899cec656c13d8ea18a51ea32c2f | https://dl.google.com/dl/android/maven2/androidx/lifecycle/lifecycle-liveda… 69c3532a70d39adfa13458c9e06d7adcd88a2259f5e9ea517cc7eed26c5fc491 | https://dl.google.com/dl/android/maven2/androidx/lifecycle/lifecycle-liveda… @@ -152,8 +151,8 @@ ebfcf0c093902f14ef7e07af4fc5feb41c81d2155d51277daa2883d5fca47ec3 | https://dl.go a70d6764e15523445210ddb03c44d3d2878cc0df335796a7101dc18708fad883 | https://dl.google.com/dl/android/maven2/androidx/preference/preference/1.1.… 1d5c7f3135a1bba661fc373fd72e11eb0a4adbb3396787826dd8e4190d5d9edd | https://dl.google.com/dl/android/maven2/androidx/print/print/1.0.0/print-1.… 62482c0594841bee24bb996abb6cb7b320a6a3b77dca9f0a0ba4fe3be5530aa7 | https://dl.google.com/dl/android/maven2/androidx/print/print/1.0.0/print-1.… -d647f492778d7d2d0552f2628344b7e8a2c0beb21abe64bd168a023f579072a8 | https://dl.google.com/dl/android/maven2/androidx/recyclerview/recyclerview/… -0f73b5d8b9a5d01904bfc451d25dbad400f6c5993f9025a6d28e801727ac20a3 | https://dl.google.com/dl/android/maven2/androidx/recyclerview/recyclerview/… +1cadc61c970c46ac91b21968bd16bb8d2cc10fa18c80b9725d5e1425c436dd3f | https://dl.google.com/dl/android/maven2/androidx/recyclerview/recyclerview/… +c046a7b5f4a561086d315a12bdd4d83e394c4160275bb9e3a2acff6653433957 | https://dl.google.com/dl/android/maven2/androidx/recyclerview/recyclerview/… 388d33ff503d8c3d010a5dd7ecfe0e44bb19afcc28fd1e6336755d00ef7ad3c6 | https://dl.google.com/dl/android/maven2/androidx/room/room-common/2.1.0/roo… 831d4e3c7e5481e73f37c1cb2e08f24e27306976d3c83916f89b00b28857998b | https://dl.google.com/dl/android/maven2/androidx/room/room-common/2.1.0/roo… 2b130dd4a1d3d91b6701ed33096d389f01c4fc1197a7acd6b91724ddc5acfc06 | https://dl.google.com/dl/android/maven2/androidx/room/room-common/2.2.5/roo… @@ -206,7 +205,6 @@ cd96f2448409d03e190056c96e1fe5f521aa67602ab52a5e41dcec2c94218f2a | https://dl.go 276a20116b705fb75b9003ee9496c56f6fd3b32375fb232472811eba60a040bd | https://dl.google.com/dl/android/maven2/androidx/vectordrawable/vectordrawa… 46fd633ac01b49b7fcabc263bf098c5a8b9e9a69774d234edcca04fb02df8e26 | https://dl.google.com/dl/android/maven2/androidx/vectordrawable/vectordrawa… 5b0e2d5b2179e54804785cbc21ce5f473b5e1ddd55a57da482e94dcd39492bb2 | https://dl.google.com/dl/android/maven2/androidx/vectordrawable/vectordrawa… -47ee7c5543239a651f8fb81310cadeeaab8e38a2d844d7bb92dd086e4ffbb320 | https://dl.google.com/dl/android/maven2/androidx/versionedparcelable/versio… 9a1d77140ac222b7866b5054ee7d159bc1800987ed2d46dd6afdd145abb710c1 | https://dl.google.com/dl/android/maven2/androidx/versionedparcelable/versio… c729c7be0cc06323bda829d460666e79dbd43b799a21089a44bd3b293dc253b5 | https://dl.google.com/dl/android/maven2/androidx/versionedparcelable/versio… 147af4e14a1984010d8f155e5e19d781f03c1d70dfed02a8e0d18428b8fc8682 | https://dl.google.com/dl/android/maven2/androidx/viewpager/viewpager/1.0.0/… @@ -219,129 +217,106 @@ de617480ce64e4e9055e2d0295c87ee20929b06c4f2a5efdaded27dcca8520e4 | https://dl.go 960a24728eaedfc4ff7a2f366b9360e02a1d88f9eb0a9c7142ed94ed462797b0 | https://dl.google.com/dl/android/maven2/androidx/work/work-runtime/2.2.0/wo… 6103c033ba6f0b1eeb034f8c72349cfa17a597fbff13f72093f096b8680253c3 | https://dl.google.com/dl/android/maven2/androidx/work/work-testing/2.2.0/wo… cfbbf1f7939c1667c30962e432affcc4054ffa421908a47f512dd99c4d738a07 | https://dl.google.com/dl/android/maven2/androidx/work/work-testing/2.2.0/wo… -37e0e3c8fb2ed7db90513874fc69bd9ca2b33734eb190042fc19007c89bd4554 | https://dl.google.com/dl/android/maven2/com/android/databinding/baseLibrary… -05c99b4551fb8e6b0b65b438d66c395b723aaab44e648284a37180319b6cb515 | https://dl.google.com/dl/android/maven2/com/android/databinding/baseLibrary… +d2ff1905ff7e7cbed7ecce20408a76b69a52d52fdf655b696ba49007c61a0e11 | https://dl.google.com/dl/android/maven2/com/android/databinding/baseLibrary… +ec6fe50839c05802cc262ec5611e160d17dff69c5a634bb322b27341f9176e9d | https://dl.google.com/dl/android/maven2/com/android/databinding/baseLibrary… 6f80ef912434a84425977a90b41ab26259f7d0c953edaf90039e7d01d44383ab | https://dl.google.com/dl/android/maven2/com/android/installreferrer/install… 9abd60ac95742f8232e973bea7aac017e626fac5f4e978ad53ce4e012a7a73ad | https://dl.google.com/dl/android/maven2/com/android/installreferrer/install… -74d1630b61c572f89d66d7068655e416d113acf140968bfa971088b192666a47 | https://dl.google.com/dl/android/maven2/com/android/tools/analytics-library… -4f7ef1c385b9f132862798ba8a415a49c10d62b4dc181278d6eb88f6097b9ce1 | https://dl.google.com/dl/android/maven2/com/android/tools/analytics-library… -4025020372dda75065cf06fa55083a7c538e9407c658f45e9a942df69ef3120e | https://dl.google.com/dl/android/maven2/com/android/tools/analytics-library… -f6040a5eeaf3078b44451eca03f2872cb9b72cc373da2ca62df1f219fa429bfd | https://dl.google.com/dl/android/maven2/com/android/tools/analytics-library… -5fce9291d0900566d7837e560ede3ff420aaf28121908de66587a49c7d6d3d09 | https://dl.google.com/dl/android/maven2/com/android/tools/analytics-library… -33176ffe9227db05f66311c861a1d7e1b353f472ba8c8403eb8e25e3e9d588a9 | https://dl.google.com/dl/android/maven2/com/android/tools/analytics-library… -482c647ba671879772359d697f790eebe0787928f14b59f076ed89897738f33a | https://dl.google.com/dl/android/maven2/com/android/tools/analytics-library… -fdf2963b5ba49cfd55bb4fad7d62b8fef80ec04b7af90d11327c44a3b4fdc433 | https://dl.google.com/dl/android/maven2/com/android/tools/analytics-library… -965e820d7aacf4bbcbdd8844a35d1ab495ccf20ab338dbeab34fbc2053312ef6 | https://dl.google.com/dl/android/maven2/com/android/tools/analytics-library… -5646a61d9dd4a52e0aaa2a8d152611801a2c7add37690c4326d8372499e6728c | https://dl.google.com/dl/android/maven2/com/android/tools/analytics-library… -b1110504d53f62ad2952a57997748f72a9fc21738b499598ce3e16ef5805216e | https://dl.google.com/dl/android/maven2/com/android/tools/analytics-library… -1f474cdfa536e99f9641e1891d36647361e4070aeaac001efe0dd0bc1f9dd70d | https://dl.google.com/dl/android/maven2/com/android/tools/analytics-library… -ed85396cb0d5c69849d30851dc8ed4f84219fad9dc6e055a29b6fc9f0679f756 | https://dl.google.com/dl/android/maven2/com/android/tools/analytics-library… -4ae1c1b353344920324c5fff2119700879140fa1028a4221c963e01ba0cb4098 | https://dl.google.com/dl/android/maven2/com/android/tools/annotations/26.5.… -1235249dd8f2ba32f1de7069231e042d4419f2d3f4b3b2139e8a3a3265797f9a | https://dl.google.com/dl/android/maven2/com/android/tools/annotations/26.5.… -3f09bac5b5b77495c7bfe6cb2c5c6b9d5f871f7f9cd964b2936bb18334273e5d | https://dl.google.com/dl/android/maven2/com/android/tools/annotations/26.6.… -92f6295089c4bfc523562e94ec85d97303f07d1f167cf479f2eff72626237dd1 | https://dl.google.com/dl/android/maven2/com/android/tools/annotations/26.6.… +9a29bf34909bca58b85cacda7d1f09cebe8079e56722911395f1ad6a0b377b94 | https://dl.google.com/dl/android/maven2/com/android/signflinger/4.0.1/signf… +e02d4311cfb31fe609fbd6961272c27cf049e2da65cf1f4b726a5253e6e8a631 | https://dl.google.com/dl/android/maven2/com/android/signflinger/4.0.1/signf… +e83aef89309f663b54ab5ac4db87e84373ac0a0d8f5054692645269f5748abf3 | https://dl.google.com/dl/android/maven2/com/android/tools/analytics-library… +97e5e2fe310993dff1160e2e47a194fd09d6cc0b6bbd4ccf07b64c12204b2c3b | https://dl.google.com/dl/android/maven2/com/android/tools/analytics-library… +76e46c6be20d765f57a825eda2d1a438b0de537333614525798a30b5e0891329 | https://dl.google.com/dl/android/maven2/com/android/tools/analytics-library… +e61678b0d86b687df54a82ba419b00c243a47f50be1ea7541b09f8d60149e394 | https://dl.google.com/dl/android/maven2/com/android/tools/analytics-library… +a55260f65424bffadf4a5288d63bd564eedd248373f24b747312b4b74f6749e0 | https://dl.google.com/dl/android/maven2/com/android/tools/analytics-library… +39cb4737b1851830ec2760932fac05b65ca8b8fd5259c3edd0632d2ef4272ab5 | https://dl.google.com/dl/android/maven2/com/android/tools/analytics-library… +cb9c60fa882c814c447d52f3d4ca255426b490cfd594fc61e4c79ac90348ec13 | https://dl.google.com/dl/android/maven2/com/android/tools/analytics-library… +19df839f8cffcdaa31ab6fd433a88096654f6db9594d2a452386624912d767c7 | https://dl.google.com/dl/android/maven2/com/android/tools/analytics-library… +b3e58b463925b0ed0dd873bc924791aa6cd8dc3248ef692403106c5fc62a7b2c | https://dl.google.com/dl/android/maven2/com/android/tools/annotations/27.0.… +1d144c563acc1118111db5890e451e6fad71412971d25a60c852c7ea4c1e0be1 | https://dl.google.com/dl/android/maven2/com/android/tools/annotations/27.0.… fac0435e08898f89eeeb9ca236bea707155ff816c12205ced285ad53604133ca | https://dl.google.com/dl/android/maven2/com/android/tools/build/aapt2-proto… a24bdd4e8e374fdcd8cef8d77ea723f147ccd0f25dc6de4fbe290039be904339 | https://dl.google.com/dl/android/maven2/com/android/tools/build/aapt2-proto… -704593a296c80ffa5f73080271d3e72a8ef61fa28a6ba653ac7f0e8a84aa8c60 | https://dl.google.com/dl/android/maven2/com/android/tools/build/aapt2/3.5.2… -f5452a65a5130b1d7866eeb91076770f084238233985af9a83d04e410d98f9ad | https://dl.google.com/dl/android/maven2/com/android/tools/build/aapt2/3.5.2… -9c0af57dd6ca766ccc7447332b99116ece02a3e0db5cfed52566abd9248da693 | https://dl.google.com/dl/android/maven2/com/android/tools/build/apksig/3.5.… -3c845e31a2b95c179e736b90ef5cf7ed1efdde98cc2afe3d88f4f6ee623651ec | https://dl.google.com/dl/android/maven2/com/android/tools/build/apksig/3.5.… -30ab5d689cd077a5edd18a771489d2b410103a2a5bde41ba79a925208af21e19 | https://dl.google.com/dl/android/maven2/com/android/tools/build/apkzlib/3.5… -bf156143c61a307e7976528843741e348265358b3dcf8d69429750c5e021cbdc | https://dl.google.com/dl/android/maven2/com/android/tools/build/apkzlib/3.5… -d109da900f128e4e8143c02ff4bbebe39bfffa987947274d12187281e54ce821 | https://dl.google.com/dl/android/maven2/com/android/tools/build/builder-mod… -163074be39e62615d7b7ae195e1c540980f80b3df7c098b2258ec5d435fe5fcd | https://dl.google.com/dl/android/maven2/com/android/tools/build/builder-mod… -b9421d025ba931c339a826f6ad1d7cc930c56f58f7c6a536994d2b602fa108e5 | https://dl.google.com/dl/android/maven2/com/android/tools/build/builder-mod… -7c218e7b6cded466805822ca8107fb7811b261c9b3dcc7e39eb13ef5234963ca | https://dl.google.com/dl/android/maven2/com/android/tools/build/builder-mod… -f1d9c13d927a99a9b4762328963e17032868644dc9aeddcd8567cae2834440a6 | https://dl.google.com/dl/android/maven2/com/android/tools/build/builder-tes… -49aa0a1917f00b6929f47c981c2ad51fab1762d926f4da870a614c574ce9ec23 | https://dl.google.com/dl/android/maven2/com/android/tools/build/builder-tes… -d7b58812ffb033d7f4340ee48bf3ebf51aea1c08e058ca0131a7f1a4900bff85 | https://dl.google.com/dl/android/maven2/com/android/tools/build/builder-tes… -cdb26f920ab86a177b917679351e03ea2b47fc49341b9a617bb813d0645f519c | https://dl.google.com/dl/android/maven2/com/android/tools/build/builder-tes… -6f0fe2d08cc76dc96761f025d60530664d102d3e48759993ad30edf82fce379b | https://dl.google.com/dl/android/maven2/com/android/tools/build/builder/3.5… -e33e08e21fcf571d1f0094b460a3fba27c54c2680c708a8047a95e5b02a82540 | https://dl.google.com/dl/android/maven2/com/android/tools/build/builder/3.5… -c179bd571a1f69143ac8d94c44d0c7d3601ec2332a1c9bf6036e3fe505c3c2f7 | https://dl.google.com/dl/android/maven2/com/android/tools/build/builder/3.5… -50c44557ca75b068e364ac35a648b81eeba7639ab5eb04036e390c727ad2fa3d | https://dl.google.com/dl/android/maven2/com/android/tools/build/bundletool/… -124e124227803689b71da7440f0dbdff71cbb4c661a18e0f4e2e0d3a80d367c2 | https://dl.google.com/dl/android/maven2/com/android/tools/build/bundletool/… -b5560d1e3a0f3d23c82a6e512d1a13de20f042293e66770ccf7dad8a25fb68ef | https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle-api/… -23f55cb5b9527183636d0439c45ba3d8acbb3c142e7af9b1cdea10510dcfe375 | https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle-api/… -5f95851e23bb40d7b59ffd191a393fe47e42daff23e41c7a8f1f6adb6ac0717a | https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle-api/… -45ea74e2070453510ab1e5efbbfba814feb0d9e5befb4b6817308818f9055f2a | https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle/3.5.… -5b3feca4a449550b17130c2a7f191e081d032e18115756c4272e62c80942eb83 | https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle/3.5.… -48b3438df6b298293d20d0ca9fd0114f571fffeacd3f2ebd1c77e31d45c8c93e | https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle/3.5.… -c9f8b016144cfb31c5aee92d47f34de23289167cac5e8ef68365b2dd05766f11 | https://dl.google.com/dl/android/maven2/com/android/tools/build/jetifier/je… -db025ad1bbc6896edf0f67cda1222ba9b7ec9a0187df7f4fd0a318475c758e4e | https://dl.google.com/dl/android/maven2/com/android/tools/build/jetifier/je… -1dd481e7606ccb30868908d9ae80f27d1c5ba882f792532bd91ed731c54f4efb | https://dl.google.com/dl/android/maven2/com/android/tools/build/jetifier/je… -4973a6c6d7f89297a1cfea56c623cea72b3db3b4a49992afa00dd77ac052b89f | https://dl.google.com/dl/android/maven2/com/android/tools/build/jetifier/je… -4ea417418b8a8b9af3557798b32326ee208388b25bc2f1016477bbd060d88db8 | https://dl.google.com/dl/android/maven2/com/android/tools/build/manifest-me… -04575745fa9df89b6ea8018a14cfdbfc80c0187d4b6090264af15ea117d60004 | https://dl.google.com/dl/android/maven2/com/android/tools/build/manifest-me… -bad62bd40d1c8cf9326795ec5f543d650219d59013534fd7ea7f5b9403250b73 | https://dl.google.com/dl/android/maven2/com/android/tools/build/manifest-me… -4d0fe4a66fd535a6f5053af4b67b9e7a831453b4bc969141a3e23e1d2c39904c | https://dl.google.com/dl/android/maven2/com/android/tools/build/manifest-me… +60dc539f2835a4730864feab9d8f02b6f817f2be99eefd2e6bb6c7def8d98713 | https://dl.google.com/dl/android/maven2/com/android/tools/build/aapt2-proto… +61b958baf830e81b69ebe1b54e0b0b649b54d99b6b59d42786a1c1f89a02f9bd | https://dl.google.com/dl/android/maven2/com/android/tools/build/aapt2-proto… +90d19f92f03b0bfbe565ff2c841baba20845ef904527e45afb3aeae1f5c0b01f | https://dl.google.com/dl/android/maven2/com/android/tools/build/aapt2/4.0.1… +dbe3fc8ec6323c86d7184124665627fd5e56096df0753140a4c907eadc2914ef | https://dl.google.com/dl/android/maven2/com/android/tools/build/aapt2/4.0.1… +c02f9fc6764649d1c203ccc5ef2b52dd481647c63ae0e4b32ca6e12a58f8f81a | https://dl.google.com/dl/android/maven2/com/android/tools/build/aaptcompile… +ff0f8b1b58c681a6b919a3f7e0fb893445d429a4f9613cf324eee6b4f01ca649 | https://dl.google.com/dl/android/maven2/com/android/tools/build/aaptcompile… +a41dc0674a27c39cf1c32aa405e7e52245afa5da9edbcd63db6f209a98202645 | https://dl.google.com/dl/android/maven2/com/android/tools/build/apksig/4.0.… +980990434e96bf73e3b7f443edffb71b3577ff4a06f5519b9f16eac8623af8a2 | https://dl.google.com/dl/android/maven2/com/android/tools/build/apksig/4.0.… +fad2752409d5c64996d69bde7fd4869f9265da2266fba651a37ae54bd3fc0edf | https://dl.google.com/dl/android/maven2/com/android/tools/build/apkzlib/4.0… +777b00b3fdf4ec23df055064f0cec47edc4a1bb4507e8925efcf68282aa6a219 | https://dl.google.com/dl/android/maven2/com/android/tools/build/apkzlib/4.0… +319ec957af0e1499363f35357f649a6d0e6795b194fb72d1fdf3942bb06ff33a | https://dl.google.com/dl/android/maven2/com/android/tools/build/builder-mod… +0df48112c60f8327d78794082238ecc5cebb78a7e5c3231c2081cc0ab2263016 | https://dl.google.com/dl/android/maven2/com/android/tools/build/builder-mod… +4c6cdcb86d93a9b6535da9f7edf502d1ccac3c955fb826280077462dbdcd31e6 | https://dl.google.com/dl/android/maven2/com/android/tools/build/builder-tes… +ef2762d952cd110536cd329297d6129b7022fd11f02185052bfe82abdf0be30e | https://dl.google.com/dl/android/maven2/com/android/tools/build/builder-tes… +a62335a028a894e54f31d60c2014510a583c7676a5ee2e9f8b05d5172b4b2fee | https://dl.google.com/dl/android/maven2/com/android/tools/build/builder/4.0… +309c4de4aa7d46d85874b812d58de5de340c547f4d5eb4377b66b67e78189026 | https://dl.google.com/dl/android/maven2/com/android/tools/build/builder/4.0… +9610a0e2691cae17d615c207b866b2aba2583e30ff4dad139d9da1ea1ab14355 | https://dl.google.com/dl/android/maven2/com/android/tools/build/bundletool/… +28084a3e5f68696440e6b0c3cda7649083468e27720bfe02bc89c5b04525af22 | https://dl.google.com/dl/android/maven2/com/android/tools/build/bundletool/… +b58bcead62bb3d7eb11bbb12bc4ed1d44887d041b27e6c9a1bdc751686611aa5 | https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle-api/… +6698c4d15afa82d98ee3aea0482718b68dd34f433286a4dfbdfdca7c05678837 | https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle-api/… +aa8c109a1ce0678dabc8e622f4b83a5d7ad1d88a57e79ae2084bf797e159d0e3 | https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle/4.0.… +5e252829277a43c693fedbf7b28fdffcf835381fac302a79c74b90f1304c77e8 | https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle/4.0.… +9bb3a91e871e784446e4dd1e1d1dea5c322e271cba8278c1dec3669a66aee858 | https://dl.google.com/dl/android/maven2/com/android/tools/build/jetifier/je… +4688b442fb347820a85a8e0f019978f9eaa762fbbbadb774ab945119d7304da5 | https://dl.google.com/dl/android/maven2/com/android/tools/build/jetifier/je… +1838f9ee70120e64f45612ca071972ac83ddc118185abffbce3932a4710325eb | https://dl.google.com/dl/android/maven2/com/android/tools/build/jetifier/je… +388408f994059031929d14723ec01411f85c6834608465763d4c79afe220a738 | https://dl.google.com/dl/android/maven2/com/android/tools/build/jetifier/je… +afc9ccac93c3655f4b8500170902d3277722eed772b9015c9f49f881d7c1d0bd | https://dl.google.com/dl/android/maven2/com/android/tools/build/manifest-me… +07f502a131cbd79439b7fe61deac3760eae993338be88ef6ddee9714a48e6152 | https://dl.google.com/dl/android/maven2/com/android/tools/build/manifest-me… 4de4a3d05e1c534c2db9e4588bf34082bb2bd232d8abb9727c430290ce225740 | https://dl.google.com/dl/android/maven2/com/android/tools/build/transform-a… 7c62f3856e8abca1d79257925f26c12668693f5d95904056bbac88605cfd8575 | https://dl.google.com/dl/android/maven2/com/android/tools/build/transform-a… -fbc87a0ace8a7700623f9c476638a0a042a612496a9caee5fb6e03089ec89de5 | https://dl.google.com/dl/android/maven2/com/android/tools/common/26.5.2/com… -0ffc8b4edfc914ebed7aff2cd5a062ed609e6c110bda251a593a986a2ddb50fe | https://dl.google.com/dl/android/maven2/com/android/tools/common/26.5.2/com… -005a98b257a9bb2bb6aefec9e8feeb67ed9b21bac980793487787316acecfc37 | https://dl.google.com/dl/android/maven2/com/android/tools/common/26.6.1/com… -ee85bd4cf3d7691a04c97d4712b777677a25b51415959ea28c82dfacf7bac713 | https://dl.google.com/dl/android/maven2/com/android/tools/common/26.6.1/com… -5a1eed6a3629488227d8b237df11329bbbc4322b2c9fd7f8dc7a10f3f9fc65fb | https://dl.google.com/dl/android/maven2/com/android/tools/ddms/ddmlib/26.5.… -54165fe9a9ad4a97d8094c72fd328682dd127fd11d3a764d17d660f759fa79a1 | https://dl.google.com/dl/android/maven2/com/android/tools/ddms/ddmlib/26.5.… -ab69331fb76f3181fcbc0b90940dd223e997a3fad242ae8ed1bb4c669c6607ed | https://dl.google.com/dl/android/maven2/com/android/tools/ddms/ddmlib/26.6.… -1e18a0a5e5364ecd321e8651fddd103826f624f8b30902f5e063c08ac3fee76e | https://dl.google.com/dl/android/maven2/com/android/tools/ddms/ddmlib/26.6.… -a719efc45c71346332b4a5b6ad15bab48908b3f212127b09a474cc878a289a36 | https://dl.google.com/dl/android/maven2/com/android/tools/dvlib/26.5.2/dvli… -f6ab8eba29f194fad9eed22e6ddfb9dd5225b620b467e38db7fe5f5b17ae9b48 | https://dl.google.com/dl/android/maven2/com/android/tools/dvlib/26.5.2/dvli… -d4d66b5e91036ce0977b8c7b06d4c8456f2b4fb78b69a308739ae78c9d206489 | https://dl.google.com/dl/android/maven2/com/android/tools/dvlib/26.6.1/dvli… -18c986b4b5e64942165b68339eed2cd887297142dad2a51b8b5fc7083dfccb5a | https://dl.google.com/dl/android/maven2/com/android/tools/dvlib/26.6.1/dvli… -d784f2991c46ffd324e33350f191baee3955f15f6523d143b579023c7fc35ae5 | https://dl.google.com/dl/android/maven2/com/android/tools/external/com-inte… -2c09e48f35d4f8f574c1c521bd237df5a96691874a36611ea375d9dd31dfab81 | https://dl.google.com/dl/android/maven2/com/android/tools/external/com-inte… -c552e262677a395532e020e400b85cf62aa93e6f2738729568d917bded1ec2c2 | https://dl.google.com/dl/android/maven2/com/android/tools/external/com-inte… -9098bb231d1abe43bba417f8035429572adcf8d956e55cdea25493af054c3119 | https://dl.google.com/dl/android/maven2/com/android/tools/external/com-inte… -c679280a6f4d8e5f147c023e5bd1d8035704670e7d070cddda873d77cdb8ce08 | https://dl.google.com/dl/android/maven2/com/android/tools/external/com-inte… -0160f143a937e16de37a8d7e4ff4b8d7983dd097c5b3514120cb9cf120c2d5d5 | https://dl.google.com/dl/android/maven2/com/android/tools/external/com-inte… -3b9643011f6f684b52f8824b0b24b9b1c58d73f626287b19cb2dbd8015522009 | https://dl.google.com/dl/android/maven2/com/android/tools/external/com-inte… -2ccdaa95303100dd83fe23f4468abbdea966cbf7fe2884c776753ada84c27254 | https://dl.google.com/dl/android/maven2/com/android/tools/external/com-inte… -04c9e7f17105bf3b9f2062fec56e3fe2b477aa061b3b510ff5deeb32c5b29848 | https://dl.google.com/dl/android/maven2/com/android/tools/external/org-jetb… -dcade7a3df688974bd7067ee68a5f3aa6990d982a53f94491c780c5e946948b5 | https://dl.google.com/dl/android/maven2/com/android/tools/external/org-jetb… -b8905b945fb4d506676eaba4b2440c221cbc87f1f5f97a84fcc66b1d5cf66a07 | https://dl.google.com/dl/android/maven2/com/android/tools/external/org-jetb… -32ff4ffa160b949a97d0cf1c096cda84cd2b1ce882124bac62c22e38a2fb0312 | https://dl.google.com/dl/android/maven2/com/android/tools/external/org-jetb… -c3744a9bfbe61958efe7ddfd7bd3b3a706e563a471bcc6430eeac6f701404254 | https://dl.google.com/dl/android/maven2/com/android/tools/layoutlib/layoutl… -cdaf338f678daa18533aaa08aa94bf9f3ee581ca6587b930ecb8b89f5cfd595b | https://dl.google.com/dl/android/maven2/com/android/tools/layoutlib/layoutl… -d8e13cc133aa6b8b2a9d00e77d8f501602435b269f873dfd8cec2749de044e3a | https://dl.google.com/dl/android/maven2/com/android/tools/layoutlib/layoutl… -02f8048f71e69c1b94cf9f06dd4646bbe656c968a8024e2ab1801207524a775e | https://dl.google.com/dl/android/maven2/com/android/tools/layoutlib/layoutl… -7137a8d33d9ca2571abe553f2a9fe26e3b9f905fbf29065d75276e216330a804 | https://dl.google.com/dl/android/maven2/com/android/tools/lint/lint-api/26.… -fc70d537e742516a84955c9b873ff7a5b5bee3e5708653bed4663bc7390d9d8f | https://dl.google.com/dl/android/maven2/com/android/tools/lint/lint-api/26.… -e84f0b4f5039e83b055fa6d6ea6ea0c03190eb3051df5add01b5d0e874d0933b | https://dl.google.com/dl/android/maven2/com/android/tools/lint/lint-api/26.… -44e504aacf1afc06572110ecc1f35d13e2e472667c1dcc62707af0dd57806007 | https://dl.google.com/dl/android/maven2/com/android/tools/lint/lint-api/26.… -77910fa35c790fc4d51c01bb9956b9ed654cf034cd67cfb326fcc708401854a5 | https://dl.google.com/dl/android/maven2/com/android/tools/lint/lint-checks/… -e74c83c1ef213d802ad6236aaf6c2b2b9670c0d06c8a359fc5f6cc47eddeabdd | https://dl.google.com/dl/android/maven2/com/android/tools/lint/lint-checks/… -592625352e53a221434e5be4c7a05380fa9c851ef6032f16ac1c1c3a6d623aad | https://dl.google.com/dl/android/maven2/com/android/tools/lint/lint-checks/… -fbc27dd984e5414270fbc6e47f45e35d72b651191d4624c271d140e3527b807b | https://dl.google.com/dl/android/maven2/com/android/tools/lint/lint-checks/… -8b1b4356163653a7f31ffe3c5b6a7c88dcc177858b7253cd8e558b2ed5efb888 | https://dl.google.com/dl/android/maven2/com/android/tools/lint/lint-gradle-… -3530ef38a0768e506ad1c4afef4ca01cffa4ee9ac3d0e862ad84371b1c3931b7 | https://dl.google.com/dl/android/maven2/com/android/tools/lint/lint-gradle-… -ee17a03da34a395169e548459361ae45294ef9582209286e3f7ec504a6dd6f2a | https://dl.google.com/dl/android/maven2/com/android/tools/lint/lint-gradle-… -dfdd0506eec25deea7fe8dd3a591183614a72558d4e8462f1287c108dbffa882 | https://dl.google.com/dl/android/maven2/com/android/tools/lint/lint-gradle/… -909960cb48bf4c37bc979f1508945a11de0d90fee1b5fb27bf40d775f8b41104 | https://dl.google.com/dl/android/maven2/com/android/tools/lint/lint-gradle/… -0c33bd984054defae42552e0849edd92b03e209662c3de2a3497387b1b022e34 | https://dl.google.com/dl/android/maven2/com/android/tools/lint/lint/26.5.2/… -c338f401ecd5e37a7ad703ad4b92ab0c5f55b1894c7e5635fdba3c4f525a2958 | https://dl.google.com/dl/android/maven2/com/android/tools/lint/lint/26.5.2/… -ca093e22fb35853e302ac8daabeea8a128d1dfb11f02a72a5875b9febf46ed41 | https://dl.google.com/dl/android/maven2/com/android/tools/repository/26.5.2… -381bd85682cd53a23ea83ee0a1a38af13558749c50bb08e341adbd358e6ba521 | https://dl.google.com/dl/android/maven2/com/android/tools/repository/26.5.2… -57c12d6414c149878ec9ae3bb5f278ff0b22ede8d2da83fde9971e068a292882 | https://dl.google.com/dl/android/maven2/com/android/tools/repository/26.6.1… -7b58e0867c49f8025659079cd275c40840432c38569c1cd63c1cc51cb36bd13f | https://dl.google.com/dl/android/maven2/com/android/tools/repository/26.6.1… -1bb453885b8ac766e07d74c73726b2eba6ae990571031bfc94f52f38eb48ce09 | https://dl.google.com/dl/android/maven2/com/android/tools/sdk-common/26.5.2… -1df18580743e0095c026a24f4bbd9870b2afe4994adea8fc93f0dc0cd639989e | https://dl.google.com/dl/android/maven2/com/android/tools/sdk-common/26.5.2… -5ad41d510543d6cb571b63114fb1d338f4bdaf44a241a351d2e09eb47f522f6a | https://dl.google.com/dl/android/maven2/com/android/tools/sdk-common/26.6.1… -7a3e65ce2f2597fcd678292f29d3ff841106bf8a4b70c1809970bef1d73863eb | https://dl.google.com/dl/android/maven2/com/android/tools/sdk-common/26.6.1… -1745623c10a186a6a3345dc980be44fdb84b20ca6cbf2b119992799c223f105f | https://dl.google.com/dl/android/maven2/com/android/tools/sdklib/26.5.2/sdk… -b8d1dfe9b5ef599bf144b868018a12eb9d251da4f538509e2eb34d5f5966b38c | https://dl.google.com/dl/android/maven2/com/android/tools/sdklib/26.5.2/sdk… -6befac828a65090dafffc7a30dc084d73e57db3ff73ba0e6ac9af94aaca3fdcd | https://dl.google.com/dl/android/maven2/com/android/tools/sdklib/26.6.1/sdk… -b0b7ce7bfd7237008bb536e5928d77e74a3f208da6c61aeed871d3983d9636ac | https://dl.google.com/dl/android/maven2/com/android/tools/sdklib/26.6.1/sdk… +90f08d6fcbd0b2c7150522aa926f086ecbef53c9ae3f229178623343d0585f41 | https://dl.google.com/dl/android/maven2/com/android/tools/common/27.0.1/com… +2c91ea3d90a6c16436183cc332d6696151ffdb0e1a4675234cd61152394de943 | https://dl.google.com/dl/android/maven2/com/android/tools/common/27.0.1/com… +6a127ba207e5ab19193c60d70ef47af95da2a3ececa77de27f0732ab801ef9c1 | https://dl.google.com/dl/android/maven2/com/android/tools/ddms/ddmlib/27.0.… +56e09be7a42217f839fac8e814be62f2c42e2f2a54294a3b5f8c8937ac827543 | https://dl.google.com/dl/android/maven2/com/android/tools/ddms/ddmlib/27.0.… +db5ab7968e37e4f6c6a7d1f5607a16b53e63ca279eb847ec2ffbc385f84bf11b | https://dl.google.com/dl/android/maven2/com/android/tools/dvlib/27.0.1/dvli… +6232de47feacc346126def6e6255759080a0e71fa5a11862bcada6dd8e0d4bbe | https://dl.google.com/dl/android/maven2/com/android/tools/dvlib/27.0.1/dvli… +0183641d371c54449a222b1d0ae59c533651b109d05e002c900f01b6f8495aed | https://dl.google.com/dl/android/maven2/com/android/tools/external/com-inte… +c34a4939cc92756cd009d5c7b4147bf50606c6c76334ae2e9165bd67f967ef5e | https://dl.google.com/dl/android/maven2/com/android/tools/external/com-inte… +a3d9e8d2015562a2899f7f4ecdca4387659e68c8294c763dd1c32a92ce69cca4 | https://dl.google.com/dl/android/maven2/com/android/tools/external/com-inte… +861c6d261d31fd3d5ab0ae7c9cb6576b2c4be6d5d012b4e0525975c79c3aafd4 | https://dl.google.com/dl/android/maven2/com/android/tools/external/com-inte… +54c42dc71d061f3723ddf3a8805d81d0fa58aac7cf3d45038ef6d73e7d81f344 | https://dl.google.com/dl/android/maven2/com/android/tools/external/org-jetb… +88eb944a29f95a87bb97fa5e9ee676f684ef078647bc6db02c29ccb036306877 | https://dl.google.com/dl/android/maven2/com/android/tools/external/org-jetb… +09ce72f5b38c7e7455f5a66f1ad2a4d1b7f59f34db7257971313813eb03ad757 | https://dl.google.com/dl/android/maven2/com/android/tools/layoutlib/layoutl… +3d2486e5a0512211979564699f6d4d04f80118a799cc4e0ca6f1a160ab2acf4c | https://dl.google.com/dl/android/maven2/com/android/tools/layoutlib/layoutl… +73a83166aa3a6c4f2d85f2c6255707e62718b8c5943a1beca831f0b900467f4b | https://dl.google.com/dl/android/maven2/com/android/tools/lint/lint-api/27.… +ac934c8a63163f43809a55ffbc17b6145f8906f4f1305aed79cb8241e36eb9dd | https://dl.google.com/dl/android/maven2/com/android/tools/lint/lint-api/27.… +a51bdb9c9c0c307ceb007f39625ff812d869dfd7cb2a5786c9c0daf8708c9a02 | https://dl.google.com/dl/android/maven2/com/android/tools/lint/lint-checks/… +956d654f6091e1be38213ef0dd6ab9b49f9b61d9b0ebcd99cd5dfa7c108869d4 | https://dl.google.com/dl/android/maven2/com/android/tools/lint/lint-checks/… +ce553ebebe7e87802b79c53c993288e52b3bc854cc65dfb16f7f165e2fc69e2f | https://dl.google.com/dl/android/maven2/com/android/tools/lint/lint-gradle-… +ce9f53904823ce3720954378ce27af2370c90039fd57a8e6bd0a459c222fdebe | https://dl.google.com/dl/android/maven2/com/android/tools/lint/lint-gradle-… +06029e806bb11999fcbdc0f59d5682feac25f50025c3d2d693a6ece22c2895ac | https://dl.google.com/dl/android/maven2/com/android/tools/lint/lint-gradle/… +22c3ca3637f89f5e993ffcedb7fb4ec155ec6990e33d6c6bc67c627890cba147 | https://dl.google.com/dl/android/maven2/com/android/tools/lint/lint-gradle/… +6df1984c04793b4d8b4a8e5c6311335274d5d117435a83114b67e815f458d69c | https://dl.google.com/dl/android/maven2/com/android/tools/lint/lint/27.0.1/… +e73ae15b1d39425510b155dc4373231314a38ac967734cb58a7c8b60ecc0463e | https://dl.google.com/dl/android/maven2/com/android/tools/lint/lint/27.0.1/… +8a74bb5edcecb4d2fdc583727e0619d86505fee25feeffd3c3ed3d3b1b541e35 | https://dl.google.com/dl/android/maven2/com/android/tools/repository/27.0.1… +b4acf81dc153b4b53b2f5c9e9b0c4c375d81a1c7b5a00fc4e3ad6c293ffc0e1e | https://dl.google.com/dl/android/maven2/com/android/tools/repository/27.0.1… +89f307caddaee08c64111d064ebed6fd0304484afa154b2fdcbc6d3a71bf4899 | https://dl.google.com/dl/android/maven2/com/android/tools/sdk-common/27.0.1… +becde65232980fb86c78a39543749317067f9bd1f55063a79b9c865fddeedd6f | https://dl.google.com/dl/android/maven2/com/android/tools/sdk-common/27.0.1… +fdcf3a5e39c14f8880f69400e8c5700b6d1f9fb8c00e0e6afd44b02468a8b21d | https://dl.google.com/dl/android/maven2/com/android/tools/sdklib/27.0.1/sdk… +d18ffde8429d1ec8c4d18e6ac1159cf1dc9eaa070987564a096c53097bb4c6c5 | https://dl.google.com/dl/android/maven2/com/android/tools/sdklib/27.0.1/sdk… +d08a8f5a678b2e7e22ad25200880cb209cf96c1f1bd91b703a3139632a63c2c7 | https://dl.google.com/dl/android/maven2/com/android/zipflinger/4.0.1/zipfli… +160a290f3ebbf2ebe64589cebd70a566ef985a629957e575697ac7285b5fcd38 | https://dl.google.com/dl/android/maven2/com/android/zipflinger/4.0.1/zipfli… 1bfb68b9d898a682734faeaffaa86e3e63a1c70659438adfe7b38e63dec10ce2 | https://dl.google.com/dl/android/maven2/com/google/android/gms/oss-licenses… 02314144f98d892df6ebca9ae1a81bec24f416b3e9eefe8729de71acd5d119bd | https://dl.google.com/dl/android/maven2/com/google/android/gms/oss-licenses… +380b09bfc5389fff93b5719c04e57c99678c9c3af0402a91e26d89734babcc49 | https://dl.google.com/dl/android/maven2/com/google/android/gms/play-service… +d851ae0d9232951d36b1060eb8a3dc07ac5fcf668cb741b0a5a165c60519c898 | https://dl.google.com/dl/android/maven2/com/google/android/gms/play-service… aca10c780c3219bc50f3db06734f4ab88badd3113c564c0a3156ff8ff674655b | https://dl.google.com/dl/android/maven2/com/google/android/gms/play-service… 1e663a4317c4d1b65fde180d29745fe9bb1c130fc06253ce2727cbe2e5e60532 | https://dl.google.com/dl/android/maven2/com/google/android/gms/play-service… +dd0980edf729e0d346e2b58e70801dc237c1aed0c7ab274fa3f1c8c8efc64cc7 | https://dl.google.com/dl/android/maven2/com/google/android/gms/play-service… +c30489d38be5d41e19272f6aa47d6c43de85034500bcb1864b79381c9634d924 | https://dl.google.com/dl/android/maven2/com/google/android/gms/play-service… e08bfd1e87c4e50ef76161d7ac76b873aeb975367eeb3afa4abe62ea1887c7c6 | https://dl.google.com/dl/android/maven2/com/google/android/gms/play-service… a3801d0841b3bf779ef74370e18399c3a2401c405a046a528cd7e60ae8073542 | https://dl.google.com/dl/android/maven2/com/google/android/gms/play-service… +d324a1785bbc48bfe3639fc847cfd3cf43d49e967b5caf2794240a854557a39c | https://dl.google.com/dl/android/maven2/com/google/android/gms/play-service… +ffe9295d9eb2ec2d784bb4c3634f6a10175224d2111332fa2735320b52a24b66 | https://dl.google.com/dl/android/maven2/com/google/android/gms/play-service… +85ca0babd7fa3aa3454203105a32836615ac44c59c59e2452bb548c873c4ca44 | https://dl.google.com/dl/android/maven2/com/google/android/gms/play-service… +feb4ebb1ddb76dc18ee9e6028205ac226a70d40247fcccaca092303c68f8b59d | https://dl.google.com/dl/android/maven2/com/google/android/gms/play-service… 5b2d8281adbfd6e74d2295c94bab9ea80fc9a84dfbb397995673f5af4d4c6368 | https://dl.google.com/dl/android/maven2/com/google/android/gms/play-service… 8339810328273ab48d3f67f42ac1203cddcbe64e110f0346df7e04233ef46b85 | https://dl.google.com/dl/android/maven2/com/google/android/gms/play-service… b31c18d8d1cc8d9814f295ee7435471333f370ba5bd904ca14f8f2bec4f35c35 | https://dl.google.com/dl/android/maven2/com/google/android/gms/play-service… a0edf820538f0d1caec314fb4da96beb7e20bc9baa6d8a2966b8e2e43a631e4a | https://dl.google.com/dl/android/maven2/com/google/android/gms/play-service… +2e6d1738b73647f3fe7a038b9780b97717b3746eae258009197e36e7bf3112a5 | https://dl.google.com/dl/android/maven2/com/google/android/gms/play-service… +fdd93302c2eb94bbe6007caa28d072246d2875cda5cb774bb6299416b94d74a6 | https://dl.google.com/dl/android/maven2/com/google/android/gms/play-service… 58f4fb6e5986ec8e01a733ea85e9df83cf79060e0329fe18abc192d9eda97b26 | https://dl.google.com/dl/android/maven2/com/google/android/material/materia… d24d02664e9fee1f8ff576f0e18c13ab1e9425cc5e2fb319f2612f8b14507bb1 | https://dl.google.com/dl/android/maven2/com/google/android/material/materia… 440cbfe5b5e68a989d3f18cf1318b110353620ddbed07621775e3518fd0c000a | https://dl.google.com/dl/android/maven2/com/google/android/play/core/1.8.0/… @@ -362,14 +337,14 @@ f5759b7fcdfc83a525a036deedcbd32e5b536b625ebc282426f16ca137eb5902 | https://jcent 0cc647963b74ad1d7a37c9868e9e5a8f474e49297e1863582253a08a4c719cb1 | https://jcenter.bintray.com/classworlds/classworlds/1.1-alpha-2/classworlds… f6b9fe1101896f068d64bcad7b5927cbab59c5ab6b7efe96e72139d68ecc27f5 | https://jcenter.bintray.com/com/adjust/sdk/adjust-android/4.18.3/adjust-and… 439a641e67b8e504eeb29e3f4704eac42b660c3f83cff9be31105ddf7caac755 | https://jcenter.bintray.com/com/adjust/sdk/adjust-android/4.18.3/adjust-and… -873c0da54bfb6a84dd6d57344a26e0ddeb9cdb210da8ceeced3a5561125c9d10 | https://jcenter.bintray.com/com/airbnb/android/lottie/3.4.0/lottie-3.4.0.aar -5f53824926dba3b6b67b3c1819b7c1783e37571598bea8877054b2cf51fd4394 | https://jcenter.bintray.com/com/airbnb/android/lottie/3.4.0/lottie-3.4.0.pom 9e1d8dd83ca6003f841e3af878ce2dc7c22497493a7bb6d1b62ec1b0d0a83c05 | https://jcenter.bintray.com/com/almworks/sqlite4java/sqlite4java/0.282/sqli… 2d4cdc52be79184386d74333d1c4466b7960f83505bfd5e596e76c5ab6ee3bbf | https://jcenter.bintray.com/com/almworks/sqlite4java/sqlite4java/0.282/sqli… 256ff34118ab292d1b4f3ee4d2c3e5e5f0f609d8e07c57e8ad1f51c46d4fbb46 | https://jcenter.bintray.com/com/fasterxml/jackson/core/jackson-core/2.8.7/j… 0d8f415d56320fbe3883ab7adee73bbb2c9a69c2a49af3608fd6b1efa15d8b5a | https://jcenter.bintray.com/com/fasterxml/jackson/core/jackson-core/2.8.7/j… 3b51994c1a3a29c2c89728226c0be14b69888a1bb0ef311f8d65904cdfbd9358 | https://jcenter.bintray.com/com/fasterxml/jackson/jackson-parent/2.8/jackso… b9b8f388fd628057b1249756468b86726c8fd5816ce14d313cb40003a509beeb | https://jcenter.bintray.com/com/fasterxml/oss-parent/27/oss-parent-27.pom +def9b4225fa37219e18f81d01f0e52d73dca1257a38f5475be9dd58f87736510 | https://jcenter.bintray.com/com/github/gundy/semver4j/0.16.4/semver4j-0.16.… +32001db2443b339dd21f5b79ff29d1ade722d1ba080c214bde819f0f72d1604d | https://jcenter.bintray.com/com/github/gundy/semver4j/0.16.4/semver4j-0.16.… cdf16ef8f5b8023d003ce3cc1b0d51bda737762e2dab2fedf43d1c4292353f7f | https://jcenter.bintray.com/com/google/android/apps/common/testing/accessib… d1e7dbe189b9dbfbfc31709590b65c766d654324de1ac886427333c5ff9adb0e | https://jcenter.bintray.com/com/google/android/apps/common/testing/accessib… 7b0aa6ed7553597ce0610684a9f7eca8021eee218f2e2f427c04a7fbf5f920bd | https://jcenter.bintray.com/com/google/android/apps/common/testing/accessib… @@ -378,10 +353,12 @@ d46777ad3ea8bca73491b2e02fc85b3664486abf5314cc4dc6740908bd855330 | https://jcent 0ee24e09ab5d77f45545bf487868f45cf742127c9a77a2c0a92b006986b5aa9d | https://jcenter.bintray.com/com/google/auto/auto-common/0.8/auto-common-0.8… c98f1b0978cfd24712c27388e040c50ce0692252b3aa9448603d9efa05ebe8a8 | https://jcenter.bintray.com/com/google/auto/auto-parent/3/auto-parent-3.pom 31a44f00ba213f7a1245809d6ba7bffed40c8dd7d571f32016caf8732a926961 | https://jcenter.bintray.com/com/google/auto/auto-parent/5/auto-parent-5.pom +05f740c6648165db00cf618dd56c200c4725e358e6d54f5853e0bec15734ea0a | https://jcenter.bintray.com/com/google/auto/auto-parent/6/auto-parent-6.pom e422d49c312fd2031222e7306e8108c1b4118eb9c049f1b51eca280bed87e924 | https://jcenter.bintray.com/com/google/auto/service/auto-service/1.0-rc4/au… 51752efb14151ec2d39c8581dadce8ef8b7c58b90f5eaca3f596998acb1ea87c | https://jcenter.bintray.com/com/google/auto/service/auto-service/1.0-rc4/au… -6cac9421439b39b9f4aa76738ced039462a69911c410f2c372c196b0f4b7f4cf | https://jcenter.bintray.com/com/google/auto/value/auto-value/1.5.2/auto-val… -901fb1440a0ef8e0c0553a7bb44c0b89647bf53c8822642eea0b57173c7c688d | https://jcenter.bintray.com/com/google/auto/value/auto-value/1.5.2/auto-val… +b48b04ddba40e8ac33bf036f06fc43995fc5084bd94bdaace807ce27d3bea3fb | https://jcenter.bintray.com/com/google/auto/value/auto-value-annotations/1.… +1c76cd462fc96e7aa96dc70ce82f0d54063d6df16db35c9c7d9cc0d1a99d3fff | https://jcenter.bintray.com/com/google/auto/value/auto-value-annotations/1.… +27b640c82179f5cff62009c0b72033d9bc60f60e9902a66802274b7fe37fc81c | https://jcenter.bintray.com/com/google/auto/value/auto-value-parent/1.6.2/a… feab9191311c3d7aeef2b66d6064afc80d3d1d52d980fb07ae43c78c987ba93a | https://jcenter.bintray.com/com/google/code/findbugs/jsr305/1.3.9/jsr305-1.… 1e7f53fa5b8b5c807e986ba335665da03f18d660802d8bf061823089d1bee468 | https://jcenter.bintray.com/com/google/code/findbugs/jsr305/2.0.1/jsr305-2.… 02c12c3c2ae12dd475219ff691c82a4d9ea21f44bc594a181295bf6d43dcfbb0 | https://jcenter.bintray.com/com/google/code/findbugs/jsr305/2.0.1/jsr305-2.… @@ -390,42 +367,46 @@ feab9191311c3d7aeef2b66d6064afc80d3d1d52d980fb07ae43c78c987ba93a | https://jcent 8f1fec72b91a71ea39ec39f5f778c4d1124b6b097c6d55b3a50b554a52237b27 | https://jcenter.bintray.com/com/google/code/gson/gson-parent/2.8.5/gson-par… 233a0149fc365c9f6edbd683cfe266b19bdc773be98eabdaf6b3c924b48e7d81 | https://jcenter.bintray.com/com/google/code/gson/gson/2.8.5/gson-2.8.5.jar b8308557a7fccc92d9fe7c8cd0599258b361285d2ecde7689eda98843255a092 | https://jcenter.bintray.com/com/google/code/gson/gson/2.8.5/gson-2.8.5.pom +3aa576b5671d0e26d83d7fdb7186810b5672f00bf8e72184260bcc7c2d7dc07a | https://jcenter.bintray.com/com/google/crypto/tink/tink/1.3.0-rc2/tink-1.3.… +5b9a11c11183d011de9a9a5490962d78a4d4bfe7579b0c5be4afb18a222e3f41 | https://jcenter.bintray.com/com/google/crypto/tink/tink/1.3.0-rc2/tink-1.3.… 6ebd22ca1b9d8ec06d41de8d64e0596981d9607b42035f9ed374f9de271a481a | https://jcenter.bintray.com/com/google/errorprone/error_prone_annotations/2… 5e0258ea1ba4e51a133742680bc22448f7ab214be4073e8619f645ef1be42dd5 | https://jcenter.bintray.com/com/google/errorprone/error_prone_annotations/2… -10a5949aa0f95c8de4fd47edfe20534d2acefd8c224f8afea1f607e112816120 | https://jcenter.bintray.com/com/google/errorprone/error_prone_annotations/2… 3edce6b711ba368efe16b9b7aacb0214fbd648414cb9b965953a2e7ed89a819a | https://jcenter.bintray.com/com/google/errorprone/error_prone_annotations/2… +357cd6cfb067c969226c442451502aee13800a24e950fdfde77bcdb4565a668d | https://jcenter.bintray.com/com/google/errorprone/error_prone_annotations/2… +8d175561619289a527573cfbdcf872eb5c1216cf9ab692a0ef3dba6d793f63b4 | https://jcenter.bintray.com/com/google/errorprone/error_prone_annotations/2… c460902ddf5ece68832c6b271ce52a0928b05cf3a6ac81a8f548c73cbd541138 | https://jcenter.bintray.com/com/google/errorprone/error_prone_parent/2.2.0/… 767525d9a81129cd081968382980336327be4162b1e2251a182911daa733c123 | https://jcenter.bintray.com/com/google/errorprone/error_prone_parent/2.3.1/… -cd6db17a11a31ede794ccbd1df0e4d9750f640234731f21cff885a9997277e81 | https://jcenter.bintray.com/com/google/google/1/google-1.pom +8d3b5b9fa211979e9c425e989825c07743d2eb4dc8c20ec61de0f5b3dc1a6333 | https://jcenter.bintray.com/com/google/errorprone/error_prone_parent/2.3.2/… a171ee4c734dd2da837e4b16be9df4661afab72a41adaf31eb84dfdaf936ca26 | https://jcenter.bintray.com/com/google/guava/failureaccess/1.0.1/failureacc… e96042ce78fecba0da2be964522947c87b40a291b5fd3cd672a434924103c4b9 | https://jcenter.bintray.com/com/google/guava/failureaccess/1.0.1/failureacc… f8698ab46ca996ce889c1afc8ca4f25eb8ac6b034dc898d4583742360016cc04 | https://jcenter.bintray.com/com/google/guava/guava-parent/26.0-android/guav… 317e88291262e0cf2805e956c18850f1d4565c85c2e1112f5d9d08ab1732e696 | https://jcenter.bintray.com/com/google/guava/guava-parent/27.0.1-jre/guava-… -d3610165c6de2b4d8d6418487717b63c52b5a39c5e35a553e24873ecb60e0628 | https://jcenter.bintray.com/com/google/guava/guava-parent/27.1-jre/guava-pa… +f31a5846bd9e14a4c374da1b9b146a5715ecdca925e071e1d2bf4da2daaded90 | https://jcenter.bintray.com/com/google/guava/guava-parent/28.1-jre/guava-pa… e1c814fd04492a27c38e0317eabeaa1b3e950ec8010239e400fe90ad6c9107b4 | https://jcenter.bintray.com/com/google/guava/guava/27.0.1-jre/guava-27.0.1-… 6a8dd041f23a6bb14a86e440fccb993537b62271357a0dac0a3cb0ff39158f36 | https://jcenter.bintray.com/com/google/guava/guava/27.0.1-jre/guava-27.0.1-… -4a5aa70cc968a4d137e599ad37553e5cfeed2265e8c193476d7119036c536fe7 | https://jcenter.bintray.com/com/google/guava/guava/27.1-jre/guava-27.1-jre.… -bd99d75006131ae25c9860a1d63e84e36371f112fdb0c2fe3d5d6ab38e9eb271 | https://jcenter.bintray.com/com/google/guava/guava/27.1-jre/guava-27.1-jre.… +30beb8b8527bd07c6e747e77f1a92122c2f29d57ce347461a4a55eb26e382da4 | https://jcenter.bintray.com/com/google/guava/guava/28.1-jre/guava-28.1-jre.… +74af0e8dd935894ce9bcb8e2842dd0001581b84cb6a7751c3ef9314011399ba4 | https://jcenter.bintray.com/com/google/guava/guava/28.1-jre/guava-28.1-jre.… e4ad7607e5c0477c6f890ef26a49cb8d1bb4dffb650bab4502afee64644e3069 | https://jcenter.bintray.com/com/google/guava/listenablefuture/1.0/listenabl… 53873caf26bc1ed8a567ea6c939ab2aaa3f47a5e32d5cade95ddf5080d23238a | https://jcenter.bintray.com/com/google/guava/listenablefuture/1.0/listenabl… b372a037d4230aa57fbeffdef30fd6123f9c0c2db85d0aced00c91b974f33f99 | https://jcenter.bintray.com/com/google/guava/listenablefuture/9999.0-empty-… 18d4b1db26153d4e55079ce1f76bb1fe05cdb862ef9954a88cbcc4ff38b8679b | https://jcenter.bintray.com/com/google/guava/listenablefuture/9999.0-empty-… 2994a7eb78f2710bd3d3bfb639b2c94e219cedac0d4d084d516e78c16dddecf6 | https://jcenter.bintray.com/com/google/j2objc/j2objc-annotations/1.1/j2objc… f0c98c571e93a7cb4dd18df0fa308f0963e7a0620ac2d4244e61e709d03ad6be | https://jcenter.bintray.com/com/google/j2objc/j2objc-annotations/1.1/j2objc… +21af30c92267bd6122c0e0b4d20cccb6641a37eaf956c6540ec471d584e64a7b | https://jcenter.bintray.com/com/google/j2objc/j2objc-annotations/1.3/j2objc… +5faca824ba115bee458730337dfdb2fcea46ba2fd774d4304edbf30fa6a3f055 | https://jcenter.bintray.com/com/google/j2objc/j2objc-annotations/1.3/j2objc… c71555751e57e0ef912870e8ac9625ae782502a6a5b9c19ccf83b2a97d8b26bd | https://jcenter.bintray.com/com/google/jimfs/jimfs-parent/1.1/jimfs-parent-… c4828e28d7c0a930af9387510b3bada7daa5c04d7c25a75c7b8b081f1c257ddd | https://jcenter.bintray.com/com/google/jimfs/jimfs/1.1/jimfs-1.1.jar efa86e5cd922f17b472fdfcae57234d8d4ac3e148b6250737dfce454af7a7a44 | https://jcenter.bintray.com/com/google/jimfs/jimfs/1.1/jimfs-1.1.pom +32ff2307dafc658d0b55b2ad841d625aea5606bb9b0316605165cd6980503243 | https://jcenter.bintray.com/com/google/protobuf/protobuf-bom/3.10.0/protobu… 74ee43b09e711b13d568811e12f33bd16e6087b15f1aeded22b0dfe89ae76856 | https://jcenter.bintray.com/com/google/protobuf/protobuf-bom/3.11.4/protobu… -4189e0be5ab15cf2330f70b24fbdc75ca37514f188388fce8580ce16a9a68052 | https://jcenter.bintray.com/com/google/protobuf/protobuf-java-util/3.4.0/pr… -89c43073e7eaa0eaba72a4a36ae1b6bfdfe5d81bb9d0e156aee05e4a72de3cb8 | https://jcenter.bintray.com/com/google/protobuf/protobuf-java-util/3.4.0/pr… -55aa554843983f431df5616112cf688d38aa17c132357afd1c109435bfdac4e6 | https://jcenter.bintray.com/com/google/protobuf/protobuf-java/2.6.1/protobu… -89fc0cd20db030033ba04bb00c2837efe1e530b00f86935d6a645717d15bb978 | https://jcenter.bintray.com/com/google/protobuf/protobuf-java/2.6.1/protobu… -dce7e66b32456a1b1198da0caff3a8acb71548658391e798c79369241e6490a4 | https://jcenter.bintray.com/com/google/protobuf/protobuf-java/3.4.0/protobu… -83f17ba86c5fa1a15a3a3c8030d4ce42ef21c1d39b65db6cc004a8eeb2c59406 | https://jcenter.bintray.com/com/google/protobuf/protobuf-java/3.4.0/protobu… +619b0b0dc344cb141e493cbedc5687c8fb7c985e609a1b035e621bfab2f89021 | https://jcenter.bintray.com/com/google/protobuf/protobuf-java-util/3.10.0/p… +146660182d07798ced06fa8e8ae3b9faa90aa48cf3c6adfc67db9371188ba502 | https://jcenter.bintray.com/com/google/protobuf/protobuf-java-util/3.10.0/p… +161d7d61a8cb3970891c299578702fd079646e032329d6c2cabf998d191437c9 | https://jcenter.bintray.com/com/google/protobuf/protobuf-java/3.10.0/protob… +b404c1b093ec9dea888e02c8dfe8662759586b94efa4f97061cdfc1bbfa15af0 | https://jcenter.bintray.com/com/google/protobuf/protobuf-java/3.10.0/protob… 8cacea2f7a042dabae295c509dcdbfe32a49aa3708eec6ddb8efd8593aa0b4a3 | https://jcenter.bintray.com/com/google/protobuf/protobuf-javalite/3.11.4/pr… 1aa38c0b0891b910e84642c5116bb1b54d86a5959f37c9c38a34ede600bdd55d | https://jcenter.bintray.com/com/google/protobuf/protobuf-javalite/3.11.4/pr… +6dd84a508125fffdefbd583fae12bf166aa902511b570ca54fa9efa45f6dfe80 | https://jcenter.bintray.com/com/google/protobuf/protobuf-parent/3.10.0/prot… c3e2aee04dd8698f8b21ce635c318f8964d52fc9ca490a01a64cdc7a6c44d362 | https://jcenter.bintray.com/com/google/protobuf/protobuf-parent/3.11.4/prot… -24909c552842c0eb7a4c769d631a43cbef5a9a10c1640f2bdbd1ea149c573a47 | https://jcenter.bintray.com/com/google/protobuf/protobuf-parent/3.4.0/proto… bba7724e02a997cec38213af77133ee8e24b0d5cf5fa7ecbc16a4fa93f11ee0d | https://jcenter.bintray.com/com/google/zxing/core/3.3.0/core-3.3.0.jar ca1c3e4c4848773d4e5afa301c12bc18aa4b26d2475ff6961ce026f2d940aabf | https://jcenter.bintray.com/com/google/zxing/core/3.3.0/core-3.3.0.pom 7c6951b21684f68ac4f6983d26e0f0b01ab5e7066f8b74b4acaff6f638ed1ff6 | https://jcenter.bintray.com/com/google/zxing/zxing-parent/3.3.0/zxing-paren… @@ -445,6 +426,7 @@ a5c9bd6f2b3674883e57a8d3300772bb7ca98d8a1388eb8e49f197710dc5e0b8 | https://jcent 95528938a88d19291e5f806201d15c70f7b6699ac554a7688c2677f8104eb9f6 | https://jcenter.bintray.com/com/leanplum/leanplum-fcm/5.4.0/leanplum-fcm-5.… 816dfed0ce6cc5d2369188b0fc93a4a0d3190b0f98aa61558e54910de3d82daa | https://jcenter.bintray.com/com/leanplum/leanplum-push/5.4.0/leanplum-push-… c6035475a5bcbfe4d33dede02de3e91234e25ca7b8d75595fac8cb52fd6f3131 | https://jcenter.bintray.com/com/leanplum/leanplum-push/5.4.0/leanplum-push-… +1690340a222279f2cbadf373e88826fa20f7f3cc3ec0252f36818fed32701ab1 | https://jcenter.bintray.com/com/squareup/javapoet/1.10.0/javapoet-1.10.0.pom 83f0fd4baebec3bf29ee3ad2c024b3065ddef825a5aa29f7dcf5c189f9fa2962 | https://jcenter.bintray.com/com/squareup/javapoet/1.12.1/javapoet-1.12.1.jar a71ac3d8f27cb9ad32c87b5d8959f22d671aeb460c7a355d09f577e4c57e4c5f | https://jcenter.bintray.com/com/squareup/javapoet/1.12.1/javapoet-1.12.1.pom f699823d0081f69cbb676c1845ea222e0ada79bc88a53e5d22d8bd02d328f57e | https://jcenter.bintray.com/com/squareup/javawriter/2.1.1/javawriter-2.1.1.… @@ -482,33 +464,20 @@ f94c218942455b62621a38dba9f4d4bc80bec6883cf2ef230e405c5b180f28d9 | https://jcent e27c7742448f816da1cac72b4ca283b0d7920749e09f5dd0ac017e40714a2efe | https://jcenter.bintray.com/com/squareup/okhttp3/okhttp/3.11.0/okhttp-3.11.… 56a8a3f81ca1a1e27aaa4434ca133c28737b071b9baf0357098f1f556fc4f6b4 | https://jcenter.bintray.com/com/squareup/okhttp3/okhttp/3.11.0/okhttp-3.11.… 9eea9af1b3bc95d38b78d126f8fe7785aa9955a7b2c76e13c17c1f1b0838a979 | https://jcenter.bintray.com/com/squareup/okhttp3/parent/3.11.0/parent-3.11.… -ab0e39dbbc3acf8bbcd3a0cb7f4fbe1d5f8f0174d51d7651c2319122587be611 | https://jcenter.bintray.com/com/squareup/okio/okio-parent/1.17.4/okio-paren… -d78fac588458fc099e6c82e91fe5f0375c67434626451a3a77772c65d9eee85b | https://jcenter.bintray.com/com/squareup/okio/okio/1.17.4/okio-1.17.4.jar -20adf44e187b557b7605a6f8b1ba82ba58e0d4797bc397f6a0e05e4ed95495c6 | https://jcenter.bintray.com/com/squareup/okio/okio/1.17.4/okio-1.17.4.pom e58c97406a6bb1138893750299ac63c6aa04b38b6b49eae1bfcad1a63ef9ba1b | https://jcenter.bintray.com/com/squareup/okio/okio/2.2.2/okio-2.2.2.jar fd621988f7f6957025735dc6dd090b00a20f3a3bb8d77ca79036077f629b140b | https://jcenter.bintray.com/com/squareup/okio/okio/2.2.2/okio-2.2.2.pom 1d8518e3ac7532a104e4f7be77def37c982e530723c6bdb3d67708cce2b0c2c4 | https://jcenter.bintray.com/com/sun/activation/all/1.2.0/all-1.2.0.pom 993302b16cd7056f21e779cc577d175a810bb4900ef73cd8fbf2b50f928ba9ce | https://jcenter.bintray.com/com/sun/activation/javax.activation/1.2.0/javax… f879b6e945854c6900b0dbee1c8384d7ab3de7e157fd7ac84937405c416d2a5e | https://jcenter.bintray.com/com/sun/activation/javax.activation/1.2.0/javax… -c33e67a0807095f02a0e2da139412dd7c4f9cc1a4c054b3e434f96831ba950f4 | https://jcenter.bintray.com/com/sun/istack/istack-commons-runtime/2.21/ista… -ebe7137b5fbfd050545f9a7f3f339ae55beb0b53755071b4fd62aa024c626d1c | https://jcenter.bintray.com/com/sun/istack/istack-commons-runtime/2.21/ista… 6443e10ba2e259fb821d9b6becf10db5316285fc30c53cec9d7b19a3877e7fdf | https://jcenter.bintray.com/com/sun/istack/istack-commons-runtime/3.0.7/ist… 6d704e450a816a45bce806ba22c22fe83d8e8dcf7a71517603de630a1726809f | https://jcenter.bintray.com/com/sun/istack/istack-commons-runtime/3.0.7/ist… -c3071277f89b162982606b4e65c92077212efb6cbf1bdc365c51bd0b57ac818c | https://jcenter.bintray.com/com/sun/istack/istack-commons/2.21/istack-commo… 6f83d3c85fdca9ef24010cb2f652aab1a508bff6331c087b60d0301782b78c6f | https://jcenter.bintray.com/com/sun/istack/istack-commons/3.0.7/istack-comm… -b25e0693de21cb92b039a2e4608f396590fb8773108f10d6dc9f1465f03b5be9 | https://jcenter.bintray.com/com/sun/xml/bind/jaxb-bom-ext/2.2.11/jaxb-bom-e… c2204f54b43593808c9af6502865ee71679823156dabdef341e71d35662c7aa0 | https://jcenter.bintray.com/com/sun/xml/bind/jaxb-bom-ext/2.3.1/jaxb-bom-ex… -b5301b711c01547e571b615f9a0832ee525d34a4ce3372f53907a87cf20b0480 | https://jcenter.bintray.com/com/sun/xml/bind/mvn/jaxb-parent/2.2.11/jaxb-pa… f699ef37ec7966e284742dfca83075221179041a9a49aef7991280192604462d | https://jcenter.bintray.com/com/sun/xml/bind/mvn/jaxb-parent/2.3.1/jaxb-par… -21918cb8e4eda67f24251e909a5d81672201d93604c4ffbf33522ad836a58e90 | https://jcenter.bintray.com/com/sun/xml/bind/mvn/jaxb-runtime-parent/2.2.11… b56383eb4d43498b145d379e2a93d5fcdcd8ff9291f89b58b82cb91658dbf14c | https://jcenter.bintray.com/com/sun/xml/bind/mvn/jaxb-runtime-parent/2.3.1/… -9a398c699a5d3f3b56f1056c68890ede25d94a12d98eabc2a473733e6ab2362c | https://jcenter.bintray.com/com/sun/xml/bind/mvn/jaxb-txw-parent/2.2.11/jax… 7a8473e935504841c606686d84e9c017a739ac2c144fde687aa003a7dd44de7f | https://jcenter.bintray.com/com/sun/xml/bind/mvn/jaxb-txw-parent/2.3.1/jaxb… -27a77db909f3c2833c0b1a37c55af1db06045118ad2eed96ce567b6632bce038 | https://jcenter.bintray.com/com/sun/xml/fastinfoset/FastInfoset/1.2.13/Fast… -b7505e0ecf7d495b4daa3e6569f71611d1a789dc531cbd92a2025922ff2655d3 | https://jcenter.bintray.com/com/sun/xml/fastinfoset/FastInfoset/1.2.13/Fast… 785861db11ca1bd0d1956682b974ad73eb19cd3e01a4b3fa82d62eca97210aec | https://jcenter.bintray.com/com/sun/xml/fastinfoset/FastInfoset/1.2.15/Fast… bbc796ab84a6778a751c2eff1136078abd2b4d35b5047062804f3582ef3c42c8 | https://jcenter.bintray.com/com/sun/xml/fastinfoset/FastInfoset/1.2.15/Fast… -fd0857899f1067e0287c2ffd91e38f967a26bd405b83a34650c2742cee9fc261 | https://jcenter.bintray.com/com/sun/xml/fastinfoset/fastinfoset-project/1.2… cfb8cdad4c0dd05ed8cacbe146bf1718764403947b9de8348e1bfd42f62ea73e | https://jcenter.bintray.com/com/sun/xml/fastinfoset/fastinfoset-project/1.2… 4241dfa94e711d435f29a4604a3e2de5c4aa3c165e23bd066be6fc1fc4309569 | https://jcenter.bintray.com/commons-codec/commons-codec/1.10/commons-codec-… bdb8db7012d112a6e3ea8fdb7c510b300d99eff0819d27dddba9c43397ea4cfb | https://jcenter.bintray.com/commons-codec/commons-codec/1.10/commons-codec-… @@ -548,8 +517,6 @@ e04ba5195bcd555dc95650f7cc614d151e4bcd52d29a10b8aa2197f3ab89ab9b | https://jcent 91c77044a50c481636c32d916fd89c9118a72195390452c81065080f957de7ff | https://jcenter.bintray.com/javax/inject/javax.inject/1/javax.inject-1.jar 943e12b100627804638fa285805a0ab788a680266531e650921ebfe4621a8bfa | https://jcenter.bintray.com/javax/inject/javax.inject/1/javax.inject-1.pom cd1beaa4560dc4dfdb826b9d809e464db22526dfb54264bae78a6ff7efb08e1f | https://jcenter.bintray.com/javax/xml/bind/jaxb-api-parent/2.3.1/jaxb-api-p… -b5e60cd8b7b5ff01ce4a74c5dd008f4fbd14ced3495d0b47b85cfedc182211f2 | https://jcenter.bintray.com/javax/xml/bind/jaxb-api/2.2.12-b140109.1041/jax… -2092a7d8d9bc5698c59b094bdea46622915c48c83ae66d5b5ad549c7bf16155b | https://jcenter.bintray.com/javax/xml/bind/jaxb-api/2.2.12-b140109.1041/jax… 88b955a0df57880a26a74708bc34f74dcaf8ebf4e78843a28b50eae945732b06 | https://jcenter.bintray.com/javax/xml/bind/jaxb-api/2.3.1/jaxb-api-2.3.1.jar 12b20cf922773445c3445c2883cbf671fa982111e9bf9f875020f9313b3814b1 | https://jcenter.bintray.com/javax/xml/bind/jaxb-api/2.3.1/jaxb-api-2.3.1.pom 59721f0805e223d84b90677887d9ff567dc534d7c502ca903c0c2b17f05c116a | https://jcenter.bintray.com/junit/junit/4.12/junit-4.12.jar @@ -568,12 +535,17 @@ fbd052d2d4cd16f707547c468621c6b7fb842c7ec8866d012ecbc6178de1f394 | https://jcent 2768054be7d61c4ec6f5e660e03ee70608000fe0f46d6119eee66675fff150e9 | https://jcenter.bintray.com/net/bytebuddy/byte-buddy/1.9.7/byte-buddy-1.9.7… ec3a75bebddbf19ff56a281cf5d1ad146169dcaa0e69d7b14f4aaba2e7775f34 | https://jcenter.bintray.com/net/freehaven/tor/control/jtorctl/0.2/jtorctl-0… 3369726ca2b0e3736c741ff3c22e06f707a1007ff20ccc5b5ba5d0d9a01ead30 | https://jcenter.bintray.com/net/freehaven/tor/control/jtorctl/0.2/jtorctl-0… +24d81621f82ac29fcdd9a74116031f5907a2343158e616f4573bbfa2434ae0d5 | https://jcenter.bintray.com/net/java/dev/jna/jna-platform/5.5.0/jna-platfor… +10569e3622e974d3e66255ba85923c125d84fa257ef2543d8ac1c658d9ebcd10 | https://jcenter.bintray.com/net/java/dev/jna/jna-platform/5.5.0/jna-platfor… c83a9c71358d781539c34b38d76a88e3ec8e2d587c7f04b611acc9041919b310 | https://jcenter.bintray.com/net/java/dev/jna/jna/5.2.0/jna-5.2.0.aar -0271ae7fc162a5e69c337f36d86fdb94a8a232c5c42a80d8a7424071addd1fdc | https://jcenter.bintray.com/net/java/dev/jna/jna/5.2.0/jna-5.2.0.jar aafe6935d6bedb89a6aa32563d441fbe305da1de193d6f71a45a0212acf9b756 | https://jcenter.bintray.com/net/java/dev/jna/jna/5.2.0/jna-5.2.0.pom +12ef4a3c2ea685c9c816caa6a77ae8f17bb7727d8460f249925409acda270101 | https://jcenter.bintray.com/net/java/dev/jna/jna/5.5.0/jna-5.5.0.aar +b308faebfe4ed409de8410e0a632d164b2126b035f6eacff968d3908cafb4d9e | https://jcenter.bintray.com/net/java/dev/jna/jna/5.5.0/jna-5.5.0.jar +a51ad94e3f74f85a3cdfad975392829316452669f588203c7b49e5f8179be539 | https://jcenter.bintray.com/net/java/dev/jna/jna/5.5.0/jna-5.5.0.pom +5557e235a8aa2f9766d5dc609d67948f2a8832c2d796cea9ef1d6cbe0b3b7eaf | https://jcenter.bintray.com/net/java/dev/jna/jna/5.6.0/jna-5.6.0.jar +5fe81b0255978f24616d37b10608b79498a5f3073e1d9b2038d8736a831f2608 | https://jcenter.bintray.com/net/java/dev/jna/jna/5.6.0/jna-5.6.0.pom 281440811268e65d9e266b3cc898297e214e04f09740d0386ceeb4a8923d63bf | https://jcenter.bintray.com/net/java/jvnet-parent/1/jvnet-parent-1.pom 30f5789efa39ddbf96095aada3fc1260c4561faf2f714686717cb2dc5049475a | https://jcenter.bintray.com/net/java/jvnet-parent/3/jvnet-parent-3.pom -471395735549495297c8ff939b9a32e08b91302020ff773586d27e497abb8fbb | https://jcenter.bintray.com/net/java/jvnet-parent/4/jvnet-parent-4.pom 1af699f8d9ddab67f9a0d202fbd7915eb0362a5a6dfd5ffc54cafa3465c9cb0a | https://jcenter.bintray.com/net/java/jvnet-parent/5/jvnet-parent-5.pom 26c5856e954b5f864db76f13b86919b59c6eecf9fd930b96baa8884626baf2f5 | https://jcenter.bintray.com/net/sf/jopt-simple/jopt-simple/4.9/jopt-simple-… 7af7e2d8b24b4798f04c2b7da24c9fbd1b7557b4e017c2054481565916079092 | https://jcenter.bintray.com/net/sf/jopt-simple/jopt-simple/4.9/jopt-simple-… @@ -584,7 +556,10 @@ f264dd9f79a1fde10ce5ecc53221eff24be4c9331c830b7d52f2f08a7b633de2 | https://jcent cc12b1168e521491dd0e687cfebec11a4af874b22af70e10cf2a05b47ca00c8f | https://jcenter.bintray.com/net/sf/proguard/proguard-gradle/6.0.3/proguard-… 5a5c7317d68ce80d1d40c9d8bd4e38814d42d1b16c265146e333634833a35a57 | https://jcenter.bintray.com/net/sf/proguard/proguard-gradle/6.0.3/proguard-… d87266bfd2312c3b036c4ac709310afa35c448ceb18027c3b87a33d03c6de0a0 | https://jcenter.bintray.com/net/sf/proguard/proguard-parent/6.0.3/proguard-… +5358b478d82555ab57afd7fc7231d603b40f977be7ca39f40c5ec54e767eb674 | https://jcenter.bintray.com/org/antlr/antlr4-master/4.5.2-1/antlr4-master-4… 401877d5e70ad599e9b6cff18434ea0332f637b51f8ec68352646c836f9bb2a4 | https://jcenter.bintray.com/org/antlr/antlr4-master/4.5.3/antlr4-master-4.5… +e831413004bceed7d915c3a175927b1daabc4974b7b8a6f87bbce886d3550398 | https://jcenter.bintray.com/org/antlr/antlr4-runtime/4.5.2-1/antlr4-runtime… +93bac9b6bc714d559904ed43242782a8cbe543cebf0104bb3ecc1786a9cb661e | https://jcenter.bintray.com/org/antlr/antlr4-runtime/4.5.2-1/antlr4-runtime… a32de739cfdf515774e696f91aa9697d2e7731e5cb5045ca8a4b657f8b1b4fb4 | https://jcenter.bintray.com/org/antlr/antlr4/4.5.3/antlr4-4.5.3.jar 8a4e4b32eedaa72976a757e12cf1dfe742725db0b7311bf176dd937ba4236384 | https://jcenter.bintray.com/org/antlr/antlr4/4.5.3/antlr4-4.5.3.pom da9fd92eacdf63daf0be52eb71accc10ff7943a85d7aac9ea96cf7e03ee3d3cc | https://jcenter.bintray.com/org/apache/ant/ant-launcher/1.8.0/ant-launcher-… @@ -654,12 +629,18 @@ e116f32edcb77067289a3148143f2c0c97b27cf9a1342f8108ee37dec4868861 | https://jcent 8fdc3336e7b01873193ba9c48b87de7d788dc0954d1eb45c322492627a4b5c6e | https://jcenter.bintray.com/org/bouncycastle/bcprov-jdk15on/1.56/bcprov-jdk… 64b02691c8b9d4e7700f8ee2e742dce7ea2c6e81e662b7522c9ee3bf568c040a | https://jcenter.bintray.com/org/checkerframework/checker-qual/2.5.2/checker… dc4cd438a36462d013c2338c8e206d102a322a00f33729e8955ee219859c9ede | https://jcenter.bintray.com/org/checkerframework/checker-qual/2.5.2/checker… +9103499008bcecd4e948da29b17864abb64304e15706444ae209d17ebe0575df | https://jcenter.bintray.com/org/checkerframework/checker-qual/2.8.1/checker… +f23376b58ed795f2ff47426ac76b996d49e3918442e5d8713e3925f889a77799 | https://jcenter.bintray.com/org/checkerframework/checker-qual/2.8.1/checker… 51d6c4e71782e85674239189499854359d380fb75e1a703756e3aaa5b98a5af0 | https://jcenter.bintray.com/org/codehaus/groovy/groovy-all/2.4.15/groovy-al… fc0d535d7bdb7ca90562321c2e8e2a35c377f113c6dd0b2062282e1f4676367a | https://jcenter.bintray.com/org/codehaus/groovy/groovy-all/2.4.15/groovy-al… 92654f493ecfec52082e76354f0ebf87648dc3d5cec2e3c3cdb947c016747a53 | https://jcenter.bintray.com/org/codehaus/mojo/animal-sniffer-annotations/1.… e956ab5d2eb48fabae12300d0cd2d3294d4a2a41abc2068c23cb4d60ad76cbe5 | https://jcenter.bintray.com/org/codehaus/mojo/animal-sniffer-annotations/1.… +47f05852b48ee9baefef80fa3d8cea60efa4753c0013121dd7fe5eef2e5c729d | https://jcenter.bintray.com/org/codehaus/mojo/animal-sniffer-annotations/1.… +adf522f4839c35f5329ea97c407aebebfa8807b644852dc4d5cd7c97b7a6d2e0 | https://jcenter.bintray.com/org/codehaus/mojo/animal-sniffer-annotations/1.… 18a03df16e2a184c582db7b125633c15fb7714027a84c1b532d72933dc08b81f | https://jcenter.bintray.com/org/codehaus/mojo/animal-sniffer-parent/1.17/an… +4e9df546a47cf6304a1317c46870100a8726fbea11b0dd18322f957e4070973c | https://jcenter.bintray.com/org/codehaus/mojo/animal-sniffer-parent/1.18/an… fc648dcdc404f8bf66e0583914ecf980176618201227bea114fae85043cb755e | https://jcenter.bintray.com/org/codehaus/mojo/mojo-parent/40/mojo-parent-40… +f819cad1b15b6a7791c8b601e96bde33765e4681395807db4537d2f0dedd493b | https://jcenter.bintray.com/org/codehaus/mojo/mojo-parent/50/mojo-parent-50… 381d72c526be217b770f9f8c3f749a86d3b1548ac5c1fcb48d267530ec60d43f | https://jcenter.bintray.com/org/codehaus/plexus/plexus-components/1.1.14/pl… 7c758612888782ccfe376823aee7cdcc7e0cdafb097f7ef50295a0b0c3a16edf | https://jcenter.bintray.com/org/codehaus/plexus/plexus-container-default/1.… ef71d45a49edfe76be0f520312a76bc2aae73ec0743a5ffffe10d30122c6e2b2 | https://jcenter.bintray.com/org/codehaus/plexus/plexus-container-default/1.… @@ -670,16 +651,9 @@ b84d281f59b9da528139e0752a0e1cab0bd98d52c58442b00e45c9748e1d9eee | https://jcent 12a3c9a32b82fdc95223cab1f9d344e14ef3e396da14c4d0013451646f3280e7 | https://jcenter.bintray.com/org/codehaus/plexus/plexus-utils/1.5.15/plexus-… 2242fd02d12b1ca73267fb3d89863025517200e7a4ee426cba4667d0172c74c3 | https://jcenter.bintray.com/org/codehaus/plexus/plexus/1.0.4/plexus-1.0.4.p… e246e2a062b5d989fdefc521c9c56431ba5554ff8d2344edee9218a34a546a33 | https://jcenter.bintray.com/org/codehaus/plexus/plexus/2.0.2/plexus-2.0.2.p… -a52e6850f070dc9f7a2a51d0b25dfaafd49b0b9bf8196db6c0b3c5b7c94d8d38 | https://jcenter.bintray.com/org/glassfish/jaxb/jaxb-bom/2.2.11/jaxb-bom-2.2… 6cc1266cf306557b4f2d09cbd8cd6e75b5ef0c5773ca4ef763d4f730df947b64 | https://jcenter.bintray.com/org/glassfish/jaxb/jaxb-bom/2.3.1/jaxb-bom-2.3.… -37bcaee8ebb04362c8352a5bf6221b86967ecdab5164c696b10b9a2bb587b2aa | https://jcenter.bintray.com/org/glassfish/jaxb/jaxb-core/2.2.11/jaxb-core-2… -ec31409f203bcabf99534f59231ec0576d875d4d4b7349b09566a7a8c8179b24 | https://jcenter.bintray.com/org/glassfish/jaxb/jaxb-core/2.2.11/jaxb-core-2… -a874f2351cfba8e2946be3002d10c18a6da8f21b52ba2acf52f2b85d5520ed70 | https://jcenter.bintray.com/org/glassfish/jaxb/jaxb-runtime/2.2.11/jaxb-run… -e5327b31b595ab8143e97836d5ccdf85feb91e7ff5666f7b26913632facca4aa | https://jcenter.bintray.com/org/glassfish/jaxb/jaxb-runtime/2.2.11/jaxb-run… 45fecfa5c8217ce1f3652ab95179790ec8cc0dec0384bca51cbeb94a293d9f2f | https://jcenter.bintray.com/org/glassfish/jaxb/jaxb-runtime/2.3.1/jaxb-runt… f8101b86157fbfc01949ffdc7c59ea71ca23b7ece25f6a79061fe01cb750ff00 | https://jcenter.bintray.com/org/glassfish/jaxb/jaxb-runtime/2.3.1/jaxb-runt… -272a3ccad45a4511351920cd2a8633c53cab8d5220c7a92954da5526bb5eafea | https://jcenter.bintray.com/org/glassfish/jaxb/txw2/2.2.11/txw2-2.2.11.jar -8514cb724b4fca59a5cf272b632e539bd0a0f3cacf1844082d0a173a86406bd8 | https://jcenter.bintray.com/org/glassfish/jaxb/txw2/2.2.11/txw2-2.2.11.pom 34975dde1c6920f1a39791142235689bc3cd357e24d05edd8ff93b885bd68d60 | https://jcenter.bintray.com/org/glassfish/jaxb/txw2/2.3.1/txw2-2.3.1.jar 4714d46cacf702ab2cd478d6048c5d9cc57abdb55f4c07b6b7aa72799e02d36c | https://jcenter.bintray.com/org/glassfish/jaxb/txw2/2.3.1/txw2-2.3.1.pom 66fdef91e9739348df7a096aa384a5685f4e875584cce89386a7a47251c4d8e9 | https://jcenter.bintray.com/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.… @@ -704,100 +678,110 @@ ace2a10dc8e2d5fd34925ecac03e4988b2c0f851650c94b8cef49ba1bd111478 | https://jcent 965aeb2bedff369819bdde1bf7a0b3b89b8247dd69c88b86375d76163bb8c397 | https://jcenter.bintray.com/org/jetbrains/annotations/13.0/annotations-13.0… affb7c85a3c87bdcf69ff1dbb84de11f63dc931293934bc08cd7ab18de083601 | https://jcenter.bintray.com/org/jetbrains/intellij/deps/trove4j/1.0.2018121… 310a6aa2d90534c32b8f46f1fc98cd0edae95dcdfca23e2847e5efa9ae0c019a | https://jcenter.bintray.com/org/jetbrains/intellij/deps/trove4j/1.0.2018121… -633825d1dab1ad2ffaf981a526abd2d3ca43c384e88466c3e4c001e0edcd7d1a | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-allopen/1.3.72/kotl… -828399c9c6e290af75bc3e2df1720d5ab5d738c7d12a06c33cbfbec65c54c1a4 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-allopen/1.3.72/kotl… -975dab97d8aa780bc8d1af8efd66ba121c35c709537308d5742e812c46b126c0 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-android-extensions-… -d89b4ef057d10f9057d85685b711048c104ae76cfc60777cfae275848649a839 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-android-extensions-… -30278f88cfefb7bb328bedd73374242f8e3e55211e53884e4820dba271132fab | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-android-extensions/… -5d87527b1f65a82d0a6a4f56cceab960522001a0fd010159a723ab897d58da0c | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-android-extensions/… -35d8e287a1d74dc55024a42bd788567e1f73e2059eb804319876d652f249ef59 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-annotation-processi… -2d97af231b25d4f463438a66c7c368a8e395e49ebb623b595ca860cef917334a | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-annotation-processi… -dc0d14042176647d0bde5954aba8a435f6a8857f9648bbc454b94366bc1cff06 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-build-common/1.3.72… -5a6bb0d142ed04c1df96200c35bb72bc63c3ae7ea6c876834f37d83938f1e3d4 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-build-common/1.3.72… +141a720ea50f39dc52148a9efab55b7ae4c5909b9c246667cfd9c9ad3e0d7f41 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-allopen/1.4.10/kotl… +fd55a3fd6d5d8a199462dfc414749883276be93a85a1632094a1d974013041f4 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-allopen/1.4.10/kotl… +4c801ff4f5151778762ce2d57080f0cb10a4a94cb76ad24593cca35bff36da48 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-android-extensions-… +f120750af0c9e0c6024c3c76469fd4638ef898fc5bc2d4c49f2fe17568f47b9e | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-android-extensions-… +55b9627bceee132f70f8124b279f618ececf8d5cb8ac97c9d30f43cc5b9b3871 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-android-extensions/… +2ae0864b6a2db8f6fea11f56dc1f3d4fdc2d1e328a876b5679e8eace58b38577 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-android-extensions/… +0ba48754df3bcc16fafb3e22c40a251d01115359809cf14cf5f98aef15d902e1 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-annotation-processi… +ecf643b89d16fe2d6ad4a7f12755cdf10076545869229dbce43fa1f2445c21fc | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-annotation-processi… +23c6aa7925e529f0a982539138c69183c038822be149605e5c704f259c1837aa | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-build-common/1.4.10… +08c7d6fdbe362cf36e9ccc5980675265fbea29721c485f197efac630eec413b6 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-build-common/1.4.10… 79500b867b1194cf781ac98d5c706331a3d3ce8448437f536f8d4cc2faff50c3 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-compiler-embeddable… 2bad6c031302519db14517bcc33af09f137845de40e5b223b778e8a38c561fd7 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-compiler-embeddable… -a2d8622ef0e2877577e368ec3a2ffbe7978b4512aab456d0db6427d9fae39d47 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-compiler-runner/1.3… -6816c427914a4e4ead92300c0b643339b07e7cbb3355d48d5932dbcdaac7d058 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-compiler-runner/1.3… -8f3ef9192e17768cd4e1f3c1f1c225ebd3b500a67ad05a735b31aa16e01c181c | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-daemon-client/1.3.7… -215e6f1bb1980a8bdbef9c155557d17e5a16fbae84d5cae5bf2fd20b86b87d2b | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-daemon-client/1.3.7… +c0d023cff6ee64d360a5b6d7da17aa068b63a4a721f6323a855249d6737978e6 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-compiler-embeddable… +10b4c56cf26d87089777abaaa798b96924ebd42b2f59f806bb7a677f06d92fce | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-compiler-embeddable… +48380e9de166d82197c8f72e42df19d9981f031ffdbcf1cd246ef6d6deff794d | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-compiler-runner/1.4… +6ac9055b2aeda94eb81993cddcf4fd57c5ab53bab3925ec4c4059426317ae5eb | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-compiler-runner/1.4… +cc42296727533ff7f5ed103f48142d07f396b1ea81f795defde54eeb1a923a37 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-daemon-client/1.4.1… +753b98532fe9569a024e466c4537df66ee2ecb4128ba1aed6635a03793bbe750 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-daemon-client/1.4.1… 1a4b999a2d9051382430994126c4bebd143c853e26d6bca4fd4c31924072ef5e | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-daemon-embeddable/1… eabab80e05fe2a31e2f2395cedf589cd72fb8df0a82e08e93c2e36fe953b8d59 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-daemon-embeddable/1… +b0ba729c8bd039e1973bab95a88577fbc407baefaef016acecf73c06a504a05e | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-daemon-embeddable/1… +4ce8827541cdb85bfce5bd493b307da13da3c6c5e470f9f2a07f3e578d54b7c5 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-daemon-embeddable/1… b0e6d0ab0c1f1dd2e2e5f540eeb6e5791820bdbe4f34597b4af183145dd2a493 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-gradle-plugin-api/1… eedb363ba1f4b999e62b34d264f1b37492f986169d808ec94ca72a67938291db | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-gradle-plugin-api/1… +83e2d1333ac57832e10eac230f36800fa7fda46a05b7ff76f694714674260cb9 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-gradle-plugin-api/1… +226514a326c8224f2ce948b106d8a133e17ab8e114db25a5f3e413c5b70f9ae5 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-gradle-plugin-api/1… 110fc7e4602f7aa47286a74756b673903ff3db5044312a16172eac38f7ba1224 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-gradle-plugin-model… fce78c0c595493d89f90fa4ddba466abf4497e61aac6f2f0449ca1541c167413 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-gradle-plugin-model… -b914cbcd8e55e76f221cc863912c38b1fe6ce56800300c147f85410aaa8789ab | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-gradle-plugin/1.3.7… -22b704fdeead36afd9de11ff9af93dcd048037ad24d200fa0616a9d09ff99c2f | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-gradle-plugin/1.3.7… +0f5dff8b67b0ea18f41e4c0547de55b83fc12d777cd0806b80c7c415fc65a78f | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-gradle-plugin-model… +f16817733e7ea24ec8559e5ac5d3c2d2d4fcd9a4073be3052147d7c5689b1778 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-gradle-plugin-model… +46e4691796cd1410872325bed8919a0cd12e619fd16243f8f439ea2114acec8f | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-gradle-plugin/1.4.1… +eef93e0497a587b82d335a299f8a0616be8c19ba82a36f795647409182eb25b5 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-gradle-plugin/1.4.1… +fe6046a1c68d56c21aa57ee9847ad92ce5a7975e6633082c19deaa4532acc959 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-klib-commonizer-emb… +b6f72d264e25f02dcaee32c8ab2e47d0c6a1cd7934c640406c5e72ed0994b6d4 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-klib-commonizer-emb… bf3e4edef51b7af7f1a8927fb58dca402e87668d246bfd0ad6520b9f2e3adebb | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-native-utils/1.3.72… 21d04a0720be4a46804e1b73b733c72269c16900896ae463a9e87a1d04ed50c6 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-native-utils/1.3.72… -64583199ea5a54aefd1bd1595288925f784226ee562d1dd279011c6075b3d7a4 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-reflect/1.3.50/kotl… -8745181e5a3e0bafefd46309c6b810df7253f379feb985131eaf8d4d9c302635 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-reflect/1.3.50/kotl… -143e715c10ff6d65eb5a7695be7b696c6e013702dff103d23ba54760bf93867b | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-reflect/1.3.61/kotl… -b2b8add63c5ce9b67571ed469f7c37fd043ee2420206255e96a146018d8e2fa0 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-reflect/1.3.61/kotl… -59c57ab609494d2a30d6ea3737428a56918ff0b8031081ea73b8472fdec06e44 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-reflect/1.3.71/kotl… -4df94aaeee8d900be431386e31ef44e82a66e57c3ae30866aec2875aff01fe70 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-reflect/1.3.71/kotl… a188d9367de1c4ee9479db630985c0597b20709c83161b1430d24edb27e38c40 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-reflect/1.3.72/kotl… 61653ccfae8caa4203e267b479821bd90faab3fef744a7ab0fdd9f61150f970c | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-reflect/1.3.72/kotl… +3ab3413ec945f801448360ad97bc6e14fec6d606889ede3c707cc277b4467f45 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-reflect/1.4.10/kotl… +eef345ac9f76f39a8f0364bfbb335619eb506c4e54e1997be1c58dc624b425d9 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-reflect/1.4.10/kotl… 8e525c7a19a94aea294403d531fd61eed3f08b2992e313a594cb531b75ffc35d | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-sam-with-receiver/1… 4961812a7df6b98c49618bb67d497d5aeabf4e73ec3d346558f162f0c6d39d68 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-sam-with-receiver/1… d372f2dc8051f3d1d4fae3bd50e5fa109d3ec870c4a4830112f9afc8560aacfd | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-script-runtime/1.3.… 65a3e614b27b2372f350cc015848d44cb14ca3225d8d41e1c54e60ce95e2131f | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-script-runtime/1.3.… +142c51b9bed14244abdd6ea4551e645be57c3a03a70b9933822e870c05fa8fac | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-script-runtime/1.4.… +41357fe0c2608446c7a8f1ceb0259042aa0b94d7d92404d5904024dfb88c075a | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-script-runtime/1.4.… 420198546b466bfa9c38d1d7fb2ffcdfb8f518026e8f4a7ca3851fbdd525a538 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-scripting-common/1.… ad6cfeaefa234918fde058ab1f376168abe54cd1e7d12824fb15cc8a07aa0f03 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-scripting-common/1.… +bda57f354344be674e0a241b4c87248857acb411b9dc8ab65068141016466085 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-scripting-common/1.… +428551f2529aae79a6dfc3babae871f628d30f5daee8254a339af01dd71ac1cd | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-scripting-common/1.… e91befa8242e5894158c0275d26d883599fe6e6c57b6952129aebec17a2ef0aa | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-scripting-compiler-… de70f4db2a9d7d7aa42f88f217d59b61ed4357d4de138fadd3e459320abe52ba | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-scripting-compiler-… +9741d42f28e4f1d621e421ac2b0a4fb2e5f05b1fd4bfd326545b42de57fda4c1 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-scripting-compiler-… +3e231d28644bff51f7a2e8cb1b6ef01e943cf9efb29720faa14166f7b448de7a | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-scripting-compiler-… d9a1cb78976db75b6173b51ad04efaebc2b3772636ad0b45cac4cd2d53222dc9 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-scripting-compiler-… 0e1311cc6bcd06f373cf8ef7c4d7380087f36de70d9c72acc432e02dabc30a9b | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-scripting-compiler-… +7e369d1ba702082d9daa54674004aef7cb2adf5d2872e758a87674f4c3144836 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-scripting-compiler-… +4728fe40c3b32661ca66cde848e7bf78be95fd18aa07e8e36421257152d157f7 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-scripting-compiler-… 5a9cced336697fbf2fb4b6c8a321787747f5e375227b7e355ebf3259365c024e | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-scripting-jvm/1.3.7… 6a1ba16592546ab118186a5634c9b24589ae2ed64f0cdd41a913ffb3c2b13db6 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-scripting-jvm/1.3.7… -8ce678e88e4ba018b66dacecf952471e4d7dfee156a8a819760a5a5ff29d323c | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib-common/1.3.5… -b6396fe802d7bc76a381485e266cb975f3b2f2d3dd9bf7213aab6ca27a561fc1 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib-common/1.3.5… -a2e7f341cf3047b5f00a1917ef777d323cdab2a57377468b8ed62aa31469cf7f | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib-common/1.3.6… -e22db009bb1a61636d9425635989736db5e3fca494809abf244468dc474cfc04 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib-common/1.3.6… +6cc266acac8dc49f5956f3f553c8de5fce0d1757c65a86b83c4ef0625a82ab69 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-scripting-jvm/1.4.1… +04b8a39c6860998bd6446bf69c425e42af8f155a639915353c257233fecc2ff8 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-scripting-jvm/1.4.1… 5e7d1552863e480c1628b1cc39ce230ef829f5b7230106215a05acda5172203a | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib-common/1.3.7… 24781edf5b0934804930dcafc8911b9e710d146239a82699889132e7b37be9dc | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib-common/1.3.7… -9a026639e76212f8d57b86d55b075394c2e009f1979110751d34c05c5f75d57b | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.3.50/… -a3aef46388ee96e975110db51df3ab794c87d892bdbc6d5a49bf926e4779438b | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.3.50/… -11f4a57e3e7d81f3f152d5dcefe39bd77614b5a94125ff3b11526b0a19ac3989 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.3.61/… -c416080aeabdb9118a08ee78c28e2856038cd85858422a71f7c46bf276f667a7 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.3.61/… +4681f2d436a68c7523595d84ed5758e1382f9da0f67c91e6a848690d711274fe | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib-common/1.4.1… +63480e72a7d4de742b49a6ff90e45f544ca37f3fe11af8b4839f9cd747515d00 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib-common/1.4.1… 40566c0c08d414b9413ba556ff7f8a0b04b98b9f0f424d122dd2088510efccc4 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.3.72/… 9d5a13d9abc33445e1366d258af0a77e42f01945acef7c0917b9d539854e2fce | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.3.72/… -e3856758c3bb08b7c97ddcd493521c5e0bd0741717c93b292bf1a541513af082 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.3.41/… -1b351fb6e09c14b55525c74c1f4cf48942eae43c348b7bc764a5e6e423d4da0c | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.3.50/… -8674b002f66a2948981c4f6cb5987ec62ff3d54b6a2799a6d2cd23afb83f2ad3 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.3.50/… -3839ba7deb798375da1807bc469d1cf315db7a6275599f733184374772ec3b21 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.3.61/… -e30187e5720ca640b8e68686f20dd0250dcef0193d56e5569c3c4a61277312b6 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.3.61/… +f9566380c08722c780ce33ceee23e98ddf765ca98fabd3e2fabae7975c8d232b | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.4.10/… +78f2fe1d48e99c64958930ccdc43fce5939460ecdfc65f302823a021d63c520d | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.4.10/… 133da70cfc07b56094282eac5c59bccd59f167ee2ead22e5282876d8bc10bf95 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.3.72/… a6d50f0321bdb52838c99136930c8dcc78c3074a592d526862ec01be91fa622b | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.3.72/… -e6f05746ee0366d0b52825a090fac474dcf44082c9083bbb205bd16976488d6c | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib/1.3.50/kotli… -704fd78960ae046428f69bcd5b951c122e4c180c9400238a866e12cb18494a61 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib/1.3.50/kotli… -e51e512619a7e7650a30eb4eb3e9c03e6909c7b5e3c026404e076254c098b932 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib/1.3.61/kotli… -dbe5babcd8d43e9b08c2845680b53fc1bb3e051c4805802ddd0ed3e8e2c50a84 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib/1.3.61/kotli… +39b7a9442d7a3865e0f4a732c56c1d5da0e11ffb3bb82a461d32deb0c0ca7673 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.4.10/… +c2f4d70082dbbfcea68fdfa74289cef32df9e4b5ddf359f006036dff1c5b06d6 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.4.10/… ff03e9989faa2d40fa4a9098aaad71e247f27ea4d24b0754da642eb0924bd8c5 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib/1.3.71/kotli… 3856a7349ebacd6d1be6802b2fed9c4dc2c5a564ea92b6b945ac988243d4b16b | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib/1.3.72/kotli… 4f0d574a969ea93c45628a163e1ed3ffabb4584278d72c647ec124f8c8109481 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib/1.3.72/kotli… +01ecb09782c042b931c1839acf21a188340b295d05400afd6e3415d4475b8daa | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib/1.4.10/kotli… +a4b9cfbb4bbda523af1e24d52c775fb9c0f7cb568e48b065d45aeb56e63c2762 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib/1.4.10/kotli… 9ef3d0277fe54384104a01089c8c718a9c2a7ab2b5292ff803ecfc9d38e7d6cb | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-util-io/1.3.72/kotl… 8131897af3fb30af2464efe56161a349087bca1544cbf57495158714875163e4 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-util-io/1.3.72/kotl… -3825cbc39ac9b557bf11ed52ed8552200831004a60e845eba61c77ba972a2d9f | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-util-klib/1.3.72/ko… -0e10935a94077c217ec5107b451c0859e89a27f67fd09543bd044c798cb154cf | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-util-klib/1.3.72/ko… -4d99bad3441800171802633785153566434e51009d872a2783a7046cc27b83d2 | https://jcenter.bintray.com/org/jetbrains/kotlinx/kotlinx-coroutines-androi… -cedeb99d252f51190e4cbf84e788fbe6d64e42216c42786aac029bfc4f1e2d65 | https://jcenter.bintray.com/org/jetbrains/kotlinx/kotlinx-coroutines-androi… -fa64623d47d5f03553b4b9dc7902d30943c65c334487029681a03045fb13172c | https://jcenter.bintray.com/org/jetbrains/kotlinx/kotlinx-coroutines-androi… +254b3aee937206a583fe37e5b0a56b570b18c1ccefd7b47a4f436786d49cb452 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-util-io/1.4.10/kotl… +910c98c585e3a308e93a1c0a021d38dc5e1e3bce1c4cbf04000e4711371ac81a | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-util-io/1.4.10/kotl… +f2ce17a896296ff0ab726934716b2bd06695198e6ed78274afdb1f9e6f283833 | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-util-klib/1.4.10/ko… +db9a950ba9a190d04611e69b1732221ba7035c2796b7d8b6afa69840711cd0ee | https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-util-klib/1.4.10/ko… +3b6529d1872a2c689b2231cf3e75476badd5c5a430206c2c1967e4deb171e50d | https://jcenter.bintray.com/org/jetbrains/kotlinx/kotlinx-coroutines-androi… +504b6599eb3a3b4d8b4db267d1628e79f3e58f17fc4f6d44c24cda530b0edf39 | https://jcenter.bintray.com/org/jetbrains/kotlinx/kotlinx-coroutines-androi… +6538f458473a42b6e2a92676f00d70d4fa0f6ae824d13c1e31c8051c196d2335 | https://jcenter.bintray.com/org/jetbrains/kotlinx/kotlinx-coroutines-core-j… +64c6d2b53e52eb65e26c6b828d848d8ceab30473c3511bbd1c116cf9799bc127 | https://jcenter.bintray.com/org/jetbrains/kotlinx/kotlinx-coroutines-core-j… +9bea3679d3fdb5ae8bdf200fc586d1e1cb02266ac659986125ad1a14d709a94d | https://jcenter.bintray.com/org/jetbrains/kotlinx/kotlinx-coroutines-core-m… +20a08a807b5debd1ced0dfcd2f74e802c002b59666d4c2d7323f4ad4c9030d8a | https://jcenter.bintray.com/org/jetbrains/kotlinx/kotlinx-coroutines-core-m… 7177ed4629704537e0252537629886f5409526ecd041d8d8e308e20624b14394 | https://jcenter.bintray.com/org/jetbrains/kotlinx/kotlinx-coroutines-core/1… 6f7523ea8a56d7f12d11a004cfe5a4577bfba3ed6c84cc5ac48b72d54975552c | https://jcenter.bintray.com/org/jetbrains/kotlinx/kotlinx-coroutines-core/1… -29999e5286c988a9b72b7c6dfeb984d9fa21c51718f5b6f93f5621e700a537fe | https://jcenter.bintray.com/org/jetbrains/kotlinx/kotlinx-coroutines-core/1… -6d3ddc759cd2094b1495198a8501e22a51c4c3d011ec801f5fc45a2cd25b8f11 | https://jcenter.bintray.com/org/jetbrains/kotlinx/kotlinx-coroutines-core/1… -f4a306487c17b8cdca8d3e5da50369a2e5ac7c665200516d427726dff5a56f92 | https://jcenter.bintray.com/org/jetbrains/kotlinx/kotlinx-coroutines-core/1… -c3c8889749033957f81bed4c55a24855bbef8f9b9fc0da65898bdba7042842d5 | https://jcenter.bintray.com/org/jetbrains/kotlinx/kotlinx-coroutines-debug/… -f0845c94779677d153ee0b2c9c6f3c2e5ca82cbe4c06625999c1728ef5b6c70e | https://jcenter.bintray.com/org/jetbrains/kotlinx/kotlinx-coroutines-debug/… -b928f39293a04a3d488a5993334aea09484cae232615fdf45c4b650c2cc9bdb0 | https://jcenter.bintray.com/org/jetbrains/kotlinx/kotlinx-coroutines-debug/… -5760d6348d2b6e98beae229e806a540a77f787b7b0f2819d950043fc4bcf6a54 | https://jcenter.bintray.com/org/jetbrains/kotlinx/kotlinx-coroutines-test/1… -b25a2a61420deeb3e1aee2b4844d106c1fbe164ba08529e985dbe04a3270e9ac | https://jcenter.bintray.com/org/jetbrains/kotlinx/kotlinx-coroutines-test/1… -2e3098f4ca0dcd38f7e133cfab33bdcf0bcca47acedcffaeaad3b9a2a5ba35c4 | https://jcenter.bintray.com/org/jetbrains/kotlinx/kotlinx-coroutines-test/1… +ad426ec76f52b1dcdf200f55495aea9a2d2796811884e8c4b514645061cf59f3 | https://jcenter.bintray.com/org/jetbrains/kotlinx/kotlinx-coroutines-core/1… +9e82078f4dafe1cc2e28f308a317912a45c6a88fc83c51db6ba8cb0ea0829ef1 | https://jcenter.bintray.com/org/jetbrains/kotlinx/kotlinx-coroutines-core/1… +51be6791ac5aed9718a58b297c8c9081c9b704dfd72a849c4754a40da55ee236 | https://jcenter.bintray.com/org/jetbrains/kotlinx/kotlinx-coroutines-core/1… +f02d46222e4591a9e16b6bacce5dc6606c33b38912d916daa41d428ef6703020 | https://jcenter.bintray.com/org/jetbrains/kotlinx/kotlinx-coroutines-debug/… +5ae9e4dd4e81c0bfc92b0d760651815792793be9ec4f8a2d308b4aea6adbb23a | https://jcenter.bintray.com/org/jetbrains/kotlinx/kotlinx-coroutines-debug/… +e61e3d3db85385c8c2439a5b87b724205cb8605b24edc89d34d8f84ed401eecd | https://jcenter.bintray.com/org/jetbrains/kotlinx/kotlinx-coroutines-test/1… +6d2be12eb2f02729639cbf07a590e1fd354ec5042e9233d29de794055c0845bf | https://jcenter.bintray.com/org/jetbrains/kotlinx/kotlinx-coroutines-test/1… 1917871c8deb468307a584680c87a44572f5a8b0b98c6d397fc0f5f86596dbe7 | https://jcenter.bintray.com/org/jetbrains/trove4j/trove4j/20160824/trove4j-… 5c415a9d8585200de4be1947e15291cc79f599b06249375f5c9ea22d4b2d090f | https://jcenter.bintray.com/org/jetbrains/trove4j/trove4j/20160824/trove4j-… -a31ff7d77163c0deb09e7fee59ad35ae44c2cee2cc8552a116ccd1583d813fb4 | https://jcenter.bintray.com/org/jvnet/staxex/stax-ex/1.7.7/stax-ex-1.7.7.jar -27cb450b6c367a00bd8362519907f84defac7b12086c64d4d6e97e33ab873ead | https://jcenter.bintray.com/org/jvnet/staxex/stax-ex/1.7.7/stax-ex-1.7.7.pom +518080049ba83181914419d11a25d9bc9833a2d729b6a6e7469fa52851356da8 | https://jcenter.bintray.com/org/json/json/20180813/json-20180813.jar +c7e660c50bf4ecda0fc81ab62b489db9171e207fa784ddcb48c6c85bb40b49f5 | https://jcenter.bintray.com/org/json/json/20180813/json-20180813.pom 95b05d9590af4154c6513b9c5dc1fb2e55b539972ba0a9ef28e9a0c01d83ad77 | https://jcenter.bintray.com/org/jvnet/staxex/stax-ex/1.8/stax-ex-1.8.jar 0a84c20cf71f6a3d21fe226b0d588332fc7ae3e90cb583c60a483317eb9f3644 | https://jcenter.bintray.com/org/jvnet/staxex/stax-ex/1.8/stax-ex-1.8.pom f64f2cdd95e608f0c5079dd0df3f184d77eb6f2a6c161fbd2602c46e7aba40c8 | https://jcenter.bintray.com/org/mockito/mockito-core/2.24.5/mockito-core-2.… @@ -807,36 +791,24 @@ f64f2cdd95e608f0c5079dd0df3f184d77eb6f2a6c161fbd2602c46e7aba40c8 | https://jcent 4c1307909dc62df1bd91f075503f8bdef5ae445e13353f1752af9448bea1d3f1 | https://jcenter.bintray.com/org/objenesis/objenesis/2.6/objenesis-2.6.pom cdb3d038c188de6f46ffd5cd930be2d5e5dba59c53b26437995d534e3db2fb80 | https://jcenter.bintray.com/org/objenesis/objenesis/3.1/objenesis-3.1.jar d46072a46dff7707e06545777486b18d73e052231e3139cd3d9c3f347bc4e6e4 | https://jcenter.bintray.com/org/objenesis/objenesis/3.1/objenesis-3.1.pom -2f1a6387219c3a6cc4856481f221b03bd9f2408a326d416af09af5d6f608c1f4 | https://jcenter.bintray.com/org/ow2/asm/asm-analysis/6.0/asm-analysis-6.0.j… -d3aaf42e40e3e24aabda53b5de4de5e17cb78e06549bf37312dca6c77e251054 | https://jcenter.bintray.com/org/ow2/asm/asm-analysis/6.0/asm-analysis-6.0.p… e981f8f650c4d900bb033650b18e122fa6b161eadd5f88978d08751f72ee8474 | https://jcenter.bintray.com/org/ow2/asm/asm-analysis/7.0/asm-analysis-7.0.j… c6b54477e9d5bae1e7addff2e24cbf92aaff2ff08fd6bc0596c3933c3fadc2cb | https://jcenter.bintray.com/org/ow2/asm/asm-analysis/7.0/asm-analysis-7.0.p… be922aae60ff1ff1768e8e6544a38a7f92bd0a6d6b0b9791f94955d1bd453de2 | https://jcenter.bintray.com/org/ow2/asm/asm-analysis/7.2/asm-analysis-7.2.j… 71faa63489b3de4d6251581d2b26e87e0c167c5a08198ca62853fd83644d841f | https://jcenter.bintray.com/org/ow2/asm/asm-analysis/7.2/asm-analysis-7.2.p… -f1bce5c648a96a017bdcd01fe5d59af9845297fd7b79b81c015a6fbbd9719abf | https://jcenter.bintray.com/org/ow2/asm/asm-commons/6.0/asm-commons-6.0.jar -90f4f29473afb957229016eb5741954976cc1b67bc049b3981c0d1e653ad5cdd | https://jcenter.bintray.com/org/ow2/asm/asm-commons/6.0/asm-commons-6.0.pom fed348ef05958e3e846a3ac074a12af5f7936ef3d21ce44a62c4fa08a771927d | https://jcenter.bintray.com/org/ow2/asm/asm-commons/7.0/asm-commons-7.0.jar f4c697886cdb4a5b2472054a0b5e34371e9b48e620be40c3ed48e1f4b6d51eb4 | https://jcenter.bintray.com/org/ow2/asm/asm-commons/7.0/asm-commons-7.0.pom 0e86b8b179c5fb223d1a880a0ff4960b6978223984b94e62e71135f2d8ea3558 | https://jcenter.bintray.com/org/ow2/asm/asm-commons/7.2/asm-commons-7.2.jar 190ed352a8c20594b196b20194d06773b91c86b8d36868f937e5dbd0e9c0d78d | https://jcenter.bintray.com/org/ow2/asm/asm-commons/7.2/asm-commons-7.2.pom -791d064bb9ecc9a46d43bc9efecd74c91464dfc451f321b802d2261e2ccd7d14 | https://jcenter.bintray.com/org/ow2/asm/asm-parent/6.0/asm-parent-6.0.pom -887998fb69727c8759e4d253f856822801e33f9fd4caa566b3ac58ee92106215 | https://jcenter.bintray.com/org/ow2/asm/asm-tree/6.0/asm-tree-6.0.jar -36887e0d7fdb185a92378a38ea45e596a97f10f385c5d050eb6252454ee701b4 | https://jcenter.bintray.com/org/ow2/asm/asm-tree/6.0/asm-tree-6.0.pom cfd7a0874f9de36a999c127feeadfbfe6e04d4a71ee954d7af3d853f0be48a6c | https://jcenter.bintray.com/org/ow2/asm/asm-tree/7.0/asm-tree-7.0.jar d39e7dd12f4ff535a0839d1949c39c7644355a4470220c94b76a5c168c57a068 | https://jcenter.bintray.com/org/ow2/asm/asm-tree/7.0/asm-tree-7.0.pom c063f5a67fa03cdc9bd79fd1c2ea6816cc4a19473ecdfbd9e9153b408c6f2656 | https://jcenter.bintray.com/org/ow2/asm/asm-tree/7.2/asm-tree-7.2.jar 56765f0a8bd0978214f7ec87a9dafb5825b8191cff554a5adc14c65d1f5b0442 | https://jcenter.bintray.com/org/ow2/asm/asm-tree/7.2/asm-tree-7.2.pom -356afebdb0f870175262e5188f8709a3b17aa2a5a6a4b0340b04d4b449bca5f6 | https://jcenter.bintray.com/org/ow2/asm/asm-util/6.0/asm-util-6.0.jar -3cdfc61f988d167b97503419da82a5808b20f4205aeb46c394e6e7ffd3211f12 | https://jcenter.bintray.com/org/ow2/asm/asm-util/6.0/asm-util-6.0.pom 75fbbca440ef463f41c2b0ab1a80abe67e910ac486da60a7863cbcb5bae7e145 | https://jcenter.bintray.com/org/ow2/asm/asm-util/7.0/asm-util-7.0.jar e07bce4bb55d5a06f4c10d912fc9dee8a9b9c04ec549bbb8db4f20db34706f75 | https://jcenter.bintray.com/org/ow2/asm/asm-util/7.0/asm-util-7.0.pom -dd8971c74a4e697899a8e95caae4ea8760ea6c486dc6b97b1795e75760420461 | https://jcenter.bintray.com/org/ow2/asm/asm/6.0/asm-6.0.jar -c2bc497e197112e699085426bbb45b1ab0be8002da68267a3b1f450a0312c32e | https://jcenter.bintray.com/org/ow2/asm/asm/6.0/asm-6.0.pom b88ef66468b3c978ad0c97fd6e90979e56155b4ac69089ba7a44e9aa7ffe9acf | https://jcenter.bintray.com/org/ow2/asm/asm/7.0/asm-7.0.jar 83f65b1083d5ce4f8ba7f9545cfe9ff17824589c9a7cc82c3a4695801e4f5f68 | https://jcenter.bintray.com/org/ow2/asm/asm/7.0/asm-7.0.pom 7e6cc9e92eb94d04e39356c6d8144ca058cda961c344a7f62166a405f3206672 | https://jcenter.bintray.com/org/ow2/asm/asm/7.2/asm-7.2.jar e9e529afbd4bc699f6a3380855d27d13017c360fdb68547e06d1c3842d84e262 | https://jcenter.bintray.com/org/ow2/asm/asm/7.2/asm-7.2.pom -51215c67d2c068d8b7d2f6f80f51372a098075deccc448d4bdd7b987ba8328fb | https://jcenter.bintray.com/org/ow2/ow2/1.3/ow2-1.3.pom 0f8a1b116e760b8fe6389c51b84e4b07a70fc11082d4f936e453b583dd50b43b | https://jcenter.bintray.com/org/ow2/ow2/1.5/ow2-1.5.pom 6e58dad0b8565b95c6fb14b4bfbf570523d1c5290244cfb33822789fa53b1d25 | https://jcenter.bintray.com/org/python/jython-installer/2.7.1/jython-instal… 2a42db37f9a565f1baa833b7cb7e9f901bd9fd750d10b9bd7ca76b2385b22387 | https://jcenter.bintray.com/org/python/jython-installer/2.7.1/jython-instal… @@ -900,190 +872,190 @@ d583c72e82c4dc62c0ee4140e2c7e253e609c890f1c8c7dda5fb7ae726c04479 | https://maven 7cc2954d065c14e1a7cb49f8a4fb9b330f76c4ebc625d50f8a00d53e5f74bbbe | https://maven.mozilla.org/maven2/org/mozilla/appservices/syncmanager/63.0.0… 53f24189f0cff54e7b4937b6fd1e990b1ff8d9a52e8cc2b254852dabe08d1903 | https://maven.mozilla.org/maven2/org/mozilla/appservices/tabs/63.0.0/tabs-6… a35dd95abca6750f590232a723f177c499b98c9640735ab1ab660327a4d0e3b1 | https://maven.mozilla.org/maven2/org/mozilla/appservices/tabs/63.0.0/tabs-6… -3569255cb18fff3f799e6521720ccb7dc4a412ab83e1d7aca3bdca6fad8f1027 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-awesomebar/… -0f5bdc7d52b0335854cb51ee1123074fbed729693f83810525eb6debc70e414e | https://maven.mozilla.org/maven2/org/mozilla/components/browser-awesomebar/… -5a55d12b1fd3d08d00f9cc87cecbc634a634ed5af5874fb5e5c2fb65ae150410 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-domains/60.… -038d9cb487bceaef9b038902b16402cde44187edca58d6d44e5ecfd11eacb65e | https://maven.mozilla.org/maven2/org/mozilla/components/browser-domains/60.… -869c5d9c185fb6086f0cf2878238b4d7cfd7b9e2c015a524bc09cf65dd64a77c | https://maven.mozilla.org/maven2/org/mozilla/components/browser-engine-geck… -50c3c222192e196122b621d1ab1fb65022803e876382a78857be19fe1e4cc40b | https://maven.mozilla.org/maven2/org/mozilla/components/browser-engine-geck… -a7aef0ae60b8179e254ce408e38d2de1898405203f6c12943c4eb1d61193709e | https://maven.mozilla.org/maven2/org/mozilla/components/browser-engine-geck… -2bdce85c6c10bf71d543417b980efccda7ab18ea1ed7f451406353e9f6b47391 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-engine-geck… -ee4707f00443ab08f4ca727038e50ebf8bd02cd78a7a070094c9c8a7ebca75bb | https://maven.mozilla.org/maven2/org/mozilla/components/browser-engine-geck… -9465d6c49e456fbd8919cd8d9e6c2888865579b9df23045cddfa96d92071e4d0 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-engine-geck… -f2b927980297900cb2910761e8926ac9517faebda8609d31036b4c644b752177 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-errorpages/… -49027e9c92f3ef002ef675620b3d3faebad453f11e58530d1108772e05f0eb00 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-errorpages/… -0c6d801a960a4766fb7475d7a21e9c74119489c89796669cd71b5ddaa36b6d4a | https://maven.mozilla.org/maven2/org/mozilla/components/browser-icons/60.0.… -d979fe52c0fbf78b39c7637340c3b26ec4830cf8e8bd37c925d0aeca7f8e790a | https://maven.mozilla.org/maven2/org/mozilla/components/browser-icons/60.0.… -86949f0dc6d964057a4162ceefa169fc425403b5074a301736baa2bba1ad6566 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-menu/60.0.5… -ced043e8867062a28952317c9853712b826334d70049205291072e0b7d9c0109 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-menu/60.0.5… -fd065b7b9209e523cfc6b3eb685778f053fcb4e0ef3d5390a68903990ef7c691 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-menu2/60.0.… -25e0dfd391780fec37fb844e1828cf764debad7de3e58653c06d4f59227b1baf | https://maven.mozilla.org/maven2/org/mozilla/components/browser-menu2/60.0.… -39744aaee8b6aa9183f9ec96d5e960fe55f5ada1963756d555283720e6cc4f98 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-search/60.0… -b5c87a7a80be3c85d6931d325bd6a3d52deca01759b4abbd793295ab7869e667 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-search/60.0… -e206d19fcb47c2d9f98ea4ebdca4b0a4a0517629d9f5d8eb3c72085525a010d1 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-session/60.… -cb25f9c16b7aaaad199ca7737bbb174a6a81ac37fca33e9f3d3017855515f519 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-session/60.… -94871d34df2d15beb47ea8cf178e8802d55f0ca03fe09814734e07cbc839180d | https://maven.mozilla.org/maven2/org/mozilla/components/browser-state/60.0.… -a508892cfe9d3d36a519b4112e83f7d4b3b552bc255d848af085031cbd55f670 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-state/60.0.… -79848bec697404b89e7838d55ba2136e01e0db844b84f69dee252603f0d18a90 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-storage-syn… -badafa9a72492fe8f32b4226710877c64482b1daafe032e6b52abb6109346183 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-storage-syn… -7432e41b22511521c4263e0039ddc15a91f03bbf939347ea25c3ff66fde80b40 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-tabstray/60… -528209ddc0a1786f28d42942aa46a9929aaa0e266fdfd17bae3c74d2886a37ef | https://maven.mozilla.org/maven2/org/mozilla/components/browser-tabstray/60… -375062f26e552de415511c0e85f108e847eaa2c353f8f73d79b8fa0a00c0b7fd | https://maven.mozilla.org/maven2/org/mozilla/components/browser-thumbnails/… -73030e5c384bf973c66c554c83d217e64e78a631d211223440d42f640753b48a | https://maven.mozilla.org/maven2/org/mozilla/components/browser-thumbnails/… -10d28f515394bdcc93a243be500b6117b201d3d9a70b4c9409a151e1f8dd8348 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-toolbar/60.… -8c902f7ff151c0513e98ec1e8ecf3bf94c9c5f5af69a6db979eb76cb3396a5ca | https://maven.mozilla.org/maven2/org/mozilla/components/browser-toolbar/60.… -4142885233661bd8f0e3e3a648aa23e4af40a10bfb7a97c6223b67e656896155 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-awesomebar/… -8a3056b036062b9045d3676cbc9abf2bed28a5b0ccf4dfc3f24b60fed16e1bae | https://maven.mozilla.org/maven2/org/mozilla/components/concept-awesomebar/… -6395219890f2b79010a66bd0cd6c8e8987913d81db1e484c8863106efeb4b3dd | https://maven.mozilla.org/maven2/org/mozilla/components/concept-base/60.0.5… -fba539d7fdd8dfe3ec915eb539f2fd9730b4a61f1baa843b15c7995e42babea6 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-base/60.0.5… -5f10227f0d6fffcaea9ebbb042636824ca03509f3141e175e35ae45dd48cdd8a | https://maven.mozilla.org/maven2/org/mozilla/components/concept-engine/60.0… -c0f3d5c4a486961823399e74e5aff082950b190978946637244304e556ede9b5 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-engine/60.0… -cea421eade97a7b35349fab7b8eda39d71096171b7074a1ad286ef59aa5f2a06 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-fetch/60.0.… -c81ee472abbf3760930d44b507473ce4d0bd0af05e405033dbcf5eec9f7b0dd0 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-fetch/60.0.… -bbe901d57b1e16e6ea12f046337e1c3fdef728f0f400e209a33b170eb7069956 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-menu/60.0.5… -97a330c5e3a53b7d24c401032a8aa805e30a7114be92dcf9445144cd7c95f3a5 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-menu/60.0.5… -86425d68f958653f4ea53e2ecf18ed6ef33aa85382b90dc4cadfbc45dfe1cef1 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-push/60.0.5… -841dc999e6fa54c5b7d8687d00979105607cc088a5afe7d829f104b71d3131e3 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-push/60.0.5… -4d0677e3e8af4559125239ac5520d5ab2869456b538cdecca69a0b6764a4bbe1 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-storage/60.… -e2f503e7dc8da06a2c016c5a88f0f3ba3831c2cadcd4a2e927e18d077788544d | https://maven.mozilla.org/maven2/org/mozilla/components/concept-storage/60.… -e76f29897587f2bf3b6bccd96f9c2c89056ea657b9a1090a24d9cdcda9a1d337 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-sync/60.0.5… -b8a036995d0473b703a49ffb66e7826a55c4fe356c71807d1ce9983a18a62593 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-sync/60.0.5… -21617e6dac8fedac91066962b5c43acc3d7d3aa8c110970eee6a59730f26b59f | https://maven.mozilla.org/maven2/org/mozilla/components/concept-tabstray/60… -dfde155aa5cc04c3549a319fdbf3976b64f6bb8695adf2cd28400acecd93a607 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-tabstray/60… -5cecb07810e9904bc1d78e5128713a1f0395d68bb23a9e54d5fc439712d97822 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-toolbar/60.… -e0617365535b6358306b317e4fa71edd040d72bb6e97095280547b0132aa51f6 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-toolbar/60.… -b752b3cfb542ef545e5a2ba85b73866571f7cc023ef33c5837c023e2f1cde688 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-accounts-pu… -c2dd42f7727204e634384f2c3cc43908868d9dd81305d7e96a875d7f98449888 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-accounts-pu… -2cbe7ca26ef8dd7b0733a972e77708587efc9f2591730dcd125df04b546f3b69 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-accounts/60… -2f95ee0022aa3a7e30bcbb084796c983b3ab06fdf7ae3846483d6906d6038bb7 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-accounts/60… -094231988a119ea344dfbd269a13ec8debb70e7453c38c27f8ca3d736b210e2f | https://maven.mozilla.org/maven2/org/mozilla/components/feature-addons/60.0… -8ec322b53e50c2063907acec3d45dbdb1393e35be818d5cab82583e25b1d795e | https://maven.mozilla.org/maven2/org/mozilla/components/feature-addons/60.0… -bcc3a37ae37d3205d62657198b17e2999ba5ed6adcb7f60f1a2bd538d2c5acd9 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-app-links/6… -44b83f0dc818f9004e3db6a73a7d1160af44dce348a325d2ea3eebc53b6d5016 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-app-links/6… -bf76e549c452d7de4bb5ef1c6d06819f02efed0108f82f03285ae764022ef4ef | https://maven.mozilla.org/maven2/org/mozilla/components/feature-awesomebar/… -638e9c18e9573c1d82f20f570d1e33bdaa080bcdd62f0944d32991990708cb62 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-awesomebar/… -19126da4f3d292b8893a8a747c687aa2c1b08127a4d5b2e40160773d16f0f66c | https://maven.mozilla.org/maven2/org/mozilla/components/feature-contextmenu… -9d24e1f6369fda527a42e20a66f3505a5fc47b4e86a2693b60f55ab855098d78 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-contextmenu… -d91b5fba16cd43cb3dd2668f16d7d657eea7b4ee32375e8c14a6904b13faabe0 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-customtabs/… -d0526e7211d9c27f5b4d4fe0856e943615c252af9335ccff6031b8395a32c33d | https://maven.mozilla.org/maven2/org/mozilla/components/feature-customtabs/… -09fd5789da6e1f8bab33c0107d49b03ad96afd68bcadd8e812739d93f1221279 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-downloads/6… -ec77b13a8c6abd95ed1de9dd8a2f2436c8cb6b324afee825ceb5329df59a0559 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-downloads/6… -fa6355a90e334f6f4d25ef07b056e16ad25403f399e9a90bc63ec5f0028da6af | https://maven.mozilla.org/maven2/org/mozilla/components/feature-findinpage/… -9af21d1fbc393254e77d77dafe26cf5f07fae7fc5c23fdb14ad5b5fa3e87512a | https://maven.mozilla.org/maven2/org/mozilla/components/feature-findinpage/… -c75f368f829f04a7e4b8f673083c58306d5b2ca228af78fee30c86d8f3ceed05 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-intent/60.0… -279084e6305b126eb4cc5daedc66d418b7d813926869dc8bb634b391a162c57e | https://maven.mozilla.org/maven2/org/mozilla/components/feature-intent/60.0… -d94918b35844bbea31ad66b2a26d26723818ffc6380a0881d8a3445029405a1e | https://maven.mozilla.org/maven2/org/mozilla/components/feature-logins/60.0… -55ce05ca77012e9cc82e7f03a9ec48ff14903d910ce434cafb2bbee342f933ec | https://maven.mozilla.org/maven2/org/mozilla/components/feature-logins/60.0… -1b2ccbddf93c88284c73b4b3644b92ff70f2b62ddc936157821353167ca9cb42 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-media/60.0.… -47f377621100aafba0ac33a29624429f9ea9b274c24a31d751290373cccb390a | https://maven.mozilla.org/maven2/org/mozilla/components/feature-media/60.0.… -acb9379654dc34409247bf3c86a3648f6b96c5a4a4dfcb62bc41c3a9290f1b93 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-privatemode… -ed6a5abe3e4520dfab8942ee6b236ac817b5c9cf48164657fa25a2a951acccec | https://maven.mozilla.org/maven2/org/mozilla/components/feature-privatemode… -c4c77bce16b60c54995c8d1937c94bbdd394b6cd92bf4ee07e178c518cbbac63 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-prompts/60.… -e0520d519d6f965b072d33e75f3703e8d37c7e85bbd081e4abac0f96ab73fba9 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-prompts/60.… -bbacc3caa7171bfed8ee6bd173fb30d62230007a5f1bc731f55712400ffd51a8 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-push/60.0.5… -df492723e05d40c98f90d128000d1188ffca7f8a69df91fd570b7b589877f7ab | https://maven.mozilla.org/maven2/org/mozilla/components/feature-push/60.0.5… -53ab8940ad46f36bf7821acc857873260b6bacfa6870502f4f7c492adbece06a | https://maven.mozilla.org/maven2/org/mozilla/components/feature-pwa/60.0.5/… -37e8fac0930cb4b0241f9733a6a6d010b3b0097f1a1e9c18f43aba4c909b286c | https://maven.mozilla.org/maven2/org/mozilla/components/feature-pwa/60.0.5/… -d85a49a2f8bc9183afbab3e38c4414116eda62fb736eb58d7002a032551bb67c | https://maven.mozilla.org/maven2/org/mozilla/components/feature-qr/60.0.5/f… -36fbff2d28ddfe2db10a13a9375ed4390142b5671d67dee4b9f8bbbd6e4c70e0 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-qr/60.0.5/f… -584599b6bb8ce832ba30dc25d11d353a17212b6cee9f26d406720ee373b02710 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-readerview/… -503c4735397e4cc18aca02b6a953fe78953d009432b4a69cc00f3cca88e09409 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-readerview/… -b1b73d773f021f7ff45c1170be739b4757bbfc111dd6928cc3c8af77f91727ad | https://maven.mozilla.org/maven2/org/mozilla/components/feature-recentlyclo… -77bf1dadf45c703e7d0b3af5ded418acec5f9adc89a0ad36334a24871481e647 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-recentlyclo… -1f757d03617812c059cbb023b9fa320d9c6dba739b66aacb46c02f0339a46547 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-search/60.0… -5b1f36762aa502822bbcfe7b462cda951d99e6b04e2336ea75dc708517be866e | https://maven.mozilla.org/maven2/org/mozilla/components/feature-search/60.0… -712b8ad6e1266a9462b72eaedc58abc4c9ddc1e994c566296d86a03b74f9c9b9 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-session/60.… -e35724df4ae0b96dab9277bcd63436d43f1b74b404e622b826e5b5510299fc87 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-session/60.… -e048d388d04e3883e55b5cb9c5a50c43b6e3ad7c11659be487929417612afef5 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-share/60.0.… -1c441f690d43ffa4d237227c888158f8e7ed41fa4063e2b9f10b04eb0635609a | https://maven.mozilla.org/maven2/org/mozilla/components/feature-share/60.0.… -af4ab0aebca2119625b566a95855a46c36f11be91961e1df1e969401d8e51948 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-sitepermiss… -9691f0e54f26df62d7e676ce538aceefe5ba04b477870dcd97b43d61561349e3 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-sitepermiss… -4688f4cb15515cb04a554be1d8aacfa3301ddfce7a7fe8737155af750572b1fe | https://maven.mozilla.org/maven2/org/mozilla/components/feature-syncedtabs/… -2ca37d165a8defe66372721dc5e1e88572bf92e846a17776c024c429636d2f4b | https://maven.mozilla.org/maven2/org/mozilla/components/feature-syncedtabs/… -5072447af10b43e49519e447c5f20e683aed8b1527552d89b1edefd13dac6dc1 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-tab-collect… -9ad720a76a6f336e643386f3137786f08bd3758a3cf4fd18be04840d8ec09a03 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-tab-collect… -9b60e265b41bd12c9389c116e8a9cd19533dace7d232a9b4e6114d1294ebc9f1 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-tabs/60.0.5… -90840462fb2b334364ff6fa409e1dc8ab78ea4f45d33e285a1f976da72fd01fc | https://maven.mozilla.org/maven2/org/mozilla/components/feature-tabs/60.0.5… -ccf0ba0db3bb4f2de02e90a941fc3f62005726298a7facb81fa53ab060c5748c | https://maven.mozilla.org/maven2/org/mozilla/components/feature-toolbar/60.… -6a202e10c2a5010e07d66b7e1b5cbecffae82418f6eb267467da36fa340af484 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-toolbar/60.… -bb09050fb45ee08e28f31ef7c3f30d335c2bcb85b8b1ef5c4329e83fffbbf2ca | https://maven.mozilla.org/maven2/org/mozilla/components/feature-top-sites/6… -b8afd4122863c9d74255e1cae6dd7629a27e97e77186d74d56ea673f453c0bc8 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-top-sites/6… -b5721d1284a1cda0fed50837933294a5e95665fb34f34c1e37156263e3d82750 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-webcompat-r… -6a282842b0d7e819c5310b774eb831dbec8aa63da08c8173bf8181e838609d08 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-webcompat-r… -585ce686d2b451317a2a30339e01356889ebb952733a5e2ddf9ed66f897860f8 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-webcompat/6… -51908009b062e77e4bb5fb0e0bb57a67f06c2c4089182a49c51707564f6792f5 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-webcompat/6… -7cf3bdcf0cf9e171b10220608dc0d825230d091765641ec03f8cfea63d20722e | https://maven.mozilla.org/maven2/org/mozilla/components/feature-webnotifica… -007bba757b8b9ee673adb3f1940a6dac068f22e5d7a44b064abcf5b6583f4ff0 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-webnotifica… -0f0fe748c46e30f45357fb3535b8828a86d52666789b580c15c1ca4cf5a80249 | https://maven.mozilla.org/maven2/org/mozilla/components/lib-crash/60.0.5/li… -66f6282b95968b2cee18bbd7870e83003fd84b8d726749e6f0c8459d1fed83da | https://maven.mozilla.org/maven2/org/mozilla/components/lib-crash/60.0.5/li… -270ea22bc03b84f7b1b6fcb87b2eeb3e31c8e8e8b207ea962db0a9d643579589 | https://maven.mozilla.org/maven2/org/mozilla/components/lib-dataprotect/60.… -58c791d001b17aaf84f58090ac6bd3f842e7ebb76d76eba27deca07b555e927e | https://maven.mozilla.org/maven2/org/mozilla/components/lib-dataprotect/60.… -4cdab061fb29aac37619a5c3eff509ea86413873be739e5a60bfd0facd06c2fb | https://maven.mozilla.org/maven2/org/mozilla/components/lib-fetch-httpurlco… -bc58ae4cc6eaf544f03bab31b7b824b0a0054b58f7d8530f83e436a1f926c19e | https://maven.mozilla.org/maven2/org/mozilla/components/lib-fetch-httpurlco… -d7b4e218a3b491822d8d267714c6660474b833fa53a71aa3cbf6e319d97916c0 | https://maven.mozilla.org/maven2/org/mozilla/components/lib-publicsuffixlis… -8cff4739609c18a14133f4b7a98e7728ef67d6c250a4348f25389b347e3645ee | https://maven.mozilla.org/maven2/org/mozilla/components/lib-publicsuffixlis… -a8daa7620dd417ce28dc2ef6733bee2d31724d3781c1267c38e1da21e43b43b3 | https://maven.mozilla.org/maven2/org/mozilla/components/lib-push-firebase/6… -002507b03d9d46295ac901093babb9a58035c990a19346920836ff15655914a4 | https://maven.mozilla.org/maven2/org/mozilla/components/lib-push-firebase/6… -502ef281da0b593b459f6797187300c5399a3b705878759605e2033ff2508b05 | https://maven.mozilla.org/maven2/org/mozilla/components/lib-state/60.0.5/li… -9798cf0c35840adcd8148cf171cd35462d7816eb8ed8044fbb2fafecaf54ec97 | https://maven.mozilla.org/maven2/org/mozilla/components/lib-state/60.0.5/li… -809bfd11357b6dcc11c606e5bc183fbdaa2e13606a30c597c99a0b0e4d5281cb | https://maven.mozilla.org/maven2/org/mozilla/components/service-digitalasse… -4218aaccd34824e06f0a254770b9b0bfa6bd1e74ed9be47a0a02e1ba69cca7f7 | https://maven.mozilla.org/maven2/org/mozilla/components/service-digitalasse… -a483fbb43dbaa8790e21f51e9cfdc919b363f649983bbae807bfb6aeeea780ce | https://maven.mozilla.org/maven2/org/mozilla/components/service-experiments… -4669447035a012cf87f9ce49e0f48249d5e20e17819b6cb0d418c2d827d2ae67 | https://maven.mozilla.org/maven2/org/mozilla/components/service-experiments… -4b0cc8be12b074a7c89d8b899eeea3e7f088097ac687603e771669dde49febae | https://maven.mozilla.org/maven2/org/mozilla/components/service-firefox-acc… -1e18420b0efa0a0d6f0a70a79a461a76e599ccc6fcf79260d38e802bf326903b | https://maven.mozilla.org/maven2/org/mozilla/components/service-firefox-acc… -e79f67b5180f06a4680ffea310ceb2c5b0af205a88b3fb1cc76ce96e5b4a7ea7 | https://maven.mozilla.org/maven2/org/mozilla/components/service-glean/60.0.… -ebdf26a18f31be1c579d554344edfeaf3bed52603279693b894851354dbc51b6 | https://maven.mozilla.org/maven2/org/mozilla/components/service-glean/60.0.… -9c4365c30bd653005ff35aae75fa4676e59f6b73d751b68e4b8bb005463e67ec | https://maven.mozilla.org/maven2/org/mozilla/components/service-location/60… -18da06489a5bf160fb16417e4aa2aa445d578c1ed241c6ca05959feda2938949 | https://maven.mozilla.org/maven2/org/mozilla/components/service-location/60… -f719ea6a50d05349c4f1a0104c55e1c449e8297f3203ab56b5492d9d1be0868a | https://maven.mozilla.org/maven2/org/mozilla/components/service-sync-logins… -efb50b138b40941ce7637047d10fe5ad95c2fbd899dcc8a298581b99c801c1e4 | https://maven.mozilla.org/maven2/org/mozilla/components/service-sync-logins… -b330bc29caa114e5b6615572be80f8319bc9b9822b4246c73f5d6ba608080fc9 | https://maven.mozilla.org/maven2/org/mozilla/components/support-base/60.0.5… -0914ef5945dc5326978e0ebe2843ec4d87050d69e42bae901e4dbc1d1f369137 | https://maven.mozilla.org/maven2/org/mozilla/components/support-base/60.0.5… -3834748245baf1c50a8a31e01910ef3f22c734e449eb7c428a3590dfeda7c0c0 | https://maven.mozilla.org/maven2/org/mozilla/components/support-images/60.0… -09b121954822e60a9f7e8f1c9dafab13ee2d255628062a9dfd824a4907ca3595 | https://maven.mozilla.org/maven2/org/mozilla/components/support-images/60.0… -5fd89e26bb25aa32cfbad4a4120cbbd16231eae6011acfe361f0036f65882d5c | https://maven.mozilla.org/maven2/org/mozilla/components/support-ktx/60.0.5/… -5dcc661ef050f8af5ca693af65d5242421248091253b63271894630b838a2914 | https://maven.mozilla.org/maven2/org/mozilla/components/support-ktx/60.0.5/… -7aeadd17067d28d9aa92c18803854163b549f6d264edba6f01b22607a6027636 | https://maven.mozilla.org/maven2/org/mozilla/components/support-locale/60.0… -6dd4850c10db1d8299c11c063eda1c42d1d32345502128814f2475b8e55bbbea | https://maven.mozilla.org/maven2/org/mozilla/components/support-locale/60.0… -f3dcb9dd15e04f704c238208fce6d422c55a0e932bc8008bcf69790f83536fe4 | https://maven.mozilla.org/maven2/org/mozilla/components/support-migration/6… -edf6ec2b5ae76eb651eb5c0e772225489796a3b4b743b20224a58d36f2824da6 | https://maven.mozilla.org/maven2/org/mozilla/components/support-migration/6… -d49f35d74db7a107ffc6b76d3a3b24a69c559bb11406878841115f0116002b88 | https://maven.mozilla.org/maven2/org/mozilla/components/support-rusthttp/60… -265506ffe9318d3096394187d1a2776d91b3634dbb60fcbbda647d1c96d8c1c8 | https://maven.mozilla.org/maven2/org/mozilla/components/support-rusthttp/60… -1d551a1971becbb0076c050bb743ee766ed3bf31eba0898d0db1cfb93f476712 | https://maven.mozilla.org/maven2/org/mozilla/components/support-rustlog/60.… -931d10fceb1ae39686700aee76123dd4adfdd2151bc6d0aa56bec479353804d4 | https://maven.mozilla.org/maven2/org/mozilla/components/support-rustlog/60.… -2e4d2700a83c26870b922afe5ab209ec9c9aa26ee2528270cf3cf4385dacacf8 | https://maven.mozilla.org/maven2/org/mozilla/components/support-sync-teleme… -73a5ac80cd899bf48f3d0ffe906dda3121b84045c0a0d0f43bdabeca4d72563a | https://maven.mozilla.org/maven2/org/mozilla/components/support-sync-teleme… -8802d772db48d526b8241afe2eb9bc238be4e8e099a25b6cc1cbc0f573dfd85f | https://maven.mozilla.org/maven2/org/mozilla/components/support-test/60.0.5… -0a16d837943442903ae97acf969d3aac2676c3034e64ecf1be18bedf79a885e1 | https://maven.mozilla.org/maven2/org/mozilla/components/support-test/60.0.5… -c77c8c7ada29bf001cb2a370a6af859f85ff377f6e68043eaceca9f95d504f3e | https://maven.mozilla.org/maven2/org/mozilla/components/support-utils/60.0.… -c4eafaec126a6fbaf1b405de56e6e6513f0c96f89797f95551ed73e858d719e5 | https://maven.mozilla.org/maven2/org/mozilla/components/support-utils/60.0.… -1782bab8651c49971b0c3e29ee8c7c15539db31fb1ad712e574e858e3727f182 | https://maven.mozilla.org/maven2/org/mozilla/components/support-webextensio… -c63c4cadc30319381f71fda86dec7843a99354ee4feb20f4b082a9f4d517e52c | https://maven.mozilla.org/maven2/org/mozilla/components/support-webextensio… -02143e172e48604056fd7eeba71109bb85af15c1252784d9ded349cef25357b6 | https://maven.mozilla.org/maven2/org/mozilla/components/tooling-glean-gradl… -60ae503d0368254a68d4b048a0cfb52f09c3cbd3207b0b469173700146705d8c | https://maven.mozilla.org/maven2/org/mozilla/components/tooling-glean-gradl… -e371391df8db6b373af079e7f47d6e849b13cf74bd924fa1f970b055c3327c6f | https://maven.mozilla.org/maven2/org/mozilla/components/ui-autocomplete/60.… -50ca89927ea6306ed1de7ef37b9dd291f896d2ceecf90134f8927a7348117982 | https://maven.mozilla.org/maven2/org/mozilla/components/ui-autocomplete/60.… -f0b20de68ace4793cf51d8ecd39bba6356134fa290ec8a3c457ed3e1e100f47f | https://maven.mozilla.org/maven2/org/mozilla/components/ui-colors/60.0.5/ui… -a2014e4d23ef76e686fcb41335585f01d76ad4cdaa54c8f9a5949d974528916b | https://maven.mozilla.org/maven2/org/mozilla/components/ui-colors/60.0.5/ui… -52728c6033d046cda35f0e37e6cc1b62105ec9e19e263d74603ef73d938ec8bb | https://maven.mozilla.org/maven2/org/mozilla/components/ui-icons/60.0.5/ui-… -7b5c0e15e3c548b7aac5e8012f9b2ce32ff2bed948d2fb2d576d5b205e186b96 | https://maven.mozilla.org/maven2/org/mozilla/components/ui-icons/60.0.5/ui-… -81eb04ab0931b48c0e49782528f197ef2a09ba8480db02b1463f7d56931f858b | https://maven.mozilla.org/maven2/org/mozilla/components/ui-tabcounter/60.0.… -1006aa54b4b7b1489e415fd28b2c1ba75549c6a6caf0d40fe95677048c71e9c8 | https://maven.mozilla.org/maven2/org/mozilla/components/ui-tabcounter/60.0.… -465a618f0723991c14f9b7569289c889572f534a47f98819250585df1dbdcfa0 | https://maven.mozilla.org/maven2/org/mozilla/components/ui-widgets/60.0.5/u… -2648e9be7015e61aa19398dd099c5b99604ca4a87a85574d18bf19a3633f3beb | https://maven.mozilla.org/maven2/org/mozilla/components/ui-widgets/60.0.5/u… -bd1db5acfe3f5700ea47a4ac74f6ba0348d483d83d22d3216082bae26fe4bdb8 | https://maven.mozilla.org/maven2/org/mozilla/geckoview/geckoview-beta/82.0.… -7d5e1beb2bcf1fc3cae478351f4cea196f1c6554a03eb6ccc45f0e3270cf768a | https://maven.mozilla.org/maven2/org/mozilla/geckoview/geckoview-beta/82.0.… -593eec7ce486e9ab552f686a4fb4ba9fb96ff8a5ec0f58176fa839e5cca27758 | https://maven.mozilla.org/maven2/org/mozilla/geckoview/geckoview-nightly/83… -2c2688dc22a1961a99ac7f14185354ba2e9239bb284f19285fc70ddd89b63cd3 | https://maven.mozilla.org/maven2/org/mozilla/geckoview/geckoview-nightly/83… +a10d5f210fce21cfbc2fc102ca680c736dad1301a81eadfba0af04d630d75ad6 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-awesomebar/… +0918fc7a2d5aa07ba884889afae974ddf53afa6b29ce847a03381917cb69d930 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-awesomebar/… +96ba207d21b7f3ea35ed0d73e5a9ddc75235b7f047977fd862b653352b1f2561 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-domains/63.… +e2304b2c0da4a448a8e9fec907ed078d73d5d297f96d1c79c15f9df8d356df4e | https://maven.mozilla.org/maven2/org/mozilla/components/browser-domains/63.… +e51ca09a7636735596c2d75c468439e114c75222853fabb1061fb3c472d82e12 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-engine-geck… +608cc86f605572543287cba31902c0b0f7f97120caca0ba042d203beff7516db | https://maven.mozilla.org/maven2/org/mozilla/components/browser-engine-geck… +2927f45ec81bb0870e0bb4fc9549759f359b23e9974e8c69738a7967748649fe | https://maven.mozilla.org/maven2/org/mozilla/components/browser-engine-geck… +12dd4c4b028397bcf1a15c65548960fec81a91312ebfdf0e40279825c771e7f0 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-engine-geck… +5b32af510d67093b6d2a2aa786e9543fd282020a05f5b320e53a5334960de350 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-engine-geck… +bae39f4282cf8ce9607e5e211fe5d0dc904ecdc026cb10b3f97166156695ca44 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-engine-geck… +aa9519cbac4d22fc9dd419d271ab9ed1852ef68e58b4aa26fed16c43cac91dba | https://maven.mozilla.org/maven2/org/mozilla/components/browser-errorpages/… +504e512768081ddb39413ccc1ad9c82ed7c3b8f5ab5ed0a247de2e361c3af25a | https://maven.mozilla.org/maven2/org/mozilla/components/browser-errorpages/… +83461d5444505009997213a857fdd3f4329f6cec8e6cb73c0a1c3ad7d74f2e4b | https://maven.mozilla.org/maven2/org/mozilla/components/browser-icons/63.0.… +f079a8f8179892e92c0ab9ebad70854c178b9443dc41c3b9d7a8ed15b4326915 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-icons/63.0.… +fd8d45faece4ab36caaf2ef71b8fe49e3b08fcc161454a372ee07654dcbd34a8 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-menu/63.0.1… +bbae1cd9e4d2cab1366807b0ad692ca050ccad540091e0369cc56c4ab29548a7 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-menu/63.0.1… +ba2b1b5e11745a3eaacd891e33cfeed015d9d5292d44e8f515b2fa7f056c4115 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-menu2/63.0.… +38c6103adc9a237aac1ec41a4da38c1995f74c4d75fb9a30c010470e079db4e0 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-menu2/63.0.… +b3a1aa4fdd4b235548a4984b8a5283224b20687680a16a4a877bfaa106d3b8ca | https://maven.mozilla.org/maven2/org/mozilla/components/browser-search/63.0… +1a6c6d11aa97dc5f73465bdfd6bfa538a935d805d9a368bfa0323ad555a4be55 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-search/63.0… +6041603cd7410c6defc967fb218546b4b6d3ce59054e9ceed3ee5ddce8381b66 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-session/63.… +720c6351992ce3b73716d75d7f715c07363c84462f7dc3f56928fd63dee5cb4e | https://maven.mozilla.org/maven2/org/mozilla/components/browser-session/63.… +06407c0cfae8b787355297dbb1d6d41a3ca072a6ec76b1bb8183f0a07aa20b09 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-state/63.0.… +4ba74c4e43c7fd64b351da8ff69181688dc4ff27975fb05ed549e984115c200f | https://maven.mozilla.org/maven2/org/mozilla/components/browser-state/63.0.… +c65a683fcbe6d1a31863382d5b15ff30ea111fcc845e63367d2daa81368fd103 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-storage-syn… +e25ec9f64e2abeaa80bb80defaea0e177529d1a2a1861cdd4dd3877e3a6464e3 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-storage-syn… +674a6c6d869d9c40f7204480adc30e9856be4064499f9695ecf7e7229cff8b0b | https://maven.mozilla.org/maven2/org/mozilla/components/browser-tabstray/63… +5e9a9cf164ac0a4fed968d0da48292ade694e627f821a86ed96a036d59d94173 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-tabstray/63… +798081badfe0edfe91bf09be1d0f87a073b4b5e05006014cf9be861600cea7da | https://maven.mozilla.org/maven2/org/mozilla/components/browser-thumbnails/… +014ab9aeff9f461ee23f64162fde7138f15093417f9e50d57caec987332ab8b2 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-thumbnails/… +38db992b5b2f08bc3b084ced9af77fa232fe67a7b83da91d1202a56f4213fe4a | https://maven.mozilla.org/maven2/org/mozilla/components/browser-toolbar/63.… +090c9c27556f563e3c27c8276bd6b1ef0b7d04c10f96db2fe5293bc2c32280a5 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-toolbar/63.… +c09772c9db564df7cd0d6dbadd4daf8cb5181a807ad638cecd34062fd55c1bc6 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-awesomebar/… +31b4c78684b3da64a8e95408e37d7865b4d56e2d44e13b690d0e2bd4d41421de | https://maven.mozilla.org/maven2/org/mozilla/components/concept-awesomebar/… +bed8f538df3df9a61b38077b1a0bc7855c12b11d449a981769b7d7d34d3a2be9 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-base/63.0.1… +ee6523490cf4bab174675acf96630c8a6c937e46e1470ae705e31f0b33842a86 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-base/63.0.1… +ab775608d9b7ae7d041140341f1c2ebe343b64b178450b139da5c29b8f8d52fd | https://maven.mozilla.org/maven2/org/mozilla/components/concept-engine/63.0… +ff3af64cc588a1d7f15fc5b8892d8aee4a37824796fe6b2e9230dbb5d6e6cd6a | https://maven.mozilla.org/maven2/org/mozilla/components/concept-engine/63.0… +685e89d39c88c93e22d873667fbfc182873d171ab03ae285565867ba33961227 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-fetch/63.0.… +093365b38bf29f72ef3189d73094910c85e799c34bfad77d9651e9eb36ff5274 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-fetch/63.0.… +e9b778eb8417871e1ba8ac7ed81299a640b0100f646ee60171d3d57c32d6ddb2 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-menu/63.0.1… +6427b9360d88ea09e9b22a74376ecf7271c17176b6e8c532a900879a4a57a4d4 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-menu/63.0.1… +834ade77fd0fa0f314317ea9b78fe154143a98ef3b106cd7f363d9bf24b9929b | https://maven.mozilla.org/maven2/org/mozilla/components/concept-push/63.0.1… +e36390e5ebd02d2b24b661c7f461035946a6076cb8036e624d9d66fe0bca0b11 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-push/63.0.1… +cf426a1ee8adf7b0f2ebc718465a3e472286dd5db738b0ca26eed426a4024941 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-storage/63.… +d65056ab7f74f0ba47b264bca66f7502686fff86080f64b01c09e870997497ad | https://maven.mozilla.org/maven2/org/mozilla/components/concept-storage/63.… +4d280b735359a700b811f7a67abaff01711f41ea71ad29293c1c2f5dcae32e2f | https://maven.mozilla.org/maven2/org/mozilla/components/concept-sync/63.0.1… +c750a18917a9e62b0eb28b0c5296dfa4dcb18c7bdcdc9f76fbb3e7ff3e4bd60f | https://maven.mozilla.org/maven2/org/mozilla/components/concept-sync/63.0.1… +1ef9759642b7ce7554e742a53b2806f55be71963322434d3a6d1e963eacf9319 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-tabstray/63… +9ffe864e99fa6f402d5ff95982d17698835d87fd78ad6b7fcd82342c4ceccc34 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-tabstray/63… +2ee2349b44bd1db87ce3625b681d5f0df911824204dd232dec1d04c8449a877f | https://maven.mozilla.org/maven2/org/mozilla/components/concept-toolbar/63.… +41263247135e41c856ef97aeaf7a8a8b40b7fc0118d50603cf57662f5c05d8f9 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-toolbar/63.… +0793a76baad1732d9e9ecb457f219ce74c7c609c88146955e6514c1ac836d7fa | https://maven.mozilla.org/maven2/org/mozilla/components/feature-accounts-pu… +4f2d4f045c1ec28c2077189f24f31c53017d7f14e66fd49cfbb982b6931397c7 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-accounts-pu… +de9ffca0cd704855729d91f618123f790992c33ed1e0c53dc83fc1fe2f3ae378 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-accounts/63… +e0b077d4cf67cd5a0b2ecc38a50a2c682e469bca7f2f1aaccae60013cf5def61 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-accounts/63… +9521d21c2f419f67dc65f825432da1f2ecb40d11e680af9661b83ff89d404397 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-addons/63.0… +23109adcd1aaac6c4d86025c5e26080329f109d5b42e674c16c811c2be3bf3ad | https://maven.mozilla.org/maven2/org/mozilla/components/feature-addons/63.0… +dfb9948da30dab478bdac44ee66dedc817eee4a2f41f353a282cf93a5d9ea99b | https://maven.mozilla.org/maven2/org/mozilla/components/feature-app-links/6… +58fdef65d9286baa078950643b03e0f29871df19e1f15f9c0eec92ad2a4c06d7 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-app-links/6… +c95cea80901b39cea54cc1dd3766c2c5a546655f3852c20a96e075a518ed8c77 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-awesomebar/… +edd8f83479c55304052cf585d1072f2f40298779f61b938e6c4cfd110bdf75f2 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-awesomebar/… +c9121296918e58c61b69c18165844191d2b7c5d2e9f0e8c2e590b8e59731f107 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-contextmenu… +83539d009a9718bc5e120a740336b293e961896d52c7caa58aea18228f2b4717 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-contextmenu… +d7e014f9daeac48f913711043c52311984c218310d9fc46dbad5d1ad5217ae75 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-customtabs/… +abadf0c0406a12b36ca58b4616dd28943ed9a0b7502101b610516b5cb091b925 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-customtabs/… +8551e59c21ede1f827f78b9da94ace51d53e08d9d779bf0623a1898d1f95e95a | https://maven.mozilla.org/maven2/org/mozilla/components/feature-downloads/6… +b285e23660dc5a44da8c81803cc7ba59077eddd33eab00397430a66297e702a2 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-downloads/6… +80c26ccb8e6a1caf138544b889d54eeadb84f8d0a8ac55d6e4732d0442bc902e | https://maven.mozilla.org/maven2/org/mozilla/components/feature-findinpage/… +005d3b476d2edf08398bae18127a6faaa1f1c970f392992257da1ea61324f6cf | https://maven.mozilla.org/maven2/org/mozilla/components/feature-findinpage/… +09adc360f1fbe93c969ddb53ce8020cdffaebf2ae718c49c7410f9cf491aed70 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-intent/63.0… +3fccb619771f8229423589f2ed0d60604aa1838f81a6ba858fae1e90f4de6160 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-intent/63.0… +f079f3d751d3b0d66ee3916a9ac504b97cc6c54e0ea986ec0155cafb5d822ecf | https://maven.mozilla.org/maven2/org/mozilla/components/feature-logins/63.0… +ca86a29d729a2eea83493227921ece4a0939ce603931f8b614541c11ee653ce3 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-logins/63.0… +9d137d683b72406121c5ceb0d19e7981f15d98f701fe5afa5aa4ab12b9cef637 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-media/63.0.… +cdc6c0c3478f2d398ceb6c2cfb1ae3b94dac1306024496e6a79a7fc05c39abd0 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-media/63.0.… +8878d690e1f353eca7f13f15db9a2629c782b8a7e19aad55e98fc4687aed285c | https://maven.mozilla.org/maven2/org/mozilla/components/feature-privatemode… +7c717cae89fe112e99a17dfd97ad64efd0c1749cc9f810ed96e3643187e575b1 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-privatemode… +713e46409b8dd2ef29185bdb325ad3d0e6a9ffd46d3a572f6d43c42a2b584c1f | https://maven.mozilla.org/maven2/org/mozilla/components/feature-prompts/63.… +224dfedfc3b272724cae4b2f5032a7506eaefce1eab4c95bd6c1af23f87065ea | https://maven.mozilla.org/maven2/org/mozilla/components/feature-prompts/63.… +619b2acd091c9e0a7209f84fb0c27e93cfb2b8abdfd1fbf24ca59f0432d8942a | https://maven.mozilla.org/maven2/org/mozilla/components/feature-push/63.0.1… +f722f43686c7ba2e29f3bc915baa26b3bdd174316fe8b23ed8b1fadde0d6e7e7 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-push/63.0.1… +8dac461e536fa0563deeaefd1e80d37d51f3c3f61a5d7883f5f41eba1150bafb | https://maven.mozilla.org/maven2/org/mozilla/components/feature-pwa/63.0.1/… +948678193286d8dd01258e6d5da4e8c39327dfd523bac003900c7b80ee1de3c0 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-pwa/63.0.1/… +e05c2b4231d479f14abd5351176fb89d61620c68c921c796bcb3ae38dfba1f18 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-qr/63.0.1/f… +18c9fcdcbd922a31b115c80e5fe92b5d4c3ca51fa27cf3ac22980a17935cf715 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-qr/63.0.1/f… +2a43de018a3f6bf30bb46c87e0a3edf4d12c5e2757cdf2e50a8afcfcda9ac33c | https://maven.mozilla.org/maven2/org/mozilla/components/feature-readerview/… +913436ab6a47876053b3eecd77b54342def244117c92dfb9c16b06c2de719c0b | https://maven.mozilla.org/maven2/org/mozilla/components/feature-readerview/… +51dc3b1c158818e207f474275578f2115548ec68f881d177fdd5d26df45f84d9 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-recentlyclo… +87922eee91de48fc73e3dd4e853318565dbc3005db109d126bdf39d9145d06b7 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-recentlyclo… +946312f5f93168507d2c719639ee7a967b1f2a6ae6e9f4b0b83a2d4efad6e605 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-search/63.0… +0c9f48556e2ac12813b21031e093370aa4d24c6ca4ae2e68647e3c39ddd05036 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-search/63.0… +99c01f22204b449e2ecb4f7809b7edfd8661bc2efe30be09bb584c5feb27760a | https://maven.mozilla.org/maven2/org/mozilla/components/feature-session/63.… +8e097d49232ba9160d4a12e69fc5c776a0a714a93894228238a7b998b69b3ab1 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-session/63.… +692871cf1d65602814a0372024d1b8e6f1d22e9a86b72e4e0cc13573db42328c | https://maven.mozilla.org/maven2/org/mozilla/components/feature-share/63.0.… +f8871c51887154ad1d460d2f58107fc000db2c757ad1c6ccf911e2e500b9fd89 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-share/63.0.… +afb1c81eecf04069857f0e259810f7edae86c5150e520920ca7f07699384a9c2 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-sitepermiss… +67ea640b0cfa851928df2529232466cf5ad8023ff2ec56fa15e851716ac09d9c | https://maven.mozilla.org/maven2/org/mozilla/components/feature-sitepermiss… +b73ef22574f01ef481dceade81712cab2e56d3cbc09d0246821e5e41e475da66 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-syncedtabs/… +29b584e0b527491f51b34d9fb1c5d4d793e5662ef0c1e3cda2f1620be775061b | https://maven.mozilla.org/maven2/org/mozilla/components/feature-syncedtabs/… +f246ee2e74950e626a19fb95f9643b5d43083bcb203a459e6c8880b63531a7f0 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-tab-collect… +46040ff08a0e454fba66a0b6bdc7e44c756b395856ecf931ece19be047fe75df | https://maven.mozilla.org/maven2/org/mozilla/components/feature-tab-collect… +05d5d4b7b93424922944c58201e37b1d0fdfb59c3322d576c690a6509c9ab508 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-tabs/63.0.1… +969197e286ffd33cfa11b5334f613b036eaefe1bad102be6ac954f4d7431f4d2 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-tabs/63.0.1… +b856b4b014919d45a541e932e74ad5f614fd4bce16b854c15a7936680ec04286 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-toolbar/63.… +4b266baac82c6f69b998939e4856ca62543edd1d16e1fb25f0f9aee3b5905e41 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-toolbar/63.… +5e085ff5d1d752759fb33c9d74509e44f0a0136eec918df7fcb5a4f38ab7d3d3 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-top-sites/6… +3e388e080a7db2592378240c1d4f0040e87b533f286e2857b8baa24eaddefcb4 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-top-sites/6… +18fe05d36d86e945e92eda764d4415c083947c016b3031a97f89e66e2bbb9f7a | https://maven.mozilla.org/maven2/org/mozilla/components/feature-webcompat-r… +a5dc9416e16f5fb73bdcc66b6acbedccc577c063049a41c89db96db30fc830eb | https://maven.mozilla.org/maven2/org/mozilla/components/feature-webcompat-r… +b57537372e2dcbf9485eba1478d08dc2e1dab6da7ef5cd92d5d866e7f1253ca2 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-webcompat/6… +2cea2620db1878dfe3f4be68d85efb170dbba8fee03edc5ebd31b888f8d28720 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-webcompat/6… +478ac72aced73d74a2d496c67880eaf82b02ad2edd5c9204e381a7d7a66bdad3 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-webnotifica… +53d96b655dfe407eab8253ddde2e371c3bece434364706e15048e44a85a5bbfe | https://maven.mozilla.org/maven2/org/mozilla/components/feature-webnotifica… +f49e1fc18428ce672ff14c98b0f0a99f535f1dac06fd2b76ab3d533e9ce47d22 | https://maven.mozilla.org/maven2/org/mozilla/components/lib-crash/63.0.1/li… +91fb9e198d69dc1cdae2d218b972ebb247c158000dfb52809492cc61e162189b | https://maven.mozilla.org/maven2/org/mozilla/components/lib-crash/63.0.1/li… +e835eb35d3e68f41fc4a79b523a6af00771597141bd78927d935c72903a664e7 | https://maven.mozilla.org/maven2/org/mozilla/components/lib-dataprotect/63.… +2ca5f2b8dc209a2c4fad743a2fc1dba78abe2f62a8cfe523bc52ab13450f6f71 | https://maven.mozilla.org/maven2/org/mozilla/components/lib-dataprotect/63.… +d4ff511e2ac82d4c77c71f91ee3f43d553c93729c9bab66504c9da5f1fc3dc97 | https://maven.mozilla.org/maven2/org/mozilla/components/lib-fetch-httpurlco… +de5c7e52eecc2fdcc45a220679397b879abe622d441ed198f39b8af424d5dc1b | https://maven.mozilla.org/maven2/org/mozilla/components/lib-fetch-httpurlco… +c383aa95aeeb5a7f3734b2cfc8023bab19f74eaf13eeadee95c9b21ab057e224 | https://maven.mozilla.org/maven2/org/mozilla/components/lib-publicsuffixlis… +027ed06ab79c9607e357f4ecfd85538a552a4bfa9f0983b1a1c43d81493cceae | https://maven.mozilla.org/maven2/org/mozilla/components/lib-publicsuffixlis… +fb5eecaaf1dfb64da14d4ffd3de7e713dfa702b9539dea54228ea43136a5f3c6 | https://maven.mozilla.org/maven2/org/mozilla/components/lib-push-firebase/6… +34c3fb0b372973a95504a6a1f16d809fe7bb872438049c99c0669cdbb076287c | https://maven.mozilla.org/maven2/org/mozilla/components/lib-push-firebase/6… +0f258d10411b32ccf546850cf2bf09431b7ab14f28aafe8e278fba7147d062f2 | https://maven.mozilla.org/maven2/org/mozilla/components/lib-state/63.0.1/li… +4f7956c385d96df6cf8d0fc5ce68be90e8e0752027b350a162f6cb2ef1aa154b | https://maven.mozilla.org/maven2/org/mozilla/components/lib-state/63.0.1/li… +68a674ded1b29ffbb61b8616c31a981dab92202b6a97a56d2c751a4eaef352bb | https://maven.mozilla.org/maven2/org/mozilla/components/service-digitalasse… +f87321b38769dd1d9211132a51ba8bc6e1c41d40eb5fdbcffe019854678ec31c | https://maven.mozilla.org/maven2/org/mozilla/components/service-digitalasse… +e22536ae6bdd9d02b84b8283cdd2aabb1404a4730bfdf96a7752b775074fb974 | https://maven.mozilla.org/maven2/org/mozilla/components/service-experiments… +120be0bbe305ab213d467fb6d17eddb37bcabc12142d2c94299f3ef952aa1be5 | https://maven.mozilla.org/maven2/org/mozilla/components/service-experiments… +3ee0916dc9076a20048ff184f42380d2cfc6ed55bacc007dc30cb1bfb80a5356 | https://maven.mozilla.org/maven2/org/mozilla/components/service-firefox-acc… +24f07396a41be4cca5946b09c830c74f56c03b7d495162aec5234a860fb9a455 | https://maven.mozilla.org/maven2/org/mozilla/components/service-firefox-acc… +377092988061736b0a6e8ddfd243fb9766598724abe0153767310ad2b0be86f5 | https://maven.mozilla.org/maven2/org/mozilla/components/service-glean/63.0.… +e8b20494cac49e376141358b29ccf63bf68e62346386d39ac8f07d7060b2c353 | https://maven.mozilla.org/maven2/org/mozilla/components/service-glean/63.0.… +c9eb670d9d2fdc96e82b8a2be22e17bdafed5458380a7828d087a95d227507c8 | https://maven.mozilla.org/maven2/org/mozilla/components/service-location/63… +88e96664cb615fe0c85977943a52482f707a6006c4415b99bab3adf6cba6af84 | https://maven.mozilla.org/maven2/org/mozilla/components/service-location/63… +9fc2bb91cc32089f66358a4c2f323528d8bc6830901f813a1fdc85d800601b2c | https://maven.mozilla.org/maven2/org/mozilla/components/service-sync-logins… +7d08a9a97d884194899fd4ed958f82b8f6b48d5a6e1533f851781224cb04d6f6 | https://maven.mozilla.org/maven2/org/mozilla/components/service-sync-logins… +e979fe0107092fbc6bec6052759206a1caf03e0c6f1e426de8f461148873ee00 | https://maven.mozilla.org/maven2/org/mozilla/components/support-base/63.0.1… +c88e73643fa3dde1a89b33b00d5b7abd254c989d4631ea481ee7e20150793cae | https://maven.mozilla.org/maven2/org/mozilla/components/support-base/63.0.1… +7272f578bb978856a612c4fbf1c503d3dc04a63ae45ac026b4c4f5492a70ef53 | https://maven.mozilla.org/maven2/org/mozilla/components/support-images/63.0… +8233651110f0e69913e3cd06b02bf9cdf7737e5a5fe971ddb3a0b09d299da815 | https://maven.mozilla.org/maven2/org/mozilla/components/support-images/63.0… +9eadd1526848b5669c6e00bfc4283eb63c2d2c1179db5c1329cca2a2e227003a | https://maven.mozilla.org/maven2/org/mozilla/components/support-ktx/63.0.1/… +adf84714b2171f998ca913cb6e34f8a4993b7705635181497809719ab5522796 | https://maven.mozilla.org/maven2/org/mozilla/components/support-ktx/63.0.1/… +8b424949d15dcb73c718b9a0c71019ed0b752d5866a2eff25a3cebb5cc95a8a3 | https://maven.mozilla.org/maven2/org/mozilla/components/support-locale/63.0… +759db74befeec1d5abf18bf5b7df1bee81ac651c8ff4a2c8c5a8928f545a21be | https://maven.mozilla.org/maven2/org/mozilla/components/support-locale/63.0… +b9235cc858969662cb1b8b6b6ef8e9918fb39a0eb6f73be5e91cbcd2b550eb32 | https://maven.mozilla.org/maven2/org/mozilla/components/support-migration/6… +02e334321a011394f5b368e7b56c38930d102dd860f8253e133c32d16dff2ddc | https://maven.mozilla.org/maven2/org/mozilla/components/support-migration/6… +8639a7b017f074538e46405e947de42614f512bf154c0e10bb823033a399fec3 | https://maven.mozilla.org/maven2/org/mozilla/components/support-rusthttp/63… +6237e8d2cbb9dbfe8627d2d70926841b05a0b2036fd8188b53a74a3b94cd21f2 | https://maven.mozilla.org/maven2/org/mozilla/components/support-rusthttp/63… +46804b487bf00a7e96fc7cfe0f256caca8844efd4ba442e09202f2ec3f0a1002 | https://maven.mozilla.org/maven2/org/mozilla/components/support-rustlog/63.… +d9961bdbd416ccb842441a981cf8291daca0e1ec58ae7cfbd08046e3a8b2ba96 | https://maven.mozilla.org/maven2/org/mozilla/components/support-rustlog/63.… +73e17b5e48a21d9882ec81e4885dc7681bd942c192f2ccb58856890fa94479e3 | https://maven.mozilla.org/maven2/org/mozilla/components/support-sync-teleme… +ca2896d391ffd8c620526d177142fecd99d307c9a22e6eb682ad19de3e87f970 | https://maven.mozilla.org/maven2/org/mozilla/components/support-sync-teleme… +2221c6d5aefac39176dbc8622f043a3fc3da8d80e25c6d232b1ff949ee8588b4 | https://maven.mozilla.org/maven2/org/mozilla/components/support-test/63.0.1… +87304731b3420e2eae6d92fcdb49c8a17c268df5ad9c793a267843614ce22e75 | https://maven.mozilla.org/maven2/org/mozilla/components/support-test/63.0.1… +93fd44998bfeeab9d7137cb34a50d510876ec8362e988b8a4ddf4e1629a69e71 | https://maven.mozilla.org/maven2/org/mozilla/components/support-utils/63.0.… +4ed07681c1a310a515f8d842bbfa2284a3d079fa14b94577b340555d2c87c55b | https://maven.mozilla.org/maven2/org/mozilla/components/support-utils/63.0.… +5aa43d65d89f547a28d090aa5e625a5ee96a3db6a6f1599680d4de306018d3d0 | https://maven.mozilla.org/maven2/org/mozilla/components/support-webextensio… +b5be44a0a73083ea98ec17ee643f459435450922bdf963a0d490827afcec6fc9 | https://maven.mozilla.org/maven2/org/mozilla/components/support-webextensio… +29cac55daf860aedfe1e65bd1ef4aaba625693e92ea9f07a7ece4aebbd64105a | https://maven.mozilla.org/maven2/org/mozilla/components/tooling-glean-gradl… +60954d1cda8f66024858bb0ff1fd6eae9cd90f2526b8897ccee59044128aa9d3 | https://maven.mozilla.org/maven2/org/mozilla/components/tooling-glean-gradl… +f7c3df3d22d806b190a58c7239114d2fca2740dd7db4cf788be74fbf8c5d5135 | https://maven.mozilla.org/maven2/org/mozilla/components/ui-autocomplete/63.… +a18bf1056df9fc1d854339d6d4f3083d8a3fdf0adc6c68c750f5d28a0ea55a0f | https://maven.mozilla.org/maven2/org/mozilla/components/ui-autocomplete/63.… +7ec7264a35b13382f84d701fab89daace99c6c8157c6fdc6d15da2361fb4f16b | https://maven.mozilla.org/maven2/org/mozilla/components/ui-colors/63.0.1/ui… +cd7919c128fcb33d21aff74e0fee0b618e397d80fb4eead824361d9594b2686b | https://maven.mozilla.org/maven2/org/mozilla/components/ui-colors/63.0.1/ui… +e6905869f068713e39add5e743c7af6ace41ad8041a6ae328dec0fc0f888b039 | https://maven.mozilla.org/maven2/org/mozilla/components/ui-icons/63.0.1/ui-… +f78dc2bf6d1c6cc10bd0b8858106e027fec8ffa1b0abad278fb29c66d7d7fdef | https://maven.mozilla.org/maven2/org/mozilla/components/ui-icons/63.0.1/ui-… +cac7392d6bd136b460f365d392fec55c65ac38de79f2d19c5a79f5926627bf8e | https://maven.mozilla.org/maven2/org/mozilla/components/ui-tabcounter/63.0.… +a1970d8564ded3f1d1021b786dbc9f18519105951a8d016d9f485c0c3f42776a | https://maven.mozilla.org/maven2/org/mozilla/components/ui-tabcounter/63.0.… +ea6635ff2bdbe7943dff10d1f32024ee28ab228fec232e5a9db1846d296fb82d | https://maven.mozilla.org/maven2/org/mozilla/components/ui-widgets/63.0.1/u… +9960b2e95353890be1a4ce95495ee733ea4e3d1bd5ff4790872a8cab2aa4ee5d | https://maven.mozilla.org/maven2/org/mozilla/components/ui-widgets/63.0.1/u… +2a8adfa266cdfc0b48b4fa16d19219352cd77a5a9d655dd567ec4592598d9f3b | https://maven.mozilla.org/maven2/org/mozilla/geckoview/geckoview-beta/83.0.… +c44f2bb3473956d2e673c05d8f2a6a299a8df357c3f9f22e489127488ff5d692 | https://maven.mozilla.org/maven2/org/mozilla/geckoview/geckoview-beta/83.0.… +92ba04c556a1ad2e68c4df484325bb80356cebfb0acd8199e363d8e952b08a8f | https://maven.mozilla.org/maven2/org/mozilla/geckoview/geckoview-nightly/84… +ebdd8cd37e94d73d16bec80e21766c72ad8980449d7033a5dd507dd5ca9a0695 | https://maven.mozilla.org/maven2/org/mozilla/geckoview/geckoview-nightly/84… 5731f31ff90a090745ebaaaf3f07b4f590e230202289bea9a70e92a6d735675a | https://maven.mozilla.org/maven2/org/mozilla/geckoview/geckoview/82.0.20201… 3d741995e49c1979940d09fec6830491a5c1d9e43d4150b86ee4b43c827bc8e6 | https://maven.mozilla.org/maven2/org/mozilla/geckoview/geckoview/82.0.20201… -acfb992486c44ecf3727fac3eb7a4ac69e005e8baae2dd4104208265a947bccd | https://maven.mozilla.org/maven2/org/mozilla/telemetry/glean-forUnitTests/3… -71bf43ad7ea24b261bb1e361c0f1d5642bdc4dab5471ca9628d1b7ad754e84a1 | https://maven.mozilla.org/maven2/org/mozilla/telemetry/glean-forUnitTests/3… -93b2f27c919b07b927d764726eb64350cb7d480bac9485b9192881a9d5d10f30 | https://maven.mozilla.org/maven2/org/mozilla/telemetry/glean-gradle-plugin/… -a84340369fdbb4c38ea0ce2e17ceac1c6a596cebb9818885276eec8b611e4d4b | https://maven.mozilla.org/maven2/org/mozilla/telemetry/glean-gradle-plugin/… -d0e02f22fbd35b15e50e043ca0462fac6b2b78ac4968b324bd1431c8f85878df | https://maven.mozilla.org/maven2/org/mozilla/telemetry/glean/32.4.1/glean-3… -79d0b2e02aa86ef38577edb2befa25280ce58fcbae23a1ffd1db80147510aa86 | https://maven.mozilla.org/maven2/org/mozilla/telemetry/glean/32.4.1/glean-3… +e3b779d5f79c8012d62d3e43bfc2d577ca65439bcf7181c8ec333d0f3fc76890 | https://maven.mozilla.org/maven2/org/mozilla/telemetry/glean-forUnitTests/3… +6e0b82e4ed2fec26de9c9e68d6fa237d716177d9f9e7f6b1213699d7f55e73e6 | https://maven.mozilla.org/maven2/org/mozilla/telemetry/glean-forUnitTests/3… +5eb5d86577ecf64ba66df368c07dde772d1e82da63f25d73e63118d261ca7a7c | https://maven.mozilla.org/maven2/org/mozilla/telemetry/glean-gradle-plugin/… +d1a407ad60d86df547ca4521ed5355e609bbe09f22ef658c89cade0780468994 | https://maven.mozilla.org/maven2/org/mozilla/telemetry/glean-gradle-plugin/… +a1925b30aed9675e339205797eebd0598885cc987fc61890e81f4a2c12dcf6b6 | https://maven.mozilla.org/maven2/org/mozilla/telemetry/glean/33.0.4/glean-3… +477ee8ea2f4bbcf2860553987f3e5fddaac7cfd6bcae7c1bef7a7b29cdc5d9d8 | https://maven.mozilla.org/maven2/org/mozilla/telemetry/glean/33.0.4/glean-3… 470564ff0a452da1c96be4ca3a9cdeceaa2912537ee2a8def486f3b383d43f15 | https://plugins.gradle.org/m2/com/jetbrains/python/envs/com.jetbrains.pytho… 6438812f927b505a4c4ef2703b45433a1b99e45334526bfed25e71e1a79abb14 | https://plugins.gradle.org/m2/gradle/plugin/com/jetbrains/python/gradle-pyt… 317aa4c467a37d5fcab6657c326a4069ea8e8c6dda951ec2091ffb95c596a2a3 | https://plugins.gradle.org/m2/gradle/plugin/com/jetbrains/python/gradle-pyt… @@ -1091,3 +1063,17 @@ aa42cf65e9f7475bc7cb2fa7cb7dbf99938dd47de864bbed68135e5a12d3a482 | https://plugi 74a54eb154e18b54fc69ac03ab8d186f3ba293b976eca8b336566248ea2633b4 | https://plugins.gradle.org/m2/org/gradle/kotlin/kotlin-dsl/org.gradle.kotli… bdce53a751fdb27af6608039df81214ba22d902ed4169540a3daeb5828c99cad | https://plugins.gradle.org/m2/org/gradle/kotlin/plugins/1.3.6/plugins-1.3.6… 785f12a193912d77fe3b8714567ad5f01d727512a47c5a43aef57852cc1bc9e2 | https://plugins.gradle.org/m2/org/gradle/kotlin/plugins/1.3.6/plugins-1.3.6… +30278f88cfefb7bb328bedd73374242f8e3e55211e53884e4820dba271132fab | https://plugins.gradle.org/m2/org/jetbrains/kotlin/kotlin-android-extension… +5d87527b1f65a82d0a6a4f56cceab960522001a0fd010159a723ab897d58da0c | https://plugins.gradle.org/m2/org/jetbrains/kotlin/kotlin-android-extension… +35d8e287a1d74dc55024a42bd788567e1f73e2059eb804319876d652f249ef59 | https://plugins.gradle.org/m2/org/jetbrains/kotlin/kotlin-annotation-proces… +2d97af231b25d4f463438a66c7c368a8e395e49ebb623b595ca860cef917334a | https://plugins.gradle.org/m2/org/jetbrains/kotlin/kotlin-annotation-proces… +dc0d14042176647d0bde5954aba8a435f6a8857f9648bbc454b94366bc1cff06 | https://plugins.gradle.org/m2/org/jetbrains/kotlin/kotlin-build-common/1.3.… +5a6bb0d142ed04c1df96200c35bb72bc63c3ae7ea6c876834f37d83938f1e3d4 | https://plugins.gradle.org/m2/org/jetbrains/kotlin/kotlin-build-common/1.3.… +a2d8622ef0e2877577e368ec3a2ffbe7978b4512aab456d0db6427d9fae39d47 | https://plugins.gradle.org/m2/org/jetbrains/kotlin/kotlin-compiler-runner/1… +6816c427914a4e4ead92300c0b643339b07e7cbb3355d48d5932dbcdaac7d058 | https://plugins.gradle.org/m2/org/jetbrains/kotlin/kotlin-compiler-runner/1… +8f3ef9192e17768cd4e1f3c1f1c225ebd3b500a67ad05a735b31aa16e01c181c | https://plugins.gradle.org/m2/org/jetbrains/kotlin/kotlin-daemon-client/1.3… +215e6f1bb1980a8bdbef9c155557d17e5a16fbae84d5cae5bf2fd20b86b87d2b | https://plugins.gradle.org/m2/org/jetbrains/kotlin/kotlin-daemon-client/1.3… +b914cbcd8e55e76f221cc863912c38b1fe6ce56800300c147f85410aaa8789ab | https://plugins.gradle.org/m2/org/jetbrains/kotlin/kotlin-gradle-plugin/1.3… +8ec81474695b94779488b99183955cf0e1f50fe4d048af920b756ca71b72ac90 | https://plugins.gradle.org/m2/org/jetbrains/kotlin/kotlin-gradle-plugin/1.3… +3825cbc39ac9b557bf11ed52ed8552200831004a60e845eba61c77ba972a2d9f | https://plugins.gradle.org/m2/org/jetbrains/kotlin/kotlin-util-klib/1.3.72/… +0e10935a94077c217ec5107b451c0859e89a27f67fd09543bd044c798cb154cf | https://plugins.gradle.org/m2/org/jetbrains/kotlin/kotlin-util-klib/1.3.72/…
1 0
0 0
[Git][tpo/applications/fenix][tor-browser-83.1.0-10.0-1] 52 commits: Bug #40002: Add GitLab CI
by Matthew Finkel 26 Nov '20

26 Nov '20
Matthew Finkel pushed to branch tor-browser-83.1.0-10.0-1 at The Tor Project / Applications / fenix Commits: 451fdade by Matthew Finkel at 2020-11-24T03:52:23+00:00 Bug #40002: Add GitLab CI - - - - - 0e67d03b by Matthew Finkel at 2020-11-24T03:52:23+00:00 Bug 40020: Change applicationId - - - - - 36b9b6f8 by Matthew Finkel at 2020-11-24T03:52:23+00:00 Bug 40020: Change app name - - - - - b00ec03a by Matthew Finkel at 2020-11-24T03:52:23+00:00 Bug 40020: Change deeplink scheme - - - - - c803dac5 by Matthew Finkel at 2020-11-24T03:52:23+00:00 Bug 33594: Disable data collection by default (Glean) - - - - - a28f50b2 by Matthew Finkel at 2020-11-24T03:52:23+00:00 Bug 40019: Adjust is disabled on Release when data collection is disabled - - - - - 8bd563d9 by Matthew Finkel at 2020-11-24T03:52:23+00:00 Bug 34338: Disable the crash reporter - - - - - 439be08e by Matthew Finkel at 2020-11-24T03:52:23+00:00 Bug 40014: Neuter Google Advertising ID - - - - - db970d8f by Matthew Finkel at 2020-11-24T03:52:23+00:00 Bug 40018: Disable Push service - - - - - 7816bf4b by Alex Catarineu at 2020-11-24T03:52:23+00:00 Bug 40001: Start Tor as part of the Fenix initialization - - - - - 7f25b98e by Alex Catarineu at 2020-11-24T03:52:23+00:00 Bug 40030: Install HTTPS Everywhere and NoScript addons on startup HTTPS Everywhere is installed as a builtin extension and NoScript as a regular AMO addon. To avoid unnecessary I/O we only install NoScript the first time, and rely on the browser addon updating mechanism for keeping up with new versions. This is the same behaviour that was implemented in the Fennec-based Tor Browser, where it was installed as a &quot;distribution addon&quot;, which also only occurred once. - - - - - dc9b4259 by Matthew Finkel at 2020-11-24T03:52:23+00:00 Bug 34403: Disable Normal mode by default - - - - - ec668b51 by Matthew Finkel at 2020-11-24T03:52:23+00:00 Bug 40015: Modify Home menu - - - - - b1d3716f by Matthew Finkel at 2020-11-24T03:52:23+00:00 Bug 40016: Hide unwanted Settings - - - - - 6c84dff3 by Matthew Finkel at 2020-11-24T03:52:23+00:00 Bug 40016: Modify Default toolbar menu - - - - - 859de502 by Matthew Finkel at 2020-11-24T03:52:23+00:00 Bug 40016: Add Donate settings button - - - - - a9ab4c36 by Matthew Finkel at 2020-11-24T03:52:23+00:00 Bug 40016: Move Allow Screenshots under Advanced - - - - - 5ea3fd8d by Matthew Finkel at 2020-11-24T03:52:23+00:00 Bug 40016: Don&#39;t install WebCompat webext - - - - - b271b398 by Matthew Finkel at 2020-11-24T03:52:23+00:00 Bug 40016: Don&#39;t onboard Search Suggestions - - - - - 74628201 by Matthew Finkel at 2020-11-24T03:52:23+00:00 Bug 40031: Hide Mozilla-specific items on About page - - - - - f8432694 by Matthew Finkel at 2020-11-24T03:56:07+00:00 Bug 40020: Change App icons - - - - - 4e57d3c5 by Matthew Finkel at 2020-11-24T03:56:07+00:00 Bug 40032: Set usesCleartextTraffic as false - - - - - 49bea73a by Matthew Finkel at 2020-11-24T03:56:07+00:00 Bug 40028: Define bootstrapping events and Quick Start - - - - - 41bc4134 by Matthew Finkel at 2020-11-24T03:56:07+00:00 Bug 40028: Implement Tor Service controller - - - - - d3a12e31 by Matthew Finkel at 2020-11-24T03:56:07+00:00 Bug 40028: Integrate Tor Controller into HomeFragment - - - - - 4d228960 by Matthew Finkel at 2020-11-24T03:56:07+00:00 Bug 40028: Implement Tor connect and logger screens - - - - - 4e785647 by Matthew Finkel at 2020-11-24T03:56:07+00:00 Bug 40028: Implement Tor Onboarding - - - - - 433ba394 by Matthew Finkel at 2020-11-24T03:56:07+00:00 Bug 40028: Implement new home screen - - - - - a67561b3 by Matthew Finkel at 2020-11-24T03:56:07+00:00 Bug 40034: Disable PWA onboading - - - - - 5dc6aff2 by Alexander Færøy at 2020-11-24T03:56:07+00:00 Pin CI builds to runners with 32GB of RAM to avoid OOM conditions. - - - - - 47192189 by Georg Koppen at 2020-11-24T03:56:07+00:00 Bug 40042: Add option do overwrite timestamp in extension version - - - - - 55ed35be by Alex Catarineu at 2020-11-24T03:56:07+00:00 Bug 34378: Port external helper app prompting With the corresponding android-components patch, this allows all `startActivity` that may open external apps to be replaced by `TorUtils.startActivityPrompt`. - - - - - 51bbf9d0 by Georg Koppen at 2020-11-24T03:56:07+00:00 Bug 40059: Use MOZ_BUILD_DATE for versionCode At the same time we adapt MOZ_BUILD_DATE to our needs where it is actually used and not in tor-browser-build. This gives us more flexibility. See: tor-browser-build#40084. - - - - - 08c13061 by Matthew Finkel at 2020-11-24T03:56:07+00:00 Bug 40041: Implement Tor Network Settings - - - - - e00d7ecc by Matthew Finkel at 2020-11-24T03:56:07+00:00 Bug 40041: Integrate Tor Network Settings - - - - - 6c8a30af by Alex Catarineu at 2020-11-24T03:56:07+00:00 Bug 40063: Do not sort search engines alphabetically - - - - - 9432c571 by Matthew Finkel at 2020-11-24T03:56:07+00:00 Bug 40026: Implement Security Level settings - - - - - 88816f58 by Matthew Finkel at 2020-11-24T03:56:07+00:00 Bug 40026: Integrate Security Level settings - - - - - 6776c325 by Matthew Finkel at 2020-11-24T03:56:07+00:00 Bug 40064: Use Gecko Beta for Nightly and Debug variants - - - - - fecb9e99 by Alex Catarineu at 2020-11-24T03:56:07+00:00 Bug 40061: Do not show &quot;Send to device&quot; in sharing menu - - - - - 8a3fa281 by Alex Catarineu at 2020-11-24T03:56:07+00:00 Bug 40058: Hide option for disallowing addon in private mode - - - - - a826b2cd by Georg Koppen at 2020-11-24T03:56:07+00:00 Bug 40067: Fix reproducibility issue in classes2.dex We make sure our MOZ_BUILD_DATE gets used as a source for showing date related information on the Fenix about page. - - - - - 38b09e51 by Matthew Finkel at 2020-11-24T03:56:07+00:00 Bug 40072: Disable Tracking Protection - - - - - 46227efe by Alex Catarineu at 2020-11-24T03:56:07+00:00 Bug 40062: HTTPS Everywhere is not shown as installed Also 40070: Consider storing the list of recommended addons This implements our own AddonsProvider, which loads the list of available addons from assets instead of fetching it from an endpoint. In this list, we replace https-everywhere by our https-everywhere-eff, so that the EFF one is shown as installed in the addons list and the AMO one is not displayed. Also, we hide the uninstall button for builtin addons. - - - - - 308d9816 by Georg Koppen at 2020-11-24T03:56:07+00:00 Bug 40083: Make locale ordering in BuildConfig deterministic - - - - - 15902f89 by Matthew Finkel at 2020-11-24T03:56:07+00:00 Bug 40071: Show only supported locales - - - - - 1e167f60 by Matthew Finkel at 2020-11-24T03:56:07+00:00 Bug 40073: Use correct branding on About page - - - - - d6540ecc by Alex Catarineu at 2020-11-24T03:56:07+00:00 Bug 40088: Use Tor Browser logo in migration screen - - - - - 56258a34 by Alex Catarineu at 2020-11-24T03:56:07+00:00 Bug 40094: Do not use MasterPasswordTipProvider in HomeFragment - - - - - d226992b by Alex Catarineu at 2020-11-24T03:56:07+00:00 Bug 40095: Hide &quot;Sign in to sync&quot; in bookmarks - - - - - ae7a0d03 by Alex Catarineu at 2020-11-24T03:56:07+00:00 Bug 40087: Implement a switch for english locale spoofing - - - - - 653a5fdf by Matthew Finkel at 2020-11-24T03:56:07+00:00 Bug 40098 - Add EOY home screen - - - - - 30 changed files: - + .gitlab-ci.yml - LICENSE - app/build.gradle - app/src/androidTest/java/org/mozilla/fenix/ui/robots/SettingsSubMenuAboutRobot.kt - − app/src/beta/res/drawable/ic_launcher_foreground.xml - app/src/beta/res/mipmap-hdpi/ic_launcher.png - app/src/beta/res/mipmap-mdpi/ic_launcher.png - app/src/beta/res/mipmap-xhdpi/ic_launcher.png - app/src/beta/res/mipmap-xxhdpi/ic_launcher.png - app/src/beta/res/mipmap-xxxhdpi/ic_launcher.png - app/src/beta/res/values/static_strings.xml - app/src/beta/res/xml/shortcuts.xml - − app/src/debug/res/drawable/ic_launcher_foreground.xml - app/src/debug/res/xml/shortcuts.xml - app/src/main/AndroidManifest.xml - + app/src/main/assets/allowed_addons.json - app/src/main/java/org/mozilla/fenix/FeatureFlags.kt - app/src/main/java/org/mozilla/fenix/FenixApplication.kt - app/src/main/java/org/mozilla/fenix/HomeActivity.kt - app/src/main/java/org/mozilla/fenix/addons/InstalledAddonDetailsFragment.kt - app/src/main/java/org/mozilla/fenix/browser/BaseBrowserFragment.kt - app/src/main/java/org/mozilla/fenix/components/Analytics.kt - app/src/main/java/org/mozilla/fenix/components/Components.kt - app/src/main/java/org/mozilla/fenix/components/Core.kt - + app/src/main/java/org/mozilla/fenix/components/TorAddonCollectionProvider.kt - + app/src/main/java/org/mozilla/fenix/components/TorBrowserFeatures.kt - app/src/main/java/org/mozilla/fenix/components/metrics/AdjustMetricsService.kt - app/src/main/java/org/mozilla/fenix/components/metrics/MetricsUtils.kt - app/src/main/java/org/mozilla/fenix/components/searchengine/FenixSearchEngineProvider.kt - app/src/main/java/org/mozilla/fenix/components/toolbar/DefaultToolbarMenu.kt The diff was not included because it is too large. View it on GitLab: https://gitlab.torproject.org/tpo/applications/fenix/-/compare/d999e29d1530… -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/fenix/-/compare/d999e29d1530… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/android-components][android-components-63.0.9-10.0-1] 15 commits: Bug 40005: Modify Default toolbar menu
by Matthew Finkel 26 Nov '20

26 Nov '20
Matthew Finkel pushed to branch android-components-63.0.9-10.0-1 at The Tor Project / Applications / android-components Commits: 75ef0b8d by Matthew Finkel at 2020-11-24T03:58:01+00:00 Bug 40005: Modify Default toolbar menu - - - - - 51e0be44 by Alex Catarineu at 2020-11-24T03:58:01+00:00 Bug 40007: Port external helper app prompting Together with the corresponding fenix patch, this allows all `startActivity` that may open external apps to be replaced by `TorUtils.startActivityPrompt`. - - - - - 56e69c52 by Alex Catarineu at 2020-11-24T03:58:01+00:00 Bug 40002: Ensure system download manager is not used - - - - - 3e7cb157 by Alex Catarineu at 2020-11-24T03:58:01+00:00 Bug 40009: Change the default search engines This matches the search engines from desktop, that is: DDG as the default, then YouTube, Google, DDGOnion, Startpage, Twitter, Wikipedia and Yahoo. - - - - - bd9e4b37 by Matthew Finkel at 2020-11-24T03:58:01+00:00 Bug 40006: Expose Security Level interface - - - - - 596a4879 by Alex Catarineu at 2020-11-24T03:58:01+00:00 Bug 40011: Hide option for disallowing addons in private mode - - - - - 36ade717 by Georg Koppen at 2020-11-24T03:58:01+00:00 Bug 40013: Add option do overwrite timestamp in extension version - - - - - 79bf6d11 by Alex Catarineu at 2020-11-24T03:58:01+00:00 Bug 40015: Port padlock states for .onion services - - - - - cea6ddb7 by Alex Catarineu at 2020-11-24T03:58:01+00:00 Bug 40016: Allow inheriting from AddonCollectionProvider This will allow implementing our own AddonsProvider in fenix. - - - - - b14aa2eb by Alex Catarineu at 2020-11-24T03:58:01+00:00 Bug 40021: Force telemetry=false in Fennec settings migration - - - - - f5183b43 by Alex Catarineu at 2020-11-24T03:58:01+00:00 Bug 40022: Migrate Tor security level from Fennec - - - - - 3b3ec4db by Matthew Finkel at 2020-11-24T03:58:01+00:00 Bug 40020: Disable third-party cookies - - - - - b4267401 by Matthew Finkel at 2020-11-24T03:58:01+00:00 Bug 40023: Stop PrivateNotificationService - - - - - 85761f55 by Matthew Finkel at 2020-11-24T03:58:01+00:00 Bug 40024: Disable tracking protection by default - - - - - 05662a36 by Alex Catarineu at 2020-11-24T03:58:01+00:00 Bug 40019: Expose spoofEnglish pref - - - - - 30 changed files: - build.gradle - components/browser/engine-gecko-beta/src/main/java/mozilla/components/browser/engine/gecko/GeckoEngine.kt - components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/GeckoEngine.kt - components/browser/menu/src/main/java/mozilla/components/browser/menu/WebExtensionBrowserMenu.kt - components/browser/menu/src/main/java/mozilla/components/browser/menu/WebExtensionBrowserMenuBuilder.kt - components/browser/search/src/main/assets/search/list.json - + components/browser/search/src/main/assets/searchplugins/ddg-onion.xml - components/browser/search/src/main/assets/searchplugins/ddg.xml - + components/browser/search/src/main/assets/searchplugins/startpage.xml - + components/browser/search/src/main/assets/searchplugins/yahoo.xml - + components/browser/search/src/main/assets/searchplugins/youtube.xml - components/browser/toolbar/src/main/java/mozilla/components/browser/toolbar/display/DisplayToolbar.kt - components/browser/toolbar/src/main/java/mozilla/components/browser/toolbar/display/SiteSecurityIconView.kt - components/browser/toolbar/src/main/res/drawable/mozac_ic_site_security.xml - components/browser/toolbar/src/main/res/values/attrs_browser_toolbar.xml - components/concept/engine/src/main/java/mozilla/components/concept/engine/EngineSession.kt - components/concept/engine/src/main/java/mozilla/components/concept/engine/Settings.kt - components/concept/toolbar/src/main/java/mozilla/components/concept/toolbar/Toolbar.kt - components/feature/addons/src/main/java/mozilla/components/feature/addons/amo/AddonCollectionProvider.kt - components/feature/addons/src/main/res/layout/mozac_feature_addons_fragment_dialog_addon_installed.xml - components/feature/app-links/build.gradle - components/feature/app-links/src/main/java/mozilla/components/feature/app/links/AppLinksFeature.kt - components/feature/app-links/src/main/java/mozilla/components/feature/app/links/AppLinksUseCases.kt - components/feature/contextmenu/src/main/java/mozilla/components/feature/contextmenu/ContextMenuCandidate.kt - components/feature/downloads/build.gradle - components/feature/downloads/src/main/java/mozilla/components/feature/downloads/AbstractFetchDownloadService.kt - components/feature/downloads/src/main/java/mozilla/components/feature/downloads/DownloadsFeature.kt - components/feature/privatemode/src/main/java/mozilla/components/feature/privatemode/notification/PrivateNotificationFeature.kt - components/feature/toolbar/src/main/java/mozilla/components/feature/toolbar/ToolbarPresenter.kt - components/support/ktx/src/main/java/mozilla/components/support/ktx/android/content/Context.kt The diff was not included because it is too large. View it on GitLab: https://gitlab.torproject.org/tpo/applications/android-components/-/compare… -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/android-components/-/compare… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[tor-browser/tor-browser-83.0-10.0-1] Bug 31607: App menu items stop working on macOS
by sysrqb@torproject.org 26 Nov '20

26 Nov '20
commit 88e972e843414e378dc52e88779488623562fe05 Author: Kathy Brade <brade(a)pearlcrescent.com> Date: Thu Oct 3 10:53:43 2019 -0400 Bug 31607: App menu items stop working on macOS Avoid re-creating the hidden window, since this causes the nsMenuBarX object that is associated with the app menu to be freed (which in turn causes all of the app menu items to stop working). More detail: There should only be one hidden window. XREMain::XRE_mainRun() contains an explicit call to create the hidden window and that is the normal path by which it is created. However, when Tor Launcher's wizard/progress window is opened during startup, a hidden window is created earlier as a side effect of calls to nsAppShellService::GetHiddenWindow(). Then, when XREMain::XRE_mainRun() creates its hidden window, the original one is freed which also causes the app menu's nsMenuBarX object which is associated with that window to be destroyed. When that happens, the menuGroupOwner property within each Cocoa menu items's MenuItemInfo object is cleared. This breaks the link that is necessary for NativeMenuItemTarget's menuItemHit method to dispatch a menu item event. --- xpfe/appshell/nsAppShellService.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/xpfe/appshell/nsAppShellService.cpp b/xpfe/appshell/nsAppShellService.cpp index 2f834508afa8..1983f27d4c8c 100644 --- a/xpfe/appshell/nsAppShellService.cpp +++ b/xpfe/appshell/nsAppShellService.cpp @@ -93,6 +93,10 @@ void nsAppShellService::EnsureHiddenWindow() { NS_IMETHODIMP nsAppShellService::CreateHiddenWindow() { + if (mHiddenWindow) { + return NS_OK; + } + if (!XRE_IsParentProcess()) { return NS_ERROR_NOT_IMPLEMENTED; }
1 0
0 0
[tor-browser/tor-browser-83.0-10.0-1] Bug 27604: Fix addon issues when moving TB directory
by sysrqb@torproject.org 26 Nov '20

26 Nov '20
commit 49e7798186e5e08869392711ff24a90f7f66fe5c Author: Alex Catarineu <acat(a)torproject.org> Date: Wed Oct 30 10:44:48 2019 +0100 Bug 27604: Fix addon issues when moving TB directory --- toolkit/mozapps/extensions/internal/XPIProvider.jsm | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/toolkit/mozapps/extensions/internal/XPIProvider.jsm b/toolkit/mozapps/extensions/internal/XPIProvider.jsm index 00b33160232b..210b548cd0e2 100644 --- a/toolkit/mozapps/extensions/internal/XPIProvider.jsm +++ b/toolkit/mozapps/extensions/internal/XPIProvider.jsm @@ -485,7 +485,7 @@ class XPIState { // Builds prior to be 1512436 did not include the rootURI property. // If we're updating from such a build, add that property now. - if (!("rootURI" in this) && this.file) { + if (this.file) { this.rootURI = getURIForResourceInFile(this.file, "").spec; } @@ -498,7 +498,10 @@ class XPIState { saved.currentModifiedTime != this.lastModifiedTime ) { this.lastModifiedTime = saved.currentModifiedTime; - } else if (saved.currentModifiedTime === null) { + } else if ( + saved.currentModifiedTime === null && + (!this.file || !this.file.exists()) + ) { this.missing = true; } } @@ -1439,6 +1442,7 @@ var XPIStates = { if (oldState[loc.name]) { loc.restore(oldState[loc.name]); + changed = changed || loc.path != oldState[loc.name].path; } changed = changed || loc.changed;
1 0
0 0
[tor-browser/tor-browser-83.0-10.0-1] Bug 32092: Fix Tor Browser Support link in preferences
by sysrqb@torproject.org 26 Nov '20

26 Nov '20
commit e77aaa9178aa45b0a740114562de7f5eb4a6b015 Author: Alex Catarineu <acat(a)torproject.org> Date: Tue Oct 15 22:54:10 2019 +0200 Bug 32092: Fix Tor Browser Support link in preferences --- browser/components/preferences/preferences.js | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/browser/components/preferences/preferences.js b/browser/components/preferences/preferences.js index fcb722eea0b2..9e97ca2a2180 100644 --- a/browser/components/preferences/preferences.js +++ b/browser/components/preferences/preferences.js @@ -166,10 +166,7 @@ function init_all() { gotoPref().then(() => { let helpButton = document.getElementById("helpButton"); - let helpUrl = - Services.urlFormatter.formatURLPref("app.support.baseURL") + - "preferences"; - helpButton.setAttribute("href", helpUrl); + helpButton.setAttribute("href", "https://support.torproject.org/tbb"); document.getElementById("addonsButton").addEventListener("click", e => { if (e.button >= 2) {
1 0
0 0
[tor-browser/tor-browser-83.0-10.0-1] Bug 30237: Add v3 onion services client authentication prompt
by sysrqb@torproject.org 26 Nov '20

26 Nov '20
commit 3635ca2e14ba62b2bd09cabcf55a92bcd01be86b Author: Kathy Brade <brade(a)pearlcrescent.com> Date: Tue Nov 12 16:11:05 2019 -0500 Bug 30237: Add v3 onion services client authentication prompt When Tor informs the browser that client authentication is needed, temporarily load about:blank instead of about:neterror and prompt for the user's key. If a correctly formatted key is entered, use Tor's ONION_CLIENT_AUTH_ADD control port command to add the key (via Torbutton's control port module) and reload the page. If the user cancels the prompt, display the standard about:neterror "Unable to connect" page. This requires a small change to browser/actors/NetErrorChild.jsm to account for the fact that the docShell no longer has the failedChannel information. The failedChannel is used to extract TLS-related error info, which is not applicable in the case of a canceled .onion authentication prompt. Add a leaveOpen option to PopupNotifications.show so we can display error messages within the popup notification doorhanger without closing the prompt. Add support for onion services strings to the TorStrings module. Add support for Tor extended SOCKS errors (Tor proposal 304) to the socket transport and SOCKS layers. Improved display of all of these errors will be implemented as part of bug 30025. Also fixes bug 19757: Add a "Remember this key" checkbox to the client auth prompt. Add an "Onion Services Authentication" section within the about:preferences "Privacy & Security section" to allow viewing and removal of v3 onion client auth keys that have been stored on disk. Also fixes bug 19251: use enhanced error pages for onion service errors. --- browser/actors/NetErrorChild.jsm | 7 + browser/base/content/aboutNetError.js | 10 +- browser/base/content/aboutNetError.xhtml | 1 + browser/base/content/browser.js | 10 + browser/base/content/browser.xhtml | 3 + browser/base/content/tab-content.js | 5 + browser/components/moz.build | 1 + .../content/authNotificationIcon.inc.xhtml | 6 + .../onionservices/content/authPopup.inc.xhtml | 16 ++ .../onionservices/content/authPreferences.css | 20 ++ .../content/authPreferences.inc.xhtml | 19 ++ .../onionservices/content/authPreferences.js | 66 +++++ .../components/onionservices/content/authPrompt.js | 316 +++++++++++++++++++++ .../components/onionservices/content/authUtil.jsm | 47 +++ .../onionservices/content/netError/browser.svg | 3 + .../onionservices/content/netError/network.svg | 3 + .../content/netError/onionNetError.css | 65 +++++ .../content/netError/onionNetError.js | 244 ++++++++++++++++ .../onionservices/content/netError/onionsite.svg | 7 + .../onionservices/content/onionservices.css | 69 +++++ .../onionservices/content/savedKeysDialog.js | 259 +++++++++++++++++ .../onionservices/content/savedKeysDialog.xhtml | 42 +++ browser/components/onionservices/jar.mn | 9 + browser/components/onionservices/moz.build | 1 + browser/components/preferences/preferences.xhtml | 1 + browser/components/preferences/privacy.inc.xhtml | 2 + browser/components/preferences/privacy.js | 7 + browser/themes/shared/notification-icons.inc.css | 3 + docshell/base/nsDocShell.cpp | 81 +++++- dom/ipc/BrowserParent.cpp | 21 ++ dom/ipc/BrowserParent.h | 3 + dom/ipc/PBrowser.ipdl | 9 + js/xpconnect/src/xpc.msg | 10 + netwerk/base/nsSocketTransport2.cpp | 6 + netwerk/socket/nsSOCKSIOLayer.cpp | 49 ++++ toolkit/modules/PopupNotifications.jsm | 6 + toolkit/modules/RemotePageAccessManager.jsm | 1 + .../lib/environments/frame-script.js | 1 + xpcom/base/ErrorList.py | 22 ++ 39 files changed, 1449 insertions(+), 2 deletions(-) diff --git a/browser/actors/NetErrorChild.jsm b/browser/actors/NetErrorChild.jsm index eea7ddd0cf97..58bab60c36f7 100644 --- a/browser/actors/NetErrorChild.jsm +++ b/browser/actors/NetErrorChild.jsm @@ -13,6 +13,8 @@ const { RemotePageChild } = ChromeUtils.import( "resource://gre/actors/RemotePageChild.jsm" ); +const { TorStrings } = ChromeUtils.import("resource:///modules/TorStrings.jsm"); + XPCOMUtils.defineLazyServiceGetter( this, "gSerializationHelper", @@ -30,6 +32,7 @@ class NetErrorChild extends RemotePageChild { "RPMAddToHistogram", "RPMRecordTelemetryEvent", "RPMGetHttpResponseHeader", + "RPMGetTorStrings", ]; this.exportFunctions(exportableFunctions); } @@ -103,4 +106,8 @@ class NetErrorChild extends RemotePageChild { return ""; } + + RPMGetTorStrings() { + return Cu.cloneInto(TorStrings.onionServices, this.contentWindow); + } } diff --git a/browser/base/content/aboutNetError.js b/browser/base/content/aboutNetError.js index b54038018680..a2eafc4d6a79 100644 --- a/browser/base/content/aboutNetError.js +++ b/browser/base/content/aboutNetError.js @@ -3,6 +3,7 @@ * You can obtain one at http://mozilla.org/MPL/2.0/. */ /* eslint-env mozilla/frame-script */ +/* import-globals-from ../../components/onionservices/content/netError/onionNetError.js */ const formatter = new Intl.DateTimeFormat("default"); @@ -280,7 +281,10 @@ function initPage() { errDesc = document.getElementById("ed_generic"); } - setErrorPageStrings(err); + const isOnionError = err.startsWith("onionServices."); + if (!isOnionError) { + setErrorPageStrings(err); + } var sd = document.getElementById("errorShortDescText"); if (sd) { @@ -433,6 +437,10 @@ function initPage() { span.textContent = document.location.hostname; } } + + if (isOnionError) { + OnionServicesAboutNetError.initPage(document); + } } function setupErrorUI() { diff --git a/browser/base/content/aboutNetError.xhtml b/browser/base/content/aboutNetError.xhtml index bffb6bea4e29..bf9a54f1c8eb 100644 --- a/browser/base/content/aboutNetError.xhtml +++ b/browser/base/content/aboutNetError.xhtml @@ -215,6 +215,7 @@ </div> </div> </body> + <script src="chrome://browser/content/onionservices/netError/onionNetError.js"/> <script src="chrome://browser/content/aboutNetErrorCodes.js"/> <script src="chrome://browser/content/aboutNetError.js"/> </html> diff --git a/browser/base/content/browser.js b/browser/base/content/browser.js index 5203a6179f55..d0637a076b2d 100644 --- a/browser/base/content/browser.js +++ b/browser/base/content/browser.js @@ -220,6 +220,11 @@ XPCOMUtils.defineLazyScriptGetter( ["SecurityLevelButton"], "chrome://browser/content/securitylevel/securityLevel.js" ); +XPCOMUtils.defineLazyScriptGetter( + this, + ["OnionAuthPrompt"], + "chrome://browser/content/onionservices/authPrompt.js" +); XPCOMUtils.defineLazyScriptGetter( this, "gEditItemOverlay", @@ -1859,6 +1864,9 @@ var gBrowserInit = { // Init the SecuritySettingsButton SecurityLevelButton.init(); + // Init the OnionAuthPrompt + OnionAuthPrompt.init(); + // Certain kinds of automigration rely on this notification to complete // their tasks BEFORE the browser window is shown. SessionStore uses it to // restore tabs into windows AFTER important parts like gMultiProcessBrowser @@ -2543,6 +2551,8 @@ var gBrowserInit = { SecurityLevelButton.uninit(); + OnionAuthPrompt.uninit(); + gAccessibilityServiceIndicator.uninit(); if (gToolbarKeyNavEnabled) { diff --git a/browser/base/content/browser.xhtml b/browser/base/content/browser.xhtml index 95cbd4e96ddc..3b533b9fb3d9 100644 --- a/browser/base/content/browser.xhtml +++ b/browser/base/content/browser.xhtml @@ -33,6 +33,7 @@ <?xml-stylesheet href="chrome://browser/skin/places/editBookmark.css" type="text/css"?> <?xml-stylesheet href="chrome://torbutton/skin/tor-circuit-display.css" type="text/css"?> <?xml-stylesheet href="chrome://torbutton/skin/torbutton.css" type="text/css"?> +<?xml-stylesheet href="chrome://browser/content/onionservices/onionservices.css" type="text/css"?> # All DTD information is stored in a separate file so that it can be shared by # hiddenWindowMac.xhtml. @@ -647,6 +648,7 @@ #include ../../components/downloads/content/downloadsPanel.inc.xhtml #include ../../../devtools/startup/enableDevToolsPopup.inc.xhtml #include ../../components/securitylevel/content/securityLevelPanel.inc.xhtml +#include ../../components/onionservices/content/authPopup.inc.xhtml #include browser-allTabsMenu.inc.xhtml <hbox id="downloads-animation-container"> @@ -1832,6 +1834,7 @@ data-l10n-id="urlbar-indexed-db-notification-anchor"/> <image id="password-notification-icon" class="notification-anchor-icon login-icon" role="button" data-l10n-id="urlbar-password-notification-anchor"/> +#include ../../components/onionservices/content/authNotificationIcon.inc.xhtml <stack id="plugins-notification-icon" class="notification-anchor-icon" role="button" align="center" data-l10n-id="urlbar-plugins-notification-anchor"> <image class="plugin-icon" /> <image id="plugin-icon-badge" /> diff --git a/browser/base/content/tab-content.js b/browser/base/content/tab-content.js index 1a01d4a2ded9..79fd7f39243d 100644 --- a/browser/base/content/tab-content.js +++ b/browser/base/content/tab-content.js @@ -19,6 +19,9 @@ ChromeUtils.defineModuleGetter( "BrowserUtils", "resource://gre/modules/BrowserUtils.jsm" ); +var { OnionAuthUtil } = ChromeUtils.import( + "chrome://browser/content/onionservices/authUtil.jsm" +); // BrowserChildGlobal var global = this; @@ -73,5 +76,7 @@ if (Services.appinfo.processType == Services.appinfo.PROCESS_TYPE_CONTENT) { Services.obs.notifyObservers(this, "tab-content-frameloader-created"); +OnionAuthUtil.addCancelMessageListener(this, docShell); + // This is a temporary hack to prevent regressions (bug 1471327). void content; diff --git a/browser/components/moz.build b/browser/components/moz.build index 8f4ba1aba34b..3dbd70cd9483 100644 --- a/browser/components/moz.build +++ b/browser/components/moz.build @@ -40,6 +40,7 @@ DIRS += [ 'fxmonitor', 'migration', 'newtab', + 'onionservices', 'originattributes', 'ion', 'places', diff --git a/browser/components/onionservices/content/authNotificationIcon.inc.xhtml b/browser/components/onionservices/content/authNotificationIcon.inc.xhtml new file mode 100644 index 000000000000..91274d612739 --- /dev/null +++ b/browser/components/onionservices/content/authNotificationIcon.inc.xhtml @@ -0,0 +1,6 @@ +# Copyright (c) 2020, The Tor Project, Inc. + +<image id="tor-clientauth-notification-icon" + class="notification-anchor-icon tor-clientauth-icon" + role="button" + tooltiptext="&torbutton.onionServices.authPrompt.tooltip;"/> diff --git a/browser/components/onionservices/content/authPopup.inc.xhtml b/browser/components/onionservices/content/authPopup.inc.xhtml new file mode 100644 index 000000000000..bd0ec3aa0b00 --- /dev/null +++ b/browser/components/onionservices/content/authPopup.inc.xhtml @@ -0,0 +1,16 @@ +# Copyright (c) 2020, The Tor Project, Inc. + +<popupnotification id="tor-clientauth-notification" hidden="true"> + <popupnotificationcontent orient="vertical"> + <description id="tor-clientauth-notification-desc"/> + <label id="tor-clientauth-notification-learnmore" + class="text-link popup-notification-learnmore-link" + is="text-link"/> + <html:div> + <html:input id="tor-clientauth-notification-key" type="password"/> + <html:div id="tor-clientauth-warning"/> + <checkbox id="tor-clientauth-persistkey-checkbox" + label="&torbutton.onionServices.authPrompt.persistCheckboxLabel;"/> + </html:div> + </popupnotificationcontent> +</popupnotification> diff --git a/browser/components/onionservices/content/authPreferences.css b/browser/components/onionservices/content/authPreferences.css new file mode 100644 index 000000000000..b3fb79b26ddc --- /dev/null +++ b/browser/components/onionservices/content/authPreferences.css @@ -0,0 +1,20 @@ +/* Copyright (c) 2020, The Tor Project, Inc. */ + +#torOnionServiceKeys-overview-container { + margin-right: 30px; +} + +#onionservices-savedkeys-tree treechildren::-moz-tree-cell-text { + font-size: 80%; +} + +#onionservices-savedkeys-errorContainer { + margin-top: 4px; + min-height: 3em; +} + +#onionservices-savedkeys-errorIcon { + margin-right: 4px; + list-style-image: url("chrome://browser/skin/warning.svg"); + visibility: hidden; +} diff --git a/browser/components/onionservices/content/authPreferences.inc.xhtml b/browser/components/onionservices/content/authPreferences.inc.xhtml new file mode 100644 index 000000000000..f69c9dde66a2 --- /dev/null +++ b/browser/components/onionservices/content/authPreferences.inc.xhtml @@ -0,0 +1,19 @@ +# Copyright (c) 2020, The Tor Project, Inc. + +<groupbox id="torOnionServiceKeys" orient="vertical" + data-category="panePrivacy" hidden="true"> + <label><html:h2 id="torOnionServiceKeys-header"/></label> + <hbox> + <description id="torOnionServiceKeys-overview-container" flex="1"> + <html:span id="torOnionServiceKeys-overview" + class="tail-with-learn-more"/> + <label id="torOnionServiceKeys-learnMore" class="learnMore text-link" + is="text-link"/> + </description> + <vbox align="end"> + <button id="torOnionServiceKeys-savedKeys" + is="highlightable-button" + class="accessory-button"/> + </vbox> + </hbox> +</groupbox> diff --git a/browser/components/onionservices/content/authPreferences.js b/browser/components/onionservices/content/authPreferences.js new file mode 100644 index 000000000000..52f8272020cc --- /dev/null +++ b/browser/components/onionservices/content/authPreferences.js @@ -0,0 +1,66 @@ +// Copyright (c) 2020, The Tor Project, Inc. + +"use strict"; + +ChromeUtils.defineModuleGetter( + this, + "TorStrings", + "resource:///modules/TorStrings.jsm" +); + +/* + Onion Services Client Authentication Preferences Code + + Code to handle init and update of onion services authentication section + in about:preferences#privacy +*/ + +const OnionServicesAuthPreferences = { + selector: { + groupBox: "#torOnionServiceKeys", + header: "#torOnionServiceKeys-header", + overview: "#torOnionServiceKeys-overview", + learnMore: "#torOnionServiceKeys-learnMore", + savedKeysButton: "#torOnionServiceKeys-savedKeys", + }, + + init() { + // populate XUL with localized strings + this._populateXUL(); + }, + + _populateXUL() { + const groupbox = document.querySelector(this.selector.groupBox); + + let elem = groupbox.querySelector(this.selector.header); + elem.textContent = TorStrings.onionServices.authPreferences.header; + + elem = groupbox.querySelector(this.selector.overview); + elem.textContent = TorStrings.onionServices.authPreferences.overview; + + elem = groupbox.querySelector(this.selector.learnMore); + elem.setAttribute("value", TorStrings.onionServices.learnMore); + elem.setAttribute("href", TorStrings.onionServices.learnMoreURL); + + elem = groupbox.querySelector(this.selector.savedKeysButton); + elem.setAttribute( + "label", + TorStrings.onionServices.authPreferences.savedKeys + ); + elem.addEventListener("command", () => + OnionServicesAuthPreferences.onViewSavedKeys() + ); + }, + + onViewSavedKeys() { + gSubDialog.open( + "chrome://browser/content/onionservices/savedKeysDialog.xhtml" + ); + }, +}; // OnionServicesAuthPreferences + +Object.defineProperty(this, "OnionServicesAuthPreferences", { + value: OnionServicesAuthPreferences, + enumerable: true, + writable: false, +}); diff --git a/browser/components/onionservices/content/authPrompt.js b/browser/components/onionservices/content/authPrompt.js new file mode 100644 index 000000000000..d4a59ac46487 --- /dev/null +++ b/browser/components/onionservices/content/authPrompt.js @@ -0,0 +1,316 @@ +// Copyright (c) 2020, The Tor Project, Inc. + +"use strict"; + +XPCOMUtils.defineLazyModuleGetters(this, { + OnionAuthUtil: "chrome://browser/content/onionservices/authUtil.jsm", + CommonUtils: "resource://services-common/utils.js", + TorStrings: "resource:///modules/TorStrings.jsm", +}); + +const OnionAuthPrompt = (function() { + // OnionServicesAuthPrompt objects run within the main/chrome process. + // aReason is the topic passed within the observer notification that is + // causing this auth prompt to be displayed. + function OnionServicesAuthPrompt(aBrowser, aFailedURI, aReason, aOnionName) { + this._browser = aBrowser; + this._failedURI = aFailedURI; + this._reasonForPrompt = aReason; + this._onionName = aOnionName; + } + + OnionServicesAuthPrompt.prototype = { + show(aWarningMessage) { + let mainAction = { + label: TorStrings.onionServices.authPrompt.done, + accessKey: TorStrings.onionServices.authPrompt.doneAccessKey, + leaveOpen: true, // Callback is responsible for closing the notification. + callback: this._onDone.bind(this), + }; + + let dialogBundle = Services.strings.createBundle( + "chrome://global/locale/dialog.properties"); + + let cancelAccessKey = dialogBundle.GetStringFromName("accesskey-cancel"); + if (!cancelAccessKey) + cancelAccessKey = "c"; // required by PopupNotifications.show() + + let cancelAction = { + label: dialogBundle.GetStringFromName("button-cancel"), + accessKey: cancelAccessKey, + callback: this._onCancel.bind(this), + }; + + let _this = this; + let options = { + autofocus: true, + hideClose: true, + persistent: true, + removeOnDismissal: false, + eventCallback(aTopic) { + if (aTopic === "showing") { + _this._onPromptShowing(aWarningMessage); + } else if (aTopic === "shown") { + _this._onPromptShown(); + } else if (aTopic === "removed") { + _this._onPromptRemoved(); + } + } + }; + + this._prompt = PopupNotifications.show(this._browser, + OnionAuthUtil.domid.notification, "", + OnionAuthUtil.domid.anchor, + mainAction, [cancelAction], options); + }, + + _onPromptShowing(aWarningMessage) { + let xulDoc = this._browser.ownerDocument; + let descElem = xulDoc.getElementById(OnionAuthUtil.domid.description); + if (descElem) { + // Handle replacement of the onion name within the localized + // string ourselves so we can show the onion name as bold text. + // We do this by splitting the localized string and creating + // several HTML <span> elements. + while (descElem.firstChild) + descElem.removeChild(descElem.firstChild); + + let fmtString = TorStrings.onionServices.authPrompt.description; + let prefix = ""; + let suffix = ""; + const kToReplace = "%S"; + let idx = fmtString.indexOf(kToReplace); + if (idx < 0) { + prefix = fmtString; + } else { + prefix = fmtString.substring(0, idx); + suffix = fmtString.substring(idx + kToReplace.length); + } + + const kHTMLNS = "http://www.w3.org/1999/xhtml"; + let span = xulDoc.createElementNS(kHTMLNS, "span"); + span.textContent = prefix; + descElem.appendChild(span); + span = xulDoc.createElementNS(kHTMLNS, "span"); + span.id = OnionAuthUtil.domid.onionNameSpan; + span.textContent = this._onionName; + descElem.appendChild(span); + span = xulDoc.createElementNS(kHTMLNS, "span"); + span.textContent = suffix; + descElem.appendChild(span); + } + + // Set "Learn More" label and href. + let learnMoreElem = xulDoc.getElementById(OnionAuthUtil.domid.learnMore); + if (learnMoreElem) { + learnMoreElem.setAttribute("value", TorStrings.onionServices.learnMore); + learnMoreElem.setAttribute("href", TorStrings.onionServices.learnMoreURL); + } + + this._showWarning(aWarningMessage); + let checkboxElem = this._getCheckboxElement(); + if (checkboxElem) { + checkboxElem.checked = false; + } + }, + + _onPromptShown() { + let keyElem = this._getKeyElement(); + if (keyElem) { + keyElem.setAttribute("placeholder", + TorStrings.onionServices.authPrompt.keyPlaceholder); + this._boundOnKeyFieldKeyPress = this._onKeyFieldKeyPress.bind(this); + this._boundOnKeyFieldInput = this._onKeyFieldInput.bind(this); + keyElem.addEventListener("keypress", this._boundOnKeyFieldKeyPress); + keyElem.addEventListener("input", this._boundOnKeyFieldInput); + keyElem.focus(); + } + }, + + _onPromptRemoved() { + if (this._boundOnKeyFieldKeyPress) { + let keyElem = this._getKeyElement(); + if (keyElem) { + keyElem.value = ""; + keyElem.removeEventListener("keypress", + this._boundOnKeyFieldKeyPress); + this._boundOnKeyFieldKeyPress = undefined; + keyElem.removeEventListener("input", this._boundOnKeyFieldInput); + this._boundOnKeyFieldInput = undefined; + } + } + }, + + _onKeyFieldKeyPress(aEvent) { + if (aEvent.keyCode == aEvent.DOM_VK_RETURN) { + this._onDone(); + } else if (aEvent.keyCode == aEvent.DOM_VK_ESCAPE) { + this._prompt.remove(); + this._onCancel(); + } + }, + + _onKeyFieldInput(aEvent) { + this._showWarning(undefined); // Remove the warning. + }, + + _onDone() { + let keyElem = this._getKeyElement(); + if (!keyElem) + return; + + let base64key = this._keyToBase64(keyElem.value); + if (!base64key) { + this._showWarning(TorStrings.onionServices.authPrompt.invalidKey); + return; + } + + this._prompt.remove(); + + // Use Torbutton's controller module to add the private key to Tor. + let controllerFailureMsg = + TorStrings.onionServices.authPrompt.failedToSetKey; + try { + let { controller } = + Cu.import("resource://torbutton/modules/tor-control-port.js", {}); + let torController = controller(aError => { + this.show(controllerFailureMsg); + }); + let onionAddr = this._onionName.toLowerCase().replace(/\.onion$/, ""); + let checkboxElem = this._getCheckboxElement(); + let isPermanent = (checkboxElem && checkboxElem.checked); + torController.onionAuthAdd(onionAddr, base64key, isPermanent) + .then(aResponse => { + // Success! Reload the page. + this._browser.sendMessageToActor( + "Browser:Reload", + {}, + "BrowserTab" + ); + }) + .catch(aError => { + if (aError.torMessage) + this.show(aError.torMessage); + else + this.show(controllerFailureMsg); + }); + } catch (e) { + this.show(controllerFailureMsg); + } + }, + + _onCancel() { + // Arrange for an error page to be displayed. + this._browser.messageManager.sendAsyncMessage( + OnionAuthUtil.message.authPromptCanceled, + {failedURI: this._failedURI.spec, + reasonForPrompt: this._reasonForPrompt}); + }, + + _getKeyElement() { + let xulDoc = this._browser.ownerDocument; + return xulDoc.getElementById(OnionAuthUtil.domid.keyElement); + }, + + _getCheckboxElement() { + let xulDoc = this._browser.ownerDocument; + return xulDoc.getElementById(OnionAuthUtil.domid.checkboxElement); + }, + + _showWarning(aWarningMessage) { + let xulDoc = this._browser.ownerDocument; + let warningElem = + xulDoc.getElementById(OnionAuthUtil.domid.warningElement); + let keyElem = this._getKeyElement(); + if (warningElem) { + if (aWarningMessage) { + warningElem.textContent = aWarningMessage; + warningElem.removeAttribute("hidden"); + if (keyElem) + keyElem.className = "invalid"; + } else { + warningElem.setAttribute("hidden", "true"); + if (keyElem) + keyElem.className = ""; + } + } + }, + + // Returns undefined if the key is the wrong length or format. + _keyToBase64(aKeyString) { + if (!aKeyString) + return undefined; + + let base64key; + if (aKeyString.length == 52) { + // The key is probably base32-encoded. Attempt to decode. + // Although base32 specifies uppercase letters, we accept lowercase + // as well because users may type in lowercase or copy a key out of + // a tor onion-auth file (which uses lowercase). + let rawKey; + try { + rawKey = CommonUtils.decodeBase32(aKeyString.toUpperCase()); + } catch (e) {} + + if (rawKey) try { + base64key = btoa(rawKey); + } catch (e) {} + } else if ((aKeyString.length == 44) && + /^[a-zA-Z0-9+/]*=*$/.test(aKeyString)) { + // The key appears to be a correctly formatted base64 value. If not, + // tor will return an error when we try to add the key via the + // control port. + base64key = aKeyString; + } + + return base64key; + }, + }; + + let retval = { + init() { + Services.obs.addObserver(this, OnionAuthUtil.topic.clientAuthMissing); + Services.obs.addObserver(this, OnionAuthUtil.topic.clientAuthIncorrect); + }, + + uninit() { + Services.obs.removeObserver(this, OnionAuthUtil.topic.clientAuthMissing); + Services.obs.removeObserver(this, OnionAuthUtil.topic.clientAuthIncorrect); + }, + + // aSubject is the DOM Window or browser where the prompt should be shown. + // aData contains the .onion name. + observe(aSubject, aTopic, aData) { + if ((aTopic != OnionAuthUtil.topic.clientAuthMissing) && + (aTopic != OnionAuthUtil.topic.clientAuthIncorrect)) { + return; + } + + let browser; + if (aSubject instanceof Ci.nsIDOMWindow) { + let contentWindow = aSubject.QueryInterface(Ci.nsIDOMWindow); + browser = contentWindow.docShell.chromeEventHandler; + } else { + browser = aSubject.QueryInterface(Ci.nsIBrowser); + } + + if (!gBrowser.browsers.some(aBrowser => aBrowser == browser)) { + return; // This window does not contain the subject browser; ignore. + } + + let failedURI = browser.currentURI; + let authPrompt = new OnionServicesAuthPrompt(browser, failedURI, + aTopic, aData); + authPrompt.show(undefined); + } + }; + + return retval; +})(); /* OnionAuthPrompt */ + + +Object.defineProperty(this, "OnionAuthPrompt", { + value: OnionAuthPrompt, + enumerable: true, + writable: false +}); diff --git a/browser/components/onionservices/content/authUtil.jsm b/browser/components/onionservices/content/authUtil.jsm new file mode 100644 index 000000000000..c9d83774da1f --- /dev/null +++ b/browser/components/onionservices/content/authUtil.jsm @@ -0,0 +1,47 @@ +// Copyright (c) 2020, The Tor Project, Inc. + +"use strict"; + +var EXPORTED_SYMBOLS = [ + "OnionAuthUtil", +]; + +var { Services } = ChromeUtils.import("resource://gre/modules/Services.jsm"); + +const OnionAuthUtil = { + topic: { + clientAuthMissing: "tor-onion-services-clientauth-missing", + clientAuthIncorrect: "tor-onion-services-clientauth-incorrect", + }, + message: { + authPromptCanceled: "Tor:OnionServicesAuthPromptCanceled", + }, + domid: { + anchor: "tor-clientauth-notification-icon", + notification: "tor-clientauth", + description: "tor-clientauth-notification-desc", + learnMore: "tor-clientauth-notification-learnmore", + onionNameSpan: "tor-clientauth-notification-onionname", + keyElement: "tor-clientauth-notification-key", + warningElement: "tor-clientauth-warning", + checkboxElement: "tor-clientauth-persistkey-checkbox", + }, + + addCancelMessageListener(aTabContent, aDocShell) { + aTabContent.addMessageListener(this.message.authPromptCanceled, + (aMessage) => { + // Upon cancellation of the client authentication prompt, display + // the appropriate error page. When calling the docShell + // displayLoadError() function, we pass undefined for the failed + // channel so that displayLoadError() can determine that it should + // not display the client authentication prompt a second time. + let failedURI = Services.io.newURI(aMessage.data.failedURI); + let reasonForPrompt = aMessage.data.reasonForPrompt; + let errorCode = + (reasonForPrompt === this.topic.clientAuthMissing) ? + Cr.NS_ERROR_TOR_ONION_SVC_MISSING_CLIENT_AUTH : + Cr.NS_ERROR_TOR_ONION_SVC_BAD_CLIENT_AUTH; + aDocShell.displayLoadError(errorCode, failedURI, undefined, undefined); + }); + }, +}; diff --git a/browser/components/onionservices/content/netError/browser.svg b/browser/components/onionservices/content/netError/browser.svg new file mode 100644 index 000000000000..b4c433b37bbb --- /dev/null +++ b/browser/components/onionservices/content/netError/browser.svg @@ -0,0 +1,3 @@ +<svg xmlns="http://www.w3.org/2000/svg" width="72" height="65" viewBox="0 0 72 65"> + <path fill="context-fill" fill-opacity="context-fill-opacity" d="M0.0 0.0C0.0 0.0 0.0 65.0 0.0 65.0C0.0 65.0 72.0 65.0 72.0 65.0C72.0 65.0 72.0 0.0 72.0 0.0C72.0 0.0 52.9019692 0.0 52.9019692 0.0C52.9019692 0.0 0.0 0.0 0.0 0.0C0.0 0.0 0.0 0.0 0.0 0.0M65.0 58.0C65.0 58.0 6.0 58.0 6.0 58.0C6.0 58.0 6.0 25.0 6.0 25.0C6.0 25.0 65.0 25.0 65.0 25.0C65.0 25.0 65.0 58.0 65.0 58.0C65.0 58.0 65.0 58.0 65.0 58.0M6.0 10.0C6.0 10.0 10.0 10.0 10.0 10.0C10.0 10.0 10.0 14.0 10.0 14.0C10.0 14.0 6.0 14.0 6.0 14.0C6.0 14.0 6.0 10.0 6.0 10.0C6.0 10.0 6.0 10.0 6.0 10.0M14.0 10.0C14.0 10.0 18.0 10.0 18.0 10.0C18.0 10.0 18.0 14.0 18.0 14.0C18.0 14.0 14.0 14.0 14.0 14.0C14.0 14.0 14.0 10.0 14.0 10.0C14.0 10.0 14.0 10.0 14.0 10.0M22.0 10.0C22.0 10.0 26.0 10.0 26.0 10.0C26.0 10.0 26.0 14.0 26.0 14.0C26.0 14.0 22.0 14.0 22.0 14.0C22.0 14.0 22.0 10.0 22.0 10.0C22.0 10.0 22.0 10.0 22.0 10.0" /> +</svg> diff --git a/browser/components/onionservices/content/netError/network.svg b/browser/components/onionservices/content/netError/network.svg new file mode 100644 index 000000000000..808c53dedd09 --- /dev/null +++ b/browser/components/onionservices/content/netError/network.svg @@ -0,0 +1,3 @@ +<svg xmlns="http://www.w3.org/2000/svg" width="72" height="54" viewBox="0 0 72 54"> + <path fill="context-fill" fill-opacity="context-fill-opacity" d="M14.0487805 54.0C6.28990244 54.0 0.0 47.3306322 0.0 39.1034585C0.0 32.0105634 4.68716488 26.0867675 10.9481707 24.585103C10.6902 23.574652 10.5365854 22.5107596 10.5365854 21.4138156C10.5365854 14.7292347 15.6471278 9.3103384 21.9512195 9.3103384C24.8076351 9.3103384 27.4126741 10.4393194 29.4146341 12.2780088C32.1344254 5.0777841 38.77452 0.0 46.5365854 0.0C56.7201249 0.0 64.9756098 8.7536733 64.9756098 19.5517479C64.9756098 20.7691677 64.8471688 21.9453428 64.6463415 23.1013144C69.0576849 26.0679606 72.0 31.2693674 72.0 37.2413909C72.0 46.5256603 64.9510244 54.0 56.195122 54.0C56.195122 54.0 14.0487805 54.0 14.0487805 54.0C14.0487805 54.0 14.0487805 54.0 14.0487805 54.0" /> +</svg> diff --git a/browser/components/onionservices/content/netError/onionNetError.css b/browser/components/onionservices/content/netError/onionNetError.css new file mode 100644 index 000000000000..58117ab93223 --- /dev/null +++ b/browser/components/onionservices/content/netError/onionNetError.css @@ -0,0 +1,65 @@ +/* Copyright (c) 2020, The Tor Project, Inc. */ + +:root { + --grey-70: #38383d; +} + +#onionErrorDiagramContainer { + margin: 60px auto; + width: 460px; /* 3 columns @ 140px plus 2 column gaps @ 20px */ + display: grid; + grid-row-gap: 15px; + grid-column-gap: 20px; + grid-template-columns: 1fr 1fr 1fr; +} + +#onionErrorDiagramContainer > div { + margin: auto; + position: relative; /* needed to allow overlay of the ok or error icon */ +} + +.onionErrorImage { + width: 72px; + height: 72px; + background-position: center; + background-repeat: no-repeat; + -moz-context-properties: fill; + fill: var(--grey-70); +} + +#onionErrorBrowserImage { + background-image: url("browser.svg"); +} + +#onionErrorNetworkImage { + background-image: url("network.svg"); +} + +#onionErrorOnionSiteImage { + background-image: url("onionsite.svg"); +} + +/* rules to support overlay of the ok or error icon */ +.onionErrorImage[status]::after { + content: " "; + position: absolute; + left: -18px; + top: 18px; + width: 36px; + height: 36px; + -moz-context-properties: fill; + fill: var(--in-content-page-background); + background-color: var(--grey-70); + background-repeat: no-repeat; + background-position: center; + border: 3px solid var(--in-content-page-background); + border-radius: 50%; +} + +.onionErrorImage[status="ok"]::after { + background-image: url("chrome://global/skin/icons/check.svg"); +} + +.onionErrorImage[status="error"]::after { + background-image: url("chrome://browser/skin/stop.svg"); +} diff --git a/browser/components/onionservices/content/netError/onionNetError.js b/browser/components/onionservices/content/netError/onionNetError.js new file mode 100644 index 000000000000..8fabb3f38eb7 --- /dev/null +++ b/browser/components/onionservices/content/netError/onionNetError.js @@ -0,0 +1,244 @@ +// Copyright (c) 2020, The Tor Project, Inc. + +"use strict"; + +/* eslint-env mozilla/frame-script */ + +var OnionServicesAboutNetError = { + _selector: { + header: ".title-text", + longDesc: "#errorLongDesc", + learnMoreContainer: "#learnMoreContainer", + learnMoreLink: "#learnMoreLink", + contentContainer: "#errorLongContent", + tryAgainButtonContainer: "#netErrorButtonContainer", + }, + _status: { + ok: "ok", + error: "error", + }, + + _diagramInfoMap: undefined, + + // Public functions (called from outside this file). + // + // This initPage() function may need to be updated if the structure of + // browser/base/content/aboutNetError.xhtml changes. Specifically, it + // references the following elements: + // query string parameter e + // class title-text + // id errorLongDesc + // id learnMoreContainer + // id learnMoreLink + // id errorLongContent + initPage(aDoc) { + const searchParams = new URLSearchParams(aDoc.documentURI.split("?")[1]); + const err = searchParams.get("e"); + + const errPrefix = "onionServices."; + const errName = err.substring(errPrefix.length); + + this._strings = RPMGetTorStrings(); + + const stringsObj = this._strings[errName]; + if (!stringsObj) { + return; + } + + this._insertStylesheet(aDoc); + + const pageTitle = stringsObj.pageTitle; + const header = stringsObj.header; + const longDescription = stringsObj.longDescription; // optional + const learnMoreURL = stringsObj.learnMoreURL; + + if (pageTitle) { + aDoc.title = pageTitle; + } + + if (header) { + const headerElem = aDoc.querySelector(this._selector.header); + if (headerElem) { + headerElem.textContent = header; + } + } + + const ld = aDoc.querySelector(this._selector.longDesc); + if (ld) { + if (longDescription) { + const hexErr = this._hexErrorFromName(errName); + ld.textContent = longDescription.replace("%S", hexErr); + } else { + // This onion service error does not have a long description. Since + // it is set to a generic error string by the code in + // browser/base/content/aboutNetError.js, hide it here. + ld.style.display = "none"; + } + } + + if (learnMoreURL) { + const lmContainer = aDoc.querySelector(this._selector.learnMoreContainer); + if (lmContainer) { + lmContainer.style.display = "block"; + } + const lmLink = lmContainer.querySelector(this._selector.learnMoreLink); + if (lmLink) { + lmLink.setAttribute("href", learnMoreURL); + } + } + + // Remove the "Try Again" button if the user made a typo in the .onion + // address since it is not useful in that case. + if (errName === "badAddress") { + const tryAgainButton = aDoc.querySelector( + this._selector.tryAgainButtonContainer + ); + if (tryAgainButton) { + tryAgainButton.style.display = "none"; + } + } + + this._insertDiagram(aDoc, errName); + }, // initPage() + + _insertStylesheet(aDoc) { + const url = + "chrome://browser/content/onionservices/netError/onionNetError.css"; + let linkElem = aDoc.createElement("link"); + linkElem.rel = "stylesheet"; + linkElem.href = url; + linkElem.type = "text/css"; + aDoc.head.appendChild(linkElem); + }, + + _insertDiagram(aDoc, aErrorName) { + // The onion error diagram consists of a grid of div elements. + // The first row contains three images (Browser, Network, Onionsite) and + // the second row contains labels for the images that are in the first row. + // The _diagramInfoMap describes for each type of onion service error + // whether a small ok or error status icon is overlaid on top of the main + // Browser/Network/Onionsite images. + if (!this._diagramInfoMap) { + this._diagramInfoMap = new Map(); + this._diagramInfoMap.set("descNotFound", { + browser: this._status.ok, + network: this._status.ok, + onionSite: this._status.error, + }); + this._diagramInfoMap.set("descInvalid", { + browser: this._status.ok, + network: this._status.error, + }); + this._diagramInfoMap.set("introFailed", { + browser: this._status.ok, + network: this._status.error, + }); + this._diagramInfoMap.set("rendezvousFailed", { + browser: this._status.ok, + network: this._status.error, + }); + this._diagramInfoMap.set("clientAuthMissing", { + browser: this._status.error, + }); + this._diagramInfoMap.set("clientAuthIncorrect", { + browser: this._status.error, + }); + this._diagramInfoMap.set("badAddress", { + browser: this._status.error, + }); + this._diagramInfoMap.set("introTimedOut", { + browser: this._status.ok, + network: this._status.error, + }); + } + + const diagramInfo = this._diagramInfoMap.get(aErrorName); + + const container = this._createDiv(aDoc, "onionErrorDiagramContainer"); + const imageClass = "onionErrorImage"; + + const browserImage = this._createDiv( + aDoc, + "onionErrorBrowserImage", + imageClass, + container + ); + if (diagramInfo && diagramInfo.browser) { + browserImage.setAttribute("status", diagramInfo.browser); + } + + const networkImage = this._createDiv( + aDoc, + "onionErrorNetworkImage", + imageClass, + container + ); + if (diagramInfo && diagramInfo.network) { + networkImage.setAttribute("status", diagramInfo.network); + } + + const onionSiteImage = this._createDiv( + aDoc, + "onionErrorOnionSiteImage", + imageClass, + container + ); + if (diagramInfo && diagramInfo.onionSite) { + onionSiteImage.setAttribute("status", diagramInfo.onionSite); + } + + let labelDiv = this._createDiv(aDoc, undefined, undefined, container); + labelDiv.textContent = this._strings.errorPage.browser; + labelDiv = this._createDiv(aDoc, undefined, undefined, container); + labelDiv.textContent = this._strings.errorPage.network; + labelDiv = this._createDiv(aDoc, undefined, undefined, container); + labelDiv.textContent = this._strings.errorPage.onionSite; + + const contentContainer = aDoc.querySelector( + this._selector.contentContainer + ); + if (contentContainer) { + contentContainer.insertBefore(container, contentContainer.firstChild); + } + }, // _insertDiagram() + + _createDiv(aDoc, aID, aClass, aParentElem) { + const div = aDoc.createElement("div"); + if (aID) { + div.id = aID; + } + if (aClass) { + div.setAttribute("class", aClass); + } + if (aParentElem) { + aParentElem.appendChild(div); + } + + return div; + }, + + _hexErrorFromName(aErrorName) { + // We do not have access to the original Tor SOCKS error code here, so + // perform a reverse mapping from the error name. + switch (aErrorName) { + case "descNotFound": + return "0xF0"; + case "descInvalid": + return "0xF1"; + case "introFailed": + return "0xF2"; + case "rendezvousFailed": + return "0xF3"; + case "clientAuthMissing": + return "0xF4"; + case "clientAuthIncorrect": + return "0xF5"; + case "badAddress": + return "0xF6"; + case "introTimedOut": + return "0xF7"; + } + + return ""; + }, +}; diff --git a/browser/components/onionservices/content/netError/onionsite.svg b/browser/components/onionservices/content/netError/onionsite.svg new file mode 100644 index 000000000000..1f2777e6acc7 --- /dev/null +++ b/browser/components/onionservices/content/netError/onionsite.svg @@ -0,0 +1,7 @@ +<svg xmlns="http://www.w3.org/2000/svg" width="70" height="63" viewBox="0 0 70 63"> + <g fill="context-fill" fill-opacity="context-fill-opacity"> + <path d="M64.0 2.0C64.0 2.0 4.0 2.0 4.0 2.0C2.8954305 2.0 2.0 2.81148389 2.0 3.8125C2.0 3.8125 2.0 58.1875 2.0 58.1875C2.0 59.1885161 2.8954305 60.0 4.0 60.0C4.0 60.0 36.0 60.0 36.0 60.0C36.0 60.0 36.0 56.375 36.0 56.375C36.0 56.375 6.0 56.375 6.0 56.375C6.0 56.375 6.0 41.875 6.0 41.875C6.0 41.875 38.0 41.875 38.0 41.875C38.0 41.875 38.0 38.25 38.0 38.25C38.0 38.25 6.0 38.25 6.0 38.25C6.0 38.25 6.0 23.75 6.0 23.75C6.0 23.75 62.0 23.75 62.0 23.75C62.0 23.75 62.0 36.4375 62.0 36.4375C62.0 36.4375 66.0 36.4375 66.0 36.4375C66.0 36.4375 66.0 3.8125 66.0 3.8125C66.0 2.81148389 65.1045695 2.0 64.0 2.0C64.0 2.0 64.0 2.0 64.0 2.0M62.0 20.125C62.0 20.125 6.0 20.125 6.0 20.125C6.0 20.125 6.0 5.625 6.0 5.625C6.0 5.625 62.0 5.625 62.0 5.625C62.0 5.625 62.0 20.125 62.0 20.125C62.0 20.125 62.0 20.125 62.0 20.125" /> + <path d="M24.0 47.0C24.0 47.0 24.0 51.0 24.0 51.0C24.0 51.0 20.0 51.0 20.0 51.0C20.0 51.0 20.0 47.0 20.0 47.0C20.0 47.0 24.0 47.0 24.0 47.0C24.0 47.0 24.0 47.0 24.0 47.0M16.0 47.0C16.0 47.0 16.0 51.0 16.0 51.0C16.0 51.0 12.0 51.0 12.0 51.0C12.0 51.0 12.0 47.0 12.0 47.0C12.0 47.0 16.0 47.0 16.0 47.0C16.0 47.0 16.0 47.0 16.0 47.0M56.0 29.0C56.0 29.0 56.0 33.0 56.0 33.0C56.0 33.0 52.0 33.0 52.0 33.0C52.0 33.0 52.0 29.0 52.0 29.0C52.0 29.0 56.0 29.0 56.0 29.0C56.0 29.0 56.0 29.0 56.0 29.0M48.0 29.0C48.0 29.0 48.0 33.0 48.0 33.0C48.0 33.0 12.0 33.0 12.0 33.0C12.0 33.0 12.0 29.0 12.0 29.0C12.0 29.0 48.0 29.0 48.0 29.0C48.0 29.0 48.0 29.0 48.0 29.0M22.0 11.0C22.0 11.0 22.0 15.0 22.0 15.0C22.0 15.0 10.0 15.0 10.0 15.0C10.0 15.0 10.0 11.0 10.0 11.0C10.0 11.0 22.0 11.0 22.0 11.0C22.0 11.0 22.0 11.0 22.0 11.0M70.0 0.0C70.0 0.0 70.0 36.5 70.0 36.5C70.0 36.5 65.0 36.5 65.0 36.5C65.0 36.5 65.0 4.5 65.0 4.5C65.0 4.5 5.0 4.5 5.0 4.5C5.0 4.5 5.0 58.5 5.0 58.5C5.0 58.5 36.0 58.5 36.0 58.5C36.0 58 .5 36.0 63.0 36.0 63.0C36.0 63.0 0.0 63.0 0.0 63.0C0.0 63.0 0.0 0.0 0.0 0.0C0.0 0.0 70.0 0.0 70.0 0.0C70.0 0.0 70.0 0.0 70.0 0.0M32.0 47.0C32.0 47.0 32.0 51.0 32.0 51.0C32.0 51.0 28.0 51.0 28.0 51.0C28.0 51.0 28.0 47.0 28.0 47.0C28.0 47.0 32.0 47.0 32.0 47.0C32.0 47.0 32.0 47.0 32.0 47.0M54.0 11.0C54.0 11.0 54.0 15.0 54.0 15.0C54.0 15.0 50.0 15.0 50.0 15.0C50.0 15.0 50.0 11.0 50.0 11.0C50.0 11.0 54.0 11.0 54.0 11.0C54.0 11.0 54.0 11.0 54.0 11.0M46.0 11.0C46.0 11.0 46.0 15.0 46.0 15.0C46.0 15.0 42.0 15.0 42.0 15.0C42.0 15.0 42.0 11.0 42.0 11.0C42.0 11.0 46.0 11.0 46.0 11.0C46.0 11.0 46.0 11.0 46.0 11.0M38.0 11.0C38.0 11.0 38.0 15.0 38.0 15.0C38.0 15.0 34.0 15.0 34.0 15.0C34.0 15.0 34.0 11.0 34.0 11.0C34.0 11.0 38.0 11.0 38.0 11.0C38.0 11.0 38.0 11.0 38.0 11.0M30.0 11.0C30.0 11.0 30.0 15.0 30.0 15.0C30.0 15.0 26.0 15.0 26.0 15.0C26.0 15.0 26.0 11.0 26.0 11.0C26.0 11.0 30.0 11.0 30.0 11.0C30.0 11.0 30.0 11.0 30.0 11.0" /> + <path d="M61.0 46.0C61.0 46.0 59.0 46.0 59.0 46.0C59.0 46.0 59.0 40.0 59.0 40.0C59.0 38.8954305 58.1045695 38.0 57.0 38.0C57.0 38.0 49.0 38.0 49.0 38.0C47.8954305 38.0 47.0 38.8954305 47.0 40.0C47.0 40.0 47.0 46.0 47.0 46.0C47.0 46.0 45.0 46.0 45.0 46.0C43.8954305 46.0 43.0 46.8954305 43.0 48.0C43.0 48.0 43.0 60.0 43.0 60.0C43.0 61.1045695 43.8954305 62.0 45.0 62.0C45.0 62.0 61.0 62.0 61.0 62.0C62.1045695 62.0 63.0 61.1045695 63.0 60.0C63.0 60.0 63.0 48.0 63.0 48.0C63.0 46.8954305 62.1045695 46.0 61.0 46.0C61.0 46.0 61.0 46.0 61.0 46.0M51.0 42.0C51.0 42.0 55.0 42.0 55.0 42.0C55.0 42.0 55.0 46.0 55.0 46.0C55.0 46.0 51.0 46.0 51.0 46.0C51.0 46.0 51.0 42.0 51.0 42.0C51.0 42.0 51.0 42.0 51.0 42.0M59.0 58.0C59.0 58.0 47.0 58.0 47.0 58.0C47.0 58.0 47.0 50.0 47.0 50.0C47.0 50.0 59.0 50.0 59.0 50.0C59.0 50.0 59.0 58.0 59.0 58.0C59.0 58.0 59.0 58.0 59.0 58.0" /> + </g> +</svg> diff --git a/browser/components/onionservices/content/onionservices.css b/browser/components/onionservices/content/onionservices.css new file mode 100644 index 000000000000..e2621ec8266d --- /dev/null +++ b/browser/components/onionservices/content/onionservices.css @@ -0,0 +1,69 @@ +/* Copyright (c) 2020, The Tor Project, Inc. */ + +@namespace html url("http://www.w3.org/1999/xhtml"); + +html|*#tor-clientauth-notification-onionname { + font-weight: bold; +} + +html|*#tor-clientauth-notification-key { + box-sizing: border-box; + width: 100%; + margin-top: 15px; + padding: 6px; +} + +/* Start of rules adapted from + * browser/components/newtab/css/activity-stream-mac.css (linux and windows + * use the same rules). + */ +html|*#tor-clientauth-notification-key.invalid { + border: 1px solid #D70022; + box-shadow: 0 0 0 1px #D70022, 0 0 0 4px rgba(215, 0, 34, 0.3); +} + +html|*#tor-clientauth-warning { + display: inline-block; + animation: fade-up-tt 450ms; + background: #D70022; + border-radius: 2px; + color: #FFF; + inset-inline-start: 3px; + padding: 5px 12px; + position: relative; + top: 6px; + z-index: 1; +} + +html|*#tor-clientauth-warning[hidden] { + display: none; +} + +html|*#tor-clientauth-warning::before { + background: #D70022; + bottom: -8px; + content: '.'; + height: 16px; + inset-inline-start: 12px; + position: absolute; + text-indent: -999px; + top: -7px; + transform: rotate(45deg); + white-space: nowrap; + width: 16px; + z-index: -1; +} + +@keyframes fade-up-tt { + 0% { + opacity: 0; + transform: translateY(15px); + } + 100% { + opacity: 1; + transform: translateY(0); + } +} +/* End of rules adapted from + * browser/components/newtab/css/activity-stream-mac.css + */ diff --git a/browser/components/onionservices/content/savedKeysDialog.js b/browser/components/onionservices/content/savedKeysDialog.js new file mode 100644 index 000000000000..b1376bbabe85 --- /dev/null +++ b/browser/components/onionservices/content/savedKeysDialog.js @@ -0,0 +1,259 @@ +// Copyright (c) 2020, The Tor Project, Inc. + +"use strict"; + +ChromeUtils.defineModuleGetter( + this, + "TorStrings", + "resource:///modules/TorStrings.jsm" +); + +ChromeUtils.defineModuleGetter( + this, + "controller", + "resource://torbutton/modules/tor-control-port.js" +); + +var gOnionServicesSavedKeysDialog = { + selector: { + dialog: "#onionservices-savedkeys-dialog", + intro: "#onionservices-savedkeys-intro", + tree: "#onionservices-savedkeys-tree", + onionSiteCol: "#onionservices-savedkeys-siteCol", + onionKeyCol: "#onionservices-savedkeys-keyCol", + errorIcon: "#onionservices-savedkeys-errorIcon", + errorMessage: "#onionservices-savedkeys-errorMessage", + removeButton: "#onionservices-savedkeys-remove", + removeAllButton: "#onionservices-savedkeys-removeall", + }, + + _tree: undefined, + _isBusy: false, // true when loading data, deleting a key, etc. + + // Public functions (called from outside this file). + async deleteSelectedKeys() { + this._setBusyState(true); + + const indexesToDelete = []; + const count = this._tree.view.selection.getRangeCount(); + for (let i = 0; i < count; ++i) { + const minObj = {}; + const maxObj = {}; + this._tree.view.selection.getRangeAt(i, minObj, maxObj); + for (let idx = minObj.value; idx <= maxObj.value; ++idx) { + indexesToDelete.push(idx); + } + } + + if (indexesToDelete.length > 0) { + const controllerFailureMsg = + TorStrings.onionServices.authPreferences.failedToRemoveKey; + try { + const torController = controller(aError => { + this._showError(controllerFailureMsg); + }); + + // Remove in reverse index order to avoid issues caused by index changes. + for (let i = indexesToDelete.length - 1; i >= 0; --i) { + await this._deleteOneKey(torController, indexesToDelete[i]); + } + } catch (e) { + if (e.torMessage) { + this._showError(e.torMessage); + } else { + this._showError(controllerFailureMsg); + } + } + } + + this._setBusyState(false); + }, + + async deleteAllKeys() { + this._tree.view.selection.selectAll(); + await this.deleteSelectedKeys(); + }, + + updateButtonsState() { + const haveSelection = this._tree.view.selection.getRangeCount() > 0; + const dialog = document.querySelector(this.selector.dialog); + const removeSelectedBtn = dialog.querySelector(this.selector.removeButton); + removeSelectedBtn.disabled = this._isBusy || !haveSelection; + const removeAllBtn = dialog.querySelector(this.selector.removeAllButton); + removeAllBtn.disabled = this._isBusy || this.rowCount === 0; + }, + + // Private functions. + _onLoad() { + document.mozSubdialogReady = this._init(); + }, + + async _init() { + await this._populateXUL(); + + window.addEventListener("keypress", this._onWindowKeyPress.bind(this)); + + // We don't use await here because we want _loadSavedKeys() to run + // in the background and not block loading of this dialog. + this._loadSavedKeys(); + }, + + async _populateXUL() { + const dialog = document.querySelector(this.selector.dialog); + const authPrefStrings = TorStrings.onionServices.authPreferences; + dialog.setAttribute("title", authPrefStrings.dialogTitle); + + let elem = dialog.querySelector(this.selector.intro); + elem.textContent = authPrefStrings.dialogIntro; + + elem = dialog.querySelector(this.selector.onionSiteCol); + elem.setAttribute("label", authPrefStrings.onionSite); + + elem = dialog.querySelector(this.selector.onionKeyCol); + elem.setAttribute("label", authPrefStrings.onionKey); + + elem = dialog.querySelector(this.selector.removeButton); + elem.setAttribute("label", authPrefStrings.remove); + + elem = dialog.querySelector(this.selector.removeAllButton); + elem.setAttribute("label", authPrefStrings.removeAll); + + this._tree = dialog.querySelector(this.selector.tree); + }, + + async _loadSavedKeys() { + const controllerFailureMsg = + TorStrings.onionServices.authPreferences.failedToGetKeys; + this._setBusyState(true); + + try { + this._tree.view = this; + + const torController = controller(aError => { + this._showError(controllerFailureMsg); + }); + + const keyInfoList = await torController.onionAuthViewKeys(); + if (keyInfoList) { + // Filter out temporary keys. + this._keyInfoList = keyInfoList.filter(aKeyInfo => { + if (!aKeyInfo.Flags) { + return false; + } + + const flags = aKeyInfo.Flags.split(","); + return flags.includes("Permanent"); + }); + + // Sort by the .onion address. + this._keyInfoList.sort((aObj1, aObj2) => { + const hsAddr1 = aObj1.hsAddress.toLowerCase(); + const hsAddr2 = aObj2.hsAddress.toLowerCase(); + if (hsAddr1 < hsAddr2) { + return -1; + } + return hsAddr1 > hsAddr2 ? 1 : 0; + }); + } + + // Render the tree content. + this._tree.rowCountChanged(0, this.rowCount); + } catch (e) { + if (e.torMessage) { + this._showError(e.torMessage); + } else { + this._showError(controllerFailureMsg); + } + } + + this._setBusyState(false); + }, + + // This method may throw; callers should catch errors. + async _deleteOneKey(aTorController, aIndex) { + const keyInfoObj = this._keyInfoList[aIndex]; + await aTorController.onionAuthRemove(keyInfoObj.hsAddress); + this._tree.view.selection.clearRange(aIndex, aIndex); + this._keyInfoList.splice(aIndex, 1); + this._tree.rowCountChanged(aIndex + 1, -1); + }, + + _setBusyState(aIsBusy) { + this._isBusy = aIsBusy; + this.updateButtonsState(); + }, + + _onWindowKeyPress(event) { + if (event.keyCode === KeyEvent.DOM_VK_ESCAPE) { + window.close(); + } else if (event.keyCode === KeyEvent.DOM_VK_DELETE) { + this.deleteSelectedKeys(); + } + }, + + _showError(aMessage) { + const dialog = document.querySelector(this.selector.dialog); + const errorIcon = dialog.querySelector(this.selector.errorIcon); + errorIcon.style.visibility = aMessage ? "visible" : "hidden"; + const errorDesc = dialog.querySelector(this.selector.errorMessage); + errorDesc.textContent = aMessage ? aMessage : ""; + }, + + // XUL tree widget view implementation. + get rowCount() { + return this._keyInfoList ? this._keyInfoList.length : 0; + }, + + getCellText(aRow, aCol) { + let val = ""; + if (this._keyInfoList && aRow < this._keyInfoList.length) { + const keyInfo = this._keyInfoList[aRow]; + if (aCol.id.endsWith("-siteCol")) { + val = keyInfo.hsAddress; + } else if (aCol.id.endsWith("-keyCol")) { + val = keyInfo.typeAndKey; + // Omit keyType because it is always "x25519". + const idx = val.indexOf(":"); + if (idx > 0) { + val = val.substring(idx + 1); + } + } + } + + return val; + }, + + isSeparator(index) { + return false; + }, + + isSorted() { + return false; + }, + + isContainer(index) { + return false; + }, + + setTree(tree) {}, + + getImageSrc(row, column) {}, + + getCellValue(row, column) {}, + + cycleHeader(column) {}, + + getRowProperties(row) { + return ""; + }, + + getColumnProperties(column) { + return ""; + }, + + getCellProperties(row, column) { + return ""; + }, +}; + +window.addEventListener("load", () => gOnionServicesSavedKeysDialog._onLoad()); diff --git a/browser/components/onionservices/content/savedKeysDialog.xhtml b/browser/components/onionservices/content/savedKeysDialog.xhtml new file mode 100644 index 000000000000..3db9bb05ea82 --- /dev/null +++ b/browser/components/onionservices/content/savedKeysDialog.xhtml @@ -0,0 +1,42 @@ +<?xml version="1.0"?> +<!-- Copyright (c) 2020, The Tor Project, Inc. --> + +<?xml-stylesheet href="chrome://global/skin/" type="text/css"?> +<?xml-stylesheet href="chrome://browser/skin/preferences/preferences.css" type="text/css"?> +<?xml-stylesheet href="chrome://browser/content/onionservices/authPreferences.css" type="text/css"?> + +<window id="onionservices-savedkeys-dialog" + windowtype="OnionServices:SavedKeys" + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" + style="width: 45em;"> + + <script src="chrome://browser/content/onionservices/savedKeysDialog.js"/> + + <vbox id="onionservices-savedkeys" class="contentPane" flex="1"> + <label id="onionservices-savedkeys-intro" + control="onionservices-savedkeys-tree"/> + <separator class="thin"/> + <tree id="onionservices-savedkeys-tree" flex="1" hidecolumnpicker="true" + width="750" + style="height: 20em;" + onselect="gOnionServicesSavedKeysDialog.updateButtonsState();"> + <treecols> + <treecol id="onionservices-savedkeys-siteCol" flex="1" persist="width"/> + <splitter class="tree-splitter"/> + <treecol id="onionservices-savedkeys-keyCol" flex="1" persist="width"/> + </treecols> + <treechildren/> + </tree> + <hbox id="onionservices-savedkeys-errorContainer" align="baseline" flex="1"> + <image id="onionservices-savedkeys-errorIcon"/> + <description id="onionservices-savedkeys-errorMessage" flex="1"/> + </hbox> + <separator class="thin"/> + <hbox id="onionservices-savedkeys-buttons"> + <button id="onionservices-savedkeys-remove" disabled="true" + oncommand="gOnionServicesSavedKeysDialog.deleteSelectedKeys();"/> + <button id="onionservices-savedkeys-removeall" + oncommand="gOnionServicesSavedKeysDialog.deleteAllKeys();"/> + </hbox> + </vbox> +</window> diff --git a/browser/components/onionservices/jar.mn b/browser/components/onionservices/jar.mn new file mode 100644 index 000000000000..9d6ce88d1841 --- /dev/null +++ b/browser/components/onionservices/jar.mn @@ -0,0 +1,9 @@ +browser.jar: + content/browser/onionservices/authPreferences.css (content/authPreferences.css) + content/browser/onionservices/authPreferences.js (content/authPreferences.js) + content/browser/onionservices/authPrompt.js (content/authPrompt.js) + content/browser/onionservices/authUtil.jsm (content/authUtil.jsm) + content/browser/onionservices/netError/ (content/netError/*) + content/browser/onionservices/onionservices.css (content/onionservices.css) + content/browser/onionservices/savedKeysDialog.js (content/savedKeysDialog.js) + content/browser/onionservices/savedKeysDialog.xhtml (content/savedKeysDialog.xhtml) diff --git a/browser/components/onionservices/moz.build b/browser/components/onionservices/moz.build new file mode 100644 index 000000000000..7e103239c8d6 --- /dev/null +++ b/browser/components/onionservices/moz.build @@ -0,0 +1 @@ +JAR_MANIFESTS += ['jar.mn'] diff --git a/browser/components/preferences/preferences.xhtml b/browser/components/preferences/preferences.xhtml index ef7c5c6187e4..5100e00641e8 100644 --- a/browser/components/preferences/preferences.xhtml +++ b/browser/components/preferences/preferences.xhtml @@ -12,6 +12,7 @@ <?xml-stylesheet href="chrome://browser/skin/preferences/search.css"?> <?xml-stylesheet href="chrome://browser/skin/preferences/containers.css"?> <?xml-stylesheet href="chrome://browser/skin/preferences/privacy.css"?> +<?xml-stylesheet href="chrome://browser/content/onionservices/authPreferences.css"?> <?xml-stylesheet href="chrome://browser/content/securitylevel/securityLevelPreferences.css"?> <?xml-stylesheet href="chrome://browser/content/torpreferences/torPreferences.css"?> diff --git a/browser/components/preferences/privacy.inc.xhtml b/browser/components/preferences/privacy.inc.xhtml index cac332fc69a9..017a69dc446e 100644 --- a/browser/components/preferences/privacy.inc.xhtml +++ b/browser/components/preferences/privacy.inc.xhtml @@ -495,6 +495,8 @@ <label id="fips-desc" hidden="true" data-l10n-id="forms-master-pw-fips-desc"></label> </groupbox> +#include ../onionservices/content/authPreferences.inc.xhtml + <!-- The form autofill section is inserted in to this box after the form autofill extension has initialized. --> <groupbox id="formAutofillGroupBox" diff --git a/browser/components/preferences/privacy.js b/browser/components/preferences/privacy.js index 97eb9a1ccf84..71ada9fff391 100644 --- a/browser/components/preferences/privacy.js +++ b/browser/components/preferences/privacy.js @@ -80,6 +80,12 @@ XPCOMUtils.defineLazyGetter(this, "AlertsServiceDND", function() { } }); +XPCOMUtils.defineLazyScriptGetter( + this, + ["OnionServicesAuthPreferences"], + "chrome://browser/content/onionservices/authPreferences.js" +); + // TODO: module import via ChromeUtils.defineModuleGetter XPCOMUtils.defineLazyScriptGetter( this, @@ -512,6 +518,7 @@ var gPrivacyPane = { this.trackingProtectionReadPrefs(); this.networkCookieBehaviorReadPrefs(); this._initTrackingProtectionExtensionControl(); + OnionServicesAuthPreferences.init(); this._initSecurityLevel(); Services.telemetry.setEventRecordingEnabled("pwmgr", true); diff --git a/browser/themes/shared/notification-icons.inc.css b/browser/themes/shared/notification-icons.inc.css index 3cc5248eba1d..111732121d21 100644 --- a/browser/themes/shared/notification-icons.inc.css +++ b/browser/themes/shared/notification-icons.inc.css @@ -120,6 +120,9 @@ list-style-image: url(chrome://browser/skin/notification-icons/indexedDB.svg); } +/* Reuse Firefox's login (key) icon for the Tor onion services auth. prompt */ +.popup-notification-icon[popupid="tor-clientauth"], +.tor-clientauth-icon, .popup-notification-icon[popupid="password"], .login-icon { list-style-image: url(chrome://browser/skin/login.svg); diff --git a/docshell/base/nsDocShell.cpp b/docshell/base/nsDocShell.cpp index 68a3d32bbeed..c6fac5fdb33f 100644 --- a/docshell/base/nsDocShell.cpp +++ b/docshell/base/nsDocShell.cpp @@ -3684,6 +3684,7 @@ nsDocShell::DisplayLoadError(nsresult aError, nsIURI* aURI, } } else { // Errors requiring simple formatting + bool isOnionAuthError = false; switch (aError) { case NS_ERROR_MALFORMED_URI: // URI is malformed @@ -3766,10 +3767,44 @@ nsDocShell::DisplayLoadError(nsresult aError, nsIURI* aURI, // HTTP/2 or HTTP/3 stack detected a protocol error error = "networkProtocolError"; break; - + case NS_ERROR_TOR_ONION_SVC_NOT_FOUND: + error = "onionServices.descNotFound"; + break; + case NS_ERROR_TOR_ONION_SVC_IS_INVALID: + error = "onionServices.descInvalid"; + break; + case NS_ERROR_TOR_ONION_SVC_INTRO_FAILED: + error = "onionServices.introFailed"; + break; + case NS_ERROR_TOR_ONION_SVC_REND_FAILED: + error = "onionServices.rendezvousFailed"; + break; + case NS_ERROR_TOR_ONION_SVC_MISSING_CLIENT_AUTH: + error = "onionServices.clientAuthMissing"; + isOnionAuthError = true; + break; + case NS_ERROR_TOR_ONION_SVC_BAD_CLIENT_AUTH: + error = "onionServices.clientAuthIncorrect"; + isOnionAuthError = true; + break; + case NS_ERROR_TOR_ONION_SVC_BAD_ADDRESS: + error = "onionServices.badAddress"; + break; + case NS_ERROR_TOR_ONION_SVC_INTRO_TIMEDOUT: + error = "onionServices.introTimedOut"; + break; default: break; } + + // The presence of aFailedChannel indicates that we arrived here due to a + // failed connection attempt. Note that we will arrive here a second time + // if the user cancels the Tor client auth prompt, but in that case we + // will not have a failed channel and therefore we will not prompt again. + if (isOnionAuthError && aFailedChannel) { + // Display about:blank while the Tor client auth prompt is open. + errorPage.AssignLiteral("blank"); + } } // If the HTTPS-Only Mode upgraded this request and the upgrade might have @@ -3852,6 +3887,20 @@ nsDocShell::DisplayLoadError(nsresult aError, nsIURI* aURI, nsAutoString str; rv = stringBundle->FormatStringFromName(errorDescriptionID, formatStrs, str); + if (NS_FAILED(rv)) { + // As a fallback, check torbutton.properties for the error string. + const char bundleURL[] = "chrome://torbutton/locale/torbutton.properties"; + nsCOMPtr<nsIStringBundleService> stringBundleService = + mozilla::services::GetStringBundleService(); + if (stringBundleService) { + nsCOMPtr<nsIStringBundle> tbStringBundle; + if (NS_SUCCEEDED(stringBundleService->CreateBundle( + bundleURL, getter_AddRefs(tbStringBundle)))) { + rv = tbStringBundle->FormatStringFromName(errorDescriptionID, + formatStrs, str); + } + } + } NS_ENSURE_SUCCESS(rv, rv); messageStr.Assign(str); } @@ -6338,6 +6387,7 @@ nsresult nsDocShell::FilterStatusForErrorPage( aStatus == NS_ERROR_FILE_ACCESS_DENIED || aStatus == NS_ERROR_CORRUPTED_CONTENT || aStatus == NS_ERROR_INVALID_CONTENT_ENCODING || + NS_ERROR_GET_MODULE(aStatus) == NS_ERROR_MODULE_TOR || NS_ERROR_GET_MODULE(aStatus) == NS_ERROR_MODULE_SECURITY) { // Errors to be shown for any frame return aStatus; @@ -8066,6 +8116,35 @@ nsresult nsDocShell::CreateContentViewer(const nsACString& aContentType, FireOnLocationChange(this, aRequest, mCurrentURI, locationFlags); } + // Arrange to show a Tor onion service client authentication prompt if + // appropriate. + if ((mLoadType == LOAD_ERROR_PAGE) && failedChannel) { + nsresult status = NS_OK; + if (NS_SUCCEEDED(failedChannel->GetStatus(&status)) && + ((status == NS_ERROR_TOR_ONION_SVC_MISSING_CLIENT_AUTH) || + (status == NS_ERROR_TOR_ONION_SVC_BAD_CLIENT_AUTH))) { + nsAutoCString onionHost; + failedURI->GetHost(onionHost); + const char* topic = (status == NS_ERROR_TOR_ONION_SVC_MISSING_CLIENT_AUTH) + ? "tor-onion-services-clientauth-missing" + : "tor-onion-services-clientauth-incorrect"; + if (XRE_IsContentProcess()) { + nsCOMPtr<nsIBrowserChild> browserChild = GetBrowserChild(); + if (browserChild) { + static_cast<BrowserChild*>(browserChild.get()) + ->SendShowOnionServicesAuthPrompt(onionHost, nsCString(topic)); + } + } else { + nsCOMPtr<nsPIDOMWindowOuter> browserWin = GetWindow(); + nsCOMPtr<nsIObserverService> obsSvc = services::GetObserverService(); + if (browserWin && obsSvc) { + obsSvc->NotifyObservers(browserWin, topic, + NS_ConvertUTF8toUTF16(onionHost).get()); + } + } + } + } + return NS_OK; } diff --git a/dom/ipc/BrowserParent.cpp b/dom/ipc/BrowserParent.cpp index 58fa6408689c..1aee76fceba1 100644 --- a/dom/ipc/BrowserParent.cpp +++ b/dom/ipc/BrowserParent.cpp @@ -4001,6 +4001,27 @@ mozilla::ipc::IPCResult BrowserParent::RecvShowCanvasPermissionPrompt( return IPC_OK(); } +mozilla::ipc::IPCResult BrowserParent::RecvShowOnionServicesAuthPrompt( + const nsCString& aOnionName, const nsCString& aTopic) { + nsCOMPtr<nsIBrowser> browser = + mFrameElement ? mFrameElement->AsBrowser() : nullptr; + if (!browser) { + // If the tab is being closed, the browser may not be available. + // In this case we can ignore the request. + return IPC_OK(); + } + nsCOMPtr<nsIObserverService> os = services::GetObserverService(); + if (!os) { + return IPC_FAIL_NO_REASON(this); + } + nsresult rv = os->NotifyObservers(browser, aTopic.get(), + NS_ConvertUTF8toUTF16(aOnionName).get()); + if (NS_FAILED(rv)) { + return IPC_FAIL_NO_REASON(this); + } + return IPC_OK(); +} + mozilla::ipc::IPCResult BrowserParent::RecvVisitURI(nsIURI* aURI, nsIURI* aLastVisitedURI, const uint32_t& aFlags) { diff --git a/dom/ipc/BrowserParent.h b/dom/ipc/BrowserParent.h index 2b98d6c41b34..c4284a0f4339 100644 --- a/dom/ipc/BrowserParent.h +++ b/dom/ipc/BrowserParent.h @@ -768,6 +768,9 @@ class BrowserParent final : public PBrowserParent, mozilla::ipc::IPCResult RecvShowCanvasPermissionPrompt( const nsCString& aOrigin, const bool& aHideDoorHanger); + mozilla::ipc::IPCResult RecvShowOnionServicesAuthPrompt( + const nsCString& aOnionName, const nsCString& aTopic); + mozilla::ipc::IPCResult RecvSetSystemFont(const nsCString& aFontName); mozilla::ipc::IPCResult RecvGetSystemFont(nsCString* aFontName); diff --git a/dom/ipc/PBrowser.ipdl b/dom/ipc/PBrowser.ipdl index 0fff23b033bc..2f86bc1f5bca 100644 --- a/dom/ipc/PBrowser.ipdl +++ b/dom/ipc/PBrowser.ipdl @@ -609,6 +609,15 @@ parent: async RequestPointerLock() returns (nsCString error); async ReleasePointerLock(); + /** + * This function is used to notify the parent that it should display a + * onion services client authentication prompt. + * + * @param aOnionHost The hostname of the .onion that needs authentication. + * @param aTopic The reason for the prompt. + */ + async ShowOnionServicesAuthPrompt(nsCString aOnionHost, nsCString aTopic); + child: async NativeSynthesisResponse(uint64_t aObserverId, nsCString aResponse); async FlushTabState(uint32_t aFlushId, bool aIsFinal); diff --git a/js/xpconnect/src/xpc.msg b/js/xpconnect/src/xpc.msg index d884c6a85999..31e5e75ba35c 100644 --- a/js/xpconnect/src/xpc.msg +++ b/js/xpconnect/src/xpc.msg @@ -253,5 +253,15 @@ XPC_MSG_DEF(NS_ERROR_FINGERPRINTING_URI , "The URI is fingerprinti XPC_MSG_DEF(NS_ERROR_CRYPTOMINING_URI , "The URI is cryptomining") XPC_MSG_DEF(NS_ERROR_SOCIALTRACKING_URI , "The URI is social tracking") +/* Codes related to Tor */ +XPC_MSG_DEF(NS_ERROR_TOR_ONION_SVC_NOT_FOUND , "Tor onion service descriptor cannot be found") +XPC_MSG_DEF(NS_ERROR_TOR_ONION_SVC_IS_INVALID , "Tor onion service descriptor is invalid") +XPC_MSG_DEF(NS_ERROR_TOR_ONION_SVC_INTRO_FAILED , "Tor onion service introduction failed") +XPC_MSG_DEF(NS_ERROR_TOR_ONION_SVC_REND_FAILED , "Tor onion service rendezvous failed") +XPC_MSG_DEF(NS_ERROR_TOR_ONION_SVC_MISSING_CLIENT_AUTH, "Tor onion service missing client authorization") +XPC_MSG_DEF(NS_ERROR_TOR_ONION_SVC_BAD_CLIENT_AUTH , "Tor onion service wrong client authorization") +XPC_MSG_DEF(NS_ERROR_TOR_ONION_SVC_BAD_ADDRESS , "Tor onion service bad address") +XPC_MSG_DEF(NS_ERROR_TOR_ONION_SVC_INTRO_TIMEDOUT , "Tor onion service introduction timed out") + /* Profile manager error codes */ XPC_MSG_DEF(NS_ERROR_DATABASE_CHANGED , "Flushing the profiles to disk would have overwritten changes made elsewhere.") diff --git a/netwerk/base/nsSocketTransport2.cpp b/netwerk/base/nsSocketTransport2.cpp index 501076be8c35..2e45b523c0d8 100644 --- a/netwerk/base/nsSocketTransport2.cpp +++ b/netwerk/base/nsSocketTransport2.cpp @@ -215,6 +215,12 @@ nsresult ErrorAccordingToNSPR(PRErrorCode errorCode) { default: if (psm::IsNSSErrorCode(errorCode)) { rv = psm::GetXPCOMFromNSSError(errorCode); + } else { + // If we received a Tor extended error code via SOCKS, pass it through. + nsresult res = nsresult(errorCode); + if (NS_ERROR_GET_MODULE(res) == NS_ERROR_MODULE_TOR) { + rv = res; + } } break; diff --git a/netwerk/socket/nsSOCKSIOLayer.cpp b/netwerk/socket/nsSOCKSIOLayer.cpp index 0a16d6c7236f..c2bf0e951dda 100644 --- a/netwerk/socket/nsSOCKSIOLayer.cpp +++ b/netwerk/socket/nsSOCKSIOLayer.cpp @@ -1007,6 +1007,55 @@ PRStatus nsSOCKSSocketInfo::ReadV5ConnectResponseTop() { "08, Address type not supported.")); c = PR_BAD_ADDRESS_ERROR; break; + case 0xF0: // Tor SOCKS5_HS_NOT_FOUND + LOGERROR( + ("socks5: connect failed: F0," + " Tor onion service descriptor can not be found.")); + c = static_cast<uint32_t>(NS_ERROR_TOR_ONION_SVC_NOT_FOUND); + break; + case 0xF1: // Tor SOCKS5_HS_IS_INVALID + LOGERROR( + ("socks5: connect failed: F1," + " Tor onion service descriptor is invalid.")); + c = static_cast<uint32_t>(NS_ERROR_TOR_ONION_SVC_IS_INVALID); + break; + case 0xF2: // Tor SOCKS5_HS_INTRO_FAILED + LOGERROR( + ("socks5: connect failed: F2," + " Tor onion service introduction failed.")); + c = static_cast<uint32_t>(NS_ERROR_TOR_ONION_SVC_INTRO_FAILED); + break; + case 0xF3: // Tor SOCKS5_HS_REND_FAILED + LOGERROR( + ("socks5: connect failed: F3," + " Tor onion service rendezvous failed.")); + c = static_cast<uint32_t>(NS_ERROR_TOR_ONION_SVC_REND_FAILED); + break; + case 0xF4: // Tor SOCKS5_HS_MISSING_CLIENT_AUTH + LOGERROR( + ("socks5: connect failed: F4," + " Tor onion service missing client authorization.")); + c = static_cast<uint32_t>(NS_ERROR_TOR_ONION_SVC_MISSING_CLIENT_AUTH); + break; + case 0xF5: // Tor SOCKS5_HS_BAD_CLIENT_AUTH + LOGERROR( + ("socks5: connect failed: F5," + " Tor onion service wrong client authorization.")); + c = static_cast<uint32_t>(NS_ERROR_TOR_ONION_SVC_BAD_CLIENT_AUTH); + break; + case 0xF6: // Tor SOCKS5_HS_BAD_ADDRESS + LOGERROR( + ("socks5: connect failed: F6," + " Tor onion service bad address.")); + c = static_cast<uint32_t>(NS_ERROR_TOR_ONION_SVC_BAD_ADDRESS); + break; + case 0xF7: // Tor SOCKS5_HS_INTRO_TIMEDOUT + LOGERROR( + ("socks5: connect failed: F7," + " Tor onion service introduction timed out.")); + c = static_cast<uint32_t>(NS_ERROR_TOR_ONION_SVC_INTRO_TIMEDOUT); + break; + default: LOGERROR(("socks5: connect failed.")); break; diff --git a/toolkit/modules/PopupNotifications.jsm b/toolkit/modules/PopupNotifications.jsm index 2fc54a589969..68f687698cfa 100644 --- a/toolkit/modules/PopupNotifications.jsm +++ b/toolkit/modules/PopupNotifications.jsm @@ -406,6 +406,8 @@ PopupNotifications.prototype = { * will be dismissed instead of removed after running the callback. * - [optional] disabled (boolean): If this is true, the button * will be disabled. + * - [optional] leaveOpen (boolean): If this is true, the notification + * will not be removed after running the callback. * - [optional] disableHighlight (boolean): If this is true, the button * will not apply the default highlight style. * If null, the notification will have a default "OK" action button @@ -1890,6 +1892,10 @@ PopupNotifications.prototype = { this._dismiss(); return; } + + if (action.leaveOpen) { + return; + } } this._remove(notification); diff --git a/toolkit/modules/RemotePageAccessManager.jsm b/toolkit/modules/RemotePageAccessManager.jsm index d95f127497c4..f8fbb4ce50ae 100644 --- a/toolkit/modules/RemotePageAccessManager.jsm +++ b/toolkit/modules/RemotePageAccessManager.jsm @@ -104,6 +104,7 @@ let RemotePageAccessManager = { RPMPrefIsLocked: ["security.tls.version.min"], RPMAddToHistogram: ["*"], RPMGetHttpResponseHeader: ["*"], + RPMGetTorStrings: ["*"], }, "about:newinstall": { RPMGetUpdateChannel: ["*"], diff --git a/tools/lint/eslint/eslint-plugin-mozilla/lib/environments/frame-script.js b/tools/lint/eslint/eslint-plugin-mozilla/lib/environments/frame-script.js index dd5c5fdbe1b0..464e0f654262 100644 --- a/tools/lint/eslint/eslint-plugin-mozilla/lib/environments/frame-script.js +++ b/tools/lint/eslint/eslint-plugin-mozilla/lib/environments/frame-script.js @@ -38,5 +38,6 @@ module.exports = { RPMAddToHistogram: false, RPMRemoveMessageListener: false, RPMGetHttpResponseHeader: false, + RPMGetTorStrings: false, }, }; diff --git a/xpcom/base/ErrorList.py b/xpcom/base/ErrorList.py index f4e7094a3f30..3a1fc61c4b8f 100755 --- a/xpcom/base/ErrorList.py +++ b/xpcom/base/ErrorList.py @@ -85,6 +85,7 @@ modules["URL_CLASSIFIER"] = Mod(42) # ErrorResult gets its own module to reduce the chance of someone accidentally # defining an error code matching one of the ErrorResult ones. modules["ERRORRESULT"] = Mod(43) +modules["TOR"] = Mod(44) # NS_ERROR_MODULE_GENERAL should be used by modules that do not # care if return code values overlap. Callers of methods that @@ -1181,6 +1182,27 @@ with modules["ERRORRESULT"]: errors["NS_ERROR_INTERNAL_ERRORRESULT_RANGEERROR"] = FAILURE(5) +# ======================================================================= +# 44: Tor-specific error codes. +# ======================================================================= +with modules["TOR"]: + # Tor onion service descriptor can not be found. + errors["NS_ERROR_TOR_ONION_SVC_NOT_FOUND"] = FAILURE(1) + # Tor onion service descriptor is invalid. + errors["NS_ERROR_TOR_ONION_SVC_IS_INVALID"] = FAILURE(2) + # Tor onion service introduction failed. + errors["NS_ERROR_TOR_ONION_SVC_INTRO_FAILED"] = FAILURE(3) + # Tor onion service rendezvous failed. + errors["NS_ERROR_TOR_ONION_SVC_REND_FAILED"] = FAILURE(4) + # Tor onion service missing client authorization. + errors["NS_ERROR_TOR_ONION_SVC_MISSING_CLIENT_AUTH"] = FAILURE(5) + # Tor onion service wrong client authorization. + errors["NS_ERROR_TOR_ONION_SVC_BAD_CLIENT_AUTH"] = FAILURE(6) + # Tor onion service bad address. + errors["NS_ERROR_TOR_ONION_SVC_BAD_ADDRESS"] = FAILURE(7) + # Tor onion service introduction timed out. + errors["NS_ERROR_TOR_ONION_SVC_INTRO_TIMEDOUT"] = FAILURE(8) + # ======================================================================= # 51: NS_ERROR_MODULE_GENERAL # =======================================================================
1 0
0 0
[tor-browser/tor-browser-83.0-10.0-1] Bug 32658: Create a new MAR signing key
by sysrqb@torproject.org 26 Nov '20

26 Nov '20
commit 7cb2f65a6680371045c7680548d43c076ac84dd1 Author: Georg Koppen <gk(a)torproject.org> Date: Fri Jan 17 12:54:31 2020 +0000 Bug 32658: Create a new MAR signing key It's time for our rotation again: Move the backup key in the front position and add a new backup key. --- toolkit/mozapps/update/updater/release_primary.der | Bin 1225 -> 1229 bytes toolkit/mozapps/update/updater/release_secondary.der | Bin 1225 -> 1229 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/toolkit/mozapps/update/updater/release_primary.der b/toolkit/mozapps/update/updater/release_primary.der index 1d94f88ad73b..0103a171de88 100644 Binary files a/toolkit/mozapps/update/updater/release_primary.der and b/toolkit/mozapps/update/updater/release_primary.der differ diff --git a/toolkit/mozapps/update/updater/release_secondary.der b/toolkit/mozapps/update/updater/release_secondary.der index 474706c4b73c..fcee3944e9b7 100644 Binary files a/toolkit/mozapps/update/updater/release_secondary.der and b/toolkit/mozapps/update/updater/release_secondary.der differ
1 0
0 0
[tor-browser/tor-browser-83.0-10.0-1] Bug 32220: Improve the letterboxing experience
by sysrqb@torproject.org 26 Nov '20

26 Nov '20
commit c3ade2e95c594159165ed02a745d2b73a7f0dd86 Author: Richard Pospesel <richard(a)torproject.org> Date: Mon Oct 28 17:42:17 2019 -0700 Bug 32220: Improve the letterboxing experience CSS and JS changes to alter the UX surrounding letterboxing. The browser element containing page content is now anchored to the bottom of the toolbar, and the remaining letterbox margin is the same color as the firefox chrome. The letterbox margin and border are tied to the currently selected theme. Also adds a 'needsLetterbox' property to tabbrowser.xml to fix a race condition present when using the 'isEmpty' property. Using 'isEmpty' as a proxy for 'needsLetterbox' resulted in over-zealous/unnecessary letterboxing of about:blank tabs. --- browser/base/content/browser.css | 8 ++ browser/base/content/tabbrowser-tab.js | 9 +++ browser/themes/shared/tabs.inc.css | 6 ++ .../components/resistfingerprinting/RFPHelper.jsm | 94 +++++++++++++++++++--- 4 files changed, 105 insertions(+), 12 deletions(-) diff --git a/browser/base/content/browser.css b/browser/base/content/browser.css index 0cce45d4a291..ffd741cde7b7 100644 --- a/browser/base/content/browser.css +++ b/browser/base/content/browser.css @@ -85,6 +85,14 @@ body { display: none; } + +.browserStack > browser.letterboxing { + border-color: var(--chrome-content-separator-color); + border-style: solid; + border-width : 1px; + border-top: none; +} + %ifdef MENUBAR_CAN_AUTOHIDE #toolbar-menubar[autohide="true"] { overflow: hidden; diff --git a/browser/base/content/tabbrowser-tab.js b/browser/base/content/tabbrowser-tab.js index 2bc18e4d7320..10e678bb1950 100644 --- a/browser/base/content/tabbrowser-tab.js +++ b/browser/base/content/tabbrowser-tab.js @@ -225,6 +225,15 @@ return true; } + get needsLetterbox() { + let browser = this.linkedBrowser; + if (isBlankPageURL(browser.currentURI.spec)) { + return false; + } + + return true; + } + get lastAccessed() { return this._lastAccessed == Infinity ? Date.now() : this._lastAccessed; } diff --git a/browser/themes/shared/tabs.inc.css b/browser/themes/shared/tabs.inc.css index 47697d24cfb3..8025dd34a43a 100644 --- a/browser/themes/shared/tabs.inc.css +++ b/browser/themes/shared/tabs.inc.css @@ -33,6 +33,12 @@ background-color: #f9f9fa; } +/* extend down the toolbar's colors when letterboxing is enabled*/ +#tabbrowser-tabpanels.letterboxing { + background-color: var(--toolbar-bgcolor); + background-image: var(--toolbar-bgimage); +} + :root[privatebrowsingmode=temporary] #tabbrowser-tabpanels { /* Value for --in-content-page-background in aboutPrivateBrowsing.css */ background-color: #25003e; diff --git a/toolkit/components/resistfingerprinting/RFPHelper.jsm b/toolkit/components/resistfingerprinting/RFPHelper.jsm index 166ad21e9013..9520d8720631 100644 --- a/toolkit/components/resistfingerprinting/RFPHelper.jsm +++ b/toolkit/components/resistfingerprinting/RFPHelper.jsm @@ -40,6 +40,7 @@ class _RFPHelper { // ============================================================================ constructor() { this._initialized = false; + this._borderDimensions = null; } init() { @@ -361,6 +362,24 @@ class _RFPHelper { }); } + getBorderDimensions(aBrowser) { + if (this._borderDimensions) { + return this._borderDimensions; + } + + const win = aBrowser.ownerGlobal; + const browserStyle = win.getComputedStyle(aBrowser); + + this._borderDimensions = { + top : parseInt(browserStyle.borderTopWidth), + right: parseInt(browserStyle.borderRightWidth), + bottom : parseInt(browserStyle.borderBottomWidth), + left : parseInt(browserStyle.borderLeftWidth), + }; + + return this._borderDimensions; + } + _addOrClearContentMargin(aBrowser) { let tab = aBrowser.getTabBrowser().getTabForBrowser(aBrowser); @@ -369,9 +388,13 @@ class _RFPHelper { return; } + // we add the letterboxing class even if the content does not need letterboxing + // in which case margins are set such that the borders are hidden + aBrowser.classList.add("letterboxing"); + // We should apply no margin around an empty tab or a tab with system // principal. - if (tab.isEmpty || aBrowser.contentPrincipal.isSystemPrincipal) { + if (!tab.needsLetterbox || aBrowser.contentPrincipal.isSystemPrincipal) { this._clearContentViewMargin(aBrowser); } else { this._roundContentView(aBrowser); @@ -539,10 +562,29 @@ class _RFPHelper { // Calculating the margins around the browser element in order to round the // content viewport. We will use a 200x100 stepping if the dimension set // is not given. - let margins = calcMargins(containerWidth, containerHeight); + + const borderDimensions = this.getBorderDimensions(aBrowser); + const marginDims = calcMargins(containerWidth, containerHeight - borderDimensions.top); + + let margins = { + top : 0, + right : 0, + bottom : 0, + left : 0, + }; + + // snap browser element to top + margins.top = 0; + // and leave 'double' margin at the bottom + margins.bottom = 2 * marginDims.height - borderDimensions.bottom; + // identical margins left and right + margins.right = marginDims.width - borderDimensions.right; + margins.left = marginDims.width - borderDimensions.left; + + const marginStyleString = `${margins.top}px ${margins.right}px ${margins.bottom}px ${margins.left}px`; // If the size of the content is already quantized, we do nothing. - if (aBrowser.style.margin == `${margins.height}px ${margins.width}px`) { + if (aBrowser.style.margin === marginStyleString) { log("_roundContentView[" + logId + "] is_rounded == true"); if (this._isLetterboxingTesting) { log( @@ -563,19 +605,35 @@ class _RFPHelper { "_roundContentView[" + logId + "] setting margins to " + - margins.width + - " x " + - margins.height + marginStyleString ); - // One cannot (easily) control the color of a margin unfortunately. - // An initial attempt to use a border instead of a margin resulted - // in offset event dispatching; so for now we use a colorless margin. - aBrowser.style.margin = `${margins.height}px ${margins.width}px`; + + // The margin background color is determined by the background color of the + // window's tabpanels#tabbrowser-tabpanels element + aBrowser.style.margin = marginStyleString; }); } _clearContentViewMargin(aBrowser) { + const borderDimensions = this.getBorderDimensions(aBrowser); + // set the margins such that the browser elements border is visible up top, but + // are rendered off-screen on the remaining sides + let margins = { + top : 0, + right : -borderDimensions.right, + bottom : -borderDimensions.bottom, + left : -borderDimensions.left, + }; + const marginStyleString = `${margins.top}px ${margins.right}px ${margins.bottom}px ${margins.left}px`; + + aBrowser.ownerGlobal.requestAnimationFrame(() => { + aBrowser.style.margin = marginStyleString; + }); + } + + _removeLetterboxing(aBrowser) { aBrowser.ownerGlobal.requestAnimationFrame(() => { + aBrowser.classList.remove("letterboxing"); aBrowser.style.margin = ""; }); } @@ -593,6 +651,11 @@ class _RFPHelper { aWindow.gBrowser.addTabsProgressListener(this); aWindow.addEventListener("TabOpen", this); + const tabPanel = aWindow.document.getElementById("tabbrowser-tabpanels"); + if (tabPanel) { + tabPanel.classList.add("letterboxing"); + } + // Rounding the content viewport. this._updateMarginsForTabsInWindow(aWindow); } @@ -616,10 +679,17 @@ class _RFPHelper { tabBrowser.removeTabsProgressListener(this); aWindow.removeEventListener("TabOpen", this); - // Clear all margins and tooltip for all browsers. + // revert tabpanel's background colors to default + const tabPanel = aWindow.document.getElementById("tabbrowser-tabpanels"); + if (tabPanel) { + tabPanel.classList.remove("letterboxing"); + } + + // and revert each browser element to default, + // restore default margins and remove letterboxing class for (let tab of tabBrowser.tabs) { let browser = tab.linkedBrowser; - this._clearContentViewMargin(browser); + this._removeLetterboxing(browser); } }
1 0
0 0
[tor-browser/tor-browser-83.0-10.0-1] Bug 31740: Remove some unnecessary RemoteSettings instances
by sysrqb@torproject.org 26 Nov '20

26 Nov '20
commit fdc5d9c99c11802498f5b5e85c27d761630723ee Author: Alex Catarineu <acat(a)torproject.org> Date: Wed Oct 16 23:01:12 2019 +0200 Bug 31740: Remove some unnecessary RemoteSettings instances More concretely, SearchService.jsm 'hijack-blocklists' and url-classifier-skip-urls. Avoid creating instance for 'anti-tracking-url-decoration'. If prefs are disabling their usage, avoid creating instances for 'cert-revocations' and 'intermediates'. Do not ship JSON dumps for collections we do not expect to need. For the ones in the 'main' bucket, this prevents them from being synced unnecessarily (the code in remote-settings does so for collections in the main bucket for which a dump or local data exists). For the collections in the other buckets, we just save some size by not shipping their dumps. We also clear the collections database on the v2 -> v3 migration. --- browser/app/profile/000-tor-browser.js | 3 +++ browser/components/search/SearchTelemetry.jsm | 6 ------ .../url-classifier/UrlClassifierFeatureBase.cpp | 2 +- netwerk/url-classifier/components.conf | 6 ------ security/manager/ssl/RemoteSecuritySettings.jsm | 22 ++++++++++++++++++++++ services/settings/IDBHelpers.jsm | 4 ++++ services/settings/dumps/blocklists/moz.build | 1 - services/settings/dumps/main/moz.build | 7 ------- services/settings/dumps/security-state/moz.build | 1 - .../components/antitracking/antitracking.manifest | 2 +- toolkit/components/antitracking/components.conf | 7 ------- toolkit/components/search/SearchService.jsm | 2 -- 12 files changed, 31 insertions(+), 32 deletions(-) diff --git a/browser/app/profile/000-tor-browser.js b/browser/app/profile/000-tor-browser.js index 241fb152b013..d7c7d366b24d 100644 --- a/browser/app/profile/000-tor-browser.js +++ b/browser/app/profile/000-tor-browser.js @@ -149,6 +149,9 @@ pref("extensions.fxmonitor.enabled", false); pref("signon.management.page.mobileAndroidURL", ""); pref("signon.management.page.mobileAppleURL", ""); +// Disable remote "password recipes" +pref("signon.recipes.remoteRecipesEnabled", false); + // Disable ServiceWorkers and push notifications by default pref("dom.serviceWorkers.enabled", false); pref("dom.push.enabled", false); diff --git a/browser/components/search/SearchTelemetry.jsm b/browser/components/search/SearchTelemetry.jsm index deb76de6fc41..f07b5f974bd0 100644 --- a/browser/components/search/SearchTelemetry.jsm +++ b/browser/components/search/SearchTelemetry.jsm @@ -88,13 +88,7 @@ class TelemetryHandler { return; } - this._telemetrySettings = RemoteSettings(TELEMETRY_SETTINGS_KEY); let rawProviderInfo = []; - try { - rawProviderInfo = await this._telemetrySettings.get(); - } catch (ex) { - logConsole.error("Could not get settings:", ex); - } // Send the provider info to the child handler. this._contentHandler.init(rawProviderInfo); diff --git a/netwerk/url-classifier/UrlClassifierFeatureBase.cpp b/netwerk/url-classifier/UrlClassifierFeatureBase.cpp index 07da1fd07374..48bcc7d10af9 100644 --- a/netwerk/url-classifier/UrlClassifierFeatureBase.cpp +++ b/netwerk/url-classifier/UrlClassifierFeatureBase.cpp @@ -78,7 +78,7 @@ void UrlClassifierFeatureBase::InitializePreferences() { nsCOMPtr<nsIUrlClassifierExceptionListService> exceptionListService = do_GetService("@mozilla.org/url-classifier/exception-list-service;1"); - if (NS_WARN_IF(!exceptionListService)) { + if (!exceptionListService) { return; } diff --git a/netwerk/url-classifier/components.conf b/netwerk/url-classifier/components.conf index 03a02f0ebeab..b2e667247317 100644 --- a/netwerk/url-classifier/components.conf +++ b/netwerk/url-classifier/components.conf @@ -13,10 +13,4 @@ Classes = [ 'constructor': 'mozilla::net::ChannelClassifierService::GetSingleton', 'headers': ['mozilla/net/ChannelClassifierService.h'], }, - { - 'cid': '{b9f4fd03-9d87-4bfd-9958-85a821750ddc}', - 'contract_ids': ['@mozilla.org/url-classifier/exception-list-service;1'], - 'jsm': 'resource://gre/modules/UrlClassifierExceptionListService.jsm', - 'constructor': 'UrlClassifierExceptionListService', - }, ] diff --git a/security/manager/ssl/RemoteSecuritySettings.jsm b/security/manager/ssl/RemoteSecuritySettings.jsm index 3fedd43ed9be..fd2b69bc6a4f 100644 --- a/security/manager/ssl/RemoteSecuritySettings.jsm +++ b/security/manager/ssl/RemoteSecuritySettings.jsm @@ -350,6 +350,16 @@ var RemoteSecuritySettings = { class IntermediatePreloads { constructor() { + this.maybeInit(); + } + + maybeInit() { + if ( + this.client || + !Services.prefs.getBoolPref(INTERMEDIATES_ENABLED_PREF, true) + ) { + return; + } this.client = RemoteSettings( Services.prefs.getCharPref(INTERMEDIATES_COLLECTION_PREF), { @@ -379,6 +389,7 @@ class IntermediatePreloads { ); return; } + this.maybeInit(); // Download attachments that are awaiting download, up to a max. const maxDownloadsPerRun = Services.prefs.getIntPref( @@ -709,6 +720,16 @@ function compareFilters(filterA, filterB) { class CRLiteFilters { constructor() { + this.maybeInit(); + } + + maybeInit() { + if ( + this.client || + !Services.prefs.getBoolPref(CRLITE_FILTERS_ENABLED_PREF, true) + ) { + return; + } this.client = RemoteSettings( Services.prefs.getCharPref(CRLITE_FILTERS_COLLECTION_PREF), { @@ -734,6 +755,7 @@ class CRLiteFilters { ); return; } + this.maybeInit(); let current = await this.client.db.list(); let fullFilters = current.filter(filter => !filter.incremental); if (fullFilters.length < 1) { diff --git a/services/settings/IDBHelpers.jsm b/services/settings/IDBHelpers.jsm index 5dc59c3687ef..010a5ea82987 100644 --- a/services/settings/IDBHelpers.jsm +++ b/services/settings/IDBHelpers.jsm @@ -188,6 +188,10 @@ async function openIDB(allowUpgrades = true) { }); } if (event.oldVersion < 3) { + // Clear existing stores for a fresh start + transaction.objectStore("records").clear(); + transaction.objectStore("timestamps").clear(); + transaction.objectStore("collections").clear(); // Attachment store db.createObjectStore("attachments", { keyPath: ["cid", "attachmentId"], diff --git a/services/settings/dumps/blocklists/moz.build b/services/settings/dumps/blocklists/moz.build index 1683ab6aafa4..dd0bad30f19a 100644 --- a/services/settings/dumps/blocklists/moz.build +++ b/services/settings/dumps/blocklists/moz.build @@ -9,7 +9,6 @@ with Files('**'): # The addons blocklist is also in mobile/android/installer/package-manifest.in FINAL_TARGET_FILES.defaults.settings.blocklists += ['addons-bloomfilters.json', - 'addons.json', 'gfx.json', 'plugins.json'] diff --git a/services/settings/dumps/main/moz.build b/services/settings/dumps/main/moz.build index 20e0304303d9..e25fc4214042 100644 --- a/services/settings/dumps/main/moz.build +++ b/services/settings/dumps/main/moz.build @@ -3,17 +3,10 @@ # file, You can obtain one at http://mozilla.org/MPL/2.0/. FINAL_TARGET_FILES.defaults.settings.main += [ - 'anti-tracking-url-decoration.json', 'example.json', 'hijack-blocklists.json', 'language-dictionaries.json', - 'password-recipes.json', - 'search-config.json', 'search-default-override-allowlist.json', - 'search-telemetry.json', - 'sites-classification.json', - 'top-sites.json', - 'url-classifier-skip-urls.json', ] if CONFIG['MOZ_BUILD_APP'] == 'browser': diff --git a/services/settings/dumps/security-state/moz.build b/services/settings/dumps/security-state/moz.build index d8f8227a0278..37410d0fb054 100644 --- a/services/settings/dumps/security-state/moz.build +++ b/services/settings/dumps/security-state/moz.build @@ -3,7 +3,6 @@ # file, You can obtain one at http://mozilla.org/MPL/2.0/. FINAL_TARGET_FILES.defaults.settings['security-state'] += [ - 'intermediates.json', 'onecrl.json', ] diff --git a/toolkit/components/antitracking/antitracking.manifest b/toolkit/components/antitracking/antitracking.manifest index 5eb37f9a3f99..872e6af07575 100644 --- a/toolkit/components/antitracking/antitracking.manifest +++ b/toolkit/components/antitracking/antitracking.manifest @@ -1 +1 @@ -category profile-after-change URLDecorationAnnotationsService @mozilla.org/tracking-url-decoration-service;1 process=main +# category profile-after-change URLDecorationAnnotationsService @mozilla.org/tracking-url-decoration-service;1 process=main diff --git a/toolkit/components/antitracking/components.conf b/toolkit/components/antitracking/components.conf index c5e21b06156b..53db083e394c 100644 --- a/toolkit/components/antitracking/components.conf +++ b/toolkit/components/antitracking/components.conf @@ -11,13 +11,6 @@ Classes = [ 'jsm': 'resource://gre/modules/TrackingDBService.jsm', 'constructor': 'TrackingDBService', }, - { - 'cid': '{5874af6d-5719-4e1b-b155-ef4eae7fcb32}', - 'contract_ids': ['@mozilla.org/tracking-url-decoration-service;1'], - 'jsm': 'resource://gre/modules/URLDecorationAnnotationsService.jsm', - 'constructor': 'URLDecorationAnnotationsService', - 'processes': ProcessSelector.MAIN_PROCESS_ONLY, - }, { 'cid': '{90d1fd17-2018-4e16-b73c-a04a26fa6dd4}', 'contract_ids': ['@mozilla.org/purge-tracker-service;1'], diff --git a/toolkit/components/search/SearchService.jsm b/toolkit/components/search/SearchService.jsm index 7b78571c7b60..a174eec16624 100644 --- a/toolkit/components/search/SearchService.jsm +++ b/toolkit/components/search/SearchService.jsm @@ -252,8 +252,6 @@ SearchService.prototype = { // See if we have a settings file so we don't have to parse a bunch of XML. let settings = await this._settings.get(); - this._setupRemoteSettings().catch(Cu.reportError); - await this._loadEngines(settings); // If we've got this far, but the application is now shutting down,
1 0
0 0
  • ← Newer
  • 1
  • ...
  • 1132
  • 1133
  • 1134
  • 1135
  • 1136
  • 1137
  • 1138
  • ...
  • 1864
  • Older →

HyperKitty Powered by HyperKitty version 1.3.12.