Array map/filter fail with typed-array variables and functions

Godot version
v4.0.beta17.official [c40020513]
System information
KDE neon 22.04 (Ubuntu-derived)
Issue description
After beta.17, trying to assign the result of Array#map or Array#filter to typed-array variables, or returning their values as the result of typed-array functions fail.
The following sample code demonstrates the issue:
@tool
extends EditorScript

func test1() -> Array[int]:
	return range(5).map(func(n): return n) # → [0, 1, 2, 3, 4]

func test2() -> Array[int]:
	var result: Array[int] = range(10).filter(func(n): return n % 2 == 0) # → [0, 2, 4, 6, 8]
	return result

func _run() -> void:
	print(test1())
	print(test2())

Casting the returned values doesn't work either.
Steps to reproduce
Assign the result of Array#map or Array#filter to a variable whose type is a qualified typed-array.
Minimal reproduction project
N/A

func test2() -> Array[int]:
	var result: Array[int] = range(10).filter(func(n): return n % 2 == 0) # → [0, 2, 4, 6, 8]
	return result

The problem is that Array methods return a generic Array (Array[Variant]). For example Array[T].filter() returns an Array, not an Array[T].
For now, you can use Array.assign() method:
func test() -> Array[int]:
    var result: Array[int]
    result.assign(range(10).filter(func(n): return n % 2 == 0))
    return result

In the future, if #71336 is accepted, you will be able to do:
func test() -> Array[int]:
    return Array[int](range(10).filter(func(n): return n % 2 == 0))

And, just in case, you can range(0, 10, 2) instead of range(10).filter(func(n): return n % 2 == 0). But I think you know this, and this is just an example. :)

Ok, looking at it again, I've found this code snippet works as intended, no warnings or errors issued.
@tool
extends EditorScript

var some_var: Array[int] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

func test() -> Array[int]:
	return some_var.filter(func(n): return n >= 5)

func _run() -> void:
	print(test()) # → [5, 6, 7, 8, 9]

My guess is that the GDScript parser infers the filtered array type from some_var.
By the way, replacing the some_var init expression with range() crashes the editor when I run that script.

Array.filter preserves the typing, it returns an array typed the same as the original array. Hence:
var some_var: Array[int] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
var result: Array[int] = some_var.filter(func(n): return n >= 5)

works fine. The problem with:
var result: Array[int] = range(10).filter(func(n): return n % 2 == 0)

is that range currently returns an untyped Array and hence the types mismatch. #67025 should fix this.

Regarding Array.map: it returns an untyped Array, it doesn't preserve the typing of the original array. That's intended, as elements can be mapped to any type.
To potentially make map return a typed array based on the return type of the passed Callable, the Callable would need to provide a way to obtain its return type in the first place (currently it's not supported).

(By the way, replacing the some_var init expression with range() crashes the editor when I run that script.)

Example with no range involved:
@tool
extends EditorScript

var a: Array = []
var b: Array[int] = a # (1) res://path.gd:5 - Trying to assign an array of type "Array" to a variable of type "Array[int]".

func _run() -> void: # (0) Execute in editor.
	print(b) # (2) <null>
	print(b.size()) # (3) Crash.

@vnen @vonagam Is this expected? :thinking:

var a: Array = []
var b: Array[int] = a # error

Yes, a points to an untyped array. Cannot assign an untyped array to a typed array variable.

@vonagam Thanks. And sorry, I should have been more precise as I wasn't asking specifically about the reason of the error, I understand that part. I was rather asking about the nature of the error / post-error behavior. Like e.g. if it should be a fatal error disallowing further execution (and thus potential crash because of the <null> value), or maybe if it should just error and assign an empty array instead?
For comparison when conversion of the elements fails it also errors but results in an empty array instead:
@tool
extends EditorScript

var integer = "0"
var array_of_integers = [integer]

var a: Array[int] = [integer]
var b: Array[int] = array_of_integers

func _run():
	print(a)
	print(b)

Output (v4.0.beta17.official [c40020513]):
  Unable to convert array index 0 from 'String' to 'int'.
  res://ES.gd:8 - Trying to assign an array of type "Array" to a variable of type "Array[int]".
[]
<null>

Again, I kinda understand why it currently gives such output. Just not sure whether it's truly intended. Shouldn't both cases result in unitialized value / empty array? :thinking:

Array.filter preserves the typing, it returns an array typed the same as the original array.

Yes, you're right, that's a good clarification. But the static type is not inferred, it's a generic Array, despite the fact that the array (object in memory) is typed at runtime.

Shouldn't both cases result in unitialized value / empty array?

In my opinion both cases should result in a fatal error. It is the same as assigning String value to int variable, everything that will happen after such wrong deed is undefined. For example, if it was a function that deletes files and an array of strings was supposed to be whitelist, to prevent files from being deleted, one wouldn't want it to proceed with an empty array.

Fyi, as a new user, I lost time trying to understand this while trying to use .map() on a typed array. Honestly it feels like Java 1.4 all over again when generics where introduced... Which is 20 years-old now.

Hi I ran into the same problem today, is there an update here?
It's really inconvenient to use an extra assignment instead of directly returning the result of a map() function.
The array map function is not usable for typed arrays. This is a bug and should definitely be fixed. The map function should return the type of the mapping function used.
Yes, the workaround works, but makes the code more complex than necessary, this negates the benefits of the map function again.
var values :Array[String] = ["_1", "_2", "_3"]

# fails at runtime
func convert_to_id1() -> Array[int]:
	return values.map(_to_id)

# works with the assign workaround
func convert_to_id2() -> Array[int]:
	var result :Array[int] = []
	result.assign(values.map(_to_id))
	return result

func _to_id(value :String) -> int:
	return value.replace("_", "").to_int()

The only workaround for me is to create a new typed array manually:
	var recipes = craft_recipes.filter(
		func(recipe: RecipeItem):
                        # do something
			return true
	).map(
		func(recipe: RecipeItem) -> RecipeItem:
			# do something
			return recipe
	)

	var ret_recipes: Array[RecipeItem]

	# a godot bug:
	# https://github.com/godotengine/godot/issues/72566
	# https://github.com/godotengine/godot/pull/71336
	for recipe in recipes:
		ret_recipes.push_back(recipe)

	return ret_recipes

@portwatcher
You can use Array.assign(), which should be faster.

Yeah but I only have like 20 recipes and Array.assign is not visibly
straightforward to me
Serhii Snitsaruk @.***> 于2023年12月30日周六 01:42写道：

@portwatcher https://github.com/portwatcher
You can use Array.assign(), which should be faster.
—
Reply to this email directly, view it on GitHub
https://github.com/godotengine/godot/issues/72566#issuecomment-1872210699,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAWIY3J3P6YMKIYGFP7IIZDYL3XGRAVCNFSM6AAAAAAUORFGH6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNZSGIYTANRZHE
.
You are receiving this because you were mentioned.Message ID:
@.***>

@portwatcher You can use Array.assign(), which should be faster.

Yeah but I only have like 20 recipes and Array.assign is not visibly straightforward to me

How do you mean? It's just:
	var recipes = craft_recipes.filter(
		func(recipe: RecipeItem):
                        # do something
			return true
	).map(
		func(recipe: RecipeItem) -> RecipeItem:
			# do something
			return recipe
	)

	var ret_recipes: Array[RecipeItem]

	ret_recipes.assign(recipes)

	return ret_recipes

If you desperately need a one-liner there is a workaround
func do(array: Array[ClassA]) -> Array[ClassB]:
	#var result: Array[ClassB] = []
	#result.assign(array.map(func(element: ClassA) -> ClassB: return ClassB.new(element)))
	#return result
	return Array(array.map(func(element: ClassA) -> ClassB: return ClassB.new(element)), TYPE_OBJECT, "RefCounted", ClassB)

``

How do you mean? It's just:
	var ret_recipes: Array[RecipeItem]

	ret_recipes.assign(recipes)

	return ret_recipes

why this even here?
when map is called with a typed Callable it supposed to return an Array[typeof ReturnType<Callable>]
actually it should work like this all the time, since ReturnType of untyped Callable is Variant
then we're going to have an experience consistent with what we have now and actually respect typing
for now it's easier to just drop typing in such cases

func to_path() -> Array[Vector2]:
    return _tiles.map(func(tile) -> Vector2: return tile.world_position)

I tripped up here as well. I was expecting cases like this to work:
var array_of_ints: Array[int] = ["1","2","3"].map(func (i: String) -> int: return int(i))
Thanks to the replies here, I was able to find a solution using assign. In case it helps anyone else, I made this utility function to map in a type-safe way:
func map_type_safe(array_to_map: Array[Variant], result_typed_byref, callable) -> void:
	var array_untyped = array_to_map.map(callable)
	result_typed_byref.assign(array_untyped)

func example_usage() -> Array[int]:
	var array_to_map: Array[Variant] = ["1","2","3"]
	var result_typed_byref: Array[int]
	var callable = func (i: String) -> int: return int(i)
	map_type_safe(array_to_map, result_typed_byref, callable)
	return result_typed_byref

... though I would still like if map returned a typed array when the callable is typed to avoid this shenanigans!

I tripped up here as well. For anyone else that struggled a bit to grasp the workaround for map, replace this:
var array_of_ints: Array[int] = ["1","2","3"].map(func (i: String) -> int: return int(i))
with this:
var array_of_ints: Array[int]
array_of_ints.assign(["1","2","3"].map(func (i: String) -> int: return int(i)))

+1 from me on suggestion that typed callables used in map should return typed arrays.


feat: use storage and invalidation

proposal for use of an external storage, with optional invalidation

TODO

[x] test on storage/s
[x] 100% coverage (and significant cases)
[x] use an empty logger on storage
[x] fix CI, add a redis instance
[x] restore expiration logic on memory storage / do not use Date.now
[x] expose explicit "invalidation" function
[x] improve redis storage (pipeline etc)
[x] storage gc function
[x] memory storage with sync deletes
[x] redis storage with sync deletes
[x] optional invalidation
[x] benchmarks
[x] redis references TTL
[x] redis gc
[x] "stale-on-error" > next
[x] solve TODOs
[x] check redis pipeline
[x] memory references: use a btree? a set? arrays are good enough
[x] example

[x] basic
[x] mjs

[ ] update documentation

still have to write test on storage and reach 100% coverage

great work!

I'm collecting on top all the points

@mcollina wait to review, still a wip

looks good!

@mcollina I'm almost there
if you don't like joi for options validations, no problem to remove it
missing points now:

check redis pipeline
on memory storage try btree o set for references
documentation
examples

This needs lots of docs, specifically how to use references

I'm thinking of doing am extended use case in mercurius/cache and link there for documentation, for 2 reason: it's hard to explain references talking with abstractions, and the result of documentation here would be very close to the mercurius/cache one
wdyt?

Just do one and copy it over/adapt here. I think this deserves some docs anyway.

@mcollina apart of documentation, the code is done
there are some points in the code, we can probably check them later

@mcollina done!


Pass dapr api token

Description
This change enables user to pass an API token to WorkflowRuntime and DaprWorkflowClient.
If user doesn't pass explicitly and API Token and environment variable is set for DAPR_API_TOKEN, it will be picked.
Issue reference
We strive to have all PR being opened based on an issue, where the problem or feature have been discussed prior to implementation.
Please reference the issue this PR will close: #594
Checklist
Please make sure you've completed the relevant tasks for this PR, out of the following list:

[ ] Code compiles correctly
[ ] Created/updated tests
[ ] Extended the documentation

Please run the linter and typecheck locally before updating this PR and fix issues.
tox -e flake8
tox -e type
Current issues for lint:
./ext/dapr-ext-workflow/dapr/ext/workflow/dapr_workflow_client.py:41:101: E501 line too long (111 > 100 characters)
./ext/dapr-ext-workflow/dapr/ext/workflow/util.py:22:1: E302 expected 2 blank lines, found 1
./ext/dapr-ext-workflow/dapr/ext/workflow/workflow_runtime.py:16:1: F401 'typing.Any' imported but unused
./ext/dapr-ext-workflow/dapr/ext/workflow/workflow_runtime.py:16:1: F401 'typing.Dict' imported but unused
./ext/dapr-ext-workflow/dapr/ext/workflow/workflow_runtime.py:35:101: E501 line too long (111 > 100 characters)
./ext/dapr-ext-workflow/dapr/ext/workflow/workflow_runtime.py:44:5: E301 expected 1 blank line, found 0

Great changes! The only question I have is if/how these changes were tested and verified and if it is possible to create a test (or modify an existing one) in order to ensure that this new behavior doesn't break in the future.

@RyanLettieri I do not think we should modify the examples - however, if you'd like a unit test / mock could be added here.
To me this is not a blocking issue because this code is very straightforward and in line with what we have already in the SDK.

@DeepanshuA was there no update to durable-task-python required to make this work? Otherwise there should be a change to the requirements.txt / setup.cfg.

@DeepanshuA @RyanLettieri this PR cannot work right now. This needs to be done:

This has to be merged: https://github.com/microsoft/durabletask-python/pull/16/files
You have to cut a new release of durabletask-python
Then update the version here: https://github.com/dapr/python-sdk/blob/master/ext/dapr-ext-workflow/setup.cfg

@DeepanshuA @RyanLettieri this PR cannot work right now. This needs to be done:

This has to be merged: https://github.com/microsoft/durabletask-python/pull/16/files
You have to cut a new release of durabletask-python
Then update the version here: https://github.com/dapr/python-sdk/blob/master/ext/dapr-ext-workflow/setup.cfg

Yeah @berndverst.
I forgot to update about this in the description of this PR.

@DeepanshuA now that https://github.com/microsoft/durabletask-python/pull/16 is merged, please cut a release and complete this PR so that this will not delay the Python SDK release. Thanks!


Systematic test script for PSA_HAVE_xxx dependencies: endgoal

Create a depends-*.pl-style script to enumerate configurations to test with MBEDTLS_PSA_CRYPTO_CONFIG enabled.
New test scripts should be in Python. The work in progress depends.py from https://github.com/ARMmbed/mbed-crypto/pull/31 should be a good starting point.
Cryptographic mechanisms come in groups: hashes, signature algorithms, symmetric key types, etc. In each group:

Build and test in the base-full config minus each element of this group, in turn.
Build and test in the base-full config except only a single element in this group, for each element in turn.

TODO: should we enable drivers? Do we need to double all tests as with/without a driver?
Some peculiarities:

For asymmetric cryptography, key types are not on/off but all/public-only/off.

The base-full config for this purpose is a tweaked version of config.py full to explicitly enable MBEDTLS_USE_PSA_CRYPTO (it's currently enabled but shouldn't be) and any other change deemed necessary.
The script should enumerate all desired combinations in the target areas and enumerations that are in scope. It may be written in several phases with a progressively enlarged scope (e.g. first asymmetric all-but-one, then asymmetric single-only, then hashes, then symmetric). If some combinations turn out not to work due to preexisting issues in non-PSA code, add an explicit exclusion to the script. Possibly first work with MBEDTLS_USE_PSA_CRYPTO off (which reduces the work on dependencies), then add support for it.

I think that we would miss something if we don't test also with minimal configurations: config.h with just MBEDTLS_PSA_CRYPTO_C  and its dependencies + one or a couple of PSA_WANT_xyz defined


linux (debian) file  paths for stack

FYI: /usr/lib/slack/resources/app.asar.unpacked/src/static/index.js is where the slack files are located on debian based linux distro (including ubuntu).

Cool, thanks!


Please make all .NET libraries Open Source

Working with your libraries for integrate Ads with .NET services and applications, I found many minor issues.
I spent a lot of time with decompilers (ILSpy, dnSpy, ...) to understand the origin of the issues and work-around them....
In one case (#39) i was also able to use dnSpy to modify the binary IL code into TwinCAT.Ads.SymbolicServer.dll to fix it (correcting the wrong calls to OnWriteRawValue with the correct ones to OnReadRawValue while waiting for an official solution for the issue...)
Please consider to make Twincat.Ads.* libraries open source and share it on github. This may help a lot developers to understand how to actually use them since they are a very good job but somewhere the documentation is lacking or out-dated.
IMHO you may receive also al lot of PR helping you and your users to improve the product and by consequence all TwinCAT eco system...

We will not make the TwinCAT.Ads libraries open source.
We have another ADS component, which is open source: https://github.com/Beckhoff/ADS


Add Replicate demo and API

Hi @luosiallen!
Awesome work on LCM!
This pull request makes it possible to run LCM on Replicate (https://replicate.com/cjwbw/latent-consistency-model) and via API (https://replicate.com/cjwbw/latent-consistency-modelr/

Thanks Chenxi for building the cool Replicate demos!


chore(main): release 0.0.4

:robot: I have created a release beep boop
0.0.4 (2024-09-25)
Bug Fixes

fixup Dockerfile after last change (1080191)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/mhdawson/wasm-builder/releases/tag/v0.0.4 :sunflower:


Allow filtering by foreign keys fields

  Let's say we have two tables

class Author:
    id = ormar.Integer(primary_key=True)
class Book
    ...
    author = ormar.ForeignKey(Author)

Then the following queries should be equivalent
Book.objects.get(author=5)

Book.objects.get(Book.author==5)

However the second query raises the following exception
AttributeError: Cannot filter by Model, you need to provide model name

This is caused by self._check_field() inside the method FieldAccessor._select_operator. An alternative approach is to replace the last query by
Book.objects.get(Book.author.id==5)

but this will do a join query, which is different from the first query. My question is, why filtering by foreign keys fields is not allowed?
Originally posted by @Abdeldjalil-H in https://github.com/collerek/ormar/discussions/845

Sorry for necro-posting but I got the same problem here, was it fixed in some way? Thanks.


Update Pub Package

The latest version of the pub package is not null safe. Please update the package.

Truly a great package. Need a null safe version.

Hi @DFazekas @xLusyo ... Thank you for the feedback. The null safe is already available from GitHub. However, I will update it in pub.dev as soon as I get sometime.
Thank you!

@DFazekas @xLusyo updated on pub.dev -- Thank you for the patience!


ippserver: 'false' for "last-document" in Send-Document request returns error

If a .test file performs a Create-Job followed by a Send-Document, and the Send-Document operation includes:
ATTR boolean last-document false

The ippserver will respond with:
    status-code = client-error-attributes-or-values-not-supported (Unsupported last-document boolean value.)
    EXPECTED: STATUS successful-ok (got client-error-attributes-or-values-not-supported)
    status-message="Unsupported last-document boolean value."

This is correct - at present ippserver does not support multiple document jobs... :/

Agree with resolution - my bad! 😊


fix: typo in ButtonGroup props documentation

Description
Fix a small typo in ButtonGroup's props documentation (https://ui.gluestack.io/docs/components/forms/button)

Thanks for your contribution @skipadu.


Java checkstyles not running on darwin

For some reason checkstyles run on centos but no darwin.

They run if I explicitly add --experimental_action_listener=tools/java:compile_java but not otherwise

in tools/bazel.rc, I see darwin config enables check styles but not sure why it does not enforce it.

FYI, it works on my machine..

@billonahill is this still happening? if not, we can close this.

I've found that it still doesn't always happen.

@billonahill I see. I was asking because I see some of your PRs failed first CI pass due to style errors. It seems that this never happened to me.


there is no args.lambda2 and args.reg

in train_kemeans.py, line 72 and 73:
lambda2 = args.lambda2
reg = args.reg
but args has no attribute lambda2 and reg.

Hi. Thanks for pointing it out. I have updated the code to remove those extra arguments.


Experiencing lower throughput the higher the latency

Problem:

As part of my thesis, I'm using a self-written perf client available here based on s2n-quic with s2n-quic-qns as server in a testbed setup with configurable bandwidth limit and link delay at a router. I experience a reduction in throughput the higher the configured delay, whereas MsQuic's secnetperf tool doesn't suffer this reduction.
While limited to 200Mbit/s at 20ms delay, I'm able to achieve ~190Mbit/s throughput, at 250ms delay the throughput falls below 20Mbit/s average.
I'm also logging RecoveryMetrics and the CWND behavior looks odd to me, where it ramps up to an upper limit and then doesn't seem to exhibit the CUBIC behavior I would have expected.
Testbed

Note that the bandwidth limit is imposed on the path to the receiver, while the delay is applied in the direction from receiver to sender.
Visualization 20ms
Please disregard the empty graphs in some of the figures, they are only populated in some other diagram configurations if data was available.
My client:

MsQuic:

Visualization 50ms
My client:

MsQuic:

Visualization 250ms
My client:

MsQuic:

Solution:

I don't have a solution for the issue yet. I'm looking for feedback on whether this is a known / expected behavior at the moment, whether this is user-error on my part and if and how I can help troubleshoot this.
To rule out an error in my client, an official perf client implementation might be helpful.

Does this change what s2n-quic sends over the wire? Probably not

Does this change any public APIs? Probably not

Requirements / Acceptance Criteria:

RFC links: None
Related Issues: None
Will the Usage Guide or other documentation need to be updated? Unknown
Testing: A performance dashboard like MsQuic's WAN Perf would be nice

Thank you for the issue! I am able to reproduce this locally with tc qdisc as well with our monte carlo simulation. I'm going to look into it and figure out what's happening.

Thank you very much for looking into it :)

Thanks for the detailed reply, it's been pretty busy here as well. I'll probably run the experiments again next week with your new client and report back :)

Sorry for the delay, I was busy with other areas of my thesis before getting back to experiments.
I have now re-run the experiments with s2n-quic-qns (built from the v1.8.0 tag).
At RTTs of the 250ms, throughput has improved over the previous experiment results, but still doesn't reach the level of msquic (~110Mbit/s vs ~175Mbit/s), even if the s2n-quic-qns limits are set to very much overblown values (2000 Mbit/s, 2500ms RTT for a 200Mbit/s, 250ms RTT link).
The queue limits are only reached in the msquic case, so I assume they don't limit the performance of s2n-quic.
The following data is from a run run with the before mentioned overblown limit values, 200mbit, limit 1000 link towards receiver, 200ms, limit 10000 link back towards sender.
Graphs s2n-quic-qns

Graphs secnetperf (msquic)

Output s2n-quic-qns
Sender
Command
s2n-quic/target/release/s2n-quic-qns perf client --ip <IP_ADDRESS> --port 1337 --ca ~/certs/echo.test.crt  -server-name echo.test --send<PHONE_NUMBER>0 --stats --max-throughput 2000 --expected-rtt 2500

Output
650.68Kbps	0bps	52.42KB	51.52KB	0	29	421.818ms	333ms	333ms	0
11.83Mbps	0bps	813.44KB	812.54KB	0	275	272.407ms	277.402ms	267.225051ms	0
92.70Mbps	0bps	7.62MB	3.81MB	0	1621	266.747ms	276.2ms	257.789101ms	0
108.29Mbps	0bps	7.62MB	3.75MB	0	2131	276.886ms	264.502ms	259.277586ms	0
108.30Mbps	0bps	7.62MB	3.75MB	0	2116	9.803ms	267.049ms	259.330847ms	0
108.28Mbps	0bps	7.62MB	3.75MB	0	2106	9.951ms	267.096ms	259.545684ms	0
108.31Mbps	0bps	7.62MB	3.75MB	0	2116	9.899ms	266.884ms	259.382665ms	0
108.29Mbps	0bps	7.62MB	3.75MB	0	2116	9.906ms	266.977ms	259.621258ms	0
108.29Mbps	0bps	7.62MB	3.75MB	0	2106	12.342ms	266.925ms	259.528944ms	0
108.30Mbps	0bps	7.62MB	3.75MB	0	2109	15.422ms	268.166ms	259.648085ms	0
108.37Mbps	0bps	7.62MB	3.75MB	0	2110	18.966ms	269.139ms	259.776501ms	0
107.32Mbps	0bps	7.62MB	3.75MB	0	2123	1.109ms	269.217ms	259.85786ms	0
106.26Mbps	0bps	7.62MB	3.75MB	0	2111	269.576ms	262.501ms	258.922982ms	0
108.29Mbps	0bps	7.62MB	3.75MB	0	2126	269.057ms	263.521ms	259.022261ms	0
108.28Mbps	0bps	7.62MB	3.75MB	0	2121	268.686ms	264.604ms	259.219563ms	0
108.30Mbps	0bps	7.62MB	3.75MB	0	2113	268.361ms	266.632ms	259.380142ms	0
108.31Mbps	0bps	7.62MB	3.75MB	0	2129	279.952ms	270.326ms	259.98938ms	0
108.30Mbps	0bps	7.62MB	3.75MB	0	2123	268.996ms	266.515ms	259.4332ms	0
108.30Mbps	0bps	7.62MB	3.75MB	0	2124	269.82ms	261.338ms	258.978134ms	0
108.29Mbps	0bps	7.62MB	3.75MB	0	2120	12.822ms	261.18ms	258.927295ms	0
108.30Mbps	0bps	7.62MB	3.75MB	0	2133	12.75ms	261.214ms	258.968515ms	0
108.29Mbps	0bps	7.62MB	3.75MB	0	2119	12.869ms	262.213ms	258.963896ms	0
108.27Mbps	0bps	7.62MB	3.75MB	0	2122	12.818ms	262.543ms	259.049482ms	0
108.29Mbps	0bps	7.62MB	3.75MB	0	2122	17.127ms	262.563ms	259.024144ms	0
108.36Mbps	0bps	7.62MB	3.75MB	0	2113	20.163ms	262.647ms	259.205205ms	0
108.29Mbps	0bps	7.62MB	3.75MB	0	2120	22.55ms	263.646ms	259.104162ms	0
108.29Mbps	0bps	7.62MB	3.75MB	0	2112	22.495ms	264.64ms	259.178687ms	0
107.40Mbps	0bps	7.62MB	3.75MB	0	2119	1.095ms	264.672ms	259.174221ms	0
107.06Mbps	0bps	7.62MB	3.75MB	0	2128	1.006ms	266.127ms	259.583296ms	0
107.37Mbps	0bps	7.62MB	3.75MB	0	2123	7.849ms	265.966ms	259.546613ms	0
108.30Mbps	0bps	7.62MB	3.75MB	0	2131	9.869ms	267.181ms	259.454615ms	0
108.28Mbps	0bps	7.62MB	3.75MB	0	2127	12.688ms	267.013ms	259.572776ms	0
108.29Mbps	0bps	7.62MB	3.75MB	0	2132	15.665ms	268.079ms	259.656536ms	0
107.90Mbps	0bps	7.62MB	3.75MB	0	2107	1.11ms	268.666ms	259.687545ms	0
106.81Mbps	0bps	7.62MB	3.75MB	0	2113	1.167ms	269.025ms	259.686919ms	0
107.14Mbps	0bps	7.62MB	3.75MB	0	2129	282.42ms	266.583ms	259.29443ms	0
108.29Mbps	0bps	7.62MB	3.75MB	0	2128	2.532ms	267.186ms	259.496406ms	0
108.30Mbps	0bps	7.62MB	3.75MB	0	2103	5.763ms	268.062ms	259.463661ms	0
108.30Mbps	0bps	7.62MB	3.75MB	0	2127	9.227ms	268.157ms	259.609704ms	0
108.27Mbps	0bps	7.62MB	3.75MB	0	2130	11.94ms	268.137ms	259.673189ms	0
107.05Mbps	0bps	7.62MB	3.75MB	0	2112	1.153ms	273.378ms	260.297187ms	0
106.52Mbps	0bps	7.62MB	3.75MB	0	2118	18.318ms	273.446ms	260.370063ms	0
108.38Mbps	0bps	7.62MB	3.75MB	0	2108	21.338ms	273.513ms	260.185845ms	0
108.28Mbps	0bps	7.62MB	3.75MB	0	2132	24.981ms	274.33ms	260.444256ms	0
108.29Mbps	0bps	7.62MB	3.75MB	0	2127	3.099ms	273.826ms	260.529012ms	0
107.03Mbps	0bps	7.62MB	3.75MB	0	2123	1.067ms	273.888ms	260.357198ms	0
106.53Mbps	0bps	7.62MB	3.75MB	0	2120	9.379ms	273.935ms	260.410432ms	0
108.29Mbps	0bps	7.62MB	3.75MB	0	2122	12.367ms	273.335ms	260.414502ms	0
108.28Mbps	0bps	7.62MB	3.75MB	0	2129	15.96ms	274.824ms	260.59376ms	0
108.30Mbps	0bps	7.62MB	3.75MB	0	2109	19.031ms	274.796ms	260.606268ms	0
107.27Mbps	0bps	7.62MB	3.75MB	0	2125	1.097ms	273.373ms	260.357615ms	0
107.04Mbps	0bps	7.62MB	3.75MB	0	2128	1.123ms	273.837ms	260.445559ms	0
107.53Mbps	0bps	7.62MB	3.75MB	0	2140	282.303ms	273.825ms	260.38255ms	0
108.28Mbps	0bps	7.62MB	3.75MB	0	2134	282.731ms	273.353ms	260.418966ms	0
108.30Mbps	0bps	7.62MB	3.75MB	0	2129	283.849ms	274.32ms	260.434611ms	0
108.29Mbps	0bps	7.62MB	3.75MB	0	2129	4.036ms	274.869ms	260.575592ms	0
108.29Mbps	0bps	7.62MB	3.75MB	0	2131	7.095ms	273.382ms	260.40819ms	0
108.28Mbps	0bps	7.62MB	3.75MB	0	2119	10.761ms	273.357ms	260.336991ms	0
107.86Mbps	0bps	7.62MB	3.75MB	0	2129	1.109ms	273.336ms	260.373043ms	0
106.92Mbps	0bps	7.62MB	3.75MB	0	2109	1.09ms	273.832ms	260.493883ms	0

Receiver
Command
s2n-quic/target/release/s2n-quic-qns perf server --port 1337 --certificate ~/certs/echo.test.crt --private-key ~/certs/echo.test.key --stats --max-throughput 2000 --expected-rtt 2500

Output
Server listening on port 1337
0bps	0bps	0B	0B	0	0	0ns	0ns	0ns	0
0bps	0bps	0B	0B	0	1	0ns	0ns	0ns	0
0bps	0bps	0B	0B	0	0	0ns	0ns	0ns	0
0bps	650.63Kbps	14.52KB	2.35KB	0	96	24.906ms	333ms	333ms	0
0bps	10.14Mbps	14.52KB	2.70KB	0	1544	14.041ms	254.675ms	251.738763ms	0
0bps	85.98Mbps	28.25KB	14.15KB	0	14958	12.933ms	268.7ms	255.164378ms	0
0bps	107.79Mbps	28.25KB	14.04KB	0	18889	15.969ms	260.641ms	255.222235ms	0
0bps	108.18Mbps	28.25KB	14.07KB	0	18947	19.78ms	262.614ms	255.440541ms	0
0bps	107.91Mbps	28.25KB	14.02KB	0	18918	22.185ms	262.698ms	255.31445ms	0
0bps	107.78Mbps	28.25KB	14.02KB	0	17885	1.358ms	261.591ms	255.246114ms	0
0bps	107.76Mbps	28.25KB	13.97KB	0	18767	4.661ms	261.685ms	255.381599ms	0
0bps	107.82Mbps	28.25KB	14.02KB	0	18876	7.757ms	262.617ms	255.416375ms	0
0bps	107.83Mbps	28.30KB	14.12KB	0	17931	11.072ms	261.622ms	255.508324ms	0
0bps	107.76Mbps	28.30KB	14.12KB	0	18801	14.539ms	261.752ms	255.270263ms	0
0bps	108.28Mbps	28.30KB	14.03KB	0	19009	18.879ms	260.568ms	255.292108ms	0
0bps	108.29Mbps	28.30KB	14.02KB	0	19002	20.459ms	260.46ms	254.957184ms	0
0bps	107.89Mbps	28.30KB	14.07KB	0	18910	23.096ms	260.694ms	255.320609ms	0
0bps	107.78Mbps	28.30KB	14.07KB	0	18897	2.223ms	260.509ms	255.273123ms	0
0bps	107.78Mbps	28.30KB	14.02KB	0	18012	5.393ms	260.535ms	255.303699ms	0
0bps	107.77Mbps	28.30KB	14.02KB	0	17925	8.719ms	260.55ms	254.949658ms	0
0bps	107.74Mbps	28.30KB	14.02KB	0	17920	12.057ms	263.569ms	255.566237ms	0
0bps	107.82Mbps	28.30KB	14.02KB	0	18471	19.704ms	263.562ms	255.355214ms	0
0bps	108.30Mbps	28.30KB	13.97KB	0	19015	19.823ms	263.656ms	255.364806ms	0
0bps	108.07Mbps	28.30KB	14.08KB	0	18981	10.313ms	263.73ms	255.576281ms	0
0bps	107.72Mbps	28.30KB	13.97KB	0	18929	13.241ms	263.796ms	255.461171ms	0
0bps	107.72Mbps	28.30KB	14.02KB	0	18938	16.328ms	260.792ms	254.991823ms	0
0bps	107.70Mbps	28.30KB	13.97KB	0	18551	19.365ms	260.607ms	255.097139ms	0
0bps	107.67Mbps	28.30KB	14.07KB	0	17969	23.036ms	260.514ms	255.101772ms	0
0bps	107.89Mbps	28.30KB	14.02KB	0	18964	287.217ms	259.99ms	254.712051ms	0
0bps	108.28Mbps	28.30KB	13.91KB	0	19036	284.647ms	260.454ms	254.938803ms	0
0bps	108.29Mbps	28.30KB	13.97KB	0	19033	284.423ms	260.782ms	254.934796ms	0
0bps	108.28Mbps	28.30KB	13.91KB	0	19035	286.663ms	260.399ms	254.859352ms	0
0bps	108.29Mbps	28.30KB	13.92KB	0	19030	1.271ms	260.605ms	254.797204ms	0
0bps	107.69Mbps	28.30KB	13.97KB	0	18071	4.373ms	260.456ms	255.081798ms	0
0bps	107.70Mbps	28.30KB	13.91KB	0	18909	7.575ms	260.458ms	255.018086ms	0
0bps	107.69Mbps	28.30KB	13.91KB	0	17936	10.727ms	260.68ms	255.015946ms	0
0bps	107.69Mbps	28.30KB	13.91KB	0	18717	13.888ms	260.854ms	254.968045ms	0
0bps	107.69Mbps	28.30KB	13.97KB	0	18897	17.076ms	260.655ms	254.749747ms	0
0bps	107.70Mbps	28.30KB	13.91KB	0	18905	20.169ms	260.489ms	254.886209ms	0
0bps	107.72Mbps	28.30KB	13.91KB	0	18927	23.162ms	260.648ms	255.179399ms	0
0bps	107.70Mbps	28.30KB	13.86KB	0	17964	2.168ms	260.717ms	255.189869ms	0
0bps	107.69Mbps	28.30KB	13.91KB	0	17967	5.52ms	260.996ms	254.940345ms	0
0bps	107.69Mbps	28.30KB	13.91KB	0	18150	8.706ms	260.409ms	254.920119ms	0
0bps	107.69Mbps	28.30KB	13.91KB	0	18921	11.849ms	260.558ms	254.823291ms	0
0bps	107.69Mbps	28.30KB	13.86KB	0	18476	14.946ms	260.478ms	254.940926ms	0
0bps	107.70Mbps	28.30KB	14.07KB	0	18460	18.594ms	258.445ms	254.533498ms	0
0bps	107.72Mbps	28.30KB	13.97KB	0	18447	21.623ms	260.524ms	254.971548ms	0
0bps	107.68Mbps	28.30KB	13.97KB	0	18479	24.797ms	260.551ms	255.183226ms	0
0bps	108.23Mbps	28.30KB	13.91KB	0	18601	278.595ms	260.515ms	254.955696ms	0
0bps	108.29Mbps	28.30KB	13.97KB	0	18620	281.691ms	260.455ms	255.06452ms	0
0bps	108.29Mbps	28.30KB	13.97KB	0	18619	276.68ms	258.319ms	254.771268ms	0
0bps	108.29Mbps	28.30KB	13.97KB	0	18604	280.138ms	260.58ms	254.984038ms	0
0bps	108.28Mbps	28.30KB	13.97KB	0	18597	278.196ms	260.463ms	254.905692ms	0
0bps	108.28Mbps	28.30KB	13.91KB	0	18632	278.822ms	258.309ms	254.543648ms	0
0bps	108.29Mbps	28.30KB	13.97KB	0	18646	276.906ms	258.244ms	254.573324ms	0
0bps	108.29Mbps	28.30KB	13.91KB	0	18112	281.774ms	260.516ms	255.507789ms	0
0bps	108.29Mbps	28.30KB	13.97KB	0	18033	279.908ms	260.491ms	255.234825ms	0
0bps	108.28Mbps	28.30KB	13.91KB	0	18022	278.364ms	260.446ms	254.973469ms	0
0bps	108.29Mbps	28.30KB	13.97KB	0	18033	279.689ms	260.58ms	254.938479ms	0
0bps	108.29Mbps	28.30KB	13.91KB	0	18482	275.593ms	260.446ms	255.049725ms	0
0bps	108.29Mbps	28.30KB	13.97KB	0	19005	278.427ms	260.454ms	254.907345ms	0
0bps	108.29Mbps	28.30KB	13.91KB	0	19022	278.565ms	260.353ms	255.011382ms	0
0bps	108.28Mbps	28.30KB	13.97KB	0	19011	9.133ms	260.523ms	255.004752ms	0

Output secnetperf (msquic)
Sender
Command
msquic/artifacts/bin/linux/x64_Release_openssl/secnetperf -test:tput -maxruntime:60000 -target:<IP_ADDRESS> -upload:100000000000

Output
Started!

Result:<PHONE_NUMBER> bytes @ 175854 kbps (60000.217 ms).
Warning: Did not complete all bytes (sent:<PHONE_NUMBER>, completed:<PHONE_NUMBER>).
App Main returning status 0

Receiver
Command
msquic/artifacts/bin/linux/x64_Release_openssl/secnetperf -bind:<IP_ADDRESS>:4433

Output
Started!

It looks like the limits weren't being applied to the remote value in the qns configuration. It should be a lot better after #1447 is merged.

#1447 has been merged, let us know how things look!


Lint suggestion: use Update / use FixedUpdate

As discussed in https://github.com/bevyengine/bevy/issues/14215 and https://github.com/bevyengine/bevy/pull/14911, some games will prefer to run their logic in Update, while others prefer to run it in FixedUpdate.
We should have a pair of style lints that let you pick which one you're using. Note that UI code generally belongs in Update, so for UI modules projects should have localized allow / denies to swap this!

Totally agree! The documentation for this lint pair should recommend enabling them for just certain modules, not the entire crate, since there are reasons to use both.

I'd love this lint!
Subtle gotcha: when working with fixes update, the lint logic must be reverse for camera code. That should still go into Update.

Subtle gotcha: when working with fixed update, the lint logic must be reverse for camera code. That should still go into Update and not FixedUpdate.

What should the lints check for to find "camera code"? Should it check for references to camera components, or should it just document what schedules should handle what?

I'd prefer just documentation, and add a seperate lint for camera code in fixed update under correctness.

Sounds good, I'd just be very weary of adding a FixedUpdate lint without adding the camera lint at the same time, as putting your camera code in FixedUpdate is already a common mistake that we shouldn't accidentally encourage through a lint 😅


[FEAT] minor increase in coverage for adapter.go under rueidiscompat

Part of #487
This also introduces CFAdd BFAdd

Wait I guess I modified the generated files
Can you suggest hwo they are generated?
is there a proto? @rueian

I think it's from hack/cmds/commands_bloom.json
Can you suggest @rueian

I guess I figured it out, please review @rueian

Hi @SoulPancake, I don't think we can make bf.add and cf.add cacheable. They are not read-only commands.

@rueian Understood, I have updated it, Can you please review it @rueian

LGTM. Thanks @SoulPancake!


Storage Layer vs. Independent Server

This issue is to discuss how we should look at the Dynomite, Redis dependency, and whether we should create separate packaging repos.
The main question I have is whether we should create a hard dependency between Dynomite and Redis in the Netflix/dynomite repo or whether we should create separate packaging repo(s) that define these dependencies.
By way of background, I've been working on systemd for Dynomite recently. A nice feature in systemd is that we can define dependencies. For example, we can specify that Dynomite will start after Redis, and we can define a dependency where the Dynomite system script will start Redis if Redis is not running. The short story is that we can define a strong dependency between Dynomite and Redis. We can of course do the same thing in an init script.
The above got me thinking about the role of Redis in a Dynomite cluster. On each server, we have a Dynomite instance and a Redis instance. The Dynomite instance does not function properly if Redis is unavailable. Thus there is a strong runtime dependency.
Conceptually, I'm starting to think we should look at Redis as Dynomite's storage layer rather than as an independent server. However, I have mixed feelings about this because a strong dependency on Redis will make the UX for Dynomite + Redis better, but would move Dynomite away from a generic Dynamo layer.
A better approach than creating a hard dependency on Redis in the Dynomite repo may be to create a separate "packaging" repo that treats Netflix/dynomite and antirez/redis as an upstream dependencies.
Question
What are your thoughts on creating separate packaging repos (for .deb and .rpm) that treat Netflix/dynomite as an upstream project.
We can then create separate init/systemd scripts in the packaging repos with a strong dependency between Dynomite and Redis. This will keep Netflix/dynomite as a generic Dynamo layer while the packages can provide a simpler user experience for people who want to use Dynomite with Redis.

My 2 cents: Dynomite and Redis should be kept separate. Dynomite does not have a runtime dependency on Redis only, but as a generic Dynamo layer, a runtime dependency on any storage engine, for example memcached #227 and in the future ForrestDB #228
Dynomite decides on which data store it is going to use through .yml file https://github.com/Netflix/dynomite/blob/dev/conf/dynomite.yml#L7 (data_store: 0 is Redis, data_store: 1 is Memcached etc.). We plan to undertake the effort in the future to simplify the path to any data store engine so that the data store code will be totally independent (right now only the data store protocol is under src/proto)
Hence, I agree with you that the first step is to treat Dynomite as an upstream project. Then based on configuration, we can create scripts with strong dependencies to the corresponding storage engines (it would actually be nice to support both Redis and Memcached).

@ipapapa I think we're in agreement.


Fixed TweenInstance.cs time update

Fixed time update in TweenInstance.cs. Resolves #42

Thank you very much for your pull request, once the tests ran successfully I will merge the PR right away!

Sounds good 👍 Which tests are you referring to?


Research how to implement provider and certifier dataset as NFT

[x] Research FA2 Interface (Functions, Datatypes, Metadata)
[x] Evaluate if FA2 is suitable for use case/if not what are the alternatives?

FA2 seems suitable. It provides following features which may be interesting for taia-x functionality:

Can be designed to support a single token type (e.g. ERC-20 or ERC-721) or multiple token types (e.g. ERC-1155)
Metadata at the token and contract level based on TZIP-016, especially for uri property
Transfer Permission Policies (who can perform a transfer, the amount of a transfer, and who can receive tokens)


Update libsndfile and add windows build

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

Hi @SylvainCorlay
Given that Libsndfile version has been updated to 1.0.28 through #6 , is it possible to add windows build support through #7 and close this PR ?

Yep. Closing!

Great ! Thank you !
By the way, as mentioned in #3 it seems more appropriate to keep the source URL at http://www.mega-nerd.com/libsndfile/files/


fix: reject registry patches & v1beta2 fixes

Implements #674
Fixes reconciler must use v1beta2
Fixes local development (auto patching of conversion webhook paths)

@prometherion I was thinking if we should also add a option on tenant basis to prevent image patches in a tenant
Story:
As a tenant owner I want to disallow patches of images for pods.

@prometherion I was thinking if we should also add a option on tenant basis to prevent image patches in a tenant. What do you think?
Story: As a tenant owner I want to disallow patches of images for pods.

I'm trying to understand why an update should be allowed or not, also considering that now, with the fix, the pod container registry is enforced at every level.
tl;dr; what's the reason in allowing the patch of images?

@prometherion  Good question, I guess sometimes for development reasons or something like. I used it once or twice when solving production issues with a static pod to copy some files etc.
The question is, if we really want to deny it per default. That would be a change to the default behavior for end users and I don't know if thats what we are looking for as a framework.

I think there's nothing wrong until you use an image using the same container registry, thus, trusted.
Honestly, I don't see any need for a such feature, we can wait for feedback requests with a more detailed user story driven by business requirements.


feat(notifications): Implement GET /notification/category/{category} V2 API

PR Checklist
Please check if your PR fulfills the following requirements:

[x] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features)

If your build fails due to your commit message not passing the build checks, please review the guidelines here: https://github.com/edgexfoundry/edgex-go/blob/master/.github/Contributing.md.
What is the current behavior?

Issue Number: #3211
What is the new behavior?
Per https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/support-notifications/2.x#/default/get_notification_category__category_, implemented GET /notification/category/{category} V2 API.
Close #3211
Does this PR introduce a breaking change?

[ ] Yes
[x] No

New Imports

[ ] Yes
[x] No

Codecov Report

Merging #3212 (ce97f09) into master (f0a5054) will increase coverage by 0.00%.
The diff coverage is 47.05%.

@@           Coverage Diff           @@
##           master    #3212   +/-   ##
=======================================
  Coverage   41.17%   41.18%
=======================================
  Files         174      174
  Lines       14699    14747   +48
=======================================
+ Hits         6053     6074   +21
- Misses       8306     8332   +26
- Partials      340      341    +1

Impacted Files
Coverage Δ

internal/pkg/v2/infrastructure/redis/client.go
0.00% <0.00%> (ø)

...ternal/pkg/v2/infrastructure/redis/notification.go
0.00% <0.00%> (ø)

...t/notifications/v2/controller/http/notification.go
79.10% <80.00%> (-0.90%)
:arrow_down:

Continue to review full report at Codecov.

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


EC2:run_instances() now supports the HibernationOptions-param

Fixes #5336

Codecov Report

Merging #5386 (6925a1d) into master (3d913f8) will increase coverage by 0.00%.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##           master    #5386   +/-   ##
=======================================
  Coverage   96.05%   96.06%
=======================================
  Files         708      708
  Lines       71000    71001    +1
=======================================
+ Hits        68200    68206    +6
+ Misses       2800     2795    -5

Flag
Coverage Δ

servertests
35.83% <0.00%> (-0.01%)
:arrow_down:

unittests
96.00% <100.00%> (+<0.01%)
:arrow_up:

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

Impacted Files
Coverage Δ

moto/ec2/responses/instances.py
99.07% <ø> (ø)

moto/ec2/models/instances.py
97.75% <100.00%> (+<0.01%)
:arrow_up:

moto/awslambda/models.py
94.55% <0.00%> (+0.53%)
:arrow_up:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Replace Travis CI with Github Actions

Coveralls hasn't added a comment with coverage change!

Where is my comment, Coveralls!


Support ctrl+(left|right)

Most (all?) editors support jumping to next/previous word using ctrl+arrows. Micro inserts [1;5D or [1;5C instead.
$ echo $SHELL
/bin/bash
$ echo $TERM
xterm-256color
$ uname -a
Linux bendem-fedora-acer 4.4.6-301.fc23.x86_64 #1 SMP Wed Mar 30 16:43:58 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

It would be nice if the full range of text editing shorcut worked:
On Macs:
Movement
Cmd-UpArrow: Go to start of the file
Cmd-LeftArrow: Go to start of the line
Cmd-RightArrow: Go to end of the line
Cmd-DownArrow: Go to end of the file
Alt-LeftArrow:  Go to start of previous word
Alt-RightArrow:  Go to start of next word
Selection
Shift-Cmd-UpArrow: Select from current position to start of the file
Shift-Cmd-LeftArrow: Select from current position to start of the line
Shift-Cmd-RightArrow: Select from current position to end of the line
Shift-Cmd-DownArrow: Select from current position to end of the file
Shift-Alt-LeftArrow: Select from current position to start of previous word
Shift-Alt-RightArrow:  Select from current position to start of next word
Deletion
Cmd-Backspace: Delete until the start of the line
Cmd-Delete: Delete until the end of the line
Cmd-Backspace: Delete until the start of the line
Cmd-Delete: Delete until the end of the line
Alt-Backspace: delete until end of previous word
Alt-Delete: delete until end of next word

See #79


fix show command for macos

The show command is semi-broken under macOS because fuser does not have the -s option. Additionally, fuser is very slow (~10s).
This replaces the check of the .pid file with a check if any currently running command has the dot file as an argument using ps under macOS.

As it seems both of you have ready access to macOS, is it possible one of you could take a look at #1357 at some point?


Build failure: fastfetch on x86_64-darwin

Steps To Reproduce
Steps to reproduce the behavior:

build fastfetch

Build log
log: https://fars.ee/qvz7
error: builder for '/nix/store/5vanxp0vklzkq6lh1949h8d0jxz3ild4-fastfetch-2.3.4.drv' failed with exit code 2;
       last 10 log lines:
       > fatal error: too many errors emitted, stopping now [-ferror-limit=]
       > 8 errors generated.
       > make[2]: *** [CMakeFiles/libfastfetch.dir/build.make:1700: CMakeFiles/libfastfetch.dir/src/detection/brightness/brightness_apple.c.o] Error 1
       > make[2]: *** Waiting for unfinished jobs....
       > 20 errors generated.
       > make[2]: *** [CMakeFiles/libfastfetch.dir/build.make:1756: CMakeFiles/libfastfetch.dir/src/detection/cursor/cursor_apple.m.o] Error 1
       > 20 errors generated.
       > make[2]: *** [CMakeFiles/libfastfetch.dir/build.make:1672: CMakeFiles/libfastfetch.dir/src/detection/bluetooth/bluetooth_apple.m.o] Error 1
       > make[1]: *** [CMakeFiles/Makefile2:87: CMakeFiles/libfastfetch.dir/all] Error 2
       > make: *** [Makefile:156: all] Error 2
       For full logs, run 'nix log /nix/store/5vanxp0vklzkq6lh1949h8d0jxz3ild4-fastfetch-2.3.4.drv'.

Additional context
related: https://github.com/NixOS/nixpkgs/pull/272289#issuecomment-1847007239
Notify maintainers

@gerg-l @khaneliman @federicoschonborn
Metadata
Please run nix-shell -p nix-info --run "nix-info -m" and paste the result.
guanranwang@Plato ~> nix-shell -p nix-info --run "nix-info -m"
warning: Nix search path entry '/nix/var/nix/profiles/per-user/root/channels' does not exist, ignoring
 - system: `"x86_64-darwin"`
 - host os: `Darwin 22.6.0, macOS 10.16`
 - multi-user?: `yes`
 - sandbox: `no`
 - version: `nix-env (Nix) 2.18.1`
 - nixpkgs: `/Users/guanranwang/.nix-defexpr/channels/nixpkgs`

Add a :+1: reaction to issues you find important.

Yeah, this popped up after a staging change... I tried to look into a little bit before but not sure exactly what needs to change for it, yet.


Can't run operator locally

I can't seem to run my operator locally despite it seeming to run fine on AWS. I am running the operator locally in two ways, and both seem to fail to run for similar reasons.
oc create
When running the operator with the following commands:
oc create -f deploy/service_account.yaml
oc create -f deploy/role.yaml
oc create -f deploy/role_binding.yaml
oc create -f deploy/operator.yaml

The events from oc describe (full log) indicate that the container is constantly crashing and backing off from restarting as such:
Events:
  Type     Reason     Age                    From                         Message
  ----     ------     ----                   ----                         -------
  Normal   Scheduled  40m                   default-scheduler            Successfully assigned kogito-operator-local-4/kogito-operator-598ff5d875-fdh9x to crc-dv9sm-master-0
  Normal   Created    37m (x5 over 40m)     kubelet, crc-dv9sm-master-0  Created container kogito-cloud-operator
  Normal   Started    37m (x5 over 40m)     kubelet, crc-dv9sm-master-0  Started container kogito-cloud-operator
  Normal   Pulled     5m36s (x12 over 40m)  kubelet, crc-dv9sm-master-0  Container image "quay.io/kmok/kogito-operator" already present on machine
  Warning  BackOff    33s (x164 over 39m)   kubelet, crc-dv9sm-master-0  Back-off restarting failed container

Then, oc logs (full log) seem to indicate some problem with KogitoRuntime being missing:
{"level":"error","T":"2020-05-28T21:45:52.547Z","logger":"cmd","msg":"no matches for kind \"KogitoRuntime\" in version \"app.kiegroup.org/v1alpha1\"Manager exited non-zero"}

operator-sdk run --local
When running the operator locally with operator-sdk as described in the README, there seems to be a similar error with KogitoRuntime being missing:
2020-05-28T17:15:45.580-0400	ERROR	cmd	no matches for kind "KogitoRuntime" in version "app.kiegroup.org/v1alpha1"Manager exited non-zero

Full log
When I deploy the same operator on AWS using the oc create method, I don't run into this problem at all.

I thought of ensuring that there's a runtime image with kogito deploy-service --image-runtime quay.io/kiegroup/kogito-quarkus-jvm-ubi8, but I'm getting this error when running the command:
panic: runtime error: index out of range [0] with length 0

goroutine 1 [running]:
github.com/kiegroup/kogito-cloud-operator/cmd/kogito/command/deploy.(*deployCommand).Exec(0xc0001616c0, 0xc000108f00, 0x25d9c50, 0x0, 0x0, 0x0, 0x0)
	/data/dev/go_path/src/github.com/kiegroup/kogito-cloud-operator/cmd/kogito/command/deploy/deploy_service.go:158 +0x1299
github.com/spf13/cobra.(*Command).execute(0xc000108f00, 0x25d9c50, 0x0, 0x0, 0xc000108f00, 0x25d9c50)
	/data/dev/go_path/pkg/mod/github.com/spf13/cobra@v0.0.5/command.go:826 +0x460
github.com/spf13/cobra.(*Command).ExecuteC(0xc000108780, 0x43c337, 0x2549e00, 0x1d)
	/data/dev/go_path/pkg/mod/github.com/spf13/cobra@v0.0.5/command.go:914 +0x2fb
github.com/spf13/cobra.(*Command).Execute(...)
	/data/dev/go_path/pkg/mod/github.com/spf13/cobra@v0.0.5/command.go:864
main.Main(0xc0008f1f20, 0x43c337)
	/data/dev/go_path/src/github.com/kiegroup/kogito-cloud-operator/cmd/kogito/main.go:26 +0x27
main.Execute()
	/data/dev/go_path/src/github.com/kiegroup/kogito-cloud-operator/cmd/kogito/main.go:32 +0x26
main.main()
	/data/dev/go_path/src/github.com/kiegroup/kogito-cloud-operator/cmd/kogito/main.go:39 +0x20

Fixed by deploying the KogitoRuntime CRD to the cluster with oc create -f deploy/crds/app.kiegroup.org_kogitoruntimes_crd.yaml.


Planetary/PDS tools moving foward

@spacerockjock
I'm about to get stared on a mer_spect equivalent (exportable ROIS, polygon ROIs, multiple ROIs, etc.) and everything is pointing to the fact that both pdsview and pdsspect (temporary name...have not thought about the name...) should depend on the very similar models and (also repeated use of the histogram tool). Essentially, pdsspect will be a more complicated tool than pdsview and will subclass and reuse a lot of pdsview's classes and tools. I could do this by making a new package for pdsspect and making pdsview a dependency, create pdsspect within pdsview, or start a new package that will house pdsview, pystamps, pdsspect, and any other future tools we create and deprecate pdsview and pystamps. My problem with the first option is it will become clearer as I make pdsspect how pdsview can be refactored even more to make it easier to reuse code. Then I will have simultaneous development on the two projects and that points me to option 2 or 3. My problem with option 2 is then pdsview is not clear on its purpose. The way it is setup/named right now is it is a one tool package and it won't be clear that there are other tools available. Which leads me to option 3 which I think is most preferable. It will be clear on it's purposes, allow for tools to reuse and sublcass each other much more easily, and make it far easier for the tools to interact/launch each other. The main concern is this will cause some reorganization on PlanetaryPy and we will have to take pdsview of of pip. I don't want to make any decisions about these tools moving forward alone and would love input on what people think is best moving forward.

It's unclear what option 3 is.  Are these the three options?

make a new package for pdsspect and making pdsview a dependency
create pdsspect within pdsview,
start a new package that will house pdsview, pystamps, pdsspect, and any other future tools we create and deprecate pdsview and pystamps.

I think there is a 4th option.  Create a library package shared by all three UI tools.  As you're developing pyspect and identifying reusable code you extract it into this library, and modify pdsview to use the newly extracted code.

Yes those are the three options but I like the fourth option!

I will weigh in on the newly offered Option #4.
Ernest
On 6/9/17 6:57 AM, Perry Vargas wrote:

Yes those are the three options but I like the fourth option!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_planetarypy_pdsview_issues_45-23issuecomment-2D307395899&d=DwMCaQ&c=AGbYxfJbXK67KfXyGqyv2Ejiz41FqQuZFk4A-1IxfAU&r=bGQ0e5FmNwkJc9bxO2gEeGP3Y7-NuKum9VD6w32Mk9Y&m=RjTNmmLq5wQccNUBY5QZd6ud9bcos0Ds7-k6GeXaMp8&s=6LFsjhbXeySLl8AGpCFPatr4ilJ_-00pVMBf7dXlJuQ&e=,
or mute the thread
https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_notifications_unsubscribe-2Dauth_AaHUxehGomkfPW9cqUqdy-5FDrb6Ft5-5FZlks5sCU9OgaJpZM4Ny8wk&d=DwMCaQ&c=AGbYxfJbXK67KfXyGqyv2Ejiz41FqQuZFk4A-1IxfAU&r=bGQ0e5FmNwkJc9bxO2gEeGP3Y7-NuKum9VD6w32Mk9Y&m=RjTNmmLq5wQccNUBY5QZd6ud9bcos0Ds7-k6GeXaMp8&s=XgxlStrm50_yqqoOj4Z5KIkcxgkEvPaRfRWp8JdcKrw&e=.

--
Ernest Cisneros
Arizona State University
School for Earth and Space Exploration
Box 876004
Tempe, AZ 85287-6004
Office: ISTB-4 Bldg, 631B                   Phone:<PHONE_NUMBER>
Email<EMAIL_ADDRESS>                    FAX:<PHONE_NUMBER>


APEXCORE-419 #resolve when operator is marked blocked, print out a warning instead of debug

@PramodSSImmaneni please merge

Please check what happens after this message is logged. If the affected operators are reset, then why do we need this message?


Update deps

Codecov Report

Merging #76 into master will increase coverage by <.01%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master      #76      +/-   ##
==========================================
+ Coverage   97.88%   97.89%   +<.01%
==========================================
  Files          35       36       +1
  Lines         708      711       +3
  Branches      138      138
==========================================
+ Hits          693      696       +3
  Misses         15       15

Impacted Files
Coverage Δ

src/tasks/util/filterUpdateTask.js
100% <ø> (ø)
:arrow_up:

src/tasks/util/splitUpdateTasks.js
100% <ø> (ø)
:arrow_up:

src/tasks/updatePackageJson.js
100% <ø> (ø)
:arrow_up:

src/reporters/util/handleError.js
100% <ø> (ø)
:arrow_up:

src/Updtr.js
100% <ø> (ø)
:arrow_up:

src/index.js
100% <ø> (ø)
:arrow_up:

src/exec/cmds.js
100% <100%> (ø)
:arrow_up:

src/errors.js
100% <100%> (ø)
:arrow_up:

src/tasks/finish.js
100% <100%> (ø)
:arrow_up:

src/reporters/index.js
100% <100%> (ø)

... and 12 more

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 ff56fbb...26b67d7. Read the comment docs.


Build failure: yubioath-flutter

Steps To Reproduce
Steps to reproduce the behavior:

build yubioath-flutter
nix build nixpkgs#yubioath-flutter

Build log
❯ nix log '/nix/store/zm76i6m184h5fs9yaihjxinqym3f6vkn-yubioath-flutter-6.2.0-dart-deps-list.json.drv^*'
@nix { "action": "setPhase", "phase": "unpackPhase" }
Running phase: unpackPhase
unpacking source archive /nix/store/8vm4mcm7j05jpaywqs259vgx781jxzky-source
source root is source
@nix { "action": "setPhase", "phase": "patchPhase" }
Running phase: patchPhase
@nix { "action": "setPhase", "phase": "updateAutotoolsGnuConfigScriptsPhase" }
Running phase: updateAutotoolsGnuConfigScriptsPhase
@nix { "action": "setPhase", "phase": "configurePhase" }
Running phase: configurePhase
'/nix/store/yhkl29rlrxvizgzw7382zzpgrvb58f7q-yubioath-flutter-6.2.0-dart-deps/pubspec/pubspec.lock' -> './pubspec.lock'
Resolving dependencies...
! intl 0.18.1 (overridden in ./pubspec_overrides.yaml)
Got dependencies!
@nix { "action": "setPhase", "phase": "buildPhase" }
Running phase: buildPhase
The Flutter SDK is not available.

Additional context
The flutter derivation has been drastically updated recently.
I think it may be related.  I see no recent changes in the yubioath-flutter module.
Notify maintainers
@lukegb @hacker1024

Metadata
Please run nix-shell -p nix-info --run "nix-info -m" and paste the result.
❯ nix run nixpkgs#nix-info -- -m
 - system: `"x86_64-linux"`
 - host os: `Linux 6.6.8, NixOS, 24.05 (Uakari), 24.05.20231222.6df37dc`
 - multi-user?: `no`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.18.1`
 - nixpkgs: `not found`

Add a :+1: reaction to issues you find important.

Same here with localsend
> nix log '/nix/store/72bjd7x50y8f95hsvjhnbphjk5xgcykd-localsend-1.12.0-dart-deps-list.json.drv^*'
@nix { "action": "setPhase", "phase": "unpackPhase" }
Running phase: unpackPhase
unpacking source archive /nix/store/xmirdp6khwp3caxkf1wg6pp5l2fj5rx0-source
source root is source/app
@nix { "action": "setPhase", "phase": "patchPhase" }
Running phase: patchPhase
@nix { "action": "setPhase", "phase": "updateAutotoolsGnuConfigScriptsPhase" }
Running phase: updateAutotoolsGnuConfigScriptsPhase
@nix { "action": "setPhase", "phase": "configurePhase" }
Running phase: configurePhase
Resolving dependencies...
! permission_handler_windows 0.1.2 from git https://github.com/localsend/permission_handler_windows_noop.git at fc09b7 (overridden)
Got dependencies!
@nix { "action": "setPhase", "phase": "buildPhase" }
Running phase: buildPhase
The Flutter SDK is not available.

Should be fixed with #276414

This is still failing for me.
- system: `"x86_64-linux"`
 - host os: `Linux 6.6.7-zen1, NixOS, 24.05 (Uakari), 24.05.20231219.54aac08`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.18.1`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

(This is actually not accurate, I'm using flakes that source from nixos-unstable.)
@nix { "action": "setPhase", "phase": "unpackPhase" }
Running phase: unpackPhase
unpacking source archive /nix/store/8vm4mcm7j05jpaywqs259vgx781jxzky-source
source root is source
@nix { "action": "setPhase", "phase": "patchPhase" }
Running phase: patchPhase
@nix { "action": "setPhase", "phase": "updateAutotoolsGnuConfigScriptsPhase" }
Running phase: updateAutotoolsGnuConfigScriptsPhase
@nix { "action": "setPhase", "phase": "configurePhase" }
Running phase: configurePhase
'/nix/store/yhkl29rlrxvizgzw7382zzpgrvb58f7q-yubioath-flutter-6.2.0-dart-deps/pubspec/pubspec.lock' -> './pubspec.lock'
Resolving dependencies...
! intl 0.18.1 (overridden in ./pubspec_overrides.yaml)
Got dependencies!
@nix { "action": "setPhase", "phase": "buildPhase" }
Running phase: buildPhase
The Flutter SDK is not available.

I've tried building yubioath-flutter on d2e4e09de4b8a27228295951c3847cfc8f06fd15 (master) and it just pulled from cache
You're using sandbox so I suspect that's not the issue.
nixos-unstable is not directly master, try with master and see if the issue still persists.
Check https://nixpk.gs/pr-tracker.html?pr=276414, nixos-unstable doesn't yet have the fix

[...[

nixos-unstable is not directly master, try with master and see if the issue still persists.
Check https://nixpk.gs/pr-tracker.html?pr=276414, nixos-unstable doesn't yet have the fix
The change finally percolated to nixos-unstable, yay!

Build working again, no issues.


updateGraphicsTint not called when getBounds is used before next frame

PIXI.Graphics.prototype.getBounds sets this.dirty = false
But PIXI.CanvasGraphics.renderGraphics checks the dirty flag:

    if(graphics.dirty)
    {
        this.updateGraphicsTint(graphics);
        graphics.dirty = false;
    }

To avoid similar problems the WebGL renderer maintains a webGLDirty flag. I suggest using it in the canvas renderer as well (and renaming it to rendererDirty).

Good catch! I ended up adding a boundsDirty property to graphics to handle this. Thanks for sharing! :+1:


DO NOT use SELECT * in SQL queries

Describe the feature
Hi, I have been going through the documentation at https://gorm.io/docs/query.html and found that the queries use SELECT * which is bad practice.
// Get the first record ordered by primary key
db.First (& user)
// SELECT * FROM users ORDER BY id LIMIT 1;

Assuming we have a user struct with the following fields:
type User struct {
	ID        uint32    `gorm:"type:serial;primaryKey;auto_increment" json:"id"`
	Username string    `gorm:"not null;size:60;unique" json:"username"`
	Email     string    `gorm:"not null;size:60;unique" json:"email"`
}

The above should run a query:
SELECT "user"."id", "user"."username", "user"."email" FROM "users" AS "user" ORDER BY "user"."id" LIMIT 1;
Motivation
We should not use SELECT * in the SQL query anymore. It's always better to use the explicit column list in the SELECT query than a * wildcard. It not only improves the performance but also makes your code more explicit.

https://gorm.io/docs/advanced_query.html#Smart-Select-Fields


Add Changes in Snapshot Delete Flow for remote store interoperability.

Description
Changes in Delete Snapshot API required for Snapshot interoperability with Remote Store.
Related Issues
This change is dependent on Lock Manager changes and Create Snapshot API changes.
Check List

[x]  New functionality includes testing.

[x] All tests pass

[x] New functionality has been documented.

[x] New functionality has javadoc added

[x] Commits are signed per the DCO using --signoff
[x] Commit changes are listed out in CHANGELOG.md file (See: Changelog)

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

@kasundra07

lets create a new deleteSnapshots method which will have lockManagerFactory instance and use that if ShallowCopyEnabled repository setting is true and repository implementation is BlobStoreRepository.
wherever we are deleting shard metadata, for shallow snapshot shard md it should be:
shard md deletion => md deletion + lock file release
For Cleanup API, as today for full copy snapshots, it do not cleans up shard level md files, we can keep the same behaviour for shallow copy snapshots as well and add logic for shard level cleanup later together. ( you can add a TODO and a github issue for that).

Please create a backlog item for ITs where deletion of lock files and .dat files fail . Rest LGTM .


Multiple Cameras

pyHik appears unable to handle multiple Hikvision cameras simultaneously. Individually tested each with pyHik without issue. When adding them both to configuration.yaml, however, only one is displayed in states.
configuration.yaml:
#Hikvision Setup
binary_sensor:
  - platform: hikvision
    name: Porch
    host: <IP_ADDRESS>
    port: 8889
    username: removed
    password: removed

  - platform: hikvision
    name: Driveway
    host: <IP_ADDRESS>
    port: 8888
    username: removed
    password: removed

Log:
17-04-02 11:10:28 INFO (MainThread) [homeassistant.loader] Loaded binary_sensor.hikvision from homeassistant.components.binary_sensor.hikvision
17-04-02 11:10:28 INFO (MainThread) [homeassistant.bootstrap] Setting up binary_sensor
17-04-02 11:10:28 INFO (MainThread) [homeassistant.components.binary_sensor] Setting up binary_sensor.hikvision
17-04-02 11:10:28 INFO (MainThread) [homeassistant.components.binary_sensor] Setting up binary_sensor.hikvision
17-04-02 11:10:28 DEBUG (<concurrent.futures.thread.ThreadPoolExecutor object at 0x02A5E3B0>_8) [pyhik.hikvision] Initializing new hikvision device at: http://<IP_ADDRESS>
17-04-02 11:10:28 DEBUG (<concurrent.futures.thread.ThreadPoolExecutor object at 0x02A5E3B0>_4) [pyhik.hikvision] Initializing new hikvision device at: http://<IP_ADDRESS>
17-04-02 11:10:29 DEBUG (<concurrent.futures.thread.ThreadPoolExecutor object at 0x02A5E3B0>_8) [pyhik.hikvision] Using alternate deviceInfo URL.
17-04-02 11:10:29 DEBUG (<concurrent.futures.thread.ThreadPoolExecutor object at 0x02A5E3B0>_4) [pyhik.hikvision] Using alternate deviceInfo URL.
17-04-02 11:10:29 DEBUG (<concurrent.futures.thread.ThreadPoolExecutor object at 0x02A5E3B0>_8) [pyhik.hikvision] Auto Namespace Result: http://www.hikvision.com/ver10/XMLSchema
17-04-02 11:10:29 DEBUG (<concurrent.futures.thread.ThreadPoolExecutor object at 0x02A5E3B0>_8) [pyhik.hikvision] Using Namespace: http://www.hikvision.com/ver10/XMLSchema
17-04-02 11:10:29 DEBUG (<concurrent.futures.thread.ThreadPoolExecutor object at 0x02A5E3B0>_4) [pyhik.hikvision] Auto Namespace Result: http://www.std-cgi.com/ver10/XMLSchema
17-04-02 11:10:30 DEBUG (<concurrent.futures.thread.ThreadPoolExecutor object at 0x02A5E3B0>_4) [pyhik.hikvision] Using Namespace: http://www.std-cgi.com/ver10/XMLSchema
17-04-02 11:10:29 DEBUG (<concurrent.futures.thread.ThreadPoolExecutor object at 0x02A5E3B0>_8) [pyhik.hikvision] Using alternate triggers URL.
17-04-02 11:10:30 DEBUG (<concurrent.futures.thread.ThreadPoolExecutor object at 0x02A5E3B0>_4) [pyhik.hikvision] Using alternate triggers URL.
17-04-02 11:10:30 DEBUG (<concurrent.futures.thread.ThreadPoolExecutor object at 0x02A5E3B0>_8) [pyhik.hikvision] Processed CAM Device.
17-04-02 11:10:30 DEBUG (<concurrent.futures.thread.ThreadPoolExecutor object at 0x02A5E3B0>_8) [pyhik.hikvision] Found events: {'VMD': [1]}
17-04-02 11:10:30 DEBUG (<concurrent.futures.thread.ThreadPoolExecutor object at 0x02A5E3B0>_4) [pyhik.hikvision] Processed CAM Device.
17-04-02 11:10:30 DEBUG (<concurrent.futures.thread.ThreadPoolExecutor object at 0x02A5E3B0>_4) [pyhik.hikvision] Found events: {'VMD': [1]}
17-04-02 11:10:30 DEBUG (<concurrent.futures.thread.ThreadPoolExecutor object at 0x02A5E3B0>_4) [pyhik.hikvision] Initialized Dictionary: {'Motion': [[False, 1, 0, datetime.datetime(2017, 4, 2, 11, 10, 30, 377829)]]}
17-04-02 11:10:30 DEBUG (<concurrent.futures.thread.ThreadPoolExecutor object at 0x02A5E3B0>_8) [pyhik.hikvision] Initialized Dictionary: {'Motion': [[False, 1, 0, datetime.datetime(2017, 4, 2, 11, 10, 30, 362229)]]}
17-04-02 11:10:30 DEBUG (<concurrent.futures.thread.ThreadPoolExecutor object at 0x02A5E3B0>_4) [homeassistant.components.binary_sensor.hikvision] Entity: Driveway - Motion, Options - Ignore: None, Delay: None
17-04-02 11:10:30 DEBUG (<concurrent.futures.thread.ThreadPoolExecutor object at 0x02A5E3B0>_4) [pyhik.hikvision] Added update callback to <bound method HikvisionBinarySensor._update_callback of <Entity Driveway Motion: off>> on 88.Motion.1
17-04-02 11:10:30 INFO (MainThread) [homeassistant.core] Bus:Handling <Event state_changed[L]: entity_id=binary_sensor.driveway_motion, old_state=None, new_state=<state binary_sensor.driveway_motion=off; last_tripped_time=2017-04-02T04:10:30.377829-07:00, friendly_name=Driveway Motion, device_class=motion @ 2017-04-02T11:10:30.455829-07:00>>
17-04-02 11:10:30 DEBUG (<concurrent.futures.thread.ThreadPoolExecutor object at 0x02A5E3B0>_8) [homeassistant.components.binary_sensor.hikvision] Entity: Porch - Motion, Options - Ignore: None, Delay: None
17-04-02 11:10:30 DEBUG (<concurrent.futures.thread.ThreadPoolExecutor object at 0x02A5E3B0>_8) [pyhik.hikvision] Added update callback to <bound method HikvisionBinarySensor._update_callback of <Entity Porch Motion: off>> on 88.Motion.1
17-04-02 11:10:30 INFO (MainThread) [homeassistant.core] Bus:Handling <Event component_loaded[L]: component=binary_sensor>

Issue here is with the ID returned by your cameras using the alternate URL's... they are both the same.
I made a commit to the altcam branch that should fix it, give it a shot.

Works correctly now, no more errors. Thanks again!

Updated version has been merged into HASS dev.  Closing this issue.


Submit/approve privileged access requests Which all roles can submit the request as I tried to raise the access with Exchange admin but i dont see the Security and privacy or Privileged access on my role to raise the request access.Are there any specific admin roles who can raise these requests. Kindly specify

[Enter feedback here]

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

ID: 0bf337ec-3242-44b9-328b-7ca6381a2bcf
Version Independent ID: eda3540f-7049-ad17-a259-7952e5665983
Content: Get started with privileged access management - Microsoft 365 Compliance
Content Source: microsoft-365/compliance/privileged-access-management-configuration.md
Service: o365-seccomp
GitHub Login: @robmazz
Microsoft Alias: robmazz

@priyankareddy20 Thank you for your feedback. At the moment, Privileged access management is available only for Exchange workloads and will be available in other Office 365 workloads soon. Visit the Microsoft 365 Roadmap for more details (https://www.microsoft.com/microsoft-365/roadmap).
Thanks
Sri

@msbemba


How to generate cucumber HTML reports in new version @badeball ?

I can see multiple videos or examples how to generate this kind of HTML report in Cypress - cucumber for older versions.
But in new version of cucumber integration - [badeball]/[cypress-cucumber-preprocessor] how can i integrate the same ? Any leads

This isn't really something I can help you with.
However, if someone knows of any good resources then I might be able create a link collection in the docs.

This looks like a screenshot from the Jenkins cucumber plugin.  You will need to do a few things:

Be sure to call addCucumberPreprocessorPlugin(on, config) in your plugins file.
You need to have the cucumber-json-formatter executable downloaded.  In Jenkins I added this as a stage which downloads the file from some known location and places it in the workspace.  The plugin looks for it in the $PATH by default, but you can customize the location when running cypress via --env.jsonFormatter=path/to/formatter/file
When running cypress you need to enable json reports, one way is via env params: --env.jsonEnabled=true.  If the cucumber-json-formatter is not in the $PATH, then you can specify the location the same way:  This is what tells the plugin to convert to cucumber-report.json.
Finally, in your pipeline, you can add a stage or post to call the cucumber plugin.  Docs for this are available at https://plugins.jenkins.io/cucumber-reports/#plugin-content-pipeline-usage

Hi @hdabas2 , this issue may also help you to configure your reporting
https://github.com/badeball/cypress-cucumber-preprocessor/issues/755

Hi! after I used another version and didn't have problems using, for example, mochawesome reports, do you know any way to configure the same type of reports using this badeball version? I can't generate reports using this version.

I can't imagine that compatibility with mochawesome has changed between the recent versions. Feel however free to show me otherwise.

I found that integrating with @cucumber/html-formatter was quite easy and plan to add native support for it with v12. Eagers users can however install 12.0.0-rc1 (with changelog and update docs) and try it out immediately, as shown below.
$ npm i<EMAIL_ADDRESS>

@badeball I installed version 12.0.0-rc1, which is incredible; Regarding mochawesome I only tested a little bit it is probably a problem with my configuration because I was able to see the title of the scenarios, but never saw the steps, only the code executed in the background.

@hdabas2 This YouTuber has new content regarding Cypress 10 + @badeball/cypress-cucumber-preprocessor HTML Reports: https://www.youtube.com/watch?v=5AGXK9cL2fs

HTML reports is now natively supported through @cucumber/html-formatter, see docs/html-report.md.
Users wanting to use mochawesome, cucumber-html-reporter or multiple-cucumber-html-reporter can continue to do so as before, but this isn't a support forum for either of those. Feel free to discuss either of them, but don't expect my involvement.


Check that ranger fits our needs in terms of functionnalities

This story is part of epic Evaluate the ranger library for batch training with Random Forest.
Objective
The objective of this story is to determine if:

we can save and load models.
the loaded models return expected predictions.
the loaded models can be trained further after being loaded

Note on Objective 3: Does RF allow this to begin with regardless of what ranger has implemented and if so can it be done in ranger?
Acceptance criteria

[ ] 1. Check that ranger can save and load models, it seems possible but we must first confirm that it is before integrating ranger into OrbitAi. What needs to be done:

[x] 1.1. Check that loaded models give the same prediction results as models trained prior to being saved.
[x] 1.2. Update README with instructions on how to save and load models.
[ ] 1.3. Save all model files, input datasets, results summary, and comparison observations in a results folder for record keeping and referencing purposes.

[x] 2. Check that ranger's inputs format works for OrbitAI's needs (try to feed it PD values and labels from our training.csv files collected in previous runs).

Verifying the save and load functionalities

Prepare two different datasets: n training inputs and m test inputs.

Train and predict:
2.1. Start program.
2.2. Train the model with dataset n as inputs.
2.3. Predict the labels with the dataset m as inputs.
2.4. Save the prediction results in a text or csv file.
2.5. Save the model.
2.6. Exit program.
2.7. Start program.
2.8. Load the model saved in step 2.5.
2.9. Predict the labels with the dataset m as inputs.
2.10. Save the prediction results in a text or csv file.
2.11. Exit program.
2.12. Compare prediction results obtained in steps 2.4 with those obtained in steps 2.10. They should be the same.

Train and predict in multiple sessions with saving and loading.
3.1. Split training dataset n in two: e.g. n1 and n2
3.2. Start program.
3.3. Train model with dataset n1 as inputs.
3.4. Save the model.
3.5. Exit program.
3.6. Start program.
3.7. Load the model saved in step 3.4.
3.8. Predict the labels with the dataset m as inputs.
3.9. Save the prediction results in a text or csv file.
3.10. Exit Program.
3.11. Compare prediction results obtained in steps 2.4. with those obtained in steps 3.9. They must be different in order for the rest of the verification procedure to be valid. If they are the same then restart from step 3.1. and make sure that splitting dataset n results in a smaller and less diverse sample size for the n1 training dataset.
3.12. Start program.
3.13. Load the model saved in step 3.4.
3.14. Train model with dataset n2 as inputs.
3.15. Save the model.
3.16. Exit program.
3.17. Start program.
3.18. Load the model saved in step 3.15.
3.19. Predict the labels with the dataset m as inputs.
3.20. Save the prediction results in a text or csv file.
3.21. Exit program.

Verification
4.1. Compare prediction results obtained in steps 2.4. with those obtained in steps 3.20. They should be exactly the same.
4.2. Use the Terminal tool vbindiff to compare the model saved in step 2.5. with the model saved in 3.4. They should be different.
4.3. Use the Terminal tool vbindiff to compare the model saved in step 2.5. with the model saved in 3.15. They should be the same.

Important: Please save all model files, input datasets, results summary, and comparison observations in a results folder for record keeping and referencing purposes.

@Evridiki-ase I noticed that you included the ranger code into the OrbitAI repo. Just an early warning that eventually this will have to be done as a "git submodule" rather than copy and pasting ranger repo files directly to the repo. To prepare for this, I have forked the ranger repo and created an orbitai branch, here: https://github.com/georgeslabreche/ranger
You can choose to do this now or wait until you tackle this issue. However, keep in mind that if you wait you will have to redo all the changes you have done and will be doing so that they are instead included in the forked repo of ranger.

@Evridiki-ase lemme know what you want me to do with the re-assignment.

@Evridiki-ase please don't delete this comment, we need it for record keeping on how to proceed since we can't rely on memory. If there are concerns then it's best to record them as responses to the comment so that we can take them into account moving forward and not suffer from missing information. I've reinstated the original comment here:
@Evridiki-ase lemme know what you want me to do with the re-assignment. Until I get some instructions I'll assume it's for me to review so here are my notes on that aspect with the issue assigned back to you for clarification:

In your README's usage section I see that you are using the same dataset for training and prediction. This should be two separate datasets as per points 1, 2.2 and 2.3 in the "Verifying the save and load functionalities" section of this issues' description. I don't know if this is something that's only in the README or if you used the same dataset for verifying the save and load functionalities so let's clarify. In the ideal world we we would use separate datasets for training, validation, and testing but for the scope of our work and timeline constraints we can settle with just separate training and testing datasets.

In your README I noticed that you have a training_ranger.csv file in ../training/mochi-2021-04-16_18-28-31/logs/ but no such file was committed to the repo so I cannot go through the instructions. That being said, that training_ranger.csv file should not be located in the ../training/mochi-2021-04-16_18-28-31/logs/ directory. This is because the results folder is an exclusive archive for all experiment result data that we downlinked from the spacecraft and as such it should not be tampered with because it serves both for record keeping and as a reference to work unrelated to the exploration that you're doing with ranger. We should instead organize everything withing a dedicated ranger directory which contains a git submodule folder to the ranger repo, as described here. By way of example, consider the Mochi folder which has the MochiMochi @ ba8574e gitsubmodule folder and the test_data folder with the training and test datasets that we use to analyze the algorithm and models with custom code that we have in the tools folder.

@Evridiki-ase please don't delete this comment, we need it for record keeping on how to proceed since we can't rely on memory. If there are concerns then it's best to record them as responses to the comment so that we can take them into account moving forward and not suffer from missing information. I've reinstated the original comment here:
@Evridiki-ase lemme know what you want me to do with the re-assignment. Until I get some instructions I'll assume it's for me to review so here are my notes on that aspect with the issue assigned back to you for clarification:

In your README's usage section I see that you are using the same dataset for training and prediction. This should be two separate datasets as per points 1, 2.2 and 2.3 in the "Verifying the save and load functionalities" section of this issues' description. I don't know if this is something that's only in the README or if you used the same dataset for verifying the save and load functionalities so let's clarify. In the ideal world we we would use separate datasets for training, validation, and testing but for the scope of our work and timeline constraints we can settle with just separate training and testing datasets.

In your README I noticed that you have a training_ranger.csv file in ../training/mochi-2021-04-16_18-28-31/logs/ but no such file was committed to the repo so I cannot go through the instructions. That being said, that training_ranger.csv file should not be located in the ../training/mochi-2021-04-16_18-28-31/logs/ directory. This is because the results folder is an exclusive archive for all experiment result data that we downlinked from the spacecraft and as such it should not be tampered with because it serves both for record keeping and as a reference to work unrelated to the exploration that you're doing with ranger. We should instead organize everything withing a dedicated ranger directory which contains a git submodule folder to the ranger repo, as described here. By way of example, consider the Mochi folder which has the MochiMochi @ ba8574e gitsubmodule folder and the test_data folder with the training and test datasets that we use to analyze the algorithm and models with custom code that we have in the tools folder

@TanguySoto I've unassigned @Evridiki-ase since she doesn't have capacity for the ranger related tasks anymore. As such I've removed all ranger related issues from the milestones until we've discussed how to include them (if possible) in our deliverable.

Housekeeping notes on leftover issues we need to look into when moving forward:

The ranger code was directly copy and pasted in the repo. A "git submodule" should be used instead. To prepare for this, I have forked the ranger repo and created an orbitai branch, here: https://github.com/georgeslabreche/ranger
I got clarification from @Evridiki-ase that I was looking at the wrong place for the ../training/mochi-2021-04-16_18-28-31/logs/ referred to in the second point of this comment and the path is from within the cpp_version folder. The file in question is here.
Although save/load has been documented, we need to create test data and run predictions on it in order to complete the validation of the ranger library. See point 1 of this comment.
It's not clear yet if procedure 3 in the "Verifying the save and load functionalities" section of this issue's description is relevant to Random Forest or not. TBD.

Need to implement prediction for a given data sample rather than just batch predictions from reading a CSV file. Suggested command parameters:
./OrbitAI_ranger --verbose --includevars PD1,PD2,PD3,PD4,PD5,PD6,LABEL --input 0.01,0,1.12,0.29,0,0.02,1 --predict ranger_out.forest
./OrbitAI_ranger --verbose --includevars PD1,PD2,PD3,PD4,PD5,PD6,LABEL --input 0.01,0,0.28,0.2,0.01,1.16,0 --predict ranger_out.forest

Reduced initial scope of work in favor of implementing this requirement.


Possibility to bind connection to local interface: ticket #2578

This patch implements possibility to specify source IP in s_client from which connection should be made. Feature is useful in case when machines has many network interfaces and user wants to make connection from interface that is not used by default.

Putting this on hold.  It's a nice extra feature, but we're not in a stage to add it right now.  Sorry it took so long to even react.

Ok, Thanks for info.
On 04/05/16 19:07, Richard Levitte wrote:

Putting this on hold. It's a nice extra feature, but we're not in a
stage to add it right now. Sorry it took so long to even react.
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/openssl/openssl/pull/113#issuecomment-216934015

Please get this in already

I'd definitely like to see it.

It won't happen for 1.1, sorry. :(  It also needs to be ported and rebase onto that codebase.

https://github.com/yongboy/bindp let me workaround the lack of -bind.

I have been working around this missing feature for several years (at least 5) now, with xinetd/netcat or other trics. And this time I wanna use openssl s_client with bind from a bash script, so i guess I'll have to use bindp as suggested by bdrewery. :(

Let me know if you need help with merge

@flowher if you can open a new rebased PR, that would help.

@pprindeville thanks, I agree
@richsalz OK, I'll rebase and open new PR

There is no need to open a new one, just rebase and force a push to this branch.

So, errr, what's happening with this?  @flowher, did you end up making a different PR or did you just not get around to rebasing and pushing here?
This is suitable to get into master at the very least.

(note that a rebase will be a bit of work, since the source code format has changed)

Wasn't @kroeckx also looking at this?  Over in the RT pile?

This can be closed. Rebase was pretty much impossible. It needs new implementation. I've something but I need to test it still (sorry for delay but no time at a moment)

Wouldn't it be better if we could do this in a portable way at the BIO level instead of having to do low level stuff in apps?

Is such feature needed at BIO level?

This can be closed. Rebase was pretty much impossible. It needs new implementation. I've something but I need to test it still (sorry for delay but no time at a moment)

Okie.  Thank you for your effort

It has taken very long to get this small functionality in. Would really like to see this get in.

@amatai, can you contribute a patch?


Adjust docs and more internal code for Python 3.

Now we have python for Python 3 and python@2 for Python 2 some more adjustments need to be made.

I fixed a brew doctor complaint related to this transition in #3861. Do you want to fold that in here?

As described by @ilovezfs https://github.com/Homebrew/homebrew-core/issues/24792#issuecomment-370152799 , the Caveats could include the PATH changes that the user must apply in order to keep the system python, since the homebrew python package is not compatible.


Consider rename observable symbol $$observable => observable

Actual behavior:
I use transform-es2015-modules-umd  Babel plugin. And I need to map import {$$observable} from 'rxjs/symbol/observable';
Observable symbol is exported as Rx.Symbol.observable but exported symbol from rxjs/symbol/observable is called $$observable. Because symbols have different names I cannot just map it like "rxjs/symbol/observable": "Rx.Symbol"
Expected behavior:
I see 3 possible solutions:

Rename $$observable => observable so it will be possible to do "rxjs/symbol/observable": "Rx.Symbol"
export $$observable from Rx as is => Rx.$$observable
export $$observable from Rx.Symbol => Rx.Symbol.$$observable

I can also accomplish it by changing import import {$$observable} from 'rxjs/symbol/observable';  => import {Symbol} from 'rxjs/Rx';  but I don't want to import the whole lib :)

@benlesh can you take a look please? async pipe is broken for rollup users because of this.
the simplest none breaking solution would be
export const $$observable = getSymbolObservable(root);
export const observable = $$observable;

@DzmitryShylovich Ugh. I see the problem.  There's no way to detect if someone is using the "wrong" one via direct import, AFAICT.

@benlesh I submitted a pr https://github.com/ReactiveX/rxjs/pull/2435
please take a look when you have time. thanks

ping @benlesh it also affects es5 users :)


Parse excel

you could write thisfile = Path(file).absolute() and then downloadUrl=f"file://{thisfile}",

Yes, that is possible, but I want to refer to the .xlsx file instead of the python script itself.

I tried to run the test with pytest locally, but this dit not work:

      filename = Path("/" + self.download_config.downloadUrl.host + str(filename))

E           TypeError: can only concatenate str (not "NoneType") to str
It might be an error in my installation, but I think we should add proper automatic testing from the start.

@francescalb
This was a workaround I included because the CI/CD workflow failed on Linux without it. When I pushed the unit tests in oteapi-core it worked in the CI/CD. But Jesper found a problem, and Casper then made an issue (#74) which is still not resolved (waiting for PR #81 to be merged).
The CI/CD run Ubuntu. Could it be that the issue is on Fedora? That would explain why you and Jesper are having problems, while the CI/CD aren't.

@francescalb This was a workaround I included because the CI/CD workflow failed on Linux without it. When I pushed the unit tests in oteapi-core it worked in the CI/CD. But Jesper found a problem, and Casper then made an issue (#74) which is still not resolved (waiting for PR #81 to be merged).
The CI/CD run Ubuntu. Could it be that the issue is on Fedora? That would explain why you and Jesper are having problems, while the CI/CD aren't.

But there is no automatic CI/CD in this repo?

Not yet, but there should be!
We could copy (some of) the workflows from oteapi-core and adapt them to this repository.

@francescalb This was a workaround I included because the CI/CD workflow failed on Linux without it. When I pushed the unit tests in oteapi-core it worked in the CI/CD. But Jesper found a problem, and Casper then made an issue (#74) which is still not resolved (waiting for PR #81 to be merged).
The CI/CD run Ubuntu. Could it be that the issue is on Fedora? That would explain why you and Jesper are having problems, while the CI/CD aren't.

But there is no automatic CI/CD in this repo?

My point was that the error message in your comment above is from a file in oteapi-core, and there there are CI/CD workflows.

Thank you for the explanation. I was a bit confused.


#4833 - Support rendering multiple ketcher editors on a page without an iframe

How the feature works? / How did you fix the issue?
(Screenshots, videos, or GIFs, if applicable)
Add a ketcherId so that multiple ketcher instances can be added to the same page without using an iframe. Instead of binding each ketcher instance to the iframe, they can now be stored in the React state and easily accessed to obtain the data.
Check list

[ ] unit-tests written
[ ] e2e-tests written
[ ] documentation updated
[ ] PR name follows the pattern #1234 – issue name
[ ] branch name doesn't contain '#'
[ ] PR is linked with the issue
[ ] base branch (master or release/xx) is correct
[ ] task status changed to "Code review"
[ ] reviewers are notified about the pull request

@rrodionov91 Is there anything else you need from me here?

Hi @ihuang8
Thank you for fixing this issue.
Really appreciate it.


NAT port forwarding rules not created correctly when using interface group

OPNsense 19.7.a_442-amd64
FreeBSD 11.2-RELEASE-p9-HBSD
OpenSSL 1.0.2r 26 Feb 2019
I have system with two WAN interfaces with separate IP addresses. WAN interfaces are grouped into one WAN firewall group (NOTE: WAN is not a real interface)
Interface assignment:

em0 - WAN1
em1 - WAN2
bge0 - LAN

I want to use one port forwarding rule to work on both WAN IP addressees.
The rule I'm using is simple:
Firewall --> NAT --> Port Forward:

Interface:  WAN
IPv4, TCP/UDP
Destination: WAN net
Destination port range: 18080 - 18090
Redirect target IP: Single host or Network <IP_ADDRESS>
Redirect target port: 18080
Firewall --> Settings --> Advanced
Reflection for port forwards ENABLED
Automatic outbound NAT for Reflection ENABLED
Static route filtering (Bypass firewall rules for traffic on the same interface) ENABLED

Tests:

external host --> WAN1_IP:18083 TCP works as expected
external host --> WAN2_IP:18083 TCP - NOT WORKING

connection is successfully forwarded from WAN2_IP into LAN <IP_ADDRESS>, but response from <IP_ADDRESS> is send using wrong WAN interface: Packet with WAN2_IP is sent using WAN1 interface.

LAN host <IP_ADDRESS> --> WAN1_IP:18083 TCP - NOT WORKING
* traffic from LAN IP <IP_ADDRESS> to WAN1_IP is redirected to <IP_ADDRESS>, withhout changing source adddress, so <IP_ADDRESS> responds directly to <IP_ADDRESS>, which is incorrect
LAN host <IP_ADDRESS> --> WAN2_IP:18083 TCP - NOT WORKING

like above

When I create two rules (for each WAN interface) everything works perfectly.
I can see that some rules are missing comparing to working rule.
Not working rules created for interface group WAN
rdr on WAN inet proto tcp from any to (WAN:network) port 18080:18090 -> <IP_ADDRESS> port 18080:18090
rdr on WAN inet proto udp from any to (WAN:network) port 18080:18090 -> <IP_ADDRESS> port 18080:18090
rdr on bge0 inet proto tcp from any to (WAN:network) port 18080:18090 -> <IP_ADDRESS> port 18080:18090
rdr on bge0 inet proto udp from any to (WAN:network) port 18080:18090 -> <IP_ADDRESS> port 18080:18090
pass in quick on WAN inet proto tcp from any to <IP_ADDRESS> port 18080:18090 flags S/SA keep state label "3d902b1e4f999ab27539984627212efd"
pass in quick on WAN inet proto udp from any to <IP_ADDRESS> port 18080:18090 keep state label "3d902b1e4f999ab27539984627212efd"

Working rules created for real WAN1 interface (em0).
nat on em0 inet proto tcp from (em0:network) to <IP_ADDRESS> port 18080:18090 -> { WAN1_IPs } port 1024:65535 round-robin
nat on em0 inet proto udp from (em0:network) to <IP_ADDRESS> port 18080:18090 -> { WAN1_IPs } port 1024:65535 round-robin
nat on bge0 inet proto tcp from (bge0:network) to <IP_ADDRESS> port 18080:18090 -> <IP_ADDRESS> port 1024:65535
nat on bge0 inet proto udp from (bge0:network) to <IP_ADDRESS> port 18080:18090 -> <IP_ADDRESS> port 1024:65535
rdr on em0 inet proto tcp from any to (WAN:network) port 18080:18090 -> <IP_ADDRESS> port 18080:18090
rdr on em0 inet proto udp from any to (WAN:network) port 18080:18090 -> <IP_ADDRESS> port 18080:18090
rdr on bge0 inet proto tcp from any to (WAN:network) port 18080:18090 -> <IP_ADDRESS> port 18080:18090
rdr on bge0 inet proto udp from any to (WAN:network) port 18080:18090 -> <IP_ADDRESS> port 18080:18090
pass in quick on em0 reply-to (em0 WAN1_GW ) inet proto tcp from any to <IP_ADDRESS> port 18080:18090 flags S/SA keep state label "c3cdc999fae8f21a3234b731d3349398"
pass in quick on em0 reply-to (em0 WAN1_GW ) inet proto udp from any to <IP_ADDRESS> port 18080:18090 keep state label "c3cdc999fae8f21a3234b731d3349398"

Additional, small issue (not really issue?):
I'm using multiwan setup, so I made a rule to route all LAN traffic to gateway group. This is in conflict with NAT reflection rules.
As workaround I've created Firewall-->Rules-->LAN to permit LAN to LAN traffic using default gateway.
I think this rule should be automatically generated when Firewall-->Settings-->Advanced:  Static route filtering (Bypass firewall rules for traffic on the same interface) is ENABLED.

To me this looks like a FreeBSD bug incorrectly resolving groups with the :network operator. It should be reported here https://bugs.freebsd.org/bugzilla/

This issue has been automatically timed-out (after 180 days of inactivity).
For more information about the policies for this repository,
please read https://github.com/opnsense/core/blob/master/CONTRIBUTING.md for further details.
If someone wants to step up and work on this issue,
just let us know, so we can reopen the issue and assign an owner to it.


Create floyydwarshal.cpp

ATTENTION 🚨🚨🚨
Don’t Forget To Follow Me On Github , and Add Your Name In _contributing.md if not found your name in _contributing.md it should be Labelled as SPAM.
STAR 🌟 this REPO for future HacktoberFest.

DSA's are strictly prohibited


Support kubectl v1.11.0

What this PR does / why we need it:
This PR adds support for kubectl version v1.11.0.
The KUBERNETES_EXEC_INFO environment variable is set with kubectl versions starting with v1.20.0, see also https://kubernetes.io/docs/reference/access-authn-authz/authentication/#configuration for more information.
To also support kubectl versions starting with v1.11.0, the plugin does not require the KUBERNETES_EXEC_INFO environment variable to be set. In this case, the shoot refence and garden cluster identity have to be passed as arguments.
One downside of supporting older kubectl versions is, that the KUBERNETES_EXEC_INFO environment variable is not set which contains the cluster information. This means that the plugin can't ensure that the cluster.server and cluster.ca certificate match with the cluster.server and cluster.ca from the kubeconfig returned by the shoot/adminkubeconfig subresource.
Which issue(s) this PR fixes:
Fixes #
Special notes for your reviewer:
Release note:

Supports `kubectl` `v1.11.0`. For `kubectl` versions older `v1.20.0` the shoot reference and garden cluster identity have to be passed as arguments to the plugin, see [example/02-kubeconfig.yaml](https://github.com/gardener/garden-login/tree/master/example/02-kubeconfig.yaml)

/invite @xrstf


Update index.html

Where is the 16x16 solver?

I need to add a File

Okay, no need to raise a pull request for every file added, after you have finished implementing it, raise 1 single request.