AV Control Systems Widgets

Description
Node-RED is heavily used in the AV Controls Systems industry, and Dashboard 2.0 (or some addition third-party library) could provide a set of recognisable, and valuable controls & visualisations to tailor to this audience.
Have you provided an initial effort estimate for this issue?
I have provided an initial effort estimate

Hello,
Here are some ideas:

The ability to make sliders vertical. (the way dashboard 1.0 handled this was intuitive) and to be able to select logarithmic or linear scaling
horizontal and vertical gauges that can be used for VU meters. Logarithmic as well as linear.
To be able to change the look of the toggle switch so it resembles a button. Think mute or solo on an audio console.

Thank you for all the great work you are doing, it is greatly appreciated! Let me know if I can help.


Enhancement: Display the model name in the conversation

What features would you like to see added?
Display the model name in the conversation.
More details
The title displayed in the reply content area of the conversation shows the provider name/plugin name, which causes confusion when there are multi-model conversations. It is hoped that the model name currently used for the reply can be added after the title and its name is consistent with the drop-down selection box.
Which components are impacted by your request?
UI
Pictures

Code of Conduct

[x] I agree to follow this project's Code of Conduct

Hey there, I can work on this issue. Here are a few of the potential approaches to fix this issue:

The width of the left sidebar can be increased and the title of the conversation can be truncated to include the model name at the end of the conversation title text.
Model names can be displayed when the user hovers over some conversation, allowing them to only see the model name for a specific conversation.
Model names can be displayed below the title of each conversation in the left sidebar.

These are some of my thoughts. Feel free to let me know your ideas and hopefully, we can collaborate to solve this issue.

Hello @navyansh007 ,
I have added images to the issue.
The requirements are simpler than your described; displaying the model name for a single piece of information will suffice.

Okay, I think I got the issue now. I am now going to start working on this one. I will just include the full name of the model that was used to send a message in a conversation. I have also added the image for the change that I am going to make. Please do let me know if I am heading in the right direction.
For the first message, I used GPT-3.5-Instruct, and then for the next message, I used GPT-4o, but these are not being displayed in the conversation. So, I will modify the code to include the full model name.

Yes, it is as described in the picture and text.

It's also an issue inside the prompt box that you can't necessarily tell which model it is. It says gpt-4, but it could be 4o or 4 turbo...

Whoa, which version supports comparing model output, and how do I turn that on?

@navyansh007 I would call the label you are pointing to as "sender" labels. These do not serve the specify the model name.
For this specific issue, I was thinking of an option (important) to toggle the UI behavior to show separate text to the right of the "Sender" which shows the full model name, verbatim.
I would not accept a PR as your image proposes.

Whoa, which version supports comparing model output, and how do I turn that on?

@avimar it's on the latest commit to main branch, more info here: https://github.com/danny-avila/LibreChat/pull/3191

Okay @danny-avila
I got what you are saying, and going to start working on the same.


[core/camera]Update camera_android.py; fixes camera for Python 3

In Python 3, the buffer needs to an explicit bytestring rather than a string; hence changing:
buf = '\x00' * self._bufsize
to
buf = b'\x00' * self._bufsize
Fixes various issues:
in Kivy https://github.com/kivy/kivy/issues/5939
and in associated garden project ZbarCam https://github.com/kivy-garden/garden.zbarcam/issues/13

Is this still working with Python 2? I mean did you tried?

I haven't because I haven't got a Python 3 environment set up to test it (I am very new to Kivy). However, it shouldn't make any difference in Python 2.6 as b'xxxxx' is completely identical to 'xxxxx' in Python 2. It will cause a SyntaxError in Python 2.5 as the syntax was introduced in 2.6, but I believe Kivy only supports 2.7+?

@gbm001 Thanks you!

Where can i update this? i cannot find the  camera_android.py file....
I'm trying to run this -> https://kivy.org/doc/stable/examples/gen__camera__main__py.html on Kivy Launcher. It runs perfectly on my computer, but crashes automatically on Kivy Launcher.

I checked the camera_android.py file and it already was:      buf = b'\x00' * self._bufsize
I'm trying to run this -> https://kivy.org/doc/stable/examples/gen__camera__main__py.html on Kivy Launcher. It runs perfectly on my computer, but crashes automatically on Kivy Launcher.
Do you have any idea what the reason could be?


Waste Lift

This and #120 needs to be done before Trieste can run full time for better or worse. Preferably #85, too.
Currently the only way I can get people out of the Waste Zone is by spawning two bluespace portals, which isn't very ideal. What we really need is just like, a stairwell object or a ladder or something that you can walk into and it just climbs you down to the waste zone and vice versa. Doesn't need to be fancy like the diving bell, they just need a way to get out of the Waste Zone if they fall.

working on a ladder you climb up and down


Unable to get the project up and run

I tried both methods  but no luck as I cannot get this project up and run. Method 1, download archive file, but error displayed 'no such file or directory stat '/generator/sdr-bootstrap-prepack-master/.structor/sandbox'.  Method 2,  I cannot find sdr-bootstrap-prepack project from project gallery. Please advise.

this project is compatible with version 0.2.9


feat(gateway): make forked pull-request builds optional

Makes building pull requests from forked repos optional.  Disabled by
default.

Good point, let me look into that quick

Re-LGTM with the env var change

Merging this PR.  I will start a WIP for disabling at the project level


[SPARK-48997][SS] Implement individual unloads for maintenance thread pool thread failures

What changes were proposed in this pull request?
Currently, an exception in the maintenance thread pool today can cause the entire executor to exit. This PR changes the maintenance thread pool exception logic to only unload the providers that throw exceptions—the entire thread pool is not stopped.
Historically, the way that we bubbled exceptions to the maintenance thread task (which manages the pool) was in the following way:

A thread in the maintenance thread pool sees an exception and it sets threadPoolException to be non-null
The next time that doMaintenance() gets called by the maintenance task (which is scheduled periodically), it checks to see whether that exception is non-null
If it is non-null, it throws that exception
It then catches that exception, and stops the thread pool

But now that we don't need to stop the entire maintenance thread pool and unload all of the providers, when an exception is encountered in a maintenance thread pool thread, we can just have that thread unload itself. Then, we can remove the onError callback because it will no longer be needed.
Why are the changes needed?
Please see the JIRA for a full description of the error conditions. We don't want executors to exit because of maintenance thread pool thread failures.
Does this PR introduce any user-facing change?
No.
How was this patch tested?

All existing UTs must pass. One test was removed, though (see below).
Added a new UT where a fake state store provider is used; this state store provider throws exceptions for partitions 0 and 1. The UT asserts that these two providers become unloaded, but any other ones are not.

There was an existing test, SPARK-44438: maintenance task should be shutdown on error, which actually mentions that the SparkUncaughtExceptionHandler should not be invoked even if there is an exception. However, this test does not load more than 1 provider. Thus, the only loaded provider is the one that experiences the exception. We know that the root-cause of this issue is that if there exists another provider that is waiting on a lock (i.e. on an RPC in verifyStateStoreInstanceActive), then that provider will receive an InterruptedException, which will lead to the SparkUncaughtExceptionHandler firing.
Was this patch authored or co-authored using generative AI tooling?
No.

@HeartSaVioR, addressed! Thanks for the review.

Thanks! Merging to master.


how to inference to get embedding with this code？

https://github.com/lucidrains/byol-pytorch/tree/0.5.1#advanced I've added the ability to do so in 0.5.1!


TagUI from docker container error launching Chrome

I got the error as below.
work@651766aebdf0:~$ tagui tagui/flows/samples/1_google.tag /home/work/tagui/src/tagui: line 398:  1769 Trace/breakpoint trap   $chrome_command --user-data-dir="$TAGUI_DIR/chrome/tagui_user_profile" $chrome_switches $window_size $headless_switch $no_sandbox_switch > /dev/null 2>&1

hi, I meeting the same error when i run rpa on centos for . Have you solved the problem? Hope for your answer, than you very much!


Enable ThrottleRequests middleware to throw errror

At times, its must to render errror in appropriate format before sending it to client. Mostly, in cases where client expects a json  or xml. This is a non breaking change, which will enable an option to throw error if throttling limit is reached, which later can be catched and handled appropriately in error handler.

Please revert the phpdoc changes.

:-1: for this anyway


Local LLM Ollama:llama3.1

**  Artifacts with Local Models**
*** Not artifacts are shown as with other models, When trying with my setup locally Ollama models do not show any Artifacts in the side.

The artifacts are shown with Antrophic, Gpt-4, I did not tried with other models.**

** env file with correct api keys for all **

I had some success with it today, but you have to make sure the prompt is very explicit:

could also pull off a very basic todo app

Thank you, I am gonna test it.
Best,


DNN-8565: added support for bulk-insertion of DataTable object

Support for bulk-insertion of DataTable object (with multiple rows) into the database.

Code review done


Large table row validation partitioning for memory optimization

For large table row validations, DVT can run into memory/CPU limitations due to the nature of a row by row comparison. DVT should have an option to partition a table using filters (WHERE condition) and spawn validation configs for each of the partitions. This way, a distributed system can validate a table partition rather than a whole table at a row level.
For the first iteration of this issue, we can write sample code that shows how to filter a table based on a numeric PK and run validations based on those filters.

A simpler solution may be to provide an option to data-validation --splits=5 or something equivalent telling the data validator to split the validation dataset into 5 parts and validate one part at a time. If the users want to do distributed solutions - they can do that themselves. To split the dataset, I used the following statement in Oracle - can do similar things in Postgres and BigQuery I am sure. The min and max from the sql statement below provide the filters for each split. It works great with a single primary key. It may also work for a composite primary key
SELECT Min(pk),
Max(pk),
Count(*),
nt
FROM   (SELECT pk,
Ntile(5)
over (
ORDER BY pk ASC) nt
FROM   my_table)
GROUP  BY nt
ORDER  BY nt ASC

Yeah, that is the idea behind the partitioning. We may support a command such as data-validation generate-batches that creates the YAML configs for each filter and dumps them into a directory. The user can then easily run a for-loop over each config in the folder like so: data-validation configs run config_1.yaml or choose to distribute across nodes.
Looks like Ibis support NTile here: https://github.com/ibis-project/ibis/blob/0f748e08d6af1ef760b0191e5cdd0ae0170fff64/ibis/expr/operations/analytic.py#L211
Which can help construct the query to generate the batches

Closed with PR #653


Add support for admonitions

Feature request to add support for ex_docs-style admonitions in the markdown renderer.

Hey Kip! GitHub Markdown doesn't support admonition blocks, so I'm not sure if we should support it, especially that .livemd files will be rendered as Markdown on GitHub soon (I think). @josevalim wdyt?

@jonatanklosko yes, Markdown hardly a formal standard for sure.
My 2c is that the power of Liveview is not upcoming rendering in Github, but attaching it to a live running Elixir instance. And in these cases, as I start building tutorials and presentations, I believe that admonitions would be incredibly useful to emphasise key points, breakup up a document making it easier to read and deliver an overall better experience.
Admonitions are, after all, valid Markdown markup.  Just not very pretty if rendered with an engine that doesn't support them.

BTW, really awesome work @jonatanklosko, such an amazing addition to the Elixir ecosystem. I'm giving my first ever ElixirConf presentation this Friday - and its all in Livebook.

There are two issues here: we need to support special classes AND support IAL notation from kramdown, and I am not comfortable with making both choices right now.
GitHub is considering their own syntax now, which I dislike, so I would like to wait a bit more before we make an official move. :)

Update from looking into this again recently: in our year of the lord 2024, it looks that that discussion has borne fruit! GitHub has shipped support for several admonitions. Check it out to see the kitchen sink, they've updated the description and they look very nice.
Is it perhaps time to consider re-opening this, or discussing some ecosystem-wide unification effort?

GitHub is considering https://github.com/github-community/community/discussions/16925, which I dislike

It looks like they may have changed the syntax since you last looked at it, from:
> **Note**
> This is a note

to
> [!NOTE]
>
> This is a note

Personally, I really like this implementation.
One original design goal of markdown is to look sensible when not rendered via anything special at all. Obviously, the current ex_doc "styled" syntax (#### Error {: .error}) via special classes and IAL notation does not really do that; see the comparisons below.
The current GH "semantic" syntax ([!ERROR]), on the other hand, extends markdown with a new concept that if not supported by the renderer, still does a good job of looking like an importantly titled blockquote header you cannot easily scan past without noticing.
On the other hand, the current GH syntax does not support custom admonition titles, and they are definitely working through some edge cases still, so it may be a bit premature.

Comparison
Here's how the tutorial ex_doc admonitions look side-by-side with the GFM ones; for a livemd file rendered in:
Plain text
(vsCode custom theme markdown highlighting)

ExDoc v0.32.1

Livebook v0.12.1

GitHub

Error {: .error}
This syntax will render an error block

[!WARNING]
Critical content demanding immediate user attention due to potential risks.

 :(

Those are very good counter-points and I like your proposal more than any syntax to date. Hope it gains traction!


I executed Usage example is error

launchx@launchx-System-Product-Name:~$ python
Python 2.7.12 (default, Dec  4 2017, 14:50:18)
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.

import graph_nets as gn
import sonnet as snt
input_graphs = get_graphs()
Traceback (most recent call last):
File "", line 1, in
NameError: name 'get_graphs' is not defined
graph_net_module = gn.modules.GraphNetwork(
...     edge_model_fn=lambda: snt.nets.MLP([32, 32]),
...     node_model_fn=lambda: snt.nets.MLP([32, 32]),
...     global_model_fn=lambda: snt.nets.MLP([32, 32]))
output_graphs = graph_net_module(input_graphs)
Traceback (most recent call last):
File "", line 1, in
NameError: name 'input_graphs' is not defined

Thanks for opening the issue. That seems to be taken form the usage example:
import graph_nets as gn
import sonnet as snt

# Provide your own functions to generate graph-structured data.
input_graphs = get_graphs()

In that example get_graphs() is assumed to be a function provided by the user (see comment) that returns a graphs.GraphsTuple. You can find more information on how to build those in the demos.

As a newbie, I am confused about the data format of Graph Nets input. I don't understand how Graph Nets works. I hope you can provide some simple styles of data. Thank you

I create my own graphs with the code as
def get_ordered_multi_digraph():
  G = nx.OrderedMultiDiGraph()
  # 定义图的节点
  for node_index in range(10):
    # add_node 接受attr_dict=None, **attr.
    # graph_nets的networkx_to_data_dict方法需要graph具有一个feature属性，
    # feature属性表示的是节点的特征
    G.add_node(node_index, features=np.array([node_index]))

  # 定义 receivers和senders
  senders = [1,1,2,2,3,4,5,3]
  receivers = [2,3,4,5,6,8,8,7]
  # 定义边
  for edge_index, (receiver, sender) in enumerate(zip(receivers, senders)):
    # Removing the "index" key makes this test fail 100%.
    edge_data = {"features": np.array([edge_index]), "index": edge_index}
    G.add_edge(sender, receiver, **edge_data)
  G.graph["features"] = np.array([0.])
  #H = nx.path_graph(10)  # 生成10个节点，由0-9表示，由10-1条边线性连接
  #G.add_nodes_from(H) # 把10个节点加入到图里
  #G.add_edges_from([(1,2),(1,3),(2,4),(2,5),(3,6),(4,8),(5,8),(3,7)], weight=3) # 把指定的节点连接起来
  print(list(G.nodes(data=True)))
  return G

When I run the sample as
nxs = get_ordered_multi_digraph()
show_graph(nxs)
input_graphs = utils_np.networkxs_to_graphs_tuple([nxs])
# input_graphs = utils_np.data_dicts_to_graphs_tuple([data_dic])
# Create the graph network module.
graph_net_module = gn.modules.GraphNetwork(
    edge_model_fn=lambda: snt.nets.MLP([32, 32]),
    node_model_fn=lambda: snt.nets.MLP([32, 32]),
    global_model_fn=lambda: snt.nets.MLP([32, 32]))

# Pass the input graphs to the graph network, and return the output graphs.
output_graphs = graph_net_module(input_graphs)
res = utils_np.graphs_tuple_to_networkxs(output_graphs)

I got an error as
/usr/local/lib/python3.6/dist-packages/graph_nets/utils_tf.py in repeat(tensor, repeats, axis, name)
    535     repeated_tensor = _inside_to_axis(repeated_shifted_tensor, axis)
    536
--> 537     shape = tensor.shape.as_list()
    538     shape[axis] = None
    539     repeated_tensor.set_shape(shape)

AttributeError: 'tuple' object has no attribute 'as_list'

originally defined at:
  File "<ipython-input-8-a4b8bd9ccc0d>", line 11, in <module>
    global_model_fn=lambda: snt.nets.MLP([32, 32]))
  File "/usr/local/lib/python3.6/dist-packages/graph_nets/modules.py", line 282, in __init__
    edge_model_fn=edge_model_fn, **edge_block_opt)
  File "/usr/local/lib/python3.6/dist-packages/graph_nets/blocks.py", line 403, in __init__
    super(EdgeBlock, self).__init__(name=name)
  File "/usr/local/lib/python3.6/dist-packages/sonnet/python/modules/base.py", line 215, in __init__
    custom_getter_=self._custom_getter)
  File "/usr/local/lib/python3.6/dist-packages/tensorflow/python/ops/template.py", line 154, in make_template
    **kwargs)

I use tfp-nightly-0.6.0 and dm-sonnet-1.23, graph-nets-1.0.2

Hi, you are feeding numpy data into your graph.
You should do
input_graphs = utils_tf.data_dicts_to_graphs_tuple([data_dic])

@vbapst yep, you are right. utils_tf.data_dicts_to_graphs_tuple([data_dic]) fix the no as_list error well.
And for more information, I should also change my np dtype from int32 to float, for an example,
G.add_node(node_index, features=np.array([node_index]))

should change to
G.add_node(node_index, features=np.array([node_index], dtype=np.float))

Run "graph nets basics demo" in browser
The new "graph nets basics demo" is a tutorial containing step by step examples about how to create and manipulate graphs, how to feed them into graph networks and how to build custom graph network modules. It should contain most of the answers to these questions.
Hope this helps.

Leaving this here as a note to others who might end up here because googling the error has this as a top result.  This same error happens if you mistakenly use utils_np.data_dicts_to_graphs_tuple instead of utils_tf.data_dicts_to_graphs_tuple.  So ensure you are using the tf version if you are passing the resultant object into tensorflow.

NameError: name 'get_graphs' is not defined


Fix issue #636

Throws an error if type definitions detected in queries other than "OperationDefinition" and "FragmentDefinition".
TODO:

[x] Make sure all of the significant new logic is covered by tests
[x] Rebase your changes on master so that they can be merged easily
[x] Make sure all tests and linter rules pass

This is great!


Operator redesign fixes

What type of PR is this?
/kind bug
/kind failing-test
What does this PR do / why we need it:
This PR fix missing application status report of argocd instance
This PR fixes tests that due to miss-configuration
Have you updated the necessary documentation?

[ ] Documentation update is required by this PR.
[ ] Documentation has been updated.

Which issue(s) this PR fixes:
Fixes GITOPS-4670
How to test changes / Special notes to the reviewer:

We also have 2 tests names 1-032, can we rename them to avoid confusion?


Unable to run the code for amplitude features, connectivity features and spectral features

Dear experts,
I am working on EEG data analysis for the classification tasks. I am looking for a feature extraction technique for classification.  I found your paper  "NEURAL: quantitative features for newborn EEG using Matlab". It is very interesting and I want to work on it. I have EEG data and I want to calculate quantitative features for classification.
I have downloaded your code but unfortunately, I am not able to run the code. I got the following error message
Struct contents reference from a non-struct array object.
Error in spectral_features (line 47)
freq_bands=params_st.freq_bands;
I am working on 62 channel EEG data. it is in form 62*30200 for one trail. Please tell me how to work on your code with this kind of data.
Thank you very much

Have you modified the 'neural_parameters.m' file? And if so, could you please paste in the file (or changes) here? Thanks.

No, I didn't modify the file. I am using EEG data from 62 (10-20 electrode system) channels, I don't understand the way to modify the file. However, I tried something.
LP_fc = 60;  % low-pass filter cut-off
Fs_new = 256; % down-sample to Fs_new (Hz) (sampling rate 256 Hz)
Montage
bipolar montage for NICU babies:
BI_MONT = {{'F4','C4'},{'F3','C3'},{'C4','T4'},{'C3','T3'},{'C4','Cz'},{'Cz','C3'}, ...
{'C4','O2'},{'C3','O1'}}; this is given in your code.
Please tell me how to modify this information.

What version of Matlab are you using? And what operating system?
Also, did you try to run the example before any modifications? e.g. from the README:
% generate EEG-like data (coloured Gaussian noise)
data_st=gen_test_EEGdata(5*60,64,1);

% define feature set (or can define in neural_parameters.m):
feature_set={'spectral_relative_power','rEEG_SD', 'connectivity_BSI'};

% estimate features:
feat_st=generate_all_features(data_st,[],feature_set);

I am using MATLAB <IP_ADDRESS>1360 (R2016a) version.
Operating system windows10.
Also, I run the demo code and got the following error:
Undefined function 'contains' for input arguments of type 'char'.
Error in channel_hemisphere_pairs (line 73)
if(contains(ch_left, ch1) || contains(ch_left, ch2))
Error in connectivity_features (line 82)
ipairs = channel_hemisphere_pairs(ch_labels);
Error in generate_all_features (line 178)
feats_epochs(e,:)=connectivity_features(x_ep,Fs,feat_set{n},[], ...

Seems like the contains function was introduced in R2016b (see docs). I'll add a fix for this but may be difficult to maintain backwards compatibility for everything, as Matlab is pretty awful for this.

Can you try replacing
if(contains(ch_left, ch1) || contains(ch_left, ch2))

with
if ~isempty(strfind(ch_left, ch1)) || ~isempty(strfind(ch_left, ch2))

There might be other issues with R2016a too.

Yes, I am able to run the demo code.
Please tell me how to modify the neural_parameters.m file for 62 channel EEG data.

Use the generate_all_features function to generate the features. You can pass either a data structure of the form:
data_st =

  struct with fields:

           Fs: 64
     eeg_data: [8x19200 double]
    ch_labels: {'C3-O1'  'C4-O2'  'Cz-C3'  'C4-Cz'  'C3-T3'  'C4-T4'  'F3-C3'  'F4-C4'}

as an input argument or the file name to a .mat file containing a similar structure. The fact that you have 64 channels instead of 8 here shouldn't be a problem (or bipolar, i.e. can be monopolar). Set the parameters for the features in neural_parameters.m, or just use the default options.
Pass the features you want to generate as a cell array, as in the demo in the previous post. See help generate_all_features for more details on this function.

Ok,
I will try to work as per your suggestion.
Now I tried with some random data, ex: x=rand(1,10000) and supplied as input, it is giving four numbers of spectral features or amplitude features however we change the data. Is there any standard that the code will give us only four number of features.

Each of those 4 numbers is for each frequency band. You can change the frequency bands in neural_parameters.m. So for example, using the previous data structure data_st generated previously,

feature_set = {'spectral_relative_power',  'rEEG_SD',   'FD'};
feat_st = generate_all_features(data_st, [], feature_set);

then the features are:
feat_st =

  struct with fields:

    spectral_relative_power: [0.8710 0.0629 0.0293 0.0354]
                    rEEG_SD: [12.7904 3.1765 2.4088 1.8136]
                         FD: 1.4857

i.e. 4 values for relative spectral power and SD of rEEG for the 4 frequency bands and 1 for fractal dimension (FD) because it is estimated over 1 frequency band, set in neural_parameters.m (as feat_params_st.FD.freq_bands).
Maybe helpful to see Section 5.2 from the arXiv paper.
If that answers your questions then I'll close this thread. If you find other bugs or have any more questions then please open another thread. Thanks.

Dear John,
I am really clear with your response and it is really great interaction with you. I think I will get some good results. I want to apply this code for emotion recognition using EEG.
Please allow me to interact with you in the future. I want to do some good work on EEG and fMRI data analysis.
You are really awesome and thank you very much once again.

You're most welcome, thank you. And again, bugs and questions always appreciated.


It's 2021!

The year in the license is still 2019. Also, consider using a copyleft license like GNU GPLv3 to disallow nonfree distribution and protect user freedom.

Hi Akib, thank you for staying with the project. The year hasn't been updated because the source code hasn't had much activity since 2019. If the source gets updated to add more features, the license year will increment then.
As for the license: I chose MIT to allow others to extend and improve my code. I have no qualms if they want to close source their improvements. There are many projects who successfully use non-copyleft licenses that are successful and I feel no reason to GPL my code.


Fix docs broken links - add MD link checker

[x] Adds a link checking workflow.
[x] fix existing broken links 🤦♂

Adding for context.
This PR will close this SE issue:

https://substrate.stackexchange.com/questions/8280/why-are-all-the-ink-playground-links-broken-in-the-official-substrate-docs-at-s


Question about KafkaTemplate and KafkaTransactionManager.

Hi I have a question about KafkaTemplate and KafkaTransactionManager.
Please understand that I'm not good at english
KafkaTemplate's inTransaction()
KafkaTransactionManager's default transactionSynchronization is SYNCHRONIZATION_NEVER, So TransactionSynchronizationManager.isActualTransactionActive() return false through KafkaTransactionManager begin transaction. As a result inTransaction method return false even thougn KafkaTransactionManager begin transaction.
protected boolean inTransaction() {
	return this.producers.get() != null || TransactionSynchronizationManager.isActualTransactionActive();
}

KafkaTemplate's doSend method
If a transaction is active, any KafkaTemplate operations performed within the scope of the transaction will use the transaction’s Producer. The problem is that KafkaTemplate close the transaction's Producer after send a message. The code below is doSend method in KafkaTemplate.
final boolean inLocalTx = inTransaction();
producer.send(producerRecord, new Callback() {
	@Override
	public void onCompletion(RecordMetadata metadata, Exception exception) {
		try {
			// skip
		}
		finally {
			if (KafkaTemplate.this.producers.get() == null) {
				closeProducer(producer, inLocalTx);
			}
		}
    }
});

If inLocalTx is false, call the Producer's close() method in the callback method. So CloseSafeProducer is returned to the cache. And if another transaction begins in the another thread It can be use returned CloseSafeProducer which is not commit transaction yet. As a result exception is occur (Invalid transition attempted from state IN_TRANSACTION to state IN_TRANSACTION)
I think inTransaction() method check that TransactionSynchronizationManager 				.getResource(producerFactory) is not null (That mean KafkaTransactionManager begin transaction and not committed)
protected boolean inTransaction() {
	return this.producers.get() != null || TransactionSynchronizationManager.isActualTransactionActive() || TransactionSynchronizationManager
				.getResource(producerFactory) != null;
}

Yes; thanks; I found the same problem; it was fixed yesterday... https://github.com/spring-projects/spring-kafka/commit/42e2d01026636cdb76e341af3759e04c4315e48c

Thank you for your reply.


Configurability to run hooks only on a certain branch

For reference, a blacklist and whitelist would be the most flexible option for this feature.


Add endpoint for retrieving embedded FASTA sequence

Add an endpoint that takes a request that looks like:
{
  "refName": "chr1",
  "start": 10000,
  "end": 50000
}

(which looks the same as a feature request) and returns the sequence of the FASTA in that range, like:
{
  "id": "ctgA",
  "description": "test contig",
  "sequence": "ACTGACTAGCTAGCATCAGCGTCGTAGCTATTATATTACGGTAGCCA"
}

If the request is out of range (e.g., past the end of the chromosome) or is an unknown chromosome, throw an error. Also, if the GFF3 did not have an embedded FASTA section, throw an error.

Done in #76


Remove non-ascii character.

See screenshot - not sure where this snuck in.

Codecov Report

Merging #3678 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff           @@
##           master   #3678   +/-   ##
======================================
  Coverage    74.5%   74.5%
======================================
  Files         126     126
  Lines        5994    5994
  Branches      392     392
======================================
  Hits         4466    4466
  Misses       1528    1528

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 7082e94...cce826c. Read the comment docs.

WTF?


0.13.4 release not available?

Hi @alexarchambault,
I'm trying to install the 0.13.4 release but I'm getting the following error:
./coursier bootstrap --standalone almond:0.13.4 --scala 2.12 -o almond212 -f
Picked up _JAVA_OPTIONS: -Duser.name=dleen
Exception in thread "main" coursier.install.AppArtifacts$ScalaDependenciesNotFound: Can't find a scala version suffix for sh.almond:::scala-kernel:0.13.4 (likely a non existing module or version)

Am I doing something wrong or were all packages not published?

The coursier CLI sometimes has issues inferring Scala versions (almond in the command above pulls this app, which brings sh.almond:::scala-kernel:latest.release, which needs a Scala version, and --scala 2.12 doesn't bring an exact one).
I'd try either with a full Scala version, with --scala 2.12.17 instead of --scala 2.12, or by forcing cache artifacts to be updated, with -m force (I suspect cache issues to be involved in that bug…)

Ah the specific scala version fixed it. This command worked:
./coursier bootstrap --standalone almond:0.13.4 --scala 2.12.17 -o almond212 -f


Icon migration updates

Description of Changes

[ ] Wrote at least one-line docstrings (for any new functions)
[ ] Added unit test(s) covering the changes (if testable)

[ ] Included a screenshot or animation (if affecting the UI, see Licecap)

Based on testing, we want to change

[x] Replace package_new, findprevious, findnext, zoom_in, and zoom_out
[x] Replace find widget next and previous icons with findnext and findprevious
[x] Replace alternate arrows in plugins with the arrow-direction-bold material icon set. This is in progress, but I'm still trying to find it in a few plugins.

Issue(s) Resolved
None resolved. Continues ux-improvements #33. Follows up on #15006 based on further testing.
Affirmation
By submitting this Pull Request or typing my (user)name below,
I affirm the Developer Certificate of Origin
with respect to all commits and content included in this PR,
and understand I am releasing the same under Spyder's MIT (Expat) license.

I certify the above statement is true and correct:
isabela--pf

I realized that with the old icon removal fix, this would work with SVGs again. Now it's really really really ready for review. 🙃


[WIP] Improve fetch command and add tests

Fixes #5.

Re. the broken tests, use When I try ... instead of When I run ... when you expect an error.
See #23

Apologies again for railroading some changes but it'd be good to get these PRs in so that https://github.com/wp-cli/embed-command/issues/18 can proceed.


Unable to set up working Cluster Issuer

Application is able to install to my cluster, seems to be running fine, however. I keep getting HTTP Error 400: "Invalid signature" in the output of cert manager itself.
Node time is accurate to about a second
Cluster Issuer
apiVersion: cert-manager.io/v1
kind: ClusterIssuer
metadata:
  name: letsencrypt-staging
  namespace: cert-manager
spec:
  acme:
    # The ACME server URL
    server: https://acme-staging-v02.api.letsencrypt.org/directory
    # Email address used for ACME registration
    email: <email>
    # Name of a secret used to store the ACME account private key
    privateKeySecretRef:
      name: letsencrypt-staging-account-key
    # Enable the DNS-01 challenge provider
    solvers:
      - dns01:
          webhook:
            groupName: "<some group name>"
            solverName: ovh
            config:
              endpoint: ovh-eu
              applicationKeyRef:
                key: applicationKey
                name: ovh-dns
              applicationSecretRef:
                key: applicationSecret
                name: ovh-dns
              consumerKey:
                key: consumerKey
                name: ovh-dns

apiVersion: v1
kind: Secret
metadata:
  namespace: cert-manager
  name: ovh-dns
  annotations:
    kubernetes.io/service-account.name: default
type: Opaque
data:
  applicationKey: <>
  applicationSecret: <>
  consumerKey: <>

Secret and its content has been validated by using postman and some pre-request scripting to perform a GET /domain/zone/<domain>/status myself, I get a 200 back, no problem.
After browsing trough your code, I don't see where it is going wrong. You seem to be handling errors well when fetching the values from the secrets. Could you perhaps add in a trace/verbose mode where more log output can be seen?
~Upon further inspection in your code, I never spot the "Validation passed" log in the output of the webhook. Meaning allowAmbientCredentials is probably true. Where does this value come from?~
Nvm, this is correct in my use case. It means it will load from the secrets. And since I don't see any errors in your compoent & the call actually went out to OVH, I gotta assume that went ok.

Edit: Issue solved
Took a break and came back with a clear head. Then spotted that it was consumerKey, not consumerKeyRef. Although I must have tried 15 different iterations.


Update Release Video in 1.7 Release Page

Given that the release happened before the Presentation Video was finished we had a placeholder URL in the Release Page. This is now updated with the correct link.

/lgtm
/approve


[BUG] Cannot use react-hook-form Controller without Material UI Edit

Describe the bug
I'm following the example for Material UI on this page: https://refine.dev/docs/packages/react-hook-form/introduction/#usage
My imports are:
import { useForm } from "@refinedev/react-hook-form";
import { Controller } from "react-hook-form";

The problem is that it looks we have to use the Edit component from Material UI in order to use Controller, otherwise I get the error:
React Router caught the following error during render TypeError: Cannot read properties of undefined (reading 'subscribe')
When I wrap my form within the Edit component, this error goes away, but I don't want to use Edit from material UI for my form. Is there a way around this? I'm currently having to use register instead, but I need to use some Material components like Autocomplete.
Steps To Reproduce

Follow the steps in this documentation for Material UI: https://refine.dev/docs/packages/react-hook-form/introduction/#usage
Remove the Edit component (don't wrap form with it)

Expected behavior
Shouldn't require the Edit component in order to use Controller in my form.
Packages

react-hook-form: "7.30.0"
@refinedev/react-hook-form: "^4.8.20"

Additional Context
No response

Hey @ritute, using a base Refine + Material UI + React Hook Form setup, I've followed the steps to repro the issue. Just copy-pasted the full Material UI code block and removed the <Edit /> component but could not reproduce. Can you try to share the broken code from your source or provide a minimal repro? 🙏

https://refine.dev/docs/packages/react-hook-form/introduction/#usage

Hmm, okay I just started with a base sandbox and don't see the issue either. Gonna try to figure out what's different then in my project's setup.

@aliemir it seems like the issue could be with using react-router (using "react-router-dom": "6.22.1"). I'm not using the one from refine at the moment.

@aliemir here's a reproduction
The subscribe error only happens when use useForm from refine, not when using the one from react-hook-form.

Hi @ritute,
I found some syntax problems in your project and fixed them, but I didn't see the issue you're facing. However, I did find another error:
  ➜  Local:   http://localhost:3000/
  ➜  Network: use --host to expose
  ➜  press h + enter to show help
✘ [ERROR] Could not resolve "@mui/material/DefaultPropsProvider"

    node_modules/@mui/lab/LoadingButton/LoadingButton.js:12:32:
      12 │ import { useDefaultProps } from '@mui/material/DefaultPropsProvider';
         ╵                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  You can mark the path "@mui/material/DefaultPropsProvider" as external to exclude it from the
  bundle, which will remove this error and leave the unresolved path in the bundle.

/Users/alicanerdurmaz/Desktop/refine-form-demo/node_modules/esbuild/lib/main.js:1651
  let error = new Error(text);
              ^

Error: Build failed with 1 error:
node_modules/@mui/lab/LoadingButton/LoadingButton.js:12:32: ERROR: Could not resolve "@mui/material/DefaultPropsProvider"
    at failureErrorWithLog (/Users/alicanerdurmaz/Desktop/refine-form-demo/node_modules/esbuild/lib/main.js:1651:15)
    at /Users/alicanerdurmaz/Desktop/refine-form-demo/node_modules/esbuild/lib/main.js:1059:25
    at /Users/alicanerdurmaz/Desktop/refine-form-demo/node_modules/esbuild/lib/main.js:1527:9
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5) {
  errors: [Getter/Setter],
  warnings: [Getter/Setter]
}

Node.js v20.11.0

This error was resolved when I updated @mui/material to the latest version.
Could you please recheck the project you shared? I couldn't reproduce the error you got.

Hi @ritute,
I found some syntax problems in your project and fixed them, but I didn't see the issue you're facing. However, I did find another error:
  ➜  Local:   http://localhost:3000/
  ➜  Network: use --host to expose
  ➜  press h + enter to show help
✘ [ERROR] Could not resolve "@mui/material/DefaultPropsProvider"

    node_modules/@mui/lab/LoadingButton/LoadingButton.js:12:32:
      12 │ import { useDefaultProps } from '@mui/material/DefaultPropsProvider';
         ╵                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  You can mark the path "@mui/material/DefaultPropsProvider" as external to exclude it from the
  bundle, which will remove this error and leave the unresolved path in the bundle.

/Users/alicanerdurmaz/Desktop/refine-form-demo/node_modules/esbuild/lib/main.js:1651
  let error = new Error(text);
              ^

Error: Build failed with 1 error:
node_modules/@mui/lab/LoadingButton/LoadingButton.js:12:32: ERROR: Could not resolve "@mui/material/DefaultPropsProvider"
    at failureErrorWithLog (/Users/alicanerdurmaz/Desktop/refine-form-demo/node_modules/esbuild/lib/main.js:1651:15)
    at /Users/alicanerdurmaz/Desktop/refine-form-demo/node_modules/esbuild/lib/main.js:1059:25
    at /Users/alicanerdurmaz/Desktop/refine-form-demo/node_modules/esbuild/lib/main.js:1527:9
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5) {
  errors: [Getter/Setter],
  warnings: [Getter/Setter]
}

Node.js v20.11.0

This error was resolved when I updated @mui/material to the latest version.
Could you please recheck the project you shared? I couldn't reproduce the error you got.

@alicanerdurmaz can you make sure you're using the yarn lock file that's there with yarn install?  I just pulled the repo from scratch and ran into the issue I posted after a yarn install. It appears in the browser only, not in the terminal output. Here's a screenshot.

Hey @ritute thank you for the update. I cloned the repo and used yarn v1 to install. Now I can reproduce the same issue 🙌
I'll try to investigate on what caused the issue but when I replace the react-hook-form dependency version from 7.30.0 to ^7.30.0 and that installed 7.52.1 (latest) and the error is gone and rendering is done properly. 🚀
Can you check if updating the dependency also works for you? Do you have any limitations to keep the react-hook-form pinned at 7.30.0? 🤔

@aliemir I noticed that the Refine library was using this version 7.30.0 for react-hook-form, so I decided to go with that one. But I don't need to, I'll try updating it, thanks!

@aliemir it worked with version 7.52.1 (needed to add it to resolutions to make sure it's used)

The version bump of react-hook-form to ^7.30.0 is done when we're moving to React 18. react-hook-form added React 18 support with v7.29.0.
I found the issue in the react-hook-form package, which was resolved with PR https://github.com/react-hook-form/react-hook-form/pull/10052 and released with 7.43.5. I didn't check our code for the useForm but looks like one of the changes made since the last year doesn't work with versions prior 7.43.5 🤔
Happy to see the issue is resolved after the update. Since we've found the exact version that resolves the issue, I think we can mark our react-hook-form dependency as ^7.43..5 🙌

If anyone is interested on working on the fix, it should be as simple as replacing all "react-hook-form": "^7.30.0" with "react-hook-form": "^7.43.5" in the repo. @ritute I can assign this to you if you can work on it. We'll be happy to see your PR 🙏

Okay sure I can do that. But hmm something doesn’t make sense as when I
used the older version of react-hook-form I didn’t run into this runtime
error when using the useForm from their package vs Refine’s. You can try
that repo and just instead of using Refine’s useForm, use the one from
react-hook-form.
On Fri, Jul 19, 2024 at 2:46 AM Ali Emir Şen @.***>
wrote:

If anyone is interested on working on the fix, it should be as simple as
replacing all "react-hook-form": "^7.30.0" with "react-hook-form":
"^7.43.5" in the repo. @ritute https://github.com/ritute I can assign
this to you if you can work on it. We'll be happy to see your PR 🙏
—
Reply to this email directly, view it on GitHub
https://github.com/refinedev/refine/issues/6139#issuecomment-2238462536,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAFVZ45UXJLHS4JKOJENBJDZNCY5TAVCNFSM6AAAAABK3OY3Y6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEMZYGQ3DENJTGY
.
You are receiving this because you were mentioned.Message ID:
@.***>

@aliemir is there any reason you guys don't expose Controller in your @refinedev/react-hook-form package, so that we don't need those two separate dependencies?

@ritute, @refinedev/react-hook-form is an extension package that extends useForm of @refinedev/core with abilities of react-hook-form. We try to keep our packages clean and don't export anything that we don't modify/extend. We take the useForm from react-hook-form and add all existing features of @refinedev/core's useForm such as API interactions, error propagation, redirections, invalidation etc.
For the previous question, check out the source code for the useForm from @refinedev/react-hook-form:
https://github.com/refinedev/refine/blob/master/packages/react-hook-form/src/useForm/index.ts
We're not just using or re-implementing the useForm hook from react-hook-form but we're extending it. Looks like watch (useSubscribe under the hood -the one causing the errors-) is used for notifying the user on unsaved changes and for the auto-save feature. Since those are not present in react-hook-form's useForm, we don't get any errors if we use it directly.
I hope I clarified the difference and the reason behind two packages and two hooks ✌

@aliemir getting this when running pnpm install in latest master.

@aliemir ah, oh my, I somehow added that... 😂. All good! BTW, there are several tests that fail in master for me - looks like a timezone related issue with MUI DateField.

https://github.com/refinedev/refine/pull/6161


Output should be able to be rotated.

similar to -rotate option for xrandr.

Not sure if possible with drm (perhaps only with certain devices). Would be possible with OpenGL though at least.

Complete noob to Wayland here... Does this help?
http://www.jlekstrand.net/jason/projects/wayland/transforms/

Looks like it's more involved than that. https://ereleaseblog.wordpress.com/2015/05/15/fun-with-drm-and-randr/
Still no clue what hardware planes are. Need to figure it out next fortnight I guess. :)

Also, is this related?
https://github.com/Cloudef/wlc/issues/64

No, buffer transformations are for clients. (They may request their buffer to be shown rotated for example, where compositor needs to handle input etc accordingly)

Hi. Could the transform parameter of wl_output be what we want?

This describes the transform that a compositor will apply to a surface to compensate for the rotation or mirroring of an output device.

That's only for communicating the current rotation to client.

I haven't looked at the code of either this or Weston to know how compatible they are, but that does handle my rotated monitor correctly. If nothing else, that might point at one way to handle it.

This thread should give an idea how tricky this may prove to be:
https://bugzilla.gnome.org/show_bug.cgi?id=745079

Looks like that BZ is marked fixed -- will WLC be able to support this feature in the future, then?

Any update on this issue?

I am also interested - this is a bit blocker for me to currently use sway unfortunately :-(

As far as sway is concerned - we're working on switching from wlc to a new library, wlroots. It will take some time, but wlroots already supports output rotation.

Cool, I hope to switch from i3 to Sway as soon as I can then 👍

Awesome! Thanks a lot. Do you have some time frame for this?

No.


[DEVOPS-916] hydra: Fix cardano-sl-explorer-frontend eval

Description
Hydra is not happy with yarn2nix. For some reason scripts/ci/check-hydra.sh does not find the problem. This change passes package.json and yarn.lock directly to mkYarnPackage.
Errors occurred at 2018-06-27 01:49:32.
hydra-eval-jobs returned exit code 1: access to path '/nix/store/aq5cnwcaksc3j57zm3a80iv50ia8h3b4-frontend/package.json' is forbidden in restricted mode
(use '--show-trace' to show detailed location information)

Linked issue
https://iohk.myjetbrains.com/youtrack/issue/DEVOPS-916
Type of change

[x] Build scripts

QA Steps

[ ] PR build successfully evaluates in Hydra.

CI is OK except for stylish-haskell breakage which will hopefully get fixed on develop.


[Question] Change loading screen with Expo logo

Description
Can i change the loading screen from my project? I generated an standalone app with exp and installed in my phone, but when i open it, the expo logo appears before the app main screen.
I used AppLoading component while my app loads fonts, images, etc. Is this Expo logo the result?

that's what you need to change: https://docs.expo.io/versions/latest/guides/configuration.html#loading

Great! Thanks @mathieudutour


New method for Display communication

snprintf() is not the best method, so we want to change this to something a little quicker. Need to figure out a better solution and then implement on Controls master board and Gecko.

Update Display Driver (try to keep API the same) and change the Display simulator to expect new format.


[CSBindings] Solver result builder transformed closures as soon as all contextual information becomes available

We determine that based on four criteria:

Builder type doesn't have any unresolved generic parameters;
Contextual type associated with the closure doesn't have any unresolved type variables (which means that all possible contextual information is provided to the body);
All of the references to declarations from outer scope are resolved (i.e. a variable declaration from a parent closure);
The contextual result type is either fully resolved or opaque type.

If all the criteria a met the conjunction that represents a closure is going to be picked and solved as the next solver step.

@swift-ci please test

@swift-ci please test source compatibility

@swift-ci please build toolchain


Move kernelfuture to a separate file

This allows us to use it for mock implementations of the kernel and the session.

👍


Handle helmfile diff --detailed-exitcode

fixes #31

I run prettier locally to fix the lint issues

@jkroepke please fix conficts.

fixed


Specify Radarr Quality Profile in Config

The qualityProfileId is always 1 (Any) and currently you have to hard code it to different ID in radarr.js line 74, it would be nice to specify the human readable profile in the config.

I'd been trying to think how someone could specify a quality. Config seems like a decent place. How do you see it being specified? By id? Name? Both? What is there's no match? Then fall back to Any?

Name I would think, the GUI for Radarr doesn't expose the ID. Fall back to Any seems reasonable to me. I would also have an option for the root folder.

Looks like the same thing for Sonarr, it defaults to SD.

Sounds good to me


Termdebug: Chatty Breakpoint handling

until now the user did not had any direct feedback and commonly the cmd just kept :Break or :Clear, now that is replaced by an appropriate message

I'll include it, thanks.

I wasn't sure about if this is appropriate or not. Nice to know that it is.
Note: #9140 is the technical more important point.

If someone doesn't like the messages we could always remove it again.

@brammool wrote:

If someone doesn't like the messages we could always remove it again.

I still like those but found an issue: The chatty handling now also triggers when a breakpoint is enabled or disabled. Will do a follow-up PR.


make region by mouse drag & drop

Wavesurfer.js version(s):
4.6.0
Browser and operating system version(s):
MacOS, Chrome, React
Q1. I want to make region by mouse manipulation. where mouse clicked will be region's start time , and where released will be an end time of region.  is there any solution to do this?
Q2. can i use microsecond or millisecond for region period's start and end time. is that possioble(not second)?

@JungJaeLee-JJ can you open a new ticket for Q2?


Flake in ShellTest.ResubmitFrame

https://api.cirrus-ci.com/v1/task/6196586658136064/logs/test_host.log
[ RUN      ] ShellTest.ResubmitFrame
[FATAL:flutter/testing/test_timeout_listener.cc(45)] Check failed: delay < timeout_. Test ShellTest.ResubmitFrame did not complete in 30 seconds and is assumed to be hung. Killing the test harness.
[ERROR:flutter/fml/backtrace.cc(118)] Caught signal SIGABRT during program execution.
Frame 0: 0x7fb9d3add42a abort
Frame 1: 0x2324f59 Unknown
Frame 2: 0x2324f38 Unknown
Frame 3: 0x3b806fa Unknown
Frame 4: 0x3b80510 Unknown
Frame 5: 0x3b804ad Unknown
Frame 6: 0x3b8045d Unknown
Frame 7: 0x3b8042d Unknown
Frame 8: 0x3b7f5a9 Unknown
Frame 9: 0x1fde472 Unknown
Frame 10: 0x1fde435 Unknown
Frame 11: 0x2327904 Unknown
Frame 12: 0x23277da Unknown
Frame 13: 0x233a93a Unknown
Frame 14: 0x233a8ec Unknown
Frame 15: 0x2327779 Unknown
Frame 16: 0x23268dd Unknown
Frame 17: 0x2336977 Unknown
Frame 18: 0x23368cd Unknown
Frame 19: 0x2336875 Unknown
Frame 20: 0x2336608 Unknown
Frame 21: 0x7fb9d41534a4 Unknown
Frame 22: 0x7fb9d3b91d0f clone

Unfortunately the backtrace is not symbolized, but since this seems like a deadlock(?) we'd probably need the backtrace for more than one thread...

Making backtraces actionable is being tracked in https://github.com/flutter/flutter/issues/83286.

Just got two flakes on dart hhh buildbot: https://ci.chromium.org/ui/p/dart/builders/ci.sandbox/flutter-engine-linux/13474/overview, https://ci.chromium.org/ui/p/dart/builders/ci.sandbox/flutter-engine-linux/13479/overview

Just saw this again on a PR: https://cirrus-ci.com/task/5584123801632768?logs=test_host#L3481

Related https://github.com/flutter/flutter/issues/83286

happened again https://github.com/flutter/engine/runs/3703026501

happend again https://logs.chromium.org/logs/dart/buildbucket/cr-buildbucket/8834209531096716321/+/u/test_engine/stdout

From flaky issue triage: This will be difficult to debug without seeing the backtraces of all threads. Those are currently collected by Engine LUCI builds on Linux. Note for future Engine sheriffs: If you see this flake on Engine CI, then look for the link to the backtraces on the LUCI page for the build, and post them here.

@zanderso I think this can be closed


[Node] Update A Recipe

For the Mongo DB database Inside the form give the functionality to update the details for the
after completing  #70 you can use the same form for updating this data

I want to work on this issue under JWOC

Any updates @tanya-gupta25 ?

#70 hasn't completed it yet , I have to do it after #70 completes it


Allow ImageOverlays to display s.

I was looking at some other mapping APIs and became jealous of their ability to display videos. So, I added a tiny bit of functionality to the built-in ImageOverlay.
On top of that, I created a tutorial for that. I want to try and see if a "one feature, one tutorial" policy makes sense.

This is great! The only thing I'm wondering is whether L.imageOverlay(url, {video: true}) is the best API for this — it's not very intuitive. Would it be better to do L.videoOverlay that extends from ImageOverlay? After minor refactoring, this could also be more convenient to maintain.

Yeah, having a L.VideoOverlay makes a lot of sense. Will refactor and rename later.

@mourner OK, I refactored this into a L.VideoOverlay class, fixed a couple of bits of the documentation, made another example, add the new class to the dependency tree and the docs index.


PGP Signing problems

This is probably related to my setup, so I'll describe it as detailed as possible:
I use the latest Rainloop release as of this date.
I imported an encrypted PGP private key, which contains subkeys for 3 addresses.
I changed my default identity by editing the config files (Should there be a GUI option to change the default identity??).
I tried to sign a message. The key shows up. I press sign.
OpenPGP error: Error: Error signing cleartext message!
The console says something about the private key not being decrypted, but I wasn't asked for a password.
This might relate to #672.

Looks like a duplicate of  #1007

I will try master when I find the time

Fixed in the last version.


Add computed column to split metrics columns

Hi,
Is there a way I could juxtapose computed columns to vanilla metric columns when splitting columns while having it splitted ?
An image so it gets a bit clearer:

Ah right I missed the feature, thanks a lot, it worked perfectly !

Nice to see that it answers your need!
As this issue is solved, I close the issue.


Does my coding partner follow JS best practices?

Do I follow JS best practices?

Hi @flemton  , You did a great job!
I am @elad237 your code reviewer for this PR
Highlights!
Good feature branch name ✔
No linter errors ✔
Descriptive pull request ✔
Descriptive commit messages ✔
Good code organization and working app ✔
Descriptive README ✔
Use of  semantic HTML ✔
fellow javascript  ✔
Your project is complete! There is nothing else to say other than... it's time to merge it

Status: Approved ✔
Cheers and Happy coding!👏👏👏
Optional suggestions
Every comment with the [OPTIONAL] prefix is not crucial enough to stop the approval of this PR. However, I strongly recommend you to take them into account as they can make your code better.

[ ] You can add the image of your to do list before your table of content on your readme file

Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
As described in the Code reviews limits policy you have a limited number of reviews per project (check the exact number in your Dashboard). If you think that the code review was not fair, you can request a second opinion using this form.


Add support for RBL nRF52832 boards

As requested in #179.
For the Arduino Core: https://github.com/redbear/nRF5x/tree/master/nRF52832/arduino

cc/ @don

I saw this and was happy, then I check RBL's code only to see they are still breaking everything in favor of MBED: https://github.com/redbear/nRF5x/blob/master/nRF52832/arduino/arduino-1.8.0/hardware/RBL/RBL_nRF52832/cores/RBL_nRF52832/WStream.h#L39. Sigh....

#if defined( NRF52 )
  #include <WStream.h>
  #define Stream WStream
#else
  #include <Stream.h>
#endif

seems to work

Yeah something like that would work (but I'd use a constant that identifies the specific board since NRF52 may actually apply to boards from other vendors at some point), but it gives into the issue rather than putting pressure to fix it (RBL's code is broken, not mine). But yeah, after 2 years back and forth on this issue I must either give in or give up.

I agree,  there is a bug in the RedBear NanoV2 Board code for Arduino.
The  ARDUINO_RBL_nRF52832  define is NOT defined when the extra libraries are compiled.
Took me a while to work that one out.

Any idea when V0.5.0 will be published with this merge?
I have published an instructable for BLE Nano V2 based on V0.4.0 with instructions to overwrite the two files.


Clarify concepts and branding

@jmdetloff raised a point to clarify how some of our concepts are presented. We've discussed this a bit. The lack of good precedence in our field doesn't help.
Nevertheless, I think a few things could help:

[ ] Change the /simulations route to /runs
[ ] Add redirect from /simulations to /runs to preserve links
[x] Change the related branding for this route e.g., "Your simulations" --> "Your simulation runs"
[x] Clarify terminology in the metadata of the project view (e.g., "Simulation" --> "Simulation type", "Project" --> "Project format")
[ ] Update home pages. These have diverged from the concepts we've delineated.
[ ] "Projects" -- I don't think this is sufficiently clear, but not sure what to do about that.

We should also create a documentation page for each of these concepts.

:tada: This issue has been resolved in version 9.3.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


no binary found

running tsu give the output

"No superuser binary detected. \n"
"Are you rooted?

I can confirm that su is in /sbin/ folder
Using magisk 14.3

I did merge the magisk patch..
I dont have magisk installed myself to test it..
Can you show the output of
bash -x $(which tsu)

Never mind.. I made a slight error.. Since I use SuperSU it ran fine on mine..
should be fixed in https://github.com/cswl/tsu/commit/f0d3a5c6d179c34be18fb91b14f2f3da2100365a


Error while running dotnet test --collect:coverage

Description
Error is observed while using --collect:coverage.

Error message :
1>Done building target "ShowCallOfVSTestTaskWithParameter" in project "UnitTestProject1.csproj".
Done executing task "CallTarget".
Using "Microsoft.TestPlatform.Build.Tasks.VSTestTask" task from assembly "C:\Program Files\dotnet\sdk\2.0.0-preview1-005977\Microsoft.TestPlatform.Build.dll".
Task "Microsoft.TestPlatform.Build.Tasks.VSTestTask"

Steps to reproduce

Run `dotnet test --collect:coverage

Expected behavior

Test should run with a message Could not find data collector "coverage"

Actual behavior

Error message is logged and test run fails.

Reported by  @Alxandr @dnelly  here

Triaging this for 15.5 since code coverage experience is incomplete without this.


Bump all major versions of GitHub actions

Note: images are clickable and they go to the corresponding GitHub Action Job.

Workflow
Before
After

e2e.yml

Can't run, because it needs secrets, but considering the other successes, and that the same changes were made, I'm confident it'll work. 🤞

gradle-wrapper-validation.yml

java-versions.yml

main.yml

@szpak @marcphilipp this is ready to go after review.

Thanks @TWiStErRob.  I tested the e2e workflow in a "protected branch" and it also worked fine (as you predicted :) ).


Update README.md

Adding " ="browsers" " to --autoprefix seems to do nothing (It only returns undefined).
It works well with --autoprefix. Don't really know if it's a bug or a feature :blush:.

I'd rather raised a bug-report for this. undefined is issued only for things like "> 5%" (+ others?) while "last 99 versions" for example works like a charm.

Okay, it works now. Sorry for this pull request, I forgot a space between "3" and "versions".
Maybe the error message (or the example) can be a little bit more clear?

Maybe the error message (or the example) can be a little bit more clear?

There's no error message in fact, it's just weird CSS output simply because it's nothing but unexpected internal plugin error. Yet again this is actually a bug (probably caused by some incompatibilities with recent postcss/autoprefixer engine updates).

Oh, I see. Thanks for the clarification.

Closing


TRYING TO MERGE PERSONAL TO MAIN

I cba man like why wont it just change the main files ??? how does it make sense that if I want to merge a branch, it must be identical


Ensure a clear definition of the base URI

It is not always clear what the "base URI" means in various places of this library (see this comment.
Therefore we should be more precise in naming and documentation to ensure consistency.
References:

RFC3986, section 5.1
https://www.w3.org/TR/turtle/#sec-iri-references

@wismill your xmlf monad transformer code has been added into this repo, including IRIs and IRI validation/resolution. Could your IRIs now be used more widely throughout this library?


Scoket Error in Marketing section.

Traceback (most recent call last):
  File "C:\Program Files (x86)\Python37-32\lib\site-packages\elasticsearch\connection\http_urllib3.py", line 94, in perform_request
    response = self.pool.urlopen(method, url, body, retries=False, headers=self.headers, **kw)
  File "C:\Program Files (x86)\Python37-32\lib\site-packages\urllib3\connectionpool.py", line 641, in urlopen
    _stacktrace=sys.exc_info()[2])
  File "C:\Program Files (x86)\Python37-32\lib\site-packages\urllib3\util\retry.py", line 344, in increment
    raise six.reraise(type(error), error, _stacktrace)
  File "C:\Program Files (x86)\Python37-32\lib\site-packages\urllib3\packages\six.py", line 686, in reraise
    raise value
  File "C:\Program Files (x86)\Python37-32\lib\site-packages\urllib3\connectionpool.py", line 603, in urlopen
    chunked=chunked)
  File "C:\Program Files (x86)\Python37-32\lib\site-packages\urllib3\connectionpool.py", line 355, in _make_request
    conn.request(method, url, **httplib_request_kw)
  File "C:\Program Files (x86)\Python37-32\lib\http\client.py", line 1244, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "C:\Program Files (x86)\Python37-32\lib\http\client.py", line 1290, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "C:\Program Files (x86)\Python37-32\lib\http\client.py", line 1239, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "C:\Program Files (x86)\Python37-32\lib\http\client.py", line 1026, in _send_output
    self.send(msg)
  File "C:\Program Files (x86)\Python37-32\lib\http\client.py", line 966, in send
    self.connect()
  File "C:\Program Files (x86)\Python37-32\lib\site-packages\urllib3\connection.py", line 183, in connect
    conn = self._new_conn()
  File "C:\Program Files (x86)\Python37-32\lib\site-packages\urllib3\connection.py", line 169, in _new_conn
    self, "Failed to establish a new connection: %s" % e)
urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPConnection object at 0x0B223EF0>: Failed to establish a new connection: [WinError 10061] No connection could be made because the target machine actively refused it
Failed to query Elasticsearch using 'is_bounced:(true)': ConnectionError(<urllib3.connection.HTTPConnection object at 0x0B223EF0>: Failed to establish a new connection: [WinError 10061] No connection could be made because the target machine actively refused it) caused by: NewConnectionError(<urllib3.connection.HTTPConnection object at 0x0B223EF0>: Failed to establish a new connection: [WinError 10061] No connection could be made because the target machine actively refused it)
Traceback (most recent call last):
  File "C:\Program Files (x86)\Python37-32\lib\site-packages\urllib3\connection.py", line 160, in _new_conn
    (self._dns_host, self.port), self.timeout, **extra_kw)
  File "C:\Program Files (x86)\Python37-32\lib\site-packages\urllib3\util\connection.py", line 80, in create_connection
    raise err
  File "C:\Program Files (x86)\Python37-32\lib\site-packages\urllib3\util\connection.py", line 70, in create_connection
    sock.connect(sa)
ConnectionRefusedError: [WinError 10061] No connection could be made because the target machine actively refused it

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Program Files (x86)\Python37-32\lib\site-packages\elasticsearch\connection\http_urllib3.py", line 94, in perform_request
    response = self.pool.urlopen(method, url, body, retries=False, headers=self.headers, **kw)
  File "C:\Program Files (x86)\Python37-32\lib\site-packages\urllib3\connectionpool.py", line 641, in urlopen
    _stacktrace=sys.exc_info()[2])
  File "C:\Program Files (x86)\Python37-32\lib\site-packages\urllib3\util\retry.py", line 344, in increment
    raise six.reraise(type(error), error, _stacktrace)
  File "C:\Program Files (x86)\Python37-32\lib\site-packages\urllib3\packages\six.py", line 686, in reraise
    raise value
  File "C:\Program Files (x86)\Python37-32\lib\site-packages\urllib3\connectionpool.py", line 603, in urlopen
    chunked=chunked)
  File "C:\Program Files (x86)\Python37-32\lib\site-packages\urllib3\connectionpool.py", line 355, in _make_request
    conn.request(method, url, **httplib_request_kw)
  File "C:\Program Files (x86)\Python37-32\lib\http\client.py", line 1244, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "C:\Program Files (x86)\Python37-32\lib\http\client.py", line 1290, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "C:\Program Files (x86)\Python37-32\lib\http\client.py", line 1239, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "C:\Program Files (x86)\Python37-32\lib\http\client.py", line 1026, in _send_output
    self.send(msg)
  File "C:\Program Files (x86)\Python37-32\lib\http\client.py", line 966, in send
    self.connect()
  File "C:\Program Files (x86)\Python37-32\lib\site-packages\urllib3\connection.py", line 183, in connect
    conn = self._new_conn()
  File "C:\Program Files (x86)\Python37-32\lib\site-packages\urllib3\connection.py", line 169, in _new_conn
    self, "Failed to establish a new connection: %s" % e)
urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPConnection object at 0x0B223EF0>: Failed to establish a new connection: [WinError 10061] No connection could be made because the target machine actively refused it

This repeats untill i close the server, even if i naviagate away the error continues on the server and the client is slowed (but other areas still work).
The issue is only on "Contacts List" and "Contacts" sections on the "Marketing" All other aspects work
This may be just for me as i am editing to allow custome titles set in settings
adding:
contex["TITLE"] = settings.TITLE
or:
contex({'TITLE': settings.TITLE, etc...})

To views.py where contect is created. and setting TITLE = "MyApp CRM" in the settings.py file.
As a note on that i am having some issues transfering the TITLE context to the Marketing secions. "all.html", "base.html" and "root.html" are not accepting {TITLE} in the Marketing section but Sales section works fine. Could do with having a chat on Gitter about this if you are availble at any point.

@AceScottie Please install elasticsearch to resolve that issue.


add completion for sourced files

From<EMAIL_ADDRESS>on March 01, 2012 09:28:27
What steps will reproduce the problem? 1. 2. 3. What is the expected output? What do you see instead? Please use labels and text to provide additional information.
Original issue: http://code.google.com/p/r4intellij/issues/detail?id=36

closing because too complex for now and too few usecases


[Backport 2.7] Support SNS FIFO queues (#716)

Backport https://github.com/opensearch-project/notifications/commit/58a7578e0ca7a599465f84fd4845f8fcd0a72b8b from https://github.com/opensearch-project/notifications/pull/716.

security plugin is not installed for opensearchstaging/opensearch:2.7.0 which cause security test run failed.


Dependency configurations in Android modules are deprecated

Configuration 'compile' in project ':layercache-android' is deprecated. Use 'implementation' instead.
See https://developer.android.com/studio/build/gradle-plugin-3-0-0-migration.html#new_configurations for details.
pom generation doesn't currently work if these are updated.

Fixed in v0.3.0


fetching initially false?

All the documentation and code examples suggest if you check that fetching is true and error is falsey then you can assume data is not null.
e.x.
const YourComponent = () => {
  const [{ fetching, data }] = useQuery({ query: `{ todos { id } }` });
  return fetching ? <Loading /> : <List data={data.todos} />;
};

https://github.com/FormidableLabs/urql#quick-start-guide
However, that's not what I'm seeing. fetching is initially false:

This happens for both the Query component and useQuery hook. Unless you explicitly check that data is not null then these examples will crash.
Or am I missing something?
Version: 1.0.5

I'm having the same issue right now 😬

Yeah doesn't really make sense. It's cumbersome to have to work around fetching always being false at initial render. Hope this isn't intentional.

the PRs #250 and #256 ensure that the initial state you receive from useQuery will always reflect what's going on internally.
They also lay the ground work necessary to implement SSR. So you can expect all of this to ship in v1.1

I still don't understand the reasoning behind this, because now, we can't just simply rely on fetching to know if we should render a loading state or the final component removing the possibility of having one single source of truth.
Also, that always generates an extra rendering cycle for every component. First, fetching = false and data = undefined, and then fetching = true and data = whatever.

@larsbs as posted above though, this will be fixed in the next version.

@kitten Oh sorry, I understood actually the opposite, that it was expected behavior and it would ship in the final version. Thanks.

@larsbs sorry, I'll post a more extensive explanation 😅
Basically this was fixed by the two linked PRs which happened to set up some preliminary behaviour for the SSR PR as well.
During initial mount they cause effects and state changes to run synchronously due to two special hooks. Since our exchange pipeline is built to be mostly synchronous this means that the initial state will match the ongoing / completed operation more closely.
When it starts fetching the state change setting it to true will immediately be applied on mount without an additional render.
But additionally this also means that you will immediately get the data you queried if it has already been cached before

That's perfect, so I guess that would also fix the other issue I had https://github.com/FormidableLabs/urql/issues/267 good job 👍


Ensure only latest bank account shows default badge

Details

Updated logic to ensure only the latest added bank account is marked as default, preventing two accounts from being shown as default without needing a page refresh.
Fixed Issues

$ https://github.com/Expensify/App/issues/50829
PROPOSAL: https://github.com/Expensify/App/issues/50829#issuecomment-2415543267
Tests

Log in to the account that has no bank accounts.
Navigate to Settings > Wallet and click on Add Bank Account > Personal Bank Account.
On the Plaid modal, search and select Wells Fargo bank, enter credentials (e.g., user_good / pass_good), and complete the process.
Verify that the added bank account is not marked as the default(because we are not showing default badge if there is only one bank account)
Repeat the process to add a second bank account by selecting Chase bank.
Verify that only the newly added bank account is marked as default, and the previous account does not show the default badge.
Refresh the page and confirm that the correct default account is still displayed.

[x] Verify that no errors appear in the JS console

Offline tests

This feature requires an active internet connection.
QA Steps

Log in to the account that has no bank accounts.
Navigate to Settings > Wallet and click on Add Bank Account > Personal Bank Account.
On the Plaid modal, search and select Wells Fargo bank, enter credentials (e.g., user_good / pass_good), and complete the process.
Verify that the added bank account is not marked as the default(because we are not showing default badge if there is only one bank account)
Repeat the process to add a second bank account by selecting Chase bank.
Verify that only the newly added bank account is marked as default, and the previous account does not show the default badge.
Refresh the page and confirm that the correct default account is still displayed.

[x] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label and/or tagged @Expensify/design so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

Android: Native

https://github.com/user-attachments/assets/2c71d641-5245-4f70-aac4-d00dfbb9d331

Android: mWeb Chrome

https://github.com/user-attachments/assets/1a17f34a-c45c-4ca6-b55f-8b33cca7514c

iOS: Native

https://github.com/user-attachments/assets/f7ac06bc-17e7-4612-aab5-6daf112c1ff8

iOS: mWeb Safari

https://github.com/user-attachments/assets/700224f9-51a7-4aa1-9e5d-ea902b296cf1

MacOS: Chrome / Safari

https://github.com/user-attachments/assets/9c1bc70d-2197-4ed2-a290-cbd583f1e583

MacOS: Desktop

https://github.com/user-attachments/assets/034b8f0d-f802-4b9a-abcb-553ccd8101b8

@thesahindia, I tested now, I could add the 2nd account.
It seems we need to test it with different banks, one time CHASE bank and for the 2nd account with WELLS FARGO.
Thank you.

created should be the date the bank account was added into the DB... so it should reflect the order the accounts were added. If those accounts are the testing plaid accounts there might be some weirdness with the created dates since they're re-used regularly 🤔

Thanks for explaining! If the created date is the date the bank account was added to the database, then that should work fine for what we need. I also think that the issue might be because of the test accounts. I noticed that when I re-added the same test account, it showed the correct created date as today’s date and time. So, it seems like the old dates we’re seeing could be because these test accounts.

I noticed something during testing:

I added a Chase Bank account (“Plaid Checking”).
Then, I added another account, WELLS FARGO (“Plaid Saving”).
I deleted the Chase Bank account from Step 1.
I re-added the Chase Bank account from Step 1.

When I re-added the account in Step 4, I saw that it kept the original created date from Step 1, rather than updating to the current date. It seems like we aren’t updating the created date if a user re-adds a deleted payment method.
@NikkiWines , do we update the created date for real payment methods in production when a user re-adds a deleted method, or is this just an issue with test accounts? If we can confirm this, I think we will be good to proceed with our PR.
@thesahindia  , based on this, we can test our approach by using a new user account. If we add two accounts with a new user, the most recently added should correctly show as the default.
Thank you.

@NikkiWines , do we update the created date for real payment methods in production when a user re-adds a deleted method, or is this just an issue with test accounts? If we can confirm this, I think we will be good to proceed with our PR.

Sorry for the delay, I can confirm that when re-adding a deleted account, the original created is used - it's not updated to reflect the most recent time the account was added.

@NikkiWines , do we update the created date for real payment methods in production when a user re-adds a deleted method, or is this just an issue with test accounts? If we can confirm this, I think we will be good to proceed with our PR.

Sorry for the delay, I can confirm that when re-adding a deleted account, the original created is used - it's not updated to reflect the most recent time the account was added (for both test and non-test accounts)

Thanks for confirming! Considering this, our current approach won’t work as expected. We’ll need to find another solution, maybe we can store the ID of the latest payment method in Onyx and use that ID to determine which account shows the default badge.

@Shahidullah-Muffakir, any progress on the new solution?

@thesahindia, will push the changes in few hours.

@thesahindia Changes are complete. Let me know if anything else is needed, Thank you.

Sorry to do this, since I know there's been a fair amount of back and forth on this issue already... But after doing some digging, I think we actually need to set the default badge according to the bankAccountID saved in userWallet.walletLinkedAccountID, as that's the value we reference on the backend to determine the default account.
Additionally, some bankAccounts are not added via plaid, so relying on that value may b unreliable.
Sorry!! Let me know if that doesn't make sense

No issue, I’ll make the update. Thanks for explaining! We’ll use bankAccountID || fundID since that’s what’s stored in walletLinkedAccountID here: https://github.com/Expensify/App/blob/3023d6016ef59d3fc8f0190f48597c41e95d3a55/src/libs/actions/PaymentMethods.ts#L110

Sorry to do this, since I know there's been a fair amount of back and forth on this issue already... But after doing some digging, I think we actually need to set the default badge according to the bankAccountID saved in userWallet.walletLinkedAccountID, as that's the value we reference on the backend to determine the default account.
Additionally, some bankAccounts are not added via plaid, so relying on that value may b unreliable.
Sorry!! Let me know if that doesn't make sense

@NikkiWines ,  Just to confirm, should the key be named LATEST_ADDED_WALLET_LINKED_ACCOUNT_ID, or do you prefer something else? Thanks!
/** The ID of the latest added wallet linked account */
   LATEST_ADDED_WALLET_LINKED_ACCOUNT_ID: 'latestAddedWalletLinkedAccountID',

I think you could just use walletLinkedAccountID which is what we use elsewhere in the product, but you shouldn't need a new onyx key for this. You should be able to get the value from the USER_WALLET onyx key.

I think you could just use walletLinkedAccountID which is what we use elsewhere in the product, but you shouldn't need a new onyx key for this. You should be able to get the value from the USER_WALLET onyx key.

Currently, when we add a new payment method with addPersonalBankAccount, the userWallet.walletLinkedAccountID is not updated. walletLinkedAccountID only gets updated in two cases:

when a user manually sets a payment method as default by clicking 'Make default payment method,'
or when the OpenPaymentsPage API runs (only triggered when the Wallet page opens).

Given the current issue, relying on these alone won’t work.
So, considering this, we have a couple of options:

When we add a new payment method via addPersonalBankAccount, the backend could save userWallet.walletLinkedAccountID as the latest added account if isDefault is true. This would be similar to how OpenPaymentsPage returns userWallet.walletLinkedAccountID . Then, we could use this to show the default.
we will still need to add the same changes, as I added in the last approach in the shouldShowDefaultBadge function.
Alternatively, a more straightforward approach would be to call the OpenPaymentsPage endpoint right after a user adds a new payment method. Since OpenPaymentsPage returns only one isDefault true.
We need to add bankAccountList in deps array of this useEffect:
https://github.com/Expensify/App/blob/7256ad6eef046be3345e0b260252f6ec47fc4203/src/pages/settings/Wallet/WalletPage/WalletPage.tsx#L267-L272

Additionally, some bankAccounts are not added via plaid, so relying on that value may b unreliable.

When I click on 'Add Bank Account,' it directly opens the Plaid modal, and I couldn’t find any other way to add a bank account. Could you clarify how bank accounts might be added without Plaid. Thank you.

Currently, when we add a new payment method with addPersonalBankAccount, the userWallet.walletLinkedAccountID is not updated. walletLinkedAccountID only gets updated in two cases:

Oh, hmm. We do update it on the backend but the onyx key isn't appropriately updated currently. I can push up a change that will fix that.

When I click on 'Add Bank Account,' it directly opens the Plaid modal, and I couldn’t find any other way to add a bank account. Could you clarify how bank accounts might be added without Plaid. Thank you.

Users can add personal bank accouns without plaid via Expensify Classic.

Oh, hmm. We do update it on the backend but the onyx key isn't appropriately updated currently. I can push up a change that will fix that.

Okay, that sounds great, this change should work then. Thanks

Users can add personal bank accouns without plaid via Expensify Classic.

Got it, thanks for clarifying.

PR is up to resolve this, I'll update here when it's live but for now you can proceed as though we'll use the walletLinkedAccountID from the USER_WALLET key to determine the default

Backend PR has been merged, should be on production by thursday

Backend PR has been merged, should be on production by thursday

Thank you! I’ll test it with the backend changes on Thursday and push the updates afterward.

I added changes to use userWallet.walletLinkedAccountID.
Not sure if the failing test is related, as it seems unrelated to the changes made.

Hmm yeah the failing test does seem unrelated, try merging main again @Shahidullah-Muffakir?

Hmm yeah the failing test does seem unrelated, try merging main again @Shahidullah-Muffakir?

@NikkiWines, Thank you, Merging main fixed the issue.

Backend changes are live! You should be getting the updated walletLinkedAccountID now

Yes, I tested it with the new backend changes, and it’s working well. Thanks.

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.


JSQMessagesTypingIndicatorFooterView changing the image used for typing indicator

I was wondering if I could add my image instead of the typing indicator image that was used in the xib file. I've tried using a xib file but everything doesn't work as per the closed issues I've already seen in Swift 3.

L

I copy and pasted the xib file using terminal from JSQMessages Pod and then changed the name and also added my identifier using storyboard
Also overridden the nib() function as seen in previous issues
Then added to collectionView using below method:
https://stackoverflow.com/questions/38929586/uicollectionview-footer-in-swift


Default value of createdAt in sendBatch leads to VM termination with exit code 35

By default sendBatch sets createdAt to  Math.floor(Date.now() / 1000).
Which leads to VM termination at this line: https://github.com/ton-blockchain/highload-wallet-contract-v3/blob/d58c31e82315c34b4db55942851dd8d4153975c5/contracts/highload-wallet-v3.func#L99
Proposed fix: subtract ~10 seconds from createdAt by default and possibly mention in comments or readme about this mechanic.

I tried setting createdAt to now() - 10 sec, but it still triggered exit code 35. In the end, I had to subtract 20 seconds for it to work successfully:
createdAt: Math.floor(Date.now() / 1000) - 20

Disculpa no sé usar GitHub
Podrías explicar más detalladamente el mensaje en éste correo?
El mar, 10 de sept de 2024 10:23 p. m., grace0950 @.***>
escribió:

I tried setting createdAt to now() - 10 sec, but it still triggered exit
code 35. In the end, I had to subtract 20 seconds for it to work
successfully:
createdAt: Math.floor(Date.now() / 1000) - 20
—
Reply to this email directly, view it on GitHub
https://github.com/ton-blockchain/highload-wallet-contract-v3/issues/4#issuecomment-2342591574,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BJXHY7MDYWKIYVKPJSOH33LZV7ASZAVCNFSM6AAAAABJAGXGFKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGNBSGU4TCNJXGQ
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***
.com>

Disculpa no sé usar GitHub Podrías explicar más detalladamente el mensaje en éste correo? El mar, 10 de sept de 2024 10:23 p. m., grace0950 @.> escribió:
…
I tried setting createdAt to now() - 10 sec, but it still triggered exit code 35. In the end, I had to subtract 20 seconds for it to work successfully: createdAt: Math.floor(Date.now() / 1000) - 20 — Reply to this email directly, view it on GitHub <#4 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/BJXHY7MDYWKIYVKPJSOH33LZV7ASZAVCNFSM6AAAAABJAGXGFKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGNBSGU4TCNJXGQ . You are receiving this because you are subscribed to this thread.Message ID: @. .com>

Help


Inconsistent Cost Estimates

I get that cost estimates are uncertain, but I would expect different parts of the command line experience to agree on the estimate. I have a train set with 20K examples.
When I ask for an estimate direct I get:
> autonlp estimate --num_train_samples 20000 --project_name intent_detection

> INFO    🗝 Retrieving credentials from config...
> INFO    ☁ Retrieving project 'intent_detection' from AutoNLP...
> INFO    🔄 Refreshing project status...
> INFO    🔄 Refreshing uploaded files information...
> INFO    🔄 Refreshing models information...
> INFO    🔄 Refreshing cost information...
> INFO    ✅ Successfully loaded project: 'intent_detection'!
Cost range: 7.5 - 12.5 USD

But the training command suggests a different price.
> autonlp train --project intent_detection

> INFO    Starting Training For Project: intent_detection
> INFO    🗝 Retrieving credentials from config...
> INFO    ☁ Retrieving project 'intent_detection' from AutoNLP...
> INFO    🔄 Refreshing project status...
> INFO    🔄 Refreshing uploaded files information...
> INFO    🔄 Refreshing models information...
> INFO    🔄 Refreshing cost information...
> INFO    ✅ Successfully loaded project: 'intent_detection'!
> INFO    🔄 Refreshing project status...
> INFO    🔄 Refreshing uploaded files information...
> INFO    🔄 Refreshing models information...
> INFO    🔄 Refreshing cost information...
> INFO    🔎 Calculating a cost estimate for the training...

💰 The training cost for this project will be in this range:
 USD 18.75 to USD 31.25

 Once training is complete, we will send you an email invoice for the actual training cost within that range.

I'm wondering if this is perhaps related to the --max-models 5 setting for the project.

autonlp estimate will soon be deprecated the estimate from autonlp train is the correct estimate.


CLI error when adding multiple assets

I run this command in the CLI:
gh-release --assets "Server.zip","Agent.zip"

It gives me this output:
creating release v1.0.0 for app

name:               v1.0.0
tag_name:           v1.0.0
target_commitish:   abb4cdaa7899d24be9985fc3e14a82364295f36f
endpoint:           https://api.github.com
assets:             Server.zip Agent.zip
body:

? publish release to github?

But when I do Yes, the following error occurs:
ENOENT: no such file or directory, stat 'C:\Projects\app\Datack.Server.zip Datack.Agent.zip'

It looks like there's no way to attach multiple attachment without specifying the full path on the CLI.

Try removing the inner quotes:
e.g.:
"Server.zip,Agent.zip"

Perfect, that was the only combination I didn't try, that seems the work! Thanks!


Define and document correct procedure for adding/updating browser security policies

At present, it doesn't look like we have any kind of automation for creating the cloudarmor policy. We have the policy associated with the Ingress object via a kubernetes BackendConfig.
I think the best way to handle this is to have the terraform configuration that's defining the GKE/etc infrastructure to define the cloudarmor policy.

Documented in https://github.com/broadinstitute/gnomad-terraform/commit/3349ad971662c6a95045ab7895dd9efdd586e5b2