Replace/Fix git.io URLs

This is a Bug Report

Problem:
git.io has been deprecated and will be discontinued on 04-29-2022, when it will no longer redirect to the destination URL.
Proposed Solution:
A grep shows several places where git.io URLs are used:
content/pt-br/docs/reference/kubectl/cheatsheet.md:kubectl apply -f https://git.io/vPieo          # criar recurso(s) a partir de URL
content/zh/docs/reference/kubectl/cheatsheet.md:kubectl apply -f https://git.io/vPieo          # create resource(s) from url
content/zh/docs/reference/kubectl/cheatsheet.md:kubectl apply -f https://git.io/vPieo         # 从 URL 中创建资源
content/ja/docs/reference/kubectl/cheatsheet.md:kubectl apply -f https://git.io/vPieo          # urlで公開されているファイルからリソースを作成します
content/en/blog/_posts/2016-09-00-How-We-Made-Kubernetes-Easy-To-Install.md:- Install a pod network. [Weave Net](https://github.com/weaveworks/weave-kube) is a great place to start here. Install it using just kubectl apply -f https://git.io/weave-kube
content/en/docs/reference/kubectl/cheatsheet.md:kubectl apply -f https://git.io/vPieo          # create resource(s) from url
content/fr/docs/reference/kubectl/cheatsheet.md:kubectl apply -f https://git.io/vPieo          # Crée une ou plusieurs ressources depuis une url
content/ru/docs/reference/kubectl/cheatsheet.md:kubectl apply -f https://git.io/vPieo          # создать ресурсы из URL-адреса
content/de/docs/reference/kubectl/cheatsheet.md:kubectl apply -f https://git.io/vPieo          # Ressource(n) aus URL erstellen
content/id/docs/reference/kubectl/cheatsheet.md:kubectl apply -f https://git.io/vPieo          # membuat sumber daya dari sebuah tautan
content/vi/docs/reference/kubectl/cheatsheet.md:kubectl apply -f https://git.io/vPieo          # tạo tài nguyên từ url
content/ko/docs/reference/kubectl/cheatsheet.md:kubectl apply -f https://git.io/vPieo          # url로부터 리소스(들) 생성

There are really only two URLs:

git.io URL
Redirects to
Proposed Solution

https://git.io/vPieo
https://raw.githubusercontent.com/kubernetes/kubernetes/release-1.4/hack/testdata/recursive/pod/busybox.yaml
This manifest is from version 1.4, so pretty old and is used by the kubectl cheat sheet.  The simplest fix would be to reference it directly instead of using a shortened URL.  Would it be preferable to copy this manifest out of the k/k repo and into the k/website repo?  I don't know, maybe

https://git.io/weave-kube
https://github.com/weaveworks/weave/releases/download/latest_release/weave-daemonset.yaml
This URL 404s, so I don't really know what this is supposed to be.  This usage is on an old blog post from 2016 that just got stale.  Maybe it is OK to leave it as-is, or provide a comment acknowledging that the link is broken.  Is there a policy on how to treat stale blog posts?

Page to Update:

https://kubernetes.io/docs/reference/kubectl/cheatsheet/#creating-objects
(Maybe?) https://kubernetes.io/blog/2016/09/how-we-made-kubernetes-easy-to-install/

One more thought about URL shorteners in example code...
I also think that in general we should probably not suggest for users to apply a shortened URL directly by using kubectl apply -f as the creator of that shortened URL could, at any time, change the redirect destination to something malicious without the knowledge of the documentation maintainers, resulting in a security problem.  It would be safer to have it point to a location in a repo owned by the Kubernetes org in the case of example code.
I don't know, maybe there is already a policy about this, but if not, maybe one should be considered.  I'm mostly talking about something a user might paste and execute from a command line example, and less about general documentation links, which are probably fine.

/language en

Is there a policy on how to treat stale blog posts?

We usually don't edit them.
It's OK to make edits to remove broken URLs. For example, we could change:

Install a pod network. Weave Net is a great place to start here. Install it using just kubectl apply -f https://git.io/weave-kube Presto! You have a working Kubernetes cluster! Try kubeadm today.

to:

Install a pod network.

and add a note to the article to say it was edited to remove a broken hyperlink.

How about changing from kubectl apply -f https://git.io/vPieo  to kubectl apply -f https://manifests.example/some-manifest.yaml
The example domain will never serve malware via HTTPS; if it does, something is very wrong!

/priority backlog
/lifecycle frozen
/triage accepted

Yes, I like your idea of using an example domain here.  There is no reason for the sake of documentation that this has to resolve to an actual manifest, and is probably a safer option overall.

It looks like GitHub reconsidered based on developer feedback, and will continue serving existing git.io redirects, for now at least.
https://github.blog/changelog/2022-04-25-git-io-deprecation/?#changelog-64536

Based on this news, a fix is less urgent.
/priority awaiting-more-evidence
/remove-triage accepted

/remove-priority backlog

Hello!
Is this something I could work on?

/assign

/triage accepted
Accepting based on my agreement with @sftim's comment on updating the cheatsheet, which I can see that work has already begun on


Discussion/open question: Backward compatibility with GTFS?

We aspire toward backward compatibility with GTFS. How feasible is that? In what circumstances might it make sense to give that up, and how would that be managed?
Open thread for discussion and reference.

GTFS-flex should be as backward compatible as possible, to allow smooth transition for existing applications, perhaps use case per use case.
However, how do you define 'backward compatibility' for CSV files? I'd say:

existing file names should not change
new files should be optional
column names should not change
new columns should be optional
formats for existing columns should not change

Still another question: are csv-files the right format for flexible data, which presumably will not be delivered as a static batch of data but event based, record by record?

I'm generally in favor of the backward compatibility requirement in GTFS. To the extent that entities defined in standard GTFS are suitable (e.g. stops) those tables should be re-used with a few additional optional columns. That said, for flex service full (bidirectional) backward compatibility may not be appropriate.
As analog examples of backward compatibility, take stereo FM radio or color TV. A mono signal can be played on a stereo receiver, and (importantly) a stereo signal can be played on a mono receiver that was built before the stereo spec even existed. Likewise a black-and-white signal could be displayed on a color TV, and (importantly) a color signal could be displayed on a black and white TV that predated the color spec.
Some GTFS extensions allow extended data sets to be interpreted by older systems, providing the same quality of information as the pre-extension GTFS did on those older systems. The new data is just ignored as if it wasn't there, and the old data remains valid in the absence of the new.
This is not the case with flex services. For example, if trips.txt and stop_times.txt are used to define a service where most or all stops are unordered and must be requested, an existing system that does not know about the extension fields will interpret this as an ordered trip and happily give customers very incorrect information, with no indication to the end user or even to the people writing/running the consumer software that something is wrong.
Ideally we want old systems to either ignore / not see the new data at all, or see it as erroneous as a red flag to the consumer. Features of the existing base GTFS system would be used to ensure that rather than being misinterpreted, information would be harmlessly discarded or highlighted.
This could be an argument in favor of using completely new txt files to define the flex services, such that an existing consumer would just see orphaned stops and stop times that are curiously not organized into routable trips.

@hbruch said:

Still another question: are csv-files the right format for flexible data, which presumably will not be
delivered as a static batch of data but event based, record by record?

As far as I know this spec has been designed as static data, describing stable services offered over the long term. I don't think it was intended to include any event-based data.
I think we may need to clarify the purpose of this specification in the Readme, saying what it is and is not. Here and on the mailing list some people seem to interpret it as a real-time data set describing minute-to-minute operations of a TNC-type operator, or an API allowing reservations or dynamic location queries.

One way to mostly reuse existing tables and fields, but make the data appear invalid, raise red flags and prevent older consumers from misinterpreting it, is to express unordered stops within trips by repeating the same stop sequence number for those stops. I opened another ticket for this (#36).
Our three main choices are:

Reuse as many tables as possible, but legacy systems will misinform riders.
Intentionally make flex tables violate existing rules, so legacy systems realize they don't understand the data and refuse to consume it.
Put flex data in totally new tables so legacy systems won't see it at all, and can still consume the classic scheduled service within the same feed.

Making new files and columns optional to be backward compatible is not ideal. If the nature of such files and columns is that they should be required they should be so. When implementing the new version the system should give a warning for such errors if possible, then later when the old format is not supported any more the system can be changed to fail such input.


Replace Redis with Apache Ignite for in memory cache and db

This PR implements the abstraction layer of the in-memory database, which i also call it db cache.  underlying component that really provide cache services that include redis and ignite currently. The ICache interface defines the basic interface for cache operations, such as add, delete, and modify. The cache also supports Transaction,Transaction interface provides transaction-related interfaces. If the underlying cache chooses ignite, it also supports security features and uses SLL to establish a secure link with the ignite server.

Merge the PR to master. Deployment step to be completed in a separate PR.


Improve startup time on Desktop

Compose 1.4.1
Code that measures time from the start to the begining of the second frame (when the first frame is on the display)
import androidx.compose.foundation.Canvas
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.runtime.getValue
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.setValue
import androidx.compose.ui.Modifier
import androidx.compose.ui.window.singleWindowApplication

var isFirstFrame by mutableStateOf(true)

fun main() {
    val t1 = System.currentTimeMillis()
    singleWindowApplication {
        Canvas(Modifier.fillMaxSize()) {
            if (!isFirstFrame) {
                val t2 = System.currentTimeMillis()
                println(t2 - t1)
            }
            isFirstFrame = false
        }
    }
}

Windows 11, OpenJDK 17/20, Intel i9-13900K: 1.5 sec
macOs, OpenJDK 20, Intel i9, macBook Pro 2019: 1 sec
macOs, OpenJDK 17, Intel i9, macBook Pro 2019: 3.5-4 sec
These numbers too high for an empty window. It also will be significantly greater for low-end machines
Child issues:
https://github.com/JetBrains/compose-multiplatform/issues/2645
https://github.com/JetBrains/compose-multiplatform/issues/2517

When I check only Swing window:
import java.awt.Dimension
import java.awt.Graphics
import javax.swing.JFrame
import javax.swing.SwingUtilities
fun main() {
    val t1 = System.currentTimeMillis()
    SwingUtilities.invokeLater {
        val f = object : JFrame() {
            override fun paint(g: Graphics?) {
                super.paint(g)
                val t2 = System.currentTimeMillis()
                println(t2 - t1)
            }
        }
        f.size = Dimension(200, 200)
        f.isVisible = true
    }
}

Windows 11, OpenJDK 20, Intel i9-13900K: 200ms
macOs, OpenJDK 20, Intel i9, macBook Pro 2019: 2.5-3 sec

Note that at the very least we load ~70% more classes. The AWT sample loads ~2200 classes, the Compose one loads ~3700.

On my Mac the AWT example is 270ms, the Compose one is 500ms. If I preload all the androidx.* classes, the Compose example goes drops to 420ms.

Please check the following ticket on YouTrack for follow-ups to this issue. GitHub issues will be closed in the coming weeks.


Add snapshot option to skip building

New Issue Checklist

[x] Updated fastlane to the latest version
[x] I have read the Contribution Guidelines

Issue Description
Is there any possibility to add an option for snapshot to skip the build part? Building my project takes quite a long time, and while trying to integrate snapshot and fiddle with it, it's annoying and inefficient to wait 5+ minutes between each snapshot command.

Sorry no, snapshot needs to build the app to run it on the simulator.

So I guess it's not possible to do a hot build or how it's called. So it builds only the modified files, right?

@revolter It's not possible right now. Because we require you build on a test target it's hard to avoid this. Thanks!


Style.JSON

Hi there, is it possible to load custom map styles like Klokantech, and how?
Thanx

Hi @ItsLhoudini,
I think it's possible.
First you have to serve tiles from somewhere, this can be raster or vector tiles. For example TileServer GL can provide this.
Then you have to choose if you want to use raster or vector tiles.
Leaflet doesn't support vector tiles natively so I think it's easier to use raster tiles.
They will be server on http://localhost:8080/styles/ciwf4zbsv007y2pmt2rspc1dc/{z}/{x}/{y}.png
(ciwf4zbsv007y2pmt2rspc1dc is KlokanTech style's id.
If you want to use vector tiles it involves some plugin to make leaflet compatible with WebGL and vector tiles. I think it should work but I never tried it.
You can have a look at MapBox GL Leaflet
Let me know if you try these kind of things.
Mickaël

@ItsLhoudini I'm closing this as no comment for 2 weeks.
Reopen it if you need to.
Cheers.

I know this is two years old, but that Gist helped me work it out. https://gist.github.com/timwis/eb2c7824bc8dca1727bd1bd96ecf24f0


Needinfo for bugs with inconsistent severity flags

This should resolve #1290.
The new script should be reflected on the Autonag wiki page. The following is the proposed addition to the wiki page:
Bugs with inconsistent severity flags

Purpose
Make sure that bugs severity is consistent with the accessibility severity on the Whiteboard

Action
Needinfo the assignee or the triage owner if not assigned yet

Code
severity_inconsistency.py

I have the following questions:

Do we need to limit the bug type to defect? Currently is not.
Do we need to select products or components? Currently is not.
Should we send the needinfo request to Mozilla employees only? Currently not checking.

The new script should be reflected on the Autonag wiki page. The following is the proposed addition to the wiki page:
Bugs with inconsistent severity flags
Purpose 	Make sure that bugs severity is consistent with the accessibility severity on the Whiteboard
Action 	Needinfo the assignee or the triage owner if not assigned yet
Code severity_inconsistency.py

Looks good. The only thing to add is a link to https://wiki.mozilla.org/Accessibility/Triage#Triaging_Firefox_and_Gecko_feature_defects. You can make the accessibility severity text a link to that page.

I have the following questions:
* Do we need to limit the bug type to defect? Currently is not.

In theory only defects should have a severity set, but there are cases where it is set on enhancement requests too. Let's make the script run on all bug types for now and we can re-evaluate the decision in the future in case of complaints.

* Do we need to select products or components? Currently is not.

No I think this can be enabled on all products and components.

* Should we send the `needinfo` request to Mozilla employees only? Currently not checking.

No, I think it's fine to also needinfo contributors.

For now, the script is not added to any scheduled routine. Should the script be triggered in runauto_nag_daily.sh or runauto_nag_hourly.sh?

I updated the wiki page to include this: Bugs with inconsistent severity flags.


[Android editor] Fix issue with importing projects

The issue was introduced by https://github.com/godotengine/godot/pull/94113:

Prior to https://github.com/godotengine/godot/pull/94113

show_dialog() was invoked in ask_for_path_and_show() before _browse_project_path() and this had the side effect of updating the value of project_path  to the default project path.
fdialog_project's current directory is then set in _browse_project_path() to the current value of project_path

After https://github.com/godotengine/godot/pull/94113

project_path has a null value when used in _browse_project_path() to update fdialog_project's current directory, causing the current directory to default to the filesystem root.

The tentative fix checks whether project_path is empty, and if so uses to the default project path instead, matching the previous behavior. There are other options available (e.g: initializing project_path's value in the constructor instead) so feedback are welcome.
We could also revert the other PR, but it may be preferable to fix forward instead since reverting would reintroduce the issue it was addressing.
Fixes https://github.com/godotengine/godot/issues/94570

I tested on my Android with the artifact from this PR and the problem is fixed.
I'm not familiar with the logic for the default project path also, but the code looks good to me.

FYI @jsjtxietian @KoBeWi

Thanks!


Role based actions and permissions (hard coded ID's)

@ConradBoydElliottGustafson any sense of what this care may have meant?

I think this might refer to adding a feature to our web application to allow standard realm users to create roles and assign users. This story seems to have no detail or value, so there's no risk in deleting it.


feat(sankey): add itemStyle.borderRadius option for sankey series

Brief Information
This pull request is in the type of:

[ ] bug fixing
[x] new feature
[ ] others

What does this PR do?

Add sankey chart itemStyle.borderRadius support.
Fixed issues

fix: https://github.com/apache/echarts/issues/19750
Details
Before: What was the problem?

Sankey chart itemStyle.borderRadius is not support.

After: How does it behave after the fixing?

Support border Radius configuration

Document Info
One of the following should be checked.

[ ] This PR doesn't relate to document changes
[x] The document should be updated later
[ ] The document changes have been made in apache/echarts-doc#xxx

Misc
ZRender Changes

[ ] This PR depends on ZRender changes (ecomfe/zrender#xxx).

Related test cases or examples to use the new APIs
N.A.
Others
Merging options

[ ] Please squash the commits into a single one when merging.

Other information

Thanks for your contribution. Do you mind making a pull request to the doc at dev branch?

Thanks for your contribution. Do you mind making a pull request to the doc at dev branch?

I'm glad to help! I have created a pull request. https://github.com/apache/echarts-doc/pull/393


Added example travis and updated readme.

Added an example .travis.yml
Updated the README.md with some more descriptive verbiage

Signed-off-by: JJ Asghar<EMAIL_ADDRESS>Signed-off-by: JJ Asghar<EMAIL_ADDRESS>

i addressed my concern, thanks JJ!


HEADER - GC signature link: update the destination so that it points to the home page in each official language, rather than the canada.ca language choice page

TODO

[ ] Update EN link
[ ] Update FR link

Outcomes

Clicking on the GC Signatures in both languages directs to the home page in each official language rather than the canada.ca language choice page

Deliverables

Updated EN and FR links

Estimated Effort

[ ] XS: 1 to 2 hours
[ ] S: half a day
[ ] M: 1-2 day
[ ] L: 1 week
[ ] XL: Move to an epic

Out of scope

Will be handled by gcds-header


[youtube] add badges (sponsor, verified, pinned) and money chips to extracted comments

DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE

[X] I understand that I will be blocked if I remove or skip any mandatory* field

Checklist

[X] I'm requesting a site-specific feature
[X] I've verified that I'm running yt-dlp version 2022.10.04 (update instructions) or later (specify commit)
[X] I've checked that all provided URLs are playable in a browser with the same IP and same login details
[X] I've searched the bugtracker for similar issues including closed ones. DO NOT post duplicates
[X] I've read the guidelines for opening an issue
[ ] I've read about sharing account credentials and I'm willing to share it if required

Region
No response
Example URLs
https://www.youtube.com/watch?v=IdgKmhbsZt0 # many verified users
https://www.youtube.com/watch?v=eX7VTyxqREI # pinned comment
https://www.youtube.com/watch?v=ZyuAdljyvoc # super thanks
Provide a description that is worded well enough to be understood
(apologies from the outset if this is too ill-suited for yt-dlp or too verbose.)
I thought it would be helpful to be able to filter comments to highlight verified users, but found the saved comment fields to be incomplete. Currently, no badges are included in the recorded comments. I also discovered that "super thanks" (superchats, but for comments) are also saved as normal comments, without any mention of a paid value. While probably not relevant to most sites, adding information indicating that it's a paid comment, and how much, seems appropriate at least for the case of YouTube.
I've discovered three badges that seem relevant for comment extraction:

"sponsorCommentBadge" for membership badges,
"authorCommentBadge" for the Verified checkmark, and
"pinnedCommentBadge" for comments that are pinned to the top.

These could be added as flat fields (under new names) in the comment for which they are present, but they could also potentially be added as a list in a "badges" field. It would be nice to preserve the badge text, if possible.
For Super Thanks, the field is "paidCommentChipRenderer". The relevant fields seem to be:

chipText, for the display amount, and
backgroundColor, for the "color", which tells how "expensive" the message was in that currency. This is a 32-bit ARGB color value.

Perhaps something that indicates that it's a paid message type would be helpful.
Some examples of what YouTube returns:
        "sponsorCommentBadge": {
          "sponsorCommentBadgeRenderer": {
            "customBadge": {
              "thumbnails": [
                {
                  "url": "https://yt3.ggpht.com/g6w2N3SsxJu6ytXW8WZ85wCzcKclF5dHQvsWHJTvyn1n9Km_-wgtbJVLt3b8Czx334ZPZMxYLa8=s32-k-nd"
                }
              ]
            },
            "tooltip": "Member (1 year, 1 month)"
          }

        "authorCommentBadge": {
          "authorCommentBadgeRenderer": {
            "icon": {
              "iconType": "CHECK"
            },
            "authorText": {
              "accessibility": {
                "accessibilityData": {
                  "label": "Kobo Kanaeru Ch. hololive-ID, verified user"
                }
              },
              "simpleText": "Kobo Kanaeru Ch. hololive-ID"
            },
            "authorEndpoint": {
              "clickTrackingParams": "<no>",
              "commandMetadata": {
                "webCommandMetadata": {
                  "url": "/channel/UCjLEmnpCNeisMxy134KPwWw",
                  "webPageType": "WEB_PAGE_TYPE_CHANNEL",
                  "rootVe": 3611,
                  "apiUrl": "/youtubei/v1/browse"
                }
              },
              "browseEndpoint": {
                "browseId": "UCjLEmnpCNeisMxy134KPwWw",
                "canonicalBaseUrl": "/channel/UCjLEmnpCNeisMxy134KPwWw"
              }
            },
            "iconTooltip": "Verified"
          }
        },

        "pinnedCommentBadge": {
          "pinnedCommentBadgeRenderer": {
            "icon": {
              "iconType": "KEEP"
            },
            "label": {
              "runs": [
                {
                  "text": "Pinned by "
                },
                {
                  "text": "Vestia Zeta Ch. hololive-ID"
                }
              ]
            },
            "color": {
              "basicColorPaletteData": {
                "foregroundTitleColor":<PHONE_NUMBER>
              }
            }
          }
        },

        "paidCommentChipRenderer": {
          "pdgCommentChipRenderer": {
            "chipText": {
              "simpleText": "NT$150.00"
            },
            "chipColorPalette": {
              "backgroundColor":<PHONE_NUMBER>,
              "foregroundTitleColor":<PHONE_NUMBER>
            },
            "chipIcon": {
              "iconType": "FILL_DOLLAR_SIGN_HEART_12"
            },
            "trackingParams": "<no>"
          }
        },
        "backgroundExtendedDetails": {
          "backgroundColorArgb": 452446800
        },

Provide verbose output that clearly demonstrates the problem

[X] Run your yt-dlp command with -vU flag added (yt-dlp -vU <your command line>)
[X] Copy the WHOLE output (starting with [debug] Command-line config) and insert it below

Complete Verbose Output
# multiple verified users
[debug] Command-line config: ['-vU', '--write-info-json', '--write-comments', '--skip-d', '--extractor-args', 'youtube:comment_sort=new;max_comments=40,all,0,all', 'https://www.youtube.com/watch?v=IdgKmhbsZt0']
[debug] Encodings: locale UTF-8, fs utf-8, pref UTF-8, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version 2022.10.04 [4e0511f] (pip) API
[debug] Python 3.10.8 (CPython 64bit) - Linux-5.15.74-1-lts-x86_64-with-glibc2.36 (glibc 2.36)
[debug] Checking exe version: ffmpeg -bsfs
[debug] Checking exe version: ffprobe -bsfs
[debug] exe versions: ffmpeg 5.1.2 (setts), ffprobe 5.1.2, rtmpdump 2.4
[debug] Optional libraries: Cryptodome-3.12.0, brotlicffi-<IP_ADDRESS>, certifi-2022.09.24, mutagen-1.45.1, secretstorage-3.3.2, sqlite3-2.6.0, websockets-10.1
[debug] Proxy map: {}
[debug] Loaded 1690 extractors
[debug] Fetching release info: https://api.github.com/repos/yt-dlp/yt-dlp/releases/latest
Latest version: 2022.10.04, Current version: 2022.10.04
yt-dlp is up to date (2022.10.04)
[debug] [youtube] Extracting URL: https://www.youtube.com/watch?v=IdgKmhbsZt0
[youtube] IdgKmhbsZt0: Downloading webpage
[youtube] IdgKmhbsZt0: Downloading android player API JSON
[debug] Sort order given by extractor: quality, res, fps, hdr:12, source, vcodec:vp9.2, channels, acodec, lang, proto
[debug] Formats sorted by: hasvid, ie_pref, quality, res, fps, hdr:12(7), source, vcodec:vp9.2(10), channels, acodec, lang, proto, filesize, fs_approx, tbr, vbr, abr, asr, vext, aext, hasaud, id
[youtube] Downloading comment section API JSON
[youtube] Downloading ~694 comments
[youtube] Sorting comments by newest first
[youtube] Downloading comment API JSON page 1 (0/694)
[youtube] Downloading comment API JSON page 2 (20/694)
[youtube] Extracted 40 comments
[debug] Default format spec: bestvideo*+bestaudio/best
[info] IdgKmhbsZt0: Downloading 1 format(s): 248+251
[info] Writing video metadata as JSON to: キュートなカノジョ - Ceres Fauna 【COVER】 [IdgKmhbsZt0].info.json

# pinned comment
[debug] Command-line config: ['-vU', '--write-info-json', '--write-comments', '--skip-d', '--extractor-args', 'youtube:comment_sort=top;max_comments=20,all,0,all', 'https://www.youtube.com/watch?v=eX7VTyxqREI']
[debug] Encodings: locale UTF-8, fs utf-8, pref UTF-8, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version 2022.10.04 [4e0511f] (pip) API
[debug] Python 3.10.8 (CPython 64bit) - Linux-5.15.74-1-lts-x86_64-with-glibc2.36 (glibc 2.36)
[debug] Checking exe version: ffmpeg -bsfs
[debug] Checking exe version: ffprobe -bsfs
[debug] exe versions: ffmpeg 5.1.2 (setts), ffprobe 5.1.2, rtmpdump 2.4
[debug] Optional libraries: Cryptodome-3.12.0, brotlicffi-<IP_ADDRESS>, certifi-2022.09.24, mutagen-1.45.1, secretstorage-3.3.2, sqlite3-2.6.0, websockets-10.1
[debug] Proxy map: {}
[debug] Loaded 1690 extractors
[debug] Fetching release info: https://api.github.com/repos/yt-dlp/yt-dlp/releases/latest
Latest version: 2022.10.04, Current version: 2022.10.04
yt-dlp is up to date (2022.10.04)
[debug] [youtube] Extracting URL: https://www.youtube.com/watch?v=eX7VTyxqREI
[youtube] eX7VTyxqREI: Downloading webpage
[youtube] eX7VTyxqREI: Downloading android player API JSON
[debug] Loading youtube-nsig.19fc75cf from cache
[debug] [youtube] Decrypted nsig 2yNoKG_ylC3bg6KF => JKNTHWKy26JJ_g
[debug] Sort order given by extractor: quality, res, fps, hdr:12, source, vcodec:vp9.2, channels, acodec, lang, proto
[debug] Formats sorted by: hasvid, ie_pref, quality, res, fps, hdr:12(7), source, vcodec:vp9.2(10), channels, acodec, lang, proto, filesize, fs_approx, tbr, vbr, abr, asr, vext, aext, hasaud, id
[youtube] Downloading comment section API JSON
[youtube] Downloading ~23 comments
[youtube] Sorting comments by top comments
[youtube] Downloading comment API JSON page 1 (0/23)
[youtube] Extracted 20 comments
[debug] Default format spec: bestvideo*+bestaudio/best
[info] eX7VTyxqREI: Downloading 1 format(s): 303+251
[info] Writing video metadata as JSON to: 『Overwatch 2』FIRST TIME [eX7VTyxqREI].info.json

# super thanks
[debug] Command-line config: ['-v', '--skip-d', '--write-comments', '--write-info-json', '--extractor-args', 'youtube:comment_sort=top;max_comments=60,all,0,all', 'https://www.youtube.com/watch?v=ZyuAdljyvoc']
[debug] Encodings: locale UTF-8, fs utf-8, pref UTF-8, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version 2022.10.04 [4e0511f] (pip) API
[debug] Python 3.10.8 (CPython 64bit) - Linux-5.15.74-1-lts-x86_64-with-glibc2.36 (glibc 2.36)
[debug] Checking exe version: ffmpeg -bsfs
[debug] Checking exe version: ffprobe -bsfs
[debug] exe versions: ffmpeg 5.1.2 (setts), ffprobe 5.1.2, rtmpdump 2.4
[debug] Optional libraries: Cryptodome-3.12.0, brotlicffi-<IP_ADDRESS>, certifi-2022.09.24, mutagen-1.45.1, secretstorage-3.3.2, sqlite3-2.6.0, websockets-10.1
[debug] Proxy map: {}
[debug] Loaded 1690 extractors
[debug] [youtube] Extracting URL: https://www.youtube.com/watch?v=ZyuAdljyvoc
[youtube] ZyuAdljyvoc: Downloading webpage
[youtube] ZyuAdljyvoc: Downloading android player API JSON
[debug] Sort order given by extractor: quality, res, fps, hdr:12, source, vcodec:vp9.2, channels, acodec, lang, proto
[debug] Formats sorted by: hasvid, ie_pref, quality, res, fps, hdr:12(7), source, vcodec:vp9.2(10), channels, acodec, lang, proto, filesize, fs_approx, tbr, vbr, abr, asr, vext, aext, hasaud, id
[youtube] Downloading comment section API JSON
[youtube] Downloading ~3774 comments
[youtube] Sorting comments by top comments
[youtube] Downloading comment API JSON page 1 (0/3774)
[youtube] Downloading comment API JSON page 2 (20/3774)
[youtube] Downloading comment API JSON page 3 (40/3774)
[youtube] Extracted 60 comments
[debug] Default format spec: bestvideo*+bestaudio/best
[info] ZyuAdljyvoc: Downloading 1 format(s): 313+251
[info] Writing video metadata as JSON to: 【Original Animation】Smol Adventures EP 1： Link Your Wish! [ZyuAdljyvoc].info.json

I'm leaning on some of these being out of scope (super thanks). I think we should look into all the possible other information we can extract from other sites comments on videos and try to figure out if they can be generalized under anything.
I do think author verified should be added. A similar field could also be added for normal infodict fields too.


Re-introduce werkzeug in deps

Codecov Report

Merging #240 into develop will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff            @@
##           develop     #240   +/-   ##
========================================
  Coverage    92.79%   92.79%
========================================
  Files           56       56
  Lines         1942     1942
  Branches       185      185
========================================
  Hits          1802     1802
  Misses         117      117
  Partials        23       23

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 11d6eca...6fcffbd. Read the comment docs.


ERROR: rhasspy-nlu <IP_ADDRESS> has requirement networkx==2.3, but you'll have networkx 2.4 which is incompatible.

Hi, I'm installing it following the instructions for virtual environment, on a Raspberry pi 3. I'm not aware of anything that should have installed networkx 2.4, isn't the virtualenv going to isolate from the rest of the software installed anyway ?
thanks :)

This should be fixed soon when a new package of rhasspy-nlu has been published, see https://github.com/rhasspy/rhasspy-nlu/issues/5
The problem is that two packages in this virtual environment want a different version of networkx.
But in practice I don't think that this error will be an issue. It has been there for a while and Rhasspy just works here. So you can ignore it for now.


GetDeliveryNoteById.transport in version 3.0.0

There is currently no identifier of the transport unit.
I suppose that the receiver of the goods also need an identifier of the transport unit to know which DeliveryNote belongs to which transport unit.
Wouldn't also an identifier of the vehicle be needed as well as a vehicleType?
For example, a road transport is coming with 3 containers loaded on 2 transport units. There is a Delivery Note for each container. Transport unit no 1 is loaded with 1 container and transport unit 2 is loaded with 2 containers.
Shouldn't it be possible to see in the Delivery Note which transport unit is carrying the container?
We discussed this case at an API meeting and I think we decided that support for this case should be added. It is missing now.
I sent as agreed an xml example to Patrice for how it is handled in papiNet xml.
In supplier-order and in papiNet DeliveryMessage there is possibility to specify several delivery legs with transport info but not in the delivery-note.
Why this difference?

The transport has been updated, see commit c0b924e.


Add SP 976 to Omit List

From j1939-84 created by ericthomasswenson: battjt/j1939-84#899
Add SP 976 to the Omit list as shown below.
Whereas SP 976, PTO Governor State, is required in CARB regulations for optional equipment. When PTO is not supported, SP 976 is provided as NA. This breaks the assumption that supported SPs should not be received as NA (FF).
Moreover, There is no indication to disambiguate, whether the correct expectation is for Off, or NA in Part 1 and 2.
Considering this, assessment of SP 976 displays is intractable.  The addition of SP 976 provides an immediate remedy.

PACCAR Side-by-side Issue 3
FAIL: <IP_ADDRESS>.a - SPN 976 was received as NOT AVAILABLE from Engine #1 (0)
FAIL: <IP_ADDRESS>.a - SPN 976 was received as NOT AVAILABLE from Engine #1 (0)
Explanation – Spec/Tool Issue?
Not every truck is equipped with a PTO. There must be exceptions added to this. If a truck does not have PTO then it is going to report “NOT AVAILABLE”.
This is expected to be a ubiquitous problem for all manufacturers, which cascades to additional messages as shown below.

This proposal will also resolve
PACCAR side-by-side issue 4
FAIL: <IP_ADDRESS>.a - No DS response for PGN 65265 from Engine #1 (0)
FAIL: <IP_ADDRESS>.a - No DS response for PGN 65265 from Engine #1 (0)
Explanation – Spec/Tool Issue?
Why is the tool sending a destination specific request for CCVS message (contains SPN 84 and SPN 976)? The CCVS message is broadcasted every 100ms
And PACCAR side-by-side issue 9
Warning: Late BAM response:  19:20:39.8578 18FEF127 [8] C4 FF FF 00 00 00 1F F0
Warning: Late BAM response:  19:20:39.8607 18FEF131 [8] F7 FF FF CF FF FF FF FF
Warning: Late BAM response:  19:20:39.8645 0CFEF100 [8] F7 00 00 03 00 00 FF FF
Warning: Late BAM response:  19:20:39.9566 18FEF127 [8] C4 FF FF 00 00 00 1F F0
Warning: Late BAM response:  19:20:39.9602 18FEF131 [8] F7 FF FF CF FF FF FF FF
Warning: Late BAM response:  19:20:39.9645 0CFEF100 [8] F7 00 00 03 00 00 FF FF
Warning: Late BAM response:  19:20:40.0567 18FEF127 [8] C4 FF FF 00 00 00 1F F0

6.1.26 Data Stream Support Verification
<IP_ADDRESS> Actions
a.  Create a list of expected SPNs and PGNs from the DM24 response, where the data stream support bit defined in SAE J1939-73 5.7.24 is 0. Omit the the following SPNs (588, 976, 1213, 1220, 12675, 12730, 12783, 12797) which are included in the list. Omit any remaining SPNs that map to multiple PGs. Display the completed list noting those omitted SPNs and supported SPNs as ‘broadcast’ or ‘upon request’.
b. Gather broadcast data for all SPNSPs that are supported for data stream in the OBD ECU DM24 responses.
c. Gather/timestamp each parameter at least three times to be able to verify frequency of broadcast.


runtime: TestSelectFairness flake on linux-386 builder

Build log https://storage.googleapis.com/go-build-log/83e0a3af/linux-386_d22ef102.log
--- FAIL: TestSelectFairness (0.01s)
    chan_test.go:486: 4770 5230 0.477 0.02300000000000002
    chan_test.go:488: unfair select: in 10000 trials, results were 4770, 5230
FAIL
FAIL	runtime	23.698s
FAIL
2019/10/10 03:35:41 Failed: exit status 1

Got this when testing CL https://go-review.googlesource.com/c/go/+/200237

CC @randall77 @aclements

We just crossed the threshold, the error is 0.023 and the reporting threshold is 0.022086.
We could probably turn down this test a bit - it assumes perfect random numbers and fastrand isn't quite that.
@rasky


Ugly fix for fake jsch_vc, pass params

They started to include second fake form with bad params that we have to ignore. Challenge html code:
https://gist.github.com/oczkers/b4f7408e81c70b9b32643690d2caf19e
website: https://takefile.link
OrderedDict uses only last value when there are duplicate keys so we ended up with jschl_vc=1, pass=""
I've fixed it by reversing list before converting list->OrderedDict so now it uses first seen values instead of last seen. It worked for this site but can be easly changed in future probably so this is ugly fix and You probably don't want to merge this - we should use sth more bulletproof like loop checking params one by one or cutting part of html code before regex etc.

Hey @oczkers cheers for the submit, i wasn't aware that had popped up , i might do a little more investigating i dont think the whole reverse() second pop is a clean solution as the ordering can simply change i might patter match the form block a better if you dont mind? i dont want to be rewriting it again in ~6 days if cloudflare are just being this for shits and gigs

change i might patter match the form block a better if you dont mind? i dont want to be rewriting it again in ~6 days if cloudflare are just being this for shits and gigs

Sure, reverse works now because first form is first but they can add not active form with different id etc. so it would be very hard to make it bulletproof.
I havn't analyzed a lot of cloudflare responses but maybe (beautifulsoup?) validating structure of whole html would be good protection for future changes - at least notify user that something changed. I can work with this but want to get You opinion how to handle this first.

Something more like...
    # ------------------------------------------------------------------------------- #
    # Try to solve cloudflare javascript challenge.
    # ------------------------------------------------------------------------------- #

    def IUAM_Challenge_Response(self, body, url, interpreter):
        try:
            formPayload = re.search(
                r'<form (?P<form>id="challenge-form" action="(?P<challengeUUID>\S+__cf_chl_\S+_tk__.*?")(.*?)</form>)',
                body,
                re.M | re.DOTALL
            ).groupdict()

            if not all(key in formPayload for key in ['form', 'challengeUUID']):
                 raise CloudflareIUAMError(
                    "Cloudflare IUAM detected, unfortunately we can't extract the parameters correctly."
                )

            payload = OrderedDict(
                re.findall(
                    r'name="(r|jschl_vc|pass)"\svalue="(.*?)"',
                    formPayload['form']
                )
            )

        except AttributeError:
            sys.tracebacklimit = 0
            raise CloudflareIUAMError(
                "Cloudflare IUAM detected, unfortunately we can't extract the parameters correctly."
            )

        hostParsed = urlparse(url)

        try:
            payload['jschl_answer'] = JavaScriptInterpreter.dynamicImport(
                interpreter
            ).solveChallenge(body, hostParsed.netloc)
        except Exception as e:
            sys.tracebacklimit = 0
            raise CloudflareIUAMError(
                'Unable to parse Cloudflare anti-bots page: {}'.format(
                    getattr(e, 'message', e)
                )
            )

        return {
            'url': '{}://{}{}'.format(
                hostParsed.scheme,
                hostParsed.netloc,
                self.unescape(formPayload['challengeUUID'])
            ),
            'data': payload
        }

results in...
>>> import cloudscraper
>>> cloudscraper.__version__
'1.2.31'
>>> import requests
>>> body = requests.get('https://gist.githubusercontent.com/oczkers/b4f7408e81c70b9b32643690d2caf19e/raw/db9f0e1500214362b0487c0cb6bf28a980b3706c/cf.html').text
pass" value="" />\n    <input type="hidden" id="jschl-answer" name="jschl_answer" />\n  </form>\n
\n\n\n      	\n\n
\n
\n\n\n'
>>> scraper = cloudscraper.create_scraper()
>>> scraper.IUAM_Challenge_Response(body, 'https://takefile.link', 'native')
{'url': 'https://takefile.link/?__cf_chl_jschl_tk__=1b9ec5037182301a5c9d89e150a9cc4e01d98a14-1585091579-0-ARfjW2YdqAQADm84WIREhRdXbWUCW6_G8mclHf1SqfuJMUk7kld9V12V1ZqxhhldY3al6MqEoXZ6UOJ1UlwJq7v4tO1DGIK0NUnIHXpSCaWNwYER0BqlmgY7WTYDgtfKjCtGBXXX0-4IgXCtouXVUy-mNM-3xjniff77FhAHMNfuPOqVFcJObkCW4PIwJCCT2rtodVJWr185IAMEUOoyHhliF0h5PleArHABnEPF6uS9rwPaaUQlvcfAK4DOZr1bF3UmyPY1NRCLPneEBwYeErM"', 'data': OrderedDict([('r', 'ce4224856fd866a53b8d3e05130cd59d383086bc-1585091579-0-AX3gVa93G/V6SnAlzYN4dCNUWsFcm0yO9UNQ66EsFkhp+d1S4s1MVyYCq8YQGvROW1Zt2g9pflvCB/HfXrrvVH2eKjeJe/nlU2E/FZ6GY36vtGehzFpr0z1KYjtUtMYIAjJMW2+LW33WiHxyl3LUvzaxLenH4/Hd38vFUGRIp3vqMkgNKEMJaElijR4z9tFHcGebuHk+pHIGEHqMSXtcZkmFouLuXJe9a+DkLVB+DACucYOCi+QhyUArJXfIdmO+/HS0vJi7slBuao7KzwjOjXml9P1+QjDa3DXeO88NkU9GCTuCROHq8RDcnsR6mDbnYSeIjDk6MkaX5E0L72wzFJsyTqL2dDjUsiAOS6P/7cArWNbZDHe2ZuoPBYD/gtUKT4Kwd5uSvNziB+7mhRIwm/KxbR8SQ3LFPy3FlcWfIJ7aIHysuEfjXONNmKUKugVlpn9k3WnuLM4UbSJ/9p3VeAe5WdDZqlONYUUuDpCHHKhsOiMer2WqVsh4yANUDuTh3JCemUcjXJwIIqfQlI6hkHLfyp0m/UYOtg2IYavTY7suA+5cz14tfDuwsC2tqLU/bus7bS2wayGMzA9oL6ilz96gPY/OidzPcY6n3svWXyKXrMChTgnoyOEqgUkgXObBhe5L4P9Pk5lxsSmKNII2H3qzauCeTPwEvfMwgASoFM+DiD1z7Ml3MGn3AejvPBBUuKDJZwJB3Gb6Z/jY95fXuEz5XMbRliOc1vh5N6nuPjWTTce75xNSq77ABUY/cLI0Jy9ACLy4dxEjxjlFb9W9EC1oLY5Wv5fn1tCQftA+teA/9XuwBcyxsDXBF6otiE0jSQu484dT1HZjP6xKdKT4ySQzBnZpPCkAC8VnZLGlyiBggv3MqxM4CrktBse0ejfPc9MuBhPi9CkKcS2SnIygWfGG2Utr0qb9f9mA2bS2yCRkxYHQdz1cCoaq4vEKfVgBEyoaEW4Ic1Ccwmqilma6u0nXUkcCXnbsYRrPzW0jGBCWRkkdeDxt8MlSHaDjZ6//aNnxDd7lB8JF3XX1CTuD+UQDtxxsbIiMi+sJBar8D6GoiHzNbdjBMmtP0FHgfZj9hNTVZ8W778DPQiv6OgNbr9SCJPH+3ZBOEJvbq42b8nbE+zrEu+wH7fnxdMcbQHYcPAldTmxJU4wpon7MfpZwvoj7mZlTUrSZNJXl5R7JL9WrB0LEZes6fvTZWyN1vwxThg6J94H+umObsLOfOVhDVBNxJNeK0U+BdBt6V3PdiDqDXNC/DZ4KIuZ/HukIfzy/H5tj1tfZy7LEb4v4xuf3gOx8OqeNgK7MuWGKlJ1WQj1tRI9wsW7JLFxc0dH6se7UpLymAB9tMrplxJM4YniOmnTgj1AWRT0IMrovsqasoQIKSY2dEkb/PeRhlihYPpqqY4iVAIoBJNdtH40uq0yRQx0o02Nl3ZSUFQHk0Cn61Uwmwn/HjUocF1xyu+IcqplZW++/ou8xnD+BgtOt30OXlj+5AdUsgRy74iI2pdXOYoJP9u/aKCh6CF0QkitnALC84UXTcI5F7m6CjeIjyjSdCW3ZQ1j7ssz2G0UnSGfwsjGGN7CefBX1SRcxxjA44+YlxfDygw6yIX10D/qO6k1pHmU4yzkSPq8cdWD7HuTNJkirp+xQmIIBk9RYLfW7C6giRYLwLqQ3gveYWFDScPhrYGwrGbtg26OIv1W4iFjx59lB'), ('jschl_vc', 'bd6c3b5c7a51eb144211a34a954cdc1f'), ('pass', '1585091583.111-Gf1qRBp5ad'), ('jschl_answer',<PHONE_NUMBER>837)])}
>>>

I might change that to .*? instead of \S+ incase it doesn't encode the spaces... ya just never know...

mmm bug where the location of the " on the challangeuuid

mmmm actuallly this is only for non reCaptcha... can take out that \S+ and replace with a static

SPAM... lol
So im thinking...

    # ------------------------------------------------------------------------------- #
    # Try to solve cloudflare javascript challenge.
    # ------------------------------------------------------------------------------- #

    def IUAM_Challenge_Response(self, body, url, interpreter):
        try:
            formPayload = re.search(
                r'<form (?P<form>id="challenge-form" action="(?P<challengeUUID>.*?'
                r'__cf_chl_jschl_tk__=.*?)"(.*?)</form>)',
                body,
                re.M | re.DOTALL
            ).groupdict()

            if not all(key in formPayload for key in ['form', 'challengeUUID']):
                 sys.tracebacklimit = 0
                 raise CloudflareIUAMError(
                    "Cloudflare IUAM detected, unfortunately we can't extract the parameters correctly."
                )

            payload = OrderedDict(
                re.findall(
                    r'name="(r|jschl_vc|pass)"\svalue="(.*?)"',
                    formPayload['form']
                )
            )

        except AttributeError:
            sys.tracebacklimit = 0
            raise CloudflareIUAMError(
                "Cloudflare IUAM detected, unfortunately we can't extract the parameters correctly."
            )

        hostParsed = urlparse(url)

        try:
            payload['jschl_answer'] = JavaScriptInterpreter.dynamicImport(
                interpreter
            ).solveChallenge(body, hostParsed.netloc)
        except Exception as e:
            sys.tracebacklimit = 0
            raise CloudflareIUAMError(
                'Unable to parse Cloudflare anti-bots page: {}'.format(
                    getattr(e, 'message', e)
                )
            )

        return {
            'url': '{}://{}{}'.format(
                hostParsed.scheme,
                hostParsed.netloc,
                self.unescape(formPayload['challengeUUID'])
            ),
            'data': payload
        }

    # ------------------------------------------------------------------------------- #
    #  Try to solve the reCaptcha challenge via 3rd party.
    # ------------------------------------------------------------------------------- #

    def reCaptcha_Challenge_Response(self, provider, provider_params, body, url):
        try:
            formPayload = re.search(
                r'(name="r"\svalue="(?P<r>\S+)"|).*?challenge-form" action="(?P<challengeUUID>'
                r'.*?__cf_chl_captcha_tk__=.*?)".*?'
                r'data-ray="(?P<data_ray>\S+)".*?data-sitekey="(?P<site_key>\S+)"',
                body, re.M | re.DOTALL
            ).groupdict()
        except (AttributeError):
            sys.tracebacklimit = 0
            raise CloudflareReCaptchaError(
                "Cloudflare reCaptcha detected, unfortunately we can't extract the parameters correctly."
            )

        hostParsed = urlparse(url)
        return {
            'url': '{}://{}{}'.format(
                hostParsed.scheme,
                hostParsed.netloc,
                self.unescape(formPayload.get('challengeUUID', ''))
            ),
            'data': OrderedDict([
                ('r', formPayload.get('r', '')),
                ('id', formPayload.get('data_ray')),
                (
                    'g-recaptcha-response',
                    reCaptcha.dynamicImport(
                        provider.lower()
                    ).solveCaptcha(url, formPayload.get('site_key'), provider_params)
                )
            ])
        }

if not all(key in formPayload for key in ['form', 'challengeUUID']):
    sys.tracebacklimit = 0
    raise CloudflareReCaptchaError(
        "Cloudflare reCaptcha detected, unfortunately we can't extract the parameters correctly."
    )

Sure, this is better than simple regex but it won't be secure - they can for example add new javascript code to ignore this form, modify params on the fly etc. It can be everything and considering we're open source its easy to track and record bad posts.
Of course this is worst case scenario and they don't even check ip so ^^ but i just don't see advantage in this approach - we protect from one specific scenario and public it so they can read, is it really any security advantage?
How about just fixing regex and if they change design we notice it after 3 failed retries after all.
form = re.search(
    r'<form (id="challenge-form" action=".*?'
    r'__cf_chl_jschl_tk__=\S+"(.*?)</form>)',
    body,
    re.M | re.DOTALL
).group(1)

What do You think about this, should we make one more request?
https://gist.github.com/oczkers/b4f7408e81c70b9b32643690d2caf19e#file-cf-html-L125

Yea I get they can simply change that (they've done it like once in 2 years, but you're right, there is nothing stopping them changing it more), but the problem is unless you make a full on logical parser to process / extract the html / javascript into individual components then step over each, I might consider this however I need to design a decent model because that becomes alot more complex then some simple regex
I have been thinking lately I might split out Cloudflare related material to its own class as well so i can add additional bypasses for other challenge mechanisms not just Cloudflares jsfuck challenge.
But if i move to a new html / javascript parser I want to write it properly the first time, i don't want to use beautiful soup as its way to heavy for what we need to do.
For the interim, I'll implement that new regex extraction

This was implemented.

@VeNoMouS Why doesn't it work here?
comment.rlsbb.ru/
import cloudscraper

scraper = cloudscraper.create_scraper()  # returns a CloudScraper instance
# Or: scraper = cloudscraper.CloudScraper()  # CloudScraper inherits from requests.Session
print(scraper.get("https://comment.rlsbb.ru/").text)  # => "<!DOCTYPE html>..."


Polyfill Array.find and Array.from is not served in IE11

[BUG]
What

I am expecting to Array.prototype.find and Array.from to be included in the bundle.
Details

https://polyfill.io/v3/polyfill.min.js?features=default%2CArray.prototype.find%2CArray.from
I have added Array.prototype.find and Array.from to features.
In IE 11, Both are not served

My mistake, I had added the SRI hash using integrity attribute.
Due to that, it was not working.


updated angular

i also moved the static dependencys to bower, no good having that stuff in git

I wonder why this hasn't been merged? I recently used this boilerplate myself and had to manually update all the libs. Also having static dependencies to be managed by bower (although I prefer npm) is better than just storing them in the repo.


Tile memory fix.

Seeing some crashes where it appears the tile reference is not valid.  It appears using __block doesn't retain the tile obtained from the cache.

@Gerard-R-G I am no longer an active maintainer of this project so I can't accept/merge your pull requests. You may want to look into forking this repo.

Suspected that was the case.  I'm just setting up the pull requests first and then seeing if I can get access to the repo itself before going with a fork.  Thanks for commenting.  If you know who the maintainer is let me.  Thanks.


liveliness check "start checking after" cannot be changed

Rancher versions:
rancher/server or rancher/rancher:  2.0.4
rancher/agent or rancher/rancher-agent:  2.0.4
Docker version: (docker version,docker info preferred)
Containers: 115
Running: 86
Paused: 0
Stopped: 29
Images: 18
Server Version: 17.03.2-ce
Storage Driver: zfs
Zpool: bpool
Zpool Health: ONLINE
Parent Dataset: bpool/docker
Space Used By Parent:<PHONE_NUMBER>
Space Available:<PHONE_NUMBER>05280
Parent Quota: no
Compression: lz4
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
Volume: local
Network: bridge host macvlan null overlay
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 4ab9917febca54791c5f071a9d1f404867857fcc
runc version: 54296cf40ad8143b62dbcaa1d90e520a2136ddfe
init version: 949e6fa
Security Options:
apparmor
seccomp
Profile: default
Kernel Version: 4.4.0-128-generic
Operating System: Ubuntu 16.04.4 LTS
OSType: linux
Architecture: x86_64
CPUs: 64
Total Memory: 377.8 GiB
Name: titan
ID: QWKU:GTNJ:GDXZ:KHLW:J2ON:FJU5:ZTRN:ZHMR:UXSP:U7EP:ZIOT:ROHZ
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Experimental: false
Insecure Registries:
jupiter:6000
<IP_ADDRESS>/8
Live Restore Enabled: false
Operating system and kernel: (cat /etc/os-release, uname -r preferred)
$ uname -r
4.4.0-128-generic
$ cat /etc/os-release
NAME="Ubuntu"
VERSION="16.04.4 LTS (Xenial Xerus)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 16.04.4 LTS"
VERSION_ID="16.04"
HOME_URL="http://www.ubuntu.com/"
SUPPORT_URL="http://help.ubuntu.com/"
BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/"
VERSION_CODENAME=xenial
UBUNTU_CODENAME=xenial
Type/provider of hosts: (VirtualBox/Bare-metal/AWS/GCE/DO)
bare metal
Setup details: (single node rancher vs. HA rancher, internal DB vs. external DB)
single node rancher.
Environment Template: (Cattle/Kubernetes/Swarm/Mesos)
kubernetes
Steps to Reproduce:

Go to a pod that is running and have a liveliness check defined.   Mine is:

Command:  /bin/false
start checking after:  700 seconds

While the pod is running, change the "start checking after" field to a different number like 1000
Click "Upgrade"
Edit the pod again and look at the liveliness check.  It will be the same as before.

The way I work around this is to remove the liveliness check, upgrade, then edit and put it back in the way I want it changed.

I guess only newly created pods after you upgrade the workload will have the new  start checking after value.

Please let us know in a comment if you can still reproduce the issue, and we'll reopen it


LIVE-3703 Disable countervalue for Cardano tokens unsupported in CoinGecko

📝 Description
It's all in the title.
❓ Context

Impacted projects: @ledgerhq/cryptoassets
Linked resource(s): https://ledgerhq.atlassian.net/browse/LIVE-3703

✅ Checklist

[ ] Test coverage
[x] Atomic delivery
[x] No breaking changes

📸 Demo
Accounts screen

Token account screen

🚀 Expectations to reach

Error on bot need to reregen

did you run the integration tests too?

did you run the integration tests too?

Good point :+1: run started here:
https://github.com/LedgerHQ/ledger-live/actions/runs/3249025560

@gre these errors seem to exist on develop as well... :cry: (at least I don't think I see new ones?)
https://github.com/LedgerHQ/ledger-live/actions/runs/3248888825/jobs/5330640427
That's the main issue with integration tests, we never managed to stabilize them yet.

Errors on integ tests aren't related to this PR.
Validated by QA, merging to avoid blocking this work, tests will be addressed separately.


Bug using image 512 for tilesize 256 on mobile safari 13 in IOS 12.5

[x] I've looked at the documentation to make sure the behavior is documented and expected
[x] I'm sure this is a Leaflet code issue, not an issue with my own code nor with the framework I'm using (Cordova, Ionic, Angular, React…)
[x] I've searched through the issues to make sure it's not yet reported

Steps to reproduce
Steps to reproduce the behavior:

Upload tileLayer with size 512x512 to CDN
Create map and add tileLayer with tileSize default 256px using URL image 512px
Not working on safari 13(IOS <14) but working on safari 14(IOS >=14)

Expected behavior

tileLayer(image size 512px) is still displayed

Current behavior

tileLayer(image size 512px) not load on safari 13(IOS <14) but working on safari 14(IOS >=14)

Environment

Leaflet version: 1.7.1
Browser (with version): Mobile Safari 13
OS/Platform (with version): IOS / Safari 13

Additional context

Minimal example reproducing the issue
Please create an example using https://leafletjs.com/edit.html or any other jsfiddle-like site.

[ ] this example is as simple as possible
[ ] this example does not rely on any third party code

@votrunghieu can you please create a minimal example https://leafletjs.com/edit.html and share the CDN?

https://plnkr.co/edit/cBd8Fjwp8TZIyYJA
Please access your demo by this link. I’m check on iphone 6,7,8 (ios<14) by
safari browser but it working when i upgrate ios to >14 .
Vào Th 4, 23 thg 2, 2022 lúc 12:41 Florian Bischof @.***>
đã viết:

@votrunghieu https://github.com/votrunghieu can you please create a
minimal example https://leafletjs.com/edit.html and share the CDN?
—
Reply to this email directly, view it on GitHub
https://github.com/Leaflet/Leaflet/issues/8020#issuecomment-1048464755,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACZUXIILD4OLZV4KE5PFCM3U4RXPFANCNFSM5PDCTGOA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you were mentioned.Message ID:
@.***>

--
Thanks & regards
-- SDT :<PHONE_NUMBER>4

Not working on safari 13(IOS <14) but working on safari 14(IOS >=14)

I don't see any reason to keep this issue open, since the bug is not present on iOS 14 or later.


Should emulator be capitalized?

The Bot Framework Emulator is a proper name. Should it be capitalized above?

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

ID: dfaad3f2-75c5-e958-4734-8925d03d95c6
Version Independent ID: 8d98b390-5368-1fa4-8cce-3b0cff252eaa
Content: Create a bot using Bot Builder SDK for JavaScript - Bot Service
Content Source: articles/javascript/bot-builder-javascript-quickstart.md
Service: bot-service
Product: bot-framework
GitHub Login: @JonathanFingold
Microsoft Alias: jonathanfingold

Fixed. This update should go live in a few days.


Convert Two or Three Row Address into Single Row Two or Three Column Address

I want to do this too. Currently I dont think you can do it with Tabular.
What I doing is as follow in Excel.
Copy the data area then Right Click > Paste (Transpose)
This will convert it from
Name
Address
to
Name | Address


Improve error logs for notation sign

What is not working as expected?
This issue summarizes the error messages of notation sign that I suggest improving in v1.1.x.
Sign an artifact with an non-existing signing key in a key vault
Current behavior and output:
$ notation sign localhost:5000/test-repo:v1  --signature-format cose --plugin wabbitnetworks-kv --id https://feynman-kv.vault.wabbit.net/keys/feynmankv-networks-io/6670ffa5cb694c49b1e0a6bb6bdefaaa
Warning: Always sign the artifact using digest(@sha256:...) rather than a tag(:v1) because tags are mutable and a tag reference can point to a different artifact than the one signed.
Error: describe-key command failed: ERROR: A certificate with (name/id) feynmankv-networks-io/versions/6670ffa5cb694c49b1e0a6bb6bdefaaa was not found in this key vault. If you recently deleted this certificate you may be able to recover it using the correct recovery command. For help resolving this issue, please see https://go.wabbit.net/fwlink/?linkid=2125182
Status: 404 (Not Found)
ErrorCode: CertificateNotFound

Content:
{"error":{"code":"CertificateNotFound","message":"A certificate with (name/id) feynmankv-networks-io/versions/6670ffa5cb694c49b1e0a6bb6bdefaaa was not found in this key vault. If you recently deleted this certificate you may be able to recover it using the correct recovery command. For help resolving this issue, please see https://go.wabbit.net/fwlink/?linkid=2125182"}}

Headers:
Cache-Control: no-cache
Pragma: no-cache
x-ms-keyvault-region: eastus
x-ms-client-request-id: a2923244-ed47-461b-9dc1-d0b9f4202788
x-ms-request-id: 96103d99-c372-449f-adba-8d24b7d5da7e
x-ms-keyvault-service-version: 1.9.1116.1
x-ms-keyvault-network-info: conn_type=Ipv4;addr=<IP_ADDRESS>;act_addr_fam=InterNetwork;
X-Content-Type-Options: REDACTED
Strict-Transport-Security: REDACTED
Date: Wed, 13 Dec 2023 07:27:33 GMT
Content-Length: 376
Content-Type: application/json; charset=utf-8
Expires: -1

Suggested error message:
$ notation sign localhost:5000/test-repo:v1  --signature-format cose --plugin wabbitnetworks-kv --id https://feynman-kv.vault.wabbit.net/keys/feynmankv-networks-io/6670ffa5cb694c49b1e0a6bb6bdefaaa
Warning: Always sign the artifact using digest(@sha256:...) rather than a tag(:v1) because tags are mutable and a tag reference can point to a different artifact than the one signed.
Error response from server: A certificate with (name/id) feynmankv-networks-io/versions/6670ffa5cb694c49b1e0a6bb6bdefaaa was not found in this key vault.
Please make sure the certificate is available in the key vault. Use "--verbose" to see detailed logs.

Sign an artifact with an error signature format parameter
Current behavior and output:
$ notation sign localhost:5000/test-repo:v1  --signature-format cosee
Error: signature format "cosee" not supported

Suggested error message:
$ notation sign localhost:5000/test-repo:v1  --signature-format dsse
Error: signature format "dsse" not supported
Please use the supported signature envelope format "jws" or "cose"

What did you expect to happen?
See above
How can we reproduce it?
See above
Describe your environment
Linux Ubuntu 22.06
What is the version of your Notation CLI or Notation Library?
v1.0.1

Sign an artifact with an non-existing signing key in a key vault: this issue is resolved in notation-azure-kv plugin https://github.com/Azure/notation-azure-kv/pull/150
Sign an artifact with an error signature format parameter：this issue will be resolved in #925


Evaluation results by batch?

Hi,
I am just launching again the roberta model, and I just realized that the evaluation results are printed several times and showing different numbers, maybe by evaluation batch size? Is the last the average?

If eval_all_checkpoints is set to True in the args dict, then the evaluation will be run for all the checkpoints. A checkpoint will be made at every step given by save_steps, i.e for "save_steps": 2000, the model will be saved at every 2000 steps. You can check the outputs directory to see the checkpoints. The final output of the evaluation results is the evaluation results of the final model.

Meaning that the last printed output (tagged as ***** Eval results outputs *****) is the final output right?

In the previous screenshot would be 0.9294993661807587?

Yes, exactly.

Great, thanks


add UI for parsing source files into the type view

Just like IDA pro, you can use the JNI type

You can do that with the following API: https://api.binary.ninja/binaryninja.platform-module.html#binaryninja.platform.Platform.parse_types_from_source_file
That said, we should add a UI element for it to make it easier to find, so I'm editing your title to make this issue now track that.

I made a mistake while using it
------------------ 原始邮件 ------------------
发件人<EMAIL_ADDRESS>发送时间: 2020年7月2日(星期四) 凌晨2:19
收件人<EMAIL_ADDRESS>抄送<EMAIL_ADDRESS><EMAIL_ADDRESS>主题: Re: [Vector35/binaryninja-api] How to import C header file (#1796)
You can do that with the following API: https://api.binary.ninja/binaryninja.platform-module.html#binaryninja.platform.Platform.parse_types_from_source_file
That said, we should add a UI element for it to make it easier to find, so I'm editing your title to make this issue now track that.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

Can you be more specific? Is it not working for you? How does it fail if not?

This was done with the release of 3.3 (Import Header File)


Unexpected analyzer message when using unary minus and list access operators together

I have this code:
void main() {
  final a = <num>[1];
  final b = -a[0];
  print(b);
}

Additionally, implicit dynamic and implicit casts are disabled in analysis_options.yaml.
Running dartanalyzer gives the message Missing variable type for 'b'.. Expected behavior is no message.
Executing the code prints -1 as expected.
Dart VM version: 2.7.2 (Mon Mar 23 22:11:27 2020 +0100) on "macos_x64"

Perhaps the same issue as https://github.com/dart-lang/sdk/issues/36055

This has been fixed.


Changed the field names according to new standards

What & why?
Changed the field names in POST and GET calls, as development instance requires app name as scope.

Tested the same on the dev instance i.e., https://ven01306.service-now.com (from which we'll be deploying the app service now store)


[Docs] Add community docs

This PR:

Add a section to the documentation where we can reference some docTR community created resources

Any feedback is welcome :hugs:

CC @cmoscardi

Looks awesome, thank you!!


About the intention point file.

Dear Author,
Thanks for your great work. When do training, a bug is reported as "No file 'cluster_64_center_dict.pkl'". I wonder where I can find it or should we generate the intention point file by some commands? Looking forward to your reply.

You can find the file here: https://github.com/sshaoshuai/MTR/tree/master/data/waymo

Oh, I see. I deleted it by mistake when doing data preprocessing. Really thanks for the kind reply.


i18n(de): translate guides/pages

Description
Translation of guides/pages.mdx into German language.

Lunaria Status Overview
🌕 This pull request will trigger status changes.

Learn more
By default, every PR changing files present in the Lunaria configuration's files property will be considered and trigger status changes accordingly.
You can change this by adding one of the keywords present in the ignoreKeywords property in your Lunaria configuration file in the PR's title (ignoring all files) or by including a tracker directive in the merged commit's description.

Tracked Files

Locale
File
Note

de
guides/pages.mdx
Localization added, will be marked as complete.

Warnings reference

Icon
Description

🔄
The source for this localization has been updated since the creation of this pull request, make sure all changes in the source have been applied.

Links fixed in #2458, #2470 and #2480

Thanks for the review, should be good to go!


Branch coverage is off somehow. Because of super?

Hi,
Great workshop!
I noticed that my test coverage is 100% on almost everything, but not for % Branch in Toggle.js and CustomerList.js. In Toggle.js I get 5/6 branches coverage, in CustomerList.js I get 3/4 branches coverage. I don't hink I did anything wrong, I also get these coverages when I switch to the master branch. It might be the nyc/istanbul version. I see there is an issue that I think is causing this.
How could I go about and fix this in your example files?
Thanks!
Martijn

Hi! Actually, I recommend against using AVA these days. It has some serious perf issues. Instead, I recommend you use Jest (I have a jest version of this repo here: https://github.com/kentcdodds/react-jest-workshop). Learn more about Jest here: http://kcd.im/egghead-jest
If you want to try to fix this, I'm happy to accept a pull request. God luck!

Thanks! Will have a look at jest right away ;)


please help

waqi: Error on device update!
6:19:06 PM – (ERROR) Sensor - message first occurred at 6:19:06 PM and shows up 14 times
Setup of light platform xiaomi_miot_raw is taking over 10 seconds.
6:19:06 PM – (WARNING) Light - message first occurred at 6:19:06 PM and shows up 2 times
Setup of switch platform adguard is taking over 10 seconds.
6:19:06 PM – (WARNING) Switch - message first occurred at 6:19:06 PM and shows up 8 times
Setup of climate platform xiaomi_miot_raw is taking over 10 seconds.
6:19:06 PM – (WARNING) Climate - message first occurred at 6:19:06 PM and shows up 2 times
Setup of fan platform xiaomi_miot_raw is taking over 10 seconds.
6:19:06 PM – (WARNING) Fan - message first occurred at 6:19:06 PM and shows up 10 times
Setup of select platform xiaomi_miot_raw is taking over 10 seconds.
6:19:06 PM – (WARNING) Select - message first occurred at 6:19:06 PM and shows up 21 times
Setup of number platform xiaomi_miot_raw is taking over 10 seconds.
6:19:06 PM – (WARNING) Number - message first occurred at 6:19:06 PM and shows up 21 times
Setup of media_player platform xiaomi_miot_raw is taking over 10 seconds.
6:19:06 PM – (WARNING) Media player - message first occurred at 6:19:06 PM and shows up 4 times
Setup of binary_sensor platform xiaomi_miot_raw is taking over 10 seconds.
6:19:06 PM – (WARNING) Binary sensor - message first occurred at 6:19:06 PM and shows up 8 times
Setup of sensor platform waqi is taking over 10 seconds.
6:19:06 PM – (WARNING) Sensor - message first occurred at 6:19:06 PM and shows up 9 times
Got error when receiving: timed out
6:19:05 PM – (ERROR) /usr/local/lib/python3.9/site-packages/miio/miioprotocol.py

Hello,
Those "taking over 10 seconds" doesn't matter as it takes time to login your account to Xiaomi Cloud server.
waqi: Error on device update! What is this?

2021-09-22 14:55:18 ERROR (MainThread) [homeassistant.components.sensor] waqi: Error on device update!
Traceback (most recent call last):
File "/usr/local/lib/python3.9/site-packages/waqiasync/init.py", line 47, in _get
resp = yield from self._session.get(
File "/usr/local/lib/python3.9/site-packages/aiohttp/client.py", line 520, in _request
conn = await self._connector.connect(
File "/usr/local/lib/python3.9/site-packages/aiohttp/connector.py", line 535, in connect
proto = await self._create_connection(req, traces, timeout)
File "/usr/local/lib/python3.9/site-packages/aiohttp/connector.py", line 892, in _create_connection
_, proto = await self._create_direct_connection(req, traces, timeout)
File "/usr/local/lib/python3.9/site-packages/aiohttp/connector.py", line 1020, in _create_direct_connection
transp, proto = await self._wrap_create_connection(
File "/usr/local/lib/python3.9/site-packages/aiohttp/connector.py", line 969, in _wrap_create_connection
return await self._loop.create_connection(*args, **kwargs) # type: ignore # noqa
File "/usr/local/lib/python3.9/asyncio/base_events.py", line 1081, in create_connection
transport, protocol = await self._create_connection_transport(
File "/usr/local/lib/python3.9/asyncio/base_events.py", line 1111, in _create_connection_transport
await waiter
asyncio.exceptions.CancelledError
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 431, in _async_add_entity
await entity.async_device_update(warning=False)
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 633, in async_device_update
await task
File "/usr/src/homeassistant/homeassistant/components/waqi/sensor.py", line 181, in async_update
result = await self._client.get_station_by_number(self.uid)
File "/usr/local/lib/python3.9/site-packages/waqiasync/init.py", line 42, in get_station_by_number
return (yield from self._get(FEED_NUMBER_URL.format(number)))
File "/usr/local/lib/python3.9/site-packages/waqiasync/init.py", line 49, in _get
return (yield from resp.json())['data']
File "/usr/local/lib/python3.9/site-packages/async_timeout/init.py", line 45, in exit
self._do_exit(exc_type)
File "/usr/local/lib/python3.9/site-packages/async_timeout/init.py", line 92, in _do_exit
raise asyncio.TimeoutError
asyncio.exceptions.TimeoutError

2021-09-22 14:55:18 ERROR (MainThread) [homeassistant.components.sensor]
waqi: Error on device update!
Traceback (most recent call last):
File "/usr/local/lib/python3.9/site-packages/waqiasync/init.py", line
47, in _get
resp = yield from self._session.get(
File "/usr/local/lib/python3.9/site-packages/aiohttp/client.py", line 520,
in _request
conn = await self._connector.connect(
File "/usr/local/lib/python3.9/site-packages/aiohttp/connector.py", line
535, in connect
proto = await self._create_connection(req, traces, timeout)
File "/usr/local/lib/python3.9/site-packages/aiohttp/connector.py", line
892, in _create_connection
_, proto = await self._create_direct_connection(req, traces, timeout)
File "/usr/local/lib/python3.9/site-packages/aiohttp/connector.py", line
1020, in _create_direct_connection
transp, proto = await self._wrap_create_connection(
File "/usr/local/lib/python3.9/site-packages/aiohttp/connector.py", line
969, in _wrap_create_connection
return await self._loop.create_connection(*args, **kwargs) # type: ignore #
noqa
File "/usr/local/lib/python3.9/asyncio/base_events.py", line 1081, in
create_connection
transport, protocol = await self._create_connection_transport(
File "/usr/local/lib/python3.9/asyncio/base_events.py", line 1111, in
_create_connection_transport
await waiter
asyncio.exceptions.CancelledError
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py",
line 431, in _async_add_entity
await entity.async_device_update(warning=False)
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 633, in
async_device_update
await task
File "/usr/src/homeassistant/homeassistant/components/waqi/sensor.py", line
181, in async_update
result = await self._client.get_station_by_number(self.uid)
File "/usr/local/lib/python3.9/site-packages/waqiasync/init.py", line
42, in get_station_by_number
return (yield from self._get(FEED_NUMBER_URL.format(number)))
File "/usr/local/lib/python3.9/site-packages/waqiasync/init.py", line
49, in _get
return (yield from resp.json())['data']
File "/usr/local/lib/python3.9/site-packages/async_timeout/init.py",
line 45, in exit
self._do_exit(exc_type)
File "/usr/local/lib/python3.9/site-packages/async_timeout/init.py",
line 92, in _do_exit
raise asyncio.TimeoutError
asyncio.exceptions.TimeoutError
ha0y @.***> 於 2021年9月22日 週三 下午11:11寫道：

Hello,
Those "taking over 10 seconds" doesn't matter as it takes time to login
your account to Xiaomi Cloud server.
waqi: Error on device update! What is this?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/ha0y/xiaomi_miot_raw/issues/257#issuecomment-925024743,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AVQNKJXTCPVQPMZIBSIWU43UDHW2ZANCNFSM5EOBNOGA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.


Do not forward websocket close codes that are invalid on the wire

Fixes #133
Mirrors the behavior of AWS' ALB. If the client TCP connection closes without a close frame, just close the underlying TCP connection gracefully.

Is the test failure related? It doesn't look like it to me.

@jd3nn1s amend (no-edit) your commit to relaunch the build.
The failure is not related to your changes, it's a flaky test (#125)

Another try? I'm also looking forward for this fix :)

I've actually retried 10 times; it failed every time. Looks like there are a few different combinations of test failure.

I fix the problem on master, could you rebase?

This is passing now.


about the settings in paper

I saw the text prompt "Tony Stark wearing blue suit walking forwards"
in this condition, the result of Text2mesh should like this

but I got this , with the default settings of ninja demo in text2mesh

can you tell me about the setting of the experiment between Text2mesh and Clip-Actor while using this text promt.

@lai-pf
Hi there, we used the default configuration of the Text2Mesh when we get the results.
Please note that there are some randomness in Text2Mesh and CLIP-Actor, mainly during the optimization process.
Since we did not fix the cuda seed (for generating the samples), the gradient computed from your experiment and our paper's result may differ each other.


unable to resolve path outside root directory

🐛 Bug Report
our project has shared logic for Web and Native where the business logic is outside native's root dir. JS files inside native directory is able to resolve path inside the root dir (within native), however when we try to access any file outside the native folder we see an error.
To Reproduce
create a react native project (all folders inside native directory). Create a new src directory sibling to native. Create any JS file within the src folder`
Now, inside App.js file inside your native folder try accessing the JS file from src dir --
import file from '../src/file.js'

error seen:
error: bundling failed: Error: Unable to resolve module `../src/help/me` from `/Users/abanik/project/react-native-starter/native/App.js`: The module `../src/help/me` could not be found from `/Users/abanik/project/react-native-starter/native/App.js`. Indeed, none of these files exist:
  * `/Users/abanik/project/react-native-starter/src/help/me(.native||.android.js|.native.js|.js|.android.json|.native.json|.json|.android.ts|.native.ts|.ts|.android.tsx|.native.tsx|.tsx)`
  * `/Users/abanik/project/react-native-starter/src/help/me/index(.native||.android.js|.native.js|.js|.android.json|.native.json|.json|.android.ts|.native.ts|.ts|.android.tsx|.native.tsx|.tsx)`
    at ModuleResolver.resolveDependency (/Users/abanik/project/react-native-starter/native/node_modules/metro/src/node-haste/DependencyGraph/ModuleResolution.js:163:15)
    at ResolutionRequest.resolveDependency (/Users/abanik/project/react-native-starter/native/node_modules/metro/src/node-haste/DependencyGraph/ResolutionRequest.js:52:18)
    at DependencyGraph.resolveDependency (/Users/abanik/project/react-native-starter/native/node_modules/metro/src/node-haste/DependencyGraph.js:283:16)
    at Object.resolve (/Users/abanik/project/react-native-starter/native/node_modules/metro/src/lib/transformHelpers.js:261:42)
    at dependencies.map.result (/Users/abanik/project/react-native-starter/native/node_modules/metro/src/DeltaBundler/traverseDependencies.js:399:31)
    at Array.map (<anonymous>)
    at resolveDependencies (/Users/abanik/project/react-native-starter/native/node_modules/metro/src/DeltaBundler/traverseDependencies.js:396:18)
    at /Users/abanik/project/react-native-starter/native/node_modules/metro/src/DeltaBundler/traverseDependencies.js:269:33
    at Generator.next (<anonymous>)
    at asyncGeneratorStep (/Users/abanik/project/react-native-starter/native/node_modules/metro/src/DeltaBundler/traverseDependencies.js:87:24)

Expected Behavior
able to resolve path
Code Example
import React from 'react';
import { View, StyleSheet, Text } from 'react-native';
import me from '../src/help/me'

export default function App() {
return (
  <View>
    <Text>
      hello world
    </Text>
  </View>
);
}

const styles = StyleSheet.create({
container: {
  flex: 1,
  justifyContent: 'center',
  alignItems: 'center',
  backgroundColor: 'white',
},
});

Environment
 React Native Environment Info:
    System:
      OS: macOS 10.14.3
      CPU: (8) x64 Intel(R) Core(TM) i7-7820HQ CPU @ 2.90GHz
      Memory: 64.96 MB / 16.00 GB
      Shell: 5.3 - /bin/zsh
    Binaries:
      Node: 8.11.4 - ~/.nvm/versions/node/v8.11.4/bin/node
      Yarn: 1.10.1 - /usr/local/bin/yarn
      npm: 5.6.0 - ~/.nvm/versions/node/v8.11.4/bin/npm
      Watchman: 4.9.0 - /usr/local/bin/watchman
    SDKs:
      iOS SDK:
        Platforms: iOS 12.2, macOS 10.14, tvOS 12.2, watchOS 5.2
    IDEs:
      Android Studio: 3.3 AI-182.5<IP_ADDRESS>14842
      Xcode: 10.2/10E125 - /usr/bin/xcodebuild
    npmPackages:
      react: 16.8.3 => 16.8.3
      react-native: 0.59.4 => 0.59.4
    npmGlobalPackages:
      react-native-cli: 2.0.1

Hey @abanik0831 thanks for filing this issue.
This is the correct default behaviour for metro. You can, however, update your metro.config.js to support multiple roots using the watchFolders configuration property. Here's an example:
const { resolve } = require('path');

const config = {
  // ... other config items
  watchFolders: [
    resolve(__dirname, '.'),        // your 'native' directory
    resolve(__dirname, '../src'),   // your '../src' directory
  ],
};

module.exports = config;

Hope this helps. Thanks.

hi friends,i have same issue,how to fix this?

RN 0.61.2, tried
module.exports = {
  resolver: {
    sourceExts: ['ts', 'tsx', 'js', 'jsx']
  },
  projectRoot: path.resolve(__dirname),
  watchFolders: [
    path.resolve(__dirname, '../common')
  ],
  transformer: {
    getTransformOptions: async () => ({
      transform: {
        experimentalImportSupport: false,
        inlineRequires: false,
      },
    }),
  },
}

does not work, need a fix ASAP.


Context view is undefined

I use mustache in a nodejs application as dependency of mustache-express.
I get this error:
.../node_modules/mustache/mustache.js:448
          intermediateValue = context.view[name];
                                          ^

TypeError: Cannot read property 'title' of undefined
    at Context.lookup (...\node_modules\mustache\mustache.js:448:43)
    at Writer.renderSection (...\node_modules\mustache\mustache.js:575:25)
    at Writer.renderTokens (...\node_modules\mustache\mustache.js:558:40)
    at Writer.renderSection (...\node_modules\mustache\mustache.js:587:24)
    at Writer.renderTokens (...\node_modules\mustache\mustache.js:558:40)
    at Writer.renderSection (...\node_modules\mustache\mustache.js:601:22)
    at Writer.renderTokens (...\node_modules\mustache\mustache.js:558:40)
    at Writer.renderPartial (...\node_modules\mustache\mustache.js:638:19)
    at Writer.renderTokens (...\node_modules\mustache\mustache.js:560:45)
    at Writer.renderInverted (...\node_modules\mustache\mustache.js:612:19)

My template code that generate this issue is:
{{#hasClusters}}

SERVIZI E DETTAGLI

        {{#clusters}}
          {{#title}} {{! <- THIS IS THE PROPERTY THAT GENERATE THE ERROR}}

{{title}}

              {{#items}}

{{value}}

              {{/items}}

          {{/title}}
        {{/clusters}}

{{/hasClusters}}

I have sure that the input JSON contains the 'clusers' array with n objects with 'title' attribute.
To solve the issue I found a workaround: i have replaced {{#clusters}} with {{#clusters}}{{#.}} ... {{/.}}{{/clusters}} this change the mustache context and solve the issue.
However, before I try to solve this issue in mustache (mustache.js); I change the following 'else'
	if (name.indexOf('.') > 0) {
         ...
        } else {
          intermediateValue = context.view[name]; // <-- ERROR IS THROW HERE!!!!

          /**
           * Only checking against `hasProperty`, which always returns `false` if
           * `context.view` is not an object. Deliberately omitting the check
           * against `primitiveHasOwnProperty` if dot notation is not used.
           *
           * Consider this example:
           * ```
           * Mustache.render("The length of a football field is {{#length}}{{length}}{{/length}}.", {length: "100 yards"})
           * ```
           *
           * If we were to check also against `primitiveHasOwnProperty`, as we do
           * in the dot notation case, then render call would return:
           *
           * "The length of a football field is 9."
           *
           * rather than the expected:
           *
           * "The length of a football field is 100 yards."
           **/
          lookupHit = hasProperty(context.view, name);
        }

	if (lookupHit) {
          value = intermediateValue;
          break;
        }

        context = context.parent;

with
else if(context.view!==undefined)  {...}

With this condition the lookup fails (lookupHit is false) and at the next iteration context.view['title'] is the correct title.
I've used the second solution only for understand how i can solve the issue into my code, and I not really sure that it's a good solution.
I hope that my explanation is adequate to help you to solve this issue.
Antonino

I found the cause of the given error. The 'customers' array has a wrong length because of a delete operation of an array item. I've replaced delete with a slice and the error is fixed.
Antonino

Cool, good to hear you found the culprit and remembered to close this issue 👍


Proxy is broken

Apparently the proxy is never used; the original code path that uses proxy is obsolete.

Sorry, I may not be able to solve this problem. Because these proxies or mirror servers are provided by third parties, I have no control over them if they go wrong.
However, you can also enter your own proxy or mirror server, OCAT supports custom proxy or mirror server.


OAuth refresh tokens not persisting between sessions

The mcp-gsuite server is requiring users to re-authorize through Google's OAuth flow on each session, even though refresh tokens are being stored. The server attempts to store and use refresh tokens using oauth2client's mechanisms, but authorization is not being maintained.
Steps to reproduce:
Authorize the mcp-gsuite server with Google
Use any gsuite tool (e.g. list-calendar-events)
Close and restart the server
Try to use a gsuite tool again - it requires re-authorization
Expected: The server should use the stored refresh token to maintain authorization
Actual: The server prompts for re-authorization on each session
This appears to be related to either:
Token storage location issues (working directory related)
Mixing of oauth2client and google.auth libraries
OAuth flow parameters not correctly configured for offline access
The issue significantly impacts usability as users need to frequently re-authenticate.

Mh this is weird. I dont have this issue.
Which OS are you using? And can you please check the .oauth2.*.json files in your working dir? Do they contain a refresh token?


Selector: Fix computed "fixIos" typeof error; Remove useless ":ddd"

Selector: Fix computed "fixIos" typeof error; Remove useless ":ddd"
Please makes sure the items are checked before submitting your PR, thank you!

[x] Rebase before creating a PR to keep commit history clear.


Add IAM Authentication to dbt-postgres

closes https://github.com/dbt-labs/docs.getdbt.com/issues/3798
What are you changing in this pull request and why?
This change is connected to https://github.com/dbt-labs/dbt-core/pull/8187.
The PR adds the ability to use AWS IAM Authentication for dbt-postgres. This extends the options in the profiles.yml. The updates are documented in this PR.

Checklist

[ ] Add versioning components, as described in Versioning Docs
[ ] Add a note to the prerelease version Migration Guide
[x] Review the Content style guide and About versioning so my content adheres to these guidelines.
[ ] Add a checklist item for anything that needs to happen before this PR is merged, such as "needs technical review" or "change base branch."

Hi there @christopherscholz you can @mention me when this is ready for review and I will triage it to a writer and devX duo.

Removed this from 1.7 milestone added related issue to 1.8 for now

The attached issue in the Core repo was closed on April 10th (due to the decoupling of adapters). There was not a new one attached and since this has been in draft for a little over a year, I am closing this as well.
If we need to revisit, we can absolutely re-open this.


add descriptions

Each item should have a description alongside its link, like this.
Often times a title alone isn't enough to describe, or there may be duplicate titles.

Agree with you, i saw that you have already opened a pull request for this, thanks!

I got started on the boilerplate section only 😄
I figure that there's no need to keep repeating Inferno so I've removed its mention every time.

Just like in this  example you have shown, names are repeated, like the name of the repository itself


Shell completion

clap_complete seems to have worked fine for me.
Could generate the completion scripts and print them from rye self completion or something for a first pass.

I'm in favor of that.


qtivi-mopidy-plugin bump and minimal image build fix

Consider to move qtivi-mopidy-plugin from core-image-pelux-qtauto.bbclass to layers/b2qt/recipes-core/images/core-image-pelux-qtauto-neptune<-dev>.bb.
And consider to move mopidy from core-image-pelux-minimal.bbclass to recipes-core/images/core-image-pelux-minimal<-dev>.bb.
Main reason for this is to not have Mopidy in all PELUX-based images. It does not make sense to have mopidy on a non-IVI system like e.g. telematics.
An option would be to use DISTRO_FEATURES to enable mopidy, and to define mopidy in the relevant bb-files.

Consider to move qtivi-mopidy-plugin from core-image-pelux-qtauto.bbclass to layers/b2qt/recipes-core/images/core-image-pelux-qtauto-neptune<-dev>.bb.
And consider to move mopidy from core-image-pelux-minimal.bbclass to recipes-core/images/core-image-pelux-minimal<-dev>.bb.
Main reason for this is to not have Mopidy in all PELUX-based images. It does not make sense to have mopidy on a non-IVI system like e.g. telematics.
An option would be to use DISTRO_FEATURES to enable mopidy, and to define mopidy in the relevant bb-files.

Having DISTRO_FEATURES might be a good thing to do, but I do not understand why you want Mopidy to be moved to -dev images.

Consider to move qtivi-mopidy-plugin from core-image-pelux-qtauto.bbclass to layers/b2qt/recipes-core/images/core-image-pelux-qtauto-neptune<-dev>.bb.
And consider to move mopidy from core-image-pelux-minimal.bbclass to recipes-core/images/core-image-pelux-minimal<-dev>.bb.
Main reason for this is to not have Mopidy in all PELUX-based images. It does not make sense to have mopidy on a non-IVI system like e.g. telematics.
An option would be to use DISTRO_FEATURES to enable mopidy, and to define mopidy in the relevant bb-files.

Having DISTRO_FEATURES might be a good thing to do, but I do not understand why you want Mopidy to be moved to -dev images.

Well, this is what happens today since the dev-images inherits core-image-pelux.bbclass where it currently is included by default.
Issue OAI1209-565 is a planned story which purpose is to define which image variants we shall have and what they shall include. For now, let's do what is required to make images to build.


Can't add device

Getting this error:
Logger: custom_components.hifiberry.config_flow
Source: custom_components/hifiberry/config_flow.py:23
Integration: hifiberry (documentation)
First occurred: 00:15:29 (3 occurrences)
Last logged: 00:53:34

Unexpected exception
Traceback (most recent call last):
  File "/config/custom_components/hifiberry/config_flow.py", line 69, in async_step_user
    await validate_input(self.hass, user_input)
  File "/config/custom_components/hifiberry/config_flow.py", line 23, in validate_input
    await Audiocontrol2SIO.connect(host=data["host"], port=data["port"])
  File "/usr/local/lib/python3.9/site-packages/pyhifiberry/audiocontrol2sio.py", line 38, in connect
    await sio.connect(f'http://{host}:{port}', wait_timeout=wait_timeout)
TypeError: connect() got an unexpected keyword argument 'wait_timeout'

I think this is due to the fact that pyhifiberry version 0.0.4 is still used instead of 0.1.0.

Hi @fjfricke
unfortunately the homeassistant guys pinned the python-socketio version to an older version than pyhifiberry needs. If you are interested in details have a look at this issue. Because they will not revert this in favor of hifiberry I have to make a pyhifiberry release that includes python-socketio code as recommended here.


Enum with companion object issue

KtLint version 0.47.1
enum class Test(val code: Int) {
  First(1),
  Second(2); // <<This record is correct for compiler, but ktlint wait ', ;' (comma with space) in the end
  companion object {
    fun printHello() {
      println("Hello")
    }
  }

Yes that is correct when ij_kotlin_allow_trailing_comma has been set to true. Idea is that when adding a new entry to the enum after entry Second will not cause a git-change on that line as it won't change. This behavior is not identical with default formatting of IntelliJ IDEA but it does not conflict.

But if you add new entry you must move ; to next line. Why don't use just ; in the end? Comma is useful in this line


Avoid use C-in the array.

Codecov Report

Merging #244 (9fd4c6e) into master (f23f67f) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master     #244   +/-   ##
=========================================
  Coverage     89.02%   89.02%
  Complexity     3536     3536
=========================================
  Files           183      183
  Lines          9653     9653
  Branches       1197     1197
=========================================
  Hits           8594     8594
  Misses          777      777
  Partials        282      282

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


Persist open tabs on, e.g., citizen info/profile, using URL hash and https://headlessui.com/react/tabs#controlling-the-active-tab

This doesn't seem to be easily doable, as tabs are shown based on permissions.
The headlessui tabs system only returns the index and not the name or other info about the active tab..

Closing as not easily possible with HeadlessUI.


Possible issue with randomness in augmentations

I've just noticed that adding this function:
def worker_init_fn(worker_id: int):
    lhotse.utils.fix_random_seed(42 + worker_id)

in dataloader: DataLoader(..., worker_init_fn=worker_init_fn)
results in (significantly) different training losses, for me they were much higher. I think that in the current training there might be some repetitive patterns in augmentation which make it easier for the model to train against. Would be great if somebody here could try it out on some recent model and confirm if I'm right or not.

… and for multi GPU training it might be needed to also add the rank value * 100 or sth similar.

Hm.  I think this is problematic because it does not take into account the epoch, and would not be at all repeatable.  (?)
is worker_id a process-id, or the rank?

... Also, at the start of every epoch in the main process we do fix_random_seed(), and we know this makes a difference because of our recent experience with the checkpoint-code changes.  So I'm a bit confused now.  Perhaps the fix_random_seed() affected the SpecAug but not the data selection, or something like that?

I'm trying setting the seed like this:
        # 'seed' is derived from the current random state, which will have previously been
        # set in the main process.
        seed = torch.randint(0, 100000, ()).item()
        def worker_init_fn(worker_id: int):
            lhotse.utils.fix_random_seed(seed + worker_id)

There appears to be a problem with this, as in lhotse's init.py it does from augmentation import *, which imports utils, but that makes lhotse/utils .py unavailable.

I think the current version of lhotse is not functional for this reason

Hm. I think this is problematic because it does not take into account the epoch, and would not be at all repeatable. (?)

We could use lhotse.utils.fix_random_seed(seed + epoch + 100 * worker_id + 10000 * gpu_id) for dataloading workers to make it epoch dependent. We'd also need to account for GPU id so that each GPU sees data transformed differently.

is worker_id a process-id, or the rank?

worker_id is an int between (0, num_workers - 1), each dataloder worker is a separate process which can set its own global RNG states.

... Also, at the start of every epoch in the main process we do fix_random_seed(), and we know this makes a difference because of our recent experience with the checkpoint-code changes. So I'm a bit confused now. Perhaps the fix_random_seed() affected the SpecAug but not the data selection, or something like that?

My understanding is that:

fix_random_seed called in the main process will affect data selection
fix_random_seed called in dataloader workers will affect augmentation transforms

There appears to be a problem with this, as in lhotse's init.py it does from augmentation import *, which imports utils, but that makes lhotse/utils .py unavailable.

I'll look into it and find a fix.

Rather than finding the gpu_id, I think my approach of just calling torch.randint(()) to get the seed may be easier, as it is naturally affected by higher-level setting of seeds.
BTW, I did run with the new seed-setting code that I showed above (modified to use from lhotse.utils import fix_random_seed.  WER and train loss were perhaps a little better, but I'm not 100% convinced it wasn't just random.  This was with 1 GPU, and the only augmentation was SpecAug plus Musan.

After running this for more epochs on a train-clean-100 setup, WER changes are:
baseline=6.82/17.69, fixed=6.76/17.38, on test-clean.  This is starting to get large enough that
I would consider it non-random.  @csukuangfj we might want to apply this in icefall more generally.
I am of course incorporating in my rework of the recipe, but this may not be merged for another week
so perhaps we could merge this fix earlier?  OTOH, a case for delaying is that applying the fix may
confuse experimental comparisons a bit.  Up to you.
 git diff rework2h{,_randloader}
diff --git a/egs/librispeech/ASR/tdnn_lstm_ctc/asr_datamodule.py b/egs/librispeech/ASR/tdnn_lstm_ctc/asr_datamodule.py
index a460c8e..3efe7ec 100644
--- a/egs/librispeech/ASR/tdnn_lstm_ctc/asr_datamodule.py
+++ b/egs/librispeech/ASR/tdnn_lstm_ctc/asr_datamodule.py
@@ -22,6 +22,8 @@ import logging
 from functools import lru_cache
 from pathlib import Path
 from typing import Any, Dict, Optional
+import torch
+from lhotse.utils import fix_random_seed

 from lhotse import CutSet, Fbank, FbankConfig, load_manifest
 from lhotse.dataset import (
@@ -301,12 +303,19 @@ class LibriSpeechAsrDataModule:
             logging.info("Loading sampler state dict")
             train_sampler.load_state_dict(sampler_state_dict)

+        # 'seed' is derived from the current random state, which will have previously been
+        # set in the main process.
+        seed = torch.randint(0, 100000, ()).item()
+        def worker_init_fn(worker_id: int):
+            fix_random_seed(seed + worker_id)
+
         train_dl = DataLoader(
             train,
             sampler=train_sampler,
             batch_size=None,
             num_workers=self.args.num_workers,
             persistent_workers=False,
+            worker_init_fn=worker_init_fn,
         )

         return train_dl

Thanks for looking into it.