Metrics report incorrect data

Describe the bug
When collecting Prometheus metrics, metrics indicate a different (and higher) participant count than we can collect with livekit-cli. Specifically, we have zero active rooms, but more-than-zero participants.
Server

Version: 1.5.1
Environment: Self-managed Kubernetes v1.28.3

To Reproduce
Unknown, assuming it's enough to just run livekit-server for a while while participants join and leave.
Expected behavior
One of:

Metrics report correct participant count (zero)
Livekit-cli gains ability to list participants without filtering by room, thus showing any participants that are connected but not in a room (I assume that scenario impossible, though, so it's probably the metrics reporting wrong)

Screenshots
Reported participants are slowly increasing forever, resembling a memory leak (in this case, probably an incorrectly incremented/decremented participant count?):

Additional context
Metric output from both of our livekit-server instances:
# curl -sq http://<IP_ADDRESS>:6789/metrics | grep -E 'livekit_participant_total|livekit_room_total' | grep -vF '#'
livekit_participant_total{env="test",node_id="test",node_type="SERVER"} 41
livekit_room_total{env="test",node_id="test",node_type="SERVER"} 1
# curl -sq http://<IP_ADDRESS>:6789/metrics | grep -E 'livekit_participant_total|livekit_room_total' | grep -vF '#'
livekit_participant_total{env="test",node_id="test",node_type="SERVER"} 32
livekit_room_total{env="test",node_id="test",node_type="SERVER"} 0

Livekit-cli response:
$ livekit-cli list-rooms --project prod
Using project: prod
RM_fAMdb2uUGUs2	<redacted_room_name>	1 participants

@Stogas, can you share what scenarios would cause the counter to become inaccurate? We are unable to reproduce it. After running load tests against it, livekit_participant_total remains correct.

We're not sure what scenarios cause it, as we only observe it in production (where end-users create and join video calls).
At the very least I can confirm the issue is still present in Livekit 1.5.2, currently observing 3 participants over 2 rooms via livekit-cli, but metrics export only 2.
As an additional detail, we're using multiple (2) Livekit instances with Redis.
Do you have any suggestions on scenarios we can create to try and reproduce the issue in a clean environment?

I'm still in the process of gathering a reproducable case, however one behavior I immediately observe is that the metrics endpoint and livekit-cli definitely has a delay/latency to each other:
# for i in {0..1000}; do date -u +"%Y-%m-%dT%H:%M:%SZ" | tr '\n' ' '; curl -sq https://<metrics-port>/metrics | grep -E '^livekit_participant_total' | awk -F'[{}]' '{print $1, $NF}' | tr -d '\n'; echo -n ' -- '; livekit-cli list-rooms | grep -v 'default project'; sleep 1; done
<...>
2024-02-29T11:02:47Z livekit_participant_total  0 -- RM_Dr2TNDXqgvVS	test	0 participants
2024-02-29T11:02:49Z livekit_participant_total  0 -- RM_Dr2TNDXqgvVS	test	0 participants
2024-02-29T11:02:50Z livekit_participant_total  0 -- RM_Dr2TNDXqgvVS	test	0 participants
2024-02-29T11:02:52Z livekit_participant_total  0 -- RM_Dr2TNDXqgvVS	test	0 participants
2024-02-29T11:02:53Z livekit_participant_total  1 -- RM_Dr2TNDXqgvVS	test	1 participants
2024-02-29T11:02:54Z livekit_participant_total  1 -- RM_Dr2TNDXqgvVS	test	1 participants
2024-02-29T11:02:56Z livekit_participant_total  1 -- RM_Dr2TNDXqgvVS	test	1 participants
2024-02-29T11:02:57Z livekit_participant_total  2 -- RM_Dr2TNDXqgvVS	test	1 participants   <---
2024-02-29T11:02:59Z livekit_participant_total  2 -- RM_Dr2TNDXqgvVS	test	1 participants   <---
2024-02-29T11:03:00Z livekit_participant_total  2 -- RM_Dr2TNDXqgvVS	test	1 participants   <---
2024-02-29T11:03:02Z livekit_participant_total  2 -- RM_Dr2TNDXqgvVS	test	2 participants
2024-02-29T11:03:03Z livekit_participant_total  2 -- RM_Dr2TNDXqgvVS	test	2 participants
2024-02-29T11:03:05Z livekit_participant_total  2 -- RM_Dr2TNDXqgvVS	test	2 participants
2024-02-29T11:03:06Z livekit_participant_total  2 -- RM_Dr2TNDXqgvVS	test	2 participants
2024-02-29T11:03:08Z livekit_participant_total  2 -- RM_Dr2TNDXqgvVS	test	2 participants
2024-02-29T11:03:09Z livekit_participant_total  2 -- RM_Dr2TNDXqgvVS	test	2 participants
2024-02-29T11:03:11Z livekit_participant_total  2 -- RM_Dr2TNDXqgvVS	test	2 participants
2024-02-29T11:03:12Z livekit_participant_total  2 -- RM_Dr2TNDXqgvVS	test	2 participants
2024-02-29T11:03:14Z livekit_participant_total  2 -- RM_Dr2TNDXqgvVS	test	2 participants
2024-02-29T11:03:15Z livekit_participant_total  2 -- RM_Dr2TNDXqgvVS	test	2 participants
2024-02-29T11:03:17Z livekit_participant_total  2 -- RM_Dr2TNDXqgvVS	test	2 participants
2024-02-29T11:03:18Z livekit_participant_total  3 -- RM_Dr2TNDXqgvVS	test	3 participants
2024-02-29T11:03:20Z livekit_participant_total  3 -- RM_Dr2TNDXqgvVS	test	3 participants
2024-02-29T11:03:21Z livekit_participant_total  3 -- RM_Dr2TNDXqgvVS	test	3 participants
2024-02-29T11:03:23Z livekit_participant_total  3 -- RM_Dr2TNDXqgvVS	test	3 participants
2024-02-29T11:03:24Z livekit_participant_total  3 -- RM_Dr2TNDXqgvVS	test	3 participants
2024-02-29T11:03:26Z livekit_participant_total  3 -- RM_Dr2TNDXqgvVS	test	3 participants
2024-02-29T11:03:27Z livekit_participant_total  3 -- RM_Dr2TNDXqgvVS	test	3 participants
2024-02-29T11:03:29Z livekit_participant_total  3 -- RM_Dr2TNDXqgvVS	test	3 participants
2024-02-29T11:03:30Z livekit_participant_total  3 -- RM_Dr2TNDXqgvVS	test	3 participants
2024-02-29T11:03:32Z livekit_participant_total  3 -- RM_Dr2TNDXqgvVS	test	3 participants
2024-02-29T11:03:33Z livekit_participant_total  3 -- RM_Dr2TNDXqgvVS	test	3 participants
2024-02-29T11:03:35Z livekit_participant_total  3 -- RM_Dr2TNDXqgvVS	test	3 participants
2024-02-29T11:03:36Z livekit_participant_total  3 -- RM_Dr2TNDXqgvVS	test	3 participants
2024-02-29T11:03:38Z livekit_participant_total  3 -- RM_Dr2TNDXqgvVS	test	3 participants
2024-02-29T11:03:39Z livekit_participant_total  3 -- RM_Dr2TNDXqgvVS	test	3 participants
2024-02-29T11:03:41Z livekit_participant_total  3 -- RM_Dr2TNDXqgvVS	test	3 participants
2024-02-29T11:03:42Z livekit_participant_total  2 -- RM_Dr2TNDXqgvVS	test	2 participants
2024-02-29T11:03:44Z livekit_participant_total  2 -- RM_Dr2TNDXqgvVS	test	2 participants
2024-02-29T11:03:45Z livekit_participant_total  2 -- RM_Dr2TNDXqgvVS	test	2 participants
2024-02-29T11:03:47Z livekit_participant_total  2 -- RM_Dr2TNDXqgvVS	test	2 participants
2024-02-29T11:03:48Z livekit_participant_total  2 -- RM_Dr2TNDXqgvVS	test	2 participants
2024-02-29T11:03:50Z livekit_participant_total  2 -- RM_Dr2TNDXqgvVS	test	2 participants
2024-02-29T11:03:51Z livekit_participant_total  0 -- RM_Dr2TNDXqgvVS	test	1 participants   <---
2024-02-29T11:03:53Z livekit_participant_total  0 -- RM_Dr2TNDXqgvVS	test	1 participants   <---
2024-02-29T11:03:54Z livekit_participant_total  0 -- RM_Dr2TNDXqgvVS	test	1 participants   <---
2024-02-29T11:03:56Z livekit_participant_total  0 -- RM_Dr2TNDXqgvVS	test	1 participants   <---
2024-02-29T11:03:57Z livekit_participant_total  0 -- RM_Dr2TNDXqgvVS	test	0 participants
2024-02-29T11:03:59Z livekit_participant_total  0 -- RM_Dr2TNDXqgvVS	test	0 participants
2024-02-29T11:04:00Z livekit_participant_total  0 -- RM_Dr2TNDXqgvVS	test	0 participants

For posterity, I'm just opening and joining a room (from multiple shell sessions) via livekit-cli:
livekit-cli create-room --name test
livekit-cli join-room --room test --identity ovi1

livekit-cli join-room --room test --identity ovi2

livekit-cli join-room --room test --identity ovi3

Configuration tested is a single Livekit-server v1.5.3 instance w/ Redis, as defined in the docs

While we were unable to reproduce the issue in an isolated environment, we still observe erratic metric behavior.
For example, one Livekit node now reports that the published video track count is negative:

Sanity check using cURL:
/ # curl -sq <IP_ADDRESS>:6789/metrics | grep -E '^livekit_track_published_total'
livekit_track_published_total{env="develop",kind="AUDIO",node_id="ND_redacted9oh7",node_type="SERVER"} 0
livekit_track_published_total{env="develop",kind="VIDEO",node_id="ND_redacted9oh7",node_type="SERVER"} -1
/ # curl -sq <IP_ADDRESS>:6789/metrics | grep -E '^livekit_track_published_total'
livekit_track_published_total{env="develop",kind="AUDIO",node_id="ND_redacted44Jx",node_type="SERVER"} 8
livekit_track_published_total{env="develop",kind="VIDEO",node_id="ND_redacted44Jx",node_type="SERVER"} 11

And what livekit-cli reports:
$ livekit-cli list-rooms
Using default project prod
RM_redactedZgv	659redacted98a	12 participants

(note: the conflicting "environment" labels via metrics vs. livekit-cli is expected, as I haven't found a way to set the env label to anything else than develop. Both data sources are the same livekit nodes)

Same situation with livekit_participant_total on livekit-server v1.6.0:
# curl -sq http://<IP_ADDRESS>:6789/metrics | grep livekit_participant_total
livekit_participant_total{node_id="ND_TdXj9kR3xXX3",node_type="SERVER"} -1740
# curl -sq http://<IP_ADDRESS>:6789/metrics | grep livekit_participant_total
livekit_participant_total{node_id="ND_9ChQrBP8u99f",node_type="SERVER"} -2063

Participant count should get addressed with https://github.com/livekit/livekit/pull/2672

We'll update to 1.6.1 (that has #2672) and monitor if this issue is gone

I can confirm that since 1.6.1 this issue has been resolved.
Closing.


Adds rust types to reserved names.

Fixes #1204

I considered sorting the (un)signed types properly, but I thought it wouldn't really matter.
Also, should we care about columns like "i32"?

I'd rather avoid speculatively doing this for all types, as there's no reason you couldn't just have a column called char. The only reason that bool is causing an issue is that it appears in the signature of a trait. I believe we can fix that by just changing impl_query_id! to use ::std::bool instead of bool, and not touch codegen at all

I've opened https://github.com/rust-lang/rust/issues/44865 to see if we can get a better way to do this. In the short term I think we should add this to the crate root:
// Referenced by `impl_query_id!` to ensure we get the right type if users have
// a column called `bool`. This should be removed when the language lets us
// reference `bool` with an absolute path
#[doc(hidden)]
pub type RealBool = bool;

and change impl_query_id! to use $crate::RealBool instead of bool. We should also add tests for this. Simply adding a migration with a column that has the same name as each primitive should suffice. Your list is also missing str


if.bind reorders template content

When using a template (in testpanel.html) that only contains a <content></content> and an empty class called TestPanel (in testpanel.js) the following input:
<test-panel>

A

B

C

D

</test-panel>

ends up in the DOM as follows:
<test-panel>

A

D

B

C

</test-panel>

It seems something is wrong with the text-nodes that appear to be used to figure out where to put back the bound elements. I looked through the aurelia-templating.js source code but everything there is rather complicated so didn't find out where the problem lies exactly.
Workaround now is to either use an if.bind on every immediate child of test-panel (using 'true' for those that won't need an if) or using a class to hide the divs that should not be shown.
Is there any other possible workaround that does not require the user of my template to know these details?

We are aware of this issue. It's a consequence of the way that our shadow dom fallback implementation is implemented today. We are tracking it already and plan to have a fix as part as our update to Shadow DOM v1 slots.
You can follow the issue here: https://github.com/aurelia/templating/issues/250
Thanks for your patience.


how to train for my own dataset

Hi， thanks for your sharing , I want to train my own dataset using this network
I see in readme for training in AODA, but  AODA repo also has nothing about how to train 。。。

Hi, thanks for your interest in this work!
I haven't finished cleaning the training code for AODA, since I am busy in graduating recently. I will let you know as soon as I finish.

Hi @Johnson-yue , the complete training codes of AODA have been uploaded to GitHub. Happy holiday!


polling error when running a demo code

I just simply run a demo code on a US VPS.
const bot = new TelegramBot(token, {polling: true});

bot.on('message', function(msg) {
	if (msg.new_chat_members != undefined) {
		bot.sendMessage(msg.chat.id, msg.new_chat_member.username + " Bienvenido");
	}
});

when I send the message to bot it consoles log polling error not give a reason .

First try with only a console.log.
const bot = new TelegramBot(token, {polling: true});
bot.on('message', function(msg) {
	console.log(msg);
});

If it works try to check syntax.

I'm trying to set up a simple bot for an Instagram engagement group on telegram that moniters comments and engagement is there anyone here that can help me with this even installing one that is already made I've tried to /config a bot and it doesn't send me the list of commands my telegram is Amber Leitl my insta is @amberleitl I would much appreciate some help

Try to add this on 1st line:
process.env["NTBA_FIX_319"] = 1;

So when I add the bot to the group I make it an admin and then type that
into the chat?
On Tue, Jun 5, 2018, 9:43 AM Maxim<EMAIL_ADDRESS>wrote:

Try to add this on 1st line:
process.env["NTBA_FIX_319"] = 1;
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/yagop/node-telegram-bot-api/issues/594#issuecomment-394713806,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AmFPboQHf2DFwYl1hwHgBEvbS7arCbyIks5t5osFgaJpZM4UQbr7
.

I'm so confused because I don't know code you are on telegram right? If I
add you to my group can you install group Butler beta into my group?
On Wed, Jun 6, 2018, 11:22 AM Alex<EMAIL_ADDRESS>wrote:

There is also that function:
bot.on('new_chat_members', (msg) => {
console.log("My msg object",msg)
bot.sendMessage(msg.chat.id, "hi" )
})
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/yagop/node-telegram-bot-api/issues/594#issuecomment-395108611,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AmFPbqsMxxVeBBTkm7qCsrcEMLsgNKtOks5t5_O_gaJpZM4UQbr7
.

@amberleitl ; group buttler is rather easy to install .
Try to find some tutorials on internet ;) you will succeed !

I did and I follow the tutorials but it doesn't work for me 😢
On Wed, Jun 6, 2018, 11:41 AM Alex<EMAIL_ADDRESS>wrote:

@amberleitl https://github.com/amberleitl ; group buttler is rather
easy to install .
Try to find some tutorials on internet ;) you will succeed !
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/yagop/node-telegram-bot-api/issues/594#issuecomment-395115410,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AmFPbq-5GKqQbeHI0i8P1-0kDVYF13E8ks5t5_g5gaJpZM4UQbr7
.

Am I the only one confused in this topic?
Are we talking about working on backend nodejs telegram bot, or just adding bot to the group without coding?

I'm looking for the solution cause my node script is just giving me a polling error every time, and looks like many people are having same problem. But seems like nobody has a solution.

check syntax in your app

If you are making two instance of TelegramBot with same token, it will definitely ends in polling error. So check your process and kill all node processes. After that try to run the bot. It will work.

@kenixer and @amberleitl, if you still facing the issue. I CAN HELP YOU. Telegram :, https://t.me/droid_man

Is there any way we can run it without polling?


Support list scroll offset for true full screen

Preparation

[X] I tested the latest release
[X] I looked at other issues (even the closed ones)
[X] I read the Troubleshooting Guide

FGO server
NA
FGA build number
1669
Describe the bug
Hello,
Thank you for your apk really useful.
I have one issue with it as at the support screen automata isn't able to scroll down the list as the target is off.
FYI beside the video record, my fgo is now in true full screen with no black bar at all, creating this offset.
I tried custom game area mode but from my understanding it's to offset the black bar pixels from the sides.
Video
support scroll issue youtube link
Device model
HTC U11+
Android version
9
Screen size
1440 x 2880 pixels, 18:9 ratio
RAM
No response

The 'true' full screen has been around for around a year now in JP and was already supported.
It looks like you've placed the PLAY button where it swipes to scroll. Moving it to the default bottom left position should work.

Make sense thanks you for your reply. Closing.


wire-desktop: mac 3.15.3621 -> 3.16.3630

Motivation for this change
Here's the bump I said I was expecting in the previous PR : )
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[ ] NixOS
[x] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

@arianvp, sorry for the force push >.<, figured it was a good time to fix the whitespace before backporting. Don't know why ofborg requested a third review though.


status 404

Es werden keine Daten mehr geladen
warn         AxiosError: Request failed with status code 404
debug	Reading data from : https://www.drops.live/xxx
info	        Reading data from : https://www.drops.live/xxx
debug	de
debug	getting system language
debug	using systems configuration location
info	        starting. Version 0.2.3 (non-npm: inbux/ioBroker.drops-weather#90a9b0183291070a7162ff34a9210f64541b7a17) in /opt/iobroker/node_modules/iobroker.drops-weather, node: v18.19.0, js-controller: 5.0.17

There are breaking changes on drops.live because of a redesign of their website.
I will have to see what data is still available and how to extract that data - may take a while....

fixed in V0.3.1


[Languages]Python strip() – How to Trim a String or Line

Topic Suggestion
Python strip() – How to Trim a String or Line
Proposed article introduction
In this article I will be discussing about how one can trim a string or line using the python strip() that is .strip() method. This will enable activities such as stripping leading and trailing spaces (as well as the ones inside the string) to be one performed.
You'll also learn how to remove tabs, newlines, carriage return (CRLF), and other characters. And we'll be using nothing more than native methods and regex—no external libraries required!
Key takeaways
1.How to Remove Leading and Trailing Whitespace from Strings in Python.
2.How to Remove Leading and Trailing Characters from Strings in Python.
3.How to Remove Only Leading Whitespace and Characters from Strings in Python.
4.How to Remove only Trailing Whitespace and Characters from Strings in Python.
Article quality
This is article will in detail describe each and every step on how the trimming of strings will be performed. It will give a clear understanding to the reader which will be of importance.
References
N/A

This topic appears somehow oversaturated in the official blog sites and documentation.


Adds lazy option to git hook.

Fixes #1214

Codecov Report

Merging #1345 into develop will not change coverage.
The diff coverage is 100.00%.

@@            Coverage Diff            @@
##           develop     #1345   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           34        34
  Lines         2247      2249    +2
=========================================
+ Hits          2247      2249    +2

:tada: This is awesome! Thank you!


Add "official" Github Codespaces support

Is there an existing issue for this?

[X] I have searched the existing issues

Is your feature request related to a problem? Please describe
(follow up to https://github.com/drud/ddev/issues/3283, which was repurposed to focus on Gitpod)
We use ddev in Codespaces. It works really well if you set DDEV_PRETEND_GITPOD=true. We'd like ddev to auto-configure itself for Codespaces like it does for Gitpod.
Describe the solution you'd like
We'd like ddev to autodetect Codespaces in the same way that Gitpod is detected.  In Github Codespaces, there are two envvars that you can look for:
CODESPACES=true
CODESPACE_NAME=department-of-veterans-affairs-va-gov-cms-5494gp3v5q5

In the port list, :8443 is properly discovered as the right port to attach a URL when we set DDEV_PRETEND_GITPOD=true:

so if it does exactly the same thing as DDEV_PRETEND_GITPOD=true when CODESPACES=true, we'll be all set.
Describe alternatives you've considered
No response
Additional context
No response

Very cool. My experience is that it's not too hard, but of course it requires effort and somebody paying attention. Gitpod was more work than I expected in the end, with a variety of things.

Happy to test this if there are instructions how

It's not hard. The one thing that is a little confusing is that the ddev-router is not really needed, since codespaces is doing its own reverse proxy. But just go ahead and install ddev as if it were any linux system, consider disabling omit-containers on the router, and expose the web port (and fix it). Take a look at a gitpod project, just start up  https://gitpod.io/#DDEV_REPO=https%3A%2F%2Fgithub.com%2Fdrud%2Fd9simple,DDEV_ARTIFACTS=https%3A%2F%2Fgithub.com%2Fdrud%2Fd9simple-artifacts/https://github.com/drud/ddev-gitpod-launcher/ and then take a poke around. Look at the .ddev/config.yaml and the ~/.ddev/global_config.yaml.

I'm fine with a PR for this, but don't think this will be a priority any time soon. But contributions are welcome. Closing for now.

Hi tried to setup DDEV on GitHub Codespaces and I am able to set it up.
I used the default Linux images and included docker-in-docker feature and installed DDEV using apt-get commands.
Here is the link to my repo.
Once DDEV is setup the most important thing is to identify the correct url for the website. Fortunately we have a simple way to identify it.
run ddev describe it will list down the current application details.
Under All URLs section it will show both http and https urls.
Note down the port number of the http url and browse through the PORTS section in the terminal and click on the url adjacent to http port it will open website in the new tab.

ddev can't know the URL because codespaces is in charge of it. But if you figure out how to get codespaces to tell you the URL for the right port, then we'll be somewhere.
You'll probably want to ddev config global --omit-containers=ddev-router so the router doesn't even run, and then use ddev config --http-port=80, then you'll be binding to port 80 directly with the web container, and the port 80 URL that codespaces is showing you will be the one you want.
I'll reopen if you're going to work on this.

@rfay thanks for the instructions. I tested by making above changes , but ddev web container is not yet bound to port 80,
After making those changes port 80 is not being displayed in the ports tab.

You may want to experiment with this a little locally. It's not a hard idea. You disable ddev-router, then in your project configuration, you use host_webserver_port: 80 (or whatever you want). 80 makes it easy to find. Then you have codespaces proxy that for you. You'll want to look at the available options if you want host_mailhog_port for example. Read through the config.yaml comments.
Oh, and you may need bind_all_interfaces: true based on how codespaces works. That tells ddev to bind not just to the localhost interface.
You may want to not do the mkcert -install because it's irrelevant mostly when codespaces is your reverse proxy.
That's most of it. You're just dumping the ddev-router, and then binding the ports you want directly to the web container.

I would love to help anybody who wants to finish this territory. We learned so much from gitpod that it shouldn't be hard.

So, what I know so far...

A .devcontainer folder containing just a dev container.json will get us ddev installed:

{
  "image": "mcr.microsoft.com/devcontainers/universal:2",
  "features": {
    "ghcr.io/devcontainers/features/docker-in-docker:1": {}
  },
  "postCreateCommand": "curl https://apt.fury.io/drud/gpg.key | sudo apt-key add - && echo 'deb https://apt.fury.io/drud/ * *' | sudo tee -a /etc/apt/sources.list.d/ddev.list && sudo apt update && sudo apt install -y ddev && ddev config global --web-environment='PLATFORMSH_CLI_TOKEN='`echo $PLATFORM_CLI`"
}

I add my Platform CLI token as a secret that is added to the container
Would prefer to create a feature than use the postCreateCommand
Disabling the router helps
I'm currently manually connecting to the right port(s). Use ddev describe

You are welcome to peruse https://github.com/rachellawson/rachelnorfolk

I'd love to have everybody here test

https://github.com/drud/ddev/pull/4476

There are test instructions there...


How to install cmake3

I am a new scholar, as I follow the steps of this tutorial https://tdlib.github.io/td/build.html command line output error No package cmake3 available. How to install cmake3?please teach me,thanks

This depends on you operating system and package manager.

My system is Centos7

Then you can choose CentOS 7 in the build instruction generator to get exact build instructions.

The package cmake3 has been previously available. CentOS 7 isn't supported anymore, so there can be issues with its package manager right now. You can also install CMake manually from https://cmake.org/download/.

There is a CMake environment on my machine,do I need to configure a soft chain？

The basic environment has been improved,but cmake --build . --target install ，console output error during command execution

such as /td/tdutils/td/utils/unique_ptr.h:40:30: error: expected type-specifier

This looks like an error from an old g++ version. Make sure to install all packages mentioned by the build instrcutions generator before running CMake for the first time. Delete build directory and recreate it if you have run CMake without some packages installed.

My version is 4.8.5, it may be too old

when I execute cmake -- build-- target install,scann CMake Error: The source directory "/home/NetPF/td/build/CMakeFiles/progress.marks" does not appear to contain CMakeLists.txt, why is this ?

Where should I execute it?/td/build/ or /td/ ???

I encountered this error while executing in the/td/build/directory

You need to follow the build instructions https://tdlib.github.io/td/build.html and don't change directories between commands.


Backup deployment and pod resources

This PR contains development of :

Backup Deployments and it's dependent resources backup
Backup Pods and it's dependent resources

What type of PR is this?

Uncomment only one  /kind <> line, hit enter to put that in a new line, and remove leading whitespace from that line:
/kind new feature
/kind bug fix
/kind cleanup
/kind revert change
/kind design
/kind documentation
/kind enhancement

What this PR does / why we need it:
Which issue(s) this PR fixes:

Fixes #
Test Report Added?:

Uncomment only one  /kind <> line, hit enter to put that in a new line, and remove leading whitespace from that line:
/kind TESTED
/kind NOT-TESTED

Test Report:

Special notes for your reviewer:

pr #91 is opened already


feat: Messages can now be sent in RPC

Right now if a user tries to pass a message in a Cmd/Rpc then weaver will try to generate a new writer and treat the message like a normal class/struct. This is a problem because it wont use the Serialize/Deserialze methods of Message that the user may have overridden.
This would allow users to add IMessageBase to their types instead of using Extension Methods which would allow the code for a type to be in one place

@James-Frowen this goes back to our discussion about how many more edge cases we want to add to weaver.
this is another one that introduces two ways to do the same thing (there are messages and commands, which are sent via messages. with this PR we also have commands that can send messages that are sent over messages.)
next we also send SyncLists etc.? it will never end :) :)

Mirror already has this function, that is used nowhere in mirror
public static void WriteMessage<T>(this NetworkWriter writer, T msg) where T : IMessageBase
{
    msg.Serialize(writer);
}

So i was surprised that this was already not a feature.
From our previous discussion, there is a limit to the number of features, but if it is simple and useful then I think it is worth adding.
The usefulness of an interface like IMessageBase is being able to implement Serialize/Deserialize functions on a type and then being allowed to send that via mirror, it allows private members to be Serialize and allows all the code for a type to be in one place.

Thinking more about this, If we dont want to support features around IMessageBase we should instead try to remove it completely, as you pointed out most of then features of MessageBase can already be done with extension methods.

Mirror already has this function, that is used nowhere in mirror
public static void WriteMessage<T>(this NetworkWriter writer, T msg) where T : IMessageBase
{
    msg.Serialize(writer);
}

So i was surprised that this was already not a feature.
From our previous discussion, there is a limit to the number of features, but if it is simple and useful then I think it is worth adding.
The usefulness of an interface like IMessageBase is being able to implement Serialize/Deserialize functions on a type and then being allowed to send that via mirror, it allows private members to be Serialize and allows all the code for a type to be in one place.

WriteMessage is not used anywhere? Are you sure?

WriteMessage is not used anywhere? Are you sure?

Most things just call msg.Serialize(writer); instead


Deprecated: You are retrieving the service locator from within the class...

public function getServiceLocator()
{
trigger_error(sprintf(
'You are retrieving the service locator from within the class %s. Please be aware that '
. 'ServiceLocatorAwareInterface is deprecated and will be removed in version 3.0, along '
. 'with the ServiceLocatorAwareInitializer. You will need to update your class to accept '
. 'all dependencies at creation, either via constructor arguments or setters, and use '
. 'a factory to perform the injections.',
get_class($this)
), E_USER_DEPRECATED);
return $this->serviceLocator;
}

This code in production, are you kidding me? I'm a developer and what changes will be made in next Version I will read in documentation from ZF3. Do you know @DEPRECATED??? I see the problem is for weeks in the Code. I think I must change the framework, if you are making such thinks and discussing that you will learn people to program well...
If I hide the errors, I don't see other thinks, so this is bad idea to inform people about future disabled functionality.

First: please watch your tone. You are using a free framework, paying nothing for support, and using language that is frankly rude and aggressive towards the many volunteers that work on the project. I strongly urge you to read the code of conduct before you comment or raise issues again, specifically points 7 and 8.
Next, I'll provide the view point of the project, based on 10+ years of working on the project.
@deprecated annotations are great. But nobody sees them. They're viewed even less than the CHANGELOG.md file, which points these things out in detail in a section titled, appropriately, "Deprecated". If we only use annotations and/or the changelog, we get fallout once we release a new version that removes those things: "But I never saw the deprecation notices!" is the common complaint, and no amount of pointing to them helps the situation. Instead we get people jumping ship because we changed something, even though we've been messaging that change in advance.
What we have discovered over the years is that if you want to signal deprecation, the best way to do it is through the code itself. The E_USER_DEPRECATED error constant was designed and released by the fine folks at php.net precisely for these situations. It allows a project to signal via code features that should no longer be relied upon, in order to allow users to prepare their code in advance of removal.
I'd much rather our users prepare now, particularly when there are documented paths for making your code work in both versions. If we only signal that through annotations and/or the changelog, we'll hit single digit percentages of our users. Doing so through a formal deprecation notice in the code means that users have to either choose to ignore the errors (via disabling deprecation notices in error reporting), or update their code to eliminate the notice from triggering. In either situation, we can have relative certainty that our users know about the upcoming change.
tl;dr: the deprecation notice is a professional and responsible way to signal change to end-users and allow them to make their code forwards compatible with future versions.

Sorry for the tone, but the programming way that is made from last time is not possible to understand for me.
What I mean:
1 If changes are made in the same version I understand that if I update I don't need care about working right? Last update from ca. 2.3 to ca. 2.5 Version. There was restructuring of the Project which was destroying the compability to previous versions. I think this should't happen and that was the reason why I was angry (but I shouldn't) was this.
2.Warning. I was reading other issues in which I couldn't write anything so I opened this. If you are using such a way to show changes, for me this isn't good way because most of the programmers will disable the error, which has influance on future warnings. (so only opinion 7)
This warning was destroying everything page and tests...

There was restructuring of the Project which was destroying the compability to previous versions.

Can you point to specific issues, please? The only complaint I've seen over and over again with the 2.5 releases was the updated minimum PHP version (bumping from 5.3 to 5.5). This is something we've done many times over the years, and is largely not seen as a requirement for a new major version of the project. Users can opt-in to the new minor release, or not. (More on that below.)
Assuming that a new minor version will always "just work" is a fallacy. While we try very hard to stick to semantic versioning, there are specific changes introduced (typically in minor versions) that are impossible to reconcile:

security patches. Some security fixes, out of necessity, need to break backwards compatibility.
deprecations. Issuing deprecations only on major versions means a project must support them for the entire lifecycle of that major version. This is untenable, and nobody follows that. (php.net regularly deprecates functionality during minor versions.) Deprecated functionality is then removed on the next major version.
dependency updates. New features may require new dependencies. Maintenance overhead may require updates in dependency versions. These are typically performed in minor releases, but bugfixes may result in these occurring in maintenance releases. (These are not technically changes in code... and yet, for some reason, any change in dependencies often results in upset users.)

All of this leads to an important point: don't just blindly run composer update.
Commit your composer.lock, and run tests after updating. If there is breakage, and you do not have the time or resources to deal with it right now, revert to your previous composer.lock, re-install, and keep working.
Better yet: you should use the ~ operator to pin to releases in the same minor version. As an example, if you want to stick with the 2.4 series, specify ~2.4.0 (or a higher maintenance patch version). This ensures compatibility as you do updates, as maintenance versions very, very rarely break BC. You then have to deliberately update your project requirements when you are ready to update to newer minor or major versions of a given library. This approach puts you in control of the update cycle.

If you are using such a way to show changes, for me this isn't good way because most of the programmers will disable the error, which has influance on future warnings.

(emphasis mine)
You are assuming that "most programmers" will disable the error, but without any data to back that assertion up. We are assuming that this is just one possibility.
 This is, as you note, not ideal, and, honestly, a sign that you need some senior developers on your team that understand the implications.
Update your code to address the deprecated functionality. This is the ideal solution, as it makes your code forwards compatible with future updates.
Rollback to a previous minor release, and pin to it in your composer.json/composer.lock, and defer the update to a later time when you can update your code properly.

Our hope is that one of the latter two will occur. However, if we deprecate quietly, via annotations and/or changelog, we know from past experience that developers will do nothing, and instead defer the complaints until the next major version is released. We'd prefer to be noisy about the upcoming changes, and guide developers towards updating their code now, so it works both now and in the future.


Update iqontrol to 2.3.0

iQontrol 2.3.0

2.3.0 created 16.7.
365 user
Errors can be ignored for stable release now, issue to fix created.
OK
@sbormann
Please fix issues reported for next release
Thanks


Get custom class without BetterScriptableObject as Unity does

Hello,
Thanks again for your last answer. I have an other issue with editor viewer.
I'd like to get a list of custom class without any inheritance.
For the moment, when I click on the add button I have a new box with written "null" inside
and "Member value is null" in a sub box.
I can do it with a struct but not with a class ..
I think I miss something about your work :)
Thanks in advance

Hi,
I'm not sure what you mean with "list of custom class without any inheritance." - if you have an object of type X, then you can only assign values to it that 'is a' X - not just any arbitrary value.
You can create an instance of an object (class or struct) by "Right clicking" on the 'circle' icon (the same one that you 'left click' to show the selection window)
Try that and let me know how it goes!

Thanks a lot.
Actually I'm working with genericity and inheritance don't worry.
Right click worked well. Thank you :)
I may miss it in documentation.
Actually, with a simple class it works with left click : I can choose right Type (no need to right click )
But, with generic, you have to right click. Is there any reason for that ? In the window opened with left click I can only choose "Default"

Right click is just a shortcut to quickly instantiate your object. Assuming
X is the type of your object, and X is not abstract, when you do Right
Click I do: "myObj = new X()" - Left click gives you more options to choose
from. - I cannot automatically create an instance of your class field cause
if you collapse it and there's a cycle reference you'll end up in an
infinite loop cause I don't have check for cycles. This won't happen if you
manually create an instance of your field via Right Click.
On 31 May 2015 at 11:11, YacineFenina<EMAIL_ADDRESS>wrote:

Thanks a lot.
Actually I'm working with genericity and inheritance don't worry.
Right click worked well. Thank you :)
I may miss it in documentation.
Actually, with a simple class it works with left click : I can choose
right Type (no need to right click )
But, with generic, you have to right click. Is there any reason for that ?
In the window opened with left click I can only choose "Default"
—
Reply to this email directly or view it on GitHub
https://github.com/vexe/VFW/issues/23#issuecomment-107230219.

OK thank you, I understand :) That's a good reason !
You say that left clic give me more option, but I can't create instance, I just see Default field
Not my generic Type

Hmm, what's your field type?
On 31 May 2015 at 13:17, YacineFenina<EMAIL_ADDRESS>wrote:

OK thank you, I understand :) That's a good reason !
You say that left clic give me more option, but I can't create instance, I
just see Default field
Not my generic Type
—
Reply to this email directly or view it on GitHub
https://github.com/vexe/VFW/issues/23#issuecomment-107241268.

Let's say I have a class A which inherit from Object.
This class has 2 generic parameter K and G
K inherit from BetterScriptableObject
G inherit from BetterScriptableObject
I try to generate a List<A<K,G>>
This is my type :)

When you left click, it tries to find types that inherit A, if there's none, you'll only get the 'default (null' option.
So let's say I have class B, which inherits A<MySO1, MySO2>, now when you have fields of A<X, Y> and left click you should see 'B' as an option - otherwise you just use Right click.
Btw that's such a complex generic relation, are you sure it needs to be that complex? :)

Haha,
I want to give it a try. I wondered if that's not too much dirty but it answer well to my waiting
Actually, I forget to explain you this part.
I do have a class B that inherit from A
But it doesn't display B at all

Can you post the sample code you're using?
On 31 May 2015 at 13:35, YacineFenina<EMAIL_ADDRESS>wrote:

Haha,
I want to give it a try. I wondered if that's not too much dirty but it
answer well to my waiting
Actually, I forget to explain you this part.
I do have a class B that inherit from A
But it doesn't display B at all
—
Reply to this email directly or view it on GitHub
https://github.com/vexe/VFW/issues/23#issuecomment-107242129.

Ok.
I think you'll find it ugly but ... well :p
File A :
<using UnityEngine;
using System.Collections.Generic;
using Vexe.Runtime.Types; // for BetterBehaviour, BetterScriptableObject and uAction
public abstract class SimpleType1
{
}
public abstract class GenericType
where K : SimpleType1
{
}
public class MyData<K,G>
where K : SimpleType1
where G : GenericType
{
[Serialize]
public G myObject;
[Serialize]
public List<K> myList;

}
public abstract class A<K,G> : BetterScriptableObject
where K : SimpleType1
where G : GenericType
{
[Serialize]
public List<MyData<K,G>> myList;
}

File B :
<
using UnityEngine;
using System.Collections;
using Vexe.Runtime.Types; // for BetterBehaviour, BetterScriptableObject and uAction
public class InheritedGenericType : GenericType
{
}
public class SimpleType2 : SimpleType1
{
}
public class B : A<SimpleType2,InheritedGenericType>
{
}

File A :
public abstract class SimpleType1
{
}

public abstract class GenericType<K>
	where K : SimpleType1
{
}

public class MyData<K,G>
	where K : SimpleType1
	where G : GenericType<K>
{
	[Serialize]
	public G myObject;

	[Serialize]
	public List<K> myList;

}

public abstract class A<K,G> : BetterScriptableObject
	where K : SimpleType1
		where G : GenericType<K>
{
	[Serialize]
	public List<MyData<K,G>> myList;
}

File B :
public class InheritedGenericType : GenericType<SimpleType2>
{

}

public class SimpleType2 : SimpleType1
{

}

public class B : A<SimpleType2,InheritedGenericType>
{
}

That's complex, I hope that's just for testing :P
Which one of these is the object you're inspecting? I assume A< K, G > ? - if so, then the List list element type MyData < K,G > has no relation with A, it's inside A, not 'is a' A so you won't see 'B' when creating elements for that list when left clicking.
"B" would only show up if you had a field of type A < SimpleType2, InheritedGenericType > i.e.
public class Test
{
    public A < SimpleType2, InheritedGenericType > myField; // you should see B here when you left click
}

And btw you don't need [Serialize] if the field is public :)

Actually I inspect a B asset. Your drawer show subclass ?
That's for testing but ... but  I really hope to use it for some project :P
it works well for the moment ...
For the public field I know, I just like to write it ... Is it heavy ?

Nop not heavy, just letting you know it's optional on public field :)

So if I understand well, if I didn't see anything is because, I don't have any choice else  but my inheriting class ?

Try this:
public class A
{
    public int aValue;
}

public class B : A
{
   public int bValue;
}

public class C : B
{
   public int cValue;
}

public class Test : BetterBehaviour
{
      public A a;  // you should get A, B, C as options
      public C c;  // you will only get C
}

Get the idea? :)

Yep I get the idea.
But I can't explain why my exam

ple doesn't show

What do you expect to see? the type 'B'? - You won't because it inherits A < SimpleType2,InheritedGenericType > and not MyData < SimpleType2,InheritedGenericType >

I thought I could see MyData
In your example, we can see C displayed in the window
Just thought it should show something :)

Right. It should show it. Will fix in next push.

Ok :D
Thanks for your work.
That's really powerfull.


Skip over CDP errors, but record to an error log

What Changed
It seems various client.send() calls fail in circumstances we don't fully understand (e.g https://github.com/chromaui/chromatic/actions/runs/5618208830/attempts/1, and various customer reported issues).
It may be OK to ignore these errors -- in this PR, we skip over but record them to an errors.log. If resources are missing that are needed, we can refer to this log to see at what point the resource archiving failed.
How to test
I'm not sure how to reproduce the problem, but running the canary against a real project to make sure it still works is a good idea.
Change Type

[ ] maintenance
[ ] documentation
[ ] patch
[x] minor
[ ] major

:rocket: PR was released in v0.0.18 :rocket:


deleted_at field is populated with last modified timestamp

Occurring on all common models

Migrated to internal project management tool.


ARROW-16721: [C++] Drop support for bundled Thrift < 0.13

Our bundled Thrift is 0.16.0. Users can use other version but will not
use 0.13 or earlier.
This change also cleans FindThrift.cmake up.
This change also fixes build errors with -DARROW_HIVESERVER2=ON. We
may be able to remove cpp/src/arrow/dbi/hiveserver2/. It seems that
nobody uses it.

There's some compatibility code lying around (look for PARQUET_THRIFT_USE_BOOST and FORCE_BOOST_SMART_PTR), we should probably remove it as well.

We
may be able to remove cpp/src/arrow/dbi/hiveserver2/. It seems that
nobody uses it.

+1

I've started a discussion for removing cpp/src/arrow/dbi/hiveserver2/:
[C++] Can we remove cpp/src/arrow/dbi/hiveserver2? https://lists.apache.org/thread/70qv1q9krx7ztk35tzxq8jp11vq5b5zt

There's some compatibility code lying around (look for PARQUET_THRIFT_USE_BOOST and FORCE_BOOST_SMART_PTR), we should probably remove it as well.

Good catch!
I've removed them because they are for Thrift < 0.11 that isn't supported.

I've started a discussion for removing cpp/src/arrow/dbi/hiveserver2/:
[C++] Can we remove cpp/src/arrow/dbi/hiveserver2? https://lists.apache.org/thread/70qv1q9krx7ztk35tzxq8jp11vq5b5zt

I'll remove cpp/src/arrow/dbi/hiveserver2/ in a follow-up pull request once we get a consensus of it.

The R CI failures look related.

I've fixed R failures but new R failures are happen. The new failures are also happen on master: https://github.com/apache/arrow/runs/6747296145?check_suite_focus=true
It seems that duckdb is updated to 0.3.4 from 0.3.2.
Cc: @nealrichardson

I've fixed R failures but new R failures are happen. The new failures are also happen on master: https://github.com/apache/arrow/runs/6747296145?check_suite_focus=true
It seems that duckdb is updated to 0.3.4 from 0.3.2. Cc: @nealrichardson

Yeah I noticed that too. We'll figure out something today.

https://github.com/apache/arrow/pull/13323 is merged; rebase should make this go away

Thanks!
This is ready to merge.


Camera collision

Now the camera can fall through the grid. It isn't normal because you can see everything from the bottom. And in every game camera have a collision with objects. The camera mustn't fall below the grid.

What you can do is cast any ray from the camera point and count the number of intersections with every mesh in the scene.
If this number divides by two, then the point is outside of the mesh. Otherwise it is inside the mesh.
Stack Overflow link (with raycasting)


examples/coinductive: Add mapTrie and do some actual coinductive proofs

@nikivazou pointed out that while we do have coinductive datatype and
coinductive functions, we don’t give an example of a coinductive
predicate and a coinductive proofs. So here is one.

Looks coinductive to me, but let @lykmast who actually pointed out confirm

Confirmed!


Media queries in Box applied to wrong element

[x] This is not a v0.x issue.
[x] I have searched the issues of this repository and believe that this is not a duplicate.

Expected Behavior 🤔

After re-render of React component, Box should have corresponding styles of the currently rendered elements
Current Behavior 😯

After re-render of React component, Box has media queries that belong to previously rendered Box
Steps to Reproduce 🕹

Link: https://codesandbox.io/s/eager-brahmagupta-4n13x
Context 🔦

Your Environment 🌎

Tech
Version

Material-UI
v4.2.0

React
v.16.8.6

Browser
Chrome 75

@oliviertassinari very interesting case, but.. if your code will be like this 👇🏻

     <Box bgcolor={{ xs: "red" }}>I have pink background</Box>
     <Button onClick={() => setClicked(true)}>Click me</Button>

evertyhing wil be good
but if you'll use React.Fragment  👇🏻
  <>
     <Box bgcolor={{ xs: "red" }}>I have pink background</Box>
     <Button onClick={() => setClicked(true)}>Click me</Button>
 </>

you'll have a case like in the issue description, will be the same problem
I'm not sure that problem with MaterialUI component

@dbarabashdev Adding the div in the example only works because it changes the root.  You can case the same issue without using fragments:
https://codesandbox.io/s/brave-engelbart-f3mui

@dbarabashdev
yes, because by adding
 you changed the order of rendered elements and the generated Mui classes are therefore different
to keep the correct order you have to add
 to the second <Box> as well, like this:
...
if (!clicked) {
    return (

        <Box bgcolor={{ xs: "pink" }}>I have pink background</Box>
        <Button onClick={() => setClicked(true)}>Click me</Button>

    );
  }

  return
<Box>I shouldn't have pink background</Box>

...

and you'll get the same result

@petersendidit @cat-ico you are right guys. I will try to solve this issue. 🚀

oke, guys, look
const MyThing = ({ clicked }) => {
  if (!clicked) {
    return <Box bgcolor="secondary.main">I have pink background</Box>;
  }

  return <Box>I shouldn't have pink background</Box>;
};

also, you can just create a variable like const pink="pink" and init this bgcolor={pink} and unfortunately I can't find where someone uses bgcolor prop with a value like this xs: "pink"

I also got that bug and fix it adding prop key to each Box, like in the example.
https://codesandbox.io/s/twilight-resonance-uw8m4?file=/src/index.js
Does someone have another solution?

Fixed in v5.0.0-alpha.13 https://codesandbox.io/s/serene-dew-syco9


Discussion: should dev package be uninstalled by default?

I find it very surprising that the following code would uninstall the python-devel package:
include python

I believe there should be three possible outcomes of the dev parameter:

true ⇒ ensure present
false ⇒ ensure absent
undef (default) ⇒ noop

agreed.
especially given how perfectly useless pip/virtualenv, etc… are without python-devel, i'd assume 'true' to be default.

I have no problem with true being the default

An additional reason for this is that, at least under Centos 7, python-virtualenv depends on python-devel so if you set virtualenv to true when you call the python class but don't set dev to true

The first puppet run

puppet sees that python-devel is not installed and so doesn't try to uninstall it
puppet installs python-virtualenv which also installs python-devel as it is a dependency

The second puppet run

puppet sees that python-devel is installed and attempts to uninstall it
this fails as it's a dependency of python-virtualenv

Let me know if the bug till exists.

@shivapoudel are you referring to some change which fixes this?

@gene1wood can you look for this :P

@faxm0dem I have reopened the issue, are you interested in PR for this fix.

Sure thing, does everyone agree that $dev = true be the default?

@faxm0dem for me its ok.

I think the cleanest solution would be the default behavior to neither install nor uninstall python-devel but just leave it as it is (unless it's a dependency for something like virtualenv).
However if this is complicated to implement or feels confusing (to default to noop), then ya, $dev = true sounds fine to me (can't think of an instance where someone would have a problem with install the devel package other than a system with very little disk space)

@shivapoudel I'll try removing my workaround code and see if the new puppet-python works in Centos 7. I'll report back here what I find.

I think the cleanest solution would be the default behavior to neither install nor uninstall python-devel but just leave it as it is (unless it's a dependency for something like virtualenv).

I agree with @gene1wood.
I manage some very simple virtualenv which don't need python-dev installation. I prefer to keep it uninstalled.

Okay then, I'll queue this on my TODO


Scala Kinesis Enrich: configure the ability to use IP address as partition key

See #2331

See #1924


Ensure all Main thread methods are tagged with UiThread

Ensure all Main thread methods are tagged with UiThread

This is probably done. If not, we should file tickets per method for tracking. Closing.


pipeline: support passing ach merge conditions through

This allows Shards to further control merged file behavior, such as max dollar amounts per-file.
The change as-is will be a small breaking change. Flattening batches (and these merge conditions) should be configured on a shard level. Currently they're on a global level, but each ODFI is different.
See: https://github.com/moov-io/ach/pull/1009

Codecov Report

Merging #94 (7f434a1) into master (9ccdc11) will decrease coverage by 0.30%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##           master      #94      +/-   ##
==========================================
- Coverage   42.11%   41.80%   -0.31%
==========================================
  Files          87       87
  Lines        3633     3636       +3
==========================================
- Hits         1530     1520      -10
- Misses       1809     1822      +13
  Partials      294      294

Impacted Files
Coverage Δ

internal/pipeline/merging.go
27.32% <0.00%> (-0.46%)
:arrow_down:

internal/service/model_sharding.go
7.01% <ø> (ø)

internal/service/model_upload.go
44.32% <ø> (ø)

internal/schedule/cutoff.go
68.62% <0.00%> (-23.53%)
:arrow_down:

internal/upload/sftp.go
66.03% <0.00%> (+0.94%)
:arrow_up:

Continue to review full report at Codecov.

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


Clarify that FK shadow properties are usually created by convention

> They are most often used for foreign key properties
The Fluent API example on this page isn't much help. Can you provide an example that does something with relationships or foreign keys?

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

ID: 550a3c36-7f1d-efa7-3ed8-769720168da4
Version Independent ID: 627c4301-e00d-826e-d545-3a244305dec9
Content: Shadow Properties - EF Core
Content Source: entity-framework/core/modeling/shadow-properties.md
Product: entity-framework
GitHub Login: @rowanmiller
Microsoft Alias: divega

The fluent API docs for relationships and FKs is here: https://docs.microsoft.com/en-us/ef/core/modeling/relationships

Yeah I know. My request still stands. There's a page about shadow properties, which says what they're most useful for, but then fails a decent example.
    protected override void OnModelCreating(ModelBuilder modelBuilder)
    {
        modelBuilder.Entity<Blog>()
            .Property<DateTime>("LastUpdated");
    }

WTF does that line of code do? It's not obvious to me.
99% of people won't bother to provide feedback when they struggle and will turn to google to find an answer. So when someone does provide feedback it shouldn't be disregarded.

@mattfrear Trying to connect the dots here, maybe the confusion is that they are commonly used for FKs, but rarely explicitly defined for FKs. Hence showing API here to define an FK in shadow state would not be terribly useful since that's not a very common thing to do. Would it be clearer to say, "They are most often used for foreign key properties, where they are added to the model by convention when no foreign key property has been found by convention or configured explicitly."
With regard to not knowing what that line of code does, can you be more specific about what is ambiguous?

Would it be clearer to say, "They are most often used for foreign key properties, where they are added to the model by convention when no foreign key property has been found by convention or configured explicitly."
Yes, I think that would be an improvement.

With regard to not knowing what that line of code does, can you be more specific about what is ambiguous?
I have re-read the page and now it makes sense, so please disregard my earlier comment.

I landed on this page trying to solve a specific and frustrating problem (one to many relationship with a nullable int foreign key which should not be nullable), I was hoping this page would shed some light on my problem but I accept that I was perhaps looking in the wrong place. Sorry for being rude.

@mattfrear Np
Re-opening because I think clarifying that FK shadow properties are usually created by convention would be useful.

How to seed data to shadow properties ?

    public partial class Continent
    {
        public string Code { get; set; }
        public string Name { get; set; }
    public ICollection<Country> Countries { get; set; }
}

    public partial class Country
    {
        public Country() => Provinces = new HashSet();
    public int Code { get; set; }
    public string IsoA2 { get; set; }
    public string IsoA3 { get; set; }
    public string Name { get; set; }
    public string Capital { get; set; }

    public Continent Continent { get; set; }
    public ICollection<Province> Provinces { get; set; }
}

            modelBuilder.Entity(entity =>
            {
                entity.HasKey(e => e.Code)
                    .HasName("PK_Continent");
            entity.ToTable("continent");

            entity.Property(e => e.Code)
                .HasColumnName("code")
                .HasMaxLength(2)
                .IsUnicode(false)
                .IsFixedLength()
                .ValueGeneratedNever();

            entity.Property(e => e.Name)
                .IsRequired()
                .HasColumnName("name")
                .HasMaxLength(24)
                .IsUnicode(false);
        });

        modelBuilder.Entity<Country>(entity =>
        {
            entity.ToTable("country");

            entity.HasKey(e => e.Code)
                .HasName("PK_Country");

            entity.Property(e => e.Code)
                .HasColumnName("code")
                .ValueGeneratedNever();

            entity.Property(e => e.Capital)
                .IsRequired(false)
                .HasColumnName("capital")
                .HasMaxLength(80)
                .IsUnicode(false);

            entity.Property(e => e.IsoA2)
                .IsRequired()
                .HasColumnName("iso_a2")
                .HasMaxLength(2)
                .IsUnicode(false)
                .IsFixedLength();

            entity.Property(e => e.IsoA3)
                .IsRequired()
                .HasColumnName("iso_a3")
                .HasMaxLength(3)
                .IsUnicode(false)
                .IsFixedLength();

            entity.Property(e => e.Name)
                .HasColumnName("name")
                .HasMaxLength(80)
                .IsUnicode(false);

            entity.Property<string>("continent_code")
                .IsRequired()
                .HasMaxLength(2)
                .IsUnicode(false)
                .IsFixedLength();

            entity.HasIndex("continent_code");

            entity.HasOne(d => d.Continent)
                .WithMany(p => p.Countries)
                .HasForeignKey("continent_code")
                .HasConstraintName("FK_Country_Continent")
                .OnDelete(DeleteBehavior.Cascade);
        });

        public static void Initialize(NusaportContext context)
        {
            context.Database.EnsureCreated();
        if (!context.Continents.Any())
        {
            var continents = new Continent[] {
                new Continent { Code = "AF", Name = "Africa" },
                .....
            };

            foreach (Continent c in continents)
            {
                context.Continents.Add(c);
            }

            context.SaveChanges();
        }

        if (!context.Countries.Any())
        {
            var countries = new Country[] {
                new Country { Code = 111, IsoA2 = "ZZ", IsoA3 = "ZZZ", Name = "Example", Capital = "Example" }
            };

            foreach (Country cn in countries)
            {
                context.Countries.Add(cn);
            }

        return;
    }

Please, I need to insert continent_code's value while seeding data to database.

@Yuant-tobing Use an anonymous type as shown in the docs.

@ajcvickers  One thing I've wished about MSFT Docs for years (going back to MSDN) was finer-grained breadcrumbs (# section anchors).  In the Data Seeding docs, there is a hidden outline of user stories and one has to read through the web to untangle it all.
What would be hyper-text-awesome is if I could see all "owned types" related documentation across multiple pages all at once.  Miguel De Icaza had a glimmer of such hopes with how Xamarin managed documentation (comments separate from code), but it feels like it never became a butterfly from its chrysalis.
It would probably also be nice if each example was a self-contained git repository, so that people could clone it in Github for Windows and just automatically play with it, fork it, submit bugs based on it.
Perhaps not very actionable given all the things you must do, but if I never ask, you will never know.

@mattfrear I think the key concept is that FK shadow properties are primarily an artifact of domain-driven design.  DDD enthusiasts do not want to expose keys in their domain model, because they have zero practical consequence to testing or to the business domain.  All the keys do is connect a graph of objects together.
@anth-git

I think that the example from https://docs.microsoft.com/en-us/ef/core/modeling/relationships#foreign-key should be used for the FluentApi paragraph.
It seems to be quite valid usecase to have FK that doesn't follow convention but we want to configure it as a shadow property. So it would be much useful example than example of just creating some arbitrary "LastUpdated" property, that doesn't have any meaning, especially that you stated by yourself that shadow properties are are most often used for foreign key.
        // Add the shadow property to the model
        modelBuilder.Entity<Post>()
            .Property<int>("BlogForeignKey");

        // Use the shadow property as a foreign key
        modelBuilder.Entity<Post>()
            .HasOne(p => p.Blog)
            .WithMany(b => b.Posts)
            .HasForeignKey("BlogForeignKey");

I suspect this example is actually incorrect or only correct under certain conditions.  If you are doing database-first with EFCore, you need to specify the type parameter, or the wrong overload of HasForeignKey will get selected by the .NET runtime.  I say wrong loosely.  The same problem happens in VisualStudio with IntelliSense because IntelliSense prefers auto-completing to the params string[] overload, rather than the generic type overload.

I suspect this example is actually incorrect or only correct under certain conditions. If you are doing database-first with EFCore, you need to specify the type parameter, or the wrong overload of HasForeignKey will get selected by the .NET runtime. I say wrong loosely. The same problem happens in VisualStudio with IntelliSense because IntelliSense prefers auto-completing to the params string[] overload, rather than the generic type overload.

@jzabroski That issue is only present when calling .HasOne().WithOne() because EF needs to know on which type to create the FK properties. For .HasOne().WithMany() the dependent side is unambiguous, so .HasForeignKey() doesn't have a type parameter.

Can someone please explain this line of documentation?
"We recommend explicitly adding the shadow property to the model before using it as a foreign key (as shown below)."
It's on this page: https://docs.microsoft.com/en-us/ef/core/modeling/relationships?tabs=fluent-api%2Cfluent-api-simple-key%2Csimple-key#shadow-foreign-key
It's extremely frustrating, because I am trying to reduce volume of code.  There's no explanation of what would happen if you call the .HasForeignKey(""BlogForeignKey") method without having explicitly defined the Shadow Property beforehand.  How do I know whether or not I can omit the explicit property definition?


added zap for hex-fiend

Thank you for the contribution. It was merged directly as 56f73e084e3beed454f0ecfdaf314f4ba71dd271 to keep commit history cleaner. Your contribution is still credited to you.


Unused second iteration

In this method, you are collecting all the advertising packets that should be removed, then you use the removeAll() method to remove them all.
Why not change this :  advertisingPackets.removeAll(removableAdvertisingPackets);
to this : advertisingPackets = usedBeacons;
Instead of collecting the advertising packets that should be removed, collect the advertising packets that should NOT be removed.
In this way, you will avoid using another loop with the removeAll() method.
 public void trimAdvertisingPackets() {
        synchronized (advertisingPackets) {
            if (!hasAnyAdvertisingPacket()) {
                return;
            }
            List<P> removableAdvertisingPackets = new ArrayList<>();
            AdvertisingPacket latestAdvertisingPacket = getLatestAdvertisingPacket();
            long minimumPacketTimestamp = System.currentTimeMillis() - MAXIMUM_PACKET_AGE;
            for (P advertisingPacket : advertisingPackets) {
                if (advertisingPacket == latestAdvertisingPacket) {
                    // don't remove the latest packet
                    continue;
                }
                if (advertisingPacket.getTimestamp() < minimumPacketTimestamp) {
                    // mark old packets as removable
                    removableAdvertisingPackets.add(advertisingPacket);
                }
            }

            advertisingPackets.removeAll(removableAdvertisingPackets);
        }
    }

We can't set our advertisingPackets as they are defined final to be synchronised.
Therefore we can either find the packets we want, clear our advertisingPackets and add all valid packets or we can find the ones we don't want and remove them.
As trimAdvertisingPackets is called for every addAdvertisingPacket it is more favorable to use our way as the resulting search list will be significantly smaller for growing 'MAXIMUM_PACKET_AGE' and many high frequently reporting beacons.


Add metal performance HUD toggle extension

Description
Adds an extension to toggle the built-in Metal performance HUD in macOS Ventura and up.
Checklist

[x] I read the extension guidelines
[x] I read the documentation about publishing
[x] I ran npm run build and tested this distribution build in Raycast
[x] I checked that files in the assets folder are used by the extension itself
[x] I checked that assets used by the README are placed outside of the metadata folder

The only way to see it in action would be to launch an app that uses Metal API to render things onto the screen (most likely a game). An overlay shows up on the top right of the screen as follows:

Updating the readme to make this obvious is a sensible suggestion, will make the changes -- appreciate the review, cheers!


public api for custom multiline note

It would be very useful to choose how the wrapping is done.
For example I found very useful to wrap based on the "\n" I insert in my label.
Using the wrap function:
var wrap = function wrap(text, width) {
        var lineHeight = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1.2;

            text.each(function () {
            var text = d3.select(this),
                words = text.text().split(/\n/).reverse().filter(function (w) {return w !== "";});

            var word,
                tspan = text.text(null);

            while (word = words.pop()) {
                tspan = text.append("tspan")
                    .style("text-anchor", "start")
                    .attr("x", 0)
                    .attr("dy", lineHeight + "em")
                    .text(word);
            }
        });

Perhaps could you expose a way to substitute the "warp" function or a "warp mode" for the existing one and some others like this, and some others...
Thank you for that cool lib :)

Thanks for this idea! I'm on vacay without a laptop for a few weeks will
take a look once I'm home .
On Sep 22, 2017 3:59 PM, "michel"<EMAIL_ADDRESS>wrote:
It would be very useful to choose how the wrapping is done.
For example I found very useful to wrap based on the "\n" I insert in my
label.
Using the wrap function:
var wrap = function wrap(text, width) {
var lineHeight = arguments.length > 2 && arguments[2] !==
undefined ? arguments[2] : 1.2;
        text.each(function () {
        var text = d3.select(this),
            words =

text.text().split(/\n/).reverse().filter(function (w) {return w !==
"";});
        var word,
            tspan = text.text(null);

        while (word = words.pop()) {
            tspan = text.append("tspan")
                .style("text-anchor", "start")
                .attr("x", 0)
                .attr("dy", lineHeight + "em")
                .text(word);
        }
    });

Perhaps could you expose a way to substitute le "warp" function or a "warp
mode" for the existing one and some others like this, and some others...
Thank you for that cool lib :)
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/susielu/d3-annotation/issues/41, or mute the thread
https://github.com/notifications/unsubscribe-auth/ABYfbQxJAGtyCKsLtSQHxLlc4HrY_vGQks5sk70mgaJpZM4PgvxH
.

This is available in v2.1.0 you can pass a wrapSplitter property to the note configuration for your own split settings. For example:
 { note: {
          label: " A different\n annotation type with long wrap",
          title: "Another title with a long wrap for testing",
          wrapSplitter: /\n/
        }
 }

In this case it would only wrap on the new line in the label. Thanks for this feature suggestion. Let me know if you have any issues with using it.

great!
thank you very much 😊
Le lun. 9 oct. 2017 à 22:21, Susie<EMAIL_ADDRESS>a écrit :

This is available in v2.1.0 you can pass a wrapSplitter property to the
note configuration for your own split settings. For example:
{ note: {
label: " A different\n annotation type with long wrap",
title: "Another title with a long wrap for testing",
wrapSplitter: /\n/
}
}
In this case it would only wrap on the new line in the label. Thanks for
this feature suggestion. Let me know if you have any issues with using it.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/susielu/d3-annotation/issues/41#issuecomment-335274728,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFj5A9Oyty89aCFZvamThul-u4t0Kr4Xks5sqoBOgaJpZM4PgvxH
.


modal static

How to make modal static mode

Hi @junaidy-johm , looks like a bug!  We are unable to pass the correct styles and disable backdrop without some code changes.  We'll correct this week, thanks for the heads up.

is it fixed?

Hi, not yet, sorry I saw a few other issues with Modal and a delay fixing them.  I'll try and address this week.

Hi @junaidy-johm @abbychau ,
We've published<EMAIL_ADDRESS>that supports this if you could please install (npm install<EMAIL_ADDRESS>and confirm it works for you.
Note we had to bump to v4 since another modal fix requires a newer version of svelte to support.
Please reply here and/or close and we can publish an official v4 release.

Hi this is released in<EMAIL_ADDRESS>Please see docs here under "Static": https://sveltestrap.js.org/?path=/story/components--modals
Please reopen if you see any issues.


A confusing problem about  the function named _downsample in wavelet.py

Goal:   I trying to reproducing your implementation about SfMLearner
here are my modifications as below:
adaptive= robust_loss_pytorch.adaptive.AdaptiveImageLossFunction((640,192,3), float_dtype=np.float32, device='cpu')
l1_loss =torch.mean(adaptive.lossfun(torch.abs(target - pred))[:, None])
Then I got a confusing error,
robust_loss_pytorch/wavelet.py", line 209, in _downsample
    stride=stride)[:, 0, :, :]
RuntimeError: Calculated padded input size per channel: (6 x 48). Kernel size: (7 x 1). Kernel size can't be greater than actual input size

Here is that line where we got the above error
 y = torch.conv2d(x_padded[:, np.newaxis, :, :],f_ex[np.newaxis, np.newaxis].type(x.dtype),
      stride=stride)[:, 0, :, :]

Question: where could I change the kernel_size? or how to fix this error? Is there any error with my modifications? Thank you in advance.

It's hard to say without looking at all of your code, but the error
produced by the wavelet code might be due to the number of "levels" in the
wavelet decomposition being too high for the image resolution. This should
be something checked for in get_max_num_levels() though, so I'm not sure
why it would be happening. Try decreasing wavelet_num_levels to 4 or 3
and see if that gets rid of the error (if you have to decrease it to 1 or 0
to get things to compile then something is very wrong, so don't do that).
If that doesn't work, try setting representation to 'DCT' as that should
produce comparable results and avoids the wavelet code that appears to be
throwing this error.
That being said, the default number of levels in the wavelet decomposition
should be small enough that you shouldn't be getting this error (it's
designed for 64x64 images which is smaller than yours). Is it possible that
you're calling the loss with reshaped or transposed dimensions? Could it be
that the batch size is being interpreted as a spatial dimension?
On Mon, Dec 30, 2019 at 11:06 PM Tengfei han<EMAIL_ADDRESS>wrote:

Goal: I trying to reproducing your implementation about SfMLearner
here are my modifications as below:
adaptive=
robust_loss_pytorch.adaptive.AdaptiveImageLossFunction((640,192,3),
float_dtype=np.float32, device='cpu')
l1_loss =torch.mean(adaptive.lossfun(torch.abs(target - pred))[:, None])
Then I got a confusing error,
robust_loss_pytorch/wavelet.py", line 209, in _downsample
stride=stride)[:, 0, :, :]
RuntimeError: Calculated padded input size per channel: (6 x 48). Kernel size: (7 x 1). Kernel size can't be greater than actual input size
Here is that line where we got the above error
y = torch.conv2d(x_padded[:, np.newaxis, :, :],f_ex[np.newaxis, np.newaxis].type(x.dtype),
stride=stride)[:, 0, :, :]
Question: where could I change the kernel_size? or how to fix this error?
Is there any error with my modifications? Thank you in advance.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/jonbarron/robust_loss_pytorch/issues/12?email_source=notifications&email_token=AAGZFNUAVY676C7XZKRIFJDQ3LVPPA5CNFSM4KBTGKM2YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4IDOOTSQ,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAGZFNVVBVNF7REBT5Y7ZZTQ3LVPPANCNFSM4KBTGKMQ
.

Yes!!! you're right ! ! !, before got the above error, I annotated this line " assert max_num_levels >= num_levels" in a func named contruct.
The reason why I ignored the assertion line:
 get_max_num_levels()  returns 8 while the default setting is 5, it's surprising that I encountered another error like this
assert max_num_levels >= num_levels
AssertionError

so I annotated this line and then got the previous error.
I followed your instructions that decreasing num_levels to 3, but the error still exists. Then I changed the representation into 'DCT', fortunately, my program works well. Thank you for your kindness and rapid response. I am so sorry to trouble you on such a beautiful day. I hope you will have a nice holiday and enjoy your time.

I thought about this some more and I think I understand why you were having this problem. SFMLearner works by constructing multiple losses on the image at different scales. I think you were having this problem because the default value of num_levels was too large for some of the smaller scales of this multi-scale loss.
In my experiments, I found that the performance of SFMLearner could be improved substantially by deleting its multi-scale losses, and instead just using an adaptive+wavelet loss on the full resolution image. I would strongly encourage you to do the same. You can control the influence of the loss at each scale by modifying the wavelet_scale_base parameter. This requires using the wavelet version of the loss, as this control over each scale is not possible using the DCT version. This is discussed in more detail in Appendix H of the paper.
Please let me know if you're able to reproduce the results in the paper and share your code, as I think the community would greatly appreciate a Pytorch implementation of that experiment (I've been meaning to release my TF code but I haven't been able to find the time).


Add workarounds for concretizer (Take 2)

Testing if ^libxml2%gcc is required

launch jenkins icon balfrin

tsa
:green_circle: unit testTest:green_circle:summary

balfrin
:green_circle: unit testTest:green_circle:summary :green_circle: integration testTest:green_circle:icon-spack_info :green_circle:icon-spack_spec :green_circle:icon_extra-config-args=--disable-new_feature,--enable-old_config_arg-spack_spec :green_circle:dace_icon.-O1-spack_spec :green_circle:icon_serialization=create-spack_spec :red_circle: system testTest:green_circle:Icon-install_2024_1_gcc :red_circle:Icon-install_2024_1_nvhpc :red_circle:Icon-install_conditional_dependencies
WARNING: Serial tests did not run for system tests


Error setting up entry   for panasonic_smart_app

Hi Osk2:
Tks for your hard work on this project.
I got problem on startup after install your code the HACS.
Rasp-pi4
HA OS 8.1
HA core-2021.7.2
Here is log
自訂整合產生錯誤。
Logger: homeassistant.config_entries
Source: custom_components/panasonic_smart_app/smartApp/init.py:262
Integration: Panasonic Smart App (documentation, issues)
First occurred: 16:17:48 (1 occurrences)
Last logged: 16:17:48
Error setting up entry "MY ID " for panasonic_smart_app
Traceback (most recent call last):
File "/config/custom_components/panasonic_smart_app/smartApp/init.py", line 244, in request
response = await self._session.request(
File "/usr/local/lib/python3.9/site-packages/aiohttp/client.py", line 544, in _request
await resp.start(conn)
File "/usr/local/lib/python3.9/site-packages/aiohttp/client_reqrep.py", line 905, in start
self._continue = None
File "/usr/local/lib/python3.9/site-packages/aiohttp/helpers.py", line 656, in exit
raise asyncio.TimeoutError from None
asyncio.exceptions.TimeoutError
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 293, in async_setup
result = await component.async_setup_entry(hass, self)  # type: ignore
File "/config/custom_components/panasonic_smart_app/init.py", line 42, in async_setup_entry
await client.login()
File "/config/custom_components/panasonic_smart_app/smartApp/init.py", line 77, in login
response = await self.request(
File "/config/custom_components/panasonic_smart_app/smartApp/init.py", line 58, in wrapper_call
results = await asyncio.gather(
File "/config/custom_components/panasonic_smart_app/smartApp/init.py", line 262, in request
raise PanasonicDeviceOffline(f"無法連線至裝置，將於下輪更新時重試")
custom_components.panasonic_smart_app.smartApp.exceptions.PanasonicDeviceOffline: 無法連線至裝置，將於下輪更新時重試

Try to configure component again. It's most likely API timeout.
If problem persists after reconfiguring, restart all devices should be able to fix it.

@osk2
I had reboot host many time
still same problem
2022-06-24 08:40:16 INFO (MainThread) [custom_components.panasonic_smart_app]
Loading your Panasonic devices. This may takes few minutes to complete.
2022-06-24 08:40:16 INFO (MainThread) [custom_components.panasonic_smart_app.smartApp] Attemping to login...
2022-06-24 08:40:17 DEBUG (MainThread) [custom_components.panasonic_smart_app.smartApp] Making request to https://ems2.panasonic.com.tw/api/userlogin1 with headers {'user-agent': 'okhttp/4.9.1'} and data {'MemId'<EMAIL_ADDRESS>'PW': 'axcelis1', 'AppToken': 'D8CBFF4C-2824-4342-B22D-189166FEF503'}
2022-06-24 08:40:22 INFO (MainThread) [custom_components.panasonic_smart_app] Updating device info...
2022-06-24 08:40:22 DEBUG (MainThread) [custom_components.panasonic_smart_app.smartApp] Making request to https://ems2.panasonic.com.tw/api/UserGetRegisteredGwList2 with headers {'cptoken': '2204E692-E7A7-4C16-8713-78C56B610089', 'user-agent': 'okhttp/4.9.1'} and data None
2022-06-24 08:40:24 DEBUG (MainThread) [custom_components.panasonic_smart_app.smartApp] Making request to https://ems2.panasonic.com.tw/api/UserGetInfo with headers {'cptoken': '2204E692-E7A7-4C16-8713-78C56B610089', 'user-agent': 'okhttp/4.9.1'} and data {'name': 'Power', 'from': '2022/06/01', 'unit': 'day', 'max_num': 31}
2022-06-24 08:40:26 DEBUG (MainThread) [custom_components.panasonic_smart_app.smartApp] Making request to https://ems2.panasonic.com.tw/api/DeviceGetInfo with headers {'cptoken': '2204E692-E7A7-4C16-8713-78C56B610089', 'auth': 'B8B7F17593C4FBB069ABFB8FD2DF67DCB6B11766FECF', 'gwid': 'B8B7F17593C4', 'user-agent': 'okhttp/4.9.1'} and data [{'CommandTypes': [{'CommandType': '0x13'}, {'CommandType': '0x14'}, {'CommandType': '0x15'}, {'CommandType': '0x50'}, {'CommandType': '0x54'}, {'CommandType': '0x55'}], 'DeviceID': 1}]
2022-06-24 08:40:28 DEBUG (MainThread) [custom_components.panasonic_smart_app.smartApp] Making request to https://ems2.panasonic.com.tw/api/DeviceGetInfo with headers {'cptoken': '2204E692-E7A7-4C16-8713-78C56B610089', 'auth': 'B8B7F17593C4FBB069ABFB8FD2DF67DCB6B11766FECF', 'gwid': 'B8B7F17593C4', 'user-agent': 'okhttp/4.9.1'} and data [{'CommandTypes': [{'CommandType': '0x61'}, {'CommandType': '0x64'}], 'DeviceID': 1}]
2022-06-24 08:40:30 DEBUG (MainThread) [custom_components.panasonic_smart_app] Finished fetching Panasonic Smart Application data in 8.029 seconds
2022-06-24 08:40:30 ERROR (MainThread) [homeassistant.setup] Unable to prepare setup for platform panasonic_smart_app.sensor: Platform not found (cannot import name 'DEVICE_CLASS_PM25' from 'homeassistant.const' (/usr/src/homeassistant/homeassistant/const.py)).

What's your HA version?

What's your HA version?

Rasp-pi4
HA OS 8.1
HA core-2021.7.2

You need to upgrade core to version newer than 2021.9.0.
I recommend upgrading to latest version or some entity will not work.

Close as not receiving updates.


[INLONG-7128][Sort] Upgrade oracle cdc to version 2.3

Upgrade oracle cdc to version 2.3

Fixes #7128

Motivation
Oracle CDC upgrade to 2.3 to improve reading efficiency.

Incremental snapshot is a new mechanism to read snapshot of a table. Compared to the old snapshot mechanism, the incremental snapshot has many advantages, including: (1) source can be parallel during snapshot reading, (2) source can perform checkpoints in the chunk granularity during snapshot reading, (3) source doesn't need to acquire ROW SHARE MODE lock before snapshot reading.

Modifications

Upgrade the cdc version.
Fit the metric in the incremental snapshot.
Fix the problem that only one record can be read in the incremental snapshot.

commit info is unrelated. I suggest commit PR operation process:


multiple definition with BlobServerConfig when compiling static lib

When compiling this package as a static lib, I get multiple definition error of methods that are inside /shared/BlobServerConfig.h
I propose to add keyword inline to all methods or to have a cpp file of BlobServerConfig.h
I am compiling this package as static lib since it has more functionalities that I can use compared with the base package.
thank you

Dear @arrfou99,
Thank you for your suggestion. We understand the issue you’re facing when compiling the package as a static library. Your proposal is appreciated. We’ll review this and make the necessary changes.

Dear @arrfou99,
We want to inform you that we have incorporated your suggestions into the current release (1.1.0). The shared/cpp folder is now compiled into a static library called shared_cpp_utils. We hope this resolves the issues you encountered. Your feedback is appreciated.

Great, thank you. we can close the issue.


Use fixed Root.arcs manifest name.

With this change, the root manifest will always be /assets/arcs/Root.arcs. This simplifies manifest setup, as the source code no longer needs to know what's the location and name of the root manifest.
This can be seen as a limitation if we wanted to generate multiple separate manifest sets - but this is not a requirement we have (and not something we even envision), so let's not complicate our lives if we don't need to.
This change also makes the Root.arcs manifest loaded from the APK even if the load_workstation_assets switch is on - this is because we don't foresee the root manifest changing dynamically during feature development and mapping it to the workstation location is non trivial, as it's location depends on the location of the arcs_manifest_bundle in the source tree.

This approach makes it quite hard to support dynamic manifest in the future as the path is hard-coded and we only support load manifest once when the runtime starts.
With addManifest, it's doable as we can have some other service/activity downloads the manifest, add the downloaded ones along with this hard-coded root manifest, and pass it to ArcsService with addManifest.
My suggestion is that we either keep the addManifest and delegate the manifest loading work to other service/activity, or we remove it completely and only add it back when runtime supports dynamic loading manifests, i.e. not only loading once. Either way seems better than having an unsupported API.

Thank you @yuangu-google. I've decided to remove the API completely for now. Let's re-add it with the support for both adding and removing manifests later on when we tackle dynamically changing set of manifests. For now let's focus on the manifests that are bundled at compile time into the APK.


Not working

I have Golang and my paths setup correctly I believe and when I run “Go install github.com/realytcracker/go-jamcracker” it doesn’t work I get “Can’t load package : package  github.com/realytcracker/go-jamcracker cannot find package. What am I doing wrong I want this to work please.

use go get instead of go install if you didn't already clone the repo.

I also tried go get a little while ago and it gave me the error “Invalid import path  : malformed import path. Do you know how I can fix this? im still new to Go.

im also getting this issue when attempting to crack.

looks like they killed the endpoint from people using it.

Is there a possibility of changing the endpoint at all, to continue to use it?

i actually just checked and it is the same.  i don't know if windows has some issue with concurrency (https://stackoverflow.com/questions/28046100/golang-http-concurrent-requests-post-eof or https://stackoverflow.com/questions/17714494/golang-http-request-results-in-eof-errors-when-making-multiple-requests-successi/23963271#23963271) - try running on one thread with the -t 1 option.

sorry for all the questions but how would I run on one threat i tried just putting -t 1

try running the application on a free tier amazon linux/ubuntu ec2 instance or just try it in a local virtual machine.
i don't have a windows box with golang installed to test it on (i only play elite computer games with mine) and i am pretty sure i know what to do to fix it - i might update it when i am bored, or someone can submit a pull request with the patch.  i'll update the readme to reflect the issue.
remember, this application is for education purposes only and should not be used to recover passwords of accounts that you do not own.


Master branch is missing metadata

When deploying a three node cluster, we are seeing that some of the containers only see /self/service/containers for two of the containers while others see three.
Reproduce:
run rancher/build-master:v0.19.2
run gluster stack from catalog.
container $${stack_name}_volume-create_2 ends up hanging waiting for all containers to come up. looking at the returned metadata it only sees 2 containers when all three containers in the service are up.

I see the same problem in my case:
I had a service with scale 1 to begin with with exposed port.
Scale up service by 1.
New host ip address was programmed in Route53.
Scaled down service.
This change was never propagated to  Route53.
The reason for this is the container_list in the metadata for this service still has 2 entries (including the container that was delete as part of scale down)

Ok, went above and beyond debugging it. Definitely discovered some bugs in the way we trigger metadata/dns for service's instances, applied the fixes (PR is coming soon). But looks like there is some bug in config update framework causing items to not increment/apply under certain conditions in the following method:
 AbstractApplyItems.assignItems

When config update is triggered for more than 1 agent by the same process, ConfigUpdateRequest mixes up agent contexts, and it results in some agents not being updated.
In my case, I have 3 hosts, and service deployed cross these hosts. Any service instance update triggers "hosts" config item update for all 3 host's agents (verified by debugging, AbstractApplyItems.assignItems is called for all agents). But only 2 of them get updated in the DB:
mysql> select id, name, requested_version, applied_version, agent_id from config_item_status where name='hosts';
+----+-------+-------------------+-----------------+----------+
| id | name  | requested_version | applied_version | agent_id |
+----+-------+-------------------+-----------------+----------+
| 13 | hosts |               222 |             222 |        4 |
| 35 | hosts |                27 |              27 |        5 |
| 39 | hosts |               195 |             195 |        6 |
+----+-------+-------------------+-----------------+----------+

agent id=5 doesn't get updates. With attached debugger, I found out that ConfigUpdateRequest for agent id=5 gets set with the request having context of agent id=6. And as agent id=6 is already updated at this point, update for agent id=5 gets skipped.
@ibuildthecloud need your help to figure out what would be the right way to fix it. This looks like a regression bug introduced some time in Nov.

I most likely caused this... one sec...

@alena1108 Can you try reverting https://github.com/rancher/cattle/pull/1016 and see if things are fix in the item framework.  If so, I'll find a better approach that break less things.

@ibuildthecloud after reverting the commit, all started working :)

@ibuildthecloud @alena1108 , I am testing with latest build from master , I am still seeing the issue where the  container_list in the metadata for the service has the container that was removed as part of scaling down service.


[US-4-4] Highlight elements on hover in locators' list

When the user hover (not only click as now) element in the list - it must be highlighted on the page.

is a duplicate


Update google-cloud-trace to 2.45.0

About this PR
📦 Updates com.google.cloud:google-cloud-trace from 2.3.7 to 2.45.0
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "com.google.cloud", artifactId = "google-cloud-trace" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "com.google.cloud", artifactId = "google-cloud-trace" }
}]

labels: library-update, early-semver-minor, semver-spec-minor, commit-count:1

Superseded by #372.


Diode insertion appears to insert diodes in illegal positions

OpenROAD e9bd11509b1d907cbc3205e17f699ef05ae2181c via OpenLane
[etc]
Notice 0: Split top of 1 T shapes.
Notice 0: Split top of 2 T shapes.
Notice 0: Split top of 1 T shapes.
Notice 0: Split top of 1 T shapes.
Notice 0: Split top of 1 T shapes.
Notice 0: Split top of 1 T shapes.
Notice 0: Split top of 1 T shapes.
[INFO GRT-0012] Antenna violations: 13
[INFO GRT-0015] 13 diodes inserted.
[WARNING DPL-0005] Overlap check failed (4).
[ERROR DPL-0033] detailed placement checks failed.
Error: groute.tcl, 74 DPL-0033

Reproducible:
groute.tar.gz

@eder-matheus if this is a detailed placement problem please let me know and I will pass it along to cherry.

I have a fix for this that I'm testing now.  The problem is antenna repair only looks at global padding not padding by master type.

Fixed with https://github.com/The-OpenROAD-Project/OpenROAD/pull/1421


Send comment notifications

Is your feature request related to a problem?
Social interaction of blog posts could be improved.
Describe the solution you'd like
I would be good for interaction if the blog post "owner" would get an email if there are comments on his / her post.
It would also be nice if anybody commenting would (with opt-out) get an email when:
A. Someone replies to their comment
B. There are other comments
Somewhat related to #155

I just looked into the code a bit...  There is notification logic in the module, but it's wrapped in code that will seemingly never execute.  When a comment is added, it's saved to the database, and that's followed by a check to see if the comment is approved or not.  If not, then no notifications are sent.
As a follow-up test, I just got latest and setup a quick dev environment.  It seems that my original suspiscion was correct.  It'll never generate a notification.  I think the IF is just reversed.

I switched the IF statements, and the code runs without any issues, but the notification never is actually triggered even though the comments are set to auto-approve and I see they're approved in the database.

Oh, and one more thing... I had SMTP enabled, and at no point did I see any emails get generated to any party.


Duplicated gutter

If you toggle counts, swap to another file (split vertically or horizontally), then swap back to the file with counts enabled, the gutter showing the size/cycles will be duplicated:

This can be highly annoying due to issue #1 on all but the smallest files because the two gutters will combine to further slow down vscode.

This is no longer occurring in the new implementation.


How to get the imputed value for each cell of each gene- scvi version 0.9.1

I hope to get the imputed matrix of gene x cells. Is there a function to get such values?
I didn't find similar API like posterior.imputation(), which is probably related with older version of scVI.

You may use this function.
Also, in the future, it will be helpful if you post these sorts of issues on our discourse forum.