NUnit Test and MS Test Capabilities

There is no current way to determine the difference between NUnit and MS Test Capabilities. I ran HelpExplorer on a MS Test project and then renamed the capabilities file to MsTest... Then I ran on a  NUnit test project and compared the resulting files. There is not difference between Capabilities.  So, since I have NUnit test in the projecttypes.json it may need to be changes to just Test and then offer both NUnit and MSTest links and let the developer decide which links to navigate to. Or MS needs to add capabilities to the shipped templates so that the loaded project type can be better determined by HelpExplorer.
We have the same issue with Class Libraries since they are for a given project type (say i.e. WPF) the (control, User Control, etc. libraries capabilities) are all the same.
NUnit_CSharp_CPS_Capabilities.txt
MsTest_CSharp_CPS_Capabilities.txt
WPFLibrary_CSharp_CPS_Capabilities.txt

There's also xUnit

Here are the results of the xUnit, NUnit, and MSTest.  They all have the exact same capabilities.  I opened issue https://github.com/dotnet/project-system/issues/7807
In the issue I mentioned that the libraries have the same issue.
WPFLibrary_Capabilities.txt
WPFUserControlLibrary_Capabilities.txt
WPFCustomControlLibrary_Capabilities.txt

It would be nice if we could see what the base project was to create the current project since it would have a value we could look for (i.e. xUnit, NUnit, MSTest) in the template name.

Here is https://github.com/drewnoakes response to submitted issue, and my response back.
@drewnoakes response:
That sounds like a great extension.
I see two possible approaches here:
Query the project's package references to identify what testing framework(s) it uses.
Have the providers of those test frameworks add an MSBuild item (such as ProjectCapability) or property in their bundled .props/.targets files.
The downside of the second approach is that it relies upon the package maintainers making a change, and then the user of the extension having a new enough version of the package.
Therefore I believe the first approach is likely the best way forward here. Note that there's nothing stopping a project using more than one unit test library at a time.
My response:
@drewnoakes thanks but tested number one and it will allow you to get which test package is used, but this same method does not work for which project type of WPF library since the package reference do not specify that the WPF library project is a Custom user control, user control, or just a library project. Do you have any sample C# code that would help Mads and I determine the difference?

Mads;
Please look at @drewnoakes last response under project-system/issues/7807
He said:
Thanks for the extra information.
Note that from the project system's perspective there's no real difference between WPF class library, WPF custom control or WPF user control projects.
The contents of the .csproj are identical for all three. In fact, the only difference between those three and a WPF application is the OutputType is set to WinExe on the application.
The difference between these templates is the content they generate internally. But there's nothing stopping you creating a WPF class library and putting both a user control and a custom control in it.
@drewnoakes also shows a way to add the ProjectCapability to Solution Explorer that works cool, but he has a high version of the project system installed since my shows version 3 not 4 in both VS 2022 v17.0.2 and VS 2022 v17.1.0 preview 1.1:

@drewnoakes As an aside, you might find the following trick handy in VS if you're not already using it. Stick this in your project file and the project's capabilities will be displayed in Solution Explorer:
  <ItemGroup>
    <ProjectCapability Include="DiagnoseCapabilities" />
  </ItemGroup>


Broken links on site after translation

Is this a bug report?
Yes

Have you read the Contributing Guidelines on issues?
Yes
Environment
(OS, Node, npm, yarn)
Steps to Reproduce

Load https://docusaurus.io/docs/en/site-preparation.html. Try to click on the "installing Docusaurus" link. It leads to a 404.
Load https://docusaurus.io/docs/en/publishing.html. The markdown links are broken.

The links are being translated to Spanish on the English page and that caused the behavior above.
Reproducible Demo
Access the URLs above.

The translations were turned off in #565 so that as to not break the links. To reproduce the bug, turn on Espanol in languages.js.

@yangshun I am still trying to figure this out. Haven't made too much progress yet.

Cool! I haven't really looked into it yet as I was busy with other work. I may only have time next weekend to look into it. I guess it's not really urgent to fix after we turned off Espanol.

We are working with Crowdin to try to fix this.


prefer-const reporting in try catch

This issue comes from https://github.com/eslint/eslint/issues/8723

Tell us about your environment

ESLint Version: 4.0.0
Node Version: 8.1.0
npm Version: 5.0.3

What parser (default, Babel-ESLint, etc.) are you using? babel-eslint
Please show your full configuration:

{
  "parser": "babel-eslint",
  "plugins": [
    "dependencies"
  ],
  "rules": {
    "prefer-const": 2
  }
}

What did you do? Please include the actual source code causing the issue.

let result;
try {
	result = window.bar();
}
catch (error) {
	console.log(error);
}
console.log(result);

What did you expect to happen?
No error to be thrown. It doesn't throw an error with 3.19.0
What actually happened? Please include the actual, raw output from ESLint.
/home/edgar/projects/dx/xt/es6/lexer.js
  3:2  error  'result' is never reassigned. Use 'const' instead  prefer-const

And this doesn't fail with eslint without babel-eslint?

Yes it doesnt fail with the default parser

Have you tried:
{
  "parserOptions" : {
    "ecmaVersion": 7
  },
  "parser": "babel-eslint",
  "rules": {
    "prefer-const": 2
  }
}

(Matches your default parser config you used in your original eslint issue)

Indeed it does work with that config.
Thanks


adds InteractionOperator <-> ParityPreservingFermionicGate functionality

@kevinsung Why are the checks taking so long to run recently?

@kevinsung ping


Fixes build for Windows cross-compilation

The uuid library needed to be included to allow for cross-compilation from Linux.
Tested on a clean Ubuntu install.
Fixes #28299

Thanks!

Cherry-picked for 3.1.2.


Making identifier configurable within schedule.rb?

When non-default identifier is used to install crontab (snippet), to clear it, you must enter exactly the same identifier again in order to clear, update, etc the crontab.
I thought it would be nice having such description written in config/schedule.rb .
Question

If I were to make such enhancement and make PR, would it be sensible?

Yes, I would in principle accept a PR for that feature.


Fail to deploy to vercel

What version of starlight are you using?
0.4.2
What version of astro are you using?
2.8.0
What package manager are you using?
npm
What operating system are you using?
Windows
What browser are you using?
Chrome
Describe the Bug
I get 500: INTERNAL_SERVER_ERROR when I deploy a startlight project to vercel and visit the website.
I'd like to know why this happens.

This is what happens when I try to deploy astro starlight project to Vercel.
The below is what I did.
I created my project along with  Getting Started of Starlight documentation. It's named "test-stardoc".
Then I ran npx astro add vercel
Also, I created a remote private repository named "test-stardoc" on my Github.
I ran these commands as follows after git add and git commit.
git remote add origin <RemoteRepositoryURL>
git branch -M main
git push -u origin main

I proceeded from 1 to 4 as written here at Website UI Deployment on astro DOCS.
I imported my project "above privare repo" into Vercel and pressed "Deploy".
Deploy has been completed however I get 500 error as above when I visit the deployed web site.
Why does this happen?  I checked build logs but I couldn't figure out.
If this rings a bell,  it'd be nice if you could give me the solution and some advice.
I wonder if I am the only one to face this error..
Link to Minimal Reproducible Example
No response
Participation

[ ] I am willing to submit a pull request for this issue.

The Vercel adapter is only required to enable SSR in your Astro project which is a feature not supported at the moment by Starlight as it will emit a static site.
When running the npx astro add vercel, it automatically edited your Astro configuration to enable SSR. To fix your issue, you should be able to edit your astro.config.mjs file and remove the @vercel/astro adapter.
import { defineConfig } from "astro/config";
import starlight from "@astrojs/starlight";

- import vercel from "@astrojs/vercel/serverless";

// https://astro.build/config
export default defineConfig({
  integrations: [
    starlight({
      // Starlight options
    }),
  ],
  // Process images with sharp: https://docs.astro.build/en/guides/assets/#using-sharp
  image: {
    service: {
      entrypoint: "astro/assets/services/sharp",
    },
  },
-  output: "server",
-  adapter: vercel(),
});

You should also be able to uninstall the @astrojs/vercel package from your project.
npm remove @astrojs/vercel

After pushing these changes to your repository, the Vercel deployment should work as expected.

The deploy guide mentions:

Your Astro project is a static site by default. You don’t need any extra configuration to deploy a static Astro site to Vercel.

Maybe this should be emphasized more in the Starlight docs as well?

Thank you. I solved it.
I edited my astro.config.mjs file and removed the @vercel/astro adapter as you said.
I didn't need to do anything.  I misunderstood I have to run npx astro add vercel.

Maybe this should be emphasized more in the Starlight docs as well?

Personally, It'd be nice if you could  emphasize in the Starlight docs...

Adding a note for anyone else finding this issue that you can use the static Vercel adapter, just not serverless or edge:
import { defineConfig } from "astro/config";
import starlight from "@astrojs/starlight";
import vercel from "@astrojs/vercel/static";

// https://astro.build/config
export default defineConfig({
  integrations: [
    starlight({
      // Starlight options
    }),
  ],
  // Process images with sharp: https://docs.astro.build/en/guides/assets/#using-sharp
  image: {
    service: {
      entrypoint: "astro/assets/services/sharp",
    },
  },
  adapter: vercel({
    analytics: true,
  }),
});

This could be helpful if you're looking to enable the built-in analytics or redirects support. https://github.com/withastro/astro/issues/7563 is breaking analytics support currently but it should work once that is fixed.


Website WG Meeting on 6/8/15

Is anybody able to attend a Website WG meeting under the Node Foundation flag tomorrow?
ping: @therebelrobot @mikeal @zeke @Fishrock123 @indexzero @snostorm

Flying tomorrow, nada.

I can make it but not until about 3pm EDT

I can likely make it, depending on the time. We should probably get a time up with a few days notice for the sake of high attendance. I want to make sure our new members are able to join as well (we should be pinging them as well.)

Sorry, won't make it. Is there an agenda for the meeting?

@therebelrobot I'll take it on if nobody steps up. I'm sure there's someone else who can probably fulfill the role better than me though, so I encourage someone else to take the role.

Should we continue with the meetingtoday at 3:00PM EST (19:00 GMT), or wait until a few more members can attend?
@snostorm Where is a list of other WG members? I pinged the members listed in the README, but there are more listed somewhere, which I've not been able to loacte.

/ping @timaschew @robertkowalski @mkdolan @geek

Closing, didn't happen.


Is the project still maintained?

I have same question

Today(Yesterday) I submitted and approved new version to UnityAssetStore.
https://github.com/neuecc/UniRx/pull/318
I'm writing release note and readme now.

I've added release note and updated ReadMe.
And I've post the blog, detail of UniRx.Async and deteminiation of keep development of UniRx.
https://medium.com/@neuecc/zero-overhead-async-await-for-unity-by-custom-async-statemachine-with-c-7-0-6808695733ba


jQuery plugins are not included in the zip file.

The example page here:
http://twitter.github.com/bootstrap/examples/starter-template.html
Makes use of the jquery plugins like this:
<script src="../assets/js/bootstrap-transition.js">
However, when I customize a download and select all jQuery plugins, there is nothing within the JS folder except for:
bootsrap.js and bootstrap.min.js
The customizer only mentions the need to download jQuery separately, not the plugins. I took a look at the bootrap.js file and it seems to include functions for the plugins I selected. Maybe the example is incorrect?

Well the git hub repository seems to have the plugins in the js directory, but the customizer doesn't include them.

This is the expected behavior. The download concatenates all the plugins into one file, which is recommended anyways. The example doesn't show this because the bootstrap.js doesn't exist in the repo, the script concatenates them for you when you download. At the bottom of the customize page it says Downloads include compiled CSS, compiled and minified CSS, and compiled jQuery plugins. The plugins don't need to be downloaded separately as you should just include the bootstrap.min.js in your project which will include the plugins you opted to include when customizing it.
If you happen to want them as their own files then you can get them from the repo or break them out from the bootstrap.js.

Then I think the examples need fixed since they access the plugins directly.

They would have to include a bootstrap.js in the repo and generate it every time they update a plugin. Right now when you customize and download it will concatenate all the plugins into one js file just for the download, that file isn't in the repo.

Yep - @jamesfleeting is right - thanks!


bugfix: 插件管理-节点列表页面加载异常(fixed #334)

Codecov Report

Merging #343 (da5f983) into V2.1.358-rc (ff08212) will increase coverage by 0.01%.
The diff coverage is 100.00%.

:exclamation: Current head da5f983 differs from pull request most recent head 13ccdf5. Consider uploading reports for the commit 13ccdf5 to get more accurate results

@@               Coverage Diff               @@
##           V2.1.358-rc     #343      +/-   ##
===============================================
+ Coverage        62.61%   62.62%   +0.01%
===============================================
  Files              246      246
  Lines            19953    19954       +1
===============================================
+ Hits             12494    12497       +3
+ Misses            7459     7457       -2

Impacted Files
Coverage Δ

apps/node_man/handlers/meta.py
92.68% <100.00%> (+0.03%)
:arrow_up:

apps/node_man/handlers/job.py
86.32% <0.00%> (+0.50%)
:arrow_up:

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 ff08212...13ccdf5. Read the comment docs.


[Feature Request] shorthand array sort

It would be very handy to have a short hand version for array sorting like this:
LET a = [1,4,2,3]
RETURN a[* SORT CURRENT]
// [1,2,3,4]

or
LET a = [{a:1},{a:3},{a:2}]
RETURN a[* SORT CURRENT.a].a
// [1,2,3]

Doesn't SORTED() do the trick? https://www.arangodb.com/docs/stable/aql/functions-array.html#sorted (available since v3.4)
LET a = [1,4,2,3]
RETURN SORTED(a)
// [1,2,3,4]

LET a = [{a:1},{a:3},{a:2}]
RETURN SORTED(a[*].a)
// [1,2,3]

It sure does, but I use the [* FILTER RETURN] quite ofter because its easy to read an shortens the query a lot. It's just a suggestion. If this is not wanted, close the issue. It just felt natural to me that this feature should exist. 😅

I believe it's not possible (or at least not sensible) to add something like SORT to inline expressions because of the way it is implemented. Elements are computed on-the-fly as far as I understand, which means the code which FILTERs, LIMITs and RETURNs only gets to see and process one element at a time. A sort cannot be done on-the-fly. @jsteemann can probably provide a more qualified answer however.

Why is it implemented differently?

I believe the general answer is because specialized implementation provide a performance benefit. I don't know the details, but I think the inline expressions work much like .filter().map() in other languages (LIMIT aside). Each element is processed individually, whereas high-level operations work in batches of 1000 records at a time and then pass on the intermediate result to the next stage/operation. Before the addition of the heap-constrained sort optimization, AQL would even produce a full result, sort it and only then LIMIT it to the requested amount. I think that inline expressions do not compute more results than necessary internally, but rather calculate them on-the-fly, stopping as soon as the LIMIT is reached.
Inline expressions could be translated to high-level operation constructs, but it would add additional scopes and variables and potentially lead to performance regressions in some cases. Subquery splicing is not always possible, but even if, then there is still some additional cost for the translation and optimization.


Add ExtractJob::Updater for setting options.

Also move some shared conversion code to the Convert class.
Another step towards https://github.com/GoogleCloudPlatform/google-cloud-ruby/issues/1960

CI acceptance tests pass:
$ rake acceptance[...]
WARNING: You are running Ruby 2.2.8, which is nearing end-of-life.
The Google Cloud API clients work best on supported versions of Ruby. Consider upgrading to Ruby 2.3 or later.
See https://www.ruby-lang.org/en/downloads/branches/ for more info on the Ruby maintenance schedule.
To suppress this message, set the GOOGLE_CLOUD_SUPPRESS_RUBY_WARNINGS environment variable.
Run options: --seed 45328

# Running:

..............................................S..................................................................................

Finished in 638.538364s, 0.2020 runs/s, 2.5652 assertions/s.

129 runs, 1638 assertions, 0 failures, 0 errors, 1 skips

You have skipped tests. Run with --verbose for details.
Cleaning up bigquery datasets after tests.

This commit is now at https://github.com/GoogleCloudPlatform/google-cloud-ruby/pull/2016

Okay to merge?
I'll probably have a conflict in service.rb in my other two PRs, so I can fix those up after this one or https://github.com/GoogleCloudPlatform/google-cloud-ruby/pull/2015 goes in.

@tswast This question is not directly related to this PR. I'm working on adding Job regionalization support, but it will conflict greatly with these changes. Would you like me to do this work off of your changes in the bigquery branch? Which means it would have to wait to be released when these changes are ready. Or would you like me to do this work in master, which would mean a pretty large effort to resolve the conflicts?

@blowmage I'm hoping these were the last PRs I needed to do, but you're right that it's going to cause a bunch of merge conflicts. I'm fine having these changes go out concurrently with the Job regionalization.

Okay, I’ll plan on following up this and the other PRs with one that adds location and does some other refactoring.
I’ll approve as soon as this PR goes green.

@blowmage It's green.


Duplicate card glitch

While playing, during automatic stacking, I was able to duplicate a stack of cards. I tried moving a stack of cards while it was being stacked. This caused the game to softlock.

https://github.com/user-attachments/assets/dccde4a8-397b-4035-a0ab-a1ebdcd8ac02
Here is a recording!


Allow redirects from and for subclasses of page and document

Implements the issue #203

Thank you so much! The code looks great. Let's get a quick test in here.
In spec/jekyll_redirect_from/generator_spec.rb, let's add:
context "redirectable_document?" do
  let(:generator) { JekyllRedirectFrom::Generator.new }
  it "accepts subclasses of Jekyll::Document" do
    SubclassOfJekyllDocument = Class.new(Jekyll::Document)
    expect(generator.send(:redirectable_document?, SubclassOfJekyllDocument.new)).to be_truthy
  end

  it "accepts subclasses of Jekyll::Document" do
    SubclassOfJekyllPage = Class.new(Jekyll::Page)
    expect(generator.send(:redirectable_document?, SubclassOfJekyllPage.new)).to be_truthy
  end
end

I haven't run the above code but hopefully it gets you started. 🚀

Sorry guys, busy life happened. I have added the tests with a little modification.


Query tags with inheritance table(s) in the query

TagWith does not output the tag when inheritance table(s) are involved in the query.
I created a minimal repro here: https://github.com/sshukurov/EntityFrameworkCoreProblemWithQueryTags
Further technical details
EF Core version: 3.0.1.
Database provider: Npgsql.EntityFrameworkCore.PostgreSQL 3.0.1.
Target framework: .NET Core 3.0
Operating system: Windows 10 Pro
IDE: Visual Studio 2019 16.3.10

@sshukurov I was able to reproduce this on SQL Server with 3.0. However, the issue does not reproduce with 3.1:
info: Microsoft.EntityFrameworkCore.Database.Command[20101]
      Executed DbCommand (6ms) [Parameters=[], CommandType='Text', CommandTimeout='30']
      -- This tag must show up!

      SELECT [j].[Id]
      FROM [Jobs] AS [j]
info: Microsoft.EntityFrameworkCore.Database.Command[20101]
      Executed DbCommand (2ms) [Parameters=[], CommandType='Text', CommandTimeout='30']
      -- This tag must be missing!

      SELECT [u].[Id], [u].[Name], [u].[ispoweruser], [u].[Level]
      FROM [Users] AS [u]
      WHERE [u].[ispoweruser] IN (CAST(0 AS bit), CAST(1 AS bit))

I expect the root cause is the same as #18466
Can you try again with 3.1 preview 3?


Build fails (incompatible type as argument)

Getting this when installing
go get github.com/appc/docker2aci

# github.com/appc/docker2aci/lib/common
go/src/github.com/appc/docker2aci/lib/common/common.go:96: cannot use reader (type *aci.TarReadCloser) as type *tar.Reader in argument to aci.ValidateArchive
go/src/github.com/appc/docker2aci/lib/common/common.go:358: cannot use *reader (type aci.TarReadCloser) as type tar.Reader in argument to tarball.Walk

Facing the same issue just now.

Hmm, this is a result of recent appc changes. @sgotti would you mind taking a look?

@jonboulle. Sure. Didn't had time today, will do tomorrow.

@jonboulle I wrote of these needed changes in rkt and docker2aci in appc/spec#461 but forgot that docker2aci doesn't use vendored libraries... Created #80.

Tried you patch and it works, thanks!

Fixed by #80


In 0.7.9 with Midi-QoL enabled monochrome filter is applied even within light sources

The monochrome filter stays on even in light sources while running Foundry 0.7.9, Midi-QOL 0.3.39 and Perfect Vision 1.2.16

It's a Midi QOL bug. Disable Players control owned hidden tokens for now.

Ah thank you - I had to search through Closed issues to find this. May consider putting section for Conflicts in the README.


choropleth layer doesn't work with immutablejs

really the underlying problem is with normalize-geojson.

Changing title as the ChoroplethLayer is deprecated.

Did a push on immutable support in v4 across all layers but we ended up deciding it is not worth the extra constraints complication on the code. We may revisit the decision in the future.


Add some docs on using jest.mock(...)

Summary
I find the current docs on mocking lacking in the area of mocking an existing module. The hope is this example will show people a simple, real-world way to mock node modules (whether from npm or in their own projects).
I looked through all the docs and couldn't find a clear example like this so I hope it is helpful to others!
Test plan
Not relevant

No idea why this would break CircleCI, must be some unrelated issue

@danawoodman run yarn lint:md locally to fix CI 🙂

@rickhanlonii @lukeapage just updated the PR with suggested changes, let me know if it looks better?
Regarding your questions, I think this location makes the most sense since it isn't specific to ES6 classes but mocking in general. The Mock Functions page is going to be seen by more people most likely as well and considering it lakes a real-world example, I think having this example (or something functionally similar) is very helpful for new users. Plus, showing an example that looks like real code in a living application should help making it "click" for people (it was for me!). Let me know what you think!

Codecov Report

Merging #5648 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #5648   +/-   ##
=======================================
  Coverage   63.16%   63.16%
=======================================
  Files         216      216
  Lines        7913     7913
  Branches        4        3    -1
=======================================
  Hits         4998     4998
  Misses       2914     2914
  Partials        1        1

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 e6659b8...a8f9b79. Read the comment docs.

@rickhanlonii for some reason yarn lint:md now fails locally with:
yarn lint:md
yarn lint:md v0.23.2
$ yarn --silent lint:md:ci --fix
error `install` has been replaced with `add` to add new dependencies. Run "yarn add lint:md:ci" instead.
error Command failed with exit code 1.

Any idea why?

@rickhanlonii just pushed a fix and 🤞 it works this time! 😆

@danawoodman looks like you're on an old version of yarn

Ok, hope this is ready to merge 😆

Thanks @danawoodman and congrats on your first contrib!

Awesome, thanks!! 🕺🎉


[Docs] "warning" is inappropriate

Current Behavior
On https://docs.layer5.io/cloud/reference/#all-api-endpoints
Expected Behavior
This note is informational and should not be a warning.
Screenshots/Logs

Contributor Guides and Resources

🛠 Meshery Build & Release Strategy
📚 Instructions for contributing to documentation

Meshery documentation site and source

🎨 Wireframes and designs for Layer5 site in Figma (open invite)
🙋🏾🙋🏼 Questions: Layer5 Discussion Forum and Layer5 Community Slack

Hi @hamza-mohd ,
Are you expecting this?

If yes and if this Issue is open then can I raise a PR?

Thanks for listing this issue @hamza-mohd ,
@nikhilkalburgi go on please raise the PR

@nikhilkalburgi are you still fixing this?

Yes, I will raise the PR by tomorrow


Add target: es2022

Suggestion

🔍 Search Terms

es2022
✅ Viability Checklist

My suggestion meets these guidelines:

[x] This wouldn't be a breaking change in existing TypeScript/JavaScript code
[x] This wouldn't change the runtime behavior of existing JavaScript code
[x] This could be implemented without emitting different JS based on the types of the expressions
[x] This isn't a runtime feature (e.g. library functionality, non-ECMAScript syntax with JavaScript output, new syntax sugar for JS, etc.)
[x] This feature would agree with the rest of TypeScript's Design Goals.

⭐ Suggestion

There are now some accepted proposals targeting ES2022.
📃 Motivating Example

Class fields, RegExp match indices, top level await
💻 Use Cases

Whatever.

"Use Cases" ==> "Whatever" :D :D :D Maybe just remove section that is not needed/used...

We would prefer to add ES2022 as a target at a later time, once the ES standard implementation is completed or unlikely to change.
The reason is that if we add ES2022 as a target now, we would need to implement a transformer for the target, but the proposals' implementations may still change and this would affect the transformer's implementation.

@saschanaz
If there's a specific problem you have related to ES2022, e.g. adding something to lib.esnext.d.ts, you could create another issue just for that.

once the ES standard implementation is completed or unlikely to change.

I intended to cover only finished proposals in stage 4, and thus it shouldn't be any significant issue here.


Popup button randomly stops working

Popup button randomly stops opening, URL states it's being called but the card is not opening when the button in the horizontal bar is being pressed.

I also had this issue but it should be fixed in v1.6.3.

I also had this issue but it should be fixed in v1.6.3.

Oh alright, is there any solution to get it to work again in the meantime until that version is released?

Bien sûr, voici votre texte corrigé en anglais :
Could you try this early version by installing it with the Without HACS installation method? This is the version that I'm currently using on my personal setup and I haven't had this issue since. I hope that it wasn't just luck.
Bubble Card v1.6.0-beta.3 test.zip

Same issue here. Where do I place those files for testing. Would like to try this as well.

I tried installing the beta 3 without HACS which didn't work. Then tried installing several older versions through HACS which didn't work either. One button is still not opening it's card when it's being called for.

A restart did it for me. Full restart of the tablet.
On Sun, Dec 24, 2023, 11:32 AM TheNewKind @.***> wrote:

I tried installing the beta 3 without HACS which didn't work. Then tried
installing several older versions through HACS which didn't work either.
One button is still not opening it's card when it's being called for.
—
Reply to this email directly, view it on GitHub
https://github.com/Clooos/Bubble-Card/issues/258#issuecomment-1868553895,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A7NZDBFS2VYHISY2S5EEEF3YLBKK3AVCNFSM6AAAAABBBA7HLOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNRYGU2TGOBZGU
.
You are receiving this because you commented.Message ID:
@.***>

With that being said, something is definitely wrong with the edit feature.
When you press edit it's a whole garbled mess cards are all jumbled
together. For me anyways.
On Sun, Dec 24, 2023, 11:36 AM C.J. Dodd @.***> wrote:

A restart did it for me. Full restart of the tablet.
On Sun, Dec 24, 2023, 11:32 AM TheNewKind @.***>
wrote:

I tried installing the beta 3 without HACS which didn't work. Then tried
installing several older versions through HACS which didn't work either.
One button is still not opening it's card when it's being called for.
—
Reply to this email directly, view it on GitHub
https://github.com/Clooos/Bubble-Card/issues/258#issuecomment-1868553895,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A7NZDBFS2VYHISY2S5EEEF3YLBKK3AVCNFSM6AAAAABBBA7HLOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNRYGU2TGOBZGU
.
You are receiving this because you commented.Message ID:
@.***>

So what ended up working for me was changing the hash and hash link to something else. I don't know how to replicate the bug precisely but it seemed to bug out for me twice now after tapping the button in quick succession. Glad i found a temporary fix though! Thanks for all the work and effort building and maintaining Bubble Card @Clooos!

With that being said, something is definitely wrong with the edit feature. When you press edit it's a whole garbled mess cards are all jumbled together. For me anyways.

Indeed I can confirm that, I have this issue too on v1.6.0-beta.3 test, I should have messed up with something because it was not the case before.

So what ended up working for me was changing the hash and hash link to something else. I don't know how to replicate the bug precisely but it seemed to bug out for me twice now after tapping the button in quick succession. Glad i found a temporary fix though! Thanks for all the work and effort building and maintaining Bubble Card @Clooos!

I'm still not sure to understand correctly your issue, this is weird that changing the hash fixed it.

With that being said, something is definitely wrong with the edit feature. When you press edit it's a whole garbled mess cards are all jumbled together. For me anyways.

This is fixed in the last beta!
https://github.com/Clooos/Bubble-Card/releases/tag/v1.6.0-beta-3

Thank you sir.  You are the best!
On Wed, Dec 27, 2023, 12:14 PM Cloos @.***> wrote:

With that being said, something is definitely wrong with the edit feature.
When you press edit it's a whole garbled mess cards are all jumbled
together. For me anyways.
This is fixed in the last beta!
https://github.com/Clooos/Bubble-Card/releases/tag/v1.6.0-beta-3
—
Reply to this email directly, view it on GitHub
https://github.com/Clooos/Bubble-Card/issues/258#issuecomment-1870486423,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A7NZDBFOUAB5D65ZI2GMCXDYLRJOPAVCNFSM6AAAAABBBA7HLOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNZQGQ4DMNBSGM
.
You are receiving this because you commented.Message ID:
@.***>


Feature: Add More Badges 👀

Describe the solution you'd like
Add More Badges like Prettier, Continous Integration

I don't think we would need CI/CD in this repo

Check these out:
CI Badge
https://github.com/JasonEtco/action-badges#usage
Prettier Badge
https://github.com/prettier/prettier#badge


Affiliate program

Amazon affiliate associate

Is it possible to integrate for auto build for website

Recommend closing this. This user's been submitting multiple suspicious PRs to other projects.


documentation of baby dragons

Bhavini Madhuranath
PES2UG20CS088
Send brownie points plox :)
issue #8

Hi @BhaviniMadhuranath, good job but no brownies this time :P

!bounty 20


Update 1.1 (Darkmode and Design improvement)

Update 1.1 (Darkmode and Design improvement)

CSE conversion and Darkmode switch available
Design improvement
CSS optimization
inlinerollresult color change in order to adapt to the success and failure of the Ten Candles's rules

Submission Checklist
Required

[x ] The pull request title clearly contains the name of the sheet I am editing.

[x ] The pull request title clearly states the type of change I am submitting (New Sheet/New Feature/Bugfix/etc.).

[x ] The pull request makes changes to files in only one sub-folder.

[ x] The pull request does not contain changes to any json files in the translations folder (translation.json is permitted)

[ x] I have followed the Character Sheets Standards when building this sheet.

[ ] This sheet has been made on behalf of, or by, the game's publisher.
[ ] This game is not a traditionally published game, but a copy of the game rules can be purchased/downloaded/found at: <   >
[ ] This sheet is for an unofficial fan game, modification to an existing game, or a homebrew system.

Changes / Description

Character Sheet Info Roll20 Internal Use only.


ORC-203 - Update StringStatistics to trim long strings to 1024 characters & record they were trimmed

This PR adds the functionality described in ORC-203.

I'm sorry, I accidentally pushed this while it is still in review. I've reverted the change, but please reopen this PR.

@omalley np, I opened a new PR https://github.com/apache/orc/pull/299


Segfault when compiling loop with no initializer for loop variable

[Shaders, screenshots, error log, reproduction steps, platform info, etc.] [ZIP]

Reported upstream

Fixed in Swiftshader commit d0bfd91562ad116319fbc0b896d7e01f326aa9de


feat: create project if not exists

@aboguszewski-sumo please add comments if you have any and I will create another PR with fixes eventually 😅


Global gestion of the errors if a page is saved and a sections is invalid, from the Library

[x] When you save the page and one of the section is invalid for any reason, let's have an error showing instead of the success message saying:
English : We have an issue saving your page, some sections could not be saved. Scroll over your page to see which section has an issue
French: Nous rencontrons un problème lors de l'enregistrement de votre page, certaines sections n'ont pas pu être sauvegardées. Faites défiler votre page pour voir quelle section pose problème.
[x] When the above is happening, highlight the the outline of the section or sections concerned in red and show at the section level the error coming from the backend with this sentence before:
English :"This section could not  be saved for the following reason : "
French: "Cette section n'a pas pu être sauvegardée pour la raison suivante: "

Per Julien you can know which sections to highlight with the response returned when saving the page, all the valid sections have their ids returned and the invalid one is in the invalid sections  listing , with its weight and  its name and the error returned
 "invalid_sections": [
        {
            "weight": 1,
            "options": [
                {
                    "media": {}
                }
            ],
            "name": "sectionunlink1",
            "error": "Malformed options payload when processing media, make sure it is an array of json objects"
        }
    ]

Acceptance testing

[x] When you save the page and one of the section is invalid for any reason, let's have an error showing instead of the success message saying:
English : We have an issue saving your page, some sections could not be saved. Scroll over your page to see which section has an issue
French: Nous rencontrons un problème lors de l'enregistrement de votre page, certaines sections n'ont pas pu être sauvegardées. Faites défiler votre page pour voir quelle section pose problème.
[x] When the above is happening, highlight the the outline of the section or sections concerned in red and show at the section level the error coming from the backend with this sentence before:
English :"This section could not  be saved for the following reason : "
French: "Cette section n'a pas pu être sauvegardée pour la raison suivante: "

@mahfouzhseineweev  we need to fix issue https://github.com/Geeks-Solutions/nuxt-sections/issues/14 before closing this one


fix(iOS): status bar style

Fix https://github.com/etabakov/fivekmrun-app/issues/80.

Thanks @vchimev! Appreciate the contribution :)


Added support for Confluence Cloud

Hey, I just made a Pull Request!
Added support for Confluence Cloud to the confluence:transform:markdown action:

Updated URL parsing
Updated token usage
Added new config setting

:heavy_check_mark: Checklist

[x] A changeset describing the change and affected packages. (more info)
[x] Added or updated documentation
[x] Tests for new functionality and regression tests for bug fixes
[ ] Screenshots attached (for UI changes)
[x] All your commits have a Signed-off-by line in the message. (more info)

I love this idea of adding more functionality to this. I added one comment as a suggestion/discussion.

Yeah, you've done some great work here and once I got thinks rolling I gave it some pretty messy, image and attachment heavy pages and it handle them like a boss! Awesome work @tradcliffe-expediagroup
There are a few other changes I'd like to make but wanted to start with this so we could get using it. We actually don't have mkdocs.yml files in our repos - we were creating them and then we added support for creating a default one if there isn't #15417 - so it would be great to have an option to skip that part.

Just a small ping to keep it alive.

@tradcliffe-expediagroup @freben I've done a large refactor of my changes based on feedback from both of you. Might be good to do another full review because of this. I added support for username/password auth and also moved the encoding into the action itself so people wanting to use it won't have to deal with that aspect.

After I did some manual testing I realized I inverted basic and bearer, that's been fixed now. Also, for the userpass auth method I pulled the implementation from here but I have no way to test it: https://github.com/backstage/backstage/blob/79ca6079f45e2765250d918ee50239568b490455/packages/integration/src/bitbucketCloud/core.ts#L130

Yeah!!! Thanks @freben 🚀


bug: ForestNew throws an error and key bindings don't work but Forestpen does not

Did you check docs and existing issues?

[X] I have read all the plugin docs
[X] I have searched the existing issues
[X] I have searched the existing issues of plugins related to this issue

Neovim version (nvim -v)
0.9.4
Operating system/version
MacOS 13.4
Describe the bug
Neither :ForestNew command, nor its key bindings are working properly on my machine. However, :Forestpen is, and its key bindings are just fine. When activating :ForestNew, the "Select one of" window pops up but then this error appears. Not sure what to do about this.
Error executing vim.schedule lua callback: ...im/site/pack/packer/start/forester.nvim/lua/forester.lua:20: attempt to co
ncatenate a nil value
stack traceback:
...im/site/pack/packer/start/forester.nvim/lua/forester.lua:20: in function <...im/site/pack/packer/start/forest
er.nvim/lua/forester.lua:19>
Steps To Reproduce

Call :ForestNew
Type in desired name of tree

Expected Behavior
Tree generation and to take me to that tree.

What version of forester are you on? This feature made use of a feature I had implemented on my branch of forester, which was only merged yesterday.

I'm on forester 2.5.1

How did you install it? If you installed it with opam, then the newest features are not part of your release.

Yes I installed it with opam. I guess I need to do something else?

This commit is what added the feature:
https://git.sr.ht/~jonsterling/ocaml-forester/commit/faad8193b27db19e191e22cdecccdcb2492b8adb
I just saw that Jon released forester 3.0.0 yesterday, the feature is part of that release

And you should update a more recently version due to a bug just fixed a few hours ago XD.

I also fixed the typo in the command name

Just updated forester to the latest version. Now the "Select one of" box is not empty and is populated with an already present tree prefix, but I'm having the same issue as before.

What is the output of the command forester new --prefix foo --dir trees?

So that specific command returns an error:
forester: required option --dest is missing Usage: forester new [OPTION]… Try 'forester new --help' or 'forester --help' for more information.

I hadn't updated the plugin to use the new version of forester. Feel free to reopen if there are any issues.


table.render outputs nothing when used inside Thor

Describe the problem
When using TTY::Table inside a Thor based CLI application the .render method outputs nothing.
table = TTY::Table.new(rows: [[1,2], [3,4])
table.render(:unicode)

results in

If you execute
puts table.render(:unicode)

You see the table as expected. However all cell formatting via renderer.filter lamba, as described in the docs is lost. Specifically the Color coding is lost. For instance
table = TTY::Table.new(rows: [[1,2], [3,4])
say table.render(:unicode) do |render|
  render.filter = ->(val, row_index, col_index) do
    pastel = Pastel.new
    paste.green(val)
  end
end

This renders the table, but only in black and white.
Expected behaviour
I expected a the cells to have green text.
Describe your environment

OS version: alpine 3.12.3 (ruby docker version ruby3-alpine)
Ruby version: 3.0
TTY::Table version: 0.12.0

Hi Kevin 👋
Thanks for using tty-table.
The render returns table as a string, then it's up to you how you want to display it. I'd appreciate any improvements to the documentation that may help anyone in the future.
Your example will work provided that before printing the result, you assign the returned string like so:
table = TTY::Table.new(rows: [[1,2], [3,4])
pastel = Pastel.new
green = pastel.green.detach # creates a proc to make colouring efficient

rendered_table = table.render(:unicode) do |render|
  render.filter = ->(val, row_index, col_index) do
    green[val]
  end
end

say rendered_table

Alternatively, when a filter is expressed in a single line block things work fine:
say table.render(:unicode) { |r| r.filter = ->(val, ri, ci) { green[val] } }

I'm not sure why say, which is a wrapper around puts call ignores a multiline block. It's one of the mysterious of Ruby and another gotcha that could be added in the documentation. Do you have a minute to submit PR?

Hi Kevin 👋
Thanks for using tty-table.
The render returns table as a string, then it's up to you how you want to display it. I'd appreciate any improvements to the documentation that may help anyone in the future.
Your example will work provided that before printing the result, you assign the returned string like so:
table = TTY::Table.new(rows: [[1,2], [3,4])
pastel = Pastel.new
green = pastel.green.detach # creates a proc to make colouring efficient

rendered_table = table.render(:unicode) do |render|
  render.filter = ->(val, row_index, col_index) do
    green[val]
  end
end

say rendered_table

Alternatively, when a filter is expressed in a single line block things work fine:
say table.render(:unicode) { |r| r.filter = ->(val, ri, ci) { green[val] } }

I'm not sure why say, which is a wrapper around puts call ignores a multiline block. It's one of the mysterious of Ruby and another gotcha that could be added in the documentation. Do you have a minute to submit PR?


C# DNS resolution failure with gRPC 1.19 / WS2008R2

What version of gRPC and what language are you using?
C# / net461
gRPC 1.19.0
What operating system (Linux, Windows,...) and version?
Windows Server 2008 R2 64bit
What did you do?

Added Google.Cloud.Logging.V2 to fresh c# project.
Added gRPC 1.19.0 to c# project.
Added single logging call to trigger gRPC call to server in console application.
Published project: dotnet publish -c release r win-x64
Ran on Windows Server 2008 R2 64bit

What did you expect to see?
Successful gRPC call to GCL.
What did you see instead?
c# Logging gRPC call failed with "DNS resolution failure". Note this error also occurs for other GCP gRPC apis (metrics for eg.)
Anything else we should know about your project / environment?
The same program ran fine on Windows 10 and Windows Server 2012 R2.
Downgrading to gRPC nuget 1.18.0 resolves the issue.
Other gRPC calls were successful on same server using gRPC 1.19.0 with IP addresses for server references.

Log output belwo
D0317 21:46:57.947138 Grpc.Core.Internal.NativeExtension gRPC native library loaded successfully.

D0317 21:46:57.952997 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolve
r\dns\c_ares\dns_resolver_ares.cc:488: Using ares dns resolver

I0317 21:46:57.952997 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\init.cc:155:
grpc_init(void)

I0317 21:46:57.960809 0
T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\completion_queue.cc:481:
grpc_completion_queue_create_internal(completion_type=0, polling_type=0)

I0317 21:46:57.960809 0
T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\completion_queue.cc:481:
grpc_completion_queue_create_internal(completion_type=0, polling_type=0)

I0317 21:46:57.960809 0
T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\completion_queue.cc:481:
grpc_completion_queue_create_internal(completion_type=0, polling_type=0)

I0317 21:46:57.960809 0
T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\completion_queue.cc:481:
grpc_completion_queue_create_internal(completion_type=0, polling_type=0)

I0317 21:46:57.961785 0
T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\completion_queue.cc:959:
grpc_completion_queue_next(cq=00000000023393F0, deadline=gpr_timespec { tv_sec:<PHONE_NUMBER>854775807, tv_nsec: 0,
clock_type: 1 }, rese
rved=0000000000000000)

I0317 21:46:57.961785 0
T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\completion_queue.cc:959:
grpc_completion_queue_next(cq=0000000002339510, deadline=gpr_timespec { tv_sec:<PHONE_NUMBER>854775807, tv_nsec: 0,
clock_type: 1 }, rese
rved=0000000000000000)

I0317 21:46:57.962762 0
T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\completion_queue.cc:959:
grpc_completion_queue_next(cq=0000000002339630, deadline=gpr_timespec { tv_sec:<PHONE_NUMBER>854775807, tv_nsec: 0,
clock_type: 1 }, rese
rved=0000000000000000)

I0317 21:46:57.962762 0
T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\completion_queue.cc:959:
grpc_completion_queue_next(cq=0000000002339750, deadline=gpr_timespec { tv_sec:<PHONE_NUMBER>854775807, tv_nsec: 0,
clock_type: 1 }, rese
rved=0000000000000000)

I0317 21:46:57.964715 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\security\credentials\plugin\pl
ugin_credentials.cc:250: grpc_metadata_credentials_create_from_plugin(reserved=0000000000000000)

I0317 21:46:57.965691 0
T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\security\credentials\ssl\ssl_credentials.cc:128:
grpc_ssl_credentials_create(pem_root_certs=(null), pem_key_cert_pair=0000000000000000, verify_options=0000000000000000
, reserved=0000000000000000)

I0317 21:46:57.965691 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\security\credentials\composite
\composite_credentials.cc:206: grpc_composite_channel_credentials_create(channel_creds=000000001CE48310,
call_creds=000000000231C1A0, res
erved=0000000000000000)

I0317 21:46:57.965691 0
T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\security\credentials\credentials.cc:49:
grpc_call_credentials_release(creds=000000000231C1A0)

I0317 21:46:57.965691 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\init.cc:155:
grpc_init(void)

I0317 21:46:57.965691 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\transport\chttp2\client\secure
\secure_channel_create.cc:198: grpc_secure_channel_create(creds=0000000002350470, target=logging.googleapis.com:443,
args=000000001CE3DFA
0, reserved=0000000000000000)

I0317 21:46:57.965691 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\channel.cc:285:
grpc_channel_get_target(channel=000000001CE3E9B0)

I0317 21:46:58.028187 0
T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\completion_queue.cc:481:
grpc_completion_queue_create_internal(completion_type=1, polling_type=0)

I0317 21:46:58.049670 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\metadata_array.cc:29:
grpc_metadata_array_init(array=000000001CE3E040)

I0317 21:46:58.052600 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\call.cc:1905:
grpc_call_start_batch(call=000000001CE558E0, ops=00000000004FE170, nops=6, tag=0000000002308180,
reserved=0000000000000000)

I0317 21:46:58.052600 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\call.cc:1511: ops[0]:
SEND_INITIAL_METADATA
key=x-goog-api-client value=67 6c 2d 64 6f 74 6e 65 74 2f 34 2e 30 2e 33 30 33 31 39 20 67 63 63 6c 2f 32 2e 33 2e
30 2d 62 65 74 61 30 31 20 67 61 70 69 63 2f 32 2e 33 2e 30 2d 62 65 74 61 30 31 20 67 61 78 2f 32 2e 35 2e 30 20 67
72 70 63 2f 31 2e 31 39 2e 30 'gl-dotnet/4.0.30319 gccl/2.3.0-beta01 gapic/2.3.0-beta01 gax/2.5.0 grpc/1.19.0'

I0317 21:46:58.052600 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\call.cc:1511: ops[1]:
SEND_MESSAGE ptr=000000000232EE50

I0317 21:46:58.052600 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\call.cc:1511: ops[2]:
SEND_CLOSE_FROM_CLIENT

I0317 21:46:58.052600 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\call.cc:1511: ops[3]:
RECV_INITIAL_METADATA ptr=00000000023081B8

I0317 21:46:58.052600 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\call.cc:1511: ops[4]:
RECV_MESSAGE ptr=00000000023081D0

I0317 21:46:58.052600 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\call.cc:1511: ops[5]:
RECV_STATUS_ON_CLIENT metadata=00000000023081D8 status=00000000023081F0 details=00000000023081F8

Unhandled Exception: Grpc.Core.RpcException: Status(StatusCode=Unavailable, Detail="Name resolution failure")
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Grpc.Core.Internal.AsyncCall`2.UnaryCall(TRequest msg)
   at Grpc.Core.DefaultCallInvoker.BlockingUnaryCall[TRequest,TResponse](Method`2 method, String host, CallOptions optio
ns, TRequest request)
   at Grpc.Core.Interceptors.InterceptingCallInvoker.<BlockingUnaryCall>b__3_0[TRequest,TResponse](TRequest req, ClientI
nterceptorContext`2 ctx)
   at Grpc.Core.ClientBase.ClientBaseConfiguration.ClientBaseConfigurationInterceptor.BlockingUnaryCall[TRequest,TRespon
se](TRequest request, ClientInterceptorContext`2 context, BlockingUnaryCallContinuation`2 continuation)
   at Grpc.Core.Interceptors.InterceptingCallInvoker.BlockingUnaryCall[TRequest,TResponse](Method`2 method, String host,
 CallOptions options, TRequest request)
   at Google.Cloud.Logging.V2.LoggingServiceV2.LoggingServiceV2Client.WriteLogEntries(WriteLogEntriesRequest request, Ca
llOptions options)
   at Google.Api.Gax.Grpc.ApiCall.GrpcCallAdapter`2.CallSync(TRequest request, CallSettings callSettings)
   at Google.Api.Gax.Grpc.ApiCallRetryExtensions.<>c__DisplayClass1_0`2.<WithRetry>b__0(TRequest request, CallSettings c
allSettings)
   at TestGrpc.Program.Test()
   at TestGrpc.Program.Main(String[] args)
I0317 21:48:10.315901 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\completion_queue.cc:139
2: grpc_completion_queue_destroy(cq=00000000023AD910)
I0317 21:48:10.316877 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\completion_queue.cc:138
6: grpc_completion_queue_shutdown(cq=00000000023AD910)

Not yet sure what the issue is, but workaround for time being is likely to run your binary under environment variable setting: GRPC_DNS_RESOLVER=native, when using "Windows Server 2008 R2 64bit".

This has turned out to be a bit tricky to reproduce. Haven't yet been able to get C# DNS resolution on the 1.19 release to fail, even when using "Windows server 2008 R2".
@plaisted if you have time, mind running the binary under environment variable settings:
GRPC_VERBOSITY=DEBUG
GRPC_TRACE=api,http,cares_resolver,cares_address_sorting

Regarding the workaround, we just reverted to 1.18 so fine there.
I'll try to recreate with the above traces enabled. The server runs in a private data center under hyper-V. It's a "legacy" environment from an acquisition so we've found some surprises before so could be an odd configuration of the server or similar contributing to the issue.

This is also impacting us on a variety of Windows 7/10 systems, setting GRPC_DNS_RESOLVER=native is a successful workaround but in the meantime we have rolled back to 1.18.0. The specific issue we are observing is with netbios names on ares resulting in Name Resolution Failure - IPs and 'normal' DNS are fine.

I'm surprised that there's environments that are fully relying on netbios without being backed up by a DNS system. Or are your netbios names not mapping with your DNS names correctly?

Perhaps - that could very well be a contributing factor, our software runs in a merchant datacenter and most of our clients configure it to use static IPs but some are doing unusual netbios configurations with legacy systems.
We are able to reproduce on Windows using the local machine name - this resolves successfully with 1.18.0 and yields Name Resolution Failure with 1.19.0:
Environment.SetEnvironmentVariable("GRPC_VERBOSITY", "DEBUG");
Environment.SetEnvironmentVariable("GRPC_TRACE", "api,cares_resolver,cares_address_sorting");
var server = new Server
{
    Services =
    {
        Greeter.BindService(new GreeterImpl())
    },
    Ports = {new ServerPort(ServerHost, 10101, ServerCredentials.Insecure)}
};
server.Start();

//TODO: Put your local machine name here
var channel = new Channel("DESKTOP-1AB2CDE:10101", ChannelCredentials.Insecure);
var client = new Greeter.GreeterClient(channel);

await client.SayHello(new HelloRequest());

And produces the following debug trace (1809-17763.379, net472 and netcoreapp2.2):
I0319 18:24:31.945279 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\init.cc:155: grpc_init(void)
I0319 18:24:31.946914 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\transport\chttp2\client\insecure\channel_create.cc:91: grpc_insecure_channel_create(target=DESKTOP-1AB2CDE:10101, args=000001E7D34D6F00, reserved=0000000000000000)
I0319 18:24:31.947230 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\channel.cc:285: grpc_channel_get_target(channel=000001E7B9074210)
I0319 18:24:31.982050 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\call.cc:1905: grpc_call_start_batch(call=000001E7D357E800, ops=00000045A977CCF0, nops=6, tag=000001E7D357D890, reserved=0000000000000000)
I0319 18:24:31.983319 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\call.cc:1511: ops[0]: SEND_INITIAL_METADATA(nil)
I0319 18:24:31.985754 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\call.cc:1511: ops[1]: SEND_MESSAGE ptr=000001E7B906F0C0
I0319 18:24:31.986435 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\call.cc:1511: ops[2]: SEND_CLOSE_FROM_CLIENT
I0319 18:24:31.986901 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\call.cc:1511: ops[3]: RECV_INITIAL_METADATA ptr=000001E7D357D8C8
I0319 18:24:31.987241 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\call.cc:1511: ops[4]: RECV_MESSAGE ptr=000001E7D357D8E0
I0319 18:24:31.987619 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\call.cc:1511: ops[5]: RECV_STATUS_ON_CLIENT metadata=000001E7D357D8E8 status=000001E7D357D900 details=000001E7D357D908
D0319 18:24:31.988110 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\dns_resolver_ares.cc:192: (c-ares resolver) resolver:000001E7B9065370 AresDnsResolver::NextLocked() is called.
D0319 18:24:31.988840 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_wrapper.cc:548: (c-ares resolver) request:000001E7B8FB0C70 c-ares grpc_dns_lookup_ares_locked_impl name=DESKTOP-1AB2CDE:10101, default_port=https
D0319 18:24:32.005924 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:143: (c-ares resolver) request:000001E7B8FB0C70 grpc_ares_ev_driver_create_locked
D0319 18:24:32.007329 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver_windows.cc:285: (c-ares resolver) Connect: fd:|c-ares socket: 1116|
D0319 18:24:32.007906 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver_windows.cc:251: (c-ares resolver) SendV called on fd:|c-ares socket: 1116|. Current write state: 0
D0319 18:24:32.008466 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver_windows.cc:224: (c-ares resolver) WSASend: name:c-ares socket: 1116. buf len:33. bytes sent: 33. overlapped<PHONE_NUMBER>000000. return val: 0
D0319 18:24:32.009589 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver_windows.cc:251: (c-ares resolver) SendV called on fd:|c-ares socket: 1116|. Current write state: 0
D0319 18:24:32.009937 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver_windows.cc:224: (c-ares resolver) WSASend: name:c-ares socket: 1116. buf len:33. bytes sent: 33. overlapped<PHONE_NUMBER>000000. return val: 0
D0319 18:24:32.010324 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:289: (c-ares resolver) request:000001E7B8FB0C70 new fd: c-ares socket: 1116
D0319 18:24:32.010653 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:94: (c-ares resolver) request:000001E7B8FB0C70 Ref ev_driver 000001E7D357D9F0
D0319 18:24:32.011020 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:308: (c-ares resolver) request:000001E7B8FB0C70 notify read on: c-ares socket: 1116
D0319 18:24:32.011675 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver_windows.cc:128: (c-ares resolver) RegisterForOnReadableLocked: WSARecvFrom error:|Overlapped I/O operation is in progress.
|. fd:|c-ares socket: 1116|
D0319 18:24:32.012107 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:361: (c-ares resolver) request:000001E7B8FB0C70 ev_driver=000001E7D357D9F0 grpc_ares_ev_driver_start_locked. timeout in 25133 ms
D0319 18:24:32.012549 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:94: (c-ares resolver) request:000001E7B8FB0C70 Ref ev_driver 000001E7D357D9F0
D0319 18:24:32.012821 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\dns_resolver_ares.cc:433: (c-ares resolver) resolver:000001E7B9065370 Started resolving. pending_request_:000001E7B8FB0C70
D0319 18:24:42.025824<PHONE_NUMBER>280 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:212: (c-ares resolver) request:000001E7B8FB0C70 ev_driver=000001E7D357D9F0 on_timeout_locked. driver->shutting_down=0. err="No Error"
D0319 18:24:42.029299<PHONE_NUMBER>280 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:101: (c-ares resolver) request:000001E7B8FB0C70 Unref ev_driver 000001E7D357D9F0
D0319 18:24:42.030195<PHONE_NUMBER>280 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver_windows.cc:317: (c-ares resolver) OnIocpReadableInner. winsocket error:|The I/O operation has been aborted because of either a thread exit or an application request.
|. fd:|c-ares socket: 1116|
D0319 18:24:42.031317<PHONE_NUMBER>280 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver_windows.cc:332: (c-ares resolver) OnIocpReadable finishing. read buf length now:|0|. :fd:|c-ares socket: 1116|
D0319 18:24:42.032204<PHONE_NUMBER>280 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:225: (c-ares resolver) request:000001E7B8FB0C70 readable on c-ares socket: 1116
D0319 18:24:42.033315<PHONE_NUMBER>280 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:101: (c-ares resolver) request:000001E7B8FB0C70 Unref ev_driver 000001E7D357D9F0
D0319 18:24:42.033783<PHONE_NUMBER>280 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:115: (c-ares resolver) request:000001E7B8FB0C70 delete fd: c-ares socket: 1116
D0319 18:24:42.034273<PHONE_NUMBER>280 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:346: (c-ares resolver) request:000001E7B8FB0C70 ev driver stop working
D0319 18:24:42.034748<PHONE_NUMBER>280 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:101: (c-ares resolver) request:000001E7B8FB0C70 Unref ev_driver 000001E7D357D9F0
D0319 18:24:42.035864<PHONE_NUMBER>280 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:104: (c-ares resolver) request:000001E7B8FB0C70 destroy ev_driver 000001E7D357D9F0
D0319 18:24:42.036988<PHONE_NUMBER>280 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\dns_resolver_ares.cc:356: (c-ares resolver) resolver:000001E7B9065370 dns resolution failed: {"created":"@1553041482.033000000","description":"C-ares status is not ARES_SUCCESS: DNS query cancelled","file":"T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_wrapper.cc","file_line":241,"referenced_errors":[{"created":"@1553041482.033000000","description":"C-ares status is not ARES_SUCCESS: DNS query cancelled","file":"T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_wrapper.cc","file_line":241}]}
D0319 18:24:42.041340<PHONE_NUMBER>280 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\dns_resolver_ares.cc:360: (c-ares resolver) resolver:000001E7B9065370 dns resolution failed (will retry): {"created":"@1553041482.033000000","description":"C-ares status is not ARES_SUCCESS: DNS query cancelled","file":"T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_wrapper.cc","file_line":241,"referenced_errors":[{"created":"@1553041482.033000000","description":"C-ares status is not ARES_SUCCESS: DNS query cancelled","file":"T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_wrapper.cc","file_line":241}]}
D0319 18:24:42.042466<PHONE_NUMBER>280 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\dns_resolver_ares.cc:370: (c-ares resolver) resolver:000001E7B9065370 retrying in 1000 milliseconds
D0319 18:24:42.042800<PHONE_NUMBER>280 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\dns_resolver_ares.cc:442: (c-ares resolver) resolver:000001E7B9065370 AresDnsResolver::MaybeFinishNextLocked()
D0319 18:24:42.044005<PHONE_NUMBER>280 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\dns_resolver_ares.cc:192: (c-ares resolver) resolver:000001E7B9065370 AresDnsResolver::NextLocked() is called.
I0319 18:24:42.044758<PHONE_NUMBER>280 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\completion_queue.cc:699: cq_end_op_for_next(cq=000001E7B8FC3D60, tag=000001E7D357D890, error="No Error", done=00007FF989C95C60, done_arg=000001E7D357F700, storage=000001E7D357F750)
I0319 18:24:42.046155 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\completion_queue.cc:1059: RETURN_EVENT[000001E7B8FC3D60]: OP_COMPLETE: tag:000001E7D357D890 OK
I0319 18:24:42.050181 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\completion_queue.cc:959: grpc_completion_queue_next(cq=000001E7B8FC3D60, deadline=gpr_timespec { tv_sec:<PHONE_NUMBER>854775807, tv_nsec: 0, clock_type: 1 }, reserved=0000000000000000)
I0319 18:24:42.245472 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\call.cc:562: grpc_call_unref(c=000001E7D357E800)

Please let me know if there are additional details I can supply.

Thanks for the log, that's an interesting error.
I would have expected c-ares lookups to fail somewhat quickly with an NXDOMAIN error, but what actually happened is that we failed to receive any response to the DNS queries at all. Eventually, gRPC's 10 second DNS resolution timer went off, and we cancelled the queries.
Looking at:
D0319 18:24:32.012821 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\dns_resolver_ares.cc:433: (c-ares resolver) resolver:000001E7B9065370 Started resolving. pending_request_:000001E7B8FB0C70
D0319 18:24:42.025824<PHONE_NUMBER>280 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:212: (c-ares resolver) request:000001E7B8FB0C70 ev_driver=000001E7D357D9F0 on_timeout_locked. driver->shutting_down=0. err="No Error"

and C-ares status is not ARES_SUCCESS: DNS query cancelled

We updated the c-ares submodule dependency from the 1.13 c-ares release to the 1.15 release yesterday (in PR #18519). The latest c-ares release has, among other things, a fix for https://github.com/c-ares/c-ares/issues/150.
This is just a guess, but @plaisted @invidious9000 if you have the chance, it would be interesting if you could test with a C# build off the latest gRPC master branch commits (which have PR #18519). To do this, you would need to download one of the C# nugets from the nightly package build page, from one of the recent builds, e.g. this one.

@plaisted @invidious9000 mind trying out the 1.20.0-pre1 release? This release has the updated c-ares dependency

Hey @apolcyn ,
Here are logs for 1.20.0-pre1, it looks like it has a slightly different exception detail but the behavior is similar: DNS resolution failed.
I0401 19:46:58.781349 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\server.cc:1487: grpc_server_request_call(server=00000276605F0E10, call=000002767AE00A10, details=000002767AE00A18, initial_metadata=000002767AE00A78, cq_bound_to_call=00000276604395B0, cq_for_notification=00000276604395B0, tag=000002767AE00A10)
I0401 19:46:58.785430 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\init.cc:164: grpc_init(void)
I0401 19:46:58.785747 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\transport\chttp2\client\insecure\channel_create.cc:94: grpc_insecure_channel_create(target=DESKTOP-ABCD123:10101, args=0000027660352DC0, reserved=0000000000000000)
I0401 19:46:58.786170 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\channel.cc:285: grpc_channel_get_target(channel=000002767AB43F30)
I0401 19:46:58.821142 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\call.cc:1910: grpc_call_start_batch(call=000002766061AED0, ops=000000A5CEDACF40, nops=6, tag=00000276605DC560, reserved=0000000000000000)
I0401 19:46:58.821539 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\call.cc:1516: ops[0]: SEND_INITIAL_METADATA(nil)
I0401 19:46:58.822828 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\call.cc:1516: ops[1]: SEND_MESSAGE ptr=00000276603A8240
I0401 19:46:58.823050 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\call.cc:1516: ops[2]: SEND_CLOSE_FROM_CLIENT
I0401 19:46:58.823266 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\call.cc:1516: ops[3]: RECV_INITIAL_METADATA ptr=00000276605DC598
I0401 19:46:58.823471 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\call.cc:1516: ops[4]: RECV_MESSAGE ptr=00000276605DC5B0
I0401 19:46:58.823719 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\call.cc:1516: ops[5]: RECV_STATUS_ON_CLIENT metadata=00000276605DC5B8 status=00000276605DC5D0 details=00000276605DC5D8
D0401 19:46:58.824175 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\dns_resolver_ares.cc:176: (c-ares resolver) resolver:00000276603A84E0 AresDnsResolver::StartLocked() is called.
D0401 19:46:58.824539 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_wrapper.cc:536: (c-ares resolver) request:0000027660390280 c-ares grpc_dns_lookup_ares_locked_impl name=DESKTOP-ABCD123:10101, default_port=https
D0401 19:46:58.844603 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:143: (c-ares resolver) request:0000027660390280 grpc_ares_ev_driver_create_locked
D0401 19:46:58.846539 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver_windows.cc:285: (c-ares resolver) Connect: fd:|c-ares socket: 1088|
D0401 19:46:58.847317 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver_windows.cc:251: (c-ares resolver) SendV called on fd:|c-ares socket: 1088|. Current write state: 0
D0401 19:46:58.847999 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver_windows.cc:224: (c-ares resolver) WSASend: name:c-ares socket: 1088. buf len:33. bytes sent: 33. overlapped<PHONE_NUMBER>000000. return val: 0
D0401 19:46:58.848784 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver_windows.cc:251: (c-ares resolver) SendV called on fd:|c-ares socket: 1088|. Current write state: 0
D0401 19:46:58.849376 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver_windows.cc:224: (c-ares resolver) WSASend: name:c-ares socket: 1088. buf len:33. bytes sent: 33. overlapped<PHONE_NUMBER>000000. return val: 0
D0401 19:46:58.849935 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:289: (c-ares resolver) request:0000027660390280 new fd: c-ares socket: 1088
D0401 19:46:58.850195 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:94: (c-ares resolver) request:0000027660390280 Ref ev_driver<PHONE_NUMBER>5DC820
D0401 19:46:58.850414 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:308: (c-ares resolver) request:0000027660390280 notify read on: c-ares socket: 1088
D0401 19:46:58.851223 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver_windows.cc:128: (c-ares resolver) RegisterForOnReadableLocked: WSARecvFrom error:|Overlapped I/O operation is in progress.
|. fd:|c-ares socket: 1088|
D0401 19:46:58.851720 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:361: (c-ares resolver) request:0000027660390280 ev_driver=00000276605DC820 grpc_ares_ev_driver_start_locked. timeout in 26383 ms
D0401 19:46:58.852189 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:94: (c-ares resolver) request:0000027660390280 Ref ev_driver<PHONE_NUMBER>5DC820
D0401 19:46:58.852471 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\dns_resolver_ares.cc:395: (c-ares resolver) resolver:00000276603A84E0 Started resolving. pending_request_:0000027660390280
D0401 19:46:58.889844 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver_windows.cc:332: (c-ares resolver) OnIocpReadable finishing. read buf length now:|108|. :fd:|c-ares socket: 1088|
D0401 19:46:58.891524 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:225: (c-ares resolver) request:0000027660390280 readable on c-ares socket: 1088
D0401 19:46:58.892531 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver_windows.cc:177: (c-ares resolver) RecvFrom called on fd:|c-ares socket: 1088|. Current read buf length:|108|
D0401 19:46:58.893419 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_wrapper.cc:239: (c-ares resolver) request:0000027660390280 on_hostbyname_done_locked host=DESKTOP-ABCD123 C-ares status is not ARES_SUCCESS: Domain name not found
D0401 19:46:58.894282 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver_windows.cc:177: (c-ares resolver) RecvFrom called on fd:|c-ares socket: 1088|. Current read buf length:|0|
D0401 19:46:58.894997 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:94: (c-ares resolver) request:0000027660390280 Ref ev_driver<PHONE_NUMBER>5DC820
D0401 19:46:58.895254 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:308: (c-ares resolver) request:0000027660390280 notify read on: c-ares socket: 1088
D0401 19:46:58.895560 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver_windows.cc:128: (c-ares resolver) RegisterForOnReadableLocked: WSARecvFrom error:|Overlapped I/O operation is in progress.
|. fd:|c-ares socket: 1088|
D0401 19:46:58.896000 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:101: (c-ares resolver) request:0000027660390280 Unref ev_driver<PHONE_NUMBER>5DC820
D0401 19:46:58.896397 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver_windows.cc:332: (c-ares resolver) OnIocpReadable finishing. read buf length now:|108|. :fd:|c-ares socket: 1088|
D0401 19:46:58.897002 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:225: (c-ares resolver) request:0000027660390280 readable on c-ares socket: 1088
D0401 19:46:58.897236 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver_windows.cc:177: (c-ares resolver) RecvFrom called on fd:|c-ares socket: 1088|. Current read buf length:|108|
D0401 19:46:58.897658 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_wrapper.cc:239: (c-ares resolver) request:0000027660390280 on_hostbyname_done_locked host=DESKTOP-ABCD123 C-ares status is not ARES_SUCCESS: Domain name not found
D0401 19:46:58.898010 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:101: (c-ares resolver) request:0000027660390280 Unref ev_driver<PHONE_NUMBER>5DC820
D0401 19:46:58.898225 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver_windows.cc:177: (c-ares resolver) RecvFrom called on fd:|c-ares socket: 1088|. Current read buf length:|0|
D0401 19:46:58.898603 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:115: (c-ares resolver) request:0000027660390280 delete fd: c-ares socket: 1088
D0401 19:46:58.898812 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:346: (c-ares resolver) request:0000027660390280 ev driver stop working
D0401 19:46:58.899079 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:101: (c-ares resolver) request:0000027660390280 Unref ev_driver<PHONE_NUMBER>5DC820
D0401 19:46:58.899302 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:212: (c-ares resolver) request:0000027660390280 ev_driver=00000276605DC820 on_timeout_locked. driver->shutting_down=1. err="Cancelled"
D0401 19:46:58.899757 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:101: (c-ares resolver) request:0000027660390280 Unref ev_driver<PHONE_NUMBER>5DC820
D0401 19:46:58.900098 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_ev_driver.cc:104: (c-ares resolver) request:0000027660390280 destroy ev_driver<PHONE_NUMBER>5DC820
D0401 19:46:58.902591 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\dns_resolver_ares.cc:323: (c-ares resolver) resolver:00000276603A84E0 dns resolution failed: {"created":"@1554169618.897000000","description":"C-ares status is not ARES_SUCCESS: Domain name not found","file":"T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_wrapper.cc","file_line":240,"referenced_errors":[{"created":"@1554169618.894000000","description":"C-ares status is not ARES_SUCCESS: Domain name not found","file":"T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_wrapper.cc","file_line":240}]}
D0401 19:46:58.903761 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\dns_resolver_ares.cc:332: (c-ares resolver) resolver:00000276603A84E0 dns resolution failed (will retry): {"created":"@1554169618.897000000","description":"C-ares status is not ARES_SUCCESS: Domain name not found","file":"T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_wrapper.cc","file_line":240,"referenced_errors":[{"created":"@1554169618.894000000","description":"C-ares status is not ARES_SUCCESS: Domain name not found","file":"T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_wrapper.cc","file_line":240}]}
D0401 19:46:58.904871 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\ext\filters\client_channel\resolver\dns\c_ares\dns_resolver_ares.cc:341: (c-ares resolver) resolver:00000276603A84E0 retrying in 1000 milliseconds
I0401 19:46:58.905576 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\completion_queue.cc:687: cq_end_op_for_next(cq=00000276604397F0, tag=00000276605DC560, error="No Error", done=00007FF98DF37A10, done_arg=000002766061BD10, storage=000002766061BD60)
I0401 19:46:58.906318 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\completion_queue.cc:1045: RETURN_EVENT[00000276604397F0]: OP_COMPLETE: tag:00000276605DC560 OK
I0401 19:46:58.910909 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\completion_queue.cc:945: grpc_completion_queue_next(cq=00000276604397F0, deadline=gpr_timespec { tv_sec:<PHONE_NUMBER>854775807, tv_nsec: 0, clock_type: 1 }, reserved=0000000000000000)
I0401 19:46:59.049730 0 T:\src\github\grpc\workspace_csharp_ext_windows_x64\src\core\lib\surface\call.cc:562: grpc_call_unref(c=000002766061AED0)```

Thanks for the log again. The error is noteably different, in that now this time there was in fact an NXDOMAIN, rather than timeout/dropped-query. Unfortunately it's still hard to say what the issue is.

Just to provide an update - this is still an issue in 1.20.0, we have coverage with a minimal test method that looks something like this:
const int testPort = 12345;

var server = new Server
{
    Ports = {new ServerPort("[::]", testPort, ServerCredentials.Insecure)}
};
server.Start();

var channel = new Channel(Environment.MachineName, testPort, ChannelCredentials.Insecure);
await channel.ConnectAsync(DateTime.UtcNow + TimeSpan.FromSeconds(5));
await channel.ShutdownAsync();

This successfully executes on 1.18.0 and below but fails to connect due to timeout on 1.20.0.

I am getting exactly the same with versions > 1.18 with the same error
C-ares status is not ARES_SUCCESS: DNS query cancelled
My use case is simply batch publish of messages to a pubsub topic using a code that i used for the past 6 months without problems until upgrading a library that ultimately upgraded grpcio.

This seemingly doesn't have a project, milestone, or priority. Is there a rough estimate as to the importance this has been given and/or when it may be fixed?
This is unfortunately still an active issue that is blocking us from being able to upgrade to newer versions of grpc.

Agreed. This issue is randomly occurring in some versions of Windows servers.

Sorry for the latency here. While not addressing the NETBIOS aspect of this, the general DNS request flakes reported in this issue may be fixed by https://github.com/grpc/grpc/pull/17688, was merged recently - this change got rid of DNS lookup flakes on Windows in our own tests, but just missed the 1.21 branch. However, if anyone hitting this is willing to try a nightly build from the master branch (you can download from https://packages.grpc.io/, e.g. from https://packages.grpc.io/archive/2019/06/77d27f9c5d74cf9a3ae5690ba6196a934a1b0e6f-2ee3ddf4-0e0e-4cff-ae67-5c7947b637b6/index.xml), it would be interesting to see if that fixes things.

@apolcyn I'm getting the same error (C-ares status is not ARES_SUCCESS: DNS query cancelled) with grpc 1.21.0 on Windows 10. I tested the package you linked and unfortunately it didn't solve the problem. If I set GRPC_DNS_RESOLVER=native - everything works fine. Also interesting thing if I set GRPC_VERBOSITY=Debug and GRPC_TRACE=cares_resolver before running my app everything also works fine.

I was finally able to capture grpc trace with the dns failure: C-ares status is not ARES_SUCCESS: DNS server returned answer with no data
D0613 06:45:41.689356 0 T:\src\github\grpc\workspace_csharp_ext_windows_x86\src\core\ext\filters\client_channel\resolver\dns\c_ares\dns_resolver_ares.cc:355: (c-ares resolver) resolver:00B6A300 dns resolution failed: {"created":"@1560433541.687000000","description":"C-ares status is not ARES_SUCCESS: DNS query cancelled","file":"T:\src\github\grpc\workspace_csharp_ext_windows_x86\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_wrapper.cc","file_line":244,"referenced_errors":[{"created":"@1560433541.687000000","description":"C-ares status is not ARES_SUCCESS: DNS query cancelled","file":"T:\src\github\grpc\workspace_csharp_ext_windows_x86\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_wrapper.cc","file_line":244,"referenced_errors":[{"created":"@1560433541.675000000","description":"C-ares status is not ARES_SUCCESS: DNS server returned answer with no data","file":"T:\src\github\grpc\workspace_csharp_ext_windows_x86\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_wrapper.cc","file_line":287}]}]}
D0613 06:45:41.689356 0 T:\src\github\grpc\workspace_csharp_ext_windows_x86\src\core\ext\filters\client_channel\resolver\dns\c_ares\dns_resolver_ares.cc:364: (c-ares resolver) resolver:00B6A300 dns resolution failed (will retry): {"created":"@1560433541.687000000","description":"C-ares status is not ARES_SUCCESS: DNS query cancelled","file":"T:\src\github\grpc\workspace_csharp_ext_windows_x86\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_wrapper.cc","file_line":244,"referenced_errors":[{"created":"@1560433541.687000000","description":"C-ares status is not ARES_SUCCESS: DNS query cancelled","file":"T:\src\github\grpc\workspace_csharp_ext_windows_x86\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_wrapper.cc","file_line":244,"referenced_errors":[{"created":"@1560433541.675000000","description":"C-ares status is not ARES_SUCCESS: DNS server returned answer with no data","file":"T:\src\github\grpc\workspace_csharp_ext_windows_x86\src\core\ext\filters\client_channel\resolver\dns\c_ares\grpc_ares_wrapper.cc","file_line":287}]}]}

We figured our what's happening in our environment. We had too many ip addresses configured for DNS A records for that service. As soon as we reduced the list the error went away. I guess a large list of ip addresses exceeds supported DNS UDP packet size which breaks DNS resolution on Windows. But everything worked fine on Linux. I gathered some networking traces and it seems like on Linux DNS resolution switches to TCP from UDP, but it doesn't happen on Windows.

We figured our what's happening in our environment. We had too many ip addresses configured for DNS A records for that service. As soon as we reduced the list the error went away. I guess a large list of ip addresses exceeds supported DNS UDP packet size which breaks DNS resolution on Windows. But everything worked fine on Linux. I gathered some networking traces and it seems like on Linux DNS resolution switches to TCP from UDP, but it doesn't happen on Windows.

Thanks for figuring this out, this is extremely helpful. UDP-to-TCP fallback should work on Windows though, and not just on linux; i.e. this sounds like a big that should be feasible to fix. Do you know how big the original list was?

The original list had about 30 records. DNS UDP packet size was 540 - 550 bytes, basically larger than 512.

Ok, I can reproduce what your describing @vadimi, working on fixing

@vadimi FYI, #19397 was merged, which should fix the issue described in https://github.com/grpc/grpc/issues/18411#issuecomment-502216322. The next round of nightly packages, starting on 6-27, would include this commit.

thank you @apolcyn, much appreciated.

Is this fixed in the new v1.22. I'm getting DNS resolution failed repeatedly although I run my client and server on the same machine and tried accessing via <IP_ADDRESS> and localhost. Using 1.22

Is this fixed in the new v1.22. I'm getting DNS resolution failed repeatedly although I run my client and server on the same machine and tried accessing via <IP_ADDRESS> and localhost. Using 1.22

Never mind. I was using Channel channel = new Channel("http://localhost:3000", ChannelCredentials.Insecure);. Changed to Channel channel = new Channel("localhost:3000", ChannelCredentials.Insecure); and it worked.

@vadimi if you or someone else have had the time to try out one of the recent nightly packages, e.g. from this commit, it would be interesting to hear if #19397  has fixed the DNS/TCP issues in your deployment.

@apolcyn I just retested the latest nightly package and everything worked perfectly fine, I can see DNS queries are successfully falling back from UDP to TCP. Thanks again.


When no redirect happened fetchedUrls[0] only contains protocol + hostname

When no redirect happens, we would expect response.fetchedUrls[0] to contain the full URL for the request that was just executed. However, it only contains the protocol + the hostname.

Sounds good to me. Should it be a string URL or parsed URL object?

a string URL: similar as what would happen when response.fetchedUrls.length > 1 :)

👍 - Want to do a PR?

I'm overcommitted at this moment. I thought I'd just register it as an issue for now for anyone else to fix it at this time :)

fetchedUrls (array) is now responseUrl (string), so this issue does not occur anymore.


Simplify temp dir creation in tests

If the tempdir is evaluated on creation, there is no need for special
handling of "darwin" (OSX) in NewTestProject()
What does this do / why do we need it?
It simplifies the code in NewTestProject() (internal/test/integration_testproj.go) by removing special handling when runtime.GOOS == "darwin".
The problem is that tempfiles[1] on OSX are symlinks and it's just simpler to EvalSymlinks when the test directory is created than having special handling for "darwin" later.
[1] An example temp directory on OSX:
tmpDir: /var/folders/np/f6xzpfd94217nvgdpmwt_qbr0000gn/T/gotest259673386
...it symlinks to: /private/var/folders/np/f6xzpfd94217nvgdpmwt_qbr0000gn/T/gotest259673386

Note, this PR don't solve any bug in the dep itself. It just makes the testing code simpler, and it makes the OSX build on travis simpler to handle. At the moment both the GOPATH and the project paths on OSX are symlinks. Any change trying to eval only one of those symlinks (either the GOPATH or the project path) will cause to fourth (OSX) build to fail.
See, for example the build for https://github.com/golang/dep/pull/834: https://travis-ci.org/golang/dep/builds/254211644?utm_source=github_status&utm_medium=notification
Similar to the first build in https://github.com/golang/dep/pull/812

thanks! 🎉


Hand drag direction

Use case : user wants to move an object a little to the right.
The hand dragging will also move the object in other axis resulting in frustration. The user will have to maintain a very stable hand in order to only move it to the desired direction.
Alternative:
A slider could be an option but the user will need to define the direction of the drag by a voice command or button. Or there will need to be a slider for each axis which will cludder the UI.
Solution:
I would like to get the positive or negative X, Y or Z direction of a global or focused user hand/gestures drag. The functionally is to move an object in a certain fixed direction based on hand dragging.
Would be nice to also have a direction constraint on movement: X , Y , Z  and combinations XY, XZ , ...on the Manipulation Handler script/

@Zee, is this solved by your translation handles work?

@StarWardo , the new Translation Handles (part of the BoundsControl feature) should completely satisfy your needs. There is also a translation constraint that works in local space that will work with ObjectManipulator.


Installer is broken

The 4 -years old installer ist broken:
SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
Can you please provide a working version?
Thank you

Thanks for raising this issue. The solution is to use pip install . instead of python setup.py install. I have updated the README in https://github.com/MarcoAndreaBuchmann/bme280pi/pull/17 - please have a look and let me know if it works for you.

OK - works -Thank you!


UI: Login failed, popup was closed

While trying to login into nephio WebUI running on the GKE cluster with Google Chrome browser, we're facing an issue Login failed, popup was closed and on checking the nephio-webui pod logs we're getting HTTP 401 status code because the popup is not sending the response back.
However, if we try with Firefox's private window or switch the browser, we can log in successfully.

nephio-webui pod logs

I think this happens sometimes due to the TLS self-signed certificates. Or something...I recall seeing it but I got it to go away somehow (or work anyway). I just don't remember how. If I get a chance I will try again.


Add serverchan3 support for  serverchan notification provider

⚠⚠⚠ Since we do not accept all types of pull requests and do not want to waste your time. Please be sure that you have read pull request rules:
https://github.com/louislam/uptime-kuma/blob/master/CONTRIBUTING.md#can-i-create-a-pull-request-for-uptime-kuma
Tick the checkbox if you understand [x]:

[x] I have read and understand the pull request rules.

Description
Fixes #(issue)
UptimeKuma has a notification provider called ServerChan that released a new branch version. This PR adds compatibility for the new branch (by adjusting the API entry through the Sendkey recognition)
Type of change
Please delete any options that are not relevant.

Bug fix (non-breaking change which fixes an issue)

Checklist

[x] My code follows the style guidelines of this project
[x] I ran ESLint and other linters for modified files
[x] I have performed a self-review of my own code and tested it
[ ] I have commented my code, particularly in hard-to-understand areas (including JSDoc for methods)
[x] My changes generates no new warnings
[ ] My code needed automated testing. I have added them (this is optional task)

Official Website: https://sc3.ft07.com
Official Announcement: Chinese
I add a txt under sct.ftqq.com: https://sct.ftqq.com/md/sc3.txt
The reason for changing sendkey to be included in the domain is due to the constant cyclic requests to the API interface by some third-party programs. By using DNS to direct subdomains to <IP_ADDRESS>, we can alleviate the burden on the server.😅

Thanks for the adjustments to the notification provider! 🎉

[!NOTE]
This PR is part of the v2.0 merge window => see #4500 for the bugs that need to be addressed before we can ship this release ^^

All changes in this PR are small and uncontroversial ⇒ merging with junior maintainer approval


ISDK-2479: Straw man's fix for ReplayKit image corruption

I've long held a theory that ReplayKit.framework has a bug when it comes to (video) CMSampleBuffer reuse. This can cause image corruption, for example:

My theory is that as soon as ReplayKitVideoSource releases the CMSampleBuffer (but not the underlying CVPixelBuffer) ReplayKit.framework reclaims the CVPixelBuffer and may begin to write the next frame to it. Since the video pipeline locks the frame for reading (and retains it) ReplayKit should not be able to write to it during this time, but who knows what power the OS vendor might have. 😸
Simple Solution
What if we just retained the last CMSampleBuffer from ReplayKit? Guess what, this solves the image corruption in the vast majority of cases.
Final Solution
What would a production worthy implementation look like? We might want to tie the lifecycle of the CMSampleBuffer to the CVPixelBuffer. Perhaps ReplayKitVideoSource could register a callback when the pixel buffer is destroyed that would actually invert the ownership to workaround the bug in ReplayKit.
TODO

[ ] Try a solution which extends the lifetime of CMSampleBuffer correctly in all cases

Use https://github.com/twilio/video-quickstart-ios/pull/408 instead.


Cross-reference PHP codebase

Reason for This PR
Fixes: #492
Description of Changes
Added composer.json with reference to roadrunner-worker PHP codebase
License Acceptance
By submitting this pull request, I confirm that my contribution is made under
the terms of the MIT license.
PR Checklist

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

@wolfy-j Please, do not delete the PR template, describe the changes to fit the requirements: https://github.com/spiral/roadrunner/blob/2.0/.github/pull_request_template.md

@wolfy-j Please, do not delete the PR template, describe the changes to fit the requirements: https://github.com/spiral/roadrunner/blob/2.0/.github/pull_request_template.md

Done.

Done.

linked #368


aws-keys not found when running cdn

[04:36:44] Bosco: ./aws-keys not found, deployment will not work unless these are created.

Can't find this anywhere in the code - so looks like it is coming from a library, looked in knox, also couldn't find it there.

I'm pretty sure that's from a project's build, I don't remember which one offhand though.

I'll find it.