brizental pushed to branch main at The Tor Project / Applications / tor-browser-build
Commits:
-
df7c4ade
by Beatriz Rizental at 2025-06-12T09:12:15+02:00
13 changed files:
- projects/android-toolchain/config
- projects/application-services/a-s-noop.diff
- โ projects/application-services/bug40485-nimbus-fml-reproducibility.diff
- projects/application-services/build
- projects/application-services/config
- projects/application-services/glean-noop.diff
- projects/application-services/gradle-dependencies-list.txt
- projects/application-services/list_toolchain_updates_checks
- projects/application-services/local-repository.diff
- โ projects/application-services/ohttp-no-git.diff
- projects/glean/config
- projects/gradle/config
- projects/uniffi-rs/config
Changes:
1 | 1 | # vim: filetype=yaml sw=2
|
2 | 2 | # FIXME: Rework this whole mess
|
3 | 3 | filename: '[% project %]-[% c("version") %]-[% c("var/build_id") %].tar.[% c("compress_tar") %]'
|
4 | -version: '34.0.0'
|
|
4 | +version: 36.0.0
|
|
5 | 5 | var:
|
6 | 6 | setup: |
|
7 | 7 | mkdir -p /var/tmp/dist
|
... | ... | @@ -29,39 +29,39 @@ var: |
29 | 29 | export PATH=$PATH:$GRADLE_HOME/bin
|
30 | 30 | [% END -%]
|
31 | 31 | google_repo: https://dl.google.com/android/repository
|
32 | - android_api_level: 34
|
|
33 | - android_release_dir: android-14
|
|
34 | - android_platform_revision: '03'
|
|
35 | - android_ndk_version: 26
|
|
36 | - android_ndk_revision: c
|
|
37 | - android_ndk_version_build: 26.2.11394342
|
|
32 | + android_api_level: 36
|
|
33 | + android_release_dir: android-16
|
|
34 | + android_platform_revision: '01'
|
|
35 | + android_ndk_version: 28
|
|
36 | + android_ndk_revision: b
|
|
37 | + android_ndk_version_build: 28.1.13356709
|
|
38 | 38 | # We need the following two variables for get_build_tools, used by signing
|
39 | 39 | # scripts.
|
40 | - build_tools_version: 34
|
|
41 | - build_tools_filename: 'build-tools_r[% c("var/build_tools_version") %]-linux.zip'
|
|
42 | - build_tools_sha512sum: c28dd52f8eca82996726905617f3cb4b0f0aee1334417b450d296991d7112cab1288f5fd42c48a079ba6788218079f81caa3e3e9108e4a6f27163a1eb7f32bd7
|
|
43 | - commandlinetools_version: 11076708
|
|
44 | - commandlinetools_version_string: 12.0
|
|
40 | + build_tools_version: 36
|
|
41 | + build_tools_filename: 'build-tools_r[% c("var/build_tools_version") %]_linux.zip'
|
|
42 | + build_tools_sha512sum: 277c08c2dcced3c1cc46ce0349e18adc6d6d4b8739868eab5d469f9fb4e9c6b79aa9d2a6592cfc5db0ccb8690fcc75a44db4b18b03dcf349efd0eb54025ef5ca
|
|
43 | + commandlinetools_version: 13114758
|
|
44 | + commandlinetools_version_string: 19.0
|
|
45 | 45 | input_files:
|
46 | 46 | # Hashes can be compared with https://gitlab.com/fdroid/android-sdk-transparency-log/-/blob/master/checksums.json
|
47 | 47 | - URL: '[% c("var/google_repo") %]/commandlinetools-linux-[% c("var/commandlinetools_version") %]_latest.zip'
|
48 | 48 | name: android_commandlinetools
|
49 | - sha256sum: 2d2d50857e4eb553af5a6dc3ad507a17adf43d115264b1afc116f95c92e5e258
|
|
49 | + sha256sum: 7ec965280a073311c339e571cd5de778b9975026cfcbe79f2b1cdcb1e15317ee
|
|
50 | 50 | - URL: '[% c("var/google_repo") %]/android-ndk-r[% c("var/android_ndk_version") %][% c("var/android_ndk_revision") %]-linux.zip'
|
51 | 51 | name: android_ndk_compiler
|
52 | - sha256sum: 6d6e659834d28bb24ba7ae66148ad05115ebbad7dabed1af9b3265674774fcf6
|
|
52 | + sha256sum: e9f2759862cecfd48c20bbb7d8cfedbb020f4d91b5f78d9a2fc106f7db3c27ed
|
|
53 | 53 | - URL: '[% c("var/google_repo") %]/[% c("var/build_tools_filename") %]'
|
54 | 54 | name: build_tools
|
55 | 55 | sha512sum: '[% c("var/build_tools_sha512sum") %]'
|
56 | - - URL: '[% c("var/google_repo") %]/platform-[% c("var/android_api_level") %]-ext7_r[% c("var/android_platform_revision") %].zip'
|
|
56 | + - URL: '[% c("var/google_repo") %]/platform-[% c("var/android_api_level") %]_r[% c("var/android_platform_revision") %].zip'
|
|
57 | 57 | name: platform
|
58 | - sha256sum: 16fdb74c55e59ae3ef52def135aec713508467bd56d7dabcd8c9be31fa8b20f3
|
|
58 | + sha256sum: a5273f7d68de0a6a58032b26c24965634bc14ed3839e70a3a9759369f3f6c02a
|
|
59 | 59 | # ./mach bootstrap is fetching the latest version, so it does not seem to
|
60 | 60 | # matter which particular version we are using. Pin to the one fitting best to
|
61 | 61 | # SDK version/build-tools version.
|
62 | 62 | - URL: '[% c("var/google_repo") %]/platform-tools_r[% c("version") %]-linux.zip'
|
63 | 63 | name: platform_tools
|
64 | - sha256sum: 8137c2834dea05cb64c1a8bc041ea00fcd43e3a8a29429ad4f25b8ee51efebf6
|
|
64 | + sha256sum: 0ead642c943ffe79701fccca8f5f1c69c4ce4f43df2eefee553f6ccb27cbfbe8
|
|
65 | 65 | steps:
|
66 | 66 | # The get_build_tools step is used by tools/signing/android-signing
|
67 | 67 | get_build_tools:
|
1 | +diff --git a/build-scripts/component-common.gradle b/build-scripts/component-common.gradle
|
|
2 | +index a126341b0..3b3579290 100644
|
|
3 | +--- a/build-scripts/component-common.gradle
|
|
4 | ++++ b/build-scripts/component-common.gradle
|
|
5 | +@@ -111,16 +111,30 @@ ext.configureUniFFIBindgen = { crateName ->
|
|
6 | + commandLine "${mozconfig.topobjdir}/dist/host/bin/embedded-uniffi-bindgen", 'generate', '--library', libraryPath, "--crate", crateName, '--language', 'kotlin', '--out-dir', uniffiOutDir.get(), '--no-format'
|
|
7 | + }
|
|
8 | + } else {
|
|
9 | +- def libraryPath = megazordNative.asFileTree.matching {
|
|
10 | +- include "${nativeRustTarget}/libmegazord.*"
|
|
11 | +- }.singleFile
|
|
12 | +-
|
|
13 | +- if (libraryPath == null) {
|
|
14 | +- throw new GradleException("libmegazord dynamic library path not found")
|
|
15 | +- }
|
|
16 | +- exec {
|
|
17 | +- workingDir project.rootDir
|
|
18 | +- commandLine '/usr/bin/env', 'cargo', 'uniffi-bindgen', 'generate', '--library', libraryPath, "--crate", crateName, '--language', 'kotlin', '--out-dir', uniffiOutDir.get(), '--no-format'
|
|
19 | ++ if (crateName.toString().contains("places")) {
|
|
20 | ++ def libraryPath = megazordNative.asFileTree.matching {
|
|
21 | ++ include "${nativeRustTarget}/libmegazord.*"
|
|
22 | ++ }.singleFile
|
|
23 | ++
|
|
24 | ++ if (libraryPath == null) {
|
|
25 | ++ throw new GradleException("libmegazord dynamic library path not found")
|
|
26 | ++ }
|
|
27 | ++ exec {
|
|
28 | ++ workingDir project.rootDir
|
|
29 | ++ commandLine '/usr/bin/env', 'cargo', 'uniffi-bindgen', 'generate', '--library', libraryPath, "--crate", crateName, '--language', 'kotlin', '--out-dir', uniffiOutDir.get(), '--no-format'
|
|
30 | ++ }
|
|
31 | ++ } else {
|
|
32 | ++ def libraryPath = "${project.rootDir}/megazords/full/target/debug/libmegazord.so"
|
|
33 | ++ exec {
|
|
34 | ++ workingDir project.rootDir
|
|
35 | ++ def command = ["${rootProject.projectDir}/uniffi-rs/uniffi-bindgen", 'generate', '--library', libraryPath, "--crate", crateName, '--language', 'kotlin', '--out-dir', uniffiOutDir.get(), '--no-format']
|
|
36 | ++ println "Executing command: ${command.join(' ')}"
|
|
37 | ++ commandLine command
|
|
38 | ++
|
|
39 | ++ // Print both stdout and stderr to Gradle's console
|
|
40 | ++ standardOutput = System.out
|
|
41 | ++ errorOutput = System.err
|
|
42 | ++ }
|
|
43 | + }
|
|
44 | + }
|
|
45 | + }
|
|
1 | 46 | diff --git a/components/fxa-client/android/src/main/java/mozilla/appservices/fxaclient/Config.kt b/components/fxa-client/android/src/main/java/mozilla/appservices/fxaclient/Config.kt
|
2 | 47 | index 78c16dd0a..d2615fa74 100644
|
3 | 48 | --- a/components/fxa-client/android/src/main/java/mozilla/appservices/fxaclient/Config.kt
|
... | ... | @@ -9,10 +54,10 @@ index 78c16dd0a..d2615fa74 100644 |
9 | 54 | + is FxaServer.__NOOP -> ""
|
10 | 55 | }
|
11 | 56 | diff --git a/components/nimbus/android/src/main/java/org/mozilla/experiments/nimbus/Nimbus.kt b/components/nimbus/android/src/main/java/org/mozilla/experiments/nimbus/Nimbus.kt
|
12 | -index 8c05be9cf..6bf2ec15d 100644
|
|
57 | +index 376ef90d9..d80eea50f 100644
|
|
13 | 58 | --- a/components/nimbus/android/src/main/java/org/mozilla/experiments/nimbus/Nimbus.kt
|
14 | 59 | +++ b/components/nimbus/android/src/main/java/org/mozilla/experiments/nimbus/Nimbus.kt
|
15 | -@@ -532,6 +532,8 @@ open class Nimbus(
|
|
60 | +@@ -535,6 +535,8 @@ open class Nimbus(
|
|
16 | 61 | ),
|
17 | 62 | )
|
18 | 63 | }
|
... | ... | @@ -22,10 +67,10 @@ index 8c05be9cf..6bf2ec15d 100644 |
22 | 67 | }
|
23 | 68 | }
|
24 | 69 | diff --git a/megazords/full/Cargo.toml b/megazords/full/Cargo.toml
|
25 | -index 75f44a812..a51c0643b 100644
|
|
70 | +index c5e9eea19..ce899aac1 100644
|
|
26 | 71 | --- a/megazords/full/Cargo.toml
|
27 | 72 | +++ b/megazords/full/Cargo.toml
|
28 | -@@ -9,21 +9,21 @@ license = "MPL-2.0"9345a6ea
|
|
73 | +@@ -9,24 +9,24 @@ license = "MPL-2.0"
|
|
29 | 74 | crate-type = ["cdylib"]
|
30 | 75 | |
31 | 76 | [dependencies]
|
... | ... | @@ -49,6 +94,8 @@ index 75f44a812..a51c0643b 100644 |
49 | 94 | -crashtest = { path = "../../components/crashtest" }
|
50 | 95 | -error-support = { path = "../../components/support/error" }
|
51 | 96 | -suggest = { path = "../../components/suggest" }
|
97 | +-search = { path = "../../components/search" }
|
|
98 | +-tracing-support = { path = "../../components/support/tracing" }
|
|
52 | 99 | +# push = { path = "../../components/push" }
|
53 | 100 | +# remote_settings = { path = "../../components/remote_settings" }
|
54 | 101 | +# rust-log-forwarder = { path = "../../components/support/rust-log-forwarder" }
|
... | ... | @@ -58,13 +105,16 @@ index 75f44a812..a51c0643b 100644 |
58 | 105 | +# crashtest = { path = "../../components/crashtest" }
|
59 | 106 | +# error-support = { path = "../../components/support/error" }
|
60 | 107 | +# suggest = { path = "../../components/suggest" }
|
108 | ++# search = { path = "../../components/search" }
|
|
109 | ++# tracing-support = { path = "../../components/support/tracing" }
|
|
61 | 110 | |
62 | 111 | lazy_static = "1.4"
|
112 | + init_rust_components = { path = "../../components/init_rust_components" }
|
|
63 | 113 | diff --git a/megazords/full/src/lib.rs b/megazords/full/src/lib.rs
|
64 | -index 01d1be98b..a68eb647f 100644
|
|
114 | +index 4b6ba4499..e4fde58ae 100644
|
|
65 | 115 | --- a/megazords/full/src/lib.rs
|
66 | 116 | +++ b/megazords/full/src/lib.rs
|
67 | -@@ -8,20 +8,20 @@
|
|
117 | +@@ -8,24 +8,24 @@
|
|
68 | 118 | use std::ffi::CString;
|
69 | 119 | use std::os::raw::c_char;
|
70 | 120 | |
... | ... | @@ -72,46 +122,37 @@ index 01d1be98b..a68eb647f 100644 |
72 | 122 | -pub use crashtest;
|
73 | 123 | -pub use error_support;
|
74 | 124 | -pub use fxa_client;
|
125 | +-pub use init_rust_components;
|
|
75 | 126 | -pub use logins;
|
127 | +-pub use merino;
|
|
76 | 128 | -pub use nimbus;
|
77 | 129 | +// pub use autofill;
|
78 | 130 | +// pub use crashtest;
|
79 | 131 | +// pub use error_support;
|
80 | 132 | +// pub use fxa_client;
|
133 | ++// pub use init_rust_components;
|
|
81 | 134 | +// pub use logins;
|
135 | ++// pub use merino;
|
|
82 | 136 | +// pub use nimbus;
|
83 | 137 | pub use places;
|
84 | 138 | -pub use push;
|
85 | 139 | -pub use remote_settings;
|
86 | 140 | -pub use rust_log_forwarder;
|
141 | +-pub use search;
|
|
87 | 142 | -pub use suggest;
|
88 | 143 | -pub use sync_manager;
|
89 | 144 | -pub use tabs;
|
145 | +-pub use tracing_support;
|
|
90 | 146 | -pub use viaduct;
|
91 | 147 | +// pub use push;
|
92 | 148 | +// pub use remote_settings;
|
93 | 149 | +// pub use rust_log_forwarder;
|
150 | ++// pub use search;
|
|
94 | 151 | +// pub use suggest;
|
95 | 152 | +// pub use sync_manager;
|
96 | 153 | +// pub use tabs;
|
154 | ++// pub use tracing_support;
|
|
97 | 155 | +// pub use viaduct;
|
98 | 156 | // TODO: Uncomment this code when webext-storage component is integrated in android
|
99 | 157 | // pub use webext_storage;
|
100 | 158 | |
101 | -diff --git a/publish.gradle b/publish.gradle
|
|
102 | -index 71f5d55b9..659e26489 100644
|
|
103 | ---- a/publish.gradle
|
|
104 | -+++ b/publish.gradle
|
|
105 | -@@ -194,7 +194,11 @@ ext.configureUniFFIBindgen = { udlFilePath ->
|
|
106 | - def uniffiGeneratedPath = "generated/source/uniffi/${variant.name}/java"
|
|
107 | - def t = tasks.register("generate${variant.name.capitalize()}UniFFIBindings", Exec) {
|
|
108 | - workingDir project.rootDir
|
|
109 | -- commandLine '/usr/bin/env', 'cargo', 'uniffi-bindgen', 'generate', "${project.projectDir}/${udlFilePath}", '--language', 'kotlin', '--out-dir', "${buildDir}/${uniffiGeneratedPath}"
|
|
110 | -+ if (udlFilePath.contains("places")) {
|
|
111 | -+ commandLine '/usr/bin/env', 'cargo', 'uniffi-bindgen', 'generate', "${project.projectDir}/${udlFilePath}", '--language', 'kotlin', '--out-dir', "${buildDir}/${uniffiGeneratedPath}"
|
|
112 | -+ } else {
|
|
113 | -+ commandLine '/usr/bin/env', "${rootProject.projectDir}/uniffi-rs/uniffi-bindgen", 'generate', "${project.projectDir}/${udlFilePath}", '--language', 'kotlin', '--out-dir', "${buildDir}/${uniffiGeneratedPath}"
|
|
114 | -+ }
|
|
115 | - outputs.dir "${buildDir}/${uniffiGeneratedPath}"
|
|
116 | - // Re-generate if the interface definition changes.
|
|
117 | - inputs.file "${project.projectDir}/${udlFilePath}" |
1 | -diff --git a/components/support/nimbus-fml/src/intermediate_representation.rs b/components/support/nimbus-fml/src/intermediate_representation.rs
|
|
2 | -index 97d545672..249406a0c 100644
|
|
3 | ---- a/components/support/nimbus-fml/src/intermediate_representation.rs
|
|
4 | -+++ b/components/support/nimbus-fml/src/intermediate_representation.rs
|
|
5 | -@@ -237,10 +237,10 @@ pub struct FeatureManifest {
|
|
6 | - pub(crate) about: AboutBlock,
|
|
7 | - |
|
8 | - #[serde(default)]
|
|
9 | -- pub(crate) imported_features: HashMap<ModuleId, BTreeSet<String>>,
|
|
10 | -+ pub(crate) imported_features: BTreeMap<ModuleId, BTreeSet<String>>,
|
|
11 | - |
|
12 | - #[serde(default)]
|
|
13 | -- pub(crate) all_imports: HashMap<ModuleId, FeatureManifest>,
|
|
14 | -+ pub(crate) all_imports: BTreeMap<ModuleId, FeatureManifest>,
|
|
15 | - }
|
|
16 | - |
|
17 | - impl TypeFinder for FeatureManifest {
|
|
18 | -diff --git a/components/support/nimbus-fml/src/parser.rs b/components/support/nimbus-fml/src/parser.rs
|
|
19 | -index 49cace525..cdf692b86 100644
|
|
20 | ---- a/components/support/nimbus-fml/src/parser.rs
|
|
21 | -+++ b/components/support/nimbus-fml/src/parser.rs
|
|
22 | -@@ -223,7 +223,7 @@ impl Parser {
|
|
23 | - &self,
|
|
24 | - current: &FilePath,
|
|
25 | - channel: Option<&str>,
|
|
26 | -- imports: &mut HashMap<ModuleId, FeatureManifest>,
|
|
27 | -+ imports: &mut BTreeMap<ModuleId, FeatureManifest>,
|
|
28 | - // includes: &mut HashSet<ModuleId>,
|
|
29 | - ) -> Result<ModuleId> {
|
|
30 | - let id = current.try_into()?;
|
|
31 | -@@ -253,7 +253,7 @@ impl Parser {
|
|
32 | - // This loop does the work of merging the default blocks back into the imported manifests.
|
|
33 | - // We'll then attach all the manifests to the root (i.e. the one we're generating code for today), in `imports`.
|
|
34 | - // We associate only the feature ids with the manifest we're loading in this method.
|
|
35 | -- let mut imported_feature_id_map = HashMap::new();
|
|
36 | -+ let mut imported_feature_id_map = BTreeMap::new();
|
|
37 | - |
|
38 | - for block in &frontend.imports {
|
|
39 | - // 1. Load the imported manifests in to the hash map.
|
|
40 | -@@ -328,7 +328,7 @@ impl Parser {
|
|
41 | - &self,
|
|
42 | - channel: Option<&str>,
|
|
43 | - ) -> Result<FeatureManifest, FMLError> {
|
|
44 | -- let mut manifests = HashMap::new();
|
|
45 | -+ let mut manifests = BTreeMap::new();
|
|
46 | - let id = self.load_imports(&self.source, channel, &mut manifests)?;
|
|
47 | - let mut fm = manifests
|
|
48 | - .remove(&id) |
... | ... | @@ -6,8 +6,8 @@ |
6 | 6 | gradle_tarfile => c("input_files_by_name/gradle"),
|
7 | 7 | }) %]
|
8 | 8 | pushd /var/tmp/dist/android-toolchain/android-sdk-linux/build-tools/
|
9 | -unzip $rootdir/'[% c("input_files_by_name/build_tools_30") %]'
|
|
10 | -mv android-11 30.0.3
|
|
9 | +unzip $rootdir/'[% c("input_files_by_name/build_tools_35") %]'
|
|
10 | +mv android-15 35.0
|
|
11 | 11 | popd
|
12 | 12 | |
13 | 13 | distdir=/var/tmp/dist/[% project %]
|
... | ... | @@ -73,6 +73,19 @@ tar -xf $rootdir/[% c('input_files_by_name/uniffi-rs') %] |
73 | 73 | # latest versions of dependencies sometimes.
|
74 | 74 | sed -i '$ s/$/-TORBROWSER/' version.txt
|
75 | 75 | |
76 | +pushd libs
|
|
77 | +ln -s $rootdir/[% c("input_files_by_name/nss") %] ./
|
|
78 | +ln -s $rootdir/bug_13028.patch
|
|
79 | +patch -p2 < $rootdir/apply-bug-13028.diff
|
|
80 | +patch -p2 < $rootdir/no-ndk-lookup.diff
|
|
81 | +./build-all.sh desktop
|
|
82 | +./build-all.sh android
|
|
83 | +popd
|
|
84 | + |
|
85 | +pushd megazords/full
|
|
86 | +NSS_DIR=$(pwd)/../../libs/desktop/linux-x86-64/nss cargo build --target-dir=$(pwd)/target
|
|
87 | +popd
|
|
88 | + |
|
76 | 89 | cp $rootdir/cargo-no-build.sh megazords/full/android/
|
77 | 90 | chmod +x megazords/full/android/cargo-no-build.sh
|
78 | 91 | patch -p1 < $rootdir/a-s-noop.diff
|
... | ... | @@ -83,15 +96,6 @@ cp $builddir/uniffi-rs/uniffi-bindgen glean-core/android-native/ |
83 | 96 | patch -p1 < $rootdir/glean-noop.diff
|
84 | 97 | popd
|
85 | 98 | |
86 | -pushd libs
|
|
87 | -ln -s $rootdir/[% c("input_files_by_name/nss") %] ./
|
|
88 | -ln -s $rootdir/bug_13028.patch
|
|
89 | -patch -p2 < $rootdir/apply-bug-13028.diff
|
|
90 | -patch -p2 < $rootdir/no-ndk-lookup.diff
|
|
91 | -./build-all.sh desktop
|
|
92 | -./build-all.sh android
|
|
93 | -popd
|
|
94 | - |
|
95 | 99 | [% IF c('var/fetch_gradle_dependencies') %]
|
96 | 100 | # XXX: `assemble` is still not enough to see all fetched dependencies via
|
97 | 101 | # Gradle's --debug. See: tor-browser-build#40056.
|
... | ... | @@ -104,8 +108,6 @@ popd |
104 | 108 | export LC_ALL=C.UTF-8
|
105 | 109 | export LANG=C.UTF-8
|
106 | 110 | patch -p1 < $rootdir/local-repository.diff
|
107 | - patch -p1 < $rootdir/ohttp-no-git.diff
|
|
108 | - patch -p1 < $rootdir/bug40485-nimbus-fml-reproducibility.diff
|
|
109 | 111 | patch -p1 < $rootdir/offline-nimbus-fml.diff
|
110 | 112 | patch -p1 < $rootdir/41422-disable-viaduct.diff
|
111 | 113 | gradle_flags="--offline --no-daemon"
|
1 | 1 | # vim: filetype=yaml sw=2
|
2 | -version: 128.0.1
|
|
3 | -git_hash: 0e4777f4133a98f44bca164fcf0406e8f706dbe4
|
|
2 | +version: 140.0
|
|
3 | +git_hash: 8ee6cb6a23f96ff8e2161926441aea72d6f09249
|
|
4 | 4 | git_url: https://github.com/mozilla/application-services
|
5 | 5 | git_submodule: 1
|
6 | 6 | container:
|
... | ... | @@ -8,11 +8,11 @@ container: |
8 | 8 | |
9 | 9 | var:
|
10 | 10 | # This should be updated when the list of gradle dependencies is changed.
|
11 | - gradle_dependencies_version: 11
|
|
12 | - gradle_version: 8.8
|
|
13 | - glean_parser: 14.0.1
|
|
14 | - nss_version: '3.101'
|
|
15 | - nspr_version: '4.35'
|
|
11 | + gradle_dependencies_version: 12
|
|
12 | + gradle_version: 8.13
|
|
13 | + glean_parser: 17.1.0
|
|
14 | + nss_version: '3.110'
|
|
15 | + nspr_version: '4.36'
|
|
16 | 16 | |
17 | 17 | steps:
|
18 | 18 | build:
|
... | ... | @@ -21,7 +21,7 @@ steps: |
21 | 21 | # Due to some issue in application-service causing non matching
|
22 | 22 | # builds when build time differ a lot, we need to do periodic rebuilds:
|
23 | 23 | # https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/merge_requests/937#note_3009480
|
24 | - rebuild_date: '2024-09-12'
|
|
24 | + rebuild_date: '2025-06-12'
|
|
25 | 25 | arch_deps:
|
26 | 26 | # Needed to build NSS
|
27 | 27 | - gyp
|
... | ... | @@ -43,16 +43,16 @@ steps: |
43 | 43 | - project: uniffi-rs
|
44 | 44 | name: uniffi-rs
|
45 | 45 | pkg_type: build
|
46 | - # Only Application Services currently requires build tools 30.0.3.
|
|
46 | + # Only Application Services currently requires build tools 35.
|
|
47 | 47 | # So, download them only here, rather than adding them to the shared
|
48 | 48 | # toolchain.
|
49 | - - URL: 'https://dl.google.com/android/repository/build-tools_r30.0.3-linux.zip'
|
|
50 | - name: build_tools_30
|
|
51 | - sha256sum: 24593500aa95d2f99fb4f10658aae7e65cb519be6cd33fa164f15f27f3c4a2d6
|
|
49 | + - URL: 'https://dl.google.com/android/repository/build-tools_r35_linux.zip'
|
|
50 | + name: build_tools_35
|
|
51 | + sha256sum: bd3a4966912eb8b30ed0d00b0cda6b6543b949d5ffe00bea54c04c81e1561d88
|
|
52 | 52 | # NSS version ans sha256 are in libs/build-all.sh.
|
53 | 53 | - URL: 'https://ftp.mozilla.org/pub/security/nss/releases/NSS_[% c("var/nss_version") | replace("\\.", "_") %]_RTM/src/nss-[% c("var/nss_version") %]-with-nspr-[% c("var/nspr_version") %].tar.gz'
|
54 | 54 | name: nss
|
55 | - sha256sum: 566faa9283ff3d9a7d6c44272df6e4330e3e06ca4e841a68840d31b27c9161c4
|
|
55 | + sha256sum: 96114bef9e9692dda6e7793da26fedef0dc0449c3644ebe1122464e599a39dc0
|
|
56 | 56 | - filename: 'gradle-dependencies-[% c("var/gradle_dependencies_version") %]'
|
57 | 57 | name: gradle-dependencies
|
58 | 58 | exec: '[% INCLUDE "fetch-gradle-dependencies" %]'
|
... | ... | @@ -65,19 +65,14 @@ steps: |
65 | 65 | project: application-services
|
66 | 66 | pkg_type: cargo_vendor
|
67 | 67 | norec:
|
68 | - sha256sum: 92ce1131b35bf78d86362670ba7e4930ecdd1117694996d7cce850e4860f90b6
|
|
68 | + sha256sum: 4cf0235b525b5ce1d8bcc40e9763a13fd0e79c773749b900b4d7420551cf5114
|
|
69 | 69 | - filename: local-repository.diff
|
70 | 70 | enable: '[% !c("var/fetch_gradle_dependencies") %]'
|
71 | 71 | - filename: gen_gradle_deps_file.sh
|
72 | 72 | enable: '[% c("var/fetch_gradle_dependencies") %]'
|
73 | 73 | - filename: bug_13028.patch
|
74 | 74 | - filename: apply-bug-13028.diff
|
75 | - # Delete when this patch is included upstream
|
|
76 | - - filename: bug40485-nimbus-fml-reproducibility.diff
|
|
77 | 75 | - filename: no-ndk-lookup.diff
|
78 | - # as-ohttp-client lists both the version for ohttp and a git repo + rev,
|
|
79 | - # but this breaks the vendoring for offline builds.
|
|
80 | - - filename: ohttp-no-git.diff
|
|
81 | 76 | - filename: offline-nimbus-fml.diff
|
82 | 77 | - filename: glean-noop.diff
|
83 | 78 | - filename: a-s-noop.diff
|
1 | 1 | diff --git a/glean-core/android-native/build.gradle b/glean-core/android-native/build.gradle
|
2 | -index 48769651..ade00ec3 100644
|
|
2 | +index 53716d523..d38af8320 100644
|
|
3 | 3 | --- a/glean-core/android-native/build.gradle
|
4 | 4 | +++ b/glean-core/android-native/build.gradle
|
5 | -@@ -57,6 +57,8 @@ android {
|
|
5 | +@@ -48,6 +48,8 @@ android {
|
|
6 | 6 | }
|
7 | 7 | |
8 | 8 | cargo {
|
... | ... | @@ -12,15 +12,15 @@ index 48769651..ade00ec3 100644 |
12 | 12 | module = '../bundle-android'
|
13 | 13 | |
14 | 14 | diff --git a/glean-core/android/build.gradle b/glean-core/android/build.gradle
|
15 | -index 3568e40b..05f28296 100644
|
|
15 | +index 7748378b4..5af06b1c3 100644
|
|
16 | 16 | --- a/glean-core/android/build.gradle
|
17 | 17 | +++ b/glean-core/android/build.gradle
|
18 | -@@ -221,7 +221,7 @@ android.libraryVariants.all { variant ->
|
|
19 | - def udlFilePath = "../src/glean.udl"
|
|
20 | - def t = tasks.register("generate${variant.name.capitalize()}UniFFIBindings", Exec) {
|
|
21 | - workingDir project.rootDir
|
|
22 | -- commandLine 'cargo', 'uniffi-bindgen', 'generate', '--no-format', "${project.projectDir}/${udlFilePath}", '--language', 'kotlin', '--out-dir', "${buildDir}/${uniffiGeneratedPath}"
|
|
23 | -+ commandLine '${rootDir}/glean-core/android-native/uniffi-bindgen', 'generate', '--no-format', "${project.projectDir}/${udlFilePath}", '--language', 'kotlin', '--out-dir', "${buildDir}/${uniffiGeneratedPath}"
|
|
24 | - outputs.dir "${buildDir}/${uniffiGeneratedPath}"
|
|
25 | - // Re-generate if the interface definition changes.
|
|
26 | - inputs.file "${project.projectDir}/../src/glean.udl" |
|
18 | +@@ -197,7 +197,7 @@ def generateUniffiBindings = tasks.register("generateUniffiBindings") {
|
|
19 | + doFirst {
|
|
20 | + exec {
|
|
21 | + workingDir project.rootDir
|
|
22 | +- commandLine 'cargo', 'uniffi-bindgen', 'generate', '--no-format', "${project.projectDir}/${udlFilePath}", '--language', 'kotlin', '--out-dir', UNIFFI_OUT_DIR.get()
|
|
23 | ++ commandLine '${rootDir}/glean-core/android-native/uniffi-bindgen', 'generate', '--no-format', "${project.projectDir}/${udlFilePath}", '--language', 'kotlin', '--out-dir', UNIFFI_OUT_DIR.get()
|
|
24 | + }
|
|
25 | + }
|
|
26 | + outputs.dir UNIFFI_OUT_DIR |
... | ... | @@ -8,7 +8,7 @@ if (m/^\\s*compileSdkVersion:\\s([^"]*),/) { |
8 | 8 | }
|
9 | 9 | EOF
|
10 | 10 | needed=$(cat build.gradle | perl -ne "$p")
|
11 | -current=34
|
|
11 | +current='[% pc("android-toolchain", "version") %]'
|
|
12 | 12 | check_update_needed compileSdkVersion "$needed" "$current"
|
13 | 13 | |
14 | 14 | |
... | ... | @@ -48,12 +48,12 @@ current='[% c("var/nss_version") %]-with-nspr-[% c("var/nspr_version") %]' |
48 | 48 | check_update_needed nss-nspr "$needed" "$current"
|
49 | 49 | |
50 | 50 | # uniffi
|
51 | -read -d '' p << 'EOF' || true
|
|
52 | -if (m/^\\s*uniffi\\s*=\\s*"([^"]*)"/) {
|
|
53 | - print $1;
|
|
54 | - exit;
|
|
55 | -}
|
|
56 | -EOF
|
|
57 | -needed=$(cat Cargo.toml | perl -ne "$p")
|
|
51 | +p='while (<>) {
|
|
52 | + if (m/^\s*uniffi\s*=\s*\{[^}]*version\s*=\s*"([^"]*)"/) {
|
|
53 | + print $1;
|
|
54 | + exit;
|
|
55 | + }
|
|
56 | +}'
|
|
57 | +needed=$(cat components/autofill/Cargo.toml | perl -ne "$p")
|
|
58 | 58 | current='[% pc("uniffi-rs", "version") %]'
|
59 | 59 | check_update_needed uniffi "$needed" "$current" |
1 | 1 | diff --git a/build.gradle b/build.gradle
|
2 | -index b22a0737..d335aa5b 100644
|
|
2 | +index bd516e58c..b30d552c9 100644
|
|
3 | 3 | --- a/build.gradle
|
4 | 4 | +++ b/build.gradle
|
5 | -@@ -39,6 +39,13 @@ buildscript {
|
|
6 | - ]
|
|
7 | -
|
|
5 | +@@ -14,6 +14,14 @@ buildscript {
|
|
6 | + }
|
|
7 | + |
|
8 | 8 | repositories {
|
9 | 9 | + maven {
|
10 | 10 | + url "file:///var/tmp/dist/gradle-dependencies"
|
... | ... | @@ -13,11 +13,12 @@ index b22a0737..d335aa5b 100644 |
13 | 13 | + mavenPom()
|
14 | 14 | + }
|
15 | 15 | + }
|
16 | ++
|
|
16 | 17 | mavenCentral()
|
17 | 18 | google()
|
18 | - jcenter()
|
|
19 | -@@ -88,6 +95,13 @@ apply plugin: 'de.undercouch.download'
|
|
20 | -
|
|
19 | + maven {
|
|
20 | +@@ -59,6 +67,14 @@ plugins {
|
|
21 | + |
|
21 | 22 | allprojects {
|
22 | 23 | repositories {
|
23 | 24 | + maven {
|
... | ... | @@ -27,11 +28,12 @@ index b22a0737..d335aa5b 100644 |
27 | 28 | + mavenPom()
|
28 | 29 | + }
|
29 | 30 | + }
|
31 | ++
|
|
30 | 32 | google()
|
31 | - jcenter()
|
|
33 | + mavenCentral()
|
|
32 | 34 | maven {
|
33 | 35 | diff --git a/settings.gradle b/settings.gradle
|
34 | -index f652bd02..8c30a368 100644
|
|
36 | +index 4117bc0d3..f1b028dad 100644
|
|
35 | 37 | --- a/settings.gradle
|
36 | 38 | +++ b/settings.gradle
|
37 | 39 | @@ -1,6 +1,19 @@
|
... | ... | @@ -52,37 +54,39 @@ index f652bd02..8c30a368 100644 |
52 | 54 | +}
|
53 | 55 | +
|
54 | 56 | import org.yaml.snakeyaml.Yaml
|
55 | -
|
|
56 | - includeBuild('tools/nimbus-gradle-plugin') {
|
|
57 | -@@ -14,6 +27,13 @@ buildscript {
|
|
58 | - classpath 'org.yaml:snakeyaml:2.0'
|
|
59 | - }
|
|
60 | - repositories {
|
|
61 | -+ maven {
|
|
62 | -+ url "file:///var/tmp/dist/gradle-dependencies"
|
|
63 | -+ metadataSources {
|
|
64 | -+ gradleMetadata()
|
|
65 | -+ mavenPom()
|
|
57 | + |
|
58 | + // We prefer `appServicesRootDir` over `rootDir` to help us on the path to the monorepo.
|
|
59 | +@@ -23,6 +36,14 @@ buildscript {
|
|
60 | + if (!gradle.root.hasProperty("mozconfig")) {
|
|
61 | + // in app-services
|
|
62 | + repositories {
|
|
63 | ++ maven {
|
|
64 | ++ url "file:///var/tmp/dist/gradle-dependencies"
|
|
65 | ++ metadataSources {
|
|
66 | ++ gradleMetadata()
|
|
67 | ++ mavenPom()
|
|
68 | ++ }
|
|
66 | 69 | + }
|
67 | -+ }
|
|
68 | - jcenter()
|
|
69 | - }
|
|
70 | - }
|
|
70 | ++
|
|
71 | + mavenCentral()
|
|
72 | + }
|
|
73 | + } else {
|
|
71 | 74 | diff --git a/tools/nimbus-gradle-plugin/settings.gradle b/tools/nimbus-gradle-plugin/settings.gradle
|
72 | -index 7db19be0..1f36b991 100644
|
|
75 | +index 7d907f057..c0d213503 100644
|
|
73 | 76 | --- a/tools/nimbus-gradle-plugin/settings.gradle
|
74 | 77 | +++ b/tools/nimbus-gradle-plugin/settings.gradle
|
75 | -@@ -8,6 +8,13 @@ buildscript {
|
|
76 | - classpath 'org.yaml:snakeyaml:2.0'
|
|
77 | - }
|
|
78 | - repositories {
|
|
79 | -+ maven {
|
|
80 | -+ url "file:///var/tmp/dist/gradle-dependencies"
|
|
81 | -+ metadataSources {
|
|
82 | -+ gradleMetadata()
|
|
83 | -+ mavenPom()
|
|
78 | +@@ -14,6 +14,14 @@ buildscript {
|
|
79 | + if (!gradle.root.hasProperty("mozconfig")) {
|
|
80 | + // in app-services
|
|
81 | + repositories {
|
|
82 | ++ maven {
|
|
83 | ++ url "file:///var/tmp/dist/gradle-dependencies"
|
|
84 | ++ metadataSources {
|
|
85 | ++ gradleMetadata()
|
|
86 | ++ mavenPom()
|
|
87 | ++ }
|
|
84 | 88 | + }
|
85 | -+ }
|
|
86 | - jcenter()
|
|
87 | - }
|
|
88 | - } |
|
89 | ++
|
|
90 | + mavenCentral()
|
|
91 | + }
|
|
92 | + } else { |
1 | -diff --git a/components/as-ohttp-client/Cargo.toml b/components/as-ohttp-client/Cargo.toml
|
|
2 | -index fd45a058b..b7070fc15 100644
|
|
3 | ---- a/components/as-ohttp-client/Cargo.toml
|
|
4 | -+++ b/components/as-ohttp-client/Cargo.toml
|
|
5 | -@@ -19,8 +19,8 @@ rusqlite = { workspace = true, features = ["bundled"] }
|
|
6 | - [dependencies.ohttp]
|
|
7 | - version = "0.4"
|
|
8 | - default-features = false
|
|
9 | --git = "https://github.com/martinthomson/ohttp.git"
|
|
10 | --rev = "fc3f4c787d1f6a6a87bf5194f7152cc906b02973"
|
|
11 | -+# git = "https://github.com/martinthomson/ohttp.git"
|
|
12 | -+# rev = "fc3f4c787d1f6a6a87bf5194f7152cc906b02973"
|
|
13 | - features = ["client", "server", "app-svc", "external-sqlite"]
|
|
14 | -
|
|
15 | - [build-dependencies] |
... | ... | @@ -19,13 +19,15 @@ var: |
19 | 19 | - torsocks
|
20 | 20 | glean_wheels_sha256sum:
|
21 | 21 | 14.0.1: 95f01d0e158ae7968680029b7d9c2908895e1d1ec1ba4e6a044648a05af4ee0c
|
22 | + 17.1.0: d96ef1995676fc3b838efb84283294befd5060ca64eea94fb67ae1f41d422664
|
|
22 | 23 | glean_wheels_url:
|
23 | 24 | 14.0.1: https://build-sources.tbb.torproject.org/glean-wheels-14.0.1.tar.xz
|
25 | + 17.1.0: https://build-sources.tbb.torproject.org/glean-wheels-17.1.0.tar.xz
|
|
24 | 26 | |
25 | 27 | steps:
|
26 | 28 | create_glean_deps_tarball:
|
27 | 29 | git_url: ''
|
28 | - version: 14.0.1
|
|
30 | + version: 17.1.0
|
|
29 | 31 | filename: 'glean-wheels-[% c("version") %].tar.xz'
|
30 | 32 | build_log: '-'
|
31 | 33 | container:
|
... | ... | @@ -7,6 +7,7 @@ container: |
7 | 7 | var:
|
8 | 8 | gradle_sha256sum:
|
9 | 9 | 8.8: a4b4158601f8636cdeeab09bd76afb640030bb5b144aafe261a5e8af027dc612
|
10 | + 8.13: 20f1b1176237254a6fc204d8434196fa11a4cfb387567519c61556e8710aed78
|
|
10 | 11 | |
11 | 12 | input_files:
|
12 | 13 | - project: container-image
|
1 | 1 | # vim: filetype=yaml sw=2
|
2 | -version: 0.27.1
|
|
3 | -git_hash: bfb52effb0292f16d4c030d622887781639cbd1f
|
|
4 | -git_url: https://gitlab.torproject.org/tpo/applications/uniffi-rs.git
|
|
2 | +version: 0.29.0
|
|
3 | +git_hash: c69eba9eb08b16a66aab7b25df6c55d0b60541db
|
|
4 | +git_url: https://gitlab.torproject.org/tpo/applications/uniffi-rs
|
|
5 | 5 | container:
|
6 | 6 | use_container: 1
|
7 | 7 | |
... | ... | @@ -17,4 +17,4 @@ steps: |
17 | 17 | project: uniffi-rs
|
18 | 18 | pkg_type: cargo_vendor
|
19 | 19 | norec:
|
20 | - sha256sum: 12a61a3dbe65a3946ed58fff3d849d11c9ade5818e2ef5771d2a2a531e25f553 |
|
20 | + sha256sum: 23c79da9169064f42c34b9dadfee9dcf5ed251f9843615ca3e9a0e59a49f581d |