text:
YARP Bench in internat

Describe the bug
Bench in internat，performance not good.
TestServer(Azure VM 2cpu 8G RAM):
ReverseProxy.Direct.Sample (net5)
www.test.com:80  is IIS
www.test.com:81  is Yarp ,backend is 127.0.0.1:80
TestClient（Local Workstation):
ab.exe -n1000 -c100
ping server  time=10ms
Details
AB.exe access IIS directly
PS G:> .\ab.exe -n1000 -c100 http://www.test.com/test/echo
This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking www.test.com (be patient)
Completed 100 requests
Completed 200 requests
Completed 300 requests
Completed 400 requests
Completed 500 requests
Completed 600 requests
Completed 700 requests
Completed 800 requests
Completed 900 requests
Completed 1000 requests
Finished 1000 requests
Server Software:
Server Hostname:        www.test.com
Server Port:            80
Document Path:          /test/echo
Document Length:        330 bytes
Concurrency Level:      100
Time taken for tests:   12.130 seconds
Complete requests:      1000
Failed requests:        0
Write errors:           0
Total transferred:      659000 bytes
HTML transferred:       330000 bytes
Requests per second:    82.44 [#/sec] (mean)
Time per request:       1212.987 [ms] (mean)
Time per request:       12.130 [ms] (mean, across all concurrent requests)
Transfer rate:          53.06 [Kbytes/sec] received
Connection Times (ms)
min  mean[+/-sd] median   max
Connect:        3         12  63.1      7          1007
Processing:    13   1160 701.2    807        2865
Waiting:          9      624 622.5    465        2864
Total:              32   1172 704.9    816        2875
Percentage of the requests served within a certain time (ms)
50%    816
66%    857
75%   1812
80%   1837
90%   1886
95%   2844
98%   2864
99%   2869
100%   2875 (longest request)

AB.exe access YARP
PS G:> .\ab.exe -n1000 -c100 http://www.test.com:81/test/echo
This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking www.test.com:81(be patient)
Completed 100 requests
Completed 200 requests
Completed 300 requests
Completed 400 requests
Completed 500 requests
Completed 600 requests
Completed 700 requests  <----- At this time, Server Side Yarp cpu usage from 5%down to 0
Completed 800 requests
Completed 900 requests
Completed 1000 requests
Finished 1000 requests
Server Software:        Microsoft-IIS/7.5
Server Hostname:        www.test.com
Server Port:            81
Document Path:          /test/echo
Document Length:        318 bytes
Concurrency Level:      100
Time taken for tests:   92.903 seconds
Complete requests:      1000
Failed requests:        3
(Connect: 3, Receive: 0, Length: 0, Exceptions: 0)
Write errors:           0
Total transferred:      589979 bytes
HTML transferred:       318000 bytes
Requests per second:    10.76 [#/sec] (mean)
Time per request:       9290.309 [ms] (mean)
Time per request:       92.903 [ms] (mean, across all concurrent requests)
Transfer rate:          6.20 [Kbytes/sec] received
Connection Times (ms)
min  mean[+/-sd]   median   max
Connect:        5         30 479.5          9     15011
Processing:    11   9149 23197.2   1943   80003
Waiting:         9     7614 22225.8    604    79987
Total:              21   9178 23198.5   1954   80013
Percentage of the requests served within a certain time (ms)
50%   1954
66%   1995
75%   2005
80%   2010
90%  22994
95%  78998
98%  80002
99%  80004
100%  80013 (longest request)

Few comments that may help based on previous experience using ab in situations like this:

Looks like your test client (Apache ab) is not reusing connections. If it were, you'd see a line in the output showing Keep-Alive requests:    1000. Without connection reuse, a large portion of your time is likely spent for TCP handshakes (this would be even worse if this was using https). To achieve connection re-use with ab, make sure you pass the -k flag, and make sure the server response is not chunked -- ab uses HTTP/1.0, not HTTP/1.1, and therefore chunked responses also have a Connection: close response header

The delays you are seeing are suspiciously close to 21 seconds, the default TCP connection timeout after retries with exponential back-off (3 + 6 + 12 = 21 seconds). It is possible that your second test through YARP incurred SYN-throttling by Azure networks to protect your service from DoS attacks. Reusing connections would also help here, as you wouldn't be establishing this many connections and therefore would not be SYN-throttled.

Worst case, if you can't figure this out any other way, you can use a low-level packet sniffer like Wireshark to get to the bottom of this. The source of latencies should be fairly obvious from that.

Add -k flag,it seems better.
For compare, I add a openresty test.
First test YARP,then openresty
server:YAPP
ab.exe -n1000 -c100 -k http://www.test.com:81/test/echo
Server Software:        Microsoft-IIS/7.5
Server Hostname:        www.test.com
Server Port:            81
Document Path:          /test/echo
Document Length:        317 bytes
Concurrency Level:      100
Time taken for tests:   3.913 seconds
Complete requests:      1000
Failed requests:        0
Write errors:           0
Keep-Alive requests:    1000
Total transferred:      608256 bytes
HTML transferred:       324608 bytes
Requests per second:    255.58 [#/sec] (mean)
Time per request:       391.265 [ms] (mean)
Time per request:       3.913 [ms] (mean, across all concurrent requests)
Transfer rate:          151.82 [Kbytes/sec] received
Connection Times (ms)
min  mean[+/-sd] median   max
Connect:        0    1   2.9      0      17
Processing:    35  320 181.6    271    1167
Waiting:       35  320 181.6    271    1167
Total:         41  321 182.5    271    1167
Percentage of the requests served within a certain time (ms)
50%    271
66%    303
75%    398
80%    425
90%    550
95%    710
98%    912
99%   1077
100%   1167 (longest request)

server: openresty
server{
listen 82;
location /{
proxy_pass http://127.0.0.1:80;
}
}
ab.exe -n1000 -c100 -k http://www.test.com:82/test/echo
Server Software:        openresty/1.19.3.1
Server Hostname:        www.test.com
Server Port:            82
Document Path:          /test/echo
Document Length:        317 bytes
Concurrency Level:      100
Time taken for tests:   1.305 seconds
Complete requests:      1000
Failed requests:        0
Write errors:           0
Keep-Alive requests:    1000
Total transferred:      595000 bytes
HTML transferred:       317000 bytes
Requests per second:    766.32 [#/sec] (mean)
Time per request:       130.494 [ms] (mean)
Time per request:       1.305 [ms] (mean, across all concurrent requests)
Transfer rate:          445.27 [Kbytes/sec] received
Connection Times (ms)
min  mean[+/-sd] median   max
Connect:        0    1   2.4      0      13
Processing:     5   91 145.3     36     750
Waiting:        4   91 145.3     36     750
Total:          5   92 146.8     36     757
Percentage of the requests served within a certain time (ms)
50%     36
66%     48
75%     61
80%     72
90%    336
95%    415
98%    622
99%    704
100%    757 (longest request)

Triage: Looks like there is nothing substantial to follow up on. Feel free to reopen if we missed anything.

authors: davidni issingle karelz

repo: microsoft/reverse-proxy


text:
Documentation Website

Description
This PR introduces a documentation website built around Docusaurus v2. It is a website framework with themes, search-indexing, and an rnx-kit-specific landing page. None of the doc content has been written yet.
I am planning on using this website framework as a template for rnx-kit and other react-native projects at Microsoft. I've used styling cues from react-native and react-native-windows.
In future PRs, I will be adding rnx-kit content. When the site is ready, I will tie in automated-publishing to GitHub pages.
Once published, I will change from the local search system to the Algolia DocSearch search service. This will make the search results more relevant and context-sensitive, show snippets of each page, and let me remove the invasive CSS I had to use to make local search match my theme. I'll also turn on localization, and partner with the MS loc team to get the site translated to other languages.
Test plan
This does not introduce or impact any shipping code. If the existing tests pass, that is enough to prove this PR is good.

If you want to see what it looks like, do this:
git pull
git checkout afoxman/docsite
yarn
cd docsite
yarn build
yarn serve

re: localisation: https://docusaurus.io/docs/i18n/introduction it's supported but who'd take care of the other languages? Do we have some translator team that we can leverage?

source: gharchive/pull-request

authors: afoxman kelset

repo: microsoft/rnx-kit

license: MIT

license_type: permissive

license_source: github-api


text:
hallo

Motivation and Context

Description

Contribution Checklist

[x] I have built and tested the code locally and in a deployed app
[x] For frontend changes, I have pulled the latest code from main, built the frontend, and committed all static files.
[x] This is a change for all users of this app. No code or asset is specific to my use case or my organization.
[x] I didn't break any existing functionality :smile:

cool

repo: microsoft/sample-app-aoai-chatGPT


text:
Add FileWatcher to load sarif logs from .sarif folder automatically

for #380

Automatically load all sarif log files from .sarif folder under solution directory to error lists when solution is loaded.
Close all sarif logs when solution is closed.
Monitor the folder and watch sarif log files created/deleted, load/unload results accordingly.
Updates error list when any sarif log file in the folder is updated.
Enabled/disable the behavior using option.

Abandon this PR since the functionality should be added to sarif viewer not sarifer.
Created another PR #382 instead.

repo: microsoft/sarif-visualstudio-extension


text:
File location dialog

Tested with 3.2020.715004
When locating sources a FileOpen dialogs pops up, but there is no indication of the path I need to resolve.
In Visual Studio extension the location is in the title of the dialog, like Locate missing file: /folder/folder2/file.ext. This way it is convenient to navigate to the root of the sources and then use the information from the title to find the file.
Not sure if it is the limitation of integration into VS Code. Another option would be to prefill File name: editbox with the relative path of the missing file.

Thanks for the feedback.
A bit of a survey: Do you have a folder open in VS Code? And if so, are the SARIF file and "missing" file both in that same folder? Generally asking: what is the typical file structure relationship between your SARIF file and "missing" file? We are trying to understand the common cases better. Thanks!

Thanks for the feedback.
A bit of a survey: Do you have a folder open in VS Code?

Initially no, but then I tried both options. In both cases it doesn't find the find automatically until I locate it manually. Then when I click on other items it finds the corresponding file.

And if so, are the SARIF file and "missing" file both in that same folder? Generally asking: what is the typical file structure relationship between your SARIF file and "missing" file? We are trying to understand the common cases better. Thanks!

The sarif file is not in the same folder.

We have new logic that, in certain cases, is able to automatically associate SARIF uris with workspace uris. Would you be able to share the project structure and the set of uri's within the SARIF file to help reproduce the issue?
Note: The matching heuristic looks for distinct file names between the SARIF log and workspace. Thus it may not work if there are many files with the same name. However, we do have some more advanced strategies in our back pocket that we can employ depending on feedback/scenarios such as yours.

The file contains sensitive information. I can share it after some time when all issues are fixed.

@JarLob Still having the same issues in the most recent version? If so, let's take a look at your folder structure. Thanks!

source: gharchive/issue

authors: JarLob jeffersonking

repo: microsoft/sarif-vscode-extension


text:
.Net: Example44_MultiChatCompletion needs to be rewritten

Describe the bug
The example has the following issues:

It is broken into multiple methods and so is not copy/paste friendly
It uses the IChatCompletion directly, which is not our preferred pattern
It doesn't use a prompt as the input for the example

All .Net issues prior to 1-Dec-2023 are being closed. Please re-open, if this issue is still relevant to the .Net Semantic Kernel 1.x release. In the future all issues that are inactive for more than 90 days will be labelled as 'stale' and closed 14 days later.

repo: microsoft/semantic-kernel


text:
How are PowerShell help files generated for this repository?

I see that Microsoft.ServiceFabric.Powershell.Http-Help.xml is stored in the repository, and the build depends on this file's presence. Are you able to share how this file is generated? As far as I can tell, the build isn't responsible for it, and no generation tools are referenced by the repository.
Thank you for making this module available!

@andrewtyped The rest api and powershell is generated usign a tool leveraging AutoRest from the swagger rest api specification for service fabric.

Thank you. Is this the tool you're referring to: https://github.com/Azure/autorest.powershell ? If so, would you accept a PR updating the docs to refer to this dependency?

No thats not we use exactly, the tool does use Autorest to generate the models from swagger, but then it generates customized code based on extensions specified in the swagger files, the entire client library in this repo has customized serialization/deserialization logic.

authors: amanbha andrewtyped

repo: microsoft/service-fabric-client-dotnet


text:
Fix a memory leaks with windows Process handling

Process implements IDisposable. Every object returned by Process.GetProcessById() will keep lingering in heap until a service instance restarts.

Thanks for catching these. I have made changes to the upcoming release. These will live in the plugin-refactoring branch, which houses 3.1.0 (which includes a refactored FO API .NET Standard 2.0 library). That branch will be merged into develop then master in the next few days. Appreciate the bugs!

I have merged plugin-refactoring branch into develop. Going to close this PR as it is not going to be merged. As I mentioned, I took your changes already. Thanks again.

Thanks Charles! Appreciate your review!

authors: GitTorre agolotin

repo: microsoft/service-fabric-observer


text:
Terminal keeps disappearing when laptop sleeps

Windows Terminal version
1.15.2875.0
Windows build number
10.0.22000.1098
Other Software
No response
Steps to reproduce
Open terminal and let the computer to sleep off and once woken up, the terminal will vanish.
Same behavior with battery and charger connected.
Note: This issue has started with the recent windows update.
Expected Behavior
Terminal should persist the state and behavior and not get closed.
Actual Behavior
Terminal seems to be missing/vanished, process seems to be running sometime (few mins even when the Terminal is missing) in background but eventually stops in some time.

Does the terminal disappear every single time you sleep or only sometimes? Does your device need to sleep for a long time for the terminal to disappear?

Do you see any events in Event Viewer ala "The power manager has not requested the deletion of all entries" / "The power manager has requested the deletion of all entries"/?
See also #12513.
Can you try setting "closeOnExit": "never" in the settings? Maybe pwsh.exe is crashing, exiting, causing the Terminal to "crash".
It's also possible that the Store may have noticed that there was an update available for the Terminal, and chose to update it for you right as it was going to sleep / resuming from sleep. If this happens literally every sleep, then we can probably rule this out.

Does the terminal disappear every single time you sleep or only sometimes? Does your device need to sleep for a long time for the terminal to disappear?

It only happens when the sleep is longer then 4 to 5 mins, few mins in sleep does not kill the terminal

Do you see any events in Event Viewer ala "The power manager has not requested the deletion of all entries" / "The power manager has requested the deletion of all entries"/?
See also #12513.
Can you try setting "closeOnExit": "never" in the settings? Maybe pwsh.exe is crashing, exiting, causing the Terminal to "crash".
It's also possible that the Store may have noticed that there was an update available for the Terminal, and chose to update it for you right as it was going to sleep / resuming from sleep. If this happens literally every sleep, then we can probably rule this out.

Tried "closeOnExit": "never", there is no change in the behavior and also there is no update to Terminal available in store and the issue literally happens for every sleep but only when a process is running (let's say you run an angular app or any process that runs longer). When the terminal is open without any process running, it seems to remain alive.
Checked the Event Logs, nothing related to Terminal or power manager.

We'd love to get some additional information. Would you mind filing this in feedback hub?
/feedback

authors: AravindhKumarSivaramakrishnan carlos-zamora lhecker zadjii-msft

repo: microsoft/terminal


text:
Rendering of some escape codes are broken on some fonts

Windows Terminal version
1.16.10261.0, also main branch
Windows build number
10.0.19044.2364
Other Software
Most TUI programs
Steps to reproduce
The screenshot below uses make menuconfig on Linux kernel source and tool aptitude, but many TUI applications show this behavior as well. Try using some with specific fonts and you will spot it.
Expected Behavior
Might be the most ambiguous issue title I've written in a while, but I'm not quite sure what's causing it. I'll explain below.
(Warning, lots of screenshots)
When using common monospaced fonts, the rendering is fine:
Consolas:

Lucida Console:

and a third-party one:
MxPlus IBM VGA font:

Actual Behavior
However, when using some fonts (didn't find out the specifics here), the rendering is borked. Notice that the checkboxes are not aligned anymore, some characters are missing, and the window borders are broken:
PC-98 font:

That's a third-party font, however some standard fonts are showing this as well:
SimHei:

MS Gothic:

Tried with AtlasEngine both on and off and nothing changed (it didn't need a restart right?).

Forgot about the aptitude example, but it's like this:

Tried with AtlasEngine both on and off and nothing changed (it didn't need a restart right?).

FWIW it absolutely does require a restart of that tab, unfortunately. One of the few settings that can't hot-reload. Double checking these results with it both enabled and disabled might help point at the right root cause.
I'm sure there's a dupe laying around that @lhecker can find. Probably one for each of the renderers 😅

Just tried and the rendering is broken on both situations:
AtlasEngine off:

AtlasEngine on:

Also it might be a good idea to add a description below to indicate that this specific setting needs a restart (or a new tab) to take effect:

I'm about to open a PR which improves the situation around such box drawing characters up to the point, where we draw to the best capabilities of the font you've chosen. If the font doesn't have proper box drawing characters, they'll look broken, because that's what the font tells us to do. This is for instance the case for MS Gothic, where the right border in make menuconfig will appear invisible, because that's what MS Gothic tells us to do:

For further improvements we'll have to wait for #5897.

authors: HarukaMa lhecker zadjii-msft


text:
"Disable Scroll-Forward" doesn't account for page-up/page-down keys

Environment
Windows build number: 10.0.19041.0
Steps to reproduce

Start PowerShell in conhost.
Enable "Disable Scroll-Forward".
Run a command that produces multiple screens of output.
Use the page-up key to scroll to the top of the output.
Use the page-down key to scroll past the output.

Expected behavior
Scrolling it limited to the output and the scrollbar lets you scroll the output.
Actual behavior
After running command, scrollbar is as expected:

After page-up key once, scrollbar is indeterminate:

After page-up key again, scrollbar indicates that you see all the output (but you don't):

After page-down key, you have scrolled past the end of the output:

So I've got some unfortunate news!
PowerShell (specifically PSReadline) has implemented its own handling for PgUp/PgDown:
In these handlers (code here), they're directly manipulating the console screen buffer.
Because they're setting the actual active viewport using these APIs, there's nothing we can really do but listen to them. If they want to scroll the viewport into the unpopulated region below the virtual bottom, they're fully allowed to do so.
Resolution on this one is, regrettable, "by design" -- we have to support these APIs forever, even if they coincide with our experimental features in an unfortunate way.

authors: DHowett carlreinke


text:
Set keyword flags on all events so those sharing a provider with telemetry do not fire unless tracing is enabled

Set keyword flags on all events so those sharing a provider with
telemetry do not fire unless tracing is enabled
PR Checklist

[x] Closes #10093
[x] I work here
[ ] Tests added/passed
[x] Documentation added in til.h about how keywords work and at the
only other site of keywords we define in the Host project tracing
files.

Detailed Description of the Pull Request / Additional comments
I initially thought that we would need to split providers here to
accomplish this... but @DHowett helped me realize that might be a lot of
additional metadata and bloat binary size. So with help from a friend
from fundamentals, I realized that we could use Keywords to
differentiate here. We can no longer define 0 keywords as that
represents an any/all scenario. Every TraceLoggingWrite event now
needs a keyword. When our events have a keyword, they're not included in
any trace. Additionally, when we have an explicit keyword to check that
is different from the ones used for the telemetry pipeline, we can
ensure that we only do "hard work" to generate debug trace data when an
"ALL" type listener like TraceView or Windows Performance Recorder with
our profiles is listening to these providers for ALL keyworded events.
Validation Steps Performed

[x] - Built with full release build config to confirm performance is
worse than dev builds BECAUSE of the telemetry event collector camping
our provider and triggering full trace event generation on shared
providers.
[x] - Built with full release build config to enable statistics
collection and validated trace event collection is excluded and trace
event short-circuits work with this change.
[ ] - Checked that TraceView still sees both telemetry and tracing
events
[ ] - Checked that WPR with our .wprp profile sees both telemetry and
tracing events

Bonuses:

Added privacy tagging where I noticed it was missing (so we no longer have to confirm those tags on the back end)
Updated wprp file for Terminal providers that are missing but didn't rename the wprp file

nit: shorten PR title to ~72 chars so it doesn't get truncated

@msftbot wait 5 minutes before merging

authors: DHowett miniksa


text:
Autocomplete keyframe animations when occluded on Windows 11

On certain builds of Windows, when Terminal is set as the default it
will accumulate an unbounded amount of queued animations while the
screen is off and it is servicing window management for console
applications.
This results in Terminal hanging when left overnight, as it has millions
of animations to process.
The new call into TerminalThemeHelpers will tell our compositor to
automatically complete animations that are scheduled while the screen is
off.
Fixes MSFT-38506980

For servicing, this actually needs custom conflict resolution since this PR is built on the Common Nuget infrastructure.

@msftbot merge this in 3 minutes


text:
Update to check-spelling v0.0.21

Upgrades check-spelling to v0.0.21
The command to apply changes should now work on Windows (it requires
Perl, but I believe that's more or less present most of the time, and it
should walk you through the rest of the required tools).
There are a bunch of new features, the most important here are probably
being able to update the metadata from Windows. (If it doesn't work,
please @ me).
Also, candidate.patterns will automatically suggest patterns. You can
see them in patterns.txt, e.g.:
# Automatically suggested patterns
# hit-count: 3831 file-count: 582
# IServiceProvider
\bI(?=(?:[A-Z][a-z]{2,})+\b)

The metadata bits (the hit count/file count) don't have to be retained
(I hope they'll be useful in deciding whether/or not to add a pattern,
i.e. "how applicable is it?"), the comment hinting at what the pattern
does is probably worth retaining.
We've been using more or less this version for a while internally
(including talk-to-bot, and, I do have a pattern that could be used to
let people use that in forks, but, I'm going to skip that for now).
This weekend, I did some cleanup for act (to run check-spelling
locally), and some minor polish.
You can see the runs I made in
https://github.com/check-spelling/terminal/actions

Thanks. You're going to want to reenable the workflow :)

indeed, i'm going to reflect the changes to all open branches first (:

thanks @floh96

Well, it turns out that we have 335 branches. Good lord. They've all been updated to check-spelling@v0.0.21. Thanks again!

authors: DHowett jsoref


text:
Allow actions in the new tab dropdown

Summary of the Pull Request
Targets #17215
Allows the user to define entries in the new tab menu that execute actions, based on their action Id
Detailed Description of the Pull Request / Additional comments
For example, the newTabMenu in the json can now contain:
{
    "type": "action",
    "actionId": "mySendInputAction"
}

Validation Steps Performed

PR Checklist

[ ] Closes #xxx
[ ] Tests added/passed
[ ] Documentation updated

If checked, please file a pull request on our docs repo and link it here: #xxx

[ ] Schema updated (if necessary)

YAAAAAAAAAAAAAAASS

AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

may want to add a "closes #3759"

may want to add a
closes #3759
closes #9362

Very explicitly, you need to put them on separate lines both of which start with "Closes".

Validation Steps Performed

Can I assign an icon to a command?

Can I assign an icon to a command?

Yep!

authors: DHowett PankajBhojwani erikzhang zadjii-msft


text:
Getting DataSource object right is very difficult

Description
I was trying to get the new UI in VS for data driven tests. And getting the object for the data source to correctly serialize is so painful.
My contains other objects and getting it to work took me a lot of time.
Is there any additional guidance on this? Or a method that can check if the type is eligible for the new UI?
From what I see:

Get Set properties need to be used, and default constructor must be present.
[Serialize] needs to be used for all the objects.
Abstract class must not be used.
When inheriting, the objects must be produced exactly using the type that is used in the data source object, but not as any child class.
Using records or readonly record struct does not make this easier.
I could not get it to work when there was a collection on the object, but I might be just confused by some other edge case that was preventing me from getting this to work at the same time.

e.g. This works:
[Serializable]
public class OtherInfo : OtherInfoBase {
}

[Serializable]
public class OtherInfoBase {
    public string Name {get; set;}
}

[Serializable]
public class RunnerInfo {
    public string Name {get; set;}
    public OtherInfo {get; set;}
}

BUT making the RunnerInfo use the Base class, it only works when we assign the BaseClass itself, but not if we create OtherInfo and assign it:
[Serializable]
public class OtherInfo : OtherInfoBase {
}

[Serializable]
public class OtherInfoBase {
    public string Name {get; set;}
}

[Serializable]
public class RunnerInfo {
    public string Name {get; set;}
    public OtherInfoBase {get; set;}
}

@nohwnd What kind of data source are you referring to? Could you provide a more complete example?

DataSource like the one here: https://github.com/microsoft/vstest/blob/3fac63690f8cd14e2681470639b15c527c3d09ff/test/Microsoft.TestPlatform.AcceptanceTests/ExecutionTests.cs#L21
Once your parameter is not a primitive type (RunnerInfo in the case above) it gets really difficult to make sure MSTest will expand it to multiple test cases using the new top level expansion. You need to balance all the things listed above.

@Evangelink - Is this something that can be checked with a MSTest analyzer?

After working for a while on the codebase I think this mostly boils down to the serializer that is used. It would be pretty difficult to enforce the rules by analyzer, and custom data sources are imho not that used to warrant that investment.

authors: Evangelink nohwnd stan-sz

repo: microsoft/testfx


text:
Typo in MSTEST0016 description

Describe the bug
https://learn.microsoft.com/en-us/dotnet/core/testing/mstest-analyzers/mstest0016
Rule description
A test class should have at least one test method or be static and have methods that are attributed with [AssemblyInitialization] or [AssemblyCleanup].

States AssemblyInitialization, but it should be AssemblyInitialize.
Additional context
MSTest 3.6.0

We will be releasing a bug fix so I'll bakcport this fix into it.

authors: Evangelink Mertsch


text:
MSTEST0017 (Assertion arguments should be passed in the correct order) shouldn't warn if both arguments are literals

Describe the bug
If both arguments are literals, e.g:
Assert.AreEqual(0, 1);

we currently issue a warning, but following the codefix will still keep the warning.
We shouldn't issue a diagnostic when "both" arguments look like they should be "expected".
Currently, the above snippet will already produce MSTEST0025 (Use 'Assert.Fail' instead of an always-failing 'Assert.AreEqual' assert).

I agree!


text:
User/t ayb/geo process graphic2

Created the Geo Process Graphic Component

I'm trying to check out the geo process graphic (running locally on this PR branch) with this example https://insights-local.timeseries.azure.com/withplatform/geoProcessGraphic.html
When I hit that page I get a promise error from HistoryPlayback.  @AyobamiBalogun, how can I view the geo graphic?  Is that the correct example page?

I'm trying to check out the geo process graphic (running locally on this PR branch) with this example https://insights-local.timeseries.azure.com/withplatform/geoProcessGraphic.html
When I hit that page I get a promise error from HistoryPlayback. @AyobamiBalogun, how can I view the geo graphic? Is that the correct example page?

@darsney Do you know why I'm getting this error when I try to access the geoProcessGraphic?  If it's just me, I don't think it's an issue for this PR, I'm just not able to test the graphic.  It may be something to do with me not having access to the right env.

repo: microsoft/tsiclient


text:
When will DeepNorm release code ?

As the title asks.

The code will be updated at https://github.com/microsoft/unilm/tree/master/deepnet soon

Thanks.

Any updates here?

The code will be ready very soon. Please stay tuned!

@sean-zhuh @iiLaurens https://github.com/microsoft/torchscale

authors: donglixp iiLaurens sean-zhuh shumingma

repo: microsoft/unilm


text:
Fix error

Removing duplicate headerID field

Thanks!

repo: microsoft/vcpkg-docs


text:
Change the mismatched VCPKG_ROOT message to note which vcpkg.exe

… is emitting the message for clarity.

Thanks for the reviews folks!

repo: microsoft/vcpkg-tool


text:
[google-breakpad] x64-linux. Build success but no symbol in lib

Describe the bug
Build breakpad was successful, but can't find symbol in the static lib.
error : undefined reference to google_breakpad::ExceptionHandler::ExceptionHandler(google_breakpad::MinidumpDescriptor const&, bool (*)(void*), bool (*)(google_breakpad::MinidumpDescriptor const&, void*, bool), void*, bool, int)' error : undefined reference to google_breakpad::ExceptionHandler::~ExceptionHandler()'
Environment

OS: [Linux]

To Reproduce
1 ./vcpkg install breakpad:x64-linux
2 copy https://github.com/linux-on-ibm-z/linux-syscall-support/blob/master/linux_syscall_support.h into x64-linux/include/third_party/lss/
3 use bottom code for test.
4 error : undefined reference to google_breakpad::ExceptionHandler::ExceptionHandler(google_breakpad::MinidumpDescriptor const&, bool (*)(void*), bool (*)(google_breakpad::MinidumpDescriptor const&, void*, bool), void*, bool, int)' error : undefined reference to google_breakpad::ExceptionHandler::~ExceptionHandler()'
5 nm -an x64-linux/debug/lib/liblibbreakpadd.a | c++filt | grep "ExceptionHandler("
cannot find the symbol
Test code
#include <cstdio>
#include <client/linux/handler/exception_handler.h>
using namespace std;
using namespace google_breakpad;
static bool dumpCallback(const google_breakpad::MinidumpDescriptor& descriptor, void* context, bool succeeded)
{
	printf("Dump path: %s\n", descriptor.path());
	return succeeded;
}
void crash() { volatile int* a = (int*)(NULL); *a = 1; }
int main(int argc, char* argv[])
{
	google_breakpad::MinidumpDescriptor descriptor("/tmp");
	google_breakpad::ExceptionHandler eh(descriptor, nullptr, dumpCallback, nullptr, true, -1);
	crash();
	return 0;
}

The exception handler in libbreakpad_client which does not build on non-windows now.
See commnents in https://github.com/microsoft/vcpkg/blob/master/ports/breakpad/CMakeLists.txt#L40, it seems the libbreakpad_client target does not work on non-windows.  I will take a look if it supports with latest source.

authors: PhoebeHui hanyukang

repo: microsoft/vcpkg