Unsound type system behavior with tear-offs in DDC

The following code is free of strong mode errors and is compiled without complaint by DDC:
typedef void F<T>(T x);
class C<T> {
  void f(T x) {}
}
F<num> g(C<num> c) {
  return c.f; // (2)
}
dynamic h() {
  return new List<F<num>>();
}
main() {
  var x = g(new C<int>())); // (1)
  var y = h();
  y.add(x); // (3)
  x(1.5); // (4)
}

I believe this is correct--there are no static errors in the above code.
I can think of two possible ways for this code to behave:

When g tears off c.f, it tears off a function whose runtime type is (int) -> void.  Since (int) -> void is not a subtype of g's declared return type ((num) -> void) this causes a runtime error either at (1) or (2) (depending whether the check is done inside g or at the call site).
When g tears off c.f, it tears off a function containing a hidden run-time check of its argument; therefore its runtime type is either (num) -> void or (Object) -> void.  Hence no runtime error occurs at (1), (2), or (3).  A runtime error occurs at (4) when we try to pass a double to the tear-off.

(I prefer the former, but I think either behavior would be sound and consistent--it all comes down to a question of what you think the runtime type of a tearoff should be).
However, neither of these two things occurs.  What actually happens is that at (3), the following exception occurs: Type '(int) -> void' is not a subtype of type 'F((num) -> void)'
This seems unsound: if the tear-off's runtime type really is (int) -> void, it should never have been returned from g in the first place.  Conversely, anything returned by g should be possible to add to the list returned by h, since g's return type is F<num> and the list's runtime type is List<F<num>>.

CC @leafpetersen -- yeah now that I'm reading this, I think this has been a known issue for a while. The runtime type of a tear off can be a different type than what it's assigned to. It's still sound, because while the runtime type claims int -> void, it's actually sound to be used as Object -> void (because the int is callee side checked). Arguably, the problem is that the RTTI is too restrictive. For covariant keyword parameters, we actually use Object as the RTTI (tho the spec may require us to use the LUB instead of jumping straight to Object, I'm not sure).
I'll see if I can dig up any issues related to this.

I suspect we don't want to do a caller side check for every generic tear-off. So my guess is we should either: A) change the tearoff RTTI to be Object -> void (or the instantiateToBounds result for that type param, rather than Object), or B) keep the current behavior.

I would be fine with A.
I'm really uncomfortable with B (keep the current behavior) because it breaks an assumption that back ends are likely to make use of for purposes of optimization: the assumption that x as A always succeeds if x's static type is A (and similarly for is, neglecting the case of null).  We think we are justified in making that assumption because the type system is sound; that's why I think of this bug as a soundness bug, even though the tear-off contains a runtime type check.
Here is an example of the kind of problem that could occur:
typedef void F<T>(T x);
class C<T> {
  void f(T x) {}
}
F<num> g(C<num> c) {
  return c.f; // (2)
}
void h(F<int> callback) {
  if (callback is F<num>) {
    callback(1.5);
  } else {
    callback(1);
  }
}
main() {
  F<num> x = g(new C<int>());
  h(x);
}

When I run this program using DDC, the value passed to the callback is 1, because the RTTI of the callback indicates that its type is int -> void, which is not a subtype of num -> void.
Now what happens when I run it through an optimizing compiler?  The optimizing compiler inlines h, producing:
main() {
  F<num> x = g(new C<int>());
  if (x is F<num>) {
    x(1.5);
  } else {
    x(1);
  }
}

Then it optimizes x is F<num> to x != null (reasoning that x's static type is F<num>, so the only way the is check could fail is if x is null), and as a result my optimized program tries to pass 1.5 to the callback, leading to a runtime error.
That seems really bad.

right, currently, you can't optimize away is checks for function types like that. If we want that optimization to be possible, then we'll need to fix the RTTI of tear offs.

Not wanting to be a broken record, but I thought of another argument against the status quo: in our discussions about how to add runtime checks to preserve soundness in the face of contravariant uses of generics, we've tried to leave some freedom to the implementation as to how to implement the runtime checks.  The arguments we make to justify this implementation freedom also make soundness assumptions.
For instance, building on my previous example, if h were replaced with:
abstract class I<U> {
  void foo(U x);
}
class D extends I<F<int>> {
  void foo(F<num> x) {
    x(1);
  }
}
void h(F<num> x) {
  new D().foo(x);
}

When D.foo is called via interface I, a runtime check is needed to guard against the possibility that the caller is calling through a more general type like I<Object>.  But no check is needed when D.foo is called via D, as it is in h.
We are currently contemplating an implementation that would allow performance-critical back ends like dart2js to skip the unnecessary check when calling D.foo via D, but would allow non-performance-critical back ends like DDC to go ahead and do the check anyway.  Our intuition for why this is ok is that the check seems like a no-op when calling via D.  But if we don't fix this bug, it's not a no-op.  Which means that the behavior of this code would now depend on the back end; it would succeed with dart2js and fail with DDC.

yeah, sorry if I sounded like I was arguing for the status quo :). I am not & would prefer either fixing RTTI or checks on tearoffs, or fixing the RTTI.
Mostly just wanted to point out that the current implementation will not allow, say, an int method to be called on a String, like the typical soundness hole does. It does have the problem that you can fail at different points. It will fail when called with a non-int, or it will fail earlier if you try to runtime check it as something that accepts a non-int.

Fair enough--I'm glad to hear we would both prefer to have this fixed :)

aha, I found the informal spec & read through the language team discussion:
https://github.com/dart-lang/sdk/blob/master/docs/language/informal/covariant-overrides.md#dynamic-semantics
https://github.com/dart-lang/sdk/blob/master/docs/language/informal/covariant-from-class.md#reified-types
the reified type should be Object. I will fix this in DDC.

https://codereview.chromium.org/2995813002/

Yes, agreed with the resolution, and the reasoning.   We decided to go with Object for the RTTI for tearoffs in large part to avoid the awkwardness of having things for which the dynamic RTTI is not a subtype of the static type.

reopen because there were some additional tests that need status fixes & CL needs to re-land

https://codereview.chromium.org/3001053002/ -- just needed some status fixes.


TF_SessionRun with multiple inputs gives Segmentation Fault

System information
Have I written custom code (as opposed to using a stock example script provided in TensorFlow): yes
OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Linux RHEL
Mobile device (e.g. iPhone 8, Pixel 2, Samsung Galaxy) if the issue happens on mobile device: no
TensorFlow installed from (source or binary): source
TensorFlow version (use command below): 2.4
Python version: 3.6
Bazel version (if compiling from source): 0.16.1
Exact command to reproduce: compile and execute my program
Problem description:
i have created a logistic regression model using tf.estimators.linearClassifier and exported the model to serve it using C API.
the saved_model cli command has the following output:
The given SavedModel SignatureDef contains the following input(s):
inputs['a'] tensor_info:
dtype: DT_INT64
shape: (-1, 1)
name: Placeholder:0
inputs['b'] tensor_info:
dtype: DT_INT64
shape: (-1, 1)
name: Placeholder_1:0
The given SavedModel SignatureDef contains the following output(s):
outputs['all_class_ids'] tensor_info:
dtype: DT_INT32
shape: (-1, 2)
name: head/predictions/Tile:0
outputs['all_classes'] tensor_info:
dtype: DT_STRING
shape: (-1, 2)
name: head/predictions/Tile_1:0
outputs['class_ids'] tensor_info:
dtype: DT_INT64
shape: (-1, 1)
name: head/predictions/ExpandDims:0
outputs['classes'] tensor_info:
dtype: DT_STRING
shape: (-1, 1)
name: head/predictions/str_classes:0
outputs['logistic'] tensor_info:
dtype: DT_FLOAT
shape: (-1, 1)
name: head/predictions/logistic:0
outputs['logits'] tensor_info:
dtype: DT_FLOAT
shape: (-1, 1)
name: linear/linear_model/linear/linear_model/linear/linear_model/weighted_sum:0
outputs['probabilities'] tensor_info:
dtype: DT_FLOAT
shape: (-1, 2)
name: head/predictions/probabilities:0
Method name is: tensorflow/serving/predict
it has two input tensors and 5 outputs, the following is the c code use to run this  model:
#include <stdlib.h>
#include <stdio.h>
#include "tensorflow/c/c_api.h"
void NoOpDeallocator(void* data, size_t a, void* b) {}
int main()
{
//********* Read model
TF_Graph* Graph = TF_NewGraph();
TF_Status* Status = TF_NewStatus();
TF_SessionOptions* SessionOpts = TF_NewSessionOptions();
TF_Buffer* RunOpts = NULL;

const char* saved_model_dir = "/nobackup/rajassub/scripts/C-Programs/tensorflow/logicalRegression/";
const char* tags = "serve"; // default model serving tag; can change in future
int ntags = 1;

TF_Session* Session = TF_LoadSessionFromSavedModel(SessionOpts, RunOpts, saved_model_dir, &tags, ntags, Graph, NULL, Status);
if(TF_GetCode(Status) == TF_OK)
{
    printf("TF_LoadSessionFromSavedModel OK\n");
}
else
{
    printf("%s",TF_Message(Status));
}

//****** Get input tensor
//TODO : need to use saved_model_cli to read saved_model arch
int NumInputs = 2;

TF_Output* Input = (TF_Output*)malloc(sizeof(TF_Output) * NumInputs);

TF_Output t0 = {TF_GraphOperationByName(Graph, "Placeholder"), 0};
if(t0.oper == NULL)
    printf("ERROR: Failed TF_GraphOperationByName placeholder\n");
else
printf("TF_GraphOperationByName placeholder is OK\n");

TF_Output t1 = {TF_GraphOperationByName(Graph, "Placeholder_1"), 0};
if(t1.oper == NULL)
    printf("ERROR: Failed TF_GraphOperationByName placeholder_1\n");
else
printf("TF_GraphOperationByName placeholder_1 is OK\n");

Input[0] = t0;
Input[1] = t1;

//********* Get Output tensor
int NumOutputs = 5;
TF_Output* Output = (TF_Output*)malloc(sizeof(TF_Output) * NumOutputs);

TF_Output t2 = {TF_GraphOperationByName(Graph, "head/predictions/ExpandDims"), 0};
if(t2.oper == NULL)
    printf("ERROR: Failed TF_GraphOperationByName linear/head/predictions/ExpandDims\n");
else
printf("TF_GraphOperationByName linear/head/predictions/ExpandDims is OK\n");

TF_Output t3 = {TF_GraphOperationByName(Graph, "head/predictions/str_classes"), 0};
if(t3.oper == NULL)
    printf("ERROR: Failed TF_GraphOperationByName head/predictions/str_classes\n");
else
printf("TF_GraphOperationByName linear/head/predictions/str_classes is OK\n");

TF_Output t4 = {TF_GraphOperationByName(Graph, "head/predictions/logistic"), 0};
if(t4.oper == NULL)
    printf("ERROR: Failed TF_GraphOperationByName linear/head/predictions/logistic\n");
else
printf("TF_GraphOperationByName linear/head/predictions/logistic is OK\n");

TF_Output t5 = {TF_GraphOperationByName(Graph, "linear/linear_model/linear/linear_model/linear/linear_model/weighted_sum"), 0};
if(t5.oper == NULL)
    printf("ERROR: Failed TF_GraphOperationByName linear/linear_model/weighted_sum\n");
else
printf("TF_GraphOperationByName linear/linear_model/weighted_sum is OK\n");

TF_Output t6 = {TF_GraphOperationByName(Graph, "head/predictions/probabilities"), 0};
if(t6.oper == NULL)
    printf("ERROR: Failed TF_GraphOperationByName linear/head/predictions/probabilities\n");
else
printf("TF_GraphOperationByName linear/head/predictions/probabilities is OK\n");

Output[0] = t2;
Output[1] = t3;
Output[2] = t4;
Output[3] = t5;
Output[4] = t6;

//********* Allocate data for inputs & outputs
TF_Tensor** InputValues = (TF_Tensor**)malloc(sizeof(TF_Tensor*)*NumInputs);
TF_Tensor** OutputValues = (TF_Tensor**)malloc(sizeof(TF_Tensor*)*NumOutputs);

int ndims = 2;
int64_t dims[] = {1,1};
int64_t data1[] = {2};

int ndata = sizeof(int64_t)*1 ;// This is tricky, it number of bytes not number of element

TF_Tensor* int_tensor1 = TF_NewTensor(TF_FLOAT, dims, ndims, data1, ndata, &NoOpDeallocator, 0);
if (int_tensor1 != NULL)
{
    printf("TF_NewTensor is OK for int_tensor1\n");
}
else
printf("ERROR: Failed TF_NewTensor for int_tensor1\n");

int64_t data2[] = {3};
TF_Tensor* int_tensor2 = TF_NewTensor(TF_FLOAT, dims, ndims, data2, ndata, &NoOpDeallocator, 0);
if (int_tensor2 != NULL)
{
    printf("TF_NewTensor is OK for int_tensor2\n");
}
else
printf("ERROR: Failed TF_NewTensor for int_tensor2\n");
InputValues[0] = int_tensor1;
InputValues[1] = int_tensor2;

// //Run the Session
TF_SessionRun(Session, NULL, Input, InputValues, NumInputs, Output, OutputValues, NumOutputs, NULL, 0,NULL , Status);

if(TF_GetCode(Status) == TF_OK)
{
    printf("Session is OK\n");
}
else
{
    printf("%s",TF_Message(Status));
}

// //Free memory
TF_DeleteGraph(Graph);
TF_DeleteSession(Session, Status);
TF_DeleteSessionOptions(SessionOpts);
TF_DeleteStatus(Status);

void* buff = TF_TensorData(OutputValues[0]);
float* offsets = buff;
printf("Result Tensor :\n");
printf("%f\n",offsets[0]);
return 0;

}
But it is crashing at Session run step, it would be really helpful if someone could identify where the issue is.
output obtained:
TF_LoadSessionFromSavedModel OK
TF_GraphOperationByName placeholder is OK
TF_GraphOperationByName placeholder_1 is OK
TF_GraphOperationByName linear/head/predictions/ExpandDims is OK
TF_GraphOperationByName linear/head/predictions/str_classes is OK
TF_GraphOperationByName linear/head/predictions/logistic is OK
TF_GraphOperationByName linear/linear_model/weighted_sum is OK
TF_GraphOperationByName linear/head/predictions/probabilities is OK
TF_NewTensor is OK for int_tensor1
TF_NewTensor is OK for int_tensor2
Segmentation fault (core dumped)

@Vaishu-Jeeva,
Can you take a look at this similar issue1, issue2 which is about segmentation fault? We also recommend you to update the tensorflow to latest stable version and let us know if the issue still persists. Thanks!


WG/Project 'Discussions' page Consolidation

Proposal to Consolidate all the WG/Project 'Discussion' pages into a single area - https://github.com/orgs/Green-Software-Foundation/discussions/categories/standards-working-group

@adamj89 I believe this is either in progress or complete, could you advise if we can close this ticket or is there more left to discuss via the OC?

Still a couple of channels left but happy to close this


Feature Request: change ip after initial setup

Is your feature request related to a problem? Please describe.
currently to change the IP, the integration needs to be removed and recreated. The rest of the configs can be changed after the fact so why not IP
Describe the solution you'd like
Add IP to the list of already existing configurations that can be done after the integration is created
Describe alternatives you've considered
manually removing and reinstalling the integration entering in all configs from scratch.

+1 for this. My setups means I need to remove and re-add the integration if the network or power goes down.

This is now available in 3.7.2.

Huge thanks for the work on this tweak 👍🏼


Another way to resolve table identifier

What changes were proposed in this pull request?
CreateIndex is a sub class of LeafNode which has no children.
But we use the children to resolve table identifer. This is simple but weird.
So, here is a another way to do this.
How was this patch tested?
Unit tests

@yueawang @adrian-wang
Hi, This is a proposal to eliminate overriding children and containChild
Similar code is in DescribeTableCommand and AnalyzeTableCommand
Just a proposal, we can still keep current one.

LGTM


[[: not found

Hi. Just trying to run script on my new VPS and got this:

Sorry, this is my mistake, no need write sh before ./openvpn-install.sh
Issue closed.

Yes you can do bash openvpn-install.sh or ./openvpn-install.sh


When a node is recreated with same name but different uid, local-volume-provisioner fails

Hello
We been facing the issue described in  #945
The solution proposed in the issue suggests to not use the node UID in the pv.kubernetes.io/provisioned-by
However the local-volume is actually a different one (the new local-volume will be empty). I was wondering if we could include the node-uid in the pv name hash function (https://github.com/kubernetes-incubator/external-storage/blob/784da0987c3616400c9a3b0de71bb5e0a6d58ac7/local-volume/provisioner/pkg/discovery/discovery.go#L285). We could control this behavior based on the UseNodeNameOnly config option
/area local-volume

Hi @lbernail, when a node gets recreated but the disks are actually different, then I would actually suggest you setup those disks with a uuid built into the path.  Here's some background discussion on the issue: https://github.com/kubernetes/kubernetes/issues/51431.  In GKE, we have an option (available through whitelist) that will use unique UUIDs as the disk name for this exact issue.
The danger of using node-uid in the pv name while path is still the same is that multiple pods could end up using the same disk, causing data corruption.  The provisioner itself could also end up deleting data in use when cleaning up the first PV. For example:

Node UID A, local PV1 at /mnt/disk1.
Pod A is using PV1
Node gets recreated, node UID B, a new disk at the same /mnt/disk1.
PV2 gets created with /mnt/disk1.
Pod B starts using PV2.  But Pod A is still using PV1, and they're both writing to the same path = data corruption.
PV1 could be deleted at any time.  Local provisioner could cleanup the data from the path, even though PV2 is using the same path.

Thank you for your feeback, this really makes sense
I think we'll try do it the way you suggest: don't use node-id anymore and rely on uuid-based mountpaths

After thinking about it I have some quick follow-up questions on garbage collection of old PVs:

when you said PV1 could be deleted at any time, does this mean that the local-volume-provisioner will remove PV with invalid mountpaths (and so unbind them from their existing PVC)?
what happens to Pod A? if the node is recreated fast enough it might still be scheduled to the new node. Will the pod fail to start because the volume cannot be mounted ? If so will it be rescheduled once the old PV and PVC are garbage collected?
if a node is really deleted and does not come back, how do you perform PV garbage collection (we have an additional controller to remove these orphan volumes but I would be interested in knowing what the usual best practices are)

Thank you again

when you said PV1 could be deleted at any time, does this mean that the local-volume-provisioner will remove PV with invalid mountpaths (and so unbind them from their existing PVC)?

I meant that the user can delete the PVC at any time (before or after the node is recreated, before or after PV2 is created)

what happens to Pod A? if the node is recreated fast enough it might still be scheduled to the new node. Will the pod fail to start because the volume cannot be mounted ? If so will it be rescheduled once the old PV and PVC are garbage collected?

Pod A will be able to mount the volume if: 1) PVC + PV still exists  2) the mount path still exists 3) new node has the same name

if a node is really deleted and does not come back, how do you perform PV garbage collection (we have an additional controller to remove these orphan volumes but I would be interested in knowing what the usual best practices are)

Yeah, it has to be an external controller that does the garbage collection since the DaemonSet cannot spawn a pod on a non-existing node.  There is definitely a lot of room for improvement in this area, especially if workloads are able to recover from a lost disk.

Please open a new issue in https://github.com/kubernetes-sigs/sig-storage-local-static-provisioner if you still have problems
/close


The platform is not determined by process.platform statement.

I am using this module on Electron at Windows 10. At 130 line in index.js, the platform is not determined by process.platform statement because in my case, the variable of process doesn't have platform attribute. So by os module of Node, the platform should be checked by os.platform() === 'win32' in my case.
[index.js]
// Inject the right check depending on the OS
module.exports = (process.platform === 'win32') ? checkWin32 : checkUnix

Hey!
How it's possible that process.platform is not defined?
https://nodejs.org/api/process.html#process_process_platform
What's the context?

You should run this module from the main process, not the renderer.
That's a bad way to compute into the renderer process.
https://electronjs.org/docs/tutorial/application-architecture
Hope it helps.


Add http(s) for building behind proxy

I want to contribute behind a proxy !
I have to add that
I think it can be added globally, just sending 2 env var to build container

@WTFKr0 thanks but as this is pretty related to your station, this should be configured on your Docker engine and not in the Portainer build system IMO.
See the equivalent of https://docs.docker.com/engine/admin/systemd/#http-proxy for your distro.
Build system is already complex and messy at the time, I'm not OK to add platform/setup related configurations inside it.

In fact, there is 2 things
I already got proxy on docker daemon, no problem with that
Here I need to configure it for the build, to get go dependecies
But I understand your point of view, no problem :D


reflect.Value.Elem is unaddressable for interfaces

What version of Go are you using (go version)?
tip, go version devel +27eebba
What did you do?
I tried to change the value inside interface{} variable.
i := interface{}("hello")
v := reflect.ValueOf(&i).Elem()
v.Elem().SetString("world")
fmt.Println(i)

https://play.golang.org/p/U8WaCBA4o4
What did you expect to see?
"world" stored in i.
What did you see instead?
Runtime error.
Proposed change
diff --git a/src/reflect/all_test.go b/src/reflect/all_test.go
index 780799c..4bb408b 100644
--- a/src/reflect/all_test.go
+++ b/src/reflect/all_test.go
@@ -5752,3 +5752,10 @@ func BenchmarkNew(b *testing.B) {
 		New(v)
 	}
 }
+
+func TestInterfaceElemSet(t *testing.T) {
+	i := interface{}("hello")
+	v := ValueOf(&i).Elem()
+	v.Elem().SetString("world")
+	assert(t, i.(string), "world")
+}
diff --git a/src/reflect/value.go b/src/reflect/value.go
index e6b846e..0340d25 100644
--- a/src/reflect/value.go
+++ b/src/reflect/value.go
@@ -714,6 +714,9 @@ func (v Value) Elem() Value {
 		x := unpackEface(eface)
 		if x.flag != 0 {
 			x.flag |= v.flag & flagRO
+			if x.flag&flagIndir != 0 {
+				x.flag |= flagAddr
+			}
 		}
 		return x
 	case Ptr:

That does not correspond to an operation permitted by the language.  In the language, a value stored in an interface variable is not addressable.  The interface variable is addressable, but not the value contained within.  It's also inconsistent: your code permits changing the value if it is something like a string, but not if it is something like a pointer.  We're not going to make this change.


Incomplete bounds check in set_pixel

Version of ssd1306 in use (if applicable): master
Display resolution and interface: I2C, 128x32

Description of the problem
The bounds check in GraphicsMode::set_pixel is incomplete, which causes overdraw on the right side of the display to be wrapped around to the left side.
Test case (if applicable)
 let style = PrimitiveStyleBuilder::new()
    .stroke_width(1)
    .stroke_color(BinaryColor::On)
    .build();

Circle::new(Point::new(128, 16), 8)
    .into_styled(style)
    .draw(&mut disp)
    .unwrap();

This now uses the bounding_box().contains() method from e-g 0.7. Untested, but closed by #154 nonetheless.


Aggregation fuzzer is failing in nightly runs

Description
There is an aggregation fuzzer failure on the main branch in nightly runs: https://github.com/facebookincubator/velox/actions/runs/9867509773/job/27248394740.
Error Reproduction
No response
Relevant logs
No response

I've checked the recent aggregation fuzzer test failures on set_agg(). It's a false alarm. It was due to a recent change in Presto that makes set_agg() not respect order-by on the inputs. A most recent change (https://github.com/prestodb/presto/commit/6d2e8cb53bedb9e7e245971c8668441ab75c493f) makes set_agg() respect order-by on the inputs again. So our fuzzer test will be fine once we compare results with Presto 0.289. Before that, we can add set_agg to the skip function list to avoid the noise.

@kagamiori Should be safe to close ?


perf: Improve RPC bulking and delegate alloc fix

This pull request is included in version 12.1.1
The release is available to download on GitHub release or in the MLAPI Installer.


Dev user itineraries

Added my itineraries page and allow users to add new itineraries

Check merge conflict

Fixed

Check merge conflict

Fixed

Check merge conflict

Fixed


Possible Bug. Metadata on tasks not rendered correctly

What happened?
I keep web bookmarks with dataview tasks using the following format
* [b] #tag-1 Link 1 [url:: https://www.one.com] [date::2023-01-04]
* [b] #tag-2 Link 2 [url:: https://www.two.com] [date::2023-02-04]

(The [b] is rendered as a bookmark icon with minimal theme)
With this method I can populate a table/list with all bookmarks from the various notes in my vault. This part is working just fine.
But on the pages with these bookmark tasks, the metadata field url renders the first url from the list for each succeeding bookmark task (in this example "Link 1" corresponds to "www.one.com", "Link 2" to "www.two.com", etc):

Some things to note:

Test was done in a fresh vault with only Dataview and Minimal theme installed (same behavior seen with the default theme)
Moving the order of items does not matter, whatever the first task is that sets url, the same will be repeated
The notes in question do not have a frontmatter field with the key url. And adding this frontmatter field actually does not affected the reading view rendering or query results
Again, querying the task metadata returns the correct value for each task, its just the reading view rendering on the individual pages

Thank you
DQL
No response
JS
No response
Dataview Version
0.5.64
Obsidian Version
1.4.16
OS
MacOS

I'm having the same thing, it's only visually affecting the metadata, the queries are correct.
Edit mode:

View mode:

If it's not a list, it's OK in view mode:

You need , between metadata points. [][] are also a form of markdown links and thus it thinks it is a link if there is no separator like a ,
It isn't a dataview bug but a markdown syntax clash

It seems to not work (or maybe I misunderstood the separator thing between [] [])
Another weird thing is that it's not interrrupted by a new paragraph, it just picks up the first tag and replicates it.
This was done on sandbox in Obisdian, default theme and only Dataview as plugin installed.
Raw:
- [ ] [resp::Bob] task 1
- [ ] [resp::Mike] task 2

- [ ] (resp::John) task 1
- [ ] (resp::Deke) task 2

Paragraph.

- [ ] , [resp::Daniel] task 1
- [ ] , [resp::Oscar] task 2

- [ ] , (resp::Jimmy) task 1
- [ ] , (resp::David) task 2

Paragraph

- [ ] task 1[resp::Donny]
- [ ] task 2 [resp::Eric]

- [ ] task 1 (resp::Nate)
- [ ] task2 (resp::Roman)

Rendered view:

Yes This is a bug. It appeared in a recent update. I also encountered this problem yesterday. Reinstalling the plugin did not solve the issue. The only thing that helped was that there was a vault with an unupdated plugin (dated October 23, 2023), from which I copied the main.js file to the main vault and everything was resolved.

This seems related to #2155 and #2168, and in one of those cases it uses the syntax [ ] -  [ ], and in the other it doesn't even have the second inline field. So it do seem like there is something going on with inline fields and lists in v0.5.64


Dialog: Support a responsive value for isOpen

Description
In some cases you want to display data in a dialog on mobile but on desktop keep it on the page.
This is currently not possible with this component due to the lack of responsive support on the isOpen value.
Wrapping the dialog in a div and setting display: none on smaller breakpoints neither works.
Steps to reproduce
<Box sx={{ display: ['block', 'block', 'none'] }}>
     <Dialog title={TITLE} onClose={onClickClose}>test</Dialog
</Box>

Version
Latest
Browser
Safari

Notes from Maintainer Sync (July 22nd)
Context from Slack: https://github.slack.com/archives/GACAW0NPM/p1721383080023129
We're going to leave this in the inbox this week while waiting for the conversation in Slack to resolve 👀

Notes from Maintainer Sync (August 5th)
It might be a good idea to experiment / prototype how this would work, testing focus management, declarative buttons of a Dialog, etc.
We should revisit this in a future planning cycle to see if we can dedicate some time to the explorations mentioned. Please let us know if there is any urgency around this sooner.


Api test

Leave some custom decorator for test case only related to API and crendential

Thank you for addressing some of the changes @Yanqiao4396. Please not that there are other remaining ones mentioned above, specifically the removal of using the mock API in one test case and the need to add the new commands to github actions workflow to replace the old test/coverage commands.


Issue 710 monaco freemarker + extends showcase

Add freemarker2 (as well as freemarker2.tag-angle.interpolation-bracket, freemarker2.tag-angle.interpolation-dollar, freemarker2.tag-auto.interpolation-bracket, freemarker2.tag-auto.interpolation-dollar, freemarker2.tag-bracket.interpolation-bracket, and freemarker2.tag-bracket.interpolation-dollar) to built-in languages and expand showcase
Update to monaco editor 0.32.1
Also include language in default model uri to have a a unqiue URI for each language ID.
Add extender showcase for diff navigator (add buttons to navigate between changes in diff editor)

This is so awesome. Let me check this out!


[Protected Var] Report 31003 "Export VAT Stmt. Dialog CZL"

Describe the request
please do protected var for these variables:
NoTax: Boolean;
PrintInIntegers: Boolean;
UseAmtsInAddCurr: Boolean;
ReasonsObservedOnCtrlEditable: Boolean;
RoundingDirectionCtrlVisible: Boolean;
FilledByEmployeeNo: Code[20];
VATStatementTemplateName: Code[10];
VATStatementName: Code[10];
NextYearVATPeriodCode: Code[3];
StartDate: Date;
EndDate: Date;
ReasonsObservedOn: Date;
Month: Integer;
Quarter: Integer;
Year: Integer;
Additional context
We need work with variables.
Internal work item: AB#523876

hello @JesperSchulz, can you check this issue?

This will ship with 24.2. Not sure why our automation isn't pushing updates right now. I'll investigate.


PP-2883 GoCardless SDK integration - part 2

WHAT

Updated GoCardless SDK library
Added WebhookVerifier implementation based on https://github.com/gocardless/gocardless-pro-java-example

@rauligs good point, thanks! Addressed the changes.


latest Zanata translation changes in jbpm-designer from 2016-11-02

jenkins please retest this

+1


To add an "how to contribute to the documentation" section

To describe the process of editing a page and submitting a PR to edit a website page.

Done --> https://labviewcommunitytraining.github.io/cti-documentation/en/cti-doc/contributing.html


PilotingState SpeedChanged is absent in drone state for Jumping Sumo

When I try to retrieve the device state to find out its speed, there is no SpeedChanged command for PilotingState class. The command is specified in arsdk-xml though:
<cmd name="SpeedChanged" id="2"> 	Notification sent when JS speed changes. 	<arg name="speed" type="i8"> 		Speed command applied to motors in range [-100;100]. 	</arg> 	<arg name="realSpeed" type="i16"> 		Actual real-world speed in cm/s. Value -32768 returned if not available. 	</arg> </cmd>
and screen shot shows what I am actually getting.

Is it a firmware problem? How can I check this?
Thank you

Hi,
This project has its own version of  arsdk-xml as a submodule. I've just made a commit which update it to the latest public revision.
You can always do it manually by running git submodule update --remote.

Hi. Thank you. It does not change things for me. I used a recent version from remote source.
It looks more like SpeedChanged is not retrieved from the device. I didn't find out yet how to check it.

If I remember correctly, this command is only sent by Jumping Race drones, not by Jumping Sumo / Jumping Night drones ... That may be the reason too ;)

This command is specified in jsumo.xml. I think jumping race and sumo share the same specification. I can send the command to set the speed, and move the drone around. It make no sense not to have the state for speed if I can change it.

I just confirmed with the firmware team: this command is indeed "Jumping Race" only.
I don't know the exact reason behind that choice (that's more a question for the support forums, but to be honest there is a very little chance that this would be implemented), but that's why you never receive the message.

Thank you very much for your help!


Fixes #3 - Added CODE_OF_CONDUCT.md

You will have add the integration for Travis-CI to overcome the build failure.

@Janakshi28 Thank You. Can I know how to integrate Travis-CI?

@harshanas, you have to add a .travis.yml file with the configurations to the root of the project.
Have a look at this-> To get started with Travis CI

Thanks.


Investigate integrating sw-toolbox

Ionic version:  (check one with "x")
[ ] 1.x
[ x] 2.x
I'm submitting a ...  (check one with "x")
[ ] bug report
[ x] feature request
[ ] support request => Please do not submit support requests here, use one of these channels: https://forum.ionicframework.com/ or http://ionicworldwide.herokuapp.com/
I want to investigate integrating sw-toolbox into Ionic to replace our current handwritten approach to service-workers. This would make it much easier for our users to customize the service worker to meet their needs and the needs of their app and would also allow for our users to easily set up web push notifications in their app compared to our current handwritten approach.

@mlynch @adamdbradley When you guys get a chance id love to get some feedback on this idea.

after discussing this offline with max and adam I am happy to say that i have opened two pr's needed to integrate this https://github.com/driftyco/ionic2-app-base/pull/118 and https://github.com/driftyco/ionic-app-scripts/pull/560

Can we close this since it isn't a change in the framework?


[BUG] Desactived depreciation test & add test for website builder

Summary
The test depreciation test can't be used right now until the new version of qiskit isn't largely used. It come from we still used the old way to check the qiskit version of projects in order to not get the terra version. It will be able to revert this change when qiskit terra gonna totally disappeared.
Cause :
https://github.com/Qiskit/ecosystem/blob/0212a863ffdc1ece3964285ac295db6565500332/ecosystem/templates/configured_tox.ini#L32
As we want to keep the qiskit version and not the terra version we have to keep it this way for now.
Details and comments

[x] Update test test_tests_runner_on_simple_repo
[x] Add test test_website_builder

Closes #572

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

@frankharkins ready for your review :)


Wrong speed detect in info.nic

Issue migrated from https://api.github.com/repos/zero-os/0-core/issues/713, opened by @grimpy
https://github.com/zero-os/0-core/blob/4504a0260cc4fd5f7946de31814fb37b52d1a89e/base/builtin/info.go#L87
# cat /sys/class/net/eno3/sp
-1

{'addrs': [],
  'flags': ['up', 'broadcast', 'multicast'],
  'hardwareaddr': 'ac:1f:6b:47:a1:2d',
  'mtu': 2000,
  'name': 'eno2',
  'speed':<PHONE_NUMBER>},

When speed in kernel is reported as -1 we get the wrong speed was:<PHONE_NUMBER>
Underflow problem?

commented by @muhamadazmy
fixed by https://github.com/zero-os/0-core/commit/8ddc304e6079a6b0a715d67fbfb5f40b3cbf44b2


HTTP requests are exhausting heap memory. (IDFGH-9141)

Answers checklist.

[X] I have read the documentation ESP-IDF Programming Guide and the issue is not addressed there.
[X] I have updated my IDF branch (master or release) to the latest version and checked that the issue is present there.
[X] I have searched the issue tracker for a similar issue and not found a similar issue.

IDF version.
V5.0
Operating System used.
Linux
How did you build your project?
VS Code IDE
If you are using Windows, please specify command line type.
None
Development Kit.
Custom Board
Power Supply used.
USB
What is the expected behavior?
No heap size difference before making http request and after esp_http_client_cleanup.
What is the actual behavior?
Free heap size gets smaller and smaller after every http request.
Like LOG below.
I (5434) HTTP_CLIENT: Connected to AP, begin http example
I (7534) HTTP_CLIENT: HTTP GET Status = 200, content_length = 291
I (7544) HTTP_CLIENT: HTTP_EVENT_DISCONNECTED
I (7544) HTTP_CLIENT: Free space: 234940
I (8974) HTTP_CLIENT: HTTP GET Status = 200, content_length = 291
I (8974) HTTP_CLIENT: HTTP_EVENT_DISCONNECTED
I (8974) HTTP_CLIENT: Free space: 234728
I (9784) HTTP_CLIENT: HTTP GET Status = 200, content_length = 291
I (9794) HTTP_CLIENT: HTTP_EVENT_DISCONNECTED
I (9794) HTTP_CLIENT: Free space: 234512
I (10614) HTTP_CLIENT: HTTP GET Status = 200, content_length = 291
I (10614) HTTP_CLIENT: HTTP_EVENT_DISCONNECTED
I (10614) HTTP_CLIENT: Free space: 234308
I (11324) HTTP_CLIENT: HTTP GET Status = 200, content_length = 291
I (11324) HTTP_CLIENT: HTTP_EVENT_DISCONNECTED
I (11324) HTTP_CLIENT: Free space: 233900
I (13064) HTTP_CLIENT: HTTP GET Status = 200, content_length = 291
I (13074) HTTP_CLIENT: HTTP_EVENT_DISCONNECTED
I (13074) HTTP_CLIENT: Free space: 233884
I (13784) HTTP_CLIENT: HTTP GET Status = 200, content_length = 291
I (13784) HTTP_CLIENT: HTTP_EVENT_DISCONNECTED
I (13784) HTTP_CLIENT: Free space: 233464
I (14604) HTTP_CLIENT: HTTP GET Status = 200, content_length = 291
I (14604) HTTP_CLIENT: HTTP_EVENT_DISCONNECTED
I (14604) HTTP_CLIENT: Free space: 233460
I (18904) HTTP_CLIENT: HTTP GET Status = 200, content_length = 291
I (18904) HTTP_CLIENT: HTTP_EVENT_DISCONNECTED
I (18904) HTTP_CLIENT: Free space: 233048
Steps to reproduce.

Create a new project with esp_http_client_example.
Delete every method after the GET method in http_rest_with_url.
Loop http_rest_with_url in http_test_task and log free heap size after every call.

Debug Logs.
No response
More Information.
No response

@gasaimaple could you check, does the heap size stabilize after running the example for some time, or does it keep declining even after long time? If you break out of the loop and just print the heap size every now and then without doing more requests, does the heap size recover?
If yes, then this might indicate that the heap usage you are seeing is related to sockets left in TIME_WAIT state. By default, MSL is set to 60 seconds, and the socket is kept in the TIME_WAIT state by the TCP stack for 2xMSL interval.

@gasaimaple could you check, does the heap size stabilize after running the example for some time, or does it keep declining even after long time? If you break out of the loop and just print the heap size every now and then without doing more requests, does the heap size recover?
If yes, then this might indicate that the heap usage you are seeing is related to sockets left in TIME_WAIT state. By default, MSL is set to 60 seconds, and the socket is kept in the TIME_WAIT state by the TCP stack for 2xMSL interval.

Print out heap size does not affect heap size. Heap size do recover after 120 seconds.
But There's still one question: Why is the heap usage per request so random?


Add to calendar for Events

Having an Add to Calendar button that provides .ics for the event might be a good feature.

@gaurovgiri I can try to work on this

Sorry for not posting any updates, i was having some issues on my side, this issue will be completed by this week !

@BISHALTWR Issue is updated with PR #127


[Feature] Encode whole json

The json with inception plugin below:
{
  "a{% inception_json %}": {
    "b": "c"
  }
}

encodes the json to:
{"a":"{\"b\":\"c\"}"}

It's nice, but I'd like to be able to encode the whole json, not just one property (if it's possible).

This was possible in a previous version but was broken in some refactoring. Brought it back by allowing outside json root (must be the first thing in the body):
{% inception_json  %} {   "a": {     "b": "c"   } }
Note that the insomnia editor will always show an error on the first line where the tag is. That is because parsing is done before tag expansion and affects all plugins.


[FIX] Fix multi -n detection for echo

Resolves issue #158

Because it also has to work with -nnnnn. For any of them, so -nnnn -n -nnnnn -nnnn is also valid.
I hope I don't understand you incorrectly.

So weird -nnnn should work, for me it sounds like bug 🧐

I agree, it's very weird...
But the tester also tests for it, so it helps the score :)


Access to pretrained models

Thank to the authors for making the code available.
I want to test the model with the pretrained weights but the access to the google drive from the link is restricted.
Could you allow the download of the pretrained models ?

Thank to the authors for making the code available. I want to test the model with the pretrained weights but the access to the google drive from the link is restricted. Could you allow the download of the pretrained models ?

Hi, have you got the pretrained models? The link is invalid.

The author sent me a working link:
https://wormhole.app/8Lr4b#tS8QVcPTSSMt2NH1LogSGA

The author sent me a working link: https://wormhole.app/8Lr4b#tS8QVcPTSSMt2NH1LogSGA

Hello~ Can you share the pre-trained models with me or update the link?

The author sent me a working link: https://wormhole.app/8Lr4b#tS8QVcPTSSMt2NH1LogSGA

Hi there!
The link to the Google Drive posted on the project page is invalid. Could you share the pretrained models with me if you already downloaded those in your local? Thank you!

Hi! I am also looking for a working link for pretrained models but the link is invalid

The author sent me a working link: https://wormhole.app/8Lr4b#tS8QVcPTSSMt2NH1LogSGA

Hello, I also need a link to a pre-trained model, can you share one with me? Thanks!

Can you please update the download links for the pretrained models?


extend AvS integration with KEB

related: Kyma runtime AvS compatibility with CE ANS subscription (Outage Mapper)

i've bump the tag version as requested.


Auth: Support garbage collection for KVStore Identity Backend

Currenty, Auth Map garbage collection builds on top of K8s Resource of type CiliumIdentity to delete auth map entries whenever a identity gets deleted. This only works if the Identity Store is backed by CRDs and not KVStore.
This issue should track this limitation and implement support for KVStore.

@mhofstetter  Is there a commandline guardrail in cilium-agent or cilium-operator that informs or prevents the user from deploying Cilium with this combination of settings? That check would be good to land in 1.14, then we can target kvstore backend support with auth mode in a subsequent release.

@mhofstetter Is there a commandline guardrail in cilium-agent or cilium-operator that informs or prevents the user from deploying Cilium with this combination of settings? That check would be good to land in 1.14, then we can target kvstore backend support with auth mode in a subsequent release.

@joestringer no - not yet.
But https://github.com/cilium/cilium/pull/26373 & https://github.com/cilium/cilium/pull/26375, which are planned to land in v1.14, should cover the issue with the duplicated CiliumIdentity K8s Watcher and add support for the KVStore Identity Backend.

@mhofstetter thanks. What's the state of testing for the auth feature overall and in kvstore mode in particular? Do we need to mark some of this as beta?

@joestringer In general, the feature is covered by the Cilium CLI connectivity tests which are executed in the Cilium Conformance-E2E-Tests.
As for the KVStore mode in particular, we might lack some coverage because AFAIK the Conformance-E2E tests don't test KVStore mode. But we only rely on KVStore only indirectly for Auth Map Garbage Collection, where we are interested in the deleted CiliumIdentities. By using the observable Identity Allocator that acts as an abstraction for the CRD & KVStore identity backends we should be fine (https://github.com/cilium/cilium/pull/26373 & https://github.com/cilium/cilium/pull/26375).
For the time being, we lack automated e2e-tests for the re-auth & auth map gc part. These parts are covered with Unit Tests only. Connectivity Tests might not be the ideal test for this use-case.
Overall i think we should discuss the state of the auth feature for v1.14 in general and not KVStore in particular (at least after having the mentioned PRs merged and this issue closed). Therefore i would recommend to discuss this on the overall auth roadmap issue. WDYT?
/cc @youngnick

I think the mutual feature overall is in good shape, with pretty good test coverage, and meets most of the criteria for a Limited feature, with the exception of actual usage, but I'll put something on the overall auth roadmap issue.


[bug report] CI Failed: snapshot not found

Issue Description
Check ci log, there may failed when start a container
... Error:failed to create container, id: 5ea65b60e492366837af898d9848281100e30d955763599618cfb2010cbd4f63: snapshot 5ea65b60e492366837af898d9848281100e30d955763599618cfb2010cbd4f63 does not exist: not found

Describe what happened:
Describe what you expected to happen:
How to reproduce it (as minimally and precisely as possible):
1.
2.
3.
Anything else we need to know?:
Environment:

pouch version (use pouch version):
OS (e.g. from /etc/os-release):
Kernel (e.g. uname -a):
Install tools:
Others:

I think this has been fixed in https://github.com/alibaba/pouch/pull/436.
Feel free to tell us if the issue happen again.
Closing this.


added optional keepOffset parameter to Moment.toISOString()

The keepOffset optional parameter was added to version 2.20 of moment.  Since it is a minor change and backwards compatible, I added it to the 2.3 type definition.  If it's better to create a new version, I can.

@LoganBarnett , here is the PR for the moment typedef change

Hi @GAntoine , the moment lib def tests are failing for a fresh pull from master right now for flow version 62:
https://travis-ci.org/flowtype/flow-typed/jobs/370600171#L1022
It looks to me like ExpectError is not suppressing the type error for some reason.
I also noticed that there are warnings for the $ExpectError tests for the versions 59-61.  Can you provide any guidance for moving forward?  I had thought about limiting the tests to flow versions 63 and up.
TIA,
Nathan

So this basically removed the moment libdef for every Flow < 0.63 users... :\
A new def should have been created:
flow_v0.25.x-v0.62.x-/moment_v2.3.x.js
And the current one renamed:
flow_v0.63.x-/moment_v2.3.x.js


Revert "Fix anki crash when deleting audio sources"

Reverts DillonWall/generate-batch-audio-anki-addon#7
@B0sh
Actually, after further testing there is a bug where adding a new source adds one with the same position number as the previous source, which leads to having a duplicate source number and further leads to bugs related to that.
Going to revert for now, but will look into implementing these changes with this bug fixed.
Temporary workaround to the previous source list: Only delete sources from the end of the list, if deleting from the middle, it will cause bugs

Dang, well I'm sure the fix for that has something do with the area of the code I changed. I'm pretty busy right now but if I get some free time I might give another crack at it. I'm surprised I didn't noticed that when I was testing


chore(main): release 1.4.0

:robot: I have created a release beep boop
1.4.0 (2024-07-09)
Features

actions: change for build (eb170c8)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/SHU-red/GopherLetics/releases/tag/v1.4.0 :sunflower:


[BEAM-9547] Raise WontImplementError for a few more operations

attrs is an experimental feature
argmax, argmin return an offset into the DataFrame, not an index label, so they are sensitive to order
ravel is a utility for producing a numpy array, a non-deferred type.

GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI.

R: @ibzib

ping @ibzib are you ok reviewing this?

CC: @rohdesamuel


feat: add keyboard support and accessibility improvements

Render the box list (svg collection of items) as unordered list for better semantics
Add keyboard support for the box list selection
Add ui tests (vitest)

👍🏻


small amount issue for delegation

Something wrong in the math with 0.1 conviction and amounts <1

@wirednkod this is a bug in unitToPlanck in @polkadot-ui/utils.
Can you have a look?
https://github.com/polkadot-ui/library/issues/347


chore(examples): minor adjustments to with-shell-commands

Description

Rename the app directories from apps/apps-* → apps/app-*.
Fix a typo

Testing Instructions
N/A

Ah good point, missed that! Thanks @anthonyshew, will update the PR Monday - travelling currently.


feat: added silentSso call, to ensure isAuthenticated gets true after page refresh

When logging into the application and refreshing the page, you need to click Login again, to be authenticated. The click on login will lead to a short (mostly too fast to see) redirect.
I think it's fairly uncommon for users to click 'Login' again after a page refresh, or when navigating to an application via link, which they just authenticated for in e.g. a different tab.
As a developer following this sample, I am expecting isAuthenticated to return true after a page refresh or when navigating to the same app via link (assuming that i just logged in some minutes ago).
I read through msal docs and stumbled upon the ssoSilent function, which the docs of msal also exactly point out for the use case of "being already logged in, but don't want to redirect" (see https://github.com/AzureAD/microsoft-authentication-library-for-js/blob/dev/lib/msal-browser/docs/login-user.md#silent-login-with-ssosilent).
We did not face this issue for our applications, since we have axios interceptors that acquire an access token silently, which leads to the same behaviour of setting isAuthenticated to true, since a session at is B2C already existing.
I extended the sample to contain some example logic + comments on why you might want to do this.

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


Create structured BugsnagStackframe class

Goal
Creates a publicly accessible BugsnagStackframe class which holds fields in properties, rather than an NSDictionary.
A project-visible BugsnagStacktrace has been created to sanitise the stacktrace - notably by trimming its length to <200 frames, as per the spec.
The BugsnagStackframe class will eventually be present on the BugsnagError and BugsnagThread classes, which will be implemented in future PRs. For now the JSON serializer has been updated to use the object internally.
Changeset

Add properties to BugsnagStackframe which can be edited by the user. Note that these deviate from the spec
Create BugsnagStacktrace which limits the number of BugsnagStackframe to <200, and encapsulates stacktraces to allow any similar modifications in future
Updated BugsnagEvent JSON serialization to use BugsnagStacktrace internally
Refactored BSGFormatFrame to serializers in BugsnagStackframe/BugsnagStacktrace

Tests
Added unit tests to verify that stacktraces can be parsed from a dictionary/serialized to JSON. Relied on existing unit test coverage to verify the event JSON remains unchanged.

Addressed inline comments and resolved the XCode source code organisation nit. I've also rebased against v6 to fix the merge conflicts.


Spurious message when fail threshold is met

when the verify function throws a message.str() exception, the main method cannot correctly accept this exception and skips to the default exception handling.

Thanks @cmcmone for adding the issue. I changed the issue title to reflect the actual problem, which is that an exception is correctly raised when fail threshold is met, but the driver outputs the extra message Error -10: Unexpected error. In this case, the driver should simply stop testing and print summary.

Also, I have analyzed the cause of the problem and traced it to the type of error thrown in function verify.  We need to throw a custom error and catch the custom error in the driver. I have assigned this issue to myself and expect a resolution to be included in Milestone M5.

Just noting here an observation heard from @Ndemco that the details of the failed message is not logged when the fail threshold is met. I revise the issue title to focus on this observation, but that would make the issue more serious.


ios-good-practices

ios-good-practices - Good ideas for iOS development, by Futurice developers. http://www.futurice.com

Add to Style Guides ?

Already added to style guides, I'll close this PR, but we must remember to organize this section. thanks @lfarah


[FEATURE]Binary vector support with Lucene

Similar to https://github.com/opensearch-project/k-NN/issues/1764, I like to see binary vector support with Lucene engine

I will pick this one up, thanks!

Issue
The main issue here is that the Lucene VectorSimilarityFunction [1] does not define the HAMMING distance calculation and [2] is implemented as a java enum so it's not possible to extend with our own compare functions.
It looks like this issue has been discussed a few places in Lucene:

https://github.com/apache/lucene/pull/13076
https://github.com/apache/lucene/issues/13505
https://github.com/apache/lucene/pull/13288

And ultimately what Lucene has done, at least for now, is rather than introduce HAMMING to the VectorSimilarityFunction they have made it easier to extend the FlatVectorsFormat class to provide a custom scorer, and with that scorer we can do whatever score computations we would like.
Changes Needed
Mapper related changes:

Update LuceneHNSWMethod to support binary data type and hamming space
Since we won't be taking the scoring method from the VectorSimilarityFunction we need to double check the validations for not supporting anything other than hamming.

VectorDataType changes:

For the BINARY data type we can use the KnnByteVectorField and adjust the dimension by 8 accordingly, so basically we store an 8 dimension binary vector as a 1 dimensional byte vector. Conceptually, we are already doing this in other places.

PerFieldKnnVectorsFormat changes:

In order to calculate the hamming distance we need to implement a custom FlatVectorsScorer, which means a custom KnnVectorsFormat is also needed. So it would look something like BinaryVectorsFormat → Lucene99FlatVectorsFormat → BinaryFlatVectorsScorer
Lucene has some sample implementations of this in HnswBitVectorsFormat and FlatBitVectorsScorer, but since these are not in the backwards compatible packages we probably shouldn't use them yet and instead implement our own classes.

@heemin32 @navneet1v @jmazanec15 do these changes sound reasonable to you? Let me know if you think I missed any big parts too.

I think there's potentially some more discussion to be had with Lucene as well. It seems that now there are 2 ways to provide distance calculations:

The existing VectorSimilarityFunction, which is actually encoded into the segment file itself
Via a customer scorer through a custom KnnVectorsFormat.

This seems confusing because this means the format can completely ignoring what is encoded into it's own file, so at the very least I think we can probably start a discussion on how the future of VectorSimilarityFunction looks and how Lucene plans on either deprecating it or enhancing it.

@jed326 Thanks for all the details.
From the changes standpoint more less I am aligned that we need all those changes. I just have question on this:

Lucene has some sample implementations of this in HnswBitVectorsFormat and FlatBitVectorsScorer, but since these are not in the backwards compatible packages we probably shouldn't use them yet and instead implement our own classes.

If a codec is not present in backwards compatible codec then it doesn't mean that it shouldn't be use. Actually its the other way round.
Nevertheless, as per this comment: https://github.com/apache/lucene/pull/13288#issuecomment-2149954395 Lucene doesn't officially support the BitVectors so we have to create our own KNNVectorsFormat and Scorer. But we can take some reference from BitVectorsFormat from Lucene.
Another reason for the implementation is, even if we make changes in Lucene, Lucene is already moved to 10.x version and Opensearch currently have no plans to upgrade Lucene to 10. So, in the light of that I think we should implement out own format.

I think there's potentially some more discussion to be had with Lucene as well. It seems that now there are 2 ways to provide distance calculations:

The existing VectorSimilarityFunction, which is actually encoded into the segment file itself
Via a customer scorer through a custom KnnVectorsFormat.

This seems confusing because this means the format can completely ignore what is encoded into it's own file, so at the very least I think we can probably start a discussion on how the future of VectorSimilarityFunction looks and how Lucene plans on either deprecating it or enhancing it.

On this I completely agree that we should start a discussion on Lucene and understand what is the long term plan/direction.

Thanks @navneet1v. I opened a discussion on Lucene for this: https://github.com/apache/lucene/issues/14025, please take a look when you get a chance!


Remove the language preview markers.

Keep the mechanism as we might enable it for future beta/staging releases when testing new languages.

@microbit-robert I propose this is the last PR we merge before we change the staging deployment location. Let me know if there's anything else we should consider as it could be late today before we can merge anything else that folks will see.


Error generating authToken using TrueLayerClient

I can't get an access token to create a payment using TrueLayerClient. The response has a status of 400 and an "invalid_scope" error message. Before the error appeared, I had several successful attempts, but then it stopped working. When I get a token using postman everything is fine

TRACE: [HTTP|b629674b-949c-4250-9de6-e778b5050ac8] --> POST https://auth.truelayer-sandbox.com/connect/token headers=[accept-encoding: gzip, connection: Keep-Alive, content-length: 128, content-type: application/x-www-form-urlencoded, host: auth.truelayer-sandbox.com, idempotency-key: b629674b-949c-4250-9de6-e778b5050ac8, tl-agent: truelayer-java/9.0.0 (Java/11.0.11), user-agent: okhttp/4.9.3]
TRACE: [HTTP|b629674b-949c-4250-9de6-e778b5050ac8] <-- 400 POST https://auth.truelayer-sandbox.com/connect/token headers=[cache-control: no-store, no-cache, max-age=0,no-store, cf-cache-status: DYNAMIC, cf-ray: 7ec49263dc9b1604-DME, content-encoding: gzip, content-security-policy: default-src 'self' 'unsafe-inline';object-src 'none';img-src 'self';script-src browser.sentry-cdn.com 'self' 'unsafe-inline';font-src 'self' data:;connect-src https://auth-analytics.truelayer-sandbox.com o405187.ingest.sentry.io 'self';frame-ancestors 'none';frame-src 'none'; report-uri https://o405187.ingest.sentry.io/api/5270399/security/?sentry_key=447b2da781e64a34bcb0d7e6e3857e08, content-type: application/json; charset=UTF-8, date: Tue, 25 Jul 2023 12:57:59 GMT, pragma: no-cache, referrer-policy: no-referrer, server: cloudflare, strict-transport-security: max-age=31536000; includeSubDomains; preload, tl-trace-id: 792cdcee24d5073ac944e4a0267db1bb, vary: Accept-Encoding, x-content-type-options: nosniff, x-envoy-upstream-service-time: 54, x-request-id: 7cba8285-5ec8-41be-bee2-b47e80ac7405, x-tl-correlation-id: 7cba8285-5ec8-41be-bee2-b47e80ac7405, x-xss-protection: 1; mode=block]
Exception in thread "OkHttp Dispatcher" Exception in thread "main" com.truelayer.java.TrueLayerException: Unable to authenticate request: ProblemDetails(type=https://docs.truelayer.com/docs/error-types, title=invalid_scope, detail=null, status=400, traceId=7cba8285-5ec8-41be-bee2-b47e80ac7405, errors=null)
at com.truelayer.java.http.auth.AccessTokenManager.tryGetToken(AccessTokenManager.java:58)
at com.truelayer.java.http.auth.AccessTokenManager.getToken(AccessTokenManager.java:39)
at com.truelayer.java.http.interceptors.AuthenticationInterceptor.intercept(AuthenticationInterceptor.java:19)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
at com.truelayer.java.http.interceptors.SignatureGeneratorInterceptor.intercept(SignatureGeneratorInterceptor.java:39)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
at com.truelayer.java.http.interceptors.IdempotencyKeyGeneratorInterceptor.intercept(IdempotencyKeyGeneratorInterceptor.java:25)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
at com.truelayer.java.http.interceptors.TrueLayerAgentInterceptor.intercept(TrueLayerAgentInterceptor.java:28)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
at okhttp3.internal.connection.RealCall.getResponseWithInterceptorChain$okhttp(RealCall.kt:201)
at okhttp3.internal.connection.RealCall$AsyncCall.run(RealCall.kt:517)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:834)

`
TrueLayerClient client = TrueLayerClient.New()
.environment(Environment.sandbox()) // optional: to use TL sandbox environment
.withHttpLogs() // optional: logs HTTP traces to stdout
.clientCredentials(
ClientCredentials.builder()
.clientId("###my_client_id###")
.clientSecret("###my_secret_id###").build())
.signingOptions(
SigningOptions.builder()
.keyId(kid)
.privateKey(privateKeyPem.getBytes())
.build())
.build();
`

Thanks for the detailed report. Checking

While we're investigating the issue we strongly suggest to rotate the secret that you used as the screenshot posted originally leaked that information.

Hey @DergachevDenis, the investigation on the issue is ongoing.
We haven't found the culprit yet, but based on the first investigations this seems to be a very intermittent issue happening in non production environment for a very limited number of request/clients. At this stage we're not in a position yet to mark the issue as a bug on the java library, as the intermittent responses given the same exact requests seems to point to an issue elsewhere.
That being said, as part of this initial investigation, we realised that the code of the library that deals with the /connect/token endpoint got slightly out of sync with the API specs here.  For this reason, I'll release a new version of the library (patch) in the next hours and ask you to upgrade. This should remove some noise and help us finding the real issue here.
In the meantime, based on the evidences that we've found we would expect your integration to work already (similarly to our ever running acceptance tests)... So feel free to resume with the current version of the library if you like.
I'll keep you posted here as soon as we have news

Hey @DergachevDenis we were finally able to understand what's happening.
We realised that the library is not sending the scope field as the API expects: it should be scope as opposed to scopes. this is surely a problem but not the culprit of the issue you're seeing.
In facts, the authentication endpoint does not throw an exception if the scope field (singular) is missing, but it silently associates to the request the entire list of scopes which are allowed for the client id used. In your particular case it turns out that you have 23 allowed scopes, and the total computed length of that is greater than the maximum value allowed from the authentication API. This is the reason why you get the above error.
We tracked the issue with the relevant teams and we hope to be able to get back by end of next week with a resolution, no updates is strictly required on the library.
That said, In parallel i'll work on a PR to make sure that the library sends the right scope field while generating the token. (we hope we can deliver the change as a non breaking one, but we're not sure at this stage yet).
The fact that the library is not sending the right scope field is surely a bug - although only partially related to the issue you're facing.
I'll amend the issue title for clarity. Thanks for raising!

@dili91 Thank you, I will try))

Hey @DergachevDenis, based on our observations the issue is now fixed. we're also releasing a new library version (10.0.0) which will come with the correct token request implementation and explicit scopes. We suggest you to upgrade 👍


You send me token to my address but not recieved in my account

Is your question related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I don't know why [...]
Describe your question
A clear and concise description of any question you've considered.
Additional context
Add any other context or screenshots about the feature request here.

not sure what about your question. We didnt send token to you


artisan make:projector command not working after upgrade from v1 -> v2

Hi
I cannot seem to create  a new projector using artisan since upgrading to v2 (followed instructions on github).
php artisan make:projector AccountBalanceProjector
Illuminate\Contracts\Filesystem\FileNotFoundException  : File does not exist at path C:\xampp\htdocs\intranet.thinkrcg.com\vendor\spatie\laravel-event-projector\src\Console/../../../stubs/projector.stub

Seems like an issue with the directory separator on Windows

Because the package now does more than just providing projectors, we decided to change the name of the package to spatie/laravel-event-sourcing.
Upgrading from v3 of laravel-event-projector to v1 of laravel-event-sourcing is easy. Take a look at the upgrade guide for laravel-event-sourcing.
I'm closing this issue here. Feel free to create a new issue at spatie/laravel-event-sourcing.


Outdated Documentation

class ShopType < Types::BaseObject
  field :title, String, null: false
  field :user, Types::Models::UserType, null: false
end

How would you include a guard on this field for the ShopType, we would like to limit the field user to only signed in users, but allow the other fields on a shop to be public without the need for authentication.

class ShopType < Types::BaseObject
    field :title, String, null: true

    field :user, Types::Models::UserType, null: true do
      guard ->(obj, args, ctx) { ctx[:current_user] && ctx[:current_shop] }
    end

  end

Just for anyone else who is looking to add guarded fields on BaseObjects.

Thank you @dan003400. Right, the existing documentation was written by using the previous graphql gem schema-definition DSL.
For those who would like to contribute and update the readme to use class-based schema definitions, here is an example from the gem specs:
https://github.com/exAspArk/graphql-guard/blob/b0e13cdce93a37a9d853849aa23e63674403f490/spec/fixtures/inline_schema.rb#L40-L64


When zooming the satellite tiles appear to move around

Hi,
Thanks for this project! I noticed that when I zoom in and out of the globe it appears that the various continents actually move up and down on the globe. I don't know whether there is a glitch with the tiles somehow?
If necessary I can link a video here to show what is happening.
Best regards,
Andrew

Here is a video of the issue; https://photos.app.goo.gl/nWRLmoiYbStOFSQu2

That was definitely a horrible horrible issue. What was going on was that the tiles were being read and rendered directly. But they are in a Mercator projection. I had to write a CPU based reverse-mercator projection to correct this - see ImageServer.js. It is fixed now.

This is the fix https://github.com/anselm/aterrain/commit/ce4cfddb32ee9fa73cda19dd40a731e677ab7137

Brilliant work! Thanks for fixing this!


Adds the full duration time to the player

Hi @SamPotts
Here is a screenshot of what this looks like:

I did not go into too much details, as I am not sure if the design is according to your vision.
I am happy to do the extra work on this PR to get it to your standard, if this is a feature you would like to include?

Hey @franks921, funny that you added this as I just this minute added displaying duration at startup as an option. I'm going to make some changes to how the controls work soon though so I'll use what you've done for that. I was going to add an option for hiding/showing some controls etc so this will be useful for that. It'll probably be v1.1 or something. Then I need to crack on with playlists...
Thanks for your work :+1: Looks the same as how I've done it.

Cool stuff @SamPotts. Please let me know if there is anything I can help with :+1:


Async onInit()

OpenUI5 version:
1.123.2

It is stated that an error will be thrown in the future if async/promises are used for onInit. If we need to fetch data before the page loads how can we ensure that the data is done loading before the page is shown? Would greatly appreciate any help and even more so if a Typescript example is provided.

As per the MDN async function description:

Async functions always return a promise. If the return value of an async function is not explicitly a promise, it will be implicitly wrapped in a promise.

You can use Promise instead of an async function. And the hook itself (onInit) must not have any return value.
See also the section "Async Functions and Event Handlers" from the topic ECMAScript Support.


Song titles "Unknown"

Whenever I check the public page, it does not show the song name but rather it says "Unknown"

Also, how do I skip a song on auto dj?

Is the "Unknown" problem happening only on the public page? Like, do you get the same on the dashboard?
To skip a song:

From the Dashboard, click the "manage" button for your station
Open the left menu (next to the "Azuracast" title) and click "Profile"
Right to LiquidSoap (AutoDJ Service) there's a little menu (the three dots) with options

Thanks for the LiquidSoap advice. As for the Unknown title, it's mainly on
the public page. I have not yet seen it on the dashboard but it also seems
to be showing it when people stream it and it outputs the title over their
phones and servers.
On Tue, Mar 28, 2017 at 6:38 PM, Kody<EMAIL_ADDRESS>wrote:

Is the "Unknown" problem happening only on the public page? Like, do you
get the same on the dashboard?
To skip a song:

From the Dashboard, click the "manage" button for your station
Open the left menu (next to the "Azuracast" title) and click
"Profile"
Right to LiquidSoap (AutoDJ Service) there's a little menu (the
three dots) with options
[image: image]
https://cloud.githubusercontent.com/assets/843787/24416552/751aac14-13e5-11e7-8795-6242d18814da.png

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/SlvrEagle23/AzuraCast/issues/99#issuecomment-289829637,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AZfW8YJ0DLMwQJFUvnDZd4MIMvLHxO1Lks5rqTeRgaJpZM4MrAzu
.

--

[image: Maxed-Media Logo] https://maxed-media.com
MIKAEEL JANSEN VAN VUUREN
www.maxedmedia.co.za https://maxedmedia.co.za  ||<EMAIL_ADDRESS>Confidentiality Note: This e-mail message may contain confidential or
legally privileged information and is intended only for the use of the
intended recipient(s). Any unauthorized disclosure, dissemination,
distribution, copying or the taking of any action in reliance on the
information herein is prohibited. E-mails are not secure and cannot be
guaranteed to be error free as they can be intercepted, amended, or contain
viruses. Anyone who communicates with us by e-mail is deemed to have
accepted these risks. Mikaeel Jansen van Vuuren or Maxed-Media is not
responsible for errors or omissions in this message and denies any
responsibility for any damage arising from the use of e-mail. Any opinion
and other statement contained in this message and any attachment are solely
those of the author and do not necessarily represent those of the company
(Maxed-Media). All messages sent from this e-mail address strive to not be
in contravention of any communication laws within all receiving countries.

@Putative If it is showing "Unknown" only on devices that directly play the MP3 stream from the server, this is likely due to either IceCast/ShoutCast not sending the metadata out correctly via the MP3 stream, or by your files not having the correct ID3 metadata.
There are some circumstances where AzuraCast can read the ID3 info on a file but the radio software cannot. For those files, you will want to open them manually on your local computer and verify that the ID3v1 information is set correctly. This is the oldest form of ID3 but the most "stable" and the most likely to be supported across all radio software.
If you have updated the ID3 tags and still have the issue, please feel free to reopen this ticket along with an attachment of a specific MP3 and I will be happy to take a look at it.


Update scopes.py docstring

@Sayam753 suggested that there is misleading documentation and what is said in doc is not actually done. I agree with the point and modify the docstring to make it more clear. If any suggestions to improve this case please comment.

And one more typo in line 43, cls.contexts should be cls.context.


Disable mmap by default for Windows ROCm

The same as with CUDA, disabling mmap when using ROCm on windows seems to speed up model load times significantly. I get a >2x speedup in model load times on my 7900xtx when disabling mmap.

The windows+cuda choice to disable mmap was based on custom code for cuda model loading on windows to optimize performance.  This logic is nvidia specific.  I don't think it makes sense to always disable mmap at this level for AMD GPUs.  You can always set this in the API or in a Modelfile.
Thanks for the PR though.


ghcide runs out of memory

Not sure what I can do to help with this, the codebase is proprietary, but I may be able to give you private access to it. My working directory has 1228 .hs files. ghcide (run from my shell) makes a lot of progress, and then gets killed as it runs out of memory (at approx. 6.2GB resident memory usage).

We haven’t spend too much time on memory usage so far and our efforts have been mostly focused on testing it on DAML usage (although that should be roughly comparable) so sadly I’m not too surprised by high memory usage. Do you have some comparison of how much memory GHCi or maybe haskell-ide-engine uses on this project?

I have never loaded the whole project into ghci, and am not entirely sure what the best way to test that wolud be. Should I try and load all known .hs files at the same time or something?

I should note that this codebase is actually split into about 20 different projects. I'm trying to run ghcide from the top level directory (with cabal.project) with a direct-style cradle that would load all projects in a single session.

Ah right, I'm not actually trying to run ghcide on any specific file - just doing the "did it work?" check of running ghcide at the command line with no arguments, which as I understand loads all files at once.

Ah I see, in that case it recursively searches for .hs files and tries to load them. You can also invoke ghcide with a specific file path in which case it will try to load the transitive closure of that so I would try to choose a file high up in your dependency tree and compare that to ghci.

Unless I am missing something max residency here is lower than the 2.8GB you get in GHCi? We can do a bit better than GHCi but I’m not sure there is that much we can do here. 1.5GB vs 2.8GB already seems like a decent improvement.
Leaving that aside, I’d be interested in where you need to make a difference for the .ghci file and the hie-bios cradle.

Yes, but I don't believe ghcide is even doing the same thing as ghci, that's what I meant by:

I don't trust it - my hie.yaml doesn't even have the same set of flags that I needed for ghci!

E.g., there are modules missing from the search path, but ghcide reports no error. Also, this ends up importing (somewhere) the same modules that cause #25, yet there is no error here. So I'm a bit suspicious about that max residency.

ghcide has some logic (inherited from DAML, we should probably refactor this) where it tries to locate a module relative to the current one even if that’s not in the search path so if it resolves an import in a/b/C.hs it will implicitely add a/b to the search path for finding imports in C.hs. That could explain why you need less search paths in ghcide.

Ah, that sounds plausible. The missing path is relative to the Main.hs I'm supplying. I'll play around with some other entry points and see what I can get.

Is this any better now?

Yes, but only because I bought 32GB RAM :laughing:
I need to try out the new interface files work, I'll see if I can upgrade soon.

@ocharles did you have the chance to test the new version?

I also have a project that used to fill up 30G of ram in a matter of minutes, and with current master, it seems to have improved significantly. Saturating at about 5G, as far as I've observed.


Directional contact interaction

implement directional contact interaction with tests.
implement uniform potential with reading test.

PS: Send a PR to Mjolnir-MD. Automatic code review tool is activated there.

If all the conversations resolved, I will make new PR to Mjolnil-MD and close this PR.

Can I close and remake PR for Molnir-MD?


Improve API of Controls (Orbit) to better support saving and restoring state

OrbitControls currently takes eye, target and up as init parameters, but not all those values are actually updated. So saving and restoring state of a camera and controls is not as straight-forward as it could be.
Would be nice to try and make the API for the parameters a bit more symmetric: use the same parameters as input and output.

I propose we just mimic the API from three.js: https://threejs.org/docs/index.html?q=Controls#examples/en/controls/OrbitControls

saveState() stores a snapshot of the camera/controller's current state

a snapshot is comprised of the target, position and zoom

resetState() restores the last snapshot

I think this should work?

savestate stores the internal state and also returns an opaque object that represents the state.
restorestate restores the given state, or the internal state if none is given.


Fix package.swift for use with SPM

ActomatonをSPMで導入した時に、ActomaotnDebuggingを使えるようPackage.swiftでlibraryとして公開するように修正
ローカル環境で他のパッケージから読み込んで動くことも確認済み

Oops, sorry I didn't notice this. Thanks for PR!
But I think the correct fix is:
   .library(
            name: "ActomatonUI",
            targets: ["ActomatonUI", "ActomatonDebugging"]),

so that when ActomatonUI (as a library) is integrated into app, both targets can be imported as modules.
There is not much benefit to allow integrating ActomatonDebugging as a library.

Closing this PR as superceded by:

https://github.com/Actomaton/Actomaton/pull/81


Research/shorts

This will function similar to the Youtube Shorts feature, but not yet optimized

There's serveral known bug are that, when scolling too fast, the videos will not auto play when it's loaded.
Moreover, on some mobile some videos cannot be loaded when it's video source is different from other. like mostly are "proxy", while some are "vod2", the ExoPlayer decoder will not funciton normally, which lead to the VideoPlayerController are not be initialized.

@andreasgangso This can be closed now, as shorts is live?


[stable/prometheus-blackbox-exporter] fix(helm#23318): PodSecurityPolicy NET_RAW capability

Is this a new chart
No
What this PR does / why we need it:
To fix [stable/prometheus-blackbox-exporter] PodSecurityPolicy in the scope of NET_RAW capability
Which issue this PR fixes

fixes #23318

Special notes for your reviewer:
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[x] DCO signed
[x] Chart Version bumped
[x] Title of the PR starts with chart name (e.g. [stable/mychartname])

Thanks!
/assign
/ok-to-test
Could you rebase?

/lgtm
Thanks for the contribution!

@desaintmartin , thanks!


[fix][sec] Upgrade rabbitmq client to address CVE-2023-46120

Motivation
owasp-dependency-check failed due to CVE-2023-46120.
All the releases between 5.5.3 and 5.18.0 are maintenance releases with usability improvement, bug fixes, and dependency upgrades. All users are encouraged to upgrade.
Release notes:
https://github.com/rabbitmq/rabbitmq-java-client/releases?page=3
Modifications
Upgrade rabbitmq client to 5.18.0.
Verifying this change

[ ] Make sure that the change passes the CI checks.

(Please pick either of the following options)
This change is a trivial rework / code cleanup without any test coverage.
(or)
This change is already covered by existing tests, such as (please describe tests).
(or)
This change added tests and can be verified as follows:
(example:)

Added integration tests for end-to-end deployment with large payloads (10MB)
Extended integration test for recovery after broker failure

Does this pull request potentially affect one of the following parts:

If the box was checked, please highlight the changes

[ ] Dependencies (add or upgrade a dependency)
[ ] The public API
[ ] The schema
[ ] The default values of configurations
[ ] The threading model
[ ] The binary protocol
[ ] The REST endpoints
[ ] The admin CLI options
[ ] The metrics
[ ] Anything that affects deployment

Documentation

[ ] doc
[ ] doc-required
[x] doc-not-needed
[ ] doc-complete

Matching PR in forked repository
PR in forked repository:

/pulsarbot rerun-failure-checks


WhatsApp works with Chrome 60+

Describe the bug
I'm using WhatsApp in Franz and I get the error "WhatsApp works with Chrome 60+". I have already tried the following steps: https://meetfranz.com/de/support#whatsapp-chrome-update
To Reproduce
Steps to reproduce the behavior:

Add WhatsApp Service

Desktop (please complete the following information):

OS: Linux Ubuntu 20.04
Browser Chrome
Version 86.0.4240.198

Just update Franz to version 5.6.1, worked for me

oh damn, thanks man, that helped. I was still on version 5.0.0-beta18

Hi, i'm on 5.7.0 and still get the Chrome 60+ error message.

Upgrading from 5.4.0 to 5.7.0 plus ~/.config/Franz/recipes$ rm -rf whatsapp/
Did finally work out for me.
Maybe it might be a Try to make the Browser String configurable?

Remaining Problem is a Notification which can not be found or confirmed or deleted - appears again and again.


#133846505 Fix the unit tests on accounts module

What does this PR do?
Fix incomplete tests on the hc/accounts/test folder
Description of Task to be completed?
The folder hc/accounts has its unit tests in hc/accounts/tests. Some of these tests are incomplete and need fixing and some asserts added.
How should this be manually tested?
After cloning the repo and performing the set up according to the ReadMe

python manage.py test hc.accounts.tests

Any background context you want to provide?
The files in the hc/accounts/tests contain incomplete tests described with lines starting with ##
What are the relevant pivotal tracker stories? #133846505

Coverage increased (+0.6%) to 80.353% when pulling 82b9dde0e474cbeb57b32c3c0c44875e77e8d0a8 on ch-accounts_test-133846505 into 4db0bde8c3a195e2e77ffaf4d4c81d287f3d33d8 on develop.

Coverage increased (+0.6%) to 80.353% when pulling 4155fbc56f8a3927a5d3452683db97fa9f3008fd on ch-accounts_test-133846505 into 4db0bde8c3a195e2e77ffaf4d4c81d287f3d33d8 on develop.

Coverage increased (+0.6%) to 80.353% when pulling 4155fbc56f8a3927a5d3452683db97fa9f3008fd on ch-accounts_test-133846505 into 4db0bde8c3a195e2e77ffaf4d4c81d287f3d33d8 on develop.

Coverage increased (+0.6%) to 80.353% when pulling 738eda5ed31682ec521299285c0be5ab9866d1cb on ch-accounts_test-133846505 into 4db0bde8c3a195e2e77ffaf4d4c81d287f3d33d8 on develop.

Coverage increased (+0.1%) to 79.834% when pulling 4d4ab18e0fc7a825ab1cd4aad9ea2d536c11d8c2 on ch-accounts_test-133846505 into 4db0bde8c3a195e2e77ffaf4d4c81d287f3d33d8 on develop.


Temporary hot fix to return the logic for "adding new tool" to SAVE

What's done:

introduced a wrapper to fix a hot error

Still don't understand why there is no way to enable custom tooltip and popover in both class Component and FC in Kotlin/JS.

Because the mechanism to run piece of raw JS code exactly once is different: in one case it's componentDidMount, in the other it's useEffect with empty dependencies


Aws-sdk error in release mode[bug]

Describe the bug
I use aws-sdk v2.1452.0 and it works well in dev mode, but when I build the app I get this message:
TypeError: undefined is not a constructor (evaluating 'new AcceptorStateMachine2()')
Reproduction
yarn add aws-sdk
yarn tauri build
open app
Expected behavior
No response
Platform and versions
[✔] Environment
    - OS: Mac OS 14.0.0 X64
    ✔ Xcode Command Line Tools: installed
    ✔ rustc: 1.73.0 (cc66ad468 2023-10-03)
    ✔ cargo: 1.73.0 (9c4383fb5 2023-08-26)
    ✔ rustup: 1.26.0 (5af9b9484 2023-04-05)
    ✔ Rust toolchain: stable-aarch64-apple-darwin (default)
    - node: 21.0.0
    - pnpm: 8.10.2
    - yarn: 1.22.19
    - npm: 10.2.0

[-] Packages
    - tauri [RUST]: 1.4.1
    - tauri-build [RUST]: 1.4.0
    - wry [RUST]: 0.24.3
    - tao [RUST]: 0.16.2
    - @tauri-apps/api [NPM]: 1.5.1
    - @tauri-apps/cli [NPM]: 1.5.6

[-] App
    - build-type: bundle
    - CSP: unset
    - distDir: ../dist
    - devPath: http://localhost:1420/
    - framework: React
    - bundler: Vite

Stack trace
No response
Additional context
No response

Can you create a build via yarn tauri build --debug and then start the app from target/debug/ ? It should be similar to the release build but with the devtools enabled so you can check the devtools console for errors.

Yes, I've checked it on build --debug and i get this blank screen and error:

Oh right, how else could you write the error message in the issue itself, sorry bout that 😅

As said on Discord, this doesn't seem to be a tauri specific issue so let's close this issue (this doesn't mean we can't write here anymore, it just signalizes that it's not tracked for tauri) and i'd recommend to reach out to the aws or vite communities, i'm sure they will be more helpful than us (i didn't see a single (open source) tauri app that used aws-sdk yet for example).


Codacy does not seem to pick up .remarkrc

Renames the file to .remarkrc.js

 Here is an overview of what got changed by this pull request:

Issues
======
- Added 1

See the complete overview on Codacy


Footer Improvement

Is your feature request related to a problem? Please describe.
Want to add a beautiful responsive footer with it.
Describe the solution you'd like
A simple, professional, responsive footer want to make
Additional context
Add any other context or screenshots about the feature request here.
What problem is this feature trying to solve?
Enhance Footer
How do we know when the feature is complete?
within 1day

Task

[x ] Follow Us On social media - LinkedIn Twitter
Let's connect
[ x]      GitHub

Enter you User Id's:
LinkedIn:https://www.linkedin.com/in/srinjoy-das-589a95206/
GitHub:https://github.com/srinjoy29
Discord:
Twitter:
If you Follow us in both social medias we provide 'level2'
*Only First time

Can you provide some design?

Like this


errors: Add unsupported media type error

Coverage remained the same at 45.455% when pulling a56b573e6c9c9d588553e99e86815ba3d4061635 on add-media-error into e28ea0e193f7d66d88cfc8dd947b3f70524289a3 on master.


Typescript: broken syntax highlighting for import * as $

From @fabiospampinato on September 9, 2018 3:54

VSCode Version: v1.27.1
OS Version: macOS v10.13.5

The following snippet of code is not properly highlighted, both under the "typescript" and "javascript" languages. The as keyword in import * as $ should be red:

Copied from original issue: Microsoft/vscode#58279

From @vscodebot[bot] on September 9, 2018 3:54
(Experimental duplicate detection)
Thanks for submitting this issue. Please also check if it is already covered by an existing one, like:

TypeScript Syntax Highlighting Broken (#56706)


Try to instantiate from HTTP request in favour Event

this PR makes Agent work with the Event object that is (unfortunately) derived from the http.Request
it does make code look more HTTP-agnostic
step forward to multiple triggers
allows API Listeners to submit non-HTTP-specific events (call the function).

a call is already an event, it's just under a different name. we're only using request innards for headers and body, would rather yank that out than make yet another struct type which adds more indirection and complexity here. we should do something like this I think, but the cut to make 'event' inside of call doesn't seem like the right cut. it's easy to add separate builders to get a call, too, suspect we have FromEvent(event) eventually.

Maybe, but i don't think that having an HTTP request inside the call is not what we want, eventually. At this moment, if i want to call the function i still need to create a call object from an HTTP request (even if that is a dummy).
So, consider this PR as step forward to the FromEvent. But we need to make sure that HTTP request doesn't bother us, that's why i proposed new type that represents the event that leads agent can consume and call the function.


Add check credentials parameter to CreateOrUpdatePipelineConfig

This add a skipCredentials checkCredentials parameter to CreateOrUpdatePipelineConfig, so that fly can opt to check server-side verification of credentials parameters.
This is for concourse/concourse#1920, and is intended to go with these other PRs:
concourse/atc#296
concourse/fly#252

thanks!


button::StyleSheet trait has a docs problem

Is there an existing issue for this?

[X] I have searched the existing issues.

Is this issue related to iced?

[X] My hardware is compatible and my graphics drivers are up-to-date.

What happened?
Cannot change style of button
let disabled = Color {r : 1.0, g:0.0, b:0.0, a: 1.0};
let enabled = Color {r : 0.0, g:1.0, b:0.0, a: 1.0};
let disabled_button_style = ButtonColor {color : disabled};

button_disconnect = button_disconnect.style(disabled_button_style);

and implementing trait for ButtonColor
struct ButtonColor {
    color : iced::Color,
}

impl iced::widget::button::StyleSheet for ButtonColor
{
    type Style = iced::widget::button::Appearance;
    fn active(&self, style: &Self::Style) -> widget::button::Appearance {
        widget::button::Appearance { background : Some(Background::Color(self.color)), ..Default::default() }
    }
}

What is the expected behavior?
as i saw in https://docs.iced.rs/iced/widget/button/trait.StyleSheet.html i must impl this trait for some color struct to pass style into button
Version
crates.io release
Operating System
Windows
Do you have any log output?
No response

so yeah the way you would do this is exactly how we do it for the custom scroll bar colors in the iced_aw example for split scroller
https://github.com/iced-rs/iced_aw/blob/main/examples/split_scroller/src/main.rs#L495
you create the new color Appearance for the widget and then apply it like
https://github.com/iced-rs/iced_aw/blob/main/examples/split_scroller/src/main.rs#L454
using the custom of the widgets style enum. practically all widgets in iced have a custom setting.
The other way to do this is to just use the predefined Styles in the buttons style enum which are located in the theme.rs
https://github.com/iced-rs/iced/blob/master/style/src/theme.rs#L126
each of these are predefined colors and shift when in dark or light mode too.

Not a bug. Plenty of examples use custom button colors.


add_mappings Broken and Missing Parameter

The add_mappings function is missing a java_package argument in its call to _add_mappings_to_map.
Additionally, the function will fail in any case, since all ConceptMaps must have a unique URI&Version, and attempting to add new mappings to an existing ConceptMap without updating the version violates this requirement.
We should fix the body of the function and additionally add a new_version parameter that will give a new version to the updated map.

Issue fixed with #29. Closing.


NSFW checker and watermark nodes

What type of PR is this? (check all applicable)

[ ] Refactor
[ X] Feature
[ ] Bug Fix
[ ] Optimization
[ ] Documentation Update
[ ] Community Node Submission

Have you discussed this change with the InvokeAI team?

[ X] Yes
[ ] No, because:

Have you updated all relevant documentation?

[X ] Yes
[] No

Description
This PR adds NSFW checker and invisible watermark fields. The NSFW checker takes an image input and produces an image output. If NSFW content is detected, the output image will be blurred and a "caution" icon pasted into its upper left corner. A boolean active field controls whether the checker is active. If turned off it simply returns a copy of the image.
The invisible watermark node adds an invisible text to the image, defaulting to "InvokeAI". To decode the watermark use the invisible-watermark command, which is part of the invisible-watermark library:
$ invisible-watermark -v -a decode -t bytes -m dwtDct -l 64 ./bluebird-watermark.png
decode time ms: 14.129877090454102
InvokeAI

Note that the -l (length) argument is mandatory. It is set to 64 here because the watermark InvokeAI is 8 bytes/64 bits long. The length must match in order for the watermark to be decoded correctly.
Both nodes are now incorporated into the linear Text2Image and Image2Image UIs, including the canvas. They are not implemented for inpaint currently.
The nodes can be disabled with configuration options:
invisible_watermark: false
nsfw_checker: false

or at launch time with --no-invisible_watermark and --no-nsfw_checker.

feat(ui): add nsfw & watermark to linear ui

add addNSFWCheckerToGraph and addWatermarkerToGraph functions
use them in all linear graph creation
add state & toggles to settings modal to enable these
trigger queries for app config on socket connect
disable the nsfw/watermark booleans if we get the app config and they are not available

This is ready for review.
NSFW & Watermarking functionality
In Settings, there are toggles for NSFW checker and watermarker. There are 4 possible combinations of these two toggles:

NSFW off, watermark off
NSFW off, watermark on
NSFW on, watermark off
NSFW on, watermark on (default)

Test the following with every combination AND for both NSFW and non-NSFW outputs:

txt2img tab
img2img tab
canvas tab (txt2img generation)
canvas tab (img2img generation)
canvas tab (inpaint generation)

Expected results:

NSFW images are always blurred when NSFW checker is on
If the watermarker is enabled, there should be a barely-visible watermark, typically visible as a grid of yellow dots
You only ever get a single image in gallery

NSFW & Watermarking installation/availability

Have them both installed (watermark is a python package so you should have it already if you've pip installed, but NSFW checker is an optional model, run configure script to install)
Enable both settings
"Disable" both features by commenting out where they are appended to arrays, around L70 in invokeai/app/api/routers/app_info.py
Restart the backend
When it comes back up and the UI reconnects, the setting should disable themselves and you should be prevented from turning them back on


Replace output plate shaft with removable shaft

Shaft is hex on both ends, and round in the center (where it interfaces with the bearing and the encoder). This change allows the gearbox to actually be assembled lol
New shaft is shown in white, in the centre of the image.

Also, corrected a tolerance stackup issue on rotor adaptor ring & groove.

mild concern about the shaft deforming over time and introducing extra slop over time

Agreed, we could maybe put a set-screw into the rotor adaptor plate and an allen-key-sized hole in the motor casing? Or perhaps we should just see how it is for now.


Some aggregations can't be used as the root aggregation

The reverse_nested aggregation must be defined inside a nested aggregation.
https://www.elastic.co/guide/en/elasticsearch/reference/6.4/search-aggregations-bucket-reverse-nested-aggregation.html
Same goes for diversified_sampler.
https://www.elastic.co/guide/en/elasticsearch/reference/6.4/search-aggregations-bucket-diversified-sampler-aggregation.html

We need to show 2 bucket agg groups: say Root buckets and Nested buckets.

On the primasy axis, Bucketing (nested-only) aggs should be disabled.


[Api] add update_runtime function and return metadata from memory

Breaking Changes:

get_metadata, get_spec_version, get_genesis_hash do not return a Result any more.
get_metadata returns Metadata from memory instead of  RuntimeMetadataPrefixed from the node.
get_metadata, get_spec_version, get_genesis_hash now return the data from memory, no extra node call necessary.

❗  Careful: In case one relied on get_metadata returning the most recent metadata from the node, that's not the case any more. If that's necessary, run update_runtime before get_metadata or use Api::get_metadata_from_node(&rpc_client).
Non breaking changes:

Adds update_runtime function to update the Api in case of a runtime upgrade
removes extra _get_request function: RpcClient now directly returns an Option without mapping it to an empty string and back to an Option..

If the metadata is not chached, that means for every extrinsic sent, the metadata, runtime version and such need to be queried first. Not sure if that's smart?

Just checked: The metadata field has been there since 2019, so I guess I can't answer the original rationale, but I suppose the speed is a concern.