Re-land "Add option to delay rendering the first frame (#45135)"

Description
See #45135 for detailed description. In addition to that PR, this PR contains the following fixes:

allowFirstFrame does not schedule a warmup frame in tests.
The localizations widget stops deferring frames only after it has processed the data it was waiting for.

Related Issues
None
Tests
I added the following tests:
Tests from #45135 plus new 2 tests for the new fixes.
Checklist
Before you create this PR confirm that it meets all requirements listed below by checking the relevant checkboxes ([x]). This will ensure a smooth and quick review process.

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

Breaking Change
Does your PR require Flutter developers to manually update their apps to accommodate your change?

[x] Yes, this is a breaking change (Please read Handling breaking changes): https://groups.google.com/forum/#!topic/flutter-announce/kBf4cXjD2y4
[ ] No, this is not a breaking change.

All internal tests are passing.

Cirrus is green despite the check result.


[CT-1526] View model documentation in new tab from DAG viewer

Describe the feature
At the moment, it is possible to view the model documentation page from the DAG viewer but not in a new tab. This presents a UX issue as users might be exploring the DAG viewer and want to open new tabs for multiple models. This is not possible as the default right click behaviour is no longer available.

Describe alternatives you've considered
The browser tab can be duplicated and then one of the DAG viewer tabs can be used to click on the model to view its detailed documentation. This is a poor UX as the user loses track of which section of the DAG they were viewing.
Additional context
This is a UI feature.
Who will this benefit?
All users of dbt docs who want to open model documentation in new tabs from the DAG viewer.
Are you interested in contributing this feature?
Yes

Thanks @BayanHammami! From community slack thread:

it seems like a 10 line edit in the graphvis.js file if anyone wants to give it a go.

This could be a good contribution opportunity for anyone interested!

@BayanHammami @jtcohen6 Cool idea - just took a stab at this! (thanks much for the guidance on where to look)


fix: Move to pytest, run mock setup before each test

Move to pytest because it's a far bigger project than nose, and has more descriptive visuals


Collect all videos for /watch

My plan for /watch is to include all the videos from:

[ ] http://www.crimethinc.com/movies (english and spanish)
[ ] https://vimeo.com/crimethinc
[ ] http://www.crimethinc.com/tce

If there are others, list them here in the comments, and I'll include them.

http://www.crimethinc.com/blog/2011/11/06/oakland-general-strike-footage/
...and what do we do about all the versions of the TCE video in other languages? Just link to tochangeeverything.com with a note saying they are available there...? Or is the idea that having different language pages for crimethinc.com will cover that?

http://www.crimethinc.com/blog/2011/11/06/oakland-general-strike-footage/
...and what do we do about all the versions of the TCE video in other languages? Just link to tochangeeverything.com with a note saying they are available there...? Or is the idea that having different language pages for crimethinc.com will cover that?

How many other language TCE videos are there?

How many other language TCE videos are there?

Like, a dozen.

On Jan 1, 2017, at 6:02 PM, Shane Becker<EMAIL_ADDRESS>wrote:
How many other language TCE videos are there?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub https://github.com/crimethinc/website/issues/177#issuecomment-269923620, or mute the thread https://github.com/notifications/unsubscribe-auth/AXnJNoLEZJpo_X1IkdPsPcnVw7JD50Gnks5rODCIgaJpZM4LYybu.

Like, a dozen.

On Jan 1, 2017, at 6:02 PM, Shane Becker<EMAIL_ADDRESS>wrote:
How many other language TCE videos are there?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub https://github.com/crimethinc/website/issues/177#issuecomment-269923620, or mute the thread https://github.com/notifications/unsubscribe-auth/AXnJNoLEZJpo_X1IkdPsPcnVw7JD50Gnks5rODCIgaJpZM4LYybu.

And in addition... I think we should probably add the video shorts from the DVD at some point:
http://www.crimethinc.com/tools/dvd.html

And in addition... I think we should probably add the video shorts from the DVD at some point:
http://www.crimethinc.com/tools/dvd.html

Agreed. Do the video files exist somewhere other than the DVDs themselves?

Agreed. Do the video files exist somewhere other than the DVDs themselves?

Scott would have them, if anyone…

On Jan 1, 2017, at 6:11 PM, Shane Becker<EMAIL_ADDRESS>wrote:
Agreed. Do the video files exist somewhere other than the DVDs themselves?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub https://github.com/crimethinc/website/issues/177#issuecomment-269923987, or mute the thread https://github.com/notifications/unsubscribe-auth/AXnJNuHN8W0MkXhh5IioC7pttK00dLXMks5rODKqgaJpZM4LYybu.

Scott would have them, if anyone…

On Jan 1, 2017, at 6:11 PM, Shane Becker<EMAIL_ADDRESS>wrote:
Agreed. Do the video files exist somewhere other than the DVDs themselves?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub https://github.com/crimethinc/website/issues/177#issuecomment-269923987, or mute the thread https://github.com/notifications/unsubscribe-auth/AXnJNuHN8W0MkXhh5IioC7pttK00dLXMks5rODKqgaJpZM4LYybu.


fix: Can not connect to the database when the database does not exist.

When use the dsn url but the database does't exist. the connection is wrong.
and it can't create the new database with the url.

@h-wang Yes you a right, I only want to fixed a mistake i toke , the behaving will be the same as before.
when the database does't exist, create it.

@congpeijun the database-manager was already different. so let's merge this one :)


Compatibility Chart in Wiki needs updating as of Sierra 10.12.6

For the Mac Pro 2008-2012, the last box says "No", the patch (CAT) is not required.  However, that is no longer the case as of 10.12.6.  It needed to be clarified to say that the patch is only required for OS 10.12.6 and above.

Mac Model
Hardware change required
Software patch required (e.g. via this tool)

Mac Pro early 2008-2012
Yes, new wireless card BCM94360CD + adapter
No

dokterdok/Continuity-Activation-Tool/tree/beta#airport-extreme-card-upgrades
Edit Submitted on Nov 22, 2017:

Mac Model
Hardware change required
Software patch required (e.g. via this tool)

Mac Pro early 2008-2012
Yes, new wireless card BCM94360CD + adapter
No (10.12.5 and below), Yes (10.12.6 and above)

The edit has already been submitted but I am starting this thread because I have no knowledge about how any of the other models were affected by 10.12.6 and above.

Hi @sparky672, can you give me a little clarification? I have a Mac Pro 2008 (3,1) running dosdude1's High Sierra patch. I recently installed an upgraded bluetooth/wifi card. My Mac sees the card, and bluetooth works okay. But the Continuity features remain disabled.
Does that mean I should run the Continuity Activation Tool? Is it compatible with dosdude1's macOS patches?

I have no idea what dosdude1 patch is or what it does, nor have I upgraded my OS to High Sierra.
All I know is that for Mac Pro before 10.12.6, you would just upgrade the Wifi/BT card and everything works.  However, for 10.12.6 and above, you MUST also run CAT in addition to the new card.  If CAT reports that it's already installed/activated, then you must use terminal commands to force CAT.
Even after all that, Handoff/Continuity can be a real pain to kick start.  Log out of iCloud, REBOOT, then log back into iCloud... the reboot in between seems to be the trick.


add notifications

flux should notify via slack if there was a reconciliation of Kustomization, HelmRelease or GitRepo

implemented with ad8cd5d - waiting for tests


Doesn't launch on Debian Bullseye

When launching from the icon, the cursor spins for a while then nothing.
When launched from the terminal I get the following.
raceback (most recent call last):
File "/home/pi/CommanderPi/src/main.py", line 9, in
import gui as g
File "/home/pi/CommanderPi/src/gui.py", line 4, in
import resources as rs
File "/home/pi/CommanderPi/src/resources.py", line 16, in
home_path = sys.argv[1]
NameError: name 'sys' is not defined

Try to reinstall with new version


Confusing warning message when operator[]= not defined and using compound assignment

The following code:
class C {
  operator[](index) => null;
}
f(C c) {
  c[1] += 2;
}

Produces the warning message: "The operator '[]' is not defined for the class 'C'"
But this isn't true.  The operator '[]' is defined for the class 'C'.  The warning should read: "The operator '[]=' is not defined for the class 'C'".
Note that if "+=" is replaced with "=", then the correct warning message appears.

The warning is as you wish now:
  error • The operator '[]=' isn't defined for the type 'C'. • 22941.dart:5:4 • undefined_operator


AttributeError: 'MetricBundle' object has no attribute 'get_classifier_for_attack'

fibber version: fibber 0.2.1 (google colab)
Python version: 3.7
Operating System: windows

Description
AttributeError: 'MetricBundle' object has no attribute 'get_classifier_for_attack'
What I Did
---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-8-b1128aa16d94> in <module>()
      5
      6 print("Original sentence:", input_sentence)
----> 7 pred = fibber.get_metric_bundle().get_classifier_for_attack().measure_example(None, input_sentence)
      8 print("Original sentence prediction:", pred)
      9

AttributeError: 'MetricBundle' object has no attribute 'get_classifier_for_attack'

This bug is caused by recent update to the code. The notebook is now fixed.
If you run into any questions, please let me know.

This bug is caused by recent update to the code. The notebook is now fixed.
If you run into any questions, please let me know.

Bug fixed.


Building theme failed

I got an error when run npm run build-keycloak-theme. I custom the login page with tailwind and shadcn.
Environment:
Node 22.1.0
Maven 3.9.9
NPM 10.7.0
Mac OS Sonoma 14.5
vite.config.ts

package.json

Hi @tripheo0412,
At the moment you can't have spaces in the theme name.
Use vantheus-authentication

@garronej works like a charm, thank you very much, this is an awesome project!


fix: back navigation from artworks

This PR resolves https://www.notion.so/artsy/2in1-When-pressing-back-from-the-related-arotowork-or-from-other-works-by-it-navigates-back-twi-13bcab0764a08014b4d1df75565ae57f?pvs=4
Description
This PR fixes an issue with the back navigation when on the same screen type
Before
https://github.com/user-attachments/assets/0d6c8395-de86-4c1e-a372-3eb713f9c4ce
After
https://github.com/user-attachments/assets/4654c508-fe83-4b5a-8b12-6c4b2b2a0c11

PR Checklist

[ ] I have tested my changes on iOS and Android.
[ ] I hid my changes behind a feature flag, or they don't need one.
[ ] I have included screenshots or videos, or I have not changed the UI.
[ ] I have added tests, or my changes don't require any.
[ ] I added an app state migration, or my changes do not require one.
[ ] I have documented any follow-up work that this PR will require, or it does not require any.
[ ] I have added a changelog entry below, or my changes do not require one.

To the reviewers 👀

[ ] I would like at least one of the reviewers to run this PR on the simulator or device.

Changelog updates
Changelog updates

Cross-platform user-facing changes

iOS user-facing changes

Android user-facing changes

Dev changes

Need help with something? Have a look at our docs, or get in touch with us.

Warnings

:warning:

❌ An error occurred while validating your changelog, please make sure you provided a valid changelog.

  Generated by :no_entry_sign: dangerJS against 01ad1f2275349d2696a20fe938e3876b4f7ac78a


Toast message improvement

What does this PR?
Adds progress bar under the toast message. The color of progress bar is light green , red2 and blue for success , error and info toaster respectively.
Adds the close button in toaster container to close the toaster.
When mouse enters in the feedback container, it stops the progress bar until mouse leaves from the progress bar.
When mouse leaves from the progress bar, it starts the progress bar from where he left it.
You can get a better idea from the  attached video.
Steps to reproduce

Copy any message and hover on the feedback container. You will notice, the progress bar stops. When Mouse leaves from the progress bar, the progress starts its working from where he left.
You can follow the steps to test it by following the steps that i did in the video.

Issue number
fixes #1039
Screenshot / Video
https://user-images.githubusercontent.com/106739598/225619074-d1fddda5-540a-401e-be26-a37ea61b024c.mp4

Hy @feruzm .
I have made some changes in the styling of the toaster. You can compare these changes with the existing toaster of ecency. I hope you would like these changes. Kindly let me know if you like these changes and i will push the updated code with changes.
Thanks!
https://user-images.githubusercontent.com/106739598/225651854-0311d545-eddb-490b-abc4-3586c654e684.mp4

@MTSaeed In last video, night theme doesn't look good.


Support for Gaming Consoles

It would be great if (if possible!) Sentry could provide additional ISentrySubsystems for consoles (e.g. XBox, Playstation, and Switch). This would be a bit more annoying for you because the developer that uses Sentry would have to have the console manufacturer verify that they were a licensed developer to Sentry (E.g. I wold have to have Sony inform you that I'm a licensed PS developer) before you could allow access to that particular SDK but it would be a huge boon for reporting.

This is something we want to look into but we don't have a timeline just yet. Our goal was to get the plugin and support Mobile, Desktop, Web before we get into Consoles.

It's appreciated! I mostly wrote this up as a request so you would know customers are interested in consoles as well.

This feature will be super useful when it comes, some alternative solutions on the market don't support Console out of the box, so adding this would sway a few folks I think!

@bruno-garcia / @vaind I don't suppose either of you have an updated timeline for this as the issue is approaching a year old?

@Edstub207 My company is moving off of Sentry (to BugSplat) due to poor Unreal support (bad trace grouping, lack of Linux support for servers) and complete lack of Console support in the foreseeable future, so 🤷♀ . Consider alternatives, IMO.

@Edstub207 My company is moving off of Sentry (to BugSplat) due to poor Unreal support (bad trace grouping, lack of Linux support for servers) and complete lack of Console support in the foreseeable future, so 🤷♀ . Consider alternatives, IMO.

Linux crashes seem to be okay for us so far... What do you see?

@tustanivsky FYI as well - Just realized I've not seen Bruno or Ivan active on this project for a while  :)

@bruno-garcia @tustanivsky is there any update on this - Had a few other studios wondering about the status of this.

Hey, sorry about that - Fell through for a bit.
We're looking into it - but it's complicated. (and not just on a technical level)

Hey, sorry about that - Fell through for a bit. We're looking into it - but it's complicated. (and not just on a technical level)

@bitsandfoxes  Thanks for confirming. Do you know a rough ETA or is it currently unplanned?

Sorry, I don't have an ETA.

I assume the "no ETA" on official support still applies, but do you have any customers successfully running Sentry on consoles anyway? It seems functional enough, but not sure how much effort there would be to get the various platforms to accept it. So any pointers or previous examples you might have would be valuable in case we'd be looking into going that route.

There are customers using it already. If you're interested, please reach out to the sales team: https://sentry.io/contact/enterprise/ they can verify the middleware program and share details.
If you work with Game Consoles you know not much on this subject can be discussed in public forums. But Sentry has several game studios as customers. But we're not allowed to talk about anything that's not on public websites (like Riot) :)

The current status of console support is that we won't be widely supporting it. We will try to help on a best-effort basis but can't guarantee proper support with the console manufacturer's blessings.
I will close this issue now.
We do appreciate the report and might get to this sometime in the future.

I won't be reopening this just yet but I wanted to share that we're moving ahead with official console support. Might take some time before it's available on all consoles but you'll soon hear about the first platforms.

So Sentry does support consoles at different levels of maturity. We're working on officializing things.
For Nintendo Switch, support is official now.
For PlayStation, you can find Sentry in the devnet and reach out/do the middleware verification process through it. Support here requires you to run at service at this time. But we plan on improving this in the future.
For Xbox,  sentry-native can be compiled with GDK. For those with a middleware agreement, we'll verify that and share some details/code.
Also note that we're hiring a Senior Engineer to help us with our gaming support.


[heapster-scalability] Be super verbose when there is no service account or the node list from server is empty.


Issue with Movie class when catalog data is incomplete.

Almost all data testing has been done using XML generated from the templates here.
https://github.com/cjcodeproj/vtmedia-schema/tree/main/templates
That's good for the data, but bad for the code base, since there weren't many cases when the code could encounter use cases of missing XML elements that were normally expected.
Every Movie object has a friendly unique id value that is used to generate the hash value for object comparison, which is based on the title, copyright year, and an extra integer when needed.
https://github.com/cjcodeproj/medialibrary/issues/17
There needs to be a code fix to address cases when data is assumed to be present, but it is missing.

Commit.
https://github.com/cjcodeproj/medialibrary/commit/10a1401b34a5446de2defa93bd8b107780084bcf


Placement toplevel buttons

issue #202
I propose this solution.
It works on different size and with mobile format. Buttons are placed on top of the toplevel pane so they are always visible.
the toplevel input has been moved at the bottom of the window

There is a risk that the buttons hide the text, right?

It's automatically resized depending on the size of the screen.
The buttons can't hide the text. At worst they are just above it.
If you found it's too close I can arrange that.
Also I just found out that I did that for the toplevel of the Exercise menu but not for the toplevel of Activities menu, would you like me to do the same for it ?
toplevel of Activities

toplevel of Exercises

I changed the placement of the Activities toplevel buttons at the same place than the Exercices.

Thanks!


kernel: sched: deadline: kernel.scheduler.deadline.* fail

Describe the bug
Tests

tests/kernel/sched/deadline/kernel.scheduler.deadline
tests/kernel/sched/deadline/kernel.scheduler.deadline.scalable
fail.

Observed for nrf52840dk/nrf52840.
To Reproduce
Steps to reproduce the behavior:

have nrf52840dk/nrf52840 connected
go to your zephyr dir
call ./scripts/twister -s kernel.scheduler.deadline -s kernel.scheduler.deadline.scalable -p nrf52840dk/nrf52840 --device-testing --device-serial /dev/ttyACM0 -v --inline-logs --west-flash="--erase"
See console output with error (using e.g. minicom)

Expected behavior
Console output
Impact
Not clear
Logs and console output
*** Booting Zephyr OS build v4.0.0-1852-g1baf93b1d169 ***
Running TESTSUITE suite_deadline
===================================================================
START - test_deadline

    Assertion failed at zephyr/tests/kernel/sched/deadline/src/main.c:86: suite_deadline_test_deadline: (n_exec == 0 is false)
threads ran too soon
 FAIL - test_deadline in 0.016 seconds
===================================================================
START - test_unqueued
E: ***** MPU FAULT *****
E:   Data Access Violation
E:   MMFAR Address: 0x0
E: r0/a1:  0x20000570  r1/a2:  0x00000000  r2/a3:  0x00000000
E: r3/a4:  0x00000000 r12/ip:  0x00000000 r14/lr:  0x000067f5
E:  xpsr:  0x81000221
E: Faulting instruction address (r15/pc): 0x000064e2
E: >>> ZEPHYR FATAL ERROR 0: CPU exception on CPU 0
E: Fault during interrupt handling

E: Current thread: 0x20000a90 (test_unqueued)
E: Halting system

Environment (please complete the following information):

OS: Ubuntu 20.04.1 LTS
Toolchain Zephyr SDK 0.16.8
Commit SHA or Version used:  v4.0.0-1852-g1baf93

Additional information:
Introduced probably by 2d959d96fbb73a630ef77579e87ab25c394a11d5

Just tested on a nrf52840dk/nrf52840 and both tests are fine.
Please note that https://github.com/zephyrproject-rtos/zephyr/pull/82807 (reverting changes introduced in https://github.com/zephyrproject-rtos/zephyr/pull/82497) was recently merged, so you might want to test it again on current main branch

Just tested on a nrf52840dk/nrf52840 and both tests are fine. Please note that #82807 (reverting changes introduced in #82497) was recently merged, so you might want to test it again on current main branch

It has been re-tested on main branch and it is passed. Thanks for information


Integrate GolangCI-Lint

Mattermost is currently in the process of using golangci-lint as the default linter for all go projects. https://github.com/mattermost/mattermost-plugin-autolink/pull/108 serves as an example of how the migration should look like:

Copy .golangci.yml from https://github.com/mattermost/mattermost-plugin-autolink/ into this repository.
Copy Makefile from https://github.com/mattermost/mattermost-plugin-autolink/ into this repository.
Copy build/ from https://github.com/mattermost/mattermost-plugin-autolink/ into this repository.
Run go mod tidy and make dist to ensure the build system works fine.
Update linters-settings.goimports.local-prefixes to the go module path i.e. to github.com/mattermost/mattermost-plugin-aws-SNS.
Run make golangci-lint and fix all issues that arise.

Fixing an linter issue is sometimes trivial but can also be quite complicated. There might be cases, where ignoring an issue using issues.exclude-rules is needed. If you don't know how to resolve an error, please reach out to @hanzei on the Mattermost Community Server or ask the question here.

Hi again! Then can I do this one?

All yours :+1:

Hey @carantunes, I just want to check how you are doing with the ticket. Do you have any questions?

Making this available for the public agian

I'm sorry for my absence, I've been quite busy with work.
I did however start a PR (just pushed it), there's are quite a lot of fixes to be done still. I'm working on it, and will ask you some question about the more tricky ones.

There are a lot of gosec warning which I believe will be the more tricky. Should I just #nosec?
A sample:

server/expvar/endpoint_test.go:67:7: G404: Use of weak random number generator (math/rand instead of crypto/rand) (gosec)
        r := rand.New(rand.NewSource(time.Now().UnixNano()))
             ^
server/utils/kvstore/hashed_key.go:7:2: G501: Blocklisted import crypto/md5: weak cryptographic primitive (gosec)
        "crypto/md5"
        ^
server/utils/kvstore/hashed_key.go:76:7: G401: Use of weak cryptographic primitive (gosec)
        h := md5.New()
             ^
server/http.go:47:2: G101: Potential hardcoded credentials (gosec)
        routeACUserRedirectWithToken                = "/ac/user_redirect.html"
        ^
server/kv.go:7:2: G501: Blocklisted import crypto/md5: weak cryptographic primitive (gosec)
        "crypto/md5"
        ^
server/kv.go:89:7: G401: Use of weak cryptographic primitive (gosec)
        h := md5.New()
             ^
server/kv.go:95:7: G401: Use of weak cryptographic primitive (gosec)
        h := md5.New()
             ^
server/kv.go:370:20: G403: RSA keys should be at least 2048 bits (gosec)
                newRSAKey, err = rsa.GenerateKey(rand.Reader, 1024)
                                 ^
server/stats.go:4:2: G501: Blocklisted import crypto/md5: weak cryptographic primitive (gosec)
        "crypto/md5"
        ^
server/stats.go:96:8: G404: Use of weak random number generator (math/rand instead of crypto/rand) (gosec)
                r := rand.New(rand.NewSource(time.Now().UnixNano()))
                     ^
server/command_test.go:299:22: G403: RSA keys should be at least 2048 bits (gosec)
                                conf.rsaKey, _ = rsa.GenerateKey(rand.Reader, 1024)
                                                 ^
server/http_test.go:104:18: G601: Implicit memory aliasing in for loop. (gosec)
                                                foundSub = &savedSub
                                                           ^
server/jira_test_util_test.go:29:19: G601: Implicit memory aliasing in for loop. (gosec)
                ret.Channel.add(&sub)
                                ^

@carantunes Awesome, thanks for pushing that PR :+1:
Yes, the md5 related warning can be ignored using nosec. I'm not sure about the G601. Could you double check if they are valid?


1460 Remove site count from provider factory

Context
We've decided to remove dependencies from the factories where possible. This PR removes site_count from the provider factory.
Changes proposed in this pull request

Removes site_count from the provider factory.

Guidance to review
Checklist

[x] Make sure all information from the Trello card is in here
[x] Attach to Trello card
[x] Rebased master
[x] Cleaned commit history
[ ] Tested by running locally

 [M] Improve how we create factories & related data in specs.

 [M] Improve how we create factories & related data in specs.


utilities page of admin interface will not load

I wanted to merge duplicate accounts for arpad and noticed that the utilities page throws an error:

This is corrected and I've merged arpad's accounts as discussed in the slack channel!


Pull recent fixes for resource detection processor from contrib

@dmitryax thanks for the fix. Is it ok if I push an edit to an existing integration test to pick up coverage for this?

Is it ok if I push an edit to an existing integration test to pick up coverage for this?

Sure, please do 👍

pushed https://github.com/dmitryax/splunk-otel-collector/commit/18031f12796392630e3578072a6907a6e869256a but it seems to be taking a minute to reflect here.

pushed https://github.com/dmitryax/splunk-otel-collector/commit/18031f12796392630e3578072a6907a6e869256a but it seems to be taking a minute to reflect here.

Thanks! I added a comment right in the commit


Cleaner crashes when "clean" called

Whenever I try to clean it via the app, it crashes immediately and removes only a few files instead of every mod file.

Duplicate of #1


[FLINK-14063][table-planner-blink] Operators use fractions to decide how many managed memory to allocate

What is the purpose of the change
Operators allocate memory segments with the amount returned by MemoryManager#computeNumberOfPages.
In this way, Operators can get more memory than expected, which will improve memory utilization.
Brief change log

Modify HashTable and LongHashTable
Modify Agg BytesHashMap
Modify SortOperator
Modify SortMergeJoinOperator
Modify NestedLoopJoin
Modify over window agg

Verifying this change
This change is already covered by existing tests.
Does this pull request potentially affect one of the following parts:

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

Documentation

Does this pull request introduce a new feature? no

Does each operator has a minimum runnable managed memory requirement?

Yes, every operators have minimum memory requirement, although very small.

passed in https://travis-ci.org/JingsongLi/flink/builds/621000910


The C# Example doesn't work

I installed the SDK "Microsoft.Xbox.Live.SDK.WinRT.UWP" in a UWP project, but the XboxLiveUser class is not available in C#.
It seems that the WinRT NuGet package is only usable in C++ projects but not in C# projects. But the docs don't mean this. Should the documents be updated?
Another relevant document page: https://docs.microsoft.com/en-us/gaming/xbox-live/get-started-with-creators/develop-creators-title-with-visual-studio
“... whereas the WinRT SDK is for game engines written with C++, C#, or JavaScript.”

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

ID: eabbe2ec-8f9e-bdf5-6ea2-0e44aeb2f9a1
Version Independent ID: 420c2f40-993b-3799-ed29-0b7c5b0de615
Content: Authentication for UWP projects - Xbox Live
Content Source: xbox-live-docs-pr/using-xbox-live/auth/authentication-for-UWP-projects.md
Product: xboxlive
GitHub Login: @aablackm
Microsoft Alias: aablackm

I have found the possible cause of this problem. It seems that the package requires "Visual C++ 2015 Runtime for Universal Windows Platform Apps". If I didn't install "C++ tools for Universal Windows Platform", that requirement can't be fulfilled so the NuGet package doesn't work.
Maybe you should describe this requirement in the "Getting Started" page.


No Brightness-DPS on create_fan_light.yaml

Description
Hello,
in the cfg-file for my Create Fan-Light there is no Datapoint for Brightness.
I added manually to create_fan_light.yaml following code to get it working:
Line 32:
      - id: 22
        name: brightness
        type: integer
        range:
          min: 10
          max: 1000

On the next update the changes will be lost, so perhaps s.o. can help me to get it integrated officialy into tuyalocal. Unfortunately i dont know how to do a pull request.
Thanks
Steps to reproduce
No response
Expected behaviour
No response
Additional context
No response
Confirmation

[X] I am sure this is a bug or improvement, that is well enough described that it can be implemented.

[x] If this is for a specific device, the device config is mentioned above, or diagnostics are included.

[ ] Log messages or diagnostics relevant to the issue are included.

[ ] This is not requesting addition of a new device.

There are a number of different Create fans, with and without lights. So your fan should be considered a new device, and a new device request filed, rather than changing the existing config that was for a fan without brightness.


AD410 Live Stream not working

The live camera view does not seem to be working from my AD410 doorbell camera.
Home Assistant installed on a Pi 4b
Home Assistant Core 2022.3.3
Home Assistant Operating System 7.4
ffmpeg: in configuration.yaml
When I open any of the camera entities this is all I see:

Same here. Using Amcrest cameras

Hi, same issue for IPC-HFW1435S-W-0280B-S2

Cannot confirm.  I am using HA core and OS on a RPi4, and it streams just fine.

For me, the first time, it takes some time to start the stream. After that it is almost instant. Looks like it needs to activate the connection after no streaming for a while.

For those that were experiencing this problem, were you able to resolve it?  I've run into the same issue and am trying to narrow it down, so could use any tips from anyone that was able to get this to work.
If it matters, my camera is on a different subnet with pfsense as a firewall in between.  However, my local LAN has wide open access to my camera subnet.

Same issue here


User containers should run as non-root user

This is a design-proposal for security hardening of the invoker.
I have been testing with ways to achieve better security against forkbomb attacks using AppArmor. One of the main problem with applying the nproc limit is that it does not apply to root, no matter whether you apply the limit via ulimit or AppArmor (which uses ulimit under the hood anyway).
The second problem is that the nproc limit applies only per user, not per container. It is, after all, a kernel feature and way older than lxc, docker or any other container tech. So to make this work for docker < 1.10 (i.e. without user namespaces) you have to use a new user id for every container you run. This makes sure that each process gets a fresh nproc limit.
If you use the same user id for all containers, you will run into the problems described here as they will all share the same limit.
My proposal is this:
When running a user container, the invoker runs the container using a high UID and passes it using the docker run -u <uid> option. The user does not have to exist on the host for this to work. Inside the container, the user will still be member of the root group, however no longer be root itself, thus all ulimits like nproc apply. This will effectively protect against forkbomb attacks.
This is how it would work:

when makeContainer gets called, the invoker first calls getFreeUID(containerName)

getFreeUID returns an unused user id and blocks this user id for other containers.

makeContainer then starts the action container like so
docker run -d -u <freeUID> --security-stuff whisk/nodeJsAction

rmContainer finally unblocks the user id to make it available again.

There are two drawbacks I see for this approach:

We have to keep track of the user ids. So the invoker needs to make sure every new container gets a unique uid to prevent nproc limit collision. This is basically doing user namespaces manually.

The author of a blackbox container can no longer make the "I am root" assumption. Their stuff needs to be able to run as non-root users.

With --pids-limit coming in Docker 1.11 and Kernel 4.3 we no longer need nproc ulimit. This makes this problem much easier to handle as we don't need different user ids for every container. Instead I suggest we use an unprivileged user id like "nobody" to run the containers and see where we land.

Team meeting decision from Oct 4:

we will go forward with user namespaces
we will not mount containers read-only
we will limit storage using overlay2 + xfs using docker 1.13 (modulo stemcell being able to mount root fs as xfs)
if xfs not possible, pursue other solutions like io-limits or watchdogs until ext4 quota arrives

So non-root will only apply to the host. The container will still think it is running as root.

Initial design proposal:

Start docker daemon with --userns-remap=default
This will by default start all containers in mapped uid (0 -> 100000)
Disable mapping for regular containers such as controller, invoker etc. by passing --userns=host to docker run commands
Action containers will run as mapped containers and thus be protected by non-root uids.

Current problem is that the ansible docker module does not yet support the --userns option. There is an open issue here https://github.com/ansible/ansible-modules-core/issues/5054
So we currently can not deploy OpenWhisk w/ this feature using ansible. As a mitigation we can fall back to using shell commands, which is uncool.

Estimated steps for this feature:

[ ] Investigate how docker namespaces behave if the kernel does not support it (should gracefully ignore and continue). We need this to support old kernels in travis and vagrant.
[ ] Update ansible playbooks with --userns=host for regular containers (modulo step 1 works)
[ ] Update docker daemon settings with --userns-remap=default
[ ] Make sure invoker runs actions in namespaced containers

Investigation results:

critical scenario A: daemon not configured w/ userns-remap but container started w/ --userns=host option
Outcome: The option is ignored. Passing userns=host to a non-namespaced daemon equals passing userns= to a namespaced daemon. I.e. the container is run as root.

critical scenario B: daemon configured but kernel does not support user namespaces.
Outcome: N/A because user namespaces are actually supported fully since kernel 3.12. See http://man7.org/linux/man-pages/man7/user_namespaces.7.html. Vagrant and travis kernels are currently at 3.13 and 3.19 respectively.

Following my experiments we will probably need two more steps:
Since docker on startup creates a folder /var/lib/docker/<uid>.<gid> to hold the namespaced containers and images and invoker mounts /var/lib/docker/containers, we will have to add that indirection to the invoker.

[ ] Provide a well-known uid+gid range in /etc/subuid and /etc/subgid for the dockremap namespace. We must know the mapped root uid (e.g. 100000)
[ ] Adjust invoker mount from /var/lib/docker/containers to /var/lib/docker/100000.100000/containers

This should all be doable with ansible only.

Discussion w/ @jeremiaswerner we have decided to change the design to feature-detection instead of having to know subuid / subgid up front:

[ ] On invoker deployment, detect if Docker is running in namespaced mode
[ ] If namespaced mode, grep /etc/subuid and /etc/subgid ranges for dockremap
[ ] Adjust mount point for /var/lib/docker/<uid>.<gid>/containers accordingly

Ran into a couple of problems during testing, likely found minor bugs in Docker.
Opened issues:
https://github.com/docker/docker/issues/27775
https://github.com/docker/docker/issues/27740

Discussion with @estesp has lead me to turn around the original way of least change and embrace user namespaces wherever possible. This has the implication that all containers are to run namespaced and subsequently mounted directories like wsklogs need to be writeable by non-root (preferably only dockremap) users.
However, I feel this is the better decision because:

Using user namespaces in general increases security, also for non-action containers.
Privileged or non-namespaced containers should become the exception over time.
The way user namespaces are designed in Docker today creates hurdles with non-single user containers like Zookeeper or Kafka which have their own users inside the container.


Add arrow-body-style ESLint rule

This adds the arrow-body-style ESLint rule.
This rule was previously in conflict with eslint-config-prettier, but not anymore with the latest version.
This rule turns (args) => { return value } into (args) => value. It autofixes all warnings.

I find it a little verbose to do () => { return 5 } instead of () => 5.
On the other hand, you do have a good point that it makes it easier to add breakpoint and console.log() statements.
What's more important is probably consistency, so whatever works best for you works for me :+1:

I personally find it a little verbose to do () => { return 5 } instead of () => 5.

I agree with this, but I think that in most cases the arrow function has a few more statements than just returning a value.
However, maybe that's a sign that arrow function needs to be extracted...
Let's use the rule defaults and we can change it if we feel we need to


Update README.md with more plugins

Wow, thank you for listing my plugins at the top of the community section! 🙏🏽
I added a few more I've done.

Thank you for your contribution! To be fair, the packages are simply sorted alphabetically. ^^ Please also sort your new entries.

Done.


🐛 [Firebase Crashlytics] ANR not getting reported

Bug report
Describe the bug
ANR's are not getting reported in Firebase Dashboard
We tried adding some ANR's in the code but still those ANR's are also not reported in the Firebase dashboard.
Steps to reproduce
Steps to reproduce the behavior:
Producing ANR locally and trying to find the same in firebase console
Expected behavior
ANR's from our application must be visible in firebase dahsboard
Flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.10.6, on macOS 13.5.1 22G90 darwin-arm64, locale
    en-IN)
[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
[✗] Xcode - develop for iOS and macOS
    ✗ Xcode installation is incomplete; a full installation is necessary for iOS
      and macOS development.
      Download at: https://developer.apple.com/xcode/download/
      Or install Xcode via the App Store.
      Once installed, run:
        sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer
        sudo xcodebuild -runFirstLaunch
    ✗ CocoaPods not installed.
        CocoaPods is used to retrieve the iOS and macOS platform side's plugin
        code that responds to your plugin usage on the Dart side.
        Without CocoaPods, plugins will not work on iOS or macOS.
        For more info, see https://flutter.dev/platform-plugins
      To install see
      https://guides.cocoapods.org/using/getting-started.html#installation for
      instructions.
[✓] Chrome - develop for the web
[✓] Android Studio (version 2022.3)
[✓] Android Studio (version 2022.3)
[✓] Connected device (2 available)
[✓] Network resources

Flutter dependencies
Run `flutter pub deps -- --style=compact` and paste the output below:

firebase_analytics 10.4.5 [firebase_analytics_platform_interface firebase_analytics_web firebase_core firebase_core_platform_interface flutter]
- firebase_analytics_platform_interface 3.6.5 [_flutterfire_internals firebase_core flutter meta plugin_platform_interface]
- firebase_analytics_web 0.5.4+5 [_flutterfire_internals firebase_analytics_platform_interface firebase_core firebase_core_web flutter flutter_web_plugins js]
- firebase_core_platform_interface 4.8.0 [collection flutter flutter_test meta plugin_platform_interface]
- firebase_core_web 2.7.0 [firebase_core_platform_interface flutter flutter_web_plugins js meta]
- firebase_crashlytics 3.3.5 [firebase_core firebase_core_platform_interface firebase_crashlytics_platform_interface flutter stack_trace]
- firebase_crashlytics_platform_interface 3.6.5 [_flutterfire_internals collection firebase_core flutter meta plugin_platform_interface]
- firebase_messaging 14.5.0 [firebase_core firebase_core_platform_interface firebase_messaging_platform_interface firebase_messaging_web flutter meta]
- firebase_messaging_platform_interface 4.5.6 [_flutterfire_internals firebase_core flutter meta plugin_platform_interface]
- firebase_messaging_web 3.5.6 [_flutterfire_internals firebase_core firebase_core_web firebase_messaging_platform_interface flutter flutter_web_plugins js meta]
- firebase_performance 0.9.2+5 [firebase_core firebase_core_platform_interface firebase_performance_platform_interface firebase_performance_web flutter]
- firebase_performance_platform_interface 0.1.4+5 [_flutterfire_internals firebase_core flutter plugin_platform_interface]
- firebase_performance_web 0.1.4+5 [_flutterfire_internals firebase_core firebase_core_web firebase_performance_platform_interface flutter flutter_web_plugins js]

@danagbemava-nc  -  we have used below snippet to force an ANR
while(true){
variable++
}

Hi @onkarmonks, what device(s) have you tested on? Android or iOS?

I was in the same situtation recently but I was not checking at the right way. Make sure you're filtering correctly on Event Type.

Hi @onkarmonks, can you check if https://github.com/firebase/flutterfire/issues/11550#issuecomment-1712741365 helps?

@qwadrox  - thanks for the heads up i have checked the same still we are not seeing any such ANR's in the dashboard
@danagbemava-nc - We have tested this on Android

Hi @onkarmonks, when you trigger the ANR, do you get the " is not responding" error or does it just hang forever?

@danagbemava-nc  - The application just hangs forever without the " is not responding" error

Hi @onkarmonks, can you check the adb logs to see if any errors are triggered? From what I'm seeing in the android docs on ANRs it seems like an ANR error has to be triggered first. If the app is just frozen and doesn't trigger the error, the plugin may not be able to capture the ANR. The android logs for reference https://developer.android.com/topic/performance/vitals/anr

Hi @danagbemava-nc  - The App is just freezing and we are not able to see any errors.
But then how will we identify if we get real ANR's on real users device if they ar not logged.

Hi @onkarmonks, are you checking your flutter logs or the logcat from android studio? It has more information about the android processes than the flutter logs.
Also, what version android are you testing on?

Hi @danagbemava-nc, we are checking the Android Studio complete logs
Android version - 33

Hi @onkarmonks, from what I gather, your code for triggering the ANR is not working because it is running on the dart thread but not on the android thread so it is the the dart thread that is freezing. I whipped up a small sample code using method channels to put the android thread to sleep and the ANR was reported in my console. I used the firebase crashlytics example app and added a call to trigger the ANR.
Can you try using the code sample below to see if the ANR is triggered for you as well?

native sample
import android.os.Bundle
import io.flutter.embedding.android.FlutterActivity
import io.flutter.embedding.engine.FlutterEngine
import io.flutter.plugin.common.MethodChannel

class MainActivity: FlutterActivity() {

    private val CHANNEL = "com.example/induce_anr"

    override fun configureFlutterEngine(flutterEngine: FlutterEngine) {
        super.configureFlutterEngine(flutterEngine)
        MethodChannel(flutterEngine.dartExecutor.binaryMessenger, CHANNEL).setMethodCallHandler { call, result ->
            if (call.method == "induceANR") {
                induceANR()
            }
        }
    }

    private fun induceANR() {
        try {
            Thread.sleep(100000)
        } catch (e: InterruptedException) {
            e.printStackTrace()
        }
    }
}

dart sample
// ignore_for_file: require_trailing_commas
// Copyright 2019 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

import 'dart:async';
import 'dart:io';

import 'package:firebase_core/firebase_core.dart';
import 'package:firebase_crashlytics/firebase_crashlytics.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';

import 'firebase_options.dart';

// Toggle this to cause an async error to be thrown during initialization
// and to test that runZonedGuarded() catches the error
const _kShouldTestAsyncErrorOnInit = false;

// Toggle this for testing Crashlytics in your app locally.
const _kTestingCrashlytics = true;

Future<void> main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await Firebase.initializeApp(
    options: DefaultFirebaseOptions.currentPlatform,
  );
  const fatalError = true;
  // Non-async exceptions
  FlutterError.onError = (errorDetails) {
    if (fatalError) {
      // If you want to record a "fatal" exception
      FirebaseCrashlytics.instance.recordFlutterFatalError(errorDetails);
      // ignore: dead_code
    } else {
      // If you want to record a "non-fatal" exception
      FirebaseCrashlytics.instance.recordFlutterError(errorDetails);
    }
  };
  // Async exceptions
  PlatformDispatcher.instance.onError = (error, stack) {
    if (fatalError) {
      // If you want to record a "fatal" exception
      FirebaseCrashlytics.instance.recordError(error, stack, fatal: true);
      // ignore: dead_code
    } else {
      // If you want to record a "non-fatal" exception
      FirebaseCrashlytics.instance.recordError(error, stack);
    }
    return true;
  };
  runApp(MyApp());
}

class MyApp extends StatefulWidget {
  MyApp({Key? key}) : super(key: key);
  @override
  _MyAppState createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  late Future<void> _initializeFlutterFireFuture;

  Future<void> _testAsyncErrorOnInit() async {
    Future<void>.delayed(const Duration(seconds: 2), () {
      final List<int> list = <int>[];
      print(list[100]);
    });
  }

  // Define an async function to initialize FlutterFire
  Future<void> _initializeFlutterFire() async {
    if (_kTestingCrashlytics) {
      // Force enable crashlytics collection enabled if we're testing it.
      await FirebaseCrashlytics.instance.setCrashlyticsCollectionEnabled(true);
    } else {
      // Else only enable it in non-debug builds.
      // You could additionally extend this to allow users to opt-in.
      await FirebaseCrashlytics.instance.setCrashlyticsCollectionEnabled(!kDebugMode);
    }

    if (_kShouldTestAsyncErrorOnInit) {
      await _testAsyncErrorOnInit();
    }
  }

  @override
  void initState() {
    super.initState();
    _initializeFlutterFireFuture = _initializeFlutterFire();
  }

  final MethodChannel _channel = MethodChannel('com.example/induce_anr');

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: const Text('Crashlytics example app'),
        ),
        body: FutureBuilder(
          future: _initializeFlutterFireFuture,
          builder: (context, snapshot) {
            switch (snapshot.connectionState) {
              case ConnectionState.done:
                if (snapshot.hasError) {
                  return Center(
                    child: Text('Error: ${snapshot.error}'),
                  );
                }
                return Center(
                  child: Column(
                    children: <Widget>[
                      ElevatedButton(
                        onPressed: () {
                          FirebaseCrashlytics.instance.setCustomKey('example', 'flutterfire');
                          ScaffoldMessenger.of(context).showSnackBar(const SnackBar(
                            content: Text('Custom Key "example: flutterfire" has been set \n'
                                'Key will appear in Firebase Console once an error has been reported.'),
                            duration: Duration(seconds: 5),
                          ));
                        },
                        child: const Text('Key'),
                      ),
                      ElevatedButton(
                        onPressed: () {
                          FirebaseCrashlytics.instance.log('This is a log example');
                          ScaffoldMessenger.of(context).showSnackBar(const SnackBar(
                            content: Text('The message "This is a log example" has been logged \n'
                                'Message will appear in Firebase Console once an error has been reported.'),
                            duration: Duration(seconds: 5),
                          ));
                        },
                        child: const Text('Log'),
                      ),
                      ElevatedButton(
                        onPressed: () async {
                          ScaffoldMessenger.of(context).showSnackBar(const SnackBar(
                            content: Text('App will crash is 5 seconds \n'
                                'Please reopen to send data to Crashlytics'),
                            duration: Duration(seconds: 5),
                          ));

                          // Delay crash for 5 seconds
                          sleep(const Duration(seconds: 5));

                          // Use FirebaseCrashlytics to throw an error. Use this for
                          // confirmation that errors are being correctly reported.
                          FirebaseCrashlytics.instance.crash();
                        },
                        child: const Text('Crash'),
                      ),
                      ElevatedButton(
                        onPressed: () {
                          ScaffoldMessenger.of(context).showSnackBar(const SnackBar(
                            content: Text('Thrown error has been caught and sent to Crashlytics.'),
                            duration: Duration(seconds: 5),
                          ));

                          // Example of thrown error, it will be caught and sent to
                          // Crashlytics.
                          throw StateError('Uncaught error thrown by app');
                        },
                        child: const Text('Throw Error'),
                      ),
                      ElevatedButton(
                        onPressed: () {
                          ScaffoldMessenger.of(context).showSnackBar(const SnackBar(
                            content: Text('Uncaught Exception that is handled by second parameter of runZonedGuarded.'),
                            duration: Duration(seconds: 5),
                          ));

                          // Example of an exception that does not get caught
                          // by `FlutterError.onError` but is caught by
                          // `runZonedGuarded`.
                          runZonedGuarded(() {
                            Future<void>.delayed(const Duration(seconds: 2), () {
                              final List<int> list = <int>[];
                              print(list[100]);
                            });
                          }, FirebaseCrashlytics.instance.recordError);
                        },
                        child: const Text('Async out of bounds'),
                      ),
                      ElevatedButton(
                        onPressed: () async {
                          try {
                            ScaffoldMessenger.of(context).showSnackBar(const SnackBar(
                              content: Text('Recorded Error'),
                              duration: Duration(seconds: 5),
                            ));
                            throw Error();
                          } catch (e, s) {
                            // "reason" will append the word "thrown" in the
                            // Crashlytics console.
                            await FirebaseCrashlytics.instance
                                .recordError(e, s, reason: 'as an example of fatal error', fatal: true);
                          }
                        },
                        child: const Text('Record Fatal Error'),
                      ),
                      ElevatedButton(
                        onPressed: () async {
                          try {
                            ScaffoldMessenger.of(context).showSnackBar(const SnackBar(
                              content: Text('Recorded Error'),
                              duration: Duration(seconds: 5),
                            ));
                            throw Error();
                          } catch (e, s) {
                            // "reason" will append the word "thrown" in the
                            // Crashlytics console.
                            await FirebaseCrashlytics.instance
                                .recordError(e, s, reason: 'as an example of non-fatal error');
                          }
                        },
                        child: const Text('Record Non-Fatal Error'),
                      ),
                      ElevatedButton(
                        onPressed: () async {
                          // try {
                          //   ScaffoldMessenger.of(context)
                          //       .showSnackBar(const SnackBar(
                          //     content: Text('Recorded Error'),
                          //     duration: Duration(seconds: 5),
                          //   ));
                          //   throw Error();
                          // } catch (e, s) {
                          //   // "reason" will append the word "thrown" in the
                          //   // Crashlytics console.
                          //   await FirebaseCrashlytics.instance.recordError(e, s,
                          //       reason: 'as an example of non-fatal error');
                          // }
                          try {
                            await _channel.invokeMethod('induceANR');
                          } on PlatformException catch (e) {
                            print(e);
                          }
                        },
                        child: const Text('Trigger ANR'),
                      ),
                    ],
                  ),
                );
              default:
                return const Center(child: Text('Loading'));
            }
          },
        ),
      ),
    );
  }
}


Add new theme "Autumn Theme"

#223

Thanks for adding the theme!
Do you feel done with the theme?
You may consider making another commit where you add more Autumn colors to the theme.
Right now I only see yellow, black, blue, and gray.

Hello, thanks for the feedback. I changed the colors)

Lovely!  My favorite color is Orange.  Thanks for contributing.

Great changes 👍


fix: add monthly pay for manual calculation for accepted application

Description :sparkles:
Add row amount per month for manual calculation when reviewing an accepted application. Screenshot's left side has the added row. On the right is the normal calculation.

APPLICANT branch is deployed to platta: https://helsinkilisa-ui-pr3203.dev.hel.ninja :rocket::rocket::rocket:

API branch is deployed to platta: https://helsinkilisa-pr3203.api.dev.hel.ninja/healthz :rocket::rocket::rocket:

HANDLER branch is deployed to platta: https://helsinkilisa-ui-handler-pr3203.dev.hel.ninja :rocket::rocket::rocket:

TestCafe result is success for https://helsinkilisa-ui-pr3203.dev.hel.ninja :laughing::tada::tada::tada:

TestCafe result is success for https://helsinkilisa-ui-handler-pr3203.dev.hel.ninja :laughing::tada::tada::tada:


setOptions does not re-render the waveform with new peaks

Bug description
As described on the docs, using the wavesurfer.setOptions() method it should re-render the waveform, however this does not work. Is there any way to re-render the waveform without having to destroy it when passing new peaks?
Environment

Browser: Chrome

Minimal code snippet
const wavesurfer = WaveSurfer.create({
  container: document.body,
  barWidth: 10,
  url: '/examples/audio/demo.wav',
  peaks: [
    [
      0, 0.0023595101665705442, 0.012107174843549728, 0.005919494666159153, -0.31324470043182373, 0.1511787623167038,
      0.2473851442337036, 0.11443428695201874, -0.036057762801647186, -0.0968964695930481, -0.03033737652003765,
      0.10682467371225357, 0.23974689841270447, 0.013210971839725971, -0.12377244979143143, 0.046145666390657425,
      -0.015757400542497635, 0.10884027928113937, 0.06681904196739197, 0.09432944655418396, -0.17105795443058014,
      -0.023439358919858932, -0.10380347073078156, 0.0034454423002898693, 0.08061369508504868, 0.026129156351089478,
      0.18730352818965912, 0.020447958260774612, -0.15030759572982788, 0.05689578503370285, -0.0009095853311009705,
      0.2749626338481903, 0.2565386891365051, 0.07571295648813248, 0.10791446268558502, -0.06575305759906769,
      0.15336275100708008, 0.07056761533021927, 0.03287476301193237, -0.09044631570577621, 0.01777501218020916,
      -0.04906218498945236, -0.04756792634725571, -0.006875281687825918, 0.04520256072282791, -0.02362387254834175,
      -0.0668797641992569, 0.12266506254673004, -0.10895221680402756, 0.03791835159063339, -0.0195105392485857,
      -0.031097881495952606, 0.04252675920724869, -0.09187793731689453, 0.0829525887966156, -0.003812957089394331,
      0.0431736595928669, 0.07634212076663971, -0.05335947126150131, 0.0345163568854332, -0.049201950430870056,
      0.02300390601158142, 0.007677287794649601, 0.015354577451944351, 0.007677287794649601, 0.007677288725972176,
    ],
  ],
  duration: 22,
})

wavesurfer.on('ready', () => {
  wavesurfer.setOptions({
    barWidth: 5, //works
    peaks: [1,0] // does not work
  })
})

Expected result
It should re-render the waveform with the passed peaks.
Screenshots

New peaks can be rendered via the load method.

Thanks, I tried with load, but didn't work as expected... anyways since it work using surfer.destroy() and recreating it, will close issue

Duration is the third param.
https://wavesurfer.xyz/docs/classes/wavesurfer.default#load


Update carla observation shape to match dataset observation shape

Could you add a description to the PR for the motivation and solution?


Remove beta label of discussions

Why:
Closes #9130

What's being changed:

Removes the beta label for discussions from a reusable.
Check off the following:

[x] I have reviewed my changes in staging (look for the latest deployment event in your pull request's timeline, then click View deployment).
[X] For content changes, I have completed the self-review checklist.

@thispsj Can you enable the checkbox to allow maintainer edits? Then I'll be able to hit the update button and get this merged in. Thank you! https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/allowing-changes-to-a-pull-request-branch-created-from-a-fork

@ramyaparimi done 👍

Duplicate of #

Thank you  #9189


inline needed?

Hello,
I have a small link problem which happens only on Linux while on Windows there are no problems.
Maybe worthwhile an update of master?
Best regards
Andreas
with the following inline addition everything works fine:
--- a/include/asioext/detail/impl/posix_file_ops.cpp
+++ b/include/asioext/detail/impl/posix_file_ops.cpp
@@ -162,7 +162,7 @@ file_attrs native_to_file_attrs(uint32_t native) ASIOEXT_NOEXCEPT
-bool stat_to_times(const struct stat& st,
+inline bool stat_to_times(const struct stat& st,

Very good point, it appears I only test the separate-compilation mode as part of the CI.
I'll fix that, thanks for reporting it!

All fixed, thanks again for reporting it


"Errno Device not found"

I'm not sure how to fix this error
TimeoutError: [Errno Device not found] -5: 19

Could you give more info about the sensor. Also can you provide the full output of the program?

I'm pretty sure it's the 55b4, but it doesn't get listed in lsusb or lspci. I have the Lenovo Yoga C940 and I flashed some firmware to get the speakers working.
Here's the output:
#######################################################
This program might break your device.
Consider that it may flash the device firmware.
Continue at your own risk.
But don't hold us responsible if your device is broken!
Don't run this program as part of a regular process.
#######################################################
Type 5724 to continue and confirm that you are not a bot: 5724
init(21940, <class 'protocol.USBProtocol'>, 5)
Traceback (most recent call last):
File "/home/e34/Git Clones/goodix-fp-dump/run_55b4.py", line 3, in
main(0x55b4)
File "/home/e34/Git Clones/goodix-fp-dump/driver_55x4.py", line 218, in main
device = init_device(product)
File "/home/e34/Git Clones/goodix-fp-dump/driver_55x4.py", line 45, in init_device
device = Device(product, USBProtocol)
File "/home/e34/Git Clones/goodix-fp-dump/goodix.py", line 167, in init
self.protocol: Protocol = protocol(0x27c6, product, timeout)
File "/home/e34/Git Clones/goodix-fp-dump/protocol.py", line 65, in init
raise TimeoutError("Device not found", -5, 19)
TimeoutError: [Errno Device not found] -5: 19

If the device doesn't show in your lsusb, this mean that the device is not present on your laptop.
Also, if your device doesn't show in your lsusb, this script will not work anyway. This is why the program raise TimeoutError: [Errno Device not found] -5: 19
So maybe your device is an SPI one.
Could you provide the result of /sys/bus/spi/devices?

There's nothing in the directory

Your device doesn't seems to be a Goodix one then.
This repo is only for Goodix devices.
So I can't do much more then.

I've confirmed that it is definitely is a Goodix sensor. On the support page for my laptop, it has a Windows driver with the names "Goodix" and "Synaptics". It also doesn't get detected in Windows for some reason, even though it worked before...

Well I can't do anything as long as the device doesn't show up in your lsusb.

So, I guess it was something with the newly flashed BIOS. There's just lots of options in it, and none of them say anything about a "fingerprint sensor," just some device IDs and some stuff I don't really know about, but it works now. Thanks for the help.

I have a same error.
workeuser@pc:~$ lsusb
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 003: ID 5986:2146 Acer, Inc Integrated RGB Camera
Bus 003 Device 002: ID 27c6:550a Shenzhen Goodix Technology Co.,Ltd. FingerPrint
Bus 003 Device 004: ID 8087:0026 Intel Corp. AX201 Bluetooth
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

I have a same error.

Your device is not supported.

I have a same error.

Your device is not supported yet.

excuse me, am I the same? One year passed , how about now?


Support multiple accepted-public-api.json files

So we can avoid having conflicts with main branch when we will migrate to Provider API.
Fixes https://github.com/gradle/gradle/issues/26573

@bot-gradle test this

I've triggered the following builds for you. Click here to see all build failures.

PullRequestFeedback build

CI failure doesn't look related.

This most likely has an impact on promotion jobs, in particular branching.
This change should be coordinated with changes in the promotion job or at least a blocking issue needs to be raised for promotion.

I believe that's it, thanks for doing a PR already.


Let's upgrade CodeNarc to latest 1.5

Context
We seem to be far behind CodeNarc latest version. Let's upgrade it.

Could we update the default version we use in the CodeNarcPlugin instead?  That updates it for everyone who doesn't particularly care.

@big-guy Yes we can, that's a good idea. But we still need to constrain the CodeNarc version, right?

Ah, I see what you mean.  Yeah, we'd have to update it in both places because we have a custom CodeNarc rule in buildSrc.


Ensure native tests failure is correctly reported

See discussion in: https://github.com/thaliproject/CI/issues/80

This change is

PR is added to the queue for testing as 3. task. (7cfe9e7)

Hi @czyzm, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!
You've already signed the contribution license agreement. Thanks!
The agreement was validated by Microsoft and real humans are currently evaluating your PR.
TTYL, MSBOT;

Reviewed 1 of 1 files at r1.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from Reviewable

Test (Success) 86453613 build is completed (7cfe9e7)
See https://github.com/ThaliTester/TestResults/tree/864536137cfe9e7_Ensure_native_tests_failure_is_correctly_reported_czyzm/ for the logs

Test 864536137cfe9e7(7cfe9e7) has successfully finished without an error
See https://github.com/ThaliTester/TestResults/tree/864536137cfe9e7_Ensure_native_tests_failure_is_correctly_reported_czyzm/ for the logs

PR is added to the queue for testing as 1. task. (e903f38)

Test (Success) 86453613 build is completed (e903f38)
See https://github.com/ThaliTester/TestResults/tree/86453613e903f38_Ensure_native_tests_failure_is_correctly_reported_czyzm/ for the logs

Test 86453613e903f38(e903f38) has successfully finished without an error
See https://github.com/ThaliTester/TestResults/tree/86453613e903f38_Ensure_native_tests_failure_is_correctly_reported_czyzm/ for the logs


Set-up Sendy

[x] Purchase license
[x] Set-up AWS account for SES
[x] Deploy to Linode
[x] Config setup
[x] Create template campaigns etc (avec campaigns@)
[x] Import users
[x] Setup Wordpress Extension

Hi Adam, how are we doing on this now?

this was done as part of launch.


Using os.path.expanduser to allow paths such as ~/test.png

Came across an issue where I couldn't use the path '~/Downloads/test.png' because Image.open() doesn't expand the user home dir symbol. Adding the use of os.path.expanduser keeps all the previous path functionality, but also enables the use of the users home dir as a valid path.

Thanks, didn't know this since currently not using linux


Typescript doesn't compile if component has no props

Vue version
3.2.37
Link to minimal reproduction
https://github.com/davidgiga1993/vue-ts-issue
Steps to reproduce

Create a new project using typescript as preset

vue create sample
cd sample
npm run serve

Edit the default HelloWorld component:
We remove the default msg property and add a single data item which gets used in a computed property

export default defineComponent({
  name: 'HelloWorld',
  data(){
    return {
      dataTest: false,
    }
  },
  computed: {
    test() {
      return this.dataTest;
    }
  }
});

Run the project: npm run serve

What is expected?
No errors, the component should just work
What is actually happening?
As soon as the component has no property anymore, any references to items defined in the data section doesn't work anymore:
ERROR in src/components/HelloWorld.vue:51:19
TS2339: Property 'dataTest' does not exist on type 'CreateComponentPublicInstance<{ [x: string & `on${string}`]: ((...args: any[]) => any) | undefined; } | { [x: string & `on${string}`]: ((..
.args: never) => any) | undefined; }, {}, {}, {}, {}, ComponentOptionsMixin, ... 11 more ..., {}>'.
  Property 'dataTest' does not exist on type '{ $: ComponentInternalInstance; $data: {}; $props: { [x: string & `on${string}`]: ((...args: any[]) => any) | undefined; } | { [x: string & `on${
string}`]: ((...args: never) => any) | undefined; }; ... 10 more ...; $watch(source: string | Function, cb: Function, options?: WatchOptions<...> | undefined): WatchStopHan...'.
    49 |   computed: {
    50 |     test() {
  > 51 |       return this.dataTest;
       |                   ^^^^^^^^
    52 |     }
    53 |   }
    54 | });

It doesn't matter which prop is set, you can just add a dummy
props: {
    anything: String
  },

and it will start working again
System Info
System:
    OS: Windows 10 10.0.19044
    CPU: (16) x64 11th Gen Intel(R) Core(TM) i7-11850H @ 2.50GHz
    Memory: 10.46 GB / 31.71 GB
  Binaries:
    Node: 16.14.0 - C:\Dev\node\node.EXE
    npm: 8.5.1 - C:\Dev\node\npm.CMD
  Browsers:
    Edge: Spartan (44.19041.1266.0), Chromium (104.0.1293.47)
    Internet Explorer: 11.0.19041.1566
  npmPackages:
    vue: ^3.2.13 => 3.2.37

Any additional comments?
No response

your problem is that you don't annotate the computed property's return type, which is required when using Options API & TS

your likely undelying problem is that you don't annotate the computed property's return type, which is required when using Options API & TS.
https://vuejs.org/guide/typescript/options-api.html#typing-computed-properties
Can'T 100% verify as I can't run the reproduction right now, but I'm willing to bet that it's this.

I just checked and you're correct, it does work when I provide a type for the computed property.
However: Why does it work when I have at least one - non related - property set? I would expect the error to either appear always or never since the prop has nothing todo with the rest.

That's kinda hard to figure out or explain. The typings for Option API's this are inherently circular: the type if this depends on the return values of  options like the computed properties, as those become properties on this, but the return type of your un-annotated computed property depends on the this type.
This generates a wide range of possible combinations of things that inherit from other things in a circular fashion which usually break the types if return annotations are not provided, but sometimes, TS can figure it out.


Support initcontainer logs

Is your feature request related to a problem? Please describe.
pod  can't view initcontainer logs, this feature is essential.

this enhancement commited at https://github.com/kubegems/dashboard/commit/a826e8691172925ad5c4072a19f0e58bdc45d14e

this enhancement commited at kubegems/dashboard@a826e86

👏🏻


WordPress DocBlock: inheritdoc should be supported

The DocBlock for decorators or classes that use interfaces for document a function normally is use;
/**
 * @inheritdoc
 */
public function save() { ... }

+1. Love to see this implemented, since it reduce a lot of comments when the plugin uses many inheritance.

We run into this as well. We got a lot of warnings about missing short descriptions where we're using @inheritDoc.

Unfortunately that's not reliably sniffable.
PHPCS scans files in an undetermined order and possibly in parallel when parallel scanning is enabled.
To be able to make exceptions for specific methods declared in interfaces we'd need to know in advance which methods are declared in which interface, as @inheritdoc should only be allowed for those specific methods.
Unfortunately we don't have access to that information at the start of the scan.
We could keep a cache of information building this up during the scan, but at any point in time, this cache will be incomplete and possibly unreliable with parallel scanning.
And even then, this cache would be incomplete in most cases, as you would normally not scan your vendor dependencies, while implementing an interface defined in one of those dependencies is quite common.
Allowing just any method in a class which implements to use @inheritdoc will result in a lot of missing documentation, so is something I would strongly discourage.

I guess you are mixing concepts here.
You could write this on a method

class myClass implements theValueOfX {
/**
 * Something that doesn't represent documentation.
 */
public function getTheValueOfX() { ... }
}

That PHP CS will pass without any issue. Still is missing documentation.
 Using @inheritDoc is not equal missing documentation, is the other way around is not causing more duplication or alteration on the documentation.

@killua99 Whether something is good or bad documentation is a whole other matter and most definitely outside of the scope of WPCS.

Using @inheritDoc is not equal missing documentation

It is when the method isn't inherited...

But, who is gonna use it, if the method isn't inherited?
That was my point perhaps I didn't explain me well.
You can't control what the code writer writes. If he place a wrong DocBlock on a method then how are you gonna control it anyway? Is the same as using this @inheritDoc outside an inherit method. I'm with you, is wrong yo use it outside an inheritDoc but on the case of inheritDoc like interfaces, abstraction etc ... is the right way of doing it.

@killua99 I'm not saying using @inheritDoc is wrong in the right circumstances. It's not.
All I'm saying is that within the constraints of using static analysis it is not easily possible to make an exception for it in a reliable manner.

Perhaps this is too old and not relevant. Feel free to close this issue


Opupgradefix

The image property is not properly set when running in shared cluster for upgrade tests. This fix looks for the presence of operatorImageName, and operatorImageTag regardless of where the test is running and then sets the image property in operatorMap.

Here is the external Jenkins test run results.
All tests
http://build.weblogick8s.org:8080/job/weblogic-kubernetes-operator-quicktest/797/testReport/
ItOperatorUpgrade tests alone.
http://build.weblogick8s.org:8080/job/weblogic-kubernetes-operator-quicktest/796/testReport/


namespace MvcMovie.Data not generated by dotnet-aspnet-codegenerator command

Hi,
I'm trying to follow the guideline using VScode but failed to continue on the MVC chapter part5.
The result of this command is different from the result in visual studio:
namespace MvcMovie.Data will not be generated in Data/MvcMovieContext.cs and using MvcMovie.Data; will not be generated in program.cs neither if I use the above command, it will also block me from following the guideline of next chapter since some compiling issues will be introduced to the project.

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

ID: 1d975a83-1550-b284-d0d8-7fe2ea206ff5
Version Independent ID: 48e81b42-7c2b-afbf-71e6-d4f442a4bd1f
Content: Part 4, add a model to an ASP.NET Core MVC app
Content Source: aspnetcore/tutorials/first-mvc-app/adding-model.md
Product: aspnet-core
Technology: aspnetcore-tutorials
GitHub Login: @Rick-Anderson
Microsoft Alias: riande

What NS is generated? You need to run this command from the project folder.

What NS is generated? You need to run this command from the project folder.

Hi @Rick-Anderson ,
Thanks for your reply. I can guarantee I run that command in the project folder with Program.cs.
No namespace was generated in the MvsMovieContext.cs, here is what I got:
Data\MvcMovieContext.cs
`#nullable disable
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.EntityFrameworkCore;
using MvcMovie.Models;
public class MvcMovieContext : DbContext
{
    public MvcMovieContext (DbContextOptions<MvcMovieContext> options)
        : base(options)
    {
    }

    public DbSet<MvcMovie.Models.Movie> Movie { get; set; }
}

**Program.cs**using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.DependencyInjection;
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddDbContext(options =>
options.UseSqlite(builder.Configuration.GetConnectionString("MvcMovieContext")));
// Add services to the container.
builder.Services.AddControllersWithViews();
var app = builder.Build();
// Configure the HTTP request pipeline.
if (!app.Environment.IsDevelopment())
{
app.UseExceptionHandler("/Home/Error");
// The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
app.UseHsts();
}
app.UseHttpsRedirection();
app.UseStaticFiles();
app.UseRouting();
app.UseAuthorization();
app.MapControllerRoute(
name: "default",
pattern: "{controller=Home}/{action=Index}/{id?}");
app.Run();
`

I have this exact same issue.  Those 2 lines Rick recommended did not change anything. I cannot continue in the tutorial because it relies on using MvcMovie.Data , how it states the namespace of it does not exist.

I have this exact same issue. Those 2 lines Rick recommended did not change anything. I cannot continue in the tutorial because it relies on using MvcMovie.Data , however it states the namespace of it does not exist.

Hi @MattMorris247 , yes this is an issue, I don't know why they still close this issue without verifying it. My suggestion is follow the Visual Studio track, at least using Visual Studio to redo the related sections, that will help you skip this issue and I've already tested.

I was able to get it to work with these steps:

I replaced my Data/MvcMovieContext.cs file with the code found in this section, which declares the MvcMovie.Data namespace
I then added using MvcMovie.Data; to every csharp file that referenced the MvcMovieContext class
It would still crash with the error: SQLite Error 1: 'no such table: Movie', so I had to manually create the table in DB Browser for SQLite:

CREATE TABLE "Movie" (
	"ID"	INTEGER NOT NULL,
	"Title"	TEXT,
	"ReleaseDate"	TEXT NOT NULL,
	"Genre"	TEXT,
	"Price"	TEXT,
	PRIMARY KEY("ID")
)

Once the table it ran and the Movies/Index page came up:

This is my first go‘round writing in C# and building a .NET MVC App, so I'm going to continue on with this Microsoft tutorial before going back and debugging further to see why the table did not generate on its own.
#

Current Working Environment:

.NET v6.0.401 (macOS)
VSCode v1.72.0 (macOS)
Chrome v105.0.5195.125 (x86_64)
MacOS Monterey 12.6


[Enhancement] Spark connector support cloud native table

Fixes #issue
What type of PR is this:

[ ] BugFix
[ ] Feature
[x] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Checklist:

[ ] I have added test cases for my bug fix or my new feature
[ ] This pr will affect users' behaviors
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

Bugfix cherry-pick branch check:

[x] I have checked the version labels which the pr will be auto-backported to the target branch

[x] 3.1
[x] 3.0
[ ] 2.5
[ ] 2.4

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

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
com/starrocks/http/rest/TableQueryPlanAction.java
1
1
100.00%
[]

@Mergifyio backport branch-3.1

@Mergifyio backport branch-3.0


Add documentation about AppSync support

add a section to the readme to track support for AWS AppSync and outline how it can be used with Cognito.
related to #209
Docs

Added details on how to use it with Cognito pools and instructions for a custom link for the other methods.

Note: I think the other authorization methods would be dead easy to implement. The only thing stopping me from doing it is that I don't have time to spin up several AppSync projects and test them against a Flutter app. If anyone feels like testing, I'll spin my project back up https://github.com/HoodHub/aws_appsync_auth_link_dart and create an AwsAuthLink for you to test. However, if no one feels like doing the testing, I think this add to the documentation is necessary for now. I spent 6 hours working on my own link for authorizing against Cognito pools until I figured out I could just pass in the JWT token. If someone tests and we get my project up, this documentation could be updated to say that AppSync is fully supported through that project.

:tada: This PR is included in version 3.1.0-beta.2 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

:tada: This PR is included in version 3.0.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


[Feature] Allow passing file to inference on

Problem
It may be necessary to repeat the same questions across many experiments. It is time consuming to copy paste line by line.
Feature
Allow passing path to jsonl file or similar that can be read and ran through the model then output to a results file

+1 to this, it would be so useful to leverage the dataset prompt generation logic to benchmark models on holdout dataset(s).

Hey @theobjectivedad , I have some unclean code which I just pushed to show you how this can be done.
https://github.com/OpenAccess-AI-Collective/axolotl/compare/main...NanoCode012:axolotl:feat/inference-file?expand=1
It uses --inference_file flag.
I will not merge this to current main as it was just a hack for my personal use.

Giant thank you @NanoCode012 ... I'll take a look!

@NanoCode012 - do you have plans to contribute this? No rush but if not, I may take a shot at it.

Hey @theobjectivedad , go for it! Just make sure that the new feature does not lose the current inference method.


helpers: stringify() 'log.level' as a top-level dotted field

per https://github.com/elastic/ecs-logging/pull/33
I need to get this in and publish a new helpers package before completing https://github.com/elastic/ecs-logging-js/pull/23

:green_heart: Build Succeeded

the below badges are clickable and redirect to their specific view in the CI or DOCS

Expand to view the summary

Build stats

Build Cause: Pull request #25 opened

Start Time: 2020-12-24T00:40:54.383+0000

Duration: 6 min 2 sec

Closing this in favour of https://github.com/elastic/ecs-logging-js/pull/27
I don't know why this one pushed to a branch on elastic/ecs-logging-js rather than my fork. I suspect I chose the wrong option when using gh pr create ....

Closing this in favour of https://github.com/elastic/ecs-logging-js/pull/27
I don't know why this one pushed to a branch on elastic/ecs-logging-js rather than my fork. I suspect I chose the wrong option when using gh pr create ....


Overhaul site planning document.

Focus currently is deleting absolutely irrelevant / incorrect content and including as many tidbits about OSG as possible.
The result is not pretty - it looks a bit like a wall of words. Diagrams need to be added back, as well as some tables to help illustrate the decision tree.
Have to start somewhere!  There are a lot of things I don't like about this rewrite, but there's less than what we started with.  We at least don't have to put up a warning to readers to not read the document.

@brianhlin - I'm merging this word wall over the existing "diagrams of wrongness" page.
Let's touch base with FKW and see if we can't get a few of the diagrams of site deploy options he uses in his various presentations and get them on this page.


Next versioning

next branch (contains apollo 3 update, i18n, react 16 || 17) - will be merged into master and deleded after 0.1.0 release
0.1.0 first version
independent
changelog file with highlights+incompatibilities in each package (copied into gh release)
merge all packages (except date+color picker + rte + stories) into one "@vivid-planet/react-admin"

done
done (not changed anyway)
#234

as 2. #234 (last commit)

all done...


Invalid argument: Invalid array length

Describe the bug
In the radar chart, if each item has the same value, the figure can be drawn at first, and then an error occurs
Here is the error message:
The following JSRangeError was thrown during paint():
Invalid argument: Invalid array length
The relevant error-causing widget was:
RadarChartLeaf
RadarChartLeaf:file:///Users/pjlincoln/.pub-cache/hosted/pub.flutter-io.cn/fl_chart-0.46.0/lib/src/chart/radar_chart/radar_chart.dart:39:12
When the exception was thrown, this was the stack:
dart-sdk/lib/_internal/js_dev_runtime/private/js_array.dart 83:30                 add]
packages/fl_chart/src/chart/radar_chart/radar_chart_painter.dart 97:12            drawTicks
packages/fl_chart/src/chart/radar_chart/radar_chart_painter.dart 58:5             paint
packages/fl_chart/src/chart/radar_chart/radar_chart_renderer.dart 86:13           paint
packages/flutter/src/rendering/object.dart 3059:7                                 [_paintWithContext]
packages/flutter/src/rendering/object.dart 253:12                                 paintChild
packages/flutter/src/rendering/proxy_box.dart 146:14                              paint
packages/flutter/src/rendering/object.dart 3059:7                                 [_paintWithContext]
packages/flutter/src/rendering/object.dart 253:12                                 paintChild
packages/flutter/src/rendering/box.dart 2879:14                                   defaultPaint
packages/flutter/src/rendering/flex.dart 1040:7                                   paint
packages/flutter/src/rendering/object.dart 3059:7                                 [_paintWithContext]
packages/flutter/src/rendering/object.dart 253:12                                 paintChild
packages/flutter/src/rendering/shifted_box.dart 74:14                             paint
packages/flutter/src/rendering/object.dart 3059:7                                 [_paintWithContext]
packages/flutter/src/rendering/object.dart 253:12                                 paintChild
packages/flutter/src/widgets/single_child_scroll_view.dart 535:16                 paintContents
packages/flutter/src/widgets/single_child_scroll_view.dart 549:9                  paint
packages/flutter/src/rendering/object.dart 3059:7                                 [_paintWithContext]
packages/flutter/src/rendering/object.dart 169:10                                 _repaintCompositedChild
packages/flutter/src/rendering/object.dart 112:5                                  repaintCompositedChild
packages/flutter/src/rendering/object.dart 1147:31                                flushPaint
packages/flutter/src/rendering/binding.dart 494:19                                drawFrame
packages/flutter/src/widgets/binding.dart 905:13                                  drawFrame
packages/flutter/src/rendering/binding.dart 358:5                                 [_handlePersistentFrameCallback]
packages/flutter/src/scheduler/binding.dart 1284:15                               [_invokeFrameCallback]
packages/flutter/src/scheduler/binding.dart 1214:9                                handleDrawFrame
packages/flutter/src/scheduler/binding.dart 1072:5                                [_handleDrawFrame]
lib/_engine/engine/platform_dispatcher.dart 1236:13                               invoke
lib/_engine/engine/platform_dispatcher.dart 244:5                                 invokeOnDrawFrame
lib/_engine/engine/initialization.dart 190:45
dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/operations.dart 367:37  _checkAndCall
dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/operations.dart 372:39  dcall
The following RenderObject was being processed when the exception was fired: RenderRadarChart#621b8 relayoutBoundary=up26:
creator: RadarChartLeaf ← RadarChart ← ConstrainedBox ← Expanded ← Row ← Padding ← FlChart ←
_SingleChildViewport ← IgnorePointer-[GlobalKey#8c707] ← Semantics ← Listener ← _GestureSemantics
← ⋯
parentData:  (can use size)
constraints: BoxConstraints(w=548.1, 280.0<=h<=600.0)
size: Size(548.1, 600.0)
This RenderObject has no descendants.
Versions
fl_chart: ^0.46.0
Flutter 3.10.0 • channel stable • https://github.com/flutter/flutter.git
Tools • Dart 3.0.0 • DevTools 2.23.1

Resolved. Just update the version to the latest one  --> (0.62.0)


feat(core,react): add targetActivityId property

Disclaimer: targetActivityId seems to be an ambiguous name because the history calibrator is not implemented yet.
Should we support the history calibrator in the future? Otherwise, allowedActivityId would be a more appropriate name.

How about automatically add targetActivityId from useStepFlow() hook?
export function useStepFlow() {
  const coreActions = useCoreActions();
  const activity = useActivity();

  return makeStepActions(() => coreActions, () => activity);
}


AuthenticationManager null in DefaultVaadinSharedSecurity

Hi.
First of all thanks for these great addons and extensions, just the things that people need!
I used Vaadin Shared security and copied the code from the example (the application class + loginUi).
However, after
        vaadinSecurity.login(userName.getValue(), passwordField.getValue(), rememberMe.getValue());

I have an exception being thrown from the DefaultVaadinSharedSecurity class (line 70).
Apparently authenticationManager is null.
I tried to implement AuthenticationManager interface and annotate it with @Component but it's the same behavior.
If I put the breakpoint in the afterPropertiesSet of the AbstractVaadinSecurity when authenticationManager there is an exception with the following message being thrown:
No qualifying bean of type [org.springframework.security.authentication.AuthenticationManager] is defined: expected single matching bean but found 2: authenticationManagerBean,authenticationManager
Am I doing something wrong?
Can you provide a bit more details what needs to be implemented and how to annotate it, compared to what you have in the example application?

I found some old code that was messing it up.
Sorry!


Linux bundle build failing

🐛 Bug
I know it probably doesn't get used much, but we should either fix the failing Linux bundle build, or skip it for now, since it will make all of our master branch tests look like they're failing.    best I can tell from the logs,  this might be an issue?
-- Running output plugin: appimage --
[appimage/stdout] Found appimagetool: /tmp/appimage_extracted_1cdfc4fa2d98741b846c2cf3d6a277cc/plugins/linuxdeploy-plugin-appimage/usr/bin/appimagetool
[appimage/stdout]
[appimage/stdout] WARNING: appstreamcli command is missing, please install it if you want to use AppStream metadata
[appimage/stderr] Running command: /tmp/appimage_extracted_1cdfc4fa2d98741b846c2cf3d6a277cc/plugins/linuxdeploy-plugin-appimage/usr/bin/appimagetool "/home/runner/work/napari/napari/linux/napari/napari.AppDir" "-g"
[appimage/stderr]
[appimage/stderr] appimagetool, continuous build (commit 8bbf694), build <local dev build> built on 2020-12-31 11:48:33 UTC
[appimage/stderr] More than one architectures were found of the AppDir source directory "/home/runner/work/napari/napari/linux/napari/napari.AppDir"
[appimage/stderr] A valid architecture with the ARCH environmental variable should be provided
[appimage/stderr] e.g. ARCH=x86_64 appimagetool ...
ERROR: Failed to run plugin: appimage (exit code: 1)
Error while building app napari.

cc @ziyangczi, @goanpeca

Looking into this, hopefully I can address the issue along with ubuntu version upgrade

I'll look into this!

I have also been trying to upgrade it to ubuntu 20 if not 18, the problem is that the build process fails and it looks like there is some graphics issue with connecting to the virtual monitor when doing so.


iputils: 20211215 -> 20221126

Description of changes
See https://github.com/iputils/iputils/releases/tag/20221126

Added documentation describing removed tools from the last iputils version
Remove Sun Microsystems License (is no longer "a dependency" with the 3 removed tools)

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.05 Release Notes (or backporting 22.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[ ] Fits CONTRIBUTING.md.

501+ rebuilds, let's target staging then

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-ready-for-review/3032/1686

Please remind me in a couple of days when no one else merges this until then


use latest actions versions

Currently github provided v3 of actions
https://github.com/actions/setup-node

Thank you


Support and test against ViewComponent 3

This pull request widens the gemspec version range and makes it possible to use view component 3 with no deprecation errors. Includes a single actions job to test against the new version so we can make sure changes are compatible with both versions for a while.

@marianayovcheva I've updated this so that everything including the demo app and design system docs are updated to support the latest view component.


docs Update 2.0.4 release note for Branch 2.0

Proposed changes
Issue Number: close #xxx

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall


[channel-client] Sketch out an integration test

This test checks if the channel client, provider and wallet all work together.
Advantages

runs in jest in 6 seconds, limited (I think) by downloading the wallet bundle
no puppeteer necessary
allowed me to catch some things that were unwittingly broken recently (fixed on this branch)
should be able to call channel-client methods, and make assertions about the responses / state of the channel-client.

Hacks

injecting web3 (similar to what we did in puppeteer)
polyfill for window.crypto (does not exist in jsdom, but ethers needs it).
needed a way to bypass the first user click to enable ethereum
I couldn't find a way to easily do these hacks inside the test script, so I had to conditionally modify the wallet itself 😟

Limitations

difficult to see how to test any workflow that involves user mouse clicks can be encapsulated by a test like this. The cross-origin security properties we enjoy mean we would probably need to go back to puppeteer for that.
OTOH: 💡  what if we  use the same origin for app and wallet, in the tests? i.e. embed the wallet in an iframe on the page where the wallet lives?
difficult to see how to integrate multiple apps and wallets that communicate (again we could go back to puppeteer). It's probably doable if we can put multiple iframes on one page (we might need to take a hacksaw to the channel-provider to do that)

TODO

[ ] integrate into a circle job (using something like start-servers)
[ ] expand coverage to channel-client.createChannel

Turns out you can click on things in the iframe, without needing to match the origin of the windows 🤷 .
Bit confused as to why this is possible, as apparently jsdom respects CORS https://github.com/jsdom/jsdom/issues/1941.