README: Fix link & specific output in example

Fix a broken link in the README and make identical the commented output
of one of the examples shown in the README.

Unwell and away from computer. Looks good to me. Will merge when back
On Sat, 30 Jun 2018, 04:31 Ivan Fraixedes<EMAIL_ADDRESS>wrote:

Fix a broken link in the README and make identical the commented output
of one of the examples shown in the README.
You can view, comment on, or merge this pull request online at:
https://github.com/gorgonia/gorgonia/pull/212
Commit Summary

README: Fix link & specific output in example

File Changes

M README.md
https://github.com/gorgonia/gorgonia/pull/212/files#diff-0 (6)

Patch Links:

https://github.com/gorgonia/gorgonia/pull/212.patch
https://github.com/gorgonia/gorgonia/pull/212.diff

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/gorgonia/gorgonia/pull/212, or mute the thread
https://github.com/notifications/unsubscribe-auth/AAczUgxQyacPdH1DzRvujSUg3qQ3AEUiks5uBnKGgaJpZM4U9cdS
.

Thank you btw
On Sat, 30 Jun 2018, 04:38 Xuanyi Chew<EMAIL_ADDRESS>wrote:

Unwell and away from computer. Looks good to me. Will merge when back
On Sat, 30 Jun 2018, 04:31 Ivan Fraixedes<EMAIL_ADDRESS>wrote:

Fix a broken link in the README and make identical the commented output
of one of the examples shown in the README.
You can view, comment on, or merge this pull request online at:
https://github.com/gorgonia/gorgonia/pull/212
Commit Summary

README: Fix link & specific output in example

File Changes

M README.md
https://github.com/gorgonia/gorgonia/pull/212/files#diff-0 (6)

Patch Links:

https://github.com/gorgonia/gorgonia/pull/212.patch
https://github.com/gorgonia/gorgonia/pull/212.diff

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/gorgonia/gorgonia/pull/212, or mute the thread
https://github.com/notifications/unsubscribe-auth/AAczUgxQyacPdH1DzRvujSUg3qQ3AEUiks5uBnKGgaJpZM4U9cdS
.

Coverage remained the same at 61.903% when pulling 4071af886d0d6ef76b8f0af345d885b9dbd0b1a3 on ifraixedes:if-minor-readme-fixes into c6bd23987e007264f844a4ca0e1855acc95778b2 on gorgonia:master.


feat: New 'Steps to Reproduce' section in bug template

Fixes Issue
Closes #9742
Changes proposed
To add a required "Steps to Reproduce" section in the bug issue template to reduce the workload for maintainers and help them to reproduce bugs more quickly and easily, which will lead to faster fixes.
In bug.yml template:

Added new Steps to Reproduce property
Added guidelines/instruction in comment line of value.
This section is mandatory to provide the bug steps.

Check List (Check all the applicable boxes)

[x] My code follows the code style of this project.
[x] My change requires changes to the documentation.
[ ] I have updated the documentation accordingly.
[x] All new and existing tests passed.
[x] This PR does not contain plagiarized content.
[x] The title of my pull request is a short description of the requested changes.

Screenshots
YML Github Preview (not from actual user issue creation)

Note to reviewers
I added instruction in comment line of textarea field instead of placeholder. So that, contributor can copy the sample template and provide the steps. In case of placeholder, they need to manually type and it usually disappear when we type something in Textarea.
Please let me know if you have any feedback on whether to use a placeholder or a value for the instructions in comment line.

I believe the documentation needs to be updated. If so, can you help me identify where it needs to be updated and what information needs to be added?


GH-35686:[Go] Add AppendTime to TimestampBuilder

Rationale for this change

What changes are included in this PR?

Are these changes tested?

Are there any user-facing changes?

Closes: #35686

@yevgenypats Do we want to expand the tests to test more units than just Second? Or do you think we're fine with just testing Second?

@yevgenypats Do we want to expand the tests to test more units than just Second? Or do you think we're fine with just testing Second?

I can add but maybe we want to move TimestampBuilder out of the template as it becomes quite hard to develop inside a template and Timestamp starts to diverge from all other numeric types. wdyt?

@yevgenypats Makes sense to me, feel free to go ahead and do that.

Hi @zeroshade!
I'm overtaking this PR from @yevgenypats.
I've extracted timestamp from numeric gen (array, builder, tests, traits).
Additionally, I propose to introduce a helper func for creation of arrow.Timestamp from time.Time and arrow.TimeUnit.
The logic was tested and introduced in https://github.com/cloudquery/arrow/pull/17 (in this PR: 1689eee0ec81da6e62f545eb06f8f71ed3f69a22).

Hi @zeroshade!
I'm overtaking this PR from @yevgenypats.
I've extracted timestamp from numeric gen (array, builder, tests, traits).
Additionally, I propose to introduce a helper func for creation of arrow.Timestamp from time.Time and arrow.TimeUnit.
The logic was tested and introduced in cloudquery#17 (in this PR: 1689eee).
UPD: it seems there's a flaky test (go/arrow/flight/flightsql/driver/driver_test.go:741, TestPreparedStatementNoSchema)

Thanks @candiduslynx !


Reload project config

As you said added it as part of RsyncProjectConfig,
RsyncProjectConfig show, RsyncProjectConfig reload.
Changes default behavior, I can check how to use default args if none is provided.
There is a docs todo, not sure how to write docs for args, if you have a help.txt from the top of your head which I could use as an example that would be noice.

Here is how you write commands with args.
https://github.com/tpope/vim-fugitive/blob/master/doc/fugitive.txt#L56-L72


request help: The test plugin written does not work

Issue description
写的测试插件不起作用
Environment
centos7 + apisix2.7 + apisix-java-plugin-runner version0.1

your apisix-java-plugin-runner version 0.1
按照官网写了个Java插件测试

文件名是TestFilter.java，也根据步骤放到了 package-info.java 同级文件夹下

内容是：
/*
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
package org.apache.apisix.plugin.runner.filter;
import com.google.gson.Gson;
import org.apache.apisix.plugin.runner.HttpRequest;
import org.apache.apisix.plugin.runner.HttpResponse;
import org.springframework.stereotype.Component;
import reactor.core.publisher.Mono;
import java.util.HashMap;
import java.util.Map;
@component
public class TestFilter implements PluginFilter {
@Override
public String name() {
/* It is recommended to keep the name of the filter the same as the class name.
Configure the filter to be executed on apisix's routes in the following format
{
    "uri": "/hello",
    "plugins": {
        "ext-plugin-pre-req": {
            "conf": [{
                "name": "TestFilter",
                "value": "bar"
            }]
        }
    },
    "upstream": {
        "nodes": {
            "<IP_ADDRESS>:1980": 1
        },
        "type": "roundrobin"
    }
}

The value of name in the configuration corresponds to the value of return here.
 */

return "TestFilter";

}
@Override
public Mono filter(HttpRequest request, HttpResponse response, PluginFilterChain chain) {
/*
* If the conf you configured is of type json, you can convert it to Map or json.
*/
String configStr = request.getConfig(this);
Gson gson = new Gson();
Map<String, Object> conf = new HashMap<>();
conf = gson.fromJson(configStr, conf.getClass());

/*
 * You can use the parameters in the configuration.
 */

// note: the path to the rewrite must start with '/'

// request.setPath((String) conf.get("rewrite_path"));
// request.setHeader((String) conf.get("conf_header_name"), (String) conf.get("conf_header_value"));
request.setHeader("para_test", "ning_test");
/* note: The value of the parameter is currently a string type.
If you need the json type, you need the upstream service to parse the string value to json.
For example, if the arg is set as below
request.setArg("new arg", "{"key1":"value1","key2":2}");
         The arg received by the upstream service will be as below
         "new arg": "{\"key1\":\"value1\",\"key2\":2}"
 */
request.setArg("test_arg", "test_value");

response.setHeader("para_test", "test");
return chain.filter(request, response);

}
}
按照官网步骤打了jar包也运行了jar包，也配置了个路由

要是测试成功了 访问curl -i -X GET "http://<IP_ADDRESS>:9080/#/user/table" -i 应该会显示一个自定义的响应头para_test
但是最后没成功是为啥呢

can you use "httpbin.org:80" as upstream, and test "http://<IP_ADDRESS>:9080/get", then show the response.

can you use "httpbin.org:80" as upstream, and test "http://<IP_ADDRESS>:9080/get", then show the response.
显示503

那应该是我插件配置有问题吗？
上游：

路由：

Java测试插件：
/*

Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements.  See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License.  You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/

package org.apache.apisix.plugin.runner.filter;
import com.google.gson.Gson;
import org.apache.apisix.plugin.runner.HttpRequest;
import org.apache.apisix.plugin.runner.HttpResponse;
import org.springframework.stereotype.Component;
import reactor.core.publisher.Mono;
import java.util.HashMap;
import java.util.Map;
@Component
public class TestFilter implements PluginFilter {
@Override
public String name() {
    /* It is recommended to keep the name of the filter the same as the class name.
     Configure the filter to be executed on apisix's routes in the following format

    {
        "uri": "/hello",
        "plugins": {
            "ext-plugin-pre-req": {
                "conf": [{
                    "name": "TestFilter",
                    "value": "bar"
                }]
            }
        },
        "upstream": {
            "nodes": {
                "<IP_ADDRESS>:1980": 1
            },
            "type": "roundrobin"
        }
    }

    The value of name in the configuration corresponds to the value of return here.
     */

    return "TestFilter";
}

@Override
public Mono<Void> filter(HttpRequest request, HttpResponse response, PluginFilterChain chain) {
    /*
     * If the conf you configured is of type json, you can convert it to Map or json.
     */

    String configStr = request.getConfig(this);
    Gson gson = new Gson();
    Map<String, Object> conf = new HashMap<>();
    conf = gson.fromJson(configStr, conf.getClass());

    /*
     * You can use the parameters in the configuration.
     */

    // note: the path to the rewrite must start with '/'

//        request.setPath((String) conf.get("rewrite_path"));
//        request.setHeader((String) conf.get("conf_header_name"), (String) conf.get("conf_header_value"));
request.setHeader("para_test", "ning_test");
/* note: The value of the parameter is currently a string type.
If you need the json type, you need the upstream service to parse the string value to json.
For example, if the arg is set as below
request.setArg("new arg", "{"key1":"value1","key2":2}");
             The arg received by the upstream service will be as below
             "new arg": "{\"key1\":\"value1\",\"key2\":2}"
     */
    request.setArg("test_arg", "test_value");

    response.setHeader("para_test", "test");
    return chain.filter(request, response);
}

}
Java插件位置

最后也在centos中打了jar包运行了  只有可能上面某一步错了吧  大佬看看

I think the java code and the apisix configuration are fine, this should be apisix not being able to access the java runner, you need to look at the apisix logs.
pls take a look at: https://github.com/apache/apisix-java-plugin-runner/blob/main/docs/en/latest/how-it-works.md#run
check that the below configuration is correct
ext-plugin:
  cmd: ['java', '-jar', '-Xmx4g', '-Xms4g', '/path/to/apisix-runner-bin/apisix-java-plugin-runner.jar']

I think the java code and the apisix configuration are fine, this should be apisix not being able to access the java runner, you need to look at the apisix logs.
pls take a look at: https://github.com/apache/apisix-java-plugin-runner/blob/main/docs/en/latest/how-it-works.md#run
check that the below configuration is correct
ext-plugin:
  cmd: ['java', '-jar', '-Xmx4g', '-Xms4g', '/path/to/apisix-runner-bin/apisix-java-plugin-runner.jar']

我是用debug那一栏的  也就是
ext-plugin:
path_for_test: /tmp/runner.sock
是不是这个原因呢

I think the java code and the apisix configuration are fine, this should be apisix not being able to access the java runner, you need to look at the apisix logs.
pls take a look at: https://github.com/apache/apisix-java-plugin-runner/blob/main/docs/en/latest/how-it-works.md#run
check that the below configuration is correct
ext-plugin:
  cmd: ['java', '-jar', '-Xmx4g', '-Xms4g', '/path/to/apisix-runner-bin/apisix-java-plugin-runner.jar']

改成了
ext-plugin:
cmd: ['java', '-jar', '-Xmx4g', '-Xms4g', '/path/to/apisix-runner-bin/apisix-java-plugin-runner.jar']
还是一样的503

I think the java code and the apisix configuration are fine, this should be apisix not being able to access the java runner, you need to look at the apisix logs.
pls take a look at: https://github.com/apache/apisix-java-plugin-runner/blob/main/docs/en/latest/how-it-works.md#run
check that the below configuration is correct
ext-plugin:
  cmd: ['java', '-jar', '-Xmx4g', '-Xms4g', '/path/to/apisix-runner-bin/apisix-java-plugin-runner.jar']

日志文件打印以下：
2021/07/31 10:28:42 [crit] 28450#28450: *10171284 connect() to unix:/tmp/runner. sock failed (13: Permission denied), client: <IP_ADDRESS>, server: _, request: "GET /get HTTP/1.1", host: "<IP_ADDRESS>:9080"
2021/07/31 10:28:42 [error] 28450#28450: *10171284 [lua] init. lua:553: phase_func(): failed to connect to the unix socket unix:/tmp/runner. sock: permission denied, client: <IP_ADDRESS>, server: _, request: "GET /get HTTP/1.1", host: "<IP_ADDRESS>:9080"
2021/07/31 10:28:42 [warn] 28450#28450: *10171284 [lua] plugin. lua:646: run_plugin(): ext-plugin-pre-req exits with http status code 503, client: <IP_ADDRESS>, server: _, request: "GET /get

I think the java code and the apisix configuration are fine, this should be apisix not being able to access the java runner, you need to look at the apisix logs.
pls take a look at: https://github.com/apache/apisix-java-plugin-runner/blob/main/docs/en/latest/how-it-works.md#run
check that the below configuration is correct
ext-plugin:
  cmd: ['java', '-jar', '-Xmx4g', '-Xms4g', '/path/to/apisix-runner-bin/apisix-java-plugin-runner.jar']

找到原因了，按照官网说的打开sock权限  但是继续报以下错误：
2021/07/31 11:15:29 [error] 28453#28453: *10356096 [lua] init.lua:553: phase_func(): failed to receive RPC_HTTP_REQ_CALL: closed, client: <IP_ADDRESS>, server: _, request: "GET /get HTTP/1.1", host: "<IP_ADDRESS>:9080"
2021/07/31 11:15:29 [warn] 28453#28453: *10356096 [lua] plugin.lua:646: run_plugin(): ext-plugin-pre-req exits with http status code 503, client: <IP_ADDRESS>, server: _, request: "GET /get HTTP/1.1", host: "<IP_ADDRESS>:9080"

ext-plugin:
path_for_test: /tmp/runner.sock

path_for_test is used in debug mode, this configuration is not needed to run with jar.

ext-plugin:
path_for_test: /tmp/runner.sock

path_for_test is used in debug mode, this configuration is not needed to run with jar.

大佬看看我最新的那个错误呗

按照官网步骤打了jar包也运行了jar包

最后也在centos中打了jar包运行了

You said to run it as a jar, so '/path/to/apisix-runner-bin/apisix-java-plugin-runner.jar should be the absolute path to the jar.

按照官网步骤打了jar包也运行了jar包

最后也在centos中打了jar包运行了

You said to run it as a jar, so '/path/to/apisix-runner-bin/apisix-java-plugin-runner.jar should be the absolute path to the jar.

jar包是能正常运行的

How did you configure the below configuration in apisix
ext-plugin:
  cmd:

How did you configure the below configuration in apisix
ext-plugin:
  cmd:

现在是以debug模式运行

How did you configure the below configuration in apisix
ext-plugin:
  cmd:

最后一个参数是我jar包的全路径

How did you configure the below configuration in apisix
ext-plugin:
  cmd:

现在debug环境和run环境啥时候配jar包的环境变量的问题我理解的，主要就是配置完自定义插件访问结果503，查看apisix的error日志发现以下报错

request.setArg("test_arg", "test_value");
response.setHeader("para_test", "test");

request.setArg("test_arg", "test_value"); means that rewrite the current request, take a look at: https://github.com/apache/apisix-java-plugin-runner/blob/main/docs/en/latest/development.md#rewrite-request
response.setHeader("para_test", "test"); means that stop the current request, the client will receive the relevant parameters generated here. take a look at: https://github.com/apache/apisix-java-plugin-runner/blob/main/docs/en/latest/development.md#stop-request
If both of these exist, then the request will be stopped.
Using the same environment and code as yours, here are my reproduction results:
$ curl -i <IP_ADDRESS>:9080/get
HTTP/1.1 500 Internal Server Error
Date: Sat, 31 Jul 2021 12:40:19 GMT
Content-Type: text/html; charset=utf-8
Content-Length: 553
Connection: close
para-test: test
ETag: "610544ac-229"
Server: APISIX/2.7

the para-test header has been successfully returned to the client.

request.setArg("test_arg", "test_value");
response.setHeader("para_test", "test");

request.setArg("test_arg", "test_value");表示重写当前请求，看看：https : //github.com/apache/apisix-java-plugin-runner/blob/main/docs/en/latest/development.md#rewrite-request
response.setHeader("para_test", "test");表示停止当前请求，客户端会收到这里生成的相关参数。看看：https : //github.com/apache/apisix-java-plugin-runner/blob/main/docs/en/latest/development.md#stop-request
如果这两个都存在，那么请求将被停止。
在config.yamlapisix的：
ext-plugin:
  cmd: ['java', '-jar', '-Xmx4g', '-Xms4g', '/root/IdeaProjects/apisix-java-plugin-runner/runner-dist/apisix-runner-bin-dist/target/apisix-runner-bin/apisix-runner-bin/apisix-java-plugin-runner.jar']

apisix 中成功 jar 启动输出的日志error.log：
2021/07/31 20:53:07 [warn] 107773#107773: *69 [lua] init.lua:620:
  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
, context: ngx.timer
2021/07/31 20:53:07 [warn] 107773#107773: *69 [lua] init.lua:620:  =========|_|==============|___/=/_/_/_/
, context: ngx.timer
2021/07/31 20:53:07 [warn] 107773#107773: *69 [lua] init.lua:620:  :: Spring Boot ::                (v2.4.5), context: ngx.timer
2021/07/31 20:53:07 [warn] 107773#107773: *69 [lua] init.lua:620:
, context: ngx.timer
2021/07/31 20:53:07 [warn] 107773#107773: *69 [lua] init.lua:620:
, context: ngx.timer
2021/07/31 20:53:07 [warn] 107773#107773: *69 [lua] init.lua:620: 2021-07-31 20:53:07.993  INFO 107784 --- [           main] o.a.a.p.r.PluginRunnerApplication        : Starting PluginRunnerApplication v0.1.0 using Java 11.0.11 on localhost.localdomain with PID 107784 (/root/IdeaProjects/apisix-java-plugin-runner/runner-dist/apisix-runner-bin-dist/target/apisix-runner-bin/apisix-runner-bin/apisix-java-plugin-runner.jar started by root in /usr/local/apisix)
, context: ngx.timer
2021/07/31 20:53:07 [warn] 107773#107773: *69 [lua] init.lua:620: 2021-07-31 20:53:07.996  INFO 107784 --- [           main] o.a.a.p.r.PluginRunnerApplication        : No active profile set, falling back to default profiles: default
, context: ngx.timer
2021/07/31 20:53:09 [warn] 107773#107773: *69 [lua] init.lua:620: 2021-07-31 20:53:09.618  INFO 107784 --- [           main] o.a.a.p.r.PluginRunnerApplication        : Started PluginRunnerApplication in 2.004 seconds (JVM running for 2.605)
, context: ngx.timer
2021/07/31 20:53:09 [warn] 107773#107773: *69 [lua] init.lua:620: 2021-07-31 20:53:09.793  WARN 107784 --- [           main] o.a.a.p.r.s.ApplicationRunner            : java runner is listening on the socket file: /usr/local/apisix/conf/apisix-107767.sock
, context: ngx.timer

使用与您相同的环境和代码，这是我的复制结果：
$ curl -i <IP_ADDRESS>:9080/get
HTTP/1.1 500 Internal Server Error
Date: Sat, 31 Jul 2021 12:40:19 GMT
Content-Type: text/html; charset=utf-8
Content-Length: 553
Connection: close
para-test: test
ETag: "610544ac-229"
Server: APISIX/2.7

在para-test头已成功返回给客户端。

我懂了，之前理解错了，以为response是返回给客户端的response，没想到是停止请求的，谢谢大佬。之后还有个问题
一下代码的request.getConfig  他这个config是哪里的配置啊
    String configStr = request.getConfig(this);
    Gson gson = new Gson();
    Map<String, Object> conf = new HashMap<>();
    conf = gson.fromJson(configStr, conf.getClass());

here:
And please use English in the public channel, thx

here:
And please use English in the public channel, thx

okok bar?  your mean is one map of this "conf" array？

Not exactly accurate, it depends on your configuration in APISIX.
conf is a map example: https://github.com/apache/apisix-java-plugin-runner/blob/d6bc7fa86c62a9967b0bdf05bb00554249226c5c/runner-core/src/test/java/org/apache/apisix/plugin/runner/handler/A6HttpCallHandlerTest.java#L130

Not exactly accurate, it depends on your configuration in APISIX.
conf is a map example:
https://github.com/apache/apisix-java-plugin-runner/blob/d6bc7fa86c62a9967b0bdf05bb00554249226c5c/runner-core/src/test/java/org/apache/apisix/plugin/runner/handler/A6HttpCallHandlerTest.java#L130

so the "value" property ’s value is  the key "bar"  's value in the map ?Why this design?

Not exactly accurate, it depends on your configuration in APISIX.
conf is a map example:
https://github.com/apache/apisix-java-plugin-runner/blob/d6bc7fa86c62a9967b0bdf05bb00554249226c5c/runner-core/src/test/java/org/apache/apisix/plugin/runner/handler/A6HttpCallHandlerTest.java#L130

and you say conf is a map , but it in json is array format( i think it because there is "[")

but it in json is array format

Give an example. I think it has something to do with lua's table, which can store hash and array.

but it in json is array format

Give an example. I think it has something to do with lua's table, which can store hash and array.

how to put data in the conf?
in A6HttpCallHandlerTest.java the "bar" be assigned a value  , so the "value" be assigned a value in the json can be requested
(Do I understand it correctly? )

the RewriteRequestDemoFilter.java in module "sample" , there are some properties , for example , the "rewrite_path"

I should set it in config like thie?Do I understand it correctly?

but it in json is array format

Give an example. I think it has something to do with lua's table, which can store hash and array.

The setPath must start with a "/". Is that a splice after apisix's IP + port  ？If yes, if I want to jump to another IP port，what can I do?

there is a "request.setArg()" Is the ARG of a POST request in the body of the request? Is the ARG of a GET request in the URI

Is that a splice after apisix's IP + port ？If yes, if I want to jump to another IP port，what can I do?

This cannot be done in java runner. I think you should configure upstream in apisix to do this.

there is a "request.setArg()" Is the ARG of a POST request in the body of the request

no

Is the ARG of a GET request in the URI

yes, see: https://github.com/openresty/lua-nginx-module#ngxreqset_uri_args

Is that a splice after apisix's IP + port ？If yes, if I want to jump to another IP port，what can I do?

This cannot be done in java runner. I think you should configure upstream in apisix to do this.

there is a "request.setArg()" Is the ARG of a POST request in the body of the request

no

Is the ARG of a GET request in the URI

yes, see: https://github.com/openresty/lua-nginx-module#ngxreqset_uri_args

I forgot about upstream hahahhah .
I understand the ARG of a GET request in the URI .  thx.
But the ARG of a POST request is not in the body of the request，where are the args appended or be modified ?

Is that a splice after apisix's IP + port ？If yes, if I want to jump to another IP port，what can I do?

This cannot be done in java runner. I think you should configure upstream in apisix to do this.

there is a "request.setArg()" Is the ARG of a POST request in the body of the request

no

Is the ARG of a GET request in the URI

yes, see: https://github.com/openresty/lua-nginx-module#ngxreqset_uri_args

The second question is:
the path to the rewrite must start with '/'
I have a need ：I access <IP_ADDRESS>:9080/* for all requests can forward to <IP_ADDRESS>:9080/apisix/admin/routes
but i failed

What's my problem?
my route is :
{
"uris": [
"/*"
],
"name": "TestFilter_route",
"desc": "TestFilter_route",
"methods": [
"GET",
"POST",
"PUT",
"DELETE",
"PATCH",
"HEAD",
"OPTIONS",
"CONNECT",
"TRACE"
],
"hosts": [
"<IP_ADDRESS>"
],
"remote_addrs": [
"<IP_ADDRESS>"
],
"plugins": {
"ext-plugin-pre-req": {
"conf": [
{
"name": "TestFilter",
"value": "{"rewrite_path":"/apisix/admin/routes","conf_header_name":"X-API-KEY","conf_header_value":"edd1c9f034335f136f87ad84b625c8f1"}"
}
]
}
},
"upstream_id": "366061654728770074",
"labels": {
"API_VERSION": "V1"
},
"status": 1
}
my TestFilter.java is
/*

Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements.  See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License.  You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/

package org.apache.apisix.plugin.runner.filter;
import com.google.gson.Gson;
import lombok.extern.slf4j.Slf4j;
import org.apache.apisix.plugin.runner.HttpRequest;
import org.apache.apisix.plugin.runner.HttpResponse;
import org.springframework.stereotype.Component;
import reactor.core.publisher.Mono;
import java.util.HashMap;
import java.util.Map;
@Component
@Slf4j
public class TestFilter implements PluginFilter {
@Override
public String name() {
    /* It is recommended to keep the name of the filter the same as the class name.
     Configure the filter to be executed on apisix's routes in the following format

    {
        "uri": "/hello",
        "plugins": {
            "ext-plugin-pre-req": {
                "conf": [{
                    "name": "TestFilter",
                    "value": "bar"
                }]
            }
        },
        "upstream": {
            "nodes": {
                "<IP_ADDRESS>:1980": 1
            },
            "type": "roundrobin"
        }
    }

    The value of name in the configuration corresponds to the value of return here.
     */

    return "TestFilter";
}

@Override
public Mono<Void> filter(HttpRequest request, HttpResponse response, PluginFilterChain chain) {
    /*
     * If the conf you configured is of type json, you can convert it to Map or json.
     */

    String configStr = request.getConfig(this);
    Gson gson = new Gson();
    Map<String, Object> conf = new HashMap<>();
    conf = gson.fromJson(configStr, conf.getClass());

    log.info("request: {}", request);
    log.info("response: {}", response);
    /*
     * You can use the parameters in the configuration.
     */

    // note: the path to the rewrite must start with '/'

//        request.setPath((String) conf.get("rewrite_path"));
//        request.setHeader((String) conf.get("conf_header_name"), (String) conf.get("conf_header_value"));
//        request.setHeader("para_test", "ning_test");
    request.setPath((String) conf.get("rewrite_path"));
    request.setHeader((String) conf.get("conf_header_name"), (String) conf.get("conf_header_value"));
    return chain.filter(request, response);
}

}

But the ARG of a POST request is not in the body of the request，where are the args appended or be modified ?

pls submit an issue at APISIX.

I have a need ：I access <IP_ADDRESS>:9080/* for all requests can forward to <IP_ADDRESS>:9080/apisix/admin/routes
but i failed

/apisix/admin/* is APISIX internal location, rewritten address cannot be jumped。
see: https://github.com/apache/apisix/blob/1b247c8e1ebd324efe66abbe33d5647a93f0426e/apisix/cli/ngx_tpl.lua#L507-L524

But the ARG of a POST request is not in the body of the request，where are the args appended or be modified ?

pls submit an issue at APISIX.

ok ,this question: " the ARG of a POST request is not in the body of the request，where are the args appended or be modified ?"
Please help me solve it

This is not yet supported in the plugin runner. We are discussing this, see: https://lists.apache.org/thread.html/r03232d5a48ba1d71c1b62185894265348abbf3bede13fba7edd38255%40<dev.apisix.apache.org>


S3 retries

Related issues and pull requests

Closes #41

Description
Adds the ability to configure s3 retry behavior. While this was probably available via AWS profile settings, its nicer to expose it explicitly with this library.
cc @ircwaves who was running into this issue.
Checklist

[ ] Add tests
[x] Add docs
[x] Update CHANGELOG

Tested this locally by rebasing on to main, with tiny deconflict, and it worked slick. Nice work Pete.


structures where keys are meant to be UUID's are not structurally enforced in json-schema or validation

Describe the bug
The json schema (as an example) for component has a structure which looks like this:
components: {
 'uuid-string' : {'component object'},
 'uuid-string_2' : {'component object 2'},
}

The UUID's in this scenario are not enforced.

This will affect trestle add and trestle create.

This is no longer relevant with OSCAL 1.0.0
uuid's only exist as named values


macOS deprecation warning about setAllowedFileTypes

On recent macOS builds, there is a deprecation warning about setAllowedFileTypes as used in the nativefiledialog (nfd) dependency. Is that fixed in a newer ndf version? This is the only warning when building on macOS.
/Users/jminor/git/raven/libs/nativefiledialog/src/nfd_cocoa.m:56:17: warning: 'setAllowedFileTypes:' is deprecated: first deprecated in macOS 12.0 - Use -allowedContentTypes instead [-Wdeprecated-declarations]
   56 |         [dialog setAllowedFileTypes:allowedFileTypes];
      |                 ^
/Applications/Xcode-16.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.2.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSSavePanel.h:286:49: note: property 'allowedFileTypes' is declared deprecated here
  286 | @property (nullable, copy) NSArray<NSString *> *allowedFileTypes API_DEPRECATED("Use -allowedContentTypes instead", macos(10.3,12.0));
      |                                                 ^

The latest version of NFD, v1.2.1, still has the same warning (I also use NFD for toucan/tlRender).


Givens rotations and Householder reflections

These operations have a few downstream use-cases. (E.g. updating QR decompositions inside Levenberg-Marquardt.)

Super useful feature to have for solvers embedded within GLMs


os/user: TestGroupIds fails in Windows Server Core container

What version of Go are you using (go version)?

$ go version
go version go1.21.1 windows/amd64

Does this issue reproduce with the latest release?
Yes
What operating system and processor architecture are you using (go env)?
go env Output
$ go env
set GO111MODULE=
set GOARCH=amd64
set GOBIN=
set GOCACHE=C:\Users\ContainerAdministrator\AppData\Local\go-build
set GOENV=C:\Users\ContainerAdministrator\AppData\Roaming\go\env
set GOEXE=.exe
set GOEXPERIMENT=
set GOFLAGS=
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOINSECURE=
set GOMODCACHE=C:\go\pkg\mod
set GONOPROXY=
set GONOSUMDB=
set GOOS=windows
set GOPATH=C:\go
set GOPRIVATE=
set GOPROXY=https://proxy.golang.org,direct
set GOROOT=C:\Program Files\Go
set GOSUMDB=sum.golang.org
set GOTMPDIR=
set GOTOOLCHAIN=auto
set GOTOOLDIR=C:\Program Files\Go\pkg\tool\windows_amd64
set GOVCS=
set GOVERSION=go1.21.1
set GCCGO=gccgo
set GOAMD64=v1
set AR=ar
set CC=gcc
set CXX=g++
set CGO_ENABLED=0
set GOMOD=NUL
set GOWORK=
set CGO_CFLAGS=-O2 -g
set CGO_CPPFLAGS=
set CGO_CXXFLAGS=-O2 -g
set CGO_FFLAGS=-O2 -g
set CGO_LDFLAGS=-O2 -g
set PKG_CONFIG=pkg-config
set GOGCCFLAGS=-m64 -fno-caret-diagnostics -Qunused-arguments -Wl,--no-gc-sections -fmessage-length=0 -ffile-prefix-map=C:\Users\ContainerAdministrator\AppData\Local\Temp\go-build269861932=/tmp/go-build -gno-record-gcc-switches

What did you do?

docker run --rm -it golang:1.21.1-windowsservercore-ltsc2022 go test os/user

What did you expect to see?
ok  	os/user	1.005s

What did you see instead?
--- FAIL: TestGroupIds (0.13s)
    user_test.go:178: &{Uid:S-1-5-93-2-1 Gid:S-1-5-93-2-1 Username:User Manager\ContainerAdministrator Name:ContainerAdministrator HomeDir:C:\Users\ContainerAdministrator}.GroupIds(): The user name could not be found.
FAIL
FAIL    os/user 2.044s
FAIL

Through a liberal sprinkling of println() I have confirmed that the error is returned from the NetUserGetLocalGroups() call, same as #26041. I also tried forcing use of the fully-qualified user name User Manager\ContainerAdministrator as the query despite isDomainJoined() = (false, nil) with the same result.
The os/user tests do pass inside a container if a local user is created inside the container and the go test command run under that user. The issue only manifests with the ContainerAdministrator and ContainerUser default user accounts.

(attn @golang/windows)


Adding -iree-flow-experimental-dispatch-reduce flag.

This puts HLO reduction ops into dispatch regions instead of
flow.reduction.region ops.
WIP #936.

THis looks fine to me. I think its better if we dont unroll this ahead of time, and let each backend "legalize" this as needed. Something to keep track of. For CPU/GPU backend we probably want to just remove this pass and leave the reductions as is.


[SA-22192] Validate user input when user provides a pem file

make sure user input is acctually a PEM file, see Youtrack ticket for more info.

Tests fails because of https://github.com/appgate/sdpctl/pull/442


[hotfix-#1216][kafka] Fix ObjectSizeCalculator only supported on HotS…

ObjectSizeCalculator only supported on HotSpot VM

Purpose of this pull request

Which issue you fix
Fixes # (issue).
https://github.com/DTStack/chunjun/issues/1216
Checklist:

[ ] I have executed the 'mvn spotless:apply' command to format my code.
[ ] I have a meaningful commit message (including the issue id, the template of commit message is '[label-type-#issue-id][fixed-module] a meaningful commit message.')
[ ] I have performed a self-review of my own code.
[ ] I have commented my code, particularly in hard-to-understand areas.
[ ] I have made corresponding changes to the documentation.
[ ] I have added tests that prove my fix is effective or that my feature works.
[ ] New and existing unit tests pass locally with my changes.
[ ] I have checked my code and corrected any misspellings.
[ ] My commit is only one. (If there are multiple commits, you can use 'git squash' to compress multiple commits into one.)

LGTM @FlechazoW

There's another one: DynamicKafkaDeserializationSchema


Spec says "data" example says "delta"

This page needs a quick spell check.

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

ID: ab8767cb-f75f-d3fd-b536-fc90b6374583
Version Independent ID: 88d1622f-2471-241d-bdd8-914dc958f894
Content: Block Documentation - play_effect
Content Source: creator/Reference/Content/BlockReference/Examples/BlockEvents/minecraftBlock_play_effect.md
Product: gaming
GitHub Login: @mammerla
Microsoft Alias: mikeam

I've fixed this on our internal repo. It should be fixed on the live docs in our next push.


libpod/image: Use RepoDigests() in Inspect()

To get the more-robust handling from 0f6535cf (#2106) here too.
Fixes #2086 (again :).

bot, retest this please
/approve
/lgtm

bot, retest this please

We need a new podman release with this fix.

We're planning to cut a 1.0.1 soon for 8 - we can make sure this is one of the backports, and get it into our other streams as well


Exception handling in online datapipes

Fixes #963
Changes

Add option to HTTPReader to skip over urls causing problems
Add test for this behavior

While working on this, I noticed a few things:
https://github.com/pytorch/data/blob/2ca1fa6483e58c6428319393e1aab4c26f576bec/torchdata/datapipes/iter/load/online.py#L21-L33
As the issue https://github.com/python/cpython/issues/86793 seems to have been resolved, this can probably be removed.
https://github.com/pytorch/data/blob/2ca1fa6483e58c6428319393e1aab4c26f576bec/torchdata/datapipes/iter/load/online.py#L40-L53
Here we open a requests-session, which is probably unnecessary as we only do one GET-request and then close the session again.
In addition we convert the exceptions from HTTPError/RequestException to a simple Exception, why?

@SvenDS9 Thanks for spotting these!

Feel free to remove the proxies but please test to make sure it is fine.
Session object is probably not needed unless we want to use it multiple times (e.g. retry). Feel free to change that if you confirm it is not needed.
I don't really remember why they are turned into general Exceptions. I think raising the original ones should be fine. We do want to make sure that whatever error message it produces, it is easy for user to identify that it comes from HttpReader.


String regex filters

What kind of change does this PR introduce?

Feature
Docs update

What is the current behavior?
The current behavior lacks the ability to filter text columns by regular expressions.
What is the new behavior?
The following string filters have been added:

regex: Case sensitive regex match
iregex: Case insensitive regex match
nregex: Case sensitive negative regex match
niregex: Case insensitive negative regex match

These have been implemented using Postgres RegEx operators

~
~*
!~
!~*

Additional context
Proposal: RegEx matching filter

@olirice I went with Hasura's naming convention — regex instead of match. I can switch it out if you prefer a different naming convention.
Also, wasn't sure what the guidelines were for the tests. When running the tests the following fail: resolve_graphiql_schema, string_filters.
The regressions.diff shows the expected output for string_filters, but not sure if I'm supposed to copy the diff to string_filters.out or not.
I couldn't find any output about the resolve_graphiql_schema failure.

regex instead of match. I can switch it out if you prefer a different naming convention.

I'll check PostgREST, Hasura, and a few others to see if there's a consensus but regex sounds good to me

The regressions.diff shows the expected output for string_filters, but not sure if I'm supposed to copy the diff to string_filters.out or not

yes, the workflow is to update the tests, run them, and then copy the new .out file into tests/expected after manually confirming that its what you expect
--
great work, I'll do a proper review tomorrow
I'm not totally sold on nregex and niregex. are you aware of an example where nregex than a negation with regex?

I'm not totally sold on nregex and niregex. are you aware of an example where nregex than a negation with regex?

I think the main reason for a separate operator is that Postgres uses POSIX RegEx which doesn't include lookarounds (the usual negation method). This makes negative lookups difficult, or not possible — I'm not sure. The nregex and niregex makes negation trivial. For example, if I want to exclude any strings that contain curse words:
{
  "text": {
    "niregex": "(curse1|curse2|curse3)"
  }
}

I tried to research how I would do this with the regex operator but still not sure how it would be done.

We discussed this internally today and decided that it would make for a more consistent API if negated regexes used the same and, or, not system described in issue https://github.com/supabase/pg_graphql/issues/87 rather than dedicated operators
the not feature doesn't exist yet, so you'll be stuck with negating inside the regex in the short term, but mid-term I think that'll make for the best API
thanks again for your work on this!


Passed Tests - Screenshots on HTML report

Describe the solution you'd like
It would be great if the is a way to screenshot the passed tests in the HTML report. This is true for failed tests when there is an error and a screen shot is available in the HTML report.
Thank you !

@manishdube I looked at currently screenshots are only passed in for failures.
The way the reporter currently works it does not really know the current test that is running, so as it ran and you took screenshots, it doesnt have the ability to add them to a non failing test, and it would not know which test to add them to.
You best option is to probably use the custom file name for saving screenshots and have them include the test names.  Sorry.

Many thanks  @lefthandedgoat !


Fix $response->getBody()->getContents() returns always empty content #48

[x] Bug fix
[ ] New feature
[ ] BC breaks
[ ] Deprecations
[x] Tests pass

Fixed tickets: #48
License: MIT

Released in v5.2.1: https://github.com/8p/GuzzleBundle/releases/tag/v5.2.1


Update README.md

I've updated the 'getUser' function to include parenthesis :D
previous:
const getUser = user => { name: user.name, age: user.age }
updated:
const getUser = user => ({ name: user.name, age: user.age })

That's part of the question!


MSPSDS-643 case title markups

Pull Request Test Coverage Report for Build 997

0 of 0   changed or added relevant lines in 0 files are covered.
10 unchanged lines in 2 files lost coverage.
Overall coverage decreased (-0.4%) to 92.426%

Files with Coverage Reduction
New Missed Lines
%

test/controllers/investigations/products_controller_test.rb
4
86.21%

../controllers/investigations/products_controller.rb
6
76.32%

Totals

Change from base Build 994:
-0.4%

Covered Lines:
1928

Relevant Lines:
2086

💛  - Coveralls


Circular Imports with Relationship

First Check

[X] I added a very descriptive title to this issue.
[X] I used the GitHub search to find a similar issue and didn't find it.
[X] I searched the SQLModel documentation, with the integrated search.
[X] I already searched in Google "How to X in SQLModel" and didn't find any information.
[X] I already read and followed all the tutorial in the docs and didn't find an answer.
[X] I already checked if it is not related to SQLModel but to Pydantic.
[X] I already checked if it is not related to SQLModel but to SQLAlchemy.

Commit to Help

[X] I commit to help with one of those options 👆

Example Code
# post.py
from typing import TYPE_CHECKING, Optional

from sqlmodel import Field, Relationship, SQLModel

if TYPE_CHECKING:
    from models.user import UserRead

class PostBase(SQLModel):
    title: str = Field(index=True)
    desc: str
    content: str

class Post(PostBase, table=True):
    id: Optional[int] = Field(default=None, primary_key=True)

    author_id: int = Field(default=None, foreign_key="user.id")
    author: "UserRead" = Relationship(back_populates="posts")

class PostRead(PostBase):
    id: int

class PostReadWithAuthor(PostRead):
    author: "UserRead"

#user.py
from typing import TYPE_CHECKING, List, Optional

from pydantic import EmailStr, HttpUrl
from sqlmodel import Field, Relationship, SQLModel

if TYPE_CHECKING:
    from models.post import PostRead

class UserBase(SQLModel):
    nickname: str
    avatar_url: HttpUrl

class User(UserBase, table=True):
    id: Optional[int] = Field(default=None, primary_key=True)
    email: EmailStr = Field(index=True)
    password_hash: str

    posts: List["PostRead"] = Relationship(back_populates="author")

class UserRead(UserBase):
    id: int
    email: EmailStr

class UserReadWithPosts(UserRead):
    posts: List["PostRead"]

Description
I refer to the tutorial to use TYPE_CHECKING to handle import Relationships between different models. However, after setting up Relationship, when I opened the API document ( localhost:8000/docs ), I got an TypeError:
File "/xxxxxxxxxx/python3.9/site-packages/fastapi/utils.py", line 24, in get_model_definitions
    m_schema, m_definitions, m_nested_models = model_process_schema(
  File "pydantic/schema.py", line 617, in pydantic.schema.model_process_schema
  File "pydantic/schema.py", line 658, in pydantic.schema.model_type_schema
  File "pydantic/schema.py", line 258, in pydantic.schema.field_schema
  File "pydantic/schema.py", line 563, in pydantic.schema.field_type_schema
  File "pydantic/schema.py", line 922, in pydantic.schema.field_singleton_schema
  File "/xxxxxxxxxx/python3.9/abc.py", line 123, in __subclasscheck__
    return _abc_subclasscheck(cls, subclass)
TypeError: issubclass() arg 1 must be a class

It works normally when I don't use TYPE_CHECKING, but I can't use Relationship on both sides at the same time.
I'm not sure if this is Pydanic or FastAPI's problem. Is there any way to define such a model in different files?
Operating System
macOS
Operating System Details
No response
SQLModel Version
0.0.6
Python Version
3.9.9
Additional Context
No response

I found it on #121


Fix: receive v1 traps

Description
Fix adding communities for traps with v1.
Fixes # (issue)
Type of change
Please delete options that are not relevant.

[x] Bug fix

How Has This Been Tested?
unit, manual, integration
Checklist

[x] My commit message is conventional
[x] I have run pre-commit on all files before creating the PR
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
[x] I have checked my code and corrected any misspellings

:tada: This PR is included in version 1.12.1-beta.9 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


v0.1.8 - Refactor

@JuliaRegistrator register()

Registration pull request created: JuliaRegistries/General/10996
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if Julia TagBot is installed, or can be done manually through the github interface, or via:
git tag -a v0.1.8 -m "<description of version>" 2192cbced6de11a8e901e89f333d858be76e887b
git push origin v0.1.8


The code of Heatmaps

Hi , I am interested in your research.
May i ask about the code of heatmaps in the end of the paper ?
I cant find it in the NCRF++.
Thanks a lot

Hi @edwarddiou, thanks for your interest in this project, and sorry for the late reply.
I have uploaded a jupyter notebook for heatmap visualization. Our visualization is based on another repository here.
Please make sure to modify several hard-coded file paths in the notebook.
I hope this update can solve your problem, thanks!

Thanks for the reply.
非常感謝

能否再請教一下，paper中的BERT版本和RoberTa 版本的DREEAM (teacher)與加上Inference-stage Fusion，是使用scripts/run_bert.sh 的參數並訓練30 epoch就可達到的嗎?  還是需要訓練更多epoch呢?
非常感謝您的答覆

@edwarddiou 感謝您的回覆。
直接使用scripts/run_bert.sh與scripts/run_roberta.sh的參數應該就可以達到您截圖中第一行與第三行的性能。如果您想要再現inference-stage fusion的性能，請在模型訓練完成之後運行scripts/isf_bert.sh與scripts/isf_roberta.sh。
希望這能解決您的問題。謝謝！


Add DROP and TRUNCATE to SHOW JOBS description

This change is

http://cockroach-docs-review.s3-website-us-east-1.amazonaws.com/7ab949e7a3f1ad1fb06e9da1e40e7079cd6f44b6/


New package: LuxLib v0.1.0

Registering package: LuxLib
Repository: https://github.com/avik-pal/Lux.jl
Created by: @avik-pal
Version: v0.1.0
Commit: 191d63d6b2f5b165ae7746966ad418335f149e07
Reviewed by: @avik-pal
Reference: https://github.com/avik-pal/Lux.jl/commit/191d63d6b2f5b165ae7746966ad418335f149e07#commitcomment-84309468
Description: Explicitly Parameterized Neural Networks in Julia

[noblock] The package name conflict, in this case, seems unrelated. This package is meant to act as the backend for https://github.com/avik-pal/Lux.jl


Theming

In order to enhance the customizability and overall DX, it would be desirable to add a theme feature. This would involve creating a configuration file (e.g., kuma.config.ts) where users can define a theme and use it throughout their project.
Beyond this, it would be even more useful if we could generate types from these theme settings. This would allow users to benefit from type inference when accessing theme properties, similar to the functionality provided by tRPC.
For example, if a user defines a color such as colors.primary.light, the typing system should enable them to access this property via dot notation, with the assurance that their code will be correctly typed.

First, we would provide a createTheme function that would be used within a configuration file (e.g., kuma.config.ts). The user can then define their theme inside this configuration file using this function. This will allow us to handle nested theme properties.
Here is a possible way of how it could be used:
// kuma.config.ts
import { createTheme } from "@kuma-ui/core";

const theme = createTheme({
  colors: {
    primary: 'red'
  },
  // other theme properties...
});

export default theme;

In the second phase, we would focus on generating types from these theme settings. We aim to allow users to benefit from type inference when accessing theme properties.
This could be achieved by taking the exported theme from the configuration file, analyzes it, and generates TypeScript type definitions based on the theme structure. These type definitions would then be applied to the Kuma UI's theme, making it possible to use type-safe theme properties throughout the project.
One possible challenge of this approach could be ensuring that the theme configuration file is bundle-able (i.e., free of side effects), as the file would need to be processed by a module bundler as part of the type generation process.

#107
Huge props to @TaishiNaritomi  🚀


assign a batch of unmapped tests

Fixed in #21 and this is now good.

/ok-to-test

Nice
/lgtm

/hold cancel
still needs approve

/approve


Athena - Make query execution metadata available

Is your feature request related to a problem? Please describe.
When using the athena module's read_sql_query, all we get is the result. However, for some debugging and cost monitoring purposes, having the query metadata (e.g. query_id) can also be useful.
A possible use case I've already been through is when calling AWS support -- they always request the query ID.
Describe the solution you'd like
Ideally, there should be a way to access the last_query_metadata in a "Wrangler Athena" object. That would mean a huge refactor for the lib, though :/
In the current structure, maybe we could add a boolean parameter to the query which would also return the query metadata, not just the results. But that can be a little confusing, regarding typing

@flaviomax Yeah, this is not the first time I've heard about this requirement. Unfortunately seems that there is not easy/elegant way to do it.
An alternative would be the injection of this metadata as attributes into the Pandas DataFrame.
e.g.
df = wr.athena.read_sql_query()
print(df.metadata.data_scanned)

Others possibles values to expose (ref):
'Statistics': {
    'EngineExecutionTimeInMillis': 123,
    'DataScannedInBytes': 123,
    'DataManifestLocation': 'string',
    'TotalExecutionTimeInMillis': 123,
    'QueryQueueTimeInMillis': 123,
    'QueryPlanningTimeInMillis': 123,
    'ServiceProcessingTimeInMillis': 123
}

What do you think?

I think your solution sounds pretty elegant! I did not know you could freely add meta-information to a DataFrame object (as described here, too)
I think a nice solution would be to add an attribute to the df returned by read_sql_query (and read_sql_table, by extension) with the whole QueryExecution object returned by boto's get_query_execution, instead of just the Statistics you mentioned. What do you think?
If you don't mind, I could implement this :)

We should return as much metadata as possible indeed, so I like the idea to return the whole QueryExecution object.
For sure would me another cool contribution, let me assign you on it.

Released in 1.7.0!


Sending raw HttpEntities to Get or Delete request like for JSON payloads.

This is the implementation of HTTP GET and DELETE request calls synonymous to
public RequestHandle post(Context context, String url, Header[] headers, HttpEntity entity, String contentType,
                              ResponseHandlerInterface responseHandler) {
}

It means to serve raw HttpEntity payloads to the get and delete requests if the queries can handle one.
Doing this will allow to pass JSON, etc. via the entities.
For the same new HttpDelete and HttpGet are added which extends HttpEntityEnclosingRequestBase to add the supplied entities to the request base.
This will help in sending our own Content-Type with the entities instead of application/x-www-form-urlencoded

I decided to merge this, it's not very common, and may be problem if endpoint validates data strictly by RFC, but it may be needed, full-REST services that expect httpclient to provide such functions do exist, so we will support them.


Add typebox support.

Adds support for TypeBox. I feel like the tests need to be expanded, at least for Zod and Typebox (haven't used Yup and Arktype yet) due to the potential issues with preprocessing/transform types, but I wanted to contribute something before I think about investigating that.

Hey! Thanks for this contribution!
About the tests, yes I agree. It would be nicer to have more tests using complex schemas but would be great to have them almost as examples, using the createConfig function.
About your PR, It looks great, nothing to change except  "fix" the  lint error.
It's complaining about the version, but It's not because your part.
Jest uses the version 0.27.8:
    "node_modules/@jest/schemas": {
      "version": "29.6.3",
      "resolved"<EMAIL_ADDRESS>      "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==",
      "dev": true,
      "dependencies": {
        "@sinclair/typebox": "^0.27.8"
      },
      "engines": {
        "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
      }
    },

The lint uses that version to check. I'm thinking on removing this linter but for now, can you add the @sinclair/typebox package inside the ignoredDependencies(packages/core/.eslintrc.json#L44)?


Fix moved fsnotify dependency

The fsnotify package was moved from https://github.com/go-fsnotify/fsnotify to https://github.com/fsnotify/fsnotify

One second, I will set to same revision

Thanks!


Send risk profile id on payment

Codecov Report

Merging #131 into master will not change coverage.
The diff coverage is 100%.

@@          Coverage Diff          @@
##           master   #131   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files          52     52
  Lines         904    909    +5
=====================================
+ Hits          904    909    +5

Impacted Files
Coverage Δ

src/Services/Adapters/PaymentAdapter.php
100% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Strings & types to constants

Hey guys!
I'd like to add types to constants and String() methods to aid with debugging & logging. But there are some issues.

When types are added it would be awesome to use stringer. But in order to use it the
CONST          = C.CONST
CONT_ELSE = C.CONST_ELSE
...
syntax must be change and iota should be use. I haven't found a way around this from my tests. This creates another problem. The constants need to be manually synced with the c header files for the order. A way to be sure that each constant corresponds correctly to it's c counterpart is to write tests for each constants
CONST1 VirType = iota
CONST2
...
TestVirTypeConstant() {
c := CONST1
if c != C.CONST1
fail
}

Even if we have these stuff, the api should change to return proper types instead of ints to be fully useful. This will break all the code that depends on this library.

Btw, is there any reason why this is not implemented already that i'm missing?
I'd love to here your thoughts on this.
Cheers!
P.S. Also, sort them by name :)

Somebody seems to have proposed this in issue #9, which was ultimately rejected exactly because of what you stated: it "will break all the code that depends on this library."
I agree that adding a type that implements the String() function could be useful for debugging, but as for the use of iota, I would strongly suggest against that--you wouldn't want to get into a situation where an update to the libvirt headers would break the entire library in an unpredictable fashion. Plus, not all constants in libvirt may be simply increasing or decreasing in a way that iota can capture. Finally, several large go projects which wrap C libraries (such as go-sdl2) simply reference their constants to C.CONST_WHATEVER. It is certainly verbose, but it is common practice at this point in C wrappers.

@yalue thanks for your input! I'll close this because it's not critical rather a convenience issue.


DS - Remove White Button Variant

When the VAButton component was first created, we had to create a white variant for the Sign-In page.  Once we implement Themeing, we should remove this 1-off variant.

Q3 SWAG:
UX - 0.5
FE - 0.5


mkdir permission denied () - EC: 0

When trying to open a stream I get the following error:
2024-05-30 19:38:29 [Threadfin] Buffer:                 true [ffmpeg]
2024-05-30 19:38:29 [Threadfin] Buffer Size:            5120 KB
2024-05-30 19:38:29 [Threadfin] Channel Name:           Disney Xd (East) US
2024-05-30 19:38:29 [Threadfin] Client User-Agent:      Lavf/LIBAVFORMAT_VERSION
2024-05-30 19:38:29 [Threadfin] [ERROR] mkdir /home/user/.tmp/2022-03-7LKH-BNZ6LS/MTFEJ9EAZA69PKD48OCX/: permission denied () - EC: 0
I checked the permissions in the temp directory and they seemed fine. I set the perms to 0777 to be sure and I still get the same error.
root@media-video:~# ls -ld /opt/threadfin/threadfin
-rwxr-xr-x 1 root root 12506567 May 28 16:34 /opt/threadfin/threadfin
I am running Threadfin as a service
[Unit]
Description=Threadfin: M3U Proxy for Plex DVR and Emby/Jellyfin Live TV
After=syslog.target network.target
[Service]
User=root
Group=root
Type=simple
WorkingDirectory=/opt/threadfin
ExecStart=/opt/threadfin/threadfin
TimeoutStopSec=20
KillMode=process
Restart=on-failure
[Install]
WantedBy=multi-user.target
I am running in an Ubuntu LXC on Proxmox
CPU - 4
Memory - 2GB
Swap - 2 GB
bootdisk - 15GB.
I was running Xteve before migrating to threadfin. Not sure what permissions are incorrect at this point.

I changed the tmp folder from /home/user/.tmp to /tmp then restarted and it now works.


Feature request: Support tables with gaps in the primary key column 'id'

Tables that support deletions could have large gaps between ids and have large max id values, despite not having as many rows.
Lhm currently does not detect whether the block that it is copying is empty or not, which slows down the migration significantly because the delay is still incurred.
Just wondering if this feature is in the pipeline to be supported in the next release?  I'm hoping to adopt lhm as a solution for large table migrations and it'll be awesome to have this feature.
Thanks

@glacier we have the same issue due to large auto-increment settings; you can work around it by adjusting the stride size on the throttler, or using the slave-lag throttler


Automatically derive a cache descriminator from the wasmer version and selected functions

Closes #2205
The hash is produced as follows:
BLAKE3(
  manual module version,
  wasmer version requirement,
  BLAKE3(function1),
  BLAKE3(function2),
  ...,
  BLAKE3(function_n)
)

And the hashes of the functions are lexicographically sorted since the inventory crate doesn't give us any guarantees about the order of hashes yielded.

That is awkward.. for some reason the CI has a different discriminator value than I have on my local machine?
That's not right..

Interesting, on my machine, the test also passes.

Ugh, I forgot GitHub Actions always tests a fictional merge commit.. that behaviour throws me off so bad

Yup, that also threw me off a few times before, but it's definitely the correct thing to do, since that's what you want to test.

This looks good at first glance. However, how does a node operator know which directories to delete and which ones to keep? Invalidated caches are not deleted automatically.

The idea here was to have them look at the least-recently-used directory and delete the others.
Of course we could add something like a CLI flag to wasmd to output the current ID, something like wasmd --cache-version, which then outputs the hash of the cache version.
Depends on how much we want to proof this impl. But I feel like the LRU approach is fine, not perfect but fine.


Linux - Ubuntu arm build artifact in releases

Request: Include an linux ubuntu arm artifact as part of the release process.

I'd like to, but github still does not have arm64 runners for open source available. On https://github.com/orgs/community/discussions/19197#discussioncomment-10550689 it said end of this year should the arm64 runners be available.

Apparently github postponed the open source arm64 runners to Q1 2025: https://github.com/github/roadmap/issues/970


Chain preprocessors

It might be interesting to chain multiple pre-processors together
e.g.
ConvertNotebookPreprocessor ->
FunctionPreProcessor ->

/kind feature-request

/kind feature

/addition feature

@r2d4 Is this supported now or is there more work to do?


ssl: subject alternate name regex validation support

For an explanation of how to fill out the fields, please see the relevant section
in PULL_REQUESTS.md
Description:
Support for regex validation of Subject Alternate names
Risk Level: Low
Testing: Automated tests added
Docs Changes: Docs updated
Release Notes: Updated
Fixes https://github.com/envoyproxy/envoy/issues/3705

@ggreenway I disagree, compare this PR with #1298.
Also, there is a question whether or not we need to use a separate field for this (I think not).

@PiotrSikora Ok, that makes sense.
@ramaraochavali Let's hold off on the comments I made about the implementation for now, and figure out the right feature and how to configure it first.

@ggreenway Ok. Sure no problem. I will close this PR for now and let us discuss on the issue how this should be configured. Once that is decided, I will open a fresh PR with the correct implementation.


build fail on java 17?

Hi guys,  I'm trying to  build this on windows 10,  java 17, I'm on:
dhopkins@danotop MINGW64 /c/devel/repos/git/RichTextFX ((v0.11.0))
$ git status
HEAD detached at v0.11.0
nothing to commit, working tree clean

AND
$ ./gradlew -v

------------------------------------------------------------
Gradle 7.0.2
------------------------------------------------------------

Build time:   2021-05-14 12:02:31 UTC
Revision:     1ef1b260d39daacbf9357f9d8594a8a743e2152e

Kotlin:       1.4.31
Groovy:       3.0.7
Ant:          Apache Ant(TM) version 1.10.9 compiled on September 27 2020
JVM:          17 (Oracle Corporation 17+35-2724)
OS:           Windows 10 10.0 amd64

When I build I get:
* Where:
Settings file 'C:\devel\repos\git\RichTextFX\settings.gradle'

* What went wrong:
Could not compile settings file 'C:\devel\repos\git\RichTextFX\settings.gradle'.
> startup failed:
  General error during conversion: Unsupported class file major version 61

  java.lang.IllegalArgumentException: Unsupported class file major version 61

I'm not a gradle guru and may be doing something stupid.., typically I use maven.  I saw a post about moving to java 11+ for 0.11.0 as the minimum, but I'm not seeing anything about which major versions work? is there a known issue with 17?

There shouldn't be a problem with 17 (it compiles and passes tests on my machine).
The error you are getting indicates a java version conflict, typically when an earlier version of java is used to execute a later version.
So, you probably have multiple java versions on your machine, and maybe on your path ?
In order to convince gradle to use a particular JDK, set the JAVA_HOME environment variable on the command prompt with something like:
set JAVA_HOME=c:\myPath\toCorrect\JavaInstallation\jdk17

Then try gradle again from the same command prompt.

Wild idea: gradle clean ???

I tried that as well,  it produces the same error!
my attack vector now is to install sdkman, java, and gradle via that route, and try again.  (also....I appear to NOT have gradle installed, but..my understanding is the gradlew script should handle that? so not sure if that is part of the issue.

ok, so I can now run:
gradle clean
if I try gradle  build, I get:
$ gradle build

> Configure project :richtextfx
Project :richtextfx => no module-info.java found

> Configure project :richtextfx-demos
Project :richtextfx-demos => no module-info.java found

> Task :richtextfx:compileJava
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.

> Task :richtextfx:javadoc
warning: URL http://docs.oracle.com/javase/8/docs/api/element-list was redirected to https://docs.oracle.com/en/java/javase/19/ -- Update the command-line options to suppress this warning.
warning: URL http://docs.oracle.com/javase/8/javafx/api/element-list was redirected to https://docs.oracle.com/en/java/javase/19/ -- Update the command-line optionsC:\devel\repos\git\RichTextFX\richtextfx\src\main\java\org\fxmisc\richtext\GenericStyledArea.java:104: error: heading used out of sequence:
, compared to implicit preceding heading:

 *
Adding Scrollbars to the Area

   ^
C:\devel\repos\git\RichTextFX\richtextfx\src\main\java\org\fxmisc\richtext\MultiChangeBuilder.java:17: error: heading used out of sequence:
, compared to implicit preceding heading:

 *
Relative vs Absolute Changes

   ^
C:\devel\repos\git\RichTextFX\richtextfx\src\main\java\org\fxmisc\richtext\TextEditingArea.java:440: error: unexpected heading used:
, compared to implicit preceding heading:

     *
Warning: Off-By-One errors can easily occur

       ^
C:\devel\repos\git\RichTextFX\richtextfx\src\main\java\org\fxmisc\richtext\model\StyledDocument.java:172: error: unexpected heading used:
, compared to implicit preceding heading:

     *
Warning: Off-By-One errors can easily occur

       ^
C:\devel\repos\git\RichTextFX\richtextfx\src\main\java\org\fxmisc\richtext\StyledTextField.java:218: error: tag not supported in HTML5: tt
     * The prompt text to display or <tt>null</tt> if no prompt text is to be displayed.
                                     ^
5 errors
2 warnings

> Task :richtextfx:javadoc FAILED

FAILURE: Build failed with an exception.

not sure if I should be doing gradlew, or gradle, but gradlew ..fails out with the major version 61 error.
doing which java, and java_home all now point to the same sdkman installation of jdk 17.

some more  progress.., using gradle proper, and not gradlew, I find:
gradle build    -->fails: richtextfx:javadoc failures
gradle build -xrichtextfx:javadoc build   --> success :)
gradle demos --> success
Thanks for the pointers,  closing this out.


yarn ios报错

** BUILD FAILED **
The following build commands failed:
PhaseScriptExecution [CP-User]\ Generate\ Specs /Users/a111/Library/Developer/Xcode/DerivedData/AwesomeProject-eoxpriflsbfuiqeoylogieksdmjc/Build/Intermediates.noindex/Pods.build/Debug-iphonesimulator/FBReactNativeSpec.build/Script-6F313F108841D5D7FEB93982F15CD38F.sh
(1 failure)
直接使用xcode运行项目
bash: Native/AwesomeProject/node_modules/react-native/scripts/../Libraries: No such file or directory
Command PhaseScriptExecution failed with a nonzero exit code

xcode 截图

命令行截图

🤦♂非常感谢


fix(core): allow symbol as propertyKey in @UseRequestContext decorator

Codecov Report
Base: 99.95% // Head: 99.95% // No change to project coverage :thumbsup:

Coverage data is based on head (1265c6a) compared to base (dc87ea2).
Patch coverage: 100.00% of modified lines in pull request are covered.

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #3444   +/-   ##
=======================================
  Coverage   99.95%   99.95%
=======================================
  Files         205      205
  Lines       12700    12700
  Branches     2938     2938
=======================================
  Hits        12694    12694
  Misses          6        6

Impacted Files
Coverage Δ

packages/core/src/decorators/UseRequestContext.ts
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.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

thanks!


[ja translation] tsconfig-reference 9 files

ref: #220
files:

[ ] disableReferencedProjectLoad.md
[ ]  jsxFragmentFactory.md
[ ]  jsxImportSource.md
[ ]  noUncheckedIndexedAccess.md
[ ]  watchDirectory.md
[ ]  watchFile.md
[ ]  compilerOptions.md
[ ]  top_level.md
[ ]  watchOptions.md

diff: d969a42

レビューありがとうございます。watchOptions.mdは、オリジナルのファイルが空だったので気づかずにそのままコミットしてました。Discordで聞いてみます

watchOptions.mdは空のままで良いとのことです

I think this PR just needs a final review?
Otherwise I'll close this PR at the end of the week, because we're moving these PRs into their own repos re: https://github.com/microsoft/TypeScript-Website/issues/1480

I think this PR just needs a final review?
Otherwise I'll close this PR at the end of the week, because we're moving these PRs into their own repos re: https://github.com/microsoft/TypeScript-Website/issues/1480

I am not the owner of the codebase, but I think this PR has passed all reviews

I am not the owner of the codebase, but I think this PR has passed all reviews

👍🏻

👍🏻


ImportError: libIlmImf-2_5.so.25: cannot open shared object file: No such file or directory

Expected behaviour
Installed OpenCV on Raspberry Pi 4 using fully updated Buster. Expected OpenCV to import successfully.
Actual behaviour
"ImportError: libIlmImf-2_5.so.25: cannot open shared object file: No such file or directory"
Steps to reproduce
(1) Obtain Raspberry Pi 4
(2) Install Buster
(3) Fully update Buster via sudo apt-get upgrade
(4) Install Python 3 via pyenv
(5) python -m pip install opencv-python (or opencv-python-headless)
(6) Start Python and import cv2
Issue submission checklist

[X] This is not a generic OpenCV usage question (looking for help for coding, other usage questions, homework etc.)

[X] I have read the README of this repository and understand that this repository provides only an automated build toolchain for OpenCV Python packages (there is no actual OpenCV code here)

[X] The issue is related to the build scripts in this repository, to the pre-built binaries or is a feature request (such as "please enable this additional dependency")

[X] I'm using the latest version of opencv-python

Can it be "The library is now called libOpenEXR (instead of libIlmImf). "

gcc: numpy/core/src/multiarray/hashdescr.c
gcc: build/src.linux-armv7l-3.10/numpy/core/src/multiarray/scalartypes.c
In file included from numpy/core/include/numpy/npy_math.h:596,
from numpy/core/src/multiarray/scalartypes.c.src:12:
numpy/core/src/npymath/npy_math_internal.h.src: In function ‘npy_modfl’:
numpy/core/src/npymath/npy_math_internal.h.src:490:21: warning: passing argument 2 of ‘modfl’ from incompatible pointer type [-Wincompatible-pointer-types]
return modf@c@(x, iptr);
^~~~
In file included from /home/hesperosaurus/.pyenv/versions/3.10.0/include/python3.10/pyport.h:210,
from /home/hesperosaurus/.pyenv/versions/3.10.0/include/python3.10/Python.h:63,
from numpy/core/src/multiarray/scalartypes.c.src:3:
/usr/include/arm-linux-gnueabihf/bits/mathcalls.h:110:1: note: expected ‘long double *’ but argument is of type ‘npy_longdouble *’ {aka ‘double *’}
__MATHCALL (modf,, (Mdouble __x, Mdouble *__iptr)) __nonnull ((2));
^
numpy/core/src/multiarray/scalartypes.c.src: In function ‘float_arrtype_hash’:
numpy/core/src/multiarray/scalartypes.c.src:2967:27: error: incompatible type for argument 1 of ‘_Py_HashDouble’
return _Py_HashDouble((double) PyArrayScalar_VAL(obj, @name@));
In file included from /home/hesperosaurus/.pyenv/versions/3.10.0/include/python3.10/Python.h:90,
from numpy/core/src/multiarray/scalartypes.c.src:3:
/home/hesperosaurus/.pyenv/versions/3.10.0/include/python3.10/pyhash.h:10:38: note: expected ‘PyObject *’ {aka ‘struct _object *’} but argument is of type ‘double’
PyAPI_FUNC(Py_hash_t) _Py_HashDouble(PyObject *, double);
^~~~~~~~~~
numpy/core/src/multiarray/scalartypes.c.src:2967:12: error: too few arguments to function ‘_Py_HashDouble’
return _Py_HashDouble((double) PyArrayScalar_VAL(obj, @name@));
^~~~~~~~~~~~~~

Numpy build fails according to the log. It looks like you have multiple numpy versions on your system or some other build environment issues. It's out of OpenCV scope.

i have the same problem .
openCV and numpy are both successfully installed but I still get the same error :
Traceback (most recent call last):
File "", line 1, in
File "/home/raspberrypi/.local/lib/python3.9/site-packages/cv2/init.py", line 5, in
from .cv2 import *
ImportError: libIlmImf-2_5.so.25: cannot open shared object file: No such file or directory


[Fix-7375][datasource] remove excess hive jdbc principal (#7375)

remove excess hive jdbc principal
update ut

Codecov Report

:exclamation: No coverage uploaded for pull request base (2.0.1-release@54a89e9). Click here to learn what that means.
The diff coverage is n/a.

@@               Coverage Diff                @@
##             2.0.1-release    #7382   +/-   ##
================================================
  Coverage                 ?   31.88%
  Complexity               ?     1568
================================================
  Files                    ?      432
  Lines                    ?    14569
  Branches                 ?     1445
================================================
  Hits                     ?     4646
  Misses                   ?     9474
  Partials                 ?      449

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 54a89e9...7cf77f4. Read the comment docs.


feat: added SignatureMediaType to RemoteVerifyOptions

This PR adds SignatureMediaType to RemoteVerifyOptions.
The details regarding this PR is tracked in #217.
Signed-off-by: Patrick Zheng<EMAIL_ADDRESS>

Codecov Report

Merging #218 (ca36e4d) into main (ab113eb) will increase coverage by 0.04%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             main     #218      +/-   ##
==========================================
+ Coverage   67.75%   67.79%   +0.04%
==========================================
  Files          23       23
  Lines        1569     1571       +2
==========================================
+ Hits         1063     1065       +2
  Misses        441      441
  Partials       65       65

Impacted Files
Coverage Δ

notation.go
54.45% <100.00%> (+0.92%)
:arrow_up:

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

Have added couple of comments on https://github.com/notaryproject/notation-go/issues/217, lets discuss in the issue about this feature.

Closed this PR as the issue discussion is still in progress.