rm extra assert

Summary

refactoring request validation. The perform_request_validation_test method is only really useful when there are multiple requests to validate. This is only the case when taking multiple next-question requests.
updating the request validation spec tests (adjusting stubs)
adjusted how messages were presented for readability
some general clean up of text (e.g. [User Input Validation] removed), some duplicate text deleted

Testing Guidance
Run server tests against the Smart App tests
Run spec tests
To see updated messages run static or adaptive tests against the server. The main change in presentation is that only next-question requests/responses and the checks on adaptive responses (e.g. 2.07 + 2.08) should indicate the [Resource X] label since the other requests/responses should be singular.
note: I do notice that one of the response validation fails with the new validator running the static server tests against the smart app suite. Might be an issue with the response resource - It is not finding the questionnairePackageBundle resource

why did you remove the unit test?

As it is now, it fails with this change.

regarding the error, it appears that there is some inconsistent output parameter naming between the operation where it is called "return" and the output parameters where it is called "PackageBundle". We'll try to enter that as a ticket in their upcoming (offcyle I think) ballot, but in the meantime, let's make sure that our suites are consistent.  Since the our payer server simulation seems to be returning the operation form, our validation logic should assume the same, which means validating against the profiles used on the parameter entries rather than the parent parameters instance - does that make sense?


Bug report for atelier demo (can't see customize board fully)

Describe the bug
A clear and concise description of what the bug is.
Cannot access right of customization screen
To Reproduce
Steps to reproduce the behavior:
Press customize on Atelier demo.
Expected behavior
A clear and concise description of what you expected to happen.
Either 1 of these:

Scroll bar to access the whole customize screen
100% width for the customize screen and fit content to page

Screenshots
If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

OS: Windows
Browser: Edge

Additional context
Add any other context about the problem here.

There is already a scroll bar at the bottom of the customize screen.


replace prior google analytics 4 with gtm method

Review of our analytics config has led to recommendation that we  (i) use GTM across the board as the best method to study user patterns in our docs and between subdomains and (ii) we use the same script in each situation.
This PR replaces the prior GA4 embed with GTM. I've validated the new code with the accompanying inspector tool ✅
--
This doesn't impact the data - GTM will load GA4 (and cookie consent will be set via GTM as we did on fermyon.com)

LGTM @flynnduism


Error login web client in new sandbox container: "You cannot sign in due to a technical issue"

Describe the issue
When I create a sandbox container and use the URL http://BCSBLATEST/BC from web client, it throws error “You cannot sign in due to a technical issue. Contact your system administrator."
If I use the created shortcut for web client, o copy/paste the URL from Web Client URL from log of create container its run fine:  http://BCSBLATEST/BC/?tenant=default
I think the problem isn’t from BcContainerHelper, and there is a small bug on BC Web Client: in a tenant environment if you use a URL without the “?tenant” param the system ask you for credentials and after that throws the error “You cannot sign in due to a technical issue”.
Regarding BcContainerHelper, by default when create a container of type sandbox, it enables multinenant. I can change this behaviour modifying the default setting for “sandboxContainersAreMultitenantByDefault”, but it requires to modify default setting. Also, I think using the param -multitenant:$false in new-bccontainer force to not use multitenant.
A suggest changing the default value for “sandboxContainersAreMultitenantByDefault” to false, as long as the login issue of web client of BC remains, although as I have a settings file I need to modify it in my BcContainerHelper.config.json.
Scripts used to create container and cause the issue
My BcContainerHelper.config.json:
{
    "use7zipIfAvailable":  true,
    "digestAlgorithm":  "SHA256",
    "mapCountryCode":  {
                           "ae":  "w1",
                           "br":  "w1",
                           "co":  "w1",
                           "ee":  "w1",
                           "fo":  "dk",
                           "gl":  "dk",
                           "hk":  "w1",
                           "hr":  "w1",
                           "hu":  "w1",
                           "id":  "w1",
                           "ie":  "w1",
                           "jp":  "w1",
                           "kr":  "w1",
                           "lt":  "w1",
                           "lv":  "w1",
                           "my":  "w1",
                           "pe":  "w1",
                           "ph":  "w1",
                           "pl":  "w1",
                           "rs":  "w1",
                           "ro":  "w1",
                           "sg":  "w1",
                           "si":  "w1",
                           "th":  "w1",
                           "tw":  "w1",
                           "vn":  "w1",
                           "za":  "w1"
                       },
    "hostHelperFolder":  "C:\\ContainerHelper",
    "timeStampServer":  "http://timestamp.digicert.com",
    "bcartifactsCacheFolder":  "c:\\bcartifacts.cache",
    "containerHelperFolder":  "C:\\ProgramData\\BcContainerHelper",
    "genericImageName":  "mcr.microsoft.com/businesscentral:{0}",
    "sandboxContainersAreMultitenantByDefault":  true,
    "defaultContainerName":  "bcserver",
    "usePsSession":  true,
    "defaultNewContainerParameters":  {

                                      }
}

My script to create new container:
$containerName = 'BCSBLATEST'
$myLicense = 'c\myLicense.flf'
$navcredential = Get-Credential -Message 'Credencial usuario para NAV/BC'
$myArtifactUrl = Get-BCArtifactUrl -version 17 -type Sandbox -country es -select Latest

New-BCContainer -auth NavUserPassword -Credential $navcredential -updateHosts -accept_eula -containername $containerName -artifactUrl $myArtifactUrl -licenseFile $myLicense -accept_outdated

Full output of scripts
Setting usePsSession = True
Setting hostHelperFolder = C:\ContainerHelper
Setting use7zipIfAvailable = True
Setting defaultNewContainerParameters =
Setting containerHelperFolder = C:\ProgramData\BcContainerHelper
Setting defaultContainerName = bcserver
Setting mapCountryCode = @{ae=w1; br=w1; co=w1; ee=w1; fo=dk; gl=dk; hk=w1; hr=w1; hu=w1; id=w1; ie=w1; jp=w1; kr=w1; lt=w1; lv=w1; my=w1; pe=w1; ph=w1;
 pl=w1; rs=w1; ro=w1; sg=w1; si=w1; th=w1; tw=w1; vn=w1; za=w1}
Setting timeStampServer = http://timestamp.digicert.com
Setting sandboxContainersAreMultitenantByDefault = True
Setting genericImageName = mcr.microsoft.com/businesscentral:{0}
Setting bcartifactsCacheFolder = c:\bcartifacts.cache
Setting digestAlgorithm = SHA256
BcContainerHelper version 2.0.5
BcContainerHelper is version 2.0.5
BcContainerHelper is running as administrator
Host is Microsoft Windows 10 Pro - 20H2
Docker Client Version is 20.10.2
Docker Server Version is 20.10.2
Removing container BCSBLATEST
Removing BCSBLATEST from host hosts file
Removing BCSBLATEST-* from host hosts file
Removing C:\ContainerHelper\Extensions\BCSBLATEST
Fetching all docker images
Using image mcr.microsoft.com/businesscentral:10.0.19042.746
Creating Container BCSBLATEST
Version: 17.4.21491.21867-ES
Style: sandbox
Multitenant: Yes
Platform: 17.0.21485.21847
Generic Tag: <IP_ADDRESS>
Container OS Version: 10.0.19042.746 (20H2)
Host OS Version: 10.0.19042.804 (20H2)
Using hyperv isolation
Using locale es-ES
Disabling the standard eventlog dump to container log every 2 seconds (use -dumpEventLog to enable)
Using license file C:\myLicense.flf
Files in C:\ContainerHelper\Extensions\BCSBLATEST\my:
- AdditionalOutput.ps1
- license.flf
- MainLoop.ps1
- SetupVariables.ps1
- updatehosts.ps1
Creating container BCSBLATEST from image mcr.microsoft.com/businesscentral:10.0.19042.746
6fe5baf773e43e79e8a43617a56dadfee1f8616f124e52c254922a5cade1c7c0
Waiting for container BCSBLATEST to be ready
Using artifactUrl https://bcartifacts.azureedge.net/sandbox/17.4.21491.21867/es
Using installer from C:\Run\150-new
Installing Business Central
Installing from artifacts
Starting Local SQL Server
Starting Internet Information Server
Copying Service Tier Files
Copying PowerShell Scripts
Copying dependencies
Copying ReportBuilder
Importing PowerShell Modules
Determining Database Collation from c:\dl\sandbox\17.4.21491.21867\es\BusinessCentral-ES.bak
Changing Database Server Collation to Modern_Spanish_100_CS_AS
Restoring CRONUS Demo Database
Setting CompatibilityLevel for tenant on localhost\SQLEXPRESS
Exporting Application to CRONUS
Removing Application from tenant
Modifying Business Central Service Tier Config File for Docker
Creating Business Central Service Tier
Installing SIP crypto provider: 'C:\Windows\System32\NavSip.dll'
Copying Web Client Files
Copying Client Files
Copying ModernDev Files
Copying additional files
Copying ConfigurationPackages
Copying Test Assemblies
Copying Extensions
Copying Applications
Copying Applications.ES
Starting Business Central Service Tier
Importing license file
Copying Database on localhost\SQLEXPRESS from tenant to default
Taking database tenant offline
Copying database files
Attaching files as new Database default
Putting database tenant back online
Mounting tenant database
Mounting Database for default on server localhost\SQLEXPRESS with AllowAppDatabaseWrite = False
Sync'ing Tenant
Tenant is Operational
Stopping Business Central Service Tier
Installation took 207 seconds
Installation complete
Initializing...
Setting host.docker.internal to <IP_ADDRESS> in container hosts file (copy from host hosts file)
Setting gateway.docker.internal to <IP_ADDRESS> in container hosts file (copy from host hosts file)
Setting kubernetes.docker.internal to <IP_ADDRESS> in container hosts file (copy from host hosts file)
Setting host.containerhelper.internal to <IP_ADDRESS> in container hosts file
Starting Container
Hostname is BCSBLATEST
PublicDnsName is BCSBLATEST
WARNING: Container starts with TimeZone = Hora estÃ¡ndar Europa Occidental, which is not recognized in the list of TimeZones.
Using NavUserPassword Authentication
Creating Self Signed Certificate
Self Signed Certificate Thumbprint 66A09533D6232F3F7199812445891876A6E8960E
Modifying Service Tier Config File with Instance Specific Settings
Starting Service Tier
Registering event sources
Creating DotNetCore Web Server Instance
Enabling Financials User Experience
Enabling rewrite rule: Don't rewrite system files
Enabling rewrite rule: Already have tenant specified
Enabling rewrite rule: Hostname (without port) to tenant
Using license file 'c:\run\my\license.flf'
Import License
Dismounting Tenant
Mounting Tenant
Mounting Database for default on server localhost\SQLEXPRESS with AllowAppDatabaseWrite = False
Sync'ing Tenant
Tenant is Operational
Creating http download site
Setting SA Password and enabling SA
Creating nav as SQL User and add to sysadmin
Creating SUPER user
Container IP Address: <IP_ADDRESS>
Container Hostname  : BCSBLATEST
Container Dns Name  : BCSBLATEST
Web Client          : http://BCSBLATEST/BC/?tenant=default
Dev. Server         : http://BCSBLATEST
Dev. ServerInstance : BC
Dev. Server Tenant  : default
Setting BCSBLATEST to <IP_ADDRESS> in host hosts file
Setting BCSBLATEST-default to <IP_ADDRESS> in host hosts file

Files:
http://BCSBLATEST:8080/ALLanguage.vsix

Container Total Physical Memory is 8.5Gb
Container Free Physical Memory is 5.8Gb

Initialization took 28 seconds
Ready for connections!
Reading CustomSettings.config from BCSBLATEST
Creating Desktop Shortcuts for BCSBLATEST
Container BCSBLATEST successfully created

Use:
Get-BcContainerEventLog -containerName BCSBLATEST to retrieve a snapshot of the event log from the container
Get-BcContainerDebugInfo -containerName BCSBLATEST to get debug information about the container
Enter-BcContainer -containerName BCSBLATEST to open a PowerShell prompt inside the container
Remove-BcContainer -containerName BCSBLATEST to remove the container again
docker logs BCSBLATEST to retrieve information about URL's again
...

Screenshots
Using http://BCSBLATEST/BC

Using http://BCSBLATEST/BC/?tenant=default

Additional context
See similar issues: #1601, #1608

Everything you describe here is exactly how it is intended to work.
Sandbox containers are multitenant by default.
Onprem containers are not.
In your config settings, you even set sandboxContainersAreMultitenantByDefault to true, meaning that your sandbox container will be multitenant.
If a container is multitenant, you need to specify tenant when using the Web Client - ?tenant=default - which is why the icon on the desktop has that. That is even displayed in the last lines of the output:
Container Hostname  : BCSBLATEST
Container Dns Name  : BCSBLATEST
Web Client          : http://BCSBLATEST/BC/?tenant=default
Dev. Server         : http://BCSBLATEST
Dev. ServerInstance : BC
Dev. Server Tenant  : default

If you did not specify a tenant when logging into the WebClient you will get the mentioned errror.
If you use Get-BcContainerEventLog you will see an error specifying that a tenant was not specified - you can argue that the Web Client should have displayed that - but it doesn't.
With multitenant containers you also need to specify tenant in launch json - and you need to specify tenant when connecting to APIs, OData and Soap.
What is it exactly you think is wrong?

I think is wrong the behaivior that should show a more clarifying error, but isn't a problem of BcContainer, it's a problem of BC.
I'v decided to open and describe the issue, so that anyone who finds this problem again, will can find out what the origin of it, and avoid wasting hours of work because of a silly assumption about the URL of web client and a error that despises the user.
Best regards,

Ok, thanks

Will close this issue and leave it searchable in closed issues, thanks @ti-jalopez


DEVPROD-2026 Document best practice for maven scanner

Document the best practice for using the maven scanner

Closing, we need to push upstream to build


Raise error on regex compilation fail

For both python and javascript the standard behavior is to raise an error when compilation fails. I think it would be good if the default is the same for jsregexp.compile(). A separate jsregexp.compile_safe() function can be created that prevents error raising. This is a common place practice for other such projects like cjson.

This is also the behavior of the string library so we really are the odd one out.
> string.match("abc", "[a")
stdin:1: malformed pattern (missing ']')
stack traceback:
        [C]: in function 'match'
        stdin:1: in main chunk
        [C]: ?

Cjson actually provides a safe version of the library (used with require("cjson.safe")). Is there a general preference of doing it this way instead of having two sets of functions in the same module?


CI: fix if conditional with [[ $open = true ]]

looks like it doesn't like it when i try to just use the variable as a boolean despite it working locally.
change is just being more explicit with the conditional: if $open; then -> if [[ $open = true ]]; then
Fixes failing ui_preview workflow: https://github.com/commaai/openpilot/pull/33565#issuecomment-2381427886

Got a link to a PR on your fork where this was tested?

https://github.com/BBBmau/openpilot/actions/runs/11095256970/job/30823659909?pr=9
only change was to provide spacing and it looks to be working just fine now.

Seems that test run failed?

Seems that test run failed?

The preview workflow itself failed because of permissions with the ci-artifact:
[openpilot/pr-9 (root-commit) 89a6cea] screenshots for PR #9
 22 files changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 body.png
 create mode 100644 driver_camera.png
 create mode 100644 homescreen.png
 create mode 100644 keyboard.png
 create mode 100644 offroad_alert.png
 create mode 100644 onroad.png
 create mode 100644 onroad_alert_full.png
 create mode 100644 onroad_alert_mid.png
 create mode 100644 onroad_alert_small.png
 create mode 100644 onroad_disengaged.png
 create mode 100644 onroad_override.png
 create mode 100644 onroad_sidebar.png
 create mode 100644 onroad_wide.png
 create mode 100644 onroad_wide_sidebar.png
 create mode 100644 pair_device.png
 create mode 100644 prime.png
 create mode 100644 settings_device.png
 create mode 100644 settings_toggles.png
 create mode 100644 update_available.png
 create mode 100644 update_available_diff.gif
 create mode 100644 update_available_diff.png
 create mode 100644 update_available_master_ref.png
remote: Permission to commaai/ci-artifacts.git denied to github-actions[bot].
fatal: unable to access 'https://github.com/commaai/ci-artifacts/': The requested URL returned error: 403

The workflow was failing on the Finding Diff step which is now passing with this PR. The Finding Diff step is where changes were made in this PR which is what caused failiures due to how the conditional was setup.


Deploy Neo Smart Contract at runtiime.

I am trying to deploy the NEO smart contract at the run time, with dynamic contract, created by my as per requirement. Did any one have any reference for deploying it to test-net / Main-net directly.
I have to deploy the contract in python and Ruby. For this i also tried Neopy (Neo-python)  but there is issue it's have their own console and i am unable to throw the command on that terminal/console and also tried neojs but unable to find solution.
Is there is any way for that. please provide any reference for the same.

Closing due to inactivity. Assumed to be resolved.


Crash when opening DMs

Tested on windows 10 23H2 using the MSVC compiled release. Switching from a server to direct messages causes the application to crash. No log and no error message. Not much information given to me to debug what's going on so i decided to leave an issue.

That's pretty strange.  Notice how there's a pdb file alongside your executables?  If you have Visual Studio you can drag DM onto it, and run it, and load debug symbols from that file. Otherwise I'm not totally sure how to debug this.

I'm also experiencing the same error on Windows 10 1809 using the MSVC build

Using my alt account it doesn't crash, so it might have something to do with my main account having a shit-ton of open dms

Could be.  I suggest you try to compile it and try debugging there; VS2022 is about 7 GB in size with the desktop development with C++ option, so it should be fine

Line 262:
Unhandled exception at 0x002F8FB5 in DiscordMessenger.exe: Stack cookie instrumentation code detected a stack-based buffer overrun.

Wow! That was unexpected. I'll release a hotfix soon.

@Huskydude422 I have a feeling that this is triggered by having a DM channel whose name is too long. Could you try creating a really long channel in a server and navigating to the server with Discord Messenger?

I made a channel with name ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss. Navigating to it with discord messenger doesn't crash the application but the channel refuses to load with the last opened channel in its place.

I was able to trigger the issue using a long channel name in a guild.  This will be fixed in a future V1.01 build.


Offstage Navigators steal focus from an onstage Navigator

On initial launch of our app, a route on an offstage navigator requests focus. This causes focus traversal to happen on a widget tree that's offscreen, which is very confusing.
Minimal reproduction:
import 'package:flutter/widgets.dart';
import 'package:flutter_test/flutter_test.dart';

void main() {
  testWidgets("offstage nav focus", (tester) async {
    Widget _childNavRouteBuilder(BuildContext context, _, __) {
      return Text('foobar');
    }

    Route<void> _childNavRoute(RouteSettings settings) {
      return PageRouteBuilder(
        pageBuilder: _childNavRouteBuilder,
      );
    }

    final topLevelNav = GlobalKey<NavigatorState>();
    final navA = GlobalKey<NavigatorState>();
    final navB = GlobalKey<NavigatorState>();
    final navC = GlobalKey<NavigatorState>();

    await tester.pumpWidget(Directionality(
      textDirection: TextDirection.ltr,
      child: Navigator(
        key: topLevelNav,
        onGenerateRoute: (settings) {
          return PageRouteBuilder(
            pageBuilder: (context, _, __) {
              return Stack(
                children: <Widget>[
                  Offstage(
                    child: Navigator(key: navA, onGenerateRoute: _childNavRoute),
                  ),
                  Offstage(
                    offstage: false,
                    child: Navigator(key: navB, onGenerateRoute: _childNavRoute),
                  ),
                  Offstage(
                    child: Navigator(key: navC, onGenerateRoute: _childNavRoute),
                  ),
                ],
              );
            },
          );
        },
      ),
    ));

    await tester.pumpAndSettle();

    expect(topLevelNav.currentState.focusScopeNode.hasFocus, isTrue);
    expect(navA.currentState.focusScopeNode.hasFocus, isFalse);
    expect(navB.currentState.focusScopeNode.hasFocus, isTrue); // Actual: false
    expect(navC.currentState.focusScopeNode.hasFocus, isFalse); // Actual: true
  });
}

cc @gspencergoog

Thanks so much for the test case!

Actually, @ds84182 after talking this over with @Hixie, I'm going to recommend that instead of walking the tree to find things (which is O(n) bad), you can instead set the Navigator's focus scope to not autofocus, which should have the effect you're looking for.  Your test would then be something like this:
  testWidgets('route autofocus can be controlled with settings', (WidgetTester tester) async {
    Widget _childNavRouteBuilder(BuildContext context, Animation<double> animation, Animation<double> secondaryAnimation) {
      return const Focus(debugLabel: 'Nav Child', child: Text('foobar'));
    }

    Route<void> _childNavRoute(RouteSettings settings, {bool offstage = true}) {
      return PageRouteBuilder<void>(
        settings: settings.copyWith(autofocus: !offstage),
        pageBuilder: _childNavRouteBuilder,
      );
    }

    final GlobalKey<NavigatorState> topLevelNav = GlobalKey<NavigatorState>(debugLabel: 'Top Level');
    final GlobalKey<NavigatorState> navA = GlobalKey<NavigatorState>(debugLabel: 'navA');
    final GlobalKey<NavigatorState> navB = GlobalKey<NavigatorState>(debugLabel: 'navB');
    final GlobalKey<NavigatorState> navC = GlobalKey<NavigatorState>(debugLabel: 'navC');

    await tester.pumpWidget(
      Directionality(
        textDirection: TextDirection.ltr,
        child: Navigator(
          key: topLevelNav,
          onGenerateRoute: (RouteSettings settings) {
            return PageRouteBuilder<void>(
              pageBuilder: (BuildContext context, Animation<double> animation, Animation<double> secondaryAnimation) {
                return Stack(
                  children: <Widget>[
                    Offstage(
                      child: Navigator(key: navA, onGenerateRoute: _childNavRoute),
                    ),
                    Offstage(
                      offstage: false,
                      child: Navigator(key: navB, onGenerateRoute: (RouteSettings settings) => _childNavRoute(settings, offstage: false)),
                    ),
                    Offstage(
                      child: Navigator(key: navC, onGenerateRoute: _childNavRoute),
                    ),
                  ],
                );
              },
            );
          },
        ),
      ),
    );

    await tester.pumpAndSettle();

    expect(topLevelNav.currentState.focusScopeNode.hasFocus, isTrue);
    expect(navA.currentState.focusScopeNode.hasFocus, isFalse);
    expect(navB.currentState.focusScopeNode.hasFocus, isTrue);
    expect(navC.currentState.focusScopeNode.hasFocus, isFalse);
  });

I've updated the PR (#45655) to add an autofocus to RouteSettings so you can control whether or not the focus occurs.

I'd also like to point out that Offstage widgets are not supposed to be inactive: they still run their animations, and still can be focused.  That behavior is WAI, so perhaps you're using them for something that they weren't meant for?

In particular, we're using Offstage to implement "navigator switching". We have our single top level navigator (for dialogs and some pages) and our three secondary navigators (for some other pages). You can see a layout like this in a native Android app if you look at YouTube. YouTube has top level navigation (opening the account dialog) as well as nested navigation using a BottomNavigationBar. For both, the bottom nav elements switch between navigators, all with their own navigation stacks, and the stacks are maintained for offscreen navigators.
Adding autofocus to the route settings does not help in this situation, as there is no way to update route settings for all routes pushed on a specific navigator, and all of these navigators have initial routes. Instead, would it be possible to deny focus requests from a specific subtree by wrapping it in a FocusNode that vetos focus requests from child FocusNodes? That would give us a more general solution for this issue, although I feel that it's an easy one to hit if you're dealing with multiple navigators.

Setting autofocus on the route to false prevents the route from requesting focus when pushed.
But you're saying you don't have control over the creation of the routes, and so can't supply them with a RouteSettings that has autofocus set to false?
It is possible to do what you're asking for already: setting the canRequestFocus to false on a FocusScopeNode will prevent its children from requesting focus.  The NavigatorState (returned from Navigator.of()) has its own focusScopeNode, but because of the creation order, you might need to wrap the Navigator in your own FocusScope to have it be non-focusable from the beginning.
It's possible we need to add a parameter to the Navigator constructor that lets you supply a FocusScopeNode to be used by the Navigator to get around the inconvenience of having to make your own.

Offstage can be used to do what you're describing, but only in conjunction with a bunch of other widgets including TickerMode, FocusScope, etc. See tab_scafford.dart in the cupertino package.

Would it be possible to abstract out much of what tab_scaffold.dart does outside of the cupertino package? I think having a unified way of getting this right is useful, especially when some new behavior needs to be introduced.

@gspencergoog So I tried canRequestFocus (the documentation still says that it doesn't affect children requesting focus), and I ran into a bug where the parent's canRequestFocus status was being propagated into the child's _canRequestFocus field, essentially bricking focus for an entire widget subtree.
Essentially the lines like:
      focusNode.skipTraversal = widget.skipTraversal ?? focusNode.skipTraversal;
      focusNode.canRequestFocus = widget.canRequestFocus ?? focusNode.canRequestFocus;

in focus_scope.dart cause the internal _canRequestFocus field to inherit the parent's value (which is false) instead of keeping the current value. This is due to canRequestFocus doing more than just returning the value of the field.
Changing these to if (widget.canRequestFocus != null) focusNode.canRequestFocus = widget.canRequestFocus; fixes the issue, but for right now switching between navigators makes all their focus nodes unfocusable.

The relevant parts of tab_scaffold.dart are about 10 lines of code, I don't think there's much value in factoring it out.

Whoa.  Thanks for reporting that @ds84182 .  I'll build a separate PR to fix it.

OK, the fix PR is https://github.com/flutter/flutter/issues/46168.  Does that fix your issue?  If so, I'll probably revert the other change (#45655).

Yes, we're now able to disable focus on our offstage navigators. Only other thing is making entire modal routes unfocusable when another route is open above it, assuming focus traversal is allowed to escape FocusScopes, but that can be a different issue

Focus is not able to escape a FocusScope via keyboard traversal.  It can escape via mouse click, but modal routes typically cover the route above, so that's rarely an issue.

For Flutter's builtin directional traversal, yes. You might also hit it with an auto-focusing widget being created on the route below the current route. I'll make a new issue for this, since #46168 allows us to control when our offstage navigators gain focus (which fixes this issue).


--scan-match - Is regex pattern supported ?

I want to match only certain prefix filter keys for example
Multiple matching prefix pattern -> (abc:.*|def:.*)$ -> I want to match only keys starting with abc and def and the rest needs to be ignored.
Negate pattern -> ^(?!qwe:.*|rty:.*)$  -> I want to match keys other than starting with qwe or rty.
Is this possible, I tried with this regex pattern, and seems like it is not supported. Is there any other way?

@jruaux Please confirm on this

🎉 This issue has been resolved in v3.1.1 (Release Notes)


clientv3: return closed channel on Watch() cancel

was returning nil; difficult to use correctly
Fixes #4626

/cc @hongchaodeng

add a test for this?

LGTM. defer to @hongchaodeng

LGTM


automate steps to update eksa config file

Automate steps to update eksa config file
Replace comments in code block with "echo" commands to avoid "not found" messages in copy/paste
Fix indentation in commands
Skip scale up section until  https://github.com/aws/eks-anywhere/issues/5316 is fixed
fix #6

I seem to have lost  write access. But I'd suggest merging my PR here and then merging this one.


UI Issue

Issues

when number of Agents exceeds 5, the UI becomes messy. Please see screenshot
I have 10+ agents which is not even shown in the screenshot and cant able to scroll as well.

Please describe the issue you are having here and answer the question below.

Did you download a release or pull from Master? Which release? 0.25
What operating system are you running? Windows 10 Pro
Are you running locally or in the cloud?  Both local and Cloud
Which browser are you using? Chrome

This looks like the expected behavior, the list scroll horizontally?
@broham89

Yeah I assumed it should scroll horizontally but now i can see that can get messy. A possible solution is to have two tabs: Agent + Connection

How about just some sort of an arrow/indicator that it can scroll? I don't think tabs on every page is a good look.

Closed by https://github.com/samtecspg/articulate/commit/4a6f5d67fdbb5413c00ee948a357d5fe2d4b51a2


Upgrade client-go version to 8.0.0

This PR will
Add:

golang.org/x/time

Upgrade:

k8s.io/client-go v8.0.0
k8s.io/api version to kubernetes-1.11.0
k8s.io/apimachinery version to kubernetes-1.11.0
github.com/json-iterator/go version to latest because
https://github.com/kubernetes/kubernetes/issues/64612

Delete:

vendor/github.com/juju/ratelimit because k8s-client-go is shifted to golang.org/x/time
Please refer: https://github.com/kubernetes/client-go/commit/acc52496ce5c3836ec57a55cc59bd8a6e0b0879f

gvt delete k8s.io/client-go
gvt delete k8s.io/api
gvt delete k8s.io/apimachinery
gvt delete github.com/json-iterator/go
gvt delete github.com/juju/ratelimit

gvt fetch --no-recurse -tag v8.0.0 k8s.io/client-go
gvt fetch --no-recurse -tag kubernetes-1.11.0 k8s.io/api
gvt fetch --no-recurse -tag kubernetes-1.11.0 k8s.io/apimachinery
gvt fetch github.com/json-iterator/go
gvt fetch golang.org/x/time

fixes: #3284
Signed-off-by: Satyam Zode<EMAIL_ADDRESS>

Looks clean - I've pushed the branch to weaveworks' repo so full CI tests will run.

This is not a complete review (as I'm not a real scope developer), but from my POV it's a :+1:. I checked the following:

changes only touch the bits in ./vendor as mentioned as above
local build works, cursory test of ./scope launch seems to work fine
juju/ratelimit is dropped (which is the main point of #3284)
license review of pulled in vendored deps: no new surprises

Thanks a lot @satyamz!


Mariadb support

I like this particular project because it parses lines one by one (instead of doing multi-line regexps) so its time/memory consumption does not go overboard.
However, it does not properly parse logfiles generated by MariaDB.
This PR does not solve all of the issues (see https://github.com/rmuit/MySQLSlowQueryParser/tree/mariadb for more changes); it concentrates on fixing the parse loop in Parser.
Issues I found with the following representative example:
mysqld, Version: 10.7.1-MariaDB-1:10.7.1+maria~focal-log (mariadb.org binary distribution). started with:
Tcp port: 0  Unix socket: /run/mysqld/mysqld.sock
Time                 Id Command    Argument
mysqld, Version: 10.7.1-MariaDB-1:10.7.1+maria~focal-log (mariadb.org binary distribution). started with:
Tcp port: 0  Unix socket: /run/mysqld/mysqld.sock
Time                 Id Command    Argument
# Time: 220907 18:55:31
# User@Host: root[root] @ localhost [::1]  Id:     8
# Query_time: 0.001519  Lock_time: 0.000214 Rows_sent: 0  Rows_examined: 0
# Rows_affected: 0  Bytes_sent: 11
SELECT SOMETHING;
# User@Host: root[root] @ localhost [::1]  Id:     8
# Query_time: 0.001519  Lock_time: 0.000214 Rows_sent: 0  Rows_examined: 0
# Rows_affected: 0  Bytes_sent: 11
SELECT SOMETHING;

If two 'session headers' immediately follow each other, the second session object does not get the first 'Server' line passed in. So its $session->Server property is "Tcp port: ...." and its Port / Transport properties are empty.
Any comments up until "# Time: " are discarded. Since MariaDB sometimes does not always include a "# Time: " line (! if the query happens in the same second as the previous one?), whole entries are discarded.
After the "# Time: " comment line, exactly two extra comment lines are parsed. If the next line is still a comment (which happens with MariaDB because it has at least one extra line for "Rows_affected: ...", it's seen as a new entry, so

The original entry does not get its query included
Its comment lines and query are completely discarded because see point 2.

It looks to me like all of this is just an effect of quick coding and lack of tests for the edge cases. (And likely point 1 also exists for mysql log files?) However... I can't be 100% sure that there aren't existing logfiles with e.g. extra comment lines or garbage that you actually want to be ignored. So I

introduced an extra local variable for 'parse mode' which can be "" or "mariadb" based on the contents of the first server line
made sure to keep the current behavior unchanged, unless parsing in "mariadb" mode - then points 1-3 are fixed
...to make it easier to consider this PR for inclusion.

However, if you just want these points to be fixed always... I can do that, and include tests for them. With or without simplifying other code in the big parsing 'while' loop, too.
(Regardless whether we do this / need the 'parse mode' in this loop: for proper mariadb property parsing, i.e. the code already in my repository... we'll need a 'parse mode' to change behavior inside the Session and Entry classes.)

Thanks for the PR!
Yes, it has not been ported to MariaDB, so this is good. Wondering if it might make more sense to subclass MySQL and MariaDB parsing.  I am also not sure if MySQL 5.x and 8.x logs are different.
This was a quickly implemented library for my needs, but thought others might be interested, as I could not find another one. I'll take a look and see what makes sense.

Re. subclassing: ...maybe 'next PR' (for Entry and Session classes).
As for this code in Parser: ...yes it looks like the library was implemented quickly. I am not seeing anything yet that must be different between different versions, and the code can be simplified; you just need to be willing to sacrifice theoretical complete backward compatibility of the current behavior. (But I don't expect problems.)

Have not looked at this code in a while.  It appears all the work is in the parse method.  So anything you wan to do in there is fine by me. My big issue is to not change the public interface, but it looks pretty simple and would not need to change.  Adding fields to the Entry or Session classes is fine, as those should reflect the reality of the log file, but we should probably preserve backward compatibility if a field changes.
I am turning on the slow log for my local instances. I will try to add some more examples to the tests/logs directory. Hopefully I can get some interesting edge cases, but not specifically trying to do anything exotic.
So keep adding to this PR till you are satisfied with it, then I can release.
And thanks for the help.

Awesome turnaround time on a PR response!
So

The initial PR was kept small, for getting a feeling about your opinion / feedback about whether you want the Parser code to be 'ultimately backward compatible / do not change any behavior for mysql parsing' vs 'neater and simpler'.
I don't care that much one way or the other, so since my initial PR did the former... I kept it this way. IMHO We can simplify the code later if needed/wanted. (Or I can do it now if you want, given I have the code in my head right now... but I'm not opinionated on it.)
I added one extra change to Parser in this PR besides the one mentioned at point 2:
two variable name changes that I initially kept back, which IMHO make things easier to read. Because AFAICT, variable names and comments were out of sync. ($this->inSession == true == "not in session", $this->inSession == false == "in session" -> changed $this->inSession to $processingSessionHeader)

I've added the work I've done, plus some quick tests:

Session: add Version property. (I thought I needed it for the "parse type". In the end, it isn't used. But I didn't delete the code because adding it seems fine.)
Session: add string $parseMode parameter to constructor, because the "TCP port:" line is subtly different on mariadb (delimiter is a double space instead of ", ")
Entry: new properties for mariadb only. (I don't have an opinion on these extra properties being there also for mysql. I'm going to guess you don't want that -- otherwise you wouldn't have explicitly defined this property list.)

For this, I passed the parse mode in the previously unused $parameters parameter.

Entry: the mariadb "Time:" format is different. Reformat it so $entry->Time is the same as the original for mysql. (Again I have no opinion but it makes sense. I took/modified this from https://github.com/HeBuguM/MySQLSlowQueryParser/tree/mariadb-fix but can't literally incorporate commits from there.)
Parser loop: if no "# Time:" for an entry is found in mariadb mode, add the time from the previous entry.

Not done:

Different classes per mysql version. I'm a simple guy, passing the parse mode into the constructor seemed simple enough, I feel like the "if" constructs don't make the code very messy and can't look into the future for what's best. (The messier code is actually the Parser loop, and... see point 1)
parsing "# explain:" properly (see example in the added logfile). I don't need it and want to leave it up to a future someone to decide whether this needs a two-dimensional array or whatever. (By the way: "explain: " is not in all mariadb slow logs. It just showed up in mine at some point, without any minor version change... so I suspect there's a configuration option somewhere.)

Not planning anything else. Works For Me Now.

I squashed and merged it. I have some other OS stuff to do tonight, so will take a look at this after those things.  I hope to have a new release by tomorrow.
Thanks for the PR. And yes, I wish all OS maintainers responded to things quickly. I have the time, so not a problem.


Add a new conversation API to see the raw ThingTalk results

Every time a new ThingTalk program is executed, send a "new-program"
message on the conversation web socket with the unique ID of the
program (in case the program is long running), the executed code,
and the raw results returned by the Thingpedia function.
This should allow a consumer of the conversation API to display
the results of the program in a custom graphical way (eg a chart)
This PR is needed for the finance assistant project.

This is not critical, so I'm going to hold this until after the Alpha release.


Use with emulator?

I'm trying to set this extension up with the emulator, and I did manage to download the extension, and subsequently launch it, but the problem is that the import script will obviously take the data from the online project I downloaded the extension from, and I'm looking for a way for algolia to use my local firestore db instead.
Starting with the first import (I'd create a separate Application in Algolia for it and use its details when configuring), and subsequently ensuring that when data is added to my local firestore db it triggers the onWrite in the extension, I'd really appreciate some guidance.
Things I tried:
I replaced this:
functions.handler.firestore.document
...with this (as recommended by SO answers):
functions.firestore.document(`projects/${process.env.PROJECT_ID}/databases/(default)/documents/${process.env.COLLECTION_PATH}/{documentID}`)
(envs do exist and do not appear to report errors during init)
I also tried adding default exporting the executeIndexOperation variable from index to no avail.
What happens on record creation is that the log.init() function does appear to kick in, but nothing inside onWrite (not even log.start()).

Are you looking to import data into your emulator?  If so, see if the Firestore team can help with importing data into your emulator.  There is documentation on the Firebase site to do this.

Are you looking to import data into your emulator?  If so, see if the Firestore team can help with importing data into your emulator.  There is documentation on the Firebase site to do this.

No, I have already set up the emulator, I'm looking to integrate Algolia search with the emulator. The problem I have right now is that the onWrite function of this extension is not going to kick in, new data written into my emulator will not update in Algolia, because the function is expecting calls from my online project.
I tried adding the extension to my emulator manually, but then I realized that it's written in such a way, that I have no way to direct traffic via my emulator through it, it appears to 100% rely on the existence of an online project.

The extension was built using the emulator.  There is a npm start script at the root of the project that will start the emulator npm run emulator:ext:start.  You might need to set the project and set the test-params.env.  Once you have made these changes, starting up the emulator will load some test data.  Any changes to the test data in the emulator will be reflected in your Algolia index.

I get error: unknown option '--import' - do I have to run firebase --open-sesame extdev first?
I have tried this by simply downloading the code here and extracting into a folder inside my project, but that might not be the right way to do it.
Do I follow the contribution guide at all or do you recommend doing this any other way?

Checkout the firestore-algolia-search project locally.

Clone the test-params.env.example into test-params.env.

Add the following values in it:
LOCATION=us-central1
COLLECTION_PATH={indexName}
FIELDS=[{fields,...}]
ALGOLIA_INDEX_NAME={indexName}
ALGOLIA_APP_ID={App ID}
ALGOLIA_API_KEY={Admin API Key}

Amend the firebase.json configuration file:

{
  ...
  "emulators": {
    "functions": {
      "port": 5002
    },
    "auth": {
      "port": 9099 // I have added this as it is part of my project
    },
    "firestore": {
      "port": 9098
    },
    "ui": {
      "enabled": true,
      "port": 4000
    }
  }
  ...
}

Execute the following command firebase ext:dev:emulators:start --test-params=test-params.env --project={YOUR FIREBASE PROJECT ID}  --test-config=firebase.json.
Navigate to http://localhost:4000/

I'm using this emulator to run my app locally so that's why I have changed the --project value. I removed the import flag as I don't need the data that's coming with the project, however, if you want your data loaded... you need to export the DB you want going here https://console.cloud.google.com/firestore/import-export?project=YOUR GOOGLE PROJECT ID. To do this you will need a bucket. Then you should navigate to your bucket where the backup has been stored and download it using gsutil command. The folder you download is the one you can use with the --import flag to get your data in the emulator from a cloud instance.

@smomin @pabloleone Thank you so much for your help.
The thing is that I already have a project that uses the firebase emulator, and I am using the import flag in there of a saved state of my online db, so all that is working fine. So I'm guessing if I move all my firebase / firestor related config over to the extension's folder (or amend the folder path for the import), it should work, my app should be able to use that along with the local algolia db...? I will need to give this a try and report back.

@smomin @pabloleone While with your help I could fire up the emulator, I have no way to simulate my app working with it, hosting will just show a blank page. I feel I'm missing an ingredient, especially if I want to use this with an existing app locally...

Hey @benomatis, have you reviewed this Firebase article on connection App to Firebase Emulator, https://firebase.google.com/docs/emulator-suite/connect_firestore?

Yes @smomin, like I said above, it's all up and running, and have been testing my app for over a year now with the emulator, but I'm new to Algolia with firestore, and extensions cannot be installed on the emulator as they can on a real project...

@benomatis I think you are right, extensions cannot be installed the same way. I personally had to move my backend development to the algolia project as I couldn´t figure out how to move the extension into my own project emulator, so I did the opposite, I moved my project functions over to the algolia extension project and make my custom functions work with it... it isn´t ideal, but it works.
I did it by adding a symlink to the algolia project with my functions folder and I imported my index.js into the cli.js file of the algolia emulator project. Hope it helps!

@pabloleone well, that sounds complicated :) but I appreciate your advice; at least I can see I'm not alone with this challenge.
I'm happy to close the issue as there is apparently no official process around this and ample info has been provided here already, or I could leave it open in case anyone still wants to add something...?

I will close this for now, but open it if you need any more support.


Update 3_coreLayerContracts.md

In the text, there is a mistake in the line 13 that says 'publishMessage' should be 'publishMessage()'. It should include parentheses at the end to indicate that it is a function. The corrected version should be 'publishMessage()'.

publishMessage here does have parentheses, the arguments to it are on the following lines.


 I have already plug a phone and open the developer mode.
I don't know the reason, please help me.

Nothing printed?

@nolanliou yes, nothing printed

@raninbowlalala Can you try the latest code?

Is this all output printed? Can you run as follows, and check devices logs:
# clear device logs
adb logcat -c
# run models
python tools/converter.py run --config=mace/models/deeplab-v3-plus/deeplab-v3-plus-mobilenet-v2.yml --round=100
# check device log
adb logcat

The normal logs look like:
adb logcat | grep mace_run
05-06 05:29:06.059 10954 10954 W linker  : "/data/local/tmp/mace_run/mace_run_dynamic" unused DT entry: type 0xf arg 0x1407
05-06 05:29:06.061 10954 10954 W linker  : "/data/local/tmp/mace_run/libmace.so" unused DT entry: type 0xf arg 0x1c4e
05-06 05:29:06.073 10954 10954 I MACE    : mace_run.cc:428 model name: preview_net
05-06 05:29:06.073 10954 10954 I MACE    : mace_run.cc:429 mace version: v0.8.1-138-g691331b-20180717
05-06 05:29:06.073 10954 10954 I MACE    : mace_run.cc:430 input node: input
05-06 05:29:06.073 10954 10954 I MACE    : mace_run.cc:431 input shape: 1,64,64,3
05-06 05:29:06.074 10954 10954 I MACE    : mace_run.cc:432 output node: softmax/Reshape_1
05-06 05:29:06.074 10954 10954 I MACE    : mace_run.cc:433 output shape: 1,64,64,2
05-06 05:29:06.074 10954 10954 I MACE    : mace_run.cc:434 input_file: /data/local/tmp/mace_run/model_input
05-06 05:29:06.074 10954 10954 I MACE    : mace_run.cc:435 output_file: /data/local/tmp/mace_run/model_out
05-06 05:29:06.074 10954 10954 I MACE    : mace_run.cc:436 model_data_file: /data/local/tmp/mace_run/preview_net.data
05-06 05:29:06.074 10954 10954 I MACE    : mace_run.cc:437 model_file: /data/local/tmp/mace_run/preview_net.pb
05-06 05:29:06.074 10954 10954 I MACE    : mace_run.cc:438 device: CPU
05-06 05:29:06.074 10954 10954 I MACE    : mace_run.cc:439 round: 1
05-06 05:29:06.074 10954 10954 I MACE    : mace_run.cc:440 restart_round: 1
05-06 05:29:06.074 10954 10954 I MACE    : mace_run.cc:441 gpu_perf_hint: 3
05-06 05:29:06.075 10954 10954 I MACE    : mace_run.cc:442 gpu_priority_hint: 3
05-06 05:29:06.075 10954 10954 I MACE    : mace_run.cc:443 omp_num_threads: -1
05-06 05:29:06.075 10954 10954 I MACE    : mace_run.cc:444 cpu_affinity_policy: 1
05-06 05:29:06.075 10954 10954 I MACE    : mace_run.cc:467 restart round 0
05-06 05:29:06.087 10954 10954 I MACE    : mace_run.cc:273 Total init latency: 10.161 ms
05-06 05:29:06.087 10954 10954 I MACE    : mace_run.cc:313 Warm up run
05-06 05:29:06.109 10954 10954 I MACE    : mace_run.cc:343 1st warm up run latency: 21.204 ms
05-06 05:29:06.109 10954 10954 I MACE    : mace_run.cc:350 Run model
05-06 05:29:06.125 10954 10954 I MACE    : mace_run.cc:392 Average latency: 16.244 ms
05-06 05:29:06.126 10954 10954 I MACE    : mace_run.cc:415 Write output file /data/local/tmp/mace_run/model_out_softmax_Reshape_1 with size 8192 done.

@yejw5 This works for me, now I can get CPU runtime, but there is error with GPU runtime:
I mace_run.cc:428 model name: deeplab_v3_plus_mobilenet_v2
I mace_run.cc:429 mace version: v0.8.1-140-gda931bf-20180717
I mace_run.cc:430 input node: sub_7
I mace_run.cc:431 input shape: 1,513,513,3
I mace_run.cc:432 output node: ResizeBilinear_2
I mace_run.cc:433 output shape: 1,65,65,21
I mace_run.cc:434 input_file: /data/local/tmp/mace_run/model_input
I mace_run.cc:435 output_file: /data/local/tmp/mace_run/model_out
I mace_run.cc:436 model_data_file: /data/local/tmp/mace_run/deeplab_v3_plus_mobilenet_v2.data
I mace_run.cc:437 model_file: /data/local/tmp/mace_run/deeplab_v3_plus_mobilenet_v2.pb
I mace_run.cc:438 device: GPU
I mace_run.cc:439 round: 10
I mace_run.cc:440 restart_round: 1
I mace_run.cc:441 gpu_perf_hint: 3
I mace_run.cc:442 gpu_priority_hint: 3
I mace_run.cc:443 omp_num_threads: -1
I mace_run.cc:444 cpu_affinity_policy: 1
I mace_run.cc:467 restart round 0
W opencl_runtime.cc:302 There is no precompiled OpenCL binary file in [/data/local/tmp/mace_run/deeplab-v3-plus-mobilenet-v2_compiled_opencl_kernel.SM-G950F.exynos5.bin]
I mace.cc:379 Create MaceEngine from model pb
I mace.cc:165 Creating MaceEngine, MACE version: v0.8.1-140-gda931bf-20180717
I mace.cc:233 Loading Model Data
I mace.cc:173 Initializing MaceEngine
W tuner.h:144 Read OpenCL tuned parameters file failed.
I file_storage.cc:40 File /data/local/tmp/mace_run/interior//mace_cl_compiled_program.bin does not exist
W opencl_runtime.cc:418 There is no precompiled OpenCL binary in all OpenCL binary paths
I mace_run.cc:273 Total init latency: 876.7 ms
I mace_run.cc:313 Warm up run
F helper.cc:339 Check failed: error == CL_SUCCESS error: CL_INVALID_WORK_GROUP_SIZE
Aborted (core dumped)
ERROR: [Mace Run] Mace run failed.

@raninbowlalala Can you run with python tools/converter.py run --config=mace/models/deeplab-v3-plus/deeplab-v3-plus-mobilenet-v2.yml --round=100 --vlog_level=5 > mace_run.log. And upload the log file.

this is the last log in mace_run.log, do you need more log?
I mace_run.cc:313 Warm up run
I opencl_allocator.cc:47 Allocate OpenCL buffer: 3158092
I logging.h:104 clCreateBuffer started
I logging.h:110 clCreateBuffer latency: 3283 us
I logging.h:104 clRetainCommandQueue started
I logging.h:110 clRetainCommandQueue latency: 235 us
I logging.h:104 clEnqueueMapBuffer started
I logging.h:110 clEnqueueMapBuffer latency: 2516 us
I logging.h:104 clReleaseCommandQueue started
I logging.h:110 clReleaseCommandQueue latency: 172 us
I logging.h:104 clRetainCommandQueue started
I logging.h:110 clRetainCommandQueue latency: 264 us
I logging.h:104 clEnqueueUnmapMemObject started
I logging.h:110 clEnqueueUnmapMemObject latency: 263 us
I logging.h:104 clReleaseCommandQueue started
I logging.h:110 clReleaseCommandQueue latency: 217 us
I logging.h:104 Running net started
I logging.h:104 Running operator sub_7(BufferToImage), mem_id: [20000] started
I opencl_runtime.cc:483 cached OpenCL binary version is not same with current version
I logging.h:104 clCreateProgramWithSource started
I logging.h:110 clCreateProgramWithSource latency: 288 us
I logging.h:104 clGetDeviceInfo started
I logging.h:110 clGetDeviceInfo latency: 199 us
I logging.h:104 clGetPlatformInfo started
I logging.h:110 clGetPlatformInfo latency: 174 us
I logging.h:104 clGetPlatformInfo started
I logging.h:110 clGetPlatformInfo latency: 219 us
I logging.h:104 clRetainDevice started
I logging.h:110 clRetainDevice latency: 270 us
I logging.h:104 clGetDeviceInfo started
I logging.h:110 clGetDeviceInfo latency: 190 us
I logging.h:104 clGetPlatformInfo started
I logging.h:110 clGetPlatformInfo latency: 242 us
I logging.h:104 clGetPlatformInfo started
I logging.h:110 clGetPlatformInfo latency: 203 us
I logging.h:104 clRetainDevice started
I logging.h:110 clRetainDevice latency: 181 us
I logging.h:104 clBuildProgram started
I logging.h:110 clBuildProgram latency: 254202 us
I logging.h:104 clGetProgramInfo started
I logging.h:110 clGetProgramInfo latency: 153 us
I logging.h:104 clGetProgramInfo started
I logging.h:110 clGetProgramInfo latency: 220 us
I logging.h:104 clGetDeviceInfo started
I logging.h:110 clGetDeviceInfo latency: 194 us
I logging.h:104 clGetPlatformInfo started
I logging.h:110 clGetPlatformInfo latency: 199 us
I logging.h:104 clGetPlatformInfo started
I logging.h:110 clGetPlatformInfo latency: 179 us
I logging.h:104 clRetainDevice started
I logging.h:110 clRetainDevice latency: 179 us
I logging.h:104 clGetProgramBuildInfo started
I logging.h:110 clGetProgramBuildInfo latency: 164 us
I logging.h:104 clGetProgramBuildInfo started
I logging.h:110 clGetProgramBuildInfo latency: 167 us
I logging.h:104 clGetDeviceInfo started
I logging.h:110 clGetDeviceInfo latency: 171 us
I logging.h:104 clGetPlatformInfo started
I logging.h:110 clGetPlatformInfo latency: 130 us
I logging.h:104 clGetPlatformInfo started
I logging.h:110 clGetPlatformInfo latency: 157 us
I logging.h:104 clRetainDevice started
I logging.h:110 clRetainDevice latency: 171 us
I logging.h:104 clReleaseDevice started
I logging.h:110 clReleaseDevice latency: 179 us
I logging.h:104 clReleaseDevice started
I logging.h:110 clReleaseDevice latency: 173 us
I logging.h:104 clReleaseDevice started
I logging.h:110 clReleaseDevice latency: 147 us
I logging.h:104 clReleaseDevice started
I logging.h:110 clReleaseDevice latency: 165 us
I logging.h:104 clGetProgramInfo started
I logging.h:110 clGetProgramInfo latency: 4155 us
I logging.h:104 clGetProgramInfo started
I logging.h:110 clGetProgramInfo latency: 3798 us
I opencl_runtime.cc:605 Program from source: buffer_to_image -DCMD_DATA_TYPE=f -DDATA_TYPE=float -Din_out_buffer_to_image=i3g6CCkxG344HrLHuDI8ED
I logging.h:104 clRetainProgram started
I logging.h:110 clRetainProgram latency: 176 us
I logging.h:104 clCreateKernel started
I logging.h:110 clCreateKernel latency: 35838 us
I logging.h:104 clReleaseProgram started
I logging.h:110 clReleaseProgram latency: 152 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 193 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 246 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 171 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 162 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 186 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 201 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 147 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 189 us
I logging.h:104 clGetKernelWorkGroupInfo started
I logging.h:110 clGetKernelWorkGroupInfo latency: 179 us
I logging.h:104 clEnqueueNDRangeKernel started
I logging.h:110 clEnqueueNDRangeKernel latency: 244 us
I logging.h:104 clReleaseEvent started
I logging.h:110 clReleaseEvent latency: 168 us
I logging.h:104 clReleaseKernel started
I logging.h:110 clReleaseKernel latency: 192 us
I net.cc:126 Operator sub_7 has shape: [1, 513, 513, 3]
I logging.h:110 Running operator sub_7(BufferToImage), mem_id: [20000] latency: 317063 us
I logging.h:104 Running operator MobilenetV2/Conv/Relu6(Conv2D), mem_id: [20001] started
I opencl_runtime.cc:483 cached OpenCL binary version is not same with current version
I logging.h:104 clCreateProgramWithSource started
I logging.h:110 clCreateProgramWithSource latency: 186 us
I logging.h:104 clGetDeviceInfo started
I logging.h:110 clGetDeviceInfo latency: 185 us
I logging.h:104 clGetPlatformInfo started
I logging.h:110 clGetPlatformInfo latency: 154 us
I logging.h:104 clGetPlatformInfo started
I logging.h:110 clGetPlatformInfo latency: 181 us
I logging.h:104 clRetainDevice started
I logging.h:110 clRetainDevice latency: 161 us
I logging.h:104 clGetDeviceInfo started
I logging.h:110 clGetDeviceInfo latency: 170 us
I logging.h:104 clGetPlatformInfo started
I logging.h:110 clGetPlatformInfo latency: 171 us
I logging.h:104 clGetPlatformInfo started
I logging.h:110 clGetPlatformInfo latency: 141 us
I logging.h:104 clRetainDevice started
I logging.h:110 clRetainDevice latency: 157 us
I logging.h:104 clBuildProgram started
I logging.h:110 clBuildProgram latency: 59229 us
I logging.h:104 clGetProgramInfo started
I logging.h:110 clGetProgramInfo latency: 152 us
I logging.h:104 clGetProgramInfo started
I logging.h:110 clGetProgramInfo latency: 177 us
I logging.h:104 clGetDeviceInfo started
I logging.h:110 clGetDeviceInfo latency: 188 us
I logging.h:104 clGetPlatformInfo started
I logging.h:110 clGetPlatformInfo latency: 176 us
I logging.h:104 clGetPlatformInfo started
I logging.h:110 clGetPlatformInfo latency: 259 us
I logging.h:104 clRetainDevice started
I logging.h:110 clRetainDevice latency: 194 us
I logging.h:104 clGetProgramBuildInfo started
I logging.h:110 clGetProgramBuildInfo latency: 264 us
I logging.h:104 clGetProgramBuildInfo started
I logging.h:110 clGetProgramBuildInfo latency: 190 us
I logging.h:104 clGetDeviceInfo started
I logging.h:110 clGetDeviceInfo latency: 173 us
I logging.h:104 clGetPlatformInfo started
I logging.h:110 clGetPlatformInfo latency: 224 us
I logging.h:104 clGetPlatformInfo started
I logging.h:110 clGetPlatformInfo latency: 141 us
I logging.h:104 clRetainDevice started
I logging.h:110 clRetainDevice latency: 168 us
I logging.h:104 clReleaseDevice started
I logging.h:110 clReleaseDevice latency: 213 us
I logging.h:104 clReleaseDevice started
I logging.h:110 clReleaseDevice latency: 188 us
I logging.h:104 clReleaseDevice started
I logging.h:110 clReleaseDevice latency: 218 us
I logging.h:104 clReleaseDevice started
I logging.h:110 clReleaseDevice latency: 154 us
I logging.h:104 clGetProgramInfo started
I logging.h:110 clGetProgramInfo latency: 1109 us
I logging.h:104 clGetProgramInfo started
I logging.h:110 clGetProgramInfo latency: 998 us
I opencl_runtime.cc:605 Program from source: conv_2d_3x3 -DBIAS -DCMD_DATA_TYPE=f -DDATA_TYPE=float -DUSE_RELUX -Dconv_2d_3x3=c44CimylqKs
I logging.h:104 clRetainProgram started
I logging.h:110 clRetainProgram latency: 183 us
I logging.h:104 clCreateKernel started
I logging.h:110 clCreateKernel latency: 120226 us
I logging.h:104 clReleaseProgram started
I logging.h:110 clReleaseProgram latency: 150 us
I logging.h:104 clGetKernelWorkGroupInfo started
I logging.h:110 clGetKernelWorkGroupInfo latency: 179 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 175 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 188 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 181 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 216 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 201 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 186 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 190 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 276 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 156 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 139 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 157 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 165 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 160 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 164 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 156 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 136 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 180 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 163 us
I logging.h:104 clEnqueueNDRangeKernel started
I logging.h:110 clEnqueueNDRangeKernel latency: 1004 us
I logging.h:104 clReleaseEvent started
I logging.h:110 clReleaseEvent latency: 127 us
I net.cc:126 Operator MobilenetV2/Conv/Relu6 has shape: [1, 257, 257, 32]
I logging.h:110 Running operator MobilenetV2/Conv/Relu6(Conv2D), mem_id: [20001] latency: 202254 us
I logging.h:104 Running operator MobilenetV2/expanded_conv/depthwise/Relu6(DepthwiseConv2d), mem_id: [20002] started
I opencl_runtime.cc:483 cached OpenCL binary version is not same with current version
I logging.h:104 clCreateProgramWithSource started
I logging.h:110 clCreateProgramWithSource latency: 194 us
I logging.h:104 clGetDeviceInfo started
I logging.h:110 clGetDeviceInfo latency: 153 us
I logging.h:104 clGetPlatformInfo started
I logging.h:110 clGetPlatformInfo latency: 180 us
I logging.h:104 clGetPlatformInfo started
I logging.h:110 clGetPlatformInfo latency: 189 us
I logging.h:104 clRetainDevice started
I logging.h:110 clRetainDevice latency: 186 us
I logging.h:104 clGetDeviceInfo started
I logging.h:110 clGetDeviceInfo latency: 176 us
I logging.h:104 clGetPlatformInfo started
I logging.h:110 clGetPlatformInfo latency: 185 us
I logging.h:104 clGetPlatformInfo started
I logging.h:110 clGetPlatformInfo latency: 193 us
I logging.h:104 clRetainDevice started
I logging.h:110 clRetainDevice latency: 177 us
I logging.h:104 clBuildProgram started
I logging.h:110 clBuildProgram latency: 91899 us
I logging.h:104 clGetProgramInfo started
I logging.h:110 clGetProgramInfo latency: 149 us
I logging.h:104 clGetProgramInfo started
I logging.h:110 clGetProgramInfo latency: 386 us
I logging.h:104 clGetDeviceInfo started
I logging.h:110 clGetDeviceInfo latency: 199 us
I logging.h:104 clGetPlatformInfo started
I logging.h:110 clGetPlatformInfo latency: 194 us
I logging.h:104 clGetPlatformInfo started
I logging.h:110 clGetPlatformInfo latency: 180 us
I logging.h:104 clRetainDevice started
I logging.h:110 clRetainDevice latency: 187 us
I logging.h:104 clGetProgramBuildInfo started
I logging.h:110 clGetProgramBuildInfo latency: 147 us
I logging.h:104 clGetProgramBuildInfo started
I logging.h:110 clGetProgramBuildInfo latency: 161 us
I logging.h:104 clGetDeviceInfo started
I logging.h:110 clGetDeviceInfo latency: 158 us
I logging.h:104 clGetPlatformInfo started
I logging.h:110 clGetPlatformInfo latency: 169 us
I logging.h:104 clGetPlatformInfo started
I logging.h:110 clGetPlatformInfo latency: 157 us
I logging.h:104 clRetainDevice started
I logging.h:110 clRetainDevice latency: 180 us
I logging.h:104 clReleaseDevice started
I logging.h:110 clReleaseDevice latency: 213 us
I logging.h:104 clReleaseDevice started
I logging.h:110 clReleaseDevice latency: 177 us
I logging.h:104 clReleaseDevice started
I logging.h:110 clReleaseDevice latency: 179 us
I logging.h:104 clReleaseDevice started
I logging.h:110 clReleaseDevice latency: 173 us
I logging.h:104 clGetProgramInfo started
I logging.h:110 clGetProgramInfo latency: 1336 us
I logging.h:104 clGetProgramInfo started
I logging.h:110 clGetProgramInfo latency: 1278 us
I opencl_runtime.cc:605 Program from source: depthwise_conv2d -DBIAS -DCMD_DATA_TYPE=f -DDATA_TYPE=float -DSTRIDE=1 -DUSE_RELUX -Ddepthwise_conv2d_s1=du6A0F3D1n1DDMv7uNy
I logging.h:104 clRetainProgram started
I logging.h:110 clRetainProgram latency: 165 us
I logging.h:104 clCreateKernel started
I logging.h:110 clCreateKernel latency: 75840 us
I logging.h:104 clReleaseProgram started
I logging.h:110 clReleaseProgram latency: 149 us
I logging.h:104 clGetKernelWorkGroupInfo started
I logging.h:110 clGetKernelWorkGroupInfo latency: 174 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 156 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 179 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 190 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 206 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 183 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 260 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 183 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 183 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 180 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 170 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 190 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 172 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 257 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 208 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 193 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 171 us
I logging.h:104 clSetKernelArg started
I logging.h:110 clSetKernelArg latency: 207 us
I logging.h:104 clEnqueueNDRangeKernel started
I logging.h:110 clEnqueueNDRangeKernel latency: 196 us
F helper.cc:339 Check failed: error == CL_SUCCESS error: CL_INVALID_WORK_GROUP_SIZE
Aborted (core dumped)
ERROR: [Mace Run] Mace run failed.

@raninbowlalala We have found the root source. It is caused by the default local work size for some opencl op overflowing. It will be fixed soon. Thank you for your feedback.

@raninbowlalala The problem is fixed in commit 6f59791d. Could you try it again.


UPDATE to newest MSQUIC

Codecov Report
Base: 43.08% // Head: 43.08% // Decreases project coverage by -0.00% :warning:

Coverage data is based on head (7f938bc) compared to base (1b56a4e).
Patch has no changes to coverable lines.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #378      +/-   ##
==========================================
- Coverage   43.08%   43.08%   -0.01%
==========================================
  Files         119      119
  Lines       35498    35498
==========================================
- Hits        15294    15293       -1
- Misses      20204    20205       +1

Impacted Files
Coverage Δ

src/platform/posix/posix_resolv_gai.c
70.86% <0.00%> (-4.35%)
:arrow_down:

src/sp/protocol/pubsub0/pub.c
90.47% <0.00%> (-3.18%)
:arrow_down:

src/sp/protocol/bus0/bus.c
94.31% <0.00%> (-0.48%)
:arrow_down:

src/platform/posix/posix_tcpconn.c
74.56% <0.00%> (-0.44%)
:arrow_down:

src/sp/transport/inproc/inproc.c
78.78% <0.00%> (-0.38%)
:arrow_down:

src/supplemental/websocket/websocket.c
62.89% <0.00%> (+0.14%)
:arrow_up:

src/sp/protocol/reqrep0/req.c
96.05% <0.00%> (+0.56%)
:arrow_up:

src/core/pipe.c
75.28% <0.00%> (+0.57%)
:arrow_up:

src/supplemental/http/http_conn.c
71.54% <0.00%> (+0.84%)
:arrow_up:

src/core/tcp.c
78.94% <0.00%> (+1.57%)
:arrow_up:

... and 1 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Release of blend files

Hi, could you please share the blend files for shiny blender dataset? Thank you so much!

Sorry for the delay, here is the link:
https://dorverbin.github.io/refnerf/data/shiny_blender_source.zip


Add button to zero out controls to the Animate tab in control hub

added in this pull request
https://github.com/louisVottero/vtool/pull/374


"Remove obsolete package references" section is confusing

In this section, it is explained that ASP.NET Core no longer produces a large number of NuGet packages features, and some of the package references should be removed from the project file. Then, there is a list of packages that are no longer produced, for example, Microsoft.AspNetCore.Authentication.JwtBearer or Microsoft.AspNetCore.Authentication.OpenIdConnect among others. This gives you the impression that package references should be removed from the project file for any of the listed packages. However, in this section:  https://docs.microsoft.com/en-us/aspnet/core/migration/22-to-30?view=aspnetcore-3.0&tabs=visual-studio#add-package-references-for-removed-assemblies, it is described that some of these packages should be used by adding a package reference to the version 3.0.0, for example, Microsoft.AspNetCore.Authentication.JwtBearer, which is available on NuGet.
Both sections are contradictory.

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

ID: 76f39eec-9dd1-6167-56ec-47b26e0b5063
Version Independent ID: f9f2b0f3-01eb-cf58-8767-194fe0fc0e44
Content: Migrate from ASP.NET Core 2.2 to 3.0
Content Source: aspnetcore/migration/22-to-30.md
Product: aspnet-core
Technology: aspnetcore-migration
GitHub Login: @Rick-Anderson
Microsoft Alias: riande

@laura-rodriguez Thank you for pointing this out. I'll see what I can do to clarify in the doc.
Here's one way to visualize things. Compare the 2.2 and 3.0 shared frameworks on your development machine:

In this screenshot, you see that the Microsoft.AspNetCore.Authentication.JwtBearer assembly doesn't exist in the 3.0 shared framework. It does, however, exist in the 2.2 shared framework. This is a situation in which you'd need to install the assembly from the NuGet package (https://www.nuget.org/packages/Microsoft.AspNetCore.Authentication.JwtBearer).

@scottaddie thanks for sharing that screenshot, which is super helpful :). This information should be definitely included in the docs. This is relevant information for those who have to support multiple .NET versions. Thanks!


Add filters that can listen for multiple events

might want to rebase, upload block file might has change from recent upload to kovan


Padding on images

check for both viewed and annotated images (browser and mobile)

migrated to #9


metadata source IBMDB2

IbmDb2Metadata.php missing in zf2/library/Zend/Db/Metadata/Source.

This issue has been moved from the zendframework repository as part of the bug migration program as outlined here - http://framework.zend.com/blog/2016-04-11-issue-closures.html
New issue can be found at: https://github.com/zendframework/zend-db/issues/126


Features/enhancing explorer UI

To keep it simple we can have 2 different viewer (maybe more in future) but need to know which one to load in generic manner (by page source format or by Interface query).
Regards,
Meni Kadosh
Software Development Team Lead
Amdocs Quality Engineering Services
R&D Center
+972-8-62-40961 (office)
   [signature_713918026]

Taking the industry to the cloud with the new cloud-native Amdocs CES20https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.amdocs.com%2Famdocsone%2Fces20&data=02|01|Marios.Hajiloizi%40amdocs.com|461f79ffff6a41f5bff808d7ae3d6cc3|c8eca3ca127646d59d9da0f2a028920f|0|0|637169451152844403&sdata=JHW%2BIPUfWtT%2Fq%2BnfVxXWmbfBvGNIQRkfBFtKIAMpT%2BU%3D&reserved=0 suite and rich set of cloud practices
Read the latest on Amdocs.comhttps://eur01.safelinks.protection.outlook.com/?url=Amdocs.com&data=02|01|Marios.Hajiloizi%40amdocs.com|461f79ffff6a41f5bff808d7ae3d6cc3|c8eca3ca127646d59d9da0f2a028920f|0|0|637169451152854392&sdata=7rIOMY0C6C6SaPZBLm%2FykYv7IcCCgNQyqzl%2BrWRrGq4%3D&reserved=0 and the Amdocs blog networkhttps://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.amdocs.com%2Fblog&data=02|01|Marios.Hajiloizi%40amdocs.com|461f79ffff6a41f5bff808d7ae3d6cc3|c8eca3ca127646d59d9da0f2a028920f|0|0|637169451152859376&sdata=9VD%2FhV8LDPdFkkwIVDq0afowNJFw4EL%2B94elyFldQWg%3D&reserved=0 – and follow us on Facebookhttps://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.facebook.com%2FAmdocs&data=02|01|Marios.Hajiloizi%40amdocs.com|461f79ffff6a41f5bff808d7ae3d6cc3|c8eca3ca127646d59d9da0f2a028920f|0|0|637169451152864367&sdata=kpMrwWkf7tLLD4y%2FTR85Y2XDs5aGmn0lp8ApkmPE0h0%3D&reserved=0, Twitterhttps://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2Ftwitter.com%2FAmdocs&data=02|01|Marios.Hajiloizi%40amdocs.com|461f79ffff6a41f5bff808d7ae3d6cc3|c8eca3ca127646d59d9da0f2a028920f|0|0|637169451152869361&sdata=8TDEDSw5WHx3ynpuOt4WNac4JUhtEflNqsJW5O1pLyI%3D&reserved=0, LinkedInhttps://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.linkedin.com%2Fcompany%2Famdocs&data=02|01|Marios.Hajiloizi%40amdocs.com|461f79ffff6a41f5bff808d7ae3d6cc3|c8eca3ca127646d59d9da0f2a028920f|0|0|637169451152874349&sdata=H4N8taZRmbaRhJ7fHF0xNR0VmsBTorNxVmAIizCUPuc%3D&reserved=0 and YouTubehttps://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.youtube.com%2Famdocs&data=02|01|Marios.Hajiloizi%40amdocs.com|461f79ffff6a41f5bff808d7ae3d6cc3|c8eca3ca127646d59d9da0f2a028920f|0|0|637169451152879338&sdata=BUiWPmvCI%2BZteCd9s4Rdq0JwDt5KEeMYHrtLvAPWPhI%3D&reserved=0.
From: PraTeek Vyas @.>
Date: Wednesday, 5 May 2021 at 17:20
To: Ginger-Automation/Ginger @.>
Cc: Meni Kadosh @.>, Comment @.>
Subject: Re: [Ginger-Automation/Ginger] Features/enhancing explorer UI (#1882)
@vyasprateek commented on this pull request.

In Ginger/Ginger/AutomatePageLib/AddActionMenu/WindowExplorer/Common/WindowExplorerPage.xaml.cshttps://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FGinger-Automation%2FGinger%2Fpull%2F1882%23discussion_r626609396&data=04|01|Meni.Kadosh%40amdocs.com|0284abe91ec84dd6878408d90fd0ef39|c8eca3ca127646d59d9da0f2a028920f|0|0|637558212339332951|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=Q6cbncIp5zM%2FkaK1feyEYG6OM%2BjtO2iloPmvRd0KGKk%3D&reserved=0:

     {

       WindowControlsTreeView.Tree.ClearTreeItems();

       if (WindowsComboBox.SelectedValue != null && mRootItem != null)

       //xHTMLTree.Items.Add(new PageSrcParser(((SeleniumDriver)mContext.Agent.Driver).GetPageHTML())

       if (mWindowExplorerDriver is GenericAppiumDriver)

specific check as for Web, it's HTMLViewer while for Mobile, it's XML. I'm planning to make it in a more generic way by having a single User Control (say, PageSourceViewer by combining XMLViewer & HTMLViewer in a single) to handle any document sent and show the page source in Explorer. It'll take time so keeping as it is for now, or shall i shift in the same PR, today ?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHubhttps://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FGinger-Automation%2FGinger%2Fpull%2F1882%23discussion_r626609396&data=04|01|Meni.Kadosh%40amdocs.com|0284abe91ec84dd6878408d90fd0ef39|c8eca3ca127646d59d9da0f2a028920f|0|0|637558212339342904|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=0kwisbO%2FxRMwZQANG29MtO7ZYBV%2BwSFsy2%2Fg910Jv2I%3D&reserved=0, or unsubscribehttps://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAJTBJLS7I2P7PSQNMPLJSDTTMFHYDANCNFSM44BLOCXA&data=04|01|Meni.Kadosh%40amdocs.com|0284abe91ec84dd6878408d90fd0ef39|c8eca3ca127646d59d9da0f2a028920f|0|0|637558212339342904|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=OmQFyecbLaC0ALhonTy4s3rmedOQ3XfbhtyYgjCokRI%3D&reserved=0.
This email and the information contained herein is proprietary and confidential and subject to the Amdocs Email Terms of Service, which you may review at https://www.amdocs.com/about/email-terms-of-service https://www.amdocs.com/about/email-terms-of-service

Show it to me on next call.
Regards,
Meni Kadosh
Software Development Team Lead
Amdocs Quality Engineering Services
R&D Center
+972-8-62-40961 (office)
   [signature_358827723]

Taking the industry to the cloud with the new cloud-native Amdocs CES20https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.amdocs.com%2Famdocsone%2Fces20&data=02|01|Marios.Hajiloizi%40amdocs.com|461f79ffff6a41f5bff808d7ae3d6cc3|c8eca3ca127646d59d9da0f2a028920f|0|0|637169451152844403&sdata=JHW%2BIPUfWtT%2Fq%2BnfVxXWmbfBvGNIQRkfBFtKIAMpT%2BU%3D&reserved=0 suite and rich set of cloud practices
Read the latest on Amdocs.comhttps://eur01.safelinks.protection.outlook.com/?url=Amdocs.com&data=02|01|Marios.Hajiloizi%40amdocs.com|461f79ffff6a41f5bff808d7ae3d6cc3|c8eca3ca127646d59d9da0f2a028920f|0|0|637169451152854392&sdata=7rIOMY0C6C6SaPZBLm%2FykYv7IcCCgNQyqzl%2BrWRrGq4%3D&reserved=0 and the Amdocs blog networkhttps://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.amdocs.com%2Fblog&data=02|01|Marios.Hajiloizi%40amdocs.com|461f79ffff6a41f5bff808d7ae3d6cc3|c8eca3ca127646d59d9da0f2a028920f|0|0|637169451152859376&sdata=9VD%2FhV8LDPdFkkwIVDq0afowNJFw4EL%2B94elyFldQWg%3D&reserved=0 – and follow us on Facebookhttps://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.facebook.com%2FAmdocs&data=02|01|Marios.Hajiloizi%40amdocs.com|461f79ffff6a41f5bff808d7ae3d6cc3|c8eca3ca127646d59d9da0f2a028920f|0|0|637169451152864367&sdata=kpMrwWkf7tLLD4y%2FTR85Y2XDs5aGmn0lp8ApkmPE0h0%3D&reserved=0, Twitterhttps://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2Ftwitter.com%2FAmdocs&data=02|01|Marios.Hajiloizi%40amdocs.com|461f79ffff6a41f5bff808d7ae3d6cc3|c8eca3ca127646d59d9da0f2a028920f|0|0|637169451152869361&sdata=8TDEDSw5WHx3ynpuOt4WNac4JUhtEflNqsJW5O1pLyI%3D&reserved=0, LinkedInhttps://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.linkedin.com%2Fcompany%2Famdocs&data=02|01|Marios.Hajiloizi%40amdocs.com|461f79ffff6a41f5bff808d7ae3d6cc3|c8eca3ca127646d59d9da0f2a028920f|0|0|637169451152874349&sdata=H4N8taZRmbaRhJ7fHF0xNR0VmsBTorNxVmAIizCUPuc%3D&reserved=0 and YouTubehttps://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.youtube.com%2Famdocs&data=02|01|Marios.Hajiloizi%40amdocs.com|461f79ffff6a41f5bff808d7ae3d6cc3|c8eca3ca127646d59d9da0f2a028920f|0|0|637169451152879338&sdata=BUiWPmvCI%2BZteCd9s4Rdq0JwDt5KEeMYHrtLvAPWPhI%3D&reserved=0.
From: PraTeek Vyas @.>
Date: Wednesday, 5 May 2021 at 17:50
To: Ginger-Automation/Ginger @.>
Cc: Meni Kadosh @.>, Comment @.>
Subject: Re: [Ginger-Automation/Ginger] Features/enhancing explorer UI (#1882)
@vyasprateek commented on this pull request.

In Ginger/Ginger/AutomatePageLib/AddActionMenu/WindowExplorer/Common/WindowExplorerPage.xaml.cshttps://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FGinger-Automation%2FGinger%2Fpull%2F1882%23discussion_r626636193&data=04|01|Meni.Kadosh%40amdocs.com|e3afdc278a39493e7b9108d90fd51512|c8eca3ca127646d59d9da0f2a028920f|0|0|637558230136135813|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=HS7cIhaQGmwDfkOO6e%2BpgtD7xXwsMu2HxIdUuDpgctc%3D&reserved=0:

           //rectangleXmlNode = clickedElementNode;

           //get the element location

           double ratio_X = 0;

           double ratio_Y = 0;

           double element_Start_X = clickedElementNode.X;

           double element_Start_Y = clickedElementNode.Y;

           double element_Max_X = clickedElementNode.X + clickedElementNode.Width;

           double element_Max_Y = clickedElementNode.Y + clickedElementNode.Height;

           //draw the rectangle

           //mHighightRectangle = new System.Windows.Shapes.Rectangle();

           double rectangleWidth = -1, rectangleHeight = -1;

           /// Mobile specific calculations

           if (mWindowExplorerDriver is GenericAppiumDriver)

because it involves the AppWindow for calculating the point on image so in case we move it to drivers, it would require working with an instance of ScreenShotViewPage to be sent as parameter
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHubhttps://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FGinger-Automation%2FGinger%2Fpull%2F1882%23discussion_r626636193&data=04|01|Meni.Kadosh%40amdocs.com|e3afdc278a39493e7b9108d90fd51512|c8eca3ca127646d59d9da0f2a028920f|0|0|637558230136145770|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=iRcuSDV9gigOT8opwzJYgSY4dvmTgUNai6m%2FbMNeNGA%3D&reserved=0, or unsubscribehttps://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAJTBJLQJONOP6JK7PLARETDTMFLGRANCNFSM44BLOCXA&data=04|01|Meni.Kadosh%40amdocs.com|e3afdc278a39493e7b9108d90fd51512|c8eca3ca127646d59d9da0f2a028920f|0|0|637558230136145770|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=9qB6RXsYxi0%2BfVFw6EhaX66AwcGCv6W19XOrHxFs1yg%3D&reserved=0.
This email and the information contained herein is proprietary and confidential and subject to the Amdocs Email Terms of Service, which you may review at https://www.amdocs.com/about/email-terms-of-service https://www.amdocs.com/about/email-terms-of-service


Impossible to override navigation controls without CSS Selector

Swiper Version: 6.5.0
Platform/Target and Browser Versions: macOS, Windows, IOS, CHROME

What You Did
Try to customize navigation controls with elementRef in html template
https://stackblitz.com/edit/swiper-angular-navigation-buttons-issue?file=src%2Fapp%2Fapp.component.html

Expected Behavior
Default navigation controls should not be available if navigation options contain custom nextEl/prevEl
Actual Behavior
Default navigation controls are present
Seems like condition for navigation is incorrect and doesn't support element (only string css selector). Code →

There is a workaround - pass a css selector of next/prev buttons. But it is very limited as 2 swipers should be unique in these selectors

But it is very limited

There is no any limitation with this approach. You can pass unique selectors (based on parent swiper class), plus Swiper first looks for matching selectors inside itself

@nolimits4web thanks for a ultra-quick answer 😊
So do you mean I should use some slot (container-end for example) for custom navigation? With this nuance Swiper first looks for matching selectors inside itself it can works
But what about initial request? Is it a confirmed bug or incorrect usage? Type definitions have possibility to pass HTMLElement but unfortunately with no effect

@vltansky should shed the light on this :)

@nolimits4web

There is no any limitation with this approach.

There is one limitation yet:
As we have to place navigation controls inside swiper container that has oveflow: hidden property, navigation control cannot be placed somehow outside of content area of swiper
Goal: make navigation controls fully visible Repro

You can just put it outside of swiper https://stackblitz.com/edit/swiper-angular-example-4qrarx?file=src%2Fapp%2Fapp.component.html


Allow all certs in TestHttpCall

This enables self signed and other certificates to be used within TestHttpCall. Tested on AWS with the brooklyncentral/brooklyn-tomcat-7-server tests.

LGTM; merging now.


What-If - Microsoft.Network/routeTables route properties.nextHopIpAddress

Describe the noise
Resource type
Microsoft.Network/routeTables
apiVersion
2020-05-01
Client (PowerShell, Azure CLI, or API)
Azure CLI
Relevant ARM Template code (we only need the resource object for the above resourceType and apiVersion, but if it's easier you can include the entire template
resource vnet 'Microsoft.Network/virtualNetworks@2020-11-01' = {
  name: 'vnet-name'
  location: resourceGroup().location
  properties: {
    addressSpace: {
      addressPrefixes:[
        '<IP_ADDRESS>/18'
      ]
    }
    subnets: [
      {
        name: 'AzureFirewallSubnet'
        properties: {
          addressPrefix: '<IP_ADDRESS>/24'
        }
      }
    ]
  }
}

resource firewallPip 'Microsoft.Network/publicIPAddresses@2020-05-01' = {
  name: 'pip-00'
  location: resourceGroup().location
  sku: {
    name: 'Standard'
  }
  properties: {
    publicIPAllocationMethod: 'Static'
    idleTimeoutInMinutes: 4
    publicIPAddressVersion: 'IPv4'
  }
}

resource firewall 'Microsoft.Network/azureFirewalls@2020-11-01' = {
  name: 'azf-name'
  location: resourceGroup().location
  properties: {
    sku: {
      name: 'AZFW_VNet'
      tier: 'Standard'
    }
    ipConfigurations: [
      {
        name: firewallPip.name
        properties: {
          subnet: {
            id: vnet.properties.subnets[0].id
          }
          publicIPAddress: {
            id: firewallPip.id
          }
        }
      }
    ]
  }
}

resource routeTable 'Microsoft.Network/routeTables@2020-05-01' = {
  name: 'route-name'
  location: resourceGroup().location
  properties: {
    routes: [
      {
        name: 'all-to-fw'
        properties: {
          nextHopType: 'VirtualAppliance'
          addressPrefix: '<IP_ADDRESS>/0'
          nextHopIpAddress: firewall.properties.ipConfigurations[0].properties.privateIPAddress
        }
      }
    ]
  }
}

Expected response
When deploying the above template on top of itself, I would expect no noise to be produced, since the template has not been changed between deployments.
Current (noisy) response (either include a screenshot of the what-if output, or copy/paste the text)

It seems that the resource manager has a rough time determining changes in property values from inferred dependent resources, which already exist at the time of deployment. I would expect that the resource manager should be able to look at the referred firewall's private ip configuration and determine its value from the reference.
Additional context
The above template is enough to reproduce this issue consistently.

Seems to be related to #202. I can also confirm that I am experiencing similar behaviour for the accessPolicies property on Microsoft.KeyVault/vaults, API version 2019-09-01:
~ Microsoft.KeyVault/vaults/kv-aks-wvgce4zc4acvk [2019-09-01]
    ~ properties.accessPolicies: [
      ~ 0:

        ~ objectId: "2ea04a5f-18de-4423-88c0-1d190a584635" => "[reference(resourceId('Microsoft.ManagedIdentity/userAssignedIdentities', variables('applicationGatewayIdentityName'))).principalId]"
        ~ tenantId: "1ed445c7-2e65-4ff2-8d47-6b8da71bc205" => "[reference(resourceId('Microsoft.ManagedIdentity/userAssignedIdentities', variables('applicationGatewayIdentityName'))).tenantId]"


Ideas for trivial convenience features that go beyond strict wrapping

I'm wondering whether it would be in scope of this project to maybe do a little bit more than strict wrapping, and add some (opinionated) convenience functions here and there. Specifically, I'm thinking about persisting the cache between application runs, which Caffeine is prepared for, but does not implement directly because "Java serialization is pretty bad" and "The intent is to [...] not [to] dictate how it should be done".
With Kotlin and kotlinx.serialization, serialization is in good shape IMO, and using Protobuf could be a good candidate to save / restore the in-memory cache.
What do you think @sksamuel, would that be a reasonable functionality to add?

Hi @sschuberth
In general, adding convenience functions == yes.
But for persisting a cache, that seems very specific functionality to me ?

But for persisting a cache, that seems very specific functionality to me ?

Really? That's the first thing I was missing. But given that I'm not even using Caffeine / Aedile yet, I'm trusting on your guys here. Maybe I'm simply trying to use the wrong library for my purpose. So let me close this.


Access to test network

Hi,
Finally, I have been able to add the driver to my Android application and get it to work, I think.
The problem I have is access to the bigchaindb test network.
I am using https://test.ipdb.io
and getting this failure:
java.net.UnknownHostException: Unable to resolve host "test.ipdb.io": No address associated with hostname
Is there another URL I should be using?
On the bigchaindb testnet site
https://testnet.bigchaindb.com/
there is no information for the java driver entry into the test network (I tired the one for Node,js, it didn't work)
Which URL should I use?
Thanks,
Alex Donnini

Hi,
I think
https://test.bigchaindb.com/api/v1/
works.
Thanks, Alex Donnini


Fix switch env if we only update the color of the environment

Switch environment only if we update the name of the environment

Codecov Report

Merging #280 into 2.x will not change coverage.
The diff coverage is 100%.

@@           Coverage Diff           @@
##              2.x     #280   +/-   ##
=======================================
  Coverage   76.54%   76.54%
=======================================
  Files          39       39
  Lines         759      759
=======================================
  Hits          581      581
  Misses        178      178

Impacted Files
Coverage Δ

src/vuex/modules/common/kuzzle/actions.js
89.79% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


quote-props

Current dependencies on/for this PR:

main

PR #65   👈

This comment was auto-generated by Graphite.


DolphinDB - qStudio locks up when DolphinDB server is off

I added a DolphinDB server.
Later I turned it off but opened qStudio to browse a mysql database.
The DolphinDB server was selected when I opened and seemed to cause the whole UI to freeze.
I had to force kill the process.

I meet the same problem, how to solve it?

Unless they offer setting a timeout, this would require changes from @Dolphindb   @yunangao123  @chengyitian


Add fantom-testnet, moonbeam and moonriver to graph-cli

Added fantom-testnet, moonbeam and moonriver to index.js.

@Web3Slimchance Do you mind rebasing and trying again?

Combined into this PR: https://github.com/graphprotocol/graph-cli/pull/909


[feature-request] Select GPU

Hey, many thanks for this library!
Just a suggestion, I believe it would be really handy to be able to explicitly specify which GPU(s) to use for training/inference.

Hey, thanks for the suggestion and kind words! Make sense and I would add it soon!

hey, you can now specify cuda_id as a variable for specific cuda device


New version: Oxen.Session version 1.12.3

Pull request has been created with komac v2.2.1 :rocket:
Microsoft Reviewers: Open in CodeFlow

/azp run

Possible duplicate package entry.
Similar installer SHA256 hash found in manifest:

InstallerSha256: 422ae4ffa584292d8d8ac38b5b8556a800fca2890d912159e99a5c74efbd4d15

manifests\o\OxenLabs\Session\1.12.3

Hi @tianyeeT,
Are these the same package?
PS C:\ManVal> find-WinGetPackage Oxen.Session

Name    Id           Version Source
----    --           ------- ------
Session Oxen.Session 1.12.2  winget

PS C:\ManVal> find-WinGetPackage OxenLabs.Session

Name    Id               Version Source
----    --               ------- ------
Session OxenLabs.Session 1.12.3  winget

Hi @stephengillie,
Sorry for the late. They are the same package according to the installer's url. It seems like there is a new repository maintaining the Session package called OxenLabs.Session.  Is the old one Oxen.Session not maintained anymore? Thank you for spotting this!

Happy to help. They should be merged, which is to say that the old one should be removed, if it's not used.


Remove unused scripts

@nedbat: This depends on #57

@shaunagm: And this one.

@nedbat: This one's rebased, and should be a quick read. =)

:+1:


doesn't actually add new subscriber to list

as the title says, it creates the subscriber correctly, but doesn't actually add to list
                new_subscriber = self.listmonk.create_subscriber(
<EMAIL_ADDRESS>                    name="Jane Doe",
                    list_ids={self.marketing_list_id},
                    pre_confirm=True,
                    attribs={"is_premium": True},
                )

never mind, the permissions weren't allowing access to lists
:)
surprised it doesn't throw an error, though...

I'm sorta surprised. However, if you interact with the API it's really crappy. The response code should have been 403 for permission denied right? Well, it was 200!
Here's the code making that call:
url = f"{url_base}{urls.subscribers}"
resp = httpx.post(
    url,
    auth=(username, password),
    json=model.model_dump(),
    headers=core_headers,
    follow_redirects=True,
)
resp.raise_for_status()

Notice the raise_for_status(), that should fail on anything but 200, 201.
If you want to play around and try to detect a failure outside of the HTTP status code I'd be happy to consider a PR. Or you could hassle the Listmonk project directly to fix their API. :)


Added support for 2 step passwords for iTC Transporter

This change was necessary, since the real password can't be used with iTunes Transporter. It requires an application specific password.
This PR adds the following:

Account manager now allows a custom prefix, which is used to store the application specific password
The transporter will now silently try to load the application specific password from the keychain (if it exists), and fallback to the standard way of handling the password
If the upload fails due to 2 step verification, the user will be prompted for an application specific password

Obligatory 🚀

Outdated branch, closed in favor of https://github.com/fastlane/fastlane/pull/4276


Add manual test for node delete

https://github.com/longhorn/longhorn/issues/2186

IN general LGTM, have put some comments.
Should we mention when the remove node should be greyed out or enabled?


Benchmarks

[ ] Solve Burgers' equation by finite element method
[ ] Burgers' equation by Neural Fourier Operators

For the second task, please refer to the example.
The dataset for the example is exactly the same with the one that @zongyi-li used in his repo.

Should this be documented? Or just give an example code or benchmark report?

Let's see what we get first.

FEniCS.jl seems to be not maintained for a long time. I cannot even install the package.

Try this instead…
https://github.com/quinnj/There.jl

Well, I meant this：
https://github.com/Ferrite-FEM/Ferrite.jl

I built a new environment for FEniCS.jl and it works! Too many deps are not up-to-date.

Maybe I need to discuss with you directly.

Does solving a finite element method need a analytic solution?

That's OK, I'll take care of the whole task.

If there is anything I can help, just let me know.

I did some search. I found that Burgers' equation need to rewrite into the weak form to code it and you may want to take a look at this. There are three common types of boundary conditions for Burgers' equation: Dirichlet, Neumann and Robin’s. The example that FNO use is Dirichlet.

Maybe we can reference this.

Keep going, we will have better solution.

I am late to the discussion, but it would be nice to solve the time dependent version of the Burgers equation as well, in addition to the stationary one they solve in the paper. What do you think?


Syntax error

[x ] I have read freeCodeCamp's contribution guidelines.
[x ] My pull request has a descriptive title (not a vague title like Update index.md)
[x ] My pull request targets the master branch of freeCodeCamp.
[x ] None of my changes are plagiarized from another source without proper attribution.
[x ] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
Closes #XXXXX

Thank you @eirinisp for your contribution and congratulations on your first PR merge to this repo! 🎉
Hope to see more contributions from you in the future.


Add mokosmart LoRaWAN Gateway  MKGW2-LW by allen

Summary

Add mokosmart LoRaWAN Gateway  MKGW2-LW by allen
Screenshots

...
Changes

..Add mokosmart LoRaWAN Gateway  MKGW2-LW
...

Notes for Reviewers

...
Checklist

[ ] Scope: The referenced issue is addressed, there are no unrelated changes.
[ ] Run Locally: Verified that the docs build using make server, posted screenshots, verified external links. Test with HUGO_PARAMS_SEARCH_ENABLED=true if style changes will affect the search bar.
[ ] New Features Marked: Documentation for new features is marked using the new-in-version shortcode, according to the guidelines in CONTRIBUTING.
[ ] Style Guidelines: Documentation obeys style guidelines in CONTRIBUTING.
[ ] Commits: Commit messages follow guidelines in CONTRIBUTING, there are no fixup commits left.

Hey @Fakerallen , this document contains all references to Cisco's gateway. Did you mean to update those references?

Hey @Fakerallen , this document contains all references to Cisco's gateway. Did you mean to update those references?

NO, i just wan to add our gateway , our company  name is mokosmart.

Hey @Fakerallen , this document contains all references to Cisco's gateway. Did you mean to update those references?

@benolayinka i already change the content ,pls help to check ,thanks.