keyboard UI: Add shift+C back for "compose private message".

I got the popup notifying me of this change (C to x for private messages) and found it annoying on several levels:

despite being a "deprecation notice", the key immediately stopped working
it's not clear from the wording that there are any plans for C to be used for something else
given above, I don't see why C has been disabled at all, instead of simply not advertising it in keyboard shortcuts

I additionally think that x is a strictly worse choice, as it usually means delete or close. That meaning / connection is now unavailable for future use in zulip.

@rishig let's chat about this.

@kamalmarhubi so, we sorta lost track of this over the last week; I'm curious whether at this point you still find yourself typing C instead of x?  I guess that connects with whether re-enabling it for people used to it is still useful.

Coming back to this a month later, I'm still hitting C on a fairly regular basis.

Thanks for the report @kamalmarhubi! Tim and I chatted about it; the conclusion is to have both C and x let you compose a private message.

@rishig
Currently c is a shortcut for "New stream message". Therefore I assume that mentioned conclusion is no longer up-to-date and no changes should be made.
I guess that this issue should be closed, but I am unable to do it myself.

This is for shift+c, not just c.

@timabbott
Thank you for clarification.
@zulipbot claim

@zulipbot : I am still working on it, I should be able to add pull request either today or tomorrow.

@zulipbot claim

@kamalmarhubi 	in the meantime, check out https://github.com/zulip/zulip-terminal which has config for custom keys.

This issue has unfortunately been open for an year, now. I wonder if we still want to restore the C shortcut? Or if most users have already had their muscle memory change.


[Datadog scaler] Failed to get the metrics for some specific datadog query

Report
I reported similar issue 3448 before, the root cause was null latest data point to cause the exception. Recently I finally have time to test the query again. This time, I make sure all data points have data and with the same number of data points within the period
Query 1: sum:trace.express.request.hits{service:foo,env:bar}.as_rate() , keda can get the metrics of this query without any problem
# curl result of query 1
{
  "status": "ok",
  "resp_version": 1,
  "series": [
    {
      "end":<PHONE_NUMBER>000,
      "attributes": {},
      "metric": "trace.express.request.hits",
      "interval": 10,
      "tag_set": [],
      "start":<PHONE_NUMBER>000,
      "length": 6,
      "query_index": 0,
      "aggr": "sum",
      "scope": "env:bar,service:foo",
      "pointlist": [
        [
<PHONE_NUMBER>000,
          417.3
        ],
        [
<PHONE_NUMBER>000,
          465.4
        ],
        [
<PHONE_NUMBER>000,
          447.1
        ],
        [
<PHONE_NUMBER>000,
          440.9
        ],
        [
<PHONE_NUMBER>000,
          440.8
        ],
        [
<PHONE_NUMBER>000,
<PHONE_NUMBER>000001
        ]
      ],
      "expression": "sum:trace.express.request.hits{env:bar,service:foo}.as_rate()",
      "unit": [
        {
          "family": "cache",
          "scale_factor": 1,
          "name": "hit",
          "short_name": null,
          "plural": "hits",
          "id": 39
        },
        {
          "family": "time",
          "scale_factor": 1,
          "name": "second",
          "short_name": "s",
          "plural": "seconds",
          "id": 11
        }
      ],
      "display_name": "trace.express.request.hits"
    }
  ],
  "to_date":<PHONE_NUMBER>000,
  "query": "sum:trace.express.request.hits{service:foo,env:bar}.as_rate()",
  "message": "",
  "res_type": "time_series",
  "times": [],
  "from_date":<PHONE_NUMBER>000,
  "group_by": [],
  "values": []
}

Query 2: avg:kubernetes.cpu.requests{service:foo,env:bar}.rollup(10) , keda can get the metrics of this query without any problem```
# curl result of query 2
{
  "status": "ok",
  "resp_version": 1,
  "series": [
    {
      "end":<PHONE_NUMBER>000,
      "attributes": {},
      "metric": "kubernetes.cpu.requests",
      "interval": 10,
      "tag_set": [],
      "start":<PHONE_NUMBER>000,
      "length": 6,
      "query_index": 0,
      "aggr": "avg",
      "scope": "env:bar,service:foo",
      "pointlist": [
        [
<PHONE_NUMBER>000,
          0.11999999731779099
        ],
        [
<PHONE_NUMBER>000,
          0.11999999731779099
        ],
        [
<PHONE_NUMBER>000,
          0.11999999731779099
        ],
        [
<PHONE_NUMBER>000,
          0.11999999731779099
        ],
        [
<PHONE_NUMBER>000,
          0.11999999731779099
        ],
        [
<PHONE_NUMBER>000,
          0.11999999731779099
        ]
      ],
      "expression": "avg:kubernetes.cpu.requests{env:bar,service:foo}.rollup(10)",
      "unit": [
        {
          "family": "cpu",
          "scale_factor": 1,
          "name": "core",
          "short_name": null,
          "plural": "cores",
          "id": 31
        },
        null
      ],
      "display_name": "kubernetes.cpu.requests"
    }
  ],
  "to_date":<PHONE_NUMBER>000,
  "query": "avg:kubernetes.cpu.requests{service:foo,env:bar}.rollup(10)",
  "message": "",
  "res_type": "time_series",
  "times": [],
  "from_date":<PHONE_NUMBER>000,
  "group_by": [],
  "values": []
}

If I combine above two queries into "query 1 / query 2"
Query 3: sum:trace.express.request.hits{service:foo,env:bar}.as_rate()/avg:kubernetes.cpu.requests{service:foo,env:bar}.rollup(10)
The curl result looks ok but KEDA is failed to get the metrics
# curl result if query 3
{
  "status": "ok",
  "resp_version": 1,
  "series": [
    {
      "end":<PHONE_NUMBER>000,
      "attributes": {},
      "metric": "(trace.express.request.hits / kubernetes.cpu.requests)",
      "interval": 10,
      "tag_set": [],
      "start":<PHONE_NUMBER>000,
      "length": 6,
      "query_index": 0,
      "aggr": "sum",
      "scope": "env:bar,service:foo",
      "pointlist": [
        [
<PHONE_NUMBER>000,
          3477.500077728184
        ],
        [
<PHONE_NUMBER>000,
          3878.3334200208405
        ],
        [
<PHONE_NUMBER>000,
          3725.8334166122
        ],
        [
<PHONE_NUMBER>000,
          3674.166748790693
        ],
        [
<PHONE_NUMBER>000,
          3673.3334154387335
        ],
        [
<PHONE_NUMBER>000,
          6237.500139418993
        ]
      ],
      "expression": "(sum:trace.express.request.hits{env:bar,service:foo}.as_rate() / avg:kubernetes.cpu.requests{env:bar,service:foo}.rollup(10))",
      "unit": null,
      "display_name": "(trace.express.request.hits / kubernetes.cpu.requests)"
    }
  ],
  "to_date":<PHONE_NUMBER>000,
  "query": "sum:trace.express.request.hits{service:foo,env:bar}.as_rate()/avg:kubernetes.cpu.requests{service:foo,env:bar}.rollup(10)",
  "message": "",
  "res_type": "time_series",
  "times": [],
  "from_date":<PHONE_NUMBER>000,
  "group_by": [],
  "values": []
}

HPA events
  Warning  FailedGetExternalMetric       31m (x8 over 23h)  horizontal-pod-autoscaler  unable to get external metric development/s0-datadog-sum-trace-express-request-hits/&LabelSelector{MatchLabels:map[string]string{scaledobject.keda.sh/name: foo,},MatchExpressions:[]LabelSelectorRequirement{},}: unable to fetch metrics from external metrics API: no matching metrics found for s0-datadog-sum-trace-express-request-hits
  Warning  FailedComputeMetricsReplicas  31m (x8 over 23h)  horizontal-pod-autoscaler  invalid metrics (1 invalid out of 1), first error is: failed to get s0-datadog-sum-trace-express-request-hits external metric: unable to get external metric development/s0-datadog-sum-trace-express-request-hits/&LabelSelector{MatchLabels:map[string]string{scaledobject.keda.sh/name: foo,},MatchExpressions:[]LabelSelectorRequirement{},}: unable to fetch metrics from external metrics API: no matching metrics found for s0-datadog-sum-trace-express-request-hits

If I remove as_rate() from Query 3
Query 4: sum:trace.express.request.hits{service:foo,env:bar}/avg:kubernetes.cpu.requests{service:foo,env:bar}.rollup(10)
KEDA can get the metrics without any problem
# curl result of query 4

  "status": "ok",
  "resp_version": 1,
  "series": [
    {
      "end":<PHONE_NUMBER>000,
      "attributes": {},
      "metric": "(trace.express.request.hits / kubernetes.cpu.requests)",
      "interval": 1,
      "tag_set": [],
      "start":<PHONE_NUMBER>000,
      "length": 6,
      "query_index": 0,
      "aggr": "sum",
      "scope": "service:foo,env:bar",
      "pointlist": [
        [
<PHONE_NUMBER>000,
          64426.34634984409
        ],
        [
<PHONE_NUMBER>000,
          66898.41915361531
        ],
        [
<PHONE_NUMBER>000,
          65685.75394920415
        ],
        [
<PHONE_NUMBER>000,
          66132.75977946246
        ],
        [
<PHONE_NUMBER>000,
          66287.59952733
        ],
        [
<PHONE_NUMBER>000,
          66472.42117646785
        ]
      ],
      "expression": "(sum:trace.express.request.hits{service:foo,env:bar} / avg:kubernetes.cpu.requests{service:foo,env:bar}.rollup(10))",
      "unit": null,
      "display_name": "(trace.express.request.hits / kubernetes.cpu.requests)"
    }
  ],
  "to_date":<PHONE_NUMBER>000,
  "query": "sum:trace.express.request.hits{service:foo,env:bar}/avg:kubernetes.cpu.requests{service:foo,env:bar}.rollup(10)",
  "message": "",
  "res_type": "time_series",
  "times": [],
  "from_date":<PHONE_NUMBER>000,
  "group_by": [],
  "values": []
}

Expected Behavior
KEDA can get the metrics without any problem as long as it is working with curl for same query
Actual Behavior
Explained above
Steps to Reproduce the Problem
Explained above
Logs from KEDA operator
E1123 09:05:17.876484       1 datadog_scaler.go:318] keda_metrics_adapter/datadog_scaler "msg"="error getting metrics from Datadog" "error"="error when retrieving Datadog metrics: Get \"https://api.datadoghq.com/api/v1/query?from=1669194254&query=sum%3Atrace.express.request.hits%7Bservice%3Afoo%2Cenv%3Abar%7D.as_rate%28%29%2Favg%3Akubernetes.cpu.requests%7Bservice%3Afoo%2Cenv%3Abar%7D.rollup%2810%29&to=1669194314\": context deadline exceeded (Client.Timeout exceeded while awaiting headers)" "name"="foo" "namespace"="bar" "type"="ScaledObject"

KEDA Version
2.8.1
Kubernetes Version
< 1.23
Platform
Amazon Web Services
Scaler Details
Datadog
Anything else?
No response

Hi @dogzzdogzz ,
I have tried your JSONs injecting them into the datadog SDK and I can't reproduce the issue, queries 3 and 4 work without any problem. Are you sure that there isn't any strange situation like +Inf or -Inf, or IDK, but using

BTW, I closed the issue by error, and I have reopened it

@JorTurFer Hmm...It's strange that you can not reproduce, It's happening on all of my clusters, to clarify the reproducible issue, just wanna double check if you do have metric trace.express.request.hits on your datadog and it does has some data ingested from the datadog agent ?
And could you kindly help to check if anything wrong in my scaledobject manifests to cause this issue ?
apiVersion: keda.sh/v1alpha1
kind: ScaledObject
metadata:
  labels:
    scaledobject.keda.sh/name: query-1
  annotations:
    meta.helm.sh/release-name: foo
    meta.helm.sh/release-namespace: bar
  labels:
    app: foo
    app.kubernetes.io/managed-by: Helm
    helm.toolkit.fluxcd.io/name: foo
    helm.toolkit.fluxcd.io/namespace: bar
    scaledobject.keda.sh/name: foo
  name: query-1
  namespace: bar
spec:
  maxReplicaCount: 1
  minReplicaCount: 1
  scaleTargetRef:
    name: foo
  triggers:
  - authenticationRef:
      kind: ClusterTriggerAuthentication
      name: keda-trigger-auth-datadog-secret
    metadata:
      age: "60"
      metricUnavailableValue: "0"
      query: 'sum:trace.express.request.hits{service:foo,env:bar}.as_rate()'
      queryValue: "250"
    metricType: AverageValue
    type: datadog
---
apiVersion: keda.sh/v1alpha1
kind: ScaledObject
metadata:
  labels:
    scaledobject.keda.sh/name: query-2
  name: query-2
  namespace: bar
spec:
  maxReplicaCount: 1
  minReplicaCount: 1
  scaleTargetRef:
    name: foo
  triggers:
  - authenticationRef:
      kind: ClusterTriggerAuthentication
      name: keda-trigger-auth-datadog-secret
    metadata:
      age: "60"
      metricUnavailableValue: "0"
      query: 'avg:kubernetes.cpu.requests{service:foo,env:bar}.rollup(10)'
      queryValue: "250"
    metricType: AverageValue
    type: datadog
---
apiVersion: keda.sh/v1alpha1
kind: ScaledObject
metadata:
  labels:
    scaledobject.keda.sh/name: query-3
  name: query-3
  namespace: bar
spec:
  maxReplicaCount: 1
  minReplicaCount: 1
  scaleTargetRef:
    name: foo
  triggers:
  - authenticationRef:
      kind: ClusterTriggerAuthentication
      name: keda-trigger-auth-datadog-secret
    metadata:
      age: "60"
      metricUnavailableValue: "0"
      query: 'sum:trace.express.request.hits{service:foo,env:bar}.as_rate()/avg:kubernetes.cpu.requests{service:foo,env:bar}.rollup(10)'
      queryValue: "250"
    metricType: AverageValue
    type: datadog
---
apiVersion: keda.sh/v1alpha1
kind: ScaledObject
metadata:
  labels:
    scaledobject.keda.sh/name: query-4
  name: query-4
  namespace: bar
spec:
  maxReplicaCount: 1
  minReplicaCount: 1
  scaleTargetRef:
    name: foo
  triggers:
  - authenticationRef:
      kind: ClusterTriggerAuthentication
      name: keda-trigger-auth-datadog-secret
    metadata:
      age: "60"
      metricUnavailableValue: "0"
      query: 'sum:trace.express.request.hits{service:foo,env:bar}/avg:kubernetes.cpu.requests{service:foo,env:bar}.rollup(10)'
      queryValue: "250"
    metricType: AverageValue
    type: datadog

Below is the HPA status of above manifests, you can see that query-1/2/4 can get the data without problem, but the metric of query-3 is always 0 because of metricUnavailableValue config
# kubectl get hpa keda-hpa-query-1 keda-hpa-query-2 keda-hpa-query-3 keda-hpa-query-4
NAME               REFERENCE                TARGETS               MINPODS   MAXPODS   REPLICAS   AGE
keda-hpa-query-1   Deployment/foo   193500m/250 (avg)     1         1         1          7m3s
keda-hpa-query-2   Deployment/foo   119m/250 (avg)        1         1         1          7m2s
keda-hpa-query-3   Deployment/foo   0/250 (avg)           1         1         1          7m2s
keda-hpa-query-4   Deployment/foo   62975001m/250 (avg)   1         1         1          7m1s

No no, I tried just modifying the client to return the json you sent. I haven't tried with datadog directly because I don't have anything working with datadog. If you could share all the manifest to spin up an scenario to reproduce your issue, I can use our datadog account to try it. (Sorry, I have 0 expertise with datadog and IDK how to generate the same scenario)
I can install datadog agent on my cluster, and then what do I need to deploy for generating those metrics?

Below is the HPA status of above manifests, you can see that query-1/2/4 can get the data without problem, but the metric of query-3 is always 0 because of metricUnavailableValue config

I remember that the original issue was a panic recovering metrics, not just a fallback to 0. Is this time the same issue? I mean, a fallback to 0 could mean for example that the time window is too small to recover metrics. It's not the same that behavior that a panic in the scaler

No no, I tried just modifying the client to return the json you sent. I haven't tried with datadog directly because I don't have anything working with datadog. If you could share all the manifest to spin up an scenario to reproduce your issue, I can use our datadog account to try it. (Sorry, I have 0 expertise with datadog and IDK how to generate the same scenario)
I can install datadog agent on my cluster, and then what do I need to deploy for generating those metrics?

Oh ok, trace.express.request.hits requires to install a dd-trace APM library to some service because it's http request count metrics, I think it might be too trouble to you. Let me check if I can reproduce with any other more common and existing metrics on datadog

I remember that the original issue was a panic recovering metrics, not just a fallback to 0. Is this time the same issue? I mean, a fallback to 0 could mean for example that the time window is too small to recover metrics. It's not the same that behavior that a panic in the scaler

I think it's not the same as issue 3448 because I already used rollup(10) to avoid the null data point

@JorTurFer I updated my curl script and make sure the time of TO is the current time, finally found out that the last one or last two data points in response are always null, I'll create a PR to fix this issue.
TO=$(($(date +%s))) && \
FROM=$(($END - 60)) && \
curl -X GET "https://api.datadoghq.com/api/v1/query?from=$FROM&to=$TO&query=sum:trace.express.request.hits\{service:foo,env:bar\}.as_rate()/avg:kubernetes.cpu.requests\{service:foo,env:bar\}.rollup(10)"

Response
{
  "status": "ok",
  "resp_version": 1,
  "series": [
    {
      "end":<PHONE_NUMBER>000,
      "attributes": {},
      "metric": "(trace.express.request.hits / kubernetes.cpu.requests)",
      "interval": 10,
      "tag_set": [],
      "start":<PHONE_NUMBER>000,
      "length": 5,
      "query_index": 0,
      "aggr": "sum",
      "scope": "env:bar,service:foo",
      "pointlist": [
        [
<PHONE_NUMBER>000,
          2276.6667175541334
        ],
        [
<PHONE_NUMBER>000,
          2467.5000551529242
        ],
        [
<PHONE_NUMBER>000,
          2144.1667145925276
        ],
        [
<PHONE_NUMBER>000,
          null
        ],
        [
<PHONE_NUMBER>000,
          null
        ]
      ],
      "expression": "(sum:trace.express.request.hits{env:bar,service:foo}.as_rate() / avg:kubernetes.cpu.requests{env:bar,service:foo}.rollup(10))",
      "unit": null,
      "display_name": "(trace.express.request.hits / kubernetes.cpu.requests)"
    }
  ],
  "to_date":<PHONE_NUMBER>000,
  "query": "sum:trace.express.request.hits{service:foo,env:bar}.as_rate()/avg:kubernetes.cpu.requests{service:foo,env:bar}.rollup(10)",
  "message": "",
  "res_type": "time_series",
  "times": [],
  "from_date":<PHONE_NUMBER>000,
  "group_by": [],
  "values": []
}

Found more issues with Datadog API response, please check this comment for the details
https://github.com/kedacore/keda/pull/3954#discussion_r1042820206


Vue Becomes Really slow on large data even I am using pagination

Hello Guys I am building a social media website you can imagine it as Facebook currently supported feature on the website are basic things like (posting , commenting , replying etc ...)
I use Ajax to load most of my contents on the website surely the data is paginated Oh btw I use Laravel as Back-end now lets say I have a post that have 1000 comments in the database I am paginating comments 25 each time now the first 25 comments load fast like there is no problem when I click view more comments another 25 comments is loaded but a bit slower the third becomes even slower and so on lets say now 500 comments were loaded out of 1000 the rendering becomes really slow and any action that manipulate the DOM takes ages
Is this a vue limitation or I am missing something here ?
Please help thanks in advance

I guess you need something like this.


Static content - welcome page

Hello,
I followed this ticket:
https://github.com/wildfly-swarm/wildfly-swarm/issues/49
It seems that the welcome file ( aka index.html or other ) is still not working on the deployed JAR file, however it works with the wildfly-swarm maven plugin.
I always have a 403 Forbidden error when I got to the ROOT context of the app.
http://myapp.com/ -> 403 Forbidden
http://myapp.com/index.html -> OK !
I followed this example:
https://github.com/wildfly-swarm/wildfly-swarm-examples/tree/master/static ( JAR deploy )
Thank you for your support !

One slight quirk with the static example is that https://github.com/wildfly-swarm/wildfly-swarm-examples/blob/master/static/src/main/java/org/wildfly/swarm/examples/staticcontent/Main.java#L15 tells Undertow to make the deployment available at /static and not /.
When running the static example you should see:
http://myapp.com/ -> 404 Not Found
http://myapp.com/static/ -> OK
http://myapp.com/static/index.html -> OK
The static-war example would give the following:
http://myapp.com/ -> OK
http://myapp.com/index.html -> OK
I've just verified the above with the latest HEAD of WildFly Swarm and examples.
Are there any exceptions in the log on startup or when accessing the example?
Ken

Nope I have no exceptions...
and http://myapp.com/ gives me 403 Forbidden, I tested with packaging JAR on the pom file.
But normally we should be able to get http://myapp.com/  working, this is just a ROOT context "/".
On a standard JBOSS config we put the context to "/".
Anyway its not really a problem as we can use a proxy server to serve URL like /static...

You can easily change the code in the Main class to set the context to be / instead of /static.
Which O/S are you testing on?

Ubuntu linux.

That's weird.
I'm on the same and don't have any issues with those two examples

This is really strange then... And it works well with the wildfly swarm maven plugin, but not with the deployed jar ( *.-swarm.jar ).

@guedouarj Do you use latest HEAD of WildFly Swarm ?

Yes the 1.0.0.Alpha3

Oh, I can reproduce it at 1.0.0.Alpha3 in the following steps.
Though I don't know why the reason, the issue is fixed at HEAD at least. Please give it a try.
$ git clone https://github.com/wildfly-swarm/wildfly-swarm-examples && cd wildfly-swarm-examples
$ sed -i "s/Alpha4-SNAPSHOT/Alpha3/" pom.xml
$ cd static-war
$ mvn clean package && java -jar target/wildfly-swarm-example-static-war-swarm.jar

$ curl localhost:8080 -I
HTTP/1.1 403 Forbidden
...

$ curl localhost:8080/ -I
HTTP/1.1 403 Forbidden
...

$ curl localhost:8080/index.html -I
HTTP/1.1 404 Not Found <- Ugh, weird...
...

Ah, I'd misunderstood. @guedouarj use static example, not static-war.
static example is OK at Alpha3 in my environment...
$ cat wildfly-swarm-examples/pom.xml | grep "<version.wildfly-swarm>"
    <version.wildfly-swarm>1.0.0.Alpha3</version.wildfly-swarm>
$ cd static
$ mvn clean package && java -jar target/wildfly-swarm-example-static-swarm.jar

$ curl localhost:8080/static/

      <title>Howdy!</title>

Static content!


[certified] QTDCM - to remove

The PACS system is not used, and it would be complicated to certificate it. The idea was to remove it.
NB: we are going to remove it in the certified version.

NB: we are going to remove it in the certified version.

We should avoid taking decisions we haven't agreed upon, or that go against the projet director's wishes :).
As @msermesant mentioned, there is no specific need to actually remove the files, and he prefers we minimise differences between MUSIC and medInria.

For the actual discussion (about deleting the files VS simply not compiling them), it was in this PR
https://github.com/Inria-Asclepios/medInria-public/pull/73


CIFAR10/100 utility

Hey, @DingfanChen .
I wonder whether you test on other more complex datasets like CIFAR10?
Does the test accuracy decrease a lot?

The code (vanilla setting without GAN-prior) should allow setting CIFAR10/CIFAR100 as the dataset, while the results on CIFAR10 can be found in the appendix of the paper. Please note that we did not tune the hyperparameters for these datasets and cannot guarantee optimality. Additionally, we have not tested the case when including the GAN-prior. If you want to test it, you will need to adjust the output dimension (img_h, img_w, img_c) and output activation (outact) of the GeneratorDCGAN object. For outact, we suggest trying tahn activation first and ensuring that it fits the data pre-processing step.


Building prebuilt binary wheels for multiple platforms & multiple Python versions

The major change of this PR is the improved Github Actions workflow to build binaries for multiple platforms, powered by cibuildwheel. Currently, it can build wheels on Python 3.6~3.10 for:

windows amd64/win32
manylinux i686/x86_64
macosx x86_64
musllinux i686/x86_64

PyPy is obviously incompatible, other platforms supported by cibuildwheel(CIBW_BUILD, CIBW_SKIP - Options - cibuildwheel) is yet to be tested.
Also I added some (opinionated) quality-of-life improvements.

Add SQLite source code downloader. An option SQLITE_VERSION in setup.py controls which sqlite version to compile against. This make the build progress more deterministic.
Add .gitignore
PEP 517 compliance. Necessary for building the project with other tools, e.g. cibuildwheels, build or tox.

Add pyproject.toml
Rename build_ext to build_dynamic, and renamed build_static to build_ext. So the binary package will be statically compiled.

Use setuptools_scm for version handling, based on git tags.

Sorry, definitely not interested.

for those who may interest, the automated build script is at https://github.com/pysqlite3/pysqlite3
the wheels for Windows/macOS/Linux are available at

PyPI: pysqlite-binary · PyPI install through pip install pysqlite-binary
and github releases: https://github.com/pysqlite3/pysqlite3/releases/latest


Parallel Execution: Collect node returns list[list[pd.DataFrame]] instead of list[pd.DataFrame]

The following toy example returns a list[list[pd.DataFrame]] instead of list[pd.DataFrame].

from hamilton.htypes import Parallelizable, Collect
import random
import pandas as pd

def df_generator() -> Parallelizable[pd.DataFrame]:
    for i in range(10):
        yield pd.DataFrame(
            {"a": random.randint(0, 100), "b": [random.random() for i in range(100)]}
        )

def collect_df(df_generator: Collect[pd.DataFrame]) -> list[pd.DataFrame]:
    return df_generator

if __name__ == "__main__":
    import __main__ as test
    from hamilton import driver

    dr = (
        driver.Builder()
        .with_modules(test)
        .enable_dynamic_execution(allow_experimental_mode=True)
        .build()
    )

    final_vars = ["collect_df"]
    r = dr.execute(final_vars=final_vars)

Hamilton Version: 1.70.0

@legout thanks for catching this. This is an unusual situation, since using "Parallelizable" doesn't make sense here, as nothing is actually being Parallelized. That is, we should expect a node in between them.
e.g. you'd instead do something like this:
def df_generator() -> list[pd.DataFrame]:
    dfs = []
    for i in range(10):
        dfs.append(pd.DataFrame(
            {"a": random.randint(0, 100), "b": [random.random() for i in range(100)]}
        ))

def all_dfs(df_generator: list[pd.DataFrame]) -> pd.DataFrame:
    return pd.concat([df_generator])

Do you have more context here? Since I think we should probably error out in this situation -- thoughts?

It's on our TODO to document / provide better handling as seen in https://github.com/DAGWorks-Inc/hamilton/issues/301

@legout thanks for catching this. This is an unusual situation, since using "Parallelizable" doesn't make sense here, as nothing is actually being Parallelized. That is, we should expect a node in between them.
Instead of Parallelizable, you'd instead do something like this:
def df_generator() -> list[pd.DataFrame]:
    dfs = []
    for i in range(10):
        dfs.append(pd.DataFrame(
            {"a": random.randint(0, 100), "b": [random.random() for i in range(100)]}
        ))
    return dfs

def all_dfs(df_generator: list[pd.DataFrame]) -> pd.DataFrame:
    return pd.concat([df_generator])

Do you have more context here? Since I think we should probably error out in this situation -- thoughts?

@skrawcz
Thanks for your fast response. For sure, this might be an unusual situation. But I wonder, if your alternative is really the same, when using a remote executor like MultiThreadingExecutor?

But I wonder, if your alternative is really the same, when using a remote executor like MultiThreadingExecutor?

So the way Parallelizable + Collect currently works is that only the code between them, is submitted to an executor. So in this example above, everything would be done serially - nothing would be submitted to be run in parallel.
To run that generation in parallel you'd instead want to do:

from hamilton.htypes import Parallelizable, Collect
import random
import pandas as pd

def index() -> Parallelizable[int]:
    for i in range(10):
        yield i

def df_generator(index: int) -> pd.DataFrame:
     return pd.DataFrame(
            {"a": random.randint(0, 100), "b": [random.random() for i in range(100)]}
     )

def collect_df(df_generator: Collect[pd.DataFrame]) -> list[pd.DataFrame]:
    return df_generator

if __name__ == "__main__":
    import __main__ as test
    from hamilton import driver

    dr = (
        driver.Builder()
        .with_modules(test)
        .enable_dynamic_execution(allow_experimental_mode=True)
        .build()
    )

    final_vars = ["collect_df"]
    r = dr.execute(final_vars=final_vars)

Now - the usual caveats apply with doing anything in parallel in python. E.g. with multithreading CPU bound operations will likely mean things aren't done in parallel, but switching to multi-processing would work in parallel but you'd incur serialization/deserialization costs... So it only really makes sense to do if the time it takes to compute is long, which then makes parallelization worthwhile. Does that help?

Ok got it. Thanks for the detailed explanation!

closing since I think we've explained the expected behavior.


[BUG] work flow state set error when master server down.

*For better global communication, please give priority to using English description, thx! *
Describe the bug
master would change the work flow state wrong on the  situation:

start a work flow, and tasks state are submit success.
master M_A cannot connect to zookeeper
the other masters(M_B) make the failover of the lost master M_A
master M_A would change the work flow state from running to success.

error logs:

Which version of Dolphin Scheduler:
-[1.2.0]

Close since the issue has been resolved in 1.3.x


Incompatible with FF 32

install.rdf says it is compatible only up to version 29.0a1. At least on Android this prevents Firefox to install this extension.
I really don't understand this FF approach of pro-actively blocking addons from newer versions, so I suggest to put some really high number in the em:MaxVersion field.

I am sorry for the delay. Should be fixed now  :)


add list of gaming services

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/aws-professional/services.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

Looks good, thanks. Can you also take out the existing entries for GameLift and Lumberyard under "Game development (cloud-based tools)" in Developer Tools?


sourcegen ->  compile -> sourcegen cyclic dependency

We've hit an issue where sourcegen get stuck in a loop.
We have a protocol module, with java sources a resources.
The module is laid out like that:
> tree protocol/
protocol/
└── src
    ├── main
    │   └── java
    │       └── some
    │           └── package
    │               └── SomeTrait.java
    └── resources
        └── META-INF
            ├── services
            │   └── software.amazon.smithy.model.traits.TraitService
            └── smithy
                ├── manifest
                └── something.smithy

I want to generate code from this module using smithy4s. As such, I have a build module with a BleepCodegenScript class in it.
build
└── src
    └── scala
        └── build
            ├── Smithy4sCodegen.scala // call to smithy4s
            └── Smithy4sSourceGen.scala // BleepCodegenScript

I have a third module, called core which has sourcegen on it: sourcegen: build/build.Smithy4sSourceGen
To invoke the codegen I need to package the protocol module as a jar and feed that to the codegen cli. At first it failed because the jar did not contain the classes for some.package.SomeTrait. This happens because Smithy will look at all the jars, load the smithy resources and use java service loader for some things. In this case, my jar contains a service definition under src/resources/META-INF/services/software.amazon.smithy.model.traits.TraitService so Smithy tries to load it, but the class is not in the jar.
The fix is to add a Compile(...).run() call in the BleepCodegenScript. It worked, now the jar contains the classes and the resources. Smithy4s codegen works and write all the files, but when invoked via bleep sourcegen,  it gets stuck in a loop.
My understanding is that the Compile calls DoSourceGen, so we're stuck in a loop.
I'm able to work around the issue by having a custom Compile bleep command, like that:

// trick to trigger compilation w/o Sourcegen on a specific project
private final case class CustomCompile(
    project: model.CrossProjectName
) extends BleepCommandRemote(watch = false) {

  private val projects = Array(project)

  override def watchableProjects(started: Started): TransitiveProjects =
    TransitiveProjects(started.build, projects)

  override def runWithServer(
      started: Started,
      bloop: BuildServer
  ): Either[BleepException, Unit] = {
    val targets =
      BleepCommandRemote.buildTargets(started.buildPaths, projects)

    val result =
      bloop.buildTargetCompile(new bsp4j.CompileParams(targets)).get()

    result.getStatusCode match {
      case bsp4j.StatusCode.OK =>
        Right(started.logger.info("Compilation succeeded"))
      case other =>
        Left(
          new BspCommandFailed(
            s"compile",
            projects,
            BspCommandFailed.StatusCode(other)
          )
        )
    }
  }
}

In this custom command, I rewrote runWithServer w/o the DoSourceGen bits and it does the trick. Now my sourcegen script calls this command instead of compile and it works fine.
Do you think my workaround is sufficient and we should leave the Compile implementation as is, or if having a way to avoid DoSourceGen when calling Compile would make sense?
Thanks again for bleep, it's great.

Congrats on making it to the most complicated little corner of bleep 🥳
Scanned it on mobile now, so let's see if I got it correctly:
You can make build depend on protocol, that means the codegen will be invalidated if anything in protocol changes. And you should have class files and resources from protocol available in a classpath

I'm sorry for wasting your time. I wrote this long *ss post without going into all the details which left you trying to find a solution for me.
In the end I solved my issue in another way, and I think it is cleaner than the original, I could drop the custom compile command implementation while at it!


[Release Radar Request] PHPStan

Open Source Project name
PHPStan
What is your project?
PHPStan is a static analyser for PHP codebases and acts as a compiler for the interpreted language in the sense that it finds bugs without running the code and without writing tests.
Version
1.0
Date
November 1, 2021
Description of changes
First major version of a popular PHP static analyser. It brings a brand-new rule level 9 that behaves stricter about checking the mixed type, and contains dozens of other improvements accumulated over the past 1½ years. PHPStan 1.0 also comes with a backward compatibility promise aimed towards end users and extension developers.
Here's the accompanying blog article about the release and here are the comprehensive release notes on GitHub.
GitHub Repo
https://github.com/phpstan/phpstan
Website
https://phpstan.org/
Link to changelog
https://github.com/phpstan/phpstan/releases/tag/1.0.0
Social media
https://twitter.com/OndrejMirtes/status/1455070385049948165
Anything else to add?
I love how GitHub enables this project's existence, from both providing the infrastructure, and the funding through GitHub Sponsors which enables me to work on PHPStan full-time! Thank you.

This was included in our November Release Radar 🎉 congrats


:bug: Fix: remove committed types from vm

Description
Not sure how this got committed its in git ignore
Testing
Explain the quality checks that have been done on the code changes
Additional Information

[ ] I read the contributing docs (if this is your first contribution)

Your ENS/address:

Current dependencies on/for this PR:

main

PR #665   👈

This stack of pull requests is managed by Graphite.


Fixed typos (strings #511 & 512)

fixed semantic & syntax issues (proposals)

Hi, thanks for the report. Our translations are handled through Transifex, so you should sign up for an account there to fix issues with the translations.  The contents of the es.yaml file will be replaced by whatever is in Transifex the next time we make a release of this library.


Issue with yii2 mongodb not equal operator

This is my mongodb condition in yii2
['_id' => [ '$ne' => $this->_id ], $attribute => $this->{$attribute} ]
I don't give the desire result. When i dig deep into the library code. I identified that it is not converting $this->_id parameter that i am providing above into the MongoId. The code responsible to do this is function buildHashCondition($condition) under mongodb collection class. So, either my query condition is wrong or there is some issue with the mongodb collection class function.
Any body can help me on this.

use forum and read about yii\db\Expression

Got that working by myself. I changed my condition
Before:
['_id' => [ '$ne' => $this->_id ], $attribute => $this->{$attribute} ]
After
['_id' => [ '$ne' =>  new \MongoId($this->_id) ], $attribute => $this->{$attribute} ]
Hope this will help others.

Relates:
https://github.com/yiisoft/yii2-mongodb/pull/14

Added support for 'NOT' condition 6156f4f


Sorry i'm dumb but please help me.

How to use this.
I have zero knowledge in python if you round it down.
I tried googling for this but i still can't find the answer. But i think i installed everything.
Please, if someone will answer me, dumb it down as much as possible.

You need to use the command "python setup install". You could also just double click on "setup.py" in file explorer.

You need to use the command "python setup.py install". You could also just double click on "setup.py" in file explorer.

if i double click the setup.py, it just open my pycharm.
also this is what happened after i run the py through cmd in the folder

I think it installed correctly.

so anyone know what's wrong?

I am not sure but I think you switched some things here, but installing it won't download anything. You need to execute some command like: googleimagesdownload --keywords "universe" --usage_rights labeled-for-reuse . However the repo is currently broken, sadly, see #325

Hi,
I am a Computer Science student from Coventry University. I am interested to contribute to this open source project. My area of contribution will be adding an option to open the search image in the web browser, adding a GUI to choose the file directory to save images and adding an image viewer GUI.


Failure to install test host app on simulator

I'm using the Xcode 5 GM and xctool as of facebook/xctool@e61f436. Running:
xctool -workspace App.xcworkspace -scheme App -sdk iphonesimulator test

…I get the following output (after what looks to be a successful build):
  [Info] Collecting info for testables... (3910 ms)
  run-test AppTests.octest (iphonesimulator7.0, application-test, GC OFF)
    [Warning] Tried to install the test host app 'com.example.app' but failed; will retry 2 more times. (30036 ms)
    [Warning] Tried to install the test host app 'com.example.app' but failed; will retry 1 more time. (30012 ms)
    [Warning] Tried to install the test host app 'com.example.app' but failed; will retry 0 more times. (30015 ms)
  failed: Failed to install the test host app 'com.example.app'.
** TEST FAILED: 0 of 0 tests passed ** (98383 ms)

Any tips on getting more information that would help solving this problem?

This is quite old, but I wander - should we add something to README? I've spend like hour before realized that tmux was a reason


What is plugins.cri.registry.mirrors means?

If I config like as follows:
...
    [plugins.cri.registry]
      [plugins.cri.registry.mirrors]
        [plugins.cri.registry.mirrors."gcr.io"]
          endpoint = ["https://gcr.azk8s.cn"]
...

And I run the command:
ctr pull gcr.io/xxx:yyy

Does it means that pull the image replace with https://gcr.azk8s.cn/xxx:yyy?

Yeah, it will pull from gcr.azk8s.cn instead.

@Random-Liu I do this, but it doesn't seem to work as well.
ctr --debug -n k8s.io images pull gcr.io/google-containers/pause:3.1
DEBU[0000] fetching                                      image="gcr.io/google-containers/pause:3.1"
DEBU[0000] resolving
DEBU[0000] do request                                    request.headers=map[Accept:[application/vnd.docker.distribution.manifest.v2+json, application/vnd.docker.distribution.manifest.list.v2+json, application/vnd.oci.image.manifest.v1+json, application/vnd.oci.image.index.v1+json, *]] request.method=HEAD url="https://gcr.io/v2/google-containers/pause/manifests/3.1"
ctr: failed to resolve reference "gcr.io/google-containers/pause:3.1": failed to do request: Head https://gcr.io/v2/google-containers/pause/manifests/3.1: dial tcp [2404:6800:4008:c01::52]:443: i/o timeout

I'm in china, and cannot access gcr.io. And I would to pull  from gcr.azk8s.cn instead without change the images in yaml file.

@veezhang Ha, sorry, I forgot.
plugins.cri.registry is only for the CRI plugin, containerd itself doesn't have a mirror config. If you want to interact with CRI plugin directly, please use crictl.

@Random-Liu Thanks!
How it work with micrik8s?

@veezhang I think you should use crictl if you are using containerd with Kubernetes.

@Random-Liu  Thanks!
How to configure to pull from https://gcr.azk8s.cn/google-containers/pause:3.1 instead of k8s.gcr.io/pause:3.1???
...
        [plugins.cri.registry.mirrors."k8s.gcr.io"]
          endpoint = ["https://gcr.azk8s.cn/google-containers"]
...

[plugins.cri]
...
sandbox_image = "gcr.azk8s.cn/google-containers/pause:3.1"

@mikebrow Oh, Thanks!
But I would like to pull all of images from  https://gcr.azk8s.cn  instead of k8s.gcr.io, such k8s.gcr.io/kubernetes-dashboard, k8s.gcr.io/heapster-influxdb, k8s.gcr.io/heapster-grafana and so on .
Is there a way to configure it?

I thought you already did:
    [plugins.cri.registry]
      [plugins.cri.registry.mirrors]
        [plugins.cri.registry.mirrors."gcr.io"]
          endpoint = ["https://gcr.azk8s.cn"]

and the only problem was the pause image was still hard configured for gcr.io. Have you tried both yet?

@mikebrow Thanks
It really can pull gcr.azk8s.cn/google-containers/pause:3.1, but it cannot pull k8s.gcr.io/pause:3.1 and other images in k8s.gcr.io, k8s.gcr.io/pause:3.1 is just an example.
What I want to configure is that pull mirror.of.example.domain/prefix_uri/image:tag instead of  example.domain/image:tag
example.domain/image:tag ==> mirror.of.example.domain/prefix_uri/image:tag
[plugins.cri.registry.mirrors."example.domain"]
  endpoint = ["mirror.of.example.domain/prefix_uri"]

Does docker registry mirror support that?

@Random-Liu  Sorry, I do not whether it support that.
Thanks a lot!

I think we can close this one. :)

I've see that this has been closed, but I'm having the same issue as the author. I'm working on an internal network and need to interface with an internal server that has mirrored k8s.gcr.io along with docker.io. But whenever I try to pull an image, it seems to ignore the mirror config. I've followed the documentation here: https://github.com/containerd/containerd/blob/master/docs/registry.md
Am I missing something?
This is my config file
$ cat /etc/containerd/config.toml
root = "/var/lib/containerd"
state = "/run/containerd"
oom_score = 0
version = 2

[grpc]
  address = "/run/containerd/containerd.sock"
  uid = 0
  gid = 0
  max_recv_message_size = 16777216
  max_send_message_size = 16777216

[debug]
  address = ""
  uid = 0
  gid = 0
  level = ""

[metrics]
  address = ""
  grpc_histogram = false

[cgroup]
  path = ""

[plugins]
  [plugins.cgroups]
    no_prometheus = false
  [plugins.cri]
    stream_server_address = "<IP_ADDRESS>"
    stream_server_port = "0"
    enable_selinux = false
    sandbox_image = "k8s.gcr.io/pause:3.1"
    stats_collect_period = 10
    systemd_cgroup = true
    enable_tls_streaming = false
    max_container_log_line_size = 16384
    [plugins.cri.containerd]
      snapshotter = "overlayfs"
      no_pivot = false
      [plugins.cri.containerd.default_runtime]
        runtime_type = "io.containerd.runtime.v1.linux"
        runtime_engine = ""
        runtime_root = ""
      [plugins.cri.containerd.untrusted_workload_runtime]
        runtime_type = ""
        runtime_engine = ""
        runtime_root = ""
    [plugins.cri.cni]
      bin_dir = "/opt/cni/bin"
      conf_dir = "/etc/cni/net.d"
      conf_template = ""
    [plugins.cri.registry]
      [plugins.cri.registry.mirrors]
        [plugins.cri.registry.mirrors."docker.io"]
          endpoint = ["https://repos.company.com/docker.io"]
        [plugins.cri.registry.mirrors."k8s.gcr.io"]
          endpoint = ["https://repos.company.com/gcr.io"]
      [plugins.cri.registry.configs]
        [plugins.cri.registry.configs."k8s.gcr.io".tls]
          ca_file = "/etc/ssl/certs/ca-bundle.crt"
          cert_file = "/var/lib/yum/portalbuild-ro.pem"
          key_file = "/var/lib/yum/portalbuild-ro.key"
        [plugins.cri.registry.configs."docker.io".tls]
          ca_file = "/etc/ssl/certs/ca-bundle.crt"
          cert_file = "/var/lib/yum/portalbuild-ro.pem"
          key_file = "/var/lib/yum/portalbuild-ro.key"
    [plugins.cri.x509_key_pair_streaming]
      tls_cert_file = ""
      tls_key_file = ""
  [plugins.diff-service]
    default = ["walking"]
  [plugins.linux]
    shim = "containerd-shim"
    runtime = "runc"
    runtime_root = ""
    no_shim = false
    shim_debug = false
  [plugins.opt]
    path = "/opt/containerd"
  [plugins.restart]
    interval = "10s"
  [plugins.scheduler]
    pause_threshold = 0.02
    deletion_threshold = 0
    mutation_threshold = 100
    schedule_delay = "0s"
    startup_delay = "100ms"

This is what is returned when I check the config
$ sudo crictl --runtime-endpoint /run/containerd/containerd.sock info
{
  "status": {
    "conditions": [
      {
        "type": "RuntimeReady",
        "status": true,
        "reason": "",
        "message": ""
      },
      {
        "type": "NetworkReady",
        "status": false,
        "reason": "NetworkPluginNotReady",
        "message": "Network plugin returns error: cni plugin not initialized"
      }
    ]
  },
  "config": {
    "containerd": {
      "snapshotter": "overlayfs",
      "defaultRuntime": {
        "runtimeType": "io.containerd.runtime.v1.linux",
        "runtimeEngine": "",
        "runtimeRoot": "",
        "options": null
      },
      "untrustedWorkloadRuntime": {
        "runtimeType": "",
        "runtimeEngine": "",
        "runtimeRoot": "",
        "options": null
      },
      "runtimes": null,
      "noPivot": false
    },
    "cni": {
      "binDir": "/opt/cni/bin",
      "confDir": "/etc/cni/net.d",
      "confTemplate": ""
    },
    "registry": {
      "mirrors": {
        "docker.io": {
          "endpoint": [
            "https://repos.company.com/docker.io"
          ]
        },
        "k8s.gcr.io": {
          "endpoint": [
            "https://repos.company.com/gcr.io"
          ]
        }
      },
      "auths": null
    },
    "streamServerAddress": "<IP_ADDRESS>",
    "streamServerPort": "0",
    "enableSelinux": false,
    "sandboxImage": "k8s.gcr.io/pause:3.1",
    "statsCollectPeriod": 10,
    "systemdCgroup": true,
    "enableTLSStreaming": false,
    "x509KeyPairStreaming": {
      "tlsCertFile": "",
      "tlsKeyFile": ""
    },
    "maxContainerLogSize": 16384,
    "containerdRootDir": "/var/lib/containerd",
    "containerdEndpoint": "/run/containerd/containerd.sock",
    "rootDir": "/var/lib/containerd/io.containerd.grpc.v1.cri",
    "stateDir": "/run/containerd/io.containerd.grpc.v1.cri"
  },
  "golang": "go1.11.5"
}

Output when trying to pull an image
$ sudo crictl --runtime-endpoint /run/containerd/containerd.sock pull k8s.gcr.io/kube-apiserver:v1.19.3
FATA[0030] pulling image failed: rpc error: code = Unknown desc = failed to resolve image "k8s.gcr.io/kube-apiserver:v1.19.3": no available registry endpoint: failed to do request: Head https://k8s.gcr.io/v2/kube-apiserver/manifests/v1.19.3: dial tcp <IP_ADDRESS>:443: i/o timeout

Relevant log output
Oct 23 00:42:06 stag-lunabuild2-container01 containerd[1493]: time="2020-10-23T00:42:06.831186098Z" level=info msg="PullImage "k8s.gcr.io/kube-apiserver:v1.19.3""
Oct 23 00:42:36 stag-lunabuild2-container01 containerd[1493]: time="2020-10-23T00:42:36.841841081Z" level=error msg="PullImage "k8s.gcr.io/kube-apiserver:v1.19.3" failed" error="failed to resolve image "k8s.gcr.io/kube-apiserver:v1.19.3": no available registry endpoint: failed to do request: Head https://k8s.gcr.io/v2/kube-apiserver/manifests/v1.19.3: dial tcp <IP_ADDRESS>:443: i/o timeout"


Pull request for digiquad codebase

@gopal-raikindi please maintain proper naming structure for all the components.
@AyushSrivastava3 please help the team in this.

@gopal-raikindi please update the backend code as well, It seems only the frontend code is being updated..

@gopal-raikindi please check and delete this PR if its not required.


Feat(eos_cli_config_gen): Add support for IPv6 Helper Addresses on VLAN interfaces

Enhancement summary
Add support for configuring ipv6_helper addresses on VLAN interfaces.
Which component of AVD is impacted
eos_cli_config_gen
Use case example
It may be necessary to add IPv6 helper addresses in campus networks that use IPv6.
Describe the solution you would like
Add the ipv6_helpers key and values to the supported keys under eos_cli_config_gen's vlan_interfaces data model.
vlan_interfaces:
  - name: <str>
    ipv6_helpers:
      -  ip_helper: <str>
         link_address: <str>
         local_interface: <str>
         source_address: <str>
         vrf: <str>

Describe alternatives you have considered
The eos_cli key in the vlan_interfaces dictionary is a current way to configure this.
Additional context
No response
Contributing Guide

[X] I agree to follow this project's Code of Conduct

Already supported by ipv6_dhcp_relay_destinations key


Post in the future is not appearing

Hello guys :)
I was on version 4.5.0 and when I create a post with creation data in the future it was still displaying.
But after update to 4.5.1 the post does not appear anymore, just if I change the creation date for the past.
then I just want to make sure if it is a bug or a feature 😄

Hello @eerison
Posts with future dates should not appear in prod build.
So, this behavior is intentional. 😅
I'll close this issue for now.
Let me know if you have any other issues. Thanks.


Vernemq Permission denied error

Environment

VerneMQ Version:
OS:ubuntu 16.04
Erlang/OTP version (if building from source):Erlang/OTP 22 [erts-10.6.4]
VerneMQ configuration (vernemq.conf) or the changes from the default
Cluster size/standalone:standalone

make rel cmd successfully  created the release
===> Including Erts from /usr/lib/erlang
===> release successfully created!
root@ubuntu-listener:/option/_build/default/rel/vernemq# bin/vernemq start
bin/vernemq: 172: bin/vernemq: /option/_build/default/rel/vernemq/bin/../erts-10.6.4: Permission denied
vmq_cluster_node_sup
vernemq failed to start within 15 seconds,
see the output of 'vernemq console' for more information.
If you want to wait longer, set the environment variable
WAIT_FOR_ERLANG to the number of seconds to wait.

Hello vetriedi,
Have you resolved this issue?
Could you share it?
Thank you.


Check for nodetool move to finish on topology_test

By not watching the logs, we were trying to move too many nodes at once, which would throw an error. Unfortunately, watching the logs is not enough, as the state jump to normal happens just before the rest of the ring is ready for another move again.
@knifewine to review

Sleep isn't ideal, but lgtm.
Maybe we should consider pushing a watch_log_for_seconds method to ccm at some point.
As long as the sleep won't harm the determinism of the test, +1.


Finding coresponding error line in CSV file

The following code running against Node 8.11, used parser.lines to report the corresponding line that was in error in the original CSV file, (i.e. "Line 6: First name is missing"). I need the ability to get the same information running csv-parse with Node 10. In node 10, parser.lines is usually set to the last line for the CSV by the time parser.on("readable", ...) is executed.
Our CSV has comment lines at the top of the file to explain a few fields to our customers. The customer can always delete the comment lines if they choose. Its not as simple as using a accumulator to count the records in parser.on("readable", ...), as comment lines are not parsed.
const parserOptions = {
        trim: true,
        columns: true,
        comment: "#",
        relax_column_count: true,
        skip_empty_lines: true,
        rowDelimiter: ["\r\n", "\n", "\r"]
    };
const parser = require("csv-parse")(parserOptions);

const errorList = [];

parser.on("readable", () => {
    while ((record = parser.read()) !== null) {
        let errStr = "Line " + parser.lines + ": ",
            noErr = true;
        if (!record[firstName]) {
            noError = false;
            errorStr += "First name is missing";
            errorList.push(errorStr);
        }
        ...
        if (noError) {
            transformer.write(record);
        }
    }
});

Well, if you take a look at the recent commit, I am currently finishing a complete rewrite of the parser. Beside re-implementing entirely the parser using Buffer for performance reasons, I also spent some time (I was working on it today) fixing the line implementation which was not correctly implemented in earlier version (at least when the row delimiter was not the same than the record delimiter. Thus, in the new version, the line property shall be much more reliable.
I am not sure this will answer your issue. I encourage you to look at the code present in the master branch and, if it does solve your problem, to prepare me a small dataset illustrating what you wish to get.

Looked at master, and I assume you're referring to the "info" property. I don't think it is helpful for the situation I'm referring to. I want to know which specific line from the CSV corresponds to the record that parser.read returns. Knowing that the CSV contains 2 comment lines, does not tell me the current record's relative position in the file.
I need to be able to tell the customer that line 5 of the CSV below, is missing the required FirstName entry.
FirstName,LastName,Email
# Comment line 1
# Comment line 2
<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>
Perhaps if the returned record also returned metadata:
record = {
    FirstName: "",
    LastName: "Anderson",
    Email<EMAIL_ADDRESS>    metadata: {
        csvLine: 5,
        numberOfFields: 3,
        expectedNumberOfFields: 3
        ... other data specific to this record
    }

I have just created a new info option which works similarly to the raw option. It shall feet your needs. You can either use the latest code on GitHub or wait for a couple of days until version 4 released. You can see it in action in the test

Thank you for reporting the issue, it is fixed with 4.0.1.


Api Docs CORS proxy support

Feature Suggestion
Add support for a proxy for requests coming from SwaggerUI

Possible Implementation
I found this issue. We could expose a requestInterceptor then pass it into <SwaggerUI ... />.

Context
It would be easier for teams to adopt if each service didn't have to configure CORS for Backstage.

Hi @brethubbard is this already supported or is there a workaround available?
thanks


Tab completions

Hey @jamesob, I mentioned I'd make a list of the things I've got planned for my wrapper that would fit in better upstream. First one is tab completing names of the deskfiles you have.
$ desk . som[Tab]
$ desk . some_desk_that_I_didnt_want_to_type_out

Absolutely; this and PS1 modding are probably the two highest on my list right now.

Related, see https://github.com/robbyrussell/oh-my-zsh/pull/4577 for oh-my-zsh.

This is now in master for both zsh and bash. Let me know if anything doesn't work for you, @rnewton.


feat(aws/router): allow more complex routing

Router's routes is now able to take an object for finer control/complex usage
Types:

Use example:

Update 04/05: more advanced use example
Assets is my custom component to build a static frontend app into a bucket.

Tested locally, working dev, HMR, deploy
Tested to be backward-compatible
The committed PR contains a commentted bit, feel free to remove it.

Interesting, let me ask Frank to take a look

Router added supports for s3 origins and CF edge functions.
we are moving sst/ion -> sst/sst and unfortunately this is going to be a messy process because of github's limitations
i'm going to close this PR for now and it can be re-opened in the new sst/sst repo that will be ready in the next few days if still relevant


Avoid RubyGems psych warning breaking the tests

This, along with https://github.com/rubygems/rubygems/pull/2034, should get tests passing again 🙌

Talked to @segiddins and they said the failures are unrelated. So in that case, this looks good to me, but I don't have permission to merge it so I'm not sure that matters lol

@bundlerbot r+

#6084 was merged. @segiddins Can you try to rebase?

@bundlerbot retry


[lapack-reference] Build error

Package: lapack-reference[blas-select,core,noblas]:x64-windows -> 3.10.1
Host Environment

Host: x64-windows
Compiler: MSVC 19.33.31630.0
vcpkg-tool version: 2022-10-17-3247920fbdd47d08f36cbd480addd9890d3c2435
vcpkg-scripts version: 934a99dc1 2022-10-21 (3 days ago)

To Reproduce
vcpkg install lapack:x64-windows
Failure logs
-- Downloading https://github.com/Reference-LAPACK/lapack/archive/v3.10.1.tar.gz -> Reference-LAPACK-lapack-v3.10.1.tar.gz...
-- Extracting source C:/src/vcpkg/vcpkg/downloads/Reference-LAPACK-lapack-v3.10.1.tar.gz
CMake Error at scripts/cmake/vcpkg_execute_required_process.cmake:96 (message):
    Command failed: C:/src/vcpkg/vcpkg/downloads/tools/cmake-3.24.0-windows/cmake-3.24.0-windows-i386/bin/cmake.exe -E tar xjf C:/src/vcpkg/vcpkg/downloads/Reference-LAPACK-lapack-v3.10.1.tar.gz
    Working Directory: C:/src/vcpkg/vcpkg/buildtrees/lapack-reference/src/v3.10.1-e981a3b485.clean.tmp
    Error code: 1
    See logs for more information:
      C:\src\vcpkg\vcpkg\buildtrees\lapack-reference\extract-err.log

Call Stack (most recent call first):
  scripts/cmake/vcpkg_extract_source_archive.cmake:126 (vcpkg_execute_required_process)
  scripts/cmake/vcpkg_extract_source_archive_ex.cmake:8 (vcpkg_extract_source_archive)
  scripts/cmake/vcpkg_from_github.cmake:113 (vcpkg_extract_source_archive_ex)
  ports/lapack-reference/portfile.cmake:16 (vcpkg_from_github)
  scripts/ports.cmake:147 (include)

C:\src\vcpkg\vcpkg\buildtrees\lapack-reference\extract-err.log
cmake -E tar: warning: unknown warning
CMake Error: Problem with archive_write_finish_entry(): File size could not be restored
CMake Error: Problem extracting tar: C:/src/vcpkg/vcpkg/downloads/Reference-LAPACK-lapack-v3.10.1.tar.gz

Additional context

This issue should be the OS is preventing you writing inside that folder. Could you please check out the either permissions or your disk space? The similar issue: https://github.com/microsoft/vcpkg/issues/7352


oauth2server: pypi version for v7? (OAuthlib>=0.9.0)

Needed in B2SHARE

@emanueldima I will prepare release ASAP. Thanks for reporting!


Update license to CC BY and include in footer

This PR addresses #286:

Updates repository license to CC BY
Includes CC BY logo (with link) in footer of website (appears on every page)
Makes some corrections to the introduction page

It will become a logo once this PR is accepted. It refers to a logo at https://inbo.github.io/tutorials/images/cc-by.svg that is currently not there yet. I have to link using an absolute url because the theme does not allow to create a relative URL that works on every page.


command to list all the charts in a repository?

I've created a helm repository with lots of the fabric8 microservices:
http://fabric8.io/helm/
I can search all repositories but I figured it might be interesting to list the apps in a repo?
something like
helm charts [repoName]

If not repo name it'd list all the charts for all repos otherwise it'd just filter those ones in the given repository name. I was assuming it'd just show the latest version too, not all versions.
Thoughts? Happy to submit a PR if folks think its a good idea

I like this a lot. Would love to see a PR for this @jstrachan.

I think the name helm charts is going to be used for managing chart dependencies. But I agree with the idea @jstrachan suggests, and would love to see it implemented.

Related to #1148

This is now implemented with helm search:

helm search will show all charts
helm search stable/ will show all charts in the stable repository.

I'm not finding how to get all versions of a chart. Eg helm search stable/my-chart only prints the latest. There should be a flag to get all versions. We have multiple deployments that use different versions.

Use helm search repo stable/wordpress --versions if you want to view all versions of a particular chart (helm search stable/wordpress --versions if you're on Helm 2).

Sorry I somehow missed that option to the search command, thanks for info.

For those coming here with helm 3
Try helm search repo <repo name> eg helm search repo stable


The SlugGenerator isn't really a "service"

The SlugGenerator is new'ed up wherever it's used, e.g.:

https://github.com/VenusInterns/BlogTemplate/blob/007603b096e1cdc563f83b5fddce5bbcf9ce5f4f/BlogTemplate/Pages/New.cshtml.cs#L60
https://github.com/VenusInterns/BlogTemplate/blob/fb4d281cfd8c6b6a09fd35e8f21bf037072c41de/BlogTemplate/Pages/Edit.cshtml.cs#L78

It would be more typical to register the SlugGenerator as an actual service in Startup.cs's ConfigureService method, and then consume it from the DI container wherever it's used.
If you haven't used this pattern before, your friendly local Ryan (e.g. @rynowak) or Taylor (@NTaylorMullen) can help you do this in Razor Pages.

Also for Excerpt Generation.

See PR #70


Spec export not working on Sketch 69

Gets stuck on first element of artboard, won't progress...

Running into the same issue with Sketch 69 and this is what I see.

I have the same problem with Version 69

Having exact same problem with Version 69

Indeed — nothing I do manages to address the problem. Sketch Measure hangs when exporting.

Facing same problem. do we have any solution for the same?

Will Sketch Measure plugin be updated to be compatible with version 69? This plugin is our main resource for providing files to our software team in a consumable manner, and now we are unable to use.
Please advise on estimated update if any

Same issue with v69 :( anyone have a fix ?

same issue

same issue cant export

:( same issue, v69...

Hi, I fixed my branch if anyone is interested.
It should be working with sketch 69.
⭢ Give it a try and let me know.
My branch is a little different from @utom's original code and I don't use Sketch anymore on a daily basis.
I hope it helps :)

By the way, the problem was with MSImmutableColor.
stringValueWithAlpha is not available anymore, it's now called stringValueIncludingAlpha.

Hi, I fixed my branch if anyone is interested.
It should be working with sketch 69.
⭢ Give it a try and let me know.
My branch is a little different from @utom's original code and I don't use Sketch anymore on a daily basis.
I hope it helps :)
By the way, the problem was with MSImmutableColor.
stringValueWithAlpha is not available anymore, it's now called stringValueIncludingAlpha.

It works, thank you! 👍

Another solution is to use @qjebbs's fork:
https://github.com/qjebbs/sketch-meaxure

Sketch MeaXure is a re-implemention of Sketch Measure with TypeScript, uses Sketch JavaScript API.
It aims to be:

More stable, not likely to break down after Sketch update.
Easy to maintain.

Improvements
Improvements that users can recognize:

Fully works with lastest version of Sketch (v66).
The latest Tint feature support.
Easily resize markers, without concerns to break them. (The resizing constrain feature).
Export directly with Anima stacks activated.
Customize the order of exported artboards.
Better display of text fragments.
Re-organize functions and panels.

Notice
If you encounter problems managing (toggle hidden/locked, remove, and export) markers created by Sketch Measure, run the menu Plugin - Sketch MeaXure - Help - Rename Old Markers.
Installation

Download the latest release of the plugin
Un-zip
Double-click on Sketch-Meaxure.sketchplugin

It is a really nice re-implementation 🚀

Another solution is to use @qjebbs's fork:
https://github.com/qjebbs/sketch-meaxure

Sketch MeaXure is a re-implemention of Sketch Measure with TypeScript, uses Sketch JavaScript API.
It aims to be:

More stable, not likely to break down after Sketch update.
Easy to maintain.

Improvements
Improvements that users can recognize:

Fully works with lastest version of Sketch (v66).
The latest Tint feature support.
Easily resize markers, without concerns to break them. (The resizing constrain feature).
Export directly with Anima stacks activated.
Customize the order of exported artboards.
Better display of text fragments.
Re-organize functions and panels.

Notice
If you encounter problems managing (toggle hidden/locked, remove, and export) markers created by Sketch Measure, run the menu Plugin - Sketch MeaXure - Help - Rename Old Markers.
Installation

Download the latest release of the plugin
Un-zip
Double-click on Sketch-Meaxure.sketchplugin

It is a really nice re-implementation 🚀

Yes, this is working awesome. Thanks for the find!

Hi,
When executing the plugin with a project with 6 pages and 2 of them with +56 pages when the plugin is executing, it puts the Sketch down.
Someone with the same problem...
:(

@idsampaio is that MeaXure by @qjebbs?

@ellunium Yes, I downloaded ( https://github.com/qjebbs/sketch-meaxure  ) deleted the old plugin and install meaXure. In documents with few pages /artboards it works well and does not go down, but in more extensive projects the application closes.

For MeaXure, we need @qjebbs to take a look.
For the bigger files try my fork although there’s no support for tint for now.

啥时候可以支持 sketch 69 呢，我在翘首以盼、望眼欲穿、嗷嗷待哺、伺机而动。
加油，加油！💪💪💪😃

Hi,
When executing the plugin with a project with 6 pages and 2 of them with +56 artboards when the plugin is executing, it puts the Sketch down.

@idsampaio Tested with 10k layers good, try export only some of the artboards to located who cause the problem.

Maybe old notes created with old Measure?

Hi,
I don't know what's going on, however I noticed that it is only with that sketch file.
I exported another big project with 21k layers and there was no problem with the export ...

Thanks, @qjebbs & @ellunium

Maybe old notes created with old Measure?

No ... There was no note created in the document in question ...

same issue

遇到同样的问题，等待新版发布。
Encountered the same problem, waiting for the new version to be released.

Hi, I fixed my branch if anyone is interested.
It should be working with sketch 69.
⭢ Give it a try and let me know.
My branch is a little different from @utom's original code and I don't use Sketch anymore on a daily basis.
I hope it helps :)
By the way, the problem was with MSImmutableColor.
stringValueWithAlpha is not available anymore, it's now called stringValueIncludingAlpha.

Same bug and this helped, thanks a lot!!

Another solution is to use @qjebbs's fork:
https://github.com/qjebbs/sketch-meaxure

Sketch MeaXure is a re-implemention of Sketch Measure with TypeScript, uses Sketch JavaScript API.
It aims to be:

More stable, not likely to break down after Sketch update.
Easy to maintain.

Improvements
Improvements that users can recognize:

Fully works with lastest version of Sketch (v66).
The latest Tint feature support.
Easily resize markers, without concerns to break them. (The resizing constrain feature).
Export directly with Anima stacks activated.
Customize the order of exported artboards.
Better display of text fragments.
Re-organize functions and panels.

Notice
If you encounter problems managing (toggle hidden/locked, remove, and export) markers created by Sketch Measure, run the menu Plugin - Sketch MeaXure - Help - Rename Old Markers.
Installation

Download the latest release of the plugin
Un-zip
Double-click on Sketch-Meaxure.sketchplugin

It is a really nice re-implementation 🚀

Yes, this is working awesome. Thanks for the find!

thanks a lot!!

Hi, also same issue on my end:
https://github.com/utom/sketch-measure/issues/498#issuecomment-715260806

@idsampaio  It turns out that the problem you encountered is probably an issue of Sketch API:
sketch-hq/SketchAPI#810
And the latest release has bypass it. You can help to test it.

@idsampaio It turns out that the problem you encountered is probably an issue of Sketch API:
sketch-hq/SketchAPI#810
And the latest release has bypass it. You can help to test it.

Fixed!
It was really a sketch api problem.
Thanks @qjebbs .
By the way, what is the file "proto.html" what's the difference?!

export html not work


⚠ Bofrost.be has degraded performance

In 4a1ba51, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 4926 ms

Resolved: Bofrost.be performance has improved in e2914cb after 17 minutes.


Update bundle and acceleration tutorials

Description
This PR verified and updated the bundle and acceleration tutorials for MONAI 1.0 release.
Checks

[ ] Notebook runs automatically ./runner [-p <regex_pattern>]

Hi @wyli ,
I have verified all the tutorial examples under: bundle/, acceleration/, distributed_training/.
And this PR updated some minor logic, it's ready for review now.
Thanks.


.Net Gemini - Comments fix & parser refactor

.Net Gemini - Comments fix
Refactor parser for better readability and performance.


Wanna see my hot pics?💋💋💋

Hi!😻😻😻 Wanna see my hot pics?💋💋💋 Go to this site and find me here. ❤❤❤ My nick is sexygirl662 👇👇👇
https://tinyurl.com/tza85ua

wondering if you'll get tired of continuously setting up fake new accounts to post your shite...


[5.3] Absolute path to sqlite file in .env only working with artisan CLI

Laravel Version: 5.3.28
PHP Version: 7.0.6
Database Driver & Version: SQLite
Laravel Valet

Description:
According to the SQLite Configuration referenced in the Laravel documentation, an absolute path should be used in your .env file.
All is fine when using artisan commands, however when I access the website via the browser, I have to change the path to ../database/database.sqlite to make it work.
Steps To Reproduce:

Install fresh Laravel installation
Create the /database/database.sqlite file
Update .env; set DB_DATABASE=/database/database.sqlite
Add route:

Route::get('/', function () {
    return App\User::first();
});

Visit the url in the browser, you'll see this error:
Database (/database/database.sqlite) does not exist. (SQL: select * from "users" limit 1)

Solution
One way to solve this problem is by changing the DB_DATABASE= to #DB_DATABASE= but that would make it impossible to use a different named file.
I think there is a better solution to deal with this by changing the SQLite Connector. I'm willing to create a PR for this but I'm not sure how to solve this the best way.

This is not the absolute path: DB_DATABASE=/database/database.sqlite
An absolute path is something like /Users/Mohamed/sites/laravel/database/database.sqlite.

@themsaid How could I miss that. A full path works indeed, thanks!


[image_ocr.py] Unwanted characters predicted instead of blank/no label in CNN-RNN-CTC network

I am training a CNN-RNN-CTC network for predicting a word in an image. Accuracy(edit distance - 0) is around 75-80%. One of the problems i have encountered from the beginning is the prediction of unwanted characters in place of a no label(blank label as mentioned in CTC) either at the start or at the end of an image.
For example, an image containing a word "Hello" might be predicted as "IHello" or "lHello" or "Helloi". This error varies for every epoch (each epoch might introduce a different character - '_' for one and 'I' for another. Hence I am forced to choose a model with the least error insertion rate. Can anyone help me try to find what's going wrong??

Were you able to solve this issue? If yes, can you let me know how? thanks!


Typeahead import with Vite fails in production mode

Discussed in https://github.com/digitalfortress-tech/typeahead-standalone/discussions/58

Originally posted by Pfeil May 11, 2023
Hi :) (Sorry, beginner here.) I seem not to be able to use it with vite, but I am not sure what I am doing wrong. I probably have a simple vite issue, but maybe not (minimal example below). I have another webcomponent which works fine, and other dependencies in the same project also do not cause issues. So I wonder if typeahead-standalone has certain requirements? The error only occurs in production build when using it in a script tag in a HTML file (error from the example described below):
Uncaught TypeError: this is undefined
    <anonymous> typeahead-standalone.js:1
    <anonymous> typeahead-standalone.js:1
    <anonymous> typeahead-standalone.js:1
    <anonymous> typeahead-standalone.js:1
    <anonymous> typeahead-standalone.js:1
    <anonymous> some_sample-name.umd.js:370
    <anonymous> some_sample-name.umd.js:2
    <anonymous> some_sample-name.umd.js:3
typeahead-standalone.js:1:11429

Minimal example can be created like this:

npm create vite@latest com_mapping_input_test -- --template vanilla-ts
Make it a module bundle by adding a vite.config.js:

import { resolve, dirname } from "path";
import { defineConfig } from "vite";

const __dirname = dirname(__filename);

export default defineConfig({
  build: {
    sourcemap: true,
    lib: {
      entry: resolve(__dirname, "src/main.ts"),
      name: "some_sample-name",
      formats: ["es", "umd"],
      fileName: (format) => `some_sample-name.${format}.js`,
    },
    minify: false,
  },
});

This code in main.ts:

import typeahead from "typeahead-standalone";

function hello() {
  console.log("hello");
  typeahead;
}

Then create a HTML file using the result, e.g. npm run preview and then <script src="http://localhost:4173/com_mapping-service-input.umd.js"></script>

Any ideas? Thanks!

Hello, after following the steps, I realised that you are not using the correct built version. you must use the ESM version. Here's a repository where you can see that typeahead-standalone works as expected -> https://github.com/niketpathak/typeahead-standalone-vite


Wrong output name

The output of the generated .js files are based on the package.json name. This example template, when built, will not be usable by other consumers because the file name referenced does not exist. Although it probably won't affect template users, I still feel the need to address this issue.
https://github.com/kbysiec/vite-vanilla-ts-lib-starter/blob/564cbbcb8908a25fc5654bed1949d4577d251146/package.json#L2-L5

My point is the name of the package and the name of the exports should match for completeness sake, because that is the intended design in this template.

@darkdread does this fix what you're talking about?
@kbysiec

@olitreadwell Thank you for PR! It was so simple but I couldn't notice it for such a long time 🙂
@darkdread Filepaths are already updated, thank you for pointing this out.


added search bar

Description
Added a search bar to the connect modal.
issue #141

closing since this was merged into #169


Look at our response codes handling

"One thing of concern I am noticing is that all of these [URLs mentioned in streetlives/yourpeer.nyc#4] should be serving a 404 response code, not a 401 as you mention or a 301 redirect to a 200 response code page like I'm seeing.
Can we look at the systems that are serving our response codes for pages that aren't found on the server? The server behavior isn't as expected and I'm having a hard time diagnosing what is happening.
When the server is asked for a URL that it doesn't recognize, the appropriate response is to return an HTTP response header of 404 (along with a custom page that directs the user). It is important that the response code is a 404 (not a 200 or anything else). This URL, from your list, is behaving very strangely.
https://yourpeer.nyc/locations/acacia-network-bronx-e-e
There's a 301 redirect, but I'm not sure where that is coming from because it is not in the response header. Another method is being used. Then, the user lands on a page that looks like a system default 404 response but is actually served with a 200 response code. I'm seeing a different set of behavior for this URL in the crawler vs a browser.
I'm less concerned about redirecting these 700~ URLs because they never had value but it wouldn't harm anything to clean them up with redirects where appropriate. I am concerned about our response code handling. Can we dive into this matter?

Unable to reproduce. Followed up with Lindsay for instructions on how to reproduce.


Update Home Assistant docker image to version 2024.2.2

coverage: 100.0% (+0.1%) from 99.863%
when pulling 7145ebff77bbcff546ad191abbfb27e89c6304ed on update_home_assistant
into e2f85b71a275002636fbd1d5eba0c3ee3abb8049 on master.


Add libffi-dev and libssl-dev to provision packages

In order to overcome version incompatibilities preventing 'vagrant up' from completing successfully

Current coverage is 77.74% (diff: 100%)

Merging #404 into master will not change coverage

@@             master       #404   diff @@
==========================================
  Files            28         28
  Lines          2363       2363
  Methods           0          0
  Messages          0          0
  Branches        151        151
==========================================
  Hits           1837       1837
  Misses          478        478
  Partials         48         48

Powered by Codecov. Last update a68c2f6...0fc0214

Current coverage is 77.74% (diff: 100%)

Merging #404 into master will not change coverage

@@             master       #404   diff @@
==========================================
  Files            28         28
  Lines          2363       2363
  Methods           0          0
  Messages          0          0
  Branches        151        151
==========================================
  Hits           1837       1837
  Misses          478        478
  Partials         48         48

Powered by Codecov. Last update a68c2f6...0fc0214

Thanks!


scheme-manpages: 2021-01-17 -> 2021-03-11

Motivation for this change
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[x] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 120337 at 7341e217 run on x86_64-linux 1

1 package built successfully:

scheme-manpages

1 suggestion:

warning: missing-phase-hooks
installPhase should probably contain runHook preInstall and runHook postInstall.
Near pkgs/data/documentation/scheme-manpages/default.nix:16:3:
   |
16 |   installPhase = ''
   |   ^


With the current sliders for "other industry" carriers which are zero or small in the present situation cannot be used in a scenario

Problem
With the recent adjustments of the "other industry" sector we can change the amount in which carriers are used.
The sliders currently affect the relative use of a carrier, this leads to two problems:

If a carrier is not used in the present situation it cannot be used for future scenarios
If a carrier is only used in a small amount in the present situation its potential is limited

Example 1:
In the U16-dataset the "other industry" only uses gas and electricity.
Changing the sliders of the other carriers does not have any influence

Example 2:
In The Netherlands there is very little biomass in the "other industry". Even with the slider at it's current max of 300% biomass cannot be used to replace significant amounts of the other carriers.
Possible solutions

For problem 1 and 2: make the sliders absolute. The sliders are initiated at present energy use of a carrier. The user will have to do their own accounting, the chart will provide feedback. In this case we can set the slider max to ~3x the total demand of the "other industry" sector to include growth and efficiencies. I understood from @marliekeverweij that this is not something we can easily do.
For problem 2: increase slider max (for example to 1000%)
...

Including @AlexanderWirtz @antw @michieldenhaan @ChaelKruip @marliekeverweij @jorisberkhout @MartLubben

Thanks for your critical eye!
@ChaelKruip and I just had brainstorm how to fix this issue and thought of the following solution:

add the size-slider again (I just removed it, haha!)
add share sliders for all carriers (including hydrogen, @michieldenhaan mentioned this)

We thought that this would be more intuitive than absolute sliders and suits better with the rest of the industry sector.
How are we going to do this?
It will be kind of a struggle since all the other industry sectors are separated in the graph. Removing this separation will take too much time for now, probably a few days (updating the graph, changing datasets, renaming a lot etc etc). Would be good to do it some time though!
The main problem is that the demand that we want the carrier to have should ideally be distributed among the other industry sectors with the same share as in the present year.
Instead of doing that, we thought to only update the other non-specified demands and set all other industry sectors (mining, minerals, textile, construction etc etc) to zero.


[enhancement] Upgrade to JDK21

Due to the significant advantages of JDK 21, we hope to upgrade all Ozhera projects to JDK 21. The following is the upgrade checklist, including the projects that need to be upgraded:

[x] ozhera-app

[x] ozhera-monitor

[x] ozhera-demo-client

[x] ozhera-demo-server

[x] ozhera-log

[x] ozhera-operator

[x] ozhera-prometheus-agent

[x] ozhera-tspandata

[x] ozhera-webhook

[x] prometheus-starter-all

[x] trace-etl

done


Rustfmt

Not really meant to be merged if you don't want to but I installed rustfmt today and wanted to try it.
IMO the ouput looks better in the PR in most cases except some && and || conditions
This is the default cargo fmt change, no configuration done

Well, I'm not enthusiastic about this one:

Grammar parts are often written in a way to better understand grammar, rustfmt doesn't understand that:

parser(a).map(...)
.or(parser(b).map(...))

means that parsers are equivalent, and makes a ladder:
parser(a)
  .map(..)
  .or(parser(b).map(...))

Which isn't what I mean. It could be rewritten with choice, but there are other similar cases.

Oneliner tests are written in columnar format, that makes them much easier to read and to find out which cases are covered

Code width must be 79 (or 80) chars, that's format I'm very accustomed to.

So, I'd like to pospone this.

No worries, I expected that seeing the large diff


value for controlled component not working

when i pass the in the value, i dont get anything on the text field. not sure if its linked or not and the label just sticks
<ColorPicker             fullWidth             label='Select Color'             value='{newColor}'             onChange={color => setNewColor(color)}           />

Same here on my end. Component looks like this:
<ColorPicker
    name="primaryColor"
    value={primaryColor}
    // defaultValue="#000"
    onChange={(color: any): void => {
        setPrimaryColor(color);
    }}
/>

With defaultValue the input is set and the color of the value is changing, but the value is not changing. Without defaultValue the input is empty and not changing.
That makes the component useless for me.

I have the same thing =(

I have added TextFieldProps={{ value: color }} to the props in order to make it work.

I've added inputPropx={{ value: color }} instead of value={color}. It works fine.

Thanks, @vorvex! I think we need to improve the documentation with some new examples to clarify its usage.
As mentioned in the main description, this component is based in the material-ui TextField component. You can add many other props to improve component behavior and presentation.
In my case, I used a controlled component to show even an icon inside:
<ColorPicker
  id="new-reminder-color"
  name='color'
  value={this.state.color}
  onChange={color => this.handleColorChange(color)}
  TextFieldProps={{
    value: this.state.color,
    variant: "outlined",
    className: classes.formInput,
    label: "Reminder Color",
    helperText: "Tag your reminder with a color"
  }}
  InputLabelProps={{
    shrink: true,
  }}
  InputProps={{
    endAdornment:
      <InputAdornment position="end">
        <Icon className="fas fa-tag" style={{ color: this.state.color }} />
      </InputAdornment>,
  }}
  />

In this example, you have to import the InputAdornment and Icon components form material-ui

@bitcod3r why you have TextFieldProps? It doesn't work for me. I need to set value on IputProps
     <ColorPicker
        label={label}
        variant="outlined"
        value={value}
        onChange={onChange}
        InputProps={{ value: value }}
      />

@bitcod3r why you have TextFieldProps? It doesn't work for me. I need to set value on IputProps
     <ColorPicker
        label={label}
        variant="outlined"
        value={value}
        onChange={onChange}
        InputProps={{ value: value }}
      />

Hey guys! I am using inputRef to display color value
`
.....
const colorRef = useRef(null);
.....
<ColorPicker
label={label}
variant="outlined"
value={value}
onChange={(color) => onChange(color); ((colorRef?.current) as any).value = color}
/>
`

This package (https://viclafouch.github.io/mui-color-input/) handles this problem, supports both React 17 / 18 and MUI V5


NEPREMICNINE no data errTypeError

I get an error, the program does not crash, but keeps throwing these errors when trying to scrape on the defined interval:

NEPREMICNINE no data errTypeError: Cannot read property 'children' of undefined

Scraping and email sending works for bolha, but not for nepremicnine, this is the config I am using (it is a valid JSON file):
{
	"sender_email"<EMAIL_ADDRESS>	"clientID": "sampleClientId",
	"clientSecret": "sampleSecret",
	"refreshToken": "sampleRefreshToken",
	"accessToken": "sampleAccessToken",
	"interval" : 15,
	"receiver_email"<EMAIL_ADDRESS>	"url_bolha" : ["http://www.bolha.com/nepremicnine/stanovanja/?location=Gorenjska%2FKranj%2F&adTypeH=02_Oddam%2F&priceSortField=0|700"],
	"url_nepremicnine" : ["https://www.nepremicnine.net/oglasi-oddaja/gorenjska/kranj/stanovanje/cena-do-700-eur-na-mesec/"]
}

I am using latest NodeJS on raspberry pi which is using Debian Raspbian. Running the scraper with command:
node scraper.js

Eh, this project's dead.


Fix #437 (start/endWith assertions)

This PR adds and enables "chai-string" plugin, making "startWith"/"endWith" assertions work.

Should I also push my auto-generated package-lock.json to make unit tests work?
I'm not sure if it is really needed

@Sl-Alex yes, you should also commit the updated package-lock.json whenever dependencies change. More background here: https://docs.npmjs.com/cli/v9/configuring-npm/package-lock-json

@grubersjoe Thank you, updated it

Nice.
Thanks for taking care of this @Sl-Alex !


Nominations for Jupyter Distinguished Contributor awards

This is for Jupyter Distinguished Contributors only:
Nominations are currently open for the next set of Jupyter Distinguished Contributor awards. Current Jupyter Distinguished Contributors can nominate anyone who fulfils the criteria (Summary: someone who has made substantial sustained contributions to Jupyter for at least 2 years as of December 31, 2023).
You should've received some emails with a link to the nomination form- if you haven't please check your spam folders, or let me know! The closing date for nominations has been extended from February 23rd to March 1st 2024, and it's fine to nominate colleagues or people you know.

Closing as the JDC blog post has been published: https://blog.jupyter.org/announcing-the-2023-jupyter-distinguished-contributor-award-recipients-1b2cc4ba203f
Thanks!


Threaded Messaging

This is just a general question. Slack finally added threaded messages this year! Is that something that is currently supported by slack-ruby-bot, something in the works or a feature you would be open to getting help on adding to this project?
My particular use case is having a bot match a message and then ask a question back and then capture the response.

There's nothing special in this gem for those, feel free to contribute.

I would love to have by default all answers be sent to a thread of the original message (or in the same thread if the original message was itself coming from a thread)

That makes sense @Startouf, feel free to contribute.

So actually it is kinda already supported. However I'm only able to get the first response in thread to work "normally". I'm able to keep sending messages in the same thread but it behaves weirdly. I believe this is what they mentionned there https://github.com/slack-ruby/slack-ruby-client/blob/41539c647ac877400f20aa338aa42d2ebfd2866b/lib/slack/web/api/endpoints/chat.rb#L96
The following sends a response in a thread
  def self.call(client, data, match)
        client.say(
          channel: data.channel,
          text: 'called',
          thread_ts: data.ts
        )
      end

Should this just be a README section?

It would be nice to have threaded response by default, but indeed seeing the code this seems a little extra work. I have started something but I must pause due to a deadline.
I'll be able to resume working on my chatbot chatbot in a while, I will try to have some additional PRs about that.

Doc added in https://github.com/slack-ruby/slack-ruby-bot/commit/162b9e04dffb52fb45c2ff4118e80c009cbf404f


Move core definitions to ingestion-core

Is your feature request related to a problem? Please describe.
We currently have core definitions such as Source, Sink, Workflow... and general configurations under the ingestion module. However, with the addition of the orm_profiler, some definitions are also reused there. We might want to skip the dependency from the profiler to the ingestion Actually, we will need all the SQL connectors, so there's a forced dependency in there. It might still make sense to have a clear separation between core concepts and specific implementations
Describe the solution you'd like
It might be interesting to reorganise a bit the package to have generic definitions and abstract classes under ingestion-core. This way, we can easily extend them for ingestion or orm_profiler.
Describe alternatives you've considered
Stick to what we currently have
Additional context
Add any other context or screenshots about the feature request here.
cc @harshach

+1

Let's also try to tackle this comment -> When loading sources, processors and sinks, be more generic on where do we pick packages from


Quick Reference

i suggest you to include a quick reference in two formats:

as jupyter notebooks in docs/quickref_nb
as mkdocs which can be deployed via mkdocs gh-deploy.  you can see how it looks here

of course you are welcome to apply any changes you like.

This looks great!  Would you like me to publish this under cduck.github.io/drawsvg once it's merged?  I'll take a closer look if I have time this weekend.

yes all you want to do with it is good for me.  and perhaps you have
some things to add ...
On 03/03/2023 00:54, Casey Duckering wrote:

This looks great! Would you like me to publish this under
cduck.github.io/drawsvg once it's merged? I'll take a closer look if I
have time this weekend.
—
Reply to this email directly, view it on GitHub
https://github.com/cduck/drawSvg/pull/90#issuecomment-1452741561, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAQYHKVLB5IQ75SYSYI5B6DW2EXKRANCNFSM6AAAAAAVK7YOXA.
You are receiving this because you authored the thread.Message ID:
@.***>

Fixed some typos and made some minor changes.  I also decided to remove the redundant notebook files.


bad benchmark

node bin/benchmark.js

gives
Error: Cannot find module '../dist/sass.min.js'

and there is really no such file
so I've corrected it to sass.js and got this:
sass.js:
node-sass:
Fastest is

I wasn't aware this benchmark thingie still existed. you'd have to use sass.sync.js, though

ok
corrected require statement to sass.sync.js
output is the same

Fixed the simple benchmark thingie… thx for the pointer :)
➜  node bin/benchmark.js
sass.js x 13,352 ops/sec ±1.38% (79 runs sampled)
node-sass x 15,768 ops/sec ±1.64% (76 runs sampled)
Fastest is node-sass

uhm… those results can't be correct, right? that would mean the emscripted library is almost as fast as the native binding… huh?

That was the idea behind Emscripten LLVM-to-JavaScript compiler :)
Seems it's a very good compiler.

The benchmark was reading the file, but not converting it to string. What it was testing is the input error handling, instead of the compiler.
➜  node bin/benchmark.js
sass.js x 22.61 ops/sec ±37.39% (67 runs sampled)
node-sass x 183 ops/sec ±1.21% (81 runs sampled)
Fastest is node-sass

That makes node-sass about 9x faster than sass.js.

rather big difference
according to this benchmark pure js LESS implementation is only twice slower than libsass

These benchmarks don't compare. bin/benchmark.js is basically running the same C++ code once via the native binding, once via emscripten. LESS is a completely different code base.


Always include man/selint.h2m in dist-archive

This seems good to me.

This seems good to me.

@cgzones Do you want to mark this as ready for review?


Customize main page title based on framework

We want to be able to specify a custom main title based on the framework.
Eg: "Get started" > "Get started with Bun"

Done https://github.com/arcjet/arcjet-docs/pull/82/commits/6aef551c3e8483046c702535458d240f2ced86b8

This doesn't seem to be done in production. Not sure if the commit was lost.

The capability is there, we haven't set any custom titles though.


Review doc for collection filtering and do some dogfooding on the docs

Docs already use that now. Anyway we will need a real doc revamp after API cleaning.


Update sql-database-auditing.md

Updated audit log reference link name

@salexu : Thanks for your contribution! The author(s) have been notified to review your proposed change.

sign off

#sign-off

#sign-off

@salexu: I'm sorry - only the author of this article, @vainolo, can sign off on your changes. But we do have an exception process - if you are on the Microsoft content or product team for this product area, you can ask the PR review team to review and merge it by sending mail to the techdocprs alias.


⚠ Bofrost.at has degraded performance

In 95f1b43, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 2975 ms

Resolved: Bofrost.at performance has improved in 86b73be after 20 minutes.