[BUG] Creating a new AKS Hybrid workload cluster with -EnableAzureRBAC fails during azure-arc-onboarding due to k8s version

Describe the bug
While trying to deploy AKS Hybrid with the -enableAzureRBAC flag and prereqs, the last step of New-AksHciCluster hangs for 1800 seconds:

If you get the logs of that pod (obfuscating some GUIDs), you'll see its hung up on Error from server (NotFound): namespaces "azure-arc" not found:
C:\Windows\System32> kubectl logs azure-arc-onboarding-p6jpw -n azure-arc-onboarding

Cluster "azure-arc-kubernetes-bootstrap" set.
User "azure-arc-kubernetes-bootstrap" set.
Context "azure-arc-kubernetes-bootstrap" created.
Switched to context "azure-arc-kubernetes-bootstrap".
Set kubecontext successfully
az cloud set -n AzureCloud
az login --service-principal --username 4dcd36f3-20ee-xxxx-xxxx-xxxxxxxxxxxxxxxx --password xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx --tenant 40ed1e38-a16e-4622-xxxx-xxxxxxxxxxxxxxxxx
[
  {
    "cloudName": "AzureCloud",
    "homeTenantId": "40ed1e38-a16e-4622-xxxx-xxxxxxxxxxxxxxxxx",
    "id": "58debcdd-1886-404c-b68f-xxxxxxxxxxxxxxxxx",
    "isDefault": true,
    "managedByTenants": [],
    "name": "Dev - AKS Hybrid",
    "state": "Enabled",
    "tenantId": "40ed1e38-a16e-4622-xxxx-xxxxxxxxxxxxxxxxx",
    "user": {
      "name": "4dcd36f3-20ee-xxxx-xxxx-xxxxxxxxxxxxxxxx",
      "type": "servicePrincipal"
    }
  }
]
az account set -s 58debcdd-1886-404c-b68f-xxxxxxxxxxxxxxxxx
Error: release: not found
Helm release absent; Need to connect
WARNING: The properties DISTRIBUTION, INFRASTRUCTURE, LOCATION will be ignored for update commands
Set env variables for COMMAND and ARGS
Error from server (NotFound): namespaces "azure-arc" not found
az connectedk8s connect -g AKS-HyBridEngg -n erniecluster02  --distribution aks_workload --infrastructure azure_stack_hci --location eastus --onboarding-timeout 1800

That namespace exists, so I'm unsure what the error is going on about:
C:\Windows\System32> kubectl get namespace
NAME                   STATUS   AGE
azure-arc              Active   19m
azure-arc-onboarding   Active   20m
default                Active   25m
kube-node-lease        Active   25m
kube-public            Active   25m
kube-system            Active   25m

C:\Windows\System32> kubectl get pods -n azure-arc
NAMESPACE     NAME                                             READY   STATUS    RESTARTS   AGE
azure-arc     cluster-metadata-operator-5d76c86878-d655l       2/2     Running   0          27m
azure-arc     clusterconnect-agent-b8bdcf5b-xbz99              3/3     Running   0          27m
azure-arc     clusteridentityoperator-574fd956f8-pfxtf         2/2     Running   0          27m
azure-arc     config-agent-b5447c5d8-r5d7j                     2/2     Running   0          27m
azure-arc     controller-manager-6766955447-h9rbw              2/2     Running   0          27m
azure-arc     extension-events-collector-5b8499ff74-5xtsp      2/2     Running   0          27m
azure-arc     extension-manager-56957c9b5-5sfdd                3/3     Running   0          27m
azure-arc     flux-logs-agent-55d79f94cd-wbrvg                 1/1     Running   0          27m
azure-arc     guard-755cc8dd58-vbpjd                           0/2     Pending   0          27m
azure-arc     kube-aad-proxy-589c8dc56b-q97dp                  2/2     Running   0          27m
azure-arc     metrics-agent-d87c65f5f-qkw9s                    2/2     Running   0          27m
azure-arc     resource-sync-agent-64fcff7969-vqjzv             2/2     Running   0          27m

But the pod guard-755cc8dd58-vbpjd sticks out as it is 0/2 status, so let's describe it:
Node-Selectors:              kubernetes.io/os=linux
                             node-role.kubernetes.io/control-plane=
                             node-role.kubernetes.io/master=
Tolerations:                 node-role.kubernetes.io/master:NoSchedule
                             node.kubernetes.io/not-ready:NoExecute op=Exists for 300s
                             node.kubernetes.io/unreachable:NoExecute op=Exists for 300s
Events:
  Type     Reason            Age    From               Message
  ----     ------            ----   ----               -------
  Warning  FailedScheduling  2m44s  default-scheduler  0/6 nodes are available: 3 node(s) didn't match Pod's node affinity/selector, 3 node(s) had untolerated taint {node-role.kubernetes.io/control-plane: }. preemption: 0/6 nodes are available: 6 Preemption is not helpful for scheduling.

Well that is a problem! Kubernetes changed from master to control-plane awhile ago. Node-Selector labels are "inclusive", meaning all labels must match (a logical AND, if you will):
https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/
The way this deployment is configured will never work, as you wont have control-plane and master both at the same time (unless jumping between major version differences of k8s???).
I cannot personally confirm if this will progress now, because I think the job times out before I can manually edit things to "work", but this should be easy to reproduce.
To Reproduce

Follow the steps and pre-reqs here to get your environment configured for Azure RBAC: https://learn.microsoft.com/en-us/azure/aks/hybrid/azure-rbac-aks-hybrid#create-the-server-app-and-client-app
Deploy your cluster following the steps in the link above (Step 3, option A)
Watch it "hang" on the onboarding step

Expected behavior
Azure Arc registration completes with the -enableAzureRBAC flag and config.
Environment (please complete the following information):

OS: Windows Server 2022 Datacenter
Browser n/a
Version n/a
AKS-HCI Version: AKS Hybrid 2305 (Latest - https://github.com/Azure/aks-hybrid/releases/tag/AKS-hybrid-2305)
Kubernetes Version: 1.25.7

Collect log files

Available upon request; as secrets may be in them.

This DEF is related to the version of Kubernetes it is running on.
Tested the deployment on 1.23 and no scheduling issues. Looking at the nodes, we can see that they're both control-plane and master!
Someone has to update the azure-arc-onboarding stuff (namely, the guard deployment).
PS C:\Windows\system32> kubectl get nodes -o wide
NAME              STATUS     ROLES                  AGE    VERSION    INTERNAL-IP     EXTERNAL-IP   OS-IMAGE            KERNEL-VERSION     CONTAINER-RUNTIME
moc-l595w5d9s4u   NotReady   <none>                 1s     v1.23.12   <IP_ADDRESS>   <none>        CBL-Mariner/Linux   <IP_ADDRESS>-3.cm2   containerd://1.6.18
moc-ljwkuwsej4z   Ready      control-plane,master   5m8s   v1.23.12   <IP_ADDRESS>   <none>        CBL-Mariner/Linux   <IP_ADDRESS>-3.cm2   containerd://1.6.18
moc-lqdv2ou1uqw   Ready      control-plane,master   10m    v1.23.12   <IP_ADDRESS>   <none>        CBL-Mariner/Linux   <IP_ADDRESS>-3.cm2   containerd://1.6.18

Hi @eponerine
I'm using Azure AD RBAC as well, same deployment option. The clusters are at Kubernetes 1.24.11 and control planes are labeled as 'control-plane.master' and everything works fine. It starts to fail with Kubernetes 1.25, because arc onboarding will not finish - old / missing control-plane label - correct?

Yup, bingo.
PG is aware of this. At least I spammed them via email a few weeks ago.
My suggestion is to open a ticket thru Azure Portal about this issue so it gets engineering eyes on it.

Ok, thanks. I'll stay at Kubernetes 1.24.* until this is fixed.

@Elektronenvolt - can you open a ticket thru Azure Portal describing this issue? And once done, pass the ticket number along to me?
I never got around to opening one and PG said they need one to move forward. My environment is currently at capacity to test this.

@eponerine - created a support case and added you to a conversation with the PG.

@Elektronenvolt - thanks. I pinged the same folks (plus more) on my other email thread referencing this ticket. Hopefully there is movement.

Interesting. I'll probably be deploying a new cluster soon. I'll test it with latest k8s version

It looks like it's fixed. The guard component has a higher version and includes the changes I received from support as workaround.

Marking as closed.
@Elektronenvolt - what program do you use for diff'ing text files? I love the comparison "flow" UI there. I've been using BeyondCompare for years, but willing to try something new :D

Meld: https://meldmerge.org/


Won't update from RC1 to release

My chocolatey does not want to update from .28-RC1 to .28 release. I tried
choco update chocolatey -pre
and
choco update chocolatey

This is a duplicate of #122


Environment entities directly linked to services fail the startup

Listen Ports or JMS Inbound Destinations that have directly link to services in order to route messages will prevent the container to start.
At the time of the environment bundle building, services are not available yet (because are into deployment bundles) and cannot be referenced.
Deployment bundle contents should be exposed to environment bundle building to allow proper referencing.

Tracked internally by DE405300


Add DeleteKeyword Command

It deletes all filtered people from addressbook

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@0a3cf63). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master       #9   +/-   ##
=========================================
  Coverage          ?   71.49%
  Complexity        ?      399
=========================================
  Files             ?       71
  Lines             ?     1242
  Branches          ?      126
=========================================
  Hits              ?      888
  Misses            ?      321
  Partials          ?       33

Continue to review full report at Codecov.

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


Use STDC_HOSTED

When it is 0, avoid streaming?

I was unaware of this constant. The draft of the standard ISO/IEC 14882:2011 claims...
STDC_HOSTED
The integer constant 1 if the implementation is a hosted
implementation or the integer constant 0 if it is not.

STD_HOSTED
Sorry about the typing mistakes.

I just can't get this spelling right. It is what you wrote in the title.

Haha, that's the markdown messing with your underscores! Try:
\_\_STDC_HOSTED\_\_

to get __STDC_HOSTED__ or
`__STDC_HOSTED__`

to get __STDC_HOSTED__.

@ckormanyos are you using this macro? I forget why I add it and it's not being used correctly. It seems to me that supporting a free-standing implementation involves a lot more than just hiding the streaming operators and I don't currently know how I'd test that CNL was properly complying without researching how the new freestanding stuff works. Any input appreciated.

I just dug through saw the original email thread. I've fixed this up but still wonder whether it's actually necessary. Nothing about CNL requires that you use the streaming operators. And even without them, there are plenty of other standard library features that are #included by CNL which mean it won't compile under a strict freestanding implementation with standard library headers missing.
I think a better approach might be to individually test for existence of individual source files using __has_include. Optionally, additionally, I'd want to test for individual library/language features using a combination of the feature test macros and __STDC_HOSTED__.
 Ideally, I'd like to either

find a freestanding implementation of C++ which I can use to build and test CNL in the pipeline, or
maybe just install the compiler without installing the standard library. However, that would be prohibitively difficult given how much of the standard library I depend on. So really, I'd prefer the former.

Thoughts? Do you know of a good way to test support for freestanding platforms in the pipeline?

find a freestanding implementation of C++ which I can use to build and test CNL in the pipeline

I have been meaning to do more work with CNL in general. In particular, I can try to compile on some OS-less bare metal systems like AMR Cortex, etc. I should really take a deeper dive into this before commenting definitively on this issue.
If some of these ARM builds can be successful, or made to be successful, you I could support the CNL effort perhaps with some of the work I am doing at the moment. My work this part of my work intends to build and run ARM deeply embedded code compiled with arm-none-eabi within Ubuntu pipelines and running on QEMU. This pipeline is close to that state, but just needs the verification of either a Boolean value or the return value from main.

@ckormanyos that is very interesting. I may have to use that as I have plans (#811) to refresh my CI images after the new Ubuntu/GCC/Clang drop in a month or two. In the list is exploration of a project that aims to recreate the C++ free-standing environment here. Perhaps some of the command lines in the associated Dockerfiles will be of help to you.
All the best,
John

If some of these ARM builds can be successful...

I made a benchmark program that runs scaled-integer through a quadratic equation.
I did successfully run it on an ARM Cortex-M4F core in hard real time and also on QEMU and also on Segger Debugger. The results were fascinating, excellent compact code with options for compile-time constexpr evaluation if desired.
I ended up using two data types
using fixed_point_bin_type = cnl::scaled_integer<std::int32_t, cnl::power<-10>>;
using fixed_point_dec_type = cnl::scaled_integer<std::int32_t, cnl::power<-3, 10>>;

I also build the standalone benchmark on arm-none-eabi-g++ with -std=c++20 in CI here
There is really a lot of information to discuss and I will write you a detailed report on the findings, all of which were positive.


Feature request: console level

Page offers a console event but it is not possible to know the level of the message (log, error...).
page.on('console', function (...args) {
    // No way to know if this is an error
})

Would it be possible to implement a way to know the level? I don't know what would be the cleanest way, either one more event per level:
page.on('consoleError', ...)

or a new type of event:
page.on('consoleWithType', function ({type, args}) ...

Basically here: https://github.com/GoogleChrome/puppeteer/blob/master/lib/Page.js#L308 the event type is totally ignored

@ebidel - I didn't know if creating a Console object with its own Events class property would be preferable; I couldn't find anywhere else in the project that didn't explicitly declare it's events, or output more than one.
Let me know what you recommend and I'll submit a PR!

@michaelfward I like page.console namespace that will deliver specific events; go for it!
page.console.on('log', console.log);
page.console.on('warn', console.warn);
page.console.on('debug', console.debug);
page.console.on('pageerror', console.error);


requireCamelCaseOrUpperCaseIdentifiers and destructure assignment doesn't play nice

Hi!
When using the requireCamelCaseOrUpperCaseIdentifiers rule with the ignoreProperties flag turned on, JSCS still flags destructured assignments in functions
Sample JSCS config
{
  "esnext": true,
  "esprima": "babel-jscs",
  "requireCamelCaseOrUpperCaseIdentifiers":{
    "ignoreProperties": true
  }
}

Sample failed Javascript
  const x = ({testProperty: test_property}) => testProperty.length;

Results in
All identifiers must be camelCase or UPPER_CASE at src/test.js :
     3 |
     4 |  var x = ({testProperty: test_property}) => testProperty.length;
----------------------------------^

The same issue applies to default destructuring, but that is understandable.
  const x = ({test_property, ...rest}) => test_property.length;

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/28801376-requirecamelcaseoruppercaseidentifiers-and-destructure-assignment-doesn-t-play-nice?utm_campaign=plugin&utm_content=tracker%2F281640&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F281640&utm_medium=issues&utm_source=github).

Wanna try to tackle this bug?

@markelog Sure! Any pointers for doing so?
I've got something along the lines of retrieving the node, and then determining the parent node of the AST to see if it is an ObjectProperty type. Will post a PR soon!


Parsing file content to nf-gpt plugin

Hello everyone,
i am currently trying to get the plugin to run for file data. That means i have a data file and want to parse the content to the plugin.
Since the plugin currently only accepts strings i need to do the following (at least that's where i am at right now):

Read or parse the file content into a string using nextflow
Use that string as input for the gptPromptForText() function

This is what i have so far:
nextflow.enable.dsl=2

include { gptPromptForText } from 'plugin/nf-gpt'

workflow {

    // define input
    def query = Channel
                .fromPath( 'data/data.bf' )
                .map { it -> it.text }

    query.view()

    // parse input to gpt prompt
    println gptPromptForText(query)
}

With this i am encountering the following error:
Launching `main.nf` [exotic_shirley] DSL2 - revision: 507e71f1b4

Missing process or function gptPromptForText([DataflowBroadcast around DataflowStream[?]]) -- Did you mean 'gptPromptForText' instead?

 -- Check script 'main.nf' at line: 17 or see '.nextflow.log' file for more details

Any thoughts why this might happen? Any solution to the problem or alternative approaches? I am happy for any help.
Thanks in advance.

Much simpler, you can do
    def data = file('data/data.bf').text
    // parse input to gpt prompt
    println gptPromptForText(data)

Then you can either invoke gptPromptForText in a process or in map or flatMap operator

Thank you, i found a solution for my problem. I am not sure i was able to fully describe my issue here, but your suggestions helped.


Required fields for adding a WSDL resource to a proxy service are not being validated correctly.

Description:
After creating a proxy service, when attempting to add a WSDL resource, the Location and Key fields are marked as required. However, these fields are not validated properly, allowing the addition of a WSDL resource with empty Location and Key values.
Suggested Labels:

Suggested Assignees:

Affected Product Version:
v1.0.1
OS, DB, other environment details and versions:
Steps to reproduce:
Related Issues:

ParamManager component related validation issues are being tracked in https://github.com/wso2/mi-vscode/issues/400


don't need ex10.I

I presume the use of I here is a vestige of pre-#228.

I was looking at ex10 to see whether it might be a good candidate to exemplify enforce #591, which doesn't currently appear in docs.  It works, simply replacing condense with enforce; indeed the output is identical to many decimal places, but I don't know whether it's worthwhile.  It doesn't simplify the user-level script as the use of penalize did ex19 in #637.


Requests for non-existent results kill API pods

Example: https://api.biosimulations.dev/results/xxx?includeData=false
For reasons I don't understand, this generates a severe error which requires restarting the pod.

Interesting. This can be replicated locally as well. Seems to be caused by an unhandled aync error. Looks like after the initial 404, there is another 404 that occurs but is not caught, probably due to retrying.

@jonrkarr should I work on this?

Caused by https://github.com/biosimulations/Biosimulations/blob/f206559bd2d0ceb92241c56f711a7790d0fdbb1f/apps/api/src/results/results.service.ts#L43
The first promise is not awaited until later in the method. If the second promise fails, the first will continue to execute, leading to an uncaught promise exception.

:tada: This issue has been resolved in version 9.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Support features that are used in 344 Homework and Calcite

[x] divison
[x] inner join syntax
[x] generalized group by support (see #48 )
[x] automatic add alias if no alias is provided
[x] support having

all these features completed.


Implement a macro to help implement GstElements

(Includes https://github.com/jf2048/gobject/pull/30 and https://github.com/jf2048/gobject/pull/29)
Started to port some GStreamer elements to it here: https://gitlab.freedesktop.org/thiblahute/gst-plugins-rs/-/commits/port_to_gobject
Fixes: https://github.com/jf2048/gobject/issues/25

I decided to move that into [gstreamer-rs itself])https://gitlab.freedesktop.org/thiblahute/gstreamer-rs/-/commits/gobject_macro) and openned https://github.com/jf2048/gobject/pull/33 to make it possible.
Closing


README.md should link to pyguide.md & render that as markdown

https://google.github.io/styleguide/ appears to display README.md rendered properly.
But it links to https://google.github.io/styleguide/pyguide.html which is the obsolete python style guide.
If I try to open https://google.github.io/styleguide/pyguide without a file extension it opens the html file.  :(
If I try to open https://google.github.io/styleguide/pyguide.md it displays the raw markdown instead of rendering it. :(
How does github.io even work?

@gpshead Please see my attempt in #394 .


Skip reading voice-acted NPC dialogue

By hooking into FFXIV's sound management, we can detect when playback starts for voice-acted lines and skip reading out the corresponding text. Voice lines are detected by applying some heuristics to their file names; these heuristics may not be perfect. The file name of a sound is only available when it's loaded, and not later when it's played back, so some care must be taken to correctly keep track of voice line sound resources and their corresponding memory addresses as they're loaded and unloaded by the game.
I consider this experimental, and it'll probably be fine-tuned as I continue to play through the main story with it enabled. I'm submitting this now for early feedback and testing.
Resolves #7.

Looks good - in case I ever need to update these, how did you get the sigs for this?

I found the signature strings in the Sound Filter plugin: https://git.anna.lgbt/ascclemens/SoundFilter/src/branch/main/SoundFilter/Filter.cs#L12

Added a comment to that effect for future reference.


Error updating agent:

Description
On the settings page:
When pushing update agent button I get an error
Got also this error, when creating a new agent with azure as provider
Steps to Reproduce the Bug

got to settings page
click 'update agent' button
receive error

V2: create agent

go to settings page
select new agent
add details for azure API key
select commands (read file, write file, append file, searx search)

Expected Behavior
get access to the edit entry fields.
Actual Behavior

Additional Context / Screenshots
No response
Operating System

[ ] Microsoft Windows
[ ] Apple MacOS
[X] Linux
[ ] Android
[ ] iOS
[ ] Other

Python Version

[ ] Python <= 3.9
[X] Python 3.10
[ ] Python 3.11

Environment Type - Connection

[X] Local
[ ] Remote

Environment Type - Container

[ ] Using Docker
[X] Not Using Docker

Acknowledgements

[X] My issue title is concise, descriptive, and in title casing.
[X] I have searched the existing issues to make sure this bug has not been reported yet.
[X] I am using the latest version of AGiXT.
[X] I have provided enough information for the maintainers to reproduce and diagnose the issue.

You may need to clear your commands in your json file for your agent, but this should be fixed now as well.


Added option for units inside of config.js

I added an option for changing the units in config.js. I think this was in the original repository but it never made it to the V2 branch.

Nice one!
Please also add it to https://github.com/MichMich/MagicMirror/blob/v2-beta/js/defaults.js since that holds the values in case the user doesn't configure it.

And make sure you add information about this to the documentation (Readme)

Sure thing. The changes to the defaults.js and readme.md should be in this pull request. First time ever contributing through Github but I think I have it done correctly.

Congratulations to your first ever merged pull request! :) Thanks for contributing to Magic Mirror! 👍


DRAFT update quorum and event structs

Implemented as part of https://github.com/vrrb-io/vrrb/pull/402


Remove hmr from last build

Overview

New build with NODE_ENV set to production.
Fixes https://github.com/tj/react-click-outside/pull/11#issuecomment-215596384

thanks!

@tj No worries.  Not sure if https://github.com/tj/react-fatigue-dev/pull/4 is the right approach, but hopefully that prevent this from happening again.

Last build have hmr once again. Maybe should consider #10 more seriously.


If ISTIO enabled , data loading init job does not exit

If istio is enabled in the vdc charts, the init* jobs will have an additional istio proxy.
However this proxy will be running & not exit when for example the postgres data loading has completed.
There is some discussion of the relationship between sidecars such as istio & jobs at https://github.com/istio/istio/issues/6324
For now mitigation is to disable istio (which isn't yet default in any case)
However istio is needed even in jobs as it will monitor & permit/deny traffic between the pods.

The VDC environment will need significant re-work to adapt to the many changes made in Egeria to better support
metadata integration. Additionally the helm charts used for the lab & a simple base config have evolved to better support
different types of services, exposing of ports, persistent storage etc.
As such specific incremental changes to the current - now old - charts do not really add value.
As such closing for now


remove IIS Dev time support in VS /3

Fixes #23975
Removes
Enable development-time IIS support in Visual Studio
from VS6+
@adityamandaleeka please assign a reviewer.

@HaoK @wtgodbe PTAL


cloudconfig without network section causes metrics server to fail to start

Describe the bug
The metrics server throws an exception when a cloud config without network section is uploaded. In addition, if a director is recreated with such a cloud config, the metrics server job fails to start.
To Reproduce
Steps to reproduce the behavior (example):

Deploy a bosh director (Version v270.11.0) on virtualbox with metrics server ops file
Upload cloud config without network section

disk_types:
  - disk_size: 120000
     name: test

ssh onto the director
query metrics with
curl http://localhost:9092/metrics
See exception thrown in:
/var/vcap/sys/log/director/metrics_server.stderr.log

Alternatively, recreate the director after uploading the cloud config. This causes the metrics server to fail to start.
Expected behavior
no exception
Logs
File: /var/vcap/sys/log/director/metrics_server.stderr.log
<PHONE_NUMBER>4380 rufus-scheduler intercepted an error:
<PHONE_NUMBER>4380   job:
<PHONE_NUMBER>4380     Rufus::Scheduler::IntervalJob "30s" {}
<PHONE_NUMBER>4380   error:
<PHONE_NUMBER>4380<PHONE_NUMBER>4380
<PHONE_NUMBER>4380     Bosh::Director::ValidationMissingField
<PHONE_NUMBER>4380     Required property 'networks' was not specified in object ({"disk_types"=>[{"disk_size"=>120000, "name"=>"test"}]})
<PHONE_NUMBER>4380       /var/vcap/data/packages/director/1945d30775477aadc066dbcaade169aa6a960cfc/gem_home/ruby/2.6.0/gems/bosh-director-0.0.0/lib/bosh/director/validation_helper.rb:16:in `safe_property'
<PHONE_NUMBER>4380       /var/vcap/data/packages/director/1945d30775477aadc066dbcaade169aa6a960cfc/gem_home/ruby/2.6.0/gems/bosh-director-0.0.0/lib/bosh/director/deployment_plan/cloud_manifest_parser.rb:48:in `parse_networks'
<PHONE_NUMBER>4380       /var/vcap/data/packages/director/1945d30775477aadc066dbcaade169aa6a960cfc/gem_home/ruby/2.6.0/gems/bosh-director-0.0.0/lib/bosh/director/deployment_plan/cloud_manifest_parser.rb:14:in `parse'
<PHONE_NUMBER>4380       /var/vcap/data/packages/director/1945d30775477aadc066dbcaade169aa6a960cfc/gem_home/ruby/2.6.0/gems/bosh-director-0.0.0/lib/bosh/director/metrics_collector.rb:127:in `block in populate_network_metrics'
<PHONE_NUMBER>4380       /var/vcap/data/packages/director/1945d30775477aadc066dbcaade169aa6a960cfc/gem_home/ruby/2.6.0/gems/bosh-director-0.0.0/lib/bosh/director/metrics_collector.rb:126:in `map'
<PHONE_NUMBER>4380       /var/vcap/data/packages/director/1945d30775477aadc066dbcaade169aa6a960cfc/gem_home/ruby/2.6.0/gems/bosh-director-0.0.0/lib/bosh/director/metrics_collector.rb:126:in `populate_network_metrics'
<PHONE_NUMBER>4380       /var/vcap/data/packages/director/1945d30775477aadc066dbcaade169aa6a960cfc/gem_home/ruby/2.6.0/gems/bosh-director-0.0.0/lib/bosh/director/metrics_collector.rb:105:in `populate_metrics'
<PHONE_NUMBER>4380       /var/vcap/data/packages/director/1945d30775477aadc066dbcaade169aa6a960cfc/gem_home/ruby/2.6.0/gems/bosh-director-0.0.0/lib/bosh/director/metrics_collector.rb:54:in `block in start'
<PHONE_NUMBER>4380       /var/vcap/data/packages/director/1945d30775477aadc066dbcaade169aa6a960cfc/gem_home/ruby/2.6.0/gems/rufus-scheduler-3.6.0/lib/rufus/scheduler/jobs.rb:223:in `do_call'
<PHONE_NUMBER>4380       /var/vcap/data/packages/director/1945d30775477aadc066dbcaade169aa6a960cfc/gem_home/ruby/2.6.0/gems/rufus-scheduler-3.6.0/lib/rufus/scheduler/jobs.rb:267:in `trigger_now'
<PHONE_NUMBER>4380       /var/vcap/data/packages/director/1945d30775477aadc066dbcaade169aa6a960cfc/gem_home/ruby/2.6.0/gems/rufus-scheduler-3.6.0/lib/rufus/scheduler/jobs.rb:312:in `block (3 levels) in start_work_thread'
<PHONE_NUMBER>4380       /var/vcap/data/packages/director/1945d30775477aadc066dbcaade169aa6a960cfc/gem_home/ruby/2.6.0/gems/rufus-scheduler-3.6.0/lib/rufus/scheduler/jobs.rb:315:in `block (2 levels) in start_work_thread'
<PHONE_NUMBER>4380       /var/vcap/data/packages/director/1945d30775477aadc066dbcaade169aa6a960cfc/gem_home/ruby/2.6.0/gems/rufus-scheduler-3.6.0/lib/rufus/scheduler/jobs.rb:301:in `loop'
<PHONE_NUMBER>4380       /var/vcap/data/packages/director/1945d30775477aadc066dbcaade169aa6a960cfc/gem_home/ruby/2.6.0/gems/rufus-scheduler-3.6.0/lib/rufus/scheduler/jobs.rb:301:in `block in start_work_thread'
<PHONE_NUMBER>4380       /var/vcap/data/packages/director/1945d30775477aadc066dbcaade169aa6a960cfc/gem_home/ruby/2.6.0/gems/logging-2.2.2/lib/logging/diagnostic_context.rb:474:in `block in create_with_logging_context'

Versions (please complete the following information):

Infrastructure: any
BOSH version 270.11.0

Additional context
This seems to have been introduced with commit: https://github.com/cloudfoundry/bosh/commit/699d5fa73be661e2187fc1eeadf2cbe66eb09ab3
In this line it iterates over all cloud configs and requires them to have a network section when accessing the network property https://github.com/cloudfoundry/bosh/blob/de77df94368f6e6b06860b16af39e14dee0a03f7/src/bosh-director/lib/bosh/director/deployment_plan/cloud_manifest_parser.rb#L48
This also happens if multiple cloud configs are uploaded and only one of them does not have a network defined.
cc @BeckerMax

Hi @moritzfalke while we acknowledge the bug and I'll shortly submit a fix, the cloud config technically lists networks as required here https://bosh.io/docs/cloud-config/#networks.
In most use cases networks is generally required to deploy anything. In your case here, which I would argue may not be the most useful, networks aren't used since we don't have validation when there isn't a deployment, it isn't apparent that networks are required.

Hi @h4xnoodle ,
Our production use case is that we use multiple named cloud configs. Similar to what is described in the generic config doc: https://bosh.io/docs/configs/ . In our case not all of those cloud configs specify a network section.
Therefore, your second point will cover our use case.
Thanks!

We tested it with the the provided fix and the error still appears.
We are working on a contribution to fix it.
New stacktrace:
/var/vcap/data/packages/director/ffdc857ce0b4db61d54446def6b79e1d050203c6/gem_home/ruby/2.6.0/gems/bosh-director-0.0.0/lib/bosh/director/validation_helper.rb:16:in `safe_property': Required property 'networks' was not specified in object ({"disk_types"=>[{"disk_size"=>120000, "name"=>"test"}]}) (Bosh::Director::
ValidationMissingField)
        from /var/vcap/data/packages/director/ffdc857ce0b4db61d54446def6b79e1d050203c6/gem_home/ruby/2.6.0/gems/bosh-director-0.0.0/lib/bosh/director/deployment_plan/cloud_manifest_parser.rb:48:in `parse_networks'
        from /var/vcap/data/packages/director/ffdc857ce0b4db61d54446def6b79e1d050203c6/gem_home/ruby/2.6.0/gems/bosh-director-0.0.0/lib/bosh/director/deployment_plan/cloud_manifest_parser.rb:14:in `parse'
        from /var/vcap/data/packages/director/ffdc857ce0b4db61d54446def6b79e1d050203c6/gem_home/ruby/2.6.0/gems/bosh-director-0.0.0/lib/bosh/director/metrics_collector.rb:127:in `block in populate_network_metrics'
        from /var/vcap/data/packages/director/ffdc857ce0b4db61d54446def6b79e1d050203c6/gem_home/ruby/2.6.0/gems/bosh-director-0.0.0/lib/bosh/director/metrics_collector.rb:126:in `map'
        from /var/vcap/data/packages/director/ffdc857ce0b4db61d54446def6b79e1d050203c6/gem_home/ruby/2.6.0/gems/bosh-director-0.0.0/lib/bosh/director/metrics_collector.rb:126:in `populate_network_metrics'
        from /var/vcap/data/packages/director/ffdc857ce0b4db61d54446def6b79e1d050203c6/gem_home/ruby/2.6.0/gems/bosh-director-0.0.0/lib/bosh/director/metrics_collector.rb:105:in `populate_metrics'
        from /var/vcap/data/packages/director/ffdc857ce0b4db61d54446def6b79e1d050203c6/gem_home/ruby/2.6.0/gems/bosh-director-0.0.0/lib/bosh/director/metrics_collector.rb:51:in `start'
        from /var/vcap/data/packages/director/ffdc857ce0b4db61d54446def6b79e1d050203c6/gem_home/ruby/2.6.0/gems/bosh-director-0.0.0/bin/bosh-director-metrics-server:26:in `<top (required)>'
        from /var/vcap/packages/director/bin/bosh-director-metrics-server:29:in `load'
        from /var/vcap/packages/director/bin/bosh-director-metrics-server:29:in `<main>'

Does the metrics server still not start correctly?
I intended to keep the raise message in the logs, but the change should ignore it. The code that raises this message is correct (within the parser). For an individual cloud config, no networks doesn't make any sense. For metrics we'll just 'ignore'.
Is this an observation in the logs or still the cause of the server not starting? Can you provide your fixtures that get the metrics server to not start? Thanks for contributing.

Yes, the metrics server still failed to start. It failed because some of the cloud configs of in our test data were missing the networks field completely and not only the value.
While we saw that rescuing the ValidationMissingField would solve this issue we went for another solution:
On PR  2243 we followed the deploy flow where the cloud configs first get consolidated before they are parsed. We implemented the same here.
Also we still throw an error if the consolidated cloud configs miss required fields or values. For us a release with these changes are sufficient.
As an additional resilience improvement we could not fail metric emition if the consolidated config is invalid.
What do you think about it?

Thanks for the fix -- looks good to me. Consolidating before parsing is a better way.
Merged in now, thanks!


Guru Meditation Error: Core  0 panic'ed (Interrupt wdt timeout on CPU0).  (IDFGH-10904)

Answers checklist.

[X] I have read the documentation ESP-IDF Programming Guide and the issue is not addressed there.
[X] I have updated my IDF branch (master or release) to the latest version and checked that the issue is present there.
[X] I have searched the issue tracker for a similar issue and not found a similar issue.

IDF version.
4.4.5
Operating System used.
macOS
How did you build your project?
Command line with idf.py
If you are using Windows, please specify command line type.
None
Development Kit.
ESP32 - Custom Board
Power Supply used.
External 3.3V
What is the expected behavior?
The application to not encounter an interrupt wdt timeout.
What is the actual behavior?
Random panics with Interrupt wdt timeouts.
Steps to reproduce.
Unsure of steps to reproduce at this time. Attempting to build an example project that exhibits the same behaviour.
Debug Logs.
Guru Meditation Error: Core  0 panic'ed (Interrupt wdt timeout on CPU0).

Core  0 register dump:
PC      : 0x4008364c  PS      : 0x00050035  A0      : 0x4008c12d  A1      : 0x3ffbe950
0x4008364c: _xt_lowint1 at /Users/robert/espressif/esp-idf/release/v4.4.5/components/freertos/port/xtensa/xtensa_vectors.S:1114

0x4008c12d: i2c_isr_handler_default at /Users/robert/espressif/esp-idf/release/v4.4.5/components/driver/i2c.c:553

A2      : 0x3ffcc73c  A3      : 0x3ffbe048  A4      : 0x4008364c  A5      : 0x3ffbe910
0x4008364c: _xt_lowint1 at /Users/robert/espressif/esp-idf/release/v4.4.5/components/freertos/port/xtensa/xtensa_vectors.S:1114

A6      : 0x3ffcc73c  A7      : 0x00000000  A8      : 0x00000001  A9      : 0x40092e9a
0x40092e9a: _frxt_int_enter at /Users/robert/espressif/esp-idf/release/v4.4.5/components/freertos/port/xtensa/portasm.S:119

A10     : 0x3ff000dc  A11     : 0x00000001  A12     : 0x00000002  A13     : 0x3ffbe8f0
A14     : 0x3ffbf5a0  A15     : 0x3ffbe910  SAR     : 0x00000017  EXCCAUSE: 0x00000005
EXCVADDR: 0x00000000  LBEG    : 0x4000c2e0  LEND    : 0x4000c2f6  LCOUNT  : 0xffffffff
Core  0 was running in ISR context:
EPC1    : 0x400d5833  EPC2    : 0x00000000  EPC3    : 0x40094eb8  EPC4    : 0x40094eb8
0x400d5833: uart_hal_write_txfifo at /Users/robert/espressif/esp-idf/release/v4.4.5/components/hal/uart_hal_iram.c:35

0x40094eb8: i2c_ll_get_intsts_mask at /Users/robert/espressif/esp-idf/release/v4.4.5/components/hal/esp32/include/hal/i2c_ll.h:244
 (inlined by) i2c_hal_get_intsts_mask at /Users/robert/espressif/esp-idf/release/v4.4.5/components/hal/i2c_hal_iram.c:73

0x40094eb8: i2c_ll_get_intsts_mask at /Users/robert/espressif/esp-idf/release/v4.4.5/components/hal/esp32/include/hal/i2c_ll.h:244
 (inlined by) i2c_hal_get_intsts_mask at /Users/robert/espressif/esp-idf/release/v4.4.5/components/hal/i2c_hal_iram.c:73

Backtrace: 0x40083649:0x3ffbe950 0x4008c12a:0x3ffb6040 0x40093bca:0x3ffb6060 0x40084021:0x3ffb60a0 0x4011bc9e:0x3ffb60c0 0x400932b1:0x3ffb60f0
0x40083649: _xt_lowint1 at /Users/robert/espressif/esp-idf/release/v4.4.5/components/freertos/port/xtensa/xtensa_vectors.S:1114

0x4008c12a: i2c_isr_handler_default at /Users/robert/espressif/esp-idf/release/v4.4.5/components/driver/i2c.c:551

0x40093bca: xQueueReceive at /Users/robert/espressif/esp-idf/release/v4.4.5/components/freertos/queue.c:1487

0x40084021: queue_recv_hlevel_wrapper at /Users/robert/espressif/esp-idf/release/v4.4.5/components/bt/controller/esp32/bt.c:816

0x4011bc9e: btdm_controller_task at ??:?

0x400932b1: vPortTaskWrapper at /Users/robert/espressif/esp-idf/release/v4.4.5/components/freertos/port/xtensa/port.c:142

Core  1 register dump:
PC      : 0x4020178e  PS      : 0x00060b35  A0      : 0x800d5361  A1      : 0x3ffbc420
0x4020178e: esp_pm_impl_waiti at /Users/robert/espressif/esp-idf/release/v4.4.5/components/esp_pm/pm_impl.c:832

A2      : 0x00000000  A3      : 0x00000000  A4      : 0x8009348d  A5      : 0x3fff58f0
A6      : 0x00000003  A7      : 0x00060023  A8      : 0x80178fce  A9      : 0x3ffbc3f0
A10     : 0x00000000  A11     : 0x3ffc3a18  A12     : 0x3ffc3b0c  A13     : 0x3ffb7dfc
A14     : 0x3ffc3b0c  A15     : 0x00060023  SAR     : 0x0000001b  EXCCAUSE: 0x00000005
EXCVADDR: 0x00000000  LBEG    : 0x00000000  LEND    : 0x00000000  LCOUNT  : 0x00000000

Backtrace: 0x4020178b:0x3ffbc420 0x400d535e:0x3ffbc440 0x4020c00d:0x3ffbc460 0x400932b1:0x3ffbc480
0x4020178b: cpu_ll_waiti at /Users/robert/espressif/esp-idf/release/v4.4.5/components/hal/esp32/include/hal/cpu_ll.h:183
 (inlined by) esp_pm_impl_waiti at /Users/robert/espressif/esp-idf/release/v4.4.5/components/esp_pm/pm_impl.c:830

0x400d535e: esp_vApplicationIdleHook at /Users/robert/espressif/esp-idf/release/v4.4.5/components/esp_system/freertos_hooks.c:63

0x4020c00d: prvIdleTask at /Users/robert/espressif/esp-idf/release/v4.4.5/components/freertos/tasks.c:3987 (discriminator 1)

0x400932b1: vPortTaskWrapper at /Users/robert/espressif/esp-idf/release/v4.4.5/components/freertos/port/xtensa/port.c:142

More Information.
The panic randomly occurs, usually with the first 60-70s after launching and only happen on chip revision 1.1. The application executes fine using chip rev 1.0.

Here's another example of a crash, slightly different back trace:
Guru Meditation Error: Core  0 panic'ed (Interrupt wdt timeout on CPU0).

Core  0 register dump:
PC      : 0x40083647  PS      : 0x00050d35  A0      : 0x40083ced  A1      : 0x3ffbe950
0x40083647: _xt_lowint1 at /Users/robert/espressif/esp-idf/release/v4.4.5/components/freertos/port/xtensa/xtensa_vectors.S:1114

0x40083ced: queue_isr_handler at /Users/robert/espressif/esp-idf/release/v4.4.5/components/bt/controller/esp32/hli_api.c:170

A2      : 0x3ffcc73c  A3      : 0x3ffbe048  A4      : 0x4008bf24  A5      : 0x3ffbe910
0x4008bf24: i2c_isr_handler_default at /Users/robert/espressif/esp-idf/release/v4.4.5/components/driver/i2c.c:484

A6      : 0x3ffcc73c  A7      : 0x00000000  A8      : 0x00000001  A9      : 0x40092e9a
0x40092e9a: _frxt_int_enter at /Users/robert/espressif/esp-idf/release/v4.4.5/components/freertos/port/xtensa/portasm.S:119

A10     : 0x00000000  A11     : 0x00060021  A12     : 0x00000000  A13     : 0x3ffbe8f0
A14     : 0x3ffbf5a0  A15     : 0x3ffbe910  SAR     : 0x0000001e  EXCCAUSE: 0x00000005
EXCVADDR: 0x00000000  LBEG    : 0x4000c2e0  LEND    : 0x4000c2f6  LCOUNT  : 0xffffffff
Core  0 was running in ISR context:
EPC1    : 0x400d5833  EPC2    : 0x00000000  EPC3    : 0x4008361c  EPC4    : 0x4008361c
0x400d5833: uart_hal_write_txfifo at /Users/robert/espressif/esp-idf/release/v4.4.5/components/hal/uart_hal_iram.c:35

0x4008361c: _xt_lowint1 at /Users/robert/espressif/esp-idf/release/v4.4.5/components/freertos/port/xtensa/xtensa_vectors.S:1114

0x4008361c: _xt_lowint1 at /Users/robert/espressif/esp-idf/release/v4.4.5/components/freertos/port/xtensa/xtensa_vectors.S:1114

Backtrace: 0x40083644:0x3ffbe950 0x40083cea:0x3ffbc020 0x400d535e:0x3ffbc040 0x4020c00d:0x3ffbc060 0x400932b1:0x3ffbc080
0x40083644: _xt_lowint1 at /Users/robert/espressif/esp-idf/release/v4.4.5/components/freertos/port/xtensa/xtensa_vectors.S:1114

0x40083cea: queue_isr_handler at /Users/robert/espressif/esp-idf/release/v4.4.5/components/bt/controller/esp32/hli_api.c:168

0x400d535e: esp_vApplicationIdleHook at /Users/robert/espressif/esp-idf/release/v4.4.5/components/esp_system/freertos_hooks.c:63

0x4020c00d: prvIdleTask at /Users/robert/espressif/esp-idf/release/v4.4.5/components/freertos/tasks.c:3987 (discriminator 1)

0x400932b1: vPortTaskWrapper at /Users/robert/espressif/esp-idf/release/v4.4.5/components/freertos/port/xtensa/port.c:142

Core  1 register dump:
PC      : 0x4020178e  PS      : 0x00060e35  A0      : 0x800d5361  A1      : 0x3ffbc420
0x4020178e: esp_pm_impl_waiti at /Users/robert/espressif/esp-idf/release/v4.4.5/components/esp_pm/pm_impl.c:832

A2      : 0x00000000  A3      : 0x00000000  A4      : 0x8009348d  A5      : 0x3fff58c0
A6      : 0x00000003  A7      : 0x00060023  A8      : 0x80178fce  A9      : 0x3ffbc3f0
A10     : 0x00000000  A11     : 0x00000000  A12     : 0x8009348d  A13     : 0x3fff58f0
A14     : 0x00000003  A15     : 0x00060023  SAR     : 0x0000001b  EXCCAUSE: 0x00000005
EXCVADDR: 0x00000000  LBEG    : 0x00000000  LEND    : 0x00000000  LCOUNT  : 0x00000000

Backtrace: 0x4020178b:0x3ffbc420 0x400d535e:0x3ffbc440 0x4020c00d:0x3ffbc460 0x400932b1:0x3ffbc480
0x4020178b: cpu_ll_waiti at /Users/robert/espressif/esp-idf/release/v4.4.5/components/hal/esp32/include/hal/cpu_ll.h:183
 (inlined by) esp_pm_impl_waiti at /Users/robert/espressif/esp-idf/release/v4.4.5/components/esp_pm/pm_impl.c:830

0x400d535e: esp_vApplicationIdleHook at /Users/robert/espressif/esp-idf/release/v4.4.5/components/esp_system/freertos_hooks.c:63

0x4020c00d: prvIdleTask at /Users/robert/espressif/esp-idf/release/v4.4.5/components/freertos/tasks.c:3987 (discriminator 1)

0x400932b1: vPortTaskWrapper at /Users/robert/espressif/esp-idf/release/v4.4.5/components/freertos/port/xtensa/port.c:142

I'm able to consistently produce the crash using a minimal program that I published here: https://github.com/rlake-mysa/esp32-1.1-crash.git.
The program is using WiFi + NimBLE and reading from an i2c sensor as fast as possible.

@rlake-mysa  What if there is only i2c goes or there is only wifi&bt goes? Still wdt or both of them works well. Only mix them together fails?

@rlake-mysa  What if there is only i2c goes or there is only wifi&bt goes? Still wdt or both of them works well. Only mix them together fails?

@rlake-mysa  What if there is only i2c goes or there is only wifi&bt goes? Still wdt or both of them works well. Only mix them together fails?

I have seen a similar crash with I2C access in a tight loop (without WiFi, without BT).

@mythbuster5 I'm testing now with only i2c (wifi & bt not enabled). I will report status later today regarding the outcome.

After testing for a few hours the device would only crash with I2C+WiFi+BLE.

Is there any update on this issue? I've got a similar problem. After restarting the device esp_restart()  I have a continuous problem with Guru Meditation Error: Core  0 panic'ed (Interrupt wdt timeout on CPU0).  And is creating boot-loop, only power cut helping.

I think I have found a 'workaround' for this issue. I pinned the I2C task to core 0 - the same as the main task. There must be some constraint that requires I2C access to be done on the same core as the I2C driver was initialized. After making
that change the application is stable.

@rlake-mysa i just started having this issue today with the latest esp-idf (master) I2C driver.
I'm only trying to initialize the master bus with cfg:
i2c_master_bus_config_t i2c_master_conf = {
            .clk_source = I2C_CLK_SRC_DEFAULT,
            .i2c_port = I2C_NUM_0,
            .sda_io_num = GPIO_NUM_21,
            .scl_io_num = GPIO_NUM_22,
            .flags.enable_internal_pullup = true,
            .glitch_ignore_cnt = 9,
    };

i2c_new_master_bus function fails when i2c device is connected to power, weird, sometimes the function works on other times just causes the wdt panic

@rlake-mysa i just started having this issue today with the latest esp-idf (master) I2C driver.
I'm only trying to initialize the master bus with cfg:
i2c_master_bus_config_t i2c_master_conf = {
            .clk_source = I2C_CLK_SRC_DEFAULT,
            .i2c_port = I2C_NUM_0,
            .sda_io_num = GPIO_NUM_21,
            .scl_io_num = GPIO_NUM_22,
            .flags.enable_internal_pullup = true,
            .glitch_ignore_cnt = 9,
    };

i2c_new_master_bus function fails when i2c device is connected to power, weird, sometimes the function works and other times just causes the wdt panic

Seeing the exact same thing

i2c_new_master_bus This function will cause panic? This is a non-blocking interface, where it might stuck in?

i2c_new_master_bus This function will cause panic? This is a non-blocking interface, where it might stuck in? I have never met before, @kaffepanna could you please give more clue?

See https://github.com/espressif/esp-idf/issues/12929. I am getting the same error with ESP-IDF 5.2.0. I have posted the stack trace.

Hello, I also getting this error randomly.
I2C port configuration :
.i2c_port = 0,
.clk_source = I2C_CLK_SRC_DEFAULT,
.intr_priority = 0,
.sda_io_num = 21
.scl_io_num = 22
.glitch_ignore_cnt = 7
.flags.enable_internal_pullup = true

The Backtrace is :

I (851) gpio: GPIO[21]| InputEn: 1| OutputEn: 1| OpenDrain: 1| Pullup: 1| Pulldown: 0| Intr:0
I (851) gpio: GPIO[22]| InputEn: 1| OutputEn: 1| OpenDrain: 1| Pullup: 1| Pulldown: 0| Intr:0
Guru Meditation Error: Core  0 panic'ed (Interrupt wdt timeout on CPU0).

Core  0 register dump:
PC      : 0x40081ae0  PS      : 0x00060034  A0      : 0x80081cdc  A1      : 0x3ffb20c0
A2      : 0x3ffefb58  A3      : 0x00000100  A4      : 0x3ffefe7c  A5      : 0x00060023
A6      : 0xb33fffff  A7      : 0xb33fffff  A8      : 0x00000400  A9      : 0x3ffb20b0
A10     : 0x00000001  A11     : 0x00000000  A12     : 0x00000000  A13     : 0x3ffdbac0
A14     : 0x00000003  A15     : 0x00060323  SAR     : 0x0000000f  EXCCAUSE: 0x00000005
EXCVADDR: 0x00000000  LBEG    : 0x4000c46c  LEND    : 0x4000c477  LCOUNT  : 0x00000000
Core  0 was running in ISR context:
EPC1    : 0x4013b177  EPC2    : 0x00000000  EPC3    : 0x00000000  EPC4    : 0x40081ae0

Backtrace: 0x40081add:0x3ffb20c0 0x40081cd9:0x3ffb2100 0x40088539:0x3ffb2120 0x4012e70b:0x3ffdbb40 0x400d2f9b:0x3ffdbb90 0x400eedd9:0x3ffdbbe0 0x400ef6fb:0x3ffdbc10 0x400ef90d:0x3ffdbc40 0x40108d16:0x3ffdbc60 0x40109042:0x3ffdbc80 0x401090c9:0x3ffdbca0 0x401091a5:0x3ffdbd10 0x400e5cf2:0x3ffdbd40 0x400de930:0x3ffdbd60 0x400d1979:0x3ffdbd80 0x400d2a25:0x3ffdbdc0 0x4008c37c:0x3ffdbde0 0x4008f9b1:0x3ffdbe10

  #0  0x40081add:0x3ffb20c0 in i2c_master_isr_handler_default at C:\Users\Utilisateur\.platformio\packages\framework-espidf\components\driver\i2c/i2c_master.c:578
  #1  0x40081cd9:0x3ffb2100 in shared_intr_isr at C:/Users/Utilisateur/.platformio/packages/framework-espidf/components/esp_hw_support/intr_alloc.c:443
  #2  0x40088539:0x3ffb2120 in _xt_lowint1 at C:\Users\Utilisateur\.platformio\packages\framework-espidf\components\xtensa/xtensa_vectors.S:1240
  #3  0x4012e70b:0x3ffdbb40 in i2c_new_master_bus at C:\Users\Utilisateur\.platformio\packages\framework-espidf\components\driver\i2c/i2c_master.c:865 (discriminator 2)
...

hi
i got this error on combination of I2C and Interrupt set Button action. It comes if i press button a few times than suddenly it gets this error:
Guru Meditation Error: Core  0 panic'ed (Interrupt wdt timeout on CPU0)

Core  0 register dump:
MEPC    : 0x40805c24  RA      : 0x408075e8  SP      : 0x4080d150  GP      : 0x4080b790
TP      : 0x40809d64  T0      : 0x7fffffff  T1      : 0x42001276  T2      : 0x00000002
S0/FP   : 0xffffffff  S1      : 0x00000001  A0      : 0x4087db0c  A1      : 0x4087d4fc
A2      : 0x00000018  A3      : 0x00000018  A4      : 0x4087d4fc  A5      : 0x4087d4fc
A6      : 0xfa000000  A7      : 0x00000003  S2      : 0x00000000  S3      : 0xffffffff
S4      : 0x4087db0c  S5      : 0x00000001  S6      : 0x00000000  S7      : 0x00000000
S8      : 0x00000000  S9      : 0x00000000  S10     : 0x00000000  S11     : 0x00000000
T3      : 0x4080d6e8  T4      : 0x00000000  T5      : 0x00000001  T6      : 0x00000000
MSTATUS : 0x00001881  MTVEC   : 0x40800001  MCAUSE  : 0x00000018  MTVAL   : 0x00004310
MHARTID : 0x00000000

thats the button definition:
void IRAM_ATTR isr() {
  if (button1.pressed) {
	  button1.pressed = false;
    Serial.println("button1 pressed false");
  }
  else {
    button1.pressed = true;
    Serial.println("button1 pressed true");
  }
}

the I2C is a pca9685 with adafruit library #include <Adafruit_PWMServoDriver.h>
So i think there is a bug causing collision of i2c and interrupt.
hape

Remove the "Serial.println" from your ISR and try again. That should never be placed inside an ISR.

@kriegste thats totally true a noob error :-). I have searched and found the explanation and that makes totally sense. If someone reads this and needs explanation here it is: https://forum.arduino.cc/t/serial-print-inside-interrupt/537369/10
That also let me see things different with main loop and interrupts.


fix: readme updated to add new locale

I think the part that was not clear is how to actually use this new locale.

Just checked the code.
It's just:
 <datepicker
        :language="translation"
</datepicker>

:tada: This PR is included in version 1.0.1 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


fix: remove the infinite loop on sql servers virtual network rules

The iterator next call must be in the for loop

Hi @sergeylanzman,
Do you have a chance to check this one also, please?


delete_by_query for entire doc_type throws ValidationError

When I run es_conn.delete_by_query(my_index_name, doc_type=my_doc_type), ES is throwing me
TransportError(400, u'ActionRequestValidationException[Validation Failed: 1: source is missing;]')
Is this intentional? ES 1.40, elasticsearch-py 1.1.1

Aaaaand, nevermind. I see that adding the argument body={'query':{'match_all': {}}} sorts us out. Apologies.

There is also a dedicated API for deleting an entire doc_type (including the mapping) in case that is what you were after - http://elasticsearch-py.readthedocs.org/en/master/api.html#elasticsearch.client.IndicesClient.delete_mapping

Oh thanks! In this case I was actually specifically looking to delete records but preserve mapping. FWIW this is in my personal elasticsearch backend for haystack, which I know you've done plenty of work on. I settled on clear() doing a delete_by_query instead of deleting the mapping because some really nasty race conditions can happen otherwise where records for that doctype might be inserted between clearing and re-adding the mapping, causing mapping conflicts and huge explosions :)
If there happens to be (now or in the future) a way to wipe out a doctype and replace it's mapping in a serialized fashion, that'd be handy for achieving the original intent.

Have you looked at elasticsearch-dsl (0)? It provides an easier integration with elasticsearch without the limitations of haystack. It doesn't have Django integration (yet), but it could help.
Unfortunately Elasticsearch doesn't have much support for transactional behavior. what I would suggest there is use individual indices and use aliases to switch them around. Also deleting an entire index is a very lightweight operation compared to delete_by_query.
0 - https://github.com/elasticsearch/elasticsearch-dsl-py

Oh wow, I hadn't seen this. It looks really awesome! If by django integration you mean view/form/template stuff, I've never used that side of haystack anyways. As for hooking up modification signals and updating the backend, I've always had to roll my own versions of those things anyways.
I have seen mention of the alias-swapping strategy now that you mention it. It seemed a little overwhelming to implement behind haystack, if I understood it correctly. It'd be really neat if elasticsearch-dsl could help manage aliased 'versions' of the index behind the scenes, seems like the sort of pattern that a library could help spare some pain and stumbling on.
Thanks much!


Find old code that highlighted lines in VSC for Jupyter

Was done and screenshots provided here https://github.com/DonJayamanne/pythonVSCode/issues/303#issuecomment-249756292
    const options: vsc.DecorationRenderOptions = {
        before: { contentText: '', backgroundColor: 'white', height: '1px', width: '99%' }
    };
    editor.setDecorations(vsc.window.createTextEditorDecorationType(options), [new vsc.Range(3, 0, 10, 0)]);

@rchiodo /cc


Redo of PR #1402 with proper fix for #1457

Redoing my changes from PR #1402 with a proper fix for #1457 (thanks to @hornos)

I suggest to leave only "permission fix" in this PR.
other systemd changes do not work for Ubuntu, please see https://ci.appveyor.com/project/SoftEtherVPN/softethervpn/builds/40445640

once we merge "permission fix" to master, we can address other changes in next PR

Fair enough, I'll pull out the systemd changes then


New TimeClips should be created at current playback time

Describe the bug
New TimeClips always appear at 0 on the timeline.
Please complete the following information):

OS: win
Version: 3.2.2

To Reproduce
Steps to reproduce the behavior:

Drag the timeline to the left
Create a timeclip

Expected behavior
The TimeClip should start at the current playback time.

This feature will be available in v3.3.0


[HOLD for payment 2024-10-17] [HOLD for payment 2024-10-16] Invoices - Balance is cut off when device font size is small

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: 9.0.46-1
Reproducible in staging?: Y
Reproducible in production?: N/A - new feature, doesn't exist in prod
Issue was found when executing this PR: https://github.com/Expensify/App/pull/46813
Email or phone of affected tester (no customers<EMAIL_ADDRESS>Issue reported by: Applause Internal Team
Action Performed:
Precondition:

Device font size should be small (depending on the screen size, might need to adjust font size to the smaller size).

Launch New Expensify app.
Go to workspace settings.
Go to Invoices.

Expected Result:
The balance will not be cut off.
Actual Result:
The balance is cut off.
Workaround:
Unknown
Platforms:

[x] Android: Native
[ ] Android: mWeb Chrome
[x] iOS: Native
[ ] iOS: mWeb Safari
[ ] MacOS: Chrome / Safari
[ ] MacOS: Desktop

Screenshots/Videos
https://github.com/user-attachments/assets/02f7b321-a954-44be-b888-161113c5e84a

View all open jobs on GitHub
Issue OwnerCurrent Issue Owner: @stephanieelliott

We think that this bug might be related to #vip-bills

Checking

https://github.com/Expensify/App/pull/46813 this PR introduces the invoice balance view and is a part of this deployment

@rezkiy37 can you take a look?

Hi, I am Michael (Mykhailo) from Callstack, an expert agency and I can work on this issue.

@mjasikowski Can you please assign me this issue since I reviewed the PR? Thanks!

@allroundexperts done

Hey @allroundexperts can you complete the BZ checklist when you get a sec?

Checklist

https://github.com/Expensify/App/pull/46813
The author is aware of this, and fixed the issue himself in this PR.
N/A
A regression test would be helpful.

Regression test

Set the device font size to be small.
Launch New Expensify app.
Go to workspace settings.
Go to Invoices.

Verify that the balance will not be cut off.
Do we 👍 or 👎 ?

@allroundexperts I would change "Verify that the balance will not be cut off." to "verify the balance amount is displayed correctly". Otherwise seems fine.

@mjasikowski Updated!

Summarizing payment on this issue:

Contributor: @allroundexperts $250, please request via ND
Contributor+: @mjasikowski no payment due

Regression test issue is here:


Inconsistent cost predictions vs transactions vs renter info

Darwin 1.0
I bought 10GB of storage. It was quoted at around 1500 SC.
My wallet then sent many transactions, with a total well in excess of the original quote, around 10000 SC.  This screenshot shows most of the transactions that were sent in this batch.
This is what renter returns, which seems inconsistent as well (the 5346 transaction alone seems larger than the allocated funds)
Renter info:
	Storage Spending:  25.43 mS
	Upload Spending:   20.97 SC
	Download Spending: 0 H
	Unspent Funds:     3.932 KS
	Total Allocated:   3.953 KS

Tracking 1 files:
 252.0 KB<PHONE_NUMBER>023.png (uploading, 8.33%)

I don't know if this is "just" the UI misreporting things, or if something more lower level is going on.

The renter is saying that it only used 4,000 coins between all of the contracts. Not sure why that's such a gap from 1500.
The wallet is reported that 10,000 coins have been spent?

If I add up all the transactions that happened when I bought the 100GB, I get around 7000 SC of spending (not quite 10000, sorry for rounding up so aggressively :) but still far away from 1500)

Ok. That's definitely not right, I have some ideas about why though.

The contract formation right now is failing with a large percentage of the hosts, which means that the price estimation is off. The price estimation and formation use the cheapest hosts, but if too many cheap hosts fail, you will switch to the more expensive hosts, resulting in a bad estimation.

I was actually suspecting something like that. The host market is so illiquid right now that it results in a lot of granularity and discrepancies between what Sia predicts will happen based on available information and what deals actually do get passed on the market/blockchain.

That still doesn't explain why renter reports spending 4 KS when my outgoing transactions add up to more than that?
Also, I uploaded some more files (well within my already concluded 10GB contract), and more SC is being sent from the wallet? -584.58 I was expecting to not have to spend any more once I had signed the contracts?

Same Problem
10 GB, Estimated 1300,But really cost 7500
And still show : not enough contracts to upload files  (when upload file)
ScreenShot

fixed in #409

To clarify, there were some changes on the front end as well as the back end, multiple bugs were causing such heavy overspending, and now most are fixed. Estimates will still be off sometimes, but usually by less than 20% instead of being 1500 vs 7500.
More improvements are being pursued.


vNext Proposal: Add console output in diagnostics

Overview
As debugging on the hololens is quite painful it would enormously speed up bug finding when e.g. a log output would be able to have as an overlay to get immediate feedback while testing on the hololens.

Please reopen with a little more detail of your proposal :)
thanks!
yoyo


Add support for flattening arrays and change transforms arguments to …

…an object.
Closes #401
In the future, I might enhance the flatten transform a bit more so you can specify the specific fields that you want to flatten (as in unwind).

@knownasilya can you run the tests for this branch locally and give me some hint of what's going on?
All the tests pass just fine on my machine 😕

I get one failure

Coverage decreased (-0.2%) to 99.752% when pulling c359cb39bf8cefe6f15bc76f881b8a038aa5e4c4 on juanjoDiaz:improve_built_in_transforms into fae71668cee5e136eed52660a4f274a52a93916e on zemirco:master.

Coverage decreased (-0.2%) to 99.752% when pulling c359cb39bf8cefe6f15bc76f881b8a038aa5e4c4 on juanjoDiaz:improve_built_in_transforms into fae71668cee5e136eed52660a4f274a52a93916e on zemirco:master.

All good now!
It was some weird old dependency in node_modules


[BugFix] Fix to_days/to_date function statistics estimate

What type of PR is this：

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

Which issues of this PR fixes ：

Fixes #
Problem Summary(Required) ：

Utils.getDatetimeFromLong can not deal with -inf/+inf value

[FE PR Coverage Check]
:heart_eyes: pass : 5 / 5 (100.00%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
com/starrocks/sql/optimizer/statistics/ExpressionStatisticCalculator.java
5
5
100.00%
[]


Comments style update

Each function/method should have DoxyGen style.

After fe01af0dce625ca65038892d17eeef2cee3becb9, everything  is done in /algorithms/ and /data_structures/[tree, deque].

Done after 57257ebc2edfe4d268827afedee83af4f81e8691. Closing.


Missing Spells: Thorough List

I play 39 max level alts, one for each spec in the game, so this addon really helps me, so I spent some time going through every alt and checking for missing spells, this is what I've found. (Only spec I couldn't test was fire mage as I'm waiting to make an earthen fire mage) I have included wowhead links for spell ids not sure if you need that but at least you can see the spell I am referencing.
Shaman:
Totemic Projection https://www.wowhead.com/spell=108287/totemic-projection
Warlock:
Demonic Gateway https://www.wowhead.com/spell=111771/demonic-gateway
Guillotine https://www.wowhead.com/spell=386833/guillotine
Priest:
Holy Word: Sanctify https://www.wowhead.com/spell=34861/holy-word-sanctify
Power Word: Barrier https://www.wowhead.com/spell=62618/power-word-barrier
Paladin:
Final Reckoning https://www.wowhead.com/spell=343721/final-reckoning
Druid - Incorrect spells and some talent specifics.
-New:
Efflorescence  https://www.wowhead.com/spell=145205/efflorescence
-Existing:
Starfall: Could be wrong on this but I don't think starfall needs a ground target as its aoe around you.
https://www.wowhead.com/spell=191034/starfall
Fury of Elune: Don't think Fury of Elune needs one as it requires a target to use and auto casts on them.
https://www.wowhead.com/spell=202770/fury-of-elune
Celestial Alignment/Incarnation: Chosen of Elune (Replaces it): If talented with Orbital Strike it becomes a ground target skill that casts a beam in a line towards where you click cursor.
https://www.wowhead.com/spell=194223/celestial-alignment
https://www.wowhead.com/spell=122114/chosen-of-elune
https://www.wowhead.com/spell=390378/orbital-strike
Monk:
Exploding Keg https://www.wowhead.com/spell=325153/exploding-keg
Evoker:
Deep Breath: Not sure if this is a ground target? But it uses a ground target to select a point to cast between you and where you click so im including it same as the druid Orbital Strike.
https://www.wowhead.com/spell=357210/deep-breath
Rescue: Again not sure if this counts but it uses a ground target for where to rescue your target too so I imagine it should be included.
https://www.wowhead.com/beta/spell=370665/rescue
Landslide: Same as Deep Breath/Orbital Strike, is a path to ground target skill.
https://www.wowhead.com/beta/spell=358385/landslide

Thank you so much this is extremely helpful! I'll update the add on tonight with your new additions!

Resolved with v1.2.1, thanks again!

No problem, happy to help, thanks for the addon :D


Binary releases

Attach binaries to releases.
This will be a requirement for creating a membrane build pack, but is also generally a good idea for us to be doing anyway.

Codecov Report

Merging #129 (a6e780c) into main (c003d5e) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #129   +/-   ##
=======================================
  Coverage   46.63%   46.63%
=======================================
  Files          34       34
  Lines        2747     2747
=======================================
  Hits         1281     1281
  Misses       1355     1355
  Partials      111      111

Flag
Coverage Δ

unittests
46.63% <ø> (ø)

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

Continue to review full report at Codecov.

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


User Specified MySQL host configuration (~/.my.cnf) is overwritten and ignored

With the 2.x branch of EE, it was possible to set a my.cnf file in the home directory to specify an external MySQL host for EE. See: https://rtcamp.com/easyengine/docs/remote-mysql/
However in the 3.x branch, the user-set ~/.my.cnf gets overwritten in stack.py, and is then ignored by the rest of the program's logic (as the host field no longer exists). As a result, the installer installs MariaDB to the local machine and proceeds as if there was no user specified ~/.my.cnf file. See: https://github.com/rtCamp/easyengine/blob/fff68d1183a92cdbe6568e803acf3041bde08825/ee/cli/plugins/stack.py#L121-L131
This is also related to: https://github.com/rtCamp/easyengine/issues/147

Hi,
Right now Programms logic is this:

EasyEngine checks the output of command mysqladmin ping, which return local/remote MySQL connection is alive or not.
If alive then it does not install MySQL server.
But if not found then only it install MySQL server.
Refer: https://github.com/rtCamp/easyengine/blob/stable/ee/cli/plugins/stack.py#L1222

So, if you set values of Host, you need check you are able to access remote mysql server from EasyEngine server by using mysql or mysqladmin ping command.

Sorry for a delayed reply. I hope your issue is fixed by now.
If you are still facing the issue, please use http://community.rtcamp.com/c/easyengine for further support.
We are cleaning up issue tracker and closing this issue because we won't be able to contribute to this discussion further.


New App Submission Poocoin.app

App Logo (Required)

App Details (Required)
Type: Dapp
Name: Poocoin
Homepage Url: https://poocoin.app/
Chains supported: BNB
App Url (Required - at least one)
Browser Url:
iOS Url:
Android Url:
Mac Url:
Windows Url:
Linux Url:
Mobile Linking (Optional)
Deep Link:
Universal Link:
Desktop Linking (Optional)
Deep Link:
Universal Link:
Metadata (Optional)
Short Name:
Primary Color:
Secondary Color:

please all i want is to be able to manage it all on my pc

@Pedro137BR I took a look at the app but wasn't able to test the WalletConnect integration. Can you make sure it works then resubmit? Also the app logo isn't available.


[SPARK-31180][ML] Implement PowerTransform

What changes were proposed in this pull request?
Power transforms are a family of parametric, monotonic transformationsthat are applied to make data more Gaussian-like. This is useful formodeling issues related to heteroscedasticity (non-constant variance),or other situations where normality is desired.
Why are the changes needed?
It is widely used and suitable to be implemented atop spark
Does this PR introduce any user-facing change?
Yes
How was this patch tested?
added testsuites

Test build #119972 has started for PR 27944 at commit 932caff.

Merged build finished. Test PASSed.

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

differences from sklearn's implementation:
1, may group distinct values;
2, ignore standardation, which is enabled in sklearn by default; we can standardize the data by StandardScaler
3, both use brent solver, but the implementation may differ; sklearn use scipy.optimize.brent with bound=[-2,2], iter=500, tol=1.48e-8, and scipy.optimize.brent do not guarantee solution between input bounds; while I use org.apache.commons.math3.optim.univariate.BrentOptimizer with bound=[-10,10], iter=1000; (I also tried sklearn's default parameters, the results are the same; I conservatively changed bound and iter)

Test build #119977 has started for PR 27944 at commit de7cc9b.

Merged build finished. Test PASSed.

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

Test build #119978 has started for PR 27944 at commit 086c143.

Merged build finished. Test PASSed.

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

Test build #119972 has finished for PR 27944 at commit 932caff.

This patch passes all tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
class PowerTransform @Since(\"3.1.0\")(@Since(\"3.1.0\") override val uid: String)

Merged build finished. Test PASSed.

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

Test build #119977 has finished for PR 27944 at commit de7cc9b.

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

Merged build finished. Test PASSed.

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

Test build #119978 has finished for PR 27944 at commit 086c143.

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

Merged build finished. Test PASSed.

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

Test build #120669 has started for PR 27944 at commit 7bf9ec6.

Merged build finished. Test PASSed.

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

Merged build finished. Test PASSed.

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

Test build #120671 has started for PR 27944 at commit 66a97c9.

Merged build finished. Test PASSed.

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

Test build #120669 has finished for PR 27944 at commit 7bf9ec6.

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

Merged build finished. Test PASSed.

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

Test build #120672 has started for PR 27944 at commit c574fcb.

Merged build finished. Test PASSed.

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

Test build #120673 has started for PR 27944 at commit c656d0f.

Merged build finished. Test PASSed.

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

Test build #120671 has finished for PR 27944 at commit 66a97c9.

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

Merged build finished. Test PASSed.

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

Test build #120675 has started for PR 27944 at commit b19c197.

Merged build finished. Test PASSed.

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

Test build #120672 has finished for PR 27944 at commit c574fcb.

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

Merged build finished. Test PASSed.

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

Test build #120673 has finished for PR 27944 at commit c656d0f.

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

Merged build finished. Test PASSed.

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

Test build #120675 has finished for PR 27944 at commit b19c197.

This patch passes all tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
class PowerTransform @Since(\"3.1.0\")(

Merged build finished. Test PASSed.

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

Test build #121410 has started for PR 27944 at commit 5c64d90.

Merged build finished. Test PASSed.

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

Test build #121410 has finished for PR 27944 at commit 5c64d90.

This patch fails to generate documentation.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

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

Test build #121504 has started for PR 27944 at commit f2fd922.

Merged build finished. Test PASSed.

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

Test build #121504 has finished for PR 27944 at commit f2fd922.

This patch fails to generate documentation.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

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

retest this please

Test build #121513 has started for PR 27944 at commit 08c3917.

Merged build finished. Test PASSed.

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

Test build #121513 has finished for PR 27944 at commit 08c3917.

This patch fails to generate documentation.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

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

Test build #122428 has started for PR 27944 at commit 2e0ba2c.

Merged build finished. Test PASSed.

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

Test build #122429 has started for PR 27944 at commit 7c54def.

Test build #122428 has finished for PR 27944 at commit 2e0ba2c.

This patch fails to build.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

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

Test build #122429 has finished for PR 27944 at commit 7c54def.

This patch fails to build.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

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


added-api-for-delete-vm-from-pool

api for delete endpoint from pool

!test

Refer to this link for build results (access rights to CI server needed):
http://jenkins.2gis.local/job/vmmaster.regression/403/
Test PASSed.

@z00sts @nwlunatic

:+1:


Reporting a vulnerability

Hello!
I hope you are doing well!
We are a security research team. Our tool automatically detected a vulnerability in this repository. We want to disclose it responsibly.  GitHub has a feature called Private vulnerability reporting, which enables security research to privately disclose a vulnerability. Unfortunately, it is not enabled for this repository.
Can you enable it, so that we can report it?
Thanks in advance!
PS: you can read about how to enable private vulnerability reporting here: https://docs.github.com/en/code-security/security-advisories/repository-security-advisories/configuring-private-vulnerability-reporting-for-a-repository

Hello!
I hope you are doing well!
We are a security research team. Our tool automatically detected a vulnerability in this repository. We want to disclose it responsibly. GitHub has a feature called Private vulnerability reporting, which enables security research to privately disclose a vulnerability. Unfortunately, it is not enabled for this repository.
Can you enable it, so that we can report it?
Thanks in advance!
PS: you can read about how to enable private vulnerability reporting here: https://docs.github.com/en/code-security/security-advisories/repository-security-advisories/configuring-private-vulnerability-reporting-for-a-repository

@igibek Really appreciate it! Now it is enabled. Please have a try~


Update to DataTables 1.10.5 / TS 1.4

@bnemetchek if you want to update pull request, push additional commit to remote branch simply.
#3863 #3864
@pragmatrix could you review this PR?

@bnemetchek first of all, great work, thank you for creating the typescript definitions of the new API.
But I must admit, that I am not able to review this PR, simply because the original project I have used the old definitions for, was never finished and will probably never be. I tried to port the project for several hours to the new API, but it's just too much work. So I hope that someone else steps in for a proper review.
Anyway, I have scanned over the new definitions, it all looks fine, and I would like to see them in the official branch.
One thing bothers me though. I don't like the policy that new API versions, which are completely incompatible to older ones, can be named the same and placed in the same directories. I  would rather suggest to version the files and only keep the latest of a particular API strand. Depending on the individual project's policies, this could be version.revision like for datatables, or only the major version number. This way, developers who try to compile projects with a new version of DT may be troubled by missing definition files, but will always be able to compile their projects with minimum changes. One positive side effect would be, that the developer could act on a major change by updating the related JS files, etc. Though, I don't know how this would affect NuGet packaging.

Hello and thank you for your contribution!
Due to an excessively long queue of pull requests that have become stale, we are "declaring bankruptcy" and closing all PRs opened before May 1, 2016. If you'd still like to merge this code in, please open a new PR that has been merged and rebased with the master branch.
Going forward, we are committing to review or merge all PRs on a regular basis so this bankruptcy will not occur again. We apologize for the incovenience and hope you will continue to contribute to DefinitelyTyped in the future.
Thanks
The TypeScript and DefinitelyTyped teams


Performance issues when Tile is not found in Cache

Issue Type
[ ] Question
[x] Bug
[ ] Improvement
[ ] Build system related
[x] Performance
[ ] Documentation
Description and/or steps/code to reproduce the problem
I have custom map tiles of a building from zoom level 15-23 created with mobac - osmdroid zip. They are displayed correctly. The problem is that when i rotate the map or update my position on the map using a locationprovider the performance gets really bad.
I profiled my application:

osmdroid tries to load tiles that are not in my osmdroid tile zip. Also there are many errors ("SqlCache - Tile doesn't exist") when i rotate the map/update my position on the map.
My questions are:

How can I disable reloading tiles when i rotate the map or update my position on the map?
How can i prevent osmdroid to load non-existant tiles?
Is it possible to disable the cache?

Environment
Performance is really bad on older smartphones and tablets, like Samsung Galaxy S5 / Nexus 6. On newer smartphones the error also appears but does not lead to such a bad performance
If it's a bug, version(s) of android this affects:
All
Version of osmdroid the issue relates to:
6.0.2

I don't think rotating or updating your position using a location provider has anything to do with it.
Isn't it the same when you just pan the map? Maybe when you rotate you change the zoom level - that could explain why it happens when rotating. When you change the zoom level you have many new tiles to find, including the one used for the approximations.
I'm not familiar with the zip files in osmdroid: is that MapTileAssetsProvider that you use?
When osmdroid tries to find a tile, it uses its memory cache, its Sql cache and then its several providers.
By the way "SqlCache - Tile doesn't exist" is not an error, it's just a debug message. My first suggestion in order to improve performances: don't show the debug messages ;)
I assume the problem comes from your zip tile provider, that is too slow to say "I don't have this tile".
I think a solution would be - for tile providers that are slow to respond and with a pre-determined set of tiles - to add the concept of a set of tiles (and zoom levels) that don't exist with this provider. Therefore the provider will quickly say: don't bother me with this zoom level or with this tile, we both know I don't have it, you already asked me seconds before and there's no way it's going to improve.
@JonasDaWi What do you think of it?

It is the same when i pan the map. I think I don't change the zoom level when i rotate like this:
mMapView.setMapOrientation(bearing);
isn't it?
When I comment out this line, no tiles are loaded. So it should have something to do with it i think.
Also when I comment out the codepart where i change my position using a MyLocationNewOverlay using a LocationProvider new tiles are tried to load.
I think this should be improved within the library.
Regarding the tile provider I think your idea is worth trying.
I set the tile provider as following:
ITileSource tileSource = new XYTileSource("tilezip", 15, 22, 256, ".png", new String[]{""});
mMapView.getTileProvider().clearTileCache();
mMapView.getTileProvider().getTileWriter().onDetach();
mMapView.getTileProvider().detach();
mMapView.setTileProvider(new MapTileProviderBasic(getContext(), tileSource));
Is there something wrong with this?

As stated previously, I'm not an expert on zip files for osmdroid. This is what I did:

I created via MOBAC a zip file (format "Osmdroid ZIP")
For some reason the tile style was "4uMaps"
I put my file (named "4uMaps.zip") in my smartphone phone folder "osmdroid" (at the same level as "tiles")
if I open my zip file, I only have one folder "4uMaps", then inside it one folder per zoom level and so on
this is the code I used in order to use only this file:

final ITileSource source = new XYTileSource("4uMaps", 0, 19, 256, ".png", new String[] {""});
final MapTileFileArchiveProvider archiveProvider = new MapTileFileArchiveProvider(
    new SimpleRegisterReceiver(inflater.getContext()), source);
mMapView = new MapView(
    inflater.getContext(),
    new MapTileProviderArray(
        source,
        new SimpleRegisterReceiver(inflater.getContext()),
        new MapTileModuleProviderBase[]{archiveProvider}));

[Of course I strongly recommend you to match MapTileProviderBasic as much as possible, including SqlTileWriter, MapTileApproximater and so on, but this code is just for a test]
And the result is that I see my "4uMaps" tiles and only them. Which sounds like what you want, except that you encountered performance issues, right?
Regarding your questions about rotating, location provider, panning and cache, believe me: the problem is not within the cache or how often the tiles are requested, the problem lies with your provider.
I think size matters. My file is very small (6 tiles, 293 Kb): how large (number of tiles, file size) is yours?

I do almost exactly as you described.
My tile archive is 8.5MB, having 2748 Tiles. If I comment out the code for the rotation/updating my position on the map there is no cache error.
What is the fastest tilesource for offline tiles? I have the .osm file of the offline area.

I believe there are 2 problems:

you don't seem to use the SqlTileWriter cache
the time spent trying to get the tile from a zip, which is a problem if you don't have the tile (endlessly trying to get the tile from a hopeless and slow zip file) and if you have the tile (if you don't use the SqlTileWriter cache)

I'll try with such a big tile archive, in order to check if I'm right.
The solutions will be easy to implement. I'll tell you.

I wrote an example application to observe the issues. In the following I describe the 3 Buttons and the issues they shall demonstrate:
Toggle Rotation
When rotation is enabled the CPU usage goes up to about 20% on my Nexus 7. I rotate the map via  mMapView.setMapOrientation(). Is there a faster way to do a map rotation? Do other formats (other than .png file archives) rotate faster?
Toggle Position
When the position is enabled (NewPositionOverlay), the CPU usage rises by another 20%. Is that normal?
Toggle Tileprovider
When i switch the TileProvider from your aforementioned MapTileFileArchiveProvider to MapTileProviderBasic the performance is horrible due to the already mentioned tile caching errors

SqlCache - Tile doesn't exist
Archives - Tile doesn't exist:

I think the MapTileProviderBasic should handle the caches better himself.
And the error I mentioned above: Stopping the rotation and only adding the position creates these caching errors, too. Is this a bug in the library?
One more question: What is the fastest tilesource?

Quick answers:

when rotation is activated the CPU usage goes up - it's normal as in that case we need to apply a rotation matrix to the canvas - cf. Projection.save - which is not the case in the more standard rotation==0 mode where it's optimized and we don't apply any matrix
I couldn't find NewPositionOverlay in your code or in osmdroid's - is that in the bonus pack? If it's about GPS location, I think it's a battery consuming operation in general, which matches your CPU usage rise description
again, SqlCache - Tile doesn't exist is not an error, it's a debug message. It means that the tile was not found in the SqlCache, which means it was never found before with some kind of MapTileDownloader, which sounds like a reasonable message if you don't use any MapTileDownloader.
Archives - Tile doesn't exist that you mention here for the first time is deceiving - it means that the provider is going to search for the tile (in the zip file in your case)
I don't know what the fastest tile format is. I guess SQLite is.

Solutions and questions for you:

You didn't answer my question - is your zip file in a phone folder or in an external SD card?
Are you OK with the performances with only the MapTileFileArchiveProvider? If not, how long does it take to get a tile in MapTileFileArchiveProvider.TileLoader.loadTile?
Could you also test the performances with the debug mode off?
If we want to understand more about your slow performances, I would suggest you to copy MapTileProviderBasic into MyMapTileProviderBasic, and then to run tests getting rid of this or that in order to understand what causes the slow performances. For instance, in your case I don't think you need the assetsProvider (your files are not embedded in the app), the cacheProvider (and you'll get rid of the SqlCache messages), the approximationProvider (as everything is allegedly embedded in your zip file) and the downloaderProvider (as you don't download, do you?). Not much left, is there? Perhaps the next thing to test/remove would be the "protected-cache-tile computers" and "pre-cache providers" lines at the end (but you need the "tiles currently being processed" at the very end

Sorry, i meant MyLocationNewOverlay, which is part of osmdroid. Please see my demonstator project, that demonstrates my issues.
Answers to you questions & observations:

It is a .zip file that is copied from the asset folder to the external sd card to the /osmdroid folder
loading a tile with the MapTileFileArchiveProvider takes between 10-35ms. This is acceptable, but not fast I'd say
It's the same with debug mode off
I did as you said, if I comment out protected-cache-tile computers in MyMapTileProviderBasic it is much faster! Please see also my demonstator app, where you comment out the protected-cache-tile computers under line 93. What does this mean?

Quick answers:

Just curious: why do you have to copy it? Why don't you keep it in the asset folder?
OK
OK
There are several reasons why the pre-cache could be slow on your old smartphones. First, the pre-cache pre-computations are currently being optimized (by me). Second, the actual pre-cache process searchs for tiles in the zip file: if the access is slow on your device, or synchronous, then it's a problem for performances. Third, in the case of zip files we don't know anything a priori about the file contents, which can be an issue when you have slow file access. A solution would be to say "by the way for this file I know I only have those zoom levels and those bounding boxes, so don't even try to get tile outside of that", but that would say extra parameters, less flexibility, and a small dev. Another solution would be to keep a Set of all the tiles tried once but not found - there's no need to check again those tiles in the zip file - but that means extra memory usage, and a small dev.

For the record the lines you commented are about 2 brother concepts:

the protected-cache-tiles, where you say you want to keep the neighboring tiles (zoom+-1, screen border) in the memory cache, because you know you'll probably use them very soon
the pre-cache, where you say that you'd like to even pre-cache the (same) neighboring tiles asynchronously in the memory cache, in order e.g. to avoid hiccups when you change zoom (waiting for the new zoom tile to be loaded into the memory cache)

Your best choice would be perhaps to keep the protected-cache-tiles, but to remove the pre-cache-providers.

@JonasDaWi The code where I optimize the map tile cache access was merged about a week ago in #1131.
Could you try with this new version? That may solve your performance issues.

@JonasDaWi ping
The fix is available in the new 6.0.3 release.


Issue about install colmap

Hi,
I am trying to reproduce your work.
However, I face the issue about install col map.

I try to install from official web, conda and https://github.com/B1ueber2y/colmap.git.
They all fail to solve the problem. Would you mind to give me some suggestion?

When I use git clone https://github.com/weiyithu/NerfingMVS.git. The colmap is empty.

When I try use git clone --recursive git@github.com:weiyithu/NerfingMVS.git to get your colmap
the error is

I think it may be caused by your git. Do you add SSH keys?

thanks so much. I have successfully prepared the environment.
by using
git clone -b pointvisibility https://github.com/B1ueber2y/colmap.git

But I face the same problem as  #10. I will try to fix it following your suggestion.

For setting environment, I don't face some issue anymore.
Thanks a lot.
Have a nice holiday.

hi,  i do not know how to setup colmap from https://github.com/B1ueber2y/colmap.git.  as the author say:
install COLMAP in ./colmap folder (Note that do not cover colmap folder with the original version).
does it mean i clone the above git here and build it at ./colmap ?


Delete unused get_metric_list_for_processor

This PR deletes unused function, get_metric_list_for_processor. Leaving unused code prevents us from efficiently refactoring code.

Hi, @tetsuok (cc @neubig) thanks for this PR!
Removing this function will lead to a potential bug in explainaboard_web where the function will be used:
https://github.com/neulab/explainaboard_web/blob/3ff6b6fecc986cb3277eae696558f0803c1300d3/backend/src/impl/default_controllers_impl.py#L17
We can re-consider a good way to do this.

@pfliu-nlp Oh, I didn't know that explainaboard_web directly invokes the function. get_metric_list_for_processor is a just shorthand of get_processor() and full_metric_list(). I think the invocation can be safely replaced with get_processor(_task.name).full_metric_list().

I think, in general, it's OK to have functions that are "unused" in this codebase though because it is an SDK (not just a CLI).

In my experience, leaving unused code caused so much troubles:

codebase becomes more complex to understand. When someone who knows the context leave the project, it's increasingly difficult to remove unused code.
Increased complexity leads to productivity drains. It would delay the time to launch new features. Implementing new features sometimes need re-architecture or huge amount of refactoring. Unused code prevents the work. Eventually, some people will leave the project because of the low code health and low productivity, starting everything from scratch.

There are going to be functions that are "exported" and intended to be used by our users. Maybe we need a better way to identify all the public/exported functions.

Approaches I know are the following:

PEP 8 mentions "internal interfaces (packages, modules, classes, functions, attributes or other names) should still be prefixed with a single leading underscore."
List public APIs in the init module, everything else is considered internal/private.