Attestation Service Opt-in Metrics Investigation

Sync with Conner to understand progress on common metrics pipeline and work remaining
Based on this, update the design and costing for the ticket #6727

Current plan: @yourbuddyconner will investigate building a proof-of-concept opt-in metrics pipeline (ticket to be created, see Operations meeting notes) and other teams can leverage this to roll into their service. Plan is to work on this next milestone (after EthCC)
TODO

link new ticket (once created) to #6727


[Content]: sample code to import Segment Python Analytics library

What article on segment.com/docs is affected?
https://segment.com/docs/connections/sources/catalog/libraries/server/python/
What part(s) of the article would you like to see updated?
Getting Started section of Analytics for Python:
https://segment.com/docs/connections/sources/catalog/libraries/server/python/#getting-started
The doc currently provides the following sample code to install and import the Segment library:

Install segment-analytics-python using pip:
pip install segment-analytics-python
If you’re using a system for managing dependencies, you’ll want to pin the library to 1.X to avoid breaking changes when the library is updated
Inside your app, you’ll want to set your write_key before making any analytics calls:
import analytics
analytics.write_key = 'YOUR_WRITE_KEY'

Should the python import statement be reworded as follows?
import segment.analytics as analytics
While learning how to use the Segment Python library using Replit, I could not call the Identify and Track api's until I made the above change to the "import" statement.
<EMAIL_ADDRESS>Additional information
No response

@lyndonwong We've corrected this; thanks for bringing it to our attention.

@pwseg glad to help. thx for the update.


WIP: fix(#5): clear message for auth

Type: Bug/Improvement
The following has been addressed in the PR:

Clear message for auth.

@juanpicado Thanks for the review. I'll update the PR with required changes.

Codecov Report

Merging #7 into master will increase coverage by 0.14%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master       #7      +/-   ##
==========================================
+ Coverage   94.49%   94.64%   +0.14%
==========================================
  Files           4        4
  Lines         109      112       +3
  Branches       29       30       +1
==========================================
+ Hits          103      106       +3
  Misses          6        6

Impacted Files
Coverage Δ

src/htpasswd.js
92.85% <100%> (ø)
:arrow_up:

src/utils.js
97.29% <100%> (+0.23%)
:arrow_up:

Continue to review full report at Codecov.

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


Remove references to RString within the code

There are still many references to RString within the code that should be removed now that we are no longer using it.
Notably, the file StdString.h still exists, and many function names and comments still have references to RString.
Searching for instances of "RString" within Etterna's src reveals 55 hits.

19501c3418a6854b870b6a4df1cc4b372044114a


Undefined when importing a property from object

Edit: this was a change from systemjs, so that is expected.
When I use import { render } from 'react-dom'
console.log(render) // undefined.
this is my config:
typescriptOptions: {
"allowJs": true,
"tsconfig": false,
"typeCheck": false,
"module": "system",
"target": "es5",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"jsx": "react",
"moduleResolution": "node",
"preserveConstEnums": true,
"removeComments": true,
"noEmitHelpers": false,
"importHelpers": false,
"allowSyntheticDefaultImports": true,
"sourceMap": true
}
edit: I'm now having this issue with the bundle that I got after updating the plugin:
Cannot read property 'moduleObj' of undefined when importing a module using System. This works in development environment but not after running jspm bundle.

+1 here, the same config works with System 0.19 but doesn't with 0.20

I believe this is a duplicate of https://github.com/frankwallis/plugin-typescript/issues/185 - with<EMAIL_ADDRESS>you can no longer used named imports from commonjs modules.


Fix bower warning: remove globs from 'main'

The bower.json specifically states you are not to include assets like fonts
and globs are not allowed.
See: https://github.com/bower/spec/blob/master/json.md

Unfortunately, we no longer have the time to work on this project. This means that bugs will not be fixed and features will not be added unless someone else does so.
If you're interested in fixing up metro-bootstrap, please reply to this GitHub issue (#65).
Thank you for your support.

Nice work, but can you sync your branch?

Sorry, @Bashamega, that pull-request was 7 years ago. I don't even have the fork anymore...

Sorry, @Bashamega, that pull-request was 7 years ago. I don't even have the fork anymore...

No problem. Sorry that it took a lot of time to review


[ZEPPELIN-1279] Spark on Mesos Docker.

What is this PR for?
This PR is for the documentation of running zeppelin on production environments especially spark on mesos via Docker.
Related issue is https://github.com/apache/zeppelin/pull/1227 and https://github.com/apache/zeppelin/pull/1318 and I got a lot of hints from https://github.com/sequenceiq/hadoop-docker.
Tested on ubuntu.
What type of PR is it?
Documentation
What is the Jira issue?
https://issues.apache.org/jira/browse/ZEPPELIN-1279
How should this be tested?
You can refer to https://github.com/apache/zeppelin/blob/master/docs/README.md#build-documentation.
Questions:

Does the licenses files need update? no
Is there breaking changes for older versions? no
Does this needs documentation? no

@AhyoungRyu Thank you for quick review. I fixed what you pointed out.

@AhyoungRyu Thank you!! :+1:

Looks great to me, thank you @astroshim for your effort! And as usually, thank you @AhyoungRyu for great review.
Merging to master, if there is no further discussion


Update infinitecampus-tutorial.md

Clarify source of value used when configuring Campus.  Added indication of need to update "Optional Attribute Name" in Campus to match AAD attribute name. Clarified Campus permissions needed to carry out procedure.  Clarified possible source of SP Metadata.

@martinbherbener : Thanks for your contribution! The author, @jeevansd, has been notified to review your proposed change.

This article does not require any next steps, so I have not added it. SaaS app tutorials are not TOC integrated.
Our toc is here: https://docs.microsoft.com/en-us/azure/active-directory/active-directory-saas-tutorial-list
#sign-off


⚠ ClamAV has degraded performance

In 4b2c9aa, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 77 ms

Resolved: ClamAV performance has improved in 5df927c.


Please add support for Logitech G913. The (|) symbol and media keys on the G913 keyboard are not illuminated.

Please add support for the following device:
Device Name: Logitech G913
Device Website: https://www.logitechg.com/en-my/products/gaming-keyboards/g913-low-profile-wireless-mechanical-gaming-keyboard.html

It's not possible with Logitech's SDK. You can use OpenRGB but you can't use per-game profiles with GHUB


Absorption image underflow

The uint16 structure of the numpy array returned by hdul means that the subtraction with_atoms = with_atoms_raw - dark leads to unphysical underflows wherever dark > with_atoms_raw
This could just be fixed by calling .astype(np.int32) on the data returned by run.load_image(), but this destroys the speedup by using memmaps (factor 4x slower in a test of a typical use case). Setting copy = False doesn't seem to help.
Possible fix would be to perform the cast after ROI and norm box cropping, but before subtraction. Should be tested.

Fixed by performing cast after ROI and norm_box crops; slight slowdown (3% in speed test of typical use case) deemed acceptable.


PDO Compliance

In the guide you mention that:
"Client libraries should integrate with the following language-specific database drivers, though this support is not yet provided:"
PDO is listed as one of those. Our application currently relies on PDO.
I would love to get information on the plans or current state of this compatibility. I'm wondering what might be difficult about making the client PDO compliant and if there are any specific plans to implement that on your end.

Our current state is that we have a custom Vitess API that is consistent in all languages (PHP, Java, etc.). We plan to implement language-specific drivers (like PDO) on top of the Vitess API.
The challenge is that because we handle shard routing on behalf of the app, we need to know the sharding key value that each query corresponds to. For example, if the sharding key is user_id, we need the app to tell us which user_id(s) this query is about, so we can route it to the proper shard(s). APIs like PDO weren't designed with the plumbing for us to receive this extra info from the app.
The sharding key requirement is removed in the new V3 API, which is in development. With the V3 API, you can send just the plain query, and Vitess will automatically figure out which sharding key (e.g. which user_id) the query is about. For example, it can look at the WHERE clause or the column values of an INSERT. For more details, you can see the VTGate V3 design doc.
So our drivers for PDO/JDBC/etc. will target the V3 API. The V3 API is available now as a preview feature in Vitess 2.0.0 alpha, and we have begun implementing language-specific drivers based on V3 as a proof-of-concept, such as the Go driver. We'll likely start adding V3 drivers for PHP and other languages after Vitess 2.0.0 hits final release. The V3 API itself will also be polished over the next few months to prepare for its official feature launch in a later Vitess release.

I have a working proof-of-concept for V3. You can check out the demo under examples/demo.  It lets you send queries to a sharded cluster and shows the effects on each table. I just checked in a change to make it easy to launch.
We'll be expanding the feature to handle more query constructs, and improving the tooling to make it more usable in the next few months. But the core V3 is functional for anyone who wants to try.

@sougou & @ enisoc: That's super good news. We have been working out our sharding plan because some of our tables are getting really big. I came across vitess and got super excited about the features and tooling. While looking into what it would take to use vitess to manage our sharing, I saw the plans for PDO. That would save us a lot of time because our server code is built around PDO. I'm not sure on our timeline but it's good to know that things are moving forward and that the community/project is alive! I'm super excited about vitess. Thanks guys!

@joltup FYI, you can subscribe to our low-volume announcement mailing list if you'd like to be notified of major new features and releases.

Hi all, wasn't there a link to a custom PHP PDO interface implementation for Vitess? I'm almost 100% I saw it here and then it disappeared for some unknown reason

I've never heard of anyone writing a PDO implementation yet.

+1

@Rastusik I didn't develop one, unfortunately. I would love to know if there was one!

Does that mean there's a community version? Anyone know where to find it?

@tslater We haven't written the PDO driver yet and we are not aware that somebody externally wrote one. But we want to do it eventually.
If anybody is interested in implementing the Vitess PDO driver (which would use the existing Vitess PHP client), please reach out to us.

I am currently trying to make a PHP version of the PDO handler for Vitess (not exactly a PDO driver, but a class with the same interface (actually methods) as the core PDO classes. I don't know if you had something like that in mind, but I don't know any other way to implement it using the existing PHP client. Is this what you have in mind? Can this be of any help to you?
I think I also found a bug, the details are mentioned here:
https://groups.google.com/d/msg/vitess/z9-IJAnNPhE/VRROrEL_EQAJ

@joltup there might be one soon, but only a PHP implementation, don't know if that would be enough for you

@Rastusik That's awesome! PHP is great. I'll be watching for it.

@joltup check out the beta version here: https://github.com/pixelfederation/vitess-php-pdo

We now link to Pixel Federation's PDO adapter from our repo:
https://github.com/youtube/vitess/tree/master/php


Broader syntax highlight support in markdown TextDocuments

Currently the TextDocument space renders Markdown code blocks for each of the Rerun SDK languages. It would be nice if we could also have support for simple configuration languages, (e.g. TOML, JSON, YAML, XML).
Rerun has been an excellent tool for my work, where I repeatedly run a model on fixed input data and different parameters, each time streaming on the same Rerun application ID. This allows me to quickly visually inspect which parameters had desirable properties. Thanks to the TextDocument, I can see the YAML configuration in the same single window--an excellent design! It would be extra nice if this configuration was color-formatted for easy reading.

Thanks for the feedback!
We could switch to using the syntect crate for syntax highlighting. It supports a lot of different languages, and does it well.
The downside is increased compilation time and binary size.
For our pre-built binaries this shouldn't be a blocker at all.
For .wasm however, it might prove too much.
In any case: we should add a compile switch for this and try it out. It shouldn't be too much work.


loader context without _compiler

Version
4.5.15
Reproduction link
github.com
Environment info
  System:
    OS: macOS 11.5.2
    CPU: (8) x64 Intel(R) Core(TM) i7-1068NG7 CPU @ 2.30GHz
  Binaries:
    Node: 12.18.2 - ~/.nvm/versions/node/v12.18.2/bin/node
    npm: 6.14.5 - ~/.nvm/versions/node/v6.14.5/bin/npm
  Utilities:
    Git: 2.27.0 - /usr/local/bin/git

Steps to reproduce
go to the minimal reproduction repo。it has a readme
What is expected?
on the loader context，I want to access _compiler，but it is undefined。The official documentation states that _compiler exists on loader's this。documenthttps://webpack.js.org/api/loaders/#this_compiler
What is actually happening?
this._compiler is not undefined

I have found the problem. It is found that thread loader 2.x will lose part of the context when processing thread loader. There is no problem upgrading to thread loader 3.x. vue-cli does not provide the ability to update dependencies, so I cannot update the version of the thread loader. My current solution is to abandon the use of thread loader. I have written a plugin to filter thead-loader：
class WebpackPluginRemoveThreadLoader {
  constructor () {}
  apply (compiler) {
    compiler.options.plugins.forEach(plugin => {
      if (plugin.__pluginName === 'fork-ts-checker') {
        delete plugin.options.typescript.diagnosticOptions
      }
    })
    compiler.options.module.rules.forEach(rule => {
      if (rule.use) {
        rule.use = rule.use.filter(item => {
          if (/ts-loader/.test(item.loader)) {
            delete item.options.happyPackMode
          }
          return !/thread-loader/.test(item.loader)
        })
      }
      if (rule.oneOf) {
        rule.oneOf.forEach(oneOf => {
          if (oneOf.use) {
            oneOf.use = oneOf.use.filter(item => {
              if (/ts-loader/.test(item.loader)) {
                delete item.options.happyPackMode
              }
              return !/thread-loader/.test(item.loader)
            })
          }
        })
      }
    })
  }
}

module.exports = WebpackPluginRemoveThreadLoader


Statistics (LTS) to support weekly buckets

hey @RomRider - I really love this card. Thank you. It is so powerful and very addictive. My wife is getting very annoyed as she thinks I love this card more than her...
I am on the latest version but not sure how to check the dev branch (sorry)
I use the statistics function in apexcharts and the history_stats integration of HA to create LTS for a number of entities. They track daily and weekly and monthly usage for my gas heater. It is easy to use axpexcharts and statistics to generate a daily and monthly views.
I notice in the built-in statistics graph card of home assistant supports weekly as a time bucket but not apexcharts
I'd like the statistics function of apexcharts to include a weekly time bucket together with some clever formatting to make the weekly labels / grouping to be flexible  (e.g. supporting the align function)
I can use my daily sensor and then combine group_by sum for 7 day duration together with statistics max by day but it would be much nicer to not have to do this and get the xaxis to show the weeks nicely

Hi There. I just wanted to add my support for this feature request, please - weekly statistics and also to echo the thanks for a very very powerful card for Home Assistant. Thanks!


add Taiwan

Sorry. I have got to put this on-hold. I'm not entirely sure if Taiwan should be included as independent country for now


Support Auto-Discovery

This will make the package work with auto-discovery in Laravel 5.5.

Thanks for the pull request! Something seems broken with FFmpeg on Travis so I'll fix that first and then merge the pull request.

@pascalbaljet ffmpeg package seems to have been removed from trusty/Ubuntu 14.04

I've just tagged v1.1.12, Travis CI is fixed. Thanks again!


Property HATCH

Would it be possible to read the hatch property within an entity?

Do you mean the HATCH entity? It's possible to add them, but will require quite a bit of work. HATCH entities are one of the most complex entities in the DXF spec. I'm open to pull requests for anyone who wants to work on this. Not sure when I will have time to work on this next.

going to upvote this.

would be great to have this.

Parsing the hatch patterns seems very straight-forward, as they are specified as .pat hatch files, as explained on the https://pattycake.io . All codes are available in the autocad_2012_pdf_dxf-reference_enu.pdf .
Rendering them to svg or canvas is a bit trickier, and I still need to figure out a reasonable approach to do it.

I ended up writing my own hatch parser, but it crashes browser frequently if trying to use canvas image with bounds inside the polygon.  Maybe you could draw lines or something??

Yeah, parsing is straight-forward. There's also this pull request from 2019. covering some of it: https://github.com/gdsestimating/dxf-parser/pull/45
There's some compatibility issue between the hatches and the browser. SVG2 planned for <hatch> and <hatchpath> elements, but seems they opted against it. Even Autodesk Forge brute-forces hatches as individual stroke lines.
I'm guessing Houdini aka CSS Painting API Worklets is the most recent initiative to bridge this gap, but support is still spotty.


Change event won't work

I had something working with regular checkboxes, when I included bootstrap-toggle's the change() event stopped working. The styling and the switch on/off motion are working just fine, but the listeners I had applied to the input are no longer triggering when changing from on to off and vice versa.
HTML:
input class='columnSwitch' checked data-size='small' data-toggle='toggle' data-onstyle="success" data-offstyle="danger" type="checkbox">
JS:
$('.columnSwitch').change(function() {
//my code
});
Any help would be very much appreciated, I really like this checkboxes!!

I'm not sure if we are having the same problem.  I was not able to get the toggle to showup at all until I added:

to my page.  Now the nice toggle is showing on the screen but the "change" function doesn't do anything.  Once I removed the jquery-2.1.1 from my source, "change" works beautifully on an ugly checkbox!

I got it to work by moving

--
  |
to the bottom of the page right above the jquery call.  Then I didn't need to include jquery-2.1.1.js in my page since I was already loading jquery on the site.  Somehow the "change" function and the UI all worked.

This answer comes a little bit late, but it should work if you use jQuery's .on(). For instance:
$('.columnSwitch').on('change', function() {
    // your code here
});

This answer comes a little bit late, but it should work if you use jQuery's .on(). For instance:
$('.columnSwitch').on('change', function() {
    // your code here
});

Unfortunately I can't / do not want to use jQuery, because I do have direct reference to the input js object, using selectors be them js or jQuery is not preferred for me.
in my case this code below if not working
js_toggle_obj.addEventListener("change",...

I was fighting a similar problem, maybe my solution would fit here as well. My exact problem was with data-toggle='buttons' and change event not being caught with addEventListener, although jQuery would do just fine.
So I looked here:
https://github.com/twbs/bootstrap-sass/blob/master/assets/javascripts/bootstrap/button.js#L115
Here it says, if the input is not target of the click.bs.button.data-api event (which I assume can be viewed as just click in this context) - preventDefault. So I moved data-toggle attribute to the input itself:
<label class="btn btn-primary">
<input type="checkbox" data-toggle="buttons" class="display-none">Click
</label>

and it worked for me


complete rewrite of the plugin to support folia

as title says

it's like it's not even the same plugin, crazy


Prometheus integration doesn't work for the counter type if federation API is used

Output of the info page
===============
Agent (v7.40.1)
===============

  Status date: 2022-12-02 10:12:48.584 UTC<PHONE_NUMBER>584)
  Agent start: 2022-12-02 09:54:57.993 UTC<PHONE_NUMBER>993)
  Pid: 398
  Go Version: go1.18.8
  Python Version: 3.8.14
  Build arch: amd64
  Agent flavor: agent
  Check Runners: 4
  Log Level: debug

  ...............
    prometheus (3.4.0)
    ------------------
      Instance ID: prometheus:prometheus8:3018b0e58a489da4 [OK]
      Configuration Source: file:/etc/datadog-agent/conf.d/prometheus.yaml
      Total Runs: 213
      Metric Samples: Last Run: 52, Total: 11,076
      Events: Last Run: 0, Total: 0
      Service Checks: Last Run: 1, Total: 213
      Average Execution Time : 38ms
      Last Execution Date : 2022-12-02 10:12:46 UTC<PHONE_NUMBER>000)
      Last Successful Execution Date : 2022-12-02 10:12:46 UTC<PHONE_NUMBER>000)

      Instance ID: prometheus:prometheus:1530de05472ab3e3 [OK]
      Configuration Source: file:/etc/datadog-agent/conf.d/prometheus.yaml
      Total Runs: 35
      Metric Samples: Last Run: 8, Total: 280
      Events: Last Run: 0, Total: 0
      Service Checks: Last Run: 1, Total: 35
      Average Execution Time : 37ms
      Last Execution Date : 2022-12-02 10:12:28 UTC<PHONE_NUMBER>000)
      Last Successful Execution Date : 2022-12-02 10:12:28 UTC<PHONE_NUMBER>000)

      Instance ID: prometheus:prometheus:24de2961c74071dc [OK]
      Configuration Source: file:/etc/datadog-agent/conf.d/prometheus.yaml
      Total Runs: 36
      Metric Samples: Last Run: 7,007, Total: 252,291
      Events: Last Run: 0, Total: 0
      Service Checks: Last Run: 1, Total: 36
      Average Execution Time : 4.563s
      Last Execution Date : 2022-12-02 10:12:40 UTC<PHONE_NUMBER>000)
      Last Successful Execution Date : 2022-12-02 10:12:40 UTC<PHONE_NUMBER>000)

      Instance ID: prometheus:prometheus:339e7fbd0c6bee4 [OK]
      Configuration Source: file:/etc/datadog-agent/conf.d/prometheus.yaml
      Total Runs: 36
      Metric Samples: Last Run: 12, Total: 432
      Events: Last Run: 0, Total: 0
      Service Checks: Last Run: 1, Total: 36
      Average Execution Time : 108ms
      Last Execution Date : 2022-12-02 10:12:41 UTC<PHONE_NUMBER>000)
      Last Successful Execution Date : 2022-12-02 10:12:41 UTC<PHONE_NUMBER>000)

      Instance ID: prometheus:prometheus:33dd560fa33c2479 [OK]
      Configuration Source: file:/etc/datadog-agent/conf.d/prometheus.yaml
      Total Runs: 35
      Metric Samples: Last Run: 34, Total: 1,190
      Events: Last Run: 0, Total: 0
      Service Checks: Last Run: 1, Total: 35
      Average Execution Time : 90ms
      Last Execution Date : 2022-12-02 10:12:19 UTC<PHONE_NUMBER>000)
      Last Successful Execution Date : 2022-12-02 10:12:19 UTC<PHONE_NUMBER>000)

      Instance ID: prometheus:prometheus:3ba8d6d1e2ea763b [OK]
      Configuration Source: file:/etc/datadog-agent/conf.d/prometheus.yaml
      Total Runs: 35
      Metric Samples: Last Run: 3, Total: 105
      Events: Last Run: 0, Total: 0
      Service Checks: Last Run: 1, Total: 35
      Average Execution Time : 55ms
      Last Execution Date : 2022-12-02 10:12:24 UTC<PHONE_NUMBER>000)
      Last Successful Execution Date : 2022-12-02 10:12:24 UTC<PHONE_NUMBER>000)

      Instance ID: prometheus:prometheus:a5d55f2befef8d8a [OK]
      Configuration Source: file:/etc/datadog-agent/conf.d/prometheus.yaml
      Total Runs: 35
      Metric Samples: Last Run: 13, Total: 455
      Events: Last Run: 0, Total: 0
      Service Checks: Last Run: 1, Total: 35
      Average Execution Time : 50ms
      Last Execution Date : 2022-12-02 10:12:32 UTC<PHONE_NUMBER>000)
      Last Successful Execution Date : 2022-12-02 10:12:32 UTC<PHONE_NUMBER>000)

      Instance ID: prometheus:prometheus:e4bc09dc0f22d2b3 [OK]
      Configuration Source: file:/etc/datadog-agent/conf.d/prometheus.yaml
      Total Runs: 36
      Metric Samples: Last Run: 1, Total: 36
      Events: Last Run: 0, Total: 0
      Service Checks: Last Run: 1, Total: 36
      Average Execution Time : 69ms
      Last Execution Date : 2022-12-02 10:12:45 UTC<PHONE_NUMBER>000)
      Last Successful Execution Date : 2022-12-02 10:12:45 UTC<PHONE_NUMBER>000)
.....

Additional environment details (Operating System, Cloud provider, etc):

AWS EKS
Amazon Linux 2

Steps to reproduce the issue:
I used the following configuration for the /conf.d/prometheus.yaml (paste only part that matter):
      - prometheus_url: "http://prometheus-stack-prometheus.monitoring.svc.cluster.local:9090/federate?match[]={__name__=~%22fluentbit_output_errors_total|fluentbit_input_records_total%22}"
        namespace: prometheus
        max_returned_metrics: 999999
        min_collection_interval: 5
        send_monotonic_counter: true
        metrics:
          - fluentbit_output_errors_total
          - fluentbit_input_records_total
        type_overrides:
          fluentbit_output_errors_total: counter
          fluentbit_input_records_total: counter

This URL http://prometheus-stack-prometheus.monitoring.svc.cluster.local:9090/federate?match[]={__name__=~%22fluentbit_output_errors_total|fluentbit_input_records_total%22} generates standard Prometheus federation API result, example:
...
TYPE fluentbit_input_records_total untyped
fluentbit_input_records_total{container="fluent-bit",endpoint="http",instance="<IP_ADDRESS>:2020",job="monitoring/prometheus-fluentbit",name="tail.0",namespace="logging",pod="fluentbit-operations-fluent-bit-4bljt",cluster="operations",prometheus="monitoring/prometheus-stack-prometheus",prometheus_replica="prometheus-prometheus-stack-prometheus-1"} 9.428035e+06<PHONE_NUMBER>409
fluentbit_input_records_total{container="fluent-bit",endpoint="http",instance="<IP_ADDRESS>:2020",job="monitoring/prometheus-fluentbit",name="tail.0",namespace="logging",pod="fluentbit-operations-fluent-bit-xbts8",cluster="operations",prometheus="monitoring/prometheus-stack-prometheus",prometheus_replica="prometheus-prometheus-stack-prometheus-1"} 23311<PHONE_NUMBER>774
...

Describe the results you received:
As a result all fluentbit_input_records_total are equal to 0 like here:

Describe the results you expected:
I was expecting to get values that are calculated with a monotonic counter algorithm correctly. It seems Prometheus collector has some edge case when someone is using Prometheus federate API and data type is counter.
I was trying to treat fluentbit_input_records_total as a gauge, and in this case, data was correctly sent to the DD.
I'm pretty sure that issue is not related to the wrong configuration, cause on another cluster DD agent grabs directly fluentbit logs (without Federate API):
          ad.datadoghq.com/fluent-bit.checks: |
            {
              "prometheus": {
                "instances": [
                  {
                    "prometheus_url": "http://%%host%%:%%port%%/api/v1/metrics/prometheus",
                    "namespace": "fluentbit",
                    "metrics": ["fluentbit_output_errors_total", "fluentbit_input_records_total"]
                  }
                ]
              }

and on the DD dashboard I see what I was expecting:

I made also simple experiment and changed - prometheus_url: "http://prometheus-stack-prometheus.monitoring.svc.cluster.local:9090/federate?match[]={__name__=~%22fluentbit_output_errors_total|fluentbit_input_records_total%22}" -> - prometheus_url: "http://<IP_ADDRESS>:2020/api/v1/metrics/prometheus"(single fluentbit pod) and after that values were send correctly.
Federate API serves standard Prometheus metrics format but everything has untyped value. I think due to the fact that type_overrides are needed in this case, Prometheus integration for some reason wrongly calculates count value

We recommend using the OpenMetrics check over the Prometheus check (which is considered legacy) for the majority of cases. You may try to set that up, or contact support for help.

Hi @arturkasperek, did you get to try my suggestion or contact support?

Hi @alopezz
I would like to fix the original issue.
If documentation suggests that either Prometheus and openmetrics  should work fine I think you should support that

Our documentation clearly states that the Prometheus check is legacy and is only recommended for very specific use cases:

Note: Datadog recommends using the OpenMetrics check since it is more efficient and fully supports Prometheus text format. Use the Prometheus check only when the metrics endpoint does not support a text format.

As I said, if this is not satisfactory, please contact support so that your case can be looked at in more detail.

Closing due to inactivity.


fastTrig_optimize.ino - some points

in float getError(int i)

for (float f = i - 1; f < i + 1; f += 0.0001) will work better using int ii as loop counter from -10000 to +10000  and f = i + ii * 0.00001;. When i is at 84, the error difference between expected and actual of 84.0001 and 84.0002 is 'not trivial'. I'm too lazy to calculate it exactly, but floats are accurate to 24 bits (23 stored; 1 implicit) which is 1 in 16,777,216 i.e. potential rounding differences of c.0.000005. That might not seem much, but adding it 10,000 times gives a potential error of 0.05 - that's 500 clicks of 0.0001. Okay, that's extremely unlikely (drifting 50 clicks wouldn't surprise me), but there's no need to throw away accuracy.
For some reason, your loop includes i-1 but excludes i+1. This seems an oversight to me; IMO it should be symmetrical.
error += abs(sin(f / 180 * PI) - isin(f)); When tracking deviation errors, it's usual to use Least Squares i.e. it's better to have two errors of 2 than one of 3.

in int optimize()

for (int j = -1; j < 1; j++) + if (j == 0) continue; this loop only gets actioned for j  = -1. I don't think that this is intended. Also the if (j == 0) continue; can be removed if you use for (int j = -1; j <= 1; j+=2)

in void test_isin_error_1(bool show)

I notice some delay(10); and can't work out why they're there. To ensure the Serial.print stuff has finished, use Serial.flush(); although I don't see any timing that might require that.
z += y; Again, I would use a Least Squares rather than simple sum of errors. Actually I would track both sum-of-error and sum-of-error-squared and calculate/display Std Dev.

in float getError(int i)

float loop, I know the potential problems with float loops, for the purpose of this test the values are still equidistant enough. In fact I considered to use 2000 random numbers in the interval, but that could cluster so that could create substantial bias.
excluding i+1 is because with the next 'degree' it will be tested. If I would include it it would have double weight.
deviation, this was easier to program and as the sin function is monotone continuous in the interval the linear interpolation in every interval is also continuous. Therefor no sudden peaks. Feel free to do a testrun to see if squared error would generate a different lookup table. And yes I already found that the step size / number of test points affect the table. This difference I saw was only 1 so a diff of 1 in 65535 which is at the edge of the accuracy that is feasible with 16 bit.

in int optimize()

for (j = -1 to +1) that is historical grown, in a first version I had j from -5 to 5 and had to skip 0.  but learned quickly that that was overkill while using quite some time.
Good catch that +1 is missed, will fix that

in void test_isin_error_1(bool show)

delay(10) indeed to be sure data has been printed. As printing over serial is interrupt based a few of these interrupts may occur during the measurement. 10 millis delay is enough to flush 100 chars so it works well. Serial.flush() would also be good, maybe even better to understand the purpose.
deviation discussed above.


Incorrect matching for flow deletion

Kytos should maybe start matching by "owner" as well. For example with RingTopo and this pipeline enabled:
{
    "multi_table": [
        {
            "table_id": 1,
            "description": "Second table for coloring",
            "napps_table_groups": {
                "coloring": ["base"]
            },
            "table_miss_flow": {
                "priority": 0,
                "instructions": [{
                    "instruction_type": "goto_table",
                    "table_id": 2
                }]
            }
        }
    ]
}

Then we disable interface 00:03:3. The flow from coloring will delete of_multi_table flow because the miss flows do not have match field.
These flows are going to be matched.
coloring -> {'table_id': 1, 'match': {'dl_src': 'ee:ee:ee:ee:ee:01'}}
of_multi_table -> {'table_id': 1, 'owner': 'of_multi_table', 'table_group': 'base', 'priority': 0, 'cookie':<PHONE_NUMBER>8561532929, 'idle_timeout': 0, 'hard_timeout': 0, 'instructions': [{'instruction_type': 'goto_table', 'table_id': 2}]}

@Alopalao, good catch.
The non strict match deletion that we have on flow_manager implements an OpenFlow match, so the owner shouldn't be included there, although it's part of our flow data model NApp ownership as you know.
I think the issue is on this line here https://github.com/kytos-ng/flow_manager/blob/master/v0x04/match.py#L46, or "match" not in stored_flow_dict would match even if the flow being installed has a match. The general all deletion that would match anything would be only if what's being deleted doesn't have a match defined.
I think we can nuke the latter part of that logical or. We need to confirm:

Sending a match without keys would still delete all entries as expected
Sending a match with another key value wouldn't delete a flow with no match keys (like miss flow you've been using on this case)

This bug is important, I'll leave with priority_medium. It hasn't been reported in prod yet due to network engineers not using yet the flow miss entry or any other similar flow.


NVCF Backend Revision

Use NVCF shim for autotrain-advanced job submission, rework payload
Remove function lifecycle management and reuse deployed functions per GPU type/config
Limit instance types to active, deployed functions

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update.


[Bug]: Error "Navigating frame was detached" persists across AWS Lambda invocations after browser crash

Minimal, reproducible example
// handler.ts

import { APIGatewayEvent, Context } from 'aws-lambda';
import puppeteer from 'puppeteer-core';
import chromium from '@sparticuz/chromium';
import { Browser } from 'puppeteer-core';

export const handler = async (event: APIGatewayEvent, context: Context) => {
  const htmlContent = event.body || '';

  let browser: Browser | null = null;

  try {
    // Always launch a new browser instance per request
    browser = await puppeteer.launch({
      args: chromium.args,
      defaultViewport: chromium.defaultViewport,
      executablePath: await chromium.executablePath(),
      headless: true,
    });

    const page = await browser.newPage();

    await page.setContent(htmlContent, {
      waitUntil: 'networkidle0',
    });

    const pdfBuffer = await page.pdf({
      format: 'A4',
    });

    await page.close();

    // Close the browser after processing
    await browser.close();

    // Return the PDF buffer as response (base64 encoded for API Gateway)
    return {
      statusCode: 200,
      headers: { 'Content-Type': 'application/pdf' },
      body: pdfBuffer.toString('base64'),
      isBase64Encoded: true,
    };
  } catch (error) {
    // If an error occurs, close the browser if it's open
    if (browser) {
      await browser.close();
    }

    // Return error response
    return {
      statusCode: 500,
      body: JSON.stringify({ error: error.message }),
    };
  }
};

Instructions to reproduce:

1. Deploy the Lambda Function
2. Invoke the Lambda function with a large HTML content that is known to cause the browser to crash due to resource constraints.
3. The first request fails as expected due to the browser crash.
4. Invoke the Lambda function again with a valid, small HTML content. Observe the Persistent error: "Error: Navigating frame was detached".

Background
I'm running a TypeScript AWS Lambda function, with Node.js 18.x runtime version, that converts HTML content to PDF using puppeteer-core (v 23.6.0) and @sparticuz/chromium (v 130.0.0). The Lambda function is designed to handle incoming HTML content and return a generated PDF.
To ensure isolation and avoid issues with browser instances, I always launch a new browser instance for each request and close it after processing. No browser instances are reused across invocations.
However, when the Lambda function processes a large HTML file that causes the browser to crash, the subsequent requests in the same Lambda execution environment, even though they launch new browser instances, consistently fail with the error "Error: Navigating frame was detached" when calling browser.newPage() or page.setContent().
Expectation
I expect that after a browser crash and closure, launching a new browser instance in a subsequent invocation should provide a fresh environment. The new browser instance should function correctly, allowing the Lambda function to process new HTML content and generate PDFs without errors.
Reality
Despite always launching a new browser instance per request, after a browser crash in a previous invocation, any subsequent attempts to process HTML content result in the error:
Error: Navigating frame was detached     at FrameManager._onFrameDetached (.../node_modules/puppeteer-core/lib/cjs/puppeteer/common/FrameManager.js:392:10)     at CDPSession.emit (events.js:314:20)     at CDPSession.EventEmitter.emit (domain.js:483:12)     at CDPSession._onMessage (.../node_modules/puppeteer-core/lib/cjs/puppeteer/common/Connection.js:200:12)     at Connection._onMessage (.../node_modules/puppeteer-core/lib/cjs/puppeteer/common/Connection.js:112:17)     at WebSocket.<anonymous> (.../node_modules/puppeteer-core/lib/cjs/puppeteer/common/WebSocketTransport.js:44:24)     at WebSocket.onMessage (events.js:316:20)     at WebSocket.emit (events.js:310:20)     at Receiver.receiverOnMessage (.../node_modules/ws/lib/websocket.js:825:20)     at Receiver.emit (events.js:310:20)
This error persists across subsequent invocations within the same Lambda execution environment, effectively causing the function to fail until the environment is recycled (i.e., a new Lambda container is created).
Puppeteer configuration file (if used)
No response
Puppeteer version
23.6.0
Node version
18.x
Package manager
npm
Package manager version
10.5.0
Operating system
Linux

I don’t think we can help here. I’d suggest to open an issue with @sparticuz/chromium or reach out to the AWS Lambda community over StackOverflow. Persistent crashes is either a bug in that browser build or some specifics of the AWS lambda environment.
We could take a look if you provide a reproducible example that does not use AWS Lambda and reproduces with a Chrome binary.


tls: SAN verification changed in Envoy

SAN verification changed in Envoy in https://github.com/envoyproxy/envoy/pull/9264. Therefore, for v3 config it is not as easy as to put the configured domain as a SAN to verify, as there is no wildcard matching as there was before. i.e foo.company.com in the config will no longer match *.company.com in the presented certificate.
#626 deleted SAN verification until a better option is exposed in Envoy Mobile.

I believe this is relevant, and would allow us to do SAN based on authority. Need to read more carefully, but want to put here before I forget https://github.com/envoyproxy/envoy/pull/9863

wildcard matching is getting fixed in Envoy in https://github.com/envoyproxy/envoy/pull/10005

https://github.com/envoyproxy/envoy/pull/9863 made it so that the dynamic forward proxy automatically does SAN validation. via the verifySubjectAltName path based on the host/authority header. Therefore, after https://github.com/lyft/envoy-mobile/pull/663 Envoy Mobile has been verifying SAN.


Rethink if-else

With the exception of [# (and prelude, sort of), the bundled macros eschew Python injections. These are too opaque to play nicely with tree-walking macros.
if-else is currently implemented like this:
(defmacro if-else (test consequent alternate)
  `((lambda (,'test : :* ,'then-else)
      ((operator..getitem ,'then-else (operator..not_ ,'test))))
    ,test
    (lambda : ,consequent)
    (lambda : ,alternate)))

Its expansion is rather large for such a common operation. (Many other macros contain if-else in their expansions as well.)
# ifQz_else
(lambda test,*thenQz_else:
  __import__('operator').getitem(
    thenQz_else,
    __import__('operator').not_(
      test))())(
  (1),
  (lambda :(2)),
  (lambda :(3)))

Three lambdas and six calls (including two imports). Had this been a special form, those would be zeros. There's no real need to alter the compiler for that, however, as stated in the old FAQ, a string-injection macro can do it:
(defmacro if-else (condition consequent alternate)
  "Compiles to if/else ternary conditional expression."
  (.format #"(({})if({})\n else({}))"
           : :* (map hissp.compiler..readerless
                     `(,consequent ,condition ,alternate))))

#> (if-else :a :b :c)
>>> # ifQz_else
... ((':b')if(':a')
...  else(':c'))
':b'

No more overhead than Python, more concise (though probably still not particularly readable), and also completely opaque to tree-walkers. They would all have to special-case anything like this, if they can handle it at all, and since their subexpressions are also text, they can't walk subtrees either, short of parsing Python. This is really not acceptable short of a manual micro-optimization. It can't be the default.
Hebigo has a different approach.
# hebi.basic.._macro_.if_
__import__('hebi.bootstrap',fromlist='?')._if_(
  (1),
  (lambda :(2)),
  else_=(lambda :(3)))

It uses a helper function, which it just imports.  (Hebigo does use injections a lot, so it might have trouble with code-walking macros in general, but that doesn't seem like an issue here.) This also requires the bootstrap to be installed. The bundled macros have a rule against that, but the implementation could be simplified enough to inline, if it were injected. The subexpressions don't get stringified until compilation and thus remain accessible to code walkers, so (in that regard) it is no more opaque than using standard-library functions, which is not worth the cost of avoiding.
Note that only the body need be injected, although the entire lambda might also work. (And would be no worse than using an imported helper function. Implementation is the clearest name.)
(defmacro if-else (condition consequent alternate)
  `((lambda ,'bca .#"c()if b else a()")
    ,test
    (lambda : ,consequent)
    (lambda : ,alternate)))

#> (if-else :a :b :c)
>>> # ifQz_else
... (lambda b,c,a:c()if b else a())(
...   ':a',
...   (lambda :':b'),
...   (lambda :':c'))
':b'

Three lambdas (still), two calls, and one inject.
Is there some weird lambda calculus reason I'm not thinking of not to do this? I feel like just using standard-library calls is no worse. If this is allowed, what else would be simplifiable in this way?

I remember thinking I might need weird lambda calculus tricks to implement a yield macro. I thought about continuation-passing style and call/cc. Still not sure if that's doable. However, Ensue might make that unnecessary.
The full injection is not quite as bad as I made it sound. If a tree-walker could recognize the if-else, it could avoid expanding it before processing its subexpressions, which is basically how it would work as a special form. Each special form has to be special cased in the walker. That's why having only two of them makes writing code walkers a lot easier. All other (non-string injecting) macros could be macroexpanded to make them expressible in terms of these.
I feel like string-injection macros might be a common problem that walkers can't be expected to anticipate. They might kind of work like the "compiler macros" of Common Lisp (which are not the same thing as "macros"). Maybe if there were a standard way to mark these (an expand-after macro?) or a way to choose between an injected or non-injected implementation (an *inject* var?) then this could be made to work better.

I'm tempted to just do this. The inject-body version, I mean. But it's going to break a lot of examples in the docs, which would be a pain. I feel like I should finish the current doc project before I begin another one. Unlike a full injection, which would probably require a redo of all affected examples, I could probably just do a find and replace. Maybe it won't be that bad.

Looks like not that bad. Undoing it would be harder, but maybe still possible with a regex find-and-replace.

Looks like I can do @ lists and # sets just as easily.
There are a number of other macros that could benefit from this treatment, but they're more complicated. The best way to do % dicts is probably to create a dict literal in the body with string manipulation. The unpacking makes it tricky, but it's doable. && and || would be trivial if they were strictly binary. Making them multiary recursively like they are now wouldn't realize as much benefit as creating an inline helper function of the proper arity. Same with cond, which would just be a multiary if-else. when and unless would get a little bit simpler, since the nil case would not have to be passed in.
I feel like I implemented an injected throw before I found the walk_tb. Deserves another look if I can find it.

It was in the wiki here https://github.com/gilch/hissp/wiki/Bundled-macro-candidates#raise
.#"(x for x in'')", to make the generator, but it still needs to be closed. Could wrap in a doto. Longer injectables could close it too.
(g:=(x for x in'')).close()or g  # Leaks g.
(lambda g=(x for x in''):g.close()or g)()  # Doesn't, but longer.

Leaking is really not OK even with a gensym.  The alternative is pretty much a doto, so I may as well doto.

doto doesn't auto-wrap like ->. Must have missed that. Fixed in feature branch. ensue is implemented in terms of ->, so should be fine. Were there any others?

when and unless were fairly easy fixes, but they break a lot of examples and can't be fixed with a simple regex find-and-replace, since their arity changed. I just have to go through all the examples.
%, &&, ||, and cond will need to compute a helper string to inject because it will depend on arity. These are going to be the most difficult. Their examples are going to change too, and not in a way I can fix with a regex. I'll probably have to redo all of them.

when/unless are done. The rest will have to wait for tomorrow, at least.

&& and || are done. Not as easy, but not really harder than writing a normal macro. Implementing one made the other pretty obvious.
cond may be slightly more difficult. % will probably be the hardest. The unpacking makes it tricky.

cond was harder, but doable given the && and ||. The old recursive macro definition in terms of if-else was really quite a bit simpler.
An optimization for these branching macros occurred to me. Any literal expressions need not be thunkified to delay evaluation. That's only required for evaluable forms (tuples and strings, and not the strings containing literals). However, this means that the body must avoid calling them like thunks as well, but still call anything thunkified. Matching these up would complicate the macros, although I suppose it's doable with enough code. if-else, when, and unless might be better defined in terms of cond in that case. It's not clear if && and || should be.
That just leaves %, which seems at least as difficult as cond was.
Given this technique, I'm wondering if there are any additional Python expressions I would want macros for. Generator expressions/comprehensions perhaps, but I don't see this working any better than the itertools and builtins. I'll have to look over that wiki page.

% is done. It was about as hard as cond.
I can't say that I should have done them this way in the first place. The old non-injecting implementations were worth writing for dogfooding purposes. The dynamic string-manipulation ones are fairly complex. Their expansions are a lot less noisy, but their implementations are a lot more difficult to understand. These would have been hard to write without the macro suite in place. I'm not sure this was an improvement. This feels like bloat. I'm tempted to just make them binary (or binary-recursive), but that wouldn't work for %.

Also wanted to mention somewhere that the X+1&-2 in cond is so that an odd number of arguments will crash (it ensures the helper always has an even number of parameters). cond is defined pretty early and I didn't have throw available yet.


Hard-coded credentials

Use of hard coded credentials in User.js file line # 54 and in Clubs.js line # 62
https://github.com/IAmTamal/Milan/blob/main/server/routes/User.js
https://github.com/IAmTamal/Milan/blob/main/server/routes/Clubs.js
The hard-coded value "HELLOSECRET123" is used as a key
Hard-coded credentials, such as usernames, passwords, and certificates, should be removed from source code, in my opinion. Instead, if required, save them in configuration files, environment variables, or other data repositories. Store configuration files, including credential data, apart from source code in a safe area with limited access if at all practicable

Thanks a lot for mentioning the issues !!


macro_rules visibilities

The following works and expands to a public enum and 2 public structs:
structstruck::strike! {
    pub enum Token {
        Identifier(pub struct { name: String }),
        Punctuation(pub struct { character: char }),
    }
}

Inside a macro, it doesn't work though:
macro_rules! repro {
    ($visibility:vis) => {
        structstruck::strike! {
            $visibility enum Token {
                Identifier($visibility struct { name: String }),
                Punctuation($visibility struct { character: char }),
            }
        }
    };
}

repro!(pub);

error: proc macro panicked
  --> src/main.rs:3:9
   |
3  | /         structstruck::strike! {
4  | |             $visibility enum Token {
5  | |                 Identifier($visibility struct { name: String }),
6  | |                 Punctuation($visibility struct { character: char }),
7  | |             }
8  | |         }
   | |_________^
...
12 |   repro!(pub);
   |   ----------- in this macro invocation
   |
   = help: message: cannot parse declaration: expected keyword struct/enum/union/fn, found token Group { delimiter: None, stream: TokenStream [Ident { ident: "pub", span: #0 bytes(292..295) }], span: #4 bytes(92..103) }
   = note: this error originates in the macro `repro` (in Nightly builds, run with -Z macro-backtrace for more info)

This seems to be an issue in venial. But if you'd like, I can publish a version of structstruck with a workaround quickly.

I've added a workaround in the latest version. I hope it's not too liberal.


Cannot reproduce wB97M-D3(BJ) energies and forces

Hello OpenMM team,
I'm trying to reproduce some of the energies in the dataset.
Input file used:
memory 1000 mb

molecule h2o {
  O        0.07854020       0.65225506      -0.06068829
  H       -0.31700531       0.93845546       1.56071150
  H       -0.78358060      -0.85430729      -0.76194274
}

set basis def2-TZVPPD
energy('WB97M-D3BJ')
gradient('WB97M-D3BJ')

Energy from Calculation: -76.1624479876510065
Energy from SPICE.hdf5: -76.42840576171875
One caveat is that I am using Psi4-1.6.1 and not 1.4.1. But I wouldn't expect a 0.3ish hartree difference.
Pulled from SPICE.hdf5 file used after using downloader.py and writing an ase style xyz file:
3
Properties=species:S:1:pos:R:3:forces:R:3 energy=-76.42840576171875 pbc="F F F"
O        0.07854020       0.65225506      -0.06068829      -0.02045737       0.02555173       0.10522837
H       -0.31700531       0.93845546       1.56071150       0.02771311      -0.00678600      -0.08722682
H       -0.78358060      -0.85430729      -0.76194274      -0.00725587      -0.01876622      -0.01800219

Found a previous issue using wB97M-D3(BJ) using version Psi4-1.4.1. I don't know if this affects it: https://github.com/psi4/psi4/issues/2279
I'm currently installing Psi4 version 1.4.1 to rerun my test.
Can you point me in any other directions? Thanks

Just a follow up: I tried the same calculation using version 1.4.1 and the energy was  -76.1624480295512996

Hi @pablo-unzueta , thank you for raising the issue, we did use wcombine=False in our calculations as you pointed in the psi4 issue, if you add set wcombine false to your input you would get -76.1624479879508129 Ha and there is not much difference in this case.
The main reason for mismatch in energies is from not converting the coordinates from Bohr to Angstrom. I get -76.4731342821588811 Ha if I convert the coordinates you posted to Angstrom, which is same as the one in SPICE.hdf5.
Also, for water the energies (in hartree) I see in the hdf5 file are
[-76.47314,
 -76.47893,
 -76.47752,
 -76.47264,
 -76.474144,
 -76.47805,
 -76.478226,
 -76.4784,
 -76.46969,
 -76.47316,
 -76.47886,
 -76.473694,
 -76.47529,
 -76.47065,
 -76.474556,
 -76.47413,
 -76.47509,
 -76.475624,
 -76.4757,
 -76.476036,
 -76.478455,
 -76.47198,
 -76.476944,
 -76.47644,
 -76.477036,
 -76.47788,
 -76.4784,
 -76.477135,
 -76.47543,
 -76.478546,
 -76.478836,
 -76.47762,
 -76.47699,
 -76.47901,
 -76.47935,
 -76.47802,
 -76.47666,
 -76.47942,
 -76.47783,
 -76.47891,
 -76.47949,
 -76.478386,
 -76.4763,
 -76.47962,
 -76.47897,
 -76.47839,
 -76.478004,
 -76.478546,
 -76.47865,
 -76.47522]

I couldn't find -76.42840576171875, can you please drop the code on how you accessed it, I might be missing something here.

Hi @pavankum,
I started working on this again today. I think the issue comes from the downloader.py script. When I use it, my energies for water are the following, before I start writing them as ase files:
[-76.428406 -76.43536  -76.434044 -76.42908  -76.42975  -76.43357  -76.433205 -76.433464 -76.42748  -76.42969  -76.43557  -76.4307  -76.43093  -76.42836  -76.43234  -76.42874  -76.432236 -76.432465  -76.4319   -76.433235 -76.43428  -76.42969  -76.4324   -76.433914  -76.433334 -76.43449  -76.43445  -76.43406  -76.43279  -76.434616  -76.43502  -76.434425 -76.434296 -76.43554  -76.4353   -76.43447  -76.433815 -76.435585 -76.43474  -76.434906 -76.43576  -76.435234  -76.432976 -76.4358   -76.43504  -76.43486  -76.43459  -76.43516  -76.434944 -76.43096 ]
However, if I download the SPICE.hdf5 file directly from the releases page, I reproduce what you posted:
[-76.47314  -76.47893  -76.47752  -76.47264  -76.474144 -76.47805  -76.478226 -76.4784   -76.46969  -76.47316  -76.47886  -76.473694  -76.47529  -76.47065  -76.474556 -76.47413  -76.47509  -76.475624  -76.4757   -76.476036 -76.478455 -76.47198  -76.476944 -76.47644  -76.477036 -76.47788  -76.4784   -76.477135 -76.47543  -76.478546  -76.478836 -76.47762  -76.47699  -76.47901  -76.47935  -76.47802  -76.47666  -76.47942  -76.47783  -76.47891  -76.47949  -76.478386  -76.4763   -76.47962  -76.47897  -76.47839  -76.478004 -76.478546  -76.47865  -76.47522 ]
Attached is the downloader.py script I used. Please let me know if I goofed something :)
`
from qcportal import FractalClient
from collections import defaultdict
from rdkit import Chem
import numpy as np
import h5py
import yaml
Units for a variety of fields that can be downloaded.
units = {'dft_total_energy': 'hartree',
'dft_total_gradient': 'hartree/bohr',
'mbis_charges': 'elementary_charge',
'mbis_dipoles': 'elementary_chargebohr',
'mbis_quadrupoles': 'elementary_chargebohr^2',
'mbis_octupoles': 'elementary_chargebohr^3',
'scf_dipole': 'elementary_chargebohr',
'scf_quadrupole': 'elementary_charge*bohr^2'}
Reference energies computed with Psi4 1.5 wB97M-D3BJ/def2-TZVPPD.
atom_energy = {'Br': {-1: -2574.2451510945853, 0: -2574.1167240829964},
'C': {-1: -37.91424135791358, 0: -37.87264507233593, 1: -37.45349214963933},
'Ca': {2: -676.9528465198214},
'Cl': {-1: -460.3350243496703, 0: -460.1988762285739},
'F': {-1: -99.91298732343974, 0: -99.78611622985483},
'H': {-1: -0.5027370838721259, 0: -0.4987605100487531, 1: 0.0},
'I': {-1: -297.8813829975981, 0: -297.76228914445625},
'K': {1: -599.8025677513111},
'Li': {1: -7.285254714046546},
'Mg': {2: -199.2688420040449},
'N': {-1: -54.602291095426494, 0: -54.62327513368922, 1: -54.08594142587869},
'Na': {1: -162.11366478783253},
'O': {-1: -75.17101657391741, 0: -75.11317840410095, 1: -74.60241514396725},
'P': {0: -341.3059197024934, 1: -340.9258392474849},
'S': {-1: -398.2405387031612, 0: -398.1599636677874, 1: -397.7746615977658}}
default_charge = {}
for symbol in atom_energy:
energies = [(energy, charge) for charge, energy in atom_energy[symbol].items()]
default_charge[symbol] = sorted(energies)[0][1]
Given a SMILES string, compute the reference energy of the atoms when fully separated.
def compute_reference_energy(smiles):
rdmol = Chem.MolFromSmiles(smiles, sanitize=False)
total_charge = sum(atom.GetFormalCharge() for atom in rdmol.GetAtoms())
symbol = [atom.GetSymbol() for atom in rdmol.GetAtoms()]
charge = [default_charge[s] for s in symbol]
delta = np.sign(total_charge-sum(charge))
while delta != 0:
best_index = -1
best_energy = None
for i in range(len(symbol)):
s = symbol[i]
e = atom_energy[s]
new_charge = charge[i]+delta
if new_charge in e:
if best_index == -1 or e[new_charge]-e[charge[i]] < best_energy:
best_index = i
best_energy = e[new_charge]-e[charge[i]]
charge[best_index] += delta
delta = np.sign(total_charge - sum(charge))
return sum(atom_energy[s][c] for s, c in zip(symbol, charge))
Process the configuration file and download data.
with open('config.yaml') as input:
config = yaml.safe_load(input.read())
if 'max_force' in config:
max_force = float(config['max_force'])
else:
max_force = None
client = FractalClient()
outputfile = h5py.File('SPICE.hdf5', 'w')
for subset in config['subsets']:
# Download the next subset.
print('Processing', subset)
ds = client.get_collection('Dataset', subset)
all_molecules = ds.get_molecules()
spec = ds.list_records().iloc[0].to_dict()
recs = ds.get_records(method=spec['method'], basis=spec['basis'], program=spec['program'], keywords=spec['keywords'])
recs_by_name = defaultdict(list)
mols_by_name = defaultdict(list)
for i in range(len(recs)):
    rec = recs.iloc[i].record
    if rec is not None and rec.status == 'COMPLETE':
        index = recs.index[i]
        name = index[:index.rfind('-')]
        recs_by_name[name].append(rec)
        mols_by_name[name].append(all_molecules.loc[index][0])

# Add the data to the HDF5 file.

for name in recs_by_name:
    group_recs = recs_by_name[name]
    molecules = mols_by_name[name]
    qcvars = [r.extras['qcvars'] for r in group_recs]
    smiles = molecules[0].extras['canonical_isomeric_explicit_hydrogen_mapped_smiles']
    ref_energy = compute_reference_energy(smiles)
    name = name.replace('/', '')  # Remove stereochemistry markers that h5py interprets as path separators
    group = outputfile.create_group(name)
    group.create_dataset('subset', data=[subset], dtype=h5py.string_dtype())
    group.create_dataset('smiles', data=[smiles], dtype=h5py.string_dtype())
    group.create_dataset("atomic_numbers", data=molecules[0].atomic_numbers, dtype=np.int16)
    if max_force is not None:
        force = np.array([vars['DFT TOTAL GRADIENT'] for vars in qcvars])
        samples = [i for i in range(len(molecules)) if np.max(np.abs(force[i])) <= max_force]
        molecules = [molecules[i] for i in samples]
        qcvars = [qcvars[i] for i in samples]
    ds = group.create_dataset('conformations', data=np.array([m.geometry for m in molecules]), dtype=np.float32)
    ds.attrs['units'] = 'bohr'
    ds = group.create_dataset('formation_energy', data=np.array([vars['DFT TOTAL ENERGY']-ref_energy for vars in qcvars]), dtype=np.float32)
    ds.attrs['units'] = 'hartree'
    for value in config['values']:
        key = value.lower().replace(' ', '_')
        try:
            ds = group.create_dataset(key, data=np.array([vars[value] for vars in qcvars]), dtype=np.float32)
            if key in units:
                ds.attrs['units'] = units[key]
        except KeyError:
            pass

`

Thanks everyone! I'll close this issue for now.

@peastman the next release of qcfractal (expected late December) may allow data deletion within a set, right now I think the dataset collections are immutable, or need Ben's help in modifying the database at root level.

We can't afford to wait until late December.  People are downloading it right now.  Can we escalate this with the QCArchive team?

Can we quantify how bad a problem this is first?

About as bad as it gets.  It means that at this moment there may be people running the downloader and getting corrupt versions of the dataset.  And there's no way for them to tell it's corrupt, and those corrupt dataset files may sit around on their computers for years and get used to train models that they publish years from now.  So very, very bad.

Perhaps instead of a downloader script, an archival service such as Zenodo or OSF is a better approach for versioning and dataset stability?

It's too late for any change like that to fix the problem.  The downloader script is out there.  People have already cloned the original version of the repository.  They've read the preprint, which instructs them to use the downloader.  So any other distribution mechanism we create in the future won't prevent people from running the downloader that's already out there and getting wrong results.  The only possible fix is to make sure that the original version of the downloader produces correct results (as it did when it was originally written, before the alternate data was added to QCArchive).

@peastman I'm talking with @bennybp on what might be possible here. Will update on what we conclude.

@peastman I sent a DM to both you and @jchodera in the OpenMM slack to set up a call with myself and @bennybp to resolve the archival question, which impacts this issue here. Can you respond yes/no and I'll go ahead with scheduling?

About as bad as it gets. It means that at this moment there may be people running the downloader and getting corrupt versions of the dataset. And there's no way for them to tell it's corrupt, and those corrupt dataset files may sit around on their computers for years and get used to train models that they publish years from now. So very, very bad.

Can you help me understand the degree of concern, @peastman?
There was a bug in the unpublished SPICE 1.0 and 1.1 downloader scripts (but not the downloadable artifact that we generated) that results in some download attempts getting a different level of theory. The 1.1.1 version in the manuscript has fixed the nondeterminism bug a week after the manuscript was posted to arXiv.
The repo has only been forked twice, by @peastman and @pavankum, so we don't even need to worry about forks that out of sync.
In order to be impacted, someone would have to have

decided to use the downloader instead of the prepared archive
cloned an early version with the bug within the first week of the manuscript being posted to arXiv
never looked at the repo issues or releases page after 28 Sep 2022
never subsequently pulled the latest version
provided we update the arXiv manuscript (and revision) to note the SPICE 1.1.1 version of the downloader (and potentially the alternative dataset), they will also have to have never looked at the publication or latest version of the arXiv manuscript to cite it prior to publishing themselves

It's hard for me to understand how there can be that large a number of people impacted by this issue, or how it could result in erroneous publications given how unlikely it is for someone to make it all the way to publication with the wrong version of the dataset.
We can certainly tweet about the fix to reach the same audience that saw the original tweet if this is a concern, which should further minimize the issue. And if QCPortal ends up being able to make the default choice deterministic, that problem will end up fully closed.
People are using OpenMM with known bugs in it right now. But we don't try to erase historical versions of OpenMM just because there were bugs in it. We do our best to disseminate the bugfix so that our user community knows about it.

decided to use the downloader instead of the prepared archive

Correct.  But that's not an unusual thing, given that a lot of data fields are only available through the downloader.

cloned an early version with the bug within the first week of the manuscript being posted to arXiv

The time window is much larger than that.  The 1.0 release (which included the downloader script) was created on July 12.  The first data at the lower level of theory was added on Aug. 21.  The 1.1.1 workaround was not added until Sept. 28.  That's 2.5 months during which someone could have cloned the repository and gotten a version without the workaround.  You're assuming the preprint is the only way someone could have learned about it.  But given how much we've all been talking about this project and how many people we've pointed to the repository, that isn't a safe assumption.
So this affects anyone who cloned the repository on or before Sept. 28, and ran (or will run in the future) the downloader script any time after Aug. 21.

never looked at the repo issues or releases page after 28 Sep 2022

Correct.  But then, why would they?  When I download a piece of software or dataset I want to use, I don't usually keep checking their issue tracker afterward unless I specifically discover a problem.

never subsequently pulled the latest version

Correct.  Again, why would they?  Unless they were checking back, they would have no way of knowing there was a newer version.

It's hard for me to understand how there can be that large a number of people impacted by this issue

We definitely know of at least one person who encountered the problem, because he opened this issue.  How many others are there?  We have no idea.  But since one person encountered it, it's likely other people have (or will) too.

And if QCPortal ends up being able to make the default choice deterministic, that problem will end up fully closed.

That would be an acceptable solution.  But again, this is urgent.  People may be downloading corrupt datasets at this moment.  We can't wait months for a fix.

The time window is much larger than that. The 1.0 release (which included the downloader script) was created on July 12. The first data at the lower level of theory was added on Aug. 21. The 1.1.1 workaround was not added until Sept. 28. That's 2.5 months during which someone could have cloned the repository and gotten a version without the workaround. You're assuming the preprint is the only way someone could have learned about it. But given how much we've all been talking about this project and how many people we've pointed to the repository, that isn't a safe assumption.

We did very little to publicly advertise this repository until the preprint posted because there was insufficient information to understand what it contained until the manuscript was available. And the repo has only been cloned by 11 people in the last two weeks after considerable public advertising.

Correct. But then, why would they? When I download a piece of software or dataset I want to use, I don't usually keep checking their issue tracker afterward unless I specifically discover a problem.

To find the citation associated with the dataset. Citation information was only added on Sep 26, just two days before the 1.1.1 fix was released. To publish with the incorrect results, someone would had to discover the repo, clone it prior to Sep 28, and access the README in the 48 hours that the citation was posted but the updated release was not yet made. Given the cloning rate of 0.8 clones/day even after the manuscript is posted, this seems extremely unlikely.
What if we publicly announce the 1.1.1 bugfix on twitter (OpenMM, and have @giadefa and myself retweet) and the README? That seems like it will reach nearly all the likely audience here.


[Bug]: how to detach inputscrollsyn

Minimal, reproducible example
TargetCloseError: Protocol error (Input.synthesizeScrollGesture): Target closed

Background
     const session = await page.target().createCDPSession();
						await session.send('Input.synthesizeScrollGesture', {
							x:100,
							y:200,
							yDistance: -400,
							speed: 500,
						});

Expectation
when I use page.close() alongside this, the whole program crashes with

\node_modules\puppeteer-core\lib\cjs\puppeteer\common\CallbackRegistry.js:73
            this._reject(callback, new Errors_js_1.TargetCloseError('Target closed'));
                                   ^

TargetCloseError: Protocol error (Input.synthesizeScrollGesture): Target closed
    at CallbackRegistry.clear

or this error
cdp\CDPSession.js:64
            return Promise.reject(new Errors_js_1.TargetCloseError(`Protocol error (${method}): Session closed. Most likely the ${this.#targetType} has been closed.`));
                                  ^

TargetCloseError: Protocol error (Network.getCookies): Session closed. Most likely the page has been closed.
    at CdpCDPSession.send (

Reality
how to detach CDP session correctly so I can use page.close() ?
Puppeteer configuration file (if used)
No response
Puppeteer version
latest
Node version
latest
Package manager
npm
Package manager version
latest
Operating system
Windows

You can use CDPSession.detach() https://pptr.dev/api/puppeteer.cdpsession.detach.


How to get actual background color since user cannot get screenshot when .realHover() effect

I get rgba(0,0,0,0) background-color with below code, which makes assertion difficult.How can I get actual background-color rgb(232 232 232):
code:
cy.get(activeTab2)
.realHover()
.should('have.css', 'background-color','rgb(232, 232, 232)');

Looks like you have the issue in your code. https://github.com/dmtrKovalenko/cypress-real-events/blob/29311472782bc5ee477da3909a21a236efbdab63/cypress/e2e/hover.cy.ts#L7-L10 here is an example that works you can run it on your own


"Invalid token" auth error with a perfectly valid token

Hello, I've just created a slack app and generated a bot token. I've installed the app on a workspace and sent a message using curl, authenticating myself with the generated token. Everything worked just fine. Then, I've tried to do the same with this rust crate but no matter what I do, I just get the error Api("rtm::StartError: invalid_auth: Invalid authentication token.")

Ran into the same issue and then I realized that this repo hasn't been maintained in over 3 years..
And slack recommends using the socket API instead of the RTM API., which this repo does not support.
I am using this repo: slack-morphism-rust instead as its currently actively maintained.


Config compare

What does this PR do?
Adds a script to generate configuration file routes for the compare tool. Also modifies the compare tool to be compatible with plaintext API endpoints (like most config files) and read input from stdin for easy piping between the two.
Which TC components are affected by this PR?

[x] Documentation
[ ] Grove
[ ] Traffic Analytics
[ ] Traffic Monitor
[x] Traffic Ops
[ ] Traffic Ops ORT
[ ] Traffic Portal
[ ] Traffic Router
[ ] Traffic Stats
[ ] Traffic Vault
[ ] Other _________

What is the best way to verify this PR?
First of all, be sure the documentation builds. Then, assuming the dependencies of the Traffic Ops Python client have been satisfied, try running the traffic_ops/testing/compare/genConfigRoutes.py script (see documentation for usage) and verify the output with the traffic_ops/testing/compare/compare.go tool (again, see documentation for usage)
Check all that apply

[ ] This PR includes tests
[x] This PR includes documentation updates
[ ] This PR includes an update to CHANGELOG.md
[x] This PR includes all required license headers
[ ] This PR includes a database migration (ensure that migration sequence is correct)
[ ] This PR fixes a serious security flaw. Read more: www.apache.org/security

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/trafficcontrol-PR/2630/
Test PASSed.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/trafficcontrol-PR/2634/
Test PASSed.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/trafficcontrol-PR/2637/
Test FAILed.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/trafficcontrol-PR/2638/
Test PASSed.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/trafficcontrol-PR/2639/
Test PASSed.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/trafficcontrol-PR/2643/
Test PASSed.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/trafficcontrol-PR/2644/
Test PASSed.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/trafficcontrol-PR/2647/
Test PASSed.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/trafficcontrol-PR/2648/
Test PASSed.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/trafficcontrol-PR/2654/
Test FAILed.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/trafficcontrol-PR/2664/
Test PASSed.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/trafficcontrol-PR/2666/
Test PASSed.


Cell ids change on each pre-commit run

When running the pre-commit --all-file with version:

"nbformat": 4,
"nbformat_minor": 5

It changes the cell id even when nothing else changes in the ipynb file. As you might imagine, this make VC with git near impossible. Any way around this? Thanks.

hi @joshdunnlime - do you have an example please?
pre-commit --all-file isn't a valid command, please show exactly what you ran


Reformatting, new test

-Basic tests for message generation
-Discovered some very strange formatting courtesy of changing Atom settings partway through (unfortunately that is most of this change)

Just minor comments above. Aside from those, this looks great! :shipit:


Add docker configs and examples

Add examples for element.

Might be useful: https://github.com/gjgd/demo-element-in-docker


Event when token is refreshed

Is there an event that tells you when the token has been refreshed? I can't seem to find one in the docs

You could use this:
https://github.com/authts/oidc-client-ts/blob/7c8dc996f36008aa8ca8555576f971db5c1cb0e9/src/UserManagerEvents.ts#L62-L67
You are interested on the "re-established" case...

Thank you for the quick answer! That seems to give me what I needed :)


Merge upstream main and fix conflicts

merge current main
resolve package conflicts (ran go mod tidy -compat=1.17

@jimmyraywv - if this looks good to you, it should fix everything and we can merge and include in release.


refactor: edit account action

This PR refactors the edit account modal. It ensures that all error and success messages are displayed to the user.
Step 1 : Default View

Step 2 : Error State

Step 3 : Success State

Open To-Do's:

[x] reorganize requests for better maintainability
[x] display error/success messages appropriately
[x] make sure updated username is displayed in sidebar without page refresh
[x] check why email change doesn't work in local setup -> Because we have to click the links in both the old and new e-mail inbox
[x] discuss testing strategy (maybe some UI tests with the local Supabase setup?) -> For now we stick with the unit tests, setting up E2E tests is a big undertaking and should be handled in a different PR

Okay, with the last commit (38fa6ca), we now also show a success notification when there is a partial success:
Step 1: Error in username + success in email change

Step 2: Corrected the username to something unique


feat: Add WebSocket server with multi-client support

Overview
Implements a WebSocket server that can handle audio streams from multiple client connections
Changes

Added multi-client support to WebSocket server
Created StreamingInferenceHandler for managing connections
Added Dockerfile for easier deployment

Testing

Tested with multiple concurrent clients
Verified Docker container functionality
Checked resource cleanup on disconnection

Please let me know if any changes or improvements are needed!

Couple things I want to work on before merging:

The way resources are shared between client connections. Currently, each connection shares the same config but the models (for segmentation and embedding, in SpeakerDiarization) are initialised and maintained separately. This is a more flexible design, but quite wasteful in terms of memory.

I have attempted a fix at this, but parallel connections ended up sharing state. From what I understood, I might need to dig deeper into the Aggregation steps in the pipeline.

Related to the above point. I was also wondering if different configs could share the same underlying model resources at runtime. For eg. I have seen performance differ a lot for the same config when number of speakers are far apart - say, 2 vs 10. And this is a parameter that a client is better suited to configure, when setting up the connection to the server.

I have also added a cleanup step by the server, when a client disconnects. This was mostly to ensure explicit memory management since client streams are not sharing resources, at the moment - but this should also address #255

Moved LazyModel for resource management, based off this comment.


UiKitView doesn't support being clipped

Can't clip NativeView(UIKitView) on iOS，Android is ok.
BorderRadius not work with ClipRRect、Card and so on.

Please add the output of flutter doctor -v.
To investigate we would need a minimal runnable reproduction
as a single file so that we can just copy your code into lib/main.dart of a new project and run to reproduce.

Clipping on iOS webview is landed on master. I am going to relentlessly close this issue. Please feel free to open another issue with details if any bug is discovered.


Quantum key distribution: An overview

Article checklist
Attention
Our Peer Reviewer and Content Moderator teams do NOT provide any revisions services. All revisions and edits should be completed on your own forked repo (as to not take up room in the queue) in order for our team to review them all in a timely manner.
ANY ARTICLE SUBMITTED WITH GLARING ERRORS WILL BE IMMEDIATELY CLOSED.
Pre-submission checks
Formatting and structure checks

[x] Have you used the correct folder and file structure? - see Contribution Guidelines

[x] Is your article properly formatted in Markdown? - see Github Markdown guide

[x] Have you used our preferred heading structure? - H3 (###) and up

[x] Does your article follow any of the suggested structure formats? - see example formats

[x] Is your article over 750 words? - Tool: Wordcounter.net

[x] Is the article you are submitting an in-depth and unique article? Does it go beyond what is in the official docs and what is covered in other blog sites. See these articles as examples.

[x] Does your article provide enough value and detail about your topic? - Articles should be clear, accurate, and fully explained.

[x] Can your article be understood by beginners? - Assume the audience is smart but has no prior exposure to the common terminology in your article.

[ ] Have you included a hero image that is 600x400 pixels, under 300KB in size, and have the copyright to use it? - Tools: Pixlr Image Editor for resizing and Unsplash for Creative Commons images

Grammar & plagiarism checks

[x] Have you spellchecked and grammar checked your article? - Tools: Write&Improve - ProWritingAid - Grammarly
[x] Please place your article through a 3rd party plagiarism checker. We suggest using Quetext, this tool is free and has a daily limit. We typically accept articles with 10% or less.
[x] Have you checked your article for readability? - Tool: Hemmingway
[x] Have you added sources for quotes and images that aren't yours?

Technical checks

[ ] Are your code snippets properly formatted for syntax highlighting - see Syntax guide
[ ] Have you checked your code runs correctly and you've highlighted all necessary dependencies for installation?
[ ] Are the software programs and packages you're highlighting in your article up to date, using current versions and not deprecated?

Topic suggestion this closes
This closes #6090

Hello @pop-ecx ,
Welcome to EngEd program!
Thanks for submitting this PR.
Your PR has entered our reviewing queue. Please wait until a peer-reviewer pings you to get started with the review.
Meanwhile, we suggest you to go through approved PRs/published articles to see if you have missed out anything. This would help us avoid any potential closure of the PR.
Could you please rename the PR and link it to an issue?
Thanks.

Hey @srishilesh. It has been 9 days now since submitting my PR and I'm not seeing any progress with regards to that. Is everything alright? Should I be worried?

Hey @pop-ecx ,
The peer-reviewers are working towards completing existing reviews to take up more. Please wait patiently until a peer-reviewer pings you to get started.
Thanks.

Hello @pop-ecx,
I'm Geoffrey, I will be reviewing your article. Your article will now be checked for things like plagiarism, technical accuracy, etc, then published.
Nice to meet you 🤝

Plagiarism check complete

Hey @geoffrey45. Nice to meet you too.

hey @geoffrey45, I've followed through on your suggestion and added the relevant links to terms as well as a conclusion.

@geoffrey45 hero image added.


Retroarch Platforms

Incorrect pr . Will try to pull just from added retroarch platforms now .

I can't figure out how to just add a pr with my RetroarchPlatforms .  But you will see them attached if you'd like to use the them.
They where generated from Pegasus FE tools .


Sorted districts for easy access

The districts have been reorder alphabetically so that they can be selected easily.

Hope this wont require db migrations?

No need of DB migration, the change is only in the list.

@sidharthv96 All the changes have been merged as of now except in the verbose_name part. If you think that change should be merged. Please update your pr to reflect the same. Cheers.


grlc is listening to a different port than expected

sometimes http://localhost:32768/api/local works instead of http://localhost:8088/api/local (port 8088 set in docker-compose.yml)

Strange -- I guess you figured out the correct by running docker ps -a ? and I imagine you had a port mapping such as 8888:32768 or so?

Ah, I used another docker-compose.yml which had incorrect port config (fixed https://github.com/candYgene/pbg-ld/commit/49f0c87330d3a7c08b4f19c074156f120a0c663b).


Tizen 5.5: when playing DASH, video stuck after changing playback rate

Have you read the FAQ and checked for duplicate open issues?
Yes.
If the problem is related to FairPlay, have you read the tutorial?
Not related, the video doesn't protection.
What version of Shaka Player are you using?
4.11.0
Can you reproduce the issue with our latest release version?
I'm not in the lab with Tizen 5.5 TV, will try it when I can.
Can you reproduce the issue with the latest code from main?
Same as above.
Are you using the demo app or your own custom app?
Custom app
If custom app, can you reproduce the issue using our demo app?
Will try it when I can.
What browser and OS are you using?
Tizen 5.5
It work as expected on another Tizen 6 TV.
For embedded devices (smart TVs, etc.), what model and firmware version are you using?
Model: TU6900 Crystal UHD 4K Smart TV 2020
What are the manifest and license server URIs?
manifest URL
license server is not needed.
This happens only with DASH, when playing HLS, it works as expected.
What configuration are you using?  What is the output of player.getNonDefaultConfiguration()?
{
  "manifest": {
    "retryParameters": {
      "maxAttempts": 6
    },
    "dash": {
      "ignoreSuggestedPresentationDelay": true
    }
  },
  "streaming": {
    "safeSeekOffset": 0,
    "autoLowLatencyMode": true,
    "preferNativeHls": true
  }
}

What did you do?

Open the custom app link in the TV(Tizen 5.5) browser
(autoplay)
Change playback rate with the 1.5x button

It sets playback rate with videoElement.playbackRate = 1.5.
What did you expect to happen?
The video should play with 1.5x playback rate.
What actually happened?
Video stuck, play / pause also doesn't work
Are you planning send a PR to fix it?
I have no idea for the cause, but I an willing to send a PR if we can confirm this is a Shaka player bug.
--
Hi @joeyparrish and Shaka Player Team,
The issue preconditions are:

Tizen 5.5 (TU6900 Crystal UHD 4K Smart TV 2020), other devices / Tizen versions works as expected
DASH (not HLS)
Change playback rate

Some of our video content provides DASH only, so we can't go with HLS only solution.

Normally changing the playback rate on TVs doesn't work well, in fact it's not even supported on WebOS. To change the playbackRate try using player.trickPlay(1.5) for example, tell us if this helps, otherwise it's a bug that you'll have to report to Samsung.

Hi avelad, thanks for the info.
I'll check if UX of trickPlay satisfies customers.


App Short Description Not Fetched - always "ERROR"

Detected in version: 1.8.0
Endpoint:: GET /api/apps/active
The shortDescription is not fetched from the backend. Instead we always receive "ERROR".
Per app the short description is expected to get fetched from offer_descriptions.description_short
Based on the submitted language parameter. If no language parameter is provided fetch the "en" description_short.

Note: as soon as this is fixed we need to inform @manojava-gk  to recheck the app card behavior and to ensure the short description gets displayed nicely


Fix React Version check in settings

npm list react --version --depth=0 appears to return the version of the npm cli not the version of React. Maybe something changed in the npm API? I'm using npm:v6.14.4/node:v12.16.2 and all of these commands return the same value (the version of npm I'm using):
npm --version # output: 6.14.4
npm list --version  # output: 6.14.4
npm list react --version  # output: 6.14.4
npm list react --version --depth=0  # output: 6.14.4

This command seems to be a good alternative npm view react version. I tested it as far back as npm:v5.3.0/node:v8.4.0.

 Here is an overview of what got changed by this pull request:

Issues
======
+ Solved 1
- Added 2

See the complete overview on Codacy

@loonydev I'd like to see this PR get merged given that it is a major fix.

Hi @asktree, you can merge it if you want. Comment lefts by Codacy app, which use my identities for a some reason. We will fix it soon.

@loonydev @tylerbuchea Hey guys! I've been away for a while. Sorry for ghosting. Today i've released a new version that supports React 16.8 and hooks by default.
Unfortunately, the issue you've raised is real, but there is no easy fix, due to various limitations in how VScode can interact with the codebase. This is why the decision was made to look to the future and support hooks-enabled React


latest Zanata translation changes in jbpm-designer from 2016-11-11

@tsurdilo  I'm looking into the unit test failures - they're in SimulationServletTest. Something is going wrong with simulation of valid BP's.

jenkins please retest this

+1


Rss feed widget

Minor fixes and release information

This change is

Reviewed 35 of 35 files at r1.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from the review on Reviewable.io


Thanks a lot, and a question

Thanks a lot for this great tool. i loved it.
Would you mind helping me in this:
I am translating a very big document (in pdf) and it includes a lot of hyperlinks, which I forgot to attach in the docx of the translation. Now, I have to go through the links in the pdf one by one and open the page, and attach the link to the translated text. I wonder if there is a way to list all the links with their corresponding page. this worked for -c (the broken links) but not when i list the links using -v.
I can send you the pdf file if this helps....
thanks a lot.. very much appreciated.

Please attach the PDF. Thanks


Consistent linking

Throughout the Cloud Adoption Framework it is inconsistent if a link opens a new browser tab or replaces the Cloud Adoption Framework document and then I have to click the back arrow.  Consider choosing one or the other.  I personally would prefer a new tab so I don't lose my place in your document.

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

ID: 0e34a149-c1f6-191c-d3f2-54fdae1cf6ab
Version Independent ID: 4533a56f-d154-8239-6f3a-c935a0a4a5a6
Content: Azure innovation: Interact via devices - Cloud Adoption Framework
Content Source: docs/innovate/innovation-guide/devices.md
Service: cloud-adoption-framework
Sub-service: innovate
GitHub Login: @UmarMohamedUsman
Microsoft Alias: umarm

Thanks for reporting - this issue is under review.  This is a Microsoft Internal DevOps Bug ID AB#191213


I have made changes to the scrollbar css and now it is not overflowin…

I have made changes to the scrollbar css and now it is not overflowing the parent container
I have made changes to the MesheryTreeView.js file.
Notes for Reviewers
This is my first PR in meshery
This PR fixes #10434
Signed commits

[ ] Yes, I signed my commits.

@Yashsharma1911 I have moved the scroll bar

@kunal-511 any screenshot or recording?

@sudhanshutech Above are the screenshots for the fix made
screenshot1- is the error
screenshot2- is after the fix

@kunal-511 Let's discuss this in Meshery dev call today. I'm adding this as an agenda item to the meeting minutes.

@kunal-511 Let's discuss this in Meshery dev call today. I'm adding this as an agenda item to the meeting minutes.

ok I will be there in the meeting

@sudhanshutech @Yashsharma1911

Thankyou for this @kunal-511 this is small item but should be covered, can you make sure that the way this line connect on right side it also does on left? make sure it does affect the other UI

In the original UI, there is a gap from both sides so I have to make that gap or join it from left side as in right side?

@kunal-511, please know that @Yashsharma1911 is out for exams for a few days, but will be back early next week.


support-scheduler add black box test support

support-scheduler needs to have black box test created.

Postman Tests . (Interval, and IntervalAction)
Docker-Postman Tests (Interval and IntervalAction)
Supporting files and scripts (run.sh, files.sh, xx-data.json, etc..)

Commit will be made fully when support-scheduler is using the new 1.0x version of support-scheduler.
Presently the blackbox tests are using the .71 versions of the nexus docker images.

duplicate of #134


Removed client print statements from ;dizzy

The print statements fired whenever the player had ;dizzy ran on them and every time the command looped, causing hundreds of logs on the client.
They are not needed for the commands operation - as far as I know anyway...

was left over from debugging forever ago and I guess I just forgot to remove them


Backend exited with code 1

I get the following error. .env file is set up. Using Debian.
backend_1   | Traceback (most recent call last):
backend_1   |   File "app.py", line 29, in <module>
backend_1   |     tonie_cloud_api = TonieCloud(os.environ.get("TONIE_AUDIO_MATCH_USER"), os.environ.get("TONIE_AUDIO_MATCH_PASS"))
backend_1   |   File "/backend/toniecloud/client.py", line 30, in __init__
backend_1   |     self.session.acquire_token(username, password)
backend_1   |   File "/backend/toniecloud/session.py", line 15, in acquire_token
backend_1   |     self.token = self._acquire_token(username, password)
backend_1   |   File "/backend/toniecloud/session.py", line 20, in _acquire_token
backend_1   |     return req.json()["jwt"]
backend_1   | KeyError: 'jwt'
toniebox-audio-match_backend_1 exited with code 1

Hey @MelBourbon :)
Please excuse my late reply. The issue you observed was caused by a change in the authentication mechanism of the toniecloud. On September 1st 2020, they enforced SSO -- an issue I stumbled into myself -> see #15.
Glad to tell you that it should be fixed in the current master. :) Let me know if it works for you now.

Hey @MelBourbon :)
Please excuse my late reply. The issue you observed was caused by a change in the authentication mechanism of the toniecloud. On September 1st 2020, they enforced SSO -- an issue I stumbled into myself -> see #15.
Glad to tell you that it should be fixed in the current master. :) Let me know if it works for you now.