Failed to start application if diego is enabled.

I followed the readme of https://github.com/cloudfoundry-incubator/diego-release/ to deploy diego to bosh-lite.  When I push a java application to Diego. If I don't enable diego, the application can be started, for example "cf push test -p ./test.war", but if I enable diego, can't start the application. my command is as following:

cf push test -p ./test.war --no-start
cf enable-diego test
cf start test
The error message is as following:
Starting app test in org diego / space diego as admin...
Creating container
Failed to create container
FAILED
StagingError
TIP: use 'cf logs test --recent' for more information

The environment is as following:
The version of my machine's operation system is OS X Yosemite 10.10.5.
The version of cf-release is V220.
The version of diego-release is v0.1434.0

Hi @samdai
You can try,use "cf push app_name -p app_path -b java_buildpack --no-start",then enable diego and start.
Or,you can make yourself dockerfile and push it to docker hub then use "cf docker-push app_name user/app:tag ".

Hi, @samdai,
Based on the Failed to create container error message, it looks like you are running into an issue just trying to create a container on the Diego cell in your BOSH-Lite deployment. If the problem persists, could you extract some of the logs from the cell right after one of the failures? Running bosh logs cell_z1 0 should capture all of the relevant log files.
Thanks,
Eric, CF Runtime Diego PM

wdxxs2z: I have tried "cf push app_name -p app_path -b java_buildpack --no-start", got the same error.
Eric:  the result of bosh logs cell_z1 0 is as below:
Acting as user 'admin' on deployment 'cf-warden-diego' on 'Bosh Lite Director'
Error 70001: `cf-warden-diego/cell_z1/0' doesn't exist

Hi, @samdai,
Ok, sounds like there's some issue with your Diego BOSH deployment. Could you provide the output of bosh vms from your BOSH-Lite? If you run bosh cloudcheck, it may also find and allow you to correct any missing VMs in your deployment.
Thanks,
Eric

Hi Eric,
The output of 'bosh vms' is as below:
Acting as user 'admin' on 'Bosh Lite Director'
Deployment `cf-warden'
Director task 17
Task 17 done
+------------------------------------+---------+---------------+--------------+
| Job/index                          | State   | Resource Pool | IPs          |
+------------------------------------+---------+---------------+--------------+
| api_z1/0                           | running | large_z1      | <IP_ADDRESS> |
| consul_z1/0                        | running | small_z1      | <IP_ADDRESS>  |
| doppler_z1/0                       | running | medium_z1     | <IP_ADDRESS> |
| etcd_z1/0                          | running | medium_z1     | <IP_ADDRESS>  |
| ha_proxy_z1/0                      | running | router_z1     | <IP_ADDRESS>  |
| hm9000_z1/0                        | running | medium_z1     | <IP_ADDRESS> |
| loggregator_trafficcontroller_z1/0 | running | small_z1      | <IP_ADDRESS> |
| nats_z1/0                          | running | medium_z1     | <IP_ADDRESS>   |
| postgres_z1/0                      | running | medium_z1     | <IP_ADDRESS>  |
| router_z1/0                        | running | router_z1     | <IP_ADDRESS>  |
| runner_z1/0                        | running | runner_z1     | <IP_ADDRESS>  |
| uaa_z1/0                           | running | medium_z1     | <IP_ADDRESS> |
+------------------------------------+---------+---------------+--------------+
VMs total: 12
Deployment `cf-warden-diego'
Director task 18
Task 18 done
+----------------+---------+---------------+--------------+
| Job/index      | State   | Resource Pool | IPs          |
+----------------+---------+---------------+--------------+
| colocated_z1/0 | running | colocated_z1  | <IP_ADDRESS> |
+----------------+---------+---------------+--------------+
VMs total: 1
I also ran 'bosh cloudcheck", hasn't found problem, the result is as below:
Acting as user 'admin' on deployment 'cf-warden-diego' on 'Bosh Lite Director'
Performing cloud check...
Director task 19
Started scanning 1 vms
Started scanning 1 vms > Checking VM states. Done (00:00:00)
Started scanning 1 vms > 1 OK, 0 unresponsive, 0 missing, 0 unbound, 0 out of sync. Done (00:00:00)
Done scanning 1 vms (00:00:00)
Started scanning 1 persistent disks
Started scanning 1 persistent disks > Looking for inactive disks. Done (00:00:00)
Started scanning 1 persistent disks > 1 OK, 0 missing, 0 inactive, 0 mount-info mismatch. Done (00:00:00)
Done scanning 1 persistent disks (00:00:00)
Task 19 done
Started		2015-10-17 01:31:30 UTC
Finished	2015-10-17 01:31:30 UTC
Duration	00:00:00
Scan is complete, checking if any problems found...
No problems found

Hi, @samdai,
I see, you've deployed Diego with all the services collocated on one VM, so you've probably generated your manifest using the colocated instance count stub at https://github.com/cloudfoundry-incubator/diego-release/blob/develop/manifest-generation/bosh-lite-stubs/colocated-instance-count-overrides.yml. Since you're deploying to BOSH-Lite, where there isn't a strong cost to deploying more 'VMs', I would instead recommend you deploy with services grouped in separate VMs, as is provided by the 'standard' instance count stub at https://github.com/cloudfoundry-incubator/diego-release/blob/develop/manifest-generation/bosh-lite-stubs/instance-count-overrides.yml. This is also the stub used by default in the generate-bosh-lite-manifests script in this repository.
That said, I think I've found why you're failing to create a container: the list of job templates used on the 'colocated' VM is https://github.com/cloudfoundry-incubator/diego-release/blob/develop/manifest-generation/diego.yml#L828-L858, and it omits the 'rootfses' job template that's included on the 'cell' VM type in https://github.com/cloudfoundry-incubator/diego-release/blob/develop/manifest-generation/diego.yml#L786-L787. As a result, when you push the WAR file as a buildpack-based CF app, the Diego components on that 'colocated' VM can't find the rootfs for the cflinuxfs2 stack, and so they fail to create the container.
If you'd like to try fixing your current deployment, you can try adding that 'rootfses' job template to the list of job templates for the 'colocated_z1' job in your current deployment manifest. I've noticed at least one other problem with that colocated VM type, and in general it's not something we're investing in testing in an automated way, so I've created https://www.pivotaltracker.com/story/show/105911952 to remove it from the manifest-generation templates.
Thanks,
Eric

Hi Eric,
I changed to use the 'standard' instance count stub, but still failed to start application.
When I tried

cf push test -p ./test.war --no-start
cf enable-diego test
cf start test
The error message is as following:

Starting app test in org diego / space diego as admin...
Creating container
Successfully created container
Downloading app package...
Downloaded app package (885.7K)
No buildpack specified; fetching standard buildpacks to detect and build your application.
Downloading buildpacks (staticfile_buildpack, java_buildpack, ruby_buildpack, nodejs_buildpack, go_buildpack, python_buildpack, php_buildpack, binary_buildpack)...
Downloading python_buildpack...
...
Downloading java_buildpack...
Downloaded java_buildpack
...
Downloaded buildpacks
Staging...
Staging failed

When I execute bosh logs cell_z1 0, the error message in garden.stderr.log is
df: Warning: cannot read table of mounted file systems: No such file or directory

When I execute  cf push test -p ./test.war, can start application, but diego is not enabled. the message is as below:
Starting app test in org diego / space diego as admin...
-----> Downloaded app package (888K)
-----> Java Buildpack Version: v3.2 | https://github.com/cloudfoundry/java-buildpack.git#3b68024
-----> Downloading Open Jdk JRE 1.8.0_60 from https://download.run.pivotal.io/openjdk/trusty/x86_64/openjdk-1.8.0_60.tar.gz (1m 6s)
       Expanding Open Jdk JRE to .java-buildpack/open_jdk_jre (0.8s)
-----> Downloading Open JDK Like Memory Calculator 2.0.0_RELEASE from https://download.run.pivotal.io/memory-calculator/trusty/x86_64/memory-calculator-2.0.0_RELEASE.tar.gz (7.3s)
       Memory Settings: -Xms160M -XX:MetaspaceSize=64M -Xss853K -Xmx160M -XX:MaxMetaspaceSize=64M
-----> Downloading Tomcat Instance 8.0.27 from https://download.run.pivotal.io/tomcat/tomcat-8.0.27.tar.gz (10.8s)
       Expanding Tomcat to .java-buildpack/tomcat (0.1s)
-----> Downloading Tomcat Lifecycle Support 2.4.0_RELEASE from https://download.run.pivotal.io/tomcat-lifecycle-support/tomcat-lifecycle-support-2.4.0_RELEASE.jar (0.3s)
-----> Downloading Tomcat Logging Support 2.4.0_RELEASE from https://download.run.pivotal.io/tomcat-logging-support/tomcat-logging-support-2.4.0_RELEASE.jar (0.2s)
-----> Downloading Tomcat Access Logging Support 2.4.0_RELEASE from https://download.run.pivotal.io/tomcat-access-logging-support/tomcat-access-logging-support-2.4.0_RELEASE.jar (0.2s)

-----> Uploading droplet (52M)

1 of 1 instances running

App started

OK

App test was started using this command `CALCULATED_MEMORY=$($PWD/.java-buildpack/open_jdk_jre/bin/java-buildpack-memory-calculator-2.0.0_RELEASE -memorySizes=metaspace:64m.. -memoryWeights=heap:75,metaspace:10,native:10,stack:5 -memoryInitials=heap:100%,metaspace:100% -totMemory=$MEMORY_LIMIT) &&  JAVA_HOME=$PWD/.java-buildpack/open_jdk_jre JAVA_OPTS="-Djava.io.tmpdir=$TMPDIR -XX:OnOutOfMemoryError=$PWD/.java-buildpack/open_jdk_jre/bin/killjava.sh $CALCULATED_MEMORY -Daccess.logging.enabled=false -Dhttp.port=$PORT" $PWD/.java-buildpack/tomcat/bin/catalina.sh run`

Showing health and status for app test in org diego / space diego as admin...
OK

requested state: started
instances: 1/1
usage: 256M x 1 instances
urls: test.bosh-lite.com
last uploaded: Mon Oct 19 00:37:35 UTC 2015
stack: cflinuxfs2
buildpack: java-buildpack=v3.2-https://github.com/cloudfoundry/java-buildpack.git#3b68024 open-jdk-like-jre=1.8.0_60 open-jdk-like-memory-calculator=2.0.0_RELEASE tomcat-access-logging-support=2.4.0_RELEASE tomcat-instance=8.0.27 tomcat-lifecycle-support=2.4.0_RE...

     state     since                    cpu    memory           disk      details
#0   running   2015-10-19 08:43:55 AM   0.0%   142.4M of 256M   0 of 1G

Couple questions/suggestions:

Can you try pushing the app with the "-b java_buildpack" flag?  This
will make the trial-and-error cycle a bit faster, and eliminate several
possible sources of error (e.g. it eliminates the possibility that the
error is in other buildpacks, or in the detect phase of the java_buildpack).
How much time do you typically see between "Staging..." and "Staging
failed"?
Immediately after it fails, can you do "cf logs test --recent" to get
more detailed logs from the failing staging process?
Immediately after it fails, fetch "bosh logs cell_z1 0".  There are many
files there in addition to garden logs.  I suspect there will be error
information around the time of the staging failure in many log files, and
each one may have multiple error lines in addition to the "df" line you
showed.  For example there might be something indicating what
file/directory it was looking for that led to the "No such file or directory"
error.  Can you look for more logs in more files relevant to the failure,
and timestamped around the time of the failure, so we can get more
contextual information?

On Sun, Oct 18, 2015 at 6:00 PM, sam<EMAIL_ADDRESS>wrote:

Hi Eric,
I changed to use the 'standard' instance count stub, but still failed to
start application.
When I tried

cf push test -p ./test.war --no-start
cf enable-diego test
cf start test
The error message is as following:

Starting app test in org diego / space diego as admin...
Creating container
Successfully created container
Downloading app package...
Downloaded app package (885.7K)
No buildpack specified; fetching standard buildpacks to detect and build your application.
Downloading buildpacks (staticfile_buildpack, java_buildpack, ruby_buildpack, nodejs_buildpack, go_buildpack, python_buildpack, php_buildpack, binary_buildpack)...
Downloading python_buildpack...
...
Downloading java_buildpack...
Downloaded java_buildpack
...
Downloaded buildpacks
Staging...
Staging failed
When I execute bosh logs cell_z1 0, the error message in
garden.stderr.log is
df: Warning: cannot read table of mounted file systems: No such file or directory
When I execute cf push test -p ./test.war, can start application, but
diego is not enabled. the message is as below:
Starting app test in org diego / space diego as admin...
-----> Downloaded app package (888K)
-----> Java Buildpack Version: v3.2 | https://github.com/cloudfoundry/java-buildpack.git#3b68024
-----> Downloading Open Jdk JRE 1.8.0_60 from https://download.run.pivotal.io/openjdk/trusty/x86_64/openjdk-1.8.0_60.tar.gz (1m 6s)
Expanding Open Jdk JRE to .java-buildpack/open_jdk_jre (0.8s)
-----> Downloading Open JDK Like Memory Calculator 2.0.0_RELEASE from https://download.run.pivotal.io/memory-calculator/trusty/x86_64/memory-calculator-2.0.0_RELEASE.tar.gz (7.3s)
Memory Settings: -Xms160M -XX:MetaspaceSize=64M -Xss853K -Xmx160M -XX:MaxMetaspaceSize=64M
-----> Downloading Tomcat Instance 8.0.27 from https://download.run.pivotal.io/tomcat/tomcat-8.0.27.tar.gz (10.8s)
Expanding Tomcat to .java-buildpack/tomcat (0.1s)
-----> Downloading Tomcat Lifecycle Support 2.4.0_RELEASE from https://download.run.pivotal.io/tomcat-lifecycle-support/tomcat-lifecycle-support-2.4.0_RELEASE.jar (0.3s)
-----> Downloading Tomcat Logging Support 2.4.0_RELEASE from https://download.run.pivotal.io/tomcat-logging-support/tomcat-logging-support-2.4.0_RELEASE.jar (0.2s)
-----> Downloading Tomcat Access Logging Support 2.4.0_RELEASE from https://download.run.pivotal.io/tomcat-access-logging-support/tomcat-access-logging-support-2.4.0_RELEASE.jar (0.2s)
-----> Uploading droplet (52M)
1 of 1 instances running
App started
OK
App test was started using this command CALCULATED_MEMORY=$($PWD/.java-buildpack/open_jdk_jre/bin/java-buildpack-memory-calculator-2.0.0_RELEASE -memorySizes=metaspace:64m.. -memoryWeights=heap:75,metaspace:10,native:10,stack:5 -memoryInitials=heap:100%,metaspace:100% -totMemory=$MEMORY_LIMIT) &&  JAVA_HOME=$PWD/.java-buildpack/open_jdk_jre JAVA_OPTS="-Djava.io.tmpdir=$TMPDIR -XX:OnOutOfMemoryError=$PWD/.java-buildpack/open_jdk_jre/bin/killjava.sh $CALCULATED_MEMORY -Daccess.logging.enabled=false -Dhttp.port=$PORT" $PWD/.java-buildpack/tomcat/bin/catalina.sh run
Showing health and status for app test in org diego / space diego as admin...
OK
requested state: started
instances: 1/1
usage: 256M x 1 instances
urls: test.bosh-lite.com
last uploaded: Mon Oct 19 00:37:35 UTC 2015
stack: cflinuxfs2
buildpack: java-buildpack=v3.2-https://github.com/cloudfoundry/java-buildpack.git#3b68024 open-jdk-like-jre=1.8.0_60 open-jdk-like-memory-calculator=2.0.0_RELEASE tomcat-access-logging-support=2.4.0_RELEASE tomcat-instance=8.0.27 tomcat-lifecycle-support=2.4.0_RE...
 state     since                    cpu    memory           disk      details

#0   running   2015-10-19 08:43:55 AM   0.0%   142.4M of 256M   0 of 1G
—
Reply to this email directly or view it on GitHub
https://github.com/cloudfoundry-incubator/diego-release/issues/86#issuecomment-149070457
.

Hi, @samdai,
Thanks for the additional output! As Amit suggests, it would be interesting to see if there are other errors from the same time period in the rep and garden logs (that would be the only other component on the cell that I would expect to yield useful information). Those errors would likely be found in the 'garden/garden.stdout.log' and 'rep/rep.stdout.log' log files. Timestamps from the cf logs output for your app also may make it easier to find something relevant in the rep and garden logs about the failure, and the veritas tool at https://github.com/pivotal-cf-experimental/veritas is also useful for filtering and pretty-printing the logs.
Also, what's the version of your BOSH-Lite vagrant box, and what is the value of the garden.mount_btrfs_loopback property in your Diego deployment manifest? The df warning message makes me suspect you might be seeing an unexpected interaction between the BOSH-Lite box and how garden-linux sets up storage for the container layers.
Thanks,
Eric

Hi Amit:
Answer for your questions:
(1) I have tried pushing the app with the "-b java_buildpack" flag, go the same error:
Staging failed

FAILED
StagingError

(2)About 2 seconds to see between "Staging..." and "Staging failed", and 9 minutes to see between "Staging failed" and "FAILED"
(3)The result of cf logs test --recent immediately after it fails is as below:
2015-10-19T14:16:26.31+0800 [API/0]      OUT Created app with guid 655af96c-3f9b-494e-8654-1fc2d0cdb1cc
2015-10-19T14:16:26.40+0800 [API/0]      OUT Updated app with guid 655af96c-3f9b-494e-8654-1fc2d0cdb1cc ({"route"=>"b3ef9e45-e6a7-4210-ad1a-dc2d05939b8e"})
2015-10-19T14:16:38.24+0800 [API/0]      OUT Updated app with guid 655af96c-3f9b-494e-8654-1fc2d0cdb1cc ({"diego"=>true})
2015-10-19T14:16:42.05+0800 [API/0]      OUT Updated app with guid 655af96c-3f9b-494e-8654-1fc2d0cdb1cc ({"state"=>"STARTED"})
2015-10-19T14:16:42.07+0800 [STG/0]      OUT Creating container
2015-10-19T14:16:54.42+0800 [STG/0]      OUT Successfully created container
2015-10-19T14:16:54.42+0800 [STG/0]      OUT Downloading app package...
2015-10-19T14:16:54.50+0800 [STG/0]      OUT Downloaded app package (885.7K)
2015-10-19T14:16:54.50+0800 [STG/0]      OUT Downloading buildpacks (java_buildpack)...
2015-10-19T14:16:54.50+0800 [STG/0]      OUT Downloading java_buildpack...
2015-10-19T14:16:54.54+0800 [STG/0]      OUT Downloaded java_buildpack
2015-10-19T14:16:54.61+0800 [STG/0]      OUT Downloaded buildpacks
2015-10-19T14:16:54.61+0800 [STG/0]      OUT Staging...
2015-10-19T14:16:54.62+0800 [STG/0]      ERR Staging failed
2015-10-19T14:23:43.59+0800 [API/0]      ERR Failed to stage application: staging failed

(4)After execute bosh logs cell_z1 0, only found the following  related message in 'rep/rep.stdout.log' log file:
{"timestamp":"1445235628.224967241","source":"rep","message":"rep.container-metrics-reporter.depot-client.get-all-metrics.infos.failed-bulk-info","log_level":2,"data":{"error":"json: cannot unmarshal string into Go value of type uint32","handles":["655af96c-3f9b-494e-8654-1fc2d0cdb1cc-430ecf0b8e5c44ce87baf9dd2ca93028"],"session":"4.1.1742.1"}}
{"timestamp":"1445235628.224999189","source":"rep","message":"rep.container-metrics-reporter.depot-client.get-all-metrics.failed-to-list-containers","log_level":2,"data":{"error":"json: cannot unmarshal string into Go value of type uint32","session":"4.1.1742"}}

And the version of my vagrant is 1.7.4. in the file manifest-generation/bosh-lite-stubs/property-overrides.yml, the value of property garden.mount_btrfs_loopback is as following:
  garden:
    listen_network: tcp
    listen_address: <IP_ADDRESS>:7777
    mount_btrfs_loopback: false
    disk_quota_enabled: false

Hi, @samdai,
Thanks for providing the extra information, especially the logs from the rep. Which version of the garden-linux release do you have deployed? You should be able to see it listed when you run bosh deployments. I suspect that you have something later than version 0.307.0 deployed, as there was a breaking change to the Garden API introduced in 0.308.0 and later that would be causing those error messages. If that's the case, could you please upload version 0.307.0 as directed at http://bosh.io/releases/github.com/cloudfoundry-incubator/garden-linux-release?version=0.307.0, specify that version in the 'releases' section of your Diego deployment manifest, and redeploy Diego?
Best,
Eric

Hi Eric,
The version of my garden-linux release is 0.308.0, after I changed to version 0.307.0 , can start application successfully.  Thank you very much for your help. also very thank wdxxs2z and Amit fo your help.

Hi, @samdai,
Great, glad to hear that the correct release resolved the problem! For each final release of Diego, we do publish the versions of the garden-linux and now etcd releases that are known to be compatible with it, but that can be difficult to find or to enforce in your deployment manifest. We'll be working on ways to make that information more discoverable and to automate uploading and deploying the correct combination of compatible releases.
Thanks again,
Eric


[Bug] JS icons missing in property pane

Is there an existing issue for this?

[X] I have searched the existing issues

Current Behavior
JS icons missing in the property pane

Steps To Reproduce

go to canvas
drag and drop a widget
click on ?= icon next to JS objects
add a JS object
Now click on the property pane of the widget
on the action section select execute a Js function
The icon i snot displayed for JS Object

Environment
Release
Version
Cloud

Can I work on this issue?

Sure @nishihere19, Please go ahead.
Please read the Code Contribution Guidelines to understand the process to get started with solving a Github issue.

@RakshaKShetty JS Icons are added in the latest in the actions selection along with the new explorer changes. Can you please retest ?

Closing this issue since the icon has been added in the IDE enhancement


Add the first e2e test

Here we provide a basic test that leverages the infrastructure provided by MetalLB as a library, and makefile rules to run them.

Some files change when running bumplicense

An extra comment about the makefile:
the CONTROLLER_TOOLS_VERSION var is being used also on kind and kubectl
and on kubectl the$(LOCALBIN)/kubectl --version returns: error: unknown flag: --version

/lgtm


Include an example of subrouting -> the tutorial as a more separated module

Currently the index.js includes the following comment:
// Defining the application router, you can attach sub routers here.
However there is no example how this "subrouting" should be done. For clarifying purposes the tutorial related routing could be done in Example.Router, if this is feasible.
Also I would think that it would be more beneficial to arrange all module specific stuff in a single directory, and all its related code in the same JavaScript file. This way if some module needs to be disabled, all that is needed to do is to delete one directory and comment one script including from index.html as well as to comment the module declaration from index.js. Or is there some good explanation why this is not a good idea.

There are many different ways subrouting can be achieved, so figuring out which example to show might be complicated.
Could you point to a repo that illustrates your second paragraph? I'm not really sure what you're saying.

Well the other paragraph was just a quick braindump regarding some ideas collected around a company coffee table. It was more like of question "why you did this way". We're not too familiar with backbone, which may be the cause of this. However, if bb's and bbbp's idea is to help to modularize an application, why the folder structure is scattered like this:
app\modules\moduleName.js
app\templates\moduleView1.html
assets\css\moduleName.css
and not something like this:
app\modules\moduleName\moduleName.js
app\modules\moduleName\view1.html
app\modules\moduleName\view2.html
app\modules\moduleName\moduleStyles.css
? We may have a need to disable and enable some modules from time to time, and it sounds a little cumbersome if the files are scatterd around, module specific routing is defined in the main router, etc.

I totally agree with the original note that the current comment saying "Defining the application router, you can attach sub routers here." is not very helpful. Patch from revgum was just what I was looking for, but I think this information should be readily provided in the boilerplate.


Privacy policy?

Since we are collecting information from users, will we be required to have a privacy policy?
E.g., privacy statement for DepMap's website:
https://depmap.org/portal/privacy/
Looks like DepMap also has a T&C page in their footer too:
https://depmap.org/portal/terms/

Ted: Not necessary if we are not sending emails or using services that require this.


Document reasoning for why CustomMultiChildLayout size can't depend on children and how to do it

Relanding #47797
Description
The title is taken from https://github.com/flutter/flutter/issues/18426 because this PR does exactly what the issue is title (and fixes a typo).
I will most likely write an article about how to use MultiChildRenderObject as part of the Flutter Clock challenge, but I suppose that it would be against the guidelines to link it in the docs anyway - so I hope that mentioning relevant classes, even though they lack documentation, is sufficient for now. I think that I remember learning about it as quite easy by example when I used it for the first time, which is why I also mentioned Stack, even though there might be easier examples because Stack is fairly complex.
Related Issues
Resolves #18426.
Tests
No tests are needed for documentation only.
Checklist

[x] I read the [Contributor Guide] and followed the process outlined there for submitting PRs.
[x] I signed the [CLA].
[x] I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement].
[x] I read the [Tree Hygiene] wiki page, which explains my responsibilities.
[x] I updated/added relevant documentation (doc comments with ///).
[x] All existing and new tests are passing.
[x] The analyzer (flutter analyze --flutter-repo) does not report any problems on my PR.
[x] I am willing to follow-up on review comments in a timely manner.

Breaking Change

[x] No, no existing tests failed, so this is not a breaking change.

This LGTM! Thanks for prepping this again in a new PR and removing the whitespace. I'm going to put on the auto-merge label again, the bot has been fixed so it won't merge if a check fails.


Enter in email in outlook

Hello @yodurr I want to hit enter on email in outlook to open it. Will you please let me know how can I do that? I tried but it did not happened. Thank you in advance.

Hi @NikitaTurakhia,
Do you mind trying UI Recorder to see if you're able to record the XPath queries for outlook? And then run those through WinAppDriver.


Component gets disabled when updated via API

Hi,
Just updated Cachet to the newest version. Great work.
I update the status of a component via API depending on how many entries are in my queue. That works well so far. After the update, the component gets disabled very time I send a single status value via API.

This is odd since the default value of the enabled field is true: https://github.com/cachethq/Cachet/blob/master/app/Http/Controllers/Api/ComponentController.php#L76
If you're not specifying the enabled value, then is it already disabled?

The true is missing in the put command.
https://github.com/cachethq/Cachet/blob/master/app/Http/Controllers/Api/ComponentController.php#L117

Good catch, I missed this and will update now. Thanks :beers:

No problem, thanks for the reply.

Just testet your quick fix. This now enables components which have been disabled before. The default value on UPDATE in your controller should be something like null. And only change the current component value if it is not null. Something like:
$value = (!is_null($newValue)) ? $newValue : $oldValue
I didn't dive too deep into your UpdateCommands, but titles and descriptions are not updated to default values if they are not present in any api call. This would be the expected behaviour to boolean as well.

Same behavior with Decimal Places with metrics when updating the metric title only via API. It get's always changed back to 2.

This should be fixed by #1110 too, right @GrahamCampbell?

Fixed. :)


Add view_multichannel function

Fixes #615
I haven't added the viewer keyword arguments because they have so far
not been added to any of the other layers. It should be added in a
different PR.

i just looked at the current codebase on master and it seems like view_multichannel is already there

Ooooooh, I git cloned from my fork — but my fork was not updated to latest master. 🤦♂
I had memories of your PR and the viewer kwargs but thought I must have dreamed them! 😅

side note - it seems like our windows tests are now passing again which is great

Wow! That's super-excellent! Thanks Cirrus-CI! 🎉


[cob_script_server] how to use script_viewer?

@ipa-fmw
Can you comment on what the script_viewer.py is supposed to visualize?
How should it be run? rosrun cob_script_server script_viewer.py?
Does it still work?
@fmessmer FYI

not planned


Android SDK default path

New to MSVS2019 here... is there any reason why the Tools > Options > Cross Platform > C++ > Android > Android SDK [default path = C:\Microsoft\AndroidSDK\25] is different from Tools > Options > Xamarin > Android Settings > Android SDK Location [default path = C:\Program Files (x86)\Android\android-sdk]?  I can't properly build the "OpenGL ES application on Android and iOS" example and it seems that these two different Android SDK paths have something to do with it.

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

ID: ab51e2f8-b5b5-007a-a9b3-23a85b2f2d88
Version Independent ID: 9cd86e2f-b4d8-00d9-1d02-294bb2692a1d
Content: Install cross-platform mobile development with C++ - Visual Studio
Content Source: docs/cross-platform/install-visual-cpp-for-cross-platform-mobile-development.md
Product: visual-studio-windows
Technology: vs-ide-mobile
GitHub Login: @corob-msft
Microsoft Alias: corob

@wvc25
That's a good question. My guess would be the Microsoft directory default is to prevent the tools from clobbering an existing setup. You can edit the paths in the Tools > Options > Cross Platform > C++ > Android page to point to where your preferred tools are, if that helps.
@michelleangela Do you have any insights?

@wvc25, the settings Tools > Options > Cross Platform > C++ > Android is used by the C++ mobile development component, which supports to up Android SDK 25, therefore the path specifically points to C:\Microsoft\AndroidSDK\25. It is independent from Xamarin, which has its own setup for using Android SDKs.
As for the issue of not being able to build the sample project "OpenGL ES application on Android and iOS" from the C++ mobile development component, can you file a bug at https://developercommunity.visualstudio.com and also provide MSBuild Diagnostic logs?

Thanks for the response, @corob-msft .. I did try changing the path in the Cross Platform to that of the Xamarin's path.. the problem is, the build process for the "OpenGL ES application on Android and iOS" example can't seem to write the "\ant\build.xml" in the Xamarin's "C:\Program Files (x86)\Android\android-sdk\tools" folder, whereas it does it with the Cross Platform's "C:\Microsoft\AndroidSDK\25\tools" folder.  As an additional info, I can only write into the Xamarin path if I login as an admin, whereas the Cross Platform path doesn't require it.  And so, I tried the other way around, changing the Xamarin path into the Cross Platform path.  This triggered VS2019 to "fix" the new Xamarin path by downloading the latest Android SDK and Tools.  I believe the Android SDK Manager is tied to the Xamarin path.  So the Cross Platform "C:\Microsoft\AndroidSDK\25" path got updated with the "android-28" SDK and other tools.  However, this time around the build process can't write the "\ant\build.xml" file in the "C:\Microsoft\AndroidSDK\25\tools" folder where it used to be able to do it before the "fix".  Now, I ran out of options to try.

The Android SDK Manager is only used by the Xamarin component.
 Perhaps running Visual Studio either as admin or not is what's causing the write to file permissions issue.

I already tried both to no avail.  I normally run it as a regular user, but each time I launch the "Tools > Android > Android Device Manager" or the "Tools > Android > Android SDK Manager", I'm prompted to login as an admin, which I can.
Having said that, VS2019 should be able to write to any folder since I login as an admin "whenever" it asks me to.  Just to clarify, the folder "C:\Microsoft\AndroidSDK\25" does not require me to login as an admin to modify it.  I can create a folder in it via Windows Explorer.  Thus, VS2019 shouldn't have a problem writing in it.  As I mentioned earlier, VS2019 can write the "\ant\build.xml" file in it prior to the "fix" brought about by changing the Xamarin path to point to it.  But now that the Adroid SDK Manager updated the "C:\Microsoft\AndroidSDK\25" folder with the android-28 SDK and tools, has that already "contaminated" the C++ mobile development component, which only supports to up Android SDK 25?

I'm not familiar with how the Android SDK Manager works or writes to folders. It was created to provide Android tools for the Xamarin component. My guess is it could have specific functionality to work for Xamarin but are not intended for other components. The Android Device Manger is also used by Xamarin. Sounds like any tool used by Xamarin causes the required login as admin?
The Android SDK Manager could have overwritten some tools in "C:\Microsoft\AndroidSDK\25" that the C++ mobile development component uses, which could cause build issues for the sample C++ Android/iOS project.
To get the original contents of "C:\Microsoft\AndroidSDK\25", I suggest delete the folder "25" and uninstall and reinstall the C++ mobile development component. Also make sure the Android SDK Manager doesn't point to "C:\Microsoft\AndroidSDK\25" before uninstall/reinstall.

Yes, it does look like Xamarin requires admin privileges in order to be used.  That's definitely bad for marketing since in the corporate world, only a small group of people gets admin access.
You mentioned that the Android Device Manger is also used by Xamarin.  But shouldn't this also be used by the C++ mobile development component in order to launch an Android emulator for testing?  The issue I'm trying to fix now is only the build process, after that I would have to deal with deployment, and I already saw a deployment failed message before.  But I'm trying to isolate the problem by focusing first on the build process.

Okay, I was able to reinstall the C++ mobile development component by following your suggestion and I'm back to getting the original error message below:
1>------ Build started: Project: OpenGLESApp1.Android.NativeActivity, Configuration: Debug x86 ------
1>ANDROID_HOME=C:\Microsoft\AndroidSDK\25
1>ANT_HOME=C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\Apps\apache-ant-1.9.3
1>JAVA_HOME=C:\Program Files\Android\jdk\microsoft_dist_openjdk_<IP_ADDRESS>
1>NDK_ROOT=C:\Microsoft\AndroidNDK64\android-ndk-r16b
1>pch.h
1>Cube.c
1>android_native_app_glue.c
1>main.cpp
1>OpenGLESApp1.Android.NativeActivity.vcxproj -> C:\wxWVC\OpenGLESApp1\x86\Debug\libOpenGLESApp1.so
2>------ Build started: Project: OpenGLESApp1.Android.Packaging, Configuration: Debug x86 ------
2>ANDROID_HOME=C:\Microsoft\AndroidSDK\25
2>ANT_HOME=C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\Apps\apache-ant-1.9.3
2>JAVA_HOME=C:\Program Files\Android\jdk\microsoft_dist_openjdk_<IP_ADDRESS>
2>NDK_ROOT=C:\Microsoft\AndroidNDK64\android-ndk-r16b
2>ANDROID_NDK_HOME=C:\Microsoft\AndroidNDK64\android-ndk-r16b
2>Buildfile: C:\wxWVC\OpenGLESApp1\OpenGLESApp1\OpenGLESApp1.Android.Packaging\x86\Debug\Package\build.xml
2>  [taskdef] Could not load definitions from resource anttasks.properties. It could not be found.
2>  [taskdef] Could not load definitions from resource emma_ant.properties. It could not be found.
2>
2>-set-mode-check:
2>
2>-set-debug-files:
2>
2>-check-env:
2>
2>BUILD FAILED
2>C:\Microsoft\AndroidSDK\25\tools\ant\build.xml:396: Problem: failed to create task or type checkenv
2>Cause: The name is undefined.
2>Action: Check the spelling.
2>Action: Check that any custom tasks/types have been declared.
2>Action: Check that any / declarations have taken place.
2>
2>
2>Total time: 0 seconds
2>C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\MSBuild\Microsoft\MDD\Android\V150\Android.Common.targets(445,5): error MSB3073: The command ""C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\Apps\apache-ant-1.9.3\bin\ant.bat" debug -Dout.final.file="C:\wxWVC\OpenGLESApp1\OpenGLESApp1\OpenGLESApp1.Android.Packaging\x86\Debug\OpenGLESApp1.apk"" exited with code 1.
2>Done building project "OpenGLESApp1.Android.Packaging.androidproj" -- FAILED.
========== Build: 1 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
I did try searching for the error messages above in the internet before to try to find a fix myself before posting here, but the error messages seem to be generic as others have already reported them a couple of years back (as far as 2012?).

@wvc25
This has turned into a product support question. Unfortunately, we're not equipped for those on the docs team. Since I don't see a specific issue to fix in the documentation to address this, I'm going to close it.
Product support is handled on Visual Studio Developer Community. You can report issues from within Visual Studio directly. See How to report a problem with Visual Studio or Visual Studio Installer for details. Actual product engineers are notified about issues there, and other community members can comment and suggest solutions. It's what I recommend for issues like yours.


Narrator reads Slider value as zero

Description
Slider doesn't work correct for narrator to read.
CodeSandbox/Snack link
https://codesandbox.io/s/clever-lumiere-yzdwml?file=/src/index.tsx
Steps to reproduce

Install and run UWP application
Run Windows -> Narrator

Narrator reads the value of the Slider as "zero percent"
NativeBase Version
3.4.11
Platform

[ ] Android
[ ] CRA
[ ] Expo
[ ] iOS
[ ] Next

Other Platform
No response
Additional Information
No response

Are there any updates? Wish to discuss soon.

Hello !
In this case, explaining a little bit more: Windows Narrator speaks percent value instead real value of slider. How to make narrator speak current slider Value?
Tks


Speed up builds on CI with more caching

Follow on from #2981.
The largest component of the time it takes to run benchmarks on CI is building the benchmarks.
Obviously the benchmarks for whichever crates a PR touches do need to be rebuilt, but all the rest could be cached.
The docs for Swatinem/rust-cache say:

In particular, the workspace crates themselves are not cached since doing so is generally not effective.

That would indeed make sense for a single crate, but in a workspace project where the majority of PRs will only touch a single crate, I don't think this is a good strategy.
Not sure how to solve it, but I imagine if we can improve the caching strategy, it could improve CI times significantly.

If the goal is to speed up the benchmark build, 2 things:

lto = "thin", it should cut the build time by a huge amount with about 10% perf regression
figure out why it's building the entire workspace?

Run cargo build --release -p oxc_benchmark --bench lexer --features codspeed
    Updating crates.io index
   Compiling oxc_span v0.12.5 (/home/runner/work/oxc/oxc/crates/oxc_span)
   Compiling oxc_index v0.12.5 (/home/runner/work/oxc/oxc/crates/oxc_index)
   Compiling oxc_allocator v0.12.5 (/home/runner/work/oxc/oxc/crates/oxc_allocator)
   Compiling oxc_ast_macros v0.0.0 (/home/runner/work/oxc/oxc/crates/oxc_ast_macros)
   Compiling oxc_diagnostics v0.12.5 (/home/runner/work/oxc/oxc/crates/oxc_diagnostics)
   Compiling oxc_sourcemap v0.12.5 (/home/runner/work/oxc/oxc/crates/oxc_sourcemap)
   Compiling oxc_macros v0.0.0 (/home/runner/work/oxc/oxc/crates/oxc_macros)
   Compiling oxc_syntax v0.12.5 (/home/runner/work/oxc/oxc/crates/oxc_syntax)
   Compiling oxc_ast v0.12.5 (/home/runner/work/oxc/oxc/crates/oxc_ast)
   Compiling oxc_tasks_common v0.0.0 (/home/runner/work/oxc/oxc/tasks/common)
   Compiling oxc_semantic v0.12.5 (/home/runner/work/oxc/oxc/crates/oxc_semantic)
   Compiling oxc_parser v0.12.5 (/home/runner/work/oxc/oxc/crates/oxc_parser)
   Compiling oxc_codegen v0.12.5 (/home/runner/work/oxc/oxc/crates/oxc_codegen)
   Compiling oxc_minifier v0.12.5 (/home/runner/work/oxc/oxc/crates/oxc_minifier)
   Compiling oxc_linter v0.0.0 (/home/runner/work/oxc/oxc/crates/oxc_linter)
   Compiling oxc_prettier v0.0.0 (/home/runner/work/oxc/oxc/crates/oxc_prettier)
   Compiling oxc_transformer v0.12.5 (/home/runner/work/oxc/oxc/crates/oxc_transformer)
   Compiling oxc_benchmark v0.0.0 (/home/runner/work/oxc/oxc/tasks/benchmark)

How about using sccache with Github Actions backend?

https://github.com/mozilla/sccache/blob/main/docs/GHA.md
Already tried a year go https://github.com/oxc-project/oxc/pull/268

And what do you think about my "wacky idea" above?

I don't not a fan of constructing our infra against a third party tool ...

Already tried a year go https://github.com/oxc-project/oxc/pull/268

Damn!

cargo caches at the crate level

Would you mind explaining that a bit more? This is what I was trying to say originally, but I'm not great on infrastructure stuff, so probably don't know the right words/concepts.

Split oxc_benchmark into more crates, i.e. oxc_bench_lexer etc etc

Ah I see. I didn't try that exactly, but I did try putting all oxc_benchmark's dependencies (oxc_linter, oxc_prettier etc) behind different features and then only enabling the feature required for each benchmark. It helped a bit, but not much.
But maybe problem is I didn't get them to use different cache keys, so they all destroyed each others' caches?

The other thing we could try is having 1 job build oxc_benchmark, and then all the other jobs to actually run the benchmarks wait for that to complete.

Oh yeah, this is simpler.

Just to go back to 2 things you said earlier:

I already tried.
You need something like https://github.com/holmgr/cargo-sweep to tidy up things, but I got into dead ends. I read all the issues around this topic and even tried building my own tools, but there's some problem with cargo not keeping some meta if I remember correctly.

I've just read a bunch of the issues linked to from https://github.com/Swatinem/rust-cache/issues/37
Can't say I understand most of it, but it seems like maybe "some problem with cargo not keeping some meta" was that cargo judges if a file is changed or not by its mtime, but restoring the cache on Github Actions does not preserve the timestamps. If so, this looks like a promising solution for that:
https://github.com/rust-lang/cargo/issues/6529#issuecomment-1558438048
(this "retimer" tool was never made public, but it doesn't sound complicated to build something similar)
It may well be that I'm being hopelessly naive, and there's a whole rabbit hole of further complications. But given that CI speed is a priority for Oxc, maybe it's worthwhile giving it another shot?

And what do you think about my "wacky idea" above?

I don't not a fan of constructing our infra against a third party tool ...

I didn't see it like that. I saw it as hacking an external tool to make it do what we want - make the infra fit us (and we are already hacking CodSpeed's API to do sharded benchmarks).

And just to drop the link as a sort of "bookmark", I found this comment interesting on the subject:
https://github.com/yewstack/yew/pull/2340#issuecomment-1007878941

IMO I'd suggest sccache + S3 again. I use it in moon just fine.

@milesj Does S3 not run up the bills quite a bit?

@overlookmotel That's why are living in a refugee camp. Too poor.

We don't need more caches, we just need to fix our code https://github.com/oxc-project/oxc/issues/3213
closing as non-actionable.

@Boshen Concerning sccache: How much data storage do we need?
sccache supports Cloudflare R2 which is cheaper than S3 - $1.50 a month for 100 GB storage, and data transfer is free.
Surely even us refugees can afford $1.50 a month?!

Tell you what... I'll split it with you. 75 cents a month each. 😆

FWIW, moon's S3 CI costs are only like $8 a month.


New Validation on too many digits

Part of
https://rockabox.tpondemand.com/entity/10634

just keep consistency with other validators :)


Setup Prometheus on Kubernetes

Description
As a Kubernetes operator I want to automatically add Prometheus on the Kubernetes cluster so that I can add monitoring for different Blockchain platforms.
Acceptance Criteria

Add prometheus chart
Deploy prometheus from shared playbooks so that all platforms deploy prometheus.
Prometheus enablement, passwords must be provided via network.yaml
Ensure one Prometheus deployment per cluster

I will check this.


[CELEBORN-1339] Mark connection as timedOut in TransportClient.close

What changes were proposed in this pull request?
Importing details from https://github.com/apache/spark/pull/43162:
--
This PR avoids a race condition where a connection which is in the process of being closed could be returned by the TransportClientFactory only to be immediately closed and cause errors upon use.
This race condition is rare and not easily triggered, but with the upcoming changes to introduce SSL connection support, connection closing can take just a slight bit longer and it's much easier to trigger this issue.
Looking at the history of the code I believe this was an oversight in https://github.com/apache/spark/pull/9853.
--
Why are the changes needed?
We are working towards adding TLS support, which is essentially based on Spark 4.0 TLS support, and this is one of the fixes from there.
(I am yet to file the overall TLS support jira yet, but this is enabling work).
Does this PR introduce any user-facing change?
No
How was this patch tested?
Unit tests

Merging to main(v0.5.0) and branch-0.4(v0.4.1).


Code coverage for Apex classes less than 75% - Reopen(#197)

Hello lpation10,
I work with posolutionez (Patrick) and we deployed the fix to our sandbox but there are still some classes which fall below the 75% threshold.
Following are the classes-
IBMWatsonDynamicResponseModel - 0%
IBMWatsonIAMToken - 60%
IBMWatsonICP4DToken - 73%
IBMWatsonICP4DTokenResponse - 5%
IBMWatsonNoauthAuthenticator - 25%
IBMWatsonResponseModel - 46%
IBMWatsonService - 73%

We are leveraging Watson Assistant and NLU part of the SDK but due to dependency between the classes above mentioned classes are also needed. When we deploy code from Sandbox to Stage and Production all classes need to have a minimum of 75% coverage it doesn't look for the whole SDK coverage. Please advice.
Originally posted by @daiyaharsh90 in https://github.com/watson-developer-cloud/salesforce-sdk/issues/197#issuecomment-527637083

Hi @daiyaharsh90, The maintainer is on vacation until next. Can you wait until he is back?
You can also add a few tets for the classes in a PR and I will be happy to review and merge it

Hey @daiyaharsh90, I was under the impression that you just needed a total code coverage >75% to deploy to production orgs, so sorry about that.
I'm back now I'll report back here when it's up.

@daiyaharsh90 the issue should now be resolved fully in the latest version of master (v4.4.4).
All classes now have at least 75% coverage.

@lpatino10 We still see 2 classes that are under 75% code coverage, Thank you for all your help so far.
IBMWatsonNoauthAuthenticator - 25% (Lines 1/4)
IBMWatsonResponseModel - 46% (Lines 12/26)

@lpatino10 Apologies, it seems we have the coverage, it was probably an old test suite we ran. Thank you for helping us!
We are good with code coverage now

Great to hear!


Prevent Unauthenticated Remote Hosts From Demonstrating an Oxy Service Exists

Oxy shouldn't show up on nmap, ever. When Oxy does show up on nmap, it should be impossible to distinguish an Oxy service from "ncat -l > /dev/null" without successfully authenticating to the service. Currently, it may be possible to distinguish an Oxy service from the null listener by observing the remote host terminating the connection in response to certain inputs.
In the best case scenario, Oxy should run as a hidden service that does not accept TCP connections unless a UDP port knocking sequence has been performed from the specific remote IP address. This unfortunately requires some tight operating system integration (iptables rules, etc.)
To implement UDP knocking, it is necessary to be careful to avoid the operating system disclosing which ports are or are not knock targets by sending reset/rejection packets. A knock packet should either receive a rejection response or not receive a rejection response to match the behavior of other, unused UDP ports on the host.

@zerosum0x0 points out it is likely not possible to hide the service from Shodan when the only form of authentication is client passwords from /etc/shadow ( #2 ) because a prospective client must query the shadow hash before they can generate shared key material to use with the server.
Because this service should never be detectable that should not be a supported use-case.

Given the current state of port knocking, the only thing it is possible to demonstrate is "The host has a UDP port > 1024 bound." I would like to give away less than that, but this is good for now.
The way to give away less is to listen on a raw socket, so that the kernel doesn't know that there is an "open udp port".


Add proxytarget header to query requests

Description
Add proxytarget header to requests where previousBackend is found. Otherwise this line will return warning https://github.com/trinodb/trino-gateway/blob/d45c64f516062841339e9ce93e4675257e6e93e8/gateway-ha/src/main/java/io/trino/gateway/ha/handler/QueryIdCachingProxyHandler.java#L154-L174

Additional context and related issues

Release notes
( ) This is not user-visible or is docs only, and no release notes are required.
( ) Release notes are required. Please propose a release note for me.
( ) Release notes are required, with the following suggested text:
*

@willmostly do you want to take a look?

Actually PROXY_TARGET_HEADER will be gone after migrate to Airlift.
The header was needed because we were hooking into different execution phases in jetty proxy. We used the header to pass information between these hooks. So that's kind of a hacky way to persist information and it'll be gone.


Open connections lazily, in the client, rather than within the pool

The current strategy works quite well if the server uses keep alive, however if the server does not, we see a significant performance degradation (even more than expected from the lack of keep alive).
If the server does not support keep alive or only allows a few requests per connection, all of our workers repeatedly have their connections closed, and reopened, which slows down our pool, and can also overwhelm the server. The problem gets worse with larger numbers of workers.
Instead, we can open the connections lazily, after giving it to the client. This gives the client better control over retries, and relieves pressure on the pool.
In my benchmarking, connecting lazily barely has an impact on throughput, if any at all, it only occurs when you first start using the pool, but once the connections have been established performance is essentially the same.
As part of this change, I also removed the reconnections with exponential backoff which was needed for the async connect attempts, but now that we only connect on the caller, where we want to block as little as possible, I think it makes sense to remove, at least for now.
These changes would also correct the behaviour noted in https://github.com/keathley/finch/issues/23

Looks great! Don't forget to run mix deps.unlock --unused too, if we have no other use for the backoff lib.

This is awesome! It also resolves https://github.com/keathley/finch/issues/22

Confirmed that it solves the issue was was seeing in #23 👍


Backfilled subscriptions from existing subscription states

fixes https://github.com/TryGhost/Team/issues/2031, https://github.com/TryGhost/Team/issues/2032 and https://github.com/TryGhost/Team/issues/2033

this migration backfills the subscriptions table from the various subscription states a member can be in

Closing as the pitch has been shelved for now - migrations have been copied into the ref'd issues


"value is out of bounds" error

Hello!  I run a somewhat modified instant-merge server.
After the server was running for 10 minutes, this error just spammed the server console.
TypeError: value is out of bounds
    at checkInt (buffer.js:823:11)
    at Buffer.writeInt16LE (buffer.js:991:5)
    at Array.<anonymous> (/home/simonorj/server/instantmultiogar/src/packet/BinaryWriter.js:42:16)
    at BinaryWriter.ToBuffer (/home/simonorj/server/instantmultiogar/src/packet/BinaryWriter.js:119:25)
    at UpdateNodes.build4 (/home/simonorj/server/instantmultiogar/src/packet/UpdateNodes.js:89:19)
    at UpdateNodes.build (/home/simonorj/server/instantmultiogar/src/packet/UpdateNodes.js:17:36)
    at WebSocket.sendPacket (/home/simonorj/server/instantmultiogar/src/GameServer.js:1177:29)
    at PlayerTracker.update (/home/simonorj/server/instantmultiogar/src/PlayerTracker.js:275:17)
    at GameServer.updateClients (/home/simonorj/server/instantmultiogar/src/GameServer.js:403:30)
    at GameServer.mainLoop (/home/simonorj/server/instantmultiogar/src/GameServer.js:490:10)

The status command:
>st
[Console] Connected players: 12/64
[Console] Players: 12 - Bots: 0
[Console] Server has been running for 11 minutes
[Console] Current memory usage: 20.8/56.2 mb
[Console] Current game mode: Free For All
[Console] Current update time: 16.000 [ms]  (perfectly smooth)

In between this output is a huge spam of the TypeError.  I had to stop the server because this was happening too much.
I got another set of error again after around 10 minutes into the restart, but that only lasted 9 ticks (nine TypeErrors).
Does anyone know what went wrong?
Update: I got another set of the same error, this time for around 300 ticks.  Then it disappeared again.  This happened at 65 minute mark with 10 players on (and 4 players playing).
(On the other note, it looks like the memory leak is fixed for good :D)

Probably it's because some value in the cell has invalid value. Did you used latest packet* source? Because previously it has some mistakes which can raise this error even for good values.
But I fixed it in this commit: https://github.com/Barbosik/MultiOgar/commit/73482c11056319396526f537435385be1dba6b9b

The server is running based on the latest commit.  That is really weird.
I updated the zip file link I sent you in through Reddit PM.

ok, need to catch it, at a glance it looks that some value (position or nodeId, or color for example) has invalid value which is out of range. Could you please show the line 89 of UpdateNodes.js from version which throws this error?

Aha... found it! It looks like cell position. It's out of range for Int16. It's because you're using shifted map position.
There are two solutions for this issue, you can use any:

Just set serverScrambleCoords = 0
or
Fix your border size in gameserver.ini, the center of the border should be at position 0, 0.
It means that this border config is incorrect and will leads to such error:

borderLeft = 0
borderRight = 14000
borderTop = 0
borderBottom = 14000

And this one is correct and should not raise errors:
borderLeft = -7000
borderRight = 7000
borderTop = -7000
borderBottom = 7000

Under the hood: if you're using shifted border, the cell coordinate after scrambling may not fit to Int16 value range and in such case you will get error.
There is need to replace these borderLeft, borderTop, borderRight and borderBottom with borderWidth and borderHeight to avoid such issues

This is odd.  It doesn't seem to happen with official client.  However, it happens with unofficial clients, such as http://play.ogarul.tk/?ip=vps.simonorj.com:24270 .
This must be an issue with protocol 4 or the unofficial client.  Everything works fine when everyone uses the official client.  However, when the player on the unofficial client goesoutside around the position 14000, it starts giving the errors.
I will try the border tweak.  The current border size is 18000.

yes, it's because protocol 4 uses Int16. Official client uses protocol 8 with Int32 for cell coordinate, so it can use much wide range for cell coordinates.

At the moment you can correct border settings or disable serverScrambleCoords.
Later I will add fix for that.

just completed new collisions engine, now started to investigate your mod. Just want to optimize new engine for your mod. I see that currently your server has some lags. Needs to catch the bottle-neck.
Do you running the same version which you shared in zip?

It is the code that runs the server.  You can use git diff origin/master instantmerge to check the changes I made for the server.

The coordinate fix works well.  I've made the top/left borders -9000 and bottom/right borders 9000, and it seems to solve the problem.  This should be documented somewhere.
I've pulled the new commit that includes new collision engine.  I updated the zip file again.

Currently I implemented high-speed quad-tree based collision search algorithm.
I'm testing it now. At a glance works good. Now I'm able to run up to 500 bots :)
Need to solve some issues and it will be ready for commit soon.

fixed


DIGITS is not consistent with the training

I had recently started training 2 object detection models on the same laptop. The only difference was the number of epochs. I was surprised to see that one of them converged very fast while the other didn't converge.
How can a change in the number of epochs cause this?

Have you set a random seed?


openCV error

Dear Sir or Madam,
Thanks for your perfect project,
I have recently downloaded your code, whenever I run this program, I get the log message::
`2022-07-11 14:07:54.071816: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'cudart64_110.dll'; dlerror: cudart64_110.dll not found
2022-07-11 14:07:54.072299: I tensorflow/stream_executor/cuda/cudart_stub.cc:29] Ignore above cudart dlerror if you do not have a GPU set up on your machine.
2022-07-11 14:07:59.004639: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'cudart64_110.dll'; dlerror: cudart64_110.dll not found
2022-07-11 14:07:59.006895: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'cublas64_11.dll'; dlerror: cublas64_11.dll not found
2022-07-11 14:07:59.008711: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'cublasLt64_11.dll'; dlerror: cublasLt64_11.dll not found
2022-07-11 14:07:59.020651: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'cusolver64_11.dll'; dlerror: cusolver64_11.dll not found
2022-07-11 14:07:59.022187: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'cusparse64_11.dll'; dlerror: cusparse64_11.dll not found
2022-07-11 14:07:59.023715: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'cudnn64_8.dll'; dlerror: cudnn64_8.dll not found
2022-07-11 14:07:59.024096: W tensorflow/core/common_runtime/gpu/gpu_device.cc:1934] Cannot dlopen some GPU libraries. Please make sure the missing libraries mentioned above are installed properly if you would like to use GPU. Follow the guide at https://www.tensorflow.org/install/gpu for how to download and setup the required libraries for your platform.
Skipping registering GPU devices...
2022-07-11 14:07:59.025326: I tensorflow/core/platform/cpu_feature_guard.cc:193] This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN) to use the following CPU instructions in performance-critical operations:  AVX AVX2
To enable them in other operations, rebuild TensorFlow with the appropriate compiler flags.
Loaded model from disk
Traceback (most recent call last):
File "E:/Arman/My Project/Project61-aimentalEmotionDetection/Git_Emotio_Detection/Emotion_detection_with_CNN/TestEmotionDetector.py", line 28, in
frame = cv2.resize(frame, (1280, 720))
cv2.error: OpenCV(4.5.1) C:\Users\appveyor\AppData\Local\Temp\1\pip-req-build-oduouqig\opencv\modules\imgproc\src\resize.cpp:4051: error: (-215:Assertion failed) !ssize.empty() in function 'cv::resize'
`
What should I do?
Thanks so much,
Arman

Same error.

same error

It seems your input video is not in the correct format. When Open CV tries
to read the frame/image from the video it finds it as empty or currented
frame. Please try on some other videos.
you can also check the frame.shape before resize to make sure your
image/frame is valid.
Thanks!
Data Magic AI
Sunny Kusawa
On Sat, 19 Aug 2023 at 14:28, abbagowniakash @.***>
wrote:

same error
—
Reply to this email directly, view it on GitHub
https://github.com/datamagic2020/Emotion_detection_with_CNN/issues/1#issuecomment-1684898047,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AP3TB6AYEFZI337M3NWYRELXWB54ZANCNFSM53HCHAIQ
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***
com>


[V1.1] Update LH to support proveAndProcess in opmode

Summary
With v1.1 we are doing proveAndProcess for the aggregate root at the destination.
Acceptance Criteria

[x] proveAndProcess works in optimistic mode at all spoke
[ ] proveAndProcess works in slow mode at all spoke

Found proveAndProcess works in op-mode

After a bunch of testing, I am closing the issue as completed


Update ByteMLPerf with vendor Moffett-AI (S30) and backend SPU.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Added Jump Search in C

Have you read the Contributing Guidelines on Pull Requests?
Yes
Description
Added Jump Search in C.
Checklist

[x] I've read the contribution guidelines.
[x] I've checked the issue list before deciding what to submit.
[x] I've edited the README.md and link to my code.

Related Issues or Pull Requests
Fixes #2611

@HarshCasper Please check it.


Set testnet fork parameters

[x]   General Comment
 @CeForce will set up initial nodes with these parameters.

This pull request is now managed with CodeReviewHub. Refresh.

:shipit:


fixed compressed theta stream serialization

Pull Request Test Coverage Report for Build<PHONE_NUMBER>3
Details

1 of 1 (100.0%)  changed or added relevant line in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 98.964%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
16431

Relevant Lines:
16603

💛  - Coveralls


Adding Mavenlink.com

Added Mavenlink.com to the list.

Mavenlink has been replaced by Kantata per https://www.mavenlink.com.
This PR can probably be closed.


Add Firefox-Profiler based visualization

I think it will be an easy integration using https://github.com/parttimenerd/jfrtofp. Maybe @parttimenerd can help us

https://profiler.firefox.com/

Yes, I'm sure to help. It should be (for starters) enough to just convert the file and pass the Firefox Profiler page the URL, e.g. something like "http://localhost:8080/from-url/http%253A%252F%252Flocalhost%253A8080%252Ffiles%252Fp". Or you use https://github.com/parttimenerd/jfrtofp-server directly.
Be aware that the API is not yet final and it is currently under development :)

Completed with #11

Completed with #11


Add geometric mean as vector aggregation type

It would be nice to have also the geometric mean as a vector aggregation type, since it is more appropriate for metrics that are fractions (e.g., percentage of usage, accuracy,...).

I have probability-like performance measures. For these an average in the log-space (geo-mean) is more appropriate (e.g., if one of the entries drops down to zero, the "average" should be zero).
Sure, I can also sum up the numerators and divide them by the sum, but this would be a different measure.

I'm having difficulty visualising this, can you explain more about what these performance measures are and how they're instrumented?

Implementing a GEOMEAN aggregator should be straight forward, and I can imagine it will be useful for a small but relevant number of users. @BigCrunsh I guess the implementation effort will be similar to the effort you needed to invest to teach us about the uses of geometric means in your area of expertise.
Feature request accepted.

Thx @beorn7.
Example: Assume you have 100€. On the first day, you win 10%, on the second you loose 20%, and on the third you win 50%. The question is what is you average win? In order to do that you can take the geometric mean (see, e.g., here for more details). More extreme, to show that the arithmetic mean is not appropriate: Assume that you loose one day 100% of your money. Taking then the arithmetic mean give you some non-zero value, the geometric mean does.
This mostly applies to all quantities that are ratios and probabilities (like error probability) - in my examples precision, recall.
Hope that helps ;)

From my experience, every time I've seen someone aggregating ratios in monitoring the result was not what they wanted.

This mostly applies to all quantities that are ratios and probabilities

I've yet to see a case where it was correct to export a ratio. You want to export the numerator and denominator separately, and process them from there in Prometheus.
If this is not what you're doing, can you detail exactly what your instrumentation is?

Here's a thought: How about adding logarithm and power scalar functions? That should allow for this for the rare use cases where it comes up and is a valid use case.
My concern is that taking a mean of ratios or mean of means is a very very common mistake in the prometheus style of monitoring, and by offering a geometric mean it may cause even more confusion in this space.

My concern is that taking a mean of ratios or mean of means is a very very common mistake in the prometheus style of monitoring, and by offering a geometric mean it may cause even more confusion in this space.

@brian-brazil: Actually I agree. A mean of some counters is fine and a mean of ratios typically not, since the more appropriate equivalent is the geomean. And this is why I am asking ;)

Here's a thought: How about adding logarithm and power scalar functions? That should allow for this for the rare use cases where it comes up and is a valid use case.

@brian-brazil: In general, I like the idea of adding logarithm and power function (probably only because of my math background) - it indeed gives prometheus a higher flexibility. However, I don't think that this is a good alternative to implementing geomean; computing the geomean explicitly via AVG, EXP, LOG is too much logic in the presentation layer for me.

I've yet to see a case where it was correct to export a ratio. You want to export the numerator and denominator separately, and process them from there in Prometheus.

If this is not what you're doing, can you detail exactly what your instrumentation is?

@brian-brazil: Again, yes I could export the numerator and denominator separately, but only to compute then the measures I am actually interested in via the dashboard? But even then, I have to compute the geomean. In my context, I would like to observe the quality of a classification system with 25 different outcomes. The quality of each of these classes are measured by precision and recall (see above). In order to come up with an overall measure, people using the geomean either to combine precision and recall or to combine them over multiple classes. Note that, taking the pure arithmetic mean over the underlying counters is not sensitive enough and thus not appropriate in this domain.

A mean of some counters is fine and a mean of ratios typically not, since the more appropriate equivalent is the geomean. And this is why I am asking ;)

The geomean is still incorrect in the common use cases, as what you'd actually want is a weighted geomean to allow for servers getting different amounts of traffic. This is a big part of the reason of why I'm against making geomean easy to use, as people will misapply it in such cases (and get confused about what the difference between geometric and arithmetic means is).
It's correct and much easier to sum up the rates and then divide to calculate an arithmetic mean based on that.

computing the geomean explicitly via AVG, EXP, LOG is too much logic in the presentation layer for me.

What's your presentation layer?
This seems like an extremely rare use case to me (you're the first person to have it in my ~8 years of monitoring experience, and I'm not yet convinced your use case is correct), so I think it being a bit more wordy is not the end of the world.

Again, yes I could export the numerator and denominator separately, but only to compute then the measures I am actually interested in via the dashboard?

Yes, this the most common use case for Prometheus and how it's intended to be used.

In my context, I would like to observe the quality of a classification system with 25 different outcomes.

This sounds like a good place to use labels.

Note that, taking the pure arithmetic mean over the underlying counters is not sensitive enough and thus not appropriate in this domain.

That seems very odd to me, why's that the case?
I'd expect that precision of a double is going to be an issue for the counters, it's also going to be an issue for any other way of calculating the same result.
I'll also note that if you care that much about sensitivity, then Prometheus is not an appropriate solution for you as there's a number of races inherent in this type of system and other issues that will cause minor inaccuracies. See http://prometheus.github.io/docs/introduction/overview/#when-doesn't-it-fit?
The rule of prometheus monitoring is to do all of your aggregation and processing in Prometheus, and keep the instrumentation logic completely dumb. If you find yourself taking a rate or ratio in your binary, then you need to think how to do it just with counters and rates.

Again, I don't think geomean will be useful for system monitoring. But the vision for Prometheus (as set by our proud founding father Matt) has a larger scope. It's kind of the same thing as our discussion about negative observation values for summaries. You might want to monitor a measurement of a scientific experiment or something. If you already have a system (say a machine learning one, or you write a separate exporter binary for a 3rd party system with a different monitoring API) that spits out ratios of some kind. You don't want to change that existing system to export values at a lower level. You just want to export the ratios it spits out, and then you want to do some processing based on those ratios.
The possibility to simply provide exp and log as functions should be considered. exp(avg(log(metric))) is not that bad. :) If we do geomean, we probably also need geomean_over_time, which we don't need with the exp/log approach. Also, exp and in particular log might be useful in other cases, especially for ad hoc graphing. We'll take the way of least confusion.
In general, I don't think an aggregator named as arcanely as geomean will confuse those that don't understand geometric means. Also, the documentation should clearly state that geomean is for very special purposes.

https://github.com/prometheus/prometheus/pull/599 will add ln and exp. So once that is in, you can write exp(avg(ln(metric))) for geometric mean and exp(avg_over_time(ln(metric[10m]))) for geometric mean over time.


VCP

VCP + AVWAP screener
Stock should be having VCP
Price should not be too far from AVWAP
Price should close above AVWAP by crossing it in daily timeframe would be best.
AVWAP should be flat (like straight line type)

Fixed in 6887dbc2b5fc8f061868d4d3589f5a83fc571a40 and released under build : 477 and above. Try out option X > 12 > 34 or piped scanner : P_1_22 or P_1_23


feature: Create and save new Data set

Feature Request
Describe the Feature Request

User can Create and save a new Data set
Is your feature request related to a problem? Please describe

No
Describe Preferred Solution

User type name, description, setecs a feature set (previously created), selects criteria and save details
Additional Context

dupllicaded


Unable to publish DataSource due to Coudflare checks

Describe the bug
I'm trying to upload a parquet data source to Tableau Server using the server client python API but I get an error message because the server cannot review the connection's security.
Versions
Details of your environment, including:

Tableau Server version: 2021.4.3 (20214.22.0108.1039) 64-bit Linux
Python version: 3.10 (also tried 3.8)
TSC library version: 0.23.4

To Reproduce
Code to reproduce the error:
import pandas as pd
import tableauserverclient as TSC
from pathlib import Path

tableau_auth = TSC.TableauAuth('<USERNAME>', '<PASSWORD>', '')
server = TSC.Server('<SERVER>')

OUTPUT_PATH = Path("./output")
OUTPUT_PARQUET = OUTPUT_PATH / "test_data.parquet"
PROJECT_ID = "<PROJECT_ID>"

data = pd.DataFrame({
    "col1": [0,1,2] * 10,
    "col2": [5] * 30
})

data.to_parquet(OUTPUT_PARQUET)

new_datasource = TSC.DatasourceItem(PROJECT_ID)

with server.auth.sign_in(tableau_auth):
    new_datasource = server.datasources.publish(new_datasource, OUTPUT_PARQUET, 'CreateNew')

Results
I get the following error:

Cloudflare is a proxy that must have been set up by your server admin/IT department. You will have to talk to them about how you can use automation through it.

Cloudflare is a proxy that must have been set up by your server admin/IT department. You will have to talk to them about how you can use automation through it.

Closing as there isn't really anything we can do to help here.


Replace dynamic by Object/Object? in router.dart

Closes #77357

@goderbauer I messed things up while re-basing in the previous PR so here is a new cleaner one, could you review it?

test-exempt: code refactor with no semantic change.

@aminedakhlii The test failure looks unrelated, can you try rebase off the latest master branch?

@chunhtai done


Allow option to list node-types

Someone suggested a way to list node types. In Carrenza, this is tricky, but since I built in the option to SSH straight to specific machines it's less valuable.
In AWS, we can use the tags assigned to instances, so using a bit of jq magic, we can list all the types of instances available to SSH to.

It uses jq on the jumpbox within the environment, and every node has jq installed by default, so shouldn't be an issue.


Unable to show pod container logs - Internal Error in command execution

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

Start a cluster deployment via ACM
Start KUI
Run command oc logs cahl-aws-clust1-0-9j6lk-provision-25cfs -n cahl-aws-clust1 -c hive to list the logs for the container in the pod which is doing the cluster deployment so we can see the logs of what is happening
Error shows : Internal Error in command execution

Expected behavior
Logs are shown.   (And ability to use -f is also allowed/working)
When I run the same command from a standard terminal window, it works fine.
oc logs cahl-aws-clust1-0-9j6lk-provision-25cfs -n cahl-aws-clust1 -c hive | more
time="2020-06-23T13:52:11Z" level=debug msg="checking for SSH private key" installID=dgdpx2mt
time="2020-06-23T13:52:11Z" level=info msg="initializing ssh agent with 1 keys" installID=dgdpx2mt
time="2020-06-23T13:52:11Z" level=debug msg="no SSH_AUTH_SOCK defined. starting ssh-agent" installID=dgdpx2mt
Enter passphrase for /tmp/ssh-privatekey: time="2020-06-23T13:52:11Z" level=error msg="failed to add private key: /tmp/ssh-privatekey" error="exit status 1" installID=dgdpx2mt key=/tmp/ssh-privatekey
time="2020-06-23T13:52:11Z" level=info msg="ssh agent is not initialized" error="exit status 1" installID=dgdpx2mt
time="2020-06-23T13:52:11Z" level=info msg="waiting for files to be available: [/output/openshift-install /output/oc]" installID=dgdpx2mt
time="2020-06-23T13:52:11Z" level=info msg="found file" installID=dgdpx2mt path=/output/openshift-install
time="2020-06-23T13:52:11Z" level=info msg="found file" installID=dgdpx2mt path=/output/oc
time="2020-06-23T13:52:11Z" level=info msg="all files found, ready to proceed" installID=dgdpx2mt
time="2020-06-23T13:52:12Z" level=info msg="copied /output/openshift-install to /home/hive/openshift-install" installID=dgdpx2mt
time="2020-06-23T13:52:12Z" level=info msg="copied /output/oc to /home/hive/oc" installID=dgdpx2mt
time="2020-06-23T13:52:12Z" level=info msg="copying install-config.yaml" installID=dgdpx2mt
time="2020-06-23T13:52:12Z" level=info msg="waiting for files to be available: [/output/.openshift_install.log]" installID=dgdpx2mt

Screenshots

System

Kui version: 8.10.0

Verified fix in 8.10.3


Minor: add README to Catalog Folder

Which issue does this PR close?

Closes #12796.
Rationale for this change
I noticed that the catalog submodule doesn't have a README which is inconsistent with the other notable submodules.

What changes are included in this PR?
Added a README

Are these changes tested?
Yes

Are there any user-facing changes?
No

Thanks again @jonathanc-n and @lewiszlw


How to compose a table like this?

How do I compose a table like this?

https://github.com/typst/typst/issues/226
https://github.com/typst/typst/issues/169

Got it thanks to @waynr !

Got it thanks to @waynr !


Fetching a docvalue from the index

I am trying to figure out a way to fetch a binary docvalue from the index but I can't find anything online, Any suggestions on how to achieve this? Any help with this would be much appreciated. Thanks

Hello again, So I think I'm getting closer lol, seems like the way to go is to create a custom ICollector. Below is what I have so far. Am I on the right track so far?
`    public class MyCollector : ICollector
{
private readonly OpenBitSet _bits;
private int _docBase;
private BinaryDocValues _docValues;
private HashSet _values;
    public MyCollector(OpenBitSet bits)
    {
        _bits = bits ?? throw new ArgumentNullException(nameof(bits));
        _values= new HashSet<string>();
    }

    public bool AcceptsDocsOutOfOrder => true;

    public void Collect(int doc)
    {
        _bits.Set(doc + _docBase);

        if (_docValues== null)
        {
            return;
        }

        var byteRef = new BytesRef();
        _docValues.Get(doc, byteRef);
        _values.Add(byteRef.Utf8ToString());
    }

    public void SetNextReader(AtomicReaderContext context)
    {
        _docValues = context.AtomicReader.GetBinaryDocValues("the_value");
        _docBase = context.DocBase;
    }

    public void SetScorer(Scorer scorer)
    {
        // We don't care about the score.
    }
}`

You might try taking a look at the unit tests.  For example this code  may prove helpful.  For questions that are not an issue with the code or docs, it's best to post it on StackOverflow with a Lucene.net tag.  Sorry I didn't see your question here earlier.

Thanks.  We'd love to update the documentation to be more helpful.  Could you write up what you think it should be and post it here  with code sample and I can see if I can get it added to the docs?


Handle PDO driver extensions

Q
A

Bugfix
yes/no

BC Break
no

New Feature
yes

Description

Projects composer.json can require specific PDO drivers such as ext-pdo_mysql. These are passed to the CI container as pdo_mysql and are then passed as php<version>-pdo_mysql package to apt install. These packages do not exist and thus there will be an error if the appropriate extension(s) was/were not already installed/enabled. This patch handles the most common drivers mysql, pgsql and sqlite and ensure that these are installed/enabled along with the pdo extension.
fixes #252

Why not just install them by default? It is not like they are too large.

Why not install any extension by default then? 🤷🏼♂
I do not mind having it installed by default, just want to have it available - so yes, that could be another solution.

for the sake of simplicity, I will change my PR to include these as default then.
The main idea of the container initially was that it is small but if we agree on having it containing a bunch of defaults, that would work for me.
IMHO, database stuff is not used that much with this container but thats a different topic.

@boesing Can you continue work on this one?


Collect control data for Modelica

@dtgerson: "Ideally, we'd have a copy of this along with the requested data (yes to all the questions - note actuators includes 3x valves and the blower) for the 8 different covent settings - one set for air and one set for ox. If that's too painful, then 4x covent settings is probably fine. Getting a spread of both test lung settings and user settings (PIP/PEEP/RR) is all important. And link to requested data: https://github.com/RespiraWorks/SystemDesign/blob/master/quality-assurance/testing/testing-data/v0.2/test-README-template.md (edited) "

the data has been collected here: https://github.com/RespiraWorks/Ventilator/tree/master/software/sample-data/2020-07-01-Control-Tests-AIR-and-OXY
and model tuning results presented here by John Batteh: https://respiraworks.slack.com/archives/C011HUP75EJ/p1596589669449500
ticket ready to close


Retry-After needs small additional delay to work properly

The code for Retry-After doesn't work for me. I'm on a very fast computer with a very fast internet connection and the problem I'm having is that even though the request is being retried after the specified time, the server is still not ready for the request when it arrives. I fixed this problem for myself by adding an additional one second delay to the retry code. This should be fixed in a future version of this library. I'd be happy to make a pull request if anyone else is having this issue or if the authors think it would be useful.

I'll incorporate this change

Seems sensible to wait for the delay that Spotify specify. Maybe they were just a bit slow that day for some reason?

I'd say there should be some small additional timeout, perhaps a couple milliseconds?

Hi, I have the same problem.
Could you update the solution, please?
My best,


Validations not working beta3

in a model
jsonb_accessor :properties,
zoom: :integer
validates_numericality_of :zoom, greater_than_or_equal_to: 0, less_than_or_equal_to: 22 unless self.zoom.nil?
throws
undefined method `zoom' for #Class:0x12171a68

There's an issue with how the validation is declared.
jsonb_accessor :properties, zoom: :integer
validates_numericality_of :zoom, greater_than_or_equal_to: 0, less_than_or_equal_to: 22, if: :zoom?

You need unless/if to be a symbol as well as what you pass to it (in this case, :zoom?). You can pass any symbol there as long as it's an instance method on the object.


Drawing a border around a Text vector

Hi
In an app where I use a custom vector layer on my map, I have to implement a feature where text elements should have a border around them. I already use Text vector elements to draw the text itself, but making the border is a little more difficult !
The only way I can think of is:

create the text vector
call drawBitmap on the vector
read the resulting bitmap's width/height
Somehow convert the width/height and the text position into coordinates I can use to create a vector of MapPos, that I can then use to create a polygon around the text

Is there a simpler way to do this (in my case it may be a little more complicated since there's rotation involved) ? If not, then it would be nice to have a tool function that returns the projected map coordinates of the text bitmap, so we can draw relatively to it or allow more advanced decision making for the stuff around the text.

Have you looked at our 'custom popup' samples (Android/iOS sample projects)? These samples render custom text to a bitmap and the SDK displays this bitmap at the specified position. This seems to cover your needs, I think.

I see. That's another option, although I would have preferred to avoid platform-specific code, and I'll have to see how to import the bitmap data on Windows since there's no createBitmapFromFile.
If you don't mind I'll keep this open as a feature request : I hope that we can do this kind of stuff in the future directly with Carto vectors, rather than having to use native drawing libraries.

A few comments about the original proposal: unfortunately converting text bounds to map coordinates does not really well, as the coordinates may change as view parameters are changed. For example, most texts are fixed size, and are not scaling with map zoom level. Thus every time zoom level changes, map coordinates need to be recalculated.
Perhaps a better way would be to add border attributes to TextStyle and let SDK draw the border. I can not promise that we will implement this, but perhaps you could give us a list of additional TextStyle attributes you would need? I can think of 'border margin', 'border width' and 'border color', but I am not sure this covers it.

I proposed this kind of feature thinking that maybe someone would like to draw more complex shapes around texts (like the US route shields, demonstrated here http://bl.ocks.org/ToeBee/raw/6119134/#15/37.0518/-120.9675). But you are right to say it has its flaws!
To give some fuel to the design discussion, our current need is to just draw a rectangle around the text, with a specified padding between the line and the text. The text may have a background color, and will be rotated most of the time, so the rectangle should have the same rotation applied (and of course be sized according to the non-rotated text bitmap BBOX). So in that specific case, the more simple example you gave of adding a LineStyle to the text would suit just fine (along with a padding value).
Another more complex example I have in mind is what GeoServer does with texts and SLD styling. Basically, every text can be assigned one background element, either bitmap or vectorial. With that comes an option to automatically resize that background element according the rendered text size : none (no resizing), proportional to increase the background element size and keep its aspect ratio, or stretch to increase its size so that its width and height fits the text. This combination is interesting as it covers a pretty good amount of use cases.
Translating that to the current VectorElement API, maybe the Label could be optionally linked with another VectorElement, that would get transformed (changing the points positions if it's an actual vector) to match the computed label bitmap size after it is known.

@Shtong An update - we have implemented a basic version of this feature in the development branch and we will include it in the next release. Thus you can specify border width, border color, background color and border/background margins using TextStyle. We have currently no plans to implement the more general SLD-like styling.

Good to hear 👍 I'll check it out as soon as the update is available

@Shtong 4.1.3RC1 includes support for this feature. Feedback is very welcome.

Code sample
        /*
         * Text with border and line break
         */
        position = projection?.fromWgs84(NTMapPos(x: longitude - 0.01, y: latitude + 0.01))

        let textBuilder = NTTextStyleBuilder()
        textBuilder?.setBreakLines(true)
        textBuilder?.setBorderColor(Colors.green.toNTColor())
        textBuilder?.setTextMargins(NTTextMargins(left: 5, top: 5, right: 5, bottom: 5))
        textBuilder?.setColor(UIColor.black.toNTColor())
        textBuilder?.setFontSize(12.0)
        textBuilder?.setBackgroundColor(UIColor.white.toNTColor())
        textBuilder?.setBorderWidth(2.0)
        textBuilder?.setHideIfOverlapped(false)

        let text = "Look at me\nI'm broken in three lines\nand have a green border";
        let textElement = NTText(pos: position, style: textBuilder?.buildStyle(), text: text)
        source?.add(textElement)

Hey,
I just made a test, which worked as expected.
I'll just drop a small suggestion : have a text align setting. It was not needed with only one line, but with several lines maybe users will want to have shorter lines aligned on the center or right of the text area. Other than that (which I personally don't need), it looks good.


Extract metadata from self-hosted media urls and add it to images and videos

To recap, the basic idea is to make pictshare encode the metadata (dimensions) into the returned urls.
Backend decrypts such urls and adds metadata to img and video.
Caveat: max-width and max-height in image dimensions no longer work as expected.

Looks like I managed to fix the styles, but there are still some issues with layout shifts.


The 'b' tag is not recommended.

The <b> tag is not recommended. However, the <strong> tag affects the screen reader, so it's not a good idea either. I think it can use the same tag as <span>.
Other projects have identified the use of arbitrary tags. It seems to be one of the ways to use it.

No discussion needed to provide options.


Generated DNA Slot Data not showing in 5.3

Hi.
I've tried importing a few packs to 5.3( from 5.1.2) and I seem to get missing DNA and Slot Data for the Generated.asset. It appears to be mostly on females. Tried with Body Retexture vol.1 and Facepack.
Several "Object reference not set to an instance of an object" errors
Images show Missing and correct Data, plus debug info:

I have not seen this occur with fresh DNA. However, I have found that if you generate your helper code then change or remove a DNA value, regeneration does not remove references to the old DNA values, causing errors like this. I have had to manually strip old references out of "_Generated" files in order to get UMA back into a working state. Worse still, hitting "Generate Helper Code" brings all the old references back.

I have duplicated this, and I believe it is related to the previous issue (disappearing materials). What is happening is that it is trying to construct the materials on the overlay asset, but the material is null.
The Material in this case is a PBR Material for the eyes. I had the same issues you were seeing when I imported the "UMA Bod Retexture" before I had imported the PBR package (the PBR package contains the PBR materials).
If I have done this out of order, then the OverlayDataAssets and SlotDataAssets are already corrupted. To fix this, you have to import the PBR package, and then reimport the package with missing materials.
Since the problem is that the material is not being deserialized correctly, I can't tell you what material is missing. I can however, stop it from crashing and put up a notice that the material is missing so it doesn't look so ugly with all the error messages. I'll put some code in to do this.
I think it likely that we should merge the PBR package into the main package at some point so this doesn't affect people.

I have cleaned up the errors, and gave an actual error message in the console when the material is missing.
Example:
"Error: Materials are missing on Asset: Eye Overlay. Have you imported all the packages?"
Checked in a few places for the missing materials, to avoid all the obj ref errors.


Clear Wishlist not working

Bug:
The clear wishlist button is not working currently in our application.
Task:
On the Clicking Clear Wishlist button, we need to remove all the wishlisted books and navigate back to the home page.
Target Date: 26 March 2021

Done


update hive api

Signed-off-by: Hanqiu Zhang<EMAIL_ADDRESS>Hive 1.1.3
https://github.com/openshift/hive/commit/5c038fb051906a7c2d733e7b017690044c66c124

/hold

/lgtm

/unhold

For issue https://github.com/open-cluster-management/backlog/issues/12092


Solving challenge when no security code provided

Resolving the challenge relies on the security code, as per example in readMe. However, I don't get a code and when I open instagram on my phone or app it only asks me to confirm if the login attempt was made by me. (no code needed).
So how do I respond to the challenge, when I don't need a code?

By clicking on it was me on the app.

Well, is there a way to do it within the code itself?

If I were to do that and then run the program again, I would have to use the same session right?
I understand that device is created by hashing the username, so will always be the same.
How do I get my cookie back, so that instagram will not challenge the attempt again.
I did:
  if (fs.existsSync(__dirname + '/cookies/${user}.json')) {     var storage = JSON.parse(fs.readFileSync(__dirname + '/cookies/${user}.json'));     //console.log('storage: ', JSON.parse(storage));   } else {     var storage = new Client.CookieFileStorage(__dirname + '/cookies/${user}.json');   }
but got: "Error: storage is not an valid instance of CookieStorage"
when running:
Client.Session.create(device, storage, user, pw)

The storage made by just JSON parsing the cookie file is not CookieStorage Object.
Rather, it is a Javascript Object.
If you want to use existing cookie,
This line of code should work.
var storage = new Client.CookieFileStorage(__dirname + '/cookies/${user}.json');


Incorrect latex translation of Statevectort

Environment

Qiskit Terra version:

{'qiskit-terra': '0.21.2', 'qiskit-aer': '0.11.0', 'qiskit-ignis': None, 'qiskit-ibmq-provider': '0.19.2', 'qiskit': None, 'qiskit-nature': None, 'qiskit-finance': None, 'qiskit-optimization': None, 'qiskit-machine-learning': None}

Python version:

3.10

Operating system:

Macos

What is happening?
Incorrect latex output for Statevector.
How can we reproduce the issue?
from Qiskit import QuantumCircuit
from qiskit.quantum_info import Statevector
import numpy as np

qc = QuantumCircuit(4)
vector = np.array([0, 0, 0, 1, 0, 1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0]) / np.sqrt(6)
qc.prepare_state(vector)
st = Statevector(qc)
st.draw()

What should happen?
The resulting output is gibberish.  The zeros in the statevector aren't elided, but have the value None.  You end with stuff like None|0000\rangleNone in the generated latex.
Any suggestions?
The bug is in state_visualization.py and the function _state_to_latex_ket.  This function calls _round_if_close, believing that that function will convert all entries that are close to zero to zero. It doesn't do that.
_round_if_close calls np.real_if_close.  This numpy function only converts a complex array to a real array if all of imaginary parts are close to zero.  It does not work correctly if only some of the entries are close to zero.
It would be sufficient to change the two lines _state_to_latex_ket from
    data = _round_if_close(data)
    nonzero_indices = np.where(data != 0)[0].tolist()

to
    zero_indices = np.isclose(data, 0)
    nonzero_indices = [index for index, is_zero in enumerate(zero_indices) if not is_zero]

With qiskit-terra 0.22.2 it works well (it seems that that the bug has been fixed).

Closing the issue.  The bug has indeed been fixed in the newest release.


Feature Request: Variable stroke width

Thanks for making Phosphor icons open source, we love them. We really appreciate the attention to detail in retaining a clear consistency of style throughout the set as well as all the thoughtfulness put into their documentation and distribution.
We are currently using Phosphor in our web app at 16px and 20px for most icons, with some 24px and 32px icons for limited cases. We are having a little trouble getting the icon stroke width to look consistent across each size. Even experimenting with the various options (thin, light, regular etc.) we find that the bold 16px icons render a bit thin compared to larger icons of the same style. Additionally, we love the duotone set, but can't use this flexibly as the stroke weight is currently fixed.
We'd like to propose the idea of granular control of stroke width. Of course we recognise it may not be possible to render the icons properly and legibly at all stroke widths, but having some finer control might allow us to get consistency across icon sizes.
Another simpler idea may be to introduce a 'black' weight that helps us beef up icons at smaller sizes.
Would love to know what you think. If you're on board with this change we're more than happy to submit a pull request.
Thanks again for all your work on this!
Mike and @callum

Thanks for notes Mike! I hear you and we definitely thought a lot about this. In building the system we took kind of a middle ground by custom-creating 6 weights that work out of the box while giving away the raw assets for designers to manipulate further (medium design effort, some control, some flexibility, medium system complexity — see chart below).

What's wonderful about Feather and pure variable-type sets is the full flexibility in adjusting stroke width. However this comes at the cost you outlined, in the integrity of the glyph. For Phosphor, each weight is customized (e.g., optical fine-tuning in the dots, optical fine-tuning for readability, especially in Bold), so it's not set up to accommodate on-the-spot stroke adjustments.
All that said, there might be a world where your proposal gets layered on to the current approach. This can get messy though so we'll need to do some testing before we make a decision. In the meantime I'd suggest going in and beefing up or slimming down the strokes as needed.
Adding your other notes to the backlog:
• We'll consider a Black weight though Bold is already pushing the bounds of a 16px canvas. If we can maintain clarity while dropping some detail this might work, and it would be fun to have a super chunky weight.
• We realize the shortcomings of the Fill and Duotone weights, both being based off of the Regular stroke thickness. Perhaps there's a way we can decouple this parameter in the future.
Thanks and keep the feedback coming.
H

Thanks for the really detailed response Helena! It's useful to see your thinking behind the set and where it sits strategically compared to other icon sets. It all makes sense to me and I'm happy with what you've added to the backlog. Both seem challenging, but I look forward to seeing what you come up with! As you say, in the meantime we will experiment with the available widths and see how we can make things work. Thanks again for taking the time to reply in such detail.
Mike