[@svelteui/core] Early return for popper if no arrow is enabled

Early return for popper if arrow is not enabled
Fixes #117
Before submitting the PR, please make sure you do the following

[X] Read the Contributing guide
[X] Prefix your PR title with [@svelteui/core], [@svelteui/actions], [@svelteui/motion], [@svelteui/core], [core], or [docs].
[X] This message body should clearly illustrate what problems it solves.

Tests

[X] Run the tests with npm test and lint the project with npm run lint or just run npm run repo:prepush and check to see if it's passing.

Checking why CI is failing, but not related to the changes made in this PR


The result of Note#offer(NoteData) is not correct

I am currently running

SpongeVanilla version: 1.12.2-7.1.3-RC131
Java version: 1.8.0_171
Operating System: Windows 10

Issue Description
The pitch that is offered and the final pitch are different.
Note note = ...;
NotePitch[] pitches = {NotePitches.F_SHARP0,
        NotePitches.G0, NotePitches.G_SHARP0, NotePitches.A1, NotePitches.A_SHARP1,
        NotePitches.B1, NotePitches.C1, NotePitches.C_SHARP1, NotePitches.D1,
        NotePitches.D_SHARP1, NotePitches.E1, NotePitches.F1, NotePitches.F_SHARP1,
        NotePitches.G1, NotePitches.G_SHARP1, NotePitches.A2, NotePitches.A_SHARP2,
        NotePitches.B2, NotePitches.C2, NotePitches.C_SHARP2, NotePitches.D2,
        NotePitches.D_SHARP2, NotePitches.E2, NotePitches.F2, NotePitches.F_SHARP2};
for(NotePitch pitch : pitches){
    NoteData data = note.getNoteData();
    data.set(data.note().set(pitch));
    note.offer(data);
    System.out.printf("%-10s %-10s\n", pitch.getName(), note.getNoteData().note().get().getName());
    //The first one is the pitch that I offer, and the second one is the final pitch of the note block.
}

It should print 2 same pitch names in 1 line, but it doesn't:

This should be fixed in the latest build.


Kestrel is a cross-platform web server for ASP.NET Core based on libuv

Seems not correct anymore.

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

ID: 2639218d-5e54-aba0-ca0a-e53025b06d15
Version Independent ID: fec67d60-26a4-ba4c-45cf-f53c74281659
Content: Service communication with the ASP.NET Core
Content Source: articles/service-fabric/service-fabric-reliable-services-communication-aspnetcore.md
Service: service-fabric
GitHub Login: @vturecek
Microsoft Alias: vturecek

@yahorsi Thanks for the feedback! I have assigned the issue to the content author to investigate further and update the document as appropriate.


Fix incorrect 'drag_from' assignment of GraphNodes

Fixes #59843

This should've been pushed to 3.x (or master if it's reproducible there too), and then backported back to 3.4.

Superseded by https://github.com/godotengine/godot/pull/59954.


cppQML: Add the GPU vendor prefix to the dockerfiles

This will allow us to build the image using the correct base image for the specific GPU vendor.
Related-to: #51

LGTM


Fix Wine for local installations

It's not enough to set the wine properties in execution.defaults.properties, because that causes issues if you don't actually have wine installed.


Go: Handle documentation on struct fields. [phab:D1499]

Created by fromberger at 2017-04-07 16:54:57:

salguarnieri accepted this revision at 2017-04-07 17:01:30

fromberger closed via commit 4020ac5e836f8b7a51ea9a685de4eb4fd3dd5482 at 2017-04-07 17:03:19


Rework integration test setup for Tigris and auth

What should be done?
At the moment, we fetch flag values but each test can't assign value for the flag. Additionally -handler flag is used incorrectly for validator.

Validators should be used only for target. When we run compatibility tests with target=tigris and compat=MongoDB, we get validators for tigris handler for both databases and then ignore MongoDB's error. In general, -handler's flag value is used incorrectly. https://github.com/FerretDB/FerretDB/blob/f0ca7811ed2aae21ce5063bd3cab533d56cf6cfb/integration/setup/setup_compat.go#L131
Integration setup uses flag's value but unable to specify flags used per test cases. Enable test cases to test authentication. https://github.com/FerretDB/FerretDB/blob/f0ca7811ed2aae21ce5063bd3cab533d56cf6cfb/integration/setup/common.go#L231
Test different flags values of env data TestEnvData.
Test different flag values of postgresql-url in TestCommandsAuthenticationSASLStart
Provider is compatible with both compat and target, but validator is only compatible with target. Fix this definition https://github.com/FerretDB/FerretDB/blob/62039bf08d8cb4cd19bbc39c0c75008f13e3a48c/integration/shareddata/shareddata.go#L33-L39
pg uri used for testing is set from creating a new listener or using existing connection on port. Rework on how uri is built and used. Currently attempting all possible combinations. Probably this wouldn't help for speed. https://github.com/FerretDB/FerretDB/blob/cc7b47db1efce9c164f5922eb564ea6b7a8592ef/integration/setup/common.go#L170-L181
Remove code like https://github.com/FerretDB/FerretDB/blob/56a2dd17b77bcb6afe1fc64b592a7985c4df15b7/integration/create_test.go#L70-L81

Keep note that maybe we may want test data per provider.
Where?
See references to this issue in code.
DoD:

[x] in compat test, validators are correctly applied for target but not for compat.
[x] tests added for TestCommandsAuthenticationSASLStart

[x] authentication with PLAIN
[ ] authentication with invalid credential
[x] authentication with valid credential

[x] uri for specific target/compat is being built.
[x] validator is not used for compat
[ ] address issue numbers mentioned in the code

[x] rework validations in shareddata
[ ] fix task env-data (#2200)
[x] fix test script

I will check what else we could do

I will check if we could do something more useful


SemArt 1.0

Hi,
Hope this message finds you well.
It seems the dataset of semart1.0 is not public. Can you please share the data e.g.,  semart1.0_train_val.json and semart1.0_test.json please? Or can you please direct me to the place I can get them?
Best,
Shuai

Oh I found it on the google drive. Thanks!


Updating version for ROCm 4.0; adding CHANGELOG

Did we update to a more recent Thrust version?

Ah right, I missed the update from 1.9.4-1.9.8.  I will add that in now.


Space in arguments

Given a file path (for -f command), if it has a space in it, docker compose (and presumably other tasks) will not append quotes to handle them propertly.
It's not the first time something similar had happened to me. I opened this bug one year ago: https://github.com/Microsoft/vsts-agent/issues/1091 and now it's propertly handled by the agent's installer. But now I just encounter it while setting up CD for a customer in which the project have a space in the name.
Let's see how it's handled by compose:
2018-09-03T18:10:51.3409613Z [command]/usr/local/bin/docker-compose -f /home/username/myagent/_work/r1/a/_My Project-Docker container-CI/drop/devinfrastructure.yaml -f /home/username/myagent/.docker-compose.1535998251324.yml -p My Project pull
As you can see argumnets are broken by the lack of quotes. It was easy to fix in the -p parameter, by using quotes in the template, like so: "$(Build.Repository.Name)"
But it's all over the place AFAIK, ie, other arguments.
I think most of the tasks may be affected by this, for which I have 3 ideas:

Make sure,one by one, that all tasks get this right by appending quotes or other mechanisms to allow spaces.
Open an issue in VSTS, to actually disallow the use of spaces in Project's name.
All the variables that comes from VSTS, like $(Build.Repository.Name), gets quotes appended. (Not good and might break stuff).

I understand this is a very mundane issue, but it's not the first time I encounter spaces in project's names. And they always bring throubles.
If you guys think that this should be resolved by vsts team, then this issue can be closed inmediately and i will open it in the respective tracker.
Cheers

@andreujuanc , In linux agent, quotes are not visible in logs if command argument contains spaces, but command will work fine. If you try same in windows agent it will show quotes around the project name.  There is already bug opened to address this issue in vsts-task-lib area https://github.com/Microsoft/vsts-task-lib/issues/383. If you see any with spaces in arguments please reopen the issue.

Hello @vithati this is clearly not the way it works, since my project was failing and I fixed it by removing the white space from my project name.
How is that fix possible if "command will work fine".
It's not a matter of showing the quotes or not, but actually passing them to the commands.

Hi @andreujuanc , i have tried docker compose command with project name having spaces. I didn't see any failure while task execution. I have tried docker compose build and pull commands. ([command]/usr/bin/docker-compose -f /home/tvikrantht-pc/vstsagent/_work/2/s/docker-compose.yml -f /home/tvikrantht-pc/vstsagent/.docker-compose.1537274313492.yml -p My Team Project build , [command]/usr/bin/docker-compose -f /home/tvikrantht-pc/vstsagent/_work/2/s/docker-compose.yml -f /home/tvikrantht-pc/vstsagent/.docker-compose.1537274313492.yml -p My Team Project pull).  Can you share debug logs of failed task?

Hi @andreujuanc, i have tried docker-compose command with project name having spaces. I didn't see any issues. I have tried docker-compose build and pull (My task log has [command]/usr/bin/docker-compose -f /home/my-pc/vstsagent/_work/r5/a/_My Team Project/docker-compose.yml -f /home/my-pc/vstsagent/.docker-compose.1537430883464.yml -p My Team Project build, [command]/usr/bin/docker-compose -f /home/my-pc/vstsagent/_work/r5/a/_My Team Project/docker-compose.yml -f /home/my-pc/vstsagent/.docker-compose.1537430883464.yml -p My Team Project pull). Can you share your task debug logs?

I will try to repro ASAP. Probably this weekend.
Got some issues this week and schedule is full.
Will report as soon as I get the logs.
Thanks for the follow up.

@andreujuanc, Do you have an update?

Closing this issue because of no update.

Sorry I havent had the change to test. Been super busy.


Stable order for virtual packages

uv gives priorities to packages by package name, not by virtual package (PubGrubPackage). pubgrub otoh when prioritizing order the virtual packages. When the order of virtual packages changes, uv changes its resolutions and error messages. This means uv was depending on implementation details of pubgrub's prioritization caching.
This broke with https://github.com/pubgrub-rs/pubgrub/pull/299, which added a tiebreaker term that made pubgrub's sorting deterministic given a deterministic ordering of allocating the packages (which happens the first time pubgrub sees a package).
The new custom tiebreaker decreases the difference to upstream pubgrub.

For transformers, the difference comes from fsspec and datasets being mutually incompatible. Using just the two packages as input we can coerce both versions, which now appear in different, hence the slightly larger lockfile.
8,9c8,9
< datasets==2.20.0
< dill==0.3.8
---
> datasets==2.14.4
> dill==0.3.7
12c12
< fsspec==2024.5.0
---
> fsspec==2024.6.1
16c16
< multiprocess==0.70.16
---
> multiprocess==0.70.15
21d20
< pyarrow-hotfix==0.6


Custom SizeSelector is not working on some devices like Xiaomi MI5

What are you trying to achieve or the steps to reproduce?
I created my own SizeSelector for photoSize and previewSize which looks like Collections.max(items, CompareSizesByArea()).flip() to makes photo in 3:4 aspect ration instead of 4:3. On some devices like Nexus 5 it is pretty ok and everything works fine, but on Xiaomi Mi5 my custom SizeSelector is omitted. The output photoSize is the smallest one possible. When i set the default biggestSize() provided by library the image is always in biggest possible resolution.
How did you initialize FA?
fotoapparat = Fotoapparat
                .with(this.context)
                .into(binding.camera)
                .previewSize { items -> Collections.max(items, CompareSizesByArea()).flip() }
                .previewScaleType(ScaleType.CENTER_CROP)
                .photoSize { items -> Collections.max(items, CompareSizesByArea()).flip() }
                .flash(Selectors.firstAvailable(
                        FlashSelectors.autoFlash(),
                        FlashSelectors.off()
                ))
                .lensPosition(back())
                .focusMode(Selectors.firstAvailable(
                        continuousFocus(),
                        autoFocus(),
                        fixed()
                ))
                .build()

What was the result you received?
The result on Xiaomi is preview size equal to the biggest possible resolution and smallest possible photo size.
What did you expect?
I'm expecting the biggest possible resolution of photo but fliped one.
For example SizeSelector.biggestSize() returns Size of 1920 width and 1080 height, but i want Size of 1920 height and 1080 width.
Context:

FA version: 1.4.1
Devices/APIs affected: Xiaomi Mi5 - Marshmallow

The items on your left hand side of the lambda are the available sizes. When you flip the size you mutate the selected from the max function item but that doesn't mean that the device will support it -> since it's not in the original items list.
Doesn't matter if you want a 1080x1920 instead of 1920x1080 picture, the hardware might not be able to support it. This might work for small sizes but definitely not the biggest one.


3D example

Excellent work! May I ask if there are any 3D examples available? Is this library capable of supporting obstacle avoidance in a 3D world?

Yes, the algorithm and library can handle 3D obstacles. It works the same way as 2D-obstacles, but requires three-dimensional input vectors for input/output velocity, as well as all obstacles properties.

Thank you for your answer!I am wondering if it's possible to provide a 3D demo, or some documentation on how to build 3D models, because I don't know how to use this library for obstacle avoidance in a 3D world. If it's possible, I would be extremely grateful.

A 3D example for the modulation can be found here:
https://github.com/hubernikus/dynamic_obstacle_avoidance/blob/main/tests/test_modulation_3d.py
This is without visualization though, but multiple frameworks exist for that depending on your need.
What are you trying to do?

I am very pleased to receive your response. I would like to apply this method to a robotic arm, enabling it to autonomously avoid obstacles in a dynamic environment.
I have carefully reviewed the code you provided and made some modifications.I encountered the following error:
raise NotImplementedError("Shapely object only existing for 2D") NotImplementedError: Shapely object only existing for 2D
I noticed that there is a create_shapely(self) function in the code for creating obstacles, which calls the Shapely library. However, Shapely only supports 2D operations. I would like to understand the specific purpose of the create_shapely(self) function. Is there a way to rewrite this function to make it suitable for 3D, or are there some problems with my code?
this is my code:
import numpy as np
from numpy import pi

from numpy import linalg as LA

import matplotlib
matplotlib.use('TkAgg')
import matplotlib.pyplot as plt

from vartools.animator import Animator
from vartools.states import ObjectPose
from vartools.dynamical_systems import LinearSystem

from dynamic_obstacle_avoidance.obstacles import EllipseWithAxes, Sphere,Ellipse
from dynamic_obstacle_avoidance.obstacles import CuboidXd
from dynamic_obstacle_avoidance.containers import ObstacleContainer
from dynamic_obstacle_avoidance.avoidance import ModulationAvoider

# from dynamic_obstacle_avoidance.obstacles import Ellipse
from dynamic_obstacle_avoidance.visualization import plot_obstacles

from fast_obstacle_avoidance.control_robot import BaseRobot
from fast_obstacle_avoidance.obstacle_avoider import FastObstacleAvoider

from scipy.spatial.transform import Rotation as R

class DynamicObstacleAnimator(Animator):
    '''
    this is the class of fast_avoider model
    '''

    def setup(self):
        self.dim=3
        start_point = np.array([40, 40, 40])
        self.robot = BaseRobot(pose=ObjectPose(position=start_point, orientation=R.identity()))

        self.environment.append(
            Ellipse(
                axes_length=[10, 10, 10],
                center_position=np.array([25, 25, 30]),
                linear_velocity=np.zeros(3),
                margin_absolut=0,
                tail_effect=False,
                repulsion_coeff=1.0,
            )
        )

        self.initial_dynamics = LinearSystem(
            attractor_position=np.array([0, 0, 0]), maximum_velocity=1.0
        )

        self.avoider = FastObstacleAvoider(
            obstacle_environment=self.environment,
            robot=self.robot,
        )

        self.dynamics_avoider=ModulationAvoider(
            initial_dynamics=self.initial_dynamics,
            obstacle_environment=self.environment,
            # robot=self.robot,
        )

        self.position_list = np.zeros((self.dim, self.it_max + 1))
        self.position_list[:, 0] = start_point

    def update_step(self, ii):
        if not (ii % 10):
            print(f"It {ii}")

        # Initial Dynmics and Avoidance
        testvalue = self.robot.pose.position
        print(testvalue)
        self.initial_velocity = self.initial_dynamics.evaluate(self.robot.pose.position)
        self.modulated_velocity = self.dynamics_avoider.avoid(velocity=self.initial_velocity,
                                                              position=self.robot.pose.position)

        self.robot.pose.position = (
                self.robot.pose.position + self.modulated_velocity * self.dt_simulation
        )

        self.position_list[:, ii + 1] = (
                self.modulated_velocity * self.dt_simulation + self.position_list[:, ii]
        )

        print(f"Step {ii}: Position {self.robot.pose.position}")
        print(f"Initial Velocity: {self.initial_velocity}")
        print(f"Modulated Velocity: {self.modulated_velocity}")

    def has_converged(self, ii):
        """Return 0 if still going, and
        >0 : has converged at `ii`
        -1 : stuck somewher away from the attractor
        """
        if (
            LA.norm(self.robot.pose.position - self.initial_dynamics.attractor_position)
            < 1e-1
        ):
            # Check distance to attractor
            return ii

        elif LA.norm(self.modulated_velocity) < 1e-2:
            #  Check Velocity
            return 1

        return 0

    def plot_trajectory(self):
        fig = plt.figure()
        ax = fig.add_subplot(111, projection='3d')

        ax.plot(
            self.position_list[0, :],
            self.position_list[1, :],
            self.position_list[2, :],
            label='Trajectory'
        )

        ax.scatter(self.position_list[0, 0], self.position_list[1, 0], self.position_list[2, 0], color='g',
                   label='Start')
        ax.scatter(self.position_list[0, -1], self.position_list[1, -1], self.position_list[2, -1], color='r',
                   label='End')

        for obs in self.environment:
            self.plot_sphere(ax, obs.center_position, obs.axes_length[0])

        ax.set_xlabel('X')
        ax.set_ylabel('Y')
        ax.set_zlabel('Z')
        ax.legend()
        plt.show()

    def plot_sphere(self, ax, center, radius):
        u, v = np.mgrid[0:2 * np.pi:20j, 0:np.pi:10j]
        x = center[0] + radius * np.cos(u) * np.sin(v)
        y = center[1] + radius * np.sin(u) * np.sin(v)
        z = center[2] + radius * np.cos(v)
        ax.plot_surface(x, y, z, color='b', alpha=0.3)

def main():
    my_animator = DynamicObstacleAnimator(
        it_max=60000,
        dt_simulation=0.005,
    )
    my_animator.setup()
    for i in range(my_animator.it_max):
        my_animator.update_step(i)
        if my_animator.has_converged(i):
            break
    my_animator.plot_trajectory()
    aa=1
if __name__ == "__main__":
    main()

Yes, indeed. The Ellipse class was specifically using shapely. I implemented a newer version of it, called EllipseWithAxes, you can use it by replacing line 15 with:
from dynamic_obstacle_avoidance.obstacles import EllipseWithAxes, Sphere, Ellipse

I'll work on removing the outdated class.


SIS-CC SDMX Power Bi connector

Hello, this documentation is updated now that the connector is certified.
Best, David Barraclough


About Widget's Memory Usage

I found a problem, when I use ui.label() or TextEdit, the same character content (about 300kib of text), multiple drawing is more memory intensive than one drawing.
Is this normal?

It depends. If the label is on-screen and visible then yes, it will generate more triangles = more memory.
If the label is off-screen (e.g. deep down in a ScrollArea) it should not use up any extra memory

It depends. If the label is on-screen and visible then yes, it will generate more triangles = more memory.
If the label is off-screen (e.g. deep down in a ScrollArea) it should not use up any extra memory

Thank you for your reply;
But what I encountered was the second situation. As the text changes, each drawing will become more sluggish.
Perhaps I shouldn't pass the entire String to it?


fix(find-lazy-modules): JSON parse error for loadChildren

Fixes #1891, #1960.
cc @filipesilva @ericjim - was failing for ng2.io, but this fixes the issue.

lol, I guess it LGTM.

Nice find

LGTM but @hansl can you weigh in?

This fix is faulty though since it replaces quotes regardless of context.
I think I know what's going on, might take a look at it tomorrow. Might just need to evaluate the code (or even better don't parse JSON since we shouldn't need to).

I already made a function to get the string value of the key of an object, the more I think about that line the clearer the fix is. Typescript gives us the string value of a string literal, I just need to use that. My bad for this horrible code in the first place.
I was young, and that was folly.

Closed in favor of https://github.com/angular/angular-cli/pull/1987


Stakeholder payout is non-deterministic

The chain invariant is currently broken because, as specified in https://github.com/liftedinit/manifest-ledger/security/code-scanning/17, map iteration are non-deterministic in Go.
E.g., running
package main
import "fmt"
func main() {
    m := map[string]int{
        "one":   1,
        "two":   2,
        "three": 3,
    }
    for key, value := range m {
        fmt.Println(key, value)
    }
}

multiple times may result in a different output, e.g.,
➜  map go run ./main.go
three 3
one 1
two 2
➜  map go run ./main.go
one 1
two 2
three 3

Those cases are currently not detected in our e2e test suite because tests are run against a single validator. I was able to easily break consensus by modifying the stakeholder payout test in https://github.com/liftedinit/manifest-ledger/pull/47. You'll need to run the test multiple times as the test doesn't always break (~1 run in 5 with 2 validators and 3 stakeholders).
A failing run will show the following in the CometBFT logs
ERR prevote step: consensus deems this block invalid; prevoting nil err="wrong Block.Header.LastResultsHash.  Expected 0D6CC242AE0E189389EAFA9F417F0A1850B1E8928FB9B866A0D9D08B65833954, got 38E94F9F95CCC034DA44BA4AB91360B7F838DD542883DF53D40528ADA511084F" height=20 module=consensus round=1

Failing run example in CI: https://github.com/liftedinit/manifest-ledger/actions/runs/8804787416/job/24166242952
I haven't time to investigate if more of the codebase is affected but I plan to do so.
CC @Reecepbcups @chalabi2

This is odd since we are not breaking early within the map, and using all values. Regardless of order
Good catch if this is the case. I assume the coins need to be appended to a slice, then paid all at once rather than during each iter


Configurable workflow-controller rate limit

Is this a BUG REPORT or FEATURE REQUEST?: FEATURE REQUEST
What happened: Tried to create light-weighted workflows, but hit the argo rate limit.
What you expected to happen: There's a way to configure the argo rate limit

Found out that Kubernetes has it's own limit, I realized it probably make sense to have a default rate limitation specified by Kubernetes.


Create a way for a user to view all products and information about them

The required api route for viewing all products requires at least a schema definition. It is currently eager-loading all related models using and {include: [{all: true}]}. This also affects the component definition as well.


Minor improvements

@roeap fixing issues as I find them

Codecov Report

Merging #16 (ce0eabe) into main (f528470) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #16   +/-   ##
=======================================
  Coverage   93.38%   93.38%
=======================================
  Files           4        4
  Lines         121      121
  Branches       44       44
=======================================
  Hits          113      113
  Misses          7        7
  Partials        1        1

:mega: Codecov can now indicate which changes are the most critical in Pull Requests. Learn more


Option to observe write errors

Currently for the sinks like QueuingMetricSink which are passing data to the downstream sink in an async way there is no way to see if there were any errors while writing metrics - https://github.com/56quarters/cadence/blob/master/cadence/src/sinks/queuing.rs#L161.
The possible idea would be an option to register error callback which would be called each time write fails so the app could e.g. measure number of errors or report those in some way. We could extend MetricSink and provide default no-op impl to make the change backward compatible.
Opinions?

The possible idea would be an option to register error callback which would be called each time write fails so the app could e.g. measure number of errors or report those in some way. We could extend MetricSink and provide default no-op impl to make the change backward compatible.

Good idea but I'd rather not add it to MetricSink since it's behavior that only really makes sense with QueuingMetricSink. We could add a new constructor to QueuingMetricSink that accepts a closure to handle the errors similar to how the client currently does when calling client.count_with_tags().send()

Right, although on our side as sinks as composable we usually have signatures using MetricSink trait not particular implementation or QueuingMetricSink might be wrapped by some other custom sink. So if that would be added only to QueuingMetricSink then it might be not that easy to use.  Having something like:
fn onError(fn: Box<dyn Fn(MetricError) + Sync + Send + RefUnwindSafe>)

added to MetricSink would make it easier to use and it would allow to impl easily in the future for other cases where writes are handled asynchronously.
Already emit from MetricSink already describes the possibility that write may not be synchronous:

/// Note that implementations may return `0` bytes if the metric is not
/// immediately written (such as when it is buffered).  Callers should *NOT*
/// interpret this as an error.

so having onError would be complementary to it.

I don't like the idea of adding a mutator method to the MetricSink trait. Because the problem of missing in errors in Cadence itself is confined to the QueuingMetricSink, I'd rather add it only to that sink.

https://github.com/56quarters/cadence/pull/195


Partial indexing is slow

This code from the mailing list demonstrates a failure to inline a fairly simple function:
@numba.jit(nopython=True)
def sqeuclidean(x, y):
    distance = 0.
    for n in xrange(x.shape[0]):
        distance += (x[n] - y[n])**2
    return distance

@numba.jit(nopython=True)
def cdist(x, y):
    D = np.zeros((x.shape[0], y.shape[0]))
    for i in xrange(x.shape[0]):
        for j in xrange(y.shape[0]):
            for d in xrange(x.shape[1]):
                D[i, j] += (x[i, d] - y[i, d])**2
    return D

@numba.jit(nopython=True)
def cdist_func(x, y):
    D = np.empty((x.shape[0], y.shape[0]))
    for i in xrange(x.shape[0]):
        for j in xrange(y.shape[0]):
            D[i, j] = sqeuclidean(x[i], y[i])
    return D

a = np.random.random_sample((1000, 10))
b = np.random.random_sample((1000, 10))
%timeit cdist(a, b)
%timeit cdist_func(a, b)

Output:
10 loops, best of 3: 19.7 ms per loop
10 loops, best of 3: 87.6 ms per loop

The other possibility is that there is something less efficient about the way we handle the partial indexing of the 2D array in cdist_func.

Looking at the assembly, the function is inlined and the inner loop (the one which computes the squared distance) is compiled efficiently, but there's a lot of surrounding code handling reference counts on NRT structures, so I'm presuming this is the cause of the discrepancy.

oh, interesting.  Is the output of inspect_llvm() before optimization?

I meant the x86_64 assembly, not the LLVM assembly. I presume the LLVM assembly before optimization would be basically unreadable.

Here is the full loop nest:
https://gist.github.com/pitrou/6aca05016469510dd863
The inner loop (squared distance) is in LBB0_39. Storing the squared distance result and incrementing the indices in in LBB0_45. Of the 5 other blocks, 3 are reference counting boilerplate (in the outer loop).

By the way, what seems weird to me is that there are two increfs and two decrefs to the same meminfo block (pointed to by %rbx), rather than one for each distinct meminfo block (i.e. x[i] and y[i])...

the LLVM IR is kind of unreadable, but I thought I saw it call the sqeuclidean function, but that might have been before LLVM inlined the call.
In any event, know the problem is actually reference counting overhead is useful.

Changing the title to reflect current diagnosis: partial indexing of an array (or slicing, presumably) is not zero-cost as it creates a NRT-managed structure, incurring reference counting costs.

Update for timings taken using Numba 0.54.0:
@numba.jit(nopython=True)
def sqeuclidean(x, y):
    distance = 0.
    for n in range(x.shape[0]):
        distance += (x[n] - y[n])**2
    return distance

@numba.jit(nopython=True)
def cdist(x, y):
    D = np.zeros((x.shape[0], y.shape[0]))
    for i in range(x.shape[0]):
        for j in range(y.shape[0]):
            for d in range(x.shape[1]):
                D[i, j] += (x[i, d] - y[i, d])**2
    return D

@numba.jit(nopython=True)
def cdist_func(x, y):
    D = np.empty((x.shape[0], y.shape[0]))
    for i in range(x.shape[0]):
        for j in range(y.shape[0]):
            D[i, j] = sqeuclidean(x[i], y[i])
    return D

a = np.random.random_sample((1000, 10))
b = np.random.random_sample((1000, 10))

%timeit cdist(a, b)
%timeit cdist_func(a, b)

Output:
16.9 ms ± 489 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)
5.17 ms ± 77.2 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)

So... now the function-call version is ~3x faster than bare version (which seems odd to me). Other things I tried:

Switching (...)**2 -> np.square(...) shaves 2-3 ms off of cdist but increases the runtime of cdist_func by ~0.2 ms.
Switching to diff = x[n] - y[n]; distance += diff * diff instead shaves another 1.3 ms off of cdist and increases cdist_func by another 0.02 ms.

Maybe the increases in runtime of cdist_func are insignificant, but the decreases in runtime for cdist_func seems "real."
In the end, the best timings I can get for the two functions are 12.1 ms for cdist and 5.17 ms for cdist_func.

I see similar timings.
In the cdist_func version, the loop is unrolled 8 times in sqeuclidean, whereas it is fully rolled in cdist - I'd imagine this goes some way towards explaining the difference in speed.

Also, there are no relevant refcounts going on around the loop nests, so the original issue reported here is, I believe, resolved. I'm going to close this - if there's any further discussion to be had around loop unrolling / other performance optimization, it would be best to open a new issue to disambiguate it from the original issue reported here.


ci: publish edge@next

Codecov Report

Merging #4471 into dev will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##              dev    #4471   +/-   ##
=======================================
  Coverage   91.35%   91.35%
=======================================
  Files          60       60
  Lines        2105     2105
  Branches      506      506
=======================================
  Hits         1923     1923
  Misses        167      167
  Partials       15       15

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 6589670...80293b3. Read the comment docs.


Pact client doesn't send DELETE requests with body correctly

Software versions

OS: Windows 10
Library version: 9.0.4
Node Version: 10.15.3

Expected behaviour
Pact mock client during pact provider tests should send HTTP DELETE requests with HTTP body correctly.
Actual behaviour
It doesn't send HTTP DELETE requests correctly.
I'm using Node.js with Express framework as the server, and I'm running pact provider tests / pact verifications. One of the pact interactions is a DELETE request that has a request body (The spec does not forbid it). All other requests go through fine, but the delete request seemingly makes the server freeze and not return anything until the timeout, at which it resets the HTTP connection (see the pact provider log attached).
Upon further investigation with Wireshark I found out the underlying problem: the pact mock client doesn't even send all of the TCP packets that make up the HTTP DELETE request - it stops short of sending the body. This makes the server wait for the remaining packet, which never comes, thus hanging the test until it times out.

Interestingly, it does send Content-Length: 15 in the first packet, indicating that there will be a body in the following packet(s), but it never sends it.
Steps to reproduce
Try to verify a pact with the following interaction:
{
      "description": "A DELETE request to delete one reminder",
      "providerState": "User<EMAIL_ADDRESS>exists with 2 smart reminders",
      "request": {
        "method": "DELETE",
        "path": "/api/users/22/schedule",
        "headers": {
          "Content-Type": "application/json",
        },
        "body": {
          "items": [
            100
          ]
        }
      },
      "response": {
        "status": 204,
        "headers": {
        }
      }
    }

(or any pact that has a HTTP DELETE method with a request body).
Relevant log files
Log file generated by pact provider test attached.
pact-provider.log

Also, I understand that it's not the Pact library's fault, but one of the underlying HTTP client. But I'm having a hard time figuring out which one. Is it request, @types/request or some other?

pact-node wraps the pact-standalone ruby implementation, so I suspect that is the culprit (a quick stackoverflow search suggests that many ruby http clients don't support delete with bodies).
You might want to open an issue on pact-ruby. (@bethesque - is that the right place? I'm surprised we haven't hit this before).

@jnazander can you confirm that this issue exists if you call pact-provider-verifier directly?
$ node_modules/.bin/pact-provider-verifier

you can see the options with
$ node_modules/.bin/pact-provider-verifier --help

@TimothyJones
I checked with pact-provider-verifier directly and it does the same thing, sending the first packet, waiting a few minutes and then timing out with EOFError:
Failures:

  1) Verifying a pact between mobile-app and app-api-delete-test Given User<EMAIL_ADDRESS>exists with 2 smart reminders A DELETE request to delete one reminder with DELETE /api/users/22/schedule returns a response which has status code 204
     Failure/Error: replay_interaction interaction, options[:request_customizer]

     EOFError:
       end of file reached

1 interaction, 1 failure

Failed interactions:

* A delete request to delete one reminder given User<EMAIL_ADDRESS>exists with 2 smart reminders

Created an issue in pact-ruby - https://github.com/pact-foundation/pact-ruby/issues/198

Thanks. That means the issue definitely lies with the ruby implementation.
I'm not sure whether the right place to raise it is pact-provider-verifier or pact-ruby. Can you open an issue over on one of those?
I'll leave this issue open because we'll need to upgrade the pact-standalone version once it is fixed.

Nice, our messages crossed. Thanks for being so proactive!

Releasing v10.2.4, which should have a fixed version of pact-standalone. Let us know how you go

Someone else had this issue recently, and I told them I didn't think it could be fixed. Will have to do a search of all the issues and try and track it down.


Load video from magnet-links, ot torrent files

Would be cool to be able to load video from magnet links or torrent files, like it is done on https://webtor.io/ https://github.com/webtor-io

It was one of my first ideas, but I cancelled it, because the only torrents that work are the one compatible with WebRTC. Unless I'm missing something, webtor works the same way

They can help me with how to setup comeover step by step

AltLayer Airdrop Season One Announcement

Exciting news! AltLayer token (ALT) is set to launch on Binance on January 25, 2024. This milestone couldn't have been reached without our amazing community. Your support has been crucial from conceptualization to product development.
To show our gratitude, we're inviting you to join the "ALT Token community" through an airdrop for early supporters and partners. Below is a summary:

Total Allocated ALT Tokens: 300,000,000 (3% of total supply)
Distribution Categories:

NFT Holders
Altitude Campaign Participants
EigenLayer Restakers
EigenLayer Ecosystem Partners
Celestia Stakers and others

For detailed criteria and information, check the full announcement here.
Claim opens from January 25 to February 25, 2024. Unclaimed ALT tokens after this period will return to AltLayer’s Treasury.
Thank you for being part of AltLayer's success! More to come in Season One, stay tuned.
Note: Certain regions are restricted from the airdrop. Please review the disclaimer before participating.
caentzminger, @rameerez, @mdipanjan, @hyqer, @viettiennguyen029, @lnfin, @BeatsByJayDee, @archienorman11, @syunchanp, @johnthethird, @regohiro, @smol-ninja, @idiom-bytes, @tinchoabbate, @ystory, @lmythical, @ericfish, @puper, @LinuxIsCool, @rolibb


Design a configuration for the available endpoints

Design a configuration for the available endpoints that presents the user with a searchable list of endpoints to connect to.
Reference #316.

Sean confirmed with Dan and Dave on 2/2/24.

@swmuir has question for @drdavec on github and how we want to manage some things. Should be done by COB 3/1.


Create models for all tables in MySQL

Similar to what's happening in #96, we need to create files in app/models/* for all of our data models:

user
record
certificate
etc.

These should hide the details of working with Prisma, similar to how the user model works https://github.com/Seneca-CDOT/starchart/blob/c86bbe336d8ca9a75a5157bb326b9827c9bd7756/app/models/user.server.ts
The specific API to use needs some thought.  We'll also need some tests.

I thought this issue is just for making functions back then.
I'm not sure I'll get to tests this week, so I'm dissociating this from milestone 0.3 for now.

I think we should close this now, and continue work in other issues.  @cychu42 can you do that, unless you disagree for some reason?

Yes, we can close this to mark CRUD as "done". Testing is mentioned in the other issue mentioned.


TagBot trigger issue

This issue is used to trigger TagBot; feel free to unsubscribe.
If you haven't already, you should update your TagBot.yml to include issue comment triggers.
Please see this post on Discourse for instructions and more details.
If you'd like for me to do this for you, comment TagBot fix on this issue.
I'll open a PR within a few hours, please be patient!

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/86325

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/87772

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/94786

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/98526

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/99708

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/106331

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/116911


Cache invalidation not working for host header

Created an ingress resource, with a "host" option

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: httpbin
namespace: istio-test
annotations:
kubernetes.io/ingress.class: "istio"
spec:
rules:

host: httpbin.release02.istio.webinf.info
http:
paths:

path: /.*
backend:
serviceName: httpbin
servicePort: 8000

Deploy

curl -v  $INGRES_IP -H Host:httpbin.release02.istio.webinf.info

Modify the host header to 'httpbin.weekly.istio.webinf.info'

The old name still works, new name doesn't.
curl -v  $INGRES_IP -H Host:httpbin.weekly.istio.webinf.info

Verified that kubecl get ingress ... shows the new domain name,
You can try it - I've set the DNS name, cluster is 'weekly' under istio-testing project.
Fails:
curl -v  httpbin.weekly.istio.webinf.info
Works:
curl -v  httpbin.weekly.istio.webinf.info -H Host:httpbin.release02.istio.webinf.info
Also the pilot routes are old:
curl -v $PILOT/v1/routes/80/istio-proxy/ingress~~istio-ingress-4019532693-q4g32.istio-system~istio-system.svc.cluster.local
...
"httpbin.release02.istio.webinf.info"
...

Is this completely stale or known to still be an issue ?
If its still relevant @GregHanson can you assign it an appropriate priority & milestone in Zenhub


google-chrome: 125.0.6422.141 -> 126.0.6478.61

Description of changes

Announcement: https://chromereleases.googleblog.com/2024/06/stable-channel-update-for-desktop_13.html
Full changelog: https://chromium.googlesource.com/chromium/src/+log/125.0.6422.141..126.0.6478.61?pretty=fuller&n=10000

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] 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.11 Release Notes (or backporting 23.11 and 24.05 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

[x] Fits CONTRIBUTING.md.

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

Result of nixpkgs-review pr 319998 run on x86_64-linux 1

2 packages built:

google-chrome
netflix


rank_strings BrokenPipeError: [Errno 32] Broken pipe on macOS

macOS 10.14.6
python 3.7.6 homebrew

https://github.com/fireeye/stringsifter#running-from-the-command-line

Traceback (most recent call last):
  File "/usr/local/bin/rank_strings", line 8, in <module>
    sys.exit(argmain())
  File "/usr/local/lib/python3.7/site-packages/stringsifter/rank_strings.py", line 138, in argmain
    args.scores, args.batch)
  File "/usr/local/lib/python3.7/site-packages/stringsifter/rank_strings.py", line 27, in main
    ranker = joblib.load(os.path.join(modeldir, "ranker.pkl"))
  File "/usr/local/lib/python3.7/site-packages/joblib/numpy_pickle.py", line 598, in load
    obj = _unpickle(fobj, filename, mmap_mode)
  File "/usr/local/lib/python3.7/site-packages/joblib/numpy_pickle.py", line 526, in _unpickle
    obj = unpickler.load()
  File "/usr/local/Cellar/python/3.7.6_1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/pickle.py", line 1088, in load
    dispatch[key[0]](self)
  File "/usr/local/Cellar/python/3.7.6_1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/pickle.py", line 1376, in load_global
    klass = self.find_class(module, name)
  File "/usr/local/Cellar/python/3.7.6_1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/pickle.py", line 1426, in find_class
    __import__(module, level=0)
  File "/usr/local/lib/python3.7/site-packages/lightgbm/__init__.py", line 8, in <module>
    from .basic import Booster, Dataset
  File "/usr/local/lib/python3.7/site-packages/lightgbm/basic.py", line 33, in <module>
    _LIB = _load_lib()
  File "/usr/local/lib/python3.7/site-packages/lightgbm/basic.py", line 28, in _load_lib
    lib = ctypes.cdll.LoadLibrary(lib_path[0])
  File "/usr/local/Cellar/python/3.7.6_1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/ctypes/__init__.py", line 442, in LoadLibrary
    return self._dlltype(name)
  File "/usr/local/Cellar/python/3.7.6_1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/ctypes/__init__.py", line 364, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: dlopen(/usr/local/lib/python3.7/site-packages/lightgbm/lib_lightgbm.so, 6): Library not loaded: /usr/local/opt/gcc/lib/gcc/8/libgomp.1.dylib
  Referenced from: /usr/local/lib/python3.7/site-packages/lightgbm/lib_lightgbm.so
  Reason: image not found
Traceback (most recent call last):
  File "/usr/local/bin/flarestrings", line 8, in <module>
    sys.exit(main())
  File "/usr/local/lib/python3.7/site-packages/stringsifter/flarestrings.py", line 29, in main
    print(match.group().decode('ascii'))
BrokenPipeError: [Errno 32] Broken pipe
Exception ignored in: <_io.TextIOWrapper name='<stdout>' mode='w' encoding='UTF-8'>
BrokenPipeError: [Errno 32] Broken pipe

Requirement already satisfied, skipping upgrade: lightgbm==2.1.2 in /usr/local/lib/python3.7/site-packages (from stringsifter) (2.1.2)
Requirement already satisfied, skipping upgrade: numpy==1.17.1 in /usr/local/lib/python3.7/site-packages (from stringsifter) (1.17.1)
Requirement already satisfied, skipping upgrade: scikit-learn==0.21.3 in /usr/local/lib/python3.7/site-packages (from stringsifter) (0.21.3)
Requirement already satisfied, skipping upgrade: joblib==0.13.2 in /usr/local/lib/python3.7/site-packages (from stringsifter) (0.13.2)
Requirement already satisfied, skipping upgrade: pytest==3.10.1 in /usr/local/lib/python3.7/site-packages (from stringsifter) (3.10.1)
Requirement already satisfied, skipping upgrade: fasttext==0.9.1 in /usr/local/lib/python3.7/site-packages (from stringsifter) (0.9.1)
Requirement already satisfied, skipping upgrade: scipy in /usr/local/lib/python3.7/site-packages (from lightgbm==2.1.2->stringsifter) (1.3.1)
Requirement already satisfied, skipping upgrade: py>=1.5.0 in /usr/local/lib/python3.7/site-packages (from pytest==3.10.1->stringsifter) (1.8.0)
Requirement already satisfied, skipping upgrade: more-itertools>=4.0.0 in /usr/local/lib/python3.7/site-packages (from pytest==3.10.1->stringsifter) (7.2.0)
Requirement already satisfied, skipping upgrade: six>=1.10.0 in /usr/local/lib/python3.7/site-packages (from pytest==3.10.1->stringsifter) (1.12.0)
Requirement already satisfied, skipping upgrade: setuptools in /usr/local/lib/python3.7/site-packages (from pytest==3.10.1->stringsifter) (42.0.2)
Requirement already satisfied, skipping upgrade: atomicwrites>=1.0 in /usr/local/lib/python3.7/site-packages (from pytest==3.10.1->stringsifter) (1.3.0)
Requirement already satisfied, skipping upgrade: pluggy>=0.7 in /usr/local/lib/python3.7/site-packages (from pytest==3.10.1->stringsifter) (0.12.0)
Requirement already satisfied, skipping upgrade: attrs>=17.4.0 in /usr/local/lib/python3.7/site-packages (from pytest==3.10.1->stringsifter) (18.2.0)
Requirement already satisfied, skipping upgrade: pybind11>=2.2 in /usr/local/lib/python3.7/site-packages (from fasttext==0.9.1->stringsifter) (2.3.0)
Requirement already satisfied, skipping upgrade: importlib-metadata>=0.12 in /usr/local/lib/python3.7/site-packages (from pluggy>=0.7->pytest==3.10.1->stringsifter) (0.20)
Requirement already satisfied, skipping upgrade: zipp>=0.5 in /usr/local/lib/python3.7/site-packages (from importlib-metadata>=0.12->pluggy>=0.7->pytest==3.10.1->stringsifter) (0.6.0)
Building wheels for collected packages: stringsifter
  Building wheel for stringsifter (setup.py) ... done
  Created wheel for stringsifter: filename=stringsifter-0.20191202-py3-none-any.whl size=1932401 sha256=9e0f0c617e547b96f9ef88995e6d5006ae9aa54a8bc16cc16b077f1284f7e832
  Stored in directory: /Users/admin/Library/Caches/pip/wheels/3c/89/aa/c3bc7a6c171c52f5d4bea07724f5f2fd9fc4e7ad23b5946a8c
Successfully built stringsifter
Installing collected packages: stringsifter
  Attempting uninstall: stringsifter
    Found existing installation: stringsifter 0.20190907
    Uninstalling stringsifter-0.20190907:
      Successfully uninstalled stringsifter-0.20190907
Successfully installed stringsifter-0.20191202

probably same issue #10 is reporting, but I can't tell for sure because there is limited info
@phtully ?

Sorry for the delayed reply (was on vacation), but thanks for using StringSifter, @wesinator! Your stack trace seems to indicate that lightgbm might not be installed properly, or one of it's dependencies is missing. I'd like to help you fix this and change the docs/code to make sure other users can troubleshoot the issue in the future.
Let's start with this, if you open up a python interpreter within that environment, and try to import lightgbm manually, do you get the same OsError or BrokenPipeError in your stack trace?
The OSError looks like there may be a missing library dependency for lightgbm, namely libgomp, an OpenMP support library. Does brew install libomp before pip installing everything work?
For Mac users like yourself, we may need to provide additional instructions or edit the requirements.txt to reflect some of these issues that seem to be related to yours:

https://github.com/microsoft/LightGBM/issues/1369
https://stackoverflow.com/a/44967912

Let me know if one of the above methods helps fix this?

Sorry for the delayed reply (was on vacation), but thanks for using StringSifter, @wesinator! Your stack trace seems to indicate that lightgbm might not be installed properly, or one of it's dependencies is missing. I'd like to help you fix this and change the docs/code to make sure other users can troubleshoot the issue in the future.
Let's start with this, if you open up a python interpreter within that environment, and try to import lightgbm manually, do you get the same OsError or BrokenPipeError in your stack trace?

yes, import lightgbm gave the following error:
OSError: dlopen(/usr/local/lib/python3.7/site-packages/lightgbm/lib_lightgbm.so, 6): Library not loaded: /usr/local/opt/gcc/lib/gcc/8/libgomp.1.dylib
  Referenced from: /usr/local/lib/python3.7/site-packages/lightgbm/lib_lightgbm.so
  Reason: image not found

running the following fixed it:
brew install libomp
pip install -U lightgbm

ERROR: stringsifter 0.20191202 has requirement lightgbm==2.1.2, but you'll have lightgbm 2.3.1 which is incompatible.
Installing collected packages: lightgbm
  Attempting uninstall: lightgbm
    Found existing installation: lightgbm 2.1.2
    Uninstalling lightgbm-2.1.2:
      Successfully uninstalled lightgbm-2.1.2
Successfully installed lightgbm-2.3.1

works with latest lightgbm despite stringsifter req version

running with | less still shows BrokenPipe on exit, but not a big deal
$ flarestrings file.exe | rank_strings | less

Traceback (most recent call last):
  File "/usr/local/bin/rank_strings", line 8, in <module>
    sys.exit(argmain())
  File "/usr/local/lib/python3.7/site-packages/stringsifter/rank_strings.py", line 138, in argmain
    args.scores, args.batch)
  File "/usr/local/lib/python3.7/site-packages/stringsifter/rank_strings.py", line 53, in main
    print("\n".join(cutoff_sorted_strings))
BrokenPipeError: [Errno 32] Broken pipe

Ok, 1 step closer at least. This one looks more like a bug to me actually. Out of curiosity, when you're not using less how many lines do you expect from the rank_strings output on file.exe? We may have to change the way we write to stdout, I'm guessing if the number of strings is too long that this might happen using python's print statement like how we're doing it currently.

Note that this seems to be related to the issue raised here: https://twitter.com/cyb3rops/status/1228738821245820928

Note that this seems to be related to the issue raised here: https://twitter.com/cyb3rops/status/1228738821245820928

yes - see above https://github.com/fireeye/stringsifter/issues/11#issuecomment-597843366

In case it helps anyone, what worked for me was brew install lightgbm (which also installs libomp) then pip uninstall lightgbm && pip install -U lightgbm

#34 brings in updated dependencies, lightgbm 3 and Python 3.9. Tested on macOS 11.7.4 with a 450k words list. No broken pipe.
Closing


"Segmentation fault" error when playing Amazon music

Hi,
I got a "segmentation fault" error during the playing of amazon music, then my APP was forced to exit.
Here is the test log.
the re-creation procedure as below:

say "Alexa, play Taylor Swift", then start playing music.
Go to Now playing, you will see a Queue playlist, then random click the list item, repeatly within a short time, until you see a warning message in this page: Your Alexa device is not connected.

Hi boyce-xx,
We tried the exact steps few times from SampleApp on MAC and I did not see the warning message or the segmentation fault. The app was navigating across the different albums.  Whats the version of the SDK that you are using and whats the platform you are trying this on? Whats the version of gstreamer that you are using? Please provide more details and we can try to see what's different in your environment.
Thanks
Priya

Hi @boyce-xx,
I'm not able to reproduce this either.  I'm going to go ahead and close the issue for now - please reopen if you are still seeing this problme and provide more details and steps to reproduce.
Ken


fix: flaky predicate test

This one has been failing in recent CI runs so I fixed it before #2457 to reduce flakiness.

Hey @nedsalk,
Do you know if this PR is still valid or should we close it?

@Torres-ssf it's valid and ready for review again, I fixed the problem. The amount required for the transfer from the predicate to happen was too small so I had to increase the amountToPredicate value quite a bit. Previously, this predicate was funded from multiple tests and thus was passing in some places and sometimes failing in other.

Okay, so apparently me removing the seeding of this predicate address in this file's tests resulted in other tests failing because now they don't have enough funds :cold_sweat: :hot_face: :cold_face:
I'm putting it into draft again.

#2457 is around the corner and I'll close this in favor of that PR.


New limit behavior breaking database queries

Laravel Version
11.0.7
PHP Version
8.3.3
Database Driver & Version
PgSQL 15.6
Description
I've used this query to display total amount of transactions on a day basis:
// Controller
$model
    ->load(['transactions' => fn ($q) => Transaction::scopeReferralGroups($q, 3)])

// Transaction
public static function scopeReferralGroups(Builder $query, int $days): Builder
{
    return $query->select(
        DB::raw('DATE(completed_at) as date'),
        DB::raw('COUNT(*) as count'),
        DB::raw('SUM(credits_amount) as credits_total'),
    )
        ->where('is_referral', true)
        ->orderBy('date', 'desc')
        ->groupBy('date')
        ->limit($days);
}

This works correctly on Laravel 10.x or without limit statement, but now fails with error:
SQLSTATE[42703]: Undefined column: 7 ERROR: column "date" does not exist LINE 1: ...r (partition by "transactions"."user_id" order by "date" des... ^

Right now, adding a limit clause produces a database query wrapped in window function:
SELECT *
FROM
  (SELECT DATE(completed_at) AS date,
          COUNT(*) AS COUNT,
          SUM(credits_amount) AS credits_total,
          row_number() OVER (PARTITION BY "transactions"."user_id"
                             ORDER BY "date" DESC) AS "laravel_row"
   FROM "transactions"
   WHERE "transactions"."user_id" in (1)
     AND "is_referral" = ?
   GROUP BY "date") AS "laravel_table"
WHERE "laravel_row" <= 3
ORDER BY "laravel_row"

However expected query is:
SELECT DATE(completed_at) AS date,
       COUNT(*) AS COUNT,
       SUM(credits_amount) AS credits_total
FROM "transactions"
WHERE "transactions"."user_id" in (1)
  AND "is_referral" = ?
GROUP BY "date"
ORDER BY "date" DESC
LIMIT 3

I believe this is something to do with #49695. I think this should not be implemented as default behavior, but rather added with condition, for example like limit(3, window: true)
Steps To Reproduce
Add limit clause to any ordered group by query on HasMany relationship instance

As a solution right now, it's to load data as plain query:
$model
    ->load(['transactions' => fn ($q) => Transaction::scopeReferralGroups($q->getQuery(), 3)])

Hi @punyflash,
IMO, you're misusing load() here. You aren't loading the transactions relationship but running a custom aggregate query instead. Not sure how this even worked for you in Laravel 10 – it shouldn't work and doesn't for me.
You can use setRelation() instead:
$model->setRelation(
    'transactions',
    Transaction::scopeReferralGroups($model->transactions()->getQuery(), 3)->get()
);

@staudenmeir, it doesn't really matter if you have a relationship or aggregate query in load method, as under the hood relation is just loaded using get method to resolve which is present in both interfaces. Both relation instances and query builder resolves as \Illuminate\Database\Eloquent\Collection, so it works just fine:
https://github.com/laravel/framework/blob/ae2f9413b5bd8637c363e6fafffda31c88e56c9e/src/Illuminate/Database/Eloquent/Relations/Relation.php#L157-L167
Though, this does not apply to the issue: I just showed a way to fix current behavior with this example. The issue is that adding the limit statement to the relationship query adds a window function where it should not be. I can simplify my code example if Transaction::scopeReferralGroups seems confusing:
$model->load([
    'transactions' => fn ($q) =>$q->select(
        DB::raw('DATE(completed_at) as date'),
        DB::raw('COUNT(*) as count'),
        DB::raw('SUM(credits_amount) as credits_total'),
    )
        ->where('is_referral', true)
        ->orderBy('date', 'desc')
        ->groupBy('date')
        ->limit(3); // breaks with limit
]);

As a solution right now, it's possible to load data as plain query:
$model
    ->load(['transactions' => fn ($q) => Transaction::scopeReferralGroups($q->getQuery(), 3)])

why not?
$model->load(['transactions' => fn ($q) => $q->referralGroups(3)]);

result is not set

The result is not set because your query is not a valid relationship query. It doesn't select actual transactions but custom aggregate rows. The result can only be set if you select the user_id column, but that's not possibly here.
Laravel 11's limit implementation "breaks" your query, but the query itself is already invalid in combination with load().


EditorBrowsableAttribute

One suggestion, I'm not sure if it will work. But you may be able to hide your private Trait fields using EditorBrowsableAttribute, that may make it not show up in auto complete for the user.

In Visual C#, EditorBrowsableAttribute does not suppress members from a class in the same assembly.

So this isn't going to work.


Add filter: macos_tags

Is your feature request related to a problem? Please describe.
I use to tag my invoices with macOS tags, like "2022Q3" and "Invoice". I leave them on Downloads folder and collect them quarterly. I was checking the filter rules for macos_tags, but discovered that tags are only available as actions.
Describe the solution you'd like
In the same vein as the macos_tags action, I would love to have a macos_tags filter to find the files tagged with certain tags (single tag or list of tags).
Describe alternatives you've considered
I have checked the macos_tags python library site (which I assume is the one being used by organize), and it implements a macos_tags.find() method. I wondered if I could scratch some custom Python filter to find them, but I am not sure given I would need to side load the library every time I run the program.

I have explored the Python filter route, but I might be reading the documentation wrong!
In Python interactive shell, I tried:
>>> import macos_tags
>>> macos_tags.find('Invoices')
['/Users/elsatch/Downloads/namecheap-order-994581234.pdf']

Then I tried replicating the result with a rule (at invoices.yml):
rules:
  - name: "Move invoices in my Download folder to a 20xxQx subfolder _Outbox"
    subfolders: true
    locations:
      - path: "~/Downloads/"
    filters:
      - python: |
          import macos_tags
          return macos_tags.find('Invoices')
    actions:
      - echo: "Found an invoice to move {path.name}"
    #  - copy: "~/_Outbox/Invoices/"

When I organize simthis rule, I get the list of all files in the folder, instead of the filtered results.

This has been on my todo list for a while so I took some time and finished it up 👍
Should be included in the next release!

New version is out and includes a macos_tags filter.


Changed base64 method capitals to fix re-exporting

not sure how i completely missed this nice catch

should be updated now

not sure how i completely missed this nice catch

i am the only person using base64 on Roblox lol
thank you!


拖动报错，麻烦看看

demo地址：https://codesandbox.io/p/sandbox/hardcore-panka-w4t5d9?file=%2Fsrc%2Findex.js%3A10%2C30
拖动任意项后会报错，报错看截图

Well, it looks like I was wrong to believe jsdoc and typescript telling me about field being not-nullable :D As a quick workaround you can add this to your code:
import Sortable, {Swap} from 'sortablejs';

Sortable.mount(new MultiDrag());

I'm gonna release fix for this soon - thanks for reporting it!

Published the fix with 1.1.7 version - feel free to reopen this issue if anything is still not right

It has been fixed, thank you


High memory usage when analyzing VMProtect-protected sample with FLOSS

When running floss on this sample, it seems to run forever and consume quite a lot of memory (~6.4GB). I'd suspect this is a vivisect issue because this sample is protected with VMProtect.
https://www.virustotal.com/gui/file/1906e7d5a745a364c91f5e230e16e1566721ace1183a57e8d25ff437664c7d02

Thanks, vivisect and/or floss can easily go off the rails for heavily packed/protected samples but this is good to track here.


Adding Metaparse to the master branch

Abel - we don't pull stuff directly to the master branch. We pull them into develop, let the tests run, and then merge to master.  Also, I don't remember seeing any discussion on the ML about adding metaparse as (effectively) a new library in boost.   That being said, I'm in favor of seeing this happen.

@mclow It's been a while: 2015-07-11 15:49:46
Boost Mailing List: http://t.co/nQkpMfFRjJ

First of all, the final result.
Metaparse is formally unconditionally accepted into Boost.
We had 11 reviews, all "Yes" votes. 2 "No" reviews based on formality were
later reversed to a "Yes".


Launching Error

Hello I keep getting this error when launching the bot

Hello,
Be sure to installed packages and with the good NodeJS version. After that, you must activate Intents to your bot.


fix(version): update fabric8-stack-analysis-ui to 0.1.40

There were the following issues with your Pull Request

Commit: 8525643c2ecbbdddb4160d3ca1cbe9f92152de8a
Your subject line is longer than 50 characters

Guidelines are available at https://github.com/fabric8io/fabric8-ui

This message was auto-generated by https://gitcop.com


Add public key to GetKeyDetails

Overview
Fixes #471
Description
This adds a JWK field to the response.
The public key is stored in the DB without being encrypted. It's stored in a separate namespace. The downside is that there are two DB calls when fetching the details. This could be reduced, but I think the separation of concerns is worth it.
How Has This Been Tested?
Added a test to check that the returned value is correct.

Codecov Report

Merging #472 (c64a2fd) into main (b238eca) will decrease coverage by 0.04%.
The diff coverage is 8.51%.

@@            Coverage Diff             @@
##             main     #472      +/-   ##
==========================================
- Coverage   20.35%   20.31%   -0.04%
==========================================
  Files          48       48
  Lines        5561     5591      +30
==========================================
+ Hits         1132     1136       +4
- Misses       4236     4257      +21
- Partials      193      198       +5

Impacted Files
Coverage Δ

pkg/server/router/keystore.go
10.25% <0.00%> (-0.14%)
:arrow_down:

pkg/service/keystore/service.go
37.83% <0.00%> (-0.26%)
:arrow_down:

pkg/service/keystore/storage.go
26.98% <11.42%> (-2.21%)
:arrow_down:


UI: Bug when creating an EVC -- using the arrow keys plus enter leads to the EVC being prematurely requested

Hi,
Using Kytos UI 2023.2.1 and trying to create a EVC presents a weird behavior not identified before: if you start typing the UNI interface and then use the arrow keys to select an interface then press Enter, this will lead to the EVC being prematurely requested. Some times even with the wrong data (before the autocomplete process it):
The request body contains invalid API data. 'sju_s02-eth7 - 00:00:00:00:00:24:00:02:7' is too long for field uni_z/interface_id.

Thanks for catching this, Italo. I've just confirmed that on master it also happens:

Let's see how can help to fix it and look into the trevoreyre/autocomplete-vue that you mentioned.

Workaround:
During autocompletion if the user clicks instead of using keyboard arrow + enter, it works.

Workaround:
During autocompletion if the user clicks instead of using keyboard arrow + enter, it works.

exactly. Forgot to mention this. Thanks for documenting it, Vinicius.


is error

Types of changes

[ ] New feature
[x] Bug fix
[ ] Documentation change
[ ] Coding style change
[ ] Refactoring
[ ] Performance improvement
[ ] Test cases
[ ] Continuous integration
[ ] Typescript definition change
[ ] Breaking change

Background and context

Solution

How is the change tested?

Changelog

Changelog(CN)
Changelog(EN)
Related issues

Checklist:

[ ] Provide changelog for relevant changes (e.g. bug fixes and new features) if applicable.
[ ] Changes are submitted to the appropriate branch (e.g. features should be submitted to feature branch and others should be submitted to master branch)

Other information

hello 这条语句有问题可以详细描述哈。


Forgot password api

Description

Do you think about adding a "forgot password" REST Api endpoint?
Example

Yes, we should. This was obviously forgotten during development. I've created an internal ticket for this issue.
Thank you for bringing this up :+1:
Sunny regards
Pantrtxp


Markdown Table Output Support

What would you like to be added: Add support for markdown tables to be an output format.
Why is this needed: Would allow for easier automated self-documentation without having to rely on external tooling to manipulate the outputs.
Additional context:
The format would behavior similarly to these applications output functionality.
https://github.com/terraform-docs/terraform-docs
https://github.com/norwoodj/helm-docs

@masonbivens That's a cool idea! I like it. 👍


Make sure to pass dep libs to build_ext.

Towards a fix of #199.

Turns out 85252c2 is a terrible idea. ffaf83c is a good idea, we'll keep that.


suppress or remove annoying print statement

Can we please please have a way to remove this message...Every time I run the program from my python script it checks for ffmpeg, which is fine, but i wish there was a way to remove or temporarily suppress it.  I have important messages printed to the command prompt when my program runs and this clutters it up...
Also, is there a way to REMOVE FFMPEG requirement entirely?  For example, the pyav library includes it when you pip install that library.
https://pypi.org/project/av/
This is why the faster-whisper library uses it.  See here:

https://github.com/SYSTRAN/faster-whisper
Anyways, here is the print that's annoying me:
ffmpeg version 6.1.1-full_build-www.gyan.dev Copyright (c) 2000-2023 the FFmpeg developers
built with gcc 12.2.0 (Rev10, Built by MSYS2 project)
configuration: --enable-gpl --enable-version3 --enable-static --pkg-config=pkgconf --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --enable-libsnappy --enable-zlib --enable-librist --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-libbluray --enable-libcaca --enable-sdl2 --enable-libaribb24 --enable-libaribcaption --enable-libdav1d --enable-libdavs2 --enable-libuavs3d --enable-libzvbi --enable-librav1e --enable-libsvtav1 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libaom --enable-libjxl --enable-libopenjpeg --enable-libvpx --enable-mediafoundation --enable-libass --enable-frei0r --enable-libfreetype --enable-libfribidi --enable-libharfbuzz --enable-liblensfun --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-dxva2 --enable-d3d11va --enable-libvpl --enable-libshaderc --enable-vulkan --enable-libplacebo --enable-opencl --enable-libcdio --enable-libgme --enable-libmodplug --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libshine --enable-libtheora --enable-libtwolame --enable-libvo-amrwbenc --enable-libcodec2 --enable-libilbc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-ladspa --enable-libbs2b --enable-libflite --enable-libmysofa --enable-librubberband --enable-libsoxr --enable-chromaprint
libavutil      58. 29.100 / 58. 29.100
libavcodec     60. 31.102 / 60. 31.102
libavformat    60. 16.100 / 60. 16.100
libavdevice    60.  3.100 / 60.  3.100
libavfilter     9. 12.100 /  9. 12.100
libswscale      7.  5.100 /  7.  5.100
libswresample   4. 12.100 /  4. 12.100
libpostproc    57.  3.100 / 57.  3.100

Just to play devil's advocate, don't you think that it introduces unneeded complexity for users of various platforms though?  I mean...when I started learning about programming I didn't even know what a computer system "path" was let alone how to install ffmpeg and add it to the path.  Plus, there's a lot of different platforms out there and different installation procedures for each one.  With something like pyav you simply pip install the library...How much of a slowdown are we discussing versus directly calling ffmpeg?
Anyways, if you're curious, here's how I did the resampling with pyav in my script:
    def convert_to_wav(self, audio_file):
        output_file = Path(audio_file).stem + "_converted.wav"
        output_path = Path(__file__).parent / output_file

        container = av.open(audio_file)
        stream = next(s for s in container.streams if s.type == 'audio')

        resampler = av.AudioResampler(
            format='s16',
            layout='mono',
            rate=16000,
        )

        output_container = av.open(str(output_path), mode='w')
        output_stream = output_container.add_stream('pcm_s16le', rate=16000)
        output_stream.layout = 'mono'

        for frame in container.decode(audio=0):
            frame.pts = None
            resampled_frames = resampler.resample(frame)
            if resampled_frames is not None:
                for resampled_frame in resampled_frames:
                    for packet in output_stream.encode(resampled_frame):
                        output_container.mux(packet)

        for packet in output_stream.encode(None):
            output_container.mux(packet)

        output_container.close()

        return str(output_path)

I couldn't get the resampling to work automatically using whisperS2T so that's why I had to add pyav...Not sure if I did it wrong though.
In another script of mine, resampling is avoided by directly sampling into 16000 mono from the beginning.  This pertains to a voice recorder functionality though, not an audio file that's who knows what the original sample rate is...
import os
import gc
import torch
import pyaudio
import wave
import tempfile
from pathlib import Path
import whisper_s2t
from PySide6.QtCore import QThread, Signal
from utilities import my_cprint

class TranscriptionThread(QThread):
    transcription_complete = Signal(str)

    def __init__(self, audio_file, voice_recorder):
        super().__init__()
        self.audio_file = audio_file
        self.voice_recorder = voice_recorder

    def run(self):
        device = "cpu"
        compute_type = "float32"
        model_identifier = "ctranslate2-4you/whisper-small.en-ct2-float32"
        cpu_threads = max(4, os.cpu_count() - 4)
        model_kwargs = {
            'compute_type': compute_type,
            'model_identifier': model_identifier,
            'backend': 'CTranslate2',
            "device": device,
            "cpu_threads": cpu_threads,
        }
        self.model = whisper_s2t.load_model(**model_kwargs)

        out = self.model.transcribe_with_vad([self.audio_file],
                                             lang_codes=['en'],
                                             tasks=['transcribe'],
                                             initial_prompts=[None],
                                             batch_size=16)

        transcription_text = " ".join([_['text'] for _ in out[0]]).strip()

        my_cprint("Transcription completed.", 'white')
        self.transcription_complete.emit(transcription_text)
        Path(self.audio_file).unlink()
        self.voice_recorder.ReleaseTranscriber()

class RecordingThread(QThread):
    def __init__(self, voice_recorder):
        super().__init__()
        self.voice_recorder = voice_recorder

    def run(self):
        self.voice_recorder.record_audio()

class VoiceRecorder:
    def __init__(self, gui_instance, format=pyaudio.paInt16, channels=1, rate=16000, chunk=1024):
        self.gui_instance = gui_instance
        self.format, self.channels, self.rate, self.chunk = format, channels, rate, chunk
        self.is_recording, self.frames = False, []
        self.recording_thread = None
        self.transcription_thread = None

    def record_audio(self):
        p = pyaudio.PyAudio()
        stream = p.open(format=self.format, channels=self.channels, rate=self.rate, input=True, frames_per_buffer=self.chunk)
        self.frames = []
        while self.is_recording:
            data = stream.read(self.chunk, exception_on_overflow=False)
            self.frames.append(data)
        stream.stop_stream()
        stream.close()
        p.terminate()

    def save_audio(self):
        self.is_recording = False
        temp_file = Path(tempfile.mktemp(suffix=".wav"))
        with wave.open(str(temp_file), "wb") as wf:
            wf.setnchannels(self.channels)
            wf.setsampwidth(pyaudio.PyAudio().get_sample_size(self.format))
            wf.setframerate(self.rate)
            wf.writeframes(b"".join(self.frames))
        self.frames.clear()

        self.transcription_thread = TranscriptionThread(str(temp_file), self)
        self.transcription_thread.transcription_complete.connect(self.gui_instance.update_transcription)
        self.transcription_thread.start()

    def start_recording(self):
        if not self.is_recording:
            self.is_recording = True
            self.recording_thread = RecordingThread(self)
            self.recording_thread.start()

    def stop_recording(self):
        self.is_recording = False
        if self.recording_thread is not None:
            self.recording_thread.wait()
            self.save_audio()

    def ReleaseTranscriber(self):
        if hasattr(self, 'model'):
            if hasattr(self.model, 'model'):
                del self.model.model
            if hasattr(self.model, 'feature_extractor'):
                del self.model.feature_extractor
            if hasattr(self.model, 'hf_tokenizer'):
                del self.model.hf_tokenizer
            del self.model

        if torch.cuda.is_available():
            torch.cuda.empty_cache()
        gc.collect()
        my_cprint("Whisper model removed from memory.", 'red')

How much of a slowdown are we discussing versus directly calling ffmpeg?

Depends on the file size for example say if resampling takes 5 secs for some 1 hour files. And you have 20 such files. Overall reduction will be ~ 5*19 secs. Because of WhisperS2T runs ffmpeg cmd in a separate thread. Same thing can be done with PyAV (not sure though). I think these wrappers are cpu bound processes and not I/O bound.

Plus, there's a lot of different platforms out there and different installation procedures for each one. I couldn't get the resampling to work automatically using whisperS2T

Weird.. what system you are using? What's the exact issue?

Thanks for the explanation, makes sense and is interesting to know...Every little bit helps I suppose when you're talking about improving speed overall.  If I have time today I'll try to revert my script to what it was when I encountered the error - i.e. before I implemented pyav...but unfortunately it's difficult because I don't use any "versioning" workflow.  I'm just using Notepad++...don't laugh.  ;-)  I do know that this script wasn't automatically resampling and was giving an error that it couldn't process the audio file without it being resampled first.  ALSO THIS MAY HAVE BEEN with a different file than the Sam Altman.  I'm testing it on .mp3, .wma, .flac, and .wav.  Hope that helps...

@BBC-Esq https://github.com/shashikg/WhisperS2T?tab=readme-ov-file#for-ubuntumacwindowsanyother-with-conda-for-python

@BBC-Esq removed redundant ffmpeg logs: https://github.com/shashikg/WhisperS2T/commit/33e305fd447004c18fbc73848fa1e3385f42c93c


AppGyver support for Windows 8.1 and Windows Phone apps

It would be great to be able to package steroids apps for Windows 8.1 or Windows Phone. The potential for developing apps for this platform is huge and I would love to be able to do this using Steroids rather than recoding my apps for Windows via Visual Studio.
Please consider this for your roadmap!

This is a duplicate of https://github.com/AppGyver/steroids/issues/707
Follow-up there.


Status still "training" after cancel training

I hit cancel training (no models had been found at this point) and got this:

Not work on CPU image training, vs 2019-preview

Validated.


Use dns.setServers - io.js or node 0.12 required

I ended up rewriting the entire thing.
The domain check was causing an issue of the CLI not exiting timely when offline. It was related to sockets keeping the process from exiting. All my attempts with socket.unref(), socket.destroy(), socket.end() failed, so I opted to remove it entirely.
This will fix #6 and #12, let me know how you like it.

Also, travis apparently still resolves to node 0.10.x for some reason.

Working on readding the socket thing, but properly this time :)

For the CLI exit issue: https://github.com/iojs/io.js/issues/795

Weird that even process.exit() doesn't work. It should always work no matter what...

Yeah, that's what I expect too. Apparently, there is some logic for servers to keep them from exiting while having active connections.

So it turns out that both my proposed solutions for https://github.com/iojs/io.js/issues/795 require non-trivial libuv changes.
I'm seeing the issue with the CLI not exiting timely only on my Macbook with Wireless disabled here, my Windows machine seems to be not affected, and someone from the thread with a Macbook also couldn't reproduce, so I think it may be a pretty rare to encounter problem.
@sindresorhus could you do a simple test on your Mac with all networking disabled, and tell me if the CLI exits quickly after printing offline status?

So, I'm not sure what do with this branch.
While it's nice that we can use direct node-api, we lose the ability to check for spoofed answer because the io.js/node core doesn't expose the udp socket to us.
I think overall it might be better to just leave the check as-is with native-dns. Hopefully we see a native-dns release soon so we can remove that tar dependency.

I agree. Too bad though.
Maybe you should open some issues on node/io about exposing the missing APIs?

Yeah, thought about that, but I first have to explore if the c-ares library exposes the socket itself, otherwise it's not possible.

It just occured to me that instead of relying on any dns module, we could just forge our own request packet. Might be an good excuse for me to finaly dive into dgram :)

:+1:


Markdown preview clipped when VS Code is zoomed in

VSCode Version:1.6.0 insiders
OS Version: Windows 7

Steps to Reproduce:

Open and Markdown file and zoom in several levels.
Open Preview

The preview is clipped.

Duplicate of #5745
I only know this because I opened #12824 to track the same problem and it was marked as a dup of #5745


Create High-fidelity

We're done with the assignment

https://www.figma.com/file/hF8y8PKgZGtnNGnyYK1P4x/Team-63_FaviconGen?node-id=0%3A1
Done!


segfault with iODBC and FreeTDS ODBC on Xubuntu 20.04

Environment

Python: 3.8.5
pyodbc: '4.0.28b72+iodbc_byte'
OS: Xubuntu 20.04
DB: SQL Server 2017
driver: FreeTDS ODBC 1.2.18
DM: iODBC (latest dev version)

Issue
crsr.execute() causes a segfault
Steps to reproduce
Start with a fresh Xubuntu 20.04 VM.
sudo apt install python3-pip autoconf libtool git

Installing iODBC
Browse to
https://github.com/openlink/iODBC
click the "Code" button, choose "Download ZIP", and unpack it to ~/Downloads. Change to the unzipped folder and run "autogen.sh"
gord@vbox-Xubu-20-04-a:~/Downloads/iODBC-develop$ ./autogen.sh

Then do the standard
./configure
make
sudo make install
Installing FreeTDS ODBC
Browse to
https://www.freetds.org/
Download the stable release, unpack it to ~/Downloads, cd to that folder and do
./configure
make
sudo make install
Verifying raw FreeTDS
gord@vbox-Xubu-20-04-a:~$ tsql -C
Compile-time settings (established with the "configure" script)
                            Version: freetds v1.2.18
             freetds.conf directory: /usr/local/etc
     MS db-lib source compatibility: no
        Sybase binary compatibility: no
                      Thread safety: yes
                      iconv library: yes
                        TDS version: auto
                              iODBC: yes
                           unixodbc: no
              SSPI "trusted" logins: no
                           Kerberos: no
                            OpenSSL: no
                             GnuTLS: no
                               MARS: yes
gord@vbox-Xubu-20-04-a:~$ tsql -H <IP_ADDRESS> -p 49242 -U scott -P tiger^5HHH -D myDb
locale is "en_CA.UTF-8"
locale charset is "UTF-8"
using default charset "UTF-8"
Setting myDb as default database in login packet
1> SELECT 1 AS foo;
2> go
foo
1
(1 row affected)

Configuring ODBC
sudo nano -w /etc/odbcinst.ini
and add
[FreeTDS]
Driver=/usr/local/lib/libtdsodbc.so

sudo nano -w /etc/odbc.ini
and add the DSN particulars, in my case
[iodbc_test]
DRIVER=FreeTDS
SERVER=<IP_ADDRESS>
PORT=49242
DATABASE=myDb

Add missing symbolic links for iODBC:
cd /usr/lib/x86_64-linux-gnu/
sudo ln -s /usr/local/lib/libiodbc.so.2
sudo ln -s /usr/local/lib/libiodbcinst.so.2

Verify connectivity using iodbctest
gord@vbox-Xubu-20-04-a:~$ iodbctest
iODBC Demonstration program
This program shows an interactive SQL processor
Driver Manager: 03.52.1420.0520

Enter ODBC connect string (? shows list): DSN=iodbc_test;UID=scott;PWD=tiger^5HHH
Driver: 01.02.0018 (libtdsodbc.so)

SQL>SELECT 1 AS foo;

foo
-----------
1

 result set 1 returned 1 rows.

Installing pyodbc
pip3 install --user git+https://github.com/gordthompson/pyodbc@iodbc_byte

Testing pyodbc
gord@vbox-Xubu-20-04-a:~$ python3
Python 3.8.5 (default, Jan 27 2021, 15:41:15)
[GCC 9.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import pyodbc
>>> cnxn = pyodbc.connect("DSN=iodbc_test;UID=scott;PWD=tiger^5HHH")
>>> crsr = cnxn.cursor()
>>> crsr.execute("SELECT 1 AS foo")
Segmentation fault (core dumped)

Here are the trace logs for the two ODBC tests above:
iodbctest_ok.log
pyodbc_segfault.log

and here is the trace log for pyodbc using unixODBC
pyodbc_unixodbc_ok.log
The difference seems to be that with unixODBC, SQLExecDirectW returns SQL_SUCCESS …
[ODBC][14669][1616369667.006418][SQLExecDirectW.c][456]
		Exit:[SQL_SUCCESS]

… while with iODBC, SQLExecDirectW returns SQL_SUCCESS_WITH_INFO …
[000033.518385]
python3         7F37B074E740 EXIT  SQLExecDirectW with return code 1 (SQL_SUCCESS_WITH_INFO)
		SQLHSTMT          0x26919c0
		SQLWCHAR        * 0x7f37af9af550
		SQLINTEGER        16

… and when pyodbc tries to get the "INFO" via SQLGetDiagRecW something goes boom.

It just occurred to me that this might be related to #858 because my PR #882  is based on the current master branch and #859 hasn't been merged yet. I'll look into that.

Yup, that was it. I just needed the changes from both #859 and #882.


Include Hentai Creatures

Hentai Creatures adds spells that allow the spawning of female creatures (which there appears to be no way to do currently). Which is nice if you play a male character.
I have tested the HentaiCreatures_MNCv12SE2 file available on the LL SSE MNC page since 0.1 and have had no issues
I See no incompatibilities in xEdit and havent experienced issues testing it on my own machine
I also added these anims from LE (converted over with cathedral asset optimizer) and the only issues ive experienced are broken facial expression on a few creatures in some animations (most worked fine)
https://www.loverslab.com/files/file/2702-funnybizness-v25-slal-pack-by-shashankie/

Closed for now


Escape maintainer email address.

cc @danielsdeleo @jdmundrawala
This fixes the broken build of chefdk on windows.
working build:  http://manhattan.ci.chef.co/job/chefdk-build/109/architecture=x86_64,platform=windows-2008r2,project=chefdk,role=builder/console

:shipit:
Do we need to make the same changes for the chef client packages?

:shipit:

@jdmundrawala For consistency, we should do it for all our packages.  I'm planning to roll it in with other packaging-related work I have slated.  That work for you?

it missed chef client 12.1.0.rc.0, but we should do it for the GA release

will do.

@yzl let's make sure that fix makes it into the default template that ships in Omnibus the framework also:
https://github.com/chef/omnibus/blob/master/resources/msi/localization-en-us.wxl.erb#L5

@jdmundrawala Done for the chef-client packages: #345
@schisamo Done for omnibus:    https://github.com/chef/omnibus/pull/435


Creates new projects inside a same-named folder

Fixes #10974 by creating a new folder (with the same name as the project) inside the directory the user picked during the new project workflow.

Coverage decreased (-0.07%) to 34.319% when pulling d5fecf4921d702ba93f3922d60a8aec14dc6b032 on benjin/projInFolder into 637bc8d5ba8cc51f8d74e6db87fa7d93c6b2ca3a on main.


check that same sex ratio used in fit and predict recruitment

not high priority but would be helpful to user if could flag up potential error caused by using different sex ratios
stored as attribute

related to #52


[Question] Can npipe listener creation be moved to go-connections?

In listeners_windows.go tcp listener is created with go-connections sockets package:
import (
    ...
    "github.com/docker/go-connections/sockets"
)
...
l, err := sockets.NewTCPSocket(addr, tlsConfig)

Can we move npipe listener creation also to go-connections?
Then it could be used also in other projects, f.e. go-plugins-helpers

Note we currently have an issue to remove go-connections https://github.com/docker/docker/issues/26802

/cc @stevvooe

I'd prefer not. go-connections is a poor abstraction and causes more problems than it creates.
The listeners package makes the same mistake, by hiding system-specific config, deep within the function. You could try to add this to go-connections, but my guess is, something will break.

ok, so i'll close this issue, and try to add it directly to go-plugins-helpers, thanks.

@mwieczorek I have a PRs hanging for both these repos doing exactly what you want https://github.com/docker/go-plugins-helpers/pull/63 and https://github.com/docker/go-connections/pull/24
This Issue, however, makes me realize that they will probably never be merged as they are right now...


Update bips.md

Changed case and removed all version number mentions

ACK with more contribution to /bips/ for syncing


Increased timeout to fix build failure on slow GitHub build systems

Builds are sometimes failing on the GH build systems due to a timeout. This PR increases those timeouts from 200ms to 300 ms and puts the actual value of the timeouts in a constant for easier access.

This is fine, just a suggestion on the constant to transform in a Duration which is more explicit express what is it.

Good idea!
I did change a few int parameters to long, to avoid casting.


Routing rules for modules and application controller conflict

What steps will reproduce the problem?
I used this rules for routing:
'<module>/<controller>/<action>/<id:\w+>' => '<module>/<controller>/<action>',
'<controller>/<action>/<id:\w+>' => '<controller>/<action>',

What is the expected result?
When opening module link like an roles/role/create no action taken and this route dispatched in log:
Bootstrap with yii\gii\Module::bootstrap()
Request parsed with URL rule: <controller>/<action>/<id:\w+>
Route requested: 'roles/role'
Route to run: roles/role/index

But my module name is roles and should be load module () rules instead of application controller.
Additional info

Q
A

Yii version
dev-master

PHP version
5.5.9

Operating system
Ubuntu 14.0.4

Framework does exactly what's in the rules:
roles/role/index has 3 segments so <module>/<controller>/<action>/<id:\w+> is skipped immediately because there are 4 segments so it can't match. <controller>/<action>/<id:\w+> has 3 segments and all three match well so it's executed.


meson: update above 0.59.0 (0.61.0)

Checklist

[x] Checked the nixpkgs master branch

[x] Checked the nixpkgs pull requests

Project name
nix search name: meson

current version: 0.57.1
desired version: 0.61.0
Notify maintainers

maintainers:
@brandonedens
Note for maintainers
Please tag this issue in your PR.

Done in https://github.com/NixOS/nixpkgs/pull/154172, currently in staging-next.


ZTE-SH-CN-run-application-run-stateless-application-deployment-pr-201…

…7-09-18

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
For 1.8 Features: set Milestone to 1.8 and Base Branch to release-1.8
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
NOTE: Please check the “Allow edits from maintainers” box (see image below) to
allow reviewers to fix problems on your patch and speed up the review process.
Please delete this note before submitting the pull request.

This change is

cc @zhangxiaoyu-zidif

ref https://github.com/kubernetes/kubernetes.github.io/pull/5466
you need move the .yaml here like @YuxiJin-tobeyjin
please have a try. :)

thanks ,but I checked it that all yaml  used in the page both have in the path,and I don't know why deployed failed!

reopen #5514


Visual Studio project templates

Is it possible to create project templates that can be distributed via NuGet or some other platform to get a new project up and running, i.e. up to the point that you reach at the end on this page https://github.com/tlgkccampbell/ultraviolet/wiki/Getting-Started-on-Windows . It would probably make it easyer for beginners to try Ultraviolet out.

We used to have these, but I deprecated them when I dropped the installer and switched to NuGet packages -- they didn't feel like they were worth the effort to maintain. If there's an easier way to distribute them, then that might be worth doing (I don't think you can do it through NuGet, but maybe I'm wrong?). I've thought about making Yeoman templates, for example -- those would have the advantage of working with Visual Studio Code. But it's something I'd have to give some thought to.

This has been addressed with the addition of dotnet new templates, as described here: https://github.com/tlgkccampbell/ultraviolet/wiki/Getting-Started-with-.NET-Core-3.1