Ticks for GeoAxis, other things

This PR aims to do the following things:

[X] Make GeoMakie work on Mac M1
[X] Implement working ticks and tick labels for GeoMakie
[x] Implement a "direction finder" for GeoMakie ticklabels
[X] Automatically find valid limits for projection spaces (import from #100)
[x] Tie GeoAxis into the layout system with protrusions, etc.

There are also some new examples and general cleanup (with a little bit of mess added for the future :D).
This PR depends on https://github.com/JuliaGeo/Proj4.jl/pull/57, so it will take some time before it can be merged.  (This is simply because only Proj4.jl/pull/57 works on the new Mac now).
Out of curiosity, @visr, would you happen to have an approximate target for the rename of Proj4.jl?
In order to use this branch locally, you will need to ]add Makie#master MakieCore#master CairoMakie#master GLMakie#master.
Solves #104 #99 #77 #55 #32

These are the basic surface and scatter examples:

As you can see, there are still some problems with ticks.  I'm not sure if it's scaling or they're not getting updated properly.
Tests will fail until Proj is released, which is why this is marked as a draft PR.

This is the projection example from #102

and an orthographic projection with correct limits

fig = Figure()
ga = GeoAxis(
    fig[1, 1],
    dest="+proj=ortho",
    limits = (-90,90,-90,90), # IMPORTANT - you MUST have proper limits!
    coastlines = true,
    title = "Orthographic projection with proper limits"
)
hidedecorations!(ga)
sp = surface!(ga, lons, lats, field; shading = false, colormap = (:plasma, 0.45))
cb = Colorbar(fig[1, 2], sp)
save("orthographic_with_limits.png", fig, px_per_unit=2)
fig

At this point, this is the state of the PR:

Basic example - surface

using GeoMakie, CairoMakie

lons = -180:180
lats = -90:90
# Create some field of values across `lons` and `lats`
# This grid can be of any density, but note that the
# time it takes to plot scales with the grid size!
field = [exp(cosd(l)) + 3(y/90) for l in lons, y in lats]

# Surface example
fig = Figure()
ax = GeoAxis(fig[1,1])
surface!(ax, lons, lats, field; shading = false)
save("surf_example.png", fig; px_per_unit=2)
display(fig)

Basic example - scatter

slons = rand(lons, 2000)
slats = rand(lats, 2000)
sfield = [exp(cosd(l)) + 3(y/90) for (l,y) in zip(slons, slats)]

fig = Figure()
ax = GeoAxis(fig[1,1])
scatter!(slons, slats; color = sfield)
save("scatter_example.png", fig; px_per_unit=2)
display(fig)

Projection example
lons = -180:180
lats = -90:90
field = [exp(cosd(l)) + 3(y / 90) for l in lons, y in lats]

fig = Figure()
ax1 = GeoAxis(fig[1, 1], dest = "+proj=vitk1 +lat_1=45 +lat_2=55",
    coastlines = true, title = "vitk1")
ax2 = GeoAxis(fig[1, 2], dest = "+proj=wintri",
    coastlines = true, title = "wintri")

surface!(ax1, lons, lats, field; shading = false, colormap = (:plasma, 0.45))
surface!(ax2, lons, lats, field; shading = false)
hidedecorations!(ax1)
save("projections.png", fig; resolution = (900, 400), px_per_unit=2)
fig

GeoMakie can find the input domain of your transformation through `GeoMakie.find_transform_limits(p::Proj.Transformation) in utils.jl` assuming that it takes lat-long coordinates as input.  An example is below:
fig = Figure()
ga = GeoAxis(
    fig[1, 1],
    dest="+proj=ortho",
    lonlims = Makie.automatic,
    coastlines = true,
    title = "Orthographic projection with proper limits"
)
hidedecorations!(ga)
sp = surface!(ga, lons, lats, field; shading = false, colormap = :rainbow_bgyrm_35_85_c69_n256)
cb = Colorbar(fig[1, 2], sp)
save("orthographic_with_limits.png", fig, px_per_unit=2)
fig

Here I used lonlims=Makie.automatic to trigger automatic limit setting.  You can do that to the latlims parameter as well.
Note that the color does not go to blue in the image, but the colormap does - this indicates that the surface is working correctly.
A consequence of these changes is that the API has changed.  If you want to specify ticks, you can just do ga.xticks[] = ... like you would for a normal plot, and it will accept LinearTicks, WilkinsonTicks, MultipleTicks or even just a range as in the previous examples.
I'm not sure if this autolimit thing should be the standard yet, for one reason - it cannot get the limit to be exactly 90 or 180 (since it is an approximation).  Therefore if you're plotting the whole globe, GeoAxis will end up ignoring lon=±180, and lat=±90.

Out of curiosity, @visr, would you happen to have an approximate target for the rename of Proj4.jl?

Let's try to make that happen in a week or two. Any input there is welcome.

New examples!  Check out this video of a rotating Earth:
https://user-images.githubusercontent.com/32143268/165003843-db5984f0-9ccf-49f7-847e-88fd63e80bb4.mp4
and this lovely orthographic projection of Italy's states, updated from #45

Just to note: rendering the rotating Earth (360 frames at 60 fps) takes ~20 minutes using CairoMakie :D

Note: documentation is still broken since CairoMakie is not precompiling.

I changed the logic of the ticks quite a bit - it's a little complex now, but with the nonlinearities involved in the plots it's the only solution.
Basically, once I have a set of tick positions and labels, I compute the "normal" vector pointing directly out of the plot at each location, and the bounding box of each label.  Then, I shift the label's position by that normal vector multiplied by the diagonal of its bounding box (which I also calculate).  This means that ticks are always outside the axis, which was not the case before.
Additionally, I have written some logic which removes overlapping tick labels.  Currently it's pretty brute force, but it only takes ~1ms for a reasonable number of ticks, which I feel is OK.
Basically, what this does is compute the distances between all unique pairs of tick points, and if any pair is overlapping, it will delete the first tick only.  This means that in an orthographic projection, there will be no x-ticks; the y-ticks always take primacy.  This is easy enough to change, but there had to be some default so I figured this was as good as any.
If CI passes now, I will likely merge the PR - it works with Proj4.jl as is, but a couple of one-line changes in Project.toml and it will work with Proj.jl after the rename.  I held off from changing the rectangle transformation for this reason.
New instructions to use the PR:
]add GeoMakie#as/geoaxis Makie#master CairoMakie#master MakieCore#master

and enjoy!

Some images for the README:

Hi @asinghvi17 , long time no see, happy to see you here :) I am back to work next week, currently recovering from an eye surgery. I would like to test this PR in my office where I do my meteorology work. If you can wait a week before merging, I can give you a proper PR review!

No worries - I'll probably wait to merge this until Proj4 is renamed anyway.  It will be good to get an opinion on the API from people who use this kind of stuff regularly.

recovering from an eye surgery

Oof, hope you get well soon!

Last todo: I need to have the axis update code trigger on all possible observables that could influence it.

Leaving some notes for when I come back:
Tick label alignment was still being set by the axis, but I have overridden that.  The issue is now that the tick deflection vector is off, and in different ways depending on which quadrant of the hemisphere going from (-90,90) lon it is in.  The code is here:
https://github.com/JuliaPlots/GeoMakie.jl/blob/9dbdbbf47c229df8c03cb9b2b9bb8b5c179a3a1f/src/utils.jl#L195-L226
basically, I need a smarter system to select which direction to "push" the ticklabel vectors in.
These are some images of what I have right now:

It's clear that there are some regressions, but overall the new features seem to be working well.

I put a quick script together to visualize what the tick padding algorithm was doing.  It seems as though I am only computing some sort of local curvature vector, which I should not be doing.  Though it works well enough on the large scale, it seems to perform badly on the small scale.  The red arrows in the plot below represent the direction and magnitude of the tick padding vector, although the magnitude is doubled for easier viewing.

I just looked at Cartopy's code...they seem to basically try padding until it works.
https://github.com/SciTools/cartopy/blob/63fd1e3ce7bc146a0e1a5b120441dabd4d38651c/lib/cartopy/mpl/gridliner.py#L980-L1000
Is there a way we can find whether a Rect and a line intersect?  If so I could implement this pretty easily.  It would have the advantage of the tick labels being a little more accurate in position as well.

I can test this starting tomorrow or so, but I wanted to download stuff first. @asinghvi17 do I really need master versions of e.g., CairoMakie? Why?

Mostly it's because Makie master is subtly breaking (some internal APIs have changed) and I wanted to build for that instead of having to rewrite code again later.  Plus, there was a refactor of the Axis code which makes things easier on the GeoAxis end, along with some bugfixes in CairoMakie.

@Datseris quick comment - all you need to do is add Makie#master MakieCore#master CairoMakie#master GLMakie#master.  I had written that you need a new branch of Proj4.jl in the description, but that's not required anymore.

Hacky but good: nonlinear clip in CairoMakie!

I'll be testing this today and tomorrow! Will look at existing docs for code snippets (but of course will be primarily using the code snippets of my work)

Cool!  Ping me if you have any questions (or if something doesn't build right, we recently merged a lot of PRs to Makie) @Datseris

@asinghvi17 I am testing this now. Here are some comments:

In the GeoAxis docstring you say "Note that if your data is not adjusted to the WGS84 datum" and the sentence ends there abruptly. Not sure what is supposed to follow.
Personally, I strongly dislike having E W N S in my ticks and prefer to have a minus - in front. I'd really prefer a way to do this for the ticks, and hopefully a way to also set it as a default project-wide.
How does one set specific ticks here? I see that lonlims and latlims are given to the axis, but If I want to have ticks exactly at latitude 20 and 30, how to do so?
It is not clear to me what line_density does or stands for.
Setting ax.xticks = LinearTicks(3) completely breaks the plot (e.g., the plot coming from the contourf example), so maybe we should be advertising in the docstring to access ax.xticks.
My data are in the format of having longitude in 0 to 360 degrees. This doesn't seem to work. I used the argument lonlims = (0, 360), but I get:

Error showing value of type Figure:
ERROR: MethodError: no method matching gl_convert(::Tuple{Int64, Int64})
Closest candidates are:

Apologies, I was wrong. Setting xticks works as expected, its just that I did it with the axis that had longitude 0 to 360 that made nonsensical results. E.g.

I don't really have much preference for +/- or E-W-N-S tick labels. +/- takes up less space, which can be tight when the meridians come together, giving a cleaner look. E-W-N-S is probably more traditional.

Huh.  I tried that with dest="+proj=eqearth +lon_0=180", lonlims = (0, prevfloat(360f0)) and I get this:

but plotting a normal contourf yields

which seems to indicate that there is still some wrapping. If I change lons to, e.g.,
lons = Float32.(collect(0:360))
lons[end] = prevfloat(lons[end])

then I get

so I guess you just have to force Proj to avoid wrapping.

@Datseris the issue is that the last value in lons is 360, which Proj translates to 0.  To get around that I set the last value to prevfloat(360f0), which means that Proj transforms it to the right end of the plot as opposed to the left end.
The replacement is:
using GeoMakie, CairoMakie

lons = Float32.(collect(0:360))
lons[end] = prevfloat(lons[end])
lats = -90:90
field = [exp(cosd(l)) + 3(y/90) for l in lons, y in lats]

fig = Figure()
ax = GeoAxis(fig[1,1]; dest = "+proj=eqearth +lon_0=180", lonlims = (0, prevfloat(360f0)))
contourf!(ax, lons, lats, field; shading = false)

fig

By the way, interactivity should work now, but I don't have any applications to test it with.  If you do, could you try it out and let me know?  I believe that the issue previously was that the inverse transform either didn't exist or didn't invert properly (off by a factor of 100_000), both of which should now be fixed.

i have some and i'll test it tomorrow

Alright, tested interactive stuff:

Plotting observables and updating them works as expected!
Click+drag, which would normally zoom in an normal axis, is broken. So I disabled it using MakieLayout.deactivate_interaction!(ax, :rectanglezoom).
poin = select_point(ax.scene) also works!!! I am very happy about that! It gives me the point in longitude latitude coordinates as expected! However, the point I select, and where my cursor is, are not the same. In the figure I post below, the point selection is plotted to the top left of my cursor position (not very off, but off by about 20 degrees or so).

  I will investigate further next week.

https://github.com/JuliaPlots/Makie.jl/blob/070f2a73bd53623f38593a269cf04c729b8c5a7a/src/interaction/interactive_api.jl#L212-L223
https://github.com/JuliaPlots/Makie.jl/blob/6c0f7c758a1446aa8fa98c5074f40be215b58bc2/src/camera/projection_math.jl#L241-L279
This is the code which select_point calls - I will try to roll my own mouse selection function, and if it works for this will PR it to Makie.

any thoughts one merging this soon ? ... it looks ok... still some corner cases, but good enough to be use on a daily basis.

I agree. The select_point interaction isn't really a priority for me either!

Sounds good - the whole projection mess should probably wait for Proj's big refactor anyway.  The only other work I want to do currently is fixing the tick mess and slightly refactoring GeoAxis to plot its grid to the block's scene instead of the Axis scene.  That can definitely wait though.
The other project which would be really good to do, is refactoring GeoAxis to be its own Block - instead of a thin wrapper around Axis as it is now.  The only new thing that one would need to do is to figure out a way to keep the size correct!
A new GeoAxis could be made based off of LScene, with the appropriate axis-like attributes and other similar handling.  This would really un-complicate a lot of things and remove the potential for weird bugs if the Axis code changes slightly.


feat: eth flow

Description
Contains advanced order tutorials for Eth-Flow
NOTE: Only Eth-flow tutorials are within scope for this PR.
Changes

[x] Add Eth-flow tutorials
[x] Add advanced-tutorials wide helper (gpv2order.ts)
[x] Scaffolding for ERC-1271 (i.e. Safe)

I have read the CLA Document and I hereby sign the CLA

recheck

Merging after taking into account above feedback.


Changes on home page to test percy.io

DO NOT MERGE
This PR is just to test out if  percy.io tests are set up correctly.

Hmmmm, having laptop troubles so I can't test out the percy-capybara gem locally.


⚠ Bofrost.de has degraded performance

In 85c434e, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 933 ms

Resolved: Bofrost.de performance has improved in 5c1b0f8.


Update README.md

Codecov Report

Merging #19 (2f519ec) into master (9aa368a) will decrease coverage by 0.09%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master      #19      +/-   ##
==========================================
- Coverage   35.53%   35.43%   -0.10%
==========================================
  Files          20       20
  Lines        1047     1047
==========================================
- Hits          372      371       -1
- Misses        675      676       +1

Flag
Coverage Δ

unittests
35.43% <ø> (-0.10%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

cmdproc/guesscmd.py
95.31% <0.00%> (-0.79%)
:arrow_down:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 9aa368a...0d43d56. Read the comment docs.

Codecov Report

Merging #19 (2f519ec) into master (9aa368a) will decrease coverage by 0.09%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master      #19      +/-   ##
==========================================
- Coverage   35.53%   35.43%   -0.10%
==========================================
  Files          20       20
  Lines        1047     1047
==========================================
- Hits          372      371       -1
- Misses        675      676       +1

Flag
Coverage Δ

unittests
35.43% <ø> (-0.10%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

cmdproc/guesscmd.py
95.31% <0.00%> (-0.79%)
:arrow_down:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 9aa368a...0d43d56. Read the comment docs.


Incompatible browsers  need to show a message to the user

Description:
For incompatible browsers we need to show a message to the user. Currently an animated circular icon keeps moving below the ballerina logo which gives an indication that the application is still loading. If we can show a message similar to "not compatible with this browser" will be useful for the user
Steps to reproduce:
1.Open the ballerina composer on IE11
Affected Versions:
ballerina-tools-0.970.1-SNAPSHOT
OS, DB, other environment details and versions:
1.Windows 7
2.IE11

Composer is discontinued hence closing the issue.


Update Cilium description

Cilium project has grown considerably since the description was last updated and these changes make it more clear what the project now offers

Hi @sftim  can you serve as the technical reviewer for this as requested? Please just add a /lgtm if this is technically correct,
suggest if anything to add @bradtopol
/assign
/assign @sftim

/lgtm

@xmulligan now that this change is smaller, could you squash it down to 1 commit?
If you're not sure how, I'm willing to do that squash for you (I can use my maintainer access to do that).

@sftim That would be great if you could do that. I'm not sure how to get rid of the merge commit 😓

/label tide/merge-method-squash

Re-apply lgtm from this comment
/lgtm
/approve


Add Outliner to Info sidebar and add help sidebar

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

This PR implements the Outliner design note - https://github.com/node-red/designs/pull/20
In summary it:

Redesigns the Info sidebar to add a tree-based summary of the workspace contents
Introduces a new Help sidebar - where help is now shown rather than on the info sidebar

Coverage decreased (-0.02%) to 77.485% when pulling 9f29149d870b623e05bec8b670afa518fcf055e9 on outliner into 189389f96a12975c7e2552dd29f9ade1e2ae3e21 on dev.


Remove screen clearing.

Currently all screens get cleared after rendering them. Offending line: https://github.com/GlPortal/RadixEngine/blob/master/source/BaseGame.cpp#L137
This is bad and can be removed when #108 is finished, which allows the screen to remove itself from rendering.

Fixed


There's some weird behavior when a node ref is attached to a component

Problem
I created a minimal demonstration here: https://github.com/IcyDefiance/yew-noderef-bug
This demonstration has 3 components:

App just renders UsesRef
UsesRef renders Div, attaches a node ref to it, and triggers updates on itself until the node ref is available. Inside mounted and update it prints the node ref in the console.
Div just renders a div

When configured this way, here is the output:
mounted: None
update: None
update: Some(Element(Reference(15)))

However, if you mount UsesRef as the root component instead of App, it behaves a little differently:
update: None
update: Some(Element(Reference(13)))
mounted: Some(Element(Reference(13)))

To see the normal behavior, replace Div with div:
mounted: Some(Element(Reference(13)))
update: Some(Element(Reference(13)))

Environment:

Yew version: 0.11.0
Rust version: 1.40.0
Target if relevant: Whatever WasmPackPlugin does
stdweb version: "0.4.20"
OS: Windows
Browser: Firefox 73.0b9 and Chrome 79.0.3945.130

@IcyDefiance this issue helped uncover quite a few issues, thanks! Please test out the branch in the linked PR to make sure it works for your use-case 😄

Awesome, I've tested it here and it works. Thanks for figuring that out.

Sweet! No problem


window.crypto.subtle is undefined on iOS 10 Safari

Library

[ ]<EMAIL_ADDRESS>or<EMAIL_ADDRESS>[x]<EMAIL_ADDRESS>[ ]<EMAIL_ADDRESS>[ ]<EMAIL_ADDRESS>[ ]<EMAIL_ADDRESS>
Framework

React

Description
While attempting to log in using PublicClientApplication loginRedirect, it fails on iOS 10 devices. iOS 11 and beyond seem to work.
The error message complains about window.crypto.subtle being undefined. window and crypto are both existing, but in iOS 10 device, subtle is undefined. I wonder if it is the same as window.crypto.webkitSubtle, which can be found from the context.
I tested this with BrowserStack with a iOS 10 device, using Safari since it was the only one including dev-tools.
I assume that the issue lies here:
https://github.com/AzureAD/microsoft-authentication-library-for-js/blob/fc150c85612660d20f14e823ca32495a75b0b312/lib/msal-browser/src/crypto/BrowserCrypto.ts#L139
Error Message
{
    "line": 927,
    "column": 24,
    "sourceURL": "http://bs-local.com:5000/static/js/1.chunk.js",
    "errorCode": "pkce_not_created",
    "errorMessage": "The PKCE code challenge and verifier could not be generated. Detail:TypeError: undefined is not an object (evaluating 'window.crypto.subtle.digest')",
    "name": "BrowserAuthError"
}

Security

[ ] Is this issue security related?

Regression

[ ] Did this behavior work before?

MSAL Configuration
// Provide configuration values here.
// For Azure B2C issues, please include your policies.

const MSAL_CONFIG: Configuration = {
  auth: {
    clientId: "my-client-id",
    authority: b2cPolicies.authorities.signUpSignIn.authority,
    knownAuthorities: [
      b2cPolicies.authorities.signUpSignIn.authority,
      b2cPolicies.authorities.forgotPassword.authority,
    ],
    redirectUri: appRoot,
    postLogoutRedirectUri: appRoot,
  },
  cache: {
    cacheLocation: "sessionStorage", // This configures where your cache will be stored
    storeAuthStateInCookie: false, // Set this to "true" if you are having issues on IE11 or Edge
  },
  system: {
    loggerOptions: {
      loggerCallback: (level, message, containsPii) => {
        if (containsPii) {
          return;
        }
        switch (level) {
          case LogLevel.Error:
            console.error(message);
            return;
          case LogLevel.Info:
            console.info(message);
            return;
          case LogLevel.Verbose:
            console.debug(message);
            return;
          case LogLevel.Warning:
            console.warn(message);
            return;
        }
      },
    },
  },
};

Reproduction steps
// This should result in error using device with iOS 10.
const msalInstance = new PublicClientApplication(MSAL_CONFIG);

msalInstance.loginRedirect(loginRequest).catch(e => {
        console.log("*************");
        console.log(JSON.stringify(e, null, 4));
        console.log("*************");
      });

Expected behavior
Browsers/Environment

[ ] Chrome
[ ] Firefox
[ ] Edge
[x] Safari
[ ] IE
[x] Other (Safari on iOS 10)

Unfortunately, iOS 10.2 and below does not support the standard SubtleCrypto, instead supporting Safari's non-standard webkitSubtle. Given that the standard SubtleCrypto APIs should be supported in 10.3 and above, and the relatively low usage of iOS 10, I think it is unlikely we will prioritize supporting older browsers like iOS Safari that do not support the standard APIs.
You are welcome to open a PR adding support for these APIs for us to consider. You can also look at polyfills such as MSR Crypto.


Hunks

Hi!
I'd like to use grit for code review, so I needed to parse the Commit diff and get individual hunks. I figure this is generic functionality that can and should go into grit, so I added a patch.
The old tests pass, sans a small difference --  right now, Commit.diff will never return nil; I figured it doesn't make sense that sometimes it would return nil, and sometimes it would return an empty string, so now it'll always return an empty string when it used to return nil.
I hope you'll consider merging my change, and thank you very much for the awesome code!

Rebased against mojombo/master again.


Build XskFwd sample for kernel and user mode

Description
Describe the purpose of and changes within this Pull Request.
Adds a kernel mode sample of the new XDP kernel mode API and fixes bugs uncovered.
Testing
Do any existing tests cover this change? Are new tests needed?
No test automation was added.
Documentation
Is there any documentation impact for this change?
No.
Installation
Is there any installer impact for this change?
No.

Do any existing tests cover this change? Are new tests needed?
No test automation was added.

How easy would be to add something, even if it's not exhaustive.

No test automation was added.

How easy would be to add something, even if it's not exhaustive.

I've added a sanity test to the CI for kernel sockets.


docs: fix @return type in FormatterInterface

Description

fix @return type

Checklist:

[x] Securely signed commits
[x] Component(s) with PHPDoc blocks, only if necessary or adds value
[] Unit testing, with >80% coverage
[] User guide updated
[x] Conforms to style guide

Thank you @kenjis


(M1 Big Sur) Failed to create new OS thread (have 2 already; errno=22)

I was trying to run this image locally with following command for my KAFKA, ZooKeeper setup
`docker run --rm -it -p 3181:3181 -p 3040:3040 -p 7081:7081 -p 7082:7082 -p 7083:7083 -p 7092:7092 -e ZK_PORT=3181 -e WEB_PORT=3040 -e REGISTRY_PORT=8081 -e REST_PORT=7082 -e CONNECT_PORT=7083 -e BROKER_PORT=7092 -e ADV_HOST=<IP_ADDRESS> landoop/fast-data-dev
`
First I get the following warning
WARNING: The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested
And following is the log that a receive entirely
Setting advertised host to <IP_ADDRESS>.
runtime: failed to create new OS thread (have 2 already; errno=22)
fatal error: newosproc

runtime stack:
runtime.throw(0x512269, 0x9)
	/usr/lib/go/src/runtime/panic.go:566 +0x95
runtime.newosproc(0xc420030000, 0xc42003ffc0)
	/usr/lib/go/src/runtime/os_linux.go:160 +0x194
runtime.newm(0x5203a0, 0x0)
	/usr/lib/go/src/runtime/proc.go:1572 +0x132
runtime.main.func1()
	/usr/lib/go/src/runtime/proc.go:126 +0x36
runtime.systemstack(0x593600)
	/usr/lib/go/src/runtime/asm_amd64.s:298 +0x79
runtime.mstart()
	/usr/lib/go/src/runtime/proc.go:1079

goroutine 1 [running]:
runtime.systemstack_switch()
	/usr/lib/go/src/runtime/asm_amd64.s:252 fp=0xc42002a768 sp=0xc42002a760
runtime.main()
	/usr/lib/go/src/runtime/proc.go:127 +0x6c fp=0xc42002a7c0 sp=0xc42002a768
runtime.goexit()
	/usr/lib/go/src/runtime/asm_amd64.s:2086 +0x1 fp=0xc42002a7c8 sp=0xc42002a7c0
Could not successfully bind to port 3181. Maybe some other service
in your system is using it? Please free the port and try again.
Exiting.

Please let me know if anyone comes around on working fix with this given issue

Looks related to #175?

Hi there - Do you have plans to support arm64 / Apple M1 chips? I looked into the related issue, but it's still opened and the workaround involves forking/cloning, changing and building it my own. I was looking into a more "official" fix for this.


Add support for RunAbove?

Is it possible to add support for https://www.runabove.com/index.xml?
Thanks,
N

@ne0ark, happy holidays!
In December i have sent some questions to RA support. They also answered, that api have interface for snapshots. So will wait for pure ruby interface :)


Using filter module

Hi,
It is possible to use this directive with filter options?

Hi there, could you give us a code snippet to explain the use case? thanks!

I'm trying to do the same thing. When the collection is filtered it is not reflected in the slides:

  <input type="text" ng-model="mySearch">

{{item}}

  <flex-slider flex-slide="item in collection track by $index | filter:mySearch">

  </flex-slider>

From that example I'd try to have the expression like so:
flex-slide="item in collection | filter:mySearch track by $index"

That said a $watchColleciton is used to track changes in the collection and it should work with a filter.

It is happening only for the first time. After that even though watchCollection is triggered, it is not updating the dom elements :(


Add Click

Implement Click
Starting with https://click.palletsprojects.com/en/8.0.x/quickstart/, implement a few cli commands to expand upon

https://dev.to/bowmanjd/build-a-command-line-interface-with-python-poetry-and-click-1f5k
@sophiastewart202 take a look at this for support!


[1.1] test_problem.TestProblem.test_div is segfaulting

The test test_div in test_problem.py fails with a segmentation fault.

Minimal reproduction
import cvxpy as cp

x = cp.Variable()
obj = cp.Minimize(x / 5)
problem = cp.Problem(obj, [x == 5])
problem.solve(cp.SCS)


Unable to extract tarball to temporary directory

It does not seem possible to extract a tarball (with tarfile.extractall) to a temporary directory (as created with tempfile.TemporaryDirectory()). My initial guess was to add gettempdir() as a real directory, but it looks like pyfakefs already does this (though I don't know whether it does this as a real or fake directory or if that matters). Anyway, I get an error like this currently: [Errno 21] Is a directory in the fake filesystem: '/var/folders/qx/hcbbxc3x5qq2dy5z4kz4fxy00000gn/T/tmpnpt7mum2' (this is on OSX).
Is there a workaround for this? Am I doing something incorrectly?

Think this might just be user error. Will reopen if I can't figure it out.

That's ok - better reporting a non-bug than not reporting a real bug!


#include <stddef.h> missing in bit_shift.h

At least on Ubuntu 21.10 this stops me from installing the ui. pip install pyjls==0.3.4 resolves this for the moment.
  x86_64-linux-gnu-gcc -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -Iinclude -Iinclude_prv -I/usr/lib/python3/dist-packages/numpy/core/include -I/usr/include/python3.9 -c src/bit_shift.c -o build/temp.linux-x86_64-3.9/src/bit_shift.o -msse4
  In file included from src/bit_shift.c:17:
  include_prv/jls/bit_shift.h:50:62: error: unknown type name ‘size_t’
     50 | int32_t jls_bit_shift_array_right(uint8_t bits, void * data, size_t size);
        |                                                              ^~~~~~
  include_prv/jls/bit_shift.h:28:1: note: ‘size_t’ is defined in header ‘<stddef.h>’; did you forget to ‘#include <stddef.h>’?
     27 | #include <stdint.h>
    +++ |+#include <stddef.h>
     28 |
  src/bit_shift.c:20:62: error: unknown type name ‘size_t’
     20 | int32_t jls_bit_shift_array_right(uint8_t bits, void * data, size_t size) {
        |                                                              ^~~~~~
  src/bit_shift.c:19:1: note: ‘size_t’ is defined in header ‘<stddef.h>’; did you forget to ‘#include <stddef.h>’?
     18 | #include "jls/ec.h"
    +++ |+#include <stddef.h>
     19 |
  error: command '/usr/bin/x86_64-linux-gnu-gcc' failed with exit code 1

I did the development on Windows building with Visual Studio.  I see our GitHub Actions are only Windows, too.  I will take fix today.

The new 0.4.1 release should fix this issue.  Please update.  In addition to fixing the problem, we now have GitHub Actions for linux & macOS so this problem should not happen again.
I am going to close this issue.  If for some reason, 0.4.1 does not fix the problem for you, please reopen this issue.  Thank you for reporting this problem!

Successfully installed pyjls-0.4.1
Thanks for the quick fix! And Kudos for the holistic approach.


RemoveDuplicateDependencies - Remove Maven dependency even if classifier is different

What version of OpenRewrite are you using?
I am using:

OpenRewrite v8.11.1
Maven plugin v5.15.4

How are you running OpenRewrite?
I am using the Maven plugin, and my project is a single module project.
<plugin>
  <groupId>org.openrewrite.maven</groupId>
  <artifactId>rewrite-maven-plugin</artifactId>
  <version>5.15.4</version>
  <configuration>
    ...
  </configuration>
</plugin>

What is the smallest, simplest way to reproduce the problem?
Content of my pom.xml:
            <dependency>
                <groupId>selenium-tools</groupId>
                <artifactId>chromedriver</artifactId>
                <classifier>w64</classifier>
                <version>${version.chromedriver}</version>
                <type>tar.gz</type>
            </dependency>
            <dependency>
                <groupId>selenium-tools</groupId>
                <artifactId>chromedriver</artifactId>
                <classifier>x64</classifier>
                <version>${version.chromedriver}</version>
                <type>tar.gz</type>
            </dependency>

What did you expect to see?
pom.xml not modified since the 2 dependencies have a different classifier
What did you see instead?
second dependency is removed

Thanks for the report! I'm having trouble replicating this issue, as we do have similar tests for this particular case.
The following test passes when added to https://github.com/openrewrite/rewrite/blob/603339be9e82f049e3472eacf6bd49ff4ac456a9/rewrite-maven/src/test/java/org/openrewrite/maven/RemoveDuplicateDependenciesTest.java#L27
@Test
@Issue("https://github.com/openrewrite/rewrite/issues/3832")
void foo() {
    rewriteRun(
      spec -> spec.expectedCyclesThatMakeChanges(0),
      pomXml(
        """
          <project>
            <modelVersion>4.0.0</modelVersion>

            <groupId>com.mycompany.app</groupId>
            <artifactId>my-app</artifactId>
            <version>1</version>

            <properties>
              <version.chromedriver>94.0.4606.61</version.chromedriver>
            </properties>

            <dependencies>
              <dependency>
                <groupId>selenium-tools</groupId>
                <artifactId>chromedriver</artifactId>
                <classifier>w64</classifier>
                <version>${version.chromedriver}</version>
                <type>tar.gz</type>
              </dependency>
              <dependency>
                <groupId>selenium-tools</groupId>
                <artifactId>chromedriver</artifactId>
                <classifier>x64</classifier>
                <version>${version.chromedriver}</version>
                <type>tar.gz</type>
              </dependency>
            </dependencies>
          </project>
          """
      )
    );
}

From the example above, and the wider context of your project, are you then able to reproduce this with a failing test?

@timtebeek Sorry, I forgot an important point in my issue, these dependencies are declared in dependencyManagement:
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>selenium-tools</groupId>
                <artifactId>chromedriver</artifactId>
                <classifier>w64</classifier>
                <version>${version.chromedriver}</version>
                <type>tar.gz</type>
            </dependency>
            <dependency>
                <groupId>selenium-tools</groupId>
                <artifactId>chromedriver</artifactId>
                <classifier>x64</classifier>
                <version>${version.chromedriver}</version>
                <type>tar.gz</type>
            </dependency>
        </dependencies>
    </dependencyManagement>

That helps! Fix should be in

https://github.com/openrewrite/rewrite/pull/3864


Warning when running datalad install

Paging @yarikoptic to ask whether this is something to worry about.
$ datalad install git@github.com:templateflow/tpl-PNC.git
[INFO   ] Cloning git@github.com:templateflow/tpl-PNC.git into '/home/oesteban/datalad/templateflow/tpl-PNC'
[INFO   ] Invalid command: 'git-annex-shell 'configlist' '/~/templateflow/tpl-PNC.git''
[INFO   ]   You appear to be using ssh to clone a git:// URL.
[INFO   ]   Make sure your core.gitProxy config option and the
[INFO   ]   GIT_PROXY_COMMAND environment variable are NOT set.
[INFO   ]   Remote origin does not have git-annex installed; setting annex-ignore
[INFO   ]   This could be a problem with the git-annex installation on the remote. Please make sure that git-annex-shell is available in PATH when you ssh into the remote. Once you have fixed the git-annex installation, run: git annex enableremote origin
install(ok): /home/oesteban/datalad/templateflow/tpl-PNC (dataset)

benign in this case:
the first one I believe is what github spits out back when you do something over ssh what results in unknown command being attemped:
(git-annex)hopa:/tmp/tpl-PNC[master]
$> ssh<EMAIL_ADDRESS>"-S"<EMAIL_ADDRESS>"-o" "ControlMaster=auto" "-o" "ControlPersist=yes" "-n" "-T" "echo blah"
Invalid command: 'echo blah'
  You appear to be using ssh to clone a git:// URL.
  Make sure your core.gitProxy config option and the
  GIT_PROXY_COMMAND environment variable are NOT set.

and git annex just relays that knowledge.  (attn @joeyh, as originally reported in git-annex comments and origin was not clear)
The 2nd part is just about git annex announcing that there is no annex support by github remote.
First one you could avoid by not using<EMAIL_ADDRESS>I typically go via git:// and have ~/.gitconfig settings to push over ssh if needed for such repos


VM.save - requires affinity

Hi,
Why is affinity required?
require_before_save :name, :affinity

In a XenServer pool, from XenCenter, I can create VM without setting the affinity.

Thats somewhat strange. The documentation for the Xenserver API just mention there are contructors (create) and desctructors (destroy) methods for each class but it does not mention what are the required attributes.
When playing with the api i've found this as a required attribute.
If you take a look at the old api at fog/fog you will see its required too (https://github.com/fog/fog/blob/master/lib/fog/xenserver/requests/compute/create_server.rb#L30-L31).
Hope this clarifies it to you.

@fmbiete check if XenCenter does not automatically sets affinity to some machine on the pool, as @plribeiro3000 its a required one.

No, XenCenter leaves affinity undefined by default. At least in pool environments.
In a pool when you set the affinity for a vm, that vm will appear under the host even when halted. It's a bit tricky when the host is shutdown for maintenance.
Looking at XenCenter code doesn't seem mandatory:
https://github.com/xenserver/xenadmin/blob/master/XenModel/Actions/VM/CreateVMAction.cs#L150
Tomorrow will make more testing and let you know


Except does not work

Trying the example on a barebones version of Laravel 5.7.3 and Laravel Nova version 1.0.16. Get the following error.

public function actions(Request $request)
{
    return [
        (new DownloadExcel)->except('email'),
    ];
}

Thanks!

Version with except is not tagged yet. Dicumentation was alreafy updated

Released


rewrite redis cache to use message.original

Closes https://github.com/shotover/shotover-proxy/issues/473
Taken from https://github.com/shotover/shotover-proxy/pull/453

Generally LGTM. I'd like to see an example/deeper explanation of using the Redis cache with Cassandra going forward, given it's one of the best use cases for Shotover. Similar to the existing Redis ones.

Sure, that can be part of the work to get redis cache actually working.


Default message list limit is too low

I used to think that himalaya had a bug when it displayed only the last few messages, until I learned about the -s flag.
10 is also an unusually low number IMO. Is there any reason why 10 was chosen?

One of the main purpose of Himalaya is to interact with your mais through the terminal. I thought that the 10 last msgs are a good compromise. It fits well the screen, it's not too slow. But for a scripting purpose I agree it's not enough. The default page size can be overriden in the config though.

I can make the default page size customizable via the config though, what do you think?

Yea, that'll work.

Added in 10d2982.

I introduced a new key in the configuration called default-page-size, which accepts an optional number (default: 10). It can be set at the top level (global) or by account. It is overridden by the arg --page-size|-s. Setting a page size = 0 disables the pagination and shows all the results available. See the wiki for more information.


Refactor tests and add 1.10.1 support

We're adding a rock definition for cert-manager 1.10.1.
At the same time, we're refactoring the tests to use the updated test harness.
Fixes: https://github.com/canonical/cert-manager-rock/issues/6
Fixes: https://github.com/canonical/cert-manager-rock/issues/7
Depends-on: https://github.com/canonical/k8s-test-harness/pull/22

Required PR is merged.


Error installing

classy_blocks version:
Python version: 3.8
Operating System: Ubuntu 18.04 LTS

Description
I'm getting the following error while installing:
File "setup.py", line 6
def read_file(rel_path: str) -> str:
^
SyntaxError: invalid syntax
What I Did
sudo python setup.py install

Yes, and the following error appear. I have to check the python version (the default is 3.8) but here is looking the 2.7 version folder.

Hey @GontzalLopez, be sure you know the exact python you are using - seems to me like your python or pip command are defaulting to python 2.7. Based on your picture, that is also what the warning in the terminal show you.
Try:

Use absolute/exact path to python interpreter, instead of python or py command.
Use python -m pip install ... as suggested above, if your chosen python Scripts directory is not on PATH.
If you use virtual environment (you should for most use cases), make sure it is activated before plain python command is invoked.

... and report back. :)

Thanks @schperplata ! It finally works with:
python3 -m pip install git+https://github.com/damogranlabs/classy_blocks.git


Why not divide by "self.q_dim.sqrt()"

https://github.com/THU-KEG/HIF-KAT/blob/8b7d0c5f94975f505326ef8d373a761249fb5fc2/1-HRF-xgb/repre/attention.py#L104
in Transformer:

In fact, the dimension of the query vectors is equal to the dimension of the key vectors, which means q_dim = k_dim


Binexport 12 for Ghidra 10.2 (doesn't support 10.2.2?)

install extensions for : ghidra_BinExport.zip (binexport12-linux.zip isn't recognized as an extension)
Extension version for [ghidra_BinExport.zip] is incompatible with Ghidra.
Build Date: 2022-Nov-15 1249 EST
Ghidra Version: 10.2.2
Java Home: /usr/lib/jvm/java-17-openjdk-amd64
JVM Version: Private Build 17.0.5
OS: Linux <IP_ADDRESS>-microsoft-standard-WSL2 amd64

I'm not quite sure I get this report. BinExport should work with 10.2 and also 10.2.1 / 10.2.2.
You indeed need to install ghidra_BinExport.zip, as usual. The other .zip files contain the native plugins for IDA Pro and Binary Ninja.

Hi @MisterAero,
as a temporary workaround try this:

Unzip the archive

unzip ghidra_BinExport.zip

Edit the file BinExport/extension.properties and be sure that the version variable matches your Ghidra version, e.g.:

version=10.2.2

Recreate the zip:

zip -r ghidra_BinExport.zip BinExport

and try to load again the extension in Ghidra. In theory it shouldn't complain any more.

Offered solution worked. ( Also, Maybe I haven't done it right in the beginning)

I recommend keeping this issue open because I ran into the same thing, unable to load BinExport 12 on Ghidra 10.2.2 :) ty for workaround.

Updated binaries can be found here: https://github.com/google/binexport/releases/tag/v12-20230113-ghidra_10.2.2

The tweak suggested above by @0xor0ne appears to work for using the 10.2.2 binary with Ghidra 10.2.3, but of course ymmv


Add Rider plugin

Can you create a plugin for Rider IDE ?

Rider currently lacks proper plugin SDK. It's also currently impossible to have custom DTO for IDEA<->R# communication. We also need a portable previewer infrastructure (#900). So right now this is blocked by issues on our side and on rider side.

Okay

Rider try to add references to avalonia xaml and rename all classes to some <data:Binding> for example.
What can i do?

What can i do?

Go to https://youtrack.jetbrains.com/issues/RIDER and fill a bug report.

Reported as RIDER-8780

Is this still in active development if so I would like to help out wherever possible

@06needhamt
We've done everything that's needed to be done on Avalonia side. Now waiting for Rider guys to release a proper SDK.

Are there any new to this?

@kekekeks SDK ships the required parts now as documented here. It's pretty fresh, so ping me if you have any problems. We also have a Slack channel that I can invite you to, if you like.
I'm also working on a dotnet project template to get started, but this will probably take time until next week.

@kekekeks there is a template now located here. It is a work-in-progress, so if you have any questions, don't hesitate to ping me via GH issues or somewhere privately if you prefer.

Rider is ready for writing plugins but still lacks a lot of docs about plugin development process. I started writing such plugin in my repo but it will be really long process due to difficulty of plugin development. For example, right now my plugin has nothing except adding avalonia project types, but even this simple operation isn't obvious to implement and missing docs... Anyway I will keep updating it, Rider is my favorite IDE, I wanna see avalonia support in it!

@ingvar1995 hey sorry if I discourage you, but I don't think we need Avalonia project templates in Rider. Rider supports .NET Core standard templates, and Avalonia already has them.

This is just for start. Anyway manual installing templates seems to be annoying for me so it's good to have ready template built-in in Rider

For me none of resharper things works in Rider. On screenshot I referenced some unexciting property, no error shown in rider. Suggestions, auto completing, and all this stuff don't work.

@jinek try using the EmbeddedResource directive for embedding Avalonia XAML files, instead of AvaloniaResource used by default. Rider doesn't understand the latter one currently, but understands the former. See an example project where IntelliSense in XAML is working in Rider.

You guys better file these issues in https://github.com/ForNeVeR/AvaloniaRider
We could teach Rider to enable the XAML features on AvaloniaResource and perform other customizations.

@jinek try using the EmbeddedResource directive for embedding Avalonia XAML files, instead of AvaloniaResource used by default. Rider doesn't understand the latter one currently, but understands the former. See an example project where IntelliSense in XAML is working in Rider.

In this keys x:Name components does not generate fields and rider can't generate event handlers

***important***

https://youtrack.jetbrains.com/issue/RIDER-39247 - this is the tracking issue for Avalonia support. Go and vote there. That's the only way to get proper avalonia support, we need approximately 100+ votes from their paying customers to get things in motion
If you experience issues not listed in that tracking issue, go and file a new one

@kekekeks I can definitely find at least 10 people. Will need a few days, though.

Finally!
https://www.jetbrains.com/rider/nextversion/
"Our biggest news is that we're introducing support for Avalonia! There will be more updates to come, but already there's a lot in there. Rider offers code completion, support for bindings, and quick-fixes to create all sorts of Avalonia properties. The UI previewer is not yet included, but we're working on it. Give the Avalonia support a try, and remember ‐ we'd love to get your feedback on this! "

I think this issue is almost outdated

Yeah i think this is resolved. Closing it now :)


Index hold "0.0:" not working as expected

I'm expecting "0.0:" to hold that prompt until the idx of the next prompt.
However, I observe, that it holds for only one frame and then switches over to the next already.
Have a look at the prompts and the comfy output it produces:

The first prompt appears only on one line. I had expected it to go from 0.0 to 0.33.
Further, I had expected the second prompt to go from 0.33 to 0.5, third from 0.5 to 0.66, and fourth from 0.66 till the end.

These expectation are based on the text from the help box:
hold: Putting a colon after a single idx stops interpolation until the next provided index. Examples -> 0:, 0.5:, 16:

I looked into the code and found this function doing a lot of things related to "hold" and "holders":
https://github.com/Kosinkadink/ComfyUI-AnimateDiff-Evolved/blob/261fac8a01476a8e38b707297e750ddd5fb52b22/animatediff/scheduling.py#L226
The function is so large, I'm scared to investigate.

In the meantime, I'm using ranges instead of "hold" as a workaround:

you can see, that the first prompt is now used for more than 1 frame.

Thanks for the detailed report, I'll look into this soon


Contributing plugins - what would be of interest

Which of the following plugins would be of used to contribute as pull requests to this configuration

[x] telescope-file-browser - browse, create, rename, delete files and directories throughout the filespace (I find this very useful)
[x] telescope-env - list environment variables
[ ] nvim-tree - visual file system browser (Lua version of Nerdtree)
[x] todo-comments - highlight TODOD, FIXME, etc in buffers
[x] startup.nvim - themes to load when nvim started without a file
[ ] numb.nvim - peek at a line number
[x] nvim-comment - toggle line comments with visual select and motions

I have been using these for a few days in my experimental configuration and they seem to work.  There are some other plugins that are interesting, but still evaluating those.

Personally, I use nerdtree and nerdcomment and I was wondering if were replacements in lua for those :)
Quick question, can't you replace nvim-tree with telescope-file-browser? They look very similar apart from the tree view.
I really like all of those, I just think numb.nvim is a very personal choice maybe we could leave this one.

Thanks a lot, that would be a great addition

Hey I was thinking, do you think we should rename or move this more complex setup to a new name? Like simpler? Like LunarVim or DoomEmacs did?
I don't like the name of this repo, but I didn't expected it get this attention :)

The name could be a little shorter perhaps :)
Also, I assume the config doesnt need to be in the .config/nvim directory. Being in a dot folder at first made it a little confusing when linking to the configuration from the actual .config/nvim directory

anise.nvim?
https://www.collinsdictionary.com/us/dictionary/english/anise-camphor
I'm down to change the folder structure, what you recommend?
Thinking we can create a new repo and update the references to the new one on the conjure/lsp wikis.

I will close this issue, feel free to reopen if you need anything related to this again :)
I think you following those changes in https://github.com/practicalli/neovim-config-redux right?

Apologies, my health has reduced the amount extra work I could do over the last few months.  I haven't had much time to resolve some of the outstanding functionality I need to use Neovim as my main development tool, so my experimentation with packages and settings in neovim-config-redux has stalled, although hope to pick that up again when my health allows.

Hey, I hope you get better soon, thanks again for all your work for the community.


Polish BOM module

fix #128
@yungez @xscript @aovechki

@ZhijunZhao,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot

Codecov Report

Merging #138 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #138   +/-   ##
=======================================
  Coverage   72.16%   72.16%
=======================================
  Files          58       58
  Lines        1218     1218
  Branches      115      115
=======================================
  Hits          879      879
  Misses        274      274
  Partials       65       65

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update a09f4c0...e47a4ee. Read the comment docs.


Improve adding UX Elements to scene

Describe the problem
Currently it's quite a challenge to add any of our UX features to a scene because it usually requires several components with quite a complex setup.
Describe the solution you'd like
Provide an easier way / utilities to add fully set up UX elements to the scene. eg context menu or menu option "create MRTK button"

I would like to add: it's also not just about adding the right components but configuring them too. BoundingBox is a great example because even if I add the script component to a new GameObject it does not behave in the same way as in the MRTK example scenes. The right materials and sound effects and related parameters have not been set
But love this idea of getting quicker development time!

Reopening while the PR is still active

We appreciate your feedback and thank you for reporting this issue.
Microsoft Mixed Reality Toolkit version 2 (MRTK2) is currently in limited support. This means that Microsoft is only fixing high priority security issues. Unfortunately, this issue does not meet the necessary priority and will be closed. If you strongly feel that this issue deserves more attention, please open a new issue and explain why it is important.
Microsoft recommends that all new HoloLens 2 Unity applications use MRTK3 instead of MRTK2.
Please note that MRTK3 was released in August 2023. It features an all new architecture for developing rich mixed reality experiences and has a minimum requirement of Unity 2021.3 LTS. For more information about MRTK3, please visithttps://www.mixedrealitytoolkit.org.
Thank you for your continued support of the Mixed Reality Toolkit!


[BUG] UniGetUI showing on system boot when should launch minimized to the tray

Please confirm these before moving forward

[X] I have searched for my issue and have not found a work-in-progress/duplicate/resolved issue.
[X] I have tested that this issue has not been fixed in the latest (beta or stable) release.
[X] I have checked the FAQ section for solutions
[X] This issue is about a bug (if it is not, please use the correct template)

Describe your issue
UniGetUI is showing the main interface on boot, when it really shouldn't.
This is likely to be caused by the window geometry cacher
Steps to reproduce the issue
No response
WingetUI Log
N/A

Package Managers Logs
N/A

Relevant information
No response
Screenshots and videos
No response

Fixed!


GitLab Migration: Normalize Labels Color

close #12779

to test this case use, just migrate labels of https://gitlab.com/fdroid/fdroid-website

Codecov Report

Merging #12793 into master will decrease coverage by 0.00%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##           master   #12793      +/-   ##
==========================================
- Coverage   43.23%   43.23%   -0.01%
==========================================
  Files         650      650
  Lines       72041    72050       +9
==========================================
  Hits        31150    31150
- Misses      35844    35856      +12
+ Partials     5047     5044       -3

Impacted Files
Coverage Δ

modules/migrations/gitlab.go
1.04% <0.00%> (-0.03%)
:arrow_down:

modules/util/timer.go
42.85% <0.00%> (-42.86%)
:arrow_down:

models/unit.go
46.57% <0.00%> (-2.74%)
:arrow_down:

services/pull/check.go
48.46% <0.00%> (-1.54%)
:arrow_down:

models/error.go
34.81% <0.00%> (-0.52%)
:arrow_down:

models/issue_comment.go
53.75% <0.00%> (-0.16%)
:arrow_down:

services/pull/pull.go
42.03% <0.00%> (+0.46%)
:arrow_up:

models/gpg_key.go
55.40% <0.00%> (+0.58%)
:arrow_up:

modules/indexer/stats/queue.go
76.47% <0.00%> (+11.76%)
:arrow_up:

modules/indexer/stats/db.go
60.86% <0.00%> (+17.39%)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 0db9043...a69d3cd. Read the comment docs.

🚀


arm64 support

Hi as you may know, aws has released support for lambda on arm64 which is quite a big deal because the running cost is a lot lower. Would you be interested in supporting it? I for one would really appreciate the support.
I may not have the expertise to make the pr myself but I would be happy to attempt one. Just wondering if anyone is already working on it or would be interested to.

I think you might be confusing this project (which is a CI project built on Lambda) with https://github.com/lambci/docker-lambda


Uncaught Error: Invalid nepali number

Thank you for such good library. But i am facing an issue while editing project start date and end date.
When i supply english date directly, it is obvious to show invalid nepali number. But when i store the english start date and english end date in hidden input and later use getBsDateByAdDate function, it do not give error but the nepali calendar is not set to given date.
Can you help me with this?
My datepicker setup is like below:

My datepicker when providing nepali date after conversion like in setup:

My datepicker date is not set according to given date input:

Hi, @lalustine7 Sorry for the late reply. Actually, I have not noticed you have created an issue.
Looking through your code I found that you have not set Nepali formatted date as value. So plugin through Invalid nepali number error.
We have  calendarFunctions.bsDateFormat() to convert formated nepali date.

  From Date:
  <input type="hidden" value="2018-10-10" name="eng_start_date">
  <input type="text" value="" name="start_date" class="nepalidatepicker">

  To Date:
  <input hidden="text" value="2018-12-10" name="eng_end_date">
  <input type="text" value="" name="end_date" class="nepalidatepicker">

Thank You for your reply. I was waiting for your reply and thanks for solving my issues.
I would like to ask some questions so it would be easier for me.

How to change date format so i would get date '2075-05-25' instead of '2075-5-25'?
How to change the nepali date to english date on date change function ? Can we use dateChange or dateSelect function like this:
$('.nepalidatepicker').nepaliDatePicker({
dateFormat: '%y-%m-%d',
closeOnDateSelect: true,
dateChange : function(e){
//here convert the nepali date into english date
}
});

Hoping for your reply again.
Thank You,
Lal Kumar Rai

Thank Your for your reply again.

Currently, does not support 2 digit month/date format. For that we need to do some changes in code. May be you can try out and send pull request.

Ok I will do this and send pull request to you.

2)Nepali date picker plugin has Event Handlers for handlering change events. Please check demo & documentations: https://nepali-date-picker.herokuapp.com/demo/ for more details.

It would be better if we could be able to use event handlers like other datepicker js as i have suggested.
$('.nepalidatepicker').nepaliDatePicker({
dateFormat: '%y-%m-%d',
closeOnDateSelect: true,
dateChange : function(e){
//here convert the nepali date into english date
}
});

shows invalid nepali number when try to edit the date in edit page.want solution to edit the date in edit page


Use defer to cleanup allocated service ip in case of error

We're probably going to be doing a port allocation here also (#5225), so this needs some pre-simplifying.
Also interested to hear if this is the best approach.

LGTM, one nit

I'm fine with this.  I have in the past used a cancellable function-caller, but it's not as clean without C++-style destruction.
I have not used Go lambda-capture much, but I find this less obvious than it might be.  For consideration and shootdown:
defer func(release *bool) { /* code */}(&releaseIP)

Better or worse?

In Justin's code releaseServiceIp will be captured by reference and I think the right thing happens. I think what Tim proposes achieves the same thing by passing in a reference to releaseIP but I think Justin's original code is fine. I think arguments to lambda expressions make sense when you want to capture a value rather than a reference.

One of the reasons for putting this through as a separate (small) PR was that I thought there might be style discussions!  I don't love the pattern as I wrote it, but I think if we pick a pattern it will be recognizable much like if err = f(); err != nil {
For completeness: an alternative is not to declare a separate 'cleanup' variable, but to reuse err  (i.e. we do cleanup if err != nil); however I think this will cause bugs because of Go's variable shadowing behaviour.
I can't even remember to type ID instead of Id, so whatever you want is fine by me ;-)

I don't think shadowing a common variable would be good.  As it stands it is pretty obvious, even if it is a bit surprising to those of us not deeply familiar with variable capture in Go.  My proposal was to make it EVEN MORE obvious, but maybe so much that it's anti-idiomatic.

Fix the naming nit and I'll merge it :)  Thanks.

I think Tim does have a point here. Personally, I think the way variables are captured in Go is not very different from what happens in other imperative languages but it can catch you out if you're not paying attention. Tim's proposal does make things crystal clear for the casual observer.

I've fixed ServiceIp -> ServiceIP.  Also put up a WIP of the work that this was part of (cluster-wide assignment of ports) at #6684

LGTM

BTW, I absolutely agree with Tim as well.. but I think this is the most godiomatic way.  Until we're ready to start our own idioms.  (And when we are, I'd like to propose that "id" be a word, not an acronym, as in http://en.wikipedia.org/wiki/Id,_ego_and_super-ego )


Type checking fails on get return if using while 1

Environment data

Language Server version: 2023.5.40
OS and version: Ubuntu 22.04 LTS
Python version: Python 3.10.8

Code Snippet
def ok_method() -> int:
    counter :int = 0
    while True:
        if counter > 10:
            return counter
        counter += 1

# Function with declared type of "int" must return value on all code paths
#  Type "None" cannot be assigned to type "int"
def ko_method() -> int:
    counter :int = 0
    while 1:
        if counter > 10:
            return counter
        counter += 1

Repro Steps

enable python.analysis.typeCheckingMode
wrtie an infinite loop using while 1:
set an exit clause in the loop using a return statement

Expected behavior
No error should be raised
Actual behavior
The checker does not recognize that while 1: is equivalent to while True:. Giving an error message on the first but not on the latter.
Logs
2023-05-29 12:58:24.499 [info] (318306) Background analysis message: setFileOpened
2023-05-29 12:58:24.500 [info] (318306) Background analysis message: markFilesDirty
2023-05-29 12:58:24.703 [info] (318306) [FG] parsing: Untitled-1 (1ms)
2023-05-29 12:58:24.704 [info] (318306) [FG] binding: Untitled-1 (0ms)
2023-05-29 12:58:24.748 [info] (318306) Background analysis message: analyze
2023-05-29 12:58:24.749 [info] (318306) [BG(1)] analyzing: Untitled-1 ...
2023-05-29 12:58:24.749 [info] (318306) [BG(1)]   parsing: Untitled-1 (1ms)
2023-05-29 12:58:24.750 [info] (318306) [BG(1)]   binding: Untitled-1 (0ms)
2023-05-29 12:58:24.777 [info] (318306) [BG(1)]   checking: Untitled-1 (27ms)
2023-05-29 12:58:24.778 [info] (318306) [BG(1)] analyzing: Untitled-1 (28ms)
2023-05-29 12:58:24.780 [info] (318306) Background analysis message: getDiagnosticsForRange
2023-05-29 12:58:24.781 [info] (318306) Background analysis message: resumeAnalysis
2023-05-29 12:58:24.781 [info] (318306) Background analysis message: getDiagnosticsForRange
2023-05-29 12:58:24.800 [info] (318306) Background analysis message: getSemanticTokens delta
2023-05-29 12:58:24.803 [info] (318306) [BG(1)] getSemanticTokens delta previousResultId:1685357858945 at Untitled-1 (2ms)
2023-05-29 12:58:25.046 [info] (318306) Background analysis message: getDiagnosticsForRange
2023-05-29 12:58:25.047 [info] (318306) Background analysis message: getDiagnosticsForRange

This behavior is intended. Pyright, the type checker that underlies pylance, treats certain expressions as statically true or false. It doesn't recognize 1 as such an expression. If you change 1 to the more idiomatic True here, the error will go away, as you noted above.
We don't have plans to recognize 1 or other more complex arbitrary expressions as statically provable to be true or false for purposes of control flow analysis.
If you don't find that type checking provides sufficient value in your code, you can disable all such diagnostics by setting typeCheckingMode to "off". If you find value in static type checking, you may need to make small accommodations in your code to work with the type checker. This is one such example.


App translateable by system language, added German translation

The following items have been improved:

automatic system language detection with i18next
German language files added
translated some not-yet-translated labels
added missing module for initial checkout and build

Thanks!


[SPARK-9065][Streaming][PySpark] Add MessageHandler for Kafka Python API

Propose a way to add messageHandler for Kafka Python API, offer user a similar pattern to use message like Scala/Java:

def getOffset(m):
    return m and m.offset

KafkaUtils.createDirectStream(ssc, topic, kafkaParams, messageHandler=getOffset)

Internally serialize the Kafka MessageAndMetadata to Python using Pickler.
Please help to review, thanks a lot.

Merged build triggered.

Merged build started.

Test build #37305 has started for   PR 7410 at commit 798b047.

Test build #37305 has finished for   PR 7410 at commit 798b047.

This patch fails MiMa tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
  case class PythonMessageAndMetadata(
 class PythonMessageAndMetadataPickler extends IObjectPickler
class KafkaMessageAndMetadata(object):
case class Exchange(newPartitioning: Partitioning, child: SparkPlan) extends UnaryNode

Merged build finished. Test FAILed.

Merged build triggered.

Merged build started.

Test build #37314 has started for   PR 7410 at commit 0eabce4.

Test build #37314 has finished for   PR 7410 at commit 0eabce4.

This patch fails PySpark unit tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
  case class PythonMessageAndMetadata(
 class PythonMessageAndMetadataPickler extends IObjectPickler
class KafkaMessageAndMetadata(object):

Merged build finished. Test FAILed.

Merged build triggered.

Merged build started.

Test build #37348 has started for   PR 7410 at commit f23d1cb.

Test build #37348 has finished for   PR 7410 at commit f23d1cb.

This patch passes all tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
  case class PythonMessageAndMetadata(
 class PythonMessageAndMetadataPickler extends IObjectPickler
class KafkaMessageAndMetadata(object):
case class Exchange(newPartitioning: Partitioning, child: SparkPlan) extends UnaryNode

Merged build finished. Test PASSed.

Test build #1072 has started for   PR 7410 at commit f23d1cb.

Test build #1072 has finished for   PR 7410 at commit f23d1cb.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

@jerryshao could you resolve the conflicts? Thanks.

Yeah, will do.

Merged build triggered.

Merged build started.

Test build #38295 has started for   PR 7410 at commit a09423e.

Test build #38295 has finished for   PR 7410 at commit a09423e.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
  case class PythonMessageAndMetadata(
 class PythonMessageAndMetadataPickler extends IObjectPickler
class KafkaMessageAndMetadata(object):
   case class ChangePrecision(child: Expression) extends UnaryExpression
case class DecimalType(precision: Int, scale: Int) extends FractionalType
  case class  DecimalConversion(precision: Int, scale: Int) extends JDBCConversion

Merged build finished. Test FAILed.

Jenkins, retest this please.

Merged build triggered.

Merged build started.

Test build #85 has started for   PR 7410 at commit a09423e.

Merged build triggered.

Merged build started.

Test build #38309 has started for   PR 7410 at commit a09423e.

Test build #38309 has finished for   PR 7410 at commit a09423e.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
  case class PythonMessageAndMetadata(
 class PythonMessageAndMetadataPickler extends IObjectPickler
class KafkaMessageAndMetadata(object):
   case class ChangePrecision(child: Expression) extends UnaryExpression
abstract class AlgebraicAggregate extends AggregateFunction2 with Serializable with Unevaluable
abstract class AggregateFunction1 extends LeafExpression with Serializable
case class DecimalType(precision: Int, scale: Int) extends FractionalType
  case class  DecimalConversion(precision: Int, scale: Int) extends JDBCConversion

Merged build finished. Test FAILed.

Test build #85 has finished for   PR 7410 at commit a09423e.

This patch passes all tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
  case class PythonMessageAndMetadata(
 class PythonMessageAndMetadataPickler extends IObjectPickler
class KafkaMessageAndMetadata(object):
   case class ChangePrecision(child: Expression) extends UnaryExpression
abstract class AlgebraicAggregate extends AggregateFunction2 with Serializable with Unevaluable
abstract class AggregateFunction1 extends LeafExpression with Serializable
case class DecimalType(precision: Int, scale: Int) extends FractionalType
  case class  DecimalConversion(precision: Int, scale: Int) extends JDBCConversion

Merged build finished. Test PASSed.

Merged build triggered.

Merged build started.

Test build #38661 has started for   PR 7410 at commit 348e3a2.

Test build #38661 has finished for   PR 7410 at commit 348e3a2.

This patch passes all tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
  case class PythonMessageAndMetadata(
 class PythonMessageAndMetadataPickler extends IObjectPickler
class KafkaMessageAndMetadata(object):

Merged build finished. Test PASSed.

Sorry for the delay. LGTM except the conflicts. Could you resolve the conflicts again?

OK, I will rebase the code.

Merged build triggered.

Merged build started.

Test build #39815 has started for   PR 7410 at commit f375e16.

Test build #39815 has finished for   PR 7410 at commit f375e16.

This patch passes all tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
  case class PythonMessageAndMetadata(
 class PythonMessageAndMetadataPickler extends IObjectPickler
class KafkaMessageAndMetadata(object):

Merged build finished. Test PASSed.

Hi @tdas, would you please help to review this patch, thanks a lot.

LGTM

Hey all, this is a pretty good PR. Unfortunately, I havent been able to spend cycles on this as I was busy with higher priority PRs. The Java data being serialized in python does add some overheads, and introduces some data structures, that we need to think a bit. So I think I am going to bump this to Spark 1.6. But this is important feature for python parity so we are definitely going to have this in 1.6.

@jerryshao Can you update this PR with latest master?

Yeah, I will.

Merged build triggered.

Merged build started.

Test build #43380 has started for   PR 7410 at commit 2324517.

Test build #43380 has finished for   PR 7410 at commit 2324517.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
  case class PythonMessageAndMetadata(
 class PythonMessageAndMetadataPickler extends IObjectPickler
class KafkaMessageAndMetadata(object):

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/43380/
Test FAILed.

Jenkins, retest this please.

Merged build triggered.

Merged build started.

Test build #43384 has started for   PR 7410 at commit 2324517.

Test build #43384 has finished for   PR 7410 at commit 2324517.

This patch passes all tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
  case class PythonMessageAndMetadata(
 class PythonMessageAndMetadataPickler extends IObjectPickler
class KafkaMessageAndMetadata(object):

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/43384/
Test PASSed.

Merged build triggered.

Merged build started.

Test build #43512 has started for   PR 7410 at commit a794127.

Test build #43512 has finished for   PR 7410 at commit a794127.

This patch fails PySpark unit tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
  case class PythonMessageAndMetadata(
 class PythonMessageAndMetadataPickler extends IObjectPickler
class ChildProcAppHandle implements SparkAppHandle
abstract class LauncherConnection implements Closeable, Runnable
final class LauncherProtocol
 static class Message implements Serializable
 static class Hello extends Message
 static class SetAppId extends Message
 static class SetState extends Message
 static class Stop extends Message
class LauncherServer implements Closeable
class NamedThreadFactory implements ThreadFactory
class OutputRedirector
class KafkaMessageAndMetadata(object):

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/43512/
Test FAILed.

Merged build finished. Test FAILed.

Jenkins, retest this please.

Merged build triggered.

Merged build started.

Test build #43521 has started for   PR 7410 at commit a794127.

Test build #43521 has finished for   PR 7410 at commit a794127.

This patch fails MiMa tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
  case class PythonMessageAndMetadata(
 class PythonMessageAndMetadataPickler extends IObjectPickler
class KafkaMessageAndMetadata(object):

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/43521/
Test FAILed.

Jenkins, retest this please.

Merged build triggered.

Merged build started.

Test build #43524 has started for   PR 7410 at commit a794127.

Test build #43524 has finished for   PR 7410 at commit a794127.

This patch passes all tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
  case class PythonMessageAndMetadata(
 class PythonMessageAndMetadataPickler extends IObjectPickler
class KafkaMessageAndMetadata(object):

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/43524/
Test PASSed.

@tdas , I've updated the code to the latest master, mind taking a time to review? Thanks a lot.

Sorry to bump this, but I was wondering if this was still planning on being merged? I'd find this feature quite useful for something I'm building! :smile:

@jerryshao could you update this one again... Thanks!

Yeah, will do.

Merged build triggered.

Merged build started.

Test build #45216 has started for PR 7410 at commit ed4d179.

Test build #45216 has finished for PR 7410 at commit ed4d179.

This patch passes all tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):\n  * final class ShuffleSortDataFormat extends SortDataFormat<PackedRecordPointer, LongArray> \n  * final class UnsafeSortDataFormat extends SortDataFormat<RecordPointerAndKeyPrefix, LongArray> \n  *   case class PythonMessageAndMetadata(\n  *  class PythonMessageAndMetadataPickler extends IObjectPickler\n  * class KafkaMessageAndMetadata(object):\n

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/45216/
Test PASSed.

LGTM

Hi @tdas, I understand you're quite busy, still I would like to know your opinion on this PR, I've rebased for several rounds, still pending to review. Thanks a lot and appreciated.

@jerryshao I just fixed the Streaming Python tests to report test failures correctly #9669 . Could you rebase this one again? Sorry about that.

@jerryshao sorry for so much delays on this PR. We needed to fix issues like #9669 before merging python streaming features. Hence the delay. Would you mind if we take over the feature to fix it up in the interest of time. You will get all the credit for this PR on github and JIRA.

Hi @tdas , it's all right. sorry for the delay, I planned to address this conflict today.


Update autoconf to v2.69 on CentOS 6 and RHEL 6

Signed-off-by: Violeta Sebe<EMAIL_ADDRESS>

@jdekonin please review

@karianna - autoconf is an extensible package of M4 macros. It is used in the configure stage to generate the configuration scripts (e.g. generated-configure.sh).

Oh sorry - I was conflating with the default autoconf that we were obviously relying on and you explicitly installing a particular version (which is better)

It has failed our linter
 74:1      error    too many blank lines (1 > 0)  (empty-lines) in the autocnof yaml file

@karianna - fyi... extra line has been removed


Remove an unnecessary const qualifier, NFC

This makes SILType less useful than Type for no apparent reason.

@swift-ci please test and merge

I'm not sure why the smoke tests are stuck?

The smoke test requirements don't get updated until after the main tests complete. Should still be fine.

Thanks Jordan!


win app cannot render more than 1000 time entries (or so)

It will run out of window handles, theres a limit of 10 000 window handles. We create more than 9999 user controls when rendering 1002 time entries, which will break the app.

+1

temp fix in #1333


Change header background image

Added an image. The original can be found here: https://unsplash.com/photos/oKrMEczSpis

Done.


add units to info sheet

add units to info sheet

Your review app has been deployed and is available at 'http://<IP_ADDRESS>:80'.Learn More about how to test and provide feedback for the app.

Your review app has been deployed and is available at 'http://<IP_ADDRESS>:80'.Learn More about how to test and provide feedback for the app.


Customizable label styles

Hi Team,
Feature Proposal
It will really helpful if you can provide more customizable styling for chart labels or introduce class option to apply any styles as we want
Feature Use Case
When we wants to convert Radar chart labels into links, it's required to use text-decoration: underline', cursor: pointer to display labels as links
Possible Implementation
Introduce a class option where we can apply any styling through the classes to labels

@pmenika are you referring to CSS classes?

@pmenika are you referring to CSS classes?

Yes

Unfortunately this isn't feasible with Chart.js because of how the labels are rendered using the Canvas.

Hmm.. Do you know any other way to approach this?

The underline can be added using the font styling options. I'm not sure how to do the cursor in a performant way

Good to have at least underline. But below are the only font options as I see in the document

I thought 'underline' was a valid value for the style, but according to https://developer.mozilla.org/en-US/docs/Web/CSS/font-style that doesn't seem possible 😦

Hmm ya :(

Not sure how performent it is but you can use the onHover to check if you are hovering a label and add a class to the canvas which makes it a pointer and remove it if its not hovered (not sure if its more performent to check if its not there first).
https://jsfiddle.net/Leelenaleee/mdogp8rn/18/


Change data layout for Vmr

Purpose
Change data layout for Vmr

[x] I have read and checked the items on the review checklist.

Prior to this PR (https://buildkite.com/clima/rrtmgp-clima-a100-pipeline/builds/24#_)

With this PR (https://buildkite.com/clima/rrtmgp-clima-a100-pipeline/builds/25#_)


Stable branch should be master

CocoaPods uses master as the default. Master crashes on serving an image file on iOS 9.3.3. If you change your project Podfile to say :branch => "stable" it works well. You can't change the default from the .podspec side of things. Perhaps master can be the stable branch, and then a second branch could exist for unstable development, i.e. branch development or similar.

Correct 👍 I took naming convention from https://github.com/apple/swift ( they have master for development ). Stable was my idea to maintain Swift 2.x. I wait for an offical release of Swift 3 and do the cleanup.


[Slider] Set onChangeCommitted to receive the last argument passed to onChange

Demo: https://codesandbox.io/p/sandbox/nice-ully-k38gjr
The value is determined by the mouse position at the time onChange and onChangeCommitted are called. The discrepancy in the mouse position between the last onChange call and the onChangeCommitted call led to different argument values.
To address this, I've modified onChangeCommitted to always receive the last argument passed to onChange.
Closes #41739

[x] I have followed (at least) the PR section of the contributing guide.

Here's the list of devices which reproduce the issue for me.

MacBook wireless trackpad
Android

Before; with issue
codesandbox
https://github.com/user-attachments/assets/f062ee07-3aad-40c6-abc8-857fdb608353

After; with fix
cosesandbox
https://github.com/user-attachments/assets/a11c4fcb-a467-4fab-b62d-ced5fb7ab081

Any review please 🙏
or do I need more description for this?

@mj12albert To review.


move(Data/List/BigOperators): Move to Algebra.BigOperators.List

This is algebra and should be foldered as such.

maintainer merge


Add build command for Markdeep files

build.sh -w can now be used to "rasterize" Markdeep .md.html files
to regular, static .html files. These files load faster and do not
suffer from an initial flash of uninitialized content.
This new command requires node, npm and nx to run puppeteer to
"rasterize" the Markdeep documents. This should eventually be
integrated in the actual build system to automatically re-generate
the HTML files when the Markdeep documents are edited.

Next step, I’ll publish the markdeep-rasterizer directly on npm so we can run it directly with npx.

Change WEB_DOCS_OPTION to JS_DOCS_OPTION
Rename GENERATE_WEB_DOCS to GENERATE_JS_DOCS

Done!


Add input related apis

I think it is implemented also in the plugin here: https://github.com/GodotVR/godot_oculus_mobile/blob/06f382bcbec0ac4647c7e7cc80724d9d78d092c7/plugin/src/main/cpp/ovr_mobile_controller.cpp#L43
but I have never used it so far.

Thanks for the review!
As @NeoSpark314 mentions, that is also supported and implemented in the OvrMobileController class ( I need to make sure to double-check it's working as expected...).
Not having it would make the interface more complex IMO as it would then be the user's task to figure out how to map the Godot controller's rumble to the Oculus touch controller's haptics, possibly leading to inconsistency in implementations.
Since feedback is limited (sounds, visual & controller haptics), this addition is to give the ability to users to provide feedback for arbitrary game logic (e.g: reaching an objective) instead of having haptics be limited to controller related game logic (e.g: colliding with an in-game object).
If we decide to support the action systems, it should be in addition to the existing functionality, and not replacing it since IMO the current controller rumble-haptic binding is the simplest way for users to trigger haptics for controller-related game logic.


Automatically propagate include directories

Hi,
I'm using AMQP-CPP as a git submodule and add it to my build using add_subdirectory. I'd like to add the library to my project by only linking to it as is afaik custom in modern CMake.
In order to do this, I had to add the following in AMQP-CPP's CMakeLists.txt:
target_include_directories(${PROJECT_NAME} PUBLIC
    $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include/>
    $<INSTALL_INTERFACE:include/>
)

Is this the correct way and should this be added to the project or am I missing something?

The above pull request has been merged. It is supposed to fix this.


gardenlet: Logging for task flows does not make it clear if the task is executed/skipped

How to categorize this issue?

/kind enhancement
What would you like to be added:
When checking the gardenlet logs for a task flow we see
{"log":{"controller":"shoot","flow":"Shoot cluster deletion","level":"info","msg":"Succeeded","name":"foo","namespace":"garden-bar","object":{"name":"foo","namespace":"garden-bar"},"operation":"delete","reconcileID":"044cdf20-4cc6-43a5-8330-3b34fa325233","task":"Deleting managed resources","ts":"2023-09-12T09:55:35.846Z"}}

We wanted to understand whether the task is executed or whether it is skipped:
https://github.com/gardener/gardener/blob/6f8ce7692f793e583734f533cfdee7b9d93fb815/pkg/gardenlet/controller/shoot/shoot/reconciler_delete.go#L426-L430
Note the DoIf(cleanupShootResources) part.
Currently the skipping task is implemented by empty task approach:
https://github.com/gardener/gardener/blob/5abed1bfedd6f2188e5dcec9af161d1b5c286236/pkg/utils/flow/taskfn.go#L38-L48
So, the logs don't reveal if task was skipped or actually executed.
In both of the cases gardenlet will log its Succeeded log:
https://github.com/gardener/gardener/blob/5abed1bfedd6f2188e5dcec9af161d1b5c286236/pkg/utils/flow/flow.go#L220
We expected:

to do not have a log entry at all for a skipped task
or the Succeed log entry to reveal that the task is skipped

Why is this needed:
For better ops productivity.

/assign


How to fill in the credential of mqtt server?

Describe Your Problem:

This might be a 2 cent question but I would like to ask if you have the example template for mqtt server that has the authentication enabled. I know it should be filled in options but I'm not sure how to correctly do it.
Thank you in advance.
PS. Have been following this ESPresense Project for quite sometimes but since I don't use HA, I couldn't really try it out at all. Thanks for bringing this to Homebridge Community. I desperately want to try this out since the ESP32 is dirt cheap and if it could do what it's promising with ESPresense, it would be absolutely a game changer to Smart Home industry.
Logs:
Show the Homebridge logs here, remove any sensitive information.

Plugin Config:
Show your Homebridge config.json here, remove any sensitive information.

Screenshots:

Environment:

Plugin Version:
Homebridge Version:
Node.js Version:
NPM Version:
Operating System:

Hi @Aekung,
this should work according to the regular HTTP URL segmentation:
https://en.wikipedia.org/wiki/URL#Syntax
Additionally, you can have a look at the docs of MQTT.js, which is being used under the hood for mqtt communication ( it shares its config options with the ones from homebridge-espresense):
https://github.com/mqttjs/MQTT.js#mqttconnecturl-options
Thank you very much for your appreciation! Feel free to contribute, we still have to implement the UI configuration and add a better documentation!
Best regards

I can connect to mqtt server just fine now but I can't seem to find any occupancy sensors added by this plugin even after adding the plugin to Homebridge. Homebridge also doesn't show any error log relating to this plugin as well. Do you have any idea what's the problem here?

I can connect to mqtt server just fine now but I can't seem to find any occupancy sensors added by this plugin even after adding the plugin to Homebridge. Homebridge also doesn't show any error log relating to this plugin as well. Do you have any idea what's the problem here?

The occupy sensor is not appeared in Homekit now. It seems I messed up with the mqtt setting in ESPresense WebUI. I'm now trying to figure out for the easy way to identify my apple devices. Do you have any suggestion on that?

Sounds good (I guess you were trying to say that it is working now).
Apple Devices are relatively tricky to identify as they are using rolling BLE MACs. Fortunately, ESPresense uses pretty sophisticated fingerprinting techniques. So you should be using the device id, which I found out looks like this for my devices:

Apple Watch Series 5: apple:1005:9-24
Apple iPhone 12 Pro: apple:1007:11-8

In general, you should look at the debugging output of your ESPresense device (Serial console) and bring your device close (and keep all other devices away). Like this, you should be able to identify your device id's.

Sounds good (I guess you were trying to say that it is working now).
Apple Devices are relatively tricky to identify as they are using rolling BLE MACs. Fortunately, ESPresense uses pretty sophisticated fingerprinting techniques. So you should be using the device id, which I found out looks like this for my devices:

Apple Watch Series 5: apple:1005:9-24
Apple iPhone 12 Pro: apple:1007:11-8

In general, you should look at the debugging output of your ESPresense device (Serial console) and bring your device close (and keep all other devices away). Like this, you should be able to identify your device id's.

Yes, everything seems to be able to work fine now.
Thanks for the advice. I think I can finally locate my iPhone ID now according to your guidance.
I do find 1 strange behavior though. All the device id I put in the config file will only show as 1 sensor with the room name. Is it possible if I want each device id to show as separated occupy sensor so I can give it a name of the owner of the device to track whether who is currently in that specific room?
Again, thank you very much for your great work!

Unfortunately, that is not possible at the moment as the HomeKit accessories of this plugin are intended to deploy a occupancy sensor per room.
Thank you very much for your feedback!

Unfortunately, that is not possible at the moment as the HomeKit accessories of this plugin are intended to deploy a occupancy sensor per room.
Thank you very much for your feedback!

Got it. Thank you for the reply. Hopefully, you would expand the plugin functionality once when you have time =) I can think of a very useful way like having Siri tell my kid that it’s already a bed time if she find her still watching the TV in the living room late at night or something like that.
Anyway, the current state of the plugin is already very useful. Thank you for bring this integration to us Homebridge users ^^

I'm experiencing the occupancy sensor reseting the state back and forth very fast. Says it's occupied for 10 seconds and then reset back to unoccupied and then occupied again within a blink of an eyes. Do you know what could possibly be the problem here or what settings I should tweak to make this goes away?
I'm now playing with Absorption and Distance but it doesn't seem to work.
Thank you in advance.

You can try raising the timeout setting.


Reboot sbt more often in CI.

In particular, always reboot it between a pre-link, fastOpt, and
fullOpt runs. This has at several benefits:

The logs more clearly indicate what linking stage has failed.
In case of retry, only the failed stage is retried.
It gives more time to every single stage test.
It consumes less RAM, as the states for fastOpt and fullOpt
are not retained in memory at the same time.

Review by @nicolasstucki

LGTM

Refer to this link for build results (access rights to CI server needed):
https://scala-webapps.epfl.ch/jenkins/job/scalajs-pr/2690/
https://scala-webapps.epfl.ch/jenkins/job/scalajs-matrix-build/3475/
Test FAILed.

Refer to this link for build results (access rights to CI server needed):
https://scala-webapps.epfl.ch/jenkins/job/scalajs-pr/2694/
https://scala-webapps.epfl.ch/jenkins/job/scalajs-matrix-build/3479/
Test PASSed.


Problem with fixed menu and loader

Hi, I think fixed menu should be above of loader, but only if loader not in modal window.

This issue seems to had reappear...
Components like fixed menu, and dropdowns have lower z-index than loader, making them hidden behind the loader.