-
Notifications
You must be signed in to change notification settings - Fork 924
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Preliminary build support for macOS on aarch64 (M1) #4119
Conversation
743cbd2
to
82ef016
Compare
Codecov Report
@@ Coverage Diff @@
## master #4119 +/- ##
============================================
- Coverage 73.22% 73.21% -0.02%
+ Complexity 16134 16131 -3
============================================
Files 1405 1405
Lines 61669 61673 +4
Branches 7765 7766 +1
============================================
- Hits 45155 45151 -4
- Misses 12583 12590 +7
- Partials 3931 3932 +1
Continue to review full report at Codecov.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks, @trustin!
build.gradle
Outdated
// Suppress the 'Class X is compiled by a pre-release version of Kotlin and | ||
// cannot be loaded by this version of the compiler' error. | ||
tasks.withType(KotlinCompile) { task -> | ||
task.kotlinOptions.freeCompilerArgs += '-Xskip-prerelease-check' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should we move the option to?
def compilerArgs = ["-Xjsr305=strict", "-java-parameters"] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We can. Let me send out a PR there and merge it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
28ccddb
to
a52c7dd
Compare
Motivation: Our current and future contributors can't build Armeria with their M1 MacBooks. Modifications: - Fixed the test cases that make false assumption that Brotli codec will be always available. - Fixed `FileService` so that it works as expected even when Brotli codec is not available. - Updated NPM to 8.5.2 for `docs-client` - Updated `docs-client/package-lock.json` - Fixed eslint and TypeScript compilation errors - Disabled soon-to-be-deprecated eslint rule. - Fixed a Kotlin compiler warning in `DataClassDocServiceTest` - Added `-Xskip-prerelease-check` option to Kotlin compiler to work around its complaints about the code compiled with a pre-release compiler. - Misc: - Increased the amount of time to wait for a future in `AbstractTHttp2Client` for less flakiness Result: - A contributor can build Armeria on macOS with Apple Silicon (M1). - Known issues: - `:site` cannot be built yet. Need to upgrade a lot of dependencies to make it happen. - Parallel build sometimes results in a build failure related with duplicate classes in a JAR. - (defect) `FileService` doesn't choose a `.br` file for generating decompressed content anymore when Brotli is not available. Increase the timeout for `ManagementServiceTest` ASDF
a52c7dd
to
9fd52f0
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks a lot! 👍
@@ -84,7 +85,9 @@ void threadDumpWithJson() throws Exception { | |||
|
|||
@Test | |||
void heapDump() throws InterruptedException { | |||
final WebClient client = WebClient.of(server.httpUri()); | |||
final WebClient client = WebClient.builder(server.httpUri()) | |||
.responseTimeout(Duration.ofSeconds(45)) // Heap dump can take time. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It seems like the request timeout of the server is not increased?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Increased to 50 seconds
a144437
to
ffb7de6
Compare
This reverts commit 84cbaf1.
Motivation:
Our current and future contributors can't build Armeria with their M1 MacBooks.
Modifications:
be always available.
FileService
so that it works as expected even when Brotlicodec is not available.
docs-client
docs-client/package-lock.json
DataClassDocServiceTest
-Xskip-prerelease-check
option to Kotlin compiler to workaround its complaints about the code compiled with a pre-release compiler.
less flakiness.
Result:
:site
cannot be built yet. Need to upgrade a lot ofdependencies to make it happen.
duplicate classes in a JAR.
FileService
doesn't choose a.br
file for generatingdecompressed content anymore when Brotli is not available.