Footnotes give text a different color.

Hello,
I'm having the following problem when converting books, related to (references to) footnotes.
For some of my converted books, each first footnote in a chapter causes all the preceding text in that chapter to have a different color from the default color. After the first footnote, the text has the default color and any subsequent footnotes in that chapter work as intended.
The original epub with a footnote:

The converted epub with all the text preceding the first footnote in the chapter in a different color:

I'm guessing this is due to a self-closing A tag (e.g. `"), which is against the spec, but some badly-designed books use it. When it is parsed by kepubify (or any other semi-strict parser), it parses it as an open tag only, and closes it in the last possible place.
I could add a workaround to kepubify, but that's almost outside the scope of kepubify. I'll see if the KEPUB reader accepts invalid void elements when I have time, and if it does, I'll also make kepubify do it as well.

This is what happens when it is parsed:
https://play.golang.org/p/2VHmxGqKm5P
package main

import (
	"fmt"
	"strings"

	"github.com/PuerkitoBio/goquery"
)

func main() {
	doc, _ := goquery.NewDocumentFromReader(strings.NewReader(`<!DOCTYPE html><html><head><title></title></head><body>test 1<a id="test"/>test 2<p>test 3</p></body></html>`))
	html, _ := doc.Html()
	fmt.Println(html)
}

// output: <!DOCTYPE html><title></title>test 1test 2
test 3

I'm going to test it with the KEPUB renderer now.

I won't be fixing this issue immediately, as it requires restructuring how the parsing is done.
The issue is that kepubify always parses the HTML as HTML5, which means it follows HTML5 parsing rules, namely about treating self-closing tags which aren't void elements as if the closing doesn't exist (see https://html.spec.whatwg.org/multipage/parsing.html#parse-error-non-void-html-element-start-tag-with-trailing-solidus). The KEPUB renderer either parses it according to the DOCTYPE or always as XHTML (I haven't checked yet).
To fix this problem, I have a few options:

Fork golang.org/x/net/html and allow self-closing a tags by not ignoring the /. This would also allow me to remove the ugly workaround for self-closing title tags.
Parse everything as XHTML. This is probably the least optimal solution, as it would prevent me from using goquery, and would also break proper HTML5 books, which are a lot more common.
Parse everything according to the DOCTYPE. This would work, but would result in either a lot of code duplication or a lot of abstraction (or embedding a C library like lxml, which I'd rather not do).
Fix this specific case with a regexp. I'd rather not add any more regexp-hacks to kepubify, as there are already enough as it is.

I'm most likely going to do either the first or the fourth option. I'll probably leave it for the next version, though, and improve the whole content manipulation code while I'm at it.


SubtypeScanner

First, great Tool.
But finding this bug after refactoring took some time... ;-D
I have a package "a.b.c" and one "a.b.c.impl".
In the first package, I have an (abstract class) "X" and another abstract class "Y" extending X.
In the second package, I have classes Z extending Y, so Z instanceof X is true.
So far, now comes the fun: I need to have the classes inside the second package, not the abstract ones. Intuition (and docs) say, this is the way to go:
final Reflections r = new Reflections("a.b.c.impl");
Set... = r.getSubTypesOf(X.class);
But the set is empty - too bad.
This one works, but I have to filter the abstract classes...? strange.
final Reflections r = new Reflections("a.b.c"); (without ".impl")
Set... = r.getSubTypesOf(X.class);
or maybe i missed s.th.?

Hello,
I also have the same problem with interface.
If I have a interface MyInterface, and a abstract class MyInterfaceBaseImpl, if I scan a package to find all subtypes of MyInterface, the types will not be found if the class MyInterfaceBaseImpl is not scanned.
So the workarround is : scan to a higher package and apply a post filter to your target package once the subtypes are found.

Would be great if we have whole inheritance-tree scanning.

Further, if I scan for implementations of Foo and Foo itself is not scanned it will not work.
This is bad because Foo might be located in bigpackage while sought implementation reside in bigpackage.smallpackage.

It is documented (although might not be very intuitive), that all relevant
package roots should be scanned, otherwise there is no transitivity.
However, adding too many packages increases scan time, and in some cased
not all packages are known a priori.
Still, another approach is to expand the store after scanning time, see
https://github.com/ronmamo/dropwizard-bundler/blob/master/bundler/src/main/java/dev/dropwizard/bundler/util/ReflectionsHelper.java
For your case:
ReflectionsHelper.expandSupertypes(reflections, SubTypesScanner.class, new
String[][]{"bigpackage});
HTH
On Dec 15, 2015 8:53 AM, "Johan Sjöberg"<EMAIL_ADDRESS>wrote:

Further, if I scan for implementations of Foo and Foo itself is not
scanned it will not work.
This is bad because Foo might be located in bigpackage while sought
implementation reside in bigpackage.smallpackage.
—
Reply to this email directly or view it on GitHub.

In our project, I fixed that by implementing TransitiveInterfaceScanner (a subclass here https://github.com/px3/SilverWare/blob/devel/microservices/src/main/java/io/silverware/microservices/util/DeploymentScanner.java). The difficult part is that getSubTypesOf(clazz) does not use this scanner so I had to workaround this (see method lookupSubtypes(clazz) in my DeploymentScanner). What do you think about incorporating this scanner or functionality into Reflections?

@ronmamo:

It is documented (although might not be very intuitive), that all relevant
package roots should be scanned, otherwise there is no transitivity.

I guess this restriction is there for the sake of performance?
My case differs a little from OP, and in my opinion the outcome is at least surprising. Let's say I have:

class a.b.Model
class a.Bar extends a.b.Model
class a.b.Foo extends a.Bar

Meaning that a.b.Foo is a sub-type of a.b.Model. However I will not get a match for a.b.Foo when scanning within package a.b: new Reflections("a.b").getSubTypesOf(Model.class)
Just asking to consider this case and share your opinion on whether it should be supported out-of-the-box.

My case is quite simple:
I want to get all classes in a package that extend Exception.class, I thought this would be as easy as:
Reflections reflections = new Reflections("my.package.foo");
Set<Class<? extends Exception>> throwableTypes = reflections.getSubTypesOf(Exception.class);

But this in fact doesn't work because "my.package.foo" doesn't include the Exception.class, so it returns an empty set.
Next I tried customizing the SubTypesScanner:

include java.lang to pickup Exception.class
Include my package
Configure the SubTypesScanner to  only include results from my pacakge

        Reflections reflections = new Reflections(new ConfigurationBuilder()
                .setUrls(ClasspathHelper.forClassLoader())
                .filterInputsBy(new FilterBuilder()
                        .include("java.lang\\..*")
                        .includePackage("my.package.foo"))
                .setScanners(
                       new SubTypesScanner()
                           .filterResultsBy(new FilterBuilder().includePackage("my.package.foo")));
        Set<Class<? extends Exception>> throwableTypes = reflections.getSubTypesOf(Exception.class);

Result: This also returns an empty Set!!
In the end my solution was to use the default SubTypesScanner without results filter, then iterate over the set manually to remove all the java.lang exceptions.
        Iterator<Class<? extends Exception>> iterator = throwableTypes.iterator();
        while (iterator.hasNext())
        {
            if (!iterator.next().getPackage().getName().startsWith("my.package.foo"))
                iterator.remove();
        }

Is this a bug in the library? Or am I just not understanding how it is supposed to be used?


Marathon 1.3.0 frequent crashes

Hey all,
since we've upgraded to Marathon 1.3.0 (up from 1.1.x) we noticed frequent leader changes (some times many times within a single hour) in our 3-node Marathon cluster. We then found out that this is due to the leading marathon docker instance crashing. However, I do not find anything really useful in the docker log output to tell me what the actual root cause is. Since the marathon docker instances are configured with --restart=always they're quickly coming up again, but the leader changes, and thus, we also see tons of Health Check status updates in the Marathon event stream in /v2/events where our service discovery hooks into (so we noticed).
The question is, why is it crashing? The only leads I found are HTTP errors like:
[2016-09-22 13:37:22,914] WARN Illegal response header: Illegal 'Access-Control-Request-Method' header: Invalid input ',', expected TokenCha
POST, PUT, DELETE, GET, OPTIONS
    ^

and:
[2016-09-22 13:37:22,918] WARN Illegal response header: Illegal 'Set-Cookie' header: Invalid input 'l', expected OptWS, ';' or EOI (line 1,
partner=xxxxxxxxxx; domain=.xxxxxxx.com; path=/; expires=Fri, 22-Sep-2017 13:37:22 GMTlang=de_DE; domain=.dawanda.com; path=/; expires=Mon,
                                                                                ^

However, I suspect that cannot be the cause of the docker instance crash (we're not limiting in HW resources either).
What can I provide you to understand our marathon instance crashes better?

Hi,
could you provide a few more details of the setup. Are you running Marathon within DC/OS or plain on Mesos with a Docker container?

@christianparpart Can you attach the complete logs from mesos and marathon?

Note: This issue has been migrated to https://jira.mesosphere.com/browse/MARATHON-2362. For more information see https://groups.google.com/forum/#!topic/marathon-framework/khtvf-ifnp8.


Search for memory leaks

When working on big input models or in concurrent operation, the memory is exhausted quite quickly. In order to see, if this is just a very memory consuming application or it is caused due to memory leaks: Have detailed look at it.

Working on PR #33 and testing with SimBench-Code "1-MVLV-semiurb-4.201-0-no_sw" led to 5.6 GB used heap at max. Whilst writing time series to files, the used heap reached ~12 GB max showing zig zag pattern. Dive deeper in this direction.

None apparent - just memory consuming stuff. ^^


searching non-spatial types results in no results

run ing the following command:
podaac-data-subscriber -c AU_Ocean_NRT_R01 -sd 2021-06-10T00:00:00Z  -e '.he5' -p LANCEAMSR2 -d ./LANCE --verbose

we get no search results. the underlying query is setting a default bounding box of 'global', which returns 0 results because the underlying granules do not use horizontal spatial domains, they use the orbit number, crossing time, and crossing latitude for search.
Until we can support that search, we should remove the 'bounding box' from default searches.

this will be addressed in our next release, either 1.10.2 or 1.11.0


Fix environment tab for rebuild tool

@gmcculloug - Added changes to fully populate the environment tab.  Please review

@miq-bot add_label enhancement automate

@miq-bot add_label enhancement, automate

@gmcculloug is there a BZ for this?


Question: is it possible to change the port?

It seems like that this is hardcoded to port 80. Can we specify a different port through the Docker environment configuration?

Why you don't map it on your side?


Daemonset Checker container return false error if etcd leader changes during teardown

Describe the bug
When etcd leader changes and the deamonset check pod is removing pods it fails with errors. It's possible this could occur at creation as well but was produced at tear down.
time="2020-06-16T19:42:14Z" level=info msg="DaemonSetChecker Daemonset check waiting for 31 pods to delete"
time="2020-06-16T19:42:14Z" level=info msg="DaemonSetChecker Test daemonset pod is still removing: kuberhealthy-system daemonset-daemonset-1592336498-1592336507-44kqk on node stg-kw2-c1-10"
time="2020-06-16T19:42:14Z" level=info msg="DaemonSetChecker Test daemonset pod is still removing: kuberhealthy-system daemonset-daemonset-1592336498-1592336507-4t54m on node stg-kw2-c1-05"
time="2020-06-16T19:42:14Z" level=info msg="DaemonSetChecker Test daemonset pod is still removing: kuberhealthy-system daemonset-daemonset-1592336498-1592336507-56msz on node stg-kw3-c1-06"
time="2020-06-16T19:42:14Z" level=info msg="DaemonSetChecker Test daemonset pod is still removing: kuberhealthy-system daemonset-daemonset-1592336498-1592336507-5bcfm on node stg-kw3-c1-03"
time="2020-06-16T19:42:14Z" level=info msg="DaemonSetChecker Test daemonset pod is still removing: kuberhealthy-system daemonset-daemonset-1592336498-1592336507-6m4q2 on node stg-kw1-c1-03"
time="2020-06-16T19:42:14Z" level=info msg="DaemonSetChecker Test daemonset pod is still removing: kuberhealthy-system daemonset-daemonset-1592336498-1592336507-6nhcs on node stg-kw3-c1-08"
time="2020-06-16T19:42:14Z" level=info msg="DaemonSetChecker Test daemonset pod is still removing: kuberhealthy-system daemonset-daemonset-1592336498-1592336507-7bndh on node stg-kw3-c1-07"
time="2020-06-16T19:42:14Z" level=info msg="DaemonSetChecker Test daemonset pod is still removing: kuberhealthy-system daemonset-daemonset-1592336498-1592336507-7kthv on node stg-kw1-c1-09"
time="2020-06-16T19:42:14Z" level=info msg="DaemonSetChecker Test daemonset pod is still removing: kuberhealthy-system daemonset-daemonset-1592336498-1592336507-96h89 on node stg-kw1-c1-01"
time="2020-06-16T19:42:14Z" level=info msg="DaemonSetChecker Test daemonset pod is still removing: kuberhealthy-system daemonset-daemonset-1592336498-1592336507-9c9pz on node stg-kw3-c1-04"
time="2020-06-16T19:42:14Z" level=info msg="DaemonSetChecker Test daemonset pod is still removing: kuberhealthy-system daemonset-daemonset-1592336498-1592336507-9zb2p on node stg-kw3-c1-01"
time="2020-06-16T19:42:14Z" level=info msg="DaemonSetChecker Test daemonset pod is still removing: kuberhealthy-system daemonset-daemonset-1592336498-1592336507-dmwfb on node stg-kw3-c1-05"
time="2020-06-16T19:42:14Z" level=info msg="DaemonSetChecker Test daemonset pod is still removing: kuberhealthy-system daemonset-daemonset-1592336498-1592336507-dssq4 on node stg-km-c1-02"
time="2020-06-16T19:42:14Z" level=info msg="DaemonSetChecker Test daemonset pod is still removing: kuberhealthy-system daemonset-daemonset-1592336498-1592336507-grbzm on node stg-kw2-c1-04"
time="2020-06-16T19:42:14Z" level=info msg="DaemonSetChecker Test daemonset pod is still removing: kuberhealthy-system daemonset-daemonset-1592336498-1592336507-grhnh on node stg-kw3-c1-09"
time="2020-06-16T19:42:14Z" level=info msg="DaemonSetChecker Test daemonset pod is still removing: kuberhealthy-system daemonset-daemonset-1592336498-1592336507-h8vr6 on node stg-kw1-c1-07"
time="2020-06-16T19:42:14Z" level=info msg="DaemonSetChecker Test daemonset pod is still removing: kuberhealthy-system daemonset-daemonset-1592336498-1592336507-jh9gj on node stg-kw2-c1-08"
time="2020-06-16T19:42:14Z" level=info msg="DaemonSetChecker Test daemonset pod is still removing: kuberhealthy-system daemonset-daemonset-1592336498-1592336507-mmg2f on node stg-kw2-c1-06"
time="2020-06-16T19:42:14Z" level=info msg="DaemonSetChecker Test daemonset pod is still removing: kuberhealthy-system daemonset-daemonset-1592336498-1592336507-nh2f4 on node stg-kw2-c1-09"
time="2020-06-16T19:42:14Z" level=info msg="DaemonSetChecker Test daemonset pod is still removing: kuberhealthy-system daemonset-daemonset-1592336498-1592336507-nwfvn on node stg-kw2-c1-07"
time="2020-06-16T19:42:14Z" level=info msg="DaemonSetChecker Test daemonset pod is still removing: kuberhealthy-system daemonset-daemonset-1592336498-1592336507-px8dz on node stg-kw1-c1-06"
time="2020-06-16T19:42:14Z" level=info msg="DaemonSetChecker Test daemonset pod is still removing: kuberhealthy-system daemonset-daemonset-1592336498-1592336507-q4flr on node stg-kw1-c1-05"
time="2020-06-16T19:42:14Z" level=info msg="DaemonSetChecker Test daemonset pod is still removing: kuberhealthy-system daemonset-daemonset-1592336498-1592336507-qkc44 on node stg-km-c1-03"
time="2020-06-16T19:42:14Z" level=info msg="DaemonSetChecker Test daemonset pod is still removing: kuberhealthy-system daemonset-daemonset-1592336498-1592336507-rtdtq on node stg-km-c1-01"
time="2020-06-16T19:42:14Z" level=info msg="DaemonSetChecker Test daemonset pod is still removing: kuberhealthy-system daemonset-daemonset-1592336498-1592336507-v8dnv on node stg-kw1-c1-02"
time="2020-06-16T19:42:14Z" level=info msg="DaemonSetChecker Test daemonset pod is still removing: kuberhealthy-system daemonset-daemonset-1592336498-1592336507-vmjpn on node stg-kw3-c1-02"
time="2020-06-16T19:42:14Z" level=info msg="DaemonSetChecker Test daemonset pod is still removing: kuberhealthy-system daemonset-daemonset-1592336498-1592336507-vp6pd on node stg-kw2-c1-02"
time="2020-06-16T19:42:14Z" level=info msg="DaemonSetChecker Test daemonset pod is still removing: kuberhealthy-system daemonset-daemonset-1592336498-1592336507-vqhgw on node stg-kw1-c1-10"
time="2020-06-16T19:42:14Z" level=info msg="DaemonSetChecker Test daemonset pod is still removing: kuberhealthy-system daemonset-daemonset-1592336498-1592336507-vxlkm on node stg-kw1-c1-04"
time="2020-06-16T19:42:14Z" level=info msg="DaemonSetChecker Test daemonset pod is still removing: kuberhealthy-system daemonset-daemonset-1592336498-1592336507-wbmf7 on node stg-kw2-c1-03"
time="2020-06-16T19:42:14Z" level=info msg="DaemonSetChecker Test daemonset pod is still removing: kuberhealthy-system daemonset-daemonset-1592336498-1592336507-wwhws on node stg-kw1-c1-08"
time="2020-06-16T19:42:18Z" level=info msg="Check failed with error: rpc error: code = Unavailable desc = etcdserver: leader changed"
time="2020-06-16T19:42:25Z" level=info msg="Successfully reported error to Kuberhealthy servers"

Expected behavior
It to deal with leader changes and just wait a bit to retry waiting for the pods to be cleaned up.  This is a false error since the check actually succeeded.
Versions

Cluster OS: CentOS 7
Kubernetes Version: 1.16.7
Kuberhealthy Release or build [e.g. 0.1.5 or 235]: v2.2.0
ds checker version: v2.2.2

Additional context
Add any other context about the problem here.

Interesting.  It does seem like being this sensitive to failures is a double-edged sword.  It feels like we need to think carefully about how we retry API calls and when those failures get turned into an error.
The nature of Kubernetes is to support small faults and failures like this gracefully, so I agree our checks should too.
@joshulyne is currently rewriting the daemonset checker in PR #515 - perhaps graceful retries should be built into that?

I went back in logs and found that this had occurred with the Deployment checker as well.
Image: kuberhealthy/deployment-check:v1.4.4
time="2020-06-16T18:21:15Z" level=error msg="Error listing deployments: rpc error: code = Unavailable desc = etcdserver: leader changed"

@mitchellmaler hmm seems like the deployment checker ran into this error during the post-check clean-up phase, after successfully running the check and reporting the check's success to kuberhealthy whereas for the daemonset check, the error occurred during the check run resulting in it reporting the failure to kuberhealthy. however, this error could potentially occur anytime so both checks should have something to handle that during any phase of the full check cycle.
i agree with @integrii that both the daemonset and deployment checks should be able to handle this gracefully -- i'll add this to my current refactoring effort for the daemonset check in #515. We should also work on adding this to the deployment check as well!

@mitchellmaler just merged in #515 that includes kube api retries for the daemonset check. The khcheck image: kuberhealthy/daemonset-check:v3.0.0should have these changes -- let us know if this image works for you!

@mitchellmaler closing this issue for now since kuberhealthy/daemonset-check:v3.0.0 is available as a potential fix. let us know if you see this issue again!

@joshulyne Good deal! Sorry I haven't replied, haven't had a chance to test it.
Do you know when a new version of the chart will be released with the updated version of the daemonset checker? I can manually provide the value now to test it.

Looks like this still hasn't been merged into the values.yaml for the Helm chart...
@joshulyne did you ever verify the daemonset-check:v3.0.0 by running it somewhere?  Should we open a PR to use the new v3 checker by default?

@mitchellmaler planning for a new Kuberhealthy 2.3.0 release this week! Standby!

Looks like this still hasn't been merged into the values.yaml for the Helm chart...
@joshulyne did you ever verify the daemonset-check:v3.0.0 by running it somewhere? Should we open a PR to use the new v3 checker by default?

@jonnydawg made additional changes to the daemonset check adding a nodeSelector option so now the daemonset check is on v3.1.0!


[JS] Topic: External Libraries - Bootstrap

Description
Introducing the Bootstrap library in front-end web development and the significance of JavaScript in Bootstrap.
Mode:  Documentation
Directory
JavaScript/Topics/External_Libraries/Bootstrap
Domain
JavaScript
Type of Contribution
Documentation
Code of Conduct

[X] I follow Contributing Guidelines & Code of conduct of this project.

/assign

@paramsiddharth I guess the bot unassigned me😅, did I do something wrong?


Matrics Webapp: Feature

In this project, I:

[ ] Setup React, React Router and Redux
[ ] Setup linters check
[ ] Chose API and fetch data from the API
[ ] Developed the homepage such that

When the page loads, the webapp shows the list of categories that could be filtered out by some parameter, for example by the category name
Along with the category name, you will display some numeric values per category that come from the API.
When the user clicks (or taps) on a category item, the application navigates to the details page

[ ] Developed the details page such that

In the details page, the webapp retrieves data from the API to show detailed data in the category.
When the user clicks on the "Back" button (<), the user navigates to the home page.

[ ] Ensured the design is like the original deign by Nelson Sakwa
[ ] Ensure all linters check is okay.

Hello @chiedozie013 kindly restrain from making changes after requesting a review as it'll affect the outcome of the review and cause confusions later


Have to reload the vscode windows after changing emmet extensions

Testing #28465
I have syntaxProfiles.json like
{
    "html": {
        "tag_case": "upper"
    }
}

when I change it to "lower", the change doesn't take effect until I restart vscode.

Duplicate of #19253


Catch shadowed builtins

Towards  #93
There is module that does it, but it also conflates the places where I chose a bad parameter with those where a library made a bad choice. Waiting for feedback on https://github.com/gforcada/flake8-builtins/issues/13 before continuing.

@scottx611x : The flake8 plugin was doing the right thing all along: I was just misreading the output. This is just a bunch of renames.


Tanh activation to SAC policy output not implemented

The tanh "squashing function" mentioned in the documentation of SAC is not implemented in the SAC code.
act_dim = env.action_space.shape[0] is requested from the environment but never used after that.

Squashing is applied in the core.py file, here.

Thank you for the fast answer @jachiam
Maybe it would be better to remove the unused  act_limit = env.action_space.high[0] then, since the squashing is always done to the range (-1,1) anyways. Got it confused with act_dim in the first comment, sorry about that.


Fixing panic when histogram schema not matches

Queriers Panic when histogram schema does not matches
goroutine 936 [running]:
github.com/prometheus/prometheus/model/histogram.(*FloatHistogram).floatBucketIterator(0xc000e3d170?, 0xc0?, 0x37f0000000000000?, 0x3)
        /go/pkg/mod/github.com/prometheus/prometheus@v0.42.0/model/histogram/float_histogram.go:699 +0x19c
github.com/prometheus/prometheus/model/histogram.(*FloatHistogram).Add(0xc000e3d170, 0xc0016866c0)
        /go/pkg/mod/github.com/prometheus/prometheus@v0.42.0/model/histogram/float_histogram.go:203 +0x8a
github.com/thanos-community/promql-engine/execution/aggregate.histogramSum({0xc000e30f00, 0x98, 0x0?})
        /go/pkg/mod/github.com/thanos-community/promql-engine@v0.0.0-20230216083447-f09127b8558c/execution/aggregate/vector_table.go:136 +0x5d
github.com/thanos-community/promql-engine/execution/aggregate.newVectorAccumulator.func1({0x0?, 0xc000a5fb30?, 0x93f08d?}, {0xc000e30f00?, 0x3?, 0xc000a5fb88?})
        /go/pkg/mod/github.com/thanos-community/promql-engine@v0.0.0-20230216083447-f09127b8558c/execution/aggregate/vector_table.go:93 +0x88
github.com/thanos-community/promql-engine/execution/aggregate.(*vectorTable).aggregate(0xc0010b8d80, 0x0?, {0x18661145d50, {0x0, 0x0, 0x0}, {0x0, 0x0, 0x0}, {0xc0019b8a00, ...}, ...})
        /go/pkg/mod/github.com/thanos-community/promql-engine@v0.0.0-20230216083447-f09127b8558c/execution/aggregate/vector_table.go:58 +0x83
github.com/thanos-community/promql-engine/execution/aggregate.(*aggregate).workerTask(0xc0005b6270, 0xc00123c6a4?, 0xc000602ea0?, {0x18661145d50, {0x0, 0x0, 0x0}, {0x0, 0x0, 0x0}, ...})
        /go/pkg/mod/github.com/thanos-community/promql-engine@v0.0.0-20230216083447-f09127b8558c/execution/aggregate/hashaggregate.go:182 +0xde
github.com/thanos-community/promql-engine/worker.(*Worker).start(0xc0010b8b10, 0xc0010b9d70?, {0x2b1d8d0?, 0xc000889020?})
        /go/pkg/mod/github.com/thanos-community/promql-engine@v0.0.0-20230216083447-f09127b8558c/worker/worker.go:74 +0xff
created by github.com/thanos-community/promql-engine/worker.Group.Start
        /go/pkg/mod/github.com/thanos-community/promql-engine@v0.0.0-20230216083447-f09127b8558c/worker/worker.go:29 +0x4b
panic: cannot merge from schema 2 to 3

goroutine 931 [running]:
github.com/prometheus/prometheus/model/histogram.(*FloatHistogram).floatBucketIterator(0xc000e438c0?, 0xc0?, 0x37f0000000000000?, 0x3)
        /go/pkg/mod/github.com/prometheus/prometheus@v0.42.0/model/histogram/float_histogram.go:699 +0x19c
github.com/prometheus/prometheus/model/histogram.(*FloatHistogram).Add(0xc000e438c0, 0xc000d2f8c0)
        /go/pkg/mod/github.com/prometheus/prometheus@v0.42.0/model/histogram/float_histogram.go:203 +0x8a
github.com/thanos-community/promql-engine/execution/aggregate.histogramSum({0xc0007b8a00, 0x98, 0x1?})
        /go/pkg/mod/github.com/thanos-community/promql-engine@v0.0.0-20230216083447-f09127b8558c/execution/aggregate/vector_table.go:136 +0x5d
github.com/thanos-community/promql-engine/execution/aggregate.newVectorAccumulator.func1({0x0?, 0x0?, 0x0?}, {0xc0007b8a00?, 0x0?, 0x0?})
        /go/pkg/mod/github.com/thanos-community/promql-engine@v0.0.0-20230216083447-f09127b8558c/execution/aggregate/vector_table.go:93 +0x88
github.com/thanos-community/promql-engine/execution/aggregate.(*vectorTable).aggregate(0xc0010b8c90, 0x0?, {0x18661134be0, {0x0, 0x0, 0x0}, {0x0, 0x0, 0x0}, {0xc0016ee000, ...}, ...})
        /go/pkg/mod/github.com/thanos-community/promql-engine@v0.0.0-20230216083447-f09127b8558c/execution/aggregate/vector_table.go:58 +0x83
github.com/thanos-community/promql-engine/execution/aggregate.(*aggregate).workerTask(0xc0005b6270, 0xc000c596a4?, 0xc0015a41a0?, {0x18661134be0, {0x0, 0x0, 0x0}, {0x0, 0x0, 0x0}, ...})
        /go/pkg/mod/github.com/thanos-community/promql-engine@v0.0.0-20230216083447-f09127b8558c/execution/aggregate/hashaggregate.go:182 +0xde
github.com/thanos-community/promql-engine/worker.(*Worker).start(0xc0010b8a20, 0xc0010b9e30?, {0x2b1d8d0?, 0xc000889020?})
        /go/pkg/mod/github.com/thanos-community/promql-engine@v0.0.0-20230216083447-f09127b8558c/worker/worker.go:74 +0xff
created by github.com/thanos-community/promql-engine/worker.Group.Start
        /go/pkg/mod/github.com/thanos-community/promql-engine@v0.0.0-20230216083447-f09127b8558c/worker/worker.go:29 +0x4b

Thanks for the fix. I wonder if we need something like this instead: https://github.com/prometheus/prometheus/blob/57bcbf18880f7554ae34c5b341d52fc53f059a97/promql/engine.go#L2450-L2456


allow configurable port for monit

@kenbreeman @pranav Right now the port monit runs on conflicts with some ports mesos is allocating from, it'd be nice to be able to customize the port we run monit on

Hey @ssalinas can you make this PR against hsmaster?


TensorCore Support using Intrinsic

This is the code for the RFC https://github.com/dmlc/tvm/issues/4052 with a TensorCore tutorial
Any comments and reviews are welcomed.

@minminsun Can you help to review this?

Can we also add int support in this pr? Also is there any performance updates compared with the ones mentioned in RFC #4052?

@Laurawly  Thank you for your comments. It is my negligence forgetting to support int type. But one thing worths noting is that int type TensorCores are only supported on Turing GPUs. I can't access any Turing GPUs. It should work but need more testing.
As for the performance. Currently, we are faster than CUBLAS/CUDNN on small shapes but slower on large shapes. In fact, the performance depends on the scheduling but not the tvm implement. I believe that I have the same performance as Minmin's. Even the CUDA code is the same. I have to admit there should be a better schedule on specific shapes.  Any better schedule is welcomed. However, I believe that it should be done by autotvm rather than human beings.

@minminsun Can you help to review this?

Sure, and we are refactoring the auto tc codegen code to reuse these intrinsics.

@Laurawly Thank you for your comments. It is my negligence forgetting to support int type. But one thing worths noting is that int type TensorCores are only supported on Turing GPUs. I can't access any Turing GPUs. It should work but need more testing.
As for the performance. Currently, we are faster than CUBLAS/CUDNN on small shapes but slower on large shapes. In fact, the performance depends on the scheduling but not the tvm implement. I believe that I have the same performance as Minmin's. Even the CUDA code is the same. I have to admit there should be a better schedule on specific shapes. Any better schedule is welcomed. However, I believe that it should be done by autotvm rather than human beings.

Volta GPUs have int support as well. I tested int8 GEMM using wmma instructions on a V100 GPU. It has even better support than Turing architecture.  You can also find some info here: https://developer.download.nvidia.com/video/gputechconf/gtc/2019/presentation/s9926-tensor-core-performance-the-ultimate-guide.pdf.
Performance-wise if you believe auto tvm could give us better results than cublas, could you add autotvm interface for people to do auto search?

Volta GPUs have int support as well. I tested int8 GEMM using wmma instructions on a V100 GPU. It has even better support than Turing architecture. You can also find some info here: https://developer.download.nvidia.com/video/gputechconf/gtc/2019/presentation/s9926-tensor-core-performance-the-ultimate-guide.pdf.

I still think Volta GPUs have no such support. This slide from your links may say the same thing. Can you doublecheck it? Or can you share your code and show me how to use it on Volta GPU? Thanks a lot!

Performance-wise if you believe auto tvm could give us better results than cublas, could you expose the autotvm interface for people to do auto search?

The autotvm interface is always here. Users can use autotvm to tune TensorCore schedules as they wise. I guess your opinion is adding an auto turning tutorial?

Volta GPUs have int support as well. I tested int8 GEMM using wmma instructions on a V100 GPU. It has even better support than Turing architecture. You can also find some info here: https://developer.download.nvidia.com/video/gputechconf/gtc/2019/presentation/s9926-tensor-core-performance-the-ultimate-guide.pdf.

I still think Volta GPUs have no such support. This slide from your links may say the same thing. Can you doublecheck it? Or can you share your code and show me how to use it on Volta GPU? Thanks a lot!

Performance-wise if you believe auto tvm could give us better results than cublas, could you expose the autotvm interface for people to do auto search?

The autotvm interface is always here. Users can use autotvm to tune TensorCore schedules as they wise. I guess your opinion is adding an auto turning tutorial?

Yes, I misread the document and when I did nvprof on my code on V100 it seems that it didn't go though the int8 wmma kernel but it did on Turing GPU.
If users run your test/tutorial, can they reproduce the performance you mentioned? If so, then I think it would be helpful to have an autotvm schedule as well for users to search performance for larger shapes, but it's ok to put them in another PR.

If users run your test/tutorial, can they reproduce the performance you mentioned? If so, then I think it would be helpful to have an autotvm schedule as well for users to search performance for larger shapes, but it's ok to put them in another PR.

Yes, they can easily reproduce the performance. I agree with you that we should have an autotvm tutorial. @minminsun is working on it. It will be better to have a tutorial after both of our solutions are merged so that we can choose a better way to use autotvm.

@were @merrymercy Can you help to review this PR as well?

@soiferj @minminsun @vinx13 Can you update on your reviews?

@Laurawly @minminsun @vinx13 @soiferj Can please you have another look at it?

Overall LGTM, let's wait for other reviewers' updates as well.

Thanks @Hzfengsy @vinx13 @minminsun @soiferj


Add emission pathways header, intro and section anchor links

Starts the emission pathways page with the header, intro, and links to different sections

Cool! Disabled for now


Fallback OOBE into text mode if graphics are not supported

There is a --text parameter added to wsl-setup, which starts the TUI instead of the snap GUI. We need to add it dynamically from the launcher:

if wslg is not installed
or if current distro is using wsl 1

To achieve that, WSLApiLoader was modified to expose one hidden function WslGetDistributionConfiguration(), which can report the recently installed distro subsystem version, default environment variables etc. For this PR the only relevant piece of information is the subsystem version.
There could be other ways to find that information, like querying the Windows registry for the default system version. That idea in particular could lead into crashes if the OOBE is ran in the future in reconfigure mode, for instance, under a distro with the version modified to WSL 1.
The graphics capability in this proposal is detected indirectly by checking if the symlink /tmp/.X11-unix is resolved correctly and if the corresponding socket is open and listening. Proof of concept tests proved that the socket is open right after distro registration under WSL 2 with WSLg enabled.

Just did a quick review here: that looks perfect! The only missing part is the override autodetection one!

Good work!
I really wonder if we should keep the .dll probing, due to its fragility. Do you mind doing additional testing first to only check for the bindmounted socket?
Also, there is one part of the card which is not addressed: We need a switch on the launcher to try forcing one mode for wsl setup (--text and --gui for instance?) This is for testing purposes, so it can be done directly with an argument of the launcher exe or via an environment variable (maybe the env is better like LAUNCHER_FORCE_GRAPHICS (0 or empty auto detect, 1 force wsl, 2 force test? or any better naming :p)

I'm going to work on that now. I didn't consider the idea of testing. Indeed that will be a lot useful. The environment variable will result in 0 changes in upstream code, against the CLI option, which would cause us to either change main to inject the CLI arguments vector or change signature of the function InstallDistribution().
Do you really think we need to force GUI during tests?
The way I see this is:

Prefer GUI by default.
Fall back to text if either the env var is set or graphics are not supported.

Thinking that way, I'd name it to LAUNCHER_TEST_FORCE_TEXT. If set, go to text mode. If 0 or empty, auto detect.

Do you really think we need to force GUI during tests?

This was for distinguishing those cases in tests (before looking at the specifics):

test failing because autodetection is broken
test failing because GUI is broken.

I see your point. It does make sense. Let's call it  LAUNCHER_FORCE_MODE and let it be:

0 or unset = autodetection
1               = text mode
2               = GUI mode.


PTC account failed

Hi I just tried this bot. It is awesome. BUT I meet a problem.
My google accounts are all good with this script. However my ptc account can log in and then failed. I can not figure out why. Can anyone help me or anyone meet the same problem?
###The Print LOG is shown as belows:
2016-08-07 14:14:49,647 [       cli] [INFO] PokemonGO Bot v1.0
2016-08-07 14:14:49,648 [       cli] [INFO] Configuration initialized
2016-08-07 14:14:49,648 [pokemongo_bot.health_record.bot_event] [INFO] Health check is enabled. For more logrmation:
2016-08-07 14:14:49,648 [pokemongo_bot.health_record.bot_event] [INFO] https://github.com/PokemonGoF/PokemonGo-Bot/tree/dev#analytics
2016-08-07 14:14:50,095 [requests.packages.urllib3.connectionpool] [INFO] Starting new HTTP connection (1): www.google-analytics.com
2016-08-07 14:14:50,330 [PokemonGoBot] [INFO] [set_start_location] Setting start location.
2016-08-07 14:14:50,330 [PokemonGoBot] [INFO] [x] Coordinates found in passed in location, not geocoding.
2016-08-07 14:14:50,330 [PokemonGoBot] [INFO] [location_found] Location found: -33.8748755,151.1987113 (-33.8748755,<PHONE_NUMBER>, 0.0)
2016-08-07 14:14:50,330 [PokemonGoBot] [INFO] [position_update] Now at (-33.8748755,<PHONE_NUMBER>, 0)
2016-08-07 14:14:50,331 [PokemonGoBot] [INFO] [login_started] Login procedure started.
2016-08-07 14:14:51,678 [pgoapi.auth] [ERROR] Could not retrieve token: Account is not yet active, please redirect.
2016-08-07 14:14:51,678 [PokemonGoBot] [INFO] [login_successful] Login successful.
Traceback (most recent call last):
File "./pokecli.py", line 493, in
main()
File "./pokecli.py", line 127, in main
report_summary(bot)
File "./pokecli.py", line 136, in report_summary
metrics.capture_stats()
File "/Users/yang/Desktop/BotPokemonGo/PokemonGo-Bot/pokemongo_bot/metrics.py", line 76, in capture_stats
response_dict = request.call()
File "/Users/yang/Desktop/BotPokemonGo/PokemonGo-Bot/pokemongo_bot/api_wrapper.py", line 90, in call
if not self.can_call():
File "/Users/yang/Desktop/BotPokemonGo/PokemonGo-Bot/pokemongo_bot/api_wrapper.py", line 58, in can_call
raise NotLoggedInException()
pgoapi.exceptions.NotLoggedInException
2016-08-07 14:14:51,683 [sentry.errors] [ERROR] Sentry responded with an error: 'ascii' codec can't decode byte 0x9c in position 1: ordinal not in range(128) (url: https://app.getsentry.com/api/90254/store/)
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/raven/transport/threaded.py", line 174, in send_sync
super(ThreadedHTTPTransport, self).send(data, headers)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/raven/transport/http.py", line 47, in send
ca_certs=self.ca_certs,
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/raven/utils/http.py", line 66, in urlopen
return opener.open(url, data, timeout)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/future/backports/urllib/request.py", line 494, in open
response = self._open(req, data)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/future/backports/urllib/request.py", line 512, in _open
'_open', req)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/future/backports/urllib/request.py", line 466, in _call_chain
result = func(*args)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/raven/utils/http.py", line 46, in https_open
return self.do_open(ValidHTTPSConnection, req)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/future/backports/urllib/request.py", line 1284, in do_open
h.request(req.get_method(), req.selector, req.data, headers)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/httplib.py", line 1053, in request
self._send_request(method, url, body, headers)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/httplib.py", line 1093, in _send_request
self.endheaders(body)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/httplib.py", line 1049, in endheaders
self._send_output(message_body)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/httplib.py", line 891, in _send_output
msg += message_body
UnicodeDecodeError: 'ascii' codec can't decode byte 0x9c in position 1: ordinal not in range(128)
2016-08-07 14:14:51,684 [sentry.errors.uncaught] [ERROR] [u'NotLoggedInException', u'  File "pokecli.py", line 493, in ', u'  File "pokecli.py", line 127, in main', u'  File "pokecli.py", line 136, in report_summary', u'  File "pokemongo_bot/metrics.py", line 76, in capture_stats', u'  File "pokemongo_bot/api_wrapper.py", line 90, in call', u'  File "pokemongo_bot/api_wrapper.py", line 58, in can_call']
Other Information
OS:
Git Commit: (run 'git log -n 1 --pretty=format:"%H"' and paste it here)
Python Version: (run 'python -V' and paste it here)

same here


Fix ConvertRect to correctly convert RECT to winrt::Windows::Foundation::Rect

winrt::Windows::Foundation::Rect ConvertRect(RECT rect) is a helper created to convert from Win32 RECT to WinRT winrt::Windows::Foundation::Rect for the purpose of creating UiaRect out of the commonly used RECT type.
However, currently, the helper incorrectly passes the left and top coordinates of RECT as Height and Width of winrt::Rect due to which the resulting winrt::Rects returned by the helper are not correct.
The change fixes the problem by correcting the order of constructor arguments.
Fixes #25

/azp run

Test?

/azp run


Eslint resolver ESM issue

I noticed issues with EsLint - resolver plugin issues. This is with version 6-beta4.
This error is returned by EsLint once the prismic is included in the file import * as prismic from "@prismicio/client";
Error: ENOENT: no such file or directory, scandir '/node_modules/@prismicio/client/esm/@prismicio'
Occurred while linting /src/client/api/prismic/prismic.ts:1

Hi @sarunast, it looks like the process printing that error is trying to read @prismicio/client V5 (the /esm/@prismicio/ directory does not exist in V6). If you are using V6, the error is correct in that the esm folder does not exist.
Could you try deleting node_modules and re-install your packages? Also, is there a way you could restart ESLint or whatever package is throwing that error?

I will close it for now. Since I don't work on this at the moment so I can't really confirm the issue.


Screen artifact visible on entity cards.

I first noticed this issue in version 0.6 and also see it in the current version, 0.6.3.

There's a narrow shaded bar that appears at the top of entity cards.
The bar flickers and appears to moves horizontally (or flash/toggle between two locations) when the page is scrolled vertically.
Sometimes the bar disappears completely then re-appears.
It doesn't appear at the top of the first card, only on the second and subsequent cards on the page.
This bar was never displayed prior to version 0.6.

Nice one ))  What device you are using?

FYI
Something must have changed in 0.6.7 because the screen artifacts are no longer present.
They were visible (on my phone) in every release since I first noticed them in 0.6 but now, in 0.6.7, they are gone.

There was no any changes to entity cards, but there was several updates of Flutter framework, so I'm thinking this was an issue of framework itself.
Closing for now. Feel free to report again if needed.
Thank for letting me know.


update LVA cloud-to-device-console-app to LVA 2.0 version

running the console app giving these results:
-----------------------  Request: GraphTopologyList  --------------------------------------------------
{
"@apiVersion": "1.0"
}
---------------  Response: GraphTopologyList - Status: 400  ---------------
{
"error": {
"code": "BadRequest",
"message": "The request is invalid",
"details": [
{
"code": "ApiVersionNotSupported",
"message": "The API version '1.0' is not supported. Supported version(s): 2.0."
}
]
}
}
Press Enter to continue

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

ID: 17c585b7-9db6-0c41-53f0-b32c3f36f2a1
Version Independent ID: 5946c064-33f4-90d4-66ea-8854a9760a98
Content: Detect motion and emit events - Azure - Live Video Analytics on IoT Edge
Content Source: articles/media-services/live-video-analytics-edge/detect-motion-emit-events-quickstart.md
Service: media-services
Sub-service: lva-edge
GitHub Login: @Juliako
Microsoft Alias: juliako

@guybartal Thank you for reporting this issue.
We are actively investigating and will get back to you soon.

@guybartal, Thanks for taking time to share your valuable feedback to improve the doc. The doc has been update. Much appreciate the follow-up.


Vue.js parses  tag and whatever is inside it.

Version
2.6.10
Reproduction link
https://codepen.io/timbenniks/pen/yPOLej
Steps to reproduce

Add a noscript tag inside the DOM node that is given to the Vue constructor.
In that noscript tag, add an image tag.
Open the network tab of the developer tools.
Load the page.

What is expected?
The expected result would be that Vue.js ignores whatever is found in the noscript tag.
What is actually happening?
That is actually happening: observe that Vue.js loads the image inside the noscript tag. Hence, Vue.js parses the noscript tag and whatever is found within it.

We found this issue as we are using Vue.js not in SPA mode but sprinkling it on top of existing HTML. When turning off the JS the page still renders HTML. The goal is to have lazy loading images and without JS we still want to see the images. Hence an image tag in a noscript element.
This sounds like an edge case but in fact this is common usage for big e-commerce systems and cms' like Sitecore and Adobe AEM.

Duplicate of #9669


Feat: datasplit limit validation size

Sometimes i want to speedup validation so as option we can limit validation size:
max_validation_volume_size = 600**3

@mzouink Need to fix tests 😬

@mzouink Need to fix tests 😬

the reason was funlib persistence. should be good now


Physics - Gravity in ammo driver not working?

trying examples\ammo.html: should objects fall? they don't, and I could not make fall in my own example. Is this a bug?

It's working here. Are you running the demo locally with npm run dev, and do you get an errors in the JS console?


Images

The home page has images going over the header, it makes it look a bit weird.

@Solrovivrus Can you make a new branch and fix it using grid?


Add support for moonshine ASR models

Model description
Please add support for moonshine ASR models. The recent github commit adds support for onnx(python), so I guess porting to js won't take much effort. However, there is no mention about transformers usage.
This model is quite good for in-browser usage scenario since it is quite small and claims to use RAM proportional to length of audio.
Prerequisites

[ ] The model is supported in Transformers (i.e., listed here)
[X] The model can be exported to ONNX with Optimum (i.e., listed here)

Additional information
No response
Your contribution
None

Hi, Evan from Useful Sensors/Moonshine here. Just letting you know this is on our radar. We're working on Transformers support right now, and we (internally) have our current ONNX models running in the browser with onnxruntime-web. Shouldn't be too difficult to get support added to transformers.js from there.

Hi, Evan from Useful Sensors/Moonshine here. Just letting you know this is on our radar. We're working on Transformers support right now, and we (internally) have our current ONNX models running in the browser with onnxruntime-web. Shouldn't be too difficult to get support added to transformers.js from there.

@evmaki Not related to this issue, but I am also eagerly waiting for the ability to finetune for supporting a new language.

Hi, Evan from Useful Sensors/Moonshine here. Just letting you know this is on our radar. We're working on https://github.com/huggingface/transformers/issues/34474 right now, and we (internally) have our current ONNX models running in the browser with onnxruntime-web. Shouldn't be too difficult to get support added to transformers.js from there.

@evmaki Great to hear! I have been following the ONNX support and it looks like a great start! One minor issue is that you currently export two versions of the decoder (w/ and w/o PKVs), leading to major weight duplication (more of a problem when running in the browser since we load the decoder twice).
We were able to solve this in Optimum by adding an If node to the graph and then choosing which path to take based on whether the past key values are provided. See here for an example. And here is the code used to merge the two decoders.
I was experimenting with your codebase to pass zero-sized tensors as input, but I get gibberish output.
Either way, once we have transformers support, I expect this to be much easier to convert (since the input/output signatures should be similar to whisper).

I have some exciting news: we've got a working version of moonshine-tiny (See PR: https://github.com/huggingface/transformers.js/pull/1099) which offers numerous benefits over the original/upstream ONNX implementation:

Huge reduction in model size (285MB → 109MB), with zero quality loss:
Original = 285MB (7+30+120+128) at fp32

Ours = 109MB (31 + 78) at fp32
This is due to the following optimizations:

Deduplicated tied weights (the original model also suffers from this problem, which is why it displays as 46.5M params instead of the correct 27M params)
Merging the two decoders (w/ and w/o PKV inputs) into a single graph

Multiple quantization support: int8/uint8, q4, fp16, q4f16. We are facing an issue with fp16/q4f16 decoder (cc @guschmue), but all other quantizations work. At q4 quantization, which still works pretty well, the model size is further reduced to 55MB (44.7+10.4)

cc @evmaki - I think these benefits can also be upstreamed, and I'd be happy to make a PR if you'd like! 🤗

@xenova That's fantastic! Please do open a PR – excited to take a look!


Remove "private class" checks

In my personal opinion it doesn't make sense that classes check if the were called from the same module. I'm speaking of checks like this: if $caller_module_name != $module_name. I'd like to remove this checks to make the module more flexible. If there are no strong reasons to leave this there, I'm happy to create a PR.

I think it is important to make a difference between "public" classes and "private" ones. Puppet does not support a better way to enforce encapulation here.
For the maintainers, it might be important to know which parameters may be changed (renamed, moved to other internal classes) and whihc must be kept as part of the module API.

Yes of course, but if I want to use a "private" class directly, f.e. because the main class does not allow to configure all parameters of a private class, or I have other ideas to use a private class directly, then it's annoying when there are a lot of red warnings. If I use a private class directly, then I'm also aware of the fact that parameters could change which then is my own responsibility to fix my class. Maybe put a notice in the class documentation which says that this class could change parameters from time to time...? And mention it in the changelog if they change?
The only way of making the usage of a private class not needed is when all parameters would be exposed to the main class, but that misses a bit the point of a private class.
It would make this module much more user friendly without this private class enforcement, I could call the classes from outside like it fits my needs. And I think flexibility is very important for a "base" module like this one.

We wrote this module with hiera usage in mind. The idea is to only include the main class and configure the rest with hiera. Clearly, seeing many issues on that topic, people prefer to mix data and code and I agree that we shouldn't stand in the way here.
Not that there is some imported logic and dependency management happening in init.pp that you would have to replicate currently. That's why most sub-classes are marked as private. Fixing this is probaly a major refactoring which we are not able to do right now due to time constraints.
Pull requests are welcome.


add DAP Analytics

https://github.com/digital-analytics-program

hi @tdlowden, can you 👀  please?
Thanks!


Secure E7+

Hi!
https://www.securemeters.com/uk/product/electric-water-heating-controls/e7/
Secure started making an ‘smart’ boiler switch. I live in the UK and I’m thinking of buying one to integrate into my homebridge/HomeKit smart home. I have a smart tariff with Octopus and long term I’d like to integrate my boilerr to heat up during cheaper energy times.
Unfortunately the app is proprietary. The vendor said they have no short term plans for integrations. The device can be controlled locally with Bluetooth or WiFi.
I noticed this plugin supports some secure devices. Have you got any plans to support the newer connected devices? I don’t own one yet but I’m about to buy one and I’d love to support the development (with ‘coffee’).
I just use homebridge is all but there are lots of homebridge plugins that can be based on community made HTTPS or BLE APIs..
Let me know what you think. I’ve seriously scoured the Internet and no one’s writing plugins for these devices.
Thanks,
San

Hi @samsonrosen!
Thank you for reaching out.
First of all, since Homey labels this app as a "Community app" it only works on Homey Pro. I'm not sure about Homey Bridge, but my guess is that it is not possible to install this app on Homey Bridge.
Secondly, all the drivers implemented so far in this app are using z-wave, but the e7+ seems to be Bluetooth if I understand it correctly.
I don't have any experience working with Bluetooth devices in Homey, and I do not own any device to test the development on, so I'd say that the chances are quite low that it will be possible for me to add support for it. I'd happy to consider PRs, but I don't think I will be able to implement it myself.
Best regards,
Hank

Thanks for taking the time to reply! Yeah I thought the protocol was different. You are correct about it being Bluetooth.
I’ll see what tools are out there to see if there’s an easy way to capture packets and reverse engineer it into a simple on / off homebridge plugin.


Reverse engineer and use HTTP for Amazon Login

Instead of clicking about with selenium we should be able to send http back and forth and store some cookies

It doesn't work naively and they identify us as a bot if we just send over a post with credentials. Even if we just do a get on the signin page we are identified.
But we should be able to reverse engineer what's happening to just pretend to be a chrome browser. They seem to be expecting some more tokens in the headers.  There's no captcha type thing and it clearly doesn't detect selenium so that leads me to believe this can be solved. Might have to look into running whatever js is embedded on the page.


Replace flutter_local_notifications with pigeon bindings

Fixes: #351

Exciting!
LMK if there are questions you have for me at this stage, or particular spots in the code you'd like an early high-level review of.

@gnprice, I have a question about whether this implementation is desirable. Currently it creates a pending intent using the ACTION_VIEW action with a URL payload for each notification. When the user opens the notification, the intent functions as a deeplink and is handled by the existing URL handling in Flutter. Then this url is parsed and handled here for incoming intents while the app is open and while the app is closed.
Also, when the intent is created we set explicity set the reciever component so that ensures that this instance of zulip://notificiation_open url intent is only handled by our app.
This way this implementation avoids creating a custom intent handler and reuses Flutter existing URL route handler.

Moved the discussion to chat thread here — https://chat.zulip.org/#narrow/stream/243-mobile-team/topic/flutter.3A.20Drop.20.60flutter_local_notifications.60.20.23F856/near/1910352

It looks like there's been some further discussion on these changes: https://chat.zulip.org/#narrow/stream/243-mobile-team/topic/narrow.20links.20with.20userid.3F/near/1941174
Please post here when that's resolved and this is ready for another review. 🙂

Apologies for the delay in the revision. Thanks for the previous review @chrisbobbe, pushed a new revision, PTAL.

Hmm, looks like some tests are failing, could you take a look?

Weird, I can't repro locally. Error in CI is:
 Invalid argument(s): Failed to load dynamic library 'libsqlite3.so': libsqlite3.so: cannot open shared object file: No such file or directory
  dart:ffi                                                        new DynamicLibrary.open
  package:sqlite3/src/ffi/load_library.dart 52:27                 _defaultOpen
  package:sqlite3/src/ffi/load_library.dart 127:12                OpenDynamicLibrary.openSqlite
  package:sqlite3/src/ffi/api.dart 13:39                          sqlite3
  package:drift/native.dart 313:12                                _NativeDelegate.openDatabase
  package:drift/src/sqlite3/database.dart 79:19                   Sqlite3Delegate.open
  package:drift/src/runtime/executor/helpers/engines.dart 431:22  DelegatedDatabase.ensureOpen.<fn>

It seems unrelated to this PR, because I am getting the same failure on main in my fork.
I'll investigate it later in the day, unless someone else does it first.

Rerunning the CI checks; this should fix it: https://github.com/zulip/zulip-flutter/pull/999#issuecomment-2417351945

Thanks for the review @chrisbobbe and @gnprice!
@gnprice I've now rebased this PR on top of #1005 with suggested changes, PTAL.

I've unassigned myself since it's Greg's turn to review. 🙂
One thing was weird though. Here's that update as GitHub shows it here:

But the GitHub bot on CZO rendered it this way:
https://chat.zulip.org/#narrow/channel/494-mobile-github/topic/zulip-flutter/near/1964999

chrisbobbe unassigned gnprice to PR #856 Replace flutter_local_notifications with pigeon bindings.

Seems like a bug in our GitHub bot. The #integrations channel would be a good place to report it; I think we have a contributor currently who'd be likely to pick up an issue like that.

Sure; reported there: https://chat.zulip.org/#narrow/channel/127-integrations/topic/GitHub.3A.20Wrong.20user.20identified.20as.20unassigned/near/1965136

Thanks for the review @gnprice! Pushed a new revision, PTAL.

Thanks for the review @gnprice! New revision pushed, PTAL.

Thanks for the review @gnprice. Pushed a new revision, PTAL.

Thanks for the review @gnprice! Pushed a new revision, PTAL.
Although I was unable to find the mentioned test protocol, I did some fresh manual testing of following scenarios:

Recieved muliple messages from two different users in two different streams and thus different topics, notifications are correctly displayed and routed to correct conversation when opened.
Recieved muliple messages from two different users in same stream but two different topics, notifications are correctly displayed and routed to correct conversation when opened.
Recieved a message in one-one DM, notification is correctly displayed and routed to the DM page when opened.
Recieved messages in group DM with two users (total 3 users), notification is correctly displayed and routed to the group DM page when opened.

(Tested the above cases with both foreground and background notifications)

Recieved messages in a stream+topic conversation, notification is correctly displayed, marked as read the conversation from web client, notifications for that specific conversation were removed.
Recieved messages in a one-one DM,  notification is correctly displayed, marked as read the conversation from web client, notifications for that specific conversation were removed.

In addition to that, I also had the mobile notifications enabled for all channels in multiple (busy) servers to test the realm group summary notifications.

Thanks for the review @gnprice. Pushed a new revision, PTAL.

Looks good — merging. Thanks for all your work getting this transition finished!


Azure AD Guest User Access (B2B) failes to Authenticate

Azure Data Studio Version: 1.17.1 (MAC OS)

Steps to Reproduce:
Setup:

Created a guest user in alternate AD Tenant AD.
Invited the guest user into the primary AD.
Ensure the Guest user accepted the invitation and configured MFA.
Created a AD Group in the primary AD tenant  called Guest_Group_Test and added the Guest User.

Log into SQL Server using your user (not the guest)
The following TSQL was ran in the SQL Database successfully.

CREATE USER [Guest_Group_Test] FROM EXTERNAL PROVIDER;
EXEC sp_addrolemember 'db_datareader', 'Guest_Group_Test';

Open Azure Data Studio, make a new connection to the target Azure SQL Server.
Choose Azure Active Directory - Universal with MFA Support
Ensure the Account is the Guest user email who was added into the primary tenant via b2b.
Click Connect

Error's:
Retrieving the Azure token failed. Please Sign in again.
Login failed for user '<token-identified principal>'.
Note:
Tested on SSMS version 18 and the above scenario works with authenticating B2B users provided they are in a AD Group.

@aaomidi do you have any context on this scenario?

I don't, the only thing I could think of is if the wrong account is selected.
I'll try to investigate this some more.

I'm encountering the same issue today as #10207 on Windows. I've tried 1.17.1 and the insiders build but still the issue persists. Below is the console log.
c:\Program Files\Azure Data Studio - Insiders\resources\app\node_modules.asar\zone.js\dist\zone-node.js:2280 Retrieving the Azure token failed.
The error messages have been enhanced both when signing in to Azure, and when logging into a server with Azure MFA. Could you please try both scenarios, and post your Developer tool logs and other logs in this issue.
Thank you!

The output looks the same to me. Below is the version info of the insiders build I was running.
Version: 1.18.0-insider (system setup)
Commit: ab374e362a8b9199d1ed37f2e13abcebd594d99b
Date: 2020-05-12T22:57:17.994Z
VS Code: 1.45.0
Electron: 7.2.4
Chrome: 78.0.3904.130
Node.js: 12.8.1
V8: 7.8.279.23-electron.0
OS: Windows_NT x64 10.0.17763
The renderer file just had the following log.
[2020-05-13 15:51:32.118] [renderer1] [error] Error while adding account: Error: Failure when retreiving tokens
The console log is the same
Show 2 more frames
c:\Program Files\Azure Data Studio - Insiders\resources\app\node_modules.asar\zone.js\dist\zone-node.js:2280 [Extension Host] Error: Error: Unable to read token claims: {}	at e.getToken (c:\Program Files\Azure Data Studio - Insiders\resources\app\extensions\azurecore\dist\extension.js:16:129600)	at processTicksAndRejections (internal/process/task_queues.js:85:5)	at async e.login (c:\Program Files\Azure Data Studio - Insiders\resources\app\extensions\azurecore\dist\extension.js:166:34919) (at e.login (c:\Program Files\Azure Data Studio - Insiders\resources\app\extensions\azurecore\dist\extension.js:166:35064))
c:\Program Files\Azure Data Studio - Insiders\resources\app\node_modules.asar\zone.js\dist\zone-node.js:2280   ERR Error while adding account: Error: Failure when retreiving tokens
I tried with both a non-MFA and MFA account and the same issue occurs.
I went back to v 1.16.1 and it works fine.

Hmm, your issue is definitely odd. The error seems to be here:
https://github.com/microsoft/azuredatastudio/blob/923272f9893f0cd470ad3829a96c666d87938d5e/extensions/azurecore/src/account-provider/auths/azureAuth.ts#L381
Where the access_token is seemingly not properly defined. Which means there was likely an error getting an access token entirely. Unfortunately it seems that the POST request is still responding with status 200, and I don't want to add any logging to the response because that could leak access tokens.
Would you feel comfortable replacing the extension.js file with a custom one I can quickly provide that will add logging to the response from the AzureMFA? Just make sure you don't share your access token here.

With the new version (Version: 1.18.0-insider Commit: ab374e362a8b9199d1ed37f2e13abcebd594d99b Date: 2020-05-12T22:51:22.359Z (9 hrs ago)) I can see some useful logs.

/data/home/mlpoc/Dow…t/zone-node.js:2280 [Extension Host] Unexpected error making Azure auth request azureCore.postRequest ...
502 Bad Gateway ... The webserver reported that an error occurred while trying to access the website.
Client IP: MY_IP Server IP: <IP_ADDRESS>
(at e.makePostRequest (/data/home/mlpoc/Downloads/azuredatastudio-linux-x64/resources/app/extensions/azurecore/dist/extension.js:16:127507))

As mentioned before I am running behind proxy. When I set no_proxy to include also <IP_ADDRESS> I could move further, but what is that ip?
When using Auth Code Gran method I am getting then following error in the console:

[Extension Host] Unexpected error making Azure auth request azureCore.postRequest {
"error": "interaction_required",
"error_description": "AADSTS53003: Access has been blocked by Conditional Access policies. The access policy does not allow token issuance.\r\nTrace ID: 281dda43-800d-48f1-ae62-ea9589a30c00\r\nCorrelation ID: 39888be4-aae1-47a2-abe0-dece46bda0a9\r\nTimestamp: 2020-05-13 07:48:26Z",
"error_codes": [
53003
],
"timestamp": "2020-05-13 07:48:26Z",
"trace_id": "281dda43-800d-48f1-ae62-ea9589a30c00",
"correlation_id": "39888be4-aae1-47a2-abe0-dece46bda0a9",
"error_uri": "https://login.microsoftonline.com/error?code=53003",
"suberror": "message_only"
}

When I try Device Code method I am getting following error in the webbrowser:

You cannot access this right now
Your sign-in was successful but does not meet the criteria to access this resource. For example, you might be signing in from a browser, app, or location that is restricted by your admin.

This method of authentication still works ok on the same server with version 1.12.
Also another minor issue, when authorization fails "Adding accounts..." popups seems to be stacking up for a while:

@marcin-vt The old authentication system didn't honor your organizational settings. Unfortunately, this is something that you need to bring up to your organization.

So after getting logs on GitHub and externally, this seems to be related to error AADSTS50076.
This is a conditional access error, and "interaction required" is printed.
We need to deal with errors like this and prompt the user for action.

https://login.microsoftonline.com/error?code=50076

I'm seeing a 400 bad request when it calls back to ADS on http://<IP_ADDRESS>:56642/callback?code=&state=&session_state=
Request Method: GET
Status Code: 400 Bad Request
Remote Address: <IP_ADDRESS>:56642
Referrer Policy: strict-origin-when-cross-origin
Response is just "Failure when retreiving tokens." Its like the token returned is invalid or corrupt.
I  downgraded to 1.16.1 and it all works fine. Just not sure why the later release does not work.

What's the URL does it redirect to right before this one?
You can see this using the developer tools on your browser.

I'm seeing these URLs in the developer tools.
https://login.microsoftonline.com/common/reprocess
https://vscode-redirect.azurewebsites.net

The query parameters are important, so if you can get those that would help a lot!
Please do change any personally identifiable information and token to some random characters.

https://login.microsoftonline.com/common/reprocess?ctx=XYZ&sessionid=0A61777e-5214-410f-9adb-b6f1f2de0f29
https://vscode-redirect.azurewebsites.net/?code=ABC&state=52356*AcTkudSvhK3Y54yvsopI09IA%253D%253D&session_state=0A61777e-5214-410f-9adb-b6f1f2de0f29

@aaomidi - regarding my problem with authorization - it was denied because of policies checking the source ip. As is added login.microsoftonline.com to no_proxy settings the traffic was going directly from my ip, not from my proxy ip. So I have to use the proxy and I wonder why it does not work. Why if I do not bypass the proxy for any connection, the bad gateway error still prints out my ip not proxy's? I have all environmental variables set (HTTP_PROXY, HTTPS_PROXY, https_proxy, http_proxy), also tried setting proxy explicitly in data studio, but it did not help.
Strangely enough I tried running azure data studio on a Windows server in the same virtual network, using the same proxy (not bypassing it for any server) and it worked fine. Any clue what might be difference between running datastudio on ubuntu and windows?

@swilkodev, The latest insiders is supposed to give you more information on what failed I believe. Those URLs look fine to me.
I'll try to get even more error logging to see if we can root cause it.

@marcin-vt That's a super interesting scenario. I wonder if there is some settings in AAD that I'm not aware of from your organization.
Could you check and see if logging into your personal Microsoft account and see if this still happens?
You can alternatively use device code authentication (just change it in the settings for ADS, if you search device code it'll pop up) but that method may be disabled by your organization.

Signing in with device code fails for the same reason as authentication code.
With my Microsoft account:

when bypassing the proxy it fails with "Error retreiving tenant information" - I can see also 502 Bad Gateway in the log.
when using proxy it reports "Error: Failure when retreiving tokens" + also 502 Bad Gateway - so the same as with AD account.

Thank you all for looking into this. As a gentle reminder, @rohrerb was able to use SQL Management Studio (from a Windows machine) to login to workaround. I bring this up because there are references to AD organization settings, which ideally should have also affected SSMS if they were the root cause.

Going to keep this open until I can confirm the PR at least fixed some of the issues.

There seems to be another issue with this on the SqlClient side. Not 100% sure yet, and need to do more investigations with @rohrerb

@peter-rangelov I noticed that the error number was Error Number:18456,State:1,Class:14
https://docs.microsoft.com/en-us/sql/relational-databases/errors-events/mssqlserver-18456-database-engine-error?view=sql-server-ver15
According to this there is something going on but with State = 1, we don't have the information on what actually went wrong. Any way you can get that information?

Did anyone find the solution for this issue? https://github.com/microsoft/azuredatastudio/issues/10314#issuecomment-628498834
My ADS is broken suddenly, I am behind proxy and was working fine, downgrading to previous versions don’t help. I am currently on 1.19 with no extension, have removed profile settings multiple times and reinstalled 1.19 and 1.18 multiple times.
Fails with auth code grant as failed to callback <IP_ADDRESS>. With device code, authentication is successful but could not see the account added. It’s an empty entry in the accounts list dialog.
My account is not assigned to multiple tenants and is not a guest user. SSMS is not an option, trying to leverage pyspark.

@ravikd744 What do you mean it failed to callback <IP_ADDRESS>? What error did you get in your browser?
@kburtram I think the problem here might be solved if we upgrade to SqlClient 2.0, they've added an AuthenticationProvider that gets context from the service we're connecting to about what token (which tenant, etc) the server is expecting.
https://docs.microsoft.com/en-us/dotnet/api/microsoft.data.sqlclient.sqlauthenticationprovider?view=sqlclient-dotnet-core-2.0

Hi Amir,
The sign-in is happening but the azure connection is not visible post
signin.
This issue happens only from 1.17+ version. If I rollback to 1.16 I am able
to connect to Azure. Strangely, my colleague with the same environment
settings is able to connect with v1.19.
Thanks!
On Tue, Jun 30, 2020 at 21:01 Amir Omidi<EMAIL_ADDRESS>wrote:

@ravikd744 https://github.com/ravikd744 What do you mean it failed to
callback <IP_ADDRESS>? What error did you get in your browser?
@kburtram https://github.com/kburtram I think the problem here might be
solved if we upgrade to SqlClient 2.0, they've added an
AuthenticationProvider that gets context from the service we're connecting
to about what token (which tenant, etc) the server is expecting.
https://docs.microsoft.com/en-us/dotnet/api/microsoft.data.sqlclient.sqlauthenticationprovider?view=sqlclient-dotnet-core-2.0
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/microsoft/azuredatastudio/issues/10314#issuecomment-652125708,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AG32RL76X2NY426RWNJSGMTRZKDG7ANCNFSM4M4DU3SA
.

--
Sent from Gmail Mobile

The sign-in is happening but the azure connection is not visible post signin.

By azure connection, do you mean your account isn't visible on the azure pane?
Can you go to Help -> Toggle Developer Tools when logging in to see if there is any additional context to the signin failing.

It shows error in the same zone-node Js at line 2280 error as pointed out
by other members. 🙁
On Mon, Jul 6, 2020 at 14:16 Amir Omidi<EMAIL_ADDRESS>wrote:

The sign-in is happening but the azure connection is not visible post
signin.
By azure connection, do you mean your account isn't visible on the azure
pane?
Can you go to Help -> Toggle Developer Tools when logging in to see if
there is any additional context to the signin failing.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/microsoft/azuredatastudio/issues/10314#issuecomment-654390916,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AG32RL6AO5R7MOG4XUPPRILR2III5ANCNFSM4M4DU3SA
.

--
Sent from Gmail Mobile

With the developer tools open, and on the console tab. Could you press the + sign and try to sign into Azure (not a SQL DB, just to Azure).
There should be more context on whats failing.

Hi Amir,
Hope this helps.
azuredatastudio.docx
thanks!

workbench.desktop.main.js:205 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive.  Consider marking event handler as 'passive' to make the page more responsive.  Request could not be handled\r\n\t\t\r\n\t\t\r\n\t\t\t \r\n\t\t\tThis could be caused by a misconfiguration, or possibly a malformed request.\r\n\t\t\r\n\t\t\r\n\r\n\t\t\t \r\n\t\t\tFor assistance contact the Technology Support Centre at \r\n\t\t\r\n\r\n\t\r\n\r\n\t\r\n\t\t--------- If emailing, select/copy everything below this line ---------\r\n\r\n\t\tDetailed Information (debug):\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tError Specifics\r\n\t\t\t\t\t\tDate:07/06/2020 @ 17:32:34\r\n\t\t\t\t\t\tProxy ID:Someproxy\r\n\t\t\t\t\t\tConn Type:Explicit\r\n\t\t\t\t\t\tError ID:invalid_request\r\n\t\t\t\t\t\tSummary:Request Error\r\n\t\t\t\t\t\tDetails:Your request could not be processed. Request could not be handled\r\n\r\n\t\t\t\t\t\tHelp:This could be caused by a misconfiguration, or possibly a malformed request.\r\n\t\t\t\t\t\tLast Error:\r\n\r\n\t\t\t\t\t\tDest IP:some IP\r\n\t\t\t\t\t\tMethod:GET\r\n\t\t\t\t\t\tURL:https://management.azure.com/tenants?api-version=2019-11-01\r\n\t\t\t\t\t\tHTTP Code:400\r\n\t\t\t\t\t\tReason:Request could not be handled\r\n\r\n\t\t\t\t\t\tCategory:Technology/Internet\r\n\t\t\t\t\t\tRedirect:\r\n\r\n\t\t\t\t\t\tUser Information\r\n\t\t\t\t\t\tSource IP:<IP_ADDRESS>\r\n\t\t\t\t\t\tUsername:Sampleuser\r\n\t\t\t\t\t\tUsername (DN):AD\Sampleuser\r\n\t\t\t\t\t\tAuth Type:Digest\r\n\t\t\t\t\t\tRealm:AD_IWA_Direct\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\tUser Domain:AD\r\n\t\t\t\t\t\tLogin Count:1\r\n\t\t\t\t\t\tSSL Information (if applicable)\r\n\t\t\t\t\t\tS-SSL Hostname:\r\n\r\n\r\n\t\t\t\t\t\tS-SSL Cipher:none\r\n\t\t\t\t\t\tS-SSL Cipher Strength: none\r\n\t\t\t\t\t\tS-SSL Version:\r\n\t\t\t\t\t\tS-Socket Error:\r\n\t\t\t\t\t\tC-SSL Fail Reason:\r\n\t\t\t\t\t\tC-SSL Cipher:none\r\n\t\t\t\t\t\tC-SSL Cipher Strength:none\r\n\t\t\t\t\t\tDNS Information\r\n\t\t\t\t\t\tDNS Lookup Time:\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\r\n\t\t\t\r\n\r\n\r\n\t\t\r\n\t\t\r\n\t\t--------------------------- End select/copy ---------------------------\r\n\t\r\n\r\n\r\n"
c:\Users\sampleuser\AppData\Local\Programs\Azure Data Studio\resources\app\node_modules.asar\zone.js\dist\zone-node.js:2280 [Extension Host] Error: Request failed with status code 400	at e.exports (c:\Users\sampleuser\AppData\Local\Programs\Azure Data Studio\resources\app\extensions\azurecore\dist\extension.js:16:99188)	at e.exports (c:\Users\sampleuser\AppData\Local\Programs\Azure Data Studio\resources\app\extensions\azurecore\dist\extension.js:16:134408)	at IncomingMessage. (c:\Users\sampleuser\AppData\Local\Programs\Azure Data Studio\resources\app\extensions\azurecore\dist\extension.js:166:54425)	at IncomingMessage.emit (events.js:208:15)	at endReadableNT (_stream_readable.js:1168:12)	at processTicksAndRejections (internal/process/task_queues.js:77:11)
c:\Users\sampleuser\AppData\Local\Programs\Azure Data Studio\resources\app\node_modules.asar\zone.js\dist\zone-node.js:2280 [Extension Host] Error: Error retrieving tenant information	at e.getTenants (c:\Users\sampleuser\AppData\Local\Programs\Azure Data Studio\resources\app\extensions\azurecore\dist\extension.js:16:128464)	at processTicksAndRejections (internal/process/task_queues.js:85:5)
c:\Users\sampleuser\AppData\Local\Programs\Azure Data Studio\resources\app\node_modules.asar\zone.js\dist\zone-node.js:2280   ERR Error while adding account: TypeError: Cannot read property 'accountAdded' of undefined

Thank you! That's a bug I've not seen before!

@ravikd744, can you go to Settings -> Azure Authentication Method and turn on Code Grant Method and turn off Device Code Method?
I'm interested to see what happens with the code grant method - and we have more debugging there.

@ravikd744 Are you behind some sort of proxy? This error you have doesn't seem like a standard error?

Yes it’s behind a corporate proxy. Strange enough, it works for another
colleague behind the same proxy.
If I downgrade to v1.16 it works fine for me too.
On Mon, Jul 6, 2020 at 22:44 Amir Omidi<EMAIL_ADDRESS>wrote:

@ravikd744 https://github.com/ravikd744 Are you behind some sort of
proxy? This error you have doesn't seem like a standard error?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/microsoft/azuredatastudio/issues/10314#issuecomment-654565142,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AG32RLYJBP2HDQR4MFP4XX3R2KDYBANCNFSM4M4DU3SA
.

--
Sent from Gmail Mobile

Could you please test this scenario on the latest insiders?

Hi Amir,
I am still getting the same error, but with a different tag.

Could you please try this with code grant method @ravikd744

Hi Amir,
its the same error :(
[Extension Host] logFile for SqlToolsResourceProviderService.exe is c:\Users\user\AppData\Roaming\azuredatastudio\logs\20200731T092421\exthost1\Microsoft.mssql\resourceprovider.log (at Object.t.getCommonLaunchArgsAndCleanupOldLogFiles (c:\Users\user\AppData\Local\Programs\Azure Data Studio - Insiders\resources\app\extensions\mssql\dist\main.js:1:16801))
C:\Users\user\AppData\Local\Programs\Azure Data Studio - Insiders\resources\app\node_modules.asar\zone.js\dist\zone-node.js:2280 [Extension Host] This process (ui Extenstion Host) is pid: 29032 (at Object.t.getCommonLaunchArgsAndCleanupOldLogFiles (c:\Users\user\AppData\Local\Programs\Azure Data Studio - Insiders\resources\app\extensions\mssql\dist\main.js:1:16853))
C:\Users\user\AppData\Local\Programs\Azure Data Studio - Insiders\resources\app\node_modules.asar\zone.js\dist\zone-node.js:2280 [Extension Host] Old log files deletion report: {} (at Object.t.getCommonLaunchArgsAndCleanupOldLogFiles (c:\Users\user\AppData\Local\Programs\Azure Data Studio - Insiders\resources\app\extensions\mssql\dist\main.js:1:16941))
C:\Users\user\AppData\Local\Programs\Azure Data Studio - Insiders\resources\app\node_modules.asar\zone.js\dist\zone-node.js:2280 [Extension Host] Starting WebSocket: ws://localhost:9662/api/kernels/f973332c-fd14-49a6-91f9-63691f44d726 (at g._createSocket (c:\Users\user\AppData\Local\Programs\Azure Data Studio - Insiders\resources\app\extensions\notebook\dist\extension.js:217:362151))
C:\Users\user\AppData\Local\Programs\Azure Data Studio - Insiders\resources\app\node_modules.asar\zone.js\dist\zone-node.js:2280 [Extension Host] TypeError: Cannot read property 'map' of undefined -  (at Function.log (c:\Users\user\AppData\Local\Programs\Azure Data Studio - Insiders\resources\app\extensions\azurecore\dist\extension.js:16:65576))
C:\Users\user\AppData\Local\Programs\Azure Data Studio - Insiders\resources\app\node_modules.asar\zone.js\dist\zone-node.js:2280 [Extension Host] Error: Error retrieving tenant information -  (at Function.error (c:\Users\user\AppData\Local\Programs\Azure Data Studio - Insiders\resources\app\extensions\azurecore\dist\extension.js:16:65672))
console. @ C:\Users\user\AppData\Local\Programs\Azure Data Studio - Insiders\resources\app\node_modules.asar\zone.js\dist\zone-node.js:2280
C:\Users\user\AppData\Local\Programs\Azure Data Studio - Insiders\resources\app\node_modules.asar\zone.js\dist\zone-node.js:2280   ERR Error while adding account: TypeError: Cannot read property 'canceled' of undefined

closed with #18296


Make a decision about the visibility of component parameters

Summary
We have to make a final decision about the visibility of component parameters. We've run into many issues trying to use non-public properties, and I don't think these are going to stop.
Problems and Goals

We want to make it hard or impossible to set a component parameter property directly. This is never correct when done in application code
We've tried using non-public properties and found a bunch of things that don't work

Reference docs require public
Reference assemblies require public
Our metadata analysis has (possibly fragile) workarounds in place that we use to look at non-public properties

We want whatever we choose to work with AOT, but we don't exactly know the requirements. It's generally assumed in AOT that unused non-public code is dead code and can be removed.
We want whatever we choose to work with testing, but we don't know the requirements of that yet

TLDR we have given non-public properties a try and the results aren't great. We got here because we now have to maintain ref assembly code for our components manually. It would be great if the guidance for users worked for us as well.
Some options
We could recommend that users use public get properties, and we will call the setter regardless of its visibility.
We could recommend that users use public get/set properties and we will write an analyzer to tell you not to set component parameter properties.
I don't like the option that we'd keep on doing analysis over non-public properties. We don't do this anywhere else I can think of, and I don't have confidence that this will play out in our favor wrt tooling.

I am not sure if this is a valid scenario, but moving to virtual protected/virtual public parameters might make component inheritance easier. I.e. one could make a specialized version of the NavLink component by inheriting from LavLink instead of wrapping it.

Right you are. We have examples of this in the framework like InputText that are designed for inheritance.

Aren't we following the "Composition over inheritance strategy" when using components?

We have to make a final decision about the visibility of component parameters. We've run into many issues trying to use non-public properties, and I don't think these are going to stop.

Overall, very much agreed. C# doesn't have a modifier that really matches the scenario perfectly.

We could recommend that users use public get/set properties and we will write an analyzer to tell you not to set component parameter properties.

Sounds like the best option if such an analyzer is feasible. I don't know the perf characteristics of analyzers in the IDE, but of course this means our analyzer has to inspect every property-set call in every method in every opened project while you're typing. If it scales to that then great.
We could still allow developers to have private set on their own components if they want (either way, the framework is using reflection to set, so it doesn't matter to us). We would have public set on framework components to avoid all the tooling/docs/etc issues.  I don't feel strongly about this though.

We want whatever we choose to work with AOT, but we don't exactly know the requirements. It's generally assumed in AOT that unused non-public code is dead code and can be removed.

It's also generally assumed that unused public code is dead code that can be removed, given that AOT operates on applications not on libraries. So I don't expect changing the visibility is going to make anything better for us here.

Sounds like the best option if such an analyzer is feasible. I don't know the perf characteristics of analyzers in the IDE, but of course this means our analyzer has to inspect every property-set call in every method in every opened project while you're typing. If it scales to that then great.

This kind of thing actually works really well. You can to inspect every property when running a full build. When you're editing, you get to look at the class being worked on. The analyzer infrastructure just does this for you, it's pretty neat.

The only concern that I have here is that we have people different guidance than we have been - but I think it's worth changing what we're doing, and in that case we can't avoid telling people to change their code.
IMO we would want to roll this out in preview 7 along with an analyzer that tells you to conform to our guidlelines. Then in preview 8 (or later) we remove supports for non-public properties.

@rynowak I don't mind the breaking change, it's for the better and we're still in preview, so break it! 😄

I vote for the breaking change.

@pranavkm @SteveSandersonMS - please give this a look over and make sure it all makes sense.

I 👍 this

There was a lot more breaking changes already that I think this one will be a peace of cake. Also I think public properties are best way to go. So yeah, break it! :)

I don't plan to enforce public setters because there's little harm in letting people express their parameter setters as more restrictive. @rynowak / @SteveSandersonMS do you feel differently?

If we don't enforce public setters than you will need to change the discovery logic to avoid looking for the setter at all. One of the problems we've run into is that the setter won't show up in ref assemblies without being public.

If we don't enforce public setters than you will need to change the discovery logic to avoid looking for the setter at all.

I see. Alright, will enforce.

All required items for this have been completed.


Ethernet devices end up in a broken (not recoverable) state after they are detached from bonding

Hello,
There is a race in nmstate. Not sure what is the cause. I would appreciate any help.
Reproducer:
echo '
interfaces:
- name: bond0
  type: bond
  state: up
  ipv4:
    dhcp: true
    enabled: true
  link-aggregation:
    mode: balance-rr
    slaves:
    - eth1
    - eth2
' > bond0_up.yaml

echo '
interfaces:
- name: bond0
  state: absent
' > bond0_absent.yaml

echo '
interfaces:
- name: eth1
  type: ethernet
  state: up
  ipv4:
    dhcp: true
    enabled: true
- name: eth2
  type: ethernet
  state: up
  ipv4:
    dhcp: true
    enabled: true
' > eth1-eth2_up.yaml

echo '
interfaces:
- name: eth1
  type: ethernet
  state: absent
- name: eth2
  type: ethernet
  state: absent
' > eth1-eth2_absent.yaml

while \
      nmstatectl set --no-commit bond0_up.yaml && \
      nmstatectl commit && \
      nmstatectl set --no-commit bond0_absent.yaml && \
      nmstatectl commit && \
      nmstatectl set --no-commit eth1-eth2_up.yaml && \
      nmstatectl commit && \
      nmstatectl set --no-commit eth1-eth2_absent.yaml && \
      nmstatectl commit; \
    do
      true
done

After several loops, it failed with following:
2020-02-05 13:14:04,531 root         DEBUG    Checkpoint /org/freedesktop/NetworkManager/Checkpoint/175
created for all devices: 60
2020-02-05 13:14:04,531 root         DEBUG    Adding new interfaces: []
2020-02-05 13:14:04,532 root         DEBUG    Editing interfaces: ['eth2', 'eth1']
2020-02-05 13:14:04,532 root         DEBUG    Connection settings for ConnectionSetting.create:
id: eth2
iface: eth2
uuid: 15c546ea-d460-4292-b0b0-142bb22b8be4
type: 802-3-ethernet
autoconnect: True
autoconnect_slaves: <enum NM_SETTING_CONNECTION_AUTOCONNECT_SLAVES_YES of type NM.SettingConnectionAutoc
onnectSlaves>
2020-02-05 13:14:04,533 root         DEBUG    Connection settings for ConnectionSetting.create:
id: eth1
iface: eth1
uuid: 1e267ace-d1ae-47b4-a929-c0387750fca8
type: 802-3-ethernet
autoconnect: True
autoconnect_slaves: <enum NM_SETTING_CONNECTION_AUTOCONNECT_SLAVES_YES of type NM.SettingConnectionAutoc
onnectSlaves>
2020-02-05 13:14:04,536 root         DEBUG    Executing NM action: func=add_connection_async
2020-02-05 13:14:04,543 root         DEBUG    Connection adding succeeded: dev=eth2
2020-02-05 13:14:04,543 root         DEBUG    Executing NM action: func=add_connection_async
2020-02-05 13:14:04,549 root         DEBUG    Connection adding succeeded: dev=eth1
2020-02-05 13:14:04,549 root         DEBUG    Executing NM action: func=_safe_modify_async
2020-02-05 13:14:04,552 root         DEBUG    Device reapply failed on eth2: error=nm-device-error-quark
: Device is not activated (4)
Fallback to device activation
Traceback (most recent call last):
  File "/usr/lib/python3.7/site-packages/libnmstate/nm/connection.py", line 172, in _active_connection_c
allback
    nm_act_con = src_object.activate_connection_finish(result)
gi.repository.GLib.Error: nm-manager-error-quark: The device 'eth2' has no connections available for act
ivation. (2)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.7/site-packages/libnmstate/nm/connection.py", line 192, in _active_connection_c
allback
    elif self._is_ovs_plugin_missing(e):
  File "/usr/lib/python3.7/site-packages/libnmstate/nm/connection.py", line 246, in _is_ovs_plugin_missi
ng
    self._con_profile.is_type(
AttributeError: 'NoneType' object has no attribute 'is_type'
2020-02-05 13:15:04,548 root         WARNING  NM main-loop timed out.
Traceback (most recent call last):
  File "/usr/lib/python3.7/site-packages/libnmstate/netapplier.py", line 148, in _apply_ifaces_state
    con_profiles=ifaces_add_configs + ifaces_edit_configs,
  File "/usr/lib64/python3.7/contextlib.py", line 119, in __exit__
    next(self.gen)
  File "/usr/lib/python3.7/site-packages/libnmstate/netapplier.py", line 215, in _setup_providers
    mainloop.error
libnmstate.error.NmstateLibnmError: Unexpected failure of libnm when running the mainloop: run timeout

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.7/site-packages/libnmstate/nm/checkpoint.py", line 135, in rollback
    result = self._manager.interface.CheckpointRollback(self._dbuspath)
  File "/usr/lib64/python3.7/site-packages/dbus/proxies.py", line 145, in __call__
    **keywords)
  File "/usr/lib64/python3.7/site-packages/dbus/connection.py", line 651, in call_blocking
    message, timeout)
dbus.exceptions.DBusException: org.freedesktop.NetworkManager.InvalidArguments: checkpoint /org/freedesk
top/NetworkManager/Checkpoint/175 does not exist

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/bin/nmstatectl", line 11, in <module>
    load_entry_point('nmstate==0.2.1', 'console_scripts', 'nmstatectl')()
  File "/usr/lib/python3.7/site-packages/nmstatectl/nmstatectl.py", line 59, in main
    return args.func(args)
  File "/usr/lib/python3.7/site-packages/nmstatectl/nmstatectl.py", line 217, in apply
    statedata, args.verify, args.commit, args.timeout
  File "/usr/lib/python3.7/site-packages/nmstatectl/nmstatectl.py", line 237, in apply_state
    checkpoint = libnmstate.apply(state, verify_change, commit, timeout)
  File "/usr/lib/python3.7/site-packages/libnmstate/netapplier.py", line 66, in apply
    state.State(desired_state), verify_change, commit, rollback_timeout
  File "/usr/lib/python3.7/site-packages/libnmstate/netapplier.py", line 153, in _apply_ifaces_state
    _verify_change(desired_state)
  File "/usr/lib/python3.7/site-packages/libnmstate/nm/checkpoint.py", line 103, in __exit__
    self.rollback()
  File "/usr/lib/python3.7/site-packages/libnmstate/nm/checkpoint.py", line 137, in rollback
    raise NMCheckPointError(str(e))
libnmstate.nm.checkpoint.NMCheckPointError: org.freedesktop.NetworkManager.InvalidArguments: checkpoint
/org/freedesktop/NetworkManager/Checkpoint/175 does not exist

After this happens, I'm unable to set the interface up again:
[root@node01 vagrant]# nmcli c
NAME         UUID                                  TYPE      DEVICE
System eth0  5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03  ethernet  eth0
cni0         f24162e6-06dc-48b2-a291-000167d3b96b  bridge    cni0
docker0      881fda6e-5b40-49fa-9c38-ca49c9db4f98  bridge    docker0
[root@node01 vagrant]# nmcli d
DEVICE        TYPE      STATE         CONNECTION
eth0          ethernet  connected     System eth0
cni0          bridge    connected     cni0
docker0       bridge    connected     docker0
flannel.1     vxlan     disconnected  --
eth1          ethernet  unavailable   --
eth2          ethernet  unavailable   --
veth7d7da5e1  ethernet  unmanaged     --
vetha14d0684  ethernet  unmanaged     --
vethffa4a2bb  ethernet  unmanaged     --
lo            loopback  unmanaged     --
[root@node01 vagrant]# nmcli c add type ethernet ifname eth1
Connection 'ethernet-eth1' (b6542930-fd5c-4f7c-ba0c-be8965ed2d26) successfully added.
[root@node01 vagrant]# nmcli c up ethernet-eth1
Error: Connection activation failed: No suitable device found for this connection (device cni0 not avail
able because profile is not compatible with device (mismatching interface name)).

I tested on RHEL 8.1 with NetworkManager-1.22.6-1.el8.x86_64 and nmstate-0.2.3-1.el8.noarch.
 And which NetworkManager and nmstate.

Thanks Gris. Indeed, I was not able to reproduce it with NetworkManager 1.22.
Closing the Issue.


10/06/15

Name: M. Carroll
GitHub: @mwc61832
Twitter:
Linkedin:
Website:

Completed Courses

@mwc61832
Add your profile on issue #31, please.
And close this.
Thanks! :smile: