Skip to content
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

pre-release: v2.11.0-beta.1 #1216

Merged
merged 6 commits into from
Jul 18, 2022
Merged

pre-release: v2.11.0-beta.1 #1216

merged 6 commits into from
Jul 18, 2022

Conversation

rustatian
Copy link
Member

@rustatian rustatian commented Jul 18, 2022

Reason for This PR

  • pre-release cycle.

Description of Changes

👀 New:

  • ✏️ [BETA]: RoadRunner: Can now be embedded in other go programs. PR, (thanks @khepin)
  • ✏️ gRPC Plugin: Implement Google's gRPC errors API. An exception might be passed as a Status structure in the Metadata (key - error) to be parsed and returned to the user w/o worker restart. NOTE: Status structure should be marshaled via proto marshaller, not json. FR
  • ✏️ gRPC Plugin: gRPC reflection server. Docs: https://roadrunner.dev/docs/app-server-grpc/2.x/en, GoDocs.
  • ✏️ Logger Plugin: Get rid of the context deadline exceeded error on worker's allocation. We updated the error message with the link to the docs with the most common causes for the worker allocation failed error: https://roadrunner.dev/docs/known-issues-allocate-timeout/2.x/en. Feel free to add your cases here :)

The reflection server might be activated to use grpc_cli, grpc-curl, grpc-ui, or similar tools to intercept grpc payloads.

Configuration:

grpc:
  listen: "tcp://localhost:9001"

  # GRPC reflection server [SINCE 2.11]
  #
  # This option is optional. The reflection server might be activated to use `grpc_cli`, `grpc-ui`, `grpc-curl`, or similar tools to intercept grpc payloads.
  enable_reflection_server: false
  proto:
    - "first.proto"
    - "second.proto"

License Acceptance

By submitting this pull request, I confirm that my contribution is made under the terms of the MIT license.

PR Checklist

[Author TODO: Meet these criteria.]
[Reviewer TODO: Verify that these criteria are met. Request changes if not]

  • All commits in this PR are signed (git commit -s).
  • The reason for this PR is clearly provided (issue no. or explanation).
  • The description of changes is clear and encompassing.
  • Any required documentation changes (code and docs) are included in this PR.
  • Any user-facing changes are mentioned in CHANGELOG.md.
  • All added/changed functionality is tested.

Signed-off-by: Valery Piashchynski <[email protected]>
@rustatian rustatian added the C-enhancement Category: enhancement. Meaning improvements of current module, transport, etc.. label Jul 18, 2022
@rustatian rustatian added this to the v2.11.0 milestone Jul 18, 2022
@rustatian rustatian requested a review from wolfy-j July 18, 2022 10:23
@rustatian rustatian self-assigned this Jul 18, 2022
@codecov
Copy link

codecov bot commented Jul 18, 2022

Codecov Report

Merging #1216 (f6e44d6) into master (0bdc25e) will increase coverage by 0.23%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master    #1216      +/-   ##
==========================================
+ Coverage   44.89%   45.12%   +0.23%     
==========================================
  Files          14       14              
  Lines         715      718       +3     
==========================================
+ Hits          321      324       +3     
  Misses        367      367              
  Partials       27       27              
Impacted Files Coverage Δ
internal/debug/server.go 100.00% <100.00%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 0bdc25e...f6e44d6. Read the comment docs.

@rustatian rustatian merged commit 757b3b6 into master Jul 18, 2022
@rustatian rustatian deleted the pre_release/2.11.0-beta.1 branch July 18, 2022 14:42
@khepin
Copy link
Contributor

khepin commented Jul 18, 2022

Been able to integrate this into our embedded apps with no problem. 👍

@rustatian
Copy link
Member Author

Brilliant, thanks 👍🏻
One small note, please, use the -race flag to build your app (at least for testing). I suspect that there might be race conditions.

@khepin
Copy link
Contributor

khepin commented Jul 18, 2022

Not too familiar with that flag, but building our app with build -race ... builds with no issues

@rustatian
Copy link
Member Author

rustatian commented Jul 18, 2022

Not too familiar with that flag, but building our app with build -race ... builds with no issues

Np, you may have a look at this article: https://go.dev/doc/articles/race_detector

You need to build and run your app to be sure that there are no data races. It will work slower than usual during the testing.

@khepin
Copy link
Contributor

khepin commented Jul 19, 2022

Was able to build and run with -race and test the code paths we've implemented. Not getting any data race report so all looks good.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-enhancement Category: enhancement. Meaning improvements of current module, transport, etc..
Projects
No open projects
Archived in project
Development

Successfully merging this pull request may close these issues.

2 participants