Security concern with Unicode bidirectional characters

Code Project highlighted this article in its Daily News bulletin today. Although it's nothing new - the Go community have been aware of it since 2017 - I thought it was worth bringing it to everyone's attention.
The following simple example, which uses the Unicode right-to-left override character (U + 202E), illustrates the concern:
var v = "my-text.\u202ecod.exe"
System.print(v)

This actually prints as my-text.exe.doc making it look like a doc file when in reality it's an exe!
I'm not suggesting we should try and do something about this in Wren itself - I don't know what we could do anyway. We'll just have to leave it to the host compiler and/or tools.
However, one thing is clear. If anyone has any lingering doubts about the wisdom of using unrestricted Unicode identifiers (#948), this is yet another reason why it would be a bad idea.

Rust disallows the use of those codepoints without escaping in code since 1.56.1, which is a fairly good solution IMHO to the problem.

Not sure if my comment is relevant, but I think while it is something to be
aware, I think it is first a context usage problem.
While it can have some impact on right to left languages users, I don't
think every text context should allow to mix text directions. At minimum
every identifiers (and by extension filenames) should not allow them for
security reasons, and they should be represented as raw/escaped, not as
their utf compliant representation. So basically it is more an editor
problem, than a language concern.

It is indeed a trivial solution, though I find it not really civilized
one...

Well the simple solutions are often the best ones and, if we were to do something, I think that the Rust solution is well worth considering.
Now that the problem has been publicized, it will be interesting to see whether some sort of consensus emerges amongst the major languages on how best to deal with it.

Well the biggest issue is that because of that Unicode character (and
probably a few others like BOM and accent modifiers) it invalidate UTF as
being a character encoding and make it a format encoding. So to me, it is
more an editor problem. Any sane editor should display formatting modifiers
and not render them (or at least be able to allow to switch between modes).
At the end of the day, UTF as a binary format is successful, but the
interpretation of the information it transport is becoming a failure as
time pass.

This is probably right, and editors do (some, at least) provide options to control that, but the reality is that many (like GitHub reviews, for example) don't, and not everyone set these settings. So, the question is: do we want to expose our users to risk?

It's interesting to read here what the Rust team have actually said and are doing about this issue.
With Rust already beginning to nibble at their lunch, the C/C++ standards committees may feel that they should be seen to be doing something about this too.
Apparently there are 9 code-points which are involved with text direction, in two blocks of 5 and 4 but I wonder how many coders actually know this and, if their editor allows it, would examine imported source code to see if they're present? I didn't realize these code-points even existed until the issue came up in Go four years ago.

However, one thing is clear. If anyone has any lingering doubts about the wisdom of using unrestricted Unicode identifiers (#948), this is yet another reason why it would be a bad idea.

Actually, it is not clear. What has that to do with an identifier? You used a string as example, refering to a file name outside of the program. That has nothing to do with identifiers.

The issue here is about allowing more characters for identifiers. Since,
since we don't have an UTF-8 library dependency, we can't rely on it to
classify characters. So this is mostly the real problem.

I'm going to close this issue as I don't think personally it's something we should try and address from Wren - it's more a problem for the host.
If anyone strongly disagrees, then I'll reopen it again.


Add custom chains

Description
This PR:

Adds "Add Custom Chain" button to the NetworksDropdown
Implements a basic form as modal to submit the custom chain
Lifts the wagmi client to zustand store
Adds custom chains to localStorage when the user adds them
Saves the custom abi to localStorage when the user submits a valid JSON string
Divides NetworksDropdown into separate pieces(component, utils file)

Known issues:

[ ] If the rpc for a custom chain is wrong and the user tries to load a contract on that chain the app acts weird
[ ]

_Closes #97 #128

Nitpick: If you add a custom chain with the same chainId of a viem chain, we showing the "delete" icon also to the viem chain.
It deletes it visually, but on reload we show the viem chain again, so no big deal.
Maybe the use case doesn't even make sense, ignore if you feel like it's no worth to fix.

I'm having problems with Heimdall in a Sepolia contract that is working fine in prod. Maybe I got something wrong I'm in my configuration, but it's working fine with other contracts.

Contract: 0xFB30C0790128b97e3aC540E6124e512E37c47D00
Network: Sepolia

  Screenshoot

Also I feel maybe we should tweak the UI from this on big screens :)

Thanks @portdeveloper!! I was just doing basic testing and when you make transaction the UI keeps showing loading notification and never updates / refetch the Contract Readonly variables, although the transaction receipt is shown :

Example image :

Notice that it, it showed transaction receipt dropdown but still the Transaction notification is in loading state :

To test try doing the transaction here http://localhost:300/0xE009aea21af005e6B531B5f4a8f909C64A0c596d/11155111?methods=setGreeting

but I'm feeling maybe we should have separated this in 2 PRs, one for custom chains and another for the local storage ABI (which is a great feature to have btw!!)

Yeah I agree, Port could you please remove the localstorage changes from this PR? I think it will be easy to review this PR and regarding localstorage ABI I think we could discuss / brainstorm things like  https://github.com/BuidlGuidl/abi.ninja/pull/129#discussion_r1667702716 in a more focused way in other PR, it is also kind of related #94

Ohh regarding this https://github.com/BuidlGuidl/abi.ninja/pull/129#issuecomment-2213130215
Maybe I think that issue is because we are use wagmiConfig from the file, instead now we should use the wagmiConfig from useGlobalState in useTransactor?

I'm having problems with Heimdall in a Sepolia contract that is working fine in prod and [main] branch on local.

The usual route of using the home page and then clicking decompile with heimdall works when I try it:
https://github.com/BuidlGuidl/abi.ninja/assets/108868128/15c79f5b-fb5e-4b3e-ae46-b3800b765830
Maybe the commits I did above fixed it
But your question made me realize that we should probably handle the following case as well.
https://abi.ninja/0xFB30C0790128b97e3aC540E6124e512E37c47D00/11155111
when the user goes to this link s/he should have the change to decompile the contract.

Thanks @portdeveloper, Looks great!!  Let's wait for Pablo to test it nicely 🙌

Regarding :

1
2

I think we could do better on UI / UX in [contractAddress]/[networks] page. Maybe we could start talking with Andrea on design and create a PR as soon this is merged.
The UX flow (I think) can be improved in img 1 is similar to homepage we should give the user to decompile with Heimdall or input custom ABI
For img 2 (also can be implemented in homepage add chain modal) :
As soon as the user types the chainId in first field we could try to fetch details from ethereum-lists/chains (its an well maintained repositry also used by many popular website like https://chainlist.org etc) will also mostly solve known issue mentioned in https://github.com/BuidlGuidl/abi.ninja/pull/129#issue-2389092576, We could tweak the UX flow but I see ethereum-lists/chains improving it in some way or other.

TYSM for the tweaks @portdeveloper! I think it's working nicely now and then we can focus on localstorage ABI.
I found some issue with ENS resolving:

Contract address field in homepage is not resolving 0x0eD8fa0aE29b6dF59f755F285667DFf5DF97bd6b ENS (with main branch its showing nicely grants.buidlguidl.eth)
Same for Contract field in "Contract overview" for this same contract: http://localhost:3000/0x0eD8fa0aE29b6dF59f755F285667DFf5DF97bd6b/1
In "contractData" it should also show "ensContract" field as reverse.ens.eth

TYSM @portdeveloper !! and @Pabl0cks for testing!! Also tested and everything seems to work 🙌
Just pushed a couple of small commits. Regarding https://github.com/BuidlGuidl/abi.ninja/pull/129/commits/1fbd6a3b0e111a0739fe9339b599eac6dbce754a, I think maybe in other PR we can also ask for blockexplorer(optional) link in "Add chains" input, so that Address component can href to it.
Merging this 🚀🚀


Capitalize the require of the User model

Hi folks,
Starting a new project (freshly generated) I encountered an error.
Error: Cannot find module '../models/user'
I guess that's related to this commit https://github.com/sahat/megaboilerplate/commit/ef24ae2813a58a48850d51c6e6ed4f051911cd96
I changed the require of the model (into the user controller) as it should fix the issue :smile:

Good catch! Thanks.


Add --application-identifier for job_script create

This PR is an update to the #69 to be easier to review

👍


Other way to notify the client?

Hi @mikuso ,
asking if you have an optimized way of calling an action to the client instead of the code below:
server._clients.forEach(function each(clientrecord) {                 if(clientrecord.identity == 'SampleIdentity'){                     clientrecord.call('StartTransactionResponse', {"timeStamp": params.timestamp})                 }             });

Save all clients in Cache where key is the client.session.sessionId

Hi @dyaacov do you have a sample code that I can use?

After more research, you cannot save clients in redis and then reconstruct them.
Another approach:

Upon BootNotification, save client(s) in local memory as map <identifier, client>
From you fontend, postman etc. send request to your server wit h identifier.
You server should extract from map and invoke remote methods

Note:
Things are getting complicated when we talk about horizontal scaling.
Since you save clients in memory, you can use some king of pub/sub so ALL you server instances will get the message to invoke remote method, and only the server that finds the client, will be able to do so.
Thanks
Dekel

@rowellcodizal it sounds like you just want a simple way to reference a client by its identity.  The module doesn't currently have a built-in way to do this so you'd have to write something yourself. For example:
// set up the server
const {RPCServer} = require('ocpp-rpc');
const server = new RPCServer({protocols: ['ocpp1.6']});
server.listen(10090); // listen on port 80

// when clients connect (after auth), store them in a Map based on their identity
const clients = new Map();
server.on('client', client => {
    clients.set(client.identity, client);
    client.once('close', () => {
        // check that we're about to delete the correct client
        if (clients.get(client.identity) === client) {
            clients.delete(client.identity);
        }
    });
});

Keep in mind that it's possible for more than 1 client to connect using the same identity at the same time, so this may or may not be adequate depending on your use case.  (This is why we needed the additional check when removing a client from the Map, to ensure we're removing the correct client.)
Then later, when you need to make a request to a specific client...
const sampleClient = clients.get('SampleIdentity');
if (sampleClient) {
    await sampleClient.call('RemoteStartTransaction', {
        connectorId: 1, // start on connector 1
        idTag: 'XXXXXXXX', // using an idTag with identity 'XXXXXXXX'
    });
}

Or, if you want to make a request to call clients...
clients.forEach(async (client) => {
    await sampleClient.call('RemoteStartTransaction', {
        connectorId: 1, // start on connector 1
        idTag: 'XXXXXXXX', // using an idTag with identity 'XXXXXXXX'
    });
});

Basic question...
is the idTag generated by the server when creating new ev charger.
For example, when the admin creates new charger in the portal, we generate random UUID as idTag?

@mikuso  Thank you for your suggestion; I implemented it, and it was much easier to implement than what my syntax is. Thank you, thank you.
Thanks also @dyaacov

Sorry to piggy back on this now closed issue, but I am still having trouble finding a solution for this.
If storing them in a map with identity as the key, I have issues of identity possibly being the same. (I see it sets client identity from the ws url, but this isn't part of the ocpp spec so may not always be followed).
The other option is storing them in a map via serial number from the boot notification, but that leads to the issue of how to clear them out on disconnect. We do not know the clients serial number within the 'close' event.

Hi Vincent,
"may not always be followed"
Eventually, you will be the one who dictate the url to put in the charger, right?
So you will guide them to use ws://some-server/uuid-generated-by your-server
What am I missing?
Dekel


Treble and Bass-Control possible?

Hello from Austria!
I appreciate your work A LOT !!! Thank you so much!!!
a2dp_sink.set_volume(1-255) works like a charm - but now I'd like to add a very simple treble and bass control to my bluetooth project. Is this possible? How?
Could you please provide an example?
Thank you for your kind help!
Michael

I suggest that you have a look at my https://github.com/pschatzmann/arduino-audio-tools library.
There you can try to use the https://pschatzmann.github.io/arduino-audio-tools/html/classaudio__tools_1_1_equilizer3_bands.html class.

I’m afraid – but somehow I do not know how to access the BT stream correctly by the equalizer classes.
Woould you mind to give me a short example?
If possible, I’d like to give a donation of 25 EUR to you for a working example.
Once again: I appreciate your work very much!
By the way: Your are from Switzerland – so do you speak German?
Thanks for helping me!
All the best to you
Michael.
Von: Phil Schatzmann @.>
Gesendet: Montag, 25. Juli 2022 19:35
An: pschatzmann/ESP32-A2DP @.>
Cc: gitanova @.>; Author @.>
Betreff: Re: [pschatzmann/ESP32-A2DP] Treble and Bass-Control possible? (Issue #271)
I suggest that you have a look at my https://github.com/pschatzmann/arduino-audio-tools library.
There you can try to use the https://pschatzmann.github.io/arduino-audio-tools/html/classaudio__tools_1_1_equilizer3_bands.html class.
—
Reply to this email directly, view it on GitHub https://github.com/pschatzmann/ESP32-A2DP/issues/271#issuecomment-1194394413 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AQPTUN752QEEBBNWACO5ZM3VV3F27ANCNFSM54RE6ITQ .
You are receiving this because you authored the thread.  https://github.com/notifications/beacon/AQPTUN5GO5HSGTKPWXL2N2DVV3F27A5CNFSM54RE6IT2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOI4YQGLI.gif Message ID: @.*** @.***> >

Just use https://github.com/pschatzmann/arduino-audio-tools/blob/main/examples/examples-basic-api/basic-a2dp-i2s/basic-a2dp-i2s.ino as starting point.
Instead of writing to I2S you would write to Equilizer3Bands where I2S is defined as final output.

Thank you for your fast reply – even though I‘ m stuck – so  I’d like to ask you for a working example…
Could you please provide my with an example – that would help really a lot and I would be very gratful for helping me!
best
Mchael
Von: Phil Schatzmann @.>
Gesendet: Montag, 25. Juli 2022 20:29
An: pschatzmann/ESP32-A2DP @.>
Cc: gitanova @.>; Author @.>
Betreff: Re: [pschatzmann/ESP32-A2DP] Treble and Bass-Control possible? (Issue #271)
Just use https://github.com/pschatzmann/arduino-audio-tools/blob/main/examples/examples-basic-api/basic-a2dp-i2s/basic-a2dp-i2s.ino as starting point.
Instead of writing to I2S you would write to Equilizer3Bands where I2S is defined as final output.
—
Reply to this email directly, view it on GitHub https://github.com/pschatzmann/ESP32-A2DP/issues/271#issuecomment-1194453740 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AQPTUNYP4I2LJWMXPTZCN53VV3MITANCNFSM54RE6ITQ .
You are receiving this because you authored the thread.  https://github.com/notifications/beacon/AQPTUNY4K3SJSBFUMBNB6I3VV3MITA5CNFSM54RE6IT2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOI4Y6V3A.gif Message ID: @.*** @.***> >

Dear Phil,
somehow I'm getting stuck.
I believe that the integration of the 3-band equalizer does not work at all.
A quick example from you would really help me a lot.
Like I said before, I would pay for that too. I have to get the Bluetooth module up and running this week.
Please help me!
Thank you and best regards
Michael
Von: Phil Schatzmann @.>
Gesendet: Montag, 25. Juli 2022 20:29
An: pschatzmann/ESP32-A2DP @.>
Cc: gitanova @.>; Author @.>
Betreff: Re: [pschatzmann/ESP32-A2DP] Treble and Bass-Control possible? (Issue #271)
Just use https://github.com/pschatzmann/arduino-audio-tools/blob/main/examples/examples-basic-api/basic-a2dp-i2s/basic-a2dp-i2s.ino as starting point.
Instead of writing to I2S you would write to Equilizer3Bands where I2S is defined as final output.
—
Reply to this email directly, view it on GitHub https://github.com/pschatzmann/ESP32-A2DP/issues/271#issuecomment-1194453740 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AQPTUNYP4I2LJWMXPTZCN53VV3MITANCNFSM54RE6ITQ .
You are receiving this because you authored the thread.  https://github.com/notifications/beacon/AQPTUNY4K3SJSBFUMBNB6I3VV3MITA5CNFSM54RE6IT2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOI4Y6V3A.gif Message ID: @.*** @.***> >

I just discovered that the example already exists:
https://github.com/pschatzmann/arduino-audio-tools/tree/main/examples/examples-audiokit/basic-a2dp-eq-audiokit
Just replace the AudioKitStream with your desired output sink class (e.g. I2SStream).
However note that I have never tested this functionality properly...

Thank you very much!
Following code compiles without error. Hardware wörks with your SompleBT_Example (without EQ) very well but I can hear NOTHING with using this code:
#include "AudioTools.h"
#include "AudioLibs/AudioA2DP.h"
BluetoothA2DPSink a2dp_sink;
I2SStream i2s;
Equilizer3Bands eq(i2s);
ConfigEquilizer3Bands cfg_eq;
void read_data_stream(const uint8_t *data, uint32_t length) {
eq.write(data, length);

}
void setup() {
Serial.begin(115200);
AudioLogger::instance().begin(Serial, AudioLogger::Info);
// setup output
auto cfg = i2s.defaultConfig(TX_MODE);
i2s.begin(cfg);
// setup equilizer
cfg_eq = eq.defaultConfig();
cfg_eq.setAudioInfo(cfg); // use channels, bits_per_sample and sample_rate from i2s
cfg_eq.gain_low = 1;
cfg_eq.gain_medium = 0.5;
cfg_eq.gain_high = 1.0;
eq.begin(cfg_eq);
// register callback
a2dp_sink.set_stream_reader(read_data_stream, true);
a2dp_sink.start("BT");
}
void loop() {
}
Von: Phil Schatzmann @.>
Gesendet: Dienstag, 26. Juli 2022 17:00
An: pschatzmann/ESP32-A2DP @.>
Cc: gitanova @.>; Author @.>
Betreff: Re: [pschatzmann/ESP32-A2DP] Treble and Bass-Control possible? (Issue #271)
I just discovered that the example already exists:
https://github.com/pschatzmann/arduino-audio-tools/tree/main/examples/examples-audiokit/basic-a2dp-eq-audiokit
Just replace the AudioKitStream with your desired output sink class (e.g. I2SStream).
However note that I have never tested this functionality properly...
—
Reply to this email directly, view it on GitHub https://github.com/pschatzmann/ESP32-A2DP/issues/271#issuecomment-1195598170 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AQPTUN4UI3UJU2C4Y6ZRZYDVV74Q3ANCNFSM54RE6ITQ .
You are receiving this because you authored the thread.  https://github.com/notifications/beacon/AQPTUNZ45LTXWWEMNGS6UZ3VV74Q3A5CNFSM54RE6IT2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOI5BWCWQ.gif Message ID: @.*** @.***> >

Al last I VE GOT IT !!!
My error was that I did not notice that in your default pins for I2S differed completely from mine … therefor I could not get any sound out of PCM5102…
By the wa: Do you know another alternative for PCM510x chips? They seem to be very rare on the market in our days…
Anyway: Best thanks!
Plese give me your IBAN for a small donation for your work!
Best regards Michael
Von: Phil Schatzmann @.>
Gesendet: Dienstag, 26. Juli 2022 17:00
An: pschatzmann/ESP32-A2DP @.>
Cc: gitanova @.>; Author @.>
Betreff: Re: [pschatzmann/ESP32-A2DP] Treble and Bass-Control possible? (Issue #271)
I just discovered that the example already exists:
https://github.com/pschatzmann/arduino-audio-tools/tree/main/examples/examples-audiokit/basic-a2dp-eq-audiokit
Just replace the AudioKitStream with your desired output sink class (e.g. I2SStream).
However note that I have never tested this functionality properly...
—
Reply to this email directly, view it on GitHub https://github.com/pschatzmann/ESP32-A2DP/issues/271#issuecomment-1195598170 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AQPTUN4UI3UJU2C4Y6ZRZYDVV74Q3ANCNFSM54RE6ITQ .
You are receiving this because you authored the thread.  https://github.com/notifications/beacon/AQPTUNZ45LTXWWEMNGS6UZ3VV74Q3A5CNFSM54RE6IT2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOI5BWCWQ.gif Message ID: @.*** @.***> >

Tried to implement EQ3Bands to bt_music_receiver_simple, but get lot of crackle sound.
Some Links in this discussion are dead.
#include "AudioTools.h"
#include "BluetoothA2DPSink.h"

I2SStream out;
BluetoothA2DPSink a2dp_sink(out);

Equilizer3Bands eq(out);

ConfigEquilizer3Bands cfg_eq;

void read_data_stream(const uint8_t *data, uint32_t length) {
  eq.write(data, length);
}

void setup() {
  auto cfg = out.defaultConfig();
  cfg.pin_bck = 32;
  cfg.pin_ws = 27;
  cfg.pin_data = 25;
  out.begin(cfg);

  // setup equilizer
  cfg_eq = eq.defaultConfig();
  cfg_eq.setAudioInfo(cfg); // use channels, bits_per_sample and sample_rate from i2s
  cfg_eq.gain_low = 1.0;
  cfg_eq.gain_medium = 0.5;
  cfg_eq.gain_high = 1.0;
  eq.begin(cfg_eq);

  // register callback
  a2dp_sink.set_stream_reader(read_data_stream, true);

  a2dp_sink.start("MyMusic");
}

void loop() {
  delay(1000); // do nothing
}

I don't think your output chain makes a lot of sense. It should be
I2SStream out;
Equilizer3Bands eq(out);
BluetoothA2DPSink a2dp_sink(eq);

Thanks for feedback.
The error was the existing a2dp_sink.set_stream_reader(read_data_stream, true); and the output chain.
Now, that's the result:
#include "AudioTools.h"
#include "BluetoothA2DPSink.h"

I2SStream out;
Equilizer3Bands eq(out);
BluetoothA2DPSink a2dp_sink(eq);
ConfigEquilizer3Bands cfg_eq;

void print_eq_state() {
  Serial.printf("LOW:%.1f\r\n", cfg_eq.gain_low);
  Serial.printf("MID:%.1f\r\n", cfg_eq.gain_medium);
  Serial.printf("HIGH:%.1f\r\n", cfg_eq.gain_high);
}

void setup() {
  Serial.begin(115200);

  auto cfg = out.defaultConfig();
  cfg.pin_bck = 32;
  cfg.pin_ws = 27;
  cfg.pin_data = 25;
  out.begin(cfg);

  // setup equilizer
  cfg_eq = eq.defaultConfig();
  cfg_eq.setAudioInfo(cfg); // use channels, bits_per_sample and sample_rate from i2s
  cfg_eq.gain_low = 1.0;
  cfg_eq.gain_medium = 1.0;
  cfg_eq.gain_high = 1.0;
  eq.begin(cfg_eq);

  a2dp_sink.start("MyMusic");
}

void loop() {
  if (Serial.available()) {
    switch (Serial.read()) {
      case 'U':
        cfg_eq.gain_low += 0.1;
        cfg_eq.gain_medium += 0.1;
        cfg_eq.gain_high += 0.1;
        print_eq_state();
        break;
      case 'D':
        cfg_eq.gain_low += -0.1;
        cfg_eq.gain_medium += -0.1;
        cfg_eq.gain_high += -0.1;
        print_eq_state();
        break;
      case 'B':
        if (Serial.read() == '+') cfg_eq.gain_low += 0.1;
        else cfg_eq.gain_low += -0.1;
        print_eq_state();
        break;
      case 'T':
        if (Serial.read() == '+') cfg_eq.gain_high += 0.1;
        else cfg_eq.gain_high += -0.1;
        print_eq_state();
        break;
      case 'M':
        if (Serial.read() == '+') cfg_eq.gain_medium += 0.1;
        else cfg_eq.gain_medium += -0.1;
        print_eq_state();
        break;
      case 'N':
        cfg_eq.gain_low = 1.0;
        cfg_eq.gain_medium = 1.0;
        cfg_eq.gain_high = 1.0;
        print_eq_state();
        break;
      case 'Q':
        print_eq_state();
        break;

    }
  }
}

void print_eq_state() {
  Serial.printf("LOW:%.1f\r\n", cfg_eq.gain_low);
  Serial.printf("MID:%.1f\r\n", cfg_eq.gain_medium);
  Serial.printf("HIGH:%.1f\r\n", cfg_eq.gain_high);
}

Does dynamically changing the EQ config without using its begin() methods really changes the output ?
If so that's really interesting

Yes, the ConfigEquilizer3Bands is passed as reference, so changes will automatically reflected


Extension page is immediately closed on save HMR

Whenever I save the code and the extension page is automatically updating with HMR, the page is immediately closed after several seconds.
Reproduction
I start the development by pnpm run dev and then pnpm start:firefox. After I save the code on change, the pnpm start:firefox command is also exited after several seconds. There is no error in pnpm run dev command, it still watching for changes.
Is there any solution to this?

This is not actually an issue since it's not a problem if I run with pnpm start:firefox. I'm closing this one.


After installing...then reinstalling python3 and pip make install still fails on code 127...

Creating virtual environment...
/bin/bash: line 2: python: command not found
make: *** [Makefile:28: create-venv] Error 127
Well, I seem to be running in circles as I have looked at about 9 "solutions" that say python (3.10.6) make is unlinked from sh, but I have reinstalled twice according to instructions, so I assume that it may be an issue with 64 bit compatibility, but who even runs 32 bit architecture anymore, and why?
Anyways, If anyone else is having this same issue, or solved, it please advise. I'm poorly in knowledge of all the new python related stuff and the learning curve is like a cliff because packages are always breaking/outdated a week or less after I install them.
Running Ubuntu 22.04 64 bit on Ryzen 9 5900X, if that helps.

Don't forget like I did, always run:
sudo apt install python-is-python3
Closing.


Datepicker switching to/from darkMode

When working with native styling on a native app, the datepicker doesn't get styled correctly if you switch from or to darkMode. The backgroundcolor doesn't get automatically switched and you need a hard reload of the app to make the changes visible. The weird thing is that the text color does get changed when switching theme:

After hard reload:

Is there a way to style the text color?

Hi @StefaniPeters,
We have a task on our backlog to make the text color styleable as well. We will also look into removing the necessity of a hard reload to apply the dark theme.
Greetings,
Isa Isaku


Base directory for node_modules with Node integration

I'm trying to figure out how to configure the base directory for the Node-integrated require() statements in the browser process. My end goal is running Electron on regular Node.js sources that may require native modules (like fs or node-opencv). (The gory details.)
With the following, for example, after npm install save-pixels --save
var save = require('save-pixels')

This works when I run electron server.js from the same directory. However, say I am running this from an entirely different folder with its own modules:
projects
    app/
        node_modules
        server.js
    my-module/
        node_modules

Trying to run electron ../app/server.js from the my-module folder still seems to look inside app/node_modules rather than the calling folder.
Thanks. :smile:

You can set NODE_PATH environment variable to override the default search paths.
Electron apps are mostly used as GUI apps, so current directory usually doesn't affect module search paths.

Thanks !


Tests for SysInfo package

Signed-off-by: Danyal Khaliq<EMAIL_ADDRESS>To increase test coverage for the Sysinfo package

Changes Incorporated as mentioned in comments here at below link:
https://github.com/moby/moby/pull/33518


same method name appears twice and redundant object name in pylance auto completion

Environment data

VSCode version: 1.59.0-insider (system setup)
Language Server version: pylance v2021.7.5
OS and version: Windows 10 19043.1110
Python version (& distribution if applicable, e.g. Anaconda): miniconda

Expected behaviour
no redundant method name and object name
Actual behaviour

same method name appears twice（tobitmap and im.tobitmap is same method)

when press tab or enter, it will add redundant object name in editor

Code Snippet / Additional information
this problem happens in any python code

This looks like a Jupyter completion bug, if anything. Can you try the same thing in a regular Python file, not a notebook?

This looks like a Jupyter completion bug, if anything. Can you try the same thing in a regular Python file, not a notebook?

it is normal in regular python code, but some method completion are missing(like to_thumb in jupyter completion)

Thanks; I'm pretty sure those extra completions are coming from the Jupyter kernel and aren't being merged correctly. I'll transfer this to their tracker.


"Help > WiX Tutorial" redirects from http://www.tramontana.co.hu/wix/ to https://www.firegiant.com/wix

"Help > WiX Tutorial" redirects from http://www.tramontana.co.hu/wix/ to https://www.firegiant.com/wix
I'm not sure if the tutorials that were on tramontana.co.hu are still relevant, if we want to reference archived versions of the tutorials that were on tramontana.co.hu , or if there are equivalent tutorials on firegiant.com, etc.

The original tutorials are moved to the following location:
https://www.firegiant.com/wix/tutorial/
Op di 6 aug. 2019 01:52 schreef Rami<EMAIL_ADDRESS>
"Help > WiX Tutorial" redirects from http://www.tramontana.co.hu/wix/ to
https://www.firegiant.com/wix
I'm not sure if the tutorials that were on tramontana.co.hu are still
relevant, if we want to reference archived versions of the tutorials that
were on tramontana.co.hu , or if there are equivalent tutorials on
firegiant.com, etc.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/WixEdit/WixEdit/issues/7?email_source=notifications&email_token=AETEM3UX3F5K6BTCOHXK5GDQDC4LNA5CNFSM4IJPXIG2YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HDQBNJA,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AETEM3W5LYIBN7ZSNXNJK6DQDC4LNANCNFSM4IJPXIGQ
.


Manage runtime configuration commands provide semantically inconsistent information

Describe the issue
See next section
To Reproduce
Steps to reproduce the behavior:

Create a KFP runtime configuration.
Create an Apache Airflow runtime configuration.
Open the command palette
Select "Manage Apache Airflow runtimes" and check the runtime configuration list. All runtime configurations are displayed.
Open the command palette
Select "Manage Kubeflow Pipelines runtimes" and check the runtime configuration list. All runtime configurations are displayed.

Expected behavior
Several options

only expose one command "Manage runtimes" in the palette
the commands open the same metadata view but have a filter pre-selected that temporarily hides runtimes that are not of the expected type
...

Deployment information
Describe what you've deployed and how:

Elyra version: 2.x
Operating system: macos
Installation source: from source / master branch
Deployment type: local installation

Should be fixed by https://github.com/elyra-ai/elyra/pull/1327


Questions on preprocessing codes

Hi, thanks a lot for sharing your codes.
I am trying to reproduce preprocessed data by following the instruction on preprocessing folder, but it looks like it does not create the same file as released preprocessed data.

Do you plan to release the code which produces the same file as released preprocessed data? (same formatting, etc)?
The code contains subgraph retrieval but not document retrieval. Do you plan to release the document retrieval part?
I noticed that files in freebase_2hops/stagg.neighborhoods play a significant role as they contain entities to run PPR, but they are downloaded and there is no code generating those files. Could you provide codes generating those files, or share details of how you get them?

I really appreciate your help!

Thanks for your questions.
For document retrieval, we run DrQA to retrieve the top 5 wikipedia pages. We split the pages into sentences and run Lucene to retrieve the top 50 sentences. Then we ran TagME (https://tagme.d4science.org/tagme/) to link entities.
The stage.neighborhoods is described at http://curtis.ml.cmu.edu/kbir/.

Hi @OceanskySun, thanks for your answer!
I have one more question. I was hoping to pull over the textual form (surface form) of the model prediction. Is there a file with mappings between entity id and textual form? I see textual forms of the groundtruth answers in your released data, but it seems like there's no file with mappings of all entities.


Directory Navigation

In case you experience issues with docker image provided by linuxserver.io/papermerge, please open bug report in their repository.
Description
A clear and concise description of what the bug is.
When you go into a subfolder from root then click on the name text of the folder the app sends you up one directory.
Expected
A clear and concise description of what you expected to happen.
Folder is selected or entered
Actual
What actually happens
User is sent to the parent directory
Info:

OS: [e.g. Windows 10, Ubuntu 20.04 LTS]
Windows 10 Business 2004
Browser [e.g. chrome, safari]
Chrome, Edge (new), Firefox
Database [SQLite, PostgreSQL 12.1]
Hosted with papermerge
Papermerge Version [e.g. 1.4.3]
1.4.4

Hi @AlexanderEDavis,
thank you for reporting the bug. I will fix it and make it available next week.

Hi @AlexanderEDavis,
It was a simple fix.
I closed this ticket by mistake (by referencing in git commit comment fixes # github automatically closes the ticket). It would be correct to keep it open until you will confirm that ticket should be closed.


Unicode support

Column text width is calculated by counting bytes which gives a wrong result if the text contains multibyte UTF-8 sequences or non-printable characters.

Hi @mbudde — do you have a sample input and an expected output?
aa ทtb ñññ
a ทt ñ

tabulate < test.txt
[src/main.rs:113:5] &args = Args {
    truncate: None,
    ratio: 1.0,
    lines: 1000,
    include_cols: None,
    exclude_cols: None,
    delim: " \t",
    output_delim: "  ",
    strict_delim: false,
    online: false,
    print_info: false,
}
aa  ทtb    ñññ
a   ทt     ñ

Seems expected, no?

Expected output in your example is (two spaces between columns):
aa  ทtb  ñññ
a   ทt   ñ

Here is an example with zero-width characters (zero-width no-break space U+FEFF): test.txt
Input:
aaaa a
a<feff><feff><feff><feff>a a

Actual output:
aaaa            a
aa          a

Expected output:
aaaa  a
aa    a


Improved Error Message Clarity and Adjusted Display Time

Description
This PR addresses issue #8031 by refining the error message to be more concise and user-friendly. Additionally, the display time for the message has been extended to ensure users have adequate time to read it.
Checklist

[x] Added label: enhancement
[x]  Assigned to a specific person @avaleske
[x]  Performed manual testing (Chrome and Firefox if it includes front-end changes)
[x]  Extended the README / documentation

User visible changes

[x] Added context strings to new [messages]
[x] Didn't use a message in applicant facing code that isn't translated yet (unless behind a flag) Note: This message triggers for applicants and may require translation.

Instructions for manual testing

Attempt to add a program admin who hasn’t logged into CiviForm.
Verify that the error message is clear about the need to log in and specifies role requirements.

Issue(s) this completes
Fixes #8031

Hi! Can you please reference the instructions for community contributors here:
https://github.com/civiform/civiform/wiki/Technical-contribution-guide#community-contributors-not-part-of-exygy-google-or-a-civic-entity


Add "lifecycle" key in terraform module

Hello,
Can you add "lifecycle" key in the module to let people use "ignore_changes" with terraform ?
If we want to use it with GKE Autopilot, everytime we are running a plan / apply, it want to change custom metadata added by Autopilot... We could avoid that with "lifecycle" :)
  lifecycle {
    ignore_changes = []
  }

Thank you for creating this module, it resolves a lot of headaches !

While it may work, I'm not so sure that that's entirely correct... It's a bit of a gap in Terraform modules in general that you cannot inject lifecycle attributes (as they can't refer to variables etc). If it does what I think it does (ignoring all updates), it would make making changes in the future quite a bit harder. Could you consider forking the Terraform part of it?

Hello !
You can just create the entry and leave it empty so it can be overwrite, that was my first idea.
I'll try to work on it.

I don't think that is unfortunately possible. You might want to look into Helm deployment option that is available now, which should get you rid of the annotation spam.


rich-text: Can't perform a React state update on an unmounted component.

setState on this line is causing React warnings when component is re-rendered before the promise is resolved. I suggest to use basic mount check before updating state there -
https://github.com/contentful/field-editors/blob/master/packages/rich-text/src/Toolbar/index.js#L74
VM191 src.f69400ca.js:3977 Warning: Can't perform a React state update on an unmounted component. This is a no-op, but it indicates a memory leak in your application. To fix, cancel all subscriptions and asynchronous tasks in the componentWillUnmount method.
    in Toolbar (created by ConnectedRichTextEditor)
    in div (created by StickyToolbarWrapper)
    in StickyToolbarWrapper (created by ConnectedRichTextEditor)
    in div (created by ConnectedRichTextEditor)
    in ConnectedRichTextEditor (created by FieldConnector)
    in FieldConnector (created by RichTextEditor)
    in useEntitiesStore.Provider (created by RichTextEditor)

Fixed with #463. Thanks for the report.

@giotiskl same issue is observed in ReferenceEditor

Stack leads here - https://github.com/contentful/field-editors/blob/master/packages/reference/src/entries/WrappedEntryCard/FetchingWrappedEntryCard.tsx#L65

Thank you @voronianski for letting us know. I will investigate this and work on a fix ASAP


cross run doesn't work

It seems that Cargo is not passing -C linker=foo to rustc for that particular subcommand.

Silly me. The run subcommand is not whitelisted 😅.


[eventgrid] update samples to use asyncio.run

Co-authored-by: kyc5644<EMAIL_ADDRESS>Co-authored-by: SaidbySolo<EMAIL_ADDRESS>Description
As https://github.com/Azure/azure-sdk-for-python/issues/21207 mentions, some samples are using a loop variable for simple callbacks when this can be done by using the new run method of asyncio. This PR remedies the issue for the eventgrid library.
All SDK Contribution checklist:

[x] The pull request does not introduce [breaking changes]
[x] CHANGELOG is updated for new features, bug fixes or other significant changes.
[x] I have read the contribution guidelines.

General Guidelines and Best Practices

[x] Title of the pull request is clear and informative.
[x] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For more information on cleaning up the commits in your PR, see this page.

Testing Guidelines

[x] Pull request includes test coverage for the included changes.

/azp run python - eventgrid - ci


[stable/kong] Allow environment variables to be set on kong ingress controller

Is this a new chart
No
What this PR does / why we need it:
Allows the ingress controller container's environment variables to be set. This allows us to use the CONTROLLER_* env vars to customize flags. My main motiviation for this is to set the admin header flag.
Which issue this PR fixes
N/A
Special notes for your reviewer:
I chose to allow env vars to be set rather than args because that is how the kong pod itself takes its configuration. I copied the kong.env snippet for this.
I realize the CONTROLLER_* env var support is only in master and not a stable release yet, but I figured it was better in the long term to have this setup than to use args.
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[x] DCO signed
[x] Chart Version bumped
[x] Variables are documented in the README.md
[x] Title of the PR starts with chart name (e.g. [stable/mychartname])

/test pull-charts-e2e


Update/New Commands - Get-DbaSqlService, Stop/Start/Restart-DbaSqlService

Type of Change

[ ] Bug fix (non-breaking change, fixes #)
[x] New feature (non-breaking change, adds functionality)
[ ] Breaking change (effects multiple commands or functionality)
[ ] Ran manual Pester test and has passed (`.\tests\manual.pester.ps1)
[x] Pester test is included

Purpose
Submitting updated code to match the dbatools/sqlservice branch.
Also, adding some more error handling to the Update-DbaSqlServiceStatus procedure
Approach
Moved corresponding lines from the dbatools/sqlservice branch that use Get-DbaCmObject instead of Get-CimInstance
Commands to test
Get-DbaSqlService, Stop/Start/Restart-DbaSqlService
Screenshots
n/a
Learning
Get-DbaCmObject seems to be a much better option.

@potatoqualitee how does one re-run the test if it failed due to contention?

@PowerDBAKlaas - when you get a moment, please let me know if you're happy with these changes. I'd like to get it merged. If not, let me know too!

@potatoqualitee  I thought there were conflicts with PR #1887
Are those solved?
And is there any progress on the speed issue? If this new version with Get-DbaCmObject remains slower than the old version, should we do this?

Error received trying to import these commands/changes:

Looking at Stop-DbaSqlService is anyone else seeing this when they pull down this code?

@wsmelton I do see it if I pull it... not sure what's going on here, will try to re-upload

@potatoqualitee @wsmelton @PowerDBAKlaas thanks a lot for your input! Everything has been updated according to your suggestions (please let me know if I still should remove ValidateScript in internal/Set-ServiceStartMode.ps1 )

If you feel the validation is needed the  do that in your code. Adding that to the parameter overwrites the ability of our message system to not output anything.
So it still needs to be removed, but again if you want to keep validation (although I see no purpose in it for an internal command) just put that in a begin block or something.
Sent from my Htc HTC6545LVW using FastHub

@wsmelton fixed. Thanks!


RetrievalRecall and RetrievalMRR seem to function differently for world_size > 1 and top_k=1

🐛 Bug
I am using  RetrievalRecall and RetrievalMRR in the same way in the snippet provided below. There seems to be a behaviour issue, since RetrievalRecall will return RetrievalMRR divided by world_size for a multi-gpu setup, while RetrievalMRR will behave as expected. Can someone suggest what the issue might be? For top_k=1, these two functions should return the same. For top_k > 1 both behave as expected.
metrics = [
            RetrievalMRR,
            RetrievalRecall,
        ]
metric_names = [metric.__name__ for metric in metrics]
if self.world_size > 1:
    # both all gather calls return tensors of shape (World_Size, Batch_Size, Embedding_Size)
    all_embeddings_central_mod = self.all_gather(embeddings_central_mod, sync_grads=True)
    all_embeddings_other_mod = self.all_gather(embeddings_other_mod, sync_grads=True)
    all_embeddings_central_mod = all_embeddings_central_mod.flatten(0, 1)
    all_embeddings_other_mod = all_embeddings_other_mod.flatten(0, 1)
else:
    all_embeddings_central_mod = embeddings_central_mod.detach().clone()
    all_embeddings_other_mod = embeddings_other_mod.detach().clone()
device = select_device()

# reference: https://medium.com/@dhruvbird/all-pairs-cosine-similarity-in-pytorch-867e722c8572
# adding a third dim allows to compute pairwise cosine sim.
cos_sim = cosine_similarity(
    all_embeddings_central_mod.unsqueeze(1),
    all_embeddings_other_mod.unsqueeze(0),
    dim=2,
).to(device)
# preds, target, indexes
flatten_cos_sim = cos_sim.flatten().to(device)  # (Batch Size*Batch Size)

# the metric calculations are grouped by indexes and then averaged
# repeat interleave creates tensors of the form [0, 0, 1, 1, 2, 2]
indexes = (
    torch.arange(all_embeddings_central_mod.shape[0]).repeat_interleave(all_embeddings_other_mod.shape[0]).to(device)
)
# Diagonal elements are the true querries, the rest are false querries
target = torch.eye(all_embeddings_central_mod.shape[0], dtype=torch.long).flatten().to(device)
assert target.sum() == all_embeddings_central_mod.shape[0]
for k_val in k_list:
    for metric, metric_name in zip(metrics, metric_names):
        metric_to_log = metric(top_k=k_val)
        metric_to_log.update(flatten_cos_sim, target, indexes=indexes)
        self.log(
            f"{prefix}_{central_modality}_{other_modality}_{metric_name}_top_{k_val}",
            metric_to_log.compute(),
            batch_size=self.per_device_batch_size * self.world_size,
            sync_dist=self.world_size > 1,
        )

is it with the latest version?

is it with the latest version?

lightning                 2.4.0

Hi @AdrianM0, thanks for reporting this issue.
I tried to debug what is happening, so I created a small script:
import contextlib
import os

import torch
from torch import tensor
from torch.multiprocessing import Pool, set_sharing_strategy, set_start_method

from torchmetrics.retrieval import RetrievalMRR, RetrievalRecall

with contextlib.suppress(RuntimeError):
    set_start_method("spawn")
    set_sharing_strategy("file_system")

NUM_PROCESSES = 2
TOP_K = 1

indexes = tensor([0, 0, 0, 1, 1, 1, 1])
preds = tensor([0.2, 0.3, 0.5, 0.1, 0.3, 0.5, 0.2])
target = tensor([False, False, True, False, True, False, True])

def setup_ddp(rank: int, world_size: int) -> None:
    os.environ["MASTER_ADDR"] = "localhost"
    os.environ["MASTER_PORT"] = str(8088)

    if torch.distributed.group.WORLD is not None:
        torch.distributed.destroy_process_group()

    if torch.distributed.is_available():
        torch.distributed.init_process_group("gloo", rank=rank, world_size=world_size)

def function_to_run(rank: int, world_size: int) -> None:
    setup_ddp(rank, world_size)
    print(f"Rank {rank} is running")
    metric1 = RetrievalRecall(top_k=TOP_K)
    metric2 = RetrievalMRR(top_k=TOP_K)
    metric1.update(preds[rank::NUM_PROCESSES], target[rank::NUM_PROCESSES], indexes[rank::NUM_PROCESSES])
    metric2.update(preds[rank::NUM_PROCESSES], target[rank::NUM_PROCESSES], indexes[rank::NUM_PROCESSES])
    res1 = metric1.compute()
    res2 = metric2.compute()
    print(f"rank {rank} says result is {res1}, {res2}")

if __name__ == "__main__":
    pool = Pool(NUM_PROCESSES)
    pool.starmap(function_to_run, [(i, NUM_PROCESSES) for i in range(NUM_PROCESSES)])

    metric1 = RetrievalRecall(top_k=TOP_K)
    metric2 = RetrievalMRR(top_k=TOP_K)
    metric1.update(preds, target, indexes)
    metric2.update(preds, target, indexes)
    res1 = metric1.compute()
    res2 = metric2.compute()
    print(f"result is {res1}, {res2}")

however, I am unable to reproduce the issue. Regardless of what the top_k argument is set to I get the same result if I am running in a distributed setting or non-distributed.
So I am fairly confident that the issue is not in torchmetrics, but how stuff is logged in lightning. I try to debug further.

@AdrianM0 is there a reason you are explicitly setting the batch size here:
for k_val in k_list:
    for metric, metric_name in zip(metrics, metric_names):
        metric_to_log = metric(top_k=k_val)
        metric_to_log.update(flatten_cos_sim, target, indexes=indexes)
        self.log(
            f"{prefix}_{central_modality}_{other_modality}_{metric_name}_top_{k_val}",
            metric_to_log.compute(),
            batch_size=self.per_device_batch_size * self.world_size,
            sync_dist=self.world_size > 1,
        )

I am asking because lightning internally will sync the batch size between processes:
https://github.com/Lightning-AI/pytorch-lightning/blob/be608fa355b835b9b0727df2f5476f0a1d90bc59/src/lightning/pytorch/trainer/connectors/logger_connector/result.py#L251
which means that if you have a real batch size of 64 per device and each process gets one batch, the accumulated batch size that is used when calculating the average value is 128. But if you then explicit say that the batch size is 64*2 you will end up with the accumulated batch size being 256.
So try setting:
batch_size=self.per_device_batch_size

(or remove it if you do not need it, lightning will automatically try to extract it for you if possible)

@SkafteNicki the reason is mostly because I am aggregating embeddings across GPUs so the tensors going into the metrics do not have a self.per_device_batch_size but a self.per_device_batch_size*self.world_size


cannot find -lasound

Hi,
I use faiface/beep library with Oto under the hood. And everything is fine except cross compilation to arm machine.
Now I am trying to compile code on linux/amd64 virtual machine to linux/arm. I did so:
$ CC=arm-linux-gnueabi-gcc GOOS=linux GOARCH=arm CGO_ENABLED=1 go build hello.go
And output was:
# github.com/hajimehoshi/oto
/usr/lib/gcc-cross/arm-linux-gnueabi/9/../../../../arm-linux-gnueabi/bin/ld: cannot find -lasound
collect2: error: ld returned 1 exit status

I tried this both on virtual and stand alone xubuntu machines with the same error.
arm-linux-gnueabihf-gcc - the same error
libasound2-dev is installed and locally all works fine
GOARM setting has no any effect
Could you help please with this issue?
Best regards and thanks for great lib!

Unfortunately it is hard or impossible to cross-compile Oto for other architectures due to Cgo. I have no idea about a good solution.

@Cheb-design You need libasound/alsa-lib compiled for arm, you cannot link arm binary with x86_64 lib. Just compile alsa-lib with your arm gcc, and install in toolchain sysroot/lib directory.

@Cheb-design You need libasound/alsa-lib compiled for arm, you cannot link arm binary with x86_64 lib. Just compile alsa-lib with your arm gcc, and install in toolchain sysroot/lib directory.

Thanks for idea! I'll try it

@Cheb-design Did you have any success with the issue? I got absolutely the same error.

Let me close this. Feel free to reopen if you still have a question.


Change the requirements to reflect pip install

To avoid confusion. Given that conda install of velocyto doesn't work, having it in the requirements is misleading.

I don't agree to this change, you are assuming that the pip command will work smoothly for all the platforms but this is really not the case, in particular for numpy, scipy, cython. If you look at the issues we had you will find a couple that were solved by installing conda.
It is definitely worth to package velocyto for conda (conda-forge) but last time I tried I encountered one problem with the pysam ddependency, I will try again soon.

Hey, it's fine. You asked me to do a thing, and I did it and you rejected it. I don't care - I've installed it successfully. I thought I'd help out by putting in an issue and then a comprehensive bug report. If you don't want to fix it, sure.

Hey @datakid no need to be rude. You're forgetting that you spent 2 mins fiddling with something that took @gioelelm (and others) nearly a year to build. If you have a genuine interest in contributing to velocyto then we'll be happy to interact.
Your proposed fix did not fix the issue, therefore it was rejected. That is all.
The docs are clear that we recommend Anaconda Python and to use conda to install prerequisites. They are also clear that you can try to use pip instead but this may not always work. You did not use Anaconda and you found that you then had to use pip to install the dependencies. That is exactly what the docs say.

I don't think I was any ruder than @gioelelm was. As someone that needs to install it in a shared environment, Conda isn't a solution that will work for me. I disagree that the documentation is clear with regard to pip, but that's fine. I've got it installed. I didn't mean to or desire to show any disrespect for the work done.


ARTEMIS-4974 Removing Run from Shell

I created a GitHub issue into pico cli for this:
https://github.com/remkop/picocli/issues/2331


Catch exceptions thrown while making health check request

Changes proposed in this PR

Catch exceptions thrown while making health check requests

Why are we making these changes?
Otherwise, uncaught exceptions are killing the async thread handling the request.

Are we waiting on something to merge this?


Kotlin runtime to support coroutines and builderless adapters

Builders for data classes don't make too much sense; we could save methods by eliminating them, but this would require modifying the runtime to support it - Adapter<S, B> presumes that there will be a builder, for example.  We'd need, at the very least, a companion module with a Kotlin-specific adapter interface.
More fundamentally, we want to support coroutine-based service clients, so that means Protocol needs to expose suspend functions.  That may well mean re-implementing the protocols in Kotlin, though I hope it doesn't come to that.  Who wants to maintain two separate implementations of such fiddly code?

As it happens, we won't need runtime work to enable coroutine services.  With #215, we've added thrifty-runtime-ktx which at present contains only a builderless-adapter interface.
Conceivably, we could do something interesting with coroutine-aware I/O whenever JetBrains lands that work, but for now there's nothing else to be done here.


Changing the size of just one body in a newton's cradle.

I was wondering if there is a way to change just a single body in a Newton's Cradle composite, since making a new composite has you decide on a universal body size for each body. Is it possible to make the last body much larger than the rest of them while still using a newtonsCradle composite and not having to build one from scratch?
Thank you!

Sure, you should make your own copy of the code for Composites.newtonsCradle and then modify the creation of the circles as you see fit.

HI! Thank you, but could you show me an example? I understand what you're saying but I'm still having trouble figuring out how to use that concept to make individual weights a different size.

The link shows exactly the code that creates the cradle, just change the size in each iteration of the loop as needed.


Add a progress bar on windows icon tray

It would be nice if the windows icon in the taskbar gets progressively filled as the timer progresses. Also a red progressing bar would be nice to indicate "in pomodoro" and a green progress bar for "in break mode".

Example here of the app "hourglass which progressively fills up

The tray icon has a dynamic animation already, but I think you rather mean the task bar icon. I much prefer to keep it tiny in the tray icon area than to have it in the task bar. Maybe that works for you too?

@letmaik Nice, I didn't know, it's really practical, thanks!


Using pip install neuraloperator will not install all the requirements automatically.

the wandb and torch_harmonic packages need to be  extra installed.

combining this issue with #317. Dependencies need an update

I did encounter this, too. Here is how I solved it:

check out the installation guide for neural operators by the following link: Installing NeuralOperator. You should be able to notice the prerequisites include Python 3, NumPy, Scipy, PyTorch, TensorLy, and TensorLy-Torch.
I hope you know how to use Anaconda, a great Python project manager, so I don't need to tell you how to install Python 3 and create a virtual environment.
Using pip install numpy scipy (conda might also be ok but I did not try)
Using .whl file to install pytorch (pip or conda might also be ok but I did not try)
Using pip install Tensorly Tensorly-Torch (conda might also be ok but I did not try)
pip install neuraloperator
Here is the key! If you check the site-packages of your virtual env, you will find the folder of neuralop is almost empty. So you can download the folder neuralop from github and replace it by hand.
Should work by now.


Enable app bundle build

This is a rebased version of learningequality/kolibri-installer-android#112 + the last commit to enable the build in our Jenkins.
https://phabricator.endlessm.com/T33408

Build finished.

Build finished.

It worked and the PR job created the AAB - https://ci.endlessos.org/view/Pull Requests/job/kolibri-installer-android-pr/3/artifact/dist/kolibri__v7a-0.15.1-d9cbfeb-upload.aab.


New trojans are not detected

New trojans are not detected

This app is dead. The source code is gone


DbExecute Operators

We want to support the ability to do the following: create indexes in Postgres and also run arbitrary Postgres UDFs. This PR only supports Postgres UDFs, but @parmitam is planning to extend this in the near future to support Python UDFs.
There might be a few things up for discussion, but this PR includes the ability to create views, indexes, and UDFs through provided encodings. The REST API can read these encodings and then make a call to the server (which creates the query plan with the corresponding operators and adds metadata to the Master catalog).
I'm open to other suggestions/renaming for the encodings. Also, another thing to notice is that I did not record the creation of views in the master catalog because this is not an operation we will want to expose to users at the MyriaL level.

Coverage decreased (-0.2%) to 59.478% when pulling 4f8f7d56457c12dc57f9f0975fc979c49d08ae0e on dbExecute into 773c3680975cbdaa10ecbaecb186a4ebb8dc7fa6 on master.

fixes #816

Still testing, not yet ready for review. I only pushed since @parmitam needed to see changes. Thanks!

Coverage decreased (-0.3%) to 27.258% when pulling 44ded9a70df502bdca42cc15fcd7b17b7b6d7f0a on dbExecute into ecd0a1e7bf4baab3804fc012f4bbd7ac59afb12e on master.

Coverage decreased (-0.2%) to 27.306% when pulling 10b17925b1f5913f9bb16887e014a60af452d600 on dbExecute into ecd0a1e7bf4baab3804fc012f4bbd7ac59afb12e on master.

Ready for another review.
Changes:

Changed any mention of "UDF" to "Function"
Made sure all operations are idempotent. Views and Functions are internally called through a CREATE OR REPLACE call. Not yet sure if this information should somehow be exposed to the user.
For indexes, we now add order metadata to the catalog
Functions are validated and passed through a generic dbExecute operator. There is no longer a DbCreateFunction operator.
For the registered_functions table in the catalog, function_name is now the primary key

Coverage decreased (-0.3%) to 27.247% when pulling 795fbd81d237099392b797ffed45767aa72bf00c on dbExecute into ecd0a1e7bf4baab3804fc012f4bbd7ac59afb12e on master.

Looks good, I need to refresh my memory though on why we didn't define AccessMethod.createFunction() and have the operator delegate to that. The current design's hard-coding of Postgres UDF syntax in otherwise generic code makes me a bit nervous.

For now, I only wrote a comment for the function method as you described above.
If we added a createFunction() method to the access method, what operator would call it? Currently, we are passing function operations through a generic-run-SQL operator. Using this generic operator forces us to do the validation before passing the function to this operator. If we wanted a createFunction() on the access method, we would need to build a specialized operator and not use the generic one, right?

Coverage decreased (-0.4%) to 27.111% when pulling 245366d85f667503927d769233dba681cc5ab23d on dbExecute into ecd0a1e7bf4baab3804fc012f4bbd7ac59afb12e on master.

I'm still missing how createUDF is fundamentally different enough from createView and createIndex that it requires a totally different design (i.e., doesn't have a special operator that delegates to the right AccessMethod implementation), but I guess since we'll still have to figure out a uniform interface to accommodate Python and Java UDFs, this is fine to get something working.

So okay to merge for now? I can help refactor this once the Python UDFs are introduced.

Sure, let's merge now and revisit after Python UDFs are merged.


Filesystem / Cloud Storage: append to a file will exhausted memory

Laravel Version: 5.3
PHP Version: 7.1
Database Driver & Version:
not relevant

Description:
If you use the storage-class to append a string to a local file who bigger as the memory limit it will exhausted the memory.
In my opinion it is because it doesn't only append to the file, the Storage-Class will read the file into the memory and put the string to the end.
Steps To Reproduce:
Append a string to a local file in a loop. And finish the loop after if the file bigger than the memory limit.

Yes, It reads the whole file into the memory, then rewrites the file.
It is better to use fopen + fwrite at the end.

Storage is based on the flysystem, which is not supportting append for now. see thephpleague/flysystem#696


irmin-pack: bump the pack version number

https://github.com/mirage/irmin/pull/1649 added three new types of pack entry.
We should bump the pack version number when adding one of them, to ensure that old versions of irmin-pack don't fail badly when reading from those stores.

Done in https://github.com/mirage/irmin/pull/1655.


Is README correct?

Thanks for your good plugin, @DaikyXendo!
I have a few question about using it. (I'm an nvim newbie, so please forgive me if my question is a little vague 🙏 )

I've been reading through the README, and it seems to refer to nvim-web-devicons in the middle of it. Is this by design? (It looks identical to https://github.com/nvim-tree/nvim-web-devicons/blob/master/README.md)
I've been replacing the places where I used to use things like dependencies = "nvim-tree/nvim-web-devicons" with dependencies = "DaikyXendo/nvim-material-icon", is this the right way to do it? (Reading the README, I thought that simply installing this plugin would automatically apply it, but it seems not)

Again, Thanks!

Sorry, I don't know which package manager you use, but my advice is to install it independently, it is not a dependency of any other plugin. Here's how I installed it when I used Lazy:
require("lazy").setup({
	-- Other
	"DaikyXendo/nvim-material-icon",
	-- Other
})

Oh, I'm using Lazy too. I installed it separately and set it up like below.
(I'm separating the plugins by file and combining them in require('lazy').setup().)
-- nvim-material-icon.lua
return {
  "DaikyXendo/nvim-material-icon",
}

-- for test, nvim-tree.lua
return {
  "nvim-tree/nvim-tree.lua",
  version = "*",
  lazy = false,
  dependencies = {
  -- "DaikyXendo/nvim-material-icon", -- This is how it was set up before
  "nvim-tree/nvim-web-devicons",
  },
  config = function()
    // setting my nvim-tree ...
  end
}

It this still applies the old devicons, not the material-icon.
(I also tried setting the material-icon to lazy = false, priory=200 to see if it was a priority issue, but that didn't help much.)
..but when I applied it directly to the dependency side, it worked well. 😅
My environment..

nvim v0.10.0
LazyVim v12.18.0

because most plugins use api's from nvim-web-devicons, this plugin just pretend to be it. By using the same name and same interface, will be compatible to others.


Responsive issues in mobile

The chart getting hidden behind the screen as the line is taking more space. It should check for mobile screen and render the legends next row after the chart.

For now, try using .showLabels = false to hide the labels. Adding the item to future scope wherein we design how to display the labels when in mobile resolutions.

The plugin should not handle how the legends should look in mobile view. Have added two extensions to simulate hover on pie on click from labels.Please use this. Another task would be taken up later to auto set .showLabels to false when screen goes below 768 px.


cabal: 'repl' doesn't take any extra arguments when outside a project

ghcide 2 is working fine for me from NixOS using direnv. My teammates trying to run from ubuntu+nix+direnv are getting an error. I reproduced the error from a fresh ubuntu vm:
Failed to parse result of calling cabal

cabal: 'repl' doesn't take any extra arguments when outside a project: test

So for some reason ghcide is invoking cabal repl from somewhere that's not a project? Here is my hie.yaml:
cradle:
  multi:
    - path: "./library"
      config: { cradle: {cabal: {component: "lib:smurf"}} }
    - path: "./test"
      config: { cradle: {cabal: {component: "test"}} }

Version information
vscode plugins:
<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>
system: "x86_64-linux"
host os: Linux 5.4.0-33-generic, Ubuntu, 20.04 LTS (Focal Fossa)
multi-user?: no
sandbox: yes
version: nix-env (Nix) 2.3.6
channels(cody): "nixpkgs-20.09pre228333.1ae28ebfdb7, home-manager"
nixpkgs: /home/cody/.nix-defexpr/channels/nixpkgs

That sounds like they might be using a fairly old version of cabal-install.

Oh I think I might have misread the error. Which editor are you using?

I'm using vscode. Here are the cabal and ghcide versions:
cody@cody-VirtualBox:~/smurf$ # out of nix-shell
cody@cody-VirtualBox:~/smurf$ ghcide
ghcide: command not found
cody@cody-VirtualBox:~/smurf$ cabal

Command 'cabal' not found, but can be installed with:

sudo apt install cabal-install

cody@cody-VirtualBox:~/smurf$ nix-shell --pure

[nix-shell:~/smurf]$ ghcide --version
ghcide version: 0.2.0 (GHC: 8.8.3) (PATH: /nix/store/lmgqm5gfkxg6gpilrcj2wsvcc0a2hmqp-ghcide-0.2.0/bin/ghcide)

[nix-shell:~/smurf]$ cabal --version
cabal-install version <IP_ADDRESS>
compiled using version <IP_ADDRESS> of the Cabal library

It works for you right? I want to know what the people that see the error are using.

Hm that should work. Are you opening vscode in the directory where your hie.yaml file is located? And does running cabal repl lib:smurf in that directory work?

It works for you right? I want to know what the people that see the error are using.

All errors I'm posting are from a fresh ubuntu vm that exhibits this issue.
I've also added version information to the issue description.

Hm that should work. Are you opening vscode in the directory where your hie.yaml file is located? And does running cabal repl lib:smurf in that directory work?

cabal repl lib:smurf does not work:
[nix-shell:~/smurf]$ cabal repl lib:smurf
cabal: 'repl' doesn't take any extra arguments when outside a project:
lib:smurf

If cabal repl doesn’t work there isn’t much ghcide can do. If you have a project consisting of multiple cabal projects (and cabal files), try adding a cabal.project file in the root.

If cabal repl doesn’t work there isn’t much ghcide can do.

Right. I'll post an issue in nixpkgs maybe... I'm actually not sure where the errors at or if that's even the right place to post.

Do you have a cabal.project or a cabal.project.local file that you might not have checked in?

Do you have a cabal.project or a cabal.project.local file that you might not have checked in?

I do not have a cabal.project file. Do I need one for a standalone project? I'll try adding one and see if it helps, I'm looking up how to create one now.

I do not have a cabal.project file. Do I need one for a standalone project? I'll try adding one and see if it helps, I'm looking up how to create one now.

You shouldn’t need one but if you don’t have one then your hie.yaml has to be in the directory where your .cabal file is. Given that cabal seems to think it’s outside of a project, it sounds like either the cabal file or the cabal.project file is present on one machine but not on the other.

The smurf.cabal project isn't generated :smile:
Our team uses stack right now and package.yaml, but I'm using nix for various reasons and added ghcide on the nix side.
I need to ensure upon entering nix-shell the cabal file gets generated then.

I need to ensure upon entering nix-shell the cabal file gets generated then.

Luckily apparently I've done this before.

Glad you sorted it out!


[New Feature]: Updating the home page and addition of a navbar

🎮 feature Request
I will modify the home page to look more interactive and I will add one navbar from where the players can read instruction.
Point down the features
feature points

Updating the home page
Adding a navbar for menu, instruction etc. .

Select program in which you are contributing
GSSoC24
Code of Conduct

[X] I follow CONTRIBUTING GUIDELINE of this project.

Please @Durgesh4993 assign me this issue under GSSoC'24 label. I really want to work upon this issue.

@Lovelyfin00 please assign me this issue under the label GSSoC'24.

Hi @VaibhavS0710
There’s no need for nab bar since there’s no other links we want to redirect them to

@Lovelyfin00 Navbar will be for adding home page, custom settings, instructions, etc..

If you have any doubt you can directly send message on our discord (https://discord.gg/rZb46cCMmK), we have created separate channels for all projects...
Thank you :)


Fancy zones becomes not active

Microsoft PowerToys version
0.78.0
Installation method
PowerToys auto-update
Running as admin
None
Area(s) with issue?
FancyZones
Steps to reproduce
Suspend in Win11 (last update) may be problem.
I think after suspend the zones becomes inactives. To reactivate one should go to settings/fancy zones - > disable ->enable.
✔ Expected Behavior
Facncy zones should be always available (moving a window with SHIFT pressed).
❌ Actual Behavior
Fancy zones becomes inactives after a while (possible after suspend). To reactivate one should go to settings/fancy zones - > disable ->enable.
Also, TASK MANAGER can NEVER use Fancy zones.
Other Software
No response

/bugreport

Hello,
After a new sleep, I just tested now and it doesn`t work again. You will find the zip attached in this new situation.
Mihai P.
On Tuesday, March 5, 2024 at 10:05:47 AM EST, microsoft-github-policy-service[bot]<EMAIL_ADDRESS>wrote:

Hi there!
We need a bit more information to really debug this issue. Can you add a "Report Bug" zip file here?  Then drag the zipfile from your desktop onto the GitHub comment box in this issue. Thanks!
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

@MihaiPopescu1 you cannot upload files via email, you have to do it via the web

I just follow «Reply to this email directly, ». And just doing nothing, after I made the ZIP file, I found that Fancy zones work again. Retested with current window (Chrome), doesn`t work. Strange!!
Again: I have 4 windows oppened on desktop:
-Chrome - not work,

Snipping tool - work ok
Chrome with camera web viewer (executing an app)- not working
Task Manager - not working
I test more, by opening now:
Excel - OK
Word, OK
Edge - OK
Other chrome - other user - NOT OK !!
Calculator OK
Whatapp - OK
Setting window - OK
Epson Scan - OK
I just attached screenshoot with my initial 4 (3) opened windows.
I think is just chrome which doesn`t work. And I use a lot Chrome.
As I know, chrome is just updated to last version in the lasts days. Possible it may be the culprit.

PowerToysReport_2024-03-05-19-43-25.zip

It looks like you are not running PowerToys as administrator, that can case an issue when trying to manipulate applications running as administrator. Try running as administrator and retry the "other chrome" test

It looks like you are not running PowerToys as administrator, that can case an issue when trying to manipulate applications running as administrator. Try running as administrator and retry the "other chrome" test

Thank you for replay. Please tell me how to do that by default, as it is loaded automatically at windows start.

You have to check this box on the settings page

/helpeduser

Thank you all. Everything is OK now


chore: rework build

resolves #322
Packages need to actually be built before publish for external consumption. Before, we just relied on Gatsby's babel setup, but now we compile before publish first.
There seems to be an error when running HB, could you have a look @markjjackson?

https://github.com/styled-components/babel-plugin-styled-components/issues/222 ?@maartenbusstra


Extend pricing options

Author Name: Dirk Estenfeld (Dirk Estenfeld)
Original Redmine Issue: 4759, https://dev.opennebula.org/issues/4759
Original Date: 2016-09-01

Today I can set prices for RAM, CPU and HDD.
But if I have a base price for operating system, applicatoin or a bundle price for a vm I can not set it up.
Can you please extend pricing options with a base price for a given amount of RAM, CPU and HDD.
Example
39.00 for 1 GB RAM, 1 CPU, 20 GB HDD and Windows Server Std.
and then the today existing options for additional RAM, CPU or HDD.

Original Redmine Comment
Author Name: Taavi K (Taavi K)
Original Date: 2016-10-06T07:24:58Z

Also would be nice to have (public) network address pricing option (ip/subnet) and persistent disk pricing while VM is powered off.

Original Redmine Comment
Author Name: Dirk Estenfeld (Dirk Estenfeld)
Original Date: 2016-11-29T08:29:32Z

Is there a new target version for this feature?
Why will it not come with 5.4?

Related to #1416

also interesting for us ;-) @tinova any plan to implement this yet?

unfortunately no room in 6.0 for this. we'll reevaluate for 6.2 roadmap

ok thanks!


[Bug]: jest attempts to access property 'arguments' of a jest.fn() in strict mode, resulting in error

Version
^29.7.0
Steps to reproduce
reproducible by creating a test with
	it('should not error', () => {
		expect([Object.create(jest.fn())]).toEqual([]);
	});

Expected behavior
To work normally.
It works normally with .toEqual([{}]) which makes the error very weird and arbitrary.
Actual behavior
throws error:
'caller', 'callee', and 'arguments' properties may not be accessed on strict mode functions or the arguments objects for calls to them
TypeError: 'caller', 'callee', and 'arguments' properties may not be accessed on strict mode functions or the arguments objects for calls to them

Additional context
For what I could tell, somewhere in jest's code it goes collecting property keys up the prototype chain, it then attempts to access property arguments which is not allowed by javascript.
Perhaps put a guard for that property?
Environment
System:
    OS: Windows 11 10.0.22631
    CPU: (12) x64 12th Gen Intel(R) Core(TM) i7-1255U
  Binaries:
    Node: 20.5.0 - C:\Program Files\nodejs\node.EXE
    npm: 9.8.0 - C:\Program Files\nodejs\npm.CMD
    pnpm: 8.12.1 - C:\ProgramData\chocolatey\bin\pnpm.EXE
  npmPackages:
    jest: ^29.7.0 => 29.7.0

I'm getting something similar but with
expect(result).toEqual([]) throwing the same error.


High Focus Mode

What is it?
High Focus Mode is a proposal of another way of managing tasks. In simple terms, the rules are:

Tasks should be assigned a priority
Higher priority tasks should be placed first
Users will only see one task at a time, with no way of getting the list saved tasks.

Why?
In High Focus Mode, users are assigned to tasks rather than choosing a random one to do. Limiting the choices can reduce distractions, and providing more direct quests. See this article about the known "Paradox of choice" or maybe Hick's Law.
How?
High Focus Mode must be implemented in a way it keeps Phived as simple as it is, whilst providing a new powerful solution that reduces distractions and maintain user goals.
As I suggestion, I propose a new button next to the logo with some with some Zen reference icon like a Buda or something what when active merges all tasks into two lines.
The first line is the task itself, with a button done, the way it is now.
The second line is a text input an a dropdown/select/slider that describes its priority.
To keep it simple. I suggest a dropdown or select that provides three levels of priorities:

Urgency
Normal
Forgettable

FAQ?
How many tasks can user add?
Unlimited
What if the user disables High Focus Mode?
It must delete all user registered tasks, but inform and ask beforehand.
Isn't it too complex for a simple todo app?
Maybe, it's just a suggestion what can be explored.
What if the user registers too many Urgent tasks? Will Forgettable tasks never be done?
I think so, it should be sorted first by priority, then by creation.

howdy! i find this idea interesting, but it is not something i'm a) willing to maintain b) confident in the ux win of
thank you for your contribution!


does it support auto-reconnect when rc shutdown and then come back ?

As title says.

@ppLorins Please use the gitter and ping me in there if you want to ask some general questions. I want to keep the issue tracker to issues and not a forum for general questions, that is what gitter is for. You can find the gitter link in the README.


Dev: Cannot update the official User Guide

Since v4.4.6 we cannot update the official User Guide.
See #8757
The following workflow does not work.
https://github.com/codeigniter4/userguide/blob/master/.github/workflows/deploy.yml
Run entrypoint.sh
Will download drone-ssh-1.7.4-linux-amd64 from https://github.com/appleboy/drone-ssh/releases/download/v1.7.4
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed

  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0

100 5580k  100 5580k    0     0  ***.6M      0 --:--:-- --:--:-- --:--:-- ***.6M
======CMD======
/opt/userguide/.github/scripts/deploy
======END======
2024/04/07 10:07:58 ssh: handshake failed: ssh: unable to authenticate, attempted methods [none publickey], no supported methods remain
Error: Process completed with exit code 1.

https://github.com/codeigniter4/userguide/actions/runs/8587951528/job/23532221115

@kenjis I have some Linux knowledge, do you need specific help with that?

@helmerdavila Thank you!
I don't know about administration situation for the official server at all.
@lonnieezell and @MGatner know.

======CMD======
/opt/userguide/.github/scripts/deploy
======END======
2024/04/14 04:19:56 ssh: handshake failed: ssh: unable to authenticate, attempted methods [none publickey], no supported methods remain
Error: Process completed with exit code 1.

https://github.com/codeigniter4/userguide/actions/runs/8678283370/job/23795012255

@kenjis it might be the that the type of the SSH key is not supported.
Here the docs about the GitHub action says something about it https://github.com/appleboy/ssh-action?tab=readme-ov-file#if-you-are-using-openssh

@kenjis I reached out on a forum thread.
I also have workaround ideas. Possibly the website could redirect to the github hosted documentation if that is less complex & more manageable. this is assuming Github is not billing for website usage, of course.

Now I've got the server admin privilege, and try to update the deployment workflows.
Does anyone know how to configure fingerprint with appleboy/ssh-action.
 ======CMD======
/opt/website/.github/scripts/***.sh
======END======
2024/05/18 10:53:48 ssh: handshake failed: ssh: host key fingerprint mismatch

https://github.com/codeigniter4projects/website/actions/runs/9139334282/job/25131504353

Since you just received the server admin privilege, are you running the original Docker container image?
I am just throwing out ideas to consider since I have dome much troubleshooting but an not very familiar with GitHub actions.

@bwosborne2 I just use appleboy/ssh-action.
See https://github.com/codeigniter4projects/website/blob/develop/.github/workflows/deploy.yml
This is for deployment of the official site, but we use the same appleboy/ssh-action for deployment of the user guide.
It is an issue in appleboy/ssh-action.
I configured the fingerprint according to the README.
But if I set the fingerprint, SSH handshake fails.
So I removed the fingerprint configuration for now.

Fixed. https://github.com/codeigniter4/userguide/actions/workflows/deploy.yml


Envoy crashing with NOT_REACHED_GCOVR_EXCL_LINE when loading YAML config using --config-yaml

Bug Template
Title: One line description
Description:

Problem Statement:
When using —config-yaml , we encounter a panic in json_loader.cc at line 315 (NOT_REACHED_GCOVR_EXCL_LINE), which is defined as a panic.  This panic is defined in assert.h at line 60 as an outcome we should never see unless code execution either (a) follows an unexpected path or (b) a “horrendous” bug exists.
Investigating the bug further, we find that the error is in a switch…case statement in json_loader.cc (which starts at line 246) during buildRapidJsonDocument().  This appears to be a type checking block, which tests for Arrays, Objects and Null values.  The method has likely reached some input on
the YAML file which is not one of these data types, but the output does not tell us anything further.

Expected behavior:
Envoy should return an error message that guides the administrator in correcting the problem.

Repro steps:

Use minimum YAML config from documents with --config-yaml option and observe output to stdout/err when running envoy from commandline.  At best there will be a silent error and the proxy will start.  At worst case, the service will not start and an error will be seen on screen (seel below).

Config:

Issue was reproduced using google_com_proxy.yaml and google_com_proxy_v2.yaml included with software.

 If it still repros can you provide the config that causes the crash?

The same problem in OSX。I'm using https://github.com/envoyproxy/envoy/blob/master/configs/google_com_proxy.v2.yaml as my yaml config and run envoy with the command as path-to-bazel-bin/envoy-static --config-yaml path-to-my-config.yaml .

@scaldwell-atlassian @tony-shi that --config-yaml expects the content of the .yaml config file (unless the intention is not this).
cat configs/google_com_proxy.v2.yaml | ./bazel-bin/source/exe/envoy-static --config-yaml "$(</dev/stdin)"

Works.

@dio we still shouldn't crash here but cleanly exit if there is a config error. Do you know what the actual bug is?

@mattklein123 I think because of the returned node.Type() is not something that can be converted to JSON. (a string is a valid YAML but it cannot be converted to JSON).
Submitted a PR here: https://github.com/envoyproxy/envoy/pull/4110


Serene template won't F5 out of the box.

I'm using VS2015, I installed the template and hit F5. It appears that the script project is not built when launching the web project. Under solution configuration if you make the script project a dependency of the web project it should alleviate this.

I am also using VS2015, and but i can't reproduce this.
As template contains an already compiled version of Serene.Script under Serene.Web/Scripts/site/Serene.Script.js, you actually don't have to build before F5. What kind of error you are getting?
Maybe something is different in your environment. I also tested in some friends computer.

Anyway i updated Serene.sln with dependency, thanks for suggestion.

Huh, that's odd. As for specific errors I'm not sure, there were about 2,500 and when I see that it usually means one or more dependent projects failed to build. So I built .Script (just right click, build), then built .Web, then f5 worked.
It's entirely possible this issue is specific to me. My current installation has seen progression from vs2012 to vs2013 to vs2015 ctp, to vs2015 rtm. There could definitely be remnants or crud causing the issue.

How long does it take for the online template to propagate? I'd be happy to clean things up locally and test this for you.

I tested now but seems like Visual Studio template ignores the build order i set while publishing template.
I'll work a bit more to find a workaround. Your issue might be specific to Saltarelle compiler not being located under packages directory, but i have no idea why VS2015 didn't extract it from the template.

Tried also changing project order in root template but this results in startup project set to Script one. And there is no way to set it. Seems like MS created multi project templates in a hurry :)

I created a new clean project from the template and this time there were no issues. False alarm maybe?

Maybe, anyway thanks again for reporting ;) Seems like need a wizard to set dependencies.

Another possibility is if you had an older / different version of Saltarelle compiler, Visual Studio couldn't load new targets and got confused so you got errors. It happens to me sometimes when i upgrade Saltarelle. I needed to reopen VS.


zipx support

i would like to suggest addind zipx support

Duplicate of https://github.com/Unpackerr/unpackerr/issues/489

I'd suggest not downloading zipx files. Nothing good has ever comer out of them. If you'd like to tell me otherwise, please re-open and provide your explanation.


Remove C-style for-loop in sample

https://github.com/jathu/UIImageColors/pull/13

Hey, I merged in your PR in the current working branch: https://github.com/jathu/UIImageColors/commits/completionHandler


Format package with JuliaFormatter

This uses the package JuliaFormatter.jl to format the package according to the Blue Style Guide, with the modification that tab indentation is set to 2 spaces instead of the default 4 spaces.
Over all it is very simple to use, to reproduce locally you would enter ~/.julia/dev/ITensors and type:
julia> using JuliaFormatter

julia> format("."; verbose = true)
[...]

Options like the style guide and indentation are saved in .JuliaFormatter.toml. That command will format every file in the package.
When I ran it only only made 2 mistakes. For example it changed:
function randomMPS(sites::Vector{<:Index}, state, linkdim::Int=1)::MPS

to:
function randomMPS(sites::Vector{<:Index}, state; linkdim::Int=1)::MPS

i.e. it changed a regular argument to a keyword argument (it did this same thing in another place as well). For now I just surrounded those lines with the comments:
#! format: off
function randomMPS(sites::Vector{<:Index}, state, linkdim::Int=1)::MPS
#! format: on

to make JuliaFormatter ignore them, I'll raise an issue about it.
I've also added a Github Actions CI based on this which should automatically format PRs, which checks the formatting and fails if any of the files are formatted incorrectly (which I guess then needs to be fixed locally with the format command, pushed, and then it will check again).

Codecov Report

Merging #640 (520a3e2) into master (07acffd) will decrease coverage by 0.39%.
The diff coverage is 82.61%.

@@            Coverage Diff             @@
##           master     #640      +/-   ##
==========================================
- Coverage   82.10%   81.71%   -0.40%
==========================================
  Files          52       52
  Lines        5470     5561      +91
==========================================
+ Hits         4491     4544      +53
- Misses        979     1017      +38

Impacted Files
Coverage Δ

...ontractionSequenceOptimization/contraction_cost.jl
0.00% <0.00%> (ø)

...onSequenceOptimization/depth_first_constructive.jl
0.00% <0.00%> (ø)

...c/ContractionSequenceOptimization/three_tensors.jl
98.03% <ø> (ø)

src/NDTensors/NDTensors.jl
100.00% <ø> (ø)

src/argsdict/argsdict.jl
0.00% <0.00%> (ø)

src/arrow.jl
100.00% <ø> (ø)

src/developer_tools.jl
0.00% <0.00%> (ø)

src/mps/deprecated.jl
0.00% <0.00%> (ø)

src/not.jl
100.00% <ø> (ø)

src/readwrite.jl
0.00% <0.00%> (ø)

... and 42 more

Continue to review full report at Codecov.

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


Create an intro

Add an intro about yourself: who are you, what is your strength, why are you here.

 I particularly enjoyed the FrontEnd direction, so I dedicated all my time to learning. I'm here to receive feedback from experts in the field, improve my skills, and work on real projects.


Add an option to configure country translation

I'd like to add an option to allow to translate labels of countries: https://symfony.com/doc/current/reference/forms/types/country.html#choice-translation-domain
A PR will follow

@Sylry  Thanks for the PR, I just provided feedback on it :)

The PR was merged, so I'll close this issue. Thanks again!


Clickhouse source will pull up all of the table data when the job start, TM will crash down if table data too big

Any connect options to support limit the data pulling when job start ?

Sorry, not support for now;
Weccome to contribute this PR.

Sorry, not support for now, you can read data by partition or limit the number of reads.
In batch mode, seems all data will be read at once, is there any way to read data in multiple batches in one job?

Sorry, not support for now, you can read data by partition or limit the number of reads. In batch mode, seems all data will be read at once, is there any way to read data in multiple batches in one source instance?

Thank you for your reply.
But my job is in streaming mode, and the source DDL looks like this:
tableEnv.executeSql(
      """
        |CREATE TABLE stock_tbl (
        | `id` string,
        | `stock_id` string,
        | `display_type` int,
        | `display_name` string,
        | `data_type` int,
        | `compare_type` int,
        | `value` double,
        | `data_source_id` string,
        | `date_range_begin` string,
        | `date_range_end` string
        |) WITH (
        | 'connector' = 'clickhouse',
        | 'url' = 'clickhouse://xxx:8123',
        | 'username' = 'xxx',
        | 'password' = 'xxx',
        | 'database-name' = 'xxx',
        | 'table-name' = 'xxx',
        | 'scan.partition.column' = 'xxx',
        | 'scan.partition.num' = '4',
        | 'scan.partition.lower-bound' = '1',
        | 'scan.partition.upper-bound' = '4'
        |)
        |""".stripMargin)

The clickhouse table has 130 million records, how can I limit the number of reads? I didn't see the relevant options in your examples

I mean select * from table limit n， but this does not meet your needs.
scan.partition.* can help to read data in parallel, each subtask reads a part of the whole table data.
In streaming mode, data is consumed one by one and sent downstream, it shouldn't cause out of memory, I did a test, in streaming mode, read ClickHouse and write MySQL:

About your problem:
You can use config pipeline.operator-chaining = false to disable chaining job operators, this can help to locate the problem.


Ignore an error or warning only in certain line

I have a latex document with the next commands (from package silence)
\WarningFilter*{minitoc(hints)}{W0023}
\WarningFilter*{minitoc(hints)}{W0024}
\WarningFilter*{minitoc(hints)}{W0025}
\WarningFilter*{minitoc(hints)}{W0026}

Now, I get the next syntastic warnings:

preamble.tex|7 col 32 warning  36| You should put a space in front of parenthesis.
preamble.tex|8 col 32 warning  36| You should put a space in front of parenthesis.
preamble.tex|9 col 32 warning  36| You should put a space in front of parenthesis.
preamble.tex|10 col 32 warning  36| You should put a space in front of parenthesis.

I can disable the warning by let g:syntastic_quiet_messages = { 'regex': 'You should put a space'} but if I don't put a space later in my document I would not get the error.
Is there a way to ignore only the error in columns 8 to 10? or maybe disable syntastic inside \WarningFilter{}?

Is there a way to ignore only the error in columns 8 to 10?

Syntastic doesn't care about the contents of your files.  What syntastic does is run third party linters against your files, parse their output, and show you the results in a window.  So the only way to do what you want would be to configure said linters to ignore everything inside \WarningFilter{}.  Sadly the linters for TeX / LaTeX known to syntastic (chktex and lacheck) are are not particularly useful.


about the dimension

Hi, thanks for opening the source code. I read the paper, I find you use logits and features before pooling to perform diffusion. but for the logits, I guess the dimension is [B, C] B is the batch size, and C is the class number. This will cause a dimension mismatch in autoencoder, how to solve it. Thanks for your reply.

Hi @JINzezhong7 ,
You can see the code below. For logits with shape [B, C], we reshape it to [B, C, 1, 1], and use 1x1 convolutions in diffusion loss (diffusion model, autoencoder).
https://github.com/hunto/image_classification_sota/blob/6cb144105fc5c2f778e51cc66e35314938f96fae/lib/models/losses/kd_loss.py#L138

Hi, for this diffusion distillation, is it diffkd with both features and logits? Or just diffkd with features. looking forward to your reply.

您好，我最近在看您的diffusion knowledge distillation 的paper，然后我尝试将它应用在我的任务上，但我发现ddim_loss 不收敛，请问是什么原因呢。非常期待您的回答。
发件人: Tao Huang @.>
日期: 星期一, 2024年3月11日 上午10:43
收件人: hunto/image_classification_sota @.>
抄送: JIN, Zezhong [Student] @.>, Mention @.>
主题: Re: [hunto/image_classification_sota] about the dimension (Issue #14)
CAUTION: This email is not originated from PolyU. Do not click links or open attachments unless you recognize the sender and know the content is safe.
Hi @JINzezhong7https://github.com/JINzezhong7 ,
You can see the code below. For logits with shape [B, C], we reshape it to [B, C, 1, 1], and use 1x1 convolutions in diffusion loss (diffusion model, autoencoder).
https://github.com/hunto/image_classification_sota/blob/6cb144105fc5c2f778e51cc66e35314938f96fae/lib/models/losses/kd_loss.py#L138
―
Reply to this email directly, view it on GitHubhttps://github.com/hunto/image_classification_sota/issues/14#issuecomment-1987527444, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A7NOWSTPPS5TW7P4BUDUFZTYXUK3RAVCNFSM6AAAAABEKKWJA6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSOBXGUZDONBUGQ.
You are receiving this because you were mentioned.Message ID: @.***>
[https://www.polyu.edu.hk/emaildisclaimer/PolyU_Email_Signature.jpg]
Disclaimer:
This message (including any attachments) contains confidential information intended for a specific individual and purpose. If you are not the intended recipient, you should delete this message and notify the sender and The Hong Kong Polytechnic University (the University) immediately. Any disclosure, copying, or distribution of this message, or the taking of any action based on it, is strictly prohibited and may be unlawful.
The University specifically denies any responsibility for the accuracy or quality of information obtained through University E-mail Facilities. Any views and opinions expressed are only those of the author(s) and do not necessarily represent those of the University and the University accepts no liability whatsoever for any losses or damages incurred or caused to any party as a result of the use of such information.


Replaced the shutdown check with a wider reaching recursive hook check

@scottjpearson, would it be worth your time to review this perchance?  I'm trying to get in the habit of getting at least one other set of eyes on higher risk changes.  You probably know the most about module hook calls of everyone else on the team.

Does this work "per module" or "per (original) email being sent"? Put otherwise, if both, module A and B subscribe to the email-hook (assuming A being processed before B), will B see an email modified and re-sent via REDCap::email by A? The modified version? And not only the original version?
This ties in with #261.
I could try to find a bit of time to work on a PR regarding this. Do you think this would be feasible as outlined in #261?

@grezniczek, I'm afraid I don't currently understand all possible cases well enough to answer your questions definitively.  It depends on what each module's redcap_email hook does...  I do feel confident enough to go ahead and merge this to allow redcap_email hooks in modules to trigger errors and call REDCap::email() without causing an infinite loop.


Wiki Update: acoustic_pinger_tutorial

Reading acoustic beacon messages section of the acoustic_pinger_tutorial seems outdated. Paticularly, the launch command to bring up the VRX 2019 simulation environment needs to be updated since the vrx_2019.launch file is no longer in the vrx_gazebo package, but instead in the vrx_2019 package (with a different name, i.e. vrx.launch). The correct launch command (according to the updated repository structure) should therefore be as follows:
$ roslaunch vrx_2019 vrx.launch

Additionally, in order to reproduce results similar to those described in Visualize sensor measurements in RViz section of the same Wiki, the pinger position needs to be set to [65.0, -47.5, -2]. Pull request #394 has been created with updated pinger.yaml file to include these coordinates. A hint to comment/uncomment these coordinates may be included in the tutorial Wiki.

In accordance with recent changes to pull request #394, the hint to comment/uncomment pinger coordinates (as mentioned in earlier comment) is no longer required. However, the first launch command under section Visualize sensor measurements in RViz of the tutorial Wiki needs to be updated.
From:
$ roslaunch vrx_gazebo pinger.launch

To:
$ roslaunch vrx_2019 pinger.launch

Thanks! The wiki has been updated.

See https://github.com/osrf/vrx/pull/394


Minor Fix on seq2seq_attn

tf.flags cannot handle options containing a hyphen in the middle. Use argparse instead.

I don't think this change is necessary. All Texar-TF examples use tf.flags and use underlines instead of hyphen. Let's keep this unchanged/consistent to avoid confusion... Indeed the inconsistency between the conventions of Texar-TF's flags (using underline) and Texar-PyTorch (using hyphen) has caused confusion for some of the users