Feature localize help

Accessing the SKYUX_HOST if it exists from HOST, and grabbing the acceptLanguage so the Help config will be updated to use the locale.

Codecov Report

Merging #343 into master will not change coverage.
The diff coverage is 100%.

@@          Coverage Diff          @@
##           master   #343   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files          62     62
  Lines        1510   1513    +3
  Branches      234    236    +2
=====================================
+ Hits         1510   1513    +3

Flag
Coverage Δ

#builder
100% <ø> (ø)
:arrow_up:

#runtime
100% <ø> (ø)
:arrow_up:

#srcapp
100% <100%> (ø)
:arrow_up:

Impacted Files
Coverage Δ

src/app/app.component.ts
100% <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 7863770...226fca8. Read the comment docs.

@Blackbaud-PaulCrowder good call!  Complete :)


RateLimit Exceeded

We are hitting rate limit exceeded, any suggestion on how to fix this.
Example from log:
5:07:49 PM | CREATE_FAILED        | AWS::AppFlow::Flow      | SFtoGPActivityLice...ementaldevE55344D9
Resource handler returned message: "Error occurred during operation 'AWS::AppFlow::FlowToo Many Requests (Service: Appflow, Status Code: 429, Request ID: 1464ff79-0c0e-4957-9f33-dab5fdd50ebf)'." (RequestToken: ce34d169-2cbd-a30c-bd32-25cc6aaee837, HandlerErrorCode: GeneralServiceException)

Thank you @sanderbrinkhuis for creating this issue. Could you please share some details or steps that allow to reproduce this issue on our environment?
I also recommend to verify your account configuration. The issue might be related to service quota on your account. By default it is:
Your AWS account has the following quotas related to Amazon AppFlow.

Number of flows per account: 1,000

Number of flow runs per month: 10 million

Number of concurrent flow runs at any time: 1000

This is reaction from AWS support:
_"From the case notes I understand you are experiencing an error 'AWS::AppFlow::FlowToo Many Requests' while creating 92 appflows using CDK. Please feel free to elaborate or correct me if my understanding varies in any way.
As per the reference [1] this is a bug and workaround is to force the resources to be created in serial instead of in parallel, by making them depend on each other. Request you to kindly go through the reference document to find the process."_
It seems to be a bug similar too:  https://github.com/aws-cloudformation/cloudformation-coverage-roadmap/issues/1095

Hey, I check the issue and it looks as it is more related to CloudFormation and we are not able to fix it in cdk-appflow.


[BUG] Upgrade to 1.2 not possible due to wrongly incompatible Kubernetes version

Describe the bug
When trying to upgrade longhorn 1.1.2 to longhorn 1.2 from cluster manager the following error appears:
Wait helm template failed. Error: chart requires kubeVersion: >=1.18.0-0 which is incompatible with Kubernetes v1.16.0 Use --debug flag to render out invalid YAML : exit status 1
Environment:

Longhorn version: 1.1.2 to 1.2
Installation method (e.g. Rancher Catalog App/Helm/Kubectl): Rancher Catalog App
Kubernetes distro (e.g. RKE/K3s/EKS/OpenShift) and version: rancher kubernetes v1.18.3

Please note that 1.2.0 will only support K8s >= 1.18, because of the CSI components update.
ref: https://longhorn.io/docs/1.2.0/deploy/important-notes/

@timmy59100 can you confirm that all your nodes are running kubernetes v1.18.3 as you mentioned in your environment?

@joshimoo
NAME                   STATUS   ROLES               AGE    VERSION
k8s-centos-dev-ec-01   Ready    controlplane,etcd   525d   v1.18.3
k8s-centos-dev-ec-02   Ready    controlplane,etcd   290d   v1.18.3
k8s-centos-dev-ec-03   Ready    controlplane,etcd   290d   v1.18.3
k8s-centos-dev-w-01    Ready    worker              525d   v1.18.3
k8s-centos-dev-w-02    Ready    worker              430d   v1.18.3
k8s-centos-dev-w-03    Ready    worker              303d   v1.18.3

cc @PhanLe1010 @khushboo-rancher

It is weird, the Helm error message seems complaining that Helm detect Kubernetes 1.16.0 in the cluster:

Wait helm template failed. Error: chart requires kubeVersion: >=1.18.0-0 which is incompatible with Kubernetes v1.16.0 Use --debug flag to render out invalid YAML : exit status 1

Can you double check if it is the correct cluster you are referring to?

Definitely the correct cluster. Maybe the kubeVersion is wrong in the older rancher releases. Do you know how i get the kubeversion?

@timmy59100  Can you try Kubectl version ?

For the record, our QA @khushboo-rancher  just verified that installing Longhorn on Rancher Catalog App on rancher kubernetes v1.18.3 is working fine

@PhanLe1010
Client Version: version.Info{Major:"1", Minor:"18", GitVersion:"v1.18.6", GitCommit:"dff82dc0de47299ab66c83c626e08b245ab19037", GitTreeState:"clean", BuildDate:"2020-07-15T16:58:53Z", GoVersion:"go1.13.9", Compiler:"gc", Platform:"linux/amd64"} Server Version: version.Info{Major:"1", Minor:"18", GitVersion:"v1.18.3", GitCommit:"2e7996e3e2712684bc73f0dec0200d64eec7fe40", GitTreeState:"clean", BuildDate:"2020-05-20T12:43:34Z", GoVersion:"go1.13.9", Compiler:"gc", Platform:"linux/amd64"}
Do I have to upgrade the cluster?

@timmy59100
The Kubernetes version looks fine. It is weird. Can we have a full log from the installation?

@PhanLe1010 How do I get the installation log in the catalog app installation?

@timmy59100
Can you try to install with Helm to see if you get the same error? https://longhorn.io/docs/1.2.0/deploy/install/install-with-helm/

Is this compatible with the catalog app method?

With helm 2:
helm install longhorn/longhorn --name longhorn --namespace longhorn-system --dry-run
NAME:   longhorn

With helm 2:
helm install longhorn/longhorn --name longhorn --namespace longhorn-system --dry-run
NAME:   longhorn

I did a quick look at the helm 2.17.0 codebase, it did not contain the message chart requires kubeVersion.
But it is inside the helm 3 (I check the helm 3.4.1).
Would you please check it with helm 3?

NOTES:
Longhorn is now installed on the cluster!
Please wait a few minutes for other Longhorn components such as CSI deployments, Engine Images, and Instance Managers to be initialized.

So, it works now?

That's just the dry run with helm 3.

Okay, I think it would work with helm 3 install/upgrade.

https://github.com/helm/helm/blob/v3.7.0/pkg/action/install.go#L259
https://github.com/helm/helm/blob/v3.7.0/pkg/action/action.go#L105-L116

What is the Rancher server version?

2.4.6

Just found that it's not possible to install 1.2.0 in an EKS cluster with Helm v3:

Error: chart requires kubeVersion: >=v1.18.0 which is incompatible with Kubernetes v1.21.2-eks-0389ca3

$ kubectl version
Server Version: version.Info{
  Major: "1",
  Minor: "21+",
  GitVersion: "v1.21.2-eks-0389ca3",
  GitCommit: "8a4e27b9d88142bbdd21b997b532eb6d493df6d2",
  GitTreeState: "clean",
  BuildDate: "2021-07-31T01:34:46Z",
  GoVersion: "go1.16.5",
  Compiler: "gc",
  Platform: "linux/amd64"
}

$ kubectl get nodes
NAME       STATUS   ROLES    AGE   VERSION
REDACTED   Ready    <none>   15d   v1.21.2-eks-55daa9d

$ helm version
version.BuildInfo{
  Version: "v3.7.0",
  GitCommit: "eeac83883cb4014fe60267ec6373570374ce770b",
  GitTreeState: "clean",
  GoVersion: "go1.17.1"
}

I'm also running into the same issue with Kubernetes v1.18.20-eks as @xabinapal
Server Version: version.Info{Major:"1", Minor:"18+", GitVersion:"v1.18.20-eks-8c579e", GitCommit:"8c579edfc914f013ff48b2a2b2c1308fdcacc53f", GitTreeState:"clean", BuildDate:"2021-07-31T01:34:13Z", GoVersion:"go1.13.15", Compiler:"gc", Platform:"linux/amd64"}

version.BuildInfo{Version:"v3.6.3", GitCommit:"d506314abfb5d21419df8c7e7e68012379db2354", GitTreeState:"dirty", GoVersion:"go1.16.6"}

helm chart requires kubeVersion: >=v1.18.0 which is incompatible with Kubernetes v1.18.20-eks-8c579e

Thanks @pnduati
It's a good website do check semver https://jubianchi.github.io/semver-check/#/


Error remove_all_edges on new empty dimension

Describe what did you try to do with TM1py
Removing edges from a new dimension that is empty is throwing an error.
tm1.hierarchies.remove_all_edges(dimension_name='Manufacturer')
Describe what's not working the way you expect
It is a new dimension that is empty, and be default the hierarchy with the same name should exist.
So I did not expect an error to occur.
Version

TM1py 1.5.0
TM1 Server Version: 11.8.00100.13

Additional context
Error message and the stack trace
  File "C:\ProgramData\Anaconda3\lib\site-packages\TM1py\Services\RestService.py", line 385, in verify_response
    headers=response.headers)
TM1py.Exceptions.Exceptions.TM1pyRestException: Text: {"error":{"code":"278","message":"'Manufacturer' can not be found in collection of type 'Hierarchy'."}} Status Code: 404 Reason: Not Found Headers: {'Content-Length': '115', 'Connection': 'keep-alive', 'Content-Encoding': 'gzip', 'Cache-Control': 'no-cache', 'Content-Type': 'application/json; charset=utf-8', 'OData-Version': '4.0'}

Hi @cubewise-gng,
I think the problem is that TM1 11.8 doesn't create a same-named hierarchy implicitly when a dimension is created through REST/TM1py.
This produces False in TM1 11.8
with TM1Service(address="localhost", port=12354, user="admin", password="apple", ssl=True) as tm1:
    dimension = Dimension(name="Test4")
    tm1.dimensions.create(dimension)
    print(tm1.hierarchies.exists(dimension_name="Test4", hierarchy_name="Test4"))

I can not verify it with my current setup, but I think in earlier versions of TM1, the same-named hierarchy would be created implicitly.
If you create the same-named hierarchy explicitly in your script, it should work.
from TM1py import TM1Service, Dimension, Hierarchy

with TM1Service(address="localhost", port=12354, user="admin", password="apple", ssl=True) as tm1:
    dimension = Dimension(name="Test3")
    dimension.add_hierarchy(Hierarchy(name="Test3",dimension_name="Test3"))
    tm1.dimensions.create(dimension)
    tm1.hierarchies.remove_all_edges("Test3", "Test3")

Thanks @MariusWirtz, I'll keep note of that when creating dimensions through TM1py.

Hi @MariusWirtz
Just thinking about it, can the TM1py function tm1.dimensions.create just build the default hierarchy for me to behave like native TM1?
It helps eliminate extra lines of code needed to check if hierarchy exists and create it before using tm1.hierarchies.remove_all_edges?

I think it should not be created implicitly. It can create clutter in the server and if it is technically necessary than TM1 should create it itself (again!) or it is not than we shouldn't force the user to have it.

Thanks @scrumthing, that makes sense. Will take the explicit approach.


flutter doctor --android-licenses : Android sdkmanager tool not found

I am facing this issue with the latest installation of Android Studio (3.6). Flutter doctor is reporting:
`
Doctor summary (to see all details, run flutter doctor -v):
[√] Flutter (Channel stable, v1.12.13+hotfix.8, on Microsoft Windows [Version 10.0.18362.657], locale en-US)
[!] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
X Android license status unknown.
Try re-installing or updating your Android SDK Manager.
See https://developer.android.com/studio/#downloads or visit https://flutter.dev/setup/#android-setup for detailed
instructions.
[√] Android Studio (version 3.6)
[!] Connected device
! No devices available
! Doctor found issues in 2 categories.
`
when the flutter doctor --android-licenses command was run:
Android sdkmanager tool not found (C:\Users\User\AppData\Local\Android\sdk\tools\bin\sdkmanager). Try re-installing or updating your Android SDK, visit https://flutter.dev/setup/#android-setup for detailed instructions.
The location specified by the tool (C:\Users\User\AppData\Local\Android\sdk\tools\bin\sdkmanager) does not exist.

Also same issue: when i call sdkmanager --version
Warning: Could not create settings
java.lang.IllegalArgumentException
at com.android.sdklib.tool.sdkmanager.SdkManagerCliSettings.(SdkManagerCliSettings.java:428)
at com.android.sdklib.tool.sdkmanager.SdkManagerCliSettings.createSettings(SdkManagerCliSettings.java:152)
at com.android.sdklib.tool.sdkmanager.SdkManagerCliSettings.createSettings(SdkManagerCliSettings.java:134)
at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:57)
at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:48)
but if i run sdkmanager --sdk_root=${ANDROID_HOME} --update it works. but flutter doctor --android-licenses still failed

also
flutter doctor --android-licenses -v
A newer version of the Android SDK is required. To update, run:
/Users/nali/Library/Android/sdk/tools/bin/sdkmanager --update
#0      throwToolExit (package:flutter_tools/src/base/common.dart:14:3)
#1      AndroidLicenseValidator.runLicenseManager
(package:flutter_tools/src/android/android_workflow.dart:365:7)
#2      Doctor.diagnose (package:flutter_tools/src/doctor.dart:262:38)
#3      DoctorCommand.runCommand
(package:flutter_tools/src/commands/doctor.dart:58:39)
#4      FlutterCommand.verifyThenRunCommand
(package:flutter_tools/src/runner/flutter_command.dart:711:18)
#5      _rootRunUnary (dart:async/zone.dart:1134:38)
#6      _CustomZone.runUnary (dart:async/zone.dart:1031:19)
#7      _FutureListener.handleValue (dart:async/future_impl.dart:140:18)
#8      Future._propagateToListeners.handleValueCallback
(dart:async/future_impl.dart:682:45)
#9      Future._propagateToListeners (dart:async/future_impl.dart:711:32)
#10     Future._completeWithValue (dart:async/future_impl.dart:526:5)
#11     Future._asyncComplete.
(dart:async/future_impl.dart:556:7)
#12     _rootRun (dart:async/zone.dart:1126:13)
#13     _CustomZone.run (dart:async/zone.dart:1023:19)
#14     _CustomZone.runGuarded (dart:async/zone.dart:925:7)
#15     _CustomZone.bindCallbackGuarded.
(dart:async/zone.dart:965:23)
#16     _microtaskLoop (dart:async/schedule_microtask.dart:43:21)
#17     _startMicrotaskLoop (dart:async/schedule_microtask.dart:52:5)
#18     _runPendingImmediateCallback
(dart:isolate-patch/isolate_patch.dart:118:13)
#19     _Timer._runTimers (dart:isolate-patch/timer_impl.dart:405:11)
#20     _Timer._handleMessage (dart:isolate-patch/timer_impl.dart:429:5)
#21     _RawReceivePortImpl._handleMessage
(dart:isolate-patch/isolate_patch.dart:168:12)

Also it is strange I can run success from Android Studio, but can't flutter run from command line.

I having same problem
PS D:\Workplace\flutter_projects> flutter doctor -v
[√] Flutter (Channel stable, v1.12.13+hotfix.8, on Microsoft Windows [Version 10.0.18363.657], locale en-MY)
    • Flutter version 1.12.13+hotfix.8 at D:\Workplace\flutter
    • Framework revision 0b8abb4724 (3 weeks ago), 2020-02-11 11:44:36 -0800
    • Engine revision e1e6ced81d
    • Dart version 2.7.0

[!] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
    • Android SDK at C:\Users\Robbi\AppData\Local\Android\sdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-29, build-tools 29.0.3
    • Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)
    X Android license status unknown.
      Try re-installing or updating your Android SDK Manager.
      See https://developer.android.com/studio/#downloads or visit https://flutter.dev/setup/#android-setup for detailed
      instructions.

[√] Android Studio (version 3.6)
    • Android Studio at C:\Program Files\Android\Android Studio
    • Flutter plugin version 44.0.2
    • Dart plugin version 192.7761
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)

[√] VS Code (version 1.42.1)
    • VS Code at C:\Users\Robbi\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.8.1

[√] Connected device (1 available)
    • SM A505F • XXXXXYYYZHW • android-arm64 • Android 9 (API 28)

! Doctor found issues in 1 category.

I try accepting the license with ./sdkmanager.bat --licenses (using this step https://robbinespu.gitlab.io/blog/2020/03/02/flutter-issue-android-license-status-unknown-on-windows/)
but it still does't work
and I notice there is no TOOL directory on SDK

Hi @vicentetfreitas
could you please run flutter doctor --android-licence --verbose
@gdlis  did you follow the instructions in your logs?
PS D:\Workplace\flutter_projects> flutter doctor --android-licenses -
Android sdkmanager tool not found (C:\Users\Robbi\AppData\Local\Android\sdk\tools\bin\sdkmanager).
Try re-installing or updating your Android SDK,
visit https://flutter.dev/setup/#android-setup for detailed instructions.

Thank you both

Hi @vicentetfreitas
Your SDK folder doesn't have SDK Tools

Open Android Studio, go to SDK Manager and SDK tools tab and make sure Android SDK Tools is installed

Then run flutter doctor --android-licence --verbose and accept all licenses
Thank you

there is NO android SDK tools appears on android studio 3.6.1

Android sdkmanager tool not found (C:\Users\KD\AppData\Local\Android\sdk\tools\bin\sdkmanager).
Try re-installing or updating your Android SDK,
visit https://flutter.dev/setup/#android-setup for detailed instructions.
#0      throwToolExit (package:flutter_tools/src/base/common.dart:27:3)
#1      AndroidLicenseValidator.runLicenseManager (package:flutter_tools/src/android/android_workflow.dart:309:7)
#2      Doctor.diagnose (package:flutter_tools/src/doctor.dart:247:38)
#3      DoctorCommand.runCommand (package:flutter_tools/src/commands/doctor.dart:58:39)
#4      FlutterCommand.verifyThenRunCommand (package:flutter_tools/src/runner/flutter_command.dart:638:18)
#5      _asyncThenWrapperHelper. (dart:async-patch/async_patch.dart:75:64)
#6      _rootRunUnary (dart:async/zone.dart:1134:38)
#7      _CustomZone.runUnary (dart:async/zone.dart:1031:19)
#8      _FutureListener.handleValue (dart:async/future_impl.dart:140:18)
#9      Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:682:45)
#10     Future._propagateToListeners (dart:async/future_impl.dart:711:32)
#11     Future._completeWithValue (dart:async/future_impl.dart:526:5)
#12     Future._asyncComplete. (dart:async/future_impl.dart:556:7)
#13     _rootRun (dart:async/zone.dart:1126:13)
#14     _CustomZone.run (dart:async/zone.dart:1023:19)
#15     _CustomZone.runGuarded (dart:async/zone.dart:925:7)
#16     _CustomZone.bindCallbackGuarded. (dart:async/zone.dart:965:23)
#17     _microtaskLoop (dart:async/schedule_microtask.dart:43:21)
#18     _startMicrotaskLoop (dart:async/schedule_microtask.dart:52:5)
#19     _runPendingImmediateCallback (dart:isolate-patch/isolate_patch.dart:118:13)
#20     _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:169:5)
what to do??

Hi @vicentetfreitas @RobbiNespu  @mukkulsingh
If you can't SDK tools in your SDK manager in your Android Studio
Please download it manually from https://developer.android.com/studio
Open link and scroll the all way down until you see Command line tools only
Download Windows Zip if you're on Windows and extract this zip and paste the tools in your SDK and then run flutter doctor --android-licence --verbose
Thank you

Hello @TahaTesser  Have Tried doing what you wrote. Unfortunately it didn't worked.
C:\Users\KD\AppData\Local\Android\Sdk\tools\bin>flutter doctor --android-licenses --verbose
A newer version of the Android SDK is required. To update, run:
C:\Users\KD\AppData\Local\Android\sdk\tools\bin\sdkmanager --update
#0      throwToolExit (package:flutter_tools/src/base/common.dart:27:3)
#1      AndroidLicenseValidator.runLicenseManager (package:flutter_tools/src/android/android_workflow.dart:315:7)
#2      Doctor.diagnose (package:flutter_tools/src/doctor.dart:247:38)
#3      DoctorCommand.runCommand (package:flutter_tools/src/commands/doctor.dart:58:39)
#4      FlutterCommand.verifyThenRunCommand (package:flutter_tools/src/runner/flutter_command.dart:638:18)
#5      _asyncThenWrapperHelper. (dart:async-patch/async_patch.dart:75:64)
#6      _rootRunUnary (dart:async/zone.dart:1134:38)
#7      _CustomZone.runUnary (dart:async/zone.dart:1031:19)
#8      _FutureListener.handleValue (dart:async/future_impl.dart:140:18)
#9      Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:682:45)
#10     Future._propagateToListeners (dart:async/future_impl.dart:711:32)
#11     Future._completeWithValue (dart:async/future_impl.dart:526:5)
#12     Future._asyncComplete. (dart:async/future_impl.dart:556:7)
#13     _rootRun (dart:async/zone.dart:1126:13)
#14     _CustomZone.run (dart:async/zone.dart:1023:19)
#15     _CustomZone.runGuarded (dart:async/zone.dart:925:7)
#16     _CustomZone.bindCallbackGuarded. (dart:async/zone.dart:965:23)
#17     _microtaskLoop (dart:async/schedule_microtask.dart:43:21)
#18     _startMicrotaskLoop (dart:async/schedule_microtask.dart:52:5)
#19     _runPendingImmediateCallback (dart:isolate-patch/isolate_patch.dart:118:13)
#20     _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:169:5)

C:\Users\KD\AppData\Local\Android\Sdk\tools\bin>sdkmanager --update
Warning: Could not create settings
java.lang.IllegalArgumentException
at com.android.sdklib.tool.sdkmanager.SdkManagerCliSettings.(SdkManagerCliSettings.java:428)
at com.android.sdklib.tool.sdkmanager.SdkManagerCliSettings.createSettings(SdkManagerCliSettings.java:152)
at com.android.sdklib.tool.sdkmanager.SdkManagerCliSettings.createSettings(SdkManagerCliSettings.java:134)
at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:57)
at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:48)
Usage:
sdkmanager [--uninstall] [] [--package_file=] [...]
sdkmanager --update []
sdkmanager --list []
sdkmanager --licenses []
sdkmanager --version
With --install (optional), installs or updates packages.
By default, the listed packages are installed or (if already installed)
updated to the latest version.
With --uninstall, uninstall the listed packages.
<package> is a sdk-style path (e.g. "build-tools;23.0.0" or
         "platforms;android-23").
<package-file> is a text file where each line is a sdk-style path
               of a package to install or uninstall.
Multiple --package_file arguments may be specified in combination
with explicit paths.

With --update, all installed packages are updated to the latest version.
With --list, all installed and available packages are printed out.
With --licenses, show and offer the option to accept licenses for all
available packages that have not already been accepted.
With --version, prints the current version of sdkmanager.
Common Arguments:
--sdk_root=: Use the specified SDK root instead of the SDK
containing this tool
--channel=<channelId>: Include packages in channels up to <channelId>.
                       Common channels are:
                       0 (Stable), 1 (Beta), 2 (Dev), and 3 (Canary).

--include_obsolete: With --list, show obsolete packages in the
                    package listing. With --update, update obsolete
                    packages as well as non-obsolete.

--no_https: Force all connections to use http rather than https.

--proxy=<http | socks>: Connect via a proxy of the given type.

--proxy_host=<IP or DNS address>: IP or DNS address of the proxy to use.

--proxy_port=<port #>: Proxy port to connect to.

--verbose: Enable verbose output.

If the env var REPO_OS_OVERRIDE is set to "windows",
"macosx", or "linux", packages will be downloaded for that OS.

Hi all
this is also a possible solution
Thank you

@iapicca
Thanks for the effort but still id didn't worked.
I tried upgrading sdk from Android/Sdk/cmdline-tools/latest
it did upgraded and when i ran "sdkmanager --licenses" i was able to accept licenses
but even after this flutter doctor gives this:-
C:\Users\KD\AppData\Local\Android\Sdk\cmdline-tools\latest\bin>flutter doctor -v
[√] Flutter (Channel beta, v1.14.6, on Microsoft Windows [Version 10.0.17763.805], locale en-IN)
• Flutter version 1.14.6 at C:\flutter
• Framework revision fabeb2a16f (5 weeks ago), 2020-01-28 07:56:51 -0800
• Engine revision c4229bfbba
• Dart version 2.8.0 (build 2.8.0-dev.5.0 fc3af737c7)
[!] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
• Android SDK at C:\Users\KD\AppData\Local\Android\sdk
• Android NDK location not configured (optional; useful for native profiling support)
• Platform android-29, build-tools 29.0.3
• Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
• Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)
X Android license status unknown.
Try re-installing or updating your Android SDK Manager.
See https://developer.android.com/studio/#downloads or visit https://flutter.dev/setup/#android-setup for detailed instructions.
[√] Chrome - develop for the web
• Chrome at C:\Program Files (x86)\Google\Chrome\Application\chrome.exe
[√] Android Studio (version 3.6)
• Android Studio at C:\Program Files\Android\Android Studio
• Flutter plugin version 44.0.2
• Dart plugin version 192.7761
• Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)
[√] VS Code (version 1.42.1)
• VS Code at C:\Users\KD\AppData\Local\Programs\Microsoft VS Code
• Flutter extension version 3.4.1
[√] Connected device (2 available)
• Chrome     • chrome     • web-javascript • Google Chrome 80.0.3987.122
• Web Server • web-server • web-javascript • Flutter Tools
! Doctor found issues in 1 category.
Came across to many solution but not able to get through this issue with any of those solution out there.
i would like to know why does flutter doctor tell us to update sdk even if we are using the updated (29) one.

This is my solution:
1.Download "Command line tools only" from https://developer.android.com/studio , then you'll get the "tools" folder, move it to the sdk root.
2.Restart Android Studio, you'll get a sdk-tools update tips, click update.
3. Run command  "flutter doctor --android-licenses",  the licences will shown.

Re: 0x10000's suggestion: this might work in some cases but did not work for me.
A more reliable solution is in my github comment (by mebden) here and in the stackoverflow exchange here.
Basically, in the screen shot above, uncheck Hide Obsolete Packages and you'll see Android SDK Tools (Obsolete) 26.1.1.
My hope is that this bug can be addressed by somebody in the next Flutter version, as several users have been affected from last week onwards.

Hi @vicentetfreitas
Your SDK tools folder name is wrong, rename it to `tools and you don't need latest folder i your tools

My solution same like mentioned before, the SDK tool are obsolete so it won't appear by default.
Open your SDK manager then uncheck Hide Obsolete Packages and you’ll see Android SDK Tools (Obsolete) 26.1.1 appears.
if needed we can download package manually here https://dl.google.com/android/repository/sdk-tools-windows-4333796.zip

Google updated their android studio and didn't make flutter adapt to it which made the installation way harder ..

Having the same issue too.
Issue 51854

Re: 0x10000's suggestion: this might work in some cases but did not work for me.
A more reliable solution is in my github comment (by mebden) here and in the stackoverflow exchange here.
Basically, in the screen shot above, uncheck Hide Obsolete Packages and you'll see Android SDK Tools (Obsolete) 26.1.1.
My hope is that this bug can be addressed by somebody in the next Flutter version, as several users have been affected from last week onwards.

This is a much better and robust way. Thanks!

Guys , What worked with me was that I did the sdk update from inside android studio. Then I did
flutter doctor --android-licenses

from the terminal and it worked.

My solution same like mentioned before, the SDK tool are obsolete so it won't appear by default.
Open your SDK manager then uncheck Hide Obsolete Packages and you’ll see Android SDK Tools (Obsolete) 26.1.1 appears.
if needed we can download package manually here https://dl.google.com/android/repository/sdk-tools-windows-4333796.zip

This solution worked for me.

On the latest master we've updated flutter doctor --android-licenses to also use the Command-Line tools if its available, since this component is not marked as obsolete. We're still working on a plan to make this work for everyone, but if you've updated to the latest SDK the best work around for now is to download the obsolete Platform-Tools: https://github.com/flutter/flutter/issues/51712#issuecomment-593721423

@jonahwilliams After running flutter doctor --android-licenses, an error occured:
A newer version of the Android SDK is required. To update, run:
C:\Users\raphp\AppData\Local\Android\sdk\tools\bin\sdkmanager --update

After doing the suggested command:
Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/annotation/XmlSchema at com.android.repository.api.SchemaModule$SchemaModuleVersion.<init>(SchemaModule.java:156) at com.android.repository.api.SchemaModule.<init>(SchemaModule.java:75) at com.android.sdklib.repository.AndroidSdkHandler.<clinit>(AndroidSdkHandler.java:81) at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:73) at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:48)
Caused by: java.lang.ClassNotFoundException: javax.xml.bind.annotation.XmlSchema at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581) at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
... 5 more

@jonahwilliams : I tested with the channel master (which invoked #51980). Seems it still not work as expected. I have OpenJDK 11 and AndroidSDK with cmdline-tools (latest) installed.

@Happin3ss that error is unrelated. Either use 1.8, or follow online instructions like https://stackoverflow.com/questions/53076422/getting-android-sdkmanager-to-run-with-java-11

@raphtlw you also need to install a compatible Java SDK, this hasn't changed

@jonahwilliams I am using JDK 11 SE tho

@jonahwilliams  which is a compatible java SDK ?
from fullter doctor i have

Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)

and it doesn't fire any problem

This solution worked for me.
1.Scroll down and Download Command line tools only from this link .[https://developer.android.com/studio#downloads]
2.Put your Downloaded file (tools) in this location C:\Users\ABC\AppData\ABC\Android\Sdk
3.close your android studio , and again open android studio. And check update .
4.open command line and past (flutter doctor --android-licenses) ,don’t use parenthesis.
5. And press ‘y’ for accept
6. Run flutter doctor you should be good.

for android license status unknown  issue I would recommend you guys to follow this answer
https://stackoverflow.com/a/60705505/8253662

Still having this problem: ✗ Android license status unknown.
Log:

Runned flutter doctor

[!] Android toolchain - develop for Android devices (Android SDK version 30.0.0-rc1)     ✗ Android license status unknown.       Try re-installing or updating your Android SDK Manager.       See https://developer.android.com/studio/#downloads or visit https://flutter.dev/setup/#android-setup for detailed instructions.

Runned flutter doctor --android-licenses

A newer version of the Android SDK is required. To update, run: /Users/x/Library/Android/sdk/tools/bin/sdkmanager --update

Runned /Users/x/Library/Android/sdk/tools/bin/sdkmanager --update

Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/annotation/XmlSchema 	at com.android.repository.api.SchemaModule$SchemaModuleVersion.<init>(SchemaModule.java:156) 	at com.android.repository.api.SchemaModule.<init>(SchemaModule.java:75) 	at com.android.sdklib.repository.AndroidSdkHandler.<clinit>(AndroidSdkHandler.java:81) 	at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:73) 	at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:48) Caused by: java.lang.ClassNotFoundException: javax.xml.bind.annotation.XmlSchema 	at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:602) 	at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178) 	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521) 	... 5 more
Cannot update SDKmanager. (I've already tried re-installing all SDK tools via Android Studio).
So, what should I do now?

I think that if so many people are facing problems they problem should be resolved by the flutter team

Still having this problem: ✗ Android license status unknown.
Log:
1. Runned `flutter doctor`

[!] Android toolchain - develop for Android devices (Android SDK version 30.0.0-rc1) ✗ Android license status unknown. Try re-installing or updating your Android SDK Manager. See https://developer.android.com/studio/#downloads or visit https://flutter.dev/setup/#android-setup for detailed instructions.
1. Runned `flutter doctor --android-licenses`

A newer version of the Android SDK is required. To update, run: /Users/x/Library/Android/sdk/tools/bin/sdkmanager --update
1. Runned `/Users/x/Library/Android/sdk/tools/bin/sdkmanager --update`

Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/annotation/XmlSchema at com.android.repository.api.SchemaModule$SchemaModuleVersion.<init>(SchemaModule.java:156) at com.android.repository.api.SchemaModule.<init>(SchemaModule.java:75) at com.android.sdklib.repository.AndroidSdkHandler.<clinit>(AndroidSdkHandler.java:81) at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:73) at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:48) Caused by: java.lang.ClassNotFoundException: javax.xml.bind.annotation.XmlSchema at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:602) at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521) ... 5 more
Cannot update SDKmanager. (I've already tried re-installing all SDK tools via Android Studio).
So, what should I do now?

close your android studio and again run it ,Now check for update from your android studio

Still having this problem: ✗ Android license status unknown.
Log:
1. Runned `flutter doctor`

[!] Android toolchain - develop for Android devices (Android SDK version 30.0.0-rc1) ✗ Android license status unknown. Try re-installing or updating your Android SDK Manager. See https://developer.android.com/studio/#downloads or visit https://flutter.dev/setup/#android-setup for detailed instructions.
1. Runned `flutter doctor --android-licenses`

A newer version of the Android SDK is required. To update, run: /Users/x/Library/Android/sdk/tools/bin/sdkmanager --update
1. Runned `/Users/x/Library/Android/sdk/tools/bin/sdkmanager --update`

Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/annotation/XmlSchema at com.android.repository.api.SchemaModule$SchemaModuleVersion.<init>(SchemaModule.java:156) at com.android.repository.api.SchemaModule.<init>(SchemaModule.java:75) at com.android.sdklib.repository.AndroidSdkHandler.<clinit>(AndroidSdkHandler.java:81) at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:73) at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:48) Caused by: java.lang.ClassNotFoundException: javax.xml.bind.annotation.XmlSchema at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:602) at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521) ... 5 more
Cannot update SDKmanager. (I've already tried re-installing all SDK tools via Android Studio).
So, what should I do now?

close your android studio and again run it ,Now check for update from your android studio

Android Studio fully upgraded. Still not working.

This issue is confirmed in the Flutter 1.12.13+hotfix.8 release, which at the time of writing is the latest version available in the stable channel. Later builds contain a fix; in the meantime, the workaround is to manually add the Android SDK Tools (Obsolete) tool from the Android SDK Manager dialog in Android Studio. More detailed instructions can be found in the getting started documentation.

This issue is confirmed in the Flutter 1.12.13+hotfix.8 release, which at the time of writing is the latest version available in the stable channel. Later builds contain a fix; in the meantime, the workaround is to manually add the Android SDK Tools (Obsolete) tool from the Android SDK Manager dialog in Android Studio. More detailed instructions can be found in the getting started documentation.

heres the step by step guide

open sdk manager
under sdk tools uncheck hide obsolete packages at the bottom
then you should see an option called Android Sdk Tools (Obsolete)
[]
check it and apply and let the studio download the package
once done run the command flutter doctor and it should now prompt you to run flutter doctor --android-licenses
once you run the license command accept all licenses by hitting y and it should solve the problem

I solved my problem by doing this,

Visit this link (https://developer.android.com/studio) and then Scroll down and Download your OS-specific Command line tools.
Drop your Downloaded file (tools) in this location C:\Users/ABC/Android/Sdk
Close your android studio, and again open android studio. And check update.
Open your terminal or command line and paste -> flutter doctor --android-licenses
And press ‘y’ for accept to accept the different licenses
Run flutter doctor you should be good.

I solved my problem by doing this,

Visit this link (https://developer.android.com/studio) and then Scroll down and Download your OS-specific Command line tools.
Drop your Downloaded file (tools) in this location C:\Users/ABC/Android/Sdk
Close your android studio, and again open android studio. And check update.
Open your terminal or command line and paste -> flutter doctor --android-licenses
And press ‘y’ for accept to accept the different licenses
Run flutter doctor you should be good.

I already have the 'tools' folder because Android Studio was installed properly, with all the packages including 'Command line tools'. Running on macOS btw.

I solved my problem by doing this,

Visit this link (https://developer.android.com/studio) and then Scroll down and Download your OS-specific Command line tools.
Drop your Downloaded file (tools) in this location C:\Users/ABC/Android/Sdk
Close your android studio, and again open android studio. And check update.
Open your terminal or command line and paste -> flutter doctor --android-licenses
And press ‘y’ for accept to accept the different licenses
Run flutter doctor you should be good.

I already have the 'tools' folder because Android Studio was installed properly, with all the packages including 'Command line tools'. Running on macOS btw.

The thing is, when I first installed Flutter all went fine and I already accepted all the licenses. When I tried 'flutter doctor' the next day, android licenses where back to not being accepted. I've tried everything, any other solutions?

I have the same problem, went through all propositions without success.
In my case I have the following error when running sdkmanager:
Warning: Could not create settings
java.lang.IllegalArgumentException
	at com.android.sdklib.tool.sdkmanager.SdkManagerCliSettings.<init>(SdkManagerCliSettings.java:428)
	at com.android.sdklib.tool.sdkmanager.SdkManagerCliSettings.createSettings(SdkManagerCliSettings.java:152)
	at com.android.sdklib.tool.sdkmanager.SdkManagerCliSettings.createSettings(SdkManagerCliSettings.java:134)
	at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:57)
	at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:48)
Usage:
  sdkmanager [--uninstall] [<common args>] [--package_file=<file>] [<packages>...]
  sdkmanager --update [<common args>]
  sdkmanager --list [<common args>]
  sdkmanager --licenses [<common args>]
  sdkmanager --version

With --install (optional), installs or updates packages.
    By default, the listed packages are installed or (if already installed)
    updated to the latest version.
With --uninstall, uninstall the listed packages.

    <package> is a sdk-style path (e.g. "build-tools;23.0.0" or
             "platforms;android-23").
    <package-file> is a text file where each line is a sdk-style path
                   of a package to install or uninstall.
    Multiple --package_file arguments may be specified in combination
    with explicit paths.

With --update, all installed packages are updated to the latest version.

With --list, all installed and available packages are printed out.

With --licenses, show and offer the option to accept licenses for all
     available packages that have not already been accepted.

With --version, prints the current version of sdkmanager.

Common Arguments:
    --sdk_root=<sdkRootPath>: Use the specified SDK root instead of the SDK
                              containing this tool

    --channel=<channelId>: Include packages in channels up to <channelId>.
                           Common channels are:
                           0 (Stable), 1 (Beta), 2 (Dev), and 3 (Canary).

    --include_obsolete: With --list, show obsolete packages in the
                        package listing. With --update, update obsolete
                        packages as well as non-obsolete.

    --no_https: Force all connections to use http rather than https.

    --proxy=<http | socks>: Connect via a proxy of the given type.

    --proxy_host=<IP or DNS address>: IP or DNS address of the proxy to use.

    --proxy_port=<port #>: Proxy port to connect to.

    --verbose: Enable verbose output.

* If the env var REPO_OS_OVERRIDE is set to "windows",
  "macosx", or "linux", packages will be downloaded for that OS.

I'm running MacOS Catalina

I have the same problem, went through all propositions without success.
In my case I have the following error when running sdkmanager:
Warning: Could not create settings
java.lang.IllegalArgumentException
	at com.android.sdklib.tool.sdkmanager.SdkManagerCliSettings.<init>(SdkManagerCliSettings.java:428)
	...

I got that. And this helped, using --sdk_root=${ANDROID_HOME} this step passes:
sdkmanager --update --sdk_root=${ANDROID_HOME}

However flutter doctor still does not complete successfully.

Here is how it worked for me.
I Installed Android SDK using studio.sh from official installer.
That created 2 folders: SDK folder which by default is ~/Android/Sdk, and folder  ~/.AndroidStudio3.6
After installation finished and faced several problems. I tried PolymathWhiz suggestion and I got a different message from the console.
Then I tried this:

Run studio.sh from Android SDK installer
Welcome to Android studio window appears
Click configure, then click sdk manager
Go to tab Sdk Tools
Check Android Sdk tools and click apply
For some reason it was unchecked after installation
flutter doctor output:

Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, v1.12.13+hotfix.8, on Linux, locale en_US.UTF-8)

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
[!] Android Studio (version 3.6)
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
[!] Connected device
    ! No devices available

Went to same configure window and clicked on plugins, then searched for flutter. Installed it. And now flutter doctor outputs:

Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, v1.12.13+hotfix.8, on Linux, locale en_US.UTF-8)

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
[✓] Android Studio (version 3.6)
[!] Connected device
    ! No devices available

! Doctor found issues in 1 category.

Which is good since I now only need to connect a device for it to work.

Here is how it worked for me.
I Installed Android SDK using studio.sh from official installer.
That created 2 folders: SDK folder which by default is ~/Android/Sdk, and folder ~/.AndroidStudio3.6
After installation finished and faced several problems. I tried PolymathWhiz suggestion and I got a different message from the console.
Then I tried this:

Run studio.sh from Android SDK installer
Welcome to Android studio window appears
Click configure, then click sdk manager
Go to tab Sdk Tools
Check Android Sdk tools and click apply
For some reason it was unchecked after installation
flutter doctor output:

Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, v1.12.13+hotfix.8, on Linux, locale en_US.UTF-8)

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
[!] Android Studio (version 3.6)
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
[!] Connected device
    ! No devices available

Went to same configure window and clicked on plugins, then searched for flutter. Installed it. And now flutter doctor outputs:

Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, v1.12.13+hotfix.8, on Linux, locale en_US.UTF-8)

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
[✓] Android Studio (version 3.6)
[!] Connected device
    ! No devices available

! Doctor found issues in 1 category.

Which is good since I now only need to connect a device for it to work.

Are you running on mac or PC?

After installation finished and faced several problems. I tried PolymathWhiz suggestion and I got a different message from the console.

@g8d3 thanks mate that trick worked !

Locking this issue to prevent it being polluted by other unrelated issues.
The issue reported at the top of the page is confirmed in the Flutter 1.12.13+hotfix.8 release, which at the time of writing is the latest version available in the stable channel. Later builds contain a fix; in the meantime, the workaround is to manually add the Android SDK Tools (Obsolete) tool from the Android SDK Manager dialog in Android Studio. More detailed instructions can be found in the getting started documentation.
For other issues, please open a new bug, including the results of flutter doctor -v.

Closing as fixed


where are the downloaded files stored?

There doesn't appear to be a way to set the download location of the image when using the quick create method. This seems to be clogging up my small ssd c: drive - why would you not allow people to specify where the temporary downloads go?

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

ID: 10344c5d-274e-de75-ecb6-11d53a377986
Version Independent ID: 4cea53b8-1864-f12b-f0d9-f208743475c8
Content: Create a Virtual Machine with Hyper-V
Content Source: virtualization/hyper-v-on-windows/quick-start/quick-create-virtual-machine.md
Product: windows-10-hyperv
GitHub Login: @scooley

I am also seeing this issue.

I'm using Windows version 18.03 (10.0.17134.376). I found a .vhdx file stored inside a zip file, downloaded to this location: C:\Users[My user]\AppData\Local\Temp. The installed virtual machine had this location C:\Users\Public\Documents\Hyper-V\Virtual hard disks
Changing this paths from GUI or Powershell would be a good improvement for Hyper-V.

And 18 months later still not option for choosing where the files to be stored.


How to Send Headers to Web API using Canopy?

Hi,
I would like to send some headers to Web API which I am calling from one Web API.
Kunal

Use Http.fs?

Http.fs will work for you like amir suggested.

Hi All
Thanks for your Reply!
I am trying to make request through canopy. Which will browse URL of Web API and In that I would like to pass Headers.
How to create complete request object along with headers and assign that to browser which we will open from Canopy.
Something like
url request; // request will contains headers also.
Thanks,
Kunal

I dont think that you can.  Read more here: http://stackoverflow.com/questions/15645093/setting-request-headers-in-selenium

Let me try it out!
Thanks
On Jul 4, 2016 22:28, "Chris Holt"<EMAIL_ADDRESS>wrote:

I dont think that you can. Read more here:
http://stackoverflow.com/questions/15645093/setting-request-headers-in-selenium
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/lefthandedgoat/canopy/issues/271#issuecomment-230327886,
or mute the thread
https://github.com/notifications/unsubscribe/ABrrZIurDd4d-1wNnVOoCIeAJ8-THtT7ks5qSTvSgaJpZM4JA05N
.

I tried it out but it could not help much!
I tried something like below.
Step 1: Open Browser with your API URL
Step 2: Delete the response received from that API call in browser and make browser screen blank.
Note: URL using which you are opening the browser it will return some error as response, as we are not passing the required headers so it may result into missing specific header error.
Step 3: Make Java script call through HttpClient and Set body of Browser with response received from HttpClient Call.
Step 4: Validate the  response received in browser using Canopy "Contains".
Thanks,
Kunal


Issue with Microsoft.Data.SqlClient.dll looking for Azure.Identity.dll version 1.7.0 but project has a dependency on version 1.8.0

Hi All,
Am facing issue with one of my windows  application which is using Microsoft.Data.SqlClient.dll  5.1.0 ( which has an internal dependency on azure.identity.dll ver >1.7.0).
There is a dependency on a nuget in application which is using Azure.Identity.dll 1.8.0.
All project dependencies shows dependency on version 1.8.0 and the same is getting packaged as part of MSI.
Issue : at runtime code is  looking for version 1.7.0 .
any help in understanding the exact cause would be helpful
Thanks
Amit

Hi @amitverma009 , thanks for bringing this issue to our attention.  When we dropped support for .NET Core 3.1 and added support to .NET6, I believe we upgraded our dependency from Azure Identity 1.6.0 to 1.7.0. I'll have to check with the team and see if we should upgrade dependency to the newer version or change the dependency to a min version instead of an exact version. We'll get back to you soon.

Thanks @lcheunglci .

Is this Windows application .NET Framework or .NET Core?
If .NET Framework, does your MSI include an app.config file (with the same name as the executable) with a binding redirect for Azure.Identity?

Yes It is in .NET Framework 4.7.2. I have done a binding redirect (manually ) but that is not a long term solution.
Reason : There is an internal Nuget
So the nuget is referred in a separate project (class libraray) which is not having any app config. App config is in the main project where I have put in binding redirect.

Can you provide us with a sample project to reproduce this? The dependency we have for Azure Identity is >= 1.7.0, so 1.8.0 shouldn't be an issue.

Hi @lcheunglci  , am afraid I wont be able to provide the exact code. I have done the workaround by adding binding redirect.  Let me try and create another sample project so that i can share that with you.

I have a solution that reproduces the issue  and I understand the root cause.
Root cause
The root cause is the reference assembly has a different set of references compared to the implementation assembly.
Possible solutions

Remove the reference assembly logic from the build (i.e. src\Microsoft.Data.SqlClient\netfx\ref) OR
keep a shared file of References and PackageReferences between the ref and src projects

Investigation notes
We had an issue where binding redirects were not automatically generated when they should have been resulting in a runtime crash.
I have narrowed down the cause to ResolveAssemblyReferences not being aware of the different versions of assemblies in the build graph because it received reference assemblies with a subset of references in the implementation assembly.
Failing example (at the root project in the "simplifed repro" below):
In the Assemblies parameter, RAR receives <package folder>\microsoft.data.sqlclient\5.0.0\ref\net462\Microsoft.Data.SqlClient.dll (see image 1 for references in the reference assembly and image 2 for the implementation assembly) and subsequently fails to output Azure.Identity in the SuggestedBindingRedirects ItemGroup (image 3).
If I delete the ref folder from the package, and clean the repo, the binding redirect is generated as expected.

Simplified repro structure (see attached)
ReferenceAssemblyCausesMissingBindingRedirects.csproj:
<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>net48</TargetFramework>
  </PropertyGroup>
  <ItemGroup>
    <ProjectReference Include="..\A\A.csproj" />
    <ProjectReference Include="..\B\B.csproj" />
  </ItemGroup>
</Project>

A.csproj:
<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <TargetFramework>net48</TargetFramework>
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Include="Azure.Identity" Version="1.8.0" />
  </ItemGroup>
</Project>

B.csproj:
<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <TargetFramework>net48</TargetFramework>
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Include="Microsoft.Data.SqlClient" Version="5.0.0" /> <!-- This nuget has a reference assembly that hides its dependency on Azure.Identity, specifically version 1.6.0 -->
  </ItemGroup>
</Project>

Image 1: microsoft.data.sqlclient\5.0.0\ref\net462\Microsoft.Data.SqlClient.dll references in ilspy

Image 2:  microsoft.data.sqlclient\5.0.0\lib\net462\Microsoft.Data.SqlClient.dll references in ilspy

Image 3: missing Azure.Identity in the output of RAR

Thanks for the suggested solutions. During our triage meeting, we did notice that the ref and src project dependencies are out of sync as you mentioned and the second approach where there's a shared reference file for these dependency does make sense.

Also, please consider in the long-term throwing out all the custom build logic and switching to SDK-style projects (which automatically generate correct nugets).

I'm not sure if follow this properly as I thought we are using an SDK-style project https://learn.microsoft.com/en-us/nuget/resources/check-project-format ; however, if you can direct us to some documentation, we might be able to look into. Thanks!

The netcore project is SDK-style, the netfx one is not. (As shown in your link, there's no Sdk attribute on the <Project> tag.)
#1860 includes an effort to convert the netfx project to SDK-style.

netfx in converted to SDK style in PR #2413. Also Azure.Identity is upgraded to use 1.11.2
Closing the issue as it has been resolved.


Allow schema to be created with JSON config in UI

this is ui, feature
Closes - https://github.com/apache/pinot/issues/11789
Description

Add UI to add Schema directly using JSON
This is helpful when user has the entire JSON handy
UI still keeps Form Way to add Schema along with JSON view

Screenshot
https://github.com/apache/pinot/assets/41536903/d92842ec-7c8d-4c32-8f59-3ad4390bf698

Please review - @ksnijjer @Jackie-Jiang

Codecov Report

Merging #11809 (612235f) into master (cedac51) will decrease coverage by 48.66%.
Report is 7 commits behind head on master.
The diff coverage is n/a.

@@              Coverage Diff              @@
##             master   #11809       +/-   ##
=============================================
- Coverage     63.10%   14.45%   -48.66%
+ Complexity     1140      201      -939
=============================================
  Files          2343     2343
  Lines        126306   126343       +37
  Branches      19419    19439       +20
=============================================
- Hits          79703    18260    -61443
- Misses        40932   106532    +65600
+ Partials       5671     1551     -4120

Flag
Coverage Δ

integration
?

integration1
?

integration2
?

java-11
14.43% <ø> (-48.64%)
:arrow_down:

java-17
14.42% <ø> (-48.55%)
:arrow_down:

java-20
?

temurin
14.45% <ø> (-48.66%)
:arrow_down:

unittests
14.45% <ø> (-48.65%)
:arrow_down:

unittests1
?

unittests2
14.45% <ø> (+0.04%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.
see 1521 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

This is fantastic!
Thanks @jayeshchoudhary !

looks good to me. do you have a demo that edit/paste a valid JSON and switch back to original view (does it shows the line items parsed properly?

No, we reset the config when the view gets changed
This is because to parse values back and forth we need to check many conditions/validations, plus working with forms make it even more complex.

looks good to me. do you have a demo that edit/paste a valid JSON and switch back to original view (does it shows the line items parsed properly?

I think we can add this later.

i dont really think we need to add later. simply have a banner warning when switching view "you have unsaved schema edit, do you want to proceed" is intuitive enough. and frankly i dont think any user will mix the view usages
i asked the question simply want to make sure ppl arent allow to do exactly that


don"t have file laptop

i have clone
git clone --recursive https://github.com/storopoli/flakes.git /mnt/etc/nixos/flakes
but i don't have this file
/mnt/etc/nixos/flakes/hosts/laptop/wayland/default.nix

Can i install it after installing nixos minial ?
Sorry if I bother you. Looking forward to your and everyone's help.

I've updated them. Can you please check?

I've updated the README. Can you please check?

Oh, thank you.


Use stack instead of heap allocation in some parts of the code to imp…

Problem
Unnecessary heap allocation in some parts of the code
Solution
Using  stackalloc to avoid heap allocation

Please revert the format changes. We will take care of it in a later PR before 1.0.
After that I will merge the stackallocs :)


expires cant set?

export const session = nextAppSession<MySessionData>({
  // Options
  name: 'SID',
  secret: process.env.JWT_SECRET,
  cookie: {
    httpOnly: process.env.NODE_ENV == 'production',
    secure: process.env.NODE_ENV == 'production',
    sameSite: 'strict',
    expires: new Date(Date.now() + 1000 * 60 * 60 * 24 * 7), // 1 week
  },
});

I would like to set the session manually. Unfortunately, this does not work.
export type CookieOptions = {
    httpOnly: boolean;
    path: string;
    domain?: string | undefined;
    secure: boolean;
    sameSite?: boolean | 'lax' | 'strict' | 'none';
    maxAge?: number;
    expires?: Date | null;
};

Hi @Jan-T-Berg
The expires property was excluded from the initialiser typescript definition because it might not make sense setting up an expiry date on the initialisation of the session function, and would make more sense to set it when session data is created.
I understand that it's not possible to use expiries properly with the package yet, I'm working on updating the docs with a section about expiry and refactoring some logic to allow better expiry control.
However, You can use maxAge property instead of expires to achieve what you want.
Just pass:
export const session = nextAppSession<MySessionData>({
  // Options
  name: 'SID',
  secret: process.env.JWT_SECRET,
  cookie: {
    httpOnly: process.env.NODE_ENV == 'production',
    secure: process.env.NODE_ENV == 'production',
    sameSite: 'strict',
    maxAge: 1000 * 60 * 60 * 24 * 7, // 1 week,
  },
});

Just noticed maxAge is not working as expected, I'll create an issue and push a fix for it.

I've released a new version 1.0.7 that fixed the issue with maxAge not being set correctly.
Please keep in mind maxAge expects the value in seconds.

Hey,
That was really fast. Thanks for the quick fix. I had first tried this with maxAge, but since that didn't work, I just bet on expires. Thank you for taking on the topic.

expires would be important. Let's say I realise a login, I would like to use a cookie with an expiration. Of course I can write a token into the database and then create a session via the token cookie, but it would be easier if the cookie of the session remains stored and the user then simply realises this.


[WIP] Make seconds optional

Any ideas on how to achieve this ?

Issue https://github.com/zslayton/cron/issues/13
Importantly, expressions that do not include seconds but which do include years would be illegal.

For this to work, I guess we have to parse the last part of the cron expression and check if it is an year and err out if seconds is not included.
I am wondering why this expression works 0/30 * * * * and this doesn't */30 * * * *.

Importantly, expressions that do not include seconds but which do include years would be illegal.

Such an expression would be illegal as input but the parser would not be expected to detect that case with certainty.
If the expression had 6 fields, the expectation would be that the sixth field was the rightmost and represented years, not the leftmost and representing seconds. There will be some cases where the parser would successfully read the expression but be unaware that the user mistakenly wanted the sixth field to represent seconds (for example, * * * * * *).

Importantly, expressions that do not include seconds but which do include years would be illegal.

Such an expression would be illegal as input but the parser would not be expected to detect that case with certainty.
If the expression had 6 fields, the expectation would be that the sixth field was the rightmost and represented years, not the leftmost and representing seconds. There will be some cases where the parser would successfully read the expression but be unaware that the user mistakenly wanted the sixth field to represent seconds (for example, * * * * * *).

Closing this out as part of a cleanup. Feel free to re-open it if you pick it back up.


Generate TS helpers using new proto files

closed by https://github.com/massalabs/massa-sc-toolkit/pull/338


Ishserver manage osuser profile

Issue GH-62
To be merged when ISHServer releases version 1.5

ISHServer v1.5 is available.


[TT-620] Flaky Test List Validation

Codecov Report
Attention: 22 lines in your changes are missing coverage. Please review.

Comparison is base (ec9b5f7) 22.37% compared to head (86bcd96) 23.34%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #721      +/-   ##
==========================================
+ Coverage   22.37%   23.34%   +0.96%
==========================================
  Files          27       29       +2
  Lines        3661     3736      +75
==========================================
+ Hits          819      872      +53
- Misses       2762     2777      +15
- Partials       80       87       +7

Files
Coverage Δ

flake/validate.go
81.25% <81.25%> (ø)

flake/test_name.go
67.79% <67.79%> (ø)

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Implement the structure for adding API and hand-written documentation

This PR attempts to setup the structure to allow us to add documentation!
For in-editor API documentation, this PR depends on:

Godot PR https://github.com/godotengine/godot/pull/91518

This allows using godot --doctool  --gdextension-docs to update XML documentation for GDExtensions

godot-cpp PR https://github.com/godotengine/godot-cpp/pull/1374

This  allows godot-cpp to send those XML docs to the Godot editor when loaded

However, this also includes a Sphinx setup based on godot-docs, which can convert that XML into RST for online API documentation, as well as allowing us to add hand-written RST for tutorials and other more wordy explanations.
Here's some screenshots of the HTML docs:

There are GitHub actions included that will automatically build these docs and push them to GitHub pages, when changes are pushed to the master branch.
You can see the GitHub pages on my fork, which I used to test that the GitHub actions were working.
This PR doesn't include much in the way of actual documentation, it's meant to setup the structure, and then we can actually write some docs in follow-up PRs. However, for testing, I added API documentation for OpenXRFbRenderModel (link to GitHub pages on my fork).
The docs/README.md explains how you can build the docs locally.
Note: It appears we missed the argument names when binding some methods, so I also added those in this PR, so that it would stop complaining about them being missing, when generating the docs :-)

Looks great!

Looks like the GitHub actions worked! The docs (such as they are) have been pushed to GitHub pages:
https://godotvr.github.io/godot_openxr_vendors/


Inability to access dashboard/diagnostics during blockchain outage

Describe the bug
No local dashboard/diagnostics tool access when blockchain has issues. Am I allowed to suggest that the local dashboard should always be accessible even if the blockchain has issues? (peace of mind for user(s)?)
To Reproduce

Go to local IP.....Internal Server 500 error even though blockchain is up. (ish)

Expected behavior
Local IP/Dashboard should always be accessible even without connectivity to external servers.
Additional context
I understand the blockchain has had issues recently, however not having access to the local diagnostics page whilst we have big outages seems a bit counterintuitive.
Could this just be an effect of multiple firmware upgrades during this period and as a result the dashboard/diag page has been put on backburner?

Duplicate of #223


DNS resolution is getting timed out when several parallel executeQuery is scheduled for same qname

Is there an existing issue for this?

[X] I have searched the existing issues

Kong version ($ kong version)
3.0
Current Behavior
When dns_client.resolve() is invoked(health checker, late limiter, any other plugins which requires DNS resolution), 'querying' step is executed several times for a same qname.
Example: "my-service.my-domain.com.cluster.local:1 - cache-miss/scheduled/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/5:my-service.my-domain.com removed/5:my-service.my-domain.com removed/querying/querying/querying/querying/dns server error: 3 name error"
Please refer the complete log lines below.
https://github.com/Kong/kong/blob/master/kong/runloop/balancer/targets.lua#L489
https://github.com/Kong/kong/blob/master/kong/resty/dns/client.lua#L745
Is this due to several concurrent requests causing several executeQuery operation scheduled at the same time?
https://github.com/Kong/kong/blob/master/kong/resty/dns/client.lua#L800
Whenever, there are duplicate 'querying' step is involved, subsequent operations are getting timed out causing entire DNS resolution to fail.
What is the impact of having hundreds/thousands of executeQuery operation starting in parallel? Is there any kong configuration to tweak this behavior?
As per nginx documentation for ngx.timer.at
timer callbacks run in the background and their running time will not add to any client request's response time, they can easily accumulate in the server and exhaust system resources due to either Lua programming mistakes or just too much client traffic. To prevent extreme consequences like crashing the Nginx server, there are built-in limitations on both the number of "pending timers" and the number of "running timers" in an Nginx worker process. The "pending timers" here mean timers that have not yet been expired and "running timers" are those whose user callbacks are currently running.
https://github.com/openresty/lua-nginx-module#ngxtimerat
There seems to be a nginx level configurations lua_max_pending_timers(default: 1024) and lua_max_running_timers(default: 256)
Is there a chance for leakage in Kong which is causing more timers created and hitting these limits?
Example log from health checker.
[warn] 1110#0: *5211274 [lua] targets.lua:492: queryDns(): querying dns for my-service.my-domain.com failed: dns client error: 101 empty record received. Tried  [
"(short)my-service.my-domain.com:(na) - cache-miss",
"my-service.my-domain.com.kong-core.svc.cluster.local:5 - cache-miss/scheduled/try 1 error: timeout/scheduled/try 2 error: timeout/dns lookup pool exceeded retries (1): timeout",
"my-service.my-domain.com.svc.cluster.local:5 - cache-miss/scheduled/try 1 error: timeout/scheduled/try 2 error: timeout/dns lookup pool exceeded retries (1): timeout",
"my-service.my-domain.com.cluster.local:5 - cache-miss/scheduled/try 1 error: timeout/scheduled/try 2 error: timeout/dns lookup pool exceeded retries (1): timeout",
"my-service.my-domain.com.eu-west-1.compute.internal:5 - cache-miss/scheduled/try 1 error: timeout/scheduled/try 2 error: timeout/dns lookup pool exceeded retries (1): timeout",
"my-service.my-domain.com:5 - cache-miss/scheduled/try 1 error: timeout/scheduled/try 2 error: timeout/dns lookup pool exceeded retries (1): timeout",
"my-service.my-domain.com.kong-core.svc.cluster.local:33 - cache-miss/scheduled/try 1 error: timeout/scheduled/try 2 error: timeout/dns lookup pool exceeded retries (1): timeout",
"my-service.my-domain.com.svc.cluster.local:33 - cache-miss/scheduled/try 1 error: timeout/scheduled/try 2 error: timeout/dns lookup pool exceeded retries (1): timeout",
"my-service.my-domain.com.cluster.local:33 - cache-miss/scheduled/try 1 error: timeout/scheduled/try 2 error: timeout/dns lookup pool exceeded retries (1): timeout",
"my-service.my-domain.com.eu-west-1.compute.internal:33 - cache-miss/scheduled/try 1 error: timeout/scheduled/try 2 error: timeout/dns lookup pool exceeded retries (1): timeout",
"my-service.my-domain.com:33 - cache-miss/scheduled/try 1 error: timeout/scheduled/try 2 error: timeout/dns lookup pool exceeded retries (1): timeout",
"my-service.my-domain.com.kong-core.svc.cluster.local:1 - cache-miss/scheduled/try 1 error: timeout/scheduled/try 2 error: timeout/dns lookup pool exceeded retries (1): timeout",
"my-service.my-domain.com.svc.cluster.local:1 - cache-miss/scheduled/try 1 error: timeout/scheduled/try 2 error: timeout/dns lookup pool exceeded retries (1): timeout",
"my-service.my-domain.com.cluster.local:1 - cache-miss/scheduled/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/5:my-service.my-domain.com removed/5:my-service.my-domain.com removed/querying/querying/querying/querying/dns server error: 3 name error",
"my-service.my-domain.com.eu-west-1.compute.internal:1 - cache-miss/in progress (sync)/dns server error: 3 name error",
"my-service.my-domain.com:1 - cache-miss/in progress (sync)/dns client error: 101 empty record received"],
client: <IP_ADDRESS>, server: kong,  request: "GET /my-resource", host: "my-service.my-domain.com"

Example log from rate limiter plugin.
[error] 1110#0: *1926473 [kong] handler.lua:143 [rate-limiting] failed to get usage: [cosocket] DNS resolution failed: dns client error: 101 empty record received. Tried:
["(short)redis-core-master.redis-core.svc.cluster.local:(na) - cache-miss",
"redis-core-master.redis-core.svc.cluster.local.kong-core.svc.cluster.local:1 - cache-miss/in progress (sync)/try 1 error: timeout/scheduled/try 2 error: timeout/dns lookup pool exceeded retries (1): timeout",
"redis-core-master.redis-core.svc.cluster.local.svc.cluster.local:1 - cache-miss/in progress (sync)/try 1 error: timeout/scheduled/try 2 error: timeout/dns lookup pool exceeded retries (1): timeout",
"redis-core-master.redis-core.svc.cluster.local.cluster.local:1 - cache-miss/in progress (sync)/try 1 error: timeout/scheduled/try 2 error: timeout/dns lookup pool exceeded retries (1): timeout",
"redis-core-master.redis-core.svc.cluster.local.eu-west-1.compute.internal:1 - cache-miss/in progress (sync)/try 1 error: timeout/scheduled/try 2 error: timeout/dns lookup pool exceeded retries (1): timeout",
"redis-core-master.redis-core.svc.cluster.local:1 - cache-miss/in progress (sync)/try 1 error: timeout/scheduled/try 2 error: timeout/dns lookup pool exceeded retries (1): timeout",
"redis-core-master.redis-core.svc.cluster.local.kong-core.svc.cluster.local:33 - cache-miss/in progress (sync)/try 1 error: timeout/scheduled/try 2 error: timeout/dns lookup pool exceeded retries (1): timeout",
"redis-core-master.redis-core.svc.cluster.local.svc.cluster.local:33 - cache-miss/in progress (sync)/try 1 error: timeout/scheduled/try 2 error: timeout/dns lookup pool exceeded retries (1): timeout",
"redis-core-master.redis-core.svc.cluster.local.cluster.local:33 - cache-miss/in progress (sync)/try 1 error: timeout/scheduled/try 2 error: timeout/dns lookup pool exceeded retries (1): timeout",
"redis-core-master.redis-core.svc.cluster.local.eu-west-1.compute.internal:33 - cache-miss/in progress (sync)/try 1 error: timeout/scheduled/try 2 error: timeout/dns lookup pool exceeded retries (1): timeout",
"redis-core-master.redis-core.svc.cluster.local:33 - cache-miss/in progress (sync)/try 1 error: timeout/scheduled/try 2 error: timeout/dns lookup pool exceeded retries (1): timeout",
"redis-core-master.redis-core.svc.cluster.local.kong-core.svc.cluster.local:5 - cache-miss/in progress (sync)/try 1 error: timeout/scheduled/try 2 error: timeout/dns lookup pool exceeded retries (1): timeout",
"redis-core-master.redis-core.svc.cluster.local.svc.cluster.local:5 - cache-miss/in progress (sync)/try 1 error: timeout/scheduled/try 2 error: timeout/dns lookup pool exceeded retries (1): timeout",
"redis-core-master.redis-core.svc.cluster.local.cluster.local:5 - cache-miss/in progress (sync)/querying/querying/querying/querying/try 1 error: failed to create a resolver: failed to set peer name: error/scheduled/try 2 error: failed to create a resolver: failed to set peer name: resource temporarily unavailable/dns lookup pool exceeded retries (1): failed to create a resolver: failed to set peer name: resource temporarily unavailable",
"redis-core-master.redis-core.svc.cluster.local.eu-west-1.compute.internal:5 - cache-hit/dns server error: 3 name error","redis-core-master.redis-core.svc.cluster.local:5 - cache-hit/dns client error: 101 empty record received"],
client: <IP_ADDRESS>, server: kong, request: "POST /my-resource", host: "my-service.my-domain.com"

Expected Behavior

When dns_client.resolve() is invoked for specific hostname(ex: my-service.my-domain.com), 'querying' step should not be executed several times for a same qname.
Example: "my-service.my-domain.com.cluster.local:1 - cache-miss/scheduled/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/5:my-service.my-domain.com removed/5:my-service.my-domain.com removed/querying/querying/querying/querying/dns server error: 3 name error"

DNS client should not leak timers and handle creating timers gracefully in high load environments

DNS queries should not time out because of leak in usage of nginx timers

Steps To Reproduce
This issue is seen in a high load environment deployed on Kubernetes with Kong version is 3.0 in DB less mode. I could not reproduce the behavior in other setup.
Anything else?
No response

Hello @surenraju-careem,
Could you edit the issue to explain what this means:
Example: "my-service.my-domain.com.cluster.local:1 - cache-miss/scheduled/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/querying/5:my-service.my-domain.com removed/5:my-service.my-domain.com removed/querying/querying/querying/querying/dns server error: 3 name error"

This expectation isn't fully correct:

DNS queries should not time out

DNS queries can time out for any number of reasons (network failure for example) and in those cases we should time out. I believe the expectation is:

DNS queries should not time out because of a massive amount of concurrent DNS queries on the same resource

Hello @surenraju-careem , we don't know how to reproduce the issue you are having.
Are you sure your DNS configuration is correct?
The fact that you are seeing so many querying/querying/querying... seems to suggest that there might be some sort of DNS Loop in your configuration. This is what happens, for example, when a pair of DNS servers to forward to each other. Or server A forwards to server B, server B to C, and C back to A.
Internal tracking: KAG-357 / KAG-762

Hi @surenraju-careem

We run Kong 3.0 in Kubernetes. Previously, we had ndots to 5. For a hostname, it was searching through all the search domains.
It was also likely that first the DNS query was forwarded to Kubernetes CoreDNS and Route53 and so on as we were running Kong on Kubernetes and upstream services where hosted in multiple different AWS accounts behind route 53.

Does this mean that you have identified a possible DNS problem on your end, then?

any fixes for this ..i am also getting the same issue.. i am using 3.3.0 version

Hi @223311 ,
Unfortunately as of right now I don't have any updates on this one. We're prioritizing this internally and will look into it. I realize it's been some time since the internal tickets were created so I'll bring them up again for review.

Internal reference: FTI-5417

I'm hitting the same issue and by the looks of it it's related to DNS refres as @surenraju-careem mentioned. In my case I have a lot of unique hosts that Kong calls to, that may expire at the same time which may lead to timer exhaustion caused by asyncQuery. The default max_threads of timer-ng seems to be the root cause (Kong doesn't change the default when initializing). I guess this should be made configurable.

Dear contributor,
We're closing this issue as there hasn't been any update to it for a long time. If the issue is still relevant in the latest version, please feel free to reopen it. We're more than happy to revisit it again.
Please have a look at our pledge to the community for more information.
Sincerely,
Kong Gateway Team

Hi all!
I've just wanted to give you an update that recently we've been taking a deeper look at this issue and we have identified a problem with our dns client. The problem is a little bit complex so there's a two step solution to it - a quick workaround, and a broader fix.
The workaround is switching dns_no_sync config option to on. You can do it yourself in your config - nevertheless temporarily we've enabled it by default in 3.5.0 release: https://github.com/Kong/kong/pull/11869
However there's also a broader fix to this issue which is part of: https://github.com/Kong/kong/pull/11900. It's currently being reviewed & tested so unfortunately it probably won't fit into 3.5.0.
@surenraju-careem could you confirm that switching dns_no_sync to on alleviates the problem?

Hello @nowNick
I confirm that switching dns_no_sync to on alleviates the problem.
We're suffering the same issue.
Regards.


Improvement in Catelogue section

Description
In this section the styling seems to be odd like the first box is white in colour with box styling effect and the other two boxes are of different colour with no styling..I want to change the style of all theboxes into similar one eother each of them white or each of them to that different colour.
Screenshots

You can understand from the attached screenshot.To make the website more visually appaeling we need to make the following changes.
Additional information
No response
What browser are you seeing this bug on?
No response
Checklist

[X] I have checked the existing issues
[X] I have read the Contributing Guidelines
[X] I have read the Code Of Conduct
[X] The changes don't break the code

@Nayanika1402 Can you recommend some colours which we can replace it with?
I also tthought the same but couldn't understand which colour we can apply here.

@dhananjay6561 If you ask me to recommend colour scheme then I would suggest to keep the boxes in the present black shade but with blue box effect just like the white box having yellow box effect.It would look great

@Nayanika1402 I can try this out.


HHH-6781 HHH-12104 HHH-12875 HHH-12882 HHH-12937 (5.1)

https://hibernate.atlassian.net/browse/HHH-6781
https://hibernate.atlassian.net/browse/HHH-12104
https://hibernate.atlassian.net/browse/HHH-12875
https://hibernate.atlassian.net/browse/HHH-12882
https://hibernate.atlassian.net/browse/HHH-12937
This is for 5.1 branch.

This PR was superseded by https://github.com/hibernate/hibernate-orm/pull/2580, which removes the fix for HHH-12104 and adds the fix for HHH-13011.


Add HTTP::WebSocket#on_open

Feature Request
I don't believe I need to go too in-depth about this given that it is fairly self-explanatory, but currently there is no way to listen for when a websocket connection is established (not instantiation or running). For my use-case specifically, the websocket requires an authentication token to be sent once the connection is established, not when the websocket is instantiated or already running, but there is no clear or reliable way to do that:
require "http/web_socket"

ws = HTTP::WebSocket.new socket_url
ws.on_message do |message|
  # can't send the token here as it's unreliable/risks closing connection
end

ws.run # can't do it after because `run` is blocking

spawn ws.run
ws.send socket_token # can't do this either, it's a race condition

pretty sure you can just do:
ws = HTTP::WebSocket.new socket_url
ws.send socket_token
spawn ws.run

as the socket is established in .new and then you're processing messages once run is called

After speaking in the Discord server it seems that this is the case, and my issue was specific to the application. I think that there could be improvements to the documentation for this though, so I will open a separate issue for that.


unexpected token at 'Cannot GET /webpack/manifest.json

Hello,
I have a problem with this gem. I have created a simple project to test webpack-rails with a controller and a unique view. When i execute foreman start I get the following error: "unexpected token at 'Cannot GET /webpack/manifest.json"
I have:

Ruby 2.3.0
Rails 5.0
Node 6.6.0

I followed the installation instructions:
-Add webpack-rails to your gemfile
-Run bundle install to install the gem
-Run bundle exec rails generate webpack_rails:install to copy across example files
-Run foreman start to start webpack-dev-server and rails server at the same time
-Add the webpack entry point to your layout (see next section)
-Edit webpack/application.js and write some code

I have added "<%= javascript_include_tag *webpack_asset_paths("application") %>" to the layout.html.erb
¿Any solution?
Thanks!!

A very recent new version of a dependency of webpack or webpack-dev-server is breaking manifest generation. I'm looking into this now.

Workaround: add:
    "webpack-dev-middleware": "1.7.0"

to your package.json, run npm install && npm dedup
There seems to be an issue with stats-webpack-plugin & the latest version of webpack-dev-middleware.

Fixed in latest, see https://github.com/webpack/webpack-dev-middleware/pull/129

I just installed this gem and am getting the same error:
784: unexpected token at 'Cannot GET /webpack/manifest.json
'

I'm on Rails 4.2.4, Ruby 2.2.2p95, Node 4.1.1
I tried adding the webpack-dev-middleware to my package.json dependencies, but am still getting the error.  Any ideas?  Or do you need more info from me?


Correct a couple of typos of 'varialbe'

@SteveBurkettNZ : Thanks for your contribution! The author, @tfitzmac, has been notified to review your proposed change.

@SteveBurkettNZ - thanks for catching that!

#sign-off


Remove unnecessary copy during calculation of CRC32

Summary
Luke pointed out on slack:
unrelated, but if anybody wants an ez SCTP performance optimization: https://github.com/pion/sctp/blob/master/packet.go#L147

should be creating the crc32 Hash and calling `Write` over ranges, instead of allocating/copying every single packet we send/receive (edited)

Motivation
Seems to be an easy fix/improvement.
TODO

Double-check if there was any intention with the copy..

I am not sure if this actually improves things:
var crc32Table = crc32.MakeTable(crc32.Castagnoli)
func generatePacketChecksumNew(raw []byte) uint32 {
	chksum := crc32.New(crc32Table)
	chksum.Write(raw[:8])
	chksum.Write([]byte{0x00, 0x00, 0x00, 0x00})
	chksum.Write(raw[12:])
	return chksum.Sum32()
}

func generatePacketChecksumOld(raw []byte) uint32 {
	rawCopy := make([]byte, len(raw))
	copy(rawCopy, raw)

	// Clear existing checksum
	for offset := 8; offset <= 11; offset++ {
		rawCopy[offset] = 0x00
	}

	return crc32.Checksum(rawCopy, crc32.MakeTable(crc32.Castagnoli))
}

archlinux% go test -run=XXX -bench=. -benchtime=20s
goos: linux
goarch: amd64
pkg: github.com/pion/sctp
BenchmarkNew-12    	352351734	        71.2 ns/op
BenchmarkOld-12    	656112110	        37.6 ns/op
PASS
ok  	github.com/pion/sctp	60.301s```

Oh hey @AeroNotix, I didn't realize you looked into this already. Could you take a look at my pull request and see if it looks better? I can explain what was wrong with your benchmark and new implementation if you'd like.


fix missing gperftools/profile.h in thirdparty

What type of PR is this：

[ ] bug
[ ] feature
[ ] enhancement
[x] others

if gperftools compile with FLAGS -std=c11 or -std=c99. gperftools
won't install profile.h

run starrocks_fe_unittest

@Mergifyio backport branch-2.2


Update index.md

Habia listas innecesariamente nesteadas, haciendo que se vea mal el archivo

The PR is not being built because the target branch live is filtered in .openpublishing.publish.config.json on live branch.

Hello, @ ,  Thank you for your feedback and suggestion.
The English source file has been updated recently. Your feedback was considered when localizing the new version.
Many thanks for your contribution.
Kind regards,  Microsoft C&E Localization Team


[BUG] Sidebar/ activezone wrongly emits tuiActiveZoneChange

🐞 Bug report
Description
I have buttons in sidebar created with ngFor which represent some array/object. If button onclick removes related element from array or property from object, i'm getting ExpressionChangedAfterItHasBeenCheckedError + sidebar collapsing.
For me it appears only for buttons and component-tags with nested elements which perform element deletion on click, but with div/span works fine.
Seems like activezone directive treats clicks on these elements like clicks outside activezone.
Reproduction
https://stackblitz.com/edit/angular-rppmq4?file=src%2Fapp%2Fexpamle.component.ts
Versions

Angular 11
Package<EMAIL_ADDRESS>
Bug appears only in Chrome (tested also in firefox and safari, works fine)

It happens because element gets destroyed and focus goes nowhere so zone thinks you left it. For some reason it doesn't happen when you focus button with keyboard first, so the focus is shown with a border. I'll need to debug that stuff :)


set "Folder" deployment option to just generate and leave in wp-contents/uploads/static-html-output

removes a bunch of code, directory is already there. basically everything but the zip from zip deployment

What's the difference between this and "Subdirectory on current server" deployment option?

@crstauf sorry, tried to reply via email last night:
That option allowed to copy the files to a different directory, which is still easy enough to achieve with WP_CLI or we can add a hook.
It's extra code, due to checking the directory is either empty or has been blessed by a special file to avoid users inadvertently overwriting their WP root or such. Less code, less complexity, hopefully less bugs :)

have just removed the option altogether and mention on the zip deploy page where the exported path site is within this PR https://github.com/WP2Static/static-html-output-plugin/pull/87

@leonstafford Clearly I did not understand this when I was asking about it... I personally use the "Folder" option for deploying my portfolio site.
repository: WordPress install
└ submodule: /static folder
Deployment is set to the static folder in the root, which I then commit and push to GitHub, which triggers a GitHub Action to deploy to Netlify.

@crstauf so you should still be OK with that workflow using the files in wp-content/uploads/static-html-output? You can just ignore the zip for now.
Will likely allow for non-zip deployment, too, but chose to simplify things for now

@leonstafford Is that something that may come in the next version, or may be a few versions out? I'll probably just sit on 6.6.17 until the "folder" option is restored; I'm a little nervous about moving submodules around (perhaps unnecessarily).

@crstauf I'd say a few versions out. It will work just like it does now, with the zip and static files dirs where they are.
Until there's Crawl Caching like in WP2Static project, I don't want to add an additional deployment directory target.
That said, you could also use a post-deploy hook to achieve the same copying of files (can help with this).
How about a symlink on your system the export dir? Should then behave same as prior setup?

could also use a post-deploy hook

I'll look into this, see what's involved.

How about a symlink on your system the export dir?

Yeah, I briefly thought about a symlink, but I've never been able to get them working quite the way I expect them too; will play with that too.

@leonstafford Creating a symlink did not work.
$ ln -s /static /wp-content/uploads/static-html-output
Export log is filled with "Failed saving ... to ..." entries.

Success with post-process action:
add_action( 'statichtmloutput_post_deploy_trigger', function( $archive ) {
	if ( !WP_Filesystem() )
		return;

	global $wp_filesystem;

	$destination = trailingslashit( ABSPATH ) . 'static';
	$wp_filesystem->mkdir( $destination, 0777 );

	$copied = copy_dir( $archive->path, $destination );

	if ( $copied )
		StaticHTMLOutput\Logger::lines( array( sprintf( 'Copied to %s', $destination ) ) );
} );

@crstauf beautiful!
I hadn't seen the WP_Filesystem before - looks interesting!
I think you've just made yourself 50% of the first Static HTML Output add-on plugin :D

@leonstafford I was actually wondering about that... are custom deployment options possible?

@crstauf should be, if not, we can add any needed hooks and such to make it so.
There was a cool fork of this by someone, who just hid all the options and made simpler UI.
https://github.com/WP2Static/wp2static was really built from ground-up with aim for extensibility and add-ons, but with this repo's codebase getting tidier, it should also be possible to add in support for other add-ons, really, you're code is already doing just that, would only need an option in UI to choose the directory, maybe an option to delete it (scope creep, sorry!).
There was an "in the middle" rebuild between 6.6.7 and /wp2static, which had a very nice UI from @fransallen and ability to override the UI to inject new deployment options in.
Anyway, if you open up your own repo for add-on, I'll help out where needed, including with publishing to wp.org (few things that can be annoying first time).


Upgrade to babel 6.x

Currently the new babel is not stable enough, let's wait for some bugfix cycles and upgrade after that.

I no longer support babel.


Fixed regex

My understanding is that when you have a match with a python regex, it returns an object; if you don't, it returns None. I found this when debugging definitivetechnology.com --- some of the endpoints redirected immediately to www, but the json contradicted itself.
This PR fixes this problem and correctly sets redirect_immediately_to_www to True when applicable. You can observe this with the httpwww endpoint in definitivetechnology.com

@estark37, @eric-zeng can you LGTM this? TIA.

Confirmed the fix in behavior, and it corrects the canonical URL to use www as intended. Good catch of a bug in our logic! I left a comment with a suggested tweak, but I'm good either way.
Also, curious - @amirian28 it seems unrelated to this PR, but I notice that pshtt can't connect to https://www (and so the canonical URL is http://www instead of https://www), but I can get to the HTTPS endpoint in cURL and in my browser. Happy to dig into it if you didn't already spot the reason.

Alright, that should be fixed! I agree, looks cleaner.
Re: your other comment, are you talking about definitivetechnology.com? Which domain are you referring to? It seems to be fine on my machine, unless you're talking about a different domain. Happy to help debug on a separate issue/PR.

Thank you! :+1:

Re: your other comment, are you talking about definitivetechnology.com? Which domain are you referring to? It seems to be fine on my machine, unless you're talking about a different domain. Happy to help debug on a separate issue/PR.

Yeah, from both my local laptop and an EC2 server, I get a live value of false for the httpswww endpoint, with no headers recorded. I get that consistently, a few hours ago when I left my comment, and also now. It's interesting if you're seeing something different, but yeah it is definitely a different issue than this one.


Setting system parameters from outside / SPMC implementation

Hi! I am using bus crate to make event handling in hecs_schedule's systems. It implements spmc paradigm, so one Bus (producer) pushes an event and many BusReaders (consumers) read this event. It look like this (simplified):
pub struct EventWriter<E: Clone + Sync> {
	writer: Bus<E>,
}

impl<E: Clone + Sync> EventWriter<E> {
	pub(crate) fn new() -> Self {
		Self { writer: Bus::new(100) }
	}

	pub fn send(&mut self, event: E) -> Result<(), EventError<E>> {
		match self.writer.try_broadcast(event) {
			Ok(()) => Ok(()),
			Err(ev) => Err(EventError::Send(ev))
		}
	}
}

pub struct EventReader<E: Clone + Sync> {
	reader: BusReader<E>,
}

impl<E: Clone + Sync> EventReader<E> {
	pub(crate) fn new(event_writer: &mut EventWriter<E>) -> Self {
		Self {
			reader: event_writer.writer.add_rx(),
		}
	}

	pub fn read(&mut self) -> Result<E, EventError<E>> {
		match self.reader.try_recv() {
			Ok(ev) => Ok(ev),
			Err(err) => Err(EventError::Read(err))
		}
	}
}

Since each system must have access to unique Reader, so putting one EventReader struct to the schedule is not appropriate, but as there is defined amount of systems while schedule.execute(), we can (maybe) check, on system adding, if it has argument like EventReader, and set it to custom value. But I can't figure out, how can it be implemented. Sorry if this is of-topic, but as the crate developer you could help me

What I've done in situations like these, what could be called system local data, I make the system a closure and move the event reader into it. To split things up, you can make each system a function which takes an event writer, constructs a reader, and returns a closure system which captures it.

What I've done in situations like these, what could be called system local data, I make the system a closure and move the event reader into it. To split things up, you can make each system a function which takes an event writer, constructs a reader, and returns a closure system which captures it.

Could you give a little example, please?

let mut writer = EventWriter::new();

let mut reader = EventReader::new(&mut writer);
let system = move |world: SubWorld<(&Position)>| {
    while let Ok(event) = reader.read() {
        // Do something with `world`
    }
};

let mut reader = EventReader::new(&mut writer);

let system_2 = move || {
    while let Ok(event) = reader.read() {
        eprintln!("Got: {event:?}");
    }
};

The two reader will now be captured/moved into the system, and the normal rust ownership rules ensure each have their own reader, and can access it like normal, even in a multithreaded environment since they are owned.