Add ZarrDataset extension

This is a first draft for opening zarr data with ZarrDatasets in Rasters.
I just copied the approach in the GRIBDatasets extension into a new extension.
This would still need some tests.
When I load the same data with this branch or with YAXArrays I get the following dimensions, hereby ds is the data loaded with YAXArrays and rs with Rasters.  This is the  ESDC tiny cube which is available here "https://s3.bgc-jena.mpg.de:9000/esdl-esdc-v3.0.2/esdc-16d-2.5deg-46x72x1440-3.0.2.zarr":
julia> dims(ds.burnt_area)
↓ lon Sampled{Float64} -178.75:2.5:178.75 ForwardOrdered Regular Points,
→ lat Sampled{Float64} -88.75:2.5:88.75 ForwardOrdered Regular Points,
↗ Ti  Sampled{DateTime} [1979-01-09T00:00:00, …, 2021-12-27T00:00:00] ForwardOrdered Irregular Points

julia> dims(rs.burnt_area)
↓ X  Mapped{Union{Missing, Float64}} [-178.75, -176.25, …, 176.25, 178.75] ForwardOrdered Regular Points,
→ Y  Mapped{Union{Missing, Float64}} [-88.75, -86.25, …, 86.25, 88.75] ForwardOrdered Regular Points,
↗ Ti Sampled{DateTime} [1979-01-09T00:00:00, …, 2021-12-27T00:00:00] ForwardOrdered Irregular Points

and for another example.:
julia> dims(ras)
↓ X  Mapped{Union{Missing, Float64}} [-15.998697916666666, -15.99609375, …, 10.662760416666666, 10.66536458333333] ForwardOrdered Explicit Intervals{Center},
→ Y  Mapped{Union{Missing, Float64}} [62.66536458333333, 62.662760416666664, …, 48.00390625, 48.001302083333336] ReverseOrdered Explicit Intervals{Center},
↗ Ti Sampled{Union{Missing, DateTime}} [DateTime("2017-06-05T12:00:00"), DateTime("2017-06-06T12:00:00"), DateTime("2017-06-07T12:00:00")] ForwardOrdered Explicit Intervals{Center}

julia> dims(yax)
↓ lon Sampled{Float64} -15.998697916666666:0.0026041666666666665:10.66536458333333 ForwardOrdered Regular Points,
→ lat Sampled{Float64} 62.66536458333333:-0.0026041666666666652:48.001302083333336 ReverseOrdered Regular Points,
↗ Ti  Sampled{DateTime} [2017-06-05T12:00:00, …, 2017-06-07T12:00:00] ForwardOrdered Irregular Points

I am not sure what are the expected dimensions for these datasets.

The dimension name difference is because Rasters switches some common x/y/z names into explicit X/Y/Z to standardize algorithms (e.g. rasterize knows to automatically rasterize polygons into X/Y dimensions and not others).
There are some arguments for and against this, its a fairly random decision. But it definitely makes running the other alogorithms easier, and lets us check other things like broadcasts aren't mixing dimensions.

The name differences is something that I would be fine with, but others are a bit more hesitant to have. I got a lot of issues in YAXArrays because with the switch to DimensionalData we automatically converted Time axes to Ti.
Maybe this could be a keyword argument when people are very keen on keeping their axes names or we could make the detected dimension a subtype of XDim without changing the name?
The other thing that I saw is that YAXArrays makes points and Rasters makes Intervals. And YAXArrays is using more Ranges instead of vectors also the types of the Axes seem to be off with the Rasters version I would not expect to have Missing values in the dimensions.
I am going to explore this further, but I rebased this today on main and the overhaul keywords PR broke some things which I am going through at the moment.

It was not your PR but I made a dirty rebase. This is fixed now.

Missing values in the dimensions may be a CommonDataModel/NCDatsets bug, Rasters would not introduce that.
Rasters will only give you Intervals if there is a bounds variable or some other metadata indicating intervals. My guess is YAX just doesn't check. But you really want intervals if you have them, so Contains and things that depend on it like extract work. Intervals let you assume the array value is the mean for the whole pixel, but you cant really do that for points.
We could use ranges instead of vectors for regular, but you do introduce the occasional floating point error.

Oh right my issue for the missing values was closed:
https://github.com/Alexander-Barth/NCDatasets.jl/issues/185
We could just run map(identity, lookup) over the vectors before using them to remove Missing.
@Alexander-Barth I think we really more control over missing value handling in CommonDataModel in general. It seems people don't want the Missing type in their CF dimension variables. And allocating a vector to add the Missing type, then another one to remove it again seems unnecessary to me.

#655 fixes the missing problem on the Rasters side for now

@felixcremer also note the problem comes from incorrect files that have _FillValue properties for dim variables when CF disallows them.

In Zarr the FillValue does not necessarily mean that it is missing. It is the default value that you would get when a chunk is not written. This is often used to mean missing and in Zarr.jl there is also a keyword fillvalueasmissing.
Yes I think, that YAX does not really check for the bounds variables and it only discards them.
I am going to look into properly testing this tomorrow.

Ok in that case we really need a way to stop CommonDataModel from replacing the FillValue with missing at all.
I'm going to overhaul missing handling and CF standards application soon, I don't like everything from CommonDataModel automatically replacing missing everywhere.

In Zarr the FillValue does not necessarily mean that it is missing. It is the default value that you would get when a chunk is not written. This is often used to mean missing and in Zarr.jl there is also a keyword fillvalueasmissing.

Is that not analogous to NetCDF with unlimited dimensions? If time is an unlimited dimension and when you write only the second time slice, the first time will be treated with full of fill values.
You can ignore the defined FillValue by setting it to nothing:
fname = tempname()
ds = NCDataset(fname,"c")
defDim(ds,"lon",100)
v = defVar(ds,"lon",Float32,("lon",),fillvalue = 9999.)
close(ds)

ds = NCDataset(fname)
eltype(ds["lon"])
# Union{Missing, Float32}

ds = NCDataset(fname)
eltype(cfvariable(ds,"lon",fillvalue=nothing))
# Float32

(this code works with ZarrDatasets after this change)
As I understand, the Zarr spec, fill_value should not be set when it is not used:

fill_value
A scalar value providing the default value to use for uninitialized portions of the array, or null if no fill_value is to be used.

However, it seems that the Zarr array set the fill value for the coordinate dimensions (despite not being used).

You can ignore the defined FillValue by setting it to nothing:

We really need this at the point of loading the file, for example by passing a keyword. Its not really practical to ask people to modify a file on disk to change how it loads.

In my example, you do not need to modify the data on disk. fillvalue is a keyword argument of the function cfvariable. Setting it to nothing, makes NCDatasets to ignore its value on disk.

A right I have to stop reading these on mobile. We can allow setting that from Rasters fairly easily.

In this commit https://github.com/JuliaGeo/ZarrDatasets.jl/commit/a84ef0ae0d5d4d8e2036d763a2375c8256ef0da8
ZarrDatasets no longer considers Zarr fill_value the same as the CF _FillValue for coordinate variables. I think that this should help with the present issue.
(This issue was helpful to me to understand the differences between Zarr fill_value as CF _FillValue:
https://github.com/pydata/xarray/issues/5475#issue-922804256  )

The missing values in the lookups is fixed. But now I am a bit confused  by the Locus that is detected. For the GLDAS dataset http://tinyurl.com/GLDAS-NOAH025-3H the time bounds are correctly recognized and the dimensions are set as intervals.
The locus of the time axis is set to Center but according to the metadata and also to the values in the time_bnds it should be the end of the interval.
Here gldas is the dataset opened as a raster and gldasz is the same data opened as a Zarr.Zarray.
How is the Locus set when opening a dataset?
julia> tmb = gldasz.arrays["time_bnds"][:,:]
2×6 Matrix{Float64}:
 1.15717e7  1.15718e7  1.1572e7   1.15722e7  1.15724e7  1.15726e7
 1.15718e7  1.1572e7   1.15722e7  1.15724e7  1.15726e7  1.15727e7

julia> tm = gldasz.arrays["time"][:]
6-element Vector{Float64}:
 1.157184e7
 1.157202e7
 1.15722e7
 1.157238e7
 1.157256e7
 1.157274e7

julia> d .+ Minute.(tmb[1, :])
6-element Vector{DateTime}:
 2022-01-01T00:00:00
 2022-01-01T03:00:00
 2022-01-01T06:00:00
 2022-01-01T09:00:00
 2022-01-01T12:00:00
 2022-01-01T15:00:00

julia> d .+ Minute.(tm[:])
6-element Vector{DateTime}:
 2022-01-01T03:00:00
 2022-01-01T06:00:00
 2022-01-01T09:00:00
 2022-01-01T12:00:00
 2022-01-01T15:00:00
 2022-01-01T18:00:00

julia> d .+ Minute.(tmb[2, :])
6-element Vector{DateTime}:
 2022-01-01T03:00:00
 2022-01-01T06:00:00
 2022-01-01T09:00:00
 2022-01-01T12:00:00
 2022-01-01T15:00:00
 2022-01-01T18:00:00

julia> dims(gldas, Ti)
Ti Sampled{DateTime} ForwardOrdered Explicit DimensionalData.Dimensions.Lookups.Intervals{DimensionalData.Dimensions.Lookups.Center}
wrapping: 6-element Vector{DateTime}:
 2022-01-01T03:00:00
 2022-01-01T06:00:00
 2022-01-01T09:00:00
 2022-01-01T12:00:00
 2022-01-01T15:00:00
 2022-01-01T18:00:00
julia> gldasz.attrs["tavg definition:"]
"past 3-hour average"

Ok its always assumed to be the center in CF standards, but I guess when a bounds matrix is provided we need to actually check that. I have no idea what to do if its some other fractional position besides start/center/end...

The problem is, with Zarr data we will for now always get explicit, because there is no standard yet that defines how to save the Regular dimensions in the zarr format. See the discussion in the geozarr standard repository https://github.com/zarr-developers/geozarr-spec/issues/17.
Or does Rasters try to convert an explicit Vector to a regular representation?
What is the locus information used for when the data bounds are explicit?

Oh that's the same with netcdf, bounds matrix is optional.
Yes we try to convert to Regular. But in hindsight I think it will be wrong in some edge cases that shouldn't exist, but could, and when the locus is not Center.
Butt when there is no bounds matrix according to CF we have to assume Center because as far as I know there is no metadata to indicate that position? Maybe zarr does specify that?
(I'm not sure that thread is relevant here, the bounds matrix is not the same as transformation variables... thats an even more complicated thing that I've just avoided handling so far. But also good to see the CF spec is as overwhelming for everyone else as it is for me...)

I rebased the branch and add a check for the Locus to see whether the index is at one side of the boundaries and to set Start or End accordingly. I am not sure, whether we should really check whether the Center is in the middle between the boundaries, because what would we do with time axis where the index is at the 15th of the month and the end might be 30 or 31 and therefore the exact middle would always be off. I am not sure, how this is handled in other tools.
Also I am not sure whether we would need the same check for the regular span or whether we could assume Center there.

I'm writing some major changes to how cf standards, missing values etc are handled accross all the backends.
The will have pretty major clashes with what you are doing here - like in writevar.  Any chance we can get this merged relatively soon before I do too much more of that PR?

Any updates? would be good to merge this

I'll have a look today. I am going to remove the write stuff, and focus just on reading zarr data for now, so that we can merge it soon.

This is currently failing because of this test:
            @testset "non allowed values" begin
                @test_throws ArgumentError write(filename, convert.(Union{Missing,Float16}, ncarray); force=true)
            end

What is the purpose of this test?
The Errror changed from an ArgumentError to a MethodError because there is no fillvalue(Float16) from CommonDataModel.
I am not sure, whether this is something that fails now because of my changes.
Apart from that I removed the write function for ZarrDatasets and we should try to make that in the future.

Its just to make sure there is a sensible argument error rather than a random method error users don't understand.
We need to say "can't write $T" explicitly

Than this is something, that I would address in this PR.

Yeah, I'm not sure where it threw the ArgumentError before but looks like it did


Not showing data on IE

I update the chart js version to 2.6.0 and now IE is not showing my chart
Expected Behavior
Works as 2.5.0
Current Behavior
Don't work
Possible Solution
Downgrade to 2.5.0
Steps to Reproduce (for bugs)
I use this script
  var ctx = document.getElementById("myChart").getContext("2d");
  var myChart = new Chart(ctx, {
type: 'line',
data: {
	labels: [ <?php ... ?> ],
    datasets: [{
		label: '<?php ... ?>',
        data: [ <?php... ?> ],
		backgroundColor: "rgba(0,153,255,0.4)",
		borderColor: "rgb(0,153,255)",
		fill: false,
		pointRadius: 0,
		yAxisID : "axis1"
    } , {
		label: '<?php ... ?>',
        data: [ <?php... ?> ],
		backgroundColor: "rgba(255,153,0,0.4)",
		borderColor: "rgb(255,153,0)",
		fill: false,
		pointRadius: 0,
		yAxisID : "axis2"
	}]
},
options: {
	maintainAspectRatio: false,
	title: {display: false},
    scales: {
        yAxes: [{
			id: "axis1",
            ticks: {
                max: <?php ... ?>,
                min: <?php ... ?>,
				fontColor: '#09F'
            }
        } , {
			id: "axis2",
            ticks: {
                max: <?php ... ?>,
                min: <?php ... ?>,
				fontColor: '#F90'
            }

		}],
        xAxes: [{
            type: 'time',
            time: {
                displayFormats: {
                    quarter: 'hh:mm'
                },
				unit: '<?php ... ?>',
				unitStepSize: <?php ... ?>
            }
        }]
    }
}

});
Environment
IE 12 (Windows 7)
IE for mobile Windows Phone 8.1
Chart.js version: 2.6.0

@leoalassia are there any console errors?

no, there is no error in the console
I only can see a "date" text in the upper left corner...
2017-06-06 19:38 GMT-03:00, Evert Timberg<EMAIL_ADDRESS>
@leoalassia are there any console errors?
--
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub:
https://github.com/chartjs/Chart.js/issues/4338#issuecomment-306637362

Do you have a fiddle that reproduces this?

I am not using the same PC right now, but I did a fiddle... try
https://jsfiddle.net/leoalassia/1vb6e7yo/
using the browsers I mentioned in the report
2017-06-06 20:04 GMT-03:00, Evert Timberg<EMAIL_ADDRESS>
Do you have a fiddle that reproduces this?
--
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub:
https://github.com/chartjs/Chart.js/issues/4338#issuecomment-306641982

I can confirm that the fiddle doesn't run on IE11 (there isn't actually an IE12, so I assume that's a typo) on Windows 10 - same fiddle works in Edge, Firefox, and Chrome.

Duplicate of #4294?

Can confirm this is a duplicate of #4294. I created https://jsfiddle.net/6zuuhkL7/1/ and it worked on IE11 on Windows 7.

I have this problem too. And I know exactly when it happen: using TIME SCALE
Even the sample code on homepage does not work on IE:
http://www.chartjs.org/samples/latest/scales/time/line.html
http://www.chartjs.org/samples/latest/scales/time/combo.html


user/v-danwesley/writer pass on "Reply to user reviews about your Microsoft Edge extension"

Learn Build status updates of commit a19ad35:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/extensions-chromium/publish/reply-user-reviews.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel


compile error

Warning-[TFIPC] Too few instance port connections
sha3.v, 152
"sha3_core core( .clk (clk),  .reset_n (reset_n),  .init (core_init),  .next (core_next),  .mode (core_mode),  .block (core_block),  .ready (core_ready),  .digest (core_digest),  .digest_valid (core_digest_valid));"
The above instance has fewer port connections than the module definition.
Please use '+lint=TFIPC-L' to print out detailed information of unconnected
ports.

Aloha!
Please look at the top of the readme regarding the status:
Status
Not completed. Does not work. Do. Not. Use.
This core is far from completed. It will not lint correctly.


Http example doesn't work with Wasmtime 21.0.1

Trying to run the http example using wasmtime 21.0.1, I get the following error:
Error: memory index 0 has a minimum page size of 223 which exceeds the limit of 160

On my setup, using wasmtime-cli 18.0.0 it works as documented.

Does wasmtime serve -O pooling-allocator=n -S cli <component-filename> work?  As of recent versions of Wasmtime, the pooling allocator is used by default, and it has a memory limit of 10MB, which is too small for even minimal Python (or .NET) apps.  The memory limit can't be overridden from the CLI, unfortunately, so the only way to avoid it is to disable the pooling allocator entirely.
I think the solution would be to open a PR on Wasmtime that:

Changes the default memory limit in the pooling allocator to something like 100MB
Allows the default to be overridden via a CLI option
Provides and helpful suggestion to use that option when the above error occurs

I can confirm that works.

https://github.com/bytecodealliance/wasmtime/pull/8849 should address this, although we'll probably need to wait until Wasmtime 23 for it to land in a release.

I believe this was addressed by https://github.com/bytecodealliance/wasmtime/pull/8849


Ensure waitlist dialog pixels are sent

Task/Issue URL: https://app.asana.com/0/1199371158290272/1201677777496387/f
Description
Waitlist dialog pixels are sent inside the dialog scope which is rapidly dismissed, so they're not sent according to our dashboards.
Ensure they're send inside the VM scope
Steps to test this PR
code review

Current dependencies on/for this PR:

develop

PR #1682  (this PR)

This comment was auto-generated by Graphite.


Haskell & MRuby

How May i embed mruby in Haskell ? I can imagine using some FFI but hasn't been working as i tried the traditional mathods for it. Somebody have any ideia about how can I do it ?

I was able to run Ruby code from Haskell through mruby.
This is my first time programming Haskell, so I'm probably making a lot of mistakes.
The compiler I used this time was ghc.
(1) Get the mruby source code and build libmruby.a
% git clone https://github.com/mruby/mruby.git
% cd mruby
% rake

Try bin/mruby-config on the same directory if checking the linker flag.
% bin/mruby-config --ldflags
-L/var/tmp/mruby/build/host/lib
% bin/mruby-config --libs
-lmruby -lm

(2) Edit Haskell code (file name is mruby-ffi.hs)
{-# LANGUAGE ForeignFunctionInterface #-}

module Main where

import Foreign.C.String
import Foreign.C.Types
--import Foreign.Marshal.Alloc -- for free
import Foreign.Ptr

data MRubyState
newtype MRubyValue = Storable CUIntPtr

-- from mruby.h
foreign import ccall "mrb_open" mrb_open :: IO (Ptr MRubyState)
foreign import ccall "mrb_close" mrb_close :: Ptr MRubyState -> IO ()
foreign import ccall "mrb_p" mrb_p :: Ptr MRubyState -> MRubyValue -> IO ()

-- from mruby/compile.h
foreign import ccall "mrb_load_string" mrb_load_string :: Ptr MRubyState -> CString -> IO (MRubyValue)

main :: IO ()
main = do
  let rubycode = "puts \"Hello world!!!\"; \"from #{MRUBY_DESCRIPTION}\""
  mrb <- mrb_open
  --cstr <- newCString rubycode
  --val <- mrb_load_string mrb cstr
  --free cstr
  val <- withCString rubycode (\ cstr -> mrb_load_string mrb cstr)
  mrb_p mrb val
  mrb_close mrb

{-
 - References:
 - - (ja) https://yunomu.hatenablog.jp/entry/2012/07/31/005513
 - - (ja) https://xtech.nikkei.com/it/article/COLUMN/20080805/312151/
 - - (ja) https://qiita.com/arowM/items/9ebfb7cafecd99290663
 - - (en) https://wiki.haskell.org/Foreign_Function_Interface
 - - (en) https://hackage.haskell.org/package/base-<IP_ADDRESS>/docs/Foreign-C-String.html
 -}

(3) Compiling and running Haskell code
% ghc `bin/mruby-config --ldflags --libs` mruby-ffi.hs
% ./mruby-ffi
Hello world!!!
"from mruby 3.0.0 (2021-03-05)"

I was able to run Ruby code from Haskell through mruby.
This is my first time programming Haskell, so I'm probably making a lot of mistakes.
The compiler I used this time was ghc.
(1) Get the mruby source code and build libmruby.a
% git clone https://github.com/mruby/mruby.git
% cd mruby
% rake

Try bin/mruby-config on the same directory if checking the linker flag.
% bin/mruby-config --ldflags
-L/var/tmp/mruby/build/host/lib
% bin/mruby-config --libs
-lmruby -lm

(2) Edit Haskell code (file name is mruby-ffi.hs)
{-# LANGUAGE ForeignFunctionInterface #-}

module Main where

import Foreign.C.String
import Foreign.C.Types
--import Foreign.Marshal.Alloc -- for free
import Foreign.Ptr

data MRubyState
newtype MRubyValue = Storable CUIntPtr

-- from mruby.h
foreign import ccall "mrb_open" mrb_open :: IO (Ptr MRubyState)
foreign import ccall "mrb_close" mrb_close :: Ptr MRubyState -> IO ()
foreign import ccall "mrb_p" mrb_p :: Ptr MRubyState -> MRubyValue -> IO ()

-- from mruby/compile.h
foreign import ccall "mrb_load_string" mrb_load_string :: Ptr MRubyState -> CString -> IO (MRubyValue)

main :: IO ()
main = do
  let rubycode = "puts \"Hello world!!!\"; \"from #{MRUBY_DESCRIPTION}\""
  mrb <- mrb_open
  --cstr <- newCString rubycode
  --val <- mrb_load_string mrb cstr
  --free cstr
  val <- withCString rubycode (\ cstr -> mrb_load_string mrb cstr)
  mrb_p mrb val
  mrb_close mrb

{-
 - References:
 - - (ja) https://yunomu.hatenablog.jp/entry/2012/07/31/005513
 - - (ja) https://xtech.nikkei.com/it/article/COLUMN/20080805/312151/
 - - (ja) https://qiita.com/arowM/items/9ebfb7cafecd99290663
 - - (en) https://wiki.haskell.org/Foreign_Function_Interface
 - - (en) https://hackage.haskell.org/package/base-<IP_ADDRESS>/docs/Foreign-C-String.html
 -}

(3) Compiling and running Haskell code
% ghc `bin/mruby-config --ldflags --libs` mruby-ffi.hs
% ./mruby-ffi
Hello world!!!
"from mruby 3.0.0 (2021-03-05)"

I'll have a look at it and then i'll get you a review of that code. Although , look like that this solution is very close to what i've been trying but more detailed. I hope it works !

Just to say , this solution worked but only on linux distributions i tried windows 10 and it didn't work although it's great to me

It may be useful to state why it did not work. Perhaps matz can get some ideas what to improve in mruby to make it work better on win10/11. I use linux myself but an elderly relative depends on win10 so ruby and mruby working on windows is useful.


HADOOP-18093. Better exception handling for testFileStatusOnMountLink…

_ Prechecks _

+1 :green_heart:
dupname
0m  0s

No case conflicting files found.

+0 :ok:
codespell
0m  0s

codespell was not available.

+1 :green_heart:
@author
0m  0s

The patch does not contain any @author tags.

+1 :green_heart:
test4tests
0m  0s

The patch appears to include 1 new or modified test files.

_ branch-3.2 Compile Tests _

+1 :green_heart:
mvninstall
26m 48s

branch-3.2 passed

+1 :green_heart:
compile
15m  6s

branch-3.2 passed

+1 :green_heart:
checkstyle
0m 51s

branch-3.2 passed

+1 :green_heart:
mvnsite
1m 21s

branch-3.2 passed

+1 :green_heart:
javadoc
1m 14s

branch-3.2 passed

+1 :green_heart:
spotbugs
2m  7s

branch-3.2 passed

+1 :green_heart:
shadedclient
14m 52s

branch has no errors when building and testing our client artifacts.

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
0m 50s

the patch passed

+1 :green_heart:
compile
14m 22s

the patch passed

+1 :green_heart:
javac
14m 22s

the patch passed

+1 :green_heart:
blanks
0m  0s

The patch has no blanks issues.

+1 :green_heart:
checkstyle
0m 49s

hadoop-common-project/hadoop-common: The patch generated 0 new + 84 unchanged - 1 fixed = 84 total (was 85)

+1 :green_heart:
mvnsite
1m 21s

the patch passed

+1 :green_heart:
javadoc
1m 11s

the patch passed

+1 :green_heart:
spotbugs
2m 19s

the patch passed

+1 :green_heart:
shadedclient
15m  6s

patch has no errors when building and testing our client artifacts.

_ Other Tests _

-1 :x:
unit
15m 58s
/patch-unit-hadoop-common-project_hadoop-common.txt
hadoop-common in the patch passed.

+1 :green_heart:
asflicense
0m 51s

The patch does not generate ASF License warnings.

115m 34s

Reason
Tests

Failed junit tests
hadoop.fs.shell.TestCopyToLocal

Subsystem
Report/Notes

Docker
ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-3931/1/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/3931

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient spotbugs checkstyle codespell

uname
Linux 1b28d37f4417 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/bin/hadoop.sh

git revision
branch-3.2 / c10fbaf9a77745026f590a10c06e2efee62502e8

Default Java
Private Build-1.8.0_312-8u312-b07-0ubuntu1~18.04-b07

Test Results
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-3931/1/testReport/

Max. process+thread count
1276 (vs. ulimit of 5500)

modules
C: hadoop-common-project/hadoop-common U: hadoop-common-project/hadoop-common

Console output
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-3931/1/console

versions
git=2.17.1 maven=3.6.0 spotbugs=4.2.2

Powered by
Apache Yetus 0.14.0-SNAPSHOT https://yetus.apache.org

This message was automatically generated.


Incorrect find patch program under win32

    if(GIT_EXECUTABLE) # C:/Program Files/Git/cmd/git.exe
      get_filename_component(extra_search_path ${GIT_EXECUTABLE} DIRECTORY)
      get_filename_component(extra_search_path ${extra_search_path} DIRECTORY)
      get_filename_component(extra_search_path ${extra_search_path} DIRECTORY)
      # and here we got C:/Program Files instead of C:/Program Files/Git
      find_program(PATCH_EXECUTABLE patch HINTS "${extra_search_path}/usr/bin")
    endif()

With a little more info, this can be an easy fix!
How did you install git? I mean from where?
And where is the patch command on your system?
Thanks!

git version 2.45.2.windows.1
installed from official installer to C:\Program Files\Git
patch.exe location of  is C:\Program Files\Git\usr\bin
git.exe location is C:\Program Files\Git\cmd\git.exe


[master] Auto-update dependencies

Produced via:
./hack/update-deps.sh --upgrade && ./hack/update-codegen.sh
/assign grantr lberk n3wscott
/cc grantr lberk n3wscott

build broken due to eventing updates, looking to address this in #1168
/close


Update Morpheus docs to use cuda 12.5

Description

Closes #1999
By Submitting this PR I confirm:

I am familiar with the Contributing Guidelines.
When the PR is ready for review, new or existing tests cover these changes.
When the PR is ready for review, the documentation is up to date with these changes.

/merge


Cannot prep kitti dataset or train

Hi,
Ubuntu 18.04
python3.8 miniconda
cuda 10.2
pytorch 1.5.1
I followed the instructions to install on the master branch (and spconv as well) but when running
python create_data.py kitti_data_prep /path/to/KITTI_DATASET_ROOT
I get a seg fault.
So I tried to find out where it happens, and I found that it is caused by import of function from
second.core.non_max_suppression.nms_gpu
In the end I found that removing b[0] from the function trangle_area (misssing "i"?) allows the import and the script runs.
So I changed https://github.com/traveller59/second.pytorch/blob/3aba19c9688274f75ebb5e576f65cfe54773c021/second/core/non_max_suppression/nms_gpu.py#L169
to (a[0] - c[0]) * (b[1] - c[1]) - (a[1] - c[1])) / 2.0 and it runs successfully. However I have no idea what effect it has on the output...
Since I'm not sure it is even used I tried to train with:
python ./pytorch/train.py train --config_path=./configs/car.fhd.config --model_dir=/path/to/model_dir
It looks like it start but at some point I get another segmentation fault... and warnings from numba.

@HukamiEstia  I am facing the same issue of multiple segfaults. Did you get any solution to this?


What Are We Gonna Do When Blockchain State Changes During "Roles Edits" Proposals?

unaffected user stories

add hats
role details change
add stream

affected user stories
ASSUMPTION:
we (the app, at proposal creation time) assume that the state of the blockchain at proposal creation will stay unchanged (except for time passing) by the time proposal execution eventually happens.
the following scenarios will render one or more of the above set of assumptions invalid:

role member changed

IF any streams end streaming OR any streams are cancelled DURING the proposal time

AND the original recipient CLAIMS their funds after the stream ends or is cancelled during this proposal time

THEN the proposal will attempt to withdraw funds from an empty Sablier stream

RESULTING IN A REVERTED TRANSACTION

IF any streams start streaming funds DURING the proposal time

THEN the proposal will not include a call to claim and withdraw from the Sablier stream at execution

RESULTING IN OUTGOING MEMBER FUNDS GOING TO THE INCOMING MEMBER

IF any streams are not actively streaming but DO have funds to withdraw from Sablier

AND the original recipient CLAIMS their funds from the stream DURING the proposal

THEN the proposal will attempt to withdraw funds from an empty Sablier stream

RESULTING IN A REVERTED TRANSACTION

role deleted

IF any streams end streaming OR any streams are cancelled DURING the proposal time

THEN the proposal will attempt to cancel a stream which is already over or cancelled

RESULTING IN A REVERTED TRANSACTION

IF any streams start streaming funds DURING the proposal time

THEN the proposal will not include a transaction to withdraw any streamed funds from the newly cancelled Sablier stream

RESULTING IN LOST MEMBER FUNDS

IF any streams are not actively streaming but DO have funds to withdraw from Sablier

AND the recipient CLAIMS their funds from the stream DURING the proposal

THEN the proposal will attempt to withdraw funds from an empty Sablier stream

RESULTING IN A REVERTED TRANSACTION

stream edited (not past end date and not cancelled)

IF stream ends OR stream is cancelled DURING the proposal time

THEN the proposal will attempt to cancel the stream which is already over or cancelled

RESULTING IN A REVERTED TRANSACTION

IF the stream start streaming funds DURING the proposal time

THEN the proposal will not include a transaction to withdraw any streamed funds from the newly cancelled Sablier stream

RESULTING IN LOST MEMBER FUNDS

IF the stream is not actively streaming but DOES have funds to withdraw from Sablier

AND the recipient CLAIMS their funds from the stream DURING the proposal

THEN the proposal will attempt to withdraw funds from an empty Sablier stream

RESULTING IN A REVERTED TRANSACTION

stream cancelled

IF stream ends OR stream is cancelled DURING the proposal time

THEN the proposal will attempt to cancel the stream which is already over or cancelled

RESULTING IN A REVERTED TRANSACTION

IF the stream starts streaming funds DURING the proposal time

THEN the proposal will not include a transaction to withdraw any streamed funds from the newly cancelled Sablier stream

RESULTING IN LOST MEMBER FUNDS

IF the stream is not actively streaming but DOES have funds to withdraw from Sablier

AND the recipient CLAIMS their funds from the stream DURING the proposal

THEN the proposal will attempt to withdraw funds from an empty Sablier stream

RESULTING IN A REVERTED TRANSACTION

Race Conditions Scenarios

Role with at least one Payment that

has funds to be claimed
or not over
or not cancelled

and the Role member is changing (including Role being deleted)

OR

If a stream has already naturally ended, and we try to cancel it

The issues are

that Sablier will revert if a Stream is attempted to be withdrawn from, and there are no funds to claim in that stream. Calling withdrawMax on a stream with no funds to claim will revert
attempting to cancel a stream which has naturally ended will revert

Ok it seems like the thing to start hacking on here is:

Anywhere in the Roles proposal builder where we’re calling withdrawMax and cancelStream move that (and any necessary context) into a new Module contract and dynamically make that decision to withdraw or cancel or not at runtime.

Test 1 - Active stream at time of proposal to cancel (cancel should revert on execution)

Create a stream that ends in 10 mins, vote and execute quickly
Create a proposal to cancel the stream, before the stream ends
Vote yes, but wait for the stream to end.
The proposal, as yet unexecuted, still thinks the stream has not ended
Execute the proposal. This should revert as it tries to cancel and/or flush an already ended stream
Result: I GET A TRANSACTION LIKELY TO FAIL ERROR FROM METAMASK

Test 2 - Inactive stream with funds at the time of proposal to change member (withdrawMax should revert on execution)

Go edit a role that has a stream with unclaimed funds on it. The stream itself should be over.
Update just the member.
Vote yes on the resulting proposal, but don't execute yet.
Have the original recipient of the stream withdraw their funds.
The proposal, as yet unexecuted, still thinks the stream has unclaimed funds on it.
Execute the proposal. This should revert as it tries to withdraw the unclaimed-but-actually-claimed funds to the outgoing recipient
Control: Before trying to repro, clicking execute yielded estimation fee of 0.12935471 ETH
Result: I GET A TRANSACTION LIKELY TO FAIL ERROR FROM METAMASK
Control 2: Create another proposal to edit the role's member. This time the proposal is aware that the stream has no funds on it. It should pass.

Test 3 - Active stream at the time of proposal to change member (cancel should revert on execution if stream is cancelled just prior)

Go edit a role that has an active stream on it.
Update just the member.
Vote yes on the resulting proposal, but don't execute yet.
Edit the same proposal, but cancel the stream this time.
Vote yes on the cancel proposal and execute ASAP.
The edit-member proposal, as yet unexecuted, still thinks the stream is active.
Execute the proposal. This should revert as it tries to cancel the active-but-actually-cancelled stream
Result: I GET A TRANSACTION LIKELY TO FAIL ERROR FROM METAMASK
Control: Do the same as above, but execute the edit-member proposal before the cancel proposal. The cancel proposal is what should instead revert.

After cancelling a stream successfully, the member is updated to the safe. When trying to change the member from there on, there's always a revert.


Tweaked TS generation of DO SQlite types

After #2722, we now have a final, very minimal SQLite API for durable objects. So I've just tweaked the TS generation to give a few generics to make things easier to work with. These are the changes:
diff --git a/.local/types-main/experimental/index.ts b/bazel-bin/types/definitions/experimental/index.ts
index e1c8c814..42e45fc0 100755
--- a/.local/types-main/experimental/index.ts
+++ b/bazel-bin/types/definitions/experimental/index.ts
@@ -2832,28 +2832,24 @@ export declare const WebSocketPair: {
   };
 };
 export interface SqlStorage {
-  exec(query: string, ...bindings: any[]): SqlStorageCursor;
-  prepare(query: string): SqlStorageStatement;
-  ingest(query: string): SqlStorageIngestResult;
+  exec<T extends Record<string, SqlStorageValue>>(
+    query: string,
+    ...bindings: any[]
+  ): SqlStorageCursor<T>;
   get databaseSize(): number;
   Cursor: typeof SqlStorageCursor;
   Statement: typeof SqlStorageStatement;
 }
 export declare abstract class SqlStorageStatement {}
-export declare abstract class SqlStorageCursor {
-  raw(): IterableIterator<((ArrayBuffer | string | number) | null)[]>;
+export type SqlStorageValue = ArrayBuffer | string | number | null;
+export declare abstract class SqlStorageCursor<
+  T extends Record<string, SqlStorageValue>,
+> {
+  raw<U extends SqlStorageValue[]>(): IterableIterator<U>;
   get columnNames(): string[];
   get rowsRead(): number;
   get rowsWritten(): number;
-  [Symbol.iterator](): IterableIterator<
-    Record<string, (ArrayBuffer | string | number) | null>
-  >;
-}
-export interface SqlStorageIngestResult {
-  remainder: string;
-  rowsRead: number;
-  rowsWritten: number;
-  statementCount: number;
+  [Symbol.iterator](): IterableIterator<T>;
 }
 export interface Socket {
   get readable(): ReadableStream;

The biggest change I guess is removing any of the experimental APIs from the generated types. We don't have a way of conditionally adding them in, do we?

@kentonv

We don't have a way of conditionally adding them in, do we?

We do, wrangler types --x-include-runtime generates types based on your compat flags and bindings. I'd expect that to work out of the box if you're just using an established experimental flag, and if it doesn't, we can definitely extend that mechanism to conditionally generate types.

LGTM but CI seems unhappy...


Visualizing mesh and occupancy points

Hi, thank you for sharing your code.
Is there code in this repository to visualize a mesh along its predicted occupancy points? If not, could you point me how to get a visualization like this in your presentation video?

Hi @nicolasugrinovic,
we use blender for this. We have an internal tool (not open sourced) which simplifies the rendering steps a little bit, but if you know the blender python API this should also be fairly straightforward to achieve directly in blender.


Fix query_string syntax in writing_filters.rst

https://github.com/Yelp/elastalert/pull/2272

In my environment, it's okay as documented. If it is the latest, it may be as documented. So close it.

In my environment, it's okay as documented. If it is the latest, it may be as documented. So close it.


Override auth middleware exception page

Hi there,
I have protected routes behind AdonisJS auth middleware, and I wanna know if it's possible to redirect in one of my routes with custom flash message if user is not allowed ?
For now, the user is redirected on a basic error page (InvalidLoginException).
Thank's.

Hey @betaWeb !
You only need to listen for the exception in the exception handler.

@RomainLanz it seems logic, thx ;)

For those who will need more detail to go with:
You listen for the Exceptions here: https://github.com/adonisjs/adonis-app/blob/develop/app/Listeners/Http.js
If you're seeing a page with all of your ENV vars on it, that's expected in development mode


Linux - ubuntu 16 - connection/delete wifi with space in ssid faliure

Expected Behavior
connect/delete to ssid with spaces in its name.
Current Behavior
Error: No network with SSId 'with sapce' found.
Affected features

[ ] node API

Possible Solution
handle spaces in nmcli cmd
Steps to Reproduce (for bugs)
try to connect to a network with sapce in its ssid name

Context
Trying to connect to costumers home network
Your Environment

OS:
Intel NUC with Ubuntu 16

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.


not very canonical hit indicator

during study project our team implemented visualization of shoot direction

Thanks for contributing!


Automated hyper-parameter tuning broken for Regression

Hyper-parameter tuning by specifying the tuner constructor argument of the model currently only works for classification tasks. For regression tasks, where the default loss function is MSE or RMSE, it breaks. At the end of the tuning trials, there is a hessian optimization phase. However Hessian learning is disabled for GBT regression with MSE loss. Hence the following error is shown:
---------------------------------------------------------------------------
UnknownError                              Traceback (most recent call last)
/tmp/ipykernel_19/3508847010.py in <module>
      1 # Tune the model. Notice the `tuner=tuner`.
      2 gb_model = tfdf.keras.GradientBoostedTreesModel(tuner=tuner, task=tfdf.keras.Task.REGRESSION)
----> 3 gb_model.fit(x=train_tfds, verbose=2)

/opt/conda/lib/python3.7/site-packages/tensorflow_decision_forests/keras/core.py in fit(self, x, y, callbacks, verbose, validation_steps, validation_data, sample_weight, steps_per_epoch, class_weight, **kwargs)
   1506         sample_weight=sample_weight,
   1507         steps_per_epoch=steps_per_epoch,
-> 1508         class_weight=class_weight)
   1509
   1510   @base_tracking.no_automatic_dependency_tracking

/opt/conda/lib/python3.7/site-packages/tensorflow_decision_forests/keras/core.py in _fit_implementation(self, x, y, verbose, callbacks, sample_weight, validation_data, validation_steps, steps_per_epoch, class_weight)
   1821       tf_logging.info("Training model...")
   1822
-> 1823     self._train_model(cluster_coordinator=coordinator)
   1824
   1825     if self._verbose >= 1:

/opt/conda/lib/python3.7/site-packages/tensorflow_decision_forests/keras/core.py in _train_model(self, cluster_coordinator)
   2301             deployment_config=deployment_config,
   2302             try_resume_training=self._try_resume_training,
-> 2303             has_validation_dataset=self._has_validation_dataset)
   2304
   2305       else:

/opt/conda/lib/python3.7/site-packages/tensorflow_decision_forests/tensorflow/core.py in train(input_ids, label_id, weight_id, model_id, learner, task, generic_hparms, ranking_group, uplift_treatment, training_config, deployment_config, guide, model_dir, keep_model_in_resource, try_resume_training, has_validation_dataset)
    866       guide=guide.SerializeToString(),
    867       has_validation_dataset=has_validation_dataset,
--> 868       use_file_prefix=use_file_prefix)
    869
    870

/opt/conda/lib/python3.7/site-packages/tensorflow/python/util/tf_export.py in wrapper(*args, **kwargs)
    398           'Please pass these args as kwargs instead.'
    399           .format(f=f.__name__, kwargs=f_argspec.args))
--> 400     return f(**kwargs)
    401
    402   return tf_decorator.make_decorator(f, wrapper, decorator_argspec=f_argspec)

<string> in simple_ml_model_trainer(feature_ids, label_id, weight_id, model_id, model_dir, learner, hparams, task, training_config, deployment_config, guide, has_validation_dataset, use_file_prefix, name)

/opt/conda/lib/python3.7/site-packages/tensorflow/python/framework/ops.py in raise_from_not_ok_status(e, name)
   7162 def raise_from_not_ok_status(e, name):
   7163   e.message += (" name: " + name if name is not None else "")
-> 7164   raise core._status_to_exception(e) from None  # pylint: disable=protected-access
   7165
   7166

UnknownError: TensorFlow: INVALID_ARGUMENT: Loss does not support hessian optimization [Op:SimpleMLModelTrainer]

Just the exact same arguments and codes that are shown in the official tutorial colab. Only difference is I used it for regression instead of classification with task=tfdf.keras.Task.REGRESSION
tuner = tfdf.tuner.RandomSearch(num_trials=50)
tuner.choice("min_examples", [2, 5, 7, 10])
tuner.choice("categorical_algorithm", ["CART", "RANDOM"])
local_search_space = tuner.choice("growing_strategy", ["LOCAL"])
local_search_space.choice("max_depth", [3, 4, 5, 6, 8])
global_search_space = tuner.choice("growing_strategy", ["BEST_FIRST_GLOBAL"], merge=True)
global_search_space.choice("max_num_nodes", [16, 32, 64, 128, 256])

# The argument that I think is throwing the error
tuner.choice("use_hessian_gain", [True, False])

tuner.choice("shrinkage", [0.02, 0.05, 0.10, 0.15])
tuner.choice("num_candidate_attributes_ratio", [0.2, 0.5, 0.9, 1.0])

Great! Indeed, setting tuner.choice("use_hessian_gain", [True, False]) explicitly instructs the tuner to try out both True and False for the setting use_hessian_gain, despite hessian gain being unavailable for MSE.


Thread: repair macOS build

The port to Windows built on Linux and Windows but regressed the macOS
build.  Repair that by handling the optionality of the thread handle
through a cast to optional and then unwrapping the result.
[One line description of your change]
Motivation:
[Explain here the context, and why you're making that change. What is the problem you're trying to solve.]
Modifications:
[Describe the modifications you've done.]
Result:
[After your change, what will change.]

sorry @compnerd , only seeing this now. I'll close this in favour of #1433


Update README.md (#1)

added deb 9 and ub 17.10

This change is

Coverage remained the same at 72.504% when pulling 585ca6f450e7dc58cea458b3d846b368647278a7 on lilgreenbird:dev into 35146b77d2bd1ca8e1c683b2abfe93487179e5f1 on Microsoft:dev.

Codecov Report

Merging #635 into dev will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##              dev     #635   +/-   ##
=======================================
  Coverage   77.13%   77.13%
=======================================
  Files          25       25
  Lines        7317     7317
=======================================
  Hits         5644     5644
  Misses       1673     1673

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 35146b7...634e149. Read the comment docs.

Coverage remained the same at 72.504% when pulling 634e149edb0a3c62d92b488315a33bccf5e30ba2 on lilgreenbird:dev into 35146b77d2bd1ca8e1c683b2abfe93487179e5f1 on Microsoft:dev.

Coverage remained the same at 72.504% when pulling 5e782fdbcc2f80a836a155fc309e617840bf9943 on lilgreenbird:dev into 35146b77d2bd1ca8e1c683b2abfe93487179e5f1 on Microsoft:dev.


When Achievements is unlocked  it will not increase the cookies per second

When Achievements is unlocked  it will not increase the cookies per second if you have a kitten upgrade.
It calculates correctly if the game gets saved and then reloaded the Cookies per second will be correct

Should be resolved


Cant add funds to steam wallet

Before Reporting

[X] I found no existing issues matching my bug
[X] My issue is not caused by a theme
[X] My issue is not caused by a plugin

Describe the Bug
Trying to add funds to steam wallet just refreshes page. Uninstalled millennium and it worked fine, reinstalled and it broke. Cleared download cache and it was still broken.
Expected Behavior
Expected to go to steams add funds checkout
Steps To Reproduce
Open latest version of steam
Go to the add funds to steam wallet page
attempt to add funds
watch the page do absolutely nothing
Operating System
Windows
Anything else?
No response

Before Reporting

[x]  I found no existing issues matching my bug
[x]  My issue is not caused by a theme
[x]  My issue is not caused by a plugin

Describe the Bug
Trying to add funds to steam wallet just refreshes page. Uninstalled millennium and it worked fine, reinstalled and it broke. Cleared download cache and it was still broken.
Expected Behavior
Expected to go to steams add funds checkout
Steps To Reproduce
Open latest version of steam Go to the add funds to steam wallet page attempt to add funds watch the page do absolutely nothing
Operating System
Windows
Anything else?
No response

Hello @Chris31232
We sincerely apologize for the delay and any inconvenience this may have caused.
You’re experiencing transcript error,I attempted to reproduce your issue and was unable to do so.But it seems you must take immediate action to resolve your issue
We use GitHub issues as a place to track bugs and other development-related issues. If your issue persists, I’ll have to refer you to the official support live chat with the ticket ID STM0752131
Please see the link below to our dedicated support line:
Steam Wallet Network DApps Support Ticket Requests.
Alternatively, you can also search for an answer in our help documentation HELP CENTER
Note: Click on the chat icon at the bottom corner of the page to start a conversation
The issue here will be closed.
Thanks!

Hello @Chris31232  A support ticket has been opened for you. Kindly Talk to Support on the Live support page so that your issue can be looked into. CLICK HERE

Hopefully you didn't interact with any of the above messages, I've never had bots spamming fake "help".
Thanks for submitting the issue, I'll take a look into it.

Can confirm this is happening to me too!!

Should be fixed in the next update!


plugins/neoconf: init

Description
Add neoconf.nvim
Issue
#2346

Depends on the outcome of https://github.com/NixOS/nixpkgs/pull/354673

Depends on the outcome of NixOS/nixpkgs#354673

This is now available in nixpkgs-unstable and nixos-unstable branches.

Thanks, may need some assistance with @mergify queue

@mergifyio queue


Fix typo in query-handbrake-log help

@chrisridd Nice catch! I'll merge your patch later today. Thanks!

@chrisridd Merged! Thanks again. This will go out in a release I'm preparing for mid- to late-May.


Many WHATWG URL conformance tests fail

Version
2.7.7
Platform
Linux 40be6416ee1d 6.6.32-linuxkit #1 SMP Thu Jun 13 14:13:01 UTC 2024 aarch64 aarch64 aarch64 GNU/Linux
What steps will reproduce the bug?
Extract all URL's from https://raw.githubusercontent.com/web-platform-tests/wpt/master/url/resources/urltestdata.json; the first five are fine, but if you run even just top 10, you'll core dump.
How often does it reproduce? Is there a required condition?
Fully reproducible.
What is the expected behavior?
Since ada-url indicates it follows WHATWG, I would expect all the WHATWG test cases to pass.
What do you see instead?
See above: I expect all conformance tests to pass. To illustrate with a screen shot:

The error when parsing the :foo.com test case is a SIGABRT due to a failed assertion:
constexpr T* tl::expected<T, E>::operator->() [with T = ada::url; E = ada::errors]: Assertion `has_value()' failed.

Additional information
No response

Hi @0xg0nz0,
We already run all tests on "urltestdata.json". Please look at to the implementation at: https://github.com/ada-url/ada/blob/main/tests/wpt_tests.cpp#L48.
I don't know how you run the web-platform tests, but if you think there is a bug with out web-platform tests runner, we are more than happy to fix it.
PS: Node.js uses Ada and has a built-in up-to date WPT runner, which doesn't have any issues at the moment.

You can also find the WPT fixtures at https://github.com/ada-url/ada/tree/main/tests/wpt

Here's the stable node.js web-platform tests results: https://wpt.fyi/results/url?label=master&label=stable&product=node.js&aligned

Thanks @anonrig, I will see if I can figure out what's different about my test runner -- all it's doing is downloading urltestdata.json and parsing each input URL.

No worries. If there is a specific bug in Ada, please feel free to open a new issue and I'll fix it asap.

My hunch is it's something in the JSON parser I am using, maybe it's passing an incorrectly-translated string for "\t   :foo.com   \n" -- seems plausible, I will see if I can get to the bottom of it.

@anonrig I figured it out by reading your test case, problem very much between keyboard and chair, the test case was not properly handling base URL and so any test that depended on a well-formed base were failing. Thanks for making ada-url!


Updated pnap machine driver version to 0.4.0

testing completed, ready for review.
Issue: https://github.com/rancher/rancher/issues/37964

@pajuga , is this ready for review? If so, please update the description as it states that additional testing is required.
Also, please confirm no UI changes are needed to support the jump from 0.1.0 to 0.4.0.

@pajuga , is this ready for review? If so, please update the description as it states that additional testing is required.
Also, please confirm no UI changes are needed to support the jump from 0.1.0 to 0.4.0.

Confirmed, this is ready for review.


Seems like --skip and --vendor aren't working

Working on a project which has a vendored file with lint errors. No combination of --skip, --vendor allows me to ignore these. The only solution is to use --exclude:
$ gometalinter --vendor --skip=vendor/ --disable-all --enable unconvert ./...
vendor/github.com/rkt/rkt/networking/netinfo/netinfo.go:51:13:warning: Openat not declared by package syscall (unconvert)
$  gometalinter --vendor --skip=vendor --exclude "vendor" --disable-all --enable unconvert ./...
$ # no output

Did you fix this, @dadgar? I'm also having this issue.

@andrestc I closed since the reported issue was due to a real compile error but this may still be a real issue. You may want to open up an issue describing what you are seeing.


use key events instead of typing out a single character to do something in run mode

#6 merged, closing


API Commands problem

testing example  api Commands not working ?
/ip/firewall/address-list/add\n=list=2vpn\n=address=<IP_ADDRESS>/24\n=comment=rutracker.org.
or
/system/backup\n=save\n=dont-encrypt=yes

1 - fixed in 1.0.4
2 - Use /system/backup/save


MDD/Hesperomys comparison: Eulipotyphla

Following #22, #23, #26, #27, this installment covers the insectivores. This was rather simpler than I expected, probably because I recently went over the HMW volume for insectivores. Still, there are some disagreements that merit further discussion.
Eulipotyphla
Straightforward accepted changes

New mergers

Crocidura zaitsevi -> C. kegoensis
Crocidura batesi -> C. poensis
Crocidura negligens -> C. malayana
Sorex bairdi -> S. pacificus
Sorex neomexicanus -> S. monticolus
Sorex averini -> S. araneus
Sorex cristobalensis -> S. salvini

New splits

Crocidura tadae < C. rapax
Nectogale sikhimensis < N. elegans
Sorex gomphus, S. nepalensis, S. wardi < S. bedfordiae
Sorex kozlovi < S. thibetanus (I was following HMW but will defer to you)
Sorex obscurus < S. monticolus
Euroscaptor ngoclinhensis < E. parvidens
Mogera hainana < M. insularis

New species

Chodsigoa dabieshanensis
Uropsilus dabieshanensis

Recently extinct species

Nesophontes 6 spp.
Solenodon arredondoi and S. marcanoi

Spelling changes

Crocidura magnimana -> C. magnimanus (original description explicitly says it's an adjective)
Sorex camtschatica -> S. camtschaticus
Scaptonyx fusicaudus -> S. fusicauda

Articles not yet seen:

Crocidura huangshanensis description should be at https://www.zootax.com.cn/CN/article/downloadArticleFile.do?attachType=PDF&id=259 but site is down, wait a bit and retry (also https://www.cnki.com.cn/Article/CJFDTotal-DWFL202001001.htm)
Mogera hainana https://bioone.org/journals/mammal-study/volume-47/issue-1/ms2021-0008/New-Mitogenome-of-the-Hainan-Mole-Mogera-hainana-and-Taxonomic/10.3106/ms2021-0008.short

Eulipotyphla vs. Lipotyphla (+)
I haven't systematically looked for discrepancies in classification above the genus level, but noticed here that MDD has Eulipotyphla while I have Lipotyphla. I like Lipotyphla better because it is shorter and Asher & Helgen (2010) supported it, but Eulipotyphla seems to be the current consensus so I'll switch. Interestingly, a lot of the Russian literature uses Lipotyphla instead.
Ref: Asher, R.J. and Helgen, K.M. 2010. Nomenclature and placental mammal phylogeny. BMC Evolutionary Biology 10(102):1-9. doi:10.1186/1471-2148-10-102
Erinaceidae
Echinosorex gymnura vs. gymnurus (-)
MDD has gymnurus, I have gymnura, which is the traditional form.
The original combination was Viverra gymnura. If you interpret that as an adjective, then it should indeed be gymnurus in combination with masculine Echinosorex, but interpreting it as a noun in apposition would allow to preserve the prevailing spelling. However, Raffles writes gymnura in lowercase, which in his work is usually an indication that the specific name is an adjective.
AI: Confirm
Otohylomys megalotis (-!)
MDD places Hylomys megalotis in Hylomys without comments, I place it in the separate genus Otohylomys.
This was named by Bannikova et al. (2014) on the basis of solid molecular evidence.
Ref: Bannikova, A.A., Лебедев, В.С., Абрамов, А.В. and Рожнов, В.В. 2014-06-04. Contrasting evolutionary history of hedgehogs and gymnures (Mammalia: Erinaceomorpha) as inferred from a multigene study. Biological Journal of the Linnean Society 112(3):499-519. doi:10.1111/bij.12299
Nesophontidae
Nesophontes paramicrus (+)
MDD recognizes Nesophontes paramicrus, I have it as a synonym of N. micrus.
Patterson (1962) and Rzebik-Kowalska & Wołoszyn (2012) suggested this synonymy, but it doesn't seem supported in the recent literature. I will accept the species.
Ref:

Patterson, B. 1962. An extinct solenodontid insectivore from Hispaniola. Breviora 165:1-11.
Rzebik-Kowalska, B. and Wołoszyn, B.W. 2012. New data on Nesophontes subfossil populations from Cuba and Isla de la Juventud (Cuba). Neues Jahrbuch für Geologie und Paläontologie. Abhandlungen 263(2):155-166. doi:10.1127/0077-7749/2012/0220

Soricidae
Crocidura anselli vs. ansellorum, greenwoodi vs. greenwoodae (-)
Another two cases like Pteropus giliardi.
Crocidura dongyangjiangensis and C. huangshanensis (+)
I missed these two new species that have since been synonymized under dongyangjiangensis.
You have the year of description as 2020. I can't read Chinese but I'm pretty sure the second-to-last paragraph of the paper synonymizing them is saying dongyangjiangensis was published on 2019-12-26 and huangshanensis on 2020-01-15. I can't confirm these dates (the API I use for DOI dates apparently doesn't cover the Chinese ones), and at least the description of dongyangjiangensis doesn't have an LSID, so the print publication date is what matters, not the online one.
Crocidura tarfayaensis vs. tarfayensis (-)
MDD has tarfayensis, I have tarfayaensis.
My spelling is the original (I recently found the original description online and can share it if you like).
Both spellings occur in the recent literature, so I don't see any reason not to use the original spelling. The alternative spelling tarfayensis apparently goes back to Honacki et al. (1982).
AI: Confirm and publish
Chimarrogale vs. Crossogale (-)
MDD has Crossogale as a separate genus, I have it within Chimarrogale.
I also added this genus when I saw Abramov et al. (2017), but HMW (vol. 8, p. 336) refused to recognize the genus, saying it was "rushed". Looking back at Abramov et al. (2017) I don't think the evidence for this revision is very strong. They only have cytb data for C. phaeura (=Crossogale), but the combined genus Chimarrogale appears to be monophyletic. So I think HMW's decision is right here.
Episoriculus vs. Pseudosoriculus (-)
This is a similar case, where MDD recognizes the newly named genus Pseudosoriculus (split from Episoriculus), but I don't because I was following HMW.
However, the evidence for this one is much stronger than for Crossogale. There is data from three different genes showing Pseudosoriculus fumidus is phylogenetically distant from the rest of Episoriculus. I'll wait for your reply on both of these cases but I'm inclined to accept the genus as valid.
Sorex monticolus vs. S. monticola (-)
MDD has monticola (with comments saying it is a noun in apposition), I have monticolus.
If the original spelling was monticola I'd agree with you, but the original spelling is in fact monticolus. Woodman (2018) argues that the original spelling was in error and notes that Merriam later corrected it to monticola. However, such an emendation is justified only if it's in prevailing usage, and I don't think this one qualifies (e.g. Google Scholar has 39 hits for Sorex monticola and 912 for Sorex monticolus).
Suncus varilla vs. S. varillus (-)
MDD has varillus, I have varilla.
This was originally named in combination with Crocidura (feminine) but is now in Suncus (masculine).
This word doesn't appear in Latin dictionaries I have checked, but it sounds like an adjective to me (cf. the -illus suffix). However, since there is uncertainty it might be better to stick with the original spelling.
AI: Confirm

Eulipotyphla vs. Lipotyphla (+) – Eulipotyphla has become the primarily used name for the group in most settings at this point, but much of the current literature is heavily influenced by our decision to use Eulipotyphla and the MDD and in the HMW series. This is what we put about ordinal names on the MDD’s about page, which highlights that Lipotyphla has been applied do various different inclusive definitions of different insectivore groups whereas Eulipotyphla is the first to apply to the modern interpretation of the order according to Woodman 2018: ‘Higher-level taxonomy.— Regarding higher-level taxonomy (i.e., all ranks above the species level), the MDD maintains an updated listing of all taxonomic ranks traditionally used below the order level as well as major superordinal clades. However, higher-level taxa do not yet have individual webpages, so this information is not yet fully transparent. For future updates, we intend to include individual taxonomic pages for each higher-level taxon in a similar format as the species-level pages. Ordinal names generally follow the arrangement presented in MSW3 with updates based on recent phylogenetic studies, resulting in Soricomorpha + Erinaceomorpha as Eulipotyphla, and Cetacea + Artiodactyla as a united Artiodactyla. The name Artiodactyla is preferred over the name Cetartiodactyla following the recommendation of Asher and Helgen (2010), which recalled the principles of Simpson (1945) to balance prevailing usage with priority in naming higher taxa. Asher and Helgen (2010) also recommended using Lipotyphla over Eulipotyphla, but confusion around the association of Lipotyphla with past definitions of the paraphyletic Insectivora assemblage (Woodman 2018) has prompted the MDD to favor Eulipotyphla as the first name used for the current definition of the order.’
Echinosorex gymnura vs. gymnurus (-) – given that Raffles name was lowercase, I think that retaining the name as an adjective would be more plausible. However, I’ll side with Hesperomys in this case and change the name to gymnura.
Otohylomys megalotis (-!) – I definitely appear to have just completely missed this (HMW doesn’t seem to have recognized it and I haven’t checked the reason why…), I’ll go ahead and make the move from Hylomys to Otohylomys: Bannikova, A.A., Лебедев, В.С., Абрамов, А.В. and Рожнов, В.В. 2014-06-04. Contrasting evolutionary history of hedgehogs and gymnures (Mammalia: Erinaceomorpha) as inferred from a multigene study. Biological Journal of the Linnean Society 112(3):499-519. doi:10.1111/bij.12299
Crocidura anselli vs. ansellorum, greenwoodi vs. greenwoodae (-) – leaving it for now like the other ones, but we’ll have some further discussion on this.
Crocidura dongyangjiangensis and C. huangshanensis (+) – I’ll look into changing dongyangjiangensis from 2020 to 2019, but this might be a hard one to interpret.
Crocidura tarfayaensis vs. tarfayensis (-) – I’ll change the spelling to match Hesperomys on the MDD.
Chimarrogale vs. Crossogale (-) – I think I’ll go ahead and remove Crossogale again (I’ve gone back and forth about this one). I don’t agree with recognizing it either (Kai He and I made the decision not to include it in the HMW volume), but I had added it back after to the MDD for some reason.
Episoriculus vs. Pseudosoriculus (-) – I don’t think the HMW recognized it because we hadn’t seen the publication and we would have recognized it if we had seen the publication (either that or Kai He didn’t want to recognize it because he didn’t want to accept work from those authors). I strongly support recognizing Pseudosoriculus as a genus given the evidence.
Sorex monticolus vs. S. monticola (-) – I’m leaving this one for now because of just how many times I’ve gone back and forth about it, but I’ll clarify the comments about following Woodman 2018 on the spelling. I’m sure you’re probably right about this, but this one needs to be discussed further because it seems like nobody can decide which interpretation is correct.
Suncus varilla vs. S. varillus (-) – I’ll change the spelling to varilla following Hesperomys, I don’t really know why I even have varillus.

Thanks! A few responses:

Episoriculus vs. Pseudosoriculus (-) – I don’t think the HMW recognized it because we hadn’t seen the publication and we would have recognized it if we had seen the publication (either that or Kai He didn’t want to recognize it because he didn’t want to accept work from those authors). I strongly support recognizing Pseudosoriculus as a genus given the evidence.

The HMW account does explicitly mention the name. I'll put it back as a genus.

Sorex monticolus vs. S. monticola (-) – I’m leaving this one for now because of just how many times I’ve gone back and forth about it, but I’ll clarify the comments about following Woodman 2018 on the spelling. I’m sure you’re probably right about this, but this one needs to be discussed further because it seems like nobody can decide which interpretation is correct.

Understandable, we'll have to follow up on this.

Suncus varilla vs. S. varillus (-) – I’ll change the spelling to varilla following Hesperomys, I don’t really know why I even have varillus.

Sorry I actually switched the names here, I have varillus and you have varilla. The original name is Crocidura varilla.

I'll still use the Hesperomys spelling for Suncus varillus, I didn't even check what we had, so that's also my bad for doing so poorly!

This is interesting. I'm going to send this information off to the ASM Nomenclature Committee to make sure I'm interpreting this correctly.

Yes, we're probably going to need someone who reads Chinese to make sure.


Improve TweaksConfigurationViewController presentation logic

Follow-up on #29 cc @federicocappelli

[x] Showcase presentation styles in demo app
[x] Update README

LGTM ;)


AutoMix tutorial for ImageNet

Hi,i run AutoMix use Cifar100 dateset,but the image is low pixel.So i want to use ImageNet,i would appreciate it if you provide some help!

Hi @774911840, thanks for your attention and appreciation of our AutoMix. We have provided training configs of AutoMix on ImageNet, and you can train ResNet variants by CUDA_VISIBLE_DEVICES=0,1,2,3 bash tools/dist_train.sh ${CONFIG_FILE} 4.
For example, AutoMix with ResNet-18: CUDA_VISIBLE_DEVICES=0,1,2,3 bash tools/dist_train.sh configs/classification/imagenet/automix/basic/r18_l2_a2_near_lam_cat_mb_mlr1e_3_bb_mlr0.py 4. Visualization of mixed samples will be saved in the relevant work_dirs. You can modify max_epochs for longer training time. Feel to ask me if you have more questions.

Currently, we are busy working on other projections, thus, it might take a bit long time for us to collect pre-trained models, logs, and visualization results on ImageNet. You can refer to mixed samples of AutoMix provided on Places205, iNat2017, and iNat2018 @774911840. Please watch us for the latest update of OpenMixup.

Thanks for answer,i know your means.Actually i am confused of openmixup/data structure for imagenet.
I paster dataset config configs/classification/_base_/datasets/imagenet/basic_sz224_4xbs64.py down here.

Hi @774911840, I have viewed your questions above and here are my replies:

For the training set of ImageNet, the folders for different categories need to be unzipped and be placed under data/ImageNet/train.
For the validation one, all the images should be placed under data/ImageNet/val.
The corresponding meta files ought to be put under data/meta.

Notice that the detailed guidelines for data preparation are given in tutorial. Please refer to it for more information.

Hi @Jacky1128 ,thanks for your answer,i also want know if this method could use in semantic segmentation?

Hi, @774911840. Unfortunately, AutoMix only supports classification tasks because it requires a mixup classification loss (e.g., mixup with CE loss or BCE loss) to train the mixed sample generation process in the MixBlock. You can try to transfer it to downstream tasks like objection detection and semantic segmentation. For example, a simple way is first to adopt a multi-label classification loss with mixup to pre-train a MixBlock in AutoMix or SAMix, and then generate augmented images (with instance-level objects) by the given labels to perform segmentation. Moreover, mixup augmentations in OpenMixup also support classification tasks only. To the best of my knowledge, Mixup and CutMix are the only two mixup techniques adopted in object detection and segmentation (e.g., in Yolo.V4).

Thanks again for using our framework. I will close this issue if there is no more question. If you have more questions, you can reopen it or start a new issue.


Many labels/tabs become buttons, resulting in UI/aesthetic issues

Foundry: 11.315
PF2e Dorako UI: 3.4.10
PF2e Dorako UX: 1.3.6
In many places in the default theme, clickable lables more or less represent tabs, such as here in the NPC character sheet:

However, Dorako UI globally turns these into buttons, which can look off depending on the page, and the button's borders often conflicts with neighboring elements, or the spacing between buttons may look odd, particularly in places where the visual intent was for 'tabs' not 'buttons'. At best it may look 'too busy' or 'off', and at worst, you'll have clipping or a less than ideal look.
Examples:

You can see here that it hits 3rd party modules particularly hard:

Admittedly, this screen in particular looks just fine as buttons:

Proposal
Let these areas return to being labels, or perhaps a new style to represent 'tabs'. At the very least, it would be nice to have an option to keep Dorako UI minus the button style.

The reason it's like this is because it allows for standardisation across multiple themes. If I don't touch the labels at all, you end up with unreadable text on themes with darker backgrounds etc.
By restyling them as buttons, I'm sure they're legible, since the buttons are designed to fit with the theme, and are legible on the background provided by the theme.
If you're only using one specific theme, you can use custom CSS to make a localized change in the nav tabs scope to restyle the --button series of variables (check the Wiki) to suit your preferences.

Thanks for the quick response!
In trying to fit with the theme, it introduces quite a few inconsistencies, no? I'm aware I could style it back, but some of those examples above were kinda jarring and didn't seem intentional so figured I'd at least bring it to your attention.

It's a compromise, but it's what allows almost everything to be compatible with ~5-10 significantly different themes out of the box, with me only rarely having to add styling specifically for modules that I've never used or heard about.
As for the margins in the system item sheet, I've added some padding to avoid clipping.


Why is unlinking forbidden?

I am writing a plugin that will go with a specific theme I'm working on, and it's basically a plugin which adds header/footer etc. layouts to preexisting ones in theme options.
On plugin activation I copy the file(s) from the plugin layouts folder into theme layouts folder, so that the theme can recognize it and use it.
This works, and no errors are reported from the phpcs. File is uploaded on plugin activation.
But I'd also like to remove that file from the theme if you disable the plugin, so I used unlink() function and I see an error

Filesystem writes are forbidden, you should not be using unlink()

Can anybody explain why is that? Thanks.

This is coming from WordPress.VIP.FileSystemWritesDisallow because filesystem writes are not allowed in the VIP environment. If you aren't specifically developing with WordPress.com VIP in mind, then you can disable/ignore this. That said, in general it is good practice to use $wp_filesystem when working with the filesystem, since it will handle any permission issues. It isn't be best fit for every scenario, however.

WordPress standard includes WordPress-Core, WordPress-Extras, and WordPress-VIP.

Oh and you might be able to achieve the same without copying the file(s) by using one of the template hook ins: https://developer.wordpress.org/?s=template&post_type[]=wp-parser-hook

@GaryJones Oh this explains why all the sniffs are included :D
@jrfnl I'd need to modify the theme a bit for it to work. But I'll look into that as well, thanks for the advice :)


Moving dot out of brackets as this will generate a syntax error

@AyoOlubeko : Thanks for your contribution! The author, @giladmit, has been notified to review your proposed change.

@AyoOlubeko : Thanks for your contribution! The author, @giladmit, has been notified to review your proposed change.

@AyoOlubeko  I think you misunderstand the documentation.  The schema is optional, and so the dot needs to be inside the brackets.  Please close this PR.


Revert "Added Kaleido for exporting static images"

Reverts plotly/plotly-graphing-library-for-matlab#301
My files aren't uploaded to git...

Let me add them again in a new branch and delete close this PR.


Mouse highlighting is barely visible

I am using the mocha flavours on both alacritty and zellij. There is no visibility issue with alacritty alone.
However, with zellij, highlighting text to copy is barely visible as shown below ("yaml" is highlighted):

Is the last yaml highlighted? I would have thought you highlighted test- to be honest. Maybe @jaeheonji can help out here.

test-yaml was originally highlighted by some other script. I just used yaml as an example as it's difficult to see highlighted text with the normal dark background.

@Sinderella Sorry for the late reply because I double-checked the zellij code.

Edit: Actually, with normal background, the highlighted would be the same colour so I cannot see the difference.

Yes, I missed one fact. In zellij, the bg color is currently used for only mouse selection.
In order to prevent overlapping of the background color of the terminal and the selection color of zelij, it would be better to change the color 'bg'.
I will make a fix ASAP


server use SecureSeed port on 1.19.X what to do? 64 bits to 1024

https://www.curseforge.com/minecraft/mc-mods/secureseed
https://github.com/Earthcomputer/SecureSeed

give up


Epic Game Launcher error "Assertion failed"

From time to time when I run Epic games launcher (added from NSL) in game mode, I got following error:

The only way is to switch back to desktop mode then back to game mode and run the launcher again. But it is annoying and start to happen almost every time.
For Compatiblity, I am runing the launcher using GE-Proton9-13

@ralmoued have you tried reinstalling epic?

Not really. Should I do it? Should I do it by running"nonSteamLauncher.desktop" and select Epic games? that is all?
Will I lose my installed games from Epic launcher?
Does it matte what Proton version to select?
I made search about this error and found some result, but I am not sure about them, like:  Install DXVK and Vulkan and Wine dependencies are installed.

@ralmoued try reinstalling firet. It won't effect anything whether you use the plugin or desktop version. Don't Uninstall it though, just reinstall. NSL will automatically install the latest proton GE then steam will need to be restarted to select ge proton 15 see if that fixes it first.

OK I did it, but it didn't solve the issue.  now I think I know how to reproduce the issue.. simply once I open any Nintendo switch via emulator Ryujinx then close it and open Epic launcher, then I will get that error. reboot the steam deck will not help, only switch to desk mode and the to game mode helps

@ralmoued dang that's weird :/ it kind of sounds like an environment variable issue that's being set for the deck... will need to investigate further!

Who should investigate you or me?

@ralmoued both of us, I don't have emudeck or anything lies that installed so I have to install and see why it's doing that.

I had this issues, tried running the nonSteamLaunchers script and reinstall epic, and now both epic, gog and their games stopped working. uninstall/reinstall doesn't do anything. Resintalling ProtonGE also doesn't do anything

@GreatWiz i think its an environment issue, as i cant replicate that error on my deck

Any pointers as to what to check? I can check, and let you know

Ok it seems like the hardlink points to .../compatdata/4206469918' while the actual dir is .../3838887677I've tried manually updating the hardlink, but something resets it back to the non existing4206469918` dir
any pointers as to what I should look at next?

@GreatWiz it's the scanner doing that, press stop scanner and you should then be able to change it. The coding isn't that great when it comes to symlinking and I still have yet to fix it.

yea I did stop and restart the scanner. it didn't help. only renaming the dir to the name the scanner decided worked. I guess the scanner has cached variable that doesn't refresh?

Same issue in my deck. I try to unnistall and to update to test version, but no way.
In desktop mode is working fine.

@dontsnm did you try my solution? changing the folder name to the one specified by the hardlink? Or is it a different issue

Ok it seems like the hardlink points to .../compatdata/4206469918 while the actual dir is .../3838887677 I've tried manually updating the hardlink, but something resets it back to the non existing<PHONE_NUMBER> dir changing the name of the dir to<PHONE_NUMBER> seens to have fixed this. Anything I can do to help you resolve this?

@dontsnm did you try my solution? changing the folder name to the one specified by the hardlink? Or is it a different issue

My system doesn't have<PHONE_NUMBER> or<PHONE_NUMBER> folders. I'm using "separate folder" option. It runs from EpicGamesLauncher folder.
If I run the Epic Store from desktop, it runs fine, and when I return to game mode, runs fine too. But if I reboot my deck, the issue returns.

OK I did it, but it didn't solve the issue. now I think I know how to reproduce the issue.. simply once I open any Nintendo switch via emulator Ryujinx then close it and open Epic launcher, then I will get that error. reboot the steam deck will not help, only switch to desk mode and the to game mode helps

OK, it seems I am mistaken, it is not related to Ryujinx emulator. I am still unable to replaicate the pattern of that error 100% accurate but... It starts to happened often, like if rebooting the device to let the scanner adding installed game from the launcher to game mode.. And always just switching to desktop mode then back to game mode will let me able to login to epic game launcher untill next time rebooting

@ralmoued @dontsnm @GreatWiz  nvidia_drm.modeset=1 kernel parameter or maybe -dx12 command in steam

@moraroy I didn't get it!! what should we do with these parameters?

@ralmoued try putting -dx12 in the launch options of epic

This is the Lunch option:

how it should be set the command?

Hi @moraroy,
This is the Lunch option:

how it should be set the command?

Hi @moraroy,
This is the Lunch option:

how it should be set the command?

@ralmoued @dontsnm @GreatWiz nvidia_drm.modeset=1 kernel parameter or maybe -dx12 command in steam

This is not working. Same error.

Seems to be fixed in SteamOS 3.6.19


bad error message when scanning 2ms git for non-git dir

currently showing this:
C:\Users\...\Downloads\windows-amd64>2ms git .
Error: CreateFile ./.git: The system cannot find the file specified.
Usage:
  2ms git <CLONED_REPO> [flags]
...

I suggest the following
Error - The path provided is not a git repository. Please make sure the root path of the provided directory contains .git subdirectory

I'd like to take this one :)


Pillow can't install on Mezzanine with Python 3.5

Got some trouble running the installation of Mezzanine with Python 3.5 on my virtual environment (12.0.2). Here's some tracebacks from the installation process:
Pillow:
Running setup.py install for pillow     Traceback (most recent call last):       File "<string>", line 1, in <module>       File "/var/folders/3g/br3ztr3d69g12z5vw4tfqj3w0000gq/T/pip-build-613inq8u/pillow/setup.py", line 767, in <module>         zip_safe=not debug_build(),       File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/core.py", line 148, in setup         dist.run_commands()       File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/dist.py", line 955, in run_commands         self.run_command(cmd)       File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/dist.py", line 974, in run_command         cmd_obj.run()       File "/Users/zruu/Django/lib/python3.5/site-packages/setuptools/command/install.py", line 61, in run         return orig.install.run(self)       File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/command/install.py", line 539, in run         self.run_command('build')       File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/cmd.py", line 313, in run_command         self.distribution.run_command(command)       File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/dist.py", line 974, in run_command         cmd_obj.run()       File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/command/build.py", line 135, in run         self.run_command(cmd_name)       File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/cmd.py", line 313, in run_command         self.distribution.run_command(command)       File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/dist.py", line 974, in run_command         cmd_obj.run()       File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/command/build_ext.py", line 338, in run         self.build_extensions()       File "/var/folders/3g/br3ztr3d69g12z5vw4tfqj3w0000gq/T/pip-build-613inq8u/pillow/setup.py", line 515, in build_extensions         % (f, f))     ValueError: --enable-jpeg requested but jpeg not found, aborting. Complete output from command /Users/zruu/Django/bin/python3.5 -c "import setuptools, tokenize;__file__='/var/folders/3g/br3ztr3d69g12z5vw4tfqj3w0000gq/T/pip-build-613inq8u/pillow/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /var/folders/3g/br3ztr3d69g12z5vw4tfqj3w0000gq/T/pip-swcv4f73-record/install-record.txt --single-version-externally-managed --compile --install-headers /Users/zruu/Django/bin/../include/site/python3.5:
More Pillow traceback:
`running build_ext
Traceback (most recent call last):

  File "<string>", line 1, in <module>

  File "/var/folders/3g/br3ztr3d69g12z5vw4tfqj3w0000gq/T/pip-build-613inq8u/pillow/setup.py", line 767, in <module>

    zip_safe=not debug_build(),

  File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/core.py", line 148, in setup

    dist.run_commands()

  File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/dist.py", line 955, in run_commands

    self.run_command(cmd)

  File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/dist.py", line 974, in run_command

    cmd_obj.run()

  File "/Users/zruu/Django/lib/python3.5/site-packages/setuptools/command/install.py", line 61, in run

    return orig.install.run(self)

  File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/command/install.py", line 539, in run

    self.run_command('build')

  File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/cmd.py", line 313, in run_command

    self.distribution.run_command(command)

  File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/dist.py", line 974, in run_command

    cmd_obj.run()

  File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/command/build.py", line 135, in run

    self.run_command(cmd_name)

  File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/cmd.py", line 313, in run_command

    self.distribution.run_command(command)

  File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/dist.py", line 974, in run_command

    cmd_obj.run()

  File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/command/build_ext.py", line 338, in run

    self.build_extensions()

  File "/var/folders/3g/br3ztr3d69g12z5vw4tfqj3w0000gq/T/pip-build-613inq8u/pillow/setup.py", line 515, in build_extensions

    % (f, f))

ValueError: --enable-jpeg requested but jpeg not found, aborting.

----------------------------------------
Command "/Users/zruu/Django/bin/python3.5 -c "import setuptools, tokenize;__file__='/var/folders/3g/br3ztr3d69g12z5vw4tfqj3w0000gq/T/pip-build-613inq8u/pillow/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /var/folders/3g/br3ztr3d69g12z5vw4tfqj3w0000gq/T/pip-swcv4f73-record/install-record.txt --single-version-externally-managed --compile --install-headers /Users/zruu/Django/bin/../include/site/python3.5" failed with error code 1 in /var/folders/3g/br3ztr3d69g12z5vw4tfqj3w0000gq/T/pip-build-613inq8u/pillow`

I don't think this is a 3.5-specific issue, but I wonder if you have libjpeg-dev and python-imaging installed.


asan issues with memcp, use strncmp instead?

I was just testing out chibicc on a mac with
clang -g \
  -fsanitize=address \
  -fsanitize=undefined \
  -Wno-switch -Wno-format *.c && \
./a.out -I<dummy-headers-include-path> *.c -S

and the address sanitizer complains about this line:
https://github.com/rui314/chibicc/blob/90d1f7f199cc55b13c7fdb5839d1409806633fdb/tokenize.c#L80
I'm guessing that this is probably because tok->len can sometimes be longer than the string stored in op, so memcmp can sometimes access memory out of bounds.
Using strncmp here instead of memcmp seems to fix the issue.
I would open a pull request, but I read your README, and figured you probably want to make the change yourself :p
On the other hand, I don't think this would ever actually be an issue at runtime, so if you don't think this issue is worth the hassle of rebasing, please feel free to just close and ignore this issue :)
best,

Thank you for pointing that out. I think we should use strncmp as you mentioned. I'll keep this bug open until I make a fix to my local repo. Thanks!


Missing command - dependency update

I've started using helmfile, and after a couple of days of use, I am missing a way to do helm dependency update. Should it be a part of helmfile? And included in sync

@xeor Sounds reasonable!
But out of curiosity, would you mind sharing me how do you separate uses between helm and helmfile when you are able to use the helm's umbrella chart pattern like you do?
Can't you just transform your helmfile into a single umbrella helm chart so that perhaps you can just use helm status against it?

This was only for my personal charts.. The umbrella is not that big, but I got multiple "umbrellacharts".
I don't really like to put all the variables inside the helmfile. The helmfile for me is more or less a collection of charts. If it's an upstream chart, and it got just a couple of values to change. I might put the values in the helmfile. Otherwise, I like not to..

@xeor Thanks for the clarification!
I've iterated on your explanation and my current/possible use-cases of helmfile.
And now I believe your use-case is ABSOLUTELY valid!
Would it be good for you if helmfile sync just runs helm dependency update before updating the releases? Would there be any bad side-effect of doing so?

cc/ @sstarcher Would you also be happy with this change?

@xeor FWIW, I also believe a small enhancement to helmfile like #28(which would also support #49) would allow helmfile to support what we can't easily do with umbrella charts. Appreciate your comments on those two issues, too!

If you wanted to include it I don't think you would want it part of sync and it should only be run in charts with local file paths.
In the grand scheme of things using local charts that are not versioned is a bad practice, but I'm not going to stop you :)
If you go this route with adding a command that works against local charts are we going to end up adding support for every helm command that runs against local charts?

@sstarcher Thx for the response!
How about just improving helmfile sync to also run helm dep update when the release's chart: references a local chart?
I'm curious about the usefulness of only running dep update or even repo update(already implemented as helmfile repos but I have never got to use that myself) through helmfile.

@xeor Would you mind giving this a test run?

I just run into this accidentally, when my helmfile sync failed. I see two problems with this feature:

helm dependency update fails if the chart has no requirements.yaml
Doing this implicitly as part of the sync command breaks the declarative nature of Helmfile and umbrella charts for me. I want to control the requirements.lock and decide when I update the charts I use. I think this is bad surprise from what people expect from the “sync” command because it should just apply the local state to the cluster, not change the local state. If you run Helmfile in CI, like I do, the changed requirements.lock files won't even be saved.

Could't you just run charts then?

Yeah, I actually just realized charts is probably better for me. Although I still think it would be sensible to have separate commands, like sync and update.


Add cleanup manifest for existing CNO

What this PR does / why we need it:
When using Calico and upgrading from 4.10 to 4.11 where the CNO runs in
the control plane, we need to make sure we remove the in-cluster CNO
deployment and RBAC.
Checklist

[x] Subject and description added to both, commit and PR.

/lgtm
/approve


Limit the amount of text shown on each note item in the home screen

At the moment, each note item displays the entire note which is not meant to be so, we should provide some sort of clipping like the way Google keep or one note does theirs

It's not showing the entire note it has been done. @logickoder


Add Default implementation for WeakDom

Title basically explains everything. Aside from the fact that it is good practise, Default is required e.g. when using #[serde(skip)] attribute.

Can you add an entry to the changelog for rbx_dom_weak for this? Thanks!

Sure, added!


[1|HR - Setting Page] Breadboard

Sion Kim and Khoa Vo

Hi there, could you please change the package.json: ["analyze": "ANALYZE=true npm build",] => ["analyze": "ANALYZE=true npm run build",]


feat: add CSS scroll snap in split view mode

This PR adds CSS scroll snapping to panes when scrolling horizontally in split view mode.

@niutech thanks for the pull request!


WASM_MODULE binding missing in Module Worker

🐛 Bug report

Describe the bug
When a Module Worker includes a WebAssembly asset, the fetch handler env argument does not include the WASM_MODULE asset.
Consequence: it is not possible (unless I'm mistaken) to use WebAssembly with Module Workers.
Reproduce the bug

Clone https://github.com/jacobmarble/cloudflare-workers-wasm-argon2-example/
npm install
start Docker
RUST_LOG=debug npx wrangler dev
confirm successful webpack+emscripten+wrangler build
confirm Listening on http://<IP_ADDRESS>:8787

With debug logging enabled, notice these important log lines:
[2022-01-12T05:54:53Z INFO  wrangler::upload::form::project_assets] index.mjs matched by these globs ["**/*.mjs"] => ESModule
[2022-01-12T05:54:53Z INFO  wrangler::upload::form::project_assets] wasm-module.wasm matched by these globs ["**/*.wasm"] => CompiledWasm
[2022-01-12T06:00:11Z INFO  wrangler::upload::form::modules_worker] building form
[2022-01-12T06:00:11Z INFO  wrangler::upload::form::modules_worker] Form {
        boundary: "5f7b7ba92602127f-efb29f8c3e0111ed-7daae01130e080c2-67a595f5be03b185",
        parts: [
            (
                "metadata",
                Part {
                    value: Body {
                        kind: b"{\"bindings\":[],\"compatibility_date\":\"2022-01-01\",\"main_module\":\"./index.mjs\",\"migrations\":null,\"usage_model\":null}",
                    },
                    mime: Some(
                        "application/json",
                    ),
                    file_name: Some(
                        "metadata.json",
                    ),
                    headers: {},
                },
            ),
            (
                "./wasm-module.wasm",
                Part {
                    value: Body {
                        kind: Reader {
                            length: Unknown,
                        },
                    },
                    mime: Some(
                        "application/wasm",
                    ),
                    file_name: Some(
                        "./wasm-module.wasm",
                    ),
                    headers: {},
                },
            ),
            (
                "./index.mjs",
                Part {
                    value: Body {
                        kind: Reader {
                            length: Unknown,
                        },
                    },
                    mime: Some(
                        "application/javascript+module",
                    ),
                    file_name: Some(
                        "./index.mjs",
                    ),
                    headers: {},
                },
            ),
            (
                "wrangler-session-config",
                Part {
                    value: Body {
                        kind: b"{\"workers_dev\":true}",
                    },
                    mime: Some(
                        "application/json",
                    ),
                    file_name: Some(
                        "",
                    ),
                    headers: {},
                },
            ),
        ],
    }

To me, the above indicates that file wasm-module.wasm was

built by emscripten
copied by webpack
discovered by Wrangler as application/wasm
uploaded by Wrangler, along with index.mjs

However, it seems strange that a bindings array is empty, when WebAssembly modules are supposed to be treated as bindings:
                "metadata",
                Part {
                    value: Body {
                        kind: b"{\"bindings\":[],\"compatibility_date\":\"2022-01-01\",\"main_module\":\"./index.mjs\",\"migrations\":null,\"usage_model\":null}",
                    },

Indeed, when I send a GET request to http://localhost:8787, the following appears in the wrangler dev logs, suggesting that the binding is missing from the fetch handler context (this part is easier for humans to parse without RUST_LOG=debug):
request:
cf :: [object Object]
signal :: [object Object]
<snip />
env:
context:
waitUntil :: function waitUntil() { [native code] }
passThroughOnException :: function passThroughOnException() { [native code] }
TypeError: Invalid URL string.
    at ./index.mjs:1588:20
    at argon2id (./index.mjs:22:94)
    at Object.fetch (./index.mjs:2483:82) at line 1587, col 18

Most of the above is emitted by my fetch handler, and it shows that the env argument is missing any "bindings". The bug shows itself as error "Invalid URL string" because env.WASM_MODULE is undefined.
Following this hunch about bindings, let's look at wrangler's service worker bindings generator, and compare that to the module worker bindings generator. Notice that ServiceWorkerAssets emits bindings for wasm modules, but ModulesAssets does not:
https://github.com/cloudflare/wrangler/blob/5e8ba9d51d33a79cfd6b160270f2b7c9adddf2ad/src/upload/form/project_assets.rs#L34-L60
https://github.com/cloudflare/wrangler/blob/5e8ba9d51d33a79cfd6b160270f2b7c9adddf2ad/src/upload/form/project_assets.rs#L352-L372
Expected behavior
I expect some way to access my WebAssembly module from my worker code.
Environment and versions
Fill out the following information about your environment.

operating system:

Darwin Svalbard.lan 21.1.0 Darwin Kernel Version 21.1.0: Wed Oct 13 17:33:24 PDT 2021; root:xnu-8019.41.5~1/RELEASE_ARM64_T8101 arm64

output of npx wrangler -V: wrangler 1.19.7
output of node -v: v16.13.1
content of wrangler.toml:

https://github.com/jacobmarble/cloudflare-workers-wasm-argon2-example/blob/bdafa64d7f57ecfbded70f85cbb00deb92a9e999/wrangler.toml#L1-L16

In module workers, the WebAssembly module is imported with Javascript's import keyword. After that, some glue is required in order to get the Emscripten Javascript to get along with CF Workers:
import createModule from './build/wasm-module.mjs'
import module from './build/wasm-module.wasm'

...

export async function f() {
  const wasmModule = await createModule({
    instantiateWasm(info, receiveInstance) {
      const instance = new WebAssembly.Instance(module, info)
      receiveInstance(instance)
      return instance.exports
    },
    locateFile(path, scriptDirectory) {
      // scriptDirectory is undefined, so this is a
      // no-op to avoid exception "TypeError: Invalid URL string."
      return path
    },
  })

  const cEncodedHash = wasmModule._malloc(1024)
  const result = wasmModule.ccall(
    'argon2id_hash_encoded',
    ...