ERR SETTINGS_KEY_NOT_FOUND with redis 7.0.7

ReplyError: ERR SETTINGS_KEY_NOT_FOUND
at parseError (/var/app/current/node_modules/redis-parser/lib/parser.js:179:12)
at parseType (/var/app/current/node_modules/redis-parser/lib/parser.js:302:14)
Do we have any workaround to resolve this issue?
Or do we have any alternate library?

I have fixed this compatibility issue in the fork repo https://github.com/maselious/bottleneck
And published the package https://www.npmjs.com/package/@maselious/bottleneck
Feel free to use

This might fix the above mentioned error, but rate limiting does not work at all when using redis 7. Can someone confirm this?

@maselious thank you for sharing this update.  As I'm comparing against the fork of Sergiiivzhenko, I noticed this diff.  Could you help explain why that formatting change to the repo url was introduced?  It may just be a syntactic convention I am unfamiliar with.  thank you.
(@mindrunner haven't had a chance to try this out yet but can aim to report back to your question upon doing so)

@maselious thank you for sharing this update. As I'm comparing against the fork of Sergiiivzhenko, I noticed this diff. Could you help explain why that formatting change to the repo url was introduced? It may just be a syntactic convention I am unfamiliar with. thank you. (@mindrunner haven't had a chance to try this out yet but can aim to report back to your question upon doing so)

If shortly it is a best practice.
Longer (TLDR):

The "git+" prefix makes it explicit that the URL is intended to be a Git repository URL. This helps tools and package managers like npm or yarn recognize the URL as a Git repository and use the appropriate methods to fetch and install the package. Without the "git+" prefix, the URL might be treated as a generic URL, which can lead to unexpected behavior.
Depending on the project and package manager, there might be encountered different types of repositories (Git, Mercurial, Subversion, etc.). By specifying "git+", it is ensured that the URL is interpreted as a Git repository, regardless of the underlying version control system.
When Git URLs used with the git prefix, package managers like npm or yarn know to use Git's cloning mechanisms to fetch the package. This allows you to clone the repository and work with it as if you had manually cloned it using Git.

thank you @maselious for the detailed explanation!

I encountered an issue when using Redis 7+ because they introduced a new "ERR" prefix for all errors. This change caused the error handlers in Bottleneck to malfunction. To address this, I discovered a fork of Bottleneck at https://github.com/Sergiiivzhenko/bottleneck, where the "UNKNOWN_CLIENT" issue had been resolved. However, the "SETTINGS_KEY_NOT_FOUND" issue remained unresolved in that fork.
In response, I decided to merge the commits from the fork and make additional modifications to support the "SETTINGS_KEY_NOT_FOUND" issue. Upon reviewing the code changes, I determined that there were no critical alterations that would affect the stability of the package.
I have been using my fork in a production environment with a Redis 7 cluster, and it has been working successfully. In the event that Bottleneck releases a critical patch or update, I will promptly incorporate those changes into my fork to ensure its continued reliability. However, i dont promise doing it immediately.

For some reason, your fork did not work for me with redis 7. I will definitely try again and see if I can reproduce the problems I have had yesterday. Do you see any major difference between your patches and the ones from over here? https://github.com/usehaystack/bottleneck

I am also experiencing this error here https://github.com/SGrondin/bottleneck/issues/195
Seems to happen rarely, but I am also not under heavy load situations yet.

Bumping this. Also experiencing this issue.

Yep, I am also experiencing this


File nesting into solution (virtual) folder

Now VSCode supports file nesting, so instead of this:

you can have this (like in Visual Studio IDE):

you just need to add this settings into your settings.json:
"explorer.fileNesting.patterns": {     "*": "${basename}.*.${extname}" }
all file nesting patterns: https://github.com/antfu/vscode-file-nesting-config
Please add this feature into the solution (virtual) folder:

Came here to add the same request and found it has already been requested :sunglasses: here's my :+1:

Currently you can nest files with the following pattern: {name}.*.{extension} modifying vssolution.itemNesting parameter in your vscode settings.

@fernandoescolar vssolution.itemNesting takes only 2 parameters: true or false. How can I pass {name}.*.{extension} parameter?

Currently, this expression is not supported, only the preconfigured pattern...

problem is solved with the setting:
"vssolution.itemNesting": true,


Support Socket Settings Customization

Right now we don't have option to customize the http-listener and socket binding settings, For example to customize as below
...
        <subsystem xmlns="urn:jboss:domain:undertow:12.0" ...>
            ...
            <server name="default-server">
                ...
                <http-listener name="default" socket-binding="http" redirect-socket="proxy-https" proxy-address-forwarding="true"/>
                ...
...
    <socket-binding-group name="standard-sockets" default-interface="public" port-offset="${jboss.socket.binding.port-offset:0}">
        ...
        <socket-binding name="proxy-https" port="443"/>
...

Changes have to be made to existing two templates roles/keycloak/templates/......xml.j2, so that based on the condition consumers can opt to customize as needed.

While not directly configurable in the default template, at least for the moment, it is possible to do arbitrary configurations via #30
Closing for now


iOS: What should happen when server-side receipt verification fails?

InAppBilling Plugin Version: 5.6.1
Xamarin Forms Version: <IP_ADDRESS>5
OS Concerned: iOS
Hello There,
I am currently implementing in-app purchases for auto-renewing subscriptions within my Xamarin Forms app.
So far Android implementation is working in Test however, I am having difficulties with the iOS implementation.
Currently, the flow of purchasing and restoring a subscription on iOS is as follows:
A. Subscribe

Set InAppBillingImplementation.FinishAllTransactions = false;
Call PurchaseAsync().
Verify Apple Receipt using server-side validation.
If the server-side Apple Receipt Validation completes successfully, I call FinalizePurchaseAsync().

B. Restore purchase on the initial, first-time load of the App.

Set InAppBillingImplementation.FinishAllTransactions = false;
Call GetPurchasesAsync().
??

Herein, at B3 the process gets a little tricky. If A3 failed then FinalizePurchaseAsync() would never have been called. Even so, as I understand it, the IsAcknowledged flag doesn't apply to iOS. So there is no way of knowing if Receipt Validation failed or succeeded on iOS when restoring the subscription.
Please, could someone advise what the correct steps should be?
If I have been unclear or more information is required, please let me know.
Many Thanks

Even if you FinalizePurchase the purchase will still show up when you GetPurchasesAsync.
So your steps 3 and 4 would be the same in B.

Hi @jamesmontemagno,
I have implemented a new server-side validation method for restoring iOS purchases to resolve this issue. It checks the state of the original purchase verification which is saved to my database at the time of purchase. The solution is almost complete except for one issue.
For renewals, against the Sandbox environment, I am receiving the same Transaction Id for each receipt after calling GetPurchasesAsync() within the App. I have flagged this up to Apple and I am awaiting their response.
The odd thing is that when calling https://sandbox.itunes.apple.com/verifyReceipt, from my server, it returns a different Transaction Id for each renewal - which is correct.
I have ensured that I am calling FinalizePurchase on the original purchase and I am quite sure the iOS subscription is set up correctly as it is showing under Auto-Renewing subscriptions in iTunes Connect.
I'd be thankful for any help on this.

https://github.com/jamesmontemagno/InAppBillingPlugin/blob/master/src/Plugin.InAppBilling/InAppBilling.apple.cs#:~:text=allTransactions.Add(original)%3B
I found this in the inappbilling source code:
	foreach (var trans in SKPaymentQueue.DefaultQueue.Transactions)
	{
		var original = FindOriginalTransaction(trans);
		if (original == null)
			continue;

		allTransactions.Add(original);
	}

It seems as though it only ever adds the original transaction and not renewals.
Is this correct or am I missing something?


Extend content type API with : ContentType.JSON.withCharset(...)

From<EMAIL_ADDRESS>on April 17, 2013 11:15:43
So I have this code with the ContentType.JSON
expect()
    .statusCode(200)
.given()
    .contentType(ContentType.JSON)
    .body(ImmutableMap.builder()
        .put("accented_string", "2ème étage à gauche")
        .build())
.when()
    .post(BASE_URL + "/address/comment");

That is sent with the default encoding ISO-8859-1 to comply with the RFC 2616, as mentioned in the wiki or the changelog ( https://raw.github.com/jayway/rest-assured/master/changelog.txt ). However while my JAXRS server accept UTF-8 or ISO-8859-1, I experienced encoding issues with the passed json payload. Anyway, as the current service should work with UTF-8 charset, I looked for ways to specify the charset in the Content-Type header.
And the only way to do that is to pass a string with the charset :
.contentType("application/json; charset=utf-8")
I believe this would be much more user friendly if one could specify the charset of the Content-Type per request, using the ContentType enum with a charset extension, like that :
.contentType(ContentType.JSON.withCharset("UTF-8"))
Of course this might lead to some change in the API as it currently takes a ContentType enum. Maybe you could add another method #contentType(ContentTypeWithCharset contentTypeWithCharset), and add a simple factory method that takes the enum value and the charset into a new object that implements ContentTypeWithCharset.
ContentType.JSON.withCharset("UTF-8")
Or why not add another charset(String) method in the fluent RequestSpecification.
At the moment we are using version 1.6.2, but given the changelog, version up to 1.8.0 don't offer a similar API but with strings.
Thoughts ?
Brice
Original issue: http://code.google.com/p/rest-assured/issues/detail?id=228

From<EMAIL_ADDRESS>on April 17, 2013 23:30:35
ContentType.JSON.withCharset("UTF-8") seems like a good idea to me and shouldn't be too hard to implement. Perhaps you want to help out with this and I'll include it in the next release? It's also possible to change the default charset using the configuration (see documentation).
Regards,
/Johan
Status: Accepted

From<EMAIL_ADDRESS>on April 18, 2013 00:53:23
Hi Johan,
Yes I saw the default configuration before writing this issue, but I wanted to have a way to show the charset used per request, as it makes clearer to the future reader what charset is used. Plus it made sense to me in the well crafted API of RESTAssured.
Not sure I can give it a try soon, with many other side project. I'll see what I can do though.
Cheers,
Brice

From<EMAIL_ADDRESS>on April 18, 2013 01:05:44
No problems. I'll see what I can do!

From<EMAIL_ADDRESS>on April 18, 2013 04:00:42
I've implemented this is master now. Please depend on version 1.8.1-SNAPSHOT after having added the following maven repo:
<repositories>
<repository>
<id>sonatype
<url> https://oss.sonatype.org/content/repositories/snapshots/ <snapshots />
</repository>
</repositories>
Status: Fixed

From<EMAIL_ADDRESS>on April 18, 2013 04:37:51
wow that was fast :)

From<EMAIL_ADDRESS>on April 18, 2013 04:42:24
It wasn't that hard :)

From<EMAIL_ADDRESS>on April 18, 2013 08:11:57
I just took a look at your code, indeed your modification is simple ; I was thinking about a much more type oriented design ;)
Anyhow I feel ashamed now ;)
Cheers,
Brice


Usability improvements for arangodump and arangorestore

Scope & Purpose
Usability improvements for arangodump and arangorestore:

when a dump is restricted to one or multiple collections using the --collection option of arangodump, warnings are issued for all specified collections that are not present in the database. Previously there were no warnings, so missing a collection by misspelling its name could easily go unnoticed.
when a restore is restricted to one or multiple collections using the --collection option of arangorestore, warnings are issued for all specified collections that are not present in the dump. Previously there were no warnings, so missing a collection by misspelling its name could easily go unnoticed.
when a dump was taken using the --overwrite option, there was no check that validated whether the encryption mode used in the existing dump directory was the same as the requested encryption mode. This could have led to dump directories with both encrypted and unencrypted files. This was only the case when using --overwrite true, which is not the default.
when a restore was performed using the --encryption.keyfile option, there was no check whether the to-be-restored files were actually encrypted. Now this check is enforced and arangorestore will bail out with an error if the requested encryption mode for restore is not the same as for the stored dump files.

Backport of #11700

[ ] Bug-Fix for devel-branch (i.e. no need for backports?)
[x] Bug-Fix for a released version (did you remember to port this to all relevant release branches?)
[x] The behavior in this PR can be (and was) manually tested (support / qa / customers can test it)
[x] The behavior change can be verified via automatic tests

Related Information

[x] There is a JIRA Ticket number (In case a customer was affected / involved): https://arangodb.atlassian.net/browse/BTS-66

Testing & Verification

[x] Added new integration tests (i.e. in shell_client)

http://<IP_ADDRESS>:8080/view/PR/job/arangodb-matrix-pr/10166/

tests blue


az login command failed when executed through Terraform (remote-exec)

Describe the bug
Command Name
az login
Errors Message:
The command failed with an unexpected error. Here is the traceback:
ERROR: [WinError 5] : ''
Traceback (most recent call last):
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\knack/cli.py", line 231, in invoke
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 657, in execute
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 720, in _run_jobs_serially
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 691, in _run_job
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 328, in __call__
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/command_operation.py", line 121, in handler
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/command_modules/profile/custom.py", line 145, in login
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/_profile.py", line 160, in login
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/auth/identity.py", line 147, in login_with_service_principal
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\msal/application.py", line 1589, in acquire_token_for_client
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\msal/oauth2cli/oauth2.py", line 735, in obtain_token_for_client
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\msal/oauth2cli/oidc.py", line 115, in _obtain_token
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\msal/oauth2cli/oauth2.py", line 771, in _obtain_token
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\msal/application.py", line 523, in <lambda>
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\msal/token_cache.py", line 307, in add
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\msal/token_cache.py", line 113, in add
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\msal/token_cache.py", line 184, in __add
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\msal_extensions/token_cache.py", line 49, in modify
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\msal_extensions/persistence.py", line 163, in save
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\msal_extensions/windows.py", line 82, in protect
PermissionError: [WinError 5] : ''

To Reproduce:
The installation and command execution is done through Terraform (remote-exec).
The powershell script content:
$ProgressPreference = 'SilentlyContinue'; Invoke-WebRequest -Uri https://aka.ms/installazurecliwindows -OutFile .\AzureCLI.msi; Start-Process msiexec.exe -Wait -ArgumentList '/I AzureCLI.msi /quiet'; rm .\AzureCLI.msi

Start-Sleep -s 10

az login --service-principal -u $user -p $pass --tenant $tenantid

Expected Behavior
Environment Summary
Windows Server 2019 Standard 64bit
azure-cli                         2.30.0
core                              2.30.0
telemetry                          1.0.6

Additional Context
I don't get errors when the same script is executed on the instance directly when using remote desktop.
The user account is the same used in the Terraform script (remote-exec).

@kzankpe Thanks for reaching out. It seems like you're running into issues executing the az login command.
Since the issue is around behavior of specific Azure CLI commands, it would be best addressed in the Azure/azure-cli repository. I'd request you to please create a bug report here with all the relevant details about your environment and error logs so our Engineering Team can check and fix. Please run the az feedback command from your local machine and add the generated template to the GitHub issue to add the complete error details.
We will now proceed to close this thread as this channel (the Azure CLI Docs repository) is only for driving improvements related to the Azure CLI documentation. However, if there are any further questions regarding the Azure CLI docs, please tag me in your reply and we will be happy to continue the conversation.

@BhargaviAnnadevara-MSFT Thank you for your response.


Implemented collect overloads Base.collect

The provided PromClient collect function overloads the Base collect function Base.collect as it is exported. This is causing issues when I try and run unit tests w
Is collect supposed to be exported and used? Or should it be changed to not export and be noted as a private _collect function?

Or, should it be a dispatch on the type, eg. Base.collect(x)?


Inconsistencies when using package

I'm not sure what's going on but in this CodeSandbox, it's showing the line number on in the relative line numbers gutter (when it should show an empty space).
In this CodeSandbox, the gutters are out of order.
I don't know if this is a bug or something else.

I think I need to create two very basic CodeSandboxes and see if it's reproducible.
Actually, it could be an issue in https://github.com/uiwjs/react-codemirror - I need to look at source code and see how they're spreading/rendering extensions.

Disregard. Turns it it was because React CodeMirror includes basicSetup by default, which has lineNumbers and that comes before any custom extensions. Fixed the issue by disabling basicSetup here: https://codesandbox.io/s/react-codemirror-extensions-issue-6uye9?file=/src/App.tsx


Proxy sometimes does not connect when using mods

I have been using Akebi and 3dmigoto with Cultivation (swag mode) and have had an issue whereby when launching with these mods and connecting via Grasscutter, the proxy sometimes does not connect and I get the captcha from official servers. This happens after no known settings were changed nor were any configurations with Akebi or 3dmigoto.
[fixed]I am also experiencing an issue whereby when using Reshade, it does not inject properly and fails to connect to the proxy each time, however I'm not as sure about that issue as Reshade has not yet worked for me and it could be an error on my end. I was previously having the same issue with Akebi but discovered its launch path was pointing toward the wrong install of the game, and so Cultivation didn't connect the proxy, so since I'm new to Reshade this could also be happening there (though I did change the install path in the PowerShell script).
Update: SpikeHD pointed out that Cultivation must be run in Administrator mode in order to use Reshade. That issue has now been fixed.

Reshade requires Cultivation to be run as administrator, no exceptions. The powershell script is unused and untouched by Cultivation.

Many fixes have been implemented since this issue, so there is a likelyhood that it is now fixed 👍


[⭐] Web3 specific challenges

:star: Challenge idea
Description
It would be nice to have some kind of exposure to web3 technology and associated security flaws or issues with the often underlying pyramid schemes etc. in Juice Shop wrapped into one or more hacking challenges.
Underlying vulnerability/ies
Needs research.
Expected difficulty

:heavy_check_mark: / :x:
Difficulty

:grey_question:
:star:

:grey_question:
:star::star:

:grey_question:
:star::star::star:

:grey_question:
:star::star::star::star:

:grey_question:
:star::star::star::star::star:

:grey_question:
:star::star::star::star::star::star:

Possible attack flow
Needs research.

Do you want attacks such as re-entrancy attacks executed?

If this could be contained (similar to the XXE and some other challenges) it'd be fine, but if it would impact the actual whole application, it might not be feasible to have this class of vulnerability.

Implementing web3 requires integration with a blockchain, which can be resource-intensive and impact the state of users. Using a public blockchain will change the state for all users, while a local/private blockchain will consume significant resources within the container, leading to longer launch times for the project.

We could do our own in-memory blockchain maybe or try to find some testing library that simulates one? Sounds pretty hard to then have smart contracts run realistically on it... 🤔

I can't give much guidance here but am happy to read suggestions! 😆👍

List of 33 Smart Contract Vulnerabilities - haken.io
When I think about the Juice Shop, I think about the possibility of new users finding vulnerabilities without a big setup or using their own cellphones. I can't figure out this scenario using a smart contract or a wallet.
The biggest challenge in the crypto world is phishing users with a support page equal to the product, that connects to victims' wallets and confirms cashout some funds. But I can't see this kind of vulnerability inside the Juice shop.

We could do our own in-memory blockchain maybe or try to find some testing library that simulates one? Sounds pretty hard to then have smart contracts run realistically on it... thinking

I don't know whether hardhat suffices for it or not (I would need to understand juice shop more) but that's quite light and developer's use it very often to have a local blockchain for developing Dapps and I know from personal experience it doesn't takes a lot resources.

How about creating a new challenge-specific instance on a test network with a click of a button and destroying it as soon as the challenge is complete? Is it possible?


cli flag allow customized storage type

allow mount to select storage typ other than default from format.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

@DEvmIb  What kind of scenarios require such behavior ?

main server using file for performance. clients in other location can not access files. the bucket switch is not enough, juicefs sets storage type from meta "file://https://example.com/gws/.juicefs/fs/gws/".
so why not let client choose where the files are and let juicefs become more cloud aware. juicefs has many storage types, but after setting up all clients forced to use just this one storage type.

For a single JuiceFS file system, all the clients of JuiceFS should able read the data written by others. If the storage types are different, how can they work together?
We can't understand why this option is need.

ok let my try to explain it better.
location A

direct access to the chunks on disk.
using mount --storage file --bucket /path/to/chunks redis://test.local/1
no overhead going through s3,webdav etc

Location B

no direct access
using mount --storage webdav --bucket https://locationa/path/to/chunks redis://test.public/1

as i write above the storage is fixed at metata/settings and let me not mix how i want to access the chunk store.
it works for me, that should be enough to write, it should just be a hint :)

@DEvmIb That make sense, lgtm.

@DEvmIb If there is no conflict with main branch, you don't need to merge with it to MERGE the PR.


esm bundle for Angular 17

Hello, can you add an esm-bundle for Angular 17 please?
I created a pull request for the @angular/platform-browser-dynamic package: https://github.com/esm-bundle/angular__platform-browser-dynamic/pull/218
This pull request is reliant on the following pull requests:

https://github.com/esm-bundle/angular__compiler/pull/221
https://github.com/esm-bundle/angular__core/pull/530
https://github.com/esm-bundle/angular__common/pull/556
https://github.com/esm-bundle/angular__platform-browser/pull/545

Can we get support for esm bundle for Angular 17? We need systemjs bundles for cross microfrontend related work as we have some scenarios which would be blocked by this. Appreciate your support.


Memory leaking with Promise.map concurrency

What version of bluebird is the issue happening on?
Bluebird 3.5.20 with bluebird-global 3.5.5

What platform and version? (For example Node.js 0.12 or Google Chrome 32)
Node.js 8.9.

Did this issue happen with earlier version of bluebird?
As far as I know

I have code that looks like this:
const aBunchOfIds = [ /* a few hundred thousand elements */ ]
Promise.map(aBunchOfIds, async id => {
    const anObj = await getFromDatastore(id);
    const anotherObj = await process(anObj);
    if (isSpecial(anotherObj)) { console.log('so special'); }
}, { concurrency: 1000 });

This dies because node runs out of heap space.  However the following modification resolves the issue:
const aBunchOfIds = [ /* a few hundred thousand elements */ ]
for (let i = 0; i < aBunchOfIds.length; i += 10000) {
    const someIds = aBunchOfIds.slice(i, i + 10000);
    Promise.map(someIds, async id => {
        const anObj = await getFromDatastore(id);
        const anotherObj = await process(anObj);
        if (isSpecial(anotherObj)) { console.log('so special'); }
    }, { concurrency: 1000 });
}

So it seems that Promise.map doesn't free the memory used by its promises until all promises have returned, even when a concurrency is specified.

So it seems that Promise.map doesn't free the memory used by its promises until all promises have returned, even when a concurrency is specified.

That's the queue shrinking and growing - it's a static overhead and not nwe :)
If you run this multiple times it won't grow again - it's just reserving memory in the background so future executions are allocation free.

I'll test it and make sure this is what we do.

I guess it's possible that it's just 100000 * promise_size that is blowing up my heap but that doesn't seem right to me, I suspect that the variables allocated in the functions that promises call aren't getting garbage collected until the whole thing finishes?

Seems to me that as long as memory usage is contained within the callback it gets GCed correctly: https://jsfiddle.net/w03ykabx/3/

Just a heads up that I got "Maximum call stack size exceeded" errors until I finally downgraded this package to 3.5.2
I think it could be related to this issue.

I'm seeing memory-leak issues that are very similar, if not the same.
Came up with the following test which shows the issue clearly:

running below code as-is will result in OOM in a couple of seconds
running code with then() added (see  below) will allow GC to free up mem. Why is this needed?

/*
 Below gives an OOM in a couple of seconds.
 Adding the commented-out then() solves it. Why?
 */
const Promise = require("bluebird");
const obj = {a: "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"};
return Promise.map(new Array(100000), () => {
  return Promise.resolve()
  .then(() => new Array(10000).map(() => Object.assign({},obj))) //consume some mem
  // .then(() => {
  //   //adding this then(), will allow objects to be GC'ed, thus solving OOM-issue. WHY?
  // });
}, { concurrency: 10 })

Nice repro!

@samclearman I believe I've found an easy fix for this:
repro code:
import 'bluebird-global';

const ids = fnThatGetsIds;
let done = 0;
await Promise.map(ids, async id => {
  const record = await getLargeRecord(id);
  if (done % 100 === 0) {
    console.log(done, new Date().getTime() - time);
    time = new Date().getTime();
  }
  done++;
  // starts slowing down after (~2mins)
}, { concurrency: 100 });

This slows down after 2 minutes.
Adding return Promise.resolve(); fixes the issue, and there's no slowdown.
import 'bluebird-global';

const ids = fnThatGetsIds;
let done = 0;
await Promise.map(ids, async id => {
  const record = await getLargeRecord(id);
  if (done % 100 === 0) {
    console.log(done, new Date().getTime() - time);
    time = new Date().getTime();
  }
  done++;
  return Promise.resolve(); // doesn't slow down
}, { concurrency: 100 });

Removing the return causes a slow down, and return null; also causes a slow down.

Thanks @shivaalroy .  Looks like that agrees with what @gebrits was seeing...  @benjamingr, can you comment on whether this is intended behavior or not?

That... makes no sense 😅

I am seeing similar behavior as well. I have a Kubernetes service running with a map with concurrency running every ~6-10 seconds. After a couple hours the memory heap doubles (rinse repeat). Eventually it causes Kubernetes to try and boot up more containers and evicts all of them for lack of memory. When I remove the map command, and loop through them myself with Promise.all the memory issue goes away.

I'm not sure what the problem is. .map will store the result of the mapping function until the entire map has run. If this result takes a lot of memory then you will run out of memory if you cannot hold all the results. If you don't need to store the result to use it from the final mapped array then don't return it from the mapping function.

@petkaantonov then why would this leak memory:
import 'bluebird-global';

const ids = fnThatGetsIds();
let done = 0;
await Promise.map(ids, async id => {
  const record = await getLargeRecord(id);
  if (done % 100 === 0) {
    console.log(done, new Date().getTime() - time);
    time = new Date().getTime();
  }
  done++;
  // starts slowing down after (~2mins)
}, { concurrency: 100 });

I'm seeing the same thing happening with Promise.map() using v3.7.2. I have some logging in place and I'm seeing things slowing down until they just stall before completing. I'm going to give shivaalroy's answer a try. No idea why that would make a difference, doesn't make sense......but worth a shot. Will report back.


New design of In Progress section

https://zpl.io/agzRZDQ
1 - In Progress will be hidden if there is no transactions in Progress
2 - if only one In progress (Receiving/Sending/Maturing) so to present in one line, if more to show in columns (as it now)
3 - order is always Sending, Receiving and Maturing

checked


add postgres newest to travis

Current coverage is 95.50% (diff: 100%)

Merging #1 into master will not change coverage

@@             master         #1   diff @@
==========================================
  Files            26         26
  Lines          1268       1268
  Methods           0          0
  Messages          0          0
  Branches        120        120
==========================================
  Hits           1211       1211
  Misses           40         40
  Partials         17         17

Powered by Codecov. Last update 5bf473b...fd014eb


Use filter_var for email validation

Replaces RegExp used for email validation with more idiomatic filter_var.

Done, thank you! :)


[options] Add a tooltip to Option component

Is your feature request related to a problem? Please describe.
Some options may need extra information, it would be great to have a tooltip to give more info

Describe the solution you'd like
This tooltip property needs to be added to the Option class in options.js file
class Option extends React.Component {
  constructor(props) {
    super(props);
    this.onChange = this.onChange.bind(this);
    this.onChangeToggle = this.onChangeToggle.bind(this);
    this.key = props.storageKey;
    this.type = props.type;
    this.label = props.label;
    this.placeholder = props.placeholder;
    this.tooltip = props.tooltip;

Additional context
We would need to add slds-popover slds-popover_tooltip classes to slds.css

Thank you for handling this one @nshulman !


Cotary Create: Feedback Feb 26th deployed live: https://daocreator-v2.herokuapp.com/

Please provide feedback on latest deployment here https://daocreator-v2.herokuapp.com/.
Remaining todos before shipping:

[x] https://github.com/dOrgTech/DAOcreator/issues/447
[ ] https://github.com/dOrgTech/DAOcreator/issues/442
[x] https://github.com/dOrgTech/DAOcreator/issues/432
[x] https://github.com/dOrgTech/DAOcreator/issues/428

This is things are important however it does not stop the app from being functional. For me this remaining issues are to make it perfect.

@dOrgJelli @pimato @orishim

Looks amazing! Here are some minor things I found:

Layout on mobile is still pretty buggy
Top-Left options pane gets cut off

Thresold Const & DAO Bounty Const don't have up & down arrows like the other numbers.
When editing some fields (Queued Vote Period Limit for example), focus is reset after you type a number. This requires you to click the box again to regain focus so you can continue to type. This is generally caused by excessive setState logic that's unneeded when using observable fields.

orishim:
Still not done:
DAO Name -> Name
DAO Symbol -> Symbol
Auto-bet against every proposal to incentivise curation -> Auto-incentivize proposal curation
Slow/Medium/Fast tooltips

Now that we have days, hours, minutes.. hours should enforce <24 and minutes <60

@orishim can you explain a bit more the second point please ?

When I click on one of the fields with a 0 and then type 7, it ends up saying “07” rather than “7l

[ ] edit and remove member icons should be clickable on hover

@orishim got it I will get my hands to this.

@orishim the issues based of your comments are now done.


Look for improvements in equality checks

Done here: https://github.com/JanEricNitschke/generic-lang/pull/20


[Update Snap] Rarime

Checklist
All items in the list below needs to be satisfied.

[x] Is the summary of the change documented in this ticket?
[ ] Has a MetaMask Snaps team member reviewed whether the changes need to be vetted?
[x] If there are changes that need to be vetted, attach a description and the relevant fixes/remediations to this issue.
[ ] The corresponding pull request in this repo has been merged.

Summary of changes:

Improved UX for the zero-knowledge proof generation prompt and a minor bug fix.

The full diff between the last published version and the new one is here:
https://github.com/rarimo/rarime/compare/2.0.2...2.0.3
For this update, the request was to add the new one and keep the existing versions.
New Version to be allowListed: v2.0.3


Refactor lib/pong.js

I extracted some common code across functions into named functions findChallengeForPlayer and saveChallengeAndUpdatePlayer. I extracted a local function chickenedMessageText in chickenChallenge. And I fixed the gratuitous nesting of callbacks by using promises idiomatically.
The result is that some of the methods, especially chickenChallenge, are easier to read.

This is great! Something I've always wanted to do but never got the time to. :) I'm still reviewing, but looks great! :+1:

:tada:


Signature Override in 16-bit x86 does not distinguish between near and far

Merry Christmas!
Describe the bug
Ghidra uses GenericCallingConvention.guessFromName to resolve OverridePrototypeAction, which returns one of:
public enum GenericCallingConvention {
	cdecl("__cdecl"),
        pascal("__pascal"),
        stdcall("__stdcall"),
        fastcall("__fastcall"),
        vectorcall("__vectorcall"),
}

The GenericCallingConvention is then subsequently used by BasicCompilerSpec.matchConvention, which returns the first calling convention as declared in the cspec which contains the substring (cdecl|pascal|stdcall|fastcall|vectorcall).
Thus as __stdcall16near and __cdecl16near come before __stdcall16far and __cdecl16far in the cspec, overrides to the far calls will be matched to the near convention. There may be similar problems in x86gcc.spec (__cdecl / __cdeclf) but I have not looked into those.
This may also be related to other issues with varargs on 16-bit x86, but I havn't digged deep enough into the source to figure that out
To Reproduce
1.) In a 16-bit x86 binary, apply a function override to a far (__stdcall16far or __cdecl16far) call.
2.) Call is interpreted as near (as they come first in the cspec).
Expected behavior
Signature Overrides are interpreted correctly and respect near/far.
Environment (please complete the following information):
ghidra master (cfaa8b9)

I had similar issues and temporarily solved it by replacing the class GenericCallingConvention with the one mentioned in this link


Error with loading edgelists

File "/Users/nicholasbuser/anaconda3/lib/python3.6/site-packages/graspy/utils/utils.py", line 141, in import_edgelist
for f in files
File "/Users/nicholasbuser/anaconda3/lib/python3.6/site-packages/graspy/utils/utils.py", line 141, in
for f in files
File "/Users/nicholasbuser/anaconda3/lib/python3.6/site-packages/networkx/readwrite/edgelist.py", line 466, in read_weighted_edgelist
encoding=encoding
File "", line 2, in read_edgelist
File "/Users/nicholasbuser/anaconda3/lib/python3.6/site-packages/networkx/utils/decorators.py", line 227, in _open_file
result = func_to_be_decorated(*new_args, **kwargs)
File "/Users/nicholasbuser/anaconda3/lib/python3.6/site-packages/networkx/readwrite/edgelist.py", line 375, in read_edgelist
lines = (line.decode(encoding) for line in path)
TypeError: 'PosixPath' object is not iterable

Hi @NJB44, we need a bit more information to help diagnose this error (for example, I don't know what the code you're trying to run is). Could you provide the information requested here so we can help?

I actually made this. I know think I know the prolem

@j1c can we close?


trace页面刷新报错

官方demo地址http://<IP_ADDRESS>:8080/，进入到trace页面，点击浏览器刷新按钮，提示status=401

English only. And fixed. Please search before you submit an issue, and only based on a demo.


v5.0.1 shows up as untagged-89402b46aa4a3083c564 in HACS

Looks like the release was not tagged correctly.. Not sure if that will impact update order etc in HACS.

Also shows up correctly for me.

After force refreshing check for updates in HACS it corrected..


Allow inserting a step before/after the current step

Currently, you can insert new steps at the end of the currently recorded tour. However, it would be valuable to navigate backwards in the recorded tour, and choose to insert a new step before/after it. Much like you can do with a PowerPoint presentation.

I just added support for adding a step after the current step, as well as re-arranging steps. So I'm going to close this for now and we can track more specific issues in the future 👍


npm view react-router returns no data, npm outdated skips react-router

Version
2.0.0
Test Case
npm view react-router

Steps to reproduce
npm view react-router

Expected Behavior
Should receive a gigantic unwieldy blob of json.
Actual Behavior
Receive nothing.
Steps to reproduce
npm outdated

Expected Behavior
Should be told that my 0.3.1 installation is out of date.
Actual Behavior
Receive nothing.

Confirmed. Wonder if it's something to do with unpublishing that errant 2.0.9-rc release or whatever it was. This is probably an npm bug, though.

@ryanflorence Did something go wrong with the 2.0.1 release? Looks like it's not tagged under npm dist-tag ls react-router.

As @othiym23 says over in https://github.com/npm/npm/issues/11852, latest is set to 0.3.2 which doesn't exist. This can be corrected with npm dist-tag add react-router@VERSION latest.

(Where VERSION is whatever version you want folks to get by default)

@iarna @othiym23 Thanks! I think @ryanflorence tried to tag a release on async-props but accidentally ran npm dist-tag from the wrong repo. I even checked the tags but didn't look at the output closely enough.

Looks like this has been fixed now. @ryanflorence Can you drop the next: 2.0.0 dist-tag when you get a chance?


move handling of updated files outside of git PUSH

ZCL_ABAPGIT_REPO_ONLINE=>PUSH calls ZCL_ABAPGIT_GIT_PORCELAIN=>PUSH which calculates ET_UPDATED_FILES, however this is not git specifc, suggest moving the logic to ZCL_ABAPGIT_REPO_ONLINE
after https://github.com/larshp/abapGit/pull/1769 is merged

not possible, closing
but this is another refactoring looking into the checksum functionality


Fixing problems as reported by clang-check.

- Fixing memory leaks
- Removing unused variables
- Fixing potential division by zero bugs

@sithhell Can this be merged now?

All comments have been addressed.

LGTM, thanks!


Long modal is not scrollable and extends past window

Issue tracker is ONLY used for reporting bugs.

Expected Behavior
If a modal extends past the window, I would expect it to scroll.
Current Behavior
If a modal extends past the window, you cannot scroll down or see the content past the viewport.
Possible Solution
In _modal.scss:
   // Modal adjustments

   .modal {
     z-index: $zindex-modal;
+     max-height: 100vh;
+    overflow-x: scroll;
   }

Before: https://monosnap.com/direct/mInYN2o3UvH2Z0hWGVJOnm3IjZWDsj
After: https://api.monosnap.com/file/download?id=JjPewnilVwzts26Yt2rvhJOR0nQsrw
Steps to Reproduce

Create a modal that is > 100vh

Context (Environment)
I'm trying to build a form in a modal.

我的个人微信18537907120 欢迎添加


Confusing documentation regarding the ext_proc filter

Hi,
I was reading the docs about Envoy's external processing filter (ext_proc) and stumbled upon these two different articles:
https://www.envoyproxy.io/docs/envoy/latest/api-v3/extensions/filters/http/ext_proc/v3alpha/ext_proc.proto
https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_filters/ext_proc_filter
Citing the first one, "this extension is functional but has not had substantial production burn time", I presumed that the filter should be mostly implemented in the latest release (v1.19.0). However, the second article states that "this filter is a work in progress. In its current state, it actually does nothing".
Which one is more accurate? And if it still does nothing, what actually happens when I configure Envoy to use this filter? I ran some tests in a lab and it appears that Envoy doesn't ignore the filter's configuration, but I'm not sure it actually sends the ProcessingRequest(s) to the gRPC service.
Hopefully someone can clarify this.
Thanks.

@gbrail
I think at this point the filter does something, but not sure what the exact implementation state is

The docs in the "ext_proc.proto" file are up to date -- the text there under "Current Implementation Status" correctly describes which features are implemented and which are not, and the configuration fields documented on that page are implemented. (Others in the .proto marked as "not-implemented-hide" are indeed not implemented.)
It looks like the documentation index page for the filter is out of date. I'll submit a PR that updates it to point to the reference page instead.


Add a 'Get a demo' button on Toolpad home page

Duplicates

[X] I have searched the existing issues

Latest version

[X] I have tested the latest version

Summary 💡
We currently have a video and examples to explain how Toolpad can be used. But there would be many users who may have many questions just about getting started on Toolpad, let's remove this hurdle by allowing them to get on a call with us and see Toolpad live in Action.
Link to be used
Later on, we can add a form to get a better idea of user requirements.
Benchmarks:
https://www.dronahq.com/
https://www.tooljet.com/
https://retool.com/
Examples 🌈
No response
Motivation 🔦
No response

Another alternative is to follow https://mui.com/base-ui/, move the getting started instructions lower and a "Get demo" button in the hero section along with "Get started"

I agree it's a good choice! For the bottom section, we can have 2 sections each for Get Started and newsletter.

For the bottom section, we can have 2 sections each (side by side) for Get Started and newsletter.

I meant something like this:

I meant something like this:

My bad, just saw the base UI page again and came here to edit my comment😅. This is perfect!
Ok, let's change it to Book a demo.


Set up roles and permissions after authentication

Hi, @Narzerus
I have an angular application running with a Java back-end. After authentication the server returns a authentication object with assigned roles to the user. But I`m not clear how to inject them to the PermPermissionStore when the login is successful. Can you guys give me some pointers or direct me to an example where such case is implemented.
Thanks

Try with:
angular
  .module('yourApp')
  .config(function($stateProvider, $urlRouterProvider) {
    $urlRouterProvider.deferIntercept();
    ...
  })
  .run(function($rootScope, Auth, PermPermissionStore, $urlRouter){
    Auth.getPermissions().then(function(result){
      PermPermissionStore.defineManyPermissions(result.data, function (permissionName) {
        return true;
      });
      $urlRouter.sync();
      $urlRouter.listen();
    });
  });

@joariasl I think this is useful when the user is already signed in but I think @HarshaSuranjith is asking about how to change this after user login and you have already initiated the permission in app.run


Too much success!

Applies To

[X] Notebooks (.ipynb files)
[ ] Interactive Window and/or Cell Scripts (.py files with #%% markers)

What happened?
When a cell successfully executes, I get a little green check mark to indicate success.  Sometimes these marks keep getting added instead of just re-using the first one.  So I end up with 15+ checks across the bottom of my cell.  This looks weird.

VS Code Version
Version: 1.70.1 (user setup) Commit: 6d9b74a70ca9c7733b29f0456fd8195364076dda Date: 2022-08-10T06:08:33.642Z Electron: 18.3.5 Chromium: 100.0.4896.160 Node.js: 16.13.2 V8: <IP_ADDRESS>-electron.0 OS: Windows_NT x64 10.0.22000
Jupyter Extension Version
2022.7.110 (12 Aug 2022)
Jupyter logs
info 10:59:4.788: Cell 5 executed with state Success
info 10:59:5.79: Execute Cell 6 e:\source\Fig\notebooks\Test.ipynb
info 10:59:5.148: Cell 6 executed with state Success
info 10:59:5.397: Execute Cell 7 e:\source\Fig\notebooks\Test.ipynb
info 10:59:5.443: Cell 7 executed with state Success
info 10:59:5.682: Execute Cell 8 e:\source\Fig\notebooks\Test.ipynb
info 10:59:5.754: Cell 8 executed with state Success
info 10:59:6.203: Execute Cell 9 e:\source\Fig\notebooks\Test.ipynb
info 10:59:6.408: Cell 9 executed with state Success
info 10:59:17.236: Execute Cell 7 e:\source\Fig\notebooks\Test.ipynb
info 10:59:17.274: Cell 7 executed with state Success
info 10:59:17.791: Execute Cell 8 e:\source\Fig\notebooks\Test.ipynb
info 10:59:17.853: Cell 8 executed with state Success
info 10:59:24.426: Execute Cell 8 e:\source\Fig\notebooks\Test.ipynb
info 10:59:24.602: Cell 8 executed with state Success
info 10:59:35.345: Execute Cell 7 e:\source\Fig\notebooks\Test.ipynb
info 10:59:35.380: Cell 7 executed with state Success
info 10:59:35.679: Execute Cell 8 e:\source\Fig\notebooks\Test.ipynb
info 10:59:35.840: Cell 8 executed with state Success
info 11:1:26.181: Execute Cell 5 e:\source\Fig\notebooks\Test.ipynb
info 11:1:26.241: Cell 5 executed with state Success
info 11:1:26.523: Execute Cell 6 e:\source\Fig\notebooks\Test.ipynb
info 11:1:26.550: Cell 6 executed with state Success
info 11:1:26.878: Execute Cell 7 e:\source\Fig\notebooks\Test.ipynb
info 11:1:26.923: Cell 7 executed with state Success
info 11:1:27.330: Execute Cell 8 e:\source\Fig\notebooks\Test.ipynb
info 11:1:27.492: Cell 8 executed with state Success
info 11:41:44.924: Execute Cell 7 e:\source\Fig\notebooks\Test.ipynb
info 11:41:45.26: Cell 7 executed with state Success
info 11:41:45.322: Execute Cell 8 e:\source\Fig\notebooks\Test.ipynb
info 11:41:45.475: Cell 8 executed with state Success
info 11:41:55.639: Execute Cell 7 e:\source\Fig\notebooks\Test.ipynb
info 11:41:55.706: Cell 7 executed with state Success
info 11:41:55.806: Execute Cell 8 e:\source\Fig\notebooks\Test.ipynb
info 11:41:55.956: Cell 8 executed with state Success

Coding Language and Runtime Version
No response
Language Extension Version (if applicable)
No response
Anaconda Version (if applicable)
No response
Running Jupyter locally or remotely?
Local

@logar16 Thanks for filing this. Have not seen something like this before. I'll look at reproing it. Anything in particular that triggers this behavior? Or just something that shows up to you relatively often?

I've just started noticing it recently.  I have recognized a pattern yet.  But I do frequently have exceptions, so many having something around it fail and then succeed gets it in a weird state?  I'll try to pay more attention to when it starts happening.

I also restart my kernel a lot, which may have something to do with it too.


add missing backquote

Issue #, if available: na
Description of changes: missing backquote
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Closing this issue or pull request in advance of archiving this repo. For more information about the decision to archive this repo (and others in the 'awsdocs' org), see the announcement on the AWS News Blog.


i have issue the panel is not login in

i have issue the panel is not login in
when clicking the buttom nothing happin   ( login )  but the page showing fine

Make sure all the files were uploaded to your site.


[BUG] cant create an Alias

In Wallet, top right in Account then Aliases.
When trying to create a new alias the below error is shown;
Error;
{"error":112,"message":"State check failed. Reason: . Fee for CreateAliasTransaction (2000000 in TN) does not exceed minimal value of<PHONE_NUMBER> TN.","tx":{"senderPublicKey":"AmRgG3zG1EywwcSce3uizSYdw31dZFCeK7Wa7qHgCZ34","sender":"3XWgxAo2jvydtuMp3Z8LfGxQmo2SNreB7vb","feeAssetId":null,"proofs":["2AmzosRzNziZLEKiuqVQoCf3cXbaJ5dvfqzTKCnKaUx9jjuUrTWQDULvSA7vdq

This should be tackled by adding a new fee value to this file:
https://github.com/TurtleNetwork/waves-client-config/blob/master/fee.json
ID 11 is a alias transaction. (https://docs.wavesplatform.com/en/ride/structures/transaction-structures/#tokenisation)
And then the wallet should use the fee from this file

ID for createAlias transaction is 10. Fix to fee.json is complete

Confirmed fixed - thank you


Editing a duplicated section with the same prefix-number-letter from the teaching loads tab has wrong instructor

https://user-images.githubusercontent.com/49655167/115163005-b8158280-a074-11eb-92f4-32a027a91db5.mov

I cannot reproduce this issue. It seems to be fixed.

I also cannot reproduce the issue.


Support individual MSP updates for orderer organization

Type of change

New feature

Description
Support individual MSP updates for orderer organization
Related issues
FAB-18063

As suggested in the conversation above, lets merge this for now and refactor the toProto logic later.


Add support for tree consistency check

Through the history of GLM, data files exist where the flash and group IDs do not form a self-consistent set with the corresponding group and event parent ID variables. This PR adds a method to the traversal code for checking for consistency and reporting upon it, and glm-specific support that that corrects for the problem if detected.
Example file:
OR_GLM-L2-LCFA_G16_s20210821014400_e20210821015004_c20210821015014.nc
flash_id  unique count, count without children  52 5
group_id  unique count, count without children  1072 208
group_parent_flash_id unique count, count with no parent  47 0
event_parent_group_id unique count, count with no parent  993 129

Other TODO:

[ ] Check if this causes a performance regression on non-problematic files.
[ ] Add logging for cases where problems are detected.

Running a test on the relatively active last ten minutes of 26 April 2018, I find no speed regression.


Rofi not giving back focus before clipboard adapter script runs, making inserts fail, on Wayland / River

After I installed rofi-emoji on my Alpine with wayland and river, it worked fine for some time, and then it stopped working at some point.
I've checked that clipboard-adapter works:
localhost:~$ riverctl spawn 'echo "😀" | /usr/share/rofi-emoji/clipboard-adapter.sh insert'
localhost:~$ 😀

I've also added debug statements to /usr/share/rofi-emoji/clipboard-adapter.sh:
     echo $0 $@ >>/tmp/rofi-emoji.log
     env >>/tmp/rofi-emoji.log
     echo "input: '$input'" >>/tmp/rofi-emoji.log

before the call to perform_copy, and logs are identical both for riverctl spawn 'echo "😀" | /usr/share/rofi-emoji/clipboard-adapter.sh insert' (which works), and for rofi -modi emoji -show emoji invoked with river hotkey.
Similarly, logs are identical for echo "😀" | /usr/share/rofi-emoji/clipboard-adapter.sh insert and rofi -modi emoji -show emoji invoked from shell.
However, no emojis are actually inserted with rofi-emoji (they're copied to clipboard though).
My only guess now is that maybe the focus is somewhere in the wrong place for rofi-emoji.
I've also tried adding sleep 5 in clipboard-adapter.sh right before the call to perform_insert, and now the emoji selector stays on the screen for these five seconds, implying that maybe the focus is on the emoji selector, and it tries to insert the emoji into itself? But maybe my guess is wrong.

Interesting. This could be a Wayland-specific issue, which means I would require more help in trying to fix it.
The plugin will tell Rofi to hide the main window before executing the script, so the focus should be restored. The fact that the window still shows up for you might mean that Rofi doesn't actually hide the window on Wayland when this function is called.
In theory it could also be an issue with River itself. I wonder if another Wayland implementation suffers from the same issue… :thinking:
That's all I can contribute on this by myself, I'm afraid. I'll tag this as a Help Needed issue to see if there might be someone else on Wayland that has a clue on what to look at.

I have just checked the source code for https://github.com/Mange/rofi-emoji/blob/master/src/actions.c , and it also seems that the only reason for text_adapter_action to wait for clipboard-adapter to return (instead of just creating a separate process with clipboard-adapter and exiting... sorry, I'm not proficient in Linux, so maybe I'm using some words incorrectly) is so that we can reload dialog in case of error?
But in insert_emoji, return value from text_adapter_action is ignored anyway, and it also has this comment: "View is hidden and we cannot get it back again. We must exit at this point."
So maybe it can be fixed in rofi-emoji in an universal way, without requiring any wayland knowledge, by running clipboard-adapter and returning MODE_EXIT immediately, without waiting for clipboard-adapter to complete?
I guess that would involve creating another method in https://github.com/Mange/rofi-emoji/blob/master/src/utils.c next to run_clipboard_adapter, similar but much simpler since it won't have to wait for anything or handle clipboard-adapter exit code. But then again, unfortunately, I don't know anything about Linux or Linux programming.

I've also checked rofi_view_hide source code at https://github.com/davatorium/rofi/blob/next/source/view.c , and it seems that rofi heavily depends on X (something I was not aware of), and rofi_view_hide hides X window, and will not work on Wayland natively.
So my guess is that, when rofi-emoji worked on my system, it was because it was running under xwayland. I don't know what changed, but now it runs natively, so rofi_view_hide does not work, naturally.

[…] it also seems that the only reason for text_adapter_action to wait for clipboard-adapter to return (instead of just creating a separate process with clipboard-adapter and exiting... sorry, I'm not proficient in Linux, so maybe I'm using some words incorrectly) is so that we can reload dialog in case of error?

Good guess, but not quite. :smile:
It's also due to the asynchronous nature of the process communication. We have to:

Make sure the child process is running.
Write the text data to the process' stdin.
Wait to make sure the process has successfully read all the data from stdin.
Make sure the process exits to clean it up / reap the process.

We could work around this by spawning the process, and detach from it, but it might lead to other problems.
We cannot just quit before the process has started working since we're writing the data to it. In theory we could make the script read all the data into a variable, then fork a child that sleeps for a bit, detach it, and then exit the parent script. Rofi would detect the script has exited, close the pipes, reap the process and exit, then the forked child might pick up and execute afterwards.
I think the complexity might not be worth it, sadly.

But in insert_emoji, return value from text_adapter_action is ignored anyway, and it also has this comment: "View is hidden and we cannot get it back again. We must exit at this point."

Yeah, which is a shame. It makes it harder to debug any script errors, but Rofi has cleaned up a lot at this point and cannot be restored.

But also it's just a single emoji. Makes me wonder what was the reason for reading input from stdin instead from an argument.
I see that you did it before in https://github.com/Mange/rofi-emoji/pull/13 (and according to the description, it simplified things a lot), but returned to stdin in the "total feature rewrite" in https://github.com/Mange/rofi-emoji/pull/44 . Just curious why :) because PR description does not explain this.

It just makes it simpler to compose it in other scripts, and for example when I wanted to be able to copy other things like the codepoint. We could also add support for accumulating multiple emojis and copy them all at once.
Some of the issues would not go away even if we went with arguments. We still need to wait for the process to finish in order to reap it.
Maybe trying a Wayland-compatible fork of Rofi could yield some good results…?

Using rofi-wayland on NixOS yields the same results. I figured this was the issue, but it is good to have confirmation.

The same happens on Hyprland
tried rojimoji and it worked perfectly fine.
ig it checks the last focused window instead of the current one as that is rofi.

I don't think this is a good solution but, I run pkill rofi before running the wtype command in my rofi clipboard script.
This is my cliphist clipboard script
#!/bin/sh

case "$ROFI_RETV" in
	"10") echo "$1" | cliphist delete;;
	"11") echo "$1" | cliphist decode | wl-copy;;
	"1") pkill rofi; wtype "$(echo "$1" | cliphist decode)"; exit;;
esac

printf "\x00use-hot-keys\x1ftrue\n\x00no-custom\x1ftrue\n"
cliphist list

I'm now on Wayland myself (Hyprland to be specific), and for me it actually works in some programs without modification, and not at all in some other programs.

Program
Vanilla
With pkill
Async process

Wezterm
:heavy_check_mark:
:heavy_check_mark:
:heavy_check_mark:

Brave
:x:
:x:
:x:

Discord
:x:
:x:
:x:

Slack
:x:
:x:
:x:

Telegram
:heavy_check_mark:
:heavy_check_mark:
:heavy_check_mark:

Obsidian
:boom:¹
:boom:¹
:boom:¹

Firefox
:heavy_check_mark:
:heavy_check_mark:
:heavy_check_mark:

¹ = It types something, but it types the wrong thing. Most emojis end up as a broken character, but sometimes I get East Asian characters typed instead.

Even when running wtype manually on these problematic programs gives no working output with emojis, but they do type out hello when asked to (sleep 2; wtype hello in a terminal, and switch to the other program).
It seems to me that things based on Chromium/Electron won't work, but "native" apps using GTK, QT, etc. works as expected.
Feel free to test this yourself. Here's the different variants I did:

Patches
Vanilla
(I just used the latest release)
  case "$tool" in
  # …
  wtype)
    wtype -
    ;;
  # …

pkill
  case "$tool" in
  # …
  wtype)
    to_type="$(cat -)"
    pkill rofi
    wtype "$to_type"
    ;;
  # …

Async
  case "$tool" in
  # …
  wtype)
    to_type="$(cat -)"
    (
      sleep 1
      wtype "$to_type"
    ) &
    exit 0
    ;;
  # …

I anyone else getting different results? Can you send emojis to these programs using wtype?

I've found some issues upstream to read more at:

wtype having issues with Chromium: https://github.com/atx/wtype/issues/31
Another program investigating why Chromium doesn't work: https://gitlab.gnome.org/World/Phosh/squeekboard/-/issues/244#note_1237206
Wayland protocol issue, on why browsers appear to be doing the wrong thing: https://gitlab.freedesktop.org/wayland/wayland/-/issues/390

This all leads me to believe that the issue is not in this repo, but in some programs and how they handle keyboard input from Wayland.


Only allow alphanumeric characters for passwords

Current behavior:
The admin can create passwords with any characters. When logging in through Sugarizer, only alphanumeric characters are accepted in the password input field.

Fix:

@llaske Implemented requested changes.
1- Exclude capital 'Y' and 'Z' from password validation.
2- Refactor the code by returning the appropriate regex expression from a newly created regex() function.
3- Update localization files.

@llaske please review the PR after modifications.

@tarunsinghal92 please review after modifications.

@llaske please approve if looks good to you!

Nice.


MINOR: update comment in consumeAction

Update comments in consumeAction
Committer Checklist (excluded from commit message)

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

There are a few failed tests unrelated to this PR. Merging it to trunk and 3.6.


Why sign_in(:user, user) not working for ajax requests?

I am trying to sign in a user in an ajax request:
def create
  if user.valid_password?(password)
      sign_in(:user, user, { :event => :authentication })
      ...
  end
end

I could see that after sign_in, user_id is serialized to session, but in the next request, I lost it again, why is that? How could I sign in a user via ajax request?
Thank you very much. I am using Device 3.5.9

Please use the mailing list or StackOverflow for questions/help, where a wider community will be able to help you. We reserve the issues tracker for issues only. Thank you!

@josevalim Thx


use default values if properties are missing

often SVGs are run through optimizers that strip out default values. These optimized SVGs should be compatible with this library.
cc: @HarryStevens

Coverage decreased (-1.0%) to 95.455% when pulling 057516acd390004d8d111c08d02305e9fe511128 on mapbox:handle-defaults into 22f5e66dee8c30e25744b4c3d63b2bbb79dff2d3 on HarryStevens:master.


Add a LICENSE file

To be able to reuse this in other projects you'll have to add a license.
I recommend MIT-license.

If you provde a pull request adding a license, and I merge it. this would solve your issue wouldnt it?


Remove unused dependency

This fixes https://github.com/gotsunami/go-cloudinary/issues/8
This shouldn't break anything since the dependency isn't used in this file.

Any chance you can please merge this?


Skip and Continue Buttons do nothing

Have followed the Readme and I can see the onboarding screens and can swipe between them but when trying to press the Continue or Skip buttons nothing happens other than the button doing the animation to show its been pressed
Running the Example works as intended but it seems to be using an old version of SwiftyOnboard
I have tried copying the code from the Example ViewController.swift into my project and updating the couple of things that have changed but again the Continue and Skip buttons don't Continue or Skip

Worked it out, had to change
func swiftyOnboardViewForOverlay(swiftyOnboard: SwiftyOnboard) -> SwiftyOnboardOverlay?to func swiftyOnboardViewForOverlay(_ swiftyOnboard: SwiftyOnboard) -> SwiftyOnboardOverlay? and then the same for swiftyOnboardOverlayForPosition


Confluence Cloud: Diagrams not visible in new presenter mode

Preflight Checklist

[x] I agree to follow the Code of Conduct that this project adheres to.
[x] I have searched the issue tracker for a feature request that matches the one I want to file, without success.

Describe the bug
Atlassian just very recently rolled out presenter mode to confluence cloud. Great feature, allows true full screen view of a page.
However, when entering into presenter mode, diagrams.net diagrams are not shown.
To Reproduce
Steps to reproduce the behavior:

Go to a page in your confluence cloud install, view a page with diagram on it
Click on presenter mode

Expected behavior
Page shows diagram
Actual behavior
Page does not show diagram
Screenshots
Page in normal view with diagram, choosing presenter mode:

Page in presenter mode:

draw.io version (In the Help->About menu of the draw.io editor):

draw.io version (confluence cloud)

Desktop (please complete the following information):

OS: windows 10
Browser chrome
Version 101.0.4951.67 (Official Build) (64-bit)

Additional context

Have tried: Different viewer settings (simple viewer, etc)
Other macros seem to work (that I have tried), e g: Table, image, expand macros...

Tried to test but I don't see it at the moment. Found "Presenter Mode is currently rolling out so if you don’t see it yet you should within the next few weeks." https://community.atlassian.com/t5/Confluence-Cloud-articles/Presenter-Mode-for-Confluence-is-here/ba-p/2018523
Will try it when becomes visible.


Integrate react-storybook

@jbaxleyiii @samclaridge this may be helpful https://github.com/kadirahq/getstorybook

included in MM


Latest version of plugin mapkubeapis (v0.5.1) is failing with "[signal SIGSEGV: segmentation violation code=0x1 addr=0x280 pc=0x5df11a]"

I noticed since the mapkubeapis v.0.5.1 was released while running the command:
helm mapkubeapis --help
The following error appears:
[root@test-ubi8 src]# helm plugin list
NAME            VERSION DESCRIPTION
mapkubeapis     0.5.1   Map release deprecated Kubernetes APIs in-place

[root@test-ubi8 src]# helm mapkubeapis --help
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x280 pc=0x5df11a]

goroutine 1 [running]:
github.com/spf13/cobra.(*Command).ExecuteC(0x0?)
        /home/runner/go/pkg/mod/github.com/spf13/cobra@v1.8.1/command.go:1055 +0x1a
github.com/spf13/cobra.(*Command).Execute(...)
        /home/runner/go/pkg/mod/github.com/spf13/cobra@v1.8.1/command.go:1041
main.main()
        /home/runner/work/helm-mapkubeapis/helm-mapkubeapis/cmd/mapkubeapis/map_kube_apis.go:26 +0x59
Error: plugin "mapkubeapis" exited with error

I've tested the above plugin with 2 versions of helm, and I get the same error: helm v3.12.3 & helm v3.15.4 (latest) !
When I tested a previous version of this plugin like v0.5.0 which is actually downloading v0.4.1 instead (so there's no downloadable v0.5.0 ?!), the above error is not appearing anymore:
[root@test-ubi8 src]# helm plugin install https://github.com/helm/helm-mapkubeapis  --version v0.5.0
Downloading and installing helm-mapkubeapis v0.4.1 ...
https://github.com/helm/helm-mapkubeapis/releases/download/v0.4.1/helm-mapkubeapis_0.4.1_linux_amd64.tar.gz
Installed plugin: mapkubeapis
[root@test-ubi8 src]# helm plugin list
NAME            VERSION DESCRIPTION
mapkubeapis     0.4.1   Map release deprecated Kubernetes APIs in-place
[root@test-ubi8 src]# helm mapkubeapis --help
Map release deprecated or removed Kubernetes APIs in-place

Usage:
  mapkubeapis [flags] RELEASE

Flags:
      --dry-run               simulate a command
  -h, --help                  help for mapkubeapis
      --kube-context string   name of the kubeconfig context to use
      --kubeconfig string     path to the kubeconfig file
      --mapfile string        path to the API mapping file (default "/root/.local/share/helm/plugins/helm-mapkubeapis/config/Map.yaml")
      --namespace string      namespace scope of the release

Thanks for the issue. I was able to replicate the problem. I suspect I did not see this before because of a lack of testing with a completely fresh install.

I should be able to pick this one up this week.


[BEAM-12140] Update artifact information when staging artifacts to gc…

…s for Dataflow
Please add a meaningful description for your change here

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Choose reviewer(s) and mention them in a comment (R: @username).
[ ] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[ ] Update CHANGES.md with noteworthy changes.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.

GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI.

R: @robertwb

LGTM. Thanks.

Run Java PreCommit


Improve CMake build and install

This change removes the ability for developers to choose which C compiler they wish to use, and breaks building via gcc according to Travis CI. Both of those issues ought to be addressed before landing this.

No they just force you to use the default options instead of rolling your own. Use CMAKE_C_COMPILER instead. Same applies for BUILD_SHARED_LIBS.

And yes I can fix Travis.

@dfellis Travis is fine. What you are seeing are clang-tidy checks that failed. There are worth fixing anyway.

And the error stems from the coverage being broken, not the emitted warnings. See the end of the build log.
Capturing coverage data from /home/travis/build/uber/h3
Found gcov version: 4.8.4
Scanning /home/travis/build/uber/h3 for .gcda files ...
geninfo: ERROR: no .gcda files found in /home/travis/build/uber/h3!

IDK how that was introduced but I didn't touch the coverage stuff.

You'll note that the other PR up right now did not have code coverage failures for GCC. Despite your claim, this change does currently break the coverage reporting.

OK duly noted. Let me research this issue.

Coverage remained the same at 100.0% when pulling 28d181274c12d3509f18df7d58f03d6c74c340ac on isaachier:cmake-improvements into d0444e57867427d82c0cd9b2557137c85894de1f on uber:master.

Thanks for updating with the README and CHANGELOG updates.


Enable isolation of Hypershift Control Plane workloads

Adds tolerations and soft affinity rules to control plane workloads to
enable isolation of nodes dedicated to running control planes in general
or workloads for a specific cluster.

lgmt just a suggestion https://github.com/openshift/hypershift/pull/421/files#r692254692

@enxebre added unit tests
/test-aws-pooled

/test e2e-aws

thanks!
/lgtm


Looking for ideas to speed up Ruby installation

I want to make Ruby installation blazing fast in frum.
Here's a benchmark.

Only way to make installation of Ruby blazingly fast would be to provide statically pre-compiled versions for download. Should be possible. That's eg. how traveling ruby creates redistributable Ruby packages.


Integrate with JFR

https://developers.redhat.com/blog/2020/08/25/get-started-with-jdk-flight-recorder-in-openjdk-8u#the_jdk_flight_recorder_api
Ideas:

trigger start/end events for each workflow step in the execution (i.e, changelog, checksum, release, etc)
disabled by default when running with JVMs that do not support JFR

Questions:

JReleaser offers many options for running the CLI, one of them is via native executables built with GraalVM Native Image. Any concerns with setting up and running JFR in this mode?

cc: @gunnarmorling @jonatan-ivanov

via native executables built with GraalVM Native Image. Any concerns with setting up and running JFR in this mode?

Nope, this should just work (TM). The JFR recording engine is available in native binaries by now, and while most built-in event types are not supported yet, custom ones -- like the case with the JReleaser events -- are.

@gunnarmorling thank you for confirming. We might get a chance to test custom events via JfrUnit 😉

Ha yeah, most certainly. That would be cool!

This has been moved outside of jreleaser/jreleaser. See https://github.com/jreleaser/jreleaser-jfr-extension


Additional scrape config docs

More docs

Wow, this is really nice, thank you so much! It’s clearly written, to the point and all things that are important are noted. Nothing else I can say, lgtm :+1:.


Export helper functions

The eox-map offers some nice self-contained convenience functions (e.g. getFlatLayersArray()) that would be nice to import and use in other modules, without having to import the entire eox-map. Example: https://github.com/EOX-A/EOxElements/pull/635
TODO: replace copy in timecontrol with exported function.

Will be part of refactoring of eox-map, right ?

The current plan of the EOxMap is to not change the current API during the refactoring and have a couple of high-priority issues (like this) to implement right after the refactoring is complete.


Sort request list in dropdown of "Response -> Body attribute" tag editor

When I want to insert a tag using "Response -> Body attribute", in the list of all requests in the dropdown, the requests are not sorted like in the sidebar.
I'd like the requests in the dropdown list to be sorted like in the sidebar.
I often sort the requests as to group them by functionality, and it's hard to navigate through 30+ requests to find the one I need.
Here's how the dropdown list looks like:

Here's the list from the sidebar. Notice that that the "/config" request appears in the first place, which is different from the list displayed in the dropdown.

Hey guys. I'm looking at this but I got a little bit confused.
Are the sidebar items sorted?
I think the sidebar items sort is still under work #2594

The sidebar is sorted - and by sorted I mean ordered the way I rearranged the items - The way I want it to be ordered.

The sidebar is sorted, but the PR you referenced adds the ability to automatically sort by a particular condition. Regardless, manual sorting and automatic sorting will alter the metaSortKey property that exists on a request and a request-group. You should be able to use this sortKey to decide in which order to show the requests in the drop-down.

@antoine29, let me know if you're still looking into this issue. Since I'd worked on a similar one, I had a chance to investigate this one as well.

Hi, if this is still available I'd like to also give it a try. :)

@cobwebsonsale If you're up for it, I have a working code now implementing the default/automatic sorting based on the metaSortKey maybe you can add on to it with the manual sorting as well if we're pushing through with that. Let me know your thoughts on this!

@reginaalyssa I had a branch closing this issue as well lol. I was waiting on @antoine29 to know if it was okay for me to submit a PR for it. :D
For what it's worth, the automatic sorting being added in the other issue will not change things here as it uses the same metaSortKey field.

@cobwebsonsale Oh no sorry about that! I opened a PR here but I can close it if you already have another branch/PR open as well to prevent duplicates. I'm new to contributing to open source so I'm not entirely sure yet what I'm doing or if what I added was correct although it seemed to work on my local environment.

I'm afraid just a simple sort on metaSortKey would not be enough here. The requests within a request group have their own metaSortKey for their sorting within the group. You can checkout this commit on cobwebsonsale:feature/sort-requests-in-tag-editor for reference if you want.

Ohhh I think since it's already been built, I'll just close my PR. Thank you for the reference though, appreciate the guidance on this. :)

hey guys
Sorry for the delay, it's been a busy week for me
You're right @cobwebsonsale, a metaSort key sorting is not enough to get the same sort as is in the sideBar (due to the groupRequests case). But I think I got an approach to get it, I already opened a PR for your consideration :D

Thanks folks! @cobwebsonsale feel free to review @antoine29 PR and suggest any changes or ideas that you had in mind from your investigation. 🤗
@reginaalyssa welcome! Feel free to browse issues with the label "Good First Issue", there are still lots of issues that don't have any conversation yet. Also, be sure to read the contribution guide!


Support install tools on multiple machine at the same time

For example, we could take advantage of Ansible or SSH to do that.
A sample usage might be: hd install k9s --target <IP_ADDRESS>,<IP_ADDRESS>

Very cool idea. This would be great !

Do you use this project often? Hopefully it could help you.


Pixel perfect transforms

Since pull request #50 we are unable to have pixel perfect values.
Round to one decimal should be the default behaviour for performance issues but we should have the capability to get pixel perfect values.
This is especially needed when the parallax is applied on small paragraphs (it avoids blurry texts).
I also made a pull request if needed (i increased decimal precision to 2 decimals for default behaviour).

Thanks for the update. I haven't had a chance to experience this issue, but I'll take a look in a bit.
So far on the demo page (https://dixonandmoe.com/rellax/) it seems to work pretty well for me, but I'm on Chrome/Safari on a Mac, so it's likely worse on Windows or Linux setup

Sure ! Font rendering on windows is a little bit different.
Thank you for your nice work by the way 👍

@glafarge Did the PR break the pixel perfect transforms?

@moeamaya no ! Everything is ok :)
My mistake.... "Font rendering WAS different"


Dapr init certificate signed by unknown authority

root@192 dapr]# dapr init
⌛  Making the jump to hyperspace...
⚠  Failed to get runtime version: 'Get "https://api.github.com/repos/dapr/dapr/releases": x509: certificate signed by unknown authority'. Trying secondary source
ℹ  Installing runtime version 1.6.0
⚠  cannot get the latest dashboard version: 'Get "https://api.github.com/repos/dapr/dashboard/releases": x509: certificate signed by unknown authority'. Try specifying --dashboard-version=<desired_version>
⚠  continuing, but dashboard will be unavailable
❌  Downloading binaries and setting up components...
❌  error downloading daprd binary: Get "https://github.com/dapr/dapr/releases/download/v1.6.0/daprd_linux_amd64.tar.gz": x509: certificate signed by unknown authority

@jyller
In order to proceed further please provide below information -

Are you getting this issue consistently?
Are you able to download the tar files directly with your browser from this location - https://github.com/dapr/dapr/releases/tag/v1.6.0
If you are behind any proxy or vpn then can you verify once by disabling it.


[TypePerfect] Skip self on NarrowPublicClassMethodParamTypeRule

Closes https://github.com/rectorphp/type-perfect/pull/3

All checks have passed 🎉 @TomasVotruba I am merging it ;)

Thank you 👍

thanks!


vwc-textarea scroll bar in Windows looks bad

Describe the bug
Using  in Windows, when the user types long text, the scrollbar looks bad + there's a box-shaped object at the bottom of the scrollbar. On Mac, it looks well.
To Reproduce
Use  with long enough text in Windows.
Expected behavior
Should behave the same as in Mac.
Screenshots
Mac (good):

Windows (bad):

Desktop:

OS: Windows
Browser: Chrome

these are OS/browsers' specifics. not styled by the component

@yinonov sure, but we can style them if we want :)

@yinonov sure, but we can style them if we want :) The question is if it worth the effort

this type of styling usually involve tweaking and hacks and are not throughly defined or specified.
The complexity out-cost the reward.
closing this as is not a component related issue. please reopen if you find it still needs attention


Add support for speedscope format

Summary
Add support for speedscope format when capturing stacks.

Release Notes Entry
Add support for speedscope format when capturing stacks.

/backport to release/7.x


dnd-drop prevents dnd-moved from firing #86

Added dnd-inserter so default insertion code can optional be overriden

I  have been asked to push this

I modified dnd-drop so that you can return true, which will prevent the directive from inserting any elements. This way you can handle the insertions yourself.


setting to turn off tooltips in explorer pane

Tooltips on filenames in the explorer pane are annoyingly obtrusive, obscuring the file below the hovered one and often code as well. Additionally, they are of low value. I rarely need to know a file's full path when I'm working in a known repo.
PLEASE provide a setting to turn these tooltips off.

This is so annoying. It blocks the view of other files as well.

I agree with hansifer. Please turn this feature off if you don't want to fix it. Users know where their repository is without this distracting redundancy.

I agree with this frustration.  I'm usually a vim user, but the project that I'm contributing to atm requires vs code.  This has been driving me nuts, especially being unfamiliar with the repo directory structure and the IDE.  I'm constantly having to focus on another element to be able to dismiss the hover.

Ok, let's reopen and we might add this in the future. Also there was a duplicate issue.

I'm very glad this issue was reopened.
I'd really like to have an option to disable hovers in explorer completely.
Just out of interest: What benefit do users get from the information provided in said hovers? It seems pretty redundant to me too. Is there any pointer to the initial requirement or why this would be useful?

Is there a way to change the format of it?  The weird thing is I don't ever recall noticing this before, but now it's all I can see.  I'm thinking something may have changed the look of it, but I've removed all preferences for workspace and user and it still looks the same.

As a developer, I have zero use for these.
But as a tutorial creator, they are downright annoying. I find myself editing around these, trying to cut them out, re-recording portions, etc.

As a developer, I have zero use for these.
But as a tutorial creator, they are downright annoying. I find myself editing around these, trying to cut them out, re-recording portions, etc.

I wish they would just fix this issue. It has been reported in the past by another user: #82775. It's incredibly annoying, and sometimes the tooltip wraps over multiple lines (See #115653).

Agreed. Breadcrumbs already does a great job of showing me where I am in the file tree. I find the file path tooltip pop-ups to be really visually distracting.

This is really hard when doing file traversing in tutorials/screencasts. I don't think anyone uses this it just makes stuff complicated to edit afterwards.

@isidorn Any chance you could take a second look at this? Several people have expressed that this hover tool-tip is not useful in day-to-day programming work. If you could help us understand some of the challenges that are making this issue out-of-scope, perhaps we could put our heads together and come up with some solutions to overcome them?

Would something like this work?
diff --git a/src/vs/workbench/contrib/files/browser/views/explorerView.ts b/src/vs/workbench/contrib/files/browser/views/explorerView.ts
index 8aae18473ee..f7e7b2ff6f5 100644
--- a/src/vs/workbench/contrib/files/browser/views/explorerView.ts
+++ b/src/vs/workbench/contrib/files/browser/views/explorerView.ts
@@ -264,7 +264,7 @@ export class ExplorerView extends ViewPane implements IExplorerView {
 		const setHeader = () => {
 			const workspace = this.contextService.getWorkspace();
 			const title = workspace.folders.map(folder => folder.name).join();
-			titleElement.textContent = this.name;
+			titleElement.textContent = '';
 			titleElement.title = title;
 			titleElement.setAttribute('aria-label', nls.localize('explorerSection', "Explorer Section: {0}", this.name));
 		};

I have applied this functional request again, I hope everyone can vote for this request, link:#173236

I have applied this functional request again, I hope everyone can vote for this request, link:#173236

Tooltips on filenames in the explorer pane are annoyingly obtrusive, obscuring the file below the hovered one and often code as well. Additionally, they are of low value. I rarely need to know a file's full path when I'm working in a known repo.
PLEASE provide a setting to turn these tooltips off.

I have applied this feature-request again, I hope everyone can vote for it, link:#173236

This is so annoying. It blocks the view of other files as well.

I have applied this feature-request again, I hope everyone can vote for it, link:#173236

I agree with hansifer. Please turn this feature off if you don't want to fix it. Users know where their repository is without this distracting redundancy.
I have applied this feature-request again, I hope everyone can vote for it, link:#173236

I agree with this frustration. I'm usually a vim user, but the project that I'm contributing to atm requires vs code. This has been driving me nuts, especially being unfamiliar with the repo directory structure and the IDE. I'm constantly having to focus on another element to be able to dismiss the hover.

I have applied this feature-request again, I hope everyone can vote for it, link:#173236

Ok, let's reopen and we might add this in the future. Also there was a duplicate issue.

I have applied this feature-request again, I hope everyone can vote for it, link:#173236

I'm very glad this issue was reopened. I'd really like to have an option to disable hovers in explorer completely.
Just out of interest: What benefit do users get from the information provided in said hovers? It seems pretty redundant to me too. Is there any pointer to the initial requirement or why this would be useful?
I have applied this feature-request again, I hope everyone can vote for it, link:#173236

Here's a workaround that worked for me; a broken setting to the workbench.hover.delay in User/settings.json:
    "editor.hover.enabled": false,
    "workbench.hover.delay": null,

Here's a workaround that worked for me; a broken setting to the workbench.hover.delay in User/settings.json:
    "editor.hover.enabled": false,
    "workbench.hover.delay": null,

This didn't work for me in VS Code v1.91.1 build: f1e16e1e6214d7c44d078b1f0607b2388f29d729

Somebody has more pull than the rest of us.

Here's a workaround that worked for me; a broken setting to the workbench.hover.delay in User/settings.json:
    "editor.hover.enabled": false,
    "workbench.hover.delay": null,

THANKS!!

Here's a workaround that worked for me; a broken setting to the workbench.hover.delay in User/settings.json:
    "editor.hover.enabled": false,
    "workbench.hover.delay": null,

This method is effective, but it also disables the popup on the code itself.

 "workbench.hover.delay": null,

use this to disable tooltip in explorer and other stuff but not editor / code


Recursive functions returns an error.

Where is the recursive function? And what is the error you get in the console?

The error is the result of the formula, by recursive I mean that lines/colums multiplication, etc doesn't work with more than 2 :/

Yes I saw the error in the table, but a more detailled one should have been logged into the console. Anyway, I'll just copy your formula and see by myself. 🙂


DSO handling for like-named libraries is broken

Android framework version
net9.0-android
Affected platform version
.NET 9 Preview 5
Description
It crashes
Steps to Reproduce
Run the following project in release mode with .NET 9 Preview 5 workloads.
Repro: https://github.com/daltzctr/maui-dotnet9-crash
Did you find any workaround?
Disable AOT
Relevant log output
No response

So, I've been pondering how to fix this issue on our end and I don't see a way to get rid of the ambiguity involved here.  Here's what's going on:
We have two input items:

SkiaSharp.dll, the managed library
libSkiaSharp.so, native library used by the managed one

At build time, the AOT compiler adds a third item, the AOT image generated from SkiaSharp.dll, which is written to file named SkiaSharp.dll.so and packaged by us under the libaot-SkiaSharp.dll.so name.
As part of the build, we mutate the input shared library name and generate an xxHash for each variation.  Then, at the runtime, when MonoVM asks us to load a native library, we calculate the xxHash and look it up in a table generated at build time.  This works very well, except in this scenario we have an ambiguity:
        %struct.DSOCacheEntry {
                i64 u0x12e73d483788709d, ; from name: SkiaSharp.so
                i64 u0x3cb282562b838c95, ; uint64_t real_name_hash
                i1 false, ; bool ignore
                ptr @.DSOCacheEntry.23_name, ; name: libaot-SkiaSharp.dll.so
                ptr null; void* handle
        }, ; 71
        %struct.DSOCacheEntry {
                i64 u0x12e73d483788709d, ; from name: SkiaSharp.so
                i64 u0x43db119dcc3147fa, ; uint64_t real_name_hash
                i1 false, ; bool ignore
                ptr @.DSOCacheEntry.7_name, ; name: libSkiaSharp.so
                ptr null; void* handle
        }, ; 72

Input names of SkiaSharp.dll.so and libSkiaSharp.so were at some point mutated to the same form of SkiaSharp.so - a reasonable mutation, because managed code may refer to libSkiaSharp.so using the [DllImport ("SkiaSharp")] attribute and so MonoVM will asks us to load SkiaSharp.so.  However, the Mono JIT will at some point load the SkiaSharp.dll library and try to find its AOT image, resulting in request to load SkiaSharp.so as well!  This time, however, MonoVM wants to find what we have packaged as libaot-SkiaSharp.dll.so and we have a conflict.
Putting aside the fact that the lookup table should not have any entries with the same hashes, we have a decision to make when MonoVM asks us to dlopen a library named SkiaSharp.so.  There are two contexts in this case:

We're being asked to do so as part of the P/Invoke mechanism.  This is, essentially, not ambiguous since we know Mono wants the "real" library, not the AOT image
The dlopen hook in our runtime is invoked by MonoVM to load the shared library, but we have no idea what's the purpose - it can refer both to libSkiaSharp.so (for some reason) and to libaot-SkiaSharp.dll.so and we can't resolve that ambiguity without more context.

The immediate solution, and one which I'm going to implement now, is to completely ignore libaot-SkiaSharp.dll.so when building the app - we won't package it, we won't load it when Mono JIT asks for its AOT image.  Instead, we will in this case load the libSkiaSharp.so library, and once this dotnet issue is fixed, MonoVM's JIT will simply ignore the library, finding that it's not an AOT image.  This is reasonable, because the application can work just fine without the AOT image loaded, but it cannot work without libSkiaSharp.so loaded (all the p/invokes would fail).
The better solution is to avoid the ambiguity.  In order to do that, I think the best way would be if Mono JIT asked to load aot-Assembly.so when it loads Assembly.dll and looks for its AOT image - this could be implemented only on Android or it could be used on all the platforms.  Furthermore, AOT image loader should then refrain from asking for other permutations on the name, i.e. it should not follow with the attempt to load Assembly.so etc.
/cc @lambdageek

the Mono JIT will at some point load the SkiaSharp.dll library and try to find its AOT image, resulting in request to load SkiaSharp.so as well

I'm not sure this is true.  Unless I'm completely misreading the code, the name we ask for is assembly->image->name + ".so":
https://github.com/dotnet/runtime/blob/e3363265b20905a55f4c6a7560f70150692548f7/src/mono/mono/mini/aot-runtime.c#L2049
That is the first thing we try to find is SkiaSharp.dll.so  which does not conflict with the native libSkiaSharp.so

In order to do that, I think the best way would be if Mono JIT asked to load aot-Assembly.so when it loads Assembly.dll and looks for its AOT image - this could be implemented only on Android or it could be used on all the platforms.

I think if we were to implement this, I would suggest something like mono-aot://assembly.dll and then Android SDK's native loader hook could resolve that however it wants.
(This code path would be primarily android only - ios and wasm use static linking for AOT images so they never do the dlopen call at all)

Furthermore, AOT image loader should then refrain from asking for other permutations on the name, i.e. it should not follow with the attempt to load Assembly.so etc.

I think we can probably add a pair of new flags to mono_dl_open - something like MONO_DL_EXACT_NAME | MONO_DL_FALLBACK_ONLY  that would just pass the name to the native loader fallback function and not attempt a native dlopen at all
I'll add a comment to https://github.com/dotnet/runtime/issues/104397

@lambdageek I'll get to working on this this week, will log everything relevant and we'll see what's what.  But I think the runtime requests SkiaSharp.so, which causes the whole confusion.

With regards to mono-aot:// - can we make it as short as possible? If you want to follow the "protocol" syntax, can we make it aot://?  The reason I ask is that we calculate the xxHash from the string, and I'd like it to take as little time as possible, even if it saves 1.23 cycles :)

Any status update on this?

As https://github.com/dotnet/runtime/issues/104397 is still open, I can't implement the original plan as described above but I'll see if I can come up with a temporary workaround until the runtime issues are fixed.

PR #9117 implements a new approach to fixing/working around this issue (the runtime changes @lambdageek is working on are still needed and useful) - it splits the "regular" DSO cache and AOT DSO cache into separate sets.  This way we avoid ambiguities like the one in this issue.  The PR knows when it is being asked to find a shared library for a p/invoke (this is done via the p/invoke override MonoVM hook, so Mono itself doesn't load the DSO in question) and when Mono might be asking to load the AOT DSO.  In the latter case, the PR first checks the AOT DSO cache for a match and then the "regular" cache, as we know p/invoke calls won't be going along this code path.
Attached are binaries from the PR build which contain the changes.  @daltzctr to test them, you'll need to find location of the .NET for Android SDK on your disk and replace Xamarin.Android.Build.Tasks.* with the version from the zip below and then find instances of libmono-android.debug.so and libmono-android.release.so in the SDK tree and replace them with the corresponding ABI versions from the zip below.
The test app doesn't crash for me with those changes, it however crashes with something else:
07-18 18:58:33.318 11133 11133 F mono-rt : [ERROR] FATAL UNHANDLED EXCEPTION: System.MethodAccessException: Method `Android.Runtime.AndroidEnvironmentInternal.UnhandledException(System.Exception)' is inaccessible from method `AndroidX.Fragment.App.Fragment.n_OnCreateView_Landroid_view_LayoutInflater_Landroid_view_ViewGroup_Landroid_os_Bundle__mm_wrapper(intptr,intptr,intptr,intptr,intptr)'
07-18 18:58:33.318 11133 11133 F mono-rt :    at AndroidX.Fragment.App.Fragment.n_OnCreateView_Landroid_view_LayoutInflater_Landroid_view_ViewGroup_Landroid_os_Bundle__mm_wrapper(IntPtr jnienv, IntPtr native__this, IntPtr native_inflater, IntPtr native_container, IntPtr native_savedInstanceState)

This is a very weird exception, which might have to do with marshal methods support in our runtime.  If you hit the same issue, disable marshal methods by setting the AndroidEnableMarshalMethods MSBuild property to false
binaries.zip


Subject encoding fix

There is an issue with encoding of email's subject - https://github.com/lasselindqvist/robotframework-imaplibrary2/issues/24

Can you squash all the commits into one?
How did you test this change?

Can you squash all the commits into one?
I'll try.
How did you test this change?
We use emails with different languages on our project and it works.

@lasselindqvist what do you think?

Squashing did not go as planned, but I will do a Squash-merge. I will try to see if I can release this already today or at least this week.

Thanks in advance!


Is there any an end to end working example for doing windows authentication using identityserver4?

Most of the places refers  to the following links:
http://docs.identityserver.io/en/release/topics/windows.html
https://github.com/IdentityServer/IdentityServer4.Quickstart.UI/tree/release/Quickstart
But these examples doesn't seem to work as is. Can you please point to a better documentation?

That's the best docs we have.