Node should sync back to master with allocated Pods through file source

Every node on GCE by default has cAdvisor, fluentd-es running as pod. We are going to put etcd server into a pod soon, and other master components into pods later. Those pods are pre-provisioned, and not through apiserver, and scheduler, I called them "static" pods.
Today, kubelet does generate events related to those static pods, and push them to etcd. But there is no way to query those pods config from clients, and static pods in crashloop cannot be detected easily  because apiserver doesn't aware of them.
Also those pods do consume resources, and without awareness of static pods on a node, scheduler might overcommit a node easily.
We should have a mechanism defined for kubelet to sync back to master with those static Pods.
cc/ @bgrant0607 @thockin @brendandburns

+1
On Tue, Feb 3, 2015 at 4:22 PM, Dawn Chen<EMAIL_ADDRESS>wrote:

Every node on GCE by default has cAdvisor, fluentd-es running as pod. We
are going to put etcd server into a pod soon, and other master components
into pods later. Those pods are pre-provisioned, and not through apiserver,
and scheduler, I called them "static" pods.
Today, kubelet does generate events related to those static pods, and push
them to etcd. But there is no way to query those pods config from clients,
and static pods in crashloop cannot be detected easily because apiserver
doesn't aware of them.
Also those pods do consume resources, and without awareness of static pods
on a node, scheduler might overcommit a node easily.
We should have a mechanism defined for kubelet to sync back to master with
those static Pods.
cc/ @bgrant0607 https://github.com/bgrant0607 @thockin
https://github.com/thockin @brendandburns
https://github.com/brendandburns
--
Reply to this email directly or view it on GitHub
https://github.com/GoogleCloudPlatform/kubernetes/issues/4090.

Note that this goes beyond #490. What I want to do is fully represent pods submitted to kubelet so that they can then be managed via apiserver, such as via a daemon/per-node controller or replication controller (for self-hosting master components).

+1
On Tue, Feb 3, 2015 at 4:40 PM, Brian Grant<EMAIL_ADDRESS>wrote:

Note that this goes beyond #490
https://github.com/GoogleCloudPlatform/kubernetes/issues/490. What I
want to do is fully represent pods submitted to kubelet so that they can
then be managed via apiserver, such as via a daemon/per-node controller or
replication controller (for self-hosting master components).
—
Reply to this email directly or view it on GitHub
https://github.com/GoogleCloudPlatform/kubernetes/issues/4090#issuecomment-72767955
.

I have some questions and hope someone can shed some light.

What's the goal of this issue? Do we simply want the master to be aware of the existence of such pods (read-only pods as mentioned in #1523) or do we want the scheduler/controller to manage the static pods (should they be killable by user requests)?

Why are we migrating the master components (#490) into pods? Is it just because we want to monitor the resource usage or do we want the pods to be managed somehow. The latter might not make sense because the component itself could be critical to the managing process.

What components should be run as pods? Is it possible to not rely on the static pods from manifest files? For example, can we create a cadvisor pod through the apiserver? We may need to introduce a new concept of pinned pods in this case to make sure scheduler doesn't assign it to other nodes, but it may be doable. For the master components, things are trickier if you want all components to be run as pods...

Those are good questions.

From Brian's comment, it sounds like the long-term goal is to make these pods indistinguishable from pods created through API server. However, you might want to implement this feature in two steps, first as read-only pods (which would be sufficient for having the scheduler take them into account when scheduling), and then as the second step convert them to full regular pods.

I think the main reason to migrate the master components into pods is for resource control (so they can have resource limits and it is easier to monitor their resource usage).  We have also discussed that it would make master upgrade easier, since all the state would be in containers so it is easy to start the new version and get rid of the old version. I think that as long as one "working" version of each master component is up, it is possible to bring up new components without running into the problem you described (the component is critical to the managing process). For example, imagine upgrading the scheduler: you could start the new scheduler pod (even using the old scheduler to schedule it) and then once it is up and has taken over scheduling, kill the old scheduler pod.

I think the goal is to eventually run everything inside a pod. I don't think this means all of these pods will be scheduled by the master, though -- they can be started up through a manifest file, as you mentioned. BTW we have discussed something like the pinned pods you mentioned -- see #1518.

Also see #2491 wherein I started to make a per-node pod controller and
realized how awful it was to implement.  surrounding code has evolved a lot
since then
On Tue, Feb 17, 2015 at 4:21 PM, David Oppenheimer<EMAIL_ADDRESS>
wrote:

Those are good questions.

From Brian's comment, it sounds like the long-term goal is to make
these pods indistinguishable from pods created through API server. However,
you might want to implement this feature in two steps, first as read-only
pods (which would be sufficient for having the scheduler take them into
account when scheduling), and then as the second step convert them to full
regular pods.

I think the main reason to migrate the master components into pods is
for resource control (so they can have resource limits and it is easier to
monitor their resource usage). We have also discussed that it would make
master upgrade easier, since all the state would be in containers so it is
easy to start the new version and get rid of the old version. I think that
as long as one "working" version of each master component is up, it is
possible to bring up new components without running into the problem you
described (the component is critical to the managing process). For example,
imagine upgrading the scheduler: you could start the new scheduler pod
(even using the old scheduler to schedule it) and then once it is up and
has taken over scheduling, kill the old scheduler pod.

I think the goal is to eventually run everything inside a pod. I don't
think this means all of these pods will be scheduled by the master, though
-- they can be started up through a manifest file, as you mentioned. BTW we
have discussed something like the pinned pods you mentioned -- see #1518
https://github.com/GoogleCloudPlatform/kubernetes/issues/1518.

--
Reply to this email directly or view it on GitHub
https://github.com/GoogleCloudPlatform/kubernetes/issues/4090#issuecomment-74785478
.

@davidopp, thanks for pointing out #1518!

These file-based pods are inherently different from the regular pods. I doubt that it is possible to make them truly indistinguishable. For example, user cannot delete the pod, as kubelet will immediately create a replacement. Users also cannot change the pod configuration in ways other than changing the manifest file on the node. If the end goal is to transform the static pods into fully manageable pods, we need to approach this different. E.g., we could implement the pinned pods (or the alternatives proposed in #1518) to replace the manifest files.

I was thinking more of a failure scenario, where a component fails and restart of such a component/pod is expected to be automatically done by the master. Upgrade is definitely a different use case, and an easier one(?).

Since we #1518 is far from being fixed, this might be nothing other than a thought experiment. If we have the ability to create pinned pods, we can write them into etcd during bootstrapping. This way, etcd could continue to be the contact point of pod entries.

I think that if we get to read-only pods from files, we'll be doing well.
I am less convinced that we need fully-managed pods from files, especially
in the short term.
On Tue, Feb 17, 2015 at 5:08 PM, Yu-Ju Hong<EMAIL_ADDRESS>wrote:

@davidopp https://github.com/davidopp, thanks for pointing out #1518
https://github.com/GoogleCloudPlatform/kubernetes/issues/1518!

These file-based pods are inherently different from the regular pods.
I doubt that it is possible to make them truly indistinguishable. For
example, user cannot delete the pod, as kubelet will immediately create a
replacement. Users also cannot change the pod configuration in ways other
than changing the manifest file on the node. If the end goal is to
transform the static pods into fully manageable pods, we need to approach
this different. E.g., we could implement the pinned pods (or the
alternatives proposed in #1518
https://github.com/GoogleCloudPlatform/kubernetes/issues/1518) to
replace the manifest files.
2.
I was thinking more of a failure scenario, where a component fails and
restart of such a component/pod is expected to be automatically done by the
master. Upgrade is definitely a different use case, and an easier one(?).
3.
Since we #1518
https://github.com/GoogleCloudPlatform/kubernetes/issues/1518 is far
from being fixed, this might be nothing other than a thought experiment. If
we have the ability to create pinned pods, we can write them into etcd
during bootstrapping. This way, etcd could continue to be the contact point
of pod entries.
--
Reply to this email directly or view it on GitHub
https://github.com/GoogleCloudPlatform/kubernetes/issues/4090#issuecomment-74791208
.

Agreed with @thockin. For 1.0 release, we just need:

master knows read-only pods on node
scheduler takes those pods' resource usage, cpu and memory only so far into account
user can query read-only pods' status, events and logs.

Scheduler using pod usage for scheduling was bumped from 1.0, so #2 from @dchen1107 list is not a blocker for 1.0.

See also #19, #246 (esp. https://github.com/GoogleCloudPlatform/kubernetes/issues/246#issuecomment-64533959), #473, #1573, #1627, #2303, and #2884.
Running in our components in pods would solve many problems, which we'll otherwise need to implement other, less portable, more brittle solutions to, and doesn't require much that we don't need to do for other reasons. Full self-hosting is the eventual goal.
The main use case for converting pods from files to entities that are manageable through the apiserver is kubelet management. Other daemons could use the per-node controller.
For bootstrapping master components, it would be sufficient to submit the pods to the kubelet's API server and have those pods adopted by the cluster apiserver. That solution goes hand in hand with running multiple instances of master components for availability and/or scalability.

Here is an preliminary proposal after poking around the relevant modules.
Goal: Expose static pods and their associated events through kubectl
Non-goal: Make scheduler aware of the resource consumed by static pods so that it can make more intelligent scheduling decisions. This is scoped for future work.
Kubelet watches 4 sources for pods: http, apiserver, file, and etcd. It receives the regular pods via the apiserver source, while the static pods through the file source. The master/apiserver/etcd is not aware of the static pods running on the nodes.
To reuse the existing mechanism for retrieving pod information/statuses through API server, Kubelet should create a mirrored pod entry via the apiserver for each and every one of the static pods on the node. Scheduler should completely ignore such mirrored pods.
When Kubelet is asked to get the status of the pod, it needs to map the mirrored pod to the corresponding static pod. Note that this is required because Kubelet distinguishes pods from different sources using its own internal namespacing. A pod is identified by its full name, which is name.namespace.source. E.g. the mirrored pod may be named foo.namespace.api, but the actual static pod can be named foo.namespace.file. Since foo.namespace.api is a placeholder pod without actual statuses, it needs to be mapped to foo.namespace.file. A naive solution is to fall back to retrieving *.file pod if the *.api pod does not exist.
In short,

Kubelet monitors the static pods and translate a mirrored pod into the corresponding static pod when asked to return the pod status. It is also responsible for creating/deleting mirrored pod entries during SyncPods().
Apiserver/etcd on the master is only aware of the mirrored pods.
Scheduler does not know static pods and consciously ignores mirrored pods.

Other issues and options:

Scheduler needs to be able to distinguish between the mirrored (static) pods and the regular pods.

a. Add a new field in the PodSpec to indicate that the pod is read-only.
b. Alternatively, pass this information through labels/namespaces.
I am inclined to go with (a) because (b) could cause conflicts with user-created objects.

Scheduler is in charge of setting the Host field in the PodStatus for a given pod. Without setting the Host field, pod cache will always assume the status of the pod is pending (since there is no Kubelet to consult).

a. When creating the pod via apiserver, Kubelet should set the Host field in the PodStatus. This is currently not doable because users are not allowed to create/update PodStatus through pod creation/update. We need to relax this restriction.
b. Alternatively, once #4561 is fixed (i.e., Kubelet POSTs pod status directly), this would be a non-issue.

The namespace of a static pod is currently generated as file-hash-node_hostname. This seems unnecessarily complicated now that we can view the pods through kubectl get pods.

Change the namespace to node_hostname . All the static pods on one node will then share the same namespace. Users can filter the pods by the namespace easily.

p.s. There is no corresponding BoundPod entry for a mirrored pod.
Suggestions are welcome!

Plan sounds good overall.  I'm not sure I understand the shadowing - but I
guess I don't really know how the API server "asks kubelet" for info..
I agree 1a.
Regarding point 3: The problem with using hostname as namespace is that
it's entirely possibly for users to collide with that.  We do not have any
"reserved" namespace that we can use.  What we do now is a hack to make it
less likely to collide.  Maybe we need to do something like declare that
namespaces that start with "k8s-" are reserved for use by cluster
components.
But even more, we can't let all static pods on a machine share a namespace
because we don't do name-collision checking on static pods.  If two pods
both declare their name to be "frank" - what do we POST to apiserver?
Kablam!
On Mon, Feb 23, 2015 at 6:23 PM, Yu-Ju Hong<EMAIL_ADDRESS>wrote:

Here is an preliminary proposal after poking around the relevant modules.
Goal: Expose static pods and their associated events through kubectl
Non-goal: Make scheduler aware of the resource consumed by static pods
so that it can make more intelligent scheduling decisions. This is scoped
for future work.
Kubelet watches 4 sources for pods: http, apiserver, file, and etcd. It
receives the regular pods via the apiserver source, while the static
pods through the file source. The master/apiserver/etcd is not aware of the
static pods running on the nodes.
To reuse the existing mechanism for retrieving pod information/statuses
through API server, Kubelet should create a mirrored pod entry via the
apiserver for each and every one of the static pods on the node. Scheduler
should completely ignore such mirrored pods.
When Kubelet is asked to get the status of the pod, it needs to map the
mirrored pod to the corresponding static pod. Note that this is required
because Kubelet distinguishes pods from different sources using its own
internal namespacing. A pod is identified by its full name, which is
name.namespace.source. E.g. the mirrored pod may be named
foo.namespace.api, but the actual static pod can be named
foo.namespace.file. Since foo.namespace.api is a placeholder pod without
actual statuses, it needs to be mapped to foo.namespace.file. A naive
solution is to fall back to retrieving *.file pod if the *.api pod does
not exist.
In short,

Kubelet monitors the static pods and translate a mirrored pod into
the corresponding static pod when asked to return the pod status. It is
also responsible for creating/deleting mirrored pod entries during
SyncPods().
Apiserver/etcd on the master is only aware of the mirrored pods.
Scheduler does not know static pods and consciously ignores mirrored
pods.

Other issues and options:

Scheduler needs to be able to distinguish between the mirrored
(static) pods and the regular pods.

a. Add a new field in the PodSpec to indicate that the pod is
read-only.
b. Alternatively, pass this information through labels/namespaces.
I am inclined to go with (a) because (b) could cause conflicts
with user-created objects.

2. Scheduler is in charge of setting the *Host* field in the

PodStatus for a given pod. Without setting the Host field, pod cache will
always assume the status of the pod is pending (since there is no Kubelet
to consult).
- a. When creating the pod via apiserver, Kubelet should set the
Host field in the PodStatus. This is currently not doable because
users are not allowed to create/update PodStatus through pod
creation/update. We need to relax this restriction.
- b. Alternatively, once #4561
https://github.com/GoogleCloudPlatform/kubernetes/issues/4561 is
fixed (i.e., Kubelet POSTs pod status directly), this would be a non-issue.
3. The namespace of a static pod is currently generated as
file-hash-node_hostname. This seems unnecessarily complicated now that
we can view the pods through kubectl get pods.
- Change the namespace to node_hostname . All the static pods on
one node will then share the same namespace. Users can filter the pods by
the namespace easily.
p.s. There is no corresponding BoundPod entry for a mirrored pod.
Suggestions are welcome!
--
Reply to this email directly or view it on GitHub
https://github.com/GoogleCloudPlatform/kubernetes/issues/4090#issuecomment-75686772
.

We had an offline discussion and agreed on some things.

Instead of using a unique/reserved namespace for each node, we settled on using a single namespace for k8s system pods. We will tentatively use the "default" namespace for now (which may change later), and encourage users to create their own namespace to avoid name collision.
http and file sources should generate a unique pod name for each pod to avoid collision. For example, cadvisor-file-hash-hostname or cadvisor-http-hash-hostname.

What's still up in the air is how to prevent scheduler from scheduling the read-only pods. Here are some options that we discussed.

Wait until #4561 is fixed, so that Kubelet can post pod status directly.
Add a "to-be-deprecated" read-only field in PodSpec.
Use labels to identify the read-only pods.
Use annotations.

/cc all the people who joined the discussion today. @thockin, @derekwaynecarr, and @bgrant0607.

Sorry for falling behind on this issue. Thanks for your nice write-up of the issue earlier in the thread, Yu-Ju. Your proposal earlier sounds reasonable, as does your most recent entry here. With respect to how to prevent the scheduler from scheduling pods, annotations sounds like it might be the best solution until #4561 is completed. It's less hassle than adding a new field to PodSpec and then removing it, and it seems better than labels in the sense that there is less chance that users might start relying on it.
If we do it as an annotation we might not want/need to get rid of it even once we finish #4561, as it would provide useful debugging information.

I don't like both 3 and 4 at all. Annotation should be used only as pass-through metadata , and shouldn't used by scheduler at all. Label is even more arbitrary, bigger no.

@dchen1107 Can you explain what you mean "Annotation should be used only as pass-through metadata"? Do you mean, an annotation should only ever be consumed by the same component that produced it? I guess that is a reasonable guideline, but perhaps we could argue around it just in this case by saying long-term this information (pod source) will just be debugging information, so consumption by scheduler is only temporary?

I am based on the comment of Annotation in our api:
Annotations are unstructured key value data stored with a resource that may be set by
external tooling. They are not queryable and should be preserved when modifying
objects.

But you are right if it is just a temporary solution. Once we have #4561 done, we could retire this.

We don't need a new field to make the scheduler ignore the pods, and we definitely shouldn't use an annotation. Just pre-populate the Host field in the PodSpec.
Name: Let's pick one namespace for the whole cluster, and could append the hostname to a prefix provided in the file.

I also don't think we should worry about collisions between http and file. File can be checked first. http would then just lose. Besides, once we have per-node controller, we should consider getting rid of file input.

Also don't worry about BoundPods. We're in the process of nuking them.

Scheduler watches for pods with no host set:
https://github.com/GoogleCloudPlatform/kubernetes/blob/master/plugin/pkg/scheduler/factory/factory.go#L146

We had a offline discussion and there are a few related issues.

#4561 for posting pod status from kubelet.
#3453 for Kubelet cannot accept DNS subdomain compatible names/namespaces. This has to be fixed if we want to use hostname as part of the pod name. We should also revisit using "source" as part of the container name.
The general issue of nuking BoundPods.

Although we can work around some of these issues, we will have to patch them again in the near future. The consensus is to wait until the related issues are resolved and implement a cleaner solution.
p.s. the code that @bgrant0607 pointed out was misleading
cache.NewListWatchFromClient(factory.Client, "pods", api.NamespaceAll, labels.Set{"DesiredState.Host": ""}.AsSelector())
There is another level of mapping which translates DesiredState.Host to Pod.Status.Host
https://github.com/GoogleCloudPlatform/kubernetes/blob/master/pkg/registry/pod/rest.go#l122

This issue is a good candidate for summarizing, closing, and filing finer-grained work items.

I don't buy that we should get rid of file based pods.  If you only have http, then people have to run a local http server in order to have non-network-dependent pods created at startup.  That seems annoying.

why would the scheduler need another field to detect readonly pods?  If the kubelet fills in the Host field, then the scheduler would know it does not need to schedule the pod.

I was thinking we'd allow pods to be posted directly to kubelet via a local socket.
I agree that no additional field is necessary.

@erictune, if the kubelet fills in the Host filed in the pod status, it'd be sufficient. Currently, we don't allow pod creation through the apiserver to set the pod status. It was also discussed in the previous comments https://github.com/GoogleCloudPlatform/kubernetes/issues/4090#issuecomment-76448384

Please populate Spec.Host. See #5256.

@bgrant0607, that's what I have been doing, and my code works with the current implementation. Scheduler would go ahead and update the BoundPod by inserting the mirrored pod kubelet created. On the other hand, kubelet would de-duplicate the pods from different sources.

A brief summary:
#5401 creates a mirror pod via the apiserver for each static pod, where the mirror pod has the same name and namespace as the static pod.

It allows users to view the status of the static pods by querying the apiserver
Scheduler is aware of the resources consumed by the static pods.

However, because events are associated with the static pods (which has a different UID than the mirror pod), kubectl describe <mirror_pod> does not aggregate the relevant events. This is what we decided to tolerate for now, and we may eventually fix it.


dd.Series.isin() broken for dict views in distributed

#4727 inadvertently broke isin for dict views (.keys(), .values(), .items()) and potentially other iterables when running with the distributed scheduler; more details here. cc @jcrist

And quoting a few more things.

does it make since to include iterators like dict_keys and dict_values in dask.delayed's unpack_collections?

Reproducer
diff --git a/dask/dataframe/tests/test_dataframe.py b/dask/dataframe/tests/test_dataframe.py
index 0e18f510..d82701ef 100644
--- a/dask/dataframe/tests/test_dataframe.py
+++ b/dask/dataframe/tests/test_dataframe.py
@@ -932,6 +932,21 @@ def test_isin():
             d.isin(obj)

+def test_isin_distributed():
+    import distributed
+    client = distributed.Client()
+
+    b_dict = {1: 'foo', 2: 'bar'}
+
+    # these work
+    d1 = d.isin(set(b_dict)).compute()
+    d2 = d[d['b'].isin(set(b_dict))].compute()
+
+    # these hang on dask>=1.2.1
+    d3 = d.isin(b_dict.keys()).compute()
+    d4 = d[d['b'].isin(b_dict.keys())].compute()
+
+
 def test_len():
     assert len(d) == len(full)
     assert len(d.a) == len(full.a)

Since there is no activity here, I suggest putting the above failing test into a PR and discussing there how it should be fixed. @gsakkis , would you like to do that?

You mean a PR with just the (failing) test initially? Yeah I could do that. Though since it's hanging instead of   raising an error we'd need a way to timebox it, is there such a utility in the tests?

There certainly are over in distributed (where you can expect async operations), not sure in Dask. It's OK if it hangs, though, or you could even add [skip ci] for no testing of the initial commit; however, it may be that this actually belongs in distributed rather than here.

Indeed it's not clear where it belongs; on the one hand it manifests with distributed only, on the other hand it was introduced with a change in dask. For now I opened #5009 here.
While looking for how to timebox it, I modified the original test to call client.compute instead of DataFrame.compute; the former returns Futures which can then be waited with a timeout. What's interesting is that with this change the test fails with a TypeError ('Could not serialize object of type dict_keys') instead of timeout error. Probably useful to know for debugging it.

That does indeed sound like progress

This issue has been fixed in cloudpickle 1.6.0, which can now serialize dict views objects such as dict_keys.  Also see this issue in dask/distributed.


PLAT-69282: Implement new UI theme

This adds the first designed theme, Copper.  It will serve as the basis for Copper Light and potentially other themes as time allows.

Used as the basis for our current copper implementation.


Just like @simonw in https://github.com/frameable/aviary.sh/issues/2,
I expected that visiting https://aviary.sh/install would show me the
script I was about to run.
I saw that this was discussed and allegedly fixed in
frameable/aviary.sh#3, but it appears that that pr was merged into
origin:master/install rather than origin:gh-pages/install.
Or maybe frameable/aviary.sh#3 doesn't fix the content-type header (I
don't see how it could, but I don't know much about gh-pages) and
instead just introduces a little bugfix into the install script.
Either way, c6b2e63 was lost in 60235fa. At that time,
origin/master:install contained changes from c6b2e63 which were not
present in origin/gh-pages:install.
This commit just re-introduces the intent of those changes.

Due to indentation changes, the changes in this commit are best viewed with whitespace ignored, eg  https://github.com/frameable/aviary.sh/pull/21/files?w=1


Feature request: Server sync support for new configs

First off: this is one of my favorite mods, hands down.  A+
Thanks for adding the new config options.  But I'm gonna request that you add serversync support, so that when a setting is changed, the change is enforced across all players.  It's probably not game-breaking, having some players running around with things configured one way, and others another, but I imagine server admins will appreciate it.
Cheers!

Thank you, I'm glad you enjoy it. 😃
And you are right, it needs serversync. It's next thing to do when I have spare time.


Old version link to latest broken when there is no matching page

Specifically witnessed on the following two pages when you select version 11.x:

https://goteleport.com/docs/application-access/cloud-apis/google-cloud/
https://goteleport.com/docs/application-access/cloud-apis/azure/

When there is no page the link provided is docs, this results in a path of /docs/docs.  Instead when there is no page we should fall back to just /.

Closing in favor of https://github.com/gravitational/docs-website/issues/42


Improve Frontend Integration docs.

Describe the bug
We need to improve the https://docs.corbado.com/frontend-integration/ui-components for better understanding of new changes.
Expected behavior

We need to remove the Signup and Login components as they have been deprecated and now we support direct navigation to login and signup states with #login-init and #signup-init urls.
We should change the custom theming section at https://docs.corbado.com/frontend-integration/ui-components/customization#2-3-creating-a-custom-theme as those CSS classes are now depreciated.

Additional points:

document the setting about navigation

Our docs are maintained in this repo: https://github.com/corbadotech/docs
There is a README that described the local setup.
Just put changes on a new branch and create a PR :)


Default relase note not used.

New Issue Checklist

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

Issue Description
I've set a default release note in my deliverfile, but I'm always getting the following error:
[en-US]: You must detail what's new in this version in English (U.S.).
I have tried but solutions in the issue posted in the error log bit they did not provide a solution.
Complete output when running fastlane, including the stack trace and command used
+--------------------------------------+--------------------------------------+
|                           deliver 2.35.1 Summary                            |
+--------------------------------------+--------------------------------------+
| force                                | true                                 |
| submit_for_review                    | true                                 |
| skip_screenshots                     | true                                 |
| automatic_release                    | true                                 |
| skip_metadata                        | false                                |
| username                             | _snip_       |
| app_identifier                       | nl._snip_                 |
| app_review_information.first_name    | _snip_                              |
| app_review_information.last_name     | _snip_                               |
| app_review_information.phone_number  | _snip_                       |
| app_review_information.email_addres  | _snip_          |
| s                                    |                                      |
| app_review_information.demo_user     | _snip_       |
| app_review_information.demo_passwor  | ********                             |
| d                                    |                                      |
| release_notes.default                | Bug fixes                      |
| release_notes.nl-NL                  | Problemen opgelost |
| ipa                                  | /Users/snip/Development/iOS/_snip_.ipa                   |
| screenshots_path                     | ./fastlane/screenshots               |
| metadata_path                        | ./fastlane/metadata                  |
| app_version                          | 3.8.1                                |
| edit_live                            | false                                |
| platform                             | ios                                  |
| skip_binary_upload                   | false                                |
| dev_portal_team_id                   | _snip_                           |
| overwrite_screenshots                | false                                |
+--------------------------------------+--------------------------------------+

[11:59:24]: You can tweet: "iTunes Connect #iosprocessingtime 19 minutes"
[11:59:56]: Selecting build 3.8.1 (5121)...
[11:59:58]: Successfully selected build
[11:59:58]: Submitting the app for review...
+-----------------------------+--------------------------------------+
|                            Lane Context                            |
+-----------------------------+--------------------------------------+
| DEFAULT_PLATFORM            | ios                                  |
| ENVIRONMENT                 | _snip_                                   |
| PLATFORM_NAME               | ios                                  |
| LANE_NAME                   | ios deploy                           |
| GIT_REPO_WAS_CLEAN_ON_START | true                                 |
| IPA_OUTPUT_PATH             | /Users/_snip_  /Development/iOS  |
|                             | _snip_  .ipa                   |
| DSYM_OUTPUT_PATH            | /Users/_snip_ /Development/iOS  |
|                             |_snip_ .app.dSYM.zip          |
| XCODEBUILD_ARCHIVE          | /Users/_snip_ /Library/Developer/Xc  |
|                             | ode/Archives/2017-05-31/_snip_     |
|                             | 2017-05-31 11.28.32.xcarchive        |
+-----------------------------+--------------------------------------+
[12:00:03]: [en-US]: You must detail what's new in this version in English (U.S.).

+------+------------------------+-------------+
|              fastlane summary               |
+------+------------------------+-------------+
| Step | Action                 | Time (in s) |
+------+------------------------+-------------+
| 1    | default_platform       | 0           |
| 2    | clear_derived_data     | 0           |
| 3    | Switch to ios          | 0           |
|      | deploy_app_store lane  |             |
| 4    | ensure_git_status_cle  | 0           |
|      | an                     |             |
| 5    | ensure_git_branch      | 0           |
| 6    | cocoapods              | 26          |
| 7    | gym                    | 185         |
| 8    | crashlytics            | 23          |
| 💥   | deliver                | 1688        |
+------+------------------------+-------------+

[12:00:03]: fastlane finished with errors

Looking for related GitHub issues on fastlane/fastlane...

➡  Deliver: [en-US]: You must detail what's new in this version in English (U.S.).
    https://github.com/fastlane/fastlane/issues/7016 [closed] 4 💬
    14 Mar 2017

➡  Fastlane is not utilizing my Deliverfile while uploading w/ deliver
    https://github.com/fastlane/fastlane/issues/6345 [closed] 5 💬
    08 Jan 2017

🔗  You can ⌘ + double-click on links to open them directly in your browser.

[!] The request could not be completed because:
	[en-US]: You must detail what's new in this version in English (U.S.).

Environment
✅ fastlane environment ✅
Stack

Key
Value

OS
10.12.5

Ruby
2.2.4

Bundler?
false

Git
git version 2.10.1 (Apple Git-78)

Installation Source
~/.fastlane/bin/bundle/bin/fastlane

Host
Mac OS X 10.12.5 (16F73)

Ruby Lib Dir
~/.fastlane/bin/bundle/lib

OpenSSL Version
OpenSSL 1.0.2g  1 Mar 2016

Is contained
false

Is homebrew
true

Is installed via Fabric.app
false

Xcode Path
/Applications/Xcode_8.app/Contents/Developer/

Xcode Version
8.2.1

System Locale

Variable
Value

LANG
en_US.UTF-8
✅

LC_ALL
en_US.UTF-8
✅

LANGUAGE
en_US.UTF-8
✅

fastlane files:
`./fastlane/Fastfile`
default_platform :ios

private_lane :deploy_app_store do |options|

  if options[:submit_for_review]
     # If the GIT status is not clean, abort. We won't want to include junk in the build
    ensure_git_status_clean
    ensure_git_branch(branch: 'release')
  end

  # Install cocoapods libaries
  cocoapods

  # Build  the app
  gym(
    clean: true,
    scheme: options[:scheme],
    include_bitcode: true,
    include_symbols: true
  )

  # upload the build to crashlytics so we can grab it later
  crashlytics(
    api_token: ENV['CRASHLYTICS_TOKEN'],
    build_secret: ENV['CRASHLYTICS_SECRET'],
  )

  if options[:submit_for_review]
    # Upload and submit it for review.
    deliver(
      force: true,
      submit_for_review: true,
      skip_screenshots: true,
      automatic_release: true,
      skip_metadata: false,
      username: ENV['DLV_ITUNESCONNECT_USERNAME'],
      app_identifier: ENV['DLV_BUNDLE_ID'],
    )
  else
    pilot(
      skip_waiting_for_build_processing: true
    )
  end

end

private_lane :build_beta do |options|
  clear_derived_data

  # Install cocoapods libaries
  cocoapods

  gym(
    clean: true,
    scheme: options[:scheme],
    include_bitcode: true,
    include_symbols: true,
    export_method: "ad-hoc"
  )

  # Upload to fabric and inform the user group
  crashlytics(
    api_token: ENV['CRASHLYTICS_TOKEN'],
    build_secret: ENV['CRASHLYTICS_SECRET'],
    groups: ENV['CRASHLYTICS_GROUP']
  )
    clean_build_artifacts
end

platform :ios do

  before_all do
    # Clear an build data
    clear_derived_data
  end

  after_all do
    clean_build_artifacts
  end

  # General lanes
  desc "Refresh all the DSYMs for this account"
  lane :refresh_dsym do |options|
    # Download dSYM files from iTC
    download_dsyms(
      username: ENV['DLV_ITUNESCONNECT_USERNAME'],
      app_identifier: ENV['DLV_BUNDLE_ID']
    )

    # Upload them to Crashlytics
    upload_symbols_to_crashlytics(
      api_token: ENV['CRASHLYTICS_TOKEN']
    )
  end

  desc "Increment build version"
  lane :bump_version do
    ensure_git_status_clean

    project = './_snip_ /_snip_ .xcodeproj'

    increment_build_number(
      xcodeproj: project,
    )

    build_number = get_build_number(
      xcodeproj: project
    )

    commit_message = "Version bumped to " + build_number
    commit_version_bump(
      message: commit_message
    )

    add_git_tag(
      tag: build_number
    )
    push_git_tags
    push_to_git_remote

  end

  desc "Build and submit to Apple, upload to crashyltics."
  lane :deploy do
    deploy_app_store(
      submit_for_review: true,
      schema: ENV['GYM_SCHEME']
    )
  end

  desc "Build and deploy to TestFlight, upload to crashyltics."
  lane :deploy_release_candidate do
    deploy_app_store(
      submit_for_review: false
    )
  end

  desc "Runs all the unit tests"
  lane :unit_test do
    scan(scheme: "Tests")
  end

  desc "Deploy staging to Fabric"
  lane :staging do
      build_beta(scheme: "_snip_  Staging")
  end

  desc "Deploy daily builds"
  lane :build_daily do
      build_beta(scheme: "_snip_  Test Live")
      build_beta(scheme: "_snip_  Staging")
      build_beta(scheme: "_snip_  Dogfood")
  end

  desc "Deploy dogfood to Fabric"
  lane :dogfood do
      build_beta(scheme: "_snip_")
  end

end

`./fastlane/Appfile`
app_identifier "nl._snip_" # The bundle identifier of your app
apple_id "_snip_" # Your Apple email address

team_id "_snip_"  # Developer Portal Team ID

# you can even provide different app identifiers, Apple IDs and team names per lane:
# More information: https://github.com/fastlane/fastlane/blob/master/fastlane/docs/Appfile.md

fastlane gems

Gem
Version
Update-Status

fastlane
2.35.1
✅ Up-To-Date

Loaded fastlane plugins:
No plugins Loaded
Loaded gems

Gem
Version

slack-notifier
1.5.1

CFPropertyList
2.3.5

claide
1.0.1

colored2
3.1.2

nanaimo
0.2.3

xcodeproj
1.4.4

rouge
1.11.1

xcpretty
0.2.6

terminal-notifier
1.7.1

unicode-display_width
1.1.3

terminal-table
1.7.3

plist
3.2.0

public_suffix
2.0.5

addressable
2.5.1

multipart-post
2.0.0

word_wrap
1.0.0

tty-screen
0.5.0

babosa
1.0.2

colored
1.2

highline
1.7.8

commander-fastlane
4.4.4

excon
0.55.0

faraday
0.12.1

unf_ext
<IP_ADDRESS>

unf
0.1.4

domain_name
0.5.20170404

http-cookie
1.0.3

faraday-cookie_jar
0.0.6

fastimage
2.1.0

gh_inspector
1.0.3

uber
0.0.15

representable
2.3.0

retriable
2.1.0

mime-types-data
3.2016.0521

mime-types
3.1

hurley
0.2

little-plugger
1.1.4

multi_json
1.12.1

logging
2.2.2

jwt
1.5.6

memoist
0.15.0

os
0.9.6

signet
0.7.3

googleauth
0.5.1

httpclient
2.8.3

google-api-client
0.9.28

json
1.8.1

mini_magick
4.5.1

multi_xml
0.6.0

rubyzip
1.2.1

security
0.1.3

xcpretty-travis-formatter
0.0.4

dotenv
2.2.0

bundler
1.14.6

faraday_middleware
<IP_ADDRESS>

generated on: 2017-05-31

[INSERT OUTPUT HERE]

With more languages configured it will give the error for every language not specific configured.
 [it]: You must detail what's new in this version in Italian.  [de-DE]: You must detail what's new in this version in German.  [en-US]: You must detail what's new in this version in English (U.S.).  [es-ES]: You must detail what's new in this version in Spanish (Spain). [fr-FR]: You must detail what's new in this version in French.

@rckoenes Can you paste what your Deliverfile looks like? Your Fastfile and Appfile got copied over okay in the fastlane env output but it doesn't look like your Deliverfile did. Just want to make sure I know exactly how you are doing things so I can look into and try to replicate on my end 😇

No problem
`
###################### More Options ######################
If you want to have even more control, check out the documentation
https://github.com/fastlane/fastlane/blob/master/deliver/Deliverfile.md
app_review_information(
first_name: "Remmelt",
last_name: "Koenes",
phone_number: "snip",
email_address: "snip",
demo_user: "snip",
demo_password: "snip",
notes: ""
)
release_notes({
'default' => "bug fixes",
'nl-NL' => "Problemen opgelost"
})`

@rckoenes Thank you! Have you tried setting each language individually and not using default? That's not the "proper" solution but curious if that works/worked for you 🤔  Just trying to track down if its an API issue or if its an issue with how default has been implemented.
Once I know that I should be able to more easily track down this bug 👌

I've not tried that, since this script is run for multiple targets via .env files. And all languages are set for each target.

@rckoenes Not a problem! Just curious if that solution would have worked for you. I will add this to my list of things to look into this week 💪

@rckoenes I am working on a legit solution but I found a quick solution for you if you need to solve this like right now... 😇
Legit solution (that I'm working on)
I will add a new configuration in deliver/Deliverfile that allows a full list of languages to "enable" for an application so the quick solution below doesn't need to be used.
Quick solution
I found this line of code in Deliver - https://github.com/fastlane/fastlane/blob/master/deliver/lib/deliver/upload_metadata.rb#L139
This line says "Check folder list (an empty folder signifies a language is required)". So what you can do is create an empty folder structure in "metadata" so that Deliver knows all the languages you want to use. This gives "default" a full list of all the languages that it needs to set things for.
- fastlane
  - Fastfile
  - metadata
    - en-US
      - .gitkeep
    - de-DE
      - .gitkeep

Note: the .gitkeep is used so the folders will get committed to version control (they don't have any other purpose
Hope this quick solution helps you if you need to get this running while I work on the actually solution 😊 🚀

The problem with this solution is that if the whitelabel app does not have a language in iTunesConnect it will try and add it.
The solution would be to include a metadata directory for each whitelabel app to make sure that it matches client set languages in iTunesConnect.

@rckoenes I totally get it why the empty directory thing would work (but I wanted to give you a temporary solution while I'm working on the actually fix 😇 ). The actually fix will be something like the below in your deliver action or Deliverfile (which I believe should work for you).
Fastfile
deliver(
  app_identifier: "com.something,
  skip_metadata: false,
  languages: ['en-US', 'de-DE','nl-NL']
)

Deliverffile
app_review_information(
  first_name: "Remmelt",
  last_name: "Koenes",
  phone_number: "_snip_",
  email_address: "_snip_",
  demo_user: "_snip_",
  demo_password: "_snip_",
  notes: ""
)
languages(['en-US', 'de-DE','nl-NL'])
release_notes({
  'default' => "bug fixes",
  'nl-NL' => "Problemen opgelost"
})


Enable and Fix lint issues

What
This pr attempts to enable golangcilint in this repo and fix all the existing lint issues
How to review
Please check if the changes make sense and all the expected linters are enabled.
Who can review
Anyone except me

This repo has been archived. Closing PR.


Out of Date

The dates on these items are way out of date with the newest item from January 2018.  The Issue Links might be more appropriate but even if so, the other information here that is no longer in effect needs to be removed.

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

ID: 940aa865-bc19-0acf-0b06-4abd2c9e8111
Version Independent ID: ca40c15f-9548-b74b-3ba1-0186cfa8025b
Content: SharePoint Framework known issues and frequently asked questions
Content Source: docs/spfx/known-issues-and-common-questions.md
Product: sharepoint
GitHub Login: @spdevdocs
Microsoft Alias: spdevdocs

I don't see what's wrong with this page... it lists a few things people have asked about with answers. that doesn't make them obsolete and should be removed.


Compression does not work

compressFile: true does not compress file and gunzip says that file is not in gzip format.
mysqldump({
    connection: {
        host: 'localhost',
        user: dbConfig.user,
        password: dbConfig.password,
        database: dbConfig.database
    },
    dumpToFile: `../MySQLBackup/${fName}.sql.gz`,
    compressFile: true,
}, err => {
    if(err)
        console.log(err);
    process.exit(0);
});

Mysqldump version is 2.3.0

That's pretty obviously because file compression was added in 3.1.0.
Please read the release notes, and upgrade your version if you to use it.
https://github.com/bradzacher/mysqldump/releases


Fix gaps in circle borders during WebGL render

Fixes #4701
Issue caused by precision errors while calculating the line border's last point coordinates. Instead of calculating the final point, just set to the same coordinates as the first point (since circles generally end where they start).
Note: I wrote a test but when I run npm test it shows up as pending. How do I run my test? I will fix any errors in it once I get it to run. Thanks!

It might be because you're enforcing using a WebGLRenderer? I know other unit tests locations that uses the WebGLRenderer has a little guard there so that they are skipped in scenarios where WebGL isn't available.
Take a look at WebGLRenderer.js unit tests, and it's const withGL = require('../withGL'); and how that is used


Add async while for repeating clock

async while ($num == 1) {
  ...
} 1s;
async while ($num == 1) {
  ...
}
async while (true) {
  ...
}

Added in https://github.com/WingedSeal/jmc/commit/605ce142b0a5985fe2d677cd0ef8e41fee255206
But timing is now required and cannot be implicitly left out


[LDAP] Select more generic objectclass and attributes to configure realms in ldap

Avoid using attributes 'inseePropriete" for instance

We could use info attribute defined in [RFC4524] with a fixed format (key=value).
This attribute could be on an organizationalEntry
This would look like that :
dn: ou=Liens,o=insee,c=fr
objectClass: extensibleObject
objectClass: organizationalUnit
objectClass: top
ou: Liens
description:: TsOpY2Vzc2FpcmUgcG91ciDDqXZpdGVyIGxlcyBtZXNzYWdlcyBkJ2VycmV1ci
 Bzb3VzIE91dGxvb2s=
info: organizationSource=ou=orgs,o=insee,c=fr
info: userSource=ou=users,o=insee,c=fr

An another way, would be to have the attribute and separator configurable.

Instead of forcing a schema, we could also add some configuration key to manage this.  We would need some configuration for the LdapRealmProvider and the LdapStoreProvider (Reader or Writer).
LdapRealmProvider
add some configuration in properties with :

objectclass to search for Realms and/or UserStorage (and to use when creating realm)
attribute mapping (between userSource and ldap config)

LdapStoreProvider
Either one configuration per realm (more flexible) or one configuration for the provider (subtext : in the same sugoi execution we manage all ldap in the same way)

map ldap attribute to an entity attribute (we need some special care around properties like username, mail...) (and the format ??)
decide wich objectclass to search for
which objectclass to use when creating entities


Dimension options

Adds a manager function to the slicer for querying dimension options for a given dimension.

Coverage decreased (-0.2%) to 97.474% when pulling 6a5cfd7b9a2eb5f5f249a0f5e506a6d92ed2f555 on dimension_options into c098a2c01a2c737ed1e6d4740d4c48d7a996a283 on master.


Add UIBarButtonItem extension

Made a UIBarButtonItem extension with an rx_tap method.

@kzaher If it could be of any help http://choosealicense.com (feel free to delete this message since it shouldn't be here but I didn't know how to send you the link :))

Fixed the rem and also added a new method on UITextField. This observer will fire when the user taps the return key on the keyboard, and provide the complete text the user tapped.

With respect to the license discussion, you do not need it in files, this file - https://github.com/kzaher/RxSwift/blob/master/LICENSE.md covers your entire code base :+1:

@manumax thnx for the link. Did check it out. I don't have much experience with open source projects, so would want make sure that everybody can use this code freely, that I can't be sued, and it would be nice if they would mention me somewhere, but if somebody uses this, and doesn't mention this project, or my name, I don't care much, just glad they like it.
It looks like MIT should cover these cases. The only thing I wasn't sure was can some contributor claim that his contribution is under different license, and by that causing that who ever uses this code should pay him, or sue me for copyright infringement.
I really want to prevent that possible nightmare. MIT license does allow sublicensing, so what it's not clear to me is can some court interpret that license in such a way that somebody's contribution is sublicensed and he holds all the rights for that code, and I don't have rights to distribute his contribution.
I am obviously not a native english speaker :), so it's even harder for me to interpret legal documents in another language, and I'm assuming that smart people from MIT thought of that case, but when I can't prove something myself, I feel very insecure :(
I had to deal with some devious clients, so I've learned my lesions :)
@dtartaglia is an awesome guy and has helped me much on this project, and nothing I've written here relates to him.
I just like to solve general problem, so that doesn't drain my time and focus in future.
Thnx @orta for your comment. If the license is good for CocoaPods project with 160 contributors, I'm sure it will be fine for my project.

The commit named "Change 0 arg funcs into var getters." is a breaking change. I only went through RxCocoa with these changes (and fixed the sample apps.) There are several places in RxSwift where changing the func to a getter would make the name seem silly, like run, and I didn't want to make changes to actual names without knowing more about the reference Rx project.

I also removed rx_endOnExit as requested.

It was easier for me to cherry pick some of the commits and push it to develop, so I'm going to close this one. Pushed changed to develop.


indent-binary-ops: False positive with parens (Even example of correct code fails)

Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guide.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.

Describe the bug
Steps to reproduction

Open https://eslint.style/rules/default/indent-binary-ops#examples

I have checked the page of v2.6.2 and v2.7.2, and the both pages reproduced.

See "Examples of correct code for this rule:" (The following code)

/*eslint @stylistic/indent-binary-ops: ["error", 2]*/

if (a
  && b
  && c
  && (d
    || e
    || f
  )
) {
  foo()
}

Actual Behavior
    7:1   error    Expected indentation of 2 spaces                     @stylistic/indent-binary-ops

Expected Behavior
No error.
Reproduction
https://eslint.style/rules/default/indent-binary-ops#examples
Contributes

[ ] I am willing to submit a PR to fix this issue
[ ] I am willing to submit a PR with failing tests

I have also noticed some additional cases that aren't handled that well by this rule. These might be related to this issue so I'm leaving them here.
Let me know if I should open a separate issue for those.
/*eslint @stylistic/indent-binary-ops: ["error", 2]*/

// --- Example 1--- //

// No error
const a = () => b
  || c
  ? d
  : e;

// Error
const a = (
  p,
) => b
  || c // Expected indentation of 0 spaces
  ? d
  : e;

// --- Example 2 --- //

// No error
const a= b
  + c;

// Error
const a= {
  p: b
    + c, // Expected indentation of 2 spaces
};

@antfu Nice, thank you!


Update docs for CSAI

Pull Request Test Coverage Report for Build<PHONE_NUMBER>4
Warning: This coverage report may be inaccurate.
This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.

For more information on this, see Tracking coverage changes with pull request builds.
To avoid this issue with future PRs, see these Recommended CI Configurations.
For a quick fix, rebase this PR at GitHub. Your next report should be accurate.

Details

0 of 0   changed or added relevant lines in 0 files are covered.
7 unchanged lines in 4 files lost coverage.
Overall coverage decreased (-0.7%) to 83.642%

Files with Coverage Reduction
New Missed Lines
%

pypots/classification/base.py
1
74.07%

pypots/cli/env.py
1
77.14%

pypots/nn/modules/fedformer/layers.py
2
45.58%

pypots/cli/doc.py
3
81.82%

Totals

Change from base Build<PHONE_NUMBER>0:
-0.7%

Covered Lines:
11510

Relevant Lines:
13761

💛  - Coveralls


the chrome extension doesn't work

Hi! So I wanted to use Magic Notes because I couldn't be bothered to do bookwork checks, but for some reason, the temporary version and the chrome extension both do not work for me. I followed the instructions clearly and it still didn't work. It's probably just me, but it would be nice if the issue was fixed.
Thanks!

Heya @lizrce !
The extension will no longer function as Sparx Maths has remodeled their site. The projects continuance relies on the creator of Magic Notes who is in exams. Hopefully this will clear up some of your confusions (and frustrations)

Tysm @hosm100 for the reply. You know you've made it somewhere if people are going out of their way to reply on your behalf 😅

Heya @lizrce !
The extension will no longer function as Sparx Maths has remodeled their site. The projects continuance relies on the creator of Magic Notes who is in exams. Hopefully this will clear up some of your confusions (and frustrations)

Oh my gosh! I'm really really sorry, I'm a bit dumb sometimes, but yea I'm really sorry about this😭. I won't cause anymore disturbances. Thank you so much!!

New, updated and Feature-rich SparxSolver Extension


Add Crossorigin support

Please do not update the README or Change Log, we will do this when we merge your PR.
This PR (delete as applicable)

Adds a new feature

Describe the changes below:
When using the loadURL method on video, it was not possible to specify a crossorigin request, so it was impossible to load videos from non-same domain locations. Note that this is only when streaming - if you use the loader, crossorigin support was builtin.
I considered using the same methodology as the loader, where it pulls from the sceneconfig on init and allows override, but that I think that would muddle the water in terms of "who has precedence" (loader or video?). Since this is only an issue on loadURL, IMHO made the most sense to add it as a 4th parameter.

👍


Verbiage when initializing bmt

When initializing bmt with biolink-model.yaml, I get the following printed onto the console:
Warning: class "drug exposure" slot "drug" does not reference an existing slot.  New slot was created.
Warning: class "treatment" slot "has exposure parts" does not reference an existing slot.  New slot was created.
Warning: class "pairwise interaction association" slot "interacting molecules category" does not reference an existing slot.  New slot was created.
Unrecognized prefix: SEMMEDDB
Unrecognized prefix: WD
Unrecognized prefix: dct
Unrecognized prefix: oban
Unrecognized prefix: HANCESTRO
Unrecognized prefix: RNAcentral
Unrecognized prefix: IntAct
Unrecognized prefix: Reactome
Unrecognized prefix: VMC
Unrecognized prefix: CIViC
Unrecognized prefix: ECTO

Is there a way to suppress these messages? Are these messages being sent to console via logging or via print statements?
@hsolbrig Thoughts?

The glib answer would be to fix the biolink-model itself -- get those prefixes defined and address the other problems.  If this is not workable, however, we could add an "ignore warnings" flag to the generator.

Yes, I would agree that we fix the model.
In the interim, a ignore_warnings parameter would be very useful.
OR
Since bmt is being used at many locations in KGX, the verbiage could be controlled. For example, if the errors are bring thrown at logging.warning level then we could suppress them at runtime by any tool thats using bmt as a dependency.


composing with rxlifecycle bindings causes compiler error

If I compose using rxlifecycle, the compiler seems to throw errors. If I leave out the composition, the compiler is fine.
error:
Error:(55, 45) error: no suitable method found for subscribe(Subscriber<TestModel>)
method Observable.subscribe(Action1<? super Object>) is not applicable
(argument mismatch; Subscriber<TestModel> cannot be converted to Action1<? super Object>)
method Observable.subscribe(Observer<? super Object>) is not applicable
(argument mismatch; Subscriber<TestModel> cannot be converted to Observer<? super Object>)
method Observable.subscribe(Subscriber<? super Object>) is not applicable
(argument mismatch; Subscriber<TestModel> cannot be converted to Subscriber<? super Object>)
method Observable.<T>subscribe(Subscriber<? super T>,Observable<T>) is not applicable
(cannot infer type-variable(s) T
(actual and formal argument lists differ in length))
where T is a type-variable:
T extends Object declared in method <T>subscribe(Subscriber<? super T>,Observable<T>)

relevant objects:
PublishSubject<TestModel> pubTest = PublishSubject.create();
Subscriber<TestModel> testNotify = new Subscriber<TestModel>() {...};
protected void onResume() {
        super.onResume();
        pubTest.compose(bindToLifecycle()).subscribe(testNotify);
    }

Are you compiling using Java 7 (or lower)? If so, you might need to include the type, like so:
pubTest.compose(this.<TestModel>bindToLifecycle()).subscribe(testNotify);

I am using java 7. It no longer complains now, thanks!


Or should it?
I think I'll leave it how it is for now, until more settings are added in the future.


Add PHP config file pattern

Add typical PHP config file patterns, such as config.php, config.inc.php, db_config.php,...
Improvement of @schwindelbub pull request #6 https://github.com/michenriksen/gitrob/pull/6

Yep, right, thank you.
Fixed with commit  ab707db

:+1: Thanks!


add ability to configure SRTO_LOSSMAXTTL

This feature is a bit selfish because I only need to be able to configure lossmaxttl, but happy to adjust the API to accommodate other socket options if you have any suggestions.

I think its fine to pick out the specific parameters that might be useful.
Squashed to d6ed7cc0d40e58e64c17f7441eb4b496628533d4


Cache middleware doesn't work

all requests go without caching

did you test without that? We need to restore the from a byte array
https://github.com/trustwallet/blockatlas/pull/813/files#r376481755


Using two for a repeat is broken

For example, scratch two:
> scratch to
[scratch, to, END]
Error: Unexpected token `to' (word number 2)

> down to
[down, to, END]
Error: Unexpected token `to' (word number 2)

Update: `scratch four" is also broken.

I am currently working on a smarter language model which should not suffer from this issue. As a temporary fix, you can add "to" and "for" as aliases of "two"/"four" in the grammar.

I just implement this in d810801, cheers.


Song not palying

This issue is about {Anime Name} (OP/ED/OST).
Magi S2 ED not palying..

@starkblaze01 can you attend this?


IRGen: Weakly link associated conformance descriptors when either the protocol or the associated requirement is weak

Previously, only the associated requirement was considered when deciding whether to weakly link an associated conformance descriptor. This lead to unexpected strong linkage for some symbols, interfering with back deployment when integrating with some frameworks.
Resolves rdar://96974850

@swift-ci please smoke test

macOS test failure is unrelated:
Failed Tests (1):
  lldb-api :: functionalities/asan/swift/TestAsanSwift.py

Linux test failures also seem unrelated, though they are a bit hard to parse.

@swift-ci please smoke test

@swift-ci please smoke test macOS

@swift-ci please smoke test macOS


Remove Mac specific keybindings that don't work

The thing that this attempted to provide has never worked. Removing it allows Dvorak keybindings to work correctly. Previously it caused keybindings to use the QWERTY POSITION of the key rather than the actual key.
eg. On Dvorak, the default for insert comments is "Cmd+z" which would then conflict with the undo shortcut.
The current 'fix' does nothing for 'english' based keyboards such as Dvorak, it in fact makes real weird stuff happen because of the 'reverse' mapping it tries to do.
This change will cause some keybindings to be unreachable on some keyboard layouts, but it is my view that it is better to map to the character than the key, and then allow the user (of those keyboard) to map to the key they want to use. (Ie, the problem with the '/' key on the swiss-german keyboard)

Hi @HookyQR, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

In order for us to evaluate and accept your PR, we ask that you sign a contribution license agreement. It's all electronic and will take just minutes. I promise there's no faxing. https://cla.microsoft.com.

TTYL, MSBOT;

@HookyQR, Thanks for signing the contribution license agreement so quickly! Actual humans will now validate the agreement and then evaluate the PR.
Thanks, MSBOT;

What's the status of this PR? I'm unable to use VSCode with a Dvorak layout.

I'm having issues while using the Dvorak layout as well. I'd love it if this would fix those issues.

Seems the Microsoft team is uninterested. You can follow the steps at https://github.com/Microsoft/vscode/issues/15624#issuecomment-261412779 to fix it yourself. You'll have to do that for each release until they get interested in supporting us outliers. Interestingly, the problem is caused because they wanted to support a different minority group. 🙄

This will close #1492, #4712, #4619, #15624, #13417 and #6020. It will also likely close #17106, #17023, #16157, #15887 and #15711. Add a keymap extension for the keyboards you're trying to fix with the hacky code this removes and everyone will be happy.

I am interested in fixing this and I've already started working on it, but breaking other keyboard layouts is not an option.
Work has already started in https://github.com/Microsoft/node-native-keymap
I plan to investigate using e.code instead of e.keyCode since we now consume a version of Chromium that has implemented it.

Atom doesn't seem to have this problem.
On Sat, Dec 17, 2016 at 12:48 AM Alexandru Dima<EMAIL_ADDRESS>wrote:

I am interested in fixing this and I've already started working on it, but
breaking other keyboard layouts is not an option.
Work has already started in
https://github.com/Microsoft/node-native-keymap
I plan to investigate using e.code instead of e.keyCode since we now
consume a version of Chromium that has implemented it.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/Microsoft/vscode/pull/15687#issuecomment-267748980,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAZjdiqzXjaavB57mm3Lz8DuXYr-Q3yAks5rI5PdgaJpZM4K2DDf
.

Turns out things are more complicated. I have documented my findings in #17521 and that issue will track the work going forward.

I am happy to say #17521 is now closed. I will validate tomorrow on a Mac the Dvorak issues to double check that they are indeed resolved.


[docs] update links to SynapseML (former MMLSpark)

MMLSpark was renamed into SynapseML and moved from Azure to Microsoft GitHub account.

Seems that the mmlspark GitHub links are still automatically redirecting for now, ...

Yeah, GitHub creates redirects for renamed and even transferred repositories:

When you rename a repository, all existing information, with the exception of project site URLs, is automatically redirected to the new name
https://docs.github.com/en/github/administering-a-repository/managing-repository-settings/renaming-a-repository

All links to the previous repository location are automatically redirected to the new location. When you use git clone, git fetch, or git push on a transferred repository, these commands will redirect to the new repository location or URL. However, to avoid confusion, we strongly recommend updating any existing local clones to point to the new repository URL.
https://docs.github.com/en/github/administering-a-repository/managing-repository-settings/transferring-a-repository#whats-transferred-with-a-repository


about  Contextual Bilateral Loss

Is  the realizetion of Contextual Bilateral Loss  based on "zoom learn zoom"?
https://github.com/ceciliavision/zoom-learn-zoom

Yes. It is mentioned in README.
However, the status of CoBi is now WIP.

Thank you for reply.
So can it be used directly now?i want to use it in my  own code.

when i use the Contextual  Loss,I find it easy for oom.But  my batchsize is only one. the input of my x4 sr model is 128*128,can you give me some advise?

This implementation is written on the basic mini-batching concept. In other words, all images or features in a mini-batch are allocated on GPU at the same time, which causes OOM. The original implementation computes distances for every single image or feature and then aggregates them. To avoid OOM, I should follow the original strategy by giving up the beauty of codes.

Oh, I missed that your batch size is 1. It seems to be the other problem.
Could you share the codes relevant to the loss computation?

when i training ESRGAN using Contextual Bilateral Loss, without l1/perceptual/GAN loss
all the inference results seem to have artifacts like water ripple in smooth areas
Do you have any idea how might this artifact come about?

@conson0214 Please create a new issue for it


[WIP] Fixing Protractor tests in TravisCI

try 1: onPrepare requiring babel-register

Current coverage is 27.40% (diff: 100%)

No coverage report found for master at 87555b0.

Powered by Codecov. Last update 87555b0...8f169cf


macskk: init at 1.4.1

This PR adds a new package of macSKK.
macSKK is a Japanese input method for macOS.
https://github.com/mtgto/macSKK
Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[x] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

@pluiedev Thank you for your review! I think I fixed all parts that has you suggested.

What about using undmg? You can grep for other packages that use it in the repo

Sorry, I forgot to reply. undmg does not supports the .dmg file released by upstream, because the dmg has APFS in it and undmg seems only supports HFS.
nix run nixpkgs#undmg -- macSKK-1.4.1.dmg
error: only HFS file systems are supported.

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-ready-for-review/3032/4899

@SuperSandro2000 Thank you for your review! I fixed your suggestion. Are there anything else I can fix?


[1.14] GEODE-9817: Enable customized source set paths for ClassAnalysisRule

Adds support for customizing source set paths of ClassAnalysisRule.
PROBLEM
Modules external to Geode must be structured the same as Geode
source code in order to use ClassAnalysisRule and the
Analyze*Serializables tests. This is necessary to better facilitate
pluggability of modules that need to provide sanctioned serializable
lists.
SOLUTION
Add source set path customization to ClassAnalysisRule, introduce
a new layer of Analyze*Serializables test base classes that can be
directly extended in order to customize source set paths in
ClassAnalysisRule. Also includes improvements to some iterating
of classes during analysis.
[prereq for backport of GEODE-9980 and GEODE-9758]
(cherry picked from commit 5d1e91932dff296632916a6ceccfb36039357acd)

There are so many failures with java.net.BindException: Address already in use (Bind failed). I hope that I'm not missing a real failure some where. I'm going to merge!


Local vs. global text direction?

Hi again,
I do not know how easy it is to implement, but would be great if text direction could be toggled per block.
For instance, when you have an English paragraph in the middle of a Persian text, the whole note but the English paragraph would be RTL.
Thank you.

I'd love to see this happening, but that's not something I can do as part of this plugin because CodeMirror (the underlying text component of Obsidian) only supports a direction per document.
However, to my best understanding, the next major version -- CodeMirror 6 -- implements BIDI much more thoroughly and supports a direction per paragraph! Hopefully it's no more than a few months away.

I'd love to see this happening, but that's not something I can do as part of this plugin because CodeMirror (the underlying text component of Obsidian) only supports a direction per document.
However, to my best understanding, the next major version -- CodeMirror 6 -- implements BIDI much more thoroughly and supports a direction per paragraph! Hopefully it's no more than a few months away.


Request Filtering Between Gateways and Namespaced Routes

What would you like to be added:
A method for Gateway administrators to use routing rules to filter which traffic can be forwarded to downstream routes.
As a Gateway administrator managing an HTTP load balancer I would like to delegate particular path prefixes to namespaced HTTPRoutes to prevent namespace administrators from writing rules that conflict with the rules from other namespaces.
For example, I should be able to delegate /cats to the cats namespace and /dogs to the dogs namespace. Then the administrators for each of those namespaces can safely write any rule they want, but with the expectation that the path
rules are prefixed with /cats or /dogs. /cats/food and /dogs/food would never collide  because the Gateway administrator had already pre-filtered the traffic.
Why is this needed:
Currently the API allows request filtering for HTTPRoutes and TCPRoutes. Gateway administrators can delegate traffic routing down to those routes which should be owned by individual namespace administrators (Think Hub and Spoke).
This immediately raises the issue of how can a central administrator prevent multiple namespaces from writing conflicting routing rules. Current documentation states that if namespace A and namespace B create the same routes the conflict will be resolved via timestamp (HTTPRouteRule).

I didn't put too much thought into this, but would it makes sense to have something like:
Gateway my-gw in ns gw: select routes in same namespace only
HTTPRoute my-route in ns gw: match /cats, forwardTo HTTPRoute cats in cats namespace, match /dogs, forwardTo HTTPRoute dogs in dogs namespace
HTTPRoute dogs in ns dogs: ...
HTTPRoute cats in ns cats: ...
This introduces a new concept of forwardTo another route. I am pretty sure this was in some of the early designs?

Yep this concept was in the early designs and something I wanted to revisit for v1alpha2. It really covers 2 related ideas - Routes forwarding to other namespaces, and Routes forwarding to other Routes. I think both are worth exploration as part of v1alpha2. There's also a bit more context for this in the related Slack thread.

@howardjohn I think you've provided a great example of how this could work but it also shows how it could significantly alter the namespace boundary. If Routes can forward to other Routes, it would be difficult/impossible for a Gateway owner to ensure that all Routes it forwarded to were actually in the same zone. It also makes any tree visualization of how resources are connected in the API more complicated.
So although I think this idea has a lot of potential, I also want to recognize that it will be difficult to get it right.

One potential issue opened up by if the spec simply allowed ForwardTo to name another Route resource would be routing cycles. These might be somewhat hard to detect manually. It would certainly be possible for implementations to perform cycle checking on the graph at validation time and reject them but that does impose complication on the implementations. Beyond cycles, they also need to verify that every hop is to a route of a compatible type/protocol (maybe only same type makes sense?). Arbitrary length forwarding paths similarly would make visualising and debugging harder.
None of those is a deal breaker (we did something similar in Consul) but I agree with @robscott that it could be "difficult to get it right".
One idea to throw into the ring (without a huge amount of detailed thought) would be to have a more limited redirection capability. At it's simplest that could just be a validation requirement that *Route.ForwardTo may only select another *Route provided that destination route is terminal (i.e. doesn't forward to another route). That does still put a complexity burden on implementations though. Perhaps a shared library could mitigate.
An alternative might be to have a distinct family of route types that are allowed to Forward to other routes but not destinations, perhaps called *InternalRoute or something. Gateways would be allowed to select both internal and regular route resource types. That has downsides of some duplication in the types and extra API surface area for users to understand, but could make implementation and reasoning about the system simpler - internal routes can only select non-internal routes. It would be easy enough to prevent application teams ever creating internal routes too within their namespaces with RBAC if that was deemed dangerous so they could exist only too allow a central team to handle "prefix" routing while delegating further routing to application teams. It also limits the DAG to be at most two levels of routing with no cycles which makes validating/debugging and other tooling easier to reason about.
Our experience with Consul's Routing is that cycle checking during validation and arbitrarily deep routing DAGs are possible but handling all the edge cases that could arise is relatively expensive and complex despite the fact that probably no one actually needs more than 2 or so levels of redirection. Building UIs to visualise that requires spending time working out how to deal with those edge cases of arbitrary nesting too.

For example, I should be able to delegate /cats to the cats namespace and /dogs to the dogs namespace.

This issue is talking about delegation based on path, but in practice delegation will need to be based on arbitrary filtering criteria. This is consistent with John's comment, but I wanted to make it explicit.
Configuration cycle detection is necessary and feasible (e.g. Contour does it today). I don't think the per-hop protocol consistency is an issues, since we are talking about logical "configuration hops", not actual networking hops.
The biggest issue in my mind is how this fits with our security and configuration model. We already have a lot of complexity based on conflicting deployment models, and I'm concerned about reproducing another layer of the same complexity.

This issue is talking about delegation based on path, but in practice delegation will need to be based on arbitrary filtering criteria. This is consistent with John's comment, but I wanted to make it explicit.

@jpeach has said what I was trying to say earlier about inclusion versus delegation, much more clearly. In Contour's case, once we allowed more filtering criteria, the verb "delegation" didn't make sense.
That's super important in this case, because, as James says below, allowing a Route to reference another Route isn't about having the routes create actual routing hops, it's effectively about making a big, flattened object that has per-level RBAC. That's what Routes importing/including/referencing another Route is all about, breaking up the responsibility for the overall Gateway config up between (application developer) teams.

Leaving aside the exact mechanics of how the Route to Route referencing would work, there's some other data we can draw from Contour's experience here, but it will require a little explanation. I'll try and do a tl;dr as well.
In HTTPProxy, there are effectively two types of objects. The "root" HTTPProxy, which specifies an FQDN, and a "child" HTTPProxy, which doesn't. Referencing (including) a "root" HTTPProxy inside another root is an error, the include will be marked as invalid.
A root HTTPProxy that is including something looks like this:
apiVersion: projectcontour.io/v1
kind: HTTPProxy
metadata:
  name: include-root
  namespace: default
spec:
  virtualhost:
    fqdn: root.bar.com
  includes:
  # Includes the /service2 path from service2 in the same namespace
  - name: service2
    namespace: default
    conditions:
    - prefix: /service2

However, you can see two useful things from this example: Firstly, there's a namespace reference in the "includes" section, which allows cross-namespace inclusion, and secondly, there's a set (poorly-named before upstream Conditions were a thing) of conditions that are imposed on any routes included. Effectively the included Route is "wrapped" with those conditions, and adding things that contradict them is an error.
The condtions here can also include header presence or values, so you can include with both a prefix and a header, or just one or the other. Theoretically though, we could have added support for any of the routing filters we support.
Preventing cycles is the reason why we only allow substring prefix matching on path, without any wildcard or regex matching.
If we replace "root HTTPProxy" in the above with "Gateway", and "child HTTPProxy" with "HTTPRoute", then it's broadly similar, I think.
To summarise: Having something like HTTPProxy's Inclusion between Gateway and Routes might be a way to get some of the way to supporting @Freyert's use case here. It would give us a two-level object set, at the cost of needing to add something into the Listener that would wrap a Route in some set of things (like a AddRoutePredicate field or something). This may be more than we want to put into Gateway, which would suggest that we may need a two-tier Route system (basically, a RouteThatCanReference and a TerminatingRoute or something).

This is really helpful, some great discussion here. Some quick follow up questions for @youngnick or @jpeach on the Contour implementation:

You mention that you only support prefix matching, what does that look like? In your example, the HTTPProxy includes service2 with a prefix condition on /service2, does that mean that all matches in the included proxy would have to start with /service2 (ie /service2/foo) or would /foo be automatically translated to /service2/foo?

Is there any way for HTTPProxy resources to prevent themselves from being included from other namespaces? If not, has that ever been an issue for you?

How broadly have you seen this inclusion pattern used? Has the direct reference model ever resulted in any scalability issues?

Just as a general note, I think this is a very important concept to keep in mind as we're considering changing the Gateway -> Route binding model (https://github.com/kubernetes-sigs/gateway-api/issues/594). My initial proposal there really focuses on Route -> Gateway selection as the primary mechanism. That would not map as naturally to the top-down Route inclusion method discussed here.

At it's simplest that could just be a validation requirement that *Route.ForwardTo may only select another *Route provided that destination route is terminal... Our experience with Consul's Routing is that cycle checking during validation and arbitrarily deep routing DAGs are possible but handling all the edge cases that could arise is relatively expensive and complex despite the fact that probably no one actually needs more than 2 or so levels of redirection.

+100. Agree that we should enforce some kind of limit here, that probably is simply just 1 extra layer of inclusion/delegation, ie the maximum complexity allowed would be Gateway -> Route -> Route.

Answering your questions, @robscott:

All routes on the included HTTPProxy have /service2 prepended to them, so /foo inside that proxy becomes /service2/foo.
No, there's no way to prevent HTTPProxy objects from being included, noone has ever asked.
People are definitely using the inclusion pattern, there are a couple of big prod users that use it. We haven't found any scaling issues with the direct reference model, and some of the prod users are using thousands of proxies (although I don't have good information on how many are included vs including).

I agree that a limit on inclusion makes sense, it certainly makes building the object parser much easier. :)

In preparation for the meeting on Monday, I've started a discussion document that tries to outline the discussions into a single point. I also added some more examples of how Contour implements the same today to allow for discussion on that as well as the places where more work/thought is needed.
https://docs.google.com/document/d/1-0mgRRAY784OgGQ1_LCOshpLLbeAtIr4eXd0YVYK4RY/edit?usp=sharing

We've got a lot of the pieces in place for Route delegation/inclusion thanks to GEP #709 and #724, but I think we're going to add this after the initial v1alpha2 release. I'm going to move this out of the v1alpha2 milestone to account for that.

@Jeff-Apple is working on a GEP for this.
/remove-lifecycle rotten

This discussion is relevant for the GEP in #1058, but I think has probably been superseded. @robscott?

Yep, I think #1058 will cover this and we can safely close this issue now. Feel free to reopen if not.
/close


Update GUI

adding an update GUI would be helpful to users that want to configure their updates without touching a text file
Possibilities:
Integrate with GNOME or KDE system settings
some form of independent libadwaita app written in python

@gerblesh are there any functional requirements for this?  is it helpful to just have a button that kicks off the ublue-update service or are there other features that would be useful here?

I'm not totally sure but it would be nice to figure out some way to let the user schedule or disable automatic updates, and maybe fiddle with some values in the config file. This is relatively low priority however


Implement new url structure

What is the context of this PR?
Implements the URL structure as proposed in https://github.com/ONSdigital/eq-survey-runner/blob/v3/doc/architecture/decisions/0005-simplify-urls-and-extend-to-support-repeating-effectively.md.
In doing this a large amount of code has been removed:

Anything to do with repeats
Household composition and household relationships
Completeness and dependencies
Answer summaries (they weren't being used)
Multiple surveys checking (to be replaced by something appropriate at a later date)

This code has been removed to enable the upcoming feature work for lists and hub and spoke navigation.
How to review

Does everything work as expected?
Has enough been removed?
Should anything be put back?

Im happy, you just need to please the Travis / Codecov gods


'extend' of undefined for Backbone.Model.extend

var XLSXChart = require ("xlsx-chart");
when running the following line the code breaks on the .extend part, stating that the Backbone.Model is undefined. Do you have a clue as to what is happening?

I don't know. It must work:
var Backbone = require ("backbone");
...
var Chart = Backbone.Model.extend ({


TICK-356 Add ProxEquality

Create a ProxEquality that imposes an equality constraint
This is stupid but very useful for Maryan and the CNAM project
(in order to refit after TV regularization)

@MaryanMorel : ready for review.
@Mbompr : Can Maryan merge in master ?


feat(Colors): updated brand colors

Github Issue or Trello Card
This PR addresses this issue: https://trello.com/c/1MWtfgzG/1176-publish-updated-color-palette
What type of change is this?
Please delete options that are not relevant.

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Updating documentation.
[ ] Updating deployment/build pipeline.
[ ] Updating Project Dependencies
[ ] Improving or adding to Test Coverage

Completeness Checklist

[ ] TESTS: My changes maintain the baseline required test coverage, as specified by code climate analysis.
[ ] DOCS: All new component work is covered in that component's Overview docs.
[ ] DOCS: All new component work is covered in a component Playground.
[ ] DOCS: All new visual changes or options are covered under relevant components' VisualTests.
[ ] My code has no linting or typescript compile warnings.
[ ] My work is tied to a Github issue and satisfies the acceptance criteria (if applicable) of the corresponding issue.

Quality Checklist:

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes

UI Checklist

[ ] I have conducted visual UAT on my changes/features.
[ ] My solution works well on desktop, tablet, and mobile browsers.

 Publish updated color palette


how to modify face detection and tracking algorithm for cartoon faces?

I want to apply this repo to a cartoon video but it is not able to detect cartoon faces. What can be the solution? Should I retrain again with the data (in AVA format) or just modify the face detection algorithm?

The reason is that this face detection model can not detect the cartoon face, this face detection model can only detect human face I think.

I think the TalkNet model can not perform well in cartoon faces unless you have trained it in the cartoon dataset. Because the pretrain-model is trained only in the human face, it has no generation ability for the cartoon faces.

I have a separate face detection model for my cartoon data. How can I integrate that with the rest of the code?

Do you have the active speaker detection label for your cartoon data?
If so, assume your data is the face clips, saved in the image format (frame-by-frame). You can only modify the dataLoader.py file to load these images and the labels. The rest code is the same.

I dont want to train the code again I just want my face detection model predictions (bounding boxes) to go forward with the audio.

Sorry I can not understand. Can you describe it more clearly? What do you want to achieve and which step is your problem?

I want to achieve ASD without training any models.
I have active speaker label for my data (audio timestamps) but I do not have bounding boxes for those videos
I already have a trained face detection model (for my cartoon data) which outputs bounding boxes present in a frame.
I want to use these bounding boxes to get the labels for active speakers in the cartoon video.

As for my understanding, you have the ASD label for your cartoon data already, and you can extract the bounding boxes by your face detection model.

There is another problem now with the scene detection. Its not able to detect scenes. Any suggestions?

Sorry, I am not mainly working in this scene detection. I only try it in some vlogs on youtube. So you can try another scene detection algorithm if this one can not meet your requirement.

Thanks for all the information, could you tell me how you deal with frames that have no detected faces?

just skip them. If there is no face there is no need to do active speaker detection task.

But do you still include them in the faces variable or you dont add them?
# Face detection for the video frames
faces = inference_video(args)

In faces = inference_video(args). Outputs are the detected faces.
The format for each data is :{'frame':xxx, 'bbox':xxx, 'conf':xxx}. You can try and print it, then you will know the format.

No thats not what im asking, for example if there are no faces in frame 30, should the faces variable be
faces[0]={'frame':29, 'bbox':[1,2,3,4], 'conf':0.9}
faces[1]={'frame':30, 'bbox':[0,0,0,0] 'conf':0}
faces[2]={'frame':31, 'bbox':[3,4,5,6] 'conf':0.89}
or should it be like this.
faces[0]={'frame':29, 'bbox':[1,2,3,4], 'conf':0.9}
faces[1]={'frame':31, 'bbox':[3,4,5,6] 'conf':0.89}

The second one

Is there any way I can get a DER (Diarization error rate) for the output? Also what does the scores.pckl contain?

I am not familiar with DER, sorry can not help.
score.pckl contains ASD prediction result,


threads

 Parallelize Point-in-Polygon-Operator

Pull Request Test Coverage Report for Build 949900273

69 of 82 (84.15%)  changed or added relevant lines in 10 files are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage increased (+0.04%) to 80.42%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

operators/src/engine/execution_context.rs
1
2
50.0%

operators/src/processing/point_in_polygon.rs
37
41
90.24%

services/src/contexts/mod.rs
0
4
0.0%

services/src/pro/contexts/in_memory.rs
0
4
0.0%

Files with Coverage Reduction
New Missed Lines
%

operators/src/processing/point_in_polygon.rs
1
92.39%

Totals

Change from base Build 936043945:
0.04%

Covered Lines:
17337

Relevant Lines:
21558

💛  - Coveralls

What is the result of your benchmark?

it doesn't run through. I believe it's because of the thread pool bug

What is the result of your benchmark?

it doesn't run through. I believe it's because of the thread pool bug

It is merged now, so does it run through now?

What is the result of your benchmark?

it doesn't run through. I believe it's because of the thread pool bug

It is merged now, so does it run through now?

sadly no:

Benchmarking 1 thread: Warming up for 3.0000 sthread 'thread 'main' panicked at '' panicked at 'failed to allocate an alternative stack: Cannot allocate memory (os error 12)failed to spawn thread: Os { code: 11, kind: WouldBlock, message: "Resource temporarily unavailable" }', ', library/std/src/sys/unix/stack_overflow.rsthread '/rustc/b663c0f4f6ff84a8c9df0f708e1f8d628330d973/library/std/src/thread/mod.rs::155' panicked at '627:failed to set up alternative stack guard page: Cannot allocate memory (os error 12):13', 29
library/std/src/sys/unix/stack_overflow.rs
note: run with RUST_BACKTRACE=1 environment variable to display a backtrace
:159:13

I think this is a problem with async benches in criterion, as it is the same error I get for the workflow bench. Can you reproduce it?


add coq (wip)

Thanks a lot @rvantonder , I'm not very familiar with comby (yet) , but let me know if I can help with the Coq part.
Coq is usually a bit tricky to support as the syntax itself is user-extensible, and this is used in virtually all Coq projects to provide user-defined constructions.
The usual approach to handle this is to work with serialized versions of Coq's AST, as the ones sercomp does produce (see https://github.com/ejgallego/coq-serapi)
The AST itself is pretty straightforward , as the parser has already performed the tricky part and the user-specified parts are just regular (Notation string args) applications.

Thanks for chipping in @ejgallego! High-level, comby discriminates nested blocks delineated by some user-defined arbitrary syntax, strings, and comments, so that part should translate as-is (i.e., I'd be surprised if user-extensible syntax decided to redefine basic things like (...) or quoted strings). Everything else is basically treated as a lexical term.
To support the extensible syntax complexity would be a bit tricky initially. The context here on sercomp is great. The AST representation (or user-specified parts in Notation string args that sercomp outputs) would be really useful to understand which user-defined syntax correspond to, say, blocks and other syntactic constructs, which could then define how comby interprets the program it runs on.
For now I'll add the first general definitions. For the part that sercomp may help with, I'll have to look into, perhaps at a later stage.

Thanks for the details @rvantonder , one thing to consider tho is what granularity the blocks are handled at; in terms of extensive syntax, Coq does indeed allow to redefine a lot of stuff, so if you go to the expression sub-level you have things such as:
\sum_(i < n | P i) E i

for example to denote a sum, or if you look intro projects such as Iris you can find way more elaborated examples. So indeed in a sense, parens are indeed redefined as you need some non-trivial parsing to disambiguate.
In AST form, the above is just simply (Notation "\sum_( _ < _ | _ i) _ i" (i n P E)) so that's way easier to handle.


https urls show blank screen in Android

I'm having issue with calling some https urls in Android. Other urls works fine. Probably it stems from ssl issues. I have tried almost all solutions but unfortunately nothing changed. It shows white screen when WebView is activated. Is there any way to do something like "ignoreSslStuff"? Thanks in advance

react: 16.6.3
react-native: 0.57.8
react-native-webview: 3.1.2

any other solution?

I have the same problem, then i found the solution like this.
// path: /src/main/java/com/facebook/react/views/webview/ReactWebViewManager.java.
// override the sslError
@Override
public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) {
   // before: handler.cancel();
  handler.proceed();
}

but i can't found this code in react-native 0.57  and react-native-webview  5.7

any other solution?

you can custom the android webview like this and someone try it

Overriding sslError makes it work but, it is NOT secure way to solve this issue. By the way, Google refuses to upload your app if you overrided sslError like that.

Overriding sslError makes it work but, it is NOT secure way to solve this issue. By the way, Google refuses to upload your app if you overrided sslError like that.

right! thanks

Any solution?

@Dante-dan Can you give an example?


[Minor][Doc] Fix doc for web UI https configuration

What changes were proposed in this pull request?
Doc about enabling web UI https is not correct, "spark.ui.https.enabled" is not existed, actually enabling SSL is enough for https.
How was this patch tested?
N/A

Test build #73826 has started for PR 17147 at commit 22aa879.

Test build #73826 has finished for PR 17147 at commit 22aa879.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/73826/
Test PASSed.

Merging to master.


[VectorDistribution] Replace layout_resolution with to_layout

This patch replaces the layout_resolution operator with a new "to_layout" operation, representing a layout cast on the result. This allows the operation to be used as an anchor and a conversion operation.
This operation will be used in later patches to set layout anchors in IR and preserve them.

@Groverkss thanks for the PR and cleanup! Sorry didn't review it in time, quick question though, if we do not have a sourceLayout, how do we plan to resolve layout where the sourceLayout information is needed?

@Groverkss thanks for the PR and cleanup! Sorry didn't review it in time, quick question though, if we do not have a sourceLayout, how do we plan to resolve layout where the sourceLayout information is needed?

NVM, I found it in https://github.com/iree-org/iree/commit/cb5f32dbbb47d5dc222e723b4f12d7a292a6378e#diff-cea55a83a857aa60c0b8b912da951e2a70b96b80973f45a570fd1c37d3c038c1R572-R602.
We still use layout propagation in the analysis to figure out which SSA has which layout.


topic_refresh no longer runs query

In the old system, editing a kafka-enabled filter then saving causes three things:

Deleting the history file
Deleting the old kafka stream
Running the new query to get 10 records to put into the new stream

Two problems: first people didn't understand whats happening and second its liable to 'Gateway Timeout' out if the query is complicated.
So I removed the third thing with the 10 records.

All good! Thanks Roy