Failed to create application customizer 'ClientSideExtension.ApplicationCustomizer.'. Error information is 'Extension failed to load for componentId .'.

Target SharePoint environment
SharePoint Online
What SharePoint development model, framework, SDK or API is this about?
💥 SharePoint Framework
Developer environment
macOS
What browser(s) / client(s) have you tested

[ ] 💥 Internet Explorer
[ ] 💥 Microsoft Edge
[X] 💥 Google Chrome
[ ] 💥 FireFox
[ ] 💥 Safari
[ ] mobile (iOS/iPadOS)
[ ] mobile (Android)
[ ] not applicable
[ ] other (enter in the "Additional environment details" area below)

Additional environment details

browser version - Version 96.0.4664.55
SPFx version - 1.11.0
Node.js version - 10.24.1

Describe the bug / error
I am having an error in my project when deploying it in my tenant but this works while im on gulp serve.
I created a simple extension that would be rendered in the spTopPlaceholder of the page. i followed the documentation to create one. it's rendering and working locally while serving it but when i try to deploy it i get this error:
Uncaught (in promise) Error: Failed to create application customizer 'ClientSideExtension.ApplicationCustomizer.75e06db2-212d-41f4-ad01-758e014c7b40'. Error information is 'Extension failed to load for componentId "75e06db2-212d-41f4-ad01-758e014c7b40".'.
This i my code that inserts elements into the Placeholder element.
`if (!this._topPlaceholder) {
this._topPlaceholder = this.context.placeholderProvider.tryCreateContent(
PlaceholderName.Top,
{ onDispose: this._onDispose }
);
  // The extension should not assume that the expected placeholder is available.
  if (!this._topPlaceholder) {
    console.error("The expected placeholder (Top) was not found.");
    return;
  }

  if (this.properties) {
    let topString: string = this.properties.Top;
    if (!topString) {
      topString = "(Top property was not defined.)";
    }

    if (this._topPlaceholder.domElement) {
      this._topPlaceholder.domElement.innerHTML = `
     code goes here`;
    }
  }
}`

Steps to reproduce

create a sharepoint app customizer via the yeoman generator
deploy and install in a tenant

Expected behavior
extension should be rendered in the site where i deployed the application

Hello @pagetangalin - could you please share your project so we could try to repro it?
Also

are you doing production deployment or debug (gulp bundle --ship; gulp package-solution --ship)?
are you using tenant app catalog or site collection app catalog?

Also - is there any specific reason why you're on version 1.11 and not on the latest 1.13.1?

hi @AJIXuMuK ,

im doing gulp bundle --ship and gulp package-solution --ship
when i tried to upgrade he spfx to 1.13.1, had some issues with my node sinc emy node is on 10.24.1 i tried to upgrade my node then gulp complained on "primordials" error. so stuck with 1.11.0 instead.

unfortunately this is a client project I cannot share the exact project that im doing, but i duplicated the project into my personal git and removed the confidentials files: https://github.com/paigeflourin/pocSP-Ext.git

Hi @paigeflourin - after digging into code I see you're using @microsoft/sp-http module.
This module should be explicitly installed with npm i --save @microsoft/sp-http or yarn add @microsoft/sp-http. Don't forget to use appropriate version of the module (1.11.0 in your case).
The issue will be resolved as soon as you install the module.

@AJIXuMuK  thanks so much yep that did the trick. i didn't know sp-http should be explicitly installed

@AJIXuMuK  but i've noticed that it doesnt show up , (same error) for sitepages. for other pages (i.e site contents,s ite settings) it shows up.

@AJIXuMuK i think it intermittently happens. I have updated my component to remove the Footer (Bottom placeholder) , deployed it then got this error again. i have already installed the sp-http. and checked the dependencies from package.json if they have been installed. and they were.

Hi @paigeflourin - please, check your other dependencies.
I was playing with the example you've shared, and the only issue there was sp-http module.
As soon as I installed it the application customizer worked on any type of page without issues.
But in your actual solution you also have some custom modules references:
"search-connector-ui": "taigers/search-connector-ui#IS-2460-implement-uaa-changes-for-omnitive-integration",
    "search-ner-ui": "taigers/search-ner-ui#master",
    "taiger-design-system": "taigers/design-system#develop"

so please, double-check these modules are bundled correctly.


Liqoctl: install warnings

Description
This PR introduces the possibility of adding Warners objects in liqoctl install. Warners check some conditions and print a warning message if necessary.
How Has This Been Tested?

[x] Locally with KinD

/hold

/test

/merge


Request for EN-PL model

It would be great to see EN-PL model!

It will come soon I hope.

Did you notice that we now have https://github.com/Helsinki-NLP/Tatoeba-Challenge/tree/master/models/eng-pol?

Oh, thank you!

I guess it is time consuming to upload all models to huggingface hub, but it would be helpful.

@jorgtied I am trying to run this model with command: /build/marian-decoder -c eng-pol/opus-2021-02-19/decoder.yml but the translation is much worse than in opus-2021-02-19.test.txt. What am I missing?

Did you preprocess the input data with the subword segmentation model? You need to do that before piping it in into the decoder. See the preprocess script that comes with the model release.

Has anyone had any luck with converting the model to pytorch? I tried:
python src/transformers/models/marian/convert_marian_tatoeba_to_pytorch.py  --models eng-pol --save_dir converted

It successfully creates a converted model but unfortunately, it doesn't work. I get empty strings as a result.


ImageGCFailed

4 pods pending with no change:
kubectl --kubeconfig=kubeconfig get pods --all-namespaces
NAMESPACE     NAME                                                READY     STATUS    RESTARTS   AGE
kube-system   heapster-v1.3.0-268032834-s810c                     0/2       Pending   0          35m
kube-system   kube-apiserver-ip-10-0-0-39.ec2.internal            1/1       Running   0          34m
kube-system   kube-controller-manager-ip-10-0-0-39.ec2.internal   1/1       Running   0          34m
kube-system   kube-dns-1455470676-gwfj3                           0/3       Pending   0          35m
kube-system   kube-dns-autoscaler-1464605019-8wsn9                0/1       Pending   0          35m
kube-system   kube-proxy-ip-10-0-0-39.ec2.internal                1/1       Running   0          35m
kube-system   kube-scheduler-ip-10-0-0-39.ec2.internal            1/1       Running   0          34m
kube-system   kubernetes-dashboard-v1.5.1-jjj8j                   0/1       Pending   0          35m

kubectl --kubeconfig=kubeconfig get events
LASTSEEN   FIRSTSEEN   COUNT     NAME                        KIND      SUBOBJECT   TYPE      REASON                    SOURCE                                  MESSAGE
37m        37m         1         ip-10-0-0-39.ec2.internal   Node                  Normal    Starting                  kubelet, ip-10-0-0-39.ec2.internal      Starting kubelet.
37m        37m         1         ip-10-0-0-39.ec2.internal   Node                  Warning   ImageGCFailed             kubelet, ip-10-0-0-39.ec2.internal      unable to find data for container /
36m        37m         27        ip-10-0-0-39.ec2.internal   Node                  Normal    NodeHasSufficientDisk     kubelet, ip-10-0-0-39.ec2.internal      Node ip-10-0-0-39.ec2.internal status is now: NodeHasSufficientDisk
36m        37m         27        ip-10-0-0-39.ec2.internal   Node                  Normal    NodeHasSufficientMemory   kubelet, ip-10-0-0-39.ec2.internal      Node ip-10-0-0-39.ec2.internal status is now: NodeHasSufficientMemory
36m        37m         27        ip-10-0-0-39.ec2.internal   Node                  Normal    NodeHasNoDiskPressure     kubelet, ip-10-0-0-39.ec2.internal      Node ip-10-0-0-39.ec2.internal status is now: NodeHasNoDiskPressure
36m        36m         1         ip-10-0-0-39.ec2.internal   Node                  Normal    Starting                  kube-proxy, ip-10-0-0-39.ec2.internal   Starting kube-proxy.
36m        36m         1         ip-10-0-0-39.ec2.internal   Node                  Normal    RegisteredNode            controllermanager                       Node ip-10-0-0-39.ec2.internal event: Registered Node ip-10-0-0-39.ec2.internal in NodeController

I wouldn't worry about GCFailed warning yet. Can you provide kubectl -n kube-system describe  kube-dns-1455470676-gwfj3 output?

@redbaron
It's pending so I don't think that will work:
 ~/src/base_cluster2  kubectl --kubeconfig=kubeconfig get pods -n kube-system
NAME                                                READY     STATUS    RESTARTS   AGE
heapster-v1.3.0-268032834-s810c                     0/2       Pending   0          15h
kube-apiserver-ip-10-0-0-39.ec2.internal            1/1       Running   0          15h
kube-controller-manager-ip-10-0-0-39.ec2.internal   1/1       Running   0          15h
kube-dns-1455470676-gwfj3                           0/3       Pending   0          15h
kube-dns-autoscaler-1464605019-8wsn9                0/1       Pending   0          15h
kube-proxy-ip-10-0-0-39.ec2.internal                1/1       Running   0          15h
kube-scheduler-ip-10-0-0-39.ec2.internal            1/1       Running   0          15h
kubernetes-dashboard-v1.5.1-jjj8j                   0/1       Pending   0          15h
 ~/src/base_cluster2  kubectl --kubeconfig=kubeconfig -n kube-system describe kube-dns-1455470676-gwfj3
the server doesn't have a resource type "kube-dns-1455470676-gwfj3"

oops, wrong syntax from my side:
kubectl -n kube-system describe pod kube-dns-1455470676-gwfj3

@redbaron Sorry for the delay... here is the info requested:
kubectl --kubeconfig=kubeconfig -n kube-system describe pod kube-dns-1455470676-gwfj3
Name:		kube-dns-1455470676-gwfj3
Namespace:	kube-system
Node:		/
Labels:		k8s-app=kube-dns
		pod-template-hash=1455470676
Annotations:	kubernetes.io/created-by={"kind":"SerializedReference","apiVersion":"v1","reference":{"kind":"ReplicaSet","namespace":"kube-system","name":"kube-dns-1455470676","uid":"920b5616-4710-11e7-933b-067d3005...
		scheduler.alpha.kubernetes.io/critical-pod=
Status:		Pending
IP:
Controllers:	ReplicaSet/kube-dns-1455470676
Containers:
  kubedns:
    Image:	gcr.io/google_containers/k8s-dns-kube-dns-amd64:1.14.1
    Ports:	10053/UDP, 10053/TCP, 10055/TCP
    Args:
      --domain=cluster.local.
      --dns-port=10053
      --config-map=kube-dns
      --v=2
    Limits:
      memory:	170Mi
    Requests:
      cpu:	100m
      memory:	70Mi
    Liveness:	http-get http://:10054/healthcheck/kubedns delay=60s timeout=5s period=10s #success=1 #failure=5
    Readiness:	http-get http://:8081/readiness delay=3s timeout=5s period=10s #success=1 #failure=3
    Environment:
      PROMETHEUS_PORT:	10055
    Mounts:
      /var/run/secrets/kubernetes.io/serviceaccount from default-token-g94kr (ro)
  dnsmasq:
    Image:	gcr.io/google_containers/k8s-dns-dnsmasq-nanny-amd64:1.14.1
    Ports:	53/UDP, 53/TCP
    Args:
      -v=2
      -logtostderr
      -restartDnsmasq=true
      --
      -k
      --cache-size=1000
      --log-facility=-
      --server=/cluster.local/<IP_ADDRESS>#10053
      --server=/in-addr.arpa/<IP_ADDRESS>#10053
      --server=/ip6.arpa/<IP_ADDRESS>#10053
    Requests:
      cpu:		150m
      memory:		20Mi
    Liveness:		http-get http://:10054/healthcheck/dnsmasq delay=60s timeout=5s period=10s #success=1 #failure=5
    Environment:	<none>
    Mounts:
      /var/run/secrets/kubernetes.io/serviceaccount from default-token-g94kr (ro)
  sidecar:
    Image:	gcr.io/google_containers/k8s-dns-sidecar-amd64:1.14.1
    Port:	10054/TCP
    Args:
      --v=2
      --logtostderr
      --probe=kubedns,<IP_ADDRESS>:10053,kubernetes.default.svc.cluster.local,5,A
      --probe=dnsmasq,<IP_ADDRESS>:53,kubernetes.default.svc.cluster.local,5,A
    Requests:
      cpu:		10m
      memory:		20Mi
    Liveness:		http-get http://:10054/metrics delay=60s timeout=5s period=10s #success=1 #failure=5
    Environment:	<none>
    Mounts:
      /var/run/secrets/kubernetes.io/serviceaccount from default-token-g94kr (ro)
Conditions:
  Type		Status
  PodScheduled 	False
Volumes:
  default-token-g94kr:
    Type:	Secret (a volume populated by a Secret)
    SecretName:	default-token-g94kr
    Optional:	false
QoS Class:	Burstable
Node-Selectors:	<none>
Tolerations:	CriticalAddonsOnly=:Exists
Events:
  FirstSeen	LastSeen	Count	From			SubObjectPath	Type		Reason			Message
  ---------	--------	-----	----			-------------	--------	------			-------
  3d		2s		19104	default-scheduler			Warning		FailedScheduling	No nodes are available that match all of the following predicates:: PodToleratesNodeTaints (1).

I have the exact same symptoms when I tried a fresh deployment today, it appears to be coming from etcd TLS failure (considered as unhealthy by the controllers)
Can you put the output of the command kubectl get cs?

kubectl --kubeconfig=kubeconfig get cs
NAME                 STATUS      MESSAGE                                                                                ERROR
scheduler            Healthy     ok
controller-manager   Healthy     ok
etcd-1               Unhealthy   Get https://ec2-34-225-74-112.compute-1.amazonaws.com:2379/health: remote error: tls: bad certificate
etcd-2               Unhealthy   Get https://ec2-52-201-4-87.compute-1.amazonaws.com:2379/health: remote error: tls: bad certificate
etcd-0               Unhealthy   Get https://ec2-34-202-174-68.compute-1.amazonaws.com:2379/health: remote error: tls: bad certificate

I think etcd fails so controllers are not aware of workers (can confirm that with kubectl get nodes, you will see only your controller nodes), so kube can't schedule pods on worker nodes (heapster, dashboard, kube-dns etc.)
I'm still digging into the issue to try to find a workaround (need it for a deployment tomorrow), will keep this thread updated if I find anything

kubectl --kubeconfig=kubeconfig get nodes
NAME                        STATUS    AGE       VERSION
ip-10-0-0-39.ec2.internal   Ready     3d        v1.6.2+coreos.0

the nodes are there... and should be using the certs generated with render...

They are, but it seems that the controller is rejecting the ones used by ETCD as he don't know the certificate authority. Still digging into the issue

More debug info:
Classic curl on ETCD:
curl https://ec2-54-77-39-250.eu-west-1.compute.amazonaws.com:2379/health
curl: (60) SSL certificate problem: unable to get local issuer certificate
More details here: https://curl.haxx.se/docs/sslcerts.html

Curl with --insecure on ETCD
curl https://ec2-54-77-39-250.eu-west-1.compute.amazonaws.com:2379/health --insecure
curl: (35) error:14094412:SSL routines:ssl3_read_bytes:sslv3 alert bad certificate

Does that normally work or do you have to pass the ca certificate to curl to use for that request?

Yes it is supposed to work you can try it out on this sample self-signed ssl website: https://self-signed.badssl.com/

@PuKoren yes I just meant without the cacert and capath parameters:
core@ip-10-0-0-39 /etc/kubernetes/ssl $ curl -v https://ec2-52-201-4-87.compute-1.amazonaws.com:2379/health
*   Trying <IP_ADDRESS>...
* TCP_NODELAY set
* Connected to ec2-52-201-4-87.compute-1.amazonaws.com (<IP_ADDRESS>) port 2379 (#0)
* ALPN, offering http/1.1
* Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH
* successfully set certificate verify locations:
*   CAfile: /etc/ssl/certs/ca-certificates.crt
  CApath: /etc/ssl/certs
* TLSv1.2 (OUT), TLS header, Certificate Status (22):
* TLSv1.2 (OUT), TLS handshake, Client hello (1):
* TLSv1.2 (IN), TLS handshake, Server hello (2):
* TLSv1.2 (IN), TLS handshake, Certificate (11):
* TLSv1.2 (OUT), TLS alert, Server hello (2):
* SSL certificate problem: unable to get local issuer certificate
* Closing connection 0
* TLSv1.2 (OUT), TLS alert, Client hello (1):
curl: (60) SSL certificate problem: unable to get local issuer certificate
More details here: https://curl.haxx.se/docs/sslcerts.html

curl performs SSL certificate verification by default, using a "bundle"
 of Certificate Authority (CA) public keys (CA certs). If the default
 bundle file isn't adequate, you can specify an alternate file
 using the --cacert option.
If this HTTPS server uses a certificate signed by a CA represented in
 the bundle, the certificate verification probably failed due to a
 problem with the certificate (it might be expired, or the name might
 not match the domain name in the URL).
If you'd like to turn off curl's verification of the certificate, use
 the -k (or --insecure) option.
HTTPS-proxy has similar options --proxy-cacert and --proxy-insecure.
core@ip-10-0-0-39 /etc/kubernetes/ssl $ curl -v --cacert /etc/kubernetes/ssl/ca.pem --capath /etc/kubernetes/ssl https://ec2-52-201-4-87.compute-1.amazonaws.com:2379/health
*   Trying <IP_ADDRESS>...
* TCP_NODELAY set
* Connected to ec2-52-201-4-87.compute-1.amazonaws.com (<IP_ADDRESS>) port 2379 (#0)
* ALPN, offering http/1.1
* Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH
* error setting certificate verify locations:
  CAfile: /etc/kubernetes/ssl/ca.pem
  CApath: /etc/kubernetes/ssl
* Closing connection 0
curl: (77) error setting certificate verify locations:
  CAfile: /etc/kubernetes

curl: (77) error setting certificate verify locations:
  CAfile: /etc/kubernetes

This seems to be caused by missing permissions.
I seem to have the same TLS issue as reported by kubectl get cs, and this is the output with sudo:
$ sudo curl -v --cacert /etc/kubernetes/ssl/ca.pem --capath /etc/kubernetes/ssl  https://ip-10-0-0-160.eu-west-1.compute.internal:2379/health
*   Trying <IP_ADDRESS>...
* TCP_NODELAY set
* Connected to ip-10-0-0-160.eu-west-1.compute.internal (<IP_ADDRESS>) port 2379 (#0)
* ALPN, offering http/1.1
* Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH
* successfully set certificate verify locations:
*   CAfile: /etc/kubernetes/ssl/ca.pem
  CApath: /etc/kubernetes/ssl
* TLSv1.2 (OUT), TLS header, Certificate Status (22):
* TLSv1.2 (OUT), TLS handshake, Client hello (1):
* TLSv1.2 (IN), TLS handshake, Server hello (2):
* TLSv1.2 (IN), TLS handshake, Certificate (11):
* TLSv1.2 (IN), TLS handshake, Server key exchange (12):
* TLSv1.2 (IN), TLS handshake, Request CERT (13):
* TLSv1.2 (IN), TLS handshake, Server finished (14):
* TLSv1.2 (OUT), TLS handshake, Certificate (11):
* TLSv1.2 (OUT), TLS handshake, Client key exchange (16):
* TLSv1.2 (OUT), TLS change cipher, Client hello (1):
* TLSv1.2 (OUT), TLS handshake, Finished (20):
* TLSv1.2 (IN), TLS alert, Server hello (2):
* error:14094412:SSL routines:ssl3_read_bytes:sslv3 alert bad certificate
* Curl_http_done: called premature == 1
* Closing connection 0
curl: (35) error:14094412:SSL routines:ssl3_read_bytes:sslv3 alert bad certificate

Did anyone find a workaround for this?  The practical upshot is that clusters launched by kube-aws per the docs are completely unusable right now because nothing works without etcd.

@adimarco Hi!
Excuse me but I don't understand your exact issue because your cluster should work if you really followed the doc.
Could you share your kube-aws version and cluster.yaml so that we can investigate what's wrong?

Hey @mumoshu - I don't know what I did the first time around, but after destroying it and starting from scratch again everything works as expected.    My etcd nodes were coming up unhealthy and throwing the "remote error: tls: bad certificate" error I saw above here, but all is now well.  Thanks for the reply.


headstage-neuropix1 support

There are people in the field that are using the original 1.0 neuropixels headstage. We should consider adding support for this.

Development is occurring on issue-100. issue-100 is branched from issue-70 because 1.0 probes and nric1384 share a lot of configuration logic.  Development is complete except for electrode site configuration.


RegExp.prototype.compile with incompatible Object

Hi everyone,
according to es6 specs chakra should throw a TypeError if  the object does not have a RegExpMatcher.
OS: Ubuntu 16.04 x64
chakra version: <IP_ADDRESS>
steps to reproduce:
RegExp().constructor().constructor.prototype.compile(RegExp.prototype)

Actual results:
pass without failures
Expected results:
TypeError: Method RegExp.prototype.compile called on incompatible receiver [object Object]
V8, Spiderminkey and JSC works as expected. Running with the flag -ES6Experimental the test works as expected (maybe some flags are supported only in experimental mode).
cinfuzz

Consolidating as part of #6390


Thorium-XP repository confusion

I'm getting confused with so many repos and this one is not even pinned on the main page
so the former name of this repo was Thorium for Win7 ?
I believe either Windows-XP-Stuffz or chromium-xp is more appropriate for the Thorium XP build releases.
the Supermium repo is getting annoying as hell with mixed issues for all systems because it's being used from XP up to W11 users

@andika207 This was originally named "Thorium-Win7", it is now re-named "Thorium-Legacy" to reflect the fact that it now supports XP - 8.1.
Windows-XP-Stuffz is just for programs and updates for XP.
chromium-xp was my attempt at making a fixed and compiler optimized build of the last officially supported Chromium for XP, M49.
The XP releases here will be released alongside the Windows 7 releases. They will be easily identified as they will be in .zip form only, and will have WINXP in capital letters in the file name.

The XP releases here will be released alongside the Windows 7 releases.

this sounds quite interesting, so you will compile the XP build separately
https://github.com/win32ss/supermium/issues/233#issuecomment-1925311810


Documentation points to cover

A few small points are missing in the README:

Mozilla geckodriver is required and should be installed manually/externally
Usage instructions are missing (i.e.  like running cucumber)

On Mac OS X it geckodriver can be installed using homebrew:
brew install geckodriver

After this I can see that Firefox too is required.

So after all this:
 ✘ baptistegrenier@Baptistes-MacBook-Pro  ~/code/repos/EGI-website-tests   master  cucumber
Ignoring ffi-1.9.25 because its extensions are not built.  Try: gem pristine ffi --version 1.9.25
@checkin @public @engagement
Feature: Does the EGI Website correctly describe the state of CheckIn?
  Everybody expects CheckIn to be in production, but it is only production for internal users.
  External users are able to enquire about it, even though it's marked as beta

  Scenario: CheckIn is in Beta for the world, but production internally # features/checkin_is_properly_described.feature:6
    Given I am on www.egi.eu                                            # features/step_definitions/stepdefs.rb:8
    When I go to Services                                               # features/step_definitions/stepdefs.rb:15
    Then I see a link to Internal Services                              # features/step_definitions/stepdefs.rb:19
    And I see a link to CheckIn                                         # features/step_definitions/stepdefs.rb:23
    And The page shows that CheckIn for external users is in Beta       # features/step_definitions/stepdefs.rb:30
    Given I am on the services page                                     # features/step_definitions/stepdefs.rb:38
    When I go to internal services                                      # features/step_definitions/stepdefs.rb:43
    Then it has a list of services                                      # features/step_definitions/stepdefs.rb:47
    And one of them is Security                                         # features/step_definitions/stepdefs.rb:54
    And The security item lists CheckIn                                 # features/step_definitions/stepdefs.rb:59
    But the service is not marked in Beta                               # features/step_definitions/stepdefs.rb:63

1 scenario (1 passed)
11 steps (11 passed)
0m19.603s

🍾

Yes I agree that multi-browser support would be good (at least Firefox and Chrome, that should cover most of our users, but Edge, Safari, and furthermore w3m, lynx and elinks could be added too to be complete).
Thanks for the doc update!

Closed in 5de1331ca865de7719b9a9dd9e4d0025019a1ee4


Mistake in documentation

Hi,
In this page about resident mode the default binding to switch to insert mode should be esc + up rather than esc + down, which is what is describe in the mode transition image in this page.
Thanks

If document, you can send a pull request directly. Thanks.

Hi,
I didn't find the documentation folder in the master branch, so I thought it wasn't uploaded. Apparently it is on another branch, it would be helpful if you stated that in the documentation or the readme file, or add to the master branch.

Hi.
Sorry for the poor documentation. I added the details to the readme. The documentation is on the gh-pages branch, and can be written in Markdown.

The documentation source has been moved to the docs directory of the master branch.


Fix broken support GPG containers with embedded signatures

HBC has support for GPG containers, but due to recent changes the gpg signature parameter is now required to be an URL to an *.asc file. GPG containers, by design, contain both data and signature in one file, and therefore don't need a separate *.asc file.
The gpg stanza should support some sort of nil / empty / embedded value that can be used instead of an URL to an *.asc file.
Note that this feature was previously supported, but then broke due code changes (with corresponding tests having been removed in prior commits and thus this regression hasn't been noticed).
e.g.
url "https://server.com/package.gpg"
gpg :embedded, key_url: 'https://keys.org/package.pub'

[X] Have you followed the guidelines in our Contributing document?
[X] Have you checked to ensure there aren't other open Pull Requests for the same change?
[X] Have you added an explanation of what your changes do and why you'd like us to include them?
[ ] Have you written new tests for your changes? Here's an example.
[ ] Have you successfully run brew style with your changes locally?
[ ] Have you successfully run brew tests with your changes locally?

I have tested the change manually with this cask file:
https://github.com/filebot/plugins/blob/master/brew/filebot.rb

What happens here
https://github.com/Homebrew/brew/blob/master/Library/Homebrew/cask/lib/hbc/verify/gpg.rb#L36
if #signature returns nil?

Since my test case works, and doesn't print any errors, curl_download seems to not do anything. Not sure how curl_download works internally though.

Sure. I'll have a look on the weekend.

I've added another check in verify to skip *.asc file verification entirely if gpg :embedded is set.

I'll run a few tests first and then let you know.

Yes. Works as expected. Please merge.
$ ./brew cask install https://raw.githubusercontent.com/filebot/plugins/master/brew/filebot.rb
==> Downloading https://raw.githubusercontent.com/filebot/plugins/master/brew/filebot.rb.
######################################################################## 100.0%
curl: (22) The requested URL returned error: 416
######################################################################## 100.0%
==> Satisfying dependencies
All Formula dependencies satisfied.
All Cask dependencies satisfied.
==> Downloading https://get.filebot.net/filebot/latest/FileBot_4.7.21-darwin.tar.xz.gpg
Already downloaded: /Users/reinhard/Library/Caches/Homebrew/Cask/filebot--4.7.21.gpg
==> Verifying checksum for Cask filebot
==> Installing Cask filebot
==> gpg: requesting key from 'https://raw.githubusercontent.com/filebot/plugins/master/gpg/maintainer.pub'
==> gpg: key 4E402EBF7C3C6A71: "Reinhard Pointner<EMAIL_ADDRESS>not changed
==> gpg: Total number processed: 1
==> gpg:              unchanged: 1
==> gpg: Signature made Thu Mar 15 00:56:08 2018 +07
==> gpg:                using RSA key B0976E51E5C047AD0FD051294E402EBF7C3C6A71
==> gpg:                issuer<EMAIL_ADDRESS>==> gpg: Good signature from "Reinhard Pointner<EMAIL_ADDRESS>[ultimate]
==> Extracting nested container filebot--4.7.21
==> Linking Binary 'filebot.sh' to '/Users/reinhard/Development/brew/bin/filebot'.
🍺  filebot was successfully installed!

Thanks, @rednoah!


Set column width automatically after changing autoformatter

To provide a better UX for autoformatting, I think we should apply some options related to the max allowed column width in the editor automatically, either when changing formatters or other optiions in Spyder.
Concretely, i think we should do the following:

If people select Black, we should set 88 as the value of Completion and linting > Code style > Maximum allowed length. And this value should be 79 if people select Autopep8 or Yapf.
When using Black, we should set 88 as the value of Editor > Display > Show vertical lines at. And this value should be 79 if people select Autopep8 or Yapf.
If people manually set the value of Completion and linting > Code style > Maximum allowed length, we should tell the current formatter to use that value instead of the one they used by default. And if people select another formatter, that option needs to be passed to the new formatter too.
If people manually set the value of Completion and linting > Code style > Maximum allowed length, we should also use that value to set Editor > Display > Show vertical lines at.
If people manually set Editor > Display > Show vertical lines at, we shouldn't do anything because that's not related to autoformatting.

Remove Show vertical lines at from the editor and put an option in codestyle Show vertical line

If using black it would be nice to be still able to set the line-length to e.g. 79. Since black provides the -l option, this should be possible. I am fine with auto setting it to 88, when switching the autoformatter.

@MuellerSeb, good point! Could you open a new issue so we don't forget to address that in our next version?

@ccordoba12 done.


[help] package conflicts due to included build-ids

Hi everybody,
this request is about RPM packaging issues, so I'm not sure if this is something supported by this project, but it is related to nogokiri and I want to try to post this request here, maybe to at least get some nudges in the right direction.
The situation is the following: I have two RPM packages to install on a RHEL machine.

gitlab-ee from

➜  ~ yum --noplugins repolist -v --repo gitlab_gitlab-ee
YUM version: 4.7.0
cachedir: /var/cache/dnf
Repo-id            : gitlab_gitlab-ee
Repo-name          : gitlab_gitlab-ee
Repo-updated       : Tue 07 Dec 2021 12:26:11 AM CET
Repo-pkgs          : 202
Repo-available-pkgs: 202
Repo-size          : 175 G
Repo-baseurl       : https://packages.gitlab.com/gitlab/gitlab-ee/el/8/x86_64
Repo-expire        : 300 second(s) (last: Wed 08 Dec 2021 03:38:20 PM CET)
Repo-filename      : /etc/yum.repos.d/gitlab_gitlab-ee.repo
Total packages: 202

td-agent from

➜  ~ yum --noplugins repolist -v --repo treasuredata
YUM version: 4.7.0
cachedir: /var/cache/dnf
Last metadata expiration check: 0:53:52 ago on Wed 08 Dec 2021 02:51:07 PM CET.
Repo-id            : treasuredata
Repo-name          : TreasureData
Repo-revision      :<PHONE_NUMBER>
Repo-updated       : Fri 03 Dec 2021 06:36:42 AM CET
Repo-pkgs          : 6
Repo-available-pkgs: 6
Repo-size          : 84 M
Repo-baseurl       : http://packages.treasuredata.com/4/redhat/8/x86_64
Repo-expire        : 172,800 second(s) (last: Wed 08 Dec 2021 02:51:07 PM CET)
Repo-filename      : /etc/yum.repos.d/td.repo
Total packages: 6

Now, if I installed one of them, installing the other causes an error. In my case, I have gitlab-ee installed and tried to install td-agent:
Error: Transaction test error:
  file /usr/lib/.build-id/43/628674f17ad8eef26bdfe36f12978af5c53c4a from install of td-agent-4.2.0-1.el8.x86_64 conflicts with file from package gitlab-ce-14.2.0-ce.0.el8.x86_64
  file /usr/lib/.build-id/4b/41a98372f36876cd1be483fa30caddeb0c3d5f from install of td-agent-4.2.0-1.el8.x86_64 conflicts with file from package gitlab-ce-14.2.0-ce.0.el8.x86_64
  file /usr/lib/.build-id/6c/c52279cc0c5eb99a5330fe3e093851f62d6715 from install of td-agent-4.2.0-1.el8.x86_64 conflicts with file from package gitlab-ce-14.2.0-ce.0.el8.x86_64
  file /usr/lib/.build-id/ce/3452804469ea64798b8df6a5d35400170b04ef from install of td-agent-4.2.0-1.el8.x86_64 conflicts with file from package gitlab-ce-14.2.0-ce.0.el8.x86_64

Now apparently both packages contain the same files in /usr/lib/.build-id/ which are symbolic links to some binaries. (see R1 and R2). Let's see what hides behind those links:
➜  ~ readlink --canonicalize /usr/lib/.build-id/43/628674f17ad8eef26bdfe36f12978af5c53c4a
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/nokogiri-1.11.7-x86_64-linux/lib/nokogiri/3.0/nokogiri.so
➜  ~ readlink --canonicalize /usr/lib/.build-id/4b/41a98372f36876cd1be483fa30caddeb0c3d5f
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/nokogiri-1.11.7-x86_64-linux/lib/nokogiri/2.7/nokogiri.so
➜  ~ readlink --canonicalize /usr/lib/.build-id/6c/c52279cc0c5eb99a5330fe3e093851f62d6715
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/nokogiri-1.11.7-x86_64-linux/lib/nokogiri/2.5/nokogiri.so
➜  ~ readlink --canonicalize /usr/lib/.build-id/ce/3452804469ea64798b8df6a5d35400170b04ef
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/nokogiri-1.11.7-x86_64-linux/lib/nokogiri/2.6/nokogiri.so

Okay, and what is included in td-agent?
➜  ~ repoquery --list td-agent | grep 'nokogiri-1.11.7-x86_64-linux/lib/nokogiri/[[:digit:]].[[:digit:]]/nokogiri.so'
Last metadata expiration check: 0:00:47 ago on Wed 08 Dec 2021 03:54:35 PM CET.
/opt/td-agent/lib/ruby/gems/2.7.0/gems/nokogiri-1.11.7-x86_64-linux/lib/nokogiri/2.5/nokogiri.so
/opt/td-agent/lib/ruby/gems/2.7.0/gems/nokogiri-1.11.7-x86_64-linux/lib/nokogiri/2.6/nokogiri.so
/opt/td-agent/lib/ruby/gems/2.7.0/gems/nokogiri-1.11.7-x86_64-linux/lib/nokogiri/2.7/nokogiri.so
/opt/td-agent/lib/ruby/gems/2.7.0/gems/nokogiri-1.11.7-x86_64-linux/lib/nokogiri/3.0/nokogiri.so

Thus, both packages ship their own ruby distributions which include several nokogiri gems, but they also include build-ids for nokogiri as symbolic links, with the links in gitlab-ee pointing to nokogiri binaries from ruby shipped with gitlab-ee and the links in td-agent to binaries from ruby shipped with td-agent.
After research, it seems that the only way to work around it is to install the packages manually using rpm --install --replacefiles. But this is a bad solution since I can no longer update my system with yum update.
A good starting point would be to find out how the build-ids for nogokiri made it to those packages. Any ideas on that?
References:
R1. https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/6/html/developer_guide/compiling-build-id
R2. https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/6/html/developer_guide/intro.debuginfo#debuginfo-install-core-file-analysis

@Smasherr Thanks for asking this question, and I'm sorry you're having problems.
Unfortunately the nokogiri-core team isn't involved in any of the downstream distro repackaging efforts (debian, redhat, etc.). I know way less than you do about what requirements are expected to be met by rpm packages, and I don't know how to help deduplicate these libraries.
I'm sorry I can't be of any help here. You may want to try posting this question in a RedHat or CentOS forum.

Thanks @flavorjones, I'll ask on a RedHat Forum!


add debian jessie dependencies

Hi,
dependencies for the deb package, tested with debian jessie

@remijouannet Thanks for the PR. To help me understand this, can you explain why each dependency is required?
@grunjol What are your thoughts on this PR?

Most of them are redundant because are included as dependencies of other packages.
I think we can reduce them to:
libgtk2.0-0, libnss3

we can even remove libc6 from the current list (included via libgtk2.0)

Hi,
I don't understand why you have to install libgtk2.0-0,
I made my test with a debian jessie without anything install on it,
my last commit is the minimum i had to install just to run webtorrent-desktop

xorg : components for X Window System
libnss3 : Network Security Service libraries
libxss1 : lib for controlling the X screensaver
libgconf-2-4 : lib for gnome conf db
libasound2 : lib for the Linux sound architecture

I was checking how atom team packages its .deb file and found the following base (electron) dependencies
gconf2 libgtk2.0-0 libnss3
the rest are atom specific (git, python, xdg-utils, and a couple of crypt libs).
I am not expert but i trust the atom guys on how to package and then my suggestion

@grunjol How do you know that the ones you selected are the ones required for all electron apps?
Btw, the full list of atom deps is: git, gconf2, gconf-service, libgtk2.0-0, libudev0 | libudev1, libgcrypt11 | libgcrypt20, libnotify4, libxtst6, libnss3, python, gvfs-bin, xdg-utils, libcap2
From https://github.com/atom/atom/blob/master/resources/linux/debian/control.in#L3

I agree with @grunjol, as far as I know all you need is to run webtorrent-desktop (Electron) and the base dependencies are those he mentioned.
Other dependencies would be necesary only if you use some OS specific functionality like Atom does.

The only dep I'm aware of for Electron is libappindicator1, and that's only if you use the new Notification() API.

gconf2, libgtk2.0-0, libudev0 | libudev1, libgcrypt11 | libgcrypt20, libnotify4, libxtst6, libnss3, libcap2 is probably pretty close. Leaving off dependencies might work but will end up segfaulting your users

Thanks for all the answers everyone!
Does anyone know what the difference between libnotify4 and libappindicator1 is -- surely we don't need both?

@paulcbetts Leaving off dependencies might happen to work for you but will end up segfaulting your users

We should definitely install the app on a fresh Ubuntu and Debian VM to ensure that it works on a clean system.

@feross You need a libnotify (we will look for it in Brightray dynamically), but libnotify1,4,7,8 all work.

@paulcbetts Thanks for clarifying.
So, @zcbenz says that we should use the list of dependencies from here:
gtk+-2.0 dbus-1 x11 xi xcursor xdamage xrandr xcomposite xext xfixes xrender xtst xscrnsaver gconf-2.0 gmodule-2.0 nss

Doesn't get more canonical than that, but you definitely still need libnotify of some kind, https://github.com/electron/brightray/pull/221 has the details.

@feross the list you put in there is basically what you get when you ldd the binary. But is not the debian way to get the package dependencies.
I can give you an example. You need libgtk2.0-0 package because you need the libgtk2.0 library. libgtk2.0-0 has its own dependencies, ie: libx11-6 that provides you x11, so don't need to specify x11 as dependency. You can cross out most of the dependencies in the list using that criteria.
Most important you don't need to make a package as dependency just because the framework has a dynamic link to it if you don't use it. That's why we won't probably need some libs that are ldd'd to the binary.
In the end, you are right. The correct way to verify this is run a VM with a minimal installation and add the dependencies to fulfill the app's requirements. Not from scratch, but taking the base of gconf2 libgtk2.0-0 libnss3

To get a minimal desktop installation download minimal server or netsinstall and then install the desktop, you can opt out for:
Gnome
apt-get install aptitude tasksel
tasksel install gnome-desktop --new-install

KDE
apt-get install kde-standard
XFCE
apt-get install xfce4 xfce4-goodies thunar-archive-plugin

@remijouannet @grunjol do we still need this?

@dcposch The thing is most of the users install the package on a standard desktop environment where all the dependencies are already installed.
The original PR was pretty close, but no app should depend on x11 (in fact wayland/mir will replace it eventually) so, the dependency should be based on the toolkit (libgtk)
but, hey, to close this for good i am doing what i suggested on June 1st.
will be back in a couple of hours with the results.

These are my findings documented step by step
Package

get webtorrent-desktop from master (0.8.1)
set gconf2, libgtk2.0-0, libnss3 in depends config option (my guess)
run npm run package -- linux --package=deb
You get webtorrent-desktop_0.8.1-1_amd64.deb

Base Debian Jessie VM

Create an empty VM
Add a DVD/CD drive with this net install image
Follow the wizard for a base minimal install (no DE selection)
Once you have the VM, clone it (with the disk) 3 times (KDE, GNOME, XFCE).

KDE testing

Open the KDE VM
Run apt-get install kde-plasma-desktop (the minimal KDE DE)
Reboot, Start KDE Session
Copy webtorrent-desktop_0.8.1-1_amd64.deb (scp it from inside the VM, no need to complicate it with set a shared drive) to the VM.
Install the package (i just simply dpkg -i + apt-get -f install to force the deps download)
Run webtorrent-desktop
You can download, and play the demos without any problem
PASSED

GNOME testing

Open the GNOME VM
Run apt-get install gnome-core (the minimal Core Gnome, not even the recommended)
Reboot, Start Gnome Session
Copy webtorrent-desktop_0.8.1-1_amd64.deb
Install the package (i just simply dpkg -i it because all the deps were already installed by core)
Run webtorrent-desktop
ERROR error while loading shared libraries: libXss1.so cannot open shared object file
libxss1 is not installed by default with the gnome-core packages
apt-get install libxss1
Run webtorrent-desktop
You can download, and play the demos without any problem
PASSED (libxss1 needed)

XFCE testing

Open the XFCE VM
Run apt-get install xfce4 xfce4-goodies ( XFCE )
Run startxfce4 (no need to restart)
Copy webtorrent-desktop_0.8.1-1_amd64.deb
Install the package (dpkg -i + apt-get -f install to force the deps download)
Run webtorrent-desktop
ERROR error while loading shared libraries: libXss1.so cannot open shared object file
libxss1 is not installed by default with the xfce4 packages
apt-get install libxss1
Run webtorrent-desktop
You can download, and play the demos without any problem
PASSED (libxss1 needed)

Conclusion for Jessie
Depends config option should be
gconf2, libgtk2.0-0, libnss3, libxss1
Thanks @remijouannet for the original PR, and the rest for the discussion.

Hello,
really sorry for not being really active on the discussion,
thx for the hard work, i will update my PR with the depends config you have posted

@grunjol @remijouannet Thanks for the good work, guys!


feat(headers): support WWW-Authenticate

[ ] The commit messages match the guidelines in https://github.com/hyperium/hyper/blob/master/CONTRIBUTING.md#git-commit-guidelines

This PR a part of #773. Though the issue suggests more features, I'm motivated only on WWW-Authenticate and only implements WWW-Authenticate in this PR.
I'll implement WWW-Authenticate header described in RFC 7235, Basic Challenge described in RFC 7617 and Digest Challenge described in RFC 7616.
Questions

I'm submitting this PR to 0.10.x branch. Is this correct?
Because I'm not a native English speaker(writer), I feel hard to write documents. Would anyone help me writing documents or write documents after this PR is merged?

TODO:

[x] accept multiple headers
[x] consult the definition of quoted string and implement correctly
[x] more APIs like get_raw
[x] write documents

Thanks for contributing! Unfortunately, I'm here to tell you there were the following style issues with your Pull Request:

Commit: c9bf0437c6662d92ce86c4f4e56981117a8dceeb
Invalid type. Valid types are feat, fix, docs, style, refactor, perf, test, chore, revert

Guidelines are available at https://github.com/hyperium/hyper/blob/master/CONTRIBUTING.md

This message was auto-generated by https://gitcop.com

Thanks for contributing! Unfortunately, I'm here to tell you there were the following style issues with your Pull Request:

Commit: db572ad339a83fbf2d51fa1bd6a729659a0bb0d8
Commits must be in the following format: %{type}(%{scope}): %{description}

Guidelines are available at https://github.com/hyperium/hyper/blob/master/CONTRIBUTING.md

This message was auto-generated by https://gitcop.com

Thanks for contributing! Unfortunately, I'm here to tell you there were the following style issues with your Pull Request:

Commit: db572ad339a83fbf2d51fa1bd6a729659a0bb0d8

Commits must be in the following format: %{type}(%{scope}): %{description}

Commit: dd847c3bbe727bd0146bdcc2bfb2fe4b06f82888

Invalid type. Valid types are feat, fix, docs, style, refactor, perf, test, chore, revert

Guidelines are available at https://github.com/hyperium/hyper/blob/master/CONTRIBUTING.md

This message was auto-generated by https://gitcop.com

rebased to fix commit messages

Um, wow! This is a lot of work!
I haven't reviewed the code yet, but curious, being so much, does it make sense as possibly a separate crate?

Yes it does. Though it depends on some internal types like CowStr, if only I ported with them, it can be separated.

@seanmonstar Are you going to merge this patch, or want it to be a separated crate?
This is NOT a authorization framework but just a header parser/printer. I implemented this because 401 unauthorized requires for the response to contain WWW-Authenticate header.

I'm currently sitting somewhere in the middle. I don't feel like this doesn't belong, but I also feel apprehensive about the surface area being added. If through usage, it's found that changes are needed, it'd be a breaking version bump for everyone who uses hyper.
What if this were released as a different crate, and after usage has found if any changes are required, then it can be considered for including in here? Does that sound reasonable?

Yes, that's very reasonable. Then I close this PR and prepare for publishing it as a new crate. Thank you.

Where did you publish that finally ?  You talked about a new crate, I red somewhere hyper-auth but can't find it.

this https://crates.io/crates/www-authenticate

Thank you @KeenS

:)


dgo local references

I think I'm seeing something similar to this - for some lookups I get back __ref: 26 or similar on the first try, but retrying the lookup returns the correct value. I can't figure out exactly what's triggering it, but I think it's only when using strict_alias. Also passing --dialect pcore seems to make it work first time.

@hbuckle I think I know where the problem is but I'd like to know two things to be certain:

What version are you using?
Do you see the same thing if you use --render-as json?

@thallgren

Using the latest tagged version 0.3.6, and hiera_terraform built from master

--render-as json exhibits the same behvaiour - "{\"__ref\":26}"

Inadvertently closed by merge of #75 (which doesn't fix the problem).


STITCH-1967 Add full CRUD within .sync()

Ticket Description:
This should implement the same CRUD methods that the non sync service has. All of these methods should only operate on the synced, offline documents.
For replacements, they should use the same set and unset event optimization

Add insertMany, updateMany, deleteMany, aggregate, and count to the DataSynchronizer. This is to be in parity with RemoteMongoCollection.
a. For deleteMany and updateMany, the documents need to be fetched before the delete to
retrieve the ids, due to the way canonical filters work.
b. For updateMany, this will match potential unmodified documents. Ignore those.
c. For updateMany, it may be an upsert. If it is an upsert, filter the result using the upsertedId
and emit an insert.
Replace findOneById, updateOneById and deleteOneById with find, updateOne and deleteOne, respectively.
a. For deleteOne, the document needs to be fetched before the delete to retrieve the id, due to
the way canonical filters work.
b. For updateOne, it may be an upsert. If it is an upsert, filter the result using the upsertedId
and emit an insert.
Proxy each method upwards through CoreSync.
Add AggregateOperation, CoreSyncAggregateIterable, CountOperation, InsertManyOperation, and DeleteManyOperation classes to be instantiated in SyncOperations to maintain parity with Operations (remote).
Add SyncCountOptions, SyncDeleteOptions, SyncUpdateOptions, SyncDeleteResult, SyncInsertManyResult, SyncInsertOneResult, and SyncUpdateResult to both maintain parity with the Remote*Options classes, and to create a divergence between our options and the local mongo client library.
Proxy CoreSync operations upwards through Sync (server) and Sync (Android).

Unit testing to test the new logic was critical here, especially for the bulk operations. Integration tests were limited to ensuring that each new operation operates as intended in an integrated environment. Since no new Sync cases were created, adding new conflicted/failing integration tests seemed unnecessarily cumbersome.

@edaniels @adamchel PTAL

@adamchel PTAL


Consider renaming Store Gateway.

It keeps coming a lot recently:
There is huge confusion between: store vs store gateway vs storeAPI We need to do something with it.

storeAPI: a gRPC API which serves as an interface for reading stream of chunked series
store gateway: https://thanos.io/components/store.md/ This is a service, a StoreAPI implementation that allows streaming series from object storages.
store  It is used as API and as gateway, depending on context :man_facepalming:

Proposals/ideas
Rename store Gateway to:

bucketGateway

We might even be able to hook it to thanos bucket serve as we have `thanos bucket already which allows different things.

bucketBrowser
blockReader

Since the store gateway allows us to interact with remote cloud storage and/or blocks, how about storageGateway/blockStoreGateway/cloudStorageGateway? I think bucketGateway is a strange name.

bucketGateway could be an interface and could have storageGateway/blockStoreGateway/cloudStorageGateway as implementations.
TBH It is not confusing for me once I understood how Thanos works. With this being said, could this confusion not be solved with documentation rather than a refactor? And then use StoreAPI and StoreGateway and drop simple Store.

Although the store gateway allows querying uploaded TSDB blocks, I think that names like blockGateway are a bit confusing because block can be conflated with block storage and because S3 and the like provide object storage as opposed to block storage.
I am a fan of storageGateway (:

BucketStore?

I actually do like BucketStore but it's not really the store :/

What about BucketGateway?

+1 for storageGateway or even the more verbose objectStorageGateway.
Calling it a BucketGateway, in my opinion, makes it seem as if it is a gateway to a single bucket.

Something that might affect is that we might want to split at some point Store for fetching chunks and index lookup to separate components. We might want to be prepare for this with naming. bucketChunkGateway bucketIndexer
I would postpone the discussion and voting to that moment (:

Looks like there is no much interest. Let's close it.
On Thu, 27 Feb 2020 at 11:14, stale[bot]<EMAIL_ADDRESS>wrote:

This issue/PR has been automatically marked as stale because it has not
had recent activity. Please comment on status otherwise the issue will be
closed in a week. Thank you for your contributions.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/thanos-io/thanos/issues/1646?email_source=notifications&email_token=ABVA3O6K7K5DUYB2EHKP5QDRE6OCXA5CNFSM4JAPAZJKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEND65VI#issuecomment-591916757,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABVA3O7COHDGHZP4M4T6RL3RE6OCXANCNFSM4JAPAZJA
.

Something is broken with stale bot.


make new proposal page thinner

[x] Simplify the page style, remove blank div
[x] Move new page button up to SiteNav
[x] Support attach action, for example: add payout, add reserve, custom (multisig) transaction. (good inspiration https://daodao.zone/dao/juno1j6glql3xmrcnga0gytecsucq3kd88jexxamxg3yn2xnqhunyvflqr7lxx3/proposals/create and https://abi.ninja/0xFFdD70C318915879d5192e8a0dcbFcB0285b3C98/mainnet?functions=burnTokensOf%2CdistributeReservedTokensOf)

support decimal and float point number in uint256 input, for better readability


Update templates to work with DNX RC2

There are some breaking changes in RC2
So templates do not work with RC2

I was not managed to run even console app with RC2
https://github.com/fsprojects/fsharp-dnx/issues/26


Object reference not set to an instance of an object when calculating interpolations

"System.NullReferenceException: Object reference not set to an instance of an object
at LunaClient.Systems.VesselUpdateSys.VesselUpdate.GetInterpolatedAcceleration (Single interpolationValue) [0x00020] in C:\shared\kerbal space program\LunaMultiPlayer\Client\Systems\VesselUpdateSys\VesselUpdate.cs:449
at LunaClient.Systems.VesselUpdateSys.VesselUpdate.ApplySurfaceInterpolation (Single interpolationValue) [0x00001] in C:\shared\kerbal space program\LunaMultiPlayer\Client\Systems\VesselUpdateSys\VesselUpdate.cs:398
at LunaClient.Systems.VesselUpdateSys.VesselUpdate.ApplyInterpolations (Single percentage) [0x00033] in C:\shared\kerbal space program\LunaMultiPlayer\Client\Systems\VesselUpdateSys\VesselUpdate.cs:353 "
Breakpointing on VesselUpdate:449, I found that the Target.Acceleration was null, but the Target was valid.    I'm not sure what the conditions are for a target to have or not have an acceleration.

This occurs when we are targeting an entity which provides an Orbital update.  Orbital updates do not set acceleration, but instead set Orbit (see VesselUpdateMessageHandler.cs), which means that you get a NullReference exception inside VesselUpdate when it attempts to apply a surface interpolation but the target is providing orbital coordinates.
This explains why Target.Acceleration is null.  Target.Orbit does contain information, but Target.Acceleration does not.

Being worked on. closing the bug until vessel updater is finished


Xcode says: Update to recommended settings for CocoaPod RealmSwift

Goals

I want to use RealmSwift from CocoaPods on iOS.
Expected Results

I expect no project warnings.
Actual Results

Xcode says: "Update to recommended settings"
I get the two warnings shown in the screenshot. (You can ignore the HockeyApp warning and the Project Pods warning).
Target 'RealmSwift' - Update Swift Optimization Setting
This update the Swift optimization level to use Whole Module Optimization, and remove the obsolete definition of "Whole Module Optimization" for the Debug configuration.
Target 'RealmSwift' - Update Swift Optimization Setting
This update the Swift optimization level to use Whole Module Optimization, and remove the obsolete definition of "Whole Module Optimization" for the Release configuration.
When I install RealmSwift with CocoaPods I get two warnings from Xcode about the settings in the RealmSwift Target.

Steps to Reproduce

I'm using CocoaPods 1.3.1 and Xcode Version 9.2 (9C40b). When I pod update I get

Realm (3.0.2):

Realm/Headers (= 3.0.2)

Realm/Headers (3.0.2)
RealmSwift (3.0.2):

Realm (= 3.0.2)

Code Sample

//Podfile
pod 'Realm', '~> 3.0'
pod 'RealmSwift', '~> 3.0'
Sorry about the markdown funny business.
Version of Realm and Tooling

Realm framework version: ?
Realm Object Server version: ?
Xcode version: Version 9.2 (9C40b)
iOS/OSX version: ?
Dependency manager + version: ?
CocoaPods 1.3.1

Realm (3.0.2):

Realm/Headers (= 3.0.2)

Realm/Headers (3.0.2)
RealmSwift (3.0.2):

Realm (= 3.0.2)

+1

@bdash Actually I think all that needs to be done is to remove SWIFT_WHOLE_MODULE_OPTIMIZATION from the Podspec. I think the cocoapod default is to enable whole module optimization in Release builds. Podspecs for other Cocoapods don't include this setting and they use whole module optimization (see AlamoFire, FontAwesome etc.)
Also, see this Cocoapod issue
https://github.com/CocoaPods/CocoaPods/issues/4439


IPN not unique

Currently it seems like it is possible to have 2 parts with the same IPN, I think like email this should be made to be a unique field with null when not present.  It should not be possible to give the same IPN to 2 parts.

@amishHammer See https://github.com/inventree/InvenTree/pull/962#issuecomment-687719365
There was one case where I needed to have 2 parts with the same IPN: when I wanted to create 2 different revisions of the same part. Currently there is no revision control system in place so that's only possible if IPN can be re-used.
I'm not sure what the other use-cases are.

In practice the revision part numbers seem to mostly be taken care of with suffixes like '-4' for the 4th revision. There is a revision field on the part so maybe make it a combined unique with the revision field.

Appending the revision to make the IPN unique could work, I do like the idea. But still I don't know if this was in the original design philosophy to add the uniqueness constraint and if some users have some good use-cases against it (unlike mine which could be solved as you mentioned).

@amishHammer this was designed to accommodate the situation where multiple revisions of the same 'internal part' are in the database. If there is no revision specified then the IPN has to be unique.
Is the current setup causing you issues with your installation?

As of right now if revision is blank you can have multiple parts with the same IPN.  This might be a good candidate for a global option.

If there is no revision specified then the IPN has to be unique.

I don't think that logic is there yet. Validation only checks that the name, IPN and revision combination is unique.

I've added a user-configurable option to allow or prohibit duplicate IPN values.


Remove parallel processing from pixie

Is your feature request related to a problem? Please describe.
The parallel processing implemented in Pixie has in general been hard to maintain, and doesn't play nice across OS.
Describe the solution you'd like
Remove the parallel processing functionality in favor of slower, but simpler, code which runs each FOV in series.

@ngreenwald would it be better to have both options available to the user? We can turn off multiprocessing by default and have separate logic to run the non-multiprocessed loop, and add additional notebook flags in to turn this on if desired.
In this way, users who have not experienced problems with multiprocessing can still get a speedup.

Will you be able to reuse the multiprocessing-friendly versions of the individual functions, or you'll need to write different ones that work on their own? I think I remember we had to do a refactor in order to get them to work for multiprocessing

@ngreenwald we can easily integrate this with existing functionality. Both run_pixel_som.R and pixel_consensus_cluster.R will need slight reorganization, it was about time to clean up those files via creating more helper functions anyways.

okay sounds good, in that case makes sense to leave as an option but set the default to a version that doesn't use the multiprocessing library at all


Some questions about your paper and code

Hello, Thank you very much for your code. I am a lit bit confused about some details in your paper. Could you please help me with them?

In your equation 8, you multiple the Hg with -theta. I do not understand why you have to multiply Hg with -theta since Hg is already a measurement of the importance.

In your code, you use 1000 examples for cifar100 and divide them into 4250. While you computing the Hessian vector product: z += (grad_w[count].data * grad_f[count]).sum(), you use different numbers of data for grad_w and grad_f. The grad_w is the sum of gradients for 4250, but grad_f is only the gradients of this batch of 250 examples. Why do you do it in this way?

If possible, could you please share a detailed proof of eqa.7?

Thank you very much for your work!

Especially why you multiple Hg with negative theta

I have the same question #2 up there.. it doesn't make a lot of sense to me. Why are inputs split into 2 parts anyways? I am guessing just because of GPU memory limits or something?

Hi Mohsaied,
Yes, it's because the inputs take too much memory to fit in the GPU. (12GB)

thanks, and for the first question: why do you multiply by -theta?...

Also, I think that could mean there is a potential bug in your code when you do this in grasp.py
z += (grad_w[count].data * grad_f[count]).sum()
If I am not mistaken, you should accumulate grad_f over the two input splits before multiplying by grad_w and accumulating into z.

Eq (7) measures the importance of each weight. Removing one weight can be cast as setting its value to zero (i.e., add a perturbation -theta). So, that's why we need to multiply -theta. More details can be found in page 5.

These two for-loops #L76 and #L117 are used for computing the Hessian-vector product Hg. grad_w is the averaged gradient of the entire data, which is g.  H=\frac{1}{n} (H_1 + H_2, ..., H_n) is the Hessian over the entire data. So, what I am doing here is that: I first compute H_1 g, then H_2 g, and finally H_n g.  Does this make sense?

If you have any further question, please let me know.

Thanks for your reply, regarding the first point I think there is still something I am missing. Even in your re-derivation of the snip criteria, you specify it as follows: theta_q * dL/d theta_q , that is, you multiply the weight magnitude and take the derivative of the loss w.r.t. the weight.
However, in the snip paper, they introduce binary c variables per weight and their criteria is explicitly dL/dc i.e. without multiplying by theta_q and the derivative is taken w.r.t. c not theta_q. This is also what happens in the snip code.
I do not understand why those differences exist, to me these are two different pruning criteria. And tbh, I still don't understand why you multiply by theta_q in your criteria either. In the paper, the pruning importance is derived to be Hg, then there is a sentence that simply reads:
GraSP uses eqn. (7) as the measure of the importance of each weight. where eqn (7) is Hg. Then afterwards theta_q is multiplied to it for no apparent reason. If Hg quantifies the importance of the weight, why don't I just rank weights based on that importance and remove the least important ones?
Thank you for bearing with me on this one.

Thanks for the questions.

If you take derivative w.r.t. c, then you will get \theta_q * dL/d \theta_q, and in SNIP, they take the absolute value of it as the importance measure. In our paper, we interpret it from another perspective. That is, if we aim to preserve the original loss, then we will get the same pruning criteria as SNIP.

eqn. (7) is \delta Hg, not only Hg. For pruning a single weight, \delta is simply -\theta_q. That's why we get eqn. (8).

Thanks Alec. I have another minor question: In your paper you state that:
For a given pruning ratio p, we obtain the resulting pruning mask by computing the importance score of every weight, and removing the bottom p fraction of the weights
but in the code it seems you keep the parameters with the smallest importance:
keep_masks[m] = ((g / norm_factor) <= acceptable_score).float()
Is this simply because of the -ve sign in -theta.Hg (so importance is flipped) or is there something else I am missing?


360º processing

Hi,
This is a fantastic work! I am a PhD focused on Deep Learning based Motion Prediction (MP), and I would like to implement your algorithm to provide these trackers to my MP model (https://github.com/Cram3r95/argo2goalmp), as the final part of my thesis (Chapter 5. Applications), in particular in the CARLA simulator.
Nevertheless, in order to predict the different objects, we usually require 360º processing, and I think most SOTA MOT algorithms that are fused with camera information are focused on front camera field of view, since they are validated in KITTI. Do you know if your algorithm would be easily extended to 360º Multi-Modal MOT?
Again, fantastic work. Keep going.

Hi,
Thank you for your attention! Our algorithm can support the fusion of 360-degree views from both cameras and LiDAR. You can refer to the code for running the Waymo dataset section. We have implemented the fusion of five cameras and LiDAR in the Waymo dataset.

@wangxiyang2022 oh, that's wonderful. I thought both KITTI and Waymo were only evaluated in the front-camera field of view. Then, Waymo is evaluated in the 360º space, right?

@wangxiyang2022 On the other hand, why do you use Kalman Filter instead of EKF / UKF, which are more suitable for Autonomous Driving purposes in order to model non-linearities?


Add ESLint extend support to eslint-loader

This allows users to extend the base ESLint config, so long as it is extending the react-app config.
Config in package.json
Initially, this is limited to users that use package.json to configure ESLint. We can extend this later, but it will have performance implications as we would need to:

Find which config file the user is using.
Read that file, and confirm that it extends the react-app config.
Set that config to eslint-loader.

Eslint provides tooling to support this, but again, this will impact performance.
Users could work around this, by setting the following in package.json:
{
 "eslintConfig": {
   "extends": ["react-app", "./my-eslint-config.js"]
 }
}

Documentation
Once this approach is approved, I'll update our ESLint documentation to outline usage.

The reason config wasn't configurable in the first place is to prevent hyper-opinionated configs full of styling rules from showing up in the browser overlay integration.
If we allow arbitrary configs we should make sure that this is still the case. E.g. at least adding Airbnb config shouldn't make a wrong indentation appear as a build error.

Maybe we could force the linter to always have eslint-config-prettier applied on top so that styling rules are still force-disabled. However, there are still a bunch of rules in popular configs that are too restrictive, and we want to make it hard to enable them in the default setup.

How do users override TypeScript rules? That was the main driver of this change.

If you're enforcing that users still include react-app then how come you don't just enable it by default instead of making people add it in when they extend?
Seems less error prone for the user if you do something like
if (!extends.includes('react-app')) { extends.unshift('react-app') }
Whilst it's not technically required, pretty much every plugin (and base eslint rules definitely do) follows the exported config structure defined by eslint:
https://eslint.org/docs/developer-guide/working-with-rules#rule-basics
This means that every rule should have a meta.type field on its definition which can help you figure out what should be shown in the overlay.
The value should be one of "problem" | "suggestion" | "layout".
I would just setup the hard rule that a plugin must have type set to "problem" to show up in the overlay. But you might want to review the rules you've got enabled by default to double check that.
Similarly there is a docs.category field, but that one is a free string, so you can't really rely upon its value. A lot of plugins follow eslint's lead and go with something along the lines of 'Best Practices' | 'Stylistic Issues' | 'Variables' | 'Possible Errors'

I would just setup the hard rule that a plugin must have type set to "problem" to show up in the overlay.

This sounds reasonable to me.

Great suggestions, @bradzacher. Thanks!
If users don't extend react-app in their config, they won't get proper ESLint extension integration, but i guess we can cover that in the docs.

@gaearon I think we're all on the same page. I personally don't like breaking builds unless it's a serious issue, but we're trying to allow people to have more control over this.
We can use recommend people to set warn for anything that shouldn't break the build.
@bradzacher, as @ianschmitz mentioned, it's about consistency with IDE integration. I'd prefer that users know what's going on - because they explicitly set that config - rather than us adding things in the background.
I'd be interested to hear more about your idea @bradzacher, as I can't see a simple way to configure that in eslint-loader or ESLint itself. We don't want to be passing all rules.

I was just weighing in from a linting perspective!
I had a quick look and there's a lot of codepaths - I'm not sure how it would work within this project.
(pure JS at this scale is hard to figure out exactly without types or codebase knowledge...)
With my lack of knowledge of what CRA error output looks like (I've never properly used CRA), it looks like it could be a bit of a larger change across a number of files?
I wasn't sure how the errors get passed via the socket to your webpack client (is this an automatic webpack thing?)

Sorry @bradzacher, I misunderstood and thought you meant we could configure ESLint that way.
I think it would be a fairly large change... And I'm not sure of the performance and maintainability impacts it might have. @gaearon @ianschmitz What do you think?

@gaearon not wanting opinionated linting to break builds is an opinion, though.  On my project, I want to enforce code style, and have good reasons to believe it should be on save rather than on commit which I don't think I need to go into here.
CRA is awesome, but if I want to lint aggressively, I need to maintain a fork, or eject, both options of which are way over the top for something so simple.
At least give us the option.

Thanks for this PR.
This is useful when you migrate from an older codebase (using CRA v1 for example), and need to convert a few eslint errors to warnings, just to npm run dev at least
@mrmckeb I'm not a fan of eslint settings in package.json, could we allow also an .eslintrc file? It's a jsonc file, so it's probably fast to parse, just like package.json

As @caub says, except also .eslintrc.js - because I like commenting why a rule is there.

The reason config wasn't configurable in the first place is to prevent hyper-opinionated configs full of styling rules from showing up in the browser overlay integration. If we allow arbitrary configs we should make sure that this is still the case. E.g. at least adding Airbnb config shouldn't make a wrong indentation appear as a build error.

@gaearon Isn't this configurable by the developer? Eslint rules differentiate between warning or error (1 or 2), so a developer gets to choose what shows up in the overlay? I think that's currently how it's set up now: e.g. exhaustive-deps shows up as a warning in the browser console, not as an error in the app overlay.

Maybe we could force the linter to always have eslint-config-prettier applied on top so that styling rules are still force-disabled.

I also don't think we should mandate prettier usage. The VSCode extension is actually currently broken which makes it very difficult to use while working locally.
In general, I don't understand why CRA cares what a user does with their codebase after initialization, and should only provide guard rails for things that would break other parts of the CRA build tools. For instance, we cannot import files outside the src directory. This is a necessary opinion for CRA to function properly. But I can add custom linting rules and it has no impact on the rest of the toolchain, as far as I know.
IMO trying to mandate linting rules is no different than mandating usage of, say, RXJS instead of Redux. This seems out of scope for CRA.
@caub thank you for doing this. I think it would be good to support .eslintrc and .eslintrc.js, per @Asday 's comment, but that could certainly be done in a followup to at least unblock folks for now.

The VSCode extension is actually currently broken which makes it very difficult to use while working locally.

@dannycochran - The VSCode extension isn't technically broken, prettier-eslint is broken (using the option prettier.eslintIntegration switches the extension to use prettier-eslint instead of prettier directly).
Note that prettier and prettier-eslint are separate tools, the latter tool integrates the two tools together at fix time.
Also note that if you install the eslint extension, turn off prettier.eslintIntegration, and turn on eslint.autoFixOnSave - it will work around the issue.

@caub We could do that for sure. We could release without and perhaps drop it in as an update - I think at this stage we need to get something out, and we can then "enhance" once we've proven that it's working.

I agree that forcing the configuration via package.json for eslint configuration is not ideal. Some editor integrations will not properly parse package.json and some of them are so dumb that they only support .eslintrc and nothing else.
I suggest letting eslint's own config resolution do all the work:
baseConfig - set this to eslint-config-react-app. If .eslintrc, exists, eslint will merge both configs with the user config taking precedence. Document that the user should extends: react-app in their config.
ignore - remove the option to enable vendoring JS libs in src without forcing a reformat.
useEslintrc - remove the option, otherwise .eslintrc will not work.
So basically, the config would just be baseConfig, optionally extended by the user to their liking. No special environment variables required and eslint will do all the config resolution itself.

This PR was updated yesterday to do just that @silverwind (cool name btw), but I neglected to leave a comment.

Ah I see. I think you need to update docs to remove the mentions of EXTEND_ESLINT which is gone.
Also would like to see ignore and eslintrc options removed for reasons mentioned above:
ignore: I don't really see a point of restricting users from being able to ignore some files in regards to linting.Some old-school JS libraries not available as modules are often only available in a minified format which is a pain to integrate without an option to ignore it from the linter.
eslintrc: I see this as essential for users to be free to choose where they config eslint, either a package.json prop or a standalone config file.

@silverwind that was an oversight, corrected now. That env will be required until the next major release, where we may make this the default.
The config options are already updated.
The ignore issue isn't related to this PR, but worth raising. If you want to raise an issue about that, here's the original PR that introduced that. https://github.com/facebook/create-react-app/pull/2115

Hey, this PR sounds like an awesome addition to CRA but I'm wondering how does it compare to the existing way of extending eslint? In the editor setup docs, it is recommended to create an eslintrc.json file at the root of the project which extends the eslint-plugin-react-app.

add a file called .eslintrc.json to the project root:
{
 "extends": "react-app"
}
...
Note that even if you edit your .eslintrc.json file further, these changes will only affect the editor integration.

The ESLint configuration file can also (already) extend other configurations or plugins.
My .eslintrc.json looked like the following and always worked in VS Code.
"extends": [
  "plugin:@typescript-eslint/recommended",
  "react-app",
  "plugin:import/errors",
  "plugin:import/warnings",
  "plugin:import/typescript"
],

Only recently, I uninstalled all global eslint plugins in preparation for the ESLint v6 release and I started experiencing issues as described here. Is it possible that this PR is related or will even fix my issue?
Let me know if you want me to create a new issue entirely but since it is related to so many different projects (ESLint, lerna, CRA, yarn), I'm kind of lost on where to look for help.

Hi @ReasonableDeveloper, this is nothing special in that sense - we're just requiring that people extend our config for now. We're not doing anything clever here, so you'll be able to work as you always have with ESLint.

Creating a custom .eslintrc.json works for editor integrations because those don't use the webpack config but it's actually a footgun because react-scripts and webpack dev server will ignore the file and will lint differently (using their hardcoded config), until this PR which should actually allow custom config to work the same everywhere.


ui: add custom error handling page

This just catches any exception and avoid showing stacktrace.

LGTM, why for 4.5 will you merge forward?

yeah, will merge on both 4.5/master :)

ok, I will push to 4.5
Op di 19 mei 2015 om 00:10 schreef Rohit Yadav<EMAIL_ADDRESS>
yeah, will merge on both 4.5/master :)
—
Reply to this email directly or view it on GitHub
https://github.com/apache/cloudstack/pull/256#issuecomment-103228420.

you beat me
Op di 19 mei 2015 om 00:11 schreef Daan Hoogland<EMAIL_ADDRESS>
ok, I will push to 4.5
Op di 19 mei 2015 om 00:10 schreef Rohit Yadav<EMAIL_ADDRESS>yeah, will merge on both 4.5/master :)

—
Reply to this email directly or view it on GitHub
https://github.com/apache/cloudstack/pull/256#issuecomment-103228420.

oh, I did not know you were doing it :)
Pushed to master as well.

@DaanHoogland I could be faster as I use a Github PR merging automation alias, you may try this: https://github.com/bhaisaab/dotfiles/blob/master/git/gitconfig#L46
Usage: git pr

thanks @bhaisaab nice alias albeit of the write once read never kind, it works ;)


Update nl.json

Added the missing variables based on the en.json file.

Could you please add an updated changelog?

Could you please add an updated changelog?

@MichMich What's the best way to do? Creating a new pull request or is there some way to add it to the current pull request?
I would prefer the last option, but can't seem to find the correct way in the Github GUI, so help is more than welcome ;)

If you change the changelog.me in the branch you did the PR from, the PR will automatically be updated and include the changelog. 👍🏻

Codecov Report

Merging #2605 (6e12484) into develop (7fdf7de) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff            @@
##           develop    #2605   +/-   ##
========================================
  Coverage    70.64%   70.64%
========================================
  Files           16       16
  Lines          821      821
========================================
  Hits           580      580
  Misses         241      241

Continue to review full report at Codecov.

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

Merged! Thanks for your contribution!

Great work!! ✅💸


Created components

Delete all the boilerplate from Create React App (text, images, styles). :heavy_check_mark:

Create a new directory called components. :heavy_check_mark:

Inside components, create a new Calculator.js file. :heavy_check_mark:

Implement the design only (JSX and CSS) :heavy_check_mark:

Use functional components. :heavy_check_mark:

Create at least 1 child component. :heavy_check_mark:

Test it in the browser; it should render without problems.

firstTestCalculator.webm

@ShadyShawkat Thanks for your review!! :smile:


Add consul role for amazon-linux + yum based image

Amazon Linux is based heavily on RHEL6, which doesn't use systemd, requiring a fairly different set of files for the dummy network interface set-up.

Closed, splitting it to https://github.com/GovTechSG/amazon-linux-consul.


inconsistent implementation of update for task specific weights with the description in paper

Hi, thanks for releasing this awesome code! Currently, i am working on reproducing the result on cityscapes in paper. I found that in paper the description of mtl update equation say the weights of task specific subnetwork should be updated with original learning rate, then the shared weights of network is updated with the MGDA algorithm. But i didnt find the corresponding implementation in code where both the shared weights and task specific weights are updated consistently by timing loss of different task with a weight factor determined by MGDA. Am i missing something here, or is this a implemention trick?

Hi @ozansener, I'm also trying to reproduce and utilize the method. And the above also confuses me a bit as well. Algorithm 2 line 2 shows the that the task specific params are updated without any scaling factor, then line 4 would be replaced with the solver using your approximation and alphas would be calculated using gradients of Lt with respect Z. Then in line 5, only the shared parameters are updated with the alpha weighed sum of losses.
However, your implementation uses only one optimizer on both shared and task specific parameters: https://github.com/intel-isl/MultiObjectiveOptimization/blob/1c6d0d503ccf33cc83d5b6c356ca2fc2bf255606/multi_task/train_multi_task.py#L57-L65
and updates all of them with alpha weighed gradients:
https://github.com/intel-isl/MultiObjectiveOptimization/blob/1c6d0d503ccf33cc83d5b6c356ca2fc2bf255606/multi_task/train_multi_task.py#L174-L185
These two approaches don't seem to be equivalent, is this an unintended change in the implementation or is there something @bsaint and myself are missing?

@bsaint and @milos-popovic Thanks for raising the issue. Yes, there is a discrepancy with the paper and the code. We used this code to get all the results so please use the codebase. I will run some experiments and will update the paper if necessary.

Can you provide the inference code?  @ozansener

Hi, @bsaint, @milos-popovic,
Have you figured out the discrepancy and reproduced the results on MultiMNIST, CelebA or CityScapes? Thank you.


DDT-14: Create a PendingMessage model for the subscription logic

Signed-off-by: Niels Thykier<EMAIL_ADDRESS>

FTR: This will need to be combined with some changes in TNT to make sense


Quarkus blogpost

@gunnarmorling Changes added

Hey @jpechane, I've added one more commit. Can you take a look whether it's ok to you?

@gunnarmorling Fine for me, thanks for the improvements!

Applied. Thanks a lot, @jpechane for the great work and @gsmet for reviewing!


Disable some constexpr only for windows

In linux having all with constexpr works (otherwise, it fails)
In windows, if these are declared as constexpr compilation fails :D.
Will revisit after release.

pfnCI, test this please.

Jenkins CI test (for commit 0d29cc31ff0006d1380a2a4f4ab2c0fc95ef4230, target branch master) failed with status FAILURE.

Merging as test failures are unrelated and Windows build succeeded.

For record: this is a follow-up for #4713 and #4730


4.42.0 update erred out on ghost-cli/sqlite/knex (vscode?) deps

Issue Summary
Doing a routine upgrade from 4.41.3 to 4.42 I got a node dep error.
Steps to Reproduce
As root I updated npm to 8.6, and ghost-cli@latest. I switched to my ghost user, and did ghost update which erred out, saying Cannot find module '@vscode/sqlite3'\n" from the knex node package. It offered to roll back to the last version, but failed, and then the site wasn't able to be manually brought back up with ghost restart or ghost start. It's on a VM at DO, so I just reverted the whole VM to a recent backup to recover.
Ghost Version
4.42
Node.js Version
12.2
How did you install Ghost?
ghost-cli
Database type
SQLite3
Browser & OS version
NA
Relevant log / error output
Sorry, I was scrambling to get it back up so I only snagged `Cannot find module '@vscode/sqlite3'\n"` which seemed to be an error from `knex` - the fact that when the upgrade failed the offered rollback not working was making me sweat bullets! The output also suggested reinstalling `ghost-cli` to fix probs with `sqlite3` but when I tried that it didn't seem to change anything, either way `ghost doctor` didn't report anything wrong.

Code of Conduct

[X] I agree to be friendly and polite to people in this repository

Same here plus I can't even clean install on another server due to some dependency mismatch and a yarn error.

I encounter exactly the same problem. Can't even revert back to old version with "ghost update --rollback"

Please see this comment on the forum for the reason and fix 🙂


compatibility with dotnet core?

Is there any plan to make this compatible with .net core 1.0.0?

not particularly.
I happen to know that all the previous contributors to this repo have moved onto other projects where this library is not required.
PRs welcome though.  :wink:


Error: ModuleNotFoundError: No module named 'xrpl.clients'; 'xrpl' is not a package

from xrpl.clients import JsonRpcClient
JSON_RPC_URL = "https://s2.ripple.com:51234/"
client = JsonRpcClient(JSON_RPC_URL)

Have you downloaded the package with pip install xrpl in the command-line?

yes ,. docs said like this pip install xrpl-py
I'm switching from py to JS - now what I did was use the xrpl ledger tutorial for JS for testnet ,. I was able to use the wallet however it's not showing the fund, still trying to figure this out.
I was hoping they can fix the python 3.8 versioin and higher is good right? coz I tried 3.7 still getting same error. Try to double check the docs if might need an update

Python 3.7 and 3.8 are both supported, as are all subsequent Python versions. The code works for me locally with the latest version of xrpl-py (v2.5).
That error usually occurs because the package hasn't been installed. Perhaps it was installed in the wrong location or something.

Closing as I believe @mvadari is correct about the root cause. This stack overflow may help verify whether it is intalled: https://stackoverflow.com/questions/1051254/check-if-python-package-is-installed


candidate compound assignment implementation

First hack at this, I would like a second set of eyes on the operation precedence. Validated the tests cases against the python repl.

I think it's good, thank you for another contribution


Adjusted Odalic Core score computation for classes - hierarchy depth

change score of classes by hierarchy depth

Thanks:

The problem is that such extension is really inefficient - for each resource, you search for the parent class online (so if there is 1000 cities, you try to search for the same class hierarchy 1000x). This should be really solved by loading the ontology into the memory and pre-processing, so that you can quickly get information about the "depths" of the considered class (and what is more important - to know if there is any other more particular class as a potential classification candidate for the given resource).

Ad score computation - the actual depth is not that important (you can have ontology with lots of irrelevant classes at the top) - as you already find out with YAGO. What is more important - and the formula should take into account - is: when there are multiple classification candidates for the given resource R, look which one is the most particular and which one is more generic and penalize those generic/boost those more particular!! So in the formular, I would even not calculate with the depth as this is irrelevant - or may be misleading - what is important is to prefer more particular candidates for the given resource (if there are 4 candidate classes, A, B, C, D, but you know that A, B is subclass of C, then such class C should be penalized as there are more particular (and probably better) candidated.


Print unescaped job name and consistently order listing

Make sure jenkins list always prints jobs ordered by their internal ID
Use unescaped job names when they're not in a URL

@evansolomon thanks!


[webhooks] add simple webhook models that are emitted when ACA-Py emits events

Credentials
State should be issue cred v2 state. v1 state should be mapped to v2 state
ACA-Py Topics

[ ] issue_credential - prefix v1- to credential_id
[ ] issue_credential_v2_0 - prefix v2- to credential_id

{
   "topic": "credentials",
   "payload": {
        "credential_id": "v1-xxxx-xxxx-xxx-xxxx", // or v2-xxxx
         "state": "issue-credential-v2-state"
    }
}

Proofs
State should be present proof v2 state. v1 state should be mapped to v2 state
ACA-Py Topics

[ ] present_proof - prefix v1- to proof_id
[ ] present_proof_v2_0 - prefix v2- to proof_id

{
   "topic": "proofs",
   "payload": {
        "proof_id": "v1-xxxx-xxxx-xxx-xxxx", // or v2-xxxx
         "state": "present-proof-v2-state"
    }
}

Connections
Distinguish between connection protocols using the connection_protocol property on the connection record. Can be either connections/1.0 or didexchange/1.0. Dependant on the protocol 0023 or 0160 should be prefixed to the connection_id.

THIS NEEDS SOME WORK. The DIDExchange and connection APIs are not unified.

ACA-Py Topics

[ ] connections

{
   "topic": "connections",
   "payload": {
        "connection_id": "0023-xxxx-xxxx-xxxx-xxxx", // or 0160-xxx-xxx-xxx
         "state": "oob-state"
    }
}

Basic Messages
ACA-Py Topics

[ ] basicmessages

{
   "topic": "basic-messages",
   "payload": {
         "content": "hello"
    }
}

Requirement from #159: The FastAPI must be able to listen to and respond to webhooks coming from ACA-Py. See #159 for more information.


Changed plotting options to fix problems which arose due to ggplot2 updates

Compare issue 28:

legend.position=0 does not seem to work anymore --> changed to "legend.position="null"
"aspect=1" in unnamed-chunk-17 led to code to fail when compiling to html
"fig.width=figwidth" and "fig.height=figheight" do not seem to be legit fig.width and fig.height options --> changed this

Checked output with included data set and seems to look as before issue arose.
PR checklist

[x] This comment contains a description of changes (with reason).
[x] If you've fixed a bug or added code that should be tested, add tests!
[x] Make sure your code lints (nf-core lint).

I'm checking this PR now.

Thanks :-)


chore(ci): add missed files from template.

add missed files from repo-template
add script to ensure dependencies along with version

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@a504f3b). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master       #1   +/-   ##
=========================================
  Coverage          ?   70.27%
=========================================
  Files             ?       86
  Lines             ?     8620
  Branches          ?        0
=========================================
  Hits              ?     6058
  Misses            ?     2302
  Partials          ?      260


Unable to make get requests

I'm on version 4.0.2 and I can't make HTTP GET requests for any of my endpoints. The jest timeout always times out even if I change the timeout. I can make POST,PUT,DELETE,PATCH requests without any issues. Wondering if anybody else had this problem

turns out webpack was building whenever i sent a get request so it would time out before webpack built


Fixed config group attachment error

When restoring configuration groups, it fails with
INFO: Config-group edge_basic, associate: C8K-172343D2-7380-8B1B-5509-6FCB24AFA689, C8K-15411CCC-D476-0B3B-21F2-5D6AC387EE7B Traceback (most recent call last):   File "/Users/tzarski/Downloads/sastre-master/cisco_sdwan/__main__.py", line 151, in main     task_output = task.runner(parsed_task_args, api)   File "/Users/tzarski/Downloads/sastre-master/cisco_sdwan/tasks/implementation/_restore.py", line 156, in runner     getattr(TaskRestore, attach_step_fn)(self, api, parsed_args.workdir)   File "/Users/tzarski/Downloads/sastre-master/cisco_sdwan/tasks/implementation/_restore.py", line 294, in restore_deployments     deploy_data = self.cfg_group_deploy_data(   File "/Users/tzarski/Downloads/sastre-master/cisco_sdwan/tasks/common.py", line 581, in cfg_group_deploy_data     affected_uuids = restore_values(group_name, saved_id, target_id)   File "/Users/tzarski/Downloads/sastre-master/cisco_sdwan/tasks/common.py", line 555, in restore_values     diff_uuids = diff_values.put_raise(api, configGroupId=config_grp_target_id)   File "/Users/tzarski/Downloads/sastre-master/cisco_sdwan/base/models_vmanage.py", line 665, in put_raise     return [entry.get('device-id', entry) for entry in result]   File "/Users/tzarski/Downloads/sastre-master/cisco_sdwan/base/models_vmanage.py", line 665, in <listcomp>     return [entry.get('device-id', entry) for entry in result] AttributeError: 'str' object has no attribute 'get'
This is because results is already list of string uuids so no reason to parse it. With that fix config group attachment works OK in 20.12.

Closing as new PR is opened to dev branch.

Thank you Thomas. Would be able to test the fix in 20.10 release as well? I suspect we need to accommodate both scenarios. If that's the case, we'd need to update with something like:
return result if isinstance(result, list) else [entry.get('device-id') for entry in result]
Also can you please send the PR to dev-1.23 branch?


feat: allow z option passing in function

Brief Information
This pull request is in the type of:

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

What does this PR do?

Fixed issues
#6034 Cannot select overlapping bubbles in a scatter chart
Details
Before: What was the problem?
in demo https://echarts.apache.org/examples/zh/editor.html?c=scatter-aqi-color
var dataBJ = [
    [1,75,90,56,0.46,18,6,"良"],
    [2,175,310,21,0.65,34,9,"优"],
    [3,78,7,63,0.3,14,5,"良"]
];

var dataGZ = [
    [1,26,37,27,1.163,27,13,"优"],
    [2,175,150,71,1.195,60,8,"良"],
    [3,78,150,74,1.363,37,7,"良"]
];

If the data is the same as above, the second day's databj is greater than datagz, and the third day's databj is less than datagz, then no matter how z is set, one of the small data can't be selected.

After: How is it fixed in this PR?

allow z option passing in function:
    series: [
        {
            name: '北京',
            type: 'scatter',
            itemStyle: itemStyle,
            data: dataBJ,
            z: ({dataIndex}) => {
                if (dataIndex === 2) {
                    return 5;
                }
            }
        },
     {
            name: '广州',
            type: 'scatter',
            itemStyle: itemStyle,
            data: dataGZ,
            z: ({dataIndex}) => {
                if (dataIndex === 1) {
                    return 5;
                }
            }
        }
    ]

Usage
Are there any API changes?

[x] The API has been changed.

z
Related test cases or examples to use the new APIs
test/scatter-overlap.html line 328
Others
Merging options

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

Other information

Hi, I'm not sure if it's the right way to solve issues in the screenshot. Because it's hard to know which data should be put in the front.


Update authn-github.md

Homepage URL: This would be the URL of your Spinnaker Gate e.g. https://spinnaker.acme.com -> should be the Gate URL
preEstablishedRedirectUri: https://gate.spinnaker.acme.com/login -> should be removed since we are configuring this part in the Github page under callback url (step 4 at GitHub OAuth in GitHub)

Resolves GitHub issue:

Resolves Jira: [JIRAPROJECT-123]

The title of this Pull Request needs to be changed to match the format:
<type>(<scope>): <subject>

See more details here: https://www.spinnaker.io/community/contributing/submitting/#commit-message-conventions
Some common examples are:
feat(armory.io): add docs.armory.io
fix(parser): grammar and spelling
style(loadingPage): made it super pretty!
refactor(helpMessages): changed order to make more sense

The title of this Pull Request needs to be changed to match the format:
<type>(<scope>): <subject>

See more details here: https://www.spinnaker.io/community/contributing/submitting/#commit-message-conventions
Some common examples are:
feat(armory.io): add docs.armory.io
fix(parser): grammar and spelling
style(loadingPage): made it super pretty!
refactor(helpMessages): changed order to make more sense


how to add circular motion (lua)

Describe your problem here.
well i need it tho
i cant find it on https://shadowmario.github.io/psychengine.lua/
maybe its doTweenCircularMotion() but its fake
any codes?
-- https://gamebanana.com/questions/75929
Are you modding a build from source or with Lua?
Lua
What is your build target?
Windows x64
Did you edit anything in this build? If so, mention or summarize your changes.
No response

well i found it
doTweenX('pIgasd', 'pIg', ((screenWidth / 23) - (1680 / 2)) + (math.sin((currentBeat) + 10) * 300), 0.001)
by https://github.com/ShadowMario/FNF-PsychEngine/issues/771


The path of the use href enclosed in a button is broken in production build

Describe the bug
App.vue:
<template>

Displayed

  <svg><use href="icons.svg#icon-name"></use></svg>

Not shown in production build

  <button><svg><use href="icons.svg#icon-name"></use></svg></button>
</template>

icons.svg:
<svg aria-hidden="true" style="position: absolute; width: 0; height: 0; overflow: hidden;" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<defs>
<symbol id="icon-name" viewBox="0 0 30 30">
<path d="M20,12a5,5,0,1,1-5-5A5,5,0,0,1,20,12ZM15,1A14,14,0,1,0,29,15,14,14,0,0,0,15,1Zm8.38,22.57a8.84,8.84,0,0,0-16.76,0,12,12,0,1,1,16.76,0Z"/>
</symbol>
</defs>
</svg>

Regarding the above code:
In vite dev server, both are displayed correctly.
In the vite production build, the svg icon surrounded by buttons is not displayed.
The reason for this is that the #bar in  is removed from the production build output.
The problem looks a bit similar to #3822
Reproduction
You can check this by adding the above code to the scaffold App.vue generated by yarn create @vitejs/app.
System Info
System:
    OS: Linux 5.10 Alpine Linux
    CPU: (4) x64 Intel(R) Core(TM) i7-6920HQ CPU @ 2.90GHz
    Memory: 1.11 GB / 3.84 GB
    Container: Yes
    Shell: 1.32.1 - /bin/ash
  Binaries:
    Node: 15.10.0 - /usr/bin/node
    Yarn: 1.22.10 - /usr/bin/yarn
    npm: 6.14.12 - /usr/bin/npm
  npmPackages:
    @vitejs/plugin-vue: ^1.2.3 => 1.2.4
    vite: ^2.3.8 => 2.3.8

Used Package Manager
yarn
Logs
No response
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Make sure this is a Vite issue and not a framework-specific issue. For example, if it's a Vue SFC related bug, it should likely be reported to https://github.com/vuejs/vue-next instead.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.

This is indeed the same as https://github.com/vitejs/vite/issues/3822 and is fixed when tested locally with Vite 2.8.6.


Cpp14

Will updating to c++14 have any issues with our CI and deployment? I have some memory of a discussion like this when we first started lightning, and c++11 was the compatible option.