fetch join using composite key on join entity fails to hydrate correctly

When doing a fetch join to hydrate an entity, using a join table with a composite key and no other defined fields, the hydration incorrectly creates duplicate associated entities.
This issue may possibly be related to #2548. I cannot find any more recent related bug reports.
Steps to reproduce:
Create these three entities and their corresponding database tables:
/**
 * @ORM\Entity
 * @ORM\Table(name="driver")
 */
class Driver
{
    /**
     * @ORM\Id
     * @ORM\Column(type="integer")
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    private $id;

    /**
     * @ORM\Column(type="string", length=255);
     */
    private $name;

    /**
     * @ORM\OneToMany(targetEntity="DriverRide", mappedBy="driver")
     */
    private $driverRides;

    function getId() { return $this->id; }
    function getName() { return $this->name; }
    function getDriverRides() { return $this->driverRides; }
}

/**
 * @ORM\Entity
 * @ORM\Table(name="driver_ride")
 */
class DriverRide
{
    /**
     * @ORM\Id
     * @ORM\ManyToOne(targetEntity="Driver", inversedBy="driverRides")
     * @ORM\JoinColumn(name="driver_id", referencedColumnName="id")
     */
    private $driver;

    /**
     * @ORM\Id
     * @ORM\ManyToOne(targetEntity="Car", inversedBy="carRides")
     * @ORM\JoinColumn(name="car", referencedColumnName="brand")
     */
    private $car;

    function getDriver() { return $this->driver; }
    function getCar() { return $this->car; }
}

/**
 * @ORM\Entity
 * @ORM\Table(name="car")
 */
class Car
{
    /**
     * @ORM\Id
     * @ORM\Column(type="string", length=25)
     * @ORM\GeneratedValue(strategy="NONE")
     */
    private $brand;

    /**
     * @ORM\Column(type="string", length=255);
     */
    private $model;

    /**
     * @ORM\OneToMany(targetEntity="DriverRide", mappedBy="car")
     */
    private $carRides;

    function getBrand() { return $this->brand; }
    function getModel() { return $this->model; }
    function getCarRides() { return $this->carRides; }
}

Populate the database tables with this data:
INSERT INTO car (brand, model) VALUES ('BMW', '7 Series');
INSERT INTO car (brand, model) VALUES ('Crysler', '300');
INSERT INTO car (brand, model) VALUES ('Mercedes', 'C-Class');
INSERT INTO car (brand, model) VALUES ('Volvo', 'XC90');
INSERT INTO car (brand, model) VALUES ('Dodge', 'Dart');

INSERT INTO driver (id, name) VALUES (1, 'John Doe');

INSERT INTO driver_ride (driver_id, car) VALUES (1, 'Crysler');
INSERT INTO driver_ride (driver_id, car) VALUES (1, 'Mercedes');
INSERT INTO driver_ride (driver_id, car) VALUES (1, 'Volvo');
INSERT INTO driver_ride (driver_id, car) VALUES (1, 'BMW');
INSERT INTO driver_ride (driver_id, car) VALUES (1, 'Dodge');

Use this code to hydrate a Driver entity and display its contents:
$qb = $em->createQueryBuilder();
$driver = $qb->select('d, dr, c')
   ->from('Driver', 'd')
   ->leftJoin('d.driverRides', 'dr')
   ->leftJoin('dr.car', 'c')
   ->where('d.id = 1')
   ->getQuery()->getSingleResult();

print '<p>' . $driver->getName() . ':';
foreach ($driver->getDriverRides() as $ride) {
    print '<br>' . $ride->getCar()->getBrand() . ' ' . $ride->getCar()->getModel();
}

Expected output:
John Doe:
BMW 7 Series
Crysler 300
Dodge Dart
Mercedes C-Class
Volvo XC90
Actual output:
John Doe:
BMW 7 Series
Dodge Dart
Dodge Dart
Volvo XC90
Volvo XC90
There is a strange duplication going on here with the associated entities. Note that the problem disappears if there are additional fields defined in the join entity (DriverRide), or if all the associated entities (Car) have already been previously loaded from the database.

I think the main cause of this bug is located in the ObjectHydrator class. In the hydrateRowData() method, $resultPointers is used by to store a reference to the most recently hydrated object of each entity type. When a child entity needs to be linked to its parent, this method looks in $resultPointers to find a reference to the parent and, if it finds one, links the child to that parent.
The problem is that  $resultPointers is an instance/object (rather than local/method) variable that does not get reinitialized every time `hydrateRowData()' is called, and so it may retain a reference to an entity that was hydrated the previous time the method was called rather than the current time.
In this particular bug, the Car entity is hydrated before the DriverRide entity each time hydrateRowData() is called. When the method looks for the parent of the Car entity, it finds nothing the first time (because DriverRide has not yet been processed at all) and, on every subsequent call, finds a reference to the DriverRide object that was hydrated the previous time the method was called (because DriverRide has not yet been processed for the current row, and $resultPointers still retains a reference to the outcome of processing it the last time).
The bug disappears when additional fields are added to DriverRide only because doing so happens to cause the DriverRide entity to be processed before the Car entity in hydrateRowData(). The duplication of records happens because some other weird part of this method causes the child entity to be identified as not fetch joined (and so lazy loaded) every other time the method is called (not counting the first time), and so those times (the third, fifth, etc.) the link between child and parent happens to come out correct.
I believe that the fundamental problem is that $resultPointers is neither a local variable nor reinitialized each time hydrateRowData() is called. I cannot think of any scenario in which you would need a reference to an object that was hydrated with data from the previous row of data, so I would recommend simply reinitializing this variable at the beginning of this method. That should fix the bug.

Fixed in #5975

An issue remains in 2.5.10. When using array hydration, the last joined entity in result set is not hydrated.
I'm having the following entity:
/**
 * ChallengeSkill
 *
 * @ORM\Table(name="jn_challenge_skill")
 * @ORM\Entity(repositoryClass="AppBundle\Repository\JnChallengeSkillRepository")
 */
class JnChallengeSkill {

    /**
     * @var Challenge
     *
     * @ORM\Id
     * @ORM\ManyToOne(targetEntity="AppBundle\Entity\Challenge", inversedBy="challengeSkills")
     * @ORM\JoinColumns({
     *   @ORM\JoinColumn(name="challenge_id", referencedColumnName="id")
     * })
     */
    private $challenge;

    /**
     * @var Skill
     *
     * @ORM\Id
     * @ORM\ManyToOne(targetEntity="AppBundle\Entity\Skill", inversedBy="challengeSkills")
     * @ORM\JoinColumns({
     *   @ORM\JoinColumn(name="skill_id", referencedColumnName="id")
     * })
     */
    private $skill;
}

Now I call this code:
$qb = $this->getEntityManager()->createQueryBuilder()
                        ->select('cs', 's')
                        ->from('AppBundle\Entity\JnChallengeSkill', 'cs')
                        ->leftJoin('cs.challenge', 'ch')
                        ->leftJoin('cs.skill', 's')
                        ->where('IDENTITY(cs.challenge) = :challengeId')->setParameter('challengeId', $challengeId);

$ret = $qb->getQuery()->execute(array(), Query::HYDRATE_ARRAY);
print_r($ret);

And get this result:
Array
(
    [0] => Array
        (
            [challenge_id] => 1
            [skill_id] => 1
            [skill] => Array
                (
                    [id] => 2
                    [name] => Accounting
                    [alwaysShow] => 1
                )

        )

    [1] => Array
        (
            [challenge_id] => 1
            [skill_id] => 2
            [skill] => Array
                (
                    [id] => 3
                    [name] => Webdesign
                    [alwaysShow] => 1
                )

        )

    [2] => Array
        (
            [challenge_id] => 1
            [skill_id] => 3
        )

)

Notice that the last skill in result set is not hydrated. When I use scalar hydration, all fields are returned correctly. When I add an additional field to JnChallengeSkill (as @jakestay did above), the last result gets hydrated properly as well.


Numbering and Lettering

Is it possible to use numbers and letters that align as in the picture attached?

Currently working on some changes to improve flexibility wrt numbering and spacing for glosses, hopefully I'll be able to put in a PR soon!

And references! This goes hand in hand with numbering of examples and sub-examples. ExPex handles this beautifully.

Somehow I missed the notification for this issue - I'll look into this, although I may not get to it soon.

I've merged @rwmpelstilzchen 's PR (with some tweaks) that implements adding references to glosses. Implementing a more sophisticated way of assigning letters/numbers to glosses is work remaining to be done. I may or may not get around to this in the near future, and I'm definitely happy to accept more PRs for this functionality.


paper comments

related to https://github.com/openjournals/joss-reviews/issues/7309
Some comments:
Statement of need

Performing scenario-wide LCAs with adjusted life cycle inventories ...

What is meant with 'scenario-wide LCA'? Later 'system-wide'. is used, this makes more sense to me.

... methodological complexities, such as defining functional units based on IAM outputs and resolving double-counting issues

Please provide examples or references to discussion on this.
Description

Some post-processing is done on the inventory matrices, including dealing with double counting.

Refers back to the double counting from above, what is the problem here, and how is it resolved? The rest of the paragraph attempts to explains this, but I think I don't understand the solution.

@alvarojhahn There's a space missing at the end of the sentence on line 150.
Besides that LGTM


Inconistent behaviour

Describe the bug
When adding a NSG rule  that has a source of AzureLoadbalancer in a inbound direct it adds successfully. When you when add an rule that has a destination of Azureloadbalancer and the direction is outbound, BUT THE SAME RULE NAME the previous rule is silently deleted.
If you attempt to do the same in the portal an error is returned and the command can not proceed.
To Reproduce
Steps to reproduce the behaviour.
az network nsg rule create -g  --nsg-name  -n Allow_AzureLoadbalancer --access Allow --source-address-prefixes AzureLoadBalancer --destination-port-ranges * --direction Inbound  --destination-address-prefixes  --priority 900
then run
az network nsg rule create -g  --nsg-name nsg-apppublic -n Allow_AzureLoadbalancer --access Allow --source-address-prefixes   --destination-port-ranges * --direction Outbound  --destination-address-prefixes AzureLoadBalancer --priority 900
The output of the secondary command reports a success, while the first rule is removed
Expected behavior
I would expect the second command to fail with an error "Name in use" similar to the portal
Environment summary
AZ clie
Powershell
Win10 insider Ringer (Fast)
Additional context
Add any other context about the problem here.

Consistency with another tool such as Powershell commandlets or the portal is not a significant factor in the CLI design. CLI create commands are intended to be idempotent. Were this command to fail because the name is reused, the nsg rule create command would no longer be idempotent.


Duplicate records when mirroring data to BigQuery

Extension name: firestore-bigquery-export
Extension version: v0.1.12

It was running perfectly fine on v0.1.5 but after upgrading to v0.1.12 the extensions started to export duplicated records to BigQuery.
The only difference between two duplicate records is the document_id field: one of the records has a null document_id and the other has a non-null document_id.
It's a very severe problem since it compromised many of my reports.
Weirdly, not all the records are getting duplicated. Sometimes they do and sometimes they do not - and whey they don't, there's only one record: the one with the non-null document_id. Still, this is a very frequent issue and since then I already have thousands of duplicates.
It's also worth mentioning that all of my extensions have been upgraded almost at the same time and that some of them are working perfectly.

Update: I've tried uninstalling and installing the extension again and it still doesn't work. Duplication persists.

What worked for me was:

Delete the whole dataset in BigQuery
Re-install the extension
Recover the previous records by executing the back-filling script

and now the extension stopped generating duplicates (0 new records with a null document_id).

Thanks for the feedback @guilhermeagostinelli.
I'm glad it's working. I'll close this issue for now, happy to reopen for further investigation / documentation that may be needed.

@dackers86 documenting a similar issue here.
We have been using the firebase export extension for some time - v0.1.5 similarly before recently to v0.1.12. It seems that in between that time, the document_id field was added to the underlying <your exported collection name>_raw_changelog table, as well as the <your exported collection name>_raw_latest view. See here.
This presents an issue for collections that have been exporting from before this change to after -
Before (looks like before v0.1.7): there is no document_id included in _raw_changelog, but it doesn't matter because _raw_latest only groups by document_name. Great.
After: now there is a field document_id included in _raw_changelog, and it matters because now _raw_latest groups by both document_name and document_id. That means if we have any rows in the changelog that are for the same document (same document_name), but one was ingested before the update (meaning before document_id was added, so document_id is null) and one ingested after the update (document_id now has a value), we get two rows for the document.
Have you seen other teams encounter this issue? I think a possible solution could just be to backfill the entries ingested before v0.1.7, so that those ingested rows have a document_id. Any help is much appreciated!

@raubrey2014.
Although not common, there does seem to be an issue with missing document Ids. I feel you are correct that this could be potentially fixed by backfilling missing document Ids. I will reopen for investigation

@dackers86 just as a follow up, yes I backfilled the entries to fix this discrepancy.
For anyone else running into this issue, I backfilled by the query below, but you should be very careful when doing this. This query assumes that the last 20 characters of the column document_name are the document id. There could be cases where that is not a safe assumption.

In my case, since I deleted the whole dataset, after reinstalling the extension I backfilled the new dataset with all the documents in my collection by running the import script provided by the extension.
But that might be troublesome if you have too many records, so @raubrey2014 's suggestion sounds better.
Extending @raubrey2014 's answer, a regular expression can be used so one doesn't need to worry with the length of the 'document_name' field when performing the update operation:
UPDATE `<your project id>.<your dataset id>.<exported collection name>_raw_changelog` SET document_id = REGEXP_EXTRACT(document_name, r"([^\/]+$)") WHERE document_id IS NULL;

@russellwheatley this sounds like it's due to the document_id breaking change from a little while ago. Am I correct in saying the only fix for this is to backfill with the import script?

Closing as this appears to be resolved.


GitHub CI, README and BASH Improvements

GitHub CI tests the following aspects:

Markdownlint for README
Shellcheck for Shell Scripts
Execute a test build on Ubuntu 20.04

Shell Improvements:

Fix Shebang black line
Variable Escaping
Parameters with integer instead of strings

Resolved the issues in latest commits 😄
Found a typo and corrected it directly.


jack2: fix build on Darwin

Description of changes
jack_control requires dbus, which isn’t enabled on Darwin.
I tested playback with Timidity connected to jackd.
Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] 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

[ ] 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/)
23.11 Release Notes (or backporting 23.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.

Result of nixpkgs-review pr 253726 run on aarch64-darwin 1

4 packages marked as broken and skipped:

aj-snapshot
faust2jack
faust2jaqt
giada

1 package failed to build:

koboredux

6 packages built:

audiality2
jack2
jack2.dev
koboredux-free
ltc-tools
soundtracker

Result of nixpkgs-review pr 253726 run on x86_64-darwin 1

4 packages marked as broken and skipped:

aj-snapshot
faust2jack
faust2jaqt
giada

1 package failed to build:

koboredux

6 packages built:

audiality2
jack2
jack2.dev
koboredux-free
ltc-tools
soundtracker


Fix streaming testcase for latest language change

Purpose

Fix streaming test cases due to latest language level changes.

@mohanvive Pls fix the checkstyle issues


Installing angularfire through JSPM gives error

Running jspm install angularfire gives error: no version match for<EMAIL_ADDRESS>

I've never used jspm and have no idea how it works. Can you provide some more details about what we would need to do here? The latest versions of both AngularFire and Firebase are on Bower so I'm not sure why it doesn't work.

I you use ^3.0.0 instead of 3.x.x, it shall work fine on JSPM. JSPM probably doesn't understand 3.x.x.

Seems like a bug on their end to be honest. 3.x.x is valid semver. I'd raise the issue with their project if you haven't already.

I believe this is because your package.json does not contain the correct version:
https://github.com/firebase/angularfire/blob/master/package.json
"version": "0.0.0",

I forked the angularfire repo, and changed the package version:
https://github.com/kmturley/angularfire/commit/2514e3646f1adec27bbd2579909eb557b5884f59
"version": "2.3.0",

Then ran the installation pointing to my fork instead:
jspm install github:kmturley/angularfire

And it worked!


implemented BEM

See https://github.com/noraesae/perfect-scrollbar/issues/600

Sidenote: I propose to def. mention the actual changes of CSS class names with next release. In fact, isn't that change a breaking change?
We already saw broken custom styles in our application after updating to latest master for testing.


Error when creating tags in route table

I'm running into an error that I think is a bug, or a feature not enabled yet.
The error I am seeing is this:
Error: aws_route.ReadNetOHIOPrivateRT: : invalid or unknown key: tags
Background:
I'm using Terraform v0.11.7 and provider.aws v1.21.0
I'm trying to create a route table and add a tag to it.  I'm using the same format for a tag that I am using on the VPC and subnets.
resource "aws_internet_gateway" "internet-gateway" {
  vpc_id = "${aws_vpc.vpc.id}"

  tags {
    Name = "ReadNetOHIO_IGW"
  }
}

# Give the VPC internet access on it's main route table
resource "aws_route" "ReadNetOHIOPublicRT" {
  route_table_id         = "${aws_vpc.vpc.main_route_table_id}"
  destination_cidr_block = "<IP_ADDRESS>/0"
  gateway_id             = "${aws_internet_gateway.internet-gateway.id}"

  tags {
    Name = "ReadNetOHIOPublicRT"
  }
}

This will produce the error "Error: aws_route.ReadNetOHIOPrivateRT: : invalid or unknown key: tags" however if i run terraform plan with out the route table tags then it will create with out an issue.
resource "aws_route" "ReadNetOHIOPublicRT" {
  route_table_id         = "${aws_vpc.vpc.main_route_table_id}"
  destination_cidr_block = "<IP_ADDRESS>/0"
  gateway_id             = "${aws_internet_gateway.internet-gateway.id}"
}

# Give the VPC route table for private subnets
resource "aws_route" "ReadNetOHIOPrivateRT" {
  route_table_id         = "${aws_vpc.vpc.main_route_table_id}"
  destination_cidr_block = "<IP_ADDRESS>/16"
}

are tags on vpc route tables not supported?

I'm also getting invalid or unknown key: tags on the aws_eip module:
module.vpc.aws_eip.nat[0]
module.vpc.aws_eip.nat[1]
module.vpc.aws_eip.nat[2]
when trying to deploy the complete-vpc example in 1.34.0

aws_route does not have tags argument, so the error is correct.


Design Styles website page

goal: design the layout and how the sections of the page will looks like.
Personas goals on this page:

Decision maker:

Check if there is a coherent foundation for all styles and components
Check if there is a corresponding with the main brand
Check themes possibilities
Learn about the support for accesibility

Designer:

Learn the style foundations
Use colors and fonts
Download/Access design resources
Learn about the themes possibilities

Developer:

Get color codes for use on development
Get Font information

Final page structure #726

Main usage copy text: Emphasising the Business UX
Techne philosophy
Use of Color
Themes - To be defined
Info and link to Team Q - Style and Standard Guidelines
Accessibility info - To be defined

Tasks

[ ] Wireframes for the page structure sections
[ ] Design interaction of the section elements
[ ] Visual design
[ ] Document in wiki
[ ] Update Box files

First wireframe draft

Themes and more in deep Accessibility info will be treated separately as soon as we have more info on that.

@LeoT7508 - is there a design for this page? or should be just based off the wireframe.
@like-me1 - you can start on the task once leo confirms.

@saadmhybris
As of now the UX for this page was still up for debate so no there is no final design.

Here are the templates -
Landing Template: http://6umx4d.axshare.com/#g=1&p=content_template
General Content Template: http://6umx4d.axshare.com/#g=1&p=landing_template
Landing Template :

Content Template:

@jeannewalters @joseegm
This is fine, however we need real content, I can lay this out but its not going to look like anything. @joseegm I need content from you to work on this page. Ill assign it to you.

the wireframe above is outdated...the page has been split by the new sitemap we created

@gcho1023 @joseegm
Then we need to update the ticket, or we need to create separate tickets. These tickets are starting to get confusing.

we dont need to create any new tickets...they are already in the visual column

@LeoT7508 This issues is outdated, thanks to @gcho1023  for creating individual tickets for every page.


nixos/syncoid: allow interval to be list of strings

Description of changes
The syncoid module generates systemd services with a startAt config based on its interval value. However, it is currently not possible to completely disable this timer, or set multiple startAt values.
By accepting the same types that systemd.services.<name>.startAt accepts, we can disable generating a timer unit or set multiple startAt timers.
Things done

Built on platform(s)

[ ] 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

[ ] 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
[ ] 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.

Is there perhaps a way for one module to inspect the types set for an option by another module? That way we could avoid the redundancy and potential divergence here, as interval is really just an alias for the generated startAt option on the systemd service.

Pining the maintainers of this module @ju1m @lopsided98


Error code 0x80090016 Not listed

I get the error code 0x80090016 when I try to set up a Windows Hello pin number. It is not listed in the error code list that it sends me to. http://aka.ms/PINErrors

@MikeStephens-MS FYI


Export validateHeaderMatchesBody in Cardano.Chain.Block.Validation

This function is required for https://github.com/input-output-hk/ouroboros-network/issues/595. It seems I forgot to export it in https://github.com/input-output-hk/cardano-ledger/pull/549.

bors r+


Stop marking scores as ranked = 0 for pp only purposes

We use this flag for cases where scores should not be considered for PP or leaderboards now. Cases where PP is not required simply leaves it as null.

Cases where PP is not required simply leaves it as null.

I assume this is going to regress the pp display fix made at https://github.com/ppy/osu/pull/27053 for scores set e.g. on unranked mods? cc @ppy/team-web

Yeah, good call there. We'll either need to have local logic to check the conditions for whether a score should award PP, or come up with another value to represent what we were using null for..


Add Azure Key Vault to keep our secrets

Use a Azure Key Vault to keep our secrets:

Azure Function security Code/ token
storage connectionstrings
etc.

I will close this as we won't use keyVault moving forward


Scatter: Inaccurate point nearest to the cursor

Hello!
I was trying to fetch and display the coordinates of the data point that is nearest to the mouse cursor and I noticed a really strange and annoying behavior (or two).
In the below GIF you can see that the plot "thinks" that the line is somewhere else, a bit lower than where it's displayed.

A workaround might be to increase the maxDistance argument given to the GetNearest method but even so, the problem is that the point values don't match with the location of the mouse pointer (it shows 34 when I hover over 40, it shows 67 when I hover over 80, etc.), as presented in the second GIF:

As a quick observation, the closer to the left the points I "interrogate" are, the more accurate the result. The further to the right I hover, the greater the difference between the result and the real value.
I would like to mention that I'm using ScottPlot 5.0.34 and that the issue only reproduces in WPF, not in WinForms.
This is my code. Any suggestion, ideas, remarks would be highly appreciated!
public partial class MainWindow
{
    private readonly Scatter _myScatter;

    public MainWindow()
    {
        InitializeComponent();

        var xValues = new double[100];
        var yValues = new double[100];

        for (var i = 0; i < 100; i++)
        {
            xValues[i] = i;
            yValues[i] = i;
        }

        _myScatter = WpfPlot.Plot.Add.Scatter(xValues, yValues);
    }

    private void OnMouseMove(object sender, MouseEventArgs e)
    {
        var position = e.GetPosition(WpfPlot);
        var mousePixel = new Pixel(position.X, position.Y);
        var mouseLocation = WpfPlot.Plot.GetCoordinates(mousePixel);

        var nearest = _myScatter.Data.GetNearest(mouseLocation, WpfPlot.Plot.LastRender, 300F);

        if (nearest.IsReal)
        {
            MyLabel.Content = $"X={nearest.X:0.##}, Y={nearest.Y:0.##}";
        }
    }
}

Thank you for this awesome library! It has been a life savor.

Is your computer display scaled under Windows?  If yes, your wpf application has to handle the scaling when converting a raw display pixel position into the effective pixel position as expected by ScottPlot.  Here is an example of how to do that:
https://github.com/ScottPlot/ScottPlot/issues/3465#issuecomment-2010669913


⚠ Samsung has degraded performance

In 1210e39, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 2644 ms

Resolved: Samsung performance has improved in 77431ef.


jib task throws java.lang.NoSuchMethodError when project has buildSrc module with custom plugin

Hello, using jib plugin 3.2.1 version faced with next issue:

Jib version: 3.2.1
Build tool: Gradle
OS: ubuntu

Description of the issue:
java.lang.NoSuchMethodError: 'java.util.stream.Collector com.google.common.collect.ImmutableList.toImmutableList() exception thrown when project has buildSrc module, after adding implementation "com.google.guava:guava:31.1-jre" to buildSrc/build.gradle problem is fixed, but I would like to know why there is such conflict.
Steps to reproduce:
1.Create project with buildSrc module.
2.Add build.gradle file to buildSrc
apply plugin: "java"
repositories {
mavenCentral()
}
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
dependencies {
implementation "org.testcontainers:postgresql:1.16.0"
implementation "org.flywaydb:flyway-core:8.0.3"
implementation "org.jooq:jooq:3.15.4"
implementation "org.jooq:jooq-codegen-maven:3.15.4"
implementation "org.postgresql:postgresql:42.2.14"

}
3.Add jib plugin to root build.gradle file.
4.Run jib task

Please see this FAQ entry for pointers.
If you are still having issues after this, could you create a minimum reproducible sample, and provide your Gradle version?

@elefeint thanks for quick reply, i found out that was issue caused by transitive dependencies.

Thanks!


just use   npm update and try again

just use   npm update and try again
Originally posted by @firegbn in https://github.com/angular/angular-cli/issues/16868#issuecomment-610650226

just use npm update and try again


Is Redis already supported?

First of all, i love your project.
I want to cache my mysql database. Is it already possible to cache with redis? What caching is right now by default included, when i use caching?

For EF6, it should already be supported:
var connectionMultiplexer =  ConnectionMultiplexer.Connect("<IP_ADDRESS>:6379,allowAdmin=true");
QueryCacheManager.Cache = new RedisObjectCache(connectionMultiplexer.GetDatabase(), Newtonsoft.Json.JsonConvert.SerializeObject, (type, s) => Newtonsoft.Json.JsonConvert.DeserializeObject(s, type));

You can also implement your own in the same way: https://github.com/zzzprojects/EntityFramework-Plus/blob/master/src/shared/Z.EF.Plus.QueryCache.Shared/RedisObjectCache.cs
For EF Core, nothing has been done yet.
Let me know if that answers your question.
Best Regards,
Jon

Is this library useful to you? Please help us by becoming a sponsor to keep it alive and supported.

Hi, thank you for the fast response
What caching uses this libary by default? Can i use this class above and Redis should then work perfectly fine?
Best Regards,
Flo

So i worked the hole morning on that, QueryCacheManager.Cache and ObjectCache are not from the same type. I am not that much into caching. I could write it on my own and commit or share it here, but i dont understand IMemoryCache how to create a entry there is only a key and no value in the function call

Hello @flo2000ace ,
Unfortunately as said, nothing has been done for EF Core on our side.
We maybe didn't dig enough when we tried, but we didn't succeed either so I don't think we can really help you here. We had the same problem as you ;(

Ok then i also dont think i can do that, but one last question, what are you currently using for caching or is it disabled in ef core?

Hello @flo2000ace ,
The cache used for EF Core is the MemoryCache: https://github.com/zzzprojects/EntityFramework-Plus/blob/master/src/shared/Z.EF.Plus.QueryCache.Shared/QueryCacheManager.cs#L54
Unfortunately, the class is not the same as the one in the .NET Framework


Access downloaded files / specify the path of the downloaded file

So the package works fine, but it downloads my file (without being able to select the path) to /storage/emulated/0/Android/data/{appId}/files/{fileName}
How can I open this file instantly, or how can I make the plugin download the files to the Download folder of the device?
I'm trying to use the package to download .apk files (app updates) and install them.

use this plugin to open file:
https://github.com/capacitor-community/file-opener

So the package works fine, but it downloads my file (without being able to select the path) to /storage/emulated/0/Android/data/{appId}/files/{fileName}
How can I open this file instantly, or how can I make the plugin download the files to the Download folder of the device?
I'm trying to use the package to download .apk files (app updates) and install them.

use this plugin to open file:
https://github.com/capacitor-community/file-opener


Did you use ImageNet subset?

I train dino+Vit-S with ImageNet 19k. And one epoch use 5.5 hours, and I use 8 v100 GPU.
And loss get 3.13 just after 3 epoch. log as follow
Epoch: [3/100]  [ 1320/25690]  eta: 5:30:18  loss: 3.157086 (3.156335)  lr: 0.000305 (0.000303)  wd: 0.040826 (0.040813)  time: 1.155825  data: 0.001296  max mem: 14004

#48

Hi @Step-Zero ,
We train on ImageNet1k train set, which consist of 1.281.167 imgs and 1000 classes (though we do not use the class information).


Replication/Transport encryption

As EventSourcedActors are most likely deployed in two different locations and the log gets replicated over the internet it would be very beneficial to have encryption between two endpoints.

I'm exploring eventuate, and see the docs reference transport security as a feature:
http://rbmhtechnology.github.io/eventuate/reference/configuration.html
Does that mean this issue is resolved?

@jacobg Thanks for the hint. This issue (and #29) should indeed be resolved via #380.


fix half circle clipping issues on iOS and android

some clipping issues on iOS and android are now fix:

Hi, thanks for the PR.
I don't get these clipping issues. On what devices did they happen? And the percentage circles for 5 and 7 seem completely off in your first pictures - this doesn't happen to me (tested only on Android). I'm really curious.
Also I don't understand how your changes would fix them, however you're right I can just set the left property to 0 both times in renderHalfCircle, makes it easier. :+1:

Hi,
@huangmr @MrToph  I am still getting this issue when the percent is less than 50 on Android. Otherwise it perfectly running on iOS.
React-native : 0.48.4


Command to hide files based on extension / pattern?

I guess this is more of a feature request. I have a bunch of *.test.js files that I'd like to be able to hide from NerdTREE when I type some command/key binding. Is there already such a function available? Otherwise it would be a feature request. 👍

Yes, this is already a feature. Just use the NERDTreeIgnore setting, like this:
let NERDTreeIgnore = ['.*\.test\.js$']

Then those files will be hidden in NERDTree. If for some reason, you want to see them in the tree later, just press f in NERDTree to toggle them. There is more information available in the help file: :h NERDTreeIgnore


Point edit link towards LW/EAF tags if the description is pulled from there

Currently editing the entries we pull from LW/EAF requires an absurdly convoluted chain of clicks. Let's point the UI's edit button to the right place.
The relevant answers have
https://www.lesswrong.com/tag/{{{1|}}}?edit=true
 now.

@ChrisRimmer did this with the Gdocs backend


Front camera switches to back camera when backgrounding and foregrounding app

When you switch to the front-facing camera, quit the app (background), and come back to the app again the camera switches back to the rear camera. Also, RtmpCamera1#isFrontCamera() still returns true even though rear camera is shown. How to preserve currently used camera when backgrounding and foregrounding app.
I tried to save state in presenter for currently used camera and call switchCamera() onAttach but this does not do anything because onPreview is false for some reason.

@mhackeras right, that's what I actually do. I have a local variable isFrontCamera. In onAttach I do switchCamera(). The problem is here: if (isStreaming() || onPreview) {       cameraManager.switchCamera();     } onPreview is false because I don's stop preview when I quit app. If I do stopPreview() and come back to app and call startPreview() for some reason preview is not shown. I guess if I would figure out why preview is not shown after I stop it, I might fix the issue.

@mhackeras Found the problem. Indeed, I saved the state but my problem was that I try to switch the camera back before surfaceChanged called. Thanks.

Why dont you save the current state of preview and when launch the app again @override on resume and check this. :)

Why dont you save the current state of preview and when launch the app again @override on resume and check this. :)

@mhackeras @pedroSG94 even though saving the state of which camera was used before leaving the app works. But I still not satisfied with this solution as it seems like a bandaid. I would suppose that when I enter my app again, the camera switches back to the rear camera because a new Camera instance created. Not sure if that is what happens internally. I am sure that RtmpCamera1 is not recreated in my app. Would you guys have any thought on this? Thank you


Issue #1523 not yet resolved

Issue hasn't been resolved yet #1523

We'll be dropping support for the Stanford Tools, as they now have their own Python interface.


Unable to install this library

I am unable to install this library because of invalid syntax in setup.py:
version='version='2.0.0'',
                            ^
    SyntaxError: invalid syntax
----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.

https://github.com/adrobinoga/pyzatt/blob/6e81779e458d28650d39e9837781aeaff9bda2fd/setup.py#L51
The problematic line was added in commit 6e81779e458d28650d39e9837781aeaff9bda2fd.

Thanks!
I had a type when bumping the version


Printing environment variables before jest test command

For Node.js debugging purposes it is nice to be able to copy&paste jest test command that detox test produces as-is and prepend there node --inspect-brk.
Currently the printed command lacks a critical piece - environment variables configuration.
The improvement is going to look the following way:
x@y:~/Projects/detox/detox/test$ npm run e2e:android

><EMAIL_ADDRESS>e2e:android /home/x/Projects/detox/detox/test
> detox test --configuration android.emu.release --loglevel trace --take-screenshots all --record-videos none --record-logs all

configuration="android.emu.release" loglevel="trace" artifactsLocation="artifacts/android.emu.release.2018-07-24 09-58-04Z" recordLogs="all" takeScreenshots="all" recordVideos="none" node_modules/.bin/jest e2e --config=e2e/config.json --maxWorkers=1 '--testNamePattern=^((?!:ios:).)*$'

@rotemmiz , wdyt about this? It should help people with debugging Detox tests - you just copy&paste that line, prepend node --inspect-brk and you are ready to go.


v1.1.2 load issue

Hi, I followed the instruction on the site to install v1.1.2. I get this error and the plugin isn't loaded:
Querying plug-in: '/usr/local/abc/home/dfg/.config/GIMP/2.10/plug-ins/gimp-stable-diffusion.py'
gimp: LibGimpBase-WARNING: gimp: gimp_wire_read(): error
Terminating plug-in: '/usr/local/abc/home/dfg/.config/GIMP/2.10/plug-ins/gimp-stable-diffusion.py'

I tried v1.1.1. It's the same.

Which GIMP version do you use? Which OS? Did you make chmod 755 in case of macOS or Linux?

I use GIMP 2.10.32 on Linux.
Yes the script is executable:
-rwxr-xr-x  1 dfg primarygroup 4213 Sep 27 13:58 gimp-stable-diffusion.py*

Currently I don't have idea why it doesn't work. I will ask the GIMP community and hope to get a solution.

Could you please check, if Python 2 is installed on your machine? If not, please install Python 2 and try it again.

I had already python 3. Installed Python 2.7 but it still shows the same message.
I wonder if there is a way to see a more detailed error message.

@zuencap Also, what Linux are you on? I see mention of a similar issue back in Ubuntu 15.04 though they, too, don't have a conclusive fix.

I use a custom Debian based on the latest version.

Please check, if you can run "Filters > Render > Spyrogimp". This plugin is also Python based.

Additionally you could check, if the Python console runs. You can open it via "Filters/Python-Fu/Console".

Hmm, I don't have those 😮 I guess I have somehow a reduced GIMP. I'll check if I can get the proper one and update this issue.
Thanks a lot for looking in this.

Looks like Debian doesn't ship gimp-phyton package any more for the sake of Python 3.
I installed flatpack Gimp:
https://flathub.org/apps/details/org.gimp.GIMP
The plugin loads fine now. Thanks for your help.

Great, that it's working now! Do you know if it's necessary to install Python 2 manually or does this happen automatically when you install GIMP from flathub.org?

Flat packs are great but they introduce sandboxing that can be complicated
to resolve. I’ll look into this when possible. Can you provide the link to
the specific pack?
On Wed, Sep 28, 2022 at 6:05 AM zuencap @.***> wrote:

It works without installing Python2. Flatpak handles everything.
—
Reply to this email directly, view it on GitHub
https://github.com/blueturtleai/gimp-stable-diffusion/issues/6#issuecomment-1260681000,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AGKZRSG3MON6H6JIAPHHCL3WAQJ7ZANCNFSM6AAAAAAQWWV6IM
.
You are receiving this because you commented.Message ID:
@.***>

--
Sincerely, Alexander Somma
OpenCo Inc.
+1<PHONE_NUMBER>
Mon - Fri 9:00am - 4:00 pm
@.***
OpenCo.ca https://openco.ca/


feat: concurrently download images

[x] Concurrently make image requests (depending on the # of images there is a delay)
[x] Show progress bar for total images to download

It seems like it is not just an issue for images. Sometimes fetching metadata is slow too. Might be because the program is getting rate limited by civitai.


Correction for raw affiliation Institut Universitaire de France (IUF), Paris, France; Nantes Université, Movement - Interactions - Performance, MIP, UR 4334, F-44000 Nantes, France

Correction needed for raw affiliation Institut Universitaire de France (IUF), Paris, France; Nantes Université, Movement - Interactions - Performance, MIP, UR 4334, F-44000 Nantes, France
raw_affiliation_name: Institut Universitaire de France (IUF), Paris, France; Nantes Université, Movement - Interactions - Performance, MIP, UR 4334, F-44000 Nantes, France
new_rors: 03gnr7b55;055khg266;04q2ax456
previous_rors: 03gnr7b55;055khg266
works_examples: W4281624971
contact: 02014b987ed9709014a393a8b2e6991b:73ffbe48e57e2291f6b7bd99a1e1f3 @ univ-nantes.fr

This issue was accepted and ingested by the OpenAlex team on 2024-11-18. The new affiliations should be visible within the next 7 days.


Home assistant crash when try to reconfigure the integration

Version of the custom_component

Version V1.11.0
Configuration
Basic configuration with VW id connect car and Easee charger
Describe the bug
I initially set up the main integration parameter. However, I after decided to change the charging controller from the EV to the charger. I tried twice and every time after the change, when I tried to save the modification, the entire HA system crashed.
Debug log
Add your logs here.

The same hoppens to me. Trying to change the SoC configuration and then HA crashes. Wanted to upload the debug log, but my HA instance is still down.

Same happens to me. Crash HA core when clicking on reconfigure. To fix I need to ssh into HA and restart core
ha core restart
I am on supervised HA running on Proxmox, HA version 2024.7.3.
Here are some logs:

2024-07-26 10:10:47.264 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry EV SC Eneren for sensor
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 586, in async_setup
    result = await component.async_setup_entry(hass, self)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 130, in async_setup_entry
    return await component.async_setup_entry(entry)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 184, in async_setup_entry
    raise ValueError(
ValueError: Config entry EV SC Eneren (01J3Q0X65V5ZQZ17QEQVMGAQ3F) for ev_smart_charging.sensor has already been setup!
2024-07-26 10:10:47.265 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry EV SC Eneren for switch
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 586, in async_setup
    result = await component.async_setup_entry(hass, self)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/switch/__init__.py", line 92, in async_setup_entry
    return await component.async_setup_entry(entry)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 184, in async_setup_entry
    raise ValueError(
ValueError: Config entry EV SC Eneren (01J3Q0X65V5ZQZ17QEQVMGAQ3F) for ev_smart_charging.switch has already been setup!
2024-07-26 10:10:47.265 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry EV SC Eneren for button
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 586, in async_setup
    result = await component.async_setup_entry(hass, self)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/button/__init__.py", line 67, in async_setup_entry
    return await component.async_setup_entry(entry)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 184, in async_setup_entry
    raise ValueError(
ValueError: Config entry EV SC Eneren (01J3Q0X65V5ZQZ17QEQVMGAQ3F) for ev_smart_charging.button has already been setup!
2024-07-26 10:10:47.266 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry EV SC Eneren for number
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 586, in async_setup
    result = await component.async_setup_entry(hass, self)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/number/__init__.py", line 128, in async_setup_entry
    return await component.async_setup_entry(entry)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 184, in async_setup_entry
    raise ValueError(
ValueError: Config entry EV SC Eneren (01J3Q0X65V5ZQZ17QEQVMGAQ3F) for ev_smart_charging.number has already been setup!
2024-07-26 10:10:47.267 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry EV SC Eneren for select
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 586, in async_setup
    result = await component.async_setup_entry(hass, self)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/select/__init__.py", line 103, in async_setup_entry
    return await component.async_setup_entry(entry)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 184, in async_setup_entry
    raise ValueError(
ValueError: Config entry EV SC Eneren (01J3Q0X65V5ZQZ17QEQVMGAQ3F) for ev_smart_charging.select has already been setup!
2024-07-26 10:10:47.268 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry EV SC Eneren for sensor
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 586, in async_setup
    result = await component.async_setup_entry(hass, self)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 130, in async_setup_entry
    return await component.async_setup_entry(entry)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 184, in async_setup_entry
    raise ValueError(
ValueError: Config entry EV SC Eneren (01J3Q0X65V5ZQZ17QEQVMGAQ3F) for ev_smart_charging.sensor has already been setup!
2024-07-26 10:10:47.269 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry EV SC Eneren for switch
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 586, in async_setup
    result = await component.async_setup_entry(hass, self)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/switch/__init__.py", line 92, in async_setup_entry
    return await component.async_setup_entry(entry)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 184, in async_setup_entry
    raise ValueError(
ValueError: Config entry EV SC Eneren (01J3Q0X65V5ZQZ17QEQVMGAQ3F) for ev_smart_charging.switch has already been setup!
2024-07-26 10:10:47.270 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry EV SC Eneren for button
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 586, in async_setup
    result = await component.async_setup_entry(hass, self)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/button/__init__.py", line 67, in async_setup_entry
    return await component.async_setup_entry(entry)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 184, in async_setup_entry
    raise ValueError(
ValueError: Config entry EV SC Eneren (01J3Q0X65V5ZQZ17QEQVMGAQ3F) for ev_smart_charging.button has already been setup!
2024-07-26 10:10:47.271 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry EV SC Eneren for number
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 586, in async_setup
    result = await component.async_setup_entry(hass, self)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/number/__init__.py", line 128, in async_setup_entry
    return await component.async_setup_entry(entry)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 184, in async_setup_entry
    raise ValueError(
ValueError: Config entry EV SC Eneren (01J3Q0X65V5ZQZ17QEQVMGAQ3F) for ev_smart_charging.number has already been setup!
2024-07-26 10:10:47.272 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry EV SC Eneren for select
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 586, in async_setup
    result = await component.async_setup_entry(hass, self)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/select/__init__.py", line 103, in async_setup_entry
    return await component.async_setup_entry(entry)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 184, in async_setup_entry
    raise ValueError(
ValueError: Config entry EV SC Eneren (01J3Q0X65V5ZQZ17QEQVMGAQ3F) for ev_smart_charging.select has already been setup!
2024-07-26 10:10:47.273 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry EV SC Eneren for sensor
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 586, in async_setup
    result = await component.async_setup_entry(hass, self)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

That doesn't sound good... There seems to be some changes in HA 2024.7 that affects things. If anyone of you have the possibility to roll-back to HA 2024.6, and check if things work, that would be great.
Also strange that an integration can crash the whole HA...

I have a demo install, and I just upgraded that to 2024.6.3 and installed both nordpool and EV Smart Charge. Set up two dummy helpers for SOC and SOC Target. Worked just fine. Upgraded to 2024.7.3 and still it works... very strange. Not able to reproduce the bug.
Do you think this could be related to the DB upgrades done in 2024.7.x series? It was implemented from 2024.7.1 and 2024.7.2. See here: https://github.com/home-assistant/core/pull/120779
I believe this was mostly relevant for old installs that got issues, due to a very old database schema.  My install is quite old and has been upgraded for at least the last 3 or 4 years. @Perimec and @tobiasnorbo, how old are your installs?

Just managed to provoke it on my test setup. Seems it happens when I try to change the name of the integration. Will downgrade and test again.

Ok, I have now downgraded to 2024.6.3 and here it works fine, in 2024.7.0 it fails (and all versions thereafter). To trigger the error just try to rename the integration. Logs from my demo install (version 2024.7.0):
2024-07-29 12:07:02.654 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry Charger Smart for sensor
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 586, in async_setup
    result = await component.async_setup_entry(hass, self)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 130, in async_setup_entry
    return await component.async_setup_entry(entry)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 184, in async_setup_entry
    raise ValueError(
ValueError: Config entry Charger Smart (57008a1e234ac9205306bbb22c3ced1f) for ev_smart_charging.sensor has already been setup!
2024-07-29 12:07:02.655 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry Charger Smart for switch
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 586, in async_setup
    result = await component.async_setup_entry(hass, self)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/switch/__init__.py", line 92, in async_setup_entry
    return await component.async_setup_entry(entry)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 184, in async_setup_entry
    raise ValueError(
ValueError: Config entry Charger Smart (57008a1e234ac9205306bbb22c3ced1f) for ev_smart_charging.switch has already been setup!
2024-07-29 12:07:02.656 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry Charger Smart for button
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 586, in async_setup
    result = await component.async_setup_entry(hass, self)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/button/__init__.py", line 67, in async_setup_entry
    return await component.async_setup_entry(entry)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 184, in async_setup_entry
    raise ValueError(
ValueError: Config entry Charger Smart (57008a1e234ac9205306bbb22c3ced1f) for ev_smart_charging.button has already been setup!
2024-07-29 12:07:02.657 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry Charger Smart for number
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 586, in async_setup
    result = await component.async_setup_entry(hass, self)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/number/__init__.py", line 128, in async_setup_entry
    return await component.async_setup_entry(entry)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 184, in async_setup_entry
    raise ValueError(
ValueError: Config entry Charger Smart (57008a1e234ac9205306bbb22c3ced1f) for ev_smart_charging.number has already been setup!
2024-07-29 12:07:02.658 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry Charger Smart for select
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 586, in async_setup
    result = await component.async_setup_entry(hass, self)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

I know the bug linked above was introduced in 2024.7.0 and a fix was implemented in 2024.7.2, but that seems to not help for this integration. Please see also here: https://github.com/home-assistant/core/issues/117263#issuecomment-2197311144. For me it sounds likely that this is related.

I have tested a bit, and can recreate the issue by either changing the configuration or by changing the name of the device. Either of those will trigger a re-creation of the device. And that doesn't seem to work for HA 2024.7

I know the bug linked above was introduced in 2024.7.0 and a fix was implemented in 2024.7.2, but that seems to not help for this integration. Please see also here: home-assistant/core#117263 (comment). For me it sounds likely that this is related.

@corvy, I don't see the relation between the two issues? How does the recreatation of a device relate to the recorder?

Because several other integrations had recorder issues on 2024.7.
More info here: https://community.home-assistant.io/t/psa-2024-7-recorder-problems/746428

I think this is different.
Anyhow, I will make v1.11.1 release soon, that will remove the possibility to reconfigure a device for HA 2024.7. And then I need to find a soluton for reconfiguration. I might have implemented it in a way (using Options Flow) that is not according to the way one should do...
Anyone who knows about an integration that supports reconfiguration and works with HA 2024.7?
I guess this is what one should do: https://developers.home-assistant.io/docs/config_entries_config_flow_handler/#reconfigure

Now made a v1.11.1 that will disable reconfiguration for HA 2024.7.

In release v1.11.2, reconfiguration for HA 2024.7 has been fixed. So now everything should be ok, I hope.

That is perfect. I will try it asap and let u know. Thanks again for the support and for this super integration!On 2 Aug 2024, at 11:20, Jonas Karlsson @.***> wrote:
In release v1.11.2, reconfiguration for HA 2024.7 has been fixed. So now everything should be ok, I hope.
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID: @.***>

Confirm it is fixed. :) Thanks!


adding sorting for /api/post route

Summary
Added Sorting for All Post
Description
Added sorting for all the post displayed in the All Posts Section
Issue(s) Addressed
Closes #93
Prerequisites

[x] Have you followed all the CONTRIBUTING GUIDELINES?

Hi @djbtw, Thanks for the PR,
Is there no changes required for sample.json ?
Please write good description of what was the issue and

And you have acknowledged that you have followed.
But  Guidelines 2 and 3 are not followed, Contributing Guidelines
Kindly follow and let me know.

This is declined as the changes are merged in https://github.com/krishnaacharyaa/wanderlust/pull/105


Firecracker API update required

Removing ,omitempty from HtEnabled field fixes the API client for latest firecracker.
Otherwise, an error message about missing mandatory fields is returned.

I will take this one!


Get GCD antenna fixing to work in sky130hd in a flow.tcl based unit test // It works in hs but not hd.

Its best to work on these one at a time.

@jjcherry56 fyi

@tspyrou @jjcherry56 I've worked with gcd this week, and I think I found the problem. Here's the scenario:

Before global_route and repair_antennas commands, we run pin_access to use the results in grt.
The repair_antennas command is appropriately detecting the violations based on the global routing results and inserting the diodes as expected.
After repair_antennas, the detailed router is not being updated with the new APs of the moved cells, nor with the APs for the inserted diodes.
Running pin_access again after repair_antennas fixes part of the issue: the moved cells are updated. However, the detailed router data structures are not updated with the diodes (the standard cells and the connection with the nets).

Example: In the figure below, the ANTENNA_5 cell is connected to the net highlighted in yellow. But the detailed router isn't seeing this connection. In summary, I'm trying to make drt more incremental so it's internal structures are updated when we have these db updates.

I suspect drt is severely lacking when it comes to incremental changes and
it will be very error prone to try and add incrementality. Is there an API
to remove the drt data structures (which stupidly copy the entire db) and
just start from scratch as a workaround/short term solution?
On Fri, Oct 28, 2022 at 5:58 PM Eder Monteiro @.***>
wrote:

@tspyrou https://github.com/tspyrou @jjcherry56
https://github.com/jjcherry56 I've worked with gcd this week, and I
think I found the problem. Here's the scenario:

Before global_route and repair_antennas commands, we run pin_access
to use the results in grt.
The repair_antennas command is appropriately detecting the
violations based on the global routing results and inserting the diodes as
expected.
After repair_antennas, the detailed router is not being updated with
the new APs of the moved cells, nor with the APs for the inserted diodes.
Running pin_access again after repair_antennas fixes part of the
issue: the moved cells are updated. However, the detailed router data
structures are not updated with the diodes (the standard cells and the
connection with the nets).

Example: In the figure below, the ANTENNA_5 cell is connected to the net
highlighted in yellow. But the detailed router isn't seeing this
connection. In summary, I'm trying to make drt more incremental so it's
internal structures are updated when we have these db updates.
[image: image]
https://user-images.githubusercontent.com/43450810/198754539-c2570855-9734-4d22-b41a-6365ae25a024.png
—
Reply to this email directly, view it on GitHub
https://github.com/The-OpenROAD-Project/OpenROAD/issues/2432#issuecomment-1295669194,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AIJDZFJD4VCAJEEJAWTRG2TWFRZDBANCNFSM6AAAAAARROYP3E
.
You are receiving this because you were mentioned.Message ID:
@.***>

I've added a clear function that runs before pin_access, which is now working. I'll update my table with the comparison of antenna violations, and if the numbers look good, I'll create a PR.

@jjcherry56 @tspyrou Here is the updated table after the fix on drt:

We can see a large reduction in the number of DRT antenna violations now, but it is still far from optimal. I'm investigating some designs to understand why there are still violations in there

In the case of gcd_sky130hd, the difference between the PAR value with the allowed ratio is pretty small, and it makes sense that the GRT routing doesn't trigger the violation in this pin. Below is the detailed violation:

Other designs like aes_sky130hd have violations with a large difference between the calculated PAR and the allowed ratio, like this one:

For this specific net, I see that only one diode was inserted, but it is far from the pin with the violation. I wonder if this is the only cause for the violation still there.

I'll keep investigating the reminiscent violations.

I am not an antenna expert but I don't believe the proximity of the diode to the load is an issue. The diode just provides a path to the substrate if too much charge accumulates on the wire during fabrication.
I would focus on aes because it is the smallest design that has significant residual violations.
I am going guess that the problem is "almost" violating nets that grt/drt differentces push the ratio over the edge.
That would argue for repairing within a margin like repair_design/repair_timing commands.

@jjcherry56 I've added a margin parameter to the repair_antenna, but it doesn't solve all the violations. It only solves a few of them. Differences between the global route and the detailed route regarding the layer assignment of the wires cause the remaining violations. For example:
In the net below, drt has an antenna violation on the long met3 wire.

The violation is not detected on the grt because it has a break on this long wire near the violated pin, going to the layer above.

But in the final drt, we don't have this layer change to met4, so the violation exists only there.

Not sure what are the next steps on it. I think we could update drt to follow the guides for some nets, but this could affect DRCs and other metrics.

I think we'll need a post-drt repair as well.

I think we'll need a post-drt repair as well.

We could insert diodes post-drt and reroute the modified nets. But I believe we'll need support for incremental drt. AFAIK we can't route a set of nets if other nets are already routed.

We will have to deal with incremental drt.  Any post-drt optimization will need it too.

@eder-matheus are you running your tests on the latest Master branch? I made some fixes related to antenna fixing that might affect this test

@eder-matheus are you running your tests on the latest Master branch? I made some fixes related to antenna fixing that might affect this test

@QuantamHD Yes, I'm using the latest master branch, though I don't think they affect directly my tests with sky130 designs.

@eder-matheus
I've ran gcd design with latest ORFS commit. Not find any antenna violations.
==========================================================================
check_antennas
--------------------------------------------------------------------------
[WARNING ANT-0011] -report_violating_nets is deprecated.
[INFO GRT-0043] No OR_DEFAULT vias defined.
[INFO ANT-0002] Found 0 net violations.
[INFO ANT-0001] Found 0 pin violations.

In OpenLane based flow :
[INFO GRT-0014] Routed nets: 412
[INFO GRT-0006] Repairing antennas, iteration 1.
[INFO GRT-0043] No OR_DEFAULT vias defined.
[INFO GRT-0012] Found 3 antenna violations.
[INFO GRT-0015] Inserted 4 diodes.
[INFO GRT-0009] rerouting 279 nets.
[INFO GRT-0001] Minimum degree: 2
[INFO GRT-0002] Maximum degree: 12
[INFO GRT-0006] Repairing antennas, iteration 2.
[INFO GRT-0043] No OR_DEFAULT vias defined.
[INFO GRT-0012] Found 0 antenna violations.

Which unit test it's referring?


[semantic-dom-diff] How do you set the assertion message?

I'm used to being able to set the assertion message as the last argument to the assertion function:
assert.equal(a, b, 'a and b are not the same');

assert.lightDom.equal doesn't appear to accept a message argument.

Not stale


⚠ ClamAV has degraded performance

In 424256e, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 465 ms

Resolved: ClamAV performance has improved in 2ab561b.


Black status bar in immersive mode

It only happens on status bar, bottom bar is ok.

It is happening for me too. Downgraded to ver 38, apprently ver 39 is the version that broke it. Android version is sadly 11.

Yesterday's update seems to have fixed it at first glance

I'm still experiencing it in her 41, will there be a new version with the fix soon?


Qmake on project with Qt5 SVG module fails

I am trying to compile a Qt project which uses the Qt5 SVG module but no CMake.
INCLUDE, LIB and PATH have been adjusted to include the Qt tools, include, lib and manual link folders.
The build generally works fine, with other libraries and Qt itself.
However, for the project making use of the Qt5 SVG module with QT  *= svg fails with
Project ERROR: Unknown module(s) in QT: svg
Failed on project configuration with qmake

Is this supposed to work? Am I missing something? How do I make Qt recognize the separately installed svg module? I can see the lib and dll files in place in the vcpkg installed folder next to the main Qt library. Another project which makes use of QT *= network sql xml, which all seems to be included in the main port, works fine in this setup.

Running qmake -query shows that the configuration is generated wrongly. Every variable has a <varname>/dev duplicate with the path that would be correct.
dev is my root parent folder on the partition I am building/using vcpkg from. So that name may be coming from there.
QT_INSTALL_ARCHDATA:C:/dev/[…]/vcpkg/packages/qt5-base_x64-windows/share/qt5
QT_INSTALL_ARCHDATA/dev:C:/dev/[…]/vcpkg/installed/x64-windows/share/qt5

Duplicate with #6085.


MahApps MessageBoxes using MVVM

Simple question for the MahApps Merry Men. I have implemented an application using your great metro styled controls using Caliburn.Micro for the MVVM stuff. The new message dialogs look great, but currently there is not clear way of launching these dialogs with out writing my own wrapper (which I am not against). However, has this been done or is there something I missing so that I can invoke a message box from a view model without any fuss?
Thanks for your time.

My fear of hiding the main "dialog" to show the confirmation is that it will be confusing to the end user, I would think.
I have a dedicated ticket to see if there is something in the MahApps framework that I missed whereas I can still have the SimpleDialog + provide a confirmation prompt without needing a child window. Although I realize I can build an external window for the confirmation, it's something I'm trying to avoid.

Finally, how did you solve it?


Enhanced transaction simulations

The wallet already provides simulations automatically whenever a transaction review dialog pops up:

We want to improve the capabilities of this dialog, and of simulations as a whole.
Key points (each of which can be its own PR):

[ ] Ability to customize all aspects of a transaction during the dialog (gas, data, value, etc), and see that reflected in the simulation output in near-real time
[ ] Ability to see the decoded call data, based on ABI information, with all the arguments being used, and the ability to edit them as well (e.g.: edit the amount of an ERC20 transaction), and just like above, see the real-time feedback in the simulation output
[ ] Show more intelligent information based on the output: ERC20 transfers, ERC721 transfers, ERC20 approval changes.
[ ] Detect if the destination contract is one we haven't interacted with before, or has been deployed recently, and display a warning in such cases
[ ] Ability to select a transaction from the wallet's history, and ask to "send it again", filling in the dialog & simulation with those parameters. This may be useful mostly for developers wanting to take repeated actions, or test the same interaction with slightly different params

Nothing to add, looks awesome.

Finalized in #661 with the ability to edit individual tx fields


Dynamic number of elements computation for shapeless compile

Puts the computation of the number of elements across some axes in the graph to allow for more shapeless compiles (basically shapeless mean and var).
This is a draft to discuss whether this kind of solution makes sense. I think instead we could have a "shape function" that would return a double that would be casted to whatever type is the scalar array. This would allow computing the number of elements or ddof correction factor in one go.

I think instead we could have a "shape function" that would return a double that would be casted to whatever type is the scalar array. This would allow computing the number of elements or ddof correction factor in one go.

Could you elaborate what you mean by that? Is it essentially the same as this but fixing the output type to double?
I think what you have is fine for now. It is pretty specific to this case.. but it's not exposed anywhere so we can update it if we need to. The more general solution doesn't feel like it would be better here tbh...I don't love the idea of blowing up the graph with all those tiny scalar ops, unless we always compile and they get fused.
Maybe a possibility to make the more general solution better is finding a clean way to do it but only if we are compiling the function and otherwise just using the shape directly..

@awni feel free to check the vmaps and I 'll merge after

Awesome, thanks for patching that up! vmap fixes look great. I pushed the test I had for the mean vmap that was failing. Feel free to merge whenever


HOTFIX: Fix compile error in TopicAdminTest

9a4f00f78bf37041006ae8b6432d194f603ac6cc changed the constructor of DescribeConfigsResponse.
/home/chia7712/kafka/connect/runtime/src/test/java/org/apache/kafka/connect/util/TopicAdminTest.java:582: error: incompatible types: int cannot be converted to Struct
        return new DescribeConfigsResponse(1000, configs);
                                           ^
Note: Some messages have been simplified; recompile with -Xdiags:verbose to get full output
1 error

Committer Checklist (excluded from commit message)

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation (including upgrade notes)

@tombentley Could you take a look?

@abbccdda I attache the error message to the description.
@kkonstantine I have addressed your comment
Please take a look :)

Sorry about breaking the build. Thanks @chia7712.

The few test failures were not relevant. Merging to fix the build anyways.


Thank you!

Just wanted to say thank you for posting this package! It helped me a lot!

And closing!
Have a good day!

Hey @rowild thanks for this! And a shout out to @tjheffner for being the person that actually did the hard work here - I just threw it into a repo.


The channel count of "sRGBx" is 4?

https://github.com/KhronosGroup/OpenCL-CTS/blob/0d74b3f926e547b2ae6d13de55b16aa5a6711265/test_common/harness/imageHelpers.cpp#L147

I agree that from a storage perspective and spec definition both CL_sRGBx and CL_RGBx should be 4 channels. The helper get_pixel_bytes() depends on the channel count, and would be wrong for both formats. Are you seeing test failures due to this?
One think to keep in mind if changing it would be that some validation code could possibly be depending on that count to figure out which channels to pay attention to.

I see both usages in my quick grep through the CTS tests: some places use the "channel count" to determine storage requirements and other places use the "channel count" to determine how much data to verify.
If we want to fix this we'll need to separate out the two usages, otherwise changing from 3 to 4 will fix one class of bugs only to cause another.


handle inactive pods with inactive threshold

This PR is to handle the issue https://github.com/sustainable-computing-io/kepler/issues/264.
Instead of deleting inactive pods at the reading point, we set themaxInactivePods.
If the number of inactive pods is more than this threshold, we check the alive pod from the pod lister and remove the deleted pods from the podEnergy map.
Note that, need to update podName to podID with namespace later (reference: https://github.com/sustainable-computing-io/kepler/issues/265).
Signed-off-by: Sunyanan Choochotkaew<EMAIL_ADDRESS>

tested this fix, it can show the pods that are started after kepler is running but those nginx pods that are running before kepler starts are still missing

@rootfs We could add in the podEnergy structure the pods that are running and have not had any updates in the counters, so that we report these pods with energy 0


Error with pre-create check: "SSH key does not exist" when using the generic driver

I'm using docker-machine.exe version 0.8.0, build b85aac1 on Windows 10 (Cygwin) and when running docker-machine create --driver generic --generic-ip-address=my-host.com --generic-ssh-key "~/.ssh/id_rsa" my-host  I get this:
Running pre-create checks...
Error with pre-create check: "SSH key does not exist: \"/home/username/.ssh/id_rsa\""

The key definitely exists and works, and I can use it to log into the server via SSH (root) without problems.

Tested using docker-machine 0.8 for Mac, got the same result.
A workaround: When referring to the ssh-key, try using $HOME instead of tilde ~.
docker-machine create --driver generic --generic-ip-address=my-host.com --generic-ssh-key=$HOME/.ssh/id_rsa my-host

Unfortunately that doesn't work on Windows. It kinda works by providing the full path. Unfortunately there's another problem now.


fix(sdk): fix auto public path

Description

The publicPath value returned by the inferAutoPublicPath function cannot be properly used in @module-federation/nextjs-mf.
As you know, when the address "http://localhost:3009/_next/static/chunks/mf-stats.json" is returned via the inferAutoPublicPath function, it returns "http://localhost:3009/_next/static/chunks/". This allows the auto-setting of publicPath.
In this case, @module-federation/nextjs-mf works as follows:
When publicPath is set to auto, it combines "http://localhost:3009/_next/static/chunks/" with the filename.
If the filename value is passed as 'static/chunks/remoteEntry.js', it combines to
"http://localhost:3009/_next/static/chunks/" + "static/chunks/remoteEntry.js",
resulting in an incorrect URL.

https://github.com/module-federation/core/blob/10e6f5acb3f7431c01ee598865bf2aee82a520cc/apps/3001-shop/next.config.js#L18-L21
On the other hand, if you set the filename to 'remoteEntry.js' instead of 'static/chunks/remoteEntry.js',
a 404 error occurs in nextjs when accessing "http://localhost:3009/_next/static/chunks/remoteEntry.js".
Due to this, I tried modifying it as below, and would like your opinion.
I was contemplating where to make the adjustments, and ended up making these changes. If there is a better solution, I would like to hear your suggestions.
Related Issue

Types of changes

[ ] Docs change / refactoring / dependency upgrade
[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)

Checklist

[x] I have added tests to cover my changes.
[x] All new and existing tests passed.
[ ] I have updated the documentation.

you should not consume mf-stats.json as far as i know, you should be using the mf-manifest.json file.


fix: check if there is data

closes #21
Can you add the label hacktoberfest-accepted?

Sure, label added


[Rest Server] Fix PAI_DEFAULT_FS_URI issue

Fixes #497

Coverage decreased (-1.7%) to 44.91% when pulling edcebc6bb8e86b49724c0aa479ecdc66b5cbd621 on xiongyf/rest-server-fs-uri-fix into 86ebe271cfe835b1e20afd03196e1f8cd45be598 on master.

Can you add unit tests to cover this case?


Now is possible to translate the extension author's name

Now is possible to translate the extension author.
Can also be translated contributors, even if they aren't yet shown in the ui.
(issue #9933, @datamweb)

@nicolo-ribaudo Thanks for the contribution. Please add a couple of testcases for the new functionality. This way we can test some edge cases and make sure we find out if something breaks.

@peterflynn I've cleaned up the code.
@ingorichter Are there already some translation test that I can extend?

@nicolo-ribaudo can you solve the merge conflicts?
I think this still miss the comment requested from @peterflynn

I'm sorry but I don't use Adobe Brackets anymore. If anyone is interested in cherry-picking my commits and make the needed changes, feel free to do that.


Lag during render when using cross sub-array

Version
2.5.17
Reproduction link
https://jsfiddle.net/Lalmat/eywraw8t/336389/
Steps to reproduce
I've isolated the bug here : https://jsfiddle.net/Lalmat/eywraw8t/336389/
To reproduce :

Try to hide/show the hello world message, the redraw is instant
Use the load data button
Try to hide/show the hello world message, there's a lag that is fully dependant of you CPU velocity.

It seems that there's a setTimeout inside vue that cause this lag
What is expected?
Instant redraw
What is actually happening?
Lag during redraw depending of computer CPU

I use cross arrays to avoid using a toggle function. I'm completely aware that this code is kind of tricky but I can't understand why there's a lag...
This is why I follow this to experts :)

It's not a setTimeout. Performance timeline shows massive dependArray calls, which is caused by array access in v-model
<input type="checkbox" v-model="bat.lines[line.id].checked">

I'm not familiar with the code but perhaps this PR would fix this.
A quick workaround (or maybe the correct way in your case) is to use an object for bat.lines since you're using it as a hash map(direct access by key) rather than an array. See https://jsfiddle.net/eywraw8t/336702/

Working, thank you !

Another solution that worked for me with one-way binding and a click event handler.
<input type="checkbox" :value="bat.lines[line.id].checked" @click="bat.lines[line.id].checked = !bat.lines[line.id].checked">


Fab stays above drawer

I have a working bottom navigation bar with fab  work a completely fine. Recently I inserted a navigation drawer and I’m having an issue. When the drawer is open, the fab orante hide with the other elementary instead, stays on the drawer without a color change. See gif below.

Please provide a minimal, reproducible example and the output of flutter doctor -v.

@ardacebi can you please make the code need a self-contained minimal runnable reproduction
as a single file so that we can just copy your code into lib/main.dart of a new project and run to reproduce.

Any solution?

Hi @ardacebi
Can you confirm that this still a valid issue?
Thank you

Hey @pedromassangocode,
That code is totally lost atm and I don't know where it is anymore, I left that project. So I can't have the same environment I got that error.


add nftsailingnet

Add NFT Calendar 'nftsailing.net'

Hi @nahern,
Please find the following info:

Logo: https://nftsailing.net/images/logo.png

Profiles: official profile and me

Short description (more here): NFT Sailing is a free multi-chain NFT Calendar that supports Cardano projects. Project owners can publish their release info and reach people interested in new and upcoming NFTs.

Thanks a lot!


Incorrect 3.3.5 SMSG_ACCOUNT_DATA_TIMES parsing

For 3.3.5 SMSG_ACCOUNT_DATA_TIMES does not survive parse->encode round trip.
SMSG_ACCOUNT_DATA_TIMES::read_inner reads an an extra u32 (data_decompressed_size) before reading data.
https://github.com/gtker/wow_messages/blob/f05ce8ceb6dbba6e92b42bb0ae9ddf8444f0fbaf/wow_world_messages/src/world/wrath/smsg_account_data_times.rs#L43-L56
The .wowm and also SMSG_ACCOUNT_DATA_TIMES::write_into_vec do not have this u32
https://github.com/gtker/wow_messages/blob/f05ce8ceb6dbba6e92b42bb0ae9ddf8444f0fbaf/wow_message_parser/wowm/world/login_logout/smsg_account_data_times.wowm#L45-L55
https://github.com/gtker/wow_messages/blob/f05ce8ceb6dbba6e92b42bb0ae9ddf8444f0fbaf/wow_world_messages/src/world/wrath/smsg_account_data_times.rs#L135-L140
I think data_decompressed_size is incorrect, as I can't find it in other implementations and CacheMask::PerCharacterCache has 5 bits set, so data should have 5 elements (see comment for data in .wowm).
Here is a failing test case for this bug:
#[test]
fn reencode_smsg_account_data_times_char_mask() {
    use std::io::Cursor;
    use wow_world_messages::wrath::{
        expect_server_message, ServerMessage, SMSG_ACCOUNT_DATA_TIMES,
    };

    let original: Vec<u8> = vec![
        0x00, 0x1f, 0x09, 0x02, // packet header
        0xf3, 0xb3, 0x16, 0x65, // unix_time
        0x01, // unknown 1
        0xea, 0x00, 0x00, 0x00, // mask (5 bits set, so data should have 5 elements)
        0xe3, 0xaf, 0x16, 0x65, // data?, currently skipped as data_decompressed_size
        0x00, 0x00, 0x00, 0x00, // data
        0x00, 0x00, 0x00, 0x00, // data
        0x00, 0x00, 0x00, 0x00, // data
        0x4a, 0xa0, 0x15, 0x65, // data
    ];

    let msg = {
        let mut cursor = Cursor::new(&original);
        expect_server_message::<SMSG_ACCOUNT_DATA_TIMES, _>(&mut cursor).unwrap()
    };

    let reencoded = {
        let mut buf = Vec::new();
        msg.write_unencrypted_server(&mut buf).unwrap();
        buf
    };

    // err: original is 4 bytes longe than reencoded
    assert_eq!(original, reencoded);

    let reparsed = {
        let mut cursor = Cursor::new(&reencoded);
        expect_server_message::<SMSG_ACCOUNT_DATA_TIMES, _>(&mut cursor).unwrap()
    };

    // err: original.data.len() is 4 vs 3 for reparsed
    assert_eq!(msg, reparsed);
}

Is it correct to assume that the eventual goal is that all packets should survive parse->encode->parse without changes (ignoring header encryption)?

Thank you for the very thorough bug report. I have pushed a fix to master that passes your test case.
In order to create unit tests for the individual messages you can write a test wowm object. It can be auto generated from a specific message through the (to_test_case_string)[https://github.com/gtker/wow_messages/blob/009948f4caa0fcac8fe85d2c7b19f51dedd7a72c/wow_world_messages/src/world/wrath/smsg_account_data_times.rs#L77] function. If you could obtain a valid message in this format a test would be auto generated that would prevent any regressions, as well as better coverage for downstream implementations in other languages.

Is it correct to assume that the eventual goal is that all packets should survive parse->encode->parse without changes (ignoring header encryption)?

Yes, absolutely. This bug was because I incorrectly added a compressed_data field to endless arrays (u8[-]) because these are usually compressed. I removed the field for non-compressed members.
Are you working on wrath-rs or your own server?

@gtker I'm currently working on a toy project (not public yet) which for now is just a proxy for authserver + worldserver, later also a client implementation.
It's grown from just using wow_messages to try and generate code intermediate_representation.json myself (as I find wow_messages codegen to be very confusing). Is there a reason you didn't use quote?

It's grown from just using wow_messages to try and generate code intermediate_representation.json

Are you using the intermediate_representation.json file? I've been assumed that I was the only one using it for wow_messages_python so I've been doing breaking changes rather freely.
The idea is for users of intermediate_representation.json to have to do as little actual calculation/thinking as possible. For example by inlining full struct types to avoid having to do any lookup.
Do you have any ideas for improvements?

(as I find wow_messages codegen to be very confusing).

Yeah, I understand completely. The layout and general idea of wow_messages has changed many times, and there are even sections where I'm not sure I even follow the logic any more because of how many times the requirements have changed.

Is there a reason you didn't use quote?

The line based output that I have makes it significantly easier to debug and track changes. This is also why I don't run rustfmt on the output before committing.

Are you using the intermediate_representation.json file? I've been assumed that I was the only one using it for wow_messages_python so I've been doing breaking changes rather freely.

No issues as of yet, and I use both intermediate_representation.json and intermediate_representation_schema.json (which I transform to rust types using https://github.com/jsontypedef/json-typedef-codegen/), so I'd notice any changes.
JSON with a schema that is processed and simplified already is much easier to hack around than parsing wowm.

Do you have any ideas for improvements?

I am interested in this project, but currently only in the .wowm/intermediate representation part. I hope (probably presumptuously) that I can write a "better" rust implementation from the input data you maintain.
I will be opening PRs about contents of .wowm and wowm->IR translation, but probably not about rest of codegen. That being said- since I am working on generating code form same rules I am noticing possible issues about codegen.
Should I open all kinds of weird issues (and possible issues) I manage to find even if I have no intention on fixing them?
Some things I already have noted:

Fuzzing cannot be easily performed currently due to 2 issues:

There is no access to writing a header (write_unencrypted_server)
I can't find a way to read ServerOpcodeMessage and get "total bytes read" after it's read, how about exposing changing ServerOpcodeMessage::read_opcodes?// current
//  - private
//  - caller can't see how r was changed
fn read_opcodes(opcode: u16, body_size: u32, mut r: &[u8]) -> Result<...>

// new
//  - public
//  - takes `&mut &[u8]` so caller can see how much was read
pub fn read_opcodes(opcode: u16, body_size: u32, r: &mut &[u8]) -> Result<...>

The generated code makes rust_analyzer work slowly, I think some generated code could be optimized (for parsing, not for execution), not sure where to even start
There are some types in .wowm (for example "spell") that don't seem to be documented and are just silently treated as u32, the intermediate representation doesn't even contain this type (it's just u32)
read_sized_c_string_to_vec is wrong (vec![0u8; user provided u32] is a crash exploit)

option a: since max packet size is 0x7fffff, then that should be max valid size for read_sized_c_string_to_vec
option b: since read_sized_c_string_to_vec is utf-8 valid (so can't have 0x00 in the middle), then u32 length can just be thrown out and it can be read as null terminated string

current bool implementation is not parse->encode->parse stable (as it reads any non-zero value as true)

if wow actually allows bools outside of [0, 1], then bool as a type is wrong and should be u8
if wow always sends and receives [0, 1], then bool should fail parsing on other values
I suspect bool must be replaced by u8, as there could be servers out there that send other values for bool even if wow client itself doesn't

Some tag_all usage is confusing to me. For example cmsg_cancel_cast.wowm has #tag_all versions "1 2 3"; and then test marked as versions = "1.12";. Is the correct interpretation that tests are:

1 2 3 1.12 - this seems how it works currnetly for wowm->intermediate, can I suggest it should be an error if item explicitly has a version that tag_all already covers.
1.12

If you agree- I'll convert these (and more) into issues, just wanted to check in before I start spamming you.

I am interested in this project, but currently only in the .wowm/intermediate representation part. I hope (probably presumptuously) that I can write a "better" rust implementation from the input data you maintain.

You probably can, at least you can probably better optimize it for your use case.

Should I open all kinds of weird issues (and possible issues) I manage to find even if I have no intention on fixing them?

Yes, definitely.

There is no access to writing a header (write_unencrypted_server)

I deliberately wanted to hide as many unnecessary details as possible for users, which is why I also don't expose the opcode numbers.
Do you want to be able to only write a header and no body?

I can't find a way to read ServerOpcodeMessage and get "total bytes read" after it's read, how about exposing changing ServerOpcodeMessage::read_opcodes?

This is also not exposed by design. :)
I probably don't mind changing the function signature of read_opcodes, but I don't want it public since users really should only be able to read full messages, without having to care about the exact wire format.

The generated code makes rust_analyzer work slowly,

Oh yeah.
I'm also not sure how to fix it. I'm thinking it might have something to do with the match statements that match 400+ cases that all do basically the same thing.
I may be able to do some optimizations, but no promises since no matter how you slice it there's 300k+ lines just in wow_world_messages alone.

There are some types in .wowm (for example "spell") that don't seem to be documented and are just silently treated as u32, the intermediate representation doesn't even contain this type (it's just u32)

Yeah, the intention was always there to have a dedicated Spell/Item type that wasn't just a u32/u16, but it got a little lost along the way.

read_sized_c_string_to_vec is wrong (vec![0u8; user provided u32] is a crash exploit)

That's definitely true.
This is also something that I just haven't gotten around to because it's only used by clients.
I would like to maintain the optimization of being told how long the string is, but there should definitely be a maximum on it.

current bool implementation is not parse->encode->parse stable (as it reads any non-zero value as true)

I think this is one of those things where we'll never get a "perfect" solution just different tradeoffs.
For wow_world_messages/wow_login_messages I want to make the library as ergonomic as possible for users, which is why I don't want to expose a u8 when the only possible options are negative/positive.
This is complicated by the fact that C/C++ treat any positive integer as true and the WoW message format almost just being structs dumped on the wire knowing that the client has the same internal representation.
I think it's a good idea to have an issue for this, if only to document a decision.
It might make sense to have bools with a value other than 0/1 be a panic just to figure out what the behavior actually is.

Some tag_all usage is confusing to me. [..]

This is just straight up an error on my part.
I don't have any real exact guidelines for how to do things, but I think I'm currently of the opinion that tests should be marked only with the exact version that they were tested with.

can I suggest it should be an error if item explicitly has a version that tag_all already covers.

Yes, from how I currently feel about it, I think it should be.

If you agree- I'll convert these (and more) into issues, just wanted to check in before I start spamming you.

Please do. I can't promise a speedy resolution since I'm working on/off on this, but having tracking issues for all these will definitely be good.
I also want to mention the awesome-wow-rust repo which lists most of the WoW Rust projects, as well as the discord for it.
You should add your project to the repo when it's public.

There are some types in .wowm (for example "spell") that don't seem to be documented and are just silently treated as u32, the intermediate representation doesn't even contain this type (it's just u32)

This is now correctly passed to the IR, but not used in wow_messages yet.

Incorrect issue.

The original issue was fixed.
I created issues from comments

#80
#81
#82
#83
#84
#85

I think this can be closed


insert is not available for GD

Hello,
NotSupportedException in AbstractDriver.php line 115: Command (insert) is not available for driver (Gd).
when I am try to this code,
`
$image_path = public_path() . '/images/brand_logo/' . $file_name;
            $image = Image::make($request->img_src)->resize(500, 500, function ($c) {
                $c->aspectRatio();
            });

            Image::canvas(500, 500)->insert($image, 'center')->save($image_path);`

I found the problem. My locale is Turkish. And it converts 'insert' => 'İnsert' and it doesnt find the class.
I added small fix for me.

#L106-L107
"ucfirst()" not compatible for Turkish.


Fade out overides sound loops

Describe the bug
Any sound with a fade out duration will not loop.
To Reproduce

Go to functions
Create a sound using any sound file
Give it a "fade out" duration
Set it to loop
Play it

Expected behavior
When a sound is set to loop, I would expect the fade out to only happen when the user chooses to stop it from playing, particularly when clicking a button the sound is assigned to in the virtual console. Because of this glitch, everything I would use QLC+ for in regards to audio isn't doable.
Desktop (please complete the following information):

OS: Windows 11
QLC+ 4.12.8 (also 4.12.7) I checked and this is not a recent development
Hardware setup: An Acer latop. I also reproduced it on my PC.

Thanks for reporting.
Should be fixed now.


result in multi thread returns the same

runs in parallel, but I got the ping returns at the same time, what could be the problem

Known issue, see #6


persist auth tokens for zybooks and canvas in local storage

[x] persist tokens to local storage
[x] configure checking/updating of token for zybooks
[x] configure checking/possible updating of token for canvas

setup localstorage save and persistent token checking on page load. Closing issue