Error creating pull request: Unprocessable Entity (HTTP 422)

I can't open a pull request with hub. This is what I do:
$ git checkout -b new_branch
( some changes here)
$ git commit -m "Test commit"
$ git push origin new_branch
$ hub pull-request

And this is what I get from the last command:
(username and password lines)
Error creating pull request: Unprocessable Entity (HTTP 422)
field 'head_sha' is missing
field 'base_sha' is missing
base No commits between user:master and user:new_branch

@mrcasals   +1  thanks!

got 422 error when the base and head branch where inverted...

I got a 422 error when attempting to make the POST request to api.github.com/${upstream}/project/pulls, instead of api.github.com/${fork}/project/pulls.

Sigh. My turn now.
I would like to create a pull request for the copy_file_metadata branch of my fork of getpelican/pelican back to getpelican.
My remotes are set up as follows:
$ git remote -v
jerryasher      git@github.com:jerryasher/pelican.git (fetch)
jerryasher      git@github.com:jerryasher/pelican.git (push)
origin  git@github.com:getpelican/pelican.git (fetch)
origin  git@github.com:getpelican/pelican.git (push)

git status suggests:
$ git status
On branch copy_file_metadata
Your branch is up-to-date with 'jerryasher/copy_file_metadata'.
nothing to commit, working directory clean

When I ask hub to make a pull request:
$ GIT_EDITOR=vi hub pull-request
Error creating pull request: Unprocessable Entity (HTTP 422)
Invalid value for "head"

I'm a bit lost...

@jerryasher Sorry you're having trouble!

What is your hub version?
What is your git config push.default?
You can debug with HUB_VERBOSE=1 hub pull-request .... You will be able to see raw HTTP requests. What parameters is hub trying to post? What API endpoint is it trying to post to?

Sorry that this is such a mess right now. I'm working on making this easier. In the meantime, you can try using explicit head:
hub pull-request -h jerryasher:copy_file_metadata

Thanks, I won't be able to get back to this until Thursday, but I
appreciate the quick reply!
On Sep 20, 2016 4:02 PM, "Mislav Marohnić"<EMAIL_ADDRESS>wrote:

@jerryasher https://github.com/jerryasher Sorry you're having trouble!

What is your hub version?
What is your git config push.default?
You can debug with HUB_VERBOSE=1 hub pull-request .... You will be
able to see raw HTTP requests. What parameters is hub trying to post? What
API endpoint is it trying to post to?

Sorry that this is such a mess right now. I'm working on making this
easier. In the meantime, you can try using explicit head:
hub pull-request -h jerryasher:copy_file_metadata
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/github/hub/issues/189#issuecomment-248461940, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAosCV5ToTvOLQ2Uhc5NdLWcUHTv4qNpks5qsGX5gaJpZM4AA238
.

Okay, so getting back, and reading about about push.default, I do sort of think at least one issue is that my git config push.default is simple not current, but I'm also getting validation failed.
So
$ hub --version
git version 2.8.3
hub version 2.2.8

git config push.default is simple
And hub fails with:
> POST https://api.github.com/repos/getpelican/pelican/pulls
> Authorization: token [REDACTED]
{"base":"master","body":"Python's shutil.copy2 fails on Android when copying a file's meta data (perm bits, access times) onto certain filesystems.\nThis is documented as python issue28141 https://bugs.python.org/issue28141\n\nThese commits workaround that bug by\n\n+ creating a new function copy_file_metadata in utils.py\n+ wrapping calls to copy2 in a try/except clause that logs any errors that occur but keep execution going\n+ changing the calls to shutil.copy2 to calls to the new function","head":"jerryasher:copy_file_metadata","title":"Python's shutil.copy2 fails on Android"}
< HTTP 422
{"message":"Validation Failed","errors":[{"resource":"PullRequest","field":"head","code":"invalid"}],"documentation_url":"https://developer.github.com/v3/pulls/#create-a-pull-request"}
Error creating pull request: Unprocessable Entity (HTTP 422)
Invalid value for "head"

The same validation error occurs even when I  point to an explicit head.
Googling for hub authentication issues, I can't see anything I am doing/did wrong. I did login a few days back with hub. I do see a ~/.config/hub that seems to have a valid token for user: jerryasher and on github itself there is a token that is described as "hub for Jerry@mybox" that has enabled scopes: repo, repo:status, repo_deployment, public_repo

The same validation error occurs even when I point to an explicit head.

Thanks for that debugging data. The parameters that hub tries to POST as a new pull request is perfectly valid. You are not able to create a pull request because, as it turns out, jerryasher/pelican isn't a fork of getpelican/pelican. I suggest you delete your pelican repo on GitHub, do hub fork, push your branch again (git push jerryasher HEAD), and try making a pull request again.

jerryasher/pelican isn't a fork of getpelican/pelican

Well that's an interesting statement! I admit I am a novice with git and github, but if I recall the pedigree of jerryasher/pelican, I cloned it from getpelican/pelican onto my local machine, setup the remotes, and then pushed onto github. I think that's what I did, but well I'm not sure.
Is that not a fork? Are you saying it's "merely" a clone, not a fork, and if so, what were you able to look at that let you know it was a clone (or whatever it is) and not a fork?

Heh. Okay, I bet amongst other things you were looking for this: forked from getpelican/pelican

Sorry, I didn't know you were new to GitHub.
A "fork" can mean two things, depending on the context:

You obtained an open source project and made changes to it. You've then created a "fork". Your changed version might not be public yet. You might choose to make it public (on a site like GitHub) or submit patches to the original maintainer(s).

You have forked a repository on GitHub. This is done via the "fork" button on GitHub.com or hub fork command. It kind of encompasses (1), but with the addition of GitHub being aware that your fork is somehow "linked" to the parent repository. GitHub pull requests are only possible from a fork to the parent repo (or another fork), or within the same repo, but they are not available between repos which aren't "linked" as forks— even though they might share the same history in git, as in your case.

I had this error too.

It seems it won't accept the slash character (/) in branch name.

git version 2.13.1
hub version 2.2.9
I get the same error. Error creating pull request: Unprocessable Entity (HTTP 422)

yes, still the same error.

Anyone who is still getting the Error creating pull request: Unprocessable Entity (HTTP 422) error:

Does the error message provide any more information other than that single line?
If you use HUB_VERBOSE=1 hub pull-request ... to enable verbose mode and inspect the raw JSON server response, does it contain any more information about what went wrong?

Thank you.

@mislav I just had this because I forgot to push to my fork before hub pull-request. Maybe a TL;DR should added to the issue text. Main reasons why it fails:

Forget to push to fork
Forget to track fork'ed branch (i.e. git push -u <my-remote> <my-new-branch>)

Does this still work, I tried all variations, all I can get is:
$ HUB_VERBOSE=1 hub pull-request -i 15 -h "oblitum:open-functionality"
$ git config alias.pull-request
$ git rev-parse -q --git-dir
$ git remote -v
$ git config --get-all hub.host
$ git config push.default
$ git rev-parse -q --git-path refs/remotes/oblitum/open-functionality
> GET https://api.github.com/repos/oblitum/extrakto
> Authorization: token [REDACTED]
< HTTP 401
{"message":"Bad credentials","documentation_url":"https://developer.github.com/v3"}
$ git rev-list --cherry-pick --right-only --no-merges oblitum/open-functionality...
> POST https://api.github.com/repos/laktak/extrakto/pulls
> Authorization: token [REDACTED]
{"base":"master","head":"oblitum:open-functionality","issue":15}
< HTTP 401
{"message":"Bad credentials","documentation_url":"https://developer.github.com/v3"}
Error creating pull request: Unauthorized (HTTP 401)
Bad credentials

git version 2.14.2
hub version 2.2.9

In my case, it was a simple mistake of not pushing the local branch to the remote origin.
Once I pushed the branch to GitHub was able to successfully create the pull-request using hub.

Quick note: this happens very easily if one follows to the line the official instructions, because those suggest using:
# push the changes to your new remote
$ git push YOUR_USER feature

where as they should read:
# push the changes to your new remote
$ git push -u YOUR_USER feature

The -u flag is missing from the instructions. This has happened already to me three or four times, and I end up here every time. There may be other causes, but I suspect if the docs are updated with that trivial fix (add -u to that line), at least some people won't stumble on this anymore...

@fperez Good catch. Mind submitting a fix for the gh-pages branch?

Why was this closed? @fperez pointed out that the official instructions miss the crucial parameter (-u).
Looking at https://hub.github.com now, the flag is still missing:
# push the changes to your new remote
$ git push origin feature

I followed those instructions for the first time today, and, sure enough, got the 422, and landed on this issue...

@lestephane Are you using the latest version of hub?
This should work:
$ git push origin HEAD
$ hub pull-request

If it doesn't, then please state some more info, such as git remote configuration and current git config push.default and git version. Thank you!

This is what I have
$ hub --version
git version 2.21.0
hub version 2.12.1

@lestephane I'm sorry, but you'll have to share more info about your error. Hub does work (this is verified by automated tests) that git push origin HEAD (no -u) and hub pull-request flow works in a common-use case, but the reason it does not work for you might be that part of your workflow is more specific or that there is an edge-case bug.
What I want to know is:

How did you push the current branch before doing hub pull-request (I'm presuming it was git push <REMOTE> <BRANCH> or git push <REMOTE> HEAD);
What is the git remote configuration for REMOTE (see git remote -v), you can anonymize the names of repositories if needed;
What is the configuration for remotes named origin, upstream, and github (if any);
Are you pushing your branch to a GitHub repository that is a fork?
What is the exact error that you get as a result of hub pull-request? You can set HUB_VERBOSE=1 to get more debugging output.

Thank you!

Here is the full reproduction showing that the instructions on https://hub.github.com/ for contributing "As a contributor to open-source" are not working for me. After the reproduction, I answer each of your questions in turn. the HUB_VERBOSE=1 output can be confusing with lines starting with dollar sign ($) which could be mistaken for commands I ran myself as part of the reproduction, so I put the verbose output at the very, very end of this comment.
Reproduction
$ hub --version
git version 2.21.0
hub version 2.12.1

$ grep "hub alias"  ~/.bashrc
eval "$(hub alias -s)"

$ git clone --depth 1 github/hub
Cloning into 'hub'...
remote: Enumerating objects: 676, done.
remote: Counting objects: 100% (676/676), done.
remote: Compressing objects: 100% (538/538), done.
remote: Total 676 (delta 162), reused 345 (delta 101), pack-reused 0
Receiving objects: 100% (676/676), 1.42 MiB | 635.00 KiB/s, done.
Resolving deltas: 100% (162/162), done.

$ git checkout -b feature
Switched to a new branch 'feature'

$ echo -e "\nnew stuff" >> README.md

$ git commit -am "done with feature"
[feature a08a79d] done with feature
 1 file changed, 2 insertions(+)

$ git fork --remote-name=origin
renaming existing "origin" remote to "upstream"
Updating origin
remote: Enumerating objects: 17667, done.
remote: Counting objects: 100% (17667/17667), done.
remote: Compressing objects: 100% (5670/5670), done.
remote: Total 17352 (delta 11605), reused 17010 (delta 11266), pack-reused 0
Receiving objects: 100% (17352/17352), 4.80 MiB | 641.00 KiB/s, done.
Resolving deltas: 100% (11605/11605), completed with 238 local objects.
From git://github.com/github/hub
 * [new branch]        1.11-stable             -> origin/1.11-stable
 * [new branch]        1.12-stable             -> origin/1.12-stable
 * [new branch]        2.2-stable              -> origin/2.2-stable
 * [new branch]        2.7-stable              -> origin/2.7-stable
...(full branch and tag listing here)
 * [new tag]           v2.8.0                  -> v2.8.0
 * [new tag]           v2.8.1                  -> v2.8.1
 * [new tag]           v2.8.2                  -> v2.8.2
 * [new tag]           v2.8.3                  -> v2.8.3
 * [new tag]           v2.8.4                  -> v2.8.4
 * [new tag]           v2.9.0                  -> v2.9.0
new remote: origin

$ git push origin feature
Enumerating objects: 22, done.
Counting objects: 100% (21/21), done.
Delta compression using up to 8 threads
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 300 bytes | 100.00 KiB/s, done.
Total 3 (delta 2), reused 0 (delta 0)
remote: Resolving deltas: 100% (2/2), completed with 2 local objects.
remote:
remote: Create a pull request for 'feature' on GitHub by visiting:
remote:      https://github.com/lestephane/hub/pull/new/feature
remote:
To github.com:lestephane/hub.git
 * [new branch]        feature -> feature

$ git pull-request
(edit the description in vim , then :wq)
Error creating pull request: Unprocessable Entity (HTTP 422)
Invalid value for "head"

$ git config -l | grep -v user.name | sort
alias.changes=log --name-status HEAD..
alias.up=pull --rebase --autostash
branch.master.merge=refs/heads/master
branch.master.remote=upstream
color.ui=auto
core.autocrlf=input
core.bare=false
core.editor=vim
core.excludesfile=/home/lestephane/.gitignore_global
core.filemode=true
core.logallrefupdates=true
core.repositoryformatversion=0
core.whitespace=cr-at-eol
credential.helper=/usr/share/doc/git/contrib/credential/gnome-keyring/git-credential-gnome-keyring
diff.tool=meld
http.postbuffer=52428800
merge.conflictstyle=diff3
merge.tool=meld
mergetool.meld.path=/usr/bin/meld
push.default=upstream
remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*
remote.origin.url=git@github.com:lestephane/hub.git
remote.upstream.fetch=+refs/heads/master:refs/remotes/upstream/master
remote.upstream.url=git://github.com/github/hub.git
user.useconfigonly=true

$ git remote -vv
origin	git@github.com:lestephane/hub.git (fetch)
origin	git@github.com:lestephane/hub.git (push)
upstream	git://github.com/github/hub.git (fetch)
upstream	git://github.com/github/hub.git (push)

Answers to your questions

How did you push the current branch before doing hub pull-request?

The way it is described at https://hub.github.com/ for contributing "As a contributor to open-source", through the git alias
$ git push origin feature

What is the git remote configuration for REMOTE?

Included in the reproduction, restated here for convenience
$ git remote -vv
origin	git@github.com:lestephane/hub.git (fetch)
origin	git@github.com:lestephane/hub.git (push)
upstream	git://github.com/github/hub.git (fetch)
upstream	git://github.com/github/hub.git (push)

Are you pushing your branch to a GitHub repository that is a fork?

Yes, since I'm following the way it is described at https://hub.github.com/ for contributing "As a contributor to open-source", which says I should do
$ git fork --remote-name=origin`

Which I did (see reproduction)

What is the exact error that you get as a result of hub pull-request? You can set HUB_VERBOSE=1 to get more debugging output.

The output of $ HUB_VERBOSE=1 git pull-request is as follows:
$ git rev-parse -q --git-dir
$ git remote -v
$ git config --get-all hub.host
$ git config push.default
$ git rev-parse --symbolic-full-name feature@{upstream}
$ git config branch.feature.remote
$ git rev-parse -q --git-path refs/remotes/origin/feature
> GET https://api.github.com/repos/github/hub
> Authorization: token [REDACTED]
> Accept: application/vnd.github.v3+json;charset=utf-8
< HTTP 200
{"id":401025,"node_id":"MDEwOlJlcG9zaXRvcnk0MDEwMjU=","name":"hub","full_name":"github/hub","private":false,"owner":{"login":"github","id":9919,"node_id":"MDEyOk9yZ2FuaXphdGlvbjk5MTk=","avatar_url":"https://avatars1.githubusercontent.com/u/9919?v=4","gravatar_id":"","url":"https://api.github.com/users/github","html_url":"https://github.com/github","followers_url":"https://api.github.com/users/github/followers","following_url":"https://api.github.com/users/github/following{/other_user}","gists_url":"https://api.github.com/users/github/gists{/gist_id}","starred_url":"https://api.github.com/users/github/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github/subscriptions","organizations_url":"https://api.github.com/users/github/orgs","repos_url":"https://api.github.com/users/github/repos","events_url":"https://api.github.com/users/github/events{/privacy}","received_events_url":"https://api.github.com/users/github/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/github/hub","description":"A command-line tool that makes git easier to use with GitHub.","fork":false,"url":"https://api.github.com/repos/github/hub","forks_url":"https://api.github.com/repos/github/hub/forks","keys_url":"https://api.github.com/repos/github/hub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/github/hub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/github/hub/teams","hooks_url":"https://api.github.com/repos/github/hub/hooks","issue_events_url":"https://api.github.com/repos/github/hub/issues/events{/number}","events_url":"https://api.github.com/repos/github/hub/events","assignees_url":"https://api.github.com/repos/github/hub/assignees{/user}","branches_url":"https://api.github.com/repos/github/hub/branches{/branch}","tags_url":"https://api.github.com/repos/github/hub/tags","blobs_url":"https://api.github.com/repos/github/hub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/github/hub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/github/hub/git/refs{/sha}","trees_url":"https://api.github.com/repos/github/hub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/github/hub/statuses/{sha}","languages_url":"https://api.github.com/repos/github/hub/languages","stargazers_url":"https://api.github.com/repos/github/hub/stargazers","contributors_url":"https://api.github.com/repos/github/hub/contributors","subscribers_url":"https://api.github.com/repos/github/hub/subscribers","subscription_url":"https://api.github.com/repos/github/hub/subscription","commits_url":"https://api.github.com/repos/github/hub/commits{/sha}","git_commits_url":"https://api.github.com/repos/github/hub/git/commits{/sha}","comments_url":"https://api.github.com/repos/github/hub/comments{/number}","issue_comment_url":"https://api.github.com/repos/github/hub/issues/comments{/number}","contents_url":"https://api.github.com/repos/github/hub/contents/{+path}","compare_url":"https://api.github.com/repos/github/hub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/github/hub/merges","archive_url":"https://api.github.com/repos/github/hub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/github/hub/downloads","issues_url":"https://api.github.com/repos/github/hub/issues{/number}","pulls_url":"https://api.github.com/repos/github/hub/pulls{/number}","milestones_url":"https://api.github.com/repos/github/hub/milestones{/number}","notifications_url":"https://api.github.com/repos/github/hub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/github/hub/labels{/name}","releases_url":"https://api.github.com/repos/github/hub/releases{/id}","deployments_url":"https://api.github.com/repos/github/hub/deployments","created_at":"2009-12-05T22:15:25Z","updated_at":"2019-07-03T09:52:50Z","pushed_at":"2019-07-02T14:58:51Z","git_url":"git://github.com/github/hub.git","ssh_url":"git@github.com:github/hub.git","clone_url":"https://github.com/github/hub.git","svn_url":"https://github.com/github/hub","homepage":"https://hub.github.com/","size":6213,"stargazers_count":16573,"watchers_count":16573,"language":"Go","has_issues":true,"has_projects":true,"has_downloads":false,"has_wiki":false,"has_pages":true,"forks_count":1670,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":188,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"forks":1670,"open_issues":188,"watchers":16573,"default_branch":"master","permissions":{"admin":false,"push":false,"pull":true},"organization":{"login":"github","id":9919,"node_id":"MDEyOk9yZ2FuaXphdGlvbjk5MTk=","avatar_url":"https://avatars1.githubusercontent.com/u/9919?v=4","gravatar_id":"","url":"https://api.github.com/users/github","html_url":"https://github.com/github","followers_url":"https://api.github.com/users/github/followers","following_url":"https://api.github.com/users/github/following{/other_user}","gists_url":"https://api.github.com/users/github/gists{/gist_id}","starred_url":"https://api.github.com/users/github/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github/subscriptions","organizations_url":"https://api.github.com/users/github/orgs","repos_url":"https://api.github.com/users/github/repos","events_url":"https://api.github.com/users/github/events{/privacy}","received_events_url":"https://api.github.com/users/github/received_events","type":"Organization","site_admin":false},"network_count":1670,"subscribers_count":328}
$ git rev-list --cherry-pick --right-only --no-merges upstream/master...upstream/feature
$ git rev-parse --show-toplevel
$ git var GIT_EDITOR
$ git config core.commentchar
$ vim --cmd set ft=gitcommit tw=0 wrap lbr /home/lestephane/GitRepos/hub/.git/PULLREQ_EDITMSG
> POST https://api.github.com/repos/github/hub/pulls
> Authorization: token [REDACTED]
> Accept: application/vnd.github.shadow-cat-preview+json;charset=utf-8
{"base":"master","head":"github:feature","maintainer_can_modify":true,"title":"Please ignore this pull request, attempting to come up with the reproduction steps from the problem I experienced in #189"}
< HTTP 422
{"message":"Validation Failed","errors":[{"resource":"PullRequest","field":"head","code":"invalid"}],"documentation_url":"https://developer.github.com/v3/pulls/#create-a-pull-request"}
Error creating pull request: Unprocessable Entity (HTTP 422)
Invalid value for "head"

@Lestaphane you have to track your feature branch. It’s not a bug but a common error users do because of missing documentation.
git push -u origin your-branch

Instead of simply git push

@ohcibi This is precisely what @lestephane is reporting here: we either have to fix the docs, or we shoud make hub work without the -u. But, I thought the latter already works. I will look deeper into this.
Thank you for the detailed reproduction steps! ❤

Why


OSSM-3756 Refactor TestExternalCert (T17)

Jira ref: OSSM-3756
TestExternalCert:

Renamed to TestExternalCertificate

TestExternalCertificate:

Updated to use new test framework
Updated to wait for bookinfo to be ready after installing it
Refactored code

Moved json patch data to yaml_configs

Misc:

Update yaml_vars to use standard defaults

@pbajjuri20 Can you please approve this PR. It won't get merged because you've requested changes.


Sanitize Branch Names for Docker Containers

Change Description
From #help-automation and AUTO-848, a developer created an eos branch name with a hash tag # character (e.g. "pr#125"). This broke the Docker - Build and Install step because it requires branch names to be valid URIs, currently only transforming forward-slashes / into underscores _ to support branch names with forward-slashes.
This pull request adds a series of transforms to turn forward-slashes / into underscores _, turn all other invalid characters for a docker container name into dashes -, then minimize sequences of these replacement characters and ensure they are not the beginning or end of the string.
I have also added log folding groups and improved the patterns in /.cicd/create-docker-from-binary.sh, and updated the pipeline readme.
Change Type
Select ONE:

[ ] Documentation
[ ] Stability bug fix
[x] Other
[ ] Other - special case

Testing Changes
Select ANY that apply:

[ ] New Tests
[ ] Existing Tests
[ ] Test Framework
[x] CI System
[ ] Other

Consensus Changes

[ ] Consensus Changes

None.
API Changes

[ ] API Changes

None.
Documentation Additions

[ ] Documentation Additions

None.

Closed in favor of pull request 10372 because buildkite-agent is trying to perform interpolation on the branch name in the pipeline.yml here:
  - label: ":chains: Sync from Genesis Test"
    trigger: "eosio-sync-from-genesis"
    async: false
    if: build.env("BUILDKITE_TAG") == null
    build:
      message: "Triggered by eosio build 28443"
      commit: "53323023b0707fdd5bd26947781b92251af77f95"
      branch: "zach-_=+#/@&$#Ω"
      env:
        BUILDKITE_TRIGGERED_FROM_BUILD_URL: "https://buildkite.com/EOSIO/eosio/builds/28443"
        SKIP_JUNGLE: "true"
        SKIP_KYLIN: ""
        SKIP_MAIN: ""
        TIMEOUT: ""

  - label: ":outbox_tray: Resume from State Test"
    trigger: "eosio-resume-from-state"
    async: false
    if: build.env("BUILDKITE_TAG") == null
    build:
      message: "Triggered by eosio build 28443"
      commit: "53323023b0707fdd5bd26947781b92251af77f95"
      branch: "zach-_=+#/@&$#Ω"
      env:
        BUILDKITE_TRIGGERED_FROM_BUILD_URL: "https://buildkite.com/EOSIO/eosio/builds/28443"
        SKIP_JUNGLE: "true"
        SKIP_KYLIN: ""
        SKIP_MAIN: ""
        TIMEOUT: ""

  - wait:
    continue_on_failure: true

This is, in my opinion, a bug on Buildkite's end because valid branch names can apparently contain a $ character followed by other characters that could look like an identifier. I don't think buildkite-agent should perform shell interpolation on the git branch or tag strings, where they exist. Buildkite does offer the --no-interpolation flag to mitigate this, but converting this pipeline to use envsubst for interpolation is perhaps a bit more work than I had planned to do for this service item.


Introduce the Windows lcow diff/snaphotter

Implements the Windows lcow differ/snapshotter responsible for managing
the creation and lifetime of lcow containers on Windows.
Signed-off-by: Justin Terry (VM<EMAIL_ADDRESS>

Example Usage:
ctr.exe image pull --platform linux/amd64 --snapshotter windows-lcow docker.io/library/alpine:latest
ctr run --runtime io.containerd.runhcs.v1 --snapshotter windows-lcow --config "<path-to-bundle>\config.json" --rm docker.io/library/alpine:latest ar1 sh -c "echo Hello World!"

For now the --config is required because the oci section builds default platform specs based on the compiled GOOS target a subseqent PR will merge these to allow a Windows client to build a default Linux spec. But for now a --config with a Linux bundle works fine with ctr.exe

@crosbymichael - FYI

This implementation is really clean, very encouraging!
I think something needs to added in the mount package to at least detect and error on this new mount type. I don't think there is anything else we can reasonably do there.
For compare, will this be implemented by runhcs.exe at some point? If buildkit is to support this, it will probably require more thought but this part looks straightforward to support.
Also appveyor's failure looks related

@dmcgowan - No prob will add a block to mount to avoid anything that contains an LCOW layer. That's a good idea.
For compare yes you are correct it will be runhcs.exe that does this. Given the mount's we will start a UVM in order to parse/create the tar in the guest and then stream that back to the content store.
Looking into CI

LGTM


added possible metrics values to dynatrace_disk_anomalies resource documentation

This update is intended to address issue #78 by providing the names of the metrics that can be specified when defining a dynatrace_disk_anomalies resource.  The values were pulled from the Dynatrace API documentation at https://www.dynatrace.com/support/help/dynatrace-api/configuration-api/anomaly-detection-api/anomaly-detection-api-disk-events/post-event/#expand-the-element-can-hold-these-values-1488.

Included it just in case here (https://github.com/dtcookie/dynatrace/pull/3)
I'm really terrible with Go and Terraform, but just in case the PR is there for someone to review


Fix for tooltips on badge

Description
Resolves: https://github.com/privacytools/privacytools.io/pull/2139#issuecomment-751338425 @dngray
Check List

[x] I understand that by not opening an issue about a software/service/similar addition/removal, this pull request will be closed without merging.

[x] I have read and understand the contributing guidelines.

[x] The project is Free Libre and/or Open Source Software

Netlify preview for the mainly edited page: https://deploy-preview-2167--privacytools-io.netlify.app/

Thanks for this, will review!

I had a look at this, any chance we can get it not bold

Like if you look how it was originally:

Hmm, i think setting font-weight: normal; might be the right solution. Though I would have thought it would have been normal to begin with. Must have inherited the boldness from somewhere else.

Must have inherited the boldness from somewhere else.

The badge itself seems to have an bold font-weight.

Hmm, i think setting font-weight: normal; might be the right solution.

I couldn't think of anything else.


Create LWRP: Plugin

This is solved by #91

Going to go ahead and close since this change is merged to master.


API Gateway - improve mocking of public API

Closes #2951
HTTP integrations were already mocked:
client.put_integration(
    restApiId=api_id,
    ...,
    uri="http://httpbin.org/robots.txt",
    integrationHttpMethod="GET",
)
deploy_url = f"https://{api_id}.execute-api.us-east-1.amazonaws.com/dev"
requests.get(deploy_url).content.should.equal(b"a fake response")

This PR also adds support for:
Mocking an integration with type=AWS and uri=arn:aws:apigateway:region:dynamodb:target/...
Mocking integrations with HTTP-methods other than "GET"
Mocking of nested resources, i.e. amazonaws.com/stage/resource now works - before, only the root resource was mocked (amazonaws.com/stage)

Codecov Report

Merging #4613 (0c9f377) into master (3f8895a) will increase coverage by 0.06%.
The diff coverage is 92.15%.

@@            Coverage Diff             @@
##           master    #4613      +/-   ##
==========================================
+ Coverage   95.12%   95.19%   +0.06%
==========================================
  Files         527      530       +3
  Lines       59290    59413     +123
==========================================
+ Hits        56400    56557     +157
+ Misses       2890     2856      -34

Flag
Coverage Δ

servertests
47.77% <31.37%> (?)

test_responses
32.42% <31.37%> (-0.03%)
:arrow_down:

unittests
95.09% <92.15%> (-0.01%)
:arrow_down:

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

Impacted Files
Coverage Δ

...o/apigateway/integration_parsers/unknown_parser.py
66.66% <66.66%> (ø)

moto/apigateway/integration_parsers/aws_parser.py
78.57% <78.57%> (ø)

moto/apigateway/integration_parsers/http_parser.py
100.00% <100.00%> (ø)

moto/apigateway/models.py
93.41% <100.00%> (+0.03%)
:arrow_up:

moto/apigateway/responses.py
93.85% <100.00%> (ø)

moto/route53resolver/models.py
97.64% <0.00%> (-1.77%)
:arrow_down:

moto/batch/models.py
88.64% <0.00%> (ø)

moto/sqs/models.py
97.00% <0.00%> (+<0.01%)
:arrow_up:

moto/s3/responses.py
95.71% <0.00%> (+0.16%)
:arrow_up:

moto/glue/responses.py
98.57% <0.00%> (+0.16%)
:arrow_up:

... and 4 more

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 3f8895a...0c9f377. Read the comment docs.


Upgrade dependencies to the latest stable angular.js

@dkokic can you confirm that the project will work without problem w/ angular 1.6 ?

@phra I use angular.js 1.7 at my work projects and have just updated the PR.

done ;-)
On 24 May 2018 at 17:22, Francesco Soncina<EMAIL_ADDRESS>wrote:

@phra requested changes on this pull request.
can you rebase and solve the conflicts? thanks.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/preboot/angularjs-webpack/pull/98#pullrequestreview-123045408,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AANDjnwUqD-xR6tdgwYXdE5MglFXlEFCks5t1tAogaJpZM4Tz-jy
.

@dkokic thanks for the contributions! :100:


[HOLD] Added support for npm 5

Error: ENFILE: file table overflow:
https://github.com/meteor/meteor/issues/8057
Installing from a local directory doesn't work the same as it does in npm4.
It looks like npm 5 uses symbolic links by default when you npm install /path.
http://codetunnel.io/npm-5-changes-to-npm-link/
Known issues:
https://github.com/npm/npm/issues/16991
Might need to try having skyux2 depend on the same things builder does. Or try require.resolve.

Codecov Report

Merging #260 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff          @@
##           master   #260   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files          56     56
  Lines        1305   1305
  Branches      195    195
=====================================
  Hits         1305   1305

Flag
Coverage Δ

#builder
100% <ø> (ø)
:arrow_up:

#runtime
100% <ø> (ø)
:arrow_up:

#srcapp
100% <ø> (ø)
:arrow_up:

Continue to review full report at Codecov.

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

Hey @Blackbaud-SteveBrush, I'm closing this in favor of #274, where I've incorporated a few of your changes.


Solve #6678 (sleep in RemoteDockerImage retries)

Solves #6678
There is retry cycle in RemoteDockerImage.resolve in case if Docker repository responds 5xx code. This cycle has the limit on time execution, but once the situation can happen, the log is just fully of garbage messages of failed attempt to make an HTTP call. Also it makes the redundant load on a docker repo.
In our case it was a wrong configured Artifactory for Docker images, the authentication token was missing. In the log there were thousands of failure messages done while timeout did not happen.
The proposal is pretty simple: add the sleep between retries in this cycle - either constant or logarithmic.

Kind reminder. Again stepped into this pitfall with wrong configuration: the build log is just full of messages (thousands repeated patterns):
Warning:  Retrying pull for image: artifactory.tools.devrtb.com/docker-virtual/testcontainers/ryuk:0.4.0 (111s remaining)
Error:  Error during callback
com.github.dockerjava.api.exception.InternalServerErrorException: Status 500: {"message":"Head \"[https://artifactory.tools.devrtb.com/v2/docker-virtual/testcontainers/ryuk/manifests/0.4.0\](https://artifactory.tools.devrtb.com/v2/docker-virtual/testcontainers/ryuk/manifests/0.4.0/)": unknown: Authentication is required"}
    at org.testcontainers.shaded.com.github.dockerjava.core.DefaultInvocationBuilder.execute (DefaultInvocationBuilder.java:247)
    at org.testcontainers.shaded.com.github.dockerjava.core.DefaultInvocationBuilder.lambda$executeAndStream$1 (DefaultInvocationBuilder.java:269)
    at java.lang.Thread.run (Thread.java:833)

Hi @seregamorph, sorry for the delay and thanks for submitting the PR. I'm bringing the topic to the team, so we can discuss about it. I'll be back to you as soon as have news.

Thanks for the PR, @seregamorph. This has been fixed in #8453 in the next release.


Update doc about installation for raspi

Contributor checklist

[ x] I have read the CONTRIBUTING.rst
[ x] I have tested my contribution on these devices: Epson TM-T88IV
[ x] My contribution is ready to be merged as is

Description
I simplified doc for raspi to use pip3.

Thank you for feedback.

Is there a special reason that you have changed this warning box to a normal chapter?

Sorry, I did not find that warning syntax is active on the document because I checked syntax on github.
I agree to keep this warning box so I rolled back it.
references

github page
doc page

We should probably keep it because people might find it more easily but maybe we should just link to the installation manual.

I added a link of installation-manual.
How is it?
Thanks.

Thank you for your changes. This will be merged.

Thank you for merging!

 Just one question: we plan on changing the license in the future (I  have not yet asked everyone that contributed). Would MIT be OK for you?

I'm OK. Thanks.


react/no-unused-prop-types false positve in render function with other components

  import React, { FunctionComponent } from "react";
  import "./styles.css";
  import Slide from "./Slide";

  interface SlideProps {
    isActive: boolean; // (*)
  }

  const MyCard: FunctionComponent<{ doo: boolean }> = ({ doo }) => {
    return doo ?
1
 :
0
;
  }

  export default function App() {
    return (

        <Slide>{({ isActive }: SlideProps) => <MyCard doo={isActive} /> }</Slide>

    );
  }

I found that if the children of <Slide> return anything including another component, like <MyCard> here,
react/no-unused-prop-types would report a failure on isActive in SlideProps (*), which I think is a false positive.
Changing the render function to ({ isActive }: SlideProps) => isActive ? "a" : "b" would not trigger the error.
Another work-around I found is change it to: (props: SlideProps) => <MyCard doo={props.isActive} />
It seems eslint-plugin-react v7.22.0 and v7.24.0 both have this issue.
I tried to make a minimal reproducing repo here: https://github.com/redeyes2015/no-unused-prop-types-false-positive
I wonder why this rule is triggered and how to fix it properly.
Thanks for reading. I browsed the issue list, but did not find the exact match one. If I missed it or not asking at the right place, please accept my apology and just close this issue.

I agree, this is a false positive.

Seen in v7.25.1

I get this error in my components too. Are there any fixes for this? Is there a way to disable it from the eslint config file?
The only thing that seems to work is not to destructure the map object and disabling the error with a comment.


LDFLAGS Fix (and API bump) for ARM64-v8a and OpenSSL 1.1.1c

Changes:

Bumped API from 21 to 23 (at the time I was having issues, this may be unrelated)
The line "ENV LDFLAGS -R/openssl-build/lib" appears to be ignored when configure is called; added "LDFLAGS=-Wl,-R/openssl-build/lib", and modified the "-with-ssl"  option to target the openssl dependency path

Result:
The CURL build under arm64-v8a completes successfully.  The resulting libraries could then be used on an Android device, successfully connecting to a mapservice over HTTPS.
I noticed that I was required to also include the libcrypto.so.1.1 and libssl.so.1.1 in addition to the libcrypto.so and libssl.so files.  It appears that the libcrypto.so and libssl.so files are now just symlinks to the .1.1 files.
I tested my android app against an ArcGIS MapServer (https://sampleserver6.arcgisonline.com/arcgis/rest/services/World_Street_Map/MapServer), and was able to use the GDAL to open a dataset, and clip a region successfully.

Merged. Thanks!


Remove global RestAssured config uses.

Remove global uses of RestAssured configuration which may bleed across tests.

rebased and merged.


[No QA] [TS migration] Migrate 'RenameExpensifyNewsStatus.js' lib to TypeScript

Details

Fixed Issues

$ 24853
Tests

[x] Verify that no errors appear in the JS console

Offline tests

QA Steps

[x] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android / native
[x] Android / Chrome
[x] iOS / native
[x] iOS / Safari
[x] MacOS / Chrome / Safari
[x] MacOS / Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] If we are not using the full Onyx data that we loaded, I've added the proper selector in order to ensure the component only re-renders when the data it is using changes
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR author checklist, including those that don't apply to this PR.

Screenshots/Videos

Web

https://github.com/Expensify/App/assets/25230417/1cc0c6ee-fe96-4d0f-bf1d-3f40e1cbc428

Mobile Web - Chrome

Mobile Web - Safari

Desktop

https://github.com/Expensify/App/assets/25230417/b7b57418-f0ba-4140-999f-b2fcc0caf44a

iOS
https://github.com/Expensify/App/assets/25230417/641e83ee-ea83-4c15-9000-767afea3c73e

Android
https://github.com/Expensify/App/assets/25230417/f866cd42-97ce-427c-93f6-0e513b7c4c7c

Let's not migrate it, instead just remove the file, source: https://expensify.slack.com/archives/C01GTK53T8Q/p1694702736698569

@fabioh8010 @blazejkustra the migration is removed, should I mark this as Ready for review ?

I think so, but fix prettier problem first - link

Reviewing...

LGTM!

Reviewer Checklist

[x] I have verified the author checklist is complete (all boxes are checked off).
[x] I verified the correct issue is linked in the ### Fixed Issues section above
[x] I verified testing steps are clear and they cover the changes made in this PR

[x] I verified the steps for local testing are in the Tests section
[x] I verified the steps for Staging and/or Production testing are in the QA steps section
[x] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[x] I checked that screenshots or videos are included for tests on all platforms
[x] I included screenshots or videos for tests on all platforms
[x] I verified tests pass on all platforms & I tested again on:

[x] Android / native
[x] Android / Chrome
[x] iOS / native
[x] iOS / Safari
[x] MacOS / Chrome / Safari
[x] MacOS / Desktop

[x] If there are any errors in the console that are unrelated to this PR, I either fixed them (preferred) or linked to where I reported them in Slack
[x] I verified proper code patterns were followed (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method
[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I verified that this PR follows the guidelines as stated in the Review Guidelines
[x] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG)

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Web

https://github.com/Expensify/App/assets/41169160/5f3e143f-b151-4c23-8613-2e4f57f626b4

Mobile Web - Chrome

https://github.com/Expensify/App/assets/41169160/74321237-f0ea-43a4-b29a-cf33b6cc64fe

Mobile Web - Safari

https://github.com/Expensify/App/assets/41169160/09c54888-f82a-4bc2-baf2-cb7e58538cf3

Desktop

https://github.com/Expensify/App/assets/41169160/08e7152a-70dc-404c-aeb0-c128cd3088f9

iOS

https://github.com/Expensify/App/assets/41169160/20c6bc8a-8c46-4b85-8132-f4eb3043ff17

Android

https://github.com/Expensify/App/assets/41169160/ea7da641-6d6f-45f7-9396-5ff0a0e267f7

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by https://github.com/Li357 in version: 1.3.75-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/mountiny in version: 1.3.75-12 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅

🚀 Deployed to staging by https://github.com/Li357 in version: 1.3.76-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


cloud_say TTS platform not working

System Health details
System Information

version
core-2023.8.2

installation_type
Home Assistant OS

dev
false

hassio
true

docker
true

user
root

virtualenv
false

python_version
3.11.4

os_name
Linux

os_version
6.1.39

arch
x86_64

timezone
America/Chicago

config_dir
/config

Home Assistant Community Store

GitHub API
ok

GitHub Content
ok

GitHub Web
ok

GitHub API Calls Remaining
4809

Installed Version
1.32.1

Stage
running

Available Repositories
1269

Downloaded Repositories
15

Home Assistant Cloud

logged_in
true

subscription_expiration
September 14, 2023 at 7:00 PM

relayer_connected
true

relayer_region
us-east-1

remote_enabled
true

remote_connected
true

alexa_enabled
true

google_enabled
false

remote_server
us-east-1-4.ui.nabu.casa

certificate_status
ready

can_reach_cert_server
ok

can_reach_cloud_auth
ok

can_reach_cloud
ok

Home Assistant Supervisor

host_os
Home Assistant OS 10.4

update_channel
stable

supervisor_version
supervisor-2023.08.1

agent_version
1.5.1

docker_version
23.0.6

disk_total
234.0 GB

disk_used
8.7 GB

healthy
true

supported
true

board
generic-x86-64

supervisor_api
ok

version_api
ok

installed_addons
Samba share (10.0.2), eufy-security-ws (1.6.2), PS5 MQTT (1.3.1), Terminal & SSH (9.7.1), Tailscale (0.11.1)

Dashboards

dashboards
6

resources
5

views
24

mode
storage

Recorder

oldest_recorder_run
June 26, 2023 at 1:57 PM

current_recorder_run
August 18, 2023 at 6:52 AM

estimated_db_size
3457.08 MiB

database_engine
mysql

database_version
10.11.5

Checklist

[X] I have enabled debug logging for my installation.
[X] I have filled out the issue template to the best of my ability.
[X] This issue only contains 1 issue (if you have multiple issues, open one issue for each issue).
[X] This issue is not a duplicate issue of currently previous issues..

Describe the issue
When using cloud_say as a TTS platform, I get the error below.  The chime plays, just no message TTS.  The build in TTS service for cloud_say works just fine on its own.
"tts_platform": "cloud_say",
"message": "Testing.",
"chime_path": "custom_components/chime_tts/mp3s/mario_coin.mp3"

Reproduction steps

Call service with above data parameters

...
Debug logs
2023-08-18 07:03:55.784 WARNING (MainThread) [custom_components.chime_tts] - Error calling tts.media_source.generate_media_source_id: Invalid TTS provider selected
2023-08-18 07:03:55.785 WARNING (MainThread) [custom_components.chime_tts] Unable to generate TTS audio
2023-08-18 07:04:05.245 WARNING (MainThread) [custom_components.chime_tts] - Error calling tts.media_source.generate_media_source_id: Invalid TTS provider selected
2023-08-18 07:04:05.248 WARNING (MainThread) [custom_components.chime_tts] Unable to generate TTS audio
2023-08-18 07:04:46.792 WARNING (MainThread) [custom_components.chime_tts] - Error calling tts.media_source.generate_media_source_id: Invalid TTS provider selected
2023-08-18 07:04:46.794 WARNING (MainThread) [custom_components.chime_tts] Unable to generate TTS audio
2023-08-18 07:08:16.185 WARNING (MainThread) [custom_components.chime_tts] - Error calling tts.media_source.generate_media_source_id: Invalid TTS provider selected
2023-08-18 07:08:16.187 WARNING (MainThread) [custom_components.chime_tts] Unable to generate TTS audio

Diagnostics dump
No response

The issue has been fixed in v0.7.2

I installed 0.7.2 and still getting the same error.
2023-08-20 19:08:35.435 WARNING (MainThread) [custom_components.chime_tts] - Error calling tts.media_source.generate_media_source_id: Invalid TTS provider selected
2023-08-20 19:08:35.445 WARNING (MainThread) [custom_components.chime_tts] Unable to generate TTS audio

The fix involved changing the tts_platform value from cloud_say to cloud.
Can you please check that you are calling the service with this updated value?


Plaintext (un-encrypted!) data potentially stays on disk

Hi,
I've been working on a similar project, but here is a problem that I faced, and it seems to be present in your code as well:
https://github.com/aviaryan/SublimeNotebook/blob/master/sublime_notebook/cryptlib.py#L112
and
https://github.com/aviaryan/SublimeNotebook/blob/master/sublime_notebook/sublime_notebook.py#L55
When you overwrite the unencrypted data with crypted data, you are not sure that the OS or the HDD/SSD hardware writes it at the same place on the disk, on the same blocks / sectors of the disk.
Result: the unencrypted data (plain text) can stay on your disk, and be easily recovered with a simple Undelete tool / HEX viewer. A software like Recuva and wxHexEditor will be able to see your files without the master password...
What do you think? I've been thinking about this problem for a long time too!

You are right. But I never took this issue too seriously. Encryption in SublimeNotebook or VSCodeNotebook is only meant to protect your sensitive documents from regular people like your friends and family who manage to peek/use your computer once in a while.
If you are syncing the note files to Dropbox, Dropbox stores file histories too. So if Dropbox is hacked, you are still at risk. But having your Dropbox hacked is a big risk anyway because people keep all kinds of private documents in there.
If we do want to solve this problem, however, the simplest way is to always save the file encrypted.

When the user wants to edit a note, the file is decrypted in memory and the text is replaced in Sublime Text (so the file is in unsaved mode).
The user edits the note.
When the user hits save, a plugin triggers first, it takes the note and encrypts it, and saves it in encrypted form.

The above flow can be made more user-friendly if plugin takes more control over Sublime Text but you get my point.

Is this your similar project?

Thanks for your answer!

You are right. But I never took this issue too seriously. Encryption in SublimeNotebook or VSCodeNotebook is only meant to protect your sensitive documents from regular people like your friends and family who manage to peek/use your computer once in a while.

Yes, I agree, for this it's totally OK.

If we do want to solve this problem, however, the simplest way is to always save the file encrypted.
When the user wants to edit a note, the file is decrypted in memory and the text is replaced in Sublime Text (so the file is in unsaved mode).
The user edits the note.
When the user hits save, a plugin triggers first, it takes the note and encrypts it, and saves it in encrypted form.
The above flow can be made more user-friendly if plugin takes more control over Sublime Text but you get my point.

Exactly, I totally agree with this. I was thinking about writing a plugin to do exactly this. If you're interested, ping me via email (see contact in website below).

Is this your similar project?

No, it's this:
https://illdoitlater.xyz/t/freetext
(website not properly launched yet, still in progress :) )

Exactly, I totally agree with this. I was thinking about writing a plugin to do exactly this. If you're interested, ping me via email (see contact in website below).

Thanks. I am not working on this atm because it is not critical + busy with other things. I will contact you if this changes. 😄


Animation starts at the middle of view

When the height of the view is much bigger than the width and the angle is 30, the shimmer line will start the animation at the middle of the view instead of the edge.

#34 solved it.


Make area to click seeking bar wider

If the feature request is for a plugin or provider, specify it here.
control-bar
If the feature solves a problem you have, specify it here.
It's relatively hard to move video back and forth with vlitejs control bar. It seems the line that you have to hit is very thin and you must be very precise I often miss it and pause the video accidentally. If you try youtube player you can notice it's basically impossible to pause video accidentally because it's much more forgiving if you are few pixels over the line it will still seek instead of pausing the video.
Describe the proposed feature.
Make control-bar seeking line click area wider.
Describe alternatives you've considered
No response
Additional context
No response
Related issues
No response

Thanks @ignl for the report. It's true that it was a little too thin.
Can you look at the changes and test on your side too (#119)?

Much better, thanks!


Scale Entity Draw Distance with Entity Size

It'd be nice if the distance you can see an entity from scales with their size if their size is >=1. I don't know how technically challenging this would be, but it would be great if you could see, say, a giant creeper from 256 blocks away instead of the current limit of 64 blocks. This would make the mod feel a lot more immersive because as it is, it's a bit jarring when a giant mob suddenly disappears from view. 1.16 has a similar Entity Distance feature, but that's for all mobs, not just big ones, so even if the mod is updated to 1.16, it'd probably be pretty laggy.

I do scale something called entity render distance in code, it just seems to have no effect, so :shrug:
But yeah I'll look into that when updating, maybe new versions have it fixed, who know
Also yeah, even updating to 1.13 will be fun, I spent like a lot of time fighting dumb bugs/changes of new forge lol

update;
Ok during the mixin rewrite I found out that my patch that changed draw distance was actually pretty weird - mc code uses squared distance comparison to avoid making expensive square root calculation for no reason, but I only scale that number by the entity size once, instead of two times, which makes no sense, and also a lot of entities override that method with their own copy so for them this patch does not work anyway.

update;
Ok during the mixin rewrite I found out that my patch that changed draw distance was actually pretty weird - mc code uses squared distance comparison to avoid making expensive square root calculation for no reason, but I only scale that number by the entity size once, instead of two times, which makes no sense, and also a lot of entities override that method with their own copy so for them this patch does not work anyway.

update2:
I figured out - mc automatically adjusts max render distance based on entity aabb size, so it should've worked perfectly by itself.

Why big mobs disappear at such a short distance though is still under investigation lol

update2:
I figured out - mc automatically adjusts max render distance based on entity aabb size, so it should've worked perfectly by itself.

Why big mobs disappear at such a short distance though is still under investigation lol

update3:
The issue was (quite obviously actually, I was just a bit dumb) server-size, the mob is getting completely unloaded on the client after certain distance, easily completely fixed in latest beta

update3:
The issue was (quite obviously actually, I was just a bit dumb) server-size, the mob is getting completely unloaded on the client after certain distance, easily completely fixed in latest beta

Fixed in ede2651


ChartJS legend is not included in canvas if is a custom html legend

ChartJS legend is not included in canvas if is a custom html legend
Expected Behavior
When save an image of canvas to include the legend.
Current Behavior
The legend is not included.
Possible Solution
Include the custom html legend into the chart canvas.
Steps to Reproduce (for bugs)

Visit https://codepen.io/anon/pen/XZGyNW
Right Click on Chart save image

Environment

Chart.js version: 2.7.2
Link to your project: https://codepen.io/anon/pen/XZGyNW

Canvas rendering and HTML/CSS are two separate worlds pretty hard (if not impossible) to reunite. It would certainly require to integrate 3rd party (large) libraries and add extra complex logic to layout/size the chart. I'm pretty sure it's not something that will be integrated in the core release (@etimberg)

Actually, you could implement that feature by yourself, for example by using library like html2canvas and wrap the canvas + HTML legend inside the same container. You would add to expose a save button that will "capture" the HTML container (fiddle).

     <canvas id="chart-canvas"><canvas/>

...

<button id="btn-save">Save as image...</button>

// ...

document.getElementById('btn-save').addEventListener('click', function() {
    html2canvas(document.querySelector("#chart")).then(canvas => {
       // ...
    });
});

I agree that this is not a feature for the core. I think the solution @simonbrunel suggested using html2canvas looks promising

Hi, thank you for reply and sorry for this late coming back. Indeed I found solutions for this but to be honest I would be expecting that any legend ( custom or not ) to be included in the same canvas.
If the default legend is in the canvas why the custom one not being included ... Anyway up to you guys at the end :)

If the default legend is in the canvas why the custom one not being included

Because the default legend if not HTML (it's painted on the canvas) and the "right click > save image as ..." is not a Chart.js feature but a tool provided by your browser which simply export the canvas as bitmap. Since your HTML legend is not part of the canvas, it's not possible to export it this way.
That's why you need an extra lib but I don't think that's the responsibility of this (canvas based) library to support this DOM feature. It could be done as an external plugin if anyone is interested to work on it.


Not working for me

Opening the course page(node:10982) UnhandledPromiseRejectionWarning: Error: ENOENT: no such file or directory, mkdir '/home/ibrahim/CSEN 301 Data Structures and Algorithms/1-Arrays/Sorting/Stacks I'
at Object.mkdirSync (fs.js:757:3)
at downloadMaterial (/usr/local/lib/node_modules/met-downloader/src/app.js:60:8)
at process._tickCallback (internal/process/next_tick.js:68:7)
(node:10982) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:10982) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

This problem occurred while downloading CS3 course , other courses worked fine

Hi @aboueleyes Thanks for filing the issue! If you happen to fix it anytime, please feel free to open a PR.
I'm not actively maintaining most of my university projects -unfortunately-, but If I have the time, I'll try to look into it.

Thanks @AbdullahKady  :)


feat: support project flag

:pencil: Description
Adds support for projects that use the --project Cypress flag. Those projects will just need to set the Cypress env var PROJECT accordingly.
:link: Related Issues
#18

:tada: This PR is included in version 1.2.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


The file not running in my android studio despite cloned/forked.

The file not running, despite being cloned and forked

please help me, I am new to android development.

Upon cloning this project, go to File -> New -> Import Project. A configuration should be available to run the app module at that point. Comment back here if you have further issues


[Scheduled Maintenance] Site down for upgrade to Lemmy v0.19.7

Feddit.nl will go down for a while, to upgrade to Lemmy v0.19.7

Maintenance done!


Improve this so the repositories do not contain all the data

This repository should be improved to reduce it's size (currently over 1Gb)

Data and Baseline could be stored in VTK data and baselines with on demand download
.html file could be stored as a secondary submodule

This would allow this repository integration into VTK so the examples could be considered actual tests and more easy to maintain for developers.
Another solution would be to put all the source files directly in VTK and this repository would use them to build the website.

When you clone it, set the depth to 1. I will look at better organization.
On Tue, Aug 14, 2018, 2:33 AM mwestphal<EMAIL_ADDRESS>wrote:

This repository should be improved to reduce it's size (currently over 1Gb)

Data and Baseline could be stored in VTK data and baselines with on
demand download
.html file could be stored as a secondary submodule

This would allow this repository integration into VTK so the examples
could be considered actual tests and more easy to maintain for developers.
Another solution would be to put all the source files directly in VTK and
this repository would use them to build the website.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/lorensen/VTKExamples/issues/231, or mute the thread
https://github.com/notifications/unsubscribe-auth/AAUFDNgqF8TD72mMt8JVVedW4NfaQoLaks5uQplfgaJpZM4V8GQD
.

Pehaps we could collaborate here - for vtki, we host an examples data repository over at: https://github.com/vtkiorg/vtk-data - this holds data files only
There are so many wonderful examples here and I'd love to showcase how vtki simplifies some of these examples - perhaps I could migrate the data here over to that repo and help implement a data downloading routine like what we have for vtki so users can download example data on the fly:
from vtki import examples
# Load St Helens DEM and warp the topography
mesh = examples.download_st_helens().warp_by_scalar()
mesh.plot(opacity='linear')

or perhaps simply submodule the data repository so the CI's can quickly download the data files when building the examples?

We use GitHub lfs for large data. Part of problem is large history. I'll
revisit this. I really don't want to rely on another trip.
Thanks
On Tue, Apr 23, 2019, 8:17 AM Bane Sullivan<EMAIL_ADDRESS>wrote:

Pehaps we could collaborate here - for vtki
https://github.com/vtkiorg/vtki, we host an examples data repository
over at: https://github.com/vtkiorg/vtk-data - this holds data files only
There are so many wonderful examples here and I'd love to showcase how
vtki simplifies some of these examples - perhaps I could migrate the data
here over to that repo and help implement a data downloading routine like
what we have for vtki so users can download example data on the fly:
from vtki import examples# Load St Helens DEM and warp the topography
mesh = examples.download_st_helens().warp_by_scalar()
mesh.plot(opacity='linear')
or perhaps simply submodule the data repository so the CI's can quickly
download the data files when building the examples?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/lorensen/VTKExamples/issues/231#issuecomment-485847997,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AACQKDDV4CZVDHRQXMTGPWDPR4R7NANCNFSM4FPQMQBQ
.

Fair enough - considering this repo is under an Apache license, I'll merge the data folder here into our example data repo as an independent effort.
I'm totally willing to add you, @lorensen, to @vtkiorg as an admin on the data repo if you'd like to collaborate moving forward.


Search in DB

It`s possible to use with db search? have one sample? tks

Yes, but is complicated because cant use a specific object.
you have to work with text and exclusive text. This plugin Need a update


Python

Should go ahead and install this too.

Python installed. Will close once I have flask demo app up and running.


use next.js instead of davezuko/react-redux-starter-kit which is deprecated

I suggest you have a look to https://github.com/zeit/next.js/
IMO it is very easy to use and it is a good replacement for
https://github.com/davezuko/react-redux-starter-kit
and
https://github.com/facebookincubator/create-react-app

I saw that react-redux-starter-kit was deprecated, but this was just to use the basic stack provided, it's not a framework and as long as we keep the dependencies up to date it's doesn't matter :). I agree that next.js looks interesting tho, but this would require some work just to update the current stack

next.js is a good / easy replacement for create-react-app; here is a short blog that explains:
https://medium.com/@diamondgfx/nextjs-lessons-learned-part-1-a5a8d442450f
https://medium.com/@diamondgfx/nextjs-lessons-learned-part-2-f1781237cf5c
https://medium.com/@diamondgfx/nextjs-lessons-learned-part-3-be3aeefd9be0

@danutc thanks for the links, we will happily accept any PR to change things around.


Support truncating from the left, width padding/truncation incorrect with some unicode input

Left truncation is the default in the inspiration for this crate (Log4j). It usually produces more relevant results, e.g. for filenames, logger names, etc.
Both styles of truncation should be supported, with right truncation (current implementation) as the default for backward compatibility.
Log4j uses a minus sign on the length (negative length) to flip the truncation. So it might look like this for log4rs: {f:>-15.15} (left truncate or left pad the filename field to exactly 15 chars)

Sounds like a worthy enhancement, happy to mentor if you'd like to take a stab at it.

I had a look at this. unicode encoding makes this diabolically difficult. The existing code is already running into this issue, so maybe fixing the unicode issues is the first step. Here is a failing test case inspired by this stackoverflow question
    #[test]
    #[cfg(feature = "simple_writer")]
    fn right_align_formatter_hard_unicode() {
        let pw = PatternEncoder::new("{({l} {m}):>15}");

        let mut buf = vec![];
        pw.encode(
            &mut SimpleWriter(&mut buf),
            &Record::builder()
                .level(Level::Info)
                .args(format_args!("\u{01f5}\u{0067}\u{0301}"))
                .build(),
        )
        .unwrap();
        assert_eq!(buf.len(), 18);
    }

a simple println!("\u{01f5}\u{0067}\u{0301}"); produces ǵǵ (two visible characters, not sure the pasting is working right), but the padding thinks it's 3 characters.

@moh-eulith can you open a Draft pr with the above failing test?

I'm not clear on what the buf contents are that are passed to the write function. Is the content guaranteed to be on byte, unicode code point, or grapheme boundary?

So a full fix would require some manner of buffering. Max encoding length for utf8 is 4 bytes, another 2 for combining, so that's a 6 byte buffer. I'm by no means a unicode expert, but it appears combining is not limited to a single one per grapheme, so theoretically, we have to look ahead past all combining codepoints.
Additionally, there are "Codepoints U+035C–0362 are double diacritics, diacritic signs placed across two letters."
A test case for this insanity might look like: println!("a\u{0308}\u{032C}\u{0362}e\u{0301}\u{0331}") which prints: ä̬͢é̱
Honestly, I don't know how far this should go. I think enough buffering for 1 codepoint + 1 combining is practical enough for real text.

    #[test]
    fn char_starts_gs() {
        let buf = "\u{01f5}\u{0067}\u{0301}";
        let starts = char_starts(buf.as_bytes());
        assert_eq!(2, starts);
        let buf = "a\u{0308}\u{032C}\u{0362}e\u{0301}\u{0331}";
        let starts = char_starts(buf.as_bytes());
        assert_eq!(2, starts);
    }

Agreed that grapheme counting is the right way to go. However, because we don't have a guarantee on the buf segmentation, it leads to failures:
    #[test]
    fn char_starts_gs() {
        let buf = "\u{01f5}\u{0067}\u{0301}";
        test_all_splits(buf, 2);
        let buf = "a\u{0308}\u{032C}\u{0362}e\u{0301}\u{0331}";
        test_all_splits(buf, 2);
    }

    fn test_all_splits(buf: &str, len: usize) {
        let b = buf.as_bytes();
        for i in 1..b.len() {
            assert_eq!(len, char_starts(&b[..i]) + char_starts(&b[i..]));
        }
    }

Sorry, should've made the example simpler. I think the minimal test case that fails test_all_splits is:
        let buf = "e\u{0331}";
        test_all_splits(buf, 1);

No worries, yep I agree there will be miscalculations when we span a Unicode sequence, we just don't have enough information to do the right thing.

Is it rude to just ignore unicode and put a note in the docs about "unicode support is undefined and may result in unexpected trimmings" :sweat_smile:


updated docs

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

Project coverage is 94.73%. Comparing base (c58e128) to head (3623b39).

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@           Coverage Diff           @@
##             main      #11   +/-   ##
=======================================
  Coverage   94.73%   94.73%
=======================================
  Files           5        5
  Lines         133      133
=======================================
  Hits          126      126
  Misses          7        7

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


Doesn't  work with nitter.net

Nitter is an alternative frontend to twitter, I'm guessing the way it retrieves images makes bandwidth hero miss them, so they end up not being compressed.
https://github.com/zedeus/nitter/

Twitter images seem to get proxied from the nitter servers so that they avoid hotlinking to twitter servers. Firefox bandwidth hero is set to scout the request and determines it's best not to forward to your bandwidth-hero server to proxy. This one's kind of due to unexpected behavior on their image proxy, which if they fixed it would cause the firefox bandwidth hero to behave more like chrome b-h.
Chrome/Chromium bandwidth hero dives right in and seems to infinitely ping pong some combination of 302 and 307 responses between the bandwidth hero proxy and the nitter image proxy.
This line of code in bandwidth-hero-proxy src/redirect.js line 9 using "encodeURI" may also be causing issues.
res.setHeader('location', encodeURI(req.params.url))
Since it seems to be double-encoding the previously encoded parts of the url, preventing a successful redirect.
encodeURI("https://nitter.net/pic/https%3A%2F%2Fpbs.twimg.com%2Ftweet_video_thumb%2FESZQUfiUEAANy0y.jpg");
"https://nitter.net/pic/https%253A%252F%252Fpbs.twimg.com%252Ftweet_video_thumb%252FESZQUfiUEAANy0y.jpg"

However, fixing the above's won't actually fix the fact that it's not compressing the images, since it's still probably getting a 400+ HTTP Error somehow when the bandwidth-hero proxy server requests it so it falls back to a 302 redirect.

So this would require fixing the setHeader function here and change the how nitter proxies the images in order for B-H to work?

I think that the following changes to redirect.js would make this work, I wouldn't expect the decoding or regex to introduce any problems, but considering I just tried a few strings using your query as an example (as I don't know how req.params.url is actually formatted) I can't guarantee it.
function redirect(req, res) {
  if (res.headersSent) return

  res.setHeader('content-length', 0)
  res.removeHeader('cache-control')
  res.removeHeader('expires')
  res.removeHeader('date')
  res.removeHeader('etag')
  url = decodeURIComponent(req.params.url)             // ensure that the url doesn't get double encoded
  urlMatch = url.match(/(https?:\/\/)(?!.*\1)[a-z0-9]+([\-\.]{1}[a-z0-9]+)*\.[a-z]{2,5}(:[0-9]{1,5})?(\/.*)?/)[0] // if there's only one url it'll return the same, if there's more than one (determined by the existance of http://) it'll return the last instance
  if(urlMatch) url = urlMatch // so that if regex returns null it doesn't overwrite the url
  res.setHeader('location', encodeURI(url))
  res.status(302).end()
}

module.exports = redirect

I made a fork with that code along a few console.log() and deployed another heroku instance, I can see redirect being used when using nitter, but only for a handful of items like https://nitter.net/apple-touch-icon.png the actual images taken from twitter aren't there, so I think for these links redirect.js isn't being used at all @changhaitravis

Hi, can you confirm if you're using the Chrome or Firefox extension?
It really sounds like you're using the firefox extension.
For chrome, it should be fixed on the proxy side in my pull request in "proxy.js". https://github.com/ayastreb/bandwidth-hero-proxy/pull/22/files . I just tested it this morning on a build of the firefox extension where I've disabled the scouting functionality.
For firefox, there's a HEAD request that's sent that's not being handled by their proxy properly (404), and I can't really fix it outside of a whitelist or exposing the HEAD request scouting/recon functionality as optional (this is probably a good practice anyways).

indeed I'm using firefox, it's just byt the way you had phrased your original message it sounded like chrome itself had problems handling this (just different problem). What would changing how the head request is handled entail?

If you have your own signed build of the firefox extension, you'd change in https://github.com/ayastreb/bandwidth-hero/blob/aa8536eb525a16b7c52bc9a5ab1bbc574fc96b46/src/background.js#L132
if (!isFirefox()) return { redirectUrl } to return { redirectUrl }
and delete everything after that line up to line 151

optimally the UI would just have a checkbox to toggle that functionality on and off. I can add that to my existing pull request, but idk when that'd get merged. Could also start a new branch and put that in as its own pull request.

Unfortunately I don't have my own build, so I'll have to wait, I guess

@changhaitravis I got a friend to build me the extension with the changes you suggested, now BH attempts to proxy the images but fails as expected, the problem is that it fails with my changes as well, checking the logs on heroku it appears the links are getting to redirect.js and then stripped from the https://nitter.net/pic/ part (I check by using console.log(res.getHeader('location'))), yet, the images don't load in the browser, and when I check the requests they are still prefixed by https://nitter.net/pic/ so it's like what in res isn't actually used

if it made it to redirect.js, then I think that means that you're running into the same issue I ran into on google cloud functions. You can try my proxy at https://dizzy.fenesisu.moe/bandwidth-hero that's using this code https://github.com/changhaitravis/bandwidth-hero-proxy-gcf/tree/upstream-backport hosted on a linux VM server instead of as serverless or PaaS, if it works you can try deploying that on heroku, but I think you'll run into the same issue.

even trying to change it within proxy itself before it reached the redirect, also tried changing the req.params.url value itself to no avail, in the browser it's still getting prefixed. At this point I'll make the uneducated guess that the problem may lay somewhere in "request" itself

still nothing, attempted to make my own proxy call from within redirect after changing req.param.url to no avail. Also, @changhaitravis I think there's no ping-pong ing going on here, I only see each redirected link once, I mentioned this as you menitoned it should be going back and forth between 302 and 307, unless that doesn't happen in the proxy itself but in the browser.


Update com.google.fonts/check/varfont/regular_x_coord checks

Description
This pull request addresses the problems described at issue #4003 :
Adds a separate test/result code for the case of "no regular instance present". This does not change the outcome of the base test at all, it simply separates the FAIL conditions to enable overriding.
Adobe Fonts profile overrides the following regular coords checks:

com.google.fonts/check/varfont/regular_wght_coord
com.google.fonts/check/varfont/regular_wdth_coord
com.google.fonts/check/varfont/regular_slnt_coord
com.google.fonts/check/varfont/regular_ital_coord
com.google.fonts/check/varfont/regular_opsz_coord

relaxing FAIL on code no-regular-instance to WARN. If a regular instance is present but its coordinate does not match the expected value specific to the check, it will still FAIL as before.
Note: This is a copy of #4004 , which I closed to try to resolve the CLA issue.
To Do

[x] update CHANGELOG.md
[ ] wait for all checks to pass
[ ] request a review

If anyone can help with troubleshooting why the CLA bot cannot detect me under the CCLA, please let me know! I've been running into trouble with the Google CLA bot for the last few days, and have emailed<EMAIL_ADDRESS>for help. Here's a list of things I've already done to try to resolve this:

I've been a member of the adobe google contributors group for a while
My primary email is used consistently across my git commits, github account, and the adobe google contributors group.
I unchecked Keep my email address private
I rescanned the CLA check on the PR multiple times, as well as closed and reopened the PR after checking all of the above.


CI-1581: Output Wordpress GUID in import log

Output Wordpress GUID in import log
Ticket URL:
https://technologyprogramme.atlassian.net/browse/CI-1581
Testing

[ ] CI passes
[ ] If necessary, tests are added for new or fixed behaviour
[x] These changes do not reduce test coverage

Documentation.

[ ] This PR adds or updates documentation
[x] Documentation changes are not necessary because: There is no existing reference to log output

Closing as opened against incorrect repo.


Additional type argument to allow custom config.name for react-apollo HOCs

Fixes issue described in https://github.com/dotansimha/graphql-code-generator/issues/2192

If somebody can suggest hot to reproduce CI issue locally I will be able to fix it. Strangely yarn build-and-test executes without errors locally:

As you can see in the example, CI takes dev-test diff so you need to run yarn generate:examples and commit :)

@ardatan thanks for a quick response, committed examples 👍

Thank you @valerybugakov !


MINOR: Append or create file in FileStreamSinkTask

In FileStreamSinkTask we need to create the file it doesn't exist.
A recent change from new FileOutputStream to Files.newOutputStream missed the CREATE flag additionally to APPEND

@ijuma this issue applies only to trunk
A system test job runs here: https://jenkins.confluent.io/job/system-test-kafka-branch-builder/1864/console

Thanks for fixing this. It's unfortunate that we don't have any unit/integration tests though. Would it be difficult to add so that we can catch such issues without running the system tests in the future?

@ijuma good point about the unit test.
This has been a dummy connector and has been missing some coverage.
Added a quick and dirty one test case. (preferred to make it look like the previous one than make it more beautiful tbh).

One failed unit test (org.apache.kafka.common.network.SslSelectorTest.testCloseConnectionInClosingState) is not relevant to this PR.


Big Sur version detection

I use macOS Big Sur (11.0) which is higher than 10.12.6
❯ sw_vers -productVersion
11.0

❯ ./install
./install: macOS 11.0 is not supported, upgrade to 10.12.6 or higher

I think this block of the code should change:
# macOS support for 10.12.6 or higher
if [ "$(uname -s)" = "Darwin" ]; then
    macos_major=$(sw_vers -productVersion | cut -d '.' -f 2)
    macos_minor=$(sw_vers -productVersion | cut -d '.' -f 3)
    if [ "$macos_major" -lt 12 ] || { [ "$macos_major" -eq 12 ] && [ "$macos_minor" -lt 6 ]; }; then
        echo "$0: macOS $(sw_vers -productVersion) is not supported, upgrade to 10.12.6 or higher"
        exit 1
    fi
fi

This will hopefully be fixed in a few weeks.

Fixed

Please test https://github.com/numtide/nix-flakes-installer/releases/tag/nix-2.4pre20201221_9fab14a

❯ sh <(curl -L https://github.com/numtide/nix-flakes-installer/releases/download/nix-2.4pre20201221_9fab14a/install)
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   633  100   633    0     0    345      0  0:00:01  0:00:01 --:--:--   345
100  3865  100  3865    0     0   1163      0  0:00:03  0:00:03 --:--:--  7745
/dev/fd/11: line 63: --tarball-url-prefix: command not found
downloading Nix 2.4pre20201221_9fab14a binary tarball for x86_64-darwin from 'https://github.com/numtide/nix-flakes-installer/releases/download/nix-2.4pre20201221_9fab14a/nix-2.4pre20201221_9fab14a-x86_64-darwin.tar.xz' to '/var/folders/95/vltlhrln2wq6mc1f2ylwm96w0000gn/T/nix-binarytarball-unpack.pkuEIvUlrZ'...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   673  100   673    0     0    544      0  0:00:01  0:00:01 --:--:--   544
100 24.5M  100 24.5M    0     0   622k      0  0:00:40  0:00:40 --:--:--  797k
/var/folders/95/vltlhrln2wq6mc1f2ylwm96w0000gn/T/nix-binary-tarball-unpack.pkuEIvUlrZ/unpack/nix-2.4pre20201221_9fab14a-x86_64-darwin/install:
nixpkgs isn't quite ready to support macOS 11.0.1 yet

nixpkgs isn't quite ready to support macOS 11.0.1 yet

did you pin nixpkgs to something older?

Do you mean this?

Is this on a fresh system? I was thinking that you might have a nixpkgs checkout somewhere already.
Try this:
sh <(curl -L https://github.com/numtide/nix-flakes-installer/releases/download/nix-2.4pre20201221_9fab14a/install) --no-channel-add

No, It is not a fresh system. I tried sh <(curl -L https://github.com/numtide/nix-flakes-installer/releases/download/nix-2.4pre20201221_9fab14a/install) --no-channel-add and still getting the same output.
And I realised that I already installed nix flakes (nix (Nix) 2.4pre20201201_5a6ddb3) using this:
nix.package = pkgs.nixFlakes; # NOTE: EXPERIMENTAL.
nix.extraOptions = lib.optionalString (config.nix.package == pkgs.nixFlakes)
	"experimental-features = nix-command flakes";

So, I don't need this tool right?

Is this on a fresh system?

I deleted my whole /nix and ~/.nix* and tried  both
sh <(curl -L https://github.com/numtide/nix-flakes-installer/releases/download/nix-2.4pre20210126_f15f0b8/install)

sh <(curl -L https://github.com/numtide/nix-flakes-installer/releases/download/nix-2.4pre20210126_f15f0b8/install) --no-channel-add

still no luck :/
the error is:
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   615  100   615    0     0    607      0  0:00:01  0:00:01 --:--:--   608
100  3865  100  3865    0     0   1896      0  0:00:02  0:00:02 --:--:-- 15584
/dev/fd/11: line 63: --no-channel-add: command not found
downloading Nix 2.4pre20210126_f15f0b8 binary tarball for x86_64-darwin from 'https://github.com/numtide/nix-flakes-installer/releases/download/nix-2.4pre20210126_f15f0b8/nix-2.4pre20210126_f15f0b8-x86_64-darwin.tar.xz' to '/var/folders/95/vltlhrln2wq6mc1f2ylwm96w0000gn/T/nix-binary-tarball-unpack.XXXXXXXXXX.ExPLN8sU'...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   655  100   655    0     0    659      0 --:--:-- --:--:-- --:--:--   659
100 24.5M  100 24.5M    0     0   267k      0  0:01:33  0:01:33 --:--:--  290k
/var/folders/95/vltlhrln2wq6mc1f2ylwm96w0000gn/T/nix-binary-tarball-unpack.XXXXXXXXXX.ExPLN8sU/unpack/nix-2.4pre20210126_f15f0b8-x86_64-darwin/install: nixpkgs isn't quite ready to support macOS 11.2 yet

Is this on a fresh system?

I deleted my whole /nix and ~/.nix* and tried  both
sh <(curl -L https://github.com/numtide/nix-flakes-installer/releases/download/nix-2.4pre20210126_f15f0b8/install)

sh <(curl -L https://github.com/numtide/nix-flakes-installer/releases/download/nix-2.4pre20210126_f15f0b8/install) --no-channel-add

still no luck :/
the error is:
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   615  100   615    0     0    607      0  0:00:01  0:00:01 --:--:--   608
100  3865  100  3865    0     0   1896      0  0:00:02  0:00:02 --:--:-- 15584
/dev/fd/11: line 63: --no-channel-add: command not found
downloading Nix 2.4pre20210126_f15f0b8 binary tarball for x86_64-darwin from 'https://github.com/numtide/nix-flakes-installer/releases/download/nix-2.4pre20210126_f15f0b8/nix-2.4pre20210126_f15f0b8-x86_64-darwin.tar.xz' to '/var/folders/95/vltlhrln2wq6mc1f2ylwm96w0000gn/T/nix-binary-tarball-unpack.XXXXXXXXXX.ExPLN8sU'...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   655  100   655    0     0    659      0 --:--:-- --:--:-- --:--:--   659
100 24.5M  100 24.5M    0     0   267k      0  0:01:33  0:01:33 --:--:--  290k
/var/folders/95/vltlhrln2wq6mc1f2ylwm96w0000gn/T/nix-binary-tarball-unpack.XXXXXXXXXX.ExPLN8sU/unpack/nix-2.4pre20210126_f15f0b8-x86_64-darwin/install: nixpkgs isn't quite ready to support macOS 11.2 yet

There is a comment though:
...
    # TODO: this is a temporary speed-bump to keep people from naively installing Nix
    # on macOS Big Sur (11.0+, 10.16+) until nixpkgs updates are ready for them.
    # *Ideally* this is gone before next Nix release. If you're intentionally working on
    # Nix + Big Sur, just comment out this block and be on your way :)
    if [ "$macos_major" -gt 10 ] || { [ "$macos_major" -eq 10 ] && [ "$macos_minor" -gt 15 ]; }; then
        echo "$0: nixpkgs isn't quite ready to support macOS $(sw_vers -productVersion) yet"
        exit 1
    fi
...

So I commented out that block and now getting this error:
$ ./install
Note: a multi-user installation is possible. See https://nixos.org/nix/manual/#sect-multi-user-installation
performing a single-user installation of Nix...
copying Nix to /nix/store.....................
./install: line 192: /nix/store/hzsnsvbjk0wi7zwspcn572ydfs4ad1lv-nix-2.4pre20210126_f15f0b8/bin/nix-store: No such file or directory
./install: unable to register valid paths

There is a comment though:
...
    # TODO: this is a temporary speed-bump to keep people from naively installing Nix
    # on macOS Big Sur (11.0+, 10.16+) until nixpkgs updates are ready for them.
    # *Ideally* this is gone before next Nix release. If you're intentionally working on
    # Nix + Big Sur, just comment out this block and be on your way :)
    if [ "$macos_major" -gt 10 ] || { [ "$macos_major" -eq 10 ] && [ "$macos_minor" -gt 15 ]; }; then
        echo "$0: nixpkgs isn't quite ready to support macOS $(sw_vers -productVersion) yet"
        exit 1
    fi
...

So I commented out that block and now getting this error:
$ ./install
Note: a multi-user installation is possible. See https://nixos.org/nix/manual/#sect-multi-user-installation
performing a single-user installation of Nix...
copying Nix to /nix/store.....................
./install: line 192: /nix/store/hzsnsvbjk0wi7zwspcn572ydfs4ad1lv-nix-2.4pre20210126_f15f0b8/bin/nix-store: No such file or directory
./install: unable to register valid paths

There was some files in nix store. I removed them with sudo rm -rf /nix and run the modified install script again and it worked. Thanks!

There was some files in nix store. I removed them with sudo rm -rf /nix and run the modified install script again and it worked. Thanks!