text:
[Guided Experience] Add Translation For Setup Object Short Title

There were already two methods for translating the Title and Description, but not for Short Title!

@haoranpb there is a check that failed, but it looks strange to me. do you have any idea?

Hmm, not sure here. Just checked, it has passed our internal build, so no worries.
I'm still waiting for reviews from my colleagues, it will be merged afterwards 😄

@microsoft-github-policy-service agree

@microsoft-github-policy-service agree

any updates?

Merged in master last week, porting to 21.x at the moment.
BTW, the translation will be cut for 2048 chars. But that should be enough for the Short title

Availability update: We will publish a fix for this issue in the next update for release 21.
Build ID to track: 52713.

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 52600.

authors: JesperSchulz f4n0 haoranpb


text:
[Rendering][iOS] Not able to render images in adaptive cards on iOS

Target Platforms
iOS
SDK Version
2.7.0, 2.8.1
Application Name
A Chat App
Problem Description
Context
We're tying the AC Framework to display adaptive cards in a chat window to capture data from users.
We tried with AdaptiveCards SDK versions 2.7.0 and 2.8.1
Issue, we can't render images
Trying the framework we detected that the images we have on our adaptive cards weren’t rendered. All the components were rendered properly just the images are the ones that are not displayed.
We tried the example you created in the Readme file and were able to verify the same issue, the image you added in the example wasn't displayed.
The expected behavior is to be able to render images in the adaptive cards.
Additional platform information
MacOS Monterey
Version 12.0.1
Processor Quad-Core Intel Core i7
Xcode 13.2.1, Command line tools 13.2.1
Swift 5.5.2
Tested in Simulator and Device (Screenshots are of our actual device)
Screenshots
As you can see the adaptive card renders but the only element that was not displayed is the image.

The actions of the buttons worked as expected.

Card JSON
"{ \"type\": \"AdaptiveCard\", \"version\": \"1.0\", \"body\": [ { \"type\": \"Image\", \"url\": \"http://adaptivecards.io/content/adaptive-card-50.png\", \"horizontalAlignment\":\"center\" }, { \"type\": \"TextBlock\", \"horizontalAlignment\":\"center\", \"text\": \"Hello **Adaptive Cards!**\" } ], \"actions\": [ { \"type\": \"Action.OpenUrl\", \"title\": \"Learn more\", \"url\": \"http://adaptivecards.io\" }, { \"type\": \"Action.OpenUrl\", \"title\": \"GitHub\", \"url\": \"http://github.com/Microsoft/AdaptiveCards\" } ] }"

Sample Code Language
Swift
Sample Code
We created an iOS App project from start and added the code you added in the Readme file.
import UIKit
import SafariServices

class ViewController: UIViewController, ACRActionDelegate {

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view.
        let jsonStr = "{ \"type\": \"AdaptiveCard\", \"version\": \"1.0\", \"body\": [ { \"type\": \"Image\", \"url\": \"http://adaptivecards.io/content/adaptive-card-50.png\", \"horizontalAlignment\":\"center\" }, { \"type\": \"TextBlock\", \"horizontalAlignment\":\"center\", \"text\": \"Hello **Adaptive Cards!**\" } ], \"actions\": [ { \"type\": \"Action.OpenUrl\", \"title\": \"Learn more\", \"url\": \"http://adaptivecards.io\" }, { \"type\": \"Action.OpenUrl\", \"title\": \"GitHub\", \"url\": \"http://github.com/Microsoft/AdaptiveCards\" } ] }";

        let cardParseResult = ACOAdaptiveCard.fromJson(jsonStr);
        if ((cardParseResult?.isValid)!) {
            let renderResult = ACRRenderer.render(cardParseResult!.card, config: nil, widthConstraint: 335);

            if (renderResult?.succeeded ?? false) {
                let ad = renderResult?.view;
                ad!.acrActionDelegate = (self as ACRActionDelegate);
                self.view.autoresizingMask = [.flexibleHeight];
                self.view.addSubview(ad!);
                ad!.translatesAutoresizingMaskIntoConstraints = false;

                NSLayoutConstraint(item: ad!, attribute: .centerX, relatedBy: .equal, toItem: view, attribute: .centerX, multiplier: 1.0, constant: 0).isActive = true;
                NSLayoutConstraint(item: ad!, attribute: .centerY, relatedBy: .equal, toItem: view, attribute: .centerY, multiplier: 1.0, constant: 3).isActive = true;
            }
        }
    }

    func didFetchUserResponses(_ card: ACOAdaptiveCard, action: ACOBaseActionElement) {
        if(action.type == ACRActionType.openUrl) {
            let url = URL.init(string:action.url());
            let svc = SFSafariViewController.init(url: url!);
            self.present(svc, animated: true, completion: nil);
        }
    }
}

Bridging Header
#ifndef AdaptiveCardsBridgingHeader_h
#define AdaptiveCardsBridgingHeader_h

#import "AdaptiveCards/AdaptiveCards.h"

#endif /* AdaptiveCardsBridgingHeader_h */

We added both recommendations you explained to enable image download
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>NSAppTransportSecurity</key>
	<dict>
		<key>NSExceptionDomains</key>
		<dict>
			<key>adaptivecards.io</key>
			<dict>
				<key>NSExceptionAllowsInsecureHTTPLoads</key>
				<true/>
				<key>NSIncludesSubdomains</key>
				<true/>
			</dict>
		</dict>
	</dict>
	<key>UIApplicationSceneManifest</key>
	<dict>
		<key>UIApplicationSupportsMultipleScenes</key>
		<false/>
		<key>UISceneConfigurations</key>
		<dict>
			<key>UIWindowSceneSessionRoleApplication</key>
			<array>
				<dict>
					<key>UISceneConfigurationName</key>
					<string>Default Configuration</string>
					<key>UISceneDelegateClassName</key>
					<string>$(PRODUCT_MODULE_NAME).SceneDelegate</string>
					<key>UISceneStoryboardFile</key>
					<string>Main</string>
				</dict>
			</array>
		</dict>
	</dict>
</dict>
</plist>

We tried also...
<key>NSAppTransportSecurity</key>
    <dict>
     <key>NSAllowsArbitraryLoads</key>
     <true/>
    </dict>

Zip with the demo project
AdaptiveCardsDemo.zip

@jwoo-msft - can you take a look at this one?

I have the same problem.

@marting07 & @iamweijun
You're missing a resource resolver.
Please add a resource resolver.
The documentation on it is here
You can crosscheck with sample app's usage of the resolver
Sample app's resolver implementation

Ah! thanks a lot @paulcam206 and @jwoo-msft for take this report into account. We'll try implementing the resource resolver, sorry, it wasn't clear for us that we were missing that step. We'll try this fast so we can close this in case it works.

Hi again @paulcam206 and @jwoo-msft we added the resource resolver following the docs and the sample app, that did the trick. Thanks a lot for your answer on this and for clarified our doubts related to loading images.

@jwoo-msft - is it required for an iOS host to hand-register resolvers for http/https/data? If so, that should be added to the docs. Alternatively, maybe we should register those by default?
(mentioning #6316 for doc tracking)

@jwoo-msft - is it required for an iOS host to hand-register resolvers for http/https/data? If so, that should be added to the docs. Alternatively, maybe we should register those by default?
(mentioning #6316 for doc tracking)

@paulcam206, this is documented, but I will move it to more prominent place.

source: gharchive/issue

repo: microsoft/AdaptiveCards

license: MIT

license_type: permissive

license_source: github-api


text:
Issue: unable to resize the lower section

Hi Christian,
Just installed v5.0.23.  First of all, thank you for creating this tool.  I will definitely use it quite a bit.  It is great!
One issue, I am not able to adjust the height of the bottom section where I can view the JSON code.  It seems the ALM tool is not capturing my Windows size properly.
I was not able to find any similar reported issue.  However, I was able to reproduce the problem consistently (eg restart, try different PBI files, etc)
Attached below is a screenshot.

Yeah - I get the same issue. It's like the JSON pane doesn't stick to the lower boundary of the window when the window goes beyond a certain height.

Hi all, thanks for raising this! I noticed it a while back myself and I agree it's not the optimal experience. The differences grid and JSON diff control is typescript based and created by MAQ Software (hence their logo is shown). Unfortunately, typescript is not my area of expertise, so it is more difficult than usual to get this fixed (MAQ Software's engagement was on a limited time basis). However, I will ask for it at the first opportunity!
Christian

Hi all.
Is there an update on this topic?
I am working with a very large model and would love to see this window sizing issue fixed soon.
I am also facing general performance issues (mostly loading the lower section comparison & scrolling in it).
Thank you for your feedback.

Version 5.0.31

I don't want to count my chickens but I think another contributor is fixing it. Please give me a week or so to confirm ...

Should be fixed now in release 5.0.32!

Working for me. Nice one! 👏

Looks good, thank you! This helps us a lot.

authors: CareVenture christianwade fl28882 samaguire

repo: microsoft/Analysis-Services


text:
Capitalize the first letter for each string appended to the activity logs

Storage Explorer Version: 1.11.0
Build: 20191106.4
Branch: master
Platform/OS: Windows 10/ Linux Ubuntu 19.04/macOS High Sierra
Architecture: ia32/x64
Regression From: Not a regression
Steps to reproduce:

Expand one storage account.
Select one blob container which contains multi blobs.
Copy and paste the blob container to another storage account.
Check the strings appended to the activity logs.

Expect Experience:
The first letter is capitalized for each string.(Like: Cancel All    Auto-Resolve Behavior... )
Actual Experience:
Not all initials for strings are capitalized.

More Info:

Update 'Retry all' to 'Retry All'.

By design. These are cased with sentence casing

Hi @MRayermannMSFT
We noticed that shows 'Cancel All' next to some activity logs. Like below:
Could you help to take a look on this issue?😊

authors: MRayermannMSFT v-xianya

repo: microsoft/AzureStorageExplorer


text:
The blob access tier is not updated after replacing it with the same blob whose access tier is 'Cold'

Storage Explorer Version: 1.33.0-dev (96)
Build Number: 20231201.1
Branch: main
Platform/OS: Windows 10/Linux Ubuntu 22.04/MacOS Monterey 12.6 (Apple M1 Pro)
Architecture: ia32/x64
How Found: From running test cases
Regression From: Previous release (1.32.1)
Steps to Reproduce

Expand one storage account -> Blob Containers.
Create a blob container -> Upload one blob with the default access tier.
Upload the same blob with 'Cold' access tier.
There is a conflict dialog -> Apply 'Replace'.
Check whether the access tier of the blob is updated to 'Cold'.

Expected Experience
The access tier of the blob is updated to 'Cold'.
Actual Experience
The access tier of the blob is not updated.

This issue has been fixed in the latest AzCopy candidate. We need to upgrade to the latest version of AzCopy to fix this issue in Storage Explorer.

Verified this issue on the main build 20240110.12. Fixed. So, we are going to close it.

authors: JasonYeMSFT v-xianya


text:
If Front Door/CDN is configured for blob, then CopyURL should use that endpoint instead of default.

Preflight Checklist

[X] I have installed the latest version of Storage Explorer.
[X] I have checked existing resources, including the troubleshooting guide and the release notes.
[X] I have searched for similar issues.

Problem
I want to get the CDN path to the blob, not the default storage account endpoint.
Desired Solution
Right click on file and get the CDN path.
Alternatives and Workarounds
No response
Additional Context
No response

@jongio we don't have a ton of experience with CDN/front door. Can you guide us to some docs that might give us an idea as to the feasibility of this? My brain has some initial open questions like:

How do we know if a container is hooked up to a CDN?
How do we get/construct the CDN equivalent blob url?

PS: Nice to see a feature request from you again! Been a while. 😁

Related to: https://github.com/microsoft/AzureStorageExplorer/issues/334

Hmm this is all reminiscent of what I remember when I've looked into CDN integration before. All of the "linkage" between CDN and Storage is CDN → Storage. Or in other words, from a storage account/container based point of view, there is no (easy) way to know that CDN is using the account/container as an origin group/origin/etc.
The only way to do it automatically would be to look through every CDN you have, get its origin groups/origins, and see if one of those is for the current account/container. For someone with a small amount of CDNs/CDN origin groups/origins, this probably isn't terrible, but for someone with a lot, I can see it taking a while.

Do you know anyone on CDN team that could help?

No I do not. If you can find one let me know. :)

They must have a data plane for that data.

I don't see any data plane APIs for CDN, just ARM.

At a min, maybe we let the user manually configure an alternate root endpoint and then append the path to that instead of the blob path.

Eh I'm dubious about this. I think ultimately what most customers interested in this would want is to have Storage Explorer "just work", and have the "Copy CDN URL" option as originally described. Making folks manually enter in yet another endpoint does not sound like a good way to make people happy.
As of today, is it not easy enough to just do "Copy Path" (which copies the relative path) and then add that on to the CDN URL?

As of today, is it not easy enough to just do "Copy Path" (which copies the relative path) and then add that on to the CDN URL?

Possible yes, and that is what I do today, but without coding I have to do it manually.

Until we can get a better capability from the CDN/storage APIs to be able to quickly link storage accounts/containers to a CDN, we're going to put this in future for now. If folks are interested in this, please 👍 react the original issue comment. Thanks!

authors: MRayermannMSFT jongio


text:
[Accessibility][Object Information - Settings-Publish-Create Azure Resource]: For empty edit field, its information is not correctly read by Screen reader in scan mode.

User Experience:
Screen reader users will not get the proper information if for empty edit field, its information is not correctly read by Screen reader in scan mode.
Test Environment:
Environment: Chromium Edge (Anaheim) + Narrator
Build Version: 2004 (OS Build 19564.1005)
Microsoft Edge Version: 82.0.425.0 (Official build) canary (64-bit)
Test URL: http://localhost:3000/home
Repro Steps:

Open URL: http://localhost:3000/home
"Bot Framework Composer" homepage will gets opened.
Select any of the previously created bot from "Recent Bots" or create one from the available Bots under 'Examples' and activate it.
Select 'Settings' from left navigation.
Select 'Publish' button available under 'Configuration'.
Navigate to "Create azure resources" and activate it.
"Set bot name and password" dialog gets opened.
Leave all the edit field empty and navigate in scan mode using up/down arrow keys and observe the issue.

Actual Result:
When all the edit fields left blank, its information is not correctly read by Screen reader in scan mode. Screen reader read as 'Bot Framework Composer' i.e. start reading the page title information.
Expected Result:
Whether any edit field is having some data or empty, screen reader should convey its proper information.
MAS Reference:
https://microsoft.sharepoint.com/:w:/r/sites/accessibility/CELA/Official_Microsoft_Accessibility_Standards/MAS 4.2.1 – Object Information.docx?d=weee97bbd999048a08b036ea775581aa8&csf=1&e=UYEfO3
Attachment:
MAS4.2.1_Settings.zip

I've tested this out and I couldn't repro it - the screen reader reads out the field names, including "invalid" if it's a required field that's been left empty. So it looks like it's already been fixed.

As checked and verified on below environment, the issue is fixed now. So, we are closing the issue.
Test Environment
Browser: Microsoft Edge Dev {Version 83.0.467.0 (Official build) dev (64-bit)}
OS build: 2004 (19588.1000)
Screen Reader: Narrator
URL: Bot Framework Composer
Prerequisite Here

authors: ShellySoni ashish315 beyackle

repo: microsoft/BotFramework-Composer


text:
Streaming fault tolerance: handling happy/unhappy scenarios

(Edited by @compulim to complete the list)
Here is the list, we should expand into multiple issues later. Asterisks are shipblockers.

(14) Happy path

(8) With ⭐ and without conversation ID in sending messages (user to bot)

⭐ Typing
⭐ Text messages (including attachments, but the test case is defined later below)
⭐ Event
⭐ JSON messages (postBack or messageBack, with displayText)

(6) With and without CID in receiving messages (bot to user)

⭐ Typing
⭐ Text messages (including attachments)
⭐ Event

(1) End conversation
(5) Interrupted

(2) Able to resume after interruption

⭐ Due to network error (will retry)
⭐ Resume after page refresh (conversation ID is kept)

(2) Not able to resume after interruption

⭐ Due to expired token (will request renew token)
⭐ Due to blocked/throttled (should stop everything)

⭐ Resume by a renewed token

This make sure the renewed conversation can be continued by both side
If the Web Socket did not killed after token is expired, the test must kill it to make sure the new token is working properly

(1) ⭐ Failed before first connect (a.k.a. airplane mode)
(2) OAuth

⭐ With magic code
⭐ Without magic code

(2) Upload

⭐ A single file
⭐ Multiple files

(2) Conversation update

⭐ Should be sent initially when using a token with user ID
⭐ Should not be sent initially when not using a token with user ID

(2) Renew token

⭐ With a non-expiring token

This is overlapping with the test above, this test is focusing on whether the token can be renewed or not, regardless the renewed conversation can be continued or not

~With a secret (keep same conversation ID)~

(This is not working today)

~(2) Add a sideband stream (while chat activities are actively ongoing)~

(This is not working today)
~Start a new sideband stream~
~Stop a sideband stream~

Will fill out more on this.

I am expanding this into individual issues so we can track them easily.

Unassigned CK as we split out all tasks. This issue serves as TOC for now.

William has already created individual tasks.

authors: carlosscastro ckkashyap compulim

repo: microsoft/BotFramework-DirectLineJS


text:
[MAS4.1.2][Screen reader-Welcome] Screen reader is not reading the state for Welcome tab control when the user selected.

Actual Result:
Screen reader is not reading the state for Welcome tab control when the user selected which is present in the welcome tab screen
Expected Result:
Screen reader should narrate the state for Welcome tab control when the user
Example: Screen reader should narrate as Welcome tab is selected when the user selected the welcome tab screen
Note: Screen reader is not reading the selected state for when  the user selected the user message text.
Please find the attachment:MAS4.1.2_Live.chat.zip
Note: Same issue repros in NVDA also. Please refer the attachment as <MAS4.1.2_Tab controls_NVDA.wmv>
Repro Steps:
Turn on the narrator

Open the Bot Framework V4 Emulator.
Navigate to the Welcome tab screen
Select the Welcome tab
Observe the issue

User Impact:
Users who rely on screen reader will be affected to navigate the control if screen reader is not reading the state then user will  be affected which tab is selected.
Test Environment:
OS Build: Version 1903(OS Build 18362.239)
Browser: Edge
Application: Bot Framework V4 Emulator
Screen reader: Narrator
MAS Reference Link:
https://microsoft.sharepoint.com/:w:/r/teams/msenable/_layouts/15/WopiFrame.aspx?sourcedoc={248054a6-5e68-4771-9e1e-242fb5025730}

MAS4.1.2_Welcome.zip

MAS4.1.2_Live chat.zip
MAS4.1.2_Tab controls_NVDA.zip

@awalia13 @Kumar2608
I'm confused about what the issue is here. The bug title, description, and comments are referring to 2 completely different bugs.

The tab control is not reading the "selected" state. I have tested this with the latest Emulator, and I cannot reproduce the issue. It is reading correctly:

"Tab control, welcome tab 1 of 2"

and when navigating to the settings tab that is selected:

"Emulator settings tab, 2 of 2, selected"

on select:

"Selected"

The second bug is referring to the selected state of messages in the chat panel. This should be a separate bug as it is not related at all to the tab control.

After looking into the issue further, the reason it was reopened was because the selected state of the user message needs to be narrated as well. It was unclear that this was also part of the original bug.

Hi Tony, if same type of issue repro on another control then we generally log the single bug and mention it in Note section. This is the common practice we follow. Now the main issue has fixed but the issue mentioned in Note Section is not fixed.
Sorry for the confusion.

@awalia13 thanks for the quick reply. I didn't realize at first that the second instance of the issue was also included in this bug.

@tonyanziano I tried few approaches, looks like this is the better one:

Radio button is more reasonable, but

Radio button should be contained in a radio group
Radio group doesn't cooperate with role="list"

I didn't try aria-owns because it seems too much complexity

It ends up saying, "Radio button checked, 1 of 1 level 1". It can't be "1 of 5" because role="radio" don't play well with role="list"

Button

aria-pressed="true", Narrator didn't announce anything
Toggle button must be un-toggleable thru clicking, thus, we need to add uncheck logic

Checkbox

aria-checked="true", Narrator is announcing, only when you move the focus on it
It did not announce when the state changed, but I would argue this is Chromium behavior

So, I would choose role="checkbox" and implement as the screenshot.
See if this works for you.

I tried radiogroup and radio, linked them using aria-owns. But still, the AT said "1 of 1 level 1".
So I think the best bet is still checkbox. And there is no requirements that the user must be able to uncheck the checkbox. https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/checkbox_role

Verified in latest bot emulator version -4.5.2-82320 with NVDA(2019.2) Now NVDA is reading the checkbox checked\Unchecked Hence we are closing this bug.

repo: microsoft/BotFramework-Emulator


text:
how to send Adaptive Card from HTML UI (using store.dispatch): microsoft/BotFramework-WebChat

I am trying to figure out how to send Adaptive Card from HTML UI.

I can send message by a button click from UI (outside chat component).
store.dispatch({
          type: 'WEB_CHAT/SEND_MESSAGE',
          payload: {
            text: 'Hello'
          }
        });

My requirement is to send adaptive card(button from HTML UI): like below
store.dispatch({
          type: 'WEB_CHAT/SEND_MESSAGE',
          payload: {
            attchments: card.attachments
          }
        });

Looks like below event can be useful, but this seems to be for file attachment not for adaptive cards.
store.dispatch({
  type: 'DIRECT_LINE/POST_ACTIVITY',
  meta: {
    method: 'customizedButton'
  },
  payload: {
    activity: {
      attchments: card.attachments,
      channelData: {
        attachmentSizes: card.attachments
      }
    }
  }
});

It will be great if there is way to send activity(with attachments and text), so that adaptive cards can be send to receiver and sender can see in send messages. For example: using below code I can insert message, but this message is not sent to receiver.
store.dispatch({
  type: 'DIRECT_LINE/INCOMING_ACTIVITY',
  payload: {
    activity: {
      type: 'message',
      timestamp: new Date().toString(),
      channelId: 'directline',
      from: {
        id: '12312',
        name: '',
        role: 'user'
      },
      textFormat: 'plain',
      locale: 'en-US',
      text: 'welcome to chat!',
      entities: [{
        type: 'ClientCapabilities',
        requiresBotState: true,
        supportsListening: true,
        supportsTts: true
      }],
      channelData: {
        clientActivityID: Math.random().toString(),
        clientTimestamp: '2020-10-31T10:20:30.074Z'
      }
    }
  }
});

https://stackoverflow.com/questions/65138028/how-to-send-adaptive-card-from-html-ui-using-store-dispatch-microsoft-botfram?noredirect=1#comment115177929_65138028

Closing here to address on Stack Overflow

authors: iaulakh v-kydela

repo: microsoft/BotFramework-WebChat


text:
/etc/rsyslog.conf sends authpriv logs to /var/log/messages rather than /var/log/secure

In most other distros, rsyslog is configured to send authpriv logs to /var/log/secure rather than the standard log location, presumably for security reasons (e.g. https://www.rsyslog.com/doc/master/historical/multi_ruleset_legacy_format_samples.html ).
# The authpriv file has restricted access.
authpriv.*                                              /var/log/secure

In Mariner, /etc/rsyslog.conf instead sends authpriv logs to /var/log/messages.
# The authpriv file has restricted access.
authpriv.*                                              /var/log/messages

Is there a reason for this difference?

It seems like the rsyslog configuration was part of massive initial commit into Github (~2 years ago).
I'll let the engineers provide rationale if any. However, I think your request is valid, and we should do the exercise to ask us the question if we should consider a switch to /var/log/secure. to follow security standard.
My point of view is that
authpriv is use for security/authorization messages.
and
/var/log/secure store all security-related events such as logins, root user actions, ...
Plus you are right, both RHEL and Centos uses /var/log/secure (Their rsyslog downstream configuration for CentOS and RedHat are available upstream) :
https://github.com/rsyslog/rsyslog/blob/master/platform/redhat/rsyslog.conf#L51-L52
https://github.com/rsyslog/rsyslog/blob/master/platform/redhat/centos/rsyslog.conf#L56-L57
As oppose to current Mariner rsyslog configuration:
https://github.com/microsoft/CBL-Mariner/blob/1.0/SPECS/rsyslog/rsyslog.conf#L34-L35

https://cs.github.com/?scopeName=All+repos&scope=&q=%2Fauthpriv\.\*\s%2B.var.log.messages%2F

Thanks for filing the issue! Fixed in https://github.com/microsoft/CBL-Mariner/commit/435738fb81b844e11160c1ebc0a31fa9f830903c

authors: bureado christopherco eric-desrochers j-kits

repo: microsoft/CBL-Mariner


text:
clamav: Fix resetting of user and group on package update

Merge Checklist

All boxes should be checked before merging the PR (just tick any boxes which don't apply to this PR)

[X] The toolchain has been rebuilt successfully (or no changes were made to it)
[X] The toolchain/worker package manifests are up-to-date
[X] Any updated packages successfully build (or no packages were changed)
[X] Packages depending on static components modified in this PR (Golang, *-static subpackages, etc.) have had their Release tag incremented.
[X] Package tests (%check section) have been verified with RUN_CHECK=y for existing SPEC files, or added to new SPEC files
[X] All package sources are available
[X] cgmanifest files are up-to-date and sorted (./cgmanifest.json, ./toolkit/scripts/toolchain/cgmanifest.json, .github/workflows/cgmanifest.json)
[X] LICENSE-MAP files are up-to-date (./SPECS/LICENSES-AND-NOTICES/data/licenses.json, ./SPECS/LICENSES-AND-NOTICES/LICENSES-MAP.md, ./SPECS/LICENSES-AND-NOTICES/LICENSE-EXCEPTIONS.PHOTON)
[X] All source files have up-to-date hashes in the *.signatures.json files
[X] sudo make go-tidy-all and sudo make go-test-coverage pass
[X] Documentation has been updated to match any changes to the build system
[X] Ready to merge

Summary

Clamav user disappeared from passwd and group file on package updates. This fixes the pre and postun scriptlet to add/delete the user depending on whether it's a package installation, update or removal.
Change Log

User would disappear from passwd and group files on package updates.
Fixed pre and postun scriptlets to run based on input argument so that clamav user does not disappear on package update.  We now add user iff it's a package installation, and remove user iff it's a package removal. For package update, we neither add nor remove the user. Since we know that clamav doesn't have multiple packages by the same name which are 'parallel installable', this should work.
https://docs.fedoraproject.org/en-US/packaging-guidelines/Scriptlets/#_syntax describes what argument is passed to the scriptlet
Earlier, the scripts would run on package upgrade also. In that case, the user added by the updated version was deleted during the removal of the old version. The new version is installed before the old version is removed (as observed and supported in this post https://stackoverflow.com/questions/7398834/rpm-upgrade-uninstalls-the-rpm)

Does this affect the toolchain?

NO
Associated issues

#6422

Test Methodology

Local build. Tested these behaviours on the new releases (>=4) built with fixed pre and postun sections. To observe this behaviour, we have to get rid of the RPMS <= clamav-0.105.2-3, and do a fresh installation of clamav-0.105.2-4. But, builds in the future should show correct behaviour, as described below.

Tested that the user appears on package installation

Tested that the user does not disappear on package update

Tested that the user disappears on package removal

Buddy build - https://dev.azure.com/mariner-org/mariner/_build/results?buildId=467884&view=results

source: gharchive/pull-request


text:
Question regarding the number of output images

Hello, there is something that I find to be a bit strange (I don't know if there is something that I am missing) and I thought maybe you could help me understand problem.
When running MD on a folder (either version 5 or version 4), it seems as if not all images in the folder are being analyzed.
For example,
A folder with 2200 images was inserted to Mega detector (batch processing).
The total number of images in the output directories (animal_detection, person, person + animal, non detection etc.) is 450 IN TOTAL.
Does mega detector analyzing all images and doesn't output all of them? Should I run it again on images that were not in any of the output directories?
Please note - the json file contains all image files (all 2200 images)
Cheers,

The OP contacted us by email as well, closing as a duplicate.  Will re-open to comment if there is a bug here.

FYI there was not a bug here, we suggested that separate_detections_into_folders.py would probably be a better fit for what the OP is trying to achieve, and also pointed out the num_images_to_sample option to postprocess_batch_results.py for the (rare) case that a user wants to use postprocess_batch_results to render images for a complete batch.
All is well now!

repo: microsoft/CameraTraps


text:
What's the difference between gpt-2 and CodeGPT in baseline models?

I noticed that there are two gpt models in the baseline, what's the difference between them?

CodeGPT is a GPT-style language model pre-trained on programming language dataset (Python and Java) from CodeSearchNet. It shares the same model architecture with GPT-2 small (12 layers) but w/o parameter initialization from GPT-2. It has its own BPE vocabulary on programming languages. We trained two monolingual CodeGPT models for Python and Java. If you are interested about CodeGPT, you can try it by following https://github.com/microsoft/CodeXGLUE/tree/main/Code-Code/CodeCompletion-token#fine-tune

CodeGPT was trained on programming language dataset and it has its own vocabulary, while GPT-2 in baseline was the original version of gpt2 released by openai, am I right?

Yes.

Thanks very much!

authors: HaoboGu celbree

repo: microsoft/CodeXGLUE


text:
🚀 Git Action Workflow for Linux Build

Create GitHub equivalent of Azure Pipeline

Note: Full build and tests are only executing on Linux at the moment. Future work will execute test election on Windows and Mac.

authors: echumley-msft keithrfung


text:
Rename ContainerKillBit to MigrationTool and eliminate its usage of code details concept

Somewhat incremental change.  This naming makes more sense given its current purpose (previously was so named because it was used for terminating a collaboration session without migration).
By eliminating its usage of code details, we can also isolate the concept of code details to the loader layer (ModelLoader and code loader only) - everyone else speaks in "version".  Also some updated comments.

Nit: I see enough names of things in the interfaces.ts file changed, so VSCode (at least I think that's what does it) didn't automatically treat it as a file move/rename instead of a deletion and an addition. If the file has enough relevant history to be worth it, we could force that treatment with 'git mv' so we can track its history into the past.

Good point - in this case they're pretty new files and we're just iterating fast so I'll probably not worry about it, but will keep this in mind for weightier files.

repo: microsoft/FluidFramework


text:
display failed pipeline tests

Parses pipeline test reports for failures and logs errors in console:

updated test:mocha:report script in root package.json to use a multi reporter which generates both json and junit reports. Results from json reports are printed in the console of a pipeline run.
Updated PR from original: https://github.com/microsoft/FluidFramework/pull/13355

Closing for new PR: https://github.com/microsoft/FluidFramework/pull/14702
This branch seems to be running into some build issues and I couldn't successfully run git clean. Applying the same changes to a fresh branch seems to resolve the issue.


text:
refactor(ci): Completely remove stage that uploads telemetry when it's not needed, instead of skipping it

Description
I noticed that this stage still "runs" for PR builds in the public ADO project and is always skipped because part of the condition (BuildReason == IndividualCI) is never true there. Feels cleaner to just not create that stage at all in that case. This makes it easier to tell at a glance if the Build - client packages runs in the public project ran successfully to completion (no need to check what the skipped part is).
The pipeline run for this PR already doesn't have the conditional stage "Upload pipeline run telemetry to Kusto":

Reviewer Guidance
The review process is outlined on this wiki page.
I suggest using the "Hide whitespace" option in the Github diff view; the changes are fairly minimal and easier to read without all the extra indentation that came from the additional ${{ if ... }} block.

@alexvy86 unrelated to this PR... these bundle size differences of just a few bytes is worrisome. I've seen it on a few different PRs now. I wonder if it's related to the build changes I've been making. I'm out for a couple of weeks so won't be able to investigate myself until December. It can probably wait until then.

@alexvy86 unrelated to this PR... these bundle size differences of just a few bytes is worrisome. I've seen it on a few different PRs now. I wonder if it's related to the build changes I've been making. I'm out for a couple of weeks so won't be able to investigate myself until December. It can probably wait until then.

@RishhiB FYI the bundle size issues might be related to the build changes I made/you're making.


text:
[R-package] workflow for encoding unseen (new) data

Hi!
For a model that is trained weekly and used to make daily predictions, what is the 'correct' method for applying a R-trained LightGBM model to new, unseen daily data?
An alternative way to ask the same question is: do the same encoding rules need to be applied to the unseen new data, and if so, how should this be done? I can't find any examples of this.
I'm seeing an issue where a model performs very well on training and test data, but the response is essentially random when that model is saved, reloaded, and applied to new data. If that same unseen data is included in the test data the output is no longer random. Suspect it is something to do with the categorical encoding, but I want to rule out user error before pursuing.
Current workflow:

train and evaluate the model as normal. This is trained weekly.
save the best iteration of the model to a text file using  model$save_model_to_string(NULL).
save the encoding rules used in training (a list) to an rds file.
archive both model string (.txt) and the encoding rules (.rds) to S3.
For new data (daily), load the model (text file) and encoding rules (rds) from S3.
Prepared new data according to the saved encoding generated from initial train.
Make predictions using the saved model.

This works from a code perspective. There are no errors. But as I said the response is nonsense. So,

is this a valid workflow?
If not, how should this be done?
Even if it is valid, is there a better way of doing this?

If the workflow is valid but the issue persists then I will investigate further and get an example together. Thanks!

hi @gofford , thanks for using LightGBM! Can you please clarify a few things for me?

What version of LightGBM are you using?
Can you show me in code what you mean by "the encoding rules"?
Are you using the parameter categorical_features in your call to lgb.train()?

It would help if you can share a code sample that describes what you mean by "encoding generated from initial train".

Hey @jameslamb,

I'm using LightGBM 3.0.0.

Apologies for the ambiguity on the explanation! 'encoding generated from the initial train' is the rules output of lightgbm::lgb.convert_with_rules when applied to the training set. An abridged version of my processing code is:

Yes, I am using the categorical_features parameter in the call to lgb.train()

Here's some code. I don't have a sharable dataset for this issue yet, so I'm afraid it's not replicable. Assuming that I'm not using the package incorrectly I will work on pulling together a replicable example.
# Assume I've got a data.table called 'data', and that 'target' denotes my response variable
features <- setdiff(names(data), target)
cat_features <- intersect(features, names(data)[sapply(data, class) %in% c("factor", "character")])

# recency based split; last 3 months are test
split_date <- lubridate::today() %m-% months(3)
train_ids <- unique(data[firstsaledate < split_date]$id)

# split to train/test
train_index <- which(data$id %in% train_ids)
train <- data[ train_index, c(target, features), with = FALSE]
test <- data[-train_index, c(target, features), with = FALSE]

# convert categoricals
encoded_data <- lightgbm::lgb.convert_with_rules(data = train)
train <- encoded_data$data
test <- lightgbm::lgb.convert_with_rules(data = test, rules = encoded_data$rules)$data

# split to feature matrices and target vectors
train_X <- train[, features, with = FALSE]
train_X <- as.matrix(train_X)
train_y <- train[[target]]

test_X <- test[, features, with = FALSE]
test_X <- as.matrix(test_X)
test_y <- test[[target]]

# construct datasets
dtrain <- lightgbm::lgb.Dataset(
    data = train_X,
    label = train_y,
    categorical_feature = cat_features,
    free_raw_data = FALSE
)

dtest <- lightgbm::lgb.Dataset.create.valid(
   dataset = dtrain,
   data = test_X,
   label = test_y
)

# train model
model <- lightgbm::lgb.train(
   params = list(
      objective = 'binary',
      metric = 'auc'
   ),
   data = dtrain,
   valids = list(
      dtrain = dtrain,
      dtest = dtest
   ),
   early_stopping_rounds = 10,
   eval_freq = 20,
   verbose = 1
)

This is all pretty standard, works absolutely fine within the same R session, and performance is great. However I need to apply this model to new data on an ongoing basis so I need to archive the model. To do this, I save the model string and encoded_data$rules objects to S3. I'm using the model string as the .rds file saved by LightGBM is enormous, and I need things to work relatively fast.
   # save model string
   model_string <- model$save_model_to_string(NULL)
   readr::write_file(model_string, "model_string.txt")
   system("aws s3 cp model_string.txt s3://my/bucket/model_string.txt")

   # save list of encodings from training set so that it can consistently be applied to new data
   encoding_rules <- encoded_data$rules
   readr::write_rds(encoding_rules, "encoding_rules.rds")
   system("aws s3 cp encoding_rules.rds s3://my/bucket/encoding_rules.rds")

For new data, the process I'm using is to then load model_string.txt and encoding_rules.rds from S3, apply them to the new data with lightgbm::lgb.convert_with_rules, and make a prediction as normal.
   # retrieve from S3
   system("aws s3 cp s3://my/bucket/model_string.txt model_string.txt")
   system("aws s3 cp s3://my/bucket/encoding_rules.rds encoding_rules.rds")

   # load to R
   model <- lightgbm::lgb.load(model_str = "model_string.txt")
   encoding_rules <- readr::read_rds("encoding_rules.rds")

   # load new data, and apply encoding rules
   newdata <- data.table::fread("newdata.csv")
   encoded_newdata <- llightgbm::lgb.convert_with_rules(data = newdata, rules = encoding_rules)$data

   # make predictions
   newdata[, rebuyprob := predict(model, data = as.matrix(encoded_newdata))]

At this point, inspection shows that the predictions on the new data follow a completely different distribution to what was observed in the original training data which is very strange and contrary to expectation. If I retrain and include the "newdata" in the test set (within the same session), then the results are back to what are expected.
So my questions are now:

Based on this code, is this procedure correct? and,
Do predictions on new data need to be converted using the sale rules as the original training data (I have assumed yes)?

If I'm not doing anything obviously wrong then I will need to dig deeper into what is going on here.
Thanks for the help!

Rolling back to v2.3.1 resolved whatever was happening here, but why it was happening in v3.0.0 remains unclear.

Ok sorry for the delayed response!

Based on this code, is this procedure correct?

@gofford this procedure all looks good to me!

Do predictions on new data need to be converted using the same rules as the original training data (I have assumed yes)?

Yes, before predicting on new data, you should call lgb.convert_with_rules() using the same rules created during training. Since your first call to  lgb.convert_with_rules() didn't provide your own rules, any character or factor columns will have been assigned numeric values based on the order they were encountered in that training data.

Can you please elaborate on "the predictions on the new data follow a completely different distribution to what was observed in the original training data"?

Based on what you've provided so far, I have a few theories on what is going wrong and ideas on how to test them
Problem 1: The .save() and .load() round-trip is broken
Since you opened this issue, we've merged a PR that fixes several bugs in .save() for models: #3368. You could try cloning the most recent master, re-installing the R package, and trying your workflow again.
You could also try saving the model to local disk, then loading it again with lgb.load(). Call predict() on your test set from training, and compare that to the predictions on the test set from your original training session. If the results are identical, it probably means you have a data problem and not a {lightgbm} problem.
Problem 2: Your new data is very different from your training data
Use summary() on your training data and compare that to summary() on the new data to be scored. Are there any notable differences? That could mean that you have an issue with inconsistencies between your training data and new data. For example, maybe your new data has categorical features which have a lot of values that weren't seen during training, or maybe a numeric feature is in the wrong units of measure.
I hope that helps! I

authors: gofford jameslamb

repo: microsoft/LightGBM

license: mit

license_source: bigquery


text:
Update XR Rig prefab to better support HoloLens 2 scenarios

Overview
We recently hit issues where the default XR Rig settings didn't work with Azure Spatial Anchors and Azure Remote Rendering on HoloLens 2.   We should improve the experience for HoloLens 2 so that these scenarios work out of the box.
Tasks

[ ] Figure out correct defaults for MRKT3's XR Rig prefab.  At the moment Tracking Origin Mode is set to Not Specified and Camera Y Offset set to 1.6.  This doesn't seem ideal for HoloLens2, but perhaps it is correct given the Transform.Position.Y value is 1.6.  However, these settings didn't work correctly with ASA and ARR; need to understand why.
[ ] Update MRTK3's XR Rig prefab as needed
[ ] Maybe create a HoloLens 2 specific XR Rig prefab?
[ ] Add MSFT's EyeLevelSceneOrigin to HL2 specific XR Rig prefab?

Current Defaults:

More Context
For ASA and ARR to function correctly on HoloLens 2, we had to set Tracking Origin Mode to Device and Camera Y Offset to 0.
Some useful information from the MSFT OpenXR Team:

Tracking origin mode sets the origin of XR content in the Unity scene to either be centered in your headset's starting position (Device) or centered on the floor below your starting position (Floor)
The Camera Y Offset is how far the camera is translated above that XR origin within the Unity scene.
Typically, we do TrackingOriginMode=Device, Camera Y Offset=0, which makes sure the experience starts around your head (assuming the Unity app is built around the origin). The other common (older) configuration I've seen is TrackingOriginMode=Floor, Camera Y Offset=1.6, which places the origin on the floor (roughly) and the camera still where your head is.

Also from OpenXR Team:

The device mode should be set to "Unbounded" not just "Device".

The "Device" setting uses "Local" tracking. The MSFT OpenXR plugin has a component to force the app into an "Unbounded" tracking. See the EyeLevelSceneOrigin class for details. Perhaps the MRTK XR Rig prefab for HoloLens should use this.

Are you seeing an issue with the current defaults on HL2? When set to "Not Specified", the XR Rig allows the device/runtime to determine its optimal mode. The Camera Y Offset is only used when the device/runtime decides to use "Floor", so this value should not affect HL2.
As a side note, I had a request out to Unity to add "Unbounded" to the XR Origin component, so it should show up in a future iteration. I don't remember the timeline.

The current XR rig setup and defaults are absolutely the correct setting for HoloLens 2 development under the current coordinate space best practices as defined by Unity XRI and ARFoundation.

Maybe create a HL2 specific XR Rig prefab?

Please do not do this.

Are you seeing an issue with the current defaults on HL2?

Using AR Foundation 5.0, and using the default configuration (removing the unneeded AR Session Origin), both ASA and ARR don't function correctly. ASA recalls anchors 1.6m too high.  ARR renderer content 1.6m too high. Setting tracking origin to Device and offset to 0 addressed this problem.
We need to understand the issue a bit better before we can determine the correct course of action here. Whatever is chosen we'll do our best not to prohibit usage on non-HoloLens devices.

@keveleigh I'm trying to better understand the motivation behind setting the default "Camera Y Offset" to 1.6, and the default Y Position on the Camera Offset GameObject to 1.6:

This seems like it has no net effect (GameObject moves up 1.6m then XROrigin moves it back down 1.6) other than allowing the user to build the scene at a different origin height (the MRTK content appear to be positioned at a height of 1.769m).
This same effect could be achieved by setting both the GameObject Y Position to 0, the "Camera Y Offset" to 0, and moving the scene content to 0 height. Do you recall if there any reason the scene content was positioned at the 1.769m height?

This seems like it has no net effect (GameObject moves up 1.6m then XROrigin moves it back down 1.6) other than allowing the user to build the scene at a different origin height (the MRTK content appear to be positioned at a height of 1.769m).

The GameObject is at 1.6m at edit time to better visualize the scene you're building through Unity's various camera previews, as it matches where the camera will relatively be at runtime.
At runtime, Unity will set the Camera Offset GameObject's height to 1.6m according to the XROrigin's setting if the tracking origin mode is Device (so, it effectively won't move in this configuration because it was already set that way in the editor, but that's good because it matches what a dev was seeing in the editor).
If the tracking origin mode is Floor, XROrigin sets the Camera Offset GameObject's height to 0m. Setting it to 0m allows the device to directly localize itself above the runtime's floor space, which will be somewhere in a similar range to 1.6m above the scene origin (1.6m is ~5' 3", so slightly different depending on a user's actual height), so the scene content should still be relatively in a predictable location.
This is in XROrigin's source:

As far as why we've preferred this offset as opposed to localizing everything directly around the head is largely to do with XRI's locomotion/teleportation implementation. It assumes there will be some floor representation (and thus, some offset between the head and the floor), whether it's an artificial 1.6m or one actually determined by the runtime.
https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.3/manual/locomotion.html

This same effect could be achieved by setting both the GameObject Y Position to 0, the "Camera Y Offset" to 0, and moving the scene content to 0 height.

While this is true for devices that default to XR_REFERENCE_SPACE_TYPE_LOCAL or XR_REFERENCE_SPACE_TYPE_UNBOUNDED_MSFT, devices that have a built-in XR_REFERENCE_SPACE_TYPE_STAGE (like desktop WMR and Quest) will now have their content embedded in the physical world's floor.

The example scenes in MRTK 2 all had content centered around the default origin at 0.

This is true! And it led to some special casing in the teleportation logic where we tried to guesstimate where we should put the camera post-teleport that didn't really work in all cases.
https://github.com/microsoft/MixedRealityToolkit-Unity/blob/b0263190f4cf7636ec4aacb08d4224bcc5ec5719/Assets/MRTK/Services/TeleportSystem/MixedRealityTeleportSystem.cs#L300-L302
Regarding the floor-embedded content I mentioned above, this also led to us creating a special MonoBehaviour that adjusted the app's content's height at runtime, but I've found the XROrigin approach to be more robust in both cases (as well as being a Unity-created component instead of something custom!).

Thanks for the detailed explanation! The rationale for using the Y Offset makes sense. I'm working on validating the issues with our services and checking the behavior of this with OpenXR's unbounded space.
ASA already has a fix coming and I've validated that this is no longer an issue.

Confirmed ARR does not respect the Y Offset on the XR Origin, following up with them to create a bug. I think based on the investigation here we can go ahead and close this issue as there's no changes needed on MRTK.

authors: AMollis Zee2 keveleigh srinjoym

repo: microsoft/MixedRealityToolkit-Unity


text:
FocusProvider.QueryScene() assumes only Grab Pointer uses SceneQueryType.SphereOverlap

Overview
In FocusProvider.QueryScene() we are checking whether overlapping colliders have a NearInteractionGrabbable component attached in order for the hit test to be successful. This is assuming only the grab pointer (SpherePointer) is using SceneQueryType.SphereOverlap, but there may be other pointers using the same query type which have different semantics.
Expected Behavior
The check for NearInteractionGrabbable components should only be done for grab pointers. Specifically FocusProvider should not event know about this component as this is an implementation detail of SpherePointer.
Actual Behavior
Every pointer using SceneQueryType.SphereOverlap can only interact with objects which have a NearInteractionGrabbable  component.
Steps to reproduce
Unity Editor Version
2018.3.9f1
Mixed Reality Toolkit Release Version
MRTK v2

Assigning to daniel

Line 1116 in FocusProvider

I believe this is still an issue

Related https://github.com/microsoft/MixedRealityToolkit-Unity/issues/5160?

This one might also be able to be tackled at the same time: https://github.com/microsoft/MixedRealityToolkit-Unity/issues/4719

authors: Troy-Ferrell chrisfromwork danielhofmann-ms keveleigh


text:
Don't dispatch touch events for a hand that is already grabbing something and vice versa

(Ported to GitHub, reference 19739652)
Don’t send OnTouchDown, OnTouchUp events if a grab interaction is already active for a given source id.
For example: if I am moving something that has a touchable surface/button, I should not be accidentally pressing that button while moving.

@julenka can you add some more details on what the request/bug is here? The last mention I've seen here is around the mediator handling this.

Fixed by #4645

authors: chbecker-ms julenka wiwei


text:
[RC2] PressableButton planes are in wrong location after restarting Unity

Overview
Some pressable buttons that have a movingVisuals with a non-zero z local position will have their planes moved way off the button when you enter play mode, even though in edit mode the buttons look fine.
Repro steps:

Create empty unity project
Import RC2 release
Unzip the following folder "Scenes" into the Assets folder
Examine Buttons/Deep/MyButton and see planes show up correctly over button

Hit play and observe the planes are now completely off the button:

Scenes.zip
Note that the root cause seems to be that the moving button visuals object has a non-zero local space z:

See #4527 for changes that probably triggered this regression.

authors: julenka paco-ms


text:
Document known issue / workaround for msbuildforunity #133

This change documents an issue with MSBuild for Unity 0.9.1 that impacts MRTK and the workaround.

/azp run mrtk_docs

authors: davidkline-ms keveleigh


text:
Support for different configuration profiles for command generation

Adding support to generate [ntttcp] commands for multiple configurations - ex: generating commands for sampling (default)) or for testing
@omarcardona @cmaloney-msft @tmolenh

Tested on Azure VMs with Default and Custom Params

ping

Two changes:

Adding support to generate [ntttcp] commands for multiple configurations - ex: generating commands for sampling (default)) or for testing
Fixing bug with latte command generation (where -dump cannot be specified for time based tests)

@omarcardona @cmaloney-msft @tmolenh

repo: microsoft/NetPerfTest


text:
When creating a Contact record getting the following One or more errors occurred. (Object reference not set to an instance of an object.)

Can someone please help me with the following error.
{"Object reference not set to an instance of an object."}
Data: {System.Collections.ListDictionaryInternal}
HResult: -2147467261
HelpLink: null
InnerException: null
Message: "Object reference not set to an instance of an object."
Source: "Microsoft.PowerPlatform.Dataverse.Client"
StackTrace: "   at Microsoft.PowerPlatform.Dataverse.Client.Utilities.IsAttributeValidForOperation(AttributeMetadata attrib, HttpMethod requestedMethod)\r\n   at Microsoft.PowerPlatform.Dataverse.Client.Utilities.ToExpandoObject(Entity sourceEntity, MetadataUtility mUtil, HttpMethod requestedMethod, DataverseTraceLogger logger)\r\n   at Microsoft.PowerPlatform.Dataverse.Client.ConnectionService.<Command_WebAPIProcess_ExecuteAsync>d__185.MoveNext()"
TargetSite: {Boolean IsAttributeValidForOperation(Microsoft.Xrm.Sdk.Metadata.AttributeMetadata, System.Net.Http.HttpMethod)}
at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
at System.Threading.Tasks.Task1.GetResultCore(Boolean waitCompletionNotification)    at System.Threading.Tasks.Task1.get_Result()
at Microsoft.PowerPlatform.Dataverse.Client.ServiceClient.ExecuteOrganizationRequestImpl(OrganizationRequest req, String logMessageTag, Boolean useWebAPI, Boolean bypassPluginExecution)
at Microsoft.PowerPlatform.Dataverse.Client.ServiceClient.Create(Entity entity)
at

Thank You!!


text:
Tikit

submitting connector for certification

When submitting a connector, please make sure that you follow the requirements below, otherwise your PR might be rejected. We want to make you have a well-built connector, a smooth certification experience, and your users are happy :)
If this is your first time submitting to GitHub and you need some help, please sign up for this session.
Please note that we are experiencing a significant delay due to a high volume of connector submissions. It may take 1-2 weeks for us to provide comments for your connector.

[x] I attest that the connector works and I verified by deploying and testing all the operations.
[x] I attest that I have added detailed descriptions for all operations and parameters in the swagger file.
[x] I attest that I have added response schemas to my actions, unless the response schema is dynamic.
[x] I validated the swagger file, apiDefinition.swagger.json, by running paconn validate command.
[x] If this is a certified connector, I confirm that apiProperties.json has a valid brand color and doesn't use an invalid brand color, #007ee5 or #ffffff. If this is an independent publisher connector, I confirm that I am not submitting a connector icon.

If you are an Independent Publisher, you must also attest to the following to ensure a smooth publishing process:

[ ] I have named this PR after the pattern of "Connector Name (Independent Publisher)" ex: HubSpot Marketing (Independent Publisher)
[ ] Within this PR markdown file, I have pasted screenshots that show: 3 unique operations (actions/triggers) working within a Flow. This can be in one flow or part of multiple flows. For each one of those flows, I have pasted in screenshots of the Flow succeeding.
[ ] Within this PR markdown file, I have pasted in a screenshot from the Test operations section within the Custom Connector UI.
[ ] If the connector uses OAuth, I have provided detailed steps on how to create an app in the readme.md.

@TikitTeam Please note that we do not review draft PRs, you can delete it from the open-source if you are still working on it.

Updated.

@TikitTeam Please resolve all the comments to get the PR approved and merged.

Points previously raised have been addressed along with removing settings.json and icon.png

authors: TikitTeam sriyen-msft

repo: microsoft/PowerPlatformConnectors


text:
WhatIsMyBrowser (Independent Publisher)

When submitting a connector, please make sure that you follow the requirements below, otherwise your PR might be rejected. We want to make you have a well-built connector, a smooth certification experience, and your users are happy :)
If this is your first time submitting to GitHub and you need some help, please sign up for this session.

[X] I attest that the connector doesn't exist on the Power Platform today. I've verified by checking the pull requests in GitHub and by searching for the connector on the platform or in the documentation.
[X] I attest that the connector works and I verified by deploying and testing all the operations.
[X] I attest that I have added detailed descriptions for all operations and parameters in the swagger file.
[X] I attest that I have added response schemas to my actions, unless the response schema is dynamic.
[X] I validated the swagger file, apiDefinition.swagger.json, by running paconn validate command.
[X] If this is a certified connector, I confirm that apiProperties.json has a valid brand color and doesn't use an invalid brand color, #007ee5 or #ffffff. If this is an independent publisher connector, I confirm that I am not submitting a connector icon.

If you are an Independent Publisher, you must also attest to the following to ensure a smooth publishing process:

[X] I have named this PR after the pattern of "Connector Name (Independent Publisher)" ex: HubSpot Marketing (Independent Publisher)
[X] Within this PR markdown file, I have pasted screenshots that show: 3 unique operations (actions/triggers) working within a Flow. This can be in one flow or part of multiple flows. For each one of those flows, I have pasted in screenshots of the Flow succeeding.
[X] Within this PR markdown file, I have pasted in a screenshot from the Test operations section within the Custom Connector UI.
[ ] If the connector uses OAuth, I have provided detailed steps on how to create an app in the readme.md.

[[certify-connector]]

Hello @troystaylor ,
I hope you are doing well.
Congratulations, your pull request is approved. We will move forward with the certification process. We are preparing your connector for production deployment and will queue up for the next deployment schedule. Once your connector onboards the next deployment schedule, it starts to deploy your connector in our production environments that typically takes 3-4 weeks.
Please let us know if you have any questions.
Thank you very much for working with us.

Hello @troystaylor ,
I hope you are doing well.
Your connector is in production deployment and queued up for the next deployment schedule. This process typically takes 3-4 weeks. Please note that the documentation for your connector will not be generated until the deployment process is in the final steps.
Please let us know if you have any questions.
Thank you very much for working with us.

authors: Amjed-Ayoub troystaylor


text:
Image can't be resized

Description of the new feature / enhancement
Image resizer preset size adds one item: original image size.
Scenario when this would be used?
Sometimes the original image size is inconsistent and only want to compress the image size by removing non-essential metadata without changing the image size size.
Supporting information
Notes by Crutkas
Image below can't be resized.  Photos app can resize it however.  Photos app did change it to 32bit however vs 24bit on the resize
Removing the meta data does get it to resize

Can’t this be done via percent 100%?

I didn't find where the preset is 100% and the preset size has to be filled in with a specific number.

I didn't find where the preset is 100% and the preset size has to be filled in with a specific number.

Should work like this:

After selecting Custom 100% Size and resizing the image, the image size becomes larger.
In the process of trying it, another bug was found.
Without checking the Remove metadata option, the resize image will error out with the message "Unable to resize the following image, the value is not in the expected range.

Would you mind sharing the image with us? It would help to reproduce the problem.

I can confirm that it is not possible to resize this image. Its not limited to the custom size 100% but affects all size presents. I tested with v0.51.1.
As a workaround, you can check the "remove metadata that doesn't affect rendering" option.

interesting, Photos app can resize it but we can't

Resizing this image was possible with version 0.49.1 an earlier. It is a regression introduced by me with PR #14914. I'm sorry about that and will commit a fix soon.
Could you assign this issue to me?

This is fixed in 0.53, get it at https://aka.ms/installPowerToys

authors: CleanCodeDeveloper a1waysbeta crutkas

repo: microsoft/PowerToys


text:
Using UIAccess for dealing with elevation

Description of the new feature / enhancement
Rather than require that PowerToys be run elevated in order for Fancy Zones to work with elevated app windows, wouldn't configuring PowerToys to request UIAccess achieve the same objective without the need to run elevated?
Scenario when this would be used?
All scenarios involving elevated apps.
Supporting information
Tested with custom code that an app with UIAccess can move and resize windows belonging to elevated apps without itself running elevated.

Best of my knowledge, this would have a UAC prompt on every launch then since it still launches elevated. https://docs.microsoft.com/en-us/windows/win32/winauto/uiauto-securityoverview

we'd have to do a lot of testing.  Also want to be sure this would be use-case scenario for the flag versus using the flag for getting what we need.  We want to show best patterns and practices.

Hi, Clint.
Thanks for responding.
It is not accurate to say that a UAC prompt would ever occur when launching an app (normally) that requests UIAccess in its manifest, or that it will launch elevated.  Here are the two relevant scenarios (with UAC enabled at its highest level in both cases):

If the user is a member of the Administrators group, the app will launch (without UAC prompt), will have UIAccess enabled (assuming it meets all conditions, being signed and launched from say \Program Files), will run at the High integrity level (IL), but will not be elevated (see the screenshot below showing one of my own utilities in Task Manager and Process Explorer with the relevant columns indicated).  It would be capable of moving/sizing elevated app windows and set them Always On Top (as a result of running at the High IL), and would be able to send them keystrokes (as a result of UIAccess).

@.***

If the user is not a member of the Administrators group, then the app will launch (still without a UAC prompt), will have UIAccess enabled, but will run at the "Medium+" integrity level (and of course still won't be elevated).  It would therefore still be able to send keystrokes into elevated windows (just like an on-screen keyboard) but would in this case not be able to move/size/AOT elevated windows.

How this is relevant to PowerToys (if it had UIAccess enabled) is that a member of the Administrators group (which I suspect encompasses the majority of PowerToys users) would never need to run it "as Administrator" in order to benefit from all its features even with elevated app windows, including hotkey-related features and Fancy Zones.  As for users who are not members of the Administrators group, (a) they would generally not have to deal with elevated windows anyway, and (b) if they do have access to a set of Administrator credentials, then they can still use them to launch PowerToys to affect whatever elevated windows they may also launch and are therefore no worse off than before (in fact better, because they now have the option of running PowerToys as that user without running it as admin, so they gain the same benefits as an administrator without running PowerToys elevated).
I hope this makes sense.  I've done quite a bit of testing with UIAccess, and the above has always been my experience.
Later.
Jacques.
From: Clint Rutkas @.>
Sent: Mon, January 03, 2022 3:38 PM
To: microsoft/PowerToys @.>
Cc: Jacques Bensimon @.>; Author @.>
Subject: Re: [microsoft/PowerToys] Fancy Zones and elevated windows: suggestion (Issue #15241)
Best of my knowledge, this would have a UAC prompt on every launch then since it still launches elevated. https://docs.microsoft.com/en-us/windows/win32/winauto/uiauto-securityoverviewhttps://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fwindows%2Fwin32%2Fwinauto%2Fuiauto-securityoverview&data=04|01|jbensimon%40newtekone.com|23220c89d4124b3fbe3408d9cef8f4f3|e5d9d382958748ef8fdc9f8d8af29b90|0|0|637768391151260225|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=270DL%2Bz8h2DXklzzaXqnXtaiSrD%2FbvddBgdy%2Bclw9zs%3D&reserved=0

Reply to this email directly, view it on GitHubhttps://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fmicrosoft%2FPowerToys%2Fissues%2F15241%23issuecomment-1004344492&data=04|01|jbensimon%40newtekone.com|23220c89d4124b3fbe3408d9cef8f4f3|e5d9d382958748ef8fdc9f8d8af29b90|0|0|637768391151270210|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=0zUiy8Gq9gEsKf1rXSBVxgYWE1jr7nYNb4hv2r0ARuA%3D&reserved=0, or unsubscribehttps://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FALCC242VBEPH3EK2EE6BAV3UUICLBANCNFSM5LFVLVPA&data=04|01|jbensimon%40newtekone.com|23220c89d4124b3fbe3408d9cef8f4f3|e5d9d382958748ef8fdc9f8d8af29b90|0|0|637768391151270210|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=BJPUqkkyz3N70A9sou30Tk26kRL39oq4sgaVl66ijEs%3D&reserved=0.
Triage notifications on the go with GitHub Mobile for iOShttps://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fapps.apple.com%2Fapp%2Fapple-store%2Fid1477376905%3Fct%3Dnotification-email%26mt%3D8%26pt%3D524675&data=04|01|jbensimon%40newtekone.com|23220c89d4124b3fbe3408d9cef8f4f3|e5d9d382958748ef8fdc9f8d8af29b90|0|0|637768391151280216|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=AOjagMWUCBFR2IWnNyj1RmcDQ5Sedgp2mfMRuIqsHqo%3D&reserved=0 or Androidhttps://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fplay.google.com%2Fstore%2Fapps%2Fdetails%3Fid%3Dcom.github.android%26referrer%3Dutm_campaign%253Dnotification-email%2526utm_medium%253Demail%2526utm_source%253Dgithub&data=04|01|jbensimon%40newtekone.com|23220c89d4124b3fbe3408d9cef8f4f3|e5d9d382958748ef8fdc9f8d8af29b90|0|0|637768391151290200|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=8kJCRnMpNxgkmwVxSzaBHfUj4374j7j0S%2BsTB8YD6AY%3D&reserved=0.
You are receiving this because you authored the thread.Message ID: @.***>
Notice: This communication, including any attachments, may contain information that is confidential and non-public, and is intended only for the designated recipient(s). If you are not the intended recipient, or if you believe that you have received this communication in error, please notify the sender immediately by return e-mail, and promptly delete this e-mail and any attachments, without reading or saving. The unauthorized use, dissemination, distribution, or reproduction of this e-mail, including attachments, is prohibited and may be unlawful.

Well, you may have me there:  Microsoft's own document on UIAccess states (suggests, insists, offers as best practice, ...?) that it should only be used by "assistive" programs, so unless you feel PowerToys belongs in some sense to that category, you'd be going against the grain.  From a security standpoint however, I do feel it's a superior alternative to having users run PowerToys elevated.
Jacques.
From: Clint Rutkas @.>
Sent: Mon, January 03, 2022 3:40 PM
To: microsoft/PowerToys @.>
Cc: Jacques Bensimon @.>; Author @.>
Subject: Re: [microsoft/PowerToys] Fancy Zones and elevated windows: suggestion (Issue #15241)
we'd have to do a lot of testing. Also want to be sure this would be use-case scenario for the flag versus using the flag for getting what we need. We want to show best patterns and practices.

Reply to this email directly, view it on GitHubhttps://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fmicrosoft%2FPowerToys%2Fissues%2F15241%23issuecomment-1004345286&data=04|01|jbensimon%40newtekone.com|d2ab5dd5471e4233b73c08d9cef93053|e5d9d382958748ef8fdc9f8d8af29b90|0|0|637768391931891957|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=l3axwwa0JeSmbEU%2Fc%2BjqEZ%2BU2OKwzvCaBjRqEyxbH8c%3D&reserved=0, or unsubscribehttps://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FALCC24Z75273ZG624AXCV6DUUICRJANCNFSM5LFVLVPA&data=04|01|jbensimon%40newtekone.com|d2ab5dd5471e4233b73c08d9cef93053|e5d9d382958748ef8fdc9f8d8af29b90|0|0|637768391931891957|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=tiFybpTNftnUw3yjvQ5keDQgsNoKsso85qjYizB6PGw%3D&reserved=0.
Triage notifications on the go with GitHub Mobile for iOShttps://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fapps.apple.com%2Fapp%2Fapple-store%2Fid1477376905%3Fct%3Dnotification-email%26mt%3D8%26pt%3D524675&data=04|01|jbensimon%40newtekone.com|d2ab5dd5471e4233b73c08d9cef93053|e5d9d382958748ef8fdc9f8d8af29b90|0|0|637768391931901959|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=FE%2B9V3saA9m9%2Fa59SmP0q2dvGHLXWDv3LOpHfyhqLJI%3D&reserved=0 or Androidhttps://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fplay.google.com%2Fstore%2Fapps%2Fdetails%3Fid%3Dcom.github.android%26referrer%3Dutm_campaign%253Dnotification-email%2526utm_medium%253Demail%2526utm_source%253Dgithub&data=04|01|jbensimon%40newtekone.com|d2ab5dd5471e4233b73c08d9cef93053|e5d9d382958748ef8fdc9f8d8af29b90|0|0|637768391931911940|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=kJ5cY35DtKY%2Bj8sJaaDX3a50RWvGpR%2FoCIMxm4Ss314%3D&reserved=0.
You are receiving this because you authored the thread.Message ID: @.***>
Notice: This communication, including any attachments, may contain information that is confidential and non-public, and is intended only for the designated recipient(s). If you are not the intended recipient, or if you believe that you have received this communication in error, please notify the sender immediately by return e-mail, and promptly delete this e-mail and any attachments, without reading or saving. The unauthorized use, dissemination, distribution, or reproduction of this e-mail, including attachments, is prohibited and may be unlawful.

A lot of people are not admins of their box. We've done a lot of work to do per-user installs due to this

A lot of people are not admins of their box. We've done a lot of work to do per-user installs due to this

Per-user installs will place files in the user profile rather than Program Files, so requesting UIAccess would have no effect in this case, it would be quietly denied.

@davidegiacometti
Isn't this obsolete now? Should works as we replaced closeWindow() with sendWindowMessage()

@davidegiacometti Isn't this obsolete now? Should works as we replaced closeWindow() with sendWindowMessage()?

The issue is about FancyZones.

@davidegiacometti Isn't this obsolete now? Should works as we replaced closeWindow() with sendWindowMessage()?

The issue is about FancyZones.

Sory. My mistake.
@SeraphimaZ
Might it be possible that for FZ a similar solution can work. Don't know the code of FZ.

@davidegiacometti Isn't this obsolete now? Should works as we replaced closeWindow() with sendWindowMessage()?

I'm not sure in which PowerToys module the use of closeWindow() was replaced with sendWindowMessage(), but generally speaking higher integrity processes will ignore messages from lower ones, so I wouldn't imagine that PowerToys (running unelevated) would be able to close a window belonging to a higher integrity process by either method.

@davidegiacometti Isn't this obsolete now? Should works as we replaced closeWindow() with sendWindowMessage()?

I'm not sure in which PowerToys module the use of closeWindow() was replaced with sendWindowMessage(), but generally speaking higher integrity processes will ignore messages from lower ones, so I wouldn't imagine that PowerToys (running unelevated) would be able to close a window belonging to a higher integrity process by either method.

In this case it works. It doesn't close the process. It sends a close request to the window like when you click on the X in the title bar. So my idea was that send a mive request in a similar way might work too.

@davidegiacometti Isn't this obsolete now? Should works as we replaced closeWindow() with sendWindowMessage()?

I'm not sure in which PowerToys module the use of closeWindow() was replaced with sendWindowMessage(), but generally speaking higher integrity processes will ignore messages from lower ones, so I wouldn't imagine that PowerToys (running unelevated) would be able to close a window belonging to a higher integrity process by either method.

In this case it works. It doesn't close the process. It sends a close request to the window like when you click on the X in the title bar. (The module we are talking about is PT Run.)
So my idea was that send a move request in a similar way might work too.

Interesting, I was under the impression that all messages from lower integrity processes were ignored. I guess some are allowed. For example, I know for a fact that "drop messages" are ignored (which is why you can't drag a file from Explorer into an elevated CMD or PowerShell window), unless the app explicitly coded to allow selected messages from lower integrity processes.

Quote:

User Interface Privilege Isolation (UIPI) implements restrictions in the Windows subsystem that prevent lower-privilege applications from sending messages or installing hooks in higher-privilege processes. Higher-privilege applications are permitted to send messages to lower-privilege processes.

https://docs.microsoft.com/en-us/windows/security/threat-protection/security-policy-settings/user-account-control-allow-uiaccess-applications-to-prompt-for-elevation-without-using-the-secure-desktop

Yes, you've already pointed that out on a previous occasion, but beside the argument that not every Microsoft suggestion or rule-of-thumb need be adhered to religiously, an argument can be made that PowerToys is in some ways "assistive".  Isn't the higher purpose to avoid having to run things elevated?
JB

authors: JBensimon99 Jay-o-Way crutkas davidegiacometti htcfreek


text:
General->Run as Administrator not available if not a admin user.

Windows 10 without admin privileges.
Windows build number: 10.0.18363.657
PowerToys version: Power Toys 0.16.1
PowerToy module for which you are reporting the bug (if applicable): Fancy Zones

Did not find anything regarding this issue.
On my Maschine I run as a user which does not have admin privileges, but I can start programs as an user which has admin rights. Power Toys notifies me that applicatons run under admin rights and lets me open the wiki page. (Visual Studio)
But under General-> I don't have a setting to restart as admin, I guess since my user has no admin rights. Is it possible to tell Power toys to run as an different user?
Or at least Grey out the setting with a description why.
Greetings.

Launch PT just like you would Visual Studio in that case.  Reason why is we can't easily restart it as admin in this case as we don't know who that user is.
Some doc text would be helpful here.

I encountered the same issue as @MichaelPeter but when I launch PT as a user with admin rights, I can't get into settings via the system tray at all (right click icon > Settings) and if I double-click the system tray icon, a blank PT window appears.

@enricogior keep me honest here as i believe we chatted about this.  I believe the issue is programmatically we can't launch as a different user.  We can only launch elevated as same user.

@crutkas that is correct, Run as administrator is misleading, since in reality we are running elevated, it works only if the user is a member of the administrators group.

Think this has been solved a long, long, time ago, am I right?

Great question to test, i would have to spin up a VM to validate

Great question to test, i would have to spin up a VM to validate

Let us know what you find :)

@MichaelPeter Is this still an issue?

authors: Jay-o-Way MichaelPeter adamabbate-q crutkas enricogior


text:
PowerRename presets

Description of the new feature / enhancement
I tend to use powerrename in a few ways repetitively, it would be helpful to have presets for both the search and replace with.
If those were saved under the current options on the left, I'd love to be able to click to bring those up already. I could do this with some bat stuff but this would be more helpful visually to see it's correct, and all in one screen.
Going further, then being able to add some presets to the context menu would be amazing.
Love the tools :)
Scenario when this would be used?
Renaming certain files for one task, and others in another
Supporting information
No response

/dup https://github.com/microsoft/PowerToys/issues/25520

authors: cinnamon-msft outdoorsdev


text:
MWB - Failed to read settings: The process cannot access the file 'FILE.json' because it is being used by another process errors in Event Viewer

Microsoft PowerToys version
0.82.0
Installation method
PowerToys auto-update
Running as admin
Yes
Area(s) with issue?
Mouse Without Borders
Steps to reproduce
For MWB, I am seeing an average of 150 Errors a day in the event event viewer.
The errors are always the same:
Failed to read settings: The process cannot access the file 'C:\Users\USER\AppData\Local\Microsoft\PowerToys\MouseWithoutBorders\settings.json' because it is being used by another process.
Note: I do see 2 process named Powertoys.MouseWithoutBNorders running simultaneously in Task Manager.
As far as I know, It's not affecting the usability of Mouse Without Borders. But I've been getting some system crashes from time to time. Not sure if it's related. That's why I went into my event viewer to look for a anything. The amount of MWB Errors stood out.
✔ Expected Behavior
Not having 150 errors a day in event viewer
❌ Actual Behavior
Having 2500 Errors in 17 days since I installed PowerToys
Other Software
No response

/bugreport

Here you go!
PowerToysReport_2024-07-12-18-27-25.zip

Still present in version 0.83

This error occurs seemingly at the same time as switching between machines, and will block input to both machines.
I have a near endless supply of this occurring several times per day on Windows 10, and Windows 11.
Failed to read settings: The process cannot access the file 'C:\Users\USER\AppData\Local\Microsoft\PowerToys\MouseWithoutBorders\settings.json' because it is being used by another process.
Every 30 minutes on average.

authors: JIHarrison LuckyPadddy htcfreek


text:
Translation into french

Hello,
I would like to translate Microsoft PowerToys into french, I have already the fille Resources.resw to translate, can I have authorization ?
Thank you very much, have a good day :)

being tracked by #199

text is changing too often right now for us and we need to do another pass to be sure all our strings are actually in resx/rc files.  This work will happen soon

authors: Osaxely crutkas


text:
Improved assertion for PrepareUniformSuperposition

This is a proposal to fix #221. It adds an assertion that the input state is in state |0...0>. The assertion will also get triggered when calling the Adjoint variant on a state that is not in a uniform superposition. Ideally, we would check whether the state is eventually in a uniform superposition, but this may add too much overhead.

I think this makes a lot of sense, though I'd also suggest adding an explicit note to the API documentation comment, since its not obvious a priori that the operation is adjointable only as a partial isometry and not as a unitary.

authors: cgranade msoeken

repo: microsoft/QuantumLibraries


text:
In file "Reference-Guide-For-Quantum-Computing-A-Microsoft-Garage-Project/3-Quantum_Hardware_Systems/1-Natural_Qubits.ipynb"

Thank you all for this project.
Just FYI:
In file "Reference-Guide-For-Quantum-Computing-A-Microsoft-Garage-Project/3-Quantum_Hardware_Systems/1-Natural_Qubits.ipynb"
First paragraph of "3.1 Natural Qubits":

In Stern-Gerlach experiment they fired "Silver atoms" but not hydrogen atoms.
They fired silver atoms "through an inhomogeneous magnetic field" but not uniform magnetic field.

Thank you,
Best Regards.

--


text:
Set the blob name in sas uri

When the sas uri is created for the container the blob name is not specified. By setting the blob name, the sas uri can still be used to copy the blob.
#patch
resolves #116

Tested by creating a SAS url from the Azure portal for the container and importing it in the devTools.

Why do we assume the SAS URL is created for the container, and not the blob? I would assume that we should just create a SAS URL directly for the blob?

There is a Geneva Action creating a SAS token for an environment, and the generated token points at the container and not the blob. But if you enter a sas for the blob it would still work.

There is a Geneva Action creating a SAS token for an environment, and the generated token points at the container and not the blob. But if you enter a sas for the blob it would still work.

Ah, so that's how customers/devs will get the workload instances for now, we pass a read-only SAS URL for the contanier wherein the current.json lives of the Hub environment?

authors: AndreasHassing Antonstockmarr

repo: microsoft/SCMScaleUnitDevTools


text:
Default typeRoots is prone to conflicts when combined with npm package hoisting

TypeScript Version:  3.4.5

Search Terms: typeroots npm hoisting
Code
$ npm install typescript@3.4.5 fork-ts-checker-webpack-plugin@1.3.1
$ echo "const x: number = setTimeout(() => {}, 1000);" > index.ts
$ ./node_modules/.bin/tsc --noEmit ./index.ts
index.ts:1:7 - error TS2322: Type 'Timeout' is not assignable to type 'number'.

1 const x: number = setTimeout(() => {}, 1000);
        ~

Found 1 error.

Expected behavior:
No error.
Actual behavior:
An error is raised because TypeScript finds and uses the alternative setTimeout definition from node_modules/@types/node, which is hoisted to the root node_modules folder due to the transitive dependency:
├─┬ fork-ts-checker-webpack-plugin@1.3.1
│ ├─┬ @types/webpack@4.4.31
│ │ ├── @types/node@12.0.0

Version 1.3.2 of fork-ts-checker-webpack-plugin no longer includes this dependency, so the error is gone:
$ npm install fork-ts-checker-webpack-plugin@1.3.2
$ ./node_modules/.bin/tsc --noEmit ./index.ts  # should exit 0

However, the problem with moving @types packages to devDependencies is that the users of a package like fork-ts-checker-webpack-plugin now need to depend on these @types packages in the consuming project, and keep them up-to-date, which is  counter to the recommendation here: https://www.typescriptlang.org/docs/handbook/declaration-files/publishing.html#dependencies

All dependencies are managed by npm. Make sure all the declaration packages you depend on are marked appropriately in the "dependencies" section in your package.json.

Users can work around this issue by setting a custom "typeRoots" value, but I don't think this is ideal because this typeRoots config needs to be kept up-to-date, and there is a higher burden on library maintainers to tell users to configure typeRoots.

Looks like a duplicate of #18588

authors: RyanCavanaugh elliottsj

repo: microsoft/TypeScript


text:
Destructuring of optional fn + default function value gets signature from the value

TypeScript Version:  3.7.2 & 3.8.0-dev.20191128
Search Terms:
destructuring default value function
Code
interface ReturnVal {
    something(a: string): string // has one param
}

function getFn(): ReturnVal {
    return {
        something(a) { return a }
    }
}

interface PartialOptions {
    something?(a: string, b?: string): string // has two params
}

function run(options: PartialOptions) {
    const { something = getFn().something } = options;

    const something2 = options.something ?? getFn().something;

    return {
        method() {
            something('', '') // this should not error
            something2('', '') // also wrong?

            // and now the twist: hovering "something" and something2 (above) shows *correct* signatures. :)
        }
    }
}

Expected behavior:
Pick up the function signature of PartialOptions when checking the call.
Actual behavior:
Hover shows correct signature. Type check breaks saying single parameter is expected.
Playground Link:
http://www.typescriptlang.org/play/?ssl=1&ssc=1&pln=29&pc=1#code/JYOwLgpgTgZghgYwgAgEoTAVyiAanAG2QG8AoZC5AZwHsBbDAC1AHMAKOALmrClYEpuVXq2QB6MckZwqyGiBQAHOFDh1SAX1KkYmEAjDB5yFhgBiINoLQZseQiXKUotnI8ofq9Jqw78SyC5YbnDIWh5aWqSgkLCIKAAKKoaEAPKKhvKyZB60DGDMICwA-BxCIkUANMgARsXlfEXWwo0s4pLSsmAA7jTIyqp0VJrauvqZIIF6bDQZRiBU3ElQKQTpE1T+OZQIWWABeT5FyAC8JuaW-AB0hwWiGqdyc1kA3Noeuwv7t4UsAEyPWYbG7eO7HYrFc5gCxWEH5X5vJwUIJ2dyeCjwmgAEysaPRuVBvzYAHJidVSf4JMg7rIqIwaJgCFjkCAaPtoFAaFAkfiKD9WH8SWTkBT2shCLRkN1OUViu9eZQqXAQMzWd1qYwUD1gMJuPSAG7QUQAIn5RWN4pVXnhAuQHBqNEN-jpNG6sgAVLsoC4DO7qMAWCA4MEIFQrshOPweREeZFSEA
Related Issues:
found many issues about destructuring, but couldn't identify an issue about default values for functions. some are about generics behaviour, etc.

This is certainly the most interesting bug of the day. A reduced form:
interface ReturnVal {
    something(): void;
    // Workaround line:
    // something: () => void;
}

// Comment this out to remove the error
const k: ReturnVal = { something() { } }

declare const val: ReturnVal;
function run(options: { something?(b?: string): void }) {
    const something = options.something ?? val.something;
    something('');
}

Our hypothesis is that we're not using the method bivariance as part of the cache key for relationships and we end up over-reducing the something initializer to the zero-argument form.

Fun one. Issue one is that types () => void and (x?: string) => void are both subtypes of each other. Issue two is that we sort union type constituents by their type ID before we perform subtype reduction. Type IDs depend on the order in which type relation checks are performed (or not performed), which is why commenting out the seemingly unrelated const declaration causes downstream effects.
Possible remedies include making the subtype relationship more selective or better preserving the order of constituent types for operations like || and && before performing subtype reduction.

authors: AviVahl RyanCavanaugh ahejlsberg


text:
document.baseURI type is string instead of string | null (lib.dom.d.ts)

TypeScript Version:  3.9.3 (lib.dom.d.ts)
Expected behavior: document.baseURI is of type string | null
Actual behavior: document.baseURI is of type string
Additional info from MDN:  A DOMString representing the base URL of the specified Node. It may be null if unable to obtain an absolute URI. Although this property is read-only, its value may change in certain situations (see below).

I don't think this is worth the upgrade pain. The property appears to be defined in the vast majority of situations and would be a pretty annoying breaking change.

authors: RyanCavanaugh vladeck


text:
Not closing div tag when nested in li and another div

TS Template added by @mjbvz
TypeScript Version: 4.4.2
Search Terms

jsx
react

Issue Type: Bug
The issue is the auto closing tags for HTML/JSX.
When nesting a div inside of another div nested in a li, the second div closing tag will not auto complete
eg. A React component (a .js file) that has the following code.
const Component = props => {
    return (

**** this is where the closing tag will not auto complete, all other auto closing tags work fine.

    )};

This is reproducable. Doesn't seem to happen when not in a li tag
VS Code version: Code 1.60.0 (e7d7e9a9348e6a8cc8c03f877d39cb72e5dfb1ff, 2021-09-01T10:41:52.311Z)
OS version: Windows_NT x64 10.0.19043
Restricted Mode: No

System Info

Item
Value

CPUs
AMD Ryzen 9 5900X 12-Core Processor             (24 x 3693)

GPU Status
2d_canvas: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onoop_rasterization: enabledopengl: enabled_onrasterization: enabledskia_renderer: enabled_onvideo_decode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabled

Load (avg)
undefined

Memory (System)
31.92GB (24.79GB free)

Process Argv
C:\Users\Kyle Crawford\Documents\GitHub\ReactProjects\Practice Food Order - Solution --crash-reporter-id 15208107-a4b6-4d32-b4b3-dde3609acf4d

Screen Reader
no

VM
0%

Extensions: none
A/B Experiments
vsliv368:30146709
vsreu685:30147344
python383:30185418
pythonvspyt602:30300191
vspor879:30202332
vspor708:30202333
vspor363:30204092
pythonvspyt639:30300192
pythontb:30283811
pythonptprofiler:30281270
vshan820:30294714
vstes263:30335439
pythondataviewer:30285071
pythonvsuse255:30340121
vscod805:30301674
pythonvspyt200:30340761
vscextlangct:30333562
binariesv615:30325510
pythonvssor306:30344512
bridge0708:30335490
pygetstartedc2:30360494
bridge0723:30353136
pythonf5test824cf:30361778
javagetstartedc:30351792
vsdyn321cf:30356811
pythonvspyt187:30362782
pydsgsc2:30361791
vscus224:30358039
vssid140:30362080

Possibly duplicate of #28541

I can’t reproduce this. Works for me in both TS and JS with the latest TS version and a random sampling of older TS versions.

@KyleCrawford any additional info you can provide on how to reproduce?

@andrewbranch I guess it's for case when you type > for opening tag, not for trigger suggestions manually
you type
 editor adds

you type
 editor adds
 for you
But when you try to add another nested div - type
  editor no longer adds
. If instead of <divyou type<spanand> - editor will add`
Looks like TS sees that there is closing
 even if it's not intended for newly typed tag - it won't add closing tag automatically.

Oh, I’ve had auto closing tags disabled forever, so I had no idea what was expected here. Thanks @IllusionMH.

I haven't dig into the actual code yet, but I ran git-bisect and found a commit causing this regression, so I'll report it here. I hope it will be helpful.
First of all, this bug can be reproduced with a fourslash test like this:

tests/cases/fourslash/autoCloseTagCrash.ts

/// <reference path='fourslash.ts' />

// @Filename: /0.tsx
////const x =

////

////
/*0*/
////

////

verify.jsxClosingTag({
    0: { newText: "
" },
});

If you run this test, you'll see a similar stacktrace as this telemetry https://github.com/microsoft/TypeScript/issues/45636
  1) fourslash tests
       tests/cases/fourslash/autoCloseTagCrash.ts
         fourslash test autoCloseTagCrash.ts runs correctly:
     Error: Debug Failure. Did not expect JsxElement to have an Identifier in its trivia
      at addSyntheticNodes (src/services/services.ts:177:27)
      at processNode (src/services/services.ts:149:13)
      at visitNode (src/compiler/parser.ts:39:24)
      at Object.forEachChild (src/compiler/parser.ts:449:21)
      at NodeObject.forEachChild (src/services/services.ts:129:20)
      at createChildren (src/services/services.ts:164:14)
      at NodeObject.getChildren (src/services/services.ts:100:56)
      at find (src/services/utilities.ts:1210:32)
      at find (src/services/utilities.ts:1246:32)
      at find (src/services/utilities.ts:1246:32)
      at find (src/services/utilities.ts:1246:32)
      at find (src/services/utilities.ts:1246:32)
      at find (src/services/utilities.ts:1246:32)
      at find (src/services/utilities.ts:1246:32)
      at Object.findPrecedingToken (src/services/utilities.ts:1201:24)
      at Object.getJsxClosingTagAtPosition (src/services/services.ts:2080:27)
      at Function.proxy.<computed> [as getJsxClosingTagAtPosition] (src/harness/fourslashImpl.ts:397:66)
      at TestState.verifyJsxClosingTag (src/harness/fourslashImpl.ts:3179:53)
      at VerifyNegatable.jsxClosingTag (src/harness/fourslashInterfaceImpl.ts:179:24)
      at eval (autoCloseTagCrash.js:8:8)
      at runCode (src/harness/fourslashImpl.ts:4074:13)
      at runFourSlashTestContent (src/harness/fourslashImpl.ts:4033:9)
      at Object.runFourSlashTest (src/harness/fourslashImpl.ts:4017:9)
      at Context.<anonymous> (src/testRunner/fourslashRunner.ts:57:43)
      at processImmediate (node:internal/timers:464:21)

Then, I made a simple bash script for git-bisect like this:

test.sh

#!/bin/bash

npm i && git restore package-lock.json && npx gulp runtests --no-lint -r spec -t "autoCloseTagCrash" || exit 1

And ran git-bisect:
git bisect start main v4.3.5 --
git bisect run bash test.sh

and found this commit https://github.com/microsoft/TypeScript/commit/89a737c871fca68bd53c2a0aa387acd591153006 and its corresponding PR https://github.com/microsoft/TypeScript/pull/43780.
I will spend sometime to understand the PR, but it looks a bit complicated, so probably I won't be able to provide a fix for it.

Excellent detective work, @hi-ogawa 🕵

authors: IllusionMH KyleCrawford andrewbranch hi-ogawa mjbvz


text:
Inference rejects unbound type variable for function parameter

Bug Report
🔎 Search Terms
I done none, the issue is not very searchable
🕗 Version & Regression Information
Tested with 4.6.3 and 4.5.2.
⏯ Playground Link
Playground link with relevant code
💻 Code
I apologize if the issue is known,  I am reporting it because it could indicate a bug in the type inference computation.
// Given universally quantified, unbounded <T>
const hole = <T>(): T => {
    throw new Error("hole");
}

const apply = <T, R> (fn: (_1: T) => R) => (t:T): R => fn(t)

//I use  universally quantified <T> as a function type.
//
// But this does not compile
//
// Argument of type '(_: never) => never' is not assignable to parameter of type '(_: unknown) => unknown'.
//   Types of parameters '_1' and '_1' are incompatible.
//     Type 'unknown' is not assignable to type 'never'. ts(2345)
apply(hole())

Note:
//This compiles just fine, and would be a good choice for the inferred type for 'fn'
apply(hole<(_: never) => unknown>())

//this compiles with a questionable computed type for 'apply'
//const apply: <unknown, unknown>(fn: (_1: unknown) => unknown) => (t: unknown) => unknown
apply({} as any)

🙁 Actual behavior
Code does not compile.
It appears that the inference algorithm is using variance incorrectly widening instead of narrowing types in the negative position (function params).
🙂 Expected behavior
Code compiles.

It looks like you're expecting a unification algorithm of some kind, but that isn't how inference proceeds. When relating generic signatures like this, we use the directional flow of data to inform where candidates can come from, and there's no way for hole to know what kind of type it's supposed to produce, so it ends up at never, which is correct in its own right because the only legal implementation you can have of hole is the one you have - to throw (or deadlock).

authors: RyanCavanaugh rpeszek