diff --git a/.config.yml b/.config.yml
index ef217dacfdd..b39f313cd20 100644
--- a/.config.yml
+++ b/.config.yml
@@ -4,4 +4,4 @@ componentsGroupId: "org.mozilla.components"
# Synchronized build configuration for all modules
compileSdkVersion: 31
minSdkVersion: 21
-targetSdkVersion: 30
+targetSdkVersion: 31
diff --git a/.taskcluster.yml b/.taskcluster.yml
index d3896f06846..524c8383369 100644
--- a/.taskcluster.yml
+++ b/.taskcluster.yml
@@ -222,6 +222,7 @@ tasks:
MOBILE_HEAD_TAG: '${head_tag}'
MOBILE_PIP_REQUIREMENTS: taskcluster/requirements.txt
MOBILE_REPOSITORY_TYPE: git
+ MOZ_AUTOMATION: "1"
REPOSITORIES: {$json: {mobile: "android-components"}}
ANDROID_SDK_ROOT: /builds/worker/android-sdk
- $if: 'tasks_for in ["github-pull-request"]'
diff --git a/buildSrc/src/main/java/Dependencies.kt b/buildSrc/src/main/java/Dependencies.kt
index e8682800f0e..0f906d7ffcc 100644
--- a/buildSrc/src/main/java/Dependencies.kt
+++ b/buildSrc/src/main/java/Dependencies.kt
@@ -3,7 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
// If you ever need to force a toolchain rebuild (taskcluster) then edit the following comment.
-// FORCE REBUILD 2022-01-13
+// FORCE REBUILD 2022-06-02
// Synchronized version numbers for dependencies used by (some) modules
object Versions {
@@ -53,8 +53,8 @@ object Versions {
const val core = "1.3.2"
const val fragment = "1.3.4"
const val recyclerview = "1.2.0"
- const val test = "1.3.0"
- const val test_ext = "1.1.2"
+ const val test = "1.4.0"
+ const val test_ext = "1.1.3"
const val espresso = "3.3.0"
const val room = "2.4.2"
const val paging = "2.1.2"
diff --git a/buildSrc/src/main/java/Gecko.kt b/buildSrc/src/main/java/Gecko.kt
index 25f32bc5a54..c9d88df2155 100644
--- a/buildSrc/src/main/java/Gecko.kt
+++ b/buildSrc/src/main/java/Gecko.kt
@@ -9,7 +9,7 @@ object Gecko {
/**
* GeckoView Version.
*/
- const val version = "103.0.20220605065813"
+ const val version = "103.0.20220607093440"
/**
* GeckoView channel
diff --git a/components/feature/awesomebar/src/main/res/values-pt-rBR/strings.xml b/components/feature/awesomebar/src/main/res/values-pt-rBR/strings.xml
index 4656d439b6f..7eb7da507d4 100644
--- a/components/feature/awesomebar/src/main/res/values-pt-rBR/strings.xml
+++ b/components/feature/awesomebar/src/main/res/values-pt-rBR/strings.xml
@@ -3,5 +3,5 @@
- Alternar para a aba
+ Mudar para a aba
diff --git a/components/feature/contextmenu/src/main/res/values-es-rMX/strings.xml b/components/feature/contextmenu/src/main/res/values-es-rMX/strings.xml
index fbff51ae047..28287206aa1 100644
--- a/components/feature/contextmenu/src/main/res/values-es-rMX/strings.xml
+++ b/components/feature/contextmenu/src/main/res/values-es-rMX/strings.xml
@@ -7,7 +7,7 @@
Abrir imagen en una pestaña nueva
- Enlace de descarga
+ Descargar enlace
Compartir enlace
diff --git a/components/feature/contextmenu/src/main/res/values-pt-rBR/strings.xml b/components/feature/contextmenu/src/main/res/values-pt-rBR/strings.xml
index 0ec2fc65fa8..c729dbbe097 100644
--- a/components/feature/contextmenu/src/main/res/values-pt-rBR/strings.xml
+++ b/components/feature/contextmenu/src/main/res/values-pt-rBR/strings.xml
@@ -27,7 +27,7 @@
Link copiado para área de transferência
- Alternar
+ Mostrar
Abrir link em app externo
diff --git a/components/feature/prompts/src/main/res/values-da/strings.xml b/components/feature/prompts/src/main/res/values-da/strings.xml
index a34ad50bbd4..dc95af2cc66 100644
--- a/components/feature/prompts/src/main/res/values-da/strings.xml
+++ b/components/feature/prompts/src/main/res/values-da/strings.xml
@@ -113,4 +113,14 @@
Opdater kortets udløbsdato?
Kortnummeret vil blive krypteret. Sikkerhedskoden vil ikke blive gemt.
+
+
+
+ Vælg adresser
+
+ Udvid foreslåede adresser
+
+ Sammenfold foreslåede adresser
+
+ Håndter adresser
diff --git a/components/feature/prompts/src/main/res/values-el/strings.xml b/components/feature/prompts/src/main/res/values-el/strings.xml
index e715715b5d1..f83aadd57dd 100644
--- a/components/feature/prompts/src/main/res/values-el/strings.xml
+++ b/components/feature/prompts/src/main/res/values-el/strings.xml
@@ -113,4 +113,8 @@
Ενημέρωση ημερομηνίας λήξης κάρτας;
Ο αριθμός της κάρτας θα κρυπτογραφηθεί. Ο κωδικός ασφαλείας δεν θα αποθηκευτεί.
-
+
+
+
+ Επιλογή διευθύνσεων
+
diff --git a/components/feature/prompts/src/main/res/values-et/strings.xml b/components/feature/prompts/src/main/res/values-et/strings.xml
index 16d7d1d24d9..c1f0490a000 100644
--- a/components/feature/prompts/src/main/res/values-et/strings.xml
+++ b/components/feature/prompts/src/main/res/values-et/strings.xml
@@ -113,4 +113,14 @@
Kas uuendada kaardi aegumiskuupäeva?
Kaardi number krüptitakse. Turvakoodi ei salvestata.
+
+
+
+ Vali aadressid
+
+ Laienda soovitatud aadressid
+
+ Ahenda soovitatud aadressid
+
+ Halda aadresse
diff --git a/components/feature/prompts/src/main/res/values-eu/strings.xml b/components/feature/prompts/src/main/res/values-eu/strings.xml
index ff0c0e98e0f..177e3a2d69b 100644
--- a/components/feature/prompts/src/main/res/values-eu/strings.xml
+++ b/components/feature/prompts/src/main/res/values-eu/strings.xml
@@ -113,4 +113,14 @@
Eguneratu txartelaren iraungitze-data?
Txartel-zenbakia zifratu egingo da. Segurtasun-kodea ez da gordeko.
+
+
+
+ Hautatu helbideak
+
+ Zabaldu iradokitako helbideak
+
+ Tolestu iradokitako helbideak
+
+ Kudeatu helbideak
diff --git a/components/feature/prompts/src/main/res/values-fr/strings.xml b/components/feature/prompts/src/main/res/values-fr/strings.xml
index c59e26ea00e..5ac4a918dfc 100644
--- a/components/feature/prompts/src/main/res/values-fr/strings.xml
+++ b/components/feature/prompts/src/main/res/values-fr/strings.xml
@@ -122,4 +122,7 @@
Mettre à jour la date d’expiration de la carte ?
Le numéro de carte sera chiffré. Le code de sécurité ne sera pas enregistré.
+
+
+ Gérer les adresses
diff --git a/components/feature/prompts/src/main/res/values-hu/strings.xml b/components/feature/prompts/src/main/res/values-hu/strings.xml
index 13bfbf8cde1..a6896046618 100644
--- a/components/feature/prompts/src/main/res/values-hu/strings.xml
+++ b/components/feature/prompts/src/main/res/values-hu/strings.xml
@@ -113,4 +113,14 @@
Frissíti a kártya lejárati dátumát?
A kártyaszám titkosítva lesz. A biztonsági kód nem kerül mentésre.
+
+
+
+ Címek kiválasztása
+
+ Javasolt címek kibontása
+
+ Javasolt címek összecsukása
+
+ Címek kezelése
diff --git a/components/feature/prompts/src/main/res/values-is/strings.xml b/components/feature/prompts/src/main/res/values-is/strings.xml
index c89ef5c2739..49bca8efb38 100644
--- a/components/feature/prompts/src/main/res/values-is/strings.xml
+++ b/components/feature/prompts/src/main/res/values-is/strings.xml
@@ -115,4 +115,14 @@
Uppfæra gildistíma korts?
Kortanúmer verður dulritað. Öryggiskóði verður ekki vistaður.
+
+
+
+ Velja póstföng
+
+ Fletta út tillögum að póstföngum
+
+ Fella saman tillögur að póstföngum
+
+ Sýsla með póstföng
diff --git a/components/feature/prompts/src/main/res/values-kk/strings.xml b/components/feature/prompts/src/main/res/values-kk/strings.xml
index e479a624b9b..9c93e201ac7 100644
--- a/components/feature/prompts/src/main/res/values-kk/strings.xml
+++ b/components/feature/prompts/src/main/res/values-kk/strings.xml
@@ -113,4 +113,14 @@
Картаның жарамдылық мерзімін жаңарту керек пе?
Карта нөмірі шифрленеді. Қауіпсіздік коды сақталмайды.
+
+
+
+ Адрестерді таңдау
+
+ Ұсынылған адрестерді жазық қылу
+
+ Ұсынылған адрестерді бүктеу
+
+ Адрестерді басқару
diff --git a/components/feature/prompts/src/main/res/values-pt-rPT/strings.xml b/components/feature/prompts/src/main/res/values-pt-rPT/strings.xml
index 240e4ea7065..40af580fc5b 100644
--- a/components/feature/prompts/src/main/res/values-pt-rPT/strings.xml
+++ b/components/feature/prompts/src/main/res/values-pt-rPT/strings.xml
@@ -117,4 +117,10 @@
Selecionar endereços
-
+
+ Expandir endereços sugeridos
+
+ Colapsar endereços sugeridas
+
+ Gerir endereços
+
diff --git a/components/feature/prompts/src/main/res/values-sv-rSE/strings.xml b/components/feature/prompts/src/main/res/values-sv-rSE/strings.xml
index 86ee27762b8..4379ee014fc 100644
--- a/components/feature/prompts/src/main/res/values-sv-rSE/strings.xml
+++ b/components/feature/prompts/src/main/res/values-sv-rSE/strings.xml
@@ -113,4 +113,14 @@
Uppdatera kortets utgångsdatum?
Kortnummer kommer att krypteras. Säkerhetskoden kommer inte att sparas.
+
+
+
+ Välj adresser
+
+ Expandera föreslagna adresser
+
+ Komprimera föreslagna adresser
+
+ Hantera adresser
diff --git a/components/feature/prompts/src/main/res/values-zh-rCN/strings.xml b/components/feature/prompts/src/main/res/values-zh-rCN/strings.xml
index e2fd3929586..db81a58ecec 100644
--- a/components/feature/prompts/src/main/res/values-zh-rCN/strings.xml
+++ b/components/feature/prompts/src/main/res/values-zh-rCN/strings.xml
@@ -129,6 +129,10 @@
选择地址
+
+ 展开建议的地址
+
+ 折叠建议的地址
管理地址
diff --git a/components/lib/biometric-prompt/src/main/java/mozilla.components.lib.auth/BiometricPromptFeature.kt b/components/lib/biometric-prompt/src/main/java/mozilla.components.lib.auth/BiometricPromptFeature.kt
index aa1c72165cd..a5328f1986b 100644
--- a/components/lib/biometric-prompt/src/main/java/mozilla.components.lib.auth/BiometricPromptFeature.kt
+++ b/components/lib/biometric-prompt/src/main/java/mozilla.components.lib.auth/BiometricPromptFeature.kt
@@ -61,17 +61,17 @@ class BiometricPromptFeature(
internal inner class PromptCallback : BiometricPrompt.AuthenticationCallback() {
override fun onAuthenticationError(errorCode: Int, errString: CharSequence) {
logger.error("onAuthenticationError: errorMessage $errString errorCode=$errorCode")
- authenticationCallbacks.onAuthError.invoke(errString.toString())
+ authenticationCallbacks.onAuthError(errString.toString())
}
override fun onAuthenticationSucceeded(result: BiometricPrompt.AuthenticationResult) {
logger.debug("onAuthenticationSucceeded")
- authenticationCallbacks.onAuthSuccess.invoke()
+ authenticationCallbacks.onAuthSuccess()
}
override fun onAuthenticationFailed() {
logger.error("onAuthenticationFailed")
- authenticationCallbacks.onAuthFailure.invoke()
+ authenticationCallbacks.onAuthFailure()
}
}
}
diff --git a/taskcluster/ac_taskgraph/target_tasks.py b/taskcluster/ac_taskgraph/target_tasks.py
index bb9a3d83ab5..c20113385f6 100644
--- a/taskcluster/ac_taskgraph/target_tasks.py
+++ b/taskcluster/ac_taskgraph/target_tasks.py
@@ -2,7 +2,22 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-from taskgraph.target_tasks import _target_task, filter_for_tasks_for
+import os
+from redo import retry
+
+from taskgraph.target_tasks import _target_task
+from taskgraph.util.taskcluster import find_task_id
+
+
+def index_exists(index_path, reason=""):
+ print(f"Looking for existing index {index_path} {reason}...")
+ try:
+ task_id = find_task_id(index_path)
+ print(f"Index {index_path} exists: taskId {task_id}")
+ return True
+ except KeyError:
+ print(f"Index {index_path} doesn't exist.")
+ return False
@_target_task("nightly")
@@ -10,6 +25,19 @@ def target_tasks_nightly(full_task_graph, parameters, graph_config):
def filter(task, parameters):
return task.attributes.get("build-type", "") == "nightly"
+ index_path = (
+ f"{graph_config['trust-domain']}.v2.{parameters['project']}.branch."
+ f"{parameters['head_ref']}.revision.{parameters['head_rev']}.taskgraph.decision-nightly"
+ )
+ if os.environ.get("MOZ_AUTOMATION") and retry(
+ index_exists,
+ args=(index_path,),
+ kwargs={
+ "reason": "to avoid triggering multiple nightlies off the same revision",
+ },
+ ):
+ return []
+
return [l for l, t in full_task_graph.tasks.items() if filter(t, parameters)]
@@ -19,7 +47,10 @@ def filter(task, parameters):
# Mark-as-shipped is always red on github-release and it confuses people.
# This task cannot be green if we kick off a release through github-releases, so
# let's exlude that task there.
- if task.kind == "mark-as-shipped" and parameters["tasks_for"] == "github-release":
+ if (
+ task.kind == "mark-as-shipped"
+ and parameters["tasks_for"] == "github-release"
+ ):
return False
return task.attributes.get("build-type", "") == "release"
diff --git a/taskcluster/requirements.in b/taskcluster/requirements.in
index 01ae542a93d..578e3cc737a 100644
--- a/taskcluster/requirements.in
+++ b/taskcluster/requirements.in
@@ -2,4 +2,5 @@
# https://taskcluster-taskgraph.readthedocs.io/en/latest/howto/bootstrap-taskgraph.html
mozilla-version
+redo
taskcluster-taskgraph
diff --git a/taskcluster/test/params/fork-push.yml b/taskcluster/test/params/fork-push.yml
new file mode 100644
index 00000000000..e2b76f08eb3
--- /dev/null
+++ b/taskcluster/test/params/fork-push.yml
@@ -0,0 +1,24 @@
+base_repository: https://github.com/JohanLorenzo/android-components
+base_rev: 77293b6bb9624749aa421e627f812613aa982557
+build_date: 1570437923
+do_not_optimize: []
+existing_tasks: {}
+filters:
+- target_tasks_method
+head_ref: refs/heads/some-branch
+head_repository: https://github.com/JohanLorenzo/android-components
+head_rev: f8c343141bab0467aa8faf41d515b2c9d3273c2e
+head_tag: ''
+level: '1'
+moz_build_date: '20191007084523'
+optimize_target_tasks: true
+owner: jlorenzo@mozilla.com
+project: android-components
+pull_request_number: null
+pushdate: 0
+pushlog_id: '0'
+repository_type: git
+target_tasks_method: default
+tasks_for: github-push
+version: '90.0.0'
+next_version: '90.0.1'
diff --git a/taskcluster/test/params/fork-release.yml b/taskcluster/test/params/fork-release.yml
new file mode 100644
index 00000000000..9dae23ed879
--- /dev/null
+++ b/taskcluster/test/params/fork-release.yml
@@ -0,0 +1,24 @@
+base_repository: https://github.com/JohanLorenzo/android-components
+base_rev: UNDEFINED
+build_date: 1569932069
+do_not_optimize: []
+existing_tasks: {}
+filters:
+- target_tasks_method
+head_ref: master
+head_repository: https://github.com/JohanLorenzo/android-components
+head_rev: 5ce0cc79c8cb2d6479d8b297d6e09238ec730fbf
+head_tag: v15.0.0
+level: '1'
+moz_build_date: '20191001121429'
+optimize_target_tasks: true
+owner: JohanLorenzo@users.noreply.github.com
+project: android-components
+pull_request_number: null
+pushdate: 0
+pushlog_id: '0'
+repository_type: git
+target_tasks_method: release
+tasks_for: github-release
+version: '90.0.0'
+next_version: '90.0.1'
diff --git a/taskcluster/test/params/main-repo-cron-nightly.yml b/taskcluster/test/params/main-repo-cron-nightly.yml
new file mode 100644
index 00000000000..e9752174e44
--- /dev/null
+++ b/taskcluster/test/params/main-repo-cron-nightly.yml
@@ -0,0 +1,24 @@
+base_repository: https://github.com/mozilla-mobile/android-components
+base_rev: UNDEFINED
+build_date: 1570280464
+do_not_optimize: []
+existing_tasks: {}
+filters:
+- target_tasks_method
+head_ref: master
+head_repository: https://github.com/mozilla-mobile/android-components
+head_rev: 79636afc6ae17f83f634e8a890ba73097954dd0e
+head_tag: ''
+level: '3'
+moz_build_date: '20191005130104'
+optimize_target_tasks: true
+owner: cron@noreply.mozilla.org
+project: android-components
+pull_request_number: null
+pushdate: 0
+pushlog_id: '0'
+repository_type: git
+target_tasks_method: nightly
+tasks_for: cron
+version: '90.0.0'
+next_version: '90.0.1'
diff --git a/taskcluster/test/params/main-repo-pull-request.yml b/taskcluster/test/params/main-repo-pull-request.yml
new file mode 100644
index 00000000000..55f1019475d
--- /dev/null
+++ b/taskcluster/test/params/main-repo-pull-request.yml
@@ -0,0 +1,24 @@
+base_repository: https://github.com/mozilla-mobile/android-components
+base_rev: 0cd21fad1a7bfa85ff889bc242265353f968918a
+build_date: 1570203237
+do_not_optimize: []
+existing_tasks: {}
+filters:
+- target_tasks_method
+head_ref: migrate-build-release
+head_repository: https://github.com/JohanLorenzo/android-components
+head_rev: 1bc9e25e7019aa3b209d84e08e54eb26cb1a14b4
+head_tag: ''
+level: '1'
+moz_build_date: '20191004153357'
+optimize_target_tasks: true
+owner: JohanLorenzo@users.noreply.github.com
+project: android-components
+pull_request_number: 8039
+pushdate: 0
+pushlog_id: '0'
+repository_type: git
+target_tasks_method: default
+tasks_for: github-pull-request
+version: '90.0.0'
+next_version: '90.0.1'
diff --git a/taskcluster/test/params/main-repo-push-bors.yml b/taskcluster/test/params/main-repo-push-bors.yml
new file mode 100644
index 00000000000..6d20389edf6
--- /dev/null
+++ b/taskcluster/test/params/main-repo-push-bors.yml
@@ -0,0 +1,24 @@
+base_repository: https://github.com/mozilla-mobile/android-components
+base_rev: '0000000000000000000000000000000000000000'
+build_date: 1570436714
+do_not_optimize: []
+existing_tasks: {}
+filters:
+- target_tasks_method
+head_ref: refs/heads/staging
+head_repository: https://github.com/mozilla-mobile/android-components
+head_rev: f8c343141bab0467aa8faf41d515b2c9d3273c2e
+head_tag: ''
+level: '3'
+moz_build_date: '20191007082514'
+optimize_target_tasks: true
+owner: skaspari+mozlando@mozilla.com
+project: android-components
+pull_request_number: null
+pushdate: 0
+pushlog_id: '0'
+repository_type: git
+target_tasks_method: default
+tasks_for: github-push
+version: '90.0.0'
+next_version: '90.0.1'
diff --git a/taskcluster/test/params/main-repo-push-main.yml b/taskcluster/test/params/main-repo-push-main.yml
new file mode 100644
index 00000000000..b1bfea9de8d
--- /dev/null
+++ b/taskcluster/test/params/main-repo-push-main.yml
@@ -0,0 +1,24 @@
+base_repository: https://github.com/mozilla-mobile/android-components
+base_rev: 77293b6bb9624749aa421e627f812613aa982557
+build_date: 1570437923
+do_not_optimize: []
+existing_tasks: {}
+filters:
+- target_tasks_method
+head_ref: refs/heads/main
+head_repository: https://github.com/mozilla-mobile/android-components
+head_rev: f8c343141bab0467aa8faf41d515b2c9d3273c2e
+head_tag: ''
+level: '3'
+moz_build_date: '20191007084523'
+optimize_target_tasks: true
+owner: skaspari+mozlando@mozilla.com
+project: android-components
+pull_request_number: null
+pushdate: 0
+pushlog_id: '0'
+repository_type: git
+target_tasks_method: default
+tasks_for: github-push
+version: '90.0.0'
+next_version: '90.0.1'
diff --git a/taskcluster/test/params/main-repo-release.yml b/taskcluster/test/params/main-repo-release.yml
new file mode 100644
index 00000000000..766b9ddfb7b
--- /dev/null
+++ b/taskcluster/test/params/main-repo-release.yml
@@ -0,0 +1,24 @@
+base_repository: https://github.com/mozilla-mobile/android-components
+base_rev: UNDEFINED
+build_date: 1569932069
+do_not_optimize: []
+existing_tasks: {}
+filters:
+- target_tasks_method
+head_ref: master
+head_repository: https://github.com/mozilla-mobile/android-components
+head_rev: 5ce0cc79c8cb2d6479d8b297d6e09238ec730fbf
+head_tag: v15.0.0
+level: '3'
+moz_build_date: '20191001121429'
+optimize_target_tasks: true
+owner: pocmo@users.noreply.github.com
+project: android-components
+pull_request_number: null
+pushdate: 0
+pushlog_id: '0'
+repository_type: git
+target_tasks_method: release
+tasks_for: github-release
+version: '90.0.0'
+next_version: '90.0.1'