python3Packages.bellows: 0.28.0 -> 0.29.0, python3Packages.zigpy-deconz: 0.13.0 -> 0.14.0

Motivation for this change
https://github.com/zigpy/zigpy-deconz/releases/tag/0.14.0
https://github.com/zigpy/bellows/releases/tag/0.29.0
Things done

Built on platform(s)

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

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

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

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
21.11 Release Notes (or backporting 21.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
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 147711 run on x86_64-linux 1

1 package failed to build:

home-assistant

4 packages built:

python38Packages.bellows
python38Packages.zigpy-deconz
python39Packages.bellows
python39Packages.zigpy-deconz

:+1:


Example issue

This is an example issue. It can be used to show the workflow to contribute to the group assignment.

The assignment can be found here:
https://github.com/dtxe/UTDSI_202401_building_software/blob/main/assignments/Assignment.md


Make it easier to write integration tests

Currently, when we need a DocHandle in a third-party library / app's integration tests, we'd need to spin up an entire thread with Repo::run, while also requiring us to provide our own Storage implementation.
Perhaps test mocks could be provided, similar to tokio_test::io? (Probably not in the same way, as that is trait-based.)

For another reference, check out tonic's mock example.

while also requiring us to provide our own Storage implementation

If you are not testing your storage back-end, I suggest using an empty Storage implementation such as SimpleStorage as used in our own test suite.

Currently, when we need a DocHandle in a third-party library / app's integration tests, we'd need to spin up an entire thread with Repo::run, while also requiring us to provide our own Storage implementation.

Do you mean unit-tests? For integration tests that rely on the workings on this library I would recommend doing exactly as in your description of the problem.
If you do mean unit tests, I guess one could work towards adding a mock of the repo, that would not run in a thread but instead follow a per-determined script(return per-determined doc handles and so on). Maybe hide it behind a test flag as opposed to use traits?


Query Tags for Feed purposes

Feed should display filtered itineraries based on user tags selected on the profile creation screen.
Feed itins should update after updating tags in profile settings
Clicking filtering buttons on top of the homepage should display Itins according to AND logic (ie. if you select "Teenagers" and "Young Adults" itins with both those tags will be shown)

Add valid tags to testuser
Undo that last commit waleed

LGTM (Looks Grippy to Me)


Bump timeout

Imo a better approach here would be to allow the timeout to be passed "up" through the chain of constructors.

@chrisguitarguy Yeah I am working on the "better" fix concurrently, but wanted to have this incase they needed it out in a hurry. I will implement this feedback in the long term solution.


Remove curves on import

ESRI editing software creates very nice arcs.  Meticulous editors will use this functionality.
However curves are not necessary to accurately represent building footprints and curves are poorly supported in a lot of GIS software and specs.
When importing buildings to a new environment arc densify the curves.  Also add a protective check in nightly QA in case of future curves.

Closed with https://github.com/mattyschell/geodatabase-buildings/commit/0678a1394a21a14844e5dc505ed575bbd39a4929


I can not install

I have an issue that is PHP Scripts / Miscellaneous and do not know where to put the code a help please.

Hi, place the code inside the  section of your webpage.


Desktop and Web Results Viewer has red rows

Table Row Colors section for the User Interface in the documentation (Table Row Colors) could be improved by adding a legend as to what the colors mean.
Recently I came across a query where rows that were joining with blanks for the $left and $right were highlighting red but I had no idea why. I thought Kusto joins had suddenly been busted because both inner and leftouter were displaying the same amount of rows when I had expected fewer in one versus the other.
Come to find out (or at least what my investigation seems to confirm), when joining tables on a value that is blank in both tables, the rows are highlighted in red.
Thanks!

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

ID: c7ba96a1-65dd-5320-6d36-47de50b8403f
Version Independent ID: deee5b70-9bd5-2bf9-f7b7-12c40200693d
Content: Kusto.Explorer installation and user interface
Content Source: data-explorer/kusto/tools/kusto-explorer.md
Service: data-explorer
GitHub Login: @orspod
Microsoft Alias: orspodek

@jonmcco - Thanks for your valuable feedback. I am looking into it and will get back to you soon.

@orspod - Can you please take a look and share your thoughts.

@jonmcco - thanks for your feedback.
Here is the table colors legend, as requested:
KWE: Light mode and dark mode:

Kusto.Explorer:

I created a WI to update the doc as well.
I am now closing this issue.

Wonderful @orspod! You are fantastic, thank you very much.

Why do the rows show up Red though? Take this example
Exceptions
| where Properties["NodeName"] == "_generic_0" and Properties["ResourceGroup"] == "prd-emea-tcvp2"
| extend ExceptionType = tostring(Exceptions[0]["TypeName"])
| take 10

Some rows are Red, some are Black, All rows have a valid ExceptionType, so it is not like the indexing failed. They are all strings also, so tostring is working.  It's shocking and unnerving. I want it to go away, but I am baffled as to what I did wrong or how to fix it. Searching for "why does kusto explorer table turn red" leads here, so I am piling on.


The OptCarrot benchmark used in this repo leaks Fibers

I noticed the OptCarrot benchmark used in this repo does something quite unusual:
https://github.com/Shopify/yjit-bench/blob/6a2dd4a5ad3b653e9ce3c9d169b3b11d33b09e28/benchmarks/optcarrot/benchmark.rb#L4-L8
That creates a new Optcarrot::NES every time, and that also means it leaks one Fiber per instance/run.
CRuby has the feature/behavior/bug to hard kill (skip ensure code) Fibers when they are no longer reachable (not sure how reliable it is though), but that's in general not really feasible without native coroutines: https://github.com/oracle/truffleruby/issues/959#issuecomment-357229190
And it's a proper mess semantically-speaking.
I would suggest to either:

Run OptCarrot as it meant to be (AFAIK), i.e., try to achieve >= 60 FPS, so reuse the same Optcarrot::NES instance and keep rendering more frames. The OptCarrot README shows a 3000 frames plot to show peak performance. Lan_Master.nes has basically a consistent frames loop after some startup.
Fix OptCarrot to actually dispose the PPU Fiber so the benchmark is more sensible to run with multiple Optcarrot::NES instances. That still means some extra IO etc (to load the cartridge) and maybe some other issues as the code seems not designed to be run like that.

I wouldn't want to just run more frames because that's going to make the behavior different for every iteration of the benchmark. If there's an easy fix to kill the fibers we could merge that.

I see, that's a fair concern.
I'll see what's possible to release the PPU fiber, or to properly reset the NES.
There is NES#reset, and if that is reliable it would be one way to create a single NEW instance and avoid loading the cartridge every time, and avoid creating many Fibers during the benchmark.
Right now that doesn't reset @frame but that's trivial to add. I'll check if that works.
I was curious if the frames would follow some repeating pattern and actually I don't see any obvious repetition.
However, it's always the same 4 frames after startup (7-10), and there is only 10 different screens displayed (for 3000 frames):
https://gist.github.com/eregon/f80614e4435ff779585f3e65ac1bfa61

Resetting does not seem to work (the next time the PPU is onvoked it seems to loop forever).
Cleaning the PPU Fiber is actually than I thought: https://github.com/mame/optcarrot/pull/35


Switch to API Key instead of Site ID

Hi there!
The Charge HQ push API now uses an API Key instead of a Site ID to identify the user that is pushing the data in.
Please see https://chargehq.net/kb/push-api for details.
The Site ID method is now deprecated and will be removed in future.
Cheers,
Jay.

Hi Jay, yes I've corrected this now and also fixed a few other bugs that I found now that I've been able to test with the car.


Updating README.md support for render commands

The title says it all

@emoon Could you also make a quick PR for no-std to handle string ? I've never worked in a no-std env in rust, so no idea on how to do that

Yes, I will fix it. hold


VS Code don't focus on PHP Debug Breakpoints

Issue Type: Bug
I'm using PHP Debug on VS Code, working in Docker (not Docker Desktop) in Ubuntu 20.04, under WSL2.
When a breakpoint is trigged, VSCode don't popup, I have to come back manually to the VSCode window and click on it to manually set the focus on VS Code. Then I can do debug.
I've seen that there's is a setting : "Debug: Focus Window On Break", but it's checked...

I think I had a garbage setting set.
Hope it helps.

I've tried to reinitialize the Setting but it doesn't work...

Is this still an issue? If so, in the windows taskbar does the vscode icon turn orange or whatever it does when some app is trying to gain attention...

This issue has been closed automatically because it needs more information and has not had recent activity. See also our issue reporting guidelines.
Happy Coding!


fix(arm64): shrink cargo mem footprint

The arm64 build was relatively silently failing while either doing the cargo build or just fetching the cargo registry index.
This resolves that issue by taking steps to minimize cargo's memory footprint when building on arm64.
It also splits the atc-router install across the openresty build. Building atc_router.so before openresty, but installing atc_router.so after openresty-- since the openresty files themselves are not strictly required to build atc-router, just for placing the .so in the correct directory (as done by make).
Building atc-router sooner in build helps us fail faster when something with the atc-router goes awry.

Closing own stale PRs.


'--' in test name results in unparsable XML reports

When using XMLStringBuffer causes a comment to be output in the reports containing the test name, if there is a '--' in the test name it gets output as:

Which is invalid xml.

Fixed by  #228


Deprecated vebosity

Added deprecation messages as suggested in #61. Also deprecated dcv.core.algorithm.ranged, as suggested in #44. With norm and asType deprecated, should be good to close #35.
@9il, could you check those messages and tell if you think those should be formatted differently? And if you agree, I would like to close those 3 issues with this PR.

I'd like to merge this one - @9il, I'll close #61 since deprecated have got the description, and #35 since norm and asType are both deprecated, leaving #44 opened until Mir equivalents for ranged and scaled arrive. Good?

Awesome! Thanks!


Converting GpioPin To GpioPin

Hi!
First of all, thank you for your amazing work, it is really interesting trying out rust in the esp32 world.
Building a driver for a sensor, I would like to be able to receive a generic GpioPin (or maybe GpioPin?) and be able to install an interrupt for it thus making it a SubscribedInput.
The motivation is of course to decouple the driver from the specific GPIO received.
Example:
struct RotaryEncoder {
    pub clk: GpioPin<SubscribedInput>,
    pub dt: GpioPin<Input>,
}

impl RotaryEncoder {
    fn new(clk: GpioPin<Input>, dt: GpioPin<Input>) -> Self {
       let clk = unsafe clk.into_subscribed(|| {/*some interrupt logic*/}, InterruptType::AnyEdge);

        Self { clk, dt }
    }
}

As I am not very well trained in rust yet, I am not sure what is the best way to acheive that.. prehaps a trait Subscribe for all 'Pin + InputPin' which implements the into_subscribed function?
A different approach would be to receive a GpioPin<SubscribedInput>,
but with an empty callback (maybe an Option<FnMut> instead of FnMut) and allow subscribing to it after it's creation.
It would be good to be able to change ISR and interrupt type on a pin in runtime especially due to esp32 limitations in AnyEdge interrupts. see espressif's ECO workarounds_for_bugs_in_esp32 3.14
Thank you again

GpioPin<SubscribedInput> implements the https://github.com/esp-rs/esp-idf-hal/blob/ee4e12c04a0166468b7a4776154f8cdd0ab0ff3d/src/gpio.rs#L127 trait, however, because it has no trait methods its not possible to do what you want right now. WIth that said, I can't really see why we can't move the into_subscribed method from the concrete input type to the trait. I believe @pyaillet worked on this originally, any thoughts on this?

We could move into_subscribed into the esp-idf-hal::gpio::InputPin. In this case, it would help make a driver for the esp32 family but it would not be portable as the trait is not in embedded-hal.
Is this what you are suggesting @MabezDev ?

We could move into_subscribed into the esp-idf-hal::gpio::InputPin. In this case, it would help make a driver for the esp32 family but it would not be portable as the trait is not in embedded-hal.

You're right, it doesn't help at all here, sorry for the ping!
@Moran296, could you use https://crates.io/crates/rotary-encoder-embedded or https://crates.io/crates/rotary-encoder-hal? You could register the callback before passing the pin in. You'll probably need to store the encoder struct in a static mut, but you'd have to do that if you were using ISRs directly too.

Would it be possible to implement this by adding a new trait parallel to InputPin/OutputPin/... which contains things like into_subscribed, into_input, into_output, ...? This would keep portability with the embedded_hal and improve usage of the pins.


Configure main page

Currently, when we click on the "Home" button of the website hosted here (https://akshitagupta15june.github.io/PetMe/index.html), we simply get a 401 error. We could either remove the "Home" button or redirect simply to "PetMe" since it's the main purpose of the website.

cool @Dynnammo would you like to work on this issue?

@akshitagupta15june Can I work on this issue? I would like to participate to Hacktoberfest.

I could handle it 👍 Assign it to me, I'll take a look tomorrow

@akshitagupta15june Can I work on this issue? I would like to participate to Hacktoberfest.

Go ahead buddy

It looks like it have already been fixed.


Clickspark Pauses intervals running in the background

Hello, If any intervals are running in the background, triggering clickspark causes them to pause until they are done.
is it possible to not completely take over the page?

Thanks @BrettGoreham for reporting. Actually I don't see an obvious fix to prevent this.
Feel free to contribute...


Create pin by clicking on the map

To create the pin on the map, one has to enter an address and ask the web page to georeference it. Unfortunately, in many urbanized areas, OSM lacks the road names or has them incorrect, so one has to zoom the map, find a named street, type, move the pin manually. (Additionally, this is even worse for someone without local knowledge - a tourist, an armchair mapper, who leaves a note for local surveyors/mappers.)
If a double-click or right-click could create the pin, it would be convenient.

If the address isn't found, the user can search for the city and drag the marker on the map to make progress through the system. This can be made easier, definitely.

The Sabas fork creates a marker on Leaflet once an approximate location is determined. Fork was merged as  PR #105. Address information is then filled in details section.

Cool! Now Start by telling us where your business is located. should change to ... or click to center the marker on the map directly to document the new behavior to the user.

I am currently busy working on fixing Issue #103. I am also planing on reducing the number of overall translations as part of changes for Issue #106. You are welcome to submit a PR to update to the specific translation files before closing this issue.

The users are now able to adjust the actual business location after all address searches. In case Nominatim is not able to find the exact address they are given an even larger area in which to move the marker around. The actual area depends on the original search parameters and Nominatim's degree of success.

This should be completed


more than entry for the same timestamp generated by continous, aggregated query

Aggregation does not seem to properly work on a newly created 9.0.1 cluster. As you can see from the output below sometimes an aggregated series contains more than one value for the same timestamp (sometimes even different ones!).
> CREATE DATABASE "netskin"

> CREATE RETENTION POLICY "default" ON "netskin" DURATION 1h REPLICATION 1 DEFAULT
> CREATE RETENTION POLICY "5m" ON "netskin" DURATION 1d REPLICATION 1
> CREATE RETENTION POLICY "30m" ON "netskin" DURATION 7d REPLICATION 1
> CREATE RETENTION POLICY "2h" ON "netskin" DURATION 31d REPLICATION 1
> CREATE RETENTION POLICY "1d" ON "netskin" DURATION 3650d REPLICATION 1

> CREATE CONTINUOUS QUERY "net.5m" ON "netskin" BEGIN SELECT MAX(value) AS value INTO "netskin"."5m"."net" FROM "netskin"."default"."net" GROUP BY time(5m),* END
> CREATE CONTINUOUS QUERY "net.30m" ON "netskin" BEGIN SELECT MAX(value) AS value INTO "netskin"."30m"."net" FROM "netskin"."5m"."net" GROUP BY time(30m),* END
> CREATE CONTINUOUS QUERY "net.2h" ON "netskin" BEGIN SELECT MAX(value) AS value INTO "netskin"."2h"."net" FROM "netskin"."30m"."net" GROUP BY time(2h),* END
> CREATE CONTINUOUS QUERY "net.1d" ON "netskin" BEGIN SELECT MAX(value) AS value INTO "netskin"."1d"."net" FROM "netskin"."2h"."net" GROUP BY time(1d),* END
> SHOW CONTINUOUS QUERIES

name: netskin
-------------
name  query
net.5m  CREATE CONTINUOUS QUERY "net.5m" ON netskin BEGIN SELECT max(value) AS value INTO "netskin"."5m".net FROM "netskin"."default".net GROUP BY time(5m), * END
net.30m CREATE CONTINUOUS QUERY "net.30m" ON netskin BEGIN SELECT max(value) AS value INTO "netskin"."30m".net FROM "netskin"."5m".net GROUP BY time(30m), * END
net.2h  CREATE CONTINUOUS QUERY "net.2h" ON netskin BEGIN SELECT max(value) AS value INTO "netskin"."2h".net FROM "netskin"."30m".net GROUP BY time(2h), * END
net.1d  CREATE CONTINUOUS QUERY "net.1d" ON netskin BEGIN SELECT max(value) AS value INTO "netskin"."1d".net FROM "netskin"."2h".net GROUP BY time(1d), * END

> SELECT * FROM "netskin"."5m"."net"

name: net
tags: host=r-ch100, interface=8, metric=tx.pkts
time      value
----      -----
2015-07-17T22:20:00Z<PHONE_NUMBER>65
2015-07-17T22:25:00Z<PHONE_NUMBER>83
2015-07-17T22:25:00Z<PHONE_NUMBER>83
2015-07-17T22:35:00Z<PHONE_NUMBER>53
2015-07-17T22:35:00Z<PHONE_NUMBER>66
2015-07-17T22:40:00Z<PHONE_NUMBER>84

> SELECT * FROM "netskin"."default"."net"

name: net
tags: host=r-ch100, interface=8, metric=tx.pkts
time        value
----        -----
2015-07-17T22:24:49.995336856Z<PHONE_NUMBER>65
2015-07-17T22:25:51.985417082Z<PHONE_NUMBER>05
2015-07-17T22:26:52.497940962Z<PHONE_NUMBER>84
2015-07-17T22:27:53.568004852Z<PHONE_NUMBER>33
2015-07-17T22:28:54.307682063Z<PHONE_NUMBER>56
2015-07-17T22:29:54.802470931Z<PHONE_NUMBER>83
2015-07-17T22:36:17.059642202Z<PHONE_NUMBER>66
2015-07-17T22:37:17.774058902Z<PHONE_NUMBER>28
2015-07-17T22:37:59.089979953Z<PHONE_NUMBER>61
2015-07-17T22:38:21.654528887Z<PHONE_NUMBER>47
2015-07-17T22:39:22.313700076Z<PHONE_NUMBER>53
2015-07-17T22:40:23.040598709Z<PHONE_NUMBER>46
2015-07-17T22:41:23.671123933Z<PHONE_NUMBER>62
2015-07-17T22:42:24.483100043Z<PHONE_NUMBER>84

There is no 9.0.1 version. Do you mean 0.9.1? The stable release or a
latest nightly?
On Friday, July 17, 2015, Corin Langosch<EMAIL_ADDRESS>wrote:

Aggregation does not seem to properly work on a newly created 9.0.1
cluster. As you can see from the output below sometimes an aggregated
series contains more than one value for the same timestamp (sometimes even
different ones!).

Sorry, 0.9.1.

Looking at the data now, it seems like influx healed itself:
name: net
tags: host=r-ch100, interface=8, metric=tx.pkts
time      value
----      -----
2015-07-17T22:20:00Z<PHONE_NUMBER>65
2015-07-17T22:25:00Z<PHONE_NUMBER>83
2015-07-17T22:35:00Z<PHONE_NUMBER>53
2015-07-17T22:40:00Z<PHONE_NUMBER>80
2015-07-17T22:45:00Z<PHONE_NUMBER>93
2015-07-17T22:50:00Z<PHONE_NUMBER>06
2015-07-17T22:55:00Z<PHONE_NUMBER>32
2015-07-17T23:00:00Z<PHONE_NUMBER>69
2015-07-17T23:05:00Z<PHONE_NUMBER>20
2015-07-17T23:10:00Z<PHONE_NUMBER>24
2015-07-17T23:15:00Z<PHONE_NUMBER>38
2015-07-17T23:20:00Z<PHONE_NUMBER>43
2015-07-17T23:25:00Z<PHONE_NUMBER>08

The duplicate timestamps are all gone....

Here's another series which contains invalid data:
> SELECT DERIVATIVE(value) / 8 FROM "5m"."net" WHERE host='r-ch100' AND interface='18' AND (metric = 'rx.octets' OR metric = 'tx.octets') AND time ><PHONE_NUMBER>s GROUP BY time(5m), *

name: net
tags: host=r-ch100, interface=18, metric=rx.octets
time      value
----      -----
2015-07-18T09:05:00Z  1.790084125e+06
2015-07-18T09:10:00Z  1.62653225e+06
2015-07-18T09:15:00Z  1.714835375e+06
2015-07-18T09:20:00Z  1.787081875e+06
2015-07-18T09:25:00Z  1.846570875e+06
2015-07-18T09:30:00Z  1.858064625e+06
2015-07-18T09:35:00Z  1.702536375e+06
2015-07-18T09:40:00Z  1.655083375e+06
2015-07-18T09:45:00Z  1.651284e+06
2015-07-18T09:45:00Z  0
2015-07-18T09:50:00Z  1.6175605e+06
2015-07-18T09:50:00Z  0

name: net
tags: host=r-ch100, interface=18, metric=tx.octets
time      value
----      -----
2015-07-18T09:05:00Z  14615.125
2015-07-18T09:10:00Z  12237.125
2015-07-18T09:15:00Z  14171
2015-07-18T09:20:00Z  14568.375
2015-07-18T09:25:00Z  15677.625
2015-07-18T09:30:00Z  14852.75
2015-07-18T09:35:00Z  14967.25
2015-07-18T09:40:00Z  14430.875
2015-07-18T09:45:00Z  14831.25
2015-07-18T09:45:00Z  0
2015-07-18T09:50:00Z  15074.875
2015-07-18T09:50:00Z  0

@gucki did the second series also resolve itself into single points eventually? This seems like it might be another case of what's reported in #3315

For any 0.9 release prior to this week's 0.9.3, the replication factor must equal the number of nodes in the cluster. Since the config was incorrect and there have been related fixes to duplicate points, I'm closing this issue.


"Roughness" artefacts [Win/Web] [0.1.1]

Test stand :
OS: Windows 10 64-bit CPU Intel Core i3 4160 @ 3.60GHz Haswell 22nm Technology
RAM: 8,00ГБ Dual-Channel DDR3   (9-9-9-24)
Motherboard: Gigabyte Technology Co. Ltd.   H81M-S1 (SOCKET 0)
Graphics: SyncMaster (1680x1050@60Hz)        Intel HD Graphics 4400   (Gigabyte)
Storage: 119GB Samsung SSD 850 PRO 128GB   (SSD), 5581GB Microsoft Storage Space Device
Programm Info:
Version: 0.1.1
Platform: desktop (Win/Web)
Descripton:
Some gltf 3D models have a "roughness" artefacts, after import. It is always need to be decreased  by 0.01 (to 0.49) for correct display.
Steps:

Open qtek-model-viewer.exe
Import 3D model (example_1 , example_2) | screenshot №1
Сhange "Roughness" from default (0.5) to 0.49.

Screenshot

It happens when the roughness of pixel is near to 1.  Fixed in https://github.com/pissang/claygl/commit/ef3db5caac07f9b0b30a2f6258aa300879edc0af


have_received matcher missing when using Rspec 2

When using a have received matcher on a stub I get errors like the one below under RSpec 2
Failure/Error: object.should have_received.hello
undefined method `hello' for #RSpec::Matchers::Has:0x00000003781fd8
Someone else seems to have run into the same issue:
http://github.com/rspec/rspec-core/issuesearch?state=closed&q=have_received#issue/136

Ok, it appears the changes are all in for 1.0.4, now if I can only get my test example working.  Had is working with new_instance_of, which is gone now, but not gone from the README.


add cart

hello  add cart flow possible for eCommerce system ?
full flow including add cart with quantity and payment gateway also like stripe or others ?
also how major customization possible in t his ?

ask here: https://app.gitter.im/#/room/#tockchat_Lobby:gitter.im


Does this library support all 4 types of certificates or only ES256?

If it does support then what are commands to get hex format certificate to be copied into project.

At present, just ES256.  The instructions are listed in the README:
openssl ecparam -genkey -name prime256v1 -noout -out ec_private.pem
openssl ec -in ec_private.pem -pubout -out ec_public.pem

For the CA root, you should use:
wget pki.goog/roots.pem
openssl x509 -outform der -in roots.pem -out ca.crt


Deletes entire number instead of decimals when over a 1000

I'm having quite a hard time trying to understand why this is happening
Using this to activate
$('#myNumberInput').number(true, 2, ',', '.');
and this to preview
$("#myNumberInput").keyup(function(){    console.log($(this).val());  });
Everything works pretty much as expected most of the times, except when a value is over 4 digits and 2 decimals. When I try to backspace the last decimal, everything is deleted.
For example:
1
10
100
1000
1000.2
1000.23 //-> Backspace next
0 //EXPECTED WAS 1000.20 OR 1000.2
https://gyazo.com/05678b909df3b79209c564d6ac3b5464

Well, this is a temporary/permanent solution. I did other stuff while waiting to see if this was fixed but since the schedule was tightening I was forced to fix it.
Didn't want to stop using the plugin and do everything manual so I did a workaround.
This is nowhere near optimal solution I know.
For my case I ended up changing the plugin code.
`// If hitting the backspace key, and the cursor is to the right of the decimal
// (but not directly to the right) we replace the character preceding the
// caret with a 0.
else if (decimals > 0 && code == 8 && start > this.value.length - decimals) {
if (this.value === '') return;
                        // If the character preceding is not already a 0,
                        // replace it with one.
                        /*if (this.value.slice(start - 1, start) != '0') {
                            val = this.value.slice(0, start - 1) + '0' + this.value.slice(start);
                            // The regex replacement below removes negative sign from numbers...
                            // not sure why they're necessary here when none of the other cases use them
                            //$this.val(val.replace(regex_dec_num,'').replace(regex_dec,dec_point));
                            $this.val(val);
                        }

                        e.preventDefault();*/
                        data.c--;

                        // Set the selection position.
                        setPos = this.value.length + data.c;
                    }`

From lines 343, added that comment on the if and it does exacly what I inteded.
Great coding, awesome comments so it was easy getting there to do a quickfix.
Thanks


Dark Mode Beta

I have tested out dark mode in local version. The details of the hsl variables in global.css has been altered to make the dark mode work properly. I will host this version on Vercel to visualize the changes a bit more:) . I would love to be part of the contributions!

In above image:
- Border is too bold
- Bold text and so on

Hello there! Before creating a pull request again, I would love to confirm the new UI look
In the month mode:
NEW UI:

Dark UI:

CURRENT UI:

In the week mode:
NEW UI:

DARK UI:

CURRENT UI:

In the year mode:
NEW UI:

DARK UI:

CURRENT UI:

The lag in NavBar and SideBar is fixed:)
Have changed the variable to gray instead!
But I can't do the dark mode without having to create new variables in both :root and .dark ( When I actually look at the original variables, they are almost duplicated values ) . Sorry for that!
In the current version, there are so much of gray-number values used. That's why I created gray variables to utilize them in light mode as normally and reverse in dark mode!
I hope it turns out as you requested. If it is not, I am sorry:(

Look cool however shadow of the modal take too much.

And also the Current day should be white text over the black one? Red and Black is not a good combination in my opinion. And also could you pls fix it to be a rounded one?

Alright sir, I will fix those in the morning :)
You can leave more comments so I can work on them tomorrow!

Alright sir, I will fix those in the morning :) You can leave more comments so I can work on them tomorrow!

Welcome to the team!
I noticed that in DarkMode.tsx, you used a div as a button. To maintain a consistent UI throughout the app, please consider using existing components when possible. In this case, you can utilize the Button component from ui/Button.tsx and set its props to variant="ghost" and size="icon". Alternatively, you can apply your custom className.
If you find it necessary to create a new component, we encourage you to explore the components available in shadcn.
Keep up the great work 😉.

Look cool however shadow of the modal take too much.
And also the Current day should be white text over the black one? Red and Black is not a good combination in my opinion. And also could you pls fix it to be a rounded one?

I have already fixed the rounded one for active day. If you haven't done it yet, you can leave it.

I have fixed the box-shadow, It looks like this:

I also used the button variant ghost.
And the black text colour is fixed:


ResizeObserver loop completed with undelivered notifications.

Version
5.0.8
Reproduction link
github.com
Environment info
 System:
    OS: Windows 10 10.0.19045
    Node: 18.18.2 - D:\Program Files\nodejs\node.EXE

Steps to reproduce
Step1
npm install

Step2
npm run serve

Step3
Press the ESC key on your keyboard。
Display error message
Uncaught runtime errors:

ERROR
ResizeObserver loop completed with undelivered notifications.
    at handleError (webpack-internal:///./node_modules/webpack-dev-server/client/overlay.js:299:58)
    at eval (webpack-internal:///./node_modules/webpack-dev-server/client/overlay.js:318:7)

Replenishment
It seems likely that it will appear after each page refresh
What is expected?
nothing
What is actually happening?
Uncaught runtime errors:
ERROR
ResizeObserver loop completed with undelivered notifications.
at handleError (webpack-internal:///./node_modules/webpack-dev-server/client/overlay.js:299:58)
at eval (webpack-internal:///./node_modules/webpack-dev-server/client/overlay.js:318:7)

Step1：vue create xxx
Step2：installation...
Step3:：npm run serve
Finally, all the pages are accessed normally。
Well, when I press the "Esc " key on the keyboard, the following exception is thrown:
Uncaught runtime errors:
ERROR
ResizeObserver loop completed with undelivered notifications.
at handleError (webpack-internal:///./node_modules/webpack-dev-server/client/overlay.js:299:58)
at eval (webpack-internal:///./node_modules/webpack-dev-server/client/overlay.js:318:7)

Hi,
I faced the very same problem. I added this code to the beginning of my app.vue and the error hasn't come back since then:
//Stop error resizeObserver
const debounce = (callback: (...args: any[]) => void, delay: number) => {
let tid: any;
return function (...args: any[]) {
const ctx = self;
tid && clearTimeout(tid);
tid = setTimeout(() => {
callback.apply(ctx, args);
}, delay);
};
};
const _ = (window as any).ResizeObserver;
(window as any). ResizeObserver = class ResizeObserver extends _ {
constructor(callback: (...args: any[]) => void) {
callback = debounce (callback, 20);
super(callback);
}
};
Roman

I tried it again, Google is Ok, Edge exists

Found simple solution here
`// vue.config.js
const { defineConfig } = require('@vue/cli-service')
module.exports = defineConfig({
devServer: {
client: {
overlay: {
warnings: false,
errors: false,
},
  // or
  overlay: false, <---- this worked for me
}

}
})`

romanagh is far better because it solves the issue by correcting the error, while moabtools' is just hiding it (and all other runtime issues displayed on the overlay, by the way.
Romanagh's solution worked for me, and I can still have the benefits of the overlay error display.

Here's another possible solution which is similar to @moabtools, but only disables specific errors:
module.exports = {
  //...
  devServer: {
    client: {
      overlay: {
        runtimeErrors: (error) => {
          const ignoreErrors = [
            "ResizeObserver loop limit exceeded",
            "ResizeObserver loop completed with undelivered notifications.",
          ];
          if (ignoreErrors.includes(error.message)) {
            return false;
          }
          return true;
        },
      },
    },
  },
};

I've fixed this problem like this:
`import { ResizeObserver } from '@juggle/resize-observer';
const ro = new ResizeObserver((entries, observer) => {
// Changing the body size inside of the observer
// will cause a resize loop and the next observation will be skipped
document.body.style.width = '50%';
});
// Listen for errors
window.addEventListener('error', e => console.log(e.message));
// Observe the body
ro.observe(document.body);`

Hi,
I faced the very same problem. I added this code to the beginning of my app.vue and the error hasn't come back since then:
//Stop error resizeObserver const debounce = (callback: (...args: any[]) => void, delay: number) => { let tid: any; return function (...args: any[]) { const ctx = self; tid && clearTimeout(tid); tid = setTimeout(() => { callback.apply(ctx, args); }, delay); }; };
const _ = (window as any).ResizeObserver; (window as any). ResizeObserver = class ResizeObserver extends _ { constructor(callback: (...args: any[]) => void) { callback = debounce (callback, 20); super(callback); } };
This code ensures that when a ResizeObserver is created, the provided callback function is debounced with a 20ms delay. This debouncing can help in handling and preventing excessive calls to the callback, especially in scenarios where the ResizeObserver can be triggered frequently.
Roman

@romanagh
Thx for sharing. Pretty genius ur solution.
[Q]:  Why you have put let tid: any;  outside the fct?  This I don't understand quite well.


Sink:  allow setting destination URI via Bucket, Topic, or Dataset instances

Make Sink.destination a property, and have its setter sniff at the type of the value, computing the correct URI if not already a string.
Con:  additional imports  would couple gcloud.logging.sink to gcloud.storage.bucket, gcloud.pubsub.topic, and gcloud.bigquery.dataset.

Hello,
One of the challenges of maintaining a large open source project is that sometimes, you can bite off more than you can chew. As the lead maintainer of google-cloud-python, I can definitely say that I have let the issues here pile up.
As part of trying to get things under control (as well as to empower us to provide better customer service in the future), I am declaring a "bankruptcy" of sorts on many of the old issues, especially those likely to have been addressed or made obsolete by more recent updates.
My goal is to close stale issues whose relevance or solution is no longer immediately evident, and which appear to be of lower importance. I believe in good faith that this is one of those issues, but I am scanning quickly and may occasionally be wrong. If this is an issue of high importance, please comment here and we will reconsider. If this is an issue whose solution is trivial, please consider providing a pull request.
Thank you!


bug(rust): open non-exist table shouldn't create the table in object store

LanceDB version
lastest
What happened?
I'm trying to test open a non-exist table, but then I found that the dir was created and table_names() returns the non-exist table
Are there known steps to reproduce?
db.open_table("invalid_table").execute().await;
assert_eq!(db.table_names().await.unwrap().len(), 0);

Closed in https://github.com/lancedb/lance/pull/2215


Add FAQ entry for 'ack *'

Using ack with * on the command line is a common anti-pattern that limits ack's true potential and is a source of confusion for users new and old.  We should have an FAQ entry that addresses this.

This issue was moved to petdance/ack3#34


Fix typos in tutorial.py (#2783)

[x] Closes #2783

This function is deprecated and planned for removal in Xarray 0.12 (i.e. very soon, see #2776), e.g. by https://github.com/pydata/xarray/pull/2777/commits/d6e15cc1647909cebde734a5d6b92f262b234112.  Merging both will just create a merge conflict, but if you want to pull that commit into this PR that would be fine with me!

Closing, as code will be deleted when https://github.com/pydata/xarray/commit/d6e15cc1647909cebde734a5d6b92f262b234112 is merged


Change the default for the dlq to be off by default.

Fixes https://github.com/AxonIQ/console-framework-client/issues/50

Just wondering, since the concern is that potentially business-specific data is transferred over the wire without explicit permission of the app developers, isn't it sufficient to default to masked?

It might be fine to switch to masked as the default. That's not how I interpreted the story through. Maybe @SaraTorrey can decide. I don't know what the worries are. For example, with masked, anyone could still initiate a retry, which might not be something we allow by default.

After discussing various options with Gerard, I think setting the default to off is a better option for security and privacy reasons.

I noticed discrepancies in the readme, so I made some adjustments. Hence, asking for a review again.


Missing seaborn in requirements.txt

Hi, I was going through the code in notebooks/true_false_analysis.ipynb and it imports seaborn which is missing from requirements.txt.

Thanks for pointing that out. requirements.txt file is now updated with seaborn.


Revamp CI, Enable it for 29.1, Fix flaky tests

The changelog has more details.

@samhedin Any chance you can review this and approve ? I think @brotzeit has been out of reach for some time now.

Fair enough! I would like to avoid maintaining my own fork if possible, but I don't think it's possible anymore.


So how does one make a webtest?

Trying to add a recording on WebTest1.webtest of opening a page, logging in, and clicking a menu item never adds anything to webtest1.webtest.
I dont see a link here that explains what is supposed to happen.

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

ID: d0780169-4b7b-97ce-5ccd-9f962472a2c8
Version Independent ID: f0c68169-baeb-cba0-ccf0-a149fa96bb67
Content: Create a web performance and load test project in Visual Studio - Visual Studio
Content Source: docs/test/quickstart-create-a-load-test-project.md
Product: visual-studio-dev15
GitHub Login: @gewarren
Microsoft Alias: gewarren

Setting priority at P2 for adding the new topic using this info as a basis: https://www.softwaretestingclass.com/how-to-create-web-performance-test-with-vsts/

@gewarren - you can close this if you want. PBora has made it clear that this is a dead and unsupported tech already, and no further questions will be answered about it. Its not worth spending time on something already slated for the dumpster. Thank you for trying, its appreciated.


can't see the map

Is it me? The map isn't loading anymore.

Yes it’s (hopefully temporarily) disabled. We launched a new data report
format and I had to hide the map.
El El mar, jul. 28, 2020 a la(s) 3:04 p. m., lashot <
<EMAIL_ADDRESS>escribió:

Is it me? The map isn't loading anymore.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/covidatlas/li/issues/355, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAMPWDLML67EE6ITFQDQYXTR54OLPANCNFSM4PK2MFWA
.

Thank you.  Looking forward to seeing it again.
-L
On Tue, Jul 28, 2020 at 5:01 PM JZ<EMAIL_ADDRESS>wrote:

Yes it’s (hopefully temporarily) disabled. We launched a new data report
format and I had to hide the map.
El El mar, jul. 28, 2020 a la(s) 3:04 p. m., lashot <
<EMAIL_ADDRESS>escribió:

Is it me? The map isn't loading anymore.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/covidatlas/li/issues/355, or unsubscribe
<
https://github.com/notifications/unsubscribe-auth/AAMPWDLML67EE6ITFQDQYXTR54OLPANCNFSM4PK2MFWA
.

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/covidatlas/li/issues/355#issuecomment-665280438, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AQN23N3UJYV6F3RAQXZ7K23R544C3ANCNFSM4PK2MFWA
.


0x1A at end of valid packet dropped

This is a great library, very useful, I'm using it to transfer a FPGA binary into QSPI on my board and its easy to use. However, one edge case I found, if inside of a 128 byte packet, the last byte or last few bytes are 0x1a, they will be dropped, and dataSize will be 127 or 126 for instance. I found this because this happened to me with my FPGA image. It's a raw binary image, so I can't control or pad anything. I pass to my xmodem function the file size in bytes, so I have preknowledge of total bytes to transfer.
However, it so happened that within one of the 128 blocks, the last byte of the image was 0x1A, which the library interpreted as padding and dropped.
I put a workaround in my code, where if I'm still expecting more bytes to transfer, then I'll add enough 0x1a to get to 128. But I think this is a potential issue for others using this for raw binary transfer.

Thanks @julianstj1 I'm glad your finding it useful!
Unfortunately this issue of trailing 0x1a (SUB) bytes is inherent to the protocol. You can find some potential workarounds I proposed to this in my comment on a PR https://github.com/gilman88/xmodem-lib/pull/1#issuecomment-1611489761:

...if this is something that does make a difference for your situation you could do something like inject one or two bytes at the start of each packet boundary into the binary data stream to work around it, or maybe even wrap the packet data with some kind of non SUB sentinel character of your own.

Also apologies I thought this edge case had made it into the proper documentation but it hasn't.
Thinking about it some more the padding detection comes down to this line https://github.com/gilman88/xmodem-lib/blob/272ad4d1d8ae4ea072b38f4ce643b13a5388be0e/src/XModem.cpp#L235 and could possibly be skipped with some kind of "raw mode" configuration parameter... (probably not ideal though)
On the other hand as part of the documentation describing this edge case and workarounds we could note that the padding detection does not effect the received data and the full block is passed to the ReceiveBlockHandler regardless of what the dataSize value actually is so in your case where you know you will always be transferring "full" 128 byte blocks you can just ignore that parameter and hardcode the number of bytes that get written to the FPGA memory
Hope this helps to simplify your implementation and let me know if anything still doesn't quite make sense.

Thanks for the detailed reply! That definitely makes sense. Makes it easier for me to know that the buffer is all 128 bytes received from the xmodem stream. As a simple workaround, since I give the device the filesize in advance, I just write the receive buffer until I get enough bytes and it works great. I think the current implementation is good and makes sense given the protocol restrictions, just an edge case that took me a bit to find.

Updated the README with a section about this.


Device info is not working in simulator

Summary
| Version     | 0.17.4   |
| Affected OS | Android And Ios   |
| OS Version  | Android 5 and above, ios 10 and above |
Current behavior
Device info is not working in simulator and it is working in real device.

Expected behavior
It must work both in simulator and device.

Hi, could you give a little more information? "Is not working" doesn't really say anything..

It will give the error undefined is not a object for DeviceInfo.
For Example in my component i am using the below code
var DeviceInfo = require('react-native-device-info');
DeviceInfo.getUniqueID() will give undefined is not an object.

Similar thing happening.
Environment:
  OS: macOS High Sierra 10.13.6
  Node: 8.11.3
  Yarn: 1.9.2
  npm: 6.3.0
  Watchman: 4.9.0
  Xcode: Xcode 9.4.1 Build version 9F2000
  Android Studio: 3.1 AI-173.4819257

Packages: (wanted => installed)
  react: 16.3.1 => 16.3.1
  react-native: 0.55.1 => 0.55.1

After updating to 0.22.2 it is working fine. Thank you @machour.

This is still an issue! I installed the latest version and it did not work on the simulator with the same error described above. I then attempted to revert to @0.22.2 and it still did not work.

Having similar issue as well in an emulator, TypeError: Cannot read property 'uniqueId' of undefined at Object.getUniqueID

Same issue here on ios simulator

Anybody able to resolve it?

Could you open a new issue describing your exact setup and problem?
I'm afraid commenting on a closed issue won't really help

Still crash in 10.12.0 in Android Emulator
Weirdly, it works in 8.1.3


Problems with the configuration of the plugin

Hi @daeh thank you so much for your support.
According to your request in the forum, I am attaching two MD files from my obsidian notes. One of them (the first one) is an old file, created from notes generated with Acrobat reader some months ago. The other is a newly created one with the latest beta version of Zotero (63).
@nimmoDielsAlderClick2011.md
@lindenmeyerSelfhealingBehaviourFuran2020.md
I am almost sure that this is probably a mistake from my side configuring the setup.
Thank you!

hi @WMAM. For these files, you'll need to export your library in the BetterBibTex JSON format (File -> Export library, click Keep updated'), and then provide the path to that jsonfile in the ZoteroObsidianCitations preferences. The reason is that this plugin needs to map your BBT citekeys (e.g.nimmoDielsAlderClick2011`) to the Zotero Item IDs or Zotero Item Keys.
The other option (supplying a regex in the Zotero Key RegEx setting) only works if the Zotero Item Keys are explicit in your MD notes. These take the form of zotero://select/library/items/ABCD1234, where ABCD1234 is a key that's generated under the hood by Zotero that you can't modify. The links in your MD notes use the BBT keys zotero://select/items/@mycitekey, so you'll need to provide a BBT JSON, which the plugin uses to map mycitekey to ABCD1234.
Have you tried exporting your library as a BBT JSON file?

There is a feature I could add, but it would only work if
(1) you have turned the hidden BBT setting autoPinDelay on
OR
(2) all of the BBT citekeys in your MD notes are 'pinned' in Zotero.
When you pin a citekey, BBT add the citekey to the Extras field of the Zotero item, so I could potentially extract them from a Zotero search.
I recommend you try exporting you library as a BetterBibTex JSON, since it's pretty straight forward, but if (1) or (2) is true for you, and I also look into adding the Extras field search as a feature.

@daeh Following your suggestions ... After updating to version 0.8, I tried these two options:

Pinning the citekeys in Zotero: it didn't work for me (setting the hidden autoPinDelay option to 2 seconds). Maybe I did not configure it correctly, but the citekeys appeared to be pinned in Zotero.

I generated the BBT.json library, without removing the BBT.bib library (both active and auto-updated). If I only work with the BBT.json library, the obsidian.citation plugin doesn't work. This way your plugin works perfectly!

Thanks a lot!

@WMAM So things are working for you now?
yes, for Option # 2, obsidian-citation needs the .bib export and this this plugin needs the .json, so you'll need both of those files.
If you're up for it, I'm curious why Option # 1 (pinning the citekeys) didn't work for you, so if you have a moment, please post the text in the Zotero Extra field of @nimmoDielsAlderClick2011 and @lindenmeyerSelfhealingBehaviourFuran2020 so I can look into it.
Thanks

Hi @daeh !
Sorry for being late with this... I have just tried the first option following these steps:

Deleted these two notes from the vault and sync (just to untag them)
Deleted the json library
Mannually pinned the citekey In Zotero (the pin icon appeared and the citekey in the Extra field)
Modified the setup of your plugin to activate the first option
Syncronized

... and it worked!

I can work on this a little more if you want some other test.
I don't know why yesterday night it didn't work... may be now I have mannually pinned these citekeys?

I forgot to mention that the rest of the notes (not manually pinned), were untagged from the Zotero DB

That's good to know! It sounds like the autoPin option isn't doing the same thing as manually pinning the citekeys. Only if you have the time, could you copy the text from the "Extra" field of a Zotero item that isn't manually pinned and paste it here (i.e one of the items that had the tag removed when you switched to Option 1)? I'm guessing that's the source of the issue.

Yes, of course... but, I had deactivated the autoPinDelay from the hidden preferences...
Let me try to manually unpin these two items and reactivate the autoPinDelay

only if it's easy -- no need to go out of your way, but it might be informative if I can see the Extra field text.
So it sounds like you can either stick with option 2 (using both the .bib and the .json), or manually pin your citekeys and use option 1. Seems like either way works for you, so it's just up to your preference.

Don't worry, I already did it!

Manually unpinned these citekeys and untagged them
Set the autoPinDelay to 4, and forced to update the library
... and nothing appears on the Extra field, even after closing Zotero.

I am suspecting there is something missing to auto update the pins

ok. that's very informative, thank you. I'll assume things are working for you now but let me know if you have any more issues.

So it sounds like you can either stick with option 2 (using both the .bib and the .json)

yes, I can survive with both archives, ha, ha, ha!
Thank you so  much!

Good to know! I was suspicious that BBT was waiting for the item to be modified in order to update the Extra field. I bet that if you now switch back to option 1, the Citation Key: data will stay in the Extra field and when you add new items to Zotero, BBT will immediately add Citation Key: to the new items. So you might not need the .json from here on out.

@daeh yes, you are right. I was just playing around and 4 seconds after a new item has been added, the citekey is pinned.
For items already in the Zotero library, once something is modified (a letter in any field or even a note is added to the item), the corresponding citekey is automatically pinned.
Yes, I will work with option #1.
BTW, it is interesting to be able to open a MD note from Zotero... Thanks!

yep, thanks for confirming. #6 should be available soon.

fyi @WMAM , v0.0.9 has a contextual item to open the MD notes in obsidian. You can update from Zotero's Add-on menu

Thank you for the information. I already took a look at it and it worked
great for me.

Waldo Argüelles
El jue, 13 ene 2022 a las 19:42, Dae @.***>) escribió:

fyi @WMAM https://github.com/WMAM , v0.0.9 has a contextual item to
open the MD notes in obsidian. You can update from Zotero's Add-on menu
—
Reply to this email directly, view it on GitHub
https://github.com/daeh/zotero-obsidian-citations/issues/3#issuecomment-1012698551,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AHQ6UUEJNRWACYV6XQ3QQODUV6EP7ANCNFSM5LZ3SD6A
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you were mentioned.Message ID:
@.***>


Notification email_transactional should not depend on comments

As discussed with @sloria, the function email_transactional in website/notifications/emails.py should not depend on comments. (line 37) It should be able to handle other notification types and not expect a "commenter" field to be present in the template context.

Question: Does this represent a user-facing issue? -- or rather improved, more better, functionality on the back-end? ... trying to measure approach and priority. Thanks @abought

This issue does not affect users at present. But from a design standpoint, it hinders the ability to roll out new email notification features that users might want in the future. Essentially, your general function (send notification) is tightly coupled to one particular type of notification (comments).
For example, this would be a blocking issue for wiki @ person notifications.

Indeed! Apologies sir! :smiling_imp:

The only parameters that don't make sense to more general notifications is parent_comment and commenter. parent_comment is currently required, even though a blank string can be put through, but removing the need for this might be good. On the other hand the commenter would be nice to have no matter what the notification, but with a more generic name, such as user. However, commenter implies that they were the one that did something, whereas user is almost too generic.

If we do keep this in email_transactional, then perhaps "sender", or something to describe their specific role in the transaction?
Whatever it's named, one other thing discussed with @sloria is that it would help to have documentation of what this function needs in order to be called.
Currently, it (and the transactional email template that wraps email content) explicitly depend on a number of variables/parameters that are not present in the call signature. This can lead to subtle bugs when it comes time to use the function or add new notification types.

+1 on that point re: documentation.

I agree commenter should be given a more general name to accommodate other notification types. User could work if there is documentation that clarifies it is the user who performed the action, not the user receiving the notification.
@abought, +1 on moving required variables into the call signature -- that should also help clarify what is required for this function vs. the notification email template.
@Ghalko, parent_comment is required by the email template comment_replies.html.mako, not email_transactional.

Also, here is the "wrapper" email template I referred to. It goes around any individual email template, so it contains additional template variables required by just about any email. This may be worth including in the documentation.
https://github.com/CenterForOpenScience/osf.io/blob/develop/website/templates/emails/transactional.html.mako

The function needs the listed parameters plus "commenter", "node_id", and "title" from **context. Other than that the **context is passed onto:
subject = Template(constants.EMAIL_SUBJECT_MAP[event]).render(**context)
which uses a template that can be defined differently and use as many variables from **context as you want. Documenting all the templates that this has access to would be over the top in the future.

Documenting every possible template would be over the top... I totally agree about limiting the scope of this issue.
But documenting the single wrapper shared by every individual template seems more reasonable.

A possible reason that some of those variables are in the **context is because they are used by the template mentioned by @abought. Though I could certainly refactor either the calling function and/or the template to be more self-documenting.

The pr has been deployed.


RenderTexture

Expected Behavior
Current Behavior
Possible Solution
Steps to Reproduce
Environment

pixi.js version: e.g. 4.7.1
Browser & Version: e.g. Chrome 67
OS & Version: e.g. Ubuntu 18.04
Running Example: url

I thought I was searching for issues. Apparently I was creating one. Whoops.


Did you run the Transformer baseline using this code?

Thanks for the code! Did you run the Transformer baseline using this code?

Yes, set -encoder baseline will do this.

Thanks!

Thanks!

Have you reproduced the result of ABS baseline ?

Thanks!

Have you reproduced the result of ABS baseline ?

I reproduced the result of the EXT baseline but did not try ABS.

I tried ABS, but can't repreduce the result in paper.

Thanks!
Have you reproduced the result of ABS baseline ?
I reproduced the result of the EXT baseline but did not try ABS.

I tried ABS, but can't repreduce the result in paper.


SN experience can be improved with Alby

Hi,
Please see this issue and comment: https://github.com/getAlby/lightning-browser-extension/issues/1361#issuecomment-1237782703

Fixed locally to specify max amount. I'll push in the next few days.
You do have to pay routing fees when withdrawing from SN though. Alby doesn't allow you to specify how much you wish to pay in fees so we default to 10 sats. So you'll be able to withdraw most of your balance but not all.


fix(quantic): fixed a problem when deselecting breadcrumb values

SFINT-4938
The issue:
When you have two facet values in the Quantic Breadcrumb component, and you remove the first value, removing the second value will make the first value reappear like the following:
https://user-images.githubusercontent.com/86681870/227228447-2bdd4c9f-bc8d-4b45-95ed-ad22d472a0d7.mov
The source of the issue:
The facet values in the Quantic Breadcrumb component were displayed in the HTML like the following:
<template for:each={breadcrumb.values} for:item="breadcrumbValue">
     <li key={breadcrumbValue.value}>
          <c-quantic-pill ondeselect={breadcrumbValue.deselect}></c-quantic-pill>
     </li>
</template>

The problem is that the key passed to the li tag is invalid.
the object breadcrumbValue has the following structure:
{
    formattedValue: 'some formatted value',
    value:
    {
         value: 'some value',
         state: 'selected',
    }
}

which makes breadcrumbValue.value an object, which is an invalid value to give for the key attribute.
Bottom line is that with invalid key values, the component completely lost track of which  deselect event listener to execute when this event is executed.
The solution:

breadcrumbValue.value.value used instead of breadcrumbValue.value.

New e2e test created to avoid facing this issue again.

https://user-images.githubusercontent.com/86681870/227233211-18b211fa-6a2a-4b55-9f03-9fe54c521439.mov

Looks good, great job with the e2e test. I am assuming we can't change the name of value right? value.value is not the most descriptive 😂

yeah unfortunately this is coming from the Headless state so we can't really change the name.


test(nightly_test.yml): opencv

Description

1. Why the change?

2. User API changes

3. Summary of the change

4. How to test?

[ ] N/A

[ ] Unit test

[ ] Application test

[ ] Document test
 - ...

merged


MS Teams WebPart integration is not working

Category

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

Expected or Desired Behavior

Web part should be loaded.

Observed Behavior

Error details: Error: ***Error initializing application. Error: Error: ***Error initializing application. Error: TypeError: Cannot read property 'groupColor' of undefined

Steps to Reproduce

Follow all steps from https://docs.microsoft.com/en-us/sharepoint/dev/spfx/web-parts/get-started/using-web-part-as-ms-teams-tab
"Notice how you can parametrize the tab instance based on the exposed properties. Click Save". You won't notice that because of bug with initialization.

Same here - different tenants but the same error. Unfortunately I'm about to demonstrate this on a conference tomorrow - worst timing for this error ;-)

That's really unfortunate timing and yes - this is related most likely on the 1.8 release, but investigating exact details internally. TBH - I doubt that the situation will be changed by tomorrow.

I experienced the same yesterday during the day, but it got fixed.

This should have been now fully fixed after the 1.8 deployment. It was a version conflict before go-live. Can we confirm that we are good? Thx.

@VesaJuvonen I will check and let you know. Thank you very much.

@VesaJuvonen wow. It is working even better. Thank you very much, closing this issue.


Dispatch queue scheduler

Adding a dispatch queue scheduler to allow notifications on background threads (backed by a dispatch queue) on Darwin as well.
The dispatcher assumes that:

The queue is only backed by a single thread
That set_notify_callback is only called once and on the same thread as opening the realm and prior to any call to is_on_thread

Will try to get guarantees for the above.
NOTE: It is still required to open the and register callbacks on the same thread.

Superseded by #272 as the dispatch queues aren't guaranteed to run on a single thread.


#127 Replace XHR with fetch

https://github.com/PurpleKingdomGames/tyrian/issues/127 An attempt to replace XHR with fetch.

Thanks @JPonte! I shall try and review this over the weekend. :smile:
You're described it as an attempt, how are you feeling about it?

I wanted to try a bit scala 3 after not touching it for a long time 😀
I was pretty happy with the result while testing it on the sandbox. I expected the timeout to blow up in my face but looks fine so far. I'm not sure if the error handling is extensive enough though. I found it surprisingly hard to find which error types fetch might throw 🤔

I'm not sure how much fetch differ from browser to browser to be honest

In my experience it behaves similar enough on Chrome and Firefox, unless you are dealing with streaming request/response bodies. fetch in Node.js actually follows the specification and so behaves the most differently!

I thought about unit testing but since I'd have to mock fetch itself it felt a bit pointless.

Well, you can run the unit tests in an actual browser against the real fetch :) you can checkout the setup in https://github.com/http4s/http4s-dom.

@armanbilge Interesting, how did manage to get your ci to work without having to explicitly download the browser drivers? Can't find that anywhere in that project.

GitHub actions CI already has the drivers pre-installed :)
https://github.com/actions/runner-images/blob/main/images/linux/Ubuntu2204-Readme.md#browsers-and-drivers

@armanbilge I think I managed to get it work but I see that in your project you call some "echo" endpoint. How does that work? Is it spawning a test server? Where are the routes defined?

Is it spawning a test server?

Yes and no 😁 so the sbt build is spinning up a static file server and also a websocket server, here:
https://github.com/http4s/http4s-dom/blob/8734cdc909063a157bca1f95b625032bb5e63cab/build.sbt#L47-L89
That machinery is used to setup a service worker which is what the fetch tests are pointed at. A service worker is sort of an in-browser proxy that can intercept and respond to out-going fetch requests.
https://github.com/http4s/http4s-dom/blob/8734cdc909063a157bca1f95b625032bb5e63cab/testsBrowser/src/main/scala/org/http4s/dom/TestServiceWorker.scala#L24-L39
So it's a two-in-one test: test the fetch client and also the service worker "server" provided in that project.
In this case, we don't have a service worker to test, so that doesn't make sense. So you can either setup a small server in the build itself to run the tests against, or maybe send them to some public server? e.g. postman echo or something.
https://learning.postman.com/docs/developer/echo-api/
There's also httpbin, which you can start as a docker image.
https://httpbin.org/
So, lots of options :)

I noticed @JPonte had used httpbin in the Sandbox, I hadn't heard of it before, handy site!

Thanks for the tips @armanbilge! Yes, I've been using httpbin for the tests as well but I wasn't sure if it's advisable to have ci tests against a public server... but makes it way easier 😀. Didn't notice there was a docker version of it though.

Thank you! Yes, you can go ahead and merge it.


Opir generates json successfully, Futhark key not found: pragmas [KeyError]

I was trying to wrap https://github.com/max2344/pcsc-lite/blob/master/src/PCSC/pcsclite.h
  import futhark
  importc:
      path "/usr/include/PCSC"
      "pcsclite.h"

but
futhark.nim(464, 14) template/generic instantiation of `importcImpl` from here
nim-1.6.10/lib/pure/collections/tables.nim(234, 5) Error: unhandled exception: key not found: pragmas [KeyError]

so I've run Opir separately
$ opir -I/usr/include/PCSC/ ~/.cache/nim/pcsclite_d/futhark-includes.h | jq > pcsclite.h.json

and I've got a json without errors pcsclite.h.json.txt
after some elementary tracing, it happens on first execution of createVar, during parsing of g_rgSCardRawPci
relevant json section
  {
    "kind": "var",
    "file": "/usr/include/PCSC/pcsclite.h",
    "position": {
      "column": 63,
      "line": 88
    },
    "name": "g_rgSCardRawPci",
    "linkage": "external",
    "type": {
      "kind": "alias",
      "value": "SCARD_IO_REQUEST"
    }
  },

relevant C section
extern const SCARD_IO_REQUEST g_rgSCardT0Pci, g_rgSCardT1Pci, g_rgSCardRawPci;

how does Futhark deals with extern declarations?

What do you mean it happens in stable and not in devel? Futhark doesn't have a stable/devel version split. I will look into it, there was recently some changes made with pragmas.

Are you on the latest (0.7.4) version? As of https://github.com/PMunch/futhark/commit/f568c8032eaed8c3e4c5972958feec8c8070705b there shouldn't be any access to "pragma" in the Futhark module.


Updated files/jupyter notebooks to be compatible with python3.

I have updated the jupyter and python files to be compatible with python3. I have also changed some imports to also be compatible with python 3 (while retaining compatibility with python2).

I have run the Jupiter notebooks using the original python2 version and the pull request's python 3 version and created PDFs of the outputs to compare them. I am about half way through verifying that they are identical and so far they seem to produce the same results. I have attached them here for another set of eyes to take a look before we accept this pull request.
Python3:
Example_Reading_Results_py3.pdf
Example_LLH_setup_fixed_dirs_py3.pdf
Python2:
Example_Reading_Results_py2.pdf
Example_LLH_setup_fixed_dirs_py2.pdf

Here are the same outputs without debugging information to better compare the python2 and python3 versions.
Example_Reading_Results_py3_no_debug.pdf
Example_Reading_Results_py2_no_debug.pdf
Example_LLH_setup_fixed_dirs_py2_no_debug.pdf
Example_LLH_setup_fixed_dirs_py3_no_debug.pdf

Here is the updated results from the LLH notebook (the only one showing a difference between the python2 and python3 versions)
Example_LLH_setup_fixed_dirs_py3_no_debug_v2.pdf
.

Attached are the notebook results of running the updated code with both a python2 environment and a pyth
Example_Reading_Results_py3_conda_py3_code.pdf
Example_LLH_setup_fixed_dirs_py3_conda_py3_code.pdf
Example_Reading_Results_py2_conda_py3_code.pdf
Example_LLH_setup_fixed_dirs_py2_conda_py3_code.pdf
on3 environment.


Update documentation to use invoke

Current docs explain how to do development using each command individually (mkdocs, pyside6-uic, etc), but now using invoke and need to update docs to reflect that.

Finish #28 first.


Rounded rectangles painted badly[ios14][web][skia]

Steps to Reproduce

Save min repro code
flutter build web --dart-define=FLUTTER_WEB_USE_SKIA=true --release
Open it up in iOS14 Safari or Chrome

min repro code
import 'package:flutter/material.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: MyHomePage(),
    );
  }
}

class MyHomePage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return DefaultTabController(
      length: 4,
      child: Scaffold(
        floatingActionButton: Container(
            margin: EdgeInsets.symmetric(horizontal: 4),
            padding: EdgeInsets.all(6),
            width: MediaQuery.of(context).size.width * 0.8,
            height: 100,
            decoration: BoxDecoration(
              color: Colors.red,
              borderRadius: BorderRadius.circular(80),
            ),
            child: ClipRRect(
              borderRadius: BorderRadius.circular(80),
              child: TabBar(
                  isScrollable: true,
                  labelColor: Colors.black,
                  unselectedLabelColor: Colors.grey,
                  indicatorColor: Colors.white,
                  indicator: BoxDecoration(shape: BoxShape.rectangle, borderRadius: BorderRadius.all(Radius.circular(30)), color: Colors.white),
                  tabs: [
                    Tab(icon: Icon(Icons.ac_unit)),
                    Tab(icon: Icon(Icons.ac_unit)),
                    Tab(icon: Icon(Icons.ac_unit)),
                    Tab(icon: Icon(Icons.ac_unit)),
                  ]),
            )),
      ),
    );
  }
}

Expected results:
this is on iOS14 (standard, not skia)

Actual results:
this is on iOS14 (skia): flutter build web --dart-define=FLUTTER_WEB_USE_SKIA=true --release
https://experiment24.web.app/#/

Bonus bug?
this is on iPhone 11 iOS13 simulator using skia: flutter build web --dart-define=FLUTTER_WEB_USE_SKIA=true --release

flutter doctor -v
[✓] Flutter (Channel master, 1.21.0-6.0.pre.117, on Mac OS X 10.15.5 19F101, locale es-ES)
    • Flutter version 1.21.0-6.0.pre.117 at /Users/tomas/Development/flutter
    • Framework revision 7ec2d360bc (27 hours ago), 2020-07-29 23:25:38 -0700
    • Engine revision a9910e409c
    • Dart version 2.10.0 (build 2.10.0-1.0.dev 24c7666def)

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
    • Android SDK at /Users/tomas/Library/Android/sdk
    • Platform android-29, build-tools 29.0.3
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b4-5784211)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 11.5)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.5, Build version 11E608c
    • CocoaPods version 1.9.1

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 3.6)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 44.0.2
    • Dart plugin version 192.7761
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b4-5784211)

[✓] VS Code (version 1.47.3)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.12.2

[✓] Connected device (4 available)
    • iPhone (mobile)    • 00008020-000415840E50003A            • ios            • iOS 14.0
    • iPhone 11 (mobile) • 04298E38-2633-4586-B868-1FBD5C708AF7 • ios            • com.apple.CoreSimulator.SimRuntime.iOS-13-5 (simulator)
    • Web Server (web)   • web-server                           • web-javascript • Flutter Tools
    • Chrome (web)       • chrome                               • web-javascript • Google Chrome 84.0.4147.105

• No issues found!

Hi @tomasbaran
I cannot reproduce this issue on latest master channel.

Can you upgrade to master and try again:
flutter channel master
flutter upgrade --force
flutter doctor -v

  flutter doctor -v
[✓] Flutter (Channel master, 1.21.0-6.0.pre.129, on Mac OS X 10.15.6 19G73, locale en)
    • Flutter version 1.21.0-6.0.pre.129 at /Users/pedromassango/dev/SDKs/flutter_master
    • Framework revision 30aef0a3b9 (13 hours ago), 2020-07-30 14:20:21 -0700
    • Engine revision a9910e409c
    • Dart version 2.10.0 (build 2.10.0-1.0.dev 24c7666def)

[!] Android toolchain - develop for Android devices (Android SDK version 30.0.1)
    • Android SDK at /Users/pedromassango/Library/Android/sdk
    • Platform android-30, build-tools 30.0.1
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)
    ! Some Android licenses not accepted.  To resolve this, run: flutter doctor --android-licenses

[✓] Xcode - develop for iOS and macOS (Xcode 11.6)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.6, Build version 11E708
    • CocoaPods version 1.9.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[!] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)

[✓] IntelliJ IDEA Community Edition (version 2020.2)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 47.1.4
    • Dart plugin version 202.6397.47

[✓] Connected device (2 available)
    • Web Server (web) • web-server • web-javascript • Flutter Tools
    • Chrome (web)     • chrome     • web-javascript • Google Chrome 84.0.4147.105

! Doctor found issues in 2 categories

@pedromassango Can you share what device and what version of iOS you were running? Don't forget to make sure you run your device on iOS 14

I tested on Chrome since I don't have a device with iOS 14.
I would recommend to follow up on https://github.com/flutter/flutter/issues/61047 for issues related to iOS 14.

@pedromassango  yes, this is an iOS14 related issue. So how do I add it there? Just post link to this issue in this: #61047 thread?

@pedromassango yes, this is an iOS14 related issue. So how do I add it there? Just post link to this issue in this: #61047 thread?

I already did this. The author will eventually add the issue there.

Added to #61047.  It's just a convenience umbrella bug to keep track of our overall progress, so keep the details of individual bugs in their respective issues to avoid noise.

Related Skia issue: https://bugs.chromium.org/p/skia/issues/detail?id=10594

flutter build web --dart-define=FLUTTER_WEB_USE_SKIA=true

code sample
import 'package:flutter/material.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: MyHomePage(),
    );
  }
}

class MyHomePage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return DefaultTabController(
      length: 4,
      child: Scaffold(
        floatingActionButton: Container(
            margin: EdgeInsets.symmetric(horizontal: 4),
            padding: EdgeInsets.all(6),
            width: MediaQuery.of(context).size.width * 0.8,
            height: 100,
            decoration: BoxDecoration(
              color: Colors.red,
              borderRadius: BorderRadius.circular(80),
            ),
            child: ClipRRect(
              borderRadius: BorderRadius.circular(80),
              child: TabBar(
                  isScrollable: true,
                  labelColor: Colors.black,
                  unselectedLabelColor: Colors.grey,
                  indicatorColor: Colors.white,
                  indicator: BoxDecoration(
                      shape: BoxShape.rectangle,
                      borderRadius: BorderRadius.all(Radius.circular(30)),
                      color: Colors.white),
                  tabs: [
                    Tab(icon: Icon(Icons.ac_unit)),
                    Tab(icon: Icon(Icons.ac_unit)),
                    Tab(icon: Icon(Icons.ac_unit)),
                    Tab(icon: Icon(Icons.ac_unit)),
                  ]),
            )),
      ),
    );
  }
}

flutter doctor -v
[✓] Flutter (Channel master, 1.24.0-4.0.pre.107, on Mac OS X 10.15.7 19H2
    darwin-x64, locale en-GB)
    • Flutter version 1.24.0-4.0.pre.107 at
      /Users/tahatesser/Code/flutter_master
    • Framework revision 35a94f70e1 (7 hours ago), 2020-10-27 23:47:04 -0700
    • Engine revision 64e6599910
    • Dart version 2.11.0 (build 2.11.0-260.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    • Android SDK at /Users/tahatesser/Code/sdk
    • Platform android-30, build-tools 30.0.2
    • ANDROID_HOME = /Users/tahatesser/Code/sdk
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 12.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.1, Build version 12A7403
    • CocoaPods version 1.10.0.rc.1

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)

[✓] VS Code (version 1.50.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.15.1

[✓] Connected device (5 available)
    • RMX2001 (mobile)       • <IP_ADDRESS>:5555        • android-arm64  •
      Android 10 (API 29)
    • Taha’s iPhone (mobile) • 00008020-001059882212002E • ios            • iOS
      14.1
    • macOS (desktop)        • macos                     • darwin-x64     • Mac
      OS X 10.15.7 19H2 darwin-x64
    • Web Server (web)       • web-server                • web-javascript •
      Flutter Tools
    • Chrome (web)           • chrome                    • web-javascript •
      Google Chrome 86.0.4240.111

• No issues found!

This should be fixed now.


feat: add firecracker install

This adds the ability to download and install Firecracker.
Description
This adds the following to enable user to install Firecracker as a system package:
arkade system install firecracker

Motivation and Context

Relates to #654
How Has This Been Tested?
Local testing in my development env but not on arm:
➜ go build && ./arkade system install firecracker --path ./out
Installing Firecracker to out/firecracker
Installing version: v1.0.0 for: x86_64
Downloading from: https://github.com/firecracker-microvm/firecracker/releases/download/v1.0.0/firecracker-v1.0.0-x86_64.tgz
1.59 MiB / 1.59 MiB [------------------------------------------------------------------------------------------------------------------------------------] 100.00%
Downloaded to: /tmp/firecracker-v1.0.0-x86_64.tgz
Unpacking Firecracker to: out/firecracker
Extracting: release-v1.0.0-x86_64/ to   out/firecracker/release-v1.0.0-x86_64
Extracting: release-v1.0.0-x86_64/firecracker-v1.0.0-x86_64 to  out/firecracker/firecracker-v1.0.0-x86_64
Extracting: release-v1.0.0-x86_64/jailer-v1.0.0-x86_64 to       out/firecracker/jailer-v1.0.0-x86_64
Extracting: release-v1.0.0-x86_64/seccompiler-bin-v1.0.0-x86_64 to      out/firecracker/seccompiler-bin-v1.0.0-x86_64
Extracting: release-v1.0.0-x86_64/firecracker_spec-v1.0.0.yaml to       out/firecracker/firecracker_spec-v1.0.0.yaml
Extracting: release-v1.0.0-x86_64/seccomp-filter-v1.0.0-x86_64.json to  out/firecracker/seccomp-filter-v1.0.0-x86_64.json
Extracting: release-v1.0.0-x86_64/LICENSE to    out/firecracker/LICENSE
Extracting: release-v1.0.0-x86_64/NOTICE to     out/firecracker/NOTICE
Extracting: release-v1.0.0-x86_64/THIRD-PARTY to        out/firecracker/THIRD-PARTY
Extracting: release-v1.0.0-x86_64/test_results-v1.0.0-x86_64/ to        out/firecracker/test_results-v1.0.0-x86_64
Extracting: release-v1.0.0-x86_64/test_results-v1.0.0-x86_64/report/ to out/firecracker/report
Extracting: release-v1.0.0-x86_64/test_results-v1.0.0-x86_64/report/test_report.json to out/firecracker/test_report.json
2022/04/06 10:29:58 extracted tarball into out/firecracker: 9 files, 0 dirs (52.368281ms)

export PATH=$PATH:out/firecracker

➜ out/firecracker/firecracker-v1.0.0-x86_64 --version
Firecracker v1.0.0

Supported snapshot data format versions: v0.23.0, v0.24.0, v0.25.0, v1.0.0

Are you a GitHub Sponsor (Yes/No?)

[ ] Yes
[x] No

Types of changes

[x] New feature (non-breaking change which adds functionality)

Checklist:

[ ] I have tested this on arm, or have added code to prevent deployment

Thanks for the PR.
I'd like to see firecracker installed as firecracker, with a default path of /usr/local/bin
This is how I install it presently:
install_firecracker() {
    if ! [ -e /usr/local/bin/firecracker ] ; then
        curl -L -S -f -o /tmp/firecracker.tgz https://github.com/firecracker-microvm/firecracker/releases/download/v$FIRECRACKER_VER/firecracker-v$FIRECRACKER_VER-$ARCH.tgz
        if [ $? -ne 0 ]; then
            echo "Failed to download firecracker"
            exit 1
        fi
        sudo tar -xvf /tmp/firecracker.tgz -C /usr/local/bin/ --strip-components=1
        sudo mv /usr/local/bin/{firecracker-v$FIRECRACKER_VER-$ARCH,firecracker}
        sudo mv /usr/local/bin/{jailer-v$FIRECRACKER_VER-$ARCH,jailer}
        sudo mv /usr/local/bin/{seccompiler-bin-v$FIRECRACKER_VER-$ARCH,seccompiler-bin}
        sudo mv /usr/local/bin/{seccomp-filter-v$FIRECRACKER_VER-$ARCH.json,seccomp-filter.json}
    fi

}

Alex


⚠ Bofrost.es has degraded performance

In 206c2a4, Bofrost.es (https://www.bofrost.es) experienced degraded performance:

HTTP code: 200
Response time: 1601 ms

Resolved: Bofrost.es performance has improved in 095768b after 11 minutes.


Download a private file in GCS.

When i am trying to download a public file, there is no issue. But I want to download a private file as it what I need, but it is throwing "unauthorized"  401 error. It is printing 'Anonymous caller does not have storage.objects.get access to the Google Cloud Storage object' message.
Please help me out or give me any alternative way to do it.
I have also tries with signed url but it only has read option to access the file and not download file.
So I am asking for your support, if you can provide a proper  solution for it that would be a great help.

@ANUBHAV2142 can you provide the code snippet to better understand your problem.
You can refer the sample  on how to download file using storage.

@laljikanjareeya I have already refered to the sample download file, and got the public download file using the same.
But it is not working for the private file.
I am getting this error "Error: Anonymous caller does not have storage.objects.get access to the Google Cloud Storage object." as i have mentioned in earlier comment.
The code is same as the sample download file given.
It would be a great help if you can provide with any solution.
If you want i can post the complete code too, but it would be the exact same as in sample download file.

@ANUBHAV2142 How you are making the file private?
If you did file.makePrivate() than only project maintainers can see and modify it.
while file.makePrivate({ strict: true }) than only project owner can see and modify it
Here is complete demo on making file private and download private file.
async function yourFunction() {
  const storage = new Storage();
  const bucketName = 'your-bucket';
  const filename = `your-file.txt`;
  const bucket = storage.bucket(bucketName);
  await bucket.file(filename).makePrivate();

  // await bucket.file(filename).makePrivate({ strict: true }); This will only allow owner to see and modify.

  await bucket.file(filename).download({
    destination: 'path/your-file-name.txt'
  });
}

@laljikanjareeya I am not making my file private, the file I uploaded is by default not public(not publicly accessible) in the cloud storage bucket and I want to download it as it is.
I tried your code and it is getting me "Error: Could not load the default credentials. Browse to https://cloud.google.com/docs/authentication/getting-started for more information.
at GoogleAuth.getApplicationDefaultAsync".

@ANUBHAV2142 could you check what permissions you currently have.
It might be possible that you only have storage.objects.create but not storage.objects.get permission. As a Storage Object Creator role for example.
Please refer to the list of permissions and list of predefined roles

@AVaksman Yes i am getting this error message "Anonymous caller does not have storage.objects.get access to the Google Cloud Storage object".
But how to resolve this. I have editor permission on my service account. Should i change it to owner, will that resolve this error?

"Storage Object Admin" role should provide full control over objects:


chore: add custom image metadata option for iOS and add missing types for custom metadata properties

Update the documentation
Updated the API.md with the new imageMetadataUri
Provide an example of how to test the change
Can be tested in the tvOS example of the app
Describe the changes
Added a possibillity to modify the image metadata of a video shown in tvOS for example or the Now Playing area in iOS.
Created as descripted in the documentation of apple:
https://developer.apple.com/documentation/avkit/customizing_the_tvos_playback_experience#3820220

notice also that you have linter error ...
Run yarn lint
yarn run v1.22.19
$ yarn eslint .
$ /home/runner/work/react-native-video/react-native-video/node_modules/.bin/eslint .
/home/runner/work/react-native-video/react-native-video/src/Video.tsx
Error:   485:11  error  Do not use "@ts-ignore" because it alters compilation errors  @typescript-eslint/ban-ts-comment
✖ 1 problem (1 error, 0 warnings)
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
Error: Process completed with exit code 1.
You can keep the sample as is. @KrzysztofMoch said you will have a look to the sample !
Thank you

notice also that you have linter error ...
Run yarn lint
yarn run v1.22.19
$ yarn eslint .
$ /home/runner/work/react-native-video/react-native-video/node_modules/.bin/eslint .
/home/runner/work/react-native-video/react-native-video/src/Video.tsx
Error:   485:11  error  Do not use "@ts-ignore" because it alters compilation errors  @typescript-eslint/ban-ts-comment
✖ 1 problem (1 error, 0 warnings)
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
Error: Process completed with exit code 1.
You can keep the sample as is. @KrzysztofMoch said you will have a look to the sample !
Thank you

I only added this line as the selectedtexttracks contained a type issue, blocking the typescript compile operation.
I can remove this line, once I am home again. 😊

@Duell10111 There is fix on master for this ts error and for eslint errors, you can make rebase 😁

I was able to fix it :) So let's merge !
(And thank you for image detailed informations !)
Thank you !


Error manipulating available datasets

library(monstR)
library(magrittr)

x1 <- ons_available_datasets()

i <- 1
for (d1 in x1)

{
    n1 <- paste('available_datasets',i)
    n1 <- paste(n1,'.txt')
    write.table(d1, n1)
    i <- i+1
}

This produces files for the first 3 dataframes, but fails for the 4th:
Error in (function (..., row.names = NULL, check.rows = FALSE, check.names = TRUE,  :
  arguments imply differing number of rows: 1, 2, 3, 0
Calls: write.table ... as.data.frame -> as.data.frame.list -> do.call -> <Anonymous>
Execution halted

I'm going to change the function so it only keeps some columns that fit nicely in a dataframe. I'll create a pull request.


Tune resource requirements for load test

Follow up from https://github.com/kubernetes/perf-tests/pull/2030 - that PR clearly broke pod startup times (presumably due to requests being too small fraction of the node size).
This PR is tuning the pod sizes to be closer to the sizes from before that PR.
Ref: #1311
/assign @mborsz

/lgtm


[BUG] We can set negative integer value to Termination Grace Period field and write into VM yaml

Describe the bug

When we create a vm and provide negative integer value -1 to Termination Grace Period in advance options.
The UI can accept this value to create VM and write the negative value into the spec.spec.terminationGracePeriodSeconds

When we directly update the spec.spec.terminationGracePeriodSeconds of virtual machines setting to negative value. The webhook did not prompt message to block to proceed

To Reproduce
Steps to reproduce the behavior:

Create a virtual machine
Expand Advanced Options
Set -1 to the Termination Grace Period field and save
Wait for VM in Running state
Check the yaml of VM

Expected behavior

When we set negative value to Termination Grace Period in advance options, the UI should prompt message to prevent.
And also when we update the spec.spec.terminationGracePeriodSeconds on virtual machine, the webhook should prompt message to prevent.
Support bundle

supportbundle_3c320152-ecaf-4ca1-aed1-650eef8d3da8_2023-05-22T08-28-29Z.zip
Environment

Harvester ISO version:  master-b49e264e-head
Underlying Infrastructure (e.g. Baremetal with Dell PowerEdge R630): Single nodes on local kvm machine

Additional context
Add any other context about the problem here.
Related to #2466

@guangbochen   The backend may also need webhook validation.

@n313893254 @WebberHuang1118  - thanks for the fix :smile: :+1:
This looks great!
Tested with:

Harvester Version: master-5557c692-head (06/05/23)
Rancher v2.7.4

https://github.com/harvester/harvester/assets/5370752/33fb4030-cff6-415f-985a-13c64233fa63
I'll go ahead and close this out


Create Pool of Tokens

Description
The following ticket will make changes to
POST
v1/users/user

Following API Security guidelines it is recommended that to add an entry to a database, there is a token that authorizes the operation. To do this the service will have a pool of valid tokens, such that when the  POST v1/users/user endpoint is hit, then the request contains the token in the Authorization Header.
Definition of Done

Create pool of Tokens valid Tokens
In add_users_handler.go check the authorization headers to retrieve the token
If the token is valid then add the user to yaml file and delete token from pool of tokens, else send a not authorized status code
Use Redis to save pool of tokens

Notes on implementation and workflow
As mentioned in the README, to maintain our API secure and to filter the people who join Blueprint, we will use Token. The pool of valid tokens will be cached and persisted using Redis. The workflow to add a new member to Blueprint will be the following:

E-Board member or admin will register by providing a username and email. The endpoint POST /api/v1/users/register will be invoked. This endpoint will create a token and add it to the pool of tokens. This endpoint will also populate an email template and send the email available in the body of the request. The email should contain a URL to a form available in static/html/signup that will have the encrypted token as part of the URL Params.
Once the user receives the email and completes the form with the following information:

	Disabled    bool     `yaml:"disabled"`
	Displayname string   `yaml:"displayname"`
	Password    string   `yaml:"password"`
	Email       string   `yaml:"email"`
	Groups      []string `yaml:"groups"`

then the complete registration will be sent to ``````POST /api/v1/users/user``` and the token as a HTTP header. The endpoint will check the token, and if it is valid, it will add the user to the YAML file.

@ZhangTerrence I have updated the issue with more detailed information on the workflow of adding a new member. Let me know if you have any questions


Round down to floor value when converting TimeSpan or Time to DateMath

Since fractional date math expressions are not supported.
Closes #2170

LGTM @gmarz :+1:

Closing since we're not going with this solution anymore.


background url resource not found on live server

I think I have two connected issues here.

Locally both debug=true and debug=false works fine. On the server, only debug=false works. When having debug=true I get 404 errors accessing all assetts.

When I add css "background: url(/images/bg.png) repeat;" It works fine locally in both debug modes but on the server I get 404 on the generated reference (/_cassette/file/images/bg_b009fab58d6c18cef80fa21f67c4e8df191054a7.png)

Is this some kind of permission issue on the server maybe? or is this a common error. I first had my project as a Asp.Net Website but changed it to a Asp.Net Web Application to check if that was causing the issue some way.
I have a third issue that I dont think is related but there is a small chance so I will post it in this same thread.

If I change a javascript file or css and upload it to the server, noting happens at first. The bundles isnt updated. My solution have been to change in web.config to debug=true, call site, change back to degug=false, then call site and it works again. I figure the project need a web.config-change to know it needs to recompile or something.. is there a simplier way to do this? I have tryied restarting in IIS but that didnt work.. and isn't really a better solution either.

Thanks for a great project so far though. Its a bit hard to debug issues that appears but otherwise it seems really promising.

Re: Point 3, I asked a similar question to Andrew on twitter earlier this week.  It seems that cassette only watches the filesystem if one of the following is true:

cassette
asp.net

Curiously,  has no effect on this (although, like other cassette features, this should probably be checked for before falling back to the asp.net compilation element).

Seems like you comment isn't rendering correct but I did see it in the mail I got :)
Point 3 isn't really a problem anymore. When I publish the project and repleace all files it seems ok. So its mostly 1&2 that I would like answered.

Make sure your web.config has the runAllManagedModulesForAllRequests attribute set:
<system.webServer>
    <modules runAllManagedModulesForAllRequests="true">
    ...

Otherwise a request for a ".png" file, for example, does not get passed to ASP.NET and Cassette's handler.

Cassette's default behaviour in production mode is to not watch for file system changes. So just uploading a new css or js file does not trigger any rebuilding of bundles.
Touching web.config causes your application to restart. Cassette's initialization routine checks for changes to bundle files. If it finds files newer than the cached bundles then it rebuilds the cache.
I think most production deployments trigger an application restart, so the above should work. However, please let me know if there is a greater need for file system watching in production.

Adding runAllManagedModulesForAllRequests to the nuget package's web.config transform does make sense. I'll get that into the next release.


CAPI Ubuntu 22.04 images

Task
Generate and use Ubuntu 22.04 images for CAPG & CAPA clusters.
Background
CAPG & CAPA cluster use Ubuntu 20.04 images with Control Groups v1 which is enabled by default. AWS vintage is already using Control Groups v2.
All the CAPI clusters, including CAPG & CAPA ones, must use Control Groups v2.
Control Groups v2 are enabled in Ubuntu 22.04 out of the box.
TODOs:

[x] generate CAPI images with Ubuntu 22.04;
[x] update gohan to use Ubuntu 22.04 images;
[x] update gunter to use Ubuntu 22.04 images;
[x] update frieza to use Ubuntu 22.04 images;
[ ] update frieza / appstack to use Ubuntu 22.04 images;
[x] update golem to use Ubuntu 22.04 images;
[ ] update tornado to use Ubuntu 22.04 images;
[ ] any other cluster should also be migrated to use Ubuntu 22.04 images;

Currently, image-builder is impacted by this issue (https://github.com/hashicorp/packer/issues/11733) and unable to build Ubuntu 22.04 images without some workaround. I haven't yet managed to get a workaround to actually work though.

PRs:

https://github.com/giantswarm/cilium-app/pull/44 (will need default-apps-... updating once released)
https://github.com/giantswarm/cluster-aws/pull/129/ (blocked by first PR)
https://github.com/giantswarm/cluster-gcp/pull/163 (blocked by first PR)
https://github.com/kubernetes-sigs/image-builder/pull/994 (upstream)

Default-apps PRs:

https://github.com/giantswarm/default-apps-gcp/pull/95
https://github.com/giantswarm/default-apps-aws/pull/83

New CAPA and CAPG clusters will now use Ubuntu 22.04 by default. Existing clusters still need to be updated.

PR for updating gohan and gunther - https://github.com/giantswarm/management-clusters-fleet/pull/176

golem and tornado now managed by Flux but apps still need updating. The current versions are fairly outdated so a plan is needed to upgrade safely.

tornado needs a specific plan to upgrade. Closing this issue as all others are complete.


Null safety problem

When trying to use in my app, I got the following issues:
Because shared_preferences_settings >=1.2.0 depends on shared_preferences ^0.5.6+3 and my_app3 depends on
shared_preferences ^2.0.6, shared_preferences_settings >=1.2.0 is forbidden.

and after downgrading shared_preferences, I get the following build error:
Error: Cannot run with sound null safety, because the following dependencies
don't support null safety:

- package:shared_preferences
- package:shared_preferences_settings
- package:shared_preferences_platform_interface
- package:rxdart

- package:flutter_colorpicker

Any help would be most appreciated.

I have run into the same exact issue here. Have you found a resolution?

Hello, I was able to resolve this on my end by making shared_preferences 2.0.8 in my pubspec.yaml file.
pubspec.yaml
shared_preferences: ^2.0.8

Thank you, I will try that