can you provide the bash script which we can try in our environment.

can you provide the bash script for Viya performance tool which we can try in our environment.

This is a new repo for the tool and we're working on getting the code pushed. Stay tuned.

@shivakrishnay the code's been pushed to the repo. Let me know if you have any issues.


MyriaL rules should elide shuffle when joins can be performed locally

A large join (https://rest.myria.cs.washington.edu:1776/query/query-77554) ran out of memory due to shuffle even though no shuffle was necessary since join attributes were the same as partitioning attributes. We could perform the local join either in Myria or in Postgres, although the latter would be necessary when the joined local relations (or even one of them, say the build side of a RightHashJoin) do not fit in memory. A prerequisite for this is that we have reliable partitioning information in the MyriaX catalog, which doesn't seem to be the case currently (https://github.com/uwescience/myria/issues/766).

A prerequisite for ensuring that partitioning information is reliably propagated to storage metadata: https://github.com/uwescience/raco/issues/466

fixed in #467


Fix Swift Operation Id Path

Adds an optional operationId property to the Operation object
Bug fix for #280

Thanks!


SIGILL in builtins? with incremental GC

I've enabled the incremental GC and when running our test suite a lot of test programs die with SIGILL or SIGSEGV. I don't understand why but it appears to be a combination of GC, incremental GC support, like size of the program or something like that (possibly timing related?) and part of what the program actually does. For example, by varying the number of RTS worker threads I can get a program to crash or not crash. We malloc some stuff for the threads and GC is triggered indirectly via malloc, so maybe we now trigger gc at "the wrong time"?
At least two of the failures I see are SIGILL happening in builtin functions, I think. For example the test_re program, which dies trying to do a ge comparison. How can this be an illegal instruction? What is being called under the hood here?
Core was generated by `out/rel/bin/test_re --rts-wthreads=1'.
Program terminated with signal SIGILL, Illegal instruction.
#0  0x00000000003e1057 in reQ_matches (pattern=0x7f27fd8687c0, string=0x7f27fd8687a0) at foobar/out/types/re.c:61
61	        if (((B_bool (*) (B_Ord, B_int, B_int))reQ_W_125->$class->__ge__)(reQ_W_125, pos, str_len)->val) {
[Current thread is 1 (Thread 0x7f27fd8576c0 (LWP 2217557))]
(gdb) bt
#0  0x00000000003e1057 in reQ_matches (pattern=0x7f27fd8687c0, string=0x7f27fd8687a0) at foobar/out/types/re.c:61
#1  0x00000000003b731b in test_reQ_L_7C_13cont (W_692=0x7f27fd870e10, W_618=0x7f27fd868e60, W_454=0x7f27fd870e70, W_547=0x7f27fd871f90, self=0x7f27fd874ee0, C_cont=0x438f68 <$Done$instance>, env=0x7f27fd874f50, C_14res=0x0) at foobar/out/types/test_re.c:512
#2  0x00000000003b8f9f in test_reQ_L_27ContD___call__ (L_self=0x7f27fd86ceb0, G_1=0x0) at foobar/out/types/test_re.c:593
#3  0x00000000002c6361 in wt_work_cb (ev=<optimized out>) at rts/rts.c:1530
#4  0x00000000003764df in uv__run_check (loop=0x7f27fd86b800) at src/unix/loop-watcher.c:67
#5  0x0000000000366862 in uv_run (loop=0x7f27fd86b800, mode=UV_RUN_DEFAULT) at src/unix/core.c:420
#6  0x00000000002c6aef in main_loop (idx=<optimized out>) at rts/rts.c:1695
#7  0x00000000003ac902 in GC_pthread_start_inner (sb=sb@entry=0x7f27fd856e78, arg=arg@entry=0x7ffe0bfc03f8) at pthread_start.c:55
#8  0x00000000003aa2ac in GC_pthread_start (arg=0x7ffe0bfc03f8) at pthread_support.c:2177
#9  0x00007f27fd927fd4 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442
#10 0x00007f27fd9a85ac in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81
(gdb)

@sydow I wonder if you have an idea about what's going on and can take a look at this? There is a gc-incremental branch where I have enabled the incremental GC, simply pull that, build acton and then do make test and I'm sure you will see a bunch of test apps failing, pick any to debug.
It might be useful to copy the program into an acton project instead of compiling it in place, since then you are able to more easily change the C code, for example:

actonc new gc-debug
cd gc-debug
rm src/*
cp $ACTON_REPO/test/stdlib_auto/test_re.act src
actonc build
generated C code is now in out/types/test_re.c, insert debug code etc
./build.sh to build C code (but not regenerate from .act -> .c)
try running...
sorry if I'm being captain obvious

On 31 Mar 2023, at 12:55, Kristian Larsson @.***> wrote:

@sydow I wonder if you have an idea about what's going on and can take a look at this? There is a gc-incremental branch where I have enabled the incremental GC, simply pull that, build acton and then do make test and I'm sure you will see a bunch of test apps failing, pick any to debug.

I just did this, but unfortunately (well,…) the test suite passed. I did exactly what you suggested:
git pull
git checkout gc-incremental
make
make test
I don’t see what I can do now, so I am leaving this for the moment…
Björn

@sydow Interesting that it passes for you! You are on a mac, right? The new one with M1/M2 CPU?

Yes, MacBook Air M1, 2020. MacOS 12.5.1.

On 31 Mar 2023, at 13:57, Kristian Larsson @.***> wrote:
@sydow Interesting that it passes for you! You are on a mac, right? The new one with M1/M2 CPU?
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.

I've tested more and setting NO_VDB_FOR_STATIC_ROOTS fixes this problem, so there seems to be a bug in bdwgc for using VDB to detect references in the static roots. I'm not sure what the consequences of enabling NO_VDB_FOR_STATIC_ROOTS is, like does that mean static roots is always scanned? Or not? It's static, so should only need to be scanned once?
We should close this issue and open another for continuing the work on using incremental GC.


feat: update katana docker image to download katana rather than building it

The pr updates the docker image for Katana with Kakarot deployed on it, it allows for downloading the katana image rather than building them as Dojo now releases binaries for both linux/amd64 & linux/arm64.
Pull request type

Please check the type of change your PR introduces:

[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, renaming)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] Documentation content changes
[ ] Other (please describe):

What is the current behavior?

We build Katana from scratch
This build takes most of the image build time

Resolves #604
What is the new behavior?

We directly download the binary from the release
We save a lot of time as we are skipping the build time of Katana for both architectures

@Eikix adding a summary of what I did after our call today:

Updated the docker container to use .env.example to create .env file used for deploying Kakarot on Katana upon the container being started.
Improved .env.example as described here in #609
Added .dockerignore as described in #608

What is the status of this PR? Should we wait for deployments of katana inside the docker repo of Kakarot to merge?

What is the status of this PR? Should we wait for deployments of Katana inside the docker repo of Kakarot to merge?

@Eikix the PR is done in terms of the scope of work.
I guess the next step is to:

wait for the current deploy job to work { i.e #607 to be resolved }
once it is resolved, we can then merge this PR, which will add the updated Katana docker container and publish.


[Vue warn]: Invalid VNode type: Symbol(Text) (symbol)

Version
3.0.4
Reproduction link
http://none
Steps to reproduce
In my application , frontend split into many parts and they deployed on different web server. So I use webpack5 ModuleFederationPlugin, but it does't work.I think it's a bug of vue. My code:
<template>

    Child

{{ msg }}

</template>

But if I change my code ,it works. My code:
<template>

{{ msg }}     Child

    Child

</template>

What is expected?
I hope text 'Child' shown in my page

    Child

{{ msg }}

What is actually happening?
console warning:
runtime-core.esm-bundler.js?daf0:38 [Vue warn]: Invalid VNode type: Symbol(Text) (symbol)
  at <HelloWorld msg="aaaaa" >
  at <App>

environments:
@vue/cli  5.0.0-alpha.0
nodejs v15.3.0

This is caused by having more than one copy of vue included in the app (from the different /node_modules/ in the federated pojects).
You have to configure your way so that only one copy is included.
Since you provided no reproduction, we can't really be more specific.

This is caused by having more than one copy of vue included in the app (from the different /node_modules/ in the federated pojects).
You have to configure your way so that only one copy is included.
Since you provided no reproduction, we can't really be more specific.

I see, thank you. My solution:
 // index.html:


[Doc Improvement][AC Link Fixes]

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/task-modules-and-cards/cards/cards-actions.md
92
15
link
:white_check_mark:

msteams-platform/task-modules-and-cards/cards/charts-in-adaptive-cards.md
99
1
link
:white_check_mark:

msteams-platform/task-modules-and-cards/container-layouts.md
94
6
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/task-modules-and-cards/cards/cards-actions.md
92
15
link
:white_check_mark:

msteams-platform/task-modules-and-cards/cards/charts-in-adaptive-cards.md
99
1
link
:white_check_mark:

msteams-platform/task-modules-and-cards/cards/media-elements-in-adaptive-cards.md
94
5
link
:white_check_mark:

msteams-platform/task-modules-and-cards/container-layouts.md
94
6
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.


Siamese Network

Hello!
I am trying to use MXNet to build a Siamese network, where two networks share the same weights, and are optimized using a contrastive loss function, rather than softmax or MSE. I was looking for some insight into how to do this. A simplified version of my code is below.
def AugConvolution( data, num_filter, kernel, stride=(1,1), pad=(0,0), name=None, suffix='' ):
    """
    Create a convolution layer with batch normalization and relu activations.
    """

    conv = Convolution( data=data, num_filter=num_filter, kernel=kernel, stride=stride, pad=pad, name='conv_{}{}'.format( name, suffix ) )
    bn = BatchNorm( data=conv, name='bn_{}{}'.format( name, suffix ) )
    act = Activation( data=bn, act_type='relu', name='relu_{}{}'.format( name, suffix ) )
    return act

def JNET():
    x1seq = Variable( name="x1seq" )
    x1seq_conv1 = AugConvolution( x1seq, 64, (5, 1), name="x1seq", suffix="conv1" )
    x1_flatten = Flatten( x1seq_conv1 )

    x2seq = Variable( name="x2seq" )
    x2seq_conv1 = AugConvolution( x2seq, 64, (5, 1), name="x2seq", suffix="conv1" )
    x2_flatten = Flatten( x2seq_conv1 )

    concat = Concat( [x1_flatten, x2_flatten] )
    fc1 = FullyConnected( concat, num_hidden=2 )
    softmax = SoftmaxOutput( data=fc1, name="softmax" )

def main():
    """Fit some data and make predictions."""

    x1_seq, x1_dnase, x2_seq, x2_dnase, y = extract_dataset(21)
    y = y.reshape( y.shape[0], 2 ).argmax( axis=1 )

    softmax = JNET()
    model = mx.model.FeedForward( ctx=[mx.gpu(2), mx.gpu(3)], symbol=softmax, num_epoch=10, learning_rate=0.001, momentum=0.9, wd=0.00001 )
    model.fit( ?? )

if __name__ == '__main__':
    main()

I have multiple questions:
(1) How do I pass in the multiple inputs to the model using model.fit? I haven't been able to find anything in either the documentation or the code showing me exactly how to do that.
(2) What is the best way to share weights between layers, particularly BatchNorm layers and PReLU layers?
(3) Are there any plans to implement a contrastive loss function soon? I know I can write my own, but would prefer a hardcoded one.

1&2) I would recommend writing your own model and solver for non-feedforward models. It basically goes like this:
sym = build_your_model()
vars = allocate_your_variables()
exe = sym.bind(...) #if you want to share weight between x1 and x2, just set args = {'x1': X, 'x2': X...} i.e. bind them to the same variable. don't forget to also bind the gradient to the same variable.
while True:
copy_data_to_input()
exe.forward(isTrain=True)
exe.backward()
for weight, grad in zip(weight_arrays, grad_arrays)
optimizer.update(index, weight,grad)
copy_output_to_buffer_and_eval()
you can check examples/autoencoder for reference. Also read the individual API doc.

On a second thought, this is actually a feed forward model. So if you want to use the standard API, try NDArrayIter. It takes a bunch of numpy arrays and create a dataiterator

Right. I am aware of NDArrayIter, but I am not sure how it assigns the arrays to the variables.  You allocated mx.sym.Variable('xxx') for your networks input symbol. That name must match your initialization dict for FeedForward model.

Are you saying that NDArrayIter allows X to be a dictionary?

Yes. The document seems to be outdated

For BatchNorm layer, do we need to share their auxiliary states as well?

Hi @piiswrong , i still have some doubts about sharing weights. Bellow is my stupide code:
    data1 = mx.sym.Variable("data1")
    data2 = mx.sym.Variable("data2")
    conv_weight = mx.sym.Variable("conv_weight")
    conv_bias = mx.sym.Variable("conv_bias")
    conv_1 = mx.symbol.Convolution(data=data1, weight=conv_weight, bias=conv_bias, kernel=(3, 3), pad=(1, 1), num_filter=64)
    conv_2= mx.symbol.Convolution(data=data1, weight=conv_weight, bias=conv_bias, kernel=(3, 3), pad=(1, 1), num_filter=64)

I have to define two similar network with same weight, which is inefficient,  especially when the network is deep. Is there any simple way to make two same network share same weights just like
define network():
      ..........
net_1 = network()
net_2 = network()
share_weight(net_1,net_2)
net = mx.sym.Concat(net_1, net_2,)

Thanks.

@xzqjack I have exact same problem for sharing weight.
Say if we want to have a sharing weight resnet 101, it will be much more ugly having parameter arguments passing to every layer of blocks.
Is is possible just passing parameter name to each convolution layer for sharing weights, just the same as every other platforms like tensorflow, caffe and paddle ?
Thanks


Ignore multiple dirs

Hi guys,
I met a problem that i want to search something but ignore multiple dirs with ag, like below:
ag --ignore content/bower_components --ignore node_modules --ignore views 2014

It is worked fine.
However, i just want to type less like below:
ag --ignore-dir [content/bower_components, node_modules, views] 2014

or some like regex pattern:
ag --ignore-dir /(content\/bower_components | node_modules | views)/ 2014

Maybe i used the ag to ignore multiple dirs with a wrong way, is there anyone could help me?
Thx.

I know this is an old question, but in case anyone has a similar question. You can use a regex. The formatting is ag --ignore=SOMEREGEX WORD_TO_SEARCH DIR.


Joining HA cluster fails when --advertise-address or --bind-address are configured on the kube-apiserver

Summary
Joining a HA cluster fails when --advertise-address or --bind-address are configured on the kube-apiserver (in /var/snap/microk8s/current/args/kube-apiserver) on the joining node. Joining procedure does not generate certificates and csrf.conf on joining node.
What Should Happen Instead?
The node with configured --advertise-address or --bind-address on the kube-apiserver should be able to successfully join the cluster.
Reproduction Steps

install microk8s on two nodes (nodeA & nodeB)
add an --advertise-address or --bind-address option to the kube-apiserver on nodeB; example for address on default-route interface:
echo --advertise-address=$(ip -j r s default | jq -r '.[0].prefsrc') >> /var/snap/microk8s/current/args/kube-apiserver
restart microk8s on nodeB (sudo snap restart microk8s)
nodeA: microk8s add-node
nodeB: microk8s join <ADDRESS_ON_DEFAULT_INTERFACE_nodeA>:25000/<TOKEN>/<TOKEN>
Wait & validate failing join operation:

nodeA:~$ microk8s kubectl get no
NAME               STATUS   ROLES    AGE   VERSION
u2204srv-mk8s-01   Ready    <none>   20m   v1.26.1

nodeB:~$ microk8s kubectl get no
E0221 11:55:27.414876   24107 memcache.go:238] couldn't get current server API group list: Get "https://<IP_ADDRESS>:16443/api?timeout=32s": x509: certificate signed by unknown authority (possibly because of "crypto/rsa: verification error" while trying to verify candidate authority certificate "<IP_ADDRESS>")
E0221 11:55:27.418325   24107 memcache.go:238] couldn't get current server API group list: Get "https://<IP_ADDRESS>:16443/api?timeout=32s": x509: certificate signed by unknown authority (possibly because of "crypto/rsa: verification error" while trying to verify candidate authority certificate "<IP_ADDRESS>")
E0221 11:55:27.421624   24107 memcache.go:238] couldn't get current server API group list: Get "https://<IP_ADDRESS>:16443/api?timeout=32s": x509: certificate signed by unknown authority (possibly because of "crypto/rsa: verification error" while trying to verify candidate authority certificate "<IP_ADDRESS>")
E0221 11:55:27.425385   24107 memcache.go:238] couldn't get current server API group list: Get "https://<IP_ADDRESS>:16443/api?timeout=32s": x509: certificate signed by unknown authority (possibly because of "crypto/rsa: verification error" while trying to verify candidate authority certificate "<IP_ADDRESS>")
E0221 11:55:27.428299   24107 memcache.go:238] couldn't get current server API group list: Get "https://<IP_ADDRESS>:16443/api?timeout=32s": x509: certificate signed by unknown authority (possibly because of "crypto/rsa: verification error" while trying to verify candidate authority certificate "<IP_ADDRESS>")
Unable to connect to the server: x509: certificate signed by unknown authority (possibly because of "crypto/rsa: verification error" while trying to verify candidate authority certificate "<IP_ADDRESS>")

Analysis
When joining a cluster in HA mode the csr.conf file gets invalidated (content: changeme), after which all microk8s services will be restarted, from update_dqlite(...) in join.py:
https://github.com/canonical/microk8s/blob/73b5ed2be0b2102a19ecaa01369c091e1889b9ee/scripts/wrappers/join.py#L730-L733
(When restarting) The apiservice-kicker is responsible for generating CSR config, CSR and certificates. In case --advertise-address or --bind-address are configured on the kube-apiserver, rendering and copying of the CSR config file and certificate generation is skipped:
https://github.com/canonical/microk8s/blob/73b5ed2be0b2102a19ecaa01369c091e1889b9ee/microk8s-resources/wrappers/apiservice-kicker#L48-L50
The invald certs/csr.conf further prevents manual generation of certificates, with the new CA, using microk8s refresh-certs -e <...>.
Note: The guard against certificate regeneration on clusters - provided by the ${SNAP_DATA}/var/lock/no-cert-reissue lock-file - is not relevant to the joining behavior, as mark_no_cert_reissue() is only called after the service restart (apiserver-kicker execution) and return from update_dqlite():
https://github.com/canonical/microk8s/blob/73b5ed2be0b2102a19ecaa01369c091e1889b9ee/scripts/wrappers/join.py#L882-L887
Workarounds
https://github.com/canonical/microk8s/issues/2123#issuecomment-1209995093 outlines a working workaround, by copying the certs/csrf.conf.rendered to certs/csr.conf and regenerating server.crt and front-proxy-client.crt. #3740 should eliminate the step of copying the csrf, but will not fix the cluster joining issue in the first place.
Related issues

#2123
#3321
#3068
loosely #3241

Can you suggest a fix?
Considerations
Who/Responsibility
First, the question of who should be in charge for generating CSR config, CSR and certificates has to be answered:
Per introduction of the apiserver-kicker in #177 it was mainly intended to regenerate certificates on IP changes, but now seems to be responsible for all CSR/certificate generation: Indicated by the implementation in the joining code using a similar strategy, to indicate a pending regeneration of the required resources, as the utility functions used by the apiserver-kicker; see below.
https://github.com/canonical/microk8s/blob/73b5ed2be0b2102a19ecaa01369c091e1889b9ee/scripts/wrappers/join.py#L730-L731
https://github.com/canonical/microk8s/blob/73b5ed2be0b2102a19ecaa01369c091e1889b9ee/microk8s-resources/actions/common/utils.sh#L629-L631
Explicitly generating all resources in the joining code would offer the benefit of knowing the intent, while the current implementation suggests the apiserver-kicker to be responsible.
What
Second, it shall be considered what resources, apart from the actual certificates should be generated. In my opinion, these two are valid, dependent, assumptions about the current configuration of a user using custom --advertise-address or --bind-address option on the kube-apiserver:

a custom csrf.conf.template may exist
a custom csrf.conf.rendered may exist

no custom csrf.conf may exist currently, as it is overwritten by the joining logic.
Proposed Fix
Rough outline:

let the apiserver-kicker be responsible for all certificate related resource generation
validate the server.crt against the ca.crt and trigger certificate regeneration if they do not match
validate the contents of the CSR configuration files in order of csr.conf, csrf.conf.rendered, csrf.conf.template, each replacing with (rendered variant) of the next, if invalid configuration files

This proposed behavior would make:

the apiserver-kicker to regenerate certificates independent of any configuration and cluster state, in the case the certificates do not match the root CA
allow users to keep manually edited CSR config files to any "depth" they decide, by keeping or deleting/invalidating them

Are you interested in contributing with a fix?
yes ✔
I can provide a fix, as most of the proposed procedure has already been tested locally; CSR config and certificate validation are straight forward and possible to implement with likely negligible overhead in the apiserver-kicker.
Before providing code and a PR, I would like a review/discussion of the proposed fix, as well as the applied assumptions.

@ktsakalozos: PR has been submitted for review and discussion as #3820


Redirect Policy

I'd like to discuss what should happen on redirects, especially cross domain redirects using unsafe request methods.

After reading the OkHttp redirect handling code, this was probably the reason why I changed this. And given that, I'd like to keep the current behavior as default. We can introduce an additional option to follow also POST requests, but I think I don't want that to be the default.


test(robot): physical node reboot

Which issue(s) this PR fixes:

Issue longhorn/longhorn#8567
What this PR does / why we need it:
Automate manual test case physical node reboot
Special notes for your reviewer:
Additional documentation or context
Verified on local

Updated, also updated manual test case in 1924


Fix Trivy findings

Description
Fix Trivy scan finding on DockerFile against nginx image
https://github.com/eclipse-tractusx/vas-country-risk/issues/42
Pre-review checks
Please ensure to do as many of the following checks as possible, before asking for committer review:

[x] DEPENDENCIES are up-to-date. Dash license tool. Committers can open IP issues for restricted libs.
[x] Copyright and license header are present on all affected files

98aa894 fixes #45


[improve][client c++] Support KeyValue Schema.

Motivation
C++ client Support KeyValue Schema. For key and value schema, just only support AVRO and JSON type(consistent with java client).
Modifications

A new constructor is added in SchemaInfo to combine key and value schemas.
Add a new KeyValue class, to help users merge and parse key and value data.

Documentation
The current Schema documentation is relatively simple, I will open a new PR to add more content and sample code

[x] doc-required
(Your PR needs to update docs and you will update later)

@RobertIndie @BewareMyPower Thanks for the review, all suggestions have been fixed, PTAL.

/pulsarbot run-failure-checks

/pulsarbot run-failure-checks

/pulsarbot run-failure-checks

@BewareMyPower @RobertIndie Can you look at it again? Thanks.

Okay, I will review it soon.

I just thought again for the design of KeyValue. Currently, for a given Message object,

the key is stored in the MessageMetadata object (generated by ProtoBuf)
the value is stored in buffer, whose type is SharedBuffer

If the encoding type is SEPARATED, we can avoid the copy operation by just return the key and value to users.
Otherwise, i.e. the encoding type is INLINE, the data copy cannot be avoided, because both key and value are stored in buffer, we must split it into two byte arrays (std::string objects). But in this case, we can still expose the raw pointer of the value part.
For example, if the buffer is
0x00 0x00 0x00 0x01 0x61 0x00 0x00 0x00 0x01 0x62

The key is "a" (ASCII is 61), the value is "b" (ASCII is 62). Assuming the pointer to the first byte is p, we can return p + 9 as the pointer to the value and 1 as the length of the value.
Regarding the key, usually we assume the key is not too large, so the data copy of the key is accepted.
In addition, we don't need to expose the key value encoding type in KeyValue because we already store it in the schema.
enum class KeyValueEncodingType
{
    SEPARATED,

    INLINE
};

class KeyValueImpl;

class PULSAR_PUBLIC KeyValue {
   public:
    // Use move constructor to avoid data copy
    KeyValue(std::string&& key, std::string&& value);
    KeyValue(const Message& message);

    const std::string& getKey() const;

    const void* getData() const;

    size_t getLength() const;

    std::string getDataAsString() const;

   private:
    std::shared_ptr<KeyValueImpl> impl_;
};

The KeyValueImpl class should store the following two fields.
    std::string key_;
    SharedBuffer valueBuffer_;

We should encode the key_ and valueBuffer_ to the actual buffer in ProducerImpl::sendAsync because we can get the encoding type from the schema.

@BewareMyPower Thanks for your review. I took your suggestion to reduce the copying of data by modifying the API.

In addition, we don't need to expose the key value encoding type in KeyValue because we already store it in the schema.

I keep encoding type in KeyValue. Because if will remove it, will affect the API.
For example, when a user produces a message.
    // originally
    Message msg = MessageBuilder().setContent(keyValue).build();   // originally

    // after modification
    Message msg = producer.newMessageBuilder().setContent(keyValue).build();
    // or
    Message msg = MessageBuilder(schema).setContent(keyValue).build();

I keep encoding type in KeyValue. Because if will remove it, will affect the API.

The encoding type is already included in the schema, which is set in the producer or consumer internally from ProducerConfiguration or ConsumerConfiguration, why removing it will affect the API? We don't need to set schema on a MessageBuilder.

I keep encoding type in KeyValue. Because if will remove it, will affect the API.

The encoding type is already included in the schema, which is set in the producer or consumer internally from ProducerConfiguration or ConsumerConfiguration, why removing it will affect the API? We don't need to set schema on a MessageBuilder.

@BewareMyPower I thought of a way, but it's not very elegant.
I add method convert PayloadToKeyValue and convertKeyValueToPayload on MessageImpl class. When the consumer receives a message after, will invoke convert PayloadToKeyValue to convert payload to KeyValue, When the producer sends a message before, will invoke convert KeyValueToPayload to convert KeyValue to the payload. PTAL.

/pulsarbot run-failure-checks

Hi @shibd, I've completed my review except some details of tests, PTAL.

Hi @shibd, I've completed my review except some details of tests, PTAL.

@BewareMyPower Thanks for your review, I fixed it, PTAL.

Resubmit the PR in pulsar-client-cpp repository: https://github.com/apache/pulsar-client-cpp/pull/22


UnicodeDecodeError: 'ascii' codec can't decode

UnicodeDecodeError: 'ascii' codec can't decode byte 0xe1 in position 894: ordinal not in range(128)

UnicodeDecodeError                        Traceback (most recent call last)
 in ()
----> 1 ru_dictionary = FastVector(vector_file='train-Copy1.mn.model.vec')
2 fr_dictionary = FastVector(vector_file='train-Copy1.ch.model.vec')
3
4 ru_vector = ru_dictionary["ru"]
5 fr_vector = fr_dictionary["fr"]
/home/work/notebooks/fastText_multilingual/fasttext.py in init(self, vector_file, transform)
33         with open(vector_file, 'r') as f:
34             (self.n_words, self.n_dim) =
---> 35                 (int(x) for x in f.readline().rstrip('\n').split(' '))
36             self.embed = np.zeros((self.n_words, self.n_dim))
37             for i, line in enumerate(f):
/usr/local/python3/lib/python3.6/encodings/ascii.py in decode(self, input, final)
24 class IncrementalDecoder(codecs.IncrementalDecoder):
25     def decode(self, input, final=False):
---> 26         return codecs.ascii_decode(input, self.errors)[0]
27
28 class StreamWriter(Codec,codecs.StreamWriter):
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe1 in position 894: ordinal not in range(128

I know it's been a while since you asked this question, but the response seems to be found here:
https://github.com/babylonhealth/fastText_multilingual/issues/20.
Just change the line
with open(vector_file, 'r') as f:
to
with open(vector_file, 'r', encoding="utf8") as f:


Commad not found

Every iacursor's command I try from vsc (using Show all commands) give my an error
"Command 'CodeCursor: xxx' resulted in an error \n command 'aicursor.xxx' not found"
How can I hel to debug this ?
Thnaks for your time and work

same here, it seems that this extension is outdated

same here. In vscode, when I type "CodeCursor: Generate Code" in Command Palette, it shows "command: aicursor.generateCode" not found.

This is the first time I tried to shift copilot from cursor, hope you can fix the issue. Thanks!

same issue on VS Code (latest version by this date (2024-09-24)

same here

Downgrading vscode to 1.74.0 will solve these. 1.74.0 was the oldest version being supported listed in extension/package.json
    "engines": {
        "vscode": "^1.74.0"
    }


Fix #1805, Add test for ES BackgroundWakeup

Describe the contribution
Fixes #1805

Adds missing test for CFE_ES_BackgroundWakeup

Testing performed
Build and run cfe functional tests
Expected behavior changes
No impact to behavior
System(s) tested on

Hardware: PC
OS: Ubuntu 20.04

Contributor Info - All information REQUIRED for consideration of pull request
Niall Mullane - GSFC 582 Intern

CCB:2021-08-18 APPROVED

Check in with @jphickey about macros


Support signature help

Since some values in string are essentially functions, they should support signature help (ctrl+shift+space) to show what they accept:

For example on resourceId and parameters.

This does work, nvm.


Performance issue due to focus state in Safari

Not so much of an issue that needs fixing but it might be useful to mention in the docs:
While implementing a11y-dialog in a website I ran into a strange issue due to Safari’s user agent stylesheet. This is a fullscreen dialog, the dialog content spans the whole screen. As soon as the dialog opens focus is set on the dialog container. Safari applies user agent styles for the focus which then hinder the performance. For instance resizing the browser becomes very choppy. Also when you’ve applied animations to the dialog these don’t run and skip to the end immediately as Safari is struggling. The solution I’ve used to resolve this is to set .container:focus { outline: none}.

Hello, and thank you for opening an issue. I was wondering if you could create a small demo on CodeSandbox so I can play with it and try to diagnose it?
Thank you. 💖

I will do that!

I’ve set up a demo on codebase. While doing this I discovered a difference: in the Nextjs app that I’ve implemented the dialog in tabindex="-1" gets added to the container element but in the codebase demo this doesn’t happen. In the demo when opening the dialog the container element also doesn’t get focused like in the Nextjs app. I’m not sure why this difference occurs. Would you have an idea why this difference happens?
In any case in the demo app in Safari:

Open the dialog
Select the dialog container in the inspector
Check the :focus checkbox (see screenshot)
Resizing is choppy compared to the :focus being unchecked
Attempt resizing the window (while doing this you can also observe the cpu usage with Activity Monitor)

Hello! 👋
Brilliant catch, nicely done. Could you please test again with https://github.com/KittyGiraudel/react-a11y-dialog/releases/tag/6.1.4? I just published a fix that adds tabindex="-1". This was missing in the React port.

I’ve updated the codesandbox with v6.1.4: https://dbzvyy.csb.app When you now open the dialog in Safari and try to resize the window you should be able to observe the choppiness, especially when on a larger screen (also observe CPU usage with Activity Monitor.
Using the inspector add outline: none !important; to the dialog container element and try resizing the window again. The resizing should be smooth and CPU usage should be normal.
Again, I don’t think this needs a code change but it could use a mention somewhere in the docs, perhaps under styling.

I agree, with that. These are the styles that Safari adds:
:-internal-direct-focus {
  outline-color: -webkit-focus-ring-color;
  outline-style: auto;
  outline-width: 5px;
}

Perhaps the main culprit is -webkit-focus-ring-color and a solid color will work better.

I can confirm that redefining the outline like outline: 3px solid red; for instance also works fine.

Fascinating. I’ll try to confirm that on my end to see if you’re onto something. Can you share the exact Safari version (+ OS) so we compare our setups?

I’ve tested this in Safari Version 15.3 (176<IP_ADDRESS>.8)

So I’ve played a little bit with it and cannot seem to notice such a performance drain. Is there any chance you could create a short recording maybe? I might be doing something wrong with the reproduction. 😅

I’ll update the example with some animation (this is when I first noticed the issues with Safari) as it might demonstrate the issue a bit clearer.

Unfortunately I haven’t had the time to adjust the demo, I’m fine with closing the issue. Thanks for your time in any case 🙏🏻


fix: Fix metadata filter resource (box/box-openapi#419)

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

10 of 12 (83.33%)  changed or added relevant lines in 4 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.05%) to 89.07%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

box_sdk_gen/internal/utils.py
2
4
50.0%

Totals

Change from base Build<PHONE_NUMBER>:
0.05%

Covered Lines:
8581

Relevant Lines:
9634

💛  - Coveralls


It's possible to set a live time to the cache entries?¿

Yes you can, but you should implement this yourself to keep the library small and testable.
So you could use custom entries with two fields, one for live time, and the other to store you data. Using the decorator pattern, you could set the live time on put function and test the live time on get function.
BR


adding missing platforms

adding missing platforms in platformId.cpp and platformId.h

Do those platform names correspond to the names on thegamedb.com ?

Hi @digitalLumberjack , no they don't but nor do the existing ones according to:

e.g.: we have amstradcpc in PlatformId.cpp and

4914
Amstrad CPC
amstrad-cpc

On thegamesdb.
If it's really needed, I can fix the whole list to match tgdb but then I will have to also fix es_systems.cfg.
Up to you :)

@Supernature2k i close this one, could you create a new PR for the 4.1, with the system in GmaeDBScrapper as we saw the other day ? Thanks :)


Simple BBCode editor for RichTextLabel

A minimal bbcode editor for the active selected RichTextLabel node. A text-box to wrap selected text with tags: bold, italic, or color using the palette widget. The text box only needs to display the raw bbcode string.
No need to support detecting existing tags, removing or moving them. Undo is enough to start with. I'd rather like the tool to be ready soon and hopefully get other users to contribute eventually.
It should support shortcuts for the bold and italic functions. E.g. CtrlB to bold text.

Will this editor integrate with #23 ? Or will it also have its own palette widget?
I mean, shall it have #23 as a dependency somehow?

Yes, the idea is it should reuse the palette component. That's why in the palette's issue, I mentioned it shouldn't be hard-coded to set the modulate property of selected nodes but just be a component that returns a color.
By the way when I add "add-on" to the issue, you don't need each of them to be an individual add-on. I hadn't noticed you were doing that at first. We just need one add-on


[AIRFLOW-2539] OS Environment variable for logging FILENAME_TEMPLATE

Make sure you have checked all steps below.
JIRA

[X] My PR addresses the following Airflow JIRA issues and references them in the PR title. For example, "[AIRFLOW-XXX] My Airflow PR"

https://issues.apache.org/jira/browse/AIRFLOW-2359
In case you are fixing a typo in the documentation you can prepend your commit with [AIRFLOW-XXX], code changes always need a JIRA issue.

Description

[X] Here are some details about my PR, including screenshots of any UI changes:
First check if an OS environment variable is defined before falling back to the default FILENAME_TEMPLATE

Tests

[X] My PR adds the following unit tests OR does not need testing for this extremely good reason:

Commits

[X] My commits all reference JIRA issues in their subject lines, and I have squashed multiple commits if they address the same issue. In addition, my commits follow the guidelines from "How to write a good git commit message":

Subject is separated from body by a blank line
Subject is limited to 50 characters
Subject does not end with a period
Subject uses the imperative mood ("add", not "adding")
Body wraps at 72 characters
Body explains "what" and "why", not "how"

Documentation

[X] In case of new functionality, my PR adds documentation that describes how to use it.

When adding new operators/hooks/sensors, the autoclass documentation generation needs to be added.

Code Quality

[X] Passes git diff upstream/master -u -- "*.py" | flake8 --diff

Thanks @NielsZeilemaker for this change. My suggestion would be to this through the config:
https://airflow.readthedocs.io/en/latest/howto/set-config.html
This will allow us to set it both in the config, and using environment variables.
Cheers

@Fokko I agree, however there is this comment:
https://github.com/NielsZeilemaker/incubator-airflow/blob/94407ff9bdee35e70bd385fdc752066d87e83e2c/airflow/config_templates/airflow_local_settings.py#L24
Which seems to want to split the logging config and the configuration, and hence I implemented it in this manner. I don't agree with the TODO btw.

Codecov Report

Merging #3435 into master will decrease coverage by <.01%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master    #3435      +/-   ##
==========================================
- Coverage   76.68%   76.67%   -0.01%
==========================================
  Files         203      203
  Lines       15060    15060
==========================================
- Hits        11549    11548       -1
- Misses       3511     3512       +1

Impacted Files
Coverage Δ

airflow/config_templates/airflow_local_settings.py
83.33% <100%> (ø)
:arrow_up:

airflow/models.py
87.3% <0%> (-0.05%)
:arrow_down:

Continue to review full report at Codecov.

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

I am also leaning towards the idea of switching back to have logging config consolidated back into airflow config. From my observation, the separation seems to have caused quite a bit of confusion since it was implemented.
I recall the original intention of separating logging config and airflow config is to provide more tunable configs on the handler level.  However the handler configs actually are not quite flexible in airflow. For example, the way logging currently works in airflow requires root logger to set the handler to console/stdout so that task handler can pick them up. Another reason is that any logging configurations does not allow them to be set via environment variables. Finally, webserver/scheduler logging config also follow a different pattern (use a separate config filepath that can be passed in the terminal when starting the webserver/scheduler). So right now technically we have 3 ways of configuring logging.
It would be more useful to move the common configs back to airflow.cfg. We could still potentially keep the airflow_local_settings.py to provide advanced logging config, but warn user that they should  'modify only if they know what they are doing' kinda thing.

My suggestion would be to modify the 'configuration.get' such that it accepts a default value, and hence we could use:
FILENAME_TEMPLATE = conf.get('core', 'LOGGING_FILENAME_TEMPLATE', default_value='{{ ti.dag_id }}/{{ ti.task_id }}/{{ ts }}/{{ try_number }}.log')

I'm okay with this for now, just think at some later point we could make logging more intuitive. @Fokko ?

I talked to @fokko today, and he suggested moving tge default_value into the configuration file and keeping the configuration.get method as it is now. I'll update the pull request with these changes.

Yes, logging is still an issue. Now again with the Kubernetes executor we need to rework it again. Would be nice to find a more robust way of logging.
Getting it from the config instead of the environment variable, allows us to have at least one single way of setting the variabele.

I've moved all global settings from the logging_config to the configuration file and added a section to the upgrading.md.

@Fokko any remarks on this PR?

@jgao54 any comments one this pr?


Adding hooks to mkdocs.yml causes the build to fail.

https://www.mkdocs.org/user-guide/configuration/#hooks
mkdocs.yml
plugins:
  - i18n:
      default_language: ja
      languages:
        en:
          name: English
          site_name: Site Name
        ja:
          name: 日本語
      nav_translations:
        en:
          よくある質問（FAQ）: FAQ

hooks:
  - hooks.py

version: 0.50
https://github.com/ultrabug/mkdocs-static-i18n/blob/main/mkdocs_static_i18n/plugin.py#L226
Traceback (most recent call last):
  File "C:\Users\user-name\AppData\Local\Programs\Python\Python39\lib\site-packages\mkdocs\commands\build.py", line 270, in build
    config = config.plugins.run_event('config', config)
  File "C:\Users\user-name\AppData\Local\Programs\Python\Python39\lib\site-packages\mkdocs\plugins.py", line 520, in run_event
    result = method(item, **kwargs)
  File "C:\Users\user-name\AppData\Local\Programs\Python\Python39\lib\site-packages\mkdocs_static_i18n\plugin.py", line 226, in on_config
    self.i18n_configs[language] = deepcopy(config)
  File "C:\Users\user-name\AppData\Local\Programs\Python\Python39\lib\copy.py", line 172, in deepcopy
    y = _reconstruct(x, memo, *rv)
  File "C:\Users\user-name\AppData\Local\Programs\Python\Python39\lib\copy.py", line 270, in _reconstruct
    state = deepcopy(state, memo)
  File "C:\Users\user-name\AppData\Local\Programs\Python\Python39\lib\copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "C:\Users\user-name\AppData\Local\Programs\Python\Python39\lib\copy.py", line 230, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "C:\Users\user-name\AppData\Local\Programs\Python\Python39\lib\copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "C:\Users\user-name\AppData\Local\Programs\Python\Python39\lib\copy.py", line 230, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "C:\Users\user-name\AppData\Local\Programs\Python\Python39\lib\copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "C:\Users\user-name\AppData\Local\Programs\Python\Python39\lib\copy.py", line 230, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "C:\Users\user-name\AppData\Local\Programs\Python\Python39\lib\copy.py", line 161, in deepcopy
    rv = reductor(4)
TypeError: cannot pickle 'module' object

Thanks for reporting this @try0 ; it's true that I have not tested this plugin with the latest mkdocs features so there might be quirks :(

The fix is on its way and will be available in version 0.51 @try0

@ultrabug
Thanks for the fix.
I will try to update and build our documents.
ありがとうございました！

どういたしまして！


refactor(semantic): simplify getting AstNodeIds for CFG

Remove ast_node_records, and the functions that push and pop it, from SemanticBuilder.
The purpose of that apparatus is to do something quite simple - get the AstNodeId of an Expression from its parent, for the control flow graph (CFG). As nodes are created in order, a simpler way to do this is to get what the next AstNodeId will be before visiting the Expression.
This implementation has to work around a current shortcoming with IndexVec - converting Nodes::len() to an AstNodeId involves a panicking bounds-check, which adds overhead even when CFG is disabled. So for now get_next_node_id returns the "id" as a u32, and we convert it to AstNodeId only after the node has been created, which guarantees that the u32 is a valid AstNodeId (not out of bounds), because IndexVec::push also performs that same bounds check.
If we implement https://github.com/oxc-project/backlog/issues/109, get_next_node_index could become get_next_node_id and return an AstNodeId, and the unsafe code could be removed.

#5674  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @overlookmotel and the rest of your teammates on  Graphite

This is showing on benchmarks as a 1% perf regression. This is surprising, as the code is doing less, not more. Possibly reducing the amount of code in some functions has caused compiler to make different decisions about inlining, and those decisions aren't as good as before. 🤷
The benchmarks have CFG disabled. I strongly suspect this would be a speed-up when CFG is enabled.

Close as stale.

Reopening just to check benchmarks of this rebased on latest main. I found it surprising originally that this did not have a positive effect.

Nope. Still -1% on all semantic benchamrks.


Added ability to hide the secondary button in the SQFormDialog

UX has requested we offer a way to hide the secondary button to enforce users to take an action in a dialog.
Closes: #482
Loom: https://www.loom.com/share/3469d74003e5468991249b27f832d4ef

Code looks good. Commit doesn't follow the conventional commit pattern which means this code wouldn't be released to NPM

Ahhh yes.  It has been a while.  Let me spin up an enhancement/new feature commit

@Chris-Boyle This is a reminder to myself to communicate this to the frontend-devs channel so everyone knows going forward.
Whenever we enhance a component we need to add a test(s) for our enhancement.
For this component: https://github.com/SelectQuoteLabs/SQForm/blob/master/stories/tests/SQFormDialog.stories.test.js
Looking at the existing tests, i'm a little concerned about a bug I didn't think about. I believe if the user hits the escape key the modal will still close even if we have this prop set to false.
We should write a test for this, and fix the code if needed.
We should also write a quick test that the close button does NOT render when our new prop is set to false.


Make a better main screen.

It should have:

The title of the game (first, the game needs a title, but I can't be arsed),
"New game" button that starts a fresh game and makes a saveN.uwu file (N is no. of the save),
"Load game" button that loads an existing save from a selected file.

Main screen is better now, loading an existing save file is a feature that I don't plan on adding for now.


PMLEN=16 with Sv57

Is it allowed for Sv57 to be used with PMLEN=16? The transformed address given in section 2.2 only defines the new effective address in terms of XLEN and PMLEN.

Yes, it is allowed if PMLEN=16 is supported by the hardware. However, it is not expected to be mandatory in the profiles, and so it may not be supported on all implementations. The transformation itself is independent of the address translation mode (i.e., Sv57, Sv48, etc.).

Thanks


[GSSoC'23] URL Shortening

Aim

To shorten long URLs so that it is easier for users to type/remember them

Details

The user can enter a URL and the script will return a shorter URL that references the same destination.

Hi @avinashkranjan, I'd like to work on this. Please assign it to me.

I am good at machine learning and had developed lots of machine learning projects, so adding this feature is not a big task for me. so please assign me this and I am also a GSSOC 2023 contributor.

Go Ahead @swetha3456


Simple export / import isn't working

Giving this a test-drive, and trying to to basic import / export, and it's not working out.
// types/TestType.js
export type TestType = {
  foo: string,
  bar: string
};

// test.js
import type {
  TestType
} from 'types/TestType';

const test: TestType = {
  foo: 'foo',
  bar: 'bar'
};

throws this error:
Uncaught TypeError: TestType is not a function

Am I missing something? This seems so rudimentary, and based on the documentation it looks like this should be working.

It should definitely work, please paste your babelrc

Nope, I'm an idiot, figured it out soon as you said to check the .babelrc. I did theonly declaration, and was doing the @typecheck comment declaration in the file that was importing the type, but not in the file that was exporting the type. My bad, closing.


⚠ Turnos 24x7 has degraded performance

In 71e0f5f, Turnos 24x7 (https://reservas-dev.alternativasinteligentes.com/) experienced degraded performance:

HTTP code: 200
Response time: 1827 ms

Resolved: Turnos 24x7 performance has improved in 09c7ada.


Bump version for PropTypes

When you removed the deprecated API PropTypes a version bump would be helpful. Had to do
yarn remove rrx
yarn add rrx

go get latest changes.

Btw this lib is awesome, good job so far :1st_place_medal:


Add fixes for validated GTT Objects

This recipe fixes the GTT MHT discrepancy (including a phi range issue, fixing a wraparound past +pi to be in [-pi, 0) instead), as well as a number of other issues with hw values stored for GTT Objects, and adds fields for the Extended TrackJets. In conjunction with https://github.com/cms-l1t-offline/cmssw/pull/1217 and https://github.com/cms-sw/cmssw/pull/44334, there should be agreement on the data members stored for almost all these objects (the above PRs only affect the hwZ0 and hw(Sum)Pt of the TrackJets and Vertices; float values should be unperturbed).

I think all comments are addressed currently

Merged though I would like to still understand this et<>pt: https://github.com/cms-l1-dpg/Phase2-L1Nano/pull/21#discussion_r1520276996

I committed that locally but forgot to push upstream
diff --git a/python/l1tPh2Nanotables_cff.py b/python/l1tPh2Nanotables_cff.py
index 8740bf9..281340a 100644
--- a/python/l1tPh2Nanotables_cff.py
+++ b/python/l1tPh2Nanotables_cff.py
@@ -63,7 +63,7 @@ gttEtSumTable = cms.EDProducer(
     singleton = cms.bool(True), # the number of entries is variable
     variables = cms.PSet(
         # as in https://github.com/cms-l1t-offline/cmssw/blob/phase2-l1t-integration-14_0_0_pre3/L1Trigger/L1TTrackMatch/interface/L1TkEtMissEmuAlgo.h#L50
-        pt = Var("hwPt() * 0.03125", float, doc = "Track MET"),
+        pt = Var("et", float, doc = "Track MET"),

ok, pushed that directly here: https://github.com/cms-l1-dpg/Phase2-L1Nano/commit/8278525cd0312d007f02b3982caeece15c9e5f8a

Perfect, thanks Artur!


JSON decoding bugfix and other small improvements

Sometimes the Aftership API can send an erroneous response which causes a ValueError to be thrown. It's preferable for clients to only have to catch an aftership.APIRequestException.
Other changes are small tweaks that makes the SDK a bit more useful.

@russelldavies thanks, merged

@russelldavies I'd like to follow up.
After merge I've reviewed the logic again and found it breaks parsing of errors returned by API (e.g. invalid API key). So I've changed it again (keeping correct handling of JSON decode fails).
Also your changes to APIRequestException ensures that error object interfaces would work if input is either error object (dict) or string. However it doesn't cover the case if object with unexpected format is passed. So I've changed this part also.
Code: https://github.com/AfterShip/aftership-python/blob/master/aftership/init.py
Update published to PyPI: https://pypi.python.org/pypi/aftership/0.2
Thanks again!

@korshunov Great, thanks.


[Timestamp] Use microsecond precision to support full range of BigQuery timestamps

We were previously encoding / decoding timestamp values using nanoseconds, which only covers a partial range of the supported timestamps as we hit the lowest / highest allowed int64 values more quickly.
Since BigQuery only supports microsecond precision, this switches us to it.
Closes #132

Codecov Report

Merging #133 (0e370ff) into main (7d3a82f) will increase coverage by 0.02%.
The diff coverage is 91.66%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #133      +/-   ##
==========================================
+ Coverage   45.82%   45.84%   +0.02%
==========================================
  Files          47       47
  Lines       17800    17802       +2
==========================================
+ Hits         8156     8161       +5
+ Misses       8182     8180       -2
+ Partials     1462     1461       -1

Thank you for your contribution ! LGTM 👍


Added 'react-d3-components' and it broke my app

This may just be because the library is for web, but I was trying to use it in conjunction with react-native-svg. That parts fine but the error was peculiar.

Better suited for the react-native-svg issues :smile: feel free to open there


fix: hold runtime ref and handle to prevent spawn after shutdown

What's changed and what's your intention?

Please explain IN DETAIL what the changes are in this PR and why they are needed. :D

As title.
Checklist

[x] I have written the necessary rustdoc comments
[x] I have added the necessary unit tests and integration tests
[x] I have passed make all (or make fast instead if the old tests are not modified) in my local environment.

Related issues or PRs (optional)
fix #735

Wait for https://github.com/risingwavelabs/risingwave/pull/18652 to pass.

This PR fixed the bug. But there is performance regression. Let me check why.

Make it back to normal. It is because the disk io was not using dedicated foyer runtime, which is a bug. After this PR fixed it, the --read/write--runtime-max-blocking-thread works and limited the threads count to a low number and limited the performance. After removing the option from foyer-bench, the performance looks fine.

The new benchmark command:
cargo build --release --features jemalloc && PATH=/home/mrcroxx/.local/bin:$PATH RUST_BACKTRACE=1 RUST_LOG=info flamegraph -- ./target/release/foyer-bench --file /dev/nvme2n1 --mem 64MiB --disk 100GiB --region-size 64MiB --get-range 100000 --flushers 4 --reclaimers 4 --time 60 --writers 256 --w-rate 4MiB --admission-rate-limit 500MiB --readers 32 --r-rate 32MiB --metrics --warm-up 2 --runtime separated --user-runtime-worker-threads 8 --read-runtime-worker-threads 8 --write-runtime-worker-threads 4


How to share visitor logic?

In the docs, I see a clear way to share grammar rules via inheritance. When doing that, if I am using the visitor pattern, how do I share visitor logic?

A Visitor is a fairly regular ECMAScript class. Unlike a Chevrotain Grammar which requires many additional data structures and other artifacts which are computed during initialization.
So you should be able to re-use Visitor Logic via plain inheritance.
Perhaps you will need to disable the visitor validation utils for this to work though...

In the examples, the visitor inherits const BaseSQLVisitorWithDefaults = parserInstance.getBaseCstVisitorConstructorWithDefaults(). So are you suggesting that you don't do that?

So are you suggesting that you don't do that?

No, you still need to to call one of the two getBaseCSTVIsitorConstructor() methods in order to get the base class to extend.
But you could then have an inheritance chain or even mix in handler methods from anywhere (as this is JavaScript).
The CST Visitor APIs need to be improved...

See: https://github.com/SAP/chevrotain/issues/1039

If you can write a small dummy example (e.g gist/repo/pr) that demonstrates the re-use scenario
you are interested in perhaps I could hack a demo solution...


changefeed slow or stucks when injecting kafka failure

What did you do?

CDC sync to Kafka cluster which has 3 Kafka node
When injection kafka failure, different results seen:

test 1: run big-table workload (QPS:10k) + 4k-table => big-table checkpont adances slows and lag keeps increasing.

test 2: run big-table workload (QPS 10K) => lag OK except a spike of 30s

for test 1 & 2, cdc version:
[root@tc-ticdc-0 /]# /cdc version
Release Version: v7.1.0-test
Git Commit Hash: 41d966c2a72362c52ce18cc8b113bbf38638f683
Git Branch: heads/refs/tags/v7.1.0-test
UTC Build Time: 2023-06-01 05:29:29
Go Version: go version go1.20.3 linux/amd64
Failpoint Build: false

test3:  run workload big-table (40k) + sysbench => big-table changefeed stucks, and doesn't recover after chaos injection is ended.

for test3, cdc version:
[root@tc-ticdc-0 log]# /cdc version
Release Version: v7.1.0
Git Commit Hash: 6330ad2bd1a243bf1446bf4fb5f0c49fb5322e57
Git Branch: heads/refs/tags/v7.1.0
UTC Build Time: 2023-05-29 10:50:30
Go Version: go version go1.20.3 linux/amd64
Failpoint Build: false

What did you expect to see?

changefeed should not stuck when there is kafka leader.

What did you see instead?

cdc checkpoint advance might unexpectedly slow or totally stucks
When kafka error restores, cdc log still report logs like:

[2023/06/02 17:43:04.303 +08:00] [WARN] [admin.go:100] ["query kafka cluster meta failed, retry it"] [namespace=default] [changefeed=big-table] [error="kafka: tried to use a client that was closed"]
[2023/06/02 17:43:04.304 +08:00] [WARN] [metrics_collector.go:96] ["Get Kafka brokers failed, use historical brokers to collect kafka broker level metrics"] [namespace=default] [changefeed=big-table] [role=processor] [duration=125.731154ms] [error="[CDC:ErrReachMaxTry]reach maximum try: 3, error: kafka: tried to use a client that was closed: kafka: tried to use a client that was closed"] [errorVerbose="[CDC:ErrReachMaxTry]reach maximum try: 3, error: kafka: tried to use a client that was closed: kafka: tried to use a client that was closed\ngithub.com/pingcap/errors.AddStack\n\tgithub.com/pingcap/errors@v0.11.5-0.20221009092201-b66cddb77c32/errors.go:174\ngithub.com/pingcap/errors.(*Error).GenWithStackByArgs\n\tgithub.com/pingcap/errors@v0.11.5-0.20221009092201-b66cddb77c32/normalize.go:164\ngithub.com/pingcap/tiflow/pkg/retry.run\n\tgithub.com/pingcap/tiflow/pkg/retry/retry_with_opt.go:69\ngithub.com/pingcap/tiflow/pkg/retry.Do\n\tgithub.com/pingcap/tiflow/pkg/retry/retry_with_opt.go:34\ngithub.com/pingcap/tiflow/pkg/sink/kafka.(*saramaAdminClient).queryClusterWithRetry\n\tgithub.com/pingcap/tiflow/pkg/sink/kafka/admin.go:92\ngithub.com/pingcap/tiflow/pkg/sink/kafka.(*saramaAdminClient).GetAllBrokers\n\tgithub.com/pingcap/tiflow/pkg/sink/kafka/admin.go:130\ngithub.com/pingcap/tiflow/pkg/sink/kafka.(*saramaMetricsCollector).updateBrokers\n\tgithub.com/pingcap/tiflow/pkg/sink/kafka/metrics_collector.go:94\ngithub.com/pingcap/tiflow/pkg/sink/kafka.(*saramaMetricsCollector).Run\n\tgithub.com/pingcap/tiflow/pkg/sink/kafka/metrics_collector.go:85\nruntime.goexit\n\truntime/asm_amd64.s:1598"]
[2023/06/02 17:43:04.307 +08:00] [WARN] [admin.go:100] ["query kafka cluster meta failed, retry it"] [namespace=default] [changefeed=big-table] [error="kafka: tried to use a client that was closed"]
[2023/06/02 17:43:04.308 +08:00] [WARN] [metrics_collector.go:96] ["Get Kafka brokers failed, use historical brokers to collect kafka broker level metrics"] [namespace=default] [changefeed=big-table] [role=processor] [duration=97.156122ms] [error="[CDC:ErrReachMaxTry]reach maximum try: 3, error: kafka: tried to use a client that was closed: kafka: tried to use a client that was closed"] [errorVerbose="[CDC:ErrReachMaxTry]reach maximum try: 3, error: kafka: tried to use a client that was closed: kafka: tried to use a client that was closed\ngithub.com/pingcap/errors.AddStack\n\tgithub.com/pingcap/errors@v0.11.5-0.20221009092201-b66cddb77c32/errors.go:174\ngithub.com/pingcap/errors.(*Error).GenWithStackByArgs\n\tgithub.com/pingcap/errors@v0.11.5-0.20221009092201-b66cddb77c32/normalize.go:164\ngithub.com/pingcap/tiflow/pkg/retry.run\n\tgithub.com/pingcap/tiflow/pkg/retry/retry_with_opt.go:69\ngithub.com/pingcap/tiflow/pkg/retry.Do\n\tgithub.com/pingcap/tiflow/pkg/retry/retry_with_opt.go:34\ngithub.com/pingcap/tiflow/pkg/sink/kafka.(*saramaAdminClient).queryClusterWithRetry\n\tgithub.com/pingcap/tiflow/pkg/sink/kafka/admin.go:92\ngithub.com/pingcap/tiflow/pkg/sink/kafka.(*saramaAdminClient).GetAllBrokers\n\tgithub.com/pingcap/tiflow/pkg/sink/kafka/admin.go:130\ngithub.com/pingcap/tiflow/pkg/sink/kafka.(*saramaMetricsCollector).updateBrokers\n\tgithub.com/pingcap/tiflow/pkg/sink/kafka/metrics_collector.go:94\ngithub.com/pingcap/tiflow/pkg/sink/kafka.(*saramaMetricsCollector).Run\n\tgithub.com/pingcap/tiflow/pkg/sink/kafka/metrics_collector.go:85\nruntime.goexit\n\truntime/asm_amd64.s:1598"]

Versions of the cluster
TiCDC version (execute cdc version):
[root@tc-ticdc-0 log]# /cdc version
Release Version: v7.1.0
Git Commit Hash: 6330ad2bd1a243bf1446bf4fb5f0c49fb5322e57
Git Branch: heads/refs/tags/v7.1.0
UTC Build Time: 2023-05-29 10:50:30
Go Version: go version go1.20.3 linux/amd64
Failpoint Build: false

/severity major

The topic of the big table couldn't work during the failure injected ,so the lag keep increasing.

/close


Update - Wanted to update my current to updated version. Best way?

⚠ Please verify that this bug has NOT been raised before.

[X] I checked and didn't find similar issue

🛡 Security Policy

[X] I agree to have read this project Security Policy

📝 Describe your problem
Hello,
Wanted to ask the community or pros about this... Whats the best way to update the version to the latest?
I am running this off my Ubuntu VM box directly... Was wondering what the best way to update to the latest version.
Not on a docker....
🐻 Uptime-Kuma Version
Latest
💻 Operating System and Arch
Ubuntu 20
🌐 Browser
edge, chrome
🐋 Docker Version
No response
🟩 NodeJS Version
No response

There is a wiki for that 😉  : https://github.com/louislam/uptime-kuma/wiki/🆙-How-to-Update
Make sure you backup your data beforehand, in case something goes wrong.


Restarting debugging fails (inconsistently)

VSCode Version: 1.44.2
OS Version: Windows 10, Linux SSH

Steps to Reproduce:

Use remote SSH to Linux server
Debug some big Python code (TensorFlow, NVidia GPU, large amounts of RAM, etc. etc.)
Decide to restart Debugging (e.g., on exception, on breakpoint, ...)

This often works, but sometimes simply fails. Then, Restart has the same effect as Stop.

Does this issue occur when all extensions are disabled?: No (but irrelevant, I need the Python extension)
I get this error log:
  ERR timeout after 1000 ms: Error: timeout after 1000 ms
    at t.RawDebugSession.handleErrorResponse (file:///C:/Users/bers/AppData/Local/Programs/Microsoft VS Code/resources/app/out/vs/workbench/workbench.desktop.main.js:3044:67)
    at file:///C:/Users/bers/AppData/Local/Programs/Microsoft VS Code/resources/app/out/vs/workbench/workbench.desktop.main.js:3043:339
    at async t.RawDebugSession.shutdown (file:///C:/Users/bers/AppData/Local/Programs/Microsoft VS Code/resources/app/out/vs/workbench/workbench.desktop.main.js:3041:336)
    at async e.terminate (file:///C:/Users/bers/AppData/Local/Programs/Microsoft VS Code/resources/app/out/vs/workbench/workbench.desktop.main.js:6272:211)
    at async e.restartSession (file:///C:/Users/bers/AppData/Local/Programs/Microsoft VS Code/resources/app/out/vs/workbench/workbench.desktop.main.js:6299:430)

Can I increase this timeout somehow to investigate whether it's just a timing issue?

@bersbersbers you can change this 1000 to any other number here
https://github.com/microsoft/vscode/blob/15e13c94c8dbc05e0e4b61424d0ed4bc6b10bff1/src/vs/workbench/contrib/debug/browser/rawDebugSession.ts#L494
Just for experiment: you can look at the minified sources of vscode, saerch for 'disconnect' and change the 1000 after it. That should hopefully change it.

@isidorn, thanks! I tracked down the code in C:\Users\bers\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\workbench.desktop.main.js. In this file, I found try{await this.send("disconnect",{restart:t},void 0,1e3)} and changed 1e3 to 1e4.
My installation of VS Code is now unsupported, but that is fine. The problem has not re-appeared since. I still may need a couple of hourse or days to confirm it's gone, will get back to you here.

@bersbersbers ok. We can increase that timeout to 2000 by default. And if that does not fix it we might introduce a setting (which I would personally not like).

@isidorn we have to be careful when changing the timeout of a disconnect, because it affects your "restart" logic both for normal debugging and EH debugging (where old sessions and new sessions might overlap and you keep things around in some maps).
Maybe another option could be to swallow the timeout silently?

Maybe another option could be to swallow the timeout silently?

A short update from me: setting the timeout to 10s fixed the issue for me. Setting it to 2s still seemed to be insufficient sometimes. This whole thing fits into the larger scheme of me using an ordinary laptop (Dell E6440) and SSH remoting over VPN, where other timing-based issues are frequently arising. For example, https://github.com/microsoft/vscode-python/issues/9393; or, very similarly, switching the debug configuration shortly after pressing F5, in which case also the new debug configuration is (incorrectly) started.
So anything that helps avoid these timing-based behavior would certainly be appreciated ;)

I am affected by this when debugging a C++ program on a machine in my local network.
I haven't encountered any other timing issues.


upgrading ember-diff-attrs

Thank you for this component! Very helpful.
I'm not really sure how it happened but<EMAIL_ADDRESS>relies on<EMAIL_ADDRESS>which isn't listed in their tags.
I'm just updating the ember-diff-attrs dependencies here to v0.2.1 which relies on<EMAIL_ADDRESS>

Hi @dadleyy, great job discovering this issue. Thank you for contributing the fix!


Migrate page types

Replace Audio Loop Page with Atmo
Turn background_video pages into background_image pages

Coverage remained the same at 99.026% when pulling 310a70205e8c3f529e3803280b9fdfe214ec0ed4 on tf:migrate-page-types into 8bd02b6beeec74929c2b0411f7eb9f3ac7503360 on codevise:master.

Coverage remained the same at 99.026% when pulling 310a70205e8c3f529e3803280b9fdfe214ec0ed4 on tf:migrate-page-types into 8bd02b6beeec74929c2b0411f7eb9f3ac7503360 on codevise:master.


Waifu2x crashing after selecting and startingtransparent images

Hello, Previously it was working but as of late, It kept crashing.
Model: UpRGB
Convertion Mode: Denoise Only
Denoise Level: 3
Split size: Default, but it works for any

Sample image
It seems to load into memory first, eating about 1GB before crashing.
There wasn't any indication that it crashed but it just closes on its own.

你好，是软件版还是网页版

是软件版。// It's the Software version of waifu2x.

okok，我用不了软件版，抱歉没法解答

没关系，谢谢。


Added Picsart Creative APIs to the Art & Design section

[ x] My submission is formatted according to the guidelines in the contributing guide
[ x] My addition is ordered alphabetically
[x ] My submission has a useful description
[x ] The description does not have more than 100 characters
[x ] The description does not end with punctuation
[x ] Each table column is padded with one space on either side
[x ] I have searched the repository for any relevant issues or pull requests
[x] Any category I am creating has the minimum requirement of 3 items
[x ] All changes have been squashed into a single commit

quite helpful


[vsock] refactor VhostUserVsockThread worker

Summary of the PR
For now, VhostUserVsockThread uses thread pool executor from futures, but it doesn't need to use thread pool executor and futures because we just need background worker thread, and a way to let it work.
So I removed unnecessary external dependency and made the logic simpler by using just thread and channel
Requirements
Before submitting your PR, please make sure you addressed the following
requirements:

[ V ] All commits in this PR are signed (with git commit -s), and the commit
message has max 60 characters for the summary and max 75 characters for each
description line.
[ V ] All added/changed functionality has a corresponding unit/integration
test.
[ V ] All added/changed public-facing functionality has entries in the "Upcoming
Release" section of CHANGELOG.md (if no such section exists, please create one).
[ V ] Any newly added unsafe code is properly documented.

@ikicha thanks for the PR. Here some comments.
Does this change also improve performance?
I like that we reduce dependencies, but I honestly found the previous implementation easier to read. The only thing I didn't like was the duplication of code, which we could fix anyway.
Now with this change IIUC, each device creates a new thread that manages the packages.
Going back with the previous implementation, since we now support multiple devices at the same time, could we think about having a single ThreadPool for the entire application with a view to reducing resource consumption? (Of course we could have a new option to allow the user to decide the size of the pool.)

@ikicha thanks for the PR. Here some comments.
Does this change also improve performance?

TBH, I think it is almost the same. (might be slightly better because we don't uses thread pool executor's state management logic...)

If you can run some performance test will be great.

Guest: dd if=/dev/zero bs=100M count=10 | ncat --vsock 2 1234
Host: nc -l -U /tmp/vm4.vsock_1234 > /dev/null
I don't see difference between them.(it's around 450MB/s for now)

I like that we reduce dependencies, but I honestly found the previous implementation easier to read. The only thing I didn't like was the duplication of code, which we could fix anyway.
Now with this change IIUC, each device creates a new thread that manages the packets.

I think the count of threads is the same. As-is: a device has their own thread pool executor of which pool size is 1 To-be: a device has their own thread.

Yep, I agree on that. It was a premise for the next paragraph :-)

Going back with the previous implementation, since we now support multiple devices at the same time, could we think about having a single ThreadPool for the entire application with a view to reducing resource consumption? (Of course we could have a new option to allow the user to decide the size of the pool.)

Maybe we can use a single thread to handle every event in the entire application, but I am hesitated about multiple thread because IIUC the order of the packet is important, isn't it?

How the order will be impacted in that case? The order should be important, but just for a single device point of view. I mean, a device should always process its packets in order, but multiple devices can overlap IMHO.

It's okay with current impl.
But, I was talking about a global thread pool of which size is more than 1. In this case, it could be multiple thread handles packets which comes from the same device, and without additional lock mechanism, the order might be the problem.

And also, with regard to thread pool impl(and if we decide to use thread pool), I think tokio looks good over futures-executor because it's more popular, and efficient, and support epoll event(we can replace epoll listener with that). But it might be big change, so we might do that in the future if there is a performance issue.

Got it, thanks for the details.

We usually try to avoid in the same PR to add code in one commit and modify it in subsequent ones unless strictly necessary for bisectability or other reasons. In this case I think you can merge everything into one commit.

Squashed the commits into just one commit.

@vireshk , can you review this PR? It looks like it needs 2 approvals to merge this.


m73 cluster not supported

Dear Sir!
NewBeetle cluster not supported, readed it but security area empty (00) :-(
Can umake support for it ? I can read the cpu if it helps.
regards
kerekt
KW1281Test: Yesterday's diagnostics...Today.
Version 0.74-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM1 9600 17 ReadIdent
OSVersion: Microsoft Windows NT 10.0.19044.0
.NET Version: 6.0.2
Culture: en-US
Opening serial port COM1
Sending wakeup message
Wakeup duration: 2 seconds
Reading sync byte
Keyword Lsb $01
Keyword Msb $8A
Protocol is KW 1281 (8N1)
ECU: 1C0920840C  KOMBI+WEGFAHRS. M73 V05
Software Coding 01112, Workshop Code: 00000
Sending ReadIdent block
Ident: WVWZZZ1YZ4M323266     VWZ5Z0C7261289
Sending EndCommunication block
eeprom.zip

I don't have access to test a cluster running that software so I don't know what went wrong. Is this a diesel car? Can you try the DumpEdc15Eeprom with baud rate 9600? If you have an EDC15 and if it's Immobilier version 3 then you can get the SKC from the EDC15.

Its immo3 cluster with petrol engine 2.0i, maybe motronic  me7.
I can dump internal D and P flash from hc12 cpu if it help.

Sure, it might help, so if it's not a lot of trouble, please do. May I ask what method you're using to dump the flash? I ask because I haven't managed to dump the flash from these myself (or maybe I've only dumped the region that contains the SKC).

I readed the internal flash and  eeprom from the mc912dg128a cpu. SKC i found.
Can u add obd support for this type of dashboard?
i can test it today
NB_1C0920840C_Dumps.zip

Thanks for the dumps! How did you get them (hardware device or software program via OBD connector)?
I've uploaded a test version. It's not ready for general use, but could please download it and run a command for me? It will help me figure out how the memory areas are arranged in your cluster.
Here is the release: https://github.com/gmenounos/kw1281test/releases/tag/v0.75-alpha
The command is:
.\kw1281test COM1 9600 17 DumpMarelliMem 8208 3
Then please upload the dump file that is created (marelli_mem_$2010.bin).
Thanks!

Its readed with hardware device Xprog-m (mine is original but china copy around 60$ do the same) , 4 wires soldered to internal BDM connector.
Unfortunatly car gone yesterday, i cannot test it, but soon as i have same car, test will follow and will report here.
Check pictures
pic.zip

That's the same memory layout as my 1C0920921G Immo3 cluster. You should be able to dump the entire EEPROM with this command:
.\kw1281test.exe COM1 9600 17 DumpMarelliMem 14336 2048

thank you!
which version should i use ? v0.75 or v0.74 ?

https://github.com/gmenounos/kw1281test/releases/tag/v0.75-alpha

You were able to dump the EEPROM and the SKC was there this time?

i dont think so, car's owner move to next country, not come back anymore.


ecp.c no longer builds with Microsoft Visual Studio

Description

Type: Bug
Priority: Blocker

Bug
OS
Windows
mbed TLS build:
Version: 169712e15ac142412063d3fcae1894ac9e7e9e6c
Configuration: default
Compiler and options (if you used a pre-built binary, please indicate how you obtained it):
Microsoft Visual Studio versions 2013, 2015, and 2017 when building Release or Debug builds with CMake
When building the following warning are generated, which are treated as errors and fail the build:
         ecp.c
    52>C:\builds\ws\mbedtls-release\worktrees\tmp19i7oxoy\library\ecp.c(1583): error C2220: warning treated as error - no 'object' file generated [C:\builds\ws\mbedtls-release\worktrees\tmp19i7oxoy\cmake_solution\library\mbedcrypto.vcxproj]
    52>C:\builds\ws\mbedtls-release\worktrees\tmp19i7oxoy\library\ecp.c(1583): warning C4267: 'function' : conversion from 'size_t' to 'unsigned int', possible loss of data [C:\builds\ws\mbedtls-release\worktrees\tmp19i7oxoy\cmake_solution\library\mbedcrypto.vcxproj]
    52>C:\builds\ws\mbedtls-release\worktrees\tmp19i7oxoy\library\ecp.c(1620): warning C4267: 'function' : conversion from 'size_t' to 'unsigned int', possible loss of data [C:\builds\ws\mbedtls-release\worktrees\tmp19i7oxoy\cmake_solution\library\mbedcrypto.vcxproj]

This was introduced by non-blocking ECC support.

Fixed with the merge of #2142.


[2484] Add access request approval

Context
As part of getting rid of the support console we need to move the access functionality here.
Changes proposed in this pull request
Add access request listings and approvals.
Guidance to review
Also adds some additional pages from the legacy support console that are currently not in use but will be either used or deleted later.
Checklist

[ ] Make sure all information from the Trello card is in here
[ ] Attach to Trello card
[ ] Rebased master
[ ] Cleaned commit history
[ ] Tested by running locally

 Move AccessRequests functionality

The backend takes care of permissions to access various resources via policy, not the frontend.


Implement Clone for World.

Fixes #140.
Also provides a fix for #149, and as such should be higher priority.

Codecov Report

Merging #150 (2787290) into dev (27bc329) will increase coverage by 0.12%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##              dev     #150      +/-   ##
==========================================
+ Coverage   94.74%   94.87%   +0.12%
==========================================
  Files          72       75       +3
  Lines       10091    10345     +254
==========================================
+ Hits         9561     9815     +254
  Misses        530      530

Impacted Files
Coverage Δ

src/archetype/mod.rs
97.69% <ø> (ø)

src/world/mod.rs
100.00% <ø> (ø)

src/archetype/identifier/mod.rs
95.16% <100.00%> (+0.28%)
:arrow_up:

src/archetype/impl_clone.rs
100.00% <100.00%> (ø)

src/archetypes/mod.rs
99.25% <100.00%> (+0.20%)
:arrow_up:

src/entity/allocator/location.rs
70.00% <100.00%> (+16.15%)
:arrow_up:

src/entity/allocator/mod.rs
79.67% <100.00%> (+2.61%)
:arrow_up:

src/entity/allocator/slot.rs
85.00% <100.00%> (+2.14%)
:arrow_up:

src/registry/clone/sealed.rs
100.00% <100.00%> (ø)

src/world/impl_clone.rs
100.00% <100.00%> (ø)

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

Adding an implementation of the clone_from() method before merging this.


Chinese language classification error

Chinese classification should be Chinese (Taiwan) and Chinese (mainland), rather than the current Chinese and Chinese (China) classification.
Correct classification:中文（中国台湾）和中文（大陆）。

We already merged PR related to this.


chore(settings): remove emoji to fix settings bot

:tada: This PR is included in version 1.0.3 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


WIP: Update and publish landlord-immigration-check

This supersedes PRs #2008 and #2015.
I've marked the Smart Answer as published, regenerated the checksum data and regression test artefacts.

We're currently planning to deploy this tomorrow (Tuesday 20 October).

I've rebased this on master and force pushed in preparation for deploying this morning.


Settle or commit

Right now the Taker has to decide between settling and committing. It is not clear how and why he should chose one over the other.
Instead, we should always try to settle first and then, if it fails because the maker does not respond, commit on-chain.

@bonomat I think this is outdated, please re-open if still needed

It's still valid: we always go for collaborative close but never for commit+cet.

Done in the frontend now based on having a maker connection or not.


Update api level 5

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

Please upload report for BASE (API_LEVEL_5@18bc9d7). Learn more about missing BASE report.

Additional details and impacted files
@@              Coverage Diff               @@
##             API_LEVEL_5     #690   +/-   ##
==============================================
  Coverage               ?   85.96%
==============================================
  Files                  ?        8
  Lines                  ?      399
  Branches               ?        0
==============================================
  Hits                   ?      343
  Misses                 ?       56
  Partials               ?        0

Flag
Coverage Δ

unittests
85.96% <ø> (?)

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

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

I think it is important to also take this commit https://github.com/LedgerHQ/ledger-secure-sdk/pull/643
Because eit is something needed (started by Xavier) in order to support nbgl for Nano...


[Example]: ERC20 example

Feature Request
Create a simple Dojo project deploying a new ERC20 token.
Proposed Solution

Dojo project deploying a new ERC20 token.
React project able to connect a wallet, mint tokens and display balance.

TBD:

What's the best way to structure this example?

Dojo project at dojo/examples?
React dapp at dojo.js/examples?
Both under the same place? Where?

Alternatives
No response
Related Code
No response
Additional context
No response
If the feature is accepted, would you be willing to contribute it?

[X] Yes I would be willing to contribute

@rsodre I'd love to work on this


Change cluster-admin metric to be read from user group

The exporter contains a metric which indicates whether the cluster-admin is enabled for the cluster.
In the current version the exporter simply looks for the existence of the cluster-admin ClusterRole
to determine this. However the ClusterRole is always present. The feature is enabled by adding
users to the cluster-admin Group. So the PR contains the following changes:

Change the current clusterrole-controller to simply remove the finalizer when present. This is
to ensure proper cleanup.
Modify the tests for the above controller to ensure that the finalizer is always removed.
Add a new controller which looks for the presence of a Group called cluster-admins and whenever
present check for the users in this group. If greater than 1 then indicate that the cluster admin
is enabled.
Tests for the above controller.

/assign @jharrington22 @2uasimojo

Cool.
/lgtm
The remaining issues could be fixed here or in a followon, your choice. Unhold if you prefer the latter.
/hold

/lgtm

/hold cancel


Add basic auth clause to create index call

Thanks for the pull request!
However, as this repository is no longer actively maintained, I will not accept any pull requests.
I advise you to create your own image on DockerHub if you want a Docker image.
Best wishes!


[QnA Maker] Support for IsTest and RankerType in GetAnswerAsync call …

Support for IsTest and RankerType in GetAnswerAsync call in QnAMaker
Tests for the same
Dotnet PR: https://github.com/microsoft/botbuilder-dotnet/pull/3085

Pull Request Test Coverage Report for Build 94182

8 of 8 (100.0%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.009%) to 84.508%

Totals

Change from base Build 94065:
0.009%

Covered Lines:
8177

Relevant Lines:
9353

💛  - Coveralls


cranelift-interpreter: Trap on unaligned memory accesses that provide the aligned flag

👋 Hey,
Feature
After #5893 we now have access to MemFlags when loading and storing to memory. We should check the aligned flag, and always trap if the access is unaligned.
Technically the current behaviour of ignoring it and loading correctly anyway is allowed.

By default, Cranelift memory instructions work with any unaligned effective address. If the aligned flag is set, the instruction is permitted to trap or return a wrong result if the effective address is misaligned.

But, trapping in these cases seems like the best course of action because the CLIF is invalid/undefined.
Benefit
This gets us a better interpretation of CLIF semantics and allows whoever is using the interpreter to catch these cases sooner.
Implementation

In State::checked_{load,store}  check if the memory flags have the aligned flag set.
If they do and the alignment of the address is smaller than the alignment of the type. We should return a MemoryError

The interpreter uses a virtual addressing scheme, so we don't have proper "alignment", but we can use the offset field in the address which should be good enough!

We can't build the usual tests for this.

Our runtests don't support checking for traps (cc  #4781).
What we can do instead is build a CLIF program and invoke the interpreter using the library API. See this example for a test case testing traps on srem, we can do something similar for load/store.

Alternatives
Fuzzgen never sets this flag wrongly (I hope), so this shouldn't affect the fuzzer. And the current implementation is legal so we can always just keep it.

Shouldn't this be closed, considering #5921 got merged?

That's right, thanks for the reminder!


[Task]: Perf test on Ballerina regexp

Description
Compare the performance against stdlib regex, python, java, go, etc
Describe your task(s)
No response
Related area
-> Compilation
Related issue(s) (optional)
No response
Suggested label(s) (optional)
No response
Suggested assignee(s) (optional)
No response

This #doc will contain how the analysis will be done.

Here is the update upto today.
The performance test will be done on test patterns set.

Use this benchmark used by other programming languages

Here we will add the ballerina code in a folder to test the pattern and update the Docker and php files as needed and to the testing.

Use 25 patterns to the test.

The patterns were created considering the number of states it has when we represent it using a state machine. For the input text file we used the same text as in the first case. Initially we thought to do this experiment on java11, go, python3, ballerina regexp language library and regex standard library.
This sheet contains a initial level experimental result.
During this initial level experimental result we had two conclusions.

The regex standard library is not scale well with large input texts.
There is a performance bottleneck when we have inputs with non-unicode chars.

After this we thought to run this experiment on GCP with docker and kubernetes. Using that we can configure the running environments as needed.
This repo contains the sample code snippets that we are going to use to do the test.

Remaining work to do.

[ ] Finalize the docker and kubernetes scripts.
[ ] Run the perf tests on GCP.
[ ] Document the results.


cannot connect to service

Hi,
After installing the cloudbreak deployer on a Azure VM running CentOS 7.1 and opening ports 3000-3001 I can access the UI from my PC. I can login and go to the dashboard. At that point I want to add a Azure Credential for creating a Hadoop cluster. I fill in the required fields but when I push the "create credential" button I get a "cannot connect to service" error.
I did add the 2 lines to the Profile file to change the user and password.
Any ideas what could cause that. Using firebug on the web page shows the I get an HTTP 500 server error.
Thanks,
Frank Montyne

Hi,
The problem seems to be solved by upgrading from 1.0.0 to 1.0.2
Thanks,
Frank


KAFKA-2203: Getting Java8 to relax about javadoc and let our build pass

This patch is different than the one attached to the JIRA - I'm applying the new javadoc rules to all subprojects while the one in the JIRA applies only to "clients". We need this since Copycat  has the same issues.

Note that without this patch, "./gradlew install" fails with Java8

LGTM, ./gradlew clean install failed with Java 8 before the patch and now succeeds.

The test failure seems unrelated.
@guozhangwang, @junrao - I need a commit :)

LGTM, thanks.


xrandrHeads: only horizontal monitor setup is possible

Describe the bug
When you configure multiple Monitors, via services.xserver.xrandrHeads, there is no possibility to configure that they are above each other.
To Reproduce
  services.xserver = {
    xrandrHeads = [
      { output = "DP-1"; primary=true;}
      { output = "HDMI-1"; monitorConfig = "Option \"Above\" \"multihead1\"";}
    ];
  };

results in the following xorg.conf:
Section "Monitor"
  Identifier "multihead2"

  Option "RightOf" "multihead1"

  Option "Above" "multihead1"
EndSection

Xorg ignores the "Above", since it already has a "RightOf".

Still a problem in 23.05 it seems.


Identify appropriate search index database - test OpenSearch

See #232

[x] run search latency tests
[x] test against functional requirements

[x] test incremental indexing: effect of adding documents to query latency

[x] compare and conclude

Finished query latency testing and write up of features against our functional requirements https://www.notion.so/climatepolicyradar/Search-index-selection-88d93719bb3f4c6296ea1861923b8474

Moved to in progress as need to redo the tests in a 6GB environment, following a look at the Vespa requirements.

Also doing tests on incremental indexing - or, how search latency is affected by adding a few documents.

My assessment of Vespa vs Opensearch is complete - I recommend we use Opensearch, and have raised #387 to investigate how to best deal with being able to add and modify documents without affecting search latency.
https://www.notion.so/climatepolicyradar/Search-index-selection-88d93719bb3f4c6296ea1861923b8474
@ingemar-cpr please could you review?


Rework some of the autoloader scene-switching and implement tree pausing

Initially the autoloader would delete the world scene before switching to the pause scene, and similar things occurred when bringing up something like the options menu. This didn't allow us to pause and resume to what we needed. Therefore, the two menus, options and pause, were reworked to allow them to overlay on top of various screens and queue_free themselves, which allowed us to not delete the world scene, pause its state, and return to gameplay after pausing right where we left off.

Adding Basic Saving and Reloading also, so check it out

Note that sky does not get added back with the addition and removal of player, with the current saving and reloading.

Additionally note that instancing new players under World does not automatically set the correct signals that World had set up for reaction to signals of Player scene.


Posible to have typed args in the <Template /> component?

First of all, compliments for a great addon that allows for creating stories in a Svelte-like manner 👍
Currently, when declaring let:args, the args themselves are typed as any.  Is it possible somehow to make the types correspond to the props that are defined in the target component?

I see that this issue was already brought up in #68.  As I understand this is more of an issue with Svelte than with the current addon.


Shifter: Ik/Fk switch/snap poole vector solving

Handle the Pole Vector position as suggested by @chris-lesage

Hi @miquelcampos I've submitted a merge request that fixes the calculation for our rigs.  I think it's done with a minimal amount of code changes.  Although I did refactor the 4 repeated code blocks into 2 functions just to reduce noise.
https://github.com/mgear-dev/mgear_core/pull/87

Thanks @thirstydevil  I will review and merge it ASAP.

@thirstydevil  thanks again for the PR
I have merged it manually in the mGear4 repo.
I have found a bug while collecting the lists for the ikRot ctl. Because was appending a list to another list instead of extending it
around the line 1835
            src_nodes = self.ikTarget + self.upvTarget
            key_nodes = self.fkCtrls
            dst_nodes = self.ikCtrl + self.upvCtrl
            if ikRot:
                if isinstance(self.ikRotTarget, list):
                    src_nodes.extend(self.ikRotTarget)
                else:
                    src_nodes.append(self.ikRotTarget)
                if isinstance(self.ikRotCtl, list):
                    key_nodes.extend(self.ikRotCtl)
                else:
                    key_nodes.append(self.ikRotCtl)

I am not making more releases for 3.7 so you may want to check this on your side
btw: I will archive all the 3.7 repos soon. if you have more PR please do it on the mgear4 repo. Thanks!!