New error in proteomicslfq

ProteomicsLFQ -in Prosser_1320.mzML Prosser_1472.mzML Prosser_1467.mzML Prosser_1200.mzML Prosser_1311.mzML Prosser_1462.mzML Prosser_1205.mzML Prosser_1379.mzML Prosser_1228.mzML Prosser_1209.mzML Prosser_1086.mzML Prosser_1510.mzML Prosser_1339.mzML Prosser_1375.mzML Prosser_1425.mzML Prosser_1535.mzML Prosser_1427.mzML Prosser_1198.mzML Prosser_1304.mzML Prosser_1119.mzML Prosser_1383.mzML Prosser_1273.mzML Prosser_1136.mzML Prosser_1602.mzML Prosser_1290.mzML Prosser_1146.mzML Prosser_1288.mzML Prosser_1085.mzML Prosser_1004.mzML Prosser_1195.mzML Prosser_1366.mzML Prosser_1605.mzML Prosser_1325.mzML Prosser_1356.mzML
-ids 1669d6bc9df32482f2852f4e94c6f06e_consensus_fdr_filter.idXML 5dbd55de52ad8c20b345d0887ad36ed1_consensus_fdr_filter.idXML ed1955051772744b8b839f0f4e558f76_consensus_fdr_filter.idXML c64e30aee710721f9a219593f570935e_consensus_fdr_filter.idXML 0f7b7ffd1e904febca70314bcf0c8df6_consensus_fdr_filter.idXML 0f11ab1a6fc98cdb7c85a71c4e746b1b_consensus_fdr_filter.idXML aacc072cb885418d228030edebfba922_consensus_fdr_filter.idXML f9dddc9e419bf05434dbbc67099b3b01_consensus_fdr_filter.idXML 88ed1f3bbce61a8904312928a7a0cf05_consensus_fdr_filter.idXML afb1aa17daa7092146044fec80fabf6e_consensus_fdr_filter.idXML 32e7a4316317324a9efa594744e96662_consensus_fdr_filter.idXML 9600da35ac32ad83d7d495bde2898ccd_consensus_fdr_filter.idXML a5594b776e1d5611335ab046066fee93_consensus_fdr_filter.idXML 44a60b6371cdd7602479581db3f66312_consensus_fdr_filter.idXML ad03da0abc54506610431abcea3dbc6b_consensus_fdr_filter.idXML 0235e4d9b57de380a2bd5e58c17eb314_consensus_fdr_filter.idXML e98da5124e4cb0e41824e5775815d7e9_consensus_fdr_filter.idXML 658a02b8b0f98ebcdc1c171c682f91cd_consensus_fdr_filter.idXML 1045cc976613bfbec3ca2e7d0af38f9e_consensus_fdr_filter.idXML 6d8938377cb2471e831f782510a14de2_consensus_fdr_filter.idXML 851dc2bc5b44a8bcaf316145e26e8420_consensus_fdr_filter.idXML f55582aaf36f0950338adc417a86e635_consensus_fdr_filter.idXML 75aaad1a4c23c765104774f91923c86e_consensus_fdr_filter.idXML 0bb039351acb84e9170ecf6af30ca0f5_consensus_fdr_filter.idXML 3e5c46988d319e61c2600828144a7e0d_consensus_fdr_filter.idXML ad53e3d54bbdf775967f9d4f2f08e3e7_consensus_fdr_filter.idXML 92321ab2ad415b4151e176103186d4a7_consensus_fdr_filter.idXML 050fe84654e21beba74e3ab8d8bbd17e_consensus_fdr_filter.idXML 126c3eb23e75bec2f286172f57b76f77_consensus_fdr_filter.idXML 0b0be45dc59917493e94efc024fbc5c1_consensus_fdr_filter.idXML af65cb02c12e1cee908e18dd075b3103_consensus_fdr_filter.idXML 3c0a20b0f29da0f3e64913f68e0e65ef_consensus_fdr_filter.idXML 01e3f6dd27f66f8c4c6609bf19da0117_consensus_fdr_filter.idXML 8a4cf1217de6b7457d162c0c4841a113_consensus_fdr_filter.idXML
-design experimental_design.tsv
-fasta uniprot-proteome_UP000005640_decoy.fasta
-protein_inference aggregation
-targeted_only true
-mass_recalibration false
-transfer_ids false
-out out.mzTab
-threads 12
-out_msstats out.csv
-out_cxml out.consensusXML
-proteinFDR 0.05
-debug 0
> proteomicslfq.log
Command exit status:
140
Command output:
(empty)
Command error:
Found no signal. The Gaussian width is probably smaller than the spacing in your chromatogram data. Try to use a bigger width.
Work dir:
/hps/nobackup2/proteomics/yperez_temp/PXD008934/work/14/556e2ddf4738967efc40d62cafde17
Tip: when you have fixed the problem you can continue the execution adding the option -resume to the run command line                 -design experimental_design.tsv
-fasta uniprot-proteome_UP000005640_decoy.fasta
-protein_inference aggregation
-targeted_only true
-mass_recalibration false
-transfer_ids false
-out out.mzTab
-threads 12
-out_msstats out.csv
-out_cxml out.consensusXML
-proteinFDR 0.05
-debug 0
> proteomicslfq.log
Command exit status:
140
Command output:
(empty)
Command error:
Found no signal. The Gaussian width is probably smaller than the spacing in your chromatogram data. Try to use a bigger width.
Work dir:
/hps/nobackup2/proteomics/yperez_temp/PXD008934/work/14/556e2ddf4738967efc40d62cafde17
Tip: when you have fixed the problem you can continue the execution adding the option -resume to the run command line

Project accession PXD008934

The problem was with the time running.


Implement cupy.sort

NumPy has numpy.sort and numpy.ndarray.sort that sort an array non-destructively and destructively. Currently CuPy leaves operations for the tasks unimplemented.

numpy.sort has the following arguments other than an array to be sorted:

axis: Axis along which to sort.
kind: Sorting algoritm.
order: When a is an array with fields defined, specifies which fields to compare.

It is needed to consider how to support these arguments in CuPy, especially kind argument.

Thrust has sort functions, sort and stable_sort, but they do not provide any switch that allows users to choose detail algorithm actually used as NumPy. I'm not sure what algorithms, or combination of algorithms, are used in thrust's sort functions.

There are the following possible approaches to implement cupy.sort:
Approach A
Implementing cupy.sort based on numpy.sort.

First, implement merge sort without supporting axis and kind arguments.
Then, support axis argument and other algorithms in kind argument.
order argument would be left unsupported because CuPy does not support structured arrays.

Approach B
First using thrust quickly, then reimplementing based on numpy.sort later.

First, support stable sort using thrust.
Then, reimplement based on numpy with supporting kind and axis
order argument would be left unsupported because CuPy does not support structured arrays.

Approach C
Using thrust.

Support stable and unstable sort using thrust
Not follow kind argument

I suspect that many use cases for cupy.sort might actually be better served by something like ndarray.top_k (which can be implemented more efficiently) even though numpy doesn't have that natively. But there are presumably also reasons for sorting a whole array, so it's good to have that too.

One reason for sorting a whole array is to implement DNCs (differential neural computers) where argsort is needed to determine which memory column to write.

Thanks for comments, I would like to go with implementing cupy.sort here without putting the question if CuPy should support its sort operation or not, one of the reasons is CuPy's design philosophy that it should support operations NumPy supports as much as possible with some practical priorities. It would be nice that top_k operations mentioned above would be discussed as another topic.

I implemented a sample code to call Thrust via Cython:
https://github.com/takagi/cython-thrust


Agent connect error: Value cannot be null. Parameter name: version.

2.102.0 on OSX
visualstudio.com
[2016-06-17 19:36:07Z INFO JobDispatcher] Start renew job request.
[2016-06-17 19:36:07Z INFO JobDispatcher] TaskAgentJobTokenExpiredException received, job is no longer valid, stop renew job request.
[2016-06-17 19:36:07Z INFO JobDispatcher] Unable to renew job request for the first time, stop dispatching job to worker.
[2016-06-17 19:36:48Z ERR  MessageListener] Catch exception during get next message.
[2016-06-17 19:36:48Z ERR  MessageListener] Microsoft.VisualStudio.Services.WebApi.VssServiceResponseException: Value cannot be null.
Parameter name: version ---> System.ArgumentNullException: Value cannot be null.
Parameter name: version
--- End of inner exception stack trace ---
at Microsoft.VisualStudio.Services.WebApi.VssHttpClientBase.HandleResponse(HttpResponseMessage response)
at Microsoft.VisualStudio.Services.WebApi.VssHttpClientBase.d__45.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.ConfiguredTaskAwaitable1.ConfiguredTaskAwaiter.GetResult()    at Microsoft.VisualStudio.Services.WebApi.VssHttpClientBase.<SendAsync>d__421.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.ConfiguredTaskAwaitable1.ConfiguredTaskAwaiter.GetResult()    at Microsoft.VisualStudio.Services.WebApi.VssHttpClientBase.<SendAsync>d__271.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.ConfiguredTaskAwaitable1.ConfiguredTaskAwaiter.GetResult()    at Microsoft.VisualStudio.Services.WebApi.VssHttpClientBase.<SendAsync>d__261.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.VisualStudio.Services.Agent.Extensions.d__0`1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.VisualStudio.Services.Agent.Listener.MessageListener.d__14.MoveNext()
[2016-06-17 19:36:48Z INFO MessageListener] Retriable exception: Value cannot be null.
Parameter name: version
[2016-06-17 19:36:48Z ERR  Terminal] WRITE ERROR: 2016-06-17 19:36:48Z: Agent connect error: Value cannot be null.
Parameter name: version. Retrying every 15 seconds until reconnected.

ballpark ETA for the hotfix? all our build agents are blocked by this at the moment.

@BluMist 2-3 Hours.

@BluMist if you restart your agent the problem should goes away.

Still hitting the same error after restarting machine. I am running in interactive mode.

@BluMist what's your visualstudio.com account name?

It took a few tries, but I think we are back online

Confirmed that the last couple builds succeeded, closing the issue now.

I'm still having the same "value cannot be null" problem as reported above.  A few builds made it through, but failure is the most common result.  Happening with multiple agents I use.
Scanning for tool capabilities. Connecting to the server. 2016-06-17 21:34:00Z: Listening for Jobs 2016-06-17 21:34:03Z: Running job: Build 2016-06-17 21:34:37Z: Running job: Build 2016-06-17 21:43:02Z: Job Build completed with result: Succeeded 2016-06-17 21:48:36Z: Running job: Build 2016-06-17 21:51:14Z: Job Build completed with result: Failed 2016-06-17 22:28:34Z: Agent connect error: Value cannot be null. Parameter name: version. Retrying every 15 seconds until reconnected.

Same issue here.

reopened since we are seeing intermittent errors as well...

@BluMist  @simmdan @bradyjoslin The deployment that contains the fix is still running. Can you guys share your account name, so i can provide some ETA?

Everything should be fixed right now.

My account is msdata.

My builds are working again.  thanks.

Close since the hotfix has already deployed.


[Fix 1879] Avoid auto-correcting hash braces and trailing comma

If the last argument in a method call without parentheses is a hash with braces and a trailing comma, avoid auto-correcting it since the trailing comma makes it a syntax error when the braces are gone.

:+1:


update namespace for csi-node daemonset

The namespace for this DaemonSet should be kube-system since it has serviceAccountName: csi-node-sa specified. The service account that is being used to run this is located in the kube-system namespace. Currenly this DaemonSet is being created in the default namespace, which then errors when trying to create pods.

looks good to me


the trait ApiExtractor<'_> is not  implemented for poem_openapi::payload::Form<T>

I used poem_openapi::payload::Form to parse Credentials from request, the code is like following:
    #[oai(path = "/auth/login", method = "post")]
    pub async fn auth_login(
        &self,
        login_req: Form<Credentials>,
        db: Data<&Arc<Mutex<DatabaseConnection>>>,
    ) -> std::result::Result<ApiResponseSuccess<AccessToken>, ApiResponseError> {
        let db = db.lock().await;
        let token = AccessToken {
            token: "1224".to_string(),
            token_type: "bearer".to_string(),
        };
        Ok(token.into())
    }

The Credentials is defined as:
#[derive(Object, Debug)]
#[oai(example)]
pub struct Credentials {
    /// Username
    pub username: String,
    /// Password
    pub password: String,
}

However, it didn't work:
the trait bound `poem_openapi::payload::Form<schemas::auth::Credentials>: ApiExtractor<'_>` is not satisfied
  --> src\api\common.rs:38:1
   |
38 | #[OpenApi]
   | ^^^^^^^^^^ the trait `ApiExtractor<'_>` is not implemented for `poem_openapi::payload::Form<schemas::auth::Credentials>`
   |
   = help: the trait `ApiExtractor<'a>` is implemented for `poem_openapi::payload::Form<T>`
   = note: this error originates in the attribute macro `OpenApi` (in Nightly builds, run with -Z macro-backtrace for more info)

And if I change login_req: Form<Credentials>  to login_req: Form<Hashmap<String, String>>， it works. But the Swagger UI could not work

So how should I do to make it work? Thank you.

My Bad. serde::Deserialize fixed it.


feat(frontend): remove Networks switcher [GIX-3087]

Motivation
Time has arrived to remove the Networks switcher.
Since OISY is a multi-chain wallet by it's nature, we can remove the network selector from the home screen. It may be added a possible filter in the future, but not so bluntly, because the user should be driven to have all the tokens from multiple chains in one place.
Note
The toggle for Testnet networks will be available only in Settings after this PR
Results

The toggle for Testnet networks will be available only in Settings after this PR

That's nice and stuffs but, how do I find the test tokens?
SepoliaETH tokens and ICP ckTest tokens are not displayed on the pseudo network chain fusion.

@peterpeterparker right! I would have put it there in another PR, but it makes sense to first do that. Moving to draft

I would have put it there all together (not trivial)

We have always been against this change from a technical point of view because, as you said, it's not trivial.
Also, as we mentioned each time this was discussed, particularly in a dApp that is not well-tested enough, it introduces a higher risk that if a bug is introduced, some tokens that are supposed to target a test environment could actually end up being exchanged in production.
Is that something that can be discussed? Or are the stakeholders aware of that potential issue?

@peterpeterparker requirement deprecated for now, closing this one

Great! Thanks


Remove the methods that were deprecated in 0.12

Lots of methods were moved from core.py to music_library.py and scheduled for deprecation in the upcoming release 0.14 - this PR removes them as planned.

Hi @ghcs27
Of topic for this particular PR, but would you consider joining our IRC channel (#SoCo on freenode). Since you are quite active, it would be convenient for me to be able to reach you live sometimes, when we are both online.
Regards

@KennethNielsen Joined!

The changes to core are good to go, but the changes to the tests bother me. It actually has nothing to do with this PR, as those tests should have been moved along with moving the actual music library code. However, I don't think we should delete the test cases. So either they should be:

Put in a test_mulibrary and properly ported
or
Placed there and mark the whole file as "should be skipped" by pytest, until they have been ported and an help wanted issue should be created for actually porting the tests

Oh... I assumed they had been copied to test_music_library.py, but never checked. I'll try to port them.

Merged. Remember to leave a comment about the change in the release notes issue.


Magic Mirror does not launch when module enabled

When the module is installed and the configurations are added to the config file the magic mirror stops opening. When I refresh it it just shows "Loading..." and then when i restart it it just doesn't open again. Everything goes back to normal when I delete it from the config file. I already ran a config check and my syntax is fine. I also added the ip of the pi of the mirror to that of the printer and still does the same issue. Not sure where to look and what else to do.

Hey, can you check your logs? pm2 logs and then pm2 start MagicMirror
That way we can see where the application will crash.. not sure how else to figure this one out.

so it seems to get online fine when restarted

but in the logs it seems it never finish loading all the modules and the mirror does not show up on my monitor it just sits at the home screen of the pi.
these are the logs

So if you want to know what is happening, you can approach the stack trace here.
You usually read it from bottom to top. And you're basically looking for something you "know" or can access. In this case it would be the ... MMM-moonraker/node_helper.js:10:15.
The interesting part about this is the 10 and 15. 10 means Line 10, 15 means character 15.
But in short: the fetch import is having issues, since in a newer version of MagicMirror, this is no longer included.
I tried fixing it, but then I was not able to make it work on older versions. Not sure how to proceed here.

Isnt it fair to assume most mirror are getting updated regularly?

Yes, I'd say so. However, the update is not working for me. The MagicMirror main software was only crashing for me. I will have another look this week.

let me try it for you if you want

Im at my mirror right now. I can give it a try and let you know right away.

looks like i made progress its not crashing any more but my printer is definitely online so im not sure

I went to bed last night. I can figure it out. I just need some more time.

Hi guys. I found a solution.
Switch to "module/MMM-moonraker" and install "node-fetch" Package with npm install node-fetch@2 --force. Then open node_helper.js and change
const fetch = require("fetch");
to
const fetch = require("node-fetch");
This is not the best solution but it works.

Unfortunately, I'm doing something wrong because im still getting the Moonraker not available. Printer offline? message

Unfortunately, I'm doing something wrong because im still getting the Moonraker not available. Printer offline? message

You use the correct ip of the printer?
Show me your logs

@OlafdeViesel, bei mir geht es jetzt auch super, Danke :-)


Pages are not visible in Tell Me

Pages build on virtual tables (AllObjWithCaption...) are not visible in Tell Me, even if I added UsageCategory and ApplicationArea property.
Is there any way to see these pages in Tell Me?

We've recently encountered this bug internally. We are still investigating.

I am closing this issue because it appears that it has been resolved. Please open a new issue if you believe this has not been resolved and reference the current issue.


Week 24

50 MCQ BLOGGING
2.2 HACKS
2.3 HACKS
PRODUCT INCLUSION:

2.95 - In the test correction with a detailed explanation, white, red, and black scale and so on for Spiderman in 2.2, I think 2.3 also completes the requirements!


bought rank, didnt get my rank

username: RevenantZer0
bought the second rank, paypal went through, but didn't get the money. i got the sylveon hood and claimblocks, but that's it. didn't get the rank in chat or anything else.

Fixed, looks like Tebex wasn't processing offline properly.


bridges | Added the dynamic grid

Motivation
closes #248
To implement additional levels it would be good if the grid adjusts automatically so we can just repeatedly implement the same scene.
What was changed/added
Camera has it's own script now. It just sends it current zoom. Since camera is often used for many things giving it it's own script is future proofing. On ready the grid.gd now signals to get the zoom and with that adjusts the grid size.
Testing

The grid looks the same even though the sizes are not hard coded.
Additional Information
Note that if you adjust the zoom you have to adjust the camera position, but this is trivially true.

I have fixed the issue with the grid size. I forgot that we store the grid size in a vector later.
If you want levels of a size larger than the screen then you have to tell what that size is based on. The only thing I can think of is some sort of singleton or global value that is retrieved on ready, but that requires a mapping of level_id to grid_size. None of this has been defined thus far and is not part of this issue. So the window size is the only thing to go off of.


About the test accuracy metric

Dear Liu:
Thanks for your work! I have a question that if the test accuracy of SOP+ reported in paper (Table 2) is computed with the model of the last epoch(300-epoch model) or with the best-accuracy epoch before the last epoch. I run your code with your default settings but got the best result in the 292nd epoch instead of the last epoch. Furthermore, the test acc in our experiment is only 78.49 with 20% symmetric noise label which is lower than 78.8 reported in the paper. I wonder if there is anything wrong with my training.
Thank you for your help!

Thank you for the questions, we follow the previous literature to report the max averaged test accuracy, the result you obtained in very close, the difference might because of the training process contains randomness.

Thank you for your help!


Treasury balance over time graph

A new line graph representing the treasury balance over time in both EOS and USD would be a great addition to the income section or home page

By election?


Added page titles

Closes #42

Missing titles for OutcomeSet and Review. Although in the normal flow of the application you would always go via OutcomeSets and ReviewSelector, if a link is shared, users may get taken straight to OutcomeSet or Review.

That would be great, just gets rid of the unnecessary wrappingOn 5 Sep 2017 5:06 p.m., nikw92<EMAIL_ADDRESS>wrote:@nikw92 commented on this pull request.
In src/app/containers/Account/index.tsx:

@@ -37,15 +38,20 @@ class Account extends React.Component<any, IState> {

public render() {
return (

 <Grid container columns={1} id="Account">

   <Grid.Column>

Account

Change Password

     {this.renderChangePassword()}

Delete Account

To delete your account, please send an email to <a href="mailto:support<EMAIL_ADDRESS>

   </Grid.Column>

 </Grid>

   <Helmet>

I was getting the 'JSX elements must have a single parent error while editing the pages that did not have Grid so I wrapped their contents in a div and used the same approach for the rest of the pages. But if you'd like the Helmet tags under Grid then I'll make the necessary changes.
—You are receiving this because your review was requested.Reply to this email directly, view it on GitHub, or mute the thread.

Made the requested changes


Bugfix/issue 765 row click selection callbacks

Addresses the bug in https://github.com/gregnb/mui-datatables/issues/765.

Coverage increased (+0.02%) to 75.779% when pulling 9b53ec59776e9114f43d932e377a0eaa7a3094e6 on bugfix/issue-765-row-click-selection-callbacks into d09ed0c73257b9b4846b5ac6fb6c0da469b766fe on master.


Use "=" as an optional separator of a long option and its value

Is it possible to use = as an option-value separator like in boost::program_options and Python argparse?
Current behavior (AFAIK):
# (option("--longopt") & value("arg", target))
Command           target
--longopt foo  => "foo"
--longoptfoo   => "foo"
--longopt=foo  => "=foo"

# (option("--longopt=") & value("arg", target))
Command           target
--longopt foo  => Not match
--longoptfoo   => Not match
--longopt=foo  => "foo"

Proposed behavior:
Command           target
--longopt foo  => "foo"
--longopt=foo  => "foo"

Thanks.

Yes, if you write the option like this:
option("--longopt", "--longopt=") & value("arg", target)
the following input command line arguments will be allowed:

{"--longopt", "SOMEVALUE"}
{"--longoptSOMEVALUE"}
{"--longopt=", "SOMEVALUE"}
{"--longopt=SOMEVALUE"}

The parser is designed in a character-agnostic way and no character is given special treatment. You could use 漢字 for everything and the parser wouldn't care. If you have
option("?opt", "+?opt", "?opt=") & value("arg", target)
The only thing that the parser checks, is, that the input contains a (sequence of) command line argument(s) with a prefix in the set {"-opt", "--opt", "?opt="} and a suffix, that can be used as a value.
Note that the generated documentation will have a space in between the option string and value label:
--longopt= arg

Thank you for the prompt answer! Now I have learned how to write a program that accepts either with or without =. Here is another question. Can I hide a specific option flag from the doc? E.g., showing only --longopt from option("--longopt", "--longopt="). I found doc_formatting::max_flags_per_param_in_doc(1) could work, but it is unfortunately a global option for the entire doc. Another potential solution may be to define two separate sets of option & value that have the same target variables: one with doc, the other without doc. Hopefully you know better ways to do that.

The latter idea seems to work. The more I know about clipp, the more I am amazed. Well designed and super flexible. Thanks again.


Add Folder Name to Tab Labels for index.js|ts|jsx|tsx Files

Hello VS Code team,
I am writing to request a feature that would greatly enhance the usability of VS Code when working with projects that have multiple index.js|ts|jsx|tsx files under different folders.
Feature Description:
When a file with the index.js|ts|jsx|tsx name is open in the editor, it can be difficult to recognize it because the tab label only displays the file name, that is index.js or so.
I propose that to update the tab label for such index files with its folder name.
For example, instead of the tab label being just index.js, it could be myFolder/index.js.
Benefits:
This feature would improve the user experience for developers working in large codebases with many files having the index name. It would allow them to quickly and easily identify the file. This would be espically useful when the developers open several index files without keeping them open, i.e., the index files are open in one place.
Implementation:
This could potentially be implemented by modifying the Tab.labels property to include parent folder name of such files.
Thank you for considering this feature request. I believe that this addition would be a valuable enhancement to the VS Code user experience.
BRs, Mario

You should be able to configure it to your liking with new Custom labels feature https://code.visualstudio.com/updates/v1_88#_custom-labels-for-open-editors

You should be able to configure it to your liking with new Custom labels feature https://code.visualstudio.com/updates/v1_88#_custom-labels-for-open-editors

Thanks, that's exactly what I needed. Such a coincidence that this feature is already available in the new version.


Support multi-level partition tables

What feature are you requesting?
Support for foreign tables in a multi-level partitioned table setup (see example).
Why are you requesting this feature?
When you have a lot of large files in one object store key/directory, scanning all of the files can be prohibitively time consuming. Changing the storage structure to support hive keys may not always be an option.
What is your proposed implementation for this feature?
This is an example of a multi-level partition table, but in many cases only the first partition level would be needed.
Example:
A “root” table that will have two partition “levels”:
CREATE TABLE my_table(
  <column definitions>
) PARTITION BY list(id_1);

The table for the first partition level:
create table if not exists my_table_123
partition of my_table
for values in ('123') partition by list(id_2);

Many partition tables may be created at this level - one for each id_1 value in the root table.
Note: If these first two tables have to be created as foreign tables in order for the last partition level table to be a foreign table, they shouldn’t require a files option.
The table for the next partition level looks like this:
create foreign table if not exists my_table_123_abc
partition of my_table_123
for values in ('abc')
options (files 's3://<bucket_name>/.../<filename>.parquet');

Many partition tables may be created at this level as well - one for each id_2 value in the first partition level tables.
Note: when creating this final “leaf” partition table as a foreign table, a files option should be required.
So, when querying the root table with a where clause like this:
select *
from my_table
where id_1 = '123'
and   id_2 = 'abc'

...only one parquet file should be scanned - the one specified by the files option of the “leaf” partition table. Or, if a glob pattern is used in the files option of the leaf partition table, only the (ideally) few number of matching files will be scanned.
Full Name:
Patrick Park
Affiliation:
Payzer

Hi @philippemnoel , I am interested to work on this feature, could you please assign it to me

Hi @philippemnoel , I am interested to work on this feature, could you please assign it to me

Absolutely, it is yours! Thank you for your work :)


[fix#12364][UI] fix when creating a workflow, click Data Quality or Machine Learning to expand both

Purpose of the pull request
close #12364
Brief change log
Verify this pull request
Manually verified the change by testing locally

Codecov Report

Merging #12365 (5a0536d) into dev (2245088) will decrease coverage by 0.02%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##                dev   #12365      +/-   ##
============================================
- Coverage     38.94%   38.91%   -0.03%
+ Complexity     4175     4173       -2
============================================
  Files          1040     1040
  Lines         38797    38764      -33
  Branches       4462     4445      -17
============================================
- Hits          15109    15085      -24
+ Misses        21919    21914       -5
+ Partials       1769     1765       -4

Impacted Files
Coverage Δ

...e/dolphinscheduler/dao/upgrade/WorkerGroupDao.java
55.55% <0.00%> (-16.67%)
:arrow_down:

...erver/master/processor/queue/TaskEventService.java
75.00% <0.00%> (-5.36%)
:arrow_down:

...org/apache/dolphinscheduler/remote/utils/Host.java
42.55% <0.00%> (-2.13%)
:arrow_down:

...e/dolphinscheduler/remote/NettyRemotingClient.java
51.42% <0.00%> (-1.43%)
:arrow_down:

...rver/master/runner/task/BlockingTaskProcessor.java
75.86% <0.00%> (-0.55%)
:arrow_down:

...heduler/api/service/impl/ResourcesServiceImpl.java
51.68% <0.00%> (-0.47%)
:arrow_down:

.../dolphinscheduler/plugin/task/spark/SparkTask.java
72.56% <0.00%> (-0.25%)
:arrow_down:

...eduler/api/dto/workflow/WorkflowCreateRequest.java
100.00% <0.00%> (ø)

...eduler/api/service/impl/DataSourceServiceImpl.java
30.06% <0.00%> (ø)

...cheduler/server/master/utils/DependentExecute.java
0.00% <0.00%> (ø)

... and 12 more

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


Rewrote/refactored task

Task implemented in terms of thunks now

I added a concept to constrain flatMap to only accepting functions that produce tasks! It looks like this now:

It's getting late here. I'll do my next review pass of this tomorrow either before 12 Pacific or after 3 Pacific. Awesome work so far 😄

It's getting late here. I'll do my next review pass of this tomorrow either before 12 Pacific or after 3 Pacific. Awesome work so far smile

Have a good night! Working with you has been nice!


Logging rules not flagged if logger imported from another module

I'm observing that logging rules aren't flagged if a logger is imported from another module.

A minimal code snippet that reproduces the bug.

If I set up logging here, both of these violations are flagged:
# logging_setup.py
import logging

linter = "ruff"
logging.info(f"Hello, {linter}!") # G004 flagged

logger = logging.getLogger(__name__)

logger.info(f"Hello, {linter}!") # G004 flagged

However, if I import logger into another module, the below identical violation is not flagged:
# my_module.py
from logging_setup import logger

linter = "ruff"
logger.info(f"Hello, {linter}!") # G004 *not* flagged

The command you invoked (e.g., ruff /path/to/file.py --fix), ideally including the --isolated flag.

ruff .

The current Ruff settings (any relevant sections from your pyproject.toml).

"G" ruleset

The current Ruff version (ruff --version).
0.0.277

Hi ruff team, friendly follow up on this one, please let me know if I'm missing something here. Thanks!

Will take a look.

Looks like an oversight, we would flag logging_setup.logger.info(f"Hello, {linter}!") but not the import from variant.

Thanks @charliermarsh, that makes sense.

I think I misdiagnosed this, logging_setup.logger.info also isn't working in my initial testing, but regardless it'll be fixed in the next release.


Updated swagger readmes to point at main

Contributing to the Azure SDK
Please see our CONTRIBUTING.md if you are not familiar with contributing to this repository or have questions.
For specific information about pull request etiquette and best practices, see this section.

API change check
APIView has identified API level changes in this PR and created following API reviews.
Azure.Storage.Blobs


We need ideas for events/workshops/initiatives.

Have ideas for workshops, events, or initiatives Endangered Data Week could help plan? Not sure you have the time or capacity to complete a workshop or event during the global sprint? Share your ideas here.
Describe and/or link to your work by commenting below.

Hello Jason:
Here is a description of the event we hosted last year:
Environmental Justice in Upstate NY.
We also collaborated with our friends at Indiana University to record a video to kick off the panel.
This panel was also built into a course being taught in spring semester, Environmental Studies 232: Environmental Justice.
Finally, the planning + outcome of this event will be a keynote at the spring 2018 ENY/ACRL Conference here at Colgate.
Whew...

This is great, thanks @TertiarySources!

Idea for a workshop: an introduction to Excel. The workshop might be an hour or hour-and-a-half and include:

how pivot tables work
how do basic charts
introduction to formulas
what is a spreadsheet / database

Ideas for a workshop:
How to read charts or how to encode data
I find http://www.datavizcatalogue.com/ very helpful when it comes to filtering chart types.

@manasvil We did a version of an info visualization workshop recently—it could definitely be adapted for an Endangered Data audience! https://github.com/tech-at-arl/Digital-Scholarship-Institute/tree/master/January 2018/Information Visualization

Responding to @hepplerj & @cbgoodman:
We took a similar approach to our EDW sessions at UMD (with Adam Kriesberg & David Durden) insomuch as we felt good data stewardship values & practices start at home. We did a 30-minute intro to data management and coupled that with overviews of data initiatives (EDW, EDGI, PEGI, Data Refuge, Climate Mirror) and tool tutorials (Open Refine, Data Accessioner, Fixity).

@23koivisto Awesome! Do you happen to have slides or workshop material on Github we could link to or reference?

In 2018, ICPSR did several things for EDW:

Shared a webinar on DataLumos as a tool for archiving government data
Had a Facebook Live conversation with our acquisitions manager (in front of boxes and boxes of documents), telling a story about a recent endangered dataset she helped save
Hosted a "Save the Data" event, inviting people to come to ICPSR's office to sit down and add a government dataset of interest to DataLumos. This event borrowed ideas from hackathons and telethons by bringing people physically together and energizing them for the work (music, food, swag, and celebrations when each dataset was released), using a virtual thermometer on the even site to document the number of datasets released, and using Facebook Live to update users joining the event virtually.

Have you thought about modifying this presentation to hold an event geared toward youth?  We love your framework and are always looking for ways to provide opportunities for youth get involved with these issues.

@EducationalVideoCenter I love the idea! Do you have any ideas about which kinds of activities would be best for youth? Or how we may want to frame/reframe anything we already have?

@hepplerj David has said that he will get together his slides for the data management portion of the presentation. Should have it for the group next week. Attached are my slides on data initiatives. Didn't really have any documentation for our tool demos as they were straight up demos.
edw_data_initiatives.pdf

Your workshop on using Endangered Data is a great platform for youth to get involved, work with the material and see how it is relevant in their lives!  I really liked the links you used there as resources.  The Guardian's project on The Counted would resonate with a large population of the youth we serve.  I passed along that link to our film instructors who are working with students on police brutality.  Also, any data resources you work with that is relevant to issues around gentrification, homelessness, substance abuse, mental health and bullying would be good.  The key is creating hands-on opportunities where youth can provide input, contribute and see the relevance in their lives.


Use npm link on Cloudflare CI.

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 92.00%. Comparing base (fd58cbe) to head (52e8d36).

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #371   +/-   ##
=======================================
  Coverage   92.00%   92.00%
=======================================
  Files          53       53
  Lines        3792     3792
  Branches      352      352
=======================================
  Hits         3489     3489
  Misses        302      302
  Partials        1        1

Flag
Coverage Δ

unittests
92.00% <ø> (ø)

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

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Can the library return information about Glonass satelites?

Hi,
My code need to know how many Gps, Glonass or Beidou satellites in view.
I know this information comes in $GSV sentence.
In "bool minmea_parse_gsv(struct minmea_sentence_gsv *frame, const char *sentence)"  function there is only general GSV parsing and there is no information if it's Glonass, GPS  or Beidou
Is the library can give me this information?
Thanks

The satellite system is encoded in the NMEA Talker Id, the first two characters in the message:
"GP" -> GPS, SBAS
"GL" -> GLONASS
"GA" -> Galileo
"GB" -> BeiDou


postgres detects deadlock during DB migration in pre_start

Issue
we were upgrading from cf-deployment 1.21 to 1.27 (i.e.  from CAPI release 1.52 to 1.53)
Our productive CF landscape on AWS, the deployment failed repeatedly with errors:
Task 1589745 | 13:32:26 | Updating instance api: api/9715e088-cfc6-4811-8d40-6872c28da20d (0) (canary) (00:03:13)
                     L Error: Action Failed get_task: Task 3f480581-8477-4498-6200-dcbf0da0fdbe result: 1 of 6 pre-start scripts failed. Failed Jobs: cloud_controller_ng. Successful Jobs: cc_uploader, file_server, route_registrar, consul_agent, syslog_forwarder.

In the logs of the cloud_controller on api/9715e088-cfc6-4811-8d40-6872c28da20d we see a deadlock problem in the postgres:
[2018-05-02 14:20:08+0000] PG::TRDeadlockDetected: ERROR:  deadlock detected
[2018-05-02 14:20:08+0000] DETAIL:  Process 8669 waits for AccessExclusiveLock on relation 17509 of database 16389; blocked by process 56789.
[2018-05-02 14:20:08+0000] Process 56789 waits for AccessShareLock on relation 17412 of database 16389; blocked by process 8669.
[2018-05-02 14:20:08+0000] HINT:  See server log for query details.
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/adapters/postgres.rb:166:in `async_exec'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/adapters/postgres.rb:166:in `block in execute_query'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/database/logging.rb:49:in `log_connection_yield'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/adapters/postgres.rb:166:in `execute_query'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/adapters/postgres.rb:153:in `block in execute'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/adapters/postgres.rb:129:in `check_disconnect_errors'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/adapters/postgres.rb:153:in `execute'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/adapters/postgres.rb:515:in `_execute'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/adapters/postgres.rb:327:in `block (2 levels) in execute'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/adapters/postgres.rb:537:in `check_database_errors'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/adapters/postgres.rb:327:in `block in execute'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/database/connecting.rb:301:in `block in synchronize'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/connection_pool/threaded.rb:103:in `hold'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/database/connecting.rb:301:in `synchronize'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/adapters/postgres.rb:327:in `execute'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/database/query.rb:54:in `execute_dui'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/database/query.rb:47:in `execute_ddl'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/database/schema_methods.rb:436:in `block in apply_alter_table'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/database/schema_methods.rb:436:in `each'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/database/schema_methods.rb:436:in `apply_alter_table'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/database/schema_methods.rb:449:in `apply_alter_table_generator'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/database/schema_methods.rb:94:in `alter_table'
[2018-05-02 14:20:08+0000] /var/vcap/data/packages/cloud_controller_ng/f93ea6e4f62a4c66f8d2ae06f245eb9d0e0e5900/cloud_controller_ng/db/migrations/20180220224558_add_missing_primary_keys.rb:27:in `block (2 levels) in <top (required)>'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/extensions/migration.rb:106:in `instance_eval'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/extensions/migration.rb:106:in `apply'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/extensions/migration.rb:705:in `block (2 levels) in run'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/database/transactions.rb:224:in `_transaction'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/database/transactions.rb:199:in `block in transaction'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/database/connecting.rb:301:in `block in synchronize'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/connection_pool/threaded.rb:107:in `hold'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/database/connecting.rb:301:in `synchronize'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/database/transactions.rb:165:in `transaction'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/extensions/migration.rb:477:in `checked_transaction'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/extensions/migration.rb:704:in `block in run'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/extensions/migration.rb:701:in `each'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/extensions/migration.rb:701:in `run'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/sequel-4.49.0/lib/sequel/extensions/migration.rb:404:in `run'
[2018-05-02 14:20:08+0000] /var/vcap/data/packages/cloud_controller_ng/f93ea6e4f62a4c66f8d2ae06f245eb9d0e0e5900/cloud_controller_ng/lib/cloud_controller/db_migrator.rb:18:in `apply_migrations'
[2018-05-02 14:20:08+0000] /var/vcap/data/packages/cloud_controller_ng/f93ea6e4f62a4c66f8d2ae06f245eb9d0e0e5900/cloud_controller_ng/lib/tasks/db.rake:50:in `migrate'
[2018-05-02 14:20:08+0000] /var/vcap/data/packages/cloud_controller_ng/f93ea6e4f62a4c66f8d2ae06f245eb9d0e0e5900/cloud_controller_ng/lib/tasks/db.rake:57:in `block (2 levels) in <top (required)>'
[2018-05-02 14:20:08+0000] /var/vcap/packages/cloud_controller_ng/cloud_controller_ng/vendor/bundle/ruby/2.4.0/gems/rake-12.1.0/exe/rake:27:in `<top (required)>'
[2018-05-02 14:20:08+0000] /var/vcap/packages/ruby-2.4/bin/bundle:23:in `load'
[2018-05-02 14:20:08+0000] /var/vcap/packages/ruby-2.4/bin/bundle:23:in `<main>'

Steps to Reproduce
the problem only happened on our productive CF instance. We are using RDS as CCDB (on a m4.4xlarge VM)
Expected result
deploy should succeed without having to retry
Current result
after retrying about ten times, the migration eventually succeeded. We suspect that the probability of deadlock is dependent on the general load created by CF API calls on the DB.
It looks like the migration script
https://github.com/cloudfoundry/cloud_controller_ng/commit/bd3a66e65669973671c034b430cd17e1c34d8267
introduced with CAPI 1.53 is prone to DB deadlocks.

Hi @paolostivanin We addressed this issue in https://github.com/cloudfoundry/cloud_controller_ng/commit/00321c70a8fca52a9a5e393f0c30d12b25d35a8a
It turns out the migration was flawed: Each table modification should be in a separate migration, and should also be reversible. We replaced that migration with ten individual ones which each check to see if the primary key exists before proceeding. In your case, these migrations should be no-ops going forward since your tables already have the new primary keys.  In the unlikely event you need to run rake db:rollback, the keys should be removed.  The flawed migration has been replaced with a no-op, as we can't delete migrations once they've been released.
. Sorry you ran into this issue, but thanks for reporting it.


routeRules are sensitive to trailing slashes

Environment
stackblitz
Reproduction
https://stackblitz.com/edit/github-yjju3h?file=nitro.config.ts,routes/index.ts,routes/sponsors.ts
Describe the bug
when a route rule is defined with a reproduction, this does not apply if a trailing slash is appended to the request:
export default defineNitroConfig({
  routeRules: {
    '/support-me': { redirect: { to: '/sponsors', statusCode: 301 } },
  }
})

Requesting /support-me works fine but /support-me/ does not redirect.
Additional context
No response
Logs
No response

Any updates on this? It's actually causing us more headaches than one would expect because of the way some links are hard-coded in our internal software. 😅
I think it would be a pretty easy fix, so if someone could point in the direction of what files to look at I might could tackle it.

(Discussions about trailing slash and case sensitivity behavior are different. I have splitter case sensitivity to https://github.com/unjs/nitro/issues/2234 @lwpinion/@lpinion-ew you can follow from there for case differences)

(Discussions about trailing slash and case sensitivity behavior are different. I have splitter case sensitivity to #2234 @lwpinion/@lpinion-ew you can follow from there for case differences)

Great. Thanks!
The current issue I mentioned a few minutes ago actually pertains more to the trailing slash. As a workaround, I think I could switch to using router.options within the context of Nuxt instead.

I have investigated it a little more. It seems a bug in upstream radix3 matcher to be solved: https://github.com/unjs/radix3/issues/87

I have investigated it a little more. It seems a bug in upstream radix3 matcher to be solved: unjs/radix3#87
As a temporary workaround, you might need to duplicate route rules:
export default defineNitroConfig({
  routeRules: {
    '/support-me': { redirect: { to: '/sponsors', statusCode: 301 } },
    '/support-me/': { redirect: { to: '/sponsors', statusCode: 301 } },
  }
})

That is the weird thing. I have duplicated the route rules, but for some reason the one without the trailing slash works and not the one with.
Check out these links:
https://www.easyworship.com/BonjourInstall
https://www.easyworship.com/BonjourInstall/
And here are the routeRules:
'/BonjourInstall': { redirect: { to: 'https://support.apple.com/kb/DL999?locale=en_US', statusCode: 303 } },
'/BonjourInstall/': { redirect: { to: 'https://support.apple.com/kb/DL999?locale=en_US', statusCode: 303 } },

Any idea as to why there is a discrepancy in how these are working? And if this is not the best place to troubleshoot this, please point me in the right direction. :-)

@lwpinion can you try a local build and check if the problem isn't the platform?

(i can confirm problem is not local) Lets track via https://github.com/unjs/radix3/issues/87

Indeed. The problem does seem to occur locally for me as well.

fixed with radix3 1.1.1: https://github.com/unjs/radix3/releases/tag/v1.1.1
confirmed on reproduction.


python: PyPerf: Faster initialization + timeouts in snapshot()

Description
I see no reason to run the PyPerf bootstrap checks again right after running PythonEbpfProfiler.test. It only slows down the boostrap of gProfiler.
I added timeouts in _dump() (called every snapshot()) so we can catch dead/hanging PyPerfs.
Motivation and Context
Faster bootstrap of gProfiler.
How Has This Been Tested?
Manually.
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[x] My code follows the code style of this project.
[ ] I have updated the relevant documentation.
[x] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes.
[x] All new and existing tests passed.

The sleeps proved helpful. So, it's a race. I'll change start() to wait until the file is ready...

The sleeps proved helpful. So, it's a race. I'll change start() to wait until the file is ready...

Done. PTAL @d3dave

Looks good.


feat(SetTheory/Ordinal/Basic): notation typeLT α = type (α := α) (· < ·)

Another option might be to simply make the type argument in type explicit, but since the API makes a lot of use of unbundled relations, that would just make a lot of code longer.
This might also make sense to have for typein, but currently we use typein (α := o.toType) (· < ·) a lot when we should be using Ordinal.enumIsoToType instead, so I'd like to clean that up before seeing if introducing notation makes sense.

Wait a sec! I got a suggestion on Zulip to make this an abbreviation, so I'll implement that instead.

Thanks!
bors merge

bors merge


add method lift

Codecov Report

Merging #164 (96fd47a) into main (aef19a6) will increase coverage by 0.00%.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##             main     #164   +/-   ##
=======================================
  Coverage   98.18%   98.18%
=======================================
  Files         195      196    +1
  Lines        1980     1985    +5
=======================================
+ Hits         1944     1949    +5
  Misses         36       36

Impacted Files
Coverage Δ

ramda/__init__.py
100.00% <100.00%> (ø)

ramda/lift.py
100.00% <100.00%> (ø)

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 aef19a6...96fd47a. Read the comment docs.


feat: Add convenient method to create apache release resource

Brief Summary of The Change

After this patch merge, we can create apache release resource by python setup.py sdist, it will create tarball and sign it for us
Pull Request checklist
I confirm that the following checklist has been completed.

[x] Add/Change test cases for the changes.
[x] Add/Change the related documentation, should also change docs/source/config.rst when you change file default_config.yaml.
[x] (Optional) Add your change to UPDATING.md when it is an incompatible change.

Codecov Report

Merging #66 (a18e409) into main (ca5b00a) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #66   +/-   ##
=======================================
  Coverage   90.95%   90.95%
=======================================
  Files          61       61
  Lines        2211     2211
=======================================
  Hits         2011     2011
  Misses        200      200

Flag
Coverage Δ

unittests
90.95% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Changes

Good changes

Unfortunately you deleted the repository and I am no longer able to resolve the conflicts.


FIX-#242: Wait in mpi  works with tracking data ids in monitor process

What do these changes do?

[ ] first commit message and PR title follow format outlined here

NOTE:  If you edit the PR title to match this format, you need to add another commit (even if it's empty) or amend your last commit for the CI job that checks the PR title to pick up the new PR title.

[ ] passes flake8 .
[ ] passes black .
[ ] signed commit with git commit -s
[ ] Resolves #242 ?
[ ] tests added and passing
[ ] module layout described at docs/developer/architecture.rst is up-to-date

Let's also add the test from the issue.


Add support for pausing the dismiss timer

Resolve #25
Example
Toaster(
    state = toaster,
    dismissPause = ToastDismissPause.OnNotFront,
)

The idea is great, but something happens after the first dismiss and then all of the toasts are unpaused.
[1, 2, 3, 4]
delay
[2, 3, 4]
delay
[]

The idea is great, but something happens after the first dismiss and then all of the toasts are unpaused.

That's weird, they did work in the sample and tests.
https://github.com/dokar3/compose-sonner/pull/27/files#diff-ab3d286a6012edfb480afc76bc3a36eb528621ae0c67bbb9cc99087226c3c955R45-R66

[1, 2, 3, 4]
delay
[2, 3, 4]
delay
[]

Could you provide a sample code to reproduce this?

Other than that bug, the last release is great. Thanks so much for your changes today.

Other than that bug, the last release is great. Thanks so much for your changes today.

Happy to help! Will check that later.


Use existing secret for certs

Signed-off-by: Erwan Miran<EMAIL_ADDRESS>What type of PR is this?
/kind feature
Any specific area of the project related to this PR?
/area falco-chart
What this PR does / why we need it:
This enables the use of an existing secret for key, crt and ca instead of creating it from corresponding files.
It assumes pem bundle is part of the secret (as mentioned in README.md)
Which issue(s) this PR fixes:
N/A
Special notes for your reviewer:
As all the keys from the secrets are mounted in the pod, I removed the items key in volume definition.
It enables the use of any key in (existing) secret and paths can be modified through config.
BTW it does not change the current default behaviour.
Checklist

[x] Chart Version bumped
[x] Variables are documented in the README.md
[x] CHANGELOG.md updated

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: mirwan
To complete the pull request process, please assign bencer after the PR has been reviewed.
You can assign the PR to them by writing /assign @bencer in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

falco/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

LGTM label has been added.  Git tree hash: 23328b53f4ad34c0643f20c50af9568c1e61cfd6

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: cpanato, mirwan
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

falco/OWNERS [cpanato]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@cpanato @leogr Thx to both of you


dbeaver/dbeaver-ee#1655 DROP TABLE to dangerous query execution confirmation

ctrl+enter doesn't work, if value is set to Never (Alt+X works)


the object has been modified

I0304 06:46:10.787607       1 configuration_controller.go:203] "performing Terraform Apply (cloud resource create/update)" Namespace="serverless-devs-default" Name="fc-test-202203041410-1455541096406548-environment"
│ I0304 06:46:10.787640       1 configuration_controller.go:263] "terraform apply job" Namespace="serverless-devs-default" Name="fc-test-202203041410-1455541096406548-environment-apply"
│ E0304 06:46:10.817911       1 configuration_controller.go:277] "Hit an issue to update Terraform apply job" err="Operation cannot be fulfilled on configurations.terraform.core.oam.dev \"fc-test-202203041410-1455541096406548-environment\": the object has been modified;

Hello, we have encountered this problem. I saw that it was fixed twelve days ago. We are using version 0.4.3(Chart.yaml file, version: 0.4.3). I saw that it has been fixed in 0.4.2. This error should not occur. , but it still occurs, that is, after modifying the tf configuration of the configuration file, the error found by viewing the controller's log
E0321 11:56:12.886662       1 controller.go:304] controller-runtime/manager/controller/configuration "msg"="Reconciler error" "error"="Operation cannot be fulfilled on configurations.terraform.core.oam.dev \"qmdgl-gslb\": the object has been modified; please apply your changes to the latest version and try again" "name"="qmdgl-gslb" "namespace"="default" "reconciler group"="terraform.core.oam.dev" "reconciler kind"="Configuration"

@zzxwill Can you help with this issue?

@huzerun0306 Can you append your Configuration?

@zzxwill
The custom configuration is used, and the content is as follows. The configuration of tf will not be posted. It is a provider developed by ourselves. Because it is a custom provider, the configuration of our provider (secret_id, secret_key) including other secret keys are all Written directly in spec.hcl, because spec.providerRef must be filled in, so we created a Provider.terraform.core.oam.dev/v1beta1 that has no effect.
The creation of the configuration is successful, and then we modify the tf configuration in the configuration. For example, when adding a resource, when executing kubectl apply -f configuration.yaml, I can see that terraform-controller reported the error I posted earlier
apiVersion: terraform.core.oam.dev/v1beta1
kind: Configuration
metadata:
  name: custom-example
spec:
  providerRef:
    name: custom
  hcl: |

I remember that Alibaba's open source products will have a DingTalk exchange group. I found that there is no such thing? Is there a DingTalk group communication?

provider.yaml
apiVersion: v1
kind: Secret
metadata:
  name: custom-account-creds
  namespace: vela-system
type: Opaque
data:
  credentials: xxxxxxxxxxxxxxxxxxxxxxxxx

---
apiVersion: terraform.core.oam.dev/v1beta1
kind: Provider
metadata:
  name: custom
spec:
  provider: custom
  region: cn-nanjing
  credentials:
    source: Secret
    secretRef:
      namespace: vela-system
      name: custom-account-creds
      key: credentials


Why do I get string of result.body even when I set the encoding=null

As the title says, why?

Which should be a buffer said by the request document.

I've read the source code I didn't find the reason but I solved my problem.

Hey, did you manage to solve this? Got the same issue :/

@Svenskunganka This problem has not been solved yet. I read the source code but nothing seems incorrect.I'll double check the source code when I have enough time.

Can you provide me a url that you need to try and your code so i can have a look ?

@mike442144 alright, thank you.
@paulvalla Basically I'm crawling url's and downloading a file to be parsed, however the file has been converted to a string from the standard request Buffer output. Using request alone solves this, so I've been switching up my code a bit now so I don't really have anything to show you and hope that my description alone can help you understand the issue.
To break it down there is no way to get a Buffer returned from this package when requesting a binary file.

I've solved this problem, please move to https://github.com/bda-research/node-webcrawler if you wanna continue using the crawler, Our team will maintain.


Project: Create a Bookshelf App

URL of codelab:
Specify the language of the codelab if it is not English:
In which task and step of the codelab can this issue be found?
Describe the problem
this pathway contains references to Gson where instead Json is used
Steps to reproduce?

Go to...
Click on...
See error...

Versions
Android Studio version:
API version of the emulator:
Additional information
Include screenshots if they would be useful in clarifying the problem.

I should add, Gson reference and indications for usage should be kept for Bookshelf app


chore(mypy): enable truthy-bool error code

Docs: https://mypy.readthedocs.io/en/stable/error_code_list2.html#check-that-expression-is-not-implicitly-true-in-boolean-context-truthy-bool
I am using # type: ignore[truthy-bool] for .components check, because I see that it is treated specially for some reason (like pragma: no cover). Is this correct?
I also removed configs that are part of the --strict flag from settings.

Please, take a look at these lines:

Looks like else is never actually reached. Should I remove this branch?

Looks like else is never actually reached. Should I remove this branch?

Seems to be a missing test case?

* Extra `else` branch in this `if` ?

Isn't it the elif branch that's extra then, and should be an else instead?


Note extrapolation done in the rate, delta, and increase

As suggested in prometheus/prometheus#2683.

Thank you, left some comments!

OK, incorporated.

:+1: Thanks!


Simple macro syntax

Jumping off what was said here, it seems that the bare {foo} attribute syntax could be a simple way for an in markdown macro definition! Just like reference links the foo would just be a label for whatever was defined in the label definition
{foo}: bar
One could even imagine going further and having label functions ie macros, used like {foo(arg1,arg2)}
And then defined as
{foo(arg1,arg2)}: do something with (arg1) and (arg2)
The only thing is that this would be very useful in the math context but of course clashes with latex syntax..

Thinking about it more, it seems I want latex macro-like functionality, but with a semantic focus more than a typographical one. The macro expansion could be handled by any sort of filter, but having a predefined syntax in the spec means anyone writing such a filter would have a simple node in the AST, that is well defined, and standardized, with basic functionality like text replacement covered by the base syntax. I feel like this gives the end user incredible flexibility, which is hard to achieve in any markdown flavor. Additionally, it opens the space up to text-based syntax, that crucially is user-defined, and thus not English first.

@lcnhb What do you want which you can't get with possibly nested spans and divs and filters?
I agree that it would be nice if there were list-like containers so that
[foo][bar][baz]{.quux}

were treated as equivalent to
[[foo]{}[bar]{}[baz]{}]{.quux}

but it is indistinguishable from a reference link followed by a span, so perhaps some separator character like
[foo]+[bar]+[baz]{.quux}

which could be extended to divs too:
{.quux}
:::
foo
+:::
bar
+:::
baz
:::

An actual macro functionality where you can define macros in-text leads to clutter and a lot of (for humans) confusion between what is definitions and what is content, and since I use Pandoc/Markdown in preference to LaTeX to get away from not seeing the text for all the markup I advice strongly against such.
What I do use is my own string templating (pre)processor (which I will put online as soon as I have got some decent documentation written) which takes a hint from lightweight markup languages in preferring punctuation to keywords and is vaguely similar to Bash parameter expansion, e.g.:

$(foo) or $foo
Inserts the value of variable foo.

$<foo bar> $<bæz>
Inserts variable values but variable names are not limited to ASCII alphanumerics, underscores and hyphens.

$(foo?|bar) or $(foo ?| (bar) )
Inserts the value of variable foo or if it is empty the string "bar".

$(foo??bar) or $( foo ?? (bar) )
Inserts the string "bar" if the variable foo is non-empty.

$(foo?!bar) or $( foo ?! (bar) )
Inserts the string "bar" if the variable foo is empty.

$( foo ?? $bar ?! (no $game) )
Inserts the value of variable bar if variable foo is non-empty, or the string "no X", where X is the value of the variable game, if foo is empty.

$:foo( $bar, (my $game), 42, (ba@<331>) )
Inserts the return value of calling the function foo with four arguments, where @<331> aka @<0x14b> is replaced with the Unicode character "ŋ" LATIN SMALL LETTER ENG.

Now the difference between the template processor and a macro processor is of course that with the former variables and functions are defined outside the template file by a script which imports the template engine class and passes the functions to the constructor as a data structure of function references written in the same language as the template engine. Variables are passed as a data structure of strings/numbers/booleans to the template expansion method and/or the constructor. Templates can be passed to the expansion method either as strings or as pre-parsed objects, allowing the calling program to parse a template once and fill it in several times with different data sets.
The templating engine is separate from Pandoc; it can be used for any text to be further processed with any program, but since it is written in pure MoonScript/Lua it can also be used from inside a Pandoc filter, typically defining templates as verbatim spans or blocks, either in the body or the metadata, which after expansion are passed to the Pandoc Lua API's read function to be converted to AST fragments which are then inserted into the document body. It is still separate from the markup language as parsed by Pandoc; it can be used within Markdown or djot input, and might make sense with other input formats too.
There is a "light" implementation with a subset of the functionality roughly equivalent to what I showed above which is small enough to inline into a Pandoc filter.


Adding a suffix for the nfs size to the pvc and pv to allow size upgrades

This allows us to increase the default in the future and upgrades will work as expected.

Excellent solution 👏

All credit goes to @liam-mackie for this one! 🙇


xds proxy minor changes

[ ] Configuration Infrastructure
[ ] Docs
[ ] Installation
[X] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[X] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure

On Tue, Jun 21, 2022 at 7:31 AM John Howard @.***>
wrote:

@.**** commented on this pull request.
In pkg/istio-agent/xds_proxy.go
https://github.com/istio/istio/pull/39533#discussion_r902698084:

@@ -100,10 +100,10 @@ type XdsProxy struct {
tapResponseChannel chan *discovery.DiscoveryResponse

// connected stores the active gRPC stream. The proxy will only have 1 connection at a time

connected           *ProxyConnection
initialRequest      *discovery.DiscoveryRequest
initialDeltaRequest *discovery.DeltaDiscoveryRequest
connectedMutex      sync.RWMutex

connected                 *ProxyConnection
initialHealthRequest      *discovery.DiscoveryRequest

this is generic code - prefer the old name.

It is not very generic - if we want to send some initial requests we would
have a list, or a more complicated structure since some of
the requests of this type may change.
And I'm not sure we have use case for generic code for sending initial
requests - if we find the use case we can refactor again.
I would use an array of callbacks to be called on connection - it would be
more flexible.

—
Reply to this email directly, view it on GitHub
https://github.com/istio/istio/pull/39533#pullrequestreview-1013718056,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAAUR2QJSJ2WPYC7WV3PDNTVQHG5NANCNFSM5ZL7ZFBQ
.
You are receiving this because your review was requested.Message ID:
@.***>


Create TOC for Notebooks

Copying @DonJayamanne's solution from the Epic.
Proposed solution

Create our own UI Panel (like we did for tests before VSC added a generic view)
Add a class that generates the TOC (a tree data structure)

This is merely a provider class, that has a method getOutline or similar
This has an event that gets fired when ever a new nb is selected

Add a class that generates the tree view (separate class that builds the tree view)

This will use the provider to get the outline and build the tree view accordingly.
The treeview class will see that data has changed based on the event
Tree view fires its own event (this tells VSC to re-paint itself)

When creating a node, we can provide the command and arguments

The command for the node is  InteractiveWindowMessages.ScrollToCell with the cell id or what ever it is that this command needs
When the node is selected, VSC will automatically raise the event, the expectation is the nb will scroll to the required cell in the active nb (we'll need to pass the nb URI as an argument)

We'll need to create command handler for InteractiveWindowMessages.ScrollToCell

Look at the first argument that will be a URI, find the corresponding active nb
Dispatch the InteractiveWindowMessages.ScrollToCell command with the args to that.
NB will then pass that to the UI layer (this is how interactive window works today, but native editor doesn't support scrolling to cells)

Next add support fort the scrolling to cells in native editor

JS code to scroll react element into view
Add support for IncomingMessageActions.SCROLLTOCELL in Native Editor

With the code in ds/custom_editor this is easier, as the INotebookModel is exposed (gives access to cells from outside notebook to other parts of the extension) @rchiodo did the work in ds/custom_editor.
I propose bringing in that that change into master (easier for other similar changes).

If VSC supported line numbers in custom editor we wouldn't have to create a custom view... 😞
Native debugging also becomes easier...


If die and leave the server, inventory items will disappear.

I want to explain that when I try to leave the server without respawning and come back again, my inventory items will sync once, but they disappear after the sync.
Later, when I checked the saved "disconnect" data, the inventory items were empty.
YT link: https://youtu.be/hhQh_Isbero
*I'm pretty sure everything in config.yml is correct and sync works fine.

Hi there, please get in touch on our Discord for support —


Automate adding a new ceremony in p0tion backend DB

"Upon releasing new major versions of underlying circom files packages, I want to automatically have the PR in https://github.com/privacy-scaling-explorations/p0tion created to trigger the  ceremony process."
Later on that PR will be reviewed, the trusted setup coordinator will setup the ceremony and it will become opened for contributions

Hello, what is the details about this issue? @cedoor @sripwoud

I have never been a ceremony coordinator myself, so I don't know all the details.
As far as I can tell, the way it works with p0tion is that people can contribute to a list of opened ceremonies.
The data (including circuit data) for these ceremonies needs to be uploaded to a DB first.
the p0tion phase2cli has a command for this:
phase2cli coordinate setup --help

Usage: @p0tion/phase2cli coordinate setup [options]

setup a Groth16 Phase 2 Trusted Setup ceremony for zk-SNARK
circuits

Options:
  -t, --template <path>  The path to the ceremony setup template
                         (default: "")
  -a, --auth <string>    The Github OAuth 2.0 token (default:
                         "")
  -h, --help             display help for command

The idea of this PR, if possible, is to define a GitHub action that would automatically prepare this ceremony data and insert it in the p0tion backend DB (either by using the phase2cli CLI or by posting JSON data directly to the p0tion DB, what do you think @NicoSerranoP )

@cedoor I am wondering if this issue (btw not to be confused with #16 )should still be in the scope of this repo.
Because this repo does not really deal with src circuit files, just the artifacts that are the outcomes of ceremonies.

@sripwoud I think we should move this issue to the P0tion repo 👍🏽


Navigation bar does not scroll to under D-Wave

Description
If I open a tool deep enough to take up some serious space, the D-Wave header is at the bottom of the nav bar and I cannot scroll to its links without closing the open tool:

To Reproduce
Open any tool quite a lot
Expected behavior
I should be able to scroll to the links
Environment:

OS: Win
Python version:3.7.x

Additional context
Chrome browser

What do people think about moving the D-Wave section above Tools section for the unified docs? We have three links under D-Wave and will have lots of tools. Of course the Tools section is more useful, but we don't want users to not see the D-Wave section links.

I think this is because you still have your cookie notice open

Nice & correct diagnosis. Thanks!


GPUv2 numerical inaccuracy in simple Add + Mul

System information

Google Pixel 7 / Android 14 / Google Tensor G2
TensorFlow 2.16.1

Running a simple model with a Add + Mul on both GPU and CPU gives vastly different results (on device CPU confirmed separately to be correct):
Arrays are not almost equal to 7 decimals

Mismatched elements: 392911 / 393216 (99.9%)
Max absolute difference: 2.719718
Max relative difference: 0.99997413
 x: array([[[[0.408207 , 0.2999736, 0.1134637, ..., 0.1838855, 0.1379557,
          0.2322327],
         [1.3259705, 0.9743981, 0.3685618, ..., 0.5973114, 0.4481186,...
 y: array([[[[0.4082031, 0.       , 0.       , ..., 0.       , 0.       ,
          1.2128906],
         [1.3251953, 0.       , 0.       , ..., 0.       , 0.       ,...

Standalone code to reproduce the issue

Model asset: tflite_66740_add_mul_gpu_numerically_incorrect.tflite
Generate some data and run on device on GPU (and optionally CPU for baseline).
This results in the above severe numerical discrepancy

Inference repro
I reproduced this using https://aihub.qualcomm.com/ out of convenience (but I'm sure it will repro through other means as well), so I'm attaching the script here.
import numpy as np
import qai_hub as hub

model = hub.upload_model("tflite_66740_add_mul_gpu_numerically_incorrect.tflite")

rng = np.random.RandomState(1234)
x = rng.uniform(size=(1, 64, 64, 1)).astype(np.float32)

inputs = hub.upload_dataset({"model_5/0/body/0/0/norm/LayerNormalization/batchnorm/Rsqrt": [x]})

device = hub.Device("Google Pixel 7")
cpu_job = hub.submit_inference_job(
    model,
    device=device,
    inputs=inputs,
    options="--compute_unit cpu",
)

gpu_job = hub.submit_inference_job(
    model,
    device=device,
    inputs=inputs,
    options="--compute_unit gpu",
)

cpu_output = cpu_job.download_output_data()
gpu_output = gpu_job.download_output_data()

np.testing.assert_almost_equal(cpu_output["output_0"][0], gpu_output["output_0"][0])

Model visualization

Any other info / logs

Logs from the GPU inference job (via https://aihub.qualcomm.com/):
[01/May/2024:08:11:15 +10:00: profiler/info] Android system property: ro.board.platform = gs201
[01/May/2024:08:11:15 +10:00: profiler/info] Android system property: ro.boot.hardware = panther
[01/May/2024:08:11:15 +10:00: profiler/info] Android system property: ro.boot.hardware.platform = gs201
[01/May/2024:08:11:15 +10:00: profiler/info] Android system property: ro.system.build.id = UP1A.231005.007.A1
[01/May/2024:08:11:15 +10:00: profiler/info] Android system property: ro.system.build.version.release = 14
[01/May/2024:08:11:15 +10:00: profiler/info] Android system property: ro.hardware = panther
[01/May/2024:08:11:15 +10:00: profiler/info] Android system property: ro.hardware.chipname =
[01/May/2024:08:11:15 +10:00: profiler/info] Android system property: ro.product.board = panther
[01/May/2024:08:11:15 +10:00: profiler/info] Android system property: ro.product.brand = google
[01/May/2024:08:11:15 +10:00: profiler/info] Android system property: ro.product.device = panther
[01/May/2024:08:11:15 +10:00: profiler/info] Android system property: ro.product.build.fingerprint = google/panther/panther:14/UP1A.231005.007.A1/10762838:user/release-keys
[01/May/2024:08:11:15 +10:00: profiler/info] Android system property: ro.product.manufacturer = Google
[01/May/2024:08:11:15 +10:00: profiler/info] Android system property: ro.product.model = Pixel 7
[01/May/2024:08:11:15 +10:00: profiler/info] Android system property: ro.product.name = panther
[01/May/2024:08:11:15 +10:00: profiler/info] Android system property: ro.soc.manufacturer = Google
[01/May/2024:08:11:15 +10:00: profiler/info] Android system property: ro.soc.model = GS201
[01/May/2024:08:11:15 +10:00: profiler/info] [Manager] DeviceManager::DeviceManager
[01/May/2024:08:11:15 +10:00: profiler/info] [Manager] findAvailableDevices
[01/May/2024:08:11:15 +10:00: profiler/info] [Manager] Found interface google-edgetpu (version = 2.0)
[01/May/2024:08:11:15 +10:00: profiler/info] [Manager] Found interface google-armnn (version = ArmNN)
[01/May/2024:08:11:15 +10:00: profiler/info] NNAPI devices: google-edgetpu,google-armnn,nnapi-reference
[01/May/2024:08:11:15 +10:00: profiler/info] GPU device: ARM Mali-G710
[01/May/2024:08:11:15 +10:00: profiler/info] OpenGL Version: OpenGL ES 3.2 v1.r43p0-01eac0.ff5c643eda65d3f5ba9886fdffb12673
[01/May/2024:08:11:15 +10:00: profiler/info] OpenCL Version: OpenCL C 1.2 v1.r43p0-01eac0.ff5c643eda65d3f5ba9886fdffb12673
[01/May/2024:08:11:15 +10:00: profiler/info] -=- Tungsten Running Task: Loading -=-
[01/May/2024:08:11:15 +10:00: profiler/info] Detected chipset 3101, made by 3000.
[01/May/2024:08:11:15 +10:00: profiler/info] [job_id: jlpej1x85] [model.tflite] Loading tflite model Models/model.tflite
[01/May/2024:08:11:15 +10:00: profiler/info] [job_id: jlpej1x85] [model.tflite] Malloc VM size before: 28600.0 kB, allocated: 18032.4 kB, slack: 10567.6 kB.
[01/May/2024:08:11:15 +10:00: profiler/info] [job_id: jlpej1x85] [model.tflite] Current memory baseline range: 61792.4-72360.0 kB.
[01/May/2024:08:11:15 +10:00: profiler/debug] [job_id: jlpej1x85] [model.tflite] Runtime metadata not found in Models/model.tflite/trt_metadata.json or Models/model.tflite/trt_metadata.pb
[01/May/2024:08:11:15 +10:00: profiler/info] [job_id: jlpej1x85] [model.tflite] TF Lite version 2.16.1. Loading model from Models/model.tflite.
[01/May/2024:08:11:15 +10:00: profiler/debug] [job_id: jlpej1x85] [model.tflite] Mapping resource file in Models/model.tflite
[01/May/2024:08:11:15 +10:00: profiler/info] [job_id: jlpej1x85] [model.tflite] Loaded model. Minimum TF Lite version = 1.5.0.
[01/May/2024:08:11:15 +10:00: profiler/info] [job_id: jlpej1x85] [model.tflite] No delegates specified; using compute unit=cpu_and_gpu.
[01/May/2024:08:11:15 +10:00: profiler/info] [job_id: jlpej1x85] [model.tflite] [tflite] Initialized TensorFlow Lite runtime.
[01/May/2024:08:11:15 +10:00: profiler/info] [job_id: jlpej1x85] [model.tflite] GPUV2 delegate requested. OpenCL detected.
[01/May/2024:08:11:15 +10:00: profiler/debug] [job_id: jlpej1x85] [model.tflite] Enabling delegate cache in dir=/data/user/0/ai.tetra.tungsten/cache/1714515075350/ai.tetra.runtime/0.6.0/model.tflite_8945450969824422876_1714515066045/gpuv2.
[01/May/2024:08:11:15 +10:00: profiler/info] [job_id: jlpej1x85] [model.tflite] [tflite] Created TensorFlow Lite delegate for GPU.
[01/May/2024:08:11:15 +10:00: profiler/info] [job_id: jlpej1x85] [model.tflite] [tflite] Replacing 2 out of 2 node(s) with delegate (TfLiteGpuDelegateV2) node, yielding 1 partitions for the whole graph.
[01/May/2024:08:11:15 +10:00: profiler/warning] [job_id: jlpej1x85] [model.tflite] [tflite] File /data/user/0/ai.tetra.tungsten/cache/1714515075350/ai.tetra.runtime/0.6.0/model.tflite_8945450969824422876_1714515066045/gpuv2/gpuv2_5609552586171313032.bin couldn't be opened for reading: No such file or directory
[01/May/2024:08:11:15 +10:00: profiler/info] [job_id: jlpej1x85] [model.tflite] [tflite] Initialized OpenCL-based API.
[01/May/2024:08:11:15 +10:00: profiler/info] [job_id: jlpej1x85] [model.tflite] [tflite] Created 1 GPU delegate kernels.
[01/May/2024:08:11:15 +10:00: profiler/info] [job_id: jlpej1x85] [model.tflite] Applied 1 delegates: GPUV2/OpenCL. Model is fully delegated=true.
[01/May/2024:08:11:15 +10:00: profiler/debug] [job_id: jlpej1x85] [model.tflite] Saving delegate selection for subsequent steps.
[01/May/2024:08:11:15 +10:00: profiler/info] [job_id: jlpej1x85] [model.tflite] Malloc VM size after: 36240.0 kB, allocated: 25209.7 kB, slack: 11030.3 kB.
[01/May/2024:08:11:15 +10:00: profiler/info] [job_id: jlpej1x85] [model.tflite] Status Successfully Loaded Cold with t = 132027 us and usage: before = 72360.0 kB; peakBefore = 72360.0 kB; mallocUnusedBefore = 10567.6 kB; after = 81780.0 kB; peakAfter = 81744.0 kB; mallocUnusedAfter = 11030.3 kB; increase = 0.0-8957.3 kB; peak = 9384.0-19951.6 kB
[01/May/2024:08:11:15 +10:00: profiler/info] [job_id: jlpej1x85] [model.tflite] Saving results to /storage/emulated/0/Android/data/ai.tetra.tungsten/files/Results/job_jlpej1x85/job_jlpej1x85_results.bin
[01/May/2024:08:11:16 +10:00: profiler/info] -=- Tungsten Running Task: Loading -=-
[01/May/2024:08:11:16 +10:00: profiler/info] Detected chipset 3101, made by 3000.
[01/May/2024:08:11:16 +10:00: profiler/info] [job_id: jlpej1x85] [model.tflite] Loading previously saved results in /storage/emulated/0/Android/data/ai.tetra.tungsten/files/Results/job_jlpej1x85/job_jlpej1x85_results.bin
[01/May/2024:08:11:16 +10:00: profiler/info] [job_id: jlpej1x85] [model.tflite] Loading tflite model Models/model.tflite
[01/May/2024:08:11:16 +10:00: profiler/info] [job_id: jlpej1x85] [model.tflite] Malloc VM size before: 30640.0 kB, allocated: 17338.9 kB, slack: 13301.1 kB.
[01/May/2024:08:11:16 +10:00: profiler/info] [job_id: jlpej1x85] [model.tflite] Current memory baseline range: 54914.9-68216.0 kB.
[01/May/2024:08:11:16 +10:00: profiler/debug] [job_id: jlpej1x85] [model.tflite] Runtime metadata not found in Models/model.tflite/trt_metadata.json or Models/model.tflite/trt_metadata.pb
[01/May/2024:08:11:16 +10:00: profiler/info] [job_id: jlpej1x85] [model.tflite] TF Lite version 2.16.1. Loading model from Models/model.tflite.
[01/May/2024:08:11:16 +10:00: profiler/debug] [job_id: jlpej1x85] [model.tflite] Mapping resource file in Models/model.tflite
[01/May/2024:08:11:16 +10:00: profiler/info] [job_id: jlpej1x85] [model.tflite] Loaded model. Minimum TF Lite version = 1.5.0.
[01/May/2024:08:11:16 +10:00: profiler/info] [job_id: jlpej1x85] [model.tflite] GPUV2 delegate requested. OpenCL detected.
[01/May/2024:08:11:16 +10:00: profiler/debug] [job_id: jlpej1x85] [model.tflite] Enabling delegate cache in dir=/data/user/0/ai.tetra.tungsten/cache/1714515075350/ai.tetra.runtime/0.6.0/model.tflite_8945450969824422876_1714515066045/gpuv2.
[01/May/2024:08:11:16 +10:00: profiler/info] [job_id: jlpej1x85] [model.tflite] [tflite] Replacing 2 out of 2 node(s) with delegate (TfLiteGpuDelegateV2) node, yielding 1 partitions for the whole graph.
[01/May/2024:08:11:16 +10:00: profiler/info] [job_id: jlpej1x85] [model.tflite] [tflite] Found serialized data for model gpuv2 (790680 B) at /data/user/0/ai.tetra.tungsten/cache/1714515075350/ai.tetra.runtime/0.6.0/model.tflite_8945450969824422876_1714515066045/gpuv2/gpuv2_5609552586171313032.bin
[01/May/2024:08:11:16 +10:00: profiler/info] [job_id: jlpej1x85] [model.tflite] [tflite] Initialized OpenCL-based API from serialized data.
[01/May/2024:08:11:16 +10:00: profiler/info] [job_id: jlpej1x85] [model.tflite] [tflite] Created 1 GPU delegate kernels.
[01/May/2024:08:11:16 +10:00: profiler/info] [job_id: jlpej1x85] [model.tflite] Applied 1 delegates: GPUV2/OpenCL. Model is fully delegated=true.
[01/May/2024:08:11:16 +10:00: profiler/info] [job_id: jlpej1x85] [model.tflite] Malloc VM size after: 36496.0 kB, allocated: 25417.5 kB, slack: 11078.5 kB.
[01/May/2024:08:11:16 +10:00: profiler/info] [job_id: jlpej1x85] [model.tflite] Status Successfully Loaded Warm with t = 94180 us and usage: before = 68216.0 kB; peakBefore = 68216.0 kB; mallocUnusedBefore = 13301.1 kB; after = 78828.0 kB; peakAfter = 78076.0 kB; mallocUnusedAfter = 11078.5 kB; increase = 0.0-12834.6 kB; peak = 9860.0-23161.1 kB
[01/May/2024:08:11:16 +10:00: profiler/info] [job_id: jlpej1x85] [model.tflite] Saving results to /storage/emulated/0/Android/data/ai.tetra.tungsten/files/Results/job_jlpej1x85/job_jlpej1x85_results.bin

Hi @gustavla ,
I am in the process of replicating your issue . I will get back to you as soon as poosible.

Hi @gustavla ,
I replicated your issue and i got the same result as yours . I will try to replicate the issue through an android app and will let you know .

Hi @gustavla ,
Can you please reproduce this error through an Android app please and let me know?  That way it will be easier for me to debug the issue.

@sawantkumar I do not have a stand-alone app with a repro. How do you usually feed in data to TFLite for the purpose setting up repros? It is easy to dump out the inputs from numpy to another format you need (happy to show how).

Hi @gustavla ,
Usually its either images or video data which I use as input . But here i need to create .npy files or put the inputs in a text file and then through the java code i need to load and do inference on it. I am having error loading .npy files in Java/Kotlin in Android.

Hi, @pkgoogle
Please take look into this issue. Thank you

I don't trust the emulator GPU delegate workflow to test this properly... @grantjensen, can you please take a look? Thanks.

Reproduced the error with run_delegate_testing.sh
Can investigate next week


NO-ISSUE: Replace README with an explanation how this agent works

Nobody really needs the old installation instructions, let's better talk
about the actual workflow. Also document the asssisted converged flow.

/lgtm


Request for Early Access to VAD-Instruct50k Dataset

Hello,
I noticed that the VAD-Instruct50k dataset is mentioned to be available soon, as per the repository's README:

"Our VAD-Instruct50k will be available soon, welcome to star ⭐ this repository for the latest updates."

I would like to inquire if it would be possible to get early access to this dataset or if there is an estimated release date. This dataset is crucial for my ongoing research, and having access at the earliest would be greatly beneficial.
Thank you for your efforts in making these resources available to the community. I have starred the repository and am looking forward to the release.

Stay tuned for our latest work: HolmesVAU, which is an upgraded version of Holmes-VAD, featuring improvements in annotation granularity, quantity, and quality, as well as utilizing a more powerful foundational MLLM model.
We have open sourced HIVAU-70k benchmarks and its raw annotation file. Please check.


Add table mail authentication and migrate data

It was not straight forward how to do data migration with Prisma, but I think this is a kinda OK way of doing it. We're following the recommendations of Prisma, and based the code on Prisma's docs on data migration. Since we're the expand and contract pattern, we're adding the new table, migrating the data and then we'll remove the mail row of the User table in a separate PR.
This PR is a part of the login refactoring. We're separating the MailAuthentication from the User model to be able to add multiple ways of authenticating, aka StravaAuthentication 👀

Have you considered using the db branching features of PlanetScale instead of writing migrations?

Have you considered using the db branching features of PlanetScale instead of writing migrations?

Yep! We were trying to use PlanetScale as our database provider, but the fact that we wanted to create some bootleg preview branches made it clear that PlanetScale might not be the way to go. This was due to the MySQL image being way too aggressive on memory compared to PostgreSQL, which made it impossible to create many separate MySQL database containers without having to use beefy and expensive machines 🥹

Have you considered using the db branching features of PlanetScale instead of writing migrations?

Yep! We were trying to use PlanetScale as our database provider, but the fact that we wanted to create some bootleg preview branches made it clear that PlanetScale might not be the way to go. This was due to the MySQL image being way too aggressive on memory compared to PostgreSQL, which made it impossible to create many separate MySQL database containers without having to use beefy and expensive machines 🥹

Ah, I thought Dundring was using PlanetScale 😅 Makes sense.

I find your lack of faith in dundreCloud™ disturbing... and well earned. I have not gotten around to automating backups yet 🐢 Will make a backup before applying this 🤝


Add support for failing install hooks (dependency checks)

This change makes it possible to check for dependencies in the install
hook for a package. If the hook returns a non zero exit status the
installation is aborted and logged as failed. Already downloaded files
are removed.
ELLIPSIS_INIT is now also exported so it's possible to check for the ellipsis init system as a dependency.

Nice!


Azure Event Hub - How to consume events with EventProcessorClient and save them on Sql Server

Library name and version
Azure.Messaging.EventHubs.Processor 5.7.5
Query/Question
Hi,
reading a response to post on StackOverflow by @jsquire ( https://stackoverflow.com/questions/69133480/azure-event-hub-how-to-consume-events-parallelly-using-the-official-sdk ), I thought I could ask for some help here so I could fix a problem.
I have an application in .NET 7, precisely a Worker that should infinitely read events (log in json format) from Azure Event Hub and write them to Sql Server. For the implementation I chose to use the EventProcessorClient, as it has to read from 3 partitions and I can use the Azure Blob Storage for checkpointing.
Reading the official documentation and following the examples I wrote the following code:
public class LogProcessorBackgroundService : BackgroundService
{
    // Omit configuration and initialization of objects

    private readonly ConcurrentDictionary<Guid, KeyValuePair<DateTime, ClientEvent>> _clientEvents = new();

    private readonly ILogger<LogProcessorBackgroundService> _logger;
    private readonly IServiceProvider _serviceProvider;

    public LogProcessorBackgroundService(ILogger<LogProcessorBackgroundService> logger,
        IServiceProvider serviceProvider)
    {
        Guard.Against.Null(logger);
        Guard.Against.Null(serviceProvider);

        _logger = logger;
        _serviceProvider = serviceProvider;
    }

    protected override async Task ExecuteAsync(CancellationToken stoppingToken)
    {
        try
        {
            var storageClient = new BlobContainerClient(StorageConnectionString, BlobContainerName);

            var processor = new EventProcessorClient(
                storageClient, ConsumerGroup, EventHubConnectionString, EventProcessorClientOptions);

            processor.ProcessEventAsync += OnProcessEvent;
            processor.ProcessErrorAsync += OnProcessError;

            await processor.StartProcessingAsync(stoppingToken);
        }
        catch (TaskCanceledException e)
        {
            _logger.LogError(e.Demystify(), "Task was canceled");
        }
        catch (Exception e)
        {
            _logger.LogError(e.Demystify(), "An unhandled exception has occurred");
        }
    }

    private Task OnProcessError(ProcessErrorEventArgs errorEventArgs)
    {
        _logger.LogError(errorEventArgs.Exception, "OnProcess error");

        return Task.CompletedTask;
    }

    private async Task OnProcessEvent(ProcessEventArgs eventArgs)
    {
        try
        {
            if (eventArgs.Data?.EventBody is null ||
                eventArgs.Data.EventBody.ToString().Contains(Constants.EventType.Failure))
                return;

            var logAudit = JsonSerializer.Deserialize<LogAuditRoot>(eventArgs.Data.EventBody.ToString(),
                SerializerOptions);

            var clientEvent = logAudit.ClientEvent;

            if (_clientEvents.TryGetValue(clientEvent.ClientId, out var item))
            {
                if (item.Key > clientEvent.TimeStamp)
                    return;

                _clientEvents.Remove(clientEvent.ClientId, out _);
            }

            _clientEvents.TryAdd(clientEvent.ClientId,
                new KeyValuePair<DateTime, ClientEvent>(clientEvent.TimeStamp, clientEvent));

            if (_clientEvents.Count == 100)
            {
                await UpsertDataOnDatabase();
                eventArgs.UpdateCheckpointAsync(eventArgs.CancellationToken);
                _clientEvents.Clear();
            }
        }
        catch (Exception e)
        {
            _logger.LogError(e, "ProcessEventHandler exception");
        }
    }

    private async Task UpsertDataOnDatabase()
    {
        using var scope = _serviceProvider.CreateScope();

        var repository = scope.ServiceProvider.GetRequiredService<IRepository>();

        _logger.LogInformation("Count: {Count}", _clientEvents.Count.ToString());

        foreach (var item in _clientEvents)
        {
           // Some logic to update or insert data into sql server
        }

        await repository.SaveChangesAsync();
    }
}

As reported by Jesse Squire however the processor '"For each partition owned by the processor, an independent background task works to read events from Event Hubs and dispatch them to your handler." so I used a ConcurrentDictionary and implemented this logic to checkpoint every certain number of events, but it doesn't work correctly. Could you please help me understand if I'm on the right track or where I'm wrong and tell me what changes to make.
Sorry for writing here, but unfortunately on the internet I have not found advanced examples on how to handle it, but only the basic ones.
I hope you can help me. Thank you
Environment

OS:  Windows 11, Windows Server 2016
Runtime: .NET  7.0.0
Project type: Worker project
Database: SqlServer 2016

Hi @jsquire, first of all thank you very much for the answer, I will start by making the change you indicated and doing some tests to understand if the rest of the implementation can work or not, or given the concurrency that I can't manage precisely it is better that i use the PartitionReceiver and create different workers each managing their own partition?

Whether you use the processor or the receiver, you'd still need to manage the same amount of information to achieve the functionality that you're looking for.   Both types could be used for the scenario that you've described here and on the linked StackOverflow question, it's a matter of choosing which set of trade-offs work better for you.   I'd suggest reading the Event Hubs clients sample, which details the client hierarchy and provides some context around their target scenarios.

Hi @jsquire, thanks a lot for the suggestions, by making changes to my application I was able to record the events on the DB and then in a second step I was able to process them following the set logic. Thank you