CombinedNonMaxSuppression is not whitelisted operator

Hi! CombinedNonMaxSuppression is not whitelisted operator. Is it possible to add it as a whitelisted operator?
System information

Linux Ubuntu 16.04
TensorFlow installed from Docker Image
TensorFlow version 2.1.0

Provide the text output from tflite_convert
2020-03-04 15:50:57.748145: I tensorflow/core/grappler/devices.cc:55] Number of eligible GPUs (core count >= 8, compute capability >= 0.0): 0
2020-03-04 15:50:57.748972: I tensorflow/core/grappler/clusters/single_machine.cc:356] Starting new session
2020-03-04 15:50:57.771173: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: graph_to_optimize
2020-03-04 15:50:57.771259: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0.018ms.
2020-03-04 15:50:57.771283: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0.011ms.
2020-03-04 15:50:59.782146: I tensorflow/core/grappler/devices.cc:55] Number of eligible GPUs (core count >= 8, compute capability >= 0.0): 0
2020-03-04 15:50:59.782403: I tensorflow/core/grappler/clusters/single_machine.cc:356] Starting new session
2020-03-04 15:51:00.470079: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: graph_to_optimize
2020-03-04 15:51:00.470148: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   constant_folding: Graph size after: 360 nodes (-59), 639 edges (-59), time = 377.824ms.
2020-03-04 15:51:00.470167: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   constant_folding: Graph size after: 360 nodes (0), 639 edges (0), time = 39.896ms.
Traceback (most recent call last):
  File "./to_tf_lite.py", line 54, in <module>
    app.run(main)
  File "/usr/local/lib/python3.6/dist-packages/absl/app.py", line 299, in run
    _run_main(main, args)
  File "/usr/local/lib/python3.6/dist-packages/absl/app.py", line 250, in _run_main
    sys.exit(main(argv))
  File "./to_tf_lite.py", line 44, in main
    tflite_model = converter.convert()
  File "/usr/local/lib/python3.6/dist-packages/tensorflow_core/lite/python/lite.py", line 464, in convert
    **converter_kwargs)
  File "/usr/local/lib/python3.6/dist-packages/tensorflow_core/lite/python/convert.py", line 457, in toco_convert_impl
    enable_mlir_converter=enable_mlir_converter)
  File "/usr/local/lib/python3.6/dist-packages/tensorflow_core/lite/python/convert.py", line 203, in toco_convert_protos
    raise ConverterError("See console for info.\n%s\n%s\n" % (stdout, stderr))
tensorflow.lite.python.convert.ConverterError: See console for info.
2020-03-04 15:51:02.143649: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libnvinfer.so.6
2020-03-04 15:51:02.146593: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libnvinfer_plugin.so.6
2020-03-04 15:51:03.291126: I tensorflow/lite/toco/import_tensorflow.cc:659] Converting unsupported operation: Size
2020-03-04 15:51:03.291210: I tensorflow/lite/toco/import_tensorflow.cc:659] Converting unsupported operation: Size
2020-03-04 15:51:03.291322: I tensorflow/lite/toco/import_tensorflow.cc:659] Converting unsupported operation: Size
2020-03-04 15:51:03.291357: I tensorflow/lite/toco/import_tensorflow.cc:659] Converting unsupported operation: Size
2020-03-04 15:51:03.291468: I tensorflow/lite/toco/import_tensorflow.cc:659] Converting unsupported operation: CombinedNonMaxSuppression
2020-03-04 15:51:03.297057: I tensorflow/lite/toco/graph_transformations/graph_transformations.cc:39] Before Removing unused ops: 223 operators, 426 arrays (0 quantized)
2020-03-04 15:51:03.299828: I tensorflow/lite/toco/graph_transformations/graph_transformations.cc:39] Before general graph transformations: 223 operators, 426 arrays (0 quantized)
2020-03-04 15:51:03.400832: I tensorflow/lite/toco/graph_transformations/graph_transformations.cc:39] After general graph transformations pass 1: 105 operators, 198 arrays (0 quantized)
2020-03-04 15:51:03.402525: I tensorflow/lite/toco/graph_transformations/graph_transformations.cc:39] After general graph transformations pass 2: 105 operators, 198 arrays (0 quantized)
2020-03-04 15:51:03.404185: I tensorflow/lite/toco/graph_transformations/graph_transformations.cc:39] Before Group bidirectional sequence lstm/rnn: 105 operators, 198 arrays (0 quantized)
2020-03-04 15:51:03.405338: I tensorflow/lite/toco/graph_transformations/graph_transformations.cc:39] Before dequantization graph transformations: 105 operators, 198 arrays (0 quantized)
2020-03-04 15:51:03.406273: I tensorflow/lite/toco/graph_transformations/graph_transformations.cc:39] Before Identify nearest upsample.: 105 operators, 198 arrays (0 quantized)
2020-03-04 15:51:03.407942: I tensorflow/lite/toco/allocate_transient_arrays.cc:345] Total transient array allocated size: 22151168 bytes, theoretical optimal value: 22151168 bytes.
2020-03-04 15:51:03.408239: I tensorflow/lite/toco/toco_tooling.cc:471] Number of parameters: 8849370
2020-03-04 15:51:03.408888: W tensorflow/lite/toco/tflite/operator.cc:2024] Op CombinedNonMaxSuppression is a valid TensorFlow op but has not been whitelisted for the TensorFlow Lite flex op set.
2020-03-04 15:51:03.409165: W tensorflow/lite/toco/tflite/operator.cc:2024] Op CombinedNonMaxSuppression is a valid TensorFlow op but has not been whitelisted for the TensorFlow Lite flex op set.
2020-03-04 15:51:03.409257: E tensorflow/lite/toco/toco_tooling.cc:498] We are continually in the process of adding support to TensorFlow Lite for more ops. It would be helpful if you could inform us of how this conversion went by opening a github issue at https://github.com/tensorflow/tensorflow/issues/new?template=40-tflite-op-request.md
 and pasting the following:

Some of the operators in the model are not supported by the standard TensorFlow Lite runtime and are not recognized by TensorFlow. If you have a custom implementation for them you can disable this error with --allow_custom_ops, or by setting allow_custom_ops=True when calling tf.lite.TFLiteConverter(). Here is a list of builtin operators you are using: ADD, CAST, CONCATENATION, CONV_2D, DIV, EXP, EXPAND_DIMS, FILL, LEAKY_RELU, LOGISTIC, MAX_POOL_2D, MUL, PACK, RESHAPE, RESIZE_NEAREST_NEIGHBOR, SHAPE, SPLIT_V, STRIDED_SLICE, SUB. Here is a list of operators for which you will need custom implementations: CombinedNonMaxSuppression.
Traceback (most recent call last):
  File "/usr/local/bin/toco_from_protos", line 8, in <module>
    sys.exit(main())
  File "/usr/local/lib/python3.6/dist-packages/tensorflow_core/lite/toco/python/toco_from_protos.py", line 93, in main
    app.run(main=execute, argv=[sys.argv[0]] + unparsed)
  File "/usr/local/lib/python3.6/dist-packages/tensorflow_core/python/platform/app.py", line 40, in run
    _run(main=main, argv=argv, flags_parser=_parse_flags_tolerate_undef)
  File "/usr/local/lib/python3.6/dist-packages/absl/app.py", line 299, in run
    _run_main(main, args)
  File "/usr/local/lib/python3.6/dist-packages/absl/app.py", line 250, in _run_main
    sys.exit(main(argv))
  File "/usr/local/lib/python3.6/dist-packages/tensorflow_core/lite/toco/python/toco_from_protos.py", line 56, in execute
    enable_mlir_converter)
Exception: We are continually in the process of adding support to TensorFlow Lite for more ops. It would be helpful if you could inform us of how this conversion went by opening a github issue at https://github.com/tensorflow/tensorflow/issues/new?template=40-tflite-op-request.md
 and pasting the following:

Some of the operators in the model are not supported by the standard TensorFlow Lite runtime and are not recognized by TensorFlow. If you have a custom implementation for them you can disable this error with --allow_custom_ops, or by setting allow_custom_ops=True when calling tf.lite.TFLiteConverter(). Here is a list of builtin operators you are using: ADD, CAST, CONCATENATION, CONV_2D, DIV, EXP, EXPAND_DIMS, FILL, LEAKY_RELU, LOGISTIC, MAX_POOL_2D, MUL, PACK, RESHAPE, RESIZE_NEAREST_NEIGHBOR, SHAPE, SPLIT_V, STRIDED_SLICE, SUB. Here is a list of operators for which you will need custom implementations: CombinedNonMaxSuppression.

Standalone code to reproduce the issue
--
Any other info / logs
--

@timzatko
Could you please share simple standalone code that you executed before facing this issue.

I did not try to add converter.allow_custom_ops, if I add it, I have to implement that operator in c, right? Since it is tensorflow operator, I would like to avoid that.
Steps to reproduce:

Clone this repository:
https://github.com/zzh8829/yolov3-tf2
Download model and copy it to checkpoints path https://drive.google.com/open?id=1gl4JY4sbyjFXOFiz9MZsd84PL4vuhy3Q
Create this script in the root of the repository and run it

import tensorflow as tf

from absl import app, flags, logging
from absl.flags import FLAGS

from yolov3_tf2.models import YoloV3, YoloV3Tiny

flags.DEFINE_string('weights', './checkpoints/yolov3-tiny.tf', 'path to weights file')
flags.DEFINE_boolean('tiny', True, 'yolov3 or yolov3-tiny')
flags.DEFINE_integer('num_classes', 80, 'number of classes in the model')
flags.DEFINE_integer('input_size', 416, 'image size')

# https://github.com/tensorflow/tensorflow/blob/master/tensorflow/lite/delegates/flex/whitelisted_flex_ops.cc
# https://www.tensorflow.org/api_docs/python/tf/image/non_max_suppression
# https://www.tensorflow.org/s/results/?q=combined_non_max_suppression

def main(_argv):
    if FLAGS.tiny:
        yolo = YoloV3Tiny(FLAGS.input_size, classes=FLAGS.num_classes)
    else:
        yolo = YoloV3(FLAGS.input_size, classes=FLAGS.num_classes)

    yolo.load_weights(FLAGS.weights).expect_partial()
    logging.info('weights loaded')

    path = 'tmp/yolov3.h5'
    out_path = 'tmp/yolov3.tflite'

    if FLAGS.tiny:
        path = 'tmp/yolov3-tiny.h5'
        out_path = 'tmp/yolov3-tiny.tflite'

    yolo.save(path)

    logging.info(f'keras model saved to location {path}')

    converter = tf.lite.TFLiteConverter.from_keras_model(yolo)
    converter.target_spec.supported_ops = [
        tf.lite.OpsSet.TFLITE_BUILTINS,
        tf.lite.OpsSet.SELECT_TF_OPS
    ]
    # converter.experimental_new_converter = True
    # converter.experimental_new_quantizer = True
    # converter.allow_custom_ops = True

    tflite_model = converter.convert()
    logging.info(f'model converted')

    open(out_path, 'wb').write(tflite_model)

    logging.info(f'tflite model saved to location {out_path}')

if __name__ == '__main__':
    try:
        app.run(main)
    except SystemExit:
        pass

I tried setting converter.experimental_new_converter = True and here is the result.
2020-03-05 07:00:50.823406: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libnvinfer.so.6
2020-03-05 07:00:50.834836: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libnvinfer_plugin.so.6
2020-03-05 07:00:51.577175: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcuda.so.1
2020-03-05 07:00:51.577237: E tensorflow/stream_executor/cuda/cuda_driver.cc:351] failed call to cuInit: UNKNOWN ERROR (-1)
2020-03-05 07:00:51.577259: I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:156] kernel driver does not appear to be running on this host (c807e06a611a): /proc/driver/nvidia/version does not exist
2020-03-05 07:00:51.578259: I tensorflow/core/platform/cpu_feature_guard.cc:142] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA
2020-03-05 07:00:51.589959: I tensorflow/core/platform/profile_utils/cpu_utils.cc:94] CPU Frequency:<PHONE_NUMBER> Hz
2020-03-05 07:00:51.591151: I tensorflow/compiler/xla/service/service.cc:168] XLA service 0x58cdd60 initialized for platform Host (this does not guarantee that XLA will be used). Devices:
2020-03-05 07:00:51.591490: I tensorflow/compiler/xla/service/service.cc:176]   StreamExecutor device (0): Host, Default Version
I0305 07:00:52.946302<PHONE_NUMBER>48192 to_tf_lite.py:25] weights loaded
I0305 07:00:53.313143<PHONE_NUMBER>48192 to_tf_lite.py:36] keras model saved to location tmp/yolov3-tiny.h5
2020-03-05 07:00:53.590270: I tensorflow/core/grappler/devices.cc:55] Number of eligible GPUs (core count >= 8, compute capability >= 0.0): 0
2020-03-05 07:00:53.590894: I tensorflow/core/grappler/clusters/single_machine.cc:356] Starting new session
2020-03-05 07:00:53.602172: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: graph_to_optimize
2020-03-05 07:00:53.602322: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0.005ms.
2020-03-05 07:00:53.602341: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0.001ms.
2020-03-05 07:00:54.439903: I tensorflow/core/grappler/devices.cc:55] Number of eligible GPUs (core count >= 8, compute capability >= 0.0): 0
2020-03-05 07:00:54.440240: I tensorflow/core/grappler/clusters/single_machine.cc:356] Starting new session
2020-03-05 07:00:54.700659: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: graph_to_optimize
2020-03-05 07:00:54.700721: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   constant_folding: Graph size after: 360 nodes (-59), 639 edges (-59), time = 132.996ms.
2020-03-05 07:00:54.700740: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   constant_folding: Graph size after: 360 nodes (0), 639 edges (0), time = 36.936ms.
Traceback (most recent call last):
  File "to_tf_lite.py", line 56, in <module>
    app.run(main)
  File "/usr/local/lib/python3.6/dist-packages/absl/app.py", line 299, in run
    _run_main(main, args)
  File "/usr/local/lib/python3.6/dist-packages/absl/app.py", line 250, in _run_main
    sys.exit(main(argv))
  File "to_tf_lite.py", line 46, in main
    tflite_model = converter.convert()
  File "/usr/local/lib/python3.6/dist-packages/tensorflow_core/lite/python/lite.py", line 464, in convert
    **converter_kwargs)
  File "/usr/local/lib/python3.6/dist-packages/tensorflow_core/lite/python/convert.py", line 457, in toco_convert_impl
    enable_mlir_converter=enable_mlir_converter)
  File "/usr/local/lib/python3.6/dist-packages/tensorflow_core/lite/python/convert.py", line 203, in toco_convert_protos
    raise ConverterError("See console for info.\n%s\n%s\n" % (stdout, stderr))
tensorflow.lite.python.convert.ConverterError: See console for info.
2020-03-05 07:00:55.882389: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libnvinfer.so.6
2020-03-05 07:00:55.883827: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libnvinfer_plugin.so.6
2020-03-05 07:00:56.553882: W tensorflow/compiler/mlir/lite/python/graphdef_to_tfl_flatbuffer.cc:89] Ignored output_format.
2020-03-05 07:00:56.553939: W tensorflow/compiler/mlir/lite/python/graphdef_to_tfl_flatbuffer.cc:95] Ignored drop_control_dependency.
2020-03-05 07:00:56.863763: I tensorflow/core/platform/cpu_feature_guard.cc:142] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA
2020-03-05 07:00:56.868908: I tensorflow/core/platform/profile_utils/cpu_utils.cc:94] CPU Frequency:<PHONE_NUMBER> Hz
2020-03-05 07:00:56.869444: I tensorflow/compiler/xla/service/service.cc:168] XLA service 0x605b620 initialized for platform Host (this does not guarantee that XLA will be used). Devices:
2020-03-05 07:00:56.869491: I tensorflow/compiler/xla/service/service.cc:176]   StreamExecutor device (0): Host, Default Version
2020-03-05 07:00:56.870769: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcuda.so.1
2020-03-05 07:00:56.870813: E tensorflow/stream_executor/cuda/cuda_driver.cc:351] failed call to cuInit: UNKNOWN ERROR (-1)
2020-03-05 07:00:56.870833: I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:156] kernel driver does not appear to be running on this host (c807e06a611a): /proc/driver/nvidia/version does not exist
loc(callsite("yolov3_tiny/yolo_nms/combined_non_max_suppression/CombinedNonMaxSuppression"("/usr/local/lib/python3.6/dist-packages/tensorflow_core/python/ops/gen_image_ops.py":378:0) at callsite("/usr/local/lib/python3.6/dist-packages/tensorflow_core/python/ops/image_ops_impl.py":3958:0 at callsite("/home/src/yolov3_tf2/models.py":198:0 at callsite("/home/src/yolov3_tf2/models.py":254:0 at callsite("/usr/local/lib/python3.6/dist-packages/tensorflow_core/python/keras/layers/core.py":846:0 at callsite("/usr/local/lib/python3.6/dist-packages/tensorflow_core/python/keras/engine/base_layer.py":778:0 at callsite("/usr/local/lib/python3.6/dist-packages/tensorflow_core/python/keras/engine/network.py":891:0 at callsite("/usr/local/lib/python3.6/dist-packages/tensorflow_core/python/keras/engine/network.py":717:0 at callsite("/usr/local/lib/python3.6/dist-packages/tensorflow_core/python/keras/engine/base_layer.py":778:0 at "/usr/local/lib/python3.6/dist-packages/tensorflow_core/python/keras/saving/saving_utils.py":150:0)))))))))): error: 'tf.CombinedNonMaxSuppression' op is neither a custom op nor a flex op
error: failed while converting: 'main'
Ops that need custom implementation (enabled via setting the -emit-custom-ops flag): CombinedNonMaxSuppression
Traceback (most recent call last):
  File "/usr/local/bin/toco_from_protos", line 8, in <module>
    sys.exit(main())
  File "/usr/local/lib/python3.6/dist-packages/tensorflow_core/lite/toco/python/toco_from_protos.py", line 93, in main
    app.run(main=execute, argv=[sys.argv[0]] + unparsed)
  File "/usr/local/lib/python3.6/dist-packages/tensorflow_core/python/platform/app.py", line 40, in run
    _run(main=main, argv=argv, flags_parser=_parse_flags_tolerate_undef)
  File "/usr/local/lib/python3.6/dist-packages/absl/app.py", line 299, in run
    _run_main(main, args)
  File "/usr/local/lib/python3.6/dist-packages/absl/app.py", line 250, in _run_main
    sys.exit(main(argv))
  File "/usr/local/lib/python3.6/dist-packages/tensorflow_core/lite/toco/python/toco_from_protos.py", line 56, in execute
    enable_mlir_converter)
Exception: /usr/local/lib/python3.6/dist-packages/tensorflow_core/python/ops/gen_image_ops.py:378:38: error: 'tf.CombinedNonMaxSuppression' op is neither a custom op nor a flex op
                                     clip_boxes=clip_boxes, name=name)
                                     ^
/usr/local/lib/python3.6/dist-packages/tensorflow_core/python/ops/image_ops_impl.py:3958:9: note: called from
        score_threshold, pad_per_class, clip_boxes)
        ^
/home/src/yolov3_tf2/models.py:198:9: note: called from
        score_threshold=FLAGS.yolo_score_threshold
        ^
/home/src/yolov3_tf2/models.py:254:5: note: called from
    outputs = Lambda(lambda x: yolo_nms(x, anchors, masks, classes),
    ^
/usr/local/lib/python3.6/dist-packages/tensorflow_core/python/keras/layers/core.py:846:7: note: called from
      result = self.function(inputs, **kwargs)
      ^
/usr/local/lib/python3.6/dist-packages/tensorflow_core/python/keras/engine/base_layer.py:778:19: note: called from
                  outputs = call_fn(cast_inputs, *args, **kwargs)
                  ^
/usr/local/lib/python3.6/dist-packages/tensorflow_core/python/keras/engine/network.py:891:11: note: called from
          output_tensors = layer(computed_tensors, **kwargs)
          ^
/usr/local/lib/python3.6/dist-packages/tensorflow_core/python/keras/engine/network.py:717:9: note: called from
        convert_kwargs_to_constants=base_layer_utils.call_context().saving)
        ^
/usr/local/lib/python3.6/dist-packages/tensorflow_core/python/keras/engine/base_layer.py:778:19: note: called from
                  outputs = call_fn(cast_inputs, *args, **kwargs)
                  ^
/usr/local/lib/python3.6/dist-packages/tensorflow_core/python/keras/saving/saving_utils.py:150:7: note: called from
      outputs_list = nest.flatten(model(inputs=inputs, training=False))
      ^
<unknown>:0: error: failed while converting: 'main'
Ops that need custom implementation (enabled via setting the -emit-custom-ops flag): CombinedNonMaxSuppression

I am also getting similar error notebook link
RuntimeError: Regular TensorFlow ops are not supported by this interpreter. Make sure you apply/link the Flex delegate before inference.Node number 41 (FlexSize) failed to prepare.
log test file of converted model while running on android native c++
android_native_log.txt

@anspire
We have tried to replicate the link shared by you,  find the gist for the errors faced, please share all dependencies for us to resolve the issue.
if possible share a colab gist with us.

@timzatko,
Could you please un-comment these three lines from your code and then try to convert the model.
# converter.experimental_new_converter = True
# converter.experimental_new_quantizer = True
# converter.allow_custom_ops = True

I was able to create the .tflite file after removing the comments. Please check the attached screenshot for the output.

37301_complete_logs.txt

Hi! When I uncomment this line
# converter.allow_custom_ops = True
I'm able to convert the model.
However, I need to provide an implementation of that operator to the TensorFlow Lite.

allow_custom_ops: Boolean indicating whether to allow custom operations. When false any unknown operation is an error. When true, custom ops are created for any op that is unknown. The developer will need to provide these to the TensorFlow Lite runtime with a custom resolver. (default False)

https://www.tensorflow.org/api_docs/python/tf/lite/TFLiteConverter
Since the CombinedNonMaxSuppression operator is a Tensorflow operator I believe it can be whitelisted in lite/delegates/flex/whitelisted_flex_ops.cc (https://www.tensorflow.org/lite/guide/ops_select) so will not need to provide that implementation of that operator.
I forked the repository and added it there by myself, I was able to convert the model then. https://github.com/timzatko/tensorflow (https://hub.docker.com/layers/timzatko/tensorflow/2.1.0-gpu-py3/images/sha256-f1838218fc5d333153a4594c0c76925aab334ee83e7de97700bc91b36b613d30?context=repo) However, I did not try to run inference on it yet since I need to build interpreter for my use-case - https://github.com/tensorflow/tensorflow/tree/master/tensorflow/lite/experimental/examples/unity/TensorFlowLitePlugin.

@timzatko any luck with converting the model?

@timzatko any luck with converting the model?

Hi, I was able to convert the model by whitelisting that operator. There's a docker image of TensorFlow with my fix above, you can use it to convert a model.
I also tried to do inference in my app (it's a Unity app based on this example https://github.com/asus4/tf-lite-unity-sample/tree/master/Assets/Samples/SSD), however, it does not work for some reason (I don't remember why). Maybe I did a conversion with the wrong settings. Then I decided to use another model and don't waste my time with this.

@timzatko Thx, I'm heading similar direction. Can I ask which model are you using?

@timzatko Thx, I'm heading similar direction. Can I ask which model are you using?

ssd_mobilenet_v1_coco (http://download.tensorflow.org/models/object_detection/ssd_mobilenet_v1_coco_2018_01_28.tar.gz)
from tensorflow model zoo https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/detection_model_zoo.md
Here is the tutorial how to train it on GCP https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/running_pets.md

@timzatko seems like adding the operator to the whitelisted operators solves the issue, can you make a PR from your repo, please

Hi, seems like we have a solution here. Can we close this issue?

The PR was never done, this was never committed or at least there is no reference in this issue that this was fixed, so until the issue is fixed I don't think we can close it. And @timzatko fork seems to not exist anymore.

Actually the CombinedNonMaxSuppression is already in the allowlist of the flex delegate for a while:
https://github.com/tensorflow/tensorflow/blob/b333031345c13c3d9b7a0f06d8a5871e76d89571/tensorflow/lite/delegates/flex/allowlisted_flex_ops.cc#L119
Since this is already added, I would recommend the user to try it with the most recent tf release, or we just close this issue since the main concern is addressed.

Yeah, the issue has been addressed, I believe that it can be closed now :)


⚠ Bofrost.at has degraded performance

In 626e01c, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 916 ms

Resolved: Bofrost.at performance has improved in 23e4a3b after 1 hour, 19 minutes.


VScode extension

What
The VScode extension will support policy linting, autocomplete, snippets, etc., to help policy developers succeed with predicate.
It's probably too early to list all the features that will go into this extension. But for the first release, we may start with autocomplete and snippets that would help increase policy writing speed.
Why
Code editors are perfect place to improve policy developer experience. The reason for picking up VScode is because:

VScode is undoubtedly the popular code editor.
The language server protocol (LSP) by VScode promises uniform API to support multiple languages and code editors that support LSP.

How
Predicate extension, at a minimum, should handle the LSP and offload heavy tasks, such as linting, to a generic predicate linter (probably implement within predicate CLI) which should work outside VScode extension.

Implemented with https://github.com/gravitational/predicate-lang/pull/72


Stucked Hot Restart/Reload

When I had stepTime property at zero my project didn't Hot Reload/Restart.
When I tried to trigger manual restart there was the message: "Reload already in progress, ignoring request".
 final edgeIdle = await gameRef.loadSpriteAnimation(
      'characters/edgeworth/image-022.gif',
      SpriteAnimationData.sequenced(
        amount: 1,
        stepTime: 0, // issue here I guess
        textureSize: Vector2(256, 192),
      ),
    );

After changing stepTime to 1 my project started to reload fine. Looks like zero value of stepTime is not correct value.

Why would you want a stepTime of 0?


tour:rot13Reader hint

Context: http://tour.golang.org/methods/12
Great tutorial!
If I may humbly suggest, it would have helped me to be told that all characters in a reader should be processed even if there is an error. I put a guard statement to not bother to do the rot13 if the enclosed reader returned an error, for efficiency reasons. Although obvious after the fact, I didn't discover the source of my problem until I read the docs on Reader.

CC @adg @campoy

it would have helped me to be told that all characters in a reader should be processed even if there is an error.

Is it? func (r rot13Reader) Read can return an error anytime and you can don't have to consume all the characters from s if an error happens -- even though I don't see where an error can happen in this particular exercise during Read. Could you provide a snippet from your solution to make it a bit clear?

There isn't a problem with the exercise,  just my ignorance, but basically
I did a guard pattern, to prevent doing extra work.
Sorry about the syntax, I'm doing this off the top of my head and I'm still
a 'go' novice
I did something like:
if count, err := otherReader.read(myByteBuffer); err{    return 0, err
}
//do rot13 code here
But when I did that, none of the data was returned. I should have processed
the data as well, since the original reader returned both all the data AND
an EOF
The reference docs, that clued me in can be found at:
https://golang.org/pkg/io/#Reader
Specifically: "Callers should always process the n > 0 bytes returned
before considering the error err. "
The bold text above would have prevented me from my original error. I don't
think guard conditions are an unusual pattern, but including one here
caused the program to silently fail.
Anyhow, no big deal, thought it would improve the exercise, but I
understand the desired for brevity, so I wouldn't argue if you think the
inclusion is too verbose.
Have a good one, and thanks for looking into it!
Jon
On Tue, Oct 13, 2015 at 4:34 PM, rakyll<EMAIL_ADDRESS>wrote:

it would have helped me to be told that all characters in a reader should
be processed even if there is an error.
Is it? func (r rot13Reader) Read can return an error anytime and you can
don't have to consume all the characters from s if an error happens -- even
though I don't see where an error can happen in this particular exercise
during Read. Could you provide a snippet from your solution to make it a
bit clear?
—
Reply to this email directly or view it on GitHub
https://github.com/golang/go/issues/12880#issuecomment-147860680.

There's an open issue about making the reader example less confusing: #11373
@jonburgin I'm having trouble figuring out what the code looked like that led you to getting a silent failure. Without a clear idea of what went wrong it's difficult to come up with a good explanation that would have helped you avoid it.
I'm pretty sure that having if count, err := otherReader.read(myByteBuffer); err { would have been a compile error. Do you recall if you said err != nil?

Yes, err != nil
On Wed, Oct 14, 2015 at 2:00 PM, Katrina Owen<EMAIL_ADDRESS>wrote:

There's an open issue about making the reader example less confusing:
#11373 https://github.com/golang/go/issues/11373
@jonburgin https://github.com/jonburgin I'm having trouble figuring out
what the code looked like that led you to getting a silent failure. Without
a clear idea of what went wrong it's difficult to come up with a good
explanation that would have helped you avoid it.
I'm pretty sure that having if count, err :=
otherReader.read(myByteBuffer); err { would have been a compile error. Do
you recall if you said err != nil?
—
Reply to this email directly or view it on GitHub
https://github.com/golang/go/issues/12880#issuecomment-148156866.


[Q] How is the output of validate mapped to metrics?

I'm trying to do something simple: log validation loss every N batches.
Reading through the docs I find this:
    def validate(self, batch):
        labels = batch.pop('labels')
        output = self.forward(batch)
        output = output['logits']
        return output, labels

    def metrics(self, train: bool = False):
        if train:
            return MetricCollection([self.train_loss, self.train_acc])
        return MetricCollection([self.val_loss, self.val_acc])

I'm confused about how the output of the validate method maps to the metrics method.
Is self.train_acc / self.val_acc only updated with the labels value from the validate method?
Also, I'm assuming validation metrics are computed once for the validation set.
But what about training metrics?

Hi @vedantroy , the validation loop does something like this:
metrics = model.metrics(train=False)

for batch in val_dataloader:
    outputs, targets = model.validate(batch)
    metrics.update(outputs, targets)  # implements the torchmetrics interface

metrics.compute()

More details can be found here: https://docs.mosaicml.com/en/v0.8.2/composer_model.html#metrics
And yes, validation metrics are computed once for each validation set. To enable computing the training metrics, bed sure to include compute_training_metrics=True to the Trainer. This will have a performance penalty.

@hanlint How does this work when I setup torchmetrics to use a dictionary.
See: https://github.com/Lightning-AI/metrics/issues/682
Should I return a dictionary from my validate method?

Hi @vedantroy , the validate method should return a tuple of outputs, targets that is then used to call metrics.
Since your torchmetrics is using a MetricCollection, that should work. Even though you supplied a dictionary, that is wrapped in a MetricCollection, which we support.

@hanlint I'm confused as to how this interface works. For example: I  want to log 2 different losses from my validation batch. There's no output or target, there's just 2 different scalar values?

@hanlint This is the thing I want to log for my validation batch
https://github.com/vedantroy/improved-ddpm-pytorch/blob/d2d6954f19b7b850bb45aff815f1329df3f2a5f4/diffusion/diffusion.py#L293

I'll move my function into its own torchmetrics and make it work.
Fwiw, the specific thing I was confused about in the documentation was (for some reason), I assumed that the validate method was probably going to be something along the lines of "return a tuple of N values where each of the N values is a particular loss/signal you are calculating".

Thanks! We've updated the documentation to reflect this in https://github.com/mosaicml/composer/pull/1396


Optional dependency on react-native-blur

Would be useful if the require isn't used until it is needed, so if you decide to enable blur it will require it and throw an error but you can otherwise use it without blur.

@brentvatne great point!
I haven't thought much about on-demand requiring and how to do it efficiently, this seems like it will work well to me. Any thoughts?
https://github.com/lelandrichardson/react-native-parallax-view/commit/135a586fd32a33734609d52995b3635e16a5463b

@lelandrichardson - yeah that looks like it should work just fine! nice

also @lelandrichardson, check this out :smile:

@brentvatne you can get this with version 1.0.2 on npm now btw. closing.

@brentvatne man. I really need to figure out how to use appetize.io. That's awesome!


Remove version: wiznote.wiznotelite version 1.3.0

[Automated] It returns code over 400 in all urls
Microsoft Reviewers: Open in CodeFlow

URL: https://get.wiz.cn/Lite/WizNoteLite-x64-1.3.0.exe
Response status code does not indicate success: 404 (Not Found).
(Automated message - build 897)


Inventory properties to implementation

SpongeAPI | SpongeCommon

[x] SlotPos
[x] SlotSide
[x] StringProperty
[ ] AcceptsItems
[ ] EquipmentSlotType
[ ] ArmorSlotType
[x] GuiIdProperty
[x] Identifiable
[x] InventoryCapacity
[x] SlotIndex
[ ] InventoryDimension
[x] InventoryTitle
[ ] MappedIntProperty

Are you also going to move the Propertys that aren't related to inventories? The builder can then be moved to the basic Property class.
https://github.com/SpongePowered/SpongeAPI/tree/bleeding/src/main/java/org/spongepowered/api/data/property

I'd rather not in this PR.
I actually never used the other Properties.
I'm only breaking the stuff I know.

Hmm, ok. Can you move the InventoryProperty.Builder to Property.Builder instead, so we don't have to break the API twice when moving over all the other properties.


Store singleton context in module for material-ui-next example

The material-ui-next example stores a singleton instance of its JSS context on the global object. Because ES6 module imports resolve to the same reference when imported into multiple files, this singleton object can simply be stored in the module itself to avoid polluting the global namespace.

I don't know why the AppVeyor build never started. It looks to me like this PR should be mergeable.


filter out invalid sort id

When user provides invalid sort id either from initialState or state the table blows up.
This PR improve default getSortedRowModel to guard against this case.
Behavior change:

Invalid sort id will be ignored and table can still render.

+1, ran into the same issue

should be fixed in #4490

I think we are going to close this in favor of changing table.getColumn itself possibly not throwing an error, and instead just console.error()ing and returning undefined as that is the root of this problem. Still need to look into the possible side effects of doing that a bit more.


Make Zebra's tip estimate match zcashd exactly

Motivation
Zebra's chain tip estimate is slightly different to zcashd's.
We don't think this will cause any issues, but if it does, they will come up in tests like:

#3511
#3926

Specifications
Here is what the zcashd code does:

If zcashd has stopped syncing, return the current height: https://github.com/zcash/zcash/blob/6cd5b8792bbe0a3cc1064e1884914415f0c6e7d7/src/rpc/blockchain.cpp#L1068-L1071
If the block time is ahead of the current time, return the current height: https://github.com/zcash/zcash/blob/f7006e9a33ca37ae88520e434ee5c2b2498c1cc6/src/metrics.cpp#L141-L143
Otherwise, estimate the tip height: https://github.com/zcash/zcash/blob/f7006e9a33ca37ae88520e434ee5c2b2498c1cc6/src/metrics.cpp#L145-L160

Zebra APIs
Here's the SyncStatus method that returns if we're close to the tip:
https://github.com/ZcashFoundation/zebra/blob/5d7f9861830ce4f5de9d5d68df15854a56610f55/zebrad/src/components/sync/status.rs#L46-L47
Here's the buggy NetworkChainTipHeightEstimator code. Removing negative times should simplify it a lot.
(The bug fix will probably make some tests fail, Janito can help fix them.)
https://github.com/ZcashFoundation/zebra/blob/main/zebra-chain/src/chain_tip/network_chain_tip_height_estimator.rs#L111-L120
Tasks
Here's one way to do this fix:

Move SyncStatus to zebra_node_services
Add SyncStatus to RpcImpl, and use it to check if we're close to the tip
Fix NetworkChainTipHeightEstimator to return the current height if the block time is ahead of the current time

Related Work
This ticket was split out of:

https://github.com/ZcashFoundation/zebra/pull/3891#discussion_r833865163

I've been running tests with lightwalletd, and it keeps on running without this fix.
We can re-open this ticket if we discover that it is actually needed during testing.


Remove hwif from config

The config should not contain the hwif, this will remove the need to encrypt the config and make it easier for users to edit.
The hwif should best be stored in its own file.

Done https://github.com/Storj/storjnode/commit/44c5ad8f09ed082b979e21072014fa0fdd42edf4


[Event Request]Codeunit 1002 - CreateSalesInvoice

Hi,
I want to create many Sales Invoices from Job Planning line using CreateSalesInvoice method. For each job planning Line I call this procedure but I receive the same number of Message() at the end of the process.
As you can see, line 74 messages are displayed:

Is it possible to add an event just before the test of CrMemo in order to prevent these messages ?
We want something like this:
...
Commit();
// Add Event HERE
OnAfterCreateSalesInvoice(JobPlanningLine, CrMemo, Handled);
if not Handled then begin // Add this condition before displaying messages
    if CrMemo then
       Message(Text008)
     else
       Message(Text000);
end
...

Thanks !

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.


BottomSheetNavigator - IOS Build error

Gradle info:
voyagerVersion = "1.1.0-beta02"
kotlin.version=1.9.23
compose.version=1.6.10-beta02
compose-material3 = "1.2.1"
commonMain {
            dependencies {
                ...
                implementation("cafe.adriel.voyager:voyager-bottom-sheet-navigator:$voyagerVersion")
            }
        }

When I try to compile on iOS, I get an error::
> Task :shared:compileKotlinIosSimulatorArm64 FAILED
error: Could not find "org.jetbrains.compose.material:material" in [/Users/...., /Users/..../.konan/klib, /Users/...../.konan/kotlin-native-prebuilt-macos-aarch64-1.9.23/klib/common, /Users/..../.konan/kotlin-native-prebuilt-macos-aarch64-1.9.23/klib/platform/ios_simulator_arm64]
error: Compilation finished with errors

It builds on android without any problems.
Also, if you remove the dependency ..voyager-bottom-sheet-navigator:$voyagerVersion, then everything builds on iOS without problems
What could be the reason for this logic? Is M3 not supported yet?

Having same issue

Did you solve the problem as a result?

Yes, I've to add the followings to build.gradle.kts kotlin->sourceSets:
iosMain.dependencies {
    implementation(compose.material)
    // other dependencies
}

all {
    languageSettings.optIn("androidx.compose.material.ExperimentalMaterialApi")
}


eio streaming example only writes one record

I was trying out the eio routeguide example, and noticed that the server streaming was only every writing a single record to the response. I ran the lwt example and it gave the expected results of a longer stream of location records. I found that adding a yield in routeguide/src/server.ml causes the stream to be flushed.
  ...
  encode feature |> Writer.contents |> f;
  Eio.Fiber.yield ())
  ...

Thanks for reporting this issue!
I have to dig into the specifics of H2 to fully understand this behavior, because it seems that even though H2.Body.Writer.write_string is called for every record before H2.Body.Writer.close is called, the records are indeed not written. Eio.Fiber.yield () right after write_string also works, but H2.Body.Writer.flush doesn't have any effect.

On further inspection with Wireshark, H2 does indeed write all the records (mea culpa), the batching behavior is just different with Eio.Fiber.yield (). With the unmodified example, all records are batched into one frame.
So very likely a bug on our part related to buffer handling / message extraction. I'm on it. Thanks again for reporting.

Indeed it's a matter of calling Grpc.Message.extract in a loop to account for these batched messages. So the bug is actually in the client code (in Grpc_eio.Connection.grpc_recv_streaming)! I will prepare a PR and check the other implementations for this as well.

Thanks again for reporting this issue @joprice. This turned out to be an old bug in all three implementations, and I suspect that we have hit this bug in our codebase as well with both Lwt and Eio (we just never connected the dots).

No problem! Happy to help. Glad it wasn't too bad to find a fix. I'll try out the commit when I get a chance.


main window with swipe made with hammer and inside content with jquery ui draggable, conflict !

Hello i have the main html page called "index.html" with inside an iframe.
Inside the iframe, i load a html page called "content.html" where i use jquery ui draggable.
I have apply the Hammer swipe gesture on the body of the content.html and it work fine, but the drag width jquery ui is broken, not work.
Can you help me please ?
Thanks and compliments !

This issue is a mouthfull and really needs an example its also on version 1 im going to close this but if your still facing this issue open a new issue with a test case and i will gladly look i am the project lead on hammer now and i also work on jQuery UI so i will definitely look into any incompatibilities


ERROR: no permission to install to directory

Fresh install of rig on MacOS 12.4 on Apple Silicon. Can't install any packages:

> install.packages("data.table")
Installing package into ‘/Users/abc/Library/R/arm64/4.2/library’
(as ‘lib’ is unspecified)
Warning in install.packages("data.table") :
  'lib = "/Users/abc/Library/R/arm64/4.2/library"' is not writable
Would you like to use a personal library instead? (yes/No/cancel) y
trying URL 'https://cran.rstudio.com/src/contrib/data.table_1.14.2.tar.gz'
Content type 'application/x-gzip' length 5301817 bytes (5.1 MB)
==================================================
downloaded 5.1 MB

Error: ERROR: no permission to install to directory ‘/Users/abc/Library/R/arm64/4.2/library’

The downloaded source packages are in
	‘/private/var/folders/yx/zy96k6jn0w313_zbnc8v6ny00000gn/T/Rtmp53WMO0/downloaded_packages’
Warning message:
In install.packages("data.table") :
  installation of package ‘data.table’ had non-zero exit status
>

Any hints?

rig forces you to use user libraries, and you don't have a user library on this R version. rig creates this library for the R versions it installs, but not for the others. I guess you installed 4.2-arm before rig.
To set up the user libraries for all installed versions run
rig system setup-user-lib

Yeah, this is actually a rig bug, it creates that library right after installing R, as root, when it is installing pak: #84 Will fix this ASAP!

Should be fixed by #92.

Works perfectly now in 0.5, thanks!

I think I'm having a similar problem on my new M1 install. I ran "rig system setup-user-lib", this is what happens when I try to install the release.

Is it possible that that library was created with an older version of rig? Current rig should not do this anymore.
A workaround is to fix the permissions manually.

This is Rig 0.5.2 installed with Homebrew 3.6.4 for arm64 (not Rosetta). I was able to  figure out by first installing rig as above, then changing admin permissions for the library folder to Read & Write from Read, then rig system add-pak. Is this safe permissioning going forward?

Yes, it is a one time fix.


Cannot access example Flight SQL Server from dbeaver

Describe the bug
I ran the example Flight SQL server in https://github.com/apache/arrow-rs/blob/master/arrow-flight/examples/flight_sql_server.rs and could not access it from dbeaver using the JDBC driver version 15.0.1. Got it working with some minor changes https://github.com/freddieptf/arrow-rs/commit/a20a16825031db2d669aba5b05c9114e7ab3b427. Is this the intended behavior or am i doing something wrong?
To Reproduce

Expected behavior

Additional context

and could not access it from dbeaver using the JDBC driver version 15.0.1.

I don't think that is the intended behavior
Can you explain what symptoms you were seeing?
Also, creating a PR with your changes would be most appreciated 🙏

I could successfully connect to the database but could not view any catalogs. After a bit of poking around i realized calls for catalogs, schema and tables were being handled by do_get_fallback due to the ticket not being encoded correctly; so dbeaver was not getting the correct response.

Thanks @freddieptf  -- makes sense to me

label_issue.py automatically added labels {'arrow'} from #5543

label_issue.py automatically added labels {'arrow-flight'} from #5543


Master branch merge to revision support branch

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.14 out of 15 committers have signed the CLA.:white_check_mark: npamudika:white_check_mark: chamilaadhi:white_check_mark: dushaniw:white_check_mark: vithu30:white_check_mark: Chamindu36:white_check_mark: Arshardh:white_check_mark: mushthaq33:white_check_mark: hisanhunais:white_check_mark: tharindu1st:white_check_mark: RAVEENSR:white_check_mark: senthuran16:white_check_mark: menakaj:white_check_mark: prasa7:white_check_mark: malinthaprasan:x: wso2-jenkins-botYou have signed the CLA already but the status is still pending? Let us recheck it.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.14 out of 15 committers have signed the CLA.:white_check_mark: npamudika:white_check_mark: chamilaadhi:white_check_mark: dushaniw:white_check_mark: vithu30:white_check_mark: Chamindu36:white_check_mark: Arshardh:white_check_mark: mushthaq33:white_check_mark: hisanhunais:white_check_mark: tharindu1st:white_check_mark: RAVEENSR:white_check_mark: senthuran16:white_check_mark: menakaj:white_check_mark: prasa7:white_check_mark: malinthaprasan:x: wso2-jenkins-botYou have signed the CLA already but the status is still pending? Let us recheck it.


Error reporting from type checker

The TypeChecker fails if it comes across a call to a non-existent function. This should be reported with an actual exception (like how the Parser works).
See here.

The NameResolver catches these exceptions properly now. Given that there would be no valid return value if I raised an exception I am sticking with failing fast with an error. I have updated the message to reference the NameResolver though.


Enable Python 3.11 in CI and other configuration

Summary
Add Python 3.11 to the matrix of CI tests.
Also, mark Python 3.11 in black and tox configuration files and in the package metadata.
Details and comments
terra first added support for Python 3.11 in 0.22.2, so we may want to refine the terra requirement from #976 to >=0.22.2 here, but it's probably not necessary. If you are using Python 3.11 you will likely end up with 0.22.2 any way.

Qiskit aer 0.11.2 was release this morning which included python 3.11 wheels which are up on pypi now (unless you're concerned with s390x or ppc64le linux wheels which are still building).

It also looks like osqp has included wheels for 3.11 in their 0.6.2.post8 release.

The Window Python 3.11 test run had a few test failures related to scs and also printed out this message:
FATAL: Cannot solve SDPs without linked blas+lapack libraries
Install blas+lapack and re-compile SCS with blas+lapack library locations
ERROR: init_cone failure

The most recent release of scs does not include wheel for Python 3.11. I guess the Linux and macOS test runners had the necessary libraries to compile scs in a way that worked for the tests but the Windows runner did not.
We have several options:

Hope / ask for 3.11 wheels of scs to be published
Install blas+lapack into the Windows runner so it builds scs with appropriate support.
Allow the tests to use a different solver that supports 3.11 already?
Skip the affected tests for the Python 3.11 Windows run

We can start with the first option. If someone knows how to do the second one easily, we could try that.

I asked about the first option in https://github.com/bodono/scs-python/pull/66#issuecomment-1339991228.

3.11 wheels for scs are now on pypi and I have restarted the test run here.

@coruscating What do you think since you have been putting the release notes together? Should we add something here or separately? I didn't have to make any code changes here, just add 3.11 to the packaging and CI metadata.

I think it would be good to note somewhere which versions of python we support. How about adding a release note and then I'll include the list of versions in the install section of the new docs?

@coruscating I added a release note as a "feature". I wasn't sure if it was a feature or an "other" but you could shift it however when assembling the release notes.


[kjobctl] Use busybox init image.

What type of PR is this?
Use busybox init image in kjobctl slurm mode.

What this PR does / why we need it:
/kind cleanup
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?

NONE

/cc @mimowo

I heard from @mbobrovskyi offline that there are still some compatibility issues when testing e2e. Please ping reviewers when those are solved

I heard from @mbobrovskyi offline that there are still some compatibility issues when testing e2e. Please ping reviewers when those are solved

@mimowo Ready for review


Docs/installation page

change location of installation page in docs
add a few words about installation in quick docs

Merged into dev by hand


Remove pull_request event trigger

Pushing to any PR branch was triggering deployment to Cloudflare

Amazing work @VOlekh !


Publish exposition format as an IETF standard

Original issue: https://github.com/prometheus/prometheus/issues/1361 :
"It would be interesting/good to write up the exposition format as an IETF RFC standard. This would allow more adoption by "traditional" companies since they can reference a standard for both implementation and marketing "We support metrics via RFC XXXX"."
This issue is for tracking the work done towards an IETF standard.
We need to solve the other exposition format issues to really finalize this.

You can assign this to me if you want.

This depends on https://github.com/prometheus/docs/issues/545 imo.

Hi,
Is there any progress on this topic?

We are currently hammering a draft out in https://docs.google.com/document/d/1TapRdI5Tu2e8AIqREtdv_C36t4GGsDQr64KixE-gWu8/edit
Feel free to comment, but please don't edit.

Seems like this is now what https://github.com/OpenObservability/OpenMetrics is doing, does it make sense to close this ticket?


focus prop support for all widgets

Attempting to solve #1652 (WIP).

Changes to Form so that it passes focus to all widgets;
Changes to all widgets so that they change their state to focused when receiving focus={true}.

[x] TextareaWidget
[x] WysiwygWidget
[x] TextWidget
[ ] TokenWidget
[ ] SelectWidget
etc.

This is an old PR with conflicts and the linked issue was already closed, so I'll close the PR. Please feel free to resubmit if it's still relevant.


Doc: Add details about the new Kubernetes dashboard

Is your enhancement related to a problem? Please describe
We have a new Kubernetes dashboard that shows statistics about running Kube resources. We need to highlight its usage in our doc somewhere here: https://podman-desktop.io/docs/kubernetes/configuring-editing-kube-object
Describe the solution you'd like
Add the new Kuberenetes dashboard details in the doc
Describe alternatives you've considered
No response
Additional context
No response

@benoitf It does not seems like a bug, right?

yes, false action on my end


Support for Monitored Entities - Custom Tags

Hi, I'm helping with developing dt-cli and one of the issues is to upload extensions to the tenant as @dlopes7 mentioned in https://github.com/dynatrace-oss/api-client-python/pull/33. As we talked on Slack would be great to add upload function. Maybe something like this could work:
def post(self, extension_name: str, extension_version: str, zip_file_path: str):
    """ Post the specified version of the extension 2.0
    :param extension_name: the name of the requested extension 2.0
    :param extension_version: the version of the requested extension 2.0
    :param zip_file_path: path to zipped extension 2.0
    :return: HTTP response
    """
    file = Path(zip_file_path)
    with open(file, "rb") as f:
        self.__http_client.make_request(path=f"{self.ENDPOINT}",
                                           method="POST", files={"file": f})

Special thanks to our intern Tomek Dyszewski for sending this snippet for Extensions_POST

Thanks folks, reviewing now

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: bilalhashmi-dt:x: David LopesDavid Lopes seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

@bilalhashmi-dt in the future please make sure to test all methods before pushing, the post method for custom tags was not working because the body was invalid and also had a wrong return type, the delete method also had a wrong response type.


Add option for setup mode button

Add option for setup mode button as one of the devices listed.
built-in button configure to enter in setup mode when hold it

same request here. it is not clear to me how to add the setup switch to the configuration using haa-configurator.
many thanks

I feel it's a duplicate for this one (with less clear title):
https://github.com/glumb/haa-configurator/issues/6
Currently I use these setup and update switches for every HAA device:
{"1":{"s":[{"a":1}]}},{"1":{"s":[{"a":2}]}}

Actually nowadays I use HAA Manager.app, which can invoke the same, without flooding accessories with extra switch items:
https://apps.apple.com/app/haa-home-manager-for-homekit/id1556105121


[Bug]: Combobox selects an option that is filtered out

Environment
Developement/Production OS: macOS Sonoma 14.1.1 (23B81)
Node version: 18.18.0
Package manager<EMAIL_ADDRESS>Radix Vue version: 1.1.3
Vue version: latest
Nuxt version: N/A
Nuxt mode: N/A
Nuxt target: N/A
CSS framework: tailwindcss@latest
Client OS: macOS Sonoma 14.1.1 (23B81)
Browser: Chrome 119.0.6045.159 (Official Build) (arm64)

Link to minimal reproduction
https://www.radix-vue.com/components/combobox.html
Steps to reproduce

Go to Combobox example from docs
Write in the input baaa
List with options is empty
Hit enter
Banana option is selected

Describe the bug
Combobox selects an option that is filtered out from the items dropdown.
After doing one selection, the bug cannot be reproduced anymore.
It happens only on the initial load
Expected behavior
Combobox should not select options that are not visible to user.
Conext & Screenshots (if applicable)
https://github.com/radix-vue/radix-vue/assets/1881266/64fb1b36-6386-41c2-8d92-02ce3b5e87f3

Thanks a lot @zernonia 🥳


get_components Array return option

We should have a version of get_components that returns a vector of components. There is value in having an iterator but here is also some applications where an Array will be useful.

This is trivial to implement but do we really need it?  The user could just as easily call collect on the result of get_components.  Here's how it plays out practically:

components = collect(get_components(RenewableFix, sys))
components = get_components_as_vector(RenewableFix, sys))
components = get_components(RenewableFix, sys, Vector)

I prefer the first.

I am asking for this as many of our users won't have too much Julia experience to directly use the iterators. This is mostly to facilitate looking at the data in an array when needed. it is not an urgent thing but I think will make it more user-friendly.

Will an example in the docstring solve the problem?

Here is the current docstring. Please consider that this is a simpler solution than adding another public function.
help?> get_components
get_components(
::Type{T},
sys::System,
)::FlattenedVectorsIterator{T} where {T <: Component}
Returns an iterator of components. T can be concrete or abstract. Call collect on the result if an array is desired.
Examples
≡≡≡≡≡≡≡≡≡≡
iter = PowerSystems.get_components(ThermalDispatch, sys)
iter = PowerSystems.get_components(Generator, sys)
generators = PowerSystems.get_components(Generator, sys) |> collect
generators = collect(PowerSystems.get_components(Generator, sys))

LGTM as an alternative


Dev Tool: Gitpod test workspace on-demand

1-click launch of a container with:

Meltano built+installed from a specific branch tag
A sample project for testing, such as squared

This would be an interesting way to get people to try out specific integrations. Checkout your "quickbooks + snowflake" repo, add your credentials and then you can save to your own namespace 🤔

@pandemicsyn and @kgpayne - As a step in the right direction, and as a possible first iteration, what do you think of us creating a "gitpod workspace URL" (if that's a thing), for each of the samples in the 'example library'.

https://github.com/meltano/meltano/tree/main/docs/example-library

First goal would be:

As a reviewer, I want a gitpod container link I can use to test the latest of a specific feature branch - without altering anything on my own local machine and without typing a bunch of install commands manually.

Then from there, it should be trivial to provide those same links utilizing main branch, or for a specific version number of Meltano.

Still relevant


Spyder crashing after computer restart on Linux

From<EMAIL_ADDRESS>on 2015-02-15T03:10:56Z
Please note that reporting bugs from Spyder's help menu ("?" > "Report
issue...") will fill version details for Spyder, Python and Qt in this description for you.
What steps will reproduce the problem?
1.applying spyder --reset does fix the problem temporarily but, the issue returns after computer restart
2.the problem began after I installed GNU octave 3.
What is the expected output? What do you see instead?
Program refuses to start after restart, I am having similar problems with matlab as well What version of the product are you using? On what operating system? I am using ubuntu 14.04 and latest version of spyder
Please provide any additional information below
.
Attachment: Screenshot from 2015-02-15 13:39:18.png
Original issue: http://code.google.com/p/spyderlib/issues/detail?id=2176

From ccordoba12 on 2015-02-15T15:13:51Z
Please start Spyder in a terminal and post here the errors printer there.
I also have a question for you: how did you install Spyder?
Summary: Spyder crashing after computer restart on Linux  <span class="oldvalue"> (was: spyder crashing after compluter restart) </span>
Labels: Cat-SpyderGUI OpSys-Linux

From ccordoba12 on 2015-02-16T06:52:34Z
Don't worry, that won't give you problems with the other Anaconda packages. But if you want to use them, you need to change your Python interpreter in
Tools > Preferences > Console > Advanced settings > Python executable > Use the following interpreter
to point to the Anaconda one.
Status: Invalid

From<EMAIL_ADDRESS>on 2015-02-15T22:35:41Z
I installed spyder with anaconda from the website of anaconda, now I reinstalled spyder from software center of linux, it fixed the problem, will this have any problems on other materials in anaconda

From<EMAIL_ADDRESS>on 2015-02-16T07:01:38Z
Thanks sir, what do you think was actually the problem, I am still not able to fix the problem for matlab.

From ccordoba12 on 2015-02-16T11:30:46Z
The problem with Spyder most probably has to do with the fact that you installed Octave. That's because Octave comes now with a graphical interface that uses Qt libraries and those interfere with the ones that come with Anaconda.
Perhaps Matlab is built with Qt too.


Feature/intake form validation

Description
Added frontend validation to new intake form.
Some minor UI adjustments (new error messages, margin/padding) to validation error messages
Types of changes

New feature (non-breaking change which adds functionality)
Checklist

[X] I have read the CONTRIBUTING doc
[X] I have checked that unit tests pass locally with my changes
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] I have added necessary documentation (if appropriate)

Further comments
PR to existing feature/intake-form branch

For me there is some odd validation behaviour.

Email doesn't validate as a valid email address at all
Lat/long didn't validate but then it did...I think it depends if you have clicked Submit or not and come back to it.
Last verified date on the permits can't be a required field because they might not know it.
I got a red toast after confirmation with Axios 500 so presumably the final saving after validation is not working
The Submit button is only available on the final tab.  That "might" be ok the first time but after they submitted and failed once, if they fix something on a previous tab they are forced back to the final tab to re-submit.
Also if the submission fails because of a required field on a previous tab, you don't get a message so you have no idea what you did wrong...it just does nothing.  You have to go back and find the red boxes.
Is Project Name really a mandatory field?  (Subin to confirm)
I think validation should happen on the "next tab" as well so you don't have to wait to find out you forgot something.

On top of Sharolyn's comment

I agree with her comment on the submit button only being available on the last page, something I didn't think through.. We should make it activated on every tab
Once they click submit and there are missing fields - can we have an alert banner? should be visible in all tabs with missing tabs (Part of my Figma design)
once they click the page should kind of jump to the top of the page so they can see the alert banner without having to scroll
Can the name of the tabs with missing fields change to red? (also in my Figma) If the Basic info tab had missing fields "Basic info" will turn red so they know which tabs to revisit right away
Error messages, change font color to red and decrease font size by a little bit
Put a bit of space between error message and type fields/ radio buttons
Project name is a mandatory field in SHAS right now
Probably bc this section got added today.. Natural disaster question doesn't get error message/ highlighted in red

Alert banner says "one of more..." It should say "one or more..."
Can we also change the font color of "...is a required field" messages to red and decrease the font size a little bit?
Has this been done? "Put a bit of space between error message and type fields/ radio buttons."
Everything else looks good to me!
Thanks!!


Add support for query languages (GraphQL, SQL)

This adds support for the query languages SQL and GraphQL.
0.X version bump because a public enum has a new branch.

#34


Finish interactive extension

Tis PR

adds a DisplayOptions type equivalent to Plotly.NET that for example controls how cytoscape.js is referenced in rendered html
uses Giraffe.ViewEngine DSL for creating type-safe html instead of relying on template strings
updates docs to use one single global cytoscape.js reference for all graphs on a page
Finishes Cyjs.NET.Interactive:

uses DisplayOptions to use require.js in notebooks
The problem was that the way of trying to render cytoscape graphs with a function does not work:

    let x = () => {
       fsharpCyjsRequire(['cytoscape'], function(cytoscape) {
           // using cytoscape here will not work
    });
    x(); // will not work
    fsharpCyjsRequire(['cytoscape'], function(cytoscape) {
      // using cytoscape here will work !
    });

This also closes #9
However, i'd like to discuss #12  and #11 before releasing this, as i would like to implement at least a basic top level API first, because working with DisplayOptions the way it is currently implemented is awkward because it is not coupled with the Graph, but just an argument of HTML.show/HTML.toGraphHTML

I'll merge this and implement #12 and #11  as discussed on main directly.


Add monthly workflow to update dependencies

Disable Dependabot; it's too noisy.  Instead, run cargo update once a month and submit a PR.
This won't notice nix minor version bumps, unfortunately, and neither does deps.rs (I guess because it's an arch-specific dependency?).  And we probably don't want to declare compatibility with nix >= 0.22, < 1, since we can't promise that.  I don't have a suggestion here, but I'm okay with leaving that problem unresolved for now.
Sample PR in https://github.com/bgilbert/gptman/pull/4.

No worries!  I actually kind of enjoy this sort of maintenance work, and I think the infrastructure is in a bit better shape now.  Thanks for handling all the reviews, cross-linked PRs, email, and churn.  :sweat_smile:
Rebased on main and dropped the nix update in favor of doing it separately in #91.

No worries! I actually kind of enjoy this sort of maintenance work, and I think the infrastructure is in a bit better shape now. Thanks for handling all the reviews, cross-linked PRs, email, and churn. sweat_smile
Rebased on main and dropped the nix update in favor of doing it separately in #91.

You should keep that as a secret and never tell anyone, especially at work, or you will be assigned to devops work for the rest of your life xD
(You can tell it's based on real life experience)

Yeah, I'm pretty sure they know.  :smirk:


Monkey 2

https://monkeycoder.co.nz/

Newsite: https://blitzresearch.itch.io/monkey2

Source code: https://github.com/blitz-research/monkey2

Seems unrelated to this: https://monkeylang.org/ But I could be wrong.

Monkey2-v2018.09.exe Virustotal 1/60, 1 could be false positive.

Thanks!


NEW Add php 7.2 support

Minimal effort attempt to see if we can get this working...

I think it's difficult to justify renaming Object in a minor version since it's a common class for modules and user code to extend from. I know that puts a road block in the way of SS3 and PHP 7.2.

Just to clarify: due to the conditional autoloading of class Object extends SS_Object, this shouldn’t break any PHP <7.2 sites. That is, if you’re on PHP <7.2 you won’t need to change anything. You’ll only need to replace instances of Object with SS_Object in your code if you want to run PHP >=7.2.
I’m not sure there’s a huge amount of value to be gained here. PHP 7.1 is supported for security patches beyond our support for SS 3 anyway, and 7.2 doesn’t offer any night/day performance improvements or features. Plus, we want to encourage people to upgrade to 4 rather than keep “effectively” extending the lifetime of 3.x.
What does everyone else think? @silverstripe/core-team

Whilst I'm not particularly committed to seeing this get over the line, as it was pretty low effort (<1hr work) to get done (thanks PHPStorm).
The same logic applies to this fix as applies to the 7.1 fix - user code that wouldn't run on 7.2 code before won't run now but if their code could have run on 7.2, it will. And that's without BC breakages.

I see a couple of things:
Compared to PHP7 Support this is less valuable: we’re not gaining the 200%+ speedup of php5.6 -> 7, and we’re not using this to extend the ss3 supportable lifetime.
Compared to renaming Int and Float, this is more invasive: it was rare that developers made direct reference to those classes, whereas it’s reasonably common to make Object subclasses and possibly instanceof checks.
For both of these reasons I’m less enthusiastic about this change, although I’m not dead set against it.

How do we feel about branching off 3.7 so this doesn't make it into a 3.7 release but then get it into 3.x-dev afterwards meaning that 3.8 (if it ever happens) would have it?

For both of these reasons I’m less enthusiastic about this change, although I’m not dead set against it.

I'm also not that fussed, like I said above it was a really small amount of time/effort to get this working and I'm not too fussed either way.
Happy to close if there's no consensus

Maybe close for now and just keep an ear to the ground to see if demand for this crops up? At least now we’ve got a clear plan for how we can solve this

At least those who are really determined to keep the ball rolling can use/refer to this pull request as well.
I'd be keen to wait and see how much demand there is to get 7.2 support out for 3.x

I feel like a safer alternative is capping the max PHP version to < 7.2.0, at least on 3.6.
What was specific to php 7.2 that changed object class that wasn't a problem in php 7.1 / 7.0?

@tractorcow PHP 7.2 introduces object as a reserved word, to use a type-hint.
PHP 7 added "object" as a "soft reserved" word which basically said "don't use these they might become reserved in the future". It was that statement that drove the removal of the Object class in SS4.

Is this going to make it into a SS3 release?
Our production servers are currently 5.6 and I just updated my local dev environment to 7.2 (from 7.0) to test then stumbled into this 'Object' issue. The reason I ask is because we are going to update our production servers to PHP7 for performance reasons and I thought we should go with the latest version of PHP7.
We will eventually migrate to SS4 but it would have been nice to be able to set up the new production servers with 7.2 now and be done with it. Obviously we will have to use 7.1 which is no problem at all but just wanted to explain a potential reason why we might want PHP7.2 support in SS3.

3.7 is coming out really soon.


go test fails

Just wanted to let you know that, as of da29859, blindly following https://github.com/google/mangle#building--testing fails:
$ go version
go1.22.6 linux/amd64

$ go get ./...
go: downloading bitbucket.org/creachadair/stringset v0.0.11
go: downloading github.com/golang/glog v1.2.0
go: downloading google.golang.org/protobuf v1.34.0
go: downloading go.uber.org/multierr v1.11.0
go: downloading github.com/antlr4-go/antlr/v4 v4.13.0
go: downloading github.com/chzyer/readline v1.5.1
go: downloading golang.org/x/sys v0.22.0
go: downloading golang.org/x/exp v0.0.0-20240707233637-46b078467d37

$ go build ./...

$ go test ./...
# github.com/google/mangle/analysis
analysis/rectify_test.go:20:2: missing go.sum entry for module providing package github.com/google/go-cmp/cmp (imported by github.com/google/mangle/analysis); to add:
        go get -t github.com/google/mangle/analysis
FAIL    github.com/google/mangle/analysis [setup failed]
# github.com/google/mangle/ast
analysis/rectify_test.go:20:2: missing go.sum entry for module providing package github.com/google/go-cmp/cmp (imported by github.com/google/mangle/analysis); to add:
        go get -t github.com/google/mangle/analysis
FAIL    github.com/google/mangle/ast [setup failed]
# github.com/google/mangle/builtin
analysis/rectify_test.go:20:2: missing go.sum entry for module providing package github.com/google/go-cmp/cmp (imported by github.com/google/mangle/analysis); to add:
        go get -t github.com/google/mangle/analysis
FAIL    github.com/google/mangle/builtin [setup failed]
# github.com/google/mangle/engine
analysis/rectify_test.go:20:2: missing go.sum entry for module providing package github.com/google/go-cmp/cmp (imported by github.com/google/mangle/analysis); to add:
        go get -t github.com/google/mangle/analysis
FAIL    github.com/google/mangle/engine [setup failed]
# github.com/google/mangle/factstore
analysis/rectify_test.go:20:2: missing go.sum entry for module providing package github.com/google/go-cmp/cmp (imported by github.com/google/mangle/analysis); to add:
        go get -t github.com/google/mangle/analysis
FAIL    github.com/google/mangle/factstore [setup failed]
# github.com/google/mangle/packages
analysis/rectify_test.go:20:2: missing go.sum entry for module providing package github.com/google/go-cmp/cmp (imported by github.com/google/mangle/analysis); to add:
        go get -t github.com/google/mangle/analysis
FAIL    github.com/google/mangle/packages [setup failed]
# github.com/google/mangle/parse
analysis/rectify_test.go:20:2: missing go.sum entry for module providing package github.com/google/go-cmp/cmp (imported by github.com/google/mangle/analysis); to add:
        go get -t github.com/google/mangle/analysis
FAIL    github.com/google/mangle/parse [setup failed]
# github.com/google/mangle/symbols
analysis/rectify_test.go:20:2: missing go.sum entry for module providing package github.com/google/go-cmp/cmp (imported by github.com/google/mangle/analysis); to add:
        go get -t github.com/google/mangle/analysis
FAIL    github.com/google/mangle/symbols [setup failed]
# github.com/google/mangle/unionfind
analysis/rectify_test.go:20:2: missing go.sum entry for module providing package github.com/google/go-cmp/cmp (imported by github.com/google/mangle/analysis); to add:
        go get -t github.com/google/mangle/analysis
FAIL    github.com/google/mangle/unionfind [setup failed]
ok      github.com/google/mangle/functional     0.006s
?       github.com/google/mangle/interpreter    [no test files]
?       github.com/google/mangle/interpreter/mg [no test files]
?       github.com/google/mangle/parse/gen      [no test files]
?       github.com/google/mangle/proto2struct   [no test files]
ok      github.com/google/mangle/json2struct    0.001s
ok      github.com/google/mangle/rewrite        0.003s
FAIL

@burakemir & @mihaimaruseac FYI
@teivah just in case you are bored and looking for 😸  something to contribute to...

FYI I've still managed to run it, these appear to be "just" test failures, not preventing building the binary:
$ go install ./...

$ ~/go/bin/mg

<decl>.            adds declaration to interactive buffer
<clause>.          adds clause to interactive buffer, evaluates.
?<predicate>       looks up predicate name and queries all facts
?<goal>            queries all facts that match goal
::load <path>      pops interactive buffer and loads source file at <path>
::help             display this help text
::pop              reset state to before interactive defs. or last load command
::show <predicate> shows information about predicate
::show all         shows information about all available predicates
<Ctrl-D>           quit

One needs to run go get -t ./... to get all the dependencies used for testing.
I will update the README.md


Wrong skill requirement on Shades of Mort'ton quest

I have just started the Shades of Mort'ton quest and according to the plugin you only need level 5 Firemaking. However, in order to put the Redwood pyre logs on the funeral pyre, you need to have Firemaking level 95. I hope this can be updated so other people are not being mislead.

One of my friends told me that you can use a different type of wood, and that why the requirement is level 5 firemaking. I didn't know this at the time, so im closing the issue.


Add Get-WebListenerUrl Based Examples to WebListener README.md

closes #4918

Switches from URL Examples to Get-WebListenerUrl
Minor formatting
Correct the Compression examples

@dantraMSFT As requested in #4905

restarted macOS CI.  if it doesn't fix the issue, you might need to rebase.

@TravisEz13 Can you please update your review?


Views don't have primary keys.

Making a GraphML schema for a PG schema containing views fails because views don't have primary keys.

Yeah this is a big deal. Didn't think about that, thanks.
I decided to error when tables didn't have primary keys so to enforce support for the Relay Node interface, but views don't necessarily need to implement Node. I'll fix this soon.

Fixed this in #10 if you want to try it out.
If you want, I've started a Gitter room if you want to talk about your experiences with PostGraphQL. Also, if you'd like to contribute I want to adopt an open-open source governance model so core collaborators have direct commit rights on the repo (only makes sense as PostGraphQL is definitely a critical dependency).

Closing as this is fixed in 1.1.0 🔥


Gradle 4.4+ injects default system includes into include path

Originally reported: https://github.com/gradle/gradle/issues/3900
For cross-compilation and custom toolchains, this causes builds to break.  We should see if there's something simple we can do to unblock people who run into this problem and connect it to some of our future stories (cross-compilation, runtime modeling, etc).

Scraping compiler arguments for that break our assumptions and get the correct include paths by re-running the compiler
explicit modeling at the task level for system includes

Are there any other use cases?
Can we move our low-level hook up to the task to solve this when probing for include path?

See https://discuss.gradle.org/t/wrong-headers-are-used-for-building-native-x86-code-on-x86-64-system/26851

Note that we have observed different includes being added to options.txt between Gradle 4.6 and Gradle 4.7 as well.  So not only is the behavior different with 4.4+, it also changes further with 4.7.

We introduced the compilerProbeArgs setting that Gradle uses to probe the compiler for the system includes to correctly handle caching. If you overwrite the target configuration for a compiler, then you will need to also supply the right compilerProbeArgs.
@big-guy We will need to think this through a bit more as compilerProbeArgs is an internal API and is required for this use case.

We should add a sample to demonstrate this working.


[ERROR] Broken link in reference/data_manage.md

Note: This repository is ONLY used to solve issues related to DOCS.
For other issues, please move to other repositories.

Where is the error
Broken link in reference/data_manage.md.
How would you like to improve it
Fix it!

Fixed.


Fix credit card processing

I noticed that this if credit card number is rounded by space "card 4111-1111-1111-1111 " than FinderEngine.find() method will match " 4111-1111-1111-1111 " and to resolve that issue CreditCardFinder line 35 substring was called with extra +1/-1 indexes.
I added extra tests for case which failed for me
Please review

good catch,  will commit soon.

A merge and release would be sort of nice.


TensorRT Inference Produces Zero Value Coordinates

Hi there, thank you for your great work of RT-DETR. I trained RT-DETR using my own dataset and convert the onnx model to TensorRT following this #124. when I do inference, the bounding boxes coordinates always produces zero value like this screenshot. for inference I follow your code in trtinfer.py.

for the inputs, i put all of the inputs to gpu instead of cpu like this
#for tensor backend resized_img = T.ToTensor()(resized_img)[None].to("cuda:0", non_blocking=True) blob = {"images" : resized_img, "orig_target_sizes": torch.tensor([[640,640]]).to("cuda:0", non_blocking=True)}

"orig_target_sizes": torch.tensor([[640,640]]).to("cuda:0", non_blocking=True)

replace this as
"orig_target_sizes": torch.tensor([[640,640]]).to(device="cuda:0", dtype=torch.int32, non_blocking=True)

thank you so much for your suggestion! it finally works like a charm


What does the 'forward' mean in split_traintest.py?

I have a question on the 'forward' in split_traintest.py under which circumstances would it be true?
forward = origin_pose[0,:3] @ poses[seq_id][min_dist_indices][0, :3] > 0

Hi! Thanks for your interest! This line is to determine if the ego car is moving in the same direction as it was in the reference sequence.


Rule::unique doesn't handle a nested where condition properly

Laravel Version: 9.30.0 & 9.33.0
PHP Version: 8.1.8
Database Driver & Version: MariaDB 15.1

Description:
When using a nested where on a Rule::unique rule the given restrictions are not resolved to the correct string, for example, the following behave differently but unless I've misunderstood the documentation these should still result in similar behaviour.
This is from the docs "Adding Additional Where Clauses:" section of the validation docs:
'email' => Rule::unique('users')->where(fn ($query) => $query->where('account_id', 1))
// or
'email' => [
    Rule::unique('users')->where(fn ($query) => $query->where('account_id', 1))
]

results in the compiled rule string of unique:users,NULL,NULL,id
Which doesn't appear to actually take into account the account_id condition. If I adjust this to not be a callback:
Rule::unique('users')->where('account_id', 1)

results in the compiled rule string of unique:users,NULL,NULL,id,account_id,"1" and does then appear to take into account the extra condition.
I believe, after little code dive, this is related to the ->where(callback) version being added to the rule's internal usings array as a callback. Which is then, from what I can see, used within the validateUnique function call on the following line (around line 870 for me):
if ($this->currentRule instanceof Unique) {
     $extra = array_merge($extra, $this->currentRule->queryCallbacks());
}

However, this, if condition I believe will always be false as the rule has been converted to a string before this point and so I do not believe there's an instance where currentRule would still be an instance of unique.
I'm not sure which version changed this, however, this worked fine for us on version 6 but we have recently become aware of this in version 9.
Steps To Reproduce:

Create a rule with the Unique rule and a where restraint as per the documentation
Try and submit a request which should succeed due to the where restraint

The exists rule and the unique rule share the same trait, so after looking into the exists they don't seem to have any promise that all queries are doable by saying:
If you would like to customize the query executed by the validation rule, you may use the Rule class to fluently define the rule. In this example, we'll also specify the validation rules as an array instead of using the | character to delimit them:
This as a documentation update could be helpful.

Heya, thanks for reporting.
We'll need more info and/or code to debug this further. Can you please create a repository with the command below, commit the code that reproduces the issue as one separate commit on the main/master branch and share the repository here? Please make sure that you have the latest version of the Laravel installer in order to run this command. Please also make sure you have both Git & the GitHub CLI tool properly set up.
laravel new bug-report --github="--public"

Please do not amend and create a separate commit with your custom changes. After you've posted the repository, we'll try to reproduce the issue.
Thanks!

Hey @driesvints ,
Thanks for your reply, annoyingly I'm struggling to get this reproduced, but I do remember reliably doing it when I raised the bug. I'll close this for now and reopen it with a repo if I manage to come across it again.
Thanks!

@tom-skilltech I was taking a look at your issue recently, if you pull down laravel/framework take a look at tests/Validation/ValidationUniqueRuleTest.php and you will find the method testItCorrectlyFormatsAStringVersionOfTheRule, I believe you can write a failing test with something like this:
        $rule = new Unique('table');
        $rule->where(function ($query) {
            $query->where('foo', 'bar');
        });
        $this->assertSame('unique:table,NULL,NULL,id,foo,"bar"', (string) $rule);

and that's about as far as I've got. I'm currently trying to get my head round the related classes and methods, for example:

How src/Illuminate/Validation/Rules/Unique.php and the __toString method is working
How the where query can be pulled into the __toString method (if it is not?), so looking at src/Illuminate/Validation/Rules/DatabaseRule.php and its queryCallbacks() and $using property.

Not sure if any of this helps, but will update if I make any progress.

From my attempt yesterday the string version of the rule does indeed miss the nested where conditions. However, the validator stores the non-string version and processes it, which does take into account the nested where.
When I was hitting this issue the other week, the validator was not storing the non-string version for some reason, causing it to not be able to use the nested wheres against the unique rule.
if ($this->currentRule instanceof Unique) {
     $extra = array_merge($extra, $this->currentRule->queryCallbacks());
}

That line is what parses the nested conditions, but for me $this->currentRule was not an instance of Unique but rather was always the string version, if I removed the nesting the conditions would be in the string if I had the nesting they would not.
Unfortunately, I couldn't reproduce that behaviour yesterday, but will keep an eye out for it as I thought I was reliably reproducing it 😞
Would be interested if you're able to reproduce it so that it causes a failed validation, as I believe the string not matching is expected in this instance due to how the nested conditions are stored on the class and parsed when validating.


Make rule page match the new look of the skill page

Adjust the rules page based on the new look from #189.
This PR is based on #200 so many changes from this PR are already covered by it.

Ok the other one was merged, can you rebase this one to get a cleaner diff?

Ok the other one was merged, can you rebase this one to get a cleaner diff?

Done


Filebeat not picking up all logs

This may be more of a question than an actual issue.
I've not made any modifications to the filebeat deployment.
Kibana successfully pulls logs for my autoscaler and elk stack. Kibana picks up all my namespaces correctly, but for some reason does not show logs for nginx-ingress, external-dns, or any other services. I've deployed an AWX operator into default namespace, no logs.
Am I missing a setting or flag I should toggle in Kibana or Elasticsearch to pull those?
filebeat:
  enabled: true
  filebeatConfig:
    filebeat.yml: |
      filebeat.modules:
        - module: system
          syslog:
            enabled: true
            #var.paths: ["/var/log/syslog"]
      filebeat.autodiscover:
        providers:
          - type: kubernetes
            node: $${NODE_NAME}
            hints.enabled: true
            hints.default_config:
              type: container
              paths:
                - /var/log/containers/*-$${data.kubernetes.container.id}.log

      processors:
        - drop_event:
            when:
              equals:
                kubernetes.container.name: "filebeat"

        - add_cloud_metadata:
        - add_kubernetes_metadata:
        - add_docker_metadata:

      output.elasticsearch:
        username: '$${ELASTICSEARCH_USERNAME}'
        password: '$${ELASTICSEARCH_PASSWORD}'
        protocol: https
        hosts: ["elasticsearch-master:9200"]
        ssl.verification_mode: none

I was able to resolve my issue by modifying the input for Filebeat
filebeat:
  enabled: true
  filebeatConfig:
    filebeat.yml: |
      filebeat.inputs:
      - type: container
        paths:
          - /var/log/containers/*.log
        processors:
          - add_kubernetes_metadata:
              host: $${NODE_NAME}
              matchers:
              - logs_path:
                  logs_path: "/var/log/containers/"
      filebeat.modules:
        - module: system
          syslog:
            enabled: true
            #var.paths: ["/var/log/syslog"]
      filebeat.autodiscover:
        providers:
          - type: kubernetes
            node: $${NODE_NAME}
            hints.enabled: true
            hints.default_config:
              type: container
              paths:
                - /var/log/containers/*-$${data.kubernetes.container.id}.log

      processors:
        - drop_event:
            when:
              equals:
                kubernetes.container.name: "filebeat"

        - add_cloud_metadata:
        - add_kubernetes_metadata:
        - add_docker_metadata:

      output.elasticsearch:
        username: '$${ELASTICSEARCH_USERNAME}'
        password: '$${ELASTICSEARCH_PASSWORD}'
        protocol: https
        hosts: ["elasticsearch-master:9200"]
        ssl.verification_mode: none

This config successfully pulls all the container logs into Kibana (Elasticsearch). Not sure if this is what you intended.  On that same note, I was wondering what purpose does running Loki and Filebeat together serve?

Hi @danielc103,
thank you for your report!
We got rid of - type: container after adding filebeat.autodiscover and everything worked well.
I'll try to reproduce your issue and will come back later.

I was wondering what purpose does running Loki and Filebeat together serve?

Some time ago we started to use Loki after it became more usable and Prometheus Stack as a default solution to collect metrics and logs and draw dashboards based on that data. But ELK is still the main stack to collect logs for many projects. So we left them both.
But yeah, seems like adding Loki as a default logging service was pretty early.

Hi @danielc103
I reproduce the problem which you describe. And I found that the filebeat read only ingress-controller logs without Nginx access logs. I found miss-configuration for filebeat autodiscovery and fixed it in this PR: #55
filebeat.autodiscover - automatically adds the Kubernetes labels so I removed conflicting options with autodiscovery.
And I changed paths for logs filebeat autodiscovery as recommended in the filebeat documentation.
After the filebeat configuration was updated. All ingress-Nginx logs, external-dns and other application logs became available.
Thank you for your report.


Add Checkstyle for doris-fe

@imay HI,
I want to add Checkstyle plugin to FE code to check the code style.
I'm going to start with a simple check.
First we need to discuss which parts of the code to check.
I'd like to discuss the checkstyle-apache-header format with you.
In the code in FE, I find there are two types of headers.
/*
 * 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.
 *
 */

// 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.

Which one are you going to use？
Second, check whether import is using *.

@DDDDDDouble Thanks for your proposal.
For License header, I prefer second type. Because most of our code is forked from Apache Impala, who use second format. So I think using second format can make code changes be a bit less.


System.IO.IOException: Lz4 decompression error, write -1 bytes but expected 131072 bytes

I get this error on every file I want to open from the game Whiteout Survival. Any tips?
I saw https://github.com/zhangjiequan/AssetStudio/issues/15 but in my case there is a single instance of the "UnityFS" string in the file (first characters).
Error while reading bundle file D:\work\whiteout\apk\assets\data\actor_battle_battle_gpu_soldier_archer_blue_906b8dd885c6cb6653e843cd67dc4a6.unity3d
System.IO.IOException: Lz4 decompression error, write -1 bytes but expected 131072 bytes
   at AssetStudio.BundleFile.ReadBlocks(EndianBinaryReader reader, Stream blocksStream) in D:\work\whiteout\AssetStudio\AssetStudio\BundleFile.cs:line 353
   at AssetStudio.BundleFile..ctor(FileReader reader) in D:\work\whiteout\AssetStudio\AssetStudio\BundleFile.cs:line 98
   at AssetStudio.AssetsManager.LoadBundleFile(FileReader reader, String originalPath) in D:\work\whiteout\AssetStudio\AssetStudio\AssetsManager.cs:line 182

The files appear to have version 5.x.x 2018.4.36f1

Hey have you found anything new about this ?


[pages] Discussions overview

Last update 28/03/19 (BenGamma)
Child of the Discussions module #213
This issue is the main reference for the work done on the page : discussions overview.
Link to interactive prototype can be found in the related parent issue.
Page infos

Url : /discussions
Path in codebase : src/pages/Discussions/PostList

Description
List view of all the discussions
Page components splitting :
Legend

Red encased elements are stateless components shared between multiple pages or components that will be built under src/components/
Green encased elements are statefull components shared between multiple pages that will be built under src/pages/common
Blue encased elements are components that will only be used in the current page. They will be built in src/pages/Discussions/PostList/

Discussions overview

Additional notes
You'll find in this thread the references to all the components that compose this page.

Related issues :
PostList #215 #400
FilterBar #244 #245 #328

This is on hold for now. Will reopen if appropriate in a close futur.


Trivial stardate calculator for The Original Series.

Looking for a way to update the handles for current stardate and destination, and to include the stardate (and perhaps destination) in the description, without having to move away from inline schemas.
If it's not possible this could catalyze filing specific issues with this as a repro case.

Update to reflect @sjmiles rework in https://github.com/sjmiles/arcs/tree/may-stardate
We've lost the original intended logic to always have a stardate generated within an arc use a date greater than the existing stardate, but I'm not sure how to do this in a SpecEx-friendly way so I've just added a TODO.

Also noting issues we worked through with this simple case:

Arguments to this.updateVariable are confusing (I think this gets worse if you look at the that group of methods), and the error messages are not super obvious.
render() is never called during SpecEx (because there are no slots)
description formatter used to crash if you referenced a null handle in the format, now it punts (returns '')
feedback loop when writing to an input variable


⚠ Bofrost.at has degraded performance

In 3225cd6, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1697 ms

Resolved: Bofrost.at performance has improved in 9b98c6d after 9 minutes.