primordic/IssueDupesLite huggingface dataset:
Repository: kubernetes/kube-state-metrics

Issue #2368: Parse Nested Arrays does not work
Created: 2024-04-10T09:52:03Z
Have a custom CRD returning conditions under a nested structure like
status:
  parents:
  - conditions:
    - lastTransitionTime: "2024-04-05T16:27:15Z"
      message: References resolved
      observedGeneration: 1
      reason: ResolvedRefs
      status: "True"
      type: ResolvedRefs
    - lastTransitionTime: "2024-04-05T16:27:15Z"
      message: Accepted HTTPRoute
      observedGeneration: 1
      reason: Accepted
      status: "True"
      type: Accepted
    controllerName: projectcontour.io/gateway-controller
    parentRef:
      group: gateway.networking.k8s.io
      kind: Gateway
      name: contour
      namespace: projectcontour
      sectionName: https
Using StateSet to parse with path ['status', 'parents', 'conditions'] but getting an error like
registry_factory.go:685] "gatewayapi_grpcroute_status" err="[status,parents,conditions]: expected value for path to be string, got <nil>" 

Is this supported?

Duplicate issue #2589: Does Custom Resource State Metrics support deep nested objects?
Created: 2025-01-08T18:10:47Z
We have a k8s object as follows.
status:
    resourceCount:
      tenantA:
        hostGroupA:
          example.com/type1: 2
          example.com/type2: 2
          example.com/type3: 20

We would like to generate a metrics like resourceCount{tenant=tenantA, hostGroup=hostGroupA, resourceType=type2} 2.
Initially I tried to use labelFromKey, but it seems only supports one level of nesting. I have to statically specify path, and in  the last level use labelFromKey to generate metrics by resourceType.
metrics:
            - name: resourceCount
              each:
                type: Gauge
                gauge:
                  path: [status, resourceCount, tenantA, hostGroupA]
                  labelFromKey: resourceType

Wondering whether we can use labelFromKey for nested objects.

Closing comment (2025-03-13T13:27:33Z): Duplicate of #2368
Repository: kubernetes/kube-state-metrics

Issue #1939: Resources at the beginning of ‘kubernetes.io/’ are not collected
Created: 2022-12-30T09:50:36Z
What happened:
my pod
limits:
        kubernetes.io/batch-cpu: 2k
        kubernetes.io/batch-memory: 4Gi
      requests:
         kubernetes.io/batch-cpu: "100"
         kubernetes.io/batch-memory: 819Mi

But can't be collected.
reason is  ’kubernetes.io/‘ Is considered to be a native resource:
https://github.com/kubernetes/kube-state-metrics/blob/main/internal/store/utils.go#L155
What you expected to happen:
How to reproduce it (as minimally and precisely as possible):
Anything else we need to know?:
Environment:

kube-state-metrics version:  2.7.0
Kubernetes version (use kubectl version):
Cloud provider or hardware configuration:
Other info:

Duplicate issue #2027: Resources prefixed by "kubernetes.io/" are explicitly filtered out of metrics
Created: 2023-03-14T19:46:17Z
What happened:
Our infrastructure has multiple nodes defined with kubernetes.io/network-bandwidth as an allocatable resource type. However, these resources do not show up via kube_node_status_allocatable, kube_node_status_capacity, kube_pod_container_resource_limits, and kube_pod_container_resource_requests.
What you expected to happen:
I would expect metrics to be generated for these resource types.
How to reproduce it (as minimally and precisely as possible):

Spin up a minikube cluster with the metrics-server addon enabled
Following this doc, add kubernetes.io/network-bandwidth as a resource to your node:

curl --header "Content-Type: application/json-patch+json" \
  --request PATCH \
  --data '[{"op": "add", "path": "/status/capacity/kubernetes.io~1network-bandwidth", "value": "1Mi"}]' \
  http://localhost:8001/api/v1/nodes/<node_name>/status


Following this doc, add requests and limits to a container
Hit the metrics server and grep for network, no metrics regarding network bandwidth are generated

Anything else we need to know?:
I am not sure if this is a bug or a feature, it looks very explicit on the code side.
It looks both the node store and pod store have support for extended resources, but that extended resource check checks whether the resource is prefixed by v1.ResourceDefaultNamespacePrefix, which is defined as "kubernetes.io/"
If this is intentional, then it would be great if there was a way to get resources that are prefixed by "kubernetes.io/"
Environment:

kube-state-metrics version: 2.8.1
Kubernetes version (use kubectl version): v1.26.1
Cloud provider or hardware configuration:
Other info:

Closing comment (2023-03-15T11:55:27Z): This might be a duplicate of #1939
Repository: kubernetes/kube-state-metrics

Issue #123: Grafana dashboard
Created: 2017-04-16T08:15:20Z
I think that it might be really cool to have a dashboard using this project.

Duplicate issue #319: best practise for alert rules
Created: 2017-12-18T06:23:22Z
As there is exposing metrics via kube-state-metrics, it would be better if we offer a sample alert rule for these metrics.

Closing comment (2017-12-19T19:50:17Z): Related to #123, see the discussion there. tl;dr happy about PRs to add example usages.
Repository: kubernetes/kube-state-metrics

Issue #1331: error at run "helm repo add kube-state-metrics https://kubernetes.github.io/kube-state-metrics"
Created: 2020-12-18T02:33:52Z
What happened:
helm repo add kube-state-metrics https://kubernetes.github.io/kube-state-metrics
Error: Looks like "https://kubernetes.github.io/kube-state-metrics" is not a valid chart repository or cannot be reached: Failed to fetch https://kubernetes.github.io/kube-state-metrics/index.yaml : 404 Not Found
What you expected to happen:
helm repo add kube-state-metrics https://kubernetes.github.io/kube-state-metrics
"kube-state-metrics" has been added to your repositories
How to reproduce it (as minimally and precisely as possible):
i guess https://kubernetes.github.io/kube-state-metrics/index.yaml is out of line.
Anything else we need to know?:
Environment:

helm3 version
version.BuildInfo{Version:"v3.4.0", GitCommit:"7090a89efc8a18f3d8178bf47d2462450349a004", GitTreeState:"clean", GoVersion:"go1.14.10"}

Duplicate issue #1337: Unable to install chart from the repo
Created: 2020-12-23T07:33:49Z
What happened:
Following the instruction in https://github.com/kubernetes/kube-state-metrics/tree/master/charts/kube-state-metrics#get-repo-info to add the kube-state-metrics repo fails:
$ helm repo add kube-state-metrics https://kubernetes.github.io/kube-state-metrics
Error: looks like "https://kubernetes.github.io/kube-state-metrics" is not a valid chart repository or cannot be reached: failed to fetch https://kubernetes.github.io/kube-state-metrics/index.yaml : 404 Not Found
What you expected to happen:
To be able to add the repo and install the chart
How to reproduce it (as minimally and precisely as possible):
See description above

Closing comment (2020-12-23T07:36:32Z): Sorry, seems like a dup of #1331
Repository: kythe/kythe

Issue #5893: Error : no such package '@io_kythe//kythe/data': The repository '@io_kythe' could not be resolved: Repository '@io_kythe' is not defined
Created: 2023-10-13T05:56:44Z
https://buildkite.com/bazel/bazel-at-head-plus-downstream/builds/3379#_
Platform: Ubuntu
Logs:
ERROR: no such package '@io_kythe//kythe/data': The repository '@io_kythe' could not be resolved: Repository '@io_kythe' is not defined
(03:57:19) ERROR: /var/lib/buildkite-agent/builds/bk-docker-r8lq/bazel-downstream-projects/kythe/WORKSPACE:63:19: no such package '@io_kythe//kythe/data': The repository '@io_kythe' could not be resolved: Repository '@io_kythe' is not defined and referenced by '//external:vnames_config'
(03:57:19) ERROR: Analysis of target '//kythe/cxx/indexer/cxx/testdata/proto:proto_semantic_ref_aw_test_proto_kzip' failed; build aborted: Analysis failed
(03:57:19) INFO: Elapsed time: 1.389s, Critical Path: 0.04s
(03:57:19) INFO: 1 process: 1 internal.
(03:57:19) ERROR: Build did NOT complete successfully
(03:57:19) FAILED:


Steps:
git clone -v https://github.com/kythe/kythe.git
git reset 47d8a9a27d280e7c71150a1b267f46790ead5fb7 --hard
export USE_BAZEL_VERSION=b3a83a3a3dab0b87952b67cfc7ea8516eabeec4b
sudo apt update && sudo apt -y install bison flex uuid-dev asciidoc graphviz source-highlight
bazel build //kythe/...

CC Greenteam @mai93

Duplicate issue #5921:  ERROR: no such package '@io_kythe//kythe/data': The repository '@io_kythe' could not be resolved: Repository '@io_kythe' is not defined
Created: 2023-11-08T12:40:09Z
https://buildkite.com/bazel/bazel-at-head-plus-downstream/builds/3445#018bacb6-76dc-4f11-97ea-3a5436823a8b
Platform : ubuntu2004
Logs:
ERROR: no such package '@io_kythe//kythe/data': The repository '@io_kythe' could not be resolved: Repository '@io_kythe' is not defined
(02:28:08) ERROR: /var/lib/buildkite-agent/builds/bk-docker-pr70/bazel-downstream-projects/kythe/WORKSPACE:63:19: no such package '@io_kythe//kythe/data': The repository '@io_kythe' could not be resolved: Repository '@io_kythe' is not defined and referenced by '//external:vnames_config'
Target //kythe/java/com/google/devtools/kythe/analyzers/base:corner_case_srcs failed to build
(02:28:08) ERROR: Analysis of target '//kythe/cxx/indexer/textproto/plugins/example/testdata:cross_file_test_test1_entries' failed; build aborted: Analysis failed

Steps:
git clone https://github.com/kythe/kythe.git
git reset a7d94adb2131b8fe6c53f2a4678749e7552e7d51 --hard
export USE_BAZEL_VERSION=6a08b2f8a2a2c4efb5ffb5c626ab73728772d9a6
sudo apt update && sudo apt -y install bison flex uuid-dev asciidoc graphviz source-highlight
bazel build //kythe/...

CC Greenteam @Wyverald

Closing comment (2023-11-09T17:20:31Z): This is almost certainly a duplicate of #5893
Repository: kythe/kythe

Issue #4264: Kythe is incompatible with --incompatible_load_proto_rules_from_bzl
Created: 2019-12-16T22:13:16Z
Hello maintainers of Kythe 👋,
The Bazel team is in progress of migrating the native Protobuf rules to Starlark. As a first step towards this goal, starting with Bazel 3.0, all Protobuf rules will require explicit load statements.
You can use the following buildifier command to apply most of the required migrations for you:
buildifier --lint=fix --warnings=native-proto $(find . -name "BUILD" -o -name "BUILD.bazel" -o -name "*.bzl")
For further information, see bazelbuild/bazel#8922 or ping me.
Thanks,
Yannic

Duplicate issue #4278: Flag --incompatible_load_proto_rules_from_bzl will break Kythe in Bazel 1.2.1
Created: 2019-12-19T04:33:35Z
Incompatible flag --incompatible_load_proto_rules_from_bzl will break Kythe once Bazel 1.2.1 is released.
Please see the following CI builds for more information:

[:ubuntu: 18.04 (OpenJDK 11)](:ubuntu: 18.04 (OpenJDK 11))

Questions? Please file an issue in https://github.com/bazelbuild/continuous-integration
Important: Please do NOT modify the issue title since that might break our tools.

Closing comment (2019-12-20T21:16:41Z): This is a duplicate of #4264
Repository: kythe/kythe

Issue #2381: Kythe doesn't handle conditional bindings with different types [phab:T272]
Created: 2018-06-26T03:31:50Z
Created by pludemann at 2017-09-19 01:20:55:
The following Python code snippet should produce both a function and a record (subkind class) for the two defines/bindings of popen. But Kythe verifier complains that "Two facts about a node differed in value".
(This code comes from https://github.com/python/typeshed/blob/master/stdlib/2/os/__init__.pyi#L270)
if sys.version_info >= (3, 0):
    class popen(_TextIOWrapper):
        # TODO 'b' modes or bytes command not accepted?
        def __init__(self, command: str, mode: str = ...,
                     bufsize: int = ...) -> None: ...
        def close(self) -> Any: ...  # may return int
else:
    def popen(command: str, *args, **kwargs) -> Optional[IO[Any]]: ...
    def popen2(cmd: str, *args, **kwargs) -> Tuple[IO[Any], IO[Any]]: ...
    def popen3(cmd: str, *args, **kwargs) -> Tuple[IO[Any], IO[Any], IO[Any]]: ...
    def popen4(cmd: str, *args, **kwargs) -> Tuple[IO[Any], IO[Any]]: ...

Duplicate issue #3346: Support for multiple "node/kind"
Created: 2019-01-02T23:35:03Z
Consider the following Python code:
    if some_condition:
      class MyClass: ...
    else:
       MyClass = Exception
This results in node/kind being both record and variable.  Sophisticated analysis might be able to determine which branch of the if-then-else is taken (e.g., if the condition contains only sys.version, as in typeshed/stdlib/2and3/builtins.pyi) but in the general case, this isn't possible.
As far as I can tell, there is no mechanism in the Kythe schema to define a "kind" as a union. But node/kind is required: "The kind is the one fact every node must have in order to participate in the rest of the schema."

Closing comment (2019-01-03T02:15:07Z): Seems to be a duplicate of #2381
Repository: kythe/kythe

Issue #248: C++ indexer emitting warnings for missing source paths [phab:T24]
Created: 2018-06-25T20:31:43Z
Created by schroederc at 2015-02-12 21:50:47:
When indexing many of the C++ compilations resulting from a ./campfire extract, warnings appear for missing source paths for files with ../ components.  For example, the errors below result from indexing third_party_snappy_snappysnappy-c.cc.c++.kindex.
As a secondary issue, the messages printed are missing a trailing newline, causing this block to be somewhat unreadable.
Warning: when looking for /usr/lib/gcc/x86_64-linux-gnu/4.9/../../../../include/c++/4.9/string[f6178097da15ee24de374dfc0a138e80a7c0268e410c1866ebb0a94cf1a2853a]:1304: missing source pathWarning: when looking for /usr/lib/gcc/x86_64-linux-gnu/4.9/../../../../include/c++/4.9/string[f6178097da15ee24de374dfc0a138e80a7c0268e410c1866ebb0a94cf1a2853a]:1332: missing source pathWarning: when looking for /usr/lib/gcc/x86_64-linux-gnu/4.9/../../../../include/c++/4.9/string[f6178097da15ee24de374dfc0a138e80a7c0268e410c1866ebb0a94cf1a2853a]:1360: missing source pathWarning: when looking for /usr/lib/gcc/x86_64-linux-gnu/4.9/../../../../include/c++/4.9/string[f6178097da15ee24de374dfc0a138e80a7c0268e410c1866ebb0a94cf1a2853a]:1430: missing source pathWarning: when looking for /usr/lib/gcc/x86_64-linux-gnu/4.9/../../../../include/c++/4.9/string[f6178097da15ee24de374dfc0a138e80a7c0268e410c1866ebb0a94cf1a2853a]:1492: missing source pathWarning: when looking for /usr/lib/gcc/x86_64-linux-gnu/4.9/../../../../include/c++/4.9/string[f6178097da15ee24de374dfc0a138e80a7c0268e410c1866ebb0a94cf1a2853a]:1561: missing source pathWarning: when looking for /usr/lib/gcc/x86_64-linux-gnu/4.9/../../../../include/c++/4.9/string[f6178097da15ee24de374dfc0a138e80a7c0268e410c1866ebb0a94cf1a28
53a]:1709: missing source pathWarning: when looking for /usr/lib/gcc/x86_64-linux-gnu/4.9/../../../../include/c++/4.9/string[f6178097da15ee24de374dfc0a138e80a7
c0268e410c1866ebb0a94cf1a2853a]:1817: missing source pathWarning: when looking for /usr/lib/gcc/x86_64-linux-gnu/4.9/../../../../include/c++/4.9/string[f6178097da15ee24de374dfc0a138e80a7c0268e410c1866ebb0a94cf1a2853a]:1848: missing source pathWarning: when looking for /usr/lib/gcc/x86_64-linux-gnu/4.9/../../../../include/c++/4.9/string[f6178097da15ee24de374dfc0a138e80a7c0268e410c1866ebb0a94cf1a2853a]:1879: missing source path

Duplicate issue #240: The xrefs UI shows some files without a corpus & path [phab:T23]
Created: 2018-06-25T20:31:16Z
Created by fromberger at 2015-02-12 00:50:54:
When viewing https://xrefs-dot-kythe-repo.appspot.com/, note that in the file listing there is a heading shaped like :://, under which there are some files that appear to be from local absolute paths. I assume we probably just need to add a case or two to the vname rewriting rules.

Closing comment (2018-06-26T06:32:54Z): duplicate of #248
Repository: kythe/kythe

Issue #4273: Flag --incompatible_no_implicit_file_export will break Kythe in a future Bazel release
Created: 2019-12-19T04:31:12Z
Incompatible flag --incompatible_no_implicit_file_export will break Kythe once Bazel 1.2.1 is released.
Please see the following CI builds for more information:

[:ubuntu: 18.04 (OpenJDK 11)](:ubuntu: 18.04 (OpenJDK 11))

Questions? Please file an issue in https://github.com/bazelbuild/continuous-integration
Important: Please do NOT modify the issue title since that might break our tools.

Duplicate issue #4292: Flag --incompatible_no_implicit_file_export will break Kythe in a future Bazel release
Created: 2019-12-28T03:32:13Z
Incompatible flag --incompatible_no_implicit_file_export will be enabled by default in a future Bazel release [1], thus breaking Kythe.
The flag is documented here: bazelbuild/bazel#10225
Please check the following CI builds for build and test results:

Ubuntu 18.04, OpenJDK 11

Never heard of incompatible flags before? We have documentation that explains everything.
If you don't want to receive any future issues for Kythe or if you have any questions,
please file an issue in https://github.com/bazelbuild/continuous-integration
Important: Please do NOT modify the issue title since that might break our tools.
[1] The target release hasn't been determined yet. Our tool will update the issue title once the flag flip has been scheduled.

Closing comment (2019-12-30T18:21:52Z): This is still a duplicate of #4273 and we're still blocked on Bazel fixing the same issue upstream.  Please stop opening automated bugs that are identical to other automated bugs.
Repository: kythe/kythe

Issue #2874: C++ compilation of rule '//kythe/cxx/common:k\ zip_writer_test' failed
Created: 2018-07-26T20:41:56Z
kythe/cxx/common/kzip_writer_test.cc:89:5: error: return type 'kythe::Status' must match previous return\
 type 'const kythe::Status' when lambda expression has unspecified explicit return type
    return OkStatus();
    ^
kythe/cxx/common/kzip_writer_test.cc:112:5: error: return type 'kythe::Status' must match previous retur\
n type 'const kythe::Status' when lambda expression has unspecified explicit return type
    return OkStatus();
    ^

Fixed by:
--- a/kythe/cxx/common/status.h
+++ b/kythe/cxx/common/status.h
@@ -87,7 +87,7 @@ class ABSL_MUST_USE_RESULT Status final {
 };

 /// \brief Returns a non-error status.
-inline Status OkStatus() { return {}; }
+inline const Status OkStatus() { return {}; }

 /// \brief Return a Cancelled error with the given message.
 Status CancelledError(absl::string_view message);

Duplicate issue #2873: Buildbot failures in kzip_writer_test.cc
Created: 2018-07-26T18:52:42Z
https://buildbot-dot-kythe-repo.appspot.com/#/builders/5/builds/124
https://buildbot-dot-kythe-repo.appspot.com/#/builders/6/builds/78
https://buildbot-dot-kythe-repo.appspot.com/#/builders/7/builds/69
Example:
ERROR: /buildbot/worker/bazel-0_14_0/build/kythe/cxx/common/BUILD:365:1: Couldn't build file kythe/cxx/common/_objs/kzip_writer_test/kythe/cxx/common/kzip_writer_test.pic.o: C++ compilation of rule '//kythe/cxx/common:kzip_writer_test' failed (Exit 1)
kythe/cxx/common/kzip_writer_test.cc:89:5: error: return type 'kythe::Status' must match previous return type 'const kythe::Status' when lambda expression has unspecified explicit return type
    return OkStatus();
    ^
kythe/cxx/common/kzip_writer_test.cc:112:5: error: return type 'kythe::Status' must match previous return type 'const kythe::Status' when lambda expression has unspecified explicit return type
    return OkStatus();
    ^
2 errors generated.
INFO: From Executing genrule //kythe/testdata:entries:

Closing comment (2018-07-26T22:04:27Z): Duplicate of #2874
Repository: kythe/kythe

Issue #451: Bazel should create static binaries [phab:T38]
Created: 2018-06-25T20:45:44Z
Created by schroederc at 2015-05-11 19:30:46:
Most of our Go binaries currently rely on the system's leveldb and snappy shared libraries.  We should link in //third_party/leveldb and //third_party/snappy, respectively.
Some of our C++ binaries are also dynamically linked.

Duplicate issue #2112: Statically link all dependencies of Kythe binaries [phab:T249]
Created: 2018-06-26T02:33:28Z
Created by juanch at 2017-05-31 22:49:33:
To run Kythe on GCP, one requirement is to statically link all dependencies. It would be great to build such binaries as part of "bazel build //kythe/release", in addition to the existing binaries.

Closing comment (2018-06-27T23:34:29Z): duplicate of #451
Repository: kythe/kythe

Issue #1935: Tests fail on OS X [phab:T238]
Created: 2018-06-26T01:39:24Z
Created by salguarnieri at 2017-04-13 23:57:59:
These tests are failing on OS X when I run bazel test //...:all
//kythe/cxx/common:commandline_test                                      FAILED in 1 out of 2 in 0.1s
//kythe/cxx/common:index_pack_test                                       FAILED in 1 out of 2 in 0.1s
//kythe/cxx/common:kythe_uri_test                                        FAILED in 1 out of 2 in 0.1s
//kythe/cxx/common:path_utils_test                                       FAILED in 1 out of 2 in 0.1s
//kythe/cxx/extractor:objc_bazel_support_library_test                    FAILED in 1 out of 2 in 0.1s
//kythe/cxx/extractor:test                                               FAILED in 1 out of 2 in 0.1s
//kythe/cxx/extractor/testdata:claim_pragma_test                         FAILED in 1 out of 2 in 0.1s
//kythe/cxx/indexer/cxx:test                                             FAILED in 1 out of 2 in 0.1s

Duplicate issue #1928: //kythe/cxx/extractor/testdata:claim_pragma_test fails on OS X [phab:T236]
Created: 2018-06-26T01:39:03Z
Created by salguarnieri at 2017-04-12 19:10:20:
build/testlogs/kythe/cxx/extractor/testdata/claim_pragma_test/test.log
exec ${PAGER:-/usr/bin/less} "$0" || exit 1
-----------------------------------------------------------------------------
dyld: Symbol not found: __ZN5clang14FrontendAction22shouldEraseOutputFilesEv
  Referenced from: /private/var/tmp/_bazel_salguarnieri/ca16ea5a435d8ac2288f379cdf092007/bazel-sandbox/4045341088757286253/execroot/kythe/bazel-out/local-fastbuild/bin/kythe/cxx/extractor/testdata/claim_pragma_test.runfiles/io_kythe/kythe/cxx/extractor/testdata/../../../../_solib_darwin//libkythe_Scxx_Sextractor_Sliblib.so
  Expected in: flat namespace
 in /private/var/tmp/_bazel_salguarnieri/ca16ea5a435d8ac2288f379cdf092007/bazel-sandbox/4045341088757286253/execroot/kythe/bazel-out/local-fastbuild/bin/kythe/cxx/extractor/testdata/claim_pragma_test.runfiles/io_kythe/kythe/cxx/extractor/testdata/../../../../_solib_darwin//libkythe_Scxx_Sextractor_Sliblib.so
external/bazel_tools/tools/test/test-setup.sh: line 164: 33544 Abort trap: 6           "${TEST_PATH}" "$"
Use --strategy=TestRunner=standalone to disable sandboxing for the failing actions.

Closing comment (2018-06-27T20:29:48Z): duplicate of #1935
Repository: kythe/kythe

Issue #4273: Flag --incompatible_no_implicit_file_export will break Kythe in a future Bazel release
Created: 2019-12-19T04:31:12Z
Incompatible flag --incompatible_no_implicit_file_export will break Kythe once Bazel 1.2.1 is released.
Please see the following CI builds for more information:

[:ubuntu: 18.04 (OpenJDK 11)](:ubuntu: 18.04 (OpenJDK 11))

Questions? Please file an issue in https://github.com/bazelbuild/continuous-integration
Important: Please do NOT modify the issue title since that might break our tools.

Duplicate issue #4291: Flag --incompatible_no_implicit_file_export will break Kythe in a future Bazel release
Created: 2019-12-26T21:28:56Z
Incompatible flag --incompatible_no_implicit_file_export will be enabled by default in a future Bazel release [1], thus breaking Kythe.
The flag is documented here: bazelbuild/bazel#10225
Please check the following CI builds for build and test results:

Ubuntu 18.04, OpenJDK 11

Never heard of incompatible flags before? We have documentation that explains everything.
If you don't want to receive any future issues for Kythe or if you have any questions,
please file an issue in https://github.com/bazelbuild/continuous-integration
Important: Please do NOT modify the issue title since that might break our tools.
[1] The target release hasn't been determined yet. Our tool will update the issue title once the flag flip has been scheduled.

Closing comment (2019-12-27T16:51:31Z): This is a duplicate of #4273
Repository: ladjs/superagent

Issue #484: Cross domain error falsely thrown
Created: 2014-10-27T21:07:28Z
I believe that I have been getting some falsely thrown CORs errors.
https://github.com/visionmedia/superagent/blob/master/lib/client.js#L877
I believe that when the page is refreshed or navigated away from while an XHR request is in flight, the browser will set the status to 0. Is there a better way to detect if it is specifically a cross domain error?

Duplicate issue #679: Getting error "Origin is not allowed by Access-Control-Allow-Origin" in browser when no internet connection
Created: 2015-06-18T18:27:50Z
I'm getting a "Origin is not allowed by Access-Control-Allow-Origin" error from superagent in Chrome 43 on OSX when I attempt to hit a service that does not respond, or when the internet connection has been turned off entirely.
Seems that Request.prototype.crossDomainError is called too often? Maybe some more checks should be added in Request.prototype.end before falling through to crossDomainError()?

Closing comment (2015-11-30T23:06:42Z): Agreed this is a problem. Duplicate of  #484
Repository: ladjs/superagent

Issue #1259: Limit maximum response size
Created: 2017-08-07T17:15:56Z
Superagent buffers and uncompresses responses in memory. Malicious server could send extremely large response causing superagent to use excessive amounts of memory.
I suggest adding a way to set a maximum response size, and have a default limit set.

Duplicate issue #1283: Large gzip Denial of Service
Created: 2017-09-27T02:50:06Z
There are some security issue with your module.
When I use NSP to check the securities issues, I receive this: https://nodesecurity.io/advisories/479

Closing comment (2017-09-27T14:50:03Z): This is related to #1259
Repository: ladjs/superagent

Issue #19: In node the .end callback is fn(err, res) in contrast with fn(res) in the browser
Created: 2011-09-14T22:56:01Z
What the title says. Is this on purpose? If so it should be mentioned in the readme because it is confusing.

Duplicate issue #138: timeout cannot be seen by reading res.timeout
Created: 2012-11-01T21:37:40Z
Reading the docs i assumed that
.timeout(5000).end(function(res) {
   console.log(res.timeout);
});

should work, it doesn't :
The code follows that path :
var err = new Error('timeout of ' + timeout + 'ms exceeded');
err.timeout = timeout;
self.callback(err);
// go into self.callback(err, res)
if (2 == fn.length) return fn(err, res);
fn(res); // TODO: emit error

We can see res is empty and err is not sent in the last line.
fn(res || err);

would work, but it isn't clean.

Closing comment (2012-11-08T22:46:41Z): This is related to #19
Repository: ladjs/superagent

Issue #410: Unpossible to handle the error from zlib
Created: 2014-07-06T01:04:21Z
The error I get from zlib
Error: unknown compression method
at Zlib._binding.onerror (zlib.js:361:17)
{ errno: -3, code: 'Z_DATA_ERROR' }
But the real problem is that I can't handle it.
utils.unzip overrides res.on method to attach handlers on zlib stream, however in combination with streaming interface, utils.unzip(req, res) is called before 'response' event is triggered to the user instance, so I get the access to the res object after the error is already triggered.
Does this need a reproducible example?

Duplicate issue #776: response 'error' events aren't handled by .end()
Created: 2015-11-03T22:00:15Z
We noticed this cryptic error coming from zlib:
events.js:141
      throw er; // Unhandled 'error' event
      ^

Error: incorrect data check
    at Zlib._handle.onerror (zlib.js:363:17)

If zlib encounters an error while decompressing a stream, an error event is emitted on an internal stream object:
https://github.com/visionmedia/superagent/blob/master/lib/node/utils.js#L86
The response stream's .on method is then hooked up to the internal stream object:
https://github.com/visionmedia/superagent/blob/master/lib/node/utils.js#L113
So in order to handle errors on the internal stream object, we have to listen for 'error' on the response stream.
It seems like the only access to the response stream prior to stream end is inside of Request.prototype.end - the response will have ended by the time we reach our callback.
All this is to say, I think if zlib encounters an error decompressing a data chunk, there's no way for us to handle it, because it happens before the response 'end' event. Do you think this analysis is correct?

Closing comment (2016-01-12T15:48:38Z): Possibly related to #410
Repository: ladjs/superagent

Issue #714: request.set triggers request in node
Created: 2015-08-03T22:52:01Z
> r = require('superagent').get('/')
> r.set({foo: 'bar'})
(seconds later)
> TypeError: fn is not a function
    at Request.callback (...node_modules/superagent/lib/node/index.js:781:12)
    at ClientRequest.<anonymous> (...node_modules/superagent/lib/node/index.js:736:10)
    at emitOne (events.js:77:13)
    at ClientRequest.emit (events.js:166:7)
    at Socket.socketErrorListener (_http_client.js:258:9)
    at emitOne (events.js:77:13)
    at Socket.emit (events.js:166:7)
    at net.js:430:14
    at doNTCallback0 (node.js:415:9)
    at process._tickDomainCallback (node.js:385:13)
> double callback!

I haven't called .end() yet, so no callback is present to handle that error. But the request shouldn't be sent in the first place...

Duplicate issue #676: undefined is not a function
Created: 2015-06-10T09:04:43Z
In our logging I've found an exception that I can't find the reason for. It's a classical helpful "undefined is not a function" and it seems to have something to do with Superagent:
Message: undefined is not a function
    Request.Request.callback in /app/node_modules/superagent/lib/node/index.js:781
    ClientRequest.[anonymous] in /app/node_modules/superagent/lib/node/index.js:736
    ClientRequest.ClientRequest.emit in events.js:107
    TLSSocket.TLSSocket.socketOnEnd in _http_client.js:300
    TLSSocket.TLSSocket.emit in events.js:129
    unknown.[anonymous] in _stream_readable.js:908
    process.process._tickCallback in node.js:355

We're making several superagent-calls to several different endpoints and I don't know at what URL or under what conditions this exception is thrown.
Looking at the code, it seems to have something to do with a missing callback:
https://github.com/visionmedia/superagent/blob/master/lib/node/index.js#L781
//...
var fn = this._callback;
//...
if (err) {
  return fn(err, res); // #781
}
//...
https://github.com/visionmedia/superagent/blob/master/lib/node/index.js#L736
//...
req.on('error', function(err){
    // flag abortion here for out timeouts
    // because node will emit a faux-error "socket hang up"
    // when request is aborted before a connection is made
    if (self._aborted) return;
    self.callback(err); // #736
  });
//...
We don't have any calls without a callback. Do we have to handle exceptions like timeouts in a different/manual manner maybe?

Closing comment (2015-08-11T17:44:14Z): @GDreyV This is related/duplicate of #714. See my explanation there on why this happens.
Repository: ladjs/superagent

Issue #690: Different behaviour between browser and node library
Created: 2015-07-01T12:17:45Z
Hi, not sure this is a bug, but I've noticed that there is at least one difference between lib/client.js and lib/node/index.js. For example, checking a response's statusCode attribute works in node but does not work in the browser, since client.js doesn't even mention this attribute.
If this is by design, please disregard this. Thanks! 😄

Duplicate issue #586: .withCredentials() fails in node context
Created: 2015-03-13T03:38:19Z
The node version of superagent does not create a withCredentials method.  Code that is shared with node and the browser (in my case, an api-connection helper) will fail in the node context if it invokes withCredentials.

Closing comment (2015-09-02T18:32:44Z): Related to #690
Repository: ladjs/superagent

Issue #1213: post pfx has problem
Created: 2017-04-29T07:47:50Z
when i use superagent post,  .pfx(),  it always goes wrong
Error: error:0906D06C:PEM routines:PEM_read_bio:no start line
my code is here:
// let response = await superagent
//   .post(URL_REFUND)
//   .send(formData)
//   .pfx(PFX)
//   .key(MCH_ID)
//   .charset(config.common.char_set_utf8);
but when i use request library, it is ok!

Duplicate issue #1222: pfx and passphrase
Created: 2017-05-05T15:57:03Z
Hi,
seems i cannot use pfx() and passphrase in an https request allthough it works find in node https.request.
Is there any way i can set the passphrase?
Regards
Alex

Closing comment (2017-05-05T17:04:46Z): It should work. I don't know why it doesn't. Duplicate of #1213
Repository: ladjs/superagent

Issue #484: Cross domain error falsely thrown
Created: 2014-10-27T21:07:28Z
I believe that I have been getting some falsely thrown CORs errors.
https://github.com/visionmedia/superagent/blob/master/lib/client.js#L877
I believe that when the page is refreshed or navigated away from while an XHR request is in flight, the browser will set the status to 0. Is there a better way to detect if it is specifically a cross domain error?

Duplicate issue #733: Can't use with phonegap
Created: 2015-08-26T13:05:23Z
When trying to request a local file compiled into a phonegap/cordova application, superagent throws a Origin is not allowed by Access-Control-Allow-Origin error.
This can be seen with code as simple as:
request.get('mylocalfile.json').end((err, res) => {
    console.log(err);
});

Doing the same thing with vanilla JS works fine:
function listener() { console.log(this);}

var url = "mylocalfile.json";
var req = new XMLHttpRequest();
req.addEventListener('load', reqListener);
req.addEventListener('error', reqListener);
req.open("get", url, true);
req.send()

Closing comment (2015-11-26T00:00:46Z): @ccapndave it seems related to #484
Repository: ladjs/superagent

Issue #1362: Unset default application/json content-type header
Created: 2018-04-04T13:03:27Z
I'm using superagent to perform various request to custom API's for my project. I also want to use it to call the geocode API from google maps. This API only accepts requests without the content-type header due to CORS.
Is it possible to remove (unset) the default application/json type/header? (request-base.js - line 593)

Duplicate issue #1387: Prevent default Content-Type header (Reddit API)
Created: 2018-06-18T07:17:37Z
I'm trying to connect to the Reddit API using superagent. However the Reddit API does not allow Content-Type in the headers. I am only setting Authorization but superagent seems to be setting it's own default headers which I can't seem to unset.
request.post('https://www.reddit.com/api/v1/access_token')
  .send(data)
  .set('Authorization', `Basic ${authCode}`)
  .then(res => {
    console.log(res.body)
  })
  .catch(error => {
    console.error(error)
  })

Failed to load https://www.reddit.com/api/v1/access_token: Request header field Content-Type is not allowed by Access-Control-Allow-Headers in preflight response.
Reddit allows:
access-control-allow-credentials: false
access-control-allow-headers: Authorization
access-control-allow-methods: POST
access-control-allow-origin: *

Closing comment (2019-06-06T06:27:43Z): dup of #1362
Repository: ladjs/superagent

Issue #747: Multipart request (formData) can raise double callback
Created: 2015-09-24T15:33:45Z
Hi,
I have encountered a problem with supertest, in the case we do request with attach (multipart) it will use a formData instance and this instance will be pipped  to req : https://github.com/visionmedia/superagent/blob/master/lib/node/index.js#L1017.
But if for some reason the file is not completely uploaded and we send back a response (because of an error for example). This part of the code will be reached:
https://github.com/visionmedia/superagent/blob/master/lib/node/index.js#L862
And self.callback will be called . The connection will be closed, so req will raise an error event
[Error: write ECONNRESET] code: 'ECONNRESET', errno: 'ECONNRESET', syscall: 'write' (https://github.com/visionmedia/superagent/blob/master/lib/node/index.js#L731).
In the end the callback is called a second time.
Maybe I'm doing something wrong, Is this behaviour intended ?

Duplicate issue #1520: Posting multipart/form-data
Created: 2019-10-14T02:25:08Z
Hi, I'm trying to test a route that accepts multipart/form-data. The route works via postman, a node script, and in the browser, but I can't seem to get it to work with supertest (who referred me to the superagent docs).
Here's the code that's working in a simple node script:
  const form = new FormData()
  form.append('entry', fs.createReadStream('./readme.md'))
  await axios.post('http://localhost:3001/api/v0/files/add', form, {
    headers: form.getHeaders()
  })
 // success!
I've tried numerous different strategies with forming a post via supertest:
test('POST file', done => {
  const form = new FormData()
  form.append('entry', fs.createReadStream('./readme.md'))
  request(app)
    .post('/api/v0/files/add')
    .type('form')
    .attach('entry', form)
    .set(form.getHeaders())
    .expect(201, done)
})
I've also tried the above with different variations, like removing .type or .set(headers), still with no luck.
The error seems to be throwing from the busboy lib, which is likely due to the multer lib:
Unhandled error. (Error: Part terminated early due to unexpected end of multipart data
      at node_modules/busboy/node_modules/dicer/lib/Dicer.js:65:36
      at processTicksAndRejections (internal/process/task_queues.js:75:11))Error [ERR_UNHANDLED_ERROR]: Unhandled error. (Error: Part terminated early due to unexpected end of multipart data
      at node_modules/busboy/node_modules/dicer/lib/Dicer.js:65:36
      at processTicksAndRejections (internal/process/task_queues.js:75:11))
      at PartStream.<anonymous> (node_modules/busboy/lib/types/multipart.js:278:17)
      at node_modules/busboy/node_modules/dicer/lib/Dicer.js:65:22

Here's the issue with supertest lib
any ideas what i'm doing wrong? Thanks for any help!

Closing comment (2021-07-14T11:24:22Z): I'm having the same issue. Sometimes it works, sometimes I get ECONNRESET and sometimes I get ECONNABORTED. It could be related to #747
Repository: lancedb/lancedb

Issue #673: `db.table_names()` comes up empty on GCS
Created: 2023-12-01T00:36:40Z
From a user report:
>>> import lancedb
>>> db = lancedb.connect("gs://xxxx/lance")
>>> db.table_names()
[]
>>> db.open_table("meta")
LanceTable(meta)
>>> t = db.open_table("meta")
>>> len(t.to_pandas())
11
>>>
We use PyArrow filesystems under the hood to introspect the bucket:

  
    
      lancedb/python/lancedb/db.py
    
    
        Lines 296 to 298
      in
      b085d9a
    
  
  
    

        
          
           paths = filesystem.get_file_info( 
        

        
          
               fs.FileSelector(get_uri_location(self.uri)) 
        

        
          
           ) 
        
    
  


However, PyArrow's GCSFileSystem is known to report common prefixes as empty if there isn't a "directory marker": apache/arrow#32403 object-store-rs doesn't create these directory markers.
I suspect that is the underlying issue. We could either create the directory markers or we could use some other mechanism to list the bucket.

Duplicate issue #1001: bug(python): operations failing when running against GCS
Created: 2024-02-19T22:18:29Z
LanceDB version
v0.5.5
What happened?

table_names returns an empty list even though there are tables
drop_table successfully drops the table and then throws a FileNotFoundError

Are there known steps to reproduce?
db = lancedb.connect(f"gs://bucket-name")
db.create_table("table", data=[{"id": 1}])
print(db.table_names()) # []
db.drop_table("table") # google::cloud::Status(NOT_FOUND: Permanent error DeleteObject: No such object: ...

Closing comment (2024-02-19T22:22:51Z): Hi @fekstr. I believe this is a duplicate of #673
We are working toward a fix, but will take some time to implement.
Repository: lancedb/lancedb

Issue #1501: update method support arrays of float for vector column update
Created: 2024-08-05T13:00:46Z
LanceDB version
v0.11.0
What happened?
update method support arrays of float for vector column update
Are there known steps to reproduce?
use dataset: https://github.com/cwida/duckdb-data/releases/download/v1.0/lineitemsf1.snappy.parquet
data convert lance
And after：
```
db = lancedb.connect(uri)
table = db.open_table(name=name)

data = [{'_id': '<dbpedia:Joy_of_Life>',
         'title': "Joy of Life update before",
         'text': "Fan Xian is born in the ancient ...",
         'openai': [0.02147006, -0.022711258, 0.011349027, -0.014392599, -0.030396113, ...]}]
table.add(data)

data = {'openai': [-0.005945034, -0.045402076, 0.009418799, -0.03202658, -0.017785143, 0.0089392, ...]}
table.update('_id="<dbpedia:Joy_of_Life>"', data)

but error to execute：
Traceback (most recent call last):
  File "/opt/software/lancedb/benchmark_wpj/update_data_v1_1M.py", line 512, in <module>
    update('/opt/dii/lance', 'dbpedia-entities-openai-1M', '_id="<dbpedia:Joy_of_Life>"', data)
  File "/opt/software/lancedb/benchmark_wpj/update_data_v1_1M.py", line 483, in update
    table.update(where, values)
  File "/root/miniconda3/envs/lancedb_benchmark/lib/python3.10/site-packages/lancedb/table.py", line 1650, in update
    self._dataset_mut.update(values_sql, where)
  File "/root/miniconda3/envs/lancedb_benchmark/lib/python3.10/site-packages/lance/dataset.py", line 1053, in update
    self._ds.update(updates, where)
ValueError: Invalid user input: LanceError(IO): Only arrays of literals are supported in lance., /home/runner/work/lance/lance/rust/lance-datafusion/src/planner.rs:535:29, /home/runner/work/lance/lance/rust/lance/src/dataset/write/update.rs:115:14
 
![image](https://github.com/user-attachments/assets/6663223c-4d51-4854-a8c9-ba5fe75d0f74)

Duplicate issue #1661: bug(node): Error: Failed to convert JavaScript value `Object [10,10]` into rust type `String`
Created: 2024-09-18T07:42:02Z
LanceDB version
0.10.0
What happened?
The example of table update will report an error
Are there known steps to reproduce?
import * as lancedb from "@lancedb/lancedb";

const db = await lancedb.connect("./.lancedb");

const data = [
    {x: 1, vector: [1, 2]},
    {x: 2, vector: [3, 4]},
    {x: 3, vector: [5, 6]},
];
const tbl = await db.createTable("my_table", data)

await tbl.update({vector: [10, 10]}, { where: "x = 2"})

Closing comment (2024-09-19T17:38:50Z): Oh that is the same as #1501
Which has yet to be fixed upstream: lancedb/lance#2695
I'll prioritize fixing that soon.
Repository: lancedb/lancedb

Issue #745: Feature: Specify maximum cosine distance in the WHERE clause of `table.search()`
Created: 2023-12-26T19:45:28Z
SDK
Python
Description
I'd love to be able to specify a minimum cosine similarity threshold (or maximum cosine distance) when using table.search(). One way to do this would be to alter the .where() method to allow a _distance condition:
max_distance = 0.3
table.search(vector).metric('cosine').where(f'_distance < {max_distance}').limit(10)
@changhiskhan suggested that .limit() be required in this case, which sounds good to me.
Weaviate does it like this:

I'd offer to add this new feature myself, but I don't know Rust yet. 😬
Thanks!

Duplicate issue #1369: Feature: Support search by distance threshold
Created: 2024-06-08T13:42:07Z
SDK
Python
Description
Instead of only limiting the search by top-k the search could be limited by a distance threshold. This is consistent with the Voronoi cell approach as you can enumerate the cells that are within a given distance of the cell that contains the search point (you need to consider that the search point can be anywhere in the cell and adjust the distance accordingly).
This would allow the database to be used in more flexible ways, e.g:

for document clustering where you want to find all points within some threshold distance of a given point (like in DBSCAN)
for maintaining a database of queries and matching a stream of incoming documents to all queries that are within the distance threshold

Closing comment (2024-06-11T17:59:14Z): Thanks, this is a good idea. I think this is a duplicate of #745, so I'm closing it in favor of that one.
Repository: lancedb/lancedb

Issue #1616: Investigate feasibility of transitioning Python sync API on top of async API
Created: 2024-09-07T00:28:42Z
Need to determine if and how we can transition the Python sync API to be based off of the async API.
This will consolidate the code bases and make it much easier to maintain feature parity between the two.
We might consider starting with the remote table API.
Look at table_names method.
Can we make pylance an optional dependency. How does that impact pinning?
TODO

 #1701
 #1791
 #1792
 #1793
 #1765

Duplicate issue #1764: Feature: Same way of connecting to DB synchronously as asynchronously
Created: 2024-10-23T08:22:47Z
SDK
Python
Description
Currently, the connect_async function expects a storage_options parameter. However, the connect function does the connection differently, and I cannot use the storage_options.
Would it be possible to connect in the same way?

Closing comment (2024-10-23T15:31:10Z): I will be working on consolidating them in the near future. This is tracked in #1616
Repository: lancedb/lancedb

Issue #1684: feat(rust): Remote SDK client enhancements
Created: 2024-09-23T01:15:12Z
Local table cache
Connection and request timeout config
Retry config

Duplicate issue #1642: Feature: Rust remote client configuration
Created: 2024-09-13T16:03:30Z
SDK
Rust
Description
For the Rust SDK remote API, should be able to configure:

Table cache
Request timeouts

Closing comment (2024-10-07T16:04:36Z): Sorry I meant #1696
This is also a duplicate of #1684
Repository: lancedb/lancedb

Issue #535: Add `bypass_vector_index` to Python sync API
Created: 2023-10-03T20:07:24Z
We added this parameter to Node and Async Python in #1113.

 Add this to the Python sync API.
 Add a quick user guide on how to measure recall of a vector index using this.

This functionality is critical for debugging and measuring recall.

Duplicate issue #1618: bug(python): use_index still not available in LanceVectorQueryBuilder
Created: 2024-09-07T13:17:25Z
LanceDB version
No response
What happened?
Motivation:

Tuning IVFPQ ANN recall performance compared to exact KNN is a common workflow.
Therefore a use_index flag is necessary to switch the query from using an established index or not.

Observations:

Multiple _indices folders are create for each create_index() run.
If I move the '_indices' folder to force knn, I get OSError: Io error: Execution error: LanceError(IO): Execution error: Not found: home/azureuser/localfiles/lancedb/bindingdb_espsim.lance/_indices/c0228cef-e2a8-45d8-9175-8bb331cb4917/index.idx, /home/runner/work/lance/lance/rust/lance-io/src/local.rs:99:31, /home/runner/work/lance/lance/rust/lance/src/io/exec/take.rs:64:42.   A better default in local.rs is to revert back to knn.

Feature Request:

revisit commit f9ccefb to incorporate use_index and even better, to switch between indexes, e.g. use_index([True, False,or "c0228cef"]).

Are there known steps to reproduce?
No response

Closing comment (2024-09-09T22:53:31Z): Hi @kekulai-fredchang, this seems like a duplicate of #535.
Also, I think this was actually implemented partially as a bypass_vector_index() method in #1113. It is, however, missing from the docs. See the docs here: https://lancedb.github.io/lancedb/python/python/#lancedb.query.AsyncVectorQuery.bypass_vector_index
I will update the original issue and close this one.