kube-vip Cloud Provider doesn't work on any pods at worker nodes

Describe the bug
kube-vip Cloud Provider doesn't work on any pods at worker nodes.
But if the pods are at master nodes, it works.
kubectl get pods -A -o wide

NAMESPACE     NAME                                                    READY   STATUS      RESTARTS      AGE   IP               NODE       NOMINATED NODE   READINESS GATES
default       nginx-558db87554-fbf9b                                  1/1     Running     0             28m   <IP_ADDRESS>        kworker1   <none>           <none>
kube-system   kube-vip-cloud-provider-0                               1/1     Running     0             11m     <IP_ADDRESS>        kworker1   <none>           <none>
kube-system   kube-vip-ds-52q75                                       1/1     Running     0             34m     <IP_ADDRESS>   kmaster1   <none>           <none>
kube-system   kube-vip-ds-h6rff                                       1/1     Running     0             29m     <IP_ADDRESS>   kmaster2   <none>           <none>
kube-system   rke2-ingress-nginx-controller-fqsp2                     1/1     Running     0             24m     <IP_ADDRESS>   kworker1   <none>           <none>
kube-system   rke2-ingress-nginx-controller-jl6cb                     1/1     Running     0             39m     <IP_ADDRESS>   kmaster1   <none>           <none>
kube-system   rke2-ingress-nginx-controller-q5tm2                     1/1     Running     0             28m     <IP_ADDRESS>   kmaster2   <none>           <none>

kubectl get svc -A

NAMESPACE     NAME                                      TYPE           CLUSTER-IP      EXTERNAL-IP      PORT(S)                      AGE
default       nginx                                     LoadBalancer   <IP_ADDRESS>    <IP_ADDRESS>   80:30551/TCP                 41s
kube-system   rke2-ingress-nginx-controller             LoadBalancer   <IP_ADDRESS>    <IP_ADDRESS>   80:31955/TCP,443:31215/TCP   17m

I cannot curl my nginx  EXTERNAL-IP
curl -v http://<IP_ADDRESS>

*   Trying <IP_ADDRESS>:80...

But I can ping nginx EXTERNAL-IP
ping <IP_ADDRESS>

64 bytes from <IP_ADDRESS>: icmp_seq=0 ttl=64 time=0.055 ms
64 bytes from <IP_ADDRESS>: icmp_seq=1 ttl=64 time=0.094 ms

But I can curl my ingress EXTERNAL-IP <IP_ADDRESS>
Then I tried to deploy nginx to master nodes.
I curl nginx EXTERNAL-IP successfully.
Environment (please complete the following information):

OS/Distro: [Ubuntu 2004]
Kubernetes Version: [rke2 v.1.23]
Kube-vip Version: [0.4.4]
kube-vip-cloud-provider:v0.0.2

kube-vip-cloud-provider.yaml:
apiVersion: v1
kind: ServiceAccount
metadata:
  name: kube-vip-cloud-controller
  namespace: kube-system
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
  annotations:
    rbac.authorization.kubernetes.io/autoupdate: "true"
  name: system:kube-vip-cloud-controller-role
rules:
  - apiGroups: ["coordination.k8s.io"]
    resources: ["leases"]
    verbs: ["get", "create", "update", "list", "put"]
  - apiGroups: [""]
    resources: ["configmaps", "endpoints","events","services/status", "leases"]
    verbs: ["*"]
  - apiGroups: [""]
    resources: ["nodes", "services"]
    verbs: ["list","get","watch","update"]
---
kind: ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  name: system:kube-vip-cloud-controller-binding
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: system:kube-vip-cloud-controller-role
subjects:
- kind: ServiceAccount
  name: kube-vip-cloud-controller
  namespace: kube-system
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
  name: kube-vip-cloud-provider
  namespace: kube-system
spec:
  serviceName: kube-vip-cloud-provider
  podManagementPolicy: OrderedReady
  replicas: 1
  revisionHistoryLimit: 10
  selector:
    matchLabels:
      app: kube-vip
      component: kube-vip-cloud-provider
  template:
    metadata:
      labels:
        app: kube-vip
        component: kube-vip-cloud-provider
    spec:
      containers:
      - command:
        - /kube-vip-cloud-provider
        - --leader-elect-resource-name=kube-vip-cloud-controller
        image: ghcr.io/kube-vip/kube-vip-cloud-provider:v0.0.2
        name: kube-vip-cloud-provider
        imagePullPolicy: Always
        resources: {}
      dnsPolicy: ClusterFirst
      restartPolicy: Always
      schedulerName: default-scheduler
      securityContext: {}
      terminationGracePeriodSeconds: 30
      serviceAccountName: kube-vip-cloud-controller

Given both of these issues are on RKE, i'm assuming that there must be some logic that dictates that worker nodes can't do kube-system things..

This is an old conversation, please feel free to re-open or create a new issue if needed.


Throw errors instead of returning null when serialization/ deserialization fails

In Java, if serialization/ deserialization fails, instead of propagating the error, it is logged and ignored, and null is returned instead. For example:
https://github.com/ably/ably-flutter/blob/21c49b9883bb3cfb451774376f842f87726b61f3/android/src/main/java/io/ably/flutter/plugin/AblyMessageCodec.java#L348-L357
It would be nicer during development to have an exception be thrown when serialization fails. We should consider throwing an exception when serialization/ deserialization fails.
┆Issue is synchronized with this Jira Story by Unito

Working link to mentioned comment: https://github.com/ably/ably-flutter/pull/140#discussion_r684479199


Not able to add package from file

For issues regarding the NuGet client tools (the Visual Studio extension, NuGet.exe command line tool, etc.), file a bug on NuGet Home.
Describe the bug
I am trying very basic demo explained at https://softchris.github.io/pages/dotnet-core.html#download-and-use-a-package-from-the-nuget-repository
As explained in the demo, I am trying to add Newtonsoft.Json package to my project. I am behind the proxy and not able to download the package from https://api.nuget.org/v3/index.json. However, I have downloaded the package manually and attempting to add it to project.
Get-PackageSource
Name                             ProviderName     IsTrusted  Location

nuget.org                        NuGet            False      https://api.nuget.org/v3/index.json
NewtonSoft.Json                  NuGet            True       D:\mypoc\ignite\demo1\library\newtonsoft.json.12.0.3.nupkg
PSGallery                        PowerShellGet    False      https://www.powershellgallery.com/api/v2
To Reproduce
Project structure:
02/04/2020  12:27 PM              .
02/04/2020  12:27 PM              ..
02/04/2020  11:53 AM              bin
02/04/2020  12:21 PM               135 library.csproj
02/04/2020  11:57 AM         2,596,051 newtonsoft.json.12.0.3.nupkg
02/04/2020  11:53 AM              obj
02/04/2020  11:54 AM               183 Thing.cs
3 File(s)      2,596,369 bytes
4 Dir(s)  294,733,180,928 bytes free
dotnet add library package Newtonsoft.Json
Expected behavior
It should add the package
Screenshots

Additional context
Add any other context about the problem here.

@rajputvishwas , the command you are using - Get-PackageSource is used for PowerShell packages. Those are used for sharing PowertShell resources.
To configure dotnet to use your local folder to find packages you have a few options:

Update nuget.config file manually: https://docs.microsoft.com/en-us/nuget/reference/nuget-config-file
Use nuget.exe tool as described here: https://docs.microsoft.com/en-us/nuget/hosting-packages/local-feeds


Ensure Compliance with Nielsen's Usability Principles

Description: Review and adjust the website’s design and interactions to comply with Nielsen's 10 usability principles.
Acceptance Criteria: Website structure is clear and easy to navigate for users.

checked


pyeto install ERROR

I cannot install the pyeto package using 'pip install pyeto' from Jupyter.

Please resolve.

I am facing the same error for:
pip install pyeto
or
conda install pyeto
or
!pip install pyeto

Try the following:
pip install git
pip install git+https://github.com/woodcrafty/PyETo.git
OR if you are using the Anaconda prompt:
conda install pip git
pip install git+https://github.com/woodcrafty/PyETo.git

Duplicate of #3


Implements #145 - Auth flow

What does this PR do?
Implements the whole authentication flow.
Also handles these edge cases -

Browser not supported.
Thanos not installed.
Account not verified.
Nickname or email already registered with another account.

Requesting you to let me know if I've missed something over here.
How should this be manually tested?
It can't be tested through the preview URL because the backend isn't hosted yet.
On your local machine -

Get the backend up and running.
On the frontend, go to /auth and test the flow.
To test a few edge cases - try going to /auth on Safari(Browser not supported) and Incognito tab on Brave(Thanos not available).

Any background context you want to provide?
A few things that need to be implemented to make this robust(will be done later in a different PR) -

Store auth state in localStorage to persist login between browser refreshes.
Logic to check if the user is logged in to run on each page for auto-login.

if (windowLocalStorageAvailable()) { 8:18:22 PM:   782 |       localStorage = window.localStorage; 8:18:22 PM: > 783 |     } else if (window.globalStorage) { 8:18:22 PM:       |      ^ 8:18:22 PM:   784 |       // Firefox 2-3 use globalStorage 8:18:22 PM:   785 |       // See https://developer.mozilla.org/en/dom/storage#globalStorage 8:18:22 PM:   786 |       try { 8:18:22 PM:  8:18:22 PM:   WebpackError: ReferenceError: window is not defined
Somewhere window object being is used before the first load.
solution would be to add condition eg:
if(window !== undefined) { //proceeed }
@manangouhari When the build is failing, the first thing you should do is check the build preview(https://app.netlify.com/sites/blissful-mcnulty-82f253/deploys/6012cd6488eb220007562ef5).

if (windowLocalStorageAvailable()) { 8:18:22 PM:   782 |       localStorage = window.localStorage; 8:18:22 PM: > 783 |     } else if (window.globalStorage) { 8:18:22 PM:       |      ^ 8:18:22 PM:   784 |       // Firefox 2-3 use globalStorage 8:18:22 PM:   785 |       // See https://developer.mozilla.org/en/dom/storage#globalStorage 8:18:22 PM:   786 |       try { 8:18:22 PM:  8:18:22 PM:   WebpackError: ReferenceError: window is not defined
Somewhere window object being is used before the first load.
solution would be to add condition eg:
if(window !== undefined) { //proceeed }
@manangouhari When the build is failing, the first thing you should do is check the build preview(https://app.netlify.com/sites/blissful-mcnulty-82f253/deploys/6012cd6488eb220007562ef5).

@manangouhari When the build is failing, the first thing you should do is check the build preview(https://app.netlify.com/sites/blissful-mcnulty-82f253/deploys/6012cd6488eb220007562ef5).

That's what my instinct was. So far, I've gathered that beacon is using window under the hood and that's why the error. I've tried to circumvent that at several places by checking the if window is available. Still, no luck.

@manangouhari When the build is failing, the first thing you should do is check the build preview(https://app.netlify.com/sites/blissful-mcnulty-82f253/deploys/6012cd6488eb220007562ef5).

That's what my instinct was. So far, I've gathered that beacon is using window under the hood and that's why the error. I've tried to circumvent that at several places by checking the if window is available. Still, no luck.

Try asking in beacon dev group for a solution.
On Thu, 28 Jan, 2021, 8:29 pm manangouhari<EMAIL_ADDRESS>wrote:

@manangouhari https://github.com/manangouhari When the build is
failing, the first thing you should do is check the build preview(
https://app.netlify.com/sites/blissful-mcnulty-82f253/deploys/6012cd6488eb220007562ef5
).
That's what my instinct was. So far, I've gathered that beacon is using
window under the hood and that's why the error. I've tried to circumvent
that at several places by checking the if window is available. Still, no
luck.
—
You are receiving this because your review was requested.
Reply to this email directly, view it on GitHub
https://github.com/buidl-labs/crypto-code-school-inside-tezos/pull/148#issuecomment-769142460,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AD6YAT6SC4XTGNPBUUV6S73S4F3VBANCNFSM4WXCWE7Q
.

Try asking in beacon dev group for a solution.
On Thu, 28 Jan, 2021, 8:29 pm manangouhari<EMAIL_ADDRESS>wrote:

@manangouhari https://github.com/manangouhari When the build is
failing, the first thing you should do is check the build preview(
https://app.netlify.com/sites/blissful-mcnulty-82f253/deploys/6012cd6488eb220007562ef5
).
That's what my instinct was. So far, I've gathered that beacon is using
window under the hood and that's why the error. I've tried to circumvent
that at several places by checking the if window is available. Still, no
luck.
—
You are receiving this because your review was requested.
Reply to this email directly, view it on GitHub
https://github.com/buidl-labs/crypto-code-school-inside-tezos/pull/148#issuecomment-769142460,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AD6YAT6SC4XTGNPBUUV6S73S4F3VBANCNFSM4WXCWE7Q
.

Traced this back to https://github.com/airgap-it/beacon-sdk/issues/108

Traced this back to https://github.com/airgap-it/beacon-sdk/issues/108

Has the edge case where the user hasn't created an account taken care of? (ref: https://www.figma.com/proto/eUQ3EIhaGW2N8CkTu6Ndnm/BUIDL-Labs---Tezos---Cryptoverse-Wars---Final-Designs?node-id=910%3A6540&viewport=241%2C488%2C0.015625&scaling=min-zoom)

Has the edge case where the user hasn't created an account taken care of? (ref: https://www.figma.com/proto/eUQ3EIhaGW2N8CkTu6Ndnm/BUIDL-Labs---Tezos---Cryptoverse-Wars---Final-Designs?node-id=910%3A6540&viewport=241%2C488%2C0.015625&scaling=min-zoom)

Has the edge case where the user hasn't created an account taken care of? (ref: https://www.figma.com/proto/eUQ3EIhaGW2N8CkTu6Ndnm/BUIDL-Labs---Tezos---Cryptoverse-Wars---Final-Designs?node-id=910%3A6540&viewport=241%2C488%2C0.015625&scaling=min-zoom)

That case is same as when Thanos isn't available.

Has the edge case where the user hasn't created an account taken care of? (ref: https://www.figma.com/proto/eUQ3EIhaGW2N8CkTu6Ndnm/BUIDL-Labs---Tezos---Cryptoverse-Wars---Final-Designs?node-id=910%3A6540&viewport=241%2C488%2C0.015625&scaling=min-zoom)

That case is same as when Thanos isn't available.

@bhaskarSingh please test it now.

@bhaskarSingh please test it now.

Suppose I have logged in, after which I uninstall the Thanos wallet. It still logs in even when the wallet is not present.

In case the wrong email id is entered. The above is shown, I think we need to update the copy here.
@harsh242 Can you also review it.

Suppose I have logged in, after which I uninstall the Thanos wallet. It still logs in even when the wallet is not present.

In case the wrong email id is entered. The above is shown, I think we need to update the copy here.
@harsh242 Can you also review it.

Has the edge case where the user hasn't created an account taken care of? (ref: https://www.figma.com/proto/eUQ3EIhaGW2N8CkTu6Ndnm/BUIDL-Labs---Tezos---Cryptoverse-Wars---Final-Designs?node-id=910%3A6540&viewport=241%2C488%2C0.015625&scaling=min-zoom)
That case is same as when Thanos isn't available.

It shouldn't be, Above I have installed Thanos but still it's telling me to install Thanos but rather it should prompt me to create a new account.

Has the edge case where the user hasn't created an account taken care of? (ref: https://www.figma.com/proto/eUQ3EIhaGW2N8CkTu6Ndnm/BUIDL-Labs---Tezos---Cryptoverse-Wars---Final-Designs?node-id=910%3A6540&viewport=241%2C488%2C0.015625&scaling=min-zoom)
That case is same as when Thanos isn't available.

It shouldn't be, Above I have installed Thanos but still it's telling me to install Thanos but rather it should prompt me to create a new account.

Suppose I have logged in, after which I uninstall the Thanos wallet. It still logs in even when the wallet is not present.
Ya ya, the same happened with me as well, I had disabled the extension.

In case the wrong email id is entered. The above is shown, I think we need to update the copy here.
When does this come up?
When used an older email👇

@harsh242 Can you also review the overall auth flow. It can be accessed at  /auth.
Same issues as you mentioned above.
Also to enhance the experience we can add loaders

Suppose I have logged in, after which I uninstall the Thanos wallet. It still logs in even when the wallet is not present.
Ya ya, the same happened with me as well, I had disabled the extension.

In case the wrong email id is entered. The above is shown, I think we need to update the copy here.
When does this come up?
When used an older email👇

@harsh242 Can you also review the overall auth flow. It can be accessed at  /auth.
Same issues as you mentioned above.
Also to enhance the experience we can add loaders

In case the wrong email id is entered. The above is shown, I think we need to update the copy here.

Copy can't be changed. It's Magic's copy.

Has the edge case where the user hasn't created an account taken care of? (ref: https://www.figma.com/proto/eUQ3EIhaGW2N8CkTu6Ndnm/BUIDL-Labs---Tezos---Cryptoverse-Wars---Final-Designs?node-id=910%3A6540&viewport=241%2C488%2C0.015625&scaling=min-zoom)
That case is same as when Thanos isn't available.

It shouldn't be, Above I have installed Thanos but still it's telling me to install Thanos but rather it should prompt me to create a new account.

Need to update the copy to reflect that either install thanos or create an account.
In the code I'm using a function provided by Thanos to check availability, it returns false on both conditions - not installed or account not created.

Suppose I have logged in, after which I uninstall the Thanos wallet. It still logs in even when the wallet is not present.

Will debug this.

TODO left #152


B2sum: add -l/--length option

Summary
This pull request adds support for the -l/--length option to b2sum (hashsum).
B2sum supports variable output size if

length is a multiple of 8 bits
length is less or equal than 512

Related Issue
#4610
Remarks
This is my first attempt to contribute to this project, so I may have missed something. (same goes for naming conventions) !
I added a new function to allow creating a Blake2d instance with custom output size (with_output_bytes). I updated the reset function to use this new function instead of calling ::new().
Eventually, the Blake2d tuple has now a new parameter to keep track of the custom size.
I had to create a new parsing step uu_app_opt_length that behaves more or less like uu_app_opt_bits but cannot share the same code due to different text / names.
Tests
I added a simple test with the --length option enabled. I took example of the sha1 tests in the very same file.
related test:  bash util/run-gnu-test.sh   tests/misc/b2sum-bsd.sh  (-l flags)
Unfortunately, I only have Windows for now and I couldn't run the linux tests.

not your fault but sharing for other reviewers. the test doesn't pass because of:

2023-04-11T08:23:08.2374314Z error: unexpected argument '-c' found
2023-04-11T08:23:08.2374320Z
2023-04-11T08:23:08.2374477Z   tip: to pass '-c' as a value, use '-- -c'
2023-04-11T08:23:08.2374482Z
2023-04-11T08:23:08.2374575Z Usage: cksum [OPTIONS] [FILE]...
2023-04-11T08:23:08.2374580Z
2023-04-11T08:23:08.2374724Z For more information, try '--help'.
2023-04-11T08:23:08.2374833Z FAIL tests/misc/b2sum.sh (exit status: 1)

Thanks, great work :)


Duplicates command palettes with VS Code

I showed the Edge Devtools and js-debug intregration today. Something that came up was the fact that there's two command palettes; if you ctrl+shift+p in the devtools editor, you get a different palette than you do in VS Code.
It would be nice to integrate the commands from the devtools into VS Code command's palette, or at least use quickpicks, for a more consistent experience.

Makes sense, adding this as a scenario - the only thing I wonder is how that works for screenreaders and keyboard users.

The command palette in VS Code is accessible. @isidorn is the local accessibility wizard who can answer any more specific questions you might have 🙂

Yup, let me know if you have any questions :)


added lang/pt_br

Added Portuguese Brazilian

Thanks for the PR. Changes will be included in new versions of the mod


Inactive OGC Web Services (OWS) URL in our doc examples for UrlTemplateImageryProvider

What happened?
In the doc examples for UrlTemplateImageryProvider, it appears the url we provide for the OGC Web Services (OWS) server provided by the Australian government is no longer active
http://programs.communications.gov.au/geoserver/ows?service=WMS&request=GetCapabilities
It is possible the service is active but moved, but I could not find it with a quick search.
Reproduction steps

...
Sandcastle example
No response
Environment
Browser:
CesiumJS Version:
Operating System:

@lukemckinstry I'm not sure what the word is on that particular services, but the documentation could be updated to use the same service we are using in our WMS Sandcastle example.


Hand Pose very slow

Issue Description
handpose one hand performance very slow
Steps to Reproduce
Open live demo
Enable hand pose only
Set max objects to 1
Expected Behavior
Not slow or choppy
**Environment
Chrome (87)
See attached video for demonstration
human-handpose.zip

quick q: is this a regression compared to previous versions or just new issue describing old problem?
and to confirm, this is using webgl backend? it's hard to tell from the video you've posted.
and did you try changing default parameters? seems that hand detection looses box and then waits for skip-frames to try to find it again. when i reduce confidence to 0.1, hand box stays in focus much longer.

The previous version wasn’t so slow, it was more of a bounding box problem.  I also checked with only facemesh enabled and I have the same problem although not as bad.  If I move my face around just a bit the same slowness and  freezing happens.  I also tried this on firefox with the similar results.  Firefox was a little better but still froze at times.
I am using webgl. Thanks

hmm...looking now and performance does seem lower, but i can't explain it as none of recent changes would justify it.
i'll investigate.

first update:

optimizations for face detection - new config setting to bypass complicated rotation mapping if face is within 20 degrees.
staggered skipFrames for all models so they don't trigger at the same time

overall, it's about 10% faster.
now onto my least favorite model - hand.

Thanks, I will try it.  I know I keep bugging you about the hand model but thanks for taking the time to look at it..  Could you upload a screen video capture of you using the live demo so I can see how it should perform?
Thanks.

second update:

removed offset calculation for hand bounding box and used slightly larger box instead.
this seems to improve bounding box re-usage.
implemented same skip-image-rotation trick for hand, configurable via config.hand.rotation
result is even bigger performance gain on hand, almost 50%
only time when this skip-rotation doesn't work is if hand is inverted, otherwise it's pretty flexible with angles.

there is new option in demo UI to enable/disable detection rotation so you can check the impact.
one remaining thing is that i'm not happy with initial hand detection - takes two passes for it to become framed.

Thank you.  The original problem seems to be fixed but I don't think it was the setting.  I am not sure exactly why it was frozen because the orginal hand-pose worked even when human was frozen.  Tested both after reboot with same results.  However human hand pose seems to not freeze up anymore.  The detection rotation seems to make a difference.  Thanks

third update:

updated warmup and caching a bit so initial detection picks up faster.
added warmup options none, face, full depending on how much user wants to spend on warmup

i'm closing this issue as i don't want too much to go under single umbrella, but feel free to open a new one in the future if needed.


allow the source command in dev contrib

Description

allow the source command in dev contrib
Reasoning

its a dev contribution channel, we should be able to run the source command because of its relevance to the channel
Proposed Implementation

add dev contrib to the source command whitelist
Would you like to implement this yourself?

[ ] I'd like to implement this feature myself
[x] Anyone can implement this feature

I approve of this message.


Search not working: flexsearch.Document is not a constructor

Describe the bug
When attempting to perform search, the following error message appears:
Uncaught (in promise) TypeError: flexsearch.Document is not a constructor
function createIndex() {
      return new flexsearch.Document({
        preset: "match",
        document: {
          id: "id",
          index: [
            "text"
          ]
        },
        worker: true,
        charset,
        language,
        tokenize: "forward"
      });
    }

Reproduction
Run story:dev
Open up browser
Click on the Search icon
Search will not work and the message above will be in the console.
System Info
System:
    OS: macOS 12.6
    CPU: (16) x64 Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz
    Memory: 12.94 GB / 64.00 GB
    Shell: 5.8.1 - /bin/zsh
  Binaries:
    Node: 16.13.0 - /usr/local/bin/node
    npm: 8.3.1 - /usr/local/bin/npm
  Browsers:
    Chrome: 106.0.5249.103
    Firefox: 105.0.1
    Safari: 16.0
  npmPackages:
    @histoire/plugin-vue: ^0.11.3 => 0.11.3
    @vitejs/plugin-vue: ^3.1.2 => 3.1.2
    histoire: ^0.11.3 => 0.11.3
    vite: ^3.1.6 => 3.1.6

Used Package Manager
npm
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] Check that this is a concrete bug. For Q&A open a GitHub Discussion.
[X] The provided reproduction is a minimal reproducible example of the bug.

It's a flexsearch issue。You can lock its version to 0.7.21

Until it's fixed in flexsearch, I'm pinning it to v0.7.21


Issue with k8s.io/docs/concepts/architecture/nodes/

This is a Bug Report

Problem:
Proposed Solution:
Page to Update:
https://kubernetes.io/...

@mkambham-c, can you explain a little bit more about the issue?

/triage needs-information

pls feel free to open with actionable issue details or file a new one.


Add a desktop MVP

Unfortunately I haven't figured out yet how to share Compose code, so there is a lot of duplication happening here. We're also missing a lot of other things, but this is a good jumping off point. Fixes #139
bors r+

Here's how it looks right now on Linux


:hammer: build: setup prod environment

Setup prod environment (API and database) on railway.com

FYI. Maybe railway.com isn't the best option. So still deciding. Looking into render.com


Shiny new drake visualizer

Copied from #419 so @patmarion can also push to the branch.
@patmarion this will probably need some work before it's ready to merge, but I wanted to get started on the PR now.
This implements the interface described in #415 (closes #415)
I've split the old drakevisualizer.py into drakevisualizer.py and drakevisualizerapp.py. I've also created the new interface in drakevisualizer2.py. Additionally, I've created drakevisualizerapp1.py and drakevisualizerapp2.py which import the relevant modules to construct the v1 and v2 apps. And I've added a command line flag to drakeVisualizerApp.cpp
@patmarion I have no attachment to any of those naming choices. They're just the first thing I tried that managed to cleanly separate all the old and new functionality. Feel free to rearrange and rename them as you see fit. Everything I've added is contained in drakevisualizer2.py and the new testDrakeVisualizer2Interface.py; all the other changes are just rearrangements of existing code.

@patmarion I added one commit to support the optional "transform" attribute for geometries: 972a6ee

@patmarion FYI I pushed one more commit to remove some duplication from the status messages

@patmarion so far, performance is OK with this change, but not great. The biggest slowdown turns out not to be JSON-related, but just due to searching through the objectmodel. When a client sends something like draw path ["foo", "bar", "baz"] at transform T, director has to search through the objectmodel for folder foo, then for its child bar, then for its child baz. This turns out to be surprisingly slow (about 300 microseconds per robot link), especially for complicated robots. Is there any way for me to access folders in the objectmodel more quickly than just doing a bunch of findChild calls?
If I have to cache these lookups I will, but I'd really rather avoid introducing all of the obvious problems that caching always creates.

The object model cannot provide speedy name lookups because:

item names do not have to be unique
item names may be changed at any time

However, the rules of the drawing protocol say that names are unique (since it is path based) so I would recommend that the drawing class caches the items in a python dict by pathname, then let's discuss where that could be buggy.

Ok, sounds good. The particular issue I ran into when I tried that was that it's easy to keep a cache inside the DrakeVisualizer class and remove elements when the client sends a delete message. But we also have to ensure that the cache is cleared when the user does something like manually delete a folder from the objectmodel in director.

There is a callback you can use whenever an item is removed from the object model.  It is fired exactly once as the item is removed.  Triggered for each item whether an item is removed programmatically or by the user pressing 'delete' on an item or folder.

def onItemRemoved(self, objModel, item):
    # remove item from cache

def addItem(path, item):
  self.cache[path] = item
  item.connectRemovedFromObjectModel(self.onItemRemoved)

Ok, thanks, that's perfect.

@patmarion I'm making the minor changes to the way format versions are specified that we talked about today. Also, we should remember to deal with the new LCM type that I added to bot core (this PR currently points Director's build to my fork of bot core types)

Also, I'm using the viewer2 name in a few places in code to refer to this version of the visualizer. If we want to give it a better name, now would be a good time.


readme documentation about currently supported Spago

Do I understand correctly setup-purescript currently provides spago-legacy? Can this be included in the readme?
https://github.com/purescript-contrib/setup-purescript/issues/37
Thanks

Let's see what happens with #39

#39 is merged


Update filtering support.

This change modifies the filtering support in the direct BigQuery
relation to reflect the full set of filters which are supported by
the storage API. Notably, this includes:

Support for multi-clause predicates (e.g. AND, OR, and NOT).
Support for pseudo-column variables (_PARTITIONDATE) for ingestion
time partitioned tables.
Support for additional filter operations (IsNull, IsNotNull, In,
StringStartsWith, StringEndsWith, StringContains).

R: @cyxxy @pmkc @aniket486

Hi @kmjung,
Shouldn't the readme be updated accordingly? Currently it still says the connector pushes done 1 filter only.


Install_clif script bails out generating proto_util.cc

Hello,
I have a kaldi patch for #113, but in order to test this I need to install the whole of pykaldi.  On my mac I run into trouble, when I try to follow the instructions in the readme.
I am not sure whether this is a problem of the script tools/install_clif.sh or of clif, or of my own environment, but I get a strange error running the script:
...
[2/5] Generating proto_util.cc, proto_util.h, proto_util.init.cc
FAILED: tools/clif/python/utils/proto_util.cc tools/clif/python/utils/proto_util.h tools/clif/python/utils/proto_util.init.cc
cd /Users/david/src/pykaldi/tools/clif_backend/build_matcher/tools/clif/python/utils && PYTHONPATH=/Users/david/src/pykaldi/tools/clif_backend/build_matcher/tools:/Users/david/src/pykaldi/tools/clif_backend/llvm/tools /Users/david/src/pykaldi/env/bin/python /Users/david/src/pykaldi/tools/clif_backend/llvm/tools/clif/pyclif.py -p/Users/david/src/pykaldi/tools/clif_backend/llvm/tools/clif/python/types.h -c/Users/david/src/pykaldi/tools/clif_backend/build_matcher/tools/clif/python/utils/proto_util.cc -g/Users/david/src/pykaldi/tools/clif_backend/build_matcher/tools/clif/python/utils/proto_util.h -i/Users/david/src/pykaldi/tools/clif_backend/build_matcher/tools/clif/python/utils/proto_util.init.cc -I/Users/david/src/pykaldi/tools/clif_backend/llvm/tools -I/Users/david/src/pykaldi/tools/clif_backend/build_matcher/tools --modname=clif.python.utils.proto_util --matcher_bin=/Users/david/src/pykaldi/tools/clif_backend/build_matcher/bin/clif-matcher "-f-I/Users/david/src/pykaldi/env/include/python3.7m -I/Users/david/src/pykaldi/tools/clif_backend/llvm/tools -I/Users/david/src/pykaldi/tools/clif_backend/build_matcher/tools -I/Users/david/src/pykaldi/tools/protobuf/include -isystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1 -std=c++11 " /Users/david/src/pykaldi/tools/clif_backend/llvm/tools/clif/python/utils/proto_util.clif
Traceback (most recent call last):
  File "/Users/david/src/pykaldi/tools/clif_backend/llvm/tools/clif/pyclif.py", line 38, in <module>
    from clif.python import gen, pyext, pytd2proto  # pylint: disable=g-multiple-import
  File "/Users/david/src/pykaldi/tools/clif_backend/llvm/tools/clif/python/gen.py", line 737
    def IterNext(wrapped_iter, async, postconversion):
                                   ^
SyntaxError: invalid syntax
ninja: build stopped: subcommand failed.

I can't see why that .py source is invalid there---it is a kind of python that I am not familiar with, but things look not much different around line 737 from the other lines of the source.

I think the issue is that async is a keyword in python 3.7.

So I just merged a PR into our fork of clif that addresses this issue. Please pull the changes and re-install clif (from scratch preferably).

Thanks, I last night I had also come to the conclusion that it must have been a async/python3.7 keyword.  Which apparently means that CLIF can't deal with python 3.7.  Thanks I will try again.

The async bug seems to have gone, but I am now hitting another esoteric bug: "stdio.h" is not found!  How can stdio.h, of all files, with such a multitude of toolchains helping us to compile, not be found so late in the process?
...
[1785/1788] Generating proto_util.cc, proto_util.h, proto_util.init.cc
FAILED: tools/clif/python/utils/proto_util.cc tools/clif/python/utils/proto_util.h tools/clif/python/utils/proto_util.init.cc
cd /Users/david/src/pykaldi/tools/clif_backend/build_matcher/tools/clif/python/utils && PYTHONPATH=/Users/david/src/pykaldi/tools/clif_backend/build_matcher/tools:/Users/david/src/pykaldi/tools/clif_backend/llvm/tools /Users/david/src/pykaldi/env/bin/python /Users/david/src/pykaldi/tools/clif_backend/llvm/tools/clif/pyclif.py -p/Users/david/src/pykaldi/tools/clif_backend/llvm/tools/clif/python/types.h -c/Users/david/src/pykaldi/tools/clif_backend/build_matcher/tools/clif/python/utils/proto_util.cc -g/Users/david/src/pykaldi/tools/clif_backend/build_matcher/tools/clif/python/utils/proto_util.h -i/Users/david/src/pykaldi/tools/clif_backend/build_matcher/tools/clif/python/utils/proto_util.init.cc -I/Users/david/src/pykaldi/tools/clif_backend/llvm/tools -I/Users/david/src/pykaldi/tools/clif_backend/build_matcher/tools --modname=clif.python.utils.proto_util --matcher_bin=/Users/david/src/pykaldi/tools/clif_backend/build_matcher/bin/clif-matcher "-f-I/Users/david/src/pykaldi/env/include/python3.7m -I/Users/david/src/pykaldi/tools/clif_backend/llvm/tools -I/Users/david/src/pykaldi/tools/clif_backend/build_matcher/tools -I/Users/david/src/pykaldi/tools/protobuf/include -isystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1 -std=c++11 " /Users/david/src/pykaldi/tools/clif_backend/llvm/tools/clif/python/utils/proto_util.clif
In file included from /dev/stdin:1:
In file included from /Users/david/src/pykaldi/tools/clif_backend/llvm/tools/clif/python/types.h:27:
In file included from /Users/david/src/pykaldi/env/include/python3.7m/Python.h:25:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/stdio.h:108:15: fatal error: 'stdio.h' file not found
#include_next <stdio.h>
              ^~~~~~~~~
_BackendError: Matcher failed with status 1

I am consistently hitting this error, I've completely removed pykaldi and reinstalled everything from scratch according to the README, but to no avail.  It is probably some weird configuration on my (mac) side, but then again, it looks like some basic include directory is missing.

I just can't seem to let this go, as this frustrates me big time...  So the build command can be fixed by inserting a
-isystem /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/

just before the -std=c++11, but I have no clue where to set this.  The command is used by ninja, that appears to use CMake, that is supposed to use a file CMakeList.txt, of which there are millions around.
In install_clif.sh there is CXX_SYSTEM_INCLUDE_DIR_FLAGS="-DCXX_SYSTEM_INCLUDE_DIR=$CXX_SYSTEM_INCLUDE_DIR" but the very name suggests there is room for only a single system include dir...

OK, I can get CLIF to compile by manually patching the `tools/clif/build.ninja
cat build.ninja | sed 's|-isystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1|-isystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1 -isystem /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/|' > build.ninja.patched
mv build.ninja.patched build.ninja

and put this right before "$MAKE_OR_NINJA" "${MAKE_PARALLELISM[@]}" clif-matcher clif_python_utils_proto_util in install_clif.sh
Then I need to patch setup.py using
diff --git a/setup.py b/setup.py
index 5a0ce13..194a4bc 100644
--- a/setup.py
+++ b/setup.py
@@ -127,7 +127,7 @@ if platform.system() == "Darwin":
               "line tools, e.g. xcode-select --install", file=sys.stderr)
         sys.exit(1)
     CXX_SYSTEM_INCLUDE_DIR = os.path.join(TOOLCHAIN_DIR, "usr/include/c++/v1")
-    CLIF_CXX_FLAGS += " -isystem {}".format(CXX_SYSTEM_INCLUDE_DIR)
+    CLIF_CXX_FLAGS += " -isystem {} -isystem {}".format(CXX_SYSTEM_INCLUDE_DIR, "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/")
     LD_FLAGS += " -undefined dynamic_lookup"
 elif platform.system() == "Linux":
     CXX_FLAGS += " -Wno-maybe-uninitialized"

This all obviously is a kludge, I am sure this can be done more neatly somewhere in the setup files, but it helps me out for now.  I won't touch a thing....

Thanks @davidavdav I was having a similar issue where clif_python_utils_proto_util was failing because of search path issue that could be fixed with an extra isysroot to the macos.sdk.
FAILED: tools/clif/python/utils/proto_util.cc tools/clif/python/utils/proto_util.h tools/clif/python/utils/proto_util.init.cc
cd /Users/kankawabata/Documents/auralanalytics/analytics_engine/pykaldi/tools/clif_backend/build_matcher/tools/clif/python/utils && PYTHONPATH=/Users/kankawabata/Documents/auralanalytics/analytics_engine/pykaldi/tools/clif_backend/build_matcher/tools:/Users/kankawabata/Documents/auralanalytics/analytics_engine/pykaldi/tools/clif_backend/llvm/tools /Users/kankawabata/Documents/auralanalytics/analytics_engine/venv/bin/python /Users/kankawabata/Documents/auralanalytics/analytics_engine/pykaldi/tools/clif_backend/llvm/tools/clif/pyclif.py -p/Users/kankawabata/Documents/auralanalytics/analytics_engine/pykaldi/tools/clif_backend/llvm/tools/clif/python/types.h -c/Users/kankawabata/Documents/auralanalytics/analytics_engine/pykaldi/tools/clif_backend/build_matcher/tools/clif/python/utils/proto_util.cc -g/Users/kankawabata/Documents/auralanalytics/analytics_engine/pykaldi/tools/clif_backend/build_matcher/tools/clif/python/utils/proto_util.h -i/Users/kankawabata/Documents/auralanalytics/analytics_engine/pykaldi/tools/clif_backend/build_matcher/tools/clif/python/utils/proto_util.init.cc -I/Users/kankawabata/Documents/auralanalytics/analytics_engine/pykaldi/tools/clif_backend/llvm/tools -I/Users/kankawabata/Documents/auralanalytics/analytics_engine/pykaldi/tools/clif_backend/build_matcher/tools --modname=clif.python.utils.proto_util --matcher_bin=/Users/kankawabata/Documents/auralanalytics/analytics_engine/pykaldi/tools/clif_backend/build_matcher/bin/clif-matcher "-f-I/Users/kankawabata/.pyenv/versions/3.7.4/include/python3.7m -I/Users/kankawabata/Documents/auralanalytics/analytics_engine/pykaldi/tools/clif_backend/llvm/tools -I/Users/kankawabata/Documents/auralanalytics/analytics_engine/pykaldi/tools/clif_backend/build_matcher/tools -I/Users/kankawabata/Documents/auralanalytics/analytics_engine/pykaldi/tools/protobuf/include -isystem /Library/Developer/CommandLineTools/usr/include/c++/v1 -std=c++11 " /Users/kankawabata/Documents/auralanalytics/analytics_engine/pykaldi/tools/clif_backend/llvm/tools/clif/python/utils/proto_util.clif
In file included from /dev/stdin:1:
In file included from /Users/kankawabata/Documents/auralanalytics/analytics_engine/pykaldi/tools/clif_backend/llvm/tools/clif/python/types.h:27:
In file included from /Users/kankawabata/.pyenv/versions/3.7.4/include/python3.7m/Python.h:63:
In file included from /Users/kankawabata/.pyenv/versions/3.7.4/include/python3.7m/pyport.h:191:
/Library/Developer/CommandLineTools/usr/include/c++/v1/math.h:301:15: fatal error: 'math.h' file not found
#include_next <math.h>
              ^~~~~~~~
_BackendError: Matcher failed with status 1

your suggestion gave me a lead on how to fix it

@davidavdav, you probably don't need this anymore but I found an easier way to set the system paths in the  install_clif.sh by setting cxx_system_include_dir with:
CXX_SYSTEM_INCLUDE_DIR="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1 -isystem /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/"

essentially CXX_SYSTEM_INCLUDE_DIR sets cxx flags in CLIFUtils.cmake with:
if (CXX_SYSTEM_INCLUDE_DIR)
    set(ISYSTEM_CXX_FLAGS "-isystem ${CXX_SYSTEM_INCLUDE_DIR}")
  endif(CXX_SYSTEM_INCLUDE_DIR)

So you can just additional additional system dir
 CXX_SYSTEM_INCLUDE_DIR="path1 -isystem path2 ... -isystem path3"


Error loading model: COM error: Microsoft.MWC.Workload.Client.Library, Received non-success response from the Orchestrator (StatusCode=NotFound)

I was wondering if anyone has seen the error before.  It happens intermittently in my Azure Pipeline when running the Best Practice Analyzer.  I tried to adjust the connection timeout, but the error comes back immediately so I don't believe it's a timeout issue.
2021-10-04T16:23:11.8213118Z -----------------------------------------
2021-10-04T16:23:12.3947236Z *** Execute Best Practices Analyzer***
2021-10-04T16:23:12.3948785Z -----------------------------------------
2021-10-04T16:23:12.5517289Z
2021-10-04T16:23:12.5565249Z Tabular Editor 2.16.4 (build 2.16.7940.23396)
2021-10-04T16:23:12.5567681Z --------------------------------
2021-10-04T16:23:13.0053707Z Loading model from server Provider=MSOLAP;Data Source=powerbi://api.powerbi.com/v1.0/*****;**Connect Timeout=120;User ID=**;Password=...
2021-10-04T16:23:16.9747724Z ##[error]Error loading model: COM error: Microsoft.MWC.Workload.Client.Library, Received non-success response from the Orchestrator (StatusCode=NotFound)..

I haven't seen this error before. Will raise it with the TOM/AMO team at Microsoft.

Does removing "Provider=MSOLAP" from the connection string make any difference?


refactor(Refactor code): :recycle: Clean up code and break everying i…

…nto composable components

@all-contributors add @Spikeysanju for design


Virt handler failed start in the kind k8s cluster on X86_64

What happened:
I followed the instruction in https://kubevirt.io/quickstart_kind/ to create a kind k8s cluster. And then try to deploy kubevirt on it, but virt-handler failed to start in the init process as following:
kubevirt             virt-handler-w9qs7                           0/1     Init:CrashLoopBackOff   5 (116s ago)   5m16s

I do not find any helpful logs. Here is the output form kubectl describe pods
Name:                 virt-handler-w9qs7
Namespace:            kubevirt
Priority:<PHONE_NUMBER>
Priority Class Name:  kubevirt-cluster-critical
Node:                 kind-control-plane/<IP_ADDRESS>
Start Time:           Wed, 27 Apr 2022 04:17:17 +0000
Labels:               app.kubernetes.io/component=kubevirt
                      app.kubernetes.io/managed-by=virt-operator
                      app.kubernetes.io/version=v0.52.0
                      controller-revision-hash=f68858c57
                      kubevirt.io=virt-handler
                      pod-template-generation=1
                      prometheus.kubevirt.io=true
Annotations:          kubevirt.io/install-strategy-identifier: 72d62fe25180ebc296d7a30b4ba2508933d9c2fe
                      kubevirt.io/install-strategy-registry: quay.io/kubevirt
                      kubevirt.io/install-strategy-version: v0.52.0
Status:               Pending
IP:                   <IP_ADDRESS>
IPs:
  IP:           <IP_ADDRESS>
Controlled By:  DaemonSet/virt-handler
Init Containers:
  virt-launcher:
    Container ID:  containerd://3f0a455aff959ec1d039891b61da45105c5424fbf9eca32235e3a0a26439218a
    Image:         quay.io/kubevirt/virt-launcher:v0.52.0
    Image ID:      quay.io/kubevirt/virt-launcher@sha256:7138d7de949a86955718e07edb90381b3abf1dd2e642d55c0db66fb15b21719b
    Port:          <none>
    Host Port:     <none>
    Command:
      /bin/sh
      -c
    Args:
      node-labeller.sh
    State:          Waiting
      Reason:       CrashLoopBackOff
    Last State:     Terminated
      Reason:       Error
      Exit Code:    1
      Started:      Wed, 27 Apr 2022 04:28:32 +0000
      Finished:     Wed, 27 Apr 2022 04:28:33 +0000
    Ready:          False
    Restart Count:  7
    Environment:    <none>
    Mounts:
      /var/lib/kubevirt-node-labeller from node-labeller (rw)
      /var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-gw5b2 (ro)
Containers:
  virt-handler:
    Container ID:
    Image:         quay.io/kubevirt/virt-handler:v0.52.0
    Image ID:
    Port:          8443/TCP
    Host Port:     0/TCP
    Command:
      virt-handler
      --port
      8443
      --hostname-override
      $(NODE_NAME)
      --pod-ip-address
      $(MY_POD_IP)
      --max-metric-requests
      3
      --console-server-port
      8186
      --graceful-shutdown-seconds
      315
      -v
      2
    State:          Waiting
      Reason:       PodInitializing
    Ready:          False
    Restart Count:  0
    Requests:
      cpu:      10m
      memory:   230Mi
    Liveness:   http-get https://:8443/healthz delay=15s timeout=10s period=45s #success=1 #failure=3
    Readiness:  http-get https://:8443/healthz delay=15s timeout=10s period=20s #success=1 #failure=3
    Environment:
      NODE_NAME:   (v1:spec.nodeName)
      MY_POD_IP:   (v1:status.podIP)
    Mounts:
      /etc/podinfo from podinfo (rw)
      /etc/virt-handler/clientcertificates from kubevirt-virt-handler-certs (ro)
      /etc/virt-handler/servercertificates from kubevirt-virt-handler-server-certs (ro)
      /pods from kubelet-pods-shortened (rw)
      /profile-data from profile-data (rw)
      /var/lib/kubelet/device-plugins from device-plugin (rw)
      /var/lib/kubelet/pods from kubelet-pods (rw)
      /var/lib/kubevirt from virt-lib-dir (rw)
      /var/lib/kubevirt-node-labeller from node-labeller (rw)
      /var/run/kubevirt from virt-share-dir (rw)
      /var/run/kubevirt-libvirt-runtimes from libvirt-runtimes (rw)
      /var/run/kubevirt-private from virt-private-dir (rw)
      /var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-gw5b2 (ro)
Conditions:
  Type              Status
  Initialized       False
  Ready             False
  ContainersReady   False
  PodScheduled      True
Volumes:
  kubevirt-virt-handler-certs:
    Type:        Secret (a volume populated by a Secret)
    SecretName:  kubevirt-virt-handler-certs
    Optional:    true
  kubevirt-virt-handler-server-certs:
    Type:        Secret (a volume populated by a Secret)
    SecretName:  kubevirt-virt-handler-server-certs
    Optional:    true
  profile-data:
    Type:       EmptyDir (a temporary directory that shares a pod's lifetime)
    Medium:
    SizeLimit:  <unset>
  libvirt-runtimes:
    Type:          HostPath (bare host directory volume)
    Path:          /var/run/kubevirt-libvirt-runtimes
    HostPathType:
  virt-share-dir:
    Type:          HostPath (bare host directory volume)
    Path:          /var/run/kubevirt
    HostPathType:
  virt-lib-dir:
    Type:          HostPath (bare host directory volume)
    Path:          /var/lib/kubevirt
    HostPathType:
  virt-private-dir:
    Type:          HostPath (bare host directory volume)
    Path:          /var/run/kubevirt-private
    HostPathType:
  device-plugin:
    Type:          HostPath (bare host directory volume)
    Path:          /var/lib/kubelet/device-plugins
    HostPathType:
  kubelet-pods-shortened:
    Type:          HostPath (bare host directory volume)
    Path:          /var/lib/kubelet/pods
    HostPathType:
  kubelet-pods:
    Type:          HostPath (bare host directory volume)
    Path:          /var/lib/kubelet/pods
    HostPathType:
  node-labeller:
    Type:          HostPath (bare host directory volume)
    Path:          /var/lib/kubevirt-node-labeller
    HostPathType:
  podinfo:
    Type:  DownwardAPI (a volume populated by information about the pod)
    Items:
      metadata.annotations['k8s.v1.cni.cncf.io/network-status'] -> network-status
  kube-api-access-gw5b2:
    Type:                    Projected (a volume that contains injected data from multiple sources)
    TokenExpirationSeconds:  3607
    ConfigMapName:           kube-root-ca.crt
    ConfigMapOptional:       <nil>
    DownwardAPI:             true
QoS Class:                   Burstable
Node-Selectors:              kubernetes.io/os=linux
Tolerations:                 CriticalAddonsOnly op=Exists
                             node.kubernetes.io/disk-pressure:NoSchedule op=Exists
                             node.kubernetes.io/memory-pressure:NoSchedule op=Exists
                             node.kubernetes.io/not-ready:NoExecute op=Exists
                             node.kubernetes.io/pid-pressure:NoSchedule op=Exists
                             node.kubernetes.io/unreachable:NoExecute op=Exists
                             node.kubernetes.io/unschedulable:NoSchedule op=Exists
Events:
  Type     Reason     Age                   From               Message
  ----     ------     ----                  ----               -------
  Normal   Scheduled  13m                   default-scheduler  Successfully assigned kubevirt/virt-handler-w9qs7 to kind-control-plane
  Normal   Pulling    13m                   kubelet            Pulling image "quay.io/kubevirt/virt-launcher:v0.52.0"
  Normal   Pulled     13m                   kubelet            Successfully pulled image "quay.io/kubevirt/virt-launcher:v0.52.0" in 18.821255689s
  Normal   Created    11m (x5 over 13m)     kubelet            Created container virt-launcher
  Normal   Started    11m (x5 over 13m)     kubelet            Started container virt-launcher
  Normal   Pulled     11m (x4 over 13m)     kubelet            Container image "quay.io/kubevirt/virt-launcher:v0.52.0" already present on machine
  Warning  BackOff    3m40s (x45 over 13m)  kubelet            Back-off restarting failed container

What you expected to happen:
kubeVirt successfully start in the kind k8s cluster.
How to reproduce it (as minimally and precisely as possible):
Just follow the instruction in the https://kubevirt.io/quickstart_kind/
Environment:

KubeVirt version (use virtctl version): v0.52.0
Kubernetes version (use kubectl version): 1.23.4
OS (e.g. from /etc/os-release): Ubuntu 18.10
Kernel (e.g. uname -a): Linux dell 4.18.0-25-generic
Install tools: kind 0.12.0 (https://github.com/kubernetes-sigs/kind/releases)

Hi @zhlhahaha ,
I believe we need to adjust the script a little bit. Do you want to have a look?

I had the same problem. I ran the init container manualy and I get an error:
$ docker run quay.io/kubevirt/virt-launcher:v0.53.0 /bin/sh -c node-labeller.sh

standard_init_linux.go:228: exec user process caused: operation not permitted

What should be noted is that my environmen is Ubuntu 20.04 VirtualMachine.
uanme -a  info:
Linux XXX 5.13.0-40-generic #45~20.04.1-Ubuntu SMP Mon Apr 4 09:38:31 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

swtch to version v0.51.0
docker run --rm quay.io/kubevirt/virt-launcher:v0.51.0 "/bin/sh -c node-labeller.sh"

{"component":"virt-launcher","level":"info","msg":"Collected all requested hook sidecar sockets","pos":"manager.go:76","timestamp":"2022-05-13T06:47:53.270416Z"}
{"component":"virt-launcher","level":"info","msg":"Sorted all collected sidecar sockets per hook point based on their priority and name: map[]","pos":"manager.go:79","timestamp":"2022-05-13T06:47:53.270487Z"}
panic: open /var/run/libvirt/libvirtd.conf: no such file or directory

goroutine 1 [running]:
main.main()
	cmd/virt-launcher/virt-launcher.go:421 +0x170e
{"component":"virt-launcher","level":"info","msg":"Reaped pid 15 with status 512","pos":"virt-launcher.go:554","timestamp":"2022-05-13T06:47:53.284728Z"}
{"component":"virt-launcher","level":"error","msg":"dirty virt-launcher shutdown: exit-code 2","pos":"virt-launcher.go:572","timestamp":"2022-05-13T06:47:53.284849Z"}
{"component":"virt-launcher","level":"error","msg":"error when checking for istio-proxy presence","pos":"virt-launcher.go:662","reason":"Get \"http://localhost:15021/healthz/ready\": dial tcp <IP_ADDRESS>:15021: connect: connection refused","timestamp":"2022-05-13T06:47:53.286784Z"}
{"component":"virt-launcher","level":"error","msg":"error when checking for istio-proxy presence","pos":"virt-launcher.go:662","reason":"Get \"http://localhost:15021/healthz/ready\": dial tcp <IP_ADDRESS>:15021: connect: connection refused","timestamp":"2022-05-13T06:47:53.298675Z"}
{"component":"virt-launcher","level":"error","msg":"error when checking for istio-proxy presence","pos":"virt-launcher.go:662","reason":"Get \"http://localhost:15021/healthz/ready\": dial tcp <IP_ADDRESS>:15021: connect: connection refused","timestamp":"2022-05-13T06:47:53.354727Z"}
{"component":"virt-launcher","level":"error","msg":"error when checking for istio-proxy presence","pos":"virt-launcher.go:662","reason":"Get \"http://localhost:15021/healthz/ready\": dial tcp <IP_ADDRESS>:15021: connect: connection refused","timestamp":"2022-05-13T06:47:53.623807Z"}

Got exactly the same issue as  @zhlhahaha and @drawdy mentioned.
Kubevirt v0.53.1, Kubernetes 1.23.5, Ubuntu 18.04 LTS, kernel 5.0.0-23-generic

I found a solution. Virt-handler is now working on my Kubernetes after these two steps:

https://github.com/kubevirt/kubevirt/issues/4303#issuecomment-830365183
https://github.com/kubevirt/kubevirt/issues/4303#issuecomment-839052345

I switched to CentOS 7.9 and everything works fine.

I found a solution. Virt-handler is now working on my Kubernetes after these steps:

Failed to start QEMU binary /usr/libexec/qemu-kvm for probing: libvirt:  error : cannot execute binary /usr/libexec/qemu-kvm: Permission denied #4303 (comment)
Failed to start QEMU binary /usr/libexec/qemu-kvm for probing: libvirt:  error : cannot execute binary /usr/libexec/qemu-kvm: Permission denied #4303 (comment)
Execute sudo systemctl reload apparmor.service or reboot

Veirfied, @xpivarc maybe we can write it into document.

I switched to CentOS 7.9 and everything works fine.

It seems that the failure only happens on Ubuntu.

I found a solution. Virt-handler is now working on my Kubernetes after these steps:

Failed to start QEMU binary /usr/libexec/qemu-kvm for probing: libvirt:  error : cannot execute binary /usr/libexec/qemu-kvm: Permission denied #4303 (comment)
Failed to start QEMU binary /usr/libexec/qemu-kvm for probing: libvirt:  error : cannot execute binary /usr/libexec/qemu-kvm: Permission denied #4303 (comment)
Execute sudo systemctl reload apparmor.service or reboot

Veirfied, @xpivarc maybe we can write it into document.

I would support it. @zhlhahaha @vasiliy-ul Do you think there is anything we can improve to streamline the interaction with AppArmor?

@xpivarc , we could potentially leverage the apparmor support in k8s: https://kubernetes.io/docs/tutorials/security/apparmor/
I.e. by using the annotation
# apply apparmor profile to container
container.apparmor.security.beta.kubernetes.io/<container_name>: localhost/<apparmor-profile-name>

# run unconfined
container.apparmor.security.beta.kubernetes.io/<container_name>: unconfined

E.g. if an apparmor profile for virt-launcher is shipped with KubeVirt then virt-handler as a privileged DaemonSet can load the profile on the worker nodes (this is the requirement: the profile needs to be loaded beforehand). The above annotation can be added by the webhook to the VMI and thus the profile will be applied to the proper container (e.g. to compute).
This approach has one implication though. A pod with that annotation can only be scheduled on an apparmor-enabled node. Hence it may cause issues with mixed clusters.
Also writing an apparmor profile for libvirt/qemu is a bit tricky. AFAIK libvirt handles apparmor for qemu internally. There is a virt-aa-helper tool for that (and also the libvirt package comes with a profile for the daemon itself). However in centos build of libvirt package apparmor is completely disabled.

@vasiliy-ul Thanks for the write-up. So the only downside I see is the lack of support of apparmor in Kubernetes or mixing of apparmor and SELinux. Therefore I am not sure how useful and usual it is to run them both in a cluster. I think it would be good if Kubevirt integrates at least with what Kubernetes support as I see many issues like this.


feat: adds Kuma GUI update PR job

Adds a new GitHub Actions workflow which automatically creates a pull request in Kuma for updating Kuma GUI.
Limits the main workflow’s triggers for pushes to the project’s default branch.
Signed-off-by: Philipp Rudloff<EMAIL_ADDRESS>

Comment: Okay, I’m slightly confused. Earlier, in #372, the main workflow wasn’t triggered on a pull request coming from a fork and adding the pull_request trigger fixed that. Now, in this PR which is also coming from a fork, both push and pull_request triggers work and cause two independent job runs. This shouldn’t happen.

Marking this as ready for review. I’ve also tested this with a from-origin PR (see https://github.com/kumahq/kuma-gui/pull/371).


journalctl gives no output

Strange, has this been changed lately? I run an AKS cluster with kubernetes 1.10.6, created about two weeks ago. The command in this documentation gives no output for me, tried it on different nodes:
devops@aks-nodepool1-18282904-2:~$ journalctl -u kubelet -o cat
devops@aks-nodepool1-18282904-2:~$

devops@aks-nodepool1-18282904-2:~$ journalctl -u kubelet
Hint: You are currently not seeing messages from other users and the system.
      Users in the 'systemd-journal' group can see all messages. Pass -q to
      turn off this notice.
-- No entries --

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

ID: 92e345df-2425-d3ea-2d98-53949bc9314a
Version Independent ID: 171f79d7-e1a6-efa0-d45c-cfdc81faf3c0
Content: Get kubelet logs from Azure Kubernetes Service (AKS)
Content Source: articles/aks/kubelet-logs.md
Service: container-service
GitHub Login: @iainfoulds
Microsoft Alias: iainfou

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

@mrdfuse thanks for bringing this up. I am seeing the same behavior. However, if I run the command as sudo it does work
azureuser@aks-nodepool1-38145473-0:~$ journalctl -u kubelet -o cat
azureuser@aks-nodepool1-38145473-0:~$ journalctl -u kubelet
Hint: You are currently not seeing messages from other users and the system.
      Users in the 'systemd-journal' group can see all messages. Pass -q to
      turn off this notice.
-- No entries --

azureuser@aks-nodepool1-38145473-0:~$ sudo journalctl -u kubelet
-- Logs begin at Mon 2018-08-20 18:16:44 UTC, end at Mon 2018-08-20 18:58:15 UTC. --
Aug 20 18:16:09 aks-nodepool1-38145473-0 systemd[1]: Stopped Kubelet.
Aug 20 18:16:09 aks-nodepool1-38145473-0 systemd[1]: Starting Kubelet...
 If so, we should update the doc to reflect that the users need to use sudo to pull the logs


mpd not updating status after toggle

Hi,
I'm having a strange problem with mpd. When I issue an mpc stop or mpc toggle command using one of the defined shortcuts from sway (e.g. with bindsym - see the config snippet at the bottom) then waybar does not correctly update the info in the output.
The mpc next and mpc prev seem to work fine however.
When I issue mpc stop or toggle then the update stays on that status regardless if I toggle it back (note the bindsym for mpc in sway itself works correctly and it's really just waybar that stops updating its own status).
The only workaround (which isn't an option but for completeness sake) is to force a re-reading of the config anytime mpc toggle or  mpc stop were issued. (then the output matches again the actual state of mpc).
What it looks like fresh after start-up:

What it looks like after I issue mpc toggle once. And it stays after that like this regardless how many times I try to mpc toggle or mpc stop:

Here is what it looks like after I force a reload of the sway config using mod+Shift+c: It says (correctly stopped). I can only get the correct status using such a forced reload.

    "mpd": {
        "server": "<IP_ADDRESS>",
        "port": 6600,
        "tooltip": false,
        //"format": "{stateIcon} {consumeIcon}{randomIcon}{repeatIcon}{singleIcon}{artist} - {title} ({elapsedTime:%M:%S}/{totalTime:%M:%S}) ",
        "format": "{stateIcon} {consumeIcon}{randomIcon}{artist} - {title} ({elapsedTime:%M:%S}/{totalTime:%M:%S}) ",
        "format-disconnected": "Disconnected ",
        "format-stopped": "{consumeIcon}{randomIcon}{repeatIcon}{singleIcon}Stopped ",
        "unknown-tag": "N/A",
        "interval": 2,
        "max-length": 60,
        "consume-icons": {
            "on": " "
        },
        "random-icons": {
            "off": " ",
            "on": " "
        },
        "repeat-icons": {
            "on": " "
        },
        "single-icons": {
            "on": "1 "
        },
        "state-icons": {
            "paused": "",
            "playing": ""
        }
    },
    "idle_inhibitor": {
        "format": "{icon}",
        "format-icons": {
            "activated": "",
            "deactivated": ""
        }
    },

my .config/sway/config uses mpc commands. These work correctly in sway itself but waybar fails to update the status whenever I use them:
# Media player controls
bindsym --locked $mod+t exec mpc toggle
bindsym --locked $mod+n exec mpc next
bindsym --locked $mod+p exec mpc prev
bindsym --locked $mod+x exec mpc stop

mpd itself runs as a regular user and is configured to listen on:
bind_to_address		"any"
bind_to_address		"/home/da/.mpd/socket"
port				"6600"

(note that setting the mpd server in waybar/config to socket does not seem to work - though I suspect this has nothing to do with waybar since restricting all connections to the socket won't produce any music on my setup whether in i3 or sway).

any ideas? this is a showstopper for me as the module is totally useless if it doesn't show change of state unless the whole waybar gets restarted. I can make my own script but considering that mpd should work I'd really rather use the one that comes with waybar. or maybe I'm doing something wrong in which case would highly appreciate any pointers. cheers

I don't use the mpd module, but can confirm I get the same behavior. Seems to have been broken by 6e7f22ac3ada6e27facee84fcbe2b3973eadbe1d. After that commit, the event listener thread no longer loops so it only processes the first event and then exits. Seems to work as expected if I add the while loop back in, but I don't really understand why it was removed in the first place. Maybe @Alexays has a better idea of how to fix it

Came here to report this bug. I'm glad to see it already exists.
Arch Linux just updated this package to the latest version:
→ pacman -Q | grep waybar
waybar 0.9.3-1

So now MPD gets stuck everytime I toggle. This is quite annoying.

Should be good with a446cd692d19acc215aa1fe42a2e24f7507ea2d5
My bad, oops :)


Improvements to yes_you_want_a_build_step.md ( first paragraph)

Your effort is appreciated, but this PR is too small in nature and you’ve created at least 10 other such PRs. Please create one single PR will all language changes and I’ll happily review it all in one go.

How about one commit per document?

...or maybe what you're asking for is really not that difficult (i.e. transforming my multiple pull requests into one) and that actually just seems like extra work to me because I have no  real understanding of git or github yet. 😁
I accept the challenge... Let me see what I can do.😁

To be honest I guess I'm not really willing to put that much more work into it. (sorry) I'm just a guy who was reading your documentation for the first time, and noticed a bunch of glaring issues with the wording.

That’s legit, and again thank you for the effort. The docs, as I’m sure you’ve noticed, need a fair amount of work, which is planned. While your PRs are valid, going through over 10 PRs is also a lot of work. If you want to contribute to this open source project, then by all means please do. I was requesting that you merge all your PRs into one PR so that I can go through the suggestions all together when reworking the docs.

...or maybe what you're asking for is really not that difficult (i.e. transforming my multiple pull requests into one)

Yes, that was it.


Tidying and updating for nf-core

Refactored tests - removed test directory, rewrote travis tests
Removed a bunch of unnecessary stuff

params.rlocation for when we were using the host R installation
functionality to download fasta, gtf and hisat2 indexes. Not sure why this was ever really needed, as nextflow does this for you with web paths

New Singularity build file
Refactored the profiles, added conda support
Updated outdated conda packages

Thanks both! Tests passing, just the master branch lint failure thing again..


[Feature Request] "Switch to Draft" button on composer

When you click this button,

concrete5 will show a notification message like "This will create a new draft page from this page. Older versions of this page will be deleted. Are you sure?"
concrete5 will create a new draft page from a recent page version (same result as "New Page" link in Versions panel)
concrete5 will delete the old page

In actually, this is not a new feature. Just a shortcut of two steps.
We shouldn't show this button for a page that has child pages.

We've seen situations where content managers accidentally publish a news page too early and they've many times asked "where is the Unpublish" button. Instead of "Publish Changes" they wanted to click "Save" but oops...
I believe this feature would solve the problem.
It would be even greater in case you could enable or disable this based on the page type. In particular, this is needed for the news article pages.

I also think "Revert Page to Draft" would be a better name, not to confuse the user that this is a functionality to switch between the "live" and the "draft" mode of the page.

Since "Unpublish" would just mean: set the previous version to live instead of the current (accidentally published) one, I wonder why content editors or managers shouldn't be able to do this with the versioning tool, two clicks away? And if not, why should they have permissions to publish content anyway?

@africanforest No, you cannot "unpublish" a newly published page like that, it only has one version. You cannot just remove the only available version.
And even if you could, it does not address the problem in question:
How to convert a live page back to draft?
There are obviously ways around this issue but it requires technical knowledge out of scope for the type of users who are generally publishing content. So far I've instructed how to move the page back to drafts through the "system pages" (which is complicated from their perspective) and lately I've created a special restricted node in the sitemap for them to put "temporary" pages in that are not visible for the visitors. The latter seems to be more understandable for them.
I believe a marketing manager should have the ability to publish content on their website.
The version tool itself also has some usability quirks making it hard to use for general users who are generally editing and publishing content. We've worked with this particular company for 2+ years now and I've honestly shown how to manage the versions tens of times over that time and even written documentation on how to do that. They still don't get it, as it's not something they need every day.
Above I did not mean the button should be labelled "Unpublish". This is just a direct quote from them. They mean: how they can convert a live page back to a draft.


Ansible request for x11 server installed for all platforms

We are enabling extended.openjdk tests which contain jdk_awt, jdk_swing tests.  Many tests require x11 DISPLAY variable to be set.  There is already an open request to ensure Macs have this enabled (see https://github.com/AdoptOpenJDK/openjdk-infrastructure/issues/211).  x11 server has been installed/enabled on most Linux systems and AIX, but is still missing on Macs, and aarch64.  This issue is to ensure we have the ability to enable it on all platforms (as we currently will have to disable many tests if it is not enabled).
Details (from jdk11 aarch64 extended.openjdk test job):
java.awt.HeadlessException:
No X11 DISPLAY variable was set, but this program performed an operation which requires it.
at java.desktop/java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:208)
at java.desktop/java.awt.Window.(Window.java:548)
at java.desktop/java.awt.Frame.(Frame.java:423)
at InfiniteValidationLoopTest.(InfiniteValidationLoopTest.java:49)
at InfiniteValidationLoopTest.main(InfiniteValidationLoopTest.java:96)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:127)
at java.base/java.lang.Thread.run(Thread.java:834)
JavaTest Message: Test threw exception: java.awt.HeadlessException:
No X11 DISPLAY variable was set, but this program performed an operation which requires it.
JavaTest Message: shutting down test

As far as I can see that ran on test-aws-rhel76-armv8-3 which does have the required Xvfb package installed and it looks like Xvfb runs ok (I started it manually but haven't checked further than that) so this doesn't appear to be an infrastructure issue

Oh hang on that was a test which was run 11 months ago

I just wanted an infra issue that would run through the set of machines and verify that xvfb / x11 were installed and running on all of them, so I have created this one (though feel free to combine it with #211 if you want a single issue that checks we have that prereq on all machines (not just macs).

I didn't think it was expected to be running - isn't that done dynamically in the test scripts? We don't have anything that would start it in a persistent way.

These tests are run during a release (as release pipelines launch nightly and weekly test lists), and the intent was to get a weekly build pipeline running, so we can triage the weekly tests.
This still needs to happen, though I am now leaning towards a running nightly pipelines 5 days a week, and run a weekly release pipeline (with no publish) on the weekends, as then we would then accomplish 2 open goals (running the 'weekly' test list, and dry-running a release pipeline).

I'm going to close this as I believe it is available on all test machines, other than the issue specific to macos auto-logins which is covered separately.


Fix sbt new docs for Windows

Fixes #1169
If you could confirm that this is the correct command. @brinklec

Codecov Report

Merging #1185 into release-0.15.x will decrease coverage by 0.04%.
The diff coverage is n/a.

@@                Coverage Diff                 @@
##           release-0.15.x    #1185      +/-   ##
==================================================
- Coverage           69.24%   69.19%   -0.05%
==================================================
  Files                 211      211
  Lines                4454     4454
  Branches              447      447
==================================================
- Hits                 3084     3082       -2
- Misses               1370     1372       +2

Impacted Files
Coverage Δ

core/src/main/scala/org/http4s/HttpVersion.scala
93.75% <0%> (-6.25%)
:arrow_down:

...e/src/main/scala/org/http4s/blaze/Http1Stage.scala
75.9% <0%> (-1.21%)
:arrow_down:

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 077d833...8f42256. Read the comment docs.

I have not previously worked with pull requests, so it’s quite possible I am missing something elementary.
I checked the Getting Started page of the online tutorial both for the 0.15 version referenced here, and for the 0.17 version I have been using.  No addition to the tutorial language describing the argument difference required to clone the template for Windows appears in either.  Naively was expecting to see some new wording, at least in the 0.15 version.  Perhaps I am going about this all wrong for what you ask?
            With apologies,
                            Chris Brinkley

From: Christopher Davenport<EMAIL_ADDRESS>Sent: Monday, May 15, 2017 4:37 PM
To: http4s/http4s<EMAIL_ADDRESS>Cc: Chris Brinkley<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: [http4s/http4s] Fix sbt new docs for Windows (#1185)
Fixes #1169https://github.com/http4s/http4s/issues/1169
If you could confirm that this is the correct command. @brinklechttps://github.com/brinklec

You can view, comment on, or merge this pull request online at:
https://github.com/http4s/http4s/pull/1185
Commit Summary

Fix SBT new docs for Windows

File Changes

M docs/src/main/tut/index.mdhttps://github.com/http4s/http4s/pull/1185/files#diff-0 (3)

Patch Links:

https://github.com/http4s/http4s/pull/1185.patch
https://github.com/http4s/http4s/pull/1185.diff

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/http4s/http4s/pull/1185, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AFM4ZW3M1niI3TqZPK4FdZDXBx3a27TRks5r6OGhgaJpZM4Nb0qF.

This message (including any attachments) may contain confidential information intended for a specific individual and purpose. If you are not the intended recipient, you should delete this message and any attachments.

Nope just the code until it gets merged, then it will make it to the page.
Here are the line changes
  // Linux/Mac
  $ sbt -sbt-version 0.13.13 new http4s/http4s.g8		  $ sbt -sbt-version 0.13.13 new http4s/http4s.g8
  // Windows
  $ sbt -sbt-version0.13.13 new http4s/http4s.g8

Thanks, that looks correct.  Here is the successful result of pasting your updated Windows command to my console:
c:\scala>sbt -sbt-version0.13.13 new http4s/http4s.g8
Java HotSpot(TM) Client VM warning: ignoring option MaxPermSize=256m; support wa
s removed in 8.0
[info] Set current project to scala (in build file:/C:/scala/)
[warn] The - command is deprecated in favor of onFailure and will be removed
in 0.14.0
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further detail
s.
name [http4s quickstart]:
--Chris
By the way, do you know why it gives the above SLF4J no-binding-found warnings?  I see these all the time.
From: Christopher Davenport<EMAIL_ADDRESS>Sent: Monday, May 15, 2017 5:10 PM
To: http4s/http4s<EMAIL_ADDRESS>Cc: Chris Brinkley<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [http4s/http4s] Fix sbt new docs for Windows (#1185)
Nope just the code until it gets merged, then it will make it to the page.
Here are the line changes
// Linux/Mac
$ sbt -sbt-version 0.13.13 new http4s/http4s.g8              $ sbt -sbt-version 0.13.13 new http4s/http4s.g8
// Windows
$ sbt -sbt-version0.13.13 new http4s/http4s.g8
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/http4s/http4s/pull/1185#issuecomment-301638864, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AFM4ZYntTIi9drJX-2S0aFBZJ59Y52TTks5r6OlogaJpZM4Nb0qF.

This message (including any attachments) may contain confidential information intended for a specific individual and purpose. If you are not the intended recipient, you should delete this message and any attachments.

Updated SBT Version As Suggested. When this passes CI we should be good to go.

I'm going to try to hook up a profiler to the tests sometime this week.  Failure is not related to this.


[Feature]  Enhance User Experience with Box Shadow on Hover in Featured Posts Section

Problem

Description

The featured posts section feels static and doesn’t engage users effectively. By adding a box shadow effect when users hover over the posts, we can make it more visually appealing and interactive. This change will help draw attention to the featured content and encourage users to explore it further, ultimately improving the user experience.
Implementation

[x ] I would be interested in implementing this feature.

@Dev-JoyA  I would like to work on this

@nazarenegena It has not been approved yet the status still says awaiting triage , as soon as the status change to ready to work . you can jump on it .
Also you don't need to inform me , as soon as the status change you can work on it .
see this Repository label

@Dev-JoyA cool noted.


Waking up from wfe causes causes missed jump and hard fault

This is a very strange issue which I think I have tracked down to this crate. In my project, I have the following code:
// Configure deep sleep
asm::wfe();
asm::nop(); // Added for debugging

This gets compiled to the following asm:
 8001d58:       5088            str     r0, [r1, r2]
 8001d5a:       f006 fb3a       bl      80083d2 <__wfe>
            __nop()
 8001d5e:       f006 fb34       bl      80083ca <__nop>
 8001d62:       6828            ldr     r0, [r5, #0]

080083ca <__nop>:
 80083ca:       4770            bx      lr

080083cc <__primask>:
 80083cc:       f3ef 8010       mrs     r0, PRIMASK
 80083d0:       4770            bx      lr

080083d2 <__wfe>:
 80083d2:       bf20            wfe
 80083d4:       4770            bx      lr

080083d6 <memcmp>:
 80083d6:       b5b0            push    {r4, r5, r7, lr}
 80083d8:       b382            cbz     r2, 800843c <memcmp+0x66>
 80083da:       f04f 0c03       mov.w   ip, #3
 80083de:       eb01 040c       add.w   r4, r1, ip
 80083e2:       eb00 050c       add.w   r5, r0, ip
 80083e6:       f814 ec03       ldrb.w  lr, [r4, #-3]
 80083ea:       f815 3c03       ldrb.w  r3, [r5, #-3]
 80083ee:       4573            cmp     r3, lr

If the code runs normally, i.e. without any breakpoints, it hard faults at 80083ee.
Any breakpoints placed either after 1d5a but before 1d62 or in __nop or
__wfe makes the program run fine after continuing
Stepping through one instruction or line at a time works and does not hard fault
84ce and onwards are executed and have lr set to 1d67 which where the jump comes from.

To me, it looks like the branch at 83d4 is skipped but I'm not sure how to verify it.
I inspected the memory using gdb and instructions look correct
Hardware and software

This code is running on an stm32f103c8 blue pill. I have tested it on two different devices to ensure that it's not a hardware issue.
It is 100% reproducible
It happens both on rustc rustc 1.33.0-nightly (790f4c566 2018-12-19) and rustc 1.33.0-beta.6 (b203178b6 2019-02-05). I have not tested any other versions
I'm using cortex-m version 0.5.8 from crates.io
This does not seem to happen with features = ["inline-asm"]
Lowering the sysclk seems to make it not happen every loop

This is the project where it happens :https://github.com/TheZoq2/weather/tree/hardfault/stmhardware.
I can't make a minimal example because the problem only occurs if some parts of the code are present. In this case, removing this line https://github.com/TheZoq2/weather/blob/hardfault/stmhardware/src/main.rs#L225 along with line 209 prevents it from happening.
Any ideas what could be going wrong here? I don't think I can do more with my limited knowlege of arm ASM

Does the same problem happen if you use WFI instead of WFE? Are you specifically using events (i.e. calling SEV or waiting for exceptions)? Do you know what event/interrupt is causing the wakeup?

Does the same problem happen if you use WFI instead of WFE?

Good question, I'm not sure. I'll test it later tody

Are you specifically using events (i.e. calling SEV or waiting for exceptions)? Do you know what event/interrupt is causing the wakeup?

Yes, I'm using events to wake up from deep sleep as a way to conserve power. I'm using the RTC for triggerkng the wake up.

Any more info on this? @TheZoq2
I have now evaluated the same on an Nordic nRF52832 and STM32F411 and do not see this happening.

My fix for it was to use the inline-asm feature of this crate instead of the default features, but I'm not sure what caused the issue or why inline asm solves it.

Unfortunate issue, I hope it was a one-timer but will keep this issue in mind for the future

I think I may have found new information on this issue. I don't remember all the details of the issue, but there is a documented bug in the stm32f103 which sounds similar, see section 1.1.4 of https://www.st.com/content/ccc/resource/technical/document/errata_sheet/7d/02/75/64/17/fc/4d/fd/CD00190234.pdf/files/CD00190234.pdf/jcr:content/translations/en.CD00190234.pdf


Crash when called from react native module

We use GRPC-Swift in our recent project, which imports swift-nio-ssl for channels.
The implementation of the app called a grpc TLS connection from react-native's native module, the app crashed right away at sdallocx, right after OPENSSL_free(orig_ptr), at CNIOBoringSSL -> crypto -> mem.c -> OPENSSL_realloc.
It looks like it was caused by boringSSL's context allocating failure. To verify that, we turn off the GRPC's TLS, the app stop crashing.
We also test the swift-grpc by calling directly from a native swift application, using TLS, which also works well without any crash.
We tried to find some similar issues at stripe-ios (https://github.com/stripe/stripe-ios/issues/1293), which eventually was found due to Some of BoringSSL symbols in their code weren't prefixed, causing conflicts with other copies of BoringSSL and OpenSSL in end user apps. Their solution was to add prefix to wide range of their BoringSSLl's symbols.
So we are wondering that would it be the same reason causing our app's crashing?
Cheers

We do aggressively prefix our boringSSL symbols. That includes OPENSSL_malloc, OPENSSL_realloc, and OPENSSL_free, all of which are actually in the binary as CNIOBoringSSL_OEPNSSL_malloc etc.
Do you have the crash report? It would be helpful to see exactly where the crash is and what's triggering it.

I write a simple project only call swift-gPRC with TLS in RN, it still crash.
https://github.com/izone-airstream/RN-Swift-gRPC-TLS-Crash
A crash report is also attached under the repo. Thanks

The crash in thread 23 looks like it's trying to allocate outside the memory region.
Check out size_t sk_insert() in stack.c for more insight.
0   ???                           	0x0000000106d2f878 sdallocx + 0
1   org.reactjs.native.example.RNSwiftGRPC	0x00000001064ae128 CNIOBoringSSL_OPENSSL_realloc + 200 (mem.c:159)
2   org.reactjs.native.example.RNSwiftGRPC	0x00000001064c7919 CNIOBoringSSL_sk_insert + 233 (stack.c:184)
3   org.reactjs.native.example.RNSwiftGRPC	0x00000001064c7ff4 CNIOBoringSSL_sk_push + 36 (stack.c:321)
4   org.reactjs.native.example.RNSwiftGRPC	0x000000010650bd68 CNIOBoringSSL_sk_SSL_CIPHER_push + 40 (CNIOBoringSSL_ssl.h:1258)
5   org.reactjs.native.example.RNSwiftGRPC	0x00000001065372a9 bssl::CNIOBoringSSL::ssl_create_cipher_list(std::__1::unique_ptr<bssl::CNIOBoringSSL::SSLCipherPreferenceList, bssl::CNIOBoringSSL::internal::Deleter<bssl::CNIOBoringSSL::SSLCipherPreferenceList> >*, char const*, bool) + 2073 (ssl_cipher.cc:1254)

To start debugging this I would take a look at how this TLSConfiguration is being created/used
var config = ClientConnection.Configuration(
	target: .hostAndPort("homegraph.googleapis.com", 443),
	eventLoopGroup: group
	,tls: .init(configuration: TLSConfiguration.forClient()) //comment out this line to turn off the TLS, which stop the crashing.
)

compared to how it is used in NIOSSLHTTP1CLIENT
var cert: [NIOSSLCertificateSource] = []
var key: NIOSSLPrivateKeySource?
var trustRoot: NIOSSLTrustRoots = .default
let tlsConfiguration = TLSConfiguration.forClient(trustRoots: trustRoot,
                                                  certificateChain: cert,
                                                  privateKey: key,
                                                  renegotiationSupport: .once)
let sslContext = try! NIOSSLContext(configuration: tlsConfiguration)

This should get your started.

This is interesting. It seems like this is quite probably an interaction with the strange declaration of sdallocx. sdallocx on Linux or Apple platforms is intended to be weak-linked, with a fallback implementation that is defined in terms of free. This should only actually be used if sdallocx is statically linked with the binary. Weirdly, we're ending up jumping into the __DATA region of the binary, which is why we see the SIGBUS. That's very odd.
Do you happen to have any logs from the compile?

Yes, I add build log to the repo.
https://github.com/izone-airstream/RN-Swift-gRPC-TLS-Crash/raw/master/ios/build-log.txt

Follow your thread, I noticed that the Facebook library "Folly", which is used by RN, do use sadllocx here:

This helped push us down the right road. Specifically, Folly doesn't just use sdallocx: if you don't set FOLLY_HAVE_WEAK_SYMBOLS and statically link jemalloc with the binary then Folly will define sdallocx to the nullptr.
The problem is that BoringSSL wants to play a game with finding sdallocx where it will try to weak link it with a fallback, so that if you link an allocator that defines sdallocx then Boring will use it, otherwise it'll use the static copy in the file.
The result is that if you statically link Folly and BoringSSL into the same binary, Folly will helpfully define sdallocx as a bunch of 0s, and then the linker will happily use that as a relocation target for sdallocx. This then leads to nasty type confusion because the linker is jumping to the sdallocx location, but that location is actually a pointer to sdallocx, and specifically a nil pointer to sdallocx.
The end result is that BoringSSL and Folly are just not compatible with being statically linked together into the same binary. Unfortunate but true.
For us, to maximise our compatibility we'll compile out this "optimisation" from BoringSSL. That will technically cost us a small amount of performance when running with jemalloc, but it won't matter much because only BoringSSL was using the sized free anyway, and so the perf gain from sized free is pretty small.
@davidben, this is probably relevant for you to be aware of. I don't know if this is something you actually want to do anything about, but you should at least know about it for future cases. I don't know anyone involved with the Folly library, but if anyone does please point them at this issue for their own diagnostic purposes. It's not clear to me that either library is objectively doing the wrong thing, but they definitely don't play nice together.

@Lukasa We changed our weak symbol pattern in https://boringssl-review.googlesource.com/c/boringssl/+/40405. This might fix this, but for different reasons than we thought when we made the change. See discussion at https://boringssl-review.googlesource.com/c/boringssl/+/40405/9#message-0e7e7e16e7576e76dffe8a4be77fe3b1102f4112
Folly's handling of these symbols is invalid, however. This is ultimately a bug that must be fixed in Folly. If weak symbols aren't supported, they fill in sdallocx and friends with function pointers whose value is NULL. While this, syntactically, supports the same spelling of the check within Folly, they are not the same thing. That means that Folly is introducing type errors into libraries linked with it.
One option for them would be something like:
#if !FOLLY_HAVE_WEAK_SYMBOLS
inline namespace folly_weak_symbol_compat {
void* (*mallocx)(size_t, int) = nullptr;
...
}
#endif

with a similar inline namespace in the header files, and dropping the extern "C" around it all. This way the code which checks it can consistently write sdallocx != nullptr, but they never clobber the true sdallocx symbol, which belongs to the malloc implementation. Another would be to the compatibility nullptrs into their header as static symbols or macros or something.

Thanks for that clarification @davidben, it's good to know. I'll see if we can find a way to bucket-brigade this to someone who maintains Folly.


router-view not rendering correctly in jsdom?

Vue: ^3.0.0-beta.15
VueRouter:  4.0.0-alpha.13
jsdom: ^16.2.2
Hi. I was trying vue-router-next with one of my apps, which uses VTU for testing. I found an odd behavior where I cannot get <router-view> to render, instead it is rendering . I was able to reproduce it without the VTU dependency, too.
describe('vue-router', () => {
  const App = {
    render() {
      return (
        h('span', [
          h(RouterView)
        ])
      )
    }
  }

  it('does not render the router-view', async () => {
    const el = document.createElement('div')
    el.id = 'app'
    document.body.appendChild(el)
    const app = createApp(App)
    app.use(router())
    app.mount(el)
    console.log(document.body.innerHTML)
  })
})

The console.log(document.body.innerHTML) shows:

The part with  should be <router-view />.
This should be easy enough to reproduce in this code-base, too, since it is set up with Jest.

Have you checked the differences with the tests that are written here? You need to wait for the router to be ready (initial navigation) before it can render anything
If you have, a reproduction will help. It can be a pull request with a unit test too

Yep, looks like I should have read the docs.
I updated my code and it worked fine.
const app = createApp(App)
const router = makeRouter()
app.use(router)
await router.isReady()
app.mount(el)

If anyone finds issue, breaking changes (like navigations been async] are documented here. I will add an example to the VTU docs for Vue Router, and include this note. Thanks! Everything else is working great, built a few small apps and haven't found any other notable bugs or problems. 👍