aadHttpClientFactory.getClient stopped working

Category

[] Question
[x] Bug
[] Enhancement

Expected or Desired Behavior
I'm calling an http trigger azure function protected by AzureAD authentication with the following code:
this.context.aadHttpClientFactory.getClient(adAppId).then((client: AadHttpClient): void => {         client.post(apiUrl, AadHttpClient.configurations.v1, postOptions).then((mailResponse: HttpClientResponse) => {                   }).catch(error => {           reject("Error sending email " + error);         });       }, err => reject(err));
this.context is of type ListViewCommandSetContext.
Observed Behavior
I got this error TypeError: Cannot read property 'call' of undefined when it tries to execute client.post(apiUrl, AadHttpClient.configurations.v1, postOptions).
The extension was already tested and installed, everything was working fine until today and nothing has changed in the extension code. The azure function and the app registration used for the authentication didn't changed too.
The framework version is 1.9.1
Thanks

I'm experiencing the same issue with an extension that was previously working fine. Experiencing in 2 seperate tenants.

Same here, using an Application Customizer.
We are stuck by this error in the production environment...

I am experiencing the same issue; my SPFX extension based on 1.9.1 build's successfully, but when the API call initiated to my Azure Function that uses AAD authentication, I end up with the error

Cannot read property 'getClient' of undefined

My code is as per the below,
const functionUrl: string = 'https://<URL>';
const cobAadFunctionsAppClientId: string = 'https://<URL>/api/Get';

  public getCurrentUser(): Promise<any> {
    return new Promise<any>((resolve, reject) => {
      this.context.aadHttpClientFactory
        .getClient(cobAadFunctionsAppClientId)
        .then((client: AadHttpClient) => {
          client.get(functionUrl, AadHttpClient.configurations.v1)
          .then((response: HttpClientResponse) => {
            return response.json();
          })
          .then((jsonResponse: any) => {
            resolve(jsonResponse);
          })
          .catch((error) => {
            reject(error);
          });
        });
    });
  }

Developer in the ticket below had similar issues then reported that it's fixed. I cant figure out how it was fixed
The issue with calling Azure AD secured API by using AadHttpClient. #4840

@ozie02 Need to see more of your code... that error says aadHttpClientFactory is undefined.
There's also an issue with your code... you aren't using the correct client ID when you call getClient(). You do not use the full URL to the endpoint. This should be the URI of the resource, like this:

The issue you reference also used the wrong value for this method. As I mentioned in that one, you shouldn't use the GUID for the URI of the URL.

@gianlud4s this is a dupe of #4840... that issue was resolved.

@andrewconnell appreciate your instant response; the error wasn't clear to me that it might be related to my client ID and URI URL configuration. I will reevaluate my Azure function configuration and try to figure out the solution.
Many thanks

Apologies for taking this long. I went back and figured out what could have been wrong with either my code or my Windows Azure Function hosting configuration. Back then, the issue was related to attempting to consume this.content object from a child component, which didn't extend BaseApplicationCustomizer.
So now, I am passing this.context from the Root component which extends BaseApplicationCustomizer to the child component (Root --> ReactHeader --> ReactPanel --> ReactOrders) which requires to make authentication and the API call. Unfortunately, I am still facing the same issue, I have seen other examples about this working but all of them are implemented as a Webpart rather than an Extension.
I have uploaded my two sample codes. The first example is a webpart consuming my Azure Function and rendering data accordingly (this is to ensure the web service configuration is healthy) and the second example I have an Extension attempting to use the same web service via child component but failing to authenticate.
On the other hand, for some reason after upgrading the extension to SPFX 1.9.1, the generated files are showing in the source folders.
Webpart Source Code: https://github.com/ozie02/Learning/tree/master/Webpart/contoso-api
Extension Source Code: https://github.com/ozie02/Learning/tree/master/Extensions/contoso-api-extension
I appreciate it in advance if anyone could help?


The individual values of the optimizers are not displayed

The individual values of the optimizers are not displayed, when I run the script I see the following:
Traceback (most recent call last):
File "/pythonskripts/huawei.py", line 50, in
for x in client.get_optimizer_stats(client.get_device_ids()['Inverter']):
~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^
KeyError: 'Inverter'
Script huawei.py:

output is: {'Optimizer': 'NE=xxxxxxxxxx'}
Note:
I have hardcoded plant_ids = ["NE=xxxxxxxxxx"] in the script

Based on this, you'd have to adapt the code as follows:
for x in client.get_optimizer_stats(client.get_device_ids()['Optimizer']):
  print(x)

Thanks for the tip, unfortunately I still don't get any data from the optimizers with the change.


Symbols server page returning 404

Describe the bug
I've uploaded a nupkg and a snupkg but I can't consult or autoload the symbols via the url in the documentation.
on page https://www.bagetter.com/docs/Installation/docker it is stated http:///api/download/symbols
but it always returns 404
root@buildmachine:/root # dockerps
bagetter/bagetter:latest           bagetter                    Up 21 minutes  2024-06-12 16:58:56 +0200 CEST <IP_ADDRESS>:4444->8080/tcp, :::4444->8080/tcp

√root@buildmachine:/root # curl http://localhost:4444/api/v2/symbol -kv
*   Trying <IP_ADDRESS>:4444...
* Connected to localhost (<IP_ADDRESS>) port 4444 (#0)
> GET /api/v2/symbol HTTP/1.1
> Host: localhost:4444
> User-Agent: curl/7.81.0
> Accept: */*
>
* Mark bundle as not supporting multiuse
< HTTP/1.1 404 Not Found
< Content-Length: 0
< Date: Wed, 12 Jun 2024 13:26:21 GMT
< Server: Kestrel
<

To Reproduce
Steps to reproduce the behavior:
root@buildmachine:/agu/bagetter # find data
data
data/baget.db
data/packages
data/packages/packages
data/packages/packages/factsdataobjects
data/packages/packages/factsdataobjects/4.9.9
data/packages/packages/factsdataobjects/4.9.9/factsdataobjects.4.9.9.nupkg
data/packages/packages/factsdataobjects/4.9.9/factsdataobjects.nuspec
data/packages/symbols
data/packages/symbols/factsdataobjects.pdb
data/packages/symbols/factsdataobjects.pdb/7dc8b3ca5b174bd1a0a6400423cf5b90ffffffff

root@buildmachine:/agu/bagetter # cat bagetter.yml
version: '3.8'

services:
  nuget-server:
    image: bagetter/bagetter:latest
    container_name: bagetter
    restart: unless-stopped
    ports:
      - "4444:8080"
    env_file:
      - bagetter.env
    environment:
      - BaseURL=https://bagetter.foo.com/
    volumes:
      - ./data:/data

root@buildmachine:/agu/bagetter # cat bagetter.env
# The following config is the API Key used to publish packages.
# You should change this to a secret value to secure your server.
ApiKey=foo
Storage__Type=FileSystem
Storage__Path=/data/packages
Database__Type=Sqlite
Database__ConnectionString=Data Source=/data/baget.db
Search__Type=Database
AllowPackageOverwrites=true
Symbols__Enabled=true

Expected behavior
Not a 404 but a usefull where symbols could be looked up

curl http://localhost:4444/api/v2/symbol will not work, there's no GET mapped to that endpoint.
In your case, what if you run curl http://localhost:4444/api/download/symbols/factsdataobjects.pdb/7dc8b3ca5b174bd1a0a6400423cf5b90?
Will test this soon, just don't have the time right now.

Thank you for your response.
It does not return a result no. Here some curls
√root@buildmachine:/agu/bagetter # curl  http://localhost:4444/api/download/symbols/factsdataobjects.pdb/7dc8b3ca5b174bd1a0a6400423cf5b90 -v
*   Trying <IP_ADDRESS>:4444...
* Connected to localhost (<IP_ADDRESS>) port 4444 (#0)
> GET /api/download/symbols/factsdataobjects.pdb/7dc8b3ca5b174bd1a0a6400423cf5b90 HTTP/1.1
> Host: localhost:4444
> User-Agent: curl/7.81.0
> Accept: */*
>
* Mark bundle as not supporting multiuse
< HTTP/1.1 404 Not Found
< Content-Length: 0
< Date: Thu, 13 Jun 2024 07:20:48 GMT
< Server: Kestrel
<
* Connection #0 to host localhost left intact

√root@buildmachine:/agu/bagetter # curl  http://localhost:4444/api/download/symbols/factsdataobjects.pdb/7dc8b3ca5b174bd1a0a6400423cf5b90ffffffff -v
*   Trying <IP_ADDRESS>:4444...
* Connected to localhost (<IP_ADDRESS>) port 4444 (#0)
> GET /api/download/symbols/factsdataobjects.pdb/7dc8b3ca5b174bd1a0a6400423cf5b90ffffffff HTTP/1.1
> Host: localhost:4444
> User-Agent: curl/7.81.0
> Accept: */*
>
* Mark bundle as not supporting multiuse
< HTTP/1.1 404 Not Found
< Content-Length: 0
< Date: Thu, 13 Jun 2024 07:21:43 GMT
< Server: Kestrel
<
* Connection #0 to host localhost left intact

√root@buildmachine:/agu/bagetter # curl  http://localhost:4444/v3/symbol/factsdataobjects.pdb/7dc8b3ca5b174bd1a0a6400423cf5b90 -v
*   Trying <IP_ADDRESS>:4444...
* Connected to localhost (<IP_ADDRESS>) port 4444 (#0)
> GET /v3/symbol/factsdataobjects.pdb/7dc8b3ca5b174bd1a0a6400423cf5b90 HTTP/1.1
> Host: localhost:4444
> User-Agent: curl/7.81.0
> Accept: */*
>
* Mark bundle as not supporting multiuse
< HTTP/1.1 404 Not Found
< Content-Length: 0
< Date: Thu, 13 Jun 2024 07:20:26 GMT
< Server: Kestrel
<
* Connection #0 to host localhost left intact

√root@buildmachine:/agu/bagetter # curl -o factsdataobjects.4.9.9.nupkg http://localhost:4444/v3/package/factsdataobjects/4.9.9/factsdataobjects.4.9.9.nupkg
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  156k  100  156k    0     0  19.4M      0 --:--:-- --:--:-- --:--:-- 21.7M

√root@buildmachine:/agu/bagetter # curl  http://localhost:4444/api/download/symbols -v
*   Trying <IP_ADDRESS>:4444...
* Connected to localhost (<IP_ADDRESS>) port 4444 (#0)
> GET /api/download/symbols HTTP/1.1
> Host: localhost:4444
> User-Agent: curl/7.81.0
> Accept: */*
>
* Mark bundle as not supporting multiuse
< HTTP/1.1 404 Not Found
< Content-Length: 0
< Date: Thu, 13 Jun 2024 07:21:56 GMT
< Server: Kestrel
<
* Connection #0 to host localhost left intact

My ultimate goal would be to have the url of symbol server in visual studio to it's possible to automatically download uploaded symbols:

Hi All 👋
I've been looking at this issue and I believe I have found the problem.
The endpoint from which you are trying to request the symbol packages does not exist. The correct path would be /api/download/symbols/factsdataobjects.pdb/7dc8b3ca5b174bd1a0a6400423cf5b90ffffffff/factsdataobjects.pdb.

Note: the additional factsdataobjects.pdb on the end is part of the NuGet Api Schema and is whats requested by Visual Studio

This can be seen in the following file: https://github.com/bagetter/BaGetter/blob/087ca2079acd76ff00db194140fb7f23c2247f23/src/BaGetter.Web/BaGetterEndpointBuilder.cs#L63
In terms of setting using this symbol server with Visual Studio you can do as follows:

I tested this on my PC and the pbd gets downloaded as expected.
Hope this helps 😄

@vh54 does the solution by @mbaksh01 work for you?

I'm unable to answer as I did leave bagetter, partly because of this issue.
If I recall correctly I did try this suggestion unsuccesfully but I can't confirm it.
Thanks anyway @mbaksh01. For me this can be closed


chore(buttons): added missing unit test for btn-radio

added unit test to test for string literal values on btn-radio directive

Closing this for your good try.


@cython.infer_types(True) is not accepted in pure python mode

I have a function declaration like this:
@cython.boundscheck(False)
@cython.wraparound(False)
@cython.cdivision(True)
@cython.locals(seq="double[:]")
@cython.infer_types(True)
def isotonic_regression_inplace(seq):
  pass

I want to have this code working in pure python mode, but the infer_types is not recognized.

Ah, yes. Thanks for the report. There is a typo in Shadow.py. I'll fix it for 0.28.

Thank you for this very important tool!

Thanks for the tip about Shadow.py, I was able to fix this for now.


Embed images for presentation

The PnP team is an example of one team that is increasingly using CodeTour as one of the primary ways to present code. They requested to embed images to the tour steps to show tours as presentations.

Is this a duplicate of #18?


This is a issue

There are 2 PropertyDescriptors in PropertyDescriptorCollection, if PropertyDescriptor.Name is same, the IndexOf() always return the first one. Why?

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 09d672e1-f1b4-a6ba-be3d-939077d8a822
Version Independent ID: 6791dce7-e018-4ae9-1181-1ed94c0c16d1
Content: PropertyDescriptorCollection.IndexOf(PropertyDescriptor) Method (System.ComponentModel)
Content Source: xml/System.ComponentModel/PropertyDescriptorCollection.xml
Product: .net
GitHub Login: @dotnet-bot
Microsoft Alias: dotnetcontent

It seems that two PropertyDescriptors with the same Name and PropertyType are considered equal.* And since IndexOf works based on equality, if you have a collection with two equal PropertyDescriptors, IndexOf will return the first one for either of them.
This could probably be documented better,

* You can check that by running the following code:
class Foo
{
    public string Name { get; }
}

class Bar
{
    public string Name { get; }
}

…

var fooName = TypeDescriptor.GetProperties(typeof(Foo))[0];
var barName = TypeDescriptor.GetProperties(typeof(Bar))[0];

Console.WriteLine(ReferenceEquals(fooName, barName)); // False
Console.WriteLine(Equals(fooName, barName)); // True

@svick Thanks for replay. But I think PropertyDescriptor with the same name that are considered equal is not right, because PropertyDescriptor has member categroy or other members, if two PropertyDescriptor s has the same name, but the categroy is different, we use IndexOf return first one that I think it is wrong.

@Tony00700 If you think it's a bug, then I think your best option is to create an issue about that in the corefx repo.


Cherry-pick PR792

If a replica is thick then no rebuild space is required.. Ensure we don't overflow if allocated_bytes are larger than minimum required bytes (although this probably won't happen now that we short-circuit thick replicas..)

bors merge

bors merge

bors merge


Refactor Interop.manual.cs to follow coding conventions

Windows-specific OS APIs are not called on non-Windows now.
Fixes #6956

@dotnet-bot test this please

@dotnet-bot test this please

Thanks for taking the time to fix this!


Something Error In Guide

clike here and go to the Multiple select (bound to Array):
I can not multiple select.
Chrome 49.0.2623.75 m and Windows 10

ctrl + click to select multiple items

@yanxyz  Thx


Fact date column on fact screens

Would it be possible to add the 'freshness' of the facts that are displayed in the facts view as a new column in the table?
This would be useful in cases where puppet is not running as a daemon and you want to know if the data is 1 hour or 1 week old.
A similar column would be nice to have in the overview screen beside the report column.  Our environment pushes facts hourly but only runs pupet on demand and having an idea of fact freshness would again be great.

Hi @tparkercbn!
It should be possible as we have the fact’s value timestamp available in that view. The only thing is how to deal with the UI - to make it available if someone needs, make it discoverable but prevent information overload and not show it if not necessary. Any suggestions?


block.Record.IsForInternalUseOnly issue

hi,it's very strange ,at first everything is right. for example there are two chair entity from Chair Block.
then open autocad , find a block ,rename（for example newChair） and edit block many times, event insert more entitys.
The probelm is when I while print all blocks in the document ,yes, there is Block named newChair,
but if print all EntityList from all blocks including *Model Space, *U,or newChair Blocks,
there is no any newChair entity found.
Please help us!

I guess you are loading a DXF with netDxf that contains dynamic blocks, and they are not supported.
All blocks which name starts with '*' are used by AutoCad internally to represents different things, for example, the *D# are used by dimensions, the *T# by tables, and *U# are used by dynamic blocks. This is a copy of a discussion topic posted long ago in Codeplex that might clarify your doubts:

Blocks are renamed randomly
Hello... First thanks for the great effort
I am using netDXF library to load a dxf file that contain some blocks... When I open the drawing in Autocad, I have a block called "D-700-b". This is a dynamic block with custom attributes.
I use the following code to get the Block reference inserts as a List of DxfObject
DxfDocument dxf = DxfDocument.Load(filePath);
List<DxfObject> dxfObjects = dxf.Blocks.GetReferences("D-700-b");

dxfObjects return an empty list... after debugging I figured out that the block has been randomly renamed to "*U56" ... So, I changed the code to the following:
DxfDocument dxf = DxfDocument.Load(filePath);
List<DxfObject> dxfObjects = dxf.Blocks.GetReferences("*U56");

and dxfObjects return a list that contains 5 items which is true in the drawing
For the other blocks which are not dynamic blocks... there is no change in the original name
Do you have any idea why this is happening? Is there a workaround to get the original name? I want to be able to display the list of blocks with its' original name in a ListBox so that the user can pick his blocks by it's name
Edit: I uploaded the DXF so that you can check it
Thanks
Check7_Walls_Arcs_doors_purged.dxf
There is nothing wrong with it and it works as expected.
Imagine that you have a block with parameters, actions, and constrains. When you insert this block in the drawing it will point to it; but if, at any moment, you modified any of its parameters a new anonymous block definition will be created with the name *U#, where # is a positive integer. Additionally, its block record will store the handle of the original record in its extended data information.
See the method DynamicBlocks() in the TestDxfDocument project, it will show you how to access the handle of the original block record from the extended data of those "*U#" blocks. If you have any more questions about this open a new topic in the discussion forum, since I will close this issue.
Daniel
2016-06-06
Thank you... very good explanation :)
Mahmoud
2016-06-07
Closed #13517 | Created 2016-06-04 | Updated 2016-06-10

It works prefectly!!
By following your sample project,the block entity are found correctly.
Thank you so much for the help!


feat: Re-exporting Spectrum ButtonGroup

resolves https://github.com/deephaven/web-client-ui/issues/2015
BREAKING CHANGE: Renamed @deephaven/components ButtonGroup to SplitButtonGroup

Shouldn't touch ButtonOld, I have no expectation of it having compatibility. I should just refactor it out entirely.

Did you mean to do that on Button?

@dsmmcken I'm planning to do this on Button as well. ButtonOld just happened to be the first attempt since it is used in the Styleguide where I was testing.

What's the reason for the rename? Don't see anything here or in the ticket

What's the reason for the rename? Don't see anything here or in the ticket

It's to allow us to re-export Spectrum ButtonGroup. I updated the ticket description with details.


Trigger: 'enter' does not disable search on 'key-up'

Issue Type

[x] Bug

Specs
What version are you using?
<EMAIL_ADDRESS><EMAIL_ADDRESS>What browser?
Firefox 5.0.2, Edge 41.16299.402.0, Chrome 67.0.3396.18
Expected Behavior
With :search-options="{ enabled: true, trigger: 'enter'}" enabled search should only occur when 'enter' key is pressed.
Actual Behavior
The table searches on 'key-up'.
Steps to Reproduce the Problem

Create a VGT instance with :search-options="{ enabled: true, trigger: 'enter'}"
Start typing a search query
Table will be searched before pressing enter key.

jsfiddle
https://jsfiddle.net/Niallfitzy1/hvzdo39r/

thank you for bringing this up. It is now fixed in v2.4.4. your jsfiddle should now be working.
closing.


Test latex equations

Looks very nice, but it seems to display the latex input instead of rending the equations (as intended by latex) ?
Sorry if you got two copies of this post, I was trying to fix a typo in the previous version.

Not sure which mechanism is used here.
Maybe it is really raw-latex code, then it would not be possible.
But if the author is using some of the HTML math extensions, it should work:
https://www.sphinx-doc.org/en/master/usage/extensions/math.html
But we should test and document it.
https://groups.google.com/g/sphinx-users/c/r4ahhcagNK0/m/PMZ9EDJYAQAJ

Found the link for the discussion you're referring to: https://groups.google.com/g/sphinx-users/c/r4ahhcagNK0/m/PMZ9EDJYAQAJ
But that's not me.

Ohh ok, sorry, I remove your name from the issue. :/

Ran into this issue with our local documentation. Currently there seems to be no native math implementation for html in sphinx, just with mathjax or rendering as image. Cause image rendering is not so good (e.g. due to zooming/scaling in some html viewers used to display documentation) a better solution should be provided.
As it seems to fully ship mathjax in the html build seems to be no good idea. to have it locally installed for the pdf builds seems ok.
Due to your knowledge: Is there any other (maybe simpler) solution available, maybe with another directive?

Seems to be this could be solved by
https://github.com/jbms/sphinx-immaterial/pull/251
in future.
See also https://github.com/sphinx-doc/sphinx/issues/6092

Using  https://pypi.org/project/sphinx-mathjax-offline/ Math output is working for the html builder.
Simplepdf Builders seems not to add
<script async="async" src="_static/mathjax/tex-chtml.js"></script>

to the html

Finlaly solved by
adding / using
 extensions + =  'sphinx.ext.imgmath'
 imgmath_image_format = 'svg'

Math output is properly shown in html and could also be scaled properly in html, singlepagehtml and weasyprint pdf.

Thanks for the investigation and the excellent report.
At least we should document this somewhere in the docs.
Do you think we should force the installation of sphinx.ext.imgmath and inject the needed configuration on our own when a simpledpdf build gets invoked?

At least we should document this somewhere in the docs.
I think documentation would be necessary, also an example solution in the demo pdf
Do you think we should force the installation of sphinx.ext.imgmath and inject the needed configuration on our own when a simpledpdf build gets invoked?
I think not. Reasons for me are:

the provided solution may not satisfy some poeple or they have already a solution with mathjax
Regarding the issues sphinx itself will provide a better solution for html5 builds, so the extension would not be needed in future sphinx releases.

Documentation of the solution in the docs and demo config would be enough for me.

This was the fix for jupyter-book + mathjax:
https://github.com/executablebooks/jupyter-book/pull/1774/files
with the problem described in the opening issue:
https://github.com/executablebooks/jupyter-book/issues/1705
I guess a similar could apply here?
The solution from there was:
            # set the below flag to always to enable maths in singlehtml builder
            if app.builder.name == "singlehtml":
                app.set_html_assets_policy("always")

I haven't tried to do this yet, and I haven't even used simplepdf before (I came across this while checking for the solution in various builders), but thought it might help...

@kreuzberger I am facing similar issue described here.
Can you please suggest the changes you did?

@kreuzberger I am facing similar issue described here.
If I use imgmath_image_format = 'svg', the output I see is: 1 to 2^{31} - 1 in both HTML and PDF. Although this fixes the issue in PDF, I am trying to achieve the output without {}.

Added an equation like yours to my test document, everything seems to look good. (The equation is just a little to high, would be better to have it centered to the textline). But the rendering is ok. So maybe more or less a bug in the versions your may use.
I am using sphinx-7.2.6 with Python 3.11 and newest simplepdf (builded from source, not pypi).


[Hub Generated] Review request for Microsoft.MarketpkaceNotifications to add version stable/2021-03-03

This is a PR generated at OpenAPI Hub. You can view your work branch via this link.
Changelog
Please ensure to add changelog with this PR by answering the following questions.

What's the purpose of the update?

[x] new service onboarding
[ ] new API version
[ ] update existing version for new feature
[ ] update existing version to fix swagger quality issue in s360
[ ] Other, please clarify

When you are targeting to deploy new service/feature to public regions? Please provide date, or month to public if date is not available yet.
When you expect to publish swagger? Please provide date, or month to public if date is not available yet.
If it's an update to existing version,  please select SDKs of specific language and CLIs that require refresh after swagger is published.

[ ] SDK of .NET (need service team to ensure code readiness)
[ ] SDK of Python
[ ] SDK of Java
[ ] SDK of Js
[ ] SDK of Go
[ ] PowerShell
[ ] CLI
[ ] Terraform
[ ] No, no need to refresh for updates in this PR

Contribution checklist:

[x] I commit to follow the Breaking Change Policy of "no breaking changes"
[x] I have reviewed the documentation for the workflow.
[ ] Validation tools were run on swagger spec(s) and errors have all been fixed in this PR. How to fix?

If any further question about AME onboarding or validation tools, please view the FAQ.
ARM API Review Checklist

[x] Ensure to check this box if one of the following scenarios meet updates in the PR, so that label “WaitForARMFeedback” will be added automatically to involve ARM API Review. Failure to comply may result in delays for manifest application. Note this does not apply to data plane APIs, all “removals” and “adding a new property” no more require ARM API review.

Adding new API(s)
Adding a new API version
[ ] Ensure to copy the existing version into new directory structure for first commit (including refactoring) and then push new changes including version updates in separate commits. This is required to review the changes efficiently.
Adding a new service

[x] Please ensure you've reviewed following guidelines including ARM resource provider contract and REST guidelines. Estimated time (4 hours). This is required before you can request review from ARM API Review board.

[ ] If you are blocked on ARM review and want to get the PR merged with urgency, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.

Breaking Change Review Checklist
If there are following updates in the PR, ensure to request an approval from Breaking Change Review Board as defined in the Breaking Change Policy.

[ ] Removing API(s) in stable version
[ ] Removing properties in stable version
[ ] Removing API version(s) in stable version
[ ] Updating API in stable or public preview version with Breaking Change Validation errors
[ ] Updating API(s) in public preview over 1 year (refer to Retirement of Previews)

Action: to initiate an evaluation of the breaking change, create a new intake using the template for breaking changes. Addition details on the process and office hours are on the Breaking change Wiki.
Please follow the link to find more details on PR review process.

/azp run unifiedPipeline

For new services we recommend to utilize RPaaS. Please check out and use resources in the armwiki.
Since this is a completely new RP you need to discuss the scenarios with the armapireview team first. Please send a scenario overview with how API fitin the scenario flow to the armapireview team to make progress on this.

Hi @habenefr
Would you please update the PR according to the feedback of ARM otherwise the PR will be blocked to be merged?
Thanks,

Hi @habenefr Please fixed the failed check first.

/azp run


testplan(testbed): update infra details of cluster

https://docs.google.com/spreadsheets/d/1syOP1vKLV0prd5LeH8vmKwY5ubv3Kn3MbkQihKizVho/edit#gid=1083661825

@ajeshbaby has sent a PR on this.


Add feature to use pre-generated onion keys

implemented generation from a passphrase using PBKDF. it's pretty enough for now.


Delivery policy and TriggerEngine revision proposal

Motivation
AMQP triggers and HTTP triggers are treated differently: an AMQP trigger generates a message which is sent to an exchange, and the handling of delivery errors is up to the third-party client. Instead, a HTTP trigger generates a message and must also handle the delivery of that message.
Therefore, AMQP and HTTP triggers should be two separate things, and HTTP triggers should be provided with a policy to address possible errors.
Definitions

Routing rule: the old AMQP trigger. Mechanism for the delivery of an AMQP message to an exchange upon the occurrence of specified conditions .
Trigger: the old HTTP trigger. Mechanism for the generation of actions upon the occurrence of specified conditions. An action delivers a HTTP message to a recipient.
(Delivery) Policy: structured description of how data from triggers are delivered to the recipient.

Description
A policy is an attribute of a trigger. The main focus of the policy is error handling upon delivery of messages. The payload is described by the action of the trigger. Each policy has a unique name.
Due to constraint on the dimensionality of data, it is not possible for a policy in the general case to assure that a message will reach its destination (e.g. messages are to be sent to a non-existing resource). However, if the destination is available, policy guarantee the reception of the message - unless explicitly stated otherwise.
The main attributes of a policy are the error_handling to adopt if a message does not reach destination and the retry_queues to use if messages are to be resent in case of failed delivery.
Main components

Error handling is done by a list of handlers. Each handler refers to one or more delivery errors and describes the retreat strategy Astarte should take when they occur.
It is possible to select a range of error numbers (e.g. HTTP client errors: [400 ... 499]) and explicitly exclude some in the range.
There are two possible retreat strategies: none (ignore the error) or retry. In case of retrying, an associated retry queue must be added. The default retreat strategy is none on all errors.

The retrying queue is a space containing messages whose delivery has failed and must be resent.
For memory reason, the size of the retrying queue must be fixed and therefore is not optional. This gives an upper bound on the amount of space a retry queue uses.
Every message in a retry queue can be resent up to a specified number of times.
If the number of messages in the retry exceeds the size, the maximum capacity policy specifies what messages to delete. The maximum capacity policy is one between fifo (default) and lifo.
The order in the retrying queue can be based on the timestamp of the first or the last delivery failure.
it is possible to have more than one handler related to the same queue. In this case, all messages in the queue have the same number of retry times, as specified by the queue.

Syntax
Policy:
{
    "name" : <string>,
    "error_handlers" : [<handler>],
    "retry_queues" : [<string>]
}

If error_handlers if empty, then messages failing to reach destination are lost.
Handler:
{
    "error_type" : [<int>] | '[' <int> '...' <int> ']' | "*",
    "excluding" : [<int>],
    "retreat_strategy" : "none" | "retry",
    "retry_queue": <string>
}

The error_type list or range must contain only valid HTTP errors. Every error not included in an handler range defaults to none repeat strategy. "*" is a shortcut for all errors.
excluding is optional.
If retreat_strategy is not retry then retry_queue must not be set.
Retry queue:
{
    "name" : <string>,
    "retry_times" : <int>,
    "order" : "first_failure" | "last_failure",
    "maximum_capacity" : <int>,
    "mc_policy" : "fifo" | "lifo"
}

Each message in the queue will be resent up to retry_times, unless the maximum_capacity is exceeded.
deletion_order describes which timestamp to use for ordering the queue, either the one of the first_failure or the one of the last_failure.
maximum_capacity sets the size of the retrying queue, while mc_policy describes the policy for deletion of exceeding messages.
Examples
The simplest policy:
{
    "name" : "simple_policy",
    "error_handlers" : [],
    "retry_queues" : []
}

This policy ensures no guarantee of good delivery for any HTTP error.
A more complex policy:
{
    "name" : "complex_policy",
    "error_handlers" : [
            {
                "error_type" : "*",
                "excluding" : [402, 403, 404],
                "retreat_strategy" : "none"
            },
            {
                "error_type" : [404],
                "retreat_strategy" : "retry",
                "retry_queue": "queue_1"
            },
            {
                "error_type" : [402, 403],
                "retreat_strategy" : "retry",
                "retry_queue": "queue_2"
            }
        ],
    "retry_queues" : [
            {
                "name" : "queue1",
                "retry_times" : 5,
                "order" : "first_failure",
                "maximum_capacity" : 500,
                "mc_policy" : "fifo"
            },
            {
                "name" : "queue2",
                "retry_times" : 1,
                "order" : "last_failure",
                "maximum_capacity" : 100,
                "mc_policy" : "lifo"
            }
        ]
}

If there occurs an HTTP error outside the range [402, 403, 404], then Astarte will do nothing.
If an HTTP 404 error occurs, then Astarte will try to resend the message up to 5 times, using a retry queue holding up to 500 messages, ordered by timestamp of the first failure;
if more messages are present in the queue, the oldest ones will be deleted, even if they were resent less than 5 times.
If an HTTP 402 or 403 error occurs, then Astarte will try to resend the message up 1 time, using a retry queue holding up to 100 messages, ordered by timestamp of the last failure;
if more messages are present in the queue, the newest ones will be deleted, even if they were resent less than 1 time.

A possible implementation may revise the current delivery of messages from Data Updater Plant to Trigger Engine.
At the moment, all HTTP data are published by Data Updater Plant to the astarte_events exchange in an unique trigger_engine queue. Trigger Engine then synchronously processes each message in order and acks the broker.
A revised implementation might allow for more than one AMQP queue (possibly user-defined), and the possibility of nacks to track failed delivery upon HTTP errors.
This means that retry_queues are to be mapped to AMQP queues, therefore some proposed attributes (e.g. "order" and "mc_policy") might not be implemented. In general, retry_queue attributes would be more similar to RabbitMQ queues'.
Some combination of policy and queues (1-to-1, n-to-m) are to be discussed.
Revised Syntax (up-to the type of policy/queue combination)
Policy: unchanged.
Handler:
    "error_type" : [<int>] | '[' <int> '...' <int> ']' | "*",
    "excluding" : [<int>],
    "retreat_strategy" : "none" | "retry",
    "message_ttl" : <int>

message_ttl is optional and sets an expiration time in milliseconds for each message.
Queue:
    "name" : <string>,
    "retry_times" : <int>,
    "maximum_capacity" : <int>,
    "mc_policy" : "default" | "reject_publish",
    "increase_priority_on_failure" : "true" | "false",
    "max_priority_level" : <1 ... 10>

A RabbitMQ queue either discards failed messages or re-enqueues them near their original position (see here).
The default behavior if the queue capacity is exceeded is to delete oldest messages, but it may be set to reject new messages until publication is again possible (see here). This might not be a desiderable feature, as newer messages may be lost.
There is no built-in tracking of retry_times, so this will probably be implemented adding a retry_time field to the message.
It could be useful to increase the priority of failed messages in order to resend them asap; in that case, a maximum priority level must be set (see here). Note, however, that this may alter the order of messages.
Possible combinations of policies and queues
Assuming 1,000 messages with 10 KB of payload, a  RabbitMQ queue with Astarte's internal messages could use up to 10 MB of memory (see here).  In a production environment, we may assume 30-50 installed Astarte interfaces.

1-to-1: a policy, a queue

Pro: can easily estimate an upper bound on memory usage, order of messages is preserved;
Con: each retried message has the same number of retry_times ad the same message_ttl.

1-to-many: a policy, many queues

Pro: the client can customize retry_times and message_ttl for any kind of error;
Con: client message reception could not be in order, there is no bound on memory usage.

many-to-many: policies and queues are not strictly related

Pro: Customizable as the 1-to-many case, there could be an hardcoded upper bound on the number of queues;
Con: Need an installation procedure (and overhead) for queues, client message reception could not be in order.

Other interesting points:

it should be possible to install a policy in the same way an interface is installed, so that interfaces can point to policies without declaring them at the same moment;
"increase_priority_on_failure"  and "max_priority_level" have no interesting use cases;
"reject_publish" policy is useless;
Probably Astarte Cloud can use more than ~50 interfaces;
A simple implementation of queues without using RabbitMQ may be considered.

Revised proposal
Definitions

Routing rule: the old AMQP trigger. Mechanism for the delivery of an AMQP message to an exchange upon the occurrence of specified conditions.
Trigger: the old HTTP trigger. Mechanism for the generation of actions upon the occurrence of specified conditions. An action delivers a HTTP event to a recipient.
Events: messages sent by a trigger.
(Delivery) Policy: structured description of how data from triggers are delivered to the recipient.
(Event) queue: the queue of events to be delivered using a policy.

Description
The main focus of the policy is error handling upon delivery of events. The payload is described by the action of the trigger. Each policy has a unique name and must be installed like and interface.
A trigger must specify an installed policy in the required policy field.
Due to constraint on the dimension of data, it is not possible for a policy in the general case to assure that an event will reach its destination (e.g. events are to be sent to a non-existing resource).
A policy describes what to do in case of delivery errors and how undelivered events are enqueued.
A policy is mapped to one queue, and queues are not shared among policies.
Main components

Error handling is done by a list of handlers. Each handler refers to one or more delivery errors and describes the retreat strategy Astarte should take when they occur.
It is possible to select a range of error numbers (e.g. HTTP client errors: [400 ... 499]) and explicitly exclude some in the range.
There are two possible retreat strategies: none (ignore the error) or retry. In case of retrying, events will be enqueued . The default retreat strategy is none on all errors.

The events queue is a space containing events to be delivered.
Due to memory bounds, the size of the events queue must be fixed and therefore is not optional. This gives an upper bound on the amount of space.
Every event in the event queue can be resent up to a specified number of times.
If the number of messages in the retry exceeds the size, the maximum capacity policy specifies what messages to delete.
It is possible to specify an event TTL to further lower the space requirement of the queue.

Syntax
Policy:
{
    "name" : <string>,
    "error_handlers" : [<handler>],
    "retry_times" : <int>,
    "maximum_capacity" : <int>
}

If error_handlers if empty, then events failing to reach destination are lost.
retry_times is optional, but required if an handler specifies the retry retreat strategy.
Each event in the queue will be resent up to retry_times, unless the maximum_capacity is exceeded. In that case, older events will be deleted from the queue until the number of enqueued events is below maximum_capacity.
Handler:
{
    "error_type" : [<int>] | '[' <int> '...' <int> ']' | "*",
    "excluding" : [<int>],
    "retreat_strategy" : "none" | "retry",
    "event_ttl" : <int>
}

The error type list or range must contain only valid HTTP errors. Every error not included in an handler range defaults to none repeat strategy. "*" is a shortcut for all errors.
excluding and event_ttl are optional.
Examples
The simplest policy:
{
    "name" : "simple_policy",
    "error_handlers" : [],
    "maximum_capacity" : 100
}

This policy ensures no guarantee of good delivery for any HTTP error. At most 100 events can be in the queue at any time.
A more complex policy:
{
    "name" : "complex_policy",
    "error_handlers" : [
            {
                "error_type" : "*",
                "excluding" : [402, 403, 404],
                "retreat_strategy" : "none"
            },
            {
                "error_type" : [402, 403, 404],
                "retreat_strategy" : "retry",
               "event_ttl" : 1000
            }
        ],
    "retry_times" : 5,
    "maximum_capacity" : 100
}

If there occurs an HTTP error outside the range [402, 403, 404], then Astarte will do nothing. At most 100 events can be in the queue at any time.
If an HTTP [402, 403, 404] error occurs, then Astarte will try to resend the event up to 5 times.
If more than 100 events are present in the queue, the oldest ones will be deleted (even if they were resent less than 5 times in the case of  HTTP [402, 403, 404] ).
Implementation details
The implementation will revise the current delivery of messages from Data Updater Plant to Trigger Engine.
At the moment, all HTTP data are published by Data Updater Plant to the astarte_events exchange in an unique trigger_engine queue. Trigger Engine then synchronously processes each message in order and acks the broker.
The implementation  will map each event queue to an AMQP queue on the astarte_events exchange. A good suggestion could be to allow the possibility of nacks to track failed delivery upon HTTP errors.
Event queue attributes can be mapped to RabbitMQ queues', with the exception of retry_times that will be implemented over RabbitMQ.

See also #117

Closed by https://github.com/astarte-platform/astarte/pull/583.


[phenyl-interfaces] index.js should be automatically generated.

[ ] Combine files in decls/* into one file.
[ ] Remove ImportDeclaration statements from the code.
[ ] Add import * from 'mongolike-operations'
[ ] Remove // @flow within the file

achieved by migration to TypeScript


Rate limiting when deleting branches and remotes

Related: https://github.com/microsoft/vscode-pull-request-github/issues/6050
I'm trying to delete a lot of branches and remotes:

From the logs it looks like I'm quickly being rate limited without user feedback:
delete.log
Additionally eventually (3-5 minutes later?) I got this error:

When I try again I see it only got through a small amount of branches:

This is happening because of a git related file being locked.

Can this be repro-ed with just one branch? Are there minimal repro steps for this?


Replace raw pointers inside avl_tree.h with smart pointers

Appart from that, I would like some help porting the predecessor and successor member functions to the other data structures as well.

@MatusKysel I thought you might be interested in this.

Hi,
What do you have in mind here? unique_ptr should be preferred over shared_ptr, I suppose.
Do you already foresee challenges?

@MatthiasKauer In general, whatever is faster is better. I guess we could check the performance using shared pointers in comparison to using unique pointers. I have also tagged @MatusKysel who converted entirely the raw pointers for 3 of the data structures to smart pointers.

I have chosen shared_ptr, because binary trees are recursive by definition and in that case, I think shared ownership is better. Of course shared_ptr has some overhead compared to unique_ptr, but I do not think that it has significant cost on overall performance.

@MatusKysel I see what you mean. Do you know if it is possible to port the successor and predecessor functions to the other data structures that use smart pointers? Is this possible? I tried doing that but totally failed 😆 . I am new to the C++11 standard, still reading C++ Primer 5th edition.

I did not have a lot of time lately, but there you go PR


registry management extension native basic auth for private registry

We just purchased the portainer Registry Management Extension and we are having trouble with the credentials.
I tried it with http basic auth behind traefik first. I could login with docker login, as well as publish images via drone CI, only portainer seems not be able to connect to the registry if provided with the correct credentials.
After that I tried the registry nativ http basic auth. Also no luck. I can log in from everywhere with the credentials, again only portainer cant login.
Any suggestions why that could be? Do I need to pass some headers trough traefik, or is this a know problem with a fix on the way?

After some troubleshooting it appears that this issue is related to domain name resolution in your environment and is not a bug. Using a localhost domain will resolve to <IP_ADDRESS> inside the container which is causing the problem.
We were able to troubleshoot this by using this test setup:

Add the domain and IP to /etc/hosts on our local machine
Add the below lines to the Portainer config in the docker-compose file:
extra_hosts:

"registry.domain:IP"

By using a proper domain you will not have a problem :)


Display inline

How do I display the unordered list with an inline style?

Not sure if I understand the question. You can just style the rendered html with css?

Well, I've attempted to apply the style to the unordered list in as many ways as I could find, but it seems that the list is not being created like one would assume. I am able to replace the  tags in the template with anything I want and achieve the same output. For instance, I can replace them with  and see the same feed.

Can you please provide a code snippet? Which URL are you loading. Which styling do you want?

Please reopen the ticket if you want to


elixir translation finished

@webcrazy Can you convert Zawgyi to unicode please :smile_cat:

Sorry I thought it was unicode. hee hee


Doubly linked list

Doubly linked list implementation in C++

Doubly linked list implementation in C++

open issue and add issue no.


Remove node

May be a log message to state the node is being removed could be nice

@brunoleon done

@jhesketh done

I don't think it helps to resolve fundamental issue, because removing node also could have a bug. And it will cause again problem in the next tests.
We should just skip the test from the execution if we know it is buggy to ensure the do no harm for the next cases which are reusing the cluster.

I don't think it helps to resolve fundamental issue, because removing node also could have a bug. And it will cause again problem in the next tests.
We should just skip the test from the execution if we know it is buggy to ensure the do no harm for the next cases which are reusing the cluster.

Maybe we should move this to the end of test_basic so that any bad state it ends up in is irrelevant.

I don't think it helps to resolve fundamental issue, because removing node also could have a bug. And it will cause again problem in the next tests.
We should just skip the test from the execution if we know it is buggy to ensure the do no harm for the next cases which are reusing the cluster.

Maybe we should move this to the end of test_basic so that any bad state it ends up in is irrelevant.

It is useless and takes extra time, which is bad for integration tests. The faster tests give you result is the best.


Reverted new render API

This PR reverts 2977d9e, d91549bd6c2b87e2562081cb6f5f4bb151e918b7 and 1fc72bb, which describe the new render API. This lead to a lot of confusion because the new render API is not released yet (see https://github.com/openai/gym/issues/2825, https://github.com/openai/gym/issues/2881 and the questions on discord). I think we should revert these changes for now and reapply them when the new release is out (I guess someone can just git revert this commit then). What do you think, @younik , @Pseudo-Rnd-Thoughts ?
Please don't merge until discussed with @younik.

Also, once the new render API is released we should remember to update the code snippet on the landing page

I absolutely agree, thanks for addressing it

@younik this can be changed back now, right? Do you want to do the honors? (Also, there is no versioning for the docs yet, right?)

@Markus28 done, thanks!


Effects are messed up when the text is a rapidly changing value.

Creating a line of text using the string function makes the text Effecs messed up.

Not a bug. You should not use Scribble for rapidly changing strings, and documentation makes this very clear.

I had the doubt, but I couldn't find the warning in the documentation.


[BREAKING] Runs encodeURI after pretty printing URIs

Also extract the functions into a Printer module (makes sure compilation fails so we don't silently break people's code).

Wouldn't we want to leave the query part out of the value that gets encodeURI'd, since it's already encodeURIComponent'ed?

oh noez, of course... Do you think we shouldn't encode the query part and just do it all at once in the full printers?

Maybe the change should be to add encodeURI to printHierPart, printRelativePart, etc. instead...

I'm not sure. I was under the impression that encodeURI is for everything up to the query, and encodeURIComponent is for the query/hash.

Plus we'll need to add the corresponding decode in the parsers for these values.

Superseeded by #24


need to use the newest version of speechbrain in Chapter10_TTS_.ipynb

For the TTS task to work using speechbrain, you must install the most recent version of speechbrain:
BRANCH = 'develop' !python -m pip install git+https://github.com/speechbrain/speechbrain.git@$BRANCH
Then, replace
from speechbrain.pretrained import EncoderClassifier
with
from speechbrain.inference.classifiers import EncoderClassifier

The same applies to chapter10_Speech_Enchancement.ipynb. Change
from speechbrain.pretrained import SpectralMaskEnhancement
to
from speechbrain.inference.enhancement import SpectralMaskEnhancement

updated


Add support for watering reports.

Add support for watering reports.

Looks like there's merge conflicts that need to be addressed.

Resolved the merge conflict.

Don't land it yet. I think you were right in that I'm going to remove some of the fields and classes to only return the data that is potentially useful.

I have also started working on the migration from legacy api to new graphql api here: https://github.com/thomaskistler/home-assistant-core/pull/1. Before I start fixing the tests, please let me know whether this approach looks ok.

I have also started working on the migration from legacy api to new graphql api in Home Assistant here: thomaskistler/home-assistant-core#1. Before I start fixing the tests, please let me know whether this approach looks ok.

That looks really similar to what I had been working on: https://github.com/dknowles2/ha-core/commit/1b7bfcc527e09c64f887938b30e87c179c3b9754
Not sure if I'll have time in the next few weeks to get that reviewed, so feel free to send the PR upstream.

Ok. I will merge the two and send them upstream.
Also, if you could cut a December release for pydrawise, that would be great. The most recent changes are required to integrate into HA.


Linux build

Hi , We are trying to integrate Lyra into our webrtc server running on linux and compiled using Make .
I have tried to generate linux build by using the below command
bazel build --enable_platform_specific_config lyra:lyra_encoder

But it generates only .so and .a files in bazel-bin folder . How to generate include folders too ?
Also i tried to add include files in a separate folder and linked liblyra_encoder.so and other liblyra_*.so files , but it throws undefined reference error in absl,glog libraries .
How to get a single lyra.so file with all other libraries linked  ( Like a output from cmake/make)?

Thanks for mentioning this.  I believe your question is about exporting the headers/.so for external usage.  Indeed the headers are not packaged for external use.  The headers are referenced in the BUILD file, but that just makes them visible to bazel targets.
If you intend to build outside of bazel, I think you'll have to manually copy the headers for the interfaces that you are interested in.  Alternatively, make a bazel target  to write a C library that wraps your desired functionality as in the android NDK example to get around C++ ABI issues and use that externally.

I have the same problem as you. Can you share your solution？


Update guest toolchain to 1.77

Feature
We need to update the guest toolchain for 1.77
Motivation
to stay up to date with rust's release cadence.
Implementation
Rebase relevant changes to upstream rust and kick off a build

done


Kurt cutajar devel

Current coverage is 49.03% (diff: 97.89%)

Merging #439 into devel will increase coverage by 0.51%

@@              devel       #439   diff @@
==========================================
  Files           184        189     +5
  Lines         18015      18205   +190
  Methods           0          0
  Messages          0          0
  Branches       2520       2534    +14
==========================================
+ Hits           8740       8926   +186
- Misses         8842       8844     +2
- Partials        433        435     +2

Powered by Codecov. Last update 6d4714c...dc9a67a


Don't focus the launcher on loading a seed

When loading a seed with the game already running, the launcher being focused at all is disruptive.
It would feel better if the game was focused directly, without the launcher flickering briefly.
Possibly connected to #33

Fixed oriGive


Function name misc.util.get_uuid() is confusing

UUID is a well-known identifier standard with a format like 123e4567-e89b-12d3-a456-426655440000. This function does not generate UUIDs.

Sure, you are right. It's definitely a confusing and misleading identifier. I'll fix it soon.

I marked that as deprecated and we can gradually change to get_unique_task_id instead.


Obfuscator complains about arrow function syntax

The obfuscator is complaining about arrow function syntax such as:
componentDidMount = async () => {...
or
setStuff = (i) => {...
Is there an option to make this syntax acceptable?
Thank you,
~Todd

espree parser currently does not support class-fields proposal
https://github.com/eslint/espree#what-ecmascript-2019-features-do-you-support
I think because of this proposal currently in stage 3.
So, you should transform this code with babel before obfuscation.


Feature Request: Support for any SAML-enabled IdP

Feature Request
Although not officially supported, I was able to integrate my team's SAML-enabled IdP (JumpCloud) with Rancher through the AD FS connector, only to find out that it's just plain SAML and has no special properties related to Active Directory. This is a great security feature for us.
However, when my users login today through SSO, they see a button saying "Log In with AD FS". This is, obviously, confusing.
I'd like to request that the "AD FS" connector's name is changed to "SAML 2.0", and an input box is added to describe the Identity Provider's name. Or, just add another button next to it named that way so that existing ADFS users are not impacted. Maybe something like this?

We test only the providers we support, and support only the providers we test, because they may have variations or may eventually have provider-specific additional features.
"Hijacking" a supported provider config to talk to something else may or may not work now, and may or may not continue to work in future versions.  But it's not something we're going to encourage.
(And if we were going to, it would be a separate something like UnsupportrdGenericSamlConfig provider)

But SAML 2.0 is a generic protocol and is not (and should not be) vendor-specific. Limiting this protocol to a handful of vendors seems peculiar at best.
By looking in the source code, it seems that all SAML-enabled providers are eventually based on the crewjam/saml library which does exactly that. Why not just create a "vanilla" connector which does not impose any preset values?

That's all lovely in theory but being a protocol doesn't mean they all support the same parts of it or in the same way.  We had "generic LDAP" in 1.x and a constant stream of people not able to configure it properly because different options are needed for different implementations and server preferences.  We have enterprise customers who we need to provide actionable support for, so like I said we support only specific things and test those things.
Standards doesn't help with any integration outside of the actual protocol.  For example GitHub is "just OAuth" but what makes it actually useful is using the token acquired from the OAuth flow to talk to their API, which there are no standards for, to do things like search users/groups.  Right now none of the SAML providers have that kind of integration, but that doesn't mean they will never have it.
Yes, obviously all the SAML clients are using a SAML library.  A "vanilla connector would be what I said before:

(And if we were going to, it would be a separate something like UnsupportrdGenericSamlConfig provider)

What's the chance of getting a JumpCloud auth provider created and supported?  I'm working with both companies (Rancher and JumpCloud) and per JumpCloud I'm the 3rd person this moth that's talked with them about integrating with Rancher.

According to https://github.com/rancher/rancher/commit/d9f1432cdad6d9abdee93a0d1ad4f04334631d15 adding extra SAML2-compatible provider is more of marketing move, no more no less. So Adding "UnsupportrdGenericSamlConfig" as mentioned above would solve the issue, meanwhile it seems that configuring any-SAML2-provider-as-Okta-or-any-other would do

Also, it would be great to support LDAP+SAML2 at the same time, to sync directory from LDAP while allow to login using SSO

I too would like to request either jumpcloud or generic.

Yeah, I support a generic SAML provider too. It gets quite difficult to setup SSO (remember: the first "S" stands for "Single") with these dependencies all over the place.
Please consider tackling this issue. Additionally you could add a disclaimer that you don't offer any support to these unsupported backends. That's fine.

I have worked ad a IAM vendor and mostly with SAML. I don't see a clear reason why only supporting specific SAML providers besides commercial reasons. provider-specific additional features is not a SAML standard and should not be used offcourse.
This is also why SAML is here in the first place. Even if you implement the bare minimal of the SAML spec(excluding 'artifact binding' for example ) you support most of the use cases.

hi Everyone,
have the same problem at the momen. Would like to implement SAML in Rancher but found out there is no "generic" saml support.
Our software supply chain consist from different products, like for example Artifactory, who  support SAML out of the box without a fuzz.
So i would really see in Rancher the support for SAML.

Just as a note for this issue - it would be great if signed responses or the private was not required.  The reason is that integration with providers such as Google SSO or AWS SSO do not allow you download or set the private key that is used so it's impossible to integrate these with Rancher. A generic provider that allowed us to set these settings would be great a fix.


Fixes to tackle suggestions before publishing

It fixes this items: https://github.com/jenkins-infra/repository-permissions-updater/issues/3940#issuecomment-2148337834

Code owners fixed
Links in readme fixed. Keep github issues link because we will manage the issues from Gtihub.
Fix specified GAV coordinages (renaming)
Change inline JS to not use onclick
Bom version match jenkins version
Use docker java api
Remove all dependencies from pom.xml, that plugin doesn't depend upon.

@phillipcurl Please can you verify that this PR tackle all the items in https://github.com/jenkins-infra/repository-permissions-updater/issues/3940#issuecomment-2148337834


python3Packages.pip: unreproducible vendored .exe files

Building this package twice does not produce the bit-by-bit identical result each time, making it harder to detect CI breaches. You can read more about this at https://reproducible-builds.org/ .
Fixing bit-by-bit reproducibility also has additional advantages, such as avoiding hard-to-reproduce bugs, making content-addressed storage more effective and reducing rebuilds in such systems.
Steps To Reproduce
nix-build '<nixpkgs>' -A ... --check --keep-failed

You can use diffoscope to analyze the differences in the output of the two builds.
To view the build log of the build that produced the artifact in the binary cache:
nix-store --read-log $(nix-instantiate '<nixpkgs>' -A ...)

Additional context
https://arnout.engelen.eu/nixos-iso-minimal-r13y/diff/ffa37e4adce50539c65c4062f803e2c6d34fda37c2061b039db029123d3942e9-a645067984e633a18d01c8de9eb2a0929ef47d6586e1b92e7cd878c24415aa0d.html
Also seen in https://github.com/NixOS/nixpkgs/issues/192728

Why does a Linux package contain Windows PE binaries in the first place? What are they for?


Update to v22.1

Checklist

[x] Used a personal fork of the feedstock to propose changes
[ ] Bumped the build number (if the version is unchanged)
[x] Reset the build number to 0 (if the version changed)
[x] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[ ] Ensured the license file is being packaged.

Updated the package to v22.1
I understand this is needed before changes relating to https://github.com/grimme-lab/xtb-python/issues/82 can be done

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@awvwgk apologies, did not see this happening in #21


Overwrite user configuration by default values when editing services

Describe the bug

Steps to reproduce

Create a service using webservice template.
Edit the service, delete the value of CPU Request and Memory Request and save.
Edit the service again, and check the configuration.

Result

It will display the default value.

Expected behavior

Show user configuration.
Environment

Walrus version: f94d57de903a925f2bd72d34b5aa1eaf8213f6ad
UI version: dev-9a85369

Additional context
Add any other context about the problem here.

Verified in main


proofs: disable internal parallelism

There is a default parallel feature in ark-groth16 that uses rayon. We should:

have the default be no parallelism, i.e. we specify no features where we use ark-groth16 - this can be used in wasm environments
add a new feature parallel that does use the arkworks internal parallelism - this can be enabled by pd and pcli

Related decaf377 change: https://github.com/penumbra-zone/decaf377/pull/50
released as part of decaf377 0.3.0
Related decaf377-rdsa change: https://github.com/penumbra-zone/decaf377-rdsa/pull/15
Related frost377 change: https://github.com/penumbra-zone/frost377/pull/3


Fix handling of native union types containing null

Closes #567
TypeHandler wraps native types in Nullable if they allow null, even if it's a union with null being one of the types. I figured a fix in NullableTypeMapper would be needed anyway, in case someone wrongfully does the same, and haven't touched the TypeHandler to avoid recursively iterating through types in it.

By the way, code is not formatted correctly because phpcs still fixes way too much files for this small PR, and there's no GitHub action workflow for it.
I'll add a github workflow and fix the codestyle in a separate PR, so let's hold this before codestyle is merged

@oojacoboo Nevermind, I can't get phpcs --tab-width=4 to work, even though it's officially supported and is in the docs, it still doesn't replace tabs with spaces.
What do you think of php-cs-fixer? It's very similar to php codesniffer but at least it fixes tabbing. It has a ton of fixers with a lot of configuration and ready rule sets - for PSR2, PSR12, Symfony and Doctrine annotations. It's also the one used by symfony/symfony.
If you don't mind, I can PR php-cs-fixer improvement as well. It's mostly plug-n-play.

@oprypkhantc thanks for this.
On php-cs-fixer, it can be a great tool.  I haven't dug into the phpcs configuration with this repo much.  Can't you just use php-cs-fixer on the phpcs.xml.dist config?  I don't see any reason to add the dependency to the repo when the tool can be used as needed by the developer.

@oojacoboo php-cs-fixer can't be used with phpcs's config, unfortunately. They have their own format with their own set of fixers & configuration.
Right now the code style is not enforced in any way - it's skipped in the Github workflow, so anything can be mistakenly merged with an invalid codestyle. Having a consistent fixer/checker would be nice for newcomers like me who are used to different codestyle.
I'll PR a change of phpcs to php-cs-fixer then, if you don't like - feel free to decline it.


Disable focus ring

A great job with this repository!
How to remove focus ring from a TextInput ?.

Hi.  You can use enableFocusRing={false} to hide the focus ring.

Thanks @tom-un


[WIP] Shared Vms/Templates API

Opening this only to facilitate discussion - please ignore :grin:
@miq-bot add-label wip

first request :)   could you add an entry showing the /api/shared_vms/ entrypoint, intended usage, actions, etc.   Thanks !!

@abellotti see https://github.com/ManageIQ/manageiq/pull/14108#issue-210929944 - this is very early days and is subject to change - I'll add more info when this starts to become more concrete. Thanks!


'php_beautifier' is not recognized

Command failed: ....'php_beautifier' is not recognized as an internal or external command,
operable program or batch file.

There was problems using php_beautifier so  Atom beautify has switched to using PHP CS Fixer. See #242 and https://github.com/FriendsOfPHP/PHP-CS-Fixer


Improve NPC saving

Avoid resetting the whole config, instead just remove unknown npcs

Hopefully it fixes the issue!
Thank you very much ❤


Add roswell.

Motivation for this change
Although roswell isn't much use as a lisp implementation manager on nix, it nevertheless can be useful.
I have wrapped it, so that the correct lisp implementation is chosen.
It would be great if some people test it and report if it works.
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[ ] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[ ] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 120763 at 07107bb6 run on x86_64-linux 1

1 package built successfully:

roswell

4 suggestions:

warning: unused-argument
Unused argument: python3.
Near pkgs/development/roswell/default.nix:1:26:
  |
1 | { lib, stdenv, fetchgit, python3, coreutils, automake, gnumake, gnum4,
  |                          ^

warning: unused-argument
Unused argument: openssl.
Near pkgs/development/roswell/default.nix:2:52:
  |
2 | autoconf, curl, autoreconfHook, makeWrapper, sbcl, openssl}:
  |                                                    ^

warning: unused-argument
Unused argument: coreutils.
Near pkgs/development/roswell/default.nix:1:35:
  |
1 | { lib, stdenv, fetchgit, python3, coreutils, automake, gnumake, gnum4,
  |                                   ^

warning: missing-phase-hooks
configurePhase should probably contain runHook preConfigure and runHook postConfigure.
Near pkgs/development/roswell/default.nix:13:3:
   |
13 |   configurePhase = "sh bootstrap && ./configure --prefix $out";
   |   ^

Thank you for the feedback. I've slimmed down the derivation and rebased everything.

And please squash everything into 2 commits once you're done:

maintainers: add Valentin Boettcher
roswell: init at <IP_ADDRESS>

And please squash everything into 2 commits once you're done:
* `maintainers: add Valentin Boettcher`

* `roswell: init at <IP_ADDRESS>`

done, and thank you very much for reviewing and improving :]

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-already-reviewed/2617/370

@OPNA2608  Sorry, I've accidentally re-requested a review from you.


feat(nifs): impl protogalaxy::poly::compute_G

Motivation
Close #260
Overview

Implementation of compute_G via tree_reduce
Multithreaded implementation of fold_witness
Single-threaded fold_plonk_challenges implementation (there are not so many items, so there is no sense to use rayon)
An implementation of multi_product, analogous to itertools, but without Clone.
An implementation of try_multi_product, analogous to itertools, but with processing Result in Item. This allows not to finish processing when the first error occurs.
Allocate the folded_trace module to control the size of protogalaxy::poly

The algorithm separated from the context is here, for your reference
https://gist.github.com/rust-play/89ae0609d30feb22d2585a6f43ccc07e

I did not take into account that PlonkWitness is not a matrix, in general it is not hard to correct by making the indexes trickier
I will postpone this task for now due to higher priority, however, the fix will be not very large

Benchmark data is still being collected, but there doesn't seem to be any code left there, I'm going back to this task

@chaosma
If you don't understand this big iterator, let me know, we may need a call to write a good doc to it together. It's really not very intuitive, but I had to sacrifice understandability for optimality

@chaosma If you don't understand this big iterator, let me know, we may need a call to write a good doc to it together. It's really not very intuitive, but I had to sacrifice understandability for optimality

I think I got it. Other comments are addressed.  I leave a new comment there.


Can't run the script on Linux - character encoding issue?

I wasn't able to run the script directly. Strange, I didn't see any problem in the .sh file code, but bash kept complaining:
$ ./debloater_for_linux.sh
bash: ./debloater_for_linux.sh: /bin/bash^M: bad interpreter: No such file or directory

When I forced bash to interpret the file anyway (making the first hashbang line redundant) I got this:
$ bash ./debloater_for_linux.sh
./debloater_for_linux2.sh: line 2: $'\r': command not found
./debloater_for_linux2.sh: line 3: syntax error near unexpected token `$'\r''
'/debloater_for_linux2.sh: line 3: `ascii_intro()

I suspect a problem with character encoding.
Can anyone confirm this?
I am using Manjaro KDE, and got the files by cloning the repository with git.

I hope so you have given executable permission to the script file, if so there are some troubleshooting options available here. Link . Try it and let me know.

If troubleshooting also fails, just remove those asci arts and input stuffs and copy those commands (starting with ./adb for uninstall or disable) in separate files, grant executable permission and try it out!


wrong connection color for support flanges

Reported by dzimmer on 23 Oct 2013 12:47 UTC
Whereas normal 1D translational mechanical connectors have a green element in the background and hence cause a green connection line, the support flanges do not have a green element in background and cause black connection lines. This is probably a small bug.
We suggest to get rid of this inconsistency by adding a green element in the background of the support connector to cause the same color for connection lines for all 1D transl. elements.
Thanks

Migrated-From: https://trac.modelica.org/Modelica/ticket/1331

Comment by beutlich on 16 May 2014 15:10 UTC
Should be fixed by f711abbc22c2afd6c03ba504451b0ff65905c731 and 7b94924429facca9757574e799e414b3c07ea291 as duplicate of #1353.

Modified by beutlich on 16 May 2014 18:47 UTC

Modified by beutlich on 16 May 2014 18:48 UTC


Breaking change in 5.2.0 around class specificity

Reproduction
https://codesandbox.io/s/sc-specificity-breaking-change-75952?file=/src/App.tsx
Steps to reproduce
Open the codesandbox and change the version from 5.1.1 to 5.2.0 and observe the color change.
SC used to output one single class when overriding a styled component like this, but in 5.2.0 they show up as 2 separate classes, which changes the specificity in this scenario.

I have the same issue but in a different scenario, using the & operator:
Reproduciton
https://codesandbox.io/s/sc-nested-not-updating-90job?file=/src/App.tsx
Steps to reproduce
Test the code sandbox in styled-component version 5.1.1
When clicking the button in app, it should correctly change color
Test the code sandbox in styled-component version 5.2.0
When clicking the button in app, it changes color once and never again.
It's in the changelogs that the self-reference was reworked, due to this PR: #3236
So maybe the feature in the codesandbox is deprecated or something?

Not sure if it's the same issue, but I'm getting classes name collisions in version 5.2.0 onwards. This happens when I display multiple variants of the same styled component. By variant, I mean that each rendered instance passes different props and those props influence the generated CSS rules.

I had to go back to 5.1.1 to get this to work:

If it's helpful, here's a snippet from deep inside the styled component:
    ${Checkbox}:not(:checked) + & {
        ${darkOrLight({
            dark: (theme) => `background: ${theme.color.gray1};`,
            light: (theme) => `background: ${theme.color.gray3};`,
        })}
    }

    ${Checkbox}:checked + & {
        ${({scColor}) => cssThemeColors({background: scColor})}

        &::after {
            transform: translateX(${forSize(({widthPx, heightPx}) => widthPx - heightPx)}px);
        }
    }

    ${Checkbox}:not(:checked):not(:disabled):hover + & {
        ${darkOrLight({
            dark: theme => `background: ${tint(0.3, theme.color.gray1)};`,
            light: theme => `background: ${shade(0.1, theme.color.gray3)};`,
        })}
    }

    ${Checkbox}:checked:not(:disabled):hover + & {
        ${({scColor}) => darkOrLight({
            dark: theme => `background: ${tint(0.3, theme.color[scColor])};`,
            light: theme => `background: ${shade(0.1, theme.color[scColor])};`
        })}
    }

Helpers:
const defaultThemeTemplate = constant(''); // from lodash/constant

export function darkOrLight<PROPS extends {}>({
    dark = defaultThemeTemplate,
    light = defaultThemeTemplate,
}: {
    dark: ThemeTemplate<PROPS>;
    light: ThemeTemplate<PROPS>;
}) {
    return css<PROPS>`
        ${({theme}) => isTheme(theme) ? (
            theme.isDark ? dark(theme) : light(theme)
        ) : css<PROPS>`
            ${light(lightTheme)}

            @media (prefers-color-scheme: dark) {
                ${dark(darkTheme)}
            }
        `}
    `;
}

export function cssThemeColors(colors: Colors) {
    return css`
        ${({theme}) => isTheme(theme) && theme.color !== undefined ? (
            Object
                .entries(colors)
                .map(([key, color]: [string, ThemeColor]) => `${key}: ${theme.color[color]};`)
        ) : css`
            ${
                Object
                    .entries(colors)
                    .map(([key, color]: [string, ThemeColor]) => `${key}: ${lightTheme.color[color]};`)
            }

            @media (prefers-color-scheme: dark) {
                ${
                    Object
                        .entries(colors)
                        .map(([key, color]: [string, ThemeColor]) => `${key}: ${darkTheme.color[color]};`)
                }
            }
        `}
    `;
}

function isTheme(theme: unknown): boolean {
    return typeof (theme as Theme)?.id === 'string';
}

Some types for context:
type ThemeColors = {
    link: string;
    text: string;
    invertedText: string;
    blue: string;
    brown: string;

    // etc...
}

type ThemeColor = keyof ThemeColors;

type Colors = {
    [key: string]: ThemeColor;
}

type ThemeTemplate<PROPS extends {}> = {
    (theme: DefaultTheme): FlattenInterpolation<ThemedStyledProps<PROPS, DefaultTheme>> | string;
}

type Theme = {
    id: string;
    isDark: boolean;
    color: ThemeColors;
}

The gist of it is that it the CSS is somewhat parameterized and dynamic.

Downgrading does seem to resolve the immediate issue, but I don't know what I am giving up by doing this.
Has anyone come up with a workaround that doesn't involve downgrading?

This looks like intended behaviour to me. styled(X) where X = styled.tag folds in on itself, which means that the new component becomes a combination of all rules. This then causes the colour after the media query to take precedence over the media query.


Monika keeps repeating herself.

Monika keeps repeating herself.

This should be fixed with 1.6.2, please download the latest zip or just run update.bat.

This showed up after I ran update.bat. Any Ideas how to fix this?

Please show the terminal output when you ran update.bat, maybe a wrong update.

HEAD is now at d5e0f55 Merge pull request #70 from Rubiksman78/dev
Der Befehl "rm" ist entweder falsch geschrieben oder
konnte nicht gefunden werden.
Collecting git+https://github.com/openai/whisper.git (from -r requirements.txt (line 9))
Cloning https://github.com/openai/whisper.git to c:\users\grafik\appdata\local\temp\pip-req-build-9bh7l9kg
Running command git clone --filter=blob:none --quiet https://github.com/openai/whisper.git 'C:\Users\GRAFIK\AppData\Local\Temp\pip-req-build-9bh7l9kg'
Resolved https://github.com/openai/whisper.git to commit e8622f9afc4eba139bf796c210f5c01081000472
Installing build dependencies ... done
Getting requirements to build wheel ... done
Preparing metadata (pyproject.toml) ... done
Collecting playwright~=1.31.0
Using cached playwright-1.31.1-py3-none-win_amd64.whl (28.8 MB)
Collecting IPython~=8.10.0
Using cached ipython-8.10.0-py3-none-any.whl (784 kB)
Collecting tensorflow~=2.11.0
Using cached tensorflow-2.11.1-cp38-cp38-win_amd64.whl (1.9 kB)
Collecting opencv-python~=<IP_ADDRESS>
Using cached opencv_python-<IP_ADDRESS>-cp37-abi3-win_amd64.whl (38.2 MB)
Collecting transformers~=4.26.1
Using cached transformers-4.26.1-py3-none-any.whl (6.3 MB)
Collecting Pillow~=9.4.0
Using cached Pillow-9.4.0-cp38-cp38-win_amd64.whl (2.5 MB)
Collecting SpeechRecognition~=3.9.0
Using cached SpeechRecognition-3.9.0-py2.py3-none-any.whl (32.8 MB)
Collecting tk~=0.1.0
Using cached tk-0.1.0-py3-none-any.whl (3.9 kB)
Collecting bitsandbytes~=0.37.0
Using cached bitsandbytes-0.37.2-py3-none-any.whl (84.2 MB)
Collecting numpy==1.23.0
Using cached numpy-1.23.0-cp38-cp38-win_amd64.whl (14.7 MB)
Collecting PyAudio
Using cached PyAudio-0.2.13-cp38-cp38-win_amd64.whl (164 kB)
Collecting pyee==9.0.4
Using cached pyee-9.0.4-py2.py3-none-any.whl (14 kB)
Collecting greenlet==2.0.1
Using cached greenlet-2.0.1-cp38-cp38-win_amd64.whl (190 kB)
Collecting typing-extensions
Using cached typing_extensions-4.7.1-py3-none-any.whl (33 kB)
Collecting decorator
Using cached decorator-5.1.1-py3-none-any.whl (9.1 kB)
Collecting stack-data
Using cached stack_data-0.6.2-py3-none-any.whl (24 kB)
Collecting matplotlib-inline
Using cached matplotlib_inline-0.1.6-py3-none-any.whl (9.4 kB)
Collecting colorama
Using cached colorama-0.4.6-py2.py3-none-any.whl (25 kB)
Collecting jedi>=0.16
Using cached jedi-0.19.0-py2.py3-none-any.whl (1.6 MB)
Collecting pygments>=2.4.0
Using cached Pygments-2.16.1-py3-none-any.whl (1.2 MB)
Collecting prompt-toolkit<3.1.0,>=3.0.30
Using cached prompt_toolkit-3.0.39-py3-none-any.whl (385 kB)
Collecting traitlets>=5
Using cached traitlets-5.9.0-py3-none-any.whl (117 kB)
Collecting pickleshare
Using cached pickleshare-0.7.5-py2.py3-none-any.whl (6.9 kB)
Collecting backcall
Using cached backcall-0.2.0-py2.py3-none-any.whl (11 kB)
Collecting tensorflow-intel==2.11.1
Using cached tensorflow_intel-2.11.1-cp38-cp38-win_amd64.whl (266.3 MB)
Collecting h5py>=2.9.0
Using cached h5py-3.9.0-cp38-cp38-win_amd64.whl (2.7 MB)
Collecting six>=1.12.0
Using cached six-1.16.0-py2.py3-none-any.whl (11 kB)
Collecting grpcio<2.0,>=1.24.3
Using cached grpcio-1.57.0-cp38-cp38-win_amd64.whl (4.3 MB)
Collecting tensorflow-io-gcs-filesystem>=0.23.1
Using cached tensorflow_io_gcs_filesystem-0.31.0-cp38-cp38-win_amd64.whl (1.5 MB)
Collecting gast<=0.4.0,>=0.2.1
Using cached gast-0.4.0-py3-none-any.whl (9.8 kB)
Collecting wrapt>=1.11.0
Using cached wrapt-1.15.0-cp38-cp38-win_amd64.whl (36 kB)
Collecting google-pasta>=0.1.1
Using cached google_pasta-0.2.0-py3-none-any.whl (57 kB)
Collecting keras<2.12,>=2.11.0
Using cached keras-2.11.0-py2.py3-none-any.whl (1.7 MB)
Collecting protobuf<3.20,>=3.9.2
Using cached protobuf-3.19.6-cp38-cp38-win_amd64.whl (896 kB)
Collecting astunparse>=1.6.0
Using cached astunparse-1.6.3-py2.py3-none-any.whl (12 kB)
Collecting packaging
Using cached packaging-23.1-py3-none-any.whl (48 kB)
Collecting setuptools
Using cached setuptools-68.1.2-py3-none-any.whl (805 kB)
Collecting tensorflow-estimator<2.12,>=2.11.0
Using cached tensorflow_estimator-2.11.0-py2.py3-none-any.whl (439 kB)
Collecting tensorboard<2.12,>=2.11
Using cached tensorboard-2.11.2-py3-none-any.whl (6.0 MB)
Collecting libclang>=13.0.0
Using cached libclang-16.0.6-py2.py3-none-win_amd64.whl (24.4 MB)
Collecting flatbuffers>=2.0
Using cached flatbuffers-23.5.26-py2.py3-none-any.whl (26 kB)
Collecting absl-py>=1.0.0
Using cached absl_py-1.4.0-py3-none-any.whl (126 kB)
Collecting opt-einsum>=2.3.2
Using cached opt_einsum-3.3.0-py3-none-any.whl (65 kB)
Collecting termcolor>=1.1.0
Using cached termcolor-2.3.0-py3-none-any.whl (6.9 kB)
Collecting filelock
Using cached filelock-3.12.3-py3-none-any.whl (11 kB)
Collecting pyyaml>=5.1
Using cached PyYAML-6.0.1-cp38-cp38-win_amd64.whl (157 kB)
Collecting requests
Using cached requests-2.31.0-py3-none-any.whl (62 kB)
Collecting huggingface-hub<1.0,>=0.11.0
Using cached huggingface_hub-0.16.4-py3-none-any.whl (268 kB)
Collecting regex!=2019.12.17
Using cached regex-2023.8.8-cp38-cp38-win_amd64.whl (268 kB)
Collecting tqdm>=4.27
Using cached tqdm-4.66.1-py3-none-any.whl (78 kB)
Collecting tokenizers!=0.11.3,<0.14,>=0.11.1
Using cached tokenizers-0.13.3-cp38-cp38-win_amd64.whl (3.5 MB)
Collecting more-itertools
Using cached more_itertools-10.1.0-py3-none-any.whl (55 kB)
Collecting torch
Using cached torch-2.0.1-cp38-cp38-win_amd64.whl (172.4 MB)
Collecting numba
Using cached numba-0.57.1-cp38-cp38-win_amd64.whl (2.6 MB)
Collecting tiktoken==0.3.3
Using cached tiktoken-0.3.3-cp38-cp38-win_amd64.whl (579 kB)
Collecting fsspec
Using cached fsspec-2023.9.0-py3-none-any.whl (173 kB)
Collecting parso<0.9.0,>=0.8.3
Using cached parso-0.8.3-py2.py3-none-any.whl (100 kB)
Collecting wcwidth
Using cached wcwidth-0.2.6-py2.py3-none-any.whl (29 kB)
Collecting charset-normalizer<4,>=2
Using cached charset_normalizer-3.2.0-cp38-cp38-win_amd64.whl (96 kB)
Collecting idna<4,>=2.5
Using cached idna-3.4-py3-none-any.whl (61 kB)
Collecting certifi>=2017.4.17
Using cached certifi-2023.7.22-py3-none-any.whl (158 kB)
Collecting urllib3<3,>=1.21.1
Using cached urllib3-2.0.4-py3-none-any.whl (123 kB)
Collecting llvmlite<0.41,>=0.40.0dev0
Using cached llvmlite-0.40.1-cp38-cp38-win_amd64.whl (27.7 MB)
Collecting importlib-metadata
Using cached importlib_metadata-6.8.0-py3-none-any.whl (22 kB)
Collecting asttokens>=2.1.0
Using cached asttokens-2.3.0-py2.py3-none-any.whl (27 kB)
Collecting executing>=1.2.0
Using cached executing-1.2.0-py2.py3-none-any.whl (24 kB)
Collecting pure-eval
Using cached pure_eval-0.2.2-py3-none-any.whl (11 kB)
Collecting jinja2
Using cached Jinja2-3.1.2-py3-none-any.whl (133 kB)
Collecting sympy
Using cached sympy-1.12-py3-none-any.whl (5.7 MB)
Collecting networkx
Using cached networkx-3.1-py3-none-any.whl (2.1 MB)
Collecting wheel<1.0,>=0.23.0
Using cached wheel-0.41.2-py3-none-any.whl (64 kB)
Collecting google-auth-oauthlib<0.5,>=0.4.1
Using cached google_auth_oauthlib-0.4.6-py2.py3-none-any.whl (18 kB)
Collecting werkzeug>=1.0.1
Using cached werkzeug-2.3.7-py3-none-any.whl (242 kB)
Collecting tensorboard-plugin-wit>=1.6.0
Using cached tensorboard_plugin_wit-1.8.1-py3-none-any.whl (781 kB)
Collecting tensorboard-data-server<0.7.0,>=0.6.0
Using cached tensorboard_data_server-0.6.1-py3-none-any.whl (2.4 kB)
Collecting google-auth<3,>=1.6.3
Using cached google_auth-2.22.0-py2.py3-none-any.whl (181 kB)
Collecting markdown>=2.6.8
Using cached Markdown-3.4.4-py3-none-any.whl (94 kB)
Collecting zipp>=0.5
Using cached zipp-3.16.2-py3-none-any.whl (7.2 kB)
Collecting MarkupSafe>=2.0
Using cached MarkupSafe-2.1.3-cp38-cp38-win_amd64.whl (17 kB)
Collecting mpmath>=0.19
Using cached mpmath-1.3.0-py3-none-any.whl (536 kB)
Collecting cachetools<6.0,>=2.0.0
Using cached cachetools-5.3.1-py3-none-any.whl (9.3 kB)
Collecting rsa<5,>=3.1.4
Using cached rsa-4.9-py3-none-any.whl (34 kB)
Collecting urllib3<3,>=1.21.1
Using cached urllib3-1.26.16-py2.py3-none-any.whl (143 kB)
Collecting pyasn1-modules>=0.2.1
Using cached pyasn1_modules-0.3.0-py2.py3-none-any.whl (181 kB)
Collecting requests-oauthlib>=0.7.0
Using cached requests_oauthlib-1.3.1-py2.py3-none-any.whl (23 kB)
Collecting pyasn1<0.6.0,>=0.4.6
Using cached pyasn1-0.5.0-py2.py3-none-any.whl (83 kB)
Collecting oauthlib>=3.0.0
Using cached oauthlib-3.2.2-py3-none-any.whl (151 kB)
Building wheels for collected packages: openai-whisper
Building wheel for openai-whisper (pyproject.toml) ... done
Created wheel for openai-whisper: filename=openai_whisper-20230314-py3-none-any.whl size=807707 sha256=e703388861c3c4b6074d56a6ce185fb9c699eeb7e7ce0590caeda500ad4a8319
Stored in directory: C:\Users\GRAFIK\AppData\Local\Temp\pip-ephem-wheel-cache-pbs88z3n\wheels\a7\70\18\b7693c07b1d18b3dafb328f5d0496aa0d41a9c09ef332fd8e6
Successfully built openai-whisper
Installing collected packages: wcwidth, tokenizers, tk, tensorboard-plugin-wit, PyAudio, pure-eval, pickleshare, mpmath, libclang, flatbuffers, executing, bitsandbytes, backcall, zipp, wrapt, wheel, urllib3, typing-extensions, traitlets, termcolor, tensorflow-io-gcs-filesystem, tensorflow-estimator, tensorboard-data-server, sympy, six, setuptools, regex, pyyaml, pygments, pyasn1, protobuf, prompt-toolkit, Pillow, parso, packaging, oauthlib, numpy, networkx, more-itertools, MarkupSafe, llvmlite, keras, idna, grpcio, greenlet, gast, fsspec, decorator, colorama, charset-normalizer, certifi, cachetools, absl-py, werkzeug, tqdm, rsa, requests, pyee, pyasn1-modules, opt-einsum, opencv-python, matplotlib-inline, jinja2, jedi, importlib-metadata, h5py, google-pasta, filelock, astunparse, asttokens, torch, tiktoken, stack-data, SpeechRecognition, requests-oauthlib, playwright, numba, markdown, huggingface-hub, google-auth, transformers, openai-whisper, IPython, google-auth-oauthlib, tensorboard, tensorflow-intel, tensorflow
Attempting uninstall: wcwidth
Found existing installation: wcwidth 0.2.6
Uninstalling wcwidth-0.2.6:
Successfully uninstalled wcwidth-0.2.6
Attempting uninstall: tokenizers
Found existing installation: tokenizers 0.13.3
Uninstalling tokenizers-0.13.3:
Successfully uninstalled tokenizers-0.13.3
Attempting uninstall: tk
Found existing installation: tk 0.1.0
Uninstalling tk-0.1.0:
Successfully uninstalled tk-0.1.0
Attempting uninstall: tensorboard-plugin-wit
Found existing installation: tensorboard-plugin-wit 1.8.1
Uninstalling tensorboard-plugin-wit-1.8.1:
Successfully uninstalled tensorboard-plugin-wit-1.8.1
Attempting uninstall: PyAudio
Found existing installation: PyAudio 0.2.13
Uninstalling PyAudio-0.2.13:
Successfully uninstalled PyAudio-0.2.13
Attempting uninstall: pure-eval
Found existing installation: pure-eval 0.2.2
Uninstalling pure-eval-0.2.2:
Successfully uninstalled pure-eval-0.2.2
Attempting uninstall: pickleshare
Found existing installation: pickleshare 0.7.5
Uninstalling pickleshare-0.7.5:
Successfully uninstalled pickleshare-0.7.5
Attempting uninstall: mpmath
Found existing installation: mpmath 1.3.0
Uninstalling mpmath-1.3.0:
Successfully uninstalled mpmath-1.3.0
Attempting uninstall: libclang
Found existing installation: libclang 16.0.6
Uninstalling libclang-16.0.6:
Successfully uninstalled libclang-16.0.6
Attempting uninstall: flatbuffers
Found existing installation: flatbuffers 23.5.26
Uninstalling flatbuffers-23.5.26:
Successfully uninstalled flatbuffers-23.5.26
Attempting uninstall: executing
Found existing installation: executing 1.2.0
Uninstalling executing-1.2.0:
Successfully uninstalled executing-1.2.0
Attempting uninstall: bitsandbytes
Found existing installation: bitsandbytes 0.37.2
Uninstalling bitsandbytes-0.37.2:
Successfully uninstalled bitsandbytes-0.37.2
Attempting uninstall: backcall
Found existing installation: backcall 0.2.0
Uninstalling backcall-0.2.0:
Successfully uninstalled backcall-0.2.0
Attempting uninstall: zipp
Found existing installation: zipp 3.16.2
Uninstalling zipp-3.16.2:
Successfully uninstalled zipp-3.16.2
Attempting uninstall: wrapt
Found existing installation: wrapt 1.15.0
Uninstalling wrapt-1.15.0:
Successfully uninstalled wrapt-1.15.0
Attempting uninstall: wheel
Found existing installation: wheel 0.41.2
Uninstalling wheel-0.41.2:
Successfully uninstalled wheel-0.41.2
WARNING: The script wheel.exe is installed in 'C:\Users\GRAFIK\OneDrive - Stadt Wil Informatik-Dienste Schulen Wil\Desktop\MonikA.I\libs\pythonlib\Scripts' which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
Attempting uninstall: urllib3
Found existing installation: urllib3 1.26.16
Uninstalling urllib3-1.26.16:
Successfully uninstalled urllib3-1.26.16
Attempting uninstall: typing-extensions
Found existing installation: typing_extensions 4.7.1
Uninstalling typing_extensions-4.7.1:
Successfully uninstalled typing_extensions-4.7.1
Attempting uninstall: traitlets
Found existing installation: traitlets 5.9.0
Uninstalling traitlets-5.9.0:
Successfully uninstalled traitlets-5.9.0
Attempting uninstall: termcolor
Found existing installation: termcolor 2.3.0
Uninstalling termcolor-2.3.0:
Successfully uninstalled termcolor-2.3.0
Attempting uninstall: tensorflow-io-gcs-filesystem
Found existing installation: tensorflow-io-gcs-filesystem 0.31.0
Uninstalling tensorflow-io-gcs-filesystem-0.31.0:
Successfully uninstalled tensorflow-io-gcs-filesystem-0.31.0
Attempting uninstall: tensorflow-estimator
Found existing installation: tensorflow-estimator 2.11.0
Uninstalling tensorflow-estimator-2.11.0:
Successfully uninstalled tensorflow-estimator-2.11.0
Attempting uninstall: tensorboard-data-server
Found existing installation: tensorboard-data-server 0.6.1
Uninstalling tensorboard-data-server-0.6.1:
Successfully uninstalled tensorboard-data-server-0.6.1
Attempting uninstall: sympy
Found existing installation: sympy 1.12
Uninstalling sympy-1.12:
Successfully uninstalled sympy-1.12

The update seems to have only pulled the one from last week and not the last to date, try pulling manually or resintall from the drive link.


'Spotify cant play this right now'

🧐 Have you read the FAQ and viewed similar issues?

[ ] I have read the FAQ
[X] I have checked older issues, open and closed
[X] I did a clean install of SpotX as described in the FAQ

Сountry of your account
United Kingdom
What is your Spotify Plan?
Free
Do you have Spicetify installed?
No
ℹ Computer information
- Spotify:<IP_ADDRESS>1.g9440c6cf
- Windows: Windows 10 Pro 21H2
- PowerShell: 5.1.19041.2364

📝 Description

Try to play a song
get error message 'Spotify cant play this right now '

...
📸 Screenshots
was working fine yesterday, this morning it doesn't work at all

https://community.spotify.com/t5/FAQs/How-do-I-fix-the-quot-Can-t-play-the-current-track-quot-error/ta-p/1279790/redirect_from_archived_page/true#M86679
next time learn how to use google yourself

how would you get rid of this message if you DO have spicetify installed?


Can't dedug using lldb on Windows

Describe the bug
I'm running on Windows 11, swift 5.9 is installed by wingetinstall--id Swift.Toolchain -e and I check that swift.exe is installed at: C:\Library\Developer\Toolchains\unknown-Asserts-development.xctoolchain\usr\bin\swift.exe

C:\Users\u>swift --version
Swift version 5.9.1 (swift-5.9.1-RELEASE)
Target: x86_64-unknown-windows-msvc

I'm running vscode 1.83.1, with this extension v1.5.2 installed.
the test project is created by swift package init --type executable, I can run swift build -c debug successfully.
Then I tried to debug the test project.
I edited the launch.json a little bit to have this line:
"program": "${workspaceFolder:swiftexe}\\.build/x86_64-unknown-windows-msvc/debug/swiftexe.exe",
I added x86_64-unknown-windows-msvc to match my local path and added .exe suffix name.
When I switched to the "Run and Debug" tab and clicked the green triangle to start debug, there appeared a blue progress bar indefinitely but nothing else happened.
Then I tried to debug it a little bit by myself, to verify lldb.exe. I searched on my computer, there are 2 lldb.exe installed, one is at C:\Users\u\.vscode\extensions\vadimcn.vscode-lldb-1.10.0\lldb\bin\lldb.exe and I believe it's installed some time ago when I tried to debug c++ or rust on Windows. If I run it:

C:\Users\u.vscode\extensions\vadimcn.vscode-lldb-1.10.0\lldb\bin>lldb.exe --version
lldb version 17.0.0-custom
rust-enabled

The other lldb.exe is at C:\Library\Developer\Toolchains\unknown-Asserts-development.xctoolchain\usr\bin\lldb.exe, it's installed along with the swift.exe .
I tried with lldb.exe:

C:\Library\Developer\Toolchains\unknown-Asserts-development.xctoolchain\usr\bin>lldb.exe --version

it simply exits without any output, which is strange to me.
I continued on to test clang.exe in the same folder, it seems to be ok:

C:\Library\Developer\Toolchains\unknown-Asserts-development.xctoolchain\usr\bin>clang.exe --version
swift.org clang version 16.0.0
Target: x86_64-unknown-windows-msvc
Thread model: posix
InstalledDir: C:\Library\Developer\Toolchains\unknown-Asserts-development.xctoolchain\usr\bin

Expected behavior
debug session starts and the it stops at my breakpoints.
So I'd like to verify if it's expected to have this result or not on Windows.

my python version is:

C:\Users\u>python.exe --version
Python 3.10.11


Monospace font in robot console in Studio

It will be useful in case of debugging getPhoto

Fixed in #138


file RENAME failed to rename

I wanted to build TDLib for C# Window (c++/cli) and failed to do so on step:
./vcpkg.exe install openssl:x86-windows zlib:x86-windows
with following error:

CMake Error at ports/openssl-windows/portfile.cmake:177 (file):
file RENAME failed to rename
~/tdlib-c#/td/vcpkg/packages/openssl-windows_x86-windows/bin/openssl.exe

to
~/tdlib-c#/td/vcpkg/packages/openssl-windows_x86-windows/tools/openssl/openssl.exe

because: File exists
Call Stack (most recent call first):
scripts/ports.cmake:94 (include)
Error: Building package openssl-windows:x86-windows failed with: BUILD_FAILED

Thing is that /tdlib-c#/td/vcpkg/packages/openssl-windows_x86-windows/bin/openssl.exe doesnt exist (at least after install error) and /tdlib-c#/td/vcpkg/packages/openssl-windows_x86-windows/tools/openssl is just empty folder.

Could you try without '#' in the file path?

Yes, it worked out. Thank you.