Xaml Islands Win32 MenuFlyoutSubItem crash

This issue has been moved from a ticket on Developer Community.

Use any Xaml Islands Win32 sample as base, e.g. Xaml-Islands-SamplesAdd a MenuBar with two MenuFlyoutSubItem elements. E.g:	<MenuBar>
		<MenuBarItem Title="MenuBarItem">
			<MenuFlyoutSubItem Text="MenuFlyoutSubItem1">
				<MenuFlyoutItem Text="MenuFlyoutItem1"/>
			</MenuFlyoutSubItem>
			<MenuFlyoutSubItem Text="MenuFlyoutSubItem2">
				<MenuFlyoutItem Text="MenuFlyoutItem2"/>
			</MenuFlyoutSubItem>
		</MenuBarItem>
	</MenuBar>Run the app, open the menu, hover over the first SubItem until the menu animation starts playing, then quickly move to the second SubItem (or just move quickly between the two subitems without giving enough time for the animation to complete). The app will crash with: "Exception thrown at 0x030B450C (Windows.UI.Xaml.dll) in SampleCppApp.exe: 0xC0000005: Access violation reading location 0x00000000."Tried in WinUI 2.4 and WinUI 3 prerelease. Windows version 10.0.18363, Visual Studio 16.7.6.

Original Comments
Levente Tordai-Karczagi on 10/28/2020, 07:20 AM:
On further testing I have discovered, that it's not related to the animations. Windows settings "Show animations in Windows" will turn off sliding out the menu, but the problem still persists.
Donna Deng [MSFT] on 10/29/2020, 00:56 AM:
Thank you for taking the time to log this issue!
In order for us to investigate further, please provide more information by recording your repro steps via the Visual Studio Feedback Tool (Help -> Send Feedback -> Report A Problem). The feedback tool will ensure that we collect the needed information for you without worrying about what to provide (recording, dump file or ETL trace). Since this issue is now marked as Need More Info, that workflow is enabled in the Feedback Tool – full instructions
In our guidelines , you can get tips on how to provide clear and simple reproducible steps.
Get performance issues fixed quicker, please see https://docs.microsoft.com/en-us/visualstudio/ide/how-to-increase-chances-of-performance-issue-being-fixed?view=vs-2019.
We look forward to hearing from you!
Levente Tordai-Karczagi on 10/29/2020, 02:56 AM:
Thank you for looking into this.
I have entered a new report through the feedback tool. Also added a recording. Here is the link: https://developercommunity2.visualstudio.com/t/xaml-islands-win32-menuflyoutsubitem-crash-1/1237929
Feedback Bot on 10/29/2020, 10:45 PM:
We have directed your feedback to the appropriate engineering team for further evaluation. The team will review the feedback and notify you about the next steps.

Original Solutions
(no solutions)

I found a workaround for this:

Instead of using MenuBar/MenuFlyout, switch to a CommandBar/CommandBarFlyout.
Subclass AppBarButton:

struct CustomAppBarButton : winrt::AppBarButtonT<CustomAppBarButton> {
  CustomAppBarButton() {
    // Because we lose the default behavior of OnPointerExited which reverts the button's styling
    // when the pointer is no longer over the button, we change the button's resources so that the
    // hover color is the same as non-hover color.
    this->Resources().Insert(winrt::box_value(L"AppBarButtonBackgroundPointerOver"),
                             winrt::Application::Current().Resources().Lookup(
                                 winrt::box_value(L"AppBarButtonBackground")));
  }

  void OnPointerExited(winrt::Input::PointerRoutedEventArgs const& e) {
    // This method crashes in the superclass, so we override it to do nothing.
  }
};

Use that subclass instead of AppBarButton. You can create submenus by setting the AppBarButton.Flyout property to a MenuFlyout.

This has a few limitations/issues:

You can't have more than 1 level of submenus, or you'll re-introduce the crash.
The hover styling on the submenu items isn't present. This isn't a big deal because the submenu items have styling when the submenu is open, which happens very shortly after hover.
If you're using CommandBarFlyout: it has some bugs with positioning, unrelated to this crash. I found the only options from FlyoutBase.ShowAt that work are ones where you specify a non-null placementTarget and showOptions.Placement of TopEdgeAlignedLeft or TopEdgeAlignedRight. Also you need to fix some offset issues with the code below (I'm not sure if this works for all cases, I needed this for a few I tested):

      if (options.Placement() == winrt::FlyoutPlacementMode::TopEdgeAlignedLeft) {
        winrt::Point offset = {0.0f, 42.0f};
        options.Position(offset);
      } else if (options.Placement() == winrt::FlyoutPlacementMode::TopEdgeAlignedRight) {
        winrt::Point offset = {static_cast<float>(placementTarget.ActualWidth()), 42.0f};
        options.Position(offset);
      }

I forgot another step is required, below. We have to hook into the Closed event to hide any flyouts, likely due to the overriding of OnPointerExited.
  auto closedRevoker = commandBarFlyout.Closed([=](winrt::IInspectable const& sender, auto&&) {
    if (auto commandBarFlyout = sender.try_as<winrt::CommandBarFlyout>()) {
      for (int i = 0; i < commandBarFlyout.SecondaryCommands().Size(); i++) {
        if (auto button =
                commandBarFlyout.SecondaryCommands().GetAt(i).try_as<winrt::AppBarButton>()) {
          if (auto flyout = button.Flyout()) {
            flyout.Hide();
          }
        }
      }
    }
  });

I confirmed at least in CommandBarFlyout this issue is not fixed in WinUI 2.6.1-prerelease.210709001. I realize the real fix requires WinUI 3, but it seems there should be a workaround in WinUI 2, possible based on my workaround above.

I have experienced this issue as well. It's very annoying.
Hopefully it gets fixed in Windows 10 seeing as many users are unable to upgrade to 11 due to prerequisites.

FWIW, this thread and #3953 are dupes, unsure which the team wants to use as the tracking thread. MSFT:36621660 internally seems to suggest that this OS fix should be out later this month, with KB5007253, though, that number doesn't mean anything to me ¯\_(ツ)_/¯

@zadjii-msft checking back on this: do you know in which exact KBs the issue was fixed, and if there is a way for me to detect the fix besides reading the OS build number?

KB5007253 definitely looks like the one. I honestly don't know if there's a way to check for the fix or not - we just bumped our min version to 19041, but not everyone's got that kind of liberty.

Do we know if the fix got backported to the 18362 and friends builds, and if yes which KB? That's my min target right now. I can keep using the legacy Win32 context menu for these builds, but it'd be interesting to see if I can enable the MenuFlyout-based menus for these users as well.

I don't believe so. Unfortunately, the bar for servicing to that build is a lot higher, so we could only get it back to 19041 😕
(note to self: that's noted in MSFT:36393125)

Thanks for letting me know! I have to keep the legacy Win32 implementation anyways for people who are on 19041+ but never update their machines, so it's not much trouble using that implementation on 18362 as well (I dynamically build a Win32 menu based on the Xaml MenuFlyout, so the maintenance cost is pretty low).


When looking up modules in @types, only look for index.d.ts and `pa…

Also makes some of the code neater.

Is this just to speed resolution up?

This is just for neatness. We shouldn't be publishing .ts and .tsx files to @types anyway.


All deployments are stuck

I've created a new production trigger, and unfortunately it created a duplicate. Also I canceled one of the deployments. Ever since it's stuck in an endless loop.
Is there a way to remove the triggers without the UI?
I'm using version "sanity-plugin-vercel-deploy": "2.1.6" because the project is still running on studio v2.
Appreciate any help!

I was able to get out of this by re-deploying the application manually. Closing this!


Tezos Support??

Hi Chef! Wondering, in case anyone else is interested, can we please get Tezos support in your fork?
Another Dev came up with this: https://github.com/tqtezos/minter
but it's missing all the awesome sauce of your fork (nested structure, omitting metadata during generation, etc)
Thanks in advance :)

Thanks for the request.
It appears that tezos would be able to be supported by outputting metadata in the format outlined here
https://tzip.tezosagora.org/proposal/tzip-21/
I will do a little investigating and work on it if possible.


[WIP] feat: add generateCloudFormationExports

Outdate, replaced with https://github.com/fargito/serverless-monorepo-microservices-template/pull/20


devices becoming unavailable, home assistant restart required to get them back

Hi everybody,
I recently stumbled upon this project and needed it to monitor whether or not hyper backup tasks were running. I have one DS918+ and one DS413 connected.
The workflow is

start DS8918 in the morning
start DS413 at noon
run 5 backup tasks (via synology, not  home assistant)
power of DS413 either at 17:00 in the afternoon, or -- if backup tasks are still running -- wait until they are all done, then power it off
power off DS918 in the evening

So in the morning, none of the sensors provided by this integration work, because both devices are powered off. Understandable.
But then, each device ought to be available when turned on, but they are not. Currently, both DS are on. The DS918 (which I started first) does not report anything. Not temperature, not backup tasks  (not even the power off button). The sensors because unavailable 13 hours ago, which is when the DS918 was powered off.
However, the DS413, which I started after the DS918 does work. I see the temperature, I have the power off button.
It doesn't matter whether or not I manually restart the integration. If one of the devices (or both) is/are unavailable, they will stay unavailable until I restart Home Assistant.
So current statue: DS918 unavailable, DS413 available. If I were to restart Home Assistant right now, both would be available. But as soon as they'd become unavailable, there would be no other way to get them back but to restart the entire Home Assistant server.
Previously, I used the default Synology integration (that did not provide insight about backup tasks) with the DS918 only. The DS413 was handled by the DS' internal power management. And, as far as I can remember, the DS918 was always available. Now that I have this integration and both DS integrated, one of them often becomes unavailable. But I cannot determine what causes this, and why that particular one. Yesterday, the DS918 was available all day and the DS413 suddenly became unavailable -- today it's the other way around.
The DS413 needs the DS918's backup in progress sensors in order to determine (via Home Assistant automation) when it can shut down. Yeah, it will shut down at 17:00 anyway via internal energy settings, but I would like to disable that and have Home Assistant handle shutdown (and power on via WOL) exclusively.
Is there anything I need to configure on the synology devices? Or some way to find out why this is happening all together? I wasn't able to find anything related in the logs.
Thanks in advance for your help :)

Yes. Exactly that. This is what the integration provides. But often these sensors all become unavailable and I have to restart Home Assistant to get them back.

Perhaps we need to make an automation to restart ha not sure if that works because I believe sometimes I even have to completely restart the Nas.

Plus I don't believe we need custom firewall rules or authorizarion or authentication to get this working flawless

I have the same issue. Sometime I need to restart my Synology aswell. Joke once in a day or 2,3 I run ha in a vm head we need to escalate this to the devs or soort team of the official intrrgration. I do run Glances aswell which is the most right column in the screenshot I shared
Sent from Outlook for Androidhttps://aka.ms/AAb9ysg

From: prankousky @.>
Sent: Monday, May 6, 2024 2:33:09 PM
To: catchdave/home-assistant-synology-dsm @.>
Cc: Thomas van Dalen @.>; Comment @.>
Subject: Re: [catchdave/home-assistant-synology-dsm] devices becoming unavailable, home assistant restart required to get them back (Issue #5)
Yes. Exactly that. This is what the integration provides. But often these sensors all become unavailable and I have to restart Home Assistant to get them back.
—
Reply to this email directly, view it on GitHubhttps://github.com/catchdave/home-assistant-synology-dsm/issues/5#issuecomment-2095914179, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ACLVJW4VUMWHJBGVQDCZWA3ZA52ALAVCNFSM6AAAAABHIMICJCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAOJVHEYTIMJXHE.
You are receiving this because you commented.Message ID: @.***>

Exactly my backup sensor does work great and my backups runs daily at night and so far that keeps working including smb backup of homeassistant itself I'm also almost yelling my hair out in this but it's working so we stil might to escalate this to the right department
Sent from Outlook for Androidhttps://aka.ms/AAb9ysg

From: prankousky @.>
Sent: Monday, May 6, 2024 2:58:12 PM
To: catchdave/home-assistant-synology-dsm @.>
Cc: Thomas van Dalen @.>; Comment @.>
Subject: Re: [catchdave/home-assistant-synology-dsm] devices becoming unavailable, home assistant restart required to get them back (Issue #5)
While it's possible to automate restarting Home Assistant, there is no way that this would be practicable. While Home Assistant restarts, timers, automations, and all entities controlled by Home Assistant will be unavailable. This happens multiple times a day. We cannot restart Home Assistant that often.
Same goes for restarting the NAS.
For now, I switched to synology handling startup and shutdown and timed it so that all backups will be done by the time it needs to shut down. But that isn't a great solution, either.
I agree, this does not seem to be related to firewall, as the sensor all do work. Just not at all times.
—
Reply to this email directly, view it on GitHubhttps://github.com/catchdave/home-assistant-synology-dsm/issues/5#issuecomment-2095960353, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ACLVJWZIFMRKYM3XGZYMC2DZA546JAVCNFSM6AAAAABHIMICJCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAOJVHE3DAMZVGM.
You are receiving this because you commented.Message ID: @.***>

@prankousky can cry now

I menan...  I had my DSs set up before installing this integration, so perhaps there was an error when switching.

deleted DS918
deleted DS413
full restart Home Assistant
added DS413
added DS918

When I then WOL the 413, all sensors were available as soon as it booted up. Great! Then I WOL the 918. Nothing!! Sensors not available.
Then I restarted Home Assistant. The 413 is shut down at the moment. I only booted it up to test whether its sensors would become available.
After this restart, the 413 is unavailable -- which was expected, because it is not running at the moment. However, now the DS918 is available.
I changed nothing about the DS918. It was running; not available in Home Assistant. I restarted Home Assistant, so just two minutes after not a single DS918 sensor being available (before restart), everything works again (after restart).
This cannot be related to the DS. I would understand if the DS had to be restarted if it was causing the error. But (at least for me) it is enough to restart Home Assistant, but not the DS918. So there must be something wrong with the integration.
Perhaps it drops connection and does not attempt  to re-connect. Unfortunately, I don't have sufficient knowledge in programming, so I can neither verify, nor repair this.

I wrote automations and created helpers for

DS918

power on (via input_datetime)
power off (via input_datetime)
backup(s) currently running (via template) (boolean)
which backup(s) are currently running (via auto-entities card)
at what time will the next backup start (input_datetime via template)

DS413

power on (input_datetime via template, 5 minutes before next backup on DS918 is scheduled)
power off (via input_datetime; if backup is still running, then wait until all backups are finished)

The  DS413 will also automatically power on and off via the synology energy manager. Since this integrations seems to be unreliable at the moment, I power it on and off this  way so that backups can still be processed.
However, if I were to change the backup schedule on my DS918 (for example, start backups one hour earlier than at the moment), this will not adapt to the DS413. It would work with the automations above, because the template entity for next scheduled backup will trigger an automation that updates the input_datetime for powering on the DS413; this would actually still work because it wakes it up via WOL. But powering it down will not work if the shutdown button is unavailable (which it is if the integration doesn't work right).

Hi man, im going to inspect this most later much deeper because im time limited now
backup(s) currently running (via template) (boolean) what kind of backup, smb, hyper, shares, and or VM's?
Reading further i see we have different models but i think that should be fine for this because this is like the basic at least engineer level 2 should think about...
Im soon going to order a UPS which is synology supported to schedule power clean shutdown and start. Alls furhter is already automaded.

had to restart again today. @ developer, what do i need to send as in terms of logs? so we can investigate it?

@Puntoboy have you tried whether restarting HA will work for you? It does for me. But it is really annoying. Yesterday, I forgot the check, so the entities became unavailable and my DS did not shut down over night (which HA would have triggered, but it wasn't able to automate the shutdown button).
 But perhaps there is a simple fix to this that anybody might be willing to share with us?

I haven't tried restarting HA yet, I don't really like to restart HA all the time, it's bad enough when HACS integrations need and update.
I will do it to confirm though.
I've only just switched to this integration though, as the built-in Synology one worked fine, it just didn't have the Hyper backup status which would be nice.

Restarting HA fixed the issue, for now.

Im still finding out and report back once it's happening by either restart the VM  or the Nas. First the VM only because the VM is on the same Nas at my side
Sent from Outlook for Androidhttps://aka.ms/AAb9ysg

From: Puntoboy @.>
Sent: Monday, May 13, 2024 11:57:11 AM
To: catchdave/home-assistant-synology-dsm @.>
Cc: Thomas van Dalen @.>; Comment @.>
Subject: Re: [catchdave/home-assistant-synology-dsm] devices becoming unavailable, home assistant restart required to get them back (Issue #5)
Restarting HA fixed the issue, for now.
—
Reply to this email directly, view it on GitHubhttps://github.com/catchdave/home-assistant-synology-dsm/issues/5#issuecomment-2107145830, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ACLVJW4BKM4YWZZ4XYZKHN3ZCCE7PAVCNFSM6AAAAABHIMICJCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMBXGE2DKOBTGA.
You are receiving this because you commented.Message ID: @.***>

So while this is not the solution I was hoping for, I am trying a different approach. There is an API for Synology Diskstation. Have any of your tried working with that? It might be worth a workaround.
One could simply make an http api request every x minutes to get all the information this integration here provides. And it must also be possible to power off the DS this way.
I have tried (using insomnia as REST client), but following the instructions, I cannot even get the example code working, unfortunately.

I do eanne bste with u guys but my brains are lottery limited because of an accident but I'll kee following this. About the API indeed. The Glances api can grab alot aswell already

@IIIdefconIII get well soon!
I don't use Glances, but what I meant was this: instead of using this integration (though I would prefer to use it!), Home Assistant could make REST API calls to the Synology every X minutes and thus receive the very same values this way. Let's say we'd make an http call every 5 minutes, then get information about  current updates, temperature, etc. through these API calls.
We wouldn't need to restart HA, because these calls will (or should!) just work.  There is no integration with complex code that might crash or break. It sends these requests, it gets the data. Even if there was a problem with one request, the next request will likely work and provide the info (just 5 minutes later than, or whatever other interval it has been set to).

Ah ik totally understand what you telling but I'm not the guy to try to create something like this xD I'm a international cloud engineer but that's just another sport in it plus I'm still recovering front my coma from last year so I don't really have the energy and time to set my hyperfocus.

@IIIdefconIII hope it wasn't something too serious and you'll get well soon!
I don't use Glances, but what I meant was this: instead of using this integration (though I would prefer to use it!), Home Assistant could make REST API calls to the Synology every X minutes and thus receive the very same values this way. Let's say we'd make an http call every 5 minutes, then get information about  current updates, temperature, etc. through these API calls.
We wouldn't need to restart HA, because these calls will (or should!) just work.  There is no integration with complex code that might crash or break. It sends these requests, it gets the data. Even if there was a problem with one request, the next request will likely work and provide the info (just 5 minutes later than, or whatever other interval it has been set to).

I'll just gonne figure out if glances can replace all sensors because glances doe work very well. But even glances is failing here and there which runs separately in a docker container next to the ha vm.
Ik had a new scan of me brain in the hospital and my head is rejections the bone more and more... they probably have to place the bone with some material. My familie already call me gogo gadget helicopter. But I'll stay positive as long I can be.

ane dup reinstalling en re-setup now it working again..

#close


num_replicas not working as expected

Hello,
I'm trying to use the num_replicas behavior to for high availability.  However, no matter what I set num_replicas to I'm only seeing the key stored on one server.
My understanding of this behavior is that it would store the key on N servers as specified by num_replicas.
I tested this in the case of two servers with num_replicas set to 2 with both modulo and consistent hashing.  I always ended up with the key being stored on one server only.
I want to make sure that I'm not misunderstanding what this behavior is supposed to do.
Thanks

Using an old version of pylibmc is the problem.  Closing this.

I thought this was a version issue, but using version 1.4.2 I'm still experiencing the same thing.

Can't help you, it's a libmemcached issue. Ping @brianaker.


Renamed package 'gwopensci'

This PR renames the losc python package gwopensci, so that the name isn't LIGO specific. This will required renaming the whole github repo as well, for the record.

Pull Request Test Coverage Report for Build 18

4 of 4 (100.0%) changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 91.477%

Totals

Change from base Build 14:
0.0%

Covered Lines:
161

Relevant Lines:
176

💛  - Coveralls


Release candidate for v1.3.3 bugfix

This fixes #429 and fixes #447.

Coverage remained the same at 95.072% when pulling 39d09180fe7d22337161e7e129a97fb7df04252b on v1.3.x into d7e1288916c7569445125a613511c3ece64aa0f4 on stable.


unused PVC wrong detection

Just FYI
https://github.com/gianlucam76/k8s-cleaner/tree/main/examples-unused-resources/persistent-volume-claims
Using this example, cleaner detected all active PVCs in cluster as unused that is wrong.

Thank you @jurim76  for reporting this. I will fix it,verify and push a PR.

Hi @jurim76 can you please give me an example of active PVC that cleaner consider un-used? Thank you.
I am testing with the values here and there it correctly identifies only one out of two PVCs as un-used.
So clearly I am missing a case and an example of incorrect identification will help me fix this.
Thank you

I've modified the example to use scan every 5 minutes
apiVersion: apps.projectsveltos.io/v1alpha1
kind: Cleaner
metadata:
  name: stale-persistent-volume-claim
spec:
  action: Scan
  schedule: "@every 5m"
  notifications:
  - name: report
    type: CleanerReport
  resourcePolicySet:
    resourceSelectors:
    - kind: Pods
      group: ""
      version: v1
    - kind: PersistentVolumeClaim
      group: ""
      version: v1
    aggregatedSelection: |
....

Then apply and check the report
kubectl get reports.apps.projectsveltos.io stale-persistent-volume-claim -o yaml

For example let's check grafana-db1 PVC from the report
  - message: '. time: 2024-06-08 10:31:06.76909835 +0000 UTC m=+300.865260124'
    resource:
      apiVersion: v1
      kind: PersistentVolumeClaim
      name: grafana-db1
      namespace: monitoring

Check PVC status
kubectl -n monitoring get pvc grafana-db1
NAME          STATUS   VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS   AGE
grafana-db1   Bound    pvc-a80d528f-0c3c-468f-9f74-773258212f9c   4Gi        RWO            topolvm-ext4   17d

Check grafana sts
kubectl -n monitoring get sts grafana-db1 -o jsonpath='{.spec.template.spec.volumes[*].persistentVolumeClaim}'
{"claimName":"grafana-db1"}

grafana-db1 PVC is alive and belongs to grafana-db1 statefulset
Pehaps I missed something and should inerpreter the report output is some other way?

Thank you @jurim76 for detailed report.  You are reading it correctly.
Can I ask two last things:

Does your StatefulSet grafana-db1 have replicas == 0?
If not, can you please paste here the spec.volumes of any pod backing up your StatetulSet grafana-db1?

Thank you so much again!

grafana-db1 statefulSet has replica 1
grafana-db1-0 pod spec.volumes output

[
  {
    "configMap": {
      "defaultMode": 420,
      "name": "postgres13-exporter-cm",
      "optional": true
    },
    "name": "prom-config"
  },
  {
    "configMap": {
      "defaultMode": 420,
      "name": "postgres-filebeat"
    },
    "name": "filebeat-config"
  },
  {
    "emptyDir": {},
    "name": "filebeat-data"
  },
  {
    "name": "postgres-storage",
    "persistentVolumeClaim": {
      "claimName": "grafana-db1"
    }
  },
  {
    "emptyDir": {
      "medium": "Memory"
    },
    "name": "postgres-shm"
  },
  {
    "name": "kube-api-access-n8l8v",
    "projected": {
      "defaultMode": 420,
      "sources": [
        {
          "serviceAccountToken": {
            "expirationSeconds": 3607,
            "path": "token"
          }
        },
        {
          "configMap": {
            "items": [
              {
                "key": "ca.crt",
                "path": "ca.crt"
              }
            ],
            "name": "kube-root-ca.crt"
          }
        },
        {
          "downwardAPI": {
            "items": [
              {
                "fieldRef": {
                  "apiVersion": "v1",
                  "fieldPath": "metadata.namespace"
                },
                "path": "namespace"
              }
            ]
          }
        }
      ]
    }
  },
  {
    "emptyDir": {
      "medium": "Memory"
    },
    "name": "home-init"
  },
  {
    "emptyDir": {
      "medium": "Memory"
    },
    "name": "home-sidecar"
  },
  {
    "emptyDir": {
      "medium": "Memory"
    },
    "name": "vault-secrets"
  }
]

Fixed it: https://github.com/gianlucam76/k8s-cleaner/pull/78
There was a type (Pods instead of Pod). So Cleaner was fetching only PVCs and no Pod. So all PVCs were listed as un-used.
Thank you for reporting it


About QuantumOS material

Hey! I would like to know more about your QuantumOS project.
I got interest in it can you please elaborate more about it
like what exactly it works upon and about its architecture and flow diagram, various commands, every thing in depth.
Could you please share proper documentation and all the material u have on my mail.
Mail -<EMAIL_ADDRESS>It would be great help for me...
Waiting for your reply!

Hello,
I have contacted you quite awhile ago, but didn't notice a response. What are you part of the project do you want to learn more about?

I am closing this issue. If you would still like to get more info on the project, open a new Issue.

On Wed, 7 Jun 2023 at 7:30 PM, Main Menu @.***> wrote:

I am closing this issue. If you would still like to get more info on the
project, open a new Issue.
—
Reply to this email directly, view it on GitHub
https://github.com/corigan01/QuantumOS/issues/1#issuecomment-1580885321,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AQDWMKHKEFB4NASDDZ5P2S3XKCCO5ANCNFSM6AAAAAARP5AS7U
.
You are receiving this because you authored the thread.Message ID:
@.***>

Issue is solved!
ThankYou So Much


Different handling of non-set CROSS and CROSS=0 in Makefiles

At 1 place ifneq ($(CROSS), 1) is used, in others ifndef CROSS
This causes tests to not be run, whenn CROSS=0 is given.
There have been fixes for similar inconsistencies before. I'd suggest to check the makefiles for ifndef and ifdef and make sure they are handled as booleans where booleans are used.

Parameters that are unset in Makefile.rule behave that way, that is long standing misfeature, present empty string or zero change build behaviour, mostly to failure.


New command: cz init

Goal
Make it easier for users to use commitizen
Description
Let's suppose we have an already existing repo without commitizen.
The user types cz init and we try to be smart and detect some information:

Find last tag and ask if that is the latest tag. If not prompt which is the latest tag.
With that data we can fill the version in [tool.commitizen].
Detect if the tag begins with v or not and define the tag_format in [tool.commitizen]
Find files with a reference to the latest version and define the files in [tool.commitizen], we could let the user choose which files from the found should be added (with a multi-choice from questionary).
Ask to the user if they want the changelog to be generated from scratch if not present.

This is my initial draft, I'm not sure what else could be detected. Potentially we could ask for every configuration, but it's important to keep it short. It's not about customizing, but initializing quickly. If the user wants to customize more -> read the docs.

I'm working on it.
init_command
It seems to me adding "name" in init step is also a reasonable option.
Currently, I'm not sure how "files" should be implement. Do text search no the whole project to find version is defined in which files does not seem to be a good way.

Yes, the name should be added, and should use as options the available rules (even the plugins). It shouldn't be a problem
We could search in the current directory and inside a folder called src or like the project name (for this project would be commitizen), and make it not recursively.
.
src/
commitizen/

It seems to me we might refactor part of the config so that this enhancement can be finished. One of the problems I encounter now is that I'm not able to distinguish the default config and config load from files.
My Initial thought is to have a BaseConfig abstract class, DefaultConfig, TomlConfig. The difference in each child class will be how to parse config so that we might be able to support other common data formats. I think json would be a good choice. It's commonly used and not as hard to handle as ini does.
As for the version_files, do you mean code like glob.glob('*version*') and glob.glob(*/*version*) ?

Fine by me, let's give it a try, I think the config part needs some love.
Regarding the version_files I was thinking more like:

ls src/ ls . ls commitizen (maybe using os.walk or os.listdir)
Get the files only (ignore directories).
Search for the current_version (selected in the first step). This doesn't need to be super fast, we can show a Searching for version files... with some sort of animation. It could be a function yielding the files found with a timeout of 5 secs.

Maybe we can discuss more on the "vesrion_files" part in the future, I'll first work on the refactoring and other functionaility of init.

Released on 1.12.0 :tada:

@Woile Isn't init missing from the top level readme? It also seems to be missing when running -h ?

Indeed it's missing in the README, but it works fine with -h. Check that you have the latest version python3 -m pip install -U commitizen

@Woile Apologies I hadn't refreshed the install to get the -h working. Doh!


css prop incompatible with TypeScript/Flow

The css prop babel macro is cool, but adding css to arbitrary elements causes type errors:
import * as React from 'react'
import Paper from '@material-ui/core/Paper'

const Foo = (): React.ReactNode => <Paper css="color: red;" />

$ tsc --noEmit
src/index.tsx:4:43 - error TS2769: No overload matches this call.
  Overload 1 of 2, '(props: PaperProps, context?: any): ReactElement<any, string | ((props: any) => ReactElement<any, string | ... | (new (props: any) => Component<any, any, any>)> | null) | (new (props: any) => Component<...>)> | Component<...> | null', gave the following error.
    Type '{ css: string; }' is not assignable to type 'IntrinsicAttributes & PaperProps'.
      Property 'css' does not exist on type 'IntrinsicAttributes & PaperProps'.
  Overload 2 of 2, '(props: PropsWithChildren<PaperProps>, context?: any): ReactElement<any, string | ((props: any) => ReactElement<any, string | ... | (new (props: any) => Component<any, any, any>)> | null) | (new (props: any) => Component<...>)> | Component<...> | null', gave the following error.
    Type '{ css: string; }' is not assignable to type 'IntrinsicAttributes & PaperProps & { children?: ReactNode; }'.
      Property 'css' does not exist on type 'IntrinsicAttributes & PaperProps & { children?: ReactNode; }'.

4 const Foo = (): React.ReactNode => <Paper css="color: red;" />
                                            ~~~

Is there a way to deal with this in TypeScript and Flow?  Maybe there would be a better solution than a babel macro, for example a wrapper element that clones its child to add className?
const Foo = (): React.ReactNode => <Styles css="color: red;"><Paper /></Styles>

There is a workaround for TypeScript described in this analogous Emotion issue:
https://github.com/emotion-js/emotion/issues/693
However, I don't think there's any such workaround for Flow.  I don't feel great about tacking arbitrary props onto React elements for an API...

Please file against DefinitelyTyped, thanks
On Sun, Feb 9, 2020 at 1:16 PM Andy Edwards<EMAIL_ADDRESS>wrote:

Environment
npx envinfo --system --binaries --npmPackages
styled-components,babel-plugin-styled-components --markdown --clipboard
Reproduction
https://codesandbox.io/s/styled-components-base-gc367
Steps to reproduce Expected Behavior Actual Behavior
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/styled-components/styled-components/issues/3012?email_source=notifications&email_token=AAELFVUH52PIGNGIW5RHLTTRCBCBPA5CNFSM4KSDMK22YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4IMCX3QA,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAELFVRI52OPMQT44VSEETLRCBCBPANCNFSM4KSDMK2Q
.

Are there plans for an alternative API that's less invasive and compatible with Flow?

No, we don’t design functionality to appease type systems.
On Sun, Feb 9, 2020 at 1:40 PM Andy Edwards<EMAIL_ADDRESS>wrote:

Are there plans for an alternative API that's less invasive and compatible
with Flow?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/styled-components/styled-components/issues/3012?email_source=notifications&email_token=AAELFVW73LVSMKOLBDD3D6DRCBEYJA5CNFSM4KSDMK22YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOELGUNYQ#issuecomment-583878370,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAELFVRC4WD2ANMH4JXTOODRCBEYJANCNFSM4KSDMK2Q
.

Okay, @types/styled-components supports this but I had to dig into issues to find out how: https://github.com/DefinitelyTyped/DefinitelyTyped/issues/31245#issuecomment-446011384
I'll make a PR to the docs for the css prop to note this for people

@jedwards1211 What did you do to make this work?

I can't speak from experience because I was just looking into what the consequences of Material UI switching to styled-components would be.  The comment I linked recommends how to solve it

For me the /// <reference ... didn't work, and I had to use import {} from 'styled-components/cssprop'; instead. Then reading a little further down I realised I could just copy the cssprop.d.ts file into my module augmentation folder, and it works globally without anything else.


Dynamic database schema

It would be great for Supabase to give us the ability to create dynamic schemas for apps that support dynamic subdomains.

@pedromassango Could you explain more about what exactly you mean by "dynamic schema" and what exactly the use cases are?

When running the following code, I want Supabase to create a new schema called brand-new-schema (if it doesn't exist) and use it for all my write/read operations.
Our product have multiple clients, and we're trying to find a way to isolate their data by saving it in separate schemas.
  await Supabase.initialize(
    url: supabaseUrl,
    anonKey: supabaseAnonKey,
    debug: kDebugMode,
    postgrestOptions: PostgrestClientOptions(
      schema: 'brand-new-schema'
    )
  );

@pedromassango That is not how schema is designed to be used in Postgres. You shouldn't have an enormously large number of schemas in your database.
You might want to look into partitioning.
https://supabase.com/blog/postgres-dynamic-table-partitioning


Exploring localhost mope setup

Changes:

Re-org validation rules
Add test scenarios for init runs
Update init bars setup

Adds:

#501

Signed-off-by: 6za<EMAIL_ADDRESS>

As a general idea, github + aws and github + k3d are meant to be a very similar experience, initial draft:

Later if it works, we may want to converge both installation flows.
For now we will fork to experiment and be able to break.


Can't Install SiaWallet...Alternatives or Fix?

Hi,
I'm currently mining siacoin.
I've been having trouble installing the wallet on 2 different computers.
One on my windows 10 laptop, and the 2nd on linux. Both have trouble syncing. One is stuck at 32% and the other is stuck at 99%.
Does anybody know a fix?
I'm willing to even go with an alternative wallet as I'm mining to a wallet address on Sia that can't even be opened.
Here's the log from the 99% sync:
Loading...
(0/6) Loading siad...
(1/6) Loading gateway...
(2/6) Loading consensus...
(3/6) Loading transaction pool...
(4/6) Loading wallet...
(5/6) Loading host...
(6/6) Loading renter...
Finished loading in 0.390938616 seconds
???

Could you run gateway list on one of your machines?

Hi droghio, how would I do that?
Soery, not very tech savvy.

If you are running the UI, go to the Terminal Plugin, type gateway list in the textbox on the bottom, and then hit enter.


HDDS-10590. [Snapshot] Synchronized snapshot purge, set snapshot property and SstFilteringService

What changes were proposed in this pull request?
SstFilteringService marks the sstFilter flag for a snapshot and updates the RocksDB, code. It may cause snapshot chain corruption (probably not after the fix: https://github.com/apache/ozone/pull/6443) or data inconsistency due to race condition because SstFilteringService updates snapshot info in parallel to SnapshotPurge and SnapshotProperty which also update snapshot info. Even tho SstFilteringService takes a lock before updating snapshotInfo, SnapshotPurge, and SnapshotProperty APIs don't take a lock and rely on OMStateMachine because OMStateMachine is going to process each request sequentially.
In general, each update to snapshotInfoTable should go through API but that is not possible for SstFilteringService because SstFilteringService runs on each OM independently.
This change introduces locks to achieve synchronization among snapshot purge, set snapshot property, and SstFilteringService.
What is the link to the Apache JIRA
HDDS-10590
How was this patch tested?
Existing unit tests.

Thanks @swamirishi for the review.


Added dot-cursor package: https://github.com/id-ekaagr/dot-cursor

Description of changes

Things done

Built on platform(s)

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

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

[x] sandbox = relaxed
[ ] sandbox = true

[x] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

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

Please change your commit message(s) to match the commit message conventions of nixpkgs!
Also, please rebase and remove the merges of nixpkgs/master.


Latest Version fails with Error if Browser request "browserify.js"

thx for your great work, but right now the CommandLine Interface, does not work
http://redisc:8088/browserify.js

Answer from Server
Error: Cannot find module 'cmdparser' from '/'
   at /src/redis-commander/node_modules/browser-resolve/node_modules/resolve/lib/async.js:46:17
   at process (/src/redis-commander/node_modules/browser-resolve/node_modules/resolve/lib/async.js:173:43)
   at ondir (/src/redis-commander/node_modules/browser-resolve/node_modules/resolve/lib/async.js:188:17)
   at load (/src/redis-commander/node_modules/browser-resolve/node_modules/resolve/lib/async.js:69:43)
   at onex (/src/redis-commander/node_modules/browser-resolve/node_modules/resolve/lib/async.js:92:31)
   at /src/redis-commander/node_modules/browser-resolve/node_modules/resolve/lib/async.js:22:47
   at FSReqWrap.oncomplete (fs.js:152:21)

With git bisect, I got the following result:
db1713a5f92cfc72abe2dbacabe05a888f34b384 is the first bad commit
commit db1713a5f92cfc72abe2dbacabe05a888f34b384
Author: Oren Zomer<EMAIL_ADDRESS>Date:   Sun Jan 7 21:22:59 2018 +0200

    do not change dir

:040000<PHONE_NUMBER>b8e972eb6483e04ace4adff2b77d40023e46 da45f44c43e6e887057606911dad48afde38c28a M      lib

Getting the same error as @haeferer with the latest docker image.

+1

+1

works without problem with latest version from gihub repo when build for yourself...

The commit that removed the fix was reverted. Should be working again now.
Question remains why it is failing for some and not for others using same(?) docker image...

This problem should be fixed in current version.
If you think its not feel free to reopen issue with updated informations based on latest version.


save the TLS config in the h2quic client

fixes #476

Codecov Report

Merging #480 into master will increase coverage by 0.02%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #480      +/-   ##
==========================================
+ Coverage   90.63%   90.65%   +0.02%
==========================================
  Files          80       80
  Lines        5272     5273       +1
==========================================
+ Hits         4778     4780       +2
+ Misses        314      312       -2
- Partials      180      181       +1

Impacted Files
Coverage Δ

client.go
87.58% <0%> (+0.7%)
:white_check_mark:

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 0a825a3...4f16503. Read the comment docs.


JSON-LD on pages

Issue Summary
I created a page and I checked to see what is the json-ld for that page. Apparently is still an Article type. Shouldn't it be a WebPage? Or something else ?
Steps to Reproduce
Create a page.
View source of that page.
Find <script type="application/ld+json">
The "@type" is Article. Maybe WebPage ?
Technical details:

Ghost Version: Ghost 1.0.0 beta.1

Not at the moment. People use pages in a variety of ways and the distinction isn't clear enough to warrant the technical complexity required to differentiate between the two without certainty of it being correct :)


Ext-proc STREAMED mode with router Retry_policy will send duplicated request body

Description:
The upstream service will get duplicated payload when:

enable ext-proc requestBody:STREAMED mode
enable router retry_policy. (with any policy)

Repro steps:

envoy  version: 7b8baff1758f0a584dcc3cb657b5032000bcb3d7/1.31.0/Distribution/RELEASE/BoringSSL

1. envoycfg.yaml
admin:
  address:
    socket_address:
      address: <IP_ADDRESS>
      port_value: 9902
static_resources:

  listeners:
  - name: listener_0
    address:
      socket_address:
        address: <IP_ADDRESS>
        port_value: 10000
    filter_chains:
    - filters:
      - name: envoy.filters.network.http_connection_manager
        typed_config:
          "@type": type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
          stat_prefix: ingress_http
          access_log:
          - name: envoy.access_loggers.stdout
            typed_config:
              "@type": type.googleapis.com/envoy.extensions.access_loggers.stream.v3.StdoutAccessLog
          http_filters:
          - name: envoy.filters.network.http_connection_manager
        typed_config:
          "@type": type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
          stat_prefix: ingress_http
          access_log:
          - name: envoy.access_loggers.stdout
            typed_config:
              "@type": type.googleapis.com/envoy.extensions.access_loggers.stream.v3.StdoutAccessLog
          http_filters:
          - name: envoy.filters.http.ext_proc
            typed_config:
              "@type": type.googleapis.com/envoy.extensions.filters.http.ext_proc.v3.ExternalProcessor
              allow_mode_override: false
              failure_mode_allow: false
              processing_mode:
                request_header_mode: SEND
                response_header_mode: SEND
                request_body_mode: STREAMED
                response_body_mode: STREAMED
              message_timeout: 30s
              grpc_service:
                timeout: 60s
                google_grpc:
                  stat_prefix: test-ext-proc
                  target_uri: <IP_ADDRESS>:20001
          - name: envoy.filters.http.router
            typed_config:
              "@type": type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
          route_config:
            name: echo_route
            virtual_hosts:
            - name: local_service
              domains: ["*"]
              retry_policy:
                retry_on: "connect-failure"
                num_retries: 2
              routes:
              - match:
                  prefix: "/"
                route:
                  cluster: echo_server

  clusters:
  - name: echo_server
    type: static
    load_assignment:
      cluster_name: echo_server
      endpoints:
      - lb_endpoints:
        - endpoint:
            address:
              socket_address:
                address: <IP_ADDRESS>
                port_value: 4000

2. echo_server code example:
var express = require('express')
var app = express()

app.post('/', function (req, res) {
    let payloadSize = 0;
    req.on('data', (chunk) => {
      payloadSize += chunk.length;
      console.log(`received chunk length: ${chunk.length}, total: ${payloadSize}`);
    });

    req.on('end', () => {
      console.log(`received total payload size: ${payloadSize}`);
      res.send({
        headers: req.headers,
        query: req.query,
        params: req.params,
        url: req.url,
        body: req.body,
        hostname: req.hostname,
        ip: req.ip,
        ips: req.ips,
        method: req.method,
        baseUrl: req.baseUrl,
        originalUrl: req.originalUrl,
        protocol: req.protocol,
        cookies: req.cookies,
        payloadSize: payloadSize,
      });
    });

})
app.listen(4000);

3. side stream server
here is one example of ext-proc side stream server implementation to use: https://gist.github.com/xr/94a6cb60e11028c837f46fac01ae37bd
4. send request
curl --location 'http://localhost:10000/' \
--header 'Content-Type: application/octet-stream' \
--data<EMAIL_ADDRESS>
The size of file i used is 1048576 bytes.
Problem
I got payload size from the upstream server is 2097152 which is doubled the amount.
Logs from ext-proc side server (looks good):
Received request type: *ext_procv3.ProcessingRequest_RequestHeaders
Received headers: headers:{headers:{key:":authority"  raw_value:"localhost:10000"}  headers:{key:":path"  raw_value:"/"}  headers:{key:":method"  raw_value:"POST"}  headers:{key:":scheme"  raw_value:"http"}  headers:{key:"user-agent"  raw_value:"PostmanRuntime/7.37.3"}  headers:{key:"accept"  raw_value:"*/*"}  headers:{key:"cache-control"  raw_value:"no-cache"}  headers:{key:"postman-token"  raw_value:"9e3d4f39-a71a-4a7d-b004-4b63e5f5bec0"}  headers:{key:"accept-encoding"  raw_value:"gzip, deflate, br"}  headers:{key:"content-length"  raw_value:"1048576"}  headers:{key:"content-type"  raw_value:"application/octet-stream"}  headers:{key:"x-forwarded-proto"  raw_value:"http"}  headers:{key:"x-request-id"  raw_value:"46021c15-769d-4a87-b225-9c2238c25125"}}
Received request type: *ext_procv3.ProcessingRequest_RequestBody
Received request body size 65536, endOfStream: false
Received request type: *ext_procv3.ProcessingRequest_RequestBody
Received request body size 917504, endOfStream: false
Received request type: *ext_procv3.ProcessingRequest_RequestBody
Received request body size 65536, endOfStream: false
Received request type: *ext_procv3.ProcessingRequest_RequestBody
Received request body size 0, endOfStream: true
Received end of stream
Received request type: *ext_procv3.ProcessingRequest_ResponseHeaders
Received request type: *ext_procv3.ProcessingRequest_ResponseBody
Stream closed by proxy

Logs from the upstrea server, which is not good, duplicated payload:
received chunk length: 64903, total: 64903
received chunk length: 633, total: 65536
received chunk length: 65529, total: 131065
received chunk length: 65536, total: 196601
received chunk length: 65536, total: 262137
received chunk length: 65536, total: 327673
received chunk length: 65536, total: 393209
received chunk length: 65536, total: 458745
received chunk length: 65536, total: 524281
received chunk length: 65536, total: 589817
received chunk length: 65536, total: 655353
received chunk length: 65536, total: 720889
received chunk length: 65536, total: 786425
received chunk length: 65536, total: 851961
received chunk length: 65536, total: 917497
received chunk length: 65536, total: 983033
received chunk length: 7, total: 983040
received chunk length: 65520, total: 1048560
received chunk length: 16, total: 1048576
received chunk length: 65510, total: 1114086
received chunk length: 65536, total: 1179622
received chunk length: 65536, total: 1245158
received chunk length: 65536, total: 1310694
received chunk length: 65536, total: 1376230
received chunk length: 65536, total: 1441766
received chunk length: 65536, total: 1507302
received chunk length: 65536, total: 1572838
received chunk length: 65536, total: 1638374
received chunk length: 65536, total: 1703910
received chunk length: 65536, total: 1769446
received chunk length: 65536, total: 1834982
received chunk length: 65536, total: 1900518
received chunk length: 65536, total: 1966054
received chunk length: 65536, total: 2031590
received chunk length: 65536, total: 2097126
received chunk length: 26, total: 2097152
received total payload size: 2097152

envoy logs
[2024-09-13 15:47:55.440][64800441][debug][main] [source/server/server.cc:237] flushing stats
[2024-09-13 15:47:55.988][64800452][debug][http] [source/common/http/conn_manager_impl.cc:385] [Tags: "ConnectionId":"0"] new stream
[2024-09-13 15:47:55.988][64800452][debug][http] [source/common/http/conn_manager_impl.cc:1135] [Tags: "ConnectionId":"0","StreamId":"8704630574034820302"] request headers complete (end_stream=false):
':authority', 'localhost:10000'
':path', '/'
':method', 'POST'
'user-agent', 'PostmanRuntime/7.37.3'
'accept', '*/*'
'cache-control', 'no-cache'
'postman-token', '5fb57b61-d5b4-43f5-8488-7893728fcbd7'
'accept-encoding', 'gzip, deflate, br'
'connection', 'keep-alive'
'content-length', '1048576'
'content-type', 'application/octet-stream'

[2024-09-13 15:47:55.988][64800452][debug][connection] [./source/common/network/connection_impl.h:98] [Tags: "ConnectionId":"0"] current connecting state: false
[2024-09-13 15:47:55.988][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/ext_proc.cc:338] Opening gRPC stream to external processor
[2024-09-13 15:47:55.989][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/processor_state.cc:29] Traffic direction INBOUND: 30000 ms timer enabled
[2024-09-13 15:47:55.989][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/ext_proc.cc:433] Sending headers message
[2024-09-13 15:47:55.989][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/processor_state.cc:408] Watermark raised on decoding
[2024-09-13 15:47:55.989][64800452][debug][http] [source/common/http/conn_manager_impl.cc:1878] [Tags: "ConnectionId":"0","StreamId":"8704630574034820302"] Read-disabling downstream stream due to filter callbacks.
[2024-09-13 15:47:55.989][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/ext_proc.cc:1074] Received request headers response
[2024-09-13 15:47:55.989][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/processor_state.cc:87] applying headers response. body mode = STREAMED
[2024-09-13 15:47:55.989][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/processor_state.cc:55] Traffic direction INBOUND: timer disabled
[2024-09-13 15:47:55.989][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/processor_state.cc:159] Sending first chunk using buffered data (65536)
[2024-09-13 15:47:55.989][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/ext_proc.cc:862] Sending a body chunk of 65536 bytes, end_stream false
[2024-09-13 15:47:55.989][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/processor_state.cc:29] Traffic direction INBOUND: 30000 ms timer enabled
[2024-09-13 15:47:55.990][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/processor_state.cc:416] Watermark lowered on decoding
[2024-09-13 15:47:55.990][64800452][debug][http] [source/common/http/conn_manager_impl.cc:1868] [Tags: "ConnectionId":"0","StreamId":"8704630574034820302"] Read-enabling downstream stream due to filter callbacks.
[2024-09-13 15:47:55.990][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/processor_state.cc:392] Continuing processing
[2024-09-13 15:47:55.990][64800452][debug][router] [source/common/router/router.cc:525] [Tags: "ConnectionId":"0","StreamId":"8704630574034820302"] cluster 'echo_server' match for URL '/'
[2024-09-13 15:47:55.990][64800452][debug][router] [source/common/router/router.cc:750] [Tags: "ConnectionId":"0","StreamId":"8704630574034820302"] router decoding headers:
':authority', 'localhost:10000'
':path', '/'
':method', 'POST'
':scheme', 'http'
'user-agent', 'PostmanRuntime/7.37.3'
'accept', '*/*'
'cache-control', 'no-cache'
'postman-token', '5fb57b61-d5b4-43f5-8488-7893728fcbd7'
'accept-encoding', 'gzip, deflate, br'
'content-type', 'application/octet-stream'
'x-forwarded-proto', 'http'
'x-request-id', '8708f5a3-3446-4a9f-8ed8-2775599dde58'
'x-envoy-expected-rq-timeout-ms', '15000'

[2024-09-13 15:47:55.990][64800452][debug][pool] [source/common/http/conn_pool_base.cc:78] queueing stream due to no available connections (ready=0 busy=0 connecting=0)
[2024-09-13 15:47:55.990][64800452][debug][pool] [source/common/conn_pool/conn_pool_base.cc:291] trying to create new connection
[2024-09-13 15:47:55.990][64800452][debug][pool] [source/common/conn_pool/conn_pool_base.cc:145] creating a new connection (connecting=0)
[2024-09-13 15:47:55.990][64800452][debug][connection] [./source/common/network/connection_impl.h:98] [Tags: "ConnectionId":"4"] current connecting state: true
[2024-09-13 15:47:55.990][64800452][debug][client] [source/common/http/codec_client.cc:57] [Tags: "ConnectionId":"4"] connecting
[2024-09-13 15:47:55.990][64800452][debug][connection] [source/common/network/connection_impl.cc:1017] [Tags: "ConnectionId":"4"] connecting to <IP_ADDRESS>:4000
[2024-09-13 15:47:55.990][64800452][debug][connection] [source/common/network/connection_impl.cc:1036] [Tags: "ConnectionId":"4"] connection in progress
[2024-09-13 15:47:55.990][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/ext_proc.cc:862] Sending a body chunk of 917504 bytes, end_stream false
[2024-09-13 15:47:55.991][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/processor_state.cc:29] Traffic direction INBOUND: 30000 ms timer enabled
[2024-09-13 15:47:55.991][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/ext_proc.cc:1074] Received request body response
[2024-09-13 15:47:55.991][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/processor_state.cc:225] Processing body response
[2024-09-13 15:47:55.991][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/processor_state.cc:55] Traffic direction INBOUND: timer disabled
[2024-09-13 15:47:55.991][64800452][debug][connection] [source/common/network/connection_impl.cc:746] [Tags: "ConnectionId":"4"] connected
[2024-09-13 15:47:55.991][64800452][debug][client] [source/common/http/codec_client.cc:88] [Tags: "ConnectionId":"4"] connected
[2024-09-13 15:47:55.991][64800452][debug][pool] [source/common/conn_pool/conn_pool_base.cc:328] [Tags: "ConnectionId":"4"] attaching to next stream
[2024-09-13 15:47:55.991][64800452][debug][pool] [source/common/conn_pool/conn_pool_base.cc:182] [Tags: "ConnectionId":"4"] creating stream
[2024-09-13 15:47:55.991][64800452][debug][router] [source/common/router/upstream_request.cc:595] [Tags: "ConnectionId":"0","StreamId":"8704630574034820302"] pool ready
[2024-09-13 15:47:55.991][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/ext_proc.cc:862] Sending a body chunk of 65536 bytes, end_stream false
[2024-09-13 15:47:55.992][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/processor_state.cc:29] Traffic direction INBOUND: 30000 ms timer enabled
[2024-09-13 15:47:55.992][64800452][debug][http] [source/common/http/conn_manager_impl.cc:1118] [Tags: "ConnectionId":"0","StreamId":"8704630574034820302"] request end stream
[2024-09-13 15:47:55.992][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/ext_proc.cc:862] Sending a body chunk of 0 bytes, end_stream true
[2024-09-13 15:47:55.992][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/processor_state.cc:29] Traffic direction INBOUND: 30000 ms timer enabled
[2024-09-13 15:47:55.992][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/ext_proc.cc:1074] Received request body response
[2024-09-13 15:47:55.992][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/processor_state.cc:225] Processing body response
[2024-09-13 15:47:55.993][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/processor_state.cc:55] Traffic direction INBOUND: timer disabled
[2024-09-13 15:47:55.993][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/ext_proc.cc:1074] Received request body response
[2024-09-13 15:47:55.993][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/processor_state.cc:225] Processing body response
[2024-09-13 15:47:55.993][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/processor_state.cc:55] Traffic direction INBOUND: timer disabled
[2024-09-13 15:47:55.993][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/ext_proc.cc:1074] Received request body response
[2024-09-13 15:47:55.993][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/processor_state.cc:225] Processing body response
[2024-09-13 15:47:55.993][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/processor_state.cc:55] Traffic direction INBOUND: timer disabled
[2024-09-13 15:47:55.993][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/processor_state.cc:392] Continuing processing
[2024-09-13 15:47:55.993][64800452][debug][router] [source/common/router/router.cc:877] The request payload has at least 2097152 bytes data which exceeds buffer limit 1048576. Give up on the retry/shadow.
[2024-09-13 15:47:55.993][64800452][debug][http] [source/common/http/conn_manager_impl.cc:1878] [Tags: "ConnectionId":"0","StreamId":"8704630574034820302"] Read-disabling downstream stream due to filter callbacks.
[2024-09-13 15:47:55.993][64800452][debug][http] [source/common/http/conn_manager_impl.cc:1868] [Tags: "ConnectionId":"0","StreamId":"8704630574034820302"] Read-enabling downstream stream due to filter callbacks.
[2024-09-13 15:47:55.993][64800452][debug][connection] [source/common/network/connection_impl.cc:594] [Tags: "ConnectionId":"4"] onAboveWriteBufferHighWatermark
[2024-09-13 15:47:55.993][64800452][debug][http] [source/common/http/conn_manager_impl.cc:1878] [Tags: "ConnectionId":"0","StreamId":"8704630574034820302"] Read-disabling downstream stream due to filter callbacks.
[2024-09-13 15:47:55.993][64800452][debug][client] [source/common/http/codec_client.cc:142] [Tags: "ConnectionId":"4"] encode complete
[2024-09-13 15:47:55.994][64800452][debug][connection] [source/common/network/connection_impl.cc:583] [Tags: "ConnectionId":"4"] onBelowWriteBufferLowWatermark
[2024-09-13 15:47:55.994][64800452][debug][http] [source/common/http/conn_manager_impl.cc:1868] [Tags: "ConnectionId":"0","StreamId":"8704630574034820302"] Read-enabling downstream stream due to filter callbacks.
[2024-09-13 15:47:55.996][64800452][debug][router] [source/common/router/router.cc:1551] [Tags: "ConnectionId":"0","StreamId":"8704630574034820302"] upstream headers complete: end_stream=false
[2024-09-13 15:47:55.996][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/processor_state.cc:29] Traffic direction OUTBOUND: 30000 ms timer enabled
[2024-09-13 15:47:55.996][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/ext_proc.cc:433] Sending headers message
[2024-09-13 15:47:55.996][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/processor_state.cc:474] Watermark raised on encoding
[2024-09-13 15:47:55.996][64800452][debug][http] [source/common/http/filter_manager.cc:1736] [Tags: "ConnectionId":"0","StreamId":"8704630574034820302"] Disabling upstream stream due to filter callbacks.
[2024-09-13 15:47:55.997][64800452][debug][client] [source/common/http/codec_client.cc:129] [Tags: "ConnectionId":"4"] response complete
[2024-09-13 15:47:55.997][64800452][debug][pool] [source/common/http/http1/conn_pool.cc:53] [Tags: "ConnectionId":"4"] response complete
[2024-09-13 15:47:55.997][64800452][debug][pool] [source/common/conn_pool/conn_pool_base.cc:215] [Tags: "ConnectionId":"4"] destroying stream: 0 remaining
[2024-09-13 15:47:55.997][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/ext_proc.cc:1074] Received response headers response
[2024-09-13 15:47:55.997][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/processor_state.cc:87] applying headers response. body mode = STREAMED
[2024-09-13 15:47:55.997][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/processor_state.cc:55] Traffic direction OUTBOUND: timer disabled
[2024-09-13 15:47:55.997][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/ext_proc.cc:862] Sending a body chunk of 647 bytes, end_stream true
[2024-09-13 15:47:55.997][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/processor_state.cc:29] Traffic direction OUTBOUND: 30000 ms timer enabled
[2024-09-13 15:47:55.997][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/processor_state.cc:482] Watermark lowered on decoding
[2024-09-13 15:47:55.997][64800452][debug][http] [source/common/http/filter_manager.cc:1741] [Tags: "ConnectionId":"0","StreamId":"8704630574034820302"] Enabling upstream stream due to filter callbacks.
[2024-09-13 15:47:55.997][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/ext_proc.cc:1074] Received response body response
[2024-09-13 15:47:55.997][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/processor_state.cc:225] Processing body response
[2024-09-13 15:47:55.997][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/processor_state.cc:55] Traffic direction OUTBOUND: timer disabled
[2024-09-13 15:47:55.997][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/processor_state.cc:392] Continuing processing
[2024-09-13 15:47:55.997][64800452][debug][http] [source/common/http/conn_manager_impl.cc:1825] [Tags: "ConnectionId":"0","StreamId":"8704630574034820302"] encoding headers via codec (end_stream=false):
':status', '200'
'x-powered-by', 'Express'
'access-control-allow-origin', '*'
'content-type', 'application/json; charset=utf-8'
'etag', 'W/"287-ZAOJ/ey45dda2/J3tn21U+HNqLg"'
'date', 'Fri, 13 Sep 2024 12:47:55 GMT'
'x-envoy-upstream-service-time', '3'
'server', 'envoy'

[2024-09-13 15:47:55.997][64800452][debug][http] [source/common/http/conn_manager_impl.cc:1937] [Tags: "ConnectionId":"0","StreamId":"8704630574034820302"] Codec completed encoding stream.
[2024-09-13 15:47:55.997][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/ext_proc.cc:392] onDestroy
[2024-09-13 15:47:55.997][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/processor_state.cc:55] Traffic direction INBOUND: timer disabled
[2024-09-13 15:47:55.997][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/processor_state.cc:55] Traffic direction OUTBOUND: timer disabled
[2024-09-13 15:47:55.997][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/ext_proc.cc:374] Calling close on stream
[2024-09-13 15:47:55.997][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/client_impl.cc:64] Closing gRPC stream
[2024-09-13 15:47:55.997][64800452][debug][grpc] [source/common/grpc/google_async_client_impl.cc:283] resetStream
[2024-09-13 15:47:55.997][64800452][debug][grpc] [source/common/grpc/google_async_client_impl.cc:456] Stream cleanup with 2 in-flight tags
[2024-09-13 15:47:55.997][64800452][debug][grpc] [source/common/grpc/google_async_client_impl.cc:445] Deferred delete
[2024-09-13 15:47:55.997][64800452][debug][grpc] [source/common/grpc/google_async_client_impl.cc:194] GoogleAsyncStreamImpl destruct
[2024-09-13 15:48:00.440][64800441][debug][main] [source/server/server.cc:237] flushing stats
[2024-09-13 15:48:00.997][64800452][debug][connection] [source/common/network/connection_impl.cc:714] [Tags: "ConnectionId":"4"] remote close
[2024-09-13 15:48:00.997][64800452][debug][connection] [source/common/network/connection_impl.cc:276] [Tags: "ConnectionId":"4"] closing socket: 0
[2024-09-13 15:48:00.997][64800452][debug][client] [source/common/http/codec_client.cc:107] [Tags: "ConnectionId":"4"] disconnect. resetting 0 pending requests
[2024-09-13 15:48:00.997][64800452][debug][pool] [source/common/conn_pool/conn_pool_base.cc:495] [Tags: "ConnectionId":"4"] client disconnected, failure reason:
[2024-09-13 15:48:00.998][64800452][debug][pool] [source/common/conn_pool/conn_pool_base.cc:463] invoking 1 idle callback(s) - is_draining_for_deletion_=false
[2024-09-13 15:48:01.514][64800441][debug][http] [source/common/http/conn_manager_impl.cc:385] [Tags: "ConnectionId":"2"] new stream
[2024-09-13 15:48:01.514][64800441][debug][http] [source/common/http/conn_manager_impl.cc:1135] [Tags: "ConnectionId":"2","StreamId":"2355020986288252190"] request headers complete (end_stream=false):
':authority', 'localhost:9902'
':path', '/logging'
':method', 'POST'
'connection', 'keep-alive'
'content-length', '17'
'cache-control', 'max-age=0'
'sec-ch-ua', '"Not)A;Brand";v="99", "Google Chrome";v="127", "Chromium";v="127"'
'sec-ch-ua-mobile', '?0'
'sec-ch-ua-platform', '"macOS"'
'upgrade-insecure-requests', '1'
'origin', 'http://localhost:9902'
'content-type', 'application/x-www-form-urlencoded'
'user-agent', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36'
'accept', 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7'
'sec-fetch-site', 'same-origin'
'sec-fetch-mode', 'navigate'
'sec-fetch-user', '?1'
'sec-fetch-dest', 'document'
'referer', 'http://localhost:9902/'
'accept-encoding', 'gzip, deflate, br, zstd'
'accept-language', 'en-GB,en-US;q=0.9,en;q=0.8,zh-CN;q=0.7,zh;q=0.6'

[2024-09-13 15:48:01.514][64800441][debug][connection] [./source/common/network/connection_impl.h:98] [Tags: "ConnectionId":"2"] current connecting state: false
[2024-09-13 15:48:01.514][64800441][debug][http] [source/common/http/conn_manager_impl.cc:1118] [Tags: "ConnectionId":"2","StreamId":"2355020986288252190"] request end stream
[2024-09-13 15:48:01.514][64800441][debug][admin] [source/server/admin/admin_filter.cc:85] [Tags: "ConnectionId":"2","StreamId":"2355020986288252190"] request complete: path: /logging
[2024-09-13 15:48:01.514][64800441][info][misc] [source/common/common/logger.cc:220] change all log levels: level='info'

Other Findings:

change to request_body_mode: BUFFERED or BUFFERED_PARTIAL both works, no duplicated payload
remove retry_policy or set retry_on to empty string "" works.

@yanjunxiang-google @tyxia any ideas? thanks!

@xr  what if you don't configure router Retry_policy, would you still see the duplicate body?

ok You mentioned that remove retry_policy or set retry_on to empty string "" works. . Thus the answer to my comment above is : no, this issue only happens when retry is configured.
Can we try to have a simple integration test to reproduce this issue?
Also, add @stevenzzzz  who implemented retry in ext_proc.

the retry_policy in the pasted config seems irrelevant here. tho the retry_policy I added to ext_proc was through the base::grpcService protocol, eventually it will get to the router as well.
I think @xr you might want to check why there was a header_response received before the request header was sent, in the log I saw there was a line suggesting the header response was received
[2024-09-13 15:47:55.989][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/ext_proc.cc:1074] Received request headers response
what is your server, is it a standard grpc server?

I misread the initial issue  that this retry is not the envoy_grpc retry that @stevenzzzz  added. Sorry.
@xr  besides the questions asked above, (1) do you see this behavior with small body? Overall i think it is a good to have a simpler integration test repro with small body. (2) does your ext_proc server amplify the body in anyway?

Hello @tyxia @stevenzzzz thanks for the answers.
I created a repo for you guys to reproduce easily: https://github.com/xr/envoy-issue
as you can see:
./test.sh 1000 -> ok
./test.sh 2000 -> ok
./test.sh 10000 -> ok
./test.sh 50000 -> ok
./test.sh 100000 -> ok
./test.sh 1000000 -> NOT OK, got duplicated payload and received 2000000 from the upstream

for smaller payload, it was OK and the example ext_proc server is just a dummy service so I don't think it amplified the body anyway.

@xr You mentioned the issue is seen on Envoy version 1.31.0.
Do you see this issue in previous Envoy releases?  Or do you have data which release this issue start to show up?

@yanjunxiang-google haven't tested the earlier envoy version, iirc 1.30 the same behaviour.

@xr
Could you please re-run the same test with Envoy "trace" level logs enabled?  Your Envoy logs has "debug" level logs enabled which is missing some important logs.

@xr
Had you re-run the test with "trace" level logs enabled? I am interested to see below logs:
https://github.com/envoyproxy/envoy/blob/eb0bce8c4f71af817bb75a91ca5d623cab1368e1/source/extensions/filters/http/ext_proc/processor_state.cc#L517
i.e, how much data Ext_proc filter is injecting to the router filter.  It should not be 2097152 bytes, thus I am very surprised to see the router filter log is complaining it:
[2024-09-13 15:47:55.993][64800452][debug][ext_proc] [source/extensions/filters/http/ext_proc/processor_state.cc:392] Continuing processing
[2024-09-13 15:47:55.993][64800452][debug][router] [source/common/router/router.cc:877] The request payload has at least 2097152 bytes data which exceeds buffer limit 1048576. Give up on the retry/shadow.
[2024-09-13 15:47:55.993][64800452][debug][http] [source/common/http/conn_manager_impl.cc:1878] [Tags: "Connection

@xr kind ping!

@yanjunxiang-google thanks for taking a look, sorry was missed the ping before, here are some logs:
trace.log
I have triggered payload size and here is the results from this time.
./test.sh 1000 -> ok
./test.sh 10000 -> ok
./test.sh 100000 -> ok
./test.sh 200000 -> ok
./test.sh 300000 -> ok
./test.sh 400000 -> not ok, upstream receive 800000


Add AirportItlwm

Hey, is it possible to add AirportItlwm to this setup? I'm using this computer but I'm having issues with it, wondering if you got it figured out somehow

Sorry, I already replace to a new wifi card so I can not test AirportItlwm  kext.


MAX7219 not working with ESP32 anymore

The MAX7219 is not working together with my NodeMCU ESP32-S anymore. It did around a half year ago, but then I stopped programming with the LED Matrix.
When I upload a sketch it lights up all four or three out of four segments fully up (every pixel is bright doesn't matter what I've programmed), but when I plug it into my computer nothing happens.
I tried both ways of installing the Arduino Core (Board Manager and Windows) and made the avr/pgmspace.h fix.
Does anyone have the same problem?
Thank you in advance

Same for me LedControl lc=LedControl(32,33,25,2); // feather esp32 v1 allowed me to use this library with adafruit feather esp32 v1


Null Safety Migration Preview UI panels should be resizable

As of 1c7fe7196dd7a542f7f91cd6ea2ac81e1a13146c, the null safety migration tool has been removed from active development and retired. No further work on the tool is planned.
If you still need help, or you believe this issue has been closed in error, please feel free to reopen.


Clean up stale unit test. Update detail in Shoot purposes docs

How to categorize this PR?

/kind enhancement
What this PR does / why we need it:
With the introduction of the HA webhooks we deploy components of type server (kube-apiserver is such) with 2 replicas at least no matter what is the purpose of the Shoot. See https://github.com/gardener/gardener/blob/901e117ffa2ea5c9c08f764fb3d37aa239a0db5f/docs/development/high-availability.md#control-plane-components
Hence, it is an outdated information that:

production shoot clusters get at least two replicas of the kube-apiserver for their control planes.

Shoot cluster with any purpose gets at least 2 replicas no matter HA or not.
For more context, in https://github.com/gardener/gardener/pull/9678/files#diff-6ec61cd169e81e73dd683a4c325e0c4bbb76e80ac8bd1de48d7e14aec0439317L98-L100 I cleaned up stale code for computing the kube-apiserver replicas. This PR also drops the unit test that was not cleaned up.
Which issue(s) this PR fixes:
N/A
Special notes for your reviewer:
N/A
Release note:

NONE

/cc @Kostov6

/approve


Design QA - Chat Style

Please update color style for chat. It should be white.

Figma Reference:
https://www.figma.com/file/wogMuUDylgOHgTEYhZ3jgp/Augur-Bet-UI?node-id=7396%3A92658
https://www.figma.com/file/wogMuUDylgOHgTEYhZ3jgp/Augur-Bet-UI?node-id=7396%3A92603

Still seeing the old style after clearing cache. Has update been pushed? @bconfortin

For some reason the tests are running for over 20 hours. It should've completed in like 15 minutes. I'll see what's up. @matt-bullock

@bconfortin @matt-bullock
I see it white now, as we planned for the Betting UI, but there are 2 things that could be improved:

The color used for the press-state doesn't make sense here:

Can we keep it as the hover?

This hover state (bkg-opacity change) doesn't make sense here either. Can we just underline the "Global Chat" words?

Ok!


How to return []*proto.Message from an activity?

I'm thinking that I've missed something important in dealing with Protobuffers, rather than how Temporal works.
I just want to hear if anybody here knows of this issue.
Expected Behavior
events := make([]*pb.SparkpostEvent, 0)
workflow.ExecuteActivity(context, (*activities.Activities).Unmarshal, data).Get(context, &events)

events should now be a slice of *pb.SparkpostEvent, with all levels of protobuf messages below it
Like so:
[
  SparkpostEvent {
    Msys {
      track_event { ... }
    }
  },
  SparkpostEvent{...},
  ...
]

Actual Behavior
The events slice contains all the root level protobuffers but the children are missing.
I have an array of SparkpostEvents, but Msys is just nil.
Steps to Reproduce the Problem

Create a protobuffer message a couple of levels deep
Return an array of them from .Get()

Specifications

Version:

go.temporal.io/api v1.4.1-0.20210429213054-a9a257b5cf16
go.temporal.io/sdk v1.6.0

Platform: M1 Mac

Closing old issue. Lists are converted via a different converter than proto. A pointer to a proto message interface may not be JSON serializable. Use full proto message or JSON serializable types in list if needed.


Is there a way to add new attributes to atom?

Hi, I want to present my data in every atom
I imaged a customized colorscheme will read the value of  atoms if i can do this successfully.
It might exist in NGL:   atom.resno
can I get atoms._input_value in NGL?
Thanks!

The list of fields in the atomStore is preconfigured.
To achieve a coloring per external property as you are mentioning, I've created a colorMaker that polls values from a separate data structure.
    class MyColorMaker extends NGL.Colormaker {
            myScale: ColormakerScale;

            constructor (params: any) {
                super(params);
                this.parameters.scale = 'OrRd';
                this.parameters.domain = [lMin, lMax];
                this.myScale = this.getScale();
            }
            atomColor (a: AtomProxy) {
                const val =myDataStore[a.serial];
                return (val !== -1) ? this.myScale(val) : 0xcccccc;
            }
    }

        NGLColormakerRegistry.add('mycolor', myColorMaker);

The list of fields is preconfigured.
What you can do is create a ColorMaker that will poll values from your own data structure based on the atom id.

The list of fields is preconfigured. What you can do is create a ColorMaker that will poll values from your own data structure based on the atom id. https://nglviewer.org/ngl/api/manual/coloring.html#custom-coloring

thanks! actually, i'm nglview user. Maybe it will be easier to add my data using this function, but in python console i have no idea about to trans by numpy numerical array to a data in a TS or JS form...
A trick thinking is that if i can update specific color in an exist representation just as adding a reprensentation by sele= "@1","@2","@3". Or a presentation just owns a colorscheme?  thank you : )

@appassionate maybe try to follow those threads in nglview:

https://github.com/nglviewer/nglview/issues/913
https://github.com/nglviewer/nglview/pull/839

I do a similar thing (more or less per @ppillot's link, custom class polls data from another source). This gets messier when:

The source is async
Serializing state (persisting parameters etc) - requires also serializing/reproducing state of the data source

I've been toying with a few ways around this and wondered whether having a general method for passing data through to custom colormakers would be useful? I think it would make a few things I do less verbose as no custom colormaker would be required, just some paramters.
export interface ColormakerParameters extends ScaleParameters {
  structure?: Structure
  volume?: Volume
  surface?: Surface
  data?: any  //
}

This would make use of all the existing code around updating a representation with new data (i.e. setParameters({colorData: someNewData}).
More formally, it might be nice to tie the type down a bit more than just any (maybe have optional atomData: { [atomIndex: number]: number}, bondData), these could work with a StructureDataColorMaker...
All thoughts and discussion welcome!

merry xmas!
Thanks those consideration. "colormaker” will contain rendering performance optimization...?  i guess. As a python user, i know less about it... : ) A single structure can be imaged, it will be suitable to render a trajectory? Thanks.

Colormakers are the mechanism by which NGL generates color values for rendering (for single structures or trajectories). If you're just passing in an array of values (one per atom index) then the performance would be comparable to e.g. coloring by bfactor.
If the values are static across the whole trajectory, then I think it should "just work" after this is merged, with no hit to performance. If the values (and therefore colors) are changing per-frame, then it might require another few changes, but should be feasible, is that the case?

Colormakers are the mechanism by which NGL generates color values for rendering (for single structures or trajectories). If you're just passing in an array of values (one per atom index) then the performance would be comparable to e.g. coloring by bfactor.
If the values are static across the whole trajectory, then I think it should "just work" after this is merged, with no hit to performance. If the values (and therefore colors) are changing per-frame, then it might require another few changes, but should be feasible, is that the case?

Yes, I agree.  If value changing per-frame, I guess it will need some "stream reading" process. I think NGL must have finished those topic, for nglviewe can visualize MDAnalysis trajectory (which is a "stream-like reading" package).
"Original" trajectory information have been loaded by a file in a format. And the data "containing information per frame" might be extra, i guess..

@appassionate - I'm going to close this for now, but please feel free to re-open if you want to revisit it.


Change Classroom to Room Data Model

Change classrooms to rooms. Have yet to add LESSONS and TAGS to classrooms. Added user to get their specific class (that they created) functionality.

Also its useful to mark conversations resolved once they are not longer relevant, just so I dont need to read them checking if they already said something I want to say


problem with rails generate refills:list

Running this command seems to generate information only on the rails generate command, not a list of refills snippets as documented. You can run rails generate and it has the same effect as running rails generate refills:list. Unless there is some sort of issue with my configuration?

@heaversm - I rails new'd an application that includes refills
$ rails g refills:list
Available Refills
=================
- accordion-tabs-minimal
- accordion-tabs
- accordion
- animate-info
- animate
- badges
- breadcrumbs
- button-group
- cards
- centered-navigation
- comment
- device
- dropdown
- expander
- fade-in
- flashes
- flex-boxes
- footer-2
- footer
- grid-items-lines
- grid-items
- hero
- hover-tile-animation
- icon-bullet-points
- image-gradient-dynamic
- maps
- modal
- navigation
- pagination
- parallax
- progress-bar-indication
- progress-bar
- ribbon
- scroll-on-page
- search-bar
- search-tools
- side-image
- sliding-menu
- stats
- switch
- tables-minimal
- tables
- texture-legend
- textures
- tooltip
- type-system-geometric
- type-system-rounded
- type-system-sans
- type-system-serif
- type-system-slab
- type-system-traditional
- vertical-tabs
- video

This can be related, we just released 0.1.0 of refills. Could you try bumping the version in your application?
If that doesn't help, we need some more details to debug the issue more. Like what version of rails you are on etc.

@teoljungberg  - I upgraded the gem (bundle update refills) but still experience the same thing. I'm on ruby 2.2.0p0 with bundler v 1.7.12.

There is something on your side here, what version of rails are you on? Could anything be colliding? Can you reproduce the issue elsewhere? What are the minimal steps of reproducing the issue, if you can reproduce it?

@heaversm I'll close this until we have more information to work from


Research and Write ADR for static/marketing site

It doesn't make sense to make the marketing site/blog part of the Angular application. There are a lot of choices out there re: what we do for the marketing site.

Should we use a static site generator?
If so which one?
Should it be a hosted wordpress site?
Is it a subdomain or the root of rasterfoundry.com (e.g. /index.html would be marketing, /lab (or better name) would be entry point into the angular application?

As far as domain layout goes, my high level preferences are:

rasterfoundry.com redirects to www.rasterfoundry.com in all cases
Marketing website/landing page lives on www.rasterfoundry.com and is a static website or landing page service
Web application lives on app.rasterfoundry.com
Blog lives on blog.rasterfoundry.com and uses a service like Medium or similar

I agree with hector. I'm open to discuss what we use for building the marketing site/landing page.

Using a hosted service like Medium would be my blogging dreams realized.

This all makes sense to me - I like the idea of using a hosted services for these as well.

Brief summary of decisions made during today's meeting:

Medium hosted blog at blog.rasterfoundry.com
Web application lives on app.rasterfoundry.com
Jekyll based landing page on www.rasterfoundry.com

Medium Pros:

Comes with its own separate SSL Certificate out of the box
Publishing, editing is dead simple so we can work quickly and without technical support  (this matters the most to me)
Has built-in discoverability through Medium's existing and growing community
It's free

Medium Cons:

Customizability is extremely limited
Analytics/tracking is limited

Decision rationale: We want to make decisions now that will allow us to move quickly and experiment later. Medium may be a little generic, but we had a publication set up in less than ten minutes. We hope this choice will allow us to focus on content rather than design, so that we can allow Matt time to focus on other design challenges that are more pressing. With Medium we hope to be self-serving blog posts at our own convenience without having to push to a staging server or involve developers.


Reduce cluster and polish look and feel - Too many interface / CLI Screenshots

Move images of screenshots to Discussions page for instructions, to have visual reference if needed.
But code blocks with instructions sufficient, unless output really novel or unexpected.

Fixed up and moved images to discussions pages.


Clean up code base

[x] Make sure address book or description book is gone and change it to inventory/recipe book as appropriate
[x] Check the returned error messages (eg: missing spaces) that makes the sample command not copy-pastable (add ingredient error message is an example)
[ ] Rename ingredients commands and parsers to include ingredients and move them to the ingredient folder just like the recipe counterpart
[ ] Organisation of code (functions related to ingredients should be grouped together with comments to denote the section etc)
[ ] Some misplaced assertion arguments (should be expected vs actual but it was actual vs expected instead)
[ ] Optional (Code style refactoring, the test cases have different styles of writing between ingredient and recipes and a mix of here n there, recipe use stubs, ingredients don't, etc)

Closing because the rest are non critical


RouteDetails tests

RouteDetails tests added

Good job! The tests work for me. There are logs of some errors but I think they come from other places. I added a commit just deleting one call to console.log() in the tests, if that is not needed just merge whenever you want.


Added custom flyout scoreboard to show 10v10 player scores

I have modified it to be as close as the existing new 5v5 scoreboard.
However this does not have mute button yet
Nor does it have the button 3 buttons

Nice


_bindingRegex + _parseBindings erroneously removing template contents

As demonstrated in the following Plunker the current regex employed by _bindingRegex fails to appropriately parse the { to begin the object notation in the template when employed in _parseBindings.  Here I've replaced the character with a property binding but that's no good...
http://plnkr.co/edit/wzKmEx34SDmVsR9B5WvI?p=preview
Code inline:
<dom-module id="x-test">
	     <template>
	         {
	          "@context": "http://schema.org"
	          "@type": "ImageObject",
	          "author": "[[author]]"
	         }
	       <br/>
	       [[hack]]
	          "@context": "http://schema.org"
	          "@type": "ImageObject",
	          "author": "[[author]]"
	         }
	     </template>
	  </dom-module>
	  <script>
	  Polymer({
    is: 'x-test',
    properties: {
      author: {
        type: String,
        value: 'test'
      },
      hack: {
        type: String,
        value: '{'
      }
    }
	  });
	  </script>
</dom-module>

Will be resolved in https://github.com/Polymer/polymer/pull/3017.
Updated plnkr:
http://plnkr.co/edit/cuU5jkzlsf4HvHTdgVqx?p=preview

Thanks @kevinpschaaf this looks great.  What's more, I dig polygit a little more every day for things like the returned plnkr!
Closing in reference to #3017


Discuss discovered devices list in adapter

Maintaining this state adds additional complexity and higher chances of errors. All discover and scan methods should never use the cached list of devices.

We should not expose this property in the IAdapter interface. We still need the list internally to distinguish between device discovered and device advertised.


Feature request: return org names in getOrganization and getUserOrganizations helpers

Prerequisites

[X] I have searched the repository’s issues and Kinde community to ensure my feature request isn’t a duplicate
[X] I have read the contributing guidelines
[X] I agree to the terms in the code of conduct

What is the problem you’re trying to solve?
Can't get user's orgs names. I'd like to let the user know which org they have logged into and also offer the option to switch orgs.
What solution would you like to see?
Functions getOrganization and getUserOrganizations could return not only org codes but also org names.
Additional information
using import { getKindeServerSession } from '@kinde-oss/kinde-auth-nextjs/server'

Thanks for raising @fthiesen we're discussing this one internally now :)

Hey @fthiesen just as an update on this one, we're currently working on our custom claims feature which will allow org names (and other custom claims) to be made available in the token, but we're probably still a few weeks away from release.

I think this is an important feature, is there already an update on this?

@thijs981 @fthiesen apologies for the delay. You can now add additional claims to the access and id tokens https://kinde.com/docs/build/token-customization/#token-customization

This is affecting if I actually use Kinde. I really love must of your features, but this specifically is driving me crazy. I would love to have more metadata of the organizations. Thanks in advance for any update!

Closed due to no response in 7 days.


How to attach panda to mobile robot base in gazebo?

Hey everyone,
I am trying to attach the panda to my mobile platform. For this I merged panda_arm.urdf.xacro and the xacro of my platform and connected panda_link0 with base_link. Unfortunately, the move_group doesn't work then.
I think I am making a basic mistake here. Can it be that you spawn the mobile platform as well as the panda separately and connect them as separate robots somehow? Unfortunately I can't find a clear explanation for the example in the panda docs either. I think i am not the first person who tries this.
thanks for your help!

solved: dont use planar move plugin. use force_base_move plugin instead on your mecanum wheel platform.


Open Source Firebase Remote Config

Open source Remote Config

Add tvOS and macOS support (fix #1674)
Validate Catalyst build

CI and additional cleanup will follow in subsequent PRs.

Closing. Will do more prep and redo later.