improve: add Mobile Device UA, and button for reset default UA list

(cherry picked from commit 249650deb06ce651960079395255438b7eeb7397)
Add mobile (Android) UAs to the default configuration, and add buttons to restore them to the default UA list

Could you please explain the feature of resetting default UA list in detail (?
If Liny did get it right, it may refer to deleting all other UAs and restore the stock ones (?

Thank you for that UA～
(Though that looked weird, for an Android 12 label with version <IP_ADDRESS> (=￣ω￣=

Thank you for that UA～ (Though that looked weird, for an Android 12 label with version <IP_ADDRESS> (=￣ω￣=

'Cause this is the UA of my own device, the Mate60 Pro, that I'm using directly. So the build version looks a bit odd. I'm sorry that I'm not super familiar with the UA format, but it seems to work fine on some common websites like Baidu and Bilibili.

Great! Adding this to the next version...
While as for the UA resetting, perhaps Liny would like to reconsider and look for a better solution based on the stuff you've kindly provided!! (So this PR may not be merged, or merged so quickly... Thank you!!!


Fix compile error.

Please always compile before doing "git commit". To make this easy, you could use a Makefile. That's what I do in Dominator.


Add missing email content

Without this line the code does not work.

@frankyn @lesv PTAL

Thanks.

@dpebot merge when green

@lesv do I need to do something to trigger the circleci build? It's been pending for days now.

@akerekes Nope - I'm looking into it.  I'll probably just merge once I've had a few minutes w/ Circle -- it will be 3:30 today at the latest.


Can't compile as dependency to another project

I'm getting this error when trying to compile a project that uses mio-serial as a dependency. However, I can clone this repo and build successfully. Any ideas on what to try?
error[E0308]: mismatched types
   --> C:\Users\zachkozar\.cargo\registry\src\github.com-1ecc6299db9ec823\mio-serial-5.0.2\src\lib.rs:822:42
    |
822 |         let r = unsafe { SetCommTimeouts(handle, &mut timeouts) };
    |                                          ^^^^^^ expected enum `winapi::ctypes::c_void`, found enum `std::ffi::c_void`
    |
    = note: expected raw pointer `*mut winapi::ctypes::c_void`
               found raw pointer `*mut std::ffi::c_void`

I have the same issue I'm currently pining the version to exactly 5.0.2 in the Cargo.toml file like so:

mio-serial = "=5.0.1"

and this seems to work just fine.

 mio-serial 5.0.2 need winapi crate's std feature.
expected enum `winapi::ctypes::c_void`, found enum `std::ffi::c_void`

Thank you very much for your quick response!
Would you mind creating git tags for the releases 5.0.2 to 5.0.4?


Allow advertising features

Hey, I think it would be really helpful to have a config option that lets you enable advanced advertising features. Here's a description of how to enable for both iOS and Android (could default to false):
https://support.google.com/analytics/answer/2444872?hl=en&utm_id=ad&authuser=0#app
This will allow you to turn this switch on inside GA:

Hi @9mm! This is actually already a thing, you can enable advertisingId collection by calling GoogleAnalytics.allowIDFA(true).
As it says, you will have to have done the optional step 7 from the installation guide for iOS:

Optional step: If you plan on using the advertising identifier (IDFA), then you need to do two things:

Add AdSupport.framework under "Link Binary With Libraries". (As with the other frameworks in step 5).
 Here you need to Add files to .., and add libAdIdAccess.a from the google-analytics-lib directory. This directory is located in the same node_modules path as in step 3.

Only do this if you actually plan to use advertising features in your app, if not it might get rejected by the AppStore for including libAdIdAccess.a and not using ads. This is why I do not include this lib by default.
I might consider updating the README to more accuratly reflect what allowIDFA means. :+1:

Oh... Very interesting. So 2 questions:

The advertising Id that you mentioned is the same thing that allows me to see advanced demographic info, etc (the toggle basically)?

Are any extra steps needed on android?

Thanks!

Not exactly. If you look into the link you pasted, the code changes you need (for the toggle to have any effect) is to "allowIDFA". For Android that is running tracker.enableAdvertisingIdCollection(true), and for iOS that is tracker.allowIDFACollection = YES. This is what happens if you do GoogleAnalytics.allowIDFA(true) in JS. Actually enabling the toggle is up to you :)

No, nothing extra for Android. Just remember to run GoogleAnalytics.allowIDFA(true).

Ah, very interesting!
I have one more somewhat noob question. Where's the best place to put GoogleAnalytics.allowIDFA(true) so I only have to call it once? Right now I have trackScreenView set everywhere in my app. I assume I only need to call the IDFA function once though?

Yes, allowIDFA is a config function, and you only need to call it once. Typically I would put it in one of the entry-point files like index.ios.js and index.android.js. Or in some common component which is used in both iOS/Android, but not re-loaded again after app startup.
You don't even need to put it inside a component class, but just do it right away at the top;
const GoogleAnalytics = require('react-native-google-analytics-bridge');
GoogleAnalytics. allowIDFA(true);

Thanks. That's all very helpful!
One final question if you don't mind. I followed the instructions for optional step 7 but I noticed when you drag the missing file Into the project via "add to..." In menu, it doesn't actually store anything in my projects Xcode file.
I'm afraid that I'll clear node modules in future and forget, or someone on my team will forget. Is there a way I can check that change into version control?
Thanks again. This is a great library.

What you could do is adding the project file to your version control after doing the instructions in step 7. It is located under node_modules/react-native-google-analytics-bridge/ios/RCTGoogleAnalyticsBridge/RCTGoogleAnalyticsBridge.xcodeproj/project.pbxproj. Then you will see if it changes after cleans, or newer versions of this library.
I know this is probably not what you want to hear, it is a bit more hassle. I cannot add this file by default because most will not use it, and if it is included without ads being used, then the app has a much higher chance of being rejected.

@9mm Did you get it to work? I'm trying to access the demographics tab in Google Analytics but it's still asking me to validate my tracking code.
Here's what I'm doing:
// Called once when app starts
export const init = () => {
  GoogleAnalytics.setTrackerId(googleAnalyticsTrackingId);
  GoogleAnalytics.allowIDFA(true);
}

Just by running the app, I would be setting IDFA right? I've checked out the dashboard after 24hours but it's still asking me to validate my tracking code. Is there anything that I'm not understanding right?

I haven't tested this myself @holyxiaoxin, just a quick Google search gives me this.
Maybe just try to skip it? Else maybe @9mm has some better idea.
And yes, just by running the app and calling the allowIDFA(true) function it should be set. As long as you've included the necessary libAdIdAccess.a framework of course.

Is it correct to say that now the correct syntax is
let tracker1 = new GoogleAnalyticsTracker(googleAnalyticsTrackingId);
tracker1.allowIDFA(true);

?


                           F:\Discord\MusicBot-1.9.5_2>

An error has occured parsing the config:
Problem:  One or more required config sections are missing.
Solution: Fix your config.  Each [Section] should be on its own line with nothing else on it.  The following sections             are missing: [Chat], [MusicBot], [Permissions], [Credentials]
F:\Discord\MusicBot-1.9.5_2>

What does this mean and how to fix it exactly?

It means that your configuration file is missing the "Chat", "MusicBot", "Permissions", and "Credentials" sections, which basically says there is no config/options.ini file.  It's right in the code you copy-pasted:

Solution: Fix your config. Each [Section] should be on its own line with nothing else on it. The following sections are missing: [Chat], [MusicBot], [Permissions], [Credentials]

The comment above is spot on.


Add xADRequestODJ resource - fixes #84

This change is

Hi @PlagueHO, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!
You've already signed the contribution license agreement. Thanks!
The agreement was validated by Microsoft and real humans are currently evaluating your PR.
TTYL, MSBOT;

Reviewed 5 of 7 files at r1.
Review status: 5 of 7 files reviewed at latest revision, 3 unresolved discussions.

DSCResource.Tests, line 1 [r1] (raw file):
Is there a way to get rid of this?  Doesn't the new test template just clone it?  Is that adequate?  @karolkaczmarek

README.md, line 209 [r1] (raw file):
Can you include a link to ODJ documentation such as:
https://technet.microsoft.com/en-us/library/offline-domain-join-djoin-step-by-step(v=ws.10).aspx

DSCResources/MSFT_xADRequestODJ/MSFT_xADRequestODJ.schema.mof, line 1 [r1] (raw file):
Request should not be part of the name.
I'm not sure I like the ODJ friendly name.  @hemantmahawar , what do you think?
AD implies domain, so I think this might work:
xADOfflineJoinFile

Comments from Reviewable

Excellent points all round. Thanks gents.

Review status: 1 of 7 files reviewed at latest revision, 7 unresolved discussions.

DSCResource.Tests, line 1 [r1] (raw file):
The latest test templates does clone this automatically. I agree - I think we should indeed get rid of this. @IainBrighton?

README.md, line 209 [r1] (raw file):
Very good! Done.

DSCResources/MSFT_xADRequestODJ/MSFT_xADRequestODJ.psm1, line 65 [r1] (raw file):
Excellent- I have done this.

DSCResources/MSFT_xADRequestODJ/MSFT_xADRequestODJ.psm1, line 90 [r1] (raw file):
Good call. Done.

DSCResources/MSFT_xADRequestODJ/MSFT_xADRequestODJ.psm1, line 93 [r1] (raw file):
Good call - I've changed this to DomainController. Although I'm not sure about the credentials. The DJOIN command unfortunately doesn't have any credential parameters. Could use Start-Process to run it under different creds. Your thoughts?

DSCResources/MSFT_xADRequestODJ/MSFT_xADRequestODJ.schema.mof, line 1 [r1] (raw file):
Sure! Easy to change - I'm happy with xADOfflineJoinFile. I'll wait to hear from @hemantmahawar before making the change.

Comments from Reviewable

Reviewed 5 of 6 files at r2.
Review status: 6 of 7 files reviewed at latest revision, 5 unresolved discussions.

Comments from Reviewable

Review status: 6 of 7 files reviewed at latest revision, 4 unresolved discussions.

DSCResources/MSFT_xADRequestODJ/MSFT_xADRequestODJ.psm1, line 90 [r1] (raw file):
Ahaha - LOL - it was a late night change. Silly me! I shall correct this pronto :)

Comments from Reviewable

Review status: 2 of 7 files reviewed at latest revision, 4 unresolved discussions.

DSCResources/MSFT_xADRequestODJ/MSFT_xADRequestODJ.psm1, line 93 [r1] (raw file):
Although, using Start-Process will mean detecting an error from DJOIN is a bit more difficult.

Comments from Reviewable

Reviewed 1 of 6 files at r2, 5 of 5 files at r3.
Review status: all files reviewed at latest revision, 3 unresolved discussions.

DSCResources/MSFT_xADRequestODJ/MSFT_xADRequestODJ.schema.mof, line 1 [r1] (raw file):
Discussed with @hemantmahawar and we came up with xADDomainJoinFile.

Comments from Reviewable

Review status: all files reviewed at latest revision, 3 unresolved discussions.

DSCResources/MSFT_xADRequestODJ/MSFT_xADRequestODJ.schema.mof, line 1 [r1] (raw file):
Cool. Thanks @TravisEz13 . I'll get to it.

Comments from Reviewable

Review status: 1 of 7 files reviewed at latest revision, 3 unresolved discussions.

DSCResources/MSFT_xADDomainJoinFile/MSFT_xADDomainJoinFile.schema.mof, line 1 [r1] (raw file):
Done.

Comments from Reviewable

Review status: 1 of 7 files reviewed at latest revision, 3 unresolved discussions.

DSCResources/MSFT_xADDomainJoinFile/MSFT_xADDomainJoinFile.psm1, line 90 [r1] (raw file):
Done.

Comments from Reviewable

@iainbrighton Can you go into reviewable and acknowledge the discussions, otherwise, I'll have to dismiss them before merging.

Reviewed 11 of 11 files at r4.
Review status: all files reviewed at latest revision, 3 unresolved discussions.

DSCResources/MSFT_xADDomainJoinFile/MSFT_xADDomainJoinFile.schema.mof, line 1 [r1] (raw file):
LGTM, I've asked the AD team for comments ( when I proposed the name.)

Comments from Reviewable

Review status: all files reviewed at latest revision, 4 unresolved discussions.

DSCResource.Tests, line 1 [r1] (raw file):
I've added an entry into the .gitignore in my xADComputer repo to exclude this in future, but I've not pushed this yet. If you want to push this change with this resource, feel free!

DSCResources/MSFT_xADRequestODJ/MSFT_xADRequestODJ.psm1, line 93 [r1] (raw file):
I wouldn't worry about it if the .exe doesn't support it. If running on a DC this shouldn't be needed. WMF 5 provides PsDscRunAsCredential.

Comments from Reviewable

Review status: all files reviewed at latest revision, 3 unresolved discussions.

README.md, line 1012 [r4] (raw file):
"Domiain" typo

Comments from Reviewable

Review status: 6 of 7 files reviewed at latest revision, 3 unresolved discussions.

DSCResource.Tests, line 1 [r1] (raw file):
If you've already done it in your PR I'll leave it to yours - I don't want to cause a merge conflict on your PR in case I do it differently! :+1:

README.md, line 1012 [r4] (raw file):
Doh! Thanks. Fixed

DSCResources/MSFT_xADDomainJoinFile/MSFT_xADDomainJoinFile.psm1, line 93 [r1] (raw file):
Ok. Will do. Cheers.

Comments from Reviewable

Reviewed 1 of 10 files at r2, 10 of 11 files at r4, 1 of 1 files at r5.
Review status: all files reviewed at latest revision, 2 unresolved discussions.

Comments from Reviewable

Reviewed 1 of 1 files at r5.
Review status: all files reviewed at latest revision, 1 unresolved discussion.

DSCResources/MSFT_xADDomainJoinFile/MSFT_xADDomainJoinFile.schema.mof, line 1 [r1] (raw file):
Sorry for this, but after review with the AD team, the resource should probably be xADComputer.
RequestFile should be optional.  For now, you can throw and say not implemented, if they don't specify request file, but we shouldn't have two resources which creates computer accounts.
What do you think?

Comments from Reviewable

Review status: all files reviewed at latest revision, 1 unresolved discussion.

DSCResources/MSFT_xADDomainJoinFile/MSFT_xADDomainJoinFile.schema.mof, line 1 [r1] (raw file):
Won't this conflict with @IainBrighton 's xADComputer resource that he's creating (for creating normal AD Computer objects)?
We could possibly combine the functionality of Offline Domain Joins with @IainBrighton 's new xADCOmputer resource, by calling DJOIN before a Computer object is created IF the RequestFile parameter is set, and then using Set-ADComputer to configure any further properties on the computer object. If RequestFile parameter is not set then the behavior of xADComputer would remain the same. @IainBrighton - what do you think? You've seen my ODJ resource code, do you think it's possible to combine the functions?

Comments from Reviewable

Review status: all files reviewed at latest revision, 1 unresolved discussion.

DSCResources/MSFT_xADDomainJoinFile/MSFT_xADDomainJoinFile.schema.mof, line 1 [r1] (raw file):
@plagueho  @iainbrighton  Yeah, That is the general idea.  What do you think?

Comments from Reviewable

Review status: all files reviewed at latest revision, 1 unresolved discussion.

DSCResources/MSFT_xADDomainJoinFile/MSFT_xADDomainJoinFile.schema.mof, line 1 [r1] (raw file):
Of course it's possible. Given enough time and effort!
I have pushed my current xADComputer implementation (still need to finish the unit tests) to https://github.com/iainbrighton/xactivedirectory/tree/Issue69. At least we can look at merging into a single code base.

Comments from Reviewable

Review status: all files reviewed at latest revision, 1 unresolved discussion.

DSCResources/MSFT_xADDomainJoinFile/MSFT_xADDomainJoinFile.schema.mof, line 1 [r1] (raw file):
Cool! I'll put a hold on this resource until your one is committed. I'll then see if I can merge what I've done into your xADComputer resource. Might not be till next week as this week is a bit busy.

Comments from Reviewable

I'm closing this PR and will resubmit a new PR with the ODJ stuff added to the new xADComputer resource.


fromlocal

Please provide enough information so that others can review your pull request:

Explain the details for making this change. What existing problem does the pull request solve?

Screenshots/GIFs

First commit


Simpliefy pip install instructions

Recommend the use of pip's ability to install directly through git instead of checking out the repository by hand.

Thanks!


feat: display geography data

[x] Display Point using DMS format
[x] Add a new Pane to display GPS coordinates on a map (only for GeometryPoint for now), when click on a cell in Explorer view
[x] Lazy loading of leaflet components
[x] Handle every spatial types via GeoJSON
[x] Enhance geography explorer (icon, geojson editor, dark mode)
[x] Waiting for the fix https://github.com/surrealdb/surrealdb.js/pull/273
[x] Waiting for the fix https://github.com/surrealdb/surrealdb/pull/4127

Preview:

@macjuul do you think the displaying in tables like should be an option? As in, either DMS or just two points

@macjuul do you think the displaying in tables like should be an option? As in, either DMS or just two points

I am tempted to add metadata within tooltip.

For Point: (lat, long)
For MultiPoint: (number of points)
For LineString/MultiLineString: (total distance)
For Polygon/MultiPolygon: (area)
For GeometryCollection: (number of geometries & nature of each geometry)

I am not sure if it adds lot of overhead, for types other than Point of course.


Adds StlThumbnailProvider

Summary of the Pull Request
What is this about:
Adds a new thumbnail provider for stl files (3D model files).
Screenshot of the thumbnails:

Screenshot of the settings page:

What is included in the PR:
A new thumbnail provider and unit tests for it.
How does someone test / validate:

Close PowerToys if installed in your machine
Full build the solution: PowerToys.sln
Start PowerToys from PowerToys\x64\Debug\PowerToys.exe or PowerToys\x64\Release\PowerToys.exe
Toggle the "Gcode thumbnail previewer" setting to enable
Open HelperFiles folder on the tests and check if the icon changes to an image
Check explorer preview to see if image is also shown there

Quality Checklist

[x] Linked issue: #9695
[x] Communication: I've discussed this with core contributors in the issue.
[x] Tests: Added/updated and all pass
[ ] Installer: Added/updated and all pass
[x] Localization: All end user facing strings can be localized
[ ] Docs: Added/ updated
[x] Binaries: Any new files are added to WXS / YML

[ ] No new binaries
[ ] YML for signing for new binaries
[ ] WXS for installer for new binaries

Contributor License Agreement (CLA)
A CLA must be signed. If not, go over here and sign the CLA.

Though it seems to be working mostly fine, I've noticed something very odd: sometimes the thumbnail background goes black!!

For the record, as this is generating transparent images, I made it return pdwAlpha = WTS_ALPHATYPE.WTSAT_ARGB instead of WTS_ALPHATYPE.WTSAT_RGB (no alpha channel) like the other providers have, but I don't see how this would be causing the problem I am seeing here...
@jaimecbernardo @yuyoyuppe do you have any insight on this?

That issue seems to happen inconsistently, I'm trying some things to mitigate it, but this might not be a problem with the extension but an issue in Windows or my drivers...
Anyway, here's a screenshot in dark mode:

Note: this is taking a dependency on Helix Toolkit.
@crutkas if a new full dependency is something one would prefer to avoid, the toolkit is MIT licensed, so there should be no problem to copy in only the required files to make this work.
Having said that, I am not advocating for that (copying the classes in) and would prefer to actually take the dependency as it means someone else with correct knowledge is maintaining them!

By the way, the only reason I have not added a Preview Handler with this is because Microsoft 3D Viewer already has a really good one... only problem is that it requires the app to be installed AND to open STLs in it by default!

@jaimecbernardo @yuyoyuppe do you have any insight on this?

No insight here. I'm assuming the color is being added by the code you've been using.
Thanks for contributing! I'm going to assign some reviewers.

Please don't merge this yet!!
I merged main branch to main and something is now broken, so I'm trying to figure out what it is...

So I traced the issue to ascii based STLs, the HelixToolkit StLReader is failing to parse those after changing the TargetFramework from netcoreapp3.1 to net5.0-windows!
Further tests show that the problem is a string.StartWith("\0") check that is done inside HelixTookit, but caused by different behavior between .netcoreapp31 and .net5
Consider the following line of code:
"test".StartsWith("\0");

The above will return false in .netcoreapp31, but true for .net5 and .net6...
I'm trying to get some further information on why this change of behavior: https://twitter.com/pedrolamas/status/1483769746227146756

The plot thickens! https://github.com/dotnet/runtime/issues/50521#issuecomment-811523668

Moved to draft

Today I submitted a PR to fix the .net5 compatibility issue in Helix Toolkit and that was validated, merged and a new release of the toolkit was pushed to NuGet.
I've now updated said NuGet on the project and confirmed that the issue is now properly fixed.
Given this, I'm putting the PR back to ready for review & merge.

@pedrolamas looks like sln is conflicted

@crutkas merge conflict fixed! 🙂


Adding template for issue & PR

@rartych may I ask you to do some magic to integrate CAMARA template for issue and PR for our project ?
I'm not familiar with this operation :)
Thanks

Sure, I will prepare PR adding necessary files.


xlate src\dst  ip\port

Hello, its possible add  to defs xlate ip's and ports to export?

Sure! I will add it.

Implemented in lated repo main.


Support :// linking syntax

Added in https://github.com/bitcoinjs/bip21/commit/0b1932f37e0236a24a1d28a1352cf7e439f63923

Released as 1.1.0


Add support for weaviate database

🚀 The feature

add weaviate

Motivation, pitch

increase the catalog of vector databases that we support.

Alternatives
No response
Additional context
No response

Can I work on this?

Hey @Dev-Khant , yes please go ahead.

Alright


Have a optional - Ctrl + K +D ?

Hi, you can add feature like Ctrl + K + D same NShader, because i add NShader plugin, your extension not work, your extension are awesome !
Thank you so much for that !

@natsupy, do you mean the auto format code feature?

no, it's format document, like you use Ctrl K + D on visual studio code, like this:
http://stackoverflow.com/questions/15663447/difference-between-ctrl-k-d-and-ctrl-e-d
or can you help me how can implement both 2 plugin Nshader and your extension, if i implement Nshader( have feature Ctrl + K + D), your plugin not work
NShader(VS 2013 - 2015): http://www.horsedrawngames.com/shader-syntax-highlighting/
Thank you so much !

ShaderlabVS Pro has document format feature.

ShaderlabVS Pro has document format feature.


A more pretty HTML output

How feasible would it be to generate a rst file following which it can be built into a more pretty HTML webpage?

I don't have any experience with rst files. Any guidance on this matter would be appreciated.

rst are like md but on steriods and sphinx loves to rst files to generate web pages (the Python docs you see are mostly rst)

Okay, so the script indeed generates md. This can be used to generate sphinx based html. I will have a more detailed into it.

@sinaatalay I tried to read the code and I was easily lost within the code. But I have a suggestion for pretty HTML, alongside creating the Grammarly HTML file, we can pass the generated markdown to sphinx and create a more better looking HTML doc (based on tempelate taken from the user). Of course this can be an optional dependency. Any thoughts?

You don't need to read the code for this. When you use rendercv new, a folder called markdown will be generated. This folder contains the Markdown files, which are automatically converted into HTML. If you make changes to the contents of this folder, the corresponding HTML will be updated accordingly.
If you think RST will be a good choice, I suggest the following:

Update the contents of the markdown folder as if they are RST.
Then take the output (John_Doe.md) and rename it to John_Doe.rst. Then, use your favorite RST to HTML tool to see the outcome.

My thoughts about a pretty HTML:
HTML is just a markup language; the style and the design come from a CSS file. People can use CSS to make the existing HTML output a very nice-looking page and also modify the Markdown to modify the HTML output. I wouldn't want to ship a CSS with RenderCV because that would be another big thing to maintain, and LaTeX designs already need maintenance.
The HTML output's primary purpose is to enable users to easily copy and paste the CV's content into other software applications, such as Grammarly.

I will try the rendercv new. Maybe rst can be skipped since markdown is already there. But my rationale behind the HTML is to allows users to have a low-code web based CV which they don’t have to maintain separately. And with sphinx it cannot be any simpler. The formatting and everything is taken care of by the sphinx

HTML output will take care of that. The CSS file doesn't need to be updated every time an HTML file changes; it's a one-time development.
If you could post an example of an RST CV and an example of HTML output under this issue, we can think of using RST as well.

User can of course setup the sphinx-doc manually if they want it (as I already did it). Most Python documentation (md and rst) are sphinx based

Implementing RST will be a humongous task, I think. But I will soon share the sphinx code (if I manage to integrate the Sphinx API with rendercv)

It should be very easy; when you try out rendercv new, you will understand what I mean. It requires a maximum of 60 lines of work.


Not seeing a way to move the UTM toolbar in VM on iPad OS

Recent UTM release highlights the ability to use a new UTM toolbar while in a VM that can be pinned to any side of the display. In the release link demonstrating this feature there is a small arrow icon that one is supposed to drag to the side of the display that one wishes to pin the toolbar to. However, I do not see that new arrow on my toolbar on the new UTM release; instead my toolbar appears the same as previous releases and does not seem movable.
Thanks!
Configuration

UTM Version: 3.0.0 beta
OS Version: 15.2
Device Model: iPAD M1
Is it jailbroken (name jailbreak used)? No
How did you install UTM? Signulous

Can you clarify what you're seeing with a screenshot?

Sure, @osy:  attached.

Are you certain you're running 3.0 on iOS 15? Unless you're spoofing your OS version, that old toolbar shouldn't even be loaded.

Yes, understood. I thought it looked the same and wondered the same thing—is there a way to check inside of the VM or from the UTM settings on the iPAD? I double checked that I downloaded the correct UTM.ipa from the UTM releases site and it matches the app size for 3.0 (198.1 MB).

Not sure but one thing you can check is to see if creating a new ARM64 virt machine shows up as virt-6.2 or 6.1

6.1
May not be 3.0 then. I wonder if something if it is not retrieving the correct .ipa for download? Strange though that ipa size is different than my prior downloads and matches what it says is 3.0 on releases site on Github. Any other links you could send me to download in case something not working wright on Github releases for the iOS version? Could also see if anyone else on iOS has got the right .ipa downloaded. Thanks.

I’ll try downloading and installing again also just to me sure.

Sorry, @osy— it may be my mistake. I think I was downloading the V3.0 pre-release. I’ll retry agin now.

Unfortunately, @osy that didn’t work— I just confused myself. The “release” I just tried to download was actually the older stable UTM 2.4 release. It looks like the UTM 3.0.ipa pre-release is the most current release which is what I previously downloaded and now re-downloaded again and still new ARM64 VM only shows up to QEMU 6.1. Perhaps incorrect iOS UTM version on the website link for download? Happy to keep troubleshooting at your convenience. Have a good night.

Did you try deleting the app and installing fresh?

For reference, here is how to move the UTM 3.0 toolbar on iPadOS 14+. You tap and hold on the arrow that shows and hides the bar, then while it is enlarged swipe to move it to another corner.
https://user-images.githubusercontent.com/12073163/148661764-6304d204-9cc4-4475-994e-8533cf2649d1.mov

Also FYI I added a version info display to system settings page for UTM iOS on v3.0.1.

Thanks, @osy and @conath.
Thank you also for adding a version number to the system settings on UTM iOS— that will help future troubleshooting.
You were correct: I was able to install V 3.0 properly after I first deleted my previous installed UTM on my iPad. Strange in that I never had to delete UTM on my iPad before to install a new version— all the previous versions just installed over the previous versions. The nice thing about that was that it would keep my VM intact while updating versions. Since I had to delete UTM to install V 3.0, I first needed to save my VM to the cloud which took a little while (already a 30GB VM) and then open it up after installing the new V 3.0 UTM.
https://user-images.githubusercontent.com/76857619/148666033-2f140789-572a-44bd-8a09-c55d0ae0aab1.mp4
Unfortunately, the UTM toolbar doesn’t seem to be working as smoothly with iOS 15 and Debian Linux; I see the arrow of the movable toolbar briefly but then it goes away, and I can’t get it back. At times, I am able to move it but not consistently and when I do, it often vanishes soon after I move it. I then need to enlarge the display manually with finger zooming the screen. Not sure if has anything to do with fact that I’m using a VM created with prior UTM version? I’ve attached a video showing what happens.
PS,
On a side note, I also really do like the new VM wizard set up— very helpful and intuitive.
Unfortunately, unlike, Conath on his Mac, I seem to have lost a little OpenGL ability despite the Virgl and Angle upgrade (e.g. old graphics apps [OpenGL 1.0?] no longer work: rgl app in R no longer displays anything in OpenGL window, and I just get a purple flash when trying to open old glhack game). Other and newer OpenGL apps work about the same. Will stay on V 3.0 for now to help troubleshoot any iOS 15 iPad issues but then may go back to prior release on iPad until further update.

@SugarRayLua You can prevent VMs from getting deleted by moving them to an “On My iPad” folder in Files. No need to upload to iCloud.

@conath - thanks for letting me know!

Thanks, @osy and @conath.
Thank you also for adding a version number to the system settings on UTM iOS— that will help future troubleshooting.
You were correct: I was able to install V 3.0 properly after I first deleted my previous installed UTM on my iPad. Strange in that I never had to delete UTM on my iPad before to install a new version— all the previous versions just installed over the previous versions. The nice thing about that was that it would keep my VM intact while updating versions. Since I had to delete UTM to install V 3.0, I first needed to save my VM to the cloud which took a little while (already a 30GB VM) and then open it up after installing the new V 3.0 UTM.
RPReplay_Final1641691836.mp4
Unfortunately, the UTM toolbar doesn’t seem to be working as smoothly with iOS 15 and Debian Linux; I see the arrow of the movable toolbar briefly but then it goes away, and I can’t get it back. At times, I am able to move it but not consistently and when I do, it often vanishes soon after I move it. I then need to enlarge the display manually with finger zooming the screen. Not sure if has anything to do with fact that I’m using a VM created with prior UTM version? I’ve attached a video showing what happens.
PS, On a side note, I also really do like the new VM wizard set up— very helpful and intuitive.
Unfortunately, unlike, Conath on his Mac, I seem to have lost a little OpenGL ability despite the Virgl and Angle upgrade (e.g. old graphics apps [OpenGL 1.0?] no longer work: rgl app in R no longer displays anything in OpenGL window, and I just get a purple flash when trying to open old glhack game). Other and newer OpenGL apps work about the same. Will stay on V 3.0 for now to help troubleshoot any iOS 15 iPad issues but then may go back to prior release on iPad until further update.

It's expected that the button disappears if the screen hasn't been touched in 30 seconds. Are you not able to get it back by touching the screen?

It's expected that the button disappears if the screen hasn't been touched in 30 seconds. Are you not able to get it back by touching the screen?

It seems to only come back when I tap the location where the button was before it disappeared.

Oh that’s a bug then. I’ll fix it.

Thank you.

@conath @SugarRayLua To be clear, when you two say tap you mean with your finger on the screen? The interaction assertion is only triggered for screen touches, not pencil or touchpad.
Also I noticed that the dim view over a black background is too dim so I've changed the opacity from 0.2 to 0.4. Hopefully that will make the button more obvious.

@osy Yes tapping with my finger, not pencil or cursor.

Can you test with 3.0.2? I think maybe the issue was the button was too dim.

Hi, @osy. Sorry, I should have written you back— I did test it this week with 3.0.2 and it works fine, and yes, it might have been too dim before. Now the bottom gradually fades when not in use, but I can still see it to tap on it.

Just tried 3.0.2 as well. The toolbar button is now visible while in the first fade out stage and it appears reliably when I tap the screen.
It is noteworthy that the button does not respond to taps when faded away completely. I assume this is how it is supposed to work.

Yes, and it's supposed to ignore touchpad and pencil inputs.


Update Shopcart API

Complete the route logic of Update Shopcart API in routes.py
Wrote two test cases in test.models.py
Wrote five test cases in test.routes.py

btw, there's conflicts with the master branch 🥲 please help to resolve it, thanks a lot!

btw, there's conflicts with the master branch 🥲 please help to resolve it, thanks a lot!

Yes, I will figure this out


public decorator signature is misleading

Related issue
#1222
Summary or solution description
Fixing the wrong default value on the safe parameter at the public decorator
Platform:

OS: Windows 11 x64
Python version: Python 3.11

Task linked: CU-86dtg2t0d public decorator signature is misleading

coverage: 91.215%. remained the same
when pulling 704d68b9c3ff92b6f9ecb7847ece241197c7dcf4 on CU-86dtg2t0d
into 49731b6abd4acb2eb14af0e7e92be94aded3e7b9 on development.


Reduce warnings in error logs

Two main things here:

remove some of the warns
reduce the number of undefined errors written to the logs

Hi Bruce, can you please create this pull requests against postreleasefix/87?


feat: add macos simple fullscreen

This change adds a new "simple" fullscreen mode for macOS.
This is usually a highly requested feature on macOS since many people do not like having to depend on a separate space for fullscreen applications.
Many applications provide a simple fullscreen mode like this (VLC, iTerm, etc).
See the demo here: https://www.dropbox.com/s/0c9aawble06xq2t/simple_fullscreen.mov?dl=0
DISCLAIMER: I'm mainly adding this so I can add this functionality to alacritty (https://github.com/jwilm/alacritty/issues/34).

[x] Tested on all platforms changed
[x] Added an entry to CHANGELOG.md if knowledge of this change could be valuable to users
[x] Updated documentation to reflect any user-facing changes, including notes of platform-specific behavior
[x] Created an example program if it would help users understand this functionality

Thanks for the PR! I haven't had a chance to review this in detail yet, but two things for now:

This method should be exposed via WindowExt instead: https://github.com/tomaka/winit/blob/master/src/os/macos.rs#L7
What's your reason for favoring this approach over using enterFullScreenMode (as discussed in #473)?

This method should be exposed via WindowExt instead: /src/os/macos.rs@master#L7

I'll get onto that. 👍

What's your reason for favoring this approach over using enterFullScreenMode (as discussed in #473)?

enterFullScreenMode is more aimed towards games or kiosks. Basically, macOS has three distict fullscreen modes:

Standard fullscreen (happens when you click the green fullscreen button)

This moves the window to its own space

enterFullScreenMode

This takes over the monitor, so no spaces or other applications may be used at the same time (think of how fullscreen mode works in kiosk applications)

"Simple Fullscreen"

The window just fills the screen completely (hiding the dock and menu bar)
This used to be how all fullscreen windows worked pre-macOS Lion
This is a popular and widely requested feature, that many apps have implemented manually since Apple removed the functionality.

Some apps are: VLC, iTerm2, The electron framework, and various other applications

This means you can still use other applications, spaces, and all other functionality, while having your application in fullscreen mode.

Sorry I've taken so long! I have access to a better macOS device now, so things should be faster in the future.
I definitely see that value in this functionality. I've noticed that your implementation doesn't adhere to winit's expected fullscreen behavior: in fullscreen mode, toggling decorations/maximization/etc. shouldn't take effect until after fullscreen has been exited (but the state is still tracked internally).

I've noticed that your implementation doesn't adhere to winit's expected fullscreen behavior: in fullscreen mode, toggling decorations/maximization/etc. shouldn't take effect until after fullscreen has been exited (but the state is still tracked internally).

@francesca64 Do you mean that if the user tries to maximize the window while it's fullscreen, nothing should happen until fullscreen is exited?
Something like:
normal window (640x480)
set_simple_fullscreen(true)
maximize (does nothing since window is currently fullscreened)
set_simple_fullscreen(false)
window is now maximized

?

Actually, I see what you mean. If I enable the simple fullscreen, the decorations can still be toggled. I'll fix that up.

[ ] ensure decorations and maximizing does not affect screen while in fullscreen

This looks solid! It's definitely consistent with set_fullscreen now.
I've noticed that the existing macOS fullscreen behavior (wrt decorations and maximization toggling) isn't consistent with other platforms, but that's not anything you have to worry about... I'm just writing this as a reminder to myself.
Anyway, I know I've kept you waiting for a long time already, but as per our new policies we still need one more approval.

@francesca64 I don't mind at all!
@acheronfail There's a few differences between this and the existing fullscreen behavior.

Calling set_simple_fullscreen(true) twice gets the window stuck in fullscreen mode AFAICT:

window.set_simple_fullscreen(true);
window.set_simple_fullscreen(true);
window.set_simple_fullscreen(false); // still fullscreen

Calling set_simple_fullscreen(false) on a not fullscreen window moves it.
In the example, maximizing the window by clicking the green button, then pressing F gets the window stuck in a weird state. I'm guessing the OS fullscreen doesn't interact well with simple_fullscreen?

@mtak- nice finds!

Calling set_simple_fullscreen(true) twice gets the window stuck in fullscreen mode AFAICT

You were right, I've just fixed this. Now it won't try to fullscreen if it's already fullscreen (and it won't try to "un"fullscreen if it's not already, etc).

Calling set_simple_fullscreen(false) on a not fullscreen window moves it

This is fixed in the latest commit. 🙂

In the example, maximizing the window by clicking the green button, then pressing F gets the window stuck in a weird state. I'm guessing the OS fullscreen doesn't interact well with simple_fullscreen?

Yep, the same fix has solved this issue as well. Although the main problem with that was the example was just using a toggle is_fullscreen = !is_fullscreen and the above caused that to get out of sync.
The change I made also gives it a return type to indicate whether the requested transition was successful:
fn set_simple_fullscreen(&self, fullscreen: bool) -> bool;

You can see where in the example this is used.

I've just found another edge-case, I'll push another commit soon!

@mtak- @francesca64 Just one question:
At the moment this behaviour occurs:
window.set_simple_fullscreen(true);   // simple fullscreen
window.set_fullscreen(None); // this does nothing

Using set_fullscreen(None) (which usually disables the native fullscreen) will do nothing, if the screen is already in simple fullscreen.
The inverse also performs the same:
window.set_fullscreen(Some(monitor)); // native fullscreen
window.set_simple_fullscreen(false);   // this does nothing

Question: Is this the behaviour we want? Or does it make sense to you that set_fullscreen should also disable simple fullscreen?

@acheronfail Thanks for the extremely speedy response!
This transition is a corner case, but still a bit wonky:
fullscreen true kind simple // fullscreens
fullscreen true kind native // fullscreens - probably should do nothing
fullscreen false kind simple // does nothing
fullscreen false kind native // unfullscreens, but leaves the window in an odd state

I'm guessing that the existing fullscreen code should be checking for simple fullscreen.

Question: Is this the behaviour we want? Or does it make sense to you that set_fullscreen should also disable simple fullscreen?

I agree with the do nothing approach on false/None if that mode is not currently active.
This is the way I imagine the two modes interacting.

native
simple
supported
valid transitions

true
true
no
N/A

true
false
yes
set_fullscreen(None)/set_fullscreen(Some(other))

false
true
yes
set_simple_fullscreen(false)

false
false
yes
set_fullscreen(Some(..)) set_simple_fullscreen(true)

With all invalid transitions being ignored/do nothing.
@francesca64 @acheronfail Does that table seem right to you?

@mtak- That seems right to me.
I just updated it and verified that it behaves the same as the above table.
The only question I have, is whether or not users should be able to tell if the window is in fullscreen (or simple fullscreen) or not?
Perhaps something like:
fn get_fullscreen() -> Option<MonitorId>;
fn get_simple_fullscreen() -> bool

That would be the only thing that I can think of.
Of course, they can always keep track of the window state itself... But we already have that information in the DelegateState. Just a though. 🤷♂

The only question I have, is whether or not users should be able to tell if the window is in fullscreen (or simple fullscreen) or not?

That was proposed in #579, which it looks like I forgot to ever follow up on.


Masked gemv

Proposed changes
Comes with general improvements to gemv kernel and specialized masked gemv kernel
Benchmarks of vanilla gemv on M3 Max Laptop:

Checklist
Put an x in the boxes that apply.

[x] I have read the CONTRIBUTING document
[x] I have run pre-commit run --all-files to format my code / installed pre-commit prior to committing changes
[x] I have added tests that prove my fix is effective or that my feature works
[x] I have updated the necessary documentation (if needed)

Small benchmarks on masked gemv
  B,     M,     N,     K,   dtype,  t, block_size,  time, time_masked, diff% = 100. * (1.0 - time_mlx_masked / time_mlx)
  1,  1024,     1,  4096, float32, nt,         64, 0.172,       0.129, +25.23%
  1,     1,  1024,  4096, float32, nt,         64, 0.192,       0.104, +45.91%
  1,     1,  4096,  1024, float32, nt,         64, 0.162,       0.107, +34.20%
  1,     1,  4096,  4096, float32, nt,         64, 0.644,       0.141, +78.18%


Deprecate get_all_param_names(), replace_param()

Addresses #1551

replaces .get_all_param_names() with .keys() and .items() as appropriate
replaces param_store.replace_param(...) with param_store[key] = new_value
adds deprecation warnings to both deprecated methods

Ready to merge now that tests pass.


Direct passing WebIdentity token to AWS provider

Change Overview
Allowing to pass Role ARN and Web Identity token for token-based AWS authentication.
Pull request type
Please check the type of change your PR introduces:

[ ] :construction: Work in Progress
[ ] :rainbow: Refactoring (no functional changes, no api changes)
[ ] :hamster: Trivial/Minor
[ ] :bug: Bugfix
[x] :sunflower: Feature
[ ] :world_map: Documentation
[ ] :robot: Test

Test Plan

[x] :muscle: Manual
[ ] :zap: Unit test
[ ] :green_heart: E2E

LGTM overall.


Externally tagged enums don't work correctly when using struct variants

When generating schemas for externally tagged enums containing struct variants, the oneOf block gets embedded inside additionalProperties instead of being top-level in the schema.
I tried to debug the proc macro, but my knowledge of Rust macros is fairly lacking and I wasn't able to track down the point where the schema gets generated. If you could point me in the right direction I could open a PR to fix this.
Example
Rust
#[derive(Clone, Debug, Deserialize, Serialize, OpgModel)]
#[serde(rename_all = "camelCase")]
pub enum ExampleEnum {
    First { hello: String },
    Second { world: String },
}

Example payload
{
  "first": {
    "hello": "hi!",
  }
}

{
  "second": {
    "world": "mondo",
  }
}

Currently generated schema
"ExampleEnum": {
  "type": "object",
  "additionalProperties": {
    "oneOf": [
      {
        "type": "object",
        "properties": {
          "hello": {
            "type": "string"
          }
        },
        "required": [
          "hello"
        ]
      },
      {
        "type": "object",
        "properties": {
          "world": {
            "type": "string"
          }
        },
        "required": [
          "world"
        ]
      }
    ]
  }
},

Expected Schema
"ExampleEnum": {
  "oneOf": [
    {
      "type": "object",
      "properties": {
        "first": {
          "type": "object",
          "properties": {
            "hello": {
              "type": "string"
            }
          },
          "required": [
            "hello"
          ]
        }
      },
      "required": [
        "first"
      ]
    },
    {
      "type": "object",
      "properties": {
        "second": {
          "type": "object",
          "properties": {
            "world": {
              "type": "string"
            }
          },
          "required": [
            "world"
          ]
        }
      },
      "required": [
        "second"
      ]
    }
  ]
}

It's made on purpose. There may be parameters or description for the entire entity. And the generated code is valid according to the specification, and different code generators from swagger also accept this.

I know it's valid, but the documentation becomes lacking and the examples are all messed up by additionalProp1..N.
For instance, it doesn't show the accepted tag values (in this instance, first and second)

Is there a way to have them mapped correctly? Maybe a macro tag or something along those lines


create fs-cloud profile

Description
Replace this text with a summary of the changes in this PR. Include why the changes are needed and context about the changes. List required dependencies. If there is a Git issue for the change, please link to it.
https://github.ibm.com/GoldenEye/issues/issues/5042
Release required?
Identify the type of release. For information about the changes in a semantic versioning release, see Release versioning.

[ ] No release
[ ] Patch release (x.x.X)
[ ] Minor release (x.X.x)
[ ] Major release (X.x.x)

Release notes content
If a release is required, replace this text with information that users need to know about the release. Write the release notes to help users understand the changes, and include information about how to update from the previous version.
Your notes help the merger write the commit message for the PR that is published in the release notes for the module.
Run the pipeline
If the CI pipeline doesn't run when you create the PR, the PR requires a user with GitHub collaborators access to run the pipeline.
Run the CI pipeline when the PR is ready for review and you expect tests to pass. Add a comment to the PR with the following text:
/run pipeline

Checklist for reviewers

[ ] If relevant, a test for the change is included or updated with this PR.
[ ] If relevant, documentation for the change is included or updated with this PR.

Merge actions for mergers

Use a relevant conventional commit message that is based on the PR contents and any release notes provided by the PR author. The commit message determines whether a new version of the module is needed, and if so, which semver increment to use (major, minor, or patch).
Merge by using "Squash and merge".

/run pipeline

/run pipeline

Hi @ocofaigh , don't know why this error in CRA is being thrown

@Aayush-Abhyarthi This fscloud profile has two required input variables, existing_kms_instance_guid and kms_key_crn. So that means you need to add these to the cra-config.yaml file like this:
# More info about this file at https://github.com/terraform-ibm-modules/common-pipeline-assets/blob/main/.github/workflows/terraform-test-pipeline.md#cra-config-yaml
version: "v1"
CRA_TARGETS:
  - CRA_TARGET: "examples/fscloud"
    CRA_IGNORE_RULES_FILE: "cra-tf-validate-ignore-rules.json"
    PROFILE_ID: "0e6e7b5a-817d-4344-ab6f-e5d7a9c49520" # SCC profile ID (currently set to the FSCloud 1.4.0 profile).
    CRA_ENVIRONMENT_VARIABLES:
      TF_VAR_existing_kms_instance_guid: "e6dce284-e80f-46e1-a3c1-830f7adff7a9"
      TF_VAR_kms_key_crn:  "crn:v1:bluemix:public:hs-crypto:us-south:a/abac0df06b644a9cabc6e44f55b3880e:e6dce284-e80f-46e1-a3c1-830f7adff7a9:key:76170fae-4e0c-48c3-8ebe-326059ebb533"

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

@Aayush-Abhyarthi can you please rebase with master and resolve conflicts?

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

@daniel-butler-irl @toddgiguere Any idea why test is failing with this:
TestRunCompleteUpgradeExample 2023-10-25T06:23:24Z tests.go:399: PR Branch: HEAD
    tests.go:403: Detected the string "BREAKING CHANGE" or "SKIP UPGRADE TEST" used in commit message, skipping upgrade Test.
--- FAIL: TestRunCompleteUpgradeExample (4.24s)
panic: runtime error: invalid memory address or nil pointer dereference [recovered]
	panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x8 pc=0xdfbb02]

goroutine 7 [running]:
testing.tRunner.func1.2({0x172b820, 0x2d7e050})
	/usr/local/go/src/testing/testing.go:[154](https://github.com/terraform-ibm-modules/terraform-ibm-icd-rabbitmq/actions/runs/6631100502/job/18029157416#step:7:155)5 +0x238
testing.tRunner.func1()
	/usr/local/go/src/testing/testing.go:1548 +0x397
panic({0x172b820?, 0x2d7e050?})
	/usr/local/go/src/runtime/panic.go:914 +0x21f
github.com/gruntwork-io/terratest/modules/terraform.GetCommonOptions(0x1a4572a?, {0xc000b923c0?, 0x0?, 0x0?})
	/go/pkg/mod/github.com/gruntwork-io/terratest@v0.46.1/modules/terraform/cmd.go:46 +0x22
github.com/gruntwork-io/terratest/modules/terraform.RunTerraformCommandAndGetStdoutE({0x1efbd18, 0xc0001b5a00}, 0xa?, {0xc000b923c0?, 0xc000b93020?, 0xc000002c00?})
	/go/pkg/mod/github.com/gruntwork-io/terratest@v0.46.1/modules/terraform/cmd.go:92 +0x46
github.com/gruntwork-io/terratest/modules/terraform.OutputJsonE({0x1efbd18, 0xc0001b5a00}, 0x0?, {0x0, 0x0})
	/go/pkg/mod/github.com/gruntwork-io/terratest@v0.46.1/modules/terraform/output.go:282 +0xfb
github.com/gruntwork-io/terratest/modules/terraform.OutputForKeysE({0x1efbd18?, 0xc0001b5a00?}, 0x0?, {0x0, 0x0, 0x0?})
	/go/pkg/mod/github.com/gruntwork-io/terratest@v0.46.1/modules/terraform/output.go:310 +0x46
github.com/gruntwork-io/terratest/modules/terraform.OutputAllE(...)
	/go/pkg/mod/github.com/gruntwork-io/terratest@v0.46.1/modules/terraform/output.go:349
github.com/gruntwork-io/terratest/modules/terraform.OutputAll({0x1efbd18?, 0xc0001b5a00}, 0x1a371c5?)
	/go/pkg/mod/github.com/gruntwork-io/terratest@v0.46.1/modules/terraform/output.go:342 +0x2a
command-line-arguments.TestRunCompleteUpgradeExample(0xc0001b5a00)
	/__w/terraform-ibm-icd-rabbitmq/terraform-ibm-icd-rabbitmq/tests/pr_test.go:100 +0x479
testing.tRunner(0xc0001b5a00, 0x1afe568)
	/usr/local/go/src/testing/testing.go:[159](https://github.com/terraform-ibm-modules/terraform-ibm-icd-rabbitmq/actions/runs/6631100502/job/18029157416#step:7:160)5 +0xff
created by testing.(*T).Run in goroutine 1
	/usr/local/go/src/testing/testing.go:[164](https://github.com/terraform-ibm-modules/terraform-ibm-icd-rabbitmq/actions/runs/6631100502/job/18029157416#step:7:165)8 +0x3ad
FAIL	command-line-arguments	4.340s
FAIL
make: *** [Makefile:126: run-tests] Error 1

the error is with the test, it is skipped but you still try to access the outputs. All that code should be in the if !options.UpgradeTestSkipped block

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

:tada: This PR is included in version 1.7.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Create fabiomrbarbosa

I've built a new website with Eleventy!
Could you please consider it to be added to your documentation website?

Thanks!


Issues with mobile view using Tailwind.css

Hi, i have started to develop a small project for my portfolio using your slideshow.
I am using React and Tailwind.css for my web.
I was trying to create a Section component, composed of:

Title
Description
Slideshow
Picture Description

The idea was to include all that in a div, and each section containing it's own div. I made the Title and description and my idea was to use the slideshow in a box with the description at their side in desktop view and the description below if mobile.
After some playing with desktop I made a version I liked, but I realised at mobile the resolution of the site has totally displacen.
I have taken the example from the web, but it has never worked from the beginning, and I'm not sure what I'm doing wrong since I have checked in the examples web it works at mobile views.
Examples:

Desktop view:

Mobile view without slideshow:

Mobile view with slideshow

It has even breaking my sticky navbar, I think it might be incompatible with Tailwind.css?

@jbtwist  Thanks for raising this issue. It will be investigated and we'll get back to you

@jbtwist I could not replicate the bug. I created a sample codesandbox https://codesandbox.io/p/sandbox/tailwind-slideshow-tm5c33 can you please take a look at it to confirm if it's similar to what you're trying to do.
You can also create a codesandbox app to replicate the bug


SVGElements 1.7 - Correct Font Parsing and fix reDoS issue.

Upgrades to SVGElements 1.7
Use the corrected SVGElements Parsing.

@jpirnay I'm not sure what this will break. I fixed the Text.font parsing of objects and added in .font_list and properly extracted the font_family and fixed the ReDoS issue (https://github.com/meerk40t/meerk40t/security/code-scanning/4)
You seemed to have spackled over some of my errors in parsing the Text objects initially. So I think you'd have a better handle for what should and shouldn't work with the corrections.
The font_family, font_stretch, font_variant, and properties are correctly implemented and parse if the font attribute is set. These can either be set directly or can be set through a font attribute shorthard. That stuff should work correctly now. font_weight will now give a string value usually and text.weight would give the int value for that if it was needed. font_face will no longer be misused and is deprecated (which was true in the Spec), and was partially an error with regards to family and generic family etc. That stuff will now correctly parse, and text.font_list will give the hierarchy of preferred fonts, fully parsed out. Whereas font_family will give the valid font-family set value either directly set or set in the font attribute shorthand.

Will look into it  (tomorrow)


[MM-30349] Demo plugin - Webhook events

Summary
This PR will add webhook event e2e tests for Demo Plugin
Ticket Link
Fixes https://mattermost.atlassian.net/browse/MM-30349

/update-branch

/update-branch

@hanzei will be out this week, @catalintomai can you give it a quick review?

@hanzei will be out this week, @catalintomai can you give it a quick review?


timeout failed wifi connections

Right, that's the point.

how do we handle SSID no longer available or password has changed? it'll be in deadlock and forever rebooting.
Should we reserve a pin to interrupt this cycle and do a factory restore?


Pasting in IE does not work

Steps to reproduce:

Create a squire field without an iFrame, and use Internet Explorer to view.
Paste into the squire field.

Expected Behavior
Text from the clipboard appears in the squire field.
Actual Result
The squire field appears unchanged.
Suspected Culprit
Line 2398 (squire-raw.js).  this.setSelection( range );

Sorry, I can't reproduce this (testing in IE11; anything older than that is unsupported). Works fine if I open the Demo.html file and paste.


Charts load time

It seems that charts are loading much faster on Firefox than Chrome, even when working with new requests.
Let's investigate where the difference could stem from between the two and improve performance on Chrome if possible.

/bounty

@ericboucher can I be assigned?

Hi @ericboucher, I got caught up in some other works. I'll setup the codebase and check this out today.

@ericboucher I wasn't able to find anything specific for load time differences. Also on my machine, the performance was near about same on both the browsers. Hence, unassigning myself from the issue.

/attempt #1111

@feliciien any luck? I might close this issue otherwise since we don't seem to be able to replicate well.

@ericboucher I'd like to give it a try

Hi @ericboucher I tried it on both chrome and firefox and dont find any delay or slowness in chrome. Both are working fine and at same speed. also tracked in performance tab. didnt find any major differences.

@ericboucher Is this still open/needed?


Need to deep link into the GitHub quickstart sample. Very hard to find it otherwise.

Regarding "the complete, ready-to-compile source code used in this quickstart is available in the Speech SDK Samples under the quickstart folder"
I Opened the link and go to the quickstart folder. I see many samples there:
https://github.com/Azure-Samples/cognitive-services-speech-sdk/tree/master/quickstart
It is not clear where to find the quickstart for dialog APIs. We need to be more specific. Give links directly to the quickstart sample.
This is the direct link to the C# UWP one:
https://github.com/Azure-Samples/cognitive-services-speech-sdk/tree/master/quickstart/csharp/uwp/virtual-assistant
There is also a Java version:
https://github.com/Azure-Samples/cognitive-services-speech-sdk/tree/master/quickstart/java/jre/virtual-assistant

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

ID: 34c2a7bb-da4c-659c-42b9-732eb8d96826
Version Independent ID: b0e49ed5-efc8-b2c1-e5a9-124134f8ae3d
Content: Quickstart: Connect to a Custom Commands app with Speech SDK - Speech service - Azure Cognitive Services
Content Source: articles/cognitive-services/Speech-Service/quickstart-custom-speech-commands-speech-sdk.md
Service: cognitive-services
Sub-service: speech-service
GitHub Login: @don-d-kim
Microsoft Alias: donkim

@dargilco we will review your feedback and get back to you shortly. Thanks.

@dargilco your link is to an other project using the BotFrameworkConfig.

@eluchsinger thanks for pointing that out. You are right, there probably aren't any quick-start samples for Custom Command as the text suggests. They need to be created.

It is basically the same code, except for the start where you set up the connection, tokens, etc.

I see that the Android version uses different playback code than the Java JRE one.

#reassign: @v-demjoh
John, can you take a look and update these docs based on Darren's feedback? Thanks!

This page has been substantially re-written and now appears at this URL:
https://docs.microsoft.com/en-us/azure/cognitive-services/speech-service/how-to-custom-commands-create-application-with-simple-commands
Feedback on this new publication is most welcome.

#please-close


feat: support custom events

@manucorporat how are these types of events registered?  I'm using a component library made with lit I can't get the click event to work for example


Add support for RTSP PCM/WAV and G711/WAV

Added PCM RTP packet reader and added support for PCM 8 bit,
16 bit, ALAW and MULAW playback through RTSP.
Change-Id: If0a187b55faa89850a159e17eae28358d6634799

LG w/ nits, will fix in our internal processes.

Merged internally. The issue will be marked as merged automatically when we do a push. Thanks for the contribution!

Question: how did you test the PCM streams? Especially for PCMU, they have static payload types. Did you manage to generate a dynamic payload type for PCMU?

I tried to play this media using a local live555, and it didn't work. The cause is you are not handling static payload types. And even after I hardcoded the format (`PCM L16, 44100Hz, 1 channel), the audio did not play.

This is the diff I used:
--- a/src/main/java/androidx/media3/exoplayer/rtsp/MediaDescription.java
+++ b/src/main/java/androidx/media3/exoplayer/rtsp/MediaDescription.java
@@ -105,6 +105,14 @@ import java.util.HashMap;

   /** Builder class for {@link MediaDescription}. */
   public static final class Builder {
+
+    /** RTPMAP attribute format: {@code <payloadType> <mediaEncoding>/<clockRate>/<channelCount>}. */
+    private static final String RTP_MAP_ATTR_AUDIO_FMT = "%d %s/%d/%d";
+    private static final int RTP_STATIC_PAYLOAD_TYPE_PCMU = 0;
+    private static final int RTP_STATIC_PAYLOAD_TYPE_PCMA = 8;
+    private static final int RTP_STATIC_PAYLOAD_TYPE_L16_STEREO = 10;
+    private static final int RTP_STATIC_PAYLOAD_TYPE_L16_MONO = 11;
+
     private final String mediaType;
     private final int port;
     private final String transportProtocol;
@@ -199,15 +207,52 @@ import java.util.HashMap;
      */
     public MediaDescription build() {
       try {
-        // rtpmap attribute is mandatory in RTSP (RFC2326 Section C.1.3).
-        checkState(attributes.containsKey(ATTR_RTPMAP));
         RtpMapAttribute rtpMapAttribute =
-            RtpMapAttribute.parse(castNonNull(attributes.get(ATTR_RTPMAP)));
+            attributes.containsKey(ATTR_RTPMAP)
+            ? RtpMapAttribute.parse(castNonNull(attributes.get(ATTR_RTPMAP)))
+            : RtpMapAttribute.parse(getRtpMapStringByPayloadType(payloadType));
         return new MediaDescription(this, ImmutableMap.copyOf(attributes), rtpMapAttribute);
       } catch (ParserException e) {
         throw new IllegalStateException(e);
       }
     }
+
+    private static String getRtpMapStringByPayloadType(int rtpPayloadType) {
+      checkArgument(rtpPayloadType < 96);
+
+      switch (rtpPayloadType) {
+        case RTP_STATIC_PAYLOAD_TYPE_PCMU:
+          return Util.formatInvariant(
+              RTP_MAP_ATTR_AUDIO_FMT,
+              /* payloadType= */ 0,
+              /* mediaEncoding= */ "PCMU",
+              /* clockRate= */ 8_000,
+              /* channelCount= */ 1);
+        case RTP_STATIC_PAYLOAD_TYPE_PCMA:
+          return Util.formatInvariant(
+              RTP_MAP_ATTR_AUDIO_FMT,
+              /* payloadType= */ 8,
+              /* mediaEncoding= */ "PCMA",
+              /* clockRate= */ 8_000,
+              /* channelCount= */ 1);
+        case RTP_STATIC_PAYLOAD_TYPE_L16_STEREO:
+          return Util.formatInvariant(
+              RTP_MAP_ATTR_AUDIO_FMT,
+              /* payloadType= */ 10,
+              /* mediaEncoding= */ "L16",
+              /* clockRate= */ 44_100,
+              /* channelCount= */ 2);
+        case RTP_STATIC_PAYLOAD_TYPE_L16_MONO:
+          return Util.formatInvariant(
+              RTP_MAP_ATTR_AUDIO_FMT,
+              /* payloadType= */ 11,
+              /* mediaEncoding= */ "L16",
+              /* clockRate= */ 44_100,
+              /* channelCount= */ 1);
+        default:
+          throw new IllegalStateException("Unsupported static paylod type " + rtpPayloadType);
+      }
+    }
   }

   /** The media types allowed in a SDP media description. */

The test stream that you have shared, I wasn't able to run it on VLC player as well. (Used live555 server)
I tried debugging the behavior on exoplayer, but it never reaches the onDescribeResponseReceived.
So the test stream seems to be the cause of issue.
In the case of PCM Reader we are using a WAV container, so we receive dynamic payload.
This is the audio clip that we have used to validate the PCM_MULAW mediaType.

Maybe you have used an old version of VLC/live555? My live555 binary (mac) works with the audio file I provided. if you want to have a try
l5.zip.
I'll try your clip.
That said, it's questionable to only support dynamic  payload type as PCM audio streams can and are being served with static payload type.

Re-uploading the audio file
pcm.wav.zip

I am able to play the audio file on exoplayer, after applying the diff you have shared.
No other change was required, setting it to big endian 16 bit is correct since live555 server converts little endian to big endian before streaming. (link)
Let us know if you are able to play on exoplayer after resetting it to 'Big endian 16 bit'.


Provide godot engine 4 releases

Is your feature request related to a problem? Please describe.
I can provide a github actions for build releases on any version.
Describe the solution you'd like
Merge github actions for godot-manager to provide automated builds.
Describe alternatives you've considered
Using official godot engine releases
Reference https://github.com/protongraph/protongraph/issues/89

I can probably do a pr later today / this week if there's interest.

If you would like to work on something like that, it takes one more things off my plate.  Keep in mind, we don't need a custom build of the Godot Engine.  Standard release will work fine, and the final target is an Executable for Windows, Linux, and Mac OS, using Dotnet 6, for Godot 4.  This is mainly on the godot4 branch, as that is where the work is currently occurring for the next release of Godot Manager.  I'm in the process of getting everything switched over from Godot 3.x to Godot 4.x

Well that already exists. So one can probably pick on the 2-3 that exist using the official builds.


Secure path generation

By default, path folder should be something like /tmp/jhlite/xxxx, xxxx can be a random uuid
So the cloud version is usable
The value /tmp/jhlite should be in application.properties
Then, we can add a "local" profile, which will disable this feature and allow the user to choose the path folder he/she wants

Adding a bounty as we need this, specially @jdubois :)

as discussed with @pascalgrimaud, we'll start with 2 things to make this work:

front-end part: instead of a placeholder for project path, init the input box with /tmp/jhlite/{uuid}
back-end part: add a spring boot property forcedFolderPath and check at generation the user project path starts with the value of forcedFolderPath

Instead of "/tmp/jhlite" can we have "/jhlite"?
"/tmp" will be deleted if there’s a reboot, and also won’t work as a shared drive (I want to mount an Azure File storage so it’s persistent and can be shared if I scale out with multiple servers).

ok so let me change the spec then:

back-end part: add a spring boot property folderPathPrefix and prefix the user project path with the value of folderPathPrefix

In the front-end part, the value will be initialized with /tmp/jhlite/{uuid} and the app will be generated in /jhlite/tmp/jhlite/{uuid}

I think a spring profile may be better than a property for that since it will be easier to replace adapters implementations if needed

Updated the bounty as it was more work than expected

@jdubois you should now be able to use an env var named APPLICATION_FORCED_PROJECT_FOLDER with the prefix you want :)
This will be used for 2 things:

initialize the project folder input with forced-folder+UUID in the front-end
check that the chosen project folder is in the forced folder in the back-end

Eventually UX could be better, but for now at least this is secured

@hdurix @jdubois : another solution is to use cloud profile, it will have default config /tmp/jhlite


feat: adds dependabot auto merge

What
Adds auto merge to dependabot PR's where the dependency is either minor or patch changes.

:tada: This PR is included in version 1.44.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


the resule of cos(3.1415926/2.0) is different between HLSL and metal

I have a simple fragment shader, show as below:
void main() { 	gl_FragColor = vec4(0.0,  0.0, cos(3.1415926/2.0), 1.0); }
The resuit color is BLACK when running on mac with metal. But, it is BLUE on windows with HLSL . What's wrong?  Is the param in degree?
official doc
https://docs.microsoft.com/en-us/windows/win32/direct3dhlsl/dx-graphics-hlsl-cos

const float kPi = 3.14159265358979; void main() { 	gl_FragColor = vec4(0.0,  cos(kPi/2.0),  0.0, 1.0); }
The first line  makes the mistake.

const float kPi = 3.14159265358979; void main() { gl_FragColor = vec4(0.0, 0.0, cos(kPi/2.0),  1.0); }
The first line makes the mistake.

cc @attilaz

Cos(Pi/2) = 0. So the metal renderer works fine.
HLSL in shaderc is handled with macros, and it does does nothing with the const float kPI ... line.
So the result of the shader to HLSL conversion is something like this;
const float kPi = 3.14159265358979;
void PSMain( float4 gl_FragCoord : SV_POSITION , float4 v_color0 : COLOR0 , out float4 bgfx_FragData0 : SV_TARGET0 ) {
float4 bgfx_VoidFrag = float4(0.0,0.0,0.0,0.0);
bgfx_FragData0 = float4(0.0, 0.0, cos(kPi/2.0), 1.0);
}

With HLSL const variable still creates a uniform. You can check the output here.
http://shader-playground.timjones.io/2f9886537c2135cca4f9047d6693d3ba
To have the same behavior for HLSL as other rendererers, you can try to use
static const float kPi = 3.14159265358979;
or
#define kPi (3.14159265358979)


Cannot create new Container

Hi,
Environment Details
Windows Server 2019
Navcontainerhelper <IP_ADDRESS>
cmdlet
New-NavContainer -containerName bc1 -accept_eula -accept_outdated -alwaysPull -assignPremiumPlan -auth NavUserPassword -ClientServicesPort 4046 -Credential admin -doNotExportObjectsToText -enableSymbolLoading -FileSharePort 4141 -imageName mcr.microsoft.com/businesscentral/onprem:latest-ltsc2019 -includeCSide -licenseFile C:\RUN\My\lic.flf -ManagementServicesPort 4045 -ODataServicesPort 4048 -PublicDnsName bc1.westeurope.cloudapp.azure.com -PublishPorts @(4141,4443,4046,4047,4048,4049) -restart unless-stopped -shortcuts Desktop -SoapServicesPort 4047 -updateHosts -useBestContainerOS -useSSL -WebClientPort 4443
Results say
Initialization took 78 seconds
Ready for connections!
Reading CustomSettings.config from bc1
Creating Desktop Shortcuts for bc1
Nav container bc1 successfully created
but cannot access webclient. Upon checking docker ps found the the container is unhealty
here is the details from docker inspect
[
{
"Id": "df9d85beeba9c86c7497643429685848ce087ae6000502cdaac3c361991ebad3",
"Created": "2019-05-27T21:11:34.9709205Z",
"Path": "powershell",
"Args": [
"-Command",
"$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';",
".\Run\start.ps1"
],
"State": {
"Status": "running",
"Running": true,
"Paused": false,
"Restarting": false,
"OOMKilled": false,
"Dead": false,
"Pid": 3000,
"ExitCode": 0,
"Error": "",
"StartedAt": "2019-05-27T21:11:37.035469Z",
"FinishedAt": "0001-01-01T00:00:00Z",
"Health": {
"Status": "unhealthy",
"FailingStreak": 17,
"Log": [
{
"Start": "2019-05-27T17:20:16.8308416-04:00",
"End": "2019-05-27T17:20:26.8356976-04:00",
"ExitCode": -1,
"Output": "Health check exceeded timeout (10s)"
},
{
"Start": "2019-05-27T17:20:56.8777245-04:00",
"End": "2019-05-27T17:21:06.8806056-04:00",
"ExitCode": -1,
"Output": "Health check exceeded timeout (10s)"
},
{
"Start": "2019-05-27T17:21:36.9272142-04:00",
"End": "2019-05-27T17:21:46.9314228-04:00",
"ExitCode": -1,
"Output": "Health check exceeded timeout (10s)"
},
{
"Start": "2019-05-27T17:22:16.9859455-04:00",
"End": "2019-05-27T17:22:26.9879654-04:00",
"ExitCode": -1,
"Output": "Health check exceeded timeout (10s)"
},
{
"Start": "2019-05-27T17:22:57.0479648-04:00",
"End": "2019-05-27T17:23:07.0552136-04:00",
"ExitCode": -1,
"Output": "Health check exceeded timeout (10s)"
}
]
}
},
"Image": "sha256:590e5e6b761bca0f7a7baec37d2b0f8b51975dece0b4ac5088e7a1a47e188b60",
"ResolvConfPath": "",
"HostnamePath": "",
"HostsPath": "",
"LogPath": "C:\ProgramData\docker\containers\df9d85beeba9c86c7497643429685848ce087ae6000502cdaac3c361991ebad3\df9d85beeba9c86c7497643429685848ce087ae6000502cdaac3c361991ebad3-json.log",
"Name": "/bc1",
"RestartCount": 0,
"Driver": "windowsfilter",
"Platform": "windows",
"MountLabel": "",
"ProcessLabel": "",
"AppArmorProfile": "",
"ExecIDs": null,
"HostConfig": {
"Binds": [
"c:\windows\system32\drivers\etc:C:\driversetc",
"C:\ProgramData\NavContainerHelper:C:\ProgramData\NavContainerHelper",
"C:\ProgramData\NavContainerHelper\Extensions\bc1\my:C:\Run\my",
"C:\ProgramData\NavContainerHelper\Extensions\bc1\Program Files:C:\navpfiles"
],
"ContainerIDFile": "",
"LogConfig": {
"Type": "json-file",
"Config": {}
},
"NetworkMode": "default",
"PortBindings": {
"4046/tcp": [
{
"HostIp": "",
"HostPort": "4046"
}
],
"4047/tcp": [
{
"HostIp": "",
"HostPort": "4047"
}
],
"4048/tcp": [
{
"HostIp": "",
"HostPort": "4048"
}
],
"4049/tcp": [
{
"HostIp": "",
"HostPort": "4049"
}
],
"4141/tcp": [
{
"HostIp": "",
"HostPort": "4141"
}
],
"4443/tcp": [
{
"HostIp": "",
"HostPort": "4443"
}
]
},
"RestartPolicy": {
"Name": "unless-stopped",
"MaximumRetryCount": 0
},
"AutoRemove": false,
"VolumeDriver": "",
"VolumesFrom": null,
"CapAdd": null,
"CapDrop": null,
"Dns": [],
"DnsOptions": [],
"DnsSearch": [],
"ExtraHosts": null,
"GroupAdd": null,
"IpcMode": "",
"Cgroup": "",
"Links": null,
"OomScoreAdj": 0,
"PidMode": "",
"Privileged": false,
"PublishAllPorts": false,
"ReadonlyRootfs": false,
"SecurityOpt": null,
"UTSMode": "",
"UsernsMode": "",
"ShmSize": 0,
"ConsoleSize": [
0,
0
],
"Isolation": "process",
"CpuShares": 0,
"Memory": 0,
"NanoCpus": 0,
"CgroupParent": "",
"BlkioWeight": 0,
"BlkioWeightDevice": [],
"BlkioDeviceReadBps": null,
"BlkioDeviceWriteBps": null,
"BlkioDeviceReadIOps": null,
"BlkioDeviceWriteIOps": null,
"CpuPeriod": 0,
"CpuQuota": 0,
"CpuRealtimePeriod": 0,
"CpuRealtimeRuntime": 0,
"CpusetCpus": "",
"CpusetMems": "",
"Devices": [],
"DeviceCgroupRules": null,
"DiskQuota": 0,
"KernelMemory": 0,
"MemoryReservation": 0,
"MemorySwap": 0,
"MemorySwappiness": null,
"OomKillDisable": false,
"PidsLimit": 0,
"Ulimits": null,
"CpuCount": 0,
"CpuPercent": 0,
"IOMaximumIOps": 0,
"IOMaximumBandwidth": 0,
"MaskedPaths": null,
"ReadonlyPaths": null
},
"GraphDriver": {
"Data": {
"dir": "C:\ProgramData\docker\windowsfilter\df9d85beeba9c86c7497643429685848ce087ae6000502cdaac3c361991ebad3"
},
"Name": "windowsfilter"
},
"Mounts": [
{
"Type": "bind",
"Source": "c:\windows\system32\drivers\etc",
"Destination": "c:\driversetc",
"Mode": "",
"RW": true,
"Propagation": ""
},
{
"Type": "bind",
"Source": "c:\programdata\navcontainerhelper",
"Destination": "c:\programdata\navcontainerhelper",
"Mode": "",
"RW": true,
"Propagation": ""
},
{
"Type": "bind",
"Source": "c:\programdata\navcontainerhelper\extensions\bc1\my",
"Destination": "c:\run\my",
"Mode": "",
"RW": true,
"Propagation": ""
},
{
"Type": "bind",
"Source": "c:\programdata\navcontainerhelper\extensions\bc1\program files",
"Destination": "c:\navpfiles",
"Mode": "",
"RW": true,
"Propagation": ""
}
],
"Config": {
"Hostname": "bc1",
"Domainname": "",
"User": "",
"AttachStdin": false,
"AttachStdout": false,
"AttachStderr": false,
"ExposedPorts": {
"1433/tcp": {},
"4046/tcp": {},
"4047/tcp": {},
"4048/tcp": {},
"4049/tcp": {},
"4141/tcp": {},
"443/tcp": {},
"4443/tcp": {},
"7045/tcp": {},
"7046/tcp": {},
"7047/tcp": {},
"7048/tcp": {},
"7049/tcp": {},
"80/tcp": {},
"8080/tcp": {}
},
"Tty": false,
"OpenStdin": false,
"StdinOnce": false,
"Env": [
"enableSymbolLoading=Y",
"removePasswordKeyFile=Y",
"ClientServicesPort=4046",
"SoapServicesPort=4047",
"databaseServer=",
"ExitOnError=N",
"licenseFile=c:\run\my\license.flf",
"databaseInstance=",
"passwordKeyFile=c:\run\my\aes.key",
"accept_outdated=Y",
"ManagementServicesPort=4045",
"PublicDnsName=bc1.westeurope.cloudapp.azure.com",
"auth=NavUserPassword",
"enableApiServices=Y",
"securePassword=76492d1116743f0423413b16050a5345MgB8AHQAYwBkACsAbABCADQAbgA2AEwANgBuAGQAWABoAGMASwBVAEkAYwB1AFEAPQA9AHwAYgBmADkANgBmADQANQA1AGEAYgBhAGQAYwAxADAAYgBiADEAZgA3AGMAZgA3AGEAMAA0ADAAOQA1ADQAMgBmADkANgAyAGEAMAAwAGEAMABmAGYAMgA1AGIAYwBmADkAMgBlADMAMwBlAGYAZQA1ADcAZQA1AGQAMQA3ADkAMQA=",
"accept_eula=Y",
"WebClientPort=4443",
"FileSharePort=4141",
"ODataServicesPort=4048",
"username=admin",
"locale=en-US",
"useSSL=Y",
"DatabaseName=CRONUS",
"NAVDVDURL=https://nav2016wswe0.blob.core.windows.net/dvd/4d83f76e-2701-4a03-b312-a70d5fa8a713",
"VSIXURL=https://nav2016wswe0.blob.core.windows.net/dvd/al-3.0.106655.vsix",
"IsBcSandbox=N"
],
"Cmd": [
"powershell",
"-Command",
"$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';",
".\Run\start.ps1"
],
"Healthcheck": {
"Test": [
"CMD",
"powershell",
".\Run\HealthCheck.ps1"
],
"Interval":<PHONE_NUMBER>0,
"Timeout":<PHONE_NUMBER>0
},
"ArgsEscaped": true,
"Image": "mcr.microsoft.com/businesscentral/onprem:latest-ltsc2019",
"Volumes": null,
"WorkingDir": "",
"Entrypoint": null,
"OnBuild": null,
"Labels": {
"country": "W1",
"created": "201904241403",
"cu": "",
"eula": "https://go.microsoft.com/fwlink/?linkid=861843",
"legal": "http://go.microsoft.com/fwlink/?LinkId=837447",
"maintainer": "Dynamics SMB",
"nav": "",
"osversion": "10.0.17763.437",
"platform": "14.0.29530.0",
"tag": "<IP_ADDRESS>",
"version": "14.0.29537.0"
}
},
"NetworkSettings": {
"Bridge": "",
"SandboxID": "df9d85beeba9c86c7497643429685848ce087ae6000502cdaac3c361991ebad3",
"HairpinMode": false,
"LinkLocalIPv6Address": "",
"LinkLocalIPv6PrefixLen": 0,
"Ports": {
"1433/tcp": null,
"4046/tcp": [
{
"HostIp": "<IP_ADDRESS>",
"HostPort": "4046"
}
],
"4047/tcp": [
{
"HostIp": "<IP_ADDRESS>",
"HostPort": "4047"
}
],
"4048/tcp": [
{
"HostIp": "<IP_ADDRESS>",
"HostPort": "4048"
}
],
"4049/tcp": [
{
"HostIp": "<IP_ADDRESS>",
"HostPort": "4049"
}
],
"4141/tcp": [
{
"HostIp": "<IP_ADDRESS>",
"HostPort": "4141"
}
],
"443/tcp": null,
"4443/tcp": [
{
"HostIp": "<IP_ADDRESS>",
"HostPort": "4443"
}
],
"7045/tcp": null,
"7046/tcp": null,
"7047/tcp": null,
"7048/tcp": null,
"7049/tcp": null,
"80/tcp": null,
"8080/tcp": null
},
"SandboxKey": "df9d85beeba9c86c7497643429685848ce087ae6000502cdaac3c361991ebad3",
"SecondaryIPAddresses": null,
"SecondaryIPv6Addresses": null,
"EndpointID": "",
"Gateway": "",
"GlobalIPv6Address": "",
"GlobalIPv6PrefixLen": 0,
"IPAddress": "",
"IPPrefixLen": 0,
"IPv6Gateway": "",
"MacAddress": "",
"Networks": {
"nat": {
"IPAMConfig": null,
"Links": null,
"Aliases": null,
"NetworkID": "ce04d82c25330f6c070512122a3dec9e6ab313697bf0543ec3bfe97c84686d4e",
"EndpointID": "384bc2d9038b409d7944d8a73dc1a636f3b1dee8402a94bf654fc47a08561dbd",
"Gateway": "<IP_ADDRESS>",
"IPAddress": "<IP_ADDRESS>",
"IPPrefixLen": 16,
"IPv6Gateway": "",
"GlobalIPv6Address": "",
"GlobalIPv6PrefixLen": 0,
"MacAddress": "00:15:5d:c4:aa:ca",
"DriverOpts": null
}
}
}
}
]
What could be the issue, in the same way earlier created two container in the same vm, but today facing the issue.

The container is unhealthy because it cannot access the WebClient.
The Health Check endpoint tries to access the Web Client endpoint.
It is likely because you haven't opened 4443 in the firewall or as endpoint on the Azure VM.
We have very recently added a property to the Azure VM templated called Traefik - which installs a reverse proxy, meaning that multiple containers on an Azure VM can share the same ports.
Not much description yet - but will come.
It is fairly easy - create an Azure VM with AddTraefik = Yes - and create another container with -useTraefik.

Hi Freddy,
Thanks for point out that. Post opening the port, I was able to connect the webClient.
With your 2nd suggestion, I created new VM with Traefik switch everything works fine. can access webclient without any issue.
When created another container cannot connect the webclient and container shows unhealthy.

Tried starting the container with docker start
Get following error
docker : Error response from daemon: failed to create endpoint lucid_cori on network nat: hnsCall failed in Win32: The process cannot access the
file because it is being used by another process. (0x20)
At line:1 char:1

docker start 26cc37

  + CategoryInfo          : NotSpecified: (Error response ...process. (0x20):String) [], RemoteException
  + FullyQualifiedErrorId : NativeCommandError

Error: failed to start containers: 26cc37
Docker Inspect for Traefik container
[
{
"Id": "26cc37660edea5b22a304337fc573a98557ec258bfa5c5aa4fe951c13479c538",
"Created": "2019-06-24T17:23:43.8521488Z",
"Path": "/traefik",
"Args": [
"--docker.endpoint=npipe:////./pipe/docker_engine"
],
"State": {
"Status": "exited",
"Running": false,
"Paused": false,
"Restarting": false,
"OOMKilled": false,
"Dead": false,
"Pid": 0,
"ExitCode":<PHONE_NUMBER>,
"Error": "failed to create endpoint lucid_cori on network nat: hnsCall failed in Win32: The process cannot access the file because it is
being used by another process. (0x20)",
"StartedAt": "2019-06-24T17:47:50.2653545Z",
"FinishedAt": "2019-06-24T22:28:49.0663965+01:00"
},
"Image": "sha256:93bc9a495e51a6b92b4fc64359dd53de76b1e6d27c24dd8161c838e469b4ea72",
"ResolvConfPath": "",
"HostnamePath": "",
"HostsPath": "",
"LogPath": "C:\ProgramData\docker\containers\26cc37660edea5b22a304337fc573a98557ec258bfa5c5aa4fe951c13479c538\26cc37660edea5b22a304337fc
573a98557ec258bfa5c5aa4fe951c13479c538-json.log",
"Name": "/lucid_cori",
"RestartCount": 0,
"Driver": "windowsfilter",
"Platform": "windows",
"MountLabel": "",
"ProcessLabel": "",
"AppArmorProfile": "",
"ExecIDs": null,
"HostConfig": {
"Binds": [
"c:\programdata\navcontainerhelper\traefikforbc\config:c:/etc/traefik",
"\\.\pipe\docker_engine:\\.\pipe\docker_engine"
],
"ContainerIDFile": "",
"LogConfig": {
"Type": "json-file",
"Config": {}
},
"NetworkMode": "default",
"PortBindings": {
"443/tcp": [
{
"HostIp": "",
"HostPort": "443"
}
],
"80/tcp": [
{
"HostIp": "",
"HostPort": "80"
}
],
"8080/tcp": [
{
"HostIp": "",
"HostPort": "8080"
}
]
},
"RestartPolicy": {
"Name": "always",
"MaximumRetryCount": 0
},
"AutoRemove": false,
"VolumeDriver": "",
"VolumesFrom": null,
"CapAdd": null,
"CapDrop": null,
"Dns": [],
"DnsOptions": [],
"DnsSearch": [],
"ExtraHosts": null,
"GroupAdd": null,
"IpcMode": "",
"Cgroup": "",
"Links": null,
"OomScoreAdj": 0,
"PidMode": "",
"Privileged": false,
"PublishAllPorts": false,
"ReadonlyRootfs": false,
"SecurityOpt": null,
"UTSMode": "",
"UsernsMode": "",
"ShmSize": 0,
"ConsoleSize": [
0,
0
],
"Isolation": "process",
"CpuShares": 0,
"Memory": 0,
"NanoCpus": 0,
"CgroupParent": "",
"BlkioWeight": 0,
"BlkioWeightDevice": [],
"BlkioDeviceReadBps": null,
"BlkioDeviceWriteBps": null,
"BlkioDeviceReadIOps": null,
"BlkioDeviceWriteIOps": null,
"CpuPeriod": 0,
"CpuQuota": 0,
"CpuRealtimePeriod": 0,
"CpuRealtimeRuntime": 0,
"CpusetCpus": "",
"CpusetMems": "",
"Devices": [],
"DeviceCgroupRules": null,
"DiskQuota": 0,
"KernelMemory": 0,
"MemoryReservation": 0,
"MemorySwap": 0,
"MemorySwappiness": null,
"OomKillDisable": false,
"PidsLimit": 0,
"Ulimits": null,
"CpuCount": 0,
"CpuPercent": 0,
"IOMaximumIOps": 0,
"IOMaximumBandwidth": 0,
"MaskedPaths": null,
"ReadonlyPaths": null
},
"GraphDriver": {
"Data": {
"dir": "C:\ProgramData\docker\windowsfilter\26cc37660edea5b22a304337fc573a98557ec258bfa5c5aa4fe951c13479c538"
},
"Name": "windowsfilter"
},
"Mounts": [
{
"Type": "npipe",
"Source": "\\.\pipe\docker_engine",
"Destination": "\\.\pipe\docker_engine",
"Mode": "",
"RW": true,
"Propagation": ""
},
{
"Type": "bind",
"Source": "c:\programdata\navcontainerhelper\traefikforbc\config",
"Destination": "c:\etc\traefik",
"Mode": "",
"RW": true,
"Propagation": ""
}
],
"Config": {
"Hostname": "26cc37660ede",
"Domainname": "",
"User": "containeradministrator",
"AttachStdin": false,
"AttachStdout": false,
"AttachStderr": false,
"ExposedPorts": {
"443/tcp": {},
"80/tcp": {},
"8080/tcp": {}
},
"Tty": false,
"OpenStdin": false,
"StdinOnce": false,
"Env": [
"TRAEFIK_VERSION=1.7.12"
],
"Cmd": [
"--docker.endpoint=npipe:////./pipe/docker_engine"
],
"Image": "stefanscherer/traefik-windows:v1.7.12",
"Volumes": null,
"WorkingDir": "",
"Entrypoint": [
"/traefik"
],
"OnBuild": null,
"Labels": {
"org.label-schema.description": "A modern reverse-proxy",
"org.label-schema.docker.schema-version": "1.0",
"org.label-schema.name": "Traefik",
"org.label-schema.url": "https://traefik.io",
"org.label-schema.vendor": "Containous",
"org.label-schema.version": "v1.7.12"
}
},
"NetworkSettings": {
"Bridge": "",
"SandboxID": "26cc37660edea5b22a304337fc573a98557ec258bfa5c5aa4fe951c13479c538",
"HairpinMode": false,
"LinkLocalIPv6Address": "",
"LinkLocalIPv6PrefixLen": 0,
"Ports": {},
"SandboxKey": "26cc37660edea5b22a304337fc573a98557ec258bfa5c5aa4fe951c13479c538",
"SecondaryIPAddresses": null,
"SecondaryIPv6Addresses": null,
"EndpointID": "",
"Gateway": "",
"GlobalIPv6Address": "",
"GlobalIPv6PrefixLen": 0,
"IPAddress": "",
"IPPrefixLen": 0,
"IPv6Gateway": "",
"MacAddress": "",
"Networks": {
"nat": {
"IPAMConfig": null,
"Links": null,
"Aliases": null,
"NetworkID": "063d66abd6cba66b71381bec0bd35708eecf508d2160564e8e21785bc1eb53b7",
"EndpointID": "",
"Gateway": "",
"IPAddress": "",
"IPPrefixLen": 0,
"IPv6Gateway": "",
"GlobalIPv6Address": "",
"GlobalIPv6PrefixLen": 0,
"MacAddress": "",
"DriverOpts": null
}
}
}
}
]
Do we need to configure anything else after creating new container with traefik switch?

@tfenster - have you seen this before?

@freddydk @anwar0206 This
failed to create endpoint lucid_cori on network nat: hnsCall failed in Win32: The process cannot access the file because it is being used by another process
usually indicates that the starting container tries to bind to a port that is already in use. Can you try the following in an admin PowerShell? This should give us an idea if and maybe what is using on of the relevant ports:
 netstat -anbq | Select-String -Pattern ':80', ':443' -Context 0, 1

Hi @tfenster and @freddydk
Here is the result of the above command

TCP    <IP_ADDRESS>:8080           <IP_ADDRESS>:0              LISTENING
Can not obtain ownership information
TCP    <IP_ADDRESS>:49892         <IP_ADDRESS>:80       ESTABLISHED
[WindowsAzureGuestAgent.exe]
TCP    <IP_ADDRESS>:49895         <IP_ADDRESS>:80       ESTABLISHED
[WaAppAgent.exe]
TCP    <IP_ADDRESS>:50470         <IP_ADDRESS>:443       ESTABLISHED
[WindowsAzureGuestAgent.exe]
TCP    <IP_ADDRESS>:50756         <IP_ADDRESS>:80       TIME_WAIT
TCP    <IP_ADDRESS>:50759         <IP_ADDRESS>:443      ESTABLISHED
Can not obtain ownership information
TCP    <IP_ADDRESS>:50760         <IP_ADDRESS>:443       TIME_WAIT
TCP    <IP_ADDRESS>:50762         <IP_ADDRESS>:80      ESTABLISHED
DsmSvc
TCP    <IP_ADDRESS>:50763         <IP_ADDRESS>:80       TIME_WAIT
TCP    <IP_ADDRESS>:50764         <IP_ADDRESS>:80       TIME_WAIT
TCP    <IP_ADDRESS>:50766         <IP_ADDRESS>:80       TIME_WAIT
TCP    <IP_ADDRESS>:50767         <IP_ADDRESS>:80       TIME_WAIT
TCP    <IP_ADDRESS>:50771         <IP_ADDRESS>:8180      ESTABLISHED
TCP    <IP_ADDRESS>:50773         <IP_ADDRESS>:443     ESTABLISHED
[IEXPLORE.EXE]
TCP    <IP_ADDRESS>:50776         <IP_ADDRESS>:443      ESTABLISHED
[iexplore.exe]
TCP    <IP_ADDRESS>:50777         <IP_ADDRESS>:443      ESTABLISHED
[iexplore.exe]
TCP    <IP_ADDRESS>:50779         <IP_ADDRESS>:443       SYN_SENT
[IEXPLORE.EXE]
TCP    [::]:8080              [::]:0                 LISTENING
Can not obtain ownership information

The lines

TCP <IP_ADDRESS>:8080 <IP_ADDRESS>:0 LISTENING
Can not obtain ownership information

and

TCP [::]:8080 [::]:0 LISTENING
Can not obtain ownership information

indicate that something is listening on 8080. You need to find out what that is, e.g. through the performance monitor. Or you open a browser on localhost:8080 and see who is answering :)

Hi @tfenster, 8080 port is used by Business Central On Premise WebClient

So you have installed Business Central on the machine next to the containers?

yes, because the table compilation was giving issues

from CSIDE?
It is correct that table compilation from CSIDE requires Windows auth. - but you can save without compiling and call compile-objectsinnavcontainer - that will work.
The problem right now is that the installed Business Central blocks for the other container - you can reconfigure to a different port probably, but I don't know how.

thanks @freddydk for the tip.
Question: can we again run newnav-container for navserver container and select windows Auth.
With Windows Auth. can we configure Mobile App and access the web client outside the VM.

Windows Auth doesn't work well for mobile and internet.

Thanks @freddydk will go with NAVUserPassword and try setting up another container with traefik switch

@tfenster, @freddydk for the tip post reconfiguring the webclient port on Business Central on Premise. the traefik container and other containers are accessible through web client.
But cannot access the developer client and Windows Client of both the containers, tried connecting database through SSMS also.
Entering Server Name as navserver\SQLEXPRESS in ssms and bconprem\SQLEXPRESS


TypeScript React syntax highlighting tripped up by structural type argument.

const a = new Array<{}>();
// syntax highlighting wrong from here on out, due to '{}'

class Thing {
	render() {

	}
}

This issue was moved to Microsoft/TypeScript-TmLanguage#66


get changes from develop to 2.4.0beta1

I've been merging develop into 2.4.0-beta1 quite regularly. Are you sure you want all these additional changes? In particular, I believe the changes around the Metric APIs were supposed to be for 2.3 only and not ported to 2.4

Recommend 👎
You'll have to double-check, but I think all the required commits from develop are already in 2.4.0-beta1.

I will abandon this, and pick any required bug fixes (if needed)


Query Editor and SQL Server Private Link

I'm looking for information regarding query editor, does it support to connect to private endpoint sql database?
If yes, what configuration need to be done? if no, when the feature will be added?
I tested in my environment, once I configure my sql server with private endpoint, not able to connect from Azure portal query editor anymore.
Thank you!

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

ID: eb6328aa-a54f-4936-1c35-ecf5c265d92d
Version Independent ID: 345bd3d2-4b53-a032-c13b-7e35f97cf2fa
Content: Private Link - Azure SQL Database and SQL Data Warehouse
Content Source: articles/sql-database/sql-database-private-endpoint-overview.md
Service: sql-database
GitHub Login: @rohitnayakmsft
Microsoft Alias: rohitna

@RonnieQuan This issue will be worked here - https://github.com/MicrosoftDocs/azure-docs/issues/53260
We are closing this as duplicate.


[Feature] Add support for post request in Frame component

🔗 Linked issue

❓ Type of change

[x] 📖 Documentation (updates to the documentation, readme or JSdoc annotations)
[ ] 🐞 Bug fix (a non-breaking change that fixes an issue)
[x] 👌 Enhancement (improving an existing functionality like performance)
[x] ✨ New feature (a non-breaking change that adds functionality)
[ ] 🧹 Chore (updates to the build process or auxiliary tools and libraries)
[ ] ⚠ Breaking change (fix or feature that would cause existing functionality to change)

📚 Description
Add support for POST request for the Frame component.
Based on current implementation on a project.
Not really convinced this is the my robust way of doing it. i'm also wondering if this is going to work onWindowPopstate.
Requesting review to have feedback before processing to documentation, tests, etc

📝 Checklist

[ ] I have linked an issue or discussion.
[ ] I have added tests (if possible).
[x] I have updated the documentation accordingly.
[x] I have updated the changelog.

Shall i add something more to this PR ? Try to add a bit of explanation on how the component work, does it seems right ?


Mac OS security issue

What version of OR-tools and what language are you using?
Version: v7.5.7466
Language: C++
What operating system (Linux, Windows, ...) and version?
Mac OS Catalina v10.15.4
What did you do?
Steps to reproduce the behavior:

Download binary from here
run make test_cc in terminal

What did you expect to see
Successful installation
What did you see instead?

AFAIK Apple start to rollout developer certificat everywhere, still don't know how to resolve it for a FOSS project.

Cannot reproduce. Please reopen if needed. Note that or-tools is provided by brew.


Remove CONTRIBUTORS file

No use in having it around or maintaining it:
https://github.com/datalad/datalad-catalog/blob/main/CONTRIBUTORS

Please go ahead!


added v1.2.0 release notes

1.2.0 October 05 2019
HOCON 1.2.0 contains an entirely new model for working with HOCON, via the Hocon.Immutable NuGet package.

Keeping it short and sweet.


allow write comments

write only

Due to the nature of dynamically rewriting the select query, I think that it would lead to maintainability if it was possible to leave an SQL comment indicating in which function the injection occurred.
var sq = new SelectQuery("select a.* from table_a as a");
sq.Where("a.id = 1");
sq.Comments.Add("inject user role filter");

/* inject user role filter */
select a.* from table_a as a where a.id = 1


Use comands with multiple optional words

It would be good if we could use optional words in one command. One example is when we want to use more than one phrase for the same function:
if (annyang) {
commands = {
  'open my (notes|reminders)': function () { /* content */ }
 }
}

In that case will be recognized both "notes" and "reminders" as the same thing. Is it possible?

I believe, the match pattern shouldn't be the object key. So that, the pattern could always be a string or a regex. I think the author should move the command critria from key/value pair to value/sibling pairs. I didn't found a way to do something like:
{

   /^what time is it/i: function() { ... }
}

Not sure, if I putting regex string in "quotes" could work either.

Version 2.0.0 released yesterday adds support for regular expressions in commands, so you can now do something like this:
var commands = {
  'hello :name': {'regexp': /^(?:hello|howdy|hi) (\w*)$/, 'callback': greetFunction}
}

@ArkeologeN  I used a similar API to the one you suggest here. I would appreciate your feedback.
You can read the full release notes on this and other new features here: https://github.com/TalAter/annyang/releases/tag/v2.0.0

@TalAter thanks for the update! I am gonna implement that and come back to you with feedback.
One more question, I suppose the recognition would working from dictionary, right? Would there be any possibility to teach the probability table to recognizer? What if I know the input would be from within the set of words (or bagOfWords)?
Something like this, may be? http://syl22-00.github.io/pocketsphinx.js/


Fix: Mobile - Staff is not able to use the nav menu on mobile

Staff is unable to navigate the dashboard on small screens and the hamburger menu does not currently do anything

go to demo site
login as staff
email<EMAIL_ADDRESS>password: 123456

FYI this PR made the staff dashboard hamburger funtional https://github.com/rubyforgood/pet-rescue/pull/631