Lazily initialize the positions HashMap in Labels

This removes some extra cost, in particular when createing very large Labels that are only here to hold data (this is mostly going to be sample Labels), and which are never searched for the presence/absence of a given entry.
This is a follow up to #752, and related to #751
TODO:

[x] check how much this improves the overhead of a given MD step when used in atomistic models

Contributor (creator of pull-request) checklist

[ ] ~Tests updated (for new features and bugfixes)?~
[ ] ~Documentation updated (for new features)?~
[ ] ~Issue referenced (for PRs that solve an issue)?~

Reviewer checklist

[ ] CHANGELOG updated with public API or any other important changes?

📚 Download documentation preview for this pull-request

This seems to be an improvement overall, even if there are some strange trends in the profiling. The weirdest one is that moving neighbor data to dtype/device is now faster, even if no code touching it changed?? The profiler might be including something else in there.
macOS, CPU
metatensor v0.1.10
PairMetatensor::compute ...
   creating System from LAMMPS data ...
      converting neighbors with ghosts remapping ...
         identifying ghosts and real atoms ... took 0.054333ms
         filtering LAMMPS neighbor list ... took 53.7607ms
         creating samples Labels (168020 pairs) ... took 16.502ms
         moving neighbor data to dtype/device ... took 0.008125ms
         creating neighbors TensorBlock ... took 0.097834ms
      converting neighbors with ghosts remapping took 70.6818ms
   creating System from LAMMPS data took 73.4655ms
   running Model::forward ... took 188.315ms
   running Model::backward ... took 365.451ms
   storing model output in LAMMPS data structures ... took 0.023083ms
PairMetatensor::compute took 634.168ms

Larger SmallVec (#752)
PairMetatensor::compute ...
   creating System from LAMMPS data ...
      converting neighbors with ghosts remapping ...
         identifying ghosts and real atoms ... took 0.053458ms
         filtering LAMMPS neighbor list ... took 52.484ms
         creating samples Labels (168020 pairs) ... took 6.77021ms
         moving neighbor data to dtype/device ... took 0.012833ms
         creating neighbors TensorBlock ... took 0.133125ms
      converting neighbors with ghosts remapping took 59.7082ms
   creating System from LAMMPS data took 62.5985ms
   running Model::forward ... took 196.525ms
   running Model::backward ... took 384.692ms
   storing model output in LAMMPS data structures ... took 0.024958ms
PairMetatensor::compute took 645.792ms

Lazy HashMap
PairMetatensor::compute ...
   creating System from LAMMPS data ...
      converting neighbors with ghosts remapping ...
         identifying ghosts and real atoms ... took 0.067667ms
         filtering LAMMPS neighbor list ... took 56.7354ms
         creating samples Labels (167930 pairs) ... took 5.76217ms
         moving neighbor data to dtype/device ... took 0.008083ms
         creating neighbors TensorBlock ... took 0.056667ms
      converting neighbors with ghosts remapping took 62.8524ms
   creating System from LAMMPS data took 65.4958ms
   running Model::forward ... took 191.876ms
   running Model::backward ... took 338.465ms
   storing model output in LAMMPS data structures ... took 0.023083ms
PairMetatensor::compute took 597.391ms

Linux, CPU
metatensor v0.1.10
PairMetatensor::compute ...
   creating System from LAMMPS data ...
      converting neighbors with ghosts remapping ...
         identifying ghosts and real atoms ... took 0.1063ms
         filtering LAMMPS neighbor list ... took 69.3677ms
         creating samples Labels (168020 pairs) ... took 18.617ms
         moving neighbor data to dtype/device ... took 0.008486ms
         creating neighbors TensorBlock ... took 0.088938ms
      converting neighbors with ghosts remapping took 88.3927ms
   creating System from LAMMPS data took 92.2887ms
   running Model::forward ... took 812.361ms
   running Model::backward ... took 1555.7ms
   storing model output in LAMMPS data structures ... took 0.03148ms
PairMetatensor::compute took 2473.17ms

Larger SmallVec (#752)
PairMetatensor::compute ...
   creating System from LAMMPS data ...
      converting neighbors with ghosts remapping ...
         identifying ghosts and real atoms ... took 0.120017ms
         filtering LAMMPS neighbor list ... took 72.5035ms
         creating samples Labels (167944 pairs) ... took 18.3556ms
         moving neighbor data to dtype/device ... took 0.006963ms
         creating neighbors TensorBlock ... took 0.067317ms
      converting neighbors with ghosts remapping took 91.2291ms
   creating System from LAMMPS data took 95.2389ms
   running Model::forward ... took 840.839ms
   running Model::backward ... took 1648.08ms
   storing model output in LAMMPS data structures ... took 0.031209ms
PairMetatensor::compute took 2586.86ms

Lazy HashMap
PairMetatensor::compute ...
   creating System from LAMMPS data ...
      converting neighbors with ghosts remapping ...
         identifying ghosts and real atoms ... took 0.107202ms
         filtering LAMMPS neighbor list ... took 71.9589ms
         creating samples Labels (167930 pairs) ... took 7.45385ms
         moving neighbor data to dtype/device ... took 0.013195ms
         creating neighbors TensorBlock ... took 0.079461ms
      converting neighbors with ghosts remapping took 79.7989ms
   creating System from LAMMPS data took 83.6927ms
   running Model::forward ... took 817.137ms
   running Model::backward ... took 1558.92ms
   storing model output in LAMMPS data structures ... took 0.044524ms
PairMetatensor::compute took 2461.79ms

Linux, CUDA
metatensor v0.1.10
PairMetatensor::compute ...
   creating System from LAMMPS data ...
      converting neighbors with ghosts remapping ...
         identifying ghosts and real atoms ... took 0.059022ms
         filtering LAMMPS neighbor list ... took 73.1832ms
         creating samples Labels (167660 pairs) ... took 18.365ms
         moving neighbor data to dtype/device ... took 28.5508ms
         creating neighbors TensorBlock ... took 0.150534ms
      converting neighbors with ghosts remapping took 120.584ms
   creating System from LAMMPS data took 124.54ms
   running Model::forward ... took 6.83657ms
   running Model::backward ... took 10.9181ms
   storing model output in LAMMPS data structures ... took 0.080842ms
PairMetatensor::compute took 154.465ms

Larger SmallVec (#752)
PairMetatensor::compute ...
   creating System from LAMMPS data ...
      converting neighbors with ghosts remapping ...
         identifying ghosts and real atoms ... took 0.064181ms
         filtering LAMMPS neighbor list ... took 74.4589ms
         creating samples Labels (167698 pairs) ... took 17.8969ms
         moving neighbor data to dtype/device ... took 19.6298ms
         creating neighbors TensorBlock ... took 0.138261ms
      converting neighbors with ghosts remapping took 112.476ms
   creating System from LAMMPS data took 116.389ms
   running Model::forward ... took 7.00544ms
   running Model::backward ... took 10.8484ms
   storing model output in LAMMPS data structures ... took 0.088316ms
PairMetatensor::compute took 139.673ms

Lazy HashMap
PairMetatensor::compute ...
   creating System from LAMMPS data ...
      converting neighbors with ghosts remapping ...
         identifying ghosts and real atoms ... took 0.048993ms
         filtering LAMMPS neighbor list ... took 73.1471ms
         creating samples Labels (167940 pairs) ... took 8.09987ms
         moving neighbor data to dtype/device ... took 8.02107ms
         creating neighbors TensorBlock ... took 0.176543ms
      converting neighbors with ghosts remapping took 89.795ms
   creating System from LAMMPS data took 93.7907ms
   running Model::forward ... took 6.77884ms
   running Model::backward ... took 10.4576ms
   storing model output in LAMMPS data structures ... took 0.061366ms
PairMetatensor::compute took 113.052ms


Feature request: Suppress HAA0502 for new ...Exception

Hi.
As far as I know, there is no way to throw an exception without allocating. Besides rethrowing an existing.
Would be nice if there would be a possibility to exclude exceptions. At least the Argument... ones.
Every single null check is alerted and I clutter my source code with compiler directives. This makes the source very much harder to read.
Edit: Even better: Check if the execption is documented. This exception is on purpose.
Kind regards
Bernd

Hi @bdongus
I think you should create a helper method for parameters null checks (or use existing guard library)
This should make your code more readable and also should solve the problem with reporting HAA0502 in every method.
Here are off-the-shelf solutions:
https://github.com/adamralph/liteguard
https://github.com/synergy-software/synergy.framework/wiki/Contracts

@electricessence I no longer work at Microsoft, my best contact within the .NET team for this kind of stuff is @davidfowl who can potentially help on who should maintain this project and/or bring this PR in.


Single pane mode & Toggle to switch phone storage on the right pane, computer on the left.

Fixed it in https://github.com/ganeshrvel/openmtp/pull/174


Question about the concurrent control method

Hi,
I found that some parts of your code utilize RDMA atomic operations and READ/WRITE on the same memory region. (e.g., The node_type in Header). However, it may harm the correctness of synchronization.
The Infiniband Architecture Specification 1.4 has pointed out in section <IP_ADDRESS> that it's unsafe to simultaneously use atomic and nonatomic operations on the same memory region.
I believe the reason is that "atomic" is only effective for the NIC execution but not for the flushing through PCIe.
Recent paper SIGMOD'23 Design Guidelines for Correct, Efficient, and Scalable Synchronization using One-Sided RDMA and this QA https://lore.kernel.org/linux-rdma/20200512113512.GK4814@unreal/T/ confirms my point.
Thus, I want to ask: Is it a bug in your code? If it isn't, how did you further ensure the correctness of synchronization?

Besides, I have some questions about the "Header Split" part of your paper, where only concurrent search is discussed.
However, if there are two insert operations that want to split the same header, how do they synchronize?
For example, in your example of the paper, except "k6: 0x120577AC", assuming there is another key "k8: 0x130577AC".
Both of them can read the partial key "1234" in node A. How do they concurrently do header split in a lock-free way?

Hello, may I ask if there is an answer to this question? I'm also very curious about how to achieve concurrent execution with lock-free mechanisms for two or more writers during header split and node type switching. I hope to receive your reply, and I appreciate your assistance greatly!


Update HREF normalization strategy

The Manifest parser doesn't normalize HREFs to the base URL anymore.
Container HREFs (e.g. ZIP entries) don't start with a / anymore. They are relative to the root of the archive.
Backward-compatibility for persisted locators starting with a /.

PR Analysis

🎯 Main theme: This PR focuses on updating the HREF normalization strategy in the code. The changes involve removing the leading '/' from HREFs and making them relative to the root of the archive.
📝 PR summary: The PR modifies the HREF normalization strategy in the code. It changes the HREFs to be relative to the root of the archive instead of starting with a '/'. The changes are reflected across multiple test files and the main code. The PR also ensures backward compatibility for persisted locators starting with a '/'.
📌 Type of PR: Refactoring
🧪 Relevant tests added: Yes
🔒 Security concerns: No security concerns found

PR Feedback

💡 General suggestions: The PR is well-structured and the changes are consistent across all the files. The removal of the leading '/' from HREFs and making them relative to the root of the archive is a good approach. It's also commendable that the PR takes care of backward compatibility for persisted locators starting with a '/'. However, it would be beneficial to ensure that all edge cases are handled and tested.

 🤖 Code feedback:

relevant file: readium/shared/src/test/java/org/readium/r2/shared/publication/ManifestTest.kt
suggestion: It seems like the tests have been updated to reflect the changes in the HREF normalization strategy. However, it would be beneficial to add more tests to cover edge cases, if not already done. For instance, testing how the code behaves when the HREF is empty or contains special characters. [medium]
relevant line: links = listOf(Link(href = "manifest.json", rels = setOf("self"))),

relevant file: readium/shared/src/androidTest/java/org/readium/r2/shared/util/HrefTest.kt
suggestion: The tests in this file have been updated to reflect the changes in the HREF normalization strategy. However, it would be beneficial to add more tests to cover edge cases, if not already done. For instance, testing how the code behaves when the HREF is empty or contains special characters. [medium]
relevant line: assertEquals("foo/bar.txt", Href("foo/bar.txt", "").string)

How to use

Tag me in a comment '@CodiumAI-Agent' and add one of the following commands:
/review [-i]: Request a review of your Pull Request. For an incremental review, which only considers changes since the last review, include the '-i' option.
/describe: Modify the PR title and description based on the contents of the PR.
/improve [--extended]: Suggest improvements to the code in the PR. Extended mode employs several calls, and provides a more thorough feedback.
/ask <QUESTION>: Pose a question about the PR.
/update_changelog: Update the changelog based on the PR's contents.

To edit any configuration parameter from configuration.toml, add --config_path=new_value
For example: /review --pr_reviewer.extra_instructions="focus on the file: ..."
To list the possible configuration parameters, use the /config command.


Scala Common Enrich: bump ua-parser to latest version

This library is in a bit of a mess:

There is no version available on Maven Central
The Java version has not been updated for a long time

Looks like we are already using 1.3.0 which is the latest I can find from here (what we are currently using): https://clojars.org/org.clojars.timewarrior/ua-parser
Also found here:
https://mvnrepository.com/artifact/ua_parser/ua-parser/1.3.0
The library appears to have been split into many new repositories and the new one to watch is:
https://github.com/ua-parser/uap-java
However looks like we are using the latest and greatest of this library so should we push this back?
cc/ @alexanderdean

Okay - thanks for checking - let's push back!

FYI, they have finally started publishing to Maven Central with version 1.4.0: ua-parser/uap-java#1
This would be extremely useful, as the UA parsing ruleset currently embedded in the enrichment jar is from 2013.

Thanks for the update, PRs are most welcome :+1:

superseded by #3811


should posts list can be displayed gallery view for all images of post in the list

:tada: This issue has been resolved in version 1.0.0-dev.3 :tada:
The release is available on:

v1.0.0-dev.3
GitHub release
v1.0.0-dev.3

Your semantic-release bot :package::rocket:

:tada: This issue has been resolved in version 1.0.0 :tada:
The release is available on:

v1.0.0
GitHub release
v1.0.0

Your semantic-release bot :package::rocket:


Packaged Recipes (especially Infusion) don't mesh well with Primordial Pearls

If an Infusion recipe requires a Primordial Pearl, even if the pearl is at full durability, it will use up the entire pearl. Even if it's not the centerpiece (where an item would replace the pearl). This only an Infusion issue, Arcane Crafting still returns a Pearl at -1 durability.
However, and I'm not sure if this is as plausible, but is it possible to have the encoder recognize "any durability" for Pearls? If I give Infusion or Arcane Crafting a recipe that wants a Primordial Pearl, it will only work with Pearls that match durability exactly. if I try with a recipe that says "use a full Pearl" and then asking it to run with "my only Pearl is half durability", it won't work. Or is that just an AE2 "Processing Pattern" limitation in general?

It's an AE2 limitation, as if I recall correctly AE2 in 1.12 doesn't not allow replacements outside of crafting recipes

Oh, the pedestals need to be connected? I guess I missed that in the book, I only connected the matrix itself.
Yeah, figured that could end up being the case. Thanks for confirming though.


⚠ SolarOscp has degraded performance

In 0f9af82, SolarOscp ($SOLAROSCP_URL) experienced degraded performance:

HTTP code: 200
Response time: 333 ms

Resolved: SolarOscp performance has improved in acee514 after 9 minutes.


support for youtube shorts downloader

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
Describe the solution you'd like
A clear and concise description of what you want to happen.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.

const ytIdRegex = /(?:http(?:s|):\/\/|)(?:(?:www\.|)?youtube(?:\-nocookie|)\.com\/(?:shorts\/)?(?:watch\?.*(?:|\&)v=|embed\/|v\/)?|youtu\.be\/)([-_0-9A-Za-z]{11})/


Functional programing

Which functional programming are we using for this HW? @tirthbha @poojashresthacode

@sharmistharanit We have chosen a function that will estimate overall work done by a car which is traveling at different speeds at different points on its way.

Yeah, lambda and map

Done


Document the fixture API

It took me a long time to figure out that there was a fixture API available to clar. I stmbled upon @arrbee's write-up and it helped set me on my way.
Thought it best to add to the README so others can benefit.

:heart_eyes:


How to integrate into existing project--relative paths etc

I'm testing out this version before hopefully buying the paid one. I can't see a quick easy way to integrate it into an existing project though. For maintainability, portability, updates, etc, I don't want to mix your components with mine and I need to be able to put your src folder anywhere in my tree. It seems like every instance of something like:
import buttonStyle from "assets/jss/material-dashboard-react/components/buttonStyle.jsx";

breaks webpack because the paths aren't relative.
How are people integrating this with an existing project? Am I missing something? I don't to structure my app like yours, I don't want your router, etc. I just want the components and layouts.
Thanks

Modifying env variables etc is not an option. I'm looking for a MUI theme, not an app framework.

Ideally, do you have this as an npm package so one could just import all the components and make MUI a peer dep?

Hello @nolandg ,
As of moment the dashboard is on npmjs, but it is not configured to work as a npm package.
One of our clients made a pull request  (which we are not allowed yet to accept it)  for another product, which is based on this one, on how to make our product work as a npm package.
Please read the following creativetimofficial/material-kit-react#18
Hope that information helps you. Please let us know if we can help you with anything else.
Best,
Manu

Does the paid version have the same problems? Do I get the source with the paid developer version so that I can make a library that can be used in projects and updated properly?

Hello @nolandg ,
Since the pro version, is paid / with money we do not keep it on npm.
As of moment we are testing on how we can add our paid products on npm.
You cannot use our paid version and put it on npm (since it is paid / it is not open source).
Best,
Manu


ARROW-5362: [C++] Fix compression test memory usage

Codecov Report

Merging #4335 into master will increase coverage by 0.99%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master    #4335      +/-   ##
==========================================
+ Coverage   88.26%   89.25%   +0.99%
==========================================
  Files         777      635     -142
  Lines       97953    87022   -10931
  Branches     1251        0    -1251
==========================================
- Hits        86461    77675    -8786
+ Misses      11256     9347    -1909
+ Partials      236        0     -236

Impacted Files
Coverage Δ

cpp/src/arrow/util/compression-test.cc
99.17% <100%> (+0.01%)
:arrow_up:

cpp/src/arrow/util/io-util.h
0% <0%> (-100%)
:arrow_down:

cpp/src/arrow/util/io-util.cc
63.18% <0%> (-18.51%)
:arrow_down:

cpp/src/arrow/python/benchmark.cc
0% <0%> (-12.5%)
:arrow_down:

python/pyarrow/tests/util.py
91.17% <0%> (-2.38%)
:arrow_down:

cpp/src/arrow/status.cc
36.95% <0%> (-2.33%)
:arrow_down:

cpp/src/arrow/record_batch.cc
87.59% <0%> (-2.09%)
:arrow_down:

cpp/src/arrow/util/decimal.cc
92.3% <0%> (-1.48%)
:arrow_down:

cpp/src/arrow/filesystem/filesystem.cc
56.66% <0%> (-1.4%)
:arrow_down:

cpp/src/plasma/plasma.cc
69.23% <0%> (-1.14%)
:arrow_down:

... and 314 more

Continue to review full report at Codecov.

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


New version: pnpm.pnpm.7 version 7.9.3

[X] Have you signed the Contributor License Agreement?
[X] Have you checked that there aren't other open pull requests for the same manifest update/change?

[ ] Have you tested your manifest locally with winget install --manifest <path>?
[ ] Does your manifest conform to the 1.1 schema?

Microsoft Reviewers: Open in CodeFlow

@wingetbot waiver add Validation-Executable-Error

@wingetbot waivers Add Validation-Executable-Error


Problem with ViewReuseId

Hi,
As I understand it, you should be able to use the same viewReuseId for different layouts as long as they create the same UIView class and configure the same view properties. When I'm doing this and using my layouts with ReloadableViewLayoutAdapter on a UICollectionView, it's not cleaning up views correctly on a re-used UICollectionViewCell.
Here's a Playground example that reproduces the problem:
import Foundation
import UIKit
import LayoutKit
import PlaygroundSupport

struct FeedItem {
    let name: String
    let text: String
}

struct BannerItem {
    let headline: String
    let subtitle: String?
}

class MyViewController : UIViewController {

    let items: [Any] = [
        FeedItem(name: "User X", text: "Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo"),
        BannerItem(headline: "Ad 1", subtitle: "Best market ever!"),
        FeedItem(name: "User Y", text: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. An nisi populari fama? Scaevolam M. At enim sequor utilitatem. Duo Reges: constructio interrete. Bonum valitudo: miser morbus."),
        BannerItem(headline: "Ad 2", subtitle: nil),
        FeedItem(name: "User Z", text: "Rationis enim perfectio est virtus; Certe non potest. Ille incendat? Ut pulsi recurrant?"),
        BannerItem(headline: "Ad 3", subtitle: "Best lib ever!")
    ]

    let collectionViewLayout: UICollectionViewFlowLayout = {
        let layout = UICollectionViewFlowLayout()
        layout.sectionInset = UIEdgeInsets(top: 10, left: 0, bottom: 10, right: 0)
        return layout
    }()

    lazy var layoutAdapterCollectionView: LayoutAdapterCollectionView = {
        let collectionView = LayoutAdapterCollectionView(frame: .zero, collectionViewLayout: self.collectionViewLayout)
        collectionView.backgroundColor = .lightGray
        collectionView.alwaysBounceVertical = true
        return collectionView
    }()

    override func viewDidLayoutSubviews() {
        super.viewDidLayoutSubviews()
        self.layoutAdapterCollectionView.frame = self.view.bounds
    }

    override func viewDidLoad() {
        super.viewDidLoad()
        self.view.backgroundColor = .white
        self.view.addSubview(self.layoutAdapterCollectionView)
    }

    override func viewDidAppear(_ animated: Bool) {
        super.viewDidAppear(animated)

        let sections: [[Any]] = [
            self.items,
            self.items,
            self.items
        ]

        self.layoutAdapterCollectionView.layoutAdapter.reload(
            width: self.layoutAdapterCollectionView.bounds.width,
            synchronous: true,
            layoutProvider: { (Void) -> [Section<[Layout]>] in

                let sections: [Section<[Layout]>] = sections.enumerated().flatMap({ (index, section) in
                    let layouts: [Layout] = section.flatMap { item in
                        if let feedItem = item as? FeedItem {
                            return self.feedItemLayout(for: feedItem)
                        }
                        if let bannerItem = item as? BannerItem {
                            return self.bannerLayout(for: bannerItem)
                        }
                        return nil
                    }
                    let sectionLayout = self.sectionLayout(index: index)
                    return Section<[Layout]>(header: sectionLayout, items: layouts)
                })

                return sections
            },
            completion: nil
        )
    }

    private func sectionLayout(index: Int) -> Layout {
        let labelLayout = LabelLayout(
            text: "Section \(index)",
            font: UIFont.boldSystemFont(ofSize: 20),
            config: { label in
                label.textColor = .white
            }
        )
        return InsetLayout(
            insets: UIEdgeInsets(top: 20, left: 10, bottom: 0, right: 10),
            sublayout: labelLayout,
            config: { view in
                view.backgroundColor = .black
            }
        )
    }

    private func bannerLayout(for bannerItem: BannerItem) -> Layout {

        let headlineLayout = LabelLayout(
            text: bannerItem.headline,
            font: UIFont.systemFont(ofSize: 18),
            numberOfLines: 0,
            viewReuseId: "labelWithTextColorAndBackgroundColor",
            config: { label in
                label.textColor = .white
                label.backgroundColor = .black
            }
        )

        var subtitleLayout: Layout?
        if let subtitle = bannerItem.subtitle {
            subtitleLayout = LabelLayout(
                text: subtitle,
                font: UIFont.systemFont(ofSize: 18),
                numberOfLines: 0,
                viewReuseId: "labelWithTextColorAndBackgroundColor",
                config: { label in
                    label.textColor = .green
                    label.backgroundColor = .red
                }
            )
        }

        return StackLayout(
            axis: .vertical,
            viewReuseId: "viewWithBackgroundColor",
            sublayouts: [
                headlineLayout,
                subtitleLayout
            ].flatMap({ $0 }),
            config: { view in
                view.backgroundColor = .white
            }
        )
    }

    private func feedItemLayout(for feedItem: FeedItem) -> Layout {

        let imagePlaceholderLayout = SizeLayout(
            width: 80,
            height: 80,
            viewReuseId: "viewWithBackgroundColor",
            config: { view in
                view.backgroundColor = .gray
            }
        )

        let nameLayout = LabelLayout(
            text: feedItem.name,
            font: UIFont.systemFont(ofSize: 14),
            numberOfLines: 0,
            viewReuseId: "labelWithTextColorAndBackgroundColor",
            config: { label in
                label.textColor = .black
                label.backgroundColor = .clear
            }
        )

        let textLayout = LabelLayout(
            text: feedItem.text,
            font: UIFont.systemFont(ofSize: 12),
            numberOfLines: 0,
            viewReuseId: "labelWithTextColorAndBackgroundColor",
            config: { label in
                label.textColor = .black
                label.backgroundColor = UIColor.groupTableViewBackground
            }
        )

        let verticalStackLayout = StackLayout(
            axis: .vertical,
            sublayouts: [
                nameLayout,
                textLayout
            ]
        )

        return StackLayout(
            axis: .horizontal,
            viewReuseId: "viewWithBackgroundColor",
            sublayouts: [
                imagePlaceholderLayout,
                verticalStackLayout
            ],
            config: { view in
                view.backgroundColor = .yellow
            }
        )
    }
}

PlaygroundPage.current.liveView = MyViewController()
PlaygroundPage.current.needsIndefiniteExecution = true

It initially builds a list that looks like this:

But after scrolling down and then back up it looks like this:

Ad 2 and the item below now has a yellow view that is not removed after a re-use.

Ok, I looked into the ViewRecycler code and now it's clear that a viewReuseId needs to be unique within each cell view hierarchy.
In our scenario we have a rather complex list view where each row can differ quite a lot from the previous rows but they are all build using the same sub components, just in different content contexts. Most of the sub components have eg. UILabels where only font and textColor is different, container views with different background colors etc and each cell can have multiple instances of these.
For us it would be a big performance gain (number of views that are being re-used) if viewReuseId would be an identifier that describes views that are of the same UIView class and are configuring the same view properties instead of uniquely describing views in which context they are used.
Example of a UILabel Layout that shows number of likes with viewReuseId that describes the view instead of the view context:
let likesLayout = LabelLayout(
    text: "12 likes",
    font: UIFont.systemFont(ofSize: 12),
    numberOfLines: 0,
    viewReuseId: "labelTextColorBgColor",
    config: { label in
        label.textColor = .black
        label.backgroundColor = UIColor.groupTableViewBackground
    }
)

Instead of
let likesLayout = LabelLayout(
    text: "12 likes",
    font: UIFont.systemFont(ofSize: 12),
    numberOfLines: 0,
    viewReuseId: "numberOfLikesLabel",
    config: { label in
        label.textColor = .black
        label.backgroundColor = UIColor.groupTableViewBackground
    }
)

The downside of this is that it would affect the LayoutKit Animation behaviour since it uses the viewReuseId to identify which views to animate.
What's your thoughts on this?

I looked into the ViewRecycler code and now it's clear that a viewReuseId needs to be unique within each cell view hierarchy.

Your observation is correct. viewReuseId is intended to identify exactly the same view, not a different but compatible view.

if viewReuseId would be an identifier that describes views that are of the same UIView class and are configuring the same view properties instead of uniquely describing views in which context they are used.

This is something that I experimented around with a while ago and didn't follow through with for reasons I forget. It should be possible to do what you want, but we would need two identifiers: one for uniquely identifying views for animations, and one for identifying a group of views that are interchangeable for view reuse purposes (i.e. viewReuseId and viewReuseGroup).
If this is a real problem for you and you are willing to make a contribution, I would be happy to review it.

This is something that I experimented around with a while ago and didn't follow through with for reasons I forget. It should be possible to do what you want, but we would need two identifiers: one for uniquely identifying views for animations, and one for identifying a group of views that are interchangeable for view reuse purposes (i.e. viewReuseId and viewReuseGroup).
If this is a real problem for you and you are willing to make a contribution, I would be happy to review it.

Cool, this is something we definitely would like to have. I would be happy to make a contribution. Just need to find time to work on it, so it would probably take week or so to have a PR ready.
Thanks!

Finally got time to look into this. I've created a pull request (https://github.com/linkedin/LayoutKit/pull/175) that adds support for viewReuseGroup. It would be awesome if you had a look at it.


Setting the correct number of units for secondary heat assets

Fixes: #1586

Is it possible to instead determine the number of units during the cost calculation? I thought we avoided setting a NoU attribute on heat assets since the number of heat connections could change when the user added or removed "district heat" technologies, and this wouldn't be reflected in the assets when using an explicit NoU?

Is it possible to instead determine the number of units during the cost calculation?

That's correct. I'll see what I can manage.

@antw I mange to include the heat_connections in the initial market calculation for heat assets. 👍 So no noh in the db.

Looks good! :+1:


Call to private Requests::__construct() - register requests class

Hello,
I want register this class to flight, http://requests.ryanmccue.info/
require_once 'lib/Requests.php'; //Request s

Flight::register('requests',"Requests");
$requests = Flight::requests();

//use example
//$requests->get('http://ryanmccue.info/', array('Accept' => 'text/html'));

Error this;
Fatal error: Call to private Requests::__construct() from context 'flight\core\Loader' in /opt/lampp/htdocs/flightphp-learn/flight/core/Loader.php on line 123
If It can be override flightphp request class, It's ok.
Thank you for interest.

It looks like methods on that class are used statically, so I don't think it would make sense to register it with Flight.
If you're using composer you're better off installing Requests that way and then you can just use the class without having to load or register it.

Hmm, @philo23 thank you.
I am not using composer.

So,
How can I do get sample url address with flight request method?
Can you show me a sample pattern?
Thank you again.

@fatihmert Flight::request return you request from the browser to your application. In other words, if your user visits / it will give you all information about this request, like headers, path, method, parameters passed, etc.

@tamtamchik ok. I understood.
Thank you for fast answer.

@fatihmert try this out. You don't need to do extra lines to make it work with Flight. It should work out of the box.
require_once 'lib/Requests.php'; //Request

Requests::get('http://ryanmccue.info/', array('Accept' => 'text/html'));```

In what situation would you register a class vs just using it as is?


Bugs in Normal Use

Microsoft PowerToys version
<IP_ADDRESS>
Installation method
GitHub
Running as admin
None
Area(s) with issue?
General
Steps to reproduce
2024-07-01.txt
✔ Expected Behavior
No response
❌ Actual Behavior
Version: <IP_ADDRESS>
OS Version: Microsoft Windows NT 10.0.22631.0
IntPtr Length: 8
x64: True
Date: 2024/7/1 11:59:51
Exception:
System.OutOfMemoryException: Exception of type 'System.OutOfMemoryException' was thrown.
at System.Windows.Input.StylusWisp.WispLogic.OnTabletRemovedImpl(UInt32 wisptisIndex, Boolean isInternalCall)
at System.Windows.SystemResources.SystemThemeFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
at MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
at System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
at System.Windows.Application.RunDispatcher(Object ignore)
at System.Windows.Application.RunInternal(Window window)
at PowerLauncher.App.Main()
Other Software
No response

Can you provide more context as to what the bugs are that you're seeing? /needinfo

/dup https://github.com/microsoft/PowerToys/issues/30012


Added support for cancellation tokens

What problem does the pull request solve?
Fixes #176 by adding support for passing CancellationToken parameters to asynchronous methods.
Also fixes #130 - rather than accessing a Task result directly the task should be awaited.
These changes allow early cancellation of requests.
Checklist

[x] I’ve used the pull request template
[ ] I’ve written unit tests for these changes
[ ] I’ve update the documentation (in DOCUMENATION.md and CHANGELOG.md)
[ ] I’ve bumped the version number (in src/GovukNotify/GovukNotify.csproj)

I'm waiting for the CI to finish running before making any more changes or marking this as ready, but there are a few other changes I would like to make if they're acceptable:

Add support for nullable reference types.
Rather than targeting .NET 6, target .NET standard 2.1. I think the target frameworks overall could be simplified to just .NET standard 2.0 and 2.1...

I'm not sure why but it looks like the CI may be stalled on this one. Would someone mind giving it a nudge?
The changes mentioned in the previous comment will be explored in a future PR after this one has been merged.


Add getter to virtual datasources for 'backend' datasource

See #212 comment - CachedDataSource (but also other built-in datasources if applicable) should provide method to get access to the backend datasource, so e.g. HTTPDataSource settings (Headers) can be finetuned.

It turned out was already there, so in iOS and CARTO MapService you can set HTTP headers with following code:
    NTStringMap* headers = [[NTStringMap alloc] init];
    [headers set: @"Accept-Encoding" x:@"gzip"];
    for (int i = 0; i < [layers size]; i++) {
        NTTileLayer* layer = (NTTileLayer*) [layers get:i];
        NTMemoryCacheTileDataSource* layerDataSource = (NTMemoryCacheTileDataSource*)[layer getDataSource];
        NTHTTPTileDataSource* httpDataSource = [layerDataSource getDataSource];
        [httpDataSource setHTTPHeaders:headers];
        [[self.mapView getLayers]add:layer];
    }


Webhooks and subscriptions should support Component field in issues updates

When processing issue updated webhook messages, certain fields are recognized and treated specially. See, for example, the handling of the Reporter field in https://github.com/mattermost/mattermost-plugin-jira/blob/bbac7f8410142319c3bb8c31d98cd585a0997cb0/server/webhook_parser.go#L161.
Need to add similar support and tests for the Component field.
Originally https://mattermost.atlassian.net/browse/MM-19170

@levb I would like to work on this.

@cored thanks for taking this up!

@levb I've been off the grid due to moving to a new apartment, however, I am planning on finishing the work this week.

@cored ping, are you still working on this?

Closing per https://github.com/mattermost/mattermost-plugin-jira/pull/411

@levb Sorry for the delay. I am dealing with some family matters. Sorry again for the late response.

@cored no problem, and hope everything works out.


Can't join bbq-brich from latest master build

Build:
./scripts/build.sh
cargo build --release

Run:
> ./target/release/substrate
2018-12-06 12:52:12 Substrate Node
2018-12-06 12:52:12   version 0.1.0-74fae42c-x86_64-macos
2018-12-06 12:52:12   by Parity Technologies, 2017, 2018
2018-12-06 12:52:12 Chain specification: BBQ Birch
2018-12-06 12:52:12 Node name: shy-list-9444
2018-12-06 12:52:12 Roles: FULL
2018-12-06 12:52:12 Loading GRANDPA authorities from genesis on what appears to be first startup.
Error: Execution: Instantiation: Export ext_storage_changes_root has different signature Signature { params: [I64, I32], return_type: Some(I32) }

Commit: 74fae42c6beca0a0a2dd223e01783dca472f90fa

Closing as it will be solved by #1217


Make VirtualFlow's gravity styleable via CSS

I propose that the Gravity of VirtualFlow should be made styleable via CSS (and thus mutable).  If you're happy with the justification to add and the implementation strategy, I'm happy to write the code and submit a pull request.
Justification:
Use case 1: I have a RichTextFX control where I want the lines to be at the bottom (it's a history view of a terminal-like display, where the entry is underneath, and history should appear at the bottom and be bumped upwards as more is added).  Because the Gravity of the VirtualFlow is a constructor parameter, I can't actually alter it unless I patch RichTextFX to allow it, and even then, it's a bit odd to have to pass a style attribute as an unchangeable constructor parameter.  The VirtualFlow isn't public and we don't want to make it so, but if we could set the gravity parameter by CSS then it would solve the whole issue.
Use case 2: I am thinking of using VirtualFlow for a code-completion like popup window.  It will appear below the line if there's room (with items at the top), or above the line otherwise (with items at the bottom).  If Gravity is unchangeable then I can't dynamically move it from below to above without creating a new VirtualFlow.
Implementation:
I've had a look at the code and I don't think it will be a difficult change.  VirtualFlow's constructor takes the gravity parameter, but only uses it to pass to Navigator's constructor.  Navigator stores it as a field but only uses it in the utility methods at the bottom of the class.  In turn these are only used by the method fillViewportFrom.  Assuming IntelliJ's call hierarchy is complete, this all leads back to Navigator.layoutChildren():

I think this means that we can make a styleable property (with accessor and mutator) for gravity in VirtualFlow, which is passed as a reference to Navigator, and add a change listener to the property that calls VirtualFlow.requestLayout (or just Navigator.requestLayout?).  Let me know if I've missed anything on the implementation side.

I believe this feature would also affect StyledTextAreaBehavior in RTFX, as pageUp-related things would need to be inverted.

I've had a play with my hacked-up Gravity.REAR version of RichTextFX and it seems to handle page up and page down events correctly, when the area is full or only partially full.  I think it may be that when the text doesn't fill the surrounding area, the code only moves the caret anyway (regardless of gravity), and when it does fill the area, it functions the same regardless of gravity.  I may have overlooked something, though.

Closed by #35.


Introduce AuthenticationType.MultiHeaderToken.

Most of the use cases we've seen of people requesting exemptions to use Custom auth are just cases where the API they're using forces them to use multiple headers. So let's just offer that as a first-class auth type, much safer to do it ourselves and easier for the maker.
PTAL @ekoleda-codaio @huayang-codaio @dweitzman-codaio @coda/packs

I thought I made this comment, but don't see it on GitHub: Does this PR also need to update the listing page's security tab to handle this new auth type?


[Merged by Bors] - Respect alignment for zero-sized types stored in the world

Objective
Fixes #6615.
BlobVec does not respect alignment for zero-sized types, which results in UB whenever a ZST with alignment other than 1 is used in the world.
Solution
Add the fn bevy_ptr::dangling_with_align.

Changelog

Added the function dangling_with_align to bevy_ptr, which creates a well-aligned dangling pointer to a type whose alignment is not known at compile time.

Just so I understand the context more: why would you want to mess with the alignment of ZSTs? Definitely agree that this is needed, but I'm trying to piece this together better.

Just so I understand the context more: why would you want to mess with the alignment of ZSTs? Definitely agree that this is needed, but I'm trying to piece this together better.

I'm not aware of any actual use cases for this kind of alignment fiddling. This PR is about correctness more than anything, I would be surprised if this issue caused any problems in practice.

Merging: either we make a 0.9.1 release and it's in there, or we don't and there's no harm done by merging early.
bors r+

So apparently this actually can matter in practice: https://doc.rust-lang.org/reference/type-layout.html
According to this, [T; 0] can have non-zero alignment on some platforms, so it's actually not impossible to cause this bug by accident. Granted, you'd need some very abstracted generic code to make that happen.


MSW plugin: ERR_INVALID_ARG_TYPE

Whenever I try to run knip I get a TypeError: TypeError [ERR_INVALID_ARG_TYPE]: The "path" argument must be of type string. Received an instance of Array

Complete stack trace
node:internal/validators:162
    throw new ERR_INVALID_ARG_TYPE(name, 'string', value);
          ^

TypeError [ERR_INVALID_ARG_TYPE]: The "path" argument must be of type string. Received an instance of Array
    at validateString (node:internal/validators:162:11)
    at join (node:path:1175:7)
    at file:///Users/project/node_modules/knip/dist/plugins/msw/index.js:11:48
    at Array.map (<anonymous>)
    at Object.resolveEntryPaths (file:///Users/project/node_modules/knip/dist/plugins/msw/index.js:11:18)
    at WorkspaceWorker.findDependenciesByPlugins (file:///Users/project/node_modules/knip/dist/WorkspaceWorker.js:198:67)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async main (file:///Users/project/node_modules/knip/dist/index.js:146:108)
    at async run (file:///Users/project/node_modules/knip/dist/cli.js:25:73)
    at async file:///Users/project/node_modules/knip/dist/cli.js:83:1 {
  code: 'ERR_INVALID_ARG_TYPE'
}

Can you please create a reproduction so I can see/debug it?

What's the value of msw.workerDirectory in package.json? Is it valid to be an array?

The problem is indeed in msw.workerDirectory being an array. Looking at this msw example repo it is a string, but npx msw init public/ (which they suggest to setup msw) results in:
  "msw": {
    "workerDirectory": [
      "public"
    ]
  }

So I guess it's a supported use case(?)

:rocket: This issue has been resolved in v5.2.1. See Release 5.2.1 for release notes.

Alright then!


IO system hook

Small test:
#include "stdio.h"
#include "stdlib.h"
#include "string.h"

int main() {
  char buffer[BUFSIZ];
  freopen("/dev/null", "a", stdout);
  setbuf(stdout, buffer);
  printf("This will be stored in the buffer");
  int ret = system("echo \"hello\"");
  freopen ("/dev/tty", "a", stdout);

  printf("buffer: %s\n", buffer);
  return 0;
}

output:
buffer: This will be stored in the buffer


Docker bind volumes mkdirall behavior

When running docker containers with bind volumes (e.g. when setting a string volume on a docker compose service), and the host path is set to X. When resolving X to an inode, if at some point a symlink Y is encountered that points to a non-existent file, then docker will attempt to create a directory in place of Y. But the current implementation errors, task is to align behaviors and investigate if there are other subtleties that do not match with docker.

Shouldn't aim to solve this, because why would we care about creating directories on the host?


Fix Python Tests Dependency Installation Error on Beta

You had bumped the version number of homeassistant in requirements_dev but not the version number of pytest-homeassistant-custom-component in requirements_test leading to a dependency conflict.

It might actually be best to not specify the version number of pytest-homeassistant-custom-component at all so that the matching version will be chosen automatically.


Can't filter LDAP users while searching in directory

Rancher Versions:
Server: 1.4.2
healthcheck: 0.2.3
ipsec: 0.0.4
network-services: 0.0.17
scheduler: 0.4.0
kubernetes (if applicable):
mesos: 0.28.1
Docker Version:
17.03.0-ce
OS and where are the hosts located? (cloud, bare metal, etc):
CentOS 7.3, Proxmox VE
Setup Details: (single node rancher vs. HA rancher, internal DB vs. external DB)
single node rancher, internal DB, no HA
Environment Type: (Cattle/Kubernetes/Swarm/Mesos)
Mesos
Steps to Reproduce:
Hi,
Please help me to understand how can I determine the filters while configuring OpenLDAP Authentification in Rancher
I don't want all users in my directory to access Rancher. I want to add user to group "rancher" and then filter them in Rancher in such a way e.g. "(&(objectClass=inetorgperson)(memberOf=cn=rancher,cn=groups,cn=accounts,dc=domain,dc=com))"
Results:
Unfortunatelly I don't see any filters in OpenLDAP configuration panel. Rancher finds users using base dn "cn=accounts,dc=domain,dc=com" and search field "uid" but there is no filtering and anyone can access rancher
Do you support filtering while searching for users in LDAP directory?

On login you cannot set filtering.  But once you login you can restrict access to a specific group.  In the Site Access section, select the Restrict Access radio option and enter your group or select it from the drop-down.  The admin person must be part of the group to see it in the drop-down.

@tfiduccia
According to rancher docs it works only for ACTIVE DIRECTORY/GITHUB/SHIBBOLETH. I'm using OpenLDAP. I don't see any Site Access section after Access Control is configured using OpenLDAP protocol.
"...
AZURE AD/OPENLDAP
For Azure AD and OpenLDAP, any user that is a member of your setup will be able to access the Rancher site.
..." Docs (c)

With the release of Rancher 2.0, development on v1.6 is only limited to critical bug fixes and security patches.


README is written by irregular markdown.

I know markdown don't have perfect convention. README display in GitHub, however it make trouble when convert HTML or something.
I think it came from nu-escape dot in ordered list items. Simply escape like 1\., 2\.... , and everyone happy. documentaion.md of Laravel official document link to your README. Not native English readers like me, need to translate mother language. Please use common markdown.

I'm not an expert on this, sorry. Feel free to submit a PR 😀


dom2canvas d3plus-export warning

Warning received:
WARN  in ./node_modules/d3plus/es/index.js
"export 'dom2canvas' was not found in 'd3plus-export'
dom2canvas has been removed from d3plus-export version 1.3.0
Possible solution: Remove dom2canvas (line 45) from file d3plus/index.js

@danielamguerra fixed with v2.1.1 of the d3plus package 🚀


[BUG] Cannot declare fused type for container whose elements are fused types

Declaring a fused type where one element is a libcpp container whose elements are fused raises an AttributeError. See below for an example. I would have expected the code to compile.
# distutils: language=c++

from libcpp.vector cimport vector

ctypedef fused fused_element_type:
    int
    long

ctypedef fused error:
    vector[fused_element_type]

Error compiling Cython file:
------------------------------------------------------------
...
ctypedef fused fused_element_type:
    int
    long

ctypedef fused error:
^
------------------------------------------------------------

/[redacted]/_cython_magic_8449521bb3abea1d93e6323ea9cb8d1a.pyx:11:0: Compiler crash in AnalyseDeclarationsTransform

File 'ModuleNode.py', line 124, in analyse_declarations: ModuleNode(_cython_magic_8449521bb3abea1d93e6323ea9cb8d1a.pyx:1:0,
    full_module_name = '_cython_magic_8449521bb3abea1d93e6323ea9cb8d1a')
File 'Nodes.py', line 431, in analyse_declarations: StatListNode(_cython_magic_8449521bb3abea1d93e6323ea9cb8d1a.pyx:3:0)
File 'Nodes.py', line 1250, in analyse_declarations: FusedTypeNode(_cython_magic_8449521bb3abea1d93e6323ea9cb8d1a.pyx:11:0,
    name = 'error',
    types = [...]/1)
File 'Nodes.py', line 1273, in analyse: FusedTypeNode(_cython_magic_8449521bb3abea1d93e6323ea9cb8d1a.pyx:11:0,
    name = 'error',
    types = [...]/1)

Compiler crash traceback from this point on:
  File "/[redacted]/site-packages/Cython/Compiler/Nodes.py", line 1273, in analyse
    return PyrexTypes.FusedType(types, name=self.name)
  File "/[redacted]/site-packages/Cython/Compiler/PyrexTypes.py", line 1636, in __init__
    for subtype in t.types:
AttributeError: 'CppClassType' object has no attribute 'types'

Environment

OS: macOS Monterey 12.3 (M1 chip)
Python version: 3.9.9 (pyenv via brew)
Cython version: 0.29.28

I'm not sure if this should work or not.
You should be able to write a function with a templated fused type:
cdef f(vector[fused_element_type] vec):
    ...

But I don't know whether a ctypedef would work, or whether it should be ctypedef fused.

Sorry, maybe some context would've been helpful. I'm trying to use fused types of vectors of fused types for some recursive template programming.
In the C++ world, tensors are often represented as nested vectors, e.g. a matrix is vector<vector<double>>. That's arguably not a great choice (a linearized representation is probably better), but, when working with third-party libraries, it's a representation we're stuck with. In the python world, numpy arrays are the de-facto standard, and I wanted to be able to convert between them. The code at the bottom of this comment does that for nested vectors of doubles using a recursive approach so we don't need different implementations for tensors of different rank.
The crux for the templated recursion to work is this fused ctypedef.
ctypedef fused vector_or_double:
    double  # vector
    vector[double]  # matrix
    vector[vector[double]]  # rank-3 tensor
    # Add additional layers for higher-dimensional tensors.

But we may also want to convert int or float tensors, and I tried to replace double with cython.numeric, giving rise to the original error message.
Full example code
# distutils: language=c++
# cython: boundscheck=False
# cython: cdivision=True

from libcpp.vector cimport vector
import numpy as np
cimport cython
from cython.operator cimport dereference, preincrement

ctypedef fused vector_or_double:
    double
    vector[double]
    vector[vector[double]]
    # Add additional layers for higher-dimensional tensors.

cdef nested_to_ndarray(vector[vector_or_double] nested):
    """
    Convert nested vectors to a numpy array.
    """
    cdef:
        long size
        vector[long] shape = vector[long]()
        double[:] target

    size = _infer_shape(nested, shape)
    target = np.empty(size)
    _recursive_fill(nested, &target[0], size)
    return np.reshape(target, shape)

cdef void _recursive_fill(vector[vector_or_double] source, double* target, long stride):
    """
    Fill nested source vectors into a preallocated target.

    Args:
        source: Nested source vectors.
        target: Pointer to preallocated memory.
        stride: Stride for preallocated memory.
    """
    stride = stride // source.size()
    if vector_or_double is double:
        iterator = source.begin()
        while iterator != source.end():
            target[0] = dereference(iterator)
            preincrement(iterator)
            target += 1
    else:
        iterator = source.begin()
        while iterator != source.end():
            _recursive_fill(dereference(iterator), target, stride)
            preincrement(iterator)
            target += stride

cdef long _infer_shape(vector[vector_or_double] nested, vector[long]& shape):
    """
    Infer the shape of nested vectors.

    Args:
        nested: Nested vectors.
        shape: Shape vector to populate.

    Returns:
        size: Total number of elements.
    """
    cdef long size = nested.size()
    # Push the current dimension.
    shape.push_back(size)
    # This is the lowest level or there are no elements. We are done here.
    if vector_or_double is double or size == 0:
        return size
    # Recurse down one level.
    return size * _infer_shape(nested.at(0), shape)

Ok - I follow what you're trying to do. I'm not sure if I'd expect it to work or not, but I can see why it'd be useful.

What might work at a guess: go to the first line of the traceback and replace t.types (which only works for a first-level fused type) with t.get_fused_types() (which should work with any type).


Display issues with hector drone in pin3

Since I use pinocchio3 from conda, the hector drone from example-robot-data is not displayed properly in meshcat. This is not blocking me, I just thought I raise the issue as maybe others will experience display issues as well. I displayed a couple other quadrupeds and manipulator models from erd and they all look fine.
Steps to reproduce:
conda create --name erd_debug python=3.11 pinocchio example-robot-data meshcat-python ipython

then in ipython
import example_robot_data as erd
from pinocchio.visualize import MeshcatVisualizer
robot = erd.load("hector")
vizer =  MeshcatVisualizer(
    robot.model, robot.collision_model, robot.visual_model
)
vizer.initViewer(loadModel=True, open=True)
vizer.display(robot.q0)

It works as expected with
conda create --name erd_debug python=3.11 pinocchio==2.7.1 example-robot-data meshcat-python ipython

I think @ManifoldFR have found a similar issue with the UR5 end effector.

What is the file extension for the meshes for this robot ?
If it's STL or DAE I have a fix over on our own fork of meshcat-python on the Simple-Robotics org

You are right, the UR5 end-effector has also display issues. However, they look different than what we see on your PR @ManifoldFR .
The drone has both DAE for visual and STL for collisions. I installed the latest master from our fork of meshcat-python but this does not solve the problem.

Oh, the branch to install is not master, but topic/update-meshcatjs I think.
The current master on the fork is just the master from upstream if I recall correctly.

That one should point to the right branch on our fork of meshcat (JS) which has all of the patches I wanted to upstream. Unfortunately nothing has advanced on that front.

mmh, I tried also the branch topic/update-meshcatjs with commit 819526d46f9c63efad7a0f3df9a15db0cc2ce0c9 but it looks still the same.

The issue is solved for me by #2294.


Add event for clicks

What problem does this solve or what need does it fill?
Recently we renamed Interaction::Click into Interaction::Pressed and it makes a lot of sense. But we still don't have mechanism for actual clicks. It's different from button press: it's a transition from pressed and released state when the cursor stays on the button.
What solution would you like?
I would suggest to introduce event struct Click(Entity) event that contains the clicked entity.
Additional context
It's very simple to implement, here is the implementation from my game. The event happens on transition from Interaction::Clicked to Interaction::Hovered, you don't even need to check the mouse position, Interaction::Hovered gives it's to you for free.
If we implement it, we need to change the example to check for click instead of button press.
@AnthonyKalaitzis you may be interested in implementing this.

My curiosity is peeked :eyes:

Just in case it wasn't clear I will give this one a go, cheers. :smiley:

Are you aware of https://github.com/aevyrie/bevy_mod_picking. I believe there are plans to upstream this and/or an event system based on this.

Are you aware of https://github.com/aevyrie/bevy_mod_picking.

It's a completely different crate. This issue is about clicking on UI elements.

I believe it works with UI elements (see https://github.com/aevyrie/bevy_mod_picking/blob/main/examples/bevy_ui.rs)

Didn't know that the plugin have this feature! Looks like here is the implementation for UI: https://github.com/aevyrie/bevy_mod_picking/blob/main/backends/bevy_picking_ui/src/lib.rs
But what I suggested is way simpler, it just re-uses the UI interaction component. And bevy_mod_picking could re-use the event I suggesting to add.


Errors while running web server

Hello,

jovo-client-web-starters/debugger, 'npm run serve' throws following error

ERROR in jovo-client-web-starters/debugger/node_modules/jovo-client-web/dist/components/response/RepromptTimer.d.ts(1
,10):
1:10 Module '"../.."' has no exported member 'Action'.
  > 1 | import { Action, CoreComponent, JovoWebClient, ResponseComponentConfig } from '../..';
      |          ^
    2 | export declare class RepromptTimer extends CoreComponent {
    3 |     protected readonly $client: JovoWebClient;
    4 |     readonly name = "RepromptTimer";
ERROR in jovo-client-web-starters/debugger/node_modules/jovo-client-web/dist/core/ActionHandler.d.ts(1,10):
1:10 Module '".."' has no exported member 'Action'.
  > 1 | import { Action } from '..';
      |          ^
    2 | import { CoreComponent } from './CoreComponent';
    3 | export declare class ActionHandler extends CoreComponent {
    4 |     readonly name = "ActionHandler";
ERROR in jovo-client-web-starters/debugger/node_modules/jovo-client-web/dist/index.d.ts(2,99):
2:99 Cannot find module 'jovo-platform-core/dist/src/Interfaces' or its corresponding type declarations.
    1 | export declare const VERSION = "0.1.0";
  > 2 | export { CorePlatformRequestJSON as CoreRequest, CorePlatformResponseJSON as CoreResponse, } from 'jovo-platform-core/dist/src/Interfaces';
      |                                                                                ^
    3 | export * from 'jovo-platform-core/dist/src/Interfaces';
    4 | export * from './events';
    5 | export * from './core/CoreComponent';
ERROR in jovo-client-web-starters/debugger/node_modules/jovo-client-web/dist/index.d.ts(3,15):
3:15 Cannot find module 'jovo-platform-core/dist/src/Interfaces' or its corresponding type declarations.
    1 | export declare const VERSION = "0.1.0";
    2 | export { CorePlatformRequestJSON as CoreRequest, CorePlatformResponseJSON as CoreResponse, } from 'jovo-platform-core/dist/src/Interfaces';
  > 3 | export * from 'jovo-platform-core/dist/src/Interfaces';
      |               ^
    4 | export * from './events';
    5 | export * from './core/CoreComponent';
    6 | export * from './core/Component';

Also web UI throws following error

Could you please look into both the issues?
Thanks,
Vinamra

Able to make it work with latest version of "jovo-client-web-vue": "^3.0.23",
versions are not updated in this project


Unable to use addRow with Character / char datatype -mssql-jdbc-6.1.0.jre8

Passing a value with datatype of Character or char to SQLServerDataTable.addRow results in
java.lang.ClassCastException: java.lang.Character cannot be cast to java.lang.String
at com.microsoft.sqlserver.jdbc.SQLServerDataTable.addRow(SQLServerDataTable.java:206)

The case CHAR does not allow for conversion prior to casting in case NVARCHAR
case CHAR:
    if(val instanceof UUID && (val != null))
    val = ((UUID)val).toString();
case VARCHAR:
case NCHAR:
case NVARCHAR:
    bValueNull = (null == val);
    nValueLen = bValueNull ? 0 : (2 * ((String)val).length());

@ethesx Hello. Thank you for the report. Is there any reason you want to use char type instead of String? If you could use SQLServerDataTable.addRow() with String value, it should work for you.

The DB TVP datatype as well as the domain objects are Char / char so conversion is simply an extra step.  We have just worked around it by passing a String so far.

Hello @ethesx  thank you for getting back to us. if we look at Datatype mappings on Microsoft Docs, we can see the SQL Server type Char is mapped to Java type String. However, if you think conversion is an extra step for you, I will talk with the team and see if we can add the conversion for you to the code.

I see that as well, however there are bound to be char datatypes used in other applications and it's not clear that SQLServerDataTable class isn't supposed to handle such a datatype at the outset. If the type won't be handled, a checked exception and error would be more helpful instead of a vague cast exception at run-time (and possibly save some of your time :) ).

Hi @ethesx, thanks for the suggestion. We'll think about updating the cast exception for the future. Closing this issue for now.


Dailymotion bid adapter: add publisher constraints in consent enforcement

Type of change

[x] Feature
[x] Updated bidder adapter

Description of change
The previous version of the consent enforcement was only looking at the consent given by the user.
This change now also looks at the publisher constraints to disable cookie sending when the user gave consent but the publisher disallows some consents or legitimate interests.

Thanks for your help on this !
I'll cancel this PR, rebase everything on the current upstream and open the PR on the main repo


python3Packages.uamqp: 1.6.5 -> 1.6.8

Description of changes
Changes:
https://github.com/Azure/azure-uamqp-python/releases/tag/v1.6.8
https://github.com/Azure/azure-uamqp-python/releases/tag/v1.6.7
https://github.com/Azure/azure-uamqp-python/releases/tag/v1.6.6

Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

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

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

65 packages built:

baserow
baserow.dist
dvc (python311Packages.dvc)
dvc-with-remotes
dvc-with-remotes.dist
dvc.dist (python311Packages.dvc.dist)
paperless-ngx
python311Packages.azure-servicebus
python311Packages.azure-servicebus.dist
python311Packages.celery
python311Packages.celery-redbeat
python311Packages.celery-redbeat.dist
python311Packages.celery-singleton
python311Packages.celery-singleton.dist
python311Packages.celery.dist
python311Packages.django-celery-beat
python311Packages.django-celery-beat.dist
python311Packages.django-celery-email
python311Packages.django-celery-email.dist
python311Packages.django-celery-results
python311Packages.django-celery-results.dist
python311Packages.django-google-analytics-app
python311Packages.django-google-analytics-app.dist
python311Packages.django-health-check
python311Packages.django-health-check.dist
python311Packages.django-raster
python311Packages.django-raster.dist
python311Packages.djmail
python311Packages.djmail.dist
python311Packages.dvc-gdrive
python311Packages.dvc-gdrive.dist
python311Packages.dvc-hdfs
python311Packages.dvc-hdfs.dist
python311Packages.dvc-task
python311Packages.dvc-task.dist
python311Packages.dvclive
python311Packages.dvclive.dist
python311Packages.flower
python311Packages.flower.dist
python311Packages.kombu
python311Packages.kombu.dist
python311Packages.uamqp
python311Packages.uamqp.dist
python312Packages.uamqp
python312Packages.uamqp.dist
sourcehut.buildsrht
sourcehut.buildsrht.dist
sourcehut.coresrht
sourcehut.coresrht.dist
sourcehut.gitsrht
sourcehut.gitsrht.dist
sourcehut.hgsrht
sourcehut.hgsrht.dist
sourcehut.hubsrht
sourcehut.hubsrht.dist
sourcehut.listssrht
sourcehut.listssrht.dist
sourcehut.mansrht
sourcehut.mansrht.dist
sourcehut.metasrht
sourcehut.metasrht.dist
sourcehut.pastesrht
sourcehut.pastesrht.dist
sourcehut.todosrht
sourcehut.todosrht.dist


Don't log Wi-Fi network password

I've noticed that Bluenet logs password when it receives it from the client. This shouldn't be logged to respect users privacy.

Wifi password will only be logged when debugging (with -vv option) in #181

Todo: make sure Bluenet is not started with -vv but only with -v option in production setup (i.e. change it in senic-hub/deployment/roles/hub-ubuntu/templates/bluenet_supervisor.conf ?).

Yep, that's where the change should be added.

This is already done.


Users/fealkhou/react resize handle/fix tab index

remote tabIndex: 0 from resizeHandle so consumer can set it themselves.

@microsoft-github-policy-service agree [company="Microsoft"]


Question: onChange on AvRadioGroup fires twice

Hi quick question,
I'm wondering if there's a way to stop the AvRadioGroup onChange from firing twice?
  onSelectInquiryType = (event) => {
    event.persist();
    event.preventDefault(); // tried this
    event.stopPropagation() // tried this
    const {value} = event.target;
    const {store} = this.props;

    store.onSelectedInquiryType(value);
  };

            <AvRadioGroup
              className="mt-3"
              name="InquiryType"
              required
              onChange={this.onSelectInquiryType}
            >
              <AvRadio label="Claims" value="Claims"/>
              <AvRadio label="Medical Records" value="Medical Records"/>
              <AvRadio label="General Inquiry" value="General Inquiry"/>
            </AvRadioGroup>

Seems like Availity-React RadioGroup onChange only fires once, but Wouldn't want to rewrite the whole form because of this.

You can check for undefined and if so ignore the value for the time being. At least that is how we have handled it as a work around.

@GoPro16 do you meant check the event for undefined?

One of the onChange callbacks with have event.target as null and the other will not.

So to understand this better, sorry for lingering on this.
 onSelectInquiryType = (event) => {
    event.persist();

    if (event.target) {
      const {store} = this.props;
      store.onSelectedInquiryType(event.target.value);
    }
  };

The above still calls the onChange a couple of times =/

Doesn't seem to be an issue any longer


Updates feature flag note at top of this topic

This feature is enabled for most accounts, but is behind a feature flag for some accounts. So the feature flag note at the top of this topic has been modified to say that it may be behind a feature flag for some accounts.

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app


Document guidance to remove metrics-server before installing kube-prometheus

What is missing?
Some (?) deployments of Kubernetes come pre-installed with a metrics-server implementation in order to provide metrics API to kubectl (e.g. kubectl top ...). It may be wise to uninstall this existing metrics-server installation before installing kube-prometheus. Documenting this as an installation step would be useful.
Why do we need it?
Documenting a recommendation to remove metrics-server both encourages a clean cluster state and an understanding that parts of kube-prometheus will interact with / replace parts of metrics-server, and that with kube-prometheus, metrics-server is no longer required.
Environment

kube-prometheus version:
release-0.7

Anything else we need to know?:
Raised following discussions in #kube-prometheus Slack.

@hamid-elaosta   , How to remove metrics-server  cleanly Before install  kube-prometheus  operator  ?
I just  delete the svc and deployment , when i install the operator  , It shows this error :
Error from server (AlreadyExists): error when creating "manifests/prometheus-adapter-apiService.yaml": apiservices.apiregistration.k8s.io "v1beta1.metrics.k8s.io" already exists
Error from server (AlreadyExists): error when creating "manifests/prometheus-adapter-clusterRoleAggregatedMetricsReader.yaml": clusterroles.rbac.authorization.k8s.io "system:aggregated-metrics-reader" already exists

Unfortunately the "how" isn't covered by this ticket. In my case it was installed by Helm Chart by my provider, so it was a simple helm -n kube-system uninstall metrics-server but for you it may differ. You may need to manually remove the CRDs and other resources, or if you have access to the manifests which installed it you could kubectl -n <namespace> delete -f <manifest files>, it may also not be called metrics-server so only with knowledge of your cluster can you determine exactly what and how to remove.
Given the errors you have there, you might be able to just remove the clusterrole (system:aggregated-metrics-reader) and the apiservice (v1beta1.metrics.k8s.io) and see if any more crop up, when you apply again.

You miss others resources. To uninstall correctly metric-server you should launch this delete (I made this to migrate from kubectl apply to helm) :
kubectl delete service/metrics-server -n  kube-system
kubectl delete deployment.apps/metrics-server  -n  kube-system
kubectl delete apiservices.apiregistration.k8s.io v1beta1.metrics.k8s.io
kubectl delete clusterroles.rbac.authorization.k8s.io system:aggregated-metrics-reader
kubectl delete clusterroles.rbac.authorization.k8s.io system:metrics-server
kubectl delete clusterrolebinding metrics-server:system:auth-delegator
kubectl delete clusterrolebinding system:metrics-server
kubectl delete rolebinding metrics-server-auth-reader -n kube-system
kubectl delete serviceaccount metrics-server -n kube-system

+1

+1 to this, had metrics-server and installed kube-prometheus-stack via helm which resulted in my control planes going down

This would be great to have documented. I didn't understand this commonality at first, and upon trying to clean up kube-prometheus, it deleted the api resources that are shared by metrics-server (due to their inclusion in the Prometheus Adapter component). This stopped me from getting any metrics until I re-applied those resources from metrics-server's repo.


E11000 duplicate key error collection

Hello,
I have a big problem and I don't know how to fix it,
I have 2 errors:
"errmsg": "E11000 duplicate key error collection: 4minitz.users index: emails.address_1 dup key: {<EMAIL_ADDRESS>}",

and
FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory
 1: node::Abort() [node]
 2: 0x121a2cc [node]
 3: v8::Utils::ReportOOMFailure(char const*, bool) [node]
 4: v8::internal::V8::FatalProcessOutOfMemory(char const*, bool) [node]
 5: v8::internal::Factory::NewTransitionArray(int) [node]
 6: v8::internal::TransitionArray::Insert(v8::internal::Handle<v8::internal::Map>, v8::internal::Handle<v8::internal::Name>, v8::internal::Handle<v8::internal::Map>, v8::internal::SimpleTransitionFlag) [node]
 7: v8::internal::Map::CopyReplaceDescriptors(v8::internal::Handle<v8::internal::Map>, v8::internal::Handle<v8::internal::DescriptorArray>, v8::internal::Handle<v8::internal::LayoutDescriptor>, v8::internal::TransitionFlag, v8::internal::MaybeHandle<v8::internal::Name>, char const*, v8::internal::SimpleTransitionFlag) [node]
 8: v8::internal::Map::CopyAddDescriptor(v8::internal::Handle<v8::internal::Map>, v8::internal::Descriptor*, v8::internal::TransitionFlag) [node]
 9: v8::internal::Map::CopyWithField(v8::internal::Handle<v8::internal::Map>, v8::internal::Handle<v8::internal::Name>, v8::internal::Handle<v8::internal::FieldType>, v8::internal::PropertyAttributes, v8::internal::PropertyConstness, v8::internal::Representation, v8::internal::TransitionFlag) [node]
10: v8::internal::Map::TransitionToDataProperty(v8::internal::Handle<v8::internal::Map>, v8::internal::Handle<v8::internal::Name>, v8::internal::Handle<v8::internal::Object>, v8::internal::PropertyAttributes, v8::internal::PropertyConstness, v8::internal::Object::StoreFromKeyed) [node]
11: v8::internal::LookupIterator::PrepareTransitionToDataProperty(v8::internal::Handle<v8::internal::JSObject>, v8::internal::Handle<v8::internal::Object>, v8::internal::PropertyAttributes, v8::internal::Object::StoreFromKeyed) [node]
12: v8::internal::Object::AddDataProperty(v8::internal::LookupIterator*, v8::internal::Handle<v8::internal::Object>, v8::internal::PropertyAttributes, v8::internal::Object::ShouldThrow, v8::internal::Object::StoreFromKeyed) [node]
13: v8::internal::Object::SetProperty(v8::internal::LookupIterator*, v8::internal::Handle<v8::internal::Object>, v8::internal::LanguageMode, v8::internal::Object::StoreFromKeyed) [node]
14: v8::internal::Runtime_SetProperty(int, v8::internal::Object**, v8::internal::Isolate*) [node]
15: 0x3ee837f8463d

I need help to solve these both errors, can someone help me?
I know it is old but I still use it in my company.
I use this 4Minitz version

@zenxen3 Could you please explain step by step how to reproduce the issue? In which situation does the error occur?

hello @felixble, 4Minitz crashes randomly, sometimes when I add user/s to the meeting, when I edit agenda, it can even crash when I log on. Sometimes it works whole day and nothing happens.
By the way, when I create a meeting and add user I see users who don't work in company, how can I rid them off from the list? Users are taken from AD.
Maybe this "errmsg": "E11000 duplicate ... could be eliminated by refreshing the user list which is somehow cached?
Is it possible to reload this list?

ok, but is it possible to reload user list to get rid off old users who don't exist in AD?


SpringDescription parameter for the AnimationController fling method

Description
I provided the fling method with a new parameter springDescription. It just adds more customization to the methon by allowing to override the existing internal constant variable and so permitting developers to manipulate how the resulting fling animation will look like.
Related Issues
#64400 - the original issue, though I then decided that tolerance shouldn't be public.
Tests
Added
Checklist
Before you create this PR, confirm that it meets all requirements listed below by checking the relevant checkboxes ([x]). This will ensure a smooth and quick review process.

[x] I read the [Contributor Guide] and followed the process outlined there for submitting PRs.
[x] I signed the [CLA].
[x] I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement].
[x] I read the [Tree Hygiene] wiki page, which explains my responsibilities.
[x] I updated/added relevant documentation (doc comments with ///).
[x] All existing and new tests are passing.
[x] The analyzer (flutter analyze --flutter-repo) does not report any problems on my PR.
[x] I am willing to follow-up on review comments in a timely manner.

Breaking Change

[x] No, no existing tests failed, so this is not a breaking change.

I'm still not sure why animeWith won't work if you want to use a custom simulation. As I understand it, the "direction" of the animation has little meaning for a custom simulation. Could you shed a little light on why having the direction set to be always forward is problematic?

@LongCatIsLooong refer to my comment here https://github.com/flutter/flutter/issues/60419#issuecomment-662664171.
See where I want to use this. When I have such animation, I want to have all the valid animation statues: forward, complete, reverse, dismissed. Using animateWith will give me only two of them, which is so bad, I mean it's so wrong when I have animation that actually goes back, but status says me that it's forward instead. This is severe bug to me.

@nt4f04uNd that makes sense. Thanks for the explanation! In that case the documentation needs to be updated, as the custom spring is not guaranteed to be critically damped. Also I think the interaction between underdamped/overdamped springs with lowerBound, upBound is worth documenting.

@nt4f04uNd Do you have plans to follow up on the feedback soon-ish?

@LongCatIsLooong @goderbauer sorry for delayed updates. I updated docs a bit, but I guess I'm not competent enough to document the relationships between various types of springs and lowerBound and upperBound.
I tested with different bounds and different types of springs, and criticallyDamped and overDamped springs behave as I would expect from them - which is overdamped is mostly like critically damped but slowed down, though the underDamped springs behave weirdly - they bounce way too fast and it looks more like flickering, rather than actual bouncing.
I'm not that much into all that stuff, so if you think it should be documented more detailed, I ask you to do that instead of me

@nt4f04uNd yeah it gets a bit hairy when the given spring has a damping ratio that's not 1. Does your use case involve using a non-critically damped spring? If not I think we can add an assert to ensure the custom SpringDescriptor supplied describes a critically damped spring and add in the doc that this method currently only supports critically damped springs.

@LongCatIsLooong over damped seems to be working pretty ok and I use it as I want to slow down a bit the default critically damped spring and make it a bit smoother (I use the one I included in tests).
Did you observe any problems with over damped springs, because I experience problems only with under damped as I said and if we want to add asserts, I would do that allowing to use both critically and over damped springs.

I think the problem with using an overdamped SpringDescription is that it doesn't naturally stop at lowerBound (or upperBound), this could be unintuitive in your use case too because the animation may stop prematurely (e.g., if you present a new sheet with that fling animation, the sheet presentation animation may stop half screen if you set the damping ratio to a large number).

@LongCatIsLooong that's not the case. If you set ratio to very large number, the animation will always end up in the upper/lower bound (depending on the direction), but what you actually see when you do this - is drastically slowed down movement, it's not stopped. You can set timeDilation to e.g. 0.001 to ensure that.
But I think maybe we should actually document in this method the behaviour of different spring types to not confuse anyone who will actually try to do that.

@LongCatIsLooong also, just to be sure, as with large ratio, the animation may start moving just because of applying dilation (I'm not aware how it internally works), so I added listener to the controller and it's reports about changes even without dilation, even though on the screen there's no animation at all

Oh you're right, it should eventually converge to 0:
https://github.com/flutter/flutter/blob/1510865fb45513124601a587229543c488103b14/packages/flutter/lib/src/physics/spring_simulation.dart#L232-L235

But I think maybe we should actually document in this method the behaviour of different spring types to not confuse anyone who will actually try to do that.

Sounds good :+1:

@LongCatIsLooong will we restrict underDamped though?

It looks like we clamp the value to [lowerBound, upperBound] so I assume with an underdamped spring it should still oscillate except when the sheet is supposed to overshoot, it stays at lowerBound or upperBound  instead?
https://github.com/flutter/flutter/blob/1510865fb45513124601a587229543c488103b14/packages/flutter/lib/src/animation/animation_controller.dart#L785-L798
I don't know if there's a use case for that, the movement doesn't feel natural (as the animation suddenly stops when it goes out of range, losing all its momentum, then regains the momentum after a short while). But I'm OK with just documenting the behavior and warning developers about the weirdness.  @goderbauer do you think we should disallow underdamped springs in this case?

(PR triage): @LongCatIsLooong @nt4f04uNd are there still plans for this PR?

@goderbauer I've been planning to add a few comment lines about how the springs work, but been waiting for your response

But I'm OK with just documenting the behavior and warning developers about the weirdness. @goderbauer do you think we should disallow underdamped springs in this case?

@goderbauer do you think we should disallow underdamped springs in this case?

I think we should disallow it if it doesn't make sense and from the discussion so far it sounds like it wouldn't really make sense? We can always revisit that if we have a use case that requires it.

Thanks! There seems to be a merge conflict, could you resolve it?

Turns out I can't

done

@nt4f04uNd could you do a git pull upstream/master and see if that fixes the CI failure?

@LongCatIsLooong do you mean git pull upstream master, yup?  The linux docs check on CI seems to be failing for some unrelated reason so let's see if syncing to head fixes that.


Refactor hacky fix for bedrock models

Claude models tend to reply to a previous tuple of (AiMsg, ToolMessage) with a AiMsg without a tool calls. This causes a problem, because when the model is coupled with tools, boto3 raises an error saying that
ValueError: Error raised by bedrock service: An error occurred (ValidationException)
when calling the InvokeModel operation: Your API request included an `assistant` message in the final position,
which would pre-fill the `assistant` response. When using tools, pre-filling the `assistant` response is not supported.

This is a fix that temporarily solves that issue.
https://github.com/RobotecAI/rai-private/blob/af241f9ae108e36385a7ef0f159773c70dc551e8/src/rai/scenario_engine/scenario_engine.py#L156-L161
Full trace:
Details

```
2024-07-02 18:53:09 mmajek-2204 botocore.credentials[71381] INFO Found credentials in environment variables.
2024-07-02 18:53:09 mmajek-2204 botocore.credentials[71381] INFO Found credentials in environment variables.
2024-07-02 18:53:14 mmajek-2204 rai.scenario_engine.tool_runner[71381] INFO Running tool: Ros2TopicTool with args: {'command': 'list'}
2024-07-02 18:53:14 mmajek-2204 rai.scenario_engine.tool_runner[71381] INFO Successfully ran tool: Ros2TopicTool. Output: CompletedProcess(args='ros2 topic list', returncode=0, stdout=b'/parameter_events\n/rosout\n', stderr=b'')
2024-07-02 18:53:17 mmajek-2204 rai.scenario_engine.tool_runner[71381] INFO Running tool: GetOccupancyGridTool with args: {'topic': '/map'}
2024-07-02 18:53:27 mmajek-2204 SingleMessageGrabber[71381] ERROR Failed to receive message of type Metaclass_OccupancyGrid from topic /map
^C2024-07-02 18:55:46 mmajek-2204 rai.scenario_engine.tool_runner[71381] WARNING Error in running tool GetOccupancyGridTool: failed to shutdown: rcl_shutdown already called on the given context, at ./src/rcl/init.c:333
2024-07-02 18:55:50 mmajek-2204 rai.scenario_engine.tool_runner[71381] INFO Running tool: Ros2TopicTool with args: {'command': 'list'}
2024-07-02 18:55:50 mmajek-2204 rai.scenario_engine.tool_runner[71381] INFO Successfully ran tool: Ros2TopicTool. Output: CompletedProcess(args='ros2 topic list', returncode=0, stdout=b'/parameter_events\n/rosout\n', stderr=b'')
Traceback (most recent call last):
  File "/home/mmajek/.cache/pypoetry/virtualenvs/rai-_GMBVdtT-py3.12/lib/python3.12/site-packages/langchain_aws/llms/bedrock.py", line 666, in _prepare_input_and_invoke
    response = self.client.invoke_model(**request_options)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/mmajek/.cache/pypoetry/virtualenvs/rai-_GMBVdtT-py3.12/lib/python3.12/site-packages/botocore/client.py", line 565, in _api_call
    return self._make_api_call(operation_name, kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/mmajek/.cache/pypoetry/virtualenvs/rai-_GMBVdtT-py3.12/lib/python3.12/site-packages/botocore/client.py", line 1021, in _make_api_call
    raise error_class(parsed_response, operation_name)
botocore.errorfactory.ValidationException: An error occurred (ValidationException) when calling the InvokeModel operation: Your API request included an `assistant` message in the final position, which would pre-fill the `assistant` response. When using tools, pre-filling the `assistant` response is not supported.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/mmajek/projects/internal/rai-private/examples/explore_and_describe_bedrock.py", line 116, in
main()
File "/home/mmajek/projects/internal/rai-private/examples/explore_and_describe_bedrock.py", line 111, in main
runner.run()
File "/home/mmajek/projects/internal/rai-private/src/rai/scenario_engine/scenario_engine.py", line 127, in run
self._run(self.scenario)
File "/home/mmajek/projects/internal/rai-private/src/rai/scenario_engine/scenario_engine.py", line 164, in _run
self.llm_with_tools.invoke(
File "/home/mmajek/.cache/pypoetry/virtualenvs/rai-_GMBVdtT-py3.12/lib/python3.12/site-packages/langchain_core/runnables/base.py", line 4588, in invoke
return self.bound.invoke(
^^^^^^^^^^^^^^^^^^
File "/home/mmajek/.cache/pypoetry/virtualenvs/rai-_GMBVdtT-py3.12/lib/python3.12/site-packages/langchain_core/language_models/chat_models.py", line 248, in invoke
self.generate_prompt(
File "/home/mmajek/.cache/pypoetry/virtualenvs/rai-_GMBVdtT-py3.12/lib/python3.12/site-packages/langchain_core/language_models/chat_models.py", line 677, in generate_prompt
return self.generate(prompt_messages, stop=stop, callbacks=callbacks, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/mmajek/.cache/pypoetry/virtualenvs/rai-_GMBVdtT-py3.12/lib/python3.12/site-packages/langchain_core/language_models/chat_models.py", line 534, in generate
raise e
File "/home/mmajek/.cache/pypoetry/virtualenvs/rai-_GMBVdtT-py3.12/lib/python3.12/site-packages/langchain_core/language_models/chat_models.py", line 524, in generate
self._generate_with_cache(
File "/home/mmajek/.cache/pypoetry/virtualenvs/rai-_GMBVdtT-py3.12/lib/python3.12/site-packages/langchain_core/language_models/chat_models.py", line 749, in _generate_with_cache
result = self._generate(
^^^^^^^^^^^^^^^
File "/home/mmajek/.cache/pypoetry/virtualenvs/rai-_GMBVdtT-py3.12/lib/python3.12/site-packages/langchain_aws/chat_models/bedrock.py", line 532, in _generate
completion, tool_calls, llm_output = self._prepare_input_and_invoke(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/mmajek/.cache/pypoetry/virtualenvs/rai-_GMBVdtT-py3.12/lib/python3.12/site-packages/langchain_aws/llms/bedrock.py", line 677, in _prepare_input_and_invoke
raise ValueError(f"Error raised by bedrock service: {e}")
ValueError: Error raised by bedrock service: An error occurred (ValidationException) when calling the InvokeModel operation: Your API request included an assistant message in the final position, which would pre-fill the assistant response. When using tools, pre-filling the assistant response is not supported.

</p>
</details>

scenario engine has been deprecated


Observing attribute (e.g. class) changes

Is there a particular reason why attribute mutations (e.g. class being changed by frameworks like Aurelia or AngularJS) aren't obeserved by the script?

Attribute mutations may happen quite frequently and it is also common to change the class attribute of the <html> element. This would eventually cause performance issues, because all container queries on the page would have to be checked if <html> or <body> gets changed.
If you’re using a JavaScript framework, it may be possible to hook into the modifications without an MutationObserver and then call the prolyfill API. If this is not possible or doesn’t make sense in your use case you can create a MutationObserver yourself to trigger the changes.


Getting a schema validation error for liveperson thirdpartybots integration when transferring to agent

Github issues for C# /JS / Java/ Python should be used for bugs and feature requests. Use Stack Overflow for general "how-to" questions.
Sample information

Sample type: /BotBuilder-Samples/experimental/handoff-library/csharp_dotnetcore/samples/LivePersonProxyBot
Sample language: [dotnetcore ]
Sample name: LivePersonProxyBot

Describe the bug
Trying the steps  https://developers.liveperson.com/third-party-bots-microsoft-direct-line-introduction.html
Start the conversation and when transferring to agent which succesfully happens but there is an error Unable to validate body because of invalid content and also  has schema validation error: value of element type should be equal to one of : "endOfConversation", "message" , have attached the image
https://developers.liveperson.com/third-party-bots-conversation-tester.html#microsoft-bot-framework-invalid-body
To Reproduce
Steps to reproduce the behavior:

Configure a directline bot - foloowed the steps here - https://developers.liveperson.com/third-party-bots-microsoft-direct-line-introduction.html
deploy the sample  /BotBuilder-Samples/experimental/handoff-library/csharp_dotnetcore/samples/LivePersonProxyBot to an appservice
test the bot from liveperson Conversational AI Third-Party Bots
in the chat type in agent
See error

Expected behavior
should not have recieved the error
Screenshots
If applicable, add screenshots to help explain your problem.

Additional context
Add any other context about the problem here.

@arturl, Could you please help with triaging this customer issue on Human Handoff scenario?

Hi @vikramhn,
First, apologies for the delayed response. What you're trying to accomplish here is integrate a Bot Framework bot into LivePerson using the "bot as an agent" approach, but the sample you're using follows the "bot as a proxy" approach. Mixing the two is causing the issue. Refer to this document to understand the difference.
You should be able to use any Bot Framework bot with LivePerson using DirectLine protocol. However, be aware of the differences between Bot Framework and LivePerson message protocols. While the compatibility is improving over time, for now LivePerson only supports a subset of the Bot Framework protocol -- this includes text messages, handoff events and some others. In your specific case, the bot sends an event activity to LivePerson, and LivePerson is telling you that it only understands 'endOfConversation' and 'message'.
Feel free to reach out to LivePerson support as well for the latest guidance on integrating Bot Framework bots.
Let me know if this helps.

Closing for now. @vikramhn, feel free to reopen if you still have questions.


[new-product] Centreon

Centreon is a software platform used to monitor IT infrastructure.

@endoflife-date/everyone, will it be the 300th product on endoflife.date ? :rocket:

:pray: Thanks a lot for the great work :clap:


Pages and Navigation

Set up pages for three main sections; upcoming, overdue and completed.
Tasks

[ ] Switching pages should not cause a reload of the page. Just show the different pages
[ ] Set up nav bar with components according to the figma design

Are the components pre-existing, or are we supposed to build them?

We're using the search and sort from the previous design, - idk whether the button is reusable but we'll see

We are to work together and make 1 pr right?

Yes
On Sat, 11 Sep 2021, 8:48 AM Mary Ayokanmi Ore @.***>
wrote:

We are to work together and make 1 pr right?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/zurichat/zc_plugin_reminder/issues/450#issuecomment-917369697,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AU4F3ULX5UCPWXPW6TFHTR3UBMJUTANCNFSM5DXDX6CQ
.

Yes

✅


Fix error when item window doesn't have id link

I found there are some cases when window doesn't have document-id-link and it will result error, that will block such windows from opening
current check
    const idLink = html.find('.document-id-link');

    if (idLink) {

is slightly incorrect, because jQuery find will always return jQuery object
so we need to check existence of DOM node instead

Thanks! I'll see if I can get another release out.

@Sinled v1.1.0 is out with this fix, and a new option to use a button to replace the Copy ID link.


Updating similar attribute across multiple state branches

Hello,
If I have a scenario where I am trying to implement - adding comment - functionality on several pages in the app that are connected to different state branches.
I created a component to display the comment form. Can some one please explain how we can manage the code in the reducers.
Should I write functions to save comment in each of the page reducers and pass in the function to the component or can I write a reducer for the component.
Thank you very much for the help.
Regards,
Prasad.

Please use StackOverflow or Discord chat (links in README) for usage questions.
I’ll close because we use the issue tracker for bug reports and feature requests.
Feel free to post a link to your question here!


Activate codeql analysis

Maybe need to check this as well: https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#analyzing-python-dependencies


Month and Year Selects hidden when using Popper and anchor ref

I have the date range picker as a child of a material-ui Popper component, which is anchored to the bottom of a button. When I open the date range picker, and try to change the moth or year, the select options are hidden.
           <Popper
                open={open}
                anchorEl={buttonBaseRef.current}
                style={{marginTop: theme.spacing(2)}}
            >
                <div>
                    <DateRangePicker
                        open={true}
                        toggle={focusHandler}
                        onChange={dateOutput}
                    />
                </div>
            </Popper>

Is this an issue with this date range picker, or, is this an issue with how I am using it?

I have exactly the same issue too, I've done some digging and I believe it's related to this: https://stackoverflow.com/questions/61534340/is-there-a-way-to-control-where-a-nested-material-ui-select-in-a-popper-gets-mou For me, the Selects are rendered to the right of the component. We would need to be able to set the anchorEl of the Select menu to 'this' so that the menu stays within the Popper (here: https://github.com/jungsoft/materialui-daterange-picker/blob/master/package/src/components/Header.tsx#L96). I personally need this as the Date picker is opened using an icon button, and needs to be rendered within a Popper to allow for interaction with other DOM elements - it's bad UX to have to click another button twice to interact with it - one to close the Date Picker, and one to perform the click event.


update ATEPC for ATE and ACD

Hello
can we update lCF-ATEPC to do Aspect term extraction and aspect category detection for SemEval dataset (instead of Aspect polarity classification) where replacing sentiment polarity(positive, negative, natural) with aspect categories (food, service, .....)
Thanks in advance

Hi,
Maybe we can do it later, as it is a labor-intensive task involving dataset preparation and model modification. And I am not working on ABSA only. Do you have some ideas about the existing open-source ACD implementations for reference? This will significantly reduce the difficulty. Collaboration would be a great attempt to provide the community with a better ABSA framework.