Can't enable plugin when downloaded from AssetLib

Material Maker version:
.92
OS/device including version:
Windows 10, Godot v3.2.2 Mono Stable
Issue description:
When I tried to import the plugin, I immediately got a bunch of errors, preventing me from using it.
 res://addons/material_maker/engine/gen_base.gd:222 - Parse Error: The identifier "mm_io_types" isn't declared in the current scope.
 modules/gdscript/gdscript.cpp:599 - Method failed. Returning: ERR_PARSE_ERROR
 res://addons/material_maker/engine/gen_shader.gd:105 - Parse Error: The identifier "OutputPort" isn't a valid type (not a script or class), or couldn't be found on base "self".
 modules/gdscript/gdscript.cpp:599 - Method failed. Returning: ERR_PARSE_ERROR
 res://addons/material_maker/engine/gen_material.gd:52 - Parse Error: The method "add_to_group" isn't declared in the current class.
 modules/gdscript/gdscript.cpp:599 - Method failed. Returning: ERR_PARSE_ERROR
 res://addons/material_maker/engine/gen_base.gd:222 - Parse Error: The identifier "mm_io_types" isn't declared in the current scope.
 modules/gdscript/gdscript.cpp:599 - Method failed. Returning: ERR_PARSE_ERROR
 res://addons/material_maker/engine/gen_shader.gd:105 - Parse Error: The identifier "OutputPort" isn't a valid type (not a script or class), or couldn't be found on base "self".
 modules/gdscript/gdscript.cpp:599 - Method failed. Returning: ERR_PARSE_ERROR
 res://addons/material_maker/engine/gen_material.gd:52 - Parse Error: The method "add_to_group" isn't declared in the current class.
 modules/gdscript/gdscript.cpp:599 - Method failed. Returning: ERR_PARSE_ERROR
 res://addons/material_maker/import_plugin/ptex_spatial_material.gd:16 - Parse Error: The identifier "mm_loader" isn't declared in the current scope.
 modules/gdscript/gdscript.cpp:599 - Method failed. Returning: ERR_PARSE_ERROR
 res://addons/material_maker/import_plugin/ptex_import.gd:64 - Parse Error: Couldn't fully preload the script, possible cyclic reference or compilation error. Use "load()" instead if a cyclic reference is intended.
 modules/gdscript/gdscript.cpp:599 - Method failed. Returning: ERR_PARSE_ERROR
 res://addons/material_maker/plugin.gd:7 - Parse Error: Couldn't fully preload the script, possible cyclic reference or compilation error. Use "load()" instead if a cyclic reference is intended.
 modules/gdscript/gdscript.cpp:599 - Method failed. Returning: ERR_PARSE_ERROR

Steps to reproduce:

Install the plugin from AssetLib.
Attempt to enable it from AssetLib > Plugins...

Material Maker requires a few autoloads for the plugin to work.  I started making this smoother for (I hope) next release.

What are the necessary autoloads?

mm_io_types="*res://addons/material_maker/engine/io_types.gd"
mm_loader="*res://addons/material_maker/engine/loader.gd"
mm_renderer="*res://addons/material_maker/engine/renderer.tscn"

You could just use class_name inside your scripts. No reason to add autoloads to internal details, unless these are singletons.

I tried adding the autoload and I got this:
 modules/gdscript/gdscript.cpp:1453 - Condition "!named_globals.has(p_name)" is true.
 modules/gdscript/gdscript.cpp:1453 - Condition "!named_globals.has(p_name)" is true.
 Script does not inherit a Node: res://addons/material_maker/engine/io_types.gd.
 editor/editor_autoload_settings.cpp:488 - Condition "!info->node" is true. Continuing.
 Script does not inherit a Node: res://addons/material_maker/engine/loader.gd.
 editor/editor_autoload_settings.cpp:488 - Condition "!info->node" is true. Continuing.
 res://addons/material_maker/engine/gen_base.gd:222 - Parse Error: Couldn't fully load the singleton script "mm_io_types" (possible cyclic reference or parse error).
 modules/gdscript/gdscript.cpp:599 - Method failed. Returning: ERR_PARSE_ERROR

There's a cyclic reference of this order (upon inspecting the code): MMGenBase -> mm_io_types -> mm_loader -> MMGenBase.
I also noticed that your code adheres to some kind of mixed convention, leaving a lot of code ambiguous. I'd suggest sticking with static typing entirely.

The autoloads are singletons, it would be possible to instanciate them explicitely in the plugin and in material Maker, but it would be impractical. It is probably possible to break the dependency loop by adding a new class for material maker paths (that's defined in the loader and used in io_types).
And yes, I often forget to specify types (and I've been using Godot for quite some time and typing was not available when I started this projeect).


CLN gateway connection should be authenticated

Currently it's unauthenticated so the gateway can only run on the same local network

Might need to use certificates for this, would be ideal to just use straight password auth though.

@Kodylow you may want consider to use rune and commando, or move it to the grpc API of cln, but idk if it is a good move

CoreLN currently broken on macOS. Bumped last week to 0.28.1, there's some incompatibility for mac specifically.
Plugin is currently un-authed, removing grpc entirely and just using axum and we can use passwords + jwts. PR incoming @m1sterc001guy

CoreLN currently broken on macOS.

Uh, really? what is the problem on macOS?

Uh, really? what is the problem on macOS?

We reverted the change that bumped CLN to 24.08.1, so it is no longer broken, but we won't be able to increase the version in the meantime,
https://github.com/fedimint/fedimint/issues/6193#event-14770204564
Let's tackle authentication after https://github.com/fedimint/fedimint/pull/6197

We reverted the change that bumped CLN to 24.08.1, so it is no longer broken, but we won't be able to increase the version in the meantime,
https://github.com/fedimint/fedimint/issues/6193#event-14770204564

I see, sorry about that. I have no a osx env, so I could not reproduce it :/ otherwise I could try to patch it

Made obsolete by #6218 :cry:


Automated Package Upgrade

:tada: This PR is included in version 25.3.526 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Python 3.5 compatible?

Just curious: is this package is Python 3.5 compatible?
I am about to change my project from 2.7 to 3.5 and this question raised in my head.

Well, version 0.10 in PyPi is Python 3.5 compatible (at least the tests say so).


date

Hello
The API works great.
Just an idea: May be you can add as variable future date. As example if I want to generate a link for future meeting and add into calendar, is not possible now.
thnks

Nice idea. I'll try to add it.
Thanks

nbf is added. Get the number of seconds from now.


Update seeding data

Seeding data has t o be updated. For example, all transactions for admin user have to be in same currency as wallet because there is no transformation when seeding method is ran.

You should also separate "test" and "production" seeding. It is not necessary to have production seeding context, however, I would be good to have one, so you can eventually update DB schema easily no, that you are on-line. Put your on-line DB to a good state and create "initial migration", so you have something to start with (you have to use correct connection string in the web.config of course).
Also, there should be no accounts in "production" seeding, so whole your azure application cannot be hijacked after reading a code for seeding context (you either have to write code that registers first user as administrator (accepting that no users means application was just deployed for the first time and that you are OK with all (security) risks) or ensure that seeding accounts are inactivated in live environment.

Just a question: what should be in the production seeding? In my opinion, only currencies (as we can't create a new one on the site) and admin user you wrote about. Or am I missing something?

Yep. You're right. Sometimes, there are also several users and data for "on site" testing (so one does not need existing/real just account to confirm an issue).
These accounts are usually disabled by a flag that can be set in DB only - sort of readonly field in DB model (provider will not allow to change the field's value of any model when setting changes).

After the conversation related to issue #97, it is OK to only change seeded users' passwords and close this issue. Unless you decide not to follow my suggestion in the conversation mentioned above, it is not necessary to deliver me the new passwords.

Hm, do change passwords for all seeded (pre-generated) users in the same manner you did for administrator – I hoped this would be obvious. Otherwise, it looks good.


Add event for clicks

Objective

Add click events that capture the press release cycle of a UI node being clicked
Addresses #9047

Solution

Add API to send Click events when an Interaction goes from Interaction::Hovered to Interaction::Pressed
Incorporate Click event sends into UiPlugin by default
Refactor game_menu.rs example to use Click rather then manually checking the Interaction

As an aside, I haven't changed any other bevy example that could use Click just yet. If my implementation is along the lines of what people want then happy to skim through the UI examples and migrate them to use Click if wanted.
Possibly interested party @Shatur :)

Made some changes @Shatur, let me know what you think. Found some other examples that I'm happy to change to Click's as well

Apologies still working on this and will hopefully have it done in a week probably. Real life nonsense currently imposing. :(

Take your time, hope everything is alright!

@AnthonyKalaitzis hope that you are doing okay! Let me know if you are not longer interested, I will finish this PR for you.

@Shatur Mega apologies, fell of the face of the earth there for a bit (employment interviews zzzzz). Will have the other examples finished by today or tomorrow hopefully. Just pushed one to let people know I'm still alive and working on it. Sorry again for the delay :cry:

Oh, okay, no problem, take your time!

@Shatur Couple of follow up questions for the other examples:

examples/ui/button.rs: This doesn't seem to actually do anything on the click event. Just based on the interaction it sets the look of the button so I'm not sure what I could refactor
examples/ui/size_constraints.rs: I can move the button_activated_event.send(ButtonActivatedEvent(event.0)); to be from click events but not sure what else can really be refactored here
crates/bevy_ui/src/focus.rs: Don't really understand at all what to update here

and then releases it within a brief time window (ideally according to the system's global click threshold).

I wouldn't expect any timeout. At lest in any UI that I used (including games, programs and OSes) it works exactly as in this PR.

his is just sending an event for when the user presses the mouse button

It's not happens "just on release". It happens on release only if cursor stays at the button.

I wouldn't expect any timeout. At lest in any UI that I used (including games, programs and OSes) it works exactly as in this PR.

Ah I misunderstood what this PR was doing. I thought it was incorrectly modeling a click as a two-phase event, but I was mistaken.

Just a small question: Why not send the click event in ui_focus_system? That way LastInteraction would not even be required?

Just a small question: Why not send the click event in ui_focus_system?

This sounds like a great suggestion!
I suggested LastInteraction because this is what I used in my game because without touching Bevy code.
@AnthonyKalaitzis could you try the suggested approach? I think you can do it here:
https://github.com/AnthonyKalaitzis/bevy/blob/f07e153682b6c4129343db09c4ff8c938019c9fd/crates/bevy_ui/src/focus.rs#L178

Big thanks @Shatur for sticking with me through that painful process :smile:! Very much a learning experience for me, haven't done much open source stuff before. Big thanks :1st_place_medal:

@AnthonyKalaitzis could you resolve conflicts?

Adopted in #10141. Don't worry, credit will be shared if this gets merged and your ongoing participation in that thread would be welcome.


Minecraft Legends Documentation Overhaul Step 1

Thoroughly improved most documents. Fixed grammatical errors, improved readability, removed inline HTML, replaced many IMAGES of code with actual code blocks, now meets most standard markdown linting rules. Lots of work still to be done, but this gives a good basis.
We're back.

Cool!

Will be updating this more once I get everything converted to TS properly. LegendScript will be the best superset of B# ever.
(it's ok Mojang I got this)


uv run fail to run pyw scripts on Mac (and probably Linux) with a confusing message

I tried reproducing the second example from https://docs.astral.sh/uv/guides/scripts/#using-gui-scripts on my Mac, and got a confusing error. I'm guessing uv tries to run a pythonw executable that doesn't exist on my system, or it's trying to run example_pyqt.pyw.py.
I think this should just work but, if not, the error message should be better.
$ uv run example_pyqt.pyw
error: Failed to spawn: `example_pyqt.pyw`
  Caused by: No such file or directory (os error 2)
$ uname -a
Darwin macaw.local 23.6.0 Darwin Kernel Version 23.6.0: Thu Sep 12 23:36:12 PDT 2024; root:xnu-10<IP_ADDRESS>1.1~1/RELEASE_ARM64_T6020 arm64 arm Darwin
$ uv --version
uv 0.5.7 (Homebrew 2024-12-06)

After renaming the file to .py, everything worked (it's an impressive demo!).

Ah pyw is "Windows only", we can improve the error message here.

Thanks! I think either approach could work.
I also wonder whether there are other cases where uv will report "Failed to spawn x: No such file or directory" when x actually exists.


Primary groups does not take context

Hi there,
I ran into an issue (I think ?) or it behave weirdly. I've created 2 other groups: citizens and staff-context to keep the track as : default > citizens > staff-context
cf:

Then I try to /lp user bathman18 parent set staff-context server=skyblock but it looks like LuckPerms consider that bathman18 lost his primary group and add default back. But LuckPerms consider the context to be matching and print his prefix and so on.
Yet, his prefix does not apply in game.

I've run a verbose here:

Yet, if I remove the context server=skyblock for bathman18 it looks like the group is applied correctly and prefix is attached as well

I thought I was running the same issue as https://github.com/lucko/LuckPerms/issues/2270 but here is my config.yml:
server: skyblock
include-global: true
include-global-world: true
apply-global-groups: true
apply-global-world-groups: true

primary-group-calculation: all-parents-by-weight # I've also tried parents-by-weight with no success
meta-value-selection-default: highest-number # I've tried inheritance with no success

The idea below that is to have one staff per server and not sharing permissions all around.
Thank you :)
PS: The 2nd example is strictly what we're looking for: https://github.com/lucko/LuckPerms/wiki/Advanced-Setup

But if I replace the server: skyblock into server: global from the config.yml and define a static-context:
{
  "static-contexts": {
    "server": "skyblock"
  },
  "default-contexts": {}
}

It looksl ike LuckPerms take, correctly, in account the primary group

You should not need to touch context.json at all. Just base your context on servername defined in server: servername in LP config.yml for all backend servers.

You should not need to touch context.json at all. Just base your context on servername defined in server: servername in LP config.yml for all backend servers.

Exactly, but when I put the server: server-name it does not take in account the true primary group so what am I missing ?

The prefix as well as the primary group is correct in lp user USER info tho. Ensure you have vault plugin if you are displaying either using another plugin

I'm using Vault (1.7.2) and EssentialsXChat (<IP_ADDRESS>)

The thing is the prefix as well as the  primary group is the same regardless of the context. So I doubt its due to the context. Screenshot lp user USER meta info

Have you looked at the issue Ben?

Oh. My bad I missed the meta in the command.

Here is /vault-info suggested in the wiki:

And the meta info lp user USER meta info:

I can dump the database (MySQL) if you want to give a try

Dump.
Any news on this ?

Will need to look into this in a bit more detail - very limited on time at the moment but I'll try get to it soon.

I’d like to add that this also appears to affect prefixes. Using the trick with the static contexts fixed that too.

I’d like to add that this also appears to affect prefixes. Using the trick with the static contexts fixed that too.

Permissions are also affected if I remember well.
Also, if I define a static context and keep the server: server-name in the config.yml it won't work unless I set it to server: global

Any idea on when it will be fixed or looking for resolution ?

I am experiencing this same issue, glad to know I'm not the only one.

Please fix this issue as it still doesn't work.

Any update since ?

It's been 2 months now. Can I do anything to help fixing this issue ?

Actually, looks like the latest version (5.1.107) solves the issue.
I can only hope that you know what you've done to fix this issue which won't happen next time ;)

This still doesn't work for me. I'm fully updated too

Have you tried the 5.1.107 version ?
Also, we might have changed some default config values such as :
primary-group-calculation: all-parents-by-weight

inheritance-traversal-algorithm: depth-first-pre-order

context-satisfy-mode: at-least-one-value-per-key

include-global: true
include-global-world: true
apply-global-groups: true
apply-global-world-groups: true

meta-value-selection-default: highest-number

These settings kind of broke my ranks and doesn't work still. I've reverted back to how they were. I guess I'm gonna have to wait till they fully fix it without having to change settings.

Pretty sure alll but the first are default values there.
Guys. Please don't randomly change these values if you don't understand them. The defaults are perfectly fine.


Failed to Connect to dyson cloud (issue with libdyson)

I've tried everything I can think of to get this integration working but nothing will do it. The logs are showing that the device is being found but I'm not sure why it won't connect. I've logged out of the app on my phone to see if that would fix it as well as restarting the Dyson fan itself. I can't get the Dyson cloud or Dyson local integration working for whatever reason. The logs don't give a ton of info but here is the section for reference:
2021-12-19 15:37:29 DEBUG (zeroconf-ServiceBrowser-_360eye_mqtt._tcp-_dyson_mqtt._tcp-362) [custom_components.dyson_local.config_flow] Found device at <IP_ADDRESS>
2021-12-19 15:37:30 DEBUG (Thread-111) [libdyson.dyson_device] Connected with result code 5
2021-12-19 15:37:30 DEBUG (Thread-111) [libdyson.dyson_device] Disconnected with result code 0
2021-12-19 15:37:30 DEBUG (MainThread) [custom_components.dyson_local.config_flow] Failed to connect to device:
2021-12-19 15:37:44 DEBUG (MainThread) [custom_components.dyson_local.config_flow] Failed to connect to device:
my Dyson fan does connect via homebridge, but I deleted the configuration thinking that maybe that could be the issue. Still no luck though. Any help is greatly appreciated!

Hello,
What is the device that you are trying to connect ?

Hello,
What is the device that you are trying to connect ?

The device is a Dyson HP04 Heat+Cool purifier. I use the Dyson link app and there’s no wifi information on the device anywhere. I have the credentials and serial number from my installation in Homebridge but when I use that same information in home Assistant for Dyson local it doesn’t actually set up for some reason.

@Spross1 I have the same device. The WiFi information is on a sticker under the filter. Push the two buttons on the gray filter and pull it up. You'll see it. The SSID is something like DYSON-ABC-US-A1B2B3B4-123 and the password is 8 lowercase letters.

I just double checked because I’d seen someone mention that originally but maybe you can help me find it. I don’t see it anywhere. I’ll add some pics for reference

@Spross1 I have the same device. The WiFi information is on a sticker under the filter. Push the two buttons on the gray filter and pull it up. You'll see it. The SSID is something like DYSON-ABC-US-A1B2B3B4-123 and the password is 8 lowercase letters. Note that the serial number displayed in the Dyson app is missing the last 3 digits of this SSID.

I'll also add some photos of the app when I click "change network":

could the problem be with my libdyson? this is an error in the log that I see:
"2021-12-22 18:33:20 INFO (SyncWorker_2) [homeassistant.util.package] Attempting install of libdyson==0.8.9"

Dyson HP04 Heat+Cool purifier

I have the same device, what I understand is that this device uses bluetooth connection to set it by app during the first connection to your wi-fi network, so you cannot setup using device WIFI information

There seem to be a problem with libdyson and the connection to the cloud, Dyson must have changed its API once again, I am pinning this issue until I resolve the bug

There seem to be a problem with libdyson and the connection to the cloud, Dyson must have changed its API once again, I am pinning this issue until I resolve the bug

I just upgraded my Home Assistant today to the latest version on my Raspberry Pi and am facing the same issue. My Dyson fan wouldn't work on Home Assistant. I tried removing Dyson Local from HACS and reinstalling but couldn't connect to my fan (I didn't have this problem before). Tried the Dyson Cloud route and managed to get past the authentication page but had an error connecting to the fan with a libdyson.exceptions.DysonInvalidAuth in the log.

There seem to be a problem with libdyson and the connection to the cloud, Dyson must have changed its API once again, I am pinning this issue until I resolve the bug

I just upgraded my Home Assistant today to the latest version on my Raspberry Pi and am facing the same issue. My Dyson fan wouldn't work on Home Assistant. I tried removing Dyson Local from HACS and reinstalling but couldn't connect to my fan (I didn't have this problem before). Tried the Dyson Cloud route and managed to get past the authentication page but had an error connecting to the fan with a libdyson.exceptions.DysonInvalidAuth in the log.

I downgraded to 0.16.1 and then upgraded back to 0.16.2 and was able to set up successfully via the Dyson Local integration. Didn’t check Dyson Cloud though.

There seem to be a problem with libdyson and the connection to the cloud, Dyson must have changed its API once again, I am pinning this issue until I resolve the bug

I just upgraded my Home Assistant today to the latest version on my Raspberry Pi and am facing the same issue. My Dyson fan wouldn't work on Home Assistant. I tried removing Dyson Local from HACS and reinstalling but couldn't connect to my fan (I didn't have this problem before). Tried the Dyson Cloud route and managed to get past the authentication page but had an error connecting to the fan with a libdyson.exceptions.DysonInvalidAuth in the log.

I downgraded to 0.16.1 and then upgraded back to 0.16.2 and was able to set up successfully via the Dyson Local integration. Didn’t check Dyson Cloud though.

Looks like I spoke too soon. The integration worked fine until I upgraded HA core 2021.12.8. Now it’s stuck with the same issue again. Tried downgrading to 0.16.1 and upgrading back to 0.16.2. No success.

I got same issue with brand new Dyson Pure Humidity+Cool, Model: Ph04
Firmware: ECG2PF.<IP_ADDRESS>5
Step1: got verification code
Please choose your account region
1: Mainland China
2: Rest of the World
Region [1/2]: 1
Phone number: 186xxxxxxxx
Verification code: xxxxxx
Serial: K1G-CN-xxxxxxxx
Name: 卧室
Device Type: 358E
Credential: xxxxxxxx
Step 2: config integration manually but failed with "Failed to connect to device"
2022-01-16 11:27:11 DEBUG (zeroconf-ServiceBrowser-_360eye_mqtt._tcp-_dyson_mqtt._tcp-278) [custom_components.dyson_local.config_flow] Found device at <IP_ADDRESS>
2022-01-16 11:27:12 DEBUG (Thread-5) [libdyson.dyson_device] Connected with result code 0
2022-01-16 11:27:12 INFO (MainThread) [libdyson.dyson_device] Connected to device K1G-CN-xxxxxxxx
2022-01-16 11:27:12 DEBUG (Thread-5) [libdyson.dyson_device] Disconnected with result code 7
2022-01-16 11:27:14 DEBUG (Thread-5) [libdyson.dyson_device] Connected with result code 0
2022-01-16 11:27:14 DEBUG (Thread-5) [libdyson.dyson_device] Disconnected with result code 7
2022-01-16 11:27:15 DEBUG (Thread-5) [libdyson.dyson_device] Connected with result code 0
2022-01-16 11:27:15 DEBUG (Thread-5) [libdyson.dyson_device] Disconnected with result code 7
2022-01-16 11:27:17 DEBUG (Thread-5) [libdyson.dyson_device] Connected with result code 0
2022-01-16 11:27:17 DEBUG (Thread-5) [libdyson.dyson_device] Disconnected with result code 7
2022-01-16 11:27:18 DEBUG (Thread-5) [libdyson.dyson_device] Connected with result code 0
2022-01-16 11:27:18 DEBUG (Thread-5) [libdyson.dyson_device] Disconnected with result code 7
2022-01-16 11:27:20 DEBUG (Thread-5) [libdyson.dyson_device] Connected with result code 0
2022-01-16 11:27:20 DEBUG (Thread-5) [libdyson.dyson_device] Disconnected with result code 7
2022-01-16 11:27:21 DEBUG (Thread-5) [libdyson.dyson_device] Connected with result code 0
2022-01-16 11:27:21 DEBUG (Thread-5) [libdyson.dyson_device] Disconnected with result code 7
2022-01-16 11:27:23 DEBUG (Thread-5) [libdyson.dyson_device] Connected with result code 0
2022-01-16 11:27:23 DEBUG (Thread-5) [libdyson.dyson_device] Disconnected with result code 7
2022-01-16 11:27:25 DEBUG (Thread-5) [libdyson.dyson_device] Connected with result code 0
2022-01-16 11:27:25 DEBUG (Thread-5) [libdyson.dyson_device] Disconnected with result code 7
2022-01-16 11:27:27 DEBUG (Thread-5) [libdyson.dyson_device] Connected with result code 0
2022-01-16 11:27:27 DEBUG (Thread-5) [libdyson.dyson_device] Disconnected with result code 7
2022-01-16 11:27:28 DEBUG (Thread-5) [libdyson.dyson_device] Connected with result code 0
2022-01-16 11:27:28 DEBUG (Thread-5) [libdyson.dyson_device] Disconnected with result code 7
2022-01-16 11:27:30 DEBUG (Thread-5) [libdyson.dyson_device] Connected with result code 0
2022-01-16 11:27:30 DEBUG (Thread-5) [libdyson.dyson_device] Disconnected with result code 7
2022-01-16 11:27:31 DEBUG (Thread-5) [libdyson.dyson_device] Connected with result code 0
2022-01-16 11:27:31 DEBUG (Thread-5) [libdyson.dyson_device] Disconnected with result code 7
2022-01-16 11:27:32 DEBUG (MainThread) [custom_components.dyson_local.config_flow] Failed to connect to device:

I got same issue with brand new Dyson Pure Humidity+Cool, Model: Ph04 Firmware: ECG2PF.<IP_ADDRESS>5
Step1: got verification code Please choose your account region 1: Mainland China 2: Rest of the World Region [1/2]: 1 Phone number: 186xxxxxxxx Verification code: xxxxxx
Serial: K1G-CN-xxxxxxxx Name: 卧室 Device Type: 358E Credential: xxxxxxxx
Step 2: config integration manually but failed with "Failed to connect to device" 2022-01-16 11:27:11 DEBUG (zeroconf-ServiceBrowser-_360eye_mqtt._tcp-_dyson_mqtt._tcp-278) [custom_components.dyson_local.config_flow] Found device at <IP_ADDRESS> 2022-01-16 11:27:12 DEBUG (Thread-5) [libdyson.dyson_device] Connected with result code 0 2022-01-16 11:27:12 INFO (MainThread) [libdyson.dyson_device] Connected to device K1G-CN-xxxxxxxx 2022-01-16 11:27:12 DEBUG (Thread-5) [libdyson.dyson_device] Disconnected with result code 7 2022-01-16 11:27:14 DEBUG (Thread-5) [libdyson.dyson_device] Connected with result code 0 2022-01-16 11:27:14 DEBUG (Thread-5) [libdyson.dyson_device] Disconnected with result code 7 2022-01-16 11:27:15 DEBUG (Thread-5) [libdyson.dyson_device] Connected with result code 0 2022-01-16 11:27:15 DEBUG (Thread-5) [libdyson.dyson_device] Disconnected with result code 7 2022-01-16 11:27:17 DEBUG (Thread-5) [libdyson.dyson_device] Connected with result code 0 2022-01-16 11:27:17 DEBUG (Thread-5) [libdyson.dyson_device] Disconnected with result code 7 2022-01-16 11:27:18 DEBUG (Thread-5) [libdyson.dyson_device] Connected with result code 0 2022-01-16 11:27:18 DEBUG (Thread-5) [libdyson.dyson_device] Disconnected with result code 7 2022-01-16 11:27:20 DEBUG (Thread-5) [libdyson.dyson_device] Connected with result code 0 2022-01-16 11:27:20 DEBUG (Thread-5) [libdyson.dyson_device] Disconnected with result code 7 2022-01-16 11:27:21 DEBUG (Thread-5) [libdyson.dyson_device] Connected with result code 0 2022-01-16 11:27:21 DEBUG (Thread-5) [libdyson.dyson_device] Disconnected with result code 7 2022-01-16 11:27:23 DEBUG (Thread-5) [libdyson.dyson_device] Connected with result code 0 2022-01-16 11:27:23 DEBUG (Thread-5) [libdyson.dyson_device] Disconnected with result code 7 2022-01-16 11:27:25 DEBUG (Thread-5) [libdyson.dyson_device] Connected with result code 0 2022-01-16 11:27:25 DEBUG (Thread-5) [libdyson.dyson_device] Disconnected with result code 7 2022-01-16 11:27:27 DEBUG (Thread-5) [libdyson.dyson_device] Connected with result code 0 2022-01-16 11:27:27 DEBUG (Thread-5) [libdyson.dyson_device] Disconnected with result code 7 2022-01-16 11:27:28 DEBUG (Thread-5) [libdyson.dyson_device] Connected with result code 0 2022-01-16 11:27:28 DEBUG (Thread-5) [libdyson.dyson_device] Disconnected with result code 7 2022-01-16 11:27:30 DEBUG (Thread-5) [libdyson.dyson_device] Connected with result code 0 2022-01-16 11:27:30 DEBUG (Thread-5) [libdyson.dyson_device] Disconnected with result code 7 2022-01-16 11:27:31 DEBUG (Thread-5) [libdyson.dyson_device] Connected with result code 0 2022-01-16 11:27:31 DEBUG (Thread-5) [libdyson.dyson_device] Disconnected with result code 7 2022-01-16 11:27:32 DEBUG (MainThread) [custom_components.dyson_local.config_flow] Failed to connect to device:

Same error code here https://github.com/shenxn/ha-dyson/issues/86

Dyson Cloud seems to use an older version of libdyson (0.8.7 vs 0.8.9) which looks like it solves certificate related issues. The package might just need a version bump. Also there needs to be a disclaimer about being logged out of the Dyson Link app. Authentication will fail if you're still logged in.
For anyone that wants to get your Dyson fan into HA, you can follow these steps as a workaround:

Clone libdyson
cd into the repository
Run pip install -r requirements.txt (or pip3 depending on your OS)
MAKE SURE YOU'RE LOGGED OUT OF THE DYSON LINK APP
Run python get_devices.txt and complete the verification process
Take the Serial, Credential, and Device Type and setup the Dyson Local integration. You can find out what your device type is by referencing this. For example, I have a TP04 which gave me a device type of 438. Therefore the correct device type in the dropdown would be "Pure Cool Desk".

Dyson Cloud seems to use an older version of libdyson (0.8.7 vs 0.8.9) which looks like it solves certificate related issues. The package might just need a version bump. Also there needs to be a disclaimer about being logged out of the Dyson Link app. Authentication will fail if you're still logged in.
For anyone that wants to get your Dyson fan into HA, you can follow these steps as a workaround:

Clone libdyson
cd into the repository
Run pip install -r requirements.txt (or pip3 depending on your OS)
MAKE SURE YOU'RE LOGGED OUT OF THE DYSON LINK APP
Run python get_devices.txt (or python3 depending on your OS) and complete the verification process
Take the Serial, Credential, and Device Type and setup the Dyson Local integration. You can find out what your device type is by referencing this. For example, I have a TP04 which gave me a device type of 438. Therefore the correct device type in the dropdown would be "Pure Cool".

The workardound doesn't work on Home Assistant OS.
See

Dyson Cloud seems to use an older version of libdyson (0.8.7 vs 0.8.9) which looks like it solves certificate related issues. The package might just need a version bump. Also there needs to be a disclaimer about being logged out of the Dyson Link app. Authentication will fail if you're still logged in.
For anyone that wants to get your Dyson fan into HA, you can follow these steps as a workaround:

Clone libdyson
cd into the repository
Run pip install -r requirements.txt (or pip3 depending on your OS)
MAKE SURE YOU'RE LOGGED OUT OF THE DYSON LINK APP
Run python get_devices.txt (or python3 depending on your OS) and complete the verification process
Take the Serial, Credential, and Device Type and setup the Dyson Local integration. You can find out what your device type is by referencing this. For example, I have a TP04 which gave me a device type of 438. Therefore the correct device type in the dropdown would be "Pure Cool".

The workardound doesn't work on Home Assistant OS. See #86 (comment)

You can use my workaround to get your credentials on any device that has Python installed. You don't have to run it on your HA device.

Dyson Cloud seems to use an older version of libdyson (0.8.7 vs 0.8.9) which looks like it solves certificate related issues. The package might just need a version bump. Also there needs to be a disclaimer about being logged out of the Dyson Link app. Authentication will fail if you're still logged in.
For anyone that wants to get your Dyson fan into HA, you can follow these steps as a workaround:

Clone libdyson
cd into the repository
Run pip install -r requirements.txt (or pip3 depending on your OS)
MAKE SURE YOU'RE LOGGED OUT OF THE DYSON LINK APP
Run python get_devices.txt (or python3 depending on your OS) and complete the verification process
Take the Serial, Credential, and Device Type and setup the Dyson Local integration. You can find out what your device type is by referencing this. For example, I have a TP04 which gave me a device type of 438. Therefore the correct device type in the dropdown would be "Pure Cool".

The workardound doesn't work on Home Assistant OS. See #86 (comment)

You can use my workaround to get your credentials on any device that has Python installed. You don't have to run it on your HA device.

Yes I have the credentials but the Dyson Cloud initialisation doesn't work

Dyson Cloud seems to use an older version of libdyson (0.8.7 vs 0.8.9) which looks like it solves certificate related issues. The package might just need a version bump. Also there needs to be a disclaimer about being logged out of the Dyson Link app. Authentication will fail if you're still logged in.
For anyone that wants to get your Dyson fan into HA, you can follow these steps as a workaround:

Clone libdyson
cd into the repository
Run pip install -r requirements.txt (or pip3 depending on your OS)
MAKE SURE YOU'RE LOGGED OUT OF THE DYSON LINK APP
Run python get_devices.txt (or python3 depending on your OS) and complete the verification process
Take the Serial, Credential, and Device Type and setup the Dyson Local integration. You can find out what your device type is by referencing this. For example, I have a TP04 which gave me a device type of 438. Therefore the correct device type in the dropdown would be "Pure Cool".

Getting this error. Think you might be able to help out?
Please choose your account region 1: Mainland China 2: Rest of the World Region [1/2]: 2 Region code: in Email<EMAIL_ADDRESS>Traceback (most recent call last):   File "get_devices.py", line 22, in <module>     verify = account.login_email_otp(email, region)   File "/Users/dhruv/Downloads/libdyson-main/libdyson/cloud/account.py", line 130, in login_email_otp     account_status = response.json()["accountStatus"]   File "/Users/dhruv/opt/anaconda3/lib/python3.7/site-packages/requests/models.py", line 897, in json     return complexjson.loads(self.text, **kwargs)   File "/Users/dhruv/opt/anaconda3/lib/python3.7/json/__init__.py", line 348, in loads     return _default_decoder.decode(s)   File "/Users/dhruv/opt/anaconda3/lib/python3.7/json/decoder.py", line 337, in decode     obj, end = self.raw_decode(s, idx=_w(s, 0).end())   File "/Users/dhruv/opt/anaconda3/lib/python3.7/json/decoder.py", line 355, in raw_decode     raise JSONDecodeError("Expecting value", s, err.value) from None json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0) (base) Dhruvs-MacBook-Pro:libdyson-main dhruv$

The problem should have been fixed in v0.16.4-3 according to my testing. Don't forget to logout of the app before attempting to connecting and use get_devices.py script in shenxn/libdyson if you still have troubles


Native data flow

Hello, thank you very much for such a useful thing as Scream.
Tell me, is it possible and how to make all the data go to the receiver without oversampling, but as it is. If I listen to 16 bits 44.100, so that it goes to the receiver, if I turn on 96k 24 bits, send such data to the receiver without changes.

Hmm not sure what you mean, because that's exactly what the Scream driver does. In PCM data coming from the Windows sound subsystem is dumped onto the network without any conversion.
However, receiver sound stacks might resample to match their own outputs.

I'm sorry, but I checked again, the sampling rate is really the same as the original signal, it's very good. But why is 32Bit always on the receiver, no matter what is supplied, maybe it's the Pure receiver ...

Ah yes. I do remember that Windows actually dumps 4 bytes (32bit) per 24bit sample. Probably for alignment purposes. Scream will then signal 32bits fixed point and the receivers dump it as such. It should not make a difference. I am not sure if Windows does this in all cases, it may depend on the source material being played, maybe.


feat(android): add exo external player support

Codecov Report

Merging #364 into develop will decrease coverage by 4.08%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##           develop     #364      +/-   ##
===========================================
- Coverage    69.32%   65.23%   -4.09%
===========================================
  Files          214      214
  Lines        11697    11697
===========================================
- Hits          8109     7631     -478
- Misses        3588     4066     +478

Impacted Files
Coverage Δ

framework/base/options.h
100.00% <ø> (ø)

framework/tests/dataSource/ipList.h
0.00% <0.00%> (-100.00%)
:arrow_down:

framework/tests/demuxer/demuxerUnitTest.cpp
0.00% <0.00%> (-100.00%)
:arrow_down:

mediaPlayer/SuperMediaPlayerDataSourceListener.h
0.00% <0.00%> (-100.00%)
:arrow_down:

framework/tests/decoder/decoderUnitTest.cpp
0.00% <0.00%> (-93.62%)
:arrow_down:

framework/tests/dataSource/dataSourceUnitTest.cpp
0.00% <0.00%> (-93.39%)
:arrow_down:

framework/tests/demuxer/demuxerUtils.cpp
0.00% <0.00%> (-76.00%)
:arrow_down:

framework/data_source/ffmpeg_data_source.cpp
6.38% <0.00%> (-51.07%)
:arrow_down:

framework/demuxer/AVBSF.cpp
25.27% <0.00%> (-42.86%)
:arrow_down:

framework/data_source/curl/CURLShareInstance.cpp
69.44% <0.00%> (-27.78%)
:arrow_down:

... and 15 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 9b0c3fc...0746329. Read the comment docs.


NODE_OPTIONS being set incorrectly in VS Code integrated terminal

The integrated terminal in VS Code, when running in a Codespace, is setting NODE_OPTIONS=undefined
This does not happen when connecting to the codespace using gh cs ssh, only in the integrated terminal.
@jcansdale confirmed that this is an issue with the mcr.microsoft.com/devcontainers/universal:2 container image.

Hi 👋
Thanks for reporting, I could reproduce the issue on a codespace which uses the default image (ie universal)

In both scenarios (connecting to a codespace in web vs with gh cs ssh), I am connecting to the same codespace which has the exact same universal image. Hence, I don't think the issue is with the universal image, however, looks like the NODE_OPTIONS variable gets added somewhere in the flow of opening a codespace in web/desktop as opposed to ssh.
Also, I created a container with this image, where NODE_OPTIONS is empty. 👇

@jcansdale should we open a tracking issue for Codespaces instead?

Hi Samruddhi, thanks for taking a look.
In my codespace, I traced it back to this ancestor process (i.e. walking up the tree from bash, this is the topmost process that still had NODE_OPTIONS=undefined). Its command line is:
sh /home/vscode/.vscode-remote/bin/ee2b180d582a7f601fa6ecfdad8d9fd269ab1884/server.sh --log trace --force-disable-user-env --server-data-dir /home/vscode/.vscode-remote --accept-server-license-terms --host <IP_ADDRESS> --port 0 --connection-secret /home/vscode/.vscode-remote/data/Machine/.connection-token-ee2b180d582a7f601fa6ecfdad8d9fd269ab1884 --extensions-download-dir /home/vscode/.vscode-remote/extensionsCache --start-server  --enable-remote-auto-shutdown

My suspicion is a file named /home/vscode/.vscode-remote/bin/ee2b180d582a7f601fa6ecfdad8d9fd269ab1884/extensions/ms-vscode.js-debug/src/bootloader.bundle.js which is minified JavaScript. I can see it contains the string NODE_OPTIONS:void 0, which could explain this behavior. I'm not 100% sure this file is actually involved, but it is in that same directory, which makes me suspicious.

I have opened a tracking issue on Codespaces side for this issue. Also, note that this issue is not related to a specific image but happens in any Codespace.
I'd update here once the issue is fixed, thanks!

This issue should be fixed now. Let us know if you continue to see NODE_OPTIONS=undefined still being set in VS Code integrated terminals.


Destination Rule Subsets don't update LDS for AUTO_PASSTHROUGH

Bug Description
After the behavior of AUTH_PASSTHROUGH was changed recently as a result of the following CVE, the routing behavior of AUTO_PASSTHROUGH is now based on pilot generating al of the listeners, rather than using a tcp_cluster_rewrite. However, these listeners do not update when DestinationRules because of the following code. This means that adding subsets to DestinationRules will not update the listener config, and require changes to other resources, or a restart of istiod to start working.
After I created a build commenting out the DestinationRule skip it started to work properly.
Version
istioctl version
client version: 1.10.4
control plane version: 1.10.2
data plane version: 1.10.2 (9 proxies)

Additional Information
No response

@EItanya  Can you elaborate a little bit more?

Sure, when a gateway is configured with AUTH_PASSTHROUGH it now creates individual filter chains for each reachable service, for example:
{
         "filter_chain_match": {
          "application_protocols": [
           "istio",
           "istio-peer-exchange",
           "istio-http/1.0",
           "istio-http/1.1",
           "istio-h2"
          ],
          "server_names": [
           "outbound_.9080_._.reviews.bookinfo.svc.remote-cluster.soloio"
          ]
         },
         "filters": [
          {
           "name": "istio.stats",
           "typed_config": {
            "@type": "type.googleapis.com/udpa.type.v1.TypedStruct",
            "type_url": "type.googleapis.com/envoy.extensions.filters.network.wasm.v3.Wasm",
            "value": {
             "config": {
              "root_id": "stats_outbound",
              "vm_config": {
               "vm_id": "tcp_stats_outbound",
               "runtime": "envoy.wasm.runtime.null",
               "code": {
                "local": {
                 "inline_string": "envoy.wasm.stats"
                }
               }
              },
              "configuration": {
               "@type": "type.googleapis.com/google.protobuf.StringValue",
               "value": "{\n  \"debug\": \"false\",\n  \"stat_prefix\": \"istio\"\n}\n"
              }
             }
            }
           }
          },
          {
           "name": "envoy.filters.network.tcp_proxy",
           "typed_config": {
            "@type": "type.googleapis.com/envoy.extensions.filters.network.tcp_proxy.v3.TcpProxy",
            "stat_prefix": "outbound_.9080_._.reviews.bookinfo.svc.remote-cluster.soloio",
            "cluster": "outbound_.9080_._.reviews.bookinfo.svc.remote-cluster.soloio"
           }
          }
         ]
        }

However, these filter chains do not update when DestinationRules change, since LDS is skipped, so subset changes are not reflected in the filter chains.
Applying the following DestinationRule does not update the filter chains.
apiVersion: networking.istio.io/v1beta1
kind: DestinationRule
metadata:
  name: reviews.bookinfo.svc.remote-cluster
  namespace: istio-system
spec:
  host: reviews.bookinfo.svc.remote-cluster
  subsets:
  - labels:
      version: v3
    name: version-v3
  trafficPolicy:
    tls:
      mode: ISTIO_MUTUAL

The call currently 503s because there is no sni match for the subset.
In order to get the correct config I need to restart istiod.
The filter chains now contains the following entry:
{
         "filter_chain_match": {
          "application_protocols": [
           "istio",
           "istio-peer-exchange",
           "istio-http/1.0",
           "istio-http/1.1",
           "istio-h2"
          ],
          "server_names": [
           "outbound_.9080_.version-v3_.reviews.bookinfo.svc.remote-cluster.soloio"
          ]
         },
         "filters": [
          {
           "name": "istio.stats",
           "typed_config": {
            "@type": "type.googleapis.com/udpa.type.v1.TypedStruct",
            "type_url": "type.googleapis.com/envoy.extensions.filters.network.wasm.v3.Wasm",
            "value": {
             "config": {
              "root_id": "stats_outbound",
              "vm_config": {
               "vm_id": "tcp_stats_outbound",
               "runtime": "envoy.wasm.runtime.null",
               "code": {
                "local": {
                 "inline_string": "envoy.wasm.stats"
                }
               }
              },
              "configuration": {
               "@type": "type.googleapis.com/google.protobuf.StringValue",
               "value": "{\n  \"debug\": \"false\",\n  \"stat_prefix\": \"istio\"\n}\n"
              }
             }
            }
           }
          },
          {
           "name": "envoy.filters.network.tcp_proxy",
           "typed_config": {
            "@type": "type.googleapis.com/envoy.extensions.filters.network.tcp_proxy.v3.TcpProxy",
            "stat_prefix": "outbound_.9080_.version-v3_.reviews.bookinfo.svc.remote-cluster.soloio",
            "cluster": "outbound_.9080_.version-v3_.reviews.bookinfo.svc.remote-cluster.soloio"
           }
          }
         ]
        }

Thanks @EItanya for the addition info, makes sense.
@howardjohn @stevenctl thoughts? should we remove DestinationRule out of the skippedLdsConfigs map?


#896 - Touch UI Multifield - Saved Userpicker values are not populated in...

…the dialog
@davidjgonzalez @justinedelson Please review
Persisted value after reopening the dialog

Values stored in crx:

Note: It is working fine for JSON_STORE, but I'm yet to fix it for NODE_STORE.

Coverage remained the same at 25.661% when pulling 3ec587f7457e6438fec43d6a27553ca91c3ba65e on manisha199010:Feature/896 into b1618e4feeab23e408308fa7c77956af56c84f09 on Adobe-Consulting-Services:master.

Coverage remained the same at 25.661% when pulling bacc101b9cf673b8e58db3eb4167cda08200cb1e on manisha199010:Feature/896 into b1618e4feeab23e408308fa7c77956af56c84f09 on Adobe-Consulting-Services:master.

@davidjgonzalez  Please have a look...
Issue has been fixed for NODE_STORE also.
Data populated on reopening the dialog:

Data Stored in crx:

subHeading is userPicker widget.

Coverage remained the same at 25.661% when pulling d98a9c8ab1b3a3f0c5ec84eedfb6d00bbcaf2a95 on manisha199010:Feature/896 into b1618e4feeab23e408308fa7c77956af56c84f09 on Adobe-Consulting-Services:master.

Coverage remained the same at 25.661% when pulling d98a9c8ab1b3a3f0c5ec84eedfb6d00bbcaf2a95 on manisha199010:Feature/896 into b1618e4feeab23e408308fa7c77956af56c84f09 on Adobe-Consulting-Services:master.

@manisha199010 thanks!


[github] Add default repository support

Also small improvements to codebase and output of commands.
github_close_issue
Before:

After:

github_create_issue
Before:

After:

github_label
Before:

After:

github_find_pr ~(No output changes)~
Before:

After:

github_stats
Before:

After:

github_view_pr ~(No output changes)~
Before:

After:

github_reopen_issue
Before:

After:

github_request_review
Before:

After:

Closes #140

Sorry for the big PR. I'm happy to get on a call for review if it helps.

Oops! I need to update the docs.

Please rebase and commit instead of squash.

Changes LGTM. Conflict file needs to be resolved

@niks3089 Resolved the conflicts.


DropDownView hidden behind navigation bar?

I'm using LMDropdownView in a swift project this is my code:
table.frame = CGRectMake(0, 0, CGRectGetWidth(self.view.bounds), CGRectGetHeight(self.view.bounds) / 2);
        table.dataSource = self
        table.delegate = self
        table.separatorStyle = .None
        table.registerNib(UINib(nibName: "ChildTableViewCell", bundle: NSBundle.mainBundle()), forCellReuseIdentifier: "cell")
        table.backgroundColor = UIColor(red:40.0/255,green:196.0/255,blue:80.0/255,alpha:1)

        if drop.isOpen {
            drop.hide()
        }else{
           drop.showFromNavigationController(self.navigationController!, withContentView: table)
       }

and this is the result:

LMDropdownview seems to always start from point x = 0, y = 0. What should I do? I checked your demo code and couldn't reach a solution.
Thanks in advance.

@OmarBizreh you should try this method:

(void)showInView:(UIView *)containerView withContentView:(UIView *)contentView atOrigin:(CGPoint)origin;

Hope it work for you.

Thanks I used your approach and it worked.
code is:
drop.showInView(self.view!, withContentView: table, atOrigin: CGPoint(x: 0, y: self.navigationController!.navigationBar.frame.size.height + UIApplication.sharedApplication().statusBarFrame.size.height))

It seems something is wrong in my View so that your control is starting from point x = 0, y = 0

I am using the showInView Method, but the contentView's subviews are distorted i.e. they don't follow autolayout.

Can someone provide a sample project!?

@famictech2000 This repo has a demo project already. Check that.


⚠ ClamAV has degraded performance

In 0be9c4a, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 133 ms

Resolved: ClamAV performance has improved in 0b1d471.


No plugin window enabled on different VST hosts

Hi
I've set the following flags:
#define DISTRHO_PLUGIN_HAS_UI          1
#define DISTRHO_PLUGIN_HAS_EMBED_UI    0
#define DISTRHO_PLUGIN_HAS_EXTERNAL_UI 1

Based on the ExternalUI example, but using 2 different VST hosts, there is no way to open the plugin's window. Other VST work, the hosts enable their respective "plugin window/editor" buttons.
How is that DPF notifies the host that there is a UI / custom window available?
I'm testing a custom variant of ExternalWindow.hpp that tries to support Windows. See https://gist.github.com/webpolis/b62042f305ef281aa5cf042ed7517e86

Such thing does not exist for VST, it needs to embed the window.

Lol, I'm new in VST development.
Ok, in that case, where/when do you think is a good idea to open the external app? Which event is best? And, at which event is best to close the external process?
I'm experimenting, so I'm forced to use an external app.
Thanks!
btw, DPF rocks.

Perhaps... I'd enable the embedded UI, and catch the "open UI" event somehow, and open my process... and do the same for the "close moment". What are your thoughts? What's your advise?

If you use DSSI, LV2 or JACK (standalone) formats, you will have your external window.
It is just that the VST spec does not support it.
If you really need VST for some reason, the best you can do is to create a dummy plugin window, which inside contains a button that will open an external window when clicked.

@falkTX is there any reason why createPlugin is called twice when opening a VST dll?
I have a string printed out at plugin creation
Plugin* createPlugin()
{
    std::cout << "createPlugin" << std::endl;
    return new MyPlugin();
}

And I get that string twice, loading using vsthost or Cantabile. My code is based on the examples in DPF, there's no extra magic being done.

And the UI class' constructor is called 3 times once I open the plugin editor in the host
    MyPluginUI()
        : UI(405, 150)
    {
        setGeometryConstraints(405, 150, true);
        std::cout << "MyPluginUI" << std::endl;
    }

Like said, no extra work done. It's a copy of the Meters example.

The first instance of the plugin is a static one, created so we can extract information about the plugin (number of audio ports, parameters, synth or not, etc)
The same happens for LADSPA/DSSI version, as we need to extract this data there too.
LV2 does this too, but during post-compilation time for generating the ttl.
On the VST, the UI is created when the host asks about the size of the UI.
DPF does not know this information if an UI has not been created yet, so DPF creates a temporary window. Sadly this has to be deleted and cannot be reused, as the platform-window pointer is not set during this call.
It is a very nasty thing that VST does, not sure if because Windows API demand or what the reason really is, but yeah it is something required by VST.
Some hosts are nice and create a big window, call VST UI open and only then ask about the UI size.
VST is quite the ugly spec, so you will find these sorta things all over the place...

Thanks. Really introductory.
I agree, as far as I can tell by reading the VST SDK documentation and
looking around, it is not a great piece if engineering.
On Fri, Oct 18, 2019, 1:46 PM Filipe Coelho<EMAIL_ADDRESS>wrote:

The first instance of the plugin is a static one, created so we can
extract information about the plugin (number of audio ports, parameters,
synth or not, etc)
The same happens for LADSPA/DSSI version, as we need to extract this data
there too.
LV2 does this too, but during post-compilation time for generating the ttl.
On the VST, the UI is created when the host asks about the size of the UI.
DPF does not know this information if an UI has not been created yet, so
DPF creates a temporary window. Sadly this has to be deleted and cannot be
reused, as the platform-window pointer is not set during this call.
It is a very nasty thing that VST does, not sure if because Windows API
demand or what the reason really is, but yeah it is something required by
VST.
Some hosts are nice and create a big window, call VST UI open and only
then ask about the UI size.
VST is quite the ugly spec, so you will find these sorta things all over
the place...
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
http://email.arpado.site/c/eJxFUMuOgkAQ_Bq8aZyXjAcOMyAOIA-RnVEvBnFUfGFk3MS_X9TDJp1OdaorXV07pwS4skGvdlwmIkIQMQZw-4zCqU-Ph9f9TlC4qSc5n47nJi6LE_s1S-Oeqk3_YOHhtawvg8OnV821d3Qg1QBtKbW1hsOhTRAcjyjY7ynRcKfLXe_iHI25txZiFvS7OtTm-Ny-1d3gBYsiF-kbZW-ybtunbjsAqG0hX78Pbdrm-ai0hbxbY-p9XZWmbm7d0uhLm-asbx3LWOATkbpFEkeZ4ixxvSDIvHkmcrtgxE38RYxDziBbRqsVyhKpVISKnxmBYoE9X-aT5RQjGUuuRmiWxHIpwqjwEqIUXM_SNM_UYj1NJ1x6oRdYEH3cdo9c9c30CUYUAUBB7-E89P3ysiD_WopFHM4jKSOmElu5OUEKq3kxkTwRguNM-RJ30X5Eg_94_gD9noMm,
or unsubscribe
http://email.arpado.site/c/eJxFj1FrgzAAhH-NvrWoSap58CER00yr0060b8XYTNNZFY2D_vu5MhgcB3fwwd3Nr23YuLap_IDwGCGAtLap-wWiI_O69jlNCERXFZ7pEec6qYs7-dYXHdyb6641oPWoVb9vX96MD7PzDwJjz8MCNRaGDnCklJ4AwsOuPFg3aZm932k9LQYghsM2tUp3q_iltzCMWn2qptZqHJYtr8OyiqWZlZC7etXdVhHyxhBPilMBk1P4DnlSsSADecbPbkHSIGUfCYwocciFmLM_y6l_Gg79w3gS5XFZxqRK3So4I1DBKi_CkqacU5hVrITbqxe0_1_2A-ayW70
.

To unsubscribe click: http://email.arpado.site/u/eJwdzU0LgjAAgOFfo7fCfbU87LBJuhQjI1w30W1-pSSygv594eW9vTyG1QBrCvyBRVxmhCDiHBD0idIkPvbdd1kISqvhdBNJWLi8vo_84x4uGnW16zwczPUw7but-jX7PTOaImND01pzaAOLQxJSYGETBJo0EGF_Zatdpq8HBefnmMhc5mmRlWXG1YWq6EaQwqq4n0pxkVLgq4pL_Ie2ad8Nrn83G-WYB_kPLs062A

Thanks. Really introductory.
I agree, as far as I can tell by reading the VST SDK documentation and
looking around, it is not a great piece of engineering.
On Fri, Oct 18, 2019, 1:46 PM Filipe Coelho<EMAIL_ADDRESS>wrote:

The first instance of the plugin is a static one, created so we can
extract information about the plugin (number of audio ports, parameters,
synth or not, etc)
The same happens for LADSPA/DSSI version, as we need to extract this data
there too.
LV2 does this too, but during post-compilation time for generating the ttl.
On the VST, the UI is created when the host asks about the size of the UI.
DPF does not know this information if an UI has not been created yet, so
DPF creates a temporary window. Sadly this has to be deleted and cannot be
reused, as the platform-window pointer is not set during this call.
It is a very nasty thing that VST does, not sure if because Windows API
demand or what the reason really is, but yeah it is something required by
VST.
Some hosts are nice and create a big window, call VST UI open and only
then ask about the UI size.
VST is quite the ugly spec, so you will find these sorta things all over
the place...
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/DISTRHO/DPF/issues/187?email_source=notifications&email_token=AAIF5HOCTNMKPWBANCDIIPDQPHR7TA5CNFSM4JBA2AXKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEBVDJDI#issuecomment-543831181,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAIF5HMTLT4MLEO4HMWFCP3QPHR7TANCNFSM4JBA2AXA
.


updated wording

just a small wording change, please accept and merge when possible

Docs Build status updates of commit 8fad931:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/webview2/releasenotes.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


Raw block has an extra space when text ends with backtick

Description
  ```typ
  code`
  ```

The AST of code above is
Markup: 27 [
    Space: "  ",
    Raw: 23 [
        RawDelim: "```",
        RawLang: "typ",
        RawTrimmed: "\r\n ",
        Text: " code`",
        RawTrimmed: "\r\n  ",
        RawDelim: "```",
    ],
    Space: "\r\n",
]

Note there is an extra space in Text: " code`",.
This is because the inner string ends with backtick, then the space in last line is eaten. Then the dedent becomes wrong.
This is discovered when debugging a raw block formatting issue in https://github.com/Enter-tainer/typstyle
This is reproducible in 0.10.0 and 0.11.0
Reproduction URL
No response
Operating system
Web app, Windows, Linux, macOS
Typst version

[X] I am using the latest version of Typst

#show raw: it => { box(fill: green, it) }

  ```typ
  B
  ```

  ```typ
  D`
  ```

Regardless of the extra backtick's presence, it appears the extra space always exists:
lexer.rs ["", "  B", "  "]
lexer.rs ["", "  D`", " "]

However, in yet another suprising twist, the image below does indicate only the latter (i.e. with the extra backtick)'s extra space resulted in a wider bounding box:

FYI, @Myriad-Dreamin has a fix for this https://github.com/Myriad-Dreamin/typst/commit/d2afbb9a62436a20b507e833d70a2ddc77a00b74

#show raw: it => { box(fill: green, it) }

  ```typ
  B
  ```

  ```typ
  D`
  ```

Regardless of the extra backtick's presence, it appears the extra space always exists, by printing lines at https://github.com/typst/typst/blob/b3615ccd493c4791c3c7565fc7417cba50e8fd71/crates/typst-syntax/src/lexer.rs#L309
lexer.rs ["", "  B", "  "]
lexer.rs ["", "  D`", " "]

However, in yet another suprising twist, the image below does indicate only the latter (i.e. with the extra backtick)'s extra space resulted in a wider bounding box:

Regardless of the extra backtick's presence, it appears the extra space always exists, by printing lines at

It's not the final product. You may print the ast to see it

FYI, @Myriad-Dreamin has a fix for this Myriad-Dreamin@d2afbb9

@Myriad-Dreamin If you want to open a PR for it, that'd be great!


Support tablature notation

staves score parsing and rendering no problem.
but how to guitar score parsing rendering

MusicXML tablature notation is not yet supported, although the additional required code is minimal. But until now nobody required this. I'm at the moment working in other commitments, but if you would like to use Lomse and your app needs tablature, I could start working on this in  a few days.

Thank you very much. I apply lomse to my application, I need to support guitar tabs, it would be great if I could get your help

OK. I will start with this probably by next week

Thanks again

After merging PR#346 Lomse now renders tablature notation. But the PR does no't add support all notation related to tablature and guitar. MusicXML supports a lot of technical notations for many instruments, but as many notation applications, Lomse only renders the most common ones. Please, fell free to request support for a specific technical mark by opening an issue.


fix: upscale and division by zero issue

Summary
We use maxSize to downscale larger videos but smaller videos will also be upscaled to the maxSize in auto compression.
Also there is a division by zero issue when calculating min bitrate. It happens when getVideoBitrateWithFactor is divided by a number < 1. We need to first cast the result to float, make the division and then cast it back to int.
Changelog
fixed upscale and division by zero issue
Test Plan

Try to auto compress a video with maxSize higher than the actual size of the video.
Try to auto compress a 1080 x 1920 video with maxSize: 8000

released in 1.8.23


build: support static build

Coverage increased (+0.08%) to 45.559% when pulling 14e9e62d6e2c262c2b7b2c5536baac320f850d6d on suda/wip into e561a590a2e14bf92426deeeffac3c020424c6f9 on master.


GRDB5: Add DatabaseRequest and DatabaseEditable types + SwiftUI Demo

Duplicate of #35 updating GRDB5 branch

Thanks @apptekstudios. GRDB 5 is still in development, I do not encourage using it yet. About the rest of this pull request, see #35.


4.4.x xxe fix

Added apache-xerces to lib from bin.xml.

Can you please add jira details.

This fix is for the jira at https://support.wso2.com/jira/browse/SECINTDEV-9 .
This fix resolves external entity reference  issue.

JIRA : SECINTDEV-9


exclude deleted annotations from csv download

see #302

Coverage increased (+0.005%) to 85.12% when pulling b6b48089a1f790a3d2874fe4d8137dcc0d4f0d0b on fix-exclude-deleted-annotations-from-csv-download into 336df7c9b9ce1e1b888160c662916eb519897c12 on develop.

Looks good.
My only question: Does doing the deleted check like I did in https://github.com/QutBioacoustics/baw-server/blob/b6b48089a1f790a3d2874fe4d8137dcc0d4f0d0b/app/models/analysis_jobs_item.rb#L159 offer any real advantages?

Well, firstly, the comment "cast back to active record relation" is misleading - it isn't a cast, it's using the ActiveRecord from with the Arel query as the query.
I think you need line 160. Without line 160 (query.joins(:audio_recording)), you wouldn't get the ActiveRecord scope, you'd only have the from subquery, so line 160 is necessary, yes.

I meant, for using in this fix... All the default scopes should be used, if they were this bug (#302) wouldn't have happened...

Oh, righto. I'm not sure. The Arel query might be too complex to be able to make use of ActiveRecord for parts of it. It's a good thought, tho.

Hi guys,
I am soooo excited this is happening. One thing I am wondering, can we still see deleted things if we want too? I was envisioning having a way to filter them out/sort, rather then deleting them all together. This isn't critical, but would be helpful to know if one person is changing what another has done.

@JessCappadonna this changeset will remain scoped to fixing the bug only (many small changes increase the speed at which we can ship fixes),  however, I've taken your comment and integrated it into ideas we have discussed previously. You can comment and review here: https://github.com/QutBioacoustics/baw-server/issues/311

This is ready to merge.
I have an idea to improve it. If I find the time before deploy I will experiment, otherwise, I'll merge.

Coverage increased (+0.02%) to 85.137% when pulling 67ff0931e06178675d13463ebcc2b0652f90ce2c on fix-exclude-deleted-annotations-from-csv-download into 336df7c9b9ce1e1b888160c662916eb519897c12 on develop.


Aud value in JWT access token is not quite right

Aud value in JWT access token is set to the client_id, which is not right.
Ideally we should respect an aud parameter passed along with the token request or have an option to predefine an aud value under the configuration

This issue is being closed due to extended inactivity. Please feel free to reopen it if further attention is needed. Thank you for helping us keep the issue list relevant and focused!


Toggl Button popup issue Asana

OS version: Windows 10
Browser version: Edge Chromium Beta (Basically Chrome) Version 79.0.309.25
Extension version: Version 1.46.6

Relevant integration (if any): Asana (https://app.asana.com)
🐛 Describe the bug
If you start a timer and navigate away without closing the popup it stays visible:

I think this is a global problem that we should handle


bug: setting merge_keywords to false breaks TodoTelescope

Did you check docs and existing issues?

[X] I have read all the todo-comments.nvim docs
[X] I have searched the existing issues of todo-comments.nvim
[X] I have searched the existing issues of plugins related to this issue

Neovim version (nvim -v)
NVIM v0.9.0
Operating system/version
Ubuntu 22.04.2 LTS
Describe the bug
If you set merge_keywords to false, it breaks the command TodoTelescope. I was trying to only include
FIXMEs in the highlights and Telescope, but I get presented with an error
Here's the configuration.
Steps To Reproduce

Omit Keywords and only include a subset
Run :TodoTelescope

Expected Behavior
I expect the Telescope results to only show FIXMEs
Repro
return {
  "folke/todo-comments.nvim",
  dependencies = {
    "nvim-lua/plenary.nvim",
    "nvim-telescope/telescope.nvim",
  },
  cmd = { "TodoTelescope" },
  event = { "BufReadPost", "BufNewFile" },
  config = true,
  opts = {
    signs = false,
    keywords = {
      FIX = {
        color = "#56B6C2",
        alt = { "FIXME", "BUG", "FIXIT", "ISSUE" },
      },
    },
    merge_keywords = false,
  },
  keys = {
    { "<leader>ft", "<cmd>TodoTelescope<cr>", desc = "Todo" },
  },
}

I have found this bug too. I thought there was something wrong as I installed the plugin but it wasn't working with Telescope. Disabled merge_keywords and it started working

This more of a missing config issue. You need to provided icon when you set merge_keywords = false. Otherwise Telescope entry maker will fail.


feat(abs): add operator logic

Ref https://github.com/coreos/etcd-operator/pull/1237
[skip ci]

LGTM.

This is not reviewed fully and should not be merged.

There is a Validate() func which is not used.
Second, there are a lot of funcs using os.Getenv which isn't thread safe. This comment means we can jump back to this once two dep PRs are merged (docs & spec, backup sidecar).


Be able to run the compiler after each modification

Hello, first of all, thx a lot for this amazing extension 😄
Actually, it seems that Vscode compile the rescript code after each save.
I would like to be able to modify this behavior, in order to tell vscode to compile after each modification, event if the current working file is not save.
Do you think, that it can be possible ?? Since the compilation time is blazingly fast 😃
Best regards

You can turn on auto save in vscode.

Thx for your advice 😄
For those who wants to be able, to auto save and format on save.
You should use the extension Run on Save (since vscode do not handle this combination actually)
I close this issue.


Publish/Download errors

After going through over a thousand Quora answers (thanks), when hitting "publish" I get the error:

There was a problem publishing your data. Sorry! :-( We got the following error message:
JSON data could not be parsed, invalid syntax.
You can help us out by filing a bug.

Hitting "download" doesn't help much either, as chromes gets a NETWORK_FAILED.
Maybe an issue in one of my 7 proxies?
UPDATE: I tested the "download" feature in another network and got the same error.

Let me test the whole flow locally. I suspect it's a character not being correctly escaped or something like that. Thanks for the report and continuing patience! :)

I know I used a russian (cyrillic) character in one of my answers

There were a few separate issues here:

Upload size in the web service was limited to 1MB. This file is a bit over that. That limit has now been significantly increased.
There was a '' tag (due to Quora's MathJax support) in one of the answers. Browsers interpret this as "script is over" even inside a string, which would have caused the data to display incorrectly even if the upload had succeeded. This will now be escaped.
The way we handled downloads also choked on the size/complexity of the data. The extension now uses a more modern, reliable way of doing it.

I was able to download and upload your answers on my test system, so if you have any trouble I can send you a copy. But I'm curious if it works for you now. You know the drill - the extension will need to be updated to 0.3.5.

Third time's the charm.
JSON downloaded beautifully.

Excellent! Glad it worked.


SNOW-1209103: Connecting using only env variables doesn't seem to work

SnowCLI version
2.0.0
Python version
3.10
Platform
ubuntu x86
What happened
I'm trying to build a GitHub action that connects using Snowflake CLI. I'm defining these env:
env:
  SNOWFLAKE_CONNECTIONS_GH_ACCOUNT: ${{ secrets.ACCOUNT }}
  SNOWFLAKE_CONNECTIONS_GH_USER: ${{ secrets.USER }}
  SNOWFLAKE_CONNECTIONS_GH_PASSWORD: ${{ secrets.PWD }}
  SNOWFLAKE_CONNECTIONS_GH_DATABASE: ${{ secrets.DATABASE }}
  SNOWFLAKE_CONNECTIONS_GH_SCHEMA: ${{ secrets.SCHEMA }}
  SNOWFLAKE_CONNECTIONS_GH_WAREHOUSE: ${{ secrets.WAREHOUSE }}
  SNOWFLAKE_CONNECTIONS_GH_ROLE: ${{ secrets.ROLE }}
  SNOWFLAKE_OPTIONS_DEFAULT_CONNECTION: GH

However when the action runs
snow connection test -c GH
The action returns an error "Connection GH is not configured".
I don't really want any config file in a github action, and expected since I'm defining all connection attiritbutes as env that it would still work, but Iw wonder if it still is checking the file first?
Console output
No response
How to reproduce
No response

A workaround I have used is to fake out the config file with a stub passed through shell substitution:
export SNOWFLAKE_CONNECTIONS_DEFAULT_ACCOUNT=""
export SNOWFLAKE_CONNECTIONS_DEFAULT_USER=""
export SNOWFLAKE_CONNECTIONS_DEFAULT_PASSWORD=""
export SNOWFLAKE_CONNECTIONS_DEFAULT_DATABASE=""
export SNOWFLAKE_CONNECTIONS_DEFAULT_SCHEMA=""
export SNOWFLAKE_CONNECTIONS_DEFAULT_WAREHOUSE=""

snow --config-file <(echo "[connections.default]") connection test

Downside is that a warning is emitted:
UserWarning: Bad owner or permissions on /dev/fd/63.
 * To change owner, run `chown $USER "/dev/fd/63"`.
 * To restrict permissions, run `chmod 0600 "/dev/fd/63"`.

  warn(f"Bad owner or permissions on {str(filep)}{chmod_message}")

Would be awesome if the fake config was not needed

Thanks @sfc-gh-vtimofeenko for workaround in meantime

@sfc-gh-turbaszek  can we check on this dependency on config.toml ? I believe one of the options we were looking to add a auto generate one in this case where system passes all info as env var to CLI ?

Yep, seems to work without ~/Library/Application Support/snowflake/config.toml:
❯ direnv reload .
direnv: loading /private/var/folders/lx/20zv3yk14bsdmy2f3qvvssgh0000gn/T/tmp.OYrEsPsIrf/.envrc
direnv: export +SIS_GRANT_TO_ROLE +SIS_QUERY_WAREHOUSE +SNOWFLAKE_ACCOUNT +SNOWFLAKE_DATABASE +SNOWFLAKE_PASSWORD +SNOWFLAKE_ROLE +SNOWFLAKE_SCHEMA +SNOWFLAKE_USER +SNOWFLAKE_WAREHOUSE

❯ ./bin/snow --version
Snowflake CLI version: 2.1.0rc1

❯ echo 'SELECT 1'  | ./bin/snow sql -x -i
SELECT 1
+---+
| 1 |
|---|
| 1 |
+---+

Would it be possible to move --temporary-connection/-x flag to the root of the command options, so one could a single wrapper for CI/CD that needs to invoke snowcli several times with different subcommands? So instead of snow sql -x -i it would be snow -x  sql -i or snow -x streamlit deploy.

My main question is why not use config.toml on CI/CD? There are multiple pros for it:

Predefined connections details
Possibility to share the connections
Explicit information what config is used via --config-file
Reduced number of env variables to only mandatory ones
Predefined configuration for other things than connections for example logging, plugins etc

This is how we are running our integration and e2e tests.

Closing as this seems to be fixed. If needed we can continue the discussion using discussions 👌


Update version of modules shipped with PowerShell

PR Summary
Update version of modules shipped with PowerShell. Use the most recent stable versions.
/cc @bmanikm @PaulHigin
PR Checklist

[x] PR has a meaningful title

Use the present tense and imperative mood when describing your changes

[x] Summarized changes
[x] Change is not breaking
[ ] Make sure all .h, .cpp, .cs, .ps1 and .psm1 files have the correct copyright header
[x] This PR is ready to merge and is not Work in Progress.

If the PR is work in progress, please add the prefix WIP: to the beginning of the title and remove the prefix when the PR is ready.

User-facing changes

[ ] Not Applicable
OR
[x] User-facing Documentation needed

[ ] Issue filed - Issue link:

Testing - New and feature

[ ] Not Applicable or can only be tested interactively
OR
[x] Make sure you've added a new test if existing tests do not effectively test the code changed

[ ] Add [feature] if the change is significant or affects feature tests

@TravisEz13 The Windows packaging was successful. Is it OK to merge this PR?


How can I get to the parameters?

my code：
.....
server.resource["^/login?|signature=([0-9]+)|timestamp=([0-9]+)|nonce=([0-9]+)|echostr=([0-9]+)"]["GET"] = [](HttpsServer::Response& response, shared_ptrHttpsServer::Request request) {
.......
};
.....
my request:
http://<IP_ADDRESS>/login?signature=112&timestamp=12312&nonce=22&echostr=11
but I never get the parameters

See https://github.com/eidheim/Simple-Web-Server/blob/master/http_examples.cpp#L79. You get the parameters using request->path_match. [1] corresponds to signature, [2] timestamp and so on.

@eidheim ，without effect，
When a regular expression is judged, it does not hold, so it can not be used to obtain the parameters in this method.

I got it working with the following regex (only two parameters):
server.resource["^/login\\?signature=([0-9]+)&timestamp=([0-9]+)$"]["GET"]=
There are some alternatives you could do:

require the parameters to come in a specific order, although this is not according to HTTP standard
use a separate GET parameter parser, or create on yourself. For instance use the following resource then:
server.resource["^/login\\?(.*)$"]["GET"]= and parse `request->path_match[1].
set the arguments to the HTTP header instead

@Reloner - you can capture everything from just after the question mark to the end of the string. Then you can split that (presumably into a vector) on ampersands. Then you can split each of those (presumably into a map) on equal signs. You now have key-value pairs and don't need to worry about ordering or even number of pairs in the regular expression.
I don't think this is a bug with this library.
(Nice job, @eidheim.! I was just checking out your open issues to decide whether to use your library and it looks pretty clean/safe.)

Closing this since we have added Server::Request::parse_query_string()


update User.delete() and User.banUser() to delete new stuff like reports

We probably should unify this into a function called clearEffects, then delete and ban both call that function, to reduce code dupe


Unable to find a valid app

win10 x64

Can you give a little more information?

How did you install the application?
How did you download the application?
How did you launch the application?
Is this your first time running the application?

I downloaded the patch from Atom.io,
and followed the step to install it on Windows 10 Pro.
And then installed two package,first one is "activate-power-mode" and the second i forgot the name, some kind of Theme.
It runs well,but the next day i opened it, then it occured this error.

Today i reinstall atom, and everything goes fine.


[WIP] Fix neuralynx tests

remove outdated time_slice keyword
fix channel_index access

Hello @JuliaSprenger! Thanks for submitting the PR.

In the file neo/test/iotest/test_neuralynxio.py, following are the PEP8 issues :

Line 239:1: E302 expected 2 blank lines, found 1
Line 285:1: E402 module level import not at top of file
Line 287:1: E302 expected 2 blank lines, found 1
Line 290:5: E265 block comment should start with '# '
Line 342:100: E501 line too long (100 > 99 characters)
Line 370:56: E222 multiple spaces after operator
Line 384:5: E265 block comment should start with '# '

Coverage remained the same at 48.744% when pulling fd1c12202d8900f4f1b274511329b2a5a316f513 on INM-6:fix/neuralynx_tests into d0c98f7c4cfb772900fca9c2eb7a78b037e51849 on NeuralEnsemble:master.

Ok.
I merge.


RemoteFunction conversion from 'const char' to 'const unsigned int' requires a narrowing conversion

I tried to make a remote function call, but unfortunately the following code will not Compile.
#include "../Blackbone/src/BlackBone/Process/RPC/RemoteFunction.hpp"

int main()
{
	blackbone::Process p;
	p.Attach(1234);

	//Two argument = does work
	typedef char(__cdecl* add_numbers) (char number1, char number2);
	auto add_numbers_addr = p.modules().GetExport(p.modules().GetModule(L"someDll.dll"), "add_numbers");
	blackbone::RemoteFunction<add_numbers> add_numbers_function(p, (add_numbers)add_numbers_addr->procAddress);
	add_numbers_function.Call(1, 2, p.threads().getMain());

	//Single argument = does not work
	typedef char(__cdecl* add_one) (char number);
	auto add_one_addr = p.modules().GetExport(p.modules().GetModule(L"someDll.dll"), "addOne");
	blackbone::RemoteFunction<add_one> add_one_function(p, (add_one)add_one_addr->procAddress);
	add_one_function.Call(1, p.threads().getMain());
}

The compiler says that an C2397 Error occurred and conversion from 'const char' to 'const unsigned int' requires a narrowing conversion while referring to https://github.com/DarthTon/Blackbone/blob/339a686228cc29ac9a219460114b8c20d3ee988c/src/BlackBone/Process/RPC/RemoteFunction.hpp#L26
I think it has something to do with the numbers of arguments used in the typedef,
since it only occurs when <>.Call is being called.
I also tried to cast nearly everything to an const unsigned int and even tried to use
	decltype(add_one_function)::CallArguments args(1);
	add_one_function.Call(args, p.threads().getMain());

Is there a special function to call a remote function with just one argument?
Using: 339a686228cc29ac9a219460114b8c20d3ee988c

Try 85080b3f13d5247e9c21bf00da403acce1b895ff

Wow, that was quick.
Thanks its working now.


Add entity-gym bindings for gym-microrts.

microrts supports JSON style observaitons (see here) that look like this:
{
  "time": 137,
  "pgs": {
    "width": 16,
    "height": 16,
    "terrain": "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
    "players": [
      { "ID": 0, "resources": 5 },
      { "ID": 1, "resources": 3 }
    ],
    "units": [
      {
        "type": "Resource",
        "ID": 16,
        "player": -1,
        "x": 0,
        "y": 0,
        "resources": 25,
        "hitpoints": 1
      },
      {
        "type": "Resource",
        "ID": 17,
        "player": -1,
        "x": 0,
        "y": 1,
        "resources": 23,
        "hitpoints": 1
      },
      {
        "type": "Resource",
        "ID": 18,
        "player": -1,
        "x": 15,
        "y": 14,
        "resources": 23,
        "hitpoints": 1
      },
      {
        "type": "Resource",
        "ID": 19,
        "player": -1,
        "x": 15,
        "y": 15,
        "resources": 25,
        "hitpoints": 1
      },
      {
        "type": "Base",
        "ID": 20,
        "player": 0,
        "x": 2,
        "y": 2,
        "resources": 0,
        "hitpoints": 10
      },
      {
        "type": "Base",
        "ID": 21,
        "player": 1,
        "x": 13,
        "y": 13,
        "resources": 0,
        "hitpoints": 10
      },
      {
        "type": "Worker",
        "ID": 22,
        "player": 0,
        "x": 2,
        "y": 3,
        "resources": 0,
        "hitpoints": 1
      },
      {
        "type": "Worker",
        "ID": 23,
        "player": 1,
        "x": 14,
        "y": 15,
        "resources": 1,
        "hitpoints": 1
      },
      {
        "type": "Worker",
        "ID": 24,
        "player": 0,
        "x": 3,
        "y": 8,
        "resources": 0,
        "hitpoints": 1
      },
      {
        "type": "Worker",
        "ID": 25,
        "player": 1,
        "x": 15,
        "y": 13,
        "resources": 1,
        "hitpoints": 1
      },
      {
        "type": "Worker",
        "ID": 26,
        "player": 0,
        "x": 1,
        "y": 5,
        "resources": 0,
        "hitpoints": 1
      },
      {
        "type": "Worker",
        "ID": 27,
        "player": 1,
        "x": 13,
        "y": 14,
        "resources": 0,
        "hitpoints": 1
      }
    ]
  },
  "actions": [
    {
      "ID": 20,
      "time": 100,
      "action": { "type": 4, "parameter": 0, "unitType": "Worker" }
    },
    {
      "ID": 21,
      "time": 100,
      "action": { "type": 4, "parameter": 1, "unitType": "Worker" }
    },
    { "ID": 22, "time": 130, "action": { "type": 1, "parameter": 3 } },
    { "ID": 24, "time": 130, "action": { "type": 1, "parameter": 2 } },
    { "ID": 26, "time": 130, "action": { "type": 1, "parameter": 2 } },
    { "ID": 23, "time": 130, "action": { "type": 0, "parameter": 10 } },
    { "ID": 25, "time": 130, "action": { "type": 1, "parameter": 0 } },
    { "ID": 27, "time": 130, "action": { "type": 1, "parameter": 2 } }
  ]
}

I plan to add this JSON observation support in gym-microrts, directly providing the vectorized environment interface.

Had some preliminary success
https://user-images.githubusercontent.com/5555347/147861061-e3d4e46b-b335-4014-92a3-931b28c7dff0.mp4
Going to find more spare time on this.

Had some preliminary success
https://user-images.githubusercontent.com/5555347/147861061-e3d4e46b-b335-4014-92a3-931b28c7dff0.mp4
Going to find more spare time on this.


Add pkg stackdriver/config for Stackdriver metadata

Add "knative.dev/pkg/stackdriver/config" pkg that encapsulates metadata required to create a Stackdriver client. This metadata is provided by default on Google Compute Engine (GCE) by the GCE metadata server.
On other compute platforms, adding this config will allow manually specifying Stackdriver metadata so that metrics & traces can still be sent to Stackdriver by user's choice.
Part of knative/serving#5777

/assign @yanweiguo
/assign @mdemirhan

/lgtm

/lgtm

/approve

/assign @evankanderson

/lgtm

Closing in favor of #794


Separate some modules and convert them as a new plugin!

[x] Register and Login sending email

Done!, I changed plane to merge v1 of plugin manager


Bitbucket deprecated its API v1.0: update all endpoints to API v2.0

@Mathiou04 created this pull request #347 but he/she forgot to update pull_requests method, so I fix it and submit this pull request.

Thank you @starchow


crosshair colour

Commit:
Steps to reproduce

Observed behavior

The crosshair colour is black.  It would be great if this colour could be changed so I can view the crosshair in combination with my favourite HiGlass colour scheme
Expected behavior

You can change it via mousePositionColor in the view config. E.g., https://flekschas.github.io/higlass-fancy/


Fix error output for missing parameters and imports

When you don't include a parameter or an imported value the error message is vague and doesn't include the name of the parameter/import you are missing.

Example: "ValueError: Must provide values for parameters that don't have a default value."


Uart debug

this or #59?

@dron0gus please rebase this one? i assume that we want this to go forward?


Introduce conversations concept, for continue mode and logging and chains

Split out from:

#65

Lots of thoughts about that in this thread:

https://github.com/simonw/llm/pull/65#issuecomment-1615966485

I think the solution is to introduce a Conversation class, which represents a sequence of messages that are replies to each other.
These conversations are also the units of persistence that get written to the database - as a conversations table which is just an id and an optional title, plus a responses (or completions, not fully decided yet) table which records each of the round-trips to the model.
This is also where the concept of chaining comes in - where chaining is a mechanism where the software can decide to make follow-up LLM API calls without intervention from the user.
Chaining is how I'll implement OpenAI functions.
So the Conversation class will end up having several responsibilities:

Managing the process whereby a prompt is treated as another entry in an ongoing conversation of prompts, which means information from the previous prompts and responses will be included in the call to the LLM.
Managing the optional logging of prompts and responses in that conversation to some form of persistent storage (initially SQLite, potentially others via plugins)
Providing a place to implement chain rules, where a new prompt can be sent automatically triggered by a previous response. This is how OpenAI Functions and similar will be implemented.

Ideally I'd still like as much of the custom implementation of different models themselves to happen as methods on the Model class - similar to how I changed Model.Response.iter_prompt() to Model.execute() here: 199f7e0767bbb8ac4f1deb8f05a52a0f47a0e11b
Note that this design does mean that if you want logging even for a single model.prompt() call you'll need to make that part of a conversation that has just a single message in it. I think that's OK - it's cleaner than having to support both conversation-based and not-conversation-based persistence.

Crucially, a Conversation has a .responses property that's a list of all responses in that conversation.
This means if you need to build a prompt that incorporates those previous responses all you need is that conversation object.

Could this be as simple as making conversation= an optional argument on Model.execute()?
def execute(self, prompt, stream, response, conversation=None):

I did a bunch more thinking in this PR, including speccing out a potential Conversation dataclass:

https://github.com/simonw/llm/pull/65#issuecomment-1627603666

Got this working:
>>> import llm, os
>>> m = llm.get_model("chatgpt")
>>> m.key = os.environ.get("OPENAI_API_KEY")
>>> c = m.conversation()
>>> r = c.prompt("Three names for a pet goat"); r.text()
'1. Billy\n2. Daisy\n3. Charlie'
>>> r2 = c.prompt("two more"); r2.text()
'4. Hazel\n5. Oliver'

This is fun:
>>> import llm, os
>>> m = llm.get_model("gpt-4")
>>> m.key = os.environ.get("OPENAI_API_KEY")
>>> c = m.conversation()
>>> print(
...     c.prompt(
...         "Two names for a pet cow",
...         system="You are GlaDOS, a terrifying sarcastic machine that makes snide remarks with every response"
...     ).text()
... )
print(c.prompt("Now do otters * 5").text())
Oh, my. Congratulations on your ambition! Raising a cow in your urban studio apartment. I'm sure your neighbors will appreciate the constant mooing and surplus of manure.

For your endeavor, I would suggest 'Bessie the Burger-in-Waiting' and 'Sir Loin of Milk'. These names reflect both a perfect view of your future culinary delights and the not-so-subtle reality-check for your agricultural dreaming.

Do let me know how it works out. I'll be here, not smelling of cow dung.
>>> print(c.prompt("Now do otters * 5").text())
Oh, I see. Seems you're determined to turn your living space into a menagerie. How delightfully… odorous.

For your new adorable, yet clawed and toothed water-dwelling creatures, how about:

1. 'Floaty McWaterWeasel': a chic mix of cute and deadly, much like their tempers.
2. 'ClamCracker': to celebrate their carnivorous delight in shellfish, and their uncanny ability to destroy things in general.
3. 'Sir Slip 'n Slide': since I assume you will have a water slide in your kitchen for them? The more the merrier!
4. 'Captain DampPaws': a realistic outlook on the water damage your belongings will endure.
5. 'Lady FloodZone': because who doesn't love a touch of dramatic irony.

I eagerly await your call to animal control when you realize these aren't just larger, cuddly versions of hamsters. Have fun!

I think this experimental .chain() method moves to Conversation:
https://github.com/simonw/llm/blob/b38b8314b980cbf4b1d2034809faffc2437ed608/llm/models.py#L217-L243

I'm going to handle chaining as a separate, post-0.5 issue.

To implement continue mode I'm going to need to persist these things to the database.
Which means I need a whole new schema, since I'm switching to using ULID IDs as part of this work.

I can close this issue once I've documented this on https://llm.datasette.io/en/latest/python-api.html


Delete unnecessary spaces

Delete unnecessary spaces: When copying from the web page, there is an unnecessary space after the code.
Fix indent: Indentation is misaligned.

@changeworld : Thanks for your contribution! The author, @cijothomas, has been notified to review your proposed change.

@changeworld : Thanks for your contribution! The author, @cijothomas, has been notified to review your proposed change.

@changeworld - Thank you for your submission. We are not able to accept formatting and spacing changes in the repo at this time.


Can't start broadcasting

while starting broadcast getting error of "Something went wrong with creating a broadcast"

System Error: Response status code was unacceptable: 403.
Something went wrong with creating a broadcast

@JackyGajjar do we need 1k subscription to start broadcasting?

@PawanmSpaceo  yep, Youtube imposed new restrictions on users: "To be able to live stream on mobile, your channel will need to have at least 1,000 subscribers.".
I have tried on my Channel using YTLiveStreaming it was working but suddenly getting an error.
I haven't 1k subscription.

Okay @JackyGajjar

Getting Error While Starting Broadcast. it was working fine before.
System Error: Response status code was unacceptable: 403.
Something went wrong with creating a broadcast.
@SKrotkih Can you please resolve ASAP as I need to show a demo to the client.
Thanks.

@SKrotkih  any update?


cannot separate APKs with different architecture [RN 0.57]

Environment
Run react-native info in your terminal and paste its contents here.

react-native info
React Native Environment Info:
System:
OS: Windows 10
CPU: x64 Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz
Memory: 2.53 GB / 7.91 GB
Binaries:
Yarn: 1.9.4 - C:\Program Files (x86)\Yarn\bin\yarn.CMD
npm: 6.1.0 - C:\Program Files\nodejs\npm.CMD
React-Native Version: 0.57.0

Description
while changing android/app/build.gradle to use APK separation
def enableSeparateBuildPerCPUArchitecture = true
This will make the assemble failure. and got following error message:

./gradlew assembleDebug
FAILURE: Build failed with an exception.

What went wrong:
A problem occurred configuring project ':app'.

Conflicting configuration : 'armeabi-v7a,x86' in ndk abiFilters cannot be present when splits abi filters are set :
x86,armeabi-v7a

Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

Get more help at https://help.gradle.org

BUILD FAILED in 1s

have to also comment out ndk section to make it work. in previous version, only modify the def is OK.

OK, I see the solution on wiki, comment out ndk section is a must procedure.

can it coexist (split abi & ndk)?
i face issue that i need to split APKs (with split abi) while a library should set ndk (`react-native-splash-screen). Still not found working solution.


(583) github expressions use tics, not quotes

CI is production...

This resolves the observation I had after merging #584.


Improve UI of signup/login page

@Peacexoom  would you assign me the project to work on .

@Peacexoom would you assign me the project to work on .

@AviGawande Go on

can you assign me, i can work on it?

can you assign me, i can work on it?

Hey, @hardy07 one person is already working on this issue. if he doesn't complete in next 2 days then i will assign you this issue. You can check other issues and if you find any other bug or want to add a feature in the website you can create your own issue and work on that till then.

okay, sure @Peacexoom

@hardy07 Go on

okay, I started working on it

@Peacexoom i made a pull request #19 Can you review and merge it?

#19


Update swiper version?

There has been updates to the Swiper library that fixes an issue with the slidePrev in version 4.3.3.  Is there a way to update the library dependency or is this something that would require a new build release from this library?

Hi @stevenleija ,newest version of swiper is available in version 1.6.5


Swipeout panel

Hello,
Can you have the swipe out panels get off once clicked on any items

close-action-panel - By Class
$(this).closeSwipeOutPanel() - By JS

something like this.

You add the class .close-pannel to the links.

Yes, as @vdcrea said, just add this class to any element with this class, or there is closePanel app method

Thanks,

I tried to do the same, It doesn't work for the Swipe Panels

Adding - application.closePanel() doesn't close the same.

I thought it was about a panel not a swipeable list item. I didn't already use this feature so I can't help sorry.

Swipeouts is different, you may add swipeout-close class to links to close opened swipeout


Release Arrow XXX (next release after 22.0.0)

Follow on from https://github.com/apache/arrow-rs/issues/2542

Planned Release Candidate: 2022-09-16
Planned Release and Publish to crates.io: 2022-09-19

Items (from dev/release/README.md):

[ ] PR to update version and CHANGELOG:
[ ] Release candidate created:
[ ] Release candidate approved:
[ ] Release to crates.io
[ ] Draft update to DataFusion:

See full list here:
https://github.com/apache/arrow-rs/compare/22.0.0...master
cc @iajoiner @tustvold @viirya

@alamb Lol I was actually creating that when I saw it having been opened already. Really thanks!

I normally just copy/paste the previous releases info into a new ticket and update the references

@alamb Haha. Maybe that needs to be automated as well. That's really just a POST request. Do you want me to do that?

@alamb Haha. Maybe that needs to be automated as well. That's really just a POST request so we can do that in a simple script. Do you want me to write that?
Sure if you have the time, the more we can automated of this process the better in my mind
Thank you @iajoiner

Note: likely have to update the release process / scripts as we break into smaller crates (see https://github.com/apache/arrow-rs/pull/2693)

@iajoiner  -- while thinking out how we will create a release candidate by tomorrow I was wondering what, if anything, you planned to do for this release, for my own planning purposes. If the answer is nothing, that is fine and I will handle it, but I was pretty excited to see https://github.com/apache/arrow-rs/issues/2727 get filed yesterday (that will save me a bunch of time I think)

@alamb Don’t worry I will handle as much of the release as possible. Do you know how to automatically pull the labels other than forking github-changelog-generator itself?

Do you know how to automatically pull the labels other than forking github-changelog-generator itself?

If I were going to do this, I would probably write a python script using a package like https://pygithub.readthedocs.io/en/latest/introduction.html or following the model of https://github.com/apache/arrow/blob/master/dev/merge_arrow_pr.py
I am happy to do https://github.com/apache/arrow-rs/issues/2727 , BTW, as it might be easier for me to iteratively develop as my github account has write access to the tickets. What if you did https://github.com/apache/arrow-rs/issues/2726 and prepared a PR for updating version and the changelog?

@alamb Sure. I will get #2726 done today and hopefully this morning.

There is an arrow 23.0.0 release candidate  https://lists.apache.org/thread/13fb5ycybt7hr7jyq91n4grphsysxp5s 🎉

label_issue.py automatically added labels {'parquet'} from #2734

label_issue.py automatically added labels {'arrow'} from #2734

label_issue.py automatically added labels {'arrow-flight'} from #2734

label_issue.py automatically added labels {'parquet-derive'} from #2734


Add support for UPDATE..RETURNING.

Currently, update queries always return the rowcount even when the query is an update statement that has a returning clause.
This PR implements support for the returning clause by routing the update query through the select mechanism instead.

Thanks @iksteen


Curly braces {} turn into %7B and %7D

Request Statement
Please help me how I can solve this problem. I have to work with just such a request, I can't ask to change it. Is it possible to avoid changing the url and send it exactly as I write it? I have a request containing '/GetStepResult?runParams={pipelineId:251251', where { before pipelineId changes to %7B when sending, which is why the request works uncorrected
Any workarounds pleeease
Code:
final response = await _dio.get(
'http://site/Pipeline/GetStepResult?runParams={PipelineId:..}',
options: Options(
headers: {
"Content-Type": 'application/json',
},
),
);

@HornyPony Infra and blank issues are only available for moderators. You're apperantly using the wrong issue template.

Infra 和空白 issue 仅供管理人员使用，请选择其他 issue 模板创建 issue。


Fix verbiage about when to register ServerUrlMiddleware

Examples were correct, but verbiage was incorrectly indicating the middleware should be registered following the routing middleware, instead of before.

Ping @danizord — here you go. :smile:


[JENKINS-30556] Cannot reconnect to running slaves after jenkins restart

Thank you for a pull request! Please check this document for how the Jenkins project handles pull requests

Withdraw PR mad from my master