Arr::map($array, 'trim') doesn't work, is this a bug?

Laravel Version
10.4.1
PHP Version
8.2.11
Database Driver & Version
No response
Description
// Sample of how I got here
str($string)
    ->explode("\n")
    ->filter(someFilterFunction(...))
    ->map('trim') // This has no affect
    ->first()

Why is happens:
class Arr
...
public static function map(array $array, callable $callback)
{
    $keys = array_keys($array);

    try {
        $items = array_map($callback, $array, $keys);
    } catch (ArgumentCountError) {
        $items = array_map($callback, $array);
    }

    return array_combine($keys, $items);
}

in Arr::map() we first try to pass the keys to the callback and only if that fails do we fallback to one argument. The problem is trim takes a second argument $characters https://www.php.net/manual/en/function.trim.php which is the characters to trim off each end. So essentially Arr::map($array, 'trim') is trying to trim the key of each item
Is this considered a bug? does it make sense to assume functions require 1 argument and if that fails then pass the key (why would a function have an optional argument $key? function ($value, $key = null) {} feels wrong.
Or maybe we add a flag Arr::map(array $array, callable $callback, bool $withKeys = true) which we can then decide ourselves if we should use ignore the keys?
Proposed:
class Arr
...
public static function map(array $array, callable $callback, bool $withKeys = true)
{
    $keys = array_keys($array);

    try {
        if (!$withKeys) {
            throw new ArgumentCountError;
        }
        $items = array_map($callback, $array, $keys);
    } catch (ArgumentCountError) {
        $items = array_map($callback, $array);
    }

    return array_combine($keys, $items);
}

class Collection
...
public function map(callable $callback, bool $withKeys = true)
{
    return new static(Arr::map($this->items, $callback, $withKeys));
}

Which would then allow
str($string)
    ->explode("\n")
    ->filter(someFilterFunction(...))
    ->map('trim', withKeys: false)
    ->first()

Does this make sense for a pull request or am i doing something wrong here?
Steps To Reproduce
/** php artisan tinker */
$array = ['  hello, world! '];

Arr::map($array, 'trim'); // Nothing changed

Current output
[
    "  hello, world! ",
]

Expected output
[
    "hello, world!",
]

Hi there,
Thanks for reporting but it looks like this is a question which can be asked on a support channel. Please only use this issue tracker for reporting bugs with the library itself. If you have a question on how to use functionality provided by this repo you can try one of the following channels:

Laracasts Forums
Laravel.io Forums
StackOverflow
Discord
Larachat
IRC

However, this issue will not be locked and everyone is still free to discuss solutions to your problem!
Thanks.


Newtest

Added a new feature.
This feature going to able the user create a painel which we will have to associate a hashtag to which post created.
This is a small test for a bigger project in the future.

Done!


Fix OverwriteModelError on sevr start

OverwriteModelError occurring on sevr start
OverwriteModelError: Cannot overwrite `metadata` model once compiled.
    at NativeConnection.Connection.model (/Users/brandon/projects/sevr/sevr/node_modules/mongoose/lib/connection.js:727:13)
    at Object.exports.createModel (/Users/brandon/projects/sevr/sevr/lib/meta.js:8:17)
    at connect.then (/Users/brandon/projects/sevr/sevr/index.js:214:10)
    at process._tickCallback (internal/process/next_tick.js:103:7)

This occurred due to Sevr starting twice and so attempting to create a duplicate metadata model.  A second start was triggered by a call to sevr.start() in the sevr-tutorial index.js


[gardening] Update SE-0195 and SE-0196 for implementation status

/cc @airspeedswift

Can you update the copyright for index.css and index.js as well? I think those are all the places it shows up in this repo and it'd be great to update them at once.

@krilnon Done and ready for merge.

Thanks!

Actually, this should be 4.2 according to https://swift.org/blog/4-2-release-process/  sorry for the confusion.

Ha, yup, surprise. I've raised #795.


[bug] Validation of assets with images and videos

When screen assets is set on video and when a table has a video and an image like below, the validation returns an error

It shouldn't be an error as one video is present

fixed 3.8


Visual Studio build failed "Error MSB4041: The default XML namespace of the project must be the MSBuild XML namespace"

Description
Self-hosted Windows 2019 agent based on image version 20210516.0 gives the following error when building a project:
Starting: Build solution ***.sln
Task         : Visual Studio build
Description  : Build with MSBuild and set the Visual Studio version property
Version      : 1.183.0
Author       : Microsoft Corporation
Help         : https://docs.microsoft.com/azure/devops/pipelines/tasks/build/visual-studio-build
"C:\a_tasks\VSBuild_71a9a2d3-a98a-4caa-96ab-affca411ecda\1.183.0\ps_modules\MSBuildHelpers\vswhere.exe" -version [16.0,17.0) -latest -format json
"C:\a_tasks\VSBuild_71a9a2d3-a98a-4caa-96ab-affca411ecda\1.183.0\ps_modules\MSBuildHelpers\vswhere.exe" -version [16.0,17.0) -products Microsoft.VisualStudio.Product.BuildTools -latest -format json
"C:\a_tasks\VSBuild_71a9a2d3-a98a-4caa-96ab-affca411ecda\1.183.0\ps_modules\MSBuildHelpers\vswhere.exe" -version [15.0,16.0) -latest -format json
"C:\a_tasks\VSBuild_71a9a2d3-a98a-4caa-96ab-affca411ecda\1.183.0\ps_modules\MSBuildHelpers\vswhere.exe" -version [15.0,16.0) -products Microsoft.VisualStudio.Product.BuildTools -latest -format json
##[warning]Visual Studio was not found. Try installing a supported version of Visual Studio. See the task definition for a list of supported versions.
##[warning]Unable to find MSBuild version '14.0' for architecture 'x86'. Falling back to version '4.0'.
"C:\Windows\Microsoft.NET\Framework\v4.0.30319\msbuild.exe" "C:\a\1\s\BearerTokenRetrieve.sln" /nologo /nr:false /dl:CentralLogger,"C:\a_tasks\VSBuild_71a9a2d3-a98a-4caa-96ab-affca411ecda\1.183.0\ps_modules\MSBuildHelpers\Microsoft.TeamFoundation.DistributedTask.MSBuild.Logger.dll";"RootDetailId=3ae0aa00-b7cf-48a7-a6c1-274e07ae7fbd|SolutionDir=C:\a\1\s"*ForwardingLogger,"C:\a_tasks\VSBuild_71a9a2d3-a98a-4caa-96ab-affca411ecda\1.183.0\ps_modules\MSBuildHelpers\Microsoft.TeamFoundation.DistributedTask.MSBuild.Logger.dll"  /p:platform="any cpu" /p:configuration="release" /p:_MSDeployUserAgent="VSTS_98303c26-7eb0-4b02-96b4-1e5861ecad4c_build_9344_0"
Building the projects in this solution one at a time. To enable parallel build, please add the "/m" switch.
Build started 5/20/2021 4:15:09 PM.
Project "C:\a\1\s\BearerTokenRetrieve.sln" on node 1 (default targets).
ValidateSolutionConfiguration:
Building solution configuration "release|any cpu".
##[error]BearerTokenRetrieve\BearerTokenRetrieve.csproj(1,1): Error MSB4041: The default XML namespace of the project must be the MSBuild XML namespace. If the project is authored in the MSBuild 2003 format, please add xmlns="http://schemas.microsoft.com/developer/msbuild/2003" to the  element. If the project has been authored in the old 1.0 or 1.2 format, please convert it to MSBuild 2003 format.
Project "C:\a\1\s\BearerTokenRetrieve.sln" (1) is building "C:\a\1\s\BearerTokenRetrieve\BearerTokenRetrieve.csproj" (2) on node 1 (default targets).
C:\a\1\s\BearerTokenRetrieve\BearerTokenRetrieve.csproj(1,1): error MSB4041: The default XML namespace of the project must be the MSBuild XML namespace. If the project is authored in the MSBuild 2003 format, please add xmlns="http://schemas.microsoft.com/developer/msbuild/2003" to the  element. If the project has been authored in the old 1.0 or 1.2 format, please convert it to MSBuild 2003 format.
Done Building Project "C:\a\1\s\BearerTokenRetrieve\BearerTokenRetrieve.csproj" (default targets) -- FAILED.
Done Building Project "C:\a\1\s\BearerTokenRetrieve.sln" (default targets) -- FAILED.
Build FAILED.
"C:\a\1\s\BearerTokenRetrieve.sln" (default target) (1) ->
"C:\a\1\s\BearerTokenRetrieve\BearerTokenRetrieve.csproj" (default target) (2) ->
C:\a\1\s\BearerTokenRetrieve\BearerTokenRetrieve.csproj(1,1): error MSB4041: The default XML namespace of the project must be the MSBuild XML namespace. If the project is authored in the MSBuild 2003 format, please add xmlns="http://schemas.microsoft.com/developer/msbuild/2003" to the  element. If the project has been authored in the old 1.0 or 1.2 format, please convert it to MSBuild 2003 format.
0 Warning(s)
1 Error(s)

Time Elapsed 00:00:01.40
##[error]Process 'msbuild.exe' exited with code '1'.
Finishing: Build solution ***.sln
Area for Triage:
.NET Framework
Question, Bug, or Feature?:
Bug
Virtual environments affected

[ ] Ubuntu 16.04
[ ] Ubuntu 18.04
[ ] Ubuntu 20.04
[ ] macOS 10.15
[ ] macOS 11
[ ] Windows Server 2016 R2
[x] Windows Server 2019

Image version
20210516.0
Expected behavior
Visual Studio build of a netstandard2.0 project should succeed.
Actual behavior
Visual Studio build of a netstandard2.0 project failed with warning message "Visual Studio was not found" and error message MSB4041.
Repro steps
Build a Visual Studio project with targetframework netstandard2.0

@shawnz88 , does this project build successfully on your local box with Visual Studio 2019?
Have you tried to reproduce the issue on Hosted runners?
Based on Unable to find MSBuild version '14.0' for architecture 'x86'. Falling back to version '4.0'., looks like that Visual Studio build task can't find installed Visual Studio properly. I suggest the following approach to debug it:

Login to self-hosted VM manually and try building project in Visual Studio directly
If it works - most likely, the issue is related to VSBuild task and should be reported to https://github.com/microsoft/azure-pipelines-tasks
If it doesn't work - suggest rebuild self-hosted agent to make sure that Visual Studio is installed properly

The project builds successfully with Visual Studio 2019 locally or on MS hosted Windows agents. Will try to rebuild the self-hosted agent.

From the VHD build log, Visual Studio was installed properly. Once the VHD was built and converted to managed image and then attached to VM scale set, the post-generation scripts never got a chance to run. Is that the reason why Visual Studio can't be found?

Run $Env:Path from self-hosted Windows2019 agent on VMSS returns this:
C:\agent\externals\git\cmd;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0;C:\Windows\System32\OpenSSH;C:\Users\AzDevOps\AppData\Local\Microsoft\WindowsApps
Run $Env:Path from Microsoft hosted Windows2019 agent returns this:
C:\agents\2.186.1\externals\git\cmd;C:\Users\VssAdministrator.dotnet\tools;C:\Program Files\MongoDB\Server\4.4\bin;C:\aliyun-cli;C:\vcpkg;C:\cf-cli;C:\Program Files (x86)\NSIS;C:\tools\zstd;C:\Program Files\Mercurial;C:\hostedtoolcache\windows\stack\2.7.1\x64;C:\tools\ghc-9.0.1\bin;C:\Program Files\dotnet;C:\mysql-5.7.21-winx64\bin;C:\Program Files\R\R-4.0.5\bin\x64;C:\SeleniumWebDrivers\GeckoDriver;C:\Program Files (x86)\sbt\bin;C:\Rust.cargo\bin;C:\Program Files (x86)\GitHub CLI;C:\Program Files\Git\bin;C:\Program Files (x86)\pipx_bin;C:\hostedtoolcache\windows\go\1.15.12\x64\bin;C:\hostedtoolcache\windows\Python\3.7.9\x64\Scripts;C:\hostedtoolcache\windows\Python\3.7.9\x64;C:\hostedtoolcache\windows\Ruby\2.5.9\x64\bin;C:\hostedtoolcache\windows\Java_Adopt_jdk\8.0.292-10\x64\bin;C:\npm\prefix;C:\Program Files\Microsoft SDKs\Azure\Azure Dev Spaces CLI;C:\Program Files\Microsoft SDKs\Azure\Azure Dev Spaces CLI;C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\wbin;C:\ProgramData\kind;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0;C:\Windows\System32\OpenSSH;C:\ProgramData\Chocolatey\bin;C:\Program Files\Microsoft\Web Platform Installer;C:\Program Files\Docker;C:\Program Files\PowerShell\7;C:\Program Files\dotnet;C:\Program Files\Microsoft SQL Server\130\Tools\Binn;C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn;C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit;C:\Program Files (x86)\Microsoft SQL Server\110\DTS\Binn;C:\Program Files (x86)\Microsoft SQL Server\120\DTS\Binn;C:\Program Files (x86)\Microsoft SQL Server\130\DTS\Binn;C:\Program Files (x86)\Microsoft SQL Server\140\DTS\Binn;C:\Program Files (x86)\Microsoft SQL Server\150\DTS\Binn;C:\Program Files\nodejs;C:\ProgramData\chocolatey\lib\pulumi\tools\Pulumi\bin;C:\ProgramData\chocolatey\lib\maven\apache-maven-3.8.1\bin;C:\Program Files\Microsoft Service Fabric\bin\Fabric\Fabric.Code;C:\Program Files\Microsoft SDKs\Service Fabric\Tools\ServiceFabricLocalClusterManager;C:\Program Files\OpenSSL\bin;C:\Strawberry\c\bin;C:\Strawberry\perl\site\bin;C:\Strawberry\perl\bin;C:\Program Files\Git\cmd;C:\Program Files\Git\mingw64\bin;C:\Program Files\Git\usr\bin;c:\tools\php;C:\Program Files (x86)\sbt\bin;C:\Program Files\TortoiseSVN\bin;C:\SeleniumWebDrivers\ChromeDriver;C:\SeleniumWebDrivers\EdgeDriver;C:\Program Files\CMake\bin;C:\Program Files\Amazon\AWSCLIV2;C:\Program Files\Amazon\SessionManagerPlugin\bin;C:\Program Files\Amazon\AWSSAMCLI\bin;C:\Program Files (x86)\Google\Cloud SDK\google-cloud-sdk\bin;C:\Program Files (x86)\Microsoft BizTalk Server;C:\Users\VssAdministrator\AppData\Local\Microsoft\WindowsApps

It turned out that the wrong VHD was being used.


CFP: Add network policy names in hubble

Cilium Feature Proposal
Is your feature request related to a problem?
No, but it would simplify troubleshooting network connections within Kubernetes.
Describe the feature you'd like
When I started using Cilium, I have noticed that the name of the CiliumNetworkPolicy as well as the name of the CiliumClusterwideNetworkPolicy will not be shown in the cilium hubble ui as well as in hubble observe. For me, the observability would be increased when I could comprehend why the traffic was accepted or denied.
(Optional) Describe your proposed solution
Add the network policy name to the hubble ui and hubble observe as value.

@Tim-herbie Thanks for the suggestion! Might be more effective to create an issue in https://github.com/cilium/hubble/issues instead? I'll close this one for now.

https://github.com/cilium/hubble/issues/1100


allow AWS_SESSION_TOKEN to create session token

for me, it's not easy to explaining the detail why I wanted merge the update into the main repo
however, I think we can use AWS_SESSION_TOKEN variable with simple touch up
please, refer following issue ticket
thank you
Reference: https://github.com/fastlane-community/fastlane-plugin-s3/issues/54

@joohae-kim I've tested your PR and it seems like working fine.
@joshdholtz is there any chance for merging this one soon?

@joshdholtz bump

@joshdholtz this feature could be really helpful for AWS Federated Logins 👍

+1, we just ran into this as well. We use SAML-federated logins to AWS, so all of our development credentials require AWS_SESSION_TOKEN


parameterization of modules

#78 @wlan0
74781e9
see examples/imports/app0.yaml for an example.
Still TODO:
Tests
Multiple resources per module
Error message UX (all the information is presented, but the formatting needs careful attention)

LGTM


Has accessing parameters with getParameters() changed?

Hello,
What happened to Pipeline.getParameters()?
Is this now something like:
from CGATCore import Pipeline as P
P.Parameters.get_parameters()
?
Apologies if you are still working on this...
Antonio

Hi Antonio,
Yes, please try:
from CGATCore import Pipeline as P

and then:
P.get_params()["genome_dir"]

Best regards,
Sebastian

Thanks!


Initial Commit

Codecov Report

:exclamation: No coverage uploaded for pull request base (trunk@a105bbf). Click here to learn what that means.
The diff coverage is n/a.

@@           Coverage Diff            @@
##             trunk       #1   +/-   ##
========================================
  Coverage         ?   76.92%
========================================
  Files            ?        3
  Lines            ?       26
  Branches         ?        0
========================================
  Hits             ?       20
  Misses           ?        6
  Partials         ?        0

Flag
Coverage Δ

unittests
76.92% <0.00%> (?)

Flags with carried forward coverage won't be shown. Click here to find out 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 a105bbf...72e6723. Read the comment docs.


Freeze play hls-video in samsung Tizen OS

React-player version: 2.9.0
Browser name / version: AppleWebKit / 537.36 (KHTML, like Gecko) 69.0.3497.106/5.5 TV Safari / 537.36
Tizen version: 5.5
TV Samsung: UE43TU7100UXUA
There was a problem with the react-player when playing chls files, the player loads about 1 minute (6-7 chunks), plays them, and then asks for the next one 2-3 times and stops playing anything (seen by the nginx logs). Everything works fine on the simulator in Tizen Studio.
If you need any details, tell me, I will provide

@Dead-Master how you're using react player in tizen os as I getting some error and unable to run on simulator


Create help screen

Give an explanation of the clues with some examples of tricky edge cases (like yellow matching in the other word).

Friends and I are loving the game so far! Definitely think this would be helpful based on feedback. Some additional callouts I think could be useful:

Color indicators for guesses apply to the entire board, not just the row/column in which the letter was used (think this is what you mean by "yellow matching in the other word" but just wanted to be sure)
No limit on number of guesses allowed
Game is similar to traditional crosswords in that the words relate to one another (unsure if you want this to be explicitly called out, or left up for interpretation to make it a little more difficult at first)


Remove pod volume validation

Fixes: https://github.com/hyperhq/hyperd/issues/487
Since we do not set volumes in pod anymore (correct me if I'm wrong), why don't remove the validate process?
Signed-off-by: Harry Zhang<EMAIL_ADDRESS>

I think volume validation is still required because

Pod spec didn't changed, multiple containers may reference same volume.
A new container could reference an existing volume of the Pod, e.g. the same volume already being mounted on an existing container.
If the referenced volume doesn't exist, we should add it to the volume list instead of dropping it.

cc @gnawux WDYT

cc @gnawux :/

retest this please, @hykins

retest this please, @hykins


We have $PSEdition, so shall "$IsWindows ,  $IsLinux ,  $IsOSX , and  $IsCore" be kept in PowerShell Core permanently?

The variables  $IsWindows ,  $IsLinux ,  $IsOSX , and  $IsCore  are now an integral part of PowerShell Core. $PSEdition serves the same purpose in PS Core, so shall the "$is" variables be kept permanently in PowerShell Core?
We should nail down this as early as possible, because existing tests are using the "$is" variables a lot, and new tests would follow the same pattern. It will be more work to clean them up if we decide to remove "$is" variables later.
PS C:> $PSEdition
Core
PS C:>

I remember having this discussed, but couldn't find any conclusion posted by the @PowerShell/powershell-committee

@PowerShell/powershell-committee the discussion occurred and decision is here: https://github.com/powershell/powershell/issues/1635#issuecomment-275279483

I still need to write more RFCs....fun....

Since it doesn't appear that the RFC is going to make it for 6.0.0, I'd like to revisit one aspect of this which is renaming $IsOSX to $IsMacOS for consistency (which may also mean renaming our Mac release filename).

Yeah, we should probably move to macOS. We can leave the old one there as an alias too, right? Just make them resolve to the same thing? As for casing, I'm pretty hardcore about 'macOS', but capital M seems the right thing to do here.

Created a separate issue for $IsOSX->$IsmacOS
https://github.com/PowerShell/PowerShell/issues/4700

we don't have a backward compatibility problem yet as this variable doesn't exist in 5x and we haven't released yet. I would rather not carry around state variables where we don't need to and while removing $IsOSX now may be a large PR because of the test changes, better now than after we release.

No longer an issue.  What exists will exist forever at this point for these automatic variables.


Revert "Merge pull request #1438 from Magisus/quote-keys/HC-88"

This reverts commit cfeac3d3218abd1e30f230b76d5474e054a8bd24, reversing
changes made to cb2b01a18fc1f0978c5a7541fd99c6fed191e440.

Thanks @branan. This somehow appears to have completely broken caching.

We fixed the issue with this, so the revert is not needed


Add text-shadows to theme

x=0, y=1, blur=2 color=black seems to be recurring.  Let's add it to theme and add support for it to be used in the Text and Heading components.

Confirmed with @wesleymartin85 on the the text shadow style as text-shadow: 0 1px 2px 0 rgba(0,0,0,0.5); for normal font sizes to start with.
Potentially, @wesleymartin85 would define the large font sizes for text and the related text shadow style for in further comment.

@BeniCheni @dansternfeld1 here is the design documentation for text shadows https://priceline.invisionapp.com/share/ZGRG7D6TFVP#/357099836_Headings_-_Text_Shadow and a screen shot since we are open source ;)

 Add text-shadows to theme


252 IB target/action

Fixes #252.

[ ] test to confirm that this works

@KingOfBrian this does not fix the problem as reported in #252, as far as I can tell.

@KingOfBrian (at least, not in the sample app. Maybe that's an invalid test?)

@KingOfBrian real-time followup: I made a new project and added BonMot pinned to cb46ad1425c3f6494801aecc1781b1664abe7814, and I couldn't connect an action to a UIButton in a storyboard, so I've confirmed that this fix is invalid.

Still no update on this?

@benyboariu sorry, I've been out of the office. I'm going to do some more digging and see what I can get working.

Superseded by #259.


Updated clustering documentation

@bparees PTAL

@bparees thanks! updated.

2 final nits and lgtm.

@bparees fixed.


git-annex does't work if git is not in the path

Issue description
If you have installed git-annex but didn't install git, then git-annex doesn't work correctly:
$ git-annex info
git-annex: git: createProcess: runInteractiveProcess: exec: does not exist (No such file or directory)

Even though there is little reason to use git-annex without git, the git-annex assistant may be such a use case.
I guess we need to patch the git-annex source to call ${git}/bin/git instead of git, e.g. in Git/Command/Batch.hs.
I discovered this while working on #30411.
There, the problem seems to disappear when I add gitMinimal to propagatedBuildInputs, which I don't understand since this can't magically patch git-annex.
Technical details

system: "x86_64-linux"
host os: Linux 4.9.61, NixOS, 18.03pre120540.b8f7027360 (Impala)
multi-user?: yes
sandbox: yes
version: nix-env (Nix) 1.11.15
channels(root): "nixos-18.03pre120540.b8f7027360"
channels(rschuetz): ""
nixpkgs: /nix/var/nix/profiles/per-user/root/channels/nixos/nixpkgs

If someone could at least tell me whether this is expected behaviour or indeed a bug, I could try to work on fixing it.
@mdorman @peti @nc6

This is expected behavior.

This is expected behavior.

Do we want it to lookup git from PATH? If so, why? Why not patch it to point directly to git? The reason I am asking is because of #32167. If a Python package depends on git-annex, but git-annex does a PATH lookup to find git, then there is no way of packaging a Python module that includes a hard reference to git.

Do we want it to lookup git from PATH? If so, why?

We have different variants of git and there's no one obvious choice that should be hard-coded. So far, the absence of a hard-coded path hasn't been an issue. People who install git-annex usually install git, too.

If a Python package depends on git-annex, but git-annex does a PATH lookup to find git, then there is no way of packaging a Python module that includes a hard reference to git.

You could depend on a version of git-annex has a wrapper script to configure $PATH in such a case. You could also patch the python module to expose the hard-coded git version in $PATH.

You could depend on a version of git-annex that has a wrapper script to configure $PATH in such a case.

@dotlambda this is indeed a workable solution for #32167

I don't see any advantage over putting gitMinimal into propagatedBuildInputs.


Merge branch 'hotfix/v0.1.4'

This commit change was merged to main from correctly names branch within commit ab19a82aa4a71b3abbaa165481c0b1d3d4612207.


Unable to use the same Instance of PublicClientApplication as Prop for MsalProvider and in Loader of a React Router Route

Core Library
MSAL.js (@azure/msal-browser)
Core Library Version
3.10.0
Wrapper Library
MSAL React (@azure/msal-react)
Wrapper Library Version
2.0.12
Public or Confidential Client?
Public
Description
The State of the MsalProvider gets updated when invoking acquireTokenSilent inside the loader function of a react router route.
This leeds to the error below because updating state of another component during rendering is not supported by react.
The reason for that seems to be the adtion of a callback to the PublicClientApplication  which leeds me to think that it is not possible to use the same instance as a prop for the MsalProvider and in a routes loader function.
The Goal is to redirect the user under certain conditions.  A graph request is necessary to determin if a user should be redirected.
Possible Solution:
It works without error when using two instances of the PublicClientApplication and provide one as a prop to the MsalProvider and use the other instance inside the loader function.
Is this considered a bad pattern? Are there recommendations to use acquireTokenSilent during rendering of other components.
I will gladly provide an example if necessary.
Error Message
Warning: Cannot update a component (MsalProvider) while rendering a different component (ReactRouterWrapper). To locate the bad setState() call inside ReactRouterWrapper, follow the stack trace as described in https://reactjs.org/link/setstate-in-render
at ReactRouterWrapper (https://localhost:4200/src/app/context/ReactRouterWrapper.tsx?t=1714488769684:34:23)
at div
at TextDirectionProvider (https://localhost:4200/node_modules/.vite/deps/chunk-OVEVGIFW.js?v=cab54ad8:2580:3)
at https://localhost:4200/node_modules/.vite/deps/chunk-ELTDTHBU.js?v=cab54ad8:662:17
at FluentProviderWrapper (https://localhost:4200/src/app/context/FluentProviderWrapper.tsx:22:17)
at QueryClientProvider (https://localhost:4200/node_modules/.vite/deps/@tanstack_react-query.js?v=5638002c:2642:3)
at ErrorContextProvider (https://localhost:4200/src/app/context/ErrorContext.tsx:20:40)
at AuthenticatedTemplate (https://localhost:4200/node_modules/.vite/deps/@azure_msal-react.js?v=7e9f978c:221:34)
at MsalAuthenticationTemplate (https://localhost:4200/node_modules/.vite/deps/@azure_msal-react.js?v=7e9f978c:465:39)
at MsalProvider (https://localhost:4200/node_modules/.vite/deps/@azure_msal-react.js?v=7e9f978c:131:25)
at AuthContextProvider (https://localhost:4200/src/app/context/AuthContext.tsx?t=1714488769684:35:39)
at ErrorBoundary (https://localhost:4200/node_modules/.vite/deps/react-error-boundary.js?v=1ce3fe28:18:5)
at App
MSAL Logs
No response
Network Trace (Preferrably Fiddler)

[ ] Sent
[ ] Pending

MSAL Configuration
{
  auth: {
    clientId: import.meta.env.VITE_CLIENTID,
    authority: 'https://login.microsoftonline.com/' + import.meta.env.VITE_TENANT
    redirectUri: import.meta.env.VITE_URL,
  },
  cache: {
    cacheLocation: 'sessionStorage',
    storeAuthStateInCookie: false
  },
  system: {
    pollIntervalMilliseconds: 30,
  },
};

Relevant Code Snippets
export const ReactRouterWrapper = () => {
  const loader = async () => {
    await pca.acquireTokenSilent();

    return null;
  };

  const router = createBrowserRouter(
    createRoutesFromElements(
      <Route path="/" loader={loader} shouldRevalidate={() => true} />
    )
  );

  return <RouterProvider router={router} />;
};

Reproduction Steps

Use React Router inside of the MsalProvider and render the Router only after the user is authenticated.
Use a  loader function of the root rout (or any other route) and use the instance of the PublicClientApplication that was provided to the MsalProvider.

Expected Behavior
Allow the usage of the nethods of a PublicClientApplication inside a loader of a react router route.
Identity Provider
Entra ID (formerly Azure AD) / MSA
Browsers Affected (Select all that apply)
Chrome
Regression
No response
Source
Internal (Microsoft)

It works without error when using two instances of the PublicClientApplication and provide one as a prop to the MsalProvider and use the other instance inside the loader function.
Is this considered a bad pattern? Are there recommendations to use acquireTokenSilent during rendering of other components.

Yes please use only one instance of PublicClientApplication. acquireTokenSilent should only be invoked after inProgress == None. Alternatively you might consider wrapping your RouterProvider in one of the components provided by msal-react such as the AuthenticatedTemplate or MsalAuthenticationTemplate

Thanks for the fast answer.
The recommended way to redirect is a loader .
We are rendering everything inside AuthenticatedTemplate already.
You don't have access to hooks in a loader and my understanding is that the loader is executed during rendering.
Is there a way to get the token from the instance of PublicClientApplication that was provided to the MsalProvider that does not update the state of the MsalProvider.
Otherwise my conclusion would be that the redirect pattern from the react router docs can't be used if one also needs to call acquireTokenSilent to determine if a redirect is necessary.

acquireTokenSilent does not update state, however, there are several state changes at the beginning of the render cycle of MsalProvider, which I assume are the ones causing the problems here. You might consider delaying the render of the component that defines the loader until the MsalProvider is done with its initial renders.

We are rendering everything inside AuthenticatedTemplate already.

If you're rendering everything inside AuthenticatedTemplate I'm not sure I understand why you additionally want to build conditional routing logic. AuthenticatedTemplate and your conditional routing serve similar purposes and I'd suggest doing one or the other, AuthenticatedTemplate being the preferred method. Can you help me understand why the AuthenticatedTemplate isn't enough on its own?

I went through the code with the chrome debugger and here is what i think is happening (I might be wrong):

The MsalContext registers a callback in the instance of the PublicClientApplication
We use the PublicClientApplication instance to call acquireTokenSilent from the controller
The controller calls acquireTokenSIlentAsync
An Event is emmitted and the result gets returned
The callback registered by the MsalProvider is called
The reducer function in the MsalProvider is called and it returns the same value as before..
This gives an error since react does not allow to que state changes from other components during rendering and at this point does not check if the state actually changed. I made an example reproduction to validate this.  Notice that there is an error in the console.

If you're rendering everything inside AuthenticatedTemplate I'm not sure I understand why you additionally want to build conditional routing logic. AuthenticatedTemplate and your conditional routing serve similar purposes and I'd suggest doing one or the other, AuthenticatedTemplate being the preferred method. Can you help me understand why the AuthenticatedTemplate isn't enough on its own?

Sure. We develope a teams tab application that is supposed to work as a standalone aswell. We use msal for the standalone version. If a user logs in they might have to go through an onboarding process / accept new information. We determine if that is needed by comparing the up to date graph api data with what we have in our database.

I ran into the same problem. Did you by any chance find a workaround or is it on Microsoft's radar to fix this issue?

I am not at work right now and can't check, but if I remember correctly, I used the same instance of PublicClientApplication in the loader and called (and awaited) publicClientApplication.initialize() in the loader again, and the error disappeared.
I did not understand why this worked. The Router is rendered inside the MsalProvider, which is why the instance of PublicClientApplication should already be initialized.

I'm also running into this... PCA is running dirty.


Add Support for line feed code CRLF

About
Made it possible to parse both CRLF and LF line feed codes in front matter.

Thanks!

Just released v0.2.0 :v:


Not wrap strings at escape backslash

Suggested resolution for issue #4471  - not wrapping string at escape backslash (\), including some additional test cases.
The approach used is that if wrapping position is a \, then if it may be escape code wrap at the previous position.  Whether the \ may be escape code is identified by counting the number of preceding backslashes and make sure to have even (or zero) number of backslashes before the wrapping position.  This is to handle escaped backslashes ("\\").
The approach of just handling the \ as non-punctuation character is probably less preferable, since strings like \u{1f} may be wrapped at the { which is not good from readability point of view.  However, if this is acceptable, then handling the \ as non-punctuation character is easier approach.

Thank you for the PR @davidBar-On . I think the overall idea of not breaking within a unicode escape is indeed the right approach to address the linked issue, but we'll need to iterate on the implementation a bit.

\u{1f} may be wrapped at the { which is not good from readability point of view

It is indeed true that we would not want to wrap there, but more so because that's still breaking the sequence just in at a different index than the one originally reported; it still results in breakage/changing of the original escape.
Unfortunately I've not been able to set aside the time yet to really dig into this, but I suspect the problem is that rustfmt isn't really checking to see whether the grapheme is actually an escape sequence in conjunction with the punctuation check, so the leading \ in the sequence grapheme causing an incorrect assumption that it's a true punctuation and can be wrapped at that index (\ vs \u{....})
There's some historical/legacy behavior here that we need to be careful to continue to honor which first attempt to break around whitespace before falling back to punctuation, however, we need to incorporate some kind of escape sequence check too.
I think a better implementation would be the inclusion of a new check for an escape sequence (e.g. for this case I think something like grapheme.as_bytse().starts_with(b"\u{") would suffice) instead of the additional logic/closure/input scanning originally proposed. It might be best to start small and just cover unicode escapes to resolve the reported issue, and we can always iterate on it later to account for other escapes, e.g. ascii/byte sequences

It is indeed true that we would not want to wrap there, but more so because that's still breaking the sequence just in at a different index than the one originally reported; it still results in breakage/changing of the original escape.

The main issue, as I understand it, is not that the sequence is being broken at a point which makes the string less readable, but that break immediately after escape \ makes the code incorrect.  In this case the added \ for continuing the string at the next line cause the line to end with \\, which is interpreted as escaped \ and therefore both the continuation and the escape \ are gone.

I think a better implementation would be the inclusion of a new check for an escape sequence (e.g. for this case I think something like grapheme.as_bytse().starts_with(b"\u{")would suffice)

The problem is that the issue may happen with other sequences that include \.  For example the last test case I added in strings-lit.rs:
const ASCII: &str = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\\\nyyyyyyyyyyyy";

is currently formatted as (when rustfmt-format_strings: true is used):
const ASCII: &str =
    "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\\\\
     nyyyyyyyyyyyy";

Which is also not correct.  Therefore it seems than strings should never be broken immediately after an uneven number of consecutive \.  This is the reason for the code I suggested.

... instead of the additional logic/closure/input scanning originally proposed.

Just for my information, what is the main issue with the additional code?  Is it compiling time? The complexity of rustfmt? Other?

It might be best to start small and just cover unicode escapes to resolve the reported issue, and we can always iterate on it later to account for other escapes, e.g. ascii/byte sequences

If adding the code I suggested is problematic, what about handling the \ as non-punctuation character?  This will solve the issue for any occurance of \ and the change seem to be simple: changing the two occurrences of is_punctuation() in break_string() to "(is_punctuation(grapheme) && grapheme != '\')", or event make the change in is_punctuation() itself.

As you're probably already aware, \u followed by a unicode char code enclosed within braces is a unicode escape . You'll notice how this is manifested in the grapheme clusters with a string lit outside rustfmt (just make sure you grab the unicode-segmentation crate)
let graphemes = "id\u{1f}".graphemes(false).collect::<Vec<&str>>();
println!("{:?}", graphemes);

prints:
["i", "d", "\u{1f}"]

Unfortunately, I believe this context is lost for rustfmt since we're obtaining the lit value via the span and the unescaping happens really early in the lexing/parsing flow. I imagine this is why the graphemes coming to rustfmt are apparently functionally the single chars you are seeing  (e.g. "\", "u", "{", etc. instead of the atomic unicode escape) which get processed individually.
This I would suggest is the real underlying problem.
We should be able to break the string before/after a complete escape (unicode or otherwise) but never within.

The main issue, as I understand it, is not that the sequence is being broken at a point which makes the string less readable, but that break immediately after escape \ makes the code incorrect. In this case the added \ for continuing the string at the next line cause the line to end with \, which is interpreted as escaped \ and therefore both the continuation and the escape \ are gone.

I'm not sure if this is a statement or a question, but feel like this has been answered/stated a few times now. We should not break within an escape.

The problem is that the issue may happen with other sequences that include . For example the last test case I added in strings-lit.rs:

I am aware, as indicated in my previous comment that you were responding to with this, about dealing with other types of escapes later on :wink:

Just for my information, what is the main issue with the additional code? Is it compiling time? The complexity of rustfmt? Other?

I previously spoke to the root cause above, and we should always strive to solve the underlying problem instead of adding work to deal with symptoms/side effects of the underlying problem. However, if my diagnosis is correct here then that comes from rustc so there's not much we can do about that (it's focused on compiler things naturally, not pretty formatting) and may have to work around it anyway, unfortunately.
That being said, this looks to me like a minor adjustment to the index used for breaking, and I don't feel like we should have to iterate through the string (potentially to the end) to get a count of escape chars for the odd/even and split index determination.
Instead of break_not_at_backslash, could we not just do something like this line at the top of the existing break_at?
let index = if input[index] == "\\" { index - 1 } else { index };

we know rustfmt isn't going to break at a 0 index, so if it's found a punctuation char that happens to be a \ at an index for splitting then I'd think we could just move the index back one

Instead of break_not_at_backslash, could we not just do something like this line at the top of the existing break_at?
let index = if input[index] == "\\" { index - 1 } else { index };

we know rustfmt isn't going to break at a 0 index, so if it's found a punctuation char that happens to be a \ at an index for splitting then I'd think we could just move the index back one

Actually there's edge cases where that could fail aren't there, such as an escaped backslash immediately followed by a character that would become an escape with the second backslash being right at the max width index (e.g. foo\\notfoo). Sigh this is fun :upside_down_face:

Actually there's edge cases where that could fail aren't there, such as an escaped backslash immediately followed by a character that would become an escape with the second backslash being right at the max width index (e.g. foo\notfoo). Sigh this is fun 🙃

Yes, I also think this is the case.  This is why the code I suggested is scanning back until the first non-\ to count the number of consecutive \.  When the count is even the break place is not changed.  When the count is odd the break is at index -1.

This is why the code I suggested is scanning back until the first non-\ to count the number of consecutive . When the count is even the break place is not changed. When the count is odd the break is at index -1

Gotcha, now I'm seeing why you ended up with the proposed solution, thanks for your patience! It's still a bummer that we don't get to see the "real" graphemes associated with the raw string in source, but in the absence of such an option I do think we'll probably be best served with what's been proposed here.
Couple minor nits that I'll leave inline for your review, but otherwise we should be good to go

Submitted to modifications according to the comments.

Awesome, thanks so much!


chroma_core_volumenode table is unnecessarily being populated continuously

Description
IML is continuously populating chroma_core_volumenode table with duplicate information.
There are only 36 OST across 6 OSS (i.e. 6 OST per OSS).
But over time, the table has grown to multiple GBs, making IML interactions extremely slow.
Unnecessary entries like device links in '/dev/disk/by-path' are also added to the table.
Repro
Nothing specific needs to be done to reproduce the issue.
It happens automatically.
Version
What version of IML?
IML <IP_ADDRESS>  (Part of IEEL ee-<IP_ADDRESS>)
What Operating System?
CentOS
What Operating System version?
7.3
iml-diagnostics
The chroma_core_volumenode table is a few GBs big, so here are a few entries.
What is a safe way to delete all entries other than the 36 - /dev/mapper/mpathX entries -
Should a simple SQL delete query on the table do?
Do we need to delete some related entries in some other tables too?
Are there any files that needs to be deleted too?

Hi @indivarnair,
The Github issue tracker is for issues relating to the open source versions of IML (4.x+).
Please go through support channels if you would like help with older versions.


test if new folders are changing the deploy of the github page

No folders elimination solved the problem.


extra contract order checks

Codecov Report
Base: 66.22% // Head: 99.74% // Increases project coverage by +33.51% :tada:

Coverage data is based on head (43446bb) compared to base (888958f).
Patch coverage: 50.00% of modified lines in pull request are covered.

Additional details and impacted files
@@             Coverage Diff             @@
##              1.2     #815       +/-   ##
===========================================
+ Coverage   66.22%   99.74%   +33.51%
===========================================
  Files         100       21       -79
  Lines        4184     1190     -2994
  Branches      544      211      -333
===========================================
- Hits         2771     1187     -1584
+ Misses       1393        1     -1392
+ Partials       20        2       -18

Flag
Coverage Δ

foundry
?

production
?

reference
99.74% <50.00%> (-0.17%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

reference/lib/ReferenceOrderValidator.sol
98.88% <50.00%> (-1.12%)
:arrow_down:

reference/ReferenceConsideration.sol
100.00% <0.00%> (ø)

reference/lib/ReferenceOrderCombiner.sol
100.00% <0.00%> (ø)

reference/lib/ReferenceOrderFulfiller.sol
100.00% <0.00%> (ø)

reference/lib/ReferenceZoneInteraction.sol
100.00% <0.00%> (ø)

reference/lib/ReferenceCriteriaResolution.sol
100.00% <0.00%> (ø)

reference/lib/ReferenceFulfillmentApplier.sol
100.00% <0.00%> (ø)

reference/lib/ReferenceGettersAndDerivers.sol
100.00% <0.00%> (ø)

reference/lib/ReferenceBasicOrderFulfiller.sol
100.00% <0.00%> (ø)

... and 80 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Roll engine ff6fa47659c0..4beaa696fc59 (1 commits)

https://github.com/flutter/engine/compare/ff6fa47659c0...4beaa696fc59
git log ff6fa47659c0..4beaa696fc59 --first-parent --oneline
2019-12-09<EMAIL_ADDRESS>Roll src/third_party/skia b60ec7f98b08..9910d829ad18 (3 commits) (flutter/engine#14257)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC<EMAIL_ADDRESS>on the revert to ensure that a human
is aware of the problem.
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

Auto-roller completed checks. About to merge.


tf.raw_ops.ResourceScatterDiv crash with abortion

Click to expand!
Issue Type
Bug
Have you reproduced the bug with TF nightly?
Yes
Source
source
Tensorflow Version
2.13.0-dev20230208
Custom Code
Yes
OS Platform and Distribution
No response
Mobile device
No response
Python version
No response
Bazel version
No response
GCC/Compiler version
No response
CUDA/cuDNN version
8.2.4
GPU model and memory
No response
Current Behaviour?
2.13.0-dev20230208

Standalone code to reproduce the issue
import tensorflow as tf
from tensorflow.python.eager import context

input1 = tf.raw_ops.VarHandleOp(dtype=tf.int32, shape=[2, 3], shared_name=context.anonymous_name())
input2 = tf.constant([],dtype=tf.float32)
output = tf.raw_ops.ResourceScatterDiv(resource=input1, indices=[0], updates=input2)

Relevant log output
2023-03-26 22:11:23.135344: F tensorflow/core/framework/tensor.cc:770] Check failed: dtype() == expected_dtype (3 vs. 1) float expected, got int32
Aborted (core dumped)

@trickiwoo,
There was a PR that was raised internally and the developer is working on that issue. Once it is resolved we will update the result here. https://b.corp.google.com/issues/275707925 Thank you!

@trickiwoo,
I tried to execute the mentioned code on tf-nightly and the code was executed with the error and also observed that the crash did not happen. And the same has been in the respective files. Kindly find the gist for the reference.
https://github.com/tensorflow/tensorflow/blob/master/tensorflow/core/kernels/quantize_and_dequantize_op.cc#L22
https://github.com/tensorflow/tensorflow/blob/master/tensorflow/core/kernels/resource_variable_ops.cc#L1120
// Check data type of update and resource to scatter.
const DataType update_dtype = c->input(2).dtype();
OP_REQUIRES(c, v->tensor()->dtype() == update_dtype,
errors::InvalidArgument(
"DType of scatter resource and updates does not match."));

Thank you!


Add ability to insert, update or merge the entity object graph using BulkConfig.IncludeGraph = true

Insert, update or merge the entire entity object graph. Does not support Sqlite due to how its set output identity = true implementation works.
private static WorkOrder WorkOrder1 = new WorkOrder
{
    Description = "Fix belt",
    Asset = new Asset
    {
        Description = "MANU-1",
        Location = "WAREHOUSE-1"
    },
    WorkOrderSpares =
        {
            new WorkOrderSpare
            {
                Description = "Bolt 5mm x5",
                Quantity = 5,
                Spare = new Spare
                {
                    PartNumber = "MZD 5mm",
                    Barcode = "12345"
                }
            },
            new WorkOrderSpare
            {
                Description = "Bolt 10mm x5",
                Quantity = 5,
                Spare = new Spare
                {
                    PartNumber = "MZD 10mm",
                    Barcode = "222655"
                }
            }
        }
};

private IEnumerable<WorkOrder> GetTestData(DbContext db)
{
    yield return WorkOrder1;
}

var testData = this.GetTestData(db).ToList();
await db.BulkInsertOrUpdateAsync(testData, new BulkConfig
{
    IncludeGraph = true
});

Thx for contrib.
Btw I am currently working on BulkSaveChanges ops that will have similar capability.
Automatically Insert/Update-ing to multiple tables.
Difference being that for BulkSaveChanges will work on all chaned entites(the don't have to connected) but they will have to be added to DbSet where they are tracked.
With Graph option that is here implemented there is no need for tracking them.


translate: tranlated to variables section

Due to cultural differences, it takes longer to translate into Chinese, and some part of the article needs to be modified to be more appropriate.

I can't review chinese, but I'll leave it to you then! Thank you very much for this!

About the cultural diferences feel free to modify whatever part you want!


Long commands aren't horizontally scrollable

Category

[x] fzf binary
[ ] fzf-tmux script
[ ] Key bindings
[x] Completion
[ ] Vim
[ ] Neovim
[ ] Etc.

OS

[ ] Linux
[x] Mac OS X
[ ] Windows
[ ] Etc.

Shell

[x] bash
[ ] zsh
[ ] fish

I can't seem to be able to scroll horizontally along any results that are longer that my terminal screen. The example image above shows many different curl requests that look the same, but in fact point to different URLs so it's impossible to know which one I want.

If you start matching on the right, (in your example, by typing "component"), you can view more (but there is no way to bind a key to scroll to the right for you)

@edi9999 Thanks for chiming in.

If you start matching on the right, (in your example, by typing "component"), you can view more

Yes that's what I would do. A large --hscroll-off value in $FZF_CTRL_R_OPTS can definitely help (the default is 10).
But anyway I don't have a great answer to this. Adding support for manual horizontal scrolling is the last thing I want to do as getting it right and implementing a clean, straightforward interface is not going to be trivial (manual scroll vs. auto scroll, short item vs. long item)
When the above trick doesn't work you, you might want to fall back to the original "reverse-search-history" that can display the command in multiple lines by binding it to a different key sequence (e.g. bind '"\C-x\C-r": reverse-search-history'), or simply use CTRL-P or CTRL-N to browse the recent entries on bash.
Closing as "wontfix" (at least for the moment). Thanks.

No problem. Thanks for the feedback everyone :-)

With the latest fzf, we have these options:
# always-visible preview window that shows full command
export FZF_CTRL_R_OPTS="--preview 'echo {}' --preview-window down:2"

# hidden by default, made visible on `?`
export FZF_CTRL_R_OPTS="--preview 'echo {}' --preview-window down:3:hidden --bind ?:toggle-preview"

Thanks for sharing @junegunn.
When I tried those options, the command was truncated to the window width, so it didn't provide much value. From some searching it looks like behaviour has changed since you posted your tip.
For anyone looking to do this now, I updated my CTRL_R_OPTS to look like this:
export FZF_CTRL_R_OPTS="--preview 'echo {} |sed -e \"s/^ *\([0-9]*\) *//\" -e \"s/.\\{\$COLUMNS\\}/&\\n/g\"' --preview-window down:3:hidden --bind ?:toggle-preview"

It's the preview window example given above, but it will wrap the command.
If you want some fancy looking line wrap indicator, try this one:
export FZF_CTRL_R_OPTS="--preview 'echo {} |sed -e \"s/^ *\([0-9]*\) *//\" -e \"s/^.\\{,\$((COLUMNS-10))\\}/&/\"; echo {} |sed -e \"s/^ *[0-9]* *//\" -e \"s/^.\\{,\$COLUMNS\\}//g\" -e \"s/.\\{1,\$((COLUMNS-2))\\}/⏎ &\\n/g\"' --preview-window down:3:hidden --bind ?:toggle-preview"

Hmm I would like to understand how history | fzf --hscroll-off 10 vs history | fzf --hscroll-off 80 is working. I don't see any difference? Can you maybe provide 2 screenshots so I can understand. Thanks

turns out the theirs was a new line after foobar example above
yes $({ printf '.%.0s' {1..400}; printf 'foobar'; printf '+%.0s' {1..400}; }) | head -n 20 | FZF_DEFAULT_OPTS="" fzf --hscroll-off=800

works

@markmcd check the 'fold' command, it does wrapping and also handles breaking at words

This feature needs to be implemented. There are so many use cases that are craving for this functionality.


Enhance styling of items in Suggestions List [View]

Currently, most of the styles are based on the default list-view and list-cell stylings. They should use a similar styling to the CommandBox and Suggestions Text boxes.

Closed by #311


added Opendata Government of Thailand to public-apis

[x] My submission is formatted according to the guidelines in the contributing guide
[x] My addition is ordered alphabetically
[x] My submission has a useful description
[x] The description does not end with punctuation
[x] Each table column is padded with one space on either side
[x] I have searched the repository for any relevant issues or pull requests
[x] Any category I am creating has the minimum requirement of 3 items
[x] All changes have been squashed into a single commit

Thanks for the contribution @krittin-58 :)


Conversation.SendAsync don't throw exception

And return message with empty text.

This should be fixed with the following commit aa6487. Next release should have this fix.

@msft-shahins 1.1.0?

No. This chnage didn't make it to 1.1.0. It is still in develop branch.


cgroup-limits do not work with kernel 5.6 (cgroups v2)

On Fedora 32 with kernel kernel-5.6.12-300.fc32.x86_64:
host#> podman run -ti --rm -m 128M --cpuset-cpus=1 ubi8 bash
cont#> curl https://raw.githubusercontent.com/sclorg/s2i-base-container/master/core/root/usr/bin/cgroup-limits >/usr/bin/cgroup-limits
cont#> chmod a+x /usr/bin/cgroup-limits
cont#> /usr/bin/cgroup-limits
Warning: Can't detect memory limit from cgroups
Warning: Can't detect number of CPU cores from cgroups
MAX_MEMORY_LIMIT_IN_BYTES=9223372036854775807

Digging why, it's probably because cgroups v2 is used now for this newer kernel
cont#> cat /sys/fs/cgroup/cpuset/cpuset.cpus
cat: /sys/fs/cgroup/cpuset/cpuset.cpus: No such file or directory
cont#> cat /sys/fs/cgroup/memory/memory.limit_in_bytes
cat: /sys/fs/cgroup/memory/memory.limit_in_bytes: No such file or directory

So what we probably need to do is to adopt the v2 structure:
cont#> cat /sys/fs/cgroup/memory.max
134217728
cont#> # cat /sys/fs/cgroup/cpuset.cpus
1

Cgroups v2 are enabled by default since Fedora 31.


macromolecular complex & protein complex

We currently have

Protein complex is defined so that it does not encompass ribonucleoprotein complexes:
"A stable macromolecular complex composed (only) of two or more polypeptide subunits along with any covalently attached molecules (such as lipid anchors or oligosaccharide) or non-protein prosthetic groups (such as nucleotides or metal ions). Prosthetic group in this context refers to a tightly bound cofactor. The component polypeptide subunits may be identical."
(Although perhaps this can be made clearer).
This causes problems for functional classification (which have logical definitions with the genus 'protein complex')  For example, many enzymes are ribonucleoprotein complexes.  These currently have incomplete functional classifications (see https://github.com/geneontology/go-ontology/issues/12574#issuecomment-242407081 )
@ValWood  objects to the current structure:

many people use the "protein complex" term, and would expect that to retrieve complexes like the ribosome and the spliceosome and telomerase (I suspect)
Is it possible to define a protein complex as a complex which has only proteins, or protein and RNA components?
so
protein complex
--ribonucleoprotein complex
Would that be crazy? then everything can go under protein complex, unless we know that it has an RNA component, then it moves down...
This way people will retrieve all protein complexes with the protein complex term.
Similarly
protein-DNA complex (telosome), which is currently not retrieved by a "protein complex" search. I doubt there are any biologists who would not describe the telosome as a 'protein complex'
https://en.wikipedia.org/wiki/Shelterin
but you would not currently retrieve it with a protein complex search...

The editors recently discussed this issue.  We weren't happy to merge protein complex and macromolecular complex, but came up with the following proposal:

macromolecular complex: update definition to say it contains at least one protein (true for all current subclasses);  make ‘protein-containing complex’ a synonym of this term.

protein complex: add user friendly comment along the lines of “these are complexes containing only proteins, if you are looking for a more general term please consider using the parent ‘macromolecular complex’”

A slightly more radical proposal would be to change the primary name of 'macromolecular complex' to protein-containing complex.  (DOS: I'd be happy with this).
Note: for consistency of functional classification, we need to move the genus for all functionally defined complex classes to be 'macromolecular complex'.
If no comments, we'll just go ahead with this fix.
CC @bmeldal @ValWood @hdrabkin @mcourtot @paolaroncaglia

OK that would work too!

Thanks @dosumis . Personally, I'd rather not change the primary name of 'macromolecular complex' to 'protein-containing complex', because of the potential ambiguity (at first sight) between 'protein complex' and 'protein-containing complex'. I think it would be clearer and easier for curators and users alike if we went for your less radical proposal, and use 'protein-containing complex' as a synonym. Everything else is fine with me!

I can almost live with that.
2 points:

From the def of protein complex

...or non-protein prosthetic groups (such as nucleotides or metal ions)...

We added 'nucleotides' to include DNAs and RNAs or does that only mean single nucleotides like ATP in GO-speak?

from suggested def comment for protein complex

protein complex: add user friendly comment along the lines of “these are complexes containing only proteins, if you are looking for a more general term please consider using the parent ‘macromolecular complex’”

'I'm pretty sure the 'only proteins' doesn't hold true for quite a few of the leaf nodes, e.g.
GO:1990060 maltose transport complex
http://www.ebi.ac.uk/QuickGO/GTerm?id=GO:1990060
The def does not mention the maltose but the complex MUST contain maltose as the maltose-binding protein only binds to the core complexes when bound to maltose. Would this need to be moved to macromolecular complex? We would never be able to catch all and move them.
I agree with Paola, we shouldn't re-name the primary name for macromolecular complex.

From the def of protein complex

...or non-protein prosthetic groups (such as nucleotides or metal ions)...

We added 'nucleotides' to include DNAs and RNAs or does that only mean single nucleotides like ATP in GO-speak?

"A cofactor that is tightly or even covalently bound is termed a prosthetic group" https://en.wikipedia.org/wiki/Cofactor_(biochemistry).

Ok, thanks. I guess you don't want to relax the def any further then...

We did that for nucleotides (like FAD, NAD) not polynucleotide chains (RNA, DNA)
Ha
From: Chris Mungall <notifications<EMAIL_ADDRESS>Reply-To: geneontology/go-ontology <reply<EMAIL_ADDRESS>Date: Friday, September 2, 2016 at 7:17 AM
To: geneontology/go-ontology <go-ontology<EMAIL_ADDRESS>Cc: Harold Drabkin <Harold.Drabkin<EMAIL_ADDRESS>Mention <mention<EMAIL_ADDRESS>Subject: Re: [geneontology/go-ontology] macromolecular complex & protein complex (#12620)

From the def of protein complex

...or non-protein prosthetic groups (such as nucleotides or metal ions)...
We added 'nucleotides' to include DNAs and RNAs or does that only mean single nucleotides like ATP in GO-speak?
"A cofactor that is tightly or even covalently bound is termed a prosthetic group" https://en.wikipedia.org/wiki/Cofactor_(biochemistry).

You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/geneontology/go-ontology/issues/12620#issuecomment-244349110, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AJ9NkC6vK2MURCYbMh-_YyFS2ALepxVKks5qmAXLgaJpZM4JuOud.
The information in this email, including attachments, may be confidential and is intended solely for the addressee(s). If you believe you received this email by mistake, please notify the sender by return email as soon as possible.

I'm pretty sure the 'only proteins' doesn't hold true for quite a few of the leaf nodes, e.g. GO:1990060 maltose transport complex
http://www.ebi.ac.uk/QuickGO/GTerm?id=GO:1990060
The def does not mention the maltose but the complex MUST contain maltose as the maltose-binding protein only binds to the core complexes when bound to maltose. Would this need to be moved to macromolecular complex? We would never be able to catch all and move them.

It sounds to me like a borderline case we could safely fudge & keep under 'protein complex'.  It's a small molecule tightly bound, even if not strictly a cofactor.

Thanks, David. I will keep 'fudging' such cases when they appear ;-)

label "macromolecular complex"
id "GO:0032991"
definition "A stable assembly of two or more macromolecules, i.e. proteins, nucleic acids, carbohydrates or lipids, in which at least one component is a protein and the constituent parts function together."
has_exact_synonym "protein containing complex"

Next step - change all
intersection_of: GO:0043234 ! protein complex
intersection_of: capable_of ...

intersection_of: GO: 0032991 ! macromolecular complex
intersection_of: capable_of ...
This looks a little odd for some cases, but allows for classification to work fine if some complexes with the specified activity are ribonucleoprotein  complexes.

Done.  Will commit later today or early tomorrow.

This, of course, means that the hierarchy under 'protein complex' is quite flat.

But under macromolecular complex is now much deeper, with many new direct subclasses:

But the classifications that cross between protein/ribonucleoprotein complex should now be fixed.  e.g.

@bmeldal Change is done, but had cold feet about committing without getting nod from you.  Please look back at the last four comments and let me know if OK to go ahead and commit.

David, apologies for the delay, I was at the Genome Informatics Conference and forgot to reply earlier.
I think we should commit it. If it ends up looking odd or unusable we can always revert. The 'protein complex ' hierarchy was always quite flat...
@ValWood can you please keep an eye on this and let us know if it looses expected or throws up unexpected relationships? Thanks.

OK. Thanks.  Will commit.

Will do.
Val


Default page width

This is not really an "issue".
Actually I mainly just want to thank the contributors to this project, since I had been looking around for a modern doxygen theme with light/dark modes for quite a while now - to no avail.
This one ticked pretty much all the boxes for one of our projects (https://leomccormack.github.io/Spatial_Audio_Framework/).
The only problem I had was with the default maxwidth, which looks comically narrow on a 1440p/4K monitor.
--content-maxwidth: 900px;
Perhaps setting this to "auto", or at least increasing this value, would be better for a default configuration?
In any case, great work, and thanks again!

I also had a problem with the --content-maxwidth, but it was easy to override the value. All I did was add this un my custom.css file:
/--- OVERRIDE VARIABLES ---/
html {
--content-maxwidth: 1180px !important;
}
For example, see my docs here.
Hope this helps.

Thanks for your feedback!
I've increased the default width to 1000px in https://github.com/jothepro/doxygen-awesome-css/commit/8868faceb998cea5d500142093857fb50a9ad8e4 because it seems multiple users think 900px is too small. As @jpgarza93 mentioned you can and should choose your own preferred content width by overriding --content-maxwidth.


Generate multiple Prisma clients with different connected datasources

Possible Solution
datasource pg1 {
    provider = "postgresql"
    url = "postgresql://admin@localhost:5432/db"
}

datasource pg2 {
    provider = "postgresql"
    url = "postgresql://readonlyUser@localhost:5432/db"
}

generator js {
    datasources = [pg2]
}

Duplicate of https://github.com/prisma/prisma/issues/172


Testing gitcop

There were the following issues with your Pull Request

Commit: 483b686c69a8ee016b9b6c04296f81e487e7b7a7
Commits must be in the following format: %{type}(%{scope}): %{description}

Guidelines are available at https://github.com/thestonefox/SteamVR_Unity_Toolkit

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


Client request timing

This adds navigation timing in the ClientController broken down by:

Navigation type:

Page load
Click (pushstate)
Forward/back (popstate)

Request options:

bundleData
frameback
reuseDom
reuseFrame
_framebackExit

Also logs the product of those two dimensions (e.g. popstate with bundleData).

Here's what this looks like for a page load => frameback navigate => back (with #173 for logging in the browser).

👍


add roadmap to main readme

roadmap was created in https://github.com/spatialos/UnityGDK/pull/10

@jessicafalk yep so now there is a new PR (https://github.com/spatialos/UnityGDK/pull/15) which

puts the roadmap in a separate file
links from the readme to it
please review #15


Make haml_coffee_assets work with non-Rails projects

Great project, it's been super handy to use - thanks!  I have a project that's not Rails but still using Sprockets, and I wanted to be able to use HAML in it.  Took a bit of refactoring but I managed to make it work.  I've updated the specs, and the revised configuration API is still compatible with the Rails way of configuring things.

Other than mentioning that it can be used outside of Rails, I don't think so.  A require 'haml_coffee_assets' should register the template with Tilt and have you good to go.


[ENF-629] rename meeting-submission field: created to dateCreated

Purpose
Rename meeting-submission created field to dateCreated to match the API
Summary of Changes
Fixed

Models:

meeting-submission - renamed created to dateCreated to match API

Components:

meetings

detail

meeting-submissions-list - renamed created to dateCreated and date_created to match API

Tests:

Integration:

meetings

detail

meeting-submissions-list - renamed created to dateCreated and date_created to match API

Mirage:

meeting-submission factory - renamed created to dateCreated to match API

Side Effects
None expectd
Feature Flags
ember_meetings_detail_page
QA Notes
Make sure Date created column matches the date_created in the API response.
Ticket
https://openscience.atlassian.net/browse/ENG-629
Reviewer Checklist

[ ] meets requirements
[ ] easy to understand
[ ] DRY
[ ] testable and includes test(s)
[ ] changes described in CHANGELOG.md

Pull Request Test Coverage Report for Build 3053

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 72.498%

Totals

Change from base Build 3046:
0.0%

Covered Lines:
6300

Relevant Lines:
7844

💛  - Coveralls


Fix analysis mode of scheduling engine

Tickets addressed: Resolves #1583
Review: By commit
Merge strategy: Merge (no squash)

Description

The issue arose in this case

conflictSolverReturn was not initialized
the analysis mode was ON
the type of the conflict was something else than an association conflict so the variable kept being null

Initializing the conflictSolverReturn variable to its default state (unsatisfied, no activities created) fixes that issue and no other logic is impacted.
Verification

None.
Documentation

None.
Future work

None.

Would you mind quickly explaining why it was null to begin with, if you recall?

An oversight. Probably from before it had a default state via its default constructor.


Strange display character mangling problem only when using in conjunction with HiCursorWords AND in javascript syntax file

I can't live without either of these plugins, but starting recently on my OS X system, the combination of these plugins cause a display problem only within JS files. Furthermore, the display corruption also does not occur if I start recording a macro.
So a workaround is actually to just begin recording a macro when I edit a JS file. Which is really silly.
Another thing to note is that the corruption appears when running vim inside tmux in iTerm2, inside PuTTY (regardless of tmux), but iTerm2 seems resilient when vim isnt run in tmux. Terminal.app has the same behavior as PuTTY. At any rate, Terminal.app is slow and I can't stand it because of that.
I have already narrowed it down to these factors, and it's definitely very strange indeed. But I am running out of ideas on what I could test. Maybe someone can help me brainstorm?
I have been trying vim testfile.js | tee vimdump which is challenging because of the escape code soup that must be waded through, but at least it lets me see what is being sent to the terminal.

Hallelujah! I decided that the issue being restricted to JS was way too strange, (and even though removing Pangloss/vim-javascript yielded no relief) my problem was fixed by trying https://github.com/jelera/vim-javascript-syntax


Remove Berenson catalogue number and notes from top portion of object record page

Some users found it confusing to have this information repeated; let's try just having  artist, title, and project data [technique and location (combo of collection and geographic location)].

removed


Js error when mouse over showing tooltip and c3 is destroyed

Sometimes I have to completely regenerate c3 graph (when update isn't supported well for some data changes), if the mouse is hovering over the graph during that time I get the following js error:
Uncaught TypeError: Cannot read property 'data_types' of null

The error can be tested using this code (just move the mouse and let the magic happen):
    var _chart;
    var _testIndex = 0;
    function test() {
        _testIndex++;
        console.info("testing "+_testIndex);
        if (_chart != null) {
            _chart.destroy();
            _chart = null;
        }
        var x = {
            data: { columns: [["x"], ["y"]], x: "x", }
        };
        for (var i = 1; i < 300; i++) {
            x.data.columns[0].push(i * 2);
            x.data.columns[1].push(i * 3);
        }
        _chart = c3.generate(x);
        if(_testIndex<20)
            scheduleTest();
    }

    test();
    function scheduleTest() {
        window.setTimeout(test, 1000);
    }

Happens in c3 0.4.9 (latest), and d3 3.5.0 (recommended version as far as I know)
Thanks

.destroy() make this issue, not sure why this happen, they just reset the internal, but when this issue happen, the new chart's internal have be change too.
 c3_chart_fn.destroy = function () {
    var $$ = this.internal;

    window.clearInterval($$.intervalForObserveInserted);
    window.onresize = null;

    $$.selectChart.classed('c3', false).html("");

    // MEMO: this is needed because the reference of some elements will not be released, then memory leak will happen.
    Object.keys($$).forEach(function (key) {
        $$[key] = null;
    });

    return null;
};

+1 for this issue. It doesn't effect anything as far as I can see, but it's unpleasant to see errors on the console.

Thanks for reporting. Yeah, this should be fixed and I think now it's been fixed by the commit above.
I'll release this fix in the next release 0.4.10 shortly. Thanks.

0.4.10 has been released, so let me close at the moment. Thanks.


Terminal local echo may not remove predictions when typing while yarn is running

This happened when I typed yarn watch<enter> during yarn

It's expected that these characters may pop up, but I think they should always show in the default text color. We want to match the regular behavior when local echo is off.
This is what happens when local echo is off (the enter moves to the next line and it continues on thinking the next line is the progress bar):

It's expected that these characters may pop up, but I think they should always show in the default text color.

Do you mean to use the default text color for predictions in this case (with some way to detect?)
It's not good that predictions remained on your screen after the next progress bar invalidated them. But this scenario is likely to be racey I think because there's a lot of data coming down the pipe with cursor moves; the position at which we read the cursor when we start predictions initially might not be synchronized exactly right with the remote...

Do you mean to use the default text color for predictions in this case (with some way to detect?)

No I mean typing without local echo will result in the characters being printed using the default color before the progress bar replaces them. So when the predictions get rolled back that should be the state as well.

But this scenario is likely to be racey I think because there's a lot of data coming down the pipe with cursor moves

I might be misunderstanding, isn't xterm.js' state all you need to rely upon, not the cursor position on the other side? Since all data goes through the addon it's inherently non-racey provided we reliably rollback the predictions?


use recipes for plots

Be more general with the backend. Also easier to change plots

switch to using plot recipes
separate sampling and sampling+plotting plus better naming
update hypersliceplorer stuff to be consistent with new naming
update readme to match code

fixes #3


added info about scripted way of restoring

https://github.com/MicrosoftDocs/windows-itpro-docs/issues/2938

@nenonix @JohanFreelancer9 Copy editing is needed for this PR. Thanks.

@dariomws306 @get-itips @tseward
Peer review needed for this PR. Thanks.

I'm OK with this once the locale is removed from the URL.

ok with @nenonix and @tseward

I am ok with the suggestions too.

@AndreaBarr The PR can now be merged. Thanks.

@AndreaBarr The PR is ready to be merged. Thanks.


Ingress endpoint

Private Type Syntax for Ingress Endpoints

What this PR does / why we need it:
Which issue(s) this PR fixes (optional, use fixes #<issue_number>(, fixes #<issue_number>, ...) format, where issue_number might be a GitHub issue, or a Jira story:
Fixes #
Checklist

[ ] Subject and description added to both, commit and PR.
[ ] Relevant issues have been referenced.
[ ] This change includes docs.
[ ] This change includes unit tests.

Thanks @pcrentsil
/hold
Please include a commit/PR desc (and link to issue if any) explaining "why" this change and a commit message stating "what" https://github.com/openshift/hypershift/blob/main/docs/content/contribute/index.md

@pcrentsil We will also need to adjust ingress.ReconcileDefaultIngressController() to take in an additional function input, isPrivate bool, which you can just pass in p.IsPrivate.

Thanks @pcrentsil
/hold Please include a commit/PR desc (and link to issue if any) explaining "why" this change and a commit message stating "what" https://github.com/openshift/hypershift/blob/main/docs/content/contribute/index.md

This has been updated.

thanks! What's the particular case for IBM? Is there a need to choose isPrivate vs not depending on the cluster?
Otherwise, if this is always the same for the IBM platform I'd prefer to drop the annotation and keep being opinionated in ReconcileDefaultIngressController. Then if we ever want to enable this for more platforms/use cases we do though the API.

Hey @enxebre , thank you for the review! I can provide a bit of context. For our OpenShift on IBM Cloud offering (ROKS), there is a capability were clients are able to toggle to update if they want the ingress controller exposed via LB or not. This enhancement is meant to expose such configuration for HyperShift managed clusters, so that our automation process can wrap around it.

Thanks @hasueki, makes sense. I think this should be eventually in the API, possibly just not yet. I created https://issues.redhat.com/browse/HOSTEDCP-527 to track and follow up as we see fit when evolving the API.
lgtm other pending fixing commits.

Hey, @enxebre let me know your comments on any of the changes implemented!

Thanks @pcrentsil
/approve
PTAL @alvaroaleman @csrwng

apart from the nit that @enxebre pointed out (local vars should never be capitalized), this lgtm

@enxebre  @csrwng Modified variable to be ibm specific ibmCloudUPI
Thanks Guys,

/lgtm

/hold cancel

/cherry-pick release-4.11


Update default seccomp profile

Added the following syscalls:

umount2
unshare

Beside this, we resort the syscall list by name.

LGTM, @rhatdan PTAL

LGTM


Fix #8. Support Python 2.6

Hello,
Thank you for your this useful tool. This pull request adds Python 2.6 support.
Greetings

@nvie
On the topic of 2.6, is there any particular reason pip-tools is not supporting it, or at the very least testing against it?
I'm wondering if there's anything fundamentally breaking that 2.6 can't reasonably do?  If not, I'd love to make this work.  I like this tool, but trying to use it in my build pipeline is putting me in an awkward position when I have to deal with py26.
Currently the error points to a dict comprehension, which is unsupported in Py26.
I found a few

https://github.com/nvie/pip-tools/blame/master/piptools/sync.py#L60
https://github.com/nvie/pip-tools/blame/master/piptools/sync.py#L94


[Bug] library "libflutter_rust_bridge_example.so" not found

Describe the bug
Following the with_flutter example/tutorial does not work. Running the integration test fails with the same error:
integration_test/main.dart starts!
00:22 +0: end-to-end test run and wait to see if there is memory problem
══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞════════════════════════════════════════════════════
The following ArgumentError was thrown running a test:
Invalid argument(s): Failed to load dynamic library 'libflutter_rust_bridge_example.so': dlopen
failed: library "libflutter_rust_bridge_example.so" not found

When the exception was thrown, this was the stack:
#0      _open (dart:ffi-patch/ffi_dynamic_library_patch.dart:12:43)
#1      new DynamicLibrary.open (dart:ffi-patch/ffi_dynamic_library_patch.dart:23:12)
#2      dylib (package:flutter_rust_bridge_example/main.dart:19:26)
#3      dylib (package:flutter_rust_bridge_example/main.dart)
#4      api (package:flutter_rust_bridge_example/main.dart:20:47)
#5      api (package:flutter_rust_bridge_example/main.dart)
#6      _MyAppState._callExampleFfiTwo (package:flutter_rust_bridge_example/main.dart:55:32)
#7      _MyAppState.initState (package:flutter_rust_bridge_example/main.dart:39:5)
#8      StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4893:57)
#9      ComponentElement.mount (package:flutter/src/widgets/framework.dart:4729:5)
#10     Element.inflateWidget (package:flutter/src/widgets/framework.dart:3790:14)
#11     Element.updateChild (package:flutter/src/widgets/framework.dart:3524:20)
#12     SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6291:14)
#13     Element.updateChild (package:flutter/src/widgets/framework.dart:3501:15)
#14     RenderObjectToWidgetElement._rebuild (package:flutter/src/widgets/binding.dart:1198:16)
#15     RenderObjectToWidgetElement.update (package:flutter/src/widgets/binding.dart:1175:5)
#16     RenderObjectToWidgetElement.performRebuild (package:flutter/src/widgets/binding.dart:1189:7)
#17     Element.rebuild (package:flutter/src/widgets/framework.dart:4477:5)
#18     BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2659:19)
#19     WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:882:21)
#20     RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:363:5)
#21     SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1144:15)
#22     SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:1081:9)
#23     LiveTestWidgetsFlutterBinding.handleDrawFrame (package:flutter_test/src/binding.dart:1458:13)
#24     SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:995:5)
#28     _invoke (dart:ui/hooks.dart:151:10)
#29     PlatformDispatcher._drawFrame (dart:ui/platform_dispatcher.dart:308:5)
#30     _drawFrame (dart:ui/hooks.dart:115:31)
(elided 3 frames from dart:async)

The test description was:
  run and wait to see if there is memory problem
════════════════════════════════════════════════════════════════════════════════════════════════════
00:22 +0 -1: end-to-end test run and wait to see if there is memory problem [E]
  Test failed. See exception logs above.
  The test description was: run and wait to see if there is memory problem

Codegen logs with RUST_LOG=debug env variable
= This bug is not with the bridge codegen =

To Reproduce
I followed all steps for Android from the CI and the first tutorial:
cd frb_example/with_flutter
cargo install cargo-ndk
rustup target add x86_64-linux-android aarch64-linux-android armv7-linux-androideabi
flutter pub get
cd rust
cargo ndk -o ../android/app/src/main/jniLibs build
cd ..
flutter run # connects to Android Studio emulated Android 11 device

# alternatively run integration test
flutter test integration_test/main.dart --verbose

Expected behavior
App displays a mandelbrot image in the first card. No errors in the console.
Generated binding code
= generated binding code was not changed from what is shipped in the example =

OS
Fedora Workstation 35
Version of flutter_rust_bridge_codegen
1.22.1
Flutter info
[✓] Flutter (Channel stable, 2.10.3, on Fedora Linux 35 (Workstation Edition)
    5.16.12-200.fc35.x86_64, locale en_US.UTF-8)
    • Flutter version 2.10.3 at $HOME/Android/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 7e9793dee1 (6 days ago), 2022-03-02 11:23:12 -0600
    • Engine revision bd539267b4
    • Dart version 2.16.1
    • DevTools version 2.9.2

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    • Android SDK at $HOME/Android/Sdk
    • Platform android-31, build-tools 30.0.3
    • Java binary at: $HOME/bin/android-studio/jre/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.11+0-b60-7590822)
    • All Android licenses accepted.

[✓] Chrome - develop for the web
    • Chrome at google-chrome

[✓] Linux toolchain - develop for Linux desktop
    • clang version 13.0.0 (Fedora 13.0.0-3.fc35)
    • cmake version 3.22.2
    • ninja version 1.10.2
    • pkg-config version 1.8.0

[✓] Android Studio (version 2021.1)
    • Android Studio at $HOME/bin/android-studio
    • Flutter plugin version 65.1.2
    • Dart plugin version 211.7808
    • Java version OpenJDK Runtime Environment (build 11.0.11+0-b60-7590822)

[✓] VS Code (version 1.65.0)
    • VS Code at /usr/share/code
    • Flutter extension version 3.36.0

[✓] Connected device (3 available)
    • Android SDK built for x86 (mobile) • emulator-5554 • android-x86    • Android 11 (API
      30) (emulator)
    • Linux (desktop)                    • linux         • linux-x64      • Fedora Linux 35
      (Workstation Edition) 5.16.12-200.fc35.x86_64
    • Chrome (web)                       • chrome        • web-javascript • Google Chrome
      99.0.4844.51

[✓] HTTP Host Availability
    • All required HTTP hosts are available

• No issues found!

Version of clang++
13.0.0 (Fedora 13.0.0-3.fc35)
Version of cbindgen
0.20.0
Version of ffigen
4.1.3
Additional context
rustc 1.59.0 (9d1b2106e 2022-02-23)
cargo 1.59.0 (49d8809dc 2022-02-10)

Nice and detailed issue report :) Let me have a look

connects to Android Studio emulated Android 11 device

Wait, have we generated x86/x64 architecture .so files? Maybe try to generate for those platforms, or use a real phone.

If that fails to work, please examine the Flutter generated .apk file, and see whether there are expected .so files inside or not.

I did not realize that the simulator was not 64-bit.
Checking flutter devices showed me that the emulator is a x86 architecture.
I needed to install the i686-linux-android rustup target, and compile the rust code with cargo ndk -t x86 ....
Then flutter run was able to pack the correct .so file.
Would it be possible to throw a build error when the file for the targeted architecture is not available?

Would it be possible to throw a build error when the file for the targeted architecture is not available?

What about modifying the build script

I have now searched far and wide through the interwebs, and I could not find any way to access the currently built-for architecture in a build.gradle file to check if the file exists. So if you have any pointers, please share :wink:

@sisou IIRC what cargo-ndk does under the hood is running cargo build for each of the specified architectures, then copy the .so files into the jniLibs/ folder; you can for example check if the folder and/or file exists then throw an error.


[main] SRVKS-981 Multiarch test images

Same as https://github.com/openshift-knative/serving/pull/23 , see details there.
This is the variant for "main" branch which automatically remove upstream github actions and adds midstream ones when creating a release branch.

/lgtm


[wip, need to add tests] curl -L mode; move generic code out of uihandler

WIP - Need to add tests before this can go in

@mattdelco the fortio curl -L ... is for you (and the fhttp.FetchURL() for some of our liveness/readiness tests)

Thanks, it looks alright to me (though I don't consider myself very knowledgeable about fortio or golang).  I have been a bit apprehensive about relying on stdout (vs an explicit file output parameter), but so far things seem okay (almost everything else is using stderr, either directly or indirectly via the logging library).

any unix-y program worth its salt will not mix stdout and stderr :-) if it produces something to be saved it will be on stdout while logging goes to stderr


spirv-fuzz: Update analyses in TransformationSwapFunctionVariables

When we swap 2 variables, we invalidate DefUseManager. The latter contains a map from a result id to an opt::Instruction object. We should update it in the transformation accordingly.
@Mostafa-ashraf19, you can use opt::DefUseManager::AnalyzeInstDefUse to do that.
@afd for info.

@afd I wonder if TransformationSwapFunctions suffers from a similar bug.

Sorry for the late reply @Vasniktel. Ok, I will do that.

When we swap 2 variables, we invalidate DefUseManager. The latter contains a map from a result id to an opt::Instruction object. We should update it in the transformation accordingly.
@Mostafa-ashraf19, you can use opt::DefUseManager::AnalyzeInstDefUse to do that.
@afd for info.

sorry for the late. I will do that.

Interesting!
@Mostafa-ashraf19 are you OK to attend to this? If you're not familiar with def-use analysis I suggest you do some brief reading online. The required code change should be simple.

sure @afd, sorry for the late. I will do that.

@Mostafa-ashraf19 @sliu-UIUC One thing to note, though, is that storing DefUseManager in a local variable before applying the transformation is probably not a good idea since some transformations invalidate that analysis completely. And when that happens, the pointer to the DefUseManager becomes deallocated. Thus, you'll end up with a dangling pointer and a segmentation fault.

@Vasniktel I agree in general. But the transformations in question don’t invalidate it, so in this case it provides a good way to check that they update the analysis appropriately. Do you agree?

Yes. Since we don't invalidate the analysis here, it's indeed ok to use the approach with the local variable.

@afd @Vasniktel Hi guys. I think that I don't have the bug Vasyl mentioned in issue #4257. In the fuzzer pass for applying the transformation I didn't call randomIndex for my functions. Instead, I added function_ids available in the module into a function iterator and perform swapping with the given functions. If there is no function there will be no transformation performed, and if there is only 1 transformation,  the 2d forloop:
  for (size_t i = 0; i < function_ids.size(); ++i) {
    for (size_t j = i + 1; j < function_ids.size(); ++j) {

will make sure that there will be no transformation performed also. Even though there is, the assertion will fail as the two parameters would have the same function id. I have tested it using an assembly script with only one function main, and it builds and passed all test. So I think transformation_swap_function doesn't suffer from the bug in #4257.
As for issue #4259, I am not sure whether swapping functions has anything to do with DefUseManager, as it seems to deal with issues in the instruction space. Is there a function level equivalent class that I might use to perform a similar def-use analysis?

@Vasniktel This PR adds the tests I was assuming would fail given your concerns:
https://github.com/KhronosGroup/SPIRV-Tools/pull/4266
However, they pass locally for me.
Did you have something similar in mind or something else?

@sliu-UIUC What I was concerned with regarding swapping 2 functions is the following. In TransformationSwapFunctionVariables we swap the contents of 2 opt::Instruction pointers. The problem with this approach is that if some analysis references the pointer, it will now continue to reference the same address in memory but containing a totally different instruction. Thus, we need to invalidate analyses to make sure that our changes to the contents of the pointers were noticed.
With TransformationSwapFunctions situation is a bit different, though. We don't swap contents of 2 opt::Function pointers. Instead, we swap 2 elements of the std::vector<std::unique_ptr<opt::Function>> (func1_it.Get() returns an iterator to such a vector). With this approach, the contents of the opt::Function pointers remain unchanged inside unique_ptr's, only their positions in the vector change. Thus, if some analysis references the opt::Function pointer or anything it contains, it will still continue to reference the same thing.
Additionally, there is std::vector<std::unique_ptr<opt::Instruction>> in the opt::BasicBlock. Thus, we can use the same approach of swapping variables in TransformationSwapFunctionVariables without the need to invalidate analyses (if I recall correctly, someone proposed to use it in the beginning and then we switched to the current approach).
@afd @sliu-UIUC @Mostafa-ashraf19 what do you think about all this?

Thanks @Vasniktel !  @sliu-UIUC there is indeed no problem with your transformation. I have updated #4266 with a test that demonstrates there is no problem: no harm for this extra thorough test to be merged.

@sliu-UIUC What I was concerned with regarding swapping 2 functions is the following. In TransformationSwapFunctionVariables we swap the contents of 2 opt::Instruction pointers. The problem with this approach is that if some analysis references the pointer, it will now continue to reference the same address in memory but containing a totally different instruction. Thus, we need to invalidate analyses to make sure that our changes to the contents of the pointers were noticed.
With TransformationSwapFunctions situation is a bit different, though. We don't swap contents of 2 opt::Function pointers. Instead, we swap 2 elements of the std::vector<std::unique_ptr<opt::Function>> (func1_it.Get() returns an iterator to such a vector). With this approach, the contents of the opt::Function pointers remain unchanged inside unique_ptr's, only their positions in the vector change. Thus, if some analysis references the opt::Function pointer or anything it contains, it will still continue to reference the same thing.
Unfortunately, there is no std::vector<std::unique_ptr<opt::Instruction>> so we are forced to swap contents of the pointers instead and invalidate analyses.

That makes sense. I can see swapping pointers can be problematic indeed.


fix left_join and add test

Codecov Report

Merging #46 (65ab327) into master (55fea6b) will decrease coverage by 0.03%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master      #46      +/-   ##
==========================================
- Coverage   71.59%   71.57%   -0.03%
==========================================
  Files          31       31
  Lines        1394     1393       -1
==========================================
- Hits          998      997       -1
  Misses        396      396

Flag
Coverage Δ

unit-tests
71.57% <100.00%> (-0.03%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

mango/table/pytups_tools.py
97.74% <100.00%> (-0.02%)
:arrow_down:

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

@gvalleg @AntonioGonzalezSuarez @dlopbar @l-prr could any of you review this PR as well?


Feature Proposal
One module "How old are you ? "
I have time so I can do both of them, can I ? :)

Hello @gnouf1,
Thanks for your suggestions!
I'll soon work on the "How Old" module under the "Leon" package. But feel free to kick off the "TV" package. I've noted some ideas on the roadmap.

Yes i see ideas on your trello ;p
In parallel with this module I will probably work on the trust website module :) (i see somebody open an issue). If it's ok for you :)

Alright then!
Feel free to ask questions if you need to.

Hello !
The PR for How old are you ? is : #142

Thanks for your report! @gnouf1
Could you please reopen another issue for the Cinema package, we should keep unrelated things separated, it's easier to track! :smile:

 ✨ [1.0.0-beta.7] How Old Module - Leon Package (JavaScript)


fix(mergify): restrict merges with unresolved threads

Motivation
We've had a few cases of Mergify merging reviewed PR's with unresolved comments.
Solution

Added "#review-threads-unresolved=0" to all pull_request_rules which will prevent merges with unresolved threads.

Review
@dconnolly

@dconnolly we don't need to set GitHub auto-merge any more, because mergify will do the merge.

@dconnolly we don't need to set GitHub auto-merge any more, because mergify will do the merge.

Not for changes to Mergify config, which makes sense:

Ah right, I just read that:

For security reason, Mergify will never automatically merge a pull request if it changes the Mergify configuration file.

https://docs.mergify.com/getting-started/#configuration


Add my website (adamblog) in webring

Webring icon at header logo website on desktop and mobile

@ChaiyachetU Thanks, and welcome to the webring!

@ChaiyachetU Thanks, and welcome to the webring!


[Bug]: Jitter on Landing page [ Overflow ]

Is there an existing issue for this?

[X] I have searched the existing issues

What happened?
Jitter on Landing Page
https://github.com/user-attachments/assets/f2f0025c-4724-461a-9394-3001e9f235f6
Add Screenshots
No response
What browsers are you seeing the problem on?
Chrome
Record

[X] I agree to follow this project's Code of Conduct
[X] I'm a GSSOC contributor
[X] I want to work on this issue
[X] I'm willing to provide further clarification or assistance if needed.

dont need it already solved bro


wgs and wgt in the code

Hello, where is the difference between wgs and wgt displayed in the GST.PY code? For example, wgs ∈ RCos×Cis×1×H×W, wgt ∈ RCot×Cit×T×H×W.
thanks！

OK ，OK, in bottleneck, the tensors of the two branches are C1×T×H×W and C2×T×H×W? @chenxuluo


Replace logix with circuitVerse

The project was initially named logix but was later renamed to CircuitVerse. The name has been changed in most places but there are still some places where it hasn't been changed.

Do a global search for term "logix" or "Logix" and replace with "circuitVerse" and "CircuitVerse" respectively
Make sure whatever you replace is data and database independent otherwise old project will no longer work and database integrity will be effected.

I will work on it

@agarwalrounak sure, waiting for the PR :)

Need a little help on this!
Do we have to replace "logix" with "circuitVerse" wherever the project is named as "logix" or everywhere(including the filenames). I suppose @satu0king meant where the project is still named as ''logix'' or "Logix".

Please move forward with the places where the project is named as variants of 'Logix', updating the filenames right now will lead to a lot of conflict and I would wait for proper tests to setup before changing the files so that we know what we break (if we break).

@armudgal is right.
I do not think many files have logix in the name. However many messages/constants/strings have them. Over time a lot of it has changed but some parts remain. @agarwalrounak you could probably help us by identifying the places that need to be changed simply by doing a global search for "logix" and "Logix"

Here you can find the files that have to be modified: https://hastebin.com/osawakonos.cpp
Let me know what are the changes that can be done now.

Please go forward with replacing the names of the images for now.