diff --git a/.buildconfig.yml b/.buildconfig.yml index 13d7f570c1..6c9cff56fe 100644 --- a/.buildconfig.yml +++ b/.buildconfig.yml @@ -1,4 +1,4 @@ -libraryVersion: 51.6.0 +libraryVersion: 51.7.0 groupId: org.mozilla.telemetry projects: glean: diff --git a/.circleci/config.yml b/.circleci/config.yml index 54cfa0b949..18ef6193b9 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -462,7 +462,7 @@ jobs: Check Swift formatting: macos: - xcode: "14.0.0" + xcode: "13.4.1" steps: - checkout - run: @@ -478,7 +478,7 @@ jobs: iOS build and test: macos: - xcode: "14.0.0" + xcode: "13.4.1" steps: - checkout - run: @@ -490,14 +490,14 @@ jobs: - setup-rust-toolchain - restore_cache: name: Restore rubygems cache - key: swift-docs-gems-v12 + key: swift-docs-gems-v13 - run: name: Install jazzy command: gem install jazzy - save_cache: name: Save rubygems cache # NEEDS TO CHANGE WHEN JAZZY OR RUBY IS UPDATED - key: swift-docs-gems-v12 + key: swift-docs-gems-v13 paths: - ~/.gem/ruby/2.7.6 - run: @@ -510,7 +510,7 @@ jobs: DEVICES=$(xcrun xctrace list devices 2>&1) echo "$DEVICES" # Pick a device and start it - UUID=$(echo "$DEVICES" | grep --max-count=1 'iPhone 14 Simulator (16' | awk -F'[()]' '{print $4}') + UUID=$(echo "$DEVICES" | grep --max-count=1 'iPhone 11 Simulator (14' | awk -F'[()]' '{print $4}') xcrun simctl boot "$UUID" # Store build type for use in cache key if [ -z "${CIRCLE_TAG}" ]; then @@ -579,7 +579,7 @@ jobs: iOS integration test: macos: - xcode: "14.0.0" + xcode: "13.4.1" steps: - checkout - skip-if-doc-only @@ -595,8 +595,8 @@ jobs: DEVICES=$(xcrun xctrace list devices 2>&1) echo "$DEVICES" # Pick a device and start it - UUID=$(echo "$DEVICES" | grep --max-count=1 'iPhone 14 Simulator (16' | awk -F'[()]' '{print $4}') - xcrun simctl boot "$UUID" + UDID=$(echo "$DEVICES" | grep --max-count=1 'iPhone 11 Simulator (14' | awk -F'[()]' '{print $4}') + xcrun simctl boot "$UDID" - run: name: Build XCFramework archive command: | @@ -631,7 +631,7 @@ jobs: iOS Framework release: macos: - xcode: "14.0.0" + xcode: "13.4.1" steps: - checkout - attach_workspace: @@ -872,7 +872,7 @@ jobs: pypi-macos-release: macos: - xcode: "14.0.0" + xcode: "13.4.1" steps: - install-rustup - setup-rust-toolchain @@ -889,10 +889,10 @@ jobs: name: Build macOS wheel command: | cd glean-core/python - .venv3.10/bin/python3 setup.py bdist_wheel + .venv3.9/bin/python3 setup.py bdist_wheel # Requires that the TWINE_USERNAME and TWINE_PASSWORD environment # variables are configured in CircleCI's environment variables. - .venv3.10/bin/python3 -m twine upload dist/* + .venv3.9/bin/python3 -m twine upload dist/* environment: GLEAN_BUILD_VARIANT: release - install-ghr-darwin @@ -904,7 +904,7 @@ jobs: pypi-macos-arm64-release: macos: - xcode: "14.0.0" + xcode: "13.4.1" steps: - install-rustup - setup-rust-toolchain @@ -918,12 +918,12 @@ jobs: command: | rustup target add aarch64-apple-darwin cd glean-core/python - .venv3.10/bin/python3 setup.py bdist_wheel + .venv3.9/bin/python3 setup.py bdist_wheel # Requires that the TWINE_USERNAME and TWINE_PASSWORD environment # variables are configured in CircleCI's environment variables. - .venv3.10/bin/python3 -m twine upload dist/* + .venv3.9/bin/python3 -m twine upload dist/* environment: - SDKROOT: /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk + SDKROOT: /Library/Developer/CommandLineTools/SDKs/MacOSX11.sdk GLEAN_BUILD_TARGET: aarch64-apple-darwin GLEAN_BUILD_VARIANT: release - install-ghr-darwin diff --git a/.circleci/jazzy.yml b/.circleci/jazzy.yml index 9d61646e36..6a57b40e82 100644 --- a/.circleci/jazzy.yml +++ b/.circleci/jazzy.yml @@ -10,4 +10,4 @@ xcodebuild_arguments: - "-scheme" - "Glean" - "-destination" - - "platform=iOS Simulator,name=iPhone 14" + - "platform=iOS Simulator,name=iPhone 11" diff --git a/CHANGELOG.md b/CHANGELOG.md index 3932d3aaff..b28322236b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,13 +1,22 @@ # Unreleased changes -[Full changelog](https://github.com/mozilla/glean/compare/v51.6.0...main) +[Full changelog](https://github.com/mozilla/glean/compare/v51.7.0...main) + +# v51.7.0 (2022-10-25) + +[Full changelog](https://github.com/mozilla/glean/compare/v51.6.0...v51.7.0) + +* iOS + * Glean for iOS is now being built with Xcode 13.4 again ([#2242](https://github.com/mozilla/glean/pull/2242)) +* Rust + * Add cargo feature `preinit_million_queue` to up the preinit queue length from 10^3 to 10^6 ([bug 1796258](https://bugzilla.mozilla.org/show_bug.cgi?id=1796258)) # v51.6.0 (2022-10-24) [Full changelog](https://github.com/mozilla/glean/compare/v51.5.0...v51.6.0) * General - * The internal glean-core dispatch queue changed from `unbounded` to `bounded`, while still behaving as a bounded queue. + * The internal glean-core dispatch queue changed from `bounded` to `unbounded`, while still behaving as a bounded queue. * iOS * BUGFIX: Additional work to address an iOS crash due to an invalidated session ([#2235](https://github.com/mozilla/glean/pull/2235)) diff --git a/Cargo.lock b/Cargo.lock index 943546266a..1ecfdcc8b0 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -366,7 +366,7 @@ dependencies = [ [[package]] name = "glean" -version = "51.6.0" +version = "51.7.0" dependencies = [ "chrono", "crossbeam-channel", @@ -409,7 +409,7 @@ dependencies = [ [[package]] name = "glean-core" -version = "51.6.0" +version = "51.7.0" dependencies = [ "android_logger", "bincode", diff --git a/DEPENDENCIES.md b/DEPENDENCIES.md index 2d5a4936fd..a15fa161ec 100644 --- a/DEPENDENCIES.md +++ b/DEPENDENCIES.md @@ -5362,9 +5362,9 @@ Exhibit B - "Incompatible With Secondary Licenses" Notice The following text applies to code linked from these dependencies: -* [glean 51.6.0]( https://github.com/mozilla/glean ) +* [glean 51.7.0]( https://github.com/mozilla/glean ) * [glean-build 6.1.2]( https://github.com/mozilla/glean ) -* [glean-core 51.6.0]( https://github.com/mozilla/glean ) +* [glean-core 51.7.0]( https://github.com/mozilla/glean ) * [zeitstempel 0.1.1]( https://github.com/badboy/zeitstempel ) ``` diff --git a/bin/run-ios-build.sh b/bin/run-ios-build.sh index 9d8fd8d329..65087fe3c5 100755 --- a/bin/run-ios-build.sh +++ b/bin/run-ios-build.sh @@ -11,7 +11,7 @@ xcodebuild \ -workspace ./glean-core/ios/Glean.xcodeproj/project.xcworkspace \ -scheme Glean \ -sdk iphonesimulator \ - -destination 'platform=iOS Simulator,name=iPhone 14' \ + -destination 'platform=iOS Simulator,name=iPhone 11' \ build | \ tee raw_xcodebuild.log | \ xcpretty && exit "${PIPESTATUS[0]}" diff --git a/bin/run-ios-sample-app-build.sh b/bin/run-ios-sample-app-build.sh index 22d1a83350..a13d30ba6d 100755 --- a/bin/run-ios-sample-app-build.sh +++ b/bin/run-ios-sample-app-build.sh @@ -11,7 +11,7 @@ xcodebuild \ -workspace ./samples/ios/app/glean-sample-app.xcodeproj/project.xcworkspace \ -scheme glean-sample-app \ -sdk iphonesimulator \ - -destination 'platform=iOS Simulator,name=iPhone 14' \ + -destination 'platform=iOS Simulator,name=iPhone 11' \ build | \ tee raw_sample_xcodebuild.log | \ xcpretty && exit "${PIPESTATUS[0]}" diff --git a/bin/run-ios-sample-app-test.sh b/bin/run-ios-sample-app-test.sh index 64b4ed3452..c419f510c3 100755 --- a/bin/run-ios-sample-app-test.sh +++ b/bin/run-ios-sample-app-test.sh @@ -11,7 +11,7 @@ xcodebuild \ -workspace ./samples/ios/app/glean-sample-app.xcodeproj/project.xcworkspace \ -scheme glean-sample-app \ -sdk iphonesimulator \ - -destination 'platform=iOS Simulator,name=iPhone 14' \ + -destination 'platform=iOS Simulator,name=iPhone 11' \ test | \ tee raw_sample_xcodetest.log | \ xcpretty && exit "${PIPESTATUS[0]}" diff --git a/bin/run-ios-tests.sh b/bin/run-ios-tests.sh index 0913cad9e6..7ae79b5c38 100755 --- a/bin/run-ios-tests.sh +++ b/bin/run-ios-tests.sh @@ -11,7 +11,7 @@ xcodebuild \ -workspace ./glean-core/ios/Glean.xcodeproj/project.xcworkspace \ -scheme Glean \ -sdk iphonesimulator \ - -destination 'platform=iOS Simulator,name=iPhone 14' \ + -destination 'platform=iOS Simulator,name=iPhone 11' \ test | \ tee raw_xcodetest.log | \ xcpretty && exit "${PIPESTATUS[0]}" diff --git a/glean-core/Cargo.toml b/glean-core/Cargo.toml index 026677fdb2..fcbf1984ea 100644 --- a/glean-core/Cargo.toml +++ b/glean-core/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "glean-core" -version = "51.6.0" +version = "51.7.0" authors = ["Jan-Erik Rediger ", "The Glean Team "] description = "A modern Telemetry library" repository = "https://github.com/mozilla/glean" @@ -61,3 +61,7 @@ ctor = "0.1.12" [build-dependencies] uniffi_build = { version = "0.21.0", features = ["builtin-bindgen"] } + +[features] +# Increases the preinit queue limit to 10^6 +preinit_million_queue = [] diff --git a/glean-core/ios/Glean.xcodeproj/project.pbxproj b/glean-core/ios/Glean.xcodeproj/project.pbxproj index 769a43521c..121040f600 100644 --- a/glean-core/ios/Glean.xcodeproj/project.pbxproj +++ b/glean-core/ios/Glean.xcodeproj/project.pbxproj @@ -3,7 +3,7 @@ archiveVersion = 1; classes = { }; - objectVersion = 54; + objectVersion = 52; objects = { /* Begin PBXBuildFile section */ @@ -510,7 +510,6 @@ /* Begin PBXShellScriptBuildPhase section */ BF6F2DA5224BF2E000394062 /* Run Script */ = { isa = PBXShellScriptBuildPhase; - alwaysOutOfDate = 1; buildActionMask = 2147483647; files = ( ); diff --git a/glean-core/ios/Glean.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved b/glean-core/ios/Glean.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved index 76d8a414b0..05934cd81a 100644 --- a/glean-core/ios/Glean.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ b/glean-core/ios/Glean.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -1,23 +1,25 @@ { - "pins" : [ - { - "identity" : "gzipswift", - "kind" : "remoteSourceControl", - "location" : "https://github.com/1024jp/GzipSwift", - "state" : { - "revision" : "7a7f17761c76a932662ab77028a4329f67d645a4", - "version" : "5.2.0" + "object": { + "pins" : [ + { + "package": "GzipSwift", + "repositoryURL" : "https://github.com/1024jp/GzipSwift", + "state" : { + "branch": null, + "revision" : "7a7f17761c76a932662ab77028a4329f67d645a4", + "version" : "5.2.0" + } + }, + { + "package" : "OHHTTPStubs", + "repositoryURL" : "https://github.com/alisoftware/OHHTTPStubs", + "state" : { + "branch": null, + "revision" : "12f19662426d0434d6c330c6974d53e2eb10ecd9", + "version" : "9.1.0" + } } - }, - { - "identity" : "ohhttpstubs", - "kind" : "remoteSourceControl", - "location" : "https://github.com/alisoftware/OHHTTPStubs", - "state" : { - "revision" : "12f19662426d0434d6c330c6974d53e2eb10ecd9", - "version" : "9.1.0" - } - } - ], - "version" : 2 + ] + }, + "version": 1 } diff --git a/glean-core/python/requirements_dev.txt b/glean-core/python/requirements_dev.txt index 19c44de7a8..4f551b0cc2 100644 --- a/glean-core/python/requirements_dev.txt +++ b/glean-core/python/requirements_dev.txt @@ -1,4 +1,4 @@ -auditwheel==5.1.2 +auditwheel==5.2.0 black==22.10.0; python_version > '3.6' coverage==6.2 flake8==5.0.4 diff --git a/glean-core/python/setup.py b/glean-core/python/setup.py index afc4dd815e..1bdcce8a40 100644 --- a/glean-core/python/setup.py +++ b/glean-core/python/setup.py @@ -56,7 +56,7 @@ history = history_file.read() # glean version. Automatically updated by the bin/prepare_release.sh script -version = "51.6.0" +version = "51.7.0" requirements = [ "semver>=2.13.0", diff --git a/glean-core/rlb/Cargo.toml b/glean-core/rlb/Cargo.toml index 398821dee3..e7b2c83edc 100644 --- a/glean-core/rlb/Cargo.toml +++ b/glean-core/rlb/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "glean" -version = "51.6.0" +version = "51.7.0" authors = ["Jan-Erik Rediger ", "The Glean Team "] description = "Glean SDK Rust language bindings" repository = "https://github.com/mozilla/glean" @@ -22,7 +22,7 @@ maintenance = { status = "actively-developed" } [dependencies.glean-core] path = ".." -version = "51.6.0" +version = "51.7.0" [dependencies] crossbeam-channel = "0.5" @@ -42,3 +42,6 @@ env_logger = { version = "0.9.0", default-features = false, features = ["termcol tempfile = "3.1.0" jsonschema-valid = "0.5.0" flate2 = "1.0.19" + +[features] +preinit_million_queue = ["glean-core/preinit_million_queue"] diff --git a/glean-core/src/dispatcher/global.rs b/glean-core/src/dispatcher/global.rs index 071bd1d28b..d4eddd8705 100644 --- a/glean-core/src/dispatcher/global.rs +++ b/glean-core/src/dispatcher/global.rs @@ -8,7 +8,11 @@ use std::sync::RwLock; use super::{DispatchError, DispatchGuard, Dispatcher}; +#[cfg(feature = "preinit_million_queue")] +pub const GLOBAL_DISPATCHER_LIMIT: usize = 1000000; +#[cfg(not(feature = "preinit_million_queue"))] pub const GLOBAL_DISPATCHER_LIMIT: usize = 1000; + static GLOBAL_DISPATCHER: Lazy>> = Lazy::new(|| RwLock::new(Some(Dispatcher::new(GLOBAL_DISPATCHER_LIMIT)))); pub static TESTING_MODE: AtomicBool = AtomicBool::new(false); diff --git a/gradle-plugin/src/main/groovy/mozilla/telemetry/glean-gradle-plugin/GleanGradlePlugin.groovy b/gradle-plugin/src/main/groovy/mozilla/telemetry/glean-gradle-plugin/GleanGradlePlugin.groovy index 1eecabea53..26b343ceb9 100644 --- a/gradle-plugin/src/main/groovy/mozilla/telemetry/glean-gradle-plugin/GleanGradlePlugin.groovy +++ b/gradle-plugin/src/main/groovy/mozilla/telemetry/glean-gradle-plugin/GleanGradlePlugin.groovy @@ -555,7 +555,7 @@ except: void apply(Project project) { isOffline = project.gradle.startParameter.offline - project.ext.glean_version = "51.6.0" + project.ext.glean_version = "51.7.0" def parserVersion = gleanParserVersion(project) // Print the required glean_parser version to the console. This is