Theme not updating correctly with Chrome in dark mode

Hi,
I have dark theme set for Windows and as such, Chrome is always in dark mode. I have set the automation mentioned in the setup to switch between the light and dark themes depending on the sun's position. However, during the day, light theme is not displayed correctly and is basically dark with light shadows:

Is there a way around this?
By the way, "Backend-selected" is selected under profile>Theme
Thanks

In your case, since Chrome remains in dark theme, you would need to set up a manual automation switching between themes. Check the Alternative Automation section in the Theme Automation section.

In your case, since Chrome remains in dark theme, you would need to set up a manual automation switching between themes. Check the Alternative Automation section in the Theme Automation section.

I think you need to do the regular setup method.

I think you need to do the regular setup method.

In your case, since Chrome remains in dark theme, you would need to set up a manual automation switching between themes. Check the Alternative Automation section in the Theme Automation section.

The Alternative Automation is what I currently have.

In your case, since Chrome remains in dark theme, you would need to set up a manual automation switching between themes. Check the Alternative Automation section in the Theme Automation section.

The Alternative Automation is what I currently have.

I think you need to do the regular setup method, if you want to change themes based on system dark mode.

Could you clarify what you mean by regular setup?

I think you need to do the regular setup method, if you want to change themes based on system dark mode.

Could you clarify what you mean by regular setup?

@backslashV did you use the blueprint or the automation? Would you mind sharing your code. Thanks

@backslashV did you use the blueprint or the automation? Would you mind sharing your code. Thanks

@backslashV did you use the blueprint or the automation? Would you mind sharing your code. Thanks

I used the automation.
alias: Set theme
description: Set light/dark theme at sunrise/sunset
trigger:
  - platform: homeassistant
    event: start
  - platform: state
    entity_id: sun.sun
action:
  - choose:
      - conditions:
          - condition: state
            entity_id: sun.sun
            state: above_horizon
        sequence:
          - service: frontend.set_theme
            data:
              name: clear
      - conditions:
          - condition: state
            entity_id: sun.sun
            state: below_horizon
        sequence:
          - service: frontend.set_theme
            data:
              name: slate
mode: single

@backslashV did you use the blueprint or the automation? Would you mind sharing your code. Thanks

I used the automation.
alias: Set theme
description: Set light/dark theme at sunrise/sunset
trigger:
  - platform: homeassistant
    event: start
  - platform: state
    entity_id: sun.sun
action:
  - choose:
      - conditions:
          - condition: state
            entity_id: sun.sun
            state: above_horizon
        sequence:
          - service: frontend.set_theme
            data:
              name: clear
      - conditions:
          - condition: state
            entity_id: sun.sun
            state: below_horizon
        sequence:
          - service: frontend.set_theme
            data:
              name: slate
mode: single

It seems like you would need to use this instead:
- alias: Set theme
  description: Set light/dark theme at sunrise/sunset
  trigger:
    - platform: homeassistant
      event: start
    - platform: state
      entity_id: sun.sun
  action:
    - choose:
        - conditions:
            - condition: state
              entity_id: sun.sun
              state: above_horizon
          sequence:
            - service: frontend.set_theme
              data:
                name: clear
        - conditions:
            - condition: state
              entity_id: sun.sun
              state: below_horizon
          sequence:
            - service: frontend.set_theme
              data:
                name: slate
  mode: single

It seems like you would need to use this instead:
- alias: Set theme
  description: Set light/dark theme at sunrise/sunset
  trigger:
    - platform: homeassistant
      event: start
    - platform: state
      entity_id: sun.sun
  action:
    - choose:
        - conditions:
            - condition: state
              entity_id: sun.sun
              state: above_horizon
          sequence:
            - service: frontend.set_theme
              data:
                name: clear
        - conditions:
            - condition: state
              entity_id: sun.sun
              state: below_horizon
          sequence:
            - service: frontend.set_theme
              data:
                name: slate
  mode: single

Oh. I pasted the YAML from the automations page not from automations.yaml.

Oh. I pasted the YAML from the automations page not from automations.yaml.

Interesting. Do you want the theme to stay dark on the Windows machine or do you want it to switch to a light theme during the day? If the themes are installed and the automation is set up properly. The Clear theme should be set during the day and the Slate theme should be set during the night regardless if the system is always in dark mode. Are the themes in the APP custom themes or default HA themes? I would encourage you to try out @KTibow 's blueprint

Interesting. Do you want the theme to stay dark on the Windows machine or do you want it to switch to a light theme during the day? If the themes are installed and the automation is set up properly. The Clear theme should be set during the day and the Slate theme should be set during the night regardless if the system is always in dark mode. Are the themes in the APP custom themes or default HA themes? I would encourage you to try out @KTibow 's blueprint

Yes, light theme during the day and dark at night. The two themes are located in config/themes/.
I just tried the blueprint and the issue persists. I manually set sun.sun to above_horizon and the theme stayed dark but the shadows got white.

Yes, light theme during the day and dark at night. The two themes are located in config/themes/.
I just tried the blueprint and the issue persists. I manually set sun.sun to above_horizon and the theme stayed dark but the shadows got white.

You said that on the APP it works, is it just the default HA themes or the custom ones? Can you also try setting your themes manually via the Developer Tools?

You said that on the APP it works, is it just the default HA themes or the custom ones? Can you also try setting your themes manually via the Developer Tools?

The app just mirrors whatever theme I've set on desktop and they are the same custom ones: clear and slate. Setting theme from developer tools doesn't seem to do anything.

Changing the theme from profile>Theme works though.

The app just mirrors whatever theme I've set on desktop and they are the same custom ones: clear and slate. Setting theme from developer tools doesn't seem to do anything.

Changing the theme from profile>Theme works though.

That would be why your automations don't work. Developer tools should be able to set the themes. Make sure you have the right theme and the exact same name (case sensitive) matching with what is in the theme YAML. Try reinstalling the theme, restarting, and refreshing.

That would be why your automations don't work. Developer tools should be able to set the themes. Make sure you have the right theme and the exact same name (case sensitive) matching with what is in the theme YAML. Try reinstalling the theme, restarting, and refreshing.

Setting the theme through developer tools works fine in the Android app. When I set the light theme there, the app UI reflects my selection, but Chrome on desktop and the iOS app still show the dark theme. Interestingly, when I do the same in developer tools on the iPad app or Chrome, their UI doesn't update, but the Android app's does.

Setting the theme through developer tools works fine in the Android app. When I set the light theme there, the app UI reflects my selection, but Chrome on desktop and the iOS app still show the dark theme. Interestingly, when I do the same in developer tools on the iPad app or Chrome, their UI doesn't update, but the Android app's does.

Can you make sure again you have the Backend-selected option set for you desktop and iOS user.

Can you make sure again you have the Backend-selected option set for you desktop and iOS user.

Yes, Backend-selected is chosen everywhere.

Yes, Backend-selected is chosen everywhere.

I just found out something. When I select "Light" from Windows settings, Chrome behaves fine and responds to theme changes. When Windows is set to Dark, HA behaves that way. Maybe, it's a Chrome issue and the way it renders colors based on its own theme.

I just found out something. When I select "Light" from Windows settings, Chrome behaves fine and responds to theme changes. When Windows is set to Dark, HA behaves that way. Maybe, it's a Chrome issue and the way it renders colors based on its own theme.

 I just tested it out on my Windows machine. It was working fine before, however, as soon as I set a default mode: dark theme. The device would be "stuck" in the dark theme so long my system was in the dark mode. I think to solve this problem we would just have to figure out a way to undo or disable the HA automatic dark mode function...

 I just tested it out on my Windows machine. It was working fine before, however, as soon as I set a default mode: dark theme. The device would be "stuck" in the dark theme so long my system was in the dark mode. I think to solve this problem we would just have to figure out a way to undo or disable the HA automatic dark mode function...

I think if you call the service two times, once with mode: light and once with mode: dark it might work. Just guessing though.

I think if you call the service two times, once with mode: light and once with mode: dark it might work. Just guessing though.

 I just tested it out on my Windows machine. It was working fine before, however, as soon as I set a default mode: dark theme. The device would be "stuck" in the dark theme so long my system was in the dark mode. I think to solve this problem we would just have to figure out a way to undo or disable the HA automatic dark mode function...
Edit: This seems to be exactly because of the issue here, however, there doesn't seem to be a fix 😕

Precisely.

 I just tested it out on my Windows machine. It was working fine before, however, as soon as I set a default mode: dark theme. The device would be "stuck" in the dark theme so long my system was in the dark mode. I think to solve this problem we would just have to figure out a way to undo or disable the HA automatic dark mode function...
Edit: This seems to be exactly because of the issue here, however, there doesn't seem to be a fix 😕

Precisely.

I think if you call the service two times, once with mode: light and once with mode: dark it might work. Just guessing though.

Nope, it doesn't work.

I think if you call the service two times, once with mode: light and once with mode: dark it might work. Just guessing though.

Nope, it doesn't work.

Actually, I think we've gotten distracted from the main subject

light theme is not displayed correctly and is basically dark with light shadows

I can help you with this. First of all, what themes are you using?

Actually, I think we've gotten distracted from the main subject

light theme is not displayed correctly and is basically dark with light shadows

I can help you with this. First of all, what themes are you using?

I am using the clear and the slate themes. I believe you want to modify the box-shadow element of the CSS code which is based on the sun's position?

I am using the clear and the slate themes. I believe you want to modify the box-shadow element of the CSS code which is based on the sun's position?

Okay. Could you post the source code of the themes? I'll modify them, and then you can paste the code back in. This will require you to change the code in all of your cards.

Okay. Could you post the source code of the themes? I'll modify them, and then you can paste the code back in. This will require you to change the code in all of your cards.

I think @backslashV's problem is just with theme switching. @backslashV's machine is always in a system dark mode, hence HA is always using the dark mode theme. However @backslashV would like to use the Clear theme during the day. I think everytime the automation sets the theme, by specifying that the theme is both for dark and light mode should temperarily solve the issue:
- id: theme_routine
  alias: Theme Routine
  description: "Theme routine."
  trigger:
  - platform: homeassistant
    event: start
  - platform: state
    entity_id: sun.sun
  action:
  - choose:
    - conditions:
      - condition: state
        entity_id: sun.sun
        state: "above_horizon"
      sequence:
      - service: frontend.set_theme
        data:
          name: clear
          mode: light
      - service: frontend.set_theme
        data:
          name: clear
          mode: dark
    - conditions:
      - condition: state
        entity_id: sun.sun
        state: "below_horizon"
      sequence:
      - service: frontend.set_theme
        data:
          name: slate
          mode: light
      - service: frontend.set_theme
        data:
          name: slate
          mode: dark

I think @backslashV's problem is just with theme switching. @backslashV's machine is always in a system dark mode, hence HA is always using the dark mode theme. However @backslashV would like to use the Clear theme during the day. I think everytime the automation sets the theme, by specifying that the theme is both for dark and light mode should temperarily solve the issue:
- id: theme_routine
  alias: Theme Routine
  description: "Theme routine."
  trigger:
  - platform: homeassistant
    event: start
  - platform: state
    entity_id: sun.sun
  action:
  - choose:
    - conditions:
      - condition: state
        entity_id: sun.sun
        state: "above_horizon"
      sequence:
      - service: frontend.set_theme
        data:
          name: clear
          mode: light
      - service: frontend.set_theme
        data:
          name: clear
          mode: dark
    - conditions:
      - condition: state
        entity_id: sun.sun
        state: "below_horizon"
      sequence:
      - service: frontend.set_theme
        data:
          name: slate
          mode: light
      - service: frontend.set_theme
        data:
          name: slate
          mode: dark

@N-l1 here's my interpretation:
On most devices, they want the theme to switch between on and off based on whether the sun is up or down.
However on one device it's always dark, and they want the shadows to stay that way.
Here's my fix:
Add a custom theme variable to the day and night theme. Then reference that variable instead of using sun.sun.

@N-l1 here's my interpretation:
On most devices, they want the theme to switch between on and off based on whether the sun is up or down.
However on one device it's always dark, and they want the shadows to stay that way.
Here's my fix:
Add a custom theme variable to the day and night theme. Then reference that variable instead of using sun.sun.

I think @backslashV's problem is just with theme switching. @backslashV's machine is always in a system dark mode, hence HA is always using the dark mode theme. However @backslashV would like to use the Clear theme during the day.
I think everytime the automation sets the theme, by specifying that the theme is both for dark and light mode should temperarily solve the issue:
- id: theme_routine
  alias: Theme Routine
  description: "Theme routine."
  trigger:
  - platform: homeassistant
    event: start
  - platform: state
    entity_id: sun.sun
  action:
  - choose:
    - conditions:
      - condition: state
        entity_id: sun.sun
        state: "above_horizon"
      sequence:
      - service: frontend.set_theme
        data:
          name: clear
          mode: light
      - service: frontend.set_theme
        data:
          name: clear
          mode: dark
    - conditions:
      - condition: state
        entity_id: sun.sun
        state: "below_horizon"
      sequence:
      - service: frontend.set_theme
        data:
          name: slate
          mode: light
      - service: frontend.set_theme
        data:
          name: slate
          mode: dark

This solves the issue. Thank you everyone for your time.

I think @backslashV's problem is just with theme switching. @backslashV's machine is always in a system dark mode, hence HA is always using the dark mode theme. However @backslashV would like to use the Clear theme during the day.
I think everytime the automation sets the theme, by specifying that the theme is both for dark and light mode should temperarily solve the issue:
- id: theme_routine
  alias: Theme Routine
  description: "Theme routine."
  trigger:
  - platform: homeassistant
    event: start
  - platform: state
    entity_id: sun.sun
  action:
  - choose:
    - conditions:
      - condition: state
        entity_id: sun.sun
        state: "above_horizon"
      sequence:
      - service: frontend.set_theme
        data:
          name: clear
          mode: light
      - service: frontend.set_theme
        data:
          name: clear
          mode: dark
    - conditions:
      - condition: state
        entity_id: sun.sun
        state: "below_horizon"
      sequence:
      - service: frontend.set_theme
        data:
          name: slate
          mode: light
      - service: frontend.set_theme
        data:
          name: slate
          mode: dark

This solves the issue. Thank you everyone for your time.

@KTibow that's actually a great idea! I think we should probably update our code to use a custom theme variable instead of using the sun which would cause issues as you mentioned. However I think @backslashV just wanted to be able to switch to the Clear theme when Chrome is in dark mode.

@KTibow that's actually a great idea! I think we should probably update our code to use a custom theme variable instead of using the sun which would cause issues as you mentioned. However I think @backslashV just wanted to be able to switch to the Clear theme when Chrome is in dark mode.


Introduce new suspend

Currently, ZIO.suspend assumes the effect is total, but that's not necessarily the case.
We should have:

ZIO.suspendWith(p: Platform => TaskR[...]): TaskR[...]
ZIO.suspendTotalWith(p: Platform => ZIO[...]): ZIO[...]
ZIO.suspend(taskr: => TaskR[...]): TaskR[...]
ZIO.suspendTotal(zio: => ZIO[...]): ZIO[...]

This matches the convention for effect / effectTotal and will be a good default choice (I saw code in the wild using suspend and incorrectly assuming partial effects).
This will require 1 new operation added (SuspendTotal), co-opting the existing Suspend into the partial suspend, and changing type signatures as appropriate.
In addition, the operations should be available in IO, Task, TaskR, and the pure ones (Total) can be available in UIO.

I would like to pick up this issue.

We should have:

ZIO.suspendWith(p: Platform => TaskR[...]): TaskR[...]
ZIO.suspendTotalWith(p: Platform => ZIO[...]): ZIO[...]
ZIO.suspend(taskr: => TaskR[...]): TaskR[...]
ZIO.suspendTotal(zio: => ZIO[...]): ZIO[...]

@jdegoes, could you perhaps help to clarify? Following the effect / effectTotal convention I came up with the following signatures...
suspendWith[R >: LowerR, E <: UpperE, A](p: Platform => ZIO[R, E, A]): ZIO[R, E, A]
suspendTotalWith[A](p: Platform => UIO[A]): UIO[A]
suspend[R >: LowerR, E <: UpperE, A](zio: => ZIO[R, E, A]): ZIO[R, E, A]
suspendTotal[A](uio: => UIO[A]): UIO[A]

Thanks!

The correct signatures will be as follows:
suspendWith[A](p: Platform => Task[A]): Task[A]
suspend[A](task: => Task[A]): Task[A] = suspendWith(_ => task)

suspendTotalWith[A](p: Platform => UIO[A]): UIO[A]
suspendTotal[A](uio: => UIO[A]): UIO[A] = suspendTotalWith(_ => uio)

The suspendTotal[With] constructors (the functions passed to these functions) are not allowed to throw exceptions; while the suspend[With] constructors (the functions passed to these functions) are allowed to throw Throwable, and such Throwable will be reflected in the return type.
You can see the similar distinction between effect and effectTotal today.
Does this make sense? 😄

It does, partially :) Agreed on suspendTotal  and suspendTotalWith.
I understand why effect produces Task[A](no environment available), but as for suspend wouldn't a more general signature look like suspend[R >: LowerR, A](taskr: => TaskR[R, A]): TaskR[R, A]?

 Also we could do ZIO[R, Nothing, A] for the other one (total variants).

OK, thanks for a quick clarification :)

ZIO.suspend is currently used in places with a generic error type E. Example: FunctionIO.scala:215-223:
  private[zio] final class Impure[E, A, B](val apply0: A => B) extends FunctionIO[E, A, B] {
    val run: A => IO[E, B] = a =>
      IO.suspend {
        try IO.succeed[B](apply0(a))
        catch {
          case e: FunctionIOError[_] => IO.fail[E](e.unsafeCoerce[E])
        }
      }
  }

The proposed new (restictive) signature of ZIO.suspend
suspend[R, A](task: => TaskR[R, A]): TaskR[R, A]

does not cut it.
Conceptually, keeping the current implementation
suspend[R, E, A](zio: => ZIO[R, E, A]): ZIO[R, E, A]

makes more sense to me.

For consistency, we need to prefix these methods by effect, e.g. effectSuspend.
This means deprecating existing suspend.

I am not sure if #926 is right (with regard to the error type). Current
effectSuspend(zio: => ZIO[R, E, A]): ZIO[R, E, A]

is as generic as possible, but effectSuspendhandles throwables, not generic Es.
On the other hand,
effectSuspend[R, A](task: => TaskR[R, A]): TaskR[R, A]

does not work for current FunctionIO.Impure implemenation (generic E):
private[zio] final class Impure[E, A, B](val apply0: A => B) extends FunctionIO[E, A, B] {
    val run: A => IO[E, B] = a =>
      IO.suspend {
        try IO.succeed[B](apply0(a))
        catch {
          case e: FunctionIOError[_] => IO.fail[E](e.unsafeCoerce[E])
        }
      }
  }

Closed by #926


prefer-starts-ends-with rule

.startsWith instead of:

foo.indexOf('bar') === 0
foo[0] === 'b'
foo.slice(0, 2) === 'bar' (and .substring & .substr)
/^bar/.test(foo) (and .match())

.endsWith instead of:

.lastIndexOf
foo[foo.length - 1] === 'r'
foo.slice(0, -3) === 'bar' (and .substring & .substr)
/bar$/.test(foo) (and .match())

The regex case is especially useful as I've seen a lot of regexes used in this scenario.

You'd have to infer that foo is a string, which is hard :/

Indeed. Wish ESLint had some kind of type inference analysis...
At least with the regex case you can safely assume a string. So maybe just that for now?

Yeah, but much less interesting ^^'
(and it only applies when Regex is case sensitive too...)

Hi! I am new here. Can I try to take care of this one?

@anglee Yes. Go ahead!
Check out this quick guide on how to get started. Let us know if you have any questions. Have fun :)


tfw Jack doesn't know how to license properly

(As a small footnote, please don't remove my name and the donation address from the help command. I know that you are totally allowed to change anything you want under this licensing, but I would like to keep my username attatched to the bot. IDC if you change or add anything else though.)
ni🅱🅱a
You're describing a Creative Commons Attribution 4.0 International (CC BY 4.0) License
(Here's a Human-Readable copy)
The CC BY 4.0 License allows an individual to:

Share, copy, and redistribute the material in any medium or format
Adapt, remix, transform, and build upon the material
for any purpose, even commercially.

While still explicitly requiring credit to the original creator as you described by saying:
...I would like to keep my username attatched to the bot. IDC if you change or add anything else though.
To change to the CC BY 4.0 License, just edit the LICENSE.md file and copy the legal text of the licenseand saving it while notifying individuals by posting "This work is licensed under a Creative Commons Attribution 4.0 International License." in the README.md file.

gg

Actually, I believe I'm still forced to distribute it under under BSD-3 Clause because it's what FIGlet uses. I just added that string in as a way for end users to see that I wrote the bot without needing to read my copyright in the license. Feel free to correct me if I am wrong but that about footer could be removed.

I understand your reasoning. Although according to the BSD-3-Clause license:

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

Your script obviously isn't a binary so this does not apply here.

Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

I highly doubt you'd do this, so we're good here too.
So, according to the license, since you are not redistributing in whole or part any of FIGlet's source code or modifying it in any way, only interfacing with it through a Python script, you should be able to re-license your new version of software under CC-BY-4.0 since you are not breaking any of the three clauses  stated in the license.


Sending syslog data

Have a bit of a challenge getting syslog data to send through telemetry.  This is working via QA devices that previously had the legacy Splunk iApp installed.  Through telemetry I was able to get one system to work via a mix of configuration of the legacy iApp and the Event Listener class documentation however, this only works on one device in a pair.

Please resubmit your issue following one of the provided templates: https://github.com/F5Networks/f5-telemetry-streaming/issues/new/choose


Removing relation child while updating nullable fk as None

Fixes #1229
Removing relation child while updating nullable fk as None in descriptors.py->RelationDescriptor
Ran the test cases locally using pytest -svv --cov=ormar --cov=tests --cov-fail-under=100 --cov-report=term-missing
All test cases passed

Codecov Report

Merging #1230 (7c2954d) into master (11b3e85) will not change coverage.
The diff coverage is 100.00%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files

@@            Coverage Diff            @@
##            master     #1230   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files          201       201
  Lines        16647     16649    +2
=========================================
+ Hits         16647     16649    +2

Files
Coverage Δ

ormar/models/descriptors/descriptors.py
100.00% <100.00%> (ø)

@collerek please merge this if everything looks fine


Added MIN, MAX and AVG to modes dropdown of aggregation by category

Closes #7518

CR @xavijam

Could you add the internationalization? :)

Sure!


folderNotFound error

How did you install the Amplify CLI?
npm
If applicable, what version of Node.js are you using?
v18.18.0
Amplify CLI Version
12.5.0
What operating system are you using?
Mac
Did you make any manual changes to the cloud resources managed by Amplify? Please describe the changes made.
No
Describe the bug
When I run amplify pull for my data model it gives me errors and won't import the data models.
Expected behavior
I expected the data models to be imported to the Xcode
Reproduction steps

Run amplify pull --appId ############ --envName staging

Project Identifier
5632b9076feef78dee88d4ea2f8af772
Log output

# Put your logs below this line

Additional information
No response
Before submitting, please confirm:

[X] I have done my best to include a minimal, self-contained set of instructions for consistently reproducing the issue.
[X] I have removed any sensitive information from my code snippets and submission.

Hey @DiegoMene20 :wave: thanks for raising this! From the error message it sounds like this may be a duplicate of https://github.com/aws-amplify/amplify-cli/issues/13201, can you confirm this is the case?

Yes it does seem like a duplicate. I am
Having the same issue.

Thanks for confirming @DiegoMene20 I'll close this in favor of tracking the existing item. Although a bit concerning, this error pops up after the actual operation has completed (i.e. amplify pull), so this can largely be ignored as you work on your app.


Some error and warning logs when navigating to the checkout page

I saw some errors and warnings when navigating to the checkout page. Then, when I clicked the pay button, nothing happened.
Steps to produce

Add a product to the cart
Click the cart button on the nav bar
Redirect to the checkout page
Open dev tool and check the logs

Storefront is no longer part of the platform, so I'm closing this. Please report related problems in the project's repository.


[Feat] : added code example of closure

Thanks for the contribution, please update your PR following contribution guidelines from here.
These steps are necessary in order to generate and update pdf file and webpage.

Merging with the changes, and will generate build in my local.


Improved error handling for HMC errors

coverage: 25.265% (-0.5%) from 25.719% when pulling 9cb3154e1b72451e84b8a3ab14294c2e523b35f6 on andy/improve-startup-error-handling into 9c397efccd6dbda5a013776197ec0638e3826026 on master.


Fix charts for new data format

The x-axis labels look awkward on the right because the API is now giving us 29 days of data instead of 30...

Last commit re-adds the chart legend. I think it's best to show no legend for the positivity chart because the chat title tells you all you need to know - but let's see what they say


tidy up examples

Lots of the examples had a test to see if they were being run inside the CI. Here, this function is brought into simsopt.util as a new variable in_github_actions so it doesn't need to be implemented in every example. Also, many of the MPI examples printed messages on every process, rather than just on process 0, or had their own function defined to print only on proc 0. This is fixed/streamlined now using a new function simsopt.util.proc0_print() which is like print() but only on proc 0, which all the relevant examples now use. Also some imports are tidied up and documentation has been added in some examples.

Agreed. The proc0 print function is really handy. Every script of mine had a redefined print function checking for the mpi processor that can now be streamlined.


Retrieving image: Unpack freezes at 100%

@stgraber I have experienced what you mentioned with image unpack freezing on Cmd.Wait() even though the unpack process has gone.
Kernel: 5.4.0-107-generic
OS: Ubuntu Focal
Go: 1.18
Storage pool driver: dir
Instance type: VM
Command being run:
lxc init images:ubuntu/20.04/cloud v1 --vm -s vmpool5321
Creating v1
Retrieving image: Unpack: 100% (2.21GB/s)

pprof shoes this go routine waiting in the Go stdlib's os/exec.(*Cmd).Wait function:
goroutine 91664 [chan receive, 7 minutes]:
os/exec.(*Cmd).Wait(0xc0011889a0)
	/snap/go/9415/src/os/exec/exec.go:515 +0x188
os/exec.(*Cmd).Run(0x1845584?)
	/snap/go/9415/src/os/exec/exec.go:341 +0x39
github.com/lxc/lxd/shared.RunCommandSplit({0x0?, 0x0, 0x0}, {0x0, 0x0, 0x0}, {0x1845584, 0x8}, {0xc0004401f8, 0x8, ...})
	/build/lxd/parts/lxd/src/shared/util.go:895 +0x1b3
github.com/lxc/lxd/shared.RunCommand(...)
	/build/lxd/parts/lxd/src/shared/util.go:912
github.com/lxc/lxd/lxd/storage.ImageUnpack.func1({{0xc001486be8, 0x2}, {0xc00056a406, 0xa}, 0xc0014fe9f0, {0x185fadb, 0x10}, {0x1838e00, 0x5}, 0xc0014fe990, ...}, ...)
	/build/lxd/parts/lxd/src/lxd/storage/utils.go:468 +0xc89
github.com/lxc/lxd/lxd/storage.ImageUnpack({0xc0011829c0, 0x60}, {{0xc001486be8, 0x2}, {0xc00056a406, 0xa}, 0xc0014fe9f0, {0x185fadb, 0x10}, {0x1838e00, ...}, ...}, ...)
	/build/lxd/parts/lxd/src/lxd/storage/utils.go:486 +0x87e
github.com/lxc/lxd/lxd/storage.(*lxdBackend).imageFiller.func1({{0xc001486be8, 0x2}, {0xc00056a406, 0xa}, 0xc0014fe9f0, {0x185fadb, 0x10}, {0x1838e00, 0x5}, 0xc0014fe990, ...}, ...)
	/build/lxd/parts/lxd/src/lxd/storage/backend_lxd.go:1543 +0x271
github.com/lxc/lxd/lxd/storage/drivers.(*common).runFiller(0x0?, {{0xc001486be8, 0x2}, {0xc00056a406, 0xa}, 0xc0014fe9f0, {0x185fadb, 0x10}, {0x1838e00, 0x5}, ...}, ...)
	/build/lxd/parts/lxd/src/lxd/storage/drivers/driver_common.go:256 +0x331
github.com/lxc/lxd/lxd/storage/drivers.(*dir).CreateVolume(0xc000cb8be0, {{0xc001486be8, 0x2}, {0xc00056a406, 0xa}, 0xc0014fe9f0, {0x185fadb, 0x10}, {0x1838e00, 0x5}, ...}, ...)
	/build/lxd/parts/lxd/src/lxd/storage/drivers/driver_dir_volumes.go:58 +0x44d
github.com/lxc/lxd/lxd/storage.(*lxdBackend).CreateInstanceFromImage(0xc000a6fec0, {0x1b65718, 0xc000d14000}, {0xc0003357c0, 0x40}, 0x0?)
	/build/lxd/parts/lxd/src/lxd/storage/backend_lxd.go:1594 +0x923
main.instanceCreateFromImage(_, _, {0x0, {0x0, 0x0}, 0x1, 0x0, {0x183fa4e, 0x7}, {0xc0003357c0, ...}, ...}, ...)
	/build/lxd/parts/lxd/src/lxd/instance.go:167 +0xc55
main.createFromImage.func1(0xc0007f5320?)
	/build/lxd/parts/lxd/src/lxd/instances_post.go:131 +0x7d3
github.com/lxc/lxd/lxd/operations.(*Operation).Run.func1(0xc0007f5320, 0xc0008f5880?)
	/build/lxd/parts/lxd/src/lxd/operations/operations.go:280 +0x42
created by github.com/lxc/lxd/lxd/operations.(*Operation).Run
	/build/lxd/parts/lxd/src/lxd/operations/operations.go:279 +0x118

and also apparently related (has same run time and is to do with exec):
goroutine 92818 [IO wait, 7 minutes]:
internal/poll.runtime_pollWait(0x7fe9882f5778, 0x72)
	/snap/go/9415/src/runtime/netpoll.go:302 +0x89
internal/poll.(*pollDesc).wait(0xc000973680?, 0xc000d90600?, 0x1)
	/snap/go/9415/src/internal/poll/fd_poll_runtime.go:83 +0x32
internal/poll.(*pollDesc).waitRead(...)
	/snap/go/9415/src/internal/poll/fd_poll_runtime.go:88
internal/poll.(*FD).Read(0xc000973680, {0xc000d90600, 0x200, 0x200})
	/snap/go/9415/src/internal/poll/fd_unix.go:167 +0x25a
os.(*File).read(...)
	/snap/go/9415/src/os/file_posix.go:31
os.(*File).Read(0xc000010850, {0xc000d90600?, 0x17841c0?, 0xc00060e6a0?})
	/snap/go/9415/src/os/file.go:119 +0x5e
bytes.(*Buffer).ReadFrom(0xc00047da40, {0x1b450e0, 0xc000010850})
	/snap/go/9415/src/bytes/buffer.go:204 +0x98
io.copyBuffer({0x1b401a0, 0xc00047da40}, {0x1b450e0, 0xc000010850}, {0x0, 0x0, 0x0})
	/snap/go/9415/src/io/io.go:412 +0x14b
io.Copy(...)
	/snap/go/9415/src/io/io.go:385
os/exec.(*Cmd).writerDescriptor.func1()
	/snap/go/9415/src/os/exec/exec.go:311 +0x3a
os/exec.(*Cmd).Start.func1(0xc00062d550?)
	/snap/go/9415/src/os/exec/exec.go:441 +0x25
created by os/exec.(*Cmd).Start
	/snap/go/9415/src/os/exec/exec.go:440 +0x715

From looking at what ImageUnpack does on line 468, its running qemu-img dd.

We only started seeing this when switching to Go 1.18 so suspect a Go bug.

The issue has disappeared after I moved the disk hotplug test to the last thing we run in this particular CI test.
So this suggests that the disk hotplug test is somehow triggering something weird inside of LXD or the kernel.

@stgraber I've got a minimal reproducer of sorts that runs on standalone LXD on Go 1.18 and Jammy kernel.
#!/bin/bash
set -ex

waitVMAgent() (
 echo "waiting for vm agent"
  set +x
  local vmName=$1
  for i in $(seq 90) # Wait up to 90s.
  do
    if lxc info "${vmName}" | grep -qF <IP_ADDRESS>; then
      return 0 # Success.
    fi

    sleep 1
  done

  echo "VM ${vmName} agent not running after ${i}s"
  return 1 # Failed.
)

truncate -s 5m "/home/user/disk.img"
lxc launch images:ubuntu/20.04 v1 --vm -s default
waitVMAgent v1
lxc exec v1 -- whoami

# Hotplug disks
lxc config device add v1 block1 disk source="/home/user/disk.img" readonly=true
sleep 3
[ "$(lxc exec v1 -- cat /sys/block/sdb/ro)" -eq 1 ]
lxc config device set v1 block1 readonly=false
sleep 3
[ "$(lxc exec v1 -- cat /sys/block/sdb/ro)" -eq 0 ]

lxc delete -f v1
rm "/home/user/disk.img"

lxc init images:ubuntu/20.04 v1 --vm -s default
lxc start v1
waitVMAgent v1
lxc info v1
lxc delete -f v1

I've observed that quite often the lxc exec v1 -- cat /sys/block/sdb/ro or lxc delete -f v1 commands will fail abruptly with errors like:
Error: websocket: close 1006 (abnormal closure): unexpected EOF

My gut feeling here is that the disk hotplug code is playing fast and loose with FDs being passed to QEMU and then these are being closed and reused by Go for other things, and QEMU is then interfering with them. I saw similar things when doing disk passing by FD before and had to be careful with the ordering.

Yes this does appear to be the issue, got a fix for it, testing now.


Debug hover inspector closes when dragging the horizontal scrollbar with the cursor outside the window

VSCode Version: 1.31.1
OS Version: Ubuntu 18.04

Continuation of #64620
When debugging, dragging the horizontal scrollbar of the hover inspector window outside of the popup closes the inspector.
Steps to Reproduce:

Start debugging
Hover a variable
drag the horizontal scrollbar and move the cursor outside of the variable window

Confirmed - When dragging the new horizontal scrollbar - if the dragging mouse cursor drops outside the object inspector window longer than about 0.5 secs, the object inspector window will close - even though the mouse button is still held down.
Frankly, a larger object inspector window (or a user-selectable size changeable via Settings) would be of enormous assistance. Is there already a separate issue request for this (i.e. for a user-selectable size for the object inspector that is changeable via Settings)?

This would be a nice addition!

This is fixed in latest.


Add privacy notice for analytics - PIA

Notice about use of Google and Adobe analytics.
Related to #296
https://www.canada.ca/en/treasury-board-secretariat/services/access-information-privacy/privacy/web-analytics-privacy-impact-assessment-report.html

Duplicate of #296


Update to Colmap 3.9.1 and added Dockerfile.

This PR updates the changes made to Colmap 3.9 and adds a Dockerfile. Usage:
export COLMAP_VERSION=3.9.1
export CUDA_ARCHITECTURES=70
docker build -t pyceres \
    --build-arg COLMAP_VERSION=${COLMAP_VERSION}  \
    --build-arg CUDA_ARCHITECTURES=${CUDA_ARCHITECTURES}  \
    -f Dockerfile .

A possible improvement for a future pull request is to create a runtime docker stage that only installs the essential dependencies and uses the compiled ceres-solver and colmap from the builder stage (this will reduce the docker image size considerably).

@Phil26AT @sarlinpe I was wondering if you could take a look to this PR.

LGTM. I don't use Docker so I don't really understand all these details.

@pablospe Since COLMAP 3.9.1 the quaternions follow the Eigen format (xyzw instead of wxyz) but this wasn't updated here - so the user need to manually handle any conversion.

Yes, you are right, this is not handle it here. Should we revert these changes?

I'd rather revert for now and do a proper upgrade in https://github.com/cvg/pyceres/pull/27 - can you submit one and keep the Docker stuff if you need it?

One question, it only uses only the camera models from Colmap, right? I was wondering if it would make sense to simply take a copy the models.h to avoid Colmap dependency in this repo? It is like a circular dependency, for compiling Colmap you need ceres, and for pyceres you need Colmap :)

My plan is to move the bundle & PGO cost functions to pycolmap, such that pyceres handles only the core features without any dependency on COLMAP. But this requires some updates upstream to add covariances.

Related PR (for the Dockerfile part): https://github.com/cvg/pyceres/pull/31


Macro Perf Test using Probably

fixes #965

Thanks a lot @asjad02
I am a bit surprised by the second result , it says it tooks 0 sec to generate GenLens[Employee](_.company.address.street.number)
\cc @propensive

Btw the build fail for the following reason:
[error] /home/runner/work/Monocle/Monocle/macro/src/test/scala/monocle/macros/MacroTests.scala:30:12: discarded non-Unit value
[error]     }.check(_ => true)
[error]            ^
[error] one error found

I am not sure what check returns.

check returns the value of body of the test (in theory making a test a referentially-transparent wrapper around an expression). You will want to change check to assert and it will return a Unit instead.

I'm not sure how much logic is being done in the 0.000-timed result. But it may be correct if most of the work in the compiler is done in typechecking the result of the macro. Unfortunately that can't be timed in the macro itself. If you can have the same macro invoked multiple times with the same name, then the results will be aggregated and the min/avg/max times shown, which might give a bit more information.
We're also going to move to using nanoTime soon to get a bit more precision.

Actually, I've just realised that you're not actually testing the compile-time performance of Monocle! This is testing the runtime performance of constructing the trees generated by the macro. For macro performance, you'll need to edit the macro code, wrapping the macro implementation in a compile-time test.
To do that, just import probably._ and use ctx.test(<some test name>) { /* the macro */ }.check(_ => true) where ctx is the black/whitebox context. You can name the test whatever you like, but it makes sense to generate a name in the macro based on what it's generating. If a test is run more than once with the same name, the results just get aggregated.
The results will be printed to stdout automatically after compilation.

To do that, just import probably._ and use ctx.test(<some test name>) { /* the macro */ }.check(_ => true) where ctx is the black/whitebox context. You can name the test whatever you like, but it makes sense to generate a name in the macro based on what it's generating. If a test is run more than once with the same name, the results just get aggregated.

Hi Jon, thanks for the comments! However, I am not sure what you mean by ctx is the blackbox context. I only know how to get it when I define a macro e.g. https://github.com/optics-dev/Monocle/blob/master/macro/src/main/scala/monocle/macros/internal/Macro.scala#L11
but I am not sure how to get hold of this  context within a test. By any chance do you have an example? I tried to find one in probably without luck.

Hi Julien, I probably wasn't clear enough about how this works! In the macro where you have ctx available is exactly where you need to define the Probably test: it's the macro definition code that needs to have the Probably test added, because we're testing the performance of the evaluation of that macro code during the runtime of the compiler (so, at "compiletime" by the normal definition).
The things we're testing the performance of would be written exactly the same as they usually are, without reference to Probably, and the test would run every time the macro is expanded. However, the test names are generated dynamically, so you can use the ctx value to choose meaningful names for each test. That could be the compilation unit or some other string representation derived from the context.
It's worth saying that you would likely want some way to turn Probably's testing on or off. In Magnolia, I do it with an annotation (@performance) which, if Magnolia sees it anywhere, turns on performance testing for the entire compilation.

Thanks a lot, @propensive  for #991
Results::

Awesome, great work @asjad02 and @propensive
I suggested we keep this in a separate branch so that we don't add the probably dependency to macro. What do you think?


Adding cpas to my AOF3 server results in a crash-loop on startup

I understand this is more of an edge case since cpas is being tested against 150+ other mods, but it would be nice if this could be added.
Here is a copy of the log from when the server crashed
https://gist.github.com/ImJustMatt/78d37d9635fe8c2e195da0f94c357b8f
I can also add a log from a successful launch (without cpas installed) if that helps.

🤦♂ the client annotation is switched between common and client main class... I'm surprised it takes this long for someone to report. Sorry for the inconvenience (pretty ironic isn't it).


Add dev-prepare hook

This will check the value of dev_config in the payload and either move or copy the generated config to its proper location.
Refers to nanobox-io/nanobox#124

This looks really good.
According to the update on the original issue, the responsibility of informing the user will now be placed in the dev-prepare hook.
Here's a first pass of the message for mounting:
+> The following files were generated for your convenience and will be mounted
   on top of your source code for the duration of this session:
     - config/database.yml
     - config/initializers/redis.rb

   Please refer to the docs if you would like to change this behavior.

Here for copying:
+> The following files were generated for your convenience and will be copied
   on top of your source code:
     - config/database.yml
     - config/initializers/redis.rb

   Please refer to the docs if you would like to change this behavior.

If the mode is 'none', we don't need to specify a message.
For both 'mount' and 'copy', we should not display a message unless boxfile[:config_files] is not empty AND at least one of the files listed exists in the build. Additionally, we should only list files that exist in the build and we should only try to mount or copy files if they exist in the build.


making submit callback function can get and set request input

修订submit回调无法获取input参数，更新参数也无法保存数据库问题

This is a really useful feature (I am actually needing this right now). However, are all the edited files relevant to the proposed feature? I see a lot of files changed (e.g composer.json)


Add a debug() function

It can be difficult to debug complex chained expressions.
To help, we propose a new function:
debug(expression, [returnValue])
A host application will use the debug() function to emit strings for the user to see.  e.g. to the console in a browser.
With a single parameter, the debug function acts as a "pass-through" function where the input value is displayed for debugging and also returned by the function.  This makes it easy to chain the debug function into the middle of an expression.
e.g.  given the expression:
(
 (
  items[*].price *
  items[*].quantity
 ).sum(@) * tax
).round(@, 2)

We can debug the sum() portion of the expression using:
(
 (
  items[*].price *
  items[*].quantity
 ).sum(@).debug(@) * tax
).round(@, 2)

Which would emit something like: 10.48 to the debug output.
Or we can add context by turning the first parameter into a more human readable string, and adding a second parameter for a return value:
(
 (
  items[*].price *
  items[*].quantity
 ).sum(@).debug("Sum: " & @, @) * tax
).round(@, 2)

Which would emit something like: Sum: 10.48 to the debug output.
You can add debug() multiple times in the same expression:
(
 (
  debug(items[*].price) *
  debug(items[*].quantity)
 ).sum(@).debug("Sum: " & @, @) * tax
).round(@, 2)

which would output something like:
[3.23,1.34]
[2,3]
Sum: 10.48

Maybe something like debug(expression, [format_expr]) would be better? So that you can change log output in a non-chained call scenario: debug(sortBy(x, &@.key), &("Sorted values: " & toString(@))). In the current implementation you would need to write and run the expression twice in such cases.

Not sure, I quite agree on it being awkward. It is just one & longer. Kind of like an inline log handler.
As for the parameter order, I preferred to switch, as in the current version it looks as if first argument changes its meaning based on argument count (i.e. from a return value to a formatting expression), which is a bit odd.
There can also be a tiny performance benefit in the lambda version. In a web context it makes sense to just do console.log by default, but in others (like a native library) it would make more sense to not print anything, unless an explicit handler is passed. So in that case the formatting expression won't be processed. I don't think this is, really, a relevant point, as you wouldn't want to have debug left in the final expression to begin with, but you never know...

I prefer to optimize debug() for usage via chained expressions. It avoids nested expressions inside a function and makes it easier to strip out the debug() calls once the expression works.

Agreed, but it is, mostly, a style preference. LISP-enjoyers might not agree with this :)
If the cost is negligible, might be worth to make both styles viable.

Not sure, I quite agree on it being awkward.

I should have been more clear: I think lambda parameters are an advanced feature of the language.  While debug() is going to be used a lot by novice users.

might be worth to make both styles viable.

What would that look like?
debug(expression, [format_expr])
Where expression is any type (except lambda) and is always used as the return value, and if there's no second parameter is displayed using toString()
format_expr is any type (including lambda) that's always used for debug display, and if it's a lambda, uses the first parameter as context.
That could work

Approved


updating cloud services tutorial with April 2016 release changes for …

…Eclipse

Hi @martinsawicki, I'm your friendly neighborhood Azure Pull Request Bot (You can call me AZPRBOT). Thanks for your contribution!

It looks like you're working at Microsoft (marcins). If you're full-time, we DON'T require a contribution license agreement.

If you are a vendor, DO please sign the electronic contribution license agreement. It will take 2 minutes and there's no faxing! https://cla.azure.com.

TTYL, AZPRBOT;

These commits were included in a PR in the private repo.


v1.60

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.0 out of 3 committers have signed the CLA.:x: stephencelis:x: ferranpujolcamins:x: mr-vYou have signed the CLA already but the status is still pending? Let us recheck it.


Replace install template with generator and add support for engines

This PR replaces the install template with a generator, and adds support for engines.
Currently it isn't possible to run the install task from an engine. There are three issues: engines don't have an app:template task (in engines it's app:app:template), the current template uses Rails.root which means the dummy app's files take priority over the engine's, and not all of the paths referenced by the template are the same in an engine (e.g. the asset manifest is namespaced). It seemed that the cleanest way to solve this would be with a generator, but it would be possible to keep using the template instead if desired.

@jmalcic I've been trying to get stimulusjs to work in engines for a while I would love to see if and how you got this working

Like this. Could you update with the latest?

Hey @jmalcic, I don't think this is needed any more, now that stimulus-rails has been slimmed down so much, yeah? But please feel free to see if there's anything needed for importmap-rails for better engine support ✌


Pseudo-random population generator

There should be a possibility to generate a pseudo-random population in GA. That would allow to implement better unit tests.

Issue to be solved in https://github.com/sdu-cfei/modest-py/tree/issue22-random-seed
To be merged when a unit test using random seed is added.

Fixed: https://github.com/sdu-cfei/modest-py/pull/26


npm ERR! 403 Forbidden - archive/1.0.1.tar.gz

From: https://github.com/audreyt/ethercalc/issues/548
Any ideas what is causing this error:
npm ERR! 403 Forbidden: emitter@http://github.com/component/emitter/archive/1.0.1.tar.gz
I see there is no folder /archive/
My emitter/package.json

{
  "_args": [
    [
      {
        "raw": "emitter@http://github.com/component/emitter/archive/1.0.1.tar.gz",
        "scope": null,
        "escapedName": "emitter",
        "name": "emitter",
        "rawSpec": "http://github.com/component/emitter/archive/1.0.1.tar.gz",
        "spec": "http://github.com/component/emitter/archive/1.0.1.tar.gz",
        "type": "remote"
      },

...

i met the same issue, have you solve the issue?

My best guess is emitter was updated and the archive/1.0.1.tar.gz file was removed because it is not needed. Suggest searching for an npm version of emitter that works.

I don't think that's an issue an our part.

How to solve this problem? Ask for help @vendethiel @eddyparkinson

Github rate limiting in effect

@reverseAndroid for ethercalc, this looks like a warning, rather than an error. Although it might cause an install error if you are using a proxy.
The solution would be to use a different version of emitter. i.e. change the version number in package.json


Axe Modules/BackpackScript3D.lua

We probably don't need this anymore, we should see if we can kill it completely. It'll always be in the repository history if we need it for some insane reason.
Beyond that, cleaning up some more would be a great idea.

This issue was moved to GitBlox/Core-Scripts#24

hey wanna lick up my moldy doodoo


Add support for Node.js v20

Running the tests in Node.js v20 slightly changes the traces so I created a v20 directory inside expected with the new traces.
Related to https://github.com/AndreasMadsen/clarify/pull/14

Hi @afharo, I have seen your PR. First of all, thanks :) As this is just a change to the test and I'm very busy this week, I will review it next week. If I somehow forget, please ping me.

@AndreasMadsen, totally understandable! Thanks for the quick review and publish on the clarify one. I agree that this one is not as critical since it's only changing tests. No rush on my end.

One thing I'm curious about is all the CallSite objects. They come from stack-chain and are thus not directly related to this module. However, it would be nice if the Symbols didn't pollute the output, since it provides no information.

However, it would be nice if the Symbols didn't pollute the output, since it provides no information.

++! Happy to take a look at stack-chain to see if we can optimize it for v20.

Hi @afharo, I went ahead and merged this with some changes.

Similar to clarify, internals are now prefixed with node:internal/. This module removes the async_hooks bounces, since those are added due to this module. We could maybe do something more clever that detects if there are other hooks, and only remove the CallSites if there are no other hooks.
Node.js v18 is EOL pretty soon. Since it's just a test update, I don't see a need to keep old test files around. I would guess they didn't work with Node.js v18 anyway.
It's better to strip the node version from the files, that way it doesn't show up in the git diff next time the test expectations are updated.

Thanks for the contribution.


🐛 Only delele serviceaccount managed by the addon agent

Summary
When delete a managedserviceaccount, only delele the serviceaccount that is created by the addon agent
Related issue(s)
Fixes #

/cc @xuezhaojun @qiujian16

/cc @qiujian16 @xuezhaojun

/lgtm


add another parameter that scales by number of classifications

the statistics are different if we have more or less classifications per subframe. need to keep track on that.

I realized now that this is a challenge while doing clustering in HiRISE space, as the number of classifications only has a defined meaning per P4 image_id.
If we are lucky, all data of HiRISE images has been treated with the same retirement limit, but we should confirm this.
Next step is to create a plot and/or table that shows how the number of classifications varies over a full HiRISE image, for each HiRISE image.

Implemented as do_dynamic switch


Added the option to decode a QR code

Pull Request Label:

[ ] Bug
[ ] New feature
[x] Enhancement
[ ] New component
[ ] Typo

Pull Request Checklist:

[x] Have you followed the guidelines for contributing?
[x] Have you checked that there aren't other open pull requests for the same fix or component?
[ ] Have you ran the tests locally with bats tests?

The file must be of the PNG/JP(E)G/GIF format containing a QR code. The decoder is not compatible with wget, since according to the man page of wget, it cannot be used for multipart/form-data. The decoder has not been made for the 'fetch' client because I was unable to install the client.
Decoding can be done by using qrify -d filename.png

Small little syntax stuff to fix but otherwise the addition to the script looks merge ready :tada:


Flutter's interaction with Android's new Instant Apps

Looks like Instant Apps is starting to get rolled out for testing. We may want to better understand how Flutter interacts with Instant Apps and what the trade-offs are.
Learn more: https://android-developers.googleblog.com/2017/01/android-instant-apps-starts-initial.html

👍 interested my app also available as Instant App

Hello there, what's point now for the instant app availability ?

Closing in favour of https://github.com/flutter/flutter/issues/16833.

Eight months of hard work has brought the APK size of the official hello world app down to 4.2MB.  The work done to reduce framework and build size looks to have been a phenomenal and worthwhile success. Sadly, I don't think it has come anywhere close to the mark for what is needed to support Instant Apps.  If this the now current Flutter base size is cut again in half, developers would still only have under 2MB of leeway for building engaging apps. Closing the Instant App conversation in favor of simply trying to reduce APK size seems invalid from this perspective.
From the perspective of what the entire Instant App modular architecture tries to achieve, I think the idea of supporting Instant App through a single binary file was never valid. A single binary means large, complex apps cannot be broken down into small chunks to alleviate download size.  This requirement limits all apps to having a size of somewhere south of 4MB of app specific binary, regardless of how small Flutter can get it's own framework.  Is this even feasible for the more robust apps and games currently on the market?
While the binary shrinking endeavor has been going on, Instant App has grown in support by the Play Store - the Play Store now leverages Instant App architecture for the traditional app install.  In other words, Google has further ingrained instant apps into the ecosystem. It seems to me, reducing APK size is a short term workaround for what may grow to be a very large problem.
I hope Flutter begins to face this problem in earnest.  This means support for modular applications.
Ultimately, if Flutter wants to support Instant Apps, it will undoubtedly need to make some significant and painful changes.  Flutter should probably either acknowledge that it will never really support Instant Apps, or it should begin considering the structural implications such support would mean.

Could we use flutter web for instant apps?

Commenting on closed bugs will have no effect; please file a new bug if you have specific requests. Thanks.


Certain chickens not wanting to breed with certain others. Racist chickens?

Issue Description:
Some chickens will not, when put into breeding mode, seek out certain other chickens. essentially, chickens being racist, I guess? this happens on a SpongeForge server using a custom mod pack I made.
Steps to reproduce (important):
no freaking clue  how to reproduce it, but if you tell me how, I can try and get you the NBT tags of all the chickens I'm currently working with
1.
2.
3.
...
What happens:
to explain more clearly than the above description, an example might be best. Suppose I have chickens A, B, C, and D.  Chicken A B and C will not breed with each other for some reason, no matter how many times I try giving them seeds. Instead, they wait until I give seeds to chicken D, at which point all three of them start group-raping D.
also, this seems to have nothing to do with what type of chickens are involved.
What you expected to happen:
all chickens to be willing to breed with any other chicken, like vanilla chickens are. Vanilla chickens breed  regardless of race, gender, and the scientific impossibility of M/M and F/F fertility

Affected Versions (Do not use "latest"):

Chickens: chickens-4.3.2
Minecraft: 1.10.2
Forge: forge-1.10.2-<IP_ADDRESS>7-universal
Also, in case these versions are relevant:
spongeForge: spongeforge-1.10.2-2477-5.2.0-BETA-2637
MoreChickens: MoreChickens-1.10.2-1.1.6

There is a custom breeding system in place for the creation of various chickens. You can use JEI to view what chickens can breed and what kind of chicken they produce. Ex. Breeding a Coal Chicken with a Quartz Chicken will (possibly) produce a Lava Chicken.

@macks2008 Strange, tbh they use the normal vanilla mechanic for breeding. So it should work unless something is changing it.

I couldn't ever reproduce this so closing for now


Fixed: scroll bar issue in light mode & added close button

PR Fixes:

The scrollbar is now visible in light mode
Added a new close button on the track-preview page
Improved "Categories" layout on the track-preview page & some minor UI changes

Before :
https://github.com/code100x/daily-code/assets/142813623/68c25265-b8d0-4801-afba-3f450bbaa62d
After :
https://github.com/code100x/daily-code/assets/142813623/bcee785f-52b3-4bfc-a121-ea9cc1428371
Resolves #[Issue Number if there]
Checklist before requesting a review

[x] I have performed a self-review of my code
[x] I assure there is no similar/duplicate pull request regarding same issue

@RudraPrasad20 can you fix the merge

@RudraPrasad20 can you fix the merge conflicts

done sir, fixed.


Return a HTTPS url rather than a File URL

I need to pass a website url to my firebase authentication but currently the ImagePicker function returns a file URL. And there is no usable way for me to convert a file URL to a website url. So I was wondering if there was any way for imagepicker to return a website/HTTPS url. I'm not exactly sure how to do it or if there already exists a way but I thought I'd put this out there.

You first need to upload the image returned by the ImagePicker to a web service where you can retrieve the image back with an HTTPS url.

Get image from picker
Upload to web storage, can be your own web server or Firebase's Cloud Storage
Return the HTTPS url for that image, Firebase should have docs on this
Pass that URL to your Firebase Authentication

Hope that helps you out!


Take detail mesh into account for creating BV-tree

In U and A shaped terrain it was possible that polygons extruded their
BV-tree nodes significantly. This happened because all points for the
polygon (when excluding the detail mesh) were either on the high-level
terrain, or on the low-level terrain. This fixes the long-standing todo
about this.
As a result of this change, findNearestPoly and queryPolygons should
return more accurate results.
Fix #230
Note that Mikko talks about using "byte per bbox extents" in the todo.
I am not quite sure I understand that comment - can you explain what you
meant @memononen?

Good job! I once read an article about quantized AABB trees where the extents were stored as fraction of parent AABB (as bytes). I thought that'd be a good idea to implement. But later I decided to use the local quantized coodrinates (voxel corners) to do that instead. So you can ignore the comment.

@memononen Thanks Mikko, that sounds like an interesting idea. Do you by chance remember the name of the article?
I also thought about an even better solution to this problem we have here. The bounds may still be wrong (according to the terrain, by up to approximately the detail max error specified). What about keeping track of the minimum and maximum heights of the spans the polygon was created from through the meshing process, and pass this when creating nav mesh? It would be even more precise.

I think it was one of the game programming gems books. I have a vague memory that it would save like <10% of memory but traversal was a lot slower due to int/float conversion and extra math.
Your suggestion a bout y-range sounds like a good idea to test. Another option would be to expand the y-range of the bounds by max detail mesh error.

@memononen Thanks for the link! I'll check the book out (if I recall correctly they actually have it at my university's library).
Regarding the detail mesh expanding: that would be a simple solution, but I am also concerned with correctness when the detail mesh is not built. I will do some experiments with them.

@Janiels when you're not using detail mesh you have said good bye to height correctness already :) In order to get accurate polygon height extents you need to do the craziness of getHeightData(). I expect that when you're not using detail mesh it's because of generation speed. In that case the tile is probably small too, which alleviates things.
That being said, I think it is good that you give the problems that occur in productions a good hard thought. I think it might be worth thinking if you can calculate some guarantees to the height bounds. And it sounds like that's what you're doing already.
While I was working on the layers (the stuff that the tile cache is based on), I saw a lot of potential in the layered 2D representation. The getHeightData() has always been a source of frustration, and I really liked how the 2D representation makes many of those reverse mapping ambiguities go away. I was willing to would go as far as replace rcCompactHeightfield with that. Food for thought :)

Perhaps people have just been solving it by increasing Y extents.

Of course :) Easy win! I remember doing exactly this 'fix' in Alien: Isolation when the alien started forgetting where he was when running over a bridge-shaped thing added late in development.
Good change - thanks!

@memononen That's a good point (about the height correctness). I definitely do not want to do the crazyness of getHeightData -- I was hoping the poly bounds could be passed along from somewhere so it would be fast too (eg. region creation, but I am not familiar enough with the area).
It just feels bad that the mesh is simplified so much that it becomes less usable/reliable than it ought to be. But since this has been the behavior for the past 5 years with minimal reports, and since it is even more mitigated by small tile sizes in the common case of no detail mesh (i.e. tile cache), I don't think I will do anything about it.

@Janiels Don't feel too bad about that :) It is representation problem. The layer approach and monotone partitoning makes the two representations closer together, at the cost of worse polygonization. Ideally the process should be one way stream. On each step we transform the data to the next steps. Detail mesh breaks that deal and thus the pain.
One option could be to kill the details mesh and add more detail to the navmesh based on some height heuristic. I played around with this idea, and I had some heighfield filters to split things apart before region generation. I chose not to use that since the paths were less straight that way. This was before any replanning and line of sight optimizations I built for the crowd code.


[Feature] GW support for single usage token

Fixed with https://github.com/wso2/docs-apim/pull/6387


Confirm kubecf works on Kube 1.17

Is your feature request related to a problem? Please describe.
Since Kubernetes 1.17 is available and a couple implementations exist already, including SUSE's CaaS Platform 4.1.2, we should verify that kubecf works on that version.

Note that CaaSP 4.1.2 is still 1.16 (see release notes).

Better catch any issue related to 1.17 earlier than later. I think I had a couple of servers with k8s 1.17 a month-ish ago. I'll confirm this soon.

This PR on cf-operator is related to a k8s cluster I currently have running 1.17.4 version: https://github.com/cloudfoundry-incubator/cf-operator/pull/885.

After the fix on cf-operator, this seems to work just fine.
Once the cf-operator bump is merged here, we can close this issue.


1180 Save link for guardians

🗃 Github Issue Or Explanation for this PR. (What is it supposed to do and Why is needed)
#1180
✅ Checklist

[x] Github issue details are up to date for people to QA.
[x] I have tested all my changes.

🕵♂ Notes for Code Reviewer
Save the link and other info
👯♀ Paired with
Solo

@RaulUrtecho  this is not an issue
if (settingsStorage.inRecoveryMode) {
NavigationService.of(context).navigateTo(Routes.recoverAccountFound, settingsStorage.accountName);
} else {
NavigationService.of(context).navigateTo(Routes.recoverAccount);
}
        We check before navigation.

But when the app is in recover mode and the app starts witch screen must appear first?
Login or recoverAccountFound?

login will show.
If the user taps on recover, then the user will be taken to continue the recovery.
If the user remembers the account, they can just login.

The only thing I thing will not be quite clear for the user if the guardias process was canceled.
I know that we will handle it, but..
in the flow of recover found account the user, It is more explicit in this sense (the user literally presses a cancel button).
Maybe on import we can show a dialog to confirm cancel the recover process, but this would add a bit code too.


[Feature]: NetBox 3.5 Support

NetBox version
v3.5.0
Feature type
Add a function
Proposed functionality
Please see the release notes for 3.5 changes
Use case
Currently NetBox 3.5 will not run with this plugin installed.
External dependencies
No response

Confirmed, causes error in update script reporting.

Bump.  Still not working with V3.5.3 and would really like to use this plugin.  Any updates or ETA?  Thanks!

I'll try to get a basic PR ready for v3.5 this week.

Yea I’ll work with abhi.  I had not heard much noise about this script to update, and personal life was busy.  We are also always happy to take PRs from the community.

PR created and ready for testing.


The hyprland package it's broken on the unstable nixpkgs version

Describe the bug
Apparently, when you input hyprland as a system package with the declaration:
#configuration.nix

  programs.hyprland = {
    enable = true;
  };

It fails to build by wayland-scanner dependence on the CMake process when switching NixOS.
Steps To Reproduce
Steps to reproduce the behavior:

Enable flakes on the unestable version of nixpkgs
Declare Home-Manager
Input the Hyprland package in the configuration.nix file

Expected behavior
When building the system with nixos-rebuild switch --flake .#yourHostname it should permit Hyprland to be build in the system and configured via Home-Manager.
Screenshots
[user@system:~]$ nix log /nix/store/79j2d16flwr56pkfrw8x2907j3q2pld1-xdg-desktop-portal-hyprland-1.3.3.drv"
-- Configuring done (45.6s)
CMake Error in CMakeLists.txt:
  Imported target "PkgConfig::deps" includes non-existent path

    "/nix/store/0ikl83z4h69imxkwsly3hcm424f7wi7j-wayland-scanner-1.23.0-dev/include"

  in its INTERFACE_INCLUDE_DIRECTORIES.  Possible reasons include:

  * The path was deleted, renamed, or moved to another location.

  * An install or uninstall procedure did not complete successfully.

  * The installation package was faulty and references files it does not
  provide.

CMake Error in CMakeLists.txt:
  Imported target "PkgConfig::deps" includes non-existent path

    "/nix/store/0ikl83z4h69imxkwsly3hcm424f7wi7j-wayland-scanner-1.23.0-dev/include"

  in its INTERFACE_INCLUDE_DIRECTORIES.  Possible reasons include:

  * The path was deleted, renamed, or moved to another location.

  * An install or uninstall procedure did not complete successfully.

  * The installation package was faulty and references files it does not
  provide.

...skipping...

[user@system:~]$ nixos-rebuild switch --flake .#yourHostname
error: builder for '/nix/store/79j2d16flwr56pkfrw8x2907j3q2pld1-xdg-desktop-portal-hyprland-1.3.3.drv' failed with exit code 1;
       last 10 log lines:
       > -- Generating done (0.0s)
       > CMake Warning:
       >   Manually-specified variables were not used by the project:
       >
       >     BUILD_TESTING
       >     CMAKE_EXPORT_NO_PACKAGE_REGISTRY
       >     CMAKE_POLICY_DEFAULT_CMP0025
       >
       >
       > CMake Generate step failed.  Build files cannot be regenerated correctly.
       For full logs, run 'nix log /nix/store/79j2d16flwr56pkfrw8x2907j3q2pld1-xdg-desktop-portal-hyprland-1.3.3.drv'.
error: 1 dependencies of derivation '/nix/store/xkbr06bbsjl9iiv0v1fqzhp9j6cj1p58-dbus-1.drv' failed to build
error: 1 dependencies of derivation '/nix/store/4lh5k2wyj8ybl7bc1wm4nl8pl81m77yw-system-path.drv' failed to build
error: 1 dependencies of derivation '/nix/store/zxnmyxvay6s5kyd0dywa8n26qy8biwf9-nixos-system-beherit-24.11.20240901.b833ff0.drv' failed to build

Metadata
Please run nix-shell -p nix-info --run "nix-info -m" and paste the result.
[user@system:~]$ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-linux"`
 - host os: `Linux 6.6.47, NixOS, 24.05 (Uakari), 24.05.4396.ae2fc9e0e42c`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.18.5`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

I think it was resolved in #338836, but it didn't reach the unstable channel.

maybe i could try to set it up to the stable version and see the output then

That's unfortunate as using master means rebuilding firefox atm... Oh well


Missing IR feeds in Realsense Viewer

Required Info

Camera Model
D415/D435

Firmware Version
<IP_ADDRESS>

Operating System & Version
Win 10

Platform
PC

SDK Version
2.14

Language
C#

Issue Description
Previously in the Realsense Viewer, I could see 4 feeds from the D415/435 cameras; RGB, Stereo and 2 x IR. Recently, I see only the RGB and Stereo; the IR feeds are no longer available.
Is this something I have done and if so, how do I restore the missing feeds?

Please disregard; as is so often the case I found the answer shortly after posting - I needed to enable the IR1/IR2 under the stereo module settings.


[Feature Request] battery-backlight: Use dmidecode to check product name

@JeffLabonte: Can something like the following be added to keyboard_backlight.py to check the laptop model? I don't really know Python, so it may not be formatted properly:
    if [ "$(dmidecode -s  system-product-name)" = "Serval WS" ]
        then:
            BACKLIGHT_DEVICE_PATH = "/sys/class/leds/system76::kbd_backlight"
            self.brightness_color = f"{self.BACKLIGHT_DEVICE_PATH}/color_left"
        else:
            BACKLIGHT_DEVICE_PATH = "/sys/class/leds/system76_acpi::kbd_backlight"
            self.brightness_color = f"{self.BACKLIGHT_DEVICE_PATH}/color"
    fi

@yochananmarqos Yes, it is possible. I can give it a look tonight 😄


docs/detectnet-tao.md broken link

At the end of the docs/detectnet-tao.md page, there is a link:
Next | Object Tracking
When following the link, you receive a 404:
The 'dusty-nv/jetson-inference' repository doesn't contain the 'docs/detectnet-tracking.md' path in 'master'.

Hi @joeysantana3, sorry about that, it's fixed now.


add decalcify template

Adding decalcify template content in order to fulfill own goals and have a skill that explains me what i have to do to decalcify my coffeepad machine

FINISHED


[release-4.15][manual] CVE-2023-45288: deps: bump x/net and related

Update x/net to pick up golang/net@ba87210
To fully fix we need to build with go >= 1.22.2.
xref: golang/go#65051

/lgtm


porder order returns invalid geometry, also fails without geometry clipping for aws s3

I'm trying the following with the given idlist and geojson (see attached)
porder order --name test-aoi1-month07 --idlist ~/planet/cloud-free-planet/notebooks/test_aoi1_id.txt --item PSScene4Band --asset analytic_sr --boundary test_tile.geojson --aws ~/planet/cloud-free-planet/notebooks/aws.yaml --op aws clip email

But the order status fails (from the email notification)
Name: test-aoi1-month07
ID: 1a7252c6-6037-40e8-a3ca-1e274607157a
Status: failed
Duration: 2m35.768276919s

and also states that the geometry is invalid. The geojson is below
{
"type": "FeatureCollection",
"features": [
{ "type": "Feature", "properties": { "id": 0 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ -0.831, 5.756599999999446 ], [ -0.7986, 5.756599999999446 ], [ -0.7986, 5.71 ], [ -0.831, 5.71 ], [ -0.831, 5.756599999999446 ] ] ] } }
]
}

test_aoi1_id.txt
The order also fails when I run the following command (no clipping). There's no error output so it's hard to diagnose
porder order --name test-aoi1-month07 --idlist ~/planet/cloud-free-planet/notebooks/test_aoi1_id.txt --item PSScene4Band --asset analytic_sr --boundary test_tile.geojson --aws ~/planet/cloud-free-planet/notebooks/aws.yaml --op aws clip email

I appreciate the help, let me know if there's any other info I can provide.

Hi Sam, reopening this after trying to order while clipping again
When I run this
(v2-cloud)~/cloud-free-planet/notebooks$ porder order --name test-tile_fourth --idlist ~/cloud-free-planet/notebooks/test_fourth_ids.txt --item PSScene4Band --asset analytic_sr --boundary test_tile_fourth.geojson --op clip email
Could not parse geometry
{"field":null,"general":[{"message":"Unable to accept order: geojson: invalid geometry"}]}

There's no order url that is printed so I can't check the error message as you suggested. I tried to run without clipping:
(v2-cloud)~/cloud-free-planet/notebooks$ porder order --name test-tile_fourth --idlist ~/cloud-free-planet/notebooks/test_fourth_ids.txt --item PSScene4Band --asset analytic_sr --boundary test_tile_fourth.geojson
Order created at https://api.planet.com/compute/ops/orders/v2/268eb482-0622-4373-aaf6-4f75fea64c61 and url copied to clipboard

But I get this error when I check the url
{
"_links": {
"_self": "https://api.planet.com/compute/ops/orders/v2/268eb482-0622-4373-aaf6-4f75fea64c61"
},
"created_on": "2019-02-19T22:19:26.462Z",
"error_hints": [
"There are no result bands produced, operation fails. (code: FAILURE_CODE_INVALID_INPUT Bandmath_v1)",
"There are no result bands produced, operation fails. (code: FAILURE_CODE_INVALID_INPUT Bandmath_v1)",
"There are no result bands produced, operation fails. (code: FAILURE_CODE_INVALID_INPUT Bandmath_v1)",
"There are no result bands produced, operation fails. (code: FAILURE_CODE_INVALID_INPUT Bandmath_v1)",
"There are no result bands produced, operation fails. (code: FAILURE_CODE_INVALID_INPUT Bandmath_v1)",
"There are no result bands produced, operation fails. (code: FAILURE_CODE_INVALID_INPUT Bandmath_v1)"
],
"id": "268eb482-0622-4373-aaf6-4f75fea64c61",
"last_message": "Order resulted in 0 assets",
"last_modified": "2019-02-19T22:20:23.603Z",
"name": "test-tile_fourth",
"order_type": "partial",
"products": [
{
"item_ids": [
"20180703_095732_1015",
"20180610_095739_1008",
"20180606_104025_0f3c",
"20180602_095704_1018",
"20180602_104029_1053",
"20180601_104054_0f46"
],
"item_type": "PSScene4Band",
"product_bundle": "analytic_sr"
}
],
"state": "failed",
"tools": [
{
"bandmath": {}
}
]
}

I thought this might be because I included the --boundary option without specifying --op clip (not sure if these are dependent on each other. But when I run this without the boundary option or clipping
(v2-cloud)~/cloud-free-planet/notebooks$ porder order --name test-tile_fourth --idlist ~/cloud-free-planet/notebooks/test_fourth_ids.txt --item PSScene4Band --asset analytic_sr
Order created at https://api.planet.com/compute/ops/orders/v2/672a85c9-585e-4c65-af4c-6f2767eddbcb and url copied to clipboard

I get the same error as above
{
"_links": {
"_self": "https://api.planet.com/compute/ops/orders/v2/672a85c9-585e-4c65-af4c-6f2767eddbcb"
},
"created_on": "2019-02-19T22:20:55.481Z",
"error_hints": [
"There are no result bands produced, operation fails. (code: FAILURE_CODE_INVALID_INPUT Bandmath_v1)",
"There are no result bands produced, operation fails. (code: FAILURE_CODE_INVALID_INPUT Bandmath_v1)",
"There are no result bands produced, operation fails. (code: FAILURE_CODE_INVALID_INPUT Bandmath_v1)",
"There are no result bands produced, operation fails. (code: FAILURE_CODE_INVALID_INPUT Bandmath_v1)",
"There are no result bands produced, operation fails. (code: FAILURE_CODE_INVALID_INPUT Bandmath_v1)",
"There are no result bands produced, operation fails. (code: FAILURE_CODE_INVALID_INPUT Bandmath_v1)"
],
"id": "672a85c9-585e-4c65-af4c-6f2767eddbcb",
"last_message": "Waiting for per-bundle operations to complete. Running 0, Succeeded 0, Failed: 6",
"last_modified": "2019-02-19T22:21:47.901Z",
"name": "test-tile_fourth",
"order_type": "partial",
"products": [
{
"item_ids": [
"20180703_095732_1015",
"20180610_095739_1008",
"20180606_104025_0f3c",
"20180602_095704_1018",
"20180602_104029_1053",
"20180601_(v2-cloud)~/cloud-free-planet/notebooks$ porder order --name test-tile_fourth --idlist ~/cloud-free-planet/notebooks/test_fourth_ids.txt --item PSScene4Band --asset analytic_sr
Order created at https://api.planet.com/compute/ops/orders/v2/672a85c9-585e-4c65-af4c-6f2767eddbcb and url copied to clipboard
104054_0f46"
],
"item_type": "PSScene4Band",
"product_bundle": "analytic_sr"
}
],
"state": "running",
"tools": [
{
"bandmath": {}
}
]
}

Here is my geojson
{
"type": "FeatureCollection",
"name": "test_tile_fourth",
"crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:OGC:1.3:CRS84" } },
"features": [
{ "type": "Feature", "properties": { "id": 0 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ -0.831053947078279, 5.733240915104465 ], [ -0.815377541344895, 5.733079073869626 ], [ -0.815323594266615, 5.709838158765161 ], [ -0.831, 5.71 ], [ -0.831053947078279, 5.733240915104465 ] ] ] } }
]
}

I'm not sure what to make of the error, especially since the idlist was created successfully. Here's what I used to create the idlist
(v2-cloud)~/cloud-free-planet/notebooks$ porder idlist --input "/home/rave/cloud-free-planet/notebooks/test_tile_fourth.geojson" --start "2018-06-01" --end "2018-08-31" --item "PSScene4Band" --asset "analytic_sr" --number 10000 --outfile "/home/rave/cloud-free-planet/notebooks/test_fourth_ids.csv" --cmin 0 --cmax .5 --overlap 100

Any help or suggestions are appreciated, thank you! Let me know if I can provide more info.


Fix Safari TypeError: 'handleEvent' iFrame resizer error

This PR removes code that logs a error in Safari
TypeError: 'handleEvent' property of event listener should be callable

The issue
When an event listener is not callable Safari logs an error where other browsers stay silent.
We've got an example of this in our review app below, where the iFrameResize() function call returns an array of <iframe> elements. Safari logs an error because we use this array as our DOMContentLoaded handler.
This also shows we don't need domReady() as iFrame Resizer runs anyway
<script type="text/javascript">
  var domReady = function(a,b,c){b=document,c='addEventListener';b[c]?b[c]('DOMContentLoaded',a):window.attachEvent('onload',a)}
  domReady(iFrameResize({}, '.js-component-preview'))
</script>

I've also included some other fixes:

Remove iframeResizer.min.js

Good catch, thanks for fixing this 🙌🏻
It took me a little while to work out what was happening in the last commit, as it's not entirely clear that the scripts block is being defined in layout.njk and overridden in component-preview.njk. I think it'd be worth explaining the changes in the commit message.

Thanks @36degrees, yeah I was hoping we get a browser main thread performance boost by not loading iframeResizer.min.js in each iframe too.
I did try conditional IE comments to use iFrame Resizer v4.3.2 but we'd still need IE10 on v3 😔
I've pushed again though, how does that look?

Thanks for approving this @36degrees
Sadly I've had to drop the "Upgrade to iFrame Resizer v3.5.16" commit
Turns out newer builds of iframe-resizer v3 v3 (IE8 compatible) aren't actually compatible. Partly due to a project-wide Prettier run that removed quotes from object keys { 'true': 1 } → { true: 1 } in 9908ff9
I'll merge without it so we still get the bug fix

Looks like that Prettier commit was introduced in 3.6.4, so is it worth us bumping up to 3.6.3?

Looks like that Prettier commit was introduced in 3.6.4, so is it worth us bumping up to 3.6.3?

@36degrees It got worse. I tried that and we still had a script error in iframeResizer.contentWindow.min.js 🙈


ISSUE: unable to login to gmail account

Describe the bug
The error that appears in the log file indicates the app or something is using too old of an ssl library to connect to gmail at this time.
Environment (please complete the following information):

OS: Hass.os
Type of device: RPI4
Home Assistant version: 2024.5.5
Hassio/Docker/Core? Hassio
Component version: 0.3.27b1

Logs
This error originated from a custom integration.

Logger: custom_components.mail_and_packages.helpers
Source: custom_components/mail_and_packages/helpers.py:119
integration: Mail and Packages (documentation, issues)
First occurred: 4:11:20 AM (4 occurrences)
Last logged: 4:11:33 AM

Error connecting into IMAP Server: unexpected response: b'220 smtp.gmail.com ESMTP 586e51a60fabf-25085226dccsm1052960fac.37 - gsmtp'
Error connecting into IMAP Server: unexpected response: b'220 smtp.gmail.com ESMTP 586e51a60fabf-25084f8d863sm1065839fac.19 - gsmtp'
Error connecting into IMAP Server: unexpected response: b'220 smtp.gmail.com ESMTP 586e51a60fabf-250853be9cbsm1070507fac.49 - gsmtp'
Error connecting into IMAP Server: [SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:1000)

SMTP is for outgoing email.

I feel a bit dumb. Apologies....

I feel a bit dumb. Apologies....

Don't. This github issue made me realize I was doing the same thing....


basedpyright: 1.21.0 -> 1.21.1

Diff: https://github.com/detachhead/basedpyright/compare/refs/tags/v1.21.0...v1.21.1
Changelog: https://github.com/detachhead/basedpyright/releases/tag/1.21.1
cc @GaetanLepage

Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[x] 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

[x] 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
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 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

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review pr 355742

x86_64-linux

:white_check_mark: 2 packages built:

basedpyright
emacsPackages.lsp-bridge

aarch64-linux

:white_check_mark: 2 packages built:

basedpyright
emacsPackages.lsp-bridge

x86_64-darwin

:white_check_mark: 2 packages built:

basedpyright
emacsPackages.lsp-bridge

aarch64-darwin

:white_check_mark: 2 packages built:

basedpyright
emacsPackages.lsp-bridge


Transition events handling into the cache

The in-memory cache does not support events as of now.

A new internal API needs to be defined for kube events
Kube events can be stored directly (async) into the cache
Events are pulled from the cache for the sinks.
Specific events are translated into metrics (sys ooms, container restarts, etc)

cc @afein

1 through 3 is completed. 4 is still pending.

Obsolete. Eventer handles events in 0.20.


[React Native] Can't find variable: self

Hello there,
I'm trying to use  just virgil-crypto and  virgil-sdk libraries in a React Native project without e3kit, but I'm encountering the following error when debug is disabled
Cant' find variable: self

The error appears to come before I initialize the method new VirgilCrypto(), it already happens when I import the module with import { VirgilCrypto } from 'virgil-crypto';
If debug is active, the error goes away.
Any idea?
package.json
  "dependencies": {
    "@virgilsecurity/key-storage-rn": "0.1.3",
    "buffer": "5.2.1",
    "react": "16.8.3",
    "react-native": "0.59.8",
    "react-native-firebase": "5.3.1",
    "react-native-gesture-handler": "1.2.1",
    "react-native-gifted-chat": "0.8.2",
    "react-native-keychain": "3.1.3",
    "react-navigation": "3.9.2",
    "virgil-crypto": "3.2.2",
    "virgil-sdk": "5.2.3"
  },

self was used to enable virgil-crypto working in WebWorkers. We'll see if we can handle react-native as well. There is a similar issue in react-native itself. Meanwhile you can try putting global.self = global before importing virgil-crypto as a workaround.

hi @vadimavdeev
your workaround solution doesn't work anyway, the error continues to appear.
I put this at the top of App.js file:
import { Buffer } from 'buffer';
global.Buffer = Buffer;
global.self = global;

I'll see how I can fix this from the library side. If you could send me a minimal runnable project where I can reproduce the issue, that would be super useful.

@vadimavdeev can you give me your email address?

@paolospag it's<EMAIL_ADDRESS>

@vadimavdeev I just sent you a package via WeTransfer


Move swig before box2d-py in box2d deps

Description
As described in #662, gymnasium[box2d] fails to install as swig cannot be found. This is in spite of gymnasium[box2d] depending on swig in pyproject.toml.
The current dependency list for gymnasium[box2d] lists swig after box2d. In practice, pip installs dependencies in the order they are listed. Thus, when installing gymnasium[box2d], pip will try to install box2d-py first, which requires swig, but swig will not be found.
To remedy this, I propose to move swig before box2d-py so that swig will be available when box2d-py is being built.
I understand that pip is documented as having no guarantees on installation order beyond topological order (https://pip.pypa.io/en/stable/cli/pip_install/#installation-order). However, in practice, at least on Linux, the ordering seems to be the order in which the dependencies are listed. I will note that box2d-py has no formal dependency on swig, so topological ordering does not apply here.
I believe current users have been getting around this issue by installing swig and then installing gymnasium[box2d].
Fixes #662
Type of change
Please delete options that are not relevant.

[x] Bug fix (non-breaking change which fixes an issue)

Screenshots
Please attach before and after screenshots of the change if applicable.

Checklist:

[x] I have run the pre-commit checks with pre-commit run --all-files (see CONTRIBUTING.md instructions to set it up)
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes

~Regarding testing, I am unsure how to add a test for this fix, but I have run pip install --no-cache-dir -e .[box2d] locally on my machine in a fresh environment.~

Update: I tried running the installation command pip install --no-cache-dir -e .[box2d] from a fully fresh environment and it does not seem to work -- I believe the swig executable must be available beforehand so that box2d-py can use it; hence a separate pip install swig command is necessary. Closing this PR for now; will keep it here in case anyone has ideas on how to make this work.

@btjanaka Thanks for trying this, yeah we hoped that when the python swig module was created this could solve our issue but it seems not


operator mondoo-operator (0.8.0)

Signed-off-by: Ivan Milchev<EMAIL_ADDRESS>

/merge possible

/merge possible


Handle observable and noise parameter mapping (from opt to sim parameters) with missing data

Is it possible that the overrides do not work, and thus names like observableParameter1... remain in the table, for conditions where some data are missing?
This is e.g. the case for the Schwen model.

If so: How to best deal with it? The parameter mappings should not really be of interest in such cases, as they do not influence the result. Would it be possible to before applying the respective mapping check for a given condition an observable is nan for all time points, and then just set the noise and observable parameters to arbitrary values?

By "do not work", you mean whether it should be allowed to not provide overrides? So initially I thought that it would be okay to not override those parameters but to use the value set for this placeholder in the model. However, I think we agreed at some point that it must always be overridden. (This is not yet implemented, and there is a test case which does not conform to that.
Or do you mean a condition where there is no data for the given observable? This should have no effect on the result, right. Would map that parameter to NaN then.

I mean the latter (to the former: yes, I also think that we agreed that overrides are necessary). So, when there are not data for an observable in a condition (e.g. Schwen, I think also multiple others according to simple tests), then we just set potential noise and observable parameters to nan for all time points.

@yannikschaelte : This is implemented now, right. Or anything else planned here?

yes, that's implemented! (And even highly efficiently now, thanks @dweindl ).


[$250] Upgrade Expo and necessary packages

Coming from this PR https://github.com/Expensify/App/pull/42357
Problem
There is a critical security fix released in Expo v51.0.8, we should update to this but need to do so in a way that doesn't break the entire app.
Solution
Create a new PR / update https://github.com/Expensify/App/pull/42357 and test all flows using expo with the help of contributors and testers to ensure no breaking changes render the app unusable.
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~019dda01bf3f9b4520
Upwork Job ID:<PHONE_NUMBER>218575872
Last Price Increase: 2024-05-23

Issue OwnerCurrent Issue Owner: @hoangzinh

@bondydaa Hi! I’m Barbara Gaweł-Kucab from Software Mansion, an expert agency, and I’d like to work on this issue!

@ShridharGoel thanks for the note, we'll let you know if we need more testers to jump in. For now we're going to rely on SWM to help us with the majority of the lifting for now.

After research, it turned out that Expo upgrade involves bumping up RN to 0.74. The RN upgrade has started (draft PR here), so the Expo issue is blocked - @bondydaa @hoangzinh @mountiny

Alright, thanks, I will update the title to reflect that

PR  here is being actively worked on 👍

PR is still being worked on!

So the PR was closed in favor of the 0.75 update — @mountiny and @bondydaa (tagging you both since you commented on this GH). Do I keep this open for 0.75 and if so, is there something I can link to this for reference/tracking? The PR closure did not have anything and didn't want to close this without getting some additional context — thank you!

hm @roryabraham can you share any context on https://github.com/Expensify/App/pull/40548#issuecomment-2299302325?

https://expensify.slack.com/archives/C01GTK53T8Q/p1724060685267159?thread_ts=1721115769.712559&cid=C01GTK53T8Q

On-hold issue is still on staging, so will continue to monitor!

@roryabraham can you confirm if RN 0.75 has been deployed into production? From what I can see in https://github.com/Expensify/App/pull/45289 it appears to have been on staging for nearly a month, which may be normal, but wanted confirmation from a professional 😂 Thank you!

yep! Sorry we've had issues with release comments and other automations recently, but those should be fixed now. RN 0.75 has been on prod since 2024-08-28

agree


Errors creating new Api Controller

From @MartinMason on December 30, 2016 23:31
Creating a new AspNetCore project in Visual Studio 2015, add a new class, try to create a new scaffolded Api Controller, this error is received. I can reproduce everything stated in this post. Have tried every solution produced and nothing works. Creating an empty Api controller succeeds. Tooling preview 2 is dire need of an update.
http://stackoverflow.com/questions/41022748/asp-net-core-adding-controller-using-entity-framework
Copied from original issue: aspnet/Mvc#5647

I'm not exactly sure what I did to resolve this issue as it's now gone away. The following steps were executed.

Deleted files in the ComponentModelCache folder and let VS rebuild them: C:\Users{UserName}\AppData\Local\Microsoft\VisualStudio\14.0\ComponentModelCache

Updated tooling from this link: https://www.microsoft.com/net/download/core

Properly configured DbContext following this link. Verified that DI for DbContext working properly in another controller and realized that had fat fingered appsettings file (Don't think this was the only problem as a new file using Ind. Account Authentication failed initially.)

Now everything is working. Please close issue.

Ok!


fix: Navigation from failed tx screen

Related to YOMO-639 and YOMO-641
ConfirmTxScreen was active in the screens stack when the user navigates back to start-tx-screen from the failed-tx-screen.
So when resetForm was called, ConfirmTxScreen crashed here: https://github.com/Emurgo/yoroi/blob/8ce71aad7f32ab2a77167b430c8dd8a4d665f2e9/apps/wallet-mobile/src/features/Send/useCases/ConfirmTx/ConfirmTxScreen.tsx#L53
Now a navigation reset is done to go to start-tx-screen so calling resetForm is not needed.

It needs Product rework, try again is actually start all over again. Maybe we should have 2 buttons, try again -> resubmit / restart -> recreate the tx maybe to get new utxos.