Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/main' into jp-real-engine-handles
Browse files Browse the repository at this point in the history
* origin/main: (32 commits)
  Compress xcframework release asset (#2324)
  bazel: update rules_apple (#2326)
  Merge `android_dist` with `android_dist_ci` (#2323)
  kotlin: fix flaky receive error test (#2317)
  kotlin: fix flaky grpc test (#2316)
  build(deps): bump pyjwt from 2.1.0 to 2.4.0 in /.github/actions/pr_notifier (#2314)
  test: making C++ integration test more authentic (#2315)
  reverting override to override_request_timeout_by_gateway_timeout (#2296)
  Update Envoy (#2309)
  release: use `CREDENTIALS_GITHUB_RELEASE_DEPLOY_KEY`
  Use `CREDENTIALS_GITHUB_PUSH_TOKEN`
  Push to branch before tagging the release
  Cronvoy: preparation to unittest certificate verification JNI (#2251)
  Corrected typo in documentation for Android building requirements (#2313)
  instrumentation: add timers and warnings to platform callbacks (#2300)
  Bump Lyft Support Rotation (#2310)
  Revert "android: use local addresses as opposed to prefix (#2081)" (#2307)
  Fix release GitHub workflow (#2306)
  mobile: moving the c++ integration test to use default config (#2293)
  config: cleaning up deprecated configs (#2295)
  ...

Signed-off-by: JP Simard <jp@jpsim.com>
  • Loading branch information
jpsim committed May 26, 2022
2 parents a768801 + 5d7cd70 commit 24cb769
Show file tree
Hide file tree
Showing 50 changed files with 1,110 additions and 194 deletions.
6 changes: 3 additions & 3 deletions .github/actions/pr_notifier/requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -79,9 +79,9 @@ pygithub==1.55 \
--hash=sha256:1bbfff9372047ff3f21d5cd8e07720f3dbfdaf6462fcaed9d815f528f1ba7283 \
--hash=sha256:2caf0054ea079b71e539741ae56c5a95e073b81fa472ce222e81667381b9601b
# via -r requirements.in
pyjwt==2.1.0 \
--hash=sha256:934d73fbba91b0483d3857d1aff50e96b2a892384ee2c17417ed3203f173fca1 \
--hash=sha256:fba44e7898bbca160a2b2b501f492824fc8382485d3a6f11ba5d0c1937ce6130
pyjwt==2.4.0 \
--hash=sha256:72d1d253f32dbd4f5c88eaf1fdc62f3a19f676ccbadb9dbc5d07e951b2b26daf \
--hash=sha256:d42908208c699b3b973cbeb01a969ba6a96c821eefb1c5bfe4c390c01d67abba
# via pygithub
pynacl==1.4.0 \
--hash=sha256:06cbb4d9b2c4bd3c8dc0d267416aaed79906e7b33f114ddbf0911969794b1cc4 \
Expand Down
2 changes: 1 addition & 1 deletion .github/lyft_maintainers.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
current: goaway
current: jpsim
maintainers:
- Augustyniak
- snowp
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/android_build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ jobs:
--config=remote-ci-macos \
--remote_header="Authorization=Bearer $GITHUB_TOKEN" \
--fat_apk_cpu=x86_64 \
//:android_dist_ci
//:android_dist
javahelloworld:
name: java_helloworld
runs-on: macos-12
Expand Down
11 changes: 9 additions & 2 deletions .github/workflows/bump_support_rotation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,10 @@ jobs:
- name: git checkout
uses: actions/checkout@v2
- name: Bump Lyft Support Rotation
id: bump
run: ./tools/bump_lyft_support_rotation.sh
env:
SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }}
- name: Create PR
id: pr
uses: peter-evans/create-pull-request@v3
with:
token: ${{ secrets.CREDENTIALS_GITHUB_PUSH_TOKEN }}
Expand All @@ -33,3 +33,10 @@ jobs:
delete-branch: true
branch: support-bump
branch-suffix: short-commit-hash
reviewers: ${{ steps.bump.outputs.NEXT_MAINTAINER }}
- name: Post to Slack
run: |
./tools/post_to_slack.sh \
"Lyft support maintainer changing from <https://github.com/${{ steps.bump.outputs.PREVIOUS_MAINTAINER }}|${{ steps.bump.outputs.PREVIOUS_MAINTAINER }}> to <https://github.com/${{ steps.bump.outputs.NEXT_MAINTAINER }}|${{ steps.bump.outputs.NEXT_MAINTAINER }}>: ${{ steps.pr.outputs.pull-request-url }}"
env:
SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }}
10 changes: 7 additions & 3 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ jobs:
--define=pom_version="${current_release_version:1}" \
--config=remote-ci-macos \
--remote_header="Authorization=Bearer $GITHUB_TOKEN" \
//:android_dist_ci
//:android_dist
- name: 'Tar artifacts'
run: tar -czvf envoy_android_aar_sources.tar.gz bazel-bin/library/kotlin/io/envoyproxy/envoymobile/envoy.aar bazel-bin/library/kotlin/io/envoyproxy/envoymobile/envoy-pom.xml bazel-bin/library/kotlin/io/envoyproxy/envoymobile/envoy-sources.jar bazel-bin/library/kotlin/io/envoyproxy/envoymobile/envoy-javadoc.jar
- uses: actions/upload-artifact@v2
Expand Down Expand Up @@ -126,8 +126,11 @@ jobs:
--config=remote-ci-macos \
--remote_header="Authorization=Bearer $GITHUB_TOKEN" \
//:ios_xcframework
- name: 'Move Envoy.xcframework.zip'
run: mv bazel-bin/library/swift/Envoy.xcframework.zip .
- name: 'Recompress Envoy.xcframework.zip' # Recompress as bazel uses zip as a container with no compression
run: |
unzip bazel-bin/library/swift/Envoy.xcframework.zip
zip -r Envoy.xcframework.zip Envoy.xcframework
rm -rf Envoy.xcframework
- uses: actions/upload-artifact@v2
with:
name: ios_framework
Expand Down Expand Up @@ -164,6 +167,7 @@ jobs:
- name: Release
uses: softprops/action-gh-release@v1
with:
prerelease: true
files: |
envoy_android_aar_sources.tar.gz
Envoy.xcframework.zip
Expand Down
50 changes: 50 additions & 0 deletions .github/workflows/submodule_update.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
name: submodule_update

on:
workflow_dispatch:
schedule:
# Mondays at 2pm UTC (9am EST)
- cron: "0 14 * * 1"

jobs:
submodule_update:
runs-on: ubuntu-latest
steps:
- name: Checkout source
uses: actions/checkout@v2
with:
submodules: true
- name: Fetch latest submodule
run: |
git submodule update --remote
- name: Check for changes
id: state
run: |
if ! git diff-index --quiet HEAD --; then
echo "Detected changes..."
echo "::set-output name=dirty::true"
fi
- name: Get current support maintainer
if: steps.state.outputs.dirty == 'true'
id: support
run: |
maintainers_file=".github/lyft_maintainers.yml"
first_line="$(head -n 1 "$maintainers_file")"
current=${first_line#"current: "}
echo "::set-output name=maintainer::$current"
- name: Create PR
if: steps.state.outputs.dirty == 'true'
uses: peter-evans/create-pull-request@v3
with:
token: ${{ secrets.CREDENTIALS_GITHUB_PUSH_TOKEN }}
title: Update Envoy
commit-message: |
Update Envoy
Signed-off-by: GitHub Action <noreply@github.com>
committer: GitHub Action <noreply@github.com>
base: main
delete-branch: true
branch: update-envoy
branch-suffix: short-commit-hash
reviewers: ${{ steps.support.outputs.maintainer }}
34 changes: 34 additions & 0 deletions .github/workflows/weekly_release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
name: weekly_release

on:
workflow_dispatch:
schedule:
# Mondays at 1pm UTC (8am EST)
- cron: "0 13 * * 1"

jobs:
weekly_release:
runs-on: ubuntu-latest
if: github.repository_owner == 'envoyproxy'
steps:
- name: git checkout
uses: actions/checkout@v2
with:
ssh-key: "${{ secrets.CREDENTIALS_GITHUB_RELEASE_DEPLOY_KEY }}"
- name: 'Configure envoy-bot git user'
run: |
# Switch global user to be envoy-bot for deployment
git config --global user.email "envoy-bot@users.noreply.github.com"
git config --global user.name "envoy-bot"
- name: Set version
run: |
echo "$(cat VERSION).$(date +'%Y%m%d')" > VERSION
git add VERSION
git commit -m "Release version $(cat VERSION)
Signed-off-by: envoy-bot <envoy-bot@users.noreply.github.com>"
- name: Create tag
run: |
version="v$(cat VERSION)"
git tag -a ${version} -m ${version}
git push origin ${version}
24 changes: 14 additions & 10 deletions BUILD
Original file line number Diff line number Diff line change
Expand Up @@ -50,17 +50,8 @@ aar_import(
)

alias(
name = "android_dist_ci",
actual = "//library/kotlin/io/envoyproxy/envoymobile:envoy_aar_with_artifacts",
)

filegroup(
name = "android_dist",
srcs = [
"//library/kotlin/io/envoyproxy/envoymobile:envoy_aar",
"//library/kotlin/io/envoyproxy/envoymobile:envoy_aar_objdump_collector",
"//library/kotlin/io/envoyproxy/envoymobile:envoy_aar_pom_xml",
],
actual = "//library/kotlin/io/envoyproxy/envoymobile:envoy_aar_with_artifacts",
)

define_kt_toolchain(
Expand Down Expand Up @@ -107,15 +98,28 @@ genrule(
xcodeproj(
name = "xcodeproj",
archived_bundles_allowed = True,
bazel_path = "./bazelw",
build_mode = "bazel",
project_name = "Envoy",
tags = ["manual"],
targets = [
# Libraries
"//library/swift:ios_lib",
"//library/objective-c:envoy_engine_objc_lib",
"//library/common:envoy_main_interface_lib",
# Apps
# TODO(jpsim): Fix Objective-C app support
# "//examples/objective-c/hello_world:app",
"//examples/swift/async_await:app",
"//examples/swift/hello_world:app",
"//test/swift/apps/baseline:app",
"//test/swift/apps/experimental:app",
# Tests
"//experimental/swift:quic_stream_test",
"//test/objective-c:envoy_bridge_utility_test",
"//test/swift/integration:flatbuffer_test",
"//test/swift/integration:test",
"//test/swift/stats:test",
"//test/swift:test",
],
)
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
0.4.6.20220513-4
0.4.6
6 changes: 4 additions & 2 deletions bazel/apple_test.bzl
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ load("//bazel:config.bzl", "MINIMUM_IOS_VERSION")
# ],
# )
#
def envoy_mobile_swift_test(name, srcs, data = [], deps = [], tags = [], repository = ""):
def envoy_mobile_swift_test(name, srcs, data = [], deps = [], tags = [], repository = "", visibility = []):
test_lib_name = name + "_lib"
swift_library(
name = test_lib_name,
Expand All @@ -39,9 +39,10 @@ def envoy_mobile_swift_test(name, srcs, data = [], deps = [], tags = [], reposit
deps = [test_lib_name],
minimum_os_version = MINIMUM_IOS_VERSION,
tags = tags,
visibility = visibility,
)

def envoy_mobile_objc_test(name, srcs, data = [], deps = [], tags = []):
def envoy_mobile_objc_test(name, srcs, data = [], deps = [], tags = [], visibility = []):
test_lib_name = name + "_lib"
objc_library(
name = test_lib_name,
Expand All @@ -57,4 +58,5 @@ def envoy_mobile_objc_test(name, srcs, data = [], deps = [], tags = []):
deps = [test_lib_name],
minimum_os_version = MINIMUM_IOS_VERSION,
tags = tags,
visibility = visibility,
)
14 changes: 6 additions & 8 deletions bazel/envoy_mobile_repositories.bzl
Original file line number Diff line number Diff line change
Expand Up @@ -70,12 +70,12 @@ def upstream_envoy_overrides():
)

def swift_repos():
# https://github.com/bazelbuild/rules_apple/pull/1443
# https://github.com/bazelbuild/rules_apple/pull/1478
http_archive(
name = "build_bazel_rules_apple",
sha256 = "7644c7d75ce9e4419c3050c4786175c253f1d35564869fda0e790647d9093eb8",
strip_prefix = "rules_apple-2d1fa9ea5f3544fed41d50c28c8508af035bc0a0",
url = "https://github.com/bazelbuild/rules_apple/archive/2d1fa9ea5f3544fed41d50c28c8508af035bc0a0.tar.gz",
sha256 = "4ffc44ccf28a694e5b494e0de5ff5b38e7cbbdf4b03795c22079265e545fc850",
strip_prefix = "rules_apple-012fc127012ed2c81f6b765afc571de9b4755169",
url = "https://github.com/bazelbuild/rules_apple/archive/012fc127012ed2c81f6b765afc571de9b4755169.tar.gz",
)

# TODO(jpsim): Update to the next release which includes https://github.com/bazelbuild/rules_swift/pull/818
Expand All @@ -100,12 +100,10 @@ def swift_repos():
url = "https://github.com/realm/SwiftLint/releases/download/0.47.1/portable_swiftlint.zip",
)

# TODO(jpsim): Update to the next release which includes https://github.com/buildbuddy-io/rules_xcodeproj/pull/407
http_archive(
name = "com_github_buildbuddy_io_rules_xcodeproj",
sha256 = "af9f6ebbf4d7c83cf35d7ced0b9d13fd6e91e9da5e4ceaf06614ed8caeab45aa",
strip_prefix = "rules_xcodeproj-96f59d785e8ec226b74af0586f856770b5e7e60c",
url = "https://github.com/buildbuddy-io/rules_xcodeproj/archive/96f59d785e8ec226b74af0586f856770b5e7e60c.tar.gz",
sha256 = "5a902801e2337fc14faeb2613d70202f2dd4755bba3d94ba068c1f622edba89e",
url = "https://github.com/buildbuddy-io/rules_xcodeproj/releases/download/0.3.0/release.tar.gz",
)

def kotlin_repos():
Expand Down
4 changes: 4 additions & 0 deletions docs/root/intro/version_history.rst
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,11 @@ Bugfixes:

- iOS: change release artifacts to use xcframeworks (:issue:`#2216 <2216>`)
- iOS: fix CocoaPods releases (:issue:`#2215 <2215>`)
- Cronvoy: Cancel the scheduled onSendWindowAvailable callback when a stream is cancelled (:issue:`#2213 <2213>`)
- fix bug where writing prevented the read loop from running (:issue:`#2221 <2221>`)
- Android: update Kotlin standard libraries to 1.6.21 (:issue:`#2256 <2256>`)
- fix bug where finalStreamIntel was not consistently set on cancel (:issue:`#2285 <2285>`)
- iOS: fix termination crash in ProvisionalDispatcher (:issue:`#2059 <2059>`)

Features:

Expand All @@ -24,6 +27,7 @@ Features:
- api: add option to control whether Envoy should drain connections after a soft DNS refresh completes. (:issue:`#2225 <2225>`, :issue:`#2242 <2242>`)
- configuration: enable h2 ping by default. (:issue: `#2270 <2270>`)
- android: enable the filtering of unroutable families by default. (:issues: `#2267 <2267>`)
- instrumentation: add timers and warnings to platform-provided callbacks (:issue: `#2300 <2300>`)

0.4.6 (April 26, 2022)
========================
Expand Down
2 changes: 1 addition & 1 deletion docs/root/start/building/building.rst
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ For local builds, set ``ANDROID_HOME`` and ``ANDROID_NDK_HOME`` to point to the
.. code-block:: bash
ANDROID_HOME=$HOME/Library/Android/sdk
ANDROID_SDK_HOME=$HOME/Library/Android/ndk/21.3.6528147
ANDROID_NDK_HOME=$HOME/Library/Android/ndk/21.3.6528147
See `ci/mac_ci_setup.sh` for the specific NDK version used during builds.

Expand Down
2 changes: 1 addition & 1 deletion envoy
Submodule envoy updated 146 files
1 change: 1 addition & 0 deletions experimental/swift/BUILD
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ envoy_mobile_swift_test(
data = [
"@envoy//test/config/integration/certs",
],
visibility = ["//visibility:public"],
deps = [
"//library/objective-c:envoy_engine_objc_lib",
],
Expand Down
8 changes: 4 additions & 4 deletions experimental/swift/QUICStreamTest.swift
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,7 @@ final class QUICStreamTests: XCTestCase {
"""
let expectation = self.expectation(description: "Complete response received.")

let client = try EngineBuilder(yaml: config)
let client = EngineBuilder(yaml: config)
.addLogLevel(.trace)
.build()
.streamClient()
Expand All @@ -167,18 +167,18 @@ final class QUICStreamTests: XCTestCase {

client
.newStreamPrototype()
.setOnResponseHeaders { responseHeaders, endStream in
.setOnResponseHeaders { responseHeaders, endStream, _ in
XCTAssertEqual(200, responseHeaders.httpStatus)
if endStream {
expectation.fulfill()
}
}
.setOnResponseData { _, endStream in
.setOnResponseData { _, endStream, _ in
if endStream {
expectation.fulfill()
}
}
.setOnError { _ in
.setOnError { _, _ in
XCTFail("Unexpected error")
}
.start()
Expand Down
Loading

0 comments on commit 24cb769

Please sign in to comment.