Unclear whether / how it is possible to let App Service access resource (CosmosDB) that can only be accessed from vnet

(I'm not sure whether this is an App Service or Cosmos DB docs issue; this is a crosspost from the ticket for the App Service docs)
This issue is related to this post on Stackoverflow.
From the docs page that I'm creating this issue from, and from the VNet-related Cosmos DB docs page it is unclear to me whether the scenario below is supported.
I have an App Service and a Cosmos DB. I want to restrict access to the Cosmos DB - only the App Service should access it.
My solution was to:

create a vnet with one subnet called default
enable the firewall feature in Cosmos DB --> set Allow access from Selected networks
create service endpoint for Cosmos DB on the default subnet
apply the New VNet integration in the App Service and connected it to the same default subnet

Cosmos DB firewall setup:

default subnet setup:

Unfortunately, this does not work. How do I make the App Service correctly access Cosmos DB through the VNet?

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

ID: 2b770dc2-2b7d-d09f-68d1-34dab8a6a1d2
Version Independent ID: 3da835fa-fb5c-c501-ef70-3e97c0521de3
Content: Secure access to an Azure Cosmos DB account by using Azure Virtual Network service endpoint
Content Source: articles/cosmos-db/vnet-service-endpoint.md
Service: cosmos-db
GitHub Login: @kanshiG
Microsoft Alias: govindk

@hansmbakker Thank you for detailing the issue you are encountering, Are you saying that the 4 steps you detailed in "My solution was to:" still resulted in the following statement "Unfortunately, this does not work. How do I make the App Service correctly access Cosmos DB through the VNet?" ?
Or, you followed the 4 steps (as detailed) and got it working but when you follow the documentation, it DOES NOT work?
If you are completly stuck and your solution is not working at all, I suspect that you need to add the specific source address for your App Service to the Cosmos DB firewall Allow IP Address list. I do need to look into this more closely to understand the docs and identify any corrections that need to be made but did want to suggest pursuing this as a possibility. Please see the following docs pertaing to App Service IP addressing:
Inbound and outbound IP addresses in Azure App Service
How do I determine the outbound IP addresses of my Azure App Service
How can I determine the IP address of an Azure hosted WebApp

@Mike-Ubezzi-MSFT thank you for your response.
After the 4 steps of my solution (+whitelisting the ip of my development machine) it did not work.
So what I’m asking is:

is this solution supposed to work?
is there something I need to change to make this work?

I couldn’t find an answer to both questions in the docs.
The reason I prefer not to whitelist the IP from the app service is that that IP is not guaranteed to be fixed I believe.

@hansmbakker You need to subscribe to App Service Environment to gain the static IP functionality. The App Service by itself does not allow for dedicated IP addresses. So, you can use the Allow access to Azure services to allow traffic to your Cosmos instance or build out a whitelist of specific IP addresses...or use VNet. The document you filed this issue against is a FAQ page and does not address your specific questions. This document walks you through the specific configuration steps for deploying/configuring a VNet for a Cosmos DB instance.

@Mike-Ubezzi-MSFT are you saying that my scenario / solution is not possible without an App Service Environment (ASE)?
If the idea is that

VNET Integration allows access from App Service to VNET
CosmosDB VNET service endpoint allows access from VNET to CosmosDB
access can be restricted by CosmosDB to traffic originating from the VNET

Then why can't I route the App Service --> CosmosDB traffic through the VNet?
I don't understand what the purpose of the (New) VNet Integration of the normal App Service is then??

@hansmbakker To let appservice access Cosmos DB you should check the accept connections from Azure datacenters option as shown in the screen below:

Azure Cosmos DB account will be accessible from Azure datacenter IP range. This allows services like Search, Data factory, Stream analytics whose IP addresses can't be fixed - to talk to Cosmos DB account.

@SnehaGunda I understand that would allow the App Service to access the CosmosDB instance. However, I use the option you recommend, then any random App Service or other component from within Azure can access the CosmosDB instance.
The reason behind this story is that the IT department came up with the approach mentioned in the opening post and they required this setup in the architecture, to let only this App Service access the CosmosDB instance.
Now the point of this GitHub issue is to

validate the approach that the IT department of my company requires
check whether I understand the VNet integration of App Service and CosmosDB correctly

Therefore, I'm asking feedback on

the approach in the opening post
my questions in this comment

@hansmbakker The Stack Overflow answer provided by Nancy Xiong is spot on. If you deploy the application tier in an App Service Environment, you gain true VNet functionality. Using Multi-tenent environment does not fully support VNet only access...as Nancy pointed out in the Stack Overflow answer.
There is a article written by Deloitt that provides and overview and a comparison between a Multi-tenant app service instance and an App Service Environment instance: When to Use an Azure App Service Environment v2 (App Service Isolated)
Private access only?
Multi-tenant environment: No.

App Services are always accessible via the public internet.
One way to restrict access to your App Service is using IP and Domain restrictions, but the App Service is still reachable from the internet.

App Service Isolated / App Service Environment v2: Yes.

An ASE can be deployed with an Internal Load Balancer, which will lock down your App Services to be accessible only from within your VNET or via ExpressRoute or Site-to-Site VPN.

@Mike-Ubezzi-MSFT I understand that ASE can be used to restrict access to the App Service. However, that is not what I'm trying to achieve.
I'm trying to let the App Service access another resource (in this case Cosmos DB, but also Blob Storage) routed through the VNet. I thought I could use the (new) VNet integration for that.
One of my questions is what the purpose of the App Service's VNet Integration is, if it can not do that?

@hansmbakker The intent of the VNet Integration feature had the following requirements when the service was initially launched:

For Azure App Service, a new version of the VNet Integration capability enables access to resources across service endpoints or Azure ExpressRoute connections.
Like the earlier version, the new VNet Integration feature only enables your app to make calls into your virtual network. It does not affect inbound traffic to your app.
This feature is in preview in all public regions. It has the following characteristics:

(shortlist of items)

Your App Service plan must be a Standard, Premium, or Premium V2 plan.
Your app must be in an Azure App Service deployment that’s capable of scaling up to Premium v2.
The feature currently works just with Windows apps.
The new feature requires an unused subnet in your Azure Resource Manager virtual network.
The app and the virtual network must be in the same region.

Announcing the new VNet Integration feature in App Service
So, it is intended to integrate with a VNet and extend (front end) services across an Express Route connection or other peered network for app services calls into a virtual network.
What you are attempting to do is secure the communication the App Service needs to establish with the Cosmos DB instance, either through a direct connection or via REST.
It's not that your method will not work but the integration service is not the solution here.

I have verified that the service endpoints do not appear to be working for Key Vault and Blob storage as well, despite the last paragraph on this page that explicitly says:

The new VNet Integration feature enables you to use service endpoints. To use service endpoints with your app, use the new VNet Integration to connect to a selected VNet and then configure service endpoints on the subnet you used for the integration.

Thanks for the additional detail! I have assigned the issue to the content author to evaluate and update as appropriate.

@Mike-Ubezzi-MSFT

https://github.com/MicrosoftDocs/azure-docs/issues/28461#issuecomment-479586153 it is intended (...) for app services calls into a virtual network

That is exactly what I'm trying: routing the calls from app services through the vnet to a service endpoint that is also connected to the vnet
app service --> vnet --> service endpoint --> cosmosdb

the integration service is not the solution here

This is where my confusion comes from. From the first quote it looks like it could/should work, but from the second quote it looks like it cannot work.
What is the way to go, then?

I have assigned the issue to the content author to evaluate and update as appropriate.

Thank you!

@hansmbakker It has to do with inbound connectivity versus outbound connectivity, and the use of Site-to-Site/Point-to-Site VPN and Express Route scenarios for the creation of private addressing to extend on-premise to Azure, in cases where the VNet service endpoints are private. Not necessarily VNet to VNet integration, which is what you are attempting to implement. I agree the documentation needs to be enhanced to make things more clear but the MSDN and Stack Overflow forums have a few threads where this is being discussed:
App Service and VNet to VNet Connectivity
Cannot access app service website after adding vnet integration
I think if the document had a supported/unsupported scenario chart to help distill the difference between leveraging VNet service endpoints (public and private) and VNet integration.

Please also note that the App Service VNet Integration page suggests that an App Service can access other services through a VNet using VNet integration.

The "Learn more" link points to https://docs.microsoft.com/en-us/azure/app-service/web-sites-integrate-with-vnet#new-vnet-integration which says:

You can consume Service Endpoint secured resources using the new VNet Integration capability. To do so, enable service endpoints on the subnet used for VNet Integration.

For what its worth, I've just stumbled across this issue because I came to the same conclusions as @hansmbakker and tried to implement the new (preview) vnet integration in a proof-of-concept.
My use case was App Service to Azure SQL Server rather than CosmosDB. I was at least able to find this scenario was actually listed in the limitations section here: https://docs.microsoft.com/en-us/azure/sql-database/sql-database-vnet-service-endpoint-rule-overview
What's the recommended procedure for requesting these features? Of all the issues and articles I have come across, generally everyone's aim is to remove the need to leave "Allow access to Azure services" in the 'On' position. In my humble opinion, this should be an out of the box capability for data storage services like CosmosDB and Azure SQL Server.

I actually don't think the documentation you listed regarding the vnet limitations is referring to the new vnet integration.  Take a look at this video from MS Ignite 2018.  Relevant bits start at around the 10 minute mark.
https://azure.microsoft.com/en-us/resources/videos/ignite-2018-what-is-new-in-azure-app-service-networking/

It sure looks like what we're trying to do is supposed to be supported.

Well found, @NateB2!
It matches what we're trying to do, in my eyes, too. I'm having the same issue for Azure Storage, btw.
Did you get any offline support through e-mail, yet?

Thanks for that, at least I'm not crazy... Glad others are trying to do this too. Found this feedback item : https://feedback.azure.com/forums/169385-web-apps/suggestions/34107535-web-app-should-use-private-ip-in-a-vnet-with-servi

@ccompy, could you please shine some light on this issue we're having?
In the video that @NateB2 shared (in which I believe you were presenting) it looks like SQL Server was in a different subnet than the app service:

SQL looks like it is restricted to a subnet vnetint-demo-subnet with ip range <IP_ADDRESS>/27 (see 15:18 in video)
VNet integration subnet looks like it is connected to subnet networking-demosubnet with ip range <IP_ADDRESS>-<IP_ADDRESS> (see 15:23 in video)

Could you please explain

whether there is 1 or 2 subnets in play?

Could you explain how literally I should take Requires an unused subnet?
Should 2 subnets be set up, 1 for the vnet integration and 1 for the service endpoints with some special routing setup?
the image at 12:33 makes it look like 1 subnet is enough for the whole setup

I'm looking to use this not only for SQL, but for CosmosDB and Azure Storage.
I understand this is a documentation issue page - could you please let us know where we can work best with the right people to find out what is happening?

Adding additional reference information that is a key detail I missed earlier:

With service endpoints, the source IP addresses of the virtual machines in the subnet for service traffic switches from using public IPv4 addresses to using private IPv4 addresses. Existing Azure service firewall rules using Azure public IP addresses will stop working with this switch. Please ensure Azure service firewall rules allow for this switch before setting up service endpoints. You may also experience a temporary interruption to service traffic from this subnet while configuring service endpoints. (Taken from: Securing Azure services to virtual networks)

I am assuming this is the case for PaaS services as well, like Azure SQL Database and Cosmos DB?
@hansmbakker I see in the Stack Overflow thread (with regard to the screen captures) that you have disabled the "Allow access to Azure services" (which is the desired state) but I don't see any of the private IP ranges in the allow connections list for the Cosmos DB firewall. Can you add the private address range for the subnet that is your App Service vnet. With the above note about public IPs being translated to private IPs, even though the firewall section refers to internet connections, with the service endpoints now in play the traffic is now private but adding a range might still be required. Have you attempted this?
Furthermore, you can add private IP ranges for a given data center if you desire a scope that includes a specific data center but is less than allowing access from the entire Azure internal network:
Microsoft Azure Datacenter IP Ranges

@SaltyDH The [feedback item](Web App should use private IP in a VNet with Service Endpoints) you are referring to pertains to App Services and not App Service Environments. App Services is a clustered architecture and is serviced through a Gateway via a public IP only. Based upon this and my question in the previous comment, when you enable service endpoints for a PaaS service such as App Service, the public IP is not translated to a private IP as it is with an IaaS service.
What is needed is to deploy your application to an Azure App Service Environment

The Azure App Service Environment is an Azure App Service feature that provides a fully isolated and dedicated environment for securely running App Service apps at high scale.

App Service environments (ASEs) are appropriate for application workloads that require:

Very high scale.
Isolation and secure network access.
High memory utilization.

The only outstanding question I have if you deploy an App Service Environment and add the Cosmos DB VNet service endpoint and your application calls the Cosmos DB API...does that translate as a public IP or a private IP via Azure DNS and will the traffic actually route via Azure intranet or over the internet?!

@Mike-Ubezzi-MSFT If you look at the slide from the video I posted and/or listen to the talk, it looks like the new vnet integration does not require setting up a gateway (unless it's doing it behind the scenes) and a point-to-site connection for app services.  The talk appeared to be about regular app services, not ASEs. The old VNET integration did require a gateway and a point-to-site VPN connection, and as such, service endpoints were not available.
ASEs aren't an option for us due to the extreme high cost per month and the insanely long deployment time required to set them up.

@hansmbakker I'm slowly working my way through to Azure support.  We go through a CSP, so there are extra hoops to jump through.

Thanks Mike, I'm very keen to find a solution for app services, switching to app service environments is so cost prohibitive it's not a reasonable solution. While I understand this might be difficult technically to deliver, I'm confused as it seems there is work in this direction and we're trying to seek clarification on this.

Sorry about the delay in getting back, great conversations on this thread. After you enable "Allow access from Azure portal", Azure Cosmos DB account will be accessible from Azure datacenter IP range. This allows services like Search, Data factory, Stream analytics whose IP addresses can't be fixed - to talk to Cosmos DB account.
To your point I don't think currently you can allow a specific service such as App service to use Cosmos DB. I am checking with the team to confirm if this is true.
Also you can reach out to the<EMAIL_ADDRESS>alias, a broader audience can take a look at your questions. sorry about the redirect. I will respond when I hear back.

I did not see any requirement like that in the video where @ccompy presented. So I assumed:

@Mike-Ubezzi-MSFT no extra firewall rule with private ip addresses from the VNet is needed (you select the VNet subnet that is allowed to access e.g. cosmosdb in the cosmosdb firewall settings, so you do not need to manually add the ip addresses once more manually)
@SnehaGunda Allow access from Azure portal works, but that defeats the purpose of limiting access to a VNet.

@Mike-Ubezzi-MSFT @SnehaGunda Have you seen the referenced video? I believe it will show you what we're trying to achieve and why we are confused. Also it would be really helpful if @ccompy could comment here since this seems to be her topic 🙂

I got a confirmation from cosmos DB team that "we can't currently allow a specific service to access cosmos DB when using VNet" It's a limitation from the networking end, if the networking team enables the feature Cosmos DB can support it.
@Mike-Ubezzi-MSFT do you want to redirect this issue to the App service category?

This appears to be a product enhancement and not necessarily a documentation issue. The ask is to limit or narrow the scope of the "Allow access to Azure services" configuration to the point of a specific service or a specific service instance. I highly suggest that everyone reading this thread go to the Azure Networking uservoice and provide feedback on this specific suggestion: Access restrictions to Azure Service or go to this link and read through, upvote, and comment on those suggestions that are relevant. You can raise this same suggestion to the Azure Web Apps and Cosmos DB uservoice forums as well but they all consume the same Azure Networking service.
The only way this will work currently is via App Service Environments, as ASE is the only way to integrate with an Azure VNet Service Endpoint.

The only other way I see this working is with the Hybrid Connections functionality that is currently available with App Services but, since this requires TCP connectivity, it will only work with Cosmos DB API instance that support direct and tcp connectivity mode.

In regards to the video, the current Vnet Integration functionality is a Point-to-Site VPN use case.
At minute 7:00 in the video, @ccompy discusses the New VNet Integration. That I believe is the functionality you desire. I am looking for GA date info. This New VNet Integration functionality should be in preview in a couple locations. See: Azure App Service new Virtual Network Integration capability is in preview
There was a bunch of great stuff discussed in the 45 min presentation. If there was something specific that I did not cover, please share here. Thank you!

@Mike-Ubezzi-MSFT thank you for the elaborate answer.

At minute 7:00 in the video, @ccompy discusses the New VNet Integration. That I believe is the functionality you desire.

Yes, that is exactly what I want, and I am already using the New VNet Integration (please see my repro steps in the opening post). I tried setting it up just as @ccompy presented, but it does not work as expected.
@NateB2 has the same issue in #28805.
I understand that it is still in preview, but how can we collaborate best to raise this issue? Is there any chance that @ccompy could comment here?

FWIW, on Monday, I had a phone/remote desktop sharing session with a support engineer on the App Service team, and he appeared to indicate that what we're trying to do should be possible with the new Vnet integration preview.  At the end of the conversation, after I showed him what we had set up, he said he was going to reproduce it on his side and confer with the team to see what's going on.

@NateB2 were they able to reproduce it?

@hansmbakker - yes, and they said that it's not yet implemented, but going to be implemented before the new VNET integration reaches GA. They didn't give a timeline as to when that was going to take place, however.

@hansmbakker thanks for raising this, have you made any progress since then? Have you tried the two subnets scenario for the ServiceEndpoint and one for the Vnet?
Its been more than 2 months, and for the claims they've made in the video since 2018 and the updated website, this should be working by now!

@sarah026 it's a coincidence that you ask this today, as I succeeded with CosmosDB just two hours ago.
Things I had to do to make it work:

delete the existing VNET (incl. the subnet, CosmosDB and other service endpoints, VNET integration)
re-create the VNET with subnet. Integrate the CosmosDB using its Firewall/networking tab using a service endpoint.
setup the New VNET Integration again in App Service (if you do this using ARM templates, be aware of the different syntax from the old VNET integration! Use a child resource in the App Service for this)

This made it work for CosmosDB for me, but Azure Storage does not work for me yet using the same approach.

Pleased to hear that @hansmbakker! Thanks for sharing. Our environment was set up yesterday, so it is a new build.
Which geo location is your service deployed to?

West Europe

Having the same problem with App Services and SQL Azure, this doesn't seem to work as the documentation and the various other demos indicate it should:
https://www.youtube.com/watch?v=wWX5iTQPp5M
https://www.youtube.com/watch?v=ic6Laiv9Jfc

Having the same problem with App Services and SQL Azure, this doesn't seem to work as the documentation and the various other demos indicate it should:
https://www.youtube.com/watch?v=wWX5iTQPp5M
https://www.youtube.com/watch?v=ic6Laiv9Jfc

Mine is working fine now between AppService and SQL elasticpool. I suggest you raise a ticket with them. The issue with mine was datacentre level issue, they needed to whitelist something for it to work. Not something we've done wrong, and so I wouldn't suggest you waste as much time as I wasted trying to figure this out.
It is West Eu region as well! Why did it work for hansmbakker and not for us!

Will do, thanks for the advice @sarah026

Got it working between Web app and cosmos table. Not sure what made it work but it took a couple of hours of deleting resources, and adding them back again. Might just have been the time that solved it, provisions etc maybe??

Deleting and recreating also 'mystically' solved my problem.
I tried this route after I found that the servers I was initially provisioned did not support scaling to P1V2. It was referenced in some docs, but what I didn't realize is that it meant my SPECIFIC server may have that scaling option disabled (which it did), and that would be an indicator of a separate deficiency that would prevent this VNet solution from working.
What I think happened was I was assigned compute resources in an old rack, possibly because I carried that server forward from a free trial account. The requirement/consequence is very hard to associate, an invisible thread that was keeping my VNet from working.
I did not realize that of two servers in the same compute location on the same plan, one may support scaling while the other did not. It finally dawned on me what they meant when I was watching the youtube video posted above.

So I'm still running into this problem. Also, is the new VNET integration already released?
The steps I executed:

Created a VNet
I left the subnet as default

Setup cosmos
Assign Cosmos to the VNET

Now I got some messages that the service endpoint did not exist and would be created. Which actually happened:

I now created an AppService and deployed a very simple asp.net core application to it that connects to the Cosmos DB on startup using the code below.
I connected it to the VNET as seen here:

It then gave me a message about having to wait a few hours before the connection would work. (Is this honnestly the case???)
When I now access the AppService it shows a 503:

If I then browse to Kudu and open D:\home\LogFiles\eventlog.xml I can see the following message:

Beginning operations...

Forbidden error occurred: Microsoft.Azure.Cosmos.CosmosException : Response status code does not indicate success: 403 Substatus: 0 Reason: (Microsoft.Azure.Documents.DocumentClientException: Request originated from client IP <IP_ADDRESS> through public internet. This is blocked by your Cosmos DB account firewall settings.ActivityId: b9bcb4b7-2ad4-4130-b592-fb70b0c18628, Microsoft.Azure.Documents.Common/2.11.0, Windows/10.0.14393 cosmos-netstandard-sdk/3.4.2   at Microsoft.Azure.Cosmos.GatewayStoreClient.ParseResponseAsync(HttpResponseMessage responseMessage, JsonSerializerSettings serializerSettings, DocumentServiceRequest request)   at Microsoft.Azure.Cosmos.GatewayAccountReader.GetDatabaseAccountAsync(Uri serviceEndpoint)   at Microsoft.Azure.Cosmos.Routing.GlobalEndpointManager.GetDatabaseAccountFromAnyLocationsAsync(Uri defaultEndpoint, IList`1 locations, Func`2 getDatabaseAccountFn)   at Microsoft.Azure.Cosmos.GatewayAccountReader.InitializeReaderAsync()   at Microsoft.Azure.Cosmos.CosmosAccountServiceConfiguration.InitializeAsync()   at Microsoft.Azure.Cosmos.DocumentClient.InitializeGatewayConfigurationReaderAsync()   at Microsoft.Azure.Cosmos.DocumentClient.GetInitializationTaskAsync(IStoreClientFactory storeClientFactory)   at Microsoft.Azure.Cosmos.DocumentClient.EnsureValidClientAsync()   at Microsoft.Azure.Cosmos.Handlers.RequestInvokerHandler.EnsureValidClientAsync(RequestMessage request)).
StatusCode = Forbidden;
SubStatusCode = 0;
ActivityId = b9bcb4b7-2ad4-4130-b592-fb70b0c18628;
RequestCharge = 0;
{"Summary":{"StartUtc":"2020-07-23T14:33:28.0440416Z","ElapsedTime":"00:00:00.5533417","UserAgent":"cosmos-netstandard-sdk/3.6.0|3.4.2|43726|X86|Microsoft Windows 10.0.14393|.NET Core 3.1.6|CosmosDBDotnetQuickstart"},"Context":[{"Id":"RequestInvokerHandler","ElapsedTime":"00:00:00.5533417"},{"Id":"PointOperationStatistics","ActivityId":"b9bcb4b7-2ad4-4130-b592-fb70b0c18628","StatusCode":403,"SubStatusCode":0,"RequestCharge":0.0,"RequestUri":"dbs/ToDoList","ErrorMessage":"Microsoft.Azure.Documents.DocumentClientException: Request originated from client IP <IP_ADDRESS> through public internet. This is blocked by your Cosmos DB account firewall settings.ActivityId: b9bcb4b7-2ad4-4130-b592-fb70b0c18628, Microsoft.Azure.Documents.Common/2.11.0, Windows/10.0.14393 cosmos-netstandard-sdk/3.4.2   at Microsoft.Azure.Cosmos.GatewayStoreClient.ParseResponseAsync(HttpResponseMessage responseMessage, JsonSerializerSettings serializerSettings, DocumentServiceRequest request)   at Microsoft.Azure.Cosmos.GatewayAccountReader.GetDatabaseAccountAsync(Uri serviceEndpoint)   at Microsoft.Azure.Cosmos.Routing.GlobalEndpointManager.GetDatabaseAccountFromAnyLocationsAsync(Uri defaultEndpoint, IList`1 locations, Func`2 getDatabaseAccountFn)   at Microsoft.Azure.Cosmos.GatewayAccountReader.InitializeReaderAsync()   at Microsoft.Azure.Cosmos.CosmosAccountServiceConfiguration.InitializeAsync()   at Microsoft.Azure.Cosmos.DocumentClient.InitializeGatewayConfigurationReaderAsync()   at Microsoft.Azure.Cosmos.DocumentClient.GetInitializationTaskAsync(IStoreClientFactory storeClientFactory)   at Microsoft.Azure.Cosmos.DocumentClient.EnsureValidClientAsync()   at Microsoft.Azure.Cosmos.Handlers.RequestInvokerHandler.EnsureValidClientAsync(RequestMessage request)","RequestSessionToken":null,"ResponseSessionToken":null}]}
   at Microsoft.Azure.Cosmos.ResponseMessage.EnsureSuccessStatusCode()
   at Microsoft.Azure.Cosmos.CosmosResponseFactory.ProcessMessageAsync[T](Task`1 cosmosResponseTask, Func`2 createResponse)
   at Microsoft.Azure.Cosmos.CosmosClient.<>c__DisplayClass41_0.<<CreateDatabaseIfNotExistsAsync>b__0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at CosmosGettingStartedTutorial.Program.CreateDatabaseAsync() in C:\Users\davy\Downloads\DocumentDB-Quickstart-DotNet\CosmosGettingStartedTutorial\Program.cs:line 86
   at CosmosGettingStartedTutorial.Program.GetStartedDemoAsync() in C:\Users\davy\Downloads\DocumentDB-Quickstart-DotNet\CosmosGettingStartedTutorial\Program.cs:line 68
   at CosmosGettingStartedTutorial.Program.Main(String[] args) in C:\Users\davy\Downloads\DocumentDB-Quickstart-DotNet\CosmosGettingStartedTutorial\Program.cs:line 40
End of demo, press any key to exit.
...
...

@hansmbakker and the rest, do you see anything I missed?
Code to connect to cosmos:
    public class Program
    {
        // The Azure Cosmos DB endpoint for running this sample.
        private static readonly string EndpointUri = "https://davycosmos.documents.azure.com:443/";

        // The primary key for the Azure Cosmos account.
        private static readonly string PrimaryKey = "**********";

        // The Cosmos client instance
        private CosmosClient cosmosClient;

        // The database we will create
        private Database database;

        // The container we will create.
        private Container container;

        // The name of the database and container we will create
        private string databaseId = "ToDoList";
        private string containerId = "Items";

        // <Main>
        public static async Task Main(string[] args)
        {
            try
            {
                Console.WriteLine("Beginning operations...\n");
                Program p = new Program();
                await p.GetStartedDemoAsync();

            }
            catch (CosmosException de)
            {
                Exception baseException = de.GetBaseException();
                Console.WriteLine("{0} error occurred: {1}", de.StatusCode, de);
            }
            catch (Exception e)
            {
                Console.WriteLine("Error: {0}", e);
            }
            finally
            {
                Console.WriteLine("End of demo, press any key to exit.");
                Console.ReadKey();
            }
        }
        // </Main>

        // <GetStartedDemoAsync>
        /// <summary>
        /// Entry point to call methods that operate on Azure Cosmos DB resources in this sample
        /// </summary>
        public async Task GetStartedDemoAsync()
        {
            // Create a new instance of the Cosmos Client
            this.cosmosClient = new CosmosClient(EndpointUri, PrimaryKey, new CosmosClientOptions() { ApplicationName = "CosmosDBDotnetQuickstart" });
            await this.CreateDatabaseAsync();
            await this.CreateContainerAsync();
            await this.ScaleContainerAsync();
            await this.AddItemsToContainerAsync();
            await this.QueryItemsAsync();
            await this.ReplaceFamilyItemAsync();
            await this.DeleteFamilyItemAsync();
            await this.DeleteDatabaseAndCleanupAsync();
        }
        // </GetStartedDemoAsync>

        // <CreateDatabaseAsync>
        /// <summary>
        /// Create the database if it does not exist
        /// </summary>
        private async Task CreateDatabaseAsync()
        {
            // Create a new database
            this.database = await this.cosmosClient.CreateDatabaseIfNotExistsAsync(databaseId);
            Console.WriteLine("Created Database: {0}\n", this.database.Id);
        }
    }

@devedse Thank you for providing the details specific to your deployment. What I do not see is a Privatelink associated with the VNET that you have created. A Private Endpoint establishes a private address space as defined by the VNET configuration. What you do not have is a Private IP Address issued for the Cosmos DB for SQL API service that has been setup in that VNET. Please see the following to complete the configuration: Configure Azure Private Link for an Azure Cosmos account.
If you do in fact have the Cosmos DB Privatelink configured, then you need to add the App Service NSG to your Cosmos DB VNET to allow traffic to pass, as you do not have Accept connections from within public Azure datacenters enabled. You will need to explicitly allow this service (NSG) to connect. The FAQ page does not capture all the required steps. Please let me know if you have additional questions. Regards, Mike.
Note: By working with NSGs instead of static IP and port values, when IP address changes occur, the NSG is automatically updated. Any manual configuration implemented outside an NSG will require intervention to update the correct values when each Azure maintenance update made.

Hi @Mike-Ubezzi-MSFT , I've been trying to follow your steps but am still running into some new issues:

I tried to setup the Private Endpoint but got this error:

I then wanted to delete the delegation, but this failed because the app service was still connected:

I then removed the VNET from the appservice

Then I tried to remove the delegate again which now worked

Then I tried to add the private endpoint again which now worked (Just make sure you take a good look at the settings because it keeps prefilling them with subnets from different resource groups for some reason):

When I now tried to re-add the AppService to the subnet I'm not allowed:

I then created a NSG as you mentioned and associated this with the VNET:

I'm now however quite stumped on what to do next. You mention that the App Service should already have a NSG? So should I not create it? I'm not sure what to do next.

@Mike-Ubezzi-MSFT , it's been a while since anyone reacted to this topic. Do you have an idea what steps I'm missing?

Ok I finally managed to get it to work, what I did was the following:

I tried removing the NSG as I don't think we need it, however to remove this I first wanted to disassociate the subnet. This gave me the following error:

Ignoring this error and continuing; I added a new subnet:

I connected the AppService to this new subnet:

I configured the DNS by setting the following app settings:

https://docs.microsoft.com/en-us/azure/app-service/web-sites-integrate-with-vnet#azure-dns-private-zones
When I now opened KUDU and did an NSLOOKUP it finally resulted in the right IP address:

I then reran my code and suddenly items started popping up in the cosmos db :)

@devedse you mentioned ended up creating another new subset in your most recent update, would you please clarify are the cosmos DB private endpoint and the web app service ended up with a same subset or not?
I went into the issue of CosmosDB requires subset without any dedication, but web app service requires a subset with dedication to servicefarm, which conflicts to each other. @Mike-Ubezzi-MSFT

@dawwa, they are now both on separate subnets.

@devedse , thanks for the clarification, the section below mentioned the WEBSITE_VNET_ROUTE_ALL is currently not supported in Windows containers., but looks like you were on a Windows container?
https://docs.microsoft.com/en-us/azure/app-service/web-sites-integrate-with-vnet#how-regional-vnet-integration-works

@dawwa, I was making use of Linux Containers. (I can really suggest to go for Linux containers unless you really have an application that only runs on Windows).

This issue needs to go to support for a deeper investigation as it appears there are some complications with deleting and adding the NSG, etc. Please make sure this step has been completed, if it applies.

Once service endpoint for Azure Cosmos DB is enabled on a subnet, the source of the traffic reaching the account switches from public IP to virtual network and subnet. If your Azure Cosmos account has IP-based firewall only, traffic from service enabled subnet would no longer match the IP firewall rules and therefore be rejected. Go over the steps to seamlessly migrate from IP-based firewall to virtual network-based access control.

@Mike-Ubezzi-MSFT , would it be possible for you to connect me with some Microsoft people. I'm basically trying to deploy the whole solution through Terraform but there's so much issues I'm running into, for example:

Not able to deploy Azure Functions due to 503 errors
Azure Function deployments taking more then 60 minutes and then running into a timeout
The Azure Function runtime not working on the Azure Portal. (When I open an Azure Function it simply doesn't load the web page and shows an error in the portal)

All of it seems to be related to having some things in VNET's but I can't figure out how it should all integrate.


[Korean] Premier League and Oracle: Expected Goals - Published-Public

Add here your WMS ID
WMS ID: 11436
LiveLabs ID: 3727
General requirements

Information in the workshop is adequate and updated
Code is correct and working
Links are correct
Make sure you enter the help email link in your manifest.json
Please make sure WMS URLs are updated as needed after your PR is approved

Checklist - Refer to the QA document for the complete list
Please confirm that the following is completed before submitting your PR

[x] All filenames are lower case (including folders, images, files, etc.)
[x] Filenames are descriptive
[x] Your workshop folder structure should be similar to the one used in the sample workshop (https://github.com/oracle-livelabs/common/tree/main/sample-livelabs-templates/sample-workshop)
[x] Are you using multiple versions (desktop/, sandbox/, tenancy/)? Make sure that each of them contains a manifest.json and an index.html
[x] Image references in markdown contain an alternate text

Could you review the request ? thanks !

@jaesucjang - In preparation for Oracle CloudWorld there is a GitHub freeze in place. We will only accept emergency PRs upon sending an email to<EMAIL_ADDRESS>including justification. If this is not urgent, please close this PR and create a new PR after the Oracle Cloudworld event.

@jaesucjang - Closing this PR for now. Please create a new PR after the OCW event.

Thanks for your help.
I will create the new one after oracle cloud world.
Best regards
Jason jang
2023년 8월 29일 (화) 오전 2:37, Kamryn Vinson @.***>님이 작성:

Closed #249 https://github.com/oracle-livelabs/analytics-ai/pull/249.
—
Reply to this email directly, view it on GitHub
https://github.com/oracle-livelabs/analytics-ai/pull/249#event-10211841791,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AHJYRDUUJIKUN4UEY7YT77LXXTJMLANCNFSM6AAAAAA3572VX4
.
You are receiving this because you were mentioned.Message ID:
@.***>


Build machine decently frequently fails to restore packages for tools.sln

This was due to the visual studio tools extensions not being installed.  We updated the build machines and added documentation that this is a required component.


win: use msbuild from the configure stage

Checklist

[x] npm install && npm test passes
[x] commit message follows commit guidelines

Description of change
If node-gyp configure has set up MSBuild location use it instead the one that happens to be first on the PATH.
Fixes: https://github.com/nodejs/node-gyp/issues/1653

CI: https://ci.nodejs.org/view/All/job/nodegyp-test-pull-request/115/
@refack do you mind if I land this even without the test? Change here is pretty straightforward and there was no test before.

@joaocgreis, done.


Summary of search-predict

The summary includes:

Final score for pla-com-pro-dis conn
#protein, #compound, etc
processing time

Connectivity:
[#plant-compound= xx] [#plant-compound= xx] [#protein-disease= xx]
Meta:
[#plants= xx]  [#compounds= xx]  [#proteins= xx] [#diseases= xx]
Misc:
#new compound-protein Prediction= xx
#existing compound-protein Prediction= xx
#compound-protein in db (not prediction)=
#unknown compound-protein= xx
#time= xx

Initialized.


Categorical (binary) column incorrectly treated as continuous for Univariate Drift Detection

Describe the bug
The binary predictions from the synthetic binary classification are treated as continuous rather than categorical.
To Reproduce
Steps to reproduce the behavior:
Run the Univariate Drift Example Notebook from where documentation is created.
y_pred is treated as continuous instead of categorical.
Expected behavior
Column would be treated as continuous.
Screenshots & scripts
The variable is present in the continuous drift results for v0.8.1:
https://nannyml.readthedocs.io/en/v0.8.1/_images/drift-guide-continuous.svg

Hey Nikos,
this behavior is correct. The columns are designated by NannyML as continuous or categorical in the base module.
You are right however that this is not the expected behavior given the example in the docs. This can be fixed by explicitly setting the y_pred column as categorical. I'll update this in the documentation.
reference_df['y_pred'] = reference_df['y_pred'].astype("category")
analysis_df['y_pred'] = analysis_df['y_pred'].astype("category")

column_names = ['distance_from_office', 'salary_range', 'gas_price_per_litre', 'public_transportation_cost', 'wfh_prev_workday', 'workday', 'tenure', 'y_pred_proba', 'y_pred']
calc = nml.UnivariateDriftCalculator(
    column_names=column_names,
    timestamp_column_name='timestamp',
    continuous_methods=['kolmogorov_smirnov', 'jensen_shannon'],
    categorical_methods=['chi2', 'jensen_shannon'],
)

I looked a bit further into this. Quickstart is also affected. And actually the issue was introduced in version 0.7.0 when we removed the StatisticalOutputDriftCalculator.
So we should also fix that and see if documentation needs a little more polishing.

Closing as quickstart also received a hot fix - we can polish the docs later.


[BUG] - 502-bad gateway

🚨🚨 Before open the ticket please check if you can reproduce the bug in the sample code
tried re building an app i had that was working on 3.3.4 got bad gateway 502
tried latest same issue?
Could not HEAD 'https://urbanairship.bintray.com/android/com/github/CanHub/Android-Image-Cropper/4.0.0/Android-Image-Cropper-4.0.0.pom'. Received status code 502 from server: Bad Gateway

Lib Version [e.g. 1.1.0]

Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior
A clear and concise description of what you expected to happen.
Media
Please add screenshots and/or screen recordings to help explain your problem.
We cannot help without more information
Smartphone (please complete the following information):

Device: [e.g. Pixel 3XL]
OS: [e.g. iOS8.1]

Additional context
Add any other context about the problem here.

Hey @techker I cannot really read this issue, need better formatting. Could you please reopen filling the template we provide? Thanks!


Stable version

I want a stable version to work with.
If I look at the tags, it seems that v2.0 is the newest tag. But there is also an v4.0. That confuses me.
https://github.com/CANopenNode/CANopenNode/tags
On the releases page it looks like V1.3 is the latest.
https://github.com/CANopenNode/CANopenNode/releases
what version is considered stable?

Hey @CANopenNode, do you intend to do a new tagged release (4.1 or 5.0) anytime soon ?

I could add a tag, but don't plan any special changes.

Ok, so I understand it correctly, there's no "stable version" per say ? Only tagged commit for people needing to target a specific point in history ?
And you said in your previous comment:

v4.0 is the beginning of the new design, but don't use that tag, just use the latest master, it is most stable. There is no release for it (yet).

Do you think the new design is polished enough now (or mostly stable) that you could consider making an "official" release ? "Official" might be a bit fancy but you see what I mean.
(That was what my first question was mainly about)

Yes, I can say, master is most polished and stable. So it is "official". I try to be conservative and not make unnecessary changes. There are polishing, fixes and some new features, that don't influence the rest code. Try to be careful. In case of larger change, a new tag or maybe a separate branch would be necessary.
Of course, I'm open for other opinions.


{GSSOC'23}Add a footer

I would like to add a perfect footer for this website.
Please assign this issue to me.

hello
As I saw your website, there is a scope of improvement in designing. Give me the chance to apply my skills and add an attractive and informative footer. Kindly assign this to me under Gssoc'23.

Assigned @thekirti02

Thank you for assigning me.


Received folder structure

Thanks for much for himawari-rx. I am using it with my TBS6903 PCIE card / Win 10.
I also had issues with TSduck and incomplete files but i added "-P regulate --bitrate 3000000" and it seems to be stable now.
I use xrit2pic to view/convert the images. Since Himawari-rx saves them in separate folder, I don't know how to easy combine them into one large folder. This is so I can see see multiple images/create movies easily without manually combining them all.
It does work one at a time if i manually select the image receive folder.
It would be great if there was an option to this with himawari-rx that would save all images in the single folder?

Thanks for using himawari-rx! I've just pushed himawari-rx v0.1.3 which has a new option called combine in the configuration file.
By default it is set to false. When set to true, all images will be saved into either a LRIT or HRIT folder.
Low-resolution images in the LRIT folder, high-resolution images in the HRIT folder.

Let me know if you have any issues.

Hi Sam,
Thank you so much for making this change. Works well.
I am sure there were many other ways of doing it but this is easy for me.


[W5.11][W14-A1] Mukesh Gadupudi

Added two enhancements:

created a new command called "tagged" which listed every person based who has been assigned a certain tag.
Example : "tagged owesmoney" returns all the persons with the tag "owesmoney".

Updated test cases, documentation and code for the above.

Made the find command case insensitive.
Example: now it can find the person named John even when u type JOHN or JoHn.

Updated test cases, documentation and code for the above

Hi @shanmu9898 everything looks good so far. Maybe, you could consider implementing case-insensitive search for tags as well seeing how you already have implemented it for the normal find operation.

@shanmu9898
Some comments added. Please ack & close the PR after reading comments.

Noted Sir! Thank you

On 18-Feb-2018, at 10:49 AM, Akshay Narayan<EMAIL_ADDRESS>wrote:
@shanmu9898 https://github.com/shanmu9898
Some comments added. Please ack & close the PR after reading comments.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/nus-cs2103-AY1718S2/addressbook-level2/pull/317#issuecomment-366488417, or mute the thread https://github.com/notifications/unsubscribe-auth/AbWodPyrAf0RKFxYPXu6z6OeiQQS9P0Iks5tV4-7gaJpZM4SBo5r.


Update rg-icons to v1.3.0

includes new icon for passthepopcorn (requested by @Hellowlol #140)

Added passthepopcorn icon.  Can be used same as others - class="rg rg-passtp" for the black and white version or class="rg rg-passtp-c" for a version with a gradient coloured background.

Thanks!


Support inline anonymous functions param types and return type

https://rokudevelopers.slack.com/archives/CKF1QQGTY/p1721397129982289

closed with #122


Wrap kubectl delete call in a retrier for Cilium

Description of changes:
This should avoid transient errors like "connection reset by peer" when
talking to the api server.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/lgtm


ENH: No lazy data for weighted_blending and regrid

Closes https://github.com/metoppv/improver/issues/1579
Description
Testing:

[x] Ran tests and they passed OK
[x] Added new tests for the new feature(s)

CLA

[ ] If a new developer, signed up to CLA

Looking at ppdev suite yesterday, I'm a little concerned that there could be more commands effected?
http://fcm1/rose-bush/view/ppdev?&suite=imengluk_midnight&no_fuzzy_time=0&path=log/job/20211013T1800Z/impr_engluk_tempfeelslike_PT0120H/01/job-timings.tsv#99

Apologies, re-running the suite.  Hopefully I'm doing it properly this time :)

Thanks @BelligerG, I'll close this PR in favour of a new one handling specifically the regrid.


Fix error for large matrix norm

Fixes #10
@aelmokadem can you confirm this fixes your issue?

Is what I need to do to get that fix os to update the package and it would pull it?

Is what I need to do to get that fix os to update the package and it would pull it?

After an hour or so when v0.1.4 is released, yes, that would work. Or you could do
] add ExponentialActions#main

which would pull in the fix from the main branch.

Yup.. that indeed fixed the issue. Thank you so much @sethaxen  :)

Glad to hear it!


[REQUEST] Support Training with Quantized model, e.g., qlora

I have tried qlora with deepspeed zero3. It seems that deepspeed will create the model in the original data type, e.g., float16 and the create the quantized model. Thus, it will use more GPU memory than qlora.
Are there any ways to fix this?

@lz1oceani have you try zero stage 2 for the qlora training?

你好，我已经接收到你的邮件！

解决了吗？qlora+deepspeed2能训练llama-2-70B吗

It always works with stage-2.

It works with stage 2 but stage 2 does not allow for parameter offloading so having zero3 work with qlora/lora models would be extremely powerful.

It works with stage 2 but stage 2 does not allow for parameter offloading so having zero3 work with qlora/lora models would be extremely powerful.

Hi, I've experimented with QLoRA + zero2 and QLoRA + zero3.
But using zero2 saves the model well
The use of zero3 is as follows.
model.save_pretrained(my_model) -> adapter_model.bin size -> 163KB.
Have you ever seen an error like this?

It works with stage 2 but stage 2 does not allow for parameter offloading so having zero3 work with qlora/lora models would be extremely powerful.

Hi, @noobmaster29 I've experimented with QLoRA + zero2 and QLoRA + zero3.
But using zero2 saves the model well The use of zero3 is as follows.
model.save_pretrained(my_model) -> adapter_model.bin size -> 163KB.
Have you ever seen an error like this?

You must use deepspeed.save_fp16_model() on all rank, instead of model.save_pretrained(), zero-3 need to collect params from all rank and combine it to save the model.

It works with stage 2 but stage 2 does not allow for parameter offloading so having zero3 work with qlora/lora models would be extremely powerful.

Yes. But I guess it is not easy to combine the weight splitting and quantization in deepspeed. Every large weight is sharded equally and stored over all gpus, while the current quantization in transformers will replace the full weight with a quantized version.

It works with stage 2 but stage 2 does not allow for parameter offloading so having zero3 work with qlora/lora models would be extremely powerful.

Hi, @noobmaster29 I've experimented with QLoRA + zero2 and QLoRA + zero3.
But using zero2 saves the model well The use of zero3 is as follows.
model.save_pretrained(my_model) -> adapter_model.bin size -> 163KB.
Have you ever seen an error like this?

You must use deepspeed.save_fp16_model() on all rank, instead of model.save_pretrained() on rank0, zero-3 need to collect params from all rank and combine it to save the model.

Hi, @TheBlackHacker
I've solved this problem. See this link
https://github.com/microsoft/DeepSpeed/issues/4295#issuecomment-1815803016

Dose stage-3  support lora quantization training?
I got error like this:
ValueError: DeepSpeed ZeRO-3 is incompatible with quantization.


Hierarchies: Allow disabling expansion to filter targets

Closes https://github.com/iTwin/presentation/issues/673.

LGTM. @saskliutas, got any concerns?

No, looks good.


Normalization of form factors at h(z=1)

Add normalization of form factors by h(z=1)

Not sure about it. It introduces additional phenomenological constant, that every framework needs to implement.
The advantage is that coupling values are seemingly more reasonable, but that has to be demonstrated, still


✨ Open with CodeEdit (Finder extension)

Describe the solution you'd like
Would be nice to give the user the option to install a finder extension where they can easily open a folder/file with CodeEdit.
Example preview with VSCODE using OpenInTerminal:

@wdg Please make this functionality optional/disableable as Xcode does not do this and some people like to keep these context menus in Finder clean.


Wiresless Transcievers behaving oddly.

Version of Advanced Rocketry
AdvancedRocketry-1.12.2-1.4.1-107-universal
Version of LibVulpes
LibVulpes-1.12.2-0.2.8-39-universal
Version of Minecraft
12.2.2
##Description of the problem
The wireless transcievers are behaving oddly.
Trying to connect up to the Astrobody Data Processor.
The mass data does not transmit
The composition data stored in satellite terminal is transmitted, but anynew data vanishes as it tried to transmit
Distance data transmits fine.
There also appears to be a specific steps to make them work at all, with placing, linking, setting mode and turning on/off. Get this process wrong, and they do not work at all.
I tried using the obsolete data cables, and they did not want to send data at all.

I was noticing this exact same behavior.  Thought I was losing my mind for a second.

Would you be able to explain the steps required to reproduce the problem?  What order do you have to do things in to reliably replicate the issue?

In my case, I attached the receivers to both satellite terminal and astro data processor, link them using a linker, set satellite term to extract then turn them on. Its odd cause they all worked fine for a while. Then suddenly went all wonky after a couple days.
I can say that this has been happening on a multiplayer server using the enigmatica 2 expert pack. (for myself) and I'm using ender io conduits and a rftools powercell to power them.
Conduits underneath, transmitters on the backs of the satellite terminals and on the 3 data blocks for the astro data processor.
I did notice that they seem to keep a "location" memory. I was going to see if it fixed itself by moving the setup to another chunk and try hooking it all up again. I'll be able to test this theory later this afternoon.

Alright, I was wondering if maybe it's some kind of chunk loading order thing.

I was thinking the same actually. so I broke all of them and waited for reset. then after replacing and setting. they all worked fine. After reset again, everything is broken again. There is an IC2 Chunkloader in the area. so this could be the issue. I also noticed that other machines such as the observatory and electrolyzer also have weird behavior after reset. such as all meteors having only air one reset then full of ore next reset.
I'll remove the chunk loader and see how the behavior is after resets.

Removing the chunkloaders do seem to have fixed the issue with satellites terminals and the transceivers. I'm waiting for night to see of observatory is also fixed.

It did not fix the observatory. so that may be a different issue.

I can confirm this is still an issue. After messing around a bit, I found that only the distance data mode transfers properly.  Both mass and composition seem to disappear into the void.
I double checked that the satellites are making data with the interface by observing it while not attached to the wireless transceiver.
Next, if there was a buffer in the interface, I then performed these steps in order:

Attach a transceiver on both sides.
Link them with the linker.
Set the one attached to the interface to extract.
Enable the one attached to the data output.
Enable the one attached to the interface.

When done in this order, distance will transfer properly over time.
However, both mass and composition will immediately transfer the current buffer over, and then any data afterwards disappears.  It does not get stored in the output or the interface.
Connecting the transceiver in any other way will cause it to not work for any data, even distance.
Hope this helps.
-Kel


How to receive the telemetry data from IoT Hub by using SDK?

This tutorial only teaches us how to send and receive telemetry data directly using Azure IoT SDK. In the tutorial, the virtual devices directly use the client.sendEvent() method.
However, in the case of the IoT Edge device, we use IoT Edge Hub to route this telemetry message to IoT Hub. Concretely, define the route: From <module output source> INTO $upstream, in which $upstream refers to IoT Hub. In this case, how can we use the SDK to receive this module's telemetry data from IoT Hub? Could you please show me a code snippet example? Thank you very much!

@MaxKinny Please help with the link of document on which above document feedback request is created.
Under this repository we want to make sure any issue is linked to a doc so we can help others that may be having the same issue.

@MaxKinny Please help with the link of document on which above document feedback request is created.
Under this repository we want to make sure any issue is linked to a doc so we can help others that may be having the same issue.

@MaxKinny Thanks for trying Azure! We try to reserve these issues for feedback directly related to the tutorials: like if there are errors that block tutorial completion or if there are updates/changes required, suggestions for improvement, etc. If this is not the case I would open an issue with your question on the IoTEdge repository or Microsoft QnA or StackOverflow forums where there is a community that can help (plus the engineering team)

@MaxKinny Thanks for trying Azure! We try to reserve these issues for feedback directly related to the tutorials: like if there are errors that block tutorial completion or if there are updates/changes required, suggestions for improvement, etc. If this is not the case I would open an issue with your question on the IoTEdge repository or Microsoft QnA or StackOverflow forums where there is a community that can help (plus the engineering team)

@AshokPeddakotla-MSFT  Yes, please open an issue with this question on the IoTHub SDK repository or Microsoft QnA, or StackOverflow forums. Thanks.

@AshokPeddakotla-MSFT  Yes, please open an issue with this question on the IoTHub SDK repository or Microsoft QnA, or StackOverflow forums. Thanks.

Here is the issue raised in SDK repo: https://github.com/Azure/azure-iot-sdk-node/issues/917 please follow up accordingly.
We will now proceed to close this thread. If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion and we will reopen the issue.

Here is the issue raised in SDK repo: https://github.com/Azure/azure-iot-sdk-node/issues/917 please follow up accordingly.
We will now proceed to close this thread. If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion and we will reopen the issue.


Support for gevent

@vmalloc What about this one? I think that was fixed already.

To my understanding this PR as it is will not be merged. @yalon added some limited support with a different PR which has already been merged.


Implement SYSCALL block processing in decoder

This PR updates the decoder to correctly process SYSCALL blocks. This includes:

Adding an in_syscall column to the decoder trace. Values in this column are set to 1 when we are inside a SYSCALL block and to 0 otherwise. We will use this column in constraints to make sure that executing a SYSCALL operation within a SYSCALL block is not possible.
Setting the h7 register to 1 when we are exiting a SYSCALL block (i.e., when END operation is executed). This means that we now make use of all helper registers when END operation is executed. Specifically, registers h4 - h7 are now set to the following flags: [is_loop_body, is_loop, is_call, is_syscall].
Updating logic for how fmp values are set. Specifically, the logic remains the same for regular procedure and function calls (i.e., fmp register is initialized to $2^{30}$), but for SYSCALL's we initialize the fmp register to $2^{31}$. This way, when we make a SYSCALL, procedure locals of procedures executed within a SYSCALL block will not conflict with procedure locals of the original root context.

While working on this PR, I've also found a way to speed up trace generation by about 15% by refactoring our approach to the decoder trace generation. I'll write this up in a separate issue.

@bobbinth one final note -
The docs for op_fmpupdate should be updated now that the fmp values have changed

While working on this PR, I've also found a way to speed up trace generation by about 15% by refactoring our approach to the decoder trace generation. I'll write this up in a separate issue.

Also, this is exciting

The docs for op_fmpupdate should be updated now that the fmp values have changed

Done! Thank you for noticing.


sensor_positions csv file with empty referenceLatitude, referenceLongitude and referenceElevation

Hello,
I am not sure if this is a bug, but  some of the sensor_positions.csv files in the downloaded NEON data products have empty referenceLatitude, referenceLongitude and referenceElevation fields.
Does it mean the latitude, longitude and elevation is unknown, or does it mean I should use the latitude, longitude and elevation of the parent site as my reference?
The link to the file is available via the API:
http://data.neonscience.org/api/v0/data/DP1.00002.001/WREF/2018-03
The name of the sensor_positions file with some empty fields is: NEON.D16.WREF.DP1.00002.001.sensor_positions.20180418T161826Z.csv
Best regards,
Jiri Kadlec

Thank you Jiri @jirikadlec2 for contacting us!
@covesturtevant @MorganEJones - does the sensor location data for WREF needs to be loaded into PDR? Thank you!

Apologies for not responding earlier - I can confirm that the sensor position data for site WREF are there.


Downloading from Github.com fails with dockerized templates

Describe the bug
Downloading any files from github.com as an install step fails with a 403.
To Reproduce
Steps to reproduce the behavior:

Make sure you are running the Docker version of pufferpanel
Go to 'templates'
Click on 'add template'
Set the template to this
Create a new server with the template
Install the server

Expected behavior
The install step should succesfully complete, and summon a file.
Screenshots
N/A
Desktop:

OS: Ubuntu 22.04
Browser Firefox
Version 123.0.1

Additional context

Successfully reproduced on two isolated systems on different networks, failed to reproduce on a native install.
Succesfully reproduced on three different docker images. steamcmd/steamcmd:ubuntu-20, steamcmd/steamcmd and pufferpanel/generic
Github returns 302 -> 403
Not caused by the user agent. Tested by CURLing the file with the same user agent, and fetching the file with a barebones grab script. Noted to close this out of the question.
This issue does not apply to any other file hosts that I am aware of
Tried over both, http and https
This has the possibility to bork a bunch of templates depending on github for files

Failing to reproduce further. Closing!


Benchmark scenario cpp_generic_async_streaming_qps_one_server_core_secure often times

That results in all following scenarios failing. Happens in more >50% of all runs.
E.g.
https://grpc-testing.appspot.com/job/gRPC_performance_experiment/1255
TIMEOUT: qps_json_driver.cpp_generic_async_streaming_qps_one_server_core_secure
and after that everything that runs against C++ has failed

https://grpc-testing.appspot.com/job/gRPC_performance_experiment/1253/consoleFull
TIMEOUT: qps_json_driver.cpp_generic_async_streaming_qps_one_server_core_secure
and after that everything that runs against C++ has failed

https://grpc-testing.appspot.com/job/gRPC_performance_experiment/1252/consoleFull

I believe that this is a timeout problem being caused by backlogging as we wait for all RPCs to complete. Note that the timeout message is coming from Jenkins, not from the qps test itself. The qps test and workers themselves don't actually set a deadline on the Marks or any other driver or worker RPC.

Currently investigating by adding instrumentation as requested in #6540.

The root cause of this problem is the same issue as in #6251 . I also propose that we downgrade this problem from GA-blocking since this is a synchronization bug in the testing code, not in the core.

Removing this from the GA milestone.


Typo fix and update bundle.yml

Fix the following warnings when using GitHub Actions:

Node.js 12 actions are deprecated. Please update the following actions to use Node.js 16: actions/checkout@v2. For more information see: https://github.blog/changelog/2022-09-22-github-actions-all-actions-will-begin-running-on-node16-instead-of-node12/.

The macOS-10.15 environment is deprecated, consider switching to macos-11(macos-latest), macos-12 instead. For more details see https://github.com/actions/virtual-environments/issues/5583

Thanks.


Gets stuck in tensorflow.test.is_gpu_available()

Click to expand!
Issue Type
Bug
Source
binary
Tensorflow Version
tensorflow_gpu-1.4.0
Custom Code
No
OS Platform and Distribution
Ubuntu 18.04.5 LTS
Mobile device
No response
Python version
2.7
Bazel version
No response
GCC/Compiler version
No response
CUDA/cuDNN version
No response
GPU model and memory
No response
Current Behaviour?
# python
Python 2.7.12 (default, Nov 19 2016, 06:48:10)
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow as tf
>>> tf.test.is_gpu_available()
2022-05-27 04:09:29.325229: I tensorflow/core/platform/cpu_feature_guard.cc:137] Your CPU supports instructions that this TensorFlow binary was not compiled to use: SSE4.1 SSE4.2 AVX AVX2 FMA

GET STUCK...

Normally it should return msg like "Found device 0 with properties:"

Standalone code to reproduce the issue
# python
Python 2.7.12 (default, Nov 19 2016, 06:48:10)
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow as tf
>>> tf.test.is_gpu_available()

Relevant log output
Fri May 27 04:15:13 2022
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 460.32.03    Driver Version: 460.32.03    CUDA Version: 11.2     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  Tesla M60           Off  | 00000001:00:00.0 Off |                  Off |
| N/A   41C    P8    22W / 150W |      8MiB /  8129MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
|   1  Tesla M60           Off  | 00000002:00:00.0 Off |                  Off |
| N/A   34C    P8    15W / 150W |      3MiB /  8129MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|    0   N/A  N/A     50650      C   python                              2MiB |
|    0   N/A  N/A    100924      C   python                              2MiB |
+-----------------------------------------------------------------------------+

@delulu Could you try to upgrade to the latest TF version(2.4 or later) as older versions(1.x) are not actively supported.
Please have a look at the gist here and try to use tf.config.list_physical_devices('GPU') instead as follows:
import tensorflow as tf
tf.config.list_physical_devices('GPU')

tf.test.is_gpu_available() is deprecated and will be removed in future versions.
Thank you!

@sushreebarsa thanks for the tips, I'll upgrade it, but it seems to be a GPU device issue and the issue is gone on a new GPU device. Though I'm a little curious why it gets stuck :(

@delulu Closing this issue as per the comment above. Please feel free to reopen the issue if you still have a concern.
Thank you!


How to receive correct permissions list for "Shared with me" item?

There are no information about receiving Permissions for "Shared with me" items. It's unclear can i use shared item Id, that is received by GET /me/drive/sharedWithMe request, in GET /me/drive/items/{shared-item-id}/permissions or i have to extract remoteItem facet values of shared item and use it Id and drive Id in request GET /drives/{remotItem-parentReference-drive-id}/items/{remotItem-id}/permissions so as to receive correct list of permission for shared with me item.

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

ID: fbac80e5-ae35-b804-addd-53ccaf49e693
Version Independent ID: b2a13be1-7783-38c2-c318-1261847240fa
Content: List who has access to a file - Microsoft Graph v1.0
Content Source: api-reference/v1.0/api/driveitem-list-permissions.md
Product: sharepoint
Technology: microsoft-graph
GitHub Login: @JeremyKelley
Microsoft Alias: MSGraphDocsVteam

As part of a repository clean up effort we are closing older issues. If this issue remains, please: open a new issue, reference this issue, and provide any additional details that may help in resolution. Thank you for your understanding as we work to improve our responsiveness.


Taiyō

Source information
Taiyō 1.4.1
Source language
Português (Brasil)
Steps to reproduce
Não aparece as obras do site na extensão, na Webview está aparecendo normalmente, vou mostrar no vídeo abaixo
https://github.com/user-attachments/assets/e7e09f75-93f7-43a9-a97b-e85232a2510e
Expected behavior
Carregar as obras do site
Actual behavior
Nenhum resultado encontrado
Mihon/Tachiyomi version
Tachiyomi SY  1.11.0
Android version
Android 11
Other details
No response
Acknowledgements

[X] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open or closed issue.
[X] I have written a short but informative title.
[X] I have updated the app to version 0.15.3.
[X] I have updated all installed extensions.
[X] I have tried the troubleshooting guide.
[X] If this is an issue with the app itself, I should be opening an issue in the app repository.
[X] I will fill out all of the requested information in this form.

Aqui também não aparece!


time: Sleep requires ~7 syscalls

What version of Go are you using (go version)?
go version go1.10.1 linux/amd64
Does this issue reproduce with the latest release?
Yes (1.10.2).
What operating system and processor architecture are you using (go env)?
GOARCH="amd64"
GOBIN=""
GOCACHE="/home/bas/.cache/go-build"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/bas/go"
GORACE=""
GOROOT="/usr/lib/go-1.10"
GOTMPDIR=""
GOTOOLDIR="/usr/lib/go-1.10/pkg/tool/linux_amd64"
GCCGO="gccgo"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build723289083=/tmp/go-build -gno-record-gcc-switches"

What did you do?
The following Go program calls time.Sleep the number of times given as a commandline argument.
package main

import (
	"os"
	"strconv"
	"time"
)

var max int

func main() {
	max, _ = strconv.Atoi(os.Args[1])
	n := 0
	for {
		time.Sleep(time.Second / 100)
		n += 1
		if n >= max {
			return
		}
	}
}

If track the number of sys calls using strace -f -c, we find
bas@fourier2:~/gosleeptest$ strace -c -f ./gosleeptest 1
strace: Process 3115 attached
strace: Process 3114 attached
strace: Process 3116 attached
strace: Process 3117 attached
% time     seconds  usecs/call     calls    errors syscall
------ ----------- ----------- --------- --------- ----------------
  0.00    0.000000           0         8           mmap
  0.00    0.000000           0         1           munmap
  0.00    0.000000           0       114           rt_sigaction
  0.00    0.000000           0        14           rt_sigprocmask
  0.00    0.000000           0         4           clone
  0.00    0.000000           0         1           execve
  0.00    0.000000           0        10           sigaltstack
  0.00    0.000000           0         5           arch_prctl
  0.00    0.000000           0         9           gettid
  0.00    0.000000           0         8         1 futex
  0.00    0.000000           0         1           sched_getaffinity
  0.00    0.000000           0         1           readlinkat
  0.00    0.000000           0        22           pselect6
------ ----------- ----------- --------- --------- ----------------
100.00    0.000000                   198         1 total
bas@fourier2:~/gosleeptest$ strace -c -f ./gosleeptest 10
strace: Process 3919 attached
strace: Process 3918 attached
strace: Process 3917 attached
strace: Process 3927 attached
% time     seconds  usecs/call     calls    errors syscall
------ ----------- ----------- --------- --------- ----------------
  0.00    0.000000           0         8           mmap
  0.00    0.000000           0         1           munmap
  0.00    0.000000           0       114           rt_sigaction
  0.00    0.000000           0        14           rt_sigprocmask
  0.00    0.000000           0         2           sched_yield
  0.00    0.000000           0         4           clone
  0.00    0.000000           0         1           execve
  0.00    0.000000           0        10           sigaltstack
  0.00    0.000000           0         5           arch_prctl
  0.00    0.000000           0         9           gettid
  0.00    0.000000           0        74        12 futex
  0.00    0.000000           0         1           sched_getaffinity
  0.00    0.000000           0         1           readlinkat
  0.00    0.000000           0        69           pselect6
------ ----------- ----------- --------- --------- ----------------
100.00    0.000000                   313        12 total
bas@fourier2:~/gosleeptest$ strace -c -f ./gosleeptest 100
strace: Process 4491 attached
strace: Process 4490 attached
strace: Process 4489 attached
strace: Process 4532 attached
% time     seconds  usecs/call     calls    errors syscall
------ ----------- ----------- --------- --------- ----------------
 89.01    0.043330          82       530       104 futex
  9.76    0.004751          21       228           pselect6
  0.27    0.000131           1       114           rt_sigaction
  0.23    0.000114          23         5           arch_prctl
  0.19    0.000091           9        10           sigaltstack
  0.18    0.000086          10         9           gettid
  0.13    0.000061           4        14           rt_sigprocmask
  0.07    0.000035           4         8           mmap
  0.07    0.000033          33         1           readlinkat
  0.03    0.000017           4         4           clone
  0.03    0.000017          17         1           execve
  0.02    0.000009           9         1           munmap
  0.01    0.000003           3         1           sched_getaffinity
------ ----------- ----------- --------- --------- ----------------
100.00    0.048678                   926       104 total

What did you expect to see?
A single time.Sleep should use approximately one syscall.  (Python's time.sleep does only use one syscall, for instance.)
What did you see instead?
Approximately seven sys calls per time.Sleep.  As a consequence, the go process also uses quite a bit of CPU time per time.Sleep: 500us (compared to 13us for Python's time.sleep).
Notes
I encountered this issue while debugging unexpectedly high idle CPU usage by wireguard-go.

I doubt it will ever go as low as one in general. In a concurrent language like Go, unlike Python, putting a thread to sleep requires locking data structures in the concurrent runtime. Seven may be more than are truly needed, I'm not sure, but time.Sleep cannot be done in only one call to the kernel without blocking the rest of the program's running goroutines.

What Rob said. Not sure if there's anything to be done here. /cc @rsc

I'm a bit confused about your hunch that this is due to  locking. Futexes use a CMPXCHG  in userspace to acquire a mutex.  Only when the lock is contended will they call the futex() syscall with FUTEX_WAIT on the mutex to wait for it to unlock, right?  Why is there contention in this example?

I encountered this issue while debugging unexpectedly high idle CPU usage by wireguard-go.

Does the number of syscalls account for the observed CPU usage in wireguard-go, or is this a peripheral issue? We try to focus on concrete problems (specific programs with poor behavior) rather than abstract ones (i.e., microbenchmarks).

Yes, it did.  As a workaround, the author now disables the 1Hz ticker  if there is nothing to do because of the overhead.

/cc @ianlancetaylor @aclements @randall77 too

The high number of futex calls is surprising, for the reasons you pointed out. Most likely what's happening is not lock contention, but rather that the runtime is waking a sleeping thread, though I haven't confirmed that.

The Go runtime works with a set of timer goroutines sharded by P.  The time.Sleep call is implemented by having the calling goroutine tell its local timer goroutine to wake it up at a certain time.  This means adding a timer to a heap, and then waking up the timer goroutine: a futex operation.
After that, the goroutine that called time.Sleep parks itself.  The M that was running that goroutine then looks for another goroutine to run, doesn't find any, and parks itself.  Parking a goroutine just means marking the G as asleep, but parking an M means sleeping until told to wake up: a futex operation.
Meanwhile, the timer goroutine looks at the new timer, decides how long it has to sleep, and goes to sleep for that long: a futex operation.
Eventually the timer goroutine wakes up.  It unparks the sleeping goroutine, adding it to the queue of goroutines ready to run.  There aren't any M's running, so it has to wake one up: a futex operation.
The timer goroutine then sees that there are no timers, and goes back to sleep waiting for something to happen: a futex operation.
The M that was woken up starts to execute the goroutine, which immediately calls time.Sleep again, and the cycle starts over.
Meanwhile the system monitor thread runs, poking along doing its own thing while all this is happening.  On tip this mostly shows up as calls to nanosleep, above it shows up as pselect6.
So I think that gives me 6 system calls per time.Sleep system call.  Above it says there are 7, so I guess I missed one somewhere.  Maybe the system monitor makes another system call.
Some important points here are that the system monitor thread is part of the background of a Go process.  It doesn't have anything to do with time.Sleep, it just shows up here because nothing else is happening.  The M parking and unparking itself is only happening because there are no other goroutines; if there were, the M would be picking those up and running them, steps that in themselves do not require any system calls.
So I think this microbenchmark is not necessarily indicative of the cost of calling time.Sleep.  The costs that are closely related to time.Sleep are the futex call to wake up the timer goroutine and the futex call by the timer goroutine itself to go back to sleep.  Those seem difficult to avoid, assuming that we don't want a sleeping goroutine to tie up a thread, which of course we don't.  Even those system calls wouldn't necessarily happen if there were other timers, as we only need to notify the timer goroutine of a new timer if it is newer than any existing timer.
All in all it's not obvious to me that there is anything to do here.  We really do need three threads: the main thread, the timer goroutine, the system monitor.  The main thread and the timer goroutine really do need to communicate, and they really do need to go to sleep during the time.Sleep call.  I don't see how to avoid that even hypothetically.  For this example we could save a system call if the timer goroutine spun for a while when there was nothing to do, hoping that something would come in, but that hardly seems like a good idea in general.
These system calls are all fast and should not put a significant load on the system.
As mentioned above the comparison to Python is unhelpful, since Python doesn't have to support multiplexing multiple sleeping goroutines onto a small set of threads.

My comparison with Python indeed wasn't fair.
Thanks for the explanation.  If I understand correctly the current implementation forces the timer goroutine to be executed on a different machine thread than the goroutine calling it.  Couldn't the machine thread of the sleeper be reused when there is no timerproc running yet?  (Implementation complexity is of course a valid objection, if applicable.)

Given the existence of timers, there has to be a thread that sleeps until the next timer is ready.  In the current implementation that thread is the one running the timer goroutine.  So in the ordinary steady state there's no way for the goroutine that calls time.Sleep to run on the same thread that runs the timer goroutine, because the latter thread is already sleeping until the next timer fires.
I think it's true that in your example program, in which there is only ever one timer, when the call to time.Sleep happens the timer goroutine is not sleeping but is instead simply parked.  So it would be possible for this example to have the thread running the goroutine calling time.Sleep to pick up the timer goroutine directly.  But in a real program it doesn't seem like a particularly likely case, so it doesn't seem worth implementing that optimization.

Given the existence of timers, there has to be a thread that sleeps until the next timer is ready.

Is that actually true? I thought that, at least on some platforms, there is a system call you can use to deliver a signal to the process at the next timer instead: if that's true, we only need a sleeping thread if there isn't some other running thread in the process that can receive the signal.

Sending a signal would not be a great idea--handling signals is not particularly fast--but it's true that on GNU/Linux we could use timer_create to start a timer that would call a function after a certain amount of time.  I expect that the efficiency savings compared to what we are doing now would be minimal--after all timer_create is itself a system call and in practice we would have to manipulate the timer from multiple threads, which might in turn require additional locking, which is exactly what we're trying to avoid.  I would be surprised if the result were any better than we do today, but it might be an interesting experiment.

Go 1.14 has a new timer implementation that changes the analysis here somewhat.  There is no longer a separate timer goroutine.  Timer operations are now folded into network operations for programs that use networking.  This seems to reduce the system call overhead for real programs.
However, the overall number of system calls for the simple program above has not gone down.  It remains dominated by sysmon and scheduler activity rather than by time.Sleep as such.  There may be more work that we can do here, but it would be important to not speed up this microbenchmark at the expense of real programs.


aux-file-flag-v2-again-2: test cases, transitions and logging fixes

I think there is a bug with the switching logic, the switch is not made from V1 to V2.
These are the test cases I was asking for.

This was not merged because I had misunderstood how the feature should work which is not at all close to what I was expecting (migration from v1 to v2).


Caching multipart form file upload does not work

First, thanks for the great library! I'm using it extensively in my current project.
After some debugging, I found that requests-cache does not cache requests that have the files param set, because the form field boundary in the request body is randomized. See http://docs.python-requests.org/en/master/user/quickstart/#post-a-multipart-encoded-file .
After some research, I found that the recommended way to customize the boundary with requests is using requests-toolbelt. See https://toolbelt.readthedocs.io/en/latest/uploading-data.html#streaming-multipart-data-encoder .
However, this was not working with my target form for unknown reasons, so I settled on a more direct fix: monkey-patching the underlying urllib3.filepost.choose_boundary to return a constant value.
urllib3.filepost.choose_boundary = lambda: 'my_super_special_form_boundary'

This could be made an option of requests_cache.install_cache. At least, it would be good to note the cache key limitation in the docs.
Also, ignore_params does not work at all with a multipart/form-data request.

@gregdingle I see that this issue is a couple years old now, but are you still using requests-cache, and is support for multipart form data something you're still interested in?

I'm not interested anymore but the software I wrote lives on with the workaround I implemented.
--
Greg Dingle

On Mar 19, 2021, at 10:50, Jordan Cook @.***> wrote:
@gregdingle https://github.com/gregdingle I see that this issue is a couple years old now, but are you still using requests-cache, and is support for multipart form data something you're still interested in?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/reclosedev/requests-cache/issues/113#issuecomment-803006507, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAAHA7IN4PLTMPFDJZIQJJ3TEOFGFANCNFSM4FTIALVA.

I'm not interested anymore but the software I wrote lives on with the workaround I implemented.
--
Greg Dingle

On Mar 19, 2021, at 10:50, Jordan Cook @.*** @.***>> wrote:
@gregdingle https://github.com/gregdingle I see that this issue is a couple years old now, but are you still using requests-cache, and is support for multipart form data something you're still interested in?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/reclosedev/requests-cache/issues/113#issuecomment-803006507, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAAHA7IN4PLTMPFDJZIQJJ3TEOFGFANCNFSM4FTIALVA.

Frustratingly, requests uses urllib3.request.encode_multipart_formdata(), which does accept a custom boundary, but requests doesn't support passing any keyword args to it (here).
After doing a bit more digging on this, I couldn't find a better solution than the one you posted, so I ended up using that. It will only be used if allowable_methods includes POST and if files are specified.
Thanks for the tip!


Support kms key

request-checks: true

Codecov Report

Merging #12 into master will decrease coverage by 0.04%.
The diff coverage is 11.11%.

@@            Coverage Diff             @@
##           master      #12      +/-   ##
==========================================
- Coverage   11.47%   11.42%   -0.05%
==========================================
  Files           1        1
  Lines          61       70       +9
==========================================
+ Hits            7        8       +1
- Misses         54       62       +8

Impacted Files
Coverage Δ

resolver.go
11.42% <11.11%> (-0.05%)
:arrow_down:

Continue to review full report at Codecov.

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


Fix minimap hidden option when side panels are not in "side-stones arrangement"

Fixes #976
This allows the minimap to be in hidden when in side-stones arrangement and not in side-stones arrangement.

This is also hiding the logout button.

Fixed in #3820


Deploy: implements customizable binary path rewriting/translation

If you've previously used serialport, you have a broken version of the cached binary. Clean it out with:
rm -r ~/.tessel/binaries/serialport-2.0.6-Release/

Smoke Test:

Set up project
mkdir serialdemo; cd serialdemo;
t2 init;
npm install firmata;
touch blink.js;

Paste this into blink.js:
var Board = require("firmata");
var board = new Board("/dev/ttyACM0");

board.on("ready", function() {
  var pin = 13;
  var state = 1;

  board.pinMode(pin, board.MODES.OUTPUT);

  setInterval(function() {
    board.digitalWrite(pin, (state ^= 1));
  }, 500);
});

Plug an Arduino into your Tessel 2

Run t2 run blink.js

The Arduino's L or an LED plugged into pin 13 should be blinking.

@HipsterBrown @johnnyman727 (if you have a chance? probably not, that's ok)

@rwaldron Will test that this today.

@rwaldron Nevermind. Missed the fact that I needed an Arduino to test. Might be able to pick one up tomorrow.

Followed your smoke test with a successfully blinking L on my new Arduino Uno! :+1:

Thanks!

@rwaldron I've run into some issues with serialport and tessel+arduino. I'm trying to get your smoketest here working and I would like to know what versions of the following were used (or what you expect to be working): node, serialport, firmata, and t2-cli. Thanks!

@rwaldron A few more bits of information after some hacking. I did get your smoke test working on node v6.11.1, firmata 0.17.0, serialport 4.0.7, but only after I did a t2 run blink.js --full. For some reason it's not getting the serialport binary fully onto the tessel until I do that. If I do t2 run blink.js I get the Missing serialport dependency error. I'm happy to dig around some more if you can point me in the right direction. Cheers mate.

@ruswerner a bunch of stuff was broken recently, but fixes have either landed or are landing in the appropriate places. The short version is that npm3 flat install is bogus and totally f'ed up our dependency graphing and analysis system :(

@rwaldron No worries. I eventually figured this out on my own. I think the misunderstanding here, and probably others have had as well, is that the development environment needs to be, and should be, on node 4 LTS. It should probably be in the tessel 2 docs somewhere, b/c I've read them a thousand times and can't recall coming across the "supported dev stack". Anyway, not a big deal once you know what's going on. :) The CLI docs say:

Prerequisites for installation: Node.js 4.2.x or greater

...and it should probably say Node.js 4.2.x required.

That's true, when this issue was first filed Tessel 2 was at Node 4 LTS, but it's presently at Node 6 LTS support—what version were you using?

Well I started out using node 4/npm 2 and it was all working, then at some point I switched to node 6/npm 3 and was having trouble with the serialport binary being included. It all makes sense now. No worries. Cheers for the help.


Update composer require command on README

Coverage remained the same at 98.919% when pulling 060dcb838ca9febdd2e49683812383ea2143808c on l0gicgate:Update-Readme into 01bb662ae13c6f6a1a431debb3bd983e419d033c on slimphp:master.


Extend 2c scenario

Extend all 2c scenario to use both linuxbridge and ovs with vlan + vxlan neutron drivers.

These changes were tested here


What about using JSON data?

Hi Rayman,
I'm trying to decide wich tool I'll use to show wind particles in my Cesium. I have found this and yours.
Your tool is fast and pretty, but uses NC file. The other one uses JSON data extracted using GRIB2JSON  and is what I need becaus my METOC GOV entity gives me this format (http://s0.cptec.inpe.br/oceano/blend/vsm/vsm_diario_ams/vsm.json) but it is very slow and ugly.
Can you point to me where in the code I can modify to use JSON data in this format (like the other tool? As you can see it is very simple and easy to understand.
I have some skills in JS but I found your code too big and with many classes. If you lead me in right direction I think I can do this job.
Thanks for your help.
By the way... can you make it more stand alone like the other one? I see you make all Cesium instances stuff inside your code. Leave this work to the user.

It should not be difficult since the data process is decoupled with the rendering.
You can add a function for loading JSON data in the dataProcess.js, and call your JSON loading function in the exposed function loadData.
However, you should ensure that the data return from your JSON loading function should have the same structure as that of function loadNetCDF

Ok...
I'll see that. Thanks.
Can you please keep this open so I can feed the thread with my progress?

OK, actually I prefer letting the issue owners to close their own issues if they have been resolved.

@icemagno Hello, I have the same question as you, how do you deal with this json form of data?

@ding991 well ... I'm working on other things now and let this left without doing anything .... sorry.

@icemagno well. Thanks


Change user e-mail address.

Currently, as an admin, it is not possible to change ones email address.

Hi,
Long time no see!
This is applied on the v1.15!
Regards


Update augmentor_utils.py

Fix bug : "IndexError: too many indices for array: array is 1-dimensional, but 2 were indexed"
Check that the data is not empty before operating the data

Hi
@Number1JT
We are grateful for your efforts in helping improve this open-source project during your personal time.
Welcome to join OpenMMLab Special Interest Group (SIG) private channel on Discord, where you can share your experiences, ideas, and build connections with like-minded peers. To join the SIG channel, simply message moderator— OpenMMLab on Discord or briefly share your open-source contributions in the #introductions channel and we will assist you. Look forward to seeing you there! Join us ：https://discord.gg/UjgXkPWNqA
If you have a WeChat account，welcome to join our community on WeChat. You can add our assistant ：openmmlabwx. Please add "mmsig + Github ID" as a remark when adding friends：）
Thank you again for your contribution❤


About track_comments views, there's a small bug make comment count incorrect.

In template partial_feed_comments.html when feed has no comment, it will return one hint:

{% trans 'Be the first one to comment' %}

static/js/feeds.js line 264 will treat this hint as one comment and update comment count to 1, that's not correct.
264    $(".comment-count", post_container).text($("ol li", container).length);

so how about remove that hint or write it in partial_feed.html below the

 , then update views.trakc_coments and  use jQuery controll it's visibility.

Hi @rthel I haven't been able to replicate the behavior. Until now, the results are consistent with the expected. Can you provide more information?

bug replicate
hello, look at this, I make a jpeg, please click the link and it may help me to explain the issue.

It was hard to spot the bug @rthel and now I see what you're talking about. Can you provide a fix for it in a new PR?

@sebastian-code Yes, I'd love to : )

Solved with #115


Feature/typescript

What does it do?
Moved files to typescript and resolved some type issues and changed imports to use import/export
Why is it needed?
I think it is important to have type safety whether it is a plugin or an application. This is especially important in dynamically typed languages such as javascript where runtime errors pop up all the time.
Typescript will also help maintainability of this project by making it easier to implement features and finding bugs if there are inconsistent types.
How to test it?
run yarn build and the plugin should work like before
Related issue(s)/PR(s)
#31

Before going further, is there a way to easily extend on the rules of the base eslint config? It seems that it is also overriding all the rules since we use
"plugin:@typescript-eslint/eslint-recommended",
"plugin:@typescript-eslint/recommended-requiring-type-checking"

Before going further, is there a way to easily extend on the rules of the base eslint config? It seems that it is also overriding all the rules since we use

As far as I'm concerned no rules are inherited from the base eslint config.
The overrides basicly start from scratch.

I have tested some of the basic functionality on a local project and it seems to work!
Some notable changes:

warnings from eslint should not be treated as errors and can be fixed along the way
I have modified some eslint rules so they emit warnings instead of errors
Eslint has been split into two overrides to accomodate the two tsconfig files

Would you like to give a final review @boazpoolman ? :)


[COMPILER] Broken next with ensure node

Minimal repro:
while false
  begin
  ensure
  end
  next
end

From this file:
RUBY_ISEQ_DUMP_DEBUG=prism make test/rdoc/test_rdoc_context.rb

Worth noting that there are two things I can see immediately wrong:

We don't compile the NextNode arguments in both cases within the NextNode
add_ensure_iseq casts to a CRuby node, not a Prism one, we likely need a pm_add_ensure_iseq.

Closed by @eightbitraptor in https://github.com/ruby/ruby/pull/9204


Edit deck command removes all cards in that deck

EditDeckCommandParser creates an EditDeckCommand with the EditDeckDescriptor constructed by the name of the editedDeck only.
The EditDeckDescriptor does not maintain the old card list, but create a new Deck with new name and empty card list.
Resolve: copy the old card list to the editedDeck (in EditDeckCommand)