Compiler compiles schema that contains references to non-existent relations

This schema shouldn't compile since it contains a reference to a non-existent relation (parent->editor):
definition user {}

definition workspace {
	relation editorr: user
}

definition my_object {
	relation parent: workspace
	permission edit = parent->editor
}

Here's an example code and a proof of concept validation workaround for our specific usecase that checks if the compiled schema contains invalid references. It uses github.com/authzed/spicedb v1.21.0. Couldn't run it in go playground so just pasted the code here:
package main

import (
	"context"
	"fmt"

	"github.com/authzed/spicedb/pkg/development"
	"github.com/authzed/spicedb/pkg/namespace"
	corev1 "github.com/authzed/spicedb/pkg/proto/core/v1"
	devinterface "github.com/authzed/spicedb/pkg/proto/developer/v1"
	v1 "github.com/authzed/spicedb/pkg/proto/impl/v1"
	"github.com/authzed/spicedb/pkg/schemadsl/compiler"
	"golang.org/x/exp/slices"
)

func testValidSchema() {
	defer func() {
		if r := recover(); r != nil {
			fmt.Println(r)
		}
	}()

	validSchema := compileSchema(`
definition user {}

definition workspace {
	relation editor: user
}

definition my_object {
	relation parent: workspace
	permission edit = parent->editor
}
`)

	fmt.Println(validatePermissions(validSchema))
}

func testInvalidSchema() {
	defer func() {
		if r := recover(); r != nil {
			fmt.Println(r)
		}
	}()

	invalidSchema := compileSchema(`
definition user {}

definition workspace {
	relation editorr: user
}

definition my_object {
	relation parent: workspace
	permission edit = parent->editor
}
`)

	fmt.Println(validatePermissions(invalidSchema))
}

func main() {
	testValidSchema()
	testInvalidSchema()
}

func compileSchema(schema string) *compiler.CompiledSchema {
	devCtx, devErrs, err := development.NewDevContext(context.Background(), &devinterface.RequestContext{
		Schema: schema,
	})

	if err != nil {
		panic(err)
	}

	if devErrs != nil {
		panic(devErrs.String())
	}

	defer devCtx.Dispose()

	return devCtx.CompiledSchema
}

func validatePermissions(sch *compiler.CompiledSchema) error {
	for _, definition := range sch.ObjectDefinitions {
		for _, rel := range definition.Relation {
			if namespace.GetRelationKind(rel) == v1.RelationMetadata_PERMISSION {
				var sop *corev1.SetOperation

				switch op := rel.UsersetRewrite.RewriteOperation.(type) {
				case *corev1.UsersetRewrite_Union:
					sop = op.Union
				case *corev1.UsersetRewrite_Intersection:
					sop = op.Intersection
				case *corev1.UsersetRewrite_Exclusion:
					sop = op.Exclusion
				default:
					panic(fmt.Sprintf("invalid operation %q", op))
				}

				// Validate that relations/permissions that are referred through parent relation
				// really exist on the parent.
				for _, child := range sop.Child {
					switch c := child.ChildType.(type) {
					case *corev1.SetOperation_Child_TupleToUserset:
						if c.TupleToUserset.Tupleset.Relation == "parent" {
							relation := c.TupleToUserset.ComputedUserset.Relation

							parentNamespace := getParentNamespace(sch, definition.Name)
							rels := getRelations(sch, parentNamespace)

							// Assert parent has that relation/permission.
							if !slices.Contains(rels, relation) {
								panic(fmt.Sprintf("validation error: unknown relation parent->%s", relation))
							}
						}
					default:
						panic(fmt.Sprintf("unsupported set operation child type %q", c))
					}
				}
			}
		}
	}

	return nil
}

func getRelations(sch *compiler.CompiledSchema, ns string) []string {
	var rels []string

	for _, definition := range sch.ObjectDefinitions {
		if definition.Name == ns {
			for _, rel := range definition.Relation {
				switch namespace.GetRelationKind(rel) {
				case v1.RelationMetadata_PERMISSION:
					rels = append(rels, rel.Name)
				case v1.RelationMetadata_RELATION:
					rels = append(rels, rel.Name)
				}
			}
		}
	}

	return rels
}

func getParentNamespace(sch *compiler.CompiledSchema, ns string) string {
	var def *corev1.NamespaceDefinition

	for _, definition := range sch.ObjectDefinitions {
		if definition.Name == ns {
			def = definition
			break
		}
	}

	if def == nil {
		panic(fmt.Sprintf("unknown namespace %q", ns))
	}

	for _, rel := range def.Relation {
		if namespace.GetRelationKind(rel) == v1.RelationMetadata_RELATION && rel.Name == "parent" {
			parent := rel.TypeInformation.GetAllowedDirectRelations()
			if len(parent) != 1 {
				panic("only one parent allowed")
			}

			return parent[0].Namespace
		}
	}

	panic(fmt.Sprintf("no parent found for namespace %q", ns))
}

The output of this example:
<nil>
validation error: unknown relation parent->editor

EDIT: Adding a playground link that I believe should show an error: https://play.authzed.com/s/-QEqFJNe5HZX/schema

@mgnsk: This is working as intended, at least right now
Arrows in SpiceDB are somewhat dynamic in nature: Since a relation can point to subjects of different types, and those types may or may not contain the relation/permission to which the arrow refers, the use of an arrow over a relation to a non-existent permission/relation won't raise an error because it may only apply to a subset of the relation's target subject types.
Consider this example:
definition user {}

definition organization {
  relation admin: user
}

definition resource {
  relation viewer: user | organization
  permission view = viewer + viewer->admin
}

while the above example is not the best example, it is valid... yet user does not have an admin relation/permission; only organization does. This "dynanism" around arrows is a core detail of arrows in the Zanzibar model.
Now, I do agree that if the arrow operates over a relation that has no subjects with the associated target relation/permission, we probably should raise some sort of error: this is referenced in the lint/warnings issue: https://github.com/authzed/spicedb/issues/8
I hope this makes sense?

while the above example is not the best example, it is valid... yet user does not have an admin relation/permission; only organization does. This "dynanism" around arrows is a core detail of arrows in the Zanzibar model.

Is the following example equivalent to yours? It uses "strict typing" by specifying relations as a set of "users" (in other systems may be "subject sets") and never mixing different "types" of definitions:
definition subject/user {}

definition object/organization {
  relation admin: subject/user
}

definition object/resource {
  relation viewer: subject/user | object/organization#admin

  permission view = viewer
}

Now, I do agree that if the arrow operates over a relation that has no subjects with the associated target relation/permission, we probably should raise some sort of error: this is referenced in the lint/warnings issue: #8
I hope this makes sense?

Yeah, I guess a linter is exactly what I was looking for so that a strict subset of the schema language can be enforced.

Is the following example equivalent to yours?

Yep and would likely be the preferable approach (or use a distinct relation for the organization)

Yeah, I guess a linter is exactly what I was looking for so that a strict subset of the schema language can be enforced.

Yep. I might still make this into an actual error, but we can only be strict in the case where there are zero found relations for the arrow. Otherwise, we can merely hope to catch a spelling mistake :/

Yep and would likely be the preferable approach (or use a distinct relation for the organization)

And that's what were doing by using the parent relation. This lets us keep relations and permissions fairly separated and have a separate read/write model where relations are only ever written and permissions are read/checked.
definition subject/user {}

definition object/organization {
  relation admin: subject/user
}

definition object/resource {
  relation parent: object/organization
  relation viewer: subject/user

  permission view = parent->admin + viewer
}

Yep. I might still make this into an actual error, but we can only be strict in the case where there are zero found relations for the arrow. Otherwise, we can merely hope to catch a spelling mistake :/

I definitely agree with this. If there are zero found relations, this is definitely an error that should fail.


Historical Committee assignments

Great work here, such an excellent source. I was curious about the possibility of keeping historical committee assignments for legislators from their previous terms. As I understand only current committee assignments are housed here. Anyone have thoughts on this?

Just popping in to say I'm finding this thread helpful in our latest Cong. research, thanks all.
If anyone has a lead on historical member data with subcommittee affiliations, it would be of interest to us, but parent committees are a good start.
Also, I see this has been a recent request again, in issue #522 - maybe this is an area of wider interest for re-use.

The Congressional Directory was mentioned earlier, but I was looking it over so I thought I'd post more information:

There is plain-text from GPO going back to 1997: https://www.govinfo.gov/app/collection/cdir
Some Congresses have more than one update.
Recent years seem to only have Senate membership (but we have recent years from other sources).
Some years seem to have subcommittees.

I started writing some code before deciding parsing the plain text would be too hard to get done any time soon, but here's some code to pull down the text files:
import json
import urllib.request

def walk_directory(url):
	print(url + "...")
	directory = json.loads(urllib.request.urlopen(url + "?fetchChildrenOnly=1").read().decode("utf8"))
	for node in directory["childNodes"]:
		if node["nodeValue"]["level"] == 3 and node["nodeValue"].get("displayValue", "") != "Committee Assignments":
			# Skip nodes that don't have committee assignments within them.
			pass
		elif "value" in node["nodeValue"]:
			# Recursively go into this node.
			walk_directory(url + "/" + node["nodeValue"]["value"])
		elif re.match("ASSIGNMENTS OF (SENATORS|REPRESENTATIVES) TO COMMITTEES", node["nodeValue"].get("title", "")):
			# This holds committee assignments!
			parse_committee_assignments(node["nodeValue"]["packageid"], node["nodeValue"]["textfile"])

walk_directory("https://www.govinfo.gov/wssearch/rb/cdir")


Add support for dual loading

Allows loading the agent library either as a JVM agent or as a normal native library.
Includes several refactorings that "just happened". These include changes to make initialization more straightforward, but also changes that split off bits from the single ubench.h include file.
This is supposed to be merged on top of #11.

The windows tests are somewhat fragile, e.g., I saw a failure in a test that measures the thread time of a busy thread and got lower value than expected (7 instead of 8 seconds), and another case where the JVM did not compile anything in mixed mode. I currently don't see anything in the code that should cause it and both failures have a tendency to disappear when rerunning the tests :shrug:

The windows tests are somewhat fragile, e.g., I saw a failure in a test that measures the thread time of a busy thread and got lower value than expected (7 instead of 8 seconds), and

Probably we can relax the tests because the CI machines can behave weirdly (might there be an issue in the underlying clock even?).

another case where the JVM did not compile anything in mixed mode. I currently don't see anything in the code that should cause it and both failures have a tendency to disappear when rerunning the tests shrug

This sounds strange but it happened spuriously to me too.
Probably safe to ignore both.


Minimum event height isn't honoured when editing an event

To make sure the minimumEventHeight is also obeyed when editing an event.
It has one caveat which I'd like to see fixed as well (which I will do) and that is that the minimum event duration is now dependent on the smallest size the element can get. Ideally the duration would be able to go smaller (e.g. to 5 minutes) while the event stays the minimum height.
@howljs what do you think?

If using minimumEventHeight and current timeIntervalHeight is too small, it will not be able to edit the time according to dragStep

Updated in v2.0.0


Fix off-by-one error in counting the number of messages

Don't count the @metadata block in the number of messages.

Ping?


Bus error. It is possible that dataloader's workers are out of shared memory. Please try to raise your shared memory limit

Steps:   0%|▏                                                                                | 1/800 [00:17<3:57:13, 17.81s/it, lr=5e-5, step_loss=0.0114]ERROR: Unexpected bus error encountered in worker. This might be caused by insufficient shared memory (shm).
ERROR: Unexpected bus error encountered in worker. This might be caused by insufficient shared memory (shm).
Traceback (most recent call last):
File "/usr/local/lib/python3.10/dist-packages/torch/utils/data/dataloader.py", line 1132, in _try_get_data
data = self._data_queue.get(timeout=timeout)
File "/usr/lib/python3.10/multiprocessing/queues.py", line 113, in get
if not self._poll(timeout):
File "/usr/lib/python3.10/multiprocessing/connection.py", line 257, in poll
return self._poll(timeout)
File "/usr/lib/python3.10/multiprocessing/connection.py", line 424, in _poll
r = wait([self], timeout)
File "/usr/lib/python3.10/multiprocessing/connection.py", line 931, in wait
ready = selector.select(timeout)
File "/usr/lib/python3.10/selectors.py", line 416, in select
fd_event_list = self._selector.poll(timeout)
File "/usr/local/lib/python3.10/dist-packages/torch/utils/data/_utils/signal_handling.py", line 66, in handler
_error_if_any_worker_fails()
RuntimeError: DataLoader worker (pid 1884) is killed by signal: Bus error. It is possible that dataloader's workers are out of shared memory. Please try to raise your shared memory limit.
GPU 16Gx2 . docker安装。这个是指gpu不够吗？最少需要多大的？

根据您的log，看起来是运行内存不够，导致训练的dataloader的workers 开多了就OOM挂了，我们似乎默认的dataloader的workers 是1。我确认一下，如果是的话，那就是你的内存太小，需要clean一下机器其他的进程和内存。

dataloader num workers ，这个参数windows 默认是0也就是1， linux开的16， 如果你是linux 可以调小这个数字到2，4 试试

CPU OOM closed

dataloader num workers ，这个参数windows 默认是0也就是1， linux开的16， 如果你是linux 可以调小这个数字到2，4 试试

没有用，我修改为 2 一样报错

CPU OOM closed

这个指的是什么？


hashbag for large bags

This avoids a huge performance collapse when there are many values for a
given key and the user wants to remove one. We do this by switching
large values over to a hashbag for backing storage. This change means
that users no longer get a &[V], but instead a &Values<V>, and also
that we require V: Hash + Eq.
With this change, I also made smallvec non-optional.
I also replaced the awkward mem::forget code with ManuallyDrop which
seems like a much safer approach. The failure mode is now memory leaks
rather than double-frees, which seems like a huge win.

Checked manually that miri passes on rustc 1.43.0-nightly (58b834344 2020-02-05).

miri still passes on a slightly older nightly where it is present.


Can you provide the pretrained word embeddings?

Very interesting work. Can you provide the pretrained word embeddings (as GloVe does)? So that readers can use it without re-training.

Hi Chen,
Thanks for your suggestions. We have released the pre-trained embeddings whose links can be found in the README file of the repo. Please let me know if you have any further concerns/questions!
Best,
Yu


Cost

So the memory cost is 1 bit or what.

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

ID: cfcc3e5e-dc3b-433d-71d8-e92c462e1b02
Version Independent ID: 80e8f0fc-4d4c-925f-0f1f-2038a5a3c24d
Content: bool type - C# reference
Content Source: docs/csharp/language-reference/builtin-types/bool.md
Product: dotnet-csharp
Technology: csharp-language-reference
GitHub Login: @BillWagner
Microsoft Alias: wiwagn

I don't think that any data type can take memory of "bits", Any data type will always be a byte and multiple of bytes. Referring to the table in sizeof operator article, It says that bool takes one byte.

As @Youssef1313 states, the sizeof operator will give the correct answer here. We won't update this article, because the memory storage can depend on the natural boundaries for the machine CPU, and can be manipulated with some attributes.
Closing as answered.


⚠ Bofrost.be has degraded performance

In 36f508c, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 1234 ms

Resolved: Bofrost.be performance has improved in f4fe717 after 26 minutes.


silx.gui.plot.PlotWidget: Updated plot axes tick labels with matplotlib backend

This PR changes the configuration of matplotlib tick label ScalarFormatter to enable offset, scientific notation and math text to format tick labels.
The behavior of the formatter has changed over time and here are some examples of the behavior as of today: no offset/scientific notation | scientific notation only around 0 | ofset + scientific notation

Related to #3997

If mpl switch automatically for us, it's fine for me.
It's anyway better than having the same labels in the axis.

Added: using the same Formatter class for OpenGL backend, so the plot tick labels and order of magnitude+offset text behaves the same for both matplotlib and OpenGL backends.

NIce :+1:

Updated to fix an issue when switching linear/log scale, the "formatter" was not correctly updated (this issue was there before this PR).

Ready for review


update docs and more for 0.5

Codecov Report
Attention: 3 lines in your changes are missing coverage. Please review.

Comparison is base (ed7e3f1) 96.42% compared to head (af51cab) 97.10%.

Files
Patch %
Lines

src/rand.jl
92.30%
2 Missing :warning:

src/groups.jl
90.90%
1 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #51      +/-   ##
==========================================
+ Coverage   96.42%   97.10%   +0.67%
==========================================
  Files           5        6       +1
  Lines         112      138      +26
==========================================
+ Hits          108      134      +26
  Misses          4        4

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Test case for ODF data containing characters disallowed in XML.

Bug fix will be in external ODF library, to follow. (Tests won't pass here until we update our dependencies.)
https://trello.com/c/EgBoNeW9/145-certain-control-characters-in-suppliers-evidence-corrupts-the-ods-that-buyers-download

Merged PR https://github.com/alphagov/odfpy/pull/1 to 1718e4c4a5c3e3b3d7ed6d93393f83a6542e5865

Oh god I forgot the dep updates have to trickle in through -utils...

Yeah, there seems to be some disagreement amongst pip contributors about how to handle this case. Investigating...


[Suggestion]: Create Diving Helmets and Backtank support.

Suggestion (Required)
Hi first off I just wanna say thank yall so much for updating Miners Lung for 1.19.2 with the Thin Air mod, it's one of my favorites for added difficulty to mining. I do have a little suggestion though that would make it a lot better, there was an addon for the 1.18.2 version called Copper Lung which added functionality to Create's diving helmet and copper backtank to activate when in unbreathable areas, I was hoping maybe you could take a look at it and maybe incorporate it into Thin Air as well? Maybe with support for create's netherite diving helmet and backtank as well!
Addon: https://modrinth.com/mod/copper-lungs

Also add support for ad_astra + giselle addon please!

See https://modrinth.com/mod/create-air-forge and https://modrinth.com/mod/create-air-fabric.
For supporting further modded gear / mods please contact the authors of these mods.

But these mods are only for 1.19.2 and there is no compatibility for Create on 1.20.1.

But these mods are only for 1.19.2 and there is no compatibility for Create on 1.20.1.

My bad, forgot to upload the update on Modrinth too.


Error missing when calling a Go func that returns (interface{}, error)

When I call such a function from JavaScript, only the first return value is available. It seems that the second error value is discarded. Is this by design? How do I get that error?
P.S. Thank you for this amazing library!

If the last returned value is of type error, it is converted into a JS exception which can be caught. See TestGoFuncError for example.


[Designer] Missing property error showing on Data payload

Problem Description
When using the data payload on the designer the first curly brace shows an error on hover stating that properties "version" and "type" are missing. The error looks like this:

It seems to only be a visual error as the data payload is working as intended despite the error showing.
Card JSON
{
    "fallback": {
        "message": "No graph support. Guess we'll just use this textblock instead.",
        "size": "Large"
    }
}

This is due to the Adaptive Cards schema being applied to the sample data editor. This happens because we're sharing the same configuration across both:
https://github.com/microsoft/AdaptiveCards/blob/4e987c5fbdd9725f9b769efc1c62af022a14e945/source/nodejs/adaptivecards-designer/src/card-designer.ts#L1143-L1153
(the fix would be to not do that)
IIRC @anna-dingler has a bug she's working on in the vicinity of this as well (see #7537)


Thank you!

Not really an issue. Just wanted to write to say THANK YOU for publishing this. I've been testing all available plugins for days and even tried to fix one that look promising, but yours is the only one which actually works as intended (reading .phpcs.xml on the folder with no extra configurations).
👏🎉👏🎉👏🎉👏

@eruizdechavez
welcome. hopefully it serves u well 😁


Node.setLevel(...) does not have any effect if the Node was already added

In the following code, Node ("13") was added to the NeworkDiagram before setting its level using setLevel(2). However, it doesn't get displayed at Level 2.
	Options o = new Options();
	HierarchicalLayout h = new HierarchicalLayout();
	h.setEnabled(true);
    h.setDirection(Direction.UD);
	o.setHierarchicalLayout(h);
	NetworkDiagram nwd = new NetworkDiagram(o);
	Node n;
	n = new Node("00", "Root");
	n.setLevel(1);
	nwd.addNode(n);
	n = new Node("11", "One One");
	n.setLevel(2);
	nwd.addNode(n);
	n = new Node("12", "One Two");
	n.setLevel(2);
	nwd.addNode(n);
	n = new Node("13", "One Three");
	nwd.addNode(n);
	n.setLevel(2); // Problem here... Setting level to a Node that was already added, does not have any effect
	nwd.addEdge(new Edge("11", "00"));
	nwd.addEdge(new Edge("12", "00"));
	nwd.addEdge(new Edge("13", "00"));

well you have to update node to take effect.
On Fri, Jun 12, 2015 at 12:06 AM, syampillai<EMAIL_ADDRESS>wrote:

In the following code, Node ("13") was added to the NeworkDiagram before
setting its level using setLevel(2). However, it doesn't get displayed at
Level 2.
Options o = new Options();
HierarchicalLayout h = new HierarchicalLayout();
h.setEnabled(true);

h.setDirection(Direction.UD);
o.setHierarchicalLayout(h);
NetworkDiagram nwd = new NetworkDiagram(o);
Node n;
n = new Node("00", "Root");
n.setLevel(1);
nwd.addNode(n);
n = new Node("11", "One One");
n.setLevel(2);
nwd.addNode(n);
n = new Node("12", "One Two");
n.setLevel(2);
nwd.addNode(n);
n = new Node("13", "One Three");
nwd.addNode(n);
n.setLevel(2); // Problem here... Setting level to a Node that was already added, does not have any effect
nwd.addEdge(new Edge("11", "00"));
nwd.addEdge(new Edge("12", "00"));
nwd.addEdge(new Edge("13", "00"));
—
Reply to this email directly or view it on GitHub
https://github.com/sameeraroshan/visjs/issues/15.

Thanks Sameera, it works.


Using true/false as processes to return exit status 0/1

I would like to use the true and false binaries instead of a full blown ruby process just to return basic exit statuses.
But, I am not sure if there is an equivalent on Windows.
@MSP-Greg do you know if there are equivalent binaries that just return a success/failure exit status on standard Windows?
It's available on AppVeyor, but that seems a full mingw environment which is quite different:
https://ci.appveyor.com/project/eregon/windows-shell/build/29

Information here may be relevant?
https://stackoverflow.com/questions/22046780/whats-the-windows-command-shell-equivalent-of-bashs-true-command

@eregon

It seems there is no easy solution

As mentioned, using exit is probably the only way, but that requires a script.
The issue of the MinGW/MSYS2 environment's inclusion in Appveyor is the cause of one failure I have in test-all, as without usr/bin in the path, the test passes on windows.

@MSP-Greg Does
Process.wait spawn("exit 1")
p $?

works as expected in the Windows shell? (and the same with 0)
It works fine on AppVeyor but that's probably due to MinGW.

@eregon
Interesting.  I don't see any reference to msys or mingw in the appveyor log, but there is
/c/Program Files/Amazon/AWSCLI:/cmd:/usr/bin

Output from a msys2 bash shell:
$ /c/ruby25_64/bin/ruby -e "Process.wait spawn('exit 1') ; puts 'here' ; puts $?"
here
0

Output from a windows cmd window:
E:\>ruby -e "Process.wait spawn('exit 1') ; puts 'here' ; puts $?"
here
pid 6352 exit 1

I think in the msys2 bash shell, bash might have substituted the $? by 0, could you try with single quotes?
/c/ruby25_64/bin/ruby -e 'Process.wait spawn("exit 1") ; puts "here" ; puts $?'

But the fact it works on Windows' cmd window is a good sign, this seems portable :smiley:

I think in the msys2 bash shell, bash might have substituted the $? by 0, could you try with single quotes?

You are correct.  Sorry, kind of wondered about that, as I don't normally use the bash shell...
$ /c/ruby25_64/bin/ruby -e 'Process.wait spawn("exit 1") ; puts "here" ; puts $?'
here
pid 3064 exit 1

$ /c/ruby25_64/bin/ruby -e 'Process.wait spawn("exit 0") ; puts "here" ; puts $?'
here
pid 4568 exit 0


No registered resource provider found for location 'eastus2' and API version '2023-04-01T00:00:00Z' for type 'privateEndpoints'

Describe the bug
We are using policy to add the dns entries in to DNS zones and we are getting error all the time with all dns zones.
No registered resource provider found for location 'eastus2' and API version '2023-04-01T00:00:00Z' for type 'privateEndpoints'. The supported api-versions are '2019-02-01, 2019-04-01, 2019-06-01, 2019-07-01, 2019-08-01, 2019-09-01, 2019-11-01, 2019-12-01, 2020-01-01, 2020-03-01, 2020-04-01, 2020-05-01, 2020-06-01, 2020-07-01, 2020-08-01, 2020-11-01, 2021-01-01, 2021-02-01, 2021-03-01, 2021-04-01, 2021-05-01, 2021-06-01, 2021-08-01, 2021-12-01, 2022-01-01, 2022-05-01, 2022-07-01, 2022-09-01, 2022-11-01, 2023-02-01, 2023-04-01'. The supported locations are 'westus, eastus, northeurope, westeurope, eastasia, southeastasia, northcentralus, southcentralus, centralus, eastus2, japaneast, japanwest, brazilsouth, australiaeast, australiasoutheast, centralindia, southindia, westindia, canadacentral, canadaeast, westcentralus, westus2, ukwest, uksouth, koreacentral, koreasouth, francecentral, australiacentral, southafricanorth, uaenorth, switzerlandnorth, germanywestcentral, norwayeast, westus3, jioindiawest, swedencentral, qatarcentral, polandcentral'.

Related command
Azure
Errors
No registered resource provider found for location 'eastus2' and API version '2023-04-01T00:00:00Z' for type 'privateEndpoints'. The supported api-versions are '2019-02-01, 2019-04-01, 2019-06-01, 2019-07-01, 2019-08-01, 2019-09-01, 2019-11-01, 2019-12-01, 2020-01-01, 2020-03-01, 2020-04-01, 2020-05-01, 2020-06-01, 2020-07-01, 2020-08-01, 2020-11-01, 2021-01-01, 2021-02-01, 2021-03-01, 2021-04-01, 2021-05-01, 2021-06-01, 2021-08-01, 2021-12-01, 2022-01-01, 2022-05-01, 2022-07-01, 2022-09-01, 2022-11-01, 2023-02-01, 2023-04-01'. The supported locations are 'westus, eastus, northeurope, westeurope, eastasia, southeastasia, northcentralus, southcentralus, centralus, eastus2, japaneast, japanwest, brazilsouth, australiaeast, australiasoutheast, centralindia, southindia, westindia, canadacentral, canadaeast, westcentralus, westus2, ukwest, uksouth, koreacentral, koreasouth, francecentral, australiacentral, southafricanorth, uaenorth, switzerlandnorth, germanywestcentral, norwayeast, westus3, jioindiawest, swedencentral, qatarcentral, polandcentral'.
Issue script & Debug output
Azure
Expected behavior
Azure
Environment Summary
Azure Policy deployment
Additional context
No response

Thank you for opening this issue, we will look into it.


Issue on Build

Thanks for the great guide, when running the image for Docker on Synology, I on some persmission:
Running: sudo -u perforce /p4/1/bin/p4d_1 -r /p4/1/root -xi
Sorry, user root is not allowed to execute '/p4/1/bin/p4d_1 -r /p4/1/root -xi' as perforce on zhaojunmeng-sdp-perforce-server-for-unreal-engine1.

It seems "root" is not super user in your docker image.
The successful log seems like this:


poc with properties via config map

some output of what this does:
[gtully@gtully activemq-artemis-operator]$ kubectl exec ex-aao-ss-0 -n activemq-artemis-operator -- ls -lr /amq/extra/configmaps/broker-properties/broker.properties
Defaulted container "ex-aao-container" out of: ex-aao-container, ex-aao-container-init (init)
lrwxrwxrwx. 1 root root 24 Feb 14 15:37 /amq/extra/configmaps/broker-properties/broker.properties -> ..data/broker.properties
[gtully@gtully activemq-artemis-operator]$ kubectl exec ex-aao-ss-0 -n activemq-artemis-operator -- cat /amq/extra/configmaps/broker-properties/broker.properties
Defaulted container "ex-aao-container" out of: ex-aao-container, ex-aao-container-init (init)
generated by crd

globalMaxSize=512MB

added a system property via JAVA_OPTS to the init container to reference the mounted broker properties file to tie this together.

currently this configures a broker.properties independent of what is in the CR. it will be empty now by default. Any values form the CR brokerProperties map will override.
I am thinking that the operator may want to have some config in the broker.properties along with CR supplied values.
I guess the operator can track those in an internal map, would it make sense to expose those too in the CR?

yes, the intent is to have it readonly, such that there is no runtime overhead checking for updates. not all of the broker can support reload and those bits that can require a reload from xml to trigger the required work.
these properties are applied after xml loading or xml reloading!

working on the update scenario - have an issue with leaking config maps that I need to tidy.


Local: Queue full metrics

If you enable:
 config.SetKey("statistics.interval.ms", "5000")
and setup something to log the metrics you can view the blocking queue
In my case i adjusted the max.messages to allow 1000000 vs 100000
config.SetKey("queue.buffering.max.messages", "1000000")
 "msg_cnt":**182288**
 "msg_max":1000000

82288 over the normal queue capacity.
The problematic part of this queue is that if you ever reach it tsdb-gw stops publishing to kafka and never recovers. Unfortunately it also still reports as healthy.

I threw these into the logger on locally published build to look but this may be valuable to other users to have in a the tsdb-gw graphed statistics.

The metric_publisher currently enters a loop that does not exit until all delivery messages are received.

Ok, the issue is a race condition.
All messages in a batch are sent to the producer before we start to read from the deliveryChan.
If the librdkafka queue size is 100, but 101 metrics are sent in a single batch to metric_publish.Publish(), then the first 100 metrics will be queued, but the last one will be blocked as the queue is full.  The queue wont be drained until we start reading from the deliveryChan, but that will never happen was the full queue error causes an early return.
So the best solution here is to just make the deliveryChan buffered.


adding FWF export,

refactoring science europe template

refs #77606, #77607, #79403

currently hardcoded to export FWF document,
adaptive system still pending.

classes were renamed to better reflect their functionality.


Update Rawpixel image URLs for ingestion

Fixes
Related to #3573 by @fcoveram
Description

Update the image url preset used to avoid watermark images
add a thumbnail url to the metadata
select png preset when relevant.

Important: if the webp format is problematic, full_size_option can be replaced by image_1000 (its similar to image_social_landscape but doesn't imply orientation is a factor)
Ran the ingestion_server tests and catalog test locally.
Testing Instructions
Test the rawpixel image source are displayed properly and without watermark after ingestion.
Checklist

[x] My pull request has a descriptive title (not a vague title likeUpdate index.md).
[x] My pull request targets the default branch of the repository (main) or a parent feature branch.
[x] My commit messages follow best practices.
[x] My code follows the established code style of the repository.
[x] I added or updated tests for the changes I made (if applicable).
[ ] I added or updated documentation (if applicable).
[x] I tried running the project locally and verified that there are no visible errors.
[ ] I ran the DAG documentation generator (if applicable).

Developer Certificate of Origin

Developer Certificate of Origin
Developer Certificate of Origin
Version 1.1

Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
1 Letterman Drive
Suite D4700
San Francisco, CA, 94129

Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.

Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I
    have the right to submit it under the open source license
    indicated in the file; or

(b) The contribution is based upon previous work that, to the best
    of my knowledge, is covered under an appropriate open source
    license and I have the right under that license to submit that
    work with modifications, whether created in whole or in part
    by me, under the same open source license (unless I am
    permitted to submit under a different license), as indicated
    in the file; or

(c) The contribution was provided directly to me by some other
    person who certified (a), (b) or (c) and I have not modified
    it.

(d) I understand and agree that this project and the contribution
    are public and that a record of the contribution (including all
    personal information I submit with it, including my sign-off) is
    maintained indefinitely and may be redistributed consistent with
    this project or the open source license(s) involved.

read and approved

Drafting until feedback can be addressed!


Images larger on XF post 2.2.3

Hi,
Before I go to the effort of providing a lot of detail on this, I wanted to put feelers out first. I've been hanging back on 2.2.3 for some time now because when I upgrade, my images in XF appear way too big. I assumed this was a bug in FFIL when I first upgraded (I believe it was 2.2.4), but since it's been that way for a long time now, I figure maybe this is intentional?
Was there some kind of default behavior change at this point? I think this only affects Android btw, but would have to confirm that as part of digging deeper if/when required.

I also have this issue in 2.2.8 in both Android and iOS. Replacing all standard Xamarin Forms Image controls with CachedImage results in way too big images.
Specifics:

I'm not specifying the image size in the layout; the standard Image control uses the PNG's size
The app has each image in multiple resolutions in the app resources in both Android and iOS

-> Is it intentional or a bug that CachedImage behaves differently than Image given identical properties and layouts?
-> Is there a set of CachedImage property settings to make it compatible with standard Image?
Basically I just want to switch to CachedImage for added performance, stability and functionality. I don't want to have to change and retest all my existing Forms layouts.
An option for compatible behavour would promote adoption of FFImageLoading; I imagine many apps start out with standard image and when the app grows in size / usage want to switch with minimal rework.

@VincentH-Net agreed, and your findings verify my own (I don't recall whether iOS exhibits the same problem for us, but am guessing it does if it has for you).
The thing is, 2.3.3 does have compatible behavior with a standard Image, so something changed thereafter, intentionally or not.

If intentional, it is a big breaking change with major impact for all FFImageLoading XF users which merits documenting a rationale including an approach how to achieve compatibility (setting?).
I hope it is just a bug,

I tested:
Xamarin.FFImageLoading.Forms 2.2.3 +
Xamarin.FFImageLoading 2.2.8
This shows images in the correct size on iOS and Android
-> the change/defect is in the Forms package only

Yes, there was a change to better support expanding layout. Here's the code responsible:

FFImageLoading: https://github.com/luberda-molinet/FFImageLoading/blob/master/source/FFImageLoading.Forms/CachedImage.cs#L490-L523
Xamarin.Forms: https://github.com/xamarin/Xamarin.Forms/blob/master/Xamarin.Forms.Core/Image.cs#L63-L118

Do you have any ideas to modify it to have both working as expected? You can inherit from CachedImage and just paste original Xamarin.Forms code, to have previous behaviour.

Finally got some time to look at this today. It seems like the majority of the problems I observed when opening this issue are addressed now (using 2.2.10-pre-413). However, there remains one issue I can spot with images that have VerticalOptions="Center" applied (and presumably same problem horizontally). Such images are still stretched instead of collapsing into the center of the space they occupy.
I've tried to grab the source and run my project up against it, but FFIL is refusing to build in VS2017 for me. The build batch file works, but I need to be able to debug through this to fix, and I'm not having any luck getting that far :(

This is the build error I get, btw:
9>C:\Users\Kent\Repository\FFImageLoading\source\FFImageLoading.BaitAndSwitch\project.json(1,1): error MSB4025: The project file could not be loaded. Data at the root level is invalid. Line 1, position 1.

Can't see anything obviously wrong with the file in question (and I haven't changed anything since cloning the repo).

@kentcb Sources are now updated for VS2017. Are you able to build it now?

Hmm, it's still using project.json, which is leading to this when I try and use FFIL source directly from my Xamarin project:
C:\Users\Kent\Repository\FFImageLoading\source\FFImageLoading.Common\project.json(1,1): error MSB4025: The project file could not be loaded. Data at the root level is invalid. Line 1, position 1.

Ignoring that, the good news is that I can now build FFIL in isolation from my Xamarin project. So I figured i could just reference the compiled binaries from my solution instead of using FFIL source. However, when referencing those binaries from my Xamarin project, my XAML compilation started failing (with null ref exceptions). It's not clear why, so I just disabled XAMLC to continue on.
Basically, it's really quite difficult working with FFIL as source, and I suspect the friction prevents quite a few community contributions. You should take a look at what the ReactiveUI folks (mainly @ollevett) have done to multitarget many platforms from one project. You'd wind up with 3 projects instead of 3 * $PLATFORM_COUNT. Anyway, just a thought - you may not have the time to invest right now - completely understand if that's the case.
That said, I finally got building (against the binaries, so not a great debugging story). However, the problem is still occurring, and debugging is not really practical without source :(
It's really simple to reproduce. You just give an image more space than it needs and set it to center. A standard Image does the right thing, but CachedImage stretches the image to fill the space. Again, this regressed some time after 2.2.3.
Here's a repro.

UPDATE: straight after posting the above, I realised I forgot to try consuming FFIL source from my repro (as opposed to real project). Doing so works, so I'm digging deeper now.
I suspect the build errors I'm seeing are due to FFIL using legacy stuff like PCLs and project.json, whereas my real project uses netstandard and SDK-style csproj (my repro does not).

OK, PR submitted (#714). Looking forward to getting this fixed @daniel-luberda. Thanks again for a great library!

Great! Thank you for your collaboration. I merged it, however currently that fix is disabled by default. To enable it. Set the static property:
CachedImage.FixedOnMeasureBehavior = true;
I had to do this to avoid breaking behavior changes as the regression exists now for quite a few versions. We'll reenable it with next major version to avoid confusion.
@kentcb

FFImageLoading projects are now .NET standard projects, earlier I was using VS2015 for building, now I switched to VS2017.
I enabled debug symbols for FFImageLoading.Forms, nice catch
The project is already quite time consuming, so it's not easy to manage everything, but I'll try to improve project build on various environments in future. After recent changes, most of the issues should be solved anyway.

I have this exception when I set FixedOnMeasureBehavior property on UWP app in v2.2.14:
System.TypeInitializationException: 'The type initializer for 'FFImageLoading.Forms.CachedImage' threw an exception.'  You are referencing the Portable version in your App - you need to reference the platform (iOS/Android) version

@YZahringer  Did you remove all bin/obj folders before, then clean & rebuild?

@daniel-luberda Yep, problem persist. I try reinstall of FFImageLoading nuget packages, same error. I have a NETStandard 1.4 project referenced by UWP, Droid, iOS & Mac projects.
I use Xamarin.Forms <IP_ADDRESS>5-pre3, no problem with v2.2.13.

@YZahringer You must install packages to the platform specific projects. Otherwise, it won't work. Did you install the packages in a UWP specific project too?

@daniel-luberda I installed packages Xamarin.FFImageLoading.Forms, Xamarin.FFImageLoading.Svg.Forms and Xamarin.FFImageLoading.Transformations in all projects.

I just modified nuspec files. Could you check 2.2.15 prerelease?

@daniel-luberda It works! Thank you 👍

thats weird, in my case using CachedImage.FixedOnMeasureBehavior = true; doesnt work correctly. my Images displayed super small. without using this line display it fine,

@EmilAlipiev

What platform?
What is the original file width/ height?

It is on Android. I tested using Android 6 version on a device.  here is the actual image below and my implementation in xaml. in previous versions displayed just fine with the code below and it is a bit larger but still ok using without using CachedImage.FixedOnMeasureBehavior = true
  <Grid   AbsoluteLayout.LayoutFlags="All"  AbsoluteLayout.LayoutBounds="0,0,1,1">
                <Grid.RowDefinitions>
                    <RowDefinition Height="Auto"></RowDefinition>
                    <RowDefinition Height="Auto"></RowDefinition>
                    <RowDefinition Height="*"></RowDefinition>
                </Grid.RowDefinitions>
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="*"></ColumnDefinition>
                    <ColumnDefinition Width="*"></ColumnDefinition>
                </Grid.ColumnDefinitions>

  <ffimageloading:CachedImage  x:Name="Image1"  	Aspect="AspectFit"   Grid.Row="2" Grid.Column="0"  Grid.ColumnSpan="2"  HorizontalOptions="Center" VerticalOptions="Start"
                                        LoadingPlaceholder="loading.gif"       RetryCount="0"    CacheDuration = "120"
                                   Source="{Binding Image1}"
                            />

One more thing, does this behaviour differ from Xamarin.Forms Image?

I just tested and it is also super small using XF Image.

As you see it's expected behaviour to be fully compatible with forms.

This is weird because using AUTO and ColumnSpan=2 on datagrid I expect much larger Image. Do you think it is a bug in XF 2.4? Because I use FFImageLoading already for a long time and earlier version showed this image fine. Current version is also OK without using g CachedImage.FixedOnMeasureBehavior = true. I wonder what is breaking change. It looks like in 2.4 version

Default behaviour of XF Image is to show image with original file size in that scenario.

Thats the problem looks like original size is much bigger than what is shown. I will write on Xamarin forms also

How do I specify this in XAML in Forms ? , it doesn't seem to be an available property

FixedOnMeasureBehavior is not a bindable property in forms so how do I use it ?

Ok so, I WAS using ffimageloading for my local images as my lists contain loads of images.
I have just updated by a few versions to the latest and my layouts were broke.
I added to my App.cs
CachedImage.FixedOnMeasureBehavior = true;
CachedImage.FixedAndroidMotionEventHandler = true;
They are still broke.
I replaced ffimageloading in my XAML for  and they all display correctly again.
am I missing something ?

@chrisfoulds I'll need more info. 2.0.9 is quite old, is possible to have some sample project which demonstrates what is not working for you?

@chrisfoulds Also try to disable Android fast renderer (it's enabled by default if supported).
CachedImageRenderer.Init(false)

hi @daniel-luberda, i am having problem with 2.2.3 tap gesture doesnt work in some cases. I am using syncfusion listview and it has swipe action and within swipe I have ffimageloading image. it used to work fine but latest version doesnt work. I replaced with XF image. it works fine. Do you have any clue? otherwise, I will try to get you a small repro project. do you prefer another issue for this?

Fixed in 2.3 - it's now a default behaviour, so CachedImage behaviour is the same as Image
@EmilAlipiev Did you try to disable fast renderer? Please create a separate issue.

@daniel-luberda  i am not experiencing this issue anymore. I dont know what fixed but using latest XF and FFimageloading. i dont have it today. thank you

this doesn't seem to work for Svg Cached Image


Should we changed the runspersub wall time logic

Currently the runspersub option requires the user to make compensating modifications to the walltime requested to ensure the multiple number of runs can complete within a single PBS submit.
This has been a source of confusion in the past.
ACCESS-NRI is working up configurations for ACCESS-ESM1.5 and this model has a maximum run-time of 1 year. However it is a low-res ESM model that typically requires very long runs to equilibrate slow carbon cycling. It would be convenient to have runspersub: 20 to minimise PBS queue time and a proliferation of PBS logs.
However this would mean the default configuration would have a PBS walltime of 48hrs. For users doing short test runs this would impact their movement through the queue.
The proposal is to alter the logic so that walltime is set by the user to reflect how long it takes for a single run of the model. Then runspersub and the number of runs requested could be used to modify the requested walltime to make sure the job can complete (basically submit_walltime = min(runs, runspersub) * walltime).
This has a nice feature that runspersub can be left set to a larger number, and however many runs a user selects the submitted wall time would be adjusted up to a maximum value that is runspersub * walltime.
Clearly this would require useful informative messages to the user to let them know how the PBS submission was being altered.
There is some precedence here with the way payu pads CPU requests to be a multiple of nodes, or sets memory limits if no memory is set.
If backwards compatibility was required, or if it was clearer for users, there could be a new config option runtime which is then used to calculate walltime if walltime isn't specified.

If backwards compatibility was required, or if it was clearer for users, there could be a new config option runtime which is then used to calculate walltime if walltime isn't specified.

If we did this it might make sense to have runtime and walltime mutually exclusive. So use either one or the other, and by default with runspersub: 1 they would have identical practical outcomes.
Calculating the final walltime for users still requires users to be aware of the maximum walltime of the queue they're using. If they modify the model config so it takes longer for a single run they would need to change runtime and runspersub otherwise they may exceed the maximum walltime of the queue. Which would waste a lot of resources.
If maxwalltime was defined in the platform config, and set to the known defaults in payu then it would just require changing runtime and payu could check the current settings were consistent.


Kansas City, KS/MO

Love the work that's being done here. Thanks so much to everyone putting in the effort.

DUE TO HIGH VOLUME EMPTY ISSUES, OR ISSUES MISSING THE FOLLOWING INFORMATION WILL BE IMMEDIATELY CLOSED. THANK YOU!

A subject message for the email
A list of emails (at least one) for the government officials you’d like to receive the message
A detailed message concerning the budgeting decisions that are at stake in your community
Please read more about our email style guidelines here.

If this information is copied from an external source please provide a link to the original source.
See our current links for examples at https://defund12.org.
Thank you!!


Make build compatiable with Gradle version 1.0-miestone-3

...r to run task of groovydoc
This change is to fix the following error to do build with   Gradle version 1.0-milestone-3
FAILURE: Build failed with an exception.

What went wrong:
Execution failed for task ':org.linkedin.zookeeper-cli-impl:groovydoc'.
Cause: org/slf4j/impl/StaticMarkerBinder
Cause: org.slf4j.impl.StaticMarkerBinder

I have tested the change in my foked repo:
linkedin-zookeeper hhan$ gradle -Prelease=true release
Working in release mode: 1.4.0
:org.linkedin.zookeeper-impl:compileJava UP-TO-DATE
:org.linkedin.zookeeper-impl:compileGroovy UP-TO-DATE
:org.linkedin.zookeeper-impl:processResources UP-TO-DATE
:org.linkedin.zookeeper-impl:classes UP-TO-DATE
:org.linkedin.zookeeper-impl:jar
:org.linkedin.zookeeper-cli-impl:compileJava UP-TO-DATE
:org.linkedin.zookeeper-cli-impl:compileGroovy
:org.linkedin.zookeeper-cli-impl:processResources UP-TO-DATE
:org.linkedin.zookeeper-cli-impl:classes
:org.linkedin.zookeeper-cli-impl:jar
:org.linkedin.zookeeper-cli:package-assemble
:org.linkedin.zookeeper-cli:package
:org.linkedin.zookeeper-cli:uploadReleaseMaster
:org.linkedin.zookeeper-cli:release
:org.linkedin.zookeeper-cli-impl:groovydoc
log4j:WARN No appenders could be found for logger (org.gradle.api.internal.project.ant.AntLoggingAdapter).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
:org.linkedin.zookeeper-cli-impl:groovydocJar
:org.linkedin.zookeeper-cli-impl:sourcesJar
:org.linkedin.zookeeper-cli-impl:uploadReleaseMaster
:org.linkedin.zookeeper-cli-impl:release
:org.linkedin.zookeeper-impl:javadoc
:org.linkedin.zookeeper-impl:javadocJar
:org.linkedin.zookeeper-impl:sourcesJar
:org.linkedin.zookeeper-impl:uploadReleaseMaster
:org.linkedin.zookeeper-impl:release
:org.linkedin.zookeeper-server:package-assemble
:org.linkedin.zookeeper-server:package
:org.linkedin.zookeeper-server:uploadReleaseMaster
:org.linkedin.zookeeper-server:release
BUILD SUCCESSFUL
Total time: 15.71 secs

Although the change seems trivial I do not understand why it is required. I have been avoiding gradle 1.0 milestones because I have been waiting for the final 1.0 to upgrade all the projects (utils, zookeeper and glu). So I am unclear whether this change is required because of a bug in gradle... at compile time there should not need to be a dependency with slf4jlog4j
That being said if this is something that you really really need I can merge the pull request... otherwise I would like to wait for gradle 1.0 final.
Thanks
Yan

We have converted our glu linkedin to use gradle milestone-3  with help from
gradle consultant, so I think we can apply similar changes to opensource glu
to make it compatible with gradle milestone 3.
I just want to  let you know what changes might be needed.
I don't really need you to merge :)

From: Yan Pujante
<EMAIL_ADDRESS>.com>
Date: Tue, 22 Nov 2011 15:34:14 -0800
To: HAIPING HAN<EMAIL_ADDRESS>Subject: Re: [linkedin-zookeeper] Make build compatiable with Gradle version
1.0-miestone-3 (#4)
Although the change seems trivial I do not understand why it is required. I
have been avoiding gradle 1.0 milestones because I have been waiting for the
final 1.0 to upgrade all the projects (utils, zookeeper and glu). So I am
unclear whether this change is required because of a bug in gradle... at
compile time there should not need to be a dependency with slf4jlog4j
That being said if this is something that you really really need I can merge
the pull request... otherwise I would like to wait for gradle 1.0 final.
Thanks
Yan

Reply to this email directly or view it on GitHub:
https://github.com/linkedin/linkedin-zookeeper/pull/4#issuecomment-2842652


Feature: Goto definition (and back)

With a crude ast for currnet module and deps this should be feasible to add

This is now implemented in version 0.4.0


[NOSTRAddress] define Nostr address type from public key to Nostr addresses

Define a NostrAddress type to be accepted by Nostr applications.
This task is TBD.

This task isn't a priority. Close it now.


map section is not responsive for mobile view

I would like to work on this issue as a part of Gssoc'23

Alright, you can work on this.

hey @RishabhJain0721  Can you please provide me with more details about how to setup the project on my machine locally.
The content of the readme is not sufficient.

@Gaurav-Verma07 can you help me with how to configure .env file for the project setup in my machine locally

mail me, I'll share env


Deterministic search of the generating and the base points.

Still a mistake, undefined "cofactor" variable.


Fix typo

a -> an

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

Verified editorial correction.


Fix #632.

The doc string indicates that the linenos table is wrapped in <div class="highlight">,
but the actual implementation puts the <div> inside the table cell containing the code.
This seems to cause issues as explained in #632, and given it doesn't match the
documentation, this PR restores the original behavior.

I can't claim I understand everything in the HtmlFormatter, but what I understand in this patch LGTM.

I think the logic was actually quite broken :/ Second try (I noticed some unit tests would look different by default.)

Mmmh, I replied to a GitHub notification by email yesterday: "Sorry for dropping the ball. I'll try to review this again tomorrow". Not sure why it didn't reach this PR, maybe it doesn't work for requests for review? Nevertheless, I'm OK with the merge.

:( I didn't get notified, and I figured I'll finally set aside some time to make a release so I didn't want to delay this even further. I think the logic is right now and if not I'll do a 2.12.1 soon.

Glad to hear you got it sorted out, and thanks for taking care of the related issue. If that's all the fallout we'll get I'll be quite happy.


Build report bug fixes

Fixes #22376
I only had a few minutes left this week, so this seemed like a good thing to squeeze in here. This should clean up the build report. In a couple of spots the cross-linked coverage was legacy without a suitable, current replacement, and I think it was fine to just mention the name of the thing without a cross-link in those few cases. In other spots, the current API docs have the information.

Rick, do you know how to fix this one? ... or can you ping the right folks?

Suggestion
dependency-repository-branch-not-match
The  branch(master) used to reference in the dependency repository  'https://github.com/xamarin/xamarin-forms-samples' does not match.  Please confirm with cross reference repo and update 'master' to 'main'  in this repo config file.

😈
That's a rotten gremlin!
We don't have 'master' on our end at this point. We have 'main' everywhere, which was updated by a prior PR ... e.g. ...

[View or download sample backend services code](https://github.com/xamarin/xamarin-forms-samples/tree/main/WebServices/TodoREST)

Cross-ref: https://github.com/dotnet/AspNetCore.Docs/blame/main/aspnetcore/mobile/native-mobile-backend.md#L16
... except for the code snippet cross-links, which use formats similar to ...

:::code language="csharp" source="~/../xamarin-forms-samples/WebServices/TodoREST/TodoREST/Constants.cs" highlight="13":::

Cross-ref: https://github.com/dotnet/AspNetCore.Docs/blame/main/aspnetcore/mobile/native-mobile-backend.md#L44
... and I don't see a 'master/main' spot in a repo config file over there on that repo ...
https://github.com/xamarin/xamarin-forms-samples

One more thing. That one ☝ seems like the last thing that we need for a 100% clean build report.
However, there's a Suggestion entry down at the bottom for ...

description-missing

... but there's no suggestion for that in the Details table. I can't open the raw build log to see if I can search and find what's generating that. If there's nothing generating it, then it looks like a SiteHelp internal bug report is called for.


feat: Keyblocks page

Description
resolves #856
Demo

Checklist:

[x] I have read and followed the Contributing Guide
[x] My change requires a change to the documentation.
[x] I have updated the documentation accordingly.

Thanks will be released in the second release.


feat(ONYX-651): Implement tracking events for NWFY

This PR resolves ONYX-651
Description
This PR makes the follow changes:

Add tracking to NWFY screen
Add a dev toggle to force seeing the feed variant

Note: I created this branch from this one - this is why the big changes, they should be solved as soon as the other gets merged
https://github.com/artsy/eigen/assets/11945712/10a8ce5f-c66e-45e9-88bb-98c24e3111d3

PR Checklist

[x] I have tested my changes on iOS and Android.
[x] I hid my changes behind a feature flag, or they don't need one.
[x] I have included screenshots or videos, or I have not changed the UI.
[x] I have added tests, or my changes don't require any.
[x] I added an app state migration, or my changes do not require one.
[x] I have documented any follow-up work that this PR will require, or it does not require any.
[x] I have added a changelog entry below, or my changes do not require one.

To the reviewers 👀

[ ] I would like at least one of the reviewers to run this PR on the simulator or device.

Changelog updates
Changelog updates

Cross-platform user-facing changes

Implement tracking events for NWFY - mounir

iOS user-facing changes

Android user-facing changes

Dev changes

Need help with something? Have a look at our docs, or get in touch with us.

This PR contains the following changes:

Cross-platform user-facing changes (Implement tracking events for NWFY - mounir)

  Generated by :no_entry_sign: dangerJS against c49c10e2b15eca1ba90dc761b07c60316a31c0d1


Harmonize turbine and hystrix stream destinations

We have a little hack in TurbineStreamAutoConfiguration where we set the input destination to match the hystrix output. But it would be neater, and would require fewer contortions in testing the turbine server, if they just matched out of the box. Probably a good change to make in 2.0.

/cc @csterwa @scottfrederick for SCS eyes

Any update on this issue? I can not get this to work still.

This was never a problem, but a work around. AFAIK, it still works. Please open a new issue and supply as much information as possible.

This module has entered maintenance mode. This means that the Spring Cloud team will no longer be adding new features to the module. We will fix blocker bugs and security issues, and we will also consider and review small pull requests from the community.


Missing docs for ingress setup on minikube

This is a...

[ ] Feature Request
[x] Bug Report

Problem:
There is a 404 NotFound page after clicking the last link in the ingress documentation file. I mean this one - Set up Ingress on Minikube with the NGINX Controller.
There is no such file as https://github.com/kubernetes/website/blob/master/docs/tasks/access-application-cluster/ingress-minikube.md.
Proposed Solution:
Create the file with ingress setup on minikube.
Page to Update:
https://kubernetes.io/docs/concepts/services-networking/ingress/

Thank you @franpog859 for pointing the issue. I opened a PR, this fix will resolve it!

This looks resolved. Is that right?

Yes true!! Let me close it!
/close


[zh] Sync1.25 /concepts/storage/volumes.md

Updated text based on en upstream.
content/zh-cn/docs/concepts/storage/volumes.md

/lgtm


Wait for pods to be ready status returns none for pods with Pending status

Version:
repository: zlabjp/kubernetes-resource
tag: "1.10"
Using above concourse resource "Waiting for pods to be ready" status check using following template returns nothing for pod with status pending.
template="$(cat <<EOL
{{- range .items -}}
{{- if and (not .metadata.deletionTimestamp) (ne .status.phase "Failed") (ne .status.phase "Succeeded") -}}
{{.metadata.name}}{{range .status.conditions}}{{if eq .type "Ready"}} {{.status}}{{end}}{{end}}{{"\n"}}
{{- end -}}
{{- end -}}
EOL
)"
Below is output from running with this template in my k8s environment:
[root@k8s-master1 system-assets-service]# kubectl get pods -n ngci -o wide --show-labels
NAME                                    READY     STATUS    RESTARTS   AGE       IP        NODE      LABELS
system-assets-service-55f7856f5-sfw22   0/3       Pending   0          12m            app=system-assets-service,pod-template-hash=119341291,version=0.0.1-dev.4
[root@k8s-master1 system-assets-service]# echo $template
{{- range .items -}} {{- if and (not .metadata.deletionTimestamp) (ne .status.phase "Failed") (ne .status.phase "Succeeded") -}} {{.metadata.name}}{{range .status.conditions}}{{if eq .type "Ready"}} {{.status}}{{end}}{{end}}{{"\n"}} {{- end -}} {{- end -}}
[root@k8s-master1 system-assets-service]# kubectl get pods -o template --template="$template" -n ngci
system-assets-service-55f7856f5-sfw22
Job definition in Concourse:

name: job-k8s-deployment
public: true
serial: true
plan:

get: service-repo
passed: [job-build-((service-name))]
trigger: true
put: k8s
params:
kubectl: apply -f service-repo/deployment.yml
namespace: ngci
wait_until_ready: 60
wait_until_ready_interval: 5
wait_until_ready_selector: app=((service-name))
put: k8s
params:
kubectl: get pods -o wide --show-labels
namespace: ngci
wait_until_ready: 60
wait_until_ready_interval: 5
wait_until_ready_selector: app=((service-name))
on_failure:
put: k8s
params:
namespace: ngci
kubectl: delete -f service-repo/deployment.yml

Return Status Concourse:

kubectl get pods -o wide --show-labels
NAME                                    READY     STATUS    RESTARTS   AGE       IP              NODE                        LABELS
system-assets-service-55f7856f5-k979t   0/3       Pending   0          1m                               app=system-assets-service,pod-template-hash=119341291,version=0.0.1-dev.4
Waiting for pods to be ready for 60s (interval: 5s, selector: app=system-assets-service)
Waiting for pods to be ready... (0/0)

Request:
Return value for pods with pending status so concourse does not continue when pods are in pending status.

Thank you for reporting. I think this resource should be changed to your request's behavior.

Request:
Return value for pods with pending status so concourse does not continue when pods are in pending status.

@yuanying  WDYT?

This should be fixed. I'll check.

Thanks guys!


Elevate our code of conduct

Original issue here: https://github.com/bokeh/bokeh/issues/8741 as there's crossover.

This static site does not really exist anymore, and won't exist at all in the near future


Inheritance of add_header alt-svc

@yurymuski: So in the nginx sample configuration the add_header alt-svc for HTTP3 negotiation is added to the server block, but also to some location blocks: https://github.com/yurymuski/nginx-http3/blob/master/example.nginx.conf#L56
However, it is not added to one particular location block.
When should the header be added (for compatibility/performance (avoid roundtrips to HTTP1/2 and then HTTP3))?
nginx does not inherit the header down from server to location blocks, how can I avoid re-using that one line multiple times?

So in nginx configuration using the add_header in lower-level block, (as  location) block nullifies all previously used, higher-level (as in server block) add_header directives. When using add_header just once inside a location block all previously used add_header directives have to be re-added to that location block all over again (see this blog post about this).


Cannot write dask Dataset to NetCDF file

I have a xarray Dataset created using dask, which i would like to write on my disk.
The size of this dataset is 12GB, and my computer has 64GB of memory, but when I run the 'to_netcdf' command, my memory crashes.
type(nc)
Out[5]: xray.core.dataset.Dataset

nc.chunks
Out[6]: Frozen(SortedKeysDict({'Denree': (19,), u'NIsoSource': (10, 10, 10, 10, 10, 6), 'Pop': (6,),
u'DimJ0': (20, 17), u'DimK0': (1,), u'time': (50, 50, 50, 50, 3), u'DimI0': (15,), 'TypeDose': (2,)}))

nc.nbytes * (2 ** -30)
Out[7]: 12.4569926

I don't understand what i'm doing wrong, so thanks for your help.

This is almost certainly an issue with dask's scheduler. cc @mrocklin
Could you share a summary of how you create this dataset? Is it something that should be possible to calculate in a single pass over the data?

@Scheibs can you try calling these lines to remove multi-threading and see if the problem persists?
import dask
dask.set_options(get=dask.async.get_sync)

I agree with @shoyer that it would be very useful to see what you're doing that causes this problem.

@mrocklin I have tried your lines, it seemed to work but finally I got the memory error message. However the crash was different than what I used to have...
My dataset is a set of several variables, which are calculated like this :
I have DataArray of unitary data for four rainfall height(0,5,10,15 mm/days,"SYMB") and another DataArray with spatialized rainfall height values ("RAIN").
SYMB <xray.DataArray (Hpluie: 4, time: 203, NIsoSource: 56, Denree: 19, Paliers: 23)>
dask.array<xray-Fo..., shape=(4, 203, 56, 19, 23), dtype=float64, chunksize=(4, 50, 10, 19, 5)>

RAIN <xray.DataArray (Paliers: 23, DimK0: 1, DimJ0: 37, DimI0: 15)>
dask.array<xray-Ra..., shape=(23, 1, 37, 15), dtype=float64, chunksize=(5, 1, 20, 15)>

Then I created an array which is the result of interpolation between this two arrays
The function  is :
def interp(array,pluie):

    p0 = (array.sel(Hpluie = 5) -array.sel(Hpluie = 0))/5
    p1 = (array.sel(Hpluie = 10) -array.sel(Hpluie = 5))/5
    p2 = (array.sel(Hpluie = 15) -array.sel(Hpluie = 10))/5

    interp = (p0*(pluie.where(pluie<5) - array.Hpluie.sel(Hpluie=5)) +array.sel(Hpluie=5)).fillna(0)\
        +(p1*(pluie.where((pluie>=5) & (pluie<=10)) - array.Hpluie.sel(Hpluie=5)) +array.sel(Hpluie=5)).fillna(0)\
        +(p2*(pluie.where(pluie>10) - array.Hpluie.sel(Hpluie=10)) + array.sel(Hpluie=10)).fillna(0)
    return interp

So  M = interp(SYMB,RAIN)
M  <xray.DataArray (time: 203, NIsoSource: 56, Denree: 19, Paliers: 23, DimK0: 1, DimJ0: 37, DimI0: 15)>
dask.array<elemwis..., shape=(203, 56, 19, 23, 1, 37, 15), dtype=float64, chunksize=(50, 10, 19, 5, 1, 20, 15)>

My final variable is the product of this interpolated array and an other spatialized variable("FLUX")
FLUX <xray.DataArray 'Flux_Moyen_Depot_Sec' (Paliers: 23, DimK0: 1, DimJ0: 37, DimI0: 15, NIsoSource: 56)>
dask.array<xray-Fl..., shape=(23, 1, 37, 15, 56), dtype=float64, chunksize=(5, 1, 20, 15, 10)>

RES = (M * FLUX).sum("Paliers")
RES = <xray.DataArray (DimK0: 1, DimJ0: 37, DimI0: 15, NIsoSource: 56, time: 203, Denree: 19)>
dask.array<p_reduc..., shape=(1, 37, 15, 56, 203, 19), dtype=float64, chunksize=(1, 20, 15, 10, 50, 19

I hope this is at less understandable...
thanks a lot for your help

Sorry for the delay in response.
Nothing here seems dangerous to me.  @shoyer does the writeup above raise any questions for you?
If convenient, it would be interesting to see the output of a few of the dask profilers:
$ conda install bokeh
$ pip install cachey

from dask.diagnostics import CacheProfiler, ResourceProfiler, Profiler, visualize
with Profiler() as prof, CacheProfiler(metric=cachey.nbytes) as cprof, ResourceProfiler() as rprof:
    # call the final dataset.to_netcdf() function

visualize([prof, cprof, rprof], file_path='profile.html')

And then upload that file somewhere, perhaps to a gist.  In order to make this run to completion you might have to operate on a subset of the dataset.
Alternatively, is there a way for me to recreate a version of this dataset on my local machine?  @shoyer is there a way to capture the metadata of netcdf files and reinstantiate empty copies of them on another machine?

I can send you my files, with the two netCDF4 source files and the script. I will also join the Bokeh graph for only one variable which fit with memory.
Do you know how I can send you the ZIP folder ? It's 830 MB.

Something like einsum or a broadcasting matrix multiplication could help a little bit here, by replacing (M * FLUX).sum('Paliers') with M.dot(FLUX, dim='Paliers') and thereby reducing peak memory consumption, but even there I'm calculating peak chunk size at 950000 elements. This should be totally fine on most machines.
@mrocklin Unfortunately, I don't know an easy way to create a copy of a netCDF file with random data, but that's a good idea for a little project....

I would generally send such a large file by hosting it at a web-accessible location.  Perhaps you are at an institution were you have access to host files online?

@mrocklin I put my folder on a ftp server, can I have an email address to send you the login information ?
@shoyer I have tried replacing sum() by dot() but I get an error "Data Array has no attribute 'dot' "

mrocklin continuum io
On Mon, Feb 8, 2016 at 1:10 AM, Scheibs<EMAIL_ADDRESS>wrote:

@mrocklin https://github.com/mrocklin I put my folder on a ftp server,
can I have an email address to send you the login information ?
@shoyer https://github.com/shoyer I have tried replacing sum() by dot()
but I get an error "Data Array has no attribute 'dot' "
—
Reply to this email directly or view it on GitHub
https://github.com/pydata/xarray/issues/729#issuecomment-181265026.

@mrocklin I finally gave you a free acces path on ftp://ftp.irsn.fr/argon/SHARE/

My apologies for the slow response (very busy week, lots of exciting stuff, sadly results in poor user response).
I can access that page easily but the download seems to halt after 11MB

You don't have to apologize for the delay, i'm already grateful for your time on this !
I don't understand why this download won't work with you; I tried with other and everything was ok...
Maybe you can try with this link  :
https://sharing.oodrive.com/easyshare/fwd/link=BS6TALAs9CiQg.WNotfITA

@mrocklin is that new link working ? Because it's gonna be closed tomorow.

Downloaded

Slowly taking a look at this now.  Large PDF for the full computation, if anyone is interested:
dask.pdf

Looking at the task graph my first guess is that @shoyer is correct, and that we've found another case that the scheduler should be able to handle well, but doesn't.  This hasn't happened in a while, but it always leads to improvements whenever we find such a problem.
For a case this complex I think we either need to reduce it to a particular graph motif on which we schedule poorly or we first need to develop a better way to visualize traces of the scheduler's behavior.  I've started a separate dask issue: https://github.com/dask/dask/issues/994
For the near future I don't have a solution to @Scheibs 's research problem (sorry!)  This will probably require tweaking dask scheduler internals which probably won't happen by me in the next couple of weeks.  I'm very happy that people brought this to my attention though.

Tank you for your help on this, I will try myself to improve my knoledge of xarray and dask ;)


Refatoring on LDA+U part

Immediate steps: test12 fails with slightly different total energy. I will run base development branch and compare the occupation matrices. I don't think that the averaging of radial integrals w.r.t. averaging or radial functions can lead to such a significant change.

@mtaillefumier I've done with my changes for now

@haampie how I can fix the hdf5 problems in build_cuda_11 build?

do we have to fix smth. on our side?

No, this happens because the hdf5 package was misconfigured (api=none as default value, but it's not among the list of acceptable options), and it only shows up now because spack has a new concretizer, and it resulted in it just picking a random acceptable instead. So I fixed it by making the sirius depend on hdf5 api=v18 in our package.py. It has to build hdf5 now, but binaries will be cached later.

I tested GPU band-parallel test20 (the one which fails in CI). It works, so I think we are OK to merge the PR.


Could not load file or assembly 'System.Configuration.ConfigurationManager, Version=<IP_ADDRESS>

Microsoft.Azure.Cosmos  3.32.3
Running in Service Fabric .net 4.8
ystem.IO.FileNotFoundException
HResult=0x80070002
Message=Could not load file or assembly 'System.Configuration.ConfigurationManager, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51' or one of its dependencies. The system cannot find the file specified.
Source=Microsoft.Azure.Cosmos.Client
StackTrace:
at Microsoft.Azure.Cosmos.DocumentClient.Initialize(Uri serviceEndpoint, ConnectionPolicy connectionPolicy, Nullable1 desiredConsistencyLevel, HttpMessageHandler handler, ISessionContainer sessionContainer, Nullable1 enableCpuMonitor, IStoreClientFactory storeClientFactory, TokenCredential tokenCredential, String cosmosClientId, RemoteCertificateValidationCallback remoteCertificateValidationCallback)
at Microsoft.Azure.Cosmos.DocumentClient..ctor(Uri serviceEndpoint, AuthorizationTokenProvider cosmosAuthorization, EventHandler1 sendingRequestEventArgs, ConnectionPolicy connectionPolicy, Nullable1 desiredConsistencyLevel, JsonSerializerSettings serializerSettings, ApiType apitype, EventHandler1 receivedResponseEventArgs, HttpMessageHandler handler, ISessionContainer sessionContainer, Nullable1 enableCpuMonitor, Func`2 transportClientHandlerFactory, IStoreClientFactory storeClientFactory, Boolean isLocalQuorumConsistency, String cosmosClientId, RemoteCertificateValidationCallback remoteCertificateValidationCallback)
at Microsoft.Azure.Cosmos.ClientContextCore.Create(CosmosClient cosmosClient, CosmosClientOptions clientOptions)
at Microsoft.Azure.Cosmos.CosmosClient..ctor(String accountEndpoint, AuthorizationTokenProvider authorizationTokenProvider, CosmosClientOptions clientOptions)
at Microsoft.Azure.Cosmos.Fluent.CosmosClientBuilder.Build()
at Configuration.SettingsFactory.CosmosDocQuery.Retrieve(String endpointUrl, String accessKey, String database, String collection, String document) in C:\Dev\eRcptMain\Configuration\SettingsFactory\CosmosDocQuery.cs:line 12
at Configuration.AppSettingsEntry.Initialize(ConfigurationPackage configurationPackage) in C:\Dev\eRcptMain\Configuration\AppSettingsEntry.cs:line 24
at Cache.Cache.CreateServiceReplicaListeners() in C:\Dev\eRcptMain\Cache\Services\CacheService.cs:line 37
at Microsoft.ServiceFabric.Services.Runtime.StatefulServiceReplicaAdapter.d__27.MoveNext()
Inner Exception 1:
FileNotFoundException: Could not load file or assembly 'System.Configuration.ConfigurationManager, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51' or one of its dependencies. The system cannot find the file specified.

@LastTribunal Can you please clarify what is the ask in this Issue?
The Cosmos DB SDK does not depend on System.Configuration.ConfigurationManager 7.0.0, it depends on >=6.0.0 -> https://www.nuget.org/packages/Microsoft.Azure.Cosmos/3.32.3#dependencies-body-tab
DLL and dependency resolution is done by the application and framework. Why a certain DLL is not found at runtime or why it is attempting to load 7.0 instead of 6.0 or how does your application resolve Nuget conflicts is something that is particular to your own deployment.

I solved this by using api.config redirects


[WIP][SPARK-27951][SQL] Support ANSI SQL NTH_VALUE window function

What changes were proposed in this pull request?
The NTH_VALUE function is an ANSI SQL.
For examples:
CREATE TEMPORARY TABLE empsalary (
    depname varchar,
    empno bigint,
    salary int,
    enroll_date date
);

INSERT INTO empsalary VALUES
('develop', 10, 5200, '2007-08-01'),
('sales', 1, 5000, '2006-10-01'),
('personnel', 5, 3500, '2007-12-10'),
('sales', 4, 4800, '2007-08-08'),
('personnel', 2, 3900, '2006-12-23'),
('develop', 7, 4200, '2008-01-01'),
('develop', 9, 4500, '2008-01-01'),
('sales', 3, 4800, '2007-08-01'),
('develop', 8, 6000, '2006-10-01'),
('develop', 11, 5200, '2007-08-15');

select first_value(salary) over(order by salary range between 1000 preceding and 1000 following),
	lead(salary) over(order by salary range between 1000 preceding and 1000 following),
	nth_value(salary, 1) over(order by salary range between 1000 preceding and 1000 following),
	salary from empsalary;
 first_value | lead | nth_value | salary
-------------+------+-----------+--------
        3500 | 3900 |      3500 |   3500
        3500 | 4200 |      3500 |   3900
        3500 | 4500 |      3500 |   4200
        3500 | 4800 |      3500 |   4500
        3900 | 4800 |      3900 |   4800
        3900 | 5000 |      3900 |   4800
        4200 | 5200 |      4200 |   5000
        4200 | 5200 |      4200 |   5200
        4200 | 6000 |      4200 |   5200
        5000 |      |      5000 |   6000
(10 rows)

There are some mainstream database support the syntax.
PostgreSQL:
https://www.postgresql.org/docs/8.4/functions-window.html
Vertica:
https://www.vertica.com/docs/9.2.x/HTML/Content/Authoring/SQLReferenceManual/Functions/Analytic/NTH_VALUEAnalytic.htm?tocpath=SQL Reference Manual|SQL Functions|Analytic Functions|_____23
Oracle:
https://docs.oracle.com/en/database/oracle/oracle-database/19/sqlrf/NTH_VALUE.html#GUID-F8A0E88C-67E5-4AA6-9515-95D03A7F9EA0
Redshift
https://docs.aws.amazon.com/redshift/latest/dg/r_WF_NTH.html
Presto
https://prestodb.io/docs/current/functions/window.html
MySQL
https://www.mysqltutorial.org/mysql-window-functions/mysql-nth_value-function/
Why are the changes needed?
The NTH_VALUE function is an ANSI SQL.
The NTH_VALUE function is very useful.
Does this PR introduce any user-facing change?
No
How was this patch tested?
Exists and new UT.

Merged build finished. Test PASSed.

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

Test build #127949 has started for PR 29556 at commit b31b082.

Test build #127949 has finished for PR 29556 at commit b31b082.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

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

Test build #127951 has started for PR 29556 at commit 2d9231c.

Merged build finished. Test PASSed.

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

Test build #127952 has started for PR 29556 at commit a98f3ee.

Test build #127951 has finished for PR 29556 at commit 2d9231c.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

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

Test build #127952 has finished for PR 29556 at commit a98f3ee.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

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

Merged build finished. Test PASSed.

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

Test build #127957 has started for PR 29556 at commit ca34ef7.

Test build #127957 has finished for PR 29556 at commit ca34ef7.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

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

Test build #127978 has started for PR 29556 at commit e402280.

Merged build finished. Test PASSed.

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

Test build #127978 has finished for PR 29556 at commit e402280.

This patch fails Scala style tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

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

Test build #127980 has started for PR 29556 at commit 3feab03.

Merged build finished. Test PASSed.

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

Test build #127980 has finished for PR 29556 at commit 3feab03.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

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

Test build #127985 has started for PR 29556 at commit 0ba390c.

Merged build finished. Test PASSed.

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

Test build #127985 has finished for PR 29556 at commit 0ba390c.

This patch fails due to an unknown error code, -9.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

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

retest this please

Merged build finished. Test PASSed.

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

Test build #127989 has started for PR 29556 at commit 0ba390c.

Test build #127989 has finished for PR 29556 at commit 0ba390c.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test build #127997 has started for PR 29556 at commit 07eff60.

Merged build finished. Test PASSed.

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

Test build #127997 has finished for PR 29556 at commit 07eff60.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

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

Test build #128020 has started for PR 29556 at commit 4c214a9.

Merged build finished. Test PASSed.

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

Test build #128020 has finished for PR 29556 at commit 4c214a9.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

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

Test build #128048 has started for PR 29556 at commit a77aba1.

Merged build finished. Test PASSed.

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

Test build #128048 has finished for PR 29556 at commit a77aba1.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

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

Test build #128066 has started for PR 29556 at commit 6238db8.

Merged build finished. Test PASSed.

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

Test build #128066 has finished for PR 29556 at commit 6238db8.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

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

Test build #128080 has started for PR 29556 at commit a699300.

Merged build finished. Test PASSed.

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

Test build #128087 has started for PR 29556 at commit a6f3e3d.

Test build #128080 has finished for PR 29556 at commit a699300.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

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

Merged build finished. Test FAILed.

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

Test build #128087 has finished for PR 29556 at commit a6f3e3d.

This patch passes all tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
case class NthValue(input: Expression, offsetExpr: Expression, ignoreNulls: Boolean)

Merged build finished. Test PASSed.

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


Create unit/-integrationtests

Create unit/-integrationtest for kangaroo store etc.

Updated final unit tests and comments.


User is null in nextjs api route handler

Bug report

[ ] I confirm this is a bug with Supabase, not with my own application.
[x] I confirm I have searched the Docs, GitHub Discussions, and Discord.

Describe the bug
I have set up auth with google in my project and it is working fine. I have set up the middleware and all the createClient functions for server and client. I have the correct auth state in both the server and the client.
But in API route handlers, I get user as null even though I am logged in.
To Reproduce
Steps to reproduce the behavior, please provide code snippets or a repository:

Start a new Nextjs project.
Follow the docs to implement auth with the ssr package.
Sign in
Call an API endpoint where you call getSession()

Expected behavior
I should get the session info of the current user.
System information

OS: macOS
Browser: Arc
Version of supabase-js: 2.43.5
Version of supabase/ssr: 0.3.0
Version of Node.js: 20.12.2

Additional context
I think the problem is happening because cookies are not being passed to the route handler. But I think they should be passed automatically through the middleware. Why is that not happening?

Have you checked out this article?
https://jonmeyers.io/blog/forwarding-cookies-from-server-components-to-route-handlers-with-next-js-app-router

@j4w8n Hmmm. It does make sense logically but there should be an easier way to do this instead of manually adding the cookies on each call. Can the middleware not do this?

@j4w8n Hmmm. It does make sense logically but there should be an easier way to do this instead of manually adding the cookies on each call. Can the middleware not do this?

I'm not familiar with Next, I just recall someone having a similar issue in the Discord community.

@j4w8n  I will keep this open in the hope that there is an easier solution since the blog post is almost a year old.

@muezz - Running into exact same issue. getUser() works fine in server component but fails in route handler. Similarly a middleware issue with cookies. Did you ever come across a more native solution to this issue?

Can confirm that adding cookie property manually to the fetch in the server component does fix the issue. Unsure if there is something about my Next/Supabase version that is interfering with the Supabase-provided middleware boilerplate as it doesn't seem to be a ubiquitous problem.
  const response = await fetch(`${baseUrl}/api/organization`, {
    method: 'PUT',
    headers: {
      'Content-Type': 'application/json',
      'cookie': headers().get('cookie') || ''
    },
    body: JSON.stringify(orgData),
  });


BCM-1152: Updating Supported audioOutputSource List.

Reason for change: some platform supports multiple audioport hence updating list. "IDLR0" => Aux,"SPEAKER0" => NativeSpeaker.
Test Procedure: build,flash image and verify DAB settings/list operation .
Risks: Medium.

'IDLR0' : Aux
'HDMI0' : HDMI
'SPDIF0' : Optical
'SPEAKER0' :  NativeSpeaker


Docker support?

What are the chances of seeing this officially supported as a Docker container?

Docker image has been available for years. https://hub.docker.com/r/dnsforge/xteve

Adding another one:
https://hub.docker.com/repository/docker/senexcrenshaw/xteve

Any with arm support for raspberry pi?

Docker image has been available for years. https://hub.docker.com/r/dnsforge/xteve

Any with arm support for raspberry pi?

you can try:
https://hub.docker.com/repository/docker/senexcrenshaw/xteve


Adding grumpy.py

Adding grumpy. This strategy chooses a strategy based on two thresholds which depend on the history of the opponent.

Hi @JasYoung314 thanks a lot for the pull request: the grumpy strategy looks cool (thanks also for the tests!).
I note that the strategy keeps another attribute (the state: grumpy or not). This is something that will need to be reset at every repetition of a duel in the tournament. I've actually just changed how reset works with this commit: 3d061048ae30f1f836efe94201fe3326e2024a11
Could you add a specific reset method to the Grumpy class so that it not only resets history and score but also the state (you'll have to add the method so that it overwrites the reset method it inherits).

(this commit also: 376d9cf587b6adbe95b4c8fa5d0c630682653e4c)

Thanks @drvinceknight I have made the change to the grumpy player class you requested.

Nice: could you just add a test for the reset method in the grumpy class? Once you've done that I'll merge!

@drvinceknight the reset method is now tested for grumpy


can't drop duplicated on dask dataframe index

please note my stackoverflow question
I am using dask dataframe with python 2.7 and want to drop duplicated index values from my df.
When using pandas i would use
df = df[~df.index.duplicated(keep = "first")]

And it works
When trying to do the same with dask dataframe i get

AttributeError: 'Index' object has no attribute 'duplicated'

I could reset the index and than use the column that was the index to drop duplicated but I would like to avoid it if possible
I could use df.compute() and than drop the duplicated index values but this df is too big for memory.
I tried using the following code as suggested by jezrael in stackoverflow
rxTable[~rxTable.index.to_Series().duplicated()]
and got

AttributeError: 'Index' object has no attribute 'to_Series'

It worked a few days ago and just stopped, i can't find any difference in the code and data.
How can i drop the duplicated index values from my dataframe using dask dataframe?
Thanks

Reminder, it's helpful to have reproducible examples :)
This may be your best shot right now:
import pandas as pd
import dask.dataframe as dd

a = pd.DataFrame({"A": [1, 2, 3, 4]},
                 index=[0, 0, 1, 1])
b = dd.from_pandas(a, 2)

a.groupby(a.index).first()

def chunk(x):
    return x.first()

def agg(x):
    return x.first()

A PR implementing first and last on groupby objects would be helpful if you have time.

@TomAugspurger  Thanks!

@TomAugspurger  BTW - by pr your mean pull request? please clarify what is the need and I will try to do it

Yes, PR = pull request, sorry.
We have some development guidelines at
http://dask.pydata.org/en/latest/develop.html#development-environment
Post here if you have any difficulties.
On Sun, Dec 10, 2017 at 5:03 AM, thebeancounter<EMAIL_ADDRESS>wrote:

@TomAugspurger https://github.com/tomaugspurger BTW - by pr your mean
pull request? please clarify what is the need and I will try to do it
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/dask/dask/issues/2952#issuecomment-350540355, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ABQHIvJnc-y-N1U8sNrokBVIBcCTzb8Fks5s-7p9gaJpZM4QzqXt
.

@TomAugspurger  will try my best!

Hey Tom, We are familiar with attributes - subset, keep, and inplace, which are used in pandas.dataframe.drop_duplicates function. Please tell us about the attributes given in dask.dataframe.drop_duplicates function i.e. split_every, split_out.
There is no explanation of these attributes in dask documentation also. What are these?

Kindly help us. Thanks.

I'm not sure, perhaps the number of output partitions. If you investigate
it and can clarify the documentation, we would happily take a pull request.
On Thu, Jun 20, 2019 at 8:07 AM IMG<EMAIL_ADDRESS>wrote:

Hey Tom, We are familiar with attributes - subset, keep, and inplace,
which are used in pandas.dataframe.drop_duplicates function. Please tell us
about the attributes given in dask.dataframe.drop_duplicates function i.e. split_every,
split_out.
There is no explanation of these attributes in dask documentation also.
What are these?
[image: Screen Shot 2019-06-20 at 6 34 53 PM]
https://user-images.githubusercontent.com/19906193/59851431-3fffa800-938a-11e9-82fb-157ee7225821.png
Kindly help us. Thanks.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/dask/dask/issues/2952?email_source=notifications&email_token=AAKAOITW7IADS4YZMSFW663P3N6KZA5CNFSM4EGOUXW2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODYFLPWQ#issuecomment-504018906,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAKAOIR5WRIPM3GZPTXEKC3P3N6KZANCNFSM4EGOUXWQ
.

Reminder, it's helpful to have reproducible examples :)
This may be your best shot right now:
import pandas as pd
import dask.dataframe as dd

a = pd.DataFrame({"A": [1, 2, 3, 4]},
                 index=[0, 0, 1, 1])
b = dd.from_pandas(a, 2)

a.groupby(a.index).first()

def chunk(x):
    return x.first()

def agg(x):
    return x.first()

A PR implementing first and last on groupby objects would be helpful if you have time.

I am also interested in dropping the duplicate indexes. However, I fail to understand how this chunk of code aims to solve the aforementioned problem ?

@3ggaurav you can read about split_every and split_out here:
    split_every : int, optional
        Group partitions into groups of this size while performing a
        tree-reduction. If set to False, no tree-reduction will be used,
        and all intermediates will be concatenated and passed to ``aggregate``.
        Default is 8.
    split_out : int, optional
        Number of output partitions. Split occurs after first chunk reduction.

@Demirrr this is a very old issue. I think you'd be better off setting your index as a column and sing drop_duplicates:
import pandas as pd
import dask.dataframe as dd

a = pd.DataFrame({"A": [1, 2, 2, 3, 2, 2]},
                 index=[0, 0, 1, 1, 2, 2])
b = dd.from_pandas(a, 2)
out = b.reset_index().drop_duplicates(["index"]).set_index("index")
out.compute()

I am closing this. But if you are still having issues, please reopen.