fix key update fail  in non-blocking

Fixes https://github.com/openssl/openssl/issues/13729 and https://github.com/openssl/openssl/issues/12485

In tls13 key update， the block socket is rigiht. Then in  non-blocking, The keyupdate is sending when local is writing, that will get the error code SSL_R_BAD_LENGTH .  The keyupdate  is sending when local or peer is reading, that will get  the error code SSL_R_DECRYPTION_FAILED_OR_BAD_RECORD_MAC . The key update msg interrupted the complete encryption record.
My current thinking is that when there is reading and writing, it is delayed until the reading and writing are completed to send and receive key updates.

Could you please submit a CLA? https://www.openssl.org/policies/cla.html

ok，I sent a successfully signed pdf  email yesterday.

@t8m  email always send  fail， may I  send other email address？
rcpt handle timeout,last handle info: Can not connect to opensslfoundation.org:<IP_ADDRESS>:25

@mattcaswell @kaduk  Can you help review this PR?

@mattcaswell @kaduk Can you help review this PR?

Yes, I spent some time looking at this yesterday, but need to spend a bit more time on it before I provide comments.

I don't think the fix presented in this PR is the correct solution.
There are two problems being addressed.

A key update operation that is triggered while a partial record read has occurred fails when the remainder of the record is subsequently read.

The root cause of this problem is a bug in the function ssl3_setup_read_buffer(). This function may be called at times when the read buffer has already been set up. Notably this occurs at the start of the "init" phase (as occurs during a key update operation).   In that case this function should "do nothing". One particular line in that function resets the value of the s->rlayer.packet pointer. This pointer is used to determine where the start of the read buffer is after alignment has been taken into account. ssl3_setup_read_buffer() doesn't correctly calculate this and just sets it to the start of the buffer regardless of alignment. This doesn't normally make a difference because it gets reset to the correct value when we start reading a new record in ssl3_read_n:
https://github.com/openssl/openssl/blob/53111a88ce5081f44a1775ddb11765491f115f50/ssl/record/rec_layer_s3.c#L201-L227
This goes wrong when we read a partial record, perform a key update operation (and hence end up calling ssl3_setup_read_buffer) and then continue the read operation afterwards.
The reset of the packet pointer in ssl3_setup_read_buffer is completely unnecessary, and simply removing it solves the problem:
Author:     Matt Caswell<EMAIL_ADDRESS>AuthorDate: Tue Jul 13 17:19:12 2021 +0100
Commit:     Matt Caswell<EMAIL_ADDRESS>CommitDate: Tue Jul 13 17:19:12 2021 +0100

    Don't reset the packet pointer in ssl3_setup_read_buffer

    Sometimes this function gets called when the buffers have already been
    set up. If there is already a partial packet in the read buffer then the
    packet pointer will be set to an incorrect value. The packet pointer already
    gets reset to the correct value when we first read a packet anyway, so we
    don't also need to do it in ssl3_setup_read_buffer.

diff --git a/ssl/record/ssl3_buffer.c b/ssl/record/ssl3_buffer.c
index 861610a08b..daa175d98c 100644
--- a/ssl/record/ssl3_buffer.c
+++ b/ssl/record/ssl3_buffer.c
@@ -73,7 +73,6 @@ int ssl3_setup_read_buffer(SSL *s)
         b->len = len;
     }

-    RECORD_LAYER_set_packet(&s->rlayer, &(b->buf[0]));
     return 1;
 }

The second problem being addressed is where SSL_write() is called and SSL_ERROR_WANT_WRITE is returned, before subsequently calling SSL_key_update().

IMO this is just incorrect API usage. If you get SSL_ERROR_WANT_WRITE returned from SSL_write() then you must not do any other write operations other than a repeat of the previous SSL_write() call.
This is what the docs say about it:
It is safe to call SSL_read() or SSL_read_ex() when more data is available
even when the call that set this error was an SSL_write() or SSL_write_ex().
However, if the call was an SSL_write() or SSL_write_ex(), it should be called
again to continue sending the application data.

I think the docs need to be updated to be even more explicit, i.e. if you get SSL_ERROR_WANT_WRITE from SSL_write then you should not do any other IO operation other than a repeat of the previous SSL_write call.
It would also be sensible to immediately fail if SSL_key_update is called when this is the case:
Author:     Matt Caswell<EMAIL_ADDRESS>AuthorDate: Tue Jul 13 17:44:44 2021 +0100
Commit:     Matt Caswell<EMAIL_ADDRESS>CommitDate: Tue Jul 13 17:44:44 2021 +0100

    Disallow SSL_key_update() if there are writes pending

    If an application is halfway through writing application data it should
    not be allowed to attempt an SSL_key_update() operation. Instead the
    SSL_write() operation should be completed.

diff --git a/ssl/ssl_lib.c b/ssl/ssl_lib.c
index c1e8e41f02..892a417d93 100644
--- a/ssl/ssl_lib.c
+++ b/ssl/ssl_lib.c
@@ -2262,6 +2262,11 @@ int SSL_key_update(SSL *s, int updatetype)
         return 0;
     }

+    if (RECORD_LAYER_write_pending(&s->rlayer)) {
+        ERR_raise(ERR_LIB_SSL, SSL_R_BAD_WRITE_RETRY);
+        return 0;
+    }
+
     ossl_statem_set_in_init(s, 1);
     s->key_update = updatetype;
     return 1;

With all of that said I think the tests presented in this PR are very useful and should be retained, with the exception of test_key_update_local_in_write which should be modified to confirm that calling SSL_key_update when a partial write has occurred produces an error as per my patch above.
@yangyangtiantianlonglong - would you be willing to update this PR to incorporate my suggested fixes above, remove yours, and update the tests as I suggest?

OK, I agree with the two points you made above, and I'll update the PR and test cases.

@mattcaswell to make things easier, I'd suggest submitting your two fixes as a separate PR, which I'd approve immediately. After it is merged @yangyangtiantianlonglong can rebase this PR and remove the unneeded changes but keep the tests (with the necessary adjustment).

Is this only limited to other write I/O operations? It is safe to call SSL_read() or SSL_read_ex().

No, if you call SSL_write() and get SSL_ERROR_WANT_WRITE, then the next IO operation must be SSL_write().

@mattcaswell to make things easier, I'd suggest submitting your two fixes as a separate PR, which I'd approve immediately. After it is merged @yangyangtiantianlonglong can rebase this PR and remove the unneeded changes but keep the tests (with the necessary adjustment).

Yes, ok. I can do that.

Yes, ok. I can do that.

Raised as #16077

yes, After merge in #16077，I will rebase upstream the master, commit testcase and doc.

My operation problem caused this PR to be closed, and I have recreated it in  #16085，already rebase https://github.com/openssl/openssl/pull/16077.


Make defaultState non-optional

Since we have to return a non-undefined state in redux, we should probably make the defaultState parameter for handleActions required. Thoughts?

I agree. It would be way more helpful for people to see a clear and explicit error up front than to try and figure out why Redux is complaining about their reducer all the way downstream.

+1
I'll probably open a PR for this.

@timche are you still working on this, or can I self-assign?

You can if you want.

Fixed in #127.


Twig in pages

I have globally enabled Twig parsing in pages, and no override set for the specific page (home)
I tried {{ page.url }} which works as expected, and is replaced by /home.
I wanted to use more sophisticated stuff, like {% for site in pages.children.nonVisible %} but this doesn't get executed, apparently just skipped.
Is there a way that i can use such thing in a page, or what should i do then?

That sort of twig should work fine in pages if you have twig processing enabled.  More likely it's just not finding any suitable pages.
I think in this case you want page.children ???
The best thing to do is to enable the debugger in Grav, and then Dump vars to make sure the Twig code is correct:
{{ dump(page.children.nonVisible) }}

Well.
Through debugging i found my error. I don't want page.children.
I want to iterate over all nonvisible pages. at the moment, i'm doing this via page.parent.children... but is there a better way?

I think you might want page.siblings..

Well, yes, but also what I mean is how to get a Collection of all pages, not just siblings ;)
Thanks for the effort

probably you are looking for descendants() then:
https://learn.getgrav.org/content/collections


(feature/fvdb) [BUILD] setup.py fvdb.utils.data & fvdb.utils._colmap_utils doesnt exists in folder

Environment
Version / Commit SHA: fVDB 0.2.0
As title states, these two fvdb.utils.data & fvdb.utils._colmap_utils  dont exists in fvdb/utils folder cause build issues.

I encountered the same bug

Hi @jeevanpillay
Apologies, we had an issue where paths in a .gitignore masked some files that should have been there in the last commit.  This should be fixed now, sorry for the hassle.


"az logicapp create" doesn't support functions 4.x runtime

az feedback auto-generates most of the information requested below, as of CLI version 2.0.62

Related command

Following this URL: https://learn.microsoft.com/ja-jp/cli/azure/logicapp?view=azure-cli-latest#az-logicapp-create
az logicapp create --name --resource-group --storage-account
e.g. az logicapp create --name mytestappsstd --resource-group playground --storage-account playground84c9
In this case, mytestappsstd is new Logic Apps Standard's name.
playground and playground84c9 was my existing resource group and storage account.
Describe the bug

Deploy was succeed but some of configuration parameter is missing.

("Update to Functions 4.x runtime")
All of the parameter appeared first was below.

Because functions runtime is also 3, I changed manually by following this announcement.
https://techcommunity.microsoft.com/t5/integrations-on-azure-blog/azure-logic-apps-standard-now-supports-azure-functions-v4/ba-p/3656072
To Reproduce

Run command.
az logicapp create --name  --resource-group  --storage-account
In my case, my resource group was located at 'east asia'
Expected behavior

Configuration should be filled without maintaining manually for 4.x runtime.
Environment summary

C:\Users\nobukoyamada>az --version
azure-cli                         2.42.0 *

core                              2.42.0 *
telemetry                          1.0.8

Extensions:
logic                              0.1.6
ssh                                1.1.3

Dependencies:
msal                              1.20.0
azure-mgmt-resource             21.1.0b1

Python location 'C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\python.exe'
Extensions directory 'C:\Users\nobukoyamada\.azure\cliextensions'

Python (Windows) 3.10.8 (tags/v3.10.8:aaaf517, Oct 11 2022, 16:37:59) [MSC v.1933 32 bit (Intel)]

Additional context

I'm support engineer in Japan. alias: nobukoyamada

Updated my CLI but still there is same message.

C:\Users\nobukoyamada>az --version
azure-cli                         2.46.0

core                              2.46.0
telemetry                          1.0.8

Extensions:
logic                              0.1.6
ssh                                1.1.3

Dependencies:
msal                              1.20.0
azure-mgmt-resource             21.1.0b1

Python location 'C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\python.exe'
Extensions directory 'C:\Users\nobukoyamada\.azure\cliextensions'

Python (Windows) 3.10.10 (tags/v3.10.10:aad5f6a, Feb  7 2023, 17:05:00) [MSC v.1929 32 bit (Intel)]

Legal docs and information: aka.ms/AzureCliLegal

Your CLI is up-to-date.

I hope this information can be the help!

route to CXP team

We are working on fix for this. Meanwhile please manually reset the version in the app settings from portal by setting this property to version ~4
"FUNCTIONS_EXTENSION_VERSION" : "~4"

manually reset the version in the app settings under the "Configurations" blade from portal by setting this property to version ~4
"FUNCTIONS_EXTENSION_VERSION" : "~4"

Thank you! Got it.

Hi,
A workaround is setting the v4 version after the az logicapp create, like such:
az logicapp config appsettings set -n laName -g rgName --settings "FUNCTIONS_EXTENSION_VERSION=~v4"
As referred to in the documentation


[SR-13792] Index store should relate appendInterpolation from string literals

Previous ID
SR-13792

Radar
rdar://problem/70820224

Original Reporter
Leitch (JIRA User)

Type
New Feature

Additional Detail from JIRA

Votes
0

Component/s
Source Tooling

Labels
New Feature

Assignee
Leitch (JIRA)

Priority
Medium

md5: 0896b2e76fc58c37c42a995dde600eea

Issue Description:
Given the following code:
extension String.StringInterpolation {
    mutating func appendInterpolation(test value: Int) {
        appendInterpolation(value)
    }
}

public struct Fixture112 {
    public func someFunc() {
        print("test: \(test: 1)")
    }
}

The index store could include a relation from the someFunc() occurrence to appendInterpolation(test:). For the purposes of identifying unused code, it's not currently possible to identify that appendInterpolation(test:) is used in the string interpolation.

seems to still be the case at https://github.com/apple/swift/commit/ed3555ad079552d496a78148daf6d40cd677bf8d


I have error 'unknown notification.Action field 'MessageType' in struct literal'

See all error massage when i run go get -u github.com/qor/qor-example
github.com/qor/qor-example/config/admin
go/src/github.com/qor/qor-example/config/admin/admin.go:58: unknown notification.Action field 'MessageType' in struct literal

should been fixed, thank you for your report


Fix: Abstract models should not show 'database table' string in rendered documentation

This fixes issue, raised by me in #39
It also rename database model related options, and add few other.
fixes #39

@timoludwig, please take a look. I am plan to add few more pull request on things, that bothers me.
But as all of them related to model generation, I do not want to add all at once, to exclude merge conflicts.

Codecov Report

Merging #40 (7dd5c58) into main (955853e) will not change coverage.
The diff coverage is 100.00%.

@@            Coverage Diff            @@
##              main       #40   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           10        10
  Lines          308       315    +7
=========================================
+ Hits           308       315    +7

Impacted Files
Coverage Δ

sphinxcontrib_django/docstrings/__init__.py
100.00% <100.00%> (ø)

sphinxcontrib_django/docstrings/classes.py
100.00% <100.00%> (ø)

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

@timoludwig I removed django_tables_names_abstract_name option.
Second PR (#42)  fixed too.


roxterm: 3.14.2 -> 3.14.3

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/realh/roxterm/releases.
meta.description for roxterm is: Tabbed, VTE-based terminal emulator
meta.homepage for roxterm is: https://github.com/realh/roxterm
Updates performed

Version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 3.14.3 with grep in /nix/store/68s97ymcpqc7y3hf3l9i8aqpiy9ws58m-roxterm-3.14.3
found 3.14.3 in filename of file in /nix/store/68s97ymcpqc7y3hf3l9i8aqpiy9ws58m-roxterm-3.14.3

Rebuild report (if merged into master) (click to expand)

1 total rebuild path(s)

1 package rebuild(s)

First fifty rebuilds by attrpath
roxterm

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/68s97ymcpqc7y3hf3l9i8aqpiy9ws58m-roxterm-3.14.3 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A roxterm https://github.com/r-ryantm/nixpkgs/archive/7610f94bbb4fffbd289890679040bde9d0465b3c.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/7610f94bbb4fffbd289890679040bde9d0465b3c#roxterm

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/68s97ymcpqc7y3hf3l9i8aqpiy9ws58m-roxterm-3.14.3
ls -la /nix/store/68s97ymcpqc7y3hf3l9i8aqpiy9ws58m-roxterm-3.14.3/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

roxterm

Maintainer pings

I wanna adopt this!


Matching Keypoints

This PR adds the following features:

Matching keypoints between pairs of images

The matching itself is quite simple. The complexity comes from clustering the keypoints.

Clustering detected keypoints in an image

Hierarchical agglomerative clustering is used here. This is for a few reasons:

We do not know the number of clustering groups will find, so k-means is out.
We are easily able to short-circuit clustering if a clustering range threshold is reached.
Ease of development

Future work:

Test other clustering algorithms
Configure cache to store random points

Alternatively, use the same set of gaussian random points each run.

Clean up the code!

I'm making the executive decision to move onto the next steps, but there is a lot of cleanup necessary. Especially with bundling configuration parameters.

NOTE: Converting to draft until updated code can be pushed - I'm on an airplane and the internet is failing me :(


Store not being set to WebHosting

Hello,
I have set the Store to WebHosting and its still importing into Personal store the debug info confirms its going into Cert:\LocalMachine\My.
Paul

@PaulSpn1 is IIS installed? The WebHosting store doesn't exist before IIS is installed so it may just take an invalid store and use My as the default (if so that would be the Import-PfxCertificate cmdlet doing that, not this resource).

Yes IIS is installed and Default website exists

The verbose output is below, so its seems to still think the sore is set as My, event iff I specify a different store the output remains the same
VERBOSE: [PMDEV]:                            [[xPfxImport]CompanyCert] Performing the operation "Set-TargetResource" on target "Importin
g PFX 'C:\Certs\wildcard 02092014 2016.pfx' into 'Cert:\LocalMachine\My'".

@PaulSpn1 Could you please tell me which store it is you are trying to write to?
This way I can try to recreate the issue.

@PaulSpn1 Could you please try this action again with the latest version of the resource?
If you are still running into the same issue, Please let me know what parameters you are using (without the certificate/thumbprint) and I will see if I can recreate the issue.

I'm going to close this one because of lack of activity. @PaulSpn1 - feel free to reopen this.


Fix for blueimp uploading not translating error messages

Hi There,
I ran into the blueimp uploader not doing the i18n issue that some others have.
I found the previous attempt at fixing this in the list of pending pull requests, but it has languished since 2014, so I thought I would have a crack at getting it fixed.
I have added an addition assert to the blueimp max file size test to ensure that translation is being done properly.
On my machine at least I needed to add some addition packages for the unit tests to run successfully, the change here looked like
diff --git a/composer.json b/composer.json
index b0ef8ce..22be261 100644
--- a/composer.json
+++ b/composer.json
@@ -17,7 +17,11 @@
     "require": {
         "php":">=5.4",
         "symfony/framework-bundle": "^2.4.0|~3.0",
-        "symfony/finder": "^2.4.0|~3.0"
+        "symfony/finder": "^2.4.0|~3.0",
+        "symfony/http-kernel": "3.2.*",
+        "symfony/asset": "^3.2",
+        "symfony/templating": "^3.2",
+        "symfony/translation": "^3.2"
     },

     "require-dev": {

It looks like the travis build succeeded, so we don't have to adapt the composer.json.

That's cool, when is this pull request likely to get merged?

I try to merge it today :)

Related: #131

Thank you!

Awesome, cheers!


Camera does not work

Upon launching Camera (io.elementary.camera), we are greeted with this error and the app fails to function.

elementary/camera#181 explains this issue is caused by the missing GStreamer "good" package but this is present on Sodalite, so there is either differences with how Ubuntu (and NixOS it seems) packages this or there is another problem.
As a side note, the Flatpak version of the app works perfectly.

Ah, seems we were missing the additional gstreamer1-plugins-good-gtk to provide the GTK bindings!


Is there a bug in the single body pass parameter?

Privileged issue

[X] I'm @tiangolo or he asked me directly to create an issue here.

Issue Content
server
from fastapi import FastAPI
import uvicorn
from pydantic import BaseModel

app = FastAPI()

class InputParams(BaseModel):
    name:str

@app.post("/")
async def index(params:InputParams):
    return f"hello {params.name}"

uvicorn.run(app)

client
import requests
import json

host = "http://localhost:8000"
uri = "/"
url = host + uri

body = {"name": "aaa"}

response = requests.post(url, json=body)
print(response.status_code)
print(response.json())

It's OK.
server
from fastapi import FastAPI, Body
import uvicorn

app = FastAPI()

@app.post("/")
async def index(name:str=Body(), age:int=Body()):
    return f"hello {name}, {age}"

uvicorn.run(app)

client
import requests
import json

host = "http://localhost:8000"
uri = "/"
url = host + uri

body = {"name": "aaa", "age":18}

response = requests.post(url, json=body)
print(response.status_code)
print(response.json())

OK again.
server
from fastapi import FastAPI, Body
import uvicorn
from pydantic import BaseModel

app = FastAPI()

class InputParams(BaseModel):
    name:str
    age:int

@app.post("/")
async def index(params:InputParams):
    return f"hello {params.name, params.age}, "

uvicorn.run(app)

client
import requests
import json

host = "http://localhost:8000"
uri = "/"
url = host + uri

body = {"name": "aaa", "age":18}

response = requests.post(url, json=body)
print(response.status_code)
print(response.json())

ok. No problem.
But!!!!
server
from fastapi import FastAPI, Body
import uvicorn

app = FastAPI()

@app.post("/")
async def index(name:str=Body()):
    return f"hello {name}"

uvicorn.run(app)

client
import requests
import json

host = "http://localhost:8000"
uri = "/"
url = host + uri

body = {"name": "aaa"}

response = requests.post(url, json=body)
print(response.status_code)
print(response.json())

It's failed. why??? very confuse!!!
How should I call it, or where can I get knowledge about it. will the next version of fastapi be able to support this call?
help me thank you very much!

422
{'detail': [{'type': 'string_type', 'loc': ['body'], 'msg': 'Input should be a valid string', 'input': {'name': 'aaa'}}]}

import requests
import json
host = "http://localhost:8000"
uri = "/"
url = host + uri
body = {"name": "aaa"}
response = requests.post(url, json="aaa")
print(response.status_code)
print(response.json())
this is correct. but why?

In fact, such a modification can be very problematic, as there are inconsistencies in calling the method when there is only one body and multiple bodies

If you want to take the request-body in a json format, the correct way is to parse it as a Pydantic model (see this documentation page. I.e., do this:
from fastapi import FastAPI, Body
import uvicorn
from pydantic import BaseModel

app = FastAPI()

class InputParams(BaseModel):
    name:str
    age:int

@app.post("/")
async def index(params:InputParams):
    return f"hello {params.name, params.age}, "

uvicorn.run(app)

If you want to be able to only take one input parameter, you can do the following:
from fastapi import FastAPI, Body
import uvicorn
from typing import Annotated

app = FastAPI()

@app.post("/")
async def index(name: Annotated[str, Body(embed=True)]):
    return f"hello {name}"

uvicorn.run(app)

For a reference to the Body (in particular the embed) documentation:
https://fastapi.tiangolo.com/reference/parameters/?h=body+embed#fastapi.Body

thank you. It work


[BUG] php version is always 8.0.19

Describe the bug
A clear and concise description of what the bug is.
No matter which value I put under PHP version, I always get PHP Version 8.0.19
which Branch / PHP Version are you using ?
php74, php56
Steps to reproduce
Steps to reproduce the behavior:

copy sample.env > .env
edit line 8 in .env: PHPVERSION=php56
docker-compose up -d
container has right name (php56), but runs PHP 8.0.19

Expected behavior
The server should run PHP 5.6, but doesn't.
Desktop (please complete the following information):

OS: Kubuntu
Browser Firefox, Chrome
Docker Version: 24.0.7, build afdd53b

nvm, I now I deleted images and volumes and it works


EnvoyFilter isn't applied in 1.1-rc.2

Describe the bug
Creating an EnvoyFilter in Istio 1.1-rc.2 does nothing.
Steps to reproduce the bug
I created and applied the simplest possible Lua filter I could:
apiVersion: networking.istio.io/v1alpha3
kind: EnvoyFilter
metadata:
  name: lua-test
spec:
  filters:
  - filterName: envoy.lua
    filterType: HTTP
    filterConfig:
      inlineCode: |
        function envoy_on_request(request_handle)
          request_handle:logCritical("log test")
        end

There is no effect in 1.1. I've verified that this works in 1.0 and that /config_dump includes the filter in 1.0 and not in 1.1.
Version
➜  temp istioctl version
version.BuildInfo{Version:"1.1.0-rc.2", GitRevision:"a5e38d2cbedbb1eeb8f60b24176656d1813dea44", User:"root", Host:"d994e95d-3e07-11e9-8dad-0a580a2c0205", GolangVersion:"go1.10.4", DockerHub:"docker.io/istio", BuildStatus:"Clean", GitTag:"1.1.0-rc.1-25-ga5e38d2"}
➜  temp kubectl version
Client Version: version.Info{Major:"1", Minor:"10", GitVersion:"v1.10.11", GitCommit:"637c7e288581ee40ab4ca210618a89a555b6e7e9", GitTreeState:"clean", BuildDate:"2018-11-26T14:38:32Z", GoVersion:"go1.9.3", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"10", GitVersion:"v1.10.11", GitCommit:"637c7e288581ee40ab4ca210618a89a555b6e7e9", GitTreeState:"clean", BuildDate:"2018-11-26T14:25:46Z", GoVersion:"go1.9.3", Compiler:"gc", Platform:"linux/amd64"}
Installation
kubectl apply -f $ISTIO/install/kubernetes/istio-demo.yaml
Environment
Docker for Desktop Mac

@theganyo did you test it with a prior release?
@robertpanzer are you injecting lua filters in 1.1  or 1.0 ?

No, I haven’t tested against the various pre-releases of 1.1. When it didn’t work, I tested against 1.0 as a baseline.

I got it working on rc2 by adding workloadLabels and a listenerMatch:
apiVersion: networking.istio.io/v1alpha3
kind: EnvoyFilter
metadata:
  name: lua-test
spec:
  workloadLabels:
  filters:
    - listenerMatch:
        listenerProtocol: HTTP
        listenerType: SIDECAR_INBOUND
      filterName: envoy.lua
      filterType: HTTP
      filterConfig:
        inlineCode: |
          function envoy_on_request(request_handle)
            request_handle:logCritical("log test")
          end

The workloadLabels can even be empty, but have to be there.
Without the listenerMatch it also seems that the filter is not applied.
Both make sense, but it is not documented like this, I think this could be enhanced.
I am always using the listenerMatch and the workloadLabels, so I cannot quickly test if this worked on 1.0.

Interesting. My first attempts had both listenerMatch and workloadLabels, but I removed all optional fields and whittled it down to the minimum to see if I could get it working at all. It never did, but I’ll give it another try.

Without listener match pilot will attempt to place an http filter outside http connection manager.

Aha! So the real key to all this is listenerProtocol: HTTP. Indeed, I just verified that this must be present to win. All other fields are optional.

I'll be happy to make a doc change for this, but I want to be sure I'm specific and correct. Perhaps just a warning on the EnvoyFilter doc page that if it uses an Envoy HTTP filter, it will not work unless listenerProtocol: HTTP is set. Does that sound correct?

Yes that sounds right.
On Thu, Mar 7, 2019 at 10:05 AM Scott Ganyo<EMAIL_ADDRESS>wrote:

I'll be happy to make a doc change for this, but I want to be sure I'm
specific and correct. Perhaps just a warning on the EnvoyFilter doc page
that if it uses an Envoy HTTP filter, it will not work unless listenerProtocol:
HTTP is set. Does that sound correct?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/istio/istio/issues/12313#issuecomment-470632249, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAw2d7YVFZnFUMo_Y3dOMSfIhbF2Qz9kks5vUVTYgaJpZM4biIC3
.

I'd like to fix validation for workload labels.
The documentation https://preliminary.istio.io/docs/reference/config/networking/v1alpha3/envoy-filter/#EnvoyFilter says there should be "one or more" workload labels but this isn't checked.  I saw the same language for the Sidecar CRD and it is checked there.
The documentation for listenerProtocol https://preliminary.istio.io/docs/reference/config/networking/v1alpha3/envoy-filter/#EnvoyFilter-ListenerMatch says "If not specified, applies to listeners on all protocols."  That seems unimplemented.  Do we need a defect to fix it?

There's seemingly another doc issue as well: The following are from two different spots on the page and (I believe) contradictory. Which is correct?
NOTE 2: When multiple EnvoyFilters are bound to the same workload, all filter configurations will be processed sequentially in order of creation time. The behavior is undefined if multiple EnvoyFilter configurations conflict with each other.

NOTE: There can be only one EnvoyFilter bound to a specific workload. The behavior is undefined if multiple EnvoyFilter configurations are specified for the same workload.

As far as I can tell from the code, the first note (NOTE 2) is the correct one.
@esnible Is there a good reason to force workload labels?

@theganyo You are correct, we should not force workload labels.  I made a mistake when testing.
I did find a delay.
First I recreated your no-workload-label example adding a listenerMatch
    listenerMatch:
        listenerProtocol: HTTP
        listenerType: SIDECAR_INBOUND

I confirmed it was attached to the pod using kubectl exec httpbin-54f5bb4957-l9nds -c istio-proxy -- curl --silent localhost:15000/config_dump | grep lua
I then deleted it and repeated the command above to see if the filter was removed from the config.  It was, but it took about 40 seconds to go away.

I'll just update the docs to say "zero or more" workload labels as well.

Re:

The documentation for listenerProtocol https://preliminary.istio.io/docs/reference/config/networking/v1alpha3/envoy-filter/#EnvoyFilter-ListenerMatch says "If not specified, applies to listeners on all protocols." That seems unimplemented. Do we need a defect to fix it?

I'm not sure. This is what confused me and why I was going to add the warning that listenerProtocol: HTTP must be specified. It feels like these two statements are contrary... but wasn't sure if I'm just missing some nuance?

Alternatively, it is a documentation issue and validation omission. The specific case of "tcp listener, http filter" is called out as invalid in the code, but there's no error when you submit an EnvoyFilter with filterType: HTTP and either no listenerProtocol or listenerProtocol: TCP.

sorry for the confusion.. the envoy filter code can insert a network filter to both tcp based services/listeners, and http based services.. that said, order of insertion matters.. in the end, we run a validate() function on each listener.. if any of them are found to be invalid we skip it (or all?)
Envoy for its part does same..

Unfortunately, I'm still confused. The issue is clear: if you have a EnvoyFilter of filterType: HTTP and you don't also explicitly include a listenerMatch.listenerProtocol: HTTP it just silently fails. But it still isn't clear to me what the appropriate resolution is.

The PR referenced above just updates the docs to match the behavior.

@theganyo is this still an issue? In master builds which have had many changes to them, I applied the config:
apiVersion: networking.istio.io/v1alpha3
kind: EnvoyFilter
metadata:
  name: lua-test
spec:
  filters:
  - filterName: envoy.lua
    filterType: HTTP
    filterConfig:
      inlineCode: |
        function envoy_on_request(request_handle)
          request_handle:logCritical("log test")
        end

And I see it show up correctly

No. In that case, the original issue has been addressed. Closing.


Driver doesn't return control to the code when a browser is loading a page

Meta -
Watir Version: 6.8
Selenium Version: 3.6.0
Browser Version: Chrome Version 60.0.3112.113
Browser Driver Version: ChromeDriver 2.31.488774
OS Version: OSX
ISSUE -
https://stackoverflow.com/questions/46566606/watir-not-waiting-for-elements-to-load

This is essentially the same issue as #532. I'm going to close this one and re-open that one for history reasons.;


Compress fee args

Add compressor for fee args, which will happen when enable log_func_args and log_func_retval

Codecov Report

:exclamation: No coverage uploaded for pull request base (trace-log-compressor@037bc9f). Click here to learn what that means.
Patch has no changes to coverable lines.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@                   Coverage Diff                   @@
##             trace-log-compressor     #326   +/-   ##
=======================================================
  Coverage                        ?   99.05%
=======================================================
  Files                           ?       21
  Lines                           ?     2215
  Branches                        ?        0
=======================================================
  Hits                            ?     2194
  Misses                          ?       21
  Partials                        ?        0

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

If we put the argument exist flag after the timestamps, we can get rid of the offset right? And the logic would be simpler.

If we put the argument exist flag after the timestamps, we can get rid of the offset right? And the logic would be simpler.

I write like this because I want to iterate the list only once while reading and writing. if we put the argument exist flag after the timestamp. We have to iterate the fee events again. considering fee is the major of trace file, the time cost might be more.

There's a more critical issue - you assumed that all the FEEs of the same function will either have args or not. That's not always the case. It's possible that some of the FEEs have args and the others don't. We need to take care of that.

There's a more critical issue - you assumed that all the FEEs of the same function will either have args or not. That's not always the case. It's possible that some of the FEEs have args and the others don't. We need to take care of that.

That should be considered in parse_trace_events function. For the same function events with or without args, they are seperately stored and wrote. The test case should also include it.

There's a more critical issue - you assumed that all the FEEs of the same function will either have args or not. That's not always the case. It's possible that some of the FEEs have args and the others don't. We need to take care of that.

That should be considered in parse_trace_events function. For the same function events with or without args, they are seperately stored and wrote. The test case should also include it.

Ah, right, you kept them into different keys.

Then let's get rid of the flag piece. Only have the offset - if the offset is 0 then it means no args. It's impossible for the offset to be 0 as long as there are entries. The logic would still be simpler.
For writing it's actually fine - you are assembling a list then write to the file anyway. For reading yeah it's probably easier to have both the timestamp and arg list ready to generate events.

Could you review these changes? @gaogaotiantian


[html5] Class<haxe.Timer> has no field stamp

Lime 2.2.1
OpenFl 3.0.0-beta
Haxe 3.1.3 and 3.2.0-rc2
I tried to compile html5 app and got this:
C:/HaxeToolkit/lime/2,2,1/lime/system/System.hx:41: characters 55-66 : Class<haxe.Timer> has no field stamp
C:/HaxeToolkit/lime/2,2,1/lime/system/System.hx:164: characters 19-30 : Class<haxe.Timer> has no field stamp
C:/HaxeToolkit/lime/2,2,1/lime/system/System.hx:41: characters 55-69 : Invalid call

I believe this should be resolved, thank you :smile:

Yes, I tested it and just going to write that it working now. Thanks.


Angular Template - WebSocket connection failed: Error during WebSocket handshake with Windows 7

Using the latest dotnet new angular template, I get this error message in my browser console:
WebSocket connection to 'ws://localhost:4200/sockjs-node/507/xg3xa0xl/websocket' failed: Error during WebSocket handshake: Unexpected response code: 500
WebSocketBrowserDriver @ sockjs.js:1679

I'm aware WebSockets isn't supported on Windows 7, however, if I just host the SPA using npm start from the ClientApp directory then I don't get this error. What is the reason for this, and is there a way to stop this error when hosting via Visual Studio's debug launch?

I have the same issue here

Thanks for contacting us, @k-vekos.
@ryanbrandenburg can you please look into this? Thanks!

@k-vekos, @FAlmeidaActionpoint do you still face this issue?

Hi. We're closing this issue as we have heard no response from you for some time now. If you have more details and are encountering this issue please add a new reply and re-open the issue.


Fix date parsing in tile RPC

@Mergifyio backport release/3.4.x

we really need to add some sort of e2e to catch this stuff earlier, maybe next sprint

@paulius-valiunas looks like this change is causing quite a few test failures.


specify full path in generated code for Result and Option

Sometimes, when I define custom error types, I use aliases like these:
type Result<T> = std::result::Result<T, MyError>;

which will break the code generated by this macro, as the custom Result type takes 1 less parameter than the one I have. You can fix this by specifying the full path (e.g. std::result::Result in the generated code.
I think I got all occurrences, but it's possible I missed some. It works on my end, but I haven't tested it fully.

Yeah, that makes sense. Thanks for the contribution!
A few comments:

To make sure that this works in non-std builds too, I import from core instead of std. (This works in regular std builds just fine, it only seems a bit unorthodox at first blush.) Could you replace that in your PR?

Would you mind revising your PR further to emit absolute paths like ::core::option::Option, i.e. with the double colon in front as well? That might catch additional cases of hiding.

If we're doing absolute paths for Some, perhaps you also wish to modify the None at lib.rs line 132...

Thanks in advance!

Sure, no problem! I'll get right to it.

So I've finally implemented some CI/CD for this repository; may I ask you to rebase on main?
Also, looks like you'll have to change ::core::option::None to ::core::option::Option::None.

That's my bad. Will do.

Thanks for your contribution! I'll release v0.2.2 in short order.


[Breaking Change][False positive] The TypeFormatChanged error message should contain the name, old format and new format.

TypeFormatChanged is a very common issued reported as a breaking change but it is often, but not always, benign.
In many cases, the name, old format, and new format is enough information to assess the severity of the change, but this information is not included in the error message. Reviewers must open the links for both the old and new version to get this information. And sometimes those links are inaccurate, making it even more laborious to assess the error.
It will greatly benefit reviewers to have this information included directly in the error message.

Added the new and old format to the message in https://github.com/Azure/openapi-diff/pull/304.
Still to be done (sorry I did not do it in 304) is to include the name of property / parameter.

https://github.com/Azure/openapi-diff/pull/333

Pull Request 557572: Print out JSON path for New entry in breaking changes table rows

Closing this work item as subsumed by:

https://github.com/Azure/azure-sdk-tools/issues/8435


Fix missing package on build

Hello,
This PR should fix container build issue due to a missing package in the docker file.
Feel free to pick out the gitlab-ci.yml file commit but it's standard and might help people build the docker image if they use Gitlab CI.
Fixes #2

If you don't mind, I'm going to close this in favor of #4 since the commits exist in both.

Sure thing, I'm not really familiar with how github workflows work so I tried to divide my work logically and provide a PR for each item. Sorry for the noise if that's not what should have been done :)


Why compile?

Why inline the functions multiple times? It increases bundle size. Why not simply return the checker functions?

I don't understand what you mean. Please provide some context or examples.


Issue #98 - Share dialog not displaying correctly in Chrome

Fixes #
Issue #98
Proposed Changes
Adding z-index: 1; property to toggle-content class makes the dialog display correctly in Chrome.

@Adsidera I totally forgot: also feel free to add youself to the recently added list of contributors, if you like :)
https://github.com/adoptoposs/adoptoposs/blob/staging/CONTRIBUTORS.md

Thanks @paulgoetze !!


add test case for OS detection for Go binaries with buildinfo

ref https://github.com/mandiant/capa/pull/1987

capa is not invoked directly on the given file, so we can ignore the test_runtime failure


Show the architecture for each running component

This adds the architecture alongside the version information in "subctl show versions".
Fixes: #122

@skitt do we want to merge this before rc0?

@skitt do we want to merge this before rc0?

Technically it’s excluded by my own rules ;-).


Identity in the Cloudtrail entry from okta

Is your feature request related to a problem? Please describe.
When the API call is made to AWS, the cloudtrail entry ends up having the username of botocore-session-#####.  This impacts the ability to understand who has been accessing the AWS API after a call from the IdP
Describe the solution you'd like
Assuming this can be fixed on the dev side, we'd like the caller identity to be traced back to an individual in okta
Describe alternatives you've considered
Chaining together other cloudtrail events just before the API call(which are the assume role calls)

Additional context
Add any other context or screenshots about the feature request here.

Does this happen with v1.0.4?

I see you released v1.0.4 yesterday, so, no, we installed this in early september. Hence, v.1.0.3.

No worries. This bug was just fixed, so I was really hoping it didn't come back from the grave in anticipation of Halloween :)

How timely.... I just installed v1.0.4 and the sts get-caller-identity looks as expected now.  Waiting for cloudtrail to catch up so I can verify on that side.  Thanks so much!

My pleasure, @philliphayesiam. I'll close this as successfully resolved :)


WIP: Fix system test command line for hs

Resolves https://github.com/AdoptOpenJDK/openjdk-tests/issues/1654
Creates two separate command templates - one with openj9-systemtest in path, and one without and uses the two templates appropriately in playlists. This solves the issue of system tests breaking in hotspot builds where we do not use openj9-systemtest.

Signed-off-by<EMAIL_ADDRESS><EMAIL_ADDRESS>

Instead of making two separate command templates and change every playlist target, could we just use one template and add $(SYSTEMTEST_RESROOT)$(D)openj9-systemtest when JDK_IMPL=openj9 or ibm?

@llxia  I've already made the change.

From the usability point of view, I would prefer to have one cmd instead of two. There is no playlist.xml change needed. And there is no confusion about which one to use for other users.

There is no playlist.xml change needed

The playlist was already changed. So, if I have to implement what you suggested, I will have to undo those tested changes, make the changes anew, and retest.

And there is no confusion about which one to use for other users.

For me, it's more confusing to have something like this:
<command>$(OPENJDK_SYSTEMTEST_CMD_TEMPLATE);$(SYSTEMTEST_RESROOT)$(D)openj9-systemtest -test-args=$(Q)workload=daa1$(Q) -test=DaaLoadTest; \
	$(TEST_STATUS)</command>

in the playlist; than this:
<command>$(OPENJ9_SYSTEMTEST_CMD_TEMPLATE) -test-args=$(Q)workload=daa1$(Q) -test=DaaLoadTest; \
	$(TEST_STATUS)</command>

Anyway, there are pros and cons in either approach and I don't want to deliver a change quickly as it's blocking Adopt builds. So, I will discard my solution and implement yours , test it, and ask for review again.
Thanks.

sanity.system with hotspot jdk 8 : Test_grinder/job/Grinder/6307/console
sanity.system with openj9 jdk 8 : /Test_grinder/job/Grinder/6306/console

No, I did not mean to change it as in https://github.com/AdoptOpenJDK/openjdk-tests/pull/1656#issuecomment-592158491
I am suggesting to do the following:

There is no change need in any of the playlist.xml
the change is only needed in systemtest.mk
SYSTEMTEST_CMD_TEMPLATE value gets changed based on JDK_IMPL. We should have something like below (not tested):

OPENJ9_PRAM=""
ifeq (,$(findstring $(JDK_IMPL),hotspot))
	OPENJ9_PRAM = $(SYSTEMTEST_RESROOT)$(D)openj9-systemtest
endif

define SYSTEMTEST_CMD_TEMPLATE
perl $(SYSTEMTEST_RESROOT)$(D)stf$(D)stf.core$(D)scripts$(D)stf.pl \
	-test-root=$(Q)$(SYSTEMTEST_RESROOT)$(D)stf;$(SYSTEMTEST_RESROOT)$(D)openjdk-systemtest$(Q)$(OPENJ9_PRAM) \
	-systemtest-prereqs=$(Q)$(SYSTEMTEST_RESROOT)$(D)systemtest_prereqs$(Q) \
	-java-args=$(Q)$(JVM_OPTIONS)$(Q) \
	-results-root=$(REPORTDIR)
endef

oh.. nice.. let me try that out.

Thanks @Mesbah-Alam

It seems to work just fine, thanks @llxia - I didn't get your point earlier! :D
Testing with sanity.jck on hotspot jdk 8 : Test_grinder/job/Grinder/6315/console
Testing with sanity.jck on openj9 jdk 8 Test_grinder/job/Grinder/6314/console

Thanks @Mesbah-Alam . LGTM


Fixes the build by explicitly including libcore

Fixes so it compiles again; not sure why this wasn't broken before, but I presume its to do with feature flag updates.

Thanks!


Make httpgrpc.Server return 4xx errors

What this PR does:
Currently, httpgrpc's Server.Handle() returns an error only if a response received from the HTTP server contains a 5xx HTTP status code. Responses with any other HTTP status code (e.g., 4xx) are converted to non-erroneous HTTPResponse objects. As a consequence, the correlated status_code labels in the request duration metrics is success.
This PR allows Server.Handle() to return errors even in case of a 4xx HTTP status code. Namely, the presence of a header with key httpgrpc.Return4XXErrorsKey and any value in a response received from HTTP server indicates to Server.Handle() to convert that response to an error. This way the correlated status_code labels in the request duration metrics will be 4xx.
Which issue(s) this PR fixes:
Part of https://github.com/grafana/mimir/issues/1830
Checklist

[x] Tests updated
[x] CHANGELOG.md updated - the order of entries should be [CHANGE], [FEATURE], [ENHANCEMENT], [BUGFIX]

I discourage using an header to enable the behaviour. The feature flag approach is better. I would close this PR in favour of https://github.com/grafana/dskit/pull/457.

I am closing this PR in favour of #457


async call

is it possible to make a call without waiting for the response ?

Yes, depending on what you mean. You can use the documented "generic interface" to send a request, and wait only for status / headers. The body wont be transferred until you utilise the body_reader.
If however you wish to initiate one or more requests and move on whilst they are being sent, you would need to use light threads, as documented here: https://github.com/openresty/lua-nginx-module#ngxthreadspawn

you pointed me the good ressource, thank you


click event

Is it possible to add a click event?
this.$notify({
  title: "Important message",
  text: "Hello user!",
  click: () => {
      // do redirect or whatever
  }
});

The notification can be sent from any file in the project.
It would be better to add a click handler to the notification object.
This works fine
<Notifications
  @click="($event) => $event.data?.click()"
/>

this.$notify({
  title: "Important message",
  text: "Hello user!",
  data: {
    click: () => {
      //
    },
  },
});


Updated lint and ts hooks

Update typescript tests and linter checks hooks.

@seanlip PTAL! Thanks!


🐛 [firebase_storage] SocketException: Failed host lookup

Bug report
Describe the bug
I created an Authentication and place the user's information in the Firestore database, but I don't know why it is failing. And it's spamming me W/ExponenentialBackoff(10363): network unavailable, sleeping. W/NetworkRequest(10363): error sending network request POST https://firebasestorage.googleapis.com/v0/b/myapp.appspot.com/o but I have internet, I can search, and I can submit a Issue here at GitHub. And Another exception was thrown: SocketException: Failed host lookup: 'firebasestorage.googleapis.com' (OS Error: No address associated with hostname, errno = 7), it is failing placing data to Firestore but the Firebase Auth works. I don't know why it's just me, my co-workers works for them. I tried adding the Permissions in AndroidManifest but still does not work.
Steps to reproduce
Steps to reproduce the behavior:

No idea how to reproduce this. It just pops.

Expected behavior
It should successfully place the information on Firestore.
Sample project
Providing a minimal example project which demonstrates the bug in isolation from your main App greatly enhances the chance of a timely fix.
Please link to the public repository URL.

Additional context
Add any other context about the problem here.

Flutter doctor
Run flutter doctor and paste the output below:
Click To Expand
Doctor summary (to see all details, run flutter doctor -v):
[√] Flutter (Channel stable, 2.0.4, on Microsoft Windows [Version 10.0.19042.985], locale en-PH)
[√] Android toolchain - develop for Android devices (Android SDK version 30.0.0)
[√] Chrome - develop for the web
[√] Android Studio (version 4.0)
[√] VS Code (version 1.56.2)
[√] Connected device (3 available)

• No issues found!

Flutter dependencies
Run flutter pub deps -- --style=compact and paste the output below:
Click To Expand
Dart SDK 2.12.2
Flutter SDK 2.0.4
koowentu 1.0.0+1

dependencies:
- cloud_firestore 1.0.4 [cloud_firestore_platform_interface cloud_firestore_web firebase_core firebase_core_platform_interface flutter meta]
- cupertino_icons 1.0.0
- firebase_auth 1.0.2 [firebase_auth_platform_interface firebase_auth_web firebase_core firebase_core_platform_interface flutter meta]
- firebase_core 1.0.3 [firebase_core_platform_interface firebase_core_web flutter meta]
- firebase_storage 8.0.2 [firebase_core firebase_core_platform_interface firebase_storage_platform_interface firebase_storage_web flutter]
- flutter 0.0.0 [characters collection meta typed_data vector_math sky_engine]
- image_cropper 1.4.0 [flutter]
- image_picker 0.7.4 [flutter flutter_plugin_android_lifecycle image_picker_platform_interface image_picker_for_web]
- shared_preferences 2.0.5 [meta flutter shared_preferences_platform_interface shared_preferences_linux shared_preferences_macos shared_preferences_web shared_preferences_windows]

dev dependencies:
- flutter_launcher_icons 0.8.1 [image args yaml path]
- flutter_test 0.0.0 [flutter test_api path fake_async clock stack_trace vector_math async boolean_selector characters charcode collection matcher meta source_span stream_channel string_scanner term_glyph typed_data]

transitive dependencies:
- archive 2.0.13 [crypto args path]
- args 1.6.0
- async 2.5.0 [collection]
- boolean_selector 2.1.0 [source_span string_scanner]
- characters 1.1.0
- charcode 1.2.0
- clock 1.1.0
- cloud_firestore_platform_interface 4.0.1 [collection firebase_core flutter meta plugin_platform_interface]
- cloud_firestore_web 1.0.4 [cloud_firestore_platform_interface firebase_core firebase_core_web flutter flutter_web_plugins js]
- collection 1.15.0
- convert 2.1.1 [charcode typed_data]
- crypto 2.1.5 [collection convert typed_data]
- fake_async 1.2.0 [clock collection]
- ffi 1.0.0
- file 6.1.0 [meta path]
- firebase_auth_platform_interface 4.0.1 [firebase_core flutter meta plugin_platform_interface]
- firebase_auth_web 1.0.4 [firebase_auth_platform_interface firebase_core firebase_core_web flutter flutter_web_plugins http_parser intl js meta]
- firebase_core_platform_interface 4.0.0 [flutter meta plugin_platform_interface]
- firebase_core_web 1.0.2 [firebase_core_platform_interface flutter flutter_web_plugins js meta]
- firebase_storage_platform_interface 2.0.1 [collection firebase_core flutter meta plugin_platform_interface]
- firebase_storage_web 1.0.3 [async firebase_core firebase_core_web firebase_storage_platform_interface flutter flutter_web_plugins http js meta]
- flutter_plugin_android_lifecycle 2.0.1 [flutter]
- flutter_web_plugins 0.0.0 [flutter js characters collection meta typed_data vector_math]
- http 0.13.1 [http_parser meta path pedantic]
- http_parser 4.0.0 [charcode collection source_span string_scanner typed_data]
- image 2.1.19 [archive xml meta]
- image_picker_for_web 2.0.0 [image_picker_platform_interface meta flutter flutter_web_plugins]
- image_picker_platform_interface 2.0.1 [flutter meta http plugin_platform_interface]
- intl 0.17.0 [clock path]
- js 0.6.3
- matcher 0.12.10 [stack_trace]
- meta 1.3.0
- path 1.8.0
- path_provider_linux 2.0.0 [path xdg_directories path_provider_platform_interface flutter]
- path_provider_platform_interface 2.0.1 [flutter meta platform plugin_platform_interface]
- path_provider_windows 2.0.0 [path_provider_platform_interface meta path flutter ffi win32]
- pedantic 1.11.0
- petitparser 3.1.0 [meta]
- platform 3.0.0
- plugin_platform_interface 2.0.0 [meta]
- process 4.2.1 [file path platform]
- shared_preferences_linux 2.0.0 [flutter file meta path path_provider_linux shared_preferences_platform_interface]
- shared_preferences_macos 2.0.0 [shared_preferences_platform_interface flutter]
- shared_preferences_platform_interface 2.0.0 [flutter]
- shared_preferences_web 2.0.0 [shared_preferences_platform_interface flutter flutter_web_plugins meta]
- shared_preferences_windows 2.0.0 [shared_preferences_platform_interface flutter file meta path path_provider_platform_interface path_provider_windows]
- sky_engine 0.0.99
- source_span 1.8.0 [charcode collection path term_glyph]
- stack_trace 1.10.0 [path]
- stream_channel 2.1.0 [async]
- string_scanner 1.1.0 [charcode source_span]
- term_glyph 1.2.0
- test_api 0.2.19 [async boolean_selector collection meta path source_span stack_trace stream_channel string_scanner term_glyph matcher]
- typed_data 1.3.0 [collection]
- vector_math 2.1.0
- win32 2.0.5 [ffi]
- xdg_directories 0.2.0 [meta path process]
- xml 4.5.1 [collection convert meta petitparser]
- yaml 2.2.1 [charcode collection string_scanner source_span]

@jabezborja
It doesn't seem to be specific to firebase or any plugin, since even in flutter/flutter repo, there have been issues reported. See this as an example: https://github.com/flutter/flutter/issues/27883
If you are trying this on a device or emulator, does it have network connection ? Usually these are due to internet or connection issues.
The error (OS Error: No address associated with hostname, errno = 7) indicates your DNS lookup fails and is a system-level error and not specific to plugin.
I am going ahead and closing this, as this issue is not due to the firebase plugins, but you may need to check if you are using VPN, or are behind any fire-wall or proxy and check your DNS settings. I also suggest you to ask this question on StackOverflow to get help.
Thanks.


Runs against nightly build v1.7.0

A couple of changes that fixes build issues against the latest nightly build.

Bumps mod_path to latest version, fixing issue about not find package in rust Registry
Adds requirement for portaudio to the README
Changes initialization of the portaudio::stream::Stream object to specify output of stream also, in keeping with the current portaudio api

Let me know if any of this doesn't make sense!

I also had to update eventual to use the current git master, otherwise I got this:
/home/user1/.cargo/registry/src/github.com-48ad6e4054423464/eventual-0.1.4/src/join.rs:22:5: 22:45 error: the trait `core::marker::Send` is not implemented for the type `T` [E0277]
/home/user1/.cargo/registry/src/github.com-48ad6e4054423464/eventual-0.1.4/src/join.rs:22     fn join(self, complete: Complete<T, E>);
                                                                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

It takes additional changes to compile, at least on Windows. Still can't make portaudio working, not sure what to do.


What exactly do you need to do to get this working?

What are the perquisites for this? Do I need to have Pi-Hole Installed already? The url to insall is also just a bunch of periods......

What do you mean by that? For python or bash version?
On Sat, Dec 28, 2019 at 2:55 PM OwenDSziber<EMAIL_ADDRESS>wrote:

What are the perquisites for this? Do I need to have Pi-Hole Installed
already? The url to insall is also just a bunch of periods......
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/jaykepeters/PSS/issues/5?email_source=notifications&email_token=AJBRUUTMJDFJY2KTGMFXTLTQ264MLA5CNFSM4KASBFJKYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4IDBZMXA,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AJBRUUU74PTB3ULNZDHAM5LQ264MLANCNFSM4KASBFJA
.

--
Jayke Peters
<EMAIL_ADDRESS>+1<PHONE_NUMBER>

I just found this repo and added it to my pi-hole this morning. Here are some temporary instructions working for me until the readme script is updated:
1- log into pi with ssh, pi hole should be set up and running
2- download the script with:
wget https://raw.githubusercontent.com/jaykepeters/PSS/master/Pi-hole_SafeSearch.sh
3- move script:
sudo mv ./Pi-hole_SafeSearch.sh /usr/local/bin/
4- make script executable:
sudo chmod a+x /usr/local/bin/Pi-hole_SafeSearch.sh
5- enable (start it running)
sudo Pi-hole_SafeSearch.sh -e
I'd make a pull request for your install script and readme but I don't know how to build that script...


Bump leapp-framework to 2.1

Regarding the recent changes, we provide new functionality regarding
get_*_path() functions - so the shared/common paths that do not
require execution of actors, can be used. This is useful e.g. when
we want to get specific files for the purpose of commands. Previous
use in actors is not affected by this change, however, use of these
functions outside of actors (e.g. in leapp commands) requires the
new implementation strictly.
Fixes: #742
Relates: https://github.com/oamg/leapp-repository/pull/753

Can one of the admins verify this patch?


Running entire uROS build on ARM PC

Hey so this is a very specific case, and perfectly okay if it isnt something that we have the capability to support right now.
But I am running a Linux system on an Arm chip (so the Mac M1 but this can translate over for a PI very easily). And on the step to create the firmware I am having a failure with a specific library: gcc-multilib. Did some digging and thats just not something that is ported over to ARM Linux which i found very surprising.
Have you all seen this problem before? Or have a work around it? I imagine if I am dedicated i could potentially build it from source and see where it takes me but figured I would ask.

Well, AFAIK there is a port for Raspbian, you can check the support scripts here, and the apps here. At some point, we cross-compile both the Agent and some Client demos for a Raspberry Pi.
Is this useful for you? Maybe we do have gcc-multilib for Raspbian... I'm not sure. Another thought is: why do we need gcc-multilib which is a tool for cross-compiling if you are building in the host for the host. Are you aware of at which specific step is this library is installed? Maybe we can try to remove this dependency for host...

Well kind of. My failure occurs on creating the firmware (using zephyr) in my specific case. Which I guess makes sense if I built it using Raspbian it would not occur.
The gcc-multilib is attempted to be installed during the step you call the bash script to create the firmware, i can further identify at which point it is called as well.
But thank you for the feedback I appreciate this, I will do some experimenting with the Raspbian side as well.


Months are not calculated as they are in Moment

moment.duration(2 * (moment.duration(1, 'months').valueOf())).format('M d') resolves to:
1 30 00:00:00.000 instead of 2 0 00:00:00.000.
moment.duration(3 * (moment.duration(1, 'months').valueOf())).format('M d') resolves to:
2 29 00:00:00.000 instead of 3 0 00:00:00.000.
Months need to be calculated in the same way that they are in Moment for consistency.

+1

Sorry for the delay on this... changed my notification settings for my new job back in March and I've missed a lot of stuff on this project.
You're expecting to be able to convert from duration months to duration milliseconds and back again. It's not my plugin doint this; Moment.Duration itself doesn't work like that.
moment.duration(2 * (moment.duration(1, 'months').valueOf())).asMonths();
// 1.9712930450317254

Interesting to note, Moment itself has modified this behaviour. Back in Moment 2.4, moment.duration(2 * (moment.duration(1, 'months').valueOf())).asMonths(); returned 2. The current Moment version returns 1.97...
I remember about a year ago helping with some issues around revamped Durations... pretty sure this change was a side-effect of their Duration revamp, and entirely intentional.


Proposal: Convention for which types must be used on a Task

Currently, it is somewhat unclear how to use the various future types with regards to tasks. poll must be called on a task, but besides that, what functions are safe to call vs. not is pretty unclear. Worse, some functions which must be called on tasks may not always fail when called not on a task. These functions may "randomly" panic depending on how concurrent operations complete.
Ideally, the type system could be used to enforce at compile time correct usage of future types, however I don't know how possible this is. Instead, I am proposing to clarify the usage of futures with regards to tasks using a convention:

All future types must be used on a task unless it is named Sync…

First, please don't focus too much on the prefix Sync*, I am just using it for now to make the proposal. Basically, the proposal is to avoid the ambiguity by making it a rule that all future types must be used on a task. This also means that all of the functions / constructors / etc… could have a debug_assert! that validates that they are called on a task. This should help find bugs quicker.

Future types can be made Sync by calling a sync() combinator.

Then, the question is how to use the various future types (Future, Stream, Sink, …) while not on a task. I propose that all of these traits include a sync() fn (again, a work in progress name) that wraps the type and allows it to be used off task. For example:
let f = my_future.sync(); // -> SyncFuture<MyFuture>

let result = f.wait(); // Blocks the thread, waiting for the future to complete
let result = f.poll(); // Returns the result if it has been completed
let value = f.unwrap(); // Equivalent to f.wait().unwrap();

The same could be done for Stream and Sink (though SyncSink is an odd name…)

APIs should be structured to discourage obtaining futures off of tasks

This would involve restructuring the APIs to setup users for success. For example, off the top of my head, Tokio's current API is something like this:
let reactor = reactor::Core::new().unwrap();
let connect = TcpSocket::connect(&addr, &reactor.handle());

let socket = reactor.run(connect).unwrap();

// Invalid...
socket.write(b"Hello world").unwrap();

The problem here is that this API is setup to use future types off of the task. You have to know that this is not the right way to do it…
Instead, one option could be to get rid of the Core::handle() function, and instead do:
let reactor = reactor::Core::new().unwrap();

reactor.run(move |handle| {
	let connect = TcpSocket::connect(&addr, &handle);
	connect.and_then(|socket| io::write_all(socket, b"Hello world"))
});

* I am using the prefix Sync because future types are async, and the opposite of that is sync.

I feel like the default is likely "needs to be used on a task" because so many things transitively call task::park, but I could definitely imagine a convention being useful here.

Right, I think this is basically what the proposal states. Part of the issue is that Tokio (and other) APIs don't clearly state this, and some examples are kind of fuzzy. The Sync* proposal is mostly for a conventional way to wrap a type for use off task.

That being said... always using a sync() fn to wrap the type will mean collisions for types like Stream + Sink.

Adding a quick thought before I forget.
@aturon mentioned that in his mind, all functions are safe to call off task unless they include Async* as part of the return value. Those functions include Future::poll, Sink::start_send, Sink::poll_complete etc...
However, today, there are functions that don't return Async* but require being run on the task. Most notably, all the tokio-core types that implement io::Read and io::Write. One solution could be to migrate to using AsyncRead and AsyncWrite traits instead.
Another issue that I just thought of is that I have often written functions like:
fn foo(&mut self) {
    if my_sink.poll_complete().is_ready() {
        // do some prep work
    }
}

In cases like this, it is not apparent by the foo function signature that foo is not safe to call outside of a task. The problem with using an opt-out convention (all functions are safe to call outside of a task unless they return Async*) is that it requires the author of the function to know about the convention and not accidentally forget to bubble up the Async. In the case above, I guess that the function should have been:
fn foo(&mut self) -> Async<()> {
    if my_sink.poll_complete().is_ready() {
        // do some prep work
    }

   Async::Ready(())
}

which is a bit silly and then the caller of the function would have to figure out what to actually do with the Async return value and do they guard against it ever being Async::NotReady?
The original proposal in this thread has the advantage of being "opt-in", so you take an extra step to ensure that a function is safe to call off task which will (hopefully) be less error prone.

Perhaps we should consider passing a Task as an argument to every method that needs it?
For instance:
f.poll(GET_CURRENT_TASK());
That way, if there is no task in current thread, a panic will be occured for sure, always, at the same place.
It will also remove some of the "magic" in futures.

@liran-ringel For reference, this has been discussed here #129

What if parking a task didn't panic? Or in other words, park() returned an Option, so implementations can choose to not panic, and just return NotReady if there was no task when needed.

Obviated with the explicit Context argument


Consider realeasing sleap-io on conda-forge

Hi!
We are considering releasing movement on conda-forge, to allow for a one-line installation of the package (including all current, or future non-pip dependencies).
The recommended way is for all our dependencies to be on conda-forge as well. Currently sleap-io is our only dependency which is not there.
I was wondering if you are planning to do a conda-forge release at some point. Apart from the specific needs of movement, this will make it easier for more packages to depend on sleap-io.
I completely understand that you may not have the bandwidth to do that currently, so as an option, I'm offering to help with getting sleap-io on conda-forge. I've done some initial investigations, and I think it shouldn't be too hard (famous last words 😉). Out of sleap-io's current dependencies, only ndx-pose seems to be missing from conda-forge, so it will likely come down to convincing them as well.
Anyhow, if you are willing to consider conda-forge in principle, let me know, and I can scope out the necessary work and help with most of it (incl. raising the issue with ndx-pose developers).

Hi @niksirbi,
Thanks for the suggestion! We've been wanting to do this as well and would certainly appreciate the help since our usual experiences with conda packaging have been pretty painful (but worth it).
If the blocker is ndx-pose, that seems very doable. I'll post on their repo and link back to this. We have a hackathon coming up with the NWB folks in late February which would be a great time to get this done if it's not already by then.

Thanks for the positive response @talmo !
It would be great for the whole ecosystem to go on conda, enabling people to use the packages together.
It requires some work to make the first release, but subsequent updates are simpler and mostly handled by conda-forge's bots.
Thanks for starting the discussion on ndx-pose. That has minimal dependencies, so getting it on conda-forge should be straightforward. I'm not attending the Pre-CoSyNe hackathon, but since I'm in the same timezone, would be open to participating remotely, should my help be needed.
Regarding sleap-io getting released on conda, I've so far identified 3 potential issues:

ndx-pose not being on conda-forge, which we already discussed
av on conda-forge not being completely up-to-date with the pip releases (I've already inquired about this with the av maintainers).
the PyPI release of sleap-io not including the sdist. This should be easily fixable by modifying the build workflow. For reference, here's the list of actions/workflows we use for the same purpose. If the sdist is on PyPI, we could use grayskull to easily initialise the meta.yaml file for conda-forge.

There may be other things to be uncovered down the line, but I'm hopeful that the above may be the only 3 hurdles.

ndx-pose is now available on conda-forge 🎉 , so one of the blockers has been removed.

I was wondering if there has been any progress on this front. Don't hesitate to ping me if help is needed.

Hey @niksirbi! Sorry for the delay -- been traveling and just catching up now.
I did add sdist building to our workflow in #74, so v0.0.13 on PyPI is now compatible with grayskull.
That was nice to start off the conda build file, but it turns out not to be too complicated of a conda build anyway.
The next step I hadn't looked into was getting it uploaded onto conda-forge. I didn't see anything about conda-forge uploading in your workflows repo or in the movement one?
Do you handle that separately? Are you just following these exact steps from their docs? How do you do the automation?

Hey @talmo, thanks for catching up on this.
Releasing on conda-forge is different to PyPI, and we don't do it via our usual CI workflows.
We basically follow the steps outlined in the conda-forge docs you've linked.
It's some work the first time you do it for a package, because one has to go through the various steps and official checks.
But for subsequent releases the process should be quite smooth.
The way I understand it is that once the conda-forge/{package}-feedstock repository is created, new PyPI releases will automatically trigger a bot to open a PR on that feedstock repo. In most cases where the dependencies haven't changed, you (and others marked a maintainers of that feedstock) can simply accept and merge that PR to build a new conda-forge release. If a new release includes changes in dependencies, you might need to modify a few lines in the PR opened by the bot. @adamltyson can correct me if I'm wrong on this.
In case it helps, here are some examples for another package of ours that we recently published on conda-forge:

the staged-recipe PR
the corresponding feedstock repo

WIP: https://github.com/conda-forge/staged-recipes/pull/26036

Hi @talmo,
We've done some investigations on the segfault crushing the conda recipe build, and it comes down to OpenCV, though we couldn't pinpoint the problem exactly.
Do you see any way around that problem? For us, releasing movement on conda-forge is a priority, as this is how we also release and distribute all of our other tools, and we'd like them all to be easily installable and interoperable. The sleap-io dependency is the only thing blocking us right now.

Now done in https://github.com/conda-forge/staged-recipes/pull/26036!
Feedstock for reference: https://github.com/conda-forge/sleap-io-feedstock
Anaconda page: https://anaconda.org/conda-forge/sleap-io


Increase the number of retries for e2e tests

Increase the number of retries for e2e tests to mitigate VM resource contention.

Lgtm, just curious, how easy is it to see how many retries actually had to be done on a test run?

Also, this PR is a great reminder of why we should try to leverage constants like RETRY_TIMES everywhere. If we'd had a constant there from the beginning this PR could've had 50 less files.

Does this increase our CI/CD time? Approving, but would like to see if the effect if this helped with the success rate vs time.

Reliability > Perf in a vacuum but I'm actually more concerned about the impact to queue time for other PRs when one PR is hogging the VMs our CI runs on. I've asked Konstantin to look into ways to minimize that impact (such as skipping E2E until the PR has been approved, making E2E a last step before merging)

You can run workflows manually in Github as well if you're unsure and just want to do a quick check.  That said, if we can't find a middle ground right now I'm open to trying it and revisiting if/when it does become a problem.

We can certainly take this offline, I will say one downside is that we'd need to be running the entire e2e test suite locally until the PR is approved for it to start catching any bugs the PR introduces.

You can run workflows manually in Github as well if you're unsure and just want to do a quick check.  That said, if we can't find a middle ground right now I'm open to trying it and revisiting if/when it does become a problem.

No, I share that concern, I know it's the main reason we haven't done the retries yet. Maybe leaving E2E as a final step is the best compromise that still gives the team a better experience.

Lgtm, just curious, how easy is it to see how many retries actually had to be done on a test run?

Analyzing logs for repetitive test names seems like the only option.

We can certainly take this offline, I will say one downside is that we'd need to be running the entire e2e test suite locally until the PR is approved for it to start catching any bugs the PR introduces.

You can run workflows manually in Github as well if you're unsure and just want to do a quick check.  That said, if we can't find a middle ground right now I'm open to trying it and revisiting if/when it does become a problem.

I would avoid running e2e jobs manually cause people can just forget about it. I would rather prefer kicking off e2e jobs when PR is ready for review. Please take a look at a follow-up PR https://github.com/AzureAD/microsoft-authentication-library-for-js/pull/5662.

I would avoid running e2e jobs manually cause people can just forget about it. I would rather prefer kicking off e2e jobs when PR is ready for review. Please take a look at a follow-up PR https://github.com/AzureAD/microsoft-authentication-library-for-js/pull/5662.

I agree, my suggestion to run the tests manually was more around if you want to verify the tests will pass before you've gotten to the stage where tests will be auto-run by CI. It is an option in addition to, not instead of, auto-run CI tests which are required to merge the PR.

Does this increase our CI/CD time? Approving, but would like to see if the effect if this helped with the success rate vs time.

It increases CI/CD time in case of a breaking change and/or VM resource contention. I am not sure I am aware of the way to capture CI/CD metrics you are referring to.

@konstantin-msft is there any way to limit the retries to tests that timeout? Other than te fact that there's less chance of ending up on an unnecessary queue, I think it may be dangerous to have retries on all the time since it would prevent us from catching intermittent bugs.


zvm install fails - missing folder

Zig Version
0.12.0
Steps to Reproduce and Observed Behavior
When running zvm i master.
If versions folder does not exists, this will turn into an error:
.zm/zig-macos-x86_64-0.13.0-dev.40+1a6485d11.tar.xz
error: FileNotFound

https://github.com/hendriknielaender/zvm/blob/4a28d8cb18a322126b73703b8463774761e23dd6/src/download.zig#L29
Expected Behavior
Latest master version will be installed.

closed https://github.com/hendriknielaender/zvm/pull/32


sway-input: fix typo

Can you merge master into your branch?

Nevermind, read your diff and it's dead simple.


Unable to import a certificate

On enrolling a user, the error "Unable to import a certificate" is displayed. The CA has issued the certificate correctly, which I now have to revoke.
This same error happened on the first YubiKey NEO I attempted to enroll with ES. Then, I fumbled around for a few hours with this YK, tried ES again, and enrollment magically worked with ES. I was happy and moved to the next YK - again the same "Unable to import a certificate" error.
I have checked the NEO Manager, and CCID mode is enabled (disabling + re-enabling CCID did not help). PIV Manager seems to work on it.
I do not remember exactly what I did with the first YK, but it included:

Renaming the reader with NEO Manager and resetting it back to default name
Generate certificate with PIV Manager
Import certificate with PIV Manager

And so on.. I specifically did NOT do any "set-ccc" / "set-chuid" / resetting on it.

I'm including the link to your post on the Yubico boards: http://forum.yubico.com/viewtopic.php?f=30&t=2412&p=8976#p8976

Update:
ES enrolled certificates have 2048 bit key size. Some certificate template options were changed which likely made this particular certificate request fit on the YK NEO. The next one was likely too large and there is no bug, except that the error message is not clear. I could not import 2048 bit certificates with PIV Manager because of the YK size restriction, as seen in the board thread. In AD CS there is only "Minimum key size" setting. Certificates with 1024 bit key size fit to YK NEO consistently.
The key size should be configurable in ES.
Will try to minimize certificate size from AD CS which'll be painful. Since some crypto settings require re-installation.

That makes sense. By the way, Yubikey 4 have RSA 4096 and ECC p384 support and are MUCH faster at key generation and signing operations, which improves login times for users.
We will implement a check on key sizes to make a better error message in that particular case. I'll keep the issue open until then.

May I suggest to also include RSA 1024 as one of those options. A more complex PKI will result in a larger certificate and those seem to only fit on YKs with RSA 1024 due to the ~3000 byte object maximum size limitation.
And please make the error message more descriptive!! Include the size of the too-large certificate and even the maximum size.

I'm trying to set up an enrollment station and also getting the 'unable to import a certificate, return code YKPIV_GENERIC_ERROR' I've changed the template minimum key size to 1024 and still no dice. I can use the PIV Manager to generate keys but we want to use ES with an enrollment agent.


Uplift LP dashboard with SLA related changes

Story
As a LP
I want to know what sort of range and commitment I would need to make on a market
So that I can decide if I am able to make such a commitment
Acceptance Criteria

[ ] I can see the required market.liquidity.priceRange in which LPs must quote (from the markets API)
[ ] I can see the required market.liquidity.committmentMinTimeFraction LPs must commit to (from the markets API)

Tasks

[ ] UX (if needed)
[ ] Design (if needed)
[ ] Team and stakeholder review
[ ] Specs reviewed and created or adjusted
[ ] Implementation
[ ] Testing (unit and/or e2e)
[ ] Code review
[ ] QA review

Sketch
Additional details / background info

Done


Add marbling challenge

Weird, not sure why the deploy preview is missing? I can see it locally so not a big deal. So many code examples!!! (Thank you @kfahn22 for helping with this!)

Missing "Decagon" sketch (which was demonstrated in the video)? or is it too trivial to add as a code example?

Video is now set to "members only" will go public a little bit later today assuming no one finds any egregious errors or issues! It's also live on Nebula.


Zabbix2.2

The normalize only checks 1 layer. if the object is nested, we need to normalize all layers.
The removal of the :hostid should be done in the calling function, the hash_equals should already accept 2 equal or non-equal hashes.
When using deep normalization, we need to add <=> method to the Hash
Even when using deep normalization, the hash_equals doesn't always find mis-similarities since the calling method mostly sends dump of the data which isn't full (for example, in case of hosts, the hostgroups are missing from the dump) do added a force boolean to force updating and don't check for similarity

I've just publish 2.2.4 on rubygems


Error in fembed bypasser

import lk21
bypasser = lk21.Bypass()
a = bypasser.bypass_url("https://layarkacaxxi.icu/f/2kyxpb2qz74jdd8")
return a

Traceback (most recent call last):
File "/app/userge/plugins/tools/executor.py", line 64, in eval_
ret_val = await aexec(cmd)
File "/app/userge/plugins/tools/executor.py", line 62, in aexec
return await locals()['__aexec'](userge, message)
File "", line 4, in __aexec
File "/app/.heroku/python/lib/python3.9/site-packages/lk21/extractors/bypasser.py", line 213, in bypass_url
return re.sub(r" ", "%20", url)
File "/app/.heroku/python/lib/python3.9/re.py", line 210, in sub
return _compile(pattern, flags).sub(repl, string, count)
TypeError: expected string or bytes-like object

Error in fembed bypass....

this happens because the regex module cannot compile the dict data type. now I have fixed it in version 1.5.31
import lk21
bypass = lk21.Bypass()
bypass.bypass_url("https://layarkacaxxi.icu/f/2kyxpb2qz74jdd8")
# {'480p/mp4': 'https://www163.ff-01.com/token=5MVU6xuSVwmFQo2lGR9SnQ/1618291358/<IP_ADDRESS>/104/3/7b/27f2af8d7fa616edafa43d9226a757b3-480p.mp4', '720p/mp4': 'https://www163.ff-01.com/token=aUxWREWgtMm3ivpAS6Jp_Q/1618291358/<IP_ADDRESS>/97/3/7b/27f2af8d7fa616edafa43d9226a757b3-720p.mp4', '1080p/mp4': 'https://www163.ff-01.com/token=OVDnOxjpcrhd23hO-Vtcow/1618291358/<IP_ADDRESS>/96/3/7b/27f2af8d7fa616edafa43d9226a757b3-1080p.mp4'}


sh ./build.sh   help me

Hello, I am a student starting machine learning. I am trying to run the currently uploaded code by installing python with anaconda
sh ./build.sh In this part, because it is a Windows environment, I cannot use sh
If you can run this code on Windows, I would appreciate it if you can tell me how.

You can run the command scripts in build.sh on Windows terminal and for some details, refer to https://github.com/cleardusk/3DDFA_V2/issues/12#issuecomment-697479173.


[bugfix] Invalid parse against array still picks best format. (#4435)

Fixes issue in open issue 4435. Test case is based on the example provided there.
https://github.com/moment/moment/issues/4435

Coverage decreased (-0.01%) to 88.396% when pulling 3426f5a150fa9fc5b9f55f5ceae5f594ccf933c2 on chrisbucholz:develop into d0f0dd8f40be987593767a3dc5e27c45c6a3fa49 on moment:develop.

Coverage decreased (-0.01%) to 88.396% when pulling 3426f5a150fa9fc5b9f55f5ceae5f594ccf933c2 on chrisbucholz:develop into d0f0dd8f40be987593767a3dc5e27c45c6a3fa49 on moment:develop.


Minor Makefile cleanup

Description
Adding a little consistency to wording of outputs. No changes to functionality.
Related Issue
N/A
Checklist

[x] My code follows the project's coding standards.
[x] I have updated the documentation accordingly.

Thanks!


Can we add the appropriate PowerShell commands?

[Enter feedback here]
$workspace = Get-AzResource -ResourceGroupName 'MyResourceGroupName' -Name 'MyWorkspaceName'
$SecurityEventTable = Get-AzOperationalInsightsTable -ResourceGroupName $workspace.ResourceGroupName -WorkspaceName $workspace.Name -TableName 'SecurityEvent'
$TableObject = Get-AzResource -ResourceId $SecurityEventTable.ID
$TableObject.retentionInDays = 30
$TableObject.totalRetentionInDays = 730
$Tableobj | Set-AzResource -Force

Pretty simple.

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

ID: 4d99071a-e459-5bfe-f2c3-f9b444b8eea0
Version Independent ID: 3008acf4-41f6-e5dc-8212-a73386b11b85
Content: Configure data retention and archive in Azure Monitor Logs (Preview) - Azure Monitor
Content Source: articles/azure-monitor/logs/data-retention-archive.md
Service: azure-monitor
Sub-service: logs
GitHub Login: @guywi-ms
Microsoft Alias: guywild

Thanks for the feedback! We are currently investigating and will update you shortly.

#assign-reviewer: @adiBiran

The following reviewer(s) could not be added because they aren't a valid GitHub ID, aren't a valid collaborator on this repo, or are the author of the PR: adibiran

Thanks Christopher for reporting this.
I will update our documentation with PowerShell as well, and will come back to this thread once ready.

I'm closing the issue as the PowerShell commands will be documented as part of the development process once the new commands will be published.
Thanks


Disk Space

Type: Bug
Hello, I have been using VS Code for a bit now and I have noticed that it has taken over almost completly my disk space. For reference, I have around 476GB total space on my device and I remember, prior to using VS Code that half of that wasn't even being used. In just one evenning it has been completly taken up and now I only have around 3,52GB available and the number seems to be going down as I write this. I looked up for solutions to this problem and it would seem that this is somehow a common issue and all the solutions that came up happened to only allow me clean up around 1GB of disk space. I am now asking for help in order to prevent this issue from happening and would like to know how exactly the application takes so much space and where does it store in order for me to be able to clean it up on me own and restore my disk space as it once were.
VS Code version: Code 1.72.2 (d045a5eda657f4d7b676dedbfa7aab8207f8a075, 2022-10-12T22:15:18.074Z)
OS version: Windows_NT x64 10.0.19044
Modes:
Sandboxed: No

System Info

Item
Value

CPUs
Intel(R) Core(TM) i5-10300H CPU @ 2.50GHz (8 x 2496)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: disabled_offdirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okskia_renderer: enabled_onvideo_decode: enabledvideo_encode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabledwebgpu: disabled_off

Load (avg)
undefined

Memory (System)
7.81GB (2.12GB free)

Process Argv

Screen Reader
no

VM
0%

Extensions: none
A/B Experiments
vsliv368:30146709
vsreu685:30147344
python383:30185418
vspor879:30202332
vspor708:30202333
vspor363:30204092
vslsvsres303:30308271
pythonvspyl392:30443607
vserr242cf:30382550
pythontb:30283811
vsjup518:30340749
pythonptprofiler:30281270
vshan820:30294714
vstes263:30335439
pythondataviewer:30285071
vscod805:30301674
binariesv615:30325510
bridge0708:30335490
bridge0723:30353136
cmake_vspar411:30581797
vsaa593:30376534
pythonvs932:30410667
cppdebug:30492333
vsclangdc:30486549
c4g48928:30535728
dsvsc012:30540252
azure-dev_surveyone:30548225
2144e591:30553903
pyindex848:30577860
nodejswelcome1:30587005
fc301958:30573243

You can find the VS Code install at %AppData%\Local\Programs\Microsoft VS Code. It should be around 340 MB.
Configuration data can be found at %AppData%\Roaming\Code\User. It contains user settings and also data stored by extensions. Some extensions cache a lot of state such as index files. I recommend to check these folders.

Hello, thanks for responding. I had already explored those options and, as previously stated, it cleared around only 1 GB of space. I'll try it again whenever possible and see how that goes.

Closing the issue.


update json format in documentation

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

@fredwangwang Thank you for signing the Contributor License Agreement!

Thanks for the PR!


Note-off events seem to be ignored

this leads to stuck notes and obviously is not expected.

Indeed it does.
I thought I read somewhere(?) that 0x80 is merely a hint. Like: if your instrument has an ending, start with that now.
And that for everything else, things only stop when velocity is set to 0.

I believe it has been fixed in 0cd81557d88bd759b601c3f6575947fb5fd12ced

Seems so :)