BUG:  Backward hook with shap.DeepExplainer on simple models with PyTorch

Issue Description
Hi,
I'm trying to implement a Deep Explainer for a Resnet50 imported from Torchvision and executed on cifar100. The basic implementation is not working because of an in-place modification not supported by Pytorch (but probably in Keras/TF). Do you know if there is a way to fix this? The error I saw was a warning in the past, but now it stops my code.
Thanks in advance.
Minimal Reproducible Example
import torch
from torchvision import models, datasets, transforms
import shap

model = models.resnet50(pretrained=True)

dataset = datasets.CIFAR100(root="./",
                            download=True,
                            train=True,
                            transform=transforms.ToTensor())

dataloader  = torch.utils.data.DataLoader(dataset, batch_size=8, shuffle=True, num_workers=1)

for images, labels in dataloader: break

e = shap.DeepExplainer(model, images )
shap_values = e.shap_values( images )

Traceback
Traceback (most recent call last):
  File "xai.py", line 339, in <module>
    shap_values = e.shap_values(test_images)
  File "/usr/local/lib/python3.8/dist-packages/shap/explainers/_deep/__init__.py", line 125, in shap_values
    return self.explainer.shap_values(X, ranked_outputs, output_rank_order, check_additivity=check_additivity)
  File "/usr/local/lib/python3.8/dist-packages/shap/explainers/_deep/deep_pytorch.py", line 191, in shap_values
    sample_phis = self.gradient(feature_ind, joint_x)
  File "/usr/local/lib/python3.8/dist-packages/shap/explainers/_deep/deep_pytorch.py", line 107, in gradient
    outputs = self.model(*X)
  File "/usr/local/lib/python3.8/dist-packages/torch/nn/modules/module.py", line 1110, in _call_impl
    return forward_call(*input, **kwargs)
  File "/work/project/models/resnet.py", line 168, in forward
    x = self.relu(x)    # 32x32
  File "/usr/local/lib/python3.8/dist-packages/torch/nn/modules/module.py", line 1128, in _call_impl
    result = forward_call(*input, **kwargs)
  File "/usr/local/lib/python3.8/dist-packages/torch/nn/modules/activation.py", line 98, in forward
    return F.relu(input, inplace=self.inplace)
  File "/usr/local/lib/python3.8/dist-packages/torch/nn/functional.py", line 1440, in relu
    result = torch.relu_(input)
RuntimeError: Output 0 of BackwardHookFunctionBackward is a view and is being modified inplace. This view was created inside a custom Function (or because an input was returned as-is) and the autograd logic to handle view+inplace would override the custom backward associated with the custom Function, leading to incorrect gradients. This behavior is forbidden. You can fix this by cloning the output of the custom Function.

Expected Behavior
No response
Bug report checklist

[X] I have checked that this issue has not already been reported.
[X] I have confirmed this bug exists on the latest release of shap.
[x] I have confirmed this bug exists on the master branch of shap.
[ ] I'd be interested in making a PR to fix this bug

Installed Versions
I just installed SHAP with PIP, so I'm using the lastest available.

Thanks for the reproducible example. I can confirm this on master.
I will have a look at this in the upcoming weeks.

Puuhh, this seems pretty tough to fix. I tried to set every ReLU activation to inplace=False but that still fails at the line
out += identity

of the resnet module with the same error. Strangely this works if I replace it with
out = out + identity

but then the shapes mismatch.

I am attempting to apply DeepExplainer for resnet50 and densenet121 and I am getting BackwardHookFunctionBackward  error msg. I tried to modify the ReLU activation to disable the inplace operation by setting it to False. I am using the following approach to update the inplace:
`class ModifiedDenseNet121(nn.Module):
def init(self, pretrained=True, input_channels=3, num_classes=1000):
super(ModifiedDenseNet121, self).init()
self.densenet = models.densenet121(weights=DenseNet121_Weights.DEFAULT if pretrained else None)
    if input_channels != 3:
        self.densenet.features[0] = nn.Conv2d(input_channels, 64, kernel_size=7, stride=2, padding=3, bias=False)
    self.densenet.classifier = nn.Linear(self.densenet.classifier.in_features, num_classes)

    # Fix the usage of ReLU activation with inplace=True
    for module in self.densenet.modules():
        if isinstance(module, nn.ReLU):
            module.inplace = False

def forward(self, x):
    return self.densenet(x)`

However, I'm still encountering a runtime error: RuntimeError: Output 0 of BackwardHookFunctionBackward is a view and is being modified inplace. Any guidance or updates on how to resolve this error would be greatly appreciated. Thank you!

+1.
Any update?

I'm trying to use it on efficientnet-based model, had to go to efficientnet.py under torchvision.models to modify:
result += input

to
result = result + input

And it worked.

https://github.com/shap/shap/issues/3725#issuecomment-2202052886

Found the solution: for every layers make sure they are not forwarded twice. Especially for activation functions which are typically stored as a class attribute and used multiple times in the forward method.

For shape mismatch, this solution may be useful. It works on ResNet50/101/152.

#3725 (comment)

Found the solution: for every layers make sure they are not forwarded twice. Especially for activation functions which are typically stored as a class attribute and used multiple times in the forward method.

For shape mismatch, this solution may be useful. It works on ResNet50/101/152.

How did you fix it in ResNet152 exactly? I'm having the same problem with shape mismatches (but in the backward of a ReLU)
The grad_output has 512 channels instead of the 2048 channels in the forward pass 😨

#3725 (comment)

Found the solution: for every layers make sure they are not forwarded twice. Especially for activation functions which are typically stored as a class attribute and used multiple times in the forward method.

For shape mismatch, this solution may be useful. It works on ResNet50/101/152.

How did you fix it in ResNet152 exactly? I'm having the same problem with shape mismatches (but in the backward of a ReLU) The grad_output has 512 channels instead of the 2048 channels in the forward pass 😨

First I changed the out += identity to out = out + identity as above. Then I found the ReLU layer in BottleNeck is used multiple times. So I replace the original self.relu in Bottleneck.init by:
        self.relu1 = nn.ReLU(inplace=True)
        self.relu2 = nn.ReLU(inplace=True)
        self.relu3 = nn.ReLU(inplace=True)

and the forward function:
    def forward(self, x: Tensor) -> Tensor:
        identity = x

        out = self.conv1(x)
        out = self.bn1(out)
        out = self.relu1(out)

        out = self.conv2(out)
        out = self.bn2(out)
        out = self.relu2(out)

        out = self.conv3(out)
        out = self.bn3(out)

        if self.downsample is not None:
            identity = self.downsample(x)

        out = out + identity
        out = self.relu3(out)

        return out

It's worth mentioning that my experiments are based on LAV models (no bugs at least), where ResNet is just the backbone.

#3725 (comment)

Found the solution: for every layers make sure they are not forwarded twice. Especially for activation functions which are typically stored as a class attribute and used multiple times in the forward method.

For shape mismatch, this solution may be useful. It works on ResNet50/101/152.

How did you fix it in ResNet152 exactly? I'm having the same problem with shape mismatches (but in the backward of a ReLU) The grad_output has 512 channels instead of the 2048 channels in the forward pass 😨

First I changed the out += identity to out = out + identity as above. Then I found the ReLU layer in BottleNeck is used multiple times. So I replace the original self.relu in Bottleneck.init by:
        self.relu1 = nn.ReLU(inplace=True)
        self.relu2 = nn.ReLU(inplace=True)
        self.relu3 = nn.ReLU(inplace=True)

and the forward function:
    def forward(self, x: Tensor) -> Tensor:
        identity = x

        out = self.conv1(x)
        out = self.bn1(out)
        out = self.relu1(out)

        out = self.conv2(out)
        out = self.bn2(out)
        out = self.relu2(out)

        out = self.conv3(out)
        out = self.bn3(out)

        if self.downsample is not None:
            identity = self.downsample(x)

        out = out + identity
        out = self.relu3(out)

        return out

It's worth mentioning that my experiments are based on LAV models (no bugs at least), where ResNet is just the backbone.

Thanks for your fast reply.
I set check_additivity=False since the results make sense to me and resnet152 is deep (maybe some rounding errors occured..), but I'm wondering how errors like this happen, e.g. 0.034852 < 0.01 (Tolerance)!
Did you have problems with the additivity of the computed shapley values too?

#3725 (comment)

Found the solution: for every layers make sure they are not forwarded twice. Especially for activation functions which are typically stored as a class attribute and used multiple times in the forward method.

For shape mismatch, this solution may be useful. It works on ResNet50/101/152.

How did you fix it in ResNet152 exactly? I'm having the same problem with shape mismatches (but in the backward of a ReLU) The grad_output has 512 channels instead of the 2048 channels in the forward pass 😨

First I changed the out += identity to out = out + identity as above. Then I found the ReLU layer in BottleNeck is used multiple times. So I replace the original self.relu in Bottleneck.init by:
        self.relu1 = nn.ReLU(inplace=True)
        self.relu2 = nn.ReLU(inplace=True)
        self.relu3 = nn.ReLU(inplace=True)

and the forward function:
    def forward(self, x: Tensor) -> Tensor:
        identity = x

        out = self.conv1(x)
        out = self.bn1(out)
        out = self.relu1(out)

        out = self.conv2(out)
        out = self.bn2(out)
        out = self.relu2(out)

        out = self.conv3(out)
        out = self.bn3(out)

        if self.downsample is not None:
            identity = self.downsample(x)

        out = out + identity
        out = self.relu3(out)

        return out

It's worth mentioning that my experiments are based on LAV models (no bugs at least), where ResNet is just the backbone.

Thanks for your fast reply.  I set check_additivity=False since the results make sense to me and resnet152 is deep (maybe some rounding errors occured..), but I'm wondering how errors like this happen, e.g. 0.034852 < 0.01 (Tolerance)! Did you have problems with the additivity of the computed shapley values too?

Yes, #3725 also mentioned this error. If you figure it out I would be interested as well.

Yes, #3725 also mentioned this error. If you figure it out I would be interested as well.

The problem here is the adapted backpropagation through maxpool (the only maxpool before layer1).
When I let SHAP explain the input to layer1, the sum adds up to the difference, but when I let it explain the input to the maxpool, it doesn't add up anymore

Seems like the unpooling can't handle overlapping regions (when stride < kernel_size)
zero-padding seems to be fine.
Some code I experimented with:
import torch
import torch.nn as nn
import shap

x = torch.randn([1,64,112,112])*100 # in [-100,100]
r = torch.randn([1,64,112,112])*100

class MyModel(nn.Module):
    def __init__(self):
        super().__init__()
        # change kernel_size, stride and padding here
        self.maxpool = nn.MaxPool2d(kernel_size=10, stride=10, padding=5)
        self.avgpool = nn.AdaptiveAvgPool3d((1,1,1))
    def forward(self, x):
        out = self.maxpool(x)
        out = self.avgpool(out)
        return out

model = MyModel()

explainer   = shap.DeepExplainer(model, r)
shap_values = explainer.shap_values(x, check_additivity=False)

print(shap_values.sum())
print((model(x) - model(r)).item())

maybe https://github.com/shap/shap/issues/1479#issuecomment-9322340825 can explain this error, it seems to be caused by the reused layer

I'm trying to use it on efficientnet-based model, had to go to efficientnet.py under torchvision.models to modify:
result += input

to
result = result + input

And it worked.

Thanks. This does resolve the issue.


[BOT PR] to update dependencies of istio

This PR will be merged automatically once checks are successful.
none

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: istio-testing
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: geeknoid
Assign the PR to them by writing /assign @geeknoid in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@istio-testing: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-bookInfoTests-v1alpha3.sh
44a4a72df91a808e6e434dc3d16d46a0853d8088
link
/test e2e-bookInfo-envoyv2-v1alpha3

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@istio-testing: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-bookInfoTests-v1alpha3.sh
44a4a72df91a808e6e434dc3d16d46a0853d8088
link
/test e2e-bookInfo-envoyv2-v1alpha3

prow/istio-pilot-e2e-envoyv2-v1alpha3.sh
44a4a72df91a808e6e434dc3d16d46a0853d8088
link
/test istio-pilot-e2e-envoyv2-v1alpha3

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@istio-testing: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-bookInfoTests-v1alpha3.sh
44a4a72df91a808e6e434dc3d16d46a0853d8088
link
/test e2e-bookInfo-envoyv2-v1alpha3

prow/istio-pilot-e2e-envoyv2-v1alpha3.sh
44a4a72df91a808e6e434dc3d16d46a0853d8088
link
/test istio-pilot-e2e-envoyv2-v1alpha3

prow/istio-pilot-e2e.sh
44a4a72df91a808e6e434dc3d16d46a0853d8088
link
/test istio-pilot-e2e

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@istio-testing: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-bookInfoTests-v1alpha3.sh
44a4a72df91a808e6e434dc3d16d46a0853d8088
link
/test e2e-bookInfo-envoyv2-v1alpha3

prow/istio-pilot-e2e-envoyv2-v1alpha3.sh
44a4a72df91a808e6e434dc3d16d46a0853d8088
link
/test istio-pilot-e2e-envoyv2-v1alpha3

prow/istio-pilot-e2e.sh
44a4a72df91a808e6e434dc3d16d46a0853d8088
link
/test istio-pilot-e2e

prow/e2e-bookInfoTests.sh
44a4a72df91a808e6e434dc3d16d46a0853d8088
link
/test e2e-bookInfo

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.


water heat capacity should be 4184 J/kg/K, but it gives 1782.29...

Hi, trying to calculate water specific heat, and found this error.
    subt = Chemical('water')
    subt.calculate(T=273+20, P=1e5)
    subt.Cpl

Hi Jian,
I may need to develop an issue template now to gather basic information from users. Please upgrade your thermo version, try it again, and if it still doesn't work post:
What OS you use, your Python version, and your installed thermo, chemicals, and fluids versions.

Hi Caleb,
Thank you for getting back to me. Here is the info on this issue.
windows10, python 3.8 with Anaconda3, thermo  0.1.40
I installed it with 'conda install -c conda-forge thermo', but somehow it stuck with 0.1.40 version, and doesn't allow me to update to 0.2.3
Any suggestion to upgrade to the latest version is appriciated!

Hi Jian,
It is indeed a bug in an old version of thermo.
I can't help you with conda - it can be complicated sometimes.
I suggest either uninstalling anaconda, and installing it again; or uninstalling thermo and fluids with conda, and installing them with pip.
I am closing the issue as it has since been fixed.

Thank you very much! pip install fixed the version issue, and cp value looks correct in 0.2.3  :)


Availability of Perf+ boards?

Any idea if Perf+ boards are available anywhere?

Probably best to contact Ben Wang directly, his email address is at the bottom of his blog page at https://benwang.dev/2020/07/10/perf.html.


Suggestion: exit code

Given input that produces no warnings, cflint would exit with code 0.
Given input that produces warnings, cflint would exit with a non-zero code, perhaps 1.
This would allow cflint to be used as a required step in a build or deploy script.
I don't write much Java, but I would be willing to try building this if it is wanted.

so my current situation is this: I have a node app (that uses cfcs for data calls) that already has eslint configured to run on a precommit hook via husky and lint-staged.  I'd like to incorporate cflint in this workflow.
there's a npm cflint wrapper but it doesn't generate an exit code.  what I'd like is for a way to run cflint w/ an exitcode AND generate an html file
my hack for this is probably this (haven't actually built it but this is the logic)

run cflint's jar using child_process,
then parse or scrape the resulting xml/json/html file (maybe using cheerio or something) and look for "total errors" the if there is an error to set the exit code to 1 else leave it at 0...

its... a messy solution but would probably work... thats why I'd love for cflint to spit out an exit code.

It's an easy non-impact to the community if you make the exit code
dependent on a command line flag and not utilized by default.
On Thu, Jan 31, 2019 at 10:06 PM Boson Au<EMAIL_ADDRESS>wrote:

so my current situation is this: I have a node app (that uses cfcs for
data calls) that already has eslint configured to run on a precommit hook
via husky and lint-staged. I'd like to incorporate cflint in this workflow.
there's a npm cflint wrapper but it doesn't generate an exit code. what
I'd like is for a way to run cflint w/ an exitcode AND generate an html file
my hack for this is probably this (haven't actually built it but this is
the logic)

run cflint's jar using child_process,
then parse or scrape the resulting xml/json/html file (maybe using
cheerio or something) and look for "total errors" the if there is an error
to set the exit code to 1 else leave it at 0...

its... a messy solution but would probably work... thats why I'd love for
cflint to spit out an exit code.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/cflint/CFLint/issues/609#issuecomment-459589383, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AFtZu8KZ184BaoatFN_ihwtrPjoRc8Ccks5vI68mgaJpZM4Za81R
.

This would be handy for git hooks as well.

I needed this feature so I implemented it in my fork: https://github.com/NewLunarFire/CFLint/releases/tag/CFLint-1.5.0-SNAPSHOT
I supports no configuration whatsoever. It just returns a -1 exit code if there are any bugs, whatever their severity may be.
I could add a flag to enable / disable this feature, but I don't know what to call it. I could also add a flag to change which severity triggers a non-zero exit code. For example, setting this flag to warning returns zero if there are only info bugs. I am open to suggestions.

I worked on this feature today. Here is the result on my fork: https://github.com/NewLunarFire/CFLint/releases/tag/CFLint-1.5.1-SNAPSHOT
I added the -failurelevel command-line flag to define the minimum severity level to fail the lint job. If any issue arise that are of this level or higher, the program returns a non-zero exit code. For exemple, -failurelevel warning fails if any issue with severity warning, error, critical and fatal occur.


Add basic docs

We need README.md with just basis information:

Title
A small code example
A few sentences about the project
Links to OKLCH and APCA

Added


Annotated is not supported

The following snippets
@strawberry.input
class AddBookInput:
    title: str
    author: Annotated[str, "PII"]

Raises the following error when used in a schema:
TypeError: AddBookInput fields cannot be resolved. Unexpected type 'typing.Annotated[str, 'PII']'

We should add support for Annotated

I ran into this today. It would be very useful to be able to provide docstring in the type annotation instead of using field = strawberry.field(description=...) because when using classes decorated with @dataclass, that marks the field as optional and  forces all subsequent fields to have default values also.

This has been fixed recently I think. @emosenkis can you open a new issue for that, I'm pretty sure using strawberry.field shouldn't mark a field as optional


[RDBMS] PostgreSQL - Add support for cross subscription restore

Add support for cross resource group and cross-subscription restore for flexible server

Related command

Description

Testing Guide

History Notes

[Component Name 1] BREAKING CHANGE: az command a: Make some customer-facing breaking change
[Component Name 2] az command b: Add some customer-facing feature

This checklist is used to make sure that common guidelines for a pull request are followed.

[ ] The PR title and description has followed the guideline in Submitting Pull Requests.

[ ] I adhere to the Command Guidelines.

[ ] I adhere to the Error Handling Guidelines.

RDBMS


Rearrangement in preparation for 5.9 branching

embedInCode should be marked as part of 5.9
-package-name hasn't been accepted by evolution, yet, so should be using vNext
support for macros also stays intentionally behind 999.0 tools-version since it hasn't been accepted by evolution yet
Update CHANGELOG

@swift-ci please smoke test

BuildPlanTests.testPackageNameFlag needs to be updated accordingly.

cc @DougGregor re. macros
cc @nkcsgexi re. package visibility

cc: @elsh for package accessibility level.

@swift-ci please smoke test


neofetch hangs trying to load "shell" line when remoted into Windows 11 over openSSH

Description
When running in Powershell 7 when connected over OpenSSH on Windows 11, neofetch hangs during what I assume is an attempt to determine what shell it's running under. Same behavior seen in default cmd shell as well.
neofetch is installed in this case using scoop.
Also, when run locally on the machine, the shell is misidentified as Bash, instead of Powershell 7.
Neofetch version
?? latest one in scoop, unsure how to determine.
Screenshot
Remote:

Local:

Config file
Verbose log
I'm not sure where the config file lives or how to get verbose debug information on windows; the below command doesn't work. Happy to run whatever debug commands I can, just not sure what they are (Windows is not my daily driver).

Run neofetch -vv 2> neofetchlog
Upload the contents of neofetchlog to pastebin, gist or equivalent.

Aha, found the logged output. Attached what appears to be the relevant part here: https://gist.github.com/deltamualpha/3b2e03cda1ab358eb1bcefeeb0976dd2

I had similar issues. I found that the core problem is: when SSH'ing into a Windows machine, Git Bash will somehow get a different $SHELL than the local case.
Here is my output:
Local:
$ echo $SHELL
/usr/bin/bash

Remote:
$ echo $SHELL
/c/windows/system32/windowspowershell/v1.0/powershell.exe

(Note: mine is PowerShell rather than CMD like in OP, because I did set it so, as the Windows "login shell", guided by this document)
Since neither PowerShell or CMD supports --version, things will go unexpectedly.
I don't know what a long-term solution could be, but a quick fix is: in config.conf, change this line to:
shell_version="off"

Good catch! For me, it would still hang until I just commented out the Shell line entirely. I wonder if it's trying to launch a subshell by accident?


Integrating Slither

Adding Slither: https://github.com/crytic/slither
Adding in the CI as well.
The tool is already installed in app contracts: https://github.com/zeta-chain/app-contracts

@Kali-Decoder please, let me know if I should assign this issue to you.

Right now it can be run manually but the steps are a little bit annoying:
On mac
brew install solc-select
brew unlink solidity
brew link --overwrite solc-select
solc-select install 0.8.7
solc-select use 0.8.7
slither contracts/...--solc-args "--allow-paths .,./node_modules" --solc-remaps @openzeppelin=node_modules/@openzeppelin

The config for running slither could be optimized as well. End goal would to have a script doing everything

Yes you can assign me @fadeev

@Kali-Decoder

add a script that runs Slither in the scripts directory. The script should ensure that all software required for Slither to run is installed and that correct version of Solidity is used
add a script in package.json to run the script
add GitHub workflow to run the script on each PR

To run the commands mentioned, I'm utilizing a shell script. I can then add the script's run command to the package.json and incorporate it into the PR workflow.

@Kali-Decoder please, update on progress.

@Kali-Decoder please, update on progress or let me know if I can re-assign this issue. Thank you.

@Kali-Decoder the deadline for this issue is Sunday evening UTC. If you're blocked on something, please, share it here.

okay @fadeev


Istio SLO experiment

I did not fix the reporter='source' in the metrics file yet because I was thinking, this is not so much a mirroring experiment. It's more of a generic SLO test, that can be used for both the V1 and the V2 whether there is mirroring or not. Iter8 doesn't know when which version it is working with and whether there is mirroring or not. That means, it's ultimately up to the user to decide whether reporter='source' should be configured. However, there seems like kind or an odd and technical option to provide to the user. I want to discuss it first before moving forward.

The failing tests seem to be related to the unit tests I created for the database task. I think the issue has to do with differences in URL encoding between different versions and different packages. I will look into an alternative way of testing. In the mean time, ignore the unit tests.

Note that I moved the Istio metrics template from iter8lib into the istio-slo-validation. I think it is possible to move it back into iter8lib but I need to do some refactoring.

You can try it out by following these steps
Set up Minikube
https://istio.io/latest/docs/setup/platform-setup/minikube/
Install Istio
istioctl install

Install Prometheus add on
https://istio.io/latest/docs/ops/integrations/prometheus/#option-1-quick-start
Follow the mirroring tutorial
https://istio.io/latest/docs/tasks/traffic-management/mirroring/
Send a few extra queries
kubectl exec "${SLEEP_POD}" -c sleep -- curl -sS http://httpbin:8000/headers

In another terminal, run
minikube tunnel

In a third terminal, run
istioctl dashboard prometheus

Then run
iter8 launch -c istio-slo-validation --set endpoint=http://<IP_ADDRESS>:9090/graph --set destination_workload=httpbin-v2 --set destination_workload_namespace=default --set StartingTime=1647360597 --noDownload

However, there seems like kind or an odd and technical option to provide to the user. I want to discuss it first before moving forward.

One possibility is to make this an option, but to set a default (in the case of the mirroring experiment, the default for reporter will be destination).

Note that I moved the Istio metrics template from iter8lib into the istio-slo-validation. I think it is possible to move it back into iter8lib but I need to do some refactoring.

I think it  is ok to start with the metrics template in istio-slo-validation. Once we get a handle on the initial version of the experiment, we can consider moving it into iter8lib.


The description about multi-dimensional array type support for indices and ranges

In the section Type support for indices and ranges, it mentions that Array has more nuanced behavior. Single dimension arrays support both indices and ranges. Multi-dimensional arrays don't. The indexer for a multi-dimensional array has multiple parameters, not a single parameter. In other words, it means `Multi-dimensional arrays support neither indices nor ranges, doesn't it? Does it indicate that something isn't work like :
var abc = new int[10, 20];
var a = abc[^1, ^1];

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

ID: a92f2fd3-888f-340e-72dd-8a3338313783
Version Independent ID: 67981ff3-5016-3147-b3c2-5bc16efe1416
Content: Explore ranges of data using indices and ranges
Content Source: docs/csharp/tutorials/ranges-indexes.md
Product: dotnet-csharp
Technology: csharp-fundamentals
GitHub Login: @BillWagner
Microsoft Alias: wiwagn

Thanks for raising this issue @Jimmy-Hu You are correct. The System.Index type is not allowed for accessing elements of a multi-dimensional array.

Thanks for raising this issue @Jimmy-Hu You are correct. The System.Index type is not allowed for accessing elements of a multi-dimensional array.


Support ARGB ColorType

Currently, there's no support for ARGB32. Cairo/Skia supports this, and is also often the format that X is going to return it's visuals in (for instance from xcb_get_image/shm_get, or xlib XGetImage, etc.
Would be extremely helpful to have support for it.
PS: Having conversions functions would be a good starting point, so that they can alteast be imported in, at a one time cost.

I also filed https://github.com/PistonDevelopers/image-png/issues/86.


Embedding rooted argument checks

Check that all arguments to finch calls are rooted.

fixed by

https://github.com/willow-ahrens/Finch.jl/pull/108


Problem with vscode opening with root permission

Does this issue occur when all extensions are disabled?: Yes/No

VS Code Version: 1.84.2
OS Version:  Ubuntu 20.04 LTS

Steps to Reproduce:

When I use code commend with root permission, this error is returned：

You are trying to start Visual Studio Code as a super user which isn't recommended.
If this was intended, please add the argument `--no-sandbox` and
specify an alternate user data directory using the `--user-data-dir` argument.

Then I add alias in bashrc:

alias code='/usr/share/code/code . --no-sandbox --unity-launch'

After source, run code again, this error is returned:

[23441:1124/110034.616782:ERROR:bus.cc(399)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
[23441:1124/110034.616830:ERROR:bus.cc(399)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
[23441:1124/110034.616841:ERROR:bus.cc(399)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
[23441:1124/110034.616851:ERROR:bus.cc(399)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
[23441:1124/110034.620992:ERROR:object_proxy.cc(590)] Failed to call method: org.freedesktop.portal.Settings.Read: object_path= /org/freedesktop/portal/desktop: unknown error type:

vscode is not responding and is not open.

Did you also add --user-data-dir option when launching ? I don't see one in the samples attached.

Did you also add --user-data-dir option when launching ? I don't see one in the samples attached.

When I add --user-data-dir, then use code commend, vscode creates many other files.

Yes those files are created by the runtime which is expected, please provide a path to the cli flag for ex: --user-data-dir /tmp/vscode-root to isolate those files. If the application works fine then I think we can close this issue ?

Yes those files are created by the runtime which is expected, please provide a path to the cli flag for ex: --user-data-dir /tmp/vscode-root to isolate those files. If the application works fine then I think we can close this issue ?

thanks.


AbstractResolverTest.java class

Bug with AbstractResolversTest.java class: maven running the test on mvn clean install, should be skipping since it is testing an abstract class (test fails when running mvn clean install)

@tabbassidaloii and I ran into this problem yesterday. It is weird that this shows up on a Windows OS, but not on Debian or Ubuntu. But we also found the solution yesterday.

@egonw by mistake, I pulled the changes instead of sending a pull request :(
https://github.com/bridgedb/BridgeDb/commit/4ffda75ca2151886e085b7c617924c8346b2db1f

Yeah, this is why you can now block that on GitHub :)
No worries, and thanks for pushing the fix!


K6 Testing

add k6 as load tester

Maybe also integrate in to Makefile? (if possible)
👍

yea, sure... but first i need to get this landed as a base. later it gets an real integration

@fschade you might want to add a changelog

What do we do about Codacy results on this sort of stuff? Merge anyway? Add it to an exclusion list? Adjust the formatting etc to make Codacy happy?


Fix scipy depency problem

Travis builds currently fail with python 3.5 because scipy 1.5 is used (instead of 1.3.x or 1.4.x).
This is a new problem caused by the release of scipy 1.5.0rc1 in May.

Codecov Report

Merging #842 into devel will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##            devel     #842   +/-   ##
=======================================
  Coverage   54.32%   54.32%
=======================================
  Files         210      210
  Lines       21486    21486
  Branches     2890     2890
=======================================
  Hits        11672    11672
  Misses       9264     9264
  Partials      550      550

Thanks for fixing this.


Full binary tree from preorder and postorder

I have created an implementation that constructs a full binary tree from given preorder and postorder traversals of the tree.
The file has been stored in the tree folder.

Can someone please comment and review/merge as soon as possible as this is a requirement for a course I am doing.

@ShimoniSinha2019H1030019G could you add some unit test under the test folder?

Hello @ericklarac I have created a new pull request  #736  for this code where I have added unit test also. (This was due to problem in my laptop).
Can you please check that and review/merge please.
Thanks.

#736

Ok, will close this PR


TSLint error when used in a typescript (.ts) file

When used in a .ts file, if I use it like:
import * as haversineDistance from 'haversine-distance';
// import haversineDistance = require('haversine-distance'); will upset the tslint similarly.

const a = { lat: 32.2084468, lng:<PHONE_NUMBER> };
const b = { lat: 32.2084468, lng:<PHONE_NUMBER> };

console.log(haversineDistance(a, b));

It will upset the tslint. haversineDistance(a, b) is red-underlined, and when I hover it, there's this message:

This expression is not callable.... [package] has no call signatures.

I submitted PR #6, which will make tslint no longer complain when used in a ts files.

Thanks @moseskarunia

Please let me know after you release it to npm. :)


Inconsistent and missing docstring on public methods.

Raising issue as part of JOSS review https://github.com/openjournals/joss-reviews/issues/5021
All public methods should have docstrings describing their functionality. Some are missing. E.g.,
https://github.com/kazewong/flowMC/blob/6585fc2b8fea4a9575459e62b7c3ad209f005f15/src/flowMC/sampler/HMC.py#L8-L36
Nice have/suggestion:  give short examples in the docstrings of how to use the object.
It would be also good to address inconsistent docstring formatting. E.g.,
https://github.com/kazewong/flowMC/blob/6585fc2b8fea4a9575459e62b7c3ad209f005f15/src/flowMC/sampler/Sampler.py#L14-L40
and
https://github.com/kazewong/flowMC/blob/6585fc2b8fea4a9575459e62b7c3ad209f005f15/src/flowMC/nfmodel/realNVP.py#L8-L26

@Daniel-Dodd We have updated the documentation accordingly. We will implement short examples of the objects in a separate issue.


Dead project? - Definitely not!

Interesting project but no commit since last year, just wanted to check the maintenance status. Cheers.

@D4nte Thanks for the question.
I must admit that library development has slowed down recently.
However, the project is not dead.
In addition to the UI library, the project includes a use-chat library, and a server that will be released as open source (hopefully this year). There will also be some other new toys.
Taking care of all this requires time, which is always too little :)
Some elements that go into the project are often tested earlier in my commercial implementations, which also takes a lot of time.
I also hope to eventually get someone permanently engaged to help with the project.
To sum up, you can be calm, if you want to use the library you will not be left without care.
Cheers!

Thanks!


Added a new theme: yonce

Adapted from the popular Bash-It/Visual Studio Code/iTerm/Slack & Alfred theme, Yoncé, by @minamarkham. I say "adapted" as VSCode themes are very complex and allow for a bit more nuance, so I did the best I could. Along those same lines, only ASCII characters seem to work with the demo page, for whatever reason, so I changed the é to an e.
Licence from the original VSCode theme:
https://github.com/minamarkham/yonce-vscode/blob/master/LICENSE
More info:
https://yoncetheme.com/

Nice, thanks. Merged as 2c123a4a


Security vulnerability: Depends on an insecure version of lodash

The latest version is identified by npm audit as a security vulnerability because it depends on an insecure version of lodash:
https://nodesecurity.io/advisories/577

@xiaoyuze88 please ! :D

close #6

thanks a lot


feat: adjust height of office online frame

Fix #176

:tada: This PR is included in version 3.25.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Key rotation

Hi,
Does it supports key rotation?
Looking at 'keycloak.clj' file on the sample directory, it appears to have a static key ID.
Thanks,
Bruno

There is no key rotation. But you can implement it quite easily by generating a new client on the Keycloak server and retrieve it on your client.
The point is to use static key only in "secure" environment, the most secure way in "unsecure" env (called "public" in oidc vocabulary) is to use very short lived token (AccessToken) like any web application and change your credentials frequently.

In that case I will have to change the key ID on the source code correctly?

I don't understand what you means by "Key ID".
Every piece of software interacting with a Keycloak server is called a client and you reference it through a clientId, that client has either a client-secret or an identifier/password tuple. The client-secret for a client can be retrieved if you have an admin keycloak client (the object of the adapter lib, not the concept) thanks to the keycloak.deployment/deployment-for-realms function.

Every token issued by the Keycloak server is signed with a key. This key ID is present on the token header, for example:
{   "alg": "RS256",   "typ": "JWT",   "kid": "ObqWcjqrcLcwZ2I8rOwqr5Tz9uVrG8zLFyJNAvdqp6w" }
When a server wants to authenticate the token presented by the user, it requests that key from the Keycloak server with the corresponding ID.
After that the server can check the token signature and see if it matches.
The flow is defined by OpenID.

Ok I better understand what you mean now.
The key id is actually extracted from the token during every token verification. See the source of the keycloak.deployment/verify function.


Using Google Material Icons 'nice name' instead of code point.

Hello.
Just wondering if there's any way to use the nice name for google material icons, instead of the code point?

So, using "verified_user" instead of "e8e8" to output the icon.
Sorry, I'm not too familiar with the anatomy of a font file.
Many thanks!

Actually we were using the nice names. See demo in https://github.com/dzhuang/subset-iconfont/blob/1c3b5ef2814e1f59050b51e373007cf0e176db69/src/demo-standalone.js#L39-L51
I think you can replace 'add-circle' with the names you like.

Thanks for the speedy reply.
Regarding the nice names, I'm referring to the output rather than the input/config.
For example, if you were to use Google Material Icons directly from Google using their original font then you can insert an icon using a span and a 'nice name'.
Like here: https://fonts.google.com/icons?selected=Material+Icons:account_circle:&icon.set=Material+Icons&icon.style=Filled, you can insert the home icon using:

But when using the subset font generated by your package, this seems to stop working and the only way of manually inserting an icon is to use the code point:

&#e88a;.
Oh and by the way, I'm using your package just to get the font-file to be used in another context. So I'm not using any of the CSS/SCSS provided by the package.
Thanks for your work and replies.

Thank you for elaborating on your issue.
The behavior you're experiencing with the package is indeed expected. Our package, like Google Material Icons, uses font icons, which require specific code points to render the icons correctly. When you use the original Google Material Icons directly from Google, they allow the use of 'nice names' as part of their implementation, which under the hood gets translated to the respective code points.
However, in the case of our package, we rely on these code points directly for rendering icons. This is why you need to use the specific character reference (like &#e88a; for the home icon) in your span class. The 'nice names' approach is not supported in our current implementation.
Regarding the CSS/SCSS files, even though you're not using them directly in your project, they are crucial for proper rendering of the icons. These stylesheets define the necessary font-family and other properties required for the icons to display correctly using the code points. Hence, to use the icons from our package, it's essential to include and reference the generated CSS.
I hope this clarifies the situation. If you have any more questions or need further assistance, feel free to reach out.
Thanks for using our package, and I appreciate your feedback!
Best regards.

Yes, thank you very much.


[ExtendedEconomy] Refractor the cog to accept per-server pricing system while keeping the global bank intact

Hi Alex
For extendedeconomy, When global bank is active, it doesn't let you add cost to a cmd without setting the level as global.

e.g. addcost insult 69 420 admin button static 2

I feel it would be better if you could change it to accept per server system while keeping the global bank intact, as (from a bot-owner or normal user POV) you might not want to add cost to every single server the bot is in (and only want to add the system to certain servers), but also want keep the "global leaderboard" (as people do look at the lb to grind more/less depending on their positions on the lb)

By "change it" means: Having a toggle switch, that only the bot_owner can change to make it accept per_guild price while keeping the global bank intact, would be perfect as anyone can then make that adjustment as per their liking.
That's all

I Hope you eventually find it interesting haha to work on it soon enough!
Thanks for the amazing cogs :) (from tickets to gmail to levelup to economy - everything is great 👌)

After giving it much thought I really have no desire to implement this. In my opinion it makes no sense to allow per-server prices when using a global economy as it contradicts the point of it being a global bank in the first place.


Is this deprecated?

From what I can see, this hasn't been moved to the ROCm organization like the others, nor has it been updated past 5.5.0.
The last commit was also more than a year ago.

https://github.com/ROCm/MIOpen/commit/dd23f4e8c0783027128f95320c5af58982296d23#diff-b335630551682c19a781afebcf4d07bf978fb1f8ac04c6bf87428ed5106870f5
looks like the answer is yes


Is it normal that 3 minute track takes 7 minutes to separate (Apple Silicon, no GPU)?

First of all, thanks for this wonderful project, I cannot describe with words that how useful it is for me, and how clean it can extract the vocals, but I have a question. Is it normal that a 3 minute 1 second track takes 7 minutes to separate?
(split) audio-splitter ➤ python main.py
2024-08-29 14:56:43,147 - INFO - separator - Separator version 0.18.0 instantiating with output_dir: None, output_format: WAV
2024-08-29 14:56:43,147 - INFO - separator - Output directory not specified. Using current working directory.
2024-08-29 14:56:43,147 - INFO - separator - Operating System: Darwin Darwin Kernel Version 23.5.0: Wed May  1 20:19:05 PDT 2024; root:xnu-10063.121.3~5/RELEASE_ARM64_T8112
2024-08-29 14:56:43,154 - INFO - separator - System: Darwin Node: caners-MacBook-Pro.local Release: 23.5.0 Machine: arm64 Proc: arm
2024-08-29 14:56:43,154 - INFO - separator - Python Version: 3.9.19
2024-08-29 14:56:43,154 - INFO - separator - PyTorch Version: 2.4.0
2024-08-29 14:56:43,236 - INFO - separator - FFmpeg installed: ffmpeg version 7.0.2 Copyright (c) 2000-2024 the FFmpeg developers
2024-08-29 14:56:43,238 - INFO - separator - ONNX Runtime CPU package installed with version: 1.19.0
2024-08-29 14:56:43,245 - INFO - separator - Apple Silicon MPS/CoreML is available in Torch and processor is ARM, setting Torch device to MPS
2024-08-29 14:56:43,245 - INFO - separator - ONNXruntime has CoreMLExecutionProvider available, enabling acceleration
2024-08-29 14:56:43,246 - INFO - separator - Loading model model_bs_roformer_ep_317_sdr_12.9755.ckpt...
2024-08-29 14:56:46,014 - INFO - mdxc_separator - MDXC Separator initialisation complete
2024-08-29 14:56:46,014 - INFO - separator - Load model duration: 00:00:02
2024-08-29 14:56:46,014 - INFO - separator - Starting separation process for audio_file_path: 2023 - Rat Wars/09. ASHAMED.mp3
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 23/23 [07:15<00:00, 18.95s/it]
2024-08-29 15:04:02,702 - INFO - mdxc_separator - Saving Instrumental stem to 09. ASHAMED_(Instrumental)_model_bs_roformer_ep_317_sdr_12.wav...
2024-08-29 15:04:02,762 - INFO - mdxc_separator - Saving Vocals stem to 09. ASHAMED_(Vocals)_model_bs_roformer_ep_317_sdr_12.wav...
2024-08-29 15:04:03,005 - INFO - common_separator - Clearing input audio file paths, sources and stems...

(split) audio-splitter ➤  neofetch
                    'c<EMAIL_ADDRESS>                 ,xNMM.          -----------------------------------
               .OMMMMo           OS: macOS 14.5 23F79 arm64
               OMMM0,            Host: Mac14,7
     .;loddo:' loolloddol;.      Kernel: 23.5.0
   cKMMMMMMMMMMNWMMMMMMMMMM0:    Uptime: 3 days, 21 hours, 15 mins
 .KMMMMMMMMMMMMMMMMMMMMMMMWd.    Packages: 3 (port), 287 (brew)
 XMMMMMMMMMMMMMMMMMMMMMMMX.      Shell: zsh 5.9
;MMMMMMMMMMMMMMMMMMMMMMMM:       Resolution: 1680x1050
:MMMMMMMMMMMMMMMMMMMMMMMM:       DE: Aqua
.MMMMMMMMMMMMMMMMMMMMMMMMX.      WM: Quartz Compositor
 kMMMMMMMMMMMMMMMMMMMMMMMMWd.    WM Theme: Blue (Dark)
 .XMMMMMMMMMMMMMMMMMMMMMMMMMMk   Terminal: kitty
  .XMMMMMMMMMMMMMMMMMMMMMMMMK.   CPU: Apple M2
    kMMMMMMMMMMMMMMMMMMMMMMd     GPU: Apple M2
     ;KMMMMMMMWXXWMMMMMMMk.      Memory: 3500MiB / 16384MiB
       .cooc,.    .,coo:.

import os

from audio_separator.separator import Separator

# Initialize the Separator class (with optional configuration properties, below)
separator = Separator()
# Load a machine learning model (if unspecified, defaults to 'model_mel_band_roformer_ep_3005_sdr_11.4360.ckpt')
separator.load_model("model_bs_roformer_ep_317_sdr_12.9755.ckpt")
# Perform the separation on specific audio files without reloading the model
for root, dirs, files in os.walk("."):
    path = root.split(os.sep)
    for file in files:
        if file.endswith(".jpg") is False:
            separator.separate(os.path.join(root, file))

I dont know if this is related to Mac / OSX, but process takes up my entire system resources, which is a good thing that it can utilize M2 at its best. But still, is 7 minutes normal?

No, that isn't normal 😅
My machine is not very different from yours (Macbook Pro with M3 Max)
(audio-separator) ➜  ~ neofetch
                    'c.
                 ,xNMM.
               .OMMMMo
               OMMM0,
     .;loddo:' loolloddol;.
   cKMMMMMMMMMMNWMMMMMMMMMM0<EMAIL_ADDRESS> .KMMMMMMMMMMMMMMMMMMMMMMMWd.    ---------------------------------
 XMMMMMMMMMMMMMMMMMMMMMMMX.      OS: macOS 14.5 23F79 arm64
;MMMMMMMMMMMMMMMMMMMMMMMM:       Host: Mac15,10
:MMMMMMMMMMMMMMMMMMMMMMMM:       Kernel: 23.5.0
.MMMMMMMMMMMMMMMMMMMMMMMMX.      Uptime: 2 days, 12 hours, 58 mins
 kMMMMMMMMMMMMMMMMMMMMMMMMWd.    Packages: 214 (brew)
 .XMMMMMMMMMMMMMMMMMMMMMMMMMMk   Shell: zsh 5.9
  .XMMMMMMMMMMMMMMMMMMMMMMMMK.   Resolution: 1512x982
    kMMMMMMMMMMMMMMMMMMMMMMd     DE: Aqua
     ;KMMMMMMMWXXWMMMMMMMk.      WM: Quartz Compositor
       .cooc,.    .,coo:.        WM Theme: Blue (Dark)
                                 Terminal: iTerm2
                                 Terminal Font: Monaco 12
                                 CPU: Apple M3 Max
                                 GPU: Apple M3 Max
                                 Memory: 4810MiB / 36864MiB

I made you a short screencast video demonstrating separation of a popular song (Duration: 00:03:06) on my machine:
https://youtu.be/ZXZwXMDe5vM
This includes showing how I verify inference is using my GPU (using the Activity Monitor GPU History graph).
On my machine, separating that 3 minute track takes the following amounts of time, depending on which model I choose:

audio-separator -d -m ??? sabrina-please-test.flac: Separation duration: 00:00:??
audio-separator -d -m ??? sabrina-please-test.flac: Separation duration: 00:00:??
audio-separator -d -m UVR_MDXNET_KARA_2.onnx sabrina-please-test.flac: Separation duration: 00:00:28
audio-separator -d -m model_bs_roformer_ep_317_sdr_12.9755.ckpt sabrina-please-test.flac: Separation duration: 00:01:49
audio-separator -d -m MDX23C-8KFFT-InstVoc_HQ_2.ckpt sabrina-please-test.flac: Separation duration: 00:02:37

Hey @caner-cetin , thanks for the kind words, glad it useful for you!
No, that isn't normal 😅
My machine is similar to yours (Macbook Pro with M3 Max)
(audio-separator) ➜  ~ neofetch
                    'c.
                 ,xNMM.
               .OMMMMo
               OMMM0,
     .;loddo:' loolloddol;.
   cKMMMMMMMMMMNWMMMMMMMMMM0<EMAIL_ADDRESS> .KMMMMMMMMMMMMMMMMMMMMMMMWd.    ---------------------------------
 XMMMMMMMMMMMMMMMMMMMMMMMX.      OS: macOS 14.5 23F79 arm64
;MMMMMMMMMMMMMMMMMMMMMMMM:       Host: Mac15,10
:MMMMMMMMMMMMMMMMMMMMMMMM:       Kernel: 23.5.0
.MMMMMMMMMMMMMMMMMMMMMMMMX.      Uptime: 2 days, 12 hours, 58 mins
 kMMMMMMMMMMMMMMMMMMMMMMMMWd.    Packages: 214 (brew)
 .XMMMMMMMMMMMMMMMMMMMMMMMMMMk   Shell: zsh 5.9
  .XMMMMMMMMMMMMMMMMMMMMMMMMK.   Resolution: 1512x982
    kMMMMMMMMMMMMMMMMMMMMMMd     DE: Aqua
     ;KMMMMMMMWXXWMMMMMMMk.      WM: Quartz Compositor
       .cooc,.    .,coo:.        WM Theme: Blue (Dark)
                                 Terminal: iTerm2
                                 Terminal Font: Monaco 12
                                 CPU: Apple M3 Max
                                 GPU: Apple M3 Max
                                 Memory: 4810MiB / 36864MiB

I made you a short screencast video demonstrating separation of a popular song (Duration: 00:03:06) on my machine:
https://youtu.be/ZXZwXMDe5vM
This includes showing how I verify inference is using my GPU (using the Activity Monitor GPU History graph).
On my machine, separating that 3 minute track takes the following amounts of time, depending on which model I choose:

audio-separator -d -m 2_HP-UVR.pth sabrina-please-test.flac: Separation duration: 00:00:19
audio-separator -d -m UVR_MDXNET_KARA_2.onnx sabrina-please-test.flac: Separation duration: 00:00:28
audio-separator -d -m UVR-MDX-NET-Inst_HQ_4.onnx sabrina-please-test.flac: Separation duration: 00:00:36
audio-separator -d -m model_bs_roformer_ep_317_sdr_12.9755.ckpt sabrina-please-test.flac: Separation duration: 00:01:49
audio-separator -d -m MDX23C-8KFFT-InstVoc_HQ_2.ckpt sabrina-please-test.flac: Separation duration: 00:02:37

So as you can see, it's definitely not normal for it to take 7 minutes for a 3 minute track!
If you want to test with the same input file and commands as me, here's the file I used in the tests above:
https://www.dropbox.com/scl/fi/k4tbc79ggzfcn509qwpji/sabrina-please-test.flac?rlkey=ufnkns7vjnhuqsic225rbzdbx&dl=0
My recommendation to you would be to:

Upgrade to the latest version of audio-separator: 0.19.1
Use a newer version of Python, e.g. 3.11 (3.9 is very old now and not officially supported by this project)
Try different models with different architectures e.g. VR, MDX, MDXC, RoFormer (you can list all supported models with audio-separator -l)
Testing with different model architectures, verify whether your GPU is being used using Activity Monitor (see my video for example)

Good luck!
-Andrew

Thanks for the quick response Andrew, I bumped the python to 3.12.0, bumped library, checked cpu and gpu history, which, it maximizes the entire gpu history during runtime

Yet it still takes 5 more minutes to process the same FLAC file provided, even in same model model_bs_roformer_ep_317_sdr_12.9755.ckpt maybe 2022 M2 is significantly weaker than M3 Max?

That is still kinda surprising! Can you try the other models I tried to compare runtimes for the other architectures? If they're all slower by a similar amount I'd be inclined to agree with you (but still surprised)

Tried by the way, forgot to add that. They are significantly slower than your benchmarks. At least 1 minute slower, like, 10 minute slower for an entire album. I am surprised too. At least the awesome quality overall compensates the speed lol.

Researched for a few days, tried to disable Metal Processing Shader (which was horrible, iterations per second dipped to 18 second), tried to build Torch myself, but best I could get was 12 seconds per iteration. meanwhile ye olde shitbox 1650ti could do 5.50 seconds per iteration out of the box. i dont think there is too much to add, i will just assume Torch runs horrible on M2, aand will close it here. thanks for the reply again.

Glad to hear! 😄


enscript: use system getopt for all builds; fix darwin

enscript has its own implementation of getopt that gets ifdef'd out for linux but not for darwin. this change just removes the vendored implementation to use the system implementation for all builds.  this seems to be a well known issue and different bsd related distributions have various hacks.
testing: built enscript on x64 darwin and linux, converted some pages from text to postscript, verified options still work
https://hydra.nixos.org/build/241092390
Result of nixpkgs-review run on x86_64-linux 1

3 packages built:

enscript
foo2zjs
foomatic-filters

Result of nixpkgs-review run on x86_64-darwin 1

1 package built:

enscript

Description of changes

Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[ ] Fits CONTRIBUTING.md.

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

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-ready-for-review/3032/3047


enabling recursive substitution

do we actually have a case that goes beyond 3 levels?

no, not yet, I thought I had a use-case but it turned out to be a typo. This code still exists and it doesnt break anything though, so I am game to add it if you are

published to npm as 0.7.0


Feat(LSP): add more detail in outline

1. Does this PR affect any open issues?(Y/N) and add issue references (e.g. "fix #123", "re #123".):

[ ] N
[x] Y #297

2. What is the scope of this PR (e.g. component or file name):
LSP

3. Provide a description of the PR(e.g. more details, effects, motivations or doc link):
Present variables and schema attr type in outline

[ ] Affects user behaviors
[ ] Contains syntax changes
[ ] Contains variable changes
[ ] Contains experimental features
[ ] Performance regression: Consumes more CPU
[ ] Performance regression: Consumes more Memory
[x] Other

4. Are there any breaking changes?(Y/N) and describe the breaking changes(e.g. more details, motivations or doc link):

[x] N
[ ] Y

5. Are there test cases for these changes?(Y/N) select and add more details, references or doc links:

[x] Unit test
[ ] Integration test
[ ] Benchmark (add benchmark stats below)
[ ] Manual test (add detailed scripts or steps below)
[ ] Other

6. Release note

Please refer to Release Notes Language Style Guide to write a quality release note.
None

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

7 of 7 (100.0%)  changed or added relevant lines in 2 files are covered.
31 unchanged lines in 1 file lost coverage.
Overall coverage decreased (-20.8%) to 67.216%

Files with Coverage Reduction
New Missed Lines
%

compiler_base/session/src/lib.rs
31
50.0%

Totals

Change from base Build<PHONE_NUMBER>:
-20.8%

Covered Lines:
29774

Relevant Lines:
44296

💛  - Coveralls


zef install API::Discord failed on Apple M1 MacBook

Rakudo now already has a Apple Silicon formula on Homebrew, Zef also compiles without any problem, and running a simple Hello World Raku program also has no problem at all on Apple M1. However, when I tried to run zef install API::Discord, the following error message appeared:
===> Searching for: API::Discord
===> Updating fez mirror: http://360.zef.pm/
===> Updating cpan mirror: https://raw.githubusercontent.com/ugexe/Perl6-ecosystems/master/cpan1.json
===> Updating p6c mirror: https://raw.githubusercontent.com/ugexe/Perl6-ecosystems/master/p6c1.json
===> Updated p6c mirror: https://raw.githubusercontent.com/ugexe/Perl6-ecosystems/master/p6c1.json
===> Updated fez mirror: http://360.zef.pm/
===> Updated cpan mirror: https://raw.githubusercontent.com/ugexe/Perl6-ecosystems/master/cpan1.json
===> Searching for missing dependencies: Cro::WebSocket, Data::Dump, Object::Delayed, URI::Encode, Subset::Helper, Test::META
===> Searching for missing dependencies: META6:ver<0.0.24+>, URI, License::SPDX, Test::Output, Object::Trampoline:ver<0.0.9>:auth<cpan:ELIZABETH>, Cro::HTTP, Base64, Digest::SHA1::Native, Crypt::Random, JSON::Fast, OO::Monitors
===> Searching for missing dependencies: JSON::Class:ver<0.0.15+>, JSON::Name, IO::Socket::Async::SSL, IO::Path::ChildSecure, HTTP::HPACK, Cro::Core, Cro::TLS, JSON::JWT, DateTime::Parse, Log::Timeline, if, InterceptAllMethods:ver<0.0.1>:auth<cpan:ELIZABETH>, LibraryMake, Shell::Command, JSON::Class:ver<0.0.14+>
===> Searching for missing dependencies: File::Which, File::Find, OpenSSL, JSON::Marshal:ver<0.0.20+>, JSON::Unmarshal:ver<0.08+>, MIME::Base64, Digest::HMAC
===> Searching for missing dependencies: Digest
===> Building: Digest::SHA1::Native:ver<0.04>
[Digest::SHA1::Native] ld: library not found for -ltommath
[Digest::SHA1::Native] clang: error: linker command failed with exit code 1 (use -v to see invocation)
[Digest::SHA1::Native] make: *** [/Users/deadshot465/.zef/store/p6-digest-sha1-native.git/e34d468341a572a7c089d672429cf88d21e07734/resources/libraries/libsha1.dylib] Error 1
[Digest::SHA1::Native] The spawned command '/usr/bin/make' exited unsuccessfully (exit code: 2, signal: 0)
[Digest::SHA1::Native]   in method build at /Users/deadshot465/.zef/store/p6-digest-sha1-native.git/e34d468341a572a7c089d672429cf88d21e07734/Build.pm line 14
[Digest::SHA1::Native]   in block <unit> at -e line 1
===> Building [FAIL]: Digest::SHA1::Native:ver<0.04>
Aborting due to build failure: Digest::SHA1::Native:ver<0.04> (use --force-build to override)

However, libtommath has already been installed via Homebrew. I think it has something to do with Digest::SHA1::Native dependency rather than raku-api-discord, but is there a workaround for it?

I'm not at my laptop currently but I'll investigate this in a few hours. I have a feeling that some of the underlying dependencies for the Cro framework don't work on macOS yet though, as full Windows and macOS compatibility is planned for the 0.9 release of Cro.

Thanks for the reply. I also tested on x86_64 MacBook, and it returns a different error message. If it helps:
===> Searching for: API::Discord
===> Updating fez mirror: http://360.zef.pm/
===> Updating cpan mirror: https://raw.githubusercontent.com/ugexe/Perl6-ecosystems/master/cpan1.json
===> Updating p6c mirror: https://raw.githubusercontent.com/ugexe/Perl6-ecosystems/master/p6c1.json
===> Updated fez mirror: http://360.zef.pm/
===> Updated p6c mirror: https://raw.githubusercontent.com/ugexe/Perl6-ecosystems/master/p6c1.json
===> Updated cpan mirror: https://raw.githubusercontent.com/ugexe/Perl6-ecosystems/master/cpan1.json
===> Searching for missing dependencies: Cro::WebSocket, Data::Dump, Object::Delayed, URI::Encode, Subset::Helper, Test::META
===> Searching for missing dependencies: Cro::HTTP, Base64, Digest::SHA1::Native, Crypt::Random, JSON::Fast, OO::Monitors, META6:ver<0.0.24+>, URI, License::SPDX, Test::Output, Object::Trampoline:ver<0.0.9>:auth<cpan:ELIZABETH>
===> Searching for missing dependencies: JSON::Class:ver<0.0.15+>, JSON::Name, JSON::Class:ver<0.0.14+>, if, LibraryMake, Shell::Command, IO::Socket::Async::SSL, IO::Path::ChildSecure, HTTP::HPACK, Cro::Core, Cro::TLS, JSON::JWT, DateTime::Parse, Log::Timeline, InterceptAllMethods:ver<0.0.1>:auth<cpan:ELIZABETH>
===> Searching for missing dependencies: JSON::Marshal:ver<0.0.20+>, JSON::Unmarshal:ver<0.08+>, MIME::Base64, OpenSSL, Digest::HMAC, File::Which, File::Find
===> Searching for missing dependencies: Digest
===> Building: Digest::SHA1::Native:ver<0.04>
===> Building [OK] for Digest::SHA1::Native:ver<0.04>
===> Testing: OpenSSL:ver<0.1.23>
[OpenSSL] WARNING: /usr/local/Cellar/rakudo/2021.02.1/bin/rakudo-m is loading libcrypto in an unsafe way
[OpenSSL] WARNING: /usr/local/Cellar/rakudo/2021.02.1/bin/rakudo-m is loading libcrypto in an unsafe way
[OpenSSL] WARNING: /usr/local/Cellar/rakudo/2021.02.1/bin/rakudo-m is loading libcrypto in an unsafe way
[OpenSSL] WARNING: /usr/local/Cellar/rakudo/2021.02.1/bin/rakudo-m is loading libcrypto in an unsafe way
[OpenSSL] WARNING: /usr/local/Cellar/rakudo/2021.02.1/bin/rakudo-m is loading libcrypto in an unsafe way
[OpenSSL] WARNING: /usr/local/Cellar/rakudo/2021.02.1/bin/rakudo-m is loading libcrypto in an unsafe way
[OpenSSL] WARNING: /usr/local/Cellar/rakudo/2021.02.1/bin/rakudo-m is loading libcrypto in an unsafe way
[OpenSSL] WARNING: /usr/local/Cellar/rakudo/2021.02.1/bin/rakudo-m is loading libcrypto in an unsafe way
[OpenSSL] WARNING: /usr/local/Cellar/rakudo/2021.02.1/bin/rakudo-m is loading libcrypto in an unsafe way
[OpenSSL] WARNING: /usr/local/Cellar/rakudo/2021.02.1/bin/rakudo-m is loading libcrypto in an unsafe way
[OpenSSL] WARNING: /usr/local/Cellar/rakudo/2021.02.1/bin/rakudo-m is loading libcrypto in an unsafe way
[OpenSSL] WARNING: /usr/local/Cellar/rakudo/2021.02.1/bin/rakudo-m is loading libcrypto in an unsafe way
[OpenSSL] WARNING: /usr/local/Cellar/rakudo/2021.02.1/bin/rakudo-m is loading libcrypto in an unsafe way
[OpenSSL] WARNING: /usr/local/Cellar/rakudo/2021.02.1/bin/rakudo-m is loading libcrypto in an unsafe way
===> Testing [FAIL]: OpenSSL:ver<0.1.23>
Aborting due to test failure: OpenSSL:ver<0.1.23> (use --force-test to override)

Looks like Digest::SH1::Native doesn't support Apple M1 yet, but it fails in tests when on x86_64 MacBook.


chore(misspell): To enable misspell linter for go codes

Inspired by recent PRs:

https://github.com/cilium/cilium/pull/12394
https://github.com/cilium/cilium/pull/12488

Signed-off-by: Tam Mach<EMAIL_ADDRESS>chore(misspell): To enable misspell linter for go codes

Coverage decreased (-0.02%) to 36.957% when pulling 3383583b2d6d5989a85735cb23da1f7e6d5511a4 on sayboras:chore/misspell into 657295ccbdc5636563206f5e16a67f693b3a8fe5 on cilium:master.

test-me-please

Runtime 4.9 failed due to below reason, I can't replicate in local vagrant box though :(
[2020-07-10T15:39:53.147Z]   	 START: proxy_test.go:370: DNSProxyTestSuite.TestRespondMixedCaseInRequestResponse
[2020-07-10T15:39:53.147Z]   	 proxy_test.go:393:
[2020-07-10T15:39:53.147Z]   	     c.Assert(err, IsNil, Commentf("DNS request from test client failed when it should succeed"))
[2020-07-10T15:39:53.147Z]   	 ... value *net.OpError = &net.OpError{Op:"read", Net:"tcp", Source:(*net.TCPAddr)(0xc00041d710), Addr:(*net.TCPAddr)(0xc00041d740), Err:(*poll.TimeoutError)(0x2f2eae0)} ("read tcp [::1]:59548->[::1]:46443: i/o timeout")
[2020-07-10T15:39:53.147Z]   	 ... DNS request from test client failed when it should succeed
[2020-07-10T15:39:53.147Z]
[2020-07-10T15:39:53.147Z]   	 START: proxy_test.go:219: DNSProxyTestSuite.TearDownTest
[2020-07-10T15:39:53.147Z]   	 PASS: proxy_test.go:219: DNSProxyTestSuite.TearDownTest	0.000s

retest-runtime

Previous Runtime build flaked. I filed #12507 for it.

Thanks a lot for your help @pchaigno. Re-run seems ok now :tada:


Local-part length

I noticed this part.
// The maximum total length of a user name or other local-part is 64
// however, here we double it, since a few major services don't respect that and go over
LimitLocalPart = 64 * 2

RFC 821 Section 4.5.3 says,

There are several objects that have required minimum maximum
sizes.  That is, every implementation must be able to receive
objects of at least these sizes, but must not send objects
larger than these sizes.
      ****************************************************
      *                                                  *
      *  TO THE MAXIMUM EXTENT POSSIBLE, IMPLEMENTATION  *
      *  TECHNIQUES WHICH IMPOSE NO LIMITS ON THE LENGTH *
      *  OF THESE OBJECTS SHOULD BE USED.                *
      *                                                  *
      ****************************************************

        user

           The maximum total length of a user name is 64 characters.

RFC 2821 and 5321 says the same thing.
For receiving servers 64 characters local-part is a soft limit. i.e. A receiving server MUST support AT LEAST 64 maximum characters.
VERP and SRS requires more than 64 characters in the local-part.
https://en.wikipedia.org/wiki/Variable_envelope_return_path
https://en.wikipedia.org/wiki/Sender_Rewriting_Scheme
Original<EMAIL_ADDRESS>
VERP<EMAIL_ADDRESS>
SRS<EMAIL_ADDRESS>
128 character may sound reasonable, it's not enough for SRS in some cases.
You can read my I-D which I published couple of months back.  https://tools.ietf.org/html/draft-viruthagiri-email-address-length-01
My suggestion is stick to the overall length defined in LimitPath constant. i.e. 256.  LimitLocalPart and LimitDomain should have 254 as value. i.e. You allocate 1 char for @ symbol and 1 for the minimum possible char in local-part or domain.
Or provide a config to override both LimitLocalPart and LimitDomain.
Gmail supports upto 900 characters in email address without any local-part or domain limitation.
Hope that helps.

feedback on draft
in https://tools.ietf.org/html/draft-viruthagiri-email-address-length-01#section-4 last para.
could you point the links to the relevant sections, if present?
till section 4 the rfc reads pretty great. Appendix C. Email Address Types was also simple, direct. and it seems pretty useful to have.
thanks. have a great day. keep up the great work.

@ret394
I hope you mean these links.
https://www.rfc-editor.org/errata/eid1003
https://www.rfc-editor.org/errata/eid1690

@viruthagiri  no

This memo relaxes only the domain-part soft limitation set by
[RFC5321]. Not the domain label hard limitation set by [RFC1034].

Sorry. Here it is.

The labels must follow the rules for ARPANET host names.  They must
start with a letter, end with a letter or digit, and have as interior
characters only letters, digits, and hyphen.  There are also some
restrictions on the length.  Labels must be 63 characters or less.

https://tools.ietf.org/html/rfc1034#section-3.5

Just to give some more info.
RFC 5321 says, The maximum total length of a domain name or number is 255  octets.  My proposal removes that limitation in email address. It means if an email address length is 500 characters, then the maximum total length of a domain name is 498 ("n-2" characters).
I brought the RFC 1034 into the spec because I don't want people to think that they can have a 498 character string as domain without any dot.


Cleaning

Proposed Changes

Cleaning things up

@FaserF any idea why MegaLinter cannot create the PR ?

I think first cleaning part is done

@FaserF any idea why MegaLinter cannot create the PR ?

I will have a look into it

...or better; if it was a success, fail or of it already was the latest one installed.

I'm creating a propose branch with returns: success/fail/current

@FaserF any idea why MegaLinter cannot create the PR ?

I will have a look into it

see here: https://github.com/Romanitho/Winget-AutoUpdate/pull/469


Process does not exit

When I add .pipe( open() ) to my gulp task, the process never exits - I must hit Cmd+C in order to type the next prompt.  Without this addition, it does exit.

Which options are you passing?

None - just as I have it in the code above.

Can you try version 2.1.0 and see if the process hangs?

The original issue was with 3.0.1, but 2.1.0 does not.

Interesting. We switched from using open to opn in version 3.0.1.
Guessing from the latest release I don't think it is maintained well: https://github.com/sindresorhus/opn
I would suggest staying with version 2.1.0 as we are passing wait: false to this option: https://github.com/sindresorhus/opn#wait

It looks like this could be the issue: https://github.com/sindresorhus/opn/issues/92
I will continue using 2.1.0 for now.


As a taq end-dev, I would like to register contracts so that I may later reference them by name

Describe the feature you would like
Currently, Taqueria expects that all contract source files live in contracts/.
This works well for the most part - you can run taq compile, which will iterate over every source file and compile each one, or taq compile [sourceFile] to compile an individual file.
However, this breaks down when a contract is composed of multiple source files - as in that case, not every source file in contracts is also a contract. This is a requirement for https://github.com/ecadlabs/taqueria/issues/234
Each compiler has its own require/include mechanism, its difficult to handle this in a scalable way without putting a lot more responsibility on the plugin author.
As such, we've decided to solve this by introducing the concept of a registered contract. Instead of taq compile iterating over each source file, it iterates over the list of registered contracts.
We'll need some CR[U]D tasks for managing these registered contracts:
taq add-contract
taq remove-contract
taq list-contracts
The schema for a contract has just two fields:

sourceFile, a relative path to contractsDir.
hash, a hash of file contents

As a hash is a something that gets computed and then stored we don't need a task to update registered contracts.
Is this feature solving a problem?
It allows us to handle multi-file contracts.
Please share any additional details you have?
Related issues:
https://github.com/ecadlabs/taqueria/issues/234
Code of Conduct

[X] I agree to follow this project's Code of Conduct

NOTE, at one time we discussed having add-contract exposed as the following:
taq add-contract <files|directories|patterns...> which would allow the end-user to specify multiple files, directories, or glob patterns as input. However, to simplify things for now, I'm just going to expose as taq add-contract <sourceFile>. We can expand on this later.

There's some discussion to be had around how we associate a contract with a particular plugin. For now, I'm not making any association however there are a few options:
add-contract task is builtin; use --plugin to associate plugin
Pros:

In terms of our current implementation, extending it to support -p to associate a plugin

Cons:

We're overloading the use of --plugin as currently its used to distinguish which plugin you want to use to serve a given task request

add-contract task is provided by each compiler
Pros:

We make it a convention for compiler plugins to provide an add-contract task.
We can remove the burden of registering the contract to the SDK
We're not overloading -p in this case, as it would only be used to distinguish which plugin you want to use to serve a given task request

Cons:

Unless we add a method to the SDK to enforce/validation compiler plugin tasks, the notion of each compiler plugin needing to define the add-contract task would be convention-only
Requires a refactor to the current implementation (about 1 day)

We do nothing - contracts aren't associated with compiler plugins
Pros:

Simpler implementation

Cons:

We're not taking advantage of the contract registry mechanism
We put the onus on the plugin author to search the registry for contracts that they're compatible with


Improved table editing

We have missing functionality for table editing. E.g. adding rows/columns, or merging and splitting cells.
Two approaches:

Implement Raw XML Editor to allow changing the HTML markup directly
Implement UI for adding columns/cells merging etc.

I think we should start with 1, and then schedule a development iteration to focus on table editing.

Done.


Bugfix 379

Fixes #379

Thanks!
Fixed in https://github.com/wire-elements/modal/commit/6a1f730d5a4bb0a60f2644778a9c5726c57970dc


macOS license requirements

Hey there, could you please add more details or clarify which license we need for using Defender ATP on macOS? is it also the Win10 E5 or higher packages? Is there a "smaller" subscriptions which doesn't include a Windows license.

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

ID: b8aca66a-5a8b-64d2-7201-a7b915c5d309
Version Independent ID: c3cc0543-db20-a8f2-288c-d1dea5ea479f
Content: Minimum requirements for Microsoft Defender ATP
Content Source: windows/security/threat-protection/microsoft-defender-atp/minimum-requirements.md
Product: w10
Technology: windows
GitHub Login: @mjcaparas
Microsoft Alias: macapara

Yes, it is the Win 10 E5. No smaller subscriptions. Thanks.

Hey, there is a new dedicated add-on license available through EA or CSP just to enable the Defender ATP function. Could you add it here as well?


Network topology testing

This PR implements some basic topology testing and paves the way for more complex scenarios and measurements. This branch is based on #620.
Included:

a topology module to aid in establishing topologies for testing
tests verifying basic topologies converge nicely into meshes
network density and degree centrality measurements
tweaks to the peering limit when initialising connections

The tests aim for a minimum network density proportional to the min peers and a degree centrality delta which is covered by the min-max peer delta.

Failing for the same reason outlined in #620.

And rebased onto #620 post-dependency-fix

LGTM :ok_hand:; left some minor remarks and suggestions.


Can't install

Hi - I tried to run it and ran into the following issues when running. Are you able to share the Python version you are using?
pip install -r requirements.txt

  Using cached mypy_extensions-1.0.0-py3-none-any.whl (4.7 kB)
Requirement already satisfied: mdurl~=0.1 in /home/jacky/projects/trash-compactor/agent-onboarding/env/lib/python3.11/site-packages (from markdown-it-py>=2.2.0->rich>=10.11.0->typer<1.0,>=0.12->gradio==4.42.0->-r requirements.txt (line 3)) (0.1.2)
Building wheels for collected packages: tree-sitter-language-pack
  Building wheel for tree-sitter-language-pack (pyproject.toml) ... error
  error: subprocess-exited-with-error

  × Building wheel for tree-sitter-language-pack (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [34 lines of output]
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build/lib.linux-x86_64-cpython-311
      creating build/lib.linux-x86_64-cpython-311/tree_sitter_language_pack
      copying tree_sitter_language_pack/__init__.py -> build/lib.linux-x86_64-cpython-311/tree_sitter_language_pack
      creating build/lib.linux-x86_64-cpython-311/tree_sitter_language_pack/bindings
      copying tree_sitter_language_pack/bindings/__init__.py -> build/lib.linux-x86_64-cpython-311/tree_sitter_language_pack/bindings
      running egg_info
      writing tree_sitter_language_pack.egg-info/PKG-INFO
      writing dependency_links to tree_sitter_language_pack.egg-info/dependency_links.txt
      writing requirements to tree_sitter_language_pack.egg-info/requires.txt
      writing top-level names to tree_sitter_language_pack.egg-info/top_level.txt
      reading manifest file 'tree_sitter_language_pack.egg-info/SOURCES.txt'
      reading manifest template 'MANIFEST.in'
      adding license file 'LICENSE'
      writing manifest file 'tree_sitter_language_pack.egg-info/SOURCES.txt'
      copying tree_sitter_language_pack/py.typed -> build/lib.linux-x86_64-cpython-311/tree_sitter_language_pack
      running build_ext
      building 'tree_sitter_language_pack.bindings.lua' extension
      creating build/temp.linux-x86_64-cpython-311
      creating build/temp.linux-x86_64-cpython-311/parsers
      creating build/temp.linux-x86_64-cpython-311/parsers/lua
      creating build/temp.linux-x86_64-cpython-311/parsers/lua/src
      creating build/temp.linux-x86_64-cpython-311/sources
      x86_64-linux-gnu-gcc -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -fPIC -DPY_SSIZE_T_CLEAN -DTREE_SITTER_HIDE_SYMBOLS -DTS_LANGUAGE_NAME=lua -I/tmp/pip-install-wze1r7av/tree-sitter-language-pack_185283ae06e3476792f52d4567643093/parsers/lua/src -I/home/jacky/projects/trash-compactor/agent-onboarding/env/include -I/usr/include/python3.11 -c parsers/lua/src/parser.c -o build/temp.linux-x86_64-cpython-311/parsers/lua/src/parser.o -Werror=implicit-function-declaration -Wno-cast-function-type -Wno-unused-but-set-variable -fvisibility=hidden -std=c11
      x86_64-linux-gnu-gcc -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -fPIC -DPY_SSIZE_T_CLEAN -DTREE_SITTER_HIDE_SYMBOLS -DTS_LANGUAGE_NAME=lua -I/tmp/pip-install-wze1r7av/tree-sitter-language-pack_185283ae06e3476792f52d4567643093/parsers/lua/src -I/home/jacky/projects/trash-compactor/agent-onboarding/env/include -I/usr/include/python3.11 -c parsers/lua/src/scanner.c -o build/temp.linux-x86_64-cpython-311/parsers/lua/src/scanner.o -Werror=implicit-function-declaration -Wno-cast-function-type -Wno-unused-but-set-variable -fvisibility=hidden -std=c11
      x86_64-linux-gnu-gcc -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -fPIC -DPY_SSIZE_T_CLEAN -DTREE_SITTER_HIDE_SYMBOLS -DTS_LANGUAGE_NAME=lua -I/tmp/pip-install-wze1r7av/tree-sitter-language-pack_185283ae06e3476792f52d4567643093/parsers/lua/src -I/home/jacky/projects/trash-compactor/agent-onboarding/env/include -I/usr/include/python3.11 -c sources/language_extension.c -o build/temp.linux-x86_64-cpython-311/sources/language_extension.o -Werror=implicit-function-declaration -Wno-cast-function-type -Wno-unused-but-set-variable -fvisibility=hidden -std=c11
      sources/language_extension.c:1:10: fatal error: Python.h: No such file or directory
          1 | #include <Python.h>
            |          ^~~~~~~~~~
      compilation terminated.
      error: command '/usr/bin/x86_64-linux-gnu-gcc' failed with exit code 1
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for tree-sitter-language-pack
Failed to build tree-sitter-language-pack
ERROR: Could not build wheels for tree-sitter-language-pack, which is required to install pyproject.toml-based projects

Hi there, I just installed the lib from scratch on a fresh anaconda env, python version = 3.10.4, ubuntu 20.04 and it works fine.
What are your system specs?

Got it - same specs. Don't think it's an issue at this repo level - closing. Thanks for the quick response.

Had a similar issue, upgraded pip to latest which fixed it.


Fix TCP port range and string interpolation typos (#2759)

Pull request opened by the merge tool on behalf of #2759

Merged into branches iso4 in f081317737c8363eaf3eb521cd8d81ec3031d67f


feat: Add retrieval functions to dynamic helper

Which issue this PR addresses:
This PR is to add functionality to the dynamic helper which are needed in order to facilitate the removal of the hive clientset from the repository. Specifically the ability to retrieve resources has been added and existing functions now use the underlying GVRResolver.
What this PR does / why we need it:
This PR is to facilitate the changes required by the hive clientset removal pr (#2806). The changes to the dynamic helper in that PR have been split out into this one, and 2806 will be rebased off of this PR.
Test plan for issue:
The existing unit tests have been updated and unit tests for newly added functions have been added.
Is there any documentation that needs to be updated for this PR?
Yes, inline documentation was added as a part of this PR to help facilitate quick understanding of what it does.

Thanks for putting this up, there are also quite some changes for dynamichelper in Guardrails PR, looks like some adaptiive changes are inevitable... :joy:

LGTM overall, we may need some more inputs around that error check logic

@facchettos Can you provide some quantification on your statement? What changes don't belong? What about this PR is too complicated for you to review?
I've provided comments for most of the changes, there are less than 10 files changed one of which is auto-generated. Furthermore every change is documented with a helpful git commit message:

Apart from that this PR is about to get a fair sight more complicated as we will be uploading a new version of this PR with the guardrails dynamic helper changes as well as the changes required for this PR under 2806.

changing dynamichelper.GVRResolver to dynamichelper.Interface isn't really related to the feature right? same for exporting dynamichelper. It is something that makes sense but now it is tied to your feature work and makes the PR review process more cumbersome

dynamichelper.GVRResolver to dynamichelper.Interface

It's GVRResolver to GVRInterface and yes it's related. As explained in the inline comments on the PR we had to make the change so that we could generate a mock for the GVR resolver.

Closing this PR out as controller-runtime changes are a significant departure from the current code changes, so there's no use reviewing this branch herein.


Make dragging a conversation onto the scene start that conversation if none is currently active.

Atm if you drag a conversation journal entry it onto the scene, it create a journal note/pin.

I will look into this to see if it is possible.
At the moment, I do not know if there is any way to intercept the onDrop that is fired when dropping something on the canvas (at the very least, not without overwriting the original canvas onDrop). The original functionality of creating a note will still need to be kept as you might still want to create a note with conversation, but maybe when holding down CTRL it will start a conversation instead of creating a note.
That said, I will look into it and see what can be done.


Don't use default mappings

Including with default mappings is an anti-pattern for vim plugins.  A better (and easy) pattern is to not ship with any, but suggest some in the readme.  This is a well-accepted and well-mannered pattern.

Sure... here on github a pull request is the well-mannered thing to do ;)

Haha fair enough! :dog:

Mappings are now suggested in the readme.


[Feature request] latest lightgbm support

The latest version of lightgbm (v3.3.4) removes fobj from the train argument of the trainingAPI and does not seem to work.
Is there any plan to support the latest version of lightgbm?

Thanks for your interest in the project.
I am planning to release a revised version of both XGBoostLSS and LightGBMLSS soonish, including support for latest versions. But not sure when I find the time.

Thank you for taking the time out of your busy schedule to reply!
We look forward to the day when this wonderful library will be available in the latest version of lgbm.


Fix SET_PAGE_ORDER and write tests ensuring selected pages remain con…

…sistent.
r? anyone

I made some suggestions, but they don't need to be addressed if you choose otherwise.


Openvpn client config has no key

This happens with the latest build on ubuntu 18.04. Exported openvpn client config's cert, ca and key values are empty.
# Client certificate and key.
#
# A pair of client certificate and private key is required in case you want to
# use the certificate authentication.
#
# To enable it, uncomment the lines below.
# Paste your certificate in the <cert> block and the key in the <key> one.

;<cert>
;-----BEGIN CERTIFICATE-----
;
;-----END CERTIFICATE-----
;</cert>

;<key>
;-----BEGIN RSA PRIVATE KEY-----
;
;-----END RSA PRIVATE KEY-----
;</key>

use 9669 build

ignore certificate,
add
setenv CLIENT_CERT 0
on the last line of the .ovpn file
#521


Cant edit config files

i dont know why when i edit the Config.yml it restores the default config. also i suggest add a /trade reload or something like.
Using 1.1.4 downloaded from spigot today

I have same exact issue. It is weird because the config worked just fine until I did some server maintenance and the plugin reset its config file. I would love a fix!

I'll update my WarpSystem first.
Maybe a week.

You can already reload my plugin with "/tradesystem reload" or "/ts reload".
Tested it and maybe I did some changes with my api or it already works...


fix(invoke_ut): Trigger the custom_task UT, fix them and minor changes to enable test discovery in vscode

What does this PR do?

Trigger the custom_task UT (pattern is _tests.py not _test.py)
fix them
minor changes to enable test discovery in vscode

rename go_test as gotest because in vscode the pattern was _test.py
remove indirections in __init__

Before:
................
........................................................................
----------------------------------------------------------------------
Ran 158 tests in 5.727s

After
................................................................................................................................................................
----------------------------------------------------------------------
Ran 160 tests in 3.976s

Motivation
Housekeeping

Additional Notes

Possible Drawbacks / Trade-offs

Describe how to test/QA your changes

/merge


Typo fix in sonarqube/README.md

Some sentences miss the “.” in the end.

/assign @sameersbn

/assign

Please resolve the merge conflict

in the ci testing there is an error as following:
Checking the Chart version has increased for the chart at stable/sonarqube
Error please increment the new chart version to be greater than the existing version of 0.4.0
Exited with code 1
So I increased the version to 0.4.1

You need to rebase off of master to resolve the merge conflict. Git is stubborn sometimes

This PR is recreated to PR #5043.
Thanks a lot!


Update digikam to 4.11.0

Thank you for the contribution. It was merged directly as d8bc4f2fb228cfe78d0d38f6e551ece20db65fd6 to keep commit history cleaner. Your contribution is still credited to you.


After v4 Deployment Checklist

[x] PR v4.0.0 to master
[x] add {legacy} in telemetry for legacy cmd execs
[x] Get data off of old instance & shut it down
[ ] cite https://github.com/iamadamdev/bypass-paywalls-chrome/
[x] Google Analytics Userid not showing, shows clientid
[x] invite link in bot's profile - add on discord.com/developers
[ ] create github release
[ ] change bot playing status to /help
[ ] for goodness sakes get sentry on the bot rn

xvfb fix:
https://stackoverflow.com/questions/51883055/running-puppeteer-with-xfvb-headless-false
OR
on init docker img, create sh script that starts an xvfb server BEFORE nodejs runs - that way puppeteer can just choose to adopt the single available display.
Also make sure to implement shell cmd removing /tmp/x.99 file

fixed in https://github.com/AirFusion45/db8bot/commit/f7a12fb1c1b7fe6980d3568ad5250f359f035cd0


Fixed iOS app loading issue.

Added try catch block in main.dart to prevent runtime error as iOS does not support receive_intent package
Changed AppBar in notifications.dart to TopBar.
Adjusted bottom padding for some screen that home button won't overlap with other elements.

@AliFahimi No, doesn't seem like anything else is causing issues at the moment. I will keep eye on it.


Fix SNODAS Processing Code Causing 0500 Timestamps

@adamscarberry, @jeffsuperglide, 0600 is the correct timestamp for SNODAS (0500 is incorrect). Here is a note from the SNODAS documentation on NSIDC: https://nsidc.org/sites/default/files/nsidc_special_report_11.pdf

Example: us_ssmv11034tS__T0001TTNATS2003102305HP001.grz is modeled snow
water equivalent (ssmv11034) summed for all the layers of the snow model (tS__). It is
the output from just one hour (T0001), representing the time step starting at 2003-10-23
0500h (TS2003102305), is potentially generated for every hour of the day (H) and
represents the snow an hour after the start of the time step (P001). E.g. SWE at 0600h

We will want to check if this is impacting current realtime processing for SNODAS as well.
Originally posted by @brettpalmberg in https://github.com/USACE/cumulus/issues/244#issuecomment-1209465407

Downloaded sample SNODAS files from NSIDC, one from 2005, one from 2018.  Reviewing the metadata (.txt files adjacent to the .dat files within the .tar) revealed that Stop hour: 5 is present. This is resulting in select products saving with a timestamp of :0500, rather than 0600 as described in the SNODAS documentation (comment above) and in this table from the same document:

Examining a more recent SNODAS file (January 01, 2022), the Stop hour is 6 for all metadata files (Stop hour: 6).

What's the offset code (P00Z) for each file, 2005 and 2018?

@jeffsuperglide, this is the content in the file named us_ssmv11044bS__T0024TTNATS2005010105DP000.txt
Format version: NOHRSC GIS/RS raster file v1.1
Data source: RUC2, NESDIS, etc.
Created by module: sm_products
Created by module comment: number BARD codes:<PHONE_NUMBER> BARD codes: 58131678 147297932 129524114 37109162 145371129 130253097 108471287 141516526 133849623 135342147 9160380 87295989 12222 92757697 90881019 88954851 120043862 12229 88975910
Created year: 2005
Created month: 1
Created day: 1
Created hour: 6
Created minute: 30
Created second: 34
Last modified by module: sm_products
Last modified by module comment: Not applicable
Last modified year: 2005
Last modified month: 1
Last modified day: 1
Last modified hour: 6
Last modified minute: 30
Last modified second: 34
Satellite data: no
Satellite name: Not applicable
Satellite channel: 0
Satellite data calibrated: no
Description: Modeled melt rate, bottom of snow layers, 24-hour total
Thematic: no
Theme file: Not applicable
Data units: Meters /<PHONE_NUMBER>00
Product code: 147651864
Attribute table: Not applicable
Data file pathname: us_ssmv11044bS__T0024TTNATS2005010105DP000.dat
Data type: integer
Data bytes per pixel: 2
Data intercept: 0.000000000000000
Data slope: 1.000000000000000
Minimum data value: 0.000000000000000
Maximum data value: 12296.000000000000000
No data value: -9999.000000000000000
Number of columns: 6935
Number of rows: 3351
Geographically corrected: yes
Projected: no
Projection file: Not applicable
Horizontal datum: WGS84
Horizontal precision: 0.008333333333333
Elevation above datum: no
Vertical datum: Not applicable
Vertical precision: 0.000000000000000
Benchmark column: 0
Benchmark row: 0
Benchmark x-axis coordinate: -124.729583333331703
Benchmark y-axis coordinate: 52.870416666665669
X-axis resolution: 0.008333333333333
Y-axis resolution: 0.008333333333333
X-axis offset: 0.003749999996645
Y-axis offset: 0.003750000001124
Minimum x-axis coordinate: -124.733749999998366
Maximum x-axis coordinate: -66.942083333334011
Minimum y-axis coordinate: 24.949583333333454
Maximum y-axis coordinate: 52.874583333332339
Start year: 2004
Start month: 12
Start day: 31
Start hour: 6
Start minute: 0
Start second: 0
Stop year: 2005
Stop month: 1
Stop day: 1
Stop hour: 5
Stop minute: 0
Stop second: 0
Compressed: no
Compression file: Not applicable
Number of color tables: 0
Color table 01 descriptor: Not applicable
Color table 02 descriptor: Not applicable
Color table 03 descriptor: Not applicable
Color table 04 descriptor: Not applicable
Color table 05 descriptor: Not applicable
Color table 06 descriptor: Not applicable
Color table 07 descriptor: Not applicable
Color table 08 descriptor: Not applicable
Color table 09 descriptor: Not applicable
Color table 10 descriptor: Not applicable
Color table 11 descriptor: Not applicable
Color table 12 descriptor: Not applicable
Color table 13 descriptor: Not applicable
Color table 14 descriptor: Not applicable
Color table 15 descriptor: Not applicable
Color table 16 descriptor: Not applicable
Color table 01 file: Not applicable
Color table 02 file: Not applicable
Color table 03 file: Not applicable
Color table 04 file: Not applicable
Color table 05 file: Not applicable
Color table 06 file: Not applicable
Color table 07 file: Not applicable
Color table 08 file: Not applicable
Color table 09 file: Not applicable
Color table 10 file: Not applicable
Color table 11 file: Not applicable
Color table 12 file: Not applicable
Color table 13 file: Not applicable
Color table 14 file: Not applicable
Color table 15 file: Not applicable
Color table 16 file: Not applicable
Histogram: no
Histogram file: Not applicable

Testing indicates this problem is solved. Thanks @brettpalmberg

Excellent! Thanks for testing @adamscarberry. @jeffsuperglide, if there's a better way to apply this fix, definitely jump-in. The way I fixed it is admittedly a patch based on the best information I'm aware of at this point.


Domain activation

Before opening, please confirm:

[X] I have checked the custom domains troubleshooting guide.
[X] I have read the guide for submitting bug reports.
[X] I have done my best to include a minimal, self-contained set of instructions for consistently reproducing the issue.

App Id
d2jemb9ie603o0
Region
eu-west-2
Step
Domain activation
Status
Failed
Issue or question
Trying to add domain to amplify on aws but keep getting error
Error message
We had issues connecting your custom domain: min.ng. Please visit the Domain Management page for more information.
Additional information
No response

Hi @henryodinakamin is this still an issue? When I visit https://www.min.ng/ I am able to view the site successfully?

Thanks Jared.
Everything is working fine now
Odinaka Onah
Software Engineer
MIN.ng
---- On Thu, 12 Aug 2021 21:52:32 +0100 Jared Franzone @.***> wrote ----
Hi https://github.com/henryodinakamin is this still an issue? When I visit https://www.min.ng/ I am able to view the site successfully?
—
You are receiving this because you were mentioned.
Reply to this email directly, https://github.com/aws-amplify/amplify-console/issues/2158#issuecomment-897959605, or https://github.com/notifications/unsubscribe-auth/AQG7P76LEHZXBWBUKEPG4JLT4QYBBANCNFSM5CBZ3TEA.
Triage notifications on the go with GitHub Mobile for https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or https://play.google.com/store/apps/details?id=com.github.android&utm_campaign=notification-email.


PHOENIX-7108 Provide support for pruning expired rows of views using Phoenix level compactions

Rebased the old PR to include the PHOENIX-7041 (ADDENDUM-2) - PR