Adding upsert functionality

Motivation
Upsert functionality is intended to simplify continuous deployment processes. This simplification is especially desirable because there is no Python Admin API available that provides typed objects. Rather, users are required to build workflows with the Admin CLI, which returns strings that can be messy to handle. Upsert helps solve this complexity by allowing Pulsar to handle behavior according to whether the component has already been created or not.
Motivation (with future in mind)
Upsert is a dependency of BulkUpsert (to be added), which will greatly simplify seamless continuous deployments by allowing Pulsar to rapidly update Functions, Sinks, and Sources (and leverage parallelization). BulkUpsert will enable automated deployments to handle all but deletes on components that are no longer used. (For that, functionality will need to be added to allow the user to easily compare their expected component tree with the component tree in Pulsar to identify components that need to be deleted.)
Modifications
My contributions add Upsert functionality for Functions, Sinks, and Sources to the REST API and to the Admin CLI. Upsert conditionally combines the functionality of Create and Update operations. If the component already exists in Pulsar, Upsert updates the component; if the component doesn't already exist in Pulsar, Upsert creates the component.
Commits 29e2a66 and 7749419 were just to get the latest changes from the Pulsar repo.

Verifying this change
This commit is largely covered already by unit tests for registration and updates for Functions, Sinks, and Sources. However, additional unit tests have been added for Upsert specifically. Tests were added to:

org.apache.pulsar.functions.worker/rest.api/FunctionApiV3ResourceTest.java
org.apache.pulsar.functions.worker/rest.api/SinkApiV3ResourceTest.java
org.apache.pulsar.functions.worker/rest.api/SourceApiV3ResourceTest.java
org.apache.pulsar.functions.worker/FunctionMetaDataManagerTest.java

When running the build tests, I did notice these unrelated test failures:
1.

[ERROR] Tests run: 2, Failures: 1, Errors: 0, Skipped: 1, Time elapsed: 13.506 s <<< FAILURE! - in org.apache.pulsar.broker.service.RackAwareTest
[ERROR] testPlacement(org.apache.pulsar.broker.service.RackAwareTest)  Time elapsed: 1.085 s  <<< FAILURE!
java.lang.AssertionError: first bookie in rack 0 not included in ensemble expected [true] but found [false]

[ERROR] Tests run: 13, Failures: 1, Errors: 0, Skipped: 1, Time elapsed: 59.026 s <<< FAILURE! - in org.apache.pulsar.io.PulsarFunctionE2ETest
[ERROR] testPulsarSinkStatsWithUrl(org.apache.pulsar.io.PulsarFunctionE2ETest)  Time elapsed: 0.614 s  <<< FAILURE!
java.lang.NullPointerException
at org.apache.pulsar.io.PulsarFunctionE2ETest.testPulsarSinkStats(PulsarFunctionE2ETest.java:527)
at org.apache.pulsar.io.PulsarFunctionE2ETest.testPulsarSinkStatsWithUrl(PulsarFunctionE2ETest.java:708)

It appears that these test failures are unrelated to any changes that I made to this repo. However, I ran these tests before merging in commit 29e2a66. (Sorry if that's confusing. I was working in a different directory.)
This pull request affects:

The public API: (yes)
The rest endpoints: (yes)
The admin cli options: (yes)
Anything that affects deployment: (don't know)

Documentation

Does this pull request introduce a new feature? (yes)
If yes, how is the feature documented? (not documented YET). (Please provide guidance on where it needs to be documented. There are 930 markdown (.md) files in this repo...)

It looks like there were some failing tests that I didn't see locally, so I'll work on fixing those now. However, I'd still like some guidance on where to update documentation for this feature.

@jerrypeng Thank you for asking these questions. I will explain my reasoning behind these changes and then answer your questions.
The Goal
My primary goal is to improve the continuous deployment process for Pulsar environments operating at-scale. In large projects where multiple teams are collaborating to develop functions, sinks, and sources, we need an automated deployment process that allows us to quickly and easily update a production Pulsar environment without downtime for cases where we may have hundreds or thousands of inter-dependent Pulsar functions, sinks, and sources that need to be deployed simultaneously. My hope is to allow Pulsar to handle more of the deployment logic to simplify the implementation of Pulsar in large/high-performance production environments.
The Problem
Because our pulsar-admin commands are dockerized to allow them to operate at scale, there is performance overhead with every pulsar-admin command that must be executed. Each pulsar-admin command takes approximately 3-5 seconds to execute. In a deployment with 300 Pulsar functions, if each pulsar-admin command must be executed in series (rather than in parallel), executing 300 pulsar-admin commands to update these objects takes 15-25 minutes. Because Pulsar is in a broken state while these commands are being executed, this deployment approach could result in a production Pulsar environment being down for 15-25 minutes, far beyond our SLA of 300 milliseconds of downtime. Furthermore, if we need to execute a get-status check before each update command (so that we can conditionally execute a create command instead), we double our wait time and significantly increase the complexity of the deployment code that we must maintain.
The Hope
If we can offload more of the deployment logic to Pulsar, then we could easily parallelize the deployment process in a way that avoids the overhead and complexity associated with repeatedly executing pulsar admin commands and handling the text output.
The Current Approach
The way we have handled the deployment so far is to use SaltStack to read a YAML manifest file with component (function, sink, and source) metadata to generate pulsar-admin commands to construct the create statements for these components. Here is an obfuscated example of this YAML:
- type: source
    namespace: ns1
    tenant: tenant1
    name: source1-kafka
    sourceType: kafka
    destinationTopicName: persistent://tenant1/ns1/topic1
    configs:
        bootstrapServers: kafka_bootstrap_servers
        groupId: "kafkaGroupId"
        topic: "kafkaTopic"
        consumerConfigProperties:
        security.protocol: "SASL_PLAINTEXT"
        sasl.kerberos.service.name: "kafka"
        auto.offset.reset: "latest"
        sasl.jaas.config: sasl_jaas_config
- type: function
    namespace: ns1
    name: func1
    tenant: tenant1
    artifactFileName: tenant1-1.1-SNAPSHOT-jar-with-dependencies.jar
    className: com.path.to.className1
    inputs:
    - persistent://tenant1/ns1/topic1
    logTopic: persistent://tenant1/ns1/logTopic1
    output: persistent://tenant1/ns1/topic2
- type: sink
    namespace: ns1
    name: sink1-redis
    tenant: tenant1
    artifactFileName: tenant1-1.1-SNAPSHOT-jar-with-dependencies.jar
    className: com.path.to.className2
    inputs:
    - persistent://tenant1/ns1/topic2
    configs:
        hostname: redis_hostname
        port: redis_port
        password: redis_pass

The Idea
If we could pass a YAML file like this to Pulsar and have Pulsar ensure that its state matches our YAML file, it would make large-scale continuous deployments seamless. The Upsert functionality is one step in this direction, but it's not anywhere near as important as a bigger-picture solution to this problem. My team wants to build changes into Pulsar to simplify deployments, but we need architectural guidance about where to make these changes in Pulsar so that we don't violate architectural expectations.
Answering your questions
Regarding your Question 1:
My current understanding is that the Admin CLI creates REST calls that hit the Pulsar REST API. If my understanding of the behavior of the Admin CLI is incorrect, then Upsert would not need to be added to the REST API.
Regarding your Question 2:
I agree that it would be better to use the existing APIs and not modify FunctionRuntimeManager and FunctionMetaDataManager, especially because the current PR introduces a considerable amount of code duplication. However, I didn't want to create new classes to handle the new functionality without getting architectural guidance because I wasn't sure where to put the new classes.
What are your thoughts? If we can solve the broader deployment problem with a YAML based approach, then we could create a robust solution that wouldn't need Upsert to be added to the REST API to simplify the deployment process.

This relates to issue #4021 (Pulsar admin commands do not support parallelization.)

@devinbost thanks sharing your use case and the hurdles you are trying to overcome!
In regards to:

Because our pulsar-admin commands are dockerized to allow them to operate at scale, there is performance overhead with every pulsar-admin command that must be executed.

Is there a reason why you can't just submit/update functions via the REST endpoints instead of using the pulsar-admin CLI from docker containers?  Submitting/Updating functions by just making a HTTP REST call will be a lot faster than start up a docker container every time to execute commands via command line

In a deployment with 300 Pulsar functions, if each pulsar-admin command must be executed in series (rather than in parallel), executing 300 pulsar-admin commands to update these objects takes 15-25 minutes.

Do you have 300 individual functions or is there a function with 300 instances or a group of functions that total 300 instances?  There will be a huge submission time difference depending on which scenario.  Submitting one function with 300 instances will take much less time that submitting 300 functions with one instance each.

Because Pulsar is in a broken state while these commands are being executed

What do you mean by this?  The cluster will be running as it should when submitting functions.

this deployment approach could result in a production Pulsar environment being down for 15-25 minutes, far beyond our SLA of 300 milliseconds of downtime.

  As you probably already know, starting up a pulsar cluster regardless of functions will take longer than that.  If you are just talking about resubmitting 300 functions,  I am not sure its realistic to expect all the JARs/Packages for 300 functions can be upload in 300 milliseconds.  If you are trying to avoid a situation in which you suffer downtime because a catastrophic event happened to your cluster, i would recommend having redundancy.  Have geo-replicated clusters across multiple regions.  So you can seamlessly cut traffic from your downed cluster to another cluster.
If you have 300 functions, I don't think its going to be the norm for you to need to update all 300 functions.  Its more likely that its going to be a subset of that.
I think functionality you are looking is bulk create, update, or upserts.  You want to bring a cluster from a potentially unknown state into a known consistent state in regards to functions.  I am I understanding you correctly?
While we can add upserts and even bulk upserts.  I would suggest you to try just creating/updating functions directly using the REST endpoint first to see if that is good enough.
I would still very much like to see features like bulk create/update/upserts in Pulsar functions.  I do believe we can accomplish them by just adding/modifying the "front end" code i.e. the REST the endpoints and ComponentImpl.java  to implement the bulk actions.  Please reference the code in registerFunction and updateFunction and when can probably just run that in a loop for bulk actions.
In regards, to this PR and implementing upserts, I think you can just do something like the following in ComponentImpl.java
if(functionMetaDataManager.containsFunction(tenant, namespace, functionName)) {
   updateFunction(...)
} else {
   registerFunction(...)
}

@jerrypeng Thank you for your very detailed response. I appreciate your time and attention to this matter.
Regarding:

Is there a reason why you can't just submit/update functions via the REST endpoints instead of using the pulsar-admin CLI from docker containers? Submitting/Updating functions by just making a HTTP REST call will be a lot faster . . .

I appreciate your guidance. Based on advice from @merlimat earlier today, I am currently working on an implementation using the REST endpoints.
Regarding:

Do you have 300 individual functions or is there a function with 300 instances or a group of functions that total 300 instances? There will be a huge submission time difference depending on which scenario. Submitting one function with 300 instances will take much less time that submitting 300 functions with one instance each.

At the current moment, all of our functions are individual because they represent different use cases. However, we appreciate your advice about the performance improvement that we will get from deploying function instances, so we will examine ways that we can refactor to obtain those benefits.
Regarding:

What do you mean by this? The cluster will be running as it should when submitting functions.

I may have been unintentionally misleading, and I apologize for that. Please let me clarify. When I said:

Pulsar is in a broken state
I didn't mean that the Pulsar cluster is not running. What I meant is that our end-to-end production message pipelines will be in a broken state. (i.e. Our customers will experience problems.)
Consider a plumbing analogy. If you need to re-route pipes while water is flowing, if you can't do it extremely quickly, then water will end up leaking everywhere, and the people who are expecting water at a particular location will notice a loss of service. This doesn't mean that the water system is completely broken or that water is not flowing; however, it means that water is not reaching our customers.
In our case, if we have a production data flow that is processing tens of thousands of messages per second, if we need to deploy updates to functions that are inter-dependent, then until all of the functions are deployed, some of the functions may introduce breaking changes that could cause data loss or could cause messages to fail to reach the final destination topic until all of the updated functions are deployed.
Does this make more sense?

Regarding:

I think functionality you are looking is bulk create, update, or upserts. You want to bring a cluster from a potentially unknown state into a known consistent state in regards to functions. I am I understanding you correctly?
That is exactly right.
I think you're right that we won't likely always need to update all 300 functions every time we deploy updates. However, we need to ensure that Pulsar can quickly and seamlessly match the expected state when we deploy updates.

Regarding:

While we can add upserts and even bulk upserts. I would suggest you to try just creating/updating functions directly using the REST endpoint first to see if that is good enough.
I will investigate your suggestions for implementing these changes for bulk actions.

Thank you also for the guidance and example change to ComponentImpl.java for the Upsert functionality for this PR.

I didn't mean that the Pulsar cluster is not running. What I meant is that our end-to-end production message pipelines will be in a broken state. (i.e. Our customers will experience problems.)
Consider a plumbing analogy. If you need to re-route pipes while water is flowing, if you can't do it extremely quickly, then water will end up leaking everywhere, and the people who are expecting water at a particular location will notice a loss of service.

The purpose of the messaging system is to buffer up for these scenarios. Functions use a subscription associated that is used to retain the data when no consumers are connected.
You have to plan the amount of disk space based on the time buffer you want to have in case of issues.
During an update of the function there will be a quick restart of the process. If you want to minimize that time, you just need to have >1 instance per function. During the rolling upgrade there'll be always one function instance consuming from the topic.

I wrote a Java method to performance test the process of creating components with the Pulsar Java Admin API, and it's orders of magnitude faster. (I was running Pulsar standalone locally in a docker container, but it's still indicative of the speedup.) Here's what I got:

Creation of 1000 tenants executed in 6411 milliseconds.
It then took an additional 48 milliseconds to get the results.

So, it definitely appears that we can use the REST API to implement bulk operations because that performance is acceptable.


updates on engagement publish

Description of changes:

Added changes to include the new email template
Changes to cron job for publish engagement

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of the met-public license (Apache 2.0).

Codecov Report

Merging #1706 (373cd22) into main (b6b0433) will increase coverage by 0.05%.
The diff coverage is 0.00%.

:exclamation: Current head 373cd22 differs from pull request most recent head 880e0a9. Consider uploading reports for the commit 880e0a9 to get more accurate results

@@            Coverage Diff             @@
##             main    #1706      +/-   ##
==========================================
+ Coverage   71.62%   71.67%   +0.05%
==========================================
  Files         367      369       +2
  Lines       10861    10885      +24
  Branches      849      849
==========================================
+ Hits         7779     7802      +23
- Misses       2952     2953       +1
  Partials      130      130

Flag
Coverage Δ

metapi
79.10% <0.00%> (+0.07%)
:arrow_up:

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

Impacted Files
Coverage Δ

met-api/src/met_api/models/email_queue.py
78.94% <0.00%> (ø)

met-api/src/met_api/services/engagement_service.py
72.18% <0.00%> (-0.85%)
:arrow_down:

... and 14 files with indirect coverage changes


Add a new modularized bot

Lots of updates here

Clean up dependencies
Add pino for logging (and pino-pretty for dev/console logging)
Add .nvmrc to specify node version
Multiple .env files, per environment
TODO Fix this somehow, right now it's unwieldy and requires special handling
for secret things
Add a whole slew of new files for running the bot via individual commands
These are all set up as ES6 module files (mjs)

main as an entry point to the app, handles options and creates the bot
muse-bot as the actual bot which defines specific actions and delegates
to individual modules
muse-google to handle authenticating and interacting with the Google
Sheets API
muse-discord to handle interacting with the Discord.js client

This replicates a tiny bit of functionality from (an old version of) test.js,
but mostly just enough to prove that it works and is able to talk to the
services we need.
Big TODOs left around cleaning up logging, esp for dev vs prod environments,
and between separating config and behavior between those environments,
including leaving space for actually secret stuff.

I went ahead and opened the PR. I don't think it'll hurt anything to merge it in whenever. The main concern is that it drops a couple things that I'm pretty sure weren't used. Everything else should be new/separated.
To use, add a TOKEN=<TOKEN> line for Discord into the dev.env file and then:
./main.mjs -t testDiscord testGoogle

There should be plenty of help, but I know there are also some holes in the docs.

Gonna just merge this since it's been open for so long and doesn't actually touch anything we're using.


Crystal 0.36.0 - String.new with empty slice raising exception

p! String.new(Bytes.empty) # => " " works in 0.35.1  https://carc.in/#/r/abe7
but breaks in 0.36.0.
crystal eval "p! String.new(Bytes.empty)"
String.new(Bytes.empty) # => Unhandled exception: Cannot create a string with a null pointer (ArgumentError)
  from /usr/local/Cellar/crystal/0.36.0/src/string.cr:211:5 in 'new'
  from /usr/local/Cellar/crystal/0.36.0/src/string.cr:210:3 in 'new'
  from /usr/local/Cellar/crystal/0.36.0/src/string.cr:158:5 in 'new'
  from /eval:1:1 in '__crystal_main'
  from /usr/local/Cellar/crystal/0.36.0/src/crystal/main.cr:110:5 in 'main_user_code'
  from /usr/local/Cellar/crystal/0.36.0/src/crystal/main.cr:96:7 in 'main'
  from /usr/local/Cellar/crystal/0.36.0/src/crystal/main.cr:119:3 in 'main'

#9653

#9653

I think passing a null pointer to String.new with a bytesize of zero shouldn't raise. It's the most efficient way to represent an empty string in C.

I think passing a null pointer to String.new with a bytesize of zero shouldn't raise. It's the most efficient way to represent an empty string in C.

I think passing a null pointer to String.new with a bytesize of zero shouldn't raise. It's the most efficient way to represent an empty string in C.

Thanks Ary, that's what I was expecting.

I think passing a null pointer to String.new with a bytesize of zero shouldn't raise. It's the most efficient way to represent an empty string in C.

Thanks Ary, that's what I was expecting.


Mock local API Responses

Description
Don't plug into any specific api
Technical Notes
[Add Technical notes]
Risks
[Add Risks]
Related Issues Or Discussions
[...Issues]

Please explain about specific apis in detail


Fix hyperlink

Fixing mark-down so that hyperlink displays correctly

There are no issues with the hyperlink, It's already fixed.

Yeah it was fixed a year after this PR was created: https://github.com/mmumshad/kubernetes-the-hard-way/commit/3fa8559cba1d807ac276a90b74988f29eff5a081


IntelliJ IDEA plugin

Currently we only have the HTTP API.
Perhaps we'll have a CLI, a web app with Vue, a desktop app and so on.
Why not having a plugin in your IDE to add features to your project?
About the use case:
"As a Developer, I want to use my IDE for development so I only use my web browser for browsing docs and testing" ;)
Provide code-generation features straight from the IDE.
There are plenty of code generation plugins available and I think it would be nice to have a JHipster one.
About UI:
A list of available features for the current project with a + button and customization options.
Let's think about it more in depth...
About architecture:
I guess we could embed JHipster Lite in the plugin (it would be cumbersome to call an external API).

I can dig into plugin development to see what it looks like.

Can you give more details on what you have in mind plz?

Can you give more details on what you have in mind plz?

updated description, still needs some thinking about it.

I think it's a good idea, but honestly, I think it's too early.
I would prefer to focus on features first, and see the adoption of this project.
If it's a success, we could focus on how to use JHipster Lite.
As discussed, I have a ton of ideas:

local with swagger (current version)
local with a front part (probably Vue.js)
in a Cloud like JHipster Online (need to work on Git methods: create projects, pull request etc)
build a Spring Native app and use it as a Lambda function
plugins (IntelliJ, VSCode)
something like JHipster App (see https://github.com/jhipster/jhipster-app)
a CLI, with picocli, like NubesGen

As it's not the priority, I'm closing this
As our current webapp is fine enough :-)


Update actor.d.ts to Foundry 0.8.8 for manage the img propery like a string

Which class should be updated?
From the class actor.d.ts when i try to get the img property like a string i get the error:
The type 'unknown' is not assignable to type 'string'
Example of usage:
const actor:Actor = ...
let img:string = actor.img; // Here the error
For which version should the class be updated?
0.8.8

Hey, I cannot reproduce this:
import { expectType } from 'tsd';

const actor = await Actor.create({ name: 'foo', type: 'npc' });

if (actor) {
  expectType<string | null>(actor?.img);
}

In order to deal with this, we need more information. To be honest, it sounds more like a configuration issue on your side than a problem with the types.

Then it's must some configuration on my side ty for the checking


Re-add JS-IPFS testing on CI

Since js-ipfs doesn't support remote pinning services for the time being, we need to wait for the implementation.
After js-ipfs supports remote pinning:

Revert https://github.com/ipfs-shipyard/ipfs-webui/commit/d20e4e30ae53d412ad1ec43401d34936e2a86e9d

Relevant PR: https://github.com/ipfs-shipyard/ipfs-webui/pull/1713

We need to fix https://github.com/ipfs/ipfs-webui/issues/1737 first, then we should re-add JS tests on CI to run by default.

wontfix, we're decoupling from js-ipfs


fix(deps): update images to latest

This PR contains the following updates:

Package
Type
Update
Change

icr.io/ibm-iac-charts/sysdig-deploy
helm_release
patch
1.59.0 -> 1.59.8

icr.io/ibm-iac/agent-kmodule

patch
13.3.0 -> 13.3.1

icr.io/ibm-iac/agent-slim

patch
13.3.0 -> 13.3.1

icr.io/ibm-iac/kspm-analyzer

patch
1.43.8 -> 1.43.10

icr.io/ibm-iac/vuln-host-scanner

patch
0.10.1 -> 0.10.2

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.

[ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

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


Add bitmap longitudinal cutting udaf

The original Doris bitmap aggregation function has poor performance on the intersection and union set of bitmap cardinality of more than one billion. There are two reasons for this. The first is that when the bitmap cardinality is large, if the data size exceeds 1g, the network / disk IO time consumption will increase; The second point is that all the sink data of the back-end be instance are transferred to the top node for intersection and union calculation, which leads to the pressure on the top single node and becomes the bottleneck.
My solution is to create a fixed schema table based on the Doris fragmentation rule, and hash fragment the ID range based on the bitmap, that is, cut the ID range vertically to form a small cube. Such bitmap blocks will become smaller and evenly distributed on all back-end be instances. Based on the schema table, some new high-performance udaf aggregation functions are developed. All Scan nodes participate in intersection and union calculation, and top nodes only summarize
The design goal is that the base number of bitmap is more than 10 billion, and the response time of cross union set calculation of 100 dimensional granularity is within 5 s

This name of udaf is not accurate. Maybe 'udaf_orthogonal_bitmap' is better? Or?


MapDB 3.0.5 jar doesn't have the correct javadoc and and source files.

I have downloaded mapDB 3.0.5 from maven.
Netbeans has a little feature where you can right click on a dependency and download javadoc and source files. You can later browse these in the IDE itself.
I believe both of them are broken.

Javadoc is not the updated.
Source files are updated.

Seeing the same problem here. Would be fantastic if this could be fixed!


Attempt at making the Analytics Chart more responsive. Added DEV env

Attempt at making the Analytics Chart more responsive.
Added DEV environment var for dynamic reloading of templates.
Closing issue #14.

Hi @spookieoli,
Please review this one.

ty, Oli.


Incorrectly formatted RPC command crashes daemon

Made a mistake when issuing a command and hit a panic (lnd version 0.1.1-alpha - eb73d14a92ad5033099d40579a44128248fc5ded)
$ lncli decodepayreq ypyopqokp965ud3wmcsu1f37rp1zmkw5dd5ekos5xtqhximb97wpigeywt1itbb3nnkkme16qpt6r3zcu3yman641u5qkiyhnseoad5gyyyyyyyyyyutbtxh1ory

panic: runtime error: slice bounds out of range

goroutine 61 [running]:
panic(0x71b880, 0xc420014100)
	/usr/local/Cellar/go/1.7.1/libexec/src/runtime/panic.go:500 +0x1a1
github.com/lightningnetwork/lnd/zpay32.Decode(0x0, 0x0, 0xc4204afa70, 0x4d497, 0x7c4460)
	/Users/Alex/repos/go/src/github.com/lightningnetwork/lnd/zpay32/zbase32check.go:89 +0x1ed
main.(*rpcServer).DecodePayReq(0xc4201ec4e0, 0x1e509c8, 0xc42026a270, 0xc4201900d0, 0x0, 0xc4201d8ad8, 0x2186fc)

@alexbosworth Thanks for creating the issue! 👍  We will try to fix that :)

Thanks for the report! This bug has been fixed by d94777acf6fea4a12a0a2a3938bfa98e301f93bf
Closing.


globstar not finding first level files

Hi
My file structure is as following:
src
 |- root.js
 |- components
   |- foo.js
   |- bar.js
   |- baz
    |- baz.js
    |- baz.css

In root.js I use the following import:
import * as Components from "./components/**/*.js";

which partially works, as Components only contains baz.js.
I would expect foo.js and bar.js to also be imported.

I imagine that's because of the underlying globbing module. Try ./components/{*.js,**/*.js}. You should then see foo, bar and baz. Though you may get collisions since brace expansions are not considered to be a dynamic portion of the pattern.
(I'm closing this issue for housekeeping purposes, but let's keep the conversation going.)


WIP: Add Vyatta Monitoring Checks

This looks good enough to merge in, is it ready to go? Can you remove the "WIP" from the subject if it's good to go?

I still need to add the dependency on the SNMP repo and do some optimizations for the interface check.  I'll remove WIP when I get that completed.

This PR is dependant on https://github.com/blueboxgroup/ursula/pull/2157

j2sol: check-vyatta-if.py has changed quite a bit, so you may want to review that again before merging.  Otherwise this is good to go once the associated ursula PR is ready for merge.  Thanks!

Small nit, but I think this is good to go.

I think this one has to merge before the Ursula one merges.

I agree with Jesse, this one should be merged before the Ursula PR https://github.com/blueboxgroup/ursula/pull/2157


fix(connector-besu): vulnerability cve-2020-8203

Describe the bug
https://github.com/advisories/GHSA-p6mc-m468-83gw
CVE-2020-8203
low severity
Vulnerable versions: < 4.17.19
Patched version: 4.17.19
Versions of lodash prior to 4.17.19 are vulnerable to Prototype Pollution. The function zipObjectDeep allows a malicious user to modify the prototype of Object if the property identifiers are user-supplied. Being affected by this issue requires zipping objects based on user-provided property arrays.
This vulnerability causes the addition or modification of an existing property that will exist on all objects and may lead to Denial of Service or Code Execution under specific circumstances.
Dependabot cannot update lodash to a non-vulnerable version
The latest possible version that can be installed is 4.17.15 because of the following conflicting dependency:
<EMAIL_ADDRESS>requires<EMAIL_ADDRESS>The earliest fixed version is 4.17.19.
1 lodash vulnerability found in …/cactus-test-plugin-ledger-connector-besu/package-lock.json 27 days ago
Remediation
Upgrade lodash to version 4.17.19 or later. For example:
"dependencies": {
  "lodash": ">=4.17.19"
}

or…
"devDependencies": {
  "lodash": ">=4.17.19"
}

Always verify the validity and compatibility of suggestions with your codebase.
To Reproduce
https://github.com/hyperledger/cactus/security/dependabot/packages/cactus-test-plugin-ledger-connector-besu/package-lock.json/lodash/open
cc: @takeutak @sfuji822 @hartm @jonathan-m-hamilton @AzaharaC @jordigiam @kikoncuo

fixed in #581 merge pending


Add general integer exponents

Add exponents >3 to the main branch.
The core changes in the potential have already been implemented.
The most important change that still has to be implemented and tested in the rest of the code is that exponent now is of data type int rather than float.
Also, we need some good unit tests. I was thinking of a combination of regression tests for some of the more complicated structures + generalized Madelung constants that I have computed in the past with a different code.
Contributor (creator of pull-request) checklist

[ ] Tests updated (for new features and bugfixes)?
[ ] Documentation updated (for new features)?
[ ] Issue referenced (for PRs that solve an issue)?

Reviewer checklist

[ ] CHANGELOG updated with public API or any other important changes?

📚 Documentation preview 📚: https://torch-pme--128.org.readthedocs.build/en/128/

The current status is as follows:
For arbitrary odd integer exponents ( p >=3 ), we need the exponential integral, which is not implemented in PyTorch. The current solution is to use the existing SplinedPotential to model  1/r^p type potentials. However, before fully adopting it, I plan to use the scipy module, which includes the exponential integral, to verify that the values generated by SplinedPotential are consistent with the theoretical ones.
However, there is a specific issue when p = 3. In this case, certain variables become degenerate, leading to situations where we raise values to the power of zero and even encounter division by zero (e.g. background_correction function).
Can someone provide insights into this issue and suggest potential solutions?


update(jiva): update vendor and use go modules

Update vendor with the latest stable version
Remove trash and dapper
Use go modules for dependency management
Remove backup code since it's not getting used

Signed-off-by: Utkarsh Mani Tripathi<EMAIL_ADDRESS>

cc: @AmitKumarDas can you please review makefile/go modules?


[notebooks] testing: scale_test_run_tests: do not swallow gating test failure

I'm not sure why failed=1 gets lost :/

https://ci.app-svc-perf.corp.redhat.com/job/ExternalTeams/job/RHODS/job/topsail/185/artifact/run/f23-h33-000-6018r.rdu2.scalelab.redhat.com/002_test_ci/run.log/*view*/


undefined: errors.Join

../../.gvm/pkgsets/go1.19/global/pkg/mod/go.uber.org/nilaway@v0.0.0-20231117175943-a267567c6fff/inference/inferred_map.go:147:17: undefined: errors.Join

@xiazemin you are running an unmaintained version of go, errors.Join was added in 1.20.

@xiazemin go.mod says: minimum version is Go 1.20.

Thanks for the report!
As mentioned by others, we follow the same version support policy as the Go project: we support and test the last two major versions of Go. https://github.com/uber-go/nilaway#support
At this moment it means Go 1.20 and Go 1.21
Closing this, but feel free to re-open if this also occurs in Go 1.20 and 1.21 :)


Cannot use outpainting

Is there an existing issue for this?

[X] I have searched the existing issues

OS
Linux
GPU
cuda
VRAM
24GB
What happened?
Whenever I try to outpaint, I get this error.

this is how the canvas looks

I'm using the docker version of latest invokeai.
Everything else work fine, inpainting, txt2img etc.
Screenshots
No response
Additional context
No response
Contact Details
@antouank

@Kyle0654 can you have a look?

@Kyle0654 can you have a look?

@lstein looks like it's inside the autoencoder? It's weird that it's happening during seam paint and not earlier, but I don't have much familiarity with code below inpaint.py.
@AntouanK do you have updated drivers and such? https://github.com/pytorch/pytorch/issues/33134 seems to indicate driver version might be related, though the issue is rather old.
This suggests there may be an issue with cuda support for newer GPUs: https://stackoverflow.com/questions/74303631/runtimeerror-cudnn-error-cudnn-status-execution-failed-while-using-gpu-with-py

I'm using a docker container for it.
my setup :
OS : Linux 6.1.3-1-MANJARO
GPU : Nvidia RTX 4090
❯ nvidia-smi -l
Wed Jan 11 10:40:30 2023
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 525.78.01    Driver Version: 525.78.01    CUDA Version: 12.0     |
|-------------------------------+----------------------+----------------------+

and I did a ./docker-build/build.sh and a ./docker-build/run.sh
( I build my own version because on the front-end I want the scrollbars visible in the gallery on the right )

Got this resolved after the container updates?


Updated applies to tag

@alkohli

Can you review this PR? after @ManikaDhiman has marked it ready for review?
IMPORTANT: When this content is ready to merge, you must add #sign-off in a comment or the approval may get overlooked.

#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

@ManikaDhiman I fixed the tag issue in another PR yesterday, so you might want to pull main and see if it eliminates the warning?


Remove MultiInvoke?

We currently define a MultiInvoke class in experiment.py:
https://github.com/vivarium-collective/vivarium-core/blob/a92f8eb87d70285cce243f55aea765596aba271e/vivarium/core/experiment.py#L124
However, I can't find any usages of it in vivarium-collective or in my wcEcoli work. It seems that we're handling parallel processing using ParallelProcess instead.
Can MultiInvoke be removed?

I think we can remove this. It looks like it might be left over from when @prismofeverything first introduced parallel processes.  It came to this repo with the initial migration from the old vivarium.

Sounds good.. I'm updating the docs now. I'll delete MultiInvoke in my PR with the documentation updates


Feature: ability to set the number of repetitions

At the current moment I get unstable results that depend among other things on the order in which the benches are run, it would be useful to be able to increase the number of repetitions to increase the accuracy of the measurement.
Thank you

order issue is fixed in 0.1.7, option to set iterations will be added in 1.0.0

Would love to set iterations as well!

Yeah I have one localhost API call involved (which is super hard to mock because it's called by some internal library) which fluctuates a bit and therefore I would love to increase the amount of runs.

you can now fully customize benchmark loop in 1.0.0 with building blocks


Sampling process running error

I can train normally, but I encounter a key value missing problem when sampling. What is the reason?

The reason for this is that the model you are loading the state dict into is different than the model you have defined in your code. This could be because the parameters you're using for sampling are different than the ones you used for training. Or, maybe you're trying to load the wrong model file.


Libman restore does not working

If add libman.json to the project, then on new PC on the build files does not restored

This issue was moved to aspnet/LibraryManager#368


Placeholder is not working :(

I don't know if this is a common occurrence, however, none of my placeholders are showing up :(
Here is a sample of my code, please let me know if there is anything that I am currently screwing up (or if there are any common backend errors).
// tags-input
ng-model="model.sample"
display-property="description"
unique-property="id"
placeholder="Placeholder Text"
replace-spaces-with-dashes="false"
max-length="100">
auto-complete source="loadEventPositions($query)" min-length="0"

Can this issue be closed?

Issue is closed, sorry about that, we just took out the IE8 support and it works fine! Great tool you guys built.


Ingration with viem for Crab and Koi

https://github.com/wevm/viem

https://github.com/wevm/viem/pull/2463

https://github.com/wevm/viem/pull/2463#pullrequestreview-2154974018
@fewensa Fix this issue, please.

https://github.com/wevm/viem/pull/2469


Test PyPI pre-releases but allow for failures

Using python setup.py install will install PyPI pre-releases of
packages while pip install -r requirements.txt won't do that. This
lead to CI tests failing as reported in #421. This commit updates the CI
build setup to run two parallell tests, one where we don't use
pre-releases and one where we do but allow them to fail and won't wait
on the run to complete either.
Fixes #421
Special notes for your reviewer:

Closes #422 by providing an alternative approach. The difference was described here: https://github.com/kubeflow/fairing/pull/422#issuecomment-557010381
I've come across this issue in another project as well where this approach was adopted for a ReadTheDocs build, for a trace to that see https://github.com/jupyterhub/kubespawner/issues/370#issuecomment-555622221.

Release note:
NONE

This change is

/ok-to-test

/test kubeflow-presubmit

/test kubeflow-fairing-presubmit

/lgtm
/approve

@consideRatio Great thanks!


Dispatch Create region issue

To Reproduce
Steps to reproduce the behavior:

Go to CMD, dispatch init(with region west europe)
Then ADD LUIS for Weather and Home Automation and QnA with appropriate key's, and id's
When running Dispatch Create the LUIS application work fine.
The error is shown because of the wrong request url(westus instead of westeurope!)

Expected behavior
Withouth adding qna segment the dispatch create runs normally, but that is not the point of this step.
Screenshots

So for some reason my qna cognitive service is west us, and every other service is west europe, so this was not an issue, the (key and id was the problem), i put the id from QnA maker site (from postman), and the key is one of the two keys from azure portal. Now the .dispatch file has been generated without the error.


Add permissions for leases, needed by leaderelection

An upcoming change to haproxy-ingress will start using leases instead of configmaps for leader election: https://github.com/jcmoraisjr/haproxy-ingress/commit/c7d8ae39fe4d6e4850a3ef548f1059ee7a8b06c4#diff-f0300b4e07ed00177998e7e533050c4dd3264d2327be0c87640565d42943f566R58
If you ran the master image with the latest version of the helm chart without this PR, leader election would fail due to these missing RBAC rules. Adding these rules now means the transition will be smooth for when the next version is released.

If anyone needs a workaround in the meantime:
kubectl patch -n haproxy-ingress role haproxy-ingress --type='json' -p '[{"op": "add", "path": "/rules/-", "value": {"apiGroups": ["coordination.k8s.io"],"resources": ["leases"],"verbs": ["create", "get", "update"]} }]'

Run that after every helm upgrade

Great thanks for that. Merging now.


✨ feat(core): Add isDirEmpty util

Current dependencies on/for this PR:

new-dawn

PR #1077   👈

This stack of pull requests is managed by Graphite.


MINOR: Fix doc for producer throttle time metrics

@junrao The doc doesn't match the implementation. I think the doc was always wrong since throttle time was never a topic metric. Is that correct? Thanks.

@rajinisivaram : Thanks for the patch. LGTM


Reformat provenance

Added testing for provenance and adjusted edge attributes to report provenance for strider while also preserving provenance from KP's. Test ensures that provenance is included within edges.
Note:
Test may need to be adjusted if simple-kp/binder-kp appropriately reports KP name. Currently, it doesn't look like it does that correctly.

Made all changes, and cleaned up git history.


Commercial Microsoft 365

Are you able to add the commercial Microsoft 365 ranges? JSON file is located here

Hi @mportatoes
Yes, it is possible. I noticed that these IPs are already included in the Azure database... maybe I will merge the description of these IPs with the Azure database. I will release a new version this week with this change.
Thanks for the recommendation of this database
[.]s Ricardo Abuchaim


Attachment can not be deleted through edit message

Create a chat based on any model/application which supports attachments functionality
Attach any document and send to the model/application
Hover over sent message and click on Edit button
Delete the attachment on 'x' -> the attachment disappears -> ok
Click on "Save & Submit" -> the attachment is still in chat history -> bug. Edit message again -> there is no attachment. Please see the video.

https://github.com/epam/ai-dial-chat/assets/111180458/68064404-3ecc-47eb-b94f-7ed91c6c9188
Expected result: attachment should be also deleted from chat history
Note: attachment can be replaced ok, but can not be deleted -> bug

Verified on staging server successfully


Bug in get_next_power_of_2

There is a bug in the get_next_powewr_of_2 in the eth2.0 spec.
For 0 it returns 0.
Same bug exists for get_previous_power_of_2.
Bug report filed issue 1695.

This issue was fixed in issue 1907 and a PR by protolambda.
@booleanfunction Apparently the code for power2 is not used anymore (see issue 1907) and has been marked as deprecated?


"Operator , should stick to previous expression" with ES6 template string in object

The following code:
{
    foo: `t.${token}.errors.${error}`,
    bar: true
}

leads to an "Operator , should stick to previous expression" error.
It seems to only happen if there is template string in value but I need to put comma after this value because there is second key in this object.
I have grunt-jscs 2.1.0 with "jscs": "~2.1.0" in dependencies.
console output:
Running "jscs:src" (jscs) task
Operator , should stick to previous expression at runner.jsx :
    70 |                CalloutService.show(selector, {
    71 |                    description: `storage.onBoarding.tasks.${this.task.token}.errors.${error}`,
-----------------------------------------------------------------------------------------------------^
    72 |                    positionTracker: true
    73 |                });
>> 1 code style errors found!
Warning: Task "jscs:src" failed. Use --force to continue.

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/27170568-operator-should-stick-to-previous-expression-with-es6-template-string-in-object?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).

If you use --verbose you can see the particular rule that is erroring. Operator should stick toeans there's an extra space between the string and the comma if I'm not mistaken?

Hm, rule in question is disallowSpaceBeforeBinaryOperators, can't reproduce it though, would you mind posting your config, and showing output of npm ls | grep jscs?

I reproduced this issue with grunt-jscs 2.1.0 and grunt-jscs 1.8.0 . Now I have v1.8.0 so npm ls | grep jscs returns:
├─┬<EMAIL_ADDRESS>│ ├─┬<EMAIL_ADDRESS>│ │ ├──<EMAIL_ADDRESS>
this is my .jscsrc file:
{
    "esnext": true,
    "esprima": "esprima-fb",

    "requireCurlyBraces": [
        "if",
        "else",
        "for",
        "while",
        "do",
        "try",
        "catch"
    ],
    "requireSpaceAfterKeywords": [
        "if",
        "else",
        "for",
        "while",
        "do",
        "switch",
        "case",
        "return",
        "try",
        "catch",
        "function",
        "typeof"
    ],
    "requireSpaceBeforeBlockStatements": true,
    "requireParenthesesAroundIIFE": true,
    "requireSpacesInConditionalExpression": true,
    "disallowSpacesInNamedFunctionExpression": {
        "beforeOpeningRoundBrace": true
    },
    "disallowSpacesInFunctionDeclaration": {
        "beforeOpeningRoundBrace": true
    },
    "disallowMultipleVarDecl": true,
    "requireBlocksOnNewline": 1,
    "disallowEmptyBlocks": true,
    "disallowSpacesInsideArrayBrackets": true,
    "disallowSpacesInsideParentheses": true,
    "disallowSpaceAfterObjectKeys": true,
    "requireCommaBeforeLineBreak": true,
    "disallowSpaceAfterPrefixUnaryOperators": true,
    "disallowSpaceBeforePostfixUnaryOperators": true,
    "disallowSpaceBeforeBinaryOperators": [
        ","
    ],
    "requireSpaceBeforeBinaryOperators": true,
    "requireSpaceAfterBinaryOperators": true,
    "requireCamelCaseOrUpperCaseIdentifiers": true,
    "disallowKeywords": [ "with" ],
    "disallowMultipleLineBreaks": true,
    "validateQuoteMarks": "\"",
    "validateIndentation": 4,
    "disallowMixedSpacesAndTabs": true,
    "disallowTrailingWhitespace": true,
    "disallowTrailingComma": true,
    "disallowKeywordsOnNewLine": [ "else" ],
    "requireLineFeedAtFileEnd": true,
    "requireCapitalizedConstructors": true,
    "disallowYodaConditions": true,
    "disallowNewlineBeforeBlockStatements": true,

    "maximumLineLength": 120
}

I guess first, is there any particular reason you have to use "esprima": "esprima-fb", (It's being deprecated) - see if that changes anything. There's also a http://jscs.info/rule/disallowSpaceBeforeComma rule

Oh, i had feeling i have seen something like that - https://github.com/jscs-dev/node-jscs/issues/685, https://github.com/jscs-dev/node-jscs/issues/849
So, yeah, just remove old esprima and you should be good to go, ping us otherwise

Do we want to start warning people to remove that now?

You bet

I have "esprima": "esprima-fb" in my jscsrc file to properly lint react components. But I updated it:
-    "esprima-fb": "^10001.1.0-dev-harmony-fb",
+    "esprima-fb": "^15001.1001.0-dev-harmony-fb",

and when I run npm install and grunt jscs , the code
{
    foo: `t.${token}.errors.${error}`,
    bar: true
}

is linted without errors :smiley: :smiley: :smiley:
BIG THANKS for help!

Ok great. (By the way if you use just "esnext": true, it will use babel which also lints react components, with jscs > 2.0)


why this vscode-plugin keep update version EVERYDAY and keep asking to login EVEERYDAY

very annoying
gz#26537(related to Zendesk ticket #26537)

Can you please send us a screenshot/video of the issue?

sorry, just some grumbles

I have the same issue. It is annoying when Tabnine keeps updating every day, in all my IDEs and code editors. (I'm using CLion, InteliJ, VS code).

Hi @FoXcodeZ ,
Every time a new version is installed, you need to update the plugin. If you don't want to upgrade the plugin to the latest version, you can disable the auto-update in your IDE. See here

Hi @FoXcodeZ , Every time a new version is installed, you need to update the plugin. If you don't want to upgrade the plugin to the latest version, you can disable the auto-update in your IDE. See here
I'll do that, but...
Is a new version of Tabnine deployed every day? If not, this is still an issue.

A new version can be deployed a couple of times a day. You can disable the auto-update option if you don't wish to have the latest version.


Ignore AIS ships by ID

Ignore an AIS ship by adding its ID to AIS_SHIPS_IGNORE_LIST in python/Sailbot.py

@hhenry01 what you requested


Can't unmanage VMware instance

4.15 (master) - more specifically from PR #4250, VMware 6.7 u3
Can't un-manage an instance (attached to one Isolated and one L2 network)
2020-08-31 14:57:51,113 ERROR [c.c.v.UserVmManagerImpl] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Could not unmanage VM 20ec0335-f10b-443e-92ef-9ec5bef3d3be java.lang.NullPointerException         at com.cloud.vm.UserVmManagerImpl.postProcessingUnmanageVM(UserVmManagerImpl.java:7308)         at com.cloud.vm.UserVmManagerImpl.publishUnmanageVMUsageEvents(UserVmManagerImpl.java:7265)         at com.cloud.vm.UserVmManagerImpl.unmanageUserVM(UserVmManagerImpl.java:7246)
Full log for the job:

2020-08-31 14:57:49,903 DEBUG [o.a.c.f.j.i.AsyncJobManagerImpl] (qtp846254484-44021:ctx-b3ac65c0 ctx-bc23094c) (logid:2234ad9c) submit async job-836, details: AsyncJobVO {id:836, userId: 2, accountId: 2, instanceType: VirtualMachine, instanceId: 119, cmd: org.apache.cloudstack.api.command.admin.vm.UnmanageVMInstanceCmd, cmdInfo: {"response":"json","ctxUserId":"2","httpmethod":"GET","ctxStartEventId":"1366","id":"20ec0335-f10b-443e-92ef-9ec5bef3d3be","ctxDetails":"{"interface com.cloud.vm.VirtualMachine":"20ec0335-f10b-443e-92ef-9ec5bef3d3be"}","ctxAccountId":"2","uuid":"20ec0335-f10b-443e-92ef-9ec5bef3d3be","cmdEventType":"VM.UNMANAGE"}, cmdVersion: 0, status: IN_PROGRESS, processStatus: 0, resultCode: 0, result: null, initMsid:<PHONE_NUMBER>4424, completeMsid: null, lastUpdated: null, lastPolled: null, created: null, removed: null}
2020-08-31 14:57:49,904 INFO  [o.a.c.f.j.i.AsyncJobMonitor] (API-Job-Executor-40:ctx-0aafd0a6 job-836) (logid:9549a138) Add job-836 into job monitoring
2020-08-31 14:57:49,906 DEBUG [o.a.c.f.j.i.AsyncJobManagerImpl] (API-Job-Executor-40:ctx-0aafd0a6 job-836) (logid:6161a6f9) Executing AsyncJobVO {id:836, userId: 2, accountId: 2, instanceType: VirtualMachine, instanceId: 119, cmd: org.apache.cloudstack.api.command.admin.vm.UnmanageVMInstanceCmd, cmdInfo: {"response":"json","ctxUserId":"2","httpmethod":"GET","ctxStartEventId":"1366","id":"20ec0335-f10b-443e-92ef-9ec5bef3d3be","ctxDetails":"{"interface com.cloud.vm.VirtualMachine":"20ec0335-f10b-443e-92ef-9ec5bef3d3be"}","ctxAccountId":"2","uuid":"20ec0335-f10b-443e-92ef-9ec5bef3d3be","cmdEventType":"VM.UNMANAGE"}, cmdVersion: 0, status: IN_PROGRESS, processStatus: 0, resultCode: 0, result: null, initMsid:<PHONE_NUMBER>4424, completeMsid: null, lastUpdated: null, lastPolled: null, created: null, removed: null}
2020-08-31 14:57:49,937 DEBUG [c.c.a.t.Request] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Seq 1-2855000688776198159: Sending  { Cmd , MgmtId:<PHONE_NUMBER>4424, via: 1(<IP_ADDRESS>), Ver: v1, Flags: 100011, [{"com.cloud.agent.api.PrepareUnmanageVMInstanceCommand":{"instanceName":"i-4-119-VM","wait":"0"}}] }
2020-08-31 14:57:49,937 DEBUG [c.c.a.t.Request] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Seq 1-2855000688776198159: Executing:  { Cmd , MgmtId:<PHONE_NUMBER>4424, via: 1(<IP_ADDRESS>), Ver: v1, Flags: 100011, [{"com.cloud.agent.api.PrepareUnmanageVMInstanceCommand":{"instanceName":"i-4-119-VM","wait":"0"}}] }
2020-08-31 14:57:49,938 DEBUG [c.c.h.v.r.VmwareResource] (DirectAgent-297:ctx-7d896e99 <IP_ADDRESS>, job-836, cmd: PrepareUnmanageVMInstanceCommand) (logid:6161a6f9) Verify VMware instance: i-4-119-VM is available before unmanaging VM
2020-08-31 14:57:50,145 DEBUG [c.c.a.t.Request] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Seq 1-2855000688776198159: Received:  { Ans: , MgmtId:<PHONE_NUMBER>4424, via: 1(<IP_ADDRESS>), Ver: v1, Flags: 10, { PrepareUnmanageVMInstanceAnswer } }
2020-08-31 14:57:50,145 DEBUG [c.c.a.m.AgentManagerImpl] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Details from executing class com.cloud.agent.api.PrepareUnmanageVMInstanceCommand: OK
2020-08-31 14:57:50,151 DEBUG [c.c.v.UserVmManagerImpl] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Checking if there are any ongoing snapshots on the ROOT volumes associated with VM with ID 119
2020-08-31 14:57:50,152 DEBUG [c.c.v.UserVmManagerImpl] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Found 1 no. of volumes of type ROOT for vm with VM ID 119
2020-08-31 14:57:50,152 DEBUG [c.c.v.UserVmManagerImpl] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Checking status of snapshots for Volume with Volume Id: 148
2020-08-31 14:57:50,153 DEBUG [c.c.v.UserVmManagerImpl] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) The count of ongoing Snapshots for VM with ID 119 and disk type ROOT is 0
2020-08-31 14:57:50,153 DEBUG [c.c.v.UserVmManagerImpl] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Found no ongoing snapshots on volume of type ROOT, for the vm with id 119
2020-08-31 14:57:50,155 DEBUG [c.c.v.VirtualMachineManagerImpl] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Unmanaging vm VM[User|i-4-119-VM]
2020-08-31 14:57:50,156 DEBUG [c.c.v.VirtualMachineManagerImpl] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Cleaning up NICs
2020-08-31 14:57:50,157 DEBUG [o.a.c.e.o.NetworkOrchestrator] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Unmanaging NICs for VM: 119
2020-08-31 14:57:50,158 DEBUG [c.c.n.NetworkModelImpl] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Service SecurityGroup is not supported in the network id=208
2020-08-31 14:57:50,168 DEBUG [o.a.c.e.o.NetworkOrchestrator] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Changing active number of nics for network id=208 on -1
2020-08-31 14:57:50,170 DEBUG [o.a.c.e.o.NetworkOrchestrator] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Asking VirtualRouter to release NicProfile[305-119-e59d03fc-9eca-4a17-aef3-69afcb97ce87-<IP_ADDRESS>-null]
2020-08-31 14:57:50,173 DEBUG [o.a.c.n.t.AdvancedNetworkTopology] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) REMOVE VPC DHCP ENTRY RULES
2020-08-31 14:57:50,174 DEBUG [o.a.c.n.t.BasicNetworkTopology] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Applying dhcp entry in network Ntwk[208|Guest|8]
2020-08-31 14:57:50,180 DEBUG [c.c.a.t.Request] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Seq 2-2379026503158477752: Sending  { Cmd , MgmtId:<PHONE_NUMBER>4424, via: 2(<IP_ADDRESS>), Ver: v1, Flags: 100011, [{"com.cloud.agent.api.routing.DhcpEntryCommand":{"vmMac":"02:00:11:03:00:0d","vmIpAddress":"<IP_ADDRESS>","vmName":"VM-20ec0335-f10b-443e-92ef-9ec5bef3d3be","defaultRouter":"<IP_ADDRESS>","defaultDns":"<IP_ADDRESS>","duid":"00:03:00:01:02:00:11:03:00:0d","isDefault":"true","executeInSequence":"false","remove":"true","accessDetails":{"router.name":"r-41-VM","router.guest.ip":"<IP_ADDRESS>","router.ip":"<IP_ADDRESS>","zone.network.type":"Advanced"},"wait":"0"}}] }
2020-08-31 14:57:50,180 DEBUG [c.c.a.t.Request] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Seq 2-2379026503158477752: Executing:  { Cmd , MgmtId:<PHONE_NUMBER>4424, via: 2(<IP_ADDRESS>), Ver: v1, Flags: 100011, [{"com.cloud.agent.api.routing.DhcpEntryCommand":{"vmMac":"02:00:11:03:00:0d","vmIpAddress":"<IP_ADDRESS>","vmName":"VM-20ec0335-f10b-443e-92ef-9ec5bef3d3be","defaultRouter":"<IP_ADDRESS>","defaultDns":"<IP_ADDRESS>","duid":"00:03:00:01:02:00:11:03:00:0d","isDefault":"true","executeInSequence":"false","remove":"true","accessDetails":{"router.name":"r-41-VM","router.guest.ip":"<IP_ADDRESS>","router.ip":"<IP_ADDRESS>","zone.network.type":"Advanced"},"wait":"0"}}] }
2020-08-31 14:57:50,180 DEBUG [c.c.h.v.r.VmwareResource] (DirectAgent-298:ctx-59090025 <IP_ADDRESS>, job-836, cmd: DhcpEntryCommand) (logid:6161a6f9) Use router's private IP for SSH control. IP : <IP_ADDRESS>
2020-08-31 14:57:50,180 DEBUG [c.c.a.r.v.VirtualRoutingResource] (DirectAgent-298:ctx-59090025 <IP_ADDRESS>, job-836, cmd: DhcpEntryCommand) (logid:6161a6f9) Transforming com.cloud.agent.api.routing.DhcpEntryCommand to ConfigItems
2020-08-31 14:57:50,180 DEBUG [c.c.a.r.v.f.AbstractConfigItemFacade] (DirectAgent-298:ctx-59090025 <IP_ADDRESS>, job-836, cmd: DhcpEntryCommand) (logid:6161a6f9) Transformed filename: vm_dhcp_entry.json to: vm_dhcp_entry.json.1b8f1e2f-aae2-4143-a31a-3b8606b3e5f7
2020-08-31 14:57:50,565 DEBUG [c.c.a.r.v.VirtualRoutingResource] (DirectAgent-298:ctx-59090025 <IP_ADDRESS>, job-836, cmd: DhcpEntryCommand) (logid:6161a6f9) Processing FileConfigItem, copying 307 characters to vm_dhcp_entry.json.1b8f1e2f-aae2-4143-a31a-3b8606b3e5f7 took 385ms
2020-08-31 14:57:50,565 DEBUG [c.c.h.v.r.VmwareResource] (DirectAgent-298:ctx-59090025 <IP_ADDRESS>, job-836, cmd: DhcpEntryCommand) (logid:6161a6f9) Run command on VR: <IP_ADDRESS>, script: update_config.py with args: vm_dhcp_entry.json.1b8f1e2f-aae2-4143-a31a-3b8606b3e5f7
2020-08-31 14:57:51,049 DEBUG [c.c.h.v.r.VmwareResource] (DirectAgent-298:ctx-59090025 <IP_ADDRESS>, job-836, cmd: DhcpEntryCommand) (logid:6161a6f9) update_config.py execution result: true
2020-08-31 14:57:51,049 DEBUG [c.c.a.r.v.VirtualRoutingResource] (DirectAgent-298:ctx-59090025 <IP_ADDRESS>, job-836, cmd: DhcpEntryCommand) (logid:6161a6f9) Processing ScriptConfigItem, executing update_config.py vm_dhcp_entry.json.1b8f1e2f-aae2-4143-a31a-3b8606b3e5f7 took 484ms
2020-08-31 14:57:51,049 WARN  [c.c.a.r.v.VirtualRoutingResource] (DirectAgent-298:ctx-59090025 <IP_ADDRESS>, job-836, cmd: DhcpEntryCommand) (logid:6161a6f9) Expected 1 answers while executing DhcpEntryCommand but received 2
2020-08-31 14:57:51,050 DEBUG [c.c.a.t.Request] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Seq 2-2379026503158477752: Received:  { Ans: , MgmtId:<PHONE_NUMBER>4424, via: 2(<IP_ADDRESS>), Ver: v1, Flags: 10, { GroupAnswer } }
2020-08-31 14:57:51,051 DEBUG [c.c.n.NetworkModelImpl] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Service SecurityGroup is not supported in the network id=208
2020-08-31 14:57:51,051 DEBUG [o.a.c.e.o.NetworkOrchestrator] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Removed nic id=305
2020-08-31 14:57:51,052 DEBUG [o.a.c.e.o.NetworkOrchestrator] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Revoving nic secondary ip entry ...
2020-08-31 14:57:51,054 DEBUG [c.c.n.NetworkModelImpl] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Service SecurityGroup is not supported in the network id=207
2020-08-31 14:57:51,055 DEBUG [o.a.c.e.o.NetworkOrchestrator] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Changing active number of nics for network id=207 on -1
2020-08-31 14:57:51,057 DEBUG [c.c.n.NetworkModelImpl] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Service SecurityGroup is not supported in the network id=207
2020-08-31 14:57:51,058 DEBUG [o.a.c.e.o.NetworkOrchestrator] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Removed nic id=306
2020-08-31 14:57:51,058 DEBUG [o.a.c.e.o.NetworkOrchestrator] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Revoving nic secondary ip entry ...
2020-08-31 14:57:51,066 DEBUG [o.a.c.e.o.VolumeOrchestrator] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Unmanaging storage for vm: 119
2020-08-31 14:57:51,087 DEBUG [c.c.n.f.FirewallManagerImpl] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) No firewall rules are found for vm id=119
2020-08-31 14:57:51,091 DEBUG [c.c.v.UserVmManagerImpl] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Firewall rules are removed successfully as a part of vm id=119 expunge
2020-08-31 14:57:51,092 DEBUG [c.c.n.r.RulesManagerImpl] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) No port forwarding rules are found for vm id=119
2020-08-31 14:57:51,092 DEBUG [c.c.v.UserVmManagerImpl] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Port forwarding rules are removed successfully as a part of vm id=119 expunge
2020-08-31 14:57:51,093 DEBUG [c.c.v.UserVmManagerImpl] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Removed vm id=119 from all load balancers as a part of expunge process
2020-08-31 14:57:51,103 DEBUG [c.c.r.ResourceLimitManagerImpl] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Updating resource Type = volume count for Account = 4 Operation = decreasing Amount = 1
2020-08-31 14:57:51,106 DEBUG [c.c.r.ResourceLimitManagerImpl] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Updating resource Type = primary_storage count for Account = 4 Operation = decreasing Amount = (1.00 GB)<PHONE_NUMBER>
2020-08-31 14:57:51,113 ERROR [c.c.v.UserVmManagerImpl] (API-Job-Executor-40:ctx-0aafd0a6 job-836 ctx-4e8394bb) (logid:6161a6f9) Could not unmanage VM 20ec0335-f10b-443e-92ef-9ec5bef3d3be
2020-08-31 14:57:51,129 DEBUG [o.a.c.f.j.i.AsyncJobManagerImpl] (API-Job-Executor-40:ctx-0aafd0a6 job-836) (logid:6161a6f9) Complete async job-836, jobStatus: FAILED, resultCode: 530, result: org.apache.cloudstack.api.response.ExceptionResponse/null/{"uuidList":[],"errorcode":"530"}
2020-08-31 14:57:51,129 DEBUG [o.a.c.f.j.i.AsyncJobManagerImpl] (API-Job-Executor-40:ctx-0aafd0a6 job-836) (logid:6161a6f9) Publish async job-836 complete on message bus
2020-08-31 14:57:51,129 DEBUG [o.a.c.f.j.i.AsyncJobManagerImpl] (API-Job-Executor-40:ctx-0aafd0a6 job-836) (logid:6161a6f9) Wake up jobs related to job-836
2020-08-31 14:57:51,129 DEBUG [o.a.c.f.j.i.AsyncJobManagerImpl] (API-Job-Executor-40:ctx-0aafd0a6 job-836) (logid:6161a6f9) Update db status for job-836
2020-08-31 14:57:51,130 DEBUG [o.a.c.f.j.i.AsyncJobManagerImpl] (API-Job-Executor-40:ctx-0aafd0a6 job-836) (logid:6161a6f9) Wake up jobs joined with job-836 and disjoin all subjobs created from job- 836
2020-08-31 14:57:51,132 DEBUG [o.a.c.f.j.i.AsyncJobManagerImpl] (API-Job-Executor-40:ctx-0aafd0a6 job-836) (logid:6161a6f9) Done executing org.apache.cloudstack.api.command.admin.vm.UnmanageVMInstanceCmd for job-836
2020-08-31 14:57:51,132 INFO  [o.a.c.f.j.i.AsyncJobMonitor] (API-Job-Executor-40:ctx-0aafd0a6 job-836) (logid:6161a6f9) Remove job-836 from job monitoring

cc @Spaceman1984

@harikrishna-patnala cc @nvazquez can you look into this, if the issue was seen in PR #4250 it could be PR specific regression.

@harikrishna-patnala @nvazquez @shwstppr ping - update?

@rhtyd we've moved to PR #4307, I'll check on this PR

Sure thanks @nvazquez; @andrijapanicsb pl avoid raising bugs that may be PR specific as issues on master

I don't understand how I am supposed to know that those are PR specific, considering that the failure has zero things to do with the PR I was testing...

@andrijapanicsb unmanaging working fine on few tests I've done on #4307, could have been an issue with the previous PR, are you able to still reproduce it?

Tested on master, no issue.

Thanks @Spaceman1984, closing it


feat: add get keys and get all entries to the cache

Welcome to Codecov :tada:
Once you merge this PR into your default branch, you're all set! Codecov will compare coverage reports and display results in all future pull requests.
Thanks for integrating Codecov - We've got you covered :open_umbrella:


Toggle ESP for Menu and Game Window

Modify the overlay to only display visuals when the menu is open or when CS2 is the active window, so there is a cleaner user experience (especially when e.g. tabbing out of cs2 to chat with a friend)
PS: this is probably not a well written version and more of a Proof-of-Concept/ enhancement idea
Would be cool to see something similar in Dexterion though as it is getting a bit annoying :)

Looks good!
Will merge when I check everything works fine.
(I might add a checkbox to enable / disable this feature)

Aproved. Need future confirmation from @Skwrr

On line overlay.cpp:111 remove the "!". I messed it up and will work weird.


Add TLS support for websockets

Currently, we have implemented TLS support for HTTP client & server. However, WebSocket support is currently plain only.
@0x00002a did you by any chance already start working on this when you restructured the websocket connections?

I didn't start working on it exactly, although I can have a go at doing this (I've never done TLS websockets before so might take a bit :p), but I did implement it with TLS in mind (thats why stream exsits, to wrap a possible TLS version of it)

@Tectu I think quite a clean way to do this would be letting the user pass in a uri which was parsed for either ws:// or wss:// but since the API already has http/https versions do you think it would be better to have a make_secure_websocket_connection instead? Also make_websocket_connection is quite a mouthful, I'm not sure if it can really be shortend without losing clarity but make_secure_websocket_connection is too long imo. ws_connect and wss_connect could work?


AnimatedContainer + GoogleMaps Package == Buggy

The 'full' issue (written below) appears only once and after that I only get this exception :
flutter: Another exception was thrown: RenderBox was not laid out: RenderUiKitView#7747f NEEDS-LAYOUT NEEDS-PAINT - but on every click on the scaffold
The full issue / error / exception is written below
Error :
flutter: ══╡ EXCEPTION CAUGHT BY GESTURE LIBRARY ╞═══════════════════════════════════════════════════════════
flutter: The following assertion was thrown while routing a pointer event:
flutter: RenderBox was not laid out: RenderUiKitView#7747f NEEDS-LAYOUT NEEDS-PAINT
flutter: 'package:flutter/src/rendering/box.dart':
flutter: Failed assertion: line 1687 pos 12: 'hasSize'
flutter:
flutter: Either the assertion indicates an error in the framework itself, or we should provide substantially
flutter: more information in this error message to help you determine and fix the underlying cause.
flutter: In either case, please report this assertion by filing a bug on GitHub:
flutter:   https://github.com/flutter/flutter/issues/new?template=BUG.md
flutter:
flutter: When the exception was thrown, this was the stack:
flutter: #2      RenderBox.size (package:flutter/src/rendering/box.dart:1687:12)
flutter: #3      RenderUiKitView._handleGlobalPointerEvent (package:flutter/src/rendering/platform_view.dart:353:25)
flutter: #4      PointerRouter._dispatch (package:flutter/src/gestures/pointer_router.dart:76:12)
flutter: #5      PointerRouter._dispatchEventToRoutes.<anonymous closure> (package:flutter/src/gestures/pointer_router.dart:117:9)
flutter: #6      _LinkedHashMapMixin.forEach (dart:collection-patch/compact_hash.dart:379:8)
flutter: #7      PointerRouter._dispatchEventToRoutes (package:flutter/src/gestures/pointer_router.dart:115:18)
flutter: #8      PointerRouter.route (package:flutter/src/gestures/pointer_router.dart:107:5)
flutter: #9      GestureBinding.handleEvent (package:flutter/src/gestures/binding.dart:218:19)
flutter: #10     GestureBinding.dispatchEvent (package:flutter/src/gestures/binding.dart:198:22)
flutter: #11     GestureBinding._handlePointerEvent (package:flutter/src/gestures/binding.dart:156:7)
flutter: #12     GestureBinding._flushPointerEventQueue (package:flutter/src/gestures/binding.dart:102:7)
flutter: #13     GestureBinding._handlePointerDataPacket (package:flutter/src/gestures/binding.dart:86:7)
flutter: #17     _invoke1 (dart:ui/hooks.dart:273:10)
flutter: #18     _dispatchPointerDataPacket (dart:ui/hooks.dart:182:5)
flutter: (elided 5 frames from class _AssertionError and package dart:async)
flutter:
flutter: Event:
flutter:   PointerDownEvent#b298f(position: Offset(324.7, 138.0), timeStamp: 2:33:06.079421, pointer: 1,
flutter:   kind: touch, device:<PHONE_NUMBER>34704, buttons: 1, down: true, pressure: 0.0, pressureMin: 0.0,
flutter:   pressureMax: 6.7, radiusMajor: 6.7, radiusMin: 5.0, radiusMax: 8.3, orientation: -1.6)
flutter: ════════════════════════════════════════════════════════════════════════════════════════════════════
flutter: Another exception was thrown: RenderBox was not laid out: RenderUiKitView#7747f NEEDS-LAYOUT NEEDS-PAINT

Flutter Doctor :

[✓] Flutter (Channel stable, v1.12.13+hotfix.8, on Mac OS X 10.14.5 18F132,
    locale de-DE)

[!] Android toolchain - develop for Android devices (Android SDK version 29.0.0)
    ! Some Android licenses not accepted.  To resolve this, run: flutter doctor
      --android-licenses
[✓] Xcode - develop for iOS and macOS (Xcode 11.3.1)
[✓] Android Studio (version 3.3)
[✓] IntelliJ IDEA Community Edition (version 2019.1.2)
[✓] Connected device (1 available)

! Doctor found issues in 1 category.

To reproduce simply add this to your normal app:
bool _visibleMap = true;
double _mapHeight = 300;
double _mapWidth = 300;
AnimatedContainer(

      height: _mapHeight,
      width: _mapWidth,
      duration: Duration(milliseconds: 500),
      curve: Curves.fastOutSlowIn,
      onEnd: () {setState(() {
        _animationFinished = true;
      });},
      child: Stack(
        children: <Widget>[
          Align(
            alignment: Alignment.topCenter,
            child: ClipRRect(
              borderRadius:
              BorderRadius.vertical(bottom: Radius.circular(50.0)),
                child: GoogleMap(
                  padding: EdgeInsets.only(left: 20, bottom: 5),
                  trafficEnabled: false,
                  buildingsEnabled: false,
                  myLocationButtonEnabled: false,
                  myLocationEnabled: false,
                  scrollGesturesEnabled: false,
                  tiltGesturesEnabled: false,
                  mapType: MapType.normal,
                  initialCameraPosition:
                  CameraPosition(target: LatLng(53.551573, 9.9942684), zoom: 12.0),
                  onMapCreated: mapCreated,
                )
            ),
          ),
          FloatingActionButton(
            child: Icon(Icons.add),
            onPressed: () {
              if (_visibleMap) {
                setState(() {
                  _mapHeight = 0;
                  _mapWidth = 0;
                });
              } else {
                _mapHeight = 300;
                _mapWidth = 300;
              }
            },
          ),
        ],
      ),
    )

Thanks for providing such an incredible framework!

Hi @iLePix
Are you still facing this issue? If yes, then, please share your  flutter doctor -v.
Thank you

Hi @iLePix
I will also need a complete sample code that I can just copy/paste into a main.dart and run it. The code you provided above is not complete.


can't find cortex m4 port‘s files for AC6 compiler

If I am using AC6 compiler，Can I use AC5 or keil ports‘s files ?

Hi @HarbourXbr - NetX Duo is fairly generic C code, so you can use those port files and it should work fine. Let us know if you run into any issues.


Fonts error message when turning off bluetooth keyboard

Reported by Lou King
When turning off the bluetooth keyboard while using the mobile timing app, he receives this error message on fonts and has to restart the app:

Public Ticket URL: https://help.runsignup.com/support/tickets/public/b3c960f054266cadbf1cc9fb3e9fa262259bddf0292bb822fd8ce3cf3f701bc5

This is an Expo issue that should be resolved after our transition to React Native.

Will be resolved in https://github.com/RunSignUp-Team/RunSignup-Mobile-Timing-App/issues/57


Added Closures

Placing this after Currying because I feel they are related and often confused with each other.

Closures are requirement for Currying.

Hi, @jethrolarson @hemanth - any more comments or changes? This is hanging since 3 weeks now :laughing:

I think it would also be useful to add the difference between closures and lamdas (a lot of ppl seem to not know the difference between them)

I think it would also be useful to add the difference between closures and lamdas

Would vote for that!

Ping!

Couldnt finish this for a long time!
Check no @hemanth :)

Thanks!

Tx!


Script break on page resize

Category

[x] Question
[ ] Typo
[ ] Bug
[ ] Additional article idea

I'm moving around some elements on the page, including the menu. When there's a page resize after the elements have been moved an error is thrown, I'm assuming the elements that have been moved are being missed in their original locations. I tried to keep a clone in the place of the original elements but the error persists.
Expected or Desired Behavior
Is it possible that this error could be handled so it doesn't break any other scripts on the page?

Uncaught (in promise) TypeError: Cannot read property 'replaceChild' of null
at Function.o [as replaceChildWithTree] (sp-pages-assembly_en-us_8c2eab8eae69746ed078ac2c3fb6d022.js:706)
at Object.dangerouslyReplaceNodeWithMarkup [as replaceNodeWithMarkup] (sp-pages-assembly_en-us_8c2eab8eae69746ed078ac2c3fb6d022.js:706)
at window.spModuleLoader.p._replaceNodeWithMarkup (sp-pages-assembly_en-us_8c2eab8eae69746ed078ac2c3fb6d022.js:706)
at window.spModuleLoader.p._updateRenderedComponent (sp-pages-assembly_en-us_8c2eab8eae69746ed078ac2c3fb6d022.js:706)
at window.spModuleLoader.p._performComponentUpdate (sp-pages-assembly_en-us_8c2eab8eae69746ed078ac2c3fb6d022.js:706)
at window.spModuleLoader.p.updateComponent (sp-pages-assembly_en-us_8c2eab8eae69746ed078ac2c3fb6d022.js:706)
at window.spModuleLoader.p.performUpdateIfNecessary (sp-pages-assembly_en-us_8c2eab8eae69746ed078ac2c3fb6d022.js:706)
at Object.performUpdateIfNecessary (sp-pages-assembly_en-us_8c2eab8eae69746ed078ac2c3fb6d022.js:692)
at s (sp-pages-assembly_en-us_8c2eab8eae69746ed078ac2c3fb6d022.js:692)
at r.perform (sp-pages-assembly_en-us_8c2eab8eae69746ed078ac2c3fb6d022.js:692)

Steps to Reproduce

Append the navbar on a different location on the page and resize into mobile. This only happens in Communication sites. Thank you!

Can you explain slightly more on what you actually mean by "moving around some elements on the page"? Also if this is classic or modern experience has an impact. In general, if you change the dom structure of the page, you might run into these kinds of issues as oob scripts would not be aware of your changes.

I'm taking the menu out of it's original position and appending it elsewhere on the page. This happens in Modern Pages. Yes, this kind of issue doesn't surprise me but I was hoping you guys could handle these errors so that the script wouldn't break when it doesn't find the element it wants. I understand this wouldn't be a priority but it would really help out!

As the UI is not an API, we cannot guarantee that it works without any issues if you change the dom structure. We will be providing more extensibility placeholders to enable these kinds of scenarios, but as this is clearly a new feature ask, it should be added to UserVoice at http://aka.ms/spdev-uservoice.


I want to call many API services, but can I only fill in one key? How should I fill in different keys?

I want to call many API services, but can I only fill in one key? How should I fill in different keys?

They all use same key


PHP 5.6 support?

Any reason why the requirement is php 7?

In this package scalar type hints, return type hints and the null coalescence operator are used.
If you need a PHP 5 compatible version just fork the package and maintain your own version.

I created a fork for that, as we will not be able to use PHP7 on the production server: https://github.com/derhasi/schema-org
I used spatie/7to5 for some parts. Great tool. 💙


Magnum support

Magnum support. Based on paulczar's earlier pull request (https://github.com/blueboxgroup/ursula/pull/1126/) and leveraging ursula heat changes that were added on after that.

@paulczar Can we close this if we've got your original PR open?


Prevent memory leak in headers.

Signed-off-by: Tom Kelley<EMAIL_ADDRESS>
What type of PR is this?
/kind bug

Any specific area of the project related to this PR?
/area outputs

What this PR does / why we need it:
Somebody made a PR that contained a memory leak for most of the outputs in the Falcosidekick. Since the header list was never reset and the output objects are long-lived (they're not recreated for each POST), headers would populate across request boundaries. For most outputs, this would be a major problem. For the Kubeless output, this is a critical problem since an event-id is generated for each event/POST request.
Which issue(s) this PR fixes:

N/A
Special notes for your reviewer:
I'm sorry that this happened, and I'll try not to let it happen again.

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: distortedsignal
To complete the pull request process, please assign leodido after the PR has been reviewed.
You can assign the PR to them by writing /assign @leodido in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

This a a major issue, I'll review it tonight and release 2.23.1 with your fix if it's OK.

Something like:

	if config.Elasticsearch.HostPort != "" {
		var err error
		elasticsearchClient, err = outputs.NewClient("Elasticsearch", config.Elasticsearch.HostPort+"/"+config.Elasticsearch.Index+"/"+config.Elasticsearch.Type, config.Elasticsearch.MutualTLS, config.Elasticsearch.CheckCert, config, stats, promStats, statsdClient, dogstatsdClient)
		if err != nil {
			config.Elasticsearch.HostPort = ""
		} else {
		    if c.Config.Elasticsearch.Username != "" && c.Config.Elasticsearch.Password != "" {
	      	   c.BasicAuth(c.Config.Elasticsearch.Username, c.Config.Elasticsearch.Password)
	        }
			outputs.EnabledOutputs = append(outputs.EnabledOutputs, "Elasticsearch")
		}
	}

I quickly red your fix, and I think we should call BasicAuth() function at client init, and not in Post() and that will avoid to add authentication Headers at each Post, wdyt?

I'm not sure that will work. The reason that the old system worked (and didn't leak memory) is that every time there was a POST, the headers object was recreated. This worked because we were adding all the headers in the client.go Post function. Because we are now adding headers to a list and then persisting that list across POST requests, there are some headers that need to be set on a per-request basis that will leak memory across Post calls. As I said, this is a moderate problem for most outputs, but this is REALLY a problem for the Kubeless output. Because it sets a new event-id for each issue/POST, these will accumulate across request boundaries. So these headers will have to be cleared after each request.

I quickly red your fix, and I think we should call BasicAuth() function at client init, and not in Post() and that will avoid to add authentication Headers at each Post, wdyt?

I'm not sure that will work. The reason that the old system worked (and didn't leak memory) is that every time there was a POST, the headers object was recreated. This worked because we were adding all the headers in the client.go Post function. Because we are now adding headers to a list and then persisting that list across POST requests, there are some headers that need to be set on a per-request basis. Not resetting that list will leak memory across Post calls. As I said, this is a moderate problem for most outputs, but this is REALLY a problem for the Kubeless output. Because it sets a new event-id for each issue/POST, these will accumulate across request boundaries. So these headers will have to be cleared after each request.

Ok I see, your fix seems the simplest way to do so and without changing too much things

LGTM label has been added.  Git tree hash: 88e69613d493c0d06ec0a2a78b70db22c959402b

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: distortedsignal, Issif
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [Issif]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Ability to use external etcd when using docker run to run Rancher

Specify external etcd cluster when using docker run to run Rancher.
docker run -d -v /path/to/certs:/certs:ro rancher/rancher \
   --ca-cert /certs/ca.pem \
   --cert /certs/cient.pem \
   --cert-key /certs/client-key.pem \
   --etcd-prefix /etcd1 \
   --endpoints https://etcd1.company.com:2379, https://etcd2.company.com:2379
   --server-id unique-service-id

Interested in this feature as well.


Open Source : 7.9 Explain everything related to Common Development and Distribution License

Description 📜
Open Source : 7.9 Explain everything related to Common Development and Distribution License
NOTE 👇
Please put your doc 7.License/ with the name 7.9_Common_Development_Distribution_.md

Domain
Open Source
Type of Contribution
Documentation
Code of Conduct

[X] I follow Contributing Guidelines & Code of conduct of this project.

/ assign

@Hritik157  Assigned, Happy Learning 🎉🎉

Thank you :)


feat(masthead): support for dynamic language switch

Related Ticket(s)
Refs #3899.
Description
Introduces code to load language display data as well as translation data with the new language when language property is changed in <dds-masthead-container>, <dds-footer-container> or <dds-locale-modal-container>.
To make it work, did the following changes:

Add support specifying a specific language in loadLangDisplay(), loadLocaleList() and loadTranslation() Redux actions.
Make Redux data for display language managed per language.
Unsupport custom links data from <dds-masthead-container>, <dds-footer-container> and <dds-locale-modal-container>. For such use case, -composite counterparts should be used. Tests are changed to reflect such change.

Also, eliminated duplicate type definitions found during the effort.

Changelog
New

Code to load language display data as well as translation data with the new language when language property is changed in <dds-masthead-container>, <dds-footer-container> or <dds-locale-modal-container>.
Support specifying a specific language in loadLangDisplay(), loadLocaleList() and loadTranslation() Redux actions.

Changed

A change to make Redux data for display language managed per language.

Removed

Support for custom links data from <dds-masthead-container>, <dds-footer-container> and <dds-locale-modal-container>. For such use case, -composite counterparts should be used. Tests are changed to reflect such change.

@asudoh Just had a thought, this might affect the codesandbox examples since links is no longer supported, right?

@jeffchew Here's what will happen as far as I know; In the environment where we explicitly set e.g. .navLinks, the API calls to get the corresponding data fails. And thus nothing will override the .navLinks we explicitly set and thus it still works.

@jeffchew Here's what will happen as far as I know; In the environment where we explicitly set e.g. .navLinks, the API calls to get the corresponding data fails. And thus nothing will override the .navLinks we explicitly set and thus it still works.

Sounds good! Still seeing unrelated issues around codesandbox so will ping you offline on that.


Migrate to ghcr.io docker registry

To prepare for migrating to ghcr.io, update to v2 docker REST API since ghcr.io only supports v2.

@jenkins-droid publish this please

@jenkins-droid publish this please

@jenkins-droid publish this please

@jenkins-droid publish this please

@jenkins-droid publish this please

@jenkins-droid publish this please

@jenkins-droid publish this please

@jenkins-droid publish this please

@jenkins-droid publish this please

@jenkins-droid publish this please

@jenkins-droid publish this please

@jenkins-droid publish this please

@jenkins-droid publish this please

@jenkins-droid publish this please

@jenkins-droid publish this please

@jenkins-droid publish this please

Jenkins Linux amd64 Build #13855 [push] Update to v2 docker REST... started at 23:48

Jenkins Linux s390x Build #13882 [push] Update to v2 docker REST... started at 00:48

Jenkins Linux ppc64le Build #12879 [push] Update to v2 docker REST... started at 00:56

Jenkins Linux s390x Build #13882 [push] Update to v2 docker REST... passed after 1 hr 27 min

Jenkins Linux amd64 Build #13855 [push] Update to v2 docker REST... passed after 2 hr 1 min

Jenkins Linux ppc64le Build #12879 [push] Update to v2 docker REST... passed after 2 hr 5 min


JSON logging across data portal and explorer

We are already logging to cloudwatch in JSON format in the data portal API server. We should update the remains services to also log in JSON format.
single-cell-data-portal

backend/corpora/upload_failures/app.py
backend/corpora/upload_success/app.py
backend/corpora/dataset_submissions/app.py
backend/corpora/dataset_processing/logger.py
backend/wmg/data/cube_pipeline.py

single-cell-explorer

/single-cell-explorer/server/app/app.py

#Definition of Done

All of the above apps or pipelines produce logs in JSON format

Excluding from 2022Q4 scope as discussed at OKR confidence scoring meeting moving to on-call backlog as future work

[ ] Issue needs to specify the JSON format/fields to use for pipeline logging.

Would also be useful if API responses log messages included the original request's url and method.

See also https://app.zenhub.com/workspaces/single-cell-5e2a191dad828d52cc78b028/issues/gh/chanzuckerberg/single-cell-explorer/540 (duplicate)

This work is complete


USE override for Tulu-Tigalari

The UTC has approved proposal L2/22-031 to encode the Tulu-Tigalari script in a future version of the Unicode Standard. Pages 22-23 of the proposal discuss the need to override the Indic syllabic category of the Tulu-Tigalari Virama with the value Bindu.
Please implement that override when the future version arrives.

This also includes an override for Tulu-Tigalari Virama as explained on page 24.

We suggest a USE override for the Looped Virama by assigning it the value of 'Consonant Modifier'.

V

@virtualvinodh, @NorbertLindenberg is the following what you expect?:
113CE         ; Bindu  # Mn       TULU-TIGALARI SIGN VIRAMA
113CF         ; Nukta  # Mc       TULU-TIGALARI SIGN LOOPED VIRAMA

Looks like what Dr Vinodh prescribed.

Turns out that the override for 113CF doesn't work: It creates a CONS_MOD with InPC=Right, which the USE doesn't support. Tulu-Tigalari already has a CONS_MOD with InPC=Bottom, 113D2, so just overriding 113CF with that value doesn't work either.

Reopening to apply solution proposed by @dscorbett.


Could not get zfunctions to load

Hello there. Hope you're doing well.
I'm trying to get zfunctions to work but failed to do so.

I have the following line in ~/.zshrc:

export ZFUNCDIR=$HOME/.config/zsh/functions

I have the following lines in ~/.zsh_plugins.txt (I'm using antidote):

mattmc3/zephyr path:plugins/directory
mattmc3/zephyr path:plugins/editor
mattmc3/zephyr path:plugins/history
mattmc3/zephyr path:plugins/completion

According to https://github.com/mattmc3/zephyr/tree/main#plugins , zfunctions is included.

Launch a new shell and test with:

(( $+functions[autoload-dir] )) && echo "zfunctions loaded" || echo "zfunctions not loaded"

and got
zfunctions not loaded

Any input is much appreciated. Thank you again.

Good catch - this was a problem with the readme. The code you want is:
(( $+functions[funcsave] )) && echo "zfunctions loaded" || echo "zfunctions not loaded"

I pushed a fix.

You'll also need to add this to your .zshrc
mattmc3/zephyr path:plugins/zfunctions

Ohhh I get it now.
Given Plugins, the user can pick and choose which plugins to load.
It makes sense as I'm on Linux and so homebrew and macos would not apply for my use case.
After adding the line mattmc3/zephyr path:plugins/zfunctions, the command (( $+functions[funcsave] )) && echo "zfunctions loaded" || echo "zfunctions not loaded" works! Thank you!


Yeelight + Philip Ceiling light + Rice Cooker and Water filtering will be awesome

Hi there,
If you have add more items will be best plugins ever.
Yeelight
Philip Ceiling light
Rice Cooker
Water filtering
Thank for this awesome plugins.

hello~
Yeelight is been supported.
you can try it and submit issue here.


fix: add use client directive option to form renderer

Adds the 'use client'; directive as an option when rendering react forms. This makes the forms more usable in next js components.
Additional Notes

Links
Ticket

GitHub issue:
Other links
Verification
Manual tests

Automated tests

[ ] Unit tests added/updated
[ ] E2E tests added/updated
[ ] N/A - (provide a reason)
[ ] deferred - (provide GitHub issue for tracking)

Housekeeping

[ ] No non-essential console logs
[ ] All new files contain license notice

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Codecov Report

Merging #1112 (79b4e07) into main (fdeeb89) will increase coverage by 0.03%.
The diff coverage is 100.00%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.

@@            Coverage Diff             @@
##             main    #1112      +/-   ##
==========================================
+ Coverage   93.80%   93.84%   +0.03%
==========================================
  Files         149      149
  Lines        6089     6091       +2
  Branches     1834     1835       +1
==========================================
+ Hits         5712     5716       +4
+ Misses        358      357       -1
+ Partials       19       18       -1

Files
Coverage Δ

.../codegen-ui-react/lib/forms/react-form-renderer.ts
97.72% <100.00%> (+0.93%)
:arrow_up:

...ckages/codegen-ui-react/lib/react-render-config.ts
100.00% <ø> (ø)

...react/lib/react-studio-template-renderer-helper.ts
94.25% <ø> (ø)

Continue to review full report in Codecov by Sentry.

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


flow terrain: use dedicated variable for last fusion time

In many places, the main EKF assumes that a recent _time_last_of_fuse means that the horizontal velocity is constrained by flow fusion. This is not the case as this variable was also used in the terrain estimator.
Also, even if in most places the flow fusion flag is checked in addition to _time_last_of_fuse, there is a time window where this condition can be true since the flag can change instantaneously.
This PR adds a new _time_last_flow_terrain_fuse to avoid confusion and bugs related to this multiple use of the same variable.

Thanks @bresch


Remove net admin

What this PR does / why we need it:
This PR removes the CAP_NET_ADMIN linux capability from virt-launcher, thus taking us one step closed to be yet another harmless pod running on Kubernetes .
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #3085
Special notes for your reviewer:
Depends on: #4498
Release note:

Remove CAP_NET_ADMIN from the virt-launcher pod.

/hold

/hold cancel
Looks like a good solution to me!

/cc @AlonaKaplan

@maiqueb seems like everything is passing. Please update the test and we should be good.

Remove MTU configuration from macvtap (causing CNAO lane to fail);
Remove CAP_NET_ADMIN from SCC, and from the security_features_test .

Great!
/lgtm

/cc @jean-edouard

Cool! :)
/approve

/hold
@maiqueb  please look at the tests again.

/lgtm cancel

@AlonaKaplan https://github.com/kubevirt/kubevirt/pull/4506/commits/a7c77597389937bb9108080b1d6390f1a744d2f5 addresses your MTU question.

/retest

Please verify the mtu of the tap is correct. Here and here.

/lgtm
/hold till https://github.com/kubevirt/kubevirt/pull/4498

/lgtm
/hold till #4498

Abandoned #4498 and using that single commit here (I don't see a reason to keep it as as isolated PR; it could be a part of this one, since it conceptually is part of the work to remove NET_ADMIN).
/hold cancel


Tech Debt: Component visibility/forceVisible refactor

Bits UI currently just assumes you wish to use Svelte transitions and prefer to have the "floating"/"hidden" components not exist in the DOM at all until "opened". This is an assumption I deeply regret making, so I want to fix it.
Why?

SEO. When the content doesn't even exist in the DOM until its opened, that content can't be indexed by crawlers. This is especially problematic for components like Accordion and Collapsible, but also for content inside of dialogs, menus, and popovers.
Search. If you're using something to index your site for some sort of search functionality, the same issue described above exists.

Solution
By default, the components will behave as they do right now, however, if the forceVisible prop on the Component.Root is true, the content will be displayed/hidden using the display: none style property.

Fantastic idea and makes total sense - to clarify will the transitions still work?

Fantastic idea and makes total sense - to clarify will the transitions still work?

Svelte transitions won't work, unfortunately, as they depend on something being removed from the DOM. CSS transitions should still work though.

In similar situations in the past, I have done a rather lazy approach which is to just always have a second static display: none DOM element present with the content for SEO purposes, but the component itself still adds/removes its own separate element so Svelte transitions continue to work. Maybe that could work?
Also is forceVisible the right name for this prop?

Just adding to this because I believe it's related to the issue I'm running into. I'm using TinyMCE editor within collapsible sections. When collapsed the editor seems to get refreshed, meaning the content gets wiped.

Just adding to this because I believe it's related to the issue I'm running into. I'm using TinyMCE editor within collapsible sections. When collapsed the editor seems to get refreshed, meaning the content gets wiped.

At the moment this data will have to be persisted via a store or similar. I have some ideas in mind for this but they may not execute until Svelte 5 due to the substantial undertaking and my time limitations to handle both.

Wait, so collapsed accordion items, etc will always be removed from the DOM? 😭

Wait, so collapsed accordion items, etc will always be removed from the DOM? 😭

Not in the Svelte 5 version 😃