Gstreamer to opencv

Hi,
I'm using coral dev board with ubuntu bionic image from balena and I tried to run the bodypix.py script.
I have a question is it possible to easily switch from gstreamer to opencv? Or is it possible to get back the final image as an input for another model like in preprocess?

Please, if someone has an idea it could be really helpful for me

Hi @thibault390, it's actually shouldn't be that hard to use opencv, considering the output processing is already handled by our code. Getting an opencv loop to grab and process the frame before feeding into the interpreter should as easy as this: https://gist.github.com/Namburger/f7e6c18af94ef3d6a70076a130eb1f7c#file-tflite_cv_objdetect-py-L78-L93
I suggest you give it a try first and check back if you ran into issues

Hi Namburger,
Thanks for the reply and help. I used this programming technique to run posenet and blazeface. I know it's not really hard, but in this kind of script, we can easily separate the preprocess, inference and postprocess parts which is difficult to distinguish in your code with gstreamer.
For example, I have difficulties to take out the segmentation part in your code to use as a postprocess part with opencv, and then keep the final result (segmented image) to use it as a dataset or input for a second model.
Moreover, I already tried to use your models in the edgetpu delegate for tensorflowLite but I'm facing to an issue because of unknowing custom operation:
interpreter.allocate_tensors()
File "/usr/local/lib/python3.7/dist-packages/tflite_runtime/interpreter.py", line 242, in allocate_tensors
return self._interpreter.AllocateTensors()
File "/usr/local/lib/python3.7/dist-packages/tflite_runtime/interpreter_wrapper.py", line 115, in AllocateTensors
return _interpreter_wrapper.InterpreterWrapper_AllocateTensors(self)
RuntimeError: Encountered unresolved custom op: PosenetDecoderOp.Node number 1 (PosenetDecoderOp) failed to prepare.

@thibault390 ahhhh, I see this error message:
RuntimeError: Encountered unresolved custom op: PosenetDecoderOp.Node number 1 (PosenetDecoderOp) failed to prepare.

Means that you need to register the posenet decoder ops, are you using our basic or a tflite interpreter?

I'm using the basic one, I guess:
model="/home/project-bodypix/models/bodypix_mobilenet_v1_075_768_576_16_quant_edgetpu_decoder.tflite"
interpreter = Interpreter(model, experimental_delegates=[load_delegate('libedgetpu.so.1.0')])

I see that you are using the tflite interpreter, for that you'll also need to register the posenet decoder.so, which requires building it from here (all of this is already handled in the edgetpu basic engine).
Then here is how you'd register it:
tpu = tflite.load_delegate('libedgetpu.so.1')
posenet = tflite.load_delegate('posenet_decoder.so')
interpreter = tflite.Interpreter('posenet_mobilenet_v1_075_353_481_quant_decoder.tflite'),
                                               experimental_delegates=[tpu, posenet])

Your best solution is to just use out PoseEngine, which wraps around the basic engine:
https://github.com/google-coral/project-bodypix/blob/master/pose_engine.py
The pose engine has all the post processing, so it'd be a much easier solution then to re-impletementing it your self using the tflite API.

Thanks, but I don't understand how can I build the requirements to get the posenet_decoder library, sorry.

@thibault390 as I said,

if you just use our Posenet engine, then there is no need to build the posenet_decoder.so, and no need to rewrite any post processing code, it would be the most straight forward way to go for you.

If you want to continue using the the tflite interpreter, then you need to install bazel, clone that repo and build:

bazel build -c opt :posenet_decoder.so

Source: https://github.com/google-coral/edgetpu/blob/master/src/cpp/posenet/BUILD#L92

Ok thanks, so the best option is to use the pose_engine to create segmentation part

Well the outputs of the model doesn't give you a whole image, it gives these parameters: inference_time, poses, heatmap, bodyparts. So you'll need to draw those outputs back on the image or else you'll just display the original image

Hi thibault390 and Namburger, I'm also interested in doing the same for converting the bodypix.py from Gstreamer to OpenCV. From reading the comments, it seems that we need to use PoseEngine somehow in the opencv while loop. I'm a little confused on how we associate the image frame from the while loop. Do we need to modify PoseEngine somehow? Also, bodypix.py has a Callback class. Would that have to be modified somehow to be able to update image with our model?


Introduce env APP_ENV and use it in AccessControlService

I also don't think we should have such a generic named env var, as it makes devs too easy to use it where a real env var would be more appopriate. (12-factor)

A distinction between the environments will be necessary also for other cases than applying vivid users.

what cases do you think of?


Cloudsql Image Update

Description
Changes proposed in this pull request:

Updated version of the Cloudsql Proxy image.
Change alpine base to scratch.

Related issue(s)

/lgtm


Require Node.js 8, add TypeScript definition

Sorry, I had to merge #15 first as it was opened first. Would you be able to resolve the merge conflict?


test(integ): Add tests for SAM_* Environment Variables

Issue #, if available:
#992
Description of changes:
Added tests for the following SAM Env Vars:

SAM_LAYER_CACHE_BASEDIR
SAM_SKIP_PULL_IMAGE
SAM_TEMPLATE_FILE
SAM_DOCKER_NETWORK

Ones not included:

SAM_DEBUG
SAM_DEBUG_PORT
DEBUGGER_ARGS
SAM_DOCKER_VOLUME_BASEDIR
SAM_FORCE_IMAGE_BUILD

I am happy to add tests for the ones I did not include, but I did not have a good way to test them.
Checklist:

[ ] Write Design Document (Do I need to write a design document?)
[ ] Write unit tests
[ ] Write/update functional tests
[ ] Write/update integration tests
[ ] make pr passes
[ ] Write documentation

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

current tests look good to me.


Support overflow: visible on the parent of the panzoom div

Subject of the issue
I'd like to be able to change the overflow so that I can present the panzoom element behind surrounding elements. While I could use css and !important it'd be nice to avoid that with a configuration option to change the behaviour of panzoom.
I don't need this to be fully configurable, but I do need it to be visible (or initial as that's the default).
Your environment

Version of panzoom: 7c9d819
Browser and browser version: Google Chrome | 78.0.3904.97

Expected behaviour
const parent = document.createElement('div')
const div = document.createElement('div')
parent.appendChild(div)
document.body.appendChild(parent)
const panzoom = Panzoom(div, {overflow: 'visible'})
assert.equal(parent.style.overflow, 'visible', 'Overflow option is set on the parent')

Actual behaviour
Overflow is always hidden

Thanks for the issue. I'm okay with adding this.

Thank you for accepting the change and for the quick turn around

:tada: This issue has been resolved in version 4.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Some questions of paper and codes

I’m confused about the method of updating centroids, could you please explain it?

The  paper mentioned:

The method of updating centroids was introduced in the Appendix of van den Oord et al. (2017) for updating quantised latent variable.

I only found the paper, but didn't find the Appendix of van den Oord et al. (2017), Can you provide the link of the Appendix?

As for the codes:

def step(engine, batch):
        model.train()
        optimizer.zero_grad()

        x, y = batch
        x, y = x.cuda(), y.cuda()

        x.requires_grad_(True)

        y_pred = model(x)

        y = F.one_hot(y, num_classes).float()

        loss = F.binary_cross_entropy(y_pred, y, reduction="mean")

        if l_gradient_penalty > 0:
            gp = calc_gradient_penalty(x, y_pred)
            loss += l_gradient_penalty * gp

        loss.backward()
        optimizer.step()

        x.requires_grad_(False)

        with torch.no_grad():
            model.eval()
            model.update_embeddings(x, y)

        return loss.item()

Is the gradient of x just for calculating gradient penalty? How does the loss of l_gradient_penalty * gp backpropagate?
 def update_embeddings(self, x, y):
        self.N = self.gamma * self.N + (1 - self.gamma) * y.sum(0)

        z = self.feature_extractor(x)

        z = torch.einsum("ij,mnj->imn", z, self.W)
        embedding_sum = torch.einsum("ijk,ik->jk", z, y)

        self.m = self.gamma * self.m + (1 - self.gamma) * embedding_sum

Could you please explain the process of model.update_embeddings ? What’s the meaning of self.N and self.m?
Thank you so much!

The updating mechanism is described in equation 4,5,6 of the paper: https://arxiv.org/abs/2003.02037
See page 11 of: https://arxiv.org/pdf/1711.00937.pdf

Is the gradient of x just for calculating gradient penalty? How does the loss of l_gradient_penalty * gp backpropagate?

Yes, that's right. It's added to the loss, which is followed by loss.backward()

Could you please explain the process of model.update_embeddings ? What’s the meaning of self.N and self.m?

model.update_embeddings is called after each model update step. self.N is the number of points of a particular class in a minibatch, self.m is the sum of the embeddings per class. Both are exponentially averaged.
This is explained below equation 6 in the paper (see 1. above).


JavaScript Group CapstoneAPI

Hey there! I hope all is well.
Here is the link to our Project: JavaScript Group CapstoneAPI
In this case, we are a group of two people.
Thank you very much for your review ✨

Hello @Team
Your project is complete!  There is nothing else to say other than... it's time to merge it :shipit:
Congratulations! 🎉

Status: APPROVED :fire:  :fire:
Optional suggestions
Every comment with the [OPTIONAL] prefix won't stop the approval of this PR. However, I strongly recommend you to take them into account as they can make your code better. Some of them were simply missed by the previous reviewer and addressing them will really improve your application.
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please, remember to tag me in your question so I can receive the notification.

As described in the Code reviews limits policy  you have a limited number of reviews per project (check the exact number in your Dashboard). If you think that the code review was not fair, you can request a second opinion using this form.


Access denied

After creating a public ID I try to create a service but get the error of Access denied when i click on create service.

Hi bittog9,
I'd like to document this bug.
I'm assuming that you are using web hosting manager.
Did you compile from source or did you download it?  If downloaded,  will you post the link?
Had you already created an email address with the email app before you ran into this issue in web hosting manager?

Hi Hunter
I downloaded the app from here -
https://github.com/maidsafe/safe_examples/releases/tag/0.11.0
I think I had created an email address with he email app first.
Anything else I can help with let me know!
Adam Faulkner
Sent from
https://polymail.io/?utm_source=polymail&utm_medium=referral&utm_campaign=signature
On Sat, 22 Jul 2017 at 15:49 Hunter Lester
<
mailto:Hunter Lester<EMAIL_ADDRESS>
wrote:

a, pre, code, a:link, body { word-wrap: break-word !important; }
Hi bittog9,
I'd like to document this bug.
I'm assuming that you are using web hosting manager.
Did you compile from source or did you download it? If downloaded, will you post the link?
Had you already created an email address with the email app before you ran into this issue in web hosting manager?
—
You are receiving this because you authored the thread.
Reply to this email directly,
https://github.com/maidsafe/safe_examples/issues/216#issuecomment-317188340
, or
https://github.com/notifications/unsubscribe-auth/Ac9ica5zfObZiLc_LN4NCqYce1t5LDprks5sQgvogaJpZM4OgJJa
.

Hi Adam,
If it is the case that you did create an email id first and then attempted to create a service in the web hosting manager associated with a public id of the same name, then that is a known limitation that is currently being worked out.
Check out this dev update and scroll down to Example Applications and then Known Limitations within that section: https://safenetforum.org/t/maidsafe-dev-update-july-13-2017-test-17/14769
Was this the case or did you create a completely new public ID in web hosting manager?

This happened to me too. Copying my post from the test 18 forum thread:

I created a public ID, then clicked "CREATE SERVICE", typed the name "www" and clicked "Create Service" under "Create a new public container". After a few seconds red text saying "Access denied" appears. If I click "Create Service" again I get red text saying "Service already exists". If I go back to the previous, or quit the app, and try returning to the service creation page, a container for the "www" service appears in the dropdown under "Select a container to be mapped", but clicking the "Create Service" button under that section results in another "Access denied" error message in red text.

After a bit of back and forth with JPL on the forum, I discovered that I was able to create services with other public IDs, just not the first one I created, "jimmycuadra". Unfortunately, I don't remember if I created that one before or after I'd tried out safe-mail-tutorial. It's possible I created the ID there and hit the known limitation mentioned above.


HydroServer: Verify and Standardize ZedGraph Version

horsburgh[CodePlex] Review all HydroServer components and make sure that we are using the latest or an agreed upon version of ZedGraph.

sreeder[CodePlex] All components of HydroServer are using ZedGraph version 5.15


fix: update websocket handlers to eliminate goroutine leaks (#796)

Hi team,
Please see the suggested fixes to address the issue I raised: https://github.com/wundergraph/graphql-go-tools/issues/796
After this change, the websocket handlers and their goroutines are closing as expected. As a result, my memory usage is much more lower and no longer leaking.

Thanks,
Benny

Please fix CI. ;-)

Sorry guys, been struggling to reproduce, though I'm on darwin/arm64. Mine doesn't fail like the CI does, any tips?

@jensneuse @devsergiy @StarpTech CI is passing.

@BenjaminYong added in tag v1.67.3


proposal: Go 2: Keyword to reflect an empty value for scenarios where the type is not always known (specially in context to use with Generics)

Background
Currently there are a couple of different empty values, like:
var aString string // =  ""
var anInt int // = 0
var aBool bool // = false
var aPointer *string // = nil

type AStruct struct { /* [...] */ }
var aStruct AStruct  // = AStruct{}

type AnInterface interface { /* [...] */ }
var anInterface AnInterface // = nil

// ...

Assuming now you have a functions like this...
func doWithString() (string, error) {
    // [..]
   return "", errors.New("Doh!")
}

func doWithInt() (int, error) {
    // [..]
   return 0, errors.New("Doh!")
}

func doWithAStruct() (AStruct, error) {
    // [..]
   return AStruct{}, errors.New("Doh!")
}

func doWithAnInterface() (AnInterface, error) {
    // [..]
   return nil, errors.New("Doh!")
}

Problem
We got used to it, that we need for all of the scenarios above to know which type it is, although it is sometimes quite annoying although it might be clear what kind of value we need at this point (due to the fact that Go is that type safe).
But once we start with Generics it is getting tricky. Assuming the following example:
func doSomething[T any]() (T, error) {
    // [..]
   return ???, errors.New("Doh!")
}

In this case you cannot simply return a value. There is a workaround, but it is not quite handy in all scenarios:
func doSomething[T any]() (T, error) {
    // [..]
   var emptyVal T
   return emptyVal, errors.New("Doh!")
}

Proposal
As the compiler is currently already doing some context related assumptions, like:
func returnFloat64() float64 {
	return 0 // float64(0)
}

func returnUint16() uint16 {
	return 0 // uint16(0)
}

...extend this functionality with another token to all meaningful contexts. I would purpose the - sign here, because I would assume it will not break old code, with not clash with future use and might be quite intuitive, like:
func returnFloat64() float64 {
	return -
}

func returnUint16() uint16 {
	return - // uint16(0)
}

func returnBool() bool {
	return - // bool(false)
}

func returnString() string {
	return - // string("")
}

func returnPtrString() *string {
	return - // nil
}

func returnSlice() []string {
	return - // nil
}

func returnMap() map[int]string {
	return - // nil
}
func returnAStruct() AStruct {
	return - // AStruct{}
}

func returnAnInterface() AnInterface {
	return - // nil
}

Consequently this will solve our Generics problem the following way:
func doSomething[T any]() (T, error) {
   // [..]
   return -, errors.New("Doh!")
}

Additional benefit
It might also improve the checking for emptiness after we retrieved a value from a method, because here we can use the same token again, in all cases if something is empty, like:
if returnFloat64 == - {
     // [..]
}
if returnSlice == - { // in case of slice it should match `nil` and `len(x) == 0`
     // [..]
}
if returnMap == - { // in case of map it should match `nil` and `len(x) == 0`
     // [..]
}
if returnAStruct == - { // same as `returnAStruct == AStruct{}`
     // [..]
}
if returnAnInterface == - { // same as `returnAnInterface == nil`
     // [..]
}
// ..

Duplicate of #35966


The policy/v1beta1 is deprecated in kubernetes 1.25

https://github.com/cert-manager/cert-manager/blob/b0255651fb8b4dd852e795ef438fe552c485ea76/deploy/charts/cert-manager/templates/psp.yaml#L2
https://kubernetes.io/docs/reference/using-api/deprecation-guide/#psp-v125
Helm install failed: unable to build kubernetes objects from release manifest: [resource mapping not found for name: "cert-manager-cainjector" namespace: "" from "": no matches for kind "PodSecurityPolicy" in version "policy/v1beta1"

ensure CRDs are installed first, resource mapping not found for name: "cert-manager" namespace: "" from "": no matches for kind "PodSecurityPolicy" in version "policy/v1beta1"

ensure CRDs are installed first, resource mapping not found for name: "cert-manager-webhook" namespace: "" from "": no matches for kind "PodSecurityPolicy" in version "policy/v1beta1"

The PodSecurityPolicy API is removed in 1.25. See https://kubernetes.io/docs/reference/using-api/deprecation-guide/#psp-v125
.Values.global.podSecurityPolicy.enabled needs to set to false.


ExtendedStats with one document -> UnexpectedElasticsearchClientException

NEST/Elasticsearch.Net version:
7.9.0
Elasticsearch version:
7.9.1
Description of the problem including expected versus actual behavior:
Using ExtendedStats on a numeric value on one document generates always an exception:
    "message": "An error has occurred.",
    "exceptionMessage": "expected:'Number Token', actual:'\"NaN\"', at offset:179002",
    "exceptionType": "Elasticsearch.Net.UnexpectedElasticsearchClientException",

ps: I really don't know if the issue was present before, actually we working usually with a lot of documents, so this is the first time we see only one document after filtering our index and the first time in years that we see this exception.
Expected behavior
No exception but an empty result.

Actually now I'm just filtering my results based on document count calculated on a pre query.
My first question is related to the issue...is it confirmed? any news from nest team? @russcam for example.
Secondly, how to avoid a pre query to filter data? is it possible to calculate ExtendedStats based on document count > 1 on the same query?

Hi @meriturva, this looks like a bug.
NaN is a peculiarity in JSON, which might be supported in a number of ways. The server is sending it as a string "NaN", but the internal client serializer will not accept a string, but would accept it as NaN. I think we'll need to address this in the client.

ps: I really don't know if the issue was present before,

I've not seen Elasticsearch return NaN before. This may have come in with the addition of standard deviation and variance sampling to extended stats in https://github.com/elastic/elasticsearch/pull/49782

In meanwhile, any workaround to avoid double query (to filter aggregation without documents)?
I don't found any way to enable aggregation based on document count resulting in parent aggregation, so I have now to execute a more one query just to check document presents.

Hi @russcam I just would like to ask news about that issue or maybe a cool workaround to avoid double queries.
So thanks.

Just to know @russcam ...is it fixed on 7.10 version?

Hi @meriturva
there's no change in NEST for this yet. There's been some discussion about whether Elasticsearch should be returning NaN at all, given the ambiguity of representing it in JSON. No conclusion has been reached yet though.
@Mpdreamz, @stevejgordon perhaps we can check for "NaN" in the offending fields? I think it's the addition of the sampling fields in extended stats, but would need double checking.

Just updated form 7.6 and encountered the very same problem.
This is a major problem for me as I have data as following:
 {         "_index" : "datapoints-batches-1-a",         "_type" : "_doc",         "_id" : "e08a4fe9-6156-4646-a27b-a8153322d575-637329369540000000",         "_score" : 1.0,         "_ignored" : [           "value"         ],         "_source" : {           "id" : "e08a4fe9-6156-4646-a27b-a8153322d575-637329369540000000",           "batchId" : "batches-1-A",           "parameterId" : "e08a4fe9-6156-4646-a27b-a8153322d575",           "timestamp" : "2020-08-13T17:35:54Z",           "value" : "NaN"         }  }
which I wrote an a custom converter for:
                writer.WriteValue("NaN");

Just updated form 7.6 and encountered the very same problem.
This is a major problem for me as I have data as following:
 {         "_index" : "datapoints-batches-1-a",         "_type" : "_doc",         "_id" : "e08a4fe9-6156-4646-a27b-a8153322d575-637329369540000000",         "_score" : 1.0,         "_ignored" : [           "value"         ],         "_source" : {           "id" : "e08a4fe9-6156-4646-a27b-a8153322d575-637329369540000000",           "batchId" : "batches-1-A",           "parameterId" : "e08a4fe9-6156-4646-a27b-a8153322d575",           "timestamp" : "2020-08-13T17:35:54Z",           "value" : "NaN"         }  }
which I wrote an a custom converter for:
                writer.WriteValue("NaN");

Hi @meriturva
there's no change in NEST for this yet. There's been some discussion about whether Elasticsearch should be returning NaN at all, given the ambiguity of representing it in JSON. No conclusion has been reached yet though.

With ES 7.6 "NaN" has been returned - at aleast when index is set to ignore malformed values.
Not returning already stored "NaN" values is not acceptable.

Hi @meriturva
there's no change in NEST for this yet. There's been some discussion about whether Elasticsearch should be returning NaN at all, given the ambiguity of representing it in JSON. No conclusion has been reached yet though.

With ES 7.6 "NaN" has been returned - at aleast when index is set to ignore malformed values.
Not returning already stored "NaN" values is not acceptable.

same issue un 7.11.1
any news @russcam here?

I am experiencing the very same problem (in my case it's on 7.10.0), and can confirm that the NaN comes from the computed "sampling" fields, not from my documents.
    "extended_stats#my_extendedstats_agg" : {
      "count" : 1,
      "min" : -269.0,
      "max" : -269.0,
      "avg" : -269.0,
      "sum" : -269.0,
      "sum_of_squares" : 72361.0,
      "variance" : 0.0,
      "variance_population" : 0.0,
      "variance_sampling" : "NaN",
      "std_deviation" : 0.0,
      "std_deviation_population" : 0.0,
      "std_deviation_sampling" : "NaN",
      "std_deviation_bounds" : {
        "upper" : -269.0,
        "lower" : -269.0,
        "upper_population" : -269.0,
        "lower_population" : -269.0,
        "upper_sampling" : "NaN",
        "lower_sampling" : "NaN"
      }
    }

I really just need to compute the standard deviation, don't even know what the "sampling" fields are used for.

I've opened https://github.com/elastic/elasticsearch-net/pull/5404 to address

Awesome, thanks!!!

NEST/Elasticsearch.Net version:
7.12.1
Elasticsearch version:
7.10.1
Hello, FYI - same type of issue still exists, but from for me from different line of code in both master and and 7.13:

https://github.com/elastic/elasticsearch-net/blob/3d0c0e2a183241ff3e9150054be308319dbd4d70/src/Nest/Aggregations/AggregateFormatter.cs#L461
https://github.com/elastic/elasticsearch-net/blob/1e60c117a27c2ba2d678b586238c5acfa60680ee/src/Nest/Aggregations/AggregateFormatter.cs#L469


cannot start wrong path to config

https://github.com/e2guardian/e2guardian/issues/673

fixed by adding config path to CMD


[SPARK-36383][CORE][3.2] Avoid NullPointerException during executor shutdown

What changes were proposed in this pull request?

Fix NullPointerException in Executor.stop().
Why are the changes needed?

Some initialization steps could fail before the initialization of metricsPoller, heartbeater, threadPool, which results in the null of metricsPoller, heartbeater, threadPool. For example, I encountered a failure of:
https://github.com/apache/spark/blob/c20af535803a7250fef047c2bf0fe30be242369d/core/src/main/scala/org/apache/spark/executor/Executor.scala#L137
where the executor itself failed to register at the driver.
This PR helps to eliminate the error messages when the issue happens to not confuse users:

[click to see the detailed error message]

21/07/23 16:04:10 WARN Executor: Unable to stop executor metrics poller
java.lang.NullPointerException
        at org.apache.spark.executor.Executor.stop(Executor.scala:318)
        at org.apache.spark.executor.Executor.$anonfun$stopHookReference$1(Executor.scala:76)
        at org.apache.spark.util.SparkShutdownHook.run(ShutdownHookManager.scala:214)
        at org.apache.spark.util.SparkShutdownHookManager.$anonfun$runAll$2(ShutdownHookManager.scala:188)
        at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23)
        at org.apache.spark.util.Utils$.logUncaughtExceptions(Utils.scala:2025)
        at org.apache.spark.util.SparkShutdownHookManager.$anonfun$runAll$1(ShutdownHookManager.scala:188)
        at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23)
        at scala.util.Try$.apply(Try.scala:213)
        at org.apache.spark.util.SparkShutdownHookManager.runAll(ShutdownHookManager.scala:188)
        at org.apache.spark.util.SparkShutdownHookManager$$anon$2.run(ShutdownHookManager.scala:178)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)
21/07/23 16:04:10 WARN Executor: Unable to stop heartbeater
java.lang.NullPointerException
        at org.apache.spark.executor.Executor.stop(Executor.scala:324)
        at org.apache.spark.executor.Executor.$anonfun$stopHookReference$1(Executor.scala:76)
        at org.apache.spark.util.SparkShutdownHook.run(ShutdownHookManager.scala:214)
        at org.apache.spark.util.SparkShutdownHookManager.$anonfun$runAll$2(ShutdownHookManager.scala:188)
        at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23)
        at org.apache.spark.util.Utils$.logUncaughtExceptions(Utils.scala:2025)
        at org.apache.spark.util.SparkShutdownHookManager.$anonfun$runAll$1(ShutdownHookManager.scala:188)
        at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23)
        at scala.util.Try$.apply(Try.scala:213)
        at org.apache.spark.util.SparkShutdownHookManager.runAll(ShutdownHookManager.scala:188)
        at org.apache.spark.util.SparkShutdownHookManager$$anon$2.run(ShutdownHookManager.scala:178)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)
21/07/23 16:04:10 ERROR Utils: Uncaught exception in thread shutdown-hook-0
java.lang.NullPointerException
        at org.apache.spark.executor.Executor.$anonfun$stop$3(Executor.scala:334)
        at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23)
        at org.apache.spark.util.Utils$.withContextClassLoader(Utils.scala:231)
        at org.apache.spark.executor.Executor.stop(Executor.scala:334)
        at org.apache.spark.executor.Executor.$anonfun$stopHookReference$1(Executor.scala:76)
        at org.apache.spark.util.SparkShutdownHook.run(ShutdownHookManager.scala:214)
        at org.apache.spark.util.SparkShutdownHookManager.$anonfun$runAll$2(ShutdownHookManager.scala:188)
        at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23)
        at org.apache.spark.util.Utils$.logUncaughtExceptions(Utils.scala:2025)
        at org.apache.spark.util.SparkShutdownHookManager.$anonfun$runAll$1(ShutdownHookManager.scala:188)
        at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23)
        at scala.util.Try$.apply(Try.scala:213)
        at org.apache.spark.util.SparkShutdownHookManager.runAll(ShutdownHookManager.scala:188)
        at org.apache.spark.util.SparkShutdownHookManager$$anon$2.run(ShutdownHookManager.scala:178)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)

Does this PR introduce any user-facing change?

Yes, users won't see error messages of NullPointerException after this fix.
How was this patch tested?

Pass existing tests.

cc @dongjoon-hyun @attilapiros

Test build #141985 has started for PR 33620 at commit f45dc2b.

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/46496/

Kubernetes integration test status success
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/46496/

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

Test build #141985 has finished for PR 33620 at commit f45dc2b.

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

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


rewrite role to my standard

I'm sorry, I've choose the bad repository :(

@Turgon37 actually you have some good ideas which I should implement in this role :+1:

And you also have an error in meta/main.yml, unless you really want to name your role role_name: nginx :smile:

Yes, I'm fighting with typo to fix theses errors :)

A tip: remember that you cannot use - in role names with new ansible galaxy

Also the way you changed service file template will give you a badly rendered file.

thanks for the galaxy tips, but for the service unit file I think it's ok
[Unit]
Description=Prometheus Node Exporter
After=network.target

[Service]
Type=simple
User=node-exporter
Group=node-exporter
Nice=-5
ExecStart=/usr/local/bin/node_exporter \
    --collector.systemd \
    --collector.textfile.directory=/var/lib/node_exporter \
    --web.telemetry-path="/metrics" \
    --web.listen-address="<IP_ADDRESS>:9100"

SyslogIdentifier=node_exporter
Restart=always

[Install]
WantedBy=multi-user.target

Hmmm, strange, I used yours and it rendered it differently. I probably made some typo  :smile:


Adds linters to Go modules

Fix #572
Added the workflow for the linters.

@edeNFed Please review the PR.

@blumamir I have made the required changes.

@blumamir Thanks for the feedback. Made the required changes.

@blumamir Hi, I changed the version of the go from 1.21 to 1.55.0.

hey @blumamir any other changes required?

@blumamir Can we merge the PR or does any addition issue exists or changes necessary?


Fix sidebar highlight for new AWS pages

The docs I’ve added for AWS aren’t highlighting in the sidebar when you navigate to this, this fixes the link paths so that they show up highlighted:

CloudFormation service role
AWS Secrets Manager

I’m going to merge this as a non-words change, but as always let me know if you’d rather I hadn’t 😄


Inbox iOS shrink to fit screen

With Inbox (and Gmail but this will be solved in 2.2 I think) for iOS

I now use the Sass version. Still got the same problem on Inbox.


Configuring removeOnComplete

Closes #5

Forgive the formatting diffs. I can remove them if you'd like.

Thanks!
I'll take a look as soon as I can. Sorry, I'm a bit behind on maintaining this library.

Thank you very much for the contribution!
A recent update to bring support for Adonis 4.0 also included this feature.
https://github.com/nrempel/adonis-kue/pull/12


Fix CI integration live issue

Describe your changes
Fix by adding the pipeline symbol | on the run attribute
Ref: https://stackoverflow.com/questions/56726429/how-to-run-multiple-commands-in-one-github-actions-docker
Fix the unit test failing issue #491
Others:

Add skip_on_live_mode fixture on ip_questdb, so we won't run the test_quest.py on CI - DB Integration - Cloud flow
Downgrade SQLAlchemy version to 1.4 on CI - DB Integration - Cloud flow (since SQLAlchemy 2 isn't supported)

Issue number
Closes #495
Closes #491
Checklist before requesting a review

[ ] Performed a self-review of my code
[ ] Formatted my code with pkgmt format
[ ] Added tests (when necessary).
[ ] Added docstring documentation and update the changelog (when needed)

:books: Documentation preview :books:: https://jupysql--493.org.readthedocs.build/en/493/

@yafimvo
Now I believe it's running the integration testing for live databases, please review!

So now we have two integration testing

non-live, which starts different database docker containers, it's using SQLAlchemy 2.0+
live, which tests on snowflake online database, it's using SQLAlchemy 1.4

@tonykploomber I see the non-live test is still not running the actual tests

live, which tests on snowflake online database, it's using SQLAlchemy 1.4

I think downgrading to 1.4 might be a bit problematic since most of the DBs support SQLAlchemy > 2 and we need to test them (even though we're testing them locally).
Is it possible to define 2 different jobs, one for SQLAlchemy > 2 (and exclude Snowflake) and one for 1.4?

@tonykploomber I see the non-live test is still not running the actual tests

live, which tests on snowflake online database, it's using SQLAlchemy 1.4

I think downgrading to 1.4 might be a bit problematic since most of the DBs support SQLAlchemy > 2 and we need to test them (even though we're testing them locally).
Is it possible to define 2 different jobs, one for SQLAlchemy > 2 (and exclude Snowflake) and one for 1.4?

Actually we are doing the thing as you mentioned. We have two different jobs now:

live: only runs snowflake integration testing, which uses 1.4
non-live: runs all testings except the snowflake part, which uses 2+

Now we separate those integration testing by it's database destination.
In the future we might have a case that uses an live database service and also needs SQLalchemy 2+ to run it, but we can do that once we met that

Let's review again, I also address this https://github.com/ploomber/jupysql/issues/495

@tonykploomber It seems something is wrong with the CI - DB Integration - Local test. It has been running for 3 hours and is still ongoing.

Update:
I think the root cause should be this
We have a tear_down_generic_testing_data function that drops all testing table data, in tear_down section.
Something wrong with mysql and mariadb that has a connection (or session) blocking the drop command from another session.

As snapshot, we can see it's hanging on those databases
@yafimvo, I tried to add close_all_sessions before calling the Base.metadata.drop_all (this causes hanging).
But it doesn't work, still need more investigation
def drop_table(engine, table_name):
    Base = declarative_base()
    metadata = MetaData()
    metadata.reflect(bind=engine)
    table = metadata.tables[table_name]
    if table is not None:
        close_all_sessions()
        Base.metadata.drop_all(engine, [table], checkfirst=True)
        print ("Clear done: ", table)

This is the related discussion

@yafimvo Let's review again, now I skip the test_profile_query case by adding pytest.skip("Skip on unclosed session issue")

@tonykploomber Good job!


Handle *_DELEGATE Transaction Service events

Summary
The Transaction Service now emits new *_DELEGATE events for creating, updating and deleting delegates:

NEW_DELEGATE
UPDATED_DELEGATE
DELETED_DELEGATE

This adds the relevant validation and handling of the aforementioned, clearing the delegates cache accordingly.
Changes

Add schemas, inferred entities and relevant builders
Add method to clear delegates, called by each event

I'm marking this as a draft for now as there is no chain identifier for each event. I've discussed this with @falvaradorodriguez, and he will add them soon. A chainId property is preemptively added accordingly.


Catalan number in JavaScript

💥 Proposal
(A clear and concise description of what the proposal is.)
Have you read the Contributing Guidelines on Pull Requests?
(Write your answer here.)
i would like to add a code to find n-th catalan number in javascript. I am a gssoc participant and would like to work on this issue.

/assign


Update URI Pointer for GNUS Logo

Commits upload GNUS Logo to the sushiswap/list repo and sets the URI to the github master logo polygon directory like other tokens have done.

Any update to get this submitted?


[ALLUXIO-2115] Add config for request signature used by s3 and upgrade jets3t

https://alluxio.atlassian.net/browse/ALLUXIO-2115

Upgrade aws-java-sdk to 1.11.20
Upgrade jets3t to 0.9.4 to support AWS4-HMAC-SHA256
Add config alluxio.underfs.s3.request.signature.version to tell jets3t to use signature v4 for request authentication.

Because all regions support Signature Version 4, so we also add config to alluxio-default.properties

Can one of the admins verify this patch?

alluxio-bot, check this please

alluxio-bot, check this please

@LeightonWong Thanks for the patch, I left a few comments.

@LeightonWong The S3A change looks good. Could you revert the other changes (s3n changes, version increase), and add documentation for the new configuration value? See this commit as an example.

@LeightonWong Also, I don't think your github account is probably linked yet. For us to properly credit your contributions, could you please set up your Github account by following the Github instructions here?

@calvinjia Ok, s3n changes reverted, document added, account linked.

LGTM, thanks for the iterations.
Could you sign the CLA (see the bot message)? I think this is good to merge.

@calvinjia OK, already signed.

alluxio-bot, check this please.

@LeightonWong
Could you double check you have signed the CLA? After you sign it, the bot should say a message like You did it! Thanks for signing the CLA and the cla-missing label will be removed from this PR. Thanks!

@calvinjia Sorry， I checked status and resigned, now cla-missing removed.

LGTM


🔴 https://nonexistenttest.sctech.mooo.com is down

Site https://nonexistenttest.sctech.mooo.com is currently down. Last checked at 2024-09-07T16:23:52.009233

because its nonexistent hehe


Small Change to Imports

I've just run some tests with the latest source based and noticed in core.py there is the line
from soco.exceptions import SoCoUPnPException
May I suggest updating this to:
from .exceptions import SoCoUPnPException
Thanks
Rob

Thanks for reporting it.


The names of the players are not displayed when they are on the team

%player% shows nothing if the player is in the team

Thank you for your feedback! It will be fixed.

I fixed this in both versions of the game (MC 1.17 and  MC 1.16.5), but something tells me that I should add a placeholder for the prefix and suffix of the team, as well as the color of the nickname.
Please respond to this comment.

I haven't had time to test the bug fix yet but yes adding the ability to change the prefix and suffix is a good idea and if you add RGB colors it will be a super mega good idea xD

and one more thing ... I think global chat doesn't work on 1.17 even if it's on true ... the only way to use the mod is to set local chat distance to 10000 xD


Direction arrows sometimes point in wrong direction

The driving direction arrows sometimes appear to point in the wrong direction. See for example scout signs with id 209388 or 221440.

any news on this one, @mvexel?

We have investigated these 2 road signs and it seams that the collected heading value is incorrect (we draw the direction based on the heading collected by the clients). Do you have any other examples for which the direction is invalid?

Here are a couple of more examples (there seem to be quite many…):

235274
212322
221440
131654
144220
207281
221103

Thanks. I will compute the heading instead of using the reported one.


The operator 'aten::cumprod.out' is not currently supported on the DML backend

Hi :)
I encountered the following message while implementing a model and it looks like the cummulative product function is not supported yet.
UserWarning: The operator 'aten::cumprod.out' is not currently supported on the DML backend and will fall back to run on the CPU. This may have performance implications.

Hi @amakiir, thank you for submitting this issue. While I can't provide a timeline for resolution as the moment, please know that your feedback is valuable to us. We will follow up once we can review this issue.


invokelatest not exported for julia 1.8

When using julia version 1.8 the following error occurs:
[...]
UndefVarError(var=:invokelatest)
[...]

Do we need to replace invokelatest by Base.invokelatest?

Yes, please create a PR! I forgot about it (https://github.com/JuliaLang/julia/blob/v1.9.0/NEWS.md#language-changes).


Option to disable automatic kit detection

Is it possible to add a cmake.enableKitScan: bool option?
Sometimes when giving our CMake project to new members, people often mistakenly use a scanned kit which is not configured with properties such as prefix path resulting in decreased productivity. And we are cross compiling our project to a limited number of platforms ergo unable to use the common cmake.configureArgs. It would be really convenient if this option is available.

Thank you for your feature idea. We may not be able to implement it immediately, but we will track the community reactions to determine where this might fit into our backlog.  We would also accept a PR from the community if anyone would be interested in helping out!

+1, using Kits is proprietary, unnecessary and reinvents wheel. While someone may find it useful, it should not disturb people working with properly setup environment (using direnv or similar tools).

When we support CMakePresets.json, we may be able to disable this for repositories that have opted in to the new experience.

Kits were (and are) great. CMakePresets seems to provide a more standardized and configurable alternative.
This (writing our own kits/cmakepresets) is very helpful for specifying hand-crafted toolchain files.
For the moment, however, it is totally possible to select 'unspecified' and go from there without issue.

What is the current resolution on this issue?
I have lots of projects using CMake, all handling their toolchains internally and each time I open such projects in VSCode I am annoyed by this question, completely useless in my case.
Is there any way to prevent it?
If not, will a patch implementing it be accepted?

@bobbrow I wasn't able to the refactor work, but I did manage to disable the listing of scanned kits in #2520. This satisfies my use case of not being shown additional compilers that have not been configured by our project.

Thanks @bharatvaj. We will take a look.  The idea seems fine to me, but we should leave this issue open to track the bigger issue around unnecessary scanning when presets are in use.  We recently did some refactoring in this area, so we might already be most of the way there.

My projects use compile_commands.json for feeding IntelliSense and keep track of their build configurations in package.json (for example). The main reason for doing this is that the xPack mechanism is more generic; as seen in that project, it is neutral to the build system, and CMake, meson, proprietary, whatever, can be equally used.
Can we do something to add the options to disable scanning for kits or presets?

why does this extension insist on using kits or presets, since neither are really mandatory?

@ilg-ul because most people need them to help get their projects configured correctly.  In a way, your package.json does the same basic thing as Kits and Presets; it configures the project.  For folks who don't use that approach, using Kits or Presets is the way to go.

Can we do something to add the options to disable scanning for kits or presets?

That's basically what this issue is tracking.

because most people need ...

Yes, I got the point, and I have no problem for people to use them, just that neither the kits nor presets should be made mandatory, such that users who do not need them to not be permanently annoyed.
So, if there is anything I can do to help add configuration options to disable kits and presets, please let me know.

+1
The worst part  is that the kits appear at an indeterminate point.
So you'll be going to click on something else, and up it pops from under you, causing you to click on the wrong thing.
I would just like to never see it ever again.
Doesn't help that the bottom panel always shows up and there's often a bunch of annoying little popups at the bottom  right.
Can be very frustrating if you've no intention of compiling the code, don't want to make FS changes, and  are just e.g. reviewing an sdk.
It's starting to feel like "reject all non essential cookies"
VSCode isn't really the small, sleek editor it once was.
Thanks.

I fully agree that these so called automations are very annoying and in my opinion they should not be enabled by default, neither in CMake, nor in the C/C++ extension; instead, they should require an explicit action from the user to trigger them.

@JonathanDotCel @frankie-zeng @cpusam thanks for your feedback. In addition to commenting, be sure to upvote (👍 react) the issue, because that's typically how we prioritize new features.


Please add donate button.

Just as the header suggests: Please add a donate button for all those who want to show their appreciation of your work.

...

Thanks @Metabolix. After 3months suffered from ugly Lenovo default Boot logo, TODAY I officially get rid of it 💖


create new folder and calculator.js file

🚀 What is the feature?
In the future we will need some methods that are used from a lot of places. Therefore, create in the frontend package a new "utils" directory. In this directory create a new file "calculator.js".
As a start, define in this file a method "add()", that accepts 2 parameters, adds them, and returns them.
ℹ Additional info
Add a screenshot of your changes - if helpful.
Make sure the app works, otherwise the PR cannot be approved.
Link the PR with this issue (in the right panel "Development" -> select issue).

Please assign this to me

Have fun :)


[bug] opentelemetry incompatibilities with LLM semantics

Describe the bug
As a first timer, I tried the openai instrumentation, and sent a trace to a local collector (using ollama as the backend). Then I compared the output with llm semantics defined by otel. I noticed some incompatibilities and some attributes not yet defined.
compatible:
none
incompatible:

kind=internal (should be client)
name=ChatCompletion (should be 'chat codegemma:2b-code')
attributes['llm.input_messages.0.message.content']='<|fim_prefix|>def hello_world():<|fim_suffix|><|fim_middle|>'  (should be the event attribute gen_ai.prompt)
attributes['llm.output_messages.0.message.content']='print("hello world")'  (should be the event attribute gen_ai.completion)
attributes['llm.token_count.prompt']=24 (should be 'gen_ai.usage.input_tokens')
attributes['llm.token_count.completion']=11 (should be 'gen_ai.usage.output_tokens')
attributes['llm.model_name']='codegemma:2b-code' (should be the the span attribute 'gen_ai.request.model')

not yet defined in the standard:

attributes['openinference.span.kind']='LLM'
attributes['input.value']: '{"messages": [{"role": "user", "content": "<|fim_prefix|>def hello_world():<|fim_suffix|><|fim_middle|>"}], "model": "codegemma:2b-code"}'
attributes['input.mime_type']='application/json'
attributes['output.value']: '{"id":"chatcmpl-646","choices":[{"finish_reason":"stop","index":0,"message":{"content":"print("hello world")","role":"assistant"}}],"created":1721290309,"model":"codegemma:2b-code","object":"chat.completion","system_fingerprint":"fp_ollama","usage":{"completion_tokens":11,"prompt_tokens":24,"total_tokens":35}}'
attributes['output.mime_type']='application/json'
attributes['llm.invocation_parameters']='{"model": "codegemma:2b-code"}
attributes['llm.input_messages.0.message.role']='user'
attributes['llm.output_messages.0.message.role']='assistant'
attributes['llm.token_count.total']=35

To Reproduce
You can use a program like this:
import os
from openai import OpenAI
from openinference.instrumentation.openai import OpenAIInstrumentor
from opentelemetry import trace
from opentelemetry.sdk.trace import TracerProvider
from opentelemetry.sdk.trace.export import SimpleSpanProcessor
from opentelemetry.exporter.otlp.proto.http.trace_exporter import OTLPSpanExporter
from opentelemetry.sdk.resources import Resource

def initialize_tracer():
    # Set the service name such that it is different from other experiments
    resource = Resource(attributes={'service.name': 'openinference-python-ollama'})
    trace.set_tracer_provider(TracerProvider(resource=resource))
    # Default the standard ENV variable to localhost
    otlp_endpoint = os.getenv('OTEL_EXPORTER_OTLP_TRACES_ENDPOINT', 'http://localhost:4318/v1/traces')
    otlp_exporter = OTLPSpanExporter(endpoint=otlp_endpoint)
    # Don't batch spans, as this is a demo
    trace.get_tracer_provider().add_span_processor(SimpleSpanProcessor(otlp_exporter))

def instrument_openai():
    OpenAIInstrumentor().instrument()

def chat_with_ollama():
    ollama_host = os.getenv('OLLAMA_HOST', 'localhost')
    # Use the OpenAI endpoint, not the Ollama API.
    base_url = 'http://' + ollama_host + ':11434/v1'
    client = OpenAI(base_url=base_url, api_key='unused')
    messages = [
      {
        'role': 'user',
        'content': '<|fim_prefix|>def hello_world():<|fim_suffix|><|fim_middle|>',
      },
    ]
    chat_completion = client.chat.completions.create(model='codegemma:2b-code', messages=messages)
    print(chat_completion.choices[0].message.content)

def main():
    initialize_tracer()
    instrument_openai()
    chat_with_ollama()

if __name__ == '__main__':
    main()

Expected behavior
I would expect semantics to extend, not clash with otel LLM ones. Ack this is a moving target as the otel ones change frequently.
Screenshots
Example collector log
otel-collector      | 2024-07-18T08:11:49.239Z	info	TracesExporter	{"kind": "exporter", "data_type": "traces", "name": "debug", "resource spans": 1, "spans": 1}
otel-collector      | 2024-07-18T08:11:49.239Z	info	ResourceSpans #0
otel-collector      | Resource SchemaURL:
otel-collector      | Resource attributes:
otel-collector      |      -> service.name: Str(openinference-python-ollama)
otel-collector      | ScopeSpans #0
otel-collector      | ScopeSpans SchemaURL:
otel-collector      | InstrumentationScope openinference.instrumentation.openai 0.1.8
otel-collector      | Span #0
otel-collector      |     Trace ID       : 88ab89df040772d339a2373c137b745c
otel-collector      |     Parent ID      :
otel-collector      |     ID             : 2f2fbc89545a9444
otel-collector      |     Name           : ChatCompletion
otel-collector      |     Kind           : Internal
otel-collector      |     Start time     : 2024-07-18 08:11:48.540101 +0000 UTC
otel-collector      |     End time       : 2024-07-18 08:11:49.256843 +0000 UTC
otel-collector      |     Status code    : Ok
otel-collector      |     Status message :
otel-collector      | Attributes:
otel-collector      |      -> openinference.span.kind: Str(LLM)
otel-collector      |      -> input.value: Str({"messages": [{"role": "user", "content": "<|fim_prefix|>def hello_world():<|fim_suffix|><|fim_middle|>"}], "model": "codegemma:2b-code"})
otel-collector      |      -> input.mime_type: Str(application/json)
otel-collector      |      -> output.value: Str({"id":"chatcmpl-646","choices":[{"finish_reason":"stop","index":0,"message":{"content":"print(\"hello world\")","role":"assistant"}}],"created":1721290309,"model":"codegemma:2b-code","object":"chat.completion","system_fingerprint":"fp_ollama","usage":{"completion_tokens":11,"prompt_tokens":24,"total_tokens":35}})
otel-collector      |      -> output.mime_type: Str(application/json)
otel-collector      |      -> llm.invocation_parameters: Str({"model": "codegemma:2b-code"})
otel-collector      |      -> llm.input_messages.0.message.role: Str(user)
otel-collector      |      -> llm.input_messages.0.message.content: Str(<|fim_prefix|>def hello_world():<|fim_suffix|><|fim_middle|>)
otel-collector      |      -> llm.model_name: Str(codegemma:2b-code)
otel-collector      |      -> llm.token_count.total: Int(35)
otel-collector      |      -> llm.token_count.prompt: Int(24)
otel-collector      |      -> llm.token_count.completion: Int(11)
otel-collector      |      -> llm.output_messages.0.message.role: Str(assistant)
otel-collector      |      -> llm.output_messages.0.message.content: Str(print("hello world"))
otel-collector      | 	{"kind": "exporter", "data_type": "traces", "name": "debug"}

Desktop (please complete the following information):

OS: [e.g. iOS]
Version [e.g. 22]

Additional context
The otel semantics are defined by "Semantic Conventions: LLM" and folks doing the changes there are frequently on the slack channel, in case you have any questions. I personally haven't yet made any changes to the LLM semantics.
https://github.com/open-telemetry/community?tab=readme-ov-file#specification-sigs

Hey @codefromthecrypt, thanks for this and good callout.  This project actually pre-dates the gen_ai experimental conventions and as such you are right, they do not align. We are planning on getting involved with the working groups that are making progress and reconciling the differences with our conventions. Thanks for the very helpful links - appreciate it.

Thanks @mikeldking for the feedback and hope to see you around the #otel-llm-semconv-wg slack or any SIG meetings.


Feature request: Allow to avoid dash "-" in the Session Host naming

Would be possible to allow a Session host naming convention without the "-" in the middle?

Added in v0.3.0


maintainer-list: fix a few changed github usernames

Description of changes
I noticed a few github usernames that didn't resolve anymore, causing ofborg to not notify the maintainers on relevant PRs. I did a bulk check of all id <-> usernames mapping, found 5 name changes that had not been reflected in the list.
There are also two users that don't seem to exist at all anymore: @weebsorceress and @gordiasdot. I've not touched those entries in this PR.
cc @CyborgPotato @Flameslice @matejc @syvb @fogti
Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.05 Release Notes (or backporting 22.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

If you merge this, there will be two same GitHub usernames - matejc

I guess that Mateo Diaz is using my GitHub id

I guess that Mateo Diaz is using my GitHub id

Thanks for pointing this out! I've fixed the wrong GitHub id. cc @mateodd25

There's a script for this you can just run. It's maintainers/scripts/fix-maintainers.pl.

There's a script for this you can just run. It's maintainers/scripts/fix-maintainers.pl.

Nice, more convenient than my curl+jq bash oneliner :) Unfortunately it's also case sensitive, which makes it generate a bunch of noisy "renames" that aren't actually renames. I've checked that with this PR applied locally it doesn't find anything else than false positives.


Dummy observation prior

Hey @DjangoTG
Have a look! I simplified your function, cutting it down to one loop and just a few lines! Note that you have to provide the original data, and not matrices Y and X to extract the initial observations.
I haven't run your code, so some extra polishing might be required!
Good luck!
@donotdespair

Hi @donotdespair ,
If you've available, I'd love to meet on Wednesday afternoon. I've added IRFs and I'm working on FEVD at the moment, but for some reason, my website won't render properly. It's coming up with an error even though when I run the code itself it works fine with no errors.
This is the error: processing file: index.qmd
Error in loadNamespace(j <- i[[1L]], c(lib.loc, .libPaths()), versionCheck = vI[[j]]) :
namespace 'glue' 1.4.2 is being loaded, but >= 1.6.1 is required
Calls: .main ... namespaceImportFrom -> asNamespace -> loadNamespace
Execution halted
Anyway, let me know about meeting!

Hey@DjangoTG
It was a very busy evening and i did not even have a chance to reply to your message. Please commit your 'index.qmd' file to gh to make certain that i can review it in the morning.
Cheers, T

Hi @donotdespair ,
I've committed my index file, the sign restrictions aren't working properly for some reason I can't figure out. I'm planning on waking up early to try and figure it out. It's leading to really weird IRFs when it actually works, at the moment the loop just keeps getting stuck.


[Feature Request] change striped table row color on hover

Existing Component
Yes
Component Name
Table
Description
For gray rows, hovering doesn't change their color: http://element.eleme.io/1.2/#/en-US/component/table#striped-table

Fixed in #3696


7.4.1185 fails to build with VS2015 on Windows 10

C:\...\vim\src> nmake -f Make_mvc.mak CPU=AMD64 OPTIMIZE=MAXSPEED NETBEANS=no GETTEXT=no CSCOPE=no XPM=no DIRECTX=yes GUI=yes
 ....
C:\...\src\gui_w48.c(1786): warning C4013: 'netbeans_read' undefined; assuming extern returning int
 ....
gui_w32.obj : error LNK2001: unresolved external symbol netbeans_read
gvim.exe : fatal error LNK1120: 1 unresolved externals
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\amd64\link.EXE"' : return code '0x460'
Stop.

I have always built my vim and gvim without Netbeans support on Windows, so I consider it not working to be a bug, but if something changed and now this is expected behavior, I'll adjust my expectations accordingly.

A. Sinan Unur wrote:

C:\...\vim\src> nmake -f Make_mvc.mak CPU=AMD64 OPTIMIZE=MAXSPEED NETBEANS=no GETTEXT=no CSCOPE=no XPM=no DIRECTX=yes GUI=yes
 ....
C:\...\src\gui_w48.c(1786): warning C4013: 'netbeans_read' undefined; assuming extern returning int
 ....
gui_w32.obj : error LNK2001: unresolved external symbol netbeans_read
gvim.exe : fatal error LNK1120: 1 unresolved externals
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\amd64\link.EXE"' : return code '0x460'
Stop.

Patch 7.4.1187 should fix this.
--
"I can't complain, but sometimes I still do."   (Joe Walsh)
/// Bram Moolenaar --<EMAIL_ADDRESS>-- http://www.Moolenaar.net   \
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \
\\  an exciting new programming language -- http://www.Zimbu.org        ///
\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Yes, both vim and gvim build without problems now. Thank you.


Remove duplicate list_circuits method on Faulty class

Thanks for this great gem! I noticed there is a duplicate method so this PR removes it.
https://github.com/ParentSquare/faulty/blob/6a0733f20f1a72e4ad1a095adf05b106e31be7cc/lib/faulty.rb#L116-L121

@JuanitoFatas Thanks! I'm glad you found it useful. If you look closely, you'll see that these are actually two different methods. One is a class method, and one is an instance method. So I don't think there is any need to remove one.
If I'm misunderstanding, feel free to reopen. Thanks!

@justinhoward Oh yes I missed the class << self bit, sorry!


Error updating the Minecraft server software.

Trying to create a new world of current minecraft version. Always get this error
The cached copy of the version manifest is up to date.
Use the force-update option to ensure a new copy is downloaded.
Starting Minecraft Server: alphaError updating the Minecraft server software.

did force-update and also ping mojang.com which works. the 1.13.1 jar is also in the server folder
OS
Ubuntu 16.04
MSCS
up to date, did git pull & mscs make update
JAVA
openjdk version "1.8.0_181"
OpenJDK Runtime Environment (build 1.8.0_181-8u181-b13-0ubuntu<IP_ADDRESS>-b13)
OpenJDK 64-Bit Server VM (build 25.181-b13, mixed mode)

This error only occurs for MC versions > 1.12.2, currently for versions 1.13 -1.13.1

Odd. Please try running:
  perl -0777ne '
    use JSON;
    use LWP::Simple;
    my $json = decode_json ($_);
    my $version;
    foreach $ver (@{$json->{versions}}) {
      $version = $ver if ($ver->{id} eq "1.13.1");
    }
    $json = decode_json (get ($version->{url}));
    print $json->{downloads}{server}{url};
  ' /opt/mscs/version_manifest.json

This should print out a valid URL for the 1.13.1 server.jar file.

Also, please post a copy of the mscs.defaults file and the mscs.properties file for the new world.  You can also check that your minecraft user has rw access to the \opt\mscs\server folder.

The output from your cli code:
https://launcher.mojang.com/v1/objects/fe123682e9cb30031eae351764f653500b7396c9/server.jar

mscs.defaults
mscs-location=/opt/mscs mscs-worlds-location=/opt/mscs/worlds mscs-versions-url=https://launchermeta.mojang.com/mc/game/version_manifest.json mscs-versions-json=/opt/mscs/version_manifest.json mscs-versions-duration=1440 mscs-lockfile-duration=1440 mscs-default-world=world mscs-default-port=25565 mscs-default-ip= mscs-default-version-type=release mscs-default-client-version=$CURRENT_VERSION mscs-default-client-jar=$CLIENT_VERSION.jar mscs-default-client-url=https://s3.amazonaws.com/Minecraft.Download/versions/$CLIENT_VERSION/$CLIENT_VERS$ mscs-default-client-location=/opt/mscs/.minecraft/versions/$CLIENT_VERSION mscs-default-server-version=$CURRENT_VERSION mscs-default-server-jar=minecraft_server.$SERVER_VERSION.jar mscs-default-server-url=https://s3.amazonaws.com/Minecraft.Download/versions/$SERVER_VERSION/minecraft_se$ mscs-default-server-args=nogui mscs-default-initial-memory=128M mscs-default-maximum-memory=2048M mscs-default-server-location=/opt/mscs/server mscs-default-server-command=$JAVA -Xms$INITIAL_MEMORY -Xmx$MAXIMUM_MEMORY -jar $SERVER_LOCATION/$SERVER_J$ mscs-backup-location=/opt/mscs/backups mscs-backup-log=/opt/mscs/backups/backup.log mscs-backup-duration=15 mscs-log-duration=15 mscs-detailed-listing=motd server-ip server-port max-players level-type online-mode mscs-enable-mirror=0 mscs-mirror-path=/dev/shm/mscs mscs-overviewer-bin=/usr/bin/overviewer.py mscs-overviewer-url=http://overviewer.org mscs-maps-location=/opt/mscs/maps mscs-maps-url=http://mc.simb.ch
mscs.properties
mscs-enabled=true mscs-server-version=1.13 mscs-client-version=1.13

/opt/mscs
drwxr-xr-x  8 minecraft minecraft  4096 Okt  9 08:15 .
drwxr-xr-x  6 root      root       4096 Mai  2 14:16 ..
drwxr-xr-x 14 minecraft minecraft  4096 Okt  7 20:01 backups
-rw-------  1 minecraft minecraft    23 Jan 21  2017 .bash_history
drwxr-xr-x  3 minecraft minecraft  4096 Dez 26  2016 maps
drwxr-xr-x  3 minecraft minecraft  4096 Nov 21  2016 .minecraft
-rw-r--r--  1 minecraft minecraft  1543 Nov 22  2016 mscs.defaults
drwxr-xr-x  2 minecraft minecraft  4096 Okt  8 14:16 server
drwxr-xr-x  2 root      root       4096 Nov 28  2016 textures
-rw-rw-r--  1 minecraft minecraft 93100 Okt  9 08:15 version_manifest.json
-rw-r--r--  1 minecraft minecraft 93100 Okt  7 20:23 version_manifest.json.bak
drwxr-xr-x 14 minecraft minecraft  4096 Okt  9 08:15 worlds

/opt/mscs/server
drwxr-xr-x 2 minecraft minecraft     4096 Okt  8 14:16 .
drwxr-xr-x 8 minecraft minecraft     4096 Okt  9 08:15 ..
-rw-r--r-- 1 minecraft minecraft  9720769 Mai  3  2017 minecraft_server.1.11.1.jar
-rw-r--r-- 1 minecraft minecraft  9713666 Nov 14  2016 minecraft_server.1.11.jar
-rw-r--r-- 1 minecraft minecraft 30222121 Apr  2  2018 minecraft_server.1.12.2.jar
-rw-r--r-- 1 minecraft minecraft 30202458 Apr  2  2018 minecraft_server.1.12.jar
-rw-r--r-- 1 minecraft minecraft        0 Okt  8 14:13 minecraft_server.1.13.1.jar
-rw-r--r-- 1 minecraft minecraft        0 Okt  8 14:16 minecraft_server.1.13.jar
-rw-r--r-- 1 minecraft minecraft  2061638 Sep 18  2016 minecraft_server.1.4.7.jar
-rw-r--r-- 1 minecraft minecraft  8320755 Mai  3  2017 minecraft_server.1.8.9.jar

Just an idea here:
Try blanking mscs-default-server-url and mscs-default-client-url to match the current default versions.  These values are now extracted from an url listed in the version_manifest.json file.  In other words, change your mscs.defaults to look like:
mscs-default-server-url=
mscs-default-client-url=

Also, delete the empty files in /opt/mscs/server
rm minecraft_server.1.13.1.jar minecraft_server.1.13.jar

I don't know what the textures folder holds, but you may have better results if that folder is owned by your minecraft user.
sudo chown -R minecraft:minecraft /opt/mscs/textures

This however is not related to your current issue...

I'm leaving on vacation later today, so hopefully this solves your issue!  I'll try to check back, but I'll have limited connectivity.

I just pushed commit 0a1c07ba8b1c8d828330808a26c0596098811ec5 to fix the documentation issue here.

Thanks for the tips. I downloaded the jar myself into the server directory with
sudo wget https://launcher.mojang.com/v1/objects/fe123682e9cb30031eae351764f653500b7396c9/server.jar (same url as created with your command)
and then renamed it to mincraft_server.1.13.2.jar
After that I could start the world with the version 1.13.2 as this is the latest stable version.
The empty files are created from mscs. I think there not filled because the download fails.

I'm back from vacation.
Make sure that you have liblwp-protocol-https-perl installed as well as noted in Issue #194. This may be part of the problem.
Please test again with your mscs.defaults file modified as suggested and this package installed.  You can delete (or temporarily rename) the mincraft_server.1.13.1.jar file that you manually downloaded.  If it is working with these changes, either close this issue or let me know and I can do it.
Thanks for the bug report!

liblwp-protocol-https-perl is already installed.
I copied the mscs.defaults from the README and replaced my with its content. Now it works ...
I think the problem was the filled  mscs-default-server-url= which is now not set (before it had the value https://s3.amazonaws.com/Minecraft.Download/versions/$SERVER_VERSION/minecraft_server).
But as I know I never changed this, was there from installation (was a while ago ...).

Good, I'm glad changing the server URL worked.  I'm going to go ahead and close this issue. Thanks for the bug report


Update README.md

Proposal to add some additional text under the Linux Automation section related to Issue #148.
This might help avoid Pi users from running into the same problem with rc.local in the future.

Thanks!


Optimizing the client-server communication

Description
By merging some callbacks and rewriting some of them into the clientside_callback form (pure javascript code processed on the user's client browser machine), the rendering time (when someone opens a new page or applies some action like filter, export_data...) is significantly reduced.
Progress:

[x] Implement action loop trigger_to_global_store as clientside_callback.
[x] Merge gateway , set_remaining and executor into one single callback.
[x] Rewrite the merged (new gateway) callback as clientside_callback.
[x] Merge after_action and cycle_breaker callbacks into one clientside_callback.
[x] Overwrite RangeSlider, Slider, ThemeSelector and other callbacks in the system to clientside_callback.
[x] Try to merge two callbacks where input is theme_selector. (IMPOSIBLE because Patch object isn't supported in the clientside_callback) - actually it this fix isn’t needed.

Screenshot
Action loop architecture for the current system:

Action loop architecture for the optimised system (after we rewrite the gateway callback into the client-side one):

Consequences

There's no more logs on the server-side that show which component is triggered and what actions chain will be executed.
Since many callbacks have been moved to javascript code, we can no longer unit test them.

To be discussed (not the part of this PR):

It's probably possible to save the vizro.themes on the frontend side as well? Then to convert the update_graph_theme callback into the clienside_callback too.
Try to get rid of dash.pages / or wrap (decorate) it.
At the user's request, enable keeping original (or filtered) data on the frontend, instead of in the DataManager.
Put some kind of @lru_cache on the server functions.

ToDo:

Handle when a new actions chain is started before the previous one has finished.
Find an appropriate way to test client-side callbacks.

Checklist

[x] I have not referenced individuals, products or companies in any commits, directly or indirectly
[x] I have not added data or restricted code in any commits, directly or indirectly
[x] I have updated the docstring of any public function/class/model changed
[ ] I have added the PR number to the change description in the changelog fragment, e.g. Enable feature XXX ([#1](https://github.com/mckinsey/vizro/pull/1)) (if applicable)

Types of changes

[x] Docs/refactoring (non-breaking change which improves codebase)
[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Another future use case relevant to this topic: when a dashboard needs to connect to the database and pull data from it,

Clientside callbacks are not possible if you need to refer to global variables on the server or a DB call is required.

https://dash.plotly.com/clientside-callbacks
How should we construct the action chain if there is a DB call involved

@lingyielia

How should we construct the action chain if there is a DB call involved

Only the internal mechanism (the mechanism that allows the action loop to work) is implemented using clientside-callbacks. If someone needs a DB connection, they can create a custom action or we can release a predefined action for that (either way it's an Action). Remember that Action callbacks are blue rectangles in the architecture sketch (look Description) which means that they are not client-side callbacks, but regular dash.callbacks that "live in the server".


Update Conversation examples

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 89.10%. Comparing base (8beed56) to head (5abace0).

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff            @@
##               main     #144   +/-   ##
=========================================
  Coverage     89.10%   89.10%
  Complexity      680      680
=========================================
  Files           100      100
  Lines          1432     1432
  Branches         32       32
=========================================
  Hits           1276     1276
  Misses          114      114
  Partials         42       42

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


Fix Networking to receive data for POST requests

Currently,  GULNetworking doesn't receive the data when sending a POST request.
Tracked internally at b/141712804

Looks like more sync'ing with internal version is needed ...


Add compact variants of shape tokens

Ready for review @lucasveil  here

Looking good @BirteThornquist Will implement some of those in the "compact prototype".


Add a new SS2 dataset without accessions to be able to use it for direct archiving

The current SS2 dataset is not suitable for testing the direct archiving as it contains invalid accessions for biomaterials, project and files.
It is located here: https://github.com/HumanCellAtlas/metadata-schema/blob/master/infrastructure_testing_files/current/dcp_integration_test_metadata_1_SS2_bundle.xlsx
I had a discussion with @ESapenaVentura and I am going to replicate the same dataset and remove the accessions from it and place it next to the original one with a different name. I am going to reuse it in the direct archiving integration test.
Tasks to do:

[x] Create the new dataset and commit it to the metadata-schema repository
[x] Refactor the direct archiving integration test and reuse the newly created dataset in the test.

PR's have been merged, part of the integration tests


CDK-991: Add size-based and time-based file rolling.

File size-based rolling works and is passing a new test for Avro, but is
disabled for Parquet because the appender has no reliable size estimate
for Parquet.
Time-based rolling uses a new SPI interface, ClockReady, which exposes a
method for passing time signals to implementing classes. This removes
the need for Kite to provide a thread-based check.

Changes look good.  +1

Thanks @mkwhitacre!
I saw your question about when something wouldn't be ClockReady, which I think has been removed... but just in case the idea was that not all of the writers will be time-based. HBase, for example, doesn't need to be right now.

yeah some of it seemed to be answered with the second commit (which I hadn't gotten to yet) :smile:


Guards Protection

Is there a way to set Guards like a method-scoped @AuthGuard() ?

hi @justindefodji
You can reference from spec/auth-guard


expected 4 new records but only got 3

With the attached CSV, i only get three items in my matched list, but the csv has four items. two of the items in the csv have the same address -- this is a scenario we need to account for in some way.  Two cases come to mind:

the csv has duplicate records
the facilities are at the same address but different suite/unit numbers and maybe the way the address gets entered for locating it appears the same

MarylandHospitals_NewOnly.zip
Repro Steps:

Upload the attached CSV and then geocode with single field address option -- FACADDR field
After adding to map, note that there are only three in the matched list, but expected 4

Alternate Test 1

Add suite numbers into the single line address making them unique -- then i get 4 items

Alternate Test 2

Add a CSV with duplicate coordinates. In this case - all items are added even if the location information is duplicated
FL_AG_sites.zip

Duplicate issue in devtopia to track this issue. https://devtopia.esri.com/WebGIS/arcgis-webappbuilder/issues/12178


Support to load quantized model which be quantized with neural-compressor

What does this PR do?
Support to load quantized model which be quantized with neural-compressor

Before submitting

[ ] This PR fixes a typo or improves the docs (you can dismiss the other checks if that's the case).
[ ] Did you make sure to update the documentation with your changes?
[ ] Did you write any new necessary tests?

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.

@PenghuiCheng  please take a look at the test failure. It seems torch v2.0 is needed.


[FIX-#6505][Dao] upgrade the MySQL driver package for building MySQL jdbcUrl

Purpose of the pull request
fix-6505 upgrade the MySQL driver package for building MySQL jdbcUrl
Brief change log

replace com.mysql.jdbc.Driver everywhere with com.mysql.cj.jdbc.Driver
update related unit tests

Hi @lyggyhmm , to target specific issue from PR, we recommend use keyword fix: #issue_id or close: #issue_id or closes: #issue_id in your PR describe. I would not only connect issue to PR but also close issue automatically when PR is be closed.

Wait a minute, why we should add file dolphinscheduler-dao/src/main/resources/datasource.properties here? @lyggyhmm

等一下，我们为什么要dolphinscheduler-dao/src/main/resources/datasource.properties在这里添加文件？@lyggyhmm 是不是偶然添加的

Wait a minute, why should we add file dolphinscheduler-dao/src/main/resources/datasource.properties here? @lyggyhmm does it add by accident

It seems that there was this file before. It is not enough to see that it was deleted on the 14th in the submission record. It may be that I had a little accident during fetch.

Hi @lyggyhmm , to target specific issue from PR, we recommend use keyword fix: #issue_id or close: #issue_id or closes: #issue_id in your PR describe. I would not only connect issue to PR but also close issue automatically when PR is be closed.

Hi @lyggyhmm , to target specific issue from PR, we recommend use keyword fix: #issue_id or close: #issue_id or closes: #issue_id in your PR describe. I would not only connect issue to PR but also close issue automatically when PR is be closed.

Thank you for your guidance. This is the first time I mention PR here. I may not do well in some places. I will continue to improve in the future.

Hi @lyggyhmm , to target specific issue from PR, we recommend use keyword fix: #issue_id or close: #issue_id or closes: #issue_id in your PR describe. I would not only connect issue to PR but also close issue automatically when PR is be closed.

Hi @lyggyhmm , to target specific issue from PR, we recommend use keyword fix: #issue_id or close: #issue_id or closes: #issue_id in your PR describe. I would not only connect issue to PR but also close issue automatically when PR is be closed.

Thank you for your guidance. This is the first time I mention PR here. I may not do well in some places. I will continue to improve in the future.

Hi @lyggyhmm you could reopen this PR, and just edited PR describe, we would help you finish your work.
BTW, code look good to me, you just need to remove unnecessary dolphinscheduler-dao/src/main/resources/datasource.properties

Hi @lyggyhmm , to target specific issue from PR, we recommend use keyword fix: #issue_id or close: #issue_id or closes: #issue_id in your PR describe. I would not only connect issue to PR but also close issue automatically when PR is be closed.

Hi @lyggyhmm , to target specific issue from PR, we recommend use keyword fix: #issue_id or close: #issue_id or closes: #issue_id in your PR describe. I would not only connect issue to PR but also close issue automatically when PR is be closed.

Thank you for your guidance. This is the first time I mention PR here. I may not do well in some places. I will continue to improve in the future.

Hi @lyggyhmm you could reopen this PR, and just edited PR describe, we would help you finish your work. BTW, code look good to me, you just need to remove unnecessary dolphinscheduler-dao/src/main/resources/datasource.properties

Now, I modified the PR according to your prompts and re-edited the PR description. Please review

Codecov Report

Merging #6708 (da5e403) into dev (94352a4) will increase coverage by 0.01%.
The diff coverage is 100.00%.

@@             Coverage Diff              @@
##                dev    #6708      +/-   ##
============================================
+ Coverage     33.07%   33.08%   +0.01%
- Complexity     1619     1620       +1
============================================
  Files           433      433
  Lines         14292    14292
  Branches       1427     1427
============================================
+ Hits           4727     4729       +2
+ Misses         9116     9111       -5
- Partials        449      452       +3

Impacted Files
Coverage Δ

...pache/dolphinscheduler/spi/task/TaskConstants.java
0.00% <ø> (ø)

...g/apache/dolphinscheduler/spi/utils/Constants.java
0.00% <ø> (ø)

...api/datasource/mysql/MysqlDatasourceProcessor.java
62.85% <100.00%> (ø)

...er/master/dispatch/host/assign/RandomSelector.java
77.77% <0.00%> (-5.56%)
:arrow_down:

...e/dolphinscheduler/remote/NettyRemotingClient.java
53.52% <0.00%> (+1.40%)
:arrow_up:

...org/apache/dolphinscheduler/remote/utils/Host.java
40.00% <0.00%> (+2.22%)
:arrow_up:

Continue to review full report at Codecov.

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

@lyggyhmm Pr merged, thanks for your contribution, this is your first contribution, you can contact to @zhongjiajie or me by email, we will help you join developer discussion groups.

Hi @lyggyhmm , thanks for your contribution and welcome to join community 🎉 . If you want contribute but could not find issue, maybe you could start in #5689 or just search our issue list https://github.com/apache/dolphinscheduler/issues. Looking forward to your next contribution

@lyggyhmm Pr merged, thanks for your contribution, this is your first contribution, you can contact to @zhongjiajie or me by email, we will help you join developer discussion groups.

Thank you for your affirmation! In my spare time, I will continue to pay attention to the dynamics of the DS community and continue to contribute my own strength! I have been in the DS seed incubator group before, and would like to ask if I can join the contributor group now

Hi @lyggyhmm , thanks for your contribution and welcome to join community 🎉 . If you want contribute but could not find issue, maybe you could start in #5689 or just search our issue list https://github.com/apache/dolphinscheduler/issues. Looking forward to your next contribution

Thank you for your affirmation! It’s an honor to join the community, and I still need your advice in the future

Thank you for your affirmation! In my spare time, I will continue to pay attention to the dynamics of the DS community and continue to contribute my own strength! I have been in the DS seed incubator group before, and would like to ask if I can join the contributor group now

@lyggyhmm Will connect you in seed incubator wechat group


Add Instrumentation subsystem

Hi Community,
This series introduces the Instrumentation subsystem and its associated CLI tool zaru. It leverages the compiler function instrumentation flags to collect tracing and profiling information in Zephyr. For details about it, please see [0].
The Instrumentation subsystem has been tested under physical boards b_u585i_iot02a and nucleo_wba52cg and also under QEMU VM virtual machine mps2_an385. Please note that, since it relies on the retention subsystem, if another board different from the ones mentioned is used for testing this series the proper device-tree overlay for the board needs to be added to boards/ dir accordingly. Check examples in samples/subsys/instrumentation/boards/*.overlay.
Previous discussions on this series (RFC) can be found here;
https://github.com/zephyrproject-rtos/zephyr/pull/57371
[0] RFC: https://github.com/zephyrproject-rtos/zephyr/issues/57373
Thank you!
Cheers,
Gustavo

cc @carlocaione @teburd @nashif @nordicjm @microbuilder @carlescufi @erwango

Looks good, thanks for continuing this! Some comments on having a glance at it, haven't tried it but something I will give a try when I have some time

Thank you so much for another review round! @nordicjm @kartben
While I'm going through the comments, I'd like to point out that now it's super easy to experiment with it with a QEMU VM:
In one terminal, build and run the sample for the mps2_an358 board:
$ west -v build  -p -b mps2/an385 samples/subsys/instrumentation/ -DQEMU_SOCKET=y -t run

In another terminal, set the tracing/profiling section and collect data using zaru CLI:
$ ./scripts/zaru.py --serial='socket://localhost:4321' trace -v -c get_sem_and_exec_function
$ ./scripts/zaru.py --serial='socket://localhost:4321' reboot -v
$ ./scripts/zaru.py --serial='socket://localhost:4321' trace -v --perfetto --output /tmp/perfetto_zephyr.json

Then, for instance, open the traces in Perfetto, i.e. access Perfetto UI -> "Open trace file" and load  /tmp/perfetto_zephyr.json.
For profiling info, use zaru again:
$ ./scripts/zaru.py --serial='socket://localhost:4321' profile -n 10

HTH!

@gromero are you still interested in working on this PR? Thanks!

@gromero are you still interested in working on this PR? Thanks!

@kartben Hi Benjamin! YES, I am. Just being hard to find the cycles to address the last comments. I want to ask if it's ok to merge the code at first without support for multiple CPUs. That simplifies things a bit at the moment. If so, then it would remain the use of Zephyr ring buffer for simplification, so only one task would stay on my side :)

I want to ask if it's ok to merge the code at first without support for multiple CPUs.

Yes, I think that would be fine, but will let others chime in too. There are also other pending request for changes that would need to be addressed. Thanks!

@erwango Thanks for removing the Stale tag, I'm stilling looking at this to use Zephyr's ring buffer instead of using my own implementation of ring buffer. Hopefully I'll update soon. Cheers.

@gromero Hi, Gustavo! Thank you indeed for your efforts! And a couple of cents from me:

In pop_callee_timestamp(), consider to tweak the “for” loop with a decrementing index, because it obviously decreases its mean execution time.
Consider to maintain the stuff as a standalone OS-independent and even bare-metal project.
It will be viable and developing then. Look at the TinyUSB project as an example, and imagine its status if it would be a part of Zephyr project. OSAL layers for Zephyr and other RTOS's can be added by anyone, and the core functionality will not get stuck in PRs. And your great efforts would get more support from the community.


Update discord to 0.0.248

After making all changes to the cask:

[x] brew cask audit --download {{cask_file}} is error-free.
[x] brew cask style --fix {{cask_file}} left no offenses.
[x] The commit message includes the cask’s name and version.

Additionally, if updating a cask:

[ ] sha256 changed but version stayed the same (what is this?).
I’m providing public confirmation below.

Thank you for the contribution. It was merged directly as 889531f5c2229dc7bb365b5e51333bcfb02cf3ff. Your contribution is still credited to you.


SKE course requirements: languages and PE with Ebacc

The previous iteration focused on Maths courses only, and made the assumption that only a maths SKE course could be required. We think this holds true for maths, but for other courses it’s not quite so simple...
For language courses, providers can require 2 different SKE courses in 2 different languages.  In theory we could possibly infer which 2 languages from the language subjects attached to the course in Find, but in practice a fair number of courses on Find just have "Modern languages" as the subject, so we might need to ask...
Languages courses
There only seem to be SKE courses for 3 modern languages, plus "Ancient languages", assuming the course directory is up to date.

PE with Ebacc
For these courses, a SKE course can be required for the Ebacc subject - but only up to 8 weeks

Aside: you can't really infer it from the Publish course - many courses select multiple languages to indicate that trainees have a choice of one or more of those languages - not that all trainees will be doing all those languages.


fix typo in self subject access review

Description
Seems like a glitch when comparing to the other similiar resources:

Source: https://kubernetes.io/docs/reference/kubernetes-api/authorization-resources/

/hold
PR is modifying the auto generated page directly.
Refer https://github.com/kubernetes/website/pull/47969#pullrequestreview-2310117462


[sc-7737] implement new regional KB endpoints in Dashboard

Implement new regional endpoints in Dashboard

Update the SDK core for supporting regional endpoints related to knowledge boxes
Add accountId in Nuclia options and set it whenever the account is set
Set kb id and kb zone in Nuclia options whenever the KB is selected
Add zone in dashboard route

rename stash param into kb in dashboard and contributor route

Add missing translations for (un)publishing KB confirmation dialog title
Fix refresh KB list after updating KB

Clean up core

remove unused pipes from stf-pipes.module
replace DeprecatedApiService by SDKService in all services still using it
delete DeprecatedApiService
remove unused successResult method from tracking service (allowing to get rid of unused DeprecatedApiService injected dependency)

Move user management from core lib to sdk-core

account users management methods in db
KB users management method in kb
remove users.service.ts and users.model.ts from core lib

Moving back to draft as I realised the contributor app is broken when enabling regional endpoints (while it shouldn't be impacted). I'm investigating what's going on + I'll fix @operramon ’s comments


Polish translation on Gameplay mod options tab too long?

Noticed while testing keybinds PR, the last option on Gameplay tab looks like it might be too long in Polish translation?

Wait, there's more...

I have made GUI helper for building keybinds UI in #382 , and i suggest we make a similar module for building checkbox UI, which is able to wrap multiple lines and scroll. Won't take long.

Yeah, we have to merge #382 first, that problem with too long descriptions is quite old

@kvakvs  Yes, would be good to have a helper (I saw how clean your other helper made the code in #382 - great work!), however not sure about wordwrap (at least in options) as it's already getting crowded in there. Ideally we need translations to be kept as short as possible, ensuring they fit on single line.

IIRC this is fixed now? If so, anyone know what PR fixed it?

I think I changed translation but I'll check if we can set max width of the label so it could wrap text automatically when too long


⚠ Bofrost.fr has degraded performance

In e497ed7, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 1186 ms

Resolved: Bofrost.fr performance has improved in f7cad96.