Will Xamarin.Google.iOS.UserMessagingPlatform be ever updated and documented?

Fellows, it seems the last time this library (Xamarin.Google.iOS.UserMessagingPlatform) was in 2020, and several Devs are facing issues. Also, there is no document of how to use it:
https://www.nuget.org/packages/Xamarin.Google.iOS.UserMessagingPlatform

You can see questions concerns in different places like here:

https://github.com/xamarin/XamarinComponents/issues/931
https://stackoverflow.com/questions/68302342/guide-for-xamarin-google-usermessagingplatform/71299843?noredirect=1#comment135930665_71299843

Currently, only the Android lib is being updated from time to time:
https://www.nuget.org/packages/Xamarin.Google.UserMessagingPlatform

Any additional thoughts, @mikeks?

Bing Chat provided me this answer of how use it, but I'm not sure it's workable. @mikeks would be a better tester than me.
Thank you for clarifying your question. UserMessagingPlatform is a library that helps you display GDPR consent messages to your app users in the European Economic Area (EEA) or the UK¹. It is part of the Google Mobile Ads SDK and works with AdMob and other Google advertising products².
To use UserMessagingPlatform in your iOS app, you need to follow these steps:

Install the Xamarin.Google.iOS.UserMessagingPlatform NuGet package in your app project³.
Add the User Messaging Platform framework to your Xcode project⁴.
Initialize the Google Mobile Ads SDK in your app delegate's FinishedLaunching method.
Request consent information from the User Messaging Platform API using the ConsentInformation class.
Check if the user is located in the EEA or the UK using the IsRequestLocationInEeaOrUnknown property.
If yes, load and display a consent message using the ConsentForm class.
Handle the user's consent choice using the ConsentStatus enum.

Here is an example of how to use UserMessagingPlatform in your iOS app:
using Google.MobileAds;
using Google.MobileAds.Consent;
using UIKit;

namespace MyApp
{
    public class AppDelegate : UIApplicationDelegate
    {
        public override bool FinishedLaunching(UIApplication application, NSDictionary launchOptions)
        {
            // Initialize Google Mobile Ads SDK
            MobileAds.SharedInstance.Start(null);

            // Request consent information
            ConsentInformation.SharedInstance.RequestConsentInfoUpdate(new string[] { "pub-0[1](https://cookieinformation.com/resources/blog/is-your-mobile-app-gdpr-compliant/)[2](https://www.appknox.com/resources/guides/make-your-mobile-app-compliant-to-gdpr)[3](https://support.google.com/admob/answer/10113207?hl=en)[4](https://stackoverflow.com/questions/50486708/how-to-add-gdpr-consent-dialog-in-app-and-gdpr-related-confusions)56789012345" }, (error) =>
            {
                if (error == null)
                {
                    // Check user location
                    if (ConsentInformation.SharedInstance.IsRequestLocationInEeaOrUnknown)
                    {
                        // Load consent message
                        ConsentForm consentForm = new ConsentForm();
                        consentForm.Load((loadError) =>
                        {
                            if (loadError == null)
                            {
                                // Show consent message
                                consentForm.Show((dismissError, userPrefersAdFree) =>
                                {
                                    if (dismissError == null)
                                    {
                                        // Handle user choice
                                        switch (ConsentInformation.SharedInstance.ConsentStatus)
                                        {
                                            case ConsentStatus.NonPersonalized:
                                                // Show non-personalized ads
                                                break;
                                            case ConsentStatus.Personalized:
                                                // Show personalized ads
                                                break;
                                            default:
                                                // No consent given, do not show ads
                                                break;
                                        }
                                    }
                                });
                            }
                        });
                    }
                }
            });

            return true;
        }
    }
}

I hope this helps you with your app development. If you have any other questions, please feel free to ask. 😊
Source: Conversation with Bing, 9/18/2023
(1) GDPR compliance for mobile apps: A checklist in 7 steps. https://cookieinformation.com/resources/blog/is-your-mobile-app-gdpr-compliant/.
(2) Guide: Make Your Mobile App Compliant to GDPR - Appknox. https://www.appknox.com/resources/guides/make-your-mobile-app-compliant-to-gdpr.
(3) Create GDPR messages for apps - Google AdMob Help. https://support.google.com/admob/answer/10113207?hl=en.
(4) How to add GDPR consent dialog in app and GDPR related confusions. https://stackoverflow.com/questions/50486708/how-to-add-gdpr-consent-dialog-in-app-and-gdpr-related-confusions.

Hi @FANMixco, I have a .NET MAUI project running on .NET 7. I've implemented GDPR consent forms on Android using Xamarin.Google.UserMessagingPlatform, but have struggled to find anything for iOS. I tried to follow the guide above but "using Google.MobileAds.Consent;" returns:
"The type or namespace name 'Consent' does not exist in the namespace 'Google.MobileAds' (are you missing an assembly reference?)"
And as a result none of the code below that point works.
I have the "Xamarin.Google.iOS.UserMessagingPlatform" nuget package installed.
Do you have any idea where I'm going wrong? Or is the package just not compatible with .NET MAUI?.

Hi @FANMixco, I have a .NET MAUI project running on .NET 7. I've implemented GDPR consent forms on Android using Xamarin.Google.UserMessagingPlatform, but have struggled to find anything for iOS. I tried to follow the guide above but "using Google.MobileAds.Consent;" returns:
"The type or namespace name 'Consent' does not exist in the namespace 'Google.MobileAds' (are you missing an assembly reference?)"
And as a result none of the code below that point works.
I have the "Xamarin.Google.iOS.UserMessagingPlatform" nuget package installed.
Do you have any idea where I'm going wrong? Or is the package just not compatible with .NET MAUI?.

Hi @BenEastpoint, I'm the wrong candidate for your question. I don't develop for iOS. I opened the question since several people brought the same question to StackOverflow to my Android's example. I would say that as I raised in this ticket, the lib might be incompatible since as you could read in this question, the last time it was updated it was several years ago. You can check the contributors of this repo and asked them.

I agree that Microsoft should provide bindings for this component. It's one of the core components for iOS developers and having them available would make the .NET iOS platform more attractive.
I have copied and fixed the bindings myself - tested with Mobile Ads SDK 10.12.0 & UMP SDK 2.1.0:
Google.MobileAds.zip
To use it, you need to download the Objective-C package from here and copy the framework folders into the project.
I am sure there are many errors with my bindings and I have commented out a lot of code that I personally don't need so again, it would be great if proper bindings could be provided from Microsoft.

Any thoughts @rolfbjarne? I get frequent questions about this topic and I don't even own a mac.

Do you know if this project is still alive @pjcollins?

Any thoughts @rolfbjarne? I get frequent questions about this topic and I don't even own a mac.

That's a question for our PM (CC @davidortinau) - or you could contact him at<EMAIL_ADDRESS>

Any thoughts @rolfbjarne? I get frequent questions about this topic and I don't even own a mac.

That's a question for our PM (CC @davidortinau) - or you could contact him at<EMAIL_ADDRESS>
Thank you, @rolfbjarne. @tipa or @BenEastpoint, can you contact @davidortinau? This topic is outside my scope since I don't even own a mac.

@tipa thanks for sharing your bindings, this is very useful. Looks like those are for .Net Maui. Working on converting them for Xamarin Forms as we are still running Forms in prod at this time. Maui is a work in progress on our side. Have you successfully ran them these bindings with Forms?

No those bindings are not for Maui. I am using neither MAUI nor Forms, I am using "vanilla" .NET 8 for iOS

Oh I see. Perfect, will try to figure out the Xamarin way from them then. Thanks again, this is a very good starting point. Will provide an update and contribute if we make it happen.

Any comments @davidortinau? It seems the project is kind of death and no one is providing any input. If the project is dead, perhaps, it will be a good idea to achieve it or add some comments. Thanks.

Any updates on this? It's very frustrating to deal with these kind of issues on a framework backed and supported by Microsoft.

@davidortinau?

Did you consider reaching out by email to @davidortinau? I didn't do it since it doesn't affect me. I'm not an iOS developer.

@davidortinau?

Did you consider reaching out by email to @davidortinau? I didn't and won't do it since it doesn't affect me. I'm not an iOS developer.

I'd like to clarify that my intention is not to seek direct individual contact, but rather to direct attention to this GitHub issue and Microsoft.

@davidortinau?

Did you consider reaching out by email to @davidortinau? I didn't and won't do it since it doesn't affect me. I'm not an iOS developer.

I'd like to clarify that my intention is not to seek direct individual contact, but rather to direct attention to this GitHub issue and Microsoft.

I don't think if people directly contact him, either Microsoft or his team will do something about it. It's quite obvious at this point in time. It's almost 4 years since the last update. In my case, I'm unsubscribing from this topic. This is not my fight since I don't code for iOS. Good luck.

I left a tweet in X if anyone else wants to give it a try:
https://twitter.com/FedeStories/status/1745586163157537025

You don't really need the firebase component directly in your app.  You can just work through your server to firebase.

Is there any update on this? This is very important for developers that need to use Admob on iOS using MAUI since the new RGPD requirements for user concent. Is a blocking issue since January 16 2024, and I can't find any solution for iOS yet.

Did you consider to tweet @davidortinau?
https://twitter.com/davidortinau

Bing Chat provided me this answer of how use it, but I'm not sure it's workable. @mikeks would be a better tester than me.

I tested, the code is outdated, but I was able to compile it with some changes. I didn't test it yet, I will update this when I test the code.
Corrected code:
			var requestParameters = new RequestParameters();
			requestParameters.TagForUnderAgeOfConsent = false;

#if DEBUG
			requestParameters.DebugSettings = new DebugSettings
			{
				Geography = DebugGeography.Eea
			};
#endif

			ConsentInformation.SharedInstance.RequestConsentInfoUpdate(requestParameters, (error) =>
			{
				if (error == null)
				{
					consentStatus = ConsentInformation.SharedInstance.ConsentStatus;
					// Check user location
					if (consentStatus == ConsentStatus.Unknown
					|| consentStatus == ConsentStatus.Required) // IsRequestLocationInEeaOrUnknown
					{
						// Load consent message
                                                ConsentForm.Load((consentForm, loadError) =>
                                                {
	                                                if (loadError == null)
	                                                {
		                                                // Show consent message
		                                                consentForm.Present(viewController);
	                                                }
                                                });
					}
				}
			});

Hey @mjbond-msft, @Redth, @dalexsoto, do you know if this repo will be ever updated or is it a dead project? It seems almost 4 years since its last update and @davidortinau has never replied. If you plan to stop its development, perhaps, you can archive it and deprecate it to avoid more confusion. Thank you.

Hey @mikeks, if you were able to fix the code, perhaps, you could provide the updated one here. It will be useful for everyone who codes for iOS (it's not my case). Thank you.


Convert to mention input if the Text area already has some value

If I already have the markup in textarea then I would want to be converted to Mention input. or else some sort of reset value or set value I need

jkj

You can actually change the val method behaviour:
`val : function (callback) {
if (!_.isFunction(callback)) {
                resetInput(callback);
                return;

            }
            callback.call(this, mentionsCollection.length ? elmInputBox.data('messageText') : getInputBoxValue());
        },`


Why no GPT-4-Turbo?

Once I'm trying to calculate tokens using GPT-4-Turbo, I'm getting the error "Model gpt-4-turbo not found, defaulting to minimum token limit 4000".
Looks like it's missing in model_helper.py (MODELS_2_TOKEN_LIMITS, AOAI_2_OAI)
Is there a reason for that?

That's because this was designed originally for Azure OpenAI users, who don't have that as a model name. However, I can add support for OpenAI.com specific model names as well:
https://github.com/pamelafox/openai-messages-token-helper/pull/19

Released 0.1.10 with that model name. Let me know if you run into additional issues. Thanks for filing!


infrastructure modules and duplication

After reading through the best practices thread and looking through both the live and infrastructure modules repos, my understanding is that the infrastructure modules should each represent a logical, domain-specific piece of your infrastructure -- ie backend-app, mysql.
However in my case, my application uses 3 different RDS instances.  My inclination is to make them 3 separate infrastructure modules so that i get isolated state for each.  However, to a large degree, the configurations between these 3 modules would be the same and there would therefore be a good deal of duplication
How might I handle something like this in Terragrunt?

Hi @dtirer I think defining each of the 3 RDS instances in separate modules, then the application that consumes them as a 4th (with the concept of 3 inputs for DB URLs, etc) makes perfect sense to me. That's the way I'd handle it.

@mcalhoun just to clarify, I would have something like below, where each one is an entirely isolated configuration:
### live infrastructure

staging/
    mysql1/
    mysql2/
    mysql3/
production/
    mysql1/
        terrafrom.tfvars
    mysql2/
        terrafrom.tfvars
    mysql3/
        terrafrom.tfvars

### infrastructure modules
infrastructure_modules/
    mysql1/
         vars.tf
         main.tf
         output.tf
    mysql2/
         vars.tf
         main.tf
         output.tf
    mysql3/
         vars.tf
         main.tf
         output.tf

or were you suggesting something different?

In infrastructure_modules, if you can make your module generic enough that it applies to all 3 databases with just some parameter variance (input variables), then you could have just 1 module, but your infrastructure_live would still appear as you've described.

@mcalhoun yeah, that's something I was considering.  Though I wasn't sure if that defeated the intention of the infrastructure_modules as described in the best practices.  It then couples all of those databases to some degree

Nope, it isn't in conflict with the intention at all. If you can make a generic module that meets your needs with just a few parameter variations, then you should. The composition is then done in the infrastructure-live layer.

Not 100% sure if this is the same kind of issue I am having, but will add a comment here in the hope that it is!
I want to have a completely generic "vpc" module (for example), that I can configure with environment specific tfvars files. Right now, the only thing stopping me is that in the module definition I have to have the resource name, it can't be set via the environments tfvars file (if it will be used elsewhere in the module, such as setting security groups that is).
For example, module:
resource "aws_vpc" "vpc" {
  cidr_block = "${var.cidr_block}"
  tags {
      Name = "${var.name}"
      Role = "${var.role}"
  }
}

I would like to set the resource name with something like "${var.name}" but then I can't use that in my subnet generation as follows:
`resource "aws_subnet" "private" {
count = "${var.private_subnet_count}"
vpc_id     = "${aws_vpc.vpc.id}" #how can the vpc name be generic and allow to create multiple of the same module?`

What do you mean by "resource name"? Do you mean resource "aws_vpc" "foo" that the foo should be configurable? If so, why?

Sorry my comment wasn't very clear, probably because I'm still a little confused about how terragrunt should be used :).
If I take creating instances as an example, I want one module called "awsinstance" or something, and then be able to reuse that to create many similar instances, is that how things are supposed to work? From what I can see, it seems like I would create a different "module" for each instance almost (like a "bastion host" module and a "webserver module", but that can't be right as it would defeat the purpose right?

Do you mean that in resource "aws_vpc" "foo"

Yeah, because otherwise I can only have one instance of "foo", isn't that the case?

If I take creating instances as an example, I want one module called "awsinstance" or something, and then be able to reuse that to create many similar instances, is that how things are supposed to work?

Yes, that's the idea. One way to do it is to create a separate terraform.tfvars files, in separate folders, to deploy each of these instances. That way, the state is stored separately for each one. Each .tfvars file only defines the parameters that differ between these instances (e.g., name tags, instance types), so it's as DRY as you can get it.

Yeah, because otherwise I can only have one instance of "foo", isn't that the case?

You don't rename Terraform resources like that... You may want to go through our terraform guide to become more familiar with the language before jumping into Terragrunt.

Excellent advice, thanks :)

Closing as it looks like the original question has been answered. Please open a new issue if that is not the case, or if there are any follow up questions. Thanks.


Add fabric support for preprocessing

So that the preprocessing script can be run parallelly across several machines.

Solved via #41.


How to send Synchronous Request

Moya v9
Swift 4
Xcode v9
Once I create the provider I'm able to send request but only Asynchronous request. Is there is a specific way that through it I would be able to send Synchronous request where the code will have to wait until the response of the request is received in order to processed.
I read your documentation regarding the "Threading" and found this part of code.
provider = MoyaProvider<GitHub>(callbackQueue: DispatchQueue.global(.utility))

What values other than ".utility" can I use and what dose they represent and how can I override the Alamofire which put the request in the background. I would like both to work on the same thread (main) so they would work in sequence.

Hey @hamda147,
Why do you need a synchronous request? It's not recommended to do network requests synchronously. I guess you could use DispatchQueue.main? I'm not sure, to be honest :neutral_face:

I know, it's a really bad practice specially if the request take a long period of time. But, I have to use it. Anyway I'm trying it write now.

Unfortunately that didn't work.

@hamada147 Can you give me more context as to why you need to perform the request synchronously?

because of API bad design. I need to get some data from request#1 then use these data for request#2 then use that data for the final request#3.

@hamada147 You can nest your requests so that you can still perform everything asynchronously.
provider.request(.zen) { result in
    switch result {
    case .success(let response):
         // launch next request
        provider.request(.zen) { result in
            switch result {
            case .success(let response):
                // add 3rd request here
            case .failure(let error):
                // failure code
            }
        }
    case .failure(let error):
        // failure code
    }
}

The code gets a bit messy but you can look into using some sort of abstraction like a Promise to make it more readable.
https://github.com/mxcl/PromiseKit

@SD10 I was doing it this way and became way too messy. I will look into Promise and get back to you.

@SD10  I looked into it and I did a small test and this will work really good but since I'm using the Notification Center a lot in my project. I decided to go with that. So the request would work in Asynchronies manner but only send the request after it receives the response from the previous request and so on.

@SD10 you can mark it as closed ;)


Market missing after creating it - bug

I create a market and get bell message for it but doesnt show up in my created markets (in trading or SB)

I do get the notification for "Sign to approve pre-liquidity orders) just my market doesnt appear in My created markets
I also see my market in the Popular markets list

I'm seeing this working fine this morning, will keep an eye out for this though. potentially just a bad state for the example you found?


fix: allow docker build to take up to 40 minutes

This PR proposes adding a travis_wait instruction to docker build within the travis config file. Assuming that building the container takes less than 40 minutes, the Travis build should pass.

@kaczmarj Wow, thanks!  I think building glibc takes longer than 40 minutes, but I'll merge this and find out!

I believe Travis CI limits jobs to 50 minutes total (docs), so if it does not complete in 40 minutes, we could increase to 50. If that does not work, I would recommend using CircleCI because it has must longer time limits.


download link for model checkpoints

Neither the installation guide nor the encoder package doc mentions where to download the checkpoints. It used to be somewhere? Where are the checkpoints available now?
https://geo-sam.readthedocs.io/en/latest/Usage/encoder_package.html

Hi @cmosig
The checkpoints available at: https://geo-sam.readthedocs.io/en/latest/Usage/encoding.html#download-sam-checkpoints

Thanks! I just didn't find it... sorry.


Add pattern for StackHawk API keys

I wish I could have been on this thread when it got approved. Thanks for adding this @x-way


Refer users to find_namespace_packages() for python3 code

I tried to use this excellent setup.py with my shiny new python3 code and it failed to find anything to build. After figuring out why (using python3 namespace packages) it seems like a good idea to help others via a comment.

Bummer on this being closed. Can you provide some feedback on why?


Support rename_all attribute

#[typetag::serde(tag = "type", rename_all = "snake_case")]
trait WebEvent {...} //        ^^^^^^^^^^^^^^^^^^^^^^^^^

#[typetag::serde]
impl WebEvent for PageLoad {...}

#[typetag::serde]
impl WebEvent for Click {...}

These should serialize with "type": "page_load" and "type": "click".

As far as my understanding of macros goes, this is difficult to achieve at compile time because there isn't a way to read this value from impl sites, where type names can be known. Would it be an acceptable implementation, then, to paste RenameRule::apply_to_variant to the trait-defining site, and convert the strings during the creation of typetag::Registry? This would, of course, introduce multiple copies of the renaming code if multiple traits are decorated with typetag, but imo the code is short enough for this to not pose a huge problem.
I'd be happy to make a PR if this is the case!

any update on this feature?


Quoting a message on windows

Can't quote messages on the windows version of the app.

this is fixed now on version 2.5.2


Some of function is not matched with API spec

Default information

lbd-sdk-js version:  1.4.2

Description of the bug
Following sdk functions are not matched with API Spec

parentOfNonFungibleToken: it has to return single NonFungibleId
rootOfNonFungibleToken: it has to return single NonFungibleId

Missed sdk function for GET /v1/user-requests/{requestSessionToken}

Resolved by #106


adding support for claude, azure, cohere, and replicate

Hi @eli64s,
Noticed you're calling OpenAI via REST Endpoints. I'm working on litellm (simple library to standardize LLM API Calls - https://github.com/BerriAI/litellm) and was wondering if we could be helpful.
I added support for Claude, Azure, Cohere and Llama2 (via Replicate) with an else-if statement. The code is pretty similar to the OpenAI class - as litellm follows the same pattern as the openai-python sdk.
Would love to know if this helps.
Happy to add additional tests / update documentation, if the initial PR looks good to you.

also curious - why call it via REST endpoints vs. the sdk or using langchain?

Hi @krrishdholakia ,
I tried your PR with Azure endpoint but it's not working,

litellm not in pyproject.toml
the code implement a function to test the token https://github.com/eli64s/readme-ai/blob/main/readmeai/conf.py#L33 and the function failed
your if "gpt" in self.engine will not work as working with azure endpoint engine containt gpt inside https://docs.litellm.ai/docs/completion/supported#azure-openai-chat-completion-models

I can help to implement a better implementation if needed

Hey @krrishdholakia, this is a cool project!
Using REST endpoints was more of wanting control and flexibility at first, but I've been exploring new implementations recently with Langchain and other frameworks such as LlamaIndex.
Litellm looks like a nice way to standardize and consolidate things. Could you add a few items when you get a moment:

Update all requirement files with litellm
Update the code if theres been any changes to litellm

Thanks!
Eli


DOC: Add viewcode extension.

Closes https://github.com/NSLS-II/bluesky/issues/665

Codecov Report

Merging #666 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #666   +/-   ##
=======================================
  Coverage   82.72%   82.72%
=======================================
  Files          20       20
  Lines        4388     4388
=======================================
  Hits         3630     3630
  Misses        758      758

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 5ef5358...ca5a0e8. Read the comment docs.

Self-merging this docs configuration change.


Implement LV based on paged WFS reading

Parse data from the original source (LV Government). This will allow us to add more years to the data collection (EuroCrops now only has 2021).

Changelog :-)
I'm inclined to create a PR template that asks to create a changelog entry ;-)

I'd love that! For every PR that changes more than say 10 lines; changelog.md should contain a some change :)

I was more thinking of a checkbox in the PR description fields (similar to issue templates), but I guess a CI check also works (although a one line change could also be significant) ;-)


wasm: fix "thread_in_wasm flag was not set" crash in debug builds.

Fixes istio/istio#30645.
Signed-off-by: Piotr Sikora<EMAIL_ADDRESS>

/retest

Its definitely possible I built it wrong as I had some difficulty, but I tested this and it seemed to have the same issue.

Thanks for testing! It's definitely possible that this PR doesn't fix the issue (I didn't replicate it locally yet), it's a cherry-pick of a fix that looked relevant, but perhaps there are even more issues around that code. I'll try to dig into it next week.

OK, this indeed doesn't work. The failure can be easily replicated using:
bazel test -c dbg //test/extensions/common/wasm:wasm_test

It passes on the CI, because it only uses dbg in tests with sanitizers, and trap handlers are disabled with sanitizers.
I think it might be a false-positive, but I filled the issue with V8 team:
https://bugs.chromium.org/p/v8/issues/detail?id=11713

@howardjohn if that's not too much trouble, then could verify the updated version? It fixes the issue for me.

@PiotrSikora I was able to test this and confirmed it addressed the issue

@moderation I know that you're not a big fan of carrying patches, but debug builds are completely broken right now. Those patches will be removed once we update to V8 v9.2, but it won't happen until the end of next week when v9.2 is branched.

Just like I'm not a fan of carrying patches, you are not a fan of putting a TODO(PiotrSikora) in the patch, with a date / target for resolution, so we know who we can go to when the patch blocks a dependency upgrade :smile:

Just like I'm not a fan of carrying patches, you are not a fan of putting a TODO(PiotrSikora) in the patch, with a date / target for resolution, so we know who we can go to when the patch blocks a dependency upgrade 😄

I've added TODO without a date or resolution, since there is nothing to do until the next version is branched and we update to it. I'm not a fan of adding TODO in this case, since patches are already clearly commented with the source of the cherry-picks, and adding it existing PRs triggers another multi-hour delay cycle, which in turn delays approval process and merge by another few days, while providing virtually zero value (historically speaking, I'm going be doing the update anyway).

/retest

@moderation PTAL.

/lgtm deps

I merged v8 9.2, do we still need this?

I merged v8 9.2, do we still need this?

Nope. Thanks!


Implemented changing language in-app

This allows users to use a different supported locale than the one that
matches the device's locale.
Implements feature request #585

In my phone, the languages appear somewhat strangely. They appear in a mix of lower case and upper case, and some are right adjusted. I know that you're using the Locale.GetDisplayName, which should be the right one, but it's very different from what i get in the device's language selector.
It would also be nice if:

The list would be sorted;
The current selected locale be displayed in the settings line, below the "Change language". And probably that should just be called "Language", as i believe it's what's called in the default device's settings.

And maybe there should be an option called "Default" that would be the device's default locale, but maybe this is superfluous.
Can't finish this right now, i'll take another look soon.

Updated the PR.
I have not implemented a "Default" to have the app use the system locale as I'm not sure what the use case would be.

Much better, but there are still some issues. Dealing with Locales isn't simple, and i believe that some of the code simplifies it too much, leading to subtle bugs that can pass unnoticed.
For instance, as is the current code doesn't work with language_country variants (for instance pt_BR, i'll point out where it fails).
My point is that we should use the default framework functions to deal with locale, namely:
https://developer.android.com/reference/java/util/Locale.html#forLanguageTag(java.lang.String)
https://developer.android.com/reference/java/util/Locale.html#toLanguageTag()
Unfortunately, these are v21+, so some fallback needs to happen for older versions, but i believe we should use those.
Furthermore, you'll notice that sorting the entries won't really make them appear sorted. This is because you're sorting the entries based on the device's locale (not the locale currently selected for the app), and you're presenting the locale according to it's name in that locale (hence we get chinese/japanese/arabic characters). There might be some reasoning to presenting the locale name localized to that locale, but i think that it introduces some inconsistencies that we should avoid. I propose that the sort and display are done in the locale currently selected. I'll point that out in the code.


Required minimum Node.js bump for Azure SDK

Minimum Node.js version may be incorrect This issue was created because the following file has been flagged with an out-of-date version number for Node.js: {filename and path} Required Fix The Azure SDK now supports a minimum Node.js version of LTS (long term support). Please fix this file to indicate LTS support and remove the specific version number it currently references found on line {line number}. If you find your code sample no longer works when moving up to the LTS version, please log an issue against the specific Azure SDK at https://github.com/azure/azure-sdk-for-js. Required Exception If you can't change this file to support the minimum LTS of Node.js, please comment on this issue with the reason and details so we can refine our file search.

Document Details

Content: Configure the Azure Terraform Visual Studio Code extension
Content Source: articles/terraform/configure-vs-code-extension-for-terraform.md
Service: ****
GitHub Login: @
Microsoft Alias: barbkess

@bobbyreed Article has been rewritten and will publish tomorrow once underlying sample code is published (merged) in engineering team's repo.


embedded tomcat broke btwn 4.2.4 and 4.3.1

Current Behavior
we have some code to use embedded tomcat to run/debug locally which was working in 4.2.x but upon upgrading to 4.3.x, it no longer works.  appears to be something related to workbench (e.g. if i just add server war to the context, it runs fine).
error is:
SEVERE: Exception starting filter [CacheFilter]
java.lang.LinkageError: loader constraint violation: when resolving method 'org.slf4j.ILoggerFactory org.slf4j.impl.StaticLoggerBinder.getLoggerFactory()' the class loader org.apache.catalina.loader.ParallelWebappClassLoader @1b1438f7 of the current class, org/slf4j/LoggerFactory, and the class loader 'app' for the method's defining class, org/slf4j/impl/StaticLoggerBinder, have different Class objects for the type org/slf4j/ILoggerFactory used in the signature (org.slf4j.LoggerFactory is in unnamed module of loader org.apache.catalina.loader.ParallelWebappClassLoader @1b1438f7, parent loader 'app'; org.slf4j.impl.StaticLoggerBinder is in unnamed module of loader 'app')
at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:423)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:362)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:388)
at org.eclipse.rdf4j.workbench.proxy.CacheFilter.(CacheFilter.java:34)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499)
at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:480)
at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:120)
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:264)
at org.apache.catalina.core.ApplicationFilterConfig.(ApplicationFilterConfig.java:108)
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4591)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5233)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1419)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1409)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:833)
and I've ensured there is only one version of slf4j-api (slf4j-api-1.7.36.jar) in the rdf4j-workbench\WEB-INF\lib (verified through mvn dependency:tree as well).

looks like a lot changed btwn 4.2.x and 4.3.x but curious if anyone would know what may have changed around slf4j btwn the versions that might cause this problem.

Expected Behavior
for it to work :-)
Steps To Reproduce
embedded tomcat code is pretty straight-forward:
public static void main(final String[] args) throws Exception {
	final Tomcat tomcat = startRd4jServer("/.../sandbox.properties",
			"/.../rdf4j-server.war", "/.../rdf4j-workbench.war");
	tomcat.getServer().await();
}

public static Tomcat startRd4jServer(final String propLocation, final String warLocation, final String workbenchLocation) throws IOException, ServletException, LifecycleException {
	System.getProperties().putAll(loadFromFile(propLocation));
	final int port = Integer.parseInt(System.getProperty("port.http"));
	FileUtils.createParentDirectories(new File("./tomcat." + port + "/webapps/" + RDF4J_SERVER));

	FileUtils.createParentDirectories(new File("./tomcat." + port + "/webapps/" + RDF4J_WORKBENCH));

	final Tomcat tomcat = new Tomcat();
	tomcat.setPort(port);

	final StandardContext ctx1 = (StandardContext) tomcat.addWebapp("/" + RDF4J_SERVER, new File(warLocation).getAbsolutePath());
	ctx1.setResources(new StandardRoot(ctx1));
	final StandardContext ctx2 = (StandardContext) tomcat.addWebapp("/" + RDF4J_WORKBENCH, new File(workbenchLocation).getAbsolutePath());
	ctx2.setResources(new StandardRoot(ctx2));

	tomcat.start();
	Runtime.getRuntime().addShutdownHook(new Thread(() -> {
		try {
			tomcat.stop();
		} catch (final LifecycleException e) {
			log.error("Failed to stop Tomcat. Will execute `System.exit(1)`", e);
			System.exit(1);
		}
	}));
	return tomcat;
}

Version
4.3.4 (but tested 4.2.4 and 4.3.1 and saw it broke)
Are you interested in contributing a solution yourself?
None
Anything else?
No response

receive the same error when using vanilla 4.3.5 workbench.
when I use vanilla 4.2.4 it starts but I see:
SLF4J: Found binding in [jar:file:/C:/m2/repository/ch/qos/logback/logback-classic/1.2.10/logback-classic-1.2.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/C:/rdf4j-workbench/WEB-INF/lib/slf4j-jdk14-1.7.36.jar!/org/slf4j/impl/StaticLoggerBinder.class]

looks like rdf4j 4.3.x removed jar: slf4j-jdk14-1.7.36.jar
manually adding this back into the embedded tomcat deployment rdf4j-workbench directory resolves the issue
i'm guessing there's an underlying logging initializing/dependency issue in rdf4j, possibly, due to the various loggers (logback, jcl, jdk, etc.) that it drags in.

btw- lmk if adding embedded tomcat to rdf4j scope:test is desirable.  it does make debugging workbench/server a bit easier for us.


A11y_AzureToolsStorageExplorer_Useaconnectionstring_AttachwithConnectionString_Screenreader : NVDA unnecessarily announcing display name three times.

" Check out Accessibility Insights! - Identify accessibility bugs before check-in and make bug fixing aster and easier.”
GitHubTags: #A11y_AzureToolsStorageExplorer; #A11yMAS; #A11YTCS; #DesktopApp; #MAS1.3.1; #NVDA; Win10;
Environment Details:
Application Name: Azure Tools Storage Explorer
Application Version: 1.10.0
Windows10
Repro Steps:

Launch Storage Explorer
Navigate to "Open Connect Dialog" pane present on left side of screen and hit enter.
Select "Use a connection string" radio button and hit enter on Next button.
"Attach with Connection string" screen gets opened
Verify that all the elements of "Attach with Connection String" screen are accessible and MAS Compliant.
6.Start NVDA and navigate using the tab key.Observe the NVDA readings.

Actual:
NVDA unnecessarily announcing display name three times.
Expected:
NVDA should not announce display name three times.
User Impact:
Screen readers user will get unnecessarily get information three times.
Recommendation:
https://microsoft.sharepoint.com/teams/msenable/mas/Pages/browse-fixes.aspx
MAS Reference:
MAS1.3.1
https://microsoft.sharepoint.com/:w:/r/teams/msenable/_layouts/15/WopiFrame.aspx?sourcedoc={54f28d1f-a2d1-4dcd-84e1-5c9b87e8aba4}
Attachment for Reference

" Check out Accessibility Insights!

This is related to #1891 and will be fixed when the PR for that is merged. 😀

Fix merged into master.

Verified this issue on:Azure Tools Storage Explorer (Version: 1.12.0)
The issue is no longer to reproduces, Hence closing this bug.

GitHubTags: #Win32;

GithubTags:#Closed;

GitHubTags:#BM-TCS-StorageExplorer-Win32-Sep2019;


CDK experimental scroll is not working as expected in Angular 11 version (@angular/core 11.2.10)

What are you trying to do?
What are you trying to do?
Earlier i used @angular/core ^9.1.12, CDK 9.2.4 and CDK Experimental 9.2.4 version for dynamic size i have used 'autosize', and the scroll was working fine.
After upgrading to Angular 11 (@angular/core 11.2.10, CDK 11.2.9 and CDK Experimental 11.2.9), scroll functionality seems to broken and when I scroll to very end I am getting extra white space and scroll is jumping to end.
At some point of time scroll bar is scrolling same content repeatedly (scrolling same content like loop).
Please let me know if there is anything I need to do additional changes for Angular 11.
What troubleshooting steps have you tried?
What are you seeing that does not match your expectations?
After upgrading to Angular 11, CDK, CDK experimental to 11.2.9, scrollbar is not scrolling as expected.
Enabled IVY option.
Reproduction
We can only help if we can reproduce the problem ourselves.
Use StackBlitz to demonstrate what you are trying to do:

Components: https://stackblitz.com/fork/components-issue
Harnesses: https://stackblitz.com/fork/harness-issue

Steps to reproduce:
1.
2.
Environment

Angular: 11.2.10
CDK/Material: 11.2.9
Browser(s): Chrome
Operating System (e.g. Windows, macOS, Ubuntu): Windows

This isn't enough information to investigate. Can you post an example of the scrollbar not working?

Closing due to inactivity.


[SPARKR][DOCS] update R API doc for subset/extract

What changes were proposed in this pull request?
With extract [[ or replace [[<-, the parameter i is a column index, that needs to be corrected in doc. Also a few minor updates: examples, links.
How was this patch tested?
manual

Test build #72089 has started for PR 16721 at commit 2c1f673.

Test build #72090 has started for PR 16721 at commit de56852.

Test build #72089 has finished for PR 16721 at commit 2c1f673.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/72089/
Test PASSed.

Merged build finished. Test PASSed.

Test build #72090 has finished for PR 16721 at commit de56852.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/72090/
Test PASSed.


Add sourcemaps

Right now when you get an error related to vue-frag, the error will read like this (I use Firefox - the Chrome error message is a bit different in this case):
can't access property Symbol(), a is null
Notice the a - there's no variable named a in the enteriety of src/frag.js. This is because the a comes from the already minified file frag.esm.js
The above error happens on line 1 of frag.esm.js, but that's not very helpful because the whole file is just one line (again - minification)

The error messages would be more helpful if they had access to sourcemaps (browsers will pick them up automatically obviously), they'd be like can't access property Symbol(), element is null at line 15 (or something like that)
When I install vue-frag and go to node_modules/vue-frag, I see only the dist folder, package.json and README.md
Since the original unminified source is not shipped in the package, it's not possible to "sourcemap" to any file
To show that my webpack configuration is correct, see what vuex.esm.js looks like (frag.esm.js was already shown above):

I think changing main: in package.json to unminified sources should do the trick
same issue as https://github.com/IdentityModel/oidc-client-js/issues/753

Good call. I forgot about the source maps.
I will not publish src because it's allowed to assume specific bundler configuration (which will not be available in consuming builds), but I will add minified and non-minified versions.

Error message is much more detailed now. Thanks!

If you're encountering a bug, feel free to open another issue 👍


The console_scripts of  openscenario_utility can not work ('xmlschema==1.3.1 is required)

openscenario_utility can not work
To Reproduce
the Docker image is :
"RepoDigests": [
"tier4/scenario_simulator_v2@sha256:28f243daba2789b7de5d64e43c0d9fce812e782d7a26adea1383bed41b1d1e1f",
]
root@ee6a88b77a77:/home/ubuntu/Desktop/scenario_simulator_ws/install/openscenario_utility/lib/openscenario_utility# ./yaml2xosc
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "./yaml2xosc", line 6, in
from pkg_resources import load_entry_point
File "/usr/lib/python3/dist-packages/pkg_resources/init.py", line 787, in resolve
raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The 'xmlschema==1.3.1' distribution was not found and is required by openscenario-utility

Thank you!
I will check.

Is this happening in the current master branch?

This issue seems no longer active.
Please reopen this issue, if necessary.


feat(synthetics): add device emulation functionality

Codecov Report

Merging #1017 (90f477c) into main (41da5c7) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main    #1017   +/-   ##
=======================================
  Coverage   40.72%   40.72%
=======================================
  Files          79       79
  Lines        4950     4950
=======================================
  Hits         2016     2016
  Misses       2788     2788
  Partials      146      146

Flag
Coverage Δ

unit
40.72% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

pkg/synthetics/synthetics_api.go
0.00% <ø> (ø)

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Project Proposal: GBAStudio

Project Description:
This proposal aims to create GBAStudio, an integrated development environment (IDE) dedicated to creating games for the Game Boy Advance (GBA).
Key Features:

Intuitive Graphical Interface
Support for GBA Graphics and Audio
Custom Scripting
Debugging and Testing
Compatibility with GBA Hardware

Motivation:
The interest in developing games for retro platforms is growing, and an IDE similar to GBStudio for the GBA could open new opportunities.
Expected Benefits:

Community Expansion
Innovation in Game Design
Preservation of Game Boy Advance Culture

Would love to see someone have a go at making it but GBA is out of scope for this project


nikolai:docs:change business-partners-general-terms.pdf

Changes:

business-partners-general-terms.pdf was changed to new version

Type of change

[ ] Bug fix
[ ] New feature
[ ] Update feature
[ ] Refactor code
[ ] Translation to code
[ ] Translation to crowdin
[ ] Script configuration
[ ] Improve performance
[ ] Style only
[ ] Dependency update
[ x ] Documentation update
[ ] Release

nikolai:docs:change business-partners-general-terms.pdf
task #1810


Class-aware detection

hello , I want to change the model into an class-aware detector, whichi part should I modify? Thank you !

Hi @luckychay,
MDef-DETR is developed to be a class-agnostic Object Detector. However, you may use targeted text queries to detect a specific class in your case. For example, using every dog query should provide you dog bounding boxes and so on.

Hi, @mmaaz60. Thank you for you reply!  Your  answer partly solved my question. But in fact, I am asking about MDef-DETR  minus language, sorry for not clarifying my question. Finally I find the postprocessor should be changed for my needs. But I came into another question.
I am intersted in  MDef-DETR  minus language mainly due to my project needs Coco2017 and Pascal Voc 2012 as the training dataset. While MDef-DETR uses Coco2014 and Refcoco/+/g as the annotations, it seems not suitable for me to use MDef-DETR because there is no exsiting reference datasets for Coco2017 and Voc 2012.
So my question is, do you have any suggestions for me if I need to use MDef-DETR for better performance?

Hi @luckychay,
My apologies for the delayed response. MDef-DETR minus language is equivalent to standard Def-DETR model. If you are only working with COCO or VOC datasets which don't have any language/language structure, then using Def-DETR might be good for you. Please let me know if you have any questions.
Thanks

Hello @mmaaz60,
Never mind. I understand better now but I do have another question. How can I use COCO or VOC to train or finetune MDef-DETR if they don't have any language\language structure？ Should I add an empty caption for every image?
Thank you!

Hi @luckychay,
Apologies for the delayed reply. We could use Def-DETR model for training on COCO and VOC model as it does not require any language component. However, exploration of synthesizing language structure for standard detection dataset would be a good research direction to explore.
In table 9 of our paper, we show that randomly grouping 4-8 bounding boxes to synthesize language structure is not helpful. However, exploring cues such as super vs child class relationship and vicinity to group similar boxes/objects could be good research direction to explore.
Please let me know if you have any questions.

Ok, that makes sense. You are really patient. Thanks a lot!


BACF_bcg

Nice job! Will you release the BACF_bcg code?

@wwdguu https://github.com/soldatjiang/CF_with_ADMM
I attempt to implement BACF_bcg, and it can successfully track objects, but it severely suffers from distractors in some sequences. I will soon test it on OTB dataset.

Thank you so much for sharing your code.

It performs worse than BACF on OTB-2015 mainly because of distractors, maybe I ignored something in my implementation.


API calls are valid with expired access token?

I don't know if I'm missing something but I can call the API even though the access token has expired. I've changed the access token lifetime to 4 seconds for the client I'm using (resource owner client):
AccessTokenLifetime = 4
Shouldn't I get a 401 response from the API?

There's a 5 min clock skew tolerance - that's what you are probably seeing.

Thank you for the information.
I've tested after waiting for more than 5 minutes. The result is a 500 Internal Server Error being passed to the client.
On the server I see that a System.IdentityModel.Tokens.SecurityTokenExpiredException exception gets thrown. Is it possible for me to hook in somewhere and return a 401 instead of a 500?
Stack trace.txt


Add funding acknowledgment of the IDC project

Request
What feature or change would you like to see made?
Add acknowledgment of funding from the IDC project: "NCI Imaging Data Commons: contract number 19X037Q from Leidos Biomedical Research under Task Order HHSN26100071 from NCI."
Why should we prioritize this feature?
Because IDC project is funding some of the effort for the OHIF developers, prioritizing for the specific features as needed for IDC.
@pieper I do not have the permissions to assign labels - can you please add "IDCwishlist"?

👋 @fedorov, added you as an outside collaborator. Don't hesitate to reach out if you experience other permission related issues.

Just seeing this - @swederik added me to the organization. I am fine either way. Thank you guys!

Just readme in repo is fine

Just readme in repo is fine

I can make a PR to make it simpler

I can make a PR to make it simpler

@sedghi @igoroctaviano IDC acknowledgment somehow disappeared from the OHIF README - can this be added back?

sure

Done!


How to make "try_cache_inter_data_gpucpu" be faster?

Hi,
I notice that in function "try_cache_inter_data_gpucpu", the model will be moved to GPU or CPU (if GPU memory is not enough). When I tired to quantize a large scale, the model moved to CPU and the process of caching intermediate input is very slow. And it doesn't make sense to use "device_map=auto" when load hf models.
Is it possible to optimise this function？

Set --device to 0,1 to utilize multiple GPUs for calibration.
However, this behavior on your side might seem a bit unusual. When quantizing a typical LLM, we only need to cache the inputs for the first block. This means only the embedding layer requires inference, which is quite fast, even for 70B models on our hardware.
For VL models or when enabling quant_lm_head, a warning should be issued to guide users on utilizing multiple GPUs. You can refer to the relevant implementation here: autoround.py, Line 638.

may I know which model you are quantizing, we could take a look.

Sorry I used an old version. I tried to quantize llama 70B and it works with the latest version. Thanks.


latest impress fails to start

Output:
13:39:44  W0   error   Field "concurrency" is required in application/config/server.js
13:39:44  W0   error   Field "size" is required in application/config/server.js
13:39:44  W0   error   Field "timeout" is required in application/config/server.js
13:39:44  W0   error   Can not start server
``

Upd: This is fixxed by adding scheduler property with correspondinf fileds.
Which brings us to a fact that metaschema should have better error messeges.

Fixed @nechaido thanks!


How to get SubmitLayer DepthHandles

This is no a bug but we are working on depth capture to alleviate large network latency. When we log the delthHandles in SubmitLayer , it's NULL. Is this something we need to do in ALVR driver or I should ask this on OpenVR forum?
[10:36:49.192 748] SubmitLayer Handles=00000000C0001202,0000000080002D82 DepthHandles=0000000000000000,0000000000000000 0.000000-1.000000,0.000000-1.000000 0.000000-1.000000,0.000000-1.000000

Unfortunately, it is said that depth texture is passed only for Oculus driver.
https://github.com/ValveSoftware/openvr/issues/825
I also want to know about depth texture. If you get any clue to get depth texture, please let me know.

Since Oculus also broke their depth layers in April 2019 release, I will be using my own Quad-Overlay system with depth compositing for Oculus Rift and HTC Vive in the future. Haven't tested if Oculus fixed their depth layers in a later release. But since Oculus and Valve are so unreliable on their releases, it is probably the best way to not use anything but the bare minimum needed from their SDKs. Specially since they tend to not only break things in their respective SDKs (these Errors can be found before release), but also in their Runtimes that can be updated anytime.
We had several experinces of customers writing eMails about our "stupid software not working" when everything was perfect at release. It was due to broken Runtime Envirionments with forced live update on client PCs. We then had to find a workaround and have a complete software roll-out. Now we go with the workarounds/own implementations wherever we can. It is really sad to see so little effort on software quality with both major VR-Headset manufacturers


Would using "protected _SceneTree _" be better instead of "private _SceneTree _"?

[SceneTree(null, true)]
public partial class A: CharacterBody2D

public partial class B: A

When "B" needs to use a node, you must create another variable yourself.

Hi Magian.
Currently, both the _SceneTree class and the _ property need to be private so they don't conflict with any derived scene that also uses the SceneTree attribute (in which case the inherited scene is included anyway).  It could be done with a bit of name mangling, of course, but it might be better for the base class to provide protected access to the required parts of the tree (eg, protected Label MyLabel => _.Layout.Label;).  Alternatively, one could use unique names to get public properties.

Okay, thank you.  I'll study it again.


Official Destination Data

Hi All,
For the destination data received from Olomouc and Sao Paolo, are we aware of how the destination was chosen to be represented? For example, does each point represent the centroid of the parcel that the destination lies within?

I'm not sure. But that'd be my guess. @carlhiggs any ideas?

Hi Nick, sorry for delay on response --- it wasn't specified, but where the data are point data, it is assumed they are centroids (e.g. as doorways would be implausibly precise to represent; if not centroids, it is assumed the difference would be arbitrary).
Looking at the data from Olomouc just now, it looks like these are points; whereas the shape of the data provide from Sao Paulo depended on the destination (eg. while supermarkets may be points, there were polygons for parks or forest, or lines for routes, etc).
Hope that helps,
Carl
ps. here is metadata for the Sao Paulo data we were provided
metadata.xlsx

Also, here are metadata for the Olomouc POI data (which is associated with a category variable ID_KAT; this is explained in English in this file):
Olomouc_POI_2011_ID_Categories_explanation - Jan DYGRÝN.docx

Apologies for repeat answers --- but worth noting the time points for data; the metadata for Olomouc was for the 2011 POI file, but I believe for validation you used the 2018 supermarkets specific data.   For Sao Paulo, dates for various datasets are provided in the Excel spreadsheet; grocery stores also seem to be 2018 for Sao Paulo.

hi @nicholas-david , not sure if you saw these responses when posted last month - just flagging in case these were missed!

Thanks Carl. Nick can you verify that any relevant details in these metadata appear in the validation report? Thanks!

Thanks Geoff! Will do. Just a heads up, I will not be as contactable or put as much time in this weekend for the High Holidays. Have a nice weekend!


Sync Database with Auth0

I want the roles and users from the database to be synced with the roles and the users from Auth0 so we can store the current status of the users while still being able to use these assigned roles for authorization and authentication. The reason for storin g them in the database is to have access to the user group and role mapping for certain user authentication within assign groups.

https://auth0.com/docs/authenticate/database-connections/custom-db/create-db-connection

current issue: Auth0 does not accept localhost: https://community.auth0.com/t/cant-connect-to-localhost-mysql-using-custom-database/63992
We can either host a mysql server, use the ssh tunnel, or use the Auth0 CLI. Im going to look into hosting a free mysql db for dev purposes.


Canonize arrow by default when packing a term

This PR changes the behaviour of FStar.Tactics.pack to canonize arrows by default instead of leaving them in a fully currified form. This solves the issues mentioned in the latter part of #2596, by allowing lemmas with SMTPats generated by reflection to be encoded as fully applied functions to Z3, thus encoding their pattern correctly.
This change is potentially breaking for modules using reflection, so this PR also adds a function pack_currified which does not perform canonization, thus retrieving the previous behaviour.
Fixes #2596

Thanks @R1kM! The PR looks good to me. But I am thinking again the design choice of canonizing arrows by-default. There are some other design choices:

Make the arrows in reflection syntax take multiple binders (as we do in FStar.Syntax.Syntax), we then don't need two APIs.
Instead of changing the behavior of pack, have a canonize:term -> term reflection API. This would be slightly different from what is in the PR, e.g. mk_arr in the PR takes one binder at a time, and then canonize for every binder, instead, the flow would then be to build curried arrow all the way, and then canonize once on-demand.
What about abstractions? Should they be canonized by default too? FStar.Syntax.Syntax keeps them flattened as well.

(If we do (1), (2) can then be implemented.)
The first point in my mind is some disconnect, if we think canonization always is the way to go, then why are we exposing curried form in the syntax.
I know we discussed some of it previously, but can we please discuss it again, this coming week perhaps? Thanks!

Thanks @aseemr for the review! I think we discussed the first two points in the past.
If I remember correctly, the argument for avoiding the list of arguments was to avoid breaking changes.
For canonize, the conclusion was that, not wanting to canonize seemed to be the exception rather than the norm, hence we decided that the default behavior should be to canonize, while there would be an additional helper for the rare expert uses where it is needed.
I don't think we discussed 3) at all, I'm not sure what the differences in SMT encoding between the two would be, happy to discuss it further during the next meeting.

If I remember correctly, the argument for avoiding the list of arguments was to avoid breaking changes.

Actually, I don't think this is the reason.
I think the unary representation of abstractions and arrows in the reflection syntax is much easier to manipulate, particularly when doing proofs over the syntax of terms. Dealing with variadic representations everywhere is a really cumbersome.

Good catch, thanks, I got confused with the French names for curried functions.


Create responsive navbar using html and css

Description
Please include a summary of the change and which issue is fixed. List any dependencies that are required for this change.
Fixes #(343)
Replace #343 with the issue number which is fixed in this PR
Type of change
Please delete options that are not relevant.

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update
[ ] Documentation Update

Checklist:

[ ] My code follows the style guidelines(Clean Code) of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have created a helpful and easy to understand README.md
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests/screenshots(if any) that prove my fix is effective or that my feature works

Make New PR


Can't get Relay twig to turn on

I've been playing around with PronghornIoT to support a Spring Boot app running on a Raspberry Pi 2 with GrovePI+. Everything seems to work (buttons, serial 2 line display, LED) except for the relay.
Here's my IotSetup class: https://github.com/ggrell/GMR/blob/master/src/main/java/com/gyurigrell/gmr/iot/GmrIoTSetup.java
I have a channel set up for the relay, and am calling relayChannel.setValue(RELAY_PORT, 1); where RELAY_PORT is D2 and the relay is definitely plugged into D2. I've run a Python sample separately to confirm that the relay works fine, yet the setValue call doesn't seem to be affecting the relay.
Any thoughts on what the issue might be?

Never mind. Small tweak to the code and now it starts working (which makes no sense, so it could have been just a bad connection and re-plugging it fixed it) . Closing.


#2241 need full control about sended text

Hi @pmizel, I'm your friendly neighborhood Azure Pull Request Bot (You can call me AZPRBOT). Thanks for your contribution!

In order for us to evaluate and accept your PR, we ask that you sign a contribution license agreement. It's all electronic and will take just minutes. I promise there's no faxing. https://cla.azure.com.

TTYL, AZPRBOT;

@pmizel Can you add some comment describing your change here? thx

This is not necessary since retry can be passed in using promptoptions and PromptDialog will use it over DefaultRety if it is set: https://github.com/Microsoft/BotBuilder/blob/master/CSharp/Library/Microsoft.Bot.Builder/Dialogs/PromptDialog.cs#L1171


Merging Master into Live

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

.localization-config
:white_check_mark:Succeeded

.openpublishing.publish.config.json
:white_check_mark:Succeeded

biztalk/adapters-and-accelerators/TOC.md
:white_check_mark:Succeeded

biztalk/adapters-and-accelerators/adapter-oracle-database/samples-for-the-oracle-database-adapter.md
:white_check_mark:Succeeded
View

biztalk/adapters-and-accelerators/adapter-oracle-ebs/samples-for-the-oracle-ebs-adapter.md
:white_check_mark:Succeeded
View

biztalk/adapters-and-accelerators/adapter-sap/samples-for-the-sap-adapter.md
:white_check_mark:Succeeded
View

biztalk/adapters-and-accelerators/adapter-siebel/samples-for-the-siebel-adapter.md
:white_check_mark:Succeeded
View

biztalk/adapters-and-accelerators/adapter-sql/samples-for-the-sql-adapter.md
:white_check_mark:Succeeded
View

biztalk/adapters-and-accelerators/adapters-and-accelerators-in-biztalk-server.md
:white_check_mark:Succeeded
View

biztalk/adapters-and-accelerators/biztalk-adapters-for-enterprise-applications.md
:white_check_mark:Succeeded
View

biztalk/adapters-and-accelerators/wcf-lob-adapter-sdk/deploy-an-adapter-using-the-wcf-lob-adapter-sdk.md
:white_check_mark:Succeeded
View

biztalk/adapters-and-accelerators/wcf-lob-adapter-sdk/undeploy-an-adapter-using-the-wcf-lob-adapter-sdk.md
:white_check_mark:Succeeded
View

biztalk/core/TOC.md
:white_check_mark:Succeeded

biztalk/core/adapter-features.md
:white_check_mark:Succeeded
View

biztalk/core/adding-biztalk-adapter-for-jd-edwards-enterpriseone.md
:white_check_mark:Succeeded
View

biztalk/core/adding-biztalk-adapter-for-jd-edwards-oneworld.md
:white_check_mark:Succeeded
View

biztalk/core/adding-the-adapter-to-biztalk-server.md
:white_check_mark:Succeeded
View

biztalk/core/administering-biztalk-adapter-for-jd-edwards-enterpriseone.md
:white_check_mark:Succeeded
View

biztalk/core/administering-biztalk-adapter-for-jd-edwards-oneworld.md
:white_check_mark:Succeeded
View

biztalk/core/administering-biztalk-adapter-for-peoplesoft-enterprise.md
:white_check_mark:Succeeded
View

biztalk/core/administering-biztalk-adapter-for-tibco-enterprise-message-service.md
:white_check_mark:Succeeded
View

biztalk/core/administering-biztalk-adapter-for-tibco-rendezvous.md
:white_check_mark:Succeeded
View

biztalk/core/architecture-of-biztalk-adapter-for-jd-edwards-enterpriseone.md
:white_check_mark:Succeeded
View

biztalk/core/architecture-of-biztalk-adapter-for-peoplesoft-enterprise.md
:white_check_mark:Succeeded
View

biztalk/core/architecture-of-biztalk-adapter-for-tibco-rendezvous.md
:white_check_mark:Succeeded
View

biztalk/core/architecture-of-jd-edwards-oneworld.md
:white_check_mark:Succeeded
View

biztalk/core/biztalk-server-message-context-properties-receive-handlers.md
:white_check_mark:Succeeded
View

biztalk/core/biztalk-server-message-context-properties-send-handlers.md
:white_check_mark:Succeeded
View

biztalk/core/character-encoding.md
:white_check_mark:Succeeded
View

biztalk/core/configuring-the-virtual-directory.md
:white_check_mark:Succeeded
View

biztalk/core/creating-affiliate-applications1.md
:white_check_mark:Succeeded
View

biztalk/core/creating-affiliate-applications2.md
:white_check_mark:Succeeded
View

biztalk/core/creating-affiliate-applications3.md
:white_check_mark:Succeeded
View

biztalk/core/creating-affiliate-applications4.md
:white_check_mark:Succeeded
View

biztalk/core/creating-affiliate-applications5.md
:white_check_mark:Succeeded
View

biztalk/core/creating-and-using-schemas.md
:white_check_mark:Succeeded
View

biztalk/core/creating-jd-edwards-enterpriseone-send-handlers.md
:white_check_mark:Succeeded
View

biztalk/core/creating-jd-edwards-oneworld-send-handlers.md
:white_check_mark:Succeeded
View

biztalk/core/creating-peoplesoft-send-handlers.md
:white_check_mark:Succeeded
View

biztalk/core/creating-ports.md
:white_check_mark:Succeeded
View

biztalk/core/creating-send-and-receive-ports.md
:white_check_mark:Succeeded
View

biztalk/core/creating-send-ports1.md
:white_check_mark:Succeeded
View

biztalk/core/creating-send-ports2.md
:white_check_mark:Succeeded
View

biztalk/core/creating-tibco-enterprise-message-service-receive-handlers.md
:white_check_mark:Succeeded
View

biztalk/core/creating-tibco-enterprise-message-service-send-handlers.md
:white_check_mark:Succeeded
View

biztalk/core/creating-tibco-rendezvous-receive-handlers.md
:white_check_mark:Succeeded
View

biztalk/core/creating-tibco-rendezvous-send-handlers.md
:white_check_mark:Succeeded
View

biztalk/core/data-type-mapping-for-receive-handlers-in-tibco-rendezvous.md
:white_check_mark:Succeeded
View

biztalk/core/data-type-mapping-for-send-handlers-in-tibco-rendezvous.md
:white_check_mark:Succeeded
View

biztalk/core/deploying-biztalk-adapter-for-jd-edwards-enterpriseone.md
:white_check_mark:Succeeded
View

This comment lists only the first 50 files in the pull request.
For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


[NEED HELP] How to call a service from another service?

I am trying to simulate several services communicating via madsim RPC and I don't know how to call a service from another service. The Endpoint::call method is applied on an instance of Endpoint but I haven't found a way to get the Endpoint of the current service. See below a small example of what I'm trying to do.
#[derive(Serialize, Deserialize, Request)]
#[rtype("String")]
pub struct HttpGetRequest(pub String);

#[derive(Clone)]
pub struct FrontendService {
    redisAddr: SocketAddr,
}

#[madsim::service]
impl FrontendService {
    pub fn new(redisAddr: SocketAddr) -> Self {
        FrontendService {
            redisAddr,
        }
    }

    #[rpc]
    async fn serve_http_request(&self, req: HttpGetRequest) -> String {
        let reply = <CURRENT_ENDPOINT?>.call(self.redisAddr, redis::GetRedisRequest(req.0.clone())).await.unwrap();
        reply
    }
}

I tried multiple approaches:

The method server_on consumes the endpoint and Endpoint is not clonable so I can't pass the endpoint after the initial binding.
The creation of Endpoint from the method Endpoint::connect doesn't work in this context.
I can't use Arc as the serve_on method consumes an instance of Endpoint.

Is it a supported scenario?
If yes how can I do that?

If I can solve this problem, I will submit a PR containing an example of a microservices topology communicating via RPC and running on several simulated nodes. I think this kind of complete example doesn't exist yet in the repo and it would probably save time for future users. Feel free to point me to such an example if it exists.

By patching the #[madsim::service] macro code I was able to get an example that works. The modification is to change the signature of the serve_on method to an Arc instead of an Endpoint. This allows me to also pass a clone of Arc to my service to allow communication with another service. However, I think the approach could be improved by making a slightly more complex modification.
Approach compatible with the existing API: the idea would be to provide a method to retrieve a reference to the current endpoint.
Approach requiring a change in the API: the idea would be to change the signature of the methods annotated with #[rpc] and to add as first parameter a reference on the current endpoint.
I can see how to implement the second approach. For the first one I'm not sure how to do it.
What do you think about it?

Hi, thanks for your interest on this project!
Microservices is definitely a scenario we want to support. But since we haven't applied madsim to such a project, the API of this part is not mature enough to use.
For this problem, personally I prefer to change the signature of the serve_on method to an Arc<Endpoint>. Or one more step, we can make Endpoint itself cheaply clonable, as several other crates did. I believe this would be more friendly to developers.
For the 2 approaches you mentioned, I'm not sure whether we should encourage users to reuse the endpoint from current service to communicate with another one. Because usually they would create a new endpoint for this. If only considering these 2 approaches, I would choose the first one but it doesn't seem to work. (The service does not own an endpoint so it's impossible to retrieve one.) The second approach changes the signature of all RPC handlers, so doesn't look to be a good solution to me.
Overall, in this scenario, I recommend putting an endpoint into the service structure to communicate with other service. It is OK whether itself is serving on the same endpoint or not.

If I can solve this problem, I will submit a PR containing an example of a microservices topology communicating via RPC and running on several simulated nodes. I think this kind of complete example doesn't exist yet in the repo and it would probably save time for future users. Feel free to point me to such an example if it exists.

Unfortunately we don't have such an example right now. I was trying to migrate madraft as an example but it has not finished yet. You are welcome to submit PRs for any improvements!

Thank you for your feedback. I will submit a PR in the next few days with this example and modification.


Update panel height programmatically when panel is already presented

Hello, I'm trying to change panel's height in order to adapt it to content, the content arrives later because of API but panel is already presented and shown.
I tried to make a func in order to update it but without success, it updates only after changing scroll position with my finger.
Here's my code:
func updatePanelViewHeight() {
        guard isViewLoaded else { return }
        floatingPanelController?.invalidateLayout()
        let productTitleLines = productTitleLabel.numberOfVisibleLines
        let productPriceLines = productPriceLabel.numberOfVisibleLines
        appFloatingPanelLayout?.heightToAdd = CGFloat(productTitleLines + productPriceLines) + 20
        floatingPanelController?.layout = tezenisFloatingPanelLayout!
        floatingPanelController?.updateViewConstraints()
        floatingPanelController?.viewDidLayoutSubviews()
        floatingPanelController?.notifyDidMove()
    }

What am I doing wrong?
Thanks

FloatingPanelController expects invalidateLayout() is called after a new layout is assigned into it. Please see also README - Update your panel layout.
If you call invalidateLayout() in an animation block. The layout changes with the animation.


Exclusively path based routes - addresses issue #20

Routes are now only distinct based on path components. The expected message and return types are only used to provide detailed error messages.

@amomchilov here's my first attempt at creating a PR instead of directly committing to the repo. Beyond giving me feedback on the actual code, please let men now if I've done anything wrong or suboptimal in how I've configured this PR.


Is there any way to set order of operation tags?

NO, there isn't.

Now in 2023,is it can support?


JsonApiSerializer and $resourceKey

Hello, sorry if this has already been answered but I couldn't find anything related.
For the JSON-API Serializer you need to pass in a $resourceKey.
// Important, notice the Resource Key in the third parameter:
$resource = new Item($book, new JsonApiBookTransformer(), 'books');

But wouldn't a given transformer typically have the same type for it's response? A book would always be of type books. Wouldn't it be better to declare a default type in the transformer?

I ended up writing something to handle exactly this.  Essentially, I store a $resourceKey on the Transformer and each transformer defaults to using that.  However, the user can still pass a string in via the default implementation to override the Transformer's key.

@dtirer If you are willing, would you make a pull request with that functionality? If not then I'll do it over the weekend.

@willishq sure, I'd be interested.  I should be able to do it in the next few days

Any news on this?


Export DepsTreeItem and DepsFlatItem in importable package.

Please export DepsTreeItem and DepsFlatItem from an importable package.
Recommend defining in or aliasing in hubapi?
import (
   dependency "github.com/konveyor/analyzer-lsp/cmd/dep"
)

builder/deps.go:4:2: import "github.com/konveyor/analyzer-lsp/cmd/dep" is a program, not an importable package

Related (but not a blocker): recommend renaming hubapi/ to something like: types, report, etc since the package seems to contain types produced by the analyzer and nothing to do with the Hub API.

Had a call with Jeff, and I am working on moving the types around now.
With this said, I would like to add some commentary on the hubapi package name. Initially, the thought process from my perspective, was that there may be other output formats in the future (think junit for prow integration, or maybe some other type of output like LSP). the goal was to note that the types there was a contract between the hub addon and the output.
Jeff brought up a good point, which is, if we have to talk to folks on how they are going to integrate into our tool, it may be confusing to say use the Hub API. while we mean the package, it could easily be thought that we are actually saying you can only use this through the hub API, which we do not want to be the case.
Do we see any other default output for the tool? I don't believe so, so I think we should consider making it clear that this is the default output. I would consider report or output or maybe something like output/v1/report but that feels like maybe too much future proofing.
@pranavgaikwad @fabianvf can y'all weigh in?
@jortel does this accuratly describe the concerns and what we talked about?

@shawn-hurley thank you for following up on this. I like output as we are not outputting a report per se. I do not think there is any other potential output format, if there is, it probably should build up on our output format.

@shawn-hurley that's actually a great point about the name, and honestly I think adding a version to the output package early is also not a bad idea. It's just used on imports so it's not like it's crazy burdensome

Fixed via #218


TypeError: init() missing 1 required positional argument: 'first_stage_config'

”Diff-Foley/evaluation/config/eval_classifier.yaml“ missed a section of content, about 'first_stage_config'

I've met the same issue.  The classifier_acc evaluation doesn't work without  'first_stage_config'.
And "Diff-Foley/inference/config/Double_Guidance_Classifier.yaml" also missed the 'first_stage_config', so the inference demo doesn't work either.

By the way, in the ”Diff-Foley/evaluation/config/eval_classifier.yaml“ or "Diff-Foley/inference/config/Double_Guidance_Classifier.yaml":
"""
...
cond_stage_config:
target: diff_foley.modules.cond_stage.video_feat_encoder.Video_Feat_Encoder_Posembed
params:
origin_dim: 512
embed_dim: 512
seq_len: 40 part Video_Feat_Encoder_Posembed
...
"""
The checkpoint of this Video_Feat_Encoder_Posembed(super nn.module) is not provided, which is indispensable for inference and evaluation.

By the way, in the ”Diff-Foley/evaluation/config/eval_classifier.yaml“ or "Diff-Foley/inference/config/Double_Guidance_Classifier.yaml": """ ... cond_stage_config: target: diff_foley.modules.cond_stage.video_feat_encoder.Video_Feat_Encoder_Posembed params: origin_dim: 512 embed_dim: 512 seq_len: 40 part Video_Feat_Encoder_Posembed ... """ The checkpoint of this Video_Feat_Encoder_Posembed(super nn.module) is not provided, which is indispensable for inference and evaluation.

https://github.com/luosiallen/Diff-Foley/blob/main/diff_foley/modules/cond_stage/video_feat_encoder.py

Thanks for mentioning. I fill the 'first_stage_config'

By the way, in the ”Diff-Foley/evaluation/config/eval_classifier.yaml“ or "Diff-Foley/inference/config/Double_Guidance_Classifier.yaml": """ ... cond_stage_config: target: diff_foley.modules.cond_stage.video_feat_encoder.Video_Feat_Encoder_Posembed params: origin_dim: 512 embed_dim: 512 seq_len: 40 part Video_Feat_Encoder_Posembed ... """ The checkpoint of this Video_Feat_Encoder_Posembed(super nn.module) is not provided, which is indispensable for inference and evaluation.

https://github.com/luosiallen/Diff-Foley/blob/main/diff_foley/modules/cond_stage/video_feat_encoder.py
Hi there, thanks for your works, it's very helpful! Do you mean the checkpoint of the nn.Linear is not neccessary??


Add pagination to superusers organizaation view

Summary
Add pagination to superusers organization view
Why
Ease of use and speed-- there are more registered organizations than can be comfortably dealt with on a single page
Details
Follow the pattern of the superusers users view
Criteria for completion

[ ] Superuser's organization view is paginated
[ ] tests to support this functionality

@cielf I can work on this.

@cielf I have a question regarding the testing situation for this. Each page is currently set to have 50 items per page. In order to test the pagination functionality I would need to instantiate 50+ organization instances for just a handful of tests. It seems to me like this would be taxing/inefficient and as such probably not worth it. I'm wondering what your take on this is.

@Learningstuff98 you can reconfigure Kaminari in rails_helper.rb to have (say) 3 per page and then instantiate 4 of them :smile:

This is still being worked on.

Current state of this is that there is an open PR that needs some work on the tests.  @Learningstuff98 has gone as far as they can with it, so one of the contributors should take it the rest of the way.

@cielf I'd be happy to take a look at this, if this is still needed.

@AbuMareBear go for it!


Feature: Make PackageComments property optional

Make PackageComments property optional for the MSI build
This work item was migrated from CodePlex
CodePlex work item ID: '10578'
Assigned to: 'tfabraham'
Vote count: '1'

[UnknownUser@3/31/2014]
Resolved with changeset 74798: Make PackageComments property optional; remove ProductVersion from MSI product name (#10578)


[text animation] text blur in

A good friend @ChrisAbdo has been incredibly kind and given us permission to merge some of his framer motion components into the Magic UI Repo!
https://github.com/chrisabdo/motionvariants
https://variantvault.chrisabdo.dev/text-variants
This issue requires copying the text animation component from variantvault and adding it to Magic UI.
Please refer to #12 for guidelines on how to submit a PR with this new component
https://github.com/magicuidesign/magicui/assets/16860528/48c05155-8e06-4e0a-86a5-c591b679e53f

done


fix(metadata): PSGS-934 fixed broken TxMetadataOut json decoder

what prevents you from just calling getMetadata() ?

Looks like tests are failing because of not enough funds on the wallet

what prevents you from just calling getMetadata() ?

Probably nothing, after that first solution didn't work, I've seen that I might have hard time fixing tests if I won't fix the decoder, thus thought that it will be done faster if I do it. I might have been wrong with that, anyway, I get your point about more corner cases. I'll just call that getMetadata on top of those changes - this way I already have the tests wroking and we can avoid corner cases.


Prepared Statement with Invalid value to Type doesn't bubble error

If any value reaches public static void encodeBinary(DataType id, Object value, ByteBuf buff) and doesn't match the expected type the error is not propagated and Handler e.g:
ar -> {             if (ar.succeeded()) {                 sink.success(ar.result().value());             } else {                 sink.error(ar.cause());             }         }
is never called. This leads to hanging resources and subsequently numerous consequences. Is there a way to validate a specific prepared statement against provided parameters?

have you tried the 0.10.2 release ? there was missing tuple validation in some cases

sorry, 0.10.2 fixes the issue. Thank you!


cannot load such file -- mysql2

The error is happening while using the deprecated database cookbook:
Recipe: wego_teamcity::mysql
  * mysql2_chef_gem[default] action install
    * mysql_client_installation_package[default] action create
      * apt_package[mysql-client-5.5, libmysqlclient-dev] action install (up to date)
       (up to date)
    * gem_package[mysql2] action install (up to date)
     (up to date)
  * mysql_database[teamcity] action create

    ================================================================================
    Error executing action `create` on resource 'mysql_database[teamcity]'
    ================================================================================

    LoadError
    ---------
    cannot load such file -- mysql2

    Cookbook Trace:
    ---------------
    /var/chef/cache/cookbooks/database/libraries/provider_database_mysql.rb:103:in `test_client'
    /var/chef/cache/cookbooks/database/libraries/provider_database_mysql.rb:37:in `block in <class:Mysql>'
    /var/chef/cache/cookbooks/compat_resource/files/lib/chef_compat/monkeypatches/chef/runner.rb:78:in `run_action'
    /var/chef/cache/cookbooks/compat_resource/files/lib/chef_compat/monkeypatches/chef/runner.rb:106:in `block (2 levels) in converge'
    /var/chef/cache/cookbooks/compat_resource/files/lib/chef_compat/monkeypatches/chef/runner.rb:106:in `each'
    /var/chef/cache/cookbooks/compat_resource/files/lib/chef_compat/monkeypatches/chef/runner.rb:106:in `block in converge'
    /var/chef/cache/cookbooks/compat_resource/files/lib/chef_compat/monkeypatches/chef/runner.rb:105:in `converge'

Also using the RVM cookbook with gem_package option enabled.

depricated database cookbook
I'd recommend migrating away from that, since it's depricated (and thus not maintained anymore).  In the meantime, have you tried the solution here?

Migrate to what? :) I think the problem is that there are no alternatives.
This bug was related to the rvm cookbook, which makes chef_gem work like gem_package, so all gems installed with any of these resources installed to rvm's directory and Chef doesn't see them any longer.


Don't cache if response is empty

Hi!
First of: I freaking love this package, thank you for sharing it!!!
And now to the issue:
I currently have an issue where if the response is empty (no errors, just an empty response), the data is still cached.
It is highly unlikely that the API is returning an empty response, but it can happen.
I am already doing checks on empty data, wrong data, etc.
I would like to avoid busting the cache if the response is empty.
Is there a clever way to ensure that the response is not saved if it is empty?
And maybe the possibility of adding this as a configuration in the future?

Hey @Patricksirich, thanks for your kind words!
You can do this right now by passing a shouldCacheDecider to the decorator :)

Thanks for the quick reply!
What value should I give the shouldCacheDecider? Can't really seem to figure it out 😄

It's a callback which takes the response and based on it will decide to cache it or not.
For example, you could pass it as :
shouldCacheDecider: response => response.length
which would tell it to only cache the response if it is a non-empty array.

That makes perfect sense, works like a charm, thanks!

It doesn't seem to be working when maxCacheCount has been set.
Currently my decorator looks like:
  @Cacheable({
    maxCacheCount: 3,
    maxAge: 300000,
    slidingExpiration: true,
    shouldCacheDecider: response => response.length
  })

but it does work on:
@Cacheable({
    maxAge: 300000,
    slidingExpiration: true,
    shouldCacheDecider: response => response.length
  })


java.lang.NoSuchMethodError: ai.djl.repository.zoo.BaseModelLoader.

Question
public static void main(String[] args) throws MalformedModelException, ModelNotFoundException, IOException, TranslateException {

    String url = "https://pic3.zhimg.com/80/v2-79b66c1c903bbed8511e47289c9245c2_720w.jpg";
    BufferedImage img = getRemoteBufferedImage(url);

    Criteria<BufferedImage, DetectedObjects> criteria =
            Criteria.builder()
                    .optApplication(Application.CV.OBJECT_DETECTION)
                    .setTypes(BufferedImage.class, DetectedObjects.class)
                    .optFilter("backbone", "resnet50")
                    .optProgress(new ProgressBar())
                    .build();

    try (ZooModel<BufferedImage, DetectedObjects> model = ModelZoo.loadModel(criteria)) {
        try (Predictor<BufferedImage, DetectedObjects> predictor = model.newPredictor()) {
            DetectedObjects detection = predictor.predict(img);
            System.out.println(detection);
        }
    }
}

Run:
Exception in thread "main" java.lang.NoSuchMethodError: ai.djl.repository.zoo.BaseModelLoader.(Lai/djl/repository/Repository;Lai/djl/repository/MRL;Ljava/lang/String;)V
at ai.djl.pytorch.zoo.cv.classification.ImageClassificationModelLoader.(ImageClassificationModelLoader.java:63)
at ai.djl.pytorch.zoo.cv.classification.Resnet.(Resnet.java:36)
at ai.djl.pytorch.zoo.PtModelZoo.(PtModelZoo.java:33)
at ai.djl.pytorch.zoo.PtZooProvider.getModelZoo(PtZooProvider.java:26)
at ai.djl.repository.zoo.ModelZoo.loadModel(ModelZoo.java:123)

@gwlgmz
Can you share you build script, gradle or maven pom file?
Which version of DJL are you using?
NoSuchMethodError usually caused by classpath issue. Your runtime classpath may contains duplicate jars, some of them are old version of DJL, a old version BaseModelLoader.class was loaded and it doesn't have new method.

@gwlgmz close this issue for now. The current resolution is you are using DJL packages in different versions for compile and running. Please make sure they are matched: DJL 0.8.0 code may not work on 0.9.0 and same applies to the other way. As long as the versions are match, this issue should be gone. Please feel free to reopen this issue if you have more information about the cofiguration.


Early JsError: Turbo Module Registry.getEnforcing (...): 'PlatformConstants' could not be found. Verify that a module by this name is registered in the native binary. Bridgeless mode: true. Turbo Module interop: true. Modules loaded: ("NativeModules":["TurboModules: "NotFound": ["NativePerformance ObserverCxx","Native PerformanceCxx","PlatformConstants")),

Description

{
"name": "FalconApp",
"version": "0.0.1",
"private": true,
"scripts": {
"start": "react-native start",
"android": "react-native run-android",
"build:android:release": "cd android && ./gradlew assembleRelease",
"build:android:aab": "cd android && ./gradlew bundleRelease",
"clean": "react-native start --reset-cache",
"ios": "react-native run-ios",
"lint": "eslint . --ext .js,.jsx,.ts,.tsx",
"format": "prettier --write .",
"lint:fix": "eslint . --fix",
"test": "jest"
},
"dependencies": {
"@react-native-async-storage/async-storage": "^2.0.0",
"@react-native-community/netinfo": "^11.4.1",
"@react-native-masked-view/masked-view": "^0.3.1",
"@react-navigation/bottom-tabs": "^6.6.1",
"@react-navigation/native": "^6.1.18",
"@react-navigation/stack": "^6.4.1",
"@reduxjs/toolkit": "^2.3.0",
"@shopify/react-native-skia": "^1.6.0",
"axios": "^1.7.7",
"i18next": "^24.0.0",
"native-base": "^3.4.28",
"react": "18.3.1",
"react-i18next": "^15.1.1",
"react-native": "0.76.1",
"react-native-ble-plx": "^3.2.1",
"react-native-camera-kit": "^14.1.0",
"react-native-device-info": "^14.0.0",
"react-native-gesture-handler": "^2.20.2",
"react-native-image-picker": "^7.1.2",
"react-native-localize": "^3.3.0",
"react-native-reanimated": "^3.16.1",
"react-native-reanimated-carousel": "4.0.0-alpha.12",
"react-native-safe-area-context": "^4.14.0",
"react-native-screens": "^3.35.0",
"react-native-svg": "^15.8.0",
"react-native-svg-transformer": "^1.5.0",
"react-native-vector-icons": "^10.2.0",
"react-native-webview": "^13.12.3",
"zustand": "^5.0.1"
},
"devDependencies": {
"@babel/core": "^7.25.2",
"@babel/preset-env": "^7.25.3",
"@babel/runtime": "^7.25.0",
"@react-native-community/cli": "15.0.0",
"@react-native-community/cli-platform-android": "15.0.0",
"@react-native-community/cli-platform-ios": "15.0.0",
"@react-native/babel-preset": "0.76.1",
"@react-native/eslint-config": "0.76.1",
"@react-native/metro-config": "0.76.1",
"@react-native/typescript-config": "0.76.1",
"@types/react": "^18.2.6",
"@types/react-test-renderer": "^18.0.0",
"babel-jest": "^29.6.3",
"babel-plugin-module-resolver": "^5.0.2",
"eslint": "^8.19.0",
"jest": "^29.6.3",
"prettier": "2.8.8",
"react-test-renderer": "18.3.1",
"typescript": "5.0.4"
},
"engines": {
"node": ">=18"
},
"codegenConfig": {
"name": "AppSpecs",
"type": "modules",
"jsSrcsDir": "specs",
"android": {
"javaPackageName": "com.sampleapp.specs"
}
}
}
Steps to reproduce
1.Importing C library  android/app/src/main/jni/CMakeLists.txt.  OnLoad.cpp
set(CL_SDK ../../../../../shared/cl)
target_include_directories(${CMAKE_PROJECT_NAME} PUBLIC
${CL_SDK}/include
${CL_SDK}/include/QtCore
${CL_SDK}/include/QtGui
${CL_SDK}/include/QtWidgets
)
target_link_directories(${CMAKE_PROJECT_NAME} PUBLIC
${CL_SDK}/lib
)
target_link_libraries(${CMAKE_PROJECT_NAME}
Qt5Core_${ANDROID_ABI} Qt5Gui_${ANDROID_ABI} cl_canvas_${ANDROID_ABI}
)
OnLoad.cpp
if (name == NativeSampleModule::kModuleName) {
return std::make_shared(jsInvoker);
}

In the shared directory NativeSampleModule.cpp use
#include "NativeSampleModule.h"
#include
#include
#include "cl/CanvasScene.h"
#include "cl/CanvasViewport.h"

namespace facebook::react {
NativeSampleModule::NativeSampleModule(std::shared_ptr jsInvoker)
: NativeSampleModuleCxxSpec(std::move(jsInvoker)) {}
std::string NativeSampleModule::reverseString(jsi::Runtime& rt, std::string input) {
return std::string(input.rbegin(), input.rend());
}
std::string NativeSampleModule::testMethod(jsi::Runtime& rt, std::string input) {
return std::string(input.rbegin(), input.rend());
}
std::string NativeSampleModule::getBataData(jsi::Runtime& rt,std::string input) {
cl::canvas::GraphicsScene scene;
scene.setSize(400, 400);
scene.addRect(10, 10, 100, 100);
scene.addEllipse(120, 10, 100, 100);
cl::canvas::GraphicsViewport v;
v.setScene(&scene);
// std::cout << v.toSvg().toStdString() << std::endl;
return std::string(input.rbegin(), input.rend());

}
} // namespace facebook::react
3.Use NativeSampleModule.ts in the specs directory
import {TurboModule, TurboModuleRegistry} from 'react-native';
export interface Spec extends TurboModule {
readonly reverseString: (input: string) => string;
readonly testMethod: (input: string) => string;
readonly getBataData: (input: string) => string;
}
export default TurboModuleRegistry.getEnforcing(
'NativeSampleModule',
);
4.package.json
"codegenConfig": {
"name": "AppSpecs",
"type": "modules",
"jsSrcsDir": "specs",
"android": {
"javaPackageName": "com.sampleapp.specs"
}
}
React Native Version
0.76.1
Affected Platforms
Runtime - Android, Runtime - iOS
Areas
TurboModule - The New Native Module System
Output of npx react-native info
System:
  OS: macOS 15.1
  CPU: (10) arm64 Apple M2 Pro
  Memory: 103.89 MB / 16.00 GB
  Shell:
    version: "5.9"
    path: /bin/zsh
Binaries:
  Node:
    version: 18.20.4
    path: ~/.nvm/versions/node/v18.20.4/bin/node
  Yarn:
    version: 1.22.22
    path: ~/.nvm/versions/node/v18.20.4/bin/yarn
  npm:
    version: 10.7.0
    path: ~/.nvm/versions/node/v18.20.4/bin/npm
  Watchman:
    version: 2<IP_ADDRESS>
    path: /opt/homebrew/bin/watchman
Managers:
  CocoaPods:
    version: 1.16.2
    path: /opt/homebrew/bin/pod
SDKs:
  iOS SDK:
    Platforms:
      - DriverKit 24.1
      - iOS 18.1
      - macOS 15.1
      - tvOS 18.1
      - visionOS 2.1
      - watchOS 11.1
  Android SDK:
    API Levels:
      - "30"
      - "31"
      - "33"
      - "34"
      - "35"
    Build Tools:
      - 34.0.0
      - 35.0.0
    System Images:
      - android-34 | ARM 64 v8a
      - android-34 | Google APIs ARM 64 v8a
      - android-34 | Google Play ARM 64 v8a
      - android-35 | Google Play ARM 64 v8a
    Android NDK: Not Found
IDEs:
  Android Studio: 2024.2 AI-242.23339.11.2421.12550806
  Xcode:
    version: 16.1/16B40
    path: /usr/bin/xcodebuild
Languages:
  Java:
    version: 17.0.13
    path: /usr/bin/javac
  Ruby:
    version: 2.6.10
    path: /usr/bin/ruby
npmPackages:
  "@react-native-community/cli":
    installed: 15.0.0
    wanted: 15.0.0
  react:
    installed: 18.3.1
    wanted: 18.3.1
  react-native:
    installed: 0.76.1
    wanted: 0.76.1
  react-native-macos: Not Found
npmGlobalPackages:
  "*react-native*": Not Found
Android:
  hermesEnabled: true
  newArchEnabled: true
iOS:
  hermesEnabled: true
  newArchEnabled: true

Stacktrace or Logs
Early JsError: Turbo Module Registry.getEnforcing (...): 'PlatformConstants' could not be found. Verify that a module by this name is registered in the native binary. Bridgeless mode: true. Turbo Module interop: true. Modules loaded: ("NativeModules":["TurboModules: "NotFound": ["NativePerformance ObserverCxx","Native PerformanceCxx","PlatformConstants")),

Reproducer
https://github.com/facebook/react-native
Screenshots and Videos
No response

Duplicates https://github.com/facebook/react-native/issues/47352


Release iovns v0.9.1

[x] ~Require go v1.14.2+ in go.mod~ not possible

Closed via https://github.com/iov-one/iovns/pull/313.


Add timezone format to

To be able to additionally display a timezone string with the <local-time> element.

@dgraham @mislav refactored to use Intl.DateTimeFormat and also got rid of extra formatTimezone().
Now it just allows to set two additional attributes on the <local-time> element, timeZone and timeZoneName.
This results for example in the following HTML:
<!-- 04:00 when viewed from PST -->
<!-- 13:00 when viewed from CEST -->
<!-- 16:30 when viewed from IST -->
<local-time
  datetime="2016-07-28T04:00-07:00"
  hour="numeric"
  minute="numeric"
  timezone="PST"
  timezonename="short"
  title="Jul 28, 2016, 1:00 PM GMT+2">
13:00
</local-time>


Update: Microsoft.VCRedist.2015+.x86 version 14.40.33810.0 - correct MSI-GUIDs

Microsoft Reviewers: Open in CodeFlow

VCRedist.2015+.x86 GUIDs corrected

VCRedist.2015+.x86 GUIDs corrected

VCRedist.2015+.x86 GUIDs corrected