text:
[QUERY] Function Drain mode not working using ServiceBusTrigger with Microsoft.Azure.WebJobs.Extensions.ServiceBus 5.7.0

Library name and version
Microsoft.Azure.WebJobs.Extensions.ServiceBus 5.7.0
Query/Question
We are running a ServiceBusTrigger function on an Azure Functions Elastic Premium plan. Until this week we used Microsoft.Azure.WebJobs.Extensions.ServiceBus 4.2.1. This week we updated to 5.7.0.
With this change we see that the drain mode/graceful shutdown of the function stopped working as before. With version 4.2.1 we almost saw no deliveryCounts > 1 (roughly one in 3000). Since the move to 5.7.0 we are seeing a 10-fold increase in occurrences of deliveryCounts > 1. In our case deliveryCounts > 1 are typically only caused by function executions being aborted as result of scale-in.
Did something change in the handling of drain mode between versions 4.2.1 and 5.7.0?
Environment
Azure Premium Elastic function on Net 6, functions v4, non-isolated

Thank you for your feedback.  Tagging and routing to the team member best able to assist.

Can you please share more details of your app such as whether you are using any Startup/shutdown code? The drain feature should work the same in 5.x.

We only run the single ServiceBusTrigger function on the function plan
The function is a single-threaded CPU-intensive process that take at most 20 minutes.
We set the servicebus.messageHandlerOptions.maxConcurrentCalls to be equal to the number of cores the plan has available per instance (EP3, so 4 in this case).
We are currently not using any specific startup or shutdown code. We know the process can always finish within the maximum drain mode window, so we do not abort/cancel the process but let it finish.

This worked perfectly using version 4.2.1 of the package. Despite peaky load characteristics (and a resulting high variability in active instances, almost no processes were aborted at all.

Can you share your function code?

Unfortunately, I cannot. The code contains proprietary algorithms. I will try to create a simple repro project, but that will take some time.
Would it matter that we run a C++ executable inside the function?
For now, I reverted the package upgrade back to 4.2.1. The deliveryCount immediately recovered (see deliverycount ApplicationInsights chart below, red dot is the deployment moment).

I suspect there may be something else going on resulting in the increase in delivery counts. The handling in the 5.x version is essentially the same as 4.x when it comes to scale in. One thing to check would be whether you are binding to the cancellation token in your function. This token would be canceled when scaling in.

authors: Jomatam JoshLove-msft jsquire


text:
Consider exposing Connection ctors

@nemakam mentioned that this was necessary for Transactions.
https://github.com/Azure/azure-sdk-for-net/pull/9842#discussion_r377259005

We are exposing these now.

source: gharchive/issue

repo: Azure/azure-sdk-for-net

license: MIT

license_type: permissive

license_source: github-api


text:
Tables: Query support for dictionary entities and CreateFilter

Summary
The focus of these changes are to provide support for parsing expression filters for Dictionary<string, object> entity types.
In addition we now expose the filter string that is created via the expression parser. This gives developers the choice to create a filter string for inspection, editing, or re-use across query calls.

This PR might be a good time to start adding those unit-test style tests for expression generation.

This PR might be a good time to start adding those unit-test style tests for expression generation.

In that we have decent recorded coverage, I'd prefer to defer that to a future PR. I've got an issue to track it in the backlog.

source: gharchive/pull-request

authors: christothes pakrym


text:
Add Activity Window operations

Add methods to retrieve activity windows with filters based on
the entity types (i.e. data factories, datasets, pipelines,
actvities).

@akhadem Version update?

Well I dont own our release process and Brian. Can we keep what he proposes and discuss it further along the way for future cases?

authors: akhadem markcowl


text:
[Storage] Fix unresolved conflicts in autorest.md

Contributing to the Azure SDK
Please see our CONTRIBUTING.md if you are not familiar with contributing to this repository or have questions.
For specific information about pull request etiquette and best practices, see this section.

/azp run net - storage - tests

authors: FDUdannychen amnguye


text:
[Azure.Communication.JobRouter] Fix several bugs

Fixes https://skype.visualstudio.com/SPOOL/_workitems/edit/2950692
Fixes https://skype.visualstudio.com/SPOOL/_workitems/edit/2951190
Fixes bug with several models using TimeSpan trimming off time longer than 60 seconds due to taking the Seconds property rather than TotalSeconds
Contributing to the Azure SDK
Please see our CONTRIBUTING.md if you are not familiar with contributing to this repository or have questions.
For specific information about pull request etiquette and best practices, see this section.

API change check
APIView has identified API level changes in this PR and created following API reviews.
Azure.Communication.JobRouter


text:
Regenerate Text Analytics SDK on latest swaggers

Resolves #30759

API change check
APIView has identified API level changes in this PR and created following API reviews.
Azure.AI.TextAnalytics

authors: azure-sdk heaths


text:
[ACR] Type renames from Arch Board review

Currently a proposal for discussion by the feature crew.
Fixes https://github.com/Azure/azure-sdk-for-net/issues/34958

API change check
APIView has identified API level changes in this PR and created following API reviews.
Azure.Containers.ContainerRegistry

authors: annelo-msft azure-sdk


text:
Update autorest version to prerelease 3.0.0-alpha.20240703.2

Generated by Autorest Regen Preview build 20240703.2Triggered from pull request: https://github.com/Azure/autorest.csharp/pull/4891

API change check
API changes are not detected in this pull request.


text:
Add .editorconfig

Fixes: https://github.com/Azure/azure-sdk-for-net/issues/5515
I took C# part of corefx and only added dotnet_style_require_accessibility_modifiers.
I think the most contentious part here is the var usage only use var when it's obvious what the variable type is everything else it pretty much what we do anyway.
These settings are supported by VS (it would show a suggestion and a fix for most of these rules) and some are supported by dotnet format (https://github.com/dotnet/format) that can run from command line.
I don't expect we are going to reformat existing code but do expect this style to be applied to all new/changed code and enforce it in code reviews.

Another thing to consider is that we shouldn't diverge too far from other opensource repos (dotnet/aspnet) to avoid forcing external contributor to learn many code styles.

@pakrym thanks for starting the conversation about this! As you can see, there are multiple valid points being raised :).
In addition to what has already been discussed here, we need to make sure that the other code owners in this repo, who are not on our team, are ok with enabling any of these rules for their code.
Is there a way to scope these changes to just a set of directories?

Is there a way to scope these changes to just a set of directories?

Yes, we can put a copy of our .editorconfig into subdirectories we own. It would require a bit more effort to keep track of all files when making changes but I don't think it would happen too often.

But that would require that each new library we add will have to have this file added into it.
I think we should start with a set of guidelines for coding (similar to those coming from the CoreFx team) and hold off from automatically enforcing this for now.

But that would require that each new library we add will have to have this file added into it.

I would argue that adding a file is easier than manually enforcing the style guide but I'm open to any solution that results in agreed on coding style.

Once the desired developer experience is defined, the engineering system team can help implement it.  Specifically:

We already have a tool to detect missing or insufficient Readme.md files in each package.  I suspect the tool could be easily extended to also cover .editorconfig.
We could create a tool to manage all the .editorconfig files (i.e. run a single command to update all files).

I had a chat with @KrzysztofCwalina about this. We decided to use whatever CoreFx uses.
As for the location of the file -- let's put it in the folders that represent Track 2 client libraries. We can figure out how we are going to manage that similar to what @mikeharder was saying.

I've annotated values with vs defaults that I was able to find. I've also copied .editorconfig into Azure.Base and Azure.ApplicationModel.Configuration

Filed https://github.com/Azure/azure-sdk-for-net/issues/5694

authors: AlexGhiondea mikeharder pakrym


text:
[Event Hubs Client] Track Two: Third Preview (Documentation and Changelog)

Summary
The intent of these changes is to update documentation for the preview 3 release.
Last Upstream Rebase
Friday, September 6, 2019 4:33pm (EDT)
Related and Follow-Up Issues

[Epic] Release Event Hubs Track 2 Library Preview 3 for .Net (#7141)
Review and update documentation (#7183)

//cc: @chrisjbarr


text:
signalr - regenerate_key crashes

Calling:
result = self.mgmt_client.signal_r.regenerate_key(resource_group_name=RESOURCE_GROUP, resource_name=RESOURCE_NAME, key_type="Primary")
causes following crash:
self = <msrestazure.polling.arm_polling.ARMPolling object at 0x7fab298e7b00>, client = <msrest.service_client.ServiceClient object at 0x7fab2a015ac8>, initial_response = <Response [201]>
deserialization_callback = <function SignalROperations.regenerate_key..get_long_running_output at 0x7fab298d5d08>
def initialize(self, client, initial_response, deserialization_callback):
    """Set the initial status of this LRO.

    :param initial_response: The initial response of the poller
    :raises: CloudError if initial status is incorrect LRO state
    """
    self._client = client
    self._response = initial_response
    self._operation = LongRunningOperation(initial_response, deserialization_callback, self._lro_options)
    try:
        self._operation.set_initial_status(initial_response)
    except BadStatus:
        self._operation.status = 'Failed'

      raise CloudError(initial_response)

E           msrestazure.azure_exceptions.CloudError: <Response [201]>
/env/lib/python3.6/site-packages/msrestazure/polling/arm_polling.py:381: CloudError
-------------------------------------------------------------------------------------------- Captured log call ---------------------------------------------------------------------------------------------
connectionpool.py          662 WARNING  Retrying (Retry(total=3, connect=4, read=3, redirect=None, status=None)) after connection broken by 'ProtocolError('Connection aborted.', RemoteDisconnected('Remote end closed connection without response',))': /subscriptions/.../resourcegroups/test_cli_mgmt_signalr_test_signalrf5150df8?api-version=2019-08-01

Added mgmt label.

from the error description, it should be a service issue. And we don't meet customer complain for it.

authors: allenjzhang changlong-liu zikalino

repo: Azure/azure-sdk-for-python


text:
Unable to Pickle ServiceBus Message Object

Package Name: azure-servicebus
Package Version: 7.0.0.0b4
Operating System: Red Hat 4.8.5-39
Python Version: 3.6.8

Describe the bug
When attempting to pickle.dump() an array of Message objects a TypeError is raised.
To Reproduce
Steps to reproduce the behavior:

Attempt to pickle a Message object

Expected behavior
The object is pickled correctly
Screenshots
import pickle
from azure.servicebus import Message

msgs = [Message(body={"test"})]
pickle.dump(msgs, open("./dump", "wb")

File "stringsource", line 2, in uamqp.c_uamqp.StringValue.__reduce_cython__
TypeError: no default __reduce__ due to non-trivial __cinit__

Closing as duplicate of https://github.com/Azure/azure-sdk-for-python/issues/12901

authors: dgokeeffe lmazuel


text:
[Storage] Adopt a response hook param for headers

Currently we're returning the response headers directly in some cases and not in others.
We should change the behaviour to never return the response headers - rather have each function take an optional callable that can accept the headers.
This is the approach used by cosmos.

Hi @annatisch, I will close this issue since we GA'd and this is no longer possible :/

authors: annatisch tasherif-msft


text:
[AutoPR automation/resource-manager] Remove 4xx responses and change schema to file

Created to sync https://github.com/Azure/azure-rest-api-specs/pull/3363

(message created by the CI based on PR content)

This PR has been merged into https://github.com/Azure/azure-sdk-for-python/pull/1959


text:
[AutoRelease] t2-appconfiguration-2023-02-15-06407(can only be merged by SDK owner)

https://github.com/Azure/sdk-release-request/issues/3800
Live test success
https://dev.azure.com/azure-sdk/internal/_build?definitionId=967
BuildTargetingString
azure-mgmt-appconfiguration
Skip.CreateApiReview
true

issue link:https://github.com/Azure/sdk-release-request/issues/3800


text:
[SB] Catch websocket exception

Fixes #34300

API change check
API changes are not detected in this pull request.

/azp run python - servicebus - tests

/azp run python - eventhub - tests

/azp run python - servicebus - tests

/check-enforcer overrride

/check-enforcer override


text:
[AutoPR containerservice/resource-manager] Container Services: Add API version 2019-04-30 for Azure RedHat OpenShift

Created to sync https://github.com/Azure/azure-rest-api-specs/pull/5557

(message created by the CI based on PR content)

Codecov Report

Merging #4820 into restapi_auto_containerservice/resource-manager will decrease coverage by <.01%.
The diff coverage is 0%.

@@                                Coverage Diff                                 @@
##           restapi_auto_containerservice/resource-manager    #4820      +/-   ##
==================================================================================
- Coverage                                           49.81%   49.81%   -0.01%
==================================================================================
  Files                                                6223     6223
  Lines                                              174504   174509       +5
==================================================================================
  Hits                                                86924    86924
- Misses                                              87580    87585       +5

Impacted Files
Coverage Δ

.../mgmt/containerservice/container_service_client.py
50.52% <0%> (-2.81%)
:arrow_down:

Continue to review full report at Codecov.

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

This PR has been merged into https://github.com/Azure/azure-sdk-for-python/pull/4824

authors: AutorestCI codecov-io


text:
update Keys,Secrets README.md based on Preview 4

Purpose : update Keys,Secrets README.md based on Preview 4
Total changes : 2 changes (Keys 1, Secrets 1).
1. Key don't have Attribute："version"，"updated"，"tags"
Key class   don't  have attribute of  "version"，"updated"，"tags", but KeyProperties class have
Original

Proposal

2. SecretProperties don't have Attribute："deleted_date"
SecretProperties class don't  have  "deleted_date"  attribute , but DeletedSecret class have
Original

Proposal

Can one of the admins verify this patch?


text:
Resolve EventHub Parallel Hangs

At first glance, this seems like it was caused by tox parallel invocation. However, after a bunch of debugging, I'm thinking that the tests present in livetests/test_eventprocessor_async.py are flaky (even in unit test mode).
During local debugging, on parallel invocation test execution is consistently hanging there (when it hangs of course). Currently, this hang is repro-ing even on individual re-runs.
@YijunXieMS please check the changes to livetests/test_eventprocessor_async.py. I've gotten through 3 or so runs successfully in a row after these changes. I also have the changes to disable parallelization ready to go. One of these test runs will run in serial mode to verify. Discuss Monday morning!
Even after my changes, still occurring. I think I'm on the right track with those, but am missing something specific. I have had this repro locally on my box as well, so it's not a CI only thing.
EDIT: worst case we can just use this one :)

@mitchdenny when you get a couple minutes, can you take a quick look at this PR for me?
Specifically, related to the parameter ToxEnvParallel that I'm attempting to pass all the way in from ci.yml (with fallback of course)
Example of what I mean in practice on line 9.
It's still passing the flag --tenvparallel when I expect it to pass the simple -- that I have defined in the eventhub ci.yml.

/check-enforcer reset

/check-enforcer success

/check-enforcer reset

authors: mitchdenny scbedd


text:
Implement recorded macro for recorded tests

Rename typespec_derive to typespec_macros
Will be more consistent with upcoming azure_core_macros, and may not contain just derive macros anyway. Will keep feature as "derive", though, for derive macros.

Remove 128-bit number functions for Cosmos

Implement #[recorded] attribute macro

Allow live-only tests with no parameters

Replace test_e2e feature with recorded attribute macro

I also had to bump the MSRV to 1.80 to use the stable LazyLock so we're not having to read the AZURE_TEST_MODE env var (or lack there of) and parsing the string for each method. We wouldn't have to do that, but 1.80 is also currently behind the latest by 2 versions (1.82).

I also had to bump the MSRV to 1.80 to use the stable LazyLock so we're not having to read the AZURE_TEST_MODE env var (or lack there of) and parsing the string for each method.

I'm fine with bumping our MSRV, though I'll be honest I'm not sure it's necessary to cache the test mode value like this. It should work just fine though, and I like getting new Rust versions 😁

I honestly do like the look of #[recorded::test] much better but #[recorded_test] would be fine, too.

Worth noting that this aligns with the existing community pattern for async tests: #[tokio::test]. That attribute isn't named tokio_test, it's just named test and in the tokio module. Seems reasonable to me to have own own #[recorded::test] in that case, particularly since it's a replacement for #[test] or #[tokio::test]. I do think the pattern should be to never import the macro directly.

100% agreed. And I suspect that if you attempted to import the recorded module it would get upset between the default declared test and the test from the recorded module (but I obviously haven't tested that).

authors: LarryOsterman analogrelay heaths

repo: Azure/azure-sdk-for-rust


text:
Add perf pipeline convention to pipeline generator

Right now it's not entirely clear how to spin up new perf pipelines aside from duplicating existing pipelines and changing the yaml reference. I don't think it would be too much work to codify the pipeline conventions into the pipeline generator tool and enable the prepare-pipelines command.
CC @mikeharder @JoshLove-msft

There's a lot of excitement around perf on the team over the next few months, so this would make creating a perf pipeline much more self-serve for those jumping in, and also ensure that all the perf pipelines conform to the same structure/standard.  Understandably, there is a worry about people creating pipelines and then ignoring them after they're created.  We should cross that bridge when we get to it.  I think supporting perf pipelines in pipeline generator is a good investment for easier onboarding for folks to use our perf tools.

authors: benbp kurtzeborn

repo: Azure/azure-sdk-tools


text:
Untar .tar files after decompressing

Hello,
When I use decompress option on a tar.gz file and content-encoding setted to gzip azcopy download file and delete gz extension only  (not uncompress and delete gz - not tar.gz) .
The copy delete the gz extension only and don't uncompress the file.
Any way to download and uncompress a tar.gz file with azcopy ?
Azcopy Version:
azcopy version 10.12.1 on Linux
Command used:
azcopy copy https://blob_url/archive.tar.gz --decompress destination/
Result :
destination/archive.tar

You're right; it decompressed the file, but it did not untar it. I'll mark this a feature request.

Tar extract to destination would be greet!
Support of tar extract from stdin (pipe) would be a killer feature for me.
My use case for backup restore with borg could be :
borg export-tar /path/to/repo::Monday - | azcopy copy --tar-extract "https://[account].blob.core.windows.net/[container]/[path/to/blob]" --from-to PipeBlob

Unfortunately, we are not going to add this functionality.  We are focused on documentation, testing, and quality, and this feature would represent a large increase in scope for the product.

authors: adreed-msft digital2real gvilar seanmcc-msft

repo: Azure/azure-storage-azcopy


text:
Upload file error with azcopy10.3.3

Which version of the AzCopy was used?
AzCopy 10.3.3
Which platform are you using? (ex: Windows, Mac, Linux)
Windows
What command did you run?
azcopy.exe copy "D:" "https://sto.blob.core.windows.net/0000005?token" --recursive=true --block-blob-tier="archive"
What problem was encountered?
panic: runtime error: invalid memory address or nil pointer dereference
At line:1 char:1
[signal 0xc0000005 code=0x0 addr=0x18 pc=0x9b2e52]
goroutine 53 [running]:
github.com/Azure/azure-storage-azcopy/ste.ErrorEx.ErrorCodeAndString
(0x0, 0x0, 0x0, 0xc0873d11e0, 0x188, 0xc0011e7a28, 0x9cb80d)
/home/vsts/work/1/s/ste/ErrorExt.go:25 +0x42
github.com/Azure/azure-storage-azcopy/ste.(*jobPartTransferMgr).failActiveTransfer(0xc0035bd9e0, 0xbb101a, 0xc, 0xbb2b04, 0xf, 0x0, 0x0
0xffffffff)
/home/vsts/work/1/s/ste/mgr-JobPartTransferMgr.go:626 +0x9b
github.com/Azure/azure-storage-azcopy/ste.(*jobPartTransferMgr).FailActiveUpload(...)
/home/vsts/work/1/s/ste/mgr-JobPartTransferMgr.go:559
github.com/Azure/azure-storage-azcopy/ste.(*jobPartTransferMgr).FailActiveSend(
0xc0035bd9e0, 0xbb2b04, 0xf
, 0x0,
0x0)
/home/vsts/work/1/s/ste/mgr-JobPartTransferMgr.go:596
+0xfe
github.com/Azure/azure-storage-azcopy/ste.scheduleSendChunks.func1
()
/home/vsts/work/1/s/ste/xfer-anyToRemote.go:264 +0x63
github.com/Azure/azure-storage-azcopy/ste.createChunkFunc.func1(0x1)
/home/vsts/work/1/s/ste/sender.go:165 +0x1ae
github.com/Azure/azure-storage-azcopy/ste.(*jobsAdmin).chunkProcessor(0xc0002161a0, 0x1)
/home/vsts/work/1/s/ste/JobsAdmin.go:427 +0xe6
created by github.com/Azure/azure-storage-azcopy/ste.(*jobsAdmin).poolSizer
/home/vsts/work/1/s/ste/JobsAdmin.go:356
0x682
How can we reproduce the problem in the simplest way?
re-run the command
Have you found a mitigation/solution?
Not yet

Here's the new error information:
panic: runtime error: invalid memory address or nil pointer dereference
[signal 0xc0000005 code=0x0 addr=0x18 pc=0x9b2e52]
goroutine 135 [running]:
github.com/Azure/azure-storage-azcopy/ste.ErrorEx.ErrorCodeAndString(0x0, 0x0, 0x0, 0xc085d22600, 0x17e, 0xc000a45a28, 0x9cb80d)
/home/vsts/work/1/s/ste/ErrorExt.go:25 +0x42
github.com/Azure/azure-storage-azcopy/ste.(*jobPartTransferMgr).failActiveTransfer(0xc001ac1800, 0xbb101a, 0xc, 0xbb2b04, 0xf, 0x0, 0x0, 0xffffffff)
/home/vsts/work/1/s/ste/mgr-JobPartTransferMgr.go:626 +0x9b
github.com/Azure/azure-storage-azcopy/ste.(*jobPartTransferMgr).FailActiveUpload(...)
/home/vsts/work/1/s/ste/mgr-JobPartTransferMgr.go:559
github.com/Azure/azure-storage-azcopy/ste.(*jobPartTransferMgr).FailActiveSend(0xc001ac1800, 0xbb2b04, 0xf, 0x0, 0x0)
/home/vsts/work/1/s/ste/mgr-JobPartTransferMgr.go:596 +0xfe
github.com/Azure/azure-storage-azcopy/ste.scheduleSendChunks.func1()
/home/vsts/work/1/s/ste/xfer-anyToRemote.go:264 +0x63
github.com/Azure/azure-storage-azcopy/ste.createChunkFunc.func1(0x13)
/home/vsts/work/1/s/ste/sender.go:165 +0x1ae
github.com/Azure/azure-storage-azcopy/ste.(*jobsAdmin).chunkProcessor(0xc00005e000, 0x13)
/home/vsts/work/1/s/ste/JobsAdmin.go:427 +0xe6
created by github.com/Azure/azure-storage-azcopy/ste.(*jobsAdmin).poolSizer
/home/vsts/work/1/s/ste/JobsAdmin.go:356 +0x682

@JohnRusk Thank you!


text:
updating extensions nugets to 10382

Specifically taking the PR to fix a timer bug: https://github.com/Azure/azure-webjobs-sdk-extensions/pull/167

:shipit:

Actually, I'm going to fix something else before committing this. It looks like we had a Core SDK nuget update that went directly to Script, skipping Extensions. Extensions and Script should have the same Core SDK dependencies, so I'll generate a new Extensions nuget and then update this.

Didn't we also want to match storage with what bot is using?

Just saw that mail; I'll get on it.

:ship:

Closing this and re-opening a new one with new updated dependencies.

authors: brettsam davidebbo mathewc

repo: Azure/azure-webjobs-sdk-script


text:
[BugBash][CLI]no error reported if specify un-supported unit count while update

Describe the bug
[Cli]cannot update unit count using cli
To Reproduce

Open Cloud Shell on Azure portal
Create a new Web PubSub: az webpubsub create -g <groupname> -n <name> --sku Standard_S1
Update unit count by az webpubsub update -g <groupname> -n <name> --unit-count 3
The command Succeeded immediately. But if run ``az webpubsub show -g  -n , the result shows its unit count is still 1`.

Exceptions (if any)

The command should report an error saying that 3 is not a valid value for unit count
Further technical details

SDK and its version you use

https://github.com/Azure/azure-cli-extensions/pull/4049

authors: juniwang zackliu

repo: Azure/azure-webpubsub


text:
Get-AzStorageUsage is using wrong API version - Get-AzStorageUsage : The resource type 'locations' could not be found in the namespace 'Microsoft.Storage' for api version '2018-11-01'

Get-AzStorageUsage does not work on Azure Stack Hub because it is using 2018-11-01 API.
The supported api-versions are '2017-10-01,2017-06-01,2016-12-01,2016-05-01,2016-01-01,2015-06-15'.
DEBUG: 11:46:02 AM - GetAzureStorageUsageCommand begin processing with ParameterSet '__AllParameterSets'.
DEBUG: 11:46:02 AM - using account id '500a25f0-6350-4a03-8036-b987d81395c4'...
DEBUG: ============================ HTTP REQUEST ============================

HTTP Method:
GET

Absolute Uri:
https://management.x.x.x.x/subscriptions/x-x-x-x-x/providers/Microsoft.Storage/locations/x/usages?api-version=2018-11-01

x-ms-client-request-id        : b03ba5e8-83f1-4a92-ae05-x
accept-language               : en-US

Body:

DEBUG: ============================ HTTP RESPONSE ============================

Status Code:
NotFound

Headers:
Pragma                        : no-cache
x-ms-failure-cause            : gateway
x-ms-request-id               : 5490307e-d07e-4ffc-9791-x
x-ms-correlation-request-id   : 5490307e-d07e-4ffc-9791-x
x-ms-routing-request-id       : x:20200807T104602Z:5490307e-d07e-4ffc-9791-0efacbf969f4
Strict-Transport-Security     : max-age=31536000; includeSubDomains
X-Content-Type-Options        : nosniff
Cache-Control                 : no-cache
Date                          : Fri, 07 Aug 2020 10:46:02 GMT

Body:
{
  "error": {
    "code": "InvalidResourceType",
    "message": "The resource type 'locations' could not be found in the namespace 'Microsoft.Storage' for api version '2018-11-01'. The supported api-versions are '2017-10-01,2017-06-01,2016-12-01,2016-05-01,2016-01-01,2015-06-15'."
  }
}

Get-AzStorageUsage : The resource type 'locations' could not be found in the namespace 'Microsoft.Storage' for api version '2018-11-01'. The supported api-versions are '2017-10-01,2017-06-01,2016-12-01,2016-05-01,2016-01-01,2015-06-15'.
At line:1 char:1
+ Get-AzStorageUsage -Location "x"
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : CloseError: (:) [Get-AzStorageUsage], CloudException
    + FullyQualifiedErrorId : Microsoft.Azure.Commands.Management.Storage.StorageAccount.GetAzureStorageUsageCommand

DEBUG: AzureQoSEvent: CommandName - Get-AzStorageUsage; IsSuccess - False; Duration - 00:00:00.2250584;; Exception - Microsoft.Rest.Azure.CloudException: The resource type 'locations' could not be found in the namespace 'Microsoft.Storage' for api
version '2018-11-01'. The supported api-versions are '2017-10-01,2017-06-01,2016-12-01,2016-05-01,2016-01-01,2015-06-15'.
   at Microsoft.Azure.Management.Storage.UsagesOperations.<ListByLocationWithHttpMessagesAsync>d__5.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.Azure.Management.Storage.UsagesOperationsExtensions.<ListByLocationAsync>d__1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.Azure.Management.Storage.UsagesOperationsExtensions.ListByLocation(IUsagesOperations operations, String location)
   at Microsoft.Azure.Commands.Management.Storage.StorageAccount.GetAzureStorageUsageCommand.ExecuteCmdlet()
   at Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet.ProcessRecord();
DEBUG: Finish sending metric.
DEBUG: 11:46:03 AM - GetAzureStorageUsageCommand end processing.

PS C:\AzureStackDeployment\modules> Get-Module

ModuleType Version    Name                                ExportedCommands
---------- -------    ----                                ----------------
Script     2.0.1      Az.Accounts                         {Add-AzEnvironment, Clear-AzContext, Clear-AzDefault, Connect-AzAccount...}
Script     0.10.0     Az.Compute                          {Add-AzContainerServiceAgentPoolProfile, Add-AzImageDataDisk, Add-AzVhd, Add-AzVMAdditionalUnattendContent...}
Script     0.10.0     Az.Network                          {Add-AzApplicationGatewayAuthenticationCertificate, Add-AzApplicationGatewayBackendAddressPool, Add-AzApplicationGatewayBackendHttpSetting, Add-AzApplicationGatewayFrontendIPConfig...}
Script     1.2.0      Az.Resources                        {Add-AzADGroupMember, Export-AzResourceGroup, Get-AzADAppCredential, Get-AzADApplication...}
Script     1.1.0      Az.Storage                          {Add-AzRmStorageContainerLegalHold, Add-AzStorageAccountManagementPolicyAction, Add-AzStorageAccountNetworkRule, Disable-AzStorageDeleteRetentionPolicy...}

Damn... this works on 0.10.0 version, which we cannot use because that one does not work with AzTable so we are in a pickle here. Though it is not really an issue with this repo at this point. Closing

repo: Azure/azurestack-powershell


text:
Support new managementGroupResourceId() function

Also created an equivalent issue in the ARM Tools repo:
https://github.com/microsoft/vscode-azurearmtools/issues/1457

Assign this to Ould

repo: Azure/bicep


text:
Update to tests for extensible enums required

At a recent Cadl design meeting, we approved a design to simplify the way extensible enums work. This will require changing the tests in cadl-rach to force DPG emitters to update their behavior:
Here's the underlying Cadl issue:
https://github.com/Azure/cadl-azure/issues/2134

// Old gross behavior that we are currently enforcing
enum ThingKV{
  a;
  b;
}
@knownValues(ThingKV)
model Thing is string {};

// New hotness
enum Thing {
  a;
  b;
}

In the new behavior, all regular Cadl enums should be translated as extensible by emitters. The exception, where an enum is NOT extensible, will be denoted by the @fixed decorator:
@fixed
enum YesNo {
 yes;
 no;
}

SDK will temporary disable tests on https://github.com/Azure/cadl-ranch/blob/main/packages/cadl-ranch-specs/http/extensible-enums/main.cadl#L9-L17 (which now being fixed enum, before this behavior change)

SDK will temporary disable tests on https://github.com/Azure/cadl-ranch/blob/main/packages/cadl-ranch-specs/http/extensible-enums/main.cadl#L9-L17 (which now being fixed enum), before this behavior change.

@weidongxu-microsoft I don't understand this comment. The whole point of making the change to this test is so that emitters will begin failing the revised checks to ensure that all emitters are updated to generate extensible enums correctly.

@tjprescott
I didn't found the @fixed in microsoft/cadl. Just figured out it is in Azure.Core. Sure, will switch the behavior in emitter.

authors: tjprescott weidongxu-microsoft

repo: Azure/cadl-ranch


text:
Edits to notes.md and fixes in openfaas-values.yaml and tekton-el-ingress.yaml

When merging, please use squash merge to combine all of the commits.

Specify that Kubernetes cluster must be at least 3 nodes with over 8GB per node. When using 3 nodes of DS2_v2, I saw that rook wasn't able to start properly sometimes. It worked OK with 3 of DS3_v2.
Other small edits in the nodes.md (e.g., fix sed replacement on zsh, remove invalid character from sudo, specify ~12 min install for linkerd-viz, etc.)
Fix openfaas-values.yaml by including pathType in the ingress config (required on k8s >= 1.18)
Improve tekton-el-ingress.yaml (i.e., tekton webhook at /cd) to make it work with HTTPS, move to apiVersion=networking.k8s.io/v1, and change ingress definition for /cd endpoint so that it continues to work even after the conexp app is deployed with its own ingress on the same host

Thanks @arsenvlad for the updates. We have the same list to be updated. Glad you were able to test them and submit the PR.

repo: Azure/cloud-native-app


text:
Update e2e tests to use local icons

What
Update e2e tests to use local icons instead of those from Fluent's CDN
Why
Prevent flakiness in tests.
This is a stopgap fix to prevent flakiness today. The real fix is stop using icons from Fluent's CDN everywhere (tracked in another bug)
How Tested
See PR for updated snapshots.
Icon styling isn't great (e.g. chevrondown icon is not vertically centered, see onion-skin diff below), but this would be tackled in the actual fix to stop using fluent's font icons

I'm worried that we'll start getting lots of review comments about misaligned icons in the snapshots, or worse learn to ignore these misalignments and let real bugs slip through.

I'm worried that we'll start getting lots of review comments about misaligned icons in the snapshots, or worse learn to ignore these misalignments and let real bugs slip through.

I agree. This basically is a real bug though -- it's not easy for contoso to set icons that are aligned correctly, but having flakiness is blocking having landscape tests so I'd like to check in regardless.
One mitigation would be to only set the people and chevronRight icons as they are the flakiness culprits

I'm worried that we'll start getting lots of review comments about misaligned icons in the snapshots, or worse learn to ignore these misalignments and let real bugs slip through.

I agree. This basically is a real bug though -- it's not easy for contoso to set icons that are aligned correctly, but having flakiness is blocking having landscape tests so I'd like to check in regardless. One mitigation would be to only set the people and chevronRight icons as they are the flakiness culprits. But really we need the proper fix to remove the use of fluent's font icons, discussion here: teams.microsoft.com/l/message/...

LGTM so we can get landscape tests. Let's see what we can do about those misaligned icons.

I am confused.
I thought fluent doesn't contain any icons and all of them needed to be downloaded from a CDN?

I am confused. I thought fluent doesn't contain any icons and all of them needed to be downloaded from a CDN?

We use a package called @fluentui/react-icons for most of our icons, these are local SVGs that are bundled. However, we still have some instances where we use the fluent CDN font icons

authors: JamesBurnside anjulgarg prprabhu-ms

repo: Azure/communication-ui-library


text:
dale test 2

What

Why

How Tested

Process & policy checklist

[ ] I have updated the project documentation to reflect my changes if necessary.
[ ] I have read the CONTRIBUTING documentation.

Is this a breaking change?

[ ] This change causes current functionality to break.

Hi @mycousin,
It looks like you may have accidentally exposed your connection string. Please quickly delete and rotate your key as soon as possible.

Hi @mycousin ,
I can see your actively trying to make changes. Please ensure you do not have your private connection string in your commits and Pull requests. Rotate and remove your connection string as soon as possible.
Additionally, you are trying to merge into main. Before we can include any changes, can you please describe and explain what your changes are doing. Or is this a mistake?

authors: edwardlee-msft mycousin


text:
Switch chat thread when joining breakout room

What
Implement switching chat thread when joining breakout room and also switching back to the origin call's chat thread when leaving breakout room
Why
Breakout rooms feature
How Tested
Tested on local CallWithChat sample:
https://github.com/user-attachments/assets/8bf56f12-f71f-4b94-b4a0-98505328d0f4
Process & policy checklist

[ ] I have updated the project documentation to reflect my changes if necessary.
[ ] I have read the CONTRIBUTING documentation.

Is this a breaking change?

[ ] This change causes current functionality to break.

It's a tad hard to follow with the dynamic chat threads, create promises and the way threadIds can come in later than the calls, but it all looks good! If possible, it would be good to try simplify the various chat thread extractions and swapping. I guess what would be ideal to see is more defined boundaries where we have:

starting adapter may be created with a threadId

call may dynamically change in call, for any call threadIds can change at any time

on anytime call changes, threadId is changed + subscription for threadId changes.

Anytime threadId changes, we update chatAdapter and push the state

function onThreadIdChanged() {
   ... set subcriptions etc. and push to the composite there has been chat updates
}

function createCallWithChatAdapter(threadId?: string) {
   ...
   if (threadId) => setChatAdapter(threadId)
   ...

  subscribeToThreadIdChange();
  subscribeToCallEvents();
}

function updateCall() {
  ...
  if (call.threadId) => onThreadIdChanged(threadId)
  subscribeToCallEvents(); // including call.threadId changing
}

function switchToBreakoutRoom() {
  this.updateThreadId(unset)
  await joinBreakoutRoom.then => this.updateThreadId(breakoutRoom.threadId)
}

function subscribeToCallEvents() {
  call.onThreadChanged => onThreadIdChanged();
}

But that could be a large refactor so can leave out of this PR

That's totally fair. Some of the functions are handling to many scenarios and are too big. Created an ADO task for me to later refactor based on this comment.


text:
[Bug]: Data Api Builder should be consuming JwtBearerOptions

What happened?
I have created a complete docker-compose environment for my development team. MSSQL, DAB, KeyCloak, Traefik, Next.js front end.
The entire system is up and running for dev and is working quite well.
I am now able to log in and retrieve a valid access token with KeyCloak, and send it downstream to my DAB.
The dev environment in docker is all running http (not https), so the keycloak issued token has an http issuer.
DAB rejects the token because the JwtBearer middleware rejects http issuers UNLESS RequireHttpsMetadata is set to false for development.
If DAB was properly consuming JwtBearerOptions, then I could simply add an environment variable, or an appsettings.json file to override certain auth settings for dev. However, DAB has essentially hard coded much of the configuration (Except the issuer and audience settings).
I would have to migrate a bunch of my dev container environment to use https in order to make the E2E scenario work, but would rather be able to run http in dev mode.
Version
0.12.0-rc
What database are you using?
Azure SQL
What hosting model are you using?
Custom Docker host
Which API approach are you accessing DAB through?
GraphQL
Relevant log output
2024-06-07 15:41:02 fail: Microsoft.AspNetCore.Server.Kestrel[13]
2024-06-07 15:41:02       Connection id "0HN477A3CGGK2", Request id "0HN477A3CGGK2:00000002": An unhandled exception was thrown by the application.
2024-06-07 15:41:02       System.InvalidOperationException: The MetadataAddress or Authority must use HTTPS unless disabled for development by setting RequireHttpsMetadata=false.
2024-06-07 15:41:02          at Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerPostConfigureOptions.PostConfigure(String name, JwtBearerOptions options)
2024-06-07 15:41:02          at Microsoft.Extensions.Options.OptionsFactory`1.Create(String name)
2024-06-07 15:41:02          at Microsoft.Extensions.Options.OptionsMonitor`1.<>c__DisplayClass10_0.<Get>b__0()
2024-06-07 15:41:02          at System.Lazy`1.ViaFactory(LazyThreadSafetyMode mode)
2024-06-07 15:41:02          at System.Lazy`1.ExecutionAndPublication(LazyHelper executionAndPublication, Boolean useDefaultConstructor)
2024-06-07 15:41:02          at System.Lazy`1.CreateValue()
2024-06-07 15:41:02          at Microsoft.AspNetCore.Authentication.AuthenticationHandler`1.InitializeAsync(AuthenticationScheme scheme, HttpContext context)
2024-06-07 15:41:02          at Microsoft.AspNetCore.Authentication.AuthenticationHandlerProvider.GetHandlerAsync(HttpContext context, String authenticationScheme)
2024-06-07 15:41:02          at Microsoft.AspNetCore.Authentication.AuthenticationService.AuthenticateAsync(HttpContext context, String scheme)
2024-06-07 15:41:02          at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
2024-06-07 15:41:02          at Azure.DataApiBuilder.Service.Startup.<>c__DisplayClass15_0.<<Configure>b__3>d.MoveNext() in /_/src/Service/Startup.cs:line 345
2024-06-07 15:41:02       --- End of stack trace from previous location ---
2024-06-07 15:41:02          at Azure.DataApiBuilder.Core.Services.PathRewriteMiddleware.InvokeAsync(HttpContext httpContext) in /_/src/Core/Services/PathRewriteMiddleware.cs:line 89
2024-06-07 15:41:02          at Azure.DataApiBuilder.Core.Services.CorrelationIdMiddleware.Invoke(HttpContext httpContext) in /_/src/Core/Services/CorrelationIdMiddleware.cs:line 53
2024-06-07 15:41:02          at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpProtocol.ProcessRequests[TContext](IHttpApplication`1 application)

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Thank you for reaching out and I understand the ask for wanting to change requirehttpsmetadata to false.

My understanding is that your KeyCloak instance is on-premises, hence the http dev instance?
What other JWT bearer options fields would you like the ability to change?

If DAB was properly consuming JwtBearerOptions, then I could simply add an environment variable, or an appsettings.json file to override certain auth settings for dev. However, DAB has essentially hard coded much of the configuration (Except the issuer and audience settings).

In this case, DAB doesn't hard code explicitly, it just doesn't modify the out of box .NET defaults:

Gets or sets if HTTPS is required for the metadata address or authority. The default is true. This should be disabled only in development environments.
https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.authentication.jwtbearer.jwtbeareroptions.requirehttpsmetadata?view=aspnetcore-8.0

Good morning,
In my scenario, I am only using Http while running locally on Docker Desktop using docker-compose. I have a Traefik gateway running in front of my front end services, and a KeyCloak identity provider running adjacent to Dab. KeyCloak is currently issuing an authority as http://... Which fails the Dab smell check.
I will be working on moving those services to https even within local dev environment, but thought it would be a useful change to allow further customization of Dab by simply reading configuration from appsettings.json the way the .Net Core Jwt auth is naturally designed!
In this example, I can add a “Bearer” section to my appsettings.json and set RequireHttpsMetadata (or any other setting I want):
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
}
},
"Bearer": {
"RequireHttpsMetadata": false
},
"AllowedHosts": "*"
}
And in the Startup, just read that section prior to configuring JwtBearer auth.
builder.Services.Configure(JwtBearerDefaults.AuthenticationScheme, builder.Configuration);
builder.Services.AddAuthentication()
.AddJwtBearer(config =>
{
config.Authority ??= customHostBuilderAuthorityFromDabConfig;
config.Audience ??= customHostBuilderAudienceFromDabConfig;
});
Curious why appsettings.json isn’t the default config mechanism, rather than a custom json file?
Thank you for responding. I see this as a nice to have for now, as I can move my services to https in dev mode. I was just a little frustrated to see the code in the Dab Git repo and no configuration is read from appsettings.json. That would open up so many more options for consumers!
Sincerely,
Trevor
From: Sean Leonard @.>
Date: Friday, June 7, 2024 at 5:18 PM
To: Azure/data-api-builder @.>
Cc: Trevor Germain @.>, Author @.>
Subject: Re: [Azure/data-api-builder] [Bug]: Data Api Builder should be consuming JwtBearerOptions (Issue #2254)
CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.
Thank you for reaching out and I understand the ask for wanting to change requirehttpsmetadata to false.

My understanding is that your KeyCloak instance is on-premises, hence the http dev instance?
What other JWT bearer options fields would you like the ability to change?

If DAB was properly consuming JwtBearerOptions, then I could simply add an environment variable, or an appsettings.json file to override certain auth settings for dev. However, DAB has essentially hard coded much of the configuration (Except the issuer and audience settings).
In this case, DAB doesn't hard code explicitly, it just doesn't modify the out of box .NET defaults:
Gets or sets if HTTPS is required for the metadata address or authority. The default is true. This should be disabled only in development environments.
https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.authentication.jwtbearer.jwtbeareroptions.requirehttpsmetadata?view=aspnetcore-8.0
—
Reply to this email directly, view it on GitHubhttps://github.com/Azure/data-api-builder/issues/2254#issuecomment-2155687040, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AV6LLC5ZBE4FJ4UHOQBY2VTZGI5U5AVCNFSM6AAAAABI7LJLQKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNJVGY4DOMBUGA.
You are receiving this because you authored the thread.Message ID: @.***>

After digging deeper into this, we are going to have a serious problem getting DAB to work in a containerized environment!

Identity service (keycloak) inside Azure Container Apps (ACA)

Data Api Builder (DAB) inside ACA

Web application inside ACA

Web Application Gateway with Firewall (AWG)

User visits web app at https://mysite.comhttps://mysite.com/

AWG forwards them to Identity service at https://identity-magicstring.azurecontainerapps.comhttps://identity-magicstring.azurecontainerapps.com/ (internal ingress)

User acquires an access token. Issuer is https://mysite.com/identity/realms/myrealm

Web app sends the token to DAB service at https://dab-magicstring.azurecontainerapps.comhttps://dab-magicstring.azurecontainerapps.com/ (internal ingress)

DAB receives token and sees that the issuer is https://mysite.com/identity/realms/myrealm and tries to access to verify tokens. DAB cannot reach out to that domain. DAB cannot resolve that domain from within the container environment. DAB only knows how to reach other services at https://*-magicstring.azurecontainerapps.com (internal ingress)

So, there is no way for DAB to receive the list of valid issuers, etc.

DAB properly secured in a container environment with internal identity services cannot work without exposing the JwtBearerOptions. This is a critical blocker for us to move foreward!
Any way to prioritize this?
Thanks,
Trevor
From: Trevor Germain @.>
Date: Monday, June 10, 2024 at 9:09 AM
To: Azure/data-api-builder @.>, Azure/data-api-builder @.>
Cc: Author @.>
Subject: Re: [Azure/data-api-builder] [Bug]: Data Api Builder should be consuming JwtBearerOptions (Issue #2254)
Good morning,
In my scenario, I am only using Http while running locally on Docker Desktop using docker-compose. I have a Traefik gateway running in front of my front end services, and a KeyCloak identity provider running adjacent to Dab. KeyCloak is currently issuing an authority as http://... Which fails the Dab smell check.
I will be working on moving those services to https even within local dev environment, but thought it would be a useful change to allow further customization of Dab by simply reading configuration from appsettings.json the way the .Net Core Jwt auth is naturally designed!
In this example, I can add a “Bearer” section to my appsettings.json and set RequireHttpsMetadata (or any other setting I want):
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
}
},
"Bearer": {
"RequireHttpsMetadata": false
},
"AllowedHosts": "*"
}
And in the Startup, just read that section prior to configuring JwtBearer auth.
builder.Services.Configure(JwtBearerDefaults.AuthenticationScheme, builder.Configuration);
builder.Services.AddAuthentication()
.AddJwtBearer(config =>
{
config.Authority ??= customHostBuilderAuthorityFromDabConfig;
config.Audience ??= customHostBuilderAudienceFromDabConfig;
});
Curious why appsettings.json isn’t the default config mechanism, rather than a custom json file?
Thank you for responding. I see this as a nice to have for now, as I can move my services to https in dev mode. I was just a little frustrated to see the code in the Dab Git repo and no configuration is read from appsettings.json. That would open up so many more options for consumers!
Sincerely,
Trevor
From: Sean Leonard @.>
Date: Friday, June 7, 2024 at 5:18 PM
To: Azure/data-api-builder @.>
Cc: Trevor Germain @.>, Author @.>
Subject: Re: [Azure/data-api-builder] [Bug]: Data Api Builder should be consuming JwtBearerOptions (Issue #2254)
CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.
Thank you for reaching out and I understand the ask for wanting to change requirehttpsmetadata to false.

My understanding is that your KeyCloak instance is on-premises, hence the http dev instance?
What other JWT bearer options fields would you like the ability to change?

If DAB was properly consuming JwtBearerOptions, then I could simply add an environment variable, or an appsettings.json file to override certain auth settings for dev. However, DAB has essentially hard coded much of the configuration (Except the issuer and audience settings).
In this case, DAB doesn't hard code explicitly, it just doesn't modify the out of box .NET defaults:
Gets or sets if HTTPS is required for the metadata address or authority. The default is true. This should be disabled only in development environments.
https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.authentication.jwtbearer.jwtbeareroptions.requirehttpsmetadata?view=aspnetcore-8.0
—
Reply to this email directly, view it on GitHubhttps://github.com/Azure/data-api-builder/issues/2254#issuecomment-2155687040, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AV6LLC5ZBE4FJ4UHOQBY2VTZGI5U5AVCNFSM6AAAAABI7LJLQKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNJVGY4DOMBUGA.
You are receiving this because you authored the thread.Message ID: @.***>

authors: seantleonard tgermain-impirica

repo: Azure/data-api-builder


text:
Add End to End test for runtime section in a Hot-Reload scenario

Why make this change?
Adds support for End to End tests within the ConfigurationTests class, along with tests for hot-reloading the runtime section of the config.
Closes https://github.com/Azure/data-api-builder/issues/2438
What is this change?
Add a function for generating a file to be used for starting the engine and then for hot-reloading. In other words, this function creates a valid string using arguments to replace portions of the string that it generates to represent the config file, it then writes that string as a file to the current working directory. If this file is what we use to start the engine, calling this function again will overwrite that file and initiate a hot-reload. We use this function then to overwrite the file with new runtime values and hot-reload, demonstrating that hot-reload will work for the runtime section.
Once the hot-reload has happened we can validate that the engine is able to correctly process requests.
How was this tested?
Tests create a valid config file, start the engine with that file, assert that requests function correctly, modify that file by saving a new one with the same path triggering a hot-reload, run new requests and assert that they function correctly.
Specifically we test that new paths still result in valid results. And that changing the value of enabled from true to false results in the response changing from status OK to status NotFound.
Sample Request(s)

Example REST and/or GraphQL request to demonstrate modifications
Example of CLI usage to demonstrate modifications

/azp run

/azp run

/azp run

/azp run

/azp run

/azp run

/azp run

/azp run

/azp run

/azp run

/azp run

/azp run

/azp run

/azp run

/azp run

/azp run

/azp run

/azp run

authors: aaronburtle abhishekkumams seantleonard


text:
Using this package to connect to QPID

Hello,
I am trying to use this package to connect to a QPID AMQP broker (it implements AMQP 1.0) and to send some messages. I am using the sample code that can be found on the godoc page, but I get the following error after connection:
2021/05/07 17:40:17 Creating sender link:*Error{Condition: amqp:invalid-field, Description: received Attach with remote null terminus., Info: map[]}
exit status 1

Here is my code:
package main

import (
	"context"
	"fmt"
	"github.com/Azure/go-amqp"
	"log"
	"time"
)

func main() {

	// Create client
	client, err := amqp.Dial("amqp://sptest.aaaa.bb",
		amqp.ConnSASLPlain("abababa", "cdcdcdc"),
	)
	fmt.Println("dial ok")
	if err != nil {
		log.Fatal("Dialing AMQP server:", err)
	}
	defer client.Close()

	// Open a session
	session, err := client.NewSession()
	if err != nil {
		log.Fatal("Creating AMQP session:", err)
	}
	fmt.Println("session opened")

	ctx := context.Background()

	// Send a message
	{
		// Create a sender
		sender, err := session.NewSender(
			amqp.LinkTargetAddress("/myTestQueue"),
//			amqp.LinkTargetTimeout(10),
//			amqp.LinkTargetDurability(2),
		)
		if err != nil {
			log.Fatal("Creating sender link:", err)
		}
		fmt.Println("Sender link created")

		ctx, cancel := context.WithTimeout(ctx, 5*time.Second)

		// Send message
		err = sender.Send(ctx, amqp.NewMessage([]byte("Hello!")))
		if err != nil {
			log.Fatal("Sending message:", err)
		}

		sender.Close(ctx)
		cancel()
	}
}

I have tried many different ways to enter the queue name, with slash, without it, with TargetDurability, etc,. but no luck. Dialing is OK, session is opened, but then it exits with error.
From the same machine, using the same connection credentials, I can easily connect and send using node.js with rhea. This means that the problem must be in my code. I am sure I am missing some obvious thing, probably on how to reference the queue.
Any help is appreciated.

Java qpid waits for source and target addresses simultaneously (see https://issues.apache.org/jira/browse/QPID-7981). So, as a workaround you have to send both of them (source might be an empty string):
sender, err := session.NewSender(
    amqp.LinkTargetAddress("/myTestQueue"),
    amqp.LinkSourceAddress(""),
)

Thanks a lot for your answer, indeed this is the solution to the problem.
Perhaps one more comment if anyone reading this needs some more advice: the slash at the beginning of the queue name is not needed, the code only works if it is not included (at least in my setup).

repo: Azure/go-amqp


text:
v12.0.0 breaks azure-sdk-for-go

steps to reproduce
I created new repository.
$ export GO111MODULE=on
$ go mod init sample

Then I created a file.
package main

import (
	_ "github.com/Azure/azure-sdk-for-go/services/preview/sql/mgmt/2017-03-01-preview/sql"
)

Finally, just run go get -u
results
$ go get -u
go: finding github.com/Azure/go-autorest/autorest/date latest
go: finding github.com/Azure/go-autorest/autorest/azure latest
go: finding github.com/Azure/go-autorest/tracing latest
go: finding github.com/Azure/go-autorest/autorest latest
go: finding github.com/Azure/go-autorest/autorest/to latest
go: finding github.com/Azure/go-autorest/autorest/validation latest
go: finding go.opencensus.io/stats/view latest
go: finding go.opencensus.io/plugin/ochttp latest
go: finding go.opencensus.io/trace latest
go: finding go.opencensus.io/plugin/ochttp/propagation/tracecontext latest
go: finding go.opencensus.io/stats latest
go: finding go.opencensus.io/plugin latest
go: finding go.opencensus.io/plugin/ochttp/propagation latest
go: downloading google.golang.org/grpc v1.19.1
go: downloading google.golang.org/api v0.3.1
go: downloading github.com/hashicorp/golang-lru v0.5.0
go: downloading google.golang.org/genproto v0.0.0-20190307195333-5fe7a883aa19
go: extracting github.com/hashicorp/golang-lru v0.5.0
go: downloading golang.org/x/net v0.0.0-20190311183353-d8887717615a
go: extracting google.golang.org/grpc v1.19.1
go: extracting golang.org/x/net v0.0.0-20190311183353-d8887717615a
go: extracting google.golang.org/genproto v0.0.0-20190307195333-5fe7a883aa19
go: extracting google.golang.org/api v0.3.1
go: downloading golang.org/x/sync v0.0.0-20190227155943-e225da77a7e6
go: extracting golang.org/x/sync v0.0.0-20190227155943-e225da77a7e6
# github.com/Azure/azure-sdk-for-go/services/preview/sql/mgmt/2017-03-01-preview/sql
../../pkg/mod/github.com/!azure/azure-sdk-for-go@v27.2.0+incompatible/services/preview/sql/mgmt/2017-03-01-preview/sql/models.go:1500:20: future.Done undefined (type *BackupLongTermRetentionPoliciesCreateOrUpdateFuture has no field or method Done)
../../pkg/mod/github.com/!azure/azure-sdk-for-go@v27.2.0+incompatible/services/preview/sql/mgmt/2017-03-01-preview/sql/models.go:1750:20: future.Done undefined (type *BackupLongTermRetentionVaultsCreateOrUpdateFuture has no field or method Done)
../../pkg/mod/github.com/!azure/azure-sdk-for-go@v27.2.0+incompatible/services/preview/sql/mgmt/2017-03-01-preview/sql/models.go:2558:20: future.Done undefined (type *DatabasesCreateImportOperationFuture has no field or method Done)
../../pkg/mod/github.com/!azure/azure-sdk-for-go@v27.2.0+incompatible/services/preview/sql/mgmt/2017-03-01-preview/sql/models.go:2587:20: future.Done undefined (type *DatabasesCreateOrUpdateFuture has no field or method Done)
../../pkg/mod/github.com/!azure/azure-sdk-for-go@v27.2.0+incompatible/services/preview/sql/mgmt/2017-03-01-preview/sql/models.go:2746:20: future.Done undefined (type *DatabasesExportFuture has no field or method Done)
../../pkg/mod/github.com/!azure/azure-sdk-for-go@v27.2.0+incompatible/services/preview/sql/mgmt/2017-03-01-preview/sql/models.go:2775:20: future.Done undefined (type *DatabasesImportFuture has no field or method Done)
../../pkg/mod/github.com/!azure/azure-sdk-for-go@v27.2.0+incompatible/services/preview/sql/mgmt/2017-03-01-preview/sql/models.go:2804:20: future.Done undefined (type *DatabasesPauseFuture has no field or method Done)
../../pkg/mod/github.com/!azure/azure-sdk-for-go@v27.2.0+incompatible/services/preview/sql/mgmt/2017-03-01-preview/sql/models.go:2827:20: future.Done undefined (type *DatabasesResumeFuture has no field or method Done)
../../pkg/mod/github.com/!azure/azure-sdk-for-go@v27.2.0+incompatible/services/preview/sql/mgmt/2017-03-01-preview/sql/models.go:2850:20: future.Done undefined (type *DatabasesUpdateFuture has no field or method Done)
../../pkg/mod/github.com/!azure/azure-sdk-for-go@v27.2.0+incompatible/services/preview/sql/mgmt/2017-03-01-preview/sql/models.go:4187:20: future.Done undefined (type *ElasticPoolsCreateOrUpdateFuture has no field or method Done)
../../pkg/mod/github.com/!azure/azure-sdk-for-go@v27.2.0+incompatible/services/preview/sql/mgmt/2017-03-01-preview/sql/models.go:4187:20: too many errors

Hello!  v27.x still relies on the v11.x version of go-autorest.  Can you please pin it to pre-v12?  We'll be rolling out support for v12 in v28 of the SDK.

ok! I can pin to v11. thank you.

authors: jhendrixMSFT lufia

repo: Azure/go-autorest

license_source: bigquery


text:
Allow Tracer to annotate span with more information like: request/response body

Currently only a name is allowed to specify at start span, then the status code and err is allowed to specify at end span.
However, it would be nice to see the request/response detail in span annotation, something like request url, request body, response body, etc.

I've added this note to the issue tracking this for track 2 codegen https://github.com/Azure/autorest.go/issues/501.  We won't be fixing this for track 1 though.

authors: jhendrixMSFT magodo


text:
Fix hardcoded Brigade API server

Right now, when built for production, Kashti uses a hardcoded publicly available version of a Brigade API, which has been used for testing.
export const BRIGADE_API_HOST = 'https://cors-anywhere.herokuapp.com/https://example-api.technosophos.me';

We need to take .Values.brigade.apiServer from values.yaml, add it as environment variable on the Kashti container and retrieve it in app.config.ts.

It turns out the fix was much easier - #204

repo: Azure/kashti


text:
Several improvements and additions for deploying DB2

Problem

Set limits for DB2: group name is wrong in hard nproc unlimited
DB2 installation: is not using the virtual_host defined in the inventory
DB2 mount: log_dir logical volume is mounted on /log/SID/dir
Deployer: running the SAP automation without the deployer VM is broken
enable_firewall_for_keyvaults_and_storage was removed
VMAgentActions fail
2.10-sap-notes: can be optimized and uses invalid oracle8 OS
SAP OS USERS and Group Creation (nw_user) isn't efficient
ansible-input-api.yaml has unused variables
You cannot specify custom virtual_hostnames when deploying a cluster or want to use cluster names when deploying a single stack

Solution

Set limits for DB2: use right group name
DB2 installation: use virtual_host variables
DB2 mount: log_dir is mounted on /db2/SID/log_dir
Deployer: add try functions around deployer vm output variables
Reintroduce enable_firewall_for_keyvaults_and_storage variable
VMAgentActions don't require become_user and become as they are delegated
2.10-sap-notes: optimized and fixed invalid OS
SAP OS USERS and Group Creation (nw_user) optimized
ansible-input-api.yaml removed unused variables
Add custom virtual_hostname variabels for db, ers, scs and pas

Tests
Tested with multiple single stack DB2 deployments and it works as expected.
Notes
Please incorporate this asap in a release. Currently we are also testing the DB2 HA deployments which I would like to do with release.

@KimForss can you take a look at this PR?

@hjstam, initial testing of the code reveals HA deployments fail when the custom_[scs,ers,db,pas]_virtual_hostname are not set. This is the default scenario when the code is used without setting these values. The variable ends up having an omit value instead of actually being omitted. The value passed in gets set as '__omit_place_holder__6327d38a8a70754aab5787673a656d0fe2148d47.test.contoso.net'

@hjstam, initial testing of the code reveals HA deployments for existing scenarios (for example, HANA) fail when the custom_[scs,ers,db,pas]_virtual_hostname are not set. This is the default scenario when the code is used without setting these values. The variable ends up having an omit value instead of actually being omitted. The value passed in gets set as '__omit_place_holder__6327d38a8a70754aab5787673a656d0fe2148d47.test.contoso.net'
I have created a branch pull/496 which can be used for testing.

I will try to verify this next week. It might be related to the Ansible version that the SAP Automation is using (2.13) which is EOL by the way. I'm developing and deploying with 2.15.

I will try to verify this next week. It might be related to the Ansible version that the SAP Automation is using (2.13) which is almost EOL by the way. I'm developing and deploying with 2.15.

@hdamecharla I was able to reproduce the problem and omitting the scs_virtual_hostname and ers_virtual_hostname variables indeed doesn't work. I was expecting that the role defaults would take over but that isn't the case.
I've amended the commit and verified that the logic works for the HA SCS/ERS install.

Hi @hjstam We have updated the codebase with some other changes. You will see that a large number of the terraform files have changed. Both main and experimental have those changes.
The main change in them is cosmetic so hopefully it does not cause any major issues. I also tried to make sure that our code will work without an deployer.

Thank you Kimmo, I rebased my branch and updated my PR.

authors: hdamecharla hjstam

repo: Azure/sap-automation


text:
Remove lld linker option and dependencies

Originally lld was used for linking with SF shared libs due to SF shared libs incompatibility with ld.
Now SF shared libs are dynamically loaded instead of linked, there is no need to use lld anymore.
Removes cargo lld linker option.

Looks good to me, but I don't have reviewer powers in your repo, so I can't provide an approval obviously :)

authors: cgettys-microsoft youyuanwu

repo: Azure/service-fabric-rs


text:
[autogenerated] update dependencies

Propagating dependency updates

/AzurePipelines run

repo: Azure/sf-c-util


text:
When intercepting commands ensure variables are expanded

We currently intercept xdg-open commands when running in the Web UI and convert them to commands that open a new browser tab. However, if there is a variable in the command output it is passed unexpanded to the browser. For example, the command xdg-open http://$IP will result in the browser attempting to open http://$IP.

See run_special_command in cli.py

repo: Azure/simdem


text:
chore: repository governance

Repository governance update
This PR was automatically created by the AVM Team hive-mind using the grept governance tool.
We have detected that some files need updating to meet the AVM governance standards.
Please review and merge with alacrity.
Grept config source: git::https://github.com/Azure/Azure-Verified-Modules-Grept.git//terraform
Thanks! The AVM team :heart:

Supersceeded by #111


text:
Add Custom CAF RBAC Roles

Overview/Summary
This PR adds role definitions for the custom RBAC roles detailed at CAF - Identity & Access Design Recommendations to the module.
This PR adds

Role definitions for the 5 custom RBAC role examples detailed in CAF documentation
Fixes #199

Breaking Changes

No breaking changes

Testing Evidence
I have added these custom RBAC roles in my own lab environment with no issues.
As part of this Pull Request I have

[X] Checked for duplicate Pull Requests
[ ] Associated it with relevant issues, for tracking and closure.
[X] Ensured my code/branch is up-to-date with the latest changes in the main branch
[X] Performed testing and provided evidence.
[ ] Updated relevant and associated documentation.
[ ] Updated the "What's New?" wiki page (located in the Enterprise-Scale repo in the directory: /docs/wiki/whats-new.md)

As a side note... I am about to merge an update which alters the test framework, providing greater coverage over things like Role Definitions, so we will also need to re-merge main into this PR and update the tests accordingly. I will sort this, but happy for you to shadow to see how?

As a side note... I am about to merge an update which alters the test framework, providing greater coverage over things like Role Definitions, so we will also need to re-merge main into this PR and update the tests accordingly. I will sort this, but happy for you to shadow to see how?

Thanks Kevin, that would be brilliant. Let me know when suits.

/azp run unit

@PaulJohnston88, these failed tests are expected and what we will go through tomorrow:

/azp run unit

/azp run unit

/azp run unit


text:
[Bug]: should we have apiVersion lifted to client initialization if not all operation has this parameter?

Describe the bug
In this spec
      model ApiVersionParameter {
        @query
        "api-version": string;
      }
      @route("/test")
      op test(...ApiVersionParameter): string;
      @route("/test1")
      op test1(): string;

operation test1 doesn't have any parameter call apiVersion at all, but we still have an api-version parameter in the client.initialization.properties. with onClient: true and optional: false

I wonder if this makes sense?
Reproduction
N/A
Checklist

[X] Follow our Code of Conduct
[X] Check that this issue is about the Azure libraries for typespec. For bug in the typespec language or core libraries file it in the TypeSpec repo
[X] Check that there isn't already an issue that request the same bug to avoid creating a duplicate.
[X] The provided reproduction is a minimal reproducible example of the bug.

@iscai-msft could you take a look?

yep, i was meaning to take a look today, i'll bump this in priority. thanks!

I think:

if there is only one kind of api-version, then TCGC shall lift it into client initialization. It makes sense since  there is only one kind of api-version which will be convenient for SDK users as client level signatures. For those API that has no parameter api-version could just not use this client level signature. Just like subscription_id in MGMT SDK, not all API has this parameter however all language SDKs treat it as client level signatures.
if there is multi kinds of api-version, then TCGC shall not lift it.

Kind of valid for me...
If the client has 99 API needs api-verison, 1 API does not need api-version, should we put it to client.initialization? If yes for 99:1 but no for 1:1, then where is the switch point...

Some legacy package (e.g. sql) asks SDK release with tag that contains multi swagger files configured with different api-version. But SDK team is asking for one api-version for all services, so in the future, there shall be less and less scenarios for multi kinds of api-versions.

Different values for api-version in query parameter. For example, some legacy package (e.g. sql) asks SDK release with tag that contains multi swagger files configured with different api-version. But SDK team is asking for one api-version for all services, so in the future, there shall be less and less scenarios for multi kinds of api-versions.

i think for typespec, we could ignore that. i believe all migration to typespec will follow the new no mult-api version in one service rule.

Ok sweet, are we all in agreement to not modify the behavior of TypeSpec here? Our current behavior is we elevate to the client if there's at least one api version parameter.
We could add linter checkers for a mix of query / header api versions, but overall our behavior stays the same? cc @qiaozha

Got it, the problem is, will you automatically append the query api-version parameter as long as it's defined in the client options even if it's not defined in that specific operation?

Yes, the api-version parameter still shows in the method.operation.parameters, but it won't show in method.parameters. The mapping from method.operation.parameters["api-version"] will point back to the client.initialization.properties["api-version"] instead of a method parameter, since it will be elevated to the client

i think qiaoqiao means the specific operation without api-version param. then the method.parameters and method.operation.parameters will both not have the api-version param.

Oh yes, that's already the design. I'm going to close the issue, please reopen if there's anything else. I can leave the issue open for the linter checkers, but I feel like it's not super needed

authors: iscai-msft msyyc qiaozha tadelesh weidongxu-microsoft

repo: Azure/typespec-azure


text:
Add an option for VM driver as well as additional flags.

Fixes #314 #305
@itowlson

Had a chat with @brendandburns and it looks like the desired behaviour is as follows:

Add Existing Cluster - not relevant because if you have a Minikube cluster then it's automatically added to your kubeconfig.
Create Cluster - gathers options and spins up a Minikube cluster, which is automatically added to kubeconfig.  If Minikube is already installed, then this should do nothing (unless you can define multiple Minikube 'clusters' e.g. with different configs).
Start Minikube - runs Minikube with the already-gathered options.  This is what it does in the absence of options, so this is doing the right thing.

So we might need to remove Add Existing Cluster and tweak Create Cluster for the case where Minikube is already set up.  But otherwise what we have fits this model well.

@brendandburns Seemed a bit pointless bugging you to fix the typo so I used my maintainer powers on you - hope that was okay.

authors: brendandburns itowlson

repo: Azure/vscode-kubernetes-tools


text:
Add error handling to many promises.

In the process of working on hover, I noticed that many promises weren't handling errors.
Next step would be to switch to async/await

+1 to

One non-critical change request, otherwise looks good - thanks!

Comment addressed. ptal.

Comments addressed, thanks for the great feedback. Please take another look.

@itowlson friendly ping on this one...
Thanks!

@itowlson fwiw, reporting definitely shouldn't influence code merges. Please only merge when it's ready, regardless of who it's from...
thanks!


text:
This action does not remove old files during upload!

I would expect that when you upload a "new" deployment, that all traces of previous deployments would be removed. However, I just tested this on our dev branch and I can with 100% certainty confirm that old files from old outdated deployments are STILL PRESENT.
I sincerely hope this is a bug and not intentional design, because keeping old files in an app service can lead to all sorts of nasty stuff:

Storage consumption increase over time
Attempting to run or compile old code can result in startup crash loop (this is what brought our dev servers down)
Security leaks: if old keys/access codes are removed from repo they will still be there in the app service even after redeployment!!!

@ehamai Can you have a look at this?

I eventually had to work around this problem by adding WEBSITE_RUN_FROM_PACKAGE=1 in the configuration of my app service. Still not an ideal solution though.

Has there been any kind of update on this? It may be related to the current issue I am having with deployments...
#138
Not exactly wanting to napalm everything in the wwwroot directory without a clear understanding of ramifications. Like can I just nuke everything and then redeploy? Will that affect a redeploy?

So I have addressed my issue with deployments but can still see that these old files are hanging around.. .which is not good. If we were to wipe out the wwwroot folder items and then redeploy would that be sufficient to rectify things? I am unsure if there are any app service specific items that dwell within the folder that need to be hands off and unintentionally deleting them would cause an issue

You should be able to wipe them. Whenever I did there was no problem. I just got tired of having to do it manually, since there wasn't any clean way to automate it. So I just started using the WEBSITE_RUN_FROM_PACKAGE config.

Hi @reilem, do you mind sharing the site name where you were having this issue? What OS and framework were you deploying (Flask, Express, .NET, Spring Boot)?

It is a Linux app service running a Node 12 LTS stack. The application is similar to express, an apollo-fastify graphql server.

This has been fixed and not reproducible with latest bits.

authors: ArieJones BALAGA-GAYATRI JasonFreeberg rabollin reilem

repo: Azure/webapps-deploy


text:
Relaxing the requirement of "iss" on jwt token to create claims ident…

…ity on V4.x Dev branch

Hi @ChenYan98, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. Real humans will now evaluate your PR.

TTYL, MSBOT;

Issue: https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/issues/154

@ChenYan98 can you please add a test for this new behavior?

authors: ChenYan98 brentschmaltz msftclas


text:
AsymmetricKeyCredentials should not user internal, proprietary API

The AsymmetricKeyCredentials class currently uses sun.security.util.Length, but this is not public API and it is not guaranteed to be included in all JDKs, and is unavailable after JDK 9 due to the introduction of modules. Usage of API in the sun.* namespace is not recommended.

@JonathanGiles Thanks for bringing this up, I have added a task to the backlog to address this issue.

authors: JonathanGiles sangonzal

license: mit


text:
B2C token validation by msal libraby

I have a generic question about token validation from msal library for java, does msal library takes care of validating below attributes from the token? or is it a responsibility of consumer to validate the token?

Signature
exp
nbf
iss
aud

Resource supposed to validate access token attached to incoming requests. MSAL is a client side SDK , it helps to get access tokens which will be used by application to access resources.
Spring Security can be used to validate access tokens.

So what I understood is MSAL doesn't validate any of the above attributes and its a responsibility of application to validate the token.

it is responsibility of resource, accessed with token

authors: SomkaPe rajesh-naik-by


text:
Some requests failing while others succeed due to CORS error

Please follow the issue template below. Failure to do so will result in a delay in answering your question.
Library

[x] msal@1.3.2 or @azure/msal@1.x.x
[ ] @azure/msal-browser@2.x.x
[ ] @azure/msal-angular@0.x.x
[x] @azure/msal-angular@1.0.0
[ ] @azure/msal-angularjs@1.x.x

Description
Please provide your question here, including as much relevant details as possible.
I'm using MSAL Angular to acquire an access token and attach it to http calls that go to my API with the MsalInterceptor.
I am seeing a very strange behavior in some of my requests that is driving me mad.
Very consistently, some of my requests to the same endpoint always succeed and some always fail. The only difference between them is a slightly different parameter in the query string. The requests are each started in the same way from my code, but one will always (consistently) fail.
I see this CORs error for the one that failed:
Access to XMLHttpRequest at 'https://login.windows.net/707e8816-9153-4841-b8eb-17b974748957/oauth2/authorize?response_type=id_token&redirect_uri=https%3A%2F%2Ffacilitydirectoryapi-dev.azurewebsites.net%2F.auth%2Flogin%2Faad%2Fcallback&client_id=9851368d-c8ef-450e-a3fa-6f5bf662b23f&scope=openid+profile+email&response_mode=form_post&nonce=18b6f4b29c624d9a87e9a40f335589f3_20200710165933&state=redir%3D%252Fgraphql%253Fquery%253D%25257Bemployee(facilitycode%253A%252520%2525220500%252522)%25257B%252520company%252520companyCode%252520dept%252520deptDesc%252520div%252520divDesc%252520%252520eeid%252520eeType%252520email%252520employeeNumber%252520facility%252520facilityCode%252520%252520firstName%252520hireDate%252520job%252520jobCode%252520jobLong%252520lastName%252520preferedName%252520remoteEmployee%252520spvNameFirst%252520spvNameLast%252520spvNameMiddle%252520spvEeid%252520spvEmpNo%252520status%252520termDate%25257D%25257D' (redirected from 'https://facilitydirectoryapi-dev.azurewebsites.net/graphql?query={employee(facilitycode:%20%220500%22){%20company%20companyCode%20dept%20deptDesc%20div%20divDesc%20%20eeid%20eeType%20email%20employeeNumber%20facility%20facilityCode%20%20firstName%20hireDate%20job%20jobCode%20jobLong%20lastName%20preferedName%20remoteEmployee%20spvNameFirst%20spvNameLast%20spvNameMiddle%20spvEeid%20spvEmpNo%20status%20termDate}}') from origin 'https://localhost:44356' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.

Only difference is a parameter, yet one will always fail and one will always work regardless of the order they're called.
Any idea why the CORS error is occurring on one but not the other?
Some insight would be greatly appreciated!

@a-train Take a look at this comment on another thread that had a similar CORS error. This may help with figuring out what might be adding or changing headers on your requests.

@jo-arroyo, thanks for getting back to me. This definitely got me thinking.
It turns out there was a bad configuration in the app's routing, which was interfering with API calls that contained certain codes (like 404 and 500).

authors: a-train jo-arroyo


text:
Token Renewal - Offset Time (tokenRenewalOffsetSeconds)

Do we have the ability to configure an offset time by which the library should fetch new tokens and not return the ones from the cache?
Also, in our current implementation we have implemented a polling mechanism where we call acquireTokenSilent every 10 minutes to get a token. However I am not sure what would happen if the token (returned from the cache) has an expiration time between two 10 minute intervals. Will be left with an expired token for a short period of time? If so, can we avoid it by specifying an offset time as a configuration. Please advise.

@muperi Please follow one of the existing issues templates, thanks! https://github.com/AzureAD/microsoft-authentication-library-for-js/issues/new/choose

@muperi As mentioned above, can you please use the template, especially to understand which msal library and version you are using and your sample code?
Can you also let us know why you are polling for every ten minutes? Expanding your use case can help us give you alternate options instead of polling.

@muperi If you are talking about access tokens then (to my understanding) the recommended approach is to call acquireTokenSilent each time before requesting a protected resource instead of doing a periodical polling. Most times it will get a valid token from the cache. Otherwise it there is a valid refresh token it will get new (access and refresh) tokens from AD.

Thanks @baSSiLL. @muperi Is the above information helpful? Please let us know and share your code if you still need to understand the usage pattern.

Closing due to inactivity, let us know if this is still an issue.

authors: baSSiLL jasonnutter muperi sameerag


text:
{azure/msal-node doesnt return refresh token

Core Library
MSAL.js (@azure/msal-browser)
Core Library Version
2.13.0
Wrapper Library
Not Applicable
Wrapper Library Version
0.0.0
Public or Confidential Client?
Confidential
Description
How can i access refresh token from acquireTokenByCode method i have a background job that is spin up when needed so i can not rely on cached versions. I have implemented several OAuth dropbox, google, box all of those apis are simple and return what is needed.
Error Message
No response
MSAL Logs
No response
Network Trace (Preferrably Fiddler)

[ ] Sent
[ ] Pending

MSAL Configuration
const config: Configuration = {
    auth: {
      clientId: outlookClientSecretKey.value(),
      authority: "https://login.microsoftonline.com/common",
      clientSecret: outlookClientIdSecretKey.value(),
    },
  };

Relevant Code Snippets
const authResult = await msalClient.acquireTokenByCode({
    code: code,
    scopes: ["openid", "offline_access", "User.Read", "Mail.Read"],
    redirectUri: "redirect-url",
  });

Reproduction Steps
call acquireTokenByCode mmethod
Expected Behavior
Returns refresh token
Identity Provider
Entra ID (formerly Azure AD) / MSA
Browsers Affected (Select all that apply)
Other
Regression
No response
Source
External (Customer)

Please see the FAQ

From documentation
How do I get the Refresh Token?
MSAL Node does not expose refresh tokens for security reasons. Instead, we manage the refresh token through the cache and update it as required to fetch the corresponding Id Token and Access Token for the developer. Use the appropriate acquireToken* API to obtain access tokens, and MSAL will ensure they are renewed if necessary. If you have a refresh token acquired by other means, you can use the [acquireTokenByRefreshToken](https://azuread.github.io/microsoft-authentication-library-for-js/ref/classes/_azure_msal_node.confidentialclientapplication.html#acquiretokenbyrefreshtoken) API (see also: [Refresh Token sample](https://github.com/AzureAD/microsoft-authentication-library-for-js/blob/dev/samples/msal-node-samples/refresh-token/README.md)). More details on AAD tokens can be found [here](https://learn.microsoft.com/azure/active-directory/develop/security-tokens)

Still we have implemented several other oauth implementations by google, dropbox, box ... and all of them work the same way they return access and refresh token well even your /token response if done manually returns it so hiding from MSAL users doesnt really do anything in terms of security if we need to use it we will just use /token endpoint

authors: Dzivo servefast-cto tnorling


text:
Populate msal v2 loginHint from cached msal v1 id token

Today, when loginHint isn't set, we'll look for a cached ADAL id token, and use it to populate the login_hint parameter if one is found. It has been requested that we always perform similar SSO for MSAL v1 id tokens.

Codecov Report

Merging #4027 (de24de1) into dev (0e8a18c) will increase coverage by 0.01%.
The diff coverage is 86.66%.

Flag
Coverage Δ

*Carryforward flag

msal-angular
96.31% <ø> (ø)

msal-browser
87.74% <86.66%> (+0.03%)
:arrow_up:

msal-common
85.08% <ø> (ø)

Carriedforward from 0e8a18c

msal-core
76.66% <ø> (ø)

Carriedforward from 0e8a18c

msal-node
81.45% <ø> (ø)

Carriedforward from 0e8a18c

msal-react
94.17% <ø> (ø)

Carriedforward from 0e8a18c

*This pull request uses carry forward flags. Click here to find out more.

Impacted Files
Coverage Δ

...rc/interaction_client/StandardInteractionClient.ts
97.58% <86.66%> (+0.14%)
:arrow_up:

authors: codecov-commenter jasonnutter


text:
92 constand nd timeseries

current tests should pass but we can add some specific tests for this (after refactoring)
closes #92

Hello @CagtayFabry! Thanks for opening this PR.

In the file tests/asdf_tests/test_asdf_core.py:

Line 49:9: F841 local variable 'rot' is assigned to but never used

In the file weldx/asdf/tags/weldx/core/transformations/rotation.py:

Line 72:39: F541 f-string is missing placeholders

Do see the Hitchhiker's guide to code style

repo: BAMWelDX/weldx


text:
4m2 not fitting to gripper parts

I printed the gripper already and continued with the 4m2 part.
Unfortunately the 4m2 is bigger than the gripper hole distance.
The difference is: ~6mm the Distance between the inner screw holes of the 4m2 is 30mm, the distance between inner screw holes of the gripper is around 23.8mm
I downloaded the parts from thingiverse: https://www.thingiverse.com/thing:1693444/files

Okay i verified it with the files from here:
Bottom Plate Screw Hole Distance: 24mm
4M2 Screw Hole Distance: 30mm
So basically the mounting points of the gripper assembly and the gear assembly doesn't fit to each other.
The Gripper is already assembled and works.
According to my measurements, the 4m2 part fits to 4m with a 2-3mm tolerance. 48.2mm is the 4m2 printed x2
The hole of 4m2 is rather tight under around 7.9mm might be a bit tight for a 8mm rod.


text:
"Save" button margins on Create Event page

The margins of the "Save" button seems wrong on the Create Event page. Fix the margins so that it looks more natural. As of now, it has no space between the button and the bottom of the page.

 "Save" button margins on the Create Event page

repo: BCStudentSoftwareDevTeam/celts


text:
Enhanced 'import_users.py' script using logging module

Fixes issue #1053
We enhanced the import_users.py script by integrating Python's logging module to provide detailed and descriptive log messages. These improvements will make the cron.log file significantly more informative, aiding in monitoring the script's execution and diagnosing any issues that arise from crontab scheduled tasks.

We have upgraded the import_users.py script by incorporating Python's logging module to generate comprehensive and detailed log messages. This enhancement will make the cron.log file much more insightful, facilitating better monitoring of the script's performance and easier troubleshooting of any issues that emerge from the crontab-scheduled tasks.

This PR seemed to be pretty straightforward. I saw obvious problems with the logging, and I ran unit testing for this. This was not client side, so I saw no need to try to break it on that end. I would approve this PR.

This fixes issue #1053

I was running this in a devcontainer and I couldn't check this script with tracy but I looked over it and everything looks to be good. Let's give this one final run before we merge it.

authors: CollegeStevenLN Ndiayem14 ali-ramazani bledsoef hoerstl


text:
still the similar datasets head

@baimingze still the header of the similar datasets is in some cases even when we don't have similar datasets.

+1 problem solve in the web-service


text:
Add ICGC Storage System support

Need to add support so Toil workflows in Toil-Scripts can read/write data to the ICGC Storage System we're using on AWS.  Also, this includes supporting the automatic creation of the JSON used by the metadata tracking system.

Start with RNASeq-CGL

Superseded by BD2KGenomics/toil-lib#69

authors: briandoconnor jvivian


text:
Crash when last candle die vs bots

Both release & debug.
Playing vs 4 bots.
Placing candle and kill it yourself 3 times crashes

It only crashes if the bots have interacted with the candle it seems

Fixed with #232

authors: Discojanne whalemane

repo: BTH-StoraSpel-DXR/SPLASH


text:
Add logout functionality

This is just invalidating the cookie on the client side
Add expiry in the login response for easier automatic invalidation
Removing unnecessary imports

@CLPRATT this has some of the additional work that you had called out for the menu changes.

Addresses final condition of #16


text:
Pandawan fails with errors in /proc/sys

The end of my bootup process looks like this:
init started: BusyBox v1.19.4 (2024-06-06 11:43:25 Europe)
/etc/rc.d/rc.sysinit: line 6: can't create /proc/sys/kernel/panic: nonexistent directory
/etc/rc.d/rc.sysinit: line 8: can't create /proc/sys/vm/panic_on_oom: nonexistent directory
Error reading execve argument
Error reading execve argument
Error reading execve argument
Error reading execve argument
Error reading execve argument
Error reading execve argument
Error reading execve argument
Error reading execve argument
qemu: uncaught target signal 11 (Segmentation fault) - core dumped
qemu: uncaught target signal 11 (Segmentation fault) - core dumped
Segmentation fault

I tried running Pandawan with the qemu arguments firmadyne.procfs=1 and firmadyne.procfs=0, and both gave me this identical error trace. I was wondering if this was a known issue for certain firmwares.

Does this also occur during the network configuration phase? In that case Pandawan uses stock QEMU to emulate the firmware and deduce its networking (like Firmadyne and FirmAE). Check the qemu.initial.serial.log file if the emulation progrssed beyond this point. If not then either its (Py)PANDA's fault or Pandawan's fault. Try Pandawan's emulation without any of Pandawan's plugins enabled (i.e., -p "") and see if this occurs again. If it does, then there might be an issue with PANDA.

authors: iangelak reteps

repo: BUseclab/Pandawan


text:
Float estimator

Based on #51, so this pull request should be rebased on master once that request is finished.
This moves _current_state to be a float-based struct, represents some additional float-based turbotrig library wrappers.
I also cranked up the flash UART speed to 921600 because I'm tired of waiting forever to flash this thing.
I tested it on my REV2 board, the estimator seems to be working great.  I found a typo in the matrix exponential method, so pitch is estimated correctly when using that method (we weren't using it previously)

Thanks for cleaning up those things.  I like all your changes.  Are we good to merge?

Yeah so I think the estimator is in pretty good shape now. The controller hasn't been updated to match, so it's broken right now. Do we want to clean that up as part of this pull request, or do it later?

No, I'm changing all the command structs to floats first, then I'll get the controller working

Cool. So... merge then?

Hahah, already done.

Haha just saw that. Sweet.

authors: dpkoch superjax


text:
WebXR camera positioning API

It should be possible to position the XR camera in any 3D position in space.
The current state allows a developer to re-position the webxr container (the parent of the camera and the controllers), but in order to do that correctly the user must also know the height of the user and other factors. There is also an issue when querying the current camera's position and direction, as the camera itself will always return 0,0,0 as its local position due to the way the rig-cameras are working.
This is a proposed API extension to the WebXR camera that will be able to position the container based on floor meshes, ignoring the user's current height. The camera should be the "single point of truth" when it comes to its own position.
The API will allow:

Simple (re)positioning of a user to a point of reference, with an optional floor / height map to use for height:

function setPosition(pointInSpace: Vector3, pointOfReference?: Vector3 | Node, options? : {
  space: Space = Space.LOCAL,
  setHeightFromXRFrame: boolean = true,
  // further options TBD
}): void;

Get the camera's current global and local position using the XFrame information sent by XR (average of both eyes)
The ability to query the global position of a single eye
The ability to check the camera's current direction
Active position-copy from native (non-XR) to XR cameras and vice versa

@nbduke - please comment if anything is missing here

So if I call setPosition(point, Vector3.Zero(), { space: Space.LOCAL }), is that just the same as setPosition(point, undefined, { space: Space.WORLD })?

@nbduke - Sorry for a late answer!
Yes, world coordinates will be including the container, local will change the camera alone. Internally, both will change the container but either relative to the current position or not.

Teleporting (position changes of the user) will be done using https://www.w3.org/TR/webxr/#xrreferencespace-interface
the setPOsition function will create a new relative reference space.

merged and tested

@RaananW
Using xr.baseExperience.camera.leftCamera and xr.baseExperience.camera.rightCamera does not seem to work anymore. Which is strange, because xr.baseExperience.camera.rigCameras returns an Array with two cameras, but xr.baseExperience.camera.rigCameras.length returns 1 :confused: .
https://www.babylonjs-playground.com/#LUYXFU

Hi @stefanvanherwijnen , just got back and looking into this.
About the first example, this is what I get:

Which is what is expected right before the first frame was rendered.
I understand that you want a kind of callback that will be triggered when everything was set, and I agree that it is important.
This - https://www.babylonjs-playground.com/debug.html#LUYXFU#3 should be working, but due to the fact that I use the first frame to update the camera's position from the old camera, it doesn't . But I believe I have found a way to make it work correctly. Want to create a github issue so we can track it internally?
Thanks!

Thanks, I opened a new issue.
You're right that I'm looking for a callback that is triggered when everything is set, Before the recent changes the IN_XR state was such that everything XR related was ready and working.

authors: RaananW nbduke stefanvanherwijnen


text:
Post process: Add support for uniform buffers

See https://forum.babylonjs.com/t/how-to-use-glsl-uniform-struct-with-webgpu/46071

Please make sure to label your PR with "bug", "new feature" or "breaking change" label(s).
To prevent this PR from going to the changelog marked it with the "skip changelog" label.


text:
GS BBox Sync

Follow up

https://forum.babylonjs.com/t/scaling-issue-with-gaussian-splatting/50924/4

Please make sure to label your PR with "bug", "new feature" or "breaking change" label(s).
To prevent this PR from going to the changelog marked it with the "skip changelog" label.

Snapshot stored with reference name:
refs/pull/15147/merge
Test environment:
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/15147/merge/index.html
To test a playground add it to the URL, for example:
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/15147/merge/index.html#WGZLGJ#4600
Links to test babylon tools with this snapshot:
https://playground.babylonjs.com/?snapshot=refs/pull/15147/merge
https://sandbox.babylonjs.com/?snapshot=refs/pull/15147/merge
https://gui.babylonjs.com/?snapshot=refs/pull/15147/merge
https://nme.babylonjs.com/?snapshot=refs/pull/15147/merge
To test the snapshot in the playground with a playground ID add it after the snapshot query string:
https://playground.babylonjs.com/?snapshot=refs/pull/15147/merge#BCU1XR#0

WebGL2 visualization test reporter:
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/15147/merge/testResults/webgl2playwright/index.html

Visualization tests for WebGPU (Experimental)
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/15147/merge/testResults/webgpuplaywright/index.html

authors: CedricGuillemet bjsplat