cassowary: 0.7.0 -> 0.10.0

Motivation for this change
Update cassowary, the http load testing tool, to 0.10.0. This version introduces a feature for testing POST endpoints.
Things done

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

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

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

For reference, I build and tested this cassowary derivation on nixos, using it to load test a server with the new --postdata feature I was interested in. It looks :+1:

Closing as v0.11 has been merged in #90315


Flashing a known app crashes the CLI

Running:
$ particle flash MY_DEVICE tinker
crashes with:
attempting to flash firmware to your device MY_DEVICE
Flash device failed
TypeError: Cannot convert undefined or null to object
    at Object._addFilesToCompile (/Users/suda/.nvm/versions/node/v6.9.4/lib/node_modules/particle-cli/oldlib/ApiClient.js:537:21)
    at Object.flashDevice (/Users/suda/.nvm/versions/node/v6.9.4/lib/node_modules/particle-cli/oldlib/ApiClient.js:474:8)
    at flashyFlash (/Users/suda/.nvm/versions/node/v6.9.4/lib/node_modules/particle-cli/commands/CloudCommands.js:382:16)
    at runTask (/Users/suda/.nvm/versions/node/v6.9.4/lib/node_modules/particle-cli/node_modules/when/pipeline.js:34:12)
    at /Users/suda/.nvm/versions/node/v6.9.4/lib/node_modules/particle-cli/node_modules/when/pipeline.js:42:12
    at tryCatchResolve (/Users/suda/.nvm/versions/node/v6.9.4/lib/node_modules/particle-cli/node_modules/when/lib/apply.js:46:23)
    at callAndResolve (/Users/suda/.nvm/versions/node/v6.9.4/lib/node_modules/particle-cli/node_modules/when/lib/apply.js:30:12)
    at callAndResolveNext (/Users/suda/.nvm/versions/node/v6.9.4/lib/node_modules/particle-cli/node_modules/when/lib/apply.js:40:4)
    at Fold.fulfilled (/Users/suda/.nvm/versions/node/v6.9.4/lib/node_modules/particle-cli/node_modules/when/lib/makePromise.js:767:11)
    at tryCatchReject (/Users/suda/.nvm/versions/node/v6.9.4/lib/node_modules/particle-cli/node_modules/when/lib/makePromise.js:845:30)

I have this same issue. If someone else comes here looking for a fix, the fix is to downgrade the cli to v1.18.0 via npm install -g<EMAIL_ADDRESS>

The problem is caused by changes to the api.flashDevice function, which can take an optional map of logical filenames to actual filenames. Not all callers provide the map (in particular, flashing a binary), so I had added code to generate a identity map from the list of files. However, this code was removed...


remove issue template in doc

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.LIN Heng seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


Implementing Map

You can use https://www.openstreetmap.org/ for adding a basic map to program

Why do we need to add map feature ? jsut curious to know

Why do we need to add map feature ? jsut curious to know

Nothing specific. Basically for the footer of the home page. Like made in India

do we need something like this ??

I am interested in this issue; do we need to add a map like in which many websites shows their official address?

Sir, I love to work on it.
I would be grateful if you can assign this issue to me.
I can implement google map API or openstreetmap api which ever you want at the footer of the home page with the addresses and all.

Hello,
I am interested in this issue and would like to contribute in this project. I will set the map at the footer of the website as you need.

Can I work on this issue?

do we need something like this ??

Yes

I am interested in this issue; do we need to add a map like in which many websites shows their official address?

Yes

Assigned to @Cruel-Crab for 2 days.
After that @sahebsunny can take up

Assigned to @Cruel-Crab for 2 days.
After that @sahebsunny can take up

Yes sir! I am working on it. The map needs to get added to the index file right?

Assigned to @Cruel-Crab for 2 days.
After that @sahebsunny can take up

Thank you for assigning it to me sir :) I am working on it.


Running time is too long

That's not an issue. It's how the program works. Didn't you try tweaking the number of generations or other parameters? Did you not try re-implementing it in C or C++? Please do those first.


docs: Update kustomize examples to use non-deprecated resources key (zn-cn lang)

Kustomize has deprecated the use of bases in kustomization.yaml files. This PR updates all references to bases in the ko docs to use the newer resources, which is https://github.com/kubernetes-sigs/kustomize/issues/2243.
Original English PR: https://github.com/kubernetes/website/pull/40761

Need to wait for #40761

Need to wait for #40761 merged.

@windsonsea It is merged now. 🎉

Thanks.
/lgtm
/approve


Adjoint for weights

I would be interested in being able to do something like this:
using GridGraphs
using DifferentiationInterface
using Zygote

function objective(permeability)
    grid = GridGraph(permeability, directions=ROOK_DIRECTIONS)
    A = weights(grid)
    sum(A)
end

len = 100 # height and width of the grid
permeability = rand(Float32, len, len)
@time val, grad = value_and_gradient(objective, AutoZygote(), permeability)

But this fails
ERROR: Need an adjoint for constructor SparseMatrixCSC{Float32, Int64}. Gradient is of type SparseMatrixCSC{Float32, Int64}.
Any idea on how to do that?
Cheers!

I agree with you @gdalle that diagonal moves may be an overkill :). But we could also think of more generality on how the user wants to define the edge weights from the vertices values. For instance, one may want to define the weight of an edge as the mean of the source and target vertex value.
Here is a non GridGraphs implementation that has this flexibility, but that still builds the weight matrix one coefficient at a time:
const N4 = (( 0, -1, 1.0),
            (-1,  0, 1.0),
            ( 1,  0, 1.0),
            ( 0,  1, 1.0))
const N8 = ((-1, -1,  √2),
            ( 0, -1, 1.0),
            ( 1, -1,  √2),
            (-1,  0, 1.0),
            ( 1,  0, 1.0),
            (-1,  1,  √2),
            ( 0,  1, 1.0),
            ( 1,  1,  √2))

"""
    graph_matrix_from_raster(R::Matrix[, type=AffinityMatrix, neighbors::Tuple=N8, weight=TargetWeight])::SparseMatrixCSC

Compute a graph matrix, i.e. an affinity or cost matrix of the raster image `R` of cell affinities or cell costs.
The values are computed as either the value of the target cell (TargetWeight) or as harmonic (arithmetic) means
of the cell affinities (costs) weighted by the grid distance (AverageWeight). The values can be computed with
respect to eight neighbors (`N8`) or four neighbors (`N4`).
"""
function graph_matrix_from_raster(
    R::Matrix;
    matrix_type=AffinityMatrix,
    neighbors::Tuple=N8,
    weight=TargetWeight
)
    m, n = size(R)

    # Initialize the buffers of the SparseMatrixCSC
    is, js, vs = Int[], Int[], eltype(R)[]

    for j in 1:n
        for i in 1:m
            # Base node
            rij = R[i, j]
            for (ki, kj, l) in neighbors
                if !(1 <= i + ki <= m) || !(1 <= j + kj <= n)
                    # Continue when computing edge out of raster image
                    continue
                else
                    # Target node
                    rijk = R[i + ki, j + kj]
                    if iszero(rijk) || isnan(rijk)
                        # Don't include zero or NaN similaritiers
                        continue
                    end

                    push!(is, (j - 1)*m + i)
                    push!(js, (j - 1)*m + i + ki + kj*m)
                    if weight == TargetWeight
                        if matrix_type == AffinityMatrix
                            push!(vs, rijk/l)
                        elseif matrix_type == CostMatrix
                            push!(vs, rijk*l)
                        end
                    elseif weight == AverageWeight
                        if matrix_type == AffinityMatrix
                            v = 2/((inv(rij) + inv(rijk))*l)
                            push!(vs, v)
                        elseif matrix_type == CostMatrix
                            v = ((rij + rijk)*l)/2
                            push!(vs, v)
                        end
                    else
                        throw(ArgumentError("weight mode $weight not implemented"))
                    end
                end
            end
        end
    end
    return sparse(is, js, vs, m*n, m*n)
end

I have not tried yet differentiating your weights function with Enzyme, but anyhow we could surely benefit from building the adjacency matrix in one go!

I have not tried yet differentiating your weights function with Enzyme

I tried it with your code from #15 and it threw an error, I'll investigate.

anyhow we could surely benefit from building the adjacency matrix in one go! Any idea on how to do it?

I was thinking it might be possible to figure out an explicit formula for the k-th coefficient of I, J and V in the constructor sparse(I, J, V) if we restrict ourselves to lateral and vertical moves. But it's very tedious.

I tried it with your code from https://github.com/gdalle/GridGraphs.jl/issues/15 and it threw an error, I'll investigate.

Yep. For this reason, and a few other things that were bugging me, I gave it a try with JAX, and found a working solution - see below. This solution should be compatible with Zygote. When I find time, I could port this to Julia and make a PR.

def build_adjacency_matrix(gridgraph):
    """
    Create a differentiable adjacency matrix based on the vertices and
    contiguity pattern of `gridgraph`.
    """
    assert isinstance(gridgraph, GridGraph)
    # Get shape of raster
    activities = gridgraph.activities
    nrows, ncols = activities.shape
    num_nodes = gridgraph.nb_active()
    neighbors = gridgraph.neighbors
    permeability_raster = gridgraph.vertex_weights

    source_xy_coord = gridgraph.active_vertex_index_to_coord(jnp.arange(num_nodes))
    active_map = jnp.zeros_like(activities, dtype=int) - 1
    active_map = active_map.at[source_xy_coord[:,0], source_xy_coord[:,1]].set(jnp.arange(num_nodes))  # -1 if not an active vertex

    rows, cols, values = [], [], []

    for neighb in neighbors:
        candidate_target_xy_coord = source_xy_coord + neighb

        # filter edges with out out-of-bound indices
        edge_validity = (candidate_target_xy_coord[:, 0] >= 0) & (candidate_target_xy_coord[:, 0] < nrows) & (candidate_target_xy_coord[:, 1] >= 0) & (candidate_target_xy_coord[:, 1] < ncols)

        # filter out edges with inactive target pixels
        edge_validity = edge_validity * activities[candidate_target_xy_coord[:,0], candidate_target_xy_coord[:,1]]

        source_node_coord = active_map[source_xy_coord[:, 0][edge_validity], source_xy_coord[:, 1][edge_validity]]
        target_node_coord = active_map[candidate_target_xy_coord[:, 0][edge_validity], candidate_target_xy_coord[:, 1][edge_validity]]

        # Connectivity values based on permeability
        value = permeability_raster[candidate_target_xy_coord[:, 0][edge_validity], candidate_target_xy_coord[:, 1][edge_validity]]

        values.extend(value)
        rows.extend(source_node_coord)
        cols.extend(target_node_coord)

    # Stack results into arrays for COO format
    data = jnp.array(values)
    row_col_indices = jnp.vstack([jnp.array(rows), jnp.array(cols)]).T

    A = BCOO((data, row_col_indices), shape=(num_nodes, num_nodes))

    return A

I admire the effort, but this is a lot of work just to ensure compatibility with Zygote. Since Enzyme is not happy for some reason, a good alternative could be the brand new Mooncake, which also supports mutation. I tried it and it works like a charm:
using GridGraphs
using GridGraphs.Graphs
using DifferentiationInterface
import Mooncake

function objective(permeability)
    grid = GridGraph(permeability, directions=GridGraphs.ROOK_DIRECTIONS)
    A = weights(grid)
    return sum(A)
end

len = 100 # height and width of the grid
permeability = rand(Float32, len, len)

backend = AutoMooncake(; config=nothing)
prep = prepare_gradient(objective, backend, permeability);  # this is SLOW
@time val, grad = value_and_gradient(objective, prep, backend, permeability)  # this is FAST


⚠ Bofrost.at has degraded performance

In bdf7a25, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1888 ms

Resolved: Bofrost.at performance has improved in de1dfd6.


[bug/feat] Trunicated title information?

To amend Fix https://github.com/xbmc/Kore/commit/da90f92ddcb6743249ca0387b88989c7b298524d instead of trunicating long titles, please have the main remote title scroll the title back/forth horizontally while a video is playing. As some local media does have very long title information, especially episode numbers in a series is impossible to read.
Please provide some way to either view the entire title, or scroll the title information that will make key information be presentable such as the episode numbers.
-Thank you.

I modified one grid_item  with maxlines and smaller font and deleted ellipsize.
I think this is a better solution because the important information is often at the end.
Thanks!


Cursor disappears when filling the input box

When typing a text longer than the input box, when typing the last character, typically the cursor disappears, and one character is shown partially.
This is caused by the fact that the control box width is greater than the edit box width, and the former is used for text width calculations. The latter is adjusted in https://github.com/vrld/SUIT/blob/master/theme.lua#L105 to be 6 pixels less than the control's bounding box.
It would be trivial to fix it this way, but that would not cover the case where the theme is adjusted to set a different margin for the edit box:
diff --git a/input.lua b/input.lua
index e5861bd..0751f40 100644
--- a/input.lua
+++ b/input.lua
@@ -15,7 +15,7 @@ return function(core, input, ...)
 	opt.font = opt.font or love.graphics.getFont()

 	local text_width = opt.font:getWidth(input.text)
-	w = w or text_width + 4
+	w = w or text_width + 6
 	h = h or opt.font:getHeight() + 4

 	input.text = input.text or ""
@@ -29,23 +29,24 @@ return function(core, input, ...)
 	-- get size of text and cursor position
 	opt.cursor_pos = 0
 	if input.cursor > 1 then
-		local s = input.text:sub(0, utf8.offset(input.text, input.cursor)-1)
+		local s = input.text:sub(1, utf8.offset(input.text, input.cursor)-1)
 		opt.cursor_pos = opt.font:getWidth(s)
 	end

 	-- compute drawing offset
+	local wm = w - 6 -- consider margin
 	input.text_draw_offset = input.text_draw_offset or 0
 	if opt.cursor_pos - input.text_draw_offset < 0 then
 		-- cursor left of input box
 		input.text_draw_offset = opt.cursor_pos
 	end
-	if opt.cursor_pos - input.text_draw_offset > w then
+	if opt.cursor_pos - input.text_draw_offset > wm then
 		-- cursor right of input box
-		input.text_draw_offset = opt.cursor_pos - w
+		input.text_draw_offset = opt.cursor_pos - wm
 	end
-	if text_width - input.text_draw_offset < w and text_width > w then
+	if text_width - input.text_draw_offset < wm and text_width > wm then
 		-- text bigger than input box, but does not fill it
-		input.text_draw_offset = text_width - w
+		input.text_draw_offset = text_width - wm
 	end

 	-- user interaction

Thanks for the fix. Do you have any idea how to decouple computation of the cursor from the theme?

The question would be how to obtain that information from the theme. I guess it could be some kind of standard setting in the theme itself, that theme makers would have to set. Basically you have two nested boxes: the control container box and the clipped text input box. Let theme designers be aware of this, and let them adjust the margin for the contained box. Then make input.lua read the theme's setting to adjust the margins accordingly.


Adding Fibaro Walli Outlet using S2 always gets down to S0 even using the correct DSK

Checklist

[X]  I am not using Home Assistant. Or: a developer has told me to come here.
[X] I have checked the troubleshooting section and my problem is not described there.
[X] I have read the changelog and my problem is not mentioned there.

Deploy method
Docker
Z-Wave JS UI version
8.5.0
ZwaveJS version
10.3.1
Describe the bug
Using a SiliconLabs Z-700 chip (Aeotec Z Pi 7)
Adding Fibaro Walli Outlet (FGWOE-011) only uses S0 though S2 is offered and the korrekt DKS key is entered.
This is somehow strange, because when using SimplicityStudio from Silicon labs, adding the Fibaro node works using S2 flawless. Note that you cant just use the inclusion from SS, you must use zwave2mqtt, else the node is not properly recognized by zwave2mqtt.

In September, I added the node the first time and made it to have a S2 security instant, but afterwards, as I removed the node for testing purposes, it never added with S2 again. Fully resetting the node does not change the behaviour. Interestingly it always shows all S2 capabilities and I can enter the DSK, but it never uses S2 but S0 only. Removing the checkmark to use S0, it does not include the node. But as SimplicityStudio CAN use S2, the issue is imho in zwave2mqtt and therefore I believe it is a bug.
I have an other node, Qubino 3 Phase Smart Meter where S2 is used on both SS and zwave2mqtt, also after removing and readding the node. Seems that there is something special going on in the communication with the Fibaro.
To Reproduce
Add, the node using S2. Remove the node and re-add it again should always use S2 when offered and the correct DSK has been entered. Checked with Simplicity Studio from Silicon Labs using the same controller where it works.
Expected behavior
Adding a node offering S2 should add it correctly when the right DSK has been entered independent if it was removed before.
Additional context
No response

I am glad that I made a screenshot (node ID 13, see above) else I would not believe myself. When removing the node, resetting it, setting logs to debug and readding the node, it was added as S2 authenticated.

This is like the dentists problem. It stops hurting when you are onsite.
I have no clue what changed, all steps were identical, just see the node ID where you can see how often I tried unsucessfully. And now it authenticated correct...
I will close for now and reopen if it happens again. Thanks for the support.

🤷🏼♂  Let me know if problem comes back


Giant tilingSprite refactoring.

Rotated and trimmed textures are allowed
"full" textures use simple shader if they have WRAP_MODE.REPEAT
WRAP_MODE.REPEAT is forced if that texture uploads in TilingSprite first time
TilingSprite now has tileTransform which applies to the "zero tile" like if its been a child

This is visual test, run in examples:

var renderer = PIXI.autoDetectRenderer(800, 600);
document.body.appendChild(renderer.view);

// create the root of the scene graph
var stage = new PIXI.Container();

// create a texture from an image path
var texture = PIXI.Texture.fromImage('_assets/p2.jpeg');

/* create a tiling sprite ...
 * requires a texture, a width and a height
 * in WebGL the image size should preferably be a power of two
 */
var tilingSprite = new PIXI.extras.TilingSprite(texture, renderer.width, renderer.height);
stage.addChild(tilingSprite);

tilingSprite.tileTransform.pivot.set(400, 300);

var count = 0;
var cnt = 0;

animate();

function animate() {
    cnt = (cnt+1)%40;
    if (texture.valid) {
        var offset = Math.min(cnt, 40-cnt);
        texture.orig = new PIXI.Rectangle(0, 0, 128, 128);
        texture.frame = new PIXI.Rectangle(offset, offset, 128-2*offset, 128-2*offset);
        texture.trim = new PIXI.Rectangle(offset, offset, 128-2*offset, 128-2*offset);
        set = true;
    }

    count += 0.001;
    tilingSprite.tileTransform.rotation = count;

    tilingSprite.tileScale.x = 2 + Math.sin(count);
    tilingSprite.tileScale.y = 2 + Math.cos(count);

    tilingSprite.tilePosition.x += 1;
    tilingSprite.tilePosition.y += 1;

    // render the root container
    renderer.render(stage);

    requestAnimationFrame(animate);
}

I can't wait to test this, does it improve the quality too, which everyone complains about?

Demo video: https://monosnap.com/file/BpzIbPG6ZWHWprYclQYY4NLTknjLUT

Build in dropbox, for testing: https://dl.dropboxusercontent.com/u/46636530/pixijs/tiling/pixi.js

This is visual test for 1-4, run in examples:

var renderer = PIXI.autoDetectRenderer(800, 600);
document.body.appendChild(renderer.view);

// create the root of the scene graph
var stage = new PIXI.Container();

// create a texture from an image path
var texture = PIXI.Texture.fromImage('_assets/p2.jpeg');

/* create a tiling sprite ...
 * requires a texture, a width and a height
 * in WebGL the image size should preferably be a power of two
 */
var tilingSprite = new PIXI.extras.TilingSprite(texture, renderer.width, renderer.height);
stage.addChild(tilingSprite);

tilingSprite.tileTransform.pivot.set(400, 300);

var count = 0;
var cnt = 0;

animate();

function animate() {
    cnt = (cnt+1)%40;
    if (texture.valid) {
        var offset = Math.min(cnt, 40-cnt);
        texture.orig = new PIXI.Rectangle(0, 0, 128, 128);
        texture.frame = new PIXI.Rectangle(offset, offset, 128-2*offset, 128-2*offset);
        texture.trim = new PIXI.Rectangle(offset, offset, 128-2*offset, 128-2*offset);
        set = true;
    }

    count += 0.001;
    tilingSprite.tileTransform.rotation = count;

    tilingSprite.tileScale.x = 2 + Math.sin(count);
    tilingSprite.tileScale.y = 2 + Math.cos(count);

    tilingSprite.tilePosition.x += 1;
    tilingSprite.tilePosition.y += 1;

    // render the root container
    renderer.render(stage);

    requestAnimationFrame(animate);
}

From #2748 we have awesome demo that starts work with this one:
texture1.smoothEdge1 = 0;
  texture2.smoothEdge1 = 0;
  texture3.smoothEdge1 = 0;

Nice man! Will review and get back to ya!

Also, I will enhance "tileTransform" thing later, may be make it like displacementSprite. I have many ideas, but I wont be able to put them in this PR before you actually accept first changes :)

The tiling is just perfect, I had a custom test for some rpg tiles, I can't distinguish manual tiling and TilingSprite now
However, when I imported https://dl.dropboxusercontent.com/u/46636530/pixijs/tiling/pixi.js - all Text's are not black rectangles (I was using 4.0.2 before this one, so it's either an issue in 4.0.3, or an issue with your build, or something else)

That's not mine, that's a new bug I think

Well in that case I hope there is a new release with your TilingSprite improvements soon, going to integrate them everywhere
Slightly off-topic, now that TilingSprite's are a thing, where do you think is the integration-edge for the TilingSprite's are, I mean, for 40x50 = 2000 Sprite's, I would definitely use TilingSprite's, but, let's say, for 6 Sprite's, is it worth using TilingSprite? - I'm wondering when it becomes beneficial, rather than a possible burden

@kaansoral we need an experiment I suppose. I think up to 10k sprites on stage are ok, and about 300 TilingSprites. However, I will make TilingSprite faster, I just cant do it in this particular PR :)

API was changed one more time, plese look at the top, about "TextureTransform"

Looks good to me! Great work @ivanpopelyshev!
If anyone would like to give this a final pass, please do! Otherwise this will get merged first thing tomorrow morning 👍

Rebase and this should be good to merge.

@englercj got it.


Update binary action

It would be also nice to add molecule tests to the new role and include them on CI.

I knew you would have said so, I was working on it in this other branch actually ;-) Just few tunes missing.
https://github.com/w3f/polkadot-secure-validator/tree/update-binary-molecule

Very nice refactors! 💯
Maybe we could use the new role in the main playbook? We could extract the code from ansible/roles/polkadot-validator/tasks/service.yml that is present in the new role and, in the main playbook, call the new role after polkadot-validator, wdyt?

I totally agree with you thanks for the tip, it's great for the sake of dry !!
I had to implement it into the validator role, because the session task really need the binary to be already started.
Please tell me wdyt

https://github.com/w3f/infrastructure/issues/319

Successfully tested even with a local trigger: deployed a validator to my personal gcp

I had to implement it into the validator role, because the session task really needs the binary to be there and already started.
Please tell me wdyt

Looks very good, thanks!


viewport coordinates for multi image

Hi,
I have a series of dzi's. Each are different sizes and have a x and y value. Example:

1.  0, 0, 2000, 3000
2.  2352, 304, 2000, 1680
3.  0, 3520, 1000, 1680
4. 1500, 3520, 1000, 1680
5. 2880, 2368, 1352, 1152
6. 4592, 2160, 2000, 1680

I'd like to position the tiles using the the original x and y values above instead of arbitrary viewport coordinates. I've tried:
        var i, tiledImage;
        var count = viewer.world.getItemCount();
        var tilesData = [...];

        for (i = 0; i < count; i++) {
          var tileData = tilesData[i];
          var imagePoint = new OpenSeadragon.Point(tileData.x, tileData.y);
          const viewerPoint = tiledImage.imageToViewportCoordinates(imagePoint);

          tiledImage = viewer.world.getItemAt(i);
          tiledImage.setPosition(viewerPoint);
        }

This works great and positions everything correctly except when my dzi's have different width and  height values. Looking at the code inside TiledImage it looks like _viewportToImageDelta uses the source width and height to calculate a ratio which is never relative to an origin say {0, 0}.
Is there a way I can position tiles that are different sizes using the x, y values defined above?
Any help will be much Appreciated!

I've found viewport.deltaPointsFromPixels, but the positioning is still not correct

Update: viewport.deltaPointsFromPixels does place the tiles in the correct location. It was throwing me off because I didn't realize that I also have to set the width. So using viewport.deltaPointsFromPixels and resetting the width on the tile displays correctly.

Glad you found a good solution! Another option is to use your original x and y values as your viewport coordinates. Because viewport coordinates are arbitrary, you can choose for them to be whatever you want. By default they go from 0 to 1, but they could just as easily go from 0 to 10,000.
Anyway, sounds like you've got things working :)

@iangilman where can i set the viewport coordinates, say from 0 to 10.000? I am looking for ways to convert the image pixels to the viewport coordinates.

@IrisLiuCY The viewport coordinates are implied by how you lay the images out. For instance, in your case you would do:
var viewer = OpenSeadragon({
  ...
  tileSources: {
    tileSource: url,
    width: 10
  }
});

...which specifies that your image will stretch from 0 to 10, and therefore your viewport coordinates go from 0 to 10.


doc/python: explain bulk package set updates

Motivation for this change
Doing #127419 and we tought documentation it would be good.
In addition to broken english I bring you: uninspired english. Bite me!
Things done

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

[ ] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
21.11 Release Notes

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/policy-for-acceptable-number-of-failures-in-a-jobset/13851/2

I imagine it might not be helpful in practice, but just in case, we have a similar document explaining how the maintainers update the Haskell package set:
https://github.com/NixOS/nixpkgs/blob/6c14b33679a27aa7767bf2c5a30a080cd2d26db6/pkgs/development/haskell-modules/HACKING.md

Updated, finally.

@jonringer I think we can merge this.


Plugin wont activate/install

Strange issue. I've successfully installed your plugin on other WP sites in the past, but downloading your zip and uploading it via WP dashboard > Plugins results in an error:

Installing plugin from uploaded file: cloudflare-image-resizing-main.zip
Unpacking the package…
Installing the plugin…
The package could not be installed. No valid plugins were found.
Plugin installation failed.

Any idea what I may be doing wrong?

Hi, go to Plugins>Add New> Then search "CF Image Resizing"
And then active the plugin. After activation if you don't find the URL setting page.  then add this your URL and /wp-admin/options-general.php?page=cf-image-resizing-settings And in the URL field add . only and click save. Don't use your URL because it will not work.

Something might have changed in the latest WordPress version, I will check when I have time and update it.

Hello, I am closing this issue since I have finally finished the Cloudflare Worker alternative. It's much more advanced and does not have this issue.
Please read my article on how to use and get the code: https://mecanik.dev/en/posts/cloudflare-image-resizing-for-wordpress/


CUPS does not recognise symlinks to devices in Docker

CUPS will not recognise a printer device (Samsung CLP 365W ) symlinked by an UDEV rule at the host and attached to a docker container based on debian:stable-slim. A directly referenced device, however, will be immediately found and suggested by system-config-printer connected to the host.
Dockerfile and the relevant fragment of docker-compose.yml are below.
FROM debian:stable-slim
MAINTAINER Alexander Mashin<EMAIL_ADDRESS>LABEL version=0.1
LABEL description="A printing server (CUPS)"

RUN apt-get update && apt-get -y install cups libcupsimage2 iproute2

# Additional driver packages:
ARG PACKAGES=printer-driver-foo2zjs
RUN apt-get install -y $PACKAGES && \
	apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*

VOLUME /var/log/cups
VOLUME /var/spool/cups
VOLUME /var/cache/cups
VOLUME /run/cups

ENV PORT=631 \
	CUPS_USER=admin \
	LOG_LEVEL=warn
COPY --chmod=777 <<-'START' /bin/start.sh
	#!/bin/sh
	set -ex

	useradd -G lpadmin -M $CUPS_USER
	cat /run/secrets/password /run/secrets/password | passwd -q $CUPS_USER

	echo 'ServerName localhost:631' > /etc/cups/client.conf

	GATEWAY=$(ip route | grep default | awk '{print $3}')
	echo "PORT $PORT
			LogLevel $LOG_LEVEL
			PageLogFormat
			ServerAlias *
			Browsing On
			BrowseLocalProtocols dnssd
			DefaultAuthType Basic
			DefaultEncryption Never
			HostNameLookups On
			WebInterface Yes
		<Location />
			Order allow,deny
			Allow from localhost
			Allow from $GATEWAY
			Allow from 192.168.1.*
		</Location>
		<Location /admin>
			Order allow,deny
			Allow from localhost
			Allow from $GATEWAY
			Allow from 192.168.1.*
		</Location>
		<Location /admin/conf>
			Order allow,deny
			Allow from localhost
			Allow from $GATEWAY
			Allow from 192.168.1.*
		</Location>" >> /etc/cups/cupsd.conf

	exec /usr/sbin/cupsd -f -c /etc/cups/cupsd.conf
START

EXPOSE $PORT 5353/udp

CMD ["/bin/start.sh"]

services:
  printer:
    container_name: printer
    build:
      context: ./services/cups
      args:
        DOCKER_BUILDKIT: 1
        PACKAGES: printer-driver-foo2zjs
    restart: unless-stopped
    environment:
      - CUPS_USER=alexander
    volumes:
      - /var/run/dbus:/var/run/dbus
    secrets:
      - source: cups-password
        target: password
    devices:
      # echo 'ATTR{idVendor}=="04e8", ATTR{idProduct}=="331a", SYMLINK+="clp_printer"' >> /etc/udev/rules.d/z21_persistent-local.rules
      # - "/dev/clp_printer:/dev/clp_printer" # -- does not work.
      - "/dev/bus/usb/001/004:/dev/bus/usb/001/004" # -- works.
    ports:
      - 631:631 # IPP printer sharing.
    deploy:
      resources:
        limits:
          memory: 1g
secrets:
  cups-password:
    file: ./secrets/cups/password

Not sure there is anything that we can do here, but I will see what I can find out...

OK, the "/dev/clp_printer" device will never work with the CUPS USB backend anyways - libusb depends on the standard device filenames, so that's what you need to list (which as you indicate does actually work...)

A dirty workaround: you can mount the whole of /dev to the container. In that case, the symlink /dev/clp_printer will work:
    volumes:
      - /var/run/dbus:/var/run/dbus
      - /dev:/dev
    devices:
      - "/dev/clp_printer:/dev/clp_printer"

Otherwise, the symlink /dev/clp_printer -> bus/usb/001/… will not be recognised as such, if even the whole of /dev/bus/usb/001 host is also mounted.


Infinite looping and rewinding doesn't work correctly

Currently it'll just keep adding more copies of itself to the transforms list.

Resolved by #1437.


Proper Naming

Naming rules, for example, lowercase uppercase
Containers
Components
ThreadPools
Streams
P2P Sinks
Must be usable in URLS

add/register/install
Extension
Agent
Service
Dependencies
ChildContainer
Maybe I prefer install


Extend test of 'requester_pays' bucket to include RUD w/ 'user_project' set

Skips the new test unless an environment variable, GOOGLE_CLOUD_TESTS_USER_PROJECT, is set.
@lukesneeringer What project should that be set to for CI?

This test, and more to be added shortly, should be in place on the storage-requester_pays-feature branch before merging #4056.

@tseaver What is RUD?

RUD is CRUD without the C (because we tested that already.

@lukesneeringer Do you have a sense about the project ID we should use for the user_project system tests?


Focus Terminal window automatically

I really love your plugin.  But the thing that bothers me is that I have to manually switch to the terminal buffer for providing input to the program. I tried using nvim-dap's dap.defaults.fallback.focus.terminal = true but no avail.
Is there anything I can do to solve my problem?

You can do this
  vim.api.nvim_create_autocmd("BufWinEnter", {
    pattern = "\\[dap-repl\\]",
    callback = vim.schedule_wrap(function(args)
      vim.api.nvim_set_current_win(vim.fn.bufwinid(args.buf))
    end)
  })

schedule_wrap is used because the current window is changed when opening nvim-dap-ui so it defers running it until after all windows have been opened


Precedence in JSON/NIfTI metadata mismatch

Over in bids-standard/pybids#357, we've been having a small discussion over the precedence of metadata when JSON sidecars and NIfTI disagree. Specifically the question was whether to take the 4th pixdim from the NIfTI or the RepetitionTime entry in the BIDS metadata, which only matters when there is disagreement.
It is the case that, at least for RepetitionTime, a mismatch is treated as an error by the validator. However, in practice, not every dataset is run through the validator before being exposed to pybids or pushed through a BIDS App... In user support for fMRIPrep, we've seen enough issues that would be solved by running through the validator that we now bundle the validator and run it before starting fMRIPrep.
There are other metadata entries that do not produce errors on disagreement, such as PhaseEncodingDirection and SliceEncodingDirection (packed in the dim_info field), SliceTiming (slice_code), which thus need to have a defined precedence (or begin producing errors).
fMRIPrep for one has made a policy of only querying JSON for pretty much everything besides voxel spatial dimensions, affines and data shape, and this seems like the correct approach for BIDS-aware applications. But it is also the case that we have a number of BIDS Apps that are just shims over existing non-BIDS-aware apps, which will thus only have NIfTI headers to rely upon, except where the shim writer also feeds in JSON metadata through another side channel.
I don't really have a satisfying proposal to make here, so this is mostly the start of a discussion. My inclination is that we should continue to prioritize JSON-encoded metadata, and increase the coverage of potential header/sidecar conflicts in the validator. In addition to the idea of respecting BIDS as a structure is the fact that JSON is easier to inspect and edit by hand, whereas modifying NIfTI headers requires more knowledge of some tool that can do the job. But making this a spec requirement may render some existing BIDS Apps non-compliant.
I would also suggest that a useful tool (possibly validator mode) would be to sync JSON metadata into NIfTI headers to resolve mismatches.
This may be somewhat related to #102.

There are other metadata entries that do not produce errors on disagreement, such as PhaseEncodingDirection and SliceEncodingDirection (packed in the dim_info field), SliceTiming (slice_code), which thus need to have a defined precedence (or begin producing errors).

It might be worth opening issues for adding those consistency checks at https://github.com/bids-standard/bids-validator/issues.
I would vote for requiring header/JSON consistency in the spec (as it is now) and not specifying which takes precedence (since this suggest that consistency requirement is not very serious). FMRIPREP now runs the validator before starting any processing which should help resolving such issues.

Requiring consistency is likely to invalidate existing datasets, as it's very common to have unset specify dim_info or slice_code. So perhaps we should say "if set, must be consistent"?

Good point. For those fields, the spec does not talk about consistency with the headers so the spec would have to be modified before the validator. However, we might be splitting hairs here since:

phase_dim does not include polarity information (in contrast to PhaseEncodingDirection) so it is not enough to perform phase unwarping
slice_dim is almost always z to the extent that I believe most tools use that value as default

pinging @yarikoptic here - since this came up recently. was there ever a resolution to this in the spec?

just chiming in to say that in mne-bids we are valueing BIDS metadata over data file embedded metadata. cc @hoechenberger @agramfort

Made a concrete proposal over at #761 to help move the discussion along.


Add ANSI support in SUM and AVG

What is the problem the feature request solves?
Spark has specific handling of overflows when ANSI mode is enabled and we need to add the same in Comet.
Describe the potential solution
No response
Additional context
No response

hello @andygrove i want to work on this issue, can you please assign it to me

Thanks @dharanad.

@dharanad Checking if you are still working on this, if not I can take a stab at it. Thanks.

@SatyaKuppam go ahead.


Feature Request: extend config option

The usecase for us is that we share a lot of configs among multiple repositories. We track the "shared" configuration separately to our codebases, and the individual repos pull that as a submodule, and extend from it in pyproject.toml. If we need to do major changes like changing our extra-index address for example, this would help us do that more efficiently.
Essentially, I'd appreciate having something like ruff's extend directive available for uv's config. None of the additional extend-[...] options are really relevant here in my opinion, as there aren't any arrays to extend in uv's config as far as I can tell.
This already works great for us with ruff and also pyright, and while uv requires substantially less configuration, would still be nice to have it work similarly.

Heya, is there any chance this can get some priority? Would help us roll out uv in our org :)

Given the lack of additional interest and the amount of work we have on our plate right now, it seems unlikely that we can devote time to this in the near future. Sorry.


⚠ ClamAV has degraded performance

In add6ae5, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 120 ms

Resolved: ClamAV performance has improved in 1a5a2d2.


"knife cookbook site install" not working

I tried installing the cookbook using "knife cookbook site install" and I get the following error.
ERROR: IOError: Cannot open or read /home/chef-repo/cookbooks/iptables/metadata.rb!
Also, I noticed a metadata.json gets generated inside the cookbook directory, but no metadata.rb is present.
Any thoughts?

Hi salmonte,
Not sure if it will work for you but I had the same issue on my Mac. After upgrading the chefdk to the latest version: https://downloads.chef.io/chef-dk/ the cookbook installed, as did several others that were also broken.
Regards,
Bart

Hi Bart,
Thanks for the update. I updated to the latest chef-dk and that worked for
me!
Regards,
Steven Almonte
On Sat, Jan 24, 2015 at 11:59 AM, Bart Lute<EMAIL_ADDRESS>wrote:

Hi salmonte,
Not sure if it will work for you but I had the same issue on my Mac. After
upgrading the chefdk to the latest version:
https://downloads.chef.io/chef-dk/ the cookbook installed, as did several
others that were also broken.
Regards,
Bart
—
Reply to this email directly or view it on GitHub
https://github.com/opscode-cookbooks/iptables/issues/27#issuecomment-71326945
.

--
Steven Almonte
<EMAIL_ADDRESS>Mobile:<PHONE_NUMBER>

This should be fixed in the 1.0 release, which now includes the metadata file


code not accepted because comments contain switch statement

Challenge Name

Issue Description

challenge not accepted even though it is correct.
Browser Information

Browser Name, Version: Chrome: 58.0.3029.110
Operating System: OSX: Sierra
Mobile, Desktop, or Tablet: Desktop / Laptop

Your Code

// Setup
function phoneticLookup(val) {
//   var result = "";

  // Only change code below this line
  var hash = {
    alpha:"Adams",
    bravo:"Boston",
    charlie:"Chicago",
    delta:"Denver",
    echo: "Easy",
    foxtrot: "Frank"
  };
//   switch(val) {
//     case "alpha":
//       result = "Adams";
//       break;
//     case "bravo":
//       result = "Boston";
//       break;
//     case "charlie":
//       result = "Chicago";
//       break;
//     case "delta":
//       result = "Denver";
//       break;
//     case "echo":
//       result = "Easy";
//       break;
//     case "foxtrot":
//       result = "Frank";
//   }

  // Only change code above this line
  return hash[val];
}

// Change this value to test
phoneticLookup("charlie");

Screenshot

This issue has appeared in other challenges. There was a promising potential solution using AST traversal, but I don't think it was ever added #11456. The other option was to use a more clever regex to take this into account. This was discussed as well #11360.

@mmclau14 try to compare the commented switch statement with your current code again, at a glance I can see that most of the arguments  are not within parentheses this may be the problem you are facing

For more help try sharing your code and ask for hints, tips, and code review in the Freecodecamp Chatrooms found here, specifically you want to join HelpJavascript

Happy Coding! :tada: :smile: :tada:

@tommygebru The code is valid. The tests use regex to check the code. So the code in the comments is failing the test.

@mmclau14 thanks for the issue. This appears to be a duplicate of older issues that @MiloATH has pointed out (thanks for searching for them!). Closing as a duplicate issue. Happy coding!

ya. the code is definitely valid and i was able to test simply by removing the commented block. thanks for the quick response guys!


Checking in does not build the game

I have a MakeCode arcade game that I checked into GitHub:
https://github.com/nbarkhina/tetris-makecode?tab=readme-ov-file
The first checkin generated a copy of the game here which users can play in the browser:
https://nbarkhina.github.io/tetris-makecode/
however every new checkin that I do from MakeCode is not updating this initial generated copy, it's still showing the old version that initially got checked in. Is there a way to regenerate this built web version? So people can play the latest version on the web?
Also according to this documentation it's supposed to render the compiled game but it doesn't seem like it's doing that -
https://arcade.makecode.com/github/pages
After checking in and clicking the "Open Pages" it's still the old version -

thanks

Update - I think I figured it out, you have to click on "Create Release" and that is what updates the compiled version in GitHub pages. Is that correct?


Make the node binaries available using cabal

Make the node and cli binaries available using cabal.
Pre-submit checklist:

Branch

[x] Commit sequence broadly makes sense
[x] Key commits have useful messages
[x] Relevant tickets are mentioned in commit messages
[x] Formatting, materialized Nix files, PNG optimization, etc. are updated

PR

[x] Self-reviewed the diff
[x] Useful pull request description
[ ] Reviewer requested

Pre-merge checklist:

[ ] Someone approved it
[ ] Commits have useful messages
[ ] Review clarifications made it into the code
[ ] History is moderately tidy; or going to squash-merge

Hold on to merging this. I still want to make a clean build to make sure all dependencies are built properly (libsodium, i am looking at you!).


<IP_ADDRESS> Release Package and Content Not Available

I had the same issue.

I have faced the same issue. According to this response(https://github.com/carla-simulator/carla/issues/7192#issuecomment-1974866723), the URL has changed and the correct one is on the dev branch.
The 50th line in Update.sh should be:
CONTENT_LINK=https://carla-assets.s3.us-east-005.backblazeb2.com/${CONTENT_ID}.tar.gz

https://carla-releases.s3.us-east-005.backblazeb2.com/Linux/CARLA_0.9.13.tar.gz
try it,change 0.9.13 to your own version


Feature/plinfra 3047  mising rpc answers

This PR allows us to use RPC with guerantee to send the request when the replyTo queue is bound (if set up with it)

@ptusch :+1: :+1: :+1: :+1: :+1: :+1: :+1:


few fixes

📑 Description

correction of a few too many changes h3 to ### in .md files
GitHub button on examples - TODO: individual link per page
sidebar menu now as a foreach loop
footer width corrections

✅ Checks

[x] My pull request adheres to the code style of this project
[x] My code requires changes to the documentation
[x] I have updated the documentation as required
[ ] I have checked the page with https://validator.unl.edu/
[x] All the tests have passed
[x] My pull request is based on the latest commit (not the npm version).

ℹ Additional Information

@jjagielka Is it ready to be merged?


Verify load of DAGMC plugin when starting Trelis via output to comman…

Upon opening Trelis, the string "Loading DAGMC export plugin..." is printed to the console for easy verification that the plugin has loaded.

It might seem odd that I used print_error rather than print_message but the former command was the only way I could get the string to appear in the Trelis console at load time.

Any comments on this?

Does printing "Loading DAGMC export plugin..." indicate that it is currently loading (ie, a message should print that it was successful)? The "..." would make me think that the loading hung and it didn't actually work. Or should it instead be something like "Successfully loaded DAGMC export plugin." (ie, it has already successfully loaded and nothing else needs to be done)?

Mmm that's a fair point. I'm thinking something like "Loaded DAGMC export plugin."

Thanks @Pshriwise


Make sure unwanted payloads are skipped

See https://github.com/ansible/molecule/pull/2162#issuecomment-510373989.

Unfortunately we can't unit test (import configuration causes issues, see last CI build). It is triggered by the functional tests. The tests in https://github.com/ansible/molecule/pull/1811 do cover this but they're not ready yet. I assume this will break other peoples playbooks, so better get it in first to un-block any releasing. It's a patch for the work in ba351aaf27cbc2e980602f1aafee3e81f947413f.

The tests in #1811 do cover this but they're not ready yet. I assume this will break other peoples playbooks, so better get it in first to un-block any releasing. It's a patch for the work in ba351aa.

To clarify, the work in #1811 won't be in now but I have validated this patch manually.
That's what I can do for now.


reorganize datainterfaces directory

fix Issue #153
Motivation
The original method of appending newly made data interfaces under a nesting structure of simple nwb-conversion-tools/datainterfaces/* was becoming inflated, making it difficult to navigate. The new structure nests them by modality in the list ["ecephys", "ophys", "behavior"]. In the future, planning to extend to "icephys" as well.
How to test the behavior?
The testing infrastructure has either been altered along the new import structure, or is robust to those changes.
Checklist

[X] Have you checked our Contributing document?
[X] Have you ensured the PR description clearly describes problem and the solution?
[X] Is your contribution compliant with our coding style? Read about PEP8 and black.
[X] Have you checked to ensure that there aren't other open or previously closed Pull Requests for the same change?
[X] Have you included the relevant issue number using #XXX notation where XXX is the issue number?

The one interesting special case is our most recent interface, Axona, which has a PositionInterface (behavior type) attached to the RawIO and thus is still contained in the same file as the ecephys RecordingExtractor.
Tests are currently failing because the CI is checking out the main branch rather than the new one - see this discussion which had some tips I've tried but so far no luck: https://github.com/actions/checkout/issues/15

a) Of course, there are plenty of other formats that might mirror that. For instance, the mease-lab-to-nwb project had some intan data that had accelerometer channels plugged in and thus contained in the 'raw' data format. If we hypothetically made a general  IntanAccelerometer interface, should that interface then belong within the ecephys/intan nesting or should both this and the Axona be separated under the behavior/<format name> (even though that format might also exist in ecephys)?
b) It's hard to imagine what movie files wouldn't reflect behavior in some way, but perhaps the MovieDataInterface should belong under a misc nesting header?
@bendichter @luiztauffer @sbuergers Any thoughts?

I see the issue, but I say if it's primarily ecephys let's put it in ecephys, even if it can contains behavioral data as well.

I also prefer this proposed organization, here are some points:

Shouldn’t we wait for #181 and #183 to be merged into master? Otherwise we might have bad conflicts to solve.

We should move the modality-specific base interfaces to their modality-specific folders. Examples: basesegmentationextractorinterface.py to datainterfaces/ophys and baserecordingextractorinterface to datainterfaces/ecephys. I think basedatainterface.py and nwbconverter.py can keep living where they are.

With this re-organization of the package I would include some other changes and clean up:

The file named auto_qc.py doesn’t seem to be used, let’s consider removing it. If there’s any use for the functions in it, we can port them to some utils-like file.

We should consider renaming the file named conversion_tools.py (maybe misc.py) and relocating to it /utils.

Folder /schemas to be renamed /schema_examples and the file metafile.schema.json to be renamed metadata_schema.json and moved there. Probably also this file content needs review, but that’s for later.

/datainterfaces/interface_utils renamed to /datainterfaces/utils

These changes will also requires fixing imports here and there. I could do these changes once we tackle the first point.

@luiztauffer Thanks for taking the time to write all that out, it helps a lot.

I'm not too concerned about that, would rather get this through sooner rather than later. And #181 still has a ways to go yet.
Agreed, I've made that change now.
Git Blame shows the file auto_qc.py is almost entirely from @bendichter from 2 years ago - since I have no idea what it's used for, I'll defer to him on what to do with it. I will point out one function there check_constant_rate has a slightly different version but the same functionality present in the conversion_tools.py.
Definitely agree on moving to utils, which is now changed. The naming convention is inherited from spikeextractors, etc. where it contains all general-purpose util like functions that one might find handy during conversions.
Can you make the schema naming changes since you're more familiar with them?
Actually, on this one, I wonder if we can go a step better. All the files in this folder pertain specifically to certain interfaces and are in no way general util-like functions. We could instead dismantle the interface_utils header and put those individual files under the same nesting as their respective interfaces. A question that remains here is between (i), interface_utils/brpylib.py -> datainterfaces/ecephys/blackrock/brpylib.py, leaving some of the interfaces under /datainterfaces/ecephys/ in lone files and others that need supplementary functions in folders paired with those helper functions, or (ii) interface_utils/brpylib.py -> datainterfaces/ecephys/brpylib.py alongside all the other ecephys related files. Either way, this prevents these types of hyperspecific utils from becoming disjointed in the location across the repo. @luiztauffer which would you prefer?

Yes, I’m fine with following the SpikeInterface structure and having one extra folder per DataInterface, we can then store DataInterface-specific auxiliary files directly there. This organizes it better when the number of DataInterfaces grow too much, also helps separating them from the base shared modules. So I’d vote for datainterfaces/ecephys/blackrock/brpylib.py style

@luiztauffer Check out the latest commit distributing the ophys interfaces in an identical manner - how does it look to you?

@CodyCBakerPhD you wan to wait for #181 or should we merge it now?

@luiztauffer It hopefully shouldn't cause any conflicts if merges go properly onto master and then from master onto the dev branches, so let's go ahead with it now

lets merge this?


Stdlib&Framework compatibility checking

Summary
Check moveos-stdlib and rooch-framework compatibility.

Closes #1175

@wow-sven the timestamp of the test case should directly call fast_forward_seconds_for_local function.
test/e2e/sdk.test.ts  (13 tests | 1 failed) 18820ms
❯ test/e2e/sdk.test.ts > SDK > #sessionKey > Create session account by createSessionAccount should be ok
→ status ABORTED of type Execution with sub status 327684

Ignore the SDK error and force merge


Fix bootstrap failure (rampup)

Nodes failing to boostrap to the testnet with Failed to find scan state for the transition... error
Fix: Remove non-zkapp transactions when applying incomplete transactions to snarked ledger during bootstrap. This was interfering with the logic in apply_ordered_txns_stepwise
Explain how you tested your changes: Added a unit test that includes both payments and zkapp transactions
Checklist:

[ ] Modified the current draft of release notes with details on what is completed or incomplete within this project
[ ] Document code purpose, how to use it

Mention expected invariants, implicit constraints

[ ] Tests were added for the new behavior

Document test purpose, significance of failures
Test names should reflect their purpose

[ ] All tests pass (CI will check this if you didn't)
[ ] Serialized types are in stable-versioned modules
[ ] Does this close issues? List them

Closes #0000

!ci-build-me


vscode activates conda but points to the default python

Environment data

VS Code version: 1.31.1 (1.31.1)
Extension version (available under the Extensions sidebar): 2019.1.0
OS and version: MacOS 10.14.3 (18D42)
Python version (& distribution if applicable, e.g. Anaconda): Python 3.6, conda 4.6.4
Type of virtual environment used (N/A | venv | virtualenv | conda | ...): conda

Expected behavior
when conda activate env, anaconda's python is used. this works in the shell terminal
Actual behavior
when conda activate env, terminal states that env is activated  - prints (env) at the beginning of the line. Same with the interpreter - VScode sees it and I am able to select it.
However, which python points to the default python on MacOS, and therefore none python 3.6-dependent packages work. Same with the interpreter - VScode fails to find packages which are installed in the env
Steps to reproduce:

conda env create -n py36 python=3.6 luigi
conda activate py36
which python   // in vscode terminal

Logs
Output for Python in the Output panel (View→Output, change the drop-down the upper-right of the Output panel to Python)
___________________ ERROR collecting tests/test_reporter.py ____________________
ImportError while importing test module '/Users/philippk/Dropbox/se_projects/4_Automation/SERJ/tests/test_reporter.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
test_reporter.py:5: in <module>
    from SE.areas import get_all_areas
E   ModuleNotFoundError: No module named 'SE'
!!!!!!!!!!!!!!!!!!! Interrupted: 3 errors during collection !!!!!!!!!!!!!!!!!!!!

PROBLEMS similarly complains about lack of packages installed and type hints.
Output from Console under the Developer Tools panel (toggle Developer Tools on under Help; turn on source maps to make any tracebacks be useful by running Enable source map support for extension debugging)
(base) ZG00021:SERJ philippk$ conda activate py36
(py36) ZG00021:SERJ philippk$ which python
/usr/local/bin/python
(py36) ZG00021:SERJ philippk$ conda --version
conda 4.6.4

We don't control how conda handles activation of python. Please file an issue with conda.

If this problem is the same as my problem in #4436, then I don't think it's a conda issue. Notice that when I open iterm2 and manually run the exact same commands that VSCode appears to be running (source /Users/benlindsay/miniconda/bin/activate and conda activate ads) , everything works as expected. My PATH only gets messed up with the automatic conda activation.
On that note, @Casyfill, could you print the results of echo $PATH after the failed conda activation? I'm curious to see if you also have duplicate paths in front of path to your environment's bin directory.

Having the same problem with recent update. And I think the reason maybe how vscode handle shell initialization in Mac. So if you open a terminal outside of VSCode, the $PATH will be set by following initial script from anaconda in your bash_profile or zshrc(if you are using zsh).
export PATH="/Users/yunhao/anaconda3/bin:$PATH"
After that, if you do a echo $PATH, you will see value similar as following:
/Users/xxx/anaconda3/bin:/Users/xxx/anaconda3/condabin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
However, when you fire up vscode, for some reason, the anaconda PATH has been APPENDED to system default PATH, not PREPEND. Check with echo $PATH in vscode terminal, you will see path similar as following:
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/xxx/anaconda3/bin:/Users/xxx/anaconda3/condabin
It appeared in recent vscode version, but I'm not sure if it starts from 1.31.1 on Mac.

Having the same problem with recent update. And I think the reason maybe how vscode handle shell initialization in Mac. So if you open a terminal outside of VSCode, the $PATH will be set by following initial script from anaconda in your bash_profile or zshrc(if you are using zsh).
export PATH="/Users/xxx/anaconda3/bin:$PATH"
After that, if you do a echo $PATH, you will see value similar as following:
/Users/xxx/anaconda3/bin:/Users/xxx/anaconda3/condabin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
However, when you fire up vscode, for some reason, the anaconda PATH has been APPENDED to system default PATH, not PREPEND. Check with echo $PATH in vscode terminal, you will see path similar as following:
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/xxx/anaconda3/bin:/Users/xxx/anaconda3/condabin
It appeared in recent vscode version, but I'm not sure if it starts from 1.31.1 on Mac.
The terminal command python will match the first executable python it found in the PATH, in vscode, it will find the default system one based on PATH value.

I've found the similar problem in another old issue

Find some dark magic for workaround. In case someone with the same problem need a solution. As long as you ADD some stuff to configuration, terminal.integrated.env.osx, the content will be appended to PATH after shell initialization(source bash_profile or zshrc). In my Mojave, I simply add following empty entry to my user configuration:
"terminal.integrated.env.osx": {
		"PATH": ""
}

Then the $PATH will be the same as the external terminal.
Too busy to dive into the source code to check the root cause, maybe do it later when I have more time.

@praenubilus Thanks for the workaround! Worked like a charm.

good grief

@DonJayamanne I'm not sure whether you considered this as a issue. Actually I've located the source code and I can fix it, if I will submit a pull request, which sub-project/issue will you recommend me to submit? vscode?

The fact that you had to modify the settings to get this work and it has nothing to do with the extension means, it's not the extension that needs any PRs to resolve this.

The fact that you had to modify the settings to get this work and it has nothing to do with the extension means, it's not the extension that needs any PRs to resolve this.

Yes, I agree. There is nothing to do with the python extension.

@praenubilus Are you planning to open a pull request in the VSCode repo to get this fixed?

@praenubilus Are you planning to open a pull request in the VSCode repo to get this fixed?

Yes. But I may do it this weekend.


change command line parser package; remove meta-task stuff from comma…

…nd-line; added command to generate default tomls

changes in this PR:

changed command line parser packages from FluentCommandLineParser to CommandLineParser to address issue #1793
added a command-line parameter to generate default tomls to address issue #1592
added a microvignette to the command-line version of MetaMorpheus. this is a small yeast data file/database that gets calibration/gptmd/search run on it.

I attempted to make a unit test for the microvignette but appveyor would not build. For some reason, adding the CMD as a reference to the Test project makes the SolutionDir variable "undefined". I've left the unit test there, but commented out, in case we eventually figure out how to fix that.


Radio button could not be centered (but textView can)

Hello,
I think I've found a bug.
According to #135 , I was able to center the text without problems. However, when I changed textView to radioButton, I couldn't center it at all.
Shortened working code:

verticalLayout {

    radioGroup {
        orientation = HORIZONTAL

        // centered perfectly
        textView("Some text") {
            this.gravity = Gravity.CENTER
        }.lparams {
            width = matchParent
            weight = 1f
        }

        // not centering at all
        radioButton {
            this.gravity = Gravity.CENTER
        }.lparams {
            width = matchParent
            weight = 1f
        }
    }.lparams(width = matchParent)

}

Thank you.

Following code is centered:
`            radioGroup(){
orientation = LinearLayout.HORIZONTAL
radioButton {
text = "second(s)"
}
radioButton {
text = "minutes(s)"
}
radioButton {
text = "hour(s) !!"
}
            gravity = Gravity.CENTER
        }`

Thank you, but I don't need to center radioGroup.
Linear layout with horizontal orientation makes sure that radio buttons have the same "boxes" size.
I need to center radio button inside the box, not center all the boxes.
Again, image and code example are better than 1000 words:

The radio buttons are not centered.
verticalLayout {
 radioGroup {
  orientation = LinearLayout.HORIZONTAL

  repeat(4) {
    // 4 buttons have the same "box size"
    // they have the same distance between each other,
    // but are aligned to the left side, not the center
    radioButton {
        gravity = Gravity.CENTER
    }.lparams {
        width = matchParent
        weight = 1f
    })
  }
 }
}.lparams(width = matchParent)


refine update overall status logic

refine update overall status logic, only update overall status to Green when no failed task and current overall status is Red
add missed dependency lxml

/retitle OCPQE-17485 refine update overall status logic


Testing Github Private Repo OnWebhook with Github APPS integration on pac-e2e-ns-gkngr

Add a new PR for testing

Pipelines as Code CI/git-clone-private has successfully validated your commit.

StatusDurationName

✅ Succeeded
11 seconds
git-clone-from-catalog


marketplace extensions cannot connect

Does this issue occur when all extensions are disabled?: Yes/No

VS Code Version:  1.60.1
OS Version: Windows_NT x64 10.0.19043

Steps to Reproduce:

Open VS Code
Try to search in marketplace

I'm very new at VSCode and I need some help with it.
As I open the VSCode, i got the following error. I tried to use it at home, at corporation non of them worked. We dont use proxy. I have a basic firewall on the computer. I tried a lots of settings forexample this one: https://github.com/microsoft/vscode/issues/106342 and this one https://github.com/microsoft/vscode/issues/106341
Nothing helped.
[error] net::ERR_TUNNEL_CONNECTION_FAILED: Error: net::ERR_TUNNEL_CONNECTION_FAILED
at SimpleURLLoaderWrapper. (electron/js2c/browser_init.js:109:7068)
at SimpleURLLoaderWrapper.emit (events.js:315:20)
In developer tools i got the following error too :
(failed)net::ERR_TUNNEL_CONNECTION_FAILED

I'm very new at VSCode and I need some help with it.
Thank you!

It says net::ERR_TUNNEL_CONNECTION_FAILED to a simply vscode check for updates..

:/

Could you start VS Code with --log-net-log=netlog.json, retry the failing feature and then post the created netlog.json here?

I started it with the --log-net-log=netlog.json but I couldn't find any netlog.json file. I have the following log in the commandline.

@Stimea87 Not sure what the default is, could you try an absolute path?

Relative paths are allowed for --log-net-log switch, @Stimea87 the file will be created only after you have exited the application.


Add support for datetime in queries

Awesome module, use it alot.
I've been missing being able to pass datetime to Get-TibberConsumption..
-Last is not really super user friendly.
I've worked out how to format the graphql query for getting a month.
https://gist.github.com/trackd/7a06b4a3f63e4b8e67696d6dd368a6e4
important bits
[int]$hours = ($date.AddMonths(1) - $date).TotalHours
$DateString = Get-Date -Date $date -Format s
$DateByte = [System.Text.Encoding]::UTF8.GetBytes($DateString)
$base64DateTime = [System.Convert]::ToBase64String($DateByte)
# then in the graph query you can format it like this

consumption(resolution: HOURLY, after: `"$base64DateTime`", first: $hours)

You may use the code as you wish or if you prefer i can work up a PR to integrate into your code. (if it's something you want to add).

Really great stuff 🎉- I went ahead and added this functionality in PR #20. Please have a look and let me know if this works as you would expect.

Wow, that was super fast! nice 🥇
I did think about one thing, this is more of a choice though.
default [datetetime] assignment like
([datetime]'2023-11-12').ToString()
2023-11-12 00:00:00

So if someone does, -From 2023-10-01 -To 2023-10-31
It will not include the last day
Get-TibberConsumption -From 2023-10-29 -To 2023-10-31 | Select-Object -Last 1

from            : 2023-10-30 22:00:00
to              : 2023-10-30 23:00:00
unitPrice       : 0,6278
unitPriceVAT    : 0,12556
consumption     : 3,229
consumptionUnit : kWh
cost            : 2,0271662
currency        : SEK
__typename      : Consumption

that is a bit odd, it's missing an hour.
I might've aliased the -From/-To to something like -Start/-End as well just for ease of use.

I might've aliased the -From/-To to something like -Start/-End as well just for ease of use.

Done!

... It will not include the last day

I will think about this some more, but my initial thought is to leave it as it and leave it to the caller to handle.

... that is a bit odd, it's missing an hour.

I got confused about the APIs use of UTC. Fixed in f821fe263bb4bdeda087c8cffbe3b4492ac35530.

I will think about this some more, but my initial thought is to leave it as it and leave it to the caller to handle.

Yea i get that, might make the most sense to just mention it in the help or documentation.

Is it even possible to distinguish between user passing 2023-10-31 and 2023-10-31T00:00:00?

This got me a bit curious..
Once it hits a [datetime] cast that info is kind of lost,
unless you start peaking around the AST with something like this but that would not be my recommendation ;)
a "simpler" approach if you wanted to be able to detect it would probably be something like this:
changing the parameter type to [String]
function Test-dt {
    [cmdletbinding()]
    param(
        [string]
        $dt
    )
    [datetime]$datetime = $dt
    $invariant = $datetime.ToString([System.Globalization.CultureInfo]::InvariantCulture)
    $current = $datetime.ToString([System.Globalization.CultureInfo]::CurrentCulture)
    [PSCustomObject]@{
        String     = $dt
        # Datetime   = $datetime
        Invariant  = $invariant
        current    = $current
        Comparison = $dt -eq $invariant -or $dt -eq $current
    }
}
# comparison fails
Test-dt (Get-Date).ToShortDateString()
# comparison is sucessful
Test-dt (Get-Date).ToString('yyyy-MM-dd HH:mm:ss')

# normal datetime format also work with this.
Test-dt (Get-Date)
Test-dt (Get-Date).ToString()

But i would probably just simplify and assume that if time 00:00:00is passed, increase the time to end of the day.
logically it makes the most sense i think, and usually if you ask an api for data between 2 dates it will include those dates.
as the -From parameter does not mean after this date (has passed)  i think the -To parameter should not mean before this date?
It doesn't matter too much to me, it's fairly easy to handle either.

...
But i would probably just simplify and assume that if time 00:00:00is passed, increase the time to end of the day.

I decided to do just that in f9a9d8e22602f8d3b826409b90f1391c14f35275. I want to keep it simple, and as you say from an API perspective it makes much more sense to have it mean 23:59:59.
It becomes ugly if you really need to pass 00:00:00, but one workaround in this case could be to just add a second (should have no impact on the result), or even just a tick (should definitely have no impact) - this will bypass the check and leave the time as is:
Get-TibberConsumption -From 2023-10-29 -To 2023-10-31 | Select-Object -Last 1

From                To                  Price    Consumption Cost
----                --                  -----    ----------- ----
2023-10-31 23:00:00 2023-11-01 00:00:00 0,27 SEK 10,89 kWh   2,93 SEK

Get-TibberConsumption -From 2023-10-29 -To 2023-10-31T00:00:01 | Select-Object -Last 1

From                To                  Price    Consumption Cost
----                --                  -----    ----------- ----
2023-10-30 23:00:00 2023-10-31 00:00:00 0,53 SEK 4,04 kWh    2,16 SEK

Get-TibberConsumption -From 2023-10-29 -To ([datetime]'2023-10-31').AddTicks(1) | Select-Object -Last 1

From                To                  Price    Consumption Cost
----                --                  -----    ----------- ----
2023-10-30 23:00:00 2023-10-31 00:00:00 0,53 SEK 4,04 kWh    2,16 SEK

... that is a bit odd, it's missing an hour.

I got confused about the APIs use of UTC. Fixed in f821fe2 (I believe, still confused... 🙂).

i think you were right before.
# using datetime branch.
Get-TibberConsumption @tibber -From 2023-11-11 -To 2023-11-11 | select -First 1

From                To                  Price    Consumption Cost
----                --                  -----    ----------- ----
2023-11-11 01:00:00 2023-11-11 02:00:00 0,42 SEK 2,02 kWh    0,84 SEK

Get-TibberConsumption @tibber -From 2023-11-11 -To 2023-11-11 | select -Last 1

From                To                  Price    Consumption Cost
----                --                  -----    ----------- ----
2023-11-12 00:00:00 2023-11-12 01:00:00 0,44 SEK 2,66 kWh    1,17 SEK

needs
$From = $From.ToUniversalTime()
[int]$first = ($To.ToUniversalTime() - $From).TotalHours

with those changes im getting the correct hours.

Reverted back to UTC in 2d2680d9263576e74c50a0fb9fb28bec2ec68e3a.

seem to work fine for me now
Get-TibberConsumption @tibber -From 2023-11-01 -To 2023-11-01 | Select-Object -First 1 -Last 1

From                To                  Price    Consumption Cost
----                --                  -----    ----------- ----
2023-11-01 00:00:00 2023-11-01 01:00:00 0,17 SEK 10,43 kWh   1,75 SEK
2023-11-01 23:00:00 2023-11-02 00:00:00 0,37 SEK 2,00 kWh    0,75 SEK


💭 Why the Photo Result Does Not Come Out in the Specified Aspect Ratio

Question
When I set photoAspectRatio to 1/1 and photoResolution to 3048, which is a 1:1 ratio, and take a picture, the resulting width and height do not come out at 1:1.
I'm using samsung galaxy s10
What I tried
const format = useCameraFormat(device, [
    {videoAspectRatio: ratio}, // 1:1
    {photoAspectRatio: ratio}, // 1:1
    {photoResolution: {width: 3048, height: 3048}},
  ]);

the output is
{"height": 288, "isMirrored": false, "isRawPhoto": false, "orientation": "landscape-left", "path": "/data/user/0/com.../cache/mrousavy2801553129656230601.jpg", "width": 352}

VisionCamera Version
3.9.2
Additional information

[ ] I am using Expo
[X] I have read the Troubleshooting Guide
[X] I agree to follow this project's Code of Conduct
[X] I searched for similar questions in the issues page as well as in the discussions page and found none.

That's not how formats work. Please read the formats documentation. Formats is what your phone natively supports, 1:1 ratio is probably not natively supported as sensors are usually 4:3.
You need to crop the photo yourself after taking it.


NTP / timestamps suddenly wrong

I just managed to get the enviro working, but in the last day the timestamps jumped. I think this may have been since I upgraded to v0.0.9 of the firmware? It now seems to think it's Christmas day…

I'm running the Enviro Weather
I upgraded to v0.0.9 firmware (the link in the release description to the uf2 file returns 404, so I used the '...filesystem-only.uf2' one)
I tried reporting direct to Adafruit.io, but this started jumping to the 24th December.
The exact difference between now and the reported timestamp is 19 days, 12 hours and 22 minutes.
I tried reporting to a custom http endpoint locally, and exactly the same happens.
It's connecting to WiFi fine and reporting via the internet to Adafruit fine, so connection isn't an issue.

Should I post the log?

Thanks for the note about the link being wrong on the release. I have now corrected this

@ZodiusInfuser thanks for the tip. I'll try to reset the time, but I have no idea how it could have got offset like that. Will report further.

That did it – powering off for > 1 min. When I upgraded to v0.0.9, that's when the offset occurred (and stuck). I may not have completely powered it off for more than a minute.


Home Assistant MQTT discovery. Unique device not created

When mqtt-io is installed on more than one Pi and ha_discovery is enabled the configuration messages sent to MQTT Discovery are merged to create a single HA device.
This occurs because the device.identifies variable sent in the config payload is not unique. A list of two IDs is sent, the first is always “mqtt-io” and the second is the unique client_id.  HA merges the devices because they all have “mqtt-io” as one of their IDs.
To resolve the issue ensure the device IDs are unique by making the following change to home_assisyant.py.
At line 37
change
	identifiers=["mqtt-io", mqtt_options.client_id]
to
	identifiers=[mqtt_options.client_id]

I had this same issue! Was mucking around with names for a half a day before I read this! I suspected it was that but had no idea how to find it. Thanks @lancasterJ !

That's crazy!  I literally just discovered this issue about 6 hours ago... and this fix 5 minutes ago!  Thanks again @lancasterJ


README cleanups

Remove venv instructions from the README
Update the help page and arguments details in the README
Update maintenance instructions in the README

Coverage remained the same at 56.937% when pulling<PHONE_NUMBER>2018a4fc16d7b98c3810817be6d848 on fixes-and-stuffs into e46eee9b3f0b0ac6926bd52ba5a80e8e530016e2 on master.


error on enable when withdraw addresses are present

Currently restake ignores withdraw addresses
Detect the presence of a withdraw address, and error on enable.

We could leave it up to the user too - warn them that while they have a different withdraw address, the operator will only be able to restake if they have enough balance to cover the delegation, otherwise the whole transaction will be skipped.
We'll have to handle that case either way, as user could grant and then set withdraw address in the future, not knowing the impact. I believe the autostaking TX will fail entirely, so no claim happens, if there wasn't enough balance (needs testing)

Need to skip users now we have batched transactions as it causes the whole batch to fail. #48 ignores them, just need to warn the user in the UI to resolve this

Improved in #305


v5 shows a warning with webpack when not using with React 18

We tried updating to v5 today, functionally all is fine, but we are seeing a build warning locally:
WARNING in ./node_modules/react-accessible-accordion/dist/es/index.js 548:16-21
export 'useId' (imported as 'useId') was not found in 'react' (possible exports: Children, Component, Fragment, Profiler, PureComponent, StrictMode, Suspense, __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED, cloneElement, createContext, createElement, createFactory, createRef, forwardRef, isValidElement, lazy, memo, useCallback, useContext, useDebugValue, useEffect, useImperativeHandle, useLayoutEffect, useMemo, useReducer, useRef, useState, version)

webpack 5.22.0 compiled with 1 warning in 12733 ms

I don't have a reproduction repository at the moment unfortunately, but can confirm we are on React 16.13.1 (currently in the process of updating to React 17).
A very similar issue happened recently over in material-ui too - https://github.com/mui/material-ui/issues/29860
Looks like this warning is a webpack limitation (https://github.com/webpack/webpack/issues/14814).
Interestingly, it seems like the MUI folks decided to roll back the useId changes until React 18 is released (because they don't need them right now for React 18 experimentation).
https://github.com/mui/material-ui/issues/29860#issuecomment-977824154
For the moment we're going to stick with v4 to avoid the noise.
Feel free to close this issue if this project's priority is getting compatibility with React 18 sooner rather than later - just wanted to raise this with you folks to get a bit of traction with the webpack fix, and to give you a heads up about the MUI approach.
Thanks!

Having the same issue on react 17.0.2

V5 is a release we cut explicitly for React 18 support (Hence the major upgrade, this was a breaking change, the webpack fix would not work as we are using React 18 new APIs), we are sticking with V4 for React 17 and under compatibility, using V4 has no functional difference outside of React version compatibility.

V5 is a release we cut explicitly for React 18 support (Hence the major upgrade, this was a breaking change, the webpack fix would not work as we are using React 18 new APIs), we are sticking with V4 for React 17 and under compatibility, using V4 has no functional difference outside of React version compatibility.

@synecdokey
mui v4 doesn't play well with vite build (vite 5.3.1).
After vite build, many v4 components' styles are broken, such as <Fab />.
And v4 also seems to be broken with parcel build (ref)
In short:
To build in vite/parcel, you need to upgrade to mui v5.
To upgrade to mui v5, you need to upgrade to react 18.
What a ...


atom / code integration collaboration

Taking this from twitter to here, just to see what we can do!
I'd love to have a core npm module that wraps most of the functionality up, so that both atom and code can just pull from the same feature set.
Right now atom-yeoman has the following features:

Generator Service

Allows package authors the ability to call a specific generator.

yo command

Lists all generators

Loads from various locations that generators can be found (in atom we can't trust some of the NODE paths, code may be very similar)
Parses files added, removed, changed, etc, and forwards that onto the service (for package authors to react to those files).

Proposal
Thoughts and ideas below.
Node Module

Generator class

Constructor

Accepts a factory function that takes a list of generators and returns a Promise<IGenerator[]> which resolves when the generator has been selected.
Accepts a factory function that takes an input question, and returns a Promise<IAnswer> which resolves when that question is completed.

This is where the editor specific package can inject it's UI elements.

Sets search locations, configurable using options.

Method for listing generators
list(pathToDirectory: string, prefix?: string): Promise<IGenerator[]>

Search prefix (only list specific generators).  Might not be required, can always be done after it returns.

Method for running a specific generator
run(pathToDirectory: string, generator: string): Promise<IResult>
Shortcut that calls generator.run() under the covers.

Example atom/code usage:
let yeomanService = new YeomanService((q: IQuestion) => showQuestionForUser(q));
yeomanService.list(process.cwd())
    .then((generators) => listGeneratorsForUser())
    .then(generator => generator.run())
    .then(result => doSomethingWithResult())

This would make it much simpler for people to use yeoman in an electron like application, so it may have uses outside of just atom/code.
Atom
Has CSP issues, there are clear work around that is already handled.  Hopefully this could be handled outside of the node module, so we don't have to worry about the nasty CSP code everywhere.
Code
Not sure if CSP is enabled, it's entirely possible it is not currently enabled.

:+1:


Correct mechanism to sigalg mapping for RSA-SHA384/512

The mapping from the Mechanism to SignatureAlgorithm contains a twisted value. The result is that RsaPkcsSha384 gets mapped to RsaPkcs1v15Sha512 and vice versa.

Thank you for catching this and sending a PR! Please see the message from @google-cla.

Thanks for the swift reply! However I don't understand what you expect me to do. I didn't get any message in my emails (junk checked), the google CLA page, or over github notifications.

Apologies! I failed to notice the CLA GitHub action was green.


Typo in paper?

Do you mean log-uniformly?

Found a missing x_t in Alg 1, too, FYI.
Nice paper, btw!

Thanks, we will fix that also!


[FLINK-27382][BP-1.15][runtime] Moves cluster shutdown to when the job cleanup is done in job mode

1.15 backport of parent PR #19567

Force-pushed update of parent PR removing the nullability of the jobStatus field...

@flinkbot run azure


Adding an ipython notebook to split the dataset for ssd7

The pull request adds a notebook to facilitate the usage of the ssd7 example. Once obtained the consolidated car dataset from udacity, the notebook allows to split the labels.csv file in train.csv and val.csv to proceed with the training of the model.

Hi Pierluigi
Please let me know if you do not mean to merge the pull request, so that I can close it.
Best
Giovanni

Hey Giovanni, I've only taken a brief look at this now. Thanks for making this, looks great! Literally a day or two before you sent me this pull request I uploaded a new version of the Udacity road traffic dataset with a train/val split due to popular demand, so the need for a split tool has somewhat decreased, but this is still useful for other datasets with annotations in CSV format.
Two comments after looking at this briefly:

For datasets that consist of image sequences extracted from videos (as is the case with the Udacity road traffic dataset) it would be better to set shuffle=False in train_test_split(), otherwise parts of the resulting training and validation datasets might end up being too similar, thus defeating the purpose of the validation dataset to measure the model's ability to generalize.
This would serve better as a function rather than loose code in a Jupyter notebook. I'm planning to unclutter the repo a bit, so I'll have to think about where this could best go before I would accept a pull request. There could be a new module with preprocessing utilities, or this could be a function in one of the existing modules, I don't know yet.

Hi Pierluigi
Thanks for answering me. Regarding your observations:

I understand your advice, nevertheless I basically see two scenarios:
a. We set shuffle=False so that the validation set serves its purpose, but in this case the model is learning from a training set filled with highly temporally correlated images, and therefore might struggle to generalize.
b. We set shuffle=True so that training and validation set come from the same distribution, and the convnet might a priori generalize a little better, even if we cannot tell it from the validation set. Anyway I am going with your suggestion, since my experience with sequences of images is very limited.
No problem in making it a function. I'll refactor it. Anyway my pull request can wait and if at some time you find it useful I will be happy to help.

One final question: is it ok to open an issue to discuss about transfer learning with ssd?
Best
Giovanni

Unless the validation split is very large, the training images will be highly temporally correlated no matter what, so scenario (a) is not an issue. For example, I made a train/val split of roughly 80/20 for the Udacity dataset. Moving roughly every fifth image from the training dataset to the validation dataset is not going to significantly reduce the temporal dependency of the images in the training dataset. But when turning this into a function you would add a shuffle argument anyway, so everybody can set it how they see fit.
Sounds good!

One final question: is it ok to open an issue to discuss about transfer learning with ssd?

Yeah, absolutely!


adding optimize along with clean up

If this is still needed, can the merge conflicts be resolved?


When use interactive learning

Rasa version:
Rasa 1.0.8
Rasa X version (if used & relevant):
Rasa 1.0.8
Python version:
Python 3.6.8
Operating system (windows, osx, ...):
Distributor ID:	Ubuntu
Description:	Ubuntu 16.04.6 LTS
Release:	16.04
Codename:	xenial
Issue:
I trained the model in local and upload to server. I am using docker-compose on server. When i use interactive learning I noticed this error.

Thanks for raising this. We're aware of these issues and are working on getting them fixed. I'll leave this open in case anyone else comes across it

I think this is referring to the duplicated messages. This is fixed as part of #sql


remove  protein sequence options from non-protein query output

In reality this probably won't be done, because  it should be superseded by general changes to the download options.....

closing this, it was a particular issue with the old site


Problem with the npm downloads/day

It's always, or mostly always, a zero.
Probably we should use the /range for the previous day, not for the current one.
I can dig what Shields does, but probably is that - for the previous day.
That's problem with the API actually:
https://api.npmjs.org/downloads/point/last-day/react
In most of the time it will show 0, i assume.

I don't know what time is based the API, but here at UTC + 2 on 20th July, it still does not shows 19th July. So, we should move 2 days backwards to get it.

Yea, this little bug bothered me weeks, thanks!


How to get the perplexity of the sequence

This project is crasy fast
But can it be applied not only to generate text but also to score it too
Is there is the way to measure the perplexity or naturalnes of the sequence, for example of a question-answer pair

Here is the PR that adds perplexity test over input prompt
https://github.com/ggerganov/ggml/pull/184

And here one more example
https://github.com/ggerganov/llama.cpp/pull/270

I haven't done it myself but it should be possible to compute it using the low-level APIs llm.eval() and llm.logits.
tokens = llm.tokenize(sentence)

all_logits = []
for token in tokens:
    llm.eval([token])
    all_logits.append(list(llm.logits))

# `all_logits` can be used to compute the log probabilities of tokens.


Add actual database storage

See https://firebase.google.com/docs/firestore/quickstart , Works well with python dicts.

Added in 28d25c96909c396f75d1af22a6e573ec3cbea62f


PA2 Level 4_1 test case

Summary
Any idea where the problem might be?
Is it the way i crafted Inc() or does it have to do with something else

you can try using flatMap in your inc representation!

Owh I GOT IT, Thankss


Integration with Security Hub / Guard Duty

Feature name
Perspectives Security Overlay
Describe the feature you'd like to see implemented
I would love to see Perspectives integrate with AWS Security Hub, and Guard Duty findings - the ability to have an architecture / infrastructure diagram with overlays showing you the highlighted Security Hub or Guard Duty Findings is a really powerful way for customers to be able to mitigate issues quickly.  If the reporting also included recommended fixes, that would enable customers to reduce their time diagnosing where a problem lies, and remediate.
Describe the value this feature will add to AWS Perspective
Highlighting security findings with best practice remediation provides a use case for AWS Perspective within the security teams of customers.

Yeah, this is definitely an avenue we want to explore and I think would complement what we already have very well.

We've evaluated this request and added it to our backlog but it is not prioritised in the immediate roadmap for the solution.


duplicate keys warning may caused by sync when run test on cypress

Version
1.0.0-beta.29
Reproduction link
https://github.com/maple-leaf/cypress-vue-test/tree/test-utils-duplicate-keys-warning-bug
Steps to reproduce

clone the repo: git clone https://github.com/maple-leaf/cypress-vue-test.git
checkout to branch: test-utils-duplicate-keys-warning-bug
install deps: npm i
run test: npm run cy:open
5: select app.cypress.spec.js to run test suites which contain bug test
open chrome devtool
you will see duplicate key warning message on console

What is expected?
not warning
What is actually happening?
duplicate key warning thrown

The warning message will not show up when run similar test with jest because it's run on node.

sync will be removed in the next release, so you should set sync to false for now.

@eddyerburgh Is there any example on how to write test code when sync is false? all examples on https://vue-test-utils.vuejs.org seem based on sync ?

There are some initial guides here—https://github.com/vuejs/vue-test-utils/pull/1156/files

Got it. Close.


Unexpected token import when using custom transformer

Do you want to request a feature or report a bug?
Bug.
What is the current behavior?
When I run npm test (jest --watch), I get:
import('Form').then(function (m) {
^^^^^^

SyntaxError: Unexpected token import

at ScriptTransformer._transformAndBuildScript (node_modules/jest-runtime/build/ScriptTransformer.js:289:17)
at Object.<anonymous> (__tests__/postbacks-form.js:1:115)

If the current behavior is a bug, please provide the steps to reproduce
Jest's part of package.json:
"jest": {
    "rootDir": "./../../",
    "modulePaths": [
      "<rootDir>tools/webpack/node_modules/",
      "<rootDir>development/app/static/css/_modules/",
      "<rootDir>development/app/static/js/_modules/"
    ],
    "transform": {
      "^.+\\.js$": "<rootDir>/tools/webpack/jest.transform.js"
    }
  }

jest.transform.js:
// Custom Jest transform implementation that wraps babel-jest and injects our
// babel presets, so we don't have to use .babelrc.
module.exports = require('babel-jest').createTransformer({
    presets: [
        require("babel-preset-react"),
        require("babel-preset-es2015")
    ],
    plugins: [
        require("babel-plugin-syntax-dynamic-import"),
    ]
});

What is the expected behavior?
Upon test execution, I expect babel-jest to load babel-plugin-syntax-dynamic-import and be able to parse dynamic imports.
Please provide your exact Jest configuration and mention your Jest, node, yarn/npm version and operating system.

Windows 7
<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>
I've also tried<EMAIL_ADDRESS>but then I have different error:
Plugin 0 specified in "base" provided an invalid property of "default"

Seems like an issue with the configuration of the dynamic import plugin for babel, not Jest.
Please note this issue tracker is not a help forum. We recommend using StackOverflow or our discord channel for questions. Thank you :)

I'm having the same issue. Upon adding "transform" to my jest config, jest stop recognizing imports.


Refactor @web5/crypto to replace Web Crypto CryptoKey with JWK

Feature Proposal Tasks:

[ ] Propose API surface design prior to implementation. This can be done by creating a draft PR for a respective feature and providing prototypal code or proposing the design in the comments
[ ] Approval Required from a minimum of 2 people

Implementation Tasks:

[ ] Produce/update API reference documentation for any/all methods added to the public API surface. documenting private API methods is optional
[ ] Produce/update relevant example usage
[ ] Test coverage must be provided for all public API methods.
[ ] Tests that consume shared test vectors must all be passing

Completed in PR #318


Simplifying solver interface

It should be possible to merge

base_solver, ode_solver and dae_solver into a single base class
scikits_ode_solver and scikits_dae_solver into a single class

Do you think this would simplify the interface @rtimms ?

yeah I think that would be good. could we also remove compute_solution and call integrate directly from solve and step? compute_solution saves rewriting the little integrate, get termination reason block of code in both step and solve, but it wouldn't be a massive bit of repetition and would probably be easier to follow for new users. (I think I introduced compute_solution, but I don't like it now haha)
I think the only solver with a drastically different interface is casadi, and we already overwrite some methods there anyway.

Ok, that sounds good - no worries, compute_solution seemed like a good idea at the time haha