Train DCGAN on a custom images

How can I train the DCGAN on a custom image samples?
As all the blogs, videos and github repo I've come across have been trained on either mnist or cifar datasets.
Thanks in advance :D

@Hemantr05 it may be too late, but I realize you very much.
For training NN on your images you need make several things:

Prepare your dataset to binary file format like *.h5 or *.npz. For this prupose you can create different script prepare-data.py for example
Read that data in your script (train.py for example) before pass them into neural networks.
Change structure of neural networks for your images. Like channel count and size.

See the example of prepare-data.py file:
import os

import numpy as np
from keras.preprocessing.image import load_img, img_to_array

def set_data():
    data = []
    dir_root = os.path.join(os.getcwd(), 'train-images')
    file_list = os.listdir(os.path.join(dir_root, dir_root))

    for file_name in file_list:
        data.append(os.path.join(dir_root, file_name))

    data_list = []

    for image_name in data:
        image_loaded = load_img(image_name,
                                color_mode='grayscale',
                                target_size=(64, 128),
                                interpolation='bicubic')
        image = img_to_array(image_loaded)
        data_list.append(image)

    train_file = os.path.join(os.getcwd(), 'data', 'train')
    train_data = np.array(data_list).astype('uint8')
    np.savez(train_file, train_data=train_data)

set_data()

In the train.py you need read that file and give to network:
# ...

def get_dataset():
    file_path = os.path.join(os.getcwd(), 'data', 'train.npz')
    train_data = np.load(file_path)['train_data'][:]

    train_data_new = []

    for data_index in range(len(train_data)):
        train_data_new_image = []

        for row in range(len(train_data[data_index])):
            new_row = [x[0] for x in train_data[data_index][row]]
            train_data_new_image.append(new_row)

        train_data_new.append(train_data_new_image)

    return train_data_new

# ...

# Load the dataset
x_train = np.array(get_dataset())

And more difficult with change NN structure. But simple try avoid error that you see in terminal while try running script

Thanks @Dok11
Will give this a try

At, prepare-data.py

file_list = os.listdir(os.path.join(dir_root, dir_root)) (line7)
Why does the code find file list at    os.path.join(dir_root, dir_root)  ?
Thanks in advance :)

@HJK632 currently I don't remember how it happend, but I think it just mistake after cleaning the code before publish it.
Maybe correct code should be like this:
file_list = os.listdir(os.path.join(dir_root, sub_dir))

or this:
file_list = os.listdir(dir_root)

PS. Sorry for it =)

No thanks.! It helped me a lot

@Hemantr05 it may be too late, but I realize you very much.
For training NN on your images you need make several things:

Prepare your dataset to binary file format like *.h5 or *.npz. For this prupose you can create different script prepare-data.py for example
Read that data in your script (train.py for example) before pass them into neural networks.
Change structure of neural networks for your images. Like channel count and size.

See the example of prepare-data.py file:
import os

import numpy as np
from keras.preprocessing.image import load_img, img_to_array

def set_data():
    data = []
    dir_root = os.path.join(os.getcwd(), 'train-images')
    file_list = os.listdir(os.path.join(dir_root, dir_root))

    for file_name in file_list:
        data.append(os.path.join(dir_root, file_name))

    data_list = []

    for image_name in data:
        image_loaded = load_img(image_name,
                                color_mode='grayscale',
                                target_size=(64, 128),
                                interpolation='bicubic')
        image = img_to_array(image_loaded)
        data_list.append(image)

    train_file = os.path.join(os.getcwd(), 'data', 'train')
    train_data = np.array(data_list).astype('uint8')
    np.savez(train_file, train_data=train_data)

set_data()

In the train.py you need read that file and give to network:
# ...

def get_dataset():
    file_path = os.path.join(os.getcwd(), 'data', 'train.npz')
    train_data = np.load(file_path)['train_data'][:]

    train_data_new = []

    for data_index in range(len(train_data)):
        train_data_new_image = []

        for row in range(len(train_data[data_index])):
            new_row = [x[0] for x in train_data[data_index][row]]
            train_data_new_image.append(new_row)

        train_data_new.append(train_data_new_image)

    return train_data_new

# ...

# Load the dataset
x_train = np.array(get_dataset())

And more difficult with change NN structure. But simple try avoid error that you see in terminal while try running script

Hello, is there a way to implement this with a 64x64x3 image? I keep running this code and it keeps returning me a 64x64x3 array. Any kind of help is much appreciated.

@Hemantr05 it may be too late, but I realize you very much.
For training NN on your images you need make several things:

Prepare your dataset to binary file format like *.h5 or *.npz. For this prupose you can create different script prepare-data.py for example
Read that data in your script (train.py for example) before pass them into neural networks.
Change structure of neural networks for your images. Like channel count and size.

See the example of prepare-data.py file:
import os

import numpy as np
from keras.preprocessing.image import load_img, img_to_array

def set_data():
    data = []
    dir_root = os.path.join(os.getcwd(), 'train-images')
    file_list = os.listdir(os.path.join(dir_root, dir_root))

    for file_name in file_list:
        data.append(os.path.join(dir_root, file_name))

    data_list = []

    for image_name in data:
        image_loaded = load_img(image_name,
                                color_mode='grayscale',
                                target_size=(64, 128),
                                interpolation='bicubic')
        image = img_to_array(image_loaded)
        data_list.append(image)

    train_file = os.path.join(os.getcwd(), 'data', 'train')
    train_data = np.array(data_list).astype('uint8')
    np.savez(train_file, train_data=train_data)

set_data()

In the train.py you need read that file and give to network:
# ...

def get_dataset():
    file_path = os.path.join(os.getcwd(), 'data', 'train.npz')
    train_data = np.load(file_path)['train_data'][:]

    train_data_new = []

    for data_index in range(len(train_data)):
        train_data_new_image = []

        for row in range(len(train_data[data_index])):
            new_row = [x[0] for x in train_data[data_index][row]]
            train_data_new_image.append(new_row)

        train_data_new.append(train_data_new_image)

    return train_data_new

# ...

# Load the dataset
x_train = np.array(get_dataset())

And more difficult with change NN structure. But simple try avoid error that you see in terminal while try running script

Hello, is there a way to implement this with a 64x64x3 image? I keep running this code and it keeps returning me a 64x64x1 array. Any kind of help is much appreciated.

In prepare_data.py, you can change the color_mode='rgb'.

@Hemantr05 it may be too late, but I realize you very much.
For training NN on your images you need make several things:

Prepare your dataset to binary file format like *.h5 or *.npz. For this prupose you can create different script prepare-data.py for example
Read that data in your script (train.py for example) before pass them into neural networks.
Change structure of neural networks for your images. Like channel count and size.

See the example of prepare-data.py file:
import os

import numpy as np
from keras.preprocessing.image import load_img, img_to_array

def set_data():
    data = []
    dir_root = os.path.join(os.getcwd(), 'train-images')
    file_list = os.listdir(os.path.join(dir_root, dir_root))

    for file_name in file_list:
        data.append(os.path.join(dir_root, file_name))

    data_list = []

    for image_name in data:
        image_loaded = load_img(image_name,
                                color_mode='grayscale',
                                target_size=(64, 128),
                                interpolation='bicubic')
        image = img_to_array(image_loaded)
        data_list.append(image)

    train_file = os.path.join(os.getcwd(), 'data', 'train')
    train_data = np.array(data_list).astype('uint8')
    np.savez(train_file, train_data=train_data)

set_data()

In the train.py you need read that file and give to network:
# ...

def get_dataset():
    file_path = os.path.join(os.getcwd(), 'data', 'train.npz')
    train_data = np.load(file_path)['train_data'][:]

    train_data_new = []

    for data_index in range(len(train_data)):
        train_data_new_image = []

        for row in range(len(train_data[data_index])):
            new_row = [x[0] for x in train_data[data_index][row]]
            train_data_new_image.append(new_row)

        train_data_new.append(train_data_new_image)

    return train_data_new

# ...

# Load the dataset
x_train = np.array(get_dataset())

And more difficult with change NN structure. But simple try avoid error that you see in terminal while try running script

Hello, is there a way to implement this with a 64x64x3 image? I keep running this code and it keeps returning me a 64x64x1 array. Any kind of help is much appreciated.

In prepare_data.py, you can change the color_mode='rgb'.

I tried that, it still returns 64 by 64 by 3 images for some reason

@Hemantr05 it may be too late, but I realize you very much.
For training NN on your images you need make several things:

Prepare your dataset to binary file format like *.h5 or *.npz. For this prupose you can create different script prepare-data.py for example
Read that data in your script (train.py for example) before pass them into neural networks.
Change structure of neural networks for your images. Like channel count and size.

See the example of prepare-data.py file:
import os

import numpy as np
from keras.preprocessing.image import load_img, img_to_array

def set_data():
    data = []
    dir_root = os.path.join(os.getcwd(), 'train-images')
    file_list = os.listdir(os.path.join(dir_root, dir_root))

    for file_name in file_list:
        data.append(os.path.join(dir_root, file_name))

    data_list = []

    for image_name in data:
        image_loaded = load_img(image_name,
                                color_mode='grayscale',
                                target_size=(64, 128),
                                interpolation='bicubic')
        image = img_to_array(image_loaded)
        data_list.append(image)

    train_file = os.path.join(os.getcwd(), 'data', 'train')
    train_data = np.array(data_list).astype('uint8')
    np.savez(train_file, train_data=train_data)

set_data()

In the train.py you need read that file and give to network:
# ...

def get_dataset():
    file_path = os.path.join(os.getcwd(), 'data', 'train.npz')
    train_data = np.load(file_path)['train_data'][:]

    train_data_new = []

    for data_index in range(len(train_data)):
        train_data_new_image = []

        for row in range(len(train_data[data_index])):
            new_row = [x[0] for x in train_data[data_index][row]]
            train_data_new_image.append(new_row)

        train_data_new.append(train_data_new_image)

    return train_data_new

# ...

# Load the dataset
x_train = np.array(get_dataset())

And more difficult with change NN structure. But simple try avoid error that you see in terminal while try running script

Hello, is there a way to implement this with a 64x64x3 image? I keep running this code and it keeps returning me a 64x64x1 array. Any kind of help is much appreciated.

In prepare_data.py, you can change the color_mode='rgb'.

Here is my code: https://stackoverflow.com/questions/67555314/loading-64-x-64-x-3-images-in-dcgan
Thank you

Looking at the error message, it seems like you're loading greyscale image whereas the model expects rgb not the other way around

Looking at the error message, it seems like you're loading greyscale image whereas the model expects rgb not the other way around

I'm trying to load RGB images but for some reason the program sees them as grayscale. I'm trying to figure out why


Allow option for arguments (harmony flag)

I run just like this:
node  --harmony-async-await ./node_modules/.bin/jest

I would like to suggest adding a setting for command line variables.

I think this is possible with the jest command setting already
On Jan 22, 2017 19:15, "Tyler Sl8r"<EMAIL_ADDRESS>wrote:

I run just like this:
node  --harmony-async-await ./node_modules/.bin/jest
I would like to suggest adding a setting for command line variables.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/orta/vscode-jest/issues/69, or mute the thread
https://github.com/notifications/unsubscribe-auth/AAC_jpLuUiMzPypmWfdS-mMzhuyWkYZiks5rU_EcgaJpZM4Lqj24
.

yeah, you can change jest.pathToJest to be node  --harmony-async-await ./node_modules/.bin/jest and it should work 👍

Thanks! Sorry for my oversight. I looked through the settings and didn't
see any docs. I thought that the path was just a path, not a command.
ᐧ
On Mon, Jan 23, 2017 at 11:37 AM, Orta<EMAIL_ADDRESS>wrote:

Closed #69 https://github.com/orta/vscode-jest/issues/69.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/orta/vscode-jest/issues/69#event-933291769, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAbbLseSksS_xAmV33Tb2HFiqtW0v89nks5rVPN3gaJpZM4Lqj24
.


Fix border rendering in transparent views

Quick fix for #145 -- couldn't get it to compile locally so this isn't tested yet. After pulling from upstream I keep getting the following error:
File "src/Core/Window.re", line 307, characters 30-52:
Error: Unbound value Glfw.glfwDestroyWindow

Tried to reinstall reason-glfw but I think this might be because of changes to the development version that haven't been pushed to NPM.

Update: Figured out how to get rid of that error (had to delete the _esy dir and reinstall). Tested this and it's working with fully transparent views:

Works great! Thanks @OhadRau for the fix!


Dogelana update

Please note: This repository is being rebuilt to accept the new volume of token additions and modifications. PR merges will be delayed.

I agree to not ping anybody on Discord/Twitter/email about this pull request. Instead I will inquire by posting a new comment in the pull request if needed.

PRs are reviewed in bulk and and can take up to two weeks to be merged.
This repository is managed using an auto merge action. Please ensure your PR has no deleted lines, and it will be merged.
Please provide the following information for your token.
Please include change to the src/tokens/solana.tokenlist.json file in the PR.
DON'T modify any other token on the list.
At minimum each entry should have

Token Address:
Token Name:
Token Symbol:
Logo: (logo should be uploaded under assets/mainnet//*.<png/svg>)
Link to the official homepage of token:
Coingecko ID if available (https://www.coingecko.com/api/documentations/v3#/coins/get_coins__id_):

Auto merge requirements
Your pull request will be automatically merged if the following conditions are met:

Your pull request only adds new tokens to the list. Any modification to existing
tokens will require manual review to prevent unwanted modifications.

Your pull request does not touch unrelated code. In particular, reformatting changes to unrelated
code will cause the auto merge to reject your PR.

Any asset files added correspond to the token address you are adding. Asset files
must be PNG, JPG or SVG files.

Your change is valid JSON and conforms to the schema. If your change failed validation,
read the error message carefully and update your PR accordingly.

No other tokens shares the same name, symbol or address.

For example, this change would be rejected due to unrelated changes:

The bot runs every 60 minutes and bulk-merges all open pull requests to prevent conflicts.
This means that you need to wait up to 60 minutes for your pull request to be merged or reprocessed.

@rmshea  I need help with this pull request ASAP.

@bartosz-lipinski I genuinely need help. There is an attempted project hijacker who has added another "Dogelana" to the token list (which is against the rules) and has stolen my links as well.
Now we both share the same links but are two unconnected projects... and he has attempted to "steal" my copyrighted material. Although he will not get very far, I need these links & logo fixed.
Need help ASAP.

@leoluk Please help, this needs to get done ASAP.


Gateways and gateways widget display  issue

On some systems where a dynamic V6 WAN address is in use the gateway widget and gateways page display the gateway as '~'. This appears to be due to this piece of code in /Opnsense/Routing/Gateways.php.
// Dynamic IPv6 interface, but no router solicit response received using rtsold.
$gwkey = $this->newKey($thisconf['priority'], !empty($thisconf['defaultgw']));
// gateway should only contain a valid address, make sure its empty
unset($thisconf['gateway']);
$this->cached_gateways[$gwkey] = $thisconf;
This results in null being returned when queried and hence the resultant '~'.  In the system I have looked at ( not mine )  commenting out the unset($thisconf['gateway']); then gave me 'dynamic' in the gateways widget and page, which is more acceptable. However I did not look deeper to see if this has any other side effects.

it  has, dynamic isn't a valid gateway definition, in most cases this means there's no router file written to disk leading to an undefined gateway (https://docs.opnsense.org/manual/gateways.html#missing-dynamic-gateway).  The output of getGateways() should only return valid addresses which can be used in a route command.

OK, well I did a hacked version of rtsold, which writes the *v6 files even if the 'ohterconfig' flag is not set, that works, but then i was getting no ipv6 routing, even though the default v6 route and the *v6 files agreed. Very odd... any ideas why that may have been?

Here's a netstat from the users system I can remote into. First is the working table:

and now the one where I have hacked rtsold to write the route files.

The only difference i can see us the 'Use' value, and I can't seem to find a reference for that in the (8)

Ah.. it does work, It's a dpinger thing... just trying to work that out now.


Termservices stops everytime a new user logs into remote desktop

Had the 1.62 version of RDP wrapper, the check says everything is fine., but suddenly today can't access with more than one user the termservices stops and has to be restarted.
Any ideas?

Retry with latest version (please uninstall first, and then install).

Closed because of missing answer


Plugin: Cannot add required fields for StepData

I was trying to do
@dataclasses.dataclass
class PrepareCMakeData(PrepareStepData):
    preset: str = field(
        option=("-p", "--preset"),
        metavar="PRESET",
        help="Configure preset",
    )

I would like this to be a single-value required field, but I cannot do that because it follows non-required fields of PrepareStepData
Approach 1
Add kw_only=True
@dataclasses.dataclass(kw_only=True)
class PrepareCMakeData(PrepareStepData):

This kinda works, but the error handling is all messed up:
$ tmt plans show

    warn: /plan:prepare - {'how': 'cmake'} is not valid under any of the given schemas
/plan

Failed to load step data for PrepareCMakeData: PrepareCMakeData.__init__() missing 1 required keyword-only argument: 'preset'

Potential solution to this is to try ... catch this source of error and re-format it appropriately
Approach 2
Add attrs style validator. The most intuitive for the user using it, but requires quite some implementation on the backend. This would still have such reporting errors, but this is easier to try ... catch and report the errors
Approach 3
Wrap the dataclass decorator with json schema validation. I think this is the preferred approach that is planned to be implemented?
One missing part here, is how can the plugin add paths for the schema to check? Ideally this is something to specify when subclassing a plugin or plugin data class

Yeah, this is not supported by dataclasses at all, the order is important. I'm not sure whether any of the solutions would work because none addresses the order of fields or (the default) value of the field. The only advice I have now would be to make the field Optional and use None as the default value - I know, it's ugly, more assert calls to make type-checking happy...
The solution might be switching to attrs, where this should not be a problem, and that's my long-term plan. However, I did not start working on it, because I'm mostly happy with what we have now. Not fully, but it's Good Enough(TM). It works, brings enough safety and formalism, no more dictionaries, which means I was able to focus on other areas and put attrs to backburner. Your case is valid, unfortunate, yet a corner one & affected by the core limitation of dataclasses package :(

I'm not sure whether any of the solutions would work because none addresses the order of fields or (the default) value of the field.

With either the attrs validator or json schema validations, it would work, but you would still have to specify it as Optional.

Yeah, but that's the difference: "with attrs..." - and the rest does not matter. It's not possible with stdlib dataclasses, i.e. kw_only, "attrs style validator" or wrapping dataclass with JSON validation won't let you not define a default value. Might be dummy one, None, and matching type, but as long as dataclasses control the class, field shall have a value :)

more assert calls to make type-checking happy...

Yeah, but this one would still break the error reporting.

Hmm, that would be unexpected. Once the class is successfully defined, existing code should be able to work with it easily, Optional or not.

I am actually stuck at the next issue with the JSON schema validation:

One missing part here, is how can the plugin add paths for the schema to check? Ideally this is something to specify when subclassing a plugin or plugin data class

Right, I wanted to address this one but missed it eventually. No, tmt does not have a way to include custom schema, but it should have, e.g. an environment variable similar to TMT_PLUGINS. Definitely worth a patch.

But the JSON schema validation is not performed for tmt run right? I am wondering how much I am blocked by this right now.

It is performed every time tmt loads fmf data. tmt asks fmf library to load data from files, then asks fmf library to run schema validation, then tmt turns the tree of fmf structures into tests and plans. The report from JSON validation is just a warning, I plan to improve its reporting - until then, it can be way too cryptic to be of any use as a mandatory test.

The solution might be switching to attrs

After you first introduced me to this, I can confirm attrs is the way to go. And actually I don't think it would be that difficult of a transition, since most of the API is compatible. We can at least open a PR to investigate gradual transition. Do you have a suggestion on the simplest dataclass to start with?

Hard to tell, maybe check tmt.hardware, those are pretty isolated, or tmt.queue, tmt.steps.provision.mrack. Basically, nothing that's derived from tmt.utils.DataContainer or uses field(), because there's a lot of code attached to that. Which is also something to think about, those containers need to be written to and read from files, plus we save plenty of field metadata (tmt.utils.FieldMetadata) because fields define keys, keys can be set by CLI options, have help strings, metavars, all the stuff that both CLI and Sphinx need to access, so some structured way is needed for storing this kind of info. Something will not be needed, maybe normalization would be possible to be performed by attrs, but something will remain with us. On the other hand, if switching to attrs, tackling field() & co. would be inevitable. I'd expect we would end up end up with two sets of code, the legacy one and the new one, and convert plugin by plugin, to make things reviewable.

Hmm, that would be unexpected. Once the class is successfully defined, existing code should be able to work with it easily, Optional or not.

I think I am thinking of the schema validation error that I currently have. I will come back to this if the issue persists with using assert.

The report from JSON validation is just a warning

Ok, I can than move on and see what I can hack up further.

I'd expect we would end up end up with two sets of code, the legacy one and the new one, and convert plugin by plugin, to make things reviewable.

Yep, that's the plan I had in mind. First figure out if we will have any surprises with EPEL + Fedora rawhide compatibility :D


This PR closes OSD-19785. Multiple proxies are saved as array in config file and the first working proxy is used.

What type of PR is this?
(bug/feature/cleanup/documentation/unit-test)
What this PR does / Why we need it?
Which Jira/Github issue(s) does this PR fix?
Resolves #
Special notes for your reviewer
Pre-checks (if applicable)

[ ] Ran unit tests locally
[ ] Validated the changes in a cluster
[ ] Included documentation changes with PR

@supreeth7  made the changes requested. Messed up while squashing so just closed the previous PR and open this one with squashed commits. Also removed the logging as suggested.

/retitle  Add multiple proxy support to Backplane configuration

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (339c486) 44.04% compared to head (77d1ae7) 44.18%.
Report is 1 commits behind head on main.

Additional details and impacted files

@@            Coverage Diff             @@
##             main     #344      +/-   ##
==========================================
+ Coverage   44.04%   44.18%   +0.14%
==========================================
  Files          54       54
  Lines        4064     4085      +21
==========================================
+ Hits         1790     1805      +15
- Misses       2015     2019       +4
- Partials      259      261       +2

Files
Coverage Δ

cmd/ocm-backplane/config/troubleshoot.go
67.56% <100.00%> (ø)

pkg/cli/config/config.go
72.00% <100.00%> (-0.16%)
:arrow_down:


fix: upload storage matfile to server

Purpose
We introduced a bug in #406 where the "case_storage.mat" file is generated but not actually sent to the server and therefore not used in the simulation engine.
Testing
Tested that this fixes the bug, and case_storage.mat gets uploaded to the server where previous scenarios run with the exact same script don't have it.
Time estimate
5 minutes.

Good catch. We haven't run scenarios with storage for a while.

I caught it the hard way, after running 162 scenarios that I thought had storage but in fact did not.

Good catch. We haven't run scenarios with storage for a while.

I caught it the hard way, after running 162 scenarios that I thought had storage but in fact did not.

OMG, all nuclear scenarios with flexibility?!

OMG, all nuclear scenarios with flexibility?!

Not all of them, just the ones from this week (90% clean, 30% nuclear).

OMG, all nuclear scenarios with flexibility?!

Not all of them, just the ones from this week (90% clean, 30% nuclear).

Does it affect the results in the presentation?

Does it affect the results in the presentation?

Not really, the ones running this week did not play a major role in what we presented.

Do we need to delete a 162 scenarios?


Update the README file

Hey I have created this repo , but i could really use help with crafting a better README.


Allow debug session to share repl with its parent; fixes #62419

Introduced DebugSessionOptions parameter to debug.startDebugging to
control this behavior.
@weinand, @isidorn Could you please take a look? Changing API following this suggestion.

@dgozman great work, I really like this.
For the API I have created this api proposal https://github.com/microsoft/vscode/issues/80718. After discussions with @weinand we would prefer if instead of adding a new argument to the startDebugging method, we would instead add the parentSession to the option bag. Due to backwards compatibility we would need to make the last argument parentSessionOrOptions: DebugSession | DebugSessionOptions
I will bring this up in our API sync next monday and then we can have this finalized.
As for the code changes I will comment directly in the code.
Thanks!

After bringing this up in the API sync. We decided to have it in the vscode.proposed.d.ts for one milestone and then after one milestone we would merge it into vscode.d.ts. That way we would give time for other extension authors to provide feedback and we do not rush anything. @dgozman can you please move it to proposed?
Another feedback was that the DebugSessionOptions  should have all the arguments, not just the last two. A similar approach is done by the Terminal here
So it keeps the old method which passes the arguments one after the other, and there is a new method which just takes an option bag.
@weinand @dgozman @jrieken let me know what you think about this
Apart from that can you please tackle the conflict issues in this PR @dgozman

@isidorn I updated the PR and put everything to vscode.proposed.d.ts, giving it some time sounds good.

@dgozman thanks a lot for moving it to vscode.proposed.d.ts and for fixing conflicts.
However using the option bag was just a proposal. After discussing it this morning with @weinand we decided to go with your previous approach, to keep the first arguments out of the option bag since they are more important than the rest and in practice should not be optional. This way we also specify to the user what is important from the arguments more easily. Using an option bag could make the user easily forget to pass the WorkspaceFolder resulting in variables not being substituted in launch.json for example.
I appologize for the misunderstanding. Can you just go back to your previous approach, that we use
startDebugging(folder: WorkspaceFolder | undefined, nameOrConfiguration: string | DebugConfiguration, parentSessionOrOption?: DebugSession | DebugSessionOptions)
Once we have that I can merge this in.
Thanks a lot!

@isidorn I reverted back to parentSessionOrOptions. It seems that just putting new signature in vscode.proposed.d.ts works, so this should be it.

Looks great, mering in.You missed one spot in extHost.protocol.ts, though I will fix that on master.
Thanks a lot for this PR 🍻 ☀

I verified it works nicely end to end.
And just to add that I like that we went with the enum DebugConsoleMode because some extension might have an use case that it wants new sessions debug console merged even though there is no parent / child relationship. So in theory we could add a new option to the  DebugConsoleMode MergeWithExistingSession` in case the need arrises.


Horizontal scrolling with wheel

Using a mouse wheel works only on vertical scrolling. When scroll list is horizontal, scrolling works only by dragging and clicking the bar.

I'm looking for something exactly like you described. Did  you found a workaround for this?

Yes, you can bind regular onWheel event to your scrollbar and then use it like this:
_onMouseWheel: function(event) {     if (this.props.direction === 'horizontal') {       var list = event.currentTarget.firstChild;       var delta = (event.deltaX == 0 ? event.deltaY : event.deltaX);       list.scrollLeft += delta;       event.preventDefault();     }   },
Normally you use deltaY, and deltaX check is for mac trackpad.
I am using this: https://www.npmjs.com/package/normalize-wheel for fixing cross-browser issues.

I use
onMouseWheel(e) {
	const currentScrollDelta = this.scrollBars.getScrollLeft();
	this.scrollBars.scrollLeft(currentScrollDelta + e.deltaY);
}

awesome solve my problem :) thanks

I use
onMouseWheel(e) {
	const currentScrollDelta = this.scrollBars.getScrollLeft();
	this.scrollBars.scrollLeft(currentScrollDelta + e.deltaY);
}

awesome solve my problem :) thanks

Hey i know I'm 4 years late to this thread, but do y'all have any ideas on how this works with the current version? It doesn't look like react-custom-scrollbars uses the onMouseWheel property anymore. Here's my current scrollbar setup:
<Scrollbars
	ref={scrollBars}
	style={{ width: '100%', height: 500 }}
	renderTrackHorizontal={props => <div {...props} className='track-horizontal'></div>}
	renderThumbHorizontal={props => <div {...props} className="thumb-horizontal"/>}
	onScrollFrame={(values) => setScrollPosition(values.left)}
>


fix bug where dotnet publish of an app doesn't find root index.html

dotnet publish projects don't load.  This bug correctly calculates the wwwroot folder for index.html and _content.
Fix for #39

With this fix, the application stops working when publishing with the "PublishSingleFile" mode.
Can use one of them for fix:
var contentRootDir = Path.Combine(Environment.CurrentDirectory, "wwwroot");
var contentRootDir = Path.Combine(Directory.GetCurrentDirectory(), "wwwroot");
var contentRootDir = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "wwwroot");

Thanks NewMySQL, good catch. AppDomain is better solution.


Backport of arb fix

What is the purpose of the change
backport https://github.com/osmosis-labs/osmosis/pull/6906
Testing and Verifying
same as #6906
Documentation and Release Note

[ ] Does this pull request introduce a new feature or user-facing behavior changes?
[ ] Changelog entry added to Unreleased section of CHANGELOG.md?

Where is the change documented?

[ ] Specification (x/{module}/README.md)
[ ] Osmosis documentation site
[ ] Code comments?
[ ] N/A

Closing due to #6909


Sabaki SGF editor (Electron/Node)

Project description
Sabaki is the most featureful SGF editor/viewer available. SGF is the file-format which backs game-records for the game Go/Baduk. Sabaki is also able to hook up to various Go playing backends such as the modern ML based AI engines.
Sabaki is Electron / Node based.
I have tried to build it with node2nix, but the commands required for actually building Sabaki are not run. Sabaki is built with npm run build. I have tried to use nix-shell in conjunction with node2nix in order to run npm run build myself, and this works, the build process completes -- but the output is unpatched, resulting in "cannot find bash", etc.
I am not able to reason how to modify the node2nix artifacts to apply the correct patching required to get it to actually run.
Metadata

homepage URL: https://sabaki.yichuanshen.de/
source URL: https://github.com/SabakiHQ/Sabaki
license: mit
platforms: unix, linux, darwin, ...

Why was this closed?


Add the cf-for-k8s repos to the CF on K8s WG

With this the Cloud Foundry on Kubernetes working group adopts all repositories related to the old cf-for-k8s project. The following repositories have been left out on purpose:

cloudfoundry/cf-k8s-networking-scaling: please archive.
cloudfoundry/cf-for-k8s-metric-examples: please archive.
cloudfoundry/cf-on-k8s-integration: please delete.

Closing this as we plan to retire cf-for-k8s soon.


Add checkbox that filters out solved puzzles

I updated to have the Priorty and Unsolved filters, I did include any attempt at automatically tagging low-priority as discussed in discord, I think it wouldn't fit in the scope of this PR.
All Puzzles

Priority

Unsolved

I updated to have the Priorty and Unsolved filters, I did include any attempt at automatically tagging low-priority as discussed in discord, I think it wouldn't fit in the scope of this PR.
All Puzzles

Priority

Unsolved

I updated to have the Priorty and Unsolved filters, I did include any attempt at automatically tagging low-priority as discussed in discord, I think it wouldn't fit in the scope of this PR.

Nice! I filed https://github.com/cardinalitypuzzles/smallboard/issues/322 for the auto-tagging feature.
This looks great! I'm guessing that "Unsolved" filters for unsolved puzzles and their (potentially solved) metas, whereas "Priority" filters for all unsolved, non-lo-pri puzzles.
I wonder if it's possible to make that a little more clear from the name... not sure.

I updated to have the Priorty and Unsolved filters, I did include any attempt at automatically tagging low-priority as discussed in discord, I think it wouldn't fit in the scope of this PR.

Nice! I filed https://github.com/cardinalitypuzzles/smallboard/issues/322 for the auto-tagging feature.
This looks great! I'm guessing that "Unsolved" filters for unsolved puzzles and their (potentially solved) metas, whereas "Priority" filters for all unsolved, non-lo-pri puzzles.
I wonder if it's possible to make that a little more clear from the name... not sure.


Additional tests for #3168

These were a part of tests I was preparing for #3165, and I believe it's worthy to add them (any single of them fails in the current main branch).

any single of them fails in the current main branch

I am confused now: They do seem to pass in the CI? Do they fail only intermittently? Could you also check whether #3168 does resolve the issues you found?

Sorry, your PR definitely passes all of those tests. I meant to say that those tests are crafted so that PyO3 don't pass them without your PR.

Ah sorry, I missed the target branch of this PR! It is targetting #3168 and not main.
Also sorry for not starting with that: Thank you for going the extra mile and packaging up your tests so we can include them upstream!

Hello @lifthrasiir
Thank you for contributing to PyO3!
The project is undergoing changes on its licensing model to better align with the rest of the Rust crates ecosystem.
Before your work gets merged, please express your consent by leaving a comment on this pull request.
Thank you!


[Meta] Lucene 9 Upgrade Punch List

The following outstanding (and currently muted) test failures still need to be addressed as part of the Lucene 9 upgrade:

[x] PluginsServiceTests failures due to AccessControlException
[x] CustomUnifiedHighlighterTests
[x] HighlighterWithAnalyzersTests.testPhrasePrefix
[x] ChildQuerySearchIT.testHighlightersIgnoreParentChild
[x] HighlighterSearchIT failures
[ ] IndexShardHotspotTests
[x] RelocationIT.testRelocationWhileIndexingRandom (seed -Dtests.seed=6158774967A60B81)
[ ] NumberFieldTypeTests.testIndexSortIntRange
[ ] IndexPrimaryRelocationIT

relates #1109

These ones should be fixed now:
CustomUnifiedHighlighterTests
HighlighterWithAnalyzersTests.testPhrasePrefix
ChildQuerySearchIT.testHighlightersIgnoreParentChild
HighlighterSearchIT failures
But we would need to work on accommodating these change: https://github.com/apache/lucene/pull/362/files

For NumberFieldTypeTests, opened https://issues.apache.org/jira/browse/LUCENE-10466

PluginsServiceTests are green, https://github.com/opensearch-project/OpenSearch/pull/2484

@nknize I am working on  NumberFieldTypeTests.testIndexSortIntRange

IndexShardHotspotTests are passing but this one test is taking upwards of 25 minutes+. @ashwinpankaj can we reduce this test from 100 indices + 5 shards to something much more expedient?
I don't want to unmute if this is going to kill our tests on each PR.

:+1: @nknize that's the same cause as NumberFieldTypeTests.testIndexSortIntRange


Azure - mailer support for Azure Queues and SendGrid (v2)

@anastasiia-zolochevska is unavailable for a bit so I made a few tweaks to her PR and resubmitting it.
I have modified to only remove items from queue if we successfully transmitted them to SendGrid, along with max retries for a queue message.  Some error handling and CLI cleanup along with documentation.
Original description below:
Example of command to run:
c7n-mailer --config samples/mailer.yml --run
Example of policy to put notification message to Azure Storage Queue:
policies:
name: test-notify
resource: azure.resourcegroup
filters:
type: empty-group
actions:
type: notify
template: default
subject: Testing the mailer with sendgrid
to:
<EMAIL_ADDRESS><EMAIL_ADDRESS>transport:
type: asq
queue: https://cctstoragey6akyqpagdt3o.queue.core.windows.net/testcc
Example of mailer config:
queue_url: asq:https://cctstoragey6akyqpagdt3o.queue.core.windows.net/testcc
from_address<EMAIL_ADDRESS>

Alright, no need to review again but just to wrap up I went ahead and added tests on our processor which are at https://github.com/stefangordon/cloud-custodian/blob/47aedf7550fe962ef37468fd2f4f1709679ba323/tools/c7n_mailer/tests/test_azure.py


Checking If Tweet Is A Reply: Does The Twitter API Support It Yet?

Is there a possibility to check if a tweet is a reply to a tweet yet or is there a way that TweetInvi can handle this?

Hello you can simply use the InReplyToStatusId :
var tweet = Tweet.GetTweet(42);
var isAReply = tweet.InReplyToStatusId != null;


/app/functions.sh: line 69: self_cid: unbound variable

I can't seem to be able to start the container anymore. I get the following in the log when I try:
/app/functions.sh: line 69: self_cid: unbound variable
Error: can't get nginx-proxy container ID !
Check that you are doing one of the following :
        - Use the --volumes-from option to mount volumes from the nginx-proxy container.
        - Set the NGINX_PROXY_CONTAINER env var on the letsencrypt-companion container to the name of the nginx-proxy container.
        - Label the nginx-proxy container to use with 'com.github.jrcs.letsencrypt_nginx_proxy_companion.nginx_proxy'.

My docker commandline is as follows:
docker run -d --name nginx-proxy-letsencrypt --volumes-from nginx-proxy -v /var/run/docker.sock:/var/run/docker.sock:ro jrcs/letsencrypt-nginx-proxy-companion

I've been trying tonnes of permutations of this over the last few hours and now I'm ready to give up. Does anyone have an idea what might be going on? Let me know if you require any additional info.

What version of the container are you using ?

:latest (sorry, forgot to note that I just updated my entire stack)

What version where you using prior to the update ?
Could you try with v1.11 and v1.10 ?

Ah! v1.10 seems to work!

I think I identified the issue, can you try with duch/letsencrypt-nginx-proxy-companion:542 ?

That looks like it works, yes.

Fix committed to master / latest
Released v1.11.1 with the fix and pushed it to Dockerhub as both v1.11 and v1.11.1.
Thanks for reporting the issue.

Try to stick to tagged release whenever possible, using latest tends to make issue identification harder.


Creating JWTs on CoreCLR

Hi.
I want to create Jwts in an ASP.NET 5 app on the CoreClr.
What's the right Nuget to use for this? In the past I have X509SigningCredentials in the JwtSecurityToken ctor - I can't find this class. Where can I find it? Or is there a replacement?
thanks!

nm - got it.

Where is it?  ;)  same problem


Respect & maintain the FRBRdate attribute @name

Changes in this PR:
Relevant ADR: https://github.com/nationalarchives/ds-caselaw-public-access-service/blob/main/doc/adr/0008-how-frbrdates-are-managed.md
Related to https://github.com/nationalarchives/ds-caselaw-public-ui/pull/316
This XQuery updates the nodes at /akn:akomaNtoso/akn:judgment/akn:meta/akn:identification/akn:FRBRWork/akn:FRBRdate
and /akn:akomaNtoso/akn:judgment/akn:meta/akn:identification/akn:FRBRExpression/akn:FRBRdate
The XQuery is used in the editor UI, and is called when the editors update a
judgment or tribunal's "date". This is the akn:FRBRWork/akn:FRBRdate date as
displayed in the public-ui search results.
As per the ADR and schema, akn:FRBRWork/akn:FRBRdate and akn:FRBRExpression/akn:FRBRdate
should be kept in sync, hence this XQuery updates both.
Previously, the Xquery did not respect the value of the @name attribute. It was being
set to judgment, which is true in many cases, but may also be hearing in
some cases.
In the referred PR above, we changed the way we get a judgment's date, from
looking for an FRBRdate with a name attribute of judgment, we instead
look for any FRBRdate inside the FRBRWork element. So the attribute name
value is redundant.
When updating the FRBRdate within FRBRExpression and FRBRWork`, we now:

Keep both dates in sync
Update the name attribute of both to match the value at judgment/@name.

This is because an FRBRdate element may have a value of "dummy" if the parser
failed to create a date for the judgment/tribunal. So we want to update it to
match the judgment/tribunal "type". This has been confirmed by Jim @jurisdatum
This change also assumes a judgment/tribunal ALWAYS has a FRBRdate element
within FRBRWork and FRBRExpression, as a missing date element is a parser
error.
Trello card / Rollbar error (etc)
https://trello.com/c/lTTnAqpz/847-date-editor-ui

[ ] Requires env variable(s) to be updated

New changes look like an improvement. Someone's going to wonder why something that has nothing to do with a date is the date_attribute, but the commit message covers that admirably.


support routing portal packets to connected fpga devices

There a bluesim-specific example of this in example/simplelink
2bddf069beb291df61e833fdea024a2fb4061c3c


File descriptor leak on init/control

Running docker 1.11, we found a file-descriptor leak.   But it seems that containerd opens 2 files (exit and control) for each process https://github.com/docker/containerd/blob/b93a33be39bc4ef0fb00bfcb79147a28c33d9d43/runtime/process.go#L107-L108, but only close one (exit) https://github.com/docker/containerd/blob/b93a33be39bc4ef0fb00bfcb79147a28c33d9d43/runtime/process.go#L203-L205 during exit.

Also seen once:
lr-x------ 1 root root 64 Jun 28 21:47 83 -> /run/docker/libcontainerd/89764a04506a7973acfdf086acf38a12d042e63335d3b81edbb54162d84efa5e/init-stderr (deleted)


Compatibility fix for scikit-learn 0.23.1

Removed 'six' from the dependency list and included it as an independent package.

Merged, thanks!


Glasgow

Motivation for this change
Update glasgow to an unstable version from 06-29. This adds the analyze applet.
Things done
I've tried using this and it has worked as expected.

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

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

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

@flokli thanks for pointing out the mistake. It should now be correct. Let me know if there are any other issues.

Done. I removed the v from the commit message too.


Add implicit operator to ValueChangedEvent

On further discussion, I don't think we can do this as it runs into the same issue as implicit on .Value (which we just removed to avoid):
        [Test]
        public void TestImplicitOperatorSafety()
        {
            Bindable<TestClass> bindable = new Bindable<TestClass>();

            bool isNull = false;

            bindable.ValueChanged += e => { isNull = e == null; };

            bindable.Value = new TestClass();
            Assert.IsFalse(isNull);
            bindable.Value = null;
            Assert.IsTrue(isNull);
        }


Compactablility with API

It would be nice to have the library compatible with API 14

@Nikhil-z  Fixed, please check.

@Nikhil-z Fixed, please check.

@silvestrpredko Thanks


⚠ Bofrost.be has degraded performance

In bf434a1, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 2674 ms

Resolved: Bofrost.be performance has improved in 518b173.


[BUG] queries not correctly formatted when other types were retrieved first

Is there an existing issue for this?

[X] I have searched the existing issues

Current Behavior

Expected Behavior
query formatting should be the same independent of stuff that ran before it
Steps To Reproduce

Go to '...'
Click on '....'
Run '...'
See error...

Version
5.0.1
Participation

[X] I am willing to submit a pull request for this issue.

while testing together with other tests, it seems that the tests for type JOURNEY are causing this somehow.


Refactor: Prefix CSS Classes

Refactored the following component.

Badge Component
Button Component
Card Component
Alert Component
Avatar Component

All good varun. Seems ok to me


New thumb icons

With some build updates - to allow fill-rule svg attr; to whitelist props based on svg tagName
And some icon package test updates - point to dist; preval done at build; required for functioning component
Hh, a quick request on this one: Dane, if you end up working on babel@7 upgrade, please try to merge this first since there was some trouble around making sure that babel/build/tests were working nicely here.  I'd like to get this one resolved on that baseline before that upgrade, if possible.

Another issue related: Found out that the 9.0.2 version of icon, published for some other thing on 20 Dec, included these new thumb icons.
How?  I believe it is because the publish is done locally and the *.dist.js were in the src directory and got babeled into dist.  I solved this with a hotfix to master (52028b4c) and rerelease of<EMAIL_ADDRESS>


Bugfix/early out invalid links in view creation

Check if collections exist before a view is created.

http://jenkins01.arangodb.biz:8080/job/arangodb-matrix-pr-linux/2056/


Bundle minification causes I18N error

I have noticed that when I minify my bundle (jspm bundle -i -m * + */**) some validation messages won't appear, and an error is thrown:
Unexpected behavior: a validation-rules-collection should always fulfil validation: I18N: Could not find: r in category: messages
build.js:19 Unhandled promise rejection Error: Unexpected behavior: a validation-rules-collection should always fulfil
    at Error (native)
    at http://domain.com/build.js:27:14515
    at n (http://domain.com/build.js:19:24869)
    at http://domain.com/build.js:19:25030
    at t.exports (http://domain.com/build.js:19:8329)
    at _.(anonymous function) (http://domain.com/build.js:19:27829)
    at Number.r (http://domain.com/build.js:19:27505)
    at i (http://domain.com/build.js:19:27526)

I have tried to change localization from nl-NL to en-US but this does not fix the problem.  Also, .required() is working fine, but the above error is thrown when I use .isNumber() or .isEmail(). there could be more validation rules causing errors.. All is well when I disable minification.
I have been able to reproduce this using the skeleton and latest version of aurelia-validation.  Imgur. Repository is here: https://github.com/JeroenVinke/validation-error, minified bundle is here: https://github.com/JeroenVinke/validation-error/blob/master/dist/build.js
Not sure yet if this is caused by using the beta of JSPM, will investigate further..

I'm also getting this with jspm 0.15.6

I think I know why this is happening.. this is the minified validation-locale code:
o = function() {
				function e(t, r, i) {
					n(this, e), this.onValidate = r, this.threshold = t, this.message = i, this.errorMessage = null, __this.ruleName = this.constructor.name__
				}
				return e.prototype.withMessage = function(e) {
					this.message = e
				}, e.prototype.explain = function() {
					return this.errorMessage
				}, e.prototype.setResult = function(e, t, n) {
					if (e === !0 || void 0 === e || null === e || "" === e) return this.errorMessage = null, !0;
					if ("string" == typeof e) this.errorMessage = e;
					else if (this.message) if ("function" == typeof this.message) this.errorMessage = this.message(t, this.threshold);
					else {
						if ("string" != typeof this.message) throw "Unable to handle the error message:" + this.message;
						this.errorMessage = this.message
					} else this.errorMessage = n.translate(this.ruleName, t, this.threshold);
					return !1
				},

The name of the validation rule constructor is minified by renaming it to 'e'. The translation key is the same as the name of the constructor:
 this.ruleName = this.constructor.name; // minified constructor name is 'e'
n.translate(this.ruleName, t, this.threshold);
This is probably why I18N is queried for the key 'e' instead of 'EmailValidationRule'.
isRequired() is working because it is used differently: message: this.isRequiredMessage ? "function" == typeof this.isRequiredMessage ? this.isRequiredMessage(e) : this.isRequiredMessage : t.translate("isRequired"),

@janvanderhaegen Yep, this is definitely a bug. Make sure not to use the name property of the function object anywhere in your code except in developer-oriented error messages. It will not be preserved when code is minified.


Bugfix setMessages

Bugfix in Validator::setMessages() and Validation::setMessages() didn't update property $messages

That was kind of fast


SQLAbst to allow usage of Transactions

As I wanted to build a feature that allows for preview of a modification I needed Transactions to work. I feel like I added the possibility for them in the most minimal invasive way :-)
Simple get the SQLAbst and call Beginx(context.Context) to start one. After a rollback or commit the library will get back to using the db.
Of course this might not be 100% nice in a very concurrent setup but then it makes more sense to just use several clients probably...

(sorry for the merge commit, feel free to squash)

Sorry I’m unfamiliar with sqlabst, what does it give over https://go.dev/doc/database/execute-transactions?

It is a very  simple piece of code basically doing nothing else than bindig together sqlx.DB and sqlx.Tx into a single interface. I would have written this myself if I would not have found that package very fast. If you want we can copy its code into the project to ensure we keep dependencies low and do not run into issues.

Thanks!


Confirmation of Set-SPOSite command limitation for the group site collection

The group site collection, which associated with Office 365 group, is not allowed to change some site-level properties using by Set-SPOSite command.
Ref: #1555, #2695
But, if we use the CSOM (Client Side Object Model), we can change all of the site-level properties.
Ex.
・Site.DisableAppViews property
・Site.DisableFlows property
Q1. Is the Set-SPOSite command limitation just command limitation for group sitecollection?
Q2. If just command limitation, is it supported operation to use CSOM to change site-level properties that cannot be changed with the Set-SPOSite command for group site collection?
Thanks!

@officedocsbot assign @yogkumgit

@kefujino Thank you for the feedback. You are correct, As we mentioned in the other two issues( #1555 and #2695) this is a command limitation for a group site collection. Alternatively, you can use CSOM to change properties that cannot be changed with other commands for a group site collection.
It is very well supported to use the SharePoint client object model (CSOM) to retrieve, update, and manage data in SharePoint.
Hope this helps!
Thanks
Sri

@msbemba  Thank you very much for the contribution and sharing this explanation. @kefujino
Hope this comment is helpful for you. If you see a documentation update is required, please feel free to open an issue for the same. We proceed here to close it. Thanks for taking out some time to open the issue. Appreciate and encourage you to do the same in future also.

@msbemba
Thank you for your quick answer!!
Very helpful for me.
@yogkumgit
Thank you!


Move source files out of src/ from submissions

Since the switch to IntelliJ, students have begun to submit the entire src/ directory instead of submitting the files flat. The script should take care of this automatically.

Fixed with latest commit


Turn off quote detection in report csv to json conversion

One report didn't work for some reason, returning quote_error from csv conversion module. So i looked into report and found out one field name was starting with ", but wasnt ending with it, causing error.
PR is an attempt at fixing it by turning off quote detection. Quotes in csv are used in cases when delimiter is used in field, for example if delimiter was , and you wanted to have comma in some field. I have tested failing report afterwards and it worked. I have manually checked multiple other reports with this fix and they all worked correctly, however that may not be the case for every report for every user.

Thank you for your PR. Just merged it. Although this might result in a problem when a field includes a tab thats not a delimiter I think its the better solution with quote detection off. Tested a lot of reports and I am not sure if its even possible that a "real" tab could be returned whereas this will be obviously more often the case with doublequotes. If somebody will have a case where a tab is returned as part of a field causing problems we may think about having an option that will allow to decide if quote detection is on or off.

Thank you for your PR. Just merged it. Although this might result in a problem when a field includes a tab thats not a delimiter I think its the better solution with quote detection off. Tested a lot of reports and I am not sure if its even possible that a "real" tab could be returned whereas this will be obviously more often the case with doublequotes. If somebody will have a case where a tab is returned as part of a field causing problems we may think about having an option that will allow to decide if quote detection is on or off.


Extension issue

Issue Type: Bug
Extension Name: vscode-edge-devtools
Extension Version: 2.1.0
OS Version: Windows_NT x64 10.0.19044
VS Code version: 1.71.0

:warning: We have written the needed data into your clipboard. Please paste! :warning:

Hi @LuhMaths, thank you for these details, however you didn't say what was the issue exactly?
Can you reply with a comment saying what issue you are experiencing exactly, and what steps you took to get there.

Going to close this as incomplete. Feel free to reply with more information if/once you have it.


skips double quotes when converts to text representation

Using ion-js  form at https://amzn.github.io/ion-docs/
{"name s": "foo"} -> {name s: foo}
Expected
{"name s": foo}

Thank you for reporting this! It appears to be a bug in the ion-docs display widget itself rather than the ion-js library. I'll transfer the issue to that repository.


test(cli): Remove a Gradle project analysis

This specific test does not add value over the tests in the respective Gradle package managers, so just remove it.

Merging despite funTest-docker being stuck.


TaxBreakdown/Currency error at order line delete

Lunar version: 1.x
Laravel Version: 11.x
PHP Version: 8.2

I have simple command to remove old orders that were just created without additional steps with removing lines:
foreach ($order->lines as $line)
{
    $line->activities()->delete();
    $line->delete();
}

but $line->delete(); cause error:
Lunar\DataTypes\Price::__construct(): Argument #2 ($currency) must be of type Lunar\Models\Currency, null given, called in vendor/lunarphp/core/src/Base/Casts/TaxBreakdown.php on line 36

  at vendor/lunarphp/core/src/DataTypes/Price.php:16
     12▕      * Initialise the Price datatype.
     13▕      *
     14▕      * @param  mixed  $value
     15▕      */
  ➜  16▕     public function __construct(
     17▕         public $value,
     18▕         public Currency $currency,
     19▕         public int $unitQty = 1
     20▕     ) {

      +17 vendor frames

Also, similar for order delete:
Attempt to read property "id" on null

  at vendor/lunarphp/core/src/Base/Casts/DiscountBreakdown.php:57
     53▕                 return [
     54▕                     'discount_id' => $discountLine->discount_id,
     55▕                     'lines' => $discountLine->lines->map(function ($orderLine) {
     56▕                         return [
  ➜  57▕                             'id' => $orderLine->line->id,
     58▕                             'qty' => $orderLine->quantity,
     59▕                         ];
     60▕                     })->values(),
     61▕                     'total' => $discountLine->total->value,

      +1 vendor frames

  2   [internal]:0
      Lunar\Base\Casts\DiscountBreakdown::Lunar\Base\Casts\{closure}(Object(stdClass))
      +3 vendor frames

  6   [internal]:0
      Lunar\Base\Casts\DiscountBreakdown::Lunar\Base\Casts\{closure}(Object(stdClass))

but $line->delete(); cause error:

is your order record have currency currency_code? or is there a default Currency configured in your app?

I have 3 currencies defined in Lunar but all orders have default currency (other 2 are not use for now)

Hi @morawcik I've tried to write a test to reproduce this issue but I couldn't. I've started a PR to get a test in for the conditions above. Are you able to take a look and let me know if anything else is needed to reproduce the issue you're having. Thanks.

Hmm, I can't reproduce it again. I guess it was an old orders with some errors during upgrade versions (missing actions for migrations like those with tax_breakdown not updated)

No problem, I'll close the issue but if it comes up again feel free to reopen.


Webhooks for submissions

The live/nonlive checks should use webhooks.

While at it, a lot of the submission rules should be fast-pathed etc.

Could now also use the user webhook to listen for username changes.


Panel with block transform cannot animate

I'm trying to figure out how to get a panel to animate that transforms to a block on larger devices.  Here is the panel:
<zf-panel id="my-panel" position="left"
          class="medium-grid-block medium-4 slideInRight slideOutLeft"
          ng-show="showPanel">
  ×
  ...
</zf-panel>

NOTE: A watch is set up on showPanel that will call the FoundationApi to close the panel if set to false.
If I replace ng-show="showPanel" with ng-show="true" , the element will animate as a panel on small devices and animate as a block on medium and up devices.  The problem I'm having when using ng-show="showPanel" is that if showPanel is ever changed it immediately hides/shows the panel versus playing out the animation.
I think the fix would be to add a styling override for when the ng-hide class is added to a panel at the same time as the animation class.  In that case, have it set display: block; versus using the ng-hide styling of display: none;

Any update on this?

@gakimball I'm going to look into fixing this issue today, so if you could provide any feedback that would be helpful.
The whole reason I had to implement what is now the zf-advise feature was due to this issue. I use the zf-advise directive to track the active state of the panel and apply various CSS to the parent containers of the panel when it is open/opening/closing/closed.  I'm basically trying to achieve what the panel grid block should be giving me when it is working properly.


Multi-Server Profile Usage and Examples

Pull Request Description

Multi-Server Profile Usage and Examples

It has been tested with the following parameters:

Runner Virtual Environments:

Linux

[ ] Ubuntu 22.04
[ ] Ubuntu 20.04

macOS

[ ] macOS 12
[ ] macOS 11

Windows

[ ] Windows 2022
[ ] Windows 2019

VPN Modes:

[x] OpenVPN (ovpn)
[ ] WireGuard (wg)

Client Versions:

[x] Installed from the package manager
Version specific

[ ] 1.3.3637.72

Start Connection: If the connection is started on the setup step.

[x] True
[ ] False

Runner Types:

[x] Tested on GitHub-hosted runner

Tested on Self-Hosted runner
If it runs on a self-hosted runner:

[ ] Manage Self-hosted
[ ] Action Runner Controller (ARC) (a Kubernetes Operator)

It is related to the Issue https://github.com/nathanielvarona/pritunl-client-github-action/issues/93 feature request.


[ODC] - Get Page Source - The driver is failing with a 500 fetch error

Issue Summary
I’m encountering an internal error when running a command with the RokuDriver and the ODC context. The error message indicates a TypeError: fetch failed.
I'm using the most updated Node + Appium + Appium inspector versions.
Context and Additional Information
We are trying to use the ODC context instead of ECP because our team is attempting to add custom arguments to the DOM file, such as the automationID. However, we are not able to view the automationID argument while reading the DOM file with the default configuration.
Capabilities used:
{
  "platformName": "roku",
  "appium:automationName": "roku",
  "appium:app": "/Users/sebastian.mesa/Downloads/redacted.zip",
  "appium:ip": "<IP_ADDRESS>",
  "appium:password": "rokupass",
  "appium:context": "ODC"
}

Steps to Reproduce

Set up the RokuDriver with the above capabilities.
Start a Appium Inspector session using those caps.
Observe the error in the server terminal: TypeError: fetch failed.

The session is starting using the Appium Inspector, and the App is installed in my Roku device, but the page source it's not loading:

What did I already try?

[Appium] Requiring driver at<EMAIL_ADDRESS>[Appium] RokuDriver has been successfully loaded in 0.419s
[Appium] Appium REST http interface listener started on http://<IP_ADDRESS>:4723
[Appium] You can provide the following URLs in your client code to connect to this server:
	http://<IP_ADDRESS>:4723/ (only accessible from the same host)
	http://<IP_ADDRESS>:4723/
[Appium] Available drivers:
[Appium]   -<EMAIL_ADDRESS>(automationName 'roku')
[Appium] No plugins have been installed. Use the "appium plugin" command to install the one(s) you want to use.
[HTTP] --> POST /session {"capabilities":{"alwaysMatch":{"platformName":"roku","appium:automationName":"roku","appium:app":"/Users/sebastian.mesa/Downloads/redacted.zip","appium:ip":"<IP_ADDRESS>","appium:password":"rokupass","appium:context":"ODC","appium:newCommandTimeout":3600,"appium:connectHardwareKeyboard":true},"firstMatch":[{}]},"desiredCapabilities":{"platformName":"roku","appium:automationName":"roku","appium:app":"/Users/sebastian.mesa/Downloads/redacted.zip","appium:ip":"<IP_ADDRESS>","appium:password":"rokupass","appium:context":"ODC","appium:newCommandTimeout":3600,"appium:connectHardwareKeyboard":true}}
[AppiumDriver@1c55] Calling AppiumDriver.createSession() with args: [{"platformName":"roku","appium:automationName":"roku","appium:app":"/Users/sebastian.mesa/Downloads/redacted.zip","appium:ip":"<IP_ADDRESS>","appium:password":"rokupass","appium:context":"ODC","appium:newCommandTimeout":3600,"appium:connectHardwareKeyboard":true},null,{"alwaysMatch":{"platformName":"roku","appium:automationName":"roku","appium:app":"/Users/sebastian.mesa/Downloads/redacted.zip","appium:ip":"<IP_ADDRESS>","appium:password":"rokupass","appium:context":"ODC","appium:newCommandTimeout":3600,"appium:connectHardwareKeyboard":true},"firstMatch":[{}]}]
[AppiumDriver@1c55] Event 'newSessionRequested' logged at<PHONE_NUMBER>638 (11:31:20 GMT-0500 (Colombia Standard Time))
[Appium] Attempting to find matching driver for automationName 'roku' and platformName 'roku'
[Appium] The 'roku' driver was installed and matched caps.
[Appium] Will require it at /Users/sebastian.mesa/.appium/node_modules/@dlenroc/appium-roku-driver
[Appium] Requiring driver at<EMAIL_ADDRESS>[AppiumDriver@1c55] Appium v2.10.3 creating new RokuDriver (v0.12.0) session
[AppiumDriver@1c55] Checking BaseDriver versions for Appium and RokuDriver
[AppiumDriver@1c55] Appium's BaseDriver version is 9.10.3
[AppiumDriver@1c55] RokuDriver's BaseDriver version is 9.10.3
[RokuDriver@355a] undefined
[RokuDriver@355a] Creating session with W3C capabilities: {
  "alwaysMatch": {
    "platformName": "roku",
    "appium:automationName": "roku",
    "appium:app": "/Users/sebastian.mesa/Downloads/redacted.zip",
    "appium:ip": "<IP_ADDRESS>",
    "appium:password": "rokupass",
    "appium:context": "ODC",
    "appium:newCommandTimeout": 3600,
    "appium:connectHardwareKeyboard": true
  },
  "firstMatch": [
    {}
  ]
}
[RokuDriver@355a] The following provided capabilities were not recognized by this driver:
[RokuDriver@355a]   connectHardwareKeyboard
[RokuDriver@355a] Session created with session id: 404ef6d4-4bdc-4e7f-8fe5-541aad23a532
[BaseDriver] Using local app '/Users/sebastian.mesa/Downloads/redacted.zip'
[RokuDriver@355a] Channel is already installed
[AppiumDriver@1c55] New RokuDriver session created successfully, session 404ef6d4-4bdc-4e7f-8fe5-541aad23a532 added to master session list
[AppiumDriver@1c55] Event 'newSessionStarted' logged at<PHONE_NUMBER>732 (11:31:23 GMT-0500 (Colombia Standard Time))
[RokuDriver@355a] Cached the protocol value 'W3C' for the new session 404ef6d4-4bdc-4e7f-8fe5-541aad23a532
[RokuDriver@355a] Responding to client with driver.createSession() result: {"capabilities":{"platformName":"roku","automationName":"roku","app":"/Users/sebastian.mesa/Downloads/redacted.zip","ip":"<IP_ADDRESS>","password":"rokupass","context":"ODC","newCommandTimeout":3600,"connectHardwareKeyboard":true}}
[HTTP] <-- POST /session 200 3129 ms - 432
[404ef6d4][HTTP] --> GET /session/404ef6d4-4bdc-4e7f-8fe5-541aad23a532/screenshot {}
[404ef6d4][RokuDriver@355a] Calling AppiumDriver.getScreenshot() with args: ["404ef6d4-4bdc-4e7f-8fe5-541aad23a532"]
[404ef6d4][RokuDriver@355a] Responding to client with driver.getScreenshot() result: "/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAARCALQBQADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD5/ooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAC...
[404ef6d4][HTTP] <-- GET /session/404ef6d4-4bdc-4e7f-8fe5-541aad23a532/screenshot 200 1136 ms - 28480
[404ef6d4][HTTP] --> GET /session/404ef6d4-4bdc-4e7f-8fe5-541aad23a532/window/rect {}
[404ef6d4][RokuDriver@355a] Calling AppiumDriver.getWindowRect() with args: ["404ef6d4-4bdc-4e7f-8fe5-541aad23a532"]
[404ef6d4][RokuDriver@355a] Encountered internal error running command: NotYetImplementedError: Method has not yet been implemented
    at RokuDriver.executeCommand (/Users/sebastian.mesa/.appium/node_modules/@dlenroc/appium-roku-driver/node_modules/@appium/base-driver/lib/basedriver/driver.ts:100:13)
    at processTicksAndRejections (node:internal/process/task_queues:95:5)
[404ef6d4][HTTP] <-- GET /session/404ef6d4-4bdc-4e7f-8fe5-541aad23a532/window/rect 405 21 ms - 406
[404ef6d4][HTTP] --> GET /session/404ef6d4-4bdc-4e7f-8fe5-541aad23a532/source {}
[404ef6d4][RokuDriver@355a] Calling AppiumDriver.getPageSource() with args: ["404ef6d4-4bdc-4e7f-8fe5-541aad23a532"]
[404ef6d4][RokuDriver@355a] Encountered internal error running command: TypeError: fetch failed
    at node:internal/deps/undici/undici:13193:13
    at processTicksAndRejections (node:internal/process/task_queues:95:5)
    at execute (file:///Users/sebastian.mesa/.appium/node_modules/@dlenroc/appium-roku-driver/node_modules/@dlenroc/roku-odc/src/internal/execute.ts:45:20)
    at getAppUI (file:///Users/sebastian.mesa/.appium/node_modules/@dlenroc/appium-roku-driver/node_modules/@dlenroc/roku-odc/src/commands/getAppUI.ts:10:20)
[404ef6d4][HTTP] <-- GET /session/404ef6d4-4bdc-4e7f-8fe5-541aad23a532/source 500 23 ms - 600
[404ef6d4][HTTP] --> GET /session/404ef6d4-4bdc-4e7f-8fe5-541aad23a532/timeouts {}
[404ef6d4][RokuDriver@355a] Calling AppiumDriver.getTimeouts() with args: ["404ef6d4-4bdc-4e7f-8fe5-541aad23a532"]
[404ef6d4][RokuDriver@355a] Responding to client with driver.getTimeouts() result: {"command":3600000,"implicit":0}
[404ef6d4][HTTP] <-- GET /session/404ef6d4-4bdc-4e7f-8fe5-541aad23a532/timeouts 200 7 ms - 42
[404ef6d4][HTTP] --> GET /session/404ef6d4-4bdc-4e7f-8fe5-541aad23a532/timeouts {}
[404ef6d4][RokuDriver@355a] Calling AppiumDriver.getTimeouts() with args: ["404ef6d4-4bdc-4e7f-8fe5-541aad23a532"]
[404ef6d4][RokuDriver@355a] Responding to client with driver.getTimeouts() result: {"command":3600000,"implicit":0}
[404ef6d4][HTTP] <-- GET /session/404ef6d4-4bdc-4e7f-8fe5-541aad23a532/timeouts 304 3 ms - -
[404ef6d4][HTTP] --> GET /session/404ef6d4-4bdc-4e7f-8fe5-541aad23a532/timeouts {}
[404ef6d4][RokuDriver@355a] Calling AppiumDriver.getTimeouts() with args: ["404ef6d4-4bdc-4e7f-8fe5-541aad23a532"]
[404ef6d4][RokuDriver@355a] Responding to client with driver.getTimeouts() result: {"command":3600000,"implicit":0}
[404ef6d4][HTTP] <-- GET /session/404ef6d4-4bdc-4e7f-8fe5-541aad23a532/timeouts 304 6 ms - -
[404ef6d4][HTTP] --> GET /session/404ef6d4-4bdc-4e7f-8fe5-541aad23a532/timeouts {}
[404ef6d4][RokuDriver@355a] Calling AppiumDriver.getTimeouts() with args: ["404ef6d4-4bdc-4e7f-8fe5-541aad23a532"]
[404ef6d4][RokuDriver@355a] Responding to client with driver.getTimeouts() result: {"command":3600000,"implicit":0}
[404ef6d4][HTTP] <-- GET /session/404ef6d4-4bdc-4e7f-8fe5-541aad23a532/timeouts 304 26 ms - -
[404ef6d4][HTTP] --> GET /session/404ef6d4-4bdc-4e7f-8fe5-541aad23a532/timeouts {}
[404ef6d4][RokuDriver@355a] Calling AppiumDriver.getTimeouts() with args: ["404ef6d4-4bdc-4e7f-8fe5-541aad23a532"]
[404ef6d4][RokuDriver@355a] Responding to client with driver.getTimeouts() result: {"command":3600000,"implicit":0}
[404ef6d4][HTTP] <-- GET /session/404ef6d4-4bdc-4e7f-8fe5-541aad23a532/timeouts 304 6 ms - -
[404ef6d4][HTTP] --> GET /session/404ef6d4-4bdc-4e7f-8fe5-541aad23a532/timeouts {}
[404ef6d4][RokuDriver@355a] Calling AppiumDriver.getTimeouts() with args: ["404ef6d4-4bdc-4e7f-8fe5-541aad23a532"]
[404ef6d4][RokuDriver@355a] Responding to client with driver.getTimeouts() result: {"command":3600000,"implicit":0}
[404ef6d4][HTTP] <-- GET /session/404ef6d4-4bdc-4e7f-8fe5-541aad23a532/timeouts 304 13 ms - -
[404ef6d4][HTTP] --> GET /session/404ef6d4-4bdc-4e7f-8fe5-541aad23a532/timeouts {}
[404ef6d4][RokuDriver@355a] Calling AppiumDriver.getTimeouts() with args: ["404ef6d4-4bdc-4e7f-8fe5-541aad23a532"]
[404ef6d4][RokuDriver@355a] Responding to client with driver.getTimeouts() result: {"command":3600000,"implicit":0}
[404ef6d4][HTTP] <-- GET /session/404ef6d4-4bdc-4e7f-8fe5-541aad23a532/timeouts 304 6 ms - -
[404ef6d4][HTTP] --> GET /session/404ef6d4-4bdc-4e7f-8fe5-541aad23a532/timeouts {}
[404ef6d4][RokuDriver@355a] Calling AppiumDriver.getTimeouts() with args: ["404ef6d4-4bdc-4e7f-8fe5-541aad23a532"]
[404ef6d4][RokuDriver@355a] Responding to client with driver.getTimeouts() result: {"command":3600000,"implicit":0}
[404ef6d4][HTTP] <-- GET /session/404ef6d4-4bdc-4e7f-8fe5-541aad23a532/timeouts 304 6 ms - -

Any help would be really appreciated!!
Thanks! 🚀

Hi @semeguze, could you please confirm if the ODC server injected into your application by the driver is functioning correctly?

Check the Roku BrightScript logs while performing the steps mentioned:
nc <device-ip> 8085 # for Linux/Mac
telnet <device-ip> 8085 # for Windows

📝 This may reveal app instrumentation issues.

After installing and running the application using Automation/Inspector + Roku Driver, execute the following requests:
curl http://<device-ip>:8061/registry  # Registry state
curl http://<device-ip>:8061/app-ui    # XML Page source

📝 This will indicate if the ODC server launches with the app and whether the issue pertains to the page source or the entire server. Please review BrightScript logs during these requests as well.

Thanks for your response!!!
I'm sorry for the late reply, I was a bit busy with other endeavors!

Regarding:
nc <device-ip> 8085

It's working fine, and listening to logs ✅

curl http://<device-ip>:8061/registry

Returns the App registry as expected with the app values ✅

curl http://<device-ip>:8061/app-ui

This one is giving an error! 🤔
The endpoint is infinitely loading, but if I take a look to the logs, it's generating a crash!
BrightScript Micro Debugger.
Enter any BrightScript statement, debug commands, or HELP.

Suspending threads...
[...]
Thread selected:  1*   ...ialization/toSerializable.brs(20)       for each item in source.items()

Current Function:
012:      end for
013:
014:      return results
015:    end if
016:
017:    if getInterface(source, "ifAssociativeArray") <> invalid
018:      result = {}
019:
020:*     for each item in source.items()
021:        value = item.value
022:
023:        if getInterface(value, "ifSGNodeField") <> invalid
024:          value = value.getField("id")
Source Digest(s):
pkg:                       dev   0.00.0 00000000 Redacted App |<PHONE_NUMBER>00REDACTED000000000000

[...]

Function Call Operator ( ) attempted on non-function. (runtime error &he0) in pkg:/components/odc/helpers/serialization/toSerializable.brs(20)
Backtrace:
#9  Function odc_toserializable(source As Object) As Object
   file/line: pkg:/components/odc/helpers/serialization/toSerializable.brs(20)
#8  Function odc_toserializable(source As Object) As Object
   file/line: pkg:/components/odc/helpers/serialization/toSerializable.brs(27)
#7  Function odc_toserializable(source As Object) As Object
   file/line: pkg:/components/odc/helpers/serialization/toSerializable.brs(11)
#6  Function odc_toserializable(source As Object) As Object
   file/line: pkg:/components/odc/helpers/serialization/toSerializable.brs(27)
#5  Function odc_toserializable(source As Object) As Object
   file/line: pkg:/components/odc/helpers/serialization/toSerializable.brs(27)
#4  Function $anon_6a2(target As Object, node As Object, fieldkey As String) As Void
   file/line: pkg:/components/odc/helpers/serialization/toXML.brs(79)
#3  Function $anon_6a1(target As Object, node As Object) As Void
   file/line: pkg:/components/odc/helpers/serialization/toXML.brs(30)
#2  Function $anon_6a0(target As Object, node As Object) As Void
   file/line: pkg:/components/odc/helpers/serialization/toXML.brs(12)
#1  Function odc_toxml(source As Object, fields As Object) As String
   file/line: pkg:/components/odc/helpers/serialization/toXML.brs(89)
#0  Function odc_getappui(fields As Object) As String
   file/line: pkg:/components/odc/client.brs(4)
Local Variables:
source           roAssociativeArray refcnt=4 count:1
global           Interface:ifGlobal
m                roAssociativeArray refcnt=8 count:48
results          <uninitialized>
index            <uninitialized>
result           roAssociativeArray refcnt=1 count:0
item             <uninitialized>
value            <uninitialized>
Threads:
ID    Location                                Source Code
 0    pkg:/source/index.brs(69)                 msg = wait(300000, gaa.mainPort)
 1*   ...ialization/toSerializable.brs(20)       for each item in source.items()

 [...]

Using [...] to avoid sharing some extra data.
@dlenroc thanks for your help! 🙂

A fix for this issue was implemented via https://github.com/dlenroc/node-roku/pull/112 and released as<EMAIL_ADDRESS>Could you please try reinstalling the Roku driver in Appium and check if the issue is resolved?
appium driver uninstall roku
appium driver install --source npm @dlenroc/appium-roku-driver

Thanks for the fix!! 🙌
Looks like that's fixed, but now there's another crash:
BrightScript Micro Debugger.
Enter any BrightScript statement, debug commands, or HELP.

Suspending threads...
Thread selected:  1*   ...lpers/serialization/toXML.brs(91)     return xml.genXML(false)

Current Function:
083:            target.addAttribute(fieldKey, odc_toString(fieldValue))
084:          end if
085:        end if
086:      end sub
086:
087:    }
088:
089:    scope.render(xml, source)
090:
091:*   return xml.genXML(false)
092:  end function
Source Digest(s):
[...]

Execution timeout (runtime error &h23) in pkg:/components/odc/helpers/serialization/toXML.brs(91)
Backtrace:
#1  Function odc_toxml(source As Object, fields As Object) As String
   file/line: pkg:/components/odc/helpers/serialization/toXML.brs(91)
#0  Function odc_getappui(fields As Object) As String
   file/line: pkg:/components/odc/client.brs(4)
Local Variables:
source           roSGNode:MainScene refcnt=1
fields           roInvalid refcnt=3
global           Interface:ifGlobal
m                roAssociativeArray refcnt=3 count:52
xml              roXMLElement refcnt=1
scope            roAssociativeArray refcnt=1 count:4
Threads:
ID    Location                                Source Code
 0    pkg:/source/index.brs(69)                 msg = wait(300000, gaa.mainPort)
[...]

Thanks for letting me know. Fixing that is challenging because it's related to the timeout Roku imposes on the render thread. I'll explore ways to speed it up tomorrow.
You could try restarting the app to check if the issue persists when requesting only the attributes you're interested in:
http://<device-ip>:8061/app-ui?fields={"*":["id", "automationID"]}

If this approach works, you can specify which attributes should be returned by the getPageSource command using the appium:settings capability:
{ "appium:settings[elementResponseAttributes]": "automationID,id,uri,selected,visible,focused,text,bounds,DynamicKeyGrid/keyFocused" }

Well, that worked!! thanks a lot 🙌

I will investigate a bit more about how we can implement this in our team, thanks!

Also one last question, do you know if it's possible to also get the automationID value, using the default ECP context? - Thanks!

Unfortunately, I'm not aware of any way to retrieve an app representation containing custom attributes through the ECP API 😢


Incorrect type inference for shift operators

Reporting a bug

[ x] I have tried using the latest released version of Numba (most recent is
visible in the change log (https://github.com/numba/numba/blob/main/CHANGE_LOG).
[x ] I have included a self contained code sample to reproduce the problem.
i.e. it's possible to run as 'python bug.py'.

The following code fails to compile with the error
No implementation of function Function() found for signature: >>> rshift(float64, Literal[int](1)), incorrectly inferring that x is a float64 when it should be a uint64.
@jitclass
class Class:
    x: uint64
    def __init__(self, x: uint64):
        self.x = x

@njit
def f() -> uint64:
    obj = Class(1)
    x = obj.x
    for _ in range(1):
        x = x >> 1  # or <<
        x = x + 1
    return x

f()

As far as I can tell, all of the following components are necessary to trigger the bug:

The variable is a member of a jitclass
The shift is in a loop
There is another operation in the loop

Yes, that works, and in fact it also works without annotating the 1 on the x >> 1. It only needs either
x = unit64(x) >> 1
or
x = x + uint64(1)
and it works as expected.

I think what you are seeing is the result of how Numba infers types - I think the rationale behind this is explained in https://numba.readthedocs.io/en/stable/proposals/integer-typing.html

Thank you for the link. I read through it and didn't see how it would explain this behavior. In fact, this appears to resemble a situation described in Current semantics, which the proposal is intended to rectify:

In trying to follow the correctness over predictability rule, some values can actually leave the integer realm. For example, int64 + uint64 is typed float64 in order to avoid magnitude losses (but incidentally will lose precision on large integer values…), again following Numpy’s semantics for scalars. This is usually not intended by the user.

All of the behaviors described under Proposal: predictable width-conserving typing suggest to me that it should be inferred to be an int.


create recurring issue to update dates for copyright, license

Create a recurring issue to update dates for copyright and license using GitHub Actions.

This repository doesn't have either a copyright or license, so this is unnecessary.

Added license, so this is relevant now.


Enable connect adapter service development when core runs in Docker

Opposed to processors and sinks that are passively registered by the core of StreamPipes via the service discovery feature in Consul, connect adapter services actively register their service description at the core service. Therefore, the URL of the core is retrieved via Consul which points to the core container IP address (commonly "http://172.x.x.x:8030") which can't be resolved from the local IDE environment.
Option A
Adapter developers can manipulate the docker-compose description of the backend service by adding an "SP_HOST" environment variable with their local machine's IP address. Thereby, the core of StreamPipes registers under this IP at Consul which can be resolved from the local IDE, e.g., with the URL "http://192.x.x.x:8030".
Option B
Adapter developers can simply use the "SP_DEBUG=true" environment variable in the run configuration of a connect adapter service to remap the retrieved URL from "http://172.x.x.x:8030" to "http://localhost:8030".

Note: this allows applies for hybrid service definitions containing, e.g., extensions-all-jvm, as it contains adapter services that currently try to actively register at the core.
Imported from Jira STREAMPIPES-523. Original Jira may contain additional context.
Reported by: wiener.

This is already possible


Blank screen after setting up a password as a new staff member

What I'm trying to achieve
To set up a password as a new staff member and log in to the dashboard.
Steps to reproduce the problem

Click on the link to set up a password in the email.
Fill the form with two identical passwords and click "Set new password".
Blank page.

What I expected to happen
To log in to the dashboard with my new password I guess.
Screenshots

The console says:
misc.ts:147 Uncaught TypeError: Invalid attempt to spread non-iterable instance
    at _nonIterableSpread (misc.ts:147)
    at _toConsumableArray (misc.ts:145)
    at eval (misc.ts?702e:255)
    at Array.reduce (<anonymous>)
    at getMutationStatus (misc.ts?702e:253)
    at Object.eval [as children] (mutations.tsx?4a54:63)
    at Mutation (react-components.esm.js?bdb7:30)
    at renderWithHooks (react-dom.development.js?61bb:16241)
    at updateFunctionComponent (react-dom.development.js?61bb:18328)
    at beginWork$1 (react-dom.development.js?61bb:20151)
_nonIterableSpread @ misc.ts:147
_toConsumableArray @ misc.ts:145
eval @ misc.ts?702e:255
getMutationStatus @ misc.ts?702e:253
eval @ mutations.tsx?4a54:63
Mutation @ react-components.esm.js?bdb7:30
renderWithHooks @ react-dom.development.js?61bb:16241
updateFunctionComponent @ react-dom.development.js?61bb:18328
beginWork$1 @ react-dom.development.js?61bb:20151
callCallback @ react-dom.development.js?61bb:336
invokeGuardedCallbackDev @ react-dom.development.js?61bb:385
invokeGuardedCallback @ react-dom.development.js?61bb:440
beginWork$$1 @ react-dom.development.js?61bb:25738
performUnitOfWork @ react-dom.development.js?61bb:24662
workLoopSync @ react-dom.development.js?61bb:24638
performSyncWorkOnRoot @ react-dom.development.js?61bb:24237
eval @ react-dom.development.js?61bb:12180
unstable_runWithPriority @ scheduler.development.js?3069:818
runWithPriority$2 @ react-dom.development.js?61bb:12130
flushSyncCallbackQueueImpl @ react-dom.development.js?61bb:12175
flushSyncCallbackQueue @ react-dom.development.js?61bb:12163
scheduleUpdateOnFiber @ react-dom.development.js?61bb:23676
dispatchAction @ react-dom.development.js?61bb:17057
MutationData.updateResult @ react-hooks.esm.js?b6d6:503
MutationData.onMutationCompleted @ react-hooks.esm.js?b6d6:471
eval @ react-hooks.esm.js?b6d6:415
Promise.then (async)
MutationData._this.runMutation @ react-hooks.esm.js?b6d6:414
handleSubmit @ NewPassword.tsx?2183:30
submit @ useForm.ts?6329:110
callCallback @ react-dom.development.js?61bb:336
invokeGuardedCallbackDev @ react-dom.development.js?61bb:385
invokeGuardedCallback @ react-dom.development.js?61bb:440
invokeGuardedCallbackAndCatchFirstError @ react-dom.development.js?61bb:454
executeDispatch @ react-dom.development.js?61bb:584
executeDispatchesInOrder @ react-dom.development.js?61bb:609
executeDispatchesAndRelease @ react-dom.development.js?61bb:713
executeDispatchesAndReleaseTopLevel @ react-dom.development.js?61bb:722
forEachAccumulated @ react-dom.development.js?61bb:694
runEventsInBatch @ react-dom.development.js?61bb:739
runExtractedPluginEventsInBatch @ react-dom.development.js?61bb:880
handleTopLevel @ react-dom.development.js?61bb:5807
batchedEventUpdates$1 @ react-dom.development.js?61bb:24368
batchedEventUpdates @ react-dom.development.js?61bb:1419
dispatchEventForPluginEventSystem @ react-dom.development.js?61bb:5898
attemptToDispatchEvent @ react-dom.development.js?61bb:6014
dispatchEvent @ react-dom.development.js?61bb:5918
unstable_runWithPriority @ scheduler.development.js?3069:818
runWithPriority$2 @ react-dom.development.js?61bb:12130
discreteUpdates$1 @ react-dom.development.js?61bb:24384
discreteUpdates @ react-dom.development.js?61bb:1442
dispatchDiscreteEvent @ react-dom.development.js?61bb:5885
react_devtools_backend.js:6 The above error occurred in the <Mutation> component:
    in Mutation
    in Unknown (created by NewPassword)
    in NewPassword (created by Context.Consumer)
    in Route (created by AuthRouter)
    in Switch (created by AuthRouter)
    in div (created by Layout)
    in div (created by Layout)
    in div (created by Layout)
    in Layout (created by AuthRouter)
    in AuthRouter (created by AuthProvider)
    in AuthProvider (created by Mutation)
    in Mutation
    in Unknown (created by Mutation)
    in Mutation
    in Unknown (created by AuthProviderOperations)
    in AuthProviderOperations (created by Routes)
    in Routes (created by App)
    in Query
    in Unknown (created by ShopProvider)
    in ShopProvider (created by App)
    in AppStateProvider (created by App)
    in MessageManager (created by App)
    in IntlProvider (created by LocaleProvider)
    in LocaleProvider (created by App)
    in DateProvider (created by App)
    in ThemeProvider (created by ThemeProvider)
    in ThemeProvider (created by App)
    in Router (created by BrowserRouter)
    in BrowserRouter (created by App)
    in ApolloProvider (created by App)
    in App

It's probably related to a null value in errors.  #5415

Finally we got the solutions ->
Just hit -> python manage.py populatedb

Closing the issue here.


The plugin text should take into consideration the Appearance Zoom IDE setting

The plugin text should take into consideration the Zoom value, for example the welcome text and other content which uses fixed font size.

Done


Grafana recommended dashboard?

Thanks for your work.
Is there any recommended dashboard matching systemd_exporter features?
https://grafana.com/grafana/dashboards/?search=systemd+exporter gets nothing

+1

Thanks for your work.
Is there any recommended dashboard matching systemd_exporter features? https://grafana.com/grafana/dashboards/?search=systemd+exporter gets nothing

+1

+1

I'd been using https://grafana.com/grafana/dashboards/1617-systemd-service-dashboard/ but now that I look, that's for (old) node_exporter with systemd collector...

Also curious about this!

Same here

+1


[SPARK-49962][SQL] Simplify AbstractStringTypes class hierarchy

What changes were proposed in this pull request?
Simplifying the AbstractStringType hierarchy.
Why are the changes needed?
The addition of trim-sensitive collation (#48336) highlighted the complexity of extending the existing AbstractStringType structure. Besides adding a new parameter to all types inheriting from AbstractStringType, it caused changing the logic of every subclass as well as changing the name of a derived class StringTypeAnyCollation into StringTypeWithCaseAccentSensitivity which could again be subject to change if we keep adding new specifiers.
Looking ahead, the introduction of support for indeterminate collation would further complicate these types. To address this, the proposed changes simplify the design by consolidating common logic into a single base class. This base class will handle core functionality such as trim or indeterminate collation, while a derived class, StringTypeWithCollation, will manage collation specifiers.
This approach allows for easier future extensions: fundamental checks can be handled in the base class, while any new specifiers can be added as optional fields in StringTypeWithCollation.
Does this PR introduce any user-facing change?
No.
How was this patch tested?
With existing tests.
Was this patch authored or co-authored using generative AI tooling?

No.

@uros-db @jovanpavl-db Please take a look and let me know if this makes sense

also, let's just mention in the PR description that we're also doing some renaming (which is most of the code changes in this PR I'd say)


[Playground] [Backend] Removing unused snippets manually and using the scheduled task

fixes #22296
Removing unused code snippets in the Google Cloud Datastore using the last visit date for filtering
@VladMatyunin
This PR depends on next PRs:

[Bug fix] #22310

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[x] Choose reviewer(s) and mention them in a comment (R: @username).
[x] Mention the appropriate issue in your description (for example: addresses #123), if applicable. This will automatically add a link to the pull request in the issue. If you would like the issue to automatically close on merging the pull request, comment fixes #<ISSUE NUMBER> instead.
[ ] Update CHANGES.md with noteworthy changes.
[x] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.
To check the build health, please visit https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md
GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI.

R: @pabloem

lgtm


I got version compatibility issue.

I tried to run your app in the android platform but it says I got library compatibility issue.
So should I add the library manually?

Hey Igor, I need more details about your RN version, system info etc..


stack feature

it would be great if you add the stack feature to stack multiple toast on top of each others
like what implemented in here https://vue-sonner.vercel.app/

Thank you very much for your suggestion. We may achieve such an effect in the future. Because there are thousands of people, there is no guarantee that such an interactive experience will be recognized by others.


Kuma annotation is in the wrong place

The Kong chart has Kuma annotations on the deployment object:
https://github.com/Kong/charts/blob/b2fdb547d53915949a24abe4ee2fe00cecb1df9f/charts/kong/values.yaml#L607-L608
where Kuma expects these annotations on the Kong pods (not the deployment). These should be under line 597:
https://github.com/Kong/charts/blob/b2fdb547d53915949a24abe4ee2fe00cecb1df9f/charts/kong/values.yaml#L597

Relevant Kuma code:
https://github.com/kumahq/kuma/blob/ee3bed1b47191ee530787b087e48d8314b65da0b/pkg/transparentproxy/kubernetes/kubernetes.go#L63

https://github.com/Kong/charts/issues/505


A Database is not a DataFormat

Description of the issue
Database is subclass of DataFormat right now. It needs a reclassification because a Database is a collection of data that can be stored in different formats.
And it needs a def.
Ideas of solution
Make it subclass of data set
Def:  A Database is a data set that is structured and is stored electronically.
Workflow checklist

[ ] I discussed the issue with someone else than me before working on a solution
[ ] I already read the latest version of the workflow for this repository
[ ] The goal of this ontology is clear to me

I am aware that

[ ] every entry in the ontology should have an annotation
[ ] classes should arise from concepts rather than from words
[ ] class or property names should follow the UpperCamelCase

february ontoHack results:

reclassify as: information content entity
has_part data item
def: a database is an information content entity that stores data items and data sets


Adding a common name to the cfg

To detect or use. people call self driving car SDC, or skybot sky most of the time

What inspired this feature? Would you expect a GUI to use this / would you try to convince everybody to fill it in?

Twitch comment detection for the cheering bars on the overlay.
Cheer detection was hacky at best, this would improve it using only the most common name people use, and it's full name.
It could also be used for a name overlay if the name is too big to fit

One other use could be for CleoPetra, which could use this too to generate team names based on the bots on the team.


surfing request to wrong host

Subject: surfing request to wrong host
Description:
I send a request to https://couchers.org/user/franco/home
Results:
A request was sent to Angelo Cozzolino, 45, Milan, Lombardy, Italy instead.
Backend version: develop-948446a4
Frontend version:
User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36
Page: https://couchers.org/user/franco/home
User: peterp (21147)

can't reproduce


dataset

Does your dataset which you had publish contain the methane leakage?

When I loaded the labels, they seem to be only zero values. Help please