[stable/prometheus-operator] retentionSize option not working as expected

Describe the bug
retentionSize isn't working as expected. I'm able to set retention to 15d but when I set retentionSize, it isn't acknowledged.
Version of Helm and Kubernetes:
Kube- 1.15.2
Helm- 2.14.3
Which chart:
Prom 2.12.
What happened:
retentionSize isn't working as expected. I'm setting it to 15GiB for example, and it is not set on the command line
What you expected to happen:
Expected storage.tsdb.retention.size to be 15GB
How to reproduce it (as minimally and precisely as possible):
Anything else we need to know:
Here is my values file. I've confirmed indenting is fine, my prom is up to date (2.12), and retention is working.
prometheusSpec:

    ## Interval between consecutive scrapes.
    ##
    scrapeInterval: ""

    ## Interval between consecutive evaluations.
    ##
    evaluationInterval: ""

    ## ListenLocal makes the Prometheus server listen on loopback, so that it does not bind against the Pod IP.
    ##
    listenLocal: false

    ## EnableAdminAPI enables Prometheus the administrative HTTP API which includes functionality such as deleting time series.
    ## This is disabled by default.
    ## ref: https://prometheus.io/docs/prometheus/latest/querying/api/#tsdb-admin-apis
    ##
    enableAdminAPI: false

    ## Image of Prometheus.
    ##
    image:
      repository: quay.io/prometheus/prometheus
      tag: v2.12.0

    ## Tolerations for use with node taints
    ## ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
    ##
    tolerations: []
    #  - key: "key"
    #    operator: "Equal"
    #    value: "value"
    #    effect: "NoSchedule"

    ## Alertmanagers to which alerts will be sent
    ## ref: https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#alertmanagerendpoints
    ##
    ## Default configuration will connect to the alertmanager deployed as part of this release
    ##
    alertingEndpoints: []
    # - name: ""
    #   namespace: ""
    #   port: http
    #   scheme: http

    ## External labels to add to any time series or alerts when communicating with external systems
    ##
    externalLabels: {}

    ## Name of the external label used to denote replica name
    ##
    replicaExternalLabelName: ""

    ## If true, the Operator won't add the external label used to denote replica name
    ##
    replicaExternalLabelNameClear: false

    ## Name of the external label used to denote Prometheus instance name
    ##
    prometheusExternalLabelName: ""

    ## If true, the Operator won't add the external label used to denote Prometheus instance name
    ##
    prometheusExternalLabelNameClear: false

    ## External URL at which Prometheus will be reachable.
    ##
    externalUrl: ""

    ## Define which Nodes the Pods are scheduled on.
    ## ref: https://kubernetes.io/docs/user-guide/node-selection/
    ##
    nodeSelector: {}

    ## Secrets is a list of Secrets in the same namespace as the Prometheus object, which shall be mounted into the Prometheus Pods.
    ## The Secrets are mounted into /etc/prometheus/secrets/. Secrets changes after initial creation of a Prometheus object are not
    ## reflected in the running Pods. To change the secrets mounted into the Prometheus Pods, the object must be deleted and recreated
    ## with the new list of secrets.
    ##
    secrets: []

    ## ConfigMaps is a list of ConfigMaps in the same namespace as the Prometheus object, which shall be mounted into the Prometheus Pods.
    ## The ConfigMaps are mounted into /etc/prometheus/configmaps/.
    ##
    configMaps: []

    ## QuerySpec defines the query command line flags when starting Prometheus.
    ## ref: https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#queryspec
    ##
    query: {}

    ## Namespaces to be selected for PrometheusRules discovery.
    ## If nil, select own namespace. Namespaces to be selected for ServiceMonitor discovery.
    ## See https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#namespaceselector for usage
    ##
    ruleNamespaceSelector: {}

    ## If true, a nil or {} value for prometheus.prometheusSpec.ruleSelector will cause the
    ## prometheus resource to be created with selectors based on values in the helm deployment,
    ## which will also match the PrometheusRule resources created
    ##
    ruleSelectorNilUsesHelmValues: true

    ## PrometheusRules to be selected for target discovery.
    ## If {}, select all ServiceMonitors
    ##
    ruleSelector: {}
    ## Example which select all prometheusrules resources
    ## with label "prometheus" with values any of "example-rules" or "example-rules-2"
    # ruleSelector:
    #   matchExpressions:
    #     - key: prometheus
    #       operator: In
    #       values:
    #         - example-rules
    #         - example-rules-2
    #
    ## Example which select all prometheusrules resources with label "role" set to "example-rules"
    # ruleSelector:
    #   matchLabels:
    #     role: example-rules

    ## If true, a nil or {} value for prometheus.prometheusSpec.serviceMonitorSelector will cause the
    ## prometheus resource to be created with selectors based on values in the helm deployment,
    ## which will also match the servicemonitors created
    ##
    serviceMonitorSelectorNilUsesHelmValues: true

    ## ServiceMonitors to be selected for target discovery.
    ## If {}, select all ServiceMonitors
    ##
    serviceMonitorSelector: {}
    ## Example which selects ServiceMonitors with label "prometheus" set to "somelabel"
    # serviceMonitorSelector:
    #   matchLabels:
    #     prometheus: somelabel

    ## Namespaces to be selected for ServiceMonitor discovery.
    ## See https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#namespaceselector for usage
    ##
    serviceMonitorNamespaceSelector: {}

    ## If true, a nil or {} value for prometheus.prometheusSpec.podMonitorSelector will cause the
    ## prometheus resource to be created with selectors based on values in the helm deployment,
    ## which will also match the podmonitors created
    ##
    podMonitorSelectorNilUsesHelmValues: true

    ## PodMonitors to be selected for target discovery.
    ## If {}, select all PodMonitors
    ##
    podMonitorSelector: {}
    ## Example which selects PodMonitors with label "prometheus" set to "somelabel"
    # podMonitorSelector:
    #   matchLabels:
    #     prometheus: somelabel

    ## Namespaces to be selected for PodMonitor discovery.
    ## See https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#namespaceselector for usage
    ##
    podMonitorNamespaceSelector: {}

    ## How long to retain metrics
    ##
    retention: 15d

    ## Maximum size of metrics
    ##
    retentionSize: 15GiB

    walCompression: true

    ## Prometheus StorageSpec for persistent data
    ## ref: https://github.com/coreos/prometheus-operator/blob/master/Documentation/user-guides/storage.md
    ##
    storageSpec:
      volumeClaimTemplate:
        spec:
          storageClassName: gp2
          accessModes: ["ReadWriteOnce"]
          resources:
            requests:
              storage: 20Gi
        selector: {}

@manavkapoor Prometheus uses GB unit, not GiB. It's documented here

@maxromanovsky I tried using GB in the helm chart for prometheus-operator but its not updating as expected. Have you configured it in the prom-operator before? The documentation specific to the chart contradicts the link you provided.
prometheus.prometheusSpec.retentionSize | Used Storage Prometheus shall retain data for. Example 50GiB (50 Gigabyte). Can be combined with prometheus.prometheusSpec.retention

https://github.com/helm/charts/blob/master/stable/prometheus-operator/README.md

@manavkapoor it works for me:
kubectl get prometheus -n prometheus-operator -oyaml | grep retentionSize
[...]
    retentionSize: 500GB

And https://<prometheus>/flags indicates:
storage.tsdb.retention.size | 500GiB

It could be a problem of your prometheus version.


Integrate Chrome debugging into Visual Studio

Chrome has the ability to do remote debugging over a socket.  Having the ability to debug the JavaScript page using the Visual Studio debugger would be very useful.
https://developer.chrome.com/devtools/docs/debugger-protocol

Personally, I am not sure there is anything tat could be done in Bridge to help with it. I mean it is a feature of Chrome and Visual Studio (or Visual Studio and Chrome) and Bridge is not going to spoil anything at least. This feature should be working with JavaScript generated by Bridge in the same way as it works with any other JavaScript code. Please clarify does it not work with JavaScript code generated by Bridge?
This "Debugging with Visual Studio" article might be relevant (posting for references, at least).
https://developer.chrome.com/native-client/devguide/devcycle/vs-addin
Actually, I've never tried to debug with Chrome+VS. It is always IE+VS for me that works very well. And again we didn't do anything in Bridge to make working IE+VS debug. It just works.
I am sorry if I misunderstand something in the feature request.

The link to "Debugging with Visual Studio" is for debugging the C++ browser code, not the JavaScript running in the window.  The idea is that it would be possible to set a breakpoint in the C# code in Visual Studio, click "Run", have it come up in Chrome, and then have it pause the JavaScript at the breakpoint.  At that point the variables could be accessible through tool-tips and the locals window as usual in the VS debugger. I suggested remote debugging because it would be possible to write a debugger plugin that communicated over the Chrome remote debugging interface, which is not for the C++ code, but rather for the JavaScript running in the webpage. It is not a critical feature, but I have found trying to match up the JS code to the C# code difficult in complex functions.

Thank you for clarifying. Catching a regular C# breakpoint in this manner is an interesting task.
Yes, currently matching JavaScript code back to C# for debugging is an issue. Source map (#259) should help with debugging. At least, at some degree. The current level of source map support in browsers is not the best for mapping to C# code.

I was hoping this would be implemented too.


AkTuningTable proposal

Hi Aure,
New in this pull request:
Modified subclasses of AKPolyphonicNode to use AKTuningTable as default noteOn implementation.
Frequency from AKTuningTable is passed to C++/Soundpipe as a new noteOn function with frequency parameter.
Ideally should have no impact to existing users of AudioKit.
Added Scala file support to AKTuningTable.
I started adding a Microtonal playground page under Synthesis.

I manually merged this


feat: accept a kafka even if there is no ready cluster but region limits not reached during dynamic scaling

Description

The option that's chosen here is the one that:

Does not change how manual mode works
Add an IF statement to check for scaling mode, if dynamic scaling accept the kafka anyway if region limits not reached
Add a reconciliation steps that checks for Kafkas in accepted that do not have ClusterID set and assigns the ClusterID. Do this irrespective of the scaling mode and do this within some reasonable timeout of an hour (enough for a new cluster to be provisioned and terraformed).

Closes https://issues.redhat.com/browse/MGDSTRM-8914
Verification Steps

Added unit tests should pass
Checklist (Definition of Done)

[x] All acceptance criteria specified in JIRA have been completed
[x] Unit and integration tests added that prove the fix is effective or the feature works (tested against emulated and non-emulated OCM environment)
[ ] Documentation added for the feature
[x] CI and all relevant tests are passing
[ ] Code Review completed
[ ] Verified independently by reviewer
[ ] All PR comments are resolved either by addressing them or creating follow up tasks
[ ] Required metrics/dashboards/alerts have been added (or PR created).
[ ] Required Standard Operating Procedure (SOP) is added.
[ ] JIRA has been created for changes required on the client side

Thanks @miguelsorianod

I'll run the test suite against a real env before mergin.

I'll run the test suite against a real env before merging.

Done with success


Also relax the PySequence check when extracting fixed-sized arrays.

Closes #2674

Looks great, thanks again! I guess we should put out 0.17.3 - anything else we should include?

I don't think we have any other bug fixes ready that are blocked only on review. Everything else seems to be enhancements.
We do have two undiagnosed crash bugs in https://github.com/PyO3/pyo3/issues/2611 and https://github.com/PyO3/pyo3/discussions/26778 though.
Personally, I am not sure if this fix here alone warrants a point release but then again it is a regression. (Turning NumPy arrays into fixed-size Rust arrays seems a bit fringe as NumPy arrays are relatively inefficient for small arrays which is where fixed-size Rust arrays are usually applied.)

Ok. Let's hold off for the moment; Python 3.11.0 is due at the end of the month so maybe we can target 0.17.3 for then once we can confirm PyO3 officially supports it. (Unless we can land some bigger features worthy of calling it 0.18!)


do we need detection logic for openapi compilers?

Report about Ascent, from folks using the OpenAPI compilers:
They hit an issue where fortran and c were both defining main.
This is solved by the -nofor_main intel compiler option.
We do have this logic in our build system, it's  associated with INTEL in our call to  blt helper macro:
https://github.com/Alpine-DAV/ascent/blob/fcbb50f420839f14606618f44582a76f83be8427/src/examples/proxies/cloverleaf3d-ref/CMakeLists.txt#L88
Since this didn't trigger with the OpenAPI compilers, do we need another case?
I am getting more info about the cmake names of the compilers, etc. It could be that cmake version might undermine the matching as well.  I'll update when i learn more.

Looks like I need the new IntelLLVM logic.


Fix namedplaces tests #3024

@Kartones CR please
Note the gem is only added for tests (group :test)

Frontend tests were OK :+1: (details)

:+1: but can't add much here...

retest this, please

Frontend tests were OK :+1: (details)


Update semconv to latest (1.17)

Is your feature request related to a problem? Please describe.
We should be using the latest semconv package as it can cause issues when combining multiple datasources that have conflicting versions.
Describe the solution you'd like
Update semconv to latest

Closed by #19


GitHub Actions fail on forked repository

Describe the bug
GitHub Actions fail on a forked repository because "Upload to coveralls.io" step fails.
To Reproduce
Steps to reproduce the behavior:

Fork HazyResearch/fonduer
Push any commit to your forked repository
GitHub Actions fails

Expected behavior
"Upload to coveralls.io" runs only on HazyResearch/fonduer
Error Logs/Screenshots

Maybe this is useful: https://community.codecov.io/t/whitelist-github-action-servers-to-upload-without-a-token/491/19

I think the following is more suitable.
https://help.github.com/en/actions/reference/workflow-syntax-for-github-actions#jobsjob_idstepsif
Like below.
steps:
    - name: Upload to coveralls.io
      if: github.repo = 'HazyResearch/fonduer'
      run: |
          coverage combine
          coveralls
      env:
        COVERALLS_REPO_TOKEN: ${{ secrets.coveralls_repo_token }}

I'll make a PR and submit.


Match corresponding exported RGB and Depth images

Before opening a new issue, we wanted to provide you with some useful suggestions (Click "Preview" above for a better view):

Consider checking out SDK examples.
Have you looked in our documentations?
Is you question a frequently asked one?
Try searching our GitHub Issues (open and closed) for a similar issue.

All users are welcomed to report bugs, ask questions, suggest or request enhancements and generally feel free to open new issue, even if they haven't followed any of the suggestions above :)

Required Info

Camera Model
{ D435i }

Operating System & Version
{Win10}

Platform
PC

SDK Version
{ 2.45.0  }

Language
{Python }

Issue Description
Hello,
So i have extracted several RGB and Depth images from a .bag file that i have recorded using the D435i camera. The filenames of the RGB and Depth images don't seem to have any correlation. What i mean is that i can't see a way to determine which RGB image relates to each Depth image and vice versa. Is there maybe a way to do this?
Thanks in advance

Hi @blckmessiah  If it is possible for you to use the SDK's rs-convert bag file extract tool (if you have not done so already) then it can convert bag frames to depth and color images and use the frame timestamp in the filename.
https://github.com/IntelRealSense/librealsense/tree/master/tools/convert
The Windows version of the SDK has a pre-built version of rs-convert that you can launch in the Windows Command Prompt interface.
https://support.intelrealsense.com/hc/en-us/community/posts/360051132573-Can-someone-help-me-on-how-to-get-rs-convert-exe-

Hello MartyG,
So i have already extracted them using the rs_convert tool. The filename looks like this "name_Depth_1626539024069.83154296875000" for example. Which part of this is the timestamp?
I would also like to ask something else. Is there a way to create a 4-dimensional array consisting of the 3 dimensions of the RGB images and 1 dimension that represents the distance value of each pixel? It would be very nice if you could give me some guidance on this!

All of the number that comes after 'name_Depth_' would be the frame timestamp, the most important part of the value being the first half before the decimal point in the middle.  Their naming by numbers will likely mean that by default they will be listed in the folder that they were extracted to in the correct order from first to last.
I carefully researched your question about 4D arrays but could find no past examples of this in a RealSense project, unfortunately.
Would storing the RGB and depth data in Python numpy arrays and aligning them suit your needs, as demonstrated in the link below?
https://stackoverflow.com/questions/67506025/intel-realsense-align-depth-and-color-in-two-numpy-arrays/69252861#69252861

You are very welcome.  If you have finished with this case, please feel free to close it using the Close Issue button under the comment writing box.  Thanks again!

@blckmessiah Hi~ Have you solved this problem? I could not find the correlation between Depth image and RGB image, it seems frames drop.  Could you please help me? Thanks.

Hello @berylyellow , i am sorry but i could not solve my problem. But to my knowledge there are some frames that are dropped during conversion i believe. Sorry i cannot be of any assistance.

嗨@blckmessiah 你有关于这个案例的更新，你可以提供吗？谢谢！

您好，请问您后面解决了深度图像数据的问题吗？

您好 MartyG， 所以我已经使用 rs_convert 工具提取了它们。例如，文件名类似于“name_Depth_1626539024069.83154296875000”。这是时间戳的哪一部分？
我还想问点别的。有没有办法创建一个由RGB图像的3维和表示每个像素的距离值的1维组成的4维数组？如果你能在这方面给我一些指导，那就太好了！

您好，请问您解决了您深度图像数据的问题吗

The above comment is a translation of the message earlier in this discussion in https://github.com/IntelRealSense/librealsense/issues/9820#issuecomment-934178997 with the added comment to @blckmessiah that says "Hello, have you solved the problem of your depth image data?"

@woshicaobin Hello, sorry but i have not. This approach kind of seemed like a dead end to me.
@MartyG-RealSense Thanx for the translation!


Loop option

It would be nice to have an option that controls the looping of the output file.

I've added this to my fork, unfortunately I didn't keep the commits separate, so it will be difficult to merge. The example implementation works well.

Done in https://github.com/jclem/gifify/commit/79930e64356652064852ee1db2edd3e0406b4091


2.2.2 is not yet released

Hi @Alex-Vol-SV ,
Looks like we have a problem with documentation, as README.md refers to 2.2.2 version https://github.com/bmuschko/gradle-clover-plugin#usage however that version is not yet released https://github.com/bmuschko/gradle-clover-plugin/releases
Related to https://github.com/bmuschko/gradle-clover-plugin/commit/0b56343d07c5be36f1d964392b62bb3a6015794c
Gevorg.

It will be this weekend probably. I am preparing the docs for release.

Started the release process. This will be available soon in the public repositories and the plugins.gradle.org location

Thanks a lot!


Update OCP/OCS version

Bump OCP and OCS versions

I verified this in my local development and it works. Thanks @pranavgaikwad :)


Patch init import to allow for local dev

This is very simple PR, suggesting two changes to to ease the local dev without the need to actually install umap-learn in a local env.
The PR brings two changes:

modify umap.__init__.py to allow working on a dev local version (more on this below)

including in the .gitignore file the other.xml idea file - also non-stylistic and so to be ignored.

The Issue when importing umap in a local dev environment
When importing umap, the __version__ variable is automatically derived from pkg_resources.
This does not work without installing the package.
The (simple and silly) Solution
Catching the exception and manually setting up the version.
As far as I can see, this won't interfere in any case with normally setup package in a virtual environment.

Coverage decreased (-0.1%) to 82.702% when pulling c8d7de94dc4833cf5dcd19e7c138b01a5559746e on leriomaggio:patch-init-local-dev into 652e31acbef9cbf101d2a1d9c8f484c920c49782 on lmcinnes:master.

Thanks! I admit that I don't have much expertise with these things, so if this helps others develop with UMAP all the better.


WorkflowMgr: implement local prefix handler

When uploading / downloading artifacts (WFDs, XSLTs?)

rename artifacts  changing local prefix "DD_" to configurable site prefix
rename adapter/services in the same manner

Especially for DD_API_WS: enable mapping of "default" services/adapters in DD_API_WS.bpml to locally available ones...

Implemented service/adapter mapping for DD_API_WS update.
For now, I cannot see a use case for a general site prefix mapping, so I'll de-scope this (as it's implementation is elaborate...)


[stable/cluster-autoscaler] Enable Autodiscovery

Background
Currently, autodiscovery is not exposed by the chart. Additionally, the pull-charts-e2e test fails because this chart does not provide enough defaults to start the pod.
What's this do

Uses upstream's default AWS ASG tags for autodiscovery of nodes. The user can then set autoDiscovery.clusterName to enable autodiscovery of tagged ASGs
Expands on several use cases and cleans up the readme
Adds an error if neither required value is provided, and doesn't create a deployment in this case (currently pod crashloops).

How to review
Please see #3989 and #4077 for the major motivation.
Split into three commits, with 000978f833cc515c50dc69aafd733ed160e98de6 containing the logic changes.
Alternatives considered
Providing a nonsense default ASG or enabling autoscaling by default would also get the pod started, but it will crashloop and the pull-charts-e2e test will fail.
Related
supersedes #4079
closes #4077
closes #2954 (actually fixed by #3248)
closes #3724
supersedes #3989
See also
Pattern of not deploying and printing an error message in NOTES from GC SQL Proxy
Previous discussion about getting this chart to start
Why cluster name is not accessible
The upstream recommended configuration for cluster-autoscaler autodiscovery tags
The documentation for these tags

@prydonius took another stab based on the pattern in GC SQL Proxy. Keeps current behavior, starts no pods if no values provided, chucks an error at the user.

/ok-to-test

/lgtm


Sourcelink filter

We need a filter to not use the source link argument for all assemblies, i.e. ones that we build ourselves (i.e. corefx assemblies) vs. ones that we not build but consume and still need coverage (i.e. System.Private.CoreLib). There are two options:

Rename the existing argument --use-source-link to --source-link-filter which accepts a list of assembly names or all.
Add an additional argument --source-link-filter which accepts a lit of assembly names which is only used if the option --use-source-link is provided.

@tonerdo what's your preference here?

Reopening as this is now pops up again. We want to use the source link information embedded in the assemblies/pdbs and write it into the report but only for non live building assets like System.Private.CoreLib.
cc @MarcoRossignoli

I prefer non breaking changes approach so new filter args works well to me cc: @tonerdo

@ViktorHofer is this feature useful again?If so do you need it for .net tool driver?

It's not very important for us anymore as we are moving assemblies together.

Ok feel free to close!


[YUNIKORN-808] document child template

issue: https://issues.apache.org/jira/browse/YUNIKORN-808

@wilfred-s thanks for all suggestions. I have updated the PR. PTAL.


Modifying .pt files and having Uvicorn reload

Hi Michael,
Great presentation! I was wondering if it is possible to have Uvicorn reload when you make changes to the templates just like it does when you make changes to the .py files?
Thanks in advanced!

Michael,
I am a little disappointed that you offer these courses and encourage people to ask questions. However, you seem to ignore our questions. Any response is better than simply ignoring it, especially for a paid course.

Have you tried: fastapi_chameleon.global_init('templates', auto_reload='True')
It works for me...
The source files from the repository have it actually declared in main.py with a dev_mode flag which is set to true

Great! Does that mean in the bottom of the main.py file, it would look like the following:
if __name__ == '__main__':
    main()
else:
    configure(dev_mode=True)

And at the top somewhere, I would have the line:
fastapi_chameleon.global_init('templates', auto_reload='True')

Hi @mattduffield and @MichaPau
Micha, thanks for pointing out the auto_reload feature there. That's exactly right. It should be just passing that through to the template engine IIRC.
Matt, sorry for the slow reply. I lost track of this issue in the repo. But for some reason it got cleared out of my inbox. Sorry you felt ignored. FWIW, we have almost 40 repos, each with their own traffic and conversations and it's hard to keep on top of all of them all the time. Not to mention my inbox is a complete mess before that.
I think this solves it, but feel free to reopen if not.

BTW, you do NOT want to have this reload feature in production. It makes every requests slower and you want all the caching you can get. Just restart the worker process for that. But in dev, this should do it. So that would mean:
if __name__ == '__main__':
    main()
else:
    configure(dev_mode=False)

Is probably what you want. And pass dev_mode=True somewhere inside main().


Constructor params used without the "this." are marked as unused.

Bug Report

TSLint version: 5.6.0
TypeScript version: 2.3.4
Running TSLint via: ionic scripts

TypeScript code being linted
constructor(
    private modalCtrl: ModalController,
    private navParams: NavParams,
    private changeDetectorRef: ChangeDetectorRef
  ) {
    this.saloon = navParams.data.saloon
    this.services = navParams.data.services
  }

with tslint.json configuration:
{
  "rules": {
    "no-duplicate-variable": true,
    "no-unused-variable": [
      true
    ]
  },
  "rulesDirectory": [
    "node_modules/tslint-eslint-rules/dist/rules"
  ]
}

Actual behavior
Property 'navParams' is declared but never used.
  L20:  private modalCtrl: ModalController,
  L21:  private navParams: NavParams,
  L22:  private saloonService: SaloonService,

Expected behavior
No warnings about the 'navParams' variable that is actually been used.

These are no regular constructor parameters. They're so called parameter properties: https://www.stevefenton.co.uk/2013/04/stop-manually-assigning-typescript-constructor-parameters/
TypeScript automatically creates a property of the same name and type as the parameter. That property is never used. If you don't need the property, just omit the access modifier (private in your case) and everything is fine.
So this is working as intended.
You might argue that you are using the properties in the template, because it seems that's an Angular component. But that's not a valid use of private properties, refer to #3094 for an explanation.

It's better to reopen and fix this. Property marked as private because it's only used in constructor, not in template or elsewhere outside. Apparently false positive.

I thought, it's, a bug, but actually not. Here is solution in duplicate issue:
https://github.com/palantir/tslint/issues/3420


TreeView Activate item shouldn't toggle

Currently the TreeView Active item toggles when clicked multiple times.
I understand Selected Items and 'Click to Expand' toggling but the Active Item shouldn't toggle.
Specifically, I have a screen with a TreeView and a Grid with information, which is populated when
clicking on a node in the tree.
Currently, if the user clicks on a node the grid is populated, if they then click on the same node again
e.g. to expand / collapse the node then the Active item is set to null and the grid information is cleared.
All the applications I've checked so far, e.g. RegEdit / Outlook folders etc. all keep the Active Item enabled rather than toggling it.

Solved via #8661, use SelectionMode.SingleSelection


[WIP] Structured data for videos, audios and background images

Branch still contains commits that could be turned into separate PRs.
REDMINE-16512

Coverage increased (+0.007%) to 99.293% when pulling 40818100d19ff13577727af28743e68c040eb6a2 on tf:structured-data into 1f8c55e786f323b8afc8e52137bc56783dace3b7 on codevise:master.

see #1145


Cannot get Jedis connection; nested exception is redis.clients.jedis.exceptions.JedisConnectionException: Could not get a resource from the pool

Hi,
I am getting a below issue when i am trying to connect with redis,, any idea to resolve this issue.
Redis version 3.2.4
Cannot get Jedis connection; nested exception is redis.clients.jedis.exceptions.JedisConnectionException: Could not get a resource from the pool
BRs, Gowrisankar

Could you please provide an excerpt of your code ?
What it is exactly that you are trying to do ?
Please provide more elaborate details on specific use cases & scenarios

Hi @sheinbergon , Thanks for your response.
We have created a monitoring application that connects to a Redis Server. The application is a spring based application and we are using Spring Cofiguration classes. The details of the redis server are provided by a VCAP_SERVICES environment variable (a user variable that holds the important information like hostname, username, port, etc).
The Spring Configuration class does not throw any exception, but we have noticed that while using the RedisTemplate to perform CRUD operations, we are getting a JedisConnectionException.
I tried using the redis-cli command to check if the redis instance is up, the command is working:
Here is the code snippet below:
Spring Configuration:
@Bean
public RedisConnectionFactory redisConnectionFactory() {
try {
		ServiceInstance redisService = fetchServiceName(ServiceNames.redis);
                 JedisPoolConfig poolConfig = new JedisPoolConfig();
                 poolConfig.setMaxTotal(10);
                 poolConfig.setMaxIdle(5);
                 poolConfig.setMinIdle(1);
                 poolConfig.setTestOnBorrow(true);
                 poolConfig.setTestOnReturn(true);
                 poolConfig.setTestWhileIdle(true);
                 poolConfig.setMaxWaitMillis(10*1000);
                 JedisConnectionFactory cf = new JedisConnectionFactory(poolConfig);
                 cf.setHostName(redisService.getHostname());
                 //to remove
                 System.out.println("redisService.getHostname() > " + redisService.getHostname());
                 cf.setPort(Integer.valueOf(redisService.getPort()));
                 System.out.println("redisService.getPort() > " + redisService.getPort());
                 cf.setPassword(redisService.getPassword());
                 cf.setUsePool(true);
                 return cf;

	} catch (Exception e) {
		/*
		 * Usually a bad practice to catch generic exceptions, but in this
		 * case the ConnectionFactory creation could give an error for
		 * various reasons.
		 */
		LOGGER.error("Redis Factory Service is not available");
		return null;
	}
}

@Bean
public RedisTemplate<String, DataBean> redisTemplate() {
	// return new StringRedisTemplate(redisConnectionFactory());
	if (null == redisConnectionFactory()) {
		LOGGER.error("Redis Template Service is not available");
		return null;
	}
	;
	RedisTemplate<String, DataBean> redisTemplate = new RedisTemplate<String, DataBean>();
	redisTemplate.setConnectionFactory(redisConnectionFactory());
	return redisTemplate;

}

DAO/Repository Code:
public Status connect() {
Status status = null;
RedisConnection redisConnection = null;
try {
// redisTemplate.
System.out.println("redisTemplate.getConnectionFactory() " + redisTemplate.getConnectionFactory());
redisConnection = redisTemplate.getConnectionFactory().getConnection();
if (redisConnection!=null && !redisConnection.isClosed()) {
status = new Status(StatusCode.OK, "", StatusOperation.CONNECT);
} else {
status = new Status(StatusCode.ERROR, NOT_FOUND, StatusOperation.CONNECT);
}
	} catch (Exception exception) {
		System.out.println("Connection Exception > " + exception.getMessage());
		status = new Status(StatusCode.ERROR, exception.getMessage(), StatusOperation.CONNECT);
	} finally{
		if(redisConnection!=null){
			redisConnection.close();
		}
	}
	return status;

}

Redis Version on server - 3.2.4
Maven pom xml dependencies

org.springframework.data
spring-data-redis
${spring-data-redis.version}

org.springframework.data
spring-data-commons
${spring-data-commons.version}

redis.clients
jedis
${redis.client.version}

1.7.4.RELEASE
2.8.1
1.12.4.RELEASE

@gowrisankar22  I think you are calling redisConnectionFactory out of spring application context
You should inject/autowire it to the bean method the way spring java configuration is intended to work
@Bean
public RedisTemplate<String, DataBean> redisTemplate() {
    // return new StringRedisTemplate(redisConnectionFactory());
    if (null == redisConnectionFactory()) {
        LOGGER.error("Redis Template Service is not available");
        return null;
    }

Thanks @sheinbergon , I tried with the solution that you provided, but I am still facing the same exception.
I feel that this is probably a configuration issue at the server side, as on my development windows laptop, I was able to install redis locally and run the application successfully (it is able to connect to localhost on my laptop). I used tomcat as the servlet container for the application.
My server is a docker image running on Ubuntu (14.04), Redis version 3.2.4. Do you know if any others faced this issue with a similar environment setup as mine?

@gowrisankar22  Please paste how your code looks now after the fix , Looking again , you're injecting redisConnectionFactory() out spring context again at
    RedisTemplate<String, DataBean> redisTemplate = new RedisTemplate<String, DataBean>();
    redisTemplate.setConnectionFactory(redisConnectionFactory());
    return redisTemplate;

This is a wrong writing paradigm ...

I  fall into  this error too.
I use
       <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-redis</artifactId>
       </dependency>

jedis verion is 2.8.1 .
some code :
@Value("${redis.host}")
private String host;
@Value("${redis.port}")
private int port;

 @Bean
    public JedisConnectionFactory redisConnectionFactory(JedisPoolConfig config) {
        JedisConnectionFactory factory = new JedisConnectionFactory();
        factory.setHostName(host);
        factory.setPort(port);
        factory.setPoolConfig(config);
        return factory;
    }

And  I get exception
aused by: redis.clients.jedis.exceptions.JedisConnectionException: java.net.ConnectException: Connection refused
	at redis.clients.jedis.Connection.connect(Connection.java:164)
	at redis.clients.jedis.BinaryClient.connect(BinaryClient.java:80)
	at redis.clients.jedis.BinaryJedis.connect(BinaryJedis.java:1677)
	at redis.clients.jedis.JedisFactory.makeObject(JedisFactory.java:87)
	at org.apache.commons.pool2.impl.GenericObjectPool.create(GenericObjectPool.java:868)
	at org.apache.commons.pool2.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:435)
	at org.apache.commons.pool2.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:363)
	at redis.clients.util.Pool.getResource(Pool.java:49)
	... 169 more
Caused by: java.net.ConnectException: Connection refused
	at java.net.PlainSocketImpl.socketConnect(Native Method)
	at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
	at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
	at java.net.Socket.connect(Socket.java:589)
	at redis.clients.jedis.Connection.connect(Connection.java:158)
	... 176 more

if I replace  port with 6379   in
 factory.setPort(port);

everything is OK.
But I debug the App  and  confirm the value of port is 6379  when execute this line .

I briefly had some trouble with the exceptions listed.  In my case, the security settings in the default installation held in the redis.confs are set to protected-mode.  This mode prevents connections from IP addresses other than the loopback (<IP_ADDRESS>).  In addition, the default installation settings also filter the same.  My configuration connects from docker based machines to the physical localhost.  To reach the localhost from the docker machines the IP Address of the localhost (redis-server i.e. 192.168.xxx.xxx) must be specified in docker-based redis-client (172.18.xxx.xxx). There are two redis.conf files, one in the install-dir and another in /etc/redis.  By disabling the protected-mode, an incompatibility between the default client and the unprotected server; there is no password set in the redis-server.  A password needs to be added to the redis.conf in the /etc/redis directory.  Don't forget to either comment the IP bind command opening all addresses or add bind addresses from which connections are required.

@zongwu233  @wellphd  you describe different scenarios which not related to jedis itself in anyway. I've been using jedis in a multitude of installations and it works fine as expected and documented
@marcosnils  I think you can close this one

I have the same problem, my redis is installed in the virtual machine inside.Redis.clients.jedis.exceptions.JedisConnectionException: Could not get a resource from the poolI ask: Where I made a mistake, the configuration file is written in the virtual machine ip?

@rocspread  Redis by default has protected mode on.
I am using redis as a service on a remote windows machine - I had to do following modifications in redis.windows-service.conf files :

comment bind to <IP_ADDRESS> to allow connection from all instances
Set protected mode to no.

I am assuming that you are using dockers - you may may create your own docker image with no protection mode  or refer to detailed accepted answer on stackoverflow :
http://stackoverflow.com/questions/39424559/check-connect-to-redis-running-within-docker-from-javaspring-boot-or-node-js

@sheinbergon https://github.com/xetorthio/jedis/issues/1405#issuecomment-253510403
What is the reason to use exact above code? Because when i did as below, My connections are not getting closed and after some time I am getting redis.clients.jedis.exceptions.JedisConnectionException: Could not get a resource from the pool Exception.
    RedisTemplate<Object, Object> redisTemplate() throws MalformedURLException {
        RedisTemplate<Object, Object> redisTemplate = new RedisTemplate<Object, Object>();
        redisTemplate.setConnectionFactory(jedisConnectionFactory());
        redisTemplate.setEnableTransactionSupport(true);
        return redisTemplate;
    }

@devrajjmn if you are creating redisTemplate() as a spring, it cannot call another method like jedisConnectionFactory  intended to be used as a Spring bean directly because you're breaking Spring DI/IoC flow.

Maybe you did not start the Redis.

Happy to help, is this still open?

@sheinbergon: can you elaborate on this? I have a custom filter using redis (works fine) and on top spring security using redis as a session store, and getting that JedisConnectionException.

@mindhaq  what I meant was  he's calling  @Bean annotated methods directly from within java code whereas he's expecting to have them instantiated as spring beans, thus he should inject/autowire their value type to the method redisTemplate

I bumped into this issue while having similar problems, just to make a correction @sheinbergon calling a method from a an configuration class is totally normal and does not break spring DI. So
@Bean
JedisConnectionFactory cf() {
}

@Bean
RedisTemplate redisTemplate(){
 RedisTemplate<Object, Object> redisTemplate = new RedisTemplate<Object, Object>();
        redisTemplate.setConnectionFactory(cf());
}

It's completely normal, Spring will proxy configuration classes with CGLIB and those methods are cached and any invocation to them will actually respect any bean initialization (post processors and stuff)

I had a Connection refused because my application.yml which contains the spring.redis.host and spring.redis.port properties is not automatically picked up by Jedis like it seems to be when using application.properties, therefore defaulting the host to localhost. Fixed it by manually setting the host/port on the JedisConnectionFactory -
@Value("${spring.redis.host}")
private String host;
@Value("${spring.redis.port}")
private Integer port;

@Bean
public RedisConnectionFactory redisConnectionFactory() {
        JedisConnectionFactory factory = new JedisConnectionFactory();
        factory.setHostName(host);
        factory.setPort(port);
        return factory;
}

Not sure why properties in application.yml aren't picked up like application.properties. Anyone know?
Also fyi, as of writing, the official redis docker image has protected-mode=no so no CONFIG SET required. Can't speak for other platforms though.

You're using an extremely old Jedis version which we don't support
 <dependency>
  		<groupId>org.springframework.boot</groupId>
  		<artifactId>spring-boot-starter-data-redis</artifactId>
  		<version>1.5.13.RELEASE</version>
  	</dependency>

I will not make a mistake on eclipse, and I am wrong on the Idea tool. Why?

@rocspread Redis by default has protected mode on.
I am using redis as a service on a remote windows machine - I had to do following modifications in redis.windows-service.conf files :
1. comment bind to <IP_ADDRESS> to allow connection from all instances

2. Set protected mode to no.

I am assuming that you are using dockers - you may may create your own docker image with no protection mode or refer to detailed accepted answer on stackoverflow :
http://stackoverflow.com/questions/39424559/check-connect-to-redis-running-within-docker-from-javaspring-boot-or-node-js

Hi!
I'm also faced with the same issue  - I try to connect from docker container (sink connector) to redis run on WSL (windows subsystem linux)
But the following instructions above doesn't help me.
Do u have any other suggestions why I can't connect
Maybe I need to add some network additional configurations for docker container?


Cleos unable to parse responses which have been filtered by patroneos

I am running a full node with patroneos and haproxy acting as a filter for rpc data.
I get the following errors when using haproxy -> patroneosd -> nodeos
$ cleos -u https://testapi.eosdac.io:443 system listproducers
2882332ms thread-0   main.cpp:2584                 main                 ] Failed with error: Assert Exception (10)
response_content_length >= 0: Invalid content-length response

If I change the haproxy config to haproxy -> nodeos then it succeeds
cleos -u https://testapi.eosdac.io:443 system listproducers
Producer      Producer key                                           Url                                                         Scaled votes
eosriobrazil  EOS8ga2nCH1aXZxtnssqB75iGhtY599xDZh5LEvuDEgN7xffBW4rR  https://eosrio.io                                           0.1345 ........

Hi @michaeljyeates,
Thanks for the detailed report. This has been resolved in EOSIO/patroneos#33.


Release 0.17.2

Scheduled release date: June 12, 2024
This is a tracker to aggregate issues that should be part of 0.17.2.
Please add specific Issues or PRs prefixed with the "Depends on" keyword
(and remember that PRs need to be backported to the release-0.17 branch).
Make sure to follow the manual steps listed below before starting the release process.
Manual Steps
For detailed information regarding each step, please check: https://submariner.io/development/building-testing/ci-maintenance/

[ ] Custom GitHub Actions
[ ] GitHub Actions
[ ] Kubernetes Versions
[ ] Shipyard Linting Image Software

Depends on https://github.com/submariner-io/submariner-operator/pull/3107 (need backport)
Depends on https://github.com/submariner-io/subctl/issues/1149

Released: https://github.com/submariner-io/releases/releases/tag/v0.17.2


Showing a reduced FoV for RS 435

Is there a way to programmatically using Python to control (or reduce) FoV of the current image shown from the video feed? I want to show a customized view but I am not sure how I can do this programmatically. Currently the FoV is very wide and shows way more than expected.
https://github.com/IntelRealSense/realsense-ros/issues/1692#issuecomment-778796892
I also saw this but not clear how to do it for RGB feed? https://github.com/IntelRealSense/librealsense/issues/11140#issuecomment-1327606972

Before opening a new issue, we wanted to provide you with some useful suggestions (Click "Preview" above for a better view):

Consider checking out SDK examples.
Have you looked in our documentations?
Is you question a frequently asked one?
Try searching our GitHub Issues (open and closed) for a similar issue.

All users are welcomed to report bugs, ask questions, suggest or request enhancements and generally feel free to open new issue, even if they haven't followed any of the suggestions above :)

Required Info

Camera Model
{ R200 / F200 / SR300 / ZR300 / D400 }

Firmware Version
(Open RealSense Viewer --> Click info)

Operating System & Version
{Win (8.1/10) / Linux (Ubuntu 14/16/17) / MacOS

Kernel Version (Linux Only)
(e.g. 4.14.13)

Platform
PC/Raspberry Pi/ NVIDIA Jetson / etc..

SDK Version
{ legacy / 2.. }

Language
{C/C#/labview/nodejs/opencv/pcl/python/unity }

Segment
{Robot/Smartphone/VR/AR/others }

Issue Description
<Describe your issue / question / feature request / etc..>

Hi @monajalal  Reducing the width of the RGB view by lowering its resolution to 640x480 may be the easiest solution.
1280x720

640x480

Another possible approach would be to use YOLO object detection to generate bounding boxes on the RGB image and then exclude from the image the contents of all the boxes except the one containing the area of the image that you want to keep.
https://docs.ultralytics.com/guides/object-cropping/

@MartyG-RealSense I am still working on this. I will close the issue when I get a proper understanding on my end and some sort of resolution. Thanks a lot for your time and help explaining. From my limited search, you cannot change the FoV of a camera, right?  My goal is not to lose image quality (like what happens when you crop) but to just narrow the field of view and look more to the straight ahead of you rather than looking at such a wide field of view.

If you are only using this project with your own camera then perhaps you could place a small black piece of card over the RGB sensor with a hole in it on the outside of the camera and make the hole a little smaller than the diameter of the RGB sensor lens.  It should then obscure the edges of the RGB sensor's field of view so that it can only see the amount of the scene that the diameter of the card's hole allows.
Yes, you can define your own intrinsics with Python code.  An example of this is at https://github.com/IntelRealSense/librealsense/issues/4061


footer link: plugin library

currently, the footer link to "Plugin Library" (under the "Docs & Resources" section") goes to https://build.phonegap.com/plugins. I think it should be pointing to http://plugins.cordova.io

Agreed and nice catch! Updated.

Looks like this change was reverted

Yep, it looks like @hollyschinsky's merge (4144e8d6d645853963d8d9790ad798cc478a9c7a) reverted it.
I've cherry-picked my commit again.


Swiping in TabbedPage does not work on Android

On Android's TabbedPage, users can use swipe gestures to navigate between the tabs by default. This seems to collide with the card's swipe gestures.

Suggested workaround for now is to disable page swiping on Android using:
public partial class TabbedDemoPage : Xamarin.Forms.TabbedPage
{
    public TabbedDemoPage()
    {
            InitializeComponent();
            this.On<Xamarin.Forms.PlatformConfiguration.Android>().SetIsSwipePagingEnabled(false);

            // ...
     }
}


[keras/src/{export/export_lib.py,models/model.py,utils/file_utils_test.py}] os.path.join

It's annoying how many Kaggle, GitHub, and random Jupyter Notebooks don't handle paths correctly. Keras basically does, but this PR adds it to remaining locations including docstrings.

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

Project coverage is 57.58%. Comparing base (829c9aa) to head (0b5998e).

:exclamation:  There is a different number of reports uploaded between BASE (829c9aa) and HEAD (0b5998e). Click for more details.
HEAD has 6 uploads less than BASE

Flag
BASE (829c9aa)
HEAD (0b5998e)

keras
4
1

keras-torch
1
0

keras-tensorflow
1
0

keras-jax
1
0

Additional details and impacted files
@@             Coverage Diff             @@
##           master   #20157       +/-   ##
===========================================
- Coverage   79.35%   57.58%   -21.77%
===========================================
  Files         501      501
  Lines       47311    47311
  Branches     8689     8689
===========================================
- Hits        37542    27244    -10298
- Misses       8014    18391    +10377
+ Partials     1755     1676       -79

Flag
Coverage Δ

keras
57.58% <ø> (-21.62%)
:arrow_down:

keras-jax
?

keras-numpy
57.58% <ø> (+<0.01%)
:arrow_up:

keras-tensorflow
?

keras-torch
?

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

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

Ok for the change in unit tests -- but the code examples would become less readable after the change. The path string is intended to always be changed by the user if they copy the code (the path it refers is completely made up) so there's no harm in having slashes in it.

@fchollet No worries, removed the change from the docstring.


Move PaaS environment config out of the Makefile

What
This PR moves our make dev/make stg-lon/etc environment variables from the Makefile into a separate YAML file. It isn't a long-term solution, but it makes it easy to go on and experiment with not using a Makefile at all (or at least revising how we use it.)
The motivation for doing this now is that we plan to merge paas-cf, paas-bootstrap and paas-release-ci. They have Make targets with the same name and some rethinking is probably needed. Moving our config out of the Makefiles allows us to try and find a neater solution.

How to review

Code review;
See if the make dev/etc Make targets still work fine for you;
Check that all the env variables removed from the Makefile are in the YAML.

Who can review
Not @46bit.

I really like this idea, and it's cool that we can make this more maintainable without changing the user experience we're all used to (e.g. things like the insane make dev deployer-concourse bootstrap command).
I'd be interested in discussing where we think the end game for this is though. I think there's probably two parts to it:

how do the environments differ from each other? (e.g. prod shouldn't run acceptance tests, staging should run load tests)
how do we tell our scripts what their targets should be interactively?

For the first one I agree we should definitely have a configuration file that's much more readable than the mess of environment variables set in make targets that we've got now.
For interactive use I'd like to get away from using environment variables as the primary way of modifying settings, preferring flags. So something like:
gds paas concourse set-pipelines --aws-account dev --deploy-env towers
gds paas credhub --aws-account prod --region london

perhaps these could fall back to env vars.
👍  from me on this though - a good step in the right direction.

@richardTowers I’m thrilled you like this step. Given free reign for long enough I’d do away with the Makefile, remove lots of the environment variables, and write a small CLI in an expressive language (Ruby.)
I think using environment variables is the right thing so long as we’re triggering Shell scripts run by Concourse (very happy to be proven wrong!) But we don’t need as many degrees of freedom as are in the YAML file right now.
On Pay I really liked having environment names which described the AWS account and the particular deployment. Right now we have MAKEFILE_ENV_TARGET doing some of the disambiguation that env names such as dev-miki would.
My dream is one YAML per environment configuring like this YAML does, rather than passing lots of flags by hand. But I’m only owning getting the core PaaS repos merged—where we go from there is up to all of us :)

I've marked this as Work In Progress again. Merging paas-cf, paas-release-ci and paas-bootstrap meant so much examining and revising the Makefiles that I've given up and am writing a PaaS CLI within https://github.com/alphagov/gds-cli.
The YAML file in this PR is a simpler form of what will power the CLI. I'm massively happy to gotten the YAML file compatible with the existing paas-cf Makefile, but there's not much point shipping this. We've postponed merging the repos until the start of January, by which time the CLI will be ready to replace the Makefiles.


Display standings ordered

"most wins, tied for wins look at gd, tied for both look at gf"

done 9e3307f2742105efb43c90c6d8d5aa240a15282b


Update ways of configuring menu attributes

Prevent the attributes set through menuAttributes from overriding any of the attributes set internally:

id and role are dropped to limit risks to accessibility
className and class are appended to the class attribute of the menu so it keeps the classes computed by the component

In addition to the update to menuAttributes, the PR also adds a menuClasses. Even if it doubles with with menuAttributes.(class|className), it provides a API with a name consistent with inputClasses and hintClasses from #649 .

@colinrotherham Things should be all tidy. The first force-push has the interesting changes, the second being just the tidy up of a stray comma that standard wasn't happy with 😬


[SILGen] Make sure profile increments gets assigned the correct scope.

rdar://problem/46686369

Replace this paragraph with a description of your changes and rationale. Provide links to external references/discussions if appropriate.

Resolves SR-NNNN.

@swift-ci please test

Turns out that order matters (TM), so I need to think about something else.

Build failed
Swift Test OS X Platform
Git Sha - a6db5e9aae11779d24971209f1faef6174ca56a3

Yes, I think the increment must occur before the statement body is emitted, otherwise control flow changes within the body might result in missed increments.
Would applying a line 0 location to the profile counter increment address the verifier failure?


Allow extensions to specify the schema for arguments to contributed commands

Creating a feature request based on feedback from @aeschli in the discussion here:
https://github.com/microsoft/vscode-discussions/discussions/541#discussioncomment-5451218
Some built-in commands such as workbench.action.tasks.runTask provide a schema for their args, which enables auto-completion when creating a keybinding to invoke that command.
https://github.com/microsoft/vscode/blob/0d5e948d863153807cfe07ecd20dc10374eea6d2/src/vs/workbench/contrib/tasks/browser/abstractTaskService.ts#L421-L446
However, extensions do not have a convenient way to do the same. One current workaround is to contribute an additional schema, but this is not terribly convenient.
Additional points worth considering:

Auto-completion for built-in commands currently does not work in some locations. For example, there is no auto-completion when invoking a command with arguments with a command input variable in tasks.json or launch.json. This likely applies to other places as well, but I'm not sure of all the possible locations a command can be invoked and therefore haven't been able to test them.
Is it possible to infer the schema from the function that is passed into registerCommand or registerTextEditorCommand? I don't know if typescript supports introspection, but that could be a nice way to get basic auto-completion for minimal effort on the part of extension authors.

package.json
"contributes": {
  "jsonValidation": [
    {
      "fileMatch": "%APP_SETTINGS_HOME%/keybindings.json",
      "url": "./src/commands.schema.jsonc"
    },
    {
      "fileMatch": "%APP_SETTINGS_HOME%/profiles/*/keybindings.json",
      "url": "./src/commands.schema.jsonc"
    }
  ],
}

custom.schema.json
{
  "$schema": "http://json-schema.org/draft-07/schema",
  "type": "array",
  "items": {
    "type": "object",
    "if": {
      "required": [ "command" ],
      "properties": { "command": { "const": "akbyrd.task.runWithArgs" } }
    },
    "then": {
      "required": [ "args" ],
      "properties": {
        "args": {
          "type": [ "string", "object" ]
        }
      },
      "if": {
        "properties": { "args": { "type": "object" } }
      },
      "then": {
        "properties": {
          "args": {
            "required": [ "task" ],
            "properties": {
              "task": {
                "description": "The standard arguments to workbench.action.tasks.runTask",
                "type": [ "string", "object" ]
              },
              "taskArgs": {
                "description": "An object filled task arguments. Keys are argument names and values are argument values.",
                "type": "object",
                "patternProperties": {
                  ".*": { "not": { "type": [ "object", "array" ] } }
                }
              }
            },
            "defaultSnippets": [
              { "bodyText": "{ \"task\": \"${1:taskName}\", \"taskArgs\": { \"${4:argName}\": \"${5:argValue}\" } }" }
            ],
            "if": {
              "properties": { "task": { "type": "object"} }
            },
            "then": {
              "properties": {
                "task": {
                  "properties": {
                    "task": { "type": "string" },
                    "type": { "type": "string" }
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}

Related question on Stack Overflow: How to provide schema for command args in a vscode extension


createDefaultDisconnectedServer uses hardcoded sourceFiles, pipelinePatchFiles and outputPath

Description

Right now createDefaultDisconnectedServer is not passing important options like the sourceFiles option to the ManifestManager constructor.
Instead it is using hard coded relative file paths which are always resolved relative to process.cwd().
From @sitecore-jss/sitecore-jss-dev-tools/dist/manifest-manager.js line 44, 45
'./sitecore/definitions/**/*.sitecore.js',
'./sitecore/definitions/**/*.sitecore.ts',

This causes serious problems if the process.cwd() can't be set to the folder where the sitecore folder or if the sitecore folder is placed inside a folder.
Possible Fix

Version @sitecore-jss/sitecore-jss-dev-tools - 9.0.6
Imho there are two good options which would improve the current situation.
use rootPath
Right now the @sitecore-jss/sitecore-jss-dev-tools/dist/manifest-manager.js line 44, 45
is using relative paths although it might use the rootPath variable instead.
       [
            './sitecore/definitions/**/*.sitecore.js',
            './sitecore/definitions/**/*.sitecore.ts',
        ]

A quite easy way would be to use the rootPath instead of the ..
However this would require that rootPath would really be the root of the project (see #80).
Another option would be to add a variable called sitecore path which would be set to ./sitecore/ by default.
E.g.:
[
  path.resolve(rootPath, 'sitecore/definitions/**/*.sitecore.js'),
  path.resolve(rootPath, 'sitecore/definitions/**/*.sitecore.ts'),
]

or maybe even better
[
  path.resolve(sitecorePath, 'definitions/**/*.sitecore.js'),
  path.resolve(sitecorePath, 'definitions/**/*.sitecore.ts'),
]

Allow to configure all options
Another way which might be implemented in combination with the proposed rootPath change would be to allow passing all values from the disconnected-server to the manifest manager
@sitecore-jss/sitecore-jss-dev-tools/dist/disconnected-server/create-default-disconnected-server.js line 24+
var manifestManager = new manifest_manager_1.ManifestManager({
        appName: options.appName,
        rootPath: options.appRoot,
        watchOnlySourceFiles: options.watchPaths,
        requireArg: options.requireArg,
    });

could be changed to:
var manifestManager = new manifest_manager_1.ManifestManager(Object.assign({
        appName: options.appName,
        rootPath: options.appRoot,
        watchOnlySourceFiles: options.watchPaths,
        requireArg: options.requireArg,
    }, options.manifestManagerOptions));

That way the manifestManagerOptions would be an optional parameter which could carry every current and future parameter to the manifestManager.
Your Environment

JSS Version: 9.0.6

createDefaultDisconnectedServer is intended to be a boilerplate for relatively simple scenarios to reduce new developer confusion. The intent is that if you need to deeply customize app conventions, that you'd take the contents of createDefaultDisconnectedServer() and place it in your app to customize away. This is currently harder than it needs to be because only the compiled function is on npm but post-release when the npm packages are open source the source will be available to copy.

Basically all I tried was to add a monorepository structure for our project which required a different script working directory was not possible.

Okay thank you I wasn’t aware that the disconnectedServer was just a small helper.
JSS already consists out of a lot of code and conventions.
For me who did not write the JSS library it is hard to find out which parts can be removed without breaking either the connected, disconnected or integrated mode.
And it is even harder to guess the developers intend e.g. for allowing to configure some parts and forbid to configure other parts.
My greatest concern of copying over JSS library code into my codebase is that I don’t know what change would cause cause upgrade problems in future.
Do you plan a boilerplate with a custom disconnected server?

Documented in #93


exercise: leaky

A few things maybe to explain:

that you'll still need to put input into program when running valgrind

that to get more detailed report, want to use --leak-check=full

there's also one tricky part about this, which is that if you try to free(peep) before freeing the char* in peep (firstName and lastName), then you get errors of "invalid read".
I imagine most people will be confused by this and not understand why that is (I don't fully understand it, but I have an idea)


Removing columns doesn't remove header

What OS?

Windows

Version?

vs code plugin

Description
When trying to remove a column the data is removed but the header is not, causing data to move to the wrong header and the column is not removed
Expected behavior
Deleting a column deletes data and the header
Steps to reproduce
Remove a column by clicking the icon in the header or right-click and remove column

I can reproduce this... must have sneaked in with some of the latest updates. I'll look into this

Should be fixed now...
However, there is still an issue with undo/redo and reordering columns (this is an issue from handsontable, see #71)


Docs: readme updates + logo

Summary
Docs: readme updates + logo

Removing get for now, because it is not intuitive. We will think about it :)


AbstractPage create method change of signature breaks custom pages

With the latest release the AbstractPage create method went from
def create(cls: Type[C], items: Sequence[T], total: Optional[int], params: AbstractParams) -> C:
to
def create(cls: Type[C], items: Sequence[T], params: AbstractParams, **kwargs: Any,) -> C:
This breaks some pagination calls, I understand adding the kwargs, but the removal of the total parameter looks like an error to me.
If it is not, how should the custom pages be now created?

Hi @javivdm,
New version 0.11.1 has been released. It has a deprecation warning regarding the old signature.

P.S. You shouldn't directly create instance of Page it should be done using create_page function that is called by paginate functions:
create_page(items, total, params, **(additional_data or {}))

The deprecation warning is triggered if you simply follow the "Custom Page" section on the docs.
Is this a mistake? It seems to trigger if you add any custom parameters.


auto import build-in node module with protocol prefix

Currently vscode will auto import build-in node module without node: prefix unless there is already another import with prefix.
Example:
No imports or one or more imports without node: prefix:

One or more import with node: prefix:

I would like to have a setting to force node: prefix.
Related:
https://github.com/eslint-community/eslint-plugin-n/issues/77
https://github.com/import-js/eslint-plugin-import/issues/2717
Workarounds:

Use eslint rule from eslint-plugin-unicorn plugin: https://github.com/sindresorhus/eslint-plugin-unicorn/blob/main/docs/rules/prefer-node-protocol.md
Use https://gist.github.com/alex-kinokon/f8f373e1a6bb01aa654d9085f2cff834 with https://www.npmjs.com/package/eslint-plugin-local-rules

Oops, meant to post it under miscrosoft/vscode
https://github.com/microsoft/vscode/issues/188306


Use length code when parsing rr recs in token.c

To fix CJWT decode error.
Should be using length code instead of strlen.

Codecov Report

Merging #186 into master will decrease coverage by 0.19%.
The diff coverage is 100%.

@@            Coverage Diff            @@
##           master     #186     +/-   ##
=========================================
- Coverage   88.27%   88.07%   -0.2%
=========================================
  Files          40       40
  Lines        4357     4362      +5
  Branches      354      354
=========================================
- Hits         3846     3842      -4
- Misses        184      193      +9
  Partials      327      327

Impacted Files
Coverage Δ

tests/test_token.c
94.57% <100%> (+0.06%)
:arrow_up:

src/token.c
63.77% <100%> (+0.14%)
:arrow_up:

tests/test_client_list.c
85% <0%> (-6.43%)
:arrow_down:

Continue to review full report at Codecov.

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


Add code in submariner-addon to use cloud-prepare to deploy submariner

The addon already uses cloud-prepare to deploy Submariner. Could you clarify what this issue covers?

My mistake, I meant to create relevant issue for Azure from the Epic #1532
Here's the relevant issue for Azure:
https://github.com/submariner-io/submariner-operator/issues/1764


GCP create-infrastructure fails

The create-infastructure task fails just after generating the certs with the following errors:
Error loading state: Failed to check for magic bytes: EOF
error running command: no matches found for pattern: create-infrastructure-output/*.tfstate

This has been updated. Please remove the empty file that was placed in your S3 bucket under bucket/terraform.tfstate and try again with the latest code.


Script: Support RPM package for Tizen target

PR Description
Fixes issue #1692.
This PR is to support a Tizen-based RPM package generation in order that
developers can easily compile & install Caffe2 from source with "gbs build" command
in Linux-based Tizen software platform. This PR is done as a next activity after merging
build script for Tizen target (PR #877).

https://source.tizen.org/documentation/reference/git-build-system

Changes proposed in this PR:

Added RPM spec file for Tizen platform.
Added gbs configuration file (e.g., tizen/4.0/.gbs.conf)
Added caffe2-eigen3-path.patch to handle correctly Eigen3 path of Tizen

Self assessment:

GBS build: Checked and Passed
OBS build: Checked and Passed

How to evaluate:
ubuntu16.04$ git clone https://github.com/caffe2/caffe2.git
ubuntu16.04$ ln -s ./script/tizen/4.0/packaging ./packaging
ubuntu16.04$ time gbs build -A {arch_name}  --clean --include-all

In case of x86_64:
ubuntu16.04$ time gbs build -A x86_64  --clean --include-all
caffe2-0.7.0-18.1.src.rpm
caffe2-0.7.0-18.1.x86_64.rpm
caffe2-devel-0.7.0-18.1.x86_64.rpm
caffe2-python-0.7.0-18.1.x86_64.rpm

In case of i586:
ubuntu16.04$ time gbs build -A i586    --clean --include-all
caffe2-0.7.0-18.1.i686.rpm
caffe2-0.7.0-18.1.src.rpm
caffe2-devel-0.7.0-18.1.i686.rpm
caffe2-python-0.7.0-18.1.i686.rpm

In case of armv7l:
ubuntu16.04$ time gbs build -A armv7l  --clean --include-all
caffe2-0.7.0-18.1.armv7l.rpm
caffe2-0.7.0-18.1.src.rpm
caffe2-devel-0.7.0-18.1.armv7l.rpm
caffe2-python-0.7.0-18.1.armv7l.rpm

In case of aarch64:
ubuntu16.04$ time gbs build -A aarch64 --clean --include-all
caffe2-0.7.0-18.1.aarch64.rpm
caffe2-0.7.0-18.1.src.rpm
caffe2-devel-0.7.0-18.1.aarch64.rpm
caffe2-python-0.7.0-18.1.aarch64.rpm

Simple test with python interface after building Caffe2:
Let's assume the path of Caffe2 git repository is /work2/git-repository/caffe2/.

Add the library path to LD_LIBRARY_PATH. Then, add the install directory to PYTHONPATH to be able to use Caffe2 from Python:

$ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/work2/git-repository/caffe2/build/lib
$ export PYTHONPATH=$PYTHONPATH:/work2/git-repository/caffe2/build/

Evaluate import core command by default

$ python -c 'from caffe2.python import core' 2>/dev/null && echo "Success" || echo "Failure"
Success

Use Caffe2 in your real target (or Tizen/QEMU) and enjoy:
Python files are located in ./caffe2/python/ folder.

$ python -m caffe2.python.operator_test.relu_op_test
 . . .  Omission . . .
  Trying example: test_relu(self=<__main__.TestRelu testMethod=test_relu>,
  X=array([-0.80482125], dtype=float32),
  gc=<caffe2.proto.caffe2_pb2.DeviceOption at 0x7f403bdc55f0>,
  dc=[<caffe2.proto.caffe2_pb2.DeviceOption at 0x7f403bdc55f0>], engine=u'')
  Trying example: test_relu(self=<__main__.TestRelu testMethod=test_relu>,
  X=array([ 0.], dtype=float32), gc=<caffe2.proto.caffe2_pb2.DeviceOption
  at 0x7f403bdc55f0>, dc=[<caffe2.proto.caffe2_pb2.DeviceOption
  at 0x7f403bdc55f0>], engine=u'')
  ----------------------------------------------------------------------
  Ran 1 test in 0.049s

  OK

Signed-off-by: Geunsik Lim<EMAIL_ADDRESS>Cc: Yangqing<EMAIL_ADDRESS>

@Yangqing, Could you review this PR?

Aging test is successfully completed as a self assessment. This PR is ready to be merged into mainline.

@Yangqing Could you review this PR? If you cannot review this PR, Could you designate appropriate someone?

Thank you for your contribution! PyTorch and Caffe2 are now officially merged with the PyTorch 1.0 preview release. Please submit on https://github.com/pytorch/pytorch if this is still an issue over there.


Update 05-dataflows-gen2.md

Module: 00
Lab/Demo: 5
Fixes # .
Changes proposed in this pull request:

fix one word

Thanks @mycaule


Badge colors

The following changes since commit 3f71b63b80860bf25316ca0f453265d35503a537:
Merge pull request #104 from Code4HR/candidate-responses (2016-04-14 08:13:07 -0400)
are available in the git repository at:
https://github.com/ryayak1460/okcandidate.git badge-colors
for you to fetch changes up to 0c5a39060e3345e1d20e5b17379b1acba01d9445:
Include Docker and question updates (2016-04-14 11:27:00 -0400)

Ryan Y (2):
Change rating colour based on match percentage
Include Docker and question updates
.../js/components/atoms/CandidateMatchRating.jsx   |  15 ++-
.../components/atoms/CandidateMatchRatingSpec.js   | 111 +++++++++++++++++++++
2 files changed, 125 insertions(+), 1 deletion(-)
create mode 100644 test/frontend/components/atoms/CandidateMatchRatingSpec.js

Affects #106.


ARTEMIS-2317 Avoid long TTSP caused by Page::read using mmap read

It implements Page::read using chunked reading of SequentialFile
instead of using memory mapped files causing long time to safepoint
issues.

@clebertsuconic Please don't merge it yet:I need reviews and some help from you and @wy96f and @qihongxu :+1

so, in summary, I'm not sure what is the TTSP fix, and what is the logic change you made in the mix here.

Can  you simplify the change somehow it only fix the TTSP. If you still feel strong about the loop logic change, can you make it a separate commit?
This way would be better to eventually bisect eventual issues.

Can you simplify the change somehow it only fix the TTSP. If you still feel strong about the loop logic change, can you make it a separate commit?

Sadly the loop logic using FileChanne::readl is the solution of the issue: so I don't think it can be splitted, but I will cover as much as I can in order to make it robust as it was before.
Re the logic I will make it more clear with comments, in order to be future proof :+1:

The CI has shown good results: is basically on par of master :+1:
Now my concern is just to measure/improve performance.
The current concerns I've are:

reducing the number of new ChannelBufferWrapper (but maybe escape analysis won't allocate them)
find the correct read chunk size to maximize disk

I remember  @wy96f and @qihongxu were interested into paging performance, so maybe can take a look

@franz1981 I tested this, and this is a huge improvement over paging.
I tested a variation of 4k, 100K, 2M on the buffer and did not make a difference, I was always able to receive 500K messages in 42 seconds on my laptop, each message sizing 12K.
Using the current version this was always taking more time than I could afford on waiting.. I did not even bother about measuring it.

I haven't had chance to test it, but based on @clebertsuconic's results posted here, thats really good, great stuff @franz1981

@franz1981 I tested this, and this is a huge improvement over paging.
I tested a variation of 4k, 100K, 2M on the buffer and did not make a difference, I was always able to receive 500K messages in 42 seconds on my laptop, each message sizing 12K.
Using the current version this was always taking more time than I could afford on waiting.. I did not even bother about measuring it.

What did you mean buffer size? And what was the page size in your test?

@franz1981 Thanks for contribution to page performance issues!
I have deployed a test as soon as I saw this thread.
Our configuration:
4C/8G/500G SSD single broker as usual
200 threads of consumers to squeeze out all potentials
Most options in broker.xml remained default except for changing journal-type to MAPPED
Then we tested its performance in two versions (one with this patch and the other not)
Producers and consumers ran separately with each message sizing 4k. TPS is as below:
| Producer | Consumer
-- | -- | --
Without patch | 13k | 15k
With patch | 13k | 14.8k
It seemed that consumer tps in two versions were very close.
We also tried raising page size from 10M to 100M, raising message size form 4k to 12k, etc. But none of these made a significant difference in tps between two versions.
Flame graph for version with patch is as below:

@franz1981 Would you please give some hints on the differences between this and @clebertsuconic 's result? Is there any configuration that we missed in tests?

@qihongxu I'm getting similar results to yours :)
This pr together with   https://github.com/apache/activemq-artemis/pull/2646 should make numbers on par with the original version, but with an important difference: smaller time to safe point.
If you enable -XX:+PrintGCApplicationStoppedTime, with the patched version we won't have long pauses anymore they could lead the broker to became unresponsive.
It should happen with slow disk and/or OS page cache that won't contain the requested OS page (ie causing major page fault).
I would say a very stressing scenario, not easy to test..
If you have any means to bench it in a similar scenario (with https://github.com/apache/activemq-artemis/pull/2646) would be awesome!
Many thanks for taking a look at it!

@qihongxu just curious: which value are you configured for page-max-concurrent-io?

@franz1981 Thanks for your reply! I have updated test results as we changed message size from 4k to 12k and 50k (keep msg_size between os_pagesize and largeMsg_threshold). It started to show a 10-20% differences in tps between two versions' consumer.
| Msg size 4k | Msg size 12k | Msg size 50k
-- | -- | -- | --
Without patch | 15.0k | 7.0k | 1.7k
With patch | 14.5k | 8.7k | 2.0k

@qihongxu just curious: which value have you configured for page-max-concurrent-io?

We just let it remain default to 5.

@qihongxu that's super interesting :O
TBH I was expecting the patched version to be on par with very small messages instead, because the most of the cost (just guessing eh) was on encoding side, while with big buffers I was expecting that the zero-copy approach of mmap was unbeatable: it would be interesting to check where is the cost of the non-patched version with such big messages too.
I suppose that small messages are the common case so, do you have some test result with smaller messages (and including the GC optimizations on https://github.com/apache/activemq-artemis/pull/2646)?
Re

We just let it remain default to 5.

Why not making it totally unbounded and let the SSD (iotop -o) tell you if I/O is maximized?
If GC will occur, I'm expecting that Artemis PageCache will be cleaned up of several cached pages and limiting it just to 5 concurrent requests means could be quite limiting with very fast ssd and many cores servers...
https://github.com/apache/activemq-artemis/pull/2645 could be a game changes with many concurrent page read requests :)

@clebertsuconic @wy96f @qihongxu
I'm aware that this patch introduce a (small) perf regression in some cases (due to the added unecessary copy), but I don't know ATM any other ways to avoid the long TTSP issues: a "simple" (bust costy in term of dev/test time) way to improve the situation would be to expose a JNA mlock call to allow at least that while reading a OS page the OS will swap out randomly OS pages due to other threads interacting with the OS page cache eg the MAPPED journal, that tends to reuse the same files, if compaction is working as expected.
It won't solve the TTSP issue, but it would improve the situation on busy servers, leaving just major/minor page faults to be the other causes for long TTSP.

Msg size 4k	Msg size 12k	Msg size 50k
Without patch	15.0k	7.0k	1.7k
With patch	14.5k	8.7k	2.0k

Are you sure there is a regression here?
on these small amounts on my experience, if you repeat the same test within itself you may get one run faster or shorter depending on many factors (such as Hotspot, OS changing priorities... etc).

I agree. It looks like perf is on par to me. That said performance never should be at the cost of correctness or stability. As such even if a slight drop. For me this is a good pr as its ensuring stability.


Channel Button & CSV Button Styling

Download CSV buttong

Removed :focus styling

Short description
TODO

[ ] Have tests been written for the new code?
[ ] Has documentation been written/updated?
[ ] New dependencies (if any) added to requirements file
[ ] Add an entry to CHANGELOG.rst
[ ] Add yourself it AUTHORS.rst if you don't appear there

Reviewer guidance
If you PR has a significant size, give the reviewer some helpful remarks
Issues addressed
List the issues solved or partly solved by the PR
Documentation
If the PR has documentation, link the file here (either .rst in your repo or if built on Read The Docs)
Screenshots (if appropriate)
They're nice. :)

I added the changes to my PR to avoid merge issues.


QRCode Information causes overflow on mobile screens

The example page for QRCodes causes the body element to overflow on mobile screens.
Suggestions:
Assuming the ui library is bootstrap the qrcode area could be wrapped in responsive grid classes
Docs:
https://getbootstrap.com/docs/5.0/layout/grid/#stacked-to-horizontal
I could also create a PR to fix this.
Are there any contribution guidelines?
Attached video demonstrating the issue:
https://box.fu-berlin.de/s/ABtJQbMdyjWRFa4

Thanks for the information!
I had indeed not considered this.
However, I feel there is no better solution:
Changing the layout (putting the QR code above the text block on its right) is out of the question: The idea of the page is to show what the QR codes look like as they will be pasted at each seat.
So the only option would be to make the thing smaller, but then it would become illegible. (Also, the user can do this themselves at any time.)
I suggest we leave that as it is.
There is also a technical problem, because the current layout is realized as a table, because all other solutions I have tried created problems with the page-breaking during the PDF conversion.

Created a PR to change the layout from tables to grid #3


bug: Documentation for useContract is incorrect.

Is there an existing issue for this?

[X] I have searched the existing issues

Package Version
0.12.8
Current Behavior
The documentation for useContract() is no longer correct for the latest version of wagmi:
https://0.3.x.wagmi.sh/docs/hooks/useContract
The attributes are considered as "addressOrName" and "contractInterface", but in the latest versions they are "address" and "abi". If someone uses the latest version of wagmi, but looks at the documentation, useContract() will return null and it will confuse people.
Expected Behavior
I would expect the wagmi documentation to be properly versioned, or make it clear which version each documentation supports.
Steps To Reproduce
Try to use any of the code samples in the documentation as a basis for useContract() using the latest public version of wagmi.
Link to Minimal Reproducible Example (StackBlitz, CodeSandbox, GitHub repo etc.)
unneeded
Anything else?
All you need to do is update the documentation.

useContract no longer exists in v1 of wagmi. You should use getContract instead. (useContract was removed because it doesn't have any hook behavior.)


Make graphviz availability check at runtime

Summary
Previously the graphivz availablity check was performed at import time.
This meant that everytime anyone imported anything from qiskit.* we'd be
shelling out to try and run 'dot -V' to see if python could find
graphviz in order to run the passmanager drawer. This was based on the
model we used for matplotlib which also does it at import time. However,
unlike matplotlib this isn't a simple python import path check shelling
out and running another program takes a non-negligble amount of time to
any import of qiskit. [1] We shouldn't force this check to run all the
time if graphviz is only needed when running the pass manager
visualizer. This commit address this by switching the graphviz check to
be the first operation that occurs in the pass_manager_drawer() function
instead of at the module level. There is no change in behavior except
for when the check is run. However, since this check was used for
testing and is needed to occur at import time for the test module the
check is duplicated in the test code to ensure we can properly skip
tests if graphviz is not present.
Details and comments
[1] https://qiskit.github.io/qiskit/#import.QiskitImport.time_qiskit_import?commits=2d14c1e3

I fully agree with the goal of lazy check instead of doing it at import time. However, in master code the subprocess is run twice. With this PR it would be run every time pass_manager_drawer is called. Is it possible to run it only once?

But the global is in master, right?


Inter-"version" compatability

I am interested in having inter-"version" compatibility.
It would be nice if mismatched clients and servers could talk. As it stands on the dev branch a version CRC is embedded prevents any interoperability between builds of IDL files that may have only added functionality but not removed it.

Generating CRC should be optional in future. Although you don't need to use it. You can modify client/server setup functions in way that they will set some default CRC number.

How should generating CRC's be optional? Should the erpc_client_init and erpc_server_init functions take a "erpc_crc_t object" so that the user can supply one?
Another point would be having the erpcgen provide some additional guarantees on compatibility. What does a developer need to do to keep the serviceId, methodId, etc compatible? I wasn't able to find anything about that in the documentation? My best guess is the @id annotation but there are no examples and the discussion is limited.

We are planning use annotation @crc when we will want use generated CRC. And then there will be probably added setup function to set crc value.
Yes with @id you can specify functions(method id) and interfaces(service id) ids so they will be always the same (for example for case when you change order of functions, or add some function declaration somewhere in middle of IDL file).


events: Add error handler that logs

Hopefully this will work when we attempt to stringify an error object.
Untested.

LGTM. FWIW, there are no timestamps in stderr right now so I have no idea when any of these errors happened.


Centos7 update to 5.3.3 replace /etc/keydb/keydb.conf

Lost my keydb.conf
I've update keydb-5.3.2-2.el7.x86_64.rpm to keydb-5.3.3-1.el7.x86_64 by yum install command.
And new version of keydb replace my /etc/keydb/keydb.conf without /etc/keydb/keydb.conf.rpmsave copy
To Reproduce

Install  keydb-5.3.2-2.el7.x86_64.rpm by
yum install https://download.keydb.dev/packages/rpm/centos7/x86_64/keydb_all_versions/keydb-5.3.2-2.el7.x86_64.rpm
Edit your config /etc/keydb/keydb.conf
Update to keydb-5.3.3-1.el7.x86_64 by
yum install https://download.keydb.dev/packages/rpm/centos7/x86_64/keydb_all_versions/keydb-5.3.3-1.el7.x86_64.rpm
You lost you config

Hi @anadion , thanks for pointing this out.
I have updated the rpm spec files in our builders to ensure existing config files are not replaced. The following line has been added which has resolved this issue: %config(noreplace) /etc/keydb/* while removing line from %files
Another rpm build has been published reflecting this as "5.3.3-2" or "6.0.3-2". You can install the new build for your machine with:
yum install https://download.keydb.dev/packages/rpm/centos7/x86_64/keydb_all_versions/keydb-5.3.3-2.el7.x86_64.rpm
All builds moving forwards will retain config files.


Hide croping opat

currently, I'm use DKImageViewController with swift 4.2 using Carthage, which is working awesome.
I need to remove or hide cropping feature when take picture in current version.
so It is possible to remove or hide cropping feature.

Could you check the develop branch?
github "zhangao0086/DKImagePickerController" "develop"

You can hide cropping feature in the develop branch:
DKImageExtensionController.registerExtension(extensionClass: DKImageExtensionNone.self, for: DKImageExtensionType.photoEditor)


Adding the rename team command

Generated new mock objects to support rename team functions in ATC API and Fly CLI.
This PR depends on https://github.com/concourse/atc/pull/214 and https://github.com/concourse/fly/pull/196
See issue https://github.com/concourse/concourse/issues/694

@christophermancini Please sign the Contributor License Agreement!
Click here to manually synchronize the status of this Pull Request.
See the FAQ for frequently asked questions.

@christophermancini Thank you for signing the Contributor License Agreement!


[VS Code] Joining collaboration session: Could not connect to the server. Check that you are connected to the internet.

Error:
Joining collaboration session: Could not connect to the server. Check that you are connected to the internet.
Steps to Reproduce:

Install Live Share
try to connect using link provided for live share session.
connect. it works.
close vscode, come back the next day.
open vscode, and try to join a new session.
getting the message
7.re-install the plugin and eventually it will work again.

vscodeliveshare.zip

Version Data

extensionName
VSLS

extensionVersion
0.3.1071

protocolVersion
2.2

applicationName
VSCode

applicationVersion
1.30.1

platformName
Linux Debian buster/testing using Gnome 3.30.2

platformVersion
4.19.0-1-amd64

@eldarberserker Thanks for including your logs and repro steps!
@Priya91 This sounds like a duplicate of #1382, handing it off to you.


[BUG] dingtalk is out of date

Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
https://github.com/alibaba/GraphScope/pull/3951

Environment (please complete the following information):

GraphScope version: [e.g., v0.1, v0.2.2, master]
OS: [e.g. macOS, Linux]
Version [e.g. 10.15]
Kubernetes Version [e.g., 1.19]

Additional context
Add any other context about the problem here.

Thanks! I have submitted a PR to update the link.


Improve keyword hover information displayed when using Jedi

For https://github.com/microsoft/vscode/issues/159247 (ref: https://github.com/pappasam/jedi-language-server/issues/227#issuecomment-1263913655)

This is great! Thank you @luabud


EBNF language definition incorrectly used BNF syntax

The document claims to use EBNF and uses ::= as the definition operator. But on the Wikipedia page it links to, the syntax table shows definition should use = instead. The ::= seems to be the syntax for BNF.

Usage
Notation

definition
=

It is unclear whether our documentation is using EBNF or BNF. This creates confusion. Please clarify in docs. Thank you.

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

ID: 6d74c28f-f94c-1dff-c94e-8cae3c1b2d6a
Version Independent ID: 19ae88be-b258-5272-b3c6-911b5e710c16
Content: OData order-by reference - Azure Cognitive Search
Content Source: articles/search/search-query-odata-orderby.md
Service: cognitive-search
GitHub Login: @brjohnstmsft
Microsoft Alias: brjohnst

Thanks for the feedback! I have assigned the issue to the content author to investigate further and update the document as appropriate.

The examples in the docs use a variant of EBNF that's also been used by the W3C (look at the "Related work" section of that Wikipedia page). We use this particular syntax in the articles because it's fed directly into a tool that generates the syntax diagrams.

#please-close


add action.resetDAO when navigating

Add action.resetDAO when navigating
Closes #1893

Also went ahead and renamed resetDAO -> resetSafeState


Auto wire api and backend

Solving issue: https://github.com/go-swagger/go-swagger/issues/397
Configure.go can be regenerated, if cli option--implementation-package specified, then using another template.
The solution is suggested in the issue above. The implementation package must pre-exist and have certain functions implemented.
This is WIP, any suggestions are welcomed.

Thank you  @youyuanwu


Allow setting multiple index prefixes and choose from them in the UI

Requirement - what kind of business use case are you trying to solve?
this is a slim version of https://github.com/jaegertracing/jaeger/issues/2509
We'd like to allow the user to query different (pre-configured) data sources
Problem - what in Jaeger blocks you from solving the requirement?
Currently, jaeger does not have a solution for querying from different data sources (es indices in our case) under the same deployment
Proposal - what do you suggest to solve the problem or improve the existing situation?
We'd like to add a configuration flag similar to the --es.index-prefix flag that will take a collection of prefixes and will let the user select one of them before querying using some kind of a dropdown in the UI (dropdown will only be displayed if this configuration exist).
a real life example: an organization that wants to ship his traces based on the current environment (production / staging)

I have conceptual problems with this approach:

ES indices is an implementation detail of the storage backend, not a concept that the UI users need to be aware of
ES indices is just one of implementations, whereas "tenancy" could just as well apply to Cassandra backend, e.g. by using different namespaces

I don't think we can achieve the desired result via this shortcut. The UI needs a proper notion of tenancy, expressed in terms that are natural to the end users. The notion of "tenant" could be multi-dimensional, e.g. in your example it was prod vs. staging (one dimension), but some users may have other dimensions, e.g. environment + department. A specific tenant (by concretizing all possible dimensions) can map to a certain configuration of the backend, such as ES index prefix.
I think this more generic approach is not that much more difficult to implement, but it is significantly more flexible.
Caveat: there are some implementation details of the query service that may still be tricky regardless of how the frontend tenancy is handled. For example, Uber deployment implemented a self-refreshing cache of service names, because loading 3k entries from the storage on every UI load was taking too long. I don't think this was implemented generically in the OSS version (we still have open ticket #1743), but this is an example of functionality that will need to be aware of the tenancy.

I have conceptual problems with this approach:

ES indices is an implementation detail of the storage backend, not a concept that the UI users need to be aware of
ES indices is just one of implementations, whereas "tenancy" could just as well apply to Cassandra backend, e.g. by using different namespaces

I don't think we can achieve the desired result via this shortcut. The UI needs a proper notion of tenancy, expressed in terms that are natural to the end users. The notion of "tenant" could be multi-dimensional, e.g. in your example it was prod vs. staging (one dimension), but some users may have other dimensions, e.g. environment + department. A specific tenant (by concretizing all possible dimensions) can map to a certain configuration of the backend, such as ES index prefix.
I think this more generic approach is not that much more difficult to implement, but it is significantly more flexible.
Caveat: there are some implementation details of the query service that may still be tricky regardless of how the frontend tenancy is handled. For example, Uber deployment implemented a self-refreshing cache of service names, because loading 3k entries from the storage on every UI load was taking too long. I don't think this was implemented generically in the OSS version (we still have open ticket #1743), but this is an example of functionality that will need to be aware of the tenancy.

This can get really complex especially without using a database to manage configs which we wanted to avoid I am sure. Also have dynamic names for the dimensions becomes difficult from a UI perspective. I do think having tenants and environments would give a lot of flexibility and likely meet 95% of the requirements that come up. We could have the environment selector in the search which would provide the necessary division of "services".

This can get really complex especially without using a database to manage configs which we wanted to avoid I am sure. Also have dynamic names for the dimensions becomes difficult from a UI perspective. I do think having tenants and environments would give a lot of flexibility and likely meet 95% of the requirements that come up. We could have the environment selector in the search which would provide the necessary division of "services".

I think in the first implementation the tenancy should be described in a config file, not a database.

I think in the first implementation the tenancy should be described in a config file, not a database.

Just wouldn't work for us since we have thousands or tens of thousands of tenants and we'd have to dynamically change the config files on the fly which is not ideal. I'll let @albertteoh chime in when he's back at the keys.

Just wouldn't work for us since we have thousands or tens of thousands of tenants and we'd have to dynamically change the config files on the fly which is not ideal. I'll let @albertteoh chime in when he's back at the keys.

So then you do need a database for tenants :-) Not sure how to interpret your previous https://github.com/jaegertracing/jaeger/issues/2726#issuecomment-760239683
I think either way, we'd need an API on the query service for accessing this data, which can be backed by a set of configs or by a database.

So then you do need a database for tenants :-) Not sure how to interpret your previous https://github.com/jaegertracing/jaeger/issues/2726#issuecomment-760239683
I think either way, we'd need an API on the query service for accessing this data, which can be backed by a set of configs or by a database.

we have thousands or tens of thousands of tenants

If they are all configured following a pattern, the multi-tenancy proposal would cover this by applying a generic configuration that uses the tenant value from the bearer token. Like this:
tenants: [] # no special rules for individual tenants
default: # all tenants follow the same pattern
  storageType: elasticsearch
  es:
    server-urls: "big-cluster.es.acme.example.com"
    index-prefix: "jaeger-%s" # %s is replaced by the tenant name

we have thousands or tens of thousands of tenants

If they are all configured following a pattern, the multi-tenancy proposal would cover this by applying a generic configuration that uses the tenant value from the bearer token. Like this:
tenants: [] # no special rules for individual tenants
default: # all tenants follow the same pattern
  storageType: elasticsearch
  es:
    server-urls: "big-cluster.es.acme.example.com"
    index-prefix: "jaeger-%s" # %s is replaced by the tenant name

however you tackle this, the idea is great and sorely needed. :)