Unable to add accessory to Apple Home (multi-admin)?

I tested this a while back (a year ago maybe) and then I got this to work with Python Matter Server.
Now, I can't get this to work anymore.
I'm able to first add a device to Apple Home and then add it to Python Matter Server, but not the other way around.
This is how I test:

Start a fresh instance of Python Matter Server
Add an accessory (testet with an Eve System Smart Plug)
Send this command to Python Matter Server:

[13.10.2024 12:26:39.560 INF] MatterServerClient.SendCommandAsync: Sending command:
{
"message_id": "5",
"command": "open_commissioning_window",
"args": {
"node_id": 1
}
}
Getting this reply:
[13.10.2024 12:26:40.177 INF] Received response:
{
"message_id": "5",
"result": {
"setup_pin_code": 55079003,
"setup_manual_code": "32876333616",
"setup_qr_code": "MT:00000K0V012VE278610"
}
}
Using the QR code I try to add it to Apple Home using the app on the iPhone, but this fails with a generic error like Accessory Not Found or "Uanable to Add Accessory".
This is from the Python Matter Server log:
2024-10-13 12:20:36.191 (MainThread) INFO [matter_server.server.stack] Initializing CHIP/Matter Logging...
2024-10-13 12:20:36.192 (MainThread) INFO [matter_server.server.stack] Initializing CHIP/Matter Controller Stack...
[1728822036.259599][1:1] CHIP:CTL: Setting attestation nonce to random value
[1728822036.259996][1:1] CHIP:CTL: Setting CSR nonce to random value
[1728822036.261495][1:1] CHIP:DL: ChipLinuxStorage::Init: Using KVS config file: /tmp/chip_kvs
[1728822036.261958][1:1] CHIP:DL: writing settings to file (/tmp/chip_kvs-trrJYe)
[1728822036.262071][1:1] CHIP:DL: renamed tmp file to file (/tmp/chip_kvs)
[1728822036.262433][1:1] CHIP:DL: ChipLinuxStorage::Init: Using KVS config file: /data/chip_factory.ini
[1728822036.262548][1:1] CHIP:DL: writing settings to file (/data/chip_factory.ini-bSIvci)
[1728822036.262625][1:1] CHIP:DL: renamed tmp file to file (/data/chip_factory.ini)
[1728822036.262661][1:1] CHIP:DL: ChipLinuxStorage::Init: Using KVS config file: /data/chip_config.ini
[1728822036.262755][1:1] CHIP:DL: writing settings to file (/data/chip_config.ini-Jd809e)
[1728822036.262820][1:1] CHIP:DL: renamed tmp file to file (/data/chip_config.ini)
[1728822036.262855][1:1] CHIP:DL: ChipLinuxStorage::Init: Using KVS config file: /data/chip_counters.ini
[1728822036.262918][1:1] CHIP:DL: writing settings to file (/data/chip_counters.ini-vewg2h)
[1728822036.262975][1:1] CHIP:DL: renamed tmp file to file (/data/chip_counters.ini)
[1728822036.263378][1:1] CHIP:DL: writing settings to file (/data/chip_factory.ini-PtDF8i)
[1728822036.263690][1:1] CHIP:DL: renamed tmp file to file (/data/chip_factory.ini)
[1728822036.263716][1:1] CHIP:DL: NVS set: chip-factory/unique-id = "FE6624C782895C28"
[1728822036.263862][1:1] CHIP:DL: writing settings to file (/data/chip_factory.ini-PUi0Vf)
[1728822036.264843][1:1] CHIP:DL: renamed tmp file to file (/data/chip_factory.ini)
[1728822036.264878][1:1] CHIP:DL: NVS set: chip-factory/vendor-id = 65521 (0xFFF1)
[1728822036.265023][1:1] CHIP:DL: writing settings to file (/data/chip_factory.ini-NJHPfh)
[1728822036.265273][1:1] CHIP:DL: renamed tmp file to file (/data/chip_factory.ini)
[1728822036.265304][1:1] CHIP:DL: NVS set: chip-factory/product-id = 32769 (0x8001)
[1728822036.265427][1:1] CHIP:DL: writing settings to file (/data/chip_counters.ini-oKAnVe)
[1728822036.265628][1:1] CHIP:DL: renamed tmp file to file (/data/chip_counters.ini)
[1728822036.265649][1:1] CHIP:DL: NVS set: chip-counters/reboot-count = 1 (0x1)
[1728822036.265775][1:1] CHIP:DL: writing settings to file (/data/chip_counters.ini-Dvqvbi)
[1728822036.266001][1:1] CHIP:DL: renamed tmp file to file (/data/chip_counters.ini)
[1728822036.266037][1:1] CHIP:DL: NVS set: chip-counters/total-operational-hours = 0 (0x0)
[1728822036.266174][1:1] CHIP:DL: writing settings to file (/data/chip_counters.ini-vJOxlf)
[1728822036.266436][1:1] CHIP:DL: renamed tmp file to file (/data/chip_counters.ini)
[1728822036.266461][1:1] CHIP:DL: NVS set: chip-counters/boot-reason = 0 (0x0)
[1728822036.266590][1:1] CHIP:DL: writing settings to file (/data/chip_config.ini-fppO6e)
[1728822036.266791][1:1] CHIP:DL: renamed tmp file to file (/data/chip_config.ini)
[1728822036.266812][1:1] CHIP:DL: NVS set: chip-config/regulatory-location = 0 (0x0)
[1728822036.266940][1:1] CHIP:DL: writing settings to file (/data/chip_config.ini-Ek4J2f)
[1728822036.267174][1:1] CHIP:DL: renamed tmp file to file (/data/chip_config.ini)
[1728822036.267199][1:1] CHIP:DL: NVS set: chip-config/location-capability = 2 (0x2)
[1728822036.267527][1:1] CHIP:DL: Got Ethernet interface: eth0
[1728822036.267677][1:1] CHIP:DL: Found the primary Ethernet interface:eth0
[1728822036.267827][1:1] CHIP:DL: Got WiFi interface: wlan0
[1728822036.267860][1:1] CHIP:DL: Failed to reset WiFi statistic counts
2024-10-13 12:20:36.268 (MainThread) INFO [chip.storage] Initializing persistent storage from file: /data/chip.json
2024-10-13 12:20:36.268 (MainThread) ERROR [chip.storage] [Errno 2] No such file or directory: '/data/chip.json'
2024-10-13 12:20:36.269 (MainThread) CRITICAL [chip.storage] Could not load configuration from /data/chip.json - resetting configuration...
2024-10-13 12:20:36.269 (MainThread) WARNING [chip.storage] No valid SDK configuration present - clearing out configuration
2024-10-13 12:20:36.269 (MainThread) WARNING [chip.storage] No valid REPL configuration present - clearing out configuration
2024-10-13 12:20:36.474 (MainThread) INFO [chip.CertificateAuthority] Loading certificate authorities from storage...
2024-10-13 12:20:36.474 (MainThread) INFO [chip.CertificateAuthority] New CertificateAuthority at index 1
2024-10-13 12:20:36.484 (MainThread) INFO [chip.FabricAdmin] New FabricAdmin: FabricId: 0x0000000000000001, VendorId = 0xFFF1
2024-10-13 12:20:36.484 (MainThread) INFO [matter_server.server.stack] CHIP Controller Stack initialized.
2024-10-13 12:20:36.485 (MainThread) INFO [matter_server.server.server] Starting the Matter Server...
2024-10-13 12:20:36.493 (MainThread) INFO [matter_server.server.helpers.paa_certificates] Fetching the latest PAA root certificates from DCL.
2024-10-13 12:20:39.592 (MainThread) INFO [matter_server.server.helpers.paa_certificates] Fetched 63 PAA root certificates from DCL.
2024-10-13 12:20:39.593 (MainThread) INFO [matter_server.server.helpers.paa_certificates] Fetching the latest PAA root certificates from Git.
2024-10-13 12:20:40.174 (MainThread) INFO [matter_server.server.helpers.paa_certificates] Fetched 2 PAA root certificates from Git.
2024-10-13 12:20:40.176 (MainThread) INFO [chip.FabricAdmin] Allocating new controller with CaIndex: 1, FabricId: 0x0000000000000001, NodeId: 0x000000000001B669, CatTags: []
2024-10-13 12:20:40.392 (Dummy-2) CHIP_ERROR [chip.native.DIS] Failed to advertise records: src/inet/UDPEndPointImplSockets.cpp:416: OS Error 0x02000065: Network is unreachable
2024-10-13 12:20:40.395 (Dummy-2) CHIP_ERROR [chip.native.DIS] Failed to advertise records: src/inet/UDPEndPointImplSockets.cpp:416: OS Error 0x02000065: Network is unreachable
2024-10-13 12:20:40.398 (Dummy-2) CHIP_ERROR [chip.native.DL] Long dispatch time: 220 ms, for event type 2
2024-10-13 12:20:40.409 (MainThread) INFO [matter_server.server.vendor_info] Loading vendor info from storage.
2024-10-13 12:20:40.409 (MainThread) INFO [matter_server.server.vendor_info] Loaded 0 vendors from storage.
2024-10-13 12:20:40.410 (MainThread) INFO [matter_server.server.vendor_info] Fetching the latest vendor info from DCL.
2024-10-13 12:20:40.684 (MainThread) INFO [matter_server.server.vendor_info] Fetched 252 vendors from DCL.
2024-10-13 12:20:40.684 (MainThread) INFO [matter_server.server.vendor_info] Saving vendor info to storage.
2024-10-13 12:20:40.693 (MainThread) INFO [matter_server.server.device_controller] Loaded 0 nodes from stored configuration
2024-10-13 12:20:40.707 (MainThread) INFO [matter_server.server.server] Matter Server successfully initialized.
2024-10-13 12:24:28.377 (MainThread) INFO [matter_server.server.device_controller] Starting Matter commissioning with code using Node ID 1.
2024-10-13 12:24:33.454 (Dummy-2) INFO [chip.ChipDeviceCtrl] Established secure session with Device
2024-10-13 12:24:35.628 (Dummy-2) CHIP_ERROR [chip.native.DL] Long dispatch time: 124 ms, for event type 16389
2024-10-13 12:24:42.766 (Dummy-2) INFO [chip.ChipDeviceCtrl] Commissioning complete
2024-10-13 12:24:42.766 (MainThread) INFO [matter_server.server.device_controller] Commissioned Node ID: 1 vs 1
2024-10-13 12:24:42.767 (MainThread) INFO [matter_server.server.device_controller] Matter commissioning of Node ID 1 successful.
2024-10-13 12:24:42.767 (MainThread) INFO [matter_server.server.device_controller] Interviewing node: 1
2024-10-13 12:24:42.768 (Dummy-2) CHIP_ERROR [chip.native.BLE] no endpoint for unsub complete
2024-10-13 12:24:50.175 (MainThread) INFO [matter_server.server.device_controller] Node:1 Setting-up node...
2024-10-13 12:24:50.179 (MainThread) INFO [matter_server.server.device_controller] Node:1 Setting up attributes and events subscription.
2024-10-13 12:24:57.498 (MainThread) INFO [matter_server.server.device_controller] Node:1 Subscription succeeded with report interval [1, 60]
2024-10-13 12:24:57.501 (MainThread) INFO [matter_server.server.device_controller] Commissioning of Node ID 1 completed.
2024-10-13 12:26:40.527 (Dummy-2) INFO [chip.ChipDeviceCtrl] Open Commissioning Window complete setting nodeid 1 pincode to 55079003

Can you share more details like errors you get from the Apple app or such? It seems that he commissioning window on the devcie gets opened successfully ... the rest happens between apple home and the device ...

From the Apple side I just get the very high level errors mentioned.
I will try to add the device added to Python Matter Server from chip-tool to see if I can get more insight.

I have tested a bit more now.
Test 1:

Add device to Python Matter Server => Success
Open Commission Window => Success
Add the device to Apple Home using the Home app on iPhone (15 Pro running iOs 18.0.1, Apple TV is controller) => Fail

Test 2:

Add device to Python Matter Server => Success
Open Commission Window => Success
Add the device to chip tool running on a Raspberry Pi => Success

Test 3:

Add device to Apple Home => Success
Start pairing mode from Apple Home
Add device to Python Matter Server => Success

Test 4:

Add device to Apple Home => Success
Start pairing mode from Apple Home
Add the device to chip tool running on a Raspberry Pi => Success

Test 5:

Add the device to chip tool running on a Raspberry Pi => Success
Open Commission Window => Success
Add the device to Apple Home using the Home app on iPhone (15 Pro running iOs 18.0.1, Apple TV is controller) => Fail

Looks like the issue is on the Apple Home side.
Has anyone tested adding an accessory paired with the Python Matter Server to Apple Home?

Has anyone tested adding an accessory paired with the Python Matter Server to Apple Home?

No, but .... I do think there is an Apple iOS / tvOS issue that may be at the root of this.  I've also found that sometimes I can't do an initial pair to iOS or HA from an iOS Home on iPhone even after multiple device factory resets and attempts, BUT, if I first pair to Google Home, then pair to iOS or HA as a second or third fabric, it all works (I then end up deleting from Google Home).
I've found this issue seems to be present with Matter 1.0 devices (Eve Energy, Eve Motion, Aqara P2 sensors), but Matter 1.1 (Inovelli dimmers) and Matter 1.2 (Aqara locks) don't seem to have this issue.  I'm assuming that (maybe) Google Home on iOS may rely on its own code (as opposed to a common iOS provided library) to do the pairing and that somehow gets Google Home past whatever obstacle blocks pairing on iOS.

I re-tested today with an ELKO One Thermostat (certified with Matter 1.2) and I managed to add this device to Apple Home using the generated QR-Code (after invoking commissioning on the Matter Python Server).

I am able to do this semi-reliably on HA these days. With HA as its own thread border router and matter server, I can share a device by code an Apple Home on device operating via ethernet.
Works great. The hardest part (for me) is still in the initial commissioning on HA via my iPhone, which seems to fail the first time and succeed the second time on nearly every device I try to pair.


The snapshot is leased which created under Snapshots view for one leased blob

Storage Explorer Version: 1.12.0
Build: 20200107.3
Branch: master
Platform/OS: Windows 10/ CentOS 7.6.1810/ MacOS High Sierra
Architecture: ia32/x64
Regression From: Not a regression
Steps to reproduce:

Launch Storage Explorer.
Expand one storage account -> Blob Containers.
Create a new blob container -> Upload a blob to it -> Acquire Leased for the blob -> Manage Snapshots.
Create snapshot for the leased blob.
Check the result.

Expect Experience:
The snapshot isn't leased.
Actual Experience:
The snapshot is leased.

More Info:
This issue doesn't reproduce after manually refresh.

Won't fix. Snapshots is no longer primary backup scenario.


Feature Request: Dropdown to view available updates for deferral window

It would be great to have a dropdown on the deferral screen so users can make informed decisions on what apps they are deferring until the script runs again.

This will be part of #50


MF-571 - Read base URL from env vars #648

Strategy:
Add separate index.html
Add js interops.
Read env vars via webpack.
Write env vars in interop flags.
Set base URL in Elm app via interop flags.

Codecov Report

Merging #650 into master will decrease coverage by 0.63%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #650      +/-   ##
==========================================
- Coverage   87.36%   86.73%   -0.64%
==========================================
  Files          62       62
  Lines        3942     3625     -317
==========================================
- Hits         3444     3144     -300
+ Misses        340      327      -13
+ Partials      158      154       -4

Impacted Files
Coverage Δ

sdk/go/message.go
40.42% <0%> (-8.19%)
:arrow_down:

http/api/transport.go
89.7% <0%> (-6.22%)
:arrow_down:

readers/mongodb/messages.go
89.18% <0%> (-5.55%)
:arrow_down:

writers/cassandra/init.go
60% <0%> (-4.29%)
:arrow_down:

ws/api/transport.go
87.05% <0%> (-3.99%)
:arrow_down:

users/api/http/transport.go
83.6% <0%> (-3.58%)
:arrow_down:

readers/influxdb/messages.go
87.87% <0%> (-1.75%)
:arrow_down:

writers/influxdb/messages.go
85.5% <0%> (-0.98%)
:arrow_down:

things/api/http/transport.go
98.03% <0%> (-0.42%)
:arrow_down:

readers/cassandra/messages.go
88.88% <0%> (-0.35%)
:arrow_down:

... and 3 more

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 a0ed73d...47deee2. Read the comment docs.


Upgrade to Angular 9

Hi Bram,
I upgraded the project to Angular 9, if you want to merge it into the main one.
Thanks!
Julian

Hey @julian-vp, thanks a lot for your contribution. Now that Angular 10 is out, it might make sense to update to that version directly. Would you mind updating this PR to the latest version?

Hi @beeman. Yes, no worries, I will make an update in the next days.

Thanks a lot! 🙏

Hi @beeman , please have a look at the new updates.
Hope everything is ok.

@julian-vp thanks a lot for this, awesome work 🙏!

No worries @beeman.


/who produces a user-visible error

<< who
>> @time=2017-11-17T03:47:48.008Z :oragono.test 352 shivaram_hexchat #shivaramtest ~shivaram 0::1 oragono.test shivaram_hexchat H@ :0 realname
>> :oragono.test 400 * :Error assembling message for sending

Ah, that's my stuffup! Fixed in 8036df92fc3f73d78a2248f453e82d858ab31fa2


fix: Enum OAS generation (#3518)

Changes described here #3518
Closes
Closes #3518

Thanks for the PR, but I believe your work kinda of invalidates the work done here https://github.com/litestar-org/litestar/pull/2550?
Can you check the MCVE from the issue and confirm if this affects anything?
@JacobCoffee and @peterschutt ping for awareness

@JacobCoffee and @peterschutt ping for awareness

I feel like there's been some lengthy discussion around this recently, in discord I think?? Is this that same issue?

@JacobCoffee and @peterschutt ping for awareness

I feel like there's been some lengthy discussion around this recently, in discord I think?? Is this that same issue?

This is the only thread I am aware of, raised by the same person

@JacobCoffee and @peterschutt ping for awareness

I feel like there's been some lengthy discussion around this recently, in discord I think?? Is this that same issue?

This is the only thread I am aware of, raised by the same person

The one I'm thinking of starts here - it was a long discussion and not put into a thread unfortunately. Feels related.

Hi, @Alc-Alc and @peterschutt, thx for your comments. I read the #2546 issue and i think it is not related to my issue, because my fixes are:

Remove null from enum values when it is marked as optional. Now null will passed as choose in oneOf.
Make enum referable like other scheme objects.

I fix just two test - test_optional_enum and part with enum params in test_create_parameters. So other things with optional fields work as before

Hi, @Alc-Alc and @peterschutt, thx for your comments. I read the #2546 issue and i think it is not related to my issue, because my fixes are:

Remove null from enum values when it is marked as optional. Now null will passed as choose in oneOf.
Make enum referable like other scheme objects.

I fix just two test - test_optional_enum and part with enum params in test_create_parameters. So other things with optional fields work as before
CC: @provinzkraut

Hi, @Alc-Alc and @peterschutt, thx for your comments. I read the #2546 issue and i think it is related to my issue, but it is more about the work of enum with optional in general My fixes are:

Remove null from enum values when it is marked as optional. Now null will passed as choose in oneOf. So enum still can be used with None, but null will not be the part of enum.
Make enum referable like other scheme objects. Because it quite useful for those consuming specification.

I fix just two test - test_optional_enum and part with enum params in test_create_parameters. So other things with optional fields work as before
CC: @provinzkraut

Have you confirmed if your changes are not affecting that?
from enum import StrEnum
from litestar import Litestar, get
from litestar.params import Parameter

class Environment(StrEnum):
    DEVELOPMENT = "dev"
    TEST = "test"
    QA = "qa"

@get(path="/")
async def test(
    environment: Environment | None
    = Parameter(
        title="Environment",
        description="The environment to filter by.",
        default=None,
        required=False,
    ),
) -> Environment | None:
    return environment

app = Litestar([test])

Current main

Your branch

Hi, @Alc-Alc and @peterschutt, thx for your comments. I read the #2546 issue and i think it is related to my issue, but it is more about the work of enum with optional in general My fixes are:

Remove null from enum values when it is marked as optional. Now null will passed as choose in oneOf. So enum still can be used with None, but null will not be the part of enum.
Make enum referable like other scheme objects. Because it quite useful for those consuming specification.

I fix just two test - test_optional_enum and part with enum params in test_create_parameters. So other things with optional fields work as before
CC: @provinzkraut

Have you confirmed if your changes are not affecting that?
from enum import StrEnum
from litestar import Litestar, get
from litestar.params import Parameter

class Environment(StrEnum):
    DEVELOPMENT = "dev"
    TEST = "test"
    QA = "qa"

@get(path="/")
async def test(
    environment: Environment | None
    = Parameter(
        title="Environment",
        description="The environment to filter by.",
        default=None,
        required=False,
    ),
) -> Environment | None:
    return environment

app = Litestar([test])

Current main

Your branch

Yes, my changes affected that, because Enum now putted in components

So it will acting like any other object schema with any other value allow (in this case Enum | None).
And it is really strage, that swagger register Enum object here

but not display that this field is ref to this Enum or null

example without None

I think we should ask the swagger team about this)

Polar render this as expected)

@Alc-Alc Just a ping:)
Is there anything else needed on my part?

apologies for the delay here and thanks for being responsive, I am not much of an authority when it comes to OpenAPI, but if you claim it's a swagger issue, then I have nothing with this being merged, however I would appreciate if @peterschutt and other @litestar-org/maintainers take a look.

@peterschutt @Alc-Alc
Any updates on this?

@peterschutt @Alc-Alc Any updates on this?

Not from me at this point @wallseat - apologies, but I've got a bit going on at work at the moment and haven't had a chance to look at anything litestar related for the last few weeks.

@provinzkraut
Can you take a look? I think it's not a big changeand you also worked on OAS

@wallseat The fix seem reasonable, I'm just concerned about breaking swagger. I'd like to confirm this is an issue on their end, not ours (and potentially just avoid breaking this for our users, since a lot of them use this as their primary interactive docs :eyes:)

Hello everyone! I have the same problem with enum and null in OpenAPI in my project.
What will happen with this fix?

Hi, @Alc-Alc and @peterschutt, thx for your comments. I read the #2546 issue and i think it is related to my issue, but it is more about the work of enum with optional in general My fixes are:

Remove null from enum values when it is marked as optional. Now null will passed as choose in oneOf. So enum still can be used with None, but null will not be the part of enum.
Make enum referable like other scheme objects. Because it quite useful for those consuming specification.

I fix just two test - test_optional_enum and part with enum params in test_create_parameters. So other things with optional fields work as before
CC: @provinzkraut

Have you confirmed if your changes are not affecting that?
from enum import StrEnum
from litestar import Litestar, get
from litestar.params import Parameter

class Environment(StrEnum):
    DEVELOPMENT = "dev"
    TEST = "test"
    QA = "qa"

@get(path="/")
async def test(
    environment: Environment | None
    = Parameter(
        title="Environment",
        description="The environment to filter by.",
        default=None,
        required=False,
    ),
) -> Environment | None:
    return environment

app = Litestar([test])

Current main

Your branch

@wallseat @Alc-Alc
This issue seems to originate from the OAS (OpenAPI Specification).
I observed that different Swagger UI results are displayed depending on whether null appears first or $ref is listed first as an option in oneOf.
Case 1 - When type: null comes first
"parameters": [
  {
    "name": "environment",
    "in": "query",
    "schema": {
      "oneOf": [
        {
          "type": "null"
        },
        {
          "$ref": "#/components/schemas/Environment"
        }
      ],
      "title": "Environment",
      "description": "The environment to filter by."
    },
    "description": "The environment to filter by.",
    "required": false,
    "deprecated": false,
    "allowEmptyValue": false,
    "allowReserved": false
  }
]

Case 2 - When $ref comes first
"parameters": [
  {
    "name": "environment",
    "in": "query",
    "schema": {
      "oneOf": [
        {
          "$ref": "#/components/schemas/Environment"
        },
        {
          "type": "null"
        }
      ],
      "title": "Environment",
      "description": "The environment to filter by."
    },
    "description": "The environment to filter by.",
    "required": false,
    "deprecated": false,
    "allowEmptyValue": false,
    "allowReserved": false
  }
]

@wallseat How about changing it to generate the ref schema first?
Additionally, in the case of FastAPI, it generates the ref schema first when handling the same enum | None parameter.
{
    "openapi": "3.1.0",
    "info": {
      "title": "FastAPI",
      "version": "0.1.0"
    },
    "paths": {
      "/": {
        "get": {
          "summary": "Test",
          "operationId": "test__get",
          "parameters": [
            {
              "name": "environment",
              "in": "query",
              "required": false,
              "schema": {
                "anyOf": [
                  {
                    "$ref": "#/components/schemas/Environment"
                  },
                  {
                    "type": "null"
                  }
                ],
                "title": "Environment",
                "description": "The environment to filter by.",
                "required": false
              },
              "description": "The environment to filter by."
            }
          ],
          "responses": {
            "200": {
              "description": "Successful Response",
              "content": {
                "application/json": {
                  "schema": {
                    "anyOf": [
                      {
                        "$ref": "#/components/schemas/Environment"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "title": "Response Test  Get"
                  }
                }
              }
            },
            "422": {
              "description": "Validation Error",
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/HTTPValidationError"
                  }
                }
              }
            }
          }
        }
      }
    },
    "components": {
      "schemas": {
        "Environment": {
          "type": "string",
          "enum": [
            "dev",
            "test",
            "qa"
          ],
          "title": "Environment"
        },
        "HTTPValidationError": {
          "properties": {
            "detail": {
              "items": {
                "$ref": "#/components/schemas/ValidationError"
              },
              "type": "array",
              "title": "Detail"
            }
          },
          "type": "object",
          "title": "HTTPValidationError"
        },
        "ValidationError": {
          "properties": {
            "loc": {
              "items": {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "type": "integer"
                  }
                ]
              },
              "type": "array",
              "title": "Location"
            },
            "msg": {
              "type": "string",
              "title": "Message"
            },
            "type": {
              "type": "string",
              "title": "Error Type"
            }
          },
          "type": "object",
          "required": [
            "loc",
            "msg",
            "type"
          ],
          "title": "ValidationError"
        }
      }
    }
  }

@findstar This is very interesting! Since I can't imagine the order making a difference being a deliberate design choice, maybe this actually is a bug in swagger and an issue should be filed there?

@provinzkraut @findstar Hi. I’ve recently encountered this issue as well, and I’d like to share my opinions.  Additionally, I’m happy to provide up to date patch of this PR that can be applied to the main branch, especially since this PR has been open for quite a while.
I believe this PR attempts to address 2 out of 3 issues:

Generating a single schema object for an enum, using a reference, and reusing the object for other req/res objects.
Excluding null in the OpenAPI schema enum property because it is a type, not a string.
The order of the type "null" and "string" in the generated OpenAPI schema.

Issue 2 is currently circumvented in this PR by using the oneOf keyword instead of the type keyword. (I’m not sure if it should be anyOf instead, because based on the FastAPI-generated output, it uses anyOf rather than oneOf.)
As @findstar mentioned, swagger-ui seems to have a bug where the order of types matters ("string" and "null" works, but "null" and "string" doesn’t). However, according to the OpenAPI spec (https://github.com/OAI/OpenAPI-Specification/issues/2244#issuecomment-899084964), it’s clear that the order of "string" and "null" shouldn’t matter. So, filing an issue with swagger-ui seems reasonable. Or litestar can maybe change the code to change the generated order if it takes a long time to fix in swagger-ui.
That said, I think problems 1 and 2 still persist in the current version of litestar and should be addressed on litestar’s side. Problem 1 is particularly important because, when using a code generator to create client types from OpenAPI specs, you end up with many duplicated enum types on the client side, even though there’s only one Enum type on the server side. FastAPI fixed this years ago (https://github.com/fastapi/fastapi/issues/1303).
Problem 2 is significant for the sake of correctness.

Hi @isyangban, @findstar
I prepared an update for this PR based on your observations
I changed an order, in which elements are generated, but this did not produce any result in the context of swagger
Test code example:
from enum import Enum
from typing import Optional

from litestar import Litestar, get
from litestar.openapi import OpenAPIConfig
from litestar.params import Parameter

class Environment(Enum):
    DEVELOPMENT = "dev"
    TEST = "test"
    QA = "qa"

@get(path="/")
async def test(
    environment: Optional[Environment] = Parameter(  # noqa: B008
        title="Environment",
        description="The environment to filter by.",
        default=None,
        required=False,
    ),
) -> Optional[Environment]:
    return environment

app = Litestar(
    [test],
    openapi_config=OpenAPIConfig(
        title="test",
        version="0.0.1",
        path="/docs",
        root_schema_site="swagger",
    ),
)

Generated OAS:
{
  "info": {
    "title": "test",
    "version": "0.0.1"
  },
  "openapi": "3.1.0",
  "servers": [
    {
      "url": "/"
    }
  ],
  "paths": {
    "/": {
      "get": {
        "summary": "Test",
        "operationId": "Test",
        "parameters": [
          {
            "name": "environment",
            "in": "query",
            "schema": {
              "oneOf": [
                {
                  "$ref": "#/components/schemas/Environment"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Environment",
              "description": "The environment to filter by."
            },
            "description": "The environment to filter by.",
            "required": false,
            "deprecated": false,
            "allowEmptyValue": false,
            "allowReserved": false
          }
        ],
        "responses": {
          "200": {
            "description": "Request fulfilled, document follows",
            "headers": {

            },
            "content": {
              "application/json": {
                "schema": {
                  "oneOf": [
                    {
                      "$ref": "#/components/schemas/Environment"
                    },
                    {
                      "type": "null"
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Bad request syntax or unsupported method",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "status_code": {
                      "type": "integer"
                    },
                    "detail": {
                      "type": "string"
                    },
                    "extra": {
                      "additionalProperties": {

                      },
                      "type": [
                        "null",
                        "object",
                        "array"
                      ]
                    }
                  },
                  "type": "object",
                  "required": [
                    "detail",
                    "status_code"
                  ],
                  "description": "Validation Exception",
                  "examples": [
                    {
                      "status_code": 400,
                      "detail": "Bad Request",
                      "extra": {

                      }
                    }
                  ]
                }
              }
            }
          }
        },
        "deprecated": false
      }
    }
  },
  "components": {
    "schemas": {
      "Environment": {
        "type": "string",
        "enum": [
          "dev",
          "test",
          "qa"
        ],
        "title": "Environment",
        "description": "An enumeration."
      }
    }
  }
}

Swagger UI:

@wallseat After further invesigation https://github.com/OAI/OpenAPI-Specification/issues/1900#issuecomment-486772917 , I think the produced schema should be anyOf instead of oneOf

I won't fix the tests yet because the changed schema/params order didn't change the situation

@wallseat I think i've found the problem with swagger-ui
app = Litestar(
    [test],
    openapi_config=OpenAPIConfig(
        title="Test API",
        version="0.0.1",
        path="/docs",
        render_plugins=[
            # SwaggerRenderPlugin(version="5.18.2"),  #newer version will work
            SwaggerRenderPlugin(), # Stuck with "5.1.3" version
            JsonRenderPlugin(),
            ScalarRenderPlugin(),
        ],
    ),
)

@wallseat I think i've found the problem with swagger-ui
app = Litestar(
    [test],
    openapi_config=OpenAPIConfig(
        title="Test API",
        version="0.0.1",
        path="/docs",
        render_plugins=[
            # SwaggerRenderPlugin(version="5.18.2"),  # newer version will work like a charm
            SwaggerRenderPlugin(), # Stuck with "5.1.3" version
            JsonRenderPlugin(),
            ScalarRenderPlugin(),
        ],
    ),
)

Should we update default pinned version?
@provinzkraut

@wallseat I think i've found the problem with swagger-ui
app = Litestar(
    [test],
    openapi_config=OpenAPIConfig(
        title="Test API",
        version="0.0.1",
        path="/docs",
        render_plugins=[
            # SwaggerRenderPlugin(version="5.18.2"),  # newer version will work like a charm
            SwaggerRenderPlugin(), # Stuck with "5.1.3" version
            JsonRenderPlugin(),
            ScalarRenderPlugin(),
        ],
    ),
)

Should we update default pinned version? @provinzkraut

I tested the following openapi.json with Swagger UI version 5.18.2
{
  "info": {
    "title": "Test API",
    "version": "0.0.1"
  },
  "openapi": "3.1.0",
  "servers": [
    {
      "url": "/"
    }
  ],
  "paths": {
    "/": {
      "get": {
        "summary": "Test",
        "operationId": "Test",
        "parameters": [
          {
            "name": "environment",
            "in": "query",
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/Environment"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Environment",
              "description": "The environment to filter by."
            },
            "description": "The environment to filter by.",
            "required": false,
            "deprecated": false,
            "allowEmptyValue": false,
            "allowReserved": false
          }
        ],
        "responses": {
          "200": {
            "description": "Request fulfilled, document follows",
            "headers": {

            },
            "content": {
              "application/json": {
                "schema": {
                  "anyOf": [
                    {
                      "$ref": "#/components/schemas/Environment"
                    },
                    {
                      "type": "null"
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Bad request syntax or unsupported method",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "status_code": {
                      "type": "integer"
                    },
                    "detail": {
                      "type": "string"
                    },
                    "extra": {
                      "additionalProperties": {

                      },
                      "type": [
                        "null",
                        "object",
                        "array"
                      ]
                    }
                  },
                  "type": "object",
                  "required": [
                    "detail",
                    "status_code"
                  ],
                  "description": "Validation Exception",
                  "examples": [
                    {
                      "status_code": 400,
                      "detail": "Bad Request",
                      "extra": {

                      }
                    }
                  ]
                }
              }
            }
          }
        },
        "deprecated": false
      }
    }
  },
  "components": {
    "schemas": {
      "Environment": {
        "type": "string",
        "enum": [
          "dev",
          "test",
          "qa"
        ],
        "title": "Environment"
      }
    }
  }
}

Upon checking more precisely, I found that versions up to 5.17.9 display the same results as before, but starting from version 5.17.10, a revised view is displayed.

OAS issue https://github.com/swagger-api/swagger-ui/issues/7912 and PR https://github.com/swagger-api/swagger-ui/pull/9934
cc. isyangban

Bumping swagger to the non-broken version seems to address all the open issues here. With that done, this PR would be good to merge I think. @Alc-Alc for a second opinion :)

@isyangban
So, if we change "oneOf" key to "anyOf" key in case of Enum | None, should we change this for other situations too?
For example, if we have an Union of str and int, then key will be "oneOf", but if we add None to this union then key becomes "anyOf".
Maybe we can keep using oneOf? because according to the RFC that's how it is

@wallseat
After skimming through other implementations and spec docs, it appears that using oneOf is more appropriate than anyOf. That said, it seems like the OpenAPI spec and JSON Schema spec leave some aspects ambiguous, which allows for varying interpretations by different implementations :(. As a result, there are multiple valid ways to represent the same nullable type. For example, Pydantic uses anyOf instead of oneOf, though it comes with some quirks (see: https://github.com/pydantic/pydantic/issues/7161).
In my view, the most compatible approach would be to use type: [T, "null"] when T is a primitive type, and oneOf: [{type: T}, {type: "null"}] otherwise. However, for simplicity, we could just stick with oneOf: [{type: T}, {type: "null"}] for now.
These are just only my personal thoughts, and I think it’s best for the litestar maintainers @provinzkraut  and @Alc-Alc  to decide?.

@isyangban
I leave it oneOf, because it is less to change:)
(Less chance to break smth)

@provinzkraut @Alc-Alc
I think this PR is ready to merge.
Summary:

Add $reft schema creation for Enum objects
Update pinned swagger version and change order of "null" and other elements in anyOf (also create an issue on swagger side https://github.com/swagger-api/swagger-ui/issues/10225)
Fix tests according new "null" elements order

cc: @isyangban @findstar

Can you pls restart runners? They failed on pdm setup

I am fixing that in this PR :)
https://github.com/litestar-org/litestar/pull/3878

@wallseat can you address the coverage issues by adding the missing test cases?

@provinzkraut Done

I added a "no branch" pragma because the method in question is always executed with enums (in the context of its current usage). It did not seem like a benefit to add a new test to check a behavior that would not happen in the actual workflow.

@litestar-org/maintainers can we merge this considering it failed due to doc issues?


DOC: Some improvements to least squares docstrings

I noticed few places for improvements / fixes in lsq_linear and then in least_squares too.

@@            master   #5761   diff @@
======================================
  Files          235     235
  Stmts        43281   43281
  Branches      8163    8163
  Methods          0       0
======================================
  Hit          33609   33609
  Partial       2598    2598
  Missed        7074    7074

Review entire Coverage Diff as of 4be3c31

Powered by Codecov. Updated on successful CI builds.

Finally I removed all non-ASCII.

So @larsmans, merge?

Yes!


bash completion replaces underscores with dashes

Hi,
since I've upgraded to click 7.0 the bash completion replaces underscores (_) in command names with dashes (-)
@click.command(short_help="Delete a group")
@click.option("groupname", '-g', '--group', type=str, required=True)
@click.option("--yes", is_flag=True, default=False)
@click.pass_context
def delete_group(ctx, yes, groupname):
    """
    Deletes a group identified by its short ID

the help message it looks like this:
Options:
  --version                   Show the version and exit.
  -e, --env [prod|stage|dev]  Choose environment to execute commands
  -h, --help                  Show this message and exit.

Commands:
  create_project          Creates a new project
  delete_group            Delete a group
  [...]

Gif example here:

Click 7 uses dashes instead of underscores in command names (which is actually more common in CLIs). See #1123


Keyboard shortcuts for tool selection, Copy-Paste, etc.

If possible, add configurable keyboard shortcuts for copy-paste of traffic lights (and, when applicable, lane connections, vehicle restrictions and so on). Also, having shortcuts to select a sub-tool (eg. lane connector, vehicle restrictor, etc) would also be useful.
The shortcuts would only be active while TM:PE menu is active, or whilst relevant sub-tool is active, etc.
Shortcuts should ideally be configurable in mod options.
Mods such as "Move It" and "Fine Road Tool" are good examples to refer to for this sort of stuff.

Related to #103

moved


11618, we are not handling properly external attributes

in this case... We need to do something. We don't really know if it will succeed.

https://github.com/project-chip/connectedhomeip/blob/f0f5de0d79ae1c51d7fddbf70900ebac0acd899a/src/app/util/attribute-table.cpp#L432-L437

This issue was generated by todo-issue based on a bug comment in f0f5de0d79ae1c51d7fddbf70900ebac0acd899a.

The check seems to be on the else branch after:
380     // write the data unless this is only a test
381     if (!justTest)
382     {

justTest is set to true by emberAfVerifyAttributeWrite which I do not see used anywhere in the code. Is this correct? can we just drop this 'just test' branch?
I.e. this TODO seems easy enough, but I am unsure if it is actually a V1 blocker. Keeping as blocker because easy to change.


Elasticsearch 5.x implementation

Elasticsearch 5.x db implementation, base operations. Only native Query DSL queries tested ( with query option native ).

Is it possible to save the version in the data i.e. _version property (like couchdb implementation) so no change on ViewModel is needed...
but only if possible

PS. do you think we could add tests for elasticsearch? and then add it to travis too? https://docs.travis-ci.com/user/database-setup/#ElasticSearch

And may you describe (in the readme) what is the difference between elasticsearch and elasticsearch5 implementation?

Elasticsearch gives some error with the "_version" property, one option is to name it other way but I think it is better to use the native Elasticsearch versioning.
This implementation will work also without modifying ViewModel ( as i add the version manually to the ViewModel on get and search ).
Tests are definitely a good idea and planned, hopefully I will get some time over the weekend to implement those.

PS. you are incredibly fast ;)

not always 😜

Well I moved on adapting the whole thing for Elasticsearch 6.X, the biggest diffrence is that from now on Elasticsearch 6 allows only one type per index ( eventually types are going to be removed in version 7 ). I've cleaned up the whole thing ( althoguht there is a lot more to be done ) and tested it on our working system for our purposes.

Now I am having the next dilemma, it would be good to have some specific Elasticsearch properties inside the repository definition ( like the indexes for mongoDb ), as the whole metadata is not stored inside the repository some changes will need to be made.
One solution would be to store the given metadata as a whole, this way each implementation could use the appropriate properties from the metadata when needed.
Another solution would be to take just a field named as the implementation and store it, for example if i use elasticsearch, if a field named "elasticsearch" is present in the viewmodel metadata ( ie. in the collection definition in node-event-denormalizer ) this field will be stored in the repository and be present in the implementation for use.
This is needed as there are some Elasticsearch index and alias settings which are really dependent on the nature and size of data you are storing.
What do you think would be a good approach on this?

Perhaps, extend the commit method on vm and on repository to accept an optional additional argument...

Well the thing is that this would ideally be in the collection definition ( exactly like the indexes property ), because it would affect the way the mapping for the index would be created. I guess this is more denormalizer related than viewmodel, maybe we should continue the discussion there?

If it works to have it in the checkConnection function it's better 😉

It will be eventually used in the checkConnection method, the question is how the user is going to pass the desired definition ?
The definition should be on the collection level for example :
module.exports = cqrsEventDenormalizer.defineCollection({
	name: 'coolEsIndexedCollection',
	context: 'coolDomain',
	defaultPayload: 'payload',
        esSettings:{
           settings: { // will be merged with default settings
		number_of_shards: 1, // default
		number_of_replicas: 0 // default
	    },
            mappings : { // will be merged with default (dynamic )mappings in the corresponding type
               properties: {
                  title:    { "type": "text"  },
                  name:     { "type": "text"  },
                  age:      { "type": "integer" },
               }
            }
        }
});

Is there any particular reason why not to store and pass the meta from the collection to the repository?

No explict reason.

Together with adrai/node-cqrs-eventdenormalizer#56 a full elasticsearch 6.X ( tested with 5.X as well ) is available now. With the right settings the indexing and mapping can be tweaked per repository ( or global ) basis for maximum performance.

As soon as you give the "ok" and add some tests, I will merge both PRs.

I think the first phase is complete. It could definitely use some tweaks and optimizations but those will be done in the next iteration after some more serious in-production use.

Another thing, when you merge, could you give the credit combined also to eCollect, as the PRs are done on company time?

release notes (+tweet) ok?

More than perfect!

I think both PRs are ready for merge.

ok... let's wait 24h in case you find something else, ok?

by the way... why is it named elasticsearch6 and not 5?

For the wait, sure!
For the version :
TL:DR
Basically it turned out to be a 6.x implementation which is compatible with 5.x and not the opposite.
Explanation
Well I have started targeting elasticsearch 5.x, but over the process, with stable elasticsearch 6.x over the corner ( that we already use on one of our environments ), i have decided to make it compatible with both ( biggest change is the removal of mapping types ).

Absolutely, fixed.

@nanov What is your twitter handle?

https://twitter.com/ecollect
Thank you :)

And your personal?

I don't really use my twitter, you can just mention the company, it is totally fine.

https://twitter.com/adrirai/status/894849930635902976


feat: windows fixes and go version bump

Updates pulumi local login prompt with more user friendly information
Update Nitric providers to 0.26.2 to fix Azure storage bug
Fixes windows pulumi install erroring
Updates CLI Golang version to 1.19 to fix windows incompatibility with local dashboard

Target develop first?

Codecov Report
Patch and project coverage have no change.

Comparison is base (d814b72) 20.40% compared to head (683cb17) 20.40%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@           Coverage Diff           @@
##             main     #482   +/-   ##
=======================================
  Coverage   20.40%   20.40%
=======================================
  Files          31       31
  Lines        1926     1926
=======================================
  Hits          393      393
  Misses       1510     1510
  Partials       23       23

Flag
Coverage Δ

unittests
20.40% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Action center and Push notification broken

I customized the script adding my preset, and I would like to preserve the action center and push notifications (with modern toast).
If I run the script with the configuration reported below, toast notifications don't appear neither in the action center panel, anyway the counter on the action center icon increases.
Here is my configuration:
custom.preset (one command each line...)
HideDefenderTrayIcon
DisableDefender
DisableDefenderCloud
DisableDownloadBlocking
DisableSmartScreen
DisableUpdateMSRT
!DisableUpdateRestart
DisableRestorePoints
DisableDefragmentation
DisableAutoRebootOnCrash
!DisableActionCenter
!HideNetworkFromLockScreen
!HideShutdownFromLockScreen
!DisableStickyKeys
!HideTaskbarSearch
ShowTaskbarSearchIcon
!ShowSmallTaskbarIcons
!SetTaskbarCombineWhenFull
!ShowTrayIcons
HideRecentlyAddedApps
!SetVisualFXPerformance
!EnableNavPaneExpand
!HideQuickAccess
!HideDesktopFromThisPC
!HideDocumentsFromThisPC
!HideDownloadsFromThisPC
!HideMusicFromThisPC
!HidePicturesFromThisPC
!Restart
!HideVideosFromThisPC

Default.cmd
@powershell.exe -NoProfile -ExecutionPolicy Bypass -File "%~dp0Win10.ps1" -include "%~dp0Win10.psm1" -preset "%~dpn0.preset" !Restart -preset "custom.preset" WaitForKey Restart

Running on Windows 10 Pro 1809 and 1803

Yup, can reproduce. The offending tweak is DisableBackgroundApps. Specifically disabling background access for Microsoft.Windows.ShellExperienceHost.
Run the snippet below, then log out and log back in and the problem should be fixed.
Remove-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\BackgroundAccessApplications\Microsoft.Windows.ShellExperienceHost*" -Name "Disabled" -ErrorAction SilentlyContinue
Remove-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\BackgroundAccessApplications\Microsoft.Windows.ShellExperienceHost*" -Name "DisabledByUser" -ErrorAction SilentlyContinue

I will also fix the tweak itself. There is already one exclusion for Microsoft.Windows.Cortana which would otherwise break Start Menu search, so this is pretty much the same case.

Thank you!! It works!


Error: Cannot invoke a non-'const' constructor where a const expression is expected.

: Error: Cannot invoke a non-'const' constructor where a const expression is expected.
bottom_bar.dart:421
Try using a constructor or factory that is 'const'.
? const Flex(
^^^^
Target kernel_snapshot failed: Exception
2
FAILURE: Build failed with an exception.

can you share the relevant code to reproduce this error?

The same issue for me, just pasted the example code and it gave the same error

I've made a pull request with a solved version, @MarsadMaqsood can you merge that ? just to pass into the production version

Hi there! Same issue with me.
When I try to build iOS app I'm facing with this issue. It's started to happen after lastest Xcode and cocoapods updates etc.
Here is log;
../../../../../.pub-cache/hosted/pub.dev/stylish_bottom_bar-1.0.3/lib/src/bottom_bar.dart:421:21: Error: Cannot invoke a non-'const' constructor where a const expression is expected.
How can I fix this ?


Cross compilation

Checklist

[ ] Used a personal fork of the feedstock to propose changes
[ ] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[ ] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[ ] Ensured the license file is being packaged.

this is to fix the broken cross-compilation

Failures on the CI likely will be fixed by https://github.com/conda-forge/python-xxhash-feedstock/pull/30.

@conda-forge-admin, please rerender


Move configuration format converter from log4j-1.2-api

This moves the converter between log4j.properties and log4j2.xml from log4j-1.2-api to a new log4j-config-converter artifact.

Closing this, since #145 makes it obsolete.


Add playTone visualisation to code interpretation

Fixed #1170

Download:
Environment: QT=5.12, ARCH=32, CONFIGURATION=release, QTIFW=C:\Qt\Tools\QtInstallerFramework\3.1

Download:
Environment: QT=5.12, ARCH=32, CONFIGURATION=release, QTIFW=C:\Qt\Tools\QtInstallerFramework\3.1


Remove ability to define status when adding company

closes #168

Potentially already resolved by #167

Covered in PR #167


js-interop: @JS('window') is now suddenly needed?

Describe the issue you're seeing
Putting @JS() at the beginning of the file should use the global namespace for getting references (e.g. window). I get errors now saying self.* is not defined. If I put @JS('window') before library instead it works.
Does it happen in Dartium or when compiled to JavaScript?
When compiled

Dart SDK version: use dart --version
Dart VM version: 1.24.0-dev.3.0
pkg/js version: look at pubspec.lock
0.6.1

Please re-open if this is still the case with the latest 2.0.0-dev SDK.


Render to ShadowDOM and LightDOM

When I started using the pre-release of Lit-Html, I had already developed my own base class for native web components. It ended up being very similar to what is now provided by Lit-Element. The main difference is that I wrote my base class to be agnostic of how rendering was performed.
Particularly for application container elements (not so much reusable control elements), I often find I want to render into both ShadowDOM (so I can get encapsulated styles for the sub-tree), as well as LightDOM (to keep part of my application sub-tree is the normal Document scope). This seems like a similar objective to what some other people have been asking for with regard to a pseudo slot for elements without a ShadowDOM.
Right now I am able to do this using Lit-Html directly in my custom base class by rendering to both a ShadowRoot target, and the element's LightDOM. As demonstrated below, on first render, I render the ShadowRoot include any slots, and then I also control rendering children in the LightDOM.
  renderCallback() {
    super.renderCallback();

    if (!this.isRendered()) {
      render(html`

          <slot></slot>

      `, this.shadowRoot);
    }

    render(html`
      ${this.state.view === 'home' ? html`<fsc-auth-home></fsc-auth-home>` : null }
      ${this.state.view === 'login' ? html`<fsc-auth-login></fsc-auth-login>` : null }
      ${this.state.view === 'register' ? html`<fsc-auth-register></fsc-auth-register>` : null }
      ${this.state.view === 'reset' ? html`<fsc-auth-reset></fsc-auth-reset>` : null }
    `, this);
  }

I want to migrate my application and reusable controls development to use Lit-Element as my base class, but I can't see how you can accomplish this. Lit-Element seems to be designed to only render to a single target, either the ShadowRoot or the element LightDOM (not both).
Can anyone provide an example of how you can render to both with Lit-Element?

This outlines a super simple example, but renders on both side of the boundary: https://medium.com/@westbrook/decorator-pattern-plus-816eefc89824
I'd worry in your context that you were conflating responsibilities here. In that you're preventing the ability to ever write into the Light DOM from the outside render(template, this) will always replace all of the Light DOM. Further, that does not seem like the experience that an implementor would be expecting when applying a web component in their application. Maybe this is all internal, or this is super documented and those things don't matter, or maybe I just don't understand the use case, but I'd be careful allowing an element to manage what amount to the child and parent scope at the same time.

You can render to light DOM in addition to Shadow DOM by implementing the firstUpdated method. Here's an example:
https://stackblitz.com/edit/lit-element-demo-c6u7gf?file=src/my-element.js

make something like this sense in the official documentation? I would think so? if yes pls let me know and I would prepare a PR :)


[2201.9.x] Add default namespaces with attributes in xml to record generation

Purpose
$title.
PR for master - https://github.com/ballerina-platform/ballerina-lang/pull/43052
Fixes #43043
Approach

Describe how you are implementing the solutions along with the design details.

Samples

Provide high-level details about the samples related to this feature.

Remarks

List any other known issues, related PRs, TODO items, or any other notes related to the PR.

Check List

[x] Read the Contributing Guide
[ ] Updated Change Log
[ ] Checked Tooling Support (#)
[x] Added necessary tests

[x] Unit Tests
[ ] Spec Conformance Tests
[ ] Integration Tests
[ ] Ballerina By Example Tests

[ ] Increased Test Coverage
[ ] Added necessary documentation

[ ] API documentation
[ ] Module documentation in Module.md files
[ ] Ballerina By Examples

During our offline discussion, we decided that it's not the correct behavior to add the default namespace as mentioned in the issue. Hence, we are closing this PR.


esxtop data parsing error

[Thank you for an amazing visualization tool! It has been very handy for esxtop data.]
When trying to parse esxtop data, I'm getting the following error:
/Users/markachtemichuk/Desktop/esxtop_output-firstrun/nomsdb101-esxi-23420_outputfile.csv:
SEVERE  could not parse /Users/markachtemichuk/Desktop/esxtop_output-firstrun/nomsdb101-esxi-23420_outputfile.csv
java.lang.StringIndexOutOfBoundsException: String index out of range: 0
at java.base/java.lang.StringLatin1.charAt(StringLatin1.java:48)
at java.base/java.lang.String.charAt(String.java:711)
at com.ibm.nmon.parser.PerfmonParser.parseDouble(PerfmonParser.java:349)
at com.ibm.nmon.parser.PerfmonParser.parseData(PerfmonParser.java:288)
at com.ibm.nmon.parser.PerfmonParser.parse(PerfmonParser.java:71)
at com.ibm.nmon.NMONVisualizerApp.parse(NMONVisualizerApp.java:231)
at com.ibm.nmon.gui.file.ParserRunner.run(ParserRunner.java:73)
at java.base/java.lang.Thread.run(Thread.java:832)
Can you help me narrow down whats happening here? I'm using version 2020-02-29. I've attached the file I'm trying to parse.
nomsdb101-esxi-23420_outputfile.csv.zip

These esxtop files have a lot of columns, it's very hard to look at them in any editor. But, it seems like this file has either empty strings or non-number data in a few spots.
The patch I submitted works on the file you attached. If you can build from source and try some other files to confirm, that would be great.

These esxtop files have a lot of columns, it's very hard to look at them in any editor. But, it seems like this file has either empty strings or non-number data in a few spots.
The patch I submitted works on the file you attached. If you can build from source and try some other files to confirm, that would be great.

Thank you. I’m having trouble building from source (newbie here). Any chance you can share a build with me? Sorry, Thanks.

Thank you. I’m having trouble building from source (newbie here). Any chance you can share a build with me? Sorry, Thanks.

Working now.

Working now.

Working now....Thnx!

Working now....Thnx!


Error: cannot invoke initializer for type 'XPNews' with no arguments

My code :
`
import Foundation
import ObjectMapper
class XPNews: Mappable {
var newsId:String?
var newsTypeStr:String?
var newsThumb:String?
var newsTitle:String?
var newsTime:NSDate?
required init?(_ map: Map) {

}

func mapping(map: Map) {
    newsId <- map["newsId"]
    newsTypeStr <- map["newsId"]
    newsThumb <- map["newsId"]
    newsTitle <- map["newsTitle"]
    newsTime <- (map["newsTime"],DateTransform())
}

}
`
Use:
I wan't to write a demo and test it , like:
`
let model:XPNews = XPNews() //This place is compile error
model.newsId = "1"
model.newsTypeStr = "TestType"
`
Error Info :" cannot invoke initializer for type 'XPNews' with no arguments"

May I ask what's the reason for closing this?

Cauz it's not framework issue.
Error saying: "Your object don't have initializer without parameters, so object can't be created in this way"


Path Error in resharpen.py with StableDiffusionWebUI Forge – Suggestion for init.py Placement

Dear Haoming02,
Thank you for creating the "sharpness" control extension for StableDiffusionWebUI. I tried using this extension with StableDiffusionWebUI Forge and encountered a path error in resharpen.py.
I was wondering if placing the init.py file in the specified locations might resolve the error, reducing the likelihood of others encountering the same issue. The specified locations are sd-webui-resharpen and scripts.
Your consideration would be greatly appreciated. Thank you in advance.

ReSharpen does work in Forge for me
And no, Automatic1111 and Forge extensions do not need __init__.py files


Doesn't work in any place you can view a post other than /q

Broken on NATO queue, reviews, edit history, etc

Which script doesn't work?

If this report is about gasMask, do we want it to act in other places than
post URLs? If we don't, and it does anything else than nothing at all
anywhere, tell me and I'll adjust the trigger criteria.
On Thu, Dec 15, 2016 at 1:09 AM, Parker Erway<EMAIL_ADDRESS>wrote:

Which script doesn't work?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/Charcoal-SE/Userscripts/issues/16#issuecomment-267196937,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADwF_WZK5jyfQ_5bNpenPa_tzbR9jvTCks5rIIVVgaJpZM4LNkSf
.

Sorry - yes - this is for gasmask, I submitted the issue via the tampermonkey link - didn't realise this was a global repo.
It currently hides the image in the pages listed above, but does not become clickable to view the original image, nor show the gask mask.
Here's how it renders in NATO:

I'd expect it to behave the same everywhere. However, I'm happy with it only hiding the images on posts, and


Basic glossary support. Fixes #50.

This is very simple, but it works for now. Let me know if you want any changes.

Closing because glossary support was added in 89e7392


[FEAT]: Icon Color

Description
Is there any way to build something like:
<SomeIcon size="30" class="text-red-200" />

To render SomeIcon on red color?
Additional Information
No response

Hi,
The first version was able to add color, then I realized that icons were not meant with colors. They looked terrible!
So change them without color.
Please find other icons from https://svelte-svg-icons.vercel.app/

I just added colors.


FIX: typo in ChatUnfurlRequest docs

Summary
Fixes a super critical typo 🙂
Requirements (place an x in each [ ])

[x] I've read and understood the Contributing Guidelines and have done my best effort to follow them.
[x] I've read and agree to the Code of Conduct.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Provide reason on deploy timeout

What
Print k8s reason for progressing status == false on deploy timeouts.
Why
Seeing sporadic failures in an app where deploys fail with:
[FATAL][2017-10-27 17:15:10 +0000]	Deployment/web: TIMED OUT (limit: 420s)
[FATAL][2017-10-27 17:15:10 +0000]	Deploy timed out due to progressDeadlineSeconds of 90 seconds. Kubernetes will continue to attempt to deploy this resource in the cluster, but at this point it is considered unlikely that it will succeed.
[FATAL][2017-10-27 17:15:10 +0000]	If you have reason to believe it will succeed, retry the deploy to continue to monitor the rollout.

The generic part of this error ("Kubernetes will continue...") indicates none of the pods failed Readiness Probes. The only other reason to fail would be the progress status being false, in which case printing the reason from k8s may help to debug.

cc: @Shopify/cloudplatform @nicday


Fixes for keepalived stop

Checker's pid is not tracked so it's process is not stopped.
PIDs are terminated without giving them a chance to end their children so these stay running as well.

thks @aveyrenc . @geofffranks, is the next release cut planned ?

Sorry, I thought I clicked the release button for v8.6.1 already. Should be out shortly
Sent from my iPhone

On Feb 9, 2018, at 9:33 AM, Pierre Oblin<EMAIL_ADDRESS>wrote:
thks @aveyrenc . @geofffranks, is the next release cut planned ?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

@geofffranks thks :-)


fix vuln

@ox7a59 Could you please sign the CLA ?
You can sign the CLA by just posting a Pull Request Comment same as the below format.
I have read the CLA Document and I hereby sign the CLA

I have read the CLA Document and I hereby sign the CLA


[FCE-555] Add ex-webrtc support

Description
This PR adds support for ex-webrtc backend.
On both platforms:

~removed restartIce() call - it causes issues with connectivity~ => restartIce is needed for non exwebrtc.
changes ice transport type from .relay to .all
conforms to protocol when sending candidates
disables simulcast in example app - it's currently not supported, but maybe it will be supported in the future, thus I'm not changing the api, it's disabled by default anyway

NEW changes:

Removed endpointType as it was unused and only created confusion about what should be set.
ExWebRTC/WebRTC is now decided based upon if turn servers are passed (same as it's done on Web)

On Android:

fixes a (backend) crash when client sends candidate before sending sdp offer by queueing the candidates - on iOS it's not needed as sdp offer is created on the same thread as candidates. In my opinion it's more of a backend issue but it's quicker to workaround it on our side.
fixes a bug when using changeWebRTCLoggingSeverity (found out when debugging something)
changes number strategy when serializing to json, so that it sends integers instead of floats

On iOS:

removed some dead code with queuedRemoteCandidates

Motivation and Context
https://linear.app/swmansion/issue/FCE-555/investigate-work-required-to-support-elixirwebrtc-in-mobile-app
How has this been tested?

Get a backend with ex-webrtc (built locally from ex_webrtc_experimental of fishjam or deployed to fishjam.work)
Open fishjam dashboard
Test only on physical devices, emulators won't work - currently backend has fixed h264 encoding which is unsupported on android emulator
Test different combinations: two mobiles, mobile + web
Test connecting in different order, screencast, disconnecting and reconnecting, adding and removing tracks

one question and otherwise LGTM 👍


app : undefined in ctx of async asyncData (ctx)

Hi!
Why there is no app in the context for async asyncData (ctx) in the client side requests?
There is only for SSR.

Also experiencing this issue with rc2
  async asyncData ({ app, redirect }) {
    return app.$axios.get('/blog')

gives a 500 error Cannot read property '$axios' of undefined

@pimlie as a temporary workaround you can do
 async asyncData ({ store, redirect }) {
    return store.$axios.get('/blog')

But I think this is a bug

Fixed in rc3, sorry about this.


Fixed an issue on custom-resource-definition-versioning.md

Fixed an issue on CustomResourceDefinition yaml

/check-cla

Hi @jimoosciuc 👋 , Thank you for thr PR. Can you sign the CLA, so that this PR can be reviewed?

/lgtm

Page preview:
https://deploy-preview-22925--kubernetes-io-master-staging.netlify.app/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/

/approve


Fix heuristics after rename

This is similar to https://github.com/github/linguist/pull/3550 for the remaining languages where the name used in heuristics.rb does not match the one in samples directory.

Should we add a test in all_fixtures to make sure #{samples_path}/#{language_name}/ exists? It would prevent this from happening again (for cases where we have a test).

Sounds like a good idea. Although I can't envision this becoming a recurring issue...

I see no harm in adding a test as @pchaigno suggested. It'll mean we don't have to manually remember to check this.
@smola could you add a test as suggested by @pchaigno

Gonna merge this without the test as I want to build a new release with enough time to ship it before 9 May. I don't think we'll be renaming things again any time soon so I'm happy to leave off the test for now. We can always add one later.


[Dimensional reduction] Adding mouse blood dataset with ground truth from Olsson et al, Nature 2016

Submission type

[x ] This submission adds a new dataset
[ ] This submission adds a new method
[ ] This submission adds a new metric
[ ] This submission adds a new task
[ ] This submission adds a new Docker image
[ ] This submission fixes a bug (link to related issue: )
[ ] This submission adds a new feature not listed above

Testing

[ x] This submission was written on a forked copy of SingleCellOpenProblems
[ ] GitHub Actions "Run Benchmark" tests are passing on this base branch of this pull request (include link to passed test: )
[ ] If this pull request is not ready for review (including passing the "Run Benchmark" tests), I will open this PR as a draft (click on the down arrow next to the "Create Pull Request" button)

Submission guidelines

[ x] This submission follows the guidelines in our Contributing document
[ x] I have checked to ensure there aren't other open Pull Requests for the same update/change

@mvinyard Did you decide to do something differently? Just wondering why you closed this?

@lazappi this is a PR from before I realized we were organizing them by dataset/method/metric for the organizational flow. I couldn't figure out a way to add it so I just opened the new one that we've been conversing over.


No "game over" sound effects after countdown ends

Describe the bug
No "game over" sound effects after countdown ends
Steps to reproduce the behavior

Navigate to https://arcade.makecode.com/beta#
Create a project and drag block start countdown

Actual behavior
No "game over" sound effects after countdown ends. Only show the message Game Over on screen.
Expect behavior
Play "game over" sound effects after countdown ends.
Additional context
1.OS: Windows11
2.arcade version: 1.13.6
3.Microsoft MakeCode version: 8.6.8

@eanders-ms  by design?


regression issue

Creating New Features with Features Selection
[GML] The 1 step feature engineering process could generate up to 49 features.
[GML] With 5429 data points this new feature matrix would use about 0.00 gb of space.
[FEATURE_ENGINEERING] Step 1: transformation of original features
[FEATURE_ENGINEERING] Generated 14 transformed features from 7 original features - done.
[FEATURE_ENGINEERING] Generated altogether 17 new features in 1 steps
[FEATURE_ENGINEERING] Removing correlated features, as well as additions at the highest level
AttributeError                            Traceback (most recent call last)
 in
3 numeric_cols =['session_id','session_number','client_agent','device_details']
4
----> 5 fe = FeatureEngineering(train,'time_spent',fill_missing_data=True, method_cat='Mode',cat_cols = cat_cols,numeric_cols = numeric_cols,
6 method_num='Mean',encode_data=True,normalize=True, remove_outliers=False,new_features=True,feateng_steps=1,task ='regression')
7
~\Anaconda3\lib\site-packages\GML\FEATURE_ENGINEERING.py in init(self, data, label, fill_missing_data, method_cat, method_num, drop, cat_cols, numeric_cols, thresh_cat, thresh_numeric, encode_data, method, thresh, normalize, method_transform, thresh_numeric_transform, remove_outliers, qu_fence, new_features, task, test_data, verbose, feateng_steps)
166                 except:
167                     pass
--> 168                 X = afc.fit_transform(X, y)
169                 if not test_data == None:
170                     test_data = afc.transform(test_data)
~\Anaconda3\lib\site-packages\GML\AUTO_FEATURE_ENGINEERING\autofeat.py in fit_transform(self, X, y)
294             target_sub = target.copy()
295         # generate features
--> 296         df_subs, self.feature_formulas_ = engineer_features(df_subs, self.feateng_cols_, _parse_units(self.units, verbose=self.verbose),
297                                                             self.feateng_steps, self.transformations, self.verbose)
298         # select predictive features
~\Anaconda3\lib\site-packages\GML\AUTO_FEATURE_ENGINEERING\feateng.py in engineer_features(df_org, start_features, units, max_steps, transformations, verbose)
339         print("[FEATURE_ENGINEERING] Generated altogether %i new features in %i steps" % (len(feature_pool) - len(start_features), max_steps))
340         print("[FEATURE_ENGINEERING] Removing correlated features, as well as additions at the highest level")
--> 341     feature_pool = {c: feature_pool[c] for c in feature_pool if c in uncorr_features and not feature_pool[c].func == sympy.add.Add}
342     cols = [c for c in list(df.columns) if c in feature_pool and c not in df_org.columns]  # categorical cols not in feature_pool
343     if cols:
~\Anaconda3\lib\site-packages\GML\AUTO_FEATURE_ENGINEERING\feateng.py in (.0)
339         print("[FEATURE_ENGINEERING] Generated altogether %i new features in %i steps" % (len(feature_pool) - len(start_features), max_steps))
340         print("[FEATURE_ENGINEERING] Removing correlated features, as well as additions at the highest level")
--> 341     feature_pool = {c: feature_pool[c] for c in feature_pool if c in uncorr_features and not feature_pool[c].func == sympy.add.Add}
342     cols = [c for c in list(df.columns) if c in feature_pool and c not in df_org.columns]  # categorical cols not in feature_pool
343     if cols:
AttributeError: module 'sympy' has no attribute 'add'

if you understand issue please respond

if you understand issue please respond

Hi, sorry due to academic finals, could not respond fast. can you please share the snap of X and y?

Hi, sorry due to academic finals, could not respond fast. can you please share the snap of X and y?

problem with new features creating

problem with new features creating

the problem is, session_id, client_agent and device_details are not numeric, pass them as cat_cols. further you can know what are categorical or numeric columns by X.dtypes

the problem is, session_id, client_agent and device_details are not numeric, pass them as cat_cols. further you can know what are categorical or numeric columns by X.dtypes

still its getting same error

still its getting same error

why don't you an add demo about regression in github once check whether regression working or not..

why don't you an add demo about regression in github once check whether regression working or not..

Either drop date column or pass it in cat_cols

Either drop date column or pass it in cat_cols

yes I already dropped date column starting itself...

yes I already dropped date column starting itself...


Some More Ideas

[x] Working Settings (Wallpaper Change, Dark n White Mode)
[ ] Browser (Browser in a browser ah yes)
[ ] Media Viewer being able to handle Videos, audio (maybe even audio stream and get the artist n title from the stream)
[ ] A Radio App (some selected radio stations)
[ ] Code Editor (that works with the FS, if possible, a VSCode Clone)
[ ] Spotify App
[ ] AI assistant
[ ] Ability to down and upload folders or files into/from the FS
[ ] Context Menu

Thanks, again! They all sound like great ideas and I'm definitely gonna consider these, except the Discord app. Because Discord's TOS do not allow clients, I'm not sure whether something like this would be allowed.

Then instead of Discord App, try a AI Assistant (f.e. powered by pur)

Added context menu as suggestion

Added Settings app: 3625c38 (Note: doesn't have dark/light mode options yet)

Ability to down and upload folders or files into/from the FS

This isn't a bad idea at all. To localize this we could leverage the browsers storage api itself. This way it stays client side.

The ability to upload files onto ProzillaOS has already been added inside the file explorer app and persistent data is implemented via the virtual drive system.
Old docs where the virtual drive system is explained: https://github.com/prozilla-os/ProzillaOS/tree/archive/pre-monorepo/docs/features/virtual-drive


example of calling mediapipe via RPC

Hello,
MediaPipe is a great framework to implement video/image process pipeline. I'm trying to integrate MediaPipe with a RPC Framework (like GRPC) to provide an image process service. It would be great if anyone could share some experience or example code.

@walkbird Could you describe your use case more? The closest would be to run a desktop example like object detection C++ we have as a c++ binary that runs a MediaPipe graph that constantly streams result protos (eg. detection protos in the case of object detection). Implement a GRPC C++ streaming server to constantly read the output detection protos. We would be interested in such an example as well and would love to get your contribution of how to integrate a GRPC server to a MediaPipe example


Kubernetes SD: Allow restricting namespaces

Currently the Kubernetes SD lists and watches all changes for each role. This is problematic for two reasons:

Scalability: Watching and acting on every event of a Pods and Endpoints objects can get problematic due to the sheer amount of events in a large cluster.
Security: Advanced setups include role based access to limit what a service account is able to access, and thus will make Prometheus error when it tries to list/watch all namespaces, when it is only allowed to access certain namespaces.

I see two possibilities (this part is up for discussion):

An array of namespaces in the Kubernetes SD config, which if empty has the same behavior as it does now, so lists and watches all namespaces, and if specified only watches/lists those in the list.
A subsection to discover namespaces, which would also be relabelable.

The second solution seems like it is the desirable one, but besides adding complexity it requires the ability to watch/list namespaces in the first place, I'm not sure if this is ok. Possibly this is not an "or" decision, but both are required to cover everyones needs.
This will make #2191 a bit more complicated for the Kubernetes SD, but still doable.
@fabxc @beorn7 @juliusv @brian-brazil @matthiasr @alexsomesan

A subsection to discover namespaces, which would also be relabelable.

Let's try to avoid additional types of relabelling, they cause enough confusion as-is. A simple regex is the most we should need.

A simple regex is the most we should need.

Agreed.

Mh, if I cannot get a list of all namespaces due to access control, how can I apply a regex to it to filter namespaces?

@fabxc Yes that was my thought with

it requires the ability to watch/list namespaces in the first place, I'm not sure if this is ok.

Listing namespaces is a different level of access than looking inside them.
I'd like to have a way to select namespaces by label – since namespaces are
not nested, the only way to group by multiple dimensions is to construct a
namespace name somehow and use labels for the real breakdown. Selecting
with a regex is ambiguous in this case.
On Wed, Dec 14, 2016, 08:25 Frederic Branczyk<EMAIL_ADDRESS>wrote:

@fabxc https://github.com/fabxc Yes that was my thought with
it requires the ability to watch/list namespaces in the first place, I'm
not sure if this is ok.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/prometheus/prometheus/issues/2280#issuecomment-266962327,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAICBrp8eJqr-suICbBozLAK0XKwLEQ1ks5rH5n_gaJpZM4LMYtm
.

I agree that label selection is the way to do it. Any SD-specific mechanism
should we add should also stick with the ideal methods of that particular
SD. And Kubernetes' design is relatively explicitly against encoding
grouping information into the plain name.
We probably need label selection and plain names for cases where Prometheus
doesn't have perms to list all namespaces/list resources without namespace
specification.
Have there been any scalability issues yet? The former could be solved via
relabeling too. But the collection under the hood would be quite exotic and
I'd certainly don't rate it as a target label anymore with that level of
indirection.
On Wed, Dec 14, 2016 at 8:38 AM Matthias Rampke<EMAIL_ADDRESS>wrote:

Listing namespaces is a different level of access than looking inside them.
I'd like to have a way to select namespaces by label – since namespaces are
not nested, the only way to group by multiple dimensions is to construct a
namespace name somehow and use labels for the real breakdown. Selecting
with a regex is ambiguous in this case.
On Wed, Dec 14, 2016, 08:25 Frederic Branczyk<EMAIL_ADDRESS>wrote:

@fabxc https://github.com/fabxc Yes that was my thought with
it requires the ability to watch/list namespaces in the first place, I'm
not sure if this is ok.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<
https://github.com/prometheus/prometheus/issues/2280#issuecomment-266962327
,
or mute the thread
<
https://github.com/notifications/unsubscribe-auth/AAICBrp8eJqr-suICbBozLAK0XKwLEQ1ks5rH5n_gaJpZM4LMYtm
.

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/prometheus/prometheus/issues/2280#issuecomment-266964347,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEuA8mdLVY-b1zMqsQrHYYQCXc6MAFh7ks5rH5zogaJpZM4LMYtm
.

see #1951

@fabxc what I mainly meant in terms of the "scalability" issue is that if we have the informers setup to list/watch on all namespaces, then we are filling and updating our cache unnecessarily much when we could restrict it to the objects that we are interested in.

label selection is the way to do it. Any SD-specific mechanism
should we add should also stick with the ideal methods of that particular
SD.

Agreed, however then it would probably make sense to adapt here as well.

Yes, I totally agree that there's overhead and it will most likely become a scalability issue eventually. Was just wondering whether it came up it – but probably not given Kubernetes clusters still being fairly small on average.
How do you mean adapt? Just in terms of generating the appropriate config if possible or change the selection field in the operator in some way?

I think i have hit such problem which needs restricting namespaces or sth similar. My problem is described here. node_exporter as well as kube_state_metrics are deployed as daemonset and deployment respectively. I do not know what @brian-brazil had in mind with

For example the configuration for the node exporters should already be a separate scrape_config so splitting it out to a separate Prometheus should be straightforward by splitting the configuration file.

as node_exporter does not have separate configuration as it is a part of kubernetes_sd_config and it is a subject to autodiscovery. So I can not see any possibility to create separate configuration for

node_exporter metrics
kube_state_metrics
all other namespaces metrics

@widgetpl This is about a different issue. I commented on the stackoverflow thread to keep this on-topic.

@brancz I will not agree that this is a bit different issue, for me it sound a little bit different. One of the reasons of this issue is

Scalability: Watching and acting on every event of a Pods and Endpoints objects can get problematic due to the sheer amount of events in a large cluster.

and i think this is the same problem which I have ( large cluster and big amount of events/metrics ) unless you are talking only about kubernetes cluster itself without annotated services, pods etc. but I think they are included. In my opinion it depends how you look on it. I suppose that prometheus is watching and listing changes inside cluster through the API to know where it can find some metrics and when this cluster grows it has more and more Kubernetes objects to check. Allowing Prometheus to watch and list specific namespeces or even services, deployments, daemonsets inside those namespeces will reduce those events but it will also scrape specific metrics. Then we can be able to do functional sharding inside Kubernetes.
Unfortunately I have not found how i can make functional sharding inside Kubernetes cluster when everything is a Kubernetes object and my question was not about what should I do but how can I do this inside Kubernetes.
One solution which I mentioned is static_config but it is not best solution as my pod can float between Kubernetes nodes.
Another splution would be to set Prometheus target in static config to external IP of service but then Prometheus will not use Kubernetes API for service discovery.
Please correct me if I am wrong.

@widgetpl This is a different issue, please don't pollute the bug tracker.

We're in need of being able to run Prometheus without it having access to all namespaces as well. I'm willing to put together a PR, but is there a decision on what approach to take?
Our usecase would be satisfied with just having a list of namespaces (that is, no need for automagically inspecting what namespaces are available to the service account). Is that something everyone is satisfied with? If no config is given by the user, the current NamespaceAll would be used, I assume.
From a quick glance at the code, I'm changes would be around here? Anything in particular that would be done more than just looping over those?

Yes that's where I would start as well.
I'm thinking that we actually would want both, in fact I'm thinking of something like Namespace discovery similar to Target discovery, where you could either specify a static list of namespaces if they are known at point of configuring, or be able to specify a label-selector for listing namespaces (which would require RBAC roles to access the list namespaces endpoint). Although labeling namespaces seems to be getting more widely adopted it may also be wanted to filter based on the namespace name, although I would hold off on that until it is a wanted feature.
Wdyt @fabxc @brian-brazil @matthiasr ?

Do we still need this given RBAC? I'd presume it'll just return the namespaces you are allowed see.

Can we check what the k8 plans are there? In particular what happens when you don't have that role?

Currently, you can either list all namespaces or none. This is the same with all resources in Kubernetes - the list action applies to all of that resource type.  For namespaced resources (pods, services, etc), a role can be grant access on a per namespace basis, however, namespaces themselves are cluster level.
Unsure of future plans in k8s, though.

Implemented in #2642.


Fixed first reply test and wrong first reply email body

Fixed broken unit test. Based on #55.
Fixed wrong first reply email body (See 8a34ed690b26357c7be34183582c6bf5398c6715).

Thank you for fixing this test!


Device doesn't vibrate and play sound when app is locked and notification arrived.

Before openning an issue

Reproduce it with the example project in this repo.
If you can't receive iOS notification, make sure you can receive notification using quickstart-ios project provided by Firebase team

When openning an issue, please include following information for better support

What version of RN and react-native-fcm are you running?
What device are you using? (e.g iOS9 emulator, Android 6 device)?
Is your app running in foreground, background or not running?

could it be phone setting that limits it?

i have the same dude, some help plz


Add waveshare 12in48 drivers

Hey @suranyami, thanks for the PR!
I had a look, and made some changes to get it to work. This PR combines both your changes and mine. I made a separate PR  just to move faster. I'm going to merge it in if all tests pass.
I also updated the instructions on how to add new waveshare drivers. The previous ones were quite out of date. The new ones are:

Copy new C sources (EPD_* files) to frameos/src/drivers/waveshare/ePaper
Run cd frameos/src/drivers/waveshare/ePaper && make to generate new .nim files
Run cd backend && python3 list_devices.py and verify the driver is listed with the right resolution and color
If not, you might need to edit the auto-detection routine in convert_waveshare_source in backend/app/drivers/waveshare.py.
If the color remains Unknown and the Display function takes just one parameter, update the VARIANT_COLORS dictionary with the right color.
Finally, copy the output of list_devices.py into frontend/src/devices.ts

Hopefully these drivers will work now, but if not, I'm happy to help debug further.

Running make as suggested above, I get:
# c2nim stumbles if a line ends with an empty comment "//", and makes noise with a full comment
for file in EPD_*.h; do \
		base=$(basename "$file" .h); \
		`nimble path c2nim`/c2nim --assumendef:DEBUG --importc $file; \
		echo '{.compile: "'$base'.c".}' > "$file.tmp"; \
		cat "$base".nim >> "$file.tmp"; \
		mv "$file.tmp" "$base".nim; \
	done
/bin/sh: nimble.nim(912): command not found
/bin/sh: nimble.nim(912): command not found
...

What do I have to do to install nimble?


SQLite compatibility tests

Let's add a test suite that you can run with both SQLite and Limbo for compatibility testing.

Work started in 1e3d61fe41edc8f07ac24957ed72d69915821db8. Closing the issue.


linux-hardkernel: 4.14.47-139 -> 4.14.55-146. Additionally, use vendo…

…r defconfig.
Motivation for this change
Update this vendor kernel to the latest release, and adopt the defconfig provided by them.
In order to make this build, I had to disable the gator module via extraConfig. The build error was of the form of not being able to find a header file related to the mali graphics driver. I've left in (commented out) my attempt to address the problem, but it doesn't work. I can provide more info if anyone is interested, and if anyone knows how to fix this properly, I'm all ears.
In any case, disabling the building of gator seems to work fine, and I've had this kernel running on my HC1 for the last few days without incident.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[x] Fits CONTRIBUTING.md.

👍 yeah, I remember seeing this myself at some point, though I think I ended up disabling something more specific?  I'm not near my XU4 to check right now, but I might have just disabled CONFIG_MALI_GATOR_SUPPORT to get everything to build?  I can test tomorrow evening and report back.

Oh, cool. I have zero idea what Gator does or how this build works, so apparently I went for a larger hammer :)
I'll also give your idea a try if I get to it by then.
Thanks!

Okay, so, I did some digging and I think I figured out the issue.

The error is happening here because the header file isn't found
That file is included in the Makefile here if the CONFIG_GATOR_MALI_MIDGARD flag is set to y.
The odroidxu4_defconfig file sets it to y here.

So, you should be able to set GATOR_MALI_MIDGARD n to solve the problem, I think? There's some question of what happens with this block of the Makefile, but I'd try out the GATOR_MALI_MIDGARD n first.

Just tried GATOR_MALI_MIDGARD n. Same error :(
How important do you feel this is?

Gah, that's annoying. Honestly, I think GATOR n is okay for this PR.
Separately, do you think it's worth opening an issue at https://github.com/hardkernel/linux/ to report this upstream?

I think, to anyone who has the power/desire to merge this: please go ahead. This works ok as it is.
I'll follow up with HK about fixing the build problem properly, and we can remove the kludge in this package at that time.


Moveit examples become unstable/jerky after running for a bit

I am not sure where exactly the issue lies, but after running through one tray in the vacuum example joint 3 on my ReBeL starts to jump before nearly each movement. To make sure that its not a hardware issue maybe test it on another ReBeL. Check if the same occurs in the non-vacuum pick and place example or manually using moveit.

It seems like the occurance of the problem is time dependent instead of position/trajectory dependent as repeating previously jerk-free motions will also cause issues after a while and reversing the pick and place pattern does not cause the issues to appear sooner. Still it might be a good idea to enable the jump threshold in the cartesian motion planning.

Regarding the jitter, this is the result of measuring the time between sending the CAN commands. While it certainly can and should be improved, it should still be inside the tolerance of the motor controller boards. Also the jitter would have to be caused by the moveit trajectory planning, which might be resolved by using a RT Kernel, something that is on the TODO list anyways

Furthermore, no automatic error resets occured during the program, and since the rebel in this case was powered with a battery it should not be an insufficient power source.

Testing showed that some delay (I tested with 500ms, I hope something around 10ms is sufficient) before starting the linear motion planing seems to resolve the issue. Meanwhile I am compiling the RT Preempt kernel and prepared a python script to compare the jitter behaviour with the standard kernel.
Afterwards I will look further into how much delaying is required or if I still can reproduce the issue.

Comparing the jitter between 5.19 Preempt and 5.22 shows no big improvement, in the contrary the jitter seems to have worsened a bit. Still, as ros2_control recommends to use a RT-PREEMPT kernel I will continue testing with it and add a short install guide to the irc_ros_hardware package.

candumps used:
candump_no_rt.txt
candump_rt.txt
Script used:
compare_jitter_candumps.py.txt


Provide means to control TCP frame sizes in response to high memory pressure

This PR parses the minimum number of bytes that need to be read by the TCP layer to receive a frame that can be fully decrypted. This minimum number of bytes (aka min_progress_size) is conveyed by secure_endpoint to the TCP layer.
Requires Cherrypick.
@ananda1066

Can you separate this into read path and write path changes?
I'd like to land them separately so we can roll them back separately if needed.

Can you separate this into read path and write path changes? I'd like to land them separately so we can roll them back separately if needed.

Removed the endpoint write frame clipping changes. But I can also add them back.
The TCP layer right now ignores min_progress_size and the max_frame_size is set to INT_MAX by the transport layer. So it should be safe to land both read and write path changes as well. This PR should have no effect in the actual framing until we  make TCP use min_progress_size and we change max_frame_size at the transport layer

this LGTM, but going to let @ZhenLian approve.


configure --with-dbusdir has no effect

The setting sets DBUSDIR, which is then cleared and ignored:
https://github.com/apple/cups/blob/7454512be9a59d6462f61621915c8991f2af6e37/config-scripts/cups-common.m4#L300

[master 9e82c53eb] Fix --with-dbusdir (Issue #5671)

Thanks. Maybe I'm missing something, but it seems like DBUSDIR is still overwritten when dbus is detected in this case:
https://github.com/apple/cups/blob/9e82c53ebcb50e53358285efeb06bcccba57f4ee/config-scripts/cups-common.m4#L321

[master 397eefaa6] Another fix for DBUSDIR (Issue #5671)